Data Communications and Networking DNS

Slides:



Advertisements
Similar presentations
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.
Advertisements

2.1 Installing the DNS Server Role Overview of the Domain Name System Role Overview of the DNS Namespace DNS Improvements for Windows Server 2008 Considerations.
Domain Name System. DNS is a client/server protocol which provides Name to IP Address Resolution.
1 Internet Networking Spring 2006 Tutorial 8 DNS and DHCP as UDP applications.
1 DNS. 2 BIND DNS –Resolve names to IP address –Resolve IP address to names (reverse DNS) BIND –Berkeley Internet Name Domain system Version 4 is still.
Domain Name System: DNS
MCTS Guide to Microsoft Windows Server 2008 Network Infrastructure Configuration Chapter 5 Introduction to DNS in Windows Server 2008.
TCP/IP Protocol Suite 1 Chapter 17 Upon completion you will be able to: Domain Name System: DNS Understand how the DNS is organized Know the domains in.
Presented by Neeta Jain CISC 856 TCP/IP and Upper Layer Protocols RFC 1034 & RFC 1035.
1 CMPT 471 Networking II DNS © Janice Regan,
Domain Name Services Oakton Community College CIS 238.
NET0183 Networks and Communications Lecture 25 DNS Domain Name System 8/25/20091 NET0183 Networks and Communications by Dr Andy Brooks.
Data Communications and Computer Networks Chapter 2 CS 3830 Lecture 10 Omar Meqdadi Department of Computer Science and Software Engineering University.
1 Naming with the Domain Name System. 2 Internet Applications Domain Name System Electronic mail IP telephony Remote login File transfer All use client-server.
TELE 301 Lecture 11: DNS 1 Overview Last Lecture –Scheduled tasks and log management This Lecture –DNS Next Lecture –Address assignment (DHCP)
Chapter 16 – DNS. DNS Domain Name Service This service allows client machines to resolve computer names (domain names) to IP addresses DNS works at the.
© Janice Regan, CMPT 128, CMPT 371 Data Communications and Networking Multicast routing.
Domain names and IP addresses Resolver and name server DNS Name hierarchy Domain name system Domain names Top-level domains Hierarchy of name servers.
McGraw-Hill©The McGraw-Hill Companies, Inc., 2000 Network Protocols Chapter 25 (Data Communication & Networking Book): Domain Name System (DNS) 1.
Chapter 17 Domain Name System
25.1 Chapter 25 Domain Name System Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
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  SMTP,
Chapter 29 Domain Name System (DNS) Allows users to reference computer names via symbolic names translates symbolic host names into associated IP addresses.
October 8, 2015 University of Tulsa - Center for Information Security Microsoft Windows 2000 DNS October 8, 2015.
© Janice Regan, CMPT 128, CMPT 371 Data Communications and Networking DNS 0.
Internet and Intranet Protocols and Applications Lecture 5 Application Protocols: DNS February 20, 2002 Joseph Conron Computer Science Department New York.
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.
2: Application Layer1 Chapter 2: Application layer r 2.1 Principles of network applications  app architectures  app requirements r 2.2 Web and HTTP r.
1 Kyung Hee University Chapter 18 Domain Name System.
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.
Configuring Name Resolution and Additional Services Lesson 12.
TCP/IP Protocol Suite 1 Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Chapter 19 Domain Name System (DNS)
DNS DNS overview DNS operation DNS zones. DNS Overview Name to IP address lookup service based on Domain Names Some DNS servers hold name and address.
2: Application Layer 1 Chapter 2 Application Layer Computer Networking: A Top Down Approach, 5 th edition. Jim Kurose, Keith Ross Addison-Wesley, April.
Web Server Administration Chapter 4 Name Resolution.
1 CMPT 471 Networking II DNS © Janice Regan,
PEAR TO PEAR PROTOCOL. Pure P2P architecture no always-on server arbitrary end systems directly communicate peers are intermittently connected and change.
TCP/IP Protocol Suite 1 Chapter 17 Upon completion you will be able to: Domain Name System: DNS Understand how the DNS is organized Know the domains in.
Domain Name System: DNS To identify an entity, TCP/IP protocols use the IP address, which uniquely identifies the Connection of a host to the Internet.
1 Internet Service DNS & BIND OPS335 Seneca College of Applied Technology.
System Administration(SAD622S) Name of Presenter: Shadreck Chitauro Lecturer 18 July 2016 Faculty of Computing and Informatics.
1 CMPT 471 Networking II DNS © Janice Regan,
Ip addressing: dhcp & dns
Understand Names Resolution
Domain Name System (DNS)
Networking Applications
An example of peer-to-peer application
Instructor Materials Chapter 10: Application Layer
Chapter 25 Domain Name System.
Chapter 9: Domain Name Servers
Domain Name System Tony Kombol ITIS 3110.
Module 5: Resolving Host Names by Using Domain Name System (DNS)
IMPLEMENTING NAME RESOLUTION USING DNS
Configuring and Troubleshooting DNS
Configuring and Managing the DNS Server Role
Chapter 2 Application Layer
Net 323 D: Networks Protocols
Chapter 19 Domain Name System (DNS)
Subject Name: Computer Communication Networks Subject Code: 10EC71
Domain Name System (DNS)
Part 4: Peer to Peer - P2P Applications
DNS: Domain Name System
Domain Name System Refs: Chapter 9 RFC 1034 RFC 1035.
Ip addressing: dhcp & dns
The Application Layer: Sockets, DNS
Domain Name System: DNS
COMPUTER NETWORKS PRESENTATION
Pure P2P architecture no always-on server
Chapter 2 Application Layer
Presentation transcript:

