The Internet Network layer Host router network layer



















- Slides: 19
The Internet Network layer Host, router network layer functions: Transport layer: TCP, UDP Network layer IP protocol • addressing conventions • datagram format • packet handling conventions Routing protocols • path selection • RIP, OSPF, BGP forwarding table ICMP protocol • error reporting • router “signaling” Link layer physical layer Network Layer 4 -1
IP Addressing: introduction r IP address: 32 -bit identifier for host, router interface: connection between host/router and physical link m m m router’s typically have multiple interfaces host may have multiple interfaces IP addresses associated with each interface 223. 1. 1. 1 223. 1. 1. 2 223. 1. 1. 4 223. 1. 1. 3 223. 1. 2. 1 223. 1. 2. 9 223. 1. 3. 27 223. 1. 2. 2 223. 1. 1. 1 = 11011111 00000001 223 1 1 Network Layer 1 4 -2
IP Addressing r IP address: m network part (high order bits) m host part (low order bits) r What’s a network ? (from IP address perspective) m device interfaces with same network part of IP address m can physically reach other without intervening router 223. 1. 1. 1 223. 1. 1. 2 223. 1. 1. 4 223. 1. 1. 3 223. 1. 2. 1 223. 1. 2. 9 223. 1. 3. 27 223. 1. 2. 2 LAN 223. 1. 3. 2 network consisting of 3 IP networks (for IP addresses starting with 223, first 24 bits are network address) Network Layer 4 -3
IP Addresses given notion of “network”, let’s re-examine IP addresses: “class-full” addressing: class A 0 network B 10 C 110 D 1110 1. 0. 0. 0 to 127. 255 host network 128. 0. 0. 0 to 191. 255 host network multicast address host 192. 0. 0. 0 to 223. 255 224. 0. 0. 0 to 239. 255 32 bits Network Layer 4 -4
Getting a datagram from source to dest. forwarding table in A Dest. Net. next router Nhops 223. 1. 1 223. 1. 2 223. 1. 3 IP datagram: misc source dest fields IP addr data A r datagram remains unchanged, as it travels source to destination r addr fields of interest here B 223. 1. 1. 4 1 2 2 223. 1. 1. 1 223. 1. 1. 2 223. 1. 1. 4 223. 1. 1. 3 223. 1. 2. 9 223. 1. 3. 27 223. 1. 2. 2 E 223. 1. 3. 2 Network Layer 4 -5
Getting a datagram from source to dest. forwarding table in A misc data fields 223. 1. 1. 1 223. 1. 1. 3 Dest. Net. next router Nhops 223. 1. 1 223. 1. 2 223. 1. 3 Starting at A, send IP datagram addressed to B: r look up net. address of B in forwarding table r find B is on same net. as A r link layer will send datagram directly to B inside link-layer frame m B and A are directly connected A B 223. 1. 1. 4 1 2 2 223. 1. 1. 1 223. 1. 1. 2 223. 1. 1. 4 223. 1. 1. 3 223. 1. 2. 9 223. 1. 3. 27 223. 1. 2. 2 E 223. 1. 3. 2 Network Layer 4 -6
Getting a datagram from source to dest. forwarding table in A misc data fields 223. 1. 1. 1 223. 1. 2. 2 Dest. Net. next router Nhops 223. 1. 1 223. 1. 2 223. 1. 3 Starting at A, dest. E: r look up network address of E r r r in forwarding table E on different network m A, E not directly attached routing table: next hop router to E is 223. 1. 1. 4 link layer sends datagram to router 223. 1. 1. 4 inside linklayer frame datagram arrives at 223. 1. 1. 4 continued…. . A B 223. 1. 1. 4 1 2 2 223. 1. 1. 1 223. 1. 1. 2 223. 1. 1. 4 223. 1. 1. 3 223. 1. 2. 9 223. 1. 3. 27 223. 1. 2. 2 E 223. 1. 3. 2 Network Layer 4 -7
Getting a datagram from source to dest. misc data fields 223. 1. 1. 1 223. 1. 2. 3 Arriving at 223. 1. 4, destined for 223. 1. 2. 2 r look up network address of E in router’s forwarding table r E on same network as router’s interface 223. 1. 2. 9 m router, E directly attached r link layer sends datagram to 223. 1. 2. 2 inside link-layer frame via interface 223. 1. 2. 9 r datagram arrives at 223. 1. 2. 2!!! forwarding table in router Dest. Net router Nhops interface 223. 1. 1 223. 1. 2 223. 1. 3 A B - 1 1 1 223. 1. 1. 4 223. 1. 2. 9 223. 1. 3. 27 223. 1. 1. 1 223. 1. 1. 2 223. 1. 1. 4 223. 1. 1. 3 223. 1. 2. 9 223. 1. 3. 27 223. 1. 2. 2 E 223. 1. 3. 2 Network Layer 4 -8
IP datagram format IP protocol version number header length (bytes) “type” of data max number remaining hops (decremented at each router) upper layer protocol to deliver payload to how much overhead with TCP? r 20 bytes of TCP r 20 bytes of IP r = 40 bytes + app layer overhead 32 bits ver head. type of len service length fragment 16 -bit identifier flgs offset upper time to Internet layer live checksum total datagram length (bytes) for fragmentation/ reassembly 32 bit source IP address 32 bit destination IP address Options (if any) data (variable length, typically a TCP or UDP segment) E. g. timestamp, record route taken, specify list of routers to visit. Network Layer 4 -9
IP Fragmentation & Reassembly r network links have MTU (max. transfer size) - largest possible link-level frame. m different link types, different MTUs r large IP datagram divided (“fragmented”) within net m one datagram becomes several datagrams m “reassembled” only at final destination m IP header bits used to identify, order related fragments fragmentation: in: one large datagram out: 3 smaller datagrams reassembly Network Layer 4 -10
IP Fragmentation and Reassembly Example r 4000 byte datagram r MTU = 1500 bytes length ID fragflag offset =4000 =x =0 =0 One large datagram becomes several smaller datagrams length ID fragflag offset =1500 =x =1 =0 length ID fragflag offset =1500 =x =1 =1480 length ID fragflag offset =1040 =x =0 =2960 Network Layer 4 -11
IP addressing: CIDR r Classful addressing: m m inefficient use of address space, address space exhaustion e. g. , class B net allocated enough addresses for 65 K hosts, even if only 2 K hosts in that network r CIDR: Classless Inter. Domain Routing m m network portion of address of arbitrary length address format: a. b. c. d/x, where x is # bits in network portion of address network part host part 11001000 00010111 00010000 200. 23. 16. 0/23 Network Layer 4 -12
DHCP: Dynamic Host Configuration Protocol Goal: allow host to dynamically obtain its IP address from network server when it joins network Can renew its lease on address in use Allows reuse of addresses (only hold address while connected an “on” Support for mobile users who want to join network (more shortly) DHCP overview: m host broadcasts “DHCP discover” msg m DHCP server responds with “DHCP offer” msg m host requests IP address: “DHCP request” msg m DHCP server sends address: “DHCP ack” msg Network Layer 4 -13
DHCP client-server scenario A B 223. 1. 1. 2 223. 1. 1. 4 223. 1. 1. 3 223. 1. 2. 1 DHCP server 223. 1. 1. 1 223. 1. 2. 9 223. 1. 3. 27 223. 1. 2. 2 223. 1. 3. 2 E arriving DHCP client needs address in this network Network Layer 4 -14
Routing in the Internet r The Global Internet consists of Autonomous Systems (AS) interconnected with each other: m m m Stub AS: small corporation: one connection to other AS’s Multihomed AS: large corporation (no transit): multiple connections to other AS’s Transit AS: provider, hooking many AS’s together r Two-level routing: m Intra-AS: administrator responsible for choice of routing algorithm within network m Inter-AS: unique standard for inter-AS routing: BGP Network Layer 4 -15
Internet AS Hierarchy Intra-AS border (exterior gateway) routers Inter-AS interior (gateway) routers Network Layer 4 -16
Intra-AS Routing r Also known as Interior Gateway Protocols (IGP) r Most common Intra-AS routing protocols: m RIP: Routing Information Protocol m OSPF: Open Shortest Path First m IGRP: Interior Gateway Routing Protocol (Cisco proprietary) Network Layer 4 -17
Inter-AS routing in the Internet: BGP Network Layer 4 -18
Why different Intra- and Inter-AS routing ? Policy: r Inter-AS: admin wants control over how its traffic routed, who routes through its net. r Intra-AS: single admin, so no policy decisions needed Scale: r hierarchical routing saves table size, reduced update traffic Performance: r Intra-AS: can focus on performance r Inter-AS: policy may dominate over performance Network Layer 4 -19