DNS and CDNs : Fundamentals of Computer Networks Bill Nace

Size: px
Start display at page:

Download "DNS and CDNs : Fundamentals of Computer Networks Bill Nace"

Transcription

1 DNS and CDNs : Fundamentals of Computer Networks Bill Nace Material from Computer Networking: A Top Down Approach, 6 th edition. J.F. Kurose and K.W. Ross

2 Administrivia HW #1 is posted Mission: Learn to use network tools to gather information and for debugging Due in 2 weeks (3 Oct) Close to Quiz and Lab #1, so don t procrastinate Report due to Canvas 2

3 Last lecture Application level protocols Ignore details of transport and below Included example of how abstraction sometimes is incomplete HTTP Request / Response messages Parallel, Persistent, Pipelining Caching 3

4 traceroute Overview DNS: Domain Name System The Protocol Organization of domains, zones, nameservers Content Distribution Networks 4

5 Address Conversion Protocols often have their own address mechanism URL, Domain Names, Ports, IP, MAC,... Designed w/requirements of that protocol Conversion needed when communication traverses protocols (layer boundaries) 5

6 A Need for Domain Names? The venerable Dr Amend (Foxtrot) saith... 6

7 Characteristics of a Name Human readable String, often variable length Format is important: [Title][f_initial][l_name] Generally not unique Perhaps unique in a particular area Siblings don t have same first name Computers have trouble with names Hard to process and store 7

8 Translating a Domain Name Application sends a request to a DNS server Who answers with an IP address Complications: Navigation Caching 8

9 Where is

10 traceroute Overview DNS: Domain Name System The Protocol Organization of domains, zones, nameservers Content Distribution Networks 10

11 What is DNS? A directory 1 service for the Internet Translates ( maps ) names to IP addresses plus some other services A distributed database Implemented in a hierarchy of name servers Name servers are distributed globally Maintained / administered by different organizations An application-layer protocol Allows host to query the database and handle replies 1 Pedantic Warning: I use the term directory very loosely in this context. True directory services are related, but different. 11

12 DNS History DNS created in early 1980s IETF process RFC 1034, 1035 Documented in Mockapetris88 DNS has grown since then How many pages is original RFC? How many subsequent RFCs are there? 12

13 DNS Services Host name to IP address translation Mapping Host aliasing Mapping between alias and canonical hostnames Canonical: real, difficult to remember www-cmu-prod-vip.andrew.cmu.edu (try it!) Alias: shorter, easier to remember 13

14 DNS Services (2) Mail server aliasing Similar to host aliasing, but for mail servers alias of andrew-mx-0[1-6].andrew.cmu.edu alias of cmu-mx-0[1-4].andrew.cmu.edu Try it! 14

15 DNS Services (3) Load distribution across replicated servers A name can map to multiple hosts thus multiple addresses DNS server returns all addresses but rotates ordering ex: for mx3.aplace.edu, one of a group of 4 servers 1st request returns address for: mx3, mx4, mx1, mx2 2nd request returns: mx4, mx1, mx2, mx3 Why a list? Why not just return first address? 15

16 traceroute Overview DNS: Domain Name System The Protocol Organization of domains, zones, nameservers Content Distribution Networks 16

17 DNS Protocol Simple query and reply mechanism Runs over UDP on port 53 as recommended by RFC 1035 Exception: zone transfer (records of entire zone) TCP for reliable delivery Exception: Answers longer than 512 bytes TCP for bulk data transfer 17

18 UDP? Why UDP? Shouldn t this be a reliable protocol? DNS is not real-time audio or video! 18

19 Protocol Query and reply messages Both use the same message format Data being queried is in a form known as Resource Record (RR) 19

20 Resource Records Each server stores some resource records (RRs) Each RR is a 5-tuple: (Name, Value, Type, Class, TTL) Name: Owner name, depends on type Value: Value associated with name Type: Denotes type of RR Class: Almost always IN (Internet) TTL: Cache timeout value, 32-bits, in seconds a zero value means do not cache Size limits 63 bytes for labels (parts of domain name separated by dots) 255 bytes for names 20

21 Types A = Address (AAAA for IPv6 address) Name = hostname, e.g. pi.ece.cmu.edu Value = IP address, e.g NS = Nameserver Name = domain, e.g. cmu.edu Value = hostname of an authoritative name server, e.g. dns.cmu.edu 21

22 Types (2) CNAME = Canonical Name Name = alias hostname, e.g. Value = canonical (real) hostname, e.g. www-cmu-prod-vip.andrew.cmu.edu MX = Mail Exchange Name = alias hostname, e.g. cmu.edu Value = hostname of a mail server, e.g. cmu-mx-03.andrew.cmu.edu 22

23 Types (3) There are 32 other types defined for a variety of uses Research project: Look up the SINK type 23

24 Message Format Message Header (12 bytes) Identification: 16 bit number Flags (1 bit each) query or reply recursion desired recursion available reply is authoritative... and others Reply uses same id as query 4 Bytes identification number of questions number of authority RRs flags number of answer RRs number of additional RRs questions (variable number of questions) answers (variable number of RRs) authority (variable number of RRs) additional information (variable number of RRs)

25 Message Format Message Payload (no more than 500 bytes) Sequence of name, type fields for a query RRs in response to a query RRs for authoritative servers Additional helpful information 4 Bytes identification number of questions number of authority RRs flags number of answer RRs number of additional RRs questions (variable number of questions) answers (variable number of RRs) authority (variable number of RRs) additional information (variable number of RRs)

26 What if your DNS server doesn t know the answer? Where is I don t know. Ask.jp nameserver

