15-441 Computer NetworkingAside: Interaction with Link LayerCaching ARP EntriesARP Cache ExampleARP Cache SurpriseCMU’s Internal Network StructureProxy ARPThings to keep in mindMonitoring Packet TrafficSlide 10Important ConceptsIP Address Classes (Some are Obsolete)IP Address Problem (1991)IP Address Utilization (‘97)IP Address Utilization (‘06)Slide 16Classless Inter-Domain Routing (CIDR) – RFC1338CIDR ExampleIP Addresses: How to Get One?Slide 20CIDR IllustrationCIDR ImplicationsCIDRAggregation with CIDROutlineHost Routing Table ExampleRouting to the NetworkRouting Within the SubnetSlide 30Slide 32IP Service ModelIPv4 Header FieldsSlide 35Slide 36IP Delivery ModelIP FragmentationReassemblyFragmentation Related FieldsIP Fragmentation Example #1IP Fragmentation Example #2IP Fragmentation Example #3IP ReassemblyFragmentation and Reassembly ConceptsFragmentation is HarmfulInternet Control Message Protocol (ICMP)IP MTU Discovery with ICMPSlide 49Slide 50Slide 51Slide 52Next Lecture15-441 Computer NetworkingLecture 8 – IP Addressing & Packets15-411 S'10Lecture 8: IP Addressing/Packets 2Aside: Interaction with Link Layer•How does one find the Ethernet address of a IP host?•ARP•Broadcast search for IP address•E.g., “who-has 128.2.184.45 tell 128.2.206.138” sent to Ethernet broadcast (all FF address)•Destination responds (only to requester using unicast) with appropriate 48-bit Ethernet address•E.g, “reply 128.2.184.45 is-at 0:d0:bc:f2:18:58” sent to 0:c0:4f:d:ed:c615-411 S'10Lecture 8: IP Addressing/Packets 3Caching ARP Entries•Efficiency Concern•Would be very inefficient to use ARP request/reply every time need to send IP message to machine•Each Host Maintains Cache of ARP Entries•Add entry to cache whenever get ARP response•Set timeout of ~20 minutes15-411 S'10Lecture 8: IP Addressing/Packets 4ARP Cache Example•Show using command “arp -a”Interface: 128.2.222.198 on Interface 0x1000003 Internet Address Physical Address Type 128.2.20.218 00-b0-8e-83-df-50 dynamic 128.2.102.129 00-b0-8e-83-df-50 dynamic 128.2.194.66 00-02-b3-8a-35-bf dynamic 128.2.198.34 00-06-5b-f3-5f-42 dynamic 128.2.203.3 00-90-27-3c-41-11 dynamic 128.2.203.61 08-00-20-a6-ba-2b dynamic 128.2.205.192 00-60-08-1e-9b-fd dynamic 128.2.206.125 00-d0-b7-c5-b3-f3 dynamic 128.2.206.139 00-a0-c9-98-2c-46 dynamic 128.2.222.180 08-00-20-a6-ba-c3 dynamic 128.2.242.182 08-00-20-a7-19-73 dynamic 128.2.254.36 00-b0-8e-83-df-50 dynamic15-411 S'10Lecture 8: IP Addressing/Packets 5ARP Cache Surprise•How come 3 machines have the same MAC address?Interface: 128.2.222.198 on Interface 0x1000003 Internet Address Physical Address Type 128.2.20.218 00-b0-8e-83-df-50 dynamic 128.2.102.129 00-b0-8e-83-df-50 dynamic 128.2.194.66 00-02-b3-8a-35-bf dynamic 128.2.198.34 00-06-5b-f3-5f-42 dynamic 128.2.203.3 00-90-27-3c-41-11 dynamic 128.2.203.61 08-00-20-a6-ba-2b dynamic 128.2.205.192 00-60-08-1e-9b-fd dynamic 128.2.206.125 00-d0-b7-c5-b3-f3 dynamic 128.2.206.139 00-a0-c9-98-2c-46 dynamic 128.2.222.180 08-00-20-a6-ba-c3 dynamic 128.2.242.182 08-00-20-a7-19-73 dynamic 128.2.254.36 00-b0-8e-83-df-50 dynamic15-411 S'10Lecture 8: IP Addressing/Packets 6CMU’s Internal Network Structure•CMU Uses Routing Internally•Maintains forwarding tables using OSPF•Most CMU hosts cannot be reached at link layerhosthost hostLAN 1...router128.2.198.222gigrouter.net.cs.cmu.edu128.2.254.36hostjmac.library.cmu.edu128.2.20.218Forwarding Table EntryO 128.2.20.0/23 via 128.2.255.20, 21:45:05, Vlan255routerhl-vl255.gw.cmu.edu128.2.255.2015-411 S'10Lecture 8: IP Addressing/Packets 7Proxy ARP•Provides Link-Layer Connectivity Using IP Routing•Local router (gigrouter) sees ARP request•Uses IP addressing to locate host•Becomes “Proxy” for remote host•Using own MAC address•Requestor thinks that it is communicating directly with remote hosthosthost hostLAN 1...router128.2.198.222gigrouter.net.cs.cmu.edu128.2.254.3600-b0-8e-83-df-50hostjmac.library.cmu.edu128.2.20.218Things to keep in mind•MAC IP is not 1:1•Tradeoff•Security?•Transparent backwards compatibility•Encapsulation15-411 S'10Lecture 8: IP Addressing/Packets 815-411 S'10Lecture 8: IP Addressing/Packets 9Monitoring Packet Traffic•Experiment•Ran TCPDUMP for 15 minutes connected to CMU network•No applications running•But many background processes use network•Lots of ARP traffic (71% of total)•Average 37 ARP requests / second (why all from CS hosts?)•Only see responses from own machine (why?)Total Messages15-411 S'10Lecture 8: IP Addressing/Packets 10Monitoring Packet Traffic•Other Traffic•Mostly UDP•Encode low-level protocols such as bootp•Nothing very exciting (why?)•Answers for UDP and ARPTotal IP Messages•On a switched network you only see broadcast traffic or traffic sent to/from you•TCP is never sent broadcast15-411 S'10Lecture 8: IP Addressing/Packets 11Important Concepts•Hierarchical addressing critical for scalable system•Don’t require everyone to know everyone else•Reduces number of updates when something changes•Interaction with routing tables15-411 S'10Lecture 8: IP Addressing/Packets 12IP Address Classes(Some are Obsolete)Network ID Host IDNetwork ID Host ID8 16Class A320Class B10Class C110Multicast AddressesClass D1110Reserved for experimentsClass E11112415-411 S'10Lecture 8: IP Addressing/Packets 13IP Address Problem (1991)•Address space depletion•In danger of running out of classes A and B•Why?•Class C too small for most domains•Very few class A – very careful about giving them out•Class B – greatest problem•Class B sparsely populated •But people refuse to give it back•Large forwarding tables•2 Million possible class C groups15-411 S'10Lecture 8: IP Addressing/Packets 14IP Address Utilization (‘97)http://www.caida.org/outreach/resources/learn/ipv4space/ -- broken15-411 S'10Lecture 8: IP Addressing/Packets 15IP Address Utilization (‘06)http://xkcd.com/195/15-411 S'10Lecture 8: IP Addressing/Packets 16IP Address Utilization
View Full Document