21
Presentation by Joe Szymanski For Upper Layer Protocols June 15, 2022

Presentation by Joe Szymanski For Upper Layer Protocols May 18, 2015

Embed Size (px)

Citation preview

Page 1: Presentation by Joe Szymanski For Upper Layer Protocols May 18, 2015

Presentation by Joe SzymanskiFor Upper Layer Protocols

April 18, 2023

Page 2: Presentation by Joe Szymanski For Upper Layer Protocols May 18, 2015

7654321

What is a big fat pipe?High bandwidth-delay product

What is the unit of measure? Bits per seconds times seconds results in bits?

Bandwidth-delay product is max bits “in flight”

Data1 bps

Delay = 6 seconds

Page 3: Presentation by Joe Szymanski For Upper Layer Protocols May 18, 2015

Why are big fat pipes special?Two parts to bandwidth-delay

Bandwidth high speedDelay

Each requires special considerations with regards to congestion control

Page 4: Presentation by Joe Szymanski For Upper Layer Protocols May 18, 2015

The effects of high speedDuring steady data transfer:

What error rate is needed to reach a given throughput?

For packet size = 1500 bytes and RTT = 100 ms:

To reach a throughput of 10 Gbps:

pprrateerrorpacket

ThroughputMax__

5.1_

bpss

byteperbitsbytesppr 5102.1

1.0

__815001

10

510

102

102.15.1

10

p

p

Page 5: Presentation by Joe Szymanski For Upper Layer Protocols May 18, 2015

Other difficulties for high speedPacket loss rate creates a limit to max window

sizeHow long to reach max throughput in slow

start?For a 10Gbps link, it takes a windows size of

83,333 packets and 17 RTTsRecovery from consecutive timeouts

Two consecutive timeouts ? First timeout Second timeout

To reach 10Gbps again, it takes 83,332 RTTs

ssthresh = cwnd/2, cwnd = 1 MSS

ssthresh = 2 MSS, cwnd = 1 MSS

Page 6: Presentation by Joe Szymanski For Upper Layer Protocols May 18, 2015

What about high delay?High delay means lots of bits are in flight at

onceA single loss takes just over 1 RTT to be

detected2 × bandwidth-delay product bits are sent

between loss and detection of lossAll of these bits potentially need to be

retransmittedWhat can fix this?

SACK with selective repeat

Page 7: Presentation by Joe Szymanski For Upper Layer Protocols May 18, 2015

Proposed SolutionsHigh Speed TCP

Proposed by Sally Floyd The ICSI Center for Internet Research

Once the congestion window reaches a threshold, a new function is used for window increases and decreases

H-TCPProposed by D. Leith and R. Shorten

Hamilton Institute, NUI MaynoothChanges the values for additive increase and

multiplicative decrease based on congestion

Page 8: Presentation by Joe Szymanski For Upper Layer Protocols May 18, 2015

High Speed TCP (Floyd)While packet drop rate p < 0.0015 (or while

congestion window < 31), use standard TCP rules

Otherwise, increase/decrease the congestion window by a function of the current congestion windowIf Wi is the current congestion window, let Wi+1

f(Wi)Different functions are used for increase and

decrease of the congestion window

Page 9: Presentation by Joe Szymanski For Upper Layer Protocols May 18, 2015

High Speed TCP (Floyd) (cont’d)

Through a lot of math based on the chosen packet drop rate and the required throughput, the following are given for a (the function for increasing the cwnd) and b (the function for decreasing the cwnd) w is the current congestion window (in packets)W is the threshold to use the new equationsW1 is the required final throughput

B = b(W1)

)(0.2

)()(0.2)(

2

wb

wpwbwwa

5.0)log()log(

)log()log()5.0()(

1

WW

WwBwb

Page 10: Presentation by Joe Szymanski For Upper Layer Protocols May 18, 2015

HTCP (Leith, Shorten)Using an analysis of drop-tail networks, it is

shown that a TCP friendly congestion control scheme must have the following:Let α be the additive increase factorLet β be the multiplicative decrease factorα = 2(1 - β)

Highest throughput can be achieved by settingα must be calculated

as in the above equationmax

min

RTT

RTT

Page 11: Presentation by Joe Szymanski For Upper Layer Protocols May 18, 2015

HTCP (Leith, Shorten) (cont’d)

For each ACK, set α as a factor of the time since the last congestion eventIf the last event was recently, set δ = 1

This corresponds to standard TCP congestion controlOtherwise, set δ = f(t), where f is a function of t,

the time since the last congestion eventSet α = 2(1 – β)δ to maintain TCP friendliness

For each congestion event, set β = RTTmin / RTTmax

There are functions that can be used that avoid direct calculations on RTTmin and RTTmax

Page 12: Presentation by Joe Szymanski For Upper Layer Protocols May 18, 2015

ImplementationChange SCTP stack to allow for congestion

control modulesImplement and test an HTCP moduleStandard test cases:

Loss rates of 0%, 5%, and 10%For more details, contact me later

Page 13: Presentation by Joe Szymanski For Upper Layer Protocols May 18, 2015

Results, 0% loss

Standard

HTCP

Page 14: Presentation by Joe Szymanski For Upper Layer Protocols May 18, 2015

Results, 5% loss

Standard

HTCP

Page 15: Presentation by Joe Szymanski For Upper Layer Protocols May 18, 2015

Results, 10% loss

Standard

HTCP

Page 16: Presentation by Joe Szymanski For Upper Layer Protocols May 18, 2015

What happened?HTCP performed worse than standard

congestion control in high loss casesWhy?

HTCP only performed slightly better than standard congestion control otherwise

What changes can be made to increase performance?Remove some of the multiplicative decrease

Page 17: Presentation by Joe Szymanski For Upper Layer Protocols May 18, 2015

Results, 0% loss

Standard

HTCP

HTCP (Modified)

Page 18: Presentation by Joe Szymanski For Upper Layer Protocols May 18, 2015

Results, 5% loss

Standard

HTCP

HTCP (Modified)

Page 19: Presentation by Joe Szymanski For Upper Layer Protocols May 18, 2015

Results, all cases

Don’t panic!I’ll show you what each line means.

Page 20: Presentation by Joe Szymanski For Upper Layer Protocols May 18, 2015

What’s wrong with the modification?Is the modified HTCP algorithm TCP friendly?Will the modified HTCP algorithm work well

on a link that is used by multiple TCP streams?

Page 21: Presentation by Joe Szymanski For Upper Layer Protocols May 18, 2015