DNS - 7th Semester Notes

Download Report

Transcript DNS - 7th Semester Notes

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 applicationlayer 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
Root DNS Servers
com DNS servers
yahoo.com amazon.com
DNS servers DNS servers
org DNS servers
pbs.org
DNS servers
edu DNS servers
poly.edu umass.edu
DNS serversDNS servers
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
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
a Verisign, Dulles, VA
c Cogent, Herndon, VA (also Los Angeles)
d U Maryland College Park, MD
k RIPE London (also Amsterdam,
g US DoD Vienna, VA
Frankfurt)
i Autonomica, Stockholm (plus 3
h ARL Aberdeen, MD
j Verisign, ( 11 locations)
other locations)
m WIDE Tokyo
e NASA Mt View, CA
f Internet Software C. Palo Alto,
CA (and 17 other locations)
13 root name
servers worldwide
b USC-ISI Marina del Rey, CA
l ICANN Los Angeles, CA
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.
Country domains
Inverse domain
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 records
DNS: distributed db storing resource records (RR)
RR format: (name,
 Type=A
 name is hostname
 value is IP address
• Type=NS
– name is domain (e.g. foo.com)
– value is IP address of
authoritative name server for
this domain
value, type,ttl)
 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, messages
DNS 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 reponse
to query
records for
authoritative servers
additional “helpful”
info that may be used
wireshark Display of DNS Response
ID is random nonce
used to authenticate
Response 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 relationships
in 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…