Chapter 4 Network Layer
Total Page:16
File Type:pdf, Size:1020Kb
Chapter 4 Network Layer A note on the use of these ppt slides: We’re making these slides freely available to all (faculty, students, readers). Computer They’re in PowerPoint form so you see the animations; and can add, modify, and delete slides (including this one) and slide content to suit your needs. Networking: A Top They obviously represent a lot of work on our part. In return for use, we only ask the following: Down Approach v If you use these slides (e.g., in a class) that you mention their source th (after all, we’d like people to use our book!) 6 edition v If you post any slides on a www site, that you note that they are adapted Jim Kurose, Keith Ross from (or perhaps identical to) our slides, and note our copyright of this Addison-Wesley material. March 2012 Thanks and enjoy! JFK/KWR All material copyright 1996-2012 J.F Kurose and K.W. Ross, All Rights Reserved Network Layer 4-1 Chapter 4: network layer chapter goals: v understand principles behind network layer services: § network layer service models § forwarding versus routing § how a router works § routing (path selection) § broadcast, multicast v instantiation, implementation in the Internet Network Layer 4-2 Chapter 4: outline 4.1 introduction 4.5 routing algorithms 4.2 virtual circuit and § link state datagram networks § distance vector 4.3 what’s inside a router § hierarchical routing 4.4 IP: Internet Protocol 4.6 routing in the Internet § datagram format § RIP § IPv4 addressing § OSPF § BGP § ICMP § IPv6 4.7 broadcast and multicast routing Network Layer 4-3 Network layer application transport v transport segment from network data link sending to receiving host physical network network data link data link network v physical physical on sending side data link physical network network encapsulates segments data link data link into datagrams physical physical network network v on receiving side, delivers data link data link physical physical network segments to transport data link physical layer application network transport data link network network v network layer protocols network physical data link data link data link physical physical in every host, router physical v router examines header fields in all IP datagrams passing through it Network Layer 4-4 Two key network-layer functions v forwarding: move packets analogy: from router’s input to appropriate router v routing: process of output planning trip from source to dest v routing: determine route taken by packets from v forwarding: process of source to dest. getting through single interchange § routing algorithms Network Layer 4-5 Interplay between routing and forwarding routing algorithm routing algorithm determines end-end-path through network local forwarding table forwarding table determines header value output link local forwarding at this router 0100 3 0101 2 0111 2 1001 1 value in arriving packet’s header 0111 1 3 2 Network Layer 4-6 Connection setup v 3rd important function in some network architectures: § ATM, frame relay, X.25 v before datagrams flow, two end hosts and intervening routers establish virtual connection § routers get involved v network vs transport layer connection service: § network: between two hosts (may also involve intervening routers in case of VCs) § transport: between two processes Network Layer 4-7 Network service model Q: What service model for “channel” transporting datagrams from sender to receiver? example services for example services for a flow individual datagrams: of datagrams: v guaranteed delivery v in-order datagram v guaranteed delivery with delivery less than 40 msec delay v guaranteed minimum bandwidth to flow v restrictions on changes in inter-packet spacing Network Layer 4-8 Network layer service models: Guarantees ? Network Service Congestion Architecture Model Bandwidth Loss Order Timing feedback Internet best effort none no no no no (inferred via loss) ATM CBR constant yes yes yes no rate congestion ATM VBR guaranteed yes yes yes no rate congestion ATM ABR guaranteed no yes no yes minimum ATM UBR none no yes no no Network Layer 4-9 Chapter 4: outline 4.1 introduction 4.5 routing algorithms 4.2 virtual circuit and § link state datagram networks § distance vector 4.3 what’s inside a router § hierarchical routing 4.4 IP: Internet Protocol 4.6 routing in the Internet § datagram format § RIP § IPv4 addressing § OSPF § BGP § ICMP § IPv6 4.7 broadcast and multicast routing Network Layer 4-10 Connection, connection-less service v datagram network provides network-layer connectionless service v virtual-circuit network provides network-layer connection service v analogous to TCP/UDP connecton-oriented / connectionless transport-layer services, but: § service: host-to-host § no choice: network provides one or the other § implementation: in network core Network Layer 4-11 Virtual circuits “source-to-dest path behaves much like telephone circuit” § performance-wise § network actions along source-to-dest path v call setup, teardown for each call before data can flow v each packet carries VC identifier (not destination host address) v every router on source-dest path maintains “state” for each passing connection v link, router resources (bandwidth, buffers) may be allocated to VC (dedicated resources = predictable service) Network Layer 4-12 VC implementation a VC consists of: 1. path from source to destination 2. VC numbers, one number for each link along path 3. entries in forwarding tables in routers along path v packet belonging to VC carries VC number (rather than dest address) v VC number can be changed on each link. § new VC number comes from forwarding table Network Layer 4-13 VC forwarding table 12 22 32 1 3 2 VC number interface forwarding table in number northwest router: Incoming interface Incoming VC # Outgoing interface Outgoing VC # 1 12 3 22 2 63 1 18 3 7 2 17 1 97 3 87 … … … … VC routers maintain connection state information! Network Layer 4-14 Virtual circuits: signaling protocols v used to setup, maintain teardown VC v used in ATM, frame-relay, X.25 v not used in today’s Internet application application 6. receive data transport 5. data flow begins transport network 4. call connected 3. accept call network 1. initiate call data link 2. incoming call data link physical physical Network Layer 4-15 Datagram networks v no call setup at network layer v routers: no state about end-to-end connections § no network-level concept of “connection” v packets forwarded using destination host address application application transport transport network 1. send datagrams 2. receive datagrams network data link data link physical physical Network Layer 4-16 Datagram forwarding table 4 billion IP addresses, so routing algorithm rather than list individual destination address local forwarding table list range of addresses dest address output link (aggregate table entries) address-range 1 3 address-range 2 2 address-range 3 2 address-range 4 1 IP destination address in arriving packet’s header 1 3 2 Network Layer 4-17 Datagram forwarding table Destination Address Range Link Interface 11001000 00010111 00010000 00000000 through 0 11001000 00010111 00010111 11111111 11001000 00010111 00011000 00000000 through 1 11001000 00010111 00011000 11111111 11001000 00010111 00011001 00000000 through 2 11001000 00010111 00011111 11111111 otherwise 3 Q: but what happens if ranges don’t divide up so nicely? Network Layer 4-18 Longest prefix matching longest prefix matching when looking for forwarding table entry for given destination address, use longest address prefix that matches destination address. Destination Address Range Link interface 11001000 00010111 00010*** ********* 0 11001000 00010111 00011000 ********* 1 11001000 00010111 00011*** ********* 2 3 otherwise examples: DA: 11001000 00010111 00010110 10100001 which interface? DA: 11001000 00010111 00011000 10101010 which interface? Network Layer 4-19 Datagram or VC network: why? Internet (datagram) ATM (VC) v data exchange among v evolved from telephony computers v human conversation: § “elastic” service, no strict § strict timing, reliability timing req. requirements § need for guaranteed service v many link types v “dumb” end systems § different characteristics § telephones § uniform service difficult § complexity inside v “smart” end systems network (computers) § can adapt, perform control, error recovery § simple inside network, complexity at “edge” Network Layer 4-20 Chapter 4: outline 4.1 introduction 4.5 routing algorithms 4.2 virtual circuit and § link state datagram networks § distance vector 4.3 what’s inside a router § hierarchical routing 4.4 IP: Internet Protocol 4.6 routing in the Internet § datagram format § RIP § IPv4 addressing § OSPF § BGP § ICMP § IPv6 4.7 broadcast and multicast routing Network Layer 4-21 Router architecture overview two key router functions: v run routing algorithms/protocol (RIP, OSPF, BGP) v forwarding datagrams from incoming to outgoing link forwarding tables computed, routing pushed to input ports processor routing, management control plane (software) forwarding data plane (hardware) high-seed switching fabric router input ports router output ports Network Layer 4-22 Input port functions lookup, link forwarding line layer switch termination protocol fabric (receive) queueing physical layer: bit-level reception data link layer: decentralized switching: e.g., Ethernet v given datagram dest., lookup output port see chapter 5 using forwarding table in input port memory (“match plus action”) v goal: complete input port processing at ‘line speed’ v queuing: if datagrams arrive faster