one more bit is enough yong xia, rpi lakshmi subramanian, ucb ion stoica, ucb shiv kalyanaraman, rpi...

32
One More Bit Is Enough One More Bit Is Enough Yong Xia, RPI Lakshmi Subramanian, UCB Ion Stoica, UCB Shiv Kalyanaraman, RPI SIGCOMM’05, Philadelphia, PA 08 / 23 / 2005

Upload: ashton-knapp

Post on 01-Apr-2015

216 views

Category:

Documents


3 download

TRANSCRIPT

Page 1: One More Bit Is Enough Yong Xia, RPI Lakshmi Subramanian, UCB Ion Stoica, UCB Shiv Kalyanaraman, RPI SIGCOMM’ 05, Philadelphia, PA 08 / 23 / 2005

One More Bit Is EnoughOne More Bit Is Enough

Yong Xia, RPILakshmi Subramanian, UCB

Ion Stoica, UCBShiv Kalyanaraman, RPI

SIGCOMM’05, Philadelphia, PA

08 / 23 / 2005

Page 2: One More Bit Is Enough Yong Xia, RPI Lakshmi Subramanian, UCB Ion Stoica, UCB Shiv Kalyanaraman, RPI SIGCOMM’ 05, Philadelphia, PA 08 / 23 / 2005

VCP 2

Motivation #1: TCP does not perform well in high b/w

bottleneck utilization

round-trip delay (ms)

TCP

50%

100%

bandwidth (Mbps)

bottleneck utilization

TCP

70%

100%

Page 3: One More Bit Is Enough Yong Xia, RPI Lakshmi Subramanian, UCB Ion Stoica, UCB Shiv Kalyanaraman, RPI SIGCOMM’ 05, Philadelphia, PA 08 / 23 / 2005

VCP 3

Motivation #1: Why TCP does not scale?

TCP uses binary congestion signals, such as loss or one-bit Explicit Congestion Notification (ECN)

time

congestionwindow Multiplicative Decrease (MD)

Additive Increase (AI)

congestion

slow start

congestion avoidance

AI with a fixed step-size can be very slow for large bandwidth

slow!

Page 4: One More Bit Is Enough Yong Xia, RPI Lakshmi Subramanian, UCB Ion Stoica, UCB Shiv Kalyanaraman, RPI SIGCOMM’ 05, Philadelphia, PA 08 / 23 / 2005

VCP 4

Motivation #2: XCP scales

XCP decouples efficiency control and fairness control

x

sender receiverrouter

C

spare bandwidth -- MIMD

DATA

-- AIMD rate & rtt

ACKrate

But, XCP needs multiple bits (128 bits in its current IETF draft) to carry the congestion-related information from/to network

Page 5: One More Bit Is Enough Yong Xia, RPI Lakshmi Subramanian, UCB Ion Stoica, UCB Shiv Kalyanaraman, RPI SIGCOMM’ 05, Philadelphia, PA 08 / 23 / 2005

VCP

Goal

5

Design a TCP-like scheme that:

requires a small amount of congestion information (e.g., 2 bits)

scales across a wide range of network scenarios

Page 6: One More Bit Is Enough Yong Xia, RPI Lakshmi Subramanian, UCB Ion Stoica, UCB Shiv Kalyanaraman, RPI SIGCOMM’ 05, Philadelphia, PA 08 / 23 / 2005

VCP

Key Observation

6

Fairness is not critical in low-utilization region

Use Multiplicative Increase (MI) for fast convergence onto efficiency in this region

Handle fairness in high-utilization region

Page 7: One More Bit Is Enough Yong Xia, RPI Lakshmi Subramanian, UCB Ion Stoica, UCB Shiv Kalyanaraman, RPI SIGCOMM’ 05, Philadelphia, PA 08 / 23 / 2005

VCP 7

Variable-structure congestion Control Protocol (VCP)

sender receiver

x

router

Routers signal the level of congestion End-hosts adapt the control algorithm accordingly

traffic rate link capacity

(11)

(10)

(01)

code loadfactor

region

low-load

high-load

overload

control

