DNS and Modern Network Services. Amin Vahdat CSE 123b April 27, 2006

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

CSE 124 January 12, Winter 2016, UCSD Prof. George Porter

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

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

IP ADDRESSES, NAMING, AND DNS

ECE 650 Systems Programming & Engineering. Spring 2018

Development of the Domain Name System

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

CS155b: E-Commerce. Lecture 3: Jan 16, How Does the Internet Work? Acknowledgements: S. Bradner and R. Wang

Lecture 8: Internet and Online Services. CS 598: Advanced Internetworking Matthew Caesar March 3, 2011

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

Domain Name System.

Data Center Performance

Overview General network terminology. Chapter 9.1: DNS

Naming Computer Networking. Overview. DNS: Domain Name System. Obvious Solutions (1) Obvious Solutions (2)

CSE 124: Networked Services Lecture-15

Venugopal Ramasubramanian Emin Gün Sirer SIGCOMM 04

Protocol Classification

The Internet. Overview. Network building blocks

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

CSc 450/550 Computer Networks Domain Name System

S Computer Networks - Spring What and why? Structure of DNS Management of Domain Names Name Service in Practice

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

Building a Scalable Architecture for Web Apps - Part I (Lessons Directi)

DNS Basics BUPT/QMUL

Distributed File Systems. CS 537 Lecture 15. Distributed File Systems. Transfer Model. Naming transparency 3/27/09

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

CSE 3214: Computer Network Protocols and Applications. Midterm Examination

INTERNET ARCHITECTURE & PROTOCOLS

The Application Layer: Sockets, DNS

Application Layer Protocols

CSEN 503 Introduction to Communication Networks

The Domain Name System

Domain Name System (DNS)

Domain Name System (DNS) Session-1: Fundamentals. Joe Abley AfNOG Workshop, AIS 2017, Nairobi

Configuring CWMP Service

Information Network Systems The application layer. Stephan Sigg

page 1 Plain Old DNS WACREN, DNS/DNSSEC Regional Workshop Ouagadougou, October 2016

Advanced Networking. Domain Name System

Advanced Networking. Domain Name System. Purpose of DNS servers. Purpose of DNS servers. Purpose of DNS servers

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

Outline Applications. Central Server Hierarchical Peer-to-peer. 31-Jan-02 Ubiquitous Computing 1

CSE 124: CONTENT-DISTRIBUTION NETWORKS. George Porter December 4, 2017

A DNS Tutorial

CS4/MSc Computer Networking. Lecture 3: The Application Layer

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

DNS & Iodine. Christian Grothoff.

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

Distributed Systems. Distributed Systems Within the Internet Nov. 9, 2011

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

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

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

Networking: Application Layer

Page 1. CS162 Operating Systems and Systems Programming Lecture 22. Networking III. Automatic Repeat Request

Domain Name System (DNS) Session-1: Fundamentals. Computers use IP addresses. Why do we need names? hosts.txt does not scale

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

Internet Services and Search Engines. Amin Vahdat CSE 123b May 2, 2006

APNIC elearning: DNS Concepts

CSE561 Naming and DNS. David Wetherall

Client Server Concepts, DNS, DHCP

CSE 265: System & Network Administration

Domain Name System (DNS) DNS Fundamentals. Computers use IP addresses. Why do we need names? hosts.txt does not scale. The old solution: HOSTS.

Networking Applications

Distributed Operating Systems

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

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

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

CSE 123b Communications Software

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

CSC2231: DNS with DHTs

Cisco Expressway Cluster Creation and Maintenance

Today s class. CSE 123b Communications Software. Telnet. Network File System (NFS) Quick descriptions of some other sample applications

Configuring DNS. Finding Feature Information

Send me up to 5 good questions in your opinion, I ll use top ones Via direct message at slack. Can be a group effort. Try to add some explanation.

To use DNS, you must have a DNS name server on your network.

CS514: Intermediate Course in Computer Systems

DNS Review Quiz. Match the term to the description: A. Transfer of authority for/to a subdomain. Domain name DNS zone Delegation C B A

Configuring DNS. Finding Feature Information. Prerequisites for Configuring DNS

Distributed Systems /640

Higher layer protocols

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

Distributed Naming. EECS 591 Farnam Jahanian University of Michigan. Reading List

Computer Security CS 426

SECURE, FLEXIBLE ON-PREMISE STORAGE WITH EMC SYNCPLICITY AND EMC ISILON

The Design and Implementation of a Next Generation Name Service for the Internet (CoDoNS) Presented By: Kamalakar Kambhatla

Lecture 9: MIMD Architectures

CSCE 463/612 Networks and Distributed Processing Spring 2018

DNS. DNS is an example of a large scale client-server application.

Midterm Results Computer Networking. Outline. Midterm Distribution. Average Std.Dev. 13.9!!! Max 97 Min 40.