27 Navigation How a client traverses nameservers in search of an answer is called navigation Iterative Navigation Client asks a series of NS Each NS responds with a pointer to another NS with more info? NS0 Client Local NS? NS1? NS0 Answer NS2? NS1 NS2 Client eventually asks the authoritative server

28 Server controlled navigation Server may take over navigation job from client? Client Answer NS2? Answer NS2 Reduces response bandwidth Results can be cached in a manner useful to other clients Local NS? NS1? NS0 NS1 Some domains limit access to DNS for security reasons Two forms? Client Answer Answer NS2 Non-recursive: server iterates Recursive: Each NS takes over the job, sends results Local NS? Answer NS0 Answer? NS1?

29 Caching Once (any) name server learns mapping, it caches mapping Cache entries timeout (disappear) after some time Controlled by the TTL of that RR Default TTL is 2 days TLD servers typically cached in local name servers Thus root name servers not often visited 29

30 traceroute Overview DNS: Domain Name System The Protocol Organization of domains, zones, nameservers Content Distribution Networks 30

31 Distributed, Hierarchical Design Why not a central server? (RFC-811) Single point of failure If the only DNS server crashes, the entire Internet dies Immense traffic volume Needs to handle all query requests for entire world Location? Close to some, far from others Maintenance Nightmare to get records updated Doesn t scale! 31

32 Domain Name Types Top-Level Domain (TLD) ICANN registers TLDs, manages IANA generic TLD (gtld) sponsored TLD (stld) country code TLD (cctld) infrastructure TLD.com.org.edu.gov.cat.aero.au.ca.fr.jp.arpa Registrars assign within TLD Verisign:.com Educause:.edu Japan Registry Services:.jp cmu.edu cmuj.jp ISO lists country codes Not the same as name server hierarchy!

33 Domain Namespace Root (/) Hierarchical structure com edu org jp Written in a dot-separated form, from specific to general ignoring the root cmu cs ece drama msi ne biglobe cmuj

34 Name Server Hierarchy Types of DNS name servers Root Name Servers (A-M) Root Top-level domain (TLD) Authoritative Local com name servers edu name servers CMU name servers org name servers jp name servers

35 Mapping name to server Administrative authority doesn t always match namespace hierarchy Some organizations want to maintain their own name server Others don t ex: CMU s CS dept wants to run their own name server. Drama doesn t, but still wants drama.cmu.edu name 35

36 Zones Namespace hierarchy is partitioned into subtrees called zones Each zone corresponds to authority over that portion of the namespace Also represents the unit of implementation -- the nameserver Authority is delegated from parent to child Parent: CMU child: CS 36

37 Zones Root (/) com edu org jp cmu ne cmuj cs ece drama biglobe msi

38 Zones An organization should be able to have its own domain, even though it lacks resources to support DNS One nameserver can also support many zones (think hosting company) Zone owner must: Maintain zone data Run redundant nameservers 38

39 Zones Nameservers Root nameservers Root (/) (A-M).com com nameserver.edu edu nameserver.org org nameserver.jp jp nameserver cmu cmu NS ne nens cmuj cmuj NS ece cs cs NS ece drama NS biglobe biglobe NS msi msi NS

40 Root Nameservers 13 root servers (labeled A through M) Each server is actually a cluster of replicated servers (i.e. C server has 8 sites) 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) e NASA Mt View, CA f Internet Software C. Palo Alto, CA (and 17 other locations) m WIDE Tokyo b USC-ISI Marina del Rey, CA l ICANN Los Angeles, CA

41 Globally Distributed Map courtesy of Data as of 7 Sep 13

42 Root Server s Job Root nameserver knows TLD nameservers and their IP addresses Q: How do I get to A: I don t exactly know, but you should ask the.edu TLD server at: l3.nstld.com, d2.nstld.com, and others 42

43 Root servers don t know much One small zonefile Contains names and IP addresses of authoritative DNS servers for each TLD Small (2.2MB as of 6 Feb 2017) Changes infrequently (every couple of days) 43

44 K Root Name Server Operated by RIPE NW Coordination Center k.root-servers.org London, Amsterdam, Athens, Brisbane, Tokyo, Delhi etc How many queries per second do you think a root server receives? 44

45 TLD Name Servers Top-level domain (TLD) servers Responsible for gtlds com, org, net, edu,... and cctlds uk, fr, ca, jp... Versign maintains servers for com TLD EDUCAUSE for edu TLD 45

46 TLD NS s Job Knows the authoritative (or intermediate) name servers of its domain and their IP addresses Q: How do I get to A: I don t exactly know, but you can ask the name server for cmu.edu, at one of these places: t-ns1.net.cmu.edu, cabbage.srv.cs.cmu.edu, And others Note this is not the authoritative NS for the library 46

47 Authoritative NS Organization s DNS servers Provides authoritative hostname to IP mappings for organization s servers (e.g., Web and mail) Authoritative: Actually knows the answer Can be maintained by organization or service provider 47

48 Authoritative NS s Job Q: How do I get to A: I know! libsearch-vip.andrew.cmu.edu Authoritative!

49 Local Name Server Does not strictly belong to hierarchy Each ISP (residential ISP, company, university, etc) has one Also called default name server or resolver When a host makes a DNS query, query is sent to its local DNS server Acts as a proxy, forwards query into hierarchy 49

50 traceroute Overview DNS: Domain Name System The Protocol Organization of domains, zones, nameservers Content Distribution Networks 50

51 Content Distribution Network Goal: Offload some of the work done by an origin server to geographically distributed edge caches Edge caches Closer to end-hosts than origin server Work with ISPs over the world to be colocated Examples: Akamai, Limelight, CDNetworks 51

