SlideShare une entreprise Scribd logo
1  sur  30
CUBIC: A New TCP-
Friendly High-Speed TCP
Variant
S Ha, I Rhee, L Xu - ACM SIGOPS Operating Systems Review, 2008
Presenter: Deawoo Kim
LANADA. KAIST
1
TCP Congestion control
• TCP seeks to
• Achieve high utilization
• Without congestion
• Source calculates cwnd from indication of network
congestion
• Congestion indications
• Losses
• Delay
• Marks
2
Window Flow Control
• W packets transmitted per RTT
• Source rate =
• If W too small, then rate « capacity
• If W too big, then rate > capacity => congestion
3
TCP Reno (Jacobson 1990)
4
CUBIC Congestion Control
5
Wikipedia: CUBIC TCP
• CUBIC is an implementation of TCP with an
optimized congestion control algorithm for
high bandwidth networks with high latency
1. … the window is a cubic function of time since the
last congestion event.
Scalable, stable
2. CUBIC does not rely on the receipt of ACKs to
increase the window size. CUBIC's window size is
dependent only on the last congestion event.
• Standard TCP, flows with very short RTTs will receive ACKs
faster and therefore have their congestion windows grow
faster than other flows with longer RTTs. CUBIC allows for
more fairness between flows since the window growth is
independent of RTT.
6
Bandwidth and Delay Product (BDP)
• Network feature – BW, delay product (BDP)
• Total number of packet needed in flight while keeping the BW
fully utilized
• BDP(capacity in bits) = path bandwidth (bps) * round-trip
time(s)
• Internet evolves to include many very high speed and
long distance network paths
• These networks are characterized by large BDP
Source Destination
Delay (RTT)
Bandwidth
Fully-utilized
Under-utilized
BDP
7
Under-utilization in Large BDP (example)
• Network environment
• BW : 10 Gbps
• RTT : 100ms
• Packet : 1250 bytes
• BDP of the path : 100,000 packets
• TCP grow its window from mid-point of BDP (50,000
packets)
• After 50,000 RTT, fully-utilized (100,000packets)
(5,000 sec, 1.4hour)
• If flow finish before 1.4 hour then under-utilization
8
Legacy TCP
• 1. Multiplicative decrease
• 2. Growth of CWND depends on RTT
Time
cwnd
CA
TD
ssthresh
TD TD TD
Wm
CA CA CA
Large RTT
9
Related work
• STCP (Scalable TCP)
• Recovery time from loss events be constant regardless of the
window size -> scalable
• HSTCP (HighSpeed TCP)
• 기본적으로 AIMD
• Window size가 특정 threshold 넘으면,
increase factor 증가, decrease factor 감소
• TCP-Vegas
• δ < 𝛼 : path is not congested -> increase sending rate
• δ > 𝛽 : congestion -> reduce sending rate
• δ : difference btw expected throughput and actual throughput
• 𝛼 : low threshold
• 𝛽 : upper threshold
• HTCP
• Growth function is function of elapsed time (indep. RTT)
• Decrease factor is adjusted to be proportional to the queue size
10
Abstract
• CUBIC
• Congestion control protocol for TCP
• Default TCP algorithm in Linux
• Modify linear window growth function -> cubic function
• Goal
1. Improve the scalability of TCP over fast and long distance
networks
2. Equitable BW allocation among flows with different RTT
3. Stable : keep the CW much longer at the saturation point
4. TCP friendliness
11
BIC-TCP
• Window growth function : simply a logarithmic concave
function
• Stable and Scalable
• How does it work?
• Binary search
• Window grows to the mid-point of max and min
• Additive increasing
• Max probing
• Feature
• Far from the saturation point : aggressive increase CWND
• Close to saturation point : slowly increase CWND
• Overshoot occurs very small
12
BIC-TCP Algorithm
Packet loss
event
Wmax
Wmin = β*Wmax
midpoint = (Wmin + Wmax)/2
Wmin – midpoint > Smax
Wmin + SmaxWmin
midpoint = (Wmin + Wmax)/2
Wmin + Smax
Wmin
Additive Increase
midpoint = (Wmin + Wmax)/2
Wmin + Smin
Wmin
(Wmin – midpoint) < Smin
Binary Search
Wmax + Smin
Wmax + Smin
Wmax +Smax
Slow Start
Wmax + 2Smax
Wmax + 3Smax
Additive Inc.
Max Probing
13
BIC-TCP
• Additive increasing
• Jumping to the midpoint can be too much increase within one
RTT
• Binary search algorithm
• Stable
• Max probing
• Find the new saturation point if it has increased
14
New Window Growth Function
• BIC-TCP
• 장점
• Scalability in high speed networks
• Stability with low window oscillations
• 단점
• Growth function can be too aggressive for TCP for short RTT or
low speed networks (RTT-fairness)
• Difference phase (binary search, max probing, 𝑆 𝑚𝑎𝑥, 𝑆 𝑚𝑖𝑛)
complexity
• New window growth function 필요
• BIC-TCP 장점 취함
• Simple
• TCP friendliness
• RTT-fairness
15
Introduction
• CUBIC
• Next version of BIC-TCP
• Window growth -> cubic function
• cubic function – Incidental, out of convenience
• In mathematics, a cubic function is a function of the
form
• The window growth function of CUBIC
• 𝐶 : CUBIC parameter
• 𝑡 : elapsed time from the last window reduction
• 𝐾 : time period take to 𝑊𝑚𝑎𝑥
16
TCP CUBIC
Packet loss
event
Time
Steady State Behavior
Max Probing
Wmax
Around Wmax, window growth almost
becomes zeroFast growth upon
reduction
Cubic starts probing for
more Bandwidth
17
RTT-fairness
• Window growth depends only on the real time(congestion
epoch) between two consecutive congestion events
• Independent of RTT
BIC-TCPCUBIC
Large RTT
Small RTT
18
TCP-friendliness
• Short RTT – window growth rate slower than TCP
standards
• Current wnd in CUBIC < window size of standard TCP
at time 𝑡
• Set cwnd as Wtcp(t) (Standard TCP)
• Improve convergence speed of CUBIC
• New flow join -> existing flow give up BW
• 𝑊𝐿𝑎𝑠𝑡 𝑚𝑎𝑥 > 𝑐𝑤𝑛𝑑 -> reducing 𝑊𝑚𝑎𝑥 further
19
Fast Convergence
CUBIC window growth function
• Congestion avoidance basic
• Compute the window growth rate during next RTT period
• Set 𝑊(𝑡 + 𝑅𝑇𝑇) as target congestion window
• 3 modes
• TCP-friendly region
• Concave region
• Convex region
• Multiplicative decrease of cwnd factor of 𝛽
20
TCP Cubic Advantages
• Good RTT fairness
• Growth dominated by t, competing flows have same t after
synchronized packet loss
• Real-time dependent
• Similar to BIC but linear increases are time dependent
• Does not depend on ACK’s like TCP/ Reno
• Scalability and stability
• Cubic increases window to Wmax quickly and keeps it there longer
• High utilization in large BDP
• Scalability
• Independent RTT
21
TCP Cubic Drawbacks
• The speed to react
• It can be sluggish to find the new saturation point if the
saturation point has increased far beyond the last one
• Slow Convergence
• Flows with higher cwnd are more aggressive initially
• Prolonged unfairness between flows
22
CUBIC action
23
Fairness to
standard TCP
• Standard TCP performs well
• Small BDP
• Short RTT
24
Thank you
25
BIC Algorithm
while (cwnd != Wmax){
If ((Wmin – midpoint) > Smax)
cwnd = cwnd + Smax
else
If ((Wmin – midpoint) < Smin)
cwnd = Wmax
else
cwnd = midpoint
If (no packet loss)
Wmin = cwnd
else
Wmin = β*cwnd
Wmax = cwnd
midpoint = (Wmax + Wmin)/2
}
(Additive Increase)
(Binary Search)
26
while (cwnd >= Wmax){
If (cwnd < Wmax + Smax)
cwnd = cwnd + Smin
else
cwnd = cwnd + Smax
If (packet loss)
Wmin = β*cwnd
Wmax = cwnd
}
Max Probing
CUBIC window growth function
• Window growth function of CUBIC is a cubic function
• CUBIC use both concave and convex for window size
• Details of CUBIC
• Loss event
• Register 𝑊𝑚𝑎𝑥 loss 발생한 지점
• Multiplicative decrease of cwnd factor of 𝛽 (decrease constant)
• Start to increase the window using concave profile of the cubic
function
• Plateau at 𝑊𝑚𝑎𝑥, concave growth continue until the window
size becomes 𝑊𝑚𝑎𝑥
• Cubic function turn into convex profile (max probing)
27
Slow Start
Congestion Avoidance
28
Fast Retransmit
29
TCP Reno (Jacobson 1988)
Fast Recovery
• Motivation: prevent ‘pipe’ from emptying after fast retransmit
• Idea: each dupACKrepresents a packet having left the pipe
• Enter CA after 3 dupACKs(Fast Retransmit/Fast Recovery)
• Set ssthresh←cwnd/2
• Set cwnd←ssthresh
• Enter SS after timeout
• Set ssthresh←cwnd/2
• Set cwnd←1
30

