Fibbing in action:
On-demand load-balancing for better video delivery†‡**
OlivierTilmans,
StefanoVissicchio,Laurent
Vanbever,Jennifer
Rexford†‡**
Olivier Tilmans , Stefano Vissicchio , Laurent Vanbever , Jennifer Rexford* Université catholique de Louvain, † ETH Zürich, ‡ Princeton University* Université catholique de Louvain, † ETH Zürich, ‡ Princeton University

www.fibbing.net
www.fibbing.net
www.github.com/Fibbingwww.github.com/Fibbing

Flash crowds cause service disruption

Fibbing lets networks handle ﬂash crowds

 Video delivery services require good network performance andsuffer from ﬂash crowds [1]: transient, localized, surges of trafﬁc.

 Fibbing [3] can change the behavior of networks within a single
IGP convergence.

 Protecting the services at the network level against these surges
is hard due to their short-lived nature: Fibbing provides the two required primitives to implement theoptimal solution to the min-max link utilization problem [4]:1. Traditional trafﬁc engineering techniques [2] perform poorly;

1. Programming multiple paths on a per-destination basis;

2. Over-provisioning is expensive.

2. Enforcing uneven load-balancing [5] among these paths.

Programming ECMP to decrease the maximal link load using Fibbing
Control-plane

Data-planeA

IGPmetric
R1
1

Link load

1

2
B

R1

1
Router30 S2

30

Trafﬁcﬂow

1

R2
R4

Clientpreﬁx

The chosen IGP metrics cause
the shortest paths starting atrouter A and B to overlap along
B–R2–C.

Overloadedlink

D1

Data-plane

3
A

3
fA

1

2

R1

R3

1VideoclientsfB

1
1

R1

Experiment setup

R3

R4

 Servers notify the controller when they start/stop serving a new
stream to a client.

Controller behavior

D1

 The controller adds a new equal-cost path
towards each client preﬁx such that:

D2

The trafﬁc uses all paths, causing uneven load-balancing atrouter A and decreasing themaximal link load.

Experiment Results

4

1 stream

31 streams

61 streams

A–R1
B–R2B–R3

200

 The controller detects ﬂash crowds using SNMP queries.

20R3C

By augmenting the topology
with fake elements, Fibbing
creates additional equal-cost
paths towards the clients.

Throughput [MB/s] At time t = 35s, we start 30 streams from S2 to D2.

30 S12020

1C

 We initially have 1 video stream from S1 to D1.
 At time t = 15s, we start 30 new streams from S1 to D1.

20

20

R2

D2

For a high enough demand,the data-plane trafﬁc from theservers to the clients could
overload these links.

1020

R2R4C

230 S2AB

1 2

220

Fake node, link,and mapping
to interface

BVideoservers

60

1CfA’

30 S160

R3R2R4A

B
1 22Control-plane

15Time [s]35 Additional links are used in response to the trafﬁc increase.

1. The new path is the shortest link-disjoint path; Introducing uneven load-balancing at router A causes all links
to have a similar load.

2. The splitting ratio is set to decrease the maximal link load.

 The video playbacks on the clients are smooth.

[1] I. Ari, B. Hong, E. L. Miller, S. A. Brandt, and D. D. E. Long, “Managing ﬂash crowds on the internet,” in 11th IEEE/ACM International Symposium on Modeling, Analysis and Simulation of Computer Telecommunications Systems, 2003.
[2] N. Wang, K. H. Ho, G. Pavlou, and M. Howarth, “An overview of routing optimization for internet trafﬁc engineering,” IEEE Communications Surveys & Tutorials, 2008.
[3] S. Vissicchio, O. Tilmans, L. Vanbever, and J. Rexford, “Central control over distributed routing,” in Proceedings of the 2015 ACM Conference on SIGCOMM, 2015.
[4] R. K. Ahuja, T. L. Magnanti, and J. B. Orlin, Network ﬂows: Theory, algorithms, and applications. Prentice Hall, Inc., 1993.
[5] M. Chiesa, G. Kindler, and M. Schapira, “Trafﬁc engineering with equal-cost-multipath: An algorithmic perspective,” in INFOCOM - IEEE Conference on Computer Communications, 2014.