23
6/10/2010 Waseda University 1 Implementation Experiments of TCP Congestion Control Supporting Loss-Fairness Kazumine Ogura, Zhou su, Jiro Katto Dept. of Computer Science, Waseda University 3-4-1 Okubo, Shinjuku-ku, Tokyo, 169-8555 Japan E-mail: [email protected]

Implementation Experiments of TCP Congestion Control ...cqr2010.ieee-cqr.org/Day 3/Technical Session/(3)KazumineOgura.pdfWaseda University. 2. Outlines • Backgrounds • Existing

Embed Size (px)

Citation preview

Page 1: Implementation Experiments of TCP Congestion Control ...cqr2010.ieee-cqr.org/Day 3/Technical Session/(3)KazumineOgura.pdfWaseda University. 2. Outlines • Backgrounds • Existing

6/10/2010

Waseda University 1

Implementation Experiments of TCP Congestion Control Supporting Loss-Fairness

Kazumine Ogura,Zhou su, Jiro Katto

Dept. of Computer Science, Waseda University 3-4-1 Okubo, Shinjuku-ku, Tokyo, 169-8555 Japan

E-mail: [email protected]

Page 2: Implementation Experiments of TCP Congestion Control ...cqr2010.ieee-cqr.org/Day 3/Technical Session/(3)KazumineOgura.pdfWaseda University. 2. Outlines • Backgrounds • Existing

Waseda University 2

Outlines

• Backgrounds• Existing Protocols• Problem• Analysis Model• Proposal• Experiments• Conclusions

6/10/2010

Page 3: Implementation Experiments of TCP Congestion Control ...cqr2010.ieee-cqr.org/Day 3/Technical Session/(3)KazumineOgura.pdfWaseda University. 2. Outlines • Backgrounds • Existing

Waseda University 3

Backgrounds -1-Internet• Application:

– WWW– E-mail– File transfer(P2P)– Multimedia StreamingEtc

• Device– Desktop– Laptop– Cell Phone– Game device

6/10/2010

Page 4: Implementation Experiments of TCP Congestion Control ...cqr2010.ieee-cqr.org/Day 3/Technical Session/(3)KazumineOgura.pdfWaseda University. 2. Outlines • Backgrounds • Existing

Waseda University 4

Backgrounds -2-

TCP• End-to-End modification• Window-based protocol• Best Effort Efficiency

How many packets should I send at a time?

data

6/10/2010

Page 5: Implementation Experiments of TCP Congestion Control ...cqr2010.ieee-cqr.org/Day 3/Technical Session/(3)KazumineOgura.pdfWaseda University. 2. Outlines • Backgrounds • Existing

Waseda University 5

Existing Protocols -1-

• Loss-based Protocol– TCP-Reno– High-speed TCP [S. Floyd RFC3649, 2003]

– BIC-TCP [L. Xu INFOCOM 2004]

– TCP-Westwood [C. Casetti Mobicom 2001]

– CUBIC [I. Rhee PFLDnet 2005]

• Delay-based Protocol– FAST TCP [C. Jin INFOCOM 2004]

StandardTCP

Linux

6/10/2010

Page 6: Implementation Experiments of TCP Congestion Control ...cqr2010.ieee-cqr.org/Day 3/Technical Session/(3)KazumineOgura.pdfWaseda University. 2. Outlines • Backgrounds • Existing

Waseda University 6

Existing Protocols -2-

• Hybrid (Combined loss-based and delay-based protocols)– TCP-Fusion [K.Kaneko, PFLDnet, 2007]– Gentle High-speed TCP [K. Tokuda, HSN 2003]– TCP-Africa [R. King, INFOCOM 2005]– TCP-Adaptive Reno (ARENO) [H. Shimonishi,

PFLDnet 2006]– Compound TCP (CTCP) [K. Tan, INFOCOM 2006]

YeAH-TCP and Illinois-TCP are also Hybrid TCP

WindowsVista/7

6/10/2010

Page 7: Implementation Experiments of TCP Congestion Control ...cqr2010.ieee-cqr.org/Day 3/Technical Session/(3)KazumineOgura.pdfWaseda University. 2. Outlines • Backgrounds • Existing

Waseda University 7

Problem

RTT-Fairness

α

⎟⎟⎠

⎞⎜⎜⎝

⎛∝

1

2

21

RTTRTT

throughputthroughput

RTT1

RTT2

Reno High speed Scalable

1~2 5.56 ∞

RTT1 < RTT2

Inverse proportion(RTT and throughput)

RTT(Round Trip Time)

6/10/2010

Page 8: Implementation Experiments of TCP Congestion Control ...cqr2010.ieee-cqr.org/Day 3/Technical Session/(3)KazumineOgura.pdfWaseda University. 2. Outlines • Backgrounds • Existing

Waseda University 8

Analysis Model -1-

• Model IResidual capacity

• Model IIFull capacity

Congestion window

Buffering Buffer

BDP

