CSE561 Naming and DNS. David Wetherall

Similar documents
CSc 450/550 Computer Networks Domain Name System

Computer Networks. Domain Name System. Jianping Pan Spring /25/17 CSC361 1

IP ADDRESSES, NAMING, AND DNS

Domain Name Service. DNS Overview. October 2009 Computer Networking 1

CSE 486/586 Distributed Systems

Communications Software. CSE 123b. CSE 123b. Spring Lecture 11: Domain Name System (DNS) Stefan Savage. Some pictures courtesy David Wetherall

CSE 123b Communications Software. Overview for today. Names and Addresses. Goals for a naming system. Internet Hostnames

DNS. dr. C. P. J. Koymans. September 16, Informatics Institute University of Amsterdam. dr. C. P. J. Koymans (UvA) DNS September 16, / 46

Chapter 2 Application Layer. Lecture 5 DNS. Computer Networking: A Top Down Approach. 6 th edition Jim Kurose, Keith Ross Addison-Wesley March 2012

Lecture 05: Application Layer (Part 02) Domain Name System. Dr. Anis Koubaa

Application-layer Protocols

CSEN 404 Introduction to Networks. Mervat AbuElkheir Mohamed Abdelrazik. ** Slides are attributed to J. F. Kurose

DNS and CDNs : Fundamentals of Computer Networks Bill Nace

CSEN 503 Introduction to Communication Networks

Domain Name System (DNS) 김현철 ( 화 ) 정보통신융합서울대학교컴퓨터공학부

The Domain Name System

Page 1. TCP Flow Control" TCP Flow Control" TCP Flow Control" CS162 Operating Systems and Systems Programming Lecture 16. Flow Control, DNS"

Lecture 7: Application Layer Domain Name System

Applications & Application-Layer Protocols: (SMTP) and DNS

CS 43: Computer Networks. 10: Naming and DNS September 24, 2018

CSE 124: IP ADDRESSES, NAMING, AND DNS. George Porter Oct 4, 2017

ELEC / COMP 177 Fall Some slides from Kurose and Ross, Computer Networking, 5 th Edition

Table of Contents DNS. Short history of DNS (1) DNS and BIND. Specification and implementation. A short history of DNS.

CSCI-1680 DNS Rodrigo Fonseca

Chapter 2: Application layer

Chapter 2 part B: outline

Light at the end of the tunnel Final Lecture: Course Overview

CS 3516: Advanced Computer Networks

Translating Addresses

EE 122: Domain Name System

Reminders. EE 122: Domain Name System. Goals of Today!s Lecture. Host Names vs. IP addresses. Separating Naming and Addressing

Application Layer. Pure P2P architecture. Client-server architecture. Processes communicating. Hybrid of client-server and P2P. Creating a network app

Domain Name System.

Chapter 2 Application Layer

Domain Name System (DNS)

Computer Networking Introduction

Application Layer: , DNS

DNS Hierarchical Name Space. BIND Terminology and DNS Name Servers. Distributed Hierarchical Database (1st Approx) Domain Name System (DNS)

Table of Contents DNS. Short history of DNS (1) DNS and BIND. Specification and implementation. A short history of DNS. Root servers.

Application Layer. Pure P2P architecture. Client-server architecture. Processes communicating. Hybrid of client-server and P2P. Creating a network app

Announcements. Transport Protocols & DNS. Goals for Today s Lecture, Part 1. Goals of Today s Lecture, Part 2. Transport Protocols

f.root-servers.net ISOC cctld Workshop Nairobi, Kenya, 2005

NAMING, DNS, AND CHORD

ELEC / COMP 177 Fall Some slides from Kurose and Ross, Computer Networking, 5 th Edition

Internet applications. 2: Application Layer 1

Application Layer. Goals: Service models. Conceptual aspects of network application protocols Client server paradigm

DNS. Karst Koymans & Niels Sijm. Tuesday, September 7, Informatics Institute University of Amsterdam

CSCI-1680 DNS Rodrigo Fonseca

The Domain Name System (DNS) and its security. CSU CS557, Spring 2018 Instructor: Lorenzo De Carli Partly based on the CS457 slides by Indrajit Ray

The basics. Karst Koymans. Tuesday, September 9, 2014

Project 3a is out! Goal: implement a basic network firewall. Due: Nov noon. l We give you the VM & framework. l You implement the firewall logic.

Chapter 2 outline. 2.1 Principles of app layer protocols

