2: Application Layer1 DNS: Domain Name System People have many identifiers: SSN, name, passport number Internet hosts, routers have identifiers, too: IP.

Slides:



Advertisements
Similar presentations
DNS – Domain Name system Converting domain names to IP addresses since 1983.
Advertisements

Domain Name System (or Service) (DNS) Computer Networks Computer Networks Term B10.
1 EEC-484/584 Computer Networks Lecture 5 Wenbing Zhao (Part of the slides are based on Drs. Kurose & Ross ’ s slides for their Computer.
1 Outline r Principles of network applications m App architectures m App requirements r Web and HTTP m Objects vs. root files m Persistent, pipelining,
EEC-484/584 Computer Networks Lecture 5 Wenbing Zhao (Part of the slides are based on Drs. Kurose & Ross ’ s slides for their Computer.
Domain Name System (or Service) (DNS) Computer Networks Computer Networks Spring 2012 Spring 2012.
EEC-484/584 Computer Networks Lecture 5 Wenbing Zhao (Part of the slides are based on Drs. Kurose & Ross ’ s slides for their Computer.
2: Application Layer1 FTP, SMTP and DNS. 2: Application Layer2 FTP: separate control, data connections r FTP client contacts FTP server at port 21, specifying.
EEC-484/584 Computer Networks Lecture 5 Wenbing Zhao (Part of the slides are based on Drs. Kurose & Ross ’ s slides for their Computer.
1 Domain Name System (DNS). 2 DNS: Domain Name System Internet hosts, routers: –IP address (32 bit) - used for addressing datagrams –“name”, e.g., gaia.cs.umass.edu.
2: Application Layer1 Chapter 2 Application Layer Computer Networking: A Top Down Approach, 4 th edition. Jim Kurose, Keith Ross Addison-Wesley, July 2007.
Application Layer session 1 TELE3118: Network Technologies Week 12: DNS Some slides have been taken from: r Computer Networking: A Top Down Approach.
1 Application layer r Electronic Mail m SMTP, POP3, IMAP r DNS r P2P file sharing.
CPSC 441: DNS1 Instructor: Anirban Mahanti Office: ICT Class Location: ICT 121 Lectures: MWF 12:00 – 12:50 Notes derived.
1 Review of Previous Lecture r Principles of network applications m App architectures m App requirements r Web and HTTP m Non-persistent & persistent Pipeling.
Application Layer 2-1 Chapter 2 Application Layer Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley March 2012.
Name Resolution and DNS. Domain names and IP addresses r People prefer to use easy-to-remember names instead of IP addresses r Domain names are alphanumeric.
Chapter 2 Application Layer
2: Application Layer1 Chapter 2 Application Layer Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley March 2012.
Introduction 1 Lecture 8 Application Layer (DNS, p2p) slides are modified from J. Kurose & K. Ross University of Nevada – Reno Computer Science & Engineering.
NET0183 Networks and Communications Lecture 25 DNS Domain Name System 8/25/20091 NET0183 Networks and Communications by Dr Andy Brooks.
P2P File Sharing Systems
CS 4396 Computer Networks Lab
1 Domain Name System (DNS). 2 DNS: Domain Name System Internet hosts: – IP address (32 bit) - used for addressing datagrams – “name”, e.g.,
DNS & P2P A PPLICATIONS د. عـــادل يوسف أبو القاسم.
Domain Name System (DNS)
Data Communications and Computer Networks Chapter 2 CS 3830 Lecture 10 Omar Meqdadi Department of Computer Science and Software Engineering University.
2: Application Layer 1 Chapter 2: Application layer r 2.1 Principles of network applications r 2.2 Web and HTTP r 2.3 FTP r 2.4 Electronic Mail  SMTP,
2: Application Layer1 Chapter 2: Application layer r 2.1 Principles of network applications r 2.2 Web and HTTP r 2.3 FTP r 2.4 Electronic Mail m SMTP,
2: Application Layer1 Some network apps r r Web r Instant messaging r Remote login r P2P file sharing r Multi-user network games r Streaming stored.
21-1 Last time □ Finish HTTP □ FTP This time □ SMTP ( ) □ DNS.
CS 471/571 Domain Name Server Slides from Kurose and Ross.
IT 424 Networks2 IT 424 Networks2 Ack.: Slides are adapted from the slides of the book: “Computer Networking” – J. Kurose, K. Ross Chapter 2: Application.
DNS: Domain Name System
Review: –Which protocol is used to move messages around in the Internet? –Describe how a message is moved from the sender’s UA to the receiver’s.
1 DNS: Domain Name System People: many identifiers: m SSN, name, Passport # Internet hosts, routers: m IP address (32 bit) - used for addressing datagrams.
Chapter 2 Application Layer Computer Networking: A Top Down Approach, 5 th edition. Jim Kurose, Keith Ross Addison-Wesley, April A note on the use.
1 Application Layer Lecture 6 Imran Ahmed University of Management & Technology.
DNS: Domain Name System People: many identifiers: – SSN, name, Passport # Internet hosts, routers: – IP address (32 bit) - used for addressing datagrams.
Lecture 6: Video Streaming 2-1. Outline  Network basics:  HTTP protocols  Studies on HTTP performance from different views:  Browser types [NSDI 2014]
25.1 Chapter 25 Domain Name System Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
CPSC 441: DNS 1. DNS: Domain Name System Internet hosts: m IP address (32 bit) - used for addressing datagrams m “name”, e.g., - used by.
CS 3830 Day 10 Introduction 1-1. Announcements r Quiz #2 this Friday r Program 2 posted yesterday 2: Application Layer 2.
Lecture 5: Web Continued 2-1. Outline  Network basics:  HTTP protocols  Studies on HTTP performance from different views:  Browser types [NSDI 2014]
1 EEC-484/584 Computer Networks Lecture 5 Wenbing Zhao (Part of the slides are based on Drs. Kurose & Ross ’ s slides for their Computer Networking book.
Chapter 2 Application Layer Computer Networking: A Top Down Approach, 4 th edition. Jim Kurose, Keith Ross Addison-Wesley, July 2007.
1 Kyung Hee University Chapter 19 DNS (Domain Name System)
2: Application Layer 1 Chapter 2: Application layer r 2.1 Principles of network applications r 2.2 Web and HTTP r 2.3 FTP r 2.4 Electronic Mail  SMTP,
Application Layer 2-1 Chapter 2 Application Layer Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley March 2012.
1. Internet hosts:  IP address (32 bit) - used for addressing datagrams  “name”, e.g., ww.yahoo.com - used by humans DNS: provides translation between.
Application Layer, 2.5 DNS 2-1 Chapter 2 Application Layer Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley.
Important r On Friday, could you ask students to please me their groups (one per group) for Project 2 so we can assign IP addresses. I’ll send.
CSEN 404 Application Layer II Amr El Mougy Lamia Al Badrawy.
Spring 2006 CPE : Application Layer_DNS 1 Special Topics in Computer Engineering Application layer: Domain Name System Some of these Slides are.
@Yuan Xue A special acknowledge goes to J.F Kurose and K.W. Ross Some of the slides used in this lecture are adapted from their.
@Yuan Xue A special acknowledge goes to J.F Kurose and K.W. Ross Some of the slides used in this lecture are adapted from their.
Last time Finish HTTP FTP.
2: Application Layer 1 Some network apps r r Web r Instant messaging r Remote login r P2P file sharing r Multi-user network games r Streaming stored.
Introduction to Networks
Session 6 INST 346 Technologies, Infrastructure and Architecture
Chapter 9: Domain Name Servers
Introduction to Communication Networks
Chapter 7: Application layer
Cookies, Web Cache & DNS Dr. Adil Yousif.
Review of Previous Lecture
DNS: Domain Name System
FTP, SMTP and DNS 2: Application Layer.
Chapter 2 Application Layer
Lecture 3 – Chapter 2 CIS 5617, Fall 2019 Anduo Wang
Presentation transcript:

2: Application Layer1 DNS: Domain Name System People have many identifiers: SSN, name, passport number Internet hosts, routers have identifiers, too: IP address (32 bit) - used for addressing datagrams “name”, e.g., - used by humans Domain Name System: Distributed database name servers Distributed database implemented in hierarchy of many name servers Application-layer protocol resolve Application-layer protocol host, routers, name servers to communicate to resolve names (address/name translation) DNS is core Internet function, implemented as application-layer protocol Complexity at network’s “edge”

2: Application Layer2 DNS DNS services Hostname to IP address translation and vice versa Host aliasing – canonical and alias names Mail server aliasing Load distribution – e.g. replicated Web servers: set of IP addresses for one canonical name Why not centralize DNS? Single point of failure Traffic volume Distant centralized database Maintenance

2: Application Layer3 Root DNS Servers.com DNS servers.org DNS servers.edu 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 A straightforward strategy: Client queries a root server to find.com DNS server Client queries.com DNS server to get amazon.com DNS server Client queries amazon.com DNS server to get IP address for

2: Application Layer4 DNS: Root name servers Contacted by local name server that can not resolve name Root name server: Returns mapping of the domain server to local name server 13 root name servers worldwide 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 17 other locations) i Autonomica, Stockholm (plus 3 other locations) k RIPE London (also Amsterdam, Frankfurt) m WIDE Tokyo a Verisign, Dulles, VA c Cogent, Herndon, VA (also Los Angeles) d U Maryland College Park, MD g US DoD Vienna, VA h ARL Aberdeen, MD j Verisign, ( 11 locations)

2: Application Layer5 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

2: Application Layer6 Local Name Server Does not strictly belong to DNS 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 cache If no record for this query, forwards query into hierarchy Caches replies

2: Application Layer7 requesting host titan.cis.udel.edu lever.cs.ucla.edu root DNS server local DNS server dns.udel.edu authoritative DNS server dns.ucla.edu 7 8 TLD DNS server.edu Example Host titan.cis.udel.edu wants IP address for lever.cs.ucla.edu

2: Application Layer8 requesting host titan.cis.udel.edu lever.cs.ucla.edu root DNS server local DNS server dns.udel.edu authoritative DNS server dns.ucla.edu 7 8 TLD DNS server.edu 3 Recursive queries recursive query: puts burden of name resolution on contacted name server heavy load? iterated query: contacted server replies with name of server to contact “I don’t know this name, but ask this server”

2: Application Layer9 DNS: caching and updating records caches Once (any) name server learns mapping, it caches this mapping Cache entries timeout (disappear) after some time TLD servers typically cached in local name servers  Thus root name servers are not often visited Update/notify mechanisms under design by IETF RFC

2: Application Layer10 DNS resource records (RR) Type=NS name is domain (e.g. foo.com) value is hostname of authoritative name server for this domain RR format: (name, value, type, ttl) Type=A name is hostname value is IP address Type=CNAME name is alias name for some “canonical” (the real) name is really servereast.backup2.ibm.com value is canonical name Type=MX value is name of mailserver associated with name And more!

2: Application Layer11 DNS resource records (RR) mycompany.comINSOA nameserv.mycompany.com root.mymachine.mycompany.com ( ; Serial number ; Refresh in seconds 3600 ; Retry in seconds ; Expire 86400) ; Minimum TTL mycompany.comINNSnameserv.mycompany.com. mycompany.comINMX10 mailserv.mycompany.com nameserv.mycompany.comINA mailserv.mycompany.comINA INA

2: Application Layer12 DNS protocol, messages queryreply DNS protocol has query and reply messages, both with same message format 16 bit number for query, reply to query uses same number flags:  query or reply  recursion desired  recursion available  reply is authoritative

2: Application Layer13 DNS protocol, messages Name, type fields for a query RRs in response to query records for authoritative servers additional “helpful” info that may be used

2: Application Layer14 Inserting records into DNS Example: just created startup “Network Utopia” registrar Register name networkuptopia.com at a registrar (e.g., Network Solutions) Need to provide registrar with names and IP addresses of your authoritative name server (primary and secondary) Registrar inserts following RRs into the com TLD server: (networkutopia.com NS dns1.networkutopia.com) (networkutopia.com NS dns2.networkutopia.com) (dns1.networkutopia.com A ) (dns2.networkutopia.com A ) At dns1.networkutopia.com put in more information for various hosts How do people get the IP address of your Web site?

2: Application Layer15 Try out DNS! nslookup Server: Address: #53 Non-authoritative answer: canonical name = toggle. toggle. canonical name = g. g. canonical name = lb1. Name: lb1. Address: Name: lb1. Address: Name: lb1. Address: Name: lb1. Address:

2: Application Layer16 Try out DNS! nslookup Server: Address: #53 Non-authoritative answer: canonical name = Name: Address: Name: Address: Name: Address: Name: Address: Name: Address:

2: Application Layer17 Try out DNS! nslookup –debug QUESTIONS: type = A, class = IN ANSWERS: -> canonical name = -> internet address = > internet address = > internet address = > internet address = > internet address = > internet address = > internet address = > internet address = AUTHORITY RECORDS: -> akadns.net nameserver = use1.akadns.net. -> akadns.net nameserver = use9.akadns.net. -> akadns.net nameserver = usw5.akadns.net. -> akadns.net nameserver = asia5.akadns.net. -> akadns.net nameserver = asia9.akadns.net. -> akadns.net nameserver = eur4.akadns.net. -> akadns.net nameserver = eur5.akadns.net. -> akadns.net nameserver = usc4.akadns.net.

2: Application Layer18 P2P file sharing Alice runs P2P client application such as Kazaa on her notebook computer Intermittently connects to Internet; gets new IP address for each connection Asks for “Hey Jude” Application displays peers that have a copy Alice chooses one of the peers, Bob. File is copied from Bob’s PC to Alice’s notebook: HTTP While Alice downloads, other users uploading other songs from Alice. Alice’s application is both a Web client and a transient Web server. All peers are servers = highly scalable!

2: Application Layer19 Centralized directory Original “Napster” design 1) when peer connects, it informs central server:  IP address  content 2) Alice queries server for “Hey Jude” 3) Server tells Alice which users (including Bob) have the file 4) Alice requests file from Bob centralized directory server peers Alice Bob /3 4

