critical path analysis of tcp transactions authors:paul barford (university of wisconsin-madison)...

29
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

Upload: sandra-jemima-holt

Post on 13-Dec-2015

224 views

Category:

Documents


0 download

TRANSCRIPT

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

2

Outline

Introduction Mechanics of Critical Path Analysis Experiment Conclusions and Future Work

3

Introduction

Motivation Identifying root causes of response

time Critical Path Definition

4

Introduction(cont.)

Motivation What are the root causes of delay in

TCP transactions? Server Network Server/Network interaction

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

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)

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

8

Critical Path for Unidirectional TCP Flow

Packet Dependence Graph (PDG) Possible Nodes Possible Arcs

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

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

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

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)

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

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)

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

16

Critical Path Discovery and profile Algorithm

Capture of packet traces Analysis of rounds Construction of critical path Profiling of the critical path

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

18

Limitations

Details of the web transactions Example: DNS

Delay in the browser Browser parse time

19

Experiment

Experimental Setup Experimental Results

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)

21

Experimental Results

Effect of File Size Effect of Network Load

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

23

CP time line diagrams for 1KB file

Low Server Load High Server Load

Server delay

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

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

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

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.

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

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