CompSci 356: Computer Network Architectures. Lecture 20: Domain Name System (DNS) and Content distribution networks Chapter 9.3.1

CSCD 330 Network Programming Winter 2015

Application layer. Some network apps. Client-server architecture. Hybrid of client-server and P2P. Pure P2P architecture. Creating a network app

CSC 401 Data and Computer Communications Networks

Chapter II: Application Layer

04 Identifiers. UUID URI Format Characteristics. Coulouris, Ch 9 rfc3986 Ahmed, 2005 Subharthi, 2009

Section 2: Application layer

CSCD 330 Network Programming Spring 2018 Lecture 5 Application Layer. Reading: Chapter 2 Still

Networking Applications

K-Root Nameserver Operations

K-Root Name Server Operations

Chapter 2 Application Layer

04 Identifiers UUID. Coulouris, Ch 9 URI. rfc3986 Format. Ahmed, 2005 Characteristics. Subharthi, 2009

CMPE 150/L : Introduction to Computer Networks. Chen Qian Computer Engineering UCSC Baskin Engineering Lecture 6

Application Layer. Goals:

Application Layer. Applications and application-layer protocols. Goals:

Table of Contents DNS. Short history of DNS (1) DNS and BIND. Specification and implementation. A short history of DNS. Root servers.

CS519: Computer Networks. Lecture 6: Apr 5, 2004 Naming and DNS

CSE/EE 461 DNS / HTTP / CDNs / BitTorrent

logical link name logical link name name logical link address physical address path

CSCD 330 Network Programming Spring 2017

Discovery. RelaKonship Between Layers. Discovery: Mapping Name to Address. RouKng: Mapping Link to Path. What s in a Name? Naming

ELEC / COMP 177 Fall Some slides from Kurose and Ross, Computer Networking, 5 th Edition

CMPE 150/L : Introduction to Computer Networks. Chen Qian Computer Engineering UCSC Baskin Engineering Lecture 5

Table of Contents DNS. Specification versus implementations. Primary use case. DNS: basic ideas and functionality. The basics. A short history of DNS

DISTRIBUTED SYSTEMS [COMP9243] Lecture 9a: Naming WHAT IS NAMING? Name: Entity: Slide 3. Slide 1. Address: Identifier:

EECS 122: Introduction to Computer Networks DNS and WWW. Internet Names & Addresses

Protocol Classification

Network Security Protocols

0 0& Basic Background. Now let s get into how things really work!

The Application Layer: Sockets, DNS

The Domain Name System

Internet Services & Protocols. Application Layer and its Services

Development of the Domain Name System

Introduction to Computer Networking. Guy Leduc. Chapter 2 Application Layer. Chapter 2: outline

Objectives. Upon completion you will be able to:

CSE 124 January 27, Winter 2017, UCSD Prof. George Porter

Lecture 4: Basic Internet Operations

Goal of this session

DNS and HTTP. A High-Level Overview of how the Internet works

ECE 650 Systems Programming & Engineering. Spring 2018

Announcements! Midterm Review! General Guidelines! My General Philosophy on Tests! Outline of Review! Things You Don t Need to Know!

Potential Name Syntax. Properties of Naming. Naming and system components. Naming and layering. Replicated storage, consistency

DNS. Introduction To. everything you never wanted to know about IP directory services

DNS Concepts. Acknowledgements July 2005, Thimphu, Bhutan. In conjunction with SANOG VI. Bill Manning Ed Lewis Joe Abley Olaf M.

Domain Name System (DNS)

2.5 DNS The Internet s Directory Service

Chapter 19. Domain Name System (DNS)

Transcription:

CSE561 Naming and DNS David Wetherall djw@cs.washington.edu

Naming and DNS Focus: How do we resolve names to addresses Names and addresses Application DNS as a system design Transport Network Link Physical djw // CSEP 561, Autumn 2010 2

Names and Addresses 44 name address David Wetherall CSE Dept. University of Washington Names are identifiers for objects/services (high level) Addresses are locators for objects/services (low level) Resolution is the process of mapping name to address But, addresses are really lower-level names; many levels used djw // CSEP 561, Autumn 2010 3

Naming in Systems Ubiquitous Files in filesystem, processes in OS, pages on the web, Decouple identifier for object/service from location Hostnames provide a level of indirection for IP addresses Key issue is the resolution system Likely to constrain names or addresses to function DNS names are hierarchical, IP addresses constrained by location djw // CSEP 561, Autumn 2010 4

