Internet ProtocolIP overviewLayer reminderIP service modelIP comparison with ATMIP addressingIP Addressing: introductionIP networksIPv4 Address ModelSlide 10CIDRClassless DomainsIP forwardingHierarchical NetworksSubnettingForwarding TablesNAT: Network Address TranslationSlide 18Slide 19Slide 20Slide 21IPv4 Address Translation supportIP to Physical Address TranslationARPARP PacketIP Packet FormatSlide 27Slide 28Slide 29IP Packet SizeIP Fragmentation and ReassemblySlide 32Slide 33Internet Control Message Protocol (ICMP)ICMPTraceroute and ICMPHost ConfigurationSlide 38Dynamic Host Configuration Protocol (DHCP)Slide 40DHCPInternet ProtocolIP overviewService modelAddressingForwarding (Routing later)Layer reminderBridges - emulate single linkEverything broadcastSame collision domainSwitches - emulate single networkFlat addressingBroadcast supportedInternet - connect multiple networksHierarchical addressingNo broadcastHighly scalableIP service modelService provided to transport layer (TCP, UDP)Global name spaceHost-to-host connectivity (connectionless)Best-effort packet deliveryNot in IP service modelDelivery guarantees on bandwidth, delay or lossDelivery failure modesPacket delayed for a very long timePacket lossPacket delivered more than oncePackets delivered out of orderIP comparison with ATMNetwork ArchitectureService ModelGuarantees Congestion FeedbackBandwidth Loss Order TimingInternet best effortnone no no no noATM CBR constant yes yes yes no congestionATM VBR guaranteed rateyes yes yes no congestionATM ABR guaranteed minimumno yes no yesATM UBR none no yes no noIP addressingEthernet address spaceFlatAssigned at manufacture timeIP address spaceHierarchicalAssigned at configuration timeIP Addressing: introductionIP address: 32-bit identifier for host, router interface interface: connection between host/router and physical linkrouters typically have multiple interfaceshost typically has one interfaceIP addresses associated with each interface223.1.1.1223.1.1.2223.1.1.3223.1.1.4 223.1.2.9223.1.2.2223.1.2.1223.1.3.2223.1.3.1223.1.3.27223.1.1.1 = 11011111 00000001 00000001 000000012231 11IP networksAddress has 2 componentsNetwork (high-order bits)Host (low-order bits)223.1.1.1223.1.1.2223.1.1.3223.1.1.4 223.1.2.9223.1.2.2223.1.2.1223.1.3.2223.1.3.1223.1.3.27IPv4 Address ModelClass Network ID Host ID # of Addresses# of NetworksA 0 + 7 bit 24 bit 224-2 126B 10 + 14 bit 16 bit 65,536 - 2 214C 110 + 21 bit 8 bit 256 - 2 221D 1110 + Multicast Address IP MulticastE Future Use0 Network (7 bits)Network (14 bits)1 1 01 0Network (21 bits)Host (24 bits)Host (16 bits)Host (8 bits)Class A:Class B:Class C:IP networksClass A network: 18.0.0.0 (MIT)www.mit.edu has address 18.7.22.83Class B network: 128.174.0.0 (UIUC)www.cs.uiuc.edu has address 128.174.252.84Class C network: 216.125.249.0 (Parkland)www.parkland.edu has address 216.125.249.97CIDR3-class model too inflexibleCIDR: Classless InterDomain RoutingArbitrary number of bits to specify networkAddress format: a.b.c.d/x, where x is # bits in network portion11001000 00010111 00010000 00000000subnetparthostpart200.23.16.0/23Classless DomainsInternet Archive - 207.241.224.0/204K hosts207.241.224.0 - 207.241.239.255AT&T - 204.127.128.0/1816K hosts204.127.128.0 - 204.127.191.255UUNET - 63.64.0.0/104M hosts63.64.0.0 - 63.127.255.255IP forwardingForwarding table has:Network numberInterfaceAvoid having to store 4 billion entriesBut there are still 2 million class C’s…and perhaps more CIDR networksHierarchical Networks“Send me anythingwith addresses beginning 200.23.16.0/20”200.23.16.0/23200.23.18.0/23200.23.30.0/23Fly-By-Night-ISPOrganization 0Organization 7InternetOrganization 1ISPs-R-Us“Send me anythingwith addresses beginning 199.31.0.0/16”200.23.20.0/23Organization 2......SubnettingUIUC - 130.126.0.0/16130.126.0.0 - 130.126.255.255CRHC - 130.126.136.0/21130.126.136.0 - 130.126.143.255EWS - 130.126.160.0/21130.126.160.0 - 130.126.167.255Forwarding Tables130.126.136.0/21 if1130.126.160.0/21 if2130.126.0.0/16 if30.0.0.0/0 if4Most specific rule is usedMost hosts outside of the core have default rulesCRHCEWSUIUCInternetif1if2if4if3NAT: Network Address Translation10.0.0.110.0.0.210.0.0.310.0.0.4138.76.29.7local network(e.g., home network)10.0.0/24rest ofInternetDatagrams with source or destination in this networkhave 10.0.0/24 address for source, destination (as usual)All datagrams leaving localnetwork have same single source NAT IP address: 138.76.29.7,different source port numbersNAT: Network Address TranslationMotivation: local network uses just one IP address as far as outside world is concerned:range of addresses not needed from ISP: just one IP address for all devicescan change addresses of devices in local network without notifying outside worldcan change ISP without changing addresses of devices in local networkdevices inside local net not explicitly addressable, visible by outside world (a security plus).NAT: Network Address TranslationImplementation: NAT router must:outgoing datagrams: replace (source IP address, port #) of every outgoing datagram to (NAT IP address, new port #). . . remote clients/servers will respond using (NAT IP address, new port #) as destination addr.remember (in NAT translation table) every (source IP address, port #) to (NAT IP address, new port #) translation pairincoming datagrams: replace (NAT IP address, new port #) in dest fields of every incoming datagram with corresponding (source IP address, port #) stored in NAT tableNAT: Network Address Translation10.0.0.110.0.0.210.0.0.3S: 10.0.0.1, 3345D: 128.119.40.186, 80110.0.0.4138.76.29.71: host 10.0.0.1 sends datagram to 128.119.40.186, 80NAT translation tableWAN side addr LAN side addr138.76.29.7, 5001 10.0.0.1, 3345…… ……S: 128.119.40.186, 80 D: 10.0.0.1, 33454S: 138.76.29.7, 5001D: 128.119.40.186, 8022: NAT routerchanges datagramsource addr from10.0.0.1, 3345 to138.76.29.7, 5001,updates tableS: 128.119.40.186, 80 D: 138.76.29.7, 500133: Reply arrives dest. address: 138.76.29.7, 50014: NAT routerchanges datagramdest addr from138.76.29.7, 5001 to 10.0.0.1, 3345NAT: Network Address Translation16-bit port-number field: 60K simultaneous connections with a single LAN-side address!NAT
View Full Document