Contenu connexe

Tendances (20)

Réseaux mobiles
Réseaux mobiles Réseaux mobiles
Réseaux mobiles
 
Congestion control in tcp
Congestion control in tcpCongestion control in tcp
Congestion control in tcp
 
Routage statique
Routage statiqueRoutage statique
Routage statique
 
Technical Overview of QUIC
Technical  Overview of QUICTechnical  Overview of QUIC
Technical Overview of QUIC
 
Emily Stamm - Post-Quantum Cryptography
Emily Stamm - Post-Quantum CryptographyEmily Stamm - Post-Quantum Cryptography
Emily Stamm - Post-Quantum Cryptography
 
Congestion Control
Congestion ControlCongestion Control
Congestion Control
 
Leaky bucket algorithm
Leaky bucket algorithmLeaky bucket algorithm
Leaky bucket algorithm
 
Redondance de routeur (hsrp, vrrp, glbp)
Redondance de routeur (hsrp, vrrp, glbp)Redondance de routeur (hsrp, vrrp, glbp)
Redondance de routeur (hsrp, vrrp, glbp)
 
Chap08 gb 03_kh
Chap08 gb 03_khChap08 gb 03_kh
Chap08 gb 03_kh
 
Quality of service
Quality of serviceQuality of service
Quality of service
 
