Efficient Traffic Splitting on Commodity Switches
Venue
Proceedings of the 11th ACM International on Conference on emerging Networking Experiments and Technologies (CoNEXT), ACM (2015)
Publication Year
2015
Authors
Nanxi Kang, Monia Ghobadi, John Reumann, Alexander Shraer, Jennifer Rexford
BibTeX
Abstract
Traffic often needs to be split over multiple equivalent backend servers, links,
paths, or middleboxes. For example, in a load-balancing system, switches distribute
requests of online services to backend servers. Hash-based approaches like
Equal-Cost Multi-Path (ECMP) have low accuracy due to hash collision and incur
significant churn during update. In a Software-Defined Network (SDN) the accuracy
of traffic splits can be improved by crafting a set of wildcard rules for switches
that better match the actual traffic distribution. The drawback of existing
SDN-based traffic-splitting solutions is poor scalability as they generate too many
rules for small rule-tables on switches. In this paper, we propose Niagara, an
SDN-based traffic-splitting scheme that achieves accurate traffic splits while
being extremely efficient in the use of rule-table space available on commodity
switches. Niagara uses an incremental update strategy to minimize the traffic churn
given an update. Experiments demonstrate that Niagara (1) achieves nearly optimal
accuracy using only 1.2%−37% of the rule space of the current state-of-art, (2)
scales to tens of thousands of services with the constrained rule-table capacity
and (3) offers nearly minimum churn.
