critical path analysis of tcp transactions
DESCRIPTION
Critical Path Analysis of TCP Transactions. Authors:Paul Barford (University of Wisconsin-Madison) Mark Crovella (University of Boston) Member, IEEE Source:IEEE/ACM TRANSACTIONS ON NETWORKING, VOL. 9,NO. 3, JUNE 2001 Presented by Chin-Yi Tsai. Outline. Introduction - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: Critical Path Analysis of TCP Transactions](https://reader035.vdocument.in/reader035/viewer/2022062721/56813790550346895d9f3081/html5/thumbnails/1.jpg)
Critical Path Analysis of TCP Transactions
Authors:Paul Barford (University of Wisconsin-Madison) Mark Crovella (University of Boston) Member, IEEE
Source:IEEE/ACM TRANSACTIONS ON NETWORKING, VOL. 9,NO. 3, JUNE 2001
Presented by Chin-Yi Tsai
![Page 2: Critical Path Analysis of TCP Transactions](https://reader035.vdocument.in/reader035/viewer/2022062721/56813790550346895d9f3081/html5/thumbnails/2.jpg)
2
Outline
Introduction Mechanics of Critical Path Analysis Experiment Conclusions and Future Work
![Page 3: Critical Path Analysis of TCP Transactions](https://reader035.vdocument.in/reader035/viewer/2022062721/56813790550346895d9f3081/html5/thumbnails/3.jpg)
3
Introduction
Motivation Identifying root causes of response
time Critical Path Definition
![Page 4: Critical Path Analysis of TCP Transactions](https://reader035.vdocument.in/reader035/viewer/2022062721/56813790550346895d9f3081/html5/thumbnails/4.jpg)
4
Introduction(cont.)
Motivation What are the root causes of delay in
TCP transactions? Server Network Server/Network interaction
![Page 5: Critical Path Analysis of TCP Transactions](https://reader035.vdocument.in/reader035/viewer/2022062721/56813790550346895d9f3081/html5/thumbnails/5.jpg)
5
Introduction(cont.) Identify root causes of response time
Delays can occur in many points along end-to-end path simultaneously
Pinpointing where delays occur and which delays matter is difficult
Identify precisely the determiners of response time in TCP transaction
Client Server
router1
router3
router2
![Page 6: Critical Path Analysis of TCP Transactions](https://reader035.vdocument.in/reader035/viewer/2022062721/56813790550346895d9f3081/html5/thumbnails/6.jpg)
6
Introduction(cont.) Critical Path Definition
The longest path in the tree starting from the root A weighted chain of dependence relations running
from the connection’s first data packet to its last data packet sent
reducing the execution times of activities on the critical path will certainly reduce overall response time, while this is not necessarily true for activities off the critical path
Events on the critical path are the “right” ones for examining the sources of delay (rather than all events during the entire transfer)
![Page 7: Critical Path Analysis of TCP Transactions](https://reader035.vdocument.in/reader035/viewer/2022062721/56813790550346895d9f3081/html5/thumbnails/7.jpg)
7
Mechanics of Critical Path Analysis
Critical Path for a Unidirectional TCP Flow
Discovering the Critical Path for an HTTP Transaction
Critical Path Discovery and profile Algorithm
Limitations
![Page 8: Critical Path Analysis of TCP Transactions](https://reader035.vdocument.in/reader035/viewer/2022062721/56813790550346895d9f3081/html5/thumbnails/8.jpg)
8
Critical Path for Unidirectional TCP Flow
Packet Dependence Graph (PDG) Possible Nodes Possible Arcs
![Page 9: Critical Path Analysis of TCP Transactions](https://reader035.vdocument.in/reader035/viewer/2022062721/56813790550346895d9f3081/html5/thumbnails/9.jpg)
9
Packet Dependence Graph (PDG)
Client
1 or more data packets
ACK packet
Client Server
D
DD
DD
DD
DDD
A
AA
D
A
A
DD
D D
System Time line Graph
DD
A
A
D D
AA A
DD DDD
DD
DDD
Server
D
![Page 10: Critical Path Analysis of TCP Transactions](https://reader035.vdocument.in/reader035/viewer/2022062721/56813790550346895d9f3081/html5/thumbnails/10.jpg)
10
Possible Nodes Server side
a. arrival of an ACK packet b. departure of a data packet
Client side c. arrival of an data packet d. departure of an ACK packet
Client Server
D
DD
DD
DD
DDD
A
AA
DD
DDD
a
b
c
d
![Page 11: Critical Path Analysis of TCP Transactions](https://reader035.vdocument.in/reader035/viewer/2022062721/56813790550346895d9f3081/html5/thumbnails/11.jpg)
11
Possible Node(cont.)
Client Server
D
DD
DD
DD
DDD
A
AA
DD
DDD
a
b
c
d
D
A
A
DD
D D
A
A
D D
AA A
DD DDD
DDD
PDG Time line
![Page 12: Critical Path Analysis of TCP Transactions](https://reader035.vdocument.in/reader035/viewer/2022062721/56813790550346895d9f3081/html5/thumbnails/12.jpg)
12
Possible Arcs Type1
from the arrival of that data packet to the departure of that ACK packet (at client side)
Type2 its departure at one endpoint to its arrival at the other
endpoint (server-to-client, client-to-server) Type3
from the arrival of the ACK to the departure of each liberated data packets (at server side)
Type4 from the departure of the dropped packet to the departure
of the earliest subsequent retransmission (at server side)
![Page 13: Critical Path Analysis of TCP Transactions](https://reader035.vdocument.in/reader035/viewer/2022062721/56813790550346895d9f3081/html5/thumbnails/13.jpg)
13
Possible Arcs (cont.)
Client Server
type1
type2
type3
type4
D
D
D
D
A
A
A
drop
Network delay
Client delay
Server
delay
Packet loss
delay
![Page 14: Critical Path Analysis of TCP Transactions](https://reader035.vdocument.in/reader035/viewer/2022062721/56813790550346895d9f3081/html5/thumbnails/14.jpg)
14
Discovering the Critical Path for an HTTP Transaction
Four stages for HTTP/1.0 1. connection establishments (SYN, SYN-ACK, ACK) 2. packets sequence delivering HTTP GET3. data transfer in response to GET (file size
dependent)4. connection tear-down (FIN, ACK, FIN, ACK)
![Page 15: Critical Path Analysis of TCP Transactions](https://reader035.vdocument.in/reader035/viewer/2022062721/56813790550346895d9f3081/html5/thumbnails/15.jpg)
15
Discovering the Critical Path for an HTTP Transaction
FIN x
HTTP GET
Ack k+1
SYN k,Ack j+1
SYN j
Ack y+1
FIN y
Ack x+1
Connection Establishment
Application Protocol
Bulk Transfer
Connection Tear Down
Client
Server
ProfileNetwork delay
Network delay
Network delay
Network delay
Network delay
Network delay
Server delay
Server delay
Client delay
Client delay
![Page 16: Critical Path Analysis of TCP Transactions](https://reader035.vdocument.in/reader035/viewer/2022062721/56813790550346895d9f3081/html5/thumbnails/16.jpg)
16
Critical Path Discovery and profile Algorithm
Capture of packet traces Analysis of rounds Construction of critical path Profiling of the critical path
![Page 17: Critical Path Analysis of TCP Transactions](https://reader035.vdocument.in/reader035/viewer/2022062721/56813790550346895d9f3081/html5/thumbnails/17.jpg)
Client Server
Original Data Flow
1461:2921
5841:7301
11681:13141
drop 17521
17521:20441
20441:24821
16061:17521
24821:27741
27741:29201
ack 2921
ack 7301
ack 10221
ack 16061
ack 16061
ack 16061
ack 24821
ack 27741
Number
Rounds
Bytes Liberated
1:29201
2921:73002
7301:131403
13141:175204
17520:248205
24821:277406
27741:306607
Client Server
Critical Path
1461:2921
5841:7301
11681:13141
drop 17521
16061:17521
24821:27741
27741:29201
ack 2921
ack 7301
ack 10221
ack 24821
ack 27741
Profile
Network Delay
Network Delay
Network Delay
Network Delay
Network Delay
Network Delay
Network Delay
Network Delay
Network Delay
Network Delay
Network Delay
Server Delay
Server Delay
Server Delay
Client Delay
Client Delay
Drop Delay
![Page 18: Critical Path Analysis of TCP Transactions](https://reader035.vdocument.in/reader035/viewer/2022062721/56813790550346895d9f3081/html5/thumbnails/18.jpg)
18
Limitations
Details of the web transactions Example: DNS
Delay in the browser Browser parse time
![Page 19: Critical Path Analysis of TCP Transactions](https://reader035.vdocument.in/reader035/viewer/2022062721/56813790550346895d9f3081/html5/thumbnails/19.jpg)
19
Experiment
Experimental Setup Experimental Results
![Page 20: Critical Path Analysis of TCP Transactions](https://reader035.vdocument.in/reader035/viewer/2022062721/56813790550346895d9f3081/html5/thumbnails/20.jpg)
20
Experimental SetupApache server on Linux or FreeBSDServer load controlled by SURGE Web load generator: high or low loadOne PC collect TCP packet tracesOne PC measures network conditions
Boston University
Harvard UniversityDenver University
(Server)
(client2)(client1)
![Page 21: Critical Path Analysis of TCP Transactions](https://reader035.vdocument.in/reader035/viewer/2022062721/56813790550346895d9f3081/html5/thumbnails/21.jpg)
21
Experimental Results
Effect of File Size Effect of Network Load
![Page 22: Critical Path Analysis of TCP Transactions](https://reader035.vdocument.in/reader035/viewer/2022062721/56813790550346895d9f3081/html5/thumbnails/22.jpg)
22
CPA results for 1KB(small) file
0
0.2
0.4
0.6
0.8
1
Seconds
LN, LS LN, HS HN, LS HN, HS
Net Variance
Propagation
Server
Time Out
Client
Fast Retrans
Latency is dominated by server load
![Page 23: Critical Path Analysis of TCP Transactions](https://reader035.vdocument.in/reader035/viewer/2022062721/56813790550346895d9f3081/html5/thumbnails/23.jpg)
23
CP time line diagrams for 1KB file
Low Server Load High Server Load
Server delay
![Page 24: Critical Path Analysis of TCP Transactions](https://reader035.vdocument.in/reader035/viewer/2022062721/56813790550346895d9f3081/html5/thumbnails/24.jpg)
24
CPA results for 20KB(medium) file
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
Seconds
LN, LS LN, HS HN, LS HN, HS
Net Variance
Propagation
Server
Time Out
Client
Fast Retrans
Both server load and network effects are significant
![Page 25: Critical Path Analysis of TCP Transactions](https://reader035.vdocument.in/reader035/viewer/2022062721/56813790550346895d9f3081/html5/thumbnails/25.jpg)
25
CPA results for 500KB(large) file
0
0.5
1
1.5
2
2.5
3
3.5
4
4.5
Seconds
LN, LS LN, HS HN, LS HN, HS
Net Variance
Propagation
Server
Time Out
Client
Fast Retrans
0
0.5
1
1.5
2
2.5
3
3.5
4
4.5
Seconds
LN, LS LN, HS HN, LS HN, HS
Net Variance
Propagation
Server
Time Out
Client
Fast Retrans
Latency is dominated by network effects
![Page 26: Critical Path Analysis of TCP Transactions](https://reader035.vdocument.in/reader035/viewer/2022062721/56813790550346895d9f3081/html5/thumbnails/26.jpg)
26
Effect of File Size Small files:
high server load: server delays can dominate low server load: network delay can dominate
Medium files: high server load: propagation delay and
server delay are comparable low server load: network delay can dominate
Large files: network delay dominates overall transaction
delay regardless of server load
![Page 27: Critical Path Analysis of TCP Transactions](https://reader035.vdocument.in/reader035/viewer/2022062721/56813790550346895d9f3081/html5/thumbnails/27.jpg)
27
Effect of Network For small and medium files, propagation
delay is independent of network load or server load
For large files, propagation delay are higher under high network load. There are more round-trips in the critical path due to more coarse-grained timeouts.
Network queueing delay is less important than propagation delay.
![Page 28: Critical Path Analysis of TCP Transactions](https://reader035.vdocument.in/reader035/viewer/2022062721/56813790550346895d9f3081/html5/thumbnails/28.jpg)
28
Conclusions and Future Work Complex interactions between clients,
the network and servers Complex packet transactions can be
effectively understood using CPA CP profiling allowed precise assignment
of delays Latency for small files is dominated by
server load Latency for large files is dominated by
network effects
![Page 29: Critical Path Analysis of TCP Transactions](https://reader035.vdocument.in/reader035/viewer/2022062721/56813790550346895d9f3081/html5/thumbnails/29.jpg)
29
Conclusions and Future Work(cont.)
Future work Collect and analyze data from more client
systems To consider the delay due to DNS Server/network integrated effects