Network Layering, Naming, and Name Resolution CS 118. Computer Network Fundamentals Peter Reiher. Lecture 9 Page 1 CS 118.

Except as otherwise noted, the content of this presentation is licensed under the Creative Commons Attribution 2.5 License. Page 2. Page 3.

UCI University of California, Irvine

Applications & Application-Layer Protocols: The Domain Name System and Peerto-Peer

Scalability of web applications

CONTENT-DISTRIBUTION NETWORKS

CS 3640: Introduction to Networks and Their Applications

Computer Networks. More on Standards & Protocols Quality of Service. Week 10. College of Information Science and Engineering Ritsumeikan University

Introduction to Network. Topics

ICS 351: Networking Protocols

Transcription:

DNS and Modern Network Services Amin Vahdat CSE 123b April 27, 2006

Midterm: May 9 Annoucements Second assignment due May 15

Domain Name System

Motivation 1982: single hosts.txt file stored and distributed from a central site Contained all hostname to IP address mappings Centralized control did not fit with distributed management Number of hosts changed from number of timesharing systems to number of workstations Organizations to users Exponential resource usage for distributing the file

Domain Name System Hierarchical namespace with typed data Control delegated in hierarchical fashion Convince node above you to delegate control Designed to be extensible w/support for new data types 1985: some hosts solely uitilize DNS

Hierarchical Design root org mil edu com uk ca gwu ncsu duke unc mit ee cs asdean denseair fiere gale

Domain Name System (DNS) Translate human understandable names to machine understandable names E.g., www.cs.ucsd.edu 132.239.51.20 Hierarchical structure Every DNS server knows where the root is The root can tell you how to get to.edu.edu server can tell you how to find ucsd.edu ucsd.edu tells you about cs.ucsd.edu cs.ucsd.edu translates www.cs.ucsd.edu 132.239.51.20 Caching along the way to improve performance

Query local name server Query Processing Authoritative/cached answers Support both recursive and iterative queries If not cached locally, locate server lowest in the hierarchy with entry in local DB In the worst case, contact root (.) Cache locally with TTL

Zones and Caching Mechanisms for data distribution Zones Provide local autonomy Any contiguous set of nodes in the tree Can be grown to arbitrary size Each domain should provide redundant servers Caching Time to live (TTL) associated with each R low value => higher consistency high value => better performance (less traffic)

DNS Lookup Example client www.cs.ucsd.edu local DNS proxy cs.ucsd.edu ucsd=ipaddr cs=ipaddr www=ipaddr Root&edu DNS server ucsd DNS server cs DNS server

1988 Status 20k hosts available through DNS (!) 30 top level domain names SRI managed all non-country top levels 7 Root servers 1 query per second, driven by tuning of parameters 50% of 1988 traffic could be eliminated with further tuning Query breakdown All info (25-40%) Hostname to address (30-40%) Address to hostname (10-15%) Mail MX record (<10%)

Performance Performance worse than designed for (distributed system) Clients see 500 ms to 5 second response time for root servers Delegated domain performance much worse 3 to 10 seconds, with 30 to 60 seconds not unreasonable Negative caching Initially 20-60% of requests were for bad data (old style mail addr) Still 10-50% (typically 25%) for bad data Programs produce steady stream of bad names Negative caching initially an optional feature

Distributed debugging Discussion Write once, run anywhere? (debug everywhere) Mechanisms for pushing code updates Self-tuning system Caching responses even if unreasonable (reverse data and TTL) Developers do not want to tune system Especially if they are getting reasonable performance Globally vs. locally optimal Security?

Lessons from Giant-Scale Services

Giant-Scale Services Challenges for network services: High availability Critical in today s environment: $1000/sec of lost revenue during downtime Evolution Growth This paper does not address Service monitoring, configuration, QoS, security, logging, and log analysis Wide-area replicated services Write intensive services

Benefits of Network Services Access anywhere, anytime Availability via multiple devices Groupware support calendaring, teleconferencing, messaging, etc. Lower overall cost Multiplex infrastructure over active users Dedicated resources are typically 98% idle Central administrative burden Simplified service updates Update the service in one place, or 100 million?

Network Service Components

Clusters as Building Block No alternative to clusters for building network services that can scale to global use Key question: what is the lowest-level building block of a cluster? Commodity pentium processor or higher-end SMP? Cluster benefits: Incremental scalability Adding one machine typically linearly improves performance Independent components Cost and performance

Load Management Started with round-robin DNS in 1995 Map hostname to multiple IP addresses, hand out particular mapping in a round robin fashion to clients Does not hide failure or inactive servers Exposes structure of underlying service Today, L-4 and L-7 switches can inspect TCP session state or HTTP session state (cookie sticky, etc.) Perform mapping of requests to back end servers based on dynamically changing membership information

Service Replication

Service Partitioning