2: Application Layer20 Problems with centralized directory Single point of failure Performance bottleneck Copyright infringement file transfer is decentralized, but locating content is highly centralized

2: Application Layer21 Query flooding: Gnutella Fully distributed No central server Public domain protocol Many Gnutella clients implementing protocol Overlay network is a graph: edge between peer X and Y if there’s a TCP connection Edge is not a physical link All active peers and edges form overlay net Given peer will typically be connected with < 10 overlay neighbors

2: Application Layer22 Gnutella: protocol Query QueryHit Query QueryHit Query QueryHit File transfer: HTTP Query message sent over existing TCP connections Peers forward Query message QueryHit sent over reverse path Scalability: limited scope flooding

2: Application Layer23 Gnutella: Peer joining 1. Joining peer X must find some other peer in Gnutella network: use list of candidate peers 2. X sequentially attempts to make TCP with peers on list until connection setup with Y 3. X sends Ping message to Y; Y forwards Ping message. 4. All peers receiving Ping message respond with Pong message 5. X receives many Pong messages. It can then setup additional TCP connections

2: Application Layer24 Exploiting heterogeneity: KaZaA Each peer is either a group leader or assigned to a group leader. TCP connection between peer and its group leader. TCP connections between some pairs of group leaders. Group leader tracks the content in all its children. ordinary peer group-leader peer neighoring relationships in overlay network

2: Application Layer25 KaZaA: Querying Each file has a hash and a descriptor Client sends keyword query to its group leader Group leader responds with matches: For each match: metadata, hash, IP address If group leader forwards query to other group leaders, they respond with matches Client then selects files for downloading HTTP requests using hash as identifier sent to peers holding desired file

2: Application Layer26 KaZaA tricks Limitations on simultaneous uploads Request queuing Incentive priorities Parallel downloading For more info: J. Liang, R. Kumar, K. Ross, “Understanding KaZaA,” (available via cis.poly.edu/~ross)