Multiplicative Decrease (MD)

Additive Increase (AI)

Multiplicative Increase (MI)

range of interest

ACK

2-bit ECN

0

1

scale-free

2-bit ECN

Page 8: One More Bit Is Enough Yong Xia, RPI Lakshmi Subramanian, UCB Ion Stoica, UCB Shiv Kalyanaraman, RPI SIGCOMM’ 05, Philadelphia, PA 08 / 23 / 2005

VCP 8

VCP vs. ECN

sender receiver

x

router

code loadfactor

region

overload

control

Multiplicative Decrease (MD)

0

1

ECN doesn’t differentiate between low-load and high-load regions

TCP AQM / ECN

(11)

(10)

(01)low-load

high-loadAdditive Increase (AI)

Multiplicative Increase (MI)

ACK

2-bit ECN

VCP

(1)

(0)underloadAdditive Increase (AI)

ACK

1-bit ECN

Page 9: One More Bit Is Enough Yong Xia, RPI Lakshmi Subramanian, UCB Ion Stoica, UCB Shiv Kalyanaraman, RPI SIGCOMM’ 05, Philadelphia, PA 08 / 23 / 2005

VCP 9

An illustration example

MI tracks available bandwidth exponentially fast

time (sec)

After high utilization is attained, AIMD provides fairness

link utilization

flow cwnd (pkt)

9 flows join and then leave

MI AIMD

Page 10: One More Bit Is Enough Yong Xia, RPI Lakshmi Subramanian, UCB Ion Stoica, UCB Shiv Kalyanaraman, RPI SIGCOMM’ 05, Philadelphia, PA 08 / 23 / 2005

VCP 10

VCP vs. ECN

TCP+RED/ECN

cwnd

utilization

time (sec)

VCP

utilization

cwnd

time (sec)

Page 11: One More Bit Is Enough Yong Xia, RPI Lakshmi Subramanian, UCB Ion Stoica, UCB Shiv Kalyanaraman, RPI SIGCOMM’ 05, Philadelphia, PA 08 / 23 / 2005

VCP 11

VCP key ideas and properties

Achieve high efficiency, low loss, and small queue Fairness model is similar to TCP:

Long flows get lower bandwidth than in XCP (proportional vs. max-min fairness)

Fairness convergence much slower than XCP

Use network link load factor as the congestion signal Decouple efficiency and fairness controls in different load regions

overload

high-load

low-load

router

fairness control

efficiency control MI

AIMD

end-host

Page 12: One More Bit Is Enough Yong Xia, RPI Lakshmi Subramanian, UCB Ion Stoica, UCB Shiv Kalyanaraman, RPI SIGCOMM’ 05, Philadelphia, PA 08 / 23 / 2005

VCP 12

Major design issues

At the router How to measure and encode the load factor?

At the end-host When to switch from MI to AI? What MI / AI / MD parameters to use? How to handle heterogeneous RTTs?

control

Multiplicative Decrease (MD)Additive Increase (AI)

Multiplicative Increase (MI)

(11)(10)

(01)

code load region

low-load

high-loadoverload

Page 13: One More Bit Is Enough Yong Xia, RPI Lakshmi Subramanian, UCB Ion Stoica, UCB Shiv Kalyanaraman, RPI SIGCOMM’ 05, Philadelphia, PA 08 / 23 / 2005

VCP 13

Design issue #1: measuring and encoding load factor

Calculate the link load factor

demandload_

factor capacity =

link_bandwidth * t

arrival_traffic + queue_size =

t = 200ms most rtt

The load factor is quantized and encoded into the two ECN bits

information loss affects fairness

capacity

demand

Page 14: One More Bit Is Enough Yong Xia, RPI Lakshmi Subramanian, UCB Ion Stoica, UCB Shiv Kalyanaraman, RPI SIGCOMM’ 05, Philadelphia, PA 08 / 23 / 2005

VCP 14

Design issue #2: setting MI / AI / MD parameters (, , )

overload

high-load

low-load MI

AIMD

