16
1 How to Identify the Speed Limiting Factor of a TCP Flow E2EMON 2006 Vancouver Mark Timmer April 3, 2006 Co-authors: Pieter-Tjerk de Boer and Aiko Pras

1 How to Identify the Speed Limiting Factor of a TCP Flow E2EMON 2006 Vancouver Mark Timmer April 3, 2006 Co-authors: Pieter-Tjerk de Boer and Aiko Pras

Embed Size (px)

DESCRIPTION

3 E2EMON, April 3, 2006 How to Identify the Speed Limiting Factor of a TCP Flow Motivation Surfnet: 1 Gbit 10 Gbit Upgrades still useful? Approach: Identify speed limiting factor

Citation preview

Page 1: 1 How to Identify the Speed Limiting Factor of a TCP Flow E2EMON 2006 Vancouver Mark Timmer April 3, 2006 Co-authors: Pieter-Tjerk de Boer and Aiko Pras

1

How to Identifythe Speed Limiting Factor

of a TCP Flow

E2EMON 2006Vancouver

Mark TimmerApril 3, 2006

Co-authors: Pieter-Tjerk de Boer and Aiko Pras

Page 2: 1 How to Identify the Speed Limiting Factor of a TCP Flow E2EMON 2006 Vancouver Mark Timmer April 3, 2006 Co-authors: Pieter-Tjerk de Boer and Aiko Pras

2

How to Identify the Speed Limiting Factor of a TCP Flow

• Motivation• Related work• Possible factors• Overview: identifying the limiting factors• One factor in-depth• Measurement results• Conclusions

E2EMON, April 3, 2006

Contents

Page 3: 1 How to Identify the Speed Limiting Factor of a TCP Flow E2EMON 2006 Vancouver Mark Timmer April 3, 2006 Co-authors: Pieter-Tjerk de Boer and Aiko Pras

3

E2EMON, April 3, 2006How to Identify the Speed Limiting Factor of a TCP Flow

Motivation

• Surfnet: 1 Gbit 10 Gbit

• Upgrades still useful?

• Approach: Identify speed limiting factor

Page 4: 1 How to Identify the Speed Limiting Factor of a TCP Flow E2EMON 2006 Vancouver Mark Timmer April 3, 2006 Co-authors: Pieter-Tjerk de Boer and Aiko Pras

4

E2EMON, April 3, 2006How to Identify the Speed Limiting Factor of a TCP Flow

Related work

• Y. Zhang, L. Breslau, V. Paxson, and S. Shenker, “On the characteristics and origins of internet flow rates”,Proceedings of SIGCOMM’02

• M. Siekkinen, G. Urvoy-Keller, E.W. Biersack, and T. En-Najjary, “Root cause analysis for long-lived tcp connections”,Proceedings of CoNEXT’05

Page 5: 1 How to Identify the Speed Limiting Factor of a TCP Flow E2EMON 2006 Vancouver Mark Timmer April 3, 2006 Co-authors: Pieter-Tjerk de Boer and Aiko Pras

5

E2EMON, April 3, 2006How to Identify the Speed Limiting Factor of a TCP Flow

Speed limiting factors of a TCP flow

TCPTCP(sender)

network(network layer, linklayer, physical layer) network

application application

(receiver)(sender)

(receiver)

layer

TCP

application

layer

Page 6: 1 How to Identify the Speed Limiting Factor of a TCP Flow E2EMON 2006 Vancouver Mark Timmer April 3, 2006 Co-authors: Pieter-Tjerk de Boer and Aiko Pras

6

E2EMON, April 3, 2006How to Identify the Speed Limiting Factor of a TCP Flow

Overview: identifying the limiting factors

Data repository of packet traces

• Information directly available:– Arrival time– IP header (source, destination)– TCP header (port numbers, sequence number, acknowledgment

number, size of receive window)

• Information calculated:– Number of outstanding bytes– Achieved throughput

Page 7: 1 How to Identify the Speed Limiting Factor of a TCP Flow E2EMON 2006 Vancouver Mark Timmer April 3, 2006 Co-authors: Pieter-Tjerk de Boer and Aiko Pras

7

E2EMON, April 3, 2006How to Identify the Speed Limiting Factor of a TCP Flow

Application layer limitations (1)

Slow sender limitation

Identification– Measure idle period percentage– Careful when receive window is empty

ack

A B

datadata

idle p

eriod

data

datadatadata

ack

Note:We only consider flows measured at the sending side

Page 8: 1 How to Identify the Speed Limiting Factor of a TCP Flow E2EMON 2006 Vancouver Mark Timmer April 3, 2006 Co-authors: Pieter-Tjerk de Boer and Aiko Pras

8

B

ack (rwnd=30)

ack (rwnd=30)

data (length=30)

ack (rwnd=0)

data (length=30)

A

E2EMON, April 3, 2006How to Identify the Speed Limiting Factor of a TCP Flow

Application layer limitations (2)

Slow receiver limitation

Identification– Measure how often the

