Top Banner
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
29

Critical Path Analysis of TCP Transactions Authors:Paul Barford (University of Wisconsin-Madison) Mark Crovella (University of Boston) Member, IEEE Source:IEEE/ACM.

Dec 13, 2015

Download

Documents

Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Critical Path Analysis of TCP Transactions Authors:Paul Barford (University of Wisconsin-Madison) Mark Crovella (University of Boston) Member, IEEE Source:IEEE/ACM.

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 Authors:Paul Barford (University of Wisconsin-Madison) Mark Crovella (University of Boston) Member, IEEE Source:IEEE/ACM.

2

Outline

Introduction Mechanics of Critical Path Analysis Experiment Conclusions and Future Work

Page 3: Critical Path Analysis of TCP Transactions Authors:Paul Barford (University of Wisconsin-Madison) Mark Crovella (University of Boston) Member, IEEE Source:IEEE/ACM.

3

Introduction

Motivation Identifying root causes of response

time Critical Path Definition

Page 4: Critical Path Analysis of TCP Transactions Authors:Paul Barford (University of Wisconsin-Madison) Mark Crovella (University of Boston) Member, IEEE Source:IEEE/ACM.

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 Authors:Paul Barford (University of Wisconsin-Madison) Mark Crovella (University of Boston) Member, IEEE Source:IEEE/ACM.

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 Authors:Paul Barford (University of Wisconsin-Madison) Mark Crovella (University of Boston) Member, IEEE Source:IEEE/ACM.

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 Authors:Paul Barford (University of Wisconsin-Madison) Mark Crovella (University of Boston) Member, IEEE Source:IEEE/ACM.

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 Authors:Paul Barford (University of Wisconsin-Madison) Mark Crovella (University of Boston) Member, IEEE Source:IEEE/ACM.

8

Critical Path for Unidirectional TCP Flow

Packet Dependence Graph (PDG) Possible Nodes Possible Arcs

Page 9: Critical Path Analysis of TCP Transactions Authors:Paul Barford (University of Wisconsin-Madison) Mark Crovella (University of Boston) Member, IEEE Source:IEEE/ACM.

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 Authors:Paul Barford (University of Wisconsin-Madison) Mark Crovella (University of Boston) Member, IEEE Source:IEEE/ACM.

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 Authors:Paul Barford (University of Wisconsin-Madison) Mark Crovella (University of Boston) Member, IEEE Source:IEEE/ACM.

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 Authors:Paul Barford (University of Wisconsin-Madison) Mark Crovella (University of Boston) Member, IEEE Source:IEEE/ACM.

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 Authors:Paul Barford (University of Wisconsin-Madison) Mark Crovella (University of Boston) Member, IEEE Source:IEEE/ACM.

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 Authors:Paul Barford (University of Wisconsin-Madison) Mark Crovella (University of Boston) Member, IEEE Source:IEEE/ACM.

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 Authors:Paul Barford (University of Wisconsin-Madison) Mark Crovella (University of Boston) Member, IEEE Source:IEEE/ACM.

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 Authors:Paul Barford (University of Wisconsin-Madison) Mark Crovella (University of Boston) Member, IEEE Source:IEEE/ACM.

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 Authors:Paul Barford (University of Wisconsin-Madison) Mark Crovella (University of Boston) Member, IEEE Source:IEEE/ACM.

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 Authors:Paul Barford (University of Wisconsin-Madison) Mark Crovella (University of Boston) Member, IEEE Source:IEEE/ACM.

18

Limitations

Details of the web transactions Example: DNS

Delay in the browser Browser parse time

Page 19: Critical Path Analysis of TCP Transactions Authors:Paul Barford (University of Wisconsin-Madison) Mark Crovella (University of Boston) Member, IEEE Source:IEEE/ACM.

19

Experiment

Experimental Setup Experimental Results

Page 20: Critical Path Analysis of TCP Transactions Authors:Paul Barford (University of Wisconsin-Madison) Mark Crovella (University of Boston) Member, IEEE Source:IEEE/ACM.

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 Authors:Paul Barford (University of Wisconsin-Madison) Mark Crovella (University of Boston) Member, IEEE Source:IEEE/ACM.

21

Experimental Results

Effect of File Size Effect of Network Load

Page 22: Critical Path Analysis of TCP Transactions Authors:Paul Barford (University of Wisconsin-Madison) Mark Crovella (University of Boston) Member, IEEE Source:IEEE/ACM.

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 Authors:Paul Barford (University of Wisconsin-Madison) Mark Crovella (University of Boston) Member, IEEE Source:IEEE/ACM.

23

CP time line diagrams for 1KB file

Low Server Load High Server Load

Server delay

Page 24: Critical Path Analysis of TCP Transactions Authors:Paul Barford (University of Wisconsin-Madison) Mark Crovella (University of Boston) Member, IEEE Source:IEEE/ACM.

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 Authors:Paul Barford (University of Wisconsin-Madison) Mark Crovella (University of Boston) Member, IEEE Source:IEEE/ACM.

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 Authors:Paul Barford (University of Wisconsin-Madison) Mark Crovella (University of Boston) Member, IEEE Source:IEEE/ACM.

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 Authors:Paul Barford (University of Wisconsin-Madison) Mark Crovella (University of Boston) Member, IEEE Source:IEEE/ACM.

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 Authors:Paul Barford (University of Wisconsin-Madison) Mark Crovella (University of Boston) Member, IEEE Source:IEEE/ACM.

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 Authors:Paul Barford (University of Wisconsin-Madison) Mark Crovella (University of Boston) Member, IEEE Source:IEEE/ACM.

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