Model I Model IITime

Network capacity(Link capacity+Buffer)

TCP-Renot1 t2

Overflow

6/10/2010

Page 9: Implementation Experiments of TCP Congestion Control ...cqr2010.ieee-cqr.org/Day 3/Technical Session/(3)KazumineOgura.pdfWaseda University. 2. Outlines • Backgrounds • Existing

4/26/2010

Waseda University 9

Analysis Model -1-

Use three protocols–TCP-Reno

cwnd = cwnd + 1 (per RTT)

–TCP-Libracwnd = cwnd + k * RTT2 (per RTT)

–TCP-Alphacwnd = cwnd + k’ * RTT (per RTT)

k and k’ are constant value

Page 10: Implementation Experiments of TCP Congestion Control ...cqr2010.ieee-cqr.org/Day 3/Technical Session/(3)KazumineOgura.pdfWaseda University. 2. Outlines • Backgrounds • Existing

Waseda University 10

Analysis Model -2-“Two flow with different RTT”

2*RTT1=RTT2

Link IRTT=RTT1

Link IIRTT=RTT1

S2

R2R1S1

router

B1B2(>B1)

Packet lossRTT1(Reno), RTT2(Reno, Alpha, Libra)

6/10/2010

Page 11: Implementation Experiments of TCP Congestion Control ...cqr2010.ieee-cqr.org/Day 3/Technical Session/(3)KazumineOgura.pdfWaseda University. 2. Outlines • Backgrounds • Existing

Waseda University 11

Model I -1-Residual capacity

Link IRTT=RTT1

Link IIRTT=RTT1

S2

R2R1S1

router

02468

1012141618

0 10 20 30 40 50 60 70 80 90 100Time(s)

Thro

ughp

ut[M

bps]

Reno(RTT1)Reno(RTT2)Alpha(RTT2)Libra(RTT2)

0

50

100

150

200

250

0 10 20 30 40 50 60 70 80 90 100Time(s)

cwnd

[pkt

] Reno(RTT1)

Reno(RTT2)

Alpha(RTT2)

Libra(RTT2)

Window Size Throughput

)()(stimeElapsed

bitsizeDataPacket loss

6/10/2010

Page 12: Implementation Experiments of TCP Congestion Control ...cqr2010.ieee-cqr.org/Day 3/Technical Session/(3)KazumineOgura.pdfWaseda University. 2. Outlines • Backgrounds • Existing

Waseda University 12

Model I -2-Residual capacity

Link IRTT=RTT1

Link IIRTT=RTT1

S2

R2R1S1

router

Link I… ● ● ● ● ● ● ● ● ● ● ●

Link II● ● …

02468

1012141618

0 10 20 30 40 50 60 70 80 90 100Time(s)

Thro

ughp

ut[M

bps]

Reno(RTT1)Reno(RTT2)Alpha(RTT2)Libra(RTT2)

Link I… ● ● ● ● ● ● ● ● ● ● ●

Link II● ● ● ● ● …

Reno 4:1

Alpha 2:1

Libra 1:1

Link I… ● ● ● ● ● ● ● ● ● ● ●

Link II● ● ● …

Packet loss

6/10/2010

Page 13: Implementation Experiments of TCP Congestion Control ...cqr2010.ieee-cqr.org/Day 3/Technical Session/(3)KazumineOgura.pdfWaseda University. 2. Outlines • Backgrounds • Existing

Waseda University 13

Model II -1-Full capacity

Link IRTT=RTT1

Link IIRTT=RTT1

S2

R2R1S1

router

Window Size Queueing Size

)()( pktBDPpktcwnd −Packet loss

0

50

100

150

200

250

0 10 20 30 40 50 60 70 80 90 100Time(s)

queu

eing

buf

fer[p

kt]

Reno(RTT1)

Reno(RTT2)

Alpha(RTT2)

Libra(RTT2)

0

200

400

600

800

1000

0 10 20 30 40 50 60 70 80 90 100

Time(s)

cwnd

[pkt

] Reno(RTT1)

Reno(RTT2)

Alpha(RTT2)

Libra(RTT2)

6/10/2010

Page 14: Implementation Experiments of TCP Congestion Control ...cqr2010.ieee-cqr.org/Day 3/Technical Session/(3)KazumineOgura.pdfWaseda University. 2. Outlines • Backgrounds • Existing

Waseda University 14

Model II -2-Full capacity

Alpha 1:1 Libra 1:2

Link IRTT=RTT1

Link IIRTT=RTT1

S2

R2R1S1

router

Packet loss

Reno 2:1

0

50

100

150

200

250

0 10 20 30 40 50 60 70 80 90 100Time(s)

queu

eing

buf

fer[p

kt]

Reno(RTT1)

Reno(RTT2)

Alpha(RTT2)

Libra(RTT2)

6/10/2010

Page 15: Implementation Experiments of TCP Congestion Control ...cqr2010.ieee-cqr.org/Day 3/Technical Session/(3)KazumineOgura.pdfWaseda University. 2. Outlines • Backgrounds • Existing

Waseda University 15

ProposalIncrement Phase

Model I: use Libra algorithm

Model II: use Alpha algorithm

Decrement Phase

detectedislosspackettheif

cwndcwndRTT

RTTmaxcwnd min ⎟

⎠⎞

⎜⎝⎛ ⋅=

2,

startsbufferingtheifRTTkcwnd ⋅′=+

delaynoisthereifRTTkcwnd 2⋅=+

6/10/2010

Page 16: Implementation Experiments of TCP Congestion Control ...cqr2010.ieee-cqr.org/Day 3/Technical Session/(3)KazumineOgura.pdfWaseda University. 2. Outlines • Backgrounds • Existing

Waseda University 16

Proposal Behavior Congestion window

Network capacity(Link capacity+Buffer)cwndloss

bufferingBuffer(<BDP)

Proposal

BDP

Libra Alpha

0 5a 10a Time[ms]

TCP-Westwood

6/10/2010

Page 17: Implementation Experiments of TCP Congestion Control ...cqr2010.ieee-cqr.org/Day 3/Technical Session/(3)KazumineOgura.pdfWaseda University. 2. Outlines • Backgrounds • Existing

Waseda University 17

Experiments

• The router buffer size is equal to 500[pkt](or variable)• Di is varied respectively according to RTTi• k = 1/(0.04)2, k’ = 1/(0.04)

[k assumes 40ms competing Reno ]• Bottleneck Link is 100[Mbps]• Implementation (Packet Storm) and simulation (ns2)

sender n

sender 1

D 1[ms]

receiver 1

receiver n

D n [ms]100[Mbps],1[ms]

1[ms]

1[ms]

RTT 1[ms]

RTT n [ms]

6/10/2010

Page 18: Implementation Experiments of TCP Congestion Control ...cqr2010.ieee-cqr.org/Day 3/Technical Session/(3)KazumineOgura.pdfWaseda University. 2. Outlines • Backgrounds • Existing

Waseda University 18

RTT-Fairness -Packet loss-Two flow(RTT1 =40[ms], RTT2 =

120[ms])Packet loss variableBuffer size(=500[pkt])

Result-ThroughptutA flow with small RTT valueutilizes large capacity

-Packet loss countsA flow with small RTT valueexperiences more packet loss a)Reno