Data Communications and Networking DNS CMPT 371 Data Communications and Networking DNS

jpl.nasa.gov. . edu com gov us ca uk arpa fr In-addr sun ny hp nasa ca sfu bc jpl fraser fraser cs Janice Regan © 2007-2016

Zone An administrative division of the domain name tree Each zone is the responsibility of one administrative authority A zone may include hosts and sub-domains Sub domains in a zone may or may not have authority delegated to other administrative authorities. Any subset of sub-domains may be delegated Janice Regan © 2007-2016

DNS Name Tree: zones .ca bc ab sk on qc .ca domain .ca zone qc.ca zone sk.ca zone Janice Regan © 2007-2016

Authority for the DNS namespace A particular DNS name server will service a zone. Its database of zone information will contain entries for any hosts or subdomains in the zone delegation information for subdomains or zones that have been delegated to other authorities (form their own zones) Includes the address of (pointer to) the DNS servers for the delegated domains or zones excludes information about further delegation of authority in delegated zones or hosts in delegated domains Janice Regan © 2007-2016

Operation of a DNS server A DNS name server is initialized knowing the contents of its zone information database. The zone information database includes Address (A) and possible alias (CNAME) records for each host in the serviced zones Name Server (NS) records for each DNS server in the zone Mail server (MX) records specify hosts that will process and forward mail for the zone and their priority Each record includes a time to live (TTL) Lifetime (TTL) of each record is set by administrator Janice Regan © 2007-2016

Operation of a DNS server When a request is made to a DNS server the answer it supplies consists of some of the records in the zone information database The TTL of each supplied record tells the requestor how long the information in that record will remain valid Janice Regan © 2007-2016

Caching and TTL Each DNS server uses a cache to improve its efficiency At initialization time the cache is empty Each time a DNS query is made by the DNS server, the records in the resulting response are cached Over time the size of the cache increases as more information from varied queries is added. To keep the size of the cache manageable and the contents of the cache up to date (information is dynamic and changes over time) each entry in the cache must eventually (after the TTL has expired) be removed from the cache Janice Regan © 2007-2016

Authoritative responses Each time a DNS query is received by the server The records in the cache are searched The zone database is searched The longest match is found (either from the database or the cache) and returned to the source of the query If the answer is returned from the zone database the answer is known as an authoritative response If the answer is returned from the cache it is NOT authoritative Janice Regan © 2007-2016

DNS There are two approaches to answering a query Iterative: the name server receiving the query responds with either the IP address of the host or the name of the next server it would consult (next higher server in the tree) Recursive: the name server will, if necessary, directly query the next name server, and will return the final answer Janice Regan © 2007-2016

A host submitting a query (1) An application or user on host Drab, in domain cs.sfu.ca requests IP address for ftp.isc.org The application or user or the user expects to receive the IP address of ftp.isc.org without making additional queries. The application will make a request by calling a function ( gethostbyname() ) OR the user will make a request using a resolver (resolving software such as dig or nslookup) Janice Regan © 2007-2016