52 Content Distribution Network Selective mirroring A subset of content, e.g. multimedia files, is mirrored at the edge caches Website owner ( works with CDN to replicate its content Redirection (Secret Sauce) Client requests are forwarded to the most appropriate edge cache Improves response time, system throughput Done with DNS redirection plus URL rewriting 52

53 How does it work? 1. Web user wants to see content. Requests standard URL. 2. HTTP request with standard URL Origin Server (Customer of CDN Co.) 3. HTML page contains CDN Co's URLs 4. CDN URLs directed to local CDN servers 5. Content served locally Edge Cache Image from:

54 CDN Technologies URL Rewriting HTML code on Content Server must have URLs changed to CDN URLs Prepend a specific prefix a13g.akamai.net/cnn.com/logo.gif 54

55 CDN Technologies (2) DNS Redirection CDN URLs must be resolved to find local edge-cache Where is a13g.akamai.net? CDN s DNS name server looks at IP of requestor Answers with edge cache nearby 55

56 Thinking Time What is the difference between a CDN and a web proxy? Proxy Caching Content Distribution Network 56

57 CDN Secret Sauce Remarkably, CDNs use non-proprietary, standard mechanisms DNS to direct user to closest edge cache DNS TTL to time-out resource records Only the algorithms to pick the best edge cache is secret Purists hate this: See Vixie

58 Lesson Objectives Now, you should be able to: describe the DNS service, including mission, interaction model, nameservers, domains, zones, load distribution, and domain name types explain the DNS protocol, including message format, reliability, resource records, types, and caching mechanisms describe the navigation mechanisms of DNS nameservers 58

59 Now, you should be able to: describe the roles of the different nameservers in the DNS describe how a CDN operates, including goals, host-roles, URL rewriting and DNS redirection contrast the advantages of CDNs and web proxies 59

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

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

More information

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

Domain Name Service. DNS Overview. October 2009 Computer Networking 1 Domain Name Service DNS Overview October 2009 Computer Networking 1 Why DNS? Addresses are used to locate objects (contain routing information) Names are easier to remember and use than numbers DNS provides

More information

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

Lecture 05: Application Layer (Part 02) Domain Name System. Dr. Anis Koubaa NET 331 Computer Networks Lecture 05: Application Layer (Part 02) Domain Name System Dr. Anis Koubaa Reformatted slides from textbook Computer Networking a top-down appraoch, Fifth Edition by Kurose and

More information

CSc 450/550 Computer Networks Domain Name System

CSc 450/550 Computer Networks Domain Name System CSc 450/550 Computer Networks Domain Name System Jianping Pan Summer 2007 5/28/07 CSc 450/550 1 Review: Web/HTTP Web URI/URL, HTML tags, embedded objects HTTP request and response persistence, statefulness

More information

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

Computer Networks. Domain Name System. Jianping Pan Spring /25/17 CSC361 1 Computer Networks Domain Name System Jianping Pan Spring 2017 1/25/17 CSC361 1 Review: Web/HTTP Web URI/URL, HTML tags embedded/linked objects HTTP request and response persistence, statefulness web caching,

More information

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

Domain Name System (DNS) 김현철 ( 화 ) 정보통신융합서울대학교컴퓨터공학부 Domain Name System (DNS) 김현철 2010.09.29 ( 화 ) 정보통신융합서울대학교컴퓨터공학부 Chapter 2 Application Layer A note on the use of these ppt slides: We re making these slides freely available to all (faculty, students,

More information

CSE561 Naming and DNS. David Wetherall

CSE561 Naming and DNS. David Wetherall 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

More information

IP ADDRESSES, NAMING, AND DNS

IP ADDRESSES, NAMING, AND DNS IP ADDRESSES, NAMING, AND DNS George Porter Apr 9, 2018 ATTRIBUTION These slides are released under an Attribution-NonCommercial-ShareAlike 3.0 Unported (CC BY-NC-SA 3.0) Creative Commons license These

More information

Lecture 7: Application Layer Domain Name System

Lecture 7: Application Layer Domain Name System Lecture 7: Application Layer Domain Name System COMP 332, Spring 2018 Victoria Manfredi Acknowledgements: materials adapted from Computer Networking: A Top Down Approach 7 th edition: 1996-2016, J.F Kurose

More information

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

CSEN 404 Introduction to Networks. Mervat AbuElkheir Mohamed Abdelrazik. ** Slides are attributed to J. F. Kurose CSEN 404 Introduction to Networks Mervat AbuElkheir Mohamed Abdelrazik ** Slides are attributed to J. F. Kurose HTTP Method Types HTTP/1.0 GET POST HEAD asks server to leave requested object out of response

More information

CSEN 503 Introduction to Communication Networks

CSEN 503 Introduction to Communication Networks CSEN 503 Introduction to Communication Networks 1-1 Mervat AbuElkheir Hana Medhat Ayman Dayf ** Slides are attributed to J. F. Kurose Roadmap: Application layer Cookies and User-Server State Web caches

More information

CS 3516: Advanced Computer Networks

CS 3516: Advanced Computer Networks Welcome to CS 3516: Adanced Computer Networks Prof. Yanhua Li Time: 9:00am 9:50am M, T, R, and F Location: Fuller 320 Fall 2017 A-term 1 Some slides are originally from the course materials of the textbook

More information

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

CS 43: Computer Networks. 10: Naming and DNS September 24, 2018 CS 43: Computer Networks 10: Naming and DNS September 24, 2018 Last class Distributed systems architectures Client-Server Peer-to-Peer Challenges in design Partial failures Event ordering Lecture 10 -

More information

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

Applications & Application-Layer Protocols:  (SMTP) and DNS CS 312 Internet Concepts Applications & Application-Layer Protocols: E (SMTP) and DNS Dr. Michele Weigle Department of Computer Science Old Dominion University mweigle@cs.odu.edu http://www.cs.odu.edu/~mweigle/cs312-f11

More information

Chapter 2 part B: outline

Chapter 2 part B: outline Chapter 2 part B: outline 2.3 FTP 2.4 electronic, POP3, IMAP 2.5 DNS Application Layer 2-1 FTP: the file transfer protocol at host FTP interface FTP client local file system file transfer FTP remote file

More information

Application Layer: , DNS

Application Layer:  , DNS Application Layer: E-mail, DNS EECS 3214 Slides courtesy of J.F Kurose and K.W. Ross, All Rights Reserved 22-Jan-18 1-1 Chapter 2: outline 2.1 principles of network applications 2.2 Web and HTTP 2.3 electronic

More information

Chapter 2: Application layer

Chapter 2: Application layer Chapter 2: Application layer 2.1 Principles of network applications 2.2 Web and HTTP 2.3 FTP 2.4 Electronic Mail SMTP, POP3, IMAP 2.5 DNS 2.6 P2P applications 2.7 Socket programming with TCP 2.8 Socket

More information

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

ELEC / COMP 177 Fall Some slides from Kurose and Ross, Computer Networking, 5 th Edition ELEC / COMP 177 Fall 2013 Some slides from Kurose and Ross, Computer Networking, 5 th Edition Project 1 Python HTTP Server Work day: Next Tuesday (Sept 24 th ) Due Thursday, September 26 th by 11:55pm

More information

Chapter 2 Application Layer

Chapter 2 Application Layer Chapter 2 Application Layer A note on the use of these ppt slides: We re making these slides freely available to all (faculty, students, readers). They re in PowerPoint form so you can add, modify, and

More information

CSE 486/586 Distributed Systems

CSE 486/586 Distributed Systems CSE 486/586 Distributed Systems The Domain Name System Slides by Steve Ko Computer Sciences and Engineering University at Buffalo CSE 486/586 Domain Name System (DNS) Proposed in 1983 by Paul Mockapetris

More information

The Domain Name System

The Domain Name System The Domain Name System Stefano Vissicchio UCL Computer Science COMP0023 Today 1. The Domain Name System (DNS) 2. A Brief Word on DNS Security A name indicates what we seek. An address indicates where it

More information

Computer Networking Introduction

Computer Networking Introduction Computer Networking Introduction Halgurd S. Maghdid Software Engineering Department Koya University-Koya, Kurdistan-Iraq Lecture No.5 Chapter 2: outline 2.1 principles of network applications app architectures

More information

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

Application Layer. Pure P2P architecture. Client-server architecture. Processes communicating. Hybrid of client-server and P2P. Creating a network app Application Layer e- web instant messaging remote login P2P file sharing multi- network games streaming stored video (YouTube) voice over IP real-time video conferencing cloud computing Creating a network

More information

Domain Name System (DNS)

Domain Name System (DNS) Domain Name System (DNS) Smith College, CSC 249 Feb 6, 2017 1 TODAY: Domain Name System qthe directory system for the Internet v Used by other application layer protocols v via socket programming qmaps

More information

Application Layer Protocols

Application Layer Protocols Application Layer Protocols Dr. Ihsan Ullah Department of Computer Science & IT University of Balochistan, Quetta Pakistan Email: ihsan.ullah.cs@gmail.com These slides are adapted from the slides accompanying

More information

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

DNS. dr. C. P. J. Koymans. September 16, Informatics Institute University of Amsterdam. dr. C. P. J. Koymans (UvA) DNS September 16, / 46 DNS dr. C. P. J. Koymans Informatics Institute University of Amsterdam September 16, 2008 dr. C. P. J. Koymans (UvA) DNS September 16, 2008 1 / 46 DNS and BIND DNS (Domain Name System) concepts theory

More information

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

Application Layer. Pure P2P architecture. Client-server architecture. Processes communicating. Hybrid of client-server and P2P. Creating a network app Application Layer e- web instant messaging remote login PP file sharing multi- network games streaming stored video (YouTube) voice over IP real-time video conferencing cloud computing Creating a network

More information

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

Application Layer. Goals: Service models. Conceptual aspects of network application protocols Client server paradigm Application Layer Goals: Conceptual aspects of network application protocols Client server paradigm Service models Review protocols by examining popular application-level protocols HTTP DNS 1 Applications

More information

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

CSE 124: IP ADDRESSES, NAMING, AND DNS. George Porter Oct 4, 2017 CSE 124: IP ADDRESSES, NAMING, AND DNS George Porter Oct 4, 2017 ATTRIBUTION These slides are released under an Attribution-NonCommercial-ShareAlike 3.0 Unported (CC BY-NC-SA 3.0) Creative Commons license

More information

CSCD 330 Network Programming Winter 2015

CSCD 330 Network Programming Winter 2015 CSCD 330 Network Programming Winter 2015 Lecture 5 Application Layer Reading: Chapter 2 Still Some Material in these slides from J.F Kurose and K.W. Ross All material copyright 1996-2007 1 More Network

More information

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

CS4/MSc Computer Networking. Lecture 3: The Application Layer CS4/MSc Computer Networking Lecture 3: The Application Layer Computer Networking, Copyright University of Edinburgh 2005 Network Applications Examine a popular network application: Web Client-server architecture

More information

Application-layer Protocols

Application-layer Protocols Application-layer Protocols Kai Shen application transport data link physical Network Applications and Application-Layer Protocols application transport data link physical application transport data link

More information

Chapter II: Application Layer

Chapter II: Application Layer Chapter II: Application Layer UG3 Computer Communications & Networks (COMN) MAHESH MARINA mahesh@ed.ac.uk Slides thanks to Myungjin Lee, and copyright of Kurose and Ross First, a review Web and HTTP web

More information

CSCE 463/612 Networks and Distributed Processing Spring 2018

CSCE 463/612 Networks and Distributed Processing Spring 2018 CSCE 463/612 Networks and Distributed Processing Spring 2018 Application Layer III Dmitri Loguinov Texas A&M University February 8, 2018 Original slides copyright 1996-2004 J.F Kurose and K.W. Ross 1 Chapter

More information

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

CS519: Computer Networks. Lecture 6: Apr 5, 2004 Naming and DNS : Computer Networks Lecture 6: Apr 5, 2004 Naming and DNS Any problem in computer science can be solved with another layer of indirection David Wheeler Naming is a layer of indirection What problems does

More information

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

Table of Contents DNS. Short history of DNS (1) DNS and BIND. Specification and implementation. A short history of DNS. Table of Contents Specification and implementation DNS dr. C. P. J. Koymans Informatics Institute University of Amsterdam September 14, 2009 A short history of DNS Root servers Basic concepts Delegation

More information

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

Table of Contents DNS. Short history of DNS (1) DNS and BIND. Specification and implementation. A short history of DNS. Root servers. Table of Contents Specification and implementation DNS Karst Koymans Informatics Institute University of Amsterdam (version 1.11, 2010/10/04 10:03:37) Tuesday, September 14, 2010 A short history of DNS

More information

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

Page 1. TCP Flow Control TCP Flow Control TCP Flow Control CS162 Operating Systems and Systems Programming Lecture 16. Flow Control, DNS CS162 Operating Systems and Systems Programming Lecture 16 Flow Control, DNS" March 28, 2011! Ion Stoica! http://inst.eecs.berkeley.edu/~cs162! TCP: stream oriented protocol! Sender sends a stream of bytes,

More information

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

EECS 122: Introduction to Computer Networks DNS and WWW. Internet Names & Addresses EECS 122: Introduction to Computer Networks DNS and WWW Computer Science Division Department of Electrical Engineering and Computer Sciences University of California, Berkeley Berkeley, CA 94720-1776 Internet

More information

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

Application layer. Some network apps. Client-server architecture. Hybrid of client-server and P2P. Pure P2P architecture. Creating a network app Application layer Some network apps e- web instant messaging remote login P2P file sharing multi- network games streaming stored video (YouTube) voice over IP real-time video conferencing cloud computing

More information

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

CSCD 330 Network Programming Spring 2018 Lecture 5 Application Layer. Reading: Chapter 2 Still CSCD 330 Network Programming Spring 2018 Lecture 5 Application Layer Reading: Chapter 2 Still Some Material in these slides from J.F Kurose and K.W. Ross All material copyright 1996-2007 1 More Network

More information

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

f.root-servers.net ISOC cctld Workshop Nairobi, Kenya, 2005 f.root-servers.net ISOC cctld Workshop Nairobi, Kenya, 2005 The Basics DNS The Domain Name System is a huge database of resource records globally distributed, loosely coherent, scaleable, reliable, dynamic

More information

The Application Layer: Sockets, DNS

The Application Layer: Sockets, DNS The Application Layer: Sockets, DNS CS 352, Lecture 3 http://www.cs.rutgers.edu/~sn624/352-s19 Srinivas Narayana 1 App-layer protocol Types of messages exchanged, e.g., request, response Message format:

More information

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

Communications Software. CSE 123b. CSE 123b. Spring Lecture 11: Domain Name System (DNS) Stefan Savage. Some pictures courtesy David Wetherall CSE 123b CSE 123b Communications Software Spring 2003 Lecture 11: Domain Name System (DNS) Stefan Savage Some pictures courtesy David Wetherall & Srini Seshan Where we ve been & where we re going Low-level

More information

CSCI-1680 DNS Rodrigo Fonseca

CSCI-1680 DNS Rodrigo Fonseca CSCI-1680 DNS Rodrigo Fonseca Based partly on lecture notes by Sco2 Shenker and John Janno6 Host names and IP Addresses Host names Mnemonics appreciated by humans Variable length, ASCII characters Provide

More information

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

CSE 123b Communications Software. Overview for today. Names and Addresses. Goals for a naming system. Internet Hostnames CSE 123b Communications Software Spring 2003 Lecture 11: Domain Name System (DNS) Stefan Savage Where we ve been & where we re going Low-level networking (so far) Internetworking architecture Packet Forwarding

More information

Networking Applications

Networking Applications Networking Dr. Ayman A. Abdel-Hamid College of Computing and Information Technology Arab Academy for Science & Technology and Maritime Transport 1 Outline Introduction Name Space concepts Domain Name Space

More information

Application Layer. Goals:

Application Layer. Goals: Application Layer Goals: Conceptual aspects of network application protocols Client server paradigm Service models Learn about protocols by examining popular applicationlevel protocols HTTP DNS SMTP, POP3,

More information

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

Application Layer. Applications and application-layer protocols. Goals: Application Layer Goals: Conceptual aspects of network application protocols Client server paradigm Service models Learn about protocols by examining popular applicationlevel protocols HTTP DNS SMTP, POP3,

More information

CSC 401 Data and Computer Communications Networks

CSC 401 Data and Computer Communications Networks CSC 401 Data and Computer Communications Networks Application Layer DNS and P2P Sec 2.4 2.5 Prof. Lina Battestilli Fall 2017 Outline Application Layer (ch 2) 2.1 principles of network applications 2.2

More information

Domain Name System.

Domain Name System. Domain Name System http://xkcd.com/302/ CSCI 466: Networks Keith Vertanen Fall 2011 Overview Final project + presentation Some TCP and UDP experiments Domain Name System (DNS) Hierarchical name space Maps

More information

DNS & Iodine. Christian Grothoff.

DNS & Iodine. Christian Grothoff. DNS & Iodine christian@grothoff.org http://grothoff.org/christian/ The Domain Name System is the Achilles heel of the Web. Tim Berners-Lee 1 DNS: Domain Name System Unique Distributed Database Application-layer

More information

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

DNS Hierarchical Name Space. BIND Terminology and DNS Name Servers. Distributed Hierarchical Database (1st Approx) Domain Name System (DNS) Domain Name System (DNS) DNS consists of 1. an hierarchical name space name allocation decentralized to domains host.sub-subdomain.....subdomain.domain[.root] host machine name, can be an alias sub-subdomain

More information

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

DNS. Karst Koymans & Niels Sijm. Tuesday, September 7, Informatics Institute University of Amsterdam DNS Karst Koymans & Niels Sijm Informatics Institute University of Amsterdam Tuesday, September 7, 2012 Karst Koymans & Niels Sijm (UvA) DNS Tuesday, September 7, 2012 1 / 62 1 DNS: what does it do and

More information

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

DNS and HTTP. A High-Level Overview of how the Internet works DNS and HTTP A High-Level Overview of how the Internet works Adam Portier Fall 2017 How do I Google? Smaller problems you need to solve 1. Where is Google? 2. How do I access the Google webpage? 3. How

More information

Advanced Networking. Domain Name System

Advanced Networking. Domain Name System Advanced Networking Domain Name System Purpose of DNS servers Human being has many identifications: 1) Our name can be used for identification Problem: Two differenet people may have same name. 2) Mobile

