COMP 431 Application-Layer Protocols Internet Services & Protocols Outline application application transport ◆ The architecture of distributed systems network Applications & » Client/Server computing link ◆ Example client/server systems and physical Application-Layer Protocols: their application-level protocols The Domain Name System » The World-Wide Web (HTTP) » Reliable file transfer (FTP) regional ISP » E-mail (SMTP & POP) Jasleen Kaur » Internet Domain Name System (DNS) ◆ The programming model used in constructing distributed systems February 6, 2020 » Socket programming Institutional network 1 2
Application-Layer Protocols The Domain Name System The Domain Name System (DNS) Web browsing (HTTP) example ◆ The DNS is mainly used by applications, not end-users ◆ Computers (hosts, routers) connected to the Internet have two forms of names: » And virtually all applications use the DNS for every request they generate » IP address — a 32 bit identifier used for addressing hosts and routing data to them ◆ Web browsing: User enters URL www.someSchool.edu » Hostname — an ASCII string used by applications » In order to create the socket to www.someSchool.edu, the OS ◆ The DNS is an Internet-wide service that provides mappings (TCP) must resolve the hostname between IP addresses and hostnames to an IP address » The DNS is a distributed database implemented in a hierarchy of name » The OS contacts a DNS name servers Web server to learn the web server’s Server » The DNS is also an application-layer protocol IP address Browser » The IP address is then used by ◆ Hosts and routers use name servers to resolve names TCP to create the socket to the (address/name translation) server » Name resolution is an essential Internet function implemented as » All this happens transparently to application-layer protocol DNS the user and the browser! Server 3 4
The Domain Name System Name Hierarchy in the DNS Name Hierarchy in DNS Top level domains gov org … com net edu com edu net org gov npr ◆ Generic domains: sprint bellsouth yahoo amazon unc cornell » (1980) . com , . org , . net , . edu , . gov , . mil , . int » (2000) . biz , . info , . name , . pro ◆ Special sponsored names srv med cs cs » (2000) . aero , . coop , . museum www » (2003) . asia , . cat , . jobs , . mobi , . tel , . travel ◆ hostname = “ dot ” separated concatenation of domain names ◆ Country code domains along path toward the root » . uk , . de , . jp , . us , … (250 more!) » cs.unc.edu » unc.edu » classroom.cs.unc.edu ◆ There are name servers associated with every domain 5 6
Names Are Valuable Names Are Valuable And prices are “ more ” rational And prices are “more” rational smoking.com $500,000 smoking.com $500,000 now.tv $150,000 now.tv $150,000 beef.com $250,000 beef.com $250,000 science.tv $100,000 science.tv $100,000 sample.com $90,000 sample.com $90,000 british.tv $25,000 british.tv $25,000 upscale.com $80,000 upscale.com $80,000 dancing.tv $20,000 dancing.tv $20,000 clerical.com $75,000 clerical.com $75,000 cafes.tv $10,000 cafes.tv $10,000 snake.com $50,000 snake.com $50,000 performer.tv $10,000 performer.tv $10,000 barbecues.com barbecues.com bowling.tv $10,000 bowling.tv $10,000 $30,000 $30,000 merger.tv $10,000 merger.tv $10,000 geeky.com $25,000 geeky.com $25,000 article.tv $5,000 article.tv $5,000 mime.com SOLD! mime.com SOLD! grandma.tv $5,000 grandma.tv $5,000 dinner.com $20,000 dinner.com $20,000 career.net $150,000 mr.com $350,000 career.net $150,000 mr.com $350,000 “New” “New” invest.net $75,000 teeth.net $55,000 invest.net $75,000 teeth.net $55,000 dunk.net $50,000 saving.net $45,000 dunk.net $50,000 saving.net $45,000 pornos.net $35,000 pen.net $35,000 pornos.net $35,000 pen.net $35,000 wholesale.net $30,000 gems.org $20,000 wholesale.net $30,000 gems.org $20,000 exploring.net $20,000 train.net $15,000 exploring.net $20,000 train.net $15,000 bonded.net $15,000 equestrians.com $10,000 bonded.net $15,000 equestrians.com $10,000 worked.net $10,000 motorcars.tv $10,000 worked.net $10,000 motorcars.tv $10,000 wealthy.net $8,000 storms.us $8,000 wealthy.net $8,000 storms.us $8,000 russians.net $7,000 burnable.net $6,000 russians.net $7,000 burnable.net $6,000 7 9
Growth of DNS Registrations The Domain Name System org gov com net edu Designing a distributed service npr sprint bellsouth yahoo amazn unc cornell srv ◆ Why not centralize the DNS med cs cs » A server process on a big, well connected supercomputer? ◆ Centralized systems do not scale! » Poor reliability: centralized = single point of failure » Poor performance: centralized = “ remote access ” for most users » Difficult to manage: centralized = all customer traffic goes to one location, a large staff has to be present to handle registrations ◆ A centralized system is not politically feasible in an international network Source: Internet Systems Consortium (http://www.isc.org/) 10 11
Designing a Distributed Service DNS Name Servers DNS Name Servers Root name servers Local name server bristol.cs.unc.edu ◆ No server has every hostname-to-IP address mapping ◆ Authoritative name server: » Every host is registered with at least one Name resolution: authoritative server that stores that host’s IP Query and Reply address and name » The authoritative name server can perform name/address translation for that host’s name/address Local host ◆ Local authoritative name servers: classroom.cs.unc.edu » Each ISP, university, company, has a local ◆ A root name server is contacted when a local name server that can’t (default) name server authoritative for its own resolve a name hosts What if the name is not a local » The root server either resolves the name or provides pointers to authoritative host ( e.g ., » Resolvers always query a name server local to servers at lower level of name hierarchy it to resolve any host name www.yahoo.com )? ◆ In 1998, there were a dozen root name servers worldwide 12 13
DNS Name Servers DNS Name Servers 2011 Root name servers Generic TLD servers (Verisign Corp.) 13 independent sites ◆ . com , . org , . net server locations (separated from root servers) ◆ In 2011 there were a few more servers… 14 15
The Domain Name System DNS Name Servers Name Hierarchy in DNS Using a server hierarchy for resolving names Root name server ◆ Example: Host swift.cs.unc.edu a.root-servers.net wants to know the IP address of 3 Authoritative name server www.yahoo.com gov dns.yahoo.com org com net edu 4 » Swift contacts its local DNS server bristol.cs.unc.edu www.yahoo.com npr 2 5 ◆ To resolve a non-local name the sprint bellsouth yahoo amazon unc cornell local name server queries the root server (if necessary) Local name server srv bristol.cs.unc.edu med cs cs ◆ The root server contacts the www authoritative server dns.yahoo.com 1 6 (if necessary) ◆ hostname = “ dot ” separated concatenation of domain names along path toward the root ◆ Results propagate back to swift » cs.unc.edu » unc.edu » classroom.cs.unc.edu ◆ There are name servers associated with every domain Requesting host swift.cs.unc.edu 16 17
DNS Name Servers DNS Name Servers Using a server hierarchy for resolving names Using a server hierarchy for resolving names Root name server Root name server ◆ It’s possible that the root name a.root-servers.net ◆ The DNS supports two forms a.root-servers.net server may not know the Intermediate Intermediate of queries: 3 3 name server name server authoritative name server for a dns.unc.edu dns.unc.edu » Recursive queries 6 6 domain » Iterative queries 4 4 ◆ The root server contacts an 2 5 2 5 ◆ Recursive queries place the intermediate name server that 7 7 burden of name resolution knows the authoritative name Authortative Authortative name server name server (recursively) on the contacted server dns.cs.unc.edu dns.cs.unc.edu server Local name server Local name server ◆ The intermediate name server dns.yahoo.com dns.yahoo.com ◆ In an iterated query the contacted contacts the authoritative name 1 8 1 8 server simply replies with the server name of the server to contact ◆ Results propagate back to the » “I don’t know; trying asking X” requesting host Requesting host Requesting host estore.yahoo.com estore.yahoo.com 18 19
Recommend
More recommend