Application Protocols EECS 122 Lecture 6 Department of Electrical Engineering and Computer Sciences University of California Berkeley Today Adminstrivia The last two lectures have exposed you to building programs and simulations of networks Today we focus on specific applications and protocols DNS HTTP SMTP Lots of details but focus on the concepts February 2 2006 EECS122 Lecture 6 AKP 2 1 Where do Application Protocols Run BGP HTTP RTP DNS Application TCP UDP TCP IP UDP IP Network Ethernet FDDI Token February 2 2006 Etc 3 EECS122 Lecture 6 AKP Where do Application Protocols Run The Core provides a network service to the hosts Host Host Host HTTP SMTP Host Network Host DNS Network Network Routing Protocols e g OSPF February 2 2006 EECS122 Lecture 6 AKP 4 2 Internet transport protocols services UDP service TCP service connection oriented setup required between client and server processes reliable transport between sending and receiving process flow control sender won t overwhelm receiver congestion control throttle sender when network overloaded does not provide timing minimum bandwidth guarantees February 2 2006 unreliable data transfer between sending and receiving process does not provide connection setup reliability flow control congestion control timing or bandwidth guarantee 5 EECS122 Lecture 6 AKP Internet apps application transport protocols Application e mail remote terminal access Web file transfer streaming multimedia Internet telephony February 2 2006 Application layer protocol Underlying transport protocol SMTP RFC 2821 Telnet RFC 854 HTTP RFC 2616 FTP RFC 959 proprietary e g RealNetworks proprietary e g Vonage Dialpad TCP TCP TCP TCP TCP or UDP EECS122 Lecture 6 AKP typically UDP 6 3 Domain Name Service Resolves a host name names into an IP address Why host names To organize machines Why IP addresss Eg robotics eecs berkeley edu This conveys more information to humans than 128 32 48 234 The network needs an address to route Host Names yield information to people and IP addresses yield information to routers February 2 2006 EECS122 Lecture 6 AKP 7 DNS History Initially all host addess mappings were in a file called hosts txt in etc hosts As the internet grew this system broke down because Changes were submitted to SRI by email New versions of hosts txt were ftp d periodically from SRI An administrator could pick names at their discretion SRI couldn t handled the load The system was unreliable since there was a single point of contact Names were not unique Many hosts had inaccurate copies of hosts txt Internet growth was threatened February 2 2006 EECS122 Lecture 6 AKP 8 4 DNS Features Hierarchical Namespace Distributed architecture for storing names Administration divided along the same hierarchy Nameservers assigned zones of the hierarchical namespace Backup servers available for redundancy DNS client is simple Resolver Client server interaction on UDP Port 53 but can use TCP if desired February 2 2006 9 EECS122 Lecture 6 AKP Hierarchical Namespace root edu gov com berkeley mit eecs sims February 2 2006 org net uk fr The first level names are called Top Level Domains Depth of tree is arbitrary limit 128 Domains are subtrees argus mil E g berkeley edu and eecs berkeley edu Name collision avoided E g berkeley edu and berkeley com EECS122 Lecture 6 AKP 10 5 Hierarchical Administration root edu berkeley eecs sims com gov mil org net uk fr mit A zone corresponds to an administrative authority that is responsible for that portion of the hierarchy argus February 2 2006 EECS122 Lecture 6 AKP 11 Hierarchical Server Organization Each server has authority over a portion of the hierarchy A server maintains only a subset of all names Each server contains all the records for the hosts in its zone Each server needs to know other servers that are responsible for the other portions of the hierarchy Every server knows the root Root server knows about all top level domains February 2 2006 EECS122 Lecture 6 AKP 12 6 TLD and Authoritative Servers Top level domain TLD servers responsible for com org net edu etc and all top level country domains uk fr ca jp Network solutions maintains servers for com TLD Educause for edu TLD Authoritative DNS servers organization s DNS servers providing authoritative hostname to IP mappings for organization s servers e g Web and mail Can be maintained by organization or service provider February 2 2006 EECS122 Lecture 6 AKP 13 Local Name Server Does not strictly belong to hierarchy Each ISP residential ISP company university has one Also called default name server When a host makes a DNS query query is sent to its local DNS server Acts as a proxy forwards query into hierarchy February 2 2006 EECS122 Lecture 6 AKP 14 7 How does a name get resolved Query walks its way up and down the hierarchy Iterated query I don t know but here s who to ask next Recursive query I don t know right now but I ll get back to you February 2 2006 15 EECS122 Lecture 6 AKP Iterated Query root DNS server Host at lids mit edu wants IP address for top eecs berkeley edu I don t know but here s who to ask next 2 3 TLD DNS server 4 5 local DNS server dns mit edu 1 8 7 6 authoritative DNS server ns1 berkeley edu requesting host lids mit edu top eecs berkeley edu February 2 2006 EECS122 Lecture 6 AKP 16 8 Recursive Query root DNS server Host at lids mit edu wants IP address for top eecs berkeley edu I don t know right now but I ll get back to you 2 7 local DNS server 6 3 TLD DNS server 5 dns mit edu 1 4 8 authoritative DNS server ns1 berkeley edu requesting host lids mit edu top eecs berkeley edu February 2 2006 EECS122 Lecture 6 AKP 17 DNS caching and updating records once any name server learns mapping it caches mapping cache entries timeout disappear after some time TLD servers typically cached in local name servers Thus root name servers not often visited update notify mechanisms under design by IETF RFC 2136 http www ietf org html charters dnsind charter html February 2 2006 EECS122 Lecture 6 AKP 18 9 DNS records DNS distributed db storing resource records RR RR format name Type A name is hostname value is IP address Type NS value type ttl Type CNAME name is alias name for some canonical the real name www ibm com is really servereast backup2 ibm com name is domain e g value is canonical name foo com value is hostname of Type MX authoritative name server for value is name of mailserver this domain associated with name February 2 2006 EECS122 Lecture 6 AKP 19 Inserting records into
View Full Document