Web page Html base file Objects first DNS
• Web page – Html –base file – Objects • (first DNS) • First get html file • Then browser reads the html and gets the objects
laptop ml, detect URLs to 2 jpeg Google server Tcp: syn+ack Tcp: http: request GET / Tcp: ack Tcp: http: reply Tcp: ack Persistent Non- persistent - Serial - Parallel
laptop html with URLs to 2 jpeg Google server Tcp: syn+ack Tcp: http: request GET / Tcp: ack Tcp: http: reply Tcp: ack Persistent Non- persistent - Serial - Parallel
laptop ml with URLs to 2 jpeg oogle. com/pic 1. jpeg oogle. com/pic 2. jpeg Google server Tcp: syn+ack Tcp: http: request GET / Tcp: ack Tcp: http: reply Tcp: ack Persistent – keep the TCP connection open after getting an object Non- persistent - Serial - Parallel Assume jpeg are on the same server Tcp: http: request GET /pic 1. jpeg Tcp: ack Tcp: data Cwnd=1*MSS Cwnd=2*MSS Cwnd=4*MSS Tcp: http: request GET /pic 2. jpeg Slow start Cwnd ++ for each ack
laptop Google server Tcp: syn+ack Tcp: http: request GET / ml with URLs to 2 jpeg oogle. com/pic 1. jpeg oogle. com/pic 2. jpeg Tcp: ack Tcp: http: reply Tcp: ack Tcp: http: request GET /pic 1. jpeg Persistent – keep the TCP connection open after getting an object Non- persistent - Serial - Parallel Assume jpeg are on the same server Tcp: ack Tcp: data ww. google. com/pic 1. jpeg Tcp: ack Tcp: http: request GET /pic 2. jpeg Cwnd=1*MSS Cwnd=2*MSS Tcp: data ww. google. com/pic 2. jpeg 4 RTT to get web page Cwnd=4*MSS Slow start Cwnd ++ for each ack
laptop Google server Tcp: syn+ack Tcp: http: request GET / ml with URLs to 2 jpeg oogle. com/pic 1. jpeg oogle. com/pic 2. jpeg Tcp: ack Tcp: http: reply Tcp: ack Tcp: syn+ack Tcp: http: request GET /pic 1. jpeg Tcp: ack ww. google. com/pic 1. jpeg Tcp: data Tcp: syn+ack ww. google. com/pic 2. jpeg Tcp: ack Tcp: http: request GET /pic 2. jpeg Tcp: data 6 RTT to get web page Assume DNS cache have all ip Non- persistent - Serial - Parallel Assume jpeg are on the same server
laptop Google server Tcp: syn+ack Tcp: http: request GET / ml with URLs to 2 jpeg oogle. com/pic 1. jpeg oogle. com/pic 2. jpeg Tcp: ack Tcp: http: reply Assume DNS cache have all ip Non- persistent - Serial - Parallel Assume jpeg are on the same server Tcp: ack Tcp: syn+ack Tcp: http: request GET /pic 2. jpeg Tcp: http: request GET /pic 1. jpeg Tcp: ack ww. google. com/pic 1. jpeg 4 RTT to get web page Tcp: data Got www. google. com/pic 2. jpeg
laptop Google server Tcp: syn RTTg Tcp: syn+ack Tcp: http: request GET / ml with URLs to 2 jpeg oogle. com/pic 1. jpeg cebook. com/pic 2. jpeg Tcp: ack Tcp: http: reply Assume DNS cache have all ip Non- persistent - Serial - Parallel Assume jpeg are on the same server Tcp: ack Tcp: syn+ack RTTf Tcp: ack Tcp: http: request GET /pic 1. jpeg Tcp: ack ww. google. com/pic 1. jpeg Tcp: ack Tcp: http: request GET /pic 2. jpeg Tcp: data Got www. facebook. com/pic 2. jpeg 2 RTTg + max(2 RTTg, 2 RTTf) How long until something appears on the browser? = 2 RTTg
DNS = 3 RTT (root+TLD+google) laptop Tcp: syn RTTg Google server DNS is empty Tcp: syn+ack Tcp: http: request GET / ml with URLs to 2 jpeg oogle. com/pic 1. jpeg cebook. com/pic 2. jpeg Tcp: ack Tcp: http: reply Tcp: ack Tcp: syn+ack Tcp: http: request GET /pic 1. jpeg ww. google. com/pic 1. jpeg Tcp: data Assume jpeg are on the same server DNS = 2 RTT (TLD+facebook) Tcp: syn Tcp: ack Non- persistent - Serial - Parallel RTTf Tcp: ack Tcp: http: request GET /pic 2. jpeg Tcp: data Got www. facebook. com/pic 2. jpeg 2 RTTg + max(2 RTTg, 2 RTTf) How long until something appears on the browser? = 2 RTTg
DNS = 3 RTT (root+TLD+google) laptop Tcp: syn Google server DNS cache is empty Tcp: syn+ack RTT Tcp: ack Tcp: http: request GET / ml with URLs to 2 jpeg gle. com/pic 1. jpeg cebook. com/pic 2. jpeg Tcp: ack Tcp: http: reply Tcp: ack DNS =1 RTT (google) Tcp: syn+ack Non- persistent - Serial - Parallel Assume jpeg are on the same server DNS = 2 RTT (TLD+facebook) Tcp: syn+ack Tcp: http: request GET /pic 1. jpeg Tcp: ack ww. google. com/pic 1. jpeg RTTf Tcp: ack Tcp: http: request GET /pic 2. jpeg Tcp: data Got www. facebook. com/pic 2. jpeg 1 st DNS 3 RTT + Base html DNS for www. facebook. com 2 RTT + Get www. facebook. com/pic 2. jpeg 2 RTT
laptop DNS = 3 RTT (root+TLD+google) Tcp: syn Google server DNS cache is empty Tcp: syn+ack RTT Tcp: ack Tcp: http: request GET / ml with URLs to 2 jpeg gle. com/pic 1. jpeg cebook. com/pic 2. jpeg Tcp: ack Tcp: http: reply Tcp: ack DNS =1 RTT (google) Tcp: syn+ack Non- persistent - Serial - Parallel Assume jpeg are on the same server DNS = 2 RTT (TLD+facebook) Tcp: syn+ack Tcp: http: request GET /pic 1. jpeg Tcp: ack ww. google. com/pic 1. jpeg RTTf Tcp: ack Tcp: http: request GET /pic 2. jpeg Tcp: data Got www. facebook. com/pic 2. jpeg 1 st DNS Base html DNS for www. facebook. com RTTroot + RTTtld + RTTg + Get www. facebook. com/pic 2. jpeg 2 RTTg + max( RTTtld + RTTf + 2 RTTf, RTTg + 2 RTTg)
- Slides: 11