More information

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

Advanced Networking. Domain Name System. Purpose of DNS servers. Purpose of DNS servers. Purpose of DNS servers Purpose of DNS servers Advanced Networking Domain Name System Human being has many identifications: 1) Our name can be used for identification Problem: Two differenet people may have same name. 2) Mobile

More information

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

CompSci 356: Computer Network Architectures. Lecture 20: Domain Name System (DNS) and Content distribution networks Chapter 9.3.1 CompSci 356: Computer Network Architectures Lecture 20: Domain Name System (DNS) and Content distribution networks Chapter 9.3.1 Xiaowei Yang xwy@cs.duke.edu Overview Domain Name System Content Distribution

More information

Translating Addresses

Translating Addresses Translating Addresses Reading: Sections 9.3.1, 3.2.6. 3.2.7 Slides by Rexford @ Princeton, slightly altered by M.D. Context Application DNS DHCP Transport TCP UDP Network ICMP IP ARP Physical Physical

More information

CS 3640: Introduction to Networks and Their Applications

CS 3640: Introduction to Networks and Their Applications CS 3640: Introduction to Networks and Their Applications Fall 2018, Lecture 19: Application Layer III (Credit: Prof. Phillipa Gill @ University of Massachusetts) Instructor: Rishab Nithyanand Teaching