A host submitting a query (2) An application or user on host Drab, in domain cs.sfu.ca sends a request to the local DNS server for the IP address for ftp.isc.org This request may require the local DNS server (may or may not be on host drab) to Make an additional request or requests. Analyze the reply or replies to the request/s Supply the resulting IP address and potentially other related information to the requesting process or user. Janice Regan © 2007-2016

Query from local DNS server Assume that we begin with a cache containing only the addresses of the root servers. The local DNS server must then determine the desired IP address. It will make a series of iterative requests for information on the address of ftp.isc.org. The local DNS server will send a request to one of the root servers. The longest match the root server can make will be to the TLD .org (as .org has been delegated) The root server will send back a response with the IP address and name of an authoritative server for the .org domain (plus other information) Janice Regan © 2007-2016

Query from the local DNS server: 2 The local DNS server will process the returned data, add the record for the DNS server for the .org domain to the cache, and formulate a request to the DNS server for the .org domain The local DNS server will send a request to one of the DNS servers for the domain .org The DNS server for the domain .org will send back a response with the IP address and name (plus other information) of an authoritative server for the isc.org domain. The isc.org domain has been delegated by the .org DNS server to the ISC, so no longer domain name match can be made. Janice Regan © 2007-2016

Query from the local DNS server: 3 The local DNS server will process the returned data, add the DNS server for the isc.org domain to the cache, and formulate a request to the DNS server for the isc.org domain The local DNS server will send a request to one of the DNS servers for the domain isc.org The DNS server for the domain isc.org will send back a response with the IP address and name (plus other information) of ftp.isc.org. The local DNS server will process the returned data, add an entry for the ftp.isc.org to the cache formulate and send a reply to the original request from host Drab Janice Regan © 2007-2016

DNS Query Local DNS server Root DNS server DNS server for .org Iterative query Application or user Local DNS server Root DNS server DNS server for .org DNS server for isc.org Referred to .org Referred to isc.org IP Address of ftp.isc.org Recursive reply Recursive query all queries/replies are for the address of ftp.isc.org Janice Regan © 2007-2016

Using the Cache: subsequent queries (1) A later query to ftp.isc.org will find the IP address available in the local DNS servers cache. The DNS server will send back the results without making further queries A later query to ftp2.isc.org will find the entry for isc.org DNS server in the cache of the local DNS server. A single query to the isc.org DNS server will provide the needed information Janice Regan © 2007-2016

Using the Cache: subsequent queries (2) A later query to fbt.nas.org will find the entry for org DNS server in the cache of the local DNS server. A query to the org DNS server will provide the address of the nas.org server and a request tho the nas.org server will supply the needed information Janice Regan © 2007-2016

Recursive Requests In the example above the process or user on the host made a recursive request, and the DNS server made only iterative requests. DNS servers can also make recursive requests. However, busy DNS servers are often configured to accept only iterative requests. (this way they do not need to process the returning results as well, this reduces load on the busy server). Therefore, the iterative approach is more commonly used by DNS servers Janice Regan © 2007-2016

Domain Server Message Messages exchanged between clients and servers Comer 2000: fig 24.5 Janice Regan © 2007-2016

Example using dig: 1 jregan15: dig ftp.isc.org ; <<>> DiG 9.2.1 <<>> ftp.isc.org ;; global options: printcmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 33180 ;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 4, ADDITIONAL: 5 ;; QUESTION SECTION: ;ftp.isc.org. IN A ;; ANSWER SECTION: ftp.isc.org. 2898 IN A 204.152.184.110 ;; AUTHORITY SECTION: isc.org. 2898 IN NS ns-ext.lga1.isc.org. isc.org. 2898 IN NS ns-ext.nrt1.isc.org. isc.org. 2898 IN NS ns-ext.sth1.isc.org. isc.org. 2898 IN NS ns-ext.isc.org. Janice Regan © 2007-2016

Example using dig: 2 ;; ADDITIONAL SECTION: ns-ext.lga1.isc.org. 75012 IN A 192.228.91.19 ns-ext.nrt1.isc.org. 75012 IN A 192.228.90.19 ns-ext.sth1.isc.org. 75012 IN A 192.228.89.19 ns-ext.isc.org. 29497 IN A 204.152.184.64 ns-ext.isc.org. 155246 IN AAAA 2001:4f8:0:2::13 ;; Query time: 1 msec ;; SERVER: 199.60.1.1#53(199.60.1.1) ;; WHEN: Fri Nov 5 06:21:09 2004 ;; MSG SIZE rcvd: 236 Janice Regan © 2007-2016