Page 15: One More Bit Is Enough Yong Xia, RPI Lakshmi Subramanian, UCB Ion Stoica, UCB Shiv Kalyanaraman, RPI SIGCOMM’ 05, Philadelphia, PA 08 / 23 / 2005

VCP

Design issue #2: setting MI / AI / MD parameters (, , )

Q: load factor transition point * for MI AI?

load factor

100%

80%

safety margin

0%

0.875

15

TCP: = 1.0 VCP: =

0.06STCP: =

0.01

MI

AI

MD

k (1 *) / *

where k = 0.25 (for stability)

80%

20%

1.0 = =

=

* =

Page 16: One More Bit Is Enough Yong Xia, RPI Lakshmi Subramanian, UCB Ion Stoica, UCB Shiv Kalyanaraman, RPI SIGCOMM’ 05, Philadelphia, PA 08 / 23 / 2005

VCP

Design issue #3: Handling RTT heterogeneity for MI/AI

Scale to prevent MI from overshooting capacity when RTT is small

16

rtt < t

overshoot s

if rtt < t

rtt = t

t t

time

spare capacity

1

Page 17: One More Bit Is Enough Yong Xia, RPI Lakshmi Subramanian, UCB Ion Stoica, UCB Shiv Kalyanaraman, RPI SIGCOMM’ 05, Philadelphia, PA 08 / 23 / 2005

VCP

VCP scales across b/w, rtt, num flows

Evaluation using extensive ns2 simulations

17

150Mbps, 80ms, 50 forward flows and 50 reverse flows

Page 18: One More Bit Is Enough Yong Xia, RPI Lakshmi Subramanian, UCB Ion Stoica, UCB Shiv Kalyanaraman, RPI SIGCOMM’ 05, Philadelphia, PA 08 / 23 / 2005

VCP

VCP achieves high efficiency

18

bottleneck utilization

TCP

VCP

XCP

bandwidth (Mbps)

bottleneck utilization

TCP

VCP

XCP

round-trip delay (ms)

Page 19: One More Bit Is Enough Yong Xia, RPI Lakshmi Subramanian, UCB Ion Stoica, UCB Shiv Kalyanaraman, RPI SIGCOMM’ 05, Philadelphia, PA 08 / 23 / 2005

VCP

VCP minimizes packet loss rate

19

TCPVCPXCP

round-trip delay (ms)

packet loss rate

TCP

VCPXCP

bandwidth (Mbps)

packet loss rate

TCP

VCP

XCP

TCP

VCP

XCP

bottleneck utilization bottleneck utilization

Page 20: One More Bit Is Enough Yong Xia, RPI Lakshmi Subramanian, UCB Ion Stoica, UCB Shiv Kalyanaraman, RPI SIGCOMM’ 05, Philadelphia, PA 08 / 23 / 2005

VCP

VCP comparisons

20

Compared to TCP+AQM/ECN Same architecture (end-hosts control, routers signal) Router congestion detection: queue-based load-based Router congestion signaling: 1-bit 2-bit ECN End-host adapts (MI/AI/MD) according to the ECN feedback End-host scales its MI/AI parameters with its RTT

Compared to XCP Decouple efficiency/fairness control across load regions Functionality primarily placed at end-hosts, not in routers

Page 21: One More Bit Is Enough Yong Xia, RPI Lakshmi Subramanian, UCB Ion Stoica, UCB Shiv Kalyanaraman, RPI SIGCOMM’ 05, Philadelphia, PA 08 / 23 / 2005

VCP

Theoretical results

21

Assumptions: One bottleneck of infinite buffer space is shared by synchronous

flows that have identical RTTs; The exact value of load factor is echoed back.

Theorem for the VCP fluid model: It is globally stable with a unique and fair equilibrium, if k 0.5; The equilibrium is max-min fair for general topologies; The equilibrium is optimal by achieving all the design goals.

VCP protocol differs from the model in fairness.

Page 22: One More Bit Is Enough Yong Xia, RPI Lakshmi Subramanian, UCB Ion Stoica, UCB Shiv Kalyanaraman, RPI SIGCOMM’ 05, Philadelphia, PA 08 / 23 / 2005

