Upload
augusta-dean
View
217
Download
1
Tags:
Embed Size (px)
Citation preview
DNS: Domain Name System
People: many identifiers:– SSN, name, Passport #
Internet hosts, routers:– IP address (32 bit) - used for
addressing datagrams– “name”, e.g.,
hermite.cs.smith.edu - used by humans
Q: map between IP addresses and name ?
Domain Name System:• distributed database implemented
in hierarchy of many name servers• application-layer protocol host,
routers, name servers to communicate to resolve names (address/name translation)– note: core Internet function
implemented as application-layer protocol
– complexity at network’s “edge”
DNS
DNS services• Hostname to IP address
translation• Host aliasing
– Canonical and alias names
• Mail server aliasing• Load distribution
– 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
doesn’t scale!
Structure of DNS Names• Each name consists of a sequence of alphanumeric
components separated by periods • Examples:
– www.ssuet.edu.pk– ssuet.edu.pk– khi.comsats.net.pk– aurangzeb.ssuet.edu.pk
• Names are hierarchical, with most-significant component on the right
• Left-most component is, generally, a computer name
Structure of DNS Names• Top Level Domains (right-most
components; also known as TLDs) are defined by global authority Organizations apply for names in a top-level domain: – fsu.edu– macdonalds.com
• Organizations determine own internal structure – eng.fsu.edu– cs.purdue.edu
Distributed, Hierarchical Database
Client wants IP for www.amazon.com; 1st approx:• 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 www.amazon.com
Root DNS Servers
com DNS servers org DNS servers edu DNS servers
poly.eduDNS servers
umass.eduDNS servers
yahoo.comDNS servers
amazon.comDNS servers
pbs.orgDNS servers
DNS: Root name servers• contacted by local name server that can not resolve name• root name server:
– contacts authoritative name server if name mapping not known– gets mapping– returns mapping to local name server
13 root name servers
worldwideb USC-ISI Marina del Rey, CAl ICANN Los Angeles, CA
e NASA Mt View, CAf 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, VAc Cogent, Herndon, VA (also Los Angeles)
d U Maryland College Park, MDg US DoD Vienna, VAh ARL Aberdeen, MD
j Verisign, ( 11 locations)
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
• 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
• Local DNS servers: organization’s DNS servers located on various subnets to provide DNS lookups for hosts on the subnet. May not be accessible from outside the subnet. Their IP addresses are part of the host's network configuration (manual or DHCP).
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.
Inverse domainCountry domains
DNS Name Resolution Example
DNS Name Resolution Example
DNS Operation
DNS: caching and updating records
• once (any) name server learns a mapping, it caches the mapping (Domain’s DNS = IP) – cache entries timeout (disappear) after some time
(usually 20 minutes)– TLD servers typically cached longer 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
DNS recordsDNS: distributed db storing resource records (RR)
• Type=NS– name is domain (e.g. foo.com)– value is IP address 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 an alias name
for some “canonical” (the real) name
value is canonical name
Type=MX value is hostname of
mailserver associated with name
DNS protocol, messagesDNS protocol : query and reply messages, both with same message format
msg header identification: 16 bit #
for query, reply to query uses same #
flags: query or reply recursion desired recursion available reply is authoritative
DNS protocol, messages
Name, type fields for a query
RRs in reponseto query
records forauthoritative servers
additional “helpful”info that may be used
wireshark Display of DNS Response
ID is random nonceused to authenticateResponse to Query
18
Pure P2P architecture
• no always-on server• • arbitrary end systems
directly• communicate• • peers are intermittently• connected and change IP• addresses
File Distribution: Server-Client vs P2P
BitTorrent Overview
• Website allowing peers to share music, video and other media files• Central server helps users find initial set of peers that have pieces of
the file• Tracker server keeps track of peers possessing content of individual
files• Users download the file by participating in exchange:
– They exchange pieces that they have– for pieces that they don’t have
• Therefore, for the system to work, users must have incentive to give• Users who just get, but do not give are called free riders• Protocol must discourage free riding
BitTorrent
BitTorrent
BitTorrent
BitTorrent
P2P: Searching for Information
P2P: centralized directory
P2P: problems with centralized directory
• Single point of failure• Performance bottleneck• Copyright infringement: “target” of lawsuit is obvious
file transfer is decentralized, but locating content is highly decentralized
P2P: decentralized directory
• Each peer is either a group leader or assigned to a group leader.
• Group leader tracks the content in all its children.
• Peer queries group leader; group leader may query other group leaders.
ordinary peer
group-leader peer
neighoring re la tionshipsin overlay network
Decentralized Indexing: Query Flooding
Query Flooding
Skype• IP telephony system• Allows users to make phone calls
– to Skype users– to regular phone users
• Calls are routed via Skype nodes• Central login server• Super-nodes
– Nodes that know about location of other nodes
Skype P2P Network
• Super-nodes are nodes with powerful CPU and network bandwidth
• One has to qualify to become a super-node
• Super-nodes know about locations of other nodes
• Ordinary nodes contact super-nodes to place calls
Skype Components
• Skype client – the client program used to make phone calls• Host cache – list of other known Skype users, maintained at
each Skype client• Skype login server – a centralized component. Processes
account information, authentication
Skype User Search Procedure
• A Skype client making a phone call needs to find other users• It contacts super-nodes from its host cache, asking them to help
find the user• Super-nodes return a list of nodes to contact• The client contacts those nodes• If unsuccessful, the client asks for more nodes• Guarantees to find any user that has logged in within the last 72
hours• Not much specific information on Skype protocol is available…