More information

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

ELEC / COMP 177 Fall Some slides from Kurose and Ross, Computer Networking, 5 th Edition ELEC / COMP 177 Fall 2012 Some slides from Kurose and Ross, Computer Networking, 5 th Edition Midterm Exam Tuesday, October 16 th Format Short answer problems No questions on programming Closed notes Closed

More information

EE 122: Domain Name System

EE 122: Domain Name System EE 122: Domain Name System Ion Stoica (and Brighten Godfrey) TAs: Lucian Popa, David Zats and Ganesh Ananthanarayanan http://inst.eecs.berkeley.edu/~ee122/ Materials with thanks to Vern Paxson, Jennifer

More information

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

Reminders. EE 122: Domain Name System. Goals of Today!s Lecture. Host Names vs. IP addresses. Separating Naming and Addressing Reminders EE 122: Domain Name System Homework 2 due Oct 1 @ 3:50 pm Oct 1 is this Wednesday Project 1 checkpoint due Oct 6 @ 11:59:59 pm Ion Stoica (and Brighten Godfrey) TAs: Lucian Popa, David Zats and

More information

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

page 1 Plain Old DNS WACREN, DNS/DNSSEC Regional Workshop Ouagadougou, October 2016 page 1 Plain Old DNS WACREN, DNS/DNSSEC Regional Workshop Ouagadougou, 10-14 October 2016 page 2 IP: Identifiers on the Internet The fundamental identifier on the internet is an IP address. Each host connected

