Presentation is loading. Please wait.

Presentation is loading. Please wait.

Chapter 2 Application Layer Computer Networking: A Top Down Approach, 4 th edition. Jim Kurose, Keith Ross Addison-Wesley, July 2007.

Similar presentations


Presentation on theme: "Chapter 2 Application Layer Computer Networking: A Top Down Approach, 4 th edition. Jim Kurose, Keith Ross Addison-Wesley, July 2007."— Presentation transcript:

1 Chapter 2 Application Layer Computer Networking: A Top Down Approach, 4 th edition. Jim Kurose, Keith Ross Addison-Wesley, July 2007.

2 Last Lecture  HTTP  Request/Response  Conditional GET message  Simple Mail Transfer Protocol (SMTP)  Comparison with HTTP

3 Today’s Lecture  Domain Name System(DNS)

4 HTTP overview Uses TCP: r Client initiates TCP connection (creates socket) to server, port 80 r Server accepts TCP connection from client r HTTP messages (application-layer protocol messages) exchanged between browser (HTTP client) and Web server (HTTP server) r Advantage of Layered architecture  HTTP does not worry about lost data or how TCP recovers from loss HTTP is “stateless”  Server maintains no information about past client requests

5 Conditional GET r Problem: The copy of the object residing in the cache may be stale  The object may have been modified since the copy was cached r HTTP has a mechanism that allows a cache to verify that its objects are up to date Conditional GET message r (1) The request message uses the GET method r (2) The request message includes an If-Modified- Since header line.

6 Conditional GET r Goal: Don’t send object if cache has up-to-date cached version r Cache: specify date of cached copy in HTTP request If-modified-since: r Server: Response contains no object if cached copy is up- to-date:  HTTP/1.0 304 Not Modified  Waste bandwidth  Increases response time Cache Server HTTP request msg If-modified-since: HTTP response HTTP/1.0 304 Not Modified Object not Modified HTTP request msg If-modified-since: HTTP response HTTP/1.0 200 OK Object Modified

7 Electronic Mail Asynchronous Medium Three major components: User Agents Mail Servers Simple Mail Transfer Protocol: SMTP User Agent a.k.a. “mail reader” composing, editing, reading mail messages e.g., Eudora, Outlook, Mozilla Thunderbird Sends message to the mail server user mailbox outgoing message queue mail server user agent user agent user agent mail server user agent user agent mail server user agent SMTP

8 Electronic Mail Mail Servers r Each recipient has a mailbox located in one of the mail servers r Mailbox manages and maintains the messages that have been sent to him. r Message queue of outgoing (to be sent) mail messages r Simple Mail Transfer Protocol (SMTP) between mail servers to send email messages  Client and Server  Both client and sever sides of SMTP run on every mail server.  Runs on TCP at port 25.  RFC 2821 mail server user agent user agent user agent mail server user agent user agent mail server user agent SMTP

9 r SMTP uses persistent connections  Can send all of the messages over the same TCP connection Comparison with HTTP: r HTTP transfer files from web server to web client r SMTP from one mail server to another r Both use Persistent Connections r HTTP: pull  Someone loads information on a web server and users use HTTP to pull this info  TCP connection is initiated by the machine that wants to receive the file r SMTP: push  Sending mail sever pushes the file to the receiving mail server  TCP connection is initiated by the machine that wants to send the file

10 DNS: Domain Name System People: many identifiers:  SSN, name, passport # Internet hosts:  IP address (32 bit)  “name”, e.g., ww.yahoo.com - used by humans Q: map between IP addresses and name ? Domain Name System: r Distributed Database implemented in hierarchy of many DNS servers r An application-layer protocol that allows hosts to query the distributed database  DNS uses UDP over port number 53.  RFC 1034 and RFC 1035

11 DNS Simple design would have one DNS server that contains all the mappings Why not centralize DNS? r Single point of failure r Traffic volume r Distant centralized database r Maintenance A centralized database in a single DNS server doesn’t scale!

12 Root DNS Servers com DNS servers org DNS serversedu DNS servers poly.edu DNS servers umass.edu DNS servers yahoo.com DNS servers amazon.com DNS servers pbs.org DNS servers Distributed, Hierarchical Database Client wants IP for www.amazon.com: r Client first queries a root server r The root server returns the IP addresses for TLD servers for the top level domain com r The client then contacts one of the TLD servers which returns the IP address of an authoritative server for amazon.com r The authoritative server then returns the IP address for the host name www.amazon.com

13 DNS: Root Name Servers r 13 root DNS servers world wide r Each server is a cluster of replicated servers  security and reliability purposes. r For more information see www.root-servers.org b USC-ISI Marina del Rey, CA l ICANN Los Angeles, CA e NASA Mt View, CA f Internet Software C. Palo Alto, CA (and 36 other locations) i Autonomica, Stockholm (plus 28 other locations) k RIPE London (also 16 other locations) m WIDE Tokyo (also Seoul, Paris, SF) a Verisign, Dulles, VA c Cogent, Herndon, VA (also LA) d U Maryland College Park, MD g US DoD Vienna, VA h ARL Aberdeen, MD j Verisign, ( 21 locations)

14 TLD and Authoritative Servers r Top-level Domain (TLD) Servers:  Responsible for com, org, net, edu, etc, and all top-level country domains uk, fr, jp.  Network Solutions maintains servers for com TLD  Educause for edu TLD r Authoritative DNS Servers:  Every organization with publicly accessible hosts provide accessible DNS records.  That maps the names of those hosts to IP addresses r Authoritative DNS servers houses these DNS records

15 Local Name Server r Does not strictly belong to hierarchy r Each company, university has one.  Also called “default name server” r When host makes DNS query, query is sent to its local DNS server  acts as proxy, forwards query into hierarchy

16 requesting host cis.poly.edu gaia.cs.umass.edu root DNS server local DNS server dns.poly.edu 1 2 3 4 5 6 authoritative DNS server dns.cs.umass.edu 7 8 TLD DNS server DNS name resolution example r Host at cis.poly.edu wants IP address for gaia.cs.umass.edu Iterated query: r Contacted server replies with name of server to contact r “I don’t know this name, but ask this server”

17 requesting host cis.poly.edu gaia.cs.umass.edu root DNS server local DNS server dns.poly.edu 1 2 4 5 6 authoritative DNS server dns.cs.umass.edu 7 8 TLD DNS server 3 Recursive Query: rPuts burden of name resolution on other server DNS Caching  Extensively used  Cache entries timeout (disappear) after some time  TLD servers typically cached in local name servers  Thus root name servers not often visited DNS name resolution example

18 Home Assignment Root name servers use Anycast technique? Why? Advantages? How to enter record into DNS? What is a whois database?

19 Thank You


Download ppt "Chapter 2 Application Layer Computer Networking: A Top Down Approach, 4 th edition. Jim Kurose, Keith Ross Addison-Wesley, July 2007."

Similar presentations


Ads by Google