6/10/2010

Page 19: Implementation Experiments of TCP Congestion Control ...cqr2010.ieee-cqr.org/Day 3/Technical Session/(3)KazumineOgura.pdfWaseda University. 2. Outlines • Backgrounds • Existing

Waseda University 19

RTT-Fairness -Packet loss-

b)Libra c)Proposal-Throughptut• A flow with large RTT valueutilizes large capacity(Libra)• Constant throughputwithout RTT value(Proposal)

-Packet loss counts• Constant(implementation)• A flow with small RTT valueexperiences more packet loss(simulation)

6/10/2010

Page 20: Implementation Experiments of TCP Congestion Control ...cqr2010.ieee-cqr.org/Day 3/Technical Session/(3)KazumineOgura.pdfWaseda University. 2. Outlines • Backgrounds • Existing

Waseda University 20

Efficiency -1-Single flow(RTT1 =variable), Bottleneck link=1[Gbps]Packet loss 10-6

Buffer size(=500[pkt])

ResultConstant- Proposal- Libra

Decreasing- Reno- Westwood- Alpha

6/10/2010

Page 21: Implementation Experiments of TCP Congestion Control ...cqr2010.ieee-cqr.org/Day 3/Technical Session/(3)KazumineOgura.pdfWaseda University. 2. Outlines • Backgrounds • Existing

Waseda University 21

Efficiency -2-

200Mbps

To check the validation of implementation

6/10/2010

Page 22: Implementation Experiments of TCP Congestion Control ...cqr2010.ieee-cqr.org/Day 3/Technical Session/(3)KazumineOgura.pdfWaseda University. 2. Outlines • Backgrounds • Existing

Waseda University 22

Friendliness

Single flow(RTT1 =40[ms], RTT2 = variable)Bottleneck link=100[Gbps], Packet loss =10-4

Buffer size(=BDP1 [pkt])

Result- Proposal does not prevent Reno from using bandwidth- Proposal utilizes residual bandwidth

a)Reno vs Proposal b)Reno vs Reno

6/10/2010

Page 23: Implementation Experiments of TCP Congestion Control ...cqr2010.ieee-cqr.org/Day 3/Technical Session/(3)KazumineOgura.pdfWaseda University. 2. Outlines • Backgrounds • Existing

Waseda University 23

Conclusions

Proposal Evaluations • RTT-Fairness• Efficiency• Friendliness

Future Works– Experiments in wireless network– Adopt the estimation of competing flow’s

RTT to support automatic decision k(or k’)

High BER,Unstable channel

characteristic,Mobility etc.

6/10/2010