More information

Internet applications. 2: Application Layer 1

Internet applications. 2: Application Layer 1 Internet applications 2: Application Layer 1 Recall Internet architecture Intelligence at end systems e.g., web server software communicates with browser software No need to write software for network-core

More information

Section 2: Application layer

Section 2: Application layer Section 2: Application layer 2.1 Principles of network applications 2.2 Web and HTTP 2.3 FTP 2.4 Electronic Mail SMTP, POP3, IMAP 2.5 DNS 2.6 P2P applications 2.7 Socket programming with UDP 2.8 Socket

More information

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 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 Domain Name System (DNS) and its security CSU CS557, Spring 2018 Instructor: Lorenzo De Carli Partly based on the CS457 slides by Indrajit Ray 1 What is the domain name system? Internet use 4- (or

More information

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

Light at the end of the tunnel Final Lecture: Course Overview Light at the end of the tunnel Final Lecture: Course Overview Acknowledgments: Lecture slides are from Computer networks course thought by Jennifer Rexford at Princeton University. When slides are obtained

More information

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

The basics. Karst Koymans. Tuesday, September 9, 2014 .. DNS The basics Karst Koymans Informatics Institute University of Amsterdam (version 4.7, 2014/09/11 13:54:31) Tuesday, September 9, 2014 Karst Koymans (UvA) DNS Tuesday, September 9, 2014 1 / 64 .1

More information

CSCD 330 Network Programming Spring 2017

CSCD 330 Network Programming Spring 2017 CSCD 330 Network Programming Spring 2017 Lecture 5 Application Layer Reading: Chapter 2 Still Some Material in these slides from J.F Kurose and K.W. Ross All material copyright 1996-2007 1 More Network

More information

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

Applications & Application-Layer Protocols: The Domain Name System and Peerto-Peer CPSC 360 Network Programming Applications & Application-Layer Protocols: The Domain Name System and Peerto-Peer Systems Michele Weigle Department of Computer Science Clemson University mweigle@cs.clemson.edu

More information

NAMING, DNS, AND CHORD

NAMING, DNS, AND CHORD NAMING, DNS, AND CHORD George Porter Oct 30 and Nov 1, 2018 ATTRIBUTION These slides are released under an Attribution-NonCommercial-ShareAlike 3.0 Unported (CC BY-NC-SA 3.0) Creative Commons license These

More information

Information Network Systems The application layer. Stephan Sigg

Information Network Systems The application layer. Stephan Sigg Information Network Systems The application layer Stephan Sigg Tokyo, November 15, 2012 Introduction 04.10.2012 Introduction to the internet 11.10.2012 The link layer 18.10.2012 The network layer 25.10.2012

More information

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

CMPE 150/L : Introduction to Computer Networks. Chen Qian Computer Engineering UCSC Baskin Engineering Lecture 5 CMPE 150/L : Introduction to Computer Networks Chen Qian Computer Engineering UCSC Baskin Engineering Lecture 5 1 Any problem of your lab? Due by next Monday (Jan 29) Using Canvas? Email me cqian12@ucsc.edu

More information

2.5 DNS The Internet s Directory Service

2.5 DNS The Internet s Directory Service 130 CHAPTER 2 APPLICATION LAYER e-mail is also provided by Google, Yahoo!, as well as just about every major university and corporation. With this service, the user agent is an ordinary Web browser, and

More information

2. Introduction to Internet Applications

2. Introduction to Internet Applications 2. Introduction to Internet Applications 1. Representation and Transfer 2. Web Protocols 3. Some Other Application Layer Protocols 4. Uniform Resource Identifiers (URIs) 5. Uniform Resource Locators (URLs)

More information

ECE 650 Systems Programming & Engineering. Spring 2018

ECE 650 Systems Programming & Engineering. Spring 2018 ECE 650 Systems Programming & Engineering Spring 2018 Dynamic Host Configuration Protocol (DHCP) and Domain Name System (DNS) Tyler Bletsch Duke University Slides are adapted from Brian Rogers (Duke) Dynamic

More information

Information Network I: The Application Layer. Doudou Fall Internet Engineering Laboratory Nara Institute of Science and Technique

Information Network I: The Application Layer. Doudou Fall Internet Engineering Laboratory Nara Institute of Science and Technique Information Network I: The Application Layer Doudou Fall Internet Engineering Laboratory Nara Institute of Science and Technique Outline Domain Name System World Wide Web and HTTP Content Delivery Networks

More information

SOFTWARE ARCHITECTURE 9. NAME RESOLUTION.

SOFTWARE ARCHITECTURE 9. NAME RESOLUTION. 1 SOFTWARE ARCHITECTURE 9. NAME RESOLUTION Tatsuya Hagino hagino@sfc.keio.ac.jp lecture URL https://vu5.sfc.keio.ac.jp/slide/ 2 OSI Reference Model Open Systems Interconnect ISO defined around 1984. Application

More information

Internet Services & Protocols. Application Layer and its Services

Internet Services & Protocols. Application Layer and its Services Department of Computer Science Institute for System Architecture, Chair for Computer Networks Internet Services & Protocols Application Layer and its Services Dr.-Ing. Stephan Groß Room: INF 3099 E-Mail:

More information

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

Naming Computer Networking. Overview. DNS: Domain Name System. Obvious Solutions (1) Obvious Solutions (2) Naming 15-441 Computer Networking DNS How do we efficiently locate resources? DNS: name IP address Service location: description host Other issues How do we scale these to the wide area? How to choose

More information

APNIC elearning: DNS Concepts

APNIC elearning: DNS Concepts APNIC elearning: DNS Concepts 27 MAY 2015 11:00 AM AEST Brisbane (UTC+10) Issue Date: Revision: Introduction Presenter Sheryl Hermoso Training Officer sheryl@apnic.net Specialties: Network Security IPv6

More information

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

Announcements. Transport Protocols & DNS. Goals for Today s Lecture, Part 1. Goals of Today s Lecture, Part 2. Transport Protocols Announcements Transport Protocols & DNS EE 122: Intro to Communication Networks Fall 2006 (MW 4-5:30 in Donner 155) We re soliciting feedback What s not working? What s working well? Send via email or

More information

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

DNS. DNS is an example of a large scale client-server application. DNS Domain Name System: DNS Objective: map names to IP addresses (i.e., high level names to low level names) Original namespace was flat, didn t scale.. Hierarchical naming permits decentralization by

More information

Chapter 2 Application Layer

Chapter 2 Application Layer Chapter 2 Application Layer A note on the use of these ppt slides: We re making these slides freely available to all (faculty, students, readers). They re in PowerPoint form so you see the animations;

More information

Applications Layer Protocols. Hui Chen, Ph.D. Dept. of Engineering & Computer Science Virginia State University Petersburg, VA 23806

Applications Layer Protocols. Hui Chen, Ph.D. Dept. of Engineering & Computer Science Virginia State University Petersburg, VA 23806 Applications Layer Protocols Hui Chen, Ph.D. Dept. of Engineering & Computer Science Virginia State University Petersburg, VA 23806 1 Acknowledgements Some pictures used in this presentation were obtained

More information

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

Distributed Systems. Distributed Systems Within the Internet Nov. 9, 2011 15-440 Distributed Systems Distributed Systems Within the Internet Nov. 9, 2011 Topics Domain Name System Finding IP address Content Delivery Networks Caching content within the network Domain Name System

More information

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

Introduction to Computer Networking. Guy Leduc. Chapter 2 Application Layer. Chapter 2: outline Introduction to Computer Networking Guy Leduc Chapter 2 Application Layer Computer Networking: A Top Down Approach, 6 th edition. Jim Kurose, Keith Ross Addison-Wesley, March 2012 2: Application Layer

More information

Domain Name System (DNS)

Domain Name System (DNS) CPSC 360 - Network Programming Domain Name System (DNS) Michele Weigle Department of Computer Science Clemson University mweigle@cs.clemson.edu April 15, 2005 http://www.cs.clemson.edu/~mweigle/courses/cpsc360

More information

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

CMPE 150/L : Introduction to Computer Networks. Chen Qian Computer Engineering UCSC Baskin Engineering Lecture 6 CMPE 150/L : Introduction to Computer Networks Chen Qian Computer Engineering UCSC Baskin Engineering Lecture 6 1 Midterm room for overflow students The students who used my registration code to enroll

More information

DNS/DNSSEC Workshop. In Collaboration with APNIC and HKIRC Hong Kong. Champika Wijayatunga Regional Security Engagement Manager Asia Pacific

DNS/DNSSEC Workshop. In Collaboration with APNIC and HKIRC Hong Kong. Champika Wijayatunga Regional Security Engagement Manager Asia Pacific DNS/DNSSEC Workshop In Collaboration with APNIC and HKIRC Hong Kong Champika Wijayatunga Regional Security Engagement Manager Asia Pacific 22-24 January 2018 1 Agenda 1 2 3 Introduction to DNS DNS Features

More information

Protocol Classification

Protocol Classification DNS and DHCP TCP/IP Suite Suite of protocols (not just TCP and IP) Main protocols TCP and UDP at the Transport Layer, and IP at the Network Layer Other protocols ICMP, ARP, Telnet, Ftp, HTTP, SMTP, SNMP

More information

CSC358 Week 3. Adapted from slides by J.F. Kurose and K. W. Ross. All material copyright J.F Kurose and K.W. Ross, All Rights Reserved

CSC358 Week 3. Adapted from slides by J.F. Kurose and K. W. Ross. All material copyright J.F Kurose and K.W. Ross, All Rights Reserved CSC358 Week 3 Adapted from slides by J.F. Kurose and K. W. Ross. All material copyright 1996-2016 J.F Kurose and K.W. Ross, All Rights Reserved Logistics Assignment 1 Tutorial 2 is programming exercise,

More information

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

Domain Name System (DNS) DNS Fundamentals. Computers use IP addresses. Why do we need names? hosts.txt does not scale. The old solution: HOSTS. Domain Name System (DNS) Computers use IP addresses. Why do we need names? Names are easier for people to remember DNS Fundamentals Computers may be moved between networks, in which case their IP address

More information

CS 3640: Introduction to Networks and Their Applications

CS 3640: Introduction to Networks and Their Applications CS 3640: Introduction to Networks and Their Applications Fall 2018, Lecture 18: The Application Layer II (Credit: Christo Wilson @ NEU) Instructor: Rishab Nithyanand Teaching Assistant: Md. Kowsar Hossain

More information

CSCI-1680 DNS Rodrigo Fonseca

CSCI-1680 DNS Rodrigo Fonseca CSCI-1680 DNS Rodrigo Fonseca Based partly on lecture notes by Scott Shenker and John Jannotti We know how to open TCP connections to a server/port: E.g., 128.148.32.110, port 80 Host names and IP Addresses

More information

Writing Assignment #1. A Technical Description for Two Different Audiences. Yuji Shimojo WRTG 393. Instructor: Claudia M. Caruana

Writing Assignment #1. A Technical Description for Two Different Audiences. Yuji Shimojo WRTG 393. Instructor: Claudia M. Caruana Writing Assignment #1 A Technical Description for Two Different Audiences Yuji Shimojo WRTG 393 Instructor: Claudia M. Caruana November 9, 2016 1 Introduction I work in IT technical support at a web design

More information

K-Root Name Server Operations

K-Root Name Server Operations K-Root Name Server Operations Andrei Robachevsky andrei@ripe.net 1 Outline Root Server System brief update Architecture Current locations Anycast deployment K.root-servers.net Server Major milestones Current

More information

Domain Name System (DNS)

Domain Name System (DNS) Domain Name System (DNS) Outline Naming Hosts Domain Name Hierarchy Zones DNS Records Name Resolution CS 640 1 Naming Hosts Thus far we have identified hosts using IP addresses and MAC address Hard for

More information

The Domain Name System

The Domain Name System The Domain Name System History of DNS Before DNS ARPAnet HOSTS.txt contains all the hosts information Maintained by SRI s Network Information Center In SRI-NIC host Problems: Not scalable! Traffic and

More information