DNS: Domain Name System People: many identifiers: – SSN, name, Passport # Internet hosts, routers:...

Post on 28-Dec-2015

215 views 1 download

Tags:

Transcript of DNS: Domain Name System People: many identifiers: – SSN, name, Passport # Internet hosts, routers:...

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…