VCP

Conclusions

22

With a few minor changes over TCP + AQM / ECN, VCP is able to approximate the performance of XCP

High efficiency Low persistent bottleneck queue Negligible congestion-caused packet loss Reasonable (i.e., TCP-like) fairness

Page 23: One More Bit Is Enough Yong Xia, RPI Lakshmi Subramanian, UCB Ion Stoica, UCB Shiv Kalyanaraman, RPI SIGCOMM’ 05, Philadelphia, PA 08 / 23 / 2005

VCP

Future work

23

How do we get there, incrementally? End-to-end VCP TCP-friendliness Incentive

Extensions Applications: short-lived data traffic, real-time traffic Environment: wireless channel

Security Robust signaling, e.g., ECN nonce

Page 24: One More Bit Is Enough Yong Xia, RPI Lakshmi Subramanian, UCB Ion Stoica, UCB Shiv Kalyanaraman, RPI SIGCOMM’ 05, Philadelphia, PA 08 / 23 / 2005

VCP

The end

24

Thanks!

Page 25: One More Bit Is Enough Yong Xia, RPI Lakshmi Subramanian, UCB Ion Stoica, UCB Shiv Kalyanaraman, RPI SIGCOMM’ 05, Philadelphia, PA 08 / 23 / 2005

VCP

Design issue #3: Handling RTT heterogeneity for MI/AI

25

TCP throughput is biased against flows with large RTT

packet_sizerate

rtt sqrt( loss_rate )

VCP scales for fair rate sharing (regardless of RTT)

rate = cwnd / rtt

Page 26: One More Bit Is Enough Yong Xia, RPI Lakshmi Subramanian, UCB Ion Stoica, UCB Shiv Kalyanaraman, RPI SIGCOMM’ 05, Philadelphia, PA 08 / 23 / 2005

VCP

VCP keeps small bottleneck queue

26

queue length in % buffer size

TCP VCPXCP

bandwidth (Mbps)

queue length in % buffer size

TCPVCP XCP

round-trip delay (ms)

per-flow b/w-delay-product < 1 packet

Page 27: One More Bit Is Enough Yong Xia, RPI Lakshmi Subramanian, UCB Ion Stoica, UCB Shiv Kalyanaraman, RPI SIGCOMM’ 05, Philadelphia, PA 08 / 23 / 2005

VCP

Vary the number of flows

27

number of flows

VCP

TCP

bottleneck utilization

queue length in % buffer size

XCP

VCP

TCP

XCP

Page 28: One More Bit Is Enough Yong Xia, RPI Lakshmi Subramanian, UCB Ion Stoica, UCB Shiv Kalyanaraman, RPI SIGCOMM’ 05, Philadelphia, PA 08 / 23 / 2005

VCP

Influence of RTT on fairness

To some extent, VCP distributes reasonably fairly

28

Page 29: One More Bit Is Enough Yong Xia, RPI Lakshmi Subramanian, UCB Ion Stoica, UCB Shiv Kalyanaraman, RPI SIGCOMM’ 05, Philadelphia, PA 08 / 23 / 2005

VCP

Influence of RTT on fairness (cont’d)

29

Page 30: One More Bit Is Enough Yong Xia, RPI Lakshmi Subramanian, UCB Ion Stoica, UCB Shiv Kalyanaraman, RPI SIGCOMM’ 05, Philadelphia, PA 08 / 23 / 2005

VCP

VCP converges onto fairness

30

Page 31: One More Bit Is Enough Yong Xia, RPI Lakshmi Subramanian, UCB Ion Stoica, UCB Shiv Kalyanaraman, RPI SIGCOMM’ 05, Philadelphia, PA 08 / 23 / 2005

VCP

VCP converges onto fairness faster with more bits

31

Page 32: One More Bit Is Enough Yong Xia, RPI Lakshmi Subramanian, UCB Ion Stoica, UCB Shiv Kalyanaraman, RPI SIGCOMM’ 05, Philadelphia, PA 08 / 23 / 2005

VCP

Responsiveness

50 flows + 150 flows – 150 flows 32