receive window decreases

Page 9: 1 How to Identify the Speed Limiting Factor of a TCP Flow E2EMON 2006 Vancouver Mark Timmer April 3, 2006 Co-authors: Pieter-Tjerk de Boer and Aiko Pras

9

data (length=30)data (length=30)

ack (rwnd=150)

ack (length=0)ack (length=4)

ack (length=0)ack (length=4)

data (length=30)

data (length=30)data (length=30)

data (length=30)

A B

E2EMON, April 3, 2006How to Identify the Speed Limiting Factor of a TCP Flow

Application layer limitations (3)

Application protocol limitation

Identification– Measure how often an ACK

contains data

Note:We only consider flows sending data one-way

Page 10: 1 How to Identify the Speed Limiting Factor of a TCP Flow E2EMON 2006 Vancouver Mark Timmer April 3, 2006 Co-authors: Pieter-Tjerk de Boer and Aiko Pras

10

E2EMON, April 3, 2006How to Identify the Speed Limiting Factor of a TCP Flow

Network limitation (1)

Limited by loss / retransmission

time

#outs

tandin

g byte

s ‘TCP Friendly formula’MSS cBWRTT p

Page 11: 1 How to Identify the Speed Limiting Factor of a TCP Flow E2EMON 2006 Vancouver Mark Timmer April 3, 2006 Co-authors: Pieter-Tjerk de Boer and Aiko Pras

11

E2EMON, April 3, 2006How to Identify the Speed Limiting Factor of a TCP Flow

– Large buffers– Entire receive window stored– Injecting more packets more delay

Network limitation (2)

Limited by delay

extra datathroughput of bottleneck link extra delay

Page 12: 1 How to Identify the Speed Limiting Factor of a TCP Flow E2EMON 2006 Vancouver Mark Timmer April 3, 2006 Co-authors: Pieter-Tjerk de Boer and Aiko Pras

12

E2EMON, April 3, 2006How to Identify the Speed Limiting Factor of a TCP Flow

TCP buffers limitations The receive buffer limitation The send buffer limitation

data (length=10data (length=10)

ack (rwnd=30)data (length=10)

ack (rwnd=30)ack (rwnd=30)

ack (rwnd=30)

data (length=10)ack (rwnd=30)

data (length=10)data (length=10)

data (length=10)

rwnd

full

rwnd

full

BA

60 by

tes

data (length=20)data (length=20)data (length=20)

ack (rwnd=100)A B

ack (rwnd=100)data (length=20)

data (length=20)data (length=20)

ack (rwnd=100)

ack (rwnd=100)

ack (rwnd=100)

60 by

tes

Page 13: 1 How to Identify the Speed Limiting Factor of a TCP Flow E2EMON 2006 Vancouver Mark Timmer April 3, 2006 Co-authors: Pieter-Tjerk de Boer and Aiko Pras

13

time1 t2 t4t3

receivewindow

#outs

tandin

g byte

s

t

E2EMON, April 3, 2006How to Identify the Speed Limiting Factor of a TCP Flow

• Peaks

In-depth: the receive window limitation

data (length=10data (length=10)

ack (rwnd=30)data (length=10)

ack (rwnd=30)ack (rwnd=30)

ack (rwnd=30)

data (length=10)ack (rwnd=30)

data (length=10)data (length=10)

data (length=10)

rwnd

full

rwnd

full

BA

time1 t2 t4t3

receivewindow

#outs

tandin

g byte

s

t

Page 14: 1 How to Identify the Speed Limiting Factor of a TCP Flow E2EMON 2006 Vancouver Mark Timmer April 3, 2006 Co-authors: Pieter-Tjerk de Boer and Aiko Pras

14

E2EMON, April 3, 2006How to Identify the Speed Limiting Factor of a TCP Flow

Measurement results

Category % flows % bytesUndetermined 20 – 40 10 – 20Network 20 – 30 30 – 40Send buffer 0 – 10 0 – 10Receive buffer 10 – 15 10 – 20Slow sender 20 – 30 20 – 40Slow receiver 0 – 5 0 – 5Application protocol 0 – 10 0 – 1

Page 15: 1 How to Identify the Speed Limiting Factor of a TCP Flow E2EMON 2006 Vancouver Mark Timmer April 3, 2006 Co-authors: Pieter-Tjerk de Boer and Aiko Pras

15

E2EMON, April 3, 2006How to Identify the Speed Limiting Factor of a TCP Flow

Conclusions

• Upgrading network still useful• However, many flows limited by buffers

• Recommentations:– Perform statistical analyses– Develop tool to ‘fix’ TCP-buffer limited flows– Detect changes of limiting factor in time

Page 16: 1 How to Identify the Speed Limiting Factor of a TCP Flow E2EMON 2006 Vancouver Mark Timmer April 3, 2006 Co-authors: Pieter-Tjerk de Boer and Aiko Pras

16

Questions?

E2EMON, April 3, 2006How to Identify the Speed Limiting Factor of a TCP Flow