1 Netcomm 2005 Communication Networks Recitation 3
2 Netcomm 2005 DNS & ARP
3 Netcomm 2005 host names: convenient app-to-app communicationhost names: convenient app-to-app communication IP: efficient large-scale network communicationIP: efficient large-scale network communication MAC: quick-n-easy LAN forwardingMAC: quick-n-easy LAN forwarding Addressing Schemes medellin.cs.columbia.edu E6-E BB-4B
4 Netcomm 2005 Routing Example A B E Starting at A, given IP datagram addressed to B: look up network address of B, find B on same network as Alook up network address of B, find B on same network as A link layer sends datagram to B inside link-layer framelink layer sends datagram to B inside link-layer frame B’s MAC addr A’s MAC addr A’s IP addr B’s IP addr IP payload datagram frame frame source, dest. address datagram source, dest. address
5 Netcomm 2005 Translating between addresses Hostname (medellin.cs.columbia.edu) IP address ( ) MAC address ( E6-E BB-4B ) DNS ARP
6 Netcomm 2005 DNS Servers Contacted by local name server when can not resolve nameContacted by local name server when can not resolve name Root name server:Root name server: –contacts authoritative name server if name mapping not known –gets mapping –returns mapping to local name server
7 Netcomm 2005 DNS Hierarchy educomorgjp rpialbany DNS Distributed Database rpi.edu DNS DB rpi.edu DNS DB rpi.edu DNS DB
8 Netcomm 2005 Simple DNS example host surf.eurecom.fr wants IP address of gaia.cs.umass.edu 1. Contacts its local DNS server, dns.eurecom.fr 2. dns.eurecom.fr contacts root name server, if necessary 3. root name server contacts authoritative name server, dns.umass.edu, if necessary requesting host surf.eurecom.fr gaia.cs.umass.edu root name server authorititive name server dns.umass.edu local name server dns.eurecom.fr
9 Netcomm 2005 DNS example Root name server: may not know authoritative name servermay not know authoritative name server may know intermediate name server: who to contact to find authoritative name servermay know intermediate name server: who to contact to find authoritative name server requesting host surf.eurecom.fr gaia.cs.umass.edu root name server local name server dns.eurecom.fr authoritative name server dns.cs.umass.edu intermediate name server dns.umass.edu 7 8
10 Netcomm 2005 DNS: iterated queries recursive query: puts burden of name resolution on contacted name serverputs burden of name resolution on contacted name server heavy loadheavy load iterated query: contacted server replies with name of server to contactcontacted server replies with name of server to contact “I don’t know this name, but ask this server”“I don’t know this name, but ask this server” requesting host surf.eurecom.fr gaia.cs.umass.edu root name server local name server dns.eurecom.fr authoritative name server dns.cs.umass.edu intermediate name server dns.umass.edu 7 8 iterated query
11 Netcomm 2005 DNS library functions struct hostent *gethostbyname( const char *hostname); struct hostent *gethostbyaddr( const char *addr size_t len, int family);
12 Netcomm 2005 LAN Addresses and ARP 32-bit IP address: network-layer addressnetwork-layer address used to get datagram to destination networkused to get datagram to destination network LAN (or MAC or physical) address: used to get datagram from one interface to another physically-connected interface (same network)used to get datagram from one interface to another physically-connected interface (same network) 48 bit MAC address (for most LANs) burned into the adapter’s ROM48 bit MAC address (for most LANs) burned into the adapter’s ROM
13 Netcomm 2005 LAN Addresses and ARP Each adapter on the LAN has a unique LAN address
14 Netcomm 2005 ARP: Address Resolution Protocol Each IP node (Host, Router) on LAN has ARP module and tableEach IP node (Host, Router) on LAN has ARP module and table ARP Table: IP/MAC address mappings for some LAN nodesARP Table: IP/MAC address mappings for some LAN nodes –TTL (Time To Live): time of day after which address mapping will be forgotten (typically 20 minutes) Question: how to determine MAC address of B given B’s IP address?
15 Netcomm 2005 ARP protocol A knows B's IP address, wants to learn physical address of BA knows B's IP address, wants to learn physical address of B A broadcasts ARP query packet, containing B's IP addressA broadcasts ARP query packet, containing B's IP address –all machines on LAN receive ARP query B receives ARP packet, replies to A with its (B's) physical layer addressB receives ARP packet, replies to A with its (B's) physical layer address A caches (saves) IP-to-physical address pairs until information becomes old (times out)A caches (saves) IP-to-physical address pairs until information becomes old (times out) –soft state: information that times out (goes away) unless refreshed Arp Arp!
16 Netcomm 2005 ARP Conversation HEY - Everyone please listen! Will please send me her Ethernet address? not me Hi Green! I’m , and my Ethernet address is 87:A2:15:35:02:C3
17 Netcomm 2005 Problem 1 1.Calculate the completion time of transferring a file of size 1KB over a link with speed 10Mb/s and length 3000km. Propagation speed is 200,000Km/s
18 Netcomm 2005 Solution 1 The completion time is calculated as follows: T = Prop. Delay + Trans. Time T = Prop. Delay + Trans. Time We obtain that: Prop. Delay = 3000 km /(0.2 km/usec) = 15msProp. Delay = 3000 km /(0.2 km/usec) = 15ms Trans. Time = 1KB/1.25MB/s = 8.2 msTrans. Time = 1KB/1.25MB/s = 8.2 ms T = 15ms ms = 23.2 ms
19 Netcomm 2005 Problem 2: CRC bits Bits represent a polynomial over GF(2)Bits represent a polynomial over GF(2) Example: = x 5 +x 2 +1Example: = x 5 +x 2 +1 Addition and subtraction are actually XORsAddition and subtraction are actually XORs Example: =Example: = 1010
20 Netcomm 2005 Calculating CRC For data D and Generator G find bits R such that DR = n*G (over GF(2)).For data D and Generator G find bits R such that DR = n*G (over GF(2)). Same as D00…0 = n*G + R (over GF(2))Same as D00…0 = n*G + R (over GF(2)) R will always be 1 bit shorter than GR will always be 1 bit shorter than G Use long Division with XORUse long Division with XOR
21 Netcomm 2005 Solution 2 D = , G=1101, R=???D = , G=1101, R=??? | | R=011 n= DR=
22 Netcomm 2005 Solution 2 – In reverse DR = , G= |
23 Netcomm 2005 CRC – Concluding Remarks If R has r bits, there are 2 r different CRCsIf R has r bits, there are 2 r different CRCs A random string will not be detected as an error in probability 2 -r.A random string will not be detected as an error in probability 2 -r. Robustness for common errors depends on G.Robustness for common errors depends on G. Some standards try to avoid trailing 0’s.Some standards try to avoid trailing 0’s.
24 Netcomm 2005 Problem 3 2. In CSMA/CD network there are two computers A and B which collide in round 1. Give the table of possible outcomes of the second round and their probabilities. Assume that the initial delay period after the collision is D=1 (the hosts pick a random number between 0 and D before trying to re-transmit).
25 Netcomm 2005 Solution 3 Case A B Probability Comment Case A B Probability Comment a Collide in round 2 a Collide in round 2 b A successful in round 2 b A successful in round 2 B successful in round 3 B successful in round 3 c B successful in round 2 c B successful in round 2 A successful in round 3 A successful in round 3 d Collide in round 3 d Collide in round 3