Data Communications and Networking P2P CMPT 371 Data Communications and Networking P2P

Comparison All the application layer protocols considered so far use client server architecture Now let’s consider peer to peer architecture To understand why we would want to take this alternate approach lets consider transmitting a large file from one host to several others using both approaches. Janice Regan © 2007-2016

How long? One server to N clients U1 US D1 U2 Internet DR1 DN D2 DR2 UN D3 U5 D4 U3 … D5 U4 Janice Regan © 2007-2016

How long to send to all clients The server must send one copy of the file to each of the clients. The file has F bits and the rate of transmission from the server to the internet is Us. Each copy will take F/ Us seconds to transmit into the internet. Transmitting all N copies will take N*F/ Us seconds But the clients also need to receive their copies Janice Regan © 2007-2016

How long to receive all copies The longest time for any particular host to download the file from the internet is for the host with the slowest download rate Dmin. This host will take F/Dmin seconds to download If we send to each host at the rate that host can receive (alternating blocks of bits between hosts) then the maximum download time for all files is F/Dmin seconds Janice Regan © 2007-2016

How long 1 server - nclients Consider that the server distributes its delivery of bits in proportion the download rate of each host. If the host that has the longest download time receives bits at a minimum of the download rate then the time to distribute the file to all clients is F/Dmin seconds If bits arrive more slowly that the download rate of the slowest downloading host then the time to distribute the file to all hosts will be N*F/ Us the time taken to transmit the N copies of the file Download Time = max {F/Dmin , N*F/ Us } Janice Regan © 2007-2016

How long? P2P … U1 US U2 D1 DR1 DN Internet D2 DR2 UN D3 U5 D4 U3 D5 Janice Regan © 2007-2016

How long to send using P2P The server must send at least one copy of the file to the peers. This takes F/Us seconds The slowest peer must have time to download all the bits in the file. This takes F/Dmin seconds The fastest that any host can receive uploads is so the fastest all hosts can receive the uploaded files is Janice Regan © 2007-2016

From Kurose and Ross Janice Regan © 2007-2016

Bit torrent: TRADE DATA CHUNKS tracker: tracks peers participating in torrent NEWEST HOST IN TORRENT Janice Regan © 2007-2016

What is a bit torrent A TORRENT is a group of peers exchanging portions (chunks) of a file A Torrent is controlled by a TRAKKER, a host managing the peers trading chunks of file The file being exchanged is divided into chunks (512K) Peers taking part in the trading of chunks may join the group at and time and leave the group after obtaining all or any part of the file Janice Regan © 2007-2016

How does a torrent work (1) A peer “Mew” joins a torrent to obtain a file “Mew” starts with none of the chunks of the file She registers with the tracker She gets list of potential peers from the tracker. The trakker selects a subset of all available peers. She tries to establish TCP connections with all of the peers from the list the tracker supplied She establishes connection with a subset of the peers from the list the tracker provided. Call these peers the neighboring peers Janice Regan © 2007-2016

How does a torrent work (2) As time passes The peer “Mew” will periodically check with t he tracker to confirm she is still part of the torrent The peer “Mew” will acquire chunks of the file by downloading them from other neighboring peers The peer “Mew” will upload chunks of the file it already has to neighboring peers that need those chunks Chunks are not necessarily acquired or supplied in order Janice Regan © 2007-2016

Acquiring Chunks At a particular time different peers will each have a different subset of the chunks of the file At any time a peer can obtain a list of which available chunks from each neighboring peer The peer “Mew” can thus find the chunks she needs The peer “Mew” can obtain the chunks she needs by sending requests to the neighboring peers that have those chunks Peers will usually request the chunks that are hardest to find first (to equalize the availability of those chunks) Janice Regan © 2007-2016

Trading Algorithm (tit for tat) Every 10 seconds “Mew” measures which four neighboring peers are supplying her data at the highest rate “Mew” unchokes those four neighboring peers by sending them chunks they have requested. Every 30 seconds she also optimistically unchokes one randomly chosen neighboring peer by sending that peer chunks The optimistically unchoked neighboring peer may then become one of “Mew”s trading partners Janice Regan © 2007-2016