Oxford:Persistent r Continuing without interruption 2:Application Layer 26
2: Application Layer 26 Oxford: Persistent r Continuing without interruption
Nonpersistent HTTP (contains text, Suppose user enters URL references to 10 www.someschool.edu/someDepartment/home.index jpeg images) 1a.HTTP client initiates TCP connection to HTTP server (process)at 1b.HTTP server at host www.someSchool.edu on port 80 www.someSchool.edu waiting for TCP connection at port 80. "accepts"connection,notifying client 2.HTTP client sends HTTP reguest message (containing URL)into TCP connection~ 3.HTTP server receives request socket.Message indicates message,forms response that client wants ob ject message containing requested someDepartment/home.index ob ject,and sends message into its socket time 2:Application Layer 27
2: Application Layer 27 Nonpersistent HTTP Suppose user enters URL www.someSchool.edu/someDepartment/home.index 1a. HTTP client initiates TCP connection to HTTP server (process) at www.someSchool.edu on port 80 2. HTTP client sends HTTP request message (containing URL) into TCP connection socket. Message indicates that client wants object someDepartment/home.index 1b. HTTP server at host www.someSchool.edu waiting for TCP connection at port 80. “ accepts” connection, notifying client 3. HTTP server receives request message, forms response message containing requested object, and sends message into its socket time (contains text, references to 10 jpeg images)
Nonpersistent HTTP (cont.) 4.HTTP server closes TCP connection. 5.HTTP client receives response message containing html file, displays html.Parsing html file,finds 10 referenced jpeg objects time ↓ 6.Steps 1-5 repeated for each of 10 jpeg objects 2:Application Layer 28
2: Application Layer 28 Nonpersistent HTTP (cont.) 5. HTTP client receives response message containing html file, displays html. Parsing html file, finds 10 referenced jpeg objects 6. Steps 1-5 repeated for each of 10 jpeg objects 4. HTTP server closes TCP connection. time
Non-Persistent HTTP:Response time Definition of RTT:time to send a small packet to travel from client to server and back. initiate TCP connection Response time: RTT. r one RTT to initiate TCP request file connection time to RTT r one RTT for HTTP transmit file request and first few file received bytes of HTTP response to return time time r file transmission time total 2RTT+transmit time 2:Application Layer 29
2: Application Layer 29 Non-Persistent HTTP: Response time Definition of RTT: time to send a small packet to travel from client to server and back. Response time: r one RTT to initiate TCP connection r one RTT for HTTP request and first few bytes of HTTP response to return r file transmission time total = 2RTT+transmit time time to transmit file initiate TCP connection RTT request file RTT file received time time
Persistent HTTP Nonpersistent HTTP issues: Persistent without pipelining: r requires 2 RTTs per object r client issues new request r OS overhead for each TCP only when previous connection response has been received r browsers often open parallel r one RTT for each TCP connections to fetch referenced object referenced objects Persistent with pipelining: Persistent HTTP r default in HTTP/1.1 r server leaves connection r client sends requests as open after sending response soon as it encounters a r subsequent HTTP messages referenced object between same client/server r as little as one RTT for all sent over open connection the referenced objects 2:Application Layer 30
2: Application Layer 30 Persistent HTTP Nonpersistent HTTP issues: r requires 2 RTTs per object r OS overhead for each TCP connection r browsers often open parallel TCP connections to fetch referenced objects Persistent HTTP r server leaves connection open after sending response r subsequent HTTP messages between same client/server sent over open connection Persistent without pipelining: r client issues new request only when previous response has been received r one RTT for each referenced object Persistent with pipelining: r default in HTTP/1.1 r client sends requests as soon as it encounters a referenced object r as little as one RTT for all the referenced objects