Example: Original i Hostname System When the Internet was really young Flat namespace Simple (host, address) pairs Centralized management Updates via a single master file called HOSTS.TXT Manually coordinated by the Network Information Center (NIC) Resolution process Look up hostname in the HOSTS.TXT file djw // CSEP 561, Autumn 2010 5

Scaling Problems Reliability Single point of failure Performance Competition for centralized resources Inconsistencies Between update and distribution of new version Coordination Between all users to avoid conflicts djw // CSEP 561, Autumn 2010 6

Today: Domain Name System (DNS) Designed by Mockapetris and Dunlap in the mid 80s Namespace is hierarchical Allows much better scaling of data structures e.g., galah.cs.washington.edu Namespace is distributed ib d Decentralized administration and access e.g., galah managed by CSE Resolution is by query/response With replicated servers for redundancy With heavy use of caching for performance djw // CSEP 561, Autumn 2010 7

DNS Hierarchy dot is the root, top levels now controlled by ICANN Usage governed by conventions djw // CSEP 561, Autumn 2010 8

DNS Distribution ib ti Data managed by zones that contain resource records Zone is a complete description of a portion of the namespace e.g., all hosts and addresses for machines in washington.edu with pointers to subdomains like cs.washington.edu One or more nameservers manage each zone Zone transfers performed between nameservers for consistency Multiple nameservers provide redundancy Client resolvers query nameservers for specified records Multiple messages may be exchanged per DNS lookup to navigate the name hierarchy (coming soon) djw // CSEP 561, Autumn 2010 9

DNS Zones Namespace divided into zones, each of which is maintained by a nameserver djw // CSEP 561, Autumn 2010 10

DNS Resource Records Human readable description of a zone database DNS queries return selected resource records djw // CSEP 561, Autumn 2010 11

DNS Lookup/Resolution Example djw // CSEP 561, Autumn 2010 12

Recursive vs. Iterative ti Queries Recursive query Ask server to get answer for you E.g., request 1 and response 10 Iterative query Ask server who to ask next E.g., all other request-response pairs When would you want recursive vs. iterative? djw // CSEP 561, Autumn 2010 13

DNS Messages Query /Replyl messages have the same message format Message header Identification: 16 bit # for query, reply to query uses same # Flags: Query or reply Recursion desired d Recursion available Reply is authoritative djw // CSEP 561, Autumn 2010 14

DNS Bootstrapping t Need to know IP addresses of root servers before we can make any queries Addresses for 13 root servers ([a-m].root-servers.net) handled via initial configuration (named.ca file) E NASA Mt View, CA F Internet Software C. Palo Alto, CA (and 17 other locations) 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) K RIPE London (also Amsterdam, Frankfurt) I Autonomica, Stockholm (plus 3 other locations) m WIDE Tokyo B USC-ISI Marina del Rey, CA L ICANN Los Angeles, CA djw // CSEP 561, Autumn 2010 15

Reliability DNS servers are replicated Name service available if at least one replica is up Queries can be load balanced between replicas UDP used for queries Need reliability: must implement this on top of UDP Try alternate servers on timeout Exponential backoff when retrying same server Same identifier for all queries Don t care which server responds djw // CSEP 561, Autumn 2010 16

DNS Caching Performing all these queries take time And all this before the actual communication takes place Eg E.g., 1-second latency before starting Web download Caching can substantially reduce overhead The top-level servers very rarely change Popular sites (e.g., www.cnn.com) visited often Local DNS server often has the information cached How DNS caching works DNS servers cache responses to queries Responses include a time to live (TTL) field Server deletes the cached entry after TTL expires djw // CSEP 561, Autumn 2010 17

Negative Caching Remember things that don t work Misspellings like www.cnn.comm and www.cnnn.com These can take a long time to fail the first time Good to remember that they don t work so the failure takes less time the next time around djw // CSEP 561, Autumn 2010 18

Building on the DNS Other naming designs leverage the DNS Email: e.g., djw@cs.washington.edu is djw in the domain cs.washington.edu Uniform Resource Locators (URLs) name for Web pages e.g., www.cs.washington.edu/homes/djw Use domain name to identify a Web server Use / separated string to name path to page (like files) djw // CSEP 561, Autumn 2010 19

DNS futures DNS works great to map hostname to IP! What has changed: A static mapping is no longer what many applications want e.g., return an IP with the content I want e.g., return the nearest IP with the content I want This is tied up with CDNs djw // CSEP 561, Autumn 2010 20