Routage ospf
Routage ospfRoutage ospf
Routage ospf
 
Congestion control
Congestion controlCongestion control
Congestion control
 
QoS
QoSQoS
QoS
 
MPLS-TE
MPLS-TEMPLS-TE
MPLS-TE
 
Csma protocols
Csma protocolsCsma protocols
Csma protocols
 
LTE RACH Procedure
LTE RACH ProcedureLTE RACH Procedure
LTE RACH Procedure
 
Multicastingand multicast routing protocols
Multicastingand multicast routing protocolsMulticastingand multicast routing protocols
Multicastingand multicast routing protocols
 
Optim 2G
Optim 2GOptim 2G
Optim 2G
 
Congestion control in TCP
Congestion control in TCPCongestion control in TCP
Congestion control in TCP
 
Routage rip
Routage ripRoutage rip
Routage rip
 

Similaire à Cubic

Performance Evaluation of High Speed Congestion Control Protocols
Performance Evaluation of High Speed Congestion Control  ProtocolsPerformance Evaluation of High Speed Congestion Control  Protocols
Performance Evaluation of High Speed Congestion Control ProtocolsIOSR Journals
 
Tcp congestion control
Tcp congestion controlTcp congestion control
Tcp congestion controlAbdo sayed
 
Tcp congestion control (1)
Tcp congestion control (1)Tcp congestion control (1)
Tcp congestion control (1)Abdo sayed
 
tcpflowcontrolanurag-150513130509-lva1-app6892 (1).pptx
tcpflowcontrolanurag-150513130509-lva1-app6892 (1).pptxtcpflowcontrolanurag-150513130509-lva1-app6892 (1).pptx
tcpflowcontrolanurag-150513130509-lva1-app6892 (1).pptxGOKULKANNANMMECLECTC
 
TCP protocol flow control
TCP protocol flow control TCP protocol flow control
TCP protocol flow control anuragjagetiya
 
Network protocols and vulnerabilities
Network protocols and vulnerabilitiesNetwork protocols and vulnerabilities
Network protocols and vulnerabilitiesG Prachi
 
Troubleshooting TCP/IP
Troubleshooting TCP/IPTroubleshooting TCP/IP
Troubleshooting TCP/IPvijai s
 
Data transfer experiments over 100G paths
Data transfer experiments over 100G pathsData transfer experiments over 100G paths
Data transfer experiments over 100G pathsJisc
 
Improvement of Congestion window and Link utilization of High Speed Protocols...
Improvement of Congestion window and Link utilization of High Speed Protocols...Improvement of Congestion window and Link utilization of High Speed Protocols...
Improvement of Congestion window and Link utilization of High Speed Protocols...IOSR Journals
 
