new http protocols http/0.9 -earliest standard simple get/put requests (no headers, constraints,...

10
New HTTP Protocols TTP/0.9 - Earliest standard simple GET/PUT requests (no headers, constraints, resolution) TTP/1.0 - Current standard Request For Comment (promulgation of Internet standards decision by feedback an consensus) TTP/1.1 - Proposed future standard

Upload: leslie-long

Post on 17-Jan-2016

216 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: New HTTP Protocols HTTP/0.9 -Earliest standard simple GET/PUT requests (no headers, constraints, resolution) HTTP/1.0 - Current standard Request For Comment

New HTTP Protocols

HTTP/0.9 - Earliest standardsimple GET/PUT requests(no headers, constraints, resolution)

HTTP/1.0 - Current standardRequest For Comment (promulgation of Internet standards decision by feedback and consensus)

HTTP/1.1 - Proposed future standard

Page 2: New HTTP Protocols HTTP/0.9 -Earliest standard simple GET/PUT requests (no headers, constraints, resolution) HTTP/1.0 - Current standard Request For Comment

Failings of HTTP/1.0

• Fetches only 1 URL per TCP connection• (Network server) overhead from frequent closing/reopening of connections• Most GETs are only a few thousand bytes (e.g., small_ball.gif)• Poor user-perceived performance (latency, slow start)• Primitive caching model

Temporary hack solution:Open N TCP connections simultaneously (default = 4 with Netscape)

Page 3: New HTTP Protocols HTTP/0.9 -Earliest standard simple GET/PUT requests (no headers, constraints, resolution) HTTP/1.0 - Current standard Request For Comment

Goals of HTTP/1.1

• Improved caching (including better models of what is cachable and time resolution in milliseconds instead of seconds)• Range requests (partial document download) - ability to specify GET on a range (e.g., only bytes 1000-2000 or 35000+) - useful when transfer interrupted, no need to start from scratch• Persistent connections

• Requests/responses pipelined• Default is for connection to stay open except when

explicit close command from server • So, reduced network usage and improved user

response time and throughput

Page 4: New HTTP Protocols HTTP/0.9 -Earliest standard simple GET/PUT requests (no headers, constraints, resolution) HTTP/1.0 - Current standard Request For Comment

HTTP/1.1 Improvements (cont.)

• Chunk encoding• In many cases with HTTP/1.0, length of document

• Content negotiation• Host must announce its name serer (required)• Security

???

Page 5: New HTTP Protocols HTTP/0.9 -Earliest standard simple GET/PUT requests (no headers, constraints, resolution) HTTP/1.0 - Current standard Request For Comment

HTTP/1.1 Improvements (cont.)

• Better compression and graphical element reuseMany GIF files contain graphic primatives that could be represented more efficiently as sequences of markup (pointers to stored primatives)

Empirical data USE CSS1 encoding protocol for GIFs

Page 6: New HTTP Protocols HTTP/0.9 -Earliest standard simple GET/PUT requests (no headers, constraints, resolution) HTTP/1.0 - Current standard Request For Comment

Pipelining

Client Server Client Server

Time

Request 1

Response 1

2

2

3

3

Request 1

23

Response 1

32

Page 7: New HTTP Protocols HTTP/0.9 -Earliest standard simple GET/PUT requests (no headers, constraints, resolution) HTTP/1.0 - Current standard Request For Comment

Unresolved Future Issues

• SOIF node connections• Compression standards• Hit count reporting to improve caching• Multiplexing of HTTP stream

Before After

ServerClient

(Pipelined transfer)in single TCP connection

(multiplexing)

ServerClient

Page 8: New HTTP Protocols HTTP/0.9 -Earliest standard simple GET/PUT requests (no headers, constraints, resolution) HTTP/1.0 - Current standard Request For Comment

1. Simple Breadth-First

2. Localized multiple GETs (to optimize persistent connections)Threshold on bytes transferred per connection,but constantly re-establishing connections is wasteful

Queueing Strategies

2 3 41

5 6 7 8 9 10 11

1

2 3 4

5

6 7 8

9

10 11 12

Page 9: New HTTP Protocols HTTP/0.9 -Earliest standard simple GET/PUT requests (no headers, constraints, resolution) HTTP/1.0 - Current standard Request For Comment

Queueing Strategies

3. Site-specific subqueues (ensure not too many hits on one site in time)

jhu.edu nyu.edu cnn.com

toshiba.com

Problem?

Page 10: New HTTP Protocols HTTP/0.9 -Earliest standard simple GET/PUT requests (no headers, constraints, resolution) HTTP/1.0 - Current standard Request For Comment

jhu.edu nyu.edu cnn.com

Queueing Strategies

4. Priority Queues (with minimum time between hits constraint)

Avoids situationsif number of sitesactive take longer to traverse thanminimum hit window.

ibm.com

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17