HyperText Transfer Protocol - PowerPoint PPT Presentation

About This Presentation
Title:

HyperText Transfer Protocol

Description:

HyperText Transfer Protocol (HTTP) Deepti Kulkarni. CISC 856: TCP/IP and Upper Layer Protocols ... GET , HEAD, POST, PUT , TRACE , CONNECT , OPTION. URL. HTTP ... – PowerPoint PPT presentation

Number of Views:222
Avg rating:3.0/5.0
Slides: 30
Provided by: CEE1
Category:

less

Transcript and Presenter's Notes

Title: HyperText Transfer Protocol


1
  • HyperText Transfer Protocol
  • (HTTP)
  • Deepti Kulkarni
  • CISC 856 TCP/IP and Upper Layer Protocols
  • Fall 2008
  • Acknowledgements
  • Professor Amer Richi Gupta

2
Motivation ?
  • Single informational network
  • Light protocol
  • Speed

Tim-Berners Lee Director of the W3C
HTTP Versions
Format HTTP/ltmajorgt.ltminorgt
  • HTTP/0.9 No RFC
  • HTTP/1.0 RFC 1945
  • HTTP/1.1 RFC 2616

2
3
Position of HTTP in the TCP/IP Protocol suite
HTTP
Application-layer
TCP
Transport layer

IGMP
ICMP
Network layer
IP
ARP
RARP
Data link layer

Underlying LAN or WAN
Physical layer

4
Quick overview of HTTP
  • Generic protocol for communication
  • Stateless protocol
  • In-band protocol
  • control information is sent in-band (unlike FTP)
  • Pull protocol
  • pulls information from the server (unlike SMTP
    which is push protocol)

5

Client-Server protocol
Server running Apache Web server

HTTP Request/Response are over TCP connections
HTTP Response
HTTP Request
PC running Explorer/MAC running Navigator
6
A-PDU format
Note Each line ends with cr lf control
characters.
7
A-PDU format (contd)
8
A-PDU format (contd)
1xx Informational Continue (100) ,
Switching Protocols(101) 2xx Success - action
was successfully received, understood, and
accepted Created (201), Accepted (202), No
Content (204), OK (200) 3xx Redirection -
further action needed to complete request
Moved Permanently (301) , Moved Temporarily
(302), Not Modified (304) 4xx Client Error -
request contains bad syntax or cannot be
fulfilled Bad Request (400), Unauthorized
(401), Forbidden (403), Not Found (404) 5xx
Server Error - server failed to fulfill an
apparently valid request Internal Server
Error (500), Not Implemented (501), Bad Gateway
(502), Service Unavailable
(503)
9
Variations of HTTP
  • Nonpersistent connections
  • with serial connections
  • with parallel connections
  • Persistent connections
  • without pipelining
  • with pipelining

10
Nonpersistent (HTTP /1.0 default)
11
Client
Server
SYN
SYN-ACK
3-way handshake
ACK
Get web page
Web page
Web page transferred
Client parses HTML web page
Ack
Data
1.Found referenced object Image 1 2.
Found referenced object Image 2
12
Nonpersistent (contd)
Ack
Data
13
Key points
  • Connection does not persist for other objects
  • Connections are sequential

14
Rough calculation for number of RTTS
Client
Server
Web Page
Can we reduce the number of RTTS?
Image 1
Image 2
Delay due to connection request/handshake
Delay Due to HTML Page Request
Time delay in RTTs 6
Delay Due to Object Request
15
  • Nonpersistent with parallel connections( browser
    dependent)

16
Client parses HTML web page
1. Referenced object Image 1 2.
Referenced object Image 2
Parallel connections
Ack
Data
17
Rough calculation
Client
Server
Web page
Image1 Image2
Time delay in RTTs 4
Delay due to connection request/handshake
Delay due to HTML page request
Delay due to object request
18
Disadvantages
  • Overhead of multiple TCP connections.
  • A busy server could end up with lots of
    connections in the TIME-WAIT state
  • Rarely does each connection get past the
    slow-start region
  • Failure to use the full end-to-end available
    bandwidth
  • Extra time opening connections increases
    user-perceived latency

19
Persistent without pipelining
20
Ack
Data
Note 1) Requests are sequential 2)
Timer is at application layer
20
21
Rough calculation
Client
Server
Web page
Image1
Image2
Time delay in RTTs 4
Delay due to connection request/handshake
Delay due to HTML page request
Delay due to object request
22
Persistent with pipelining
23
Back to back requests
Client parses web page Gets Image 1 Gets Image
2
Note Requests are serviced in order
Ack
Data
24
Rough calculation
Client
Server
Web page
24
Image1 Image2

Time delay in RTTs 3
Delay due to connection request/handshake
Delay due to HTML page request
Delay due to object request
25
  • Advantages
  • Fewer connections
  • Reduced network traffic
  • CPU time is saved in routers and hosts
  • Less overhead for the servers
  • Reduced perceived latency for clients on
    subsequent requests
  • Either client or server can close the connection
  • Disadvantages
  • Connections stay open longer at the server

26
Experimental Results
(NP HTTP/1.0) without parallel connections
(Persistent without pipelining)
(Persistent with pipelining)
Network Latency (seconds)
Number of in lined images
Figure 6-1 Latencies for a remote server, image
size 2544 bytes
27
Experimental Results (contd)
(NP HTTP/1.0) without parallel connections
(Persistent without pipelining)
(Persistent with pipelining)
Network Latency (seconds)
Number of in lined images
Figure 6-2 Latencies for a remote server, image
size 45566 bytes
28
Questions?
Thanks
29
Example Of Request/Response
  • Lets have a live demo!
  • telnet cis.poly.edu 80
  • GET /ross/ HTTP/1.1
  • Host cis.poly.edu
Write a Comment
User Comments (0)
About PowerShow.com