CSE 461 HTTP and the Web. This Lecture  HTTP and the Web (but not HTML)  Focus  How do Web transfers work?  Topics  HTTP, HTTP1.1  Performance Improvements.

Slides:



Advertisements
Similar presentations
TCP/IP Protocol Suite 1 Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Chapter 22 World Wide Web and HTTP.
Advertisements

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)
Web basics HTTP – – URI/L/Ns – HTML –
Chapter 9 Application Layer, HTTP Professor Rick Han University of Colorado at Boulder
Hypertext Transfer Protocol Kyle Roth Mark Hoover.
Cis e-commerce -- lecture #6: Content Distribution Networks and P2P (based on notes from Dr Peter McBurney © )
Chapter 2: Application Layer
Layer 7- Application Layer
EEC-484/584 Computer Networks Discussion Session for HTTP and DNS Wenbing Zhao
HyperText Transfer Protocol (HTTP) Computer Networks Computer Networks Spring 2012 Spring 2012.
How the web works: HTTP and CGI explained
1 Web Proxies Dr. Rocky K. C. Chang 6 November 2005.
1 HTTP - Hypertext Transfer Protocol Arthur : Yigal Eliaspur Date :
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
Application Layer  We will learn about protocols by examining popular application-level protocols  HTTP  FTP  SMTP / POP3 / IMAP  Focus on client-server.
Performance Comparison of Congested HTTP/2 Links Brian Card, CS /7/
Application Layer  We will learn about protocols by examining popular application-level protocols  HTTP  FTP  SMTP / POP3 / IMAP  Focus on client-server.
Rensselaer Polytechnic Institute CSC-432 – Operating Systems David Goldschmidt, Ph.D.
IT 210 The Internet & World Wide Web introduction.
Web Server Design Week 5 Old Dominion University Department of Computer Science CS 495/595 Spring 2010 Martin Klein 2/10/10.
Krerk Piromsopa. Web Caching Krerk Piromsopa. Department of Computer Engineering. Chulalongkorn University.
FTP (File Transfer Protocol) & Telnet
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.
Rensselaer Polytechnic Institute Shivkumar Kalvanaraman, Biplab Sikdar 1 The Web: the http protocol http: hypertext transfer protocol Web’s application.
2: Application Layer1 Internet apps: their protocols and transport protocols Application remote terminal access Web file transfer streaming multimedia.
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,
Web application architecture
Lecture#2 on Internet and World Wide Web. Internet Applications Electronic Mail ( ) Electronic Mail ( ) Domain mail server collects incoming mail.
1 Computer Communication & Networks Lecture 28 Application Layer: HTTP & WWW p Waleed Ejaz
E-Business William R. Mussatto CyberStrategies, Inc. 12/2/2000.
CIS 1310 – HTML & CSS 1 Introduction to the Internet.
2: Application Layer1 Chapter 2 outline r 2.1 Principles of app layer protocols r 2.2 Web and HTTP r 2.3 FTP r 2.4 Electronic Mail r 2.5 DNS r 2.6 Socket.
Sockets process sends/receives messages to/from its socket
Web Design (1) Terminology. Coding ‘languages’ (1) HTML - Hypertext Markup Language - describes the content of a web page CSS - Cascading Style Sheets.
The Web and Web Services Jim Graham NR 621 Spring 2009.
Application Layer 2-1 Chapter 2 Application Layer 2.2 Web and HTTP.
CIS679: Lecture 13 r Review of Last Lecture r More on HTTP.
Networking Fundamentals. Basics Network – collection of nodes and links that cooperate for communication Nodes – computer systems –Internal (routers,
1 WWW. 2 World Wide Web Major application protocol used on the Internet Simple interface Two concepts –Point –Click.
Operating Systems Lesson 12. HTTP vs HTML HTML: hypertext markup language ◦ Definitions of tags that are added to Web documents to control their appearance.
Application Layer 2-1 Lecture 4: Web and HTTP. Web and HTTP First, a review… web page consists of objects object can be HTML file, JPEG image, Java applet,
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 (*)
4343 X2 – Outline The Domain Name System The Web.
1 COMP 431 Internet Services & Protocols HTTP Persistence & Web Caching Jasleen Kaur February 11, 2016.
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.
Computer Network Architecture Lecture 6: OSI Model Layers Examples 1 20/12/2012.
HyperText Transfer Protocol (HTTP) Deepti Kulkarni CISC 856: TCP/IP and Upper Layer Protocols Fall 2008 Acknowledgements Professor Amer Richi Gupta.
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.
1 The World Wide Web Architectural Overview Static Web Documents Dynamic Web Documents HTTP – The HyperText Transfer Protocol Performance Enhancements.
End-host IP: MAC: 11:11:11:11:11 gateway IP: MAC: 22:22:22:22:22 Google server IP: interne t interface DNS server IP:
CSE541: Web Applications Special Thanks to M. Abdur Rahman.
Web Server Design Week 6 Old Dominion University Department of Computer Science CS 495/595 Spring 2006 Michael L. Nelson 2/13/06.
Block 5: An application layer protocol: HTTP
How HTTP Works Made by Manish Kushwaha.
Web Caching? Web Caching:.
Computer Communication & Networks
CSE 461 HTTP and the Web.
Hyper Text Transfer Protocol
HyperText Transfer Protocol
EE 122: HyperText Transfer Protocol (HTTP)
Information Retrieval and Web Design
CSCI-351 Data communication and Networks
Presentation transcript:

CSE 461 HTTP and the Web

This Lecture  HTTP and the Web (but not HTML)  Focus  How do Web transfers work?  Topics  HTTP, HTTP1.1  Performance Improvements Protocol Latency Caching Physical Data Link Network Transport Session Presentation Application

Web Protocol Stacks  To view the URL the client makes a TCP connection to port 80 of the server, by it’s IP address, sends the HTTP request, receives the HTML for page.html as the response, repeats the process for inline images, and displays it. Ethernet IP TCP HTTP apache Ethernet IP TCP HTTP Firefox request response OS kernel user space serverclient

Simple HTTP 1.0  HTTP is a tiny, text-based language  The GET method requests an object  There are HTTP headers, like “Content-Length:”, etc.  Try “telnet server 80” then “GET index.html HTTP/1.0”  Other methods: POST, HEAD,… see RFC for details GET index.html GET ad.gif GET logo.gif

HTTP Request/Response in Action  Problem is that:  Web pages are made up of many files Most are about 25K first html, 130k total (2003), 300k in 2008  files are mapped to connections  For each file  Setup/Teardown Time-Wait table bloat  2RTT “first byte” latency  Slow Start+ AIMD Congestion Avoidance  The goals of HTTP and TCP protocols are not aligned.

TCP Behavior for Short Connections Over Slow Networks RTT=70ms Improving HTTP Latency, Padmanabhan and Mogul, 1994

HTTP1.1: Persistent Connections  Idea: Use one TCP connection for multiple page downloads (or just HTTP methods)  Q: What are the advantages?  Q: What are the disadvantages?  Application layer multiplexing  Other features: “Host:” header, compression, caching directives, range requests, chunked, cookies GET index.html GET ad.gif …

First Try at HTTP/1.1 “We were simultaneously very happy and quite disappointed with the initial results … We scratched our heads for a day, then convinced ourselves that on a local Ethernet, there was no reason that HTTP/1.1 should ever perform more slowly than HTTP/1.0” W3C, Network Performance Effects of HTTP/1.1, CSS1, and PNG

Disabling the Nagle Algorithm W3C, Network Performance Effects of HTTP/1.1, CSS1, and PNG

Caching  It is faster and cheaper to get data that is closer to here than closer to there.  “There” is the origin server. 2-5 RTT  “Here” can be:  Local browser cache (file system) (1-10ms)  Client-side proxy (institutional proxy) (10-50)  Content-distribution network (CDN -- “cloud” proxies) (50-100)  Server-side proxy (reverse origin server) (2- 5RTT)

Browser Caches  Bigger win: avoid repeated transfers of the same page  Check local browser cache to see if we have the page  GET with If-Modified-Since makes sure it’s up-to-date Cache “Changed?” “Here it is.” or “Same.”

Consistency and Caching Directives  Browsers typically use heuristics  To reduce server connections and hence realize benefits  Check freshness once a “session” with GET If-Modified- Since and then assume it’s fresh the rest of the time  Possible to have inconsistent data.  Key issue is knowing when cached data is fresh/stale  Otherwise many connections or the risk of staleness  Caching directives provide hints  Expires: header is basically a time-to-live  Also indicate whether page is cacheable or not

Proxy Cache Proxy Caches  Insert further levels of caching for greater gain  Share proxy caches between many users (not shown)  If I haven’t downloaded it recently, maybe you have  Your browser has built-in support for this Cache “Changed?” “Here it is.” or “Same.” “Changed?” “Here it is.” or “Same.”

Proxy Cache Effectiveness ? ?

Sharing, Not Locality, Drives Effectiveness

The Trends  HTTP Objects are getting bigger  But Less important

Key Concepts  HTTP and the Web is just a shim on top of TCP  Sufficient and enabled rapid adoption  Many “scalability” and performance issues now important