CS 78 Computer Networks Internet Protocol (IP)

CS 78 Computer Networks Internet Protocol (IP)

Application Layer CS 78 Computer Networks Transport Layer Internet Protocol (IP) our focus Network Layer • What we will lean Link Layer Andrew T. Campbell – What’s inside a router – IP forwarding [email protected] – Internet Control Message Physical Layer Protocol (ICMP) – IP routing The Network Layer Interplay between routing and • Transport segment from forwarding sending to receiving host • On sending side encapsulates segments into datagrams • On receiving side, delivers segments to transport layer • Network layer protocols in every host, route • Router examines header fields in all IP datagrams passing through it • Two important functions – forwarding: move packets from router’s input to appropriate router output – routing: determine route taken by packets from source to dest. 1 The Internet Network layer Datagram versus virtual circuit networks Host, router network layer functions: Internet (datagram) Virtual circuits • data exchange among Transport layer: TCP, UDP computers • evolved from telephony – “elastic” service, no strict • human conversation: IP protocol Routing protocols timing req. •addressing conventions •path selection – strict timing, •datagram format •RIP, OSPF, BGP • “smart” end systems •packet handling conventions reliability Network (computers) requirements layer forwarding – can adapt, perform control, ICMP protocol error recovery – need for guaranteed table •error reporting •router “signaling” – simple inside network, service complexity at “edge” • “dumb” end systems – many link types Link layer – telephones – different characteristics physical layer – uniform service difficult – complexity inside network Virtual Circuit Networks Network service model • First let’s talk about virtual circuit networks as a What service model for “channel” transporting contrast to IP networks datagrams from sender to receiver? • Based on establishing and tearing down connections Example services for Example services for a • Another important function in some network individual flow of datagrams: architectures: datagrams: • in-order datagram – ATM, frame relay, X.25 delivery – Before datagrams flow, two end hosts and intervening routers • guaranteed delivery establish virtual connection • guaranteed minimum • routers get involved • guaranteed delivery bandwidth to flow – Network vs transport layer connection service: with less than 40 • restrictions on changes • network: between two hosts (may also involve intervening msec delay in inter-packet spacing routers in case of VCs) • Transport: between two processes 2 Network layer connection and Network layer service models connection-less service Guarantees ? Network Service Congestion Architecture Model Bandwidth Loss Order Timing feedback • Datagram network provides network-layer connectionless service Internet best effort none no no no no (inferred via loss) • VC network provides network-layer ATM CBR constant yes yes yes no rate congestion connection service ATM VBR guaranteed yes yes yes no • Analogous to the transport-layer services, rate congestion ATM ABR guaranteed no yes no yes but: minimum – service: host-to-host ATM UBR none no yes no no – no choice: network provides one or the other – implementation: in network core Virtual circuits VC implementation “source-to-dest path behaves much like • VC comprises telephone circuit” – path from source to destination – performance-wise – VC numbers, one number for each link along – network actions along source-to-dest path path • call setup, teardown for each call before data can flow – entries in forwarding tables in routers along path • each packet carries VC identifier (not destination • packet belonging to VC carries VC number host address) (rather than dest address) • every router on source-dest path maintains “state” • VC number can be changed on each link. for each passing connection • link, router resources (bandwidth, buffers) may be – New VC number comes from forwarding table allocated to VC (dedicated resources = predictable service) 3 Forwarding table Virtual circuits: signaling VC number protocols 12 22 32 1 3 • Used to setup, maintain teardown VC 2 • Used in ATM, frame-relay, X.25 Forwarding table in interface • Not used in today’s Internet northwest router: number Incoming interface Incoming VC # Outgoing interface Outgoing VC # 1 12 3 22 application 6. Receive data application 2 63 1 18 transport 5. Data flow begins transport 3 7 2 17 network 4. Call connected 3. Accept call network 1 97 3 87 data link 1. Initiate call 2. incoming call … … … … data link physical physical Routers maintain connection state information! Datagram networks Forwarding table - 4 billion • No call setup at network layer possible entries • Routers: no state about end-to-end connections – no network-level concept of “connection” Destination Address Range Link Interface • Packets forwarded using destination host address 11001000 00010111 00010000 00000000 – packets between same source-dest pair may take different through 0 paths 11001000 00010111 00010111 11111111 11001000 00010111 00011000 00000000 through 1 application 11001000 00010111 00011000 11111111 application transport transport network 11001000 00010111 00011001 00000000 network through 2 data link 1. Send data 2. Receive data data link 11001000 00010111 00011111 11111111 physical physical otherwise 3 4 Longest prefix matching Prefix Match Link Interface 11001000 00010111 00010 0 11001000 00010111 00011000 1 11001000 00010111 00011 2 otherwise 3 What’s in an IP router? Examples DA: 11001000 00010111 00010110 10100001 Which interface? DA: 11001000 00010111 00011000 10101010 Which interface? Router Architecture Overview Input Port Functions Two key router functions: • run routing algorithms/protocol (RIP, OSPF, BGP) • forwarding datagrams from incoming to outgoing link Decentralized switching • Given datagram dest., lookup output port using forwarding table in input port memory • Goal: complete input port processing at ‘line speed’ • Queuing: if datagrams arrive faster than forwarding rate into switch fabric 5 Switching Via Memory Three types of switching fabrics First generation routers: • traditional computers with switching under direct control of CPU • packet copied to system’s memory • speed limited by memory bandwidth (2 bus crossings per datagram) Input Memory Output Port Port System Bus Switching via An Interconnection Switching Via a Bus Network • Overcome bus bandwidth limitations • datagram from input port memory • Banyan networks, other interconnection nets initially developed to output port memory via a shared bus to connect processors in multiprocessor • bus contention: switching speed limited by • Advanced design: fragmenting datagram into fixed length cells, bus bandwidth switch cells through the fabric. • 1 Gbps bus, Cisco 1900: sufficient speed for • Cisco 12000: switches Gbps through the interconnection access and enterprise routers (not regional network or backbone) 6 Output Ports Output port queueing • Buffering required when datagrams arrive from fabric faster than the transmission rate • buffering when arrival rate via switch exceeds output line speed • Scheduling discipline chooses among queued datagrams for • queueing (delay) and loss due to output port buffer overflow! transmission Input Port Queuing • Fabric slower than input ports combined -> queueing may occur at input queues • Head-of-the-Line (HOL) blocking: queued datagram at front of queue prevents others in queue from moving forward • Queueing delay and loss due to input buffer overflow! 7 .

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    7 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us