Lecture 19 22. transport protocol for ad-hoc
Lecture 19 22. transport protocol for ad-hoc Lecture 19 22. transport protocol for ad-hoc
Lecture 19 22. transport protocol for ad-hoc Chandra Meena
 
Course on TCP Dynamic Performance
Course on TCP Dynamic PerformanceCourse on TCP Dynamic Performance
Course on TCP Dynamic PerformanceJavier Arauz
 

Similaire à Cubic (20)

NE #1.pptx
NE #1.pptxNE #1.pptx
NE #1.pptx
 
Part9-congestion.pptx
Part9-congestion.pptxPart9-congestion.pptx
Part9-congestion.pptx
 
Performance Evaluation of High Speed Congestion Control Protocols
Performance Evaluation of High Speed Congestion Control  ProtocolsPerformance Evaluation of High Speed Congestion Control  Protocols
Performance Evaluation of High Speed Congestion Control Protocols
 
TCP_Congestion_Control.ppt
TCP_Congestion_Control.pptTCP_Congestion_Control.ppt
TCP_Congestion_Control.ppt
 
Tcp congestion control
Tcp congestion controlTcp congestion control
Tcp congestion control
 
Tcp congestion control (1)
Tcp congestion control (1)Tcp congestion control (1)
Tcp congestion control (1)
 
tcpflowcontrolanurag-150513130509-lva1-app6892 (1).pptx
tcpflowcontrolanurag-150513130509-lva1-app6892 (1).pptxtcpflowcontrolanurag-150513130509-lva1-app6892 (1).pptx
tcpflowcontrolanurag-150513130509-lva1-app6892 (1).pptx
 
TCP protocol flow control
TCP protocol flow control TCP protocol flow control
TCP protocol flow control
 
Network protocols and vulnerabilities
Network protocols and vulnerabilitiesNetwork protocols and vulnerabilities
Network protocols and vulnerabilities
 
Tcp traffic control and red ecn
Tcp traffic control and red ecnTcp traffic control and red ecn
Tcp traffic control and red ecn
 
Troubleshooting TCP/IP
Troubleshooting TCP/IPTroubleshooting TCP/IP
Troubleshooting TCP/IP
 
Lect9
Lect9Lect9
Lect9
 
Lect9 (1)
Lect9 (1)Lect9 (1)
Lect9 (1)
 
Data transfer experiments over 100G paths
Data transfer experiments over 100G pathsData transfer experiments over 100G paths
Data transfer experiments over 100G paths
 
6610-l14.pptx
6610-l14.pptx6610-l14.pptx
6610-l14.pptx
 
Improvement of Congestion window and Link utilization of High Speed Protocols...
Improvement of Congestion window and Link utilization of High Speed Protocols...Improvement of Congestion window and Link utilization of High Speed Protocols...
Improvement of Congestion window and Link utilization of High Speed Protocols...
 
Lecture 19 22. transport protocol for ad-hoc
Lecture 19 22. transport protocol for ad-hoc Lecture 19 22. transport protocol for ad-hoc
Lecture 19 22. transport protocol for ad-hoc
 
Part5-tcp-improvements.pptx
Part5-tcp-improvements.pptxPart5-tcp-improvements.pptx
Part5-tcp-improvements.pptx
 
Course on TCP Dynamic Performance
Course on TCP Dynamic PerformanceCourse on TCP Dynamic Performance
Course on TCP Dynamic Performance
 
TCP Issues in DataCenter Networks
TCP Issues in DataCenter NetworksTCP Issues in DataCenter Networks
TCP Issues in DataCenter Networks
 

Dernier

Call for Papers - International Journal of Intelligent Systems and Applicatio...
Call for Papers - International Journal of Intelligent Systems and Applicatio...Call for Papers - International Journal of Intelligent Systems and Applicatio...
Call for Papers - International Journal of Intelligent Systems and Applicatio...Christo Ananth
 
Double rodded leveling 1 pdf activity 01
Double rodded leveling 1 pdf activity 01Double rodded leveling 1 pdf activity 01
Double rodded leveling 1 pdf activity 01KreezheaRecto
 
UNIT-II FMM-Flow Through Circular Conduits
UNIT-II FMM-Flow Through Circular ConduitsUNIT-II FMM-Flow Through Circular Conduits
UNIT-II FMM-Flow Through Circular Conduitsrknatarajan
 
Top Rated Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...
Top Rated  Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...Top Rated  Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...
Top Rated Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...Call Girls in Nagpur High Profile
 
