The World Wide Web. EE 122: Intro to Communication Networks. Fall 2006 (MW 4-5:30 in Donner 155) Vern Paxson TAs: Dilip Antony Joseph and Sukun Kim
|
|
- Janice Stafford
- 6 years ago
- Views:
Transcription
1 The World Wide Web EE 122: Intro to Communication Networks Fall 2006 (MW 4-5:30 in Donner 155) Vern Paxson TAs: Dilip Antony Joseph and Sukun Kim Materials with thanks to Jennifer Rexford, Ion Stoica, and colleagues at Princeton and UC Berkeley 1 Announcements Project #2 out Checkpoint due Weds Oct 18 Full project due Thurs Oct
2 Goals of Today s Lecture (Finish - retrieving mail from the server) Main ingredients of the Web URIs, HTML, HTTP Key properties of HTTP Request-response, stateless, and resource meta-data Performance of HTTP Parallel connections, persistent connections, pipelining Web components Clients, proxies, and servers Caching vs. replication 3 Retrieving From the Server Server stores incoming by mailbox Based on the From field in the message Users need to retrieve Variety of ways to do this: Directly by same-machine access to the mailbox Via Interactive Mail Access Protocol (IMAP) Supports concurrent access by multiple clients, server-side searchers, partial MIME fetches, multiple mailboxes Via HTTP (Web) E.g., GMail Via Post Office Protocol (POP) 4 2
3 POP3 Protocol Authorization phase Client commands: user: declare username pass: password Server responses +OK -ERR Transaction phase, client: list: list message numbers retr: retrieve message by number dele: delete quit S: +OK POP3 server ready C: user bob S: +OK C: pass hungry S: +OK user successfully logged on C: list S: S: S:. C: retr 1 S: <message 1 contents> S:. C: dele 1 C: retr 2 S: <message 1 contents> S:. C: dele 2 C: quit S: +OK POP3 server signing off 5 The World Wide Web 6 3
4 Main Components: URIs Uniform Resource Identifier (URI) Denotes a resource Could be its name Could be its location Which is better? Uniform Resource Name (URN) Names a resource independent of how to get it E.g., urn:ietf:rfc:2396 is a standard URN for RFC 2396 Uniform Resource Locator (URL) Specifies how to access a resource E.g., ftp://ftp.rfc-editor.org/in-notes/rfc2396.txt 7 URL Syntax protocol://hostname[:port]/directorypath/resource Protocol might be http, ftp, https, smtp, rtsp, In practice, hostname can instead be an IP address What does your browser (maybe) show for Port defaults to the standard port associated w/ protocol E.g., 80/tcp for http, 443/tcp for https Directory path is hierarchical, often reflecting file system Can extend resource to program executions as well MsgId=2604_ _29699_1123_1261_0_28917_3552_ &Search=&Nhead=f&YY=31454&order=down&sort=date&pos= 0&view=a&head=b 8 4
5 Main Components: HTML HyperText Markup Language (HTML) Representation of hypertext documents in ASCII format Format text, reference images, embed hyperlinks (HREF) Interpreted by Web browsers when rendering a page Straight-forward to learn Can basically start with a plain text file Easy to add formatting, references, bullets, etc. Automatically generated by authoring programs Tools to aid users in creating HTML files Your browser likely can show a page s raw HTML Web page Base HTML file referenced objects (e.g., images) Each object has its own URL 9 Main Components: HTTP HyperText Transfer Protocol (HTTP) Client-server protocol for transferring resources Important properties of HTTP Request-response protocol Reliance on a global URI namespace Resource metadata Stateless ASCII format % telnet 80 GET /vern/ HTTP/1.0 <blank line, i.e., CRLF> 10 5
6 HTTP Request Message Request message sent by a client Request line: method, resource, and protocol version Request headers: provide information or modify request Body: optional data (e.g., to POST data to the server) request line (GET, POST, HEAD commands) Carriage return, line feed indicates end of message header lines GET /somedir/page.html HTTP/1.1 Host: User-agent: Mozilla/4.0 Connection: close Accept-language:fr blank line Not optional 11 HTTP Response Message Response message sent by a server Status line: protocol version, status code, status phrase Response headers: provide information Body: optional data status line (protocol status code status phrase) data, e.g., requested HTML file header lines 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
7 Request Methods and Response Codes Request methods include GET: return current value of resource, run program, HEAD: return the meta-data associated with a resource POST: update a resource, provide input to a program, Response code classes 1xx: informational (e.g., 100 Continue ) 2xx: success (e.g., 200 OK ) 3xx: redirection (e.g., 304 Not Modified ) 4xx: client error (e.g., 404 Not Found ) 5xx: server error (e.g., 503 Service Unavailable ) (Similar to other ASCII app. protocols like SMTP, FTP) 13 HTTP Resource Meta-Data Meta-data Information relating to a resource but not part of the resource itself Examples of meta-data Size of a resource Type of the content Last modification time Typing of content borrowed from Multipurpose Internet Mail Extensions (MIME) Data format classification (e.g., Content-Type: text/html) Enables browsers to automatically launch a viewer 14 7
8 Example: Conditional GET Request Fetch resource only if it has changed at the server GET /~ee122/fa06/ HTTP/1.1 Host: inst.eecs.berkeley.edu User-Agent: Mozilla/4.03 If-Modified-Since: Sun, 27 Aug :25:50 GMT <CRLF> Server avoids wasting resources to send again Server inspects the last modified time of the resource and compares to the if-modified-since time Returns 304 Not Modified if resource has not changed. or a 200 OK with the latest version otherwise 15 Stateless Operation Stateless protocol Each request-response exchange treated independently Clients and servers not required to retain state Statelessness improves scalability Avoid need for server to retain info across requests Enable server to handle a higher rate of requests However, some applications need persistent state To uniquely identify the user or store temporary info E.g., personalize a Web page, compute profiles or access statistics by user, track a shopping cart. Done using cookies 16 8
9 Cookies Cookie Small(?) state stored by client on behalf of server Included in future requests to the server Request Response Set-Cookie: XYZ Request Cookie: XYZ 17 Web Components Clients Send requests and receive responses Browsers, spiders, and agents Servers Receive requests and send responses Store or generate the responses Proxies Act as a server for the client, and a client to the server Perform extra functions such as caching, anonymization, logging, transcoding, filtering access. Can be explicit or transparent ( interception ) 18 9
10 Web Browser Generating HTTP requests: User types URL, clicks a hyperlink, or selects bookmark User clicks reload, or submit on a Web page Automatic downloading of embedded images Fetches content Via one or multiple HTTP connections Layout of response Parsing HTML and rendering the Web page Invoking helper applications (e.g., Acrobat, RealPlayer) Maintains cache Storing recently-viewed objects Checking that cached objects are fresh 19 Web Server Web site vs. Web server Web site: collections of Web pages associated with a particular host name Web server: program that satisfies client requests for Web resources Handling a client request: Accept a TCP connection Read and parse the HTTP request message Translate the URL to a filename Determine whether the request is authorized Generate and transmit the response 20 10
11 Web Server: Generating a Response Returning a file URL corresponds to a file (e.g., /www/index.html) the server returns the file as the response along with the HTTP response header Returning meta-data with no body Example: client requests object If-modified-since Server checks if the object has been modified and simply returns HTTP/ Not Modified Dynamically-generated responses URL corresponds to a program the server needs to run Server runs the program and sends the output to client 21 5 Minute Break Questions Before We Proceed? 22 11
12 HTTP Performance Most Web pages have multiple objects ( items ) E.g., HTML file and a bunch of embedded images Obvious way to fetch these: one item at a time What is that directly analogous to? 23 Fetch HTTP Items: Stop & Wait Client Start fetching page Request item 1 Transfer item 1 Request item 2 Server Time Transfer item 2 Request item 3 Finish; display page Transfer item
13 HTTP Performance Most Web pages have multiple objects ( items ) E.g., HTML file and a bunch of embedded images Obvious way to fetch these: one item at a time What is that directly analogous to? What are the performance implications? Where does the analogy possibly break down? 25 Pipelined Requests/Responses Batch requests and responses to reduce the number of packets Multiple requests can be contained in one TCP segment Client Request 1 Request 2 Request 3 Server Small items (common) can also share segments Note: maintains order of responses Item 1 always arrives before item 2 Transfer 1 Transfer 2 Transfer 3 HTTP 1.1 feature (not in 1.0) 26 13
14 Concurrent Requests/Responses Use multiple connections to issue requests and responses in parallel Does not necessarily maintain order of responses Raises question of fairness Set of N parallel connections grabs bandwidth N times more aggressively than just one What s a reasonable/fair limit as traffic competes with that of other users? Client Request 1 Request 2 Request 3 Transfer 2 Transfer 3 Transfer 1 Server 27 Persistent Connections Handle multiple transfers per connection Including transfers subsequent to imaging current page Maintain TCP connection across multiple requests Either client or server can tear down the connection Performance advantages Avoid overhead of connection set-up and tear-down Allow TCP to learn more accurate RTT estimate Allow the TCP congestion window to increase I.e, leverage previously discovered bandwidth 28 14
15 Performance - Caching Exploit locality of reference Modifier to GET requests: If-modified-since returns not modified if resource not modified since specified time Response header: Expires specifies for how long it s safe to cache the resource Or: No-cache ignore all caches; always get resource directly from server Features best for use by HTTP proxies Locality of reference increases if many clients share a proxy 29 HTTP Without Caching Many clients transfer same information Generates redundant server and network load Clients experience unnecessary latency Server Backbone ISP ISP-1 ISP-2 Clients 30 15
16 Reverse Proxies Cache documents close to server decrease server load Typically done by content providers Only works for static content Server Reverse proxies Backbone ISP ISP-1 ISP-2 Clients 31 Forward Proxies Cache documents close to clients reduce network traffic and decrease latency Typically done by ISPs or corporate LANs Server Reverse proxies Backbone ISP Forward proxies ISP-1 ISP-2 Clients 32 16
17 Content Distribution Networks (CDNs) Integrate forward and reverse caching functionality into one overlay network (usually) administrated by one entity Example: Akamai Documents are cached both as a result of clients requests (pull) due to being pushed in expectation of high access rate Besides caching, do processing, e.g., Handle dynamic web pages Transcoding 33 CDNs (cont d) Server Backbone ISP CDN Forward proxies ISP-1 ISP-2 Clients 34 17
18 Example: Akamai Akamai creates new domain names for each client content provider. e.g., i.a.cnn.net = CNAME custom.i.cnn.net.edgesuite.net custom.i.cnn.net.edgesuite.net = CNAME a1921.aol.akamai.net Customer content provider modifies content so that embedded URLs reference new domains: CNN page s HREF s refer to i.a.cnn.net Customer pushes content out to Akamai as it changes Or: Akamai pulls it on demand w/ usual caching mech. Both CNN & Akamai have control over load distribution 35 Example: Akamai CDN DNS server for cnn.com cnn.com Akamaizes its content. lookup a1921.aol.akamai.net akamai.net DNS servers a Akamai servers store/cache secondary content for Akamaized services. b GET c local DNS server Akamaized response object has inline URLs for secondary content at (after resolving CNAMEs) a1921.aol.akamai.net and other Akamai-managed DNS names
19 Hosting: Multiple Sites Per Machine Multiple Web sites on a single machine Hosting company runs the Web server on behalf of multiple sites (e.g., and Problem: GET index.html Is it for or Solution #1: multiple servers on the same machine Run multiple Web servers on the machine Have a separate IP address (or port) for each server Solution #2: include site name in the HTTP request Run a single Web server with a single IP address and include Host header (e.g., Host: ) Required header with HTTP Hosting: Multiple Machines Per Site Replicating a popular Web site Running on multiple machines to handle the load and to place content closer to the clients particularly if content isn t cacheable by proxies/cdns Problem: directing client to a particular replica To balance load across the server replicas To pair clients with nearby servers Solution #1: manual selection by clients Each replica has its own site name A Web page lists the replicas (e.g., by name, location) and asks clients to click on a hyperlink to pick 38 19
20 Hosting: Multiple Machines Per Site Solution #2: single IP address, multiple machines Run multiple machines behind a single IP address Load Balancer Ensure all packets from a single TCP connection go to the same replica 39 Hosting: Multiple Machines Per Site Solution #3: multiple addresses, multiple machines Same name but different addresses for all of the replicas Configure DNS server to return different addresses Internet
21 Caching vs. Replication Motivations for moving content close to users Reduce latency for the user Reduce load on the network and the server Caching Replicating the content on demand after a request Storing the response message locally for future use May need to verify if the response has changed and some responses are not cacheable Replication Planned replication of the content in multiple locations Updating of resources handled outside of HTTP Can replicate scripts that create dynamic responses 41 Conclusions Key ideas underlying the Web Uniform Resource Identifier (URI), Locator (URL) HyperText Markup Language (HTML) HyperText Transfer Protocol (HTTP) Browser helper applications based on content type Performance implications Concurrent connections, pipelining, persistent conns. Main Web components Clients, servers, proxies, CDNs Next lecture: drilling down to the link layer P&D , 2.6,
Announcements. The World Wide Web. Retrieving From the Server. Goals of Today s Lecture. The World Wide Web. POP3 Protocol
Announcements The World Wide Web Project #2 out Checkpoint due Weds Oct 18 Full project due Thurs Oct 26 EE 122: Intro to Communication Networks Fall 2006 (MW 4-5:30 in Donner 155) Vern Paxson TAs: Dilip
More informationAnnouncements. The World Wide Web. Goals of Today s Lecture. The World Wide Web HTML. Web Components
Announcements The World Wide Web Project #1 - Milestone 1 Due 11pm Tonight No slip days! EE 122: Intro to Communication Networks Fall 2007 (WF 4-5:30 in Cory 277) Lisa Fowler / Vern Paxson TAs: Lisa Fowler,
More informationContent Delivery on the Web: HTTP and CDNs
Content Delivery on the Web: HTTP and CDNs Mark Handley UCL Computer Science CS 3035/GZ01 Outline The Web: HTTP and caching The Hypertext Transport Protocol: HTTP HTTP performance Persistent and concurrent
More informationCS457 Applications. Fall 2014
CS457 Applications Fall 2014 Topics Main ingredients of the Web URL, HTML, and HTTP Key properties of HTTP Request-response, stateless, and resource meta-data Web components Clients, proxies, and servers
More informationComputer Networks. Wenzhong Li. Nanjing University
Computer Networks Wenzhong Li Nanjing University 1 Chapter 8. Internet Applications Internet Applications Overview Domain Name Service (DNS) Electronic Mail File Transfer Protocol (FTP) WWW and HTTP Content
More informationWWW: the http protocol
Internet apps: their protocols and transport protocols Application e-mail remote terminal access Web file transfer streaming multimedia remote file Internet telephony Application layer protocol smtp [RFC
More informationCMSC 332 Computer Networking Web and FTP
CMSC 332 Computer Networking Web and FTP Professor Szajda CMSC 332: Computer Networks Project The first project has been posted on the website. Check the web page for the link! Due 2/2! Enter strings into
More informationWeb, HTTP and Web Caching
Web, HTTP and Web Caching 1 HTTP overview HTTP: hypertext transfer protocol Web s application layer protocol client/ model client: browser that requests, receives, displays Web objects : Web sends objects
More informationApplication Protocols and HTTP
Application Protocols and HTTP 14-740: Fundamentals of Computer Networks Bill Nace Material from Computer Networking: A Top Down Approach, 6 th edition. J.F. Kurose and K.W. Ross Administrivia Lab #0 due
More informationReview of Previous Lecture
Review of Previous Lecture Network access and physical media Internet structure and ISPs Delay & loss in packet-switched networks Protocol layers, service models Some slides are in courtesy of J. Kurose
More informationCSC 4900 Computer Networks:
CSC 4900 Computer Networks: Email Professor Henry Carter Fall 2017 Villanova University Department of Computing Sciences Review Last week we talked about design principles, and the application protocols
More information1-1. Switching Networks (Fall 2010) EE 586 Communication and. September Lecture 10
EE 586 Communication and Switching Networks (Fall 2010) Lecture 10 September 17 2010 1-1 Announcement Send me your group and get group ID HW3 (short) out on Monday Personal leave for next two weeks No
More informationLecture 7b: HTTP. Feb. 24, Internet and Intranet Protocols and Applications
Internet and Intranet Protocols and Applications Lecture 7b: HTTP Feb. 24, 2004 Arthur Goldberg Computer Science Department New York University artg@cs.nyu.edu WWW - HTTP/1.1 Web s application layer protocol
More informationEECS 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 informationHyperText Transfer Protocol
Outline Introduce Socket Programming Domain Name Service (DNS) Standard Application-level Protocols email (SMTP) HTTP HyperText Transfer Protocol Defintitions A web page consists of a base HTML-file which
More informationChapter 2: outline. 2.6 P2P applications 2.7 socket programming with UDP and TCP
Chapter 2: outline 2.1 principles of network applications app architectures app requirements 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
More informationLecture 7 Application Layer. Antonio Cianfrani DIET Department Networking Group netlab.uniroma1.it
Lecture 7 Application Layer Antonio Cianfrani DIET Department Networking Group netlab.uniroma1.it Application-layer protocols Application: communicating, distributed processes running in network hosts
More informationNetworking. Layered Model. DoD Model. Application Layer. ISO/OSI Model
Networking Networking is concerned with the physical topology of two or more communicating entities and the logical topology of data transmission. Layered Model Systems communicate over a shared communication
More informationChapter 2 Application Layer
Chapter 2 Application Layer Reference: Computer Networking: A Top Down Approach 4 th edition. Jim Kurose, Keith Ross Addison-Wesley, July 2007. Application Layer 1 Chapter 2: Application layer 2.1 Principles
More informationLayered Model. DoD Model. ISO/OSI Model
Data Communications vs Networking (later) Communication is concerned with the transmission of data over a communication medium/channel between two entities. Here we are more concerned about EE issues such
More informationCS4/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 informationCSCI-1680 WWW Rodrigo Fonseca
CSCI-1680 WWW Rodrigo Fonseca Based partly on lecture notes by Sco2 Shenker and John Janno6 Administrivia HW3 out today Will cover HTTP, DNS, TCP TCP Milestone II coming up on Monday Make sure you sign
More informationCSCI-1680 WWW Rodrigo Fonseca
CSCI-1680 WWW Rodrigo Fonseca Based partly on lecture notes by Scott Shenker and John Jannotti Precursors 1945, Vannevar Bush, Memex: a device in which an individual stores all his books, records, and
More informationInternet Content Distribution
Internet Content Distribution Chapter 1: Introduction Jussi Kangasharju Chapter Outline Introduction into content distribution Basic concepts TCP DNS HTTP Outline of the rest of the course Kangasharju:
More informationEE 122: HyperText Transfer Protocol (HTTP)
Background EE 122: HyperText Transfer Protocol (HTTP) Ion Stoica Nov 25, 2002 World Wide Web (WWW): a set of cooperating clients and servers that communicate through HTTP HTTP history - First HTTP implementation
More informationCSCE 463/612 Networks and Distributed Processing Spring 2018
CSCE 463/612 Networks and Distributed Processing Spring 2018 Application Layer II Dmitri Loguinov Texas A&M University February 6, 2018 Original slides copyright 1996-2004 J.F Kurose and K.W. Ross 1 Chapter
More informationTraditional Web Based Systems
Chapter 12 Distributed Web Based Systems 1 Traditional Web Based Systems The Web is a huge distributed system consisting of millions of clients and servers for accessing linked documents Servers maintain
More informationCS 194: Distributed Systems WWW and Web Services
The Web History (I) CS 194: Distributed Systems WWW and Web Services Scott Shenker and Ion Stoica Computer Science Division Department of Electrical Engineering and Computer Sciences University of California,
More informationOutline Computer Networking. HTTP Basics (Review) How to Mark End of Message? (Review)
Outline 15-441 Computer Networking Lecture 25 The Web HTTP review and details (more in notes) Persistent HTTP review HTTP caching Content distribution networks Lecture 19: 2006-11-02 2 HTTP Basics (Review)
More informationIntroduc)on to Computer Networks
Introduc)on to Computer Networks COSC 4377 Lecture 3 Spring 2012 January 25, 2012 Announcements Four HW0 s)ll missing HW1 due this week Start working on HW2 and HW3 Re- assess if you found HW0/HW1 challenging
More informationLecture 6 Application Layer. Antonio Cianfrani DIET Department Networking Group netlab.uniroma1.it
Lecture 6 Application Layer Antonio Cianfrani DIET Department Networking Group netlab.uniroma1.it Application-layer protocols Application: communicating, distributed processes running in network hosts
More informationNetworked Applications: Sockets. Goals of Todayʼs Lecture. End System: Computer on the ʻNet. Client-server paradigm End systems Clients and servers
Networked Applications: Sockets CS 375: Computer Networks Spring 2009 Thomas Bressoud 1 Goals of Todayʼs Lecture Client-server paradigm End systems Clients and servers Sockets and Network Programming Socket
More informationWeb, HTTP, Caching, CDNs
Web, HTTP, Caching, CDNs Outline Web HyperText Transfer Protocol (HTTP) Inefficiencies in HTTP HTTP Persistent Connections Caching CDNs Consistent Hashing CS 640 1 Web Original goal of the web: mechanism
More informationINTERNET ENGINEERING. HTTP Protocol. Sadegh Aliakbary
INTERNET ENGINEERING HTTP Protocol Sadegh Aliakbary Agenda HTTP Protocol HTTP Methods HTTP Request and Response State in HTTP Internet Engineering 2 HTTP HTTP Hyper-Text Transfer Protocol (HTTP) The fundamental
More informationCMPE 151: Network Administration. Servers
CMPE 151: Network Administration Servers Announcements Unix shell+emacs tutorial. Basic Servers Telnet/Finger FTP Web SSH NNTP Let s look at the underlying protocols. Client-Server Model Request Response
More informationChapter 2: Application Layer. Chapter 2 Application Layer. Some network apps. Application architectures. Chapter 2: Application layer
Chapter 2 Application Layer Computer Networking: A Top Down Approach, 5 th edition. Jim Kurose, Keith Ross Addison-Wesley, April 2009. Chapter 2: Application Layer Our goals: conceptual, implementation
More informationELEC / 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 Homework #1 Assigned today Due in one week Application layer: DNS, HTTP, protocols Recommend you start early
More informationElectronic Mail. Three Components: SMTP SMTP. SMTP mail server. 1. User Agents. 2. Mail Servers. 3. SMTP protocol
SMTP Electronic Mail Three Components: 1. User Agents a.k.a. mail reader e.g., gmail, Outlook, yahoo 2. Mail Servers mailbox contains incoming messages for user message queue of outgoing (to be sent) mail
More informationWEB TECHNOLOGIES CHAPTER 1
WEB TECHNOLOGIES CHAPTER 1 WEB ESSENTIALS: CLIENTS, SERVERS, AND COMMUNICATION Modified by Ahmed Sallam Based on original slides by Jeffrey C. Jackson THE INTERNET Technical origin: ARPANET (late 1960
More informationWorld-Wide Web Protocols CS 571 Fall Kenneth L. Calvert All rights reserved
World-Wide Web Protocols CS 571 Fall 2006 2006 Kenneth L. Calvert All rights reserved World-Wide Web The Information Universe World-Wide Web structure: hypertext Nonlinear presentation of information Key
More informationFoundations of Telematics
Foundations of Telematics Chapter 2 Application Layer Principles of network applications Important application protocols Using sockets Acknowledgement: These slides have been prepared by J.F. Kurose and
More informationThe Application Layer HTTP and FTP
The Application Layer HTTP and FTP File Transfer Protocol (FTP) Allows a user to copy files to/from remote hosts Client program connects to FTP server provides a login id and password allows the user to
More informationNetworked Applications: Sockets. End System: Computer on the Net
Networked Applications: Sockets Topics Programmer s view of the Internet Sockets interface End System: Computer on the Net Internet Also known as a host 2 Page 1 Clients and Servers Client program Running
More informationChapter 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 informationApplication Layer: The Web and HTTP Sec 2.2 Prof Lina Battestilli Fall 2017
CSC 401 Data and Computer Communications Networks Application Layer: The Web and HTTP Sec 2.2 Prof Lina Battestilli Fall 2017 Outline Application Layer (ch 2) 2.1 principles of network applications 2.2
More informationApplications & Application-Layer Protocols: The Web & HTTP
CPSC 360 Network Programming Applications & Application-Layer Protocols: The Web & HTTP Michele Weigle Department of Computer Science Clemson University mweigle@cs.clemson.edu http://www.cs.clemson.edu/~mweigle/courses/cpsc360
More informationDistributed Systems are Everywhere!" CS162 Operating Systems and Systems Programming Lecture 22 Client-Server" Client-Server" Message Passing"
CS162 Operating Systems and Systems Programming Lecture 22 Client- April 18, 2011! Ion Stoica! http://inst.eecs.berkeley.edu/~cs162! Distributed Systems are Everywhere!" We need (want?) to share physical
More informationInternet Design Principles
Internet Design Principles EE 122: Intro to Communication Networks Fall 2006 (MW 4-5:30 in Donner 155) Vern Paxson TAs: Dilip Antony Joseph and Sukun Kim http://inst.eecs.berkeley.edu/~ee122/ Materials
More informationLecture 6: Application Layer Web proxies, , and SMTP
Lecture 6: Application Layer Web proxies, Email, and SMTP COMP 332, Spring 2018 Victoria Manfredi Acknowledgements: materials adapted from Computer Networking: A Top Down Approach 7 th edition: 1996-2016,
More informationApplication Layer. Applications and application-layer protocols. Goals:
Application Layer Goals: Conceptual aspects of network application protocols Client paradigm Service models Learn about protocols by examining popular application-level protocols HTTP DNS 1 Applications
More informationHTTP Reading: Section and COS 461: Computer Networks Spring 2013
HTTP Reading: Section 9.1.2 and 9.4.3 COS 461: Computer Networks Spring 2013 1 Recap: Client-Server Communication Client sometimes on Initiates a request to the server when interested E.g., Web browser
More informationTCP Performance. EE 122: Intro to Communication Networks. Fall 2006 (MW 4-5:30 in Donner 155) Vern Paxson TAs: Dilip Antony Joseph and Sukun Kim
TCP Performance EE 122: Intro to Communication Networks Fall 2006 (MW 4-5:30 in Donner 155) Vern Paxson TAs: Dilip Antony Joseph and Sukun Kim http://inst.eecs.berkeley.edu/~ee122/ Materials with thanks
More informationProduced by. Mobile Application Development. Higher Diploma in Science in Computer Science. Eamonn de Leastar
Mobile Application Development Higher Diploma in Science in Computer Science Produced by Eamonn de Leastar (edeleastar@wit.ie) Department of Computing, Maths & Physics Waterford Institute of Technology
More informationInternet Architecture. Web Programming - 2 (Ref: Chapter 2) IP Software. IP Addressing. TCP/IP Basics. Client Server Basics. URL and MIME Types HTTP
Web Programming - 2 (Ref: Chapter 2) TCP/IP Basics Internet Architecture Client Server Basics URL and MIME Types HTTP Routers interconnect the network TCP/IP software provides illusion of a single network
More informationApplication Level Protocols
Application Level Protocols 2 Application Level Protocols Applications handle different kinds of content e.g.. e-mail, web pages, voice Different types of content require different kinds of protocols Application
More information3. WWW and HTTP. Fig.3.1 Architecture of WWW
3. WWW and HTTP The World Wide Web (WWW) is a repository of information linked together from points all over the world. The WWW has a unique combination of flexibility, portability, and user-friendly features
More informationChapter 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 informationWorld Wide Web. Before WWW
FEUP, João Neves World Wide Web Joao.Neves@fe.up.pt CAcer t WoT User Digitally signed by CAcert WoT User DN: cn=cacert WoT User, email=joao.neves@i nescporto.pt, email=b2d718a54c3 83ce1a9d48aa87e2ef 687ee8769f0
More informationNetwork Applications Principles of Network Applications
Network Applications Principles of Network Applications A Network application is an application running on one host and provides communication to another application running on a different host. At the
More informationNotes beforehand... For more details: See the (online) presentation program.
Notes beforehand... Notes beforehand... For more details: See the (online) presentation program. Topical overview: main arcs fundamental subjects advanced subject WTRs Lecture: 2 3 4 5 6 7 8 Today: the
More informationChapter 2. Application Layer. Chapter 2: Application Layer. Application layer - Overview. Some network apps. Creating a network appication
Mobile network Chapter 2 The Yanmin Zhu Department of Computer Science and Engineering Global ISP Home network Regional ISP Institutional network CSE Department 1 CSE Department 2 Application layer - Overview
More informationIP Addressing & Forwarding
IP Addressing & Forwarding EE 122: Intro to Communication Networks Fall 2006 (MW 4-5:30 in Donner 155) Vern Paxson TAs: Dilip Antony Joseph and Sukun Kim http://inst.eecs.berkeley.edu/~ee122/ Materials
More informationCS 43: Computer Networks. 12: and SMTP September 28, 2018
CS 43: Computer Networks 12: Email and SMTP September 28, 2018 A. HTTP Mail s communicate using B. IMAP C. POP D. SMTP Lecture 12 - Slide 2 Mail s typically A. send messages directly from the sending s
More informationCS 43: Computer Networks. Layering & HTTP September 7, 2018
CS 43: Computer Networks Layering & HTTP September 7, 2018 Last Class: Five-layer Internet Model Application: the application (e.g., the Web, Email) Transport: end-to-end connections, reliability Network:
More informationCS 43: Computer Networks. HTTP September 10, 2018
CS 43: Computer Networks HTTP September 10, 2018 Reading Quiz Lecture 4 - Slide 2 Five-layer protocol stack HTTP Request message Headers protocol delineators Last class Lecture 4 - Slide 3 HTTP GET vs.
More informationSCS3004 Networking Technologies Application Layer Protocols
SCS3004 Networking Technologies Application Layer Protocols Dr. Ajantha Atukorale University of Colombo School of Computing (UCSC) 2 TCP/IP Suit Applications and application-layer layer protocols Application:
More informationChapter 2: outline. 2.6 P2P applications 2.7 socket programming with UDP and TCP
Chapter 2: outline 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 and TCP Application
More informationECE697AA Lecture 2. Today s lecture
ECE697AA Lecture 2 Application Layer: HTTP Tilman Wolf Department of Electrical and Computer Engineering 09/04/08 Protocol stack Application layer Client-server architecture Example protocol: HTTP Demo
More informationCS 355. Computer Networking. Wei Lu, Ph.D., P.Eng.
CS 355 Computer Networking Wei Lu, Ph.D., P.Eng. Chapter 2: Application Layer Overview: Principles of network applications? Introduction to Wireshark Web and HTTP FTP Electronic Mail SMTP, POP3, IMAP DNS
More informationApplication Layer Introduction; HTTP; FTP
Application Layer Introduction; HTTP; FTP Tom Kelliher, CS 325 Feb. 4, 2011 1 Administrivia Announcements Assignment Read 2.4 2.6. From Last Time Packet-switched network characteristics; protocol layers
More informationEEC-682/782 Computer Networks I
EEC-682/782 Computer Networks I Lecture 20 Wenbing Zhao w.zhao1@csuohio.edu http://academic.csuohio.edu/zhao_w/teaching/eec682.htm (Lecture nodes are based on materials supplied by Dr. Louise Moser at
More informationCOMPUTER NETWORK. Homework #1. Due Date: March 29, 2017 in class
Computer Network Homework#1 COMPUTER NETWORK Homework #1 Due Date: March 29, 2017 in class Question 1 What is the role of HTTP in a network application? What other components are needed to complete a Web
More informationCSE 123b Communications Software
CSE 123b Communications Software Spring 2002 Lecture 13: Content Distribution Networks (plus some other applications) Stefan Savage Some slides courtesy Srini Seshan Today s class Quick examples of other
More informationInformation 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 informationWeb Technology. COMP476 Networked Computer Systems. Hypertext and Hypermedia. Document Representation. Client-Server Paradigm.
Web Technology COMP476 Networked Computer Systems - Paradigm The method of interaction used when two application programs communicate over a network. A server application waits at a known address and a
More informationLecture 25. Tuesday, November 21 CS 475 Networks - Lecture 25 1
Lecture 25 Reminders: Homework 7 due today. Homework 8 posted. Due at the beginning of the last day of class for final exam review. Programming Project 6 posted. Final project worth double. Due by 4:30pm,
More informationLecture 3. HTTP v1.0 application layer protocol. into details. HTTP 1.0: RFC 1945, T. Berners-Lee HTTP 1.1: RFC 2068, 2616
Lecture 3. HTTP v1.0 application layer protocol into details HTTP 1.0: RFC 1945, T. Berners-Lee Lee,, R. Fielding, H. Frystyk, may 1996 HTTP 1.1: RFC 2068, 2616 Ascii protocol uses plain text case sensitive
More informationCSE/EE 461 HTTP and the Web
CSE/EE 461 HTTP and the Web Last Time The Transport Layer Focus How does TCP share bandwidth? Topics AIMD Slow Start Application Presentation Session Transport Network Data Link Fast Retransmit / Fast
More informationApplication Layer Chapter 2
Application Layer Chapter 2 Silvia Giordano SUPSI CH-6928 Manno silvia.giordano@supsi.ch http://www.supsi.ch SUPSI-DTI Silvia Giordano 10/06/2004 Application Layer 1 Chapter goals: learn about protocols
More informationThe Application Layer: SMTP, FTP
The Application Layer: SMTP, FTP CS 352, Lecture 5 http://www.cs.rutgers.edu/~sn624/352-s19 Srinivas Narayana 1 Recap: Application-layer protocols DNS: lookup a (machine-readable) address using a (humanreadable)
More informationCompSci 356: Computer Network Architectures. Lecture 23: Application Layer Protocols Chapter 9.1. Xiaowei Yang
CompSci 356: Computer Network Architectures Lecture 23: Application Layer Protocols Chapter 9.1 Xiaowei Yang xwy@cs.duke.edu The Internet Architecture Application layer Transport layer / Layer 4 Network
More informationCOMPUTER NETWORKS AND COMMUNICATION PROTOCOLS. Web Access: HTTP Mehmet KORKMAZ
COMPUTER NETWORKS AND COMMUNICATION PROTOCOLS Web Access: HTTP 16501018 Mehmet KORKMAZ World Wide Web What is WWW? WWW = World Wide Web = Web!= Internet Internet is a global system of interconnected computer
More informationChapter 2 Application Layer
Chapter 2 Application Layer Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley March 2012 Application Layer 2-1 Some network apps e-mail web text messaging remote
More information13. Internet Applications 최양희서울대학교컴퓨터공학부
13. Internet Applications 최양희서울대학교컴퓨터공학부 Internet Applications Telnet File Transfer (FTP) E-mail (SMTP) Web (HTTP) Internet Telephony (SIP/SDP) Presence Multimedia (Audio/Video Broadcasting, AoD/VoD) Network
More informationLecture Overview : Computer Networking. Applications and Application-Layer Protocols. Client-Server Paradigm
Lecture Overview 15-441: Computer Networking Last time: Protocol stacks and layering OSI and TCP/IP models Application requirements Lecture 3: Design Philosophy & Applications Application examples ftp
More informationAnnouncements. IP Addressing & Forwarding. Designing IP s Addresses. Goals of Today s Lecture. Grouping Related Hosts. IP Addresses (IPv4)
Announcements IP Addressing & Forwarding EE 122 Intro to Communication Networks Fall 2006 (MW 4-530 in Donner 155) Vern Paxson TAs Dilip Antony Joseph and Sukun Kim http//inst.eecs.berkeley.edu/~ee122/
More informationCSC 401 Data and Computer Communications Networks
CSC 401 Data and Computer Communications Networks Application Layer: Cookies, Web Caching, SMTP Sec 2.2.4-2.4 Prof. Lina Battestilli Fall 2017 Outline Application Layer (ch 2) 2.1 principles of network
More informationCS 5450 HTTP. Vitaly Shmatikov
CS 5450 HTTP Vitaly Shmatikov Browser and Network Browser OS Hardware request reply website Network slide 2 HTML A web page includes Base HTML file Referenced objects (e.g., images) HTML: Hypertext Markup
More informationToday s class. CSE 123b Communications Software. Telnet. Network File System (NFS) Quick descriptions of some other sample applications
CSE 123b Communications Software Spring 2004 Today s class Quick examples of other application protocols Mail, telnet, NFS Content Distribution Networks (CDN) Lecture 12: Content Distribution Networks
More informationCOMP6218: Content Caches. Prof Leslie Carr
COMP6218: Content Caches Prof Leslie Carr 1 Slashdot.org The Slashdot effect, also known as slashdotting, occurs when a popular website links to a smaller site, causing a massive increase in traffic 2
More informationSession 8. Reading and Reference. en.wikipedia.org/wiki/list_of_http_headers. en.wikipedia.org/wiki/http_status_codes
Session 8 Deployment Descriptor 1 Reading Reading and Reference en.wikipedia.org/wiki/http Reference http headers en.wikipedia.org/wiki/list_of_http_headers http status codes en.wikipedia.org/wiki/_status_codes
More informationMidterm Review. EE122 Fall 2011 Scott Shenker
Midterm Review EE122 Fall 2011 Scott Shenker http://inst.eecs.berkeley.edu/~ee122/ Materials with thanks to Jennifer Rexford, Ion Stoica, Vern Paxson and other colleagues at Princeton and UC Berkeley 1
More informationInternet Technology. 03r. Application layer protocols: . Paul Krzyzanowski. Rutgers University. Spring 2016
Internet Technology 03r. Application layer protocols: email Paul Krzyzanowski Rutgers University Spring 2016 1 Email: SMTP (Simple Mail Transfer Protocol) 2 Simple Mail Transfer Protocol (SMTP) Protocol
More informationLecture 04: Application Layer (Part 01) Principles and the World Wide Web (HTTP) Dr. Anis Koubaa
NET 331 Computer Networks Lecture 04: Application Layer (Part 01) Principles and the World Wide Web (HTTP) Dr. Anis Koubaa Reformatted slides from textbook Computer Networking a top-down appraoch, Fifth
More informationApplications & Application-Layer Protocols: FTP and (SMTP & POP)
COMP 431 Internet Services & Protocols Applications & Application-Layer Protocols: FTP and E ( & POP) Jasleen Kaur February 7, 2019 Application-Layer Protocols Outline Example client/ systems and their
More informationApplication 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 information0 0& Basic Background. Now let s get into how things really work!
+,&&-# Department of Electrical Engineering and Computer Sciences University of California Berkeley Basic Background General Overview of different kinds of networks General Design Principles Architecture
More informationEECS 3214: Computer Network Protocols and Applications
EECS 3214: Computer Network Protocols and Applications Suprakash Datta Course page: http://www.eecs.yorku.ca/course/3214 Office: LAS 3043 Email: datta [at] cse.yorku.ca These slides are adapted from Jim
More informationHTTP and Web Content Delivery
HTTP and Web Content Delivery COS 461: Computer Networks Spring 2011 Mike Freedman hgp://www.cs.princeton.edu/courses/archive/spring11/cos461/ 2 Outline Layering HTTP HTTP conneclon management and caching
More informationReview for Internet Introduction
Review for Internet Introduction What s the Internet: Two Views View 1: Nuts and Bolts View billions of connected hosts routers and switches protocols control sending, receiving of messages network of
More information