DNS and HTTP CS 168. Domain Name Service Host addresses: e.g., 169.229.131.109 – a number used by protocols – conforms to network structure (the “where”)

Slides:



Advertisements
Similar presentations
Internet Applications INTERNET APPLICATIONS. Internet Applications Domain Name Service Proxy Service Mail Service Web Service.
Advertisements

Instructions for TAs Add these entries to your ‘hosts’ file: – nsa.gov – (also feel free to set up a dodgy DNS.
HTTP HyperText Transfer Protocol. HTTP Uses TCP as its underlying transport protocol Uses port 80 Stateless protocol (i.e. HTTP Server maintains no information.
HyperText Transfer Protocol (HTTP)
Application Layer-11 CSE401N: Computer Networks Lecture-4 Application Layer Overview HTTP.
Chapter 9 Application Layer, HTTP Professor Rick Han University of Colorado at Boulder
2: Application Layer1 Chapter 2: Application Layer Our goals: r conceptual, implementation aspects of network application protocols m transport-layer service.
Applications: DNS, HTTP and the WWW EECS 122: Lecture 6 Department of Electrical Engineering and Computer Sciences University of California Berkeley.
HyperText Transfer Protocol (HTTP) Computer Networks Computer Networks Spring 2012 Spring 2012.
9/16/2003-9/18/2003 The Application Layer and Java Programming September 16-18, 2003.
Chapter 2 Application Layer Computer Networking: A Top Down Approach Featuring the Internet, 3 rd edition. Jim Kurose, Keith Ross Addison-Wesley, July.
Web, HTTP and Web Caching
2: Application Layer1 Chapter 2: Application Layer Our goals: r conceptual, implementation aspects of network application protocols m transport-layer service.
1 K. Salah Module 2.1: Application Layer Application-level protocols provide high-level services –Web and HTTP –DNS –Electronic mail –Remote login –FTP.
CPSC 441: DNS1 Instructor: Anirban Mahanti Office: ICT Class Location: ICT 121 Lectures: MWF 12:00 – 12:50 Notes derived.
2/9/2004 Web and HTTP February 9, /9/2004 Assignments Due – Reading and Warmup Work on Message of the Day.
EEC-484/584 Computer Networks Lecture 4 Wenbing Zhao (Part of the slides are based on Drs. Kurose & Ross ’ s slides for their Computer.
Client, Server, HTTP, IP Address, Domain Name. Client-Server Model Client Bob Yahoo Server yahoo.com/finance.html A text file named finance.html.
PL-IV- Group A HTTP Request & Response Header
Application Layer. Domain Name System Domain Name System (DNS) Problem – Want to go to but don’t know the IP addresswww.google.com Solution.
Instructions for TAs Add these entries to your ‘hosts’ file: – nsa.gov – (also feel free to set up a dodgy.
1 Domain Name System (DNS). 2 DNS: Domain Name System Internet hosts: – IP address (32 bit) - used for addressing datagrams – “name”, e.g.,
DNS. 2 DNS: Domain Name System DNS services Hostname to IP address translation Host aliasing – Canonical and alias names Mail server aliasing Load distribution.
Human-Computer Interface Course 5. ISPs and Internet connection.
Lecturer: Maxim Podlesny Sep CSE 473 File Transfer and Electronic in Internet.
CS 3830 Day 7 Introduction : Application Layer 2 Processes communicating Process: program running within a host. r within same host, two processes.
Ch 2. Application Layer Myungchul Kim
FTP (File Transfer Protocol) & Telnet
DNS: Domain Name System
Mail (smtp), VoIP (sip, rtp)
CP476 Internet Computing Lecture 5 : HTTP, WWW and URL 1 Lecture 5. WWW, HTTP and URL Objective: to review the concepts of WWW to understand how HTTP works.
2: Application Layer1 CS 4244: Internet Software Development Dr. Eli Tilevich.
Rensselaer Polytechnic Institute Shivkumar Kalvanaraman, Biplab Sikdar 1 The Web: the http protocol http: hypertext transfer protocol Web’s application.
20-1 Last time □ NAT □ Application layer ♦ Intro ♦ Web / HTTP.
2: Application Layer1 Internet apps: their protocols and transport protocols Application remote terminal access Web file transfer streaming multimedia.
Review: –Which protocol is used to move messages around in the Internet? –Describe how a message is moved from the sender’s UA to the receiver’s.
Week 11: Application Layer1 Web and HTTP First some jargon r Web page consists of objects r Object can be HTML file, JPEG image, Java applet, audio file,…
2: Application Layer1 Web and HTTP First some jargon Web page consists of base HTML-file which includes several referenced objects Object can be HTML file,
1 DNS: Domain Name System People: many identifiers: m SSN, name, Passport # Internet hosts, routers: m IP address (32 bit) - used for addressing datagrams.
Sistem Jaringan dan Komunikasi Data #9. DNS The Internet Directory Service  the Domain Name Service (DNS) provides mapping between host name & IP address.
DNS. 2 DNS: Domain Name System DNS services Hostname to IP address translation Host aliasing – Canonical and alias names Mail server aliasing Load distribution.
1 Introductory material. This module illustrates the interactions of the protocols of the TCP/IP protocol suite with the help of an example. The example.
Ch 2. Application Layer Myungchul Kim
1 HTTP EECS 325/425, Fall 2005 September Chapter 2: Application layer r 2.1 Principles of network applications m app architectures m app requirements.
1 CS 4396 Computer Networks Lab TCP/IP Networking An Example.
CPSC 441: DNS 1. DNS: Domain Name System Internet hosts: m IP address (32 bit) - used for addressing datagrams m “name”, e.g., - used by.
CIS679: Lecture 13 r Review of Last Lecture r More on HTTP.
1-1 HTTP request message GET /somedir/page.html HTTP/1.1 Host: User-agent: Mozilla/4.0 Connection: close Accept-language:fr request.
2: Application Layer1 Chapter 2 Application Layer Computer Networking: A Top Down Approach Featuring the Internet, 3 rd edition. Jim Kurose, Keith Ross.
EE 122: Lecture 20 (Domain Name Server - DNS) Ion Stoica Nov 15, 2001 (* based on the some on-line slides of J. Kurose & K. Rose and of Raj Jain)
2: Application Layer 1 Chapter 2: Application layer r 2.1 Principles of network applications  app architectures  app requirements r 2.2 Web and HTTP.
CITA 310 Section 2 HTTP (Selected Topics from Textbook Chapter 6)
EE 122: Lecture 21 (HyperText Transfer Protocol - HTTP) Ion Stoica Nov 20, 2001 (*)
Overview of Servlets and JSP
Data Communications and Computer Networks Chapter 2 CS 3830 Lecture 7 Omar Meqdadi Department of Computer Science and Software Engineering University of.
EEC-484/584 Computer Networks Lecture 4 Wenbing Zhao (Part of the slides are based on Drs. Kurose & Ross ’ s slides for their Computer.
Data Communication EDA344, DIT420 Description of Lab 1 and Optional Programming HTTP Assignment Bapi Chatterjee Prajith R G.
COMP 431 Internet Services & Protocols
Week 11: Application Layer 1 Web and HTTP r Web page consists of objects r Object can be HTML file, JPEG image, Java applet, audio file,… r Web page consists.
So DNS is A client-server application that maps domain names into their corresponding IP addresses with the help of name servers. Mapping domain names.
Ch 2. Application Layer Myungchul Kim
Lecture 5 Internet Core: Protocol layers. Application Layer  We will learn about protocols by examining popular application-level protocols  HTTP 
2: Application Layer 1 Chapter 2 Application Layer These ppt slides are originally from the Kurose and Ross’s book. But some slides are deleted and added.
Block 5: An application layer protocol: HTTP
Chapter 9: Domain Name Servers
EECS 122: Introduction to Computer Networks Multicast
Internet transport protocols services
CRC Example (I) C(x) = x2 + 1 (k = 2) data
The Application Layer: HTTP
Presentation transcript:

DNS and HTTP CS 168

Domain Name Service Host addresses: e.g., – a number used by protocols – conforms to network structure (the “where”) Host names: e.g., instr.eecs.berkeley.edu – mnemonic name usable by humans – conforms to organizational structure (the “who”) The Domain Name System (DNS) is how we map from one to the other – a directory service for hosts on the Internet

Hierarchical Namespace “ Top Level Domains ” are at the top Domains are subtrees – e.g.:.edu, berkeley.edu, eecs.berkeley.edu Name is leaf-to-root path – instr.eecs.berkeley.edu Name collisions trivially avoided! – each domain’s responsibility root edu com govmil org netukfr berkeley ucla eecs sims instr …

Recursive DNS Query Ask local DNS server to get the response for you “Let me find out where it is for you” Root com ns1.google.com dns.berkeley.edu Where is

Iterative DNS query Ask Server who to ask next “I don’t know this name, but this other server might” Root com ns1.google.com dns.berkeley.edu Where is

DNS Records DNS info. stored as resource records (RRs) – RR is (name, value, type, TTL) Type = A: (-> Address) – name = hostname – value = IP address Type = NS: (-> Name Server) – name = domain – value = name of dns server for domain

DNS Records (contd.) Type = CNAME: (-> Canonical NAME) – name = hostname – value = canonical name Type = MX: (-> Mail eXchanger) – name = domain in address – value = canonical name(s) of mail server(s)

Fun with dig!

Hyper Text Transfer Protocol (HTTP) Client-server architecture – server is “always on” and “well known” – clients initiate contact to server Synchronous request/reply protocol – Runs over TCP, Port 80 Stateless ASCII format

Client/Server communication GET /somedir/page.html HTTP/1.1 Host: User-agent: Mozilla/4.0 Connection: close Accept-language: fr (blank line) HTTP/ OK Connection close Date: Thu, 06 Aug :00:15 GMT Server: Apache/1.3.0 (Unix) Last-Modified: Mon, 22 Jun Content-Length: 6821 Content-Type: text/html (blank line) data data data data data... HTTP Request (Client to Server) (Server to Client) HTTP Response (method)(resource)(protocol version) c (header) (protocol version)(status code)(status phrase) (header) (data)

HTTP’s stateless-ness Pros? – Scalable – Easier to handle failures – Order of requests is immaterial Cons? – Can’t keep state! (shopping cart, user profiles…) Solution? – Client-side state Cookies!

HTTP Performance: Non-persistent TCP Connection TCP SYN TCP SYN-ACK TCP ACK + HTTP REQUEST TCP ACK + HTTP RESPONSE TCP FIN TCP FIN-ACK TCP ACK 1 RTT + transmission

Other options? Concurrent Requests and responses –Use multiple connections in parallel Persistent Connections –Maintain TCP connection across multiple requests Pipelined Requests and Responses – Batch requests and responses to reduce the number of packets

Easy ways to order! 1.Go to store 2.Order burger 3.Go to store 4.Order drink 5.Go to store 6.Order fries 1.Go to store with two friends 2.Each person orders one item (in parallel) 1.Go to store 2.Order burger, drink and fries 1 1.Go to store 2.Order burger 3.Order drink 4.Order fries 2 34

Q2

Q3