Booking open Available Pune Call Girls Pargaon 6297143586 Call Hot Indian Gi...
Booking open Available Pune Call Girls Pargaon  6297143586 Call Hot Indian Gi...Booking open Available Pune Call Girls Pargaon  6297143586 Call Hot Indian Gi...
Booking open Available Pune Call Girls Pargaon 6297143586 Call Hot Indian Gi...Call Girls in Nagpur High Profile
 
BSides Seattle 2024 - Stopping Ethan Hunt From Taking Your Data.pptx
BSides Seattle 2024 - Stopping Ethan Hunt From Taking Your Data.pptxBSides Seattle 2024 - Stopping Ethan Hunt From Taking Your Data.pptx
BSides Seattle 2024 - Stopping Ethan Hunt From Taking Your Data.pptxfenichawla
 
UNIT-IFLUID PROPERTIES & FLOW CHARACTERISTICS
UNIT-IFLUID PROPERTIES & FLOW CHARACTERISTICSUNIT-IFLUID PROPERTIES & FLOW CHARACTERISTICS
UNIT-IFLUID PROPERTIES & FLOW CHARACTERISTICSrknatarajan
 
Unit 1 - Soil Classification and Compaction.pdf
Unit 1 - Soil Classification and Compaction.pdfUnit 1 - Soil Classification and Compaction.pdf
Unit 1 - Soil Classification and Compaction.pdfRagavanV2
 
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...ranjana rawat
 
Booking open Available Pune Call Girls Koregaon Park 6297143586 Call Hot Ind...
Booking open Available Pune Call Girls Koregaon Park  6297143586 Call Hot Ind...Booking open Available Pune Call Girls Koregaon Park  6297143586 Call Hot Ind...
Booking open Available Pune Call Girls Koregaon Park 6297143586 Call Hot Ind...Call Girls in Nagpur High Profile
 
data_management_and _data_science_cheat_sheet.pdf
data_management_and _data_science_cheat_sheet.pdfdata_management_and _data_science_cheat_sheet.pdf
data_management_and _data_science_cheat_sheet.pdfJiananWang21
 
result management system report for college project
result management system report for college projectresult management system report for college project
result management system report for college projectTonystark477637
 
Extrusion Processes and Their Limitations
Extrusion Processes and Their LimitationsExtrusion Processes and Their Limitations
Extrusion Processes and Their Limitations120cr0395
 
Intze Overhead Water Tank Design by Working Stress - IS Method.pdf
Intze Overhead Water Tank  Design by Working Stress - IS Method.pdfIntze Overhead Water Tank  Design by Working Stress - IS Method.pdf
Intze Overhead Water Tank Design by Working Stress - IS Method.pdfSuman Jyoti
 
University management System project report..pdf
University management System project report..pdfUniversity management System project report..pdf
University management System project report..pdfKamal Acharya
 
Java Programming :Event Handling(Types of Events)
Java Programming :Event Handling(Types of Events)Java Programming :Event Handling(Types of Events)
Java Programming :Event Handling(Types of Events)simmis5
 
PVC VS. FIBERGLASS (FRP) GRAVITY SEWER - UNI BELL
PVC VS. FIBERGLASS (FRP) GRAVITY SEWER - UNI BELLPVC VS. FIBERGLASS (FRP) GRAVITY SEWER - UNI BELL
PVC VS. FIBERGLASS (FRP) GRAVITY SEWER - UNI BELLManishPatel169454
 

Dernier (20)

Call for Papers - International Journal of Intelligent Systems and Applicatio...
Call for Papers - International Journal of Intelligent Systems and Applicatio...Call for Papers - International Journal of Intelligent Systems and Applicatio...
Call for Papers - International Journal of Intelligent Systems and Applicatio...
 
Double rodded leveling 1 pdf activity 01
Double rodded leveling 1 pdf activity 01Double rodded leveling 1 pdf activity 01
Double rodded leveling 1 pdf activity 01
 
Roadmap to Membership of RICS - Pathways and Routes
Roadmap to Membership of RICS - Pathways and RoutesRoadmap to Membership of RICS - Pathways and Routes
Roadmap to Membership of RICS - Pathways and Routes
 
UNIT-II FMM-Flow Through Circular Conduits
UNIT-II FMM-Flow Through Circular ConduitsUNIT-II FMM-Flow Through Circular Conduits
UNIT-II FMM-Flow Through Circular Conduits
 
Top Rated Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...
Top Rated  Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...Top Rated  Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...
Top Rated Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...
 
Booking open Available Pune Call Girls Pargaon 6297143586 Call Hot Indian Gi...
Booking open Available Pune Call Girls Pargaon  6297143586 Call Hot Indian Gi...Booking open Available Pune Call Girls Pargaon  6297143586 Call Hot Indian Gi...
Booking open Available Pune Call Girls Pargaon 6297143586 Call Hot Indian Gi...
 
BSides Seattle 2024 - Stopping Ethan Hunt From Taking Your Data.pptx
BSides Seattle 2024 - Stopping Ethan Hunt From Taking Your Data.pptxBSides Seattle 2024 - Stopping Ethan Hunt From Taking Your Data.pptx
BSides Seattle 2024 - Stopping Ethan Hunt From Taking Your Data.pptx
 
(INDIRA) Call Girl Meerut Call Now 8617697112 Meerut Escorts 24x7
(INDIRA) Call Girl Meerut Call Now 8617697112 Meerut Escorts 24x7(INDIRA) Call Girl Meerut Call Now 8617697112 Meerut Escorts 24x7
(INDIRA) Call Girl Meerut Call Now 8617697112 Meerut Escorts 24x7
 
UNIT-IFLUID PROPERTIES & FLOW CHARACTERISTICS
UNIT-IFLUID PROPERTIES & FLOW CHARACTERISTICSUNIT-IFLUID PROPERTIES & FLOW CHARACTERISTICS
UNIT-IFLUID PROPERTIES & FLOW CHARACTERISTICS
 
Unit 1 - Soil Classification and Compaction.pdf
Unit 1 - Soil Classification and Compaction.pdfUnit 1 - Soil Classification and Compaction.pdf
Unit 1 - Soil Classification and Compaction.pdf
 
Water Industry Process Automation & Control Monthly - April 2024
Water Industry Process Automation & Control Monthly - April 2024Water Industry Process Automation & Control Monthly - April 2024
Water Industry Process Automation & Control Monthly - April 2024
 
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...
 
Booking open Available Pune Call Girls Koregaon Park 6297143586 Call Hot Ind...
Booking open Available Pune Call Girls Koregaon Park  6297143586 Call Hot Ind...Booking open Available Pune Call Girls Koregaon Park  6297143586 Call Hot Ind...
Booking open Available Pune Call Girls Koregaon Park 6297143586 Call Hot Ind...
 
data_management_and _data_science_cheat_sheet.pdf
data_management_and _data_science_cheat_sheet.pdfdata_management_and _data_science_cheat_sheet.pdf
data_management_and _data_science_cheat_sheet.pdf
 
result management system report for college project
result management system report for college projectresult management system report for college project
result management system report for college project
 
Extrusion Processes and Their Limitations
Extrusion Processes and Their LimitationsExtrusion Processes and Their Limitations
Extrusion Processes and Their Limitations
 
Intze Overhead Water Tank Design by Working Stress - IS Method.pdf
Intze Overhead Water Tank  Design by Working Stress - IS Method.pdfIntze Overhead Water Tank  Design by Working Stress - IS Method.pdf
Intze Overhead Water Tank Design by Working Stress - IS Method.pdf
 
University management System project report..pdf
University management System project report..pdfUniversity management System project report..pdf
University management System project report..pdf
 
Java Programming :Event Handling(Types of Events)
Java Programming :Event Handling(Types of Events)Java Programming :Event Handling(Types of Events)
Java Programming :Event Handling(Types of Events)
 
PVC VS. FIBERGLASS (FRP) GRAVITY SEWER - UNI BELL
PVC VS. FIBERGLASS (FRP) GRAVITY SEWER - UNI BELLPVC VS. FIBERGLASS (FRP) GRAVITY SEWER - UNI BELL
PVC VS. FIBERGLASS (FRP) GRAVITY SEWER - UNI BELL
 

Cubic

  • 1. CUBIC: A New TCP- Friendly High-Speed TCP Variant S Ha, I Rhee, L Xu - ACM SIGOPS Operating Systems Review, 2008 Presenter: Deawoo Kim LANADA. KAIST 1
  • 2. TCP Congestion control • TCP seeks to • Achieve high utilization • Without congestion • Source calculates cwnd from indication of network congestion • Congestion indications • Losses • Delay • Marks 2
  • 3. Window Flow Control • W packets transmitted per RTT • Source rate = • If W too small, then rate « capacity • If W too big, then rate > capacity => congestion 3
  • 6. Wikipedia: CUBIC TCP • CUBIC is an implementation of TCP with an optimized congestion control algorithm for high bandwidth networks with high latency 1. … the window is a cubic function of time since the last congestion event. Scalable, stable 2. CUBIC does not rely on the receipt of ACKs to increase the window size. CUBIC's window size is dependent only on the last congestion event. • Standard TCP, flows with very short RTTs will receive ACKs faster and therefore have their congestion windows grow faster than other flows with longer RTTs. CUBIC allows for more fairness between flows since the window growth is independent of RTT. 6
  • 7. Bandwidth and Delay Product (BDP) • Network feature – BW, delay product (BDP) • Total number of packet needed in flight while keeping the BW fully utilized • BDP(capacity in bits) = path bandwidth (bps) * round-trip time(s) • Internet evolves to include many very high speed and long distance network paths • These networks are characterized by large BDP Source Destination Delay (RTT) Bandwidth Fully-utilized Under-utilized BDP 7
  • 8. Under-utilization in Large BDP (example) • Network environment • BW : 10 Gbps • RTT : 100ms • Packet : 1250 bytes • BDP of the path : 100,000 packets • TCP grow its window from mid-point of BDP (50,000 packets) • After 50,000 RTT, fully-utilized (100,000packets) (5,000 sec, 1.4hour) • If flow finish before 1.4 hour then under-utilization 8
  • 9. Legacy TCP • 1. Multiplicative decrease • 2. Growth of CWND depends on RTT Time cwnd CA TD ssthresh TD TD TD Wm CA CA CA Large RTT 9
  • 10. Related work • STCP (Scalable TCP) • Recovery time from loss events be constant regardless of the window size -> scalable • HSTCP (HighSpeed TCP) • 기본적으로 AIMD • Window size가 특정 threshold 넘으면, increase factor 증가, decrease factor 감소 • TCP-Vegas • δ < 𝛼 : path is not congested -> increase sending rate • δ > 𝛽 : congestion -> reduce sending rate • δ : difference btw expected throughput and actual throughput • 𝛼 : low threshold • 𝛽 : upper threshold • HTCP • Growth function is function of elapsed time (indep. RTT) • Decrease factor is adjusted to be proportional to the queue size 10
  • 11. Abstract • CUBIC • Congestion control protocol for TCP • Default TCP algorithm in Linux • Modify linear window growth function -> cubic function • Goal 1. Improve the scalability of TCP over fast and long distance networks 2. Equitable BW allocation among flows with different RTT 3. Stable : keep the CW much longer at the saturation point 4. TCP friendliness 11
  • 12. BIC-TCP • Window growth function : simply a logarithmic concave function • Stable and Scalable • How does it work? • Binary search • Window grows to the mid-point of max and min • Additive increasing • Max probing • Feature • Far from the saturation point : aggressive increase CWND • Close to saturation point : slowly increase CWND • Overshoot occurs very small 12
  • 13. BIC-TCP Algorithm Packet loss event Wmax Wmin = β*Wmax midpoint = (Wmin + Wmax)/2 Wmin – midpoint > Smax Wmin + SmaxWmin midpoint = (Wmin + Wmax)/2 Wmin + Smax Wmin Additive Increase midpoint = (Wmin + Wmax)/2 Wmin + Smin Wmin (Wmin – midpoint) < Smin Binary Search Wmax + Smin Wmax + Smin Wmax +Smax Slow Start Wmax + 2Smax Wmax + 3Smax Additive Inc. Max Probing 13
  • 14. BIC-TCP • Additive increasing • Jumping to the midpoint can be too much increase within one RTT • Binary search algorithm • Stable • Max probing • Find the new saturation point if it has increased 14
  • 15. New Window Growth Function • BIC-TCP • 장점 • Scalability in high speed networks • Stability with low window oscillations • 단점 • Growth function can be too aggressive for TCP for short RTT or low speed networks (RTT-fairness) • Difference phase (binary search, max probing, 𝑆 𝑚𝑎𝑥, 𝑆 𝑚𝑖𝑛) complexity • New window growth function 필요 • BIC-TCP 장점 취함 • Simple • TCP friendliness • RTT-fairness 15
  • 16. Introduction • CUBIC • Next version of BIC-TCP • Window growth -> cubic function • cubic function – Incidental, out of convenience • In mathematics, a cubic function is a function of the form • The window growth function of CUBIC • 𝐶 : CUBIC parameter • 𝑡 : elapsed time from the last window reduction • 𝐾 : time period take to 𝑊𝑚𝑎𝑥 16
  • 17. TCP CUBIC Packet loss event Time Steady State Behavior Max Probing Wmax Around Wmax, window growth almost becomes zeroFast growth upon reduction Cubic starts probing for more Bandwidth 17
  • 18. RTT-fairness • Window growth depends only on the real time(congestion epoch) between two consecutive congestion events • Independent of RTT BIC-TCPCUBIC Large RTT Small RTT 18
  • 19. TCP-friendliness • Short RTT – window growth rate slower than TCP standards • Current wnd in CUBIC < window size of standard TCP at time 𝑡 • Set cwnd as Wtcp(t) (Standard TCP) • Improve convergence speed of CUBIC • New flow join -> existing flow give up BW • 𝑊𝐿𝑎𝑠𝑡 𝑚𝑎𝑥 > 𝑐𝑤𝑛𝑑 -> reducing 𝑊𝑚𝑎𝑥 further 19 Fast Convergence
  • 20. CUBIC window growth function • Congestion avoidance basic • Compute the window growth rate during next RTT period • Set 𝑊(𝑡 + 𝑅𝑇𝑇) as target congestion window • 3 modes • TCP-friendly region • Concave region • Convex region • Multiplicative decrease of cwnd factor of 𝛽 20
  • 21. TCP Cubic Advantages • Good RTT fairness • Growth dominated by t, competing flows have same t after synchronized packet loss • Real-time dependent • Similar to BIC but linear increases are time dependent • Does not depend on ACK’s like TCP/ Reno • Scalability and stability • Cubic increases window to Wmax quickly and keeps it there longer • High utilization in large BDP • Scalability • Independent RTT 21
  • 22. TCP Cubic Drawbacks • The speed to react • It can be sluggish to find the new saturation point if the saturation point has increased far beyond the last one • Slow Convergence • Flows with higher cwnd are more aggressive initially • Prolonged unfairness between flows 22
  • 24. Fairness to standard TCP • Standard TCP performs well • Small BDP • Short RTT 24
  • 26. BIC Algorithm while (cwnd != Wmax){ If ((Wmin – midpoint) > Smax) cwnd = cwnd + Smax else If ((Wmin – midpoint) < Smin) cwnd = Wmax else cwnd = midpoint If (no packet loss) Wmin = cwnd else Wmin = β*cwnd Wmax = cwnd midpoint = (Wmax + Wmin)/2 } (Additive Increase) (Binary Search) 26 while (cwnd >= Wmax){ If (cwnd < Wmax + Smax) cwnd = cwnd + Smin else cwnd = cwnd + Smax If (packet loss) Wmin = β*cwnd Wmax = cwnd } Max Probing
  • 27. CUBIC window growth function • Window growth function of CUBIC is a cubic function • CUBIC use both concave and convex for window size • Details of CUBIC • Loss event • Register 𝑊𝑚𝑎𝑥 loss 발생한 지점 • Multiplicative decrease of cwnd factor of 𝛽 (decrease constant) • Start to increase the window using concave profile of the cubic function • Plateau at 𝑊𝑚𝑎𝑥, concave growth continue until the window size becomes 𝑊𝑚𝑎𝑥 • Cubic function turn into convex profile (max probing) 27
  • 30. TCP Reno (Jacobson 1988) Fast Recovery • Motivation: prevent ‘pipe’ from emptying after fast retransmit • Idea: each dupACKrepresents a packet having left the pipe • Enter CA after 3 dupACKs(Fast Retransmit/Fast Recovery) • Set ssthresh←cwnd/2 • Set cwnd←ssthresh • Enter SS after timeout • Set ssthresh←cwnd/2 • Set cwnd←1 30

Notes de l'éditeur

  1. (Length of flows is much shorter than the time TCP grows its windows to the full size of the BDP of a path)
  2. CUBIC Congestion control protocol for TCP Default TCP algorithm in Linux 특징 : Modify linear window growth function -> cubic function (뭘 어떻게 왜 바꾸겠다는거지?) 목적 : improve the scalability of TCP over fast and long distance networks (-얘네들 특징이 뭐길래?) -> BDP가 크다 -> under-utilzation Equitable BW allocation among flows with different RTT 어떻게? Window growth – independent of RTT (이건 무슨말?) Flow grow congestion window at the same rate Saturation point 다가가기 전엔 aggressive increase window size, 다가가면 slowly Scalable – when BW and delay is large (왜그럼?) Stable fair