Publications

Revisiting Traffic Splitting for Software Switch in Datacenter

ACM SIGMETRICS 2025. / Proc. ACM Meas. Anal. Comput. Syst. 9, 2, Article 39 (June 2025), Acceptance rate 17%, New York, USA, 2025.

Yeonho Yoo, Gyeongsik Yang, Changyong Shin, Hwiju Cho, Wonmi Choi, Zhixiong Niu, Chuck Yoo

Download PDF

Abstract

Datacenter network topology contains multiple paths between server machines, with each path assigned a weight. Software switches perform traffic splitting, an essential networking operation in datacenters. Previous studies leveraged software switches to distribute network connections across paths, under the assumption that the software switches accurately divide connections according to path weights. However, our experiments reveal that current traffic splitting techniques exhibit significant inaccuracy and resource inefficiency. Consequently, real-world datacenter services (e.g., data mining and deep learning) experience communication completion times that are ∼2.7× longer than the ideal. To address these problems, we propose VALO, a new traffic splitting technique for software switches, to accomplish two goals: high accuracy and resource-efficiency. For the goals, we introduce new concepts: score graph and VALO gravity. We implement VALO using the de-facto software switch, Open vSwitch, and evaluate it thoroughly. On average, VALO achieves 13.1× better accuracy and 25.4× better resource efficiency compared to existing techniques, with maximum improvements reaching up to 34.8× and 67.7×, respectively. As a result, VALO demonstrates 1.3×-2.5× faster average communication completion times for real-world datacenter services compared to existing techniques.

Paper summary

Make traffic weights match the traffic split

A weighted path selector should send the intended share of connections to each path.

Weighted traffic splitting assigns different shares of traffic to available paths. The paper shows that multiplying a connection’s hash score by a path weight can produce a split that differs from the requested weights. VALO addresses the selection rule behind that mismatch.

Translate weights into selection probabilities

A score graph represents which path wins for each possible combination of hash scores. The volume of a path’s winning region determines its selection probability. VALO computes adjusted weights, called gravity values, so those volumes match the requested traffic proportions.

The adjustment connects the requested proportions to the path-selection probabilities.

Gravity values are recalculated when weights change. Connection selection then multiplies the hash scores by those values and chooses the highest score, retaining a lightweight selection path.

Gravity values adjust the path scores so selection follows the requested allocation.View full-size figure
Gravity values adjust the path scores so selection follows the requested allocation.

Evaluate splitting and application completion time

The implementation uses Open vSwitch. Microbenchmarks measure how accurately connections follow the desired weights; application experiments use web-search, data-mining, deep-learning and Twitter-cache workloads.

The paper compares VALO with random selection, weighted round robin, WCMP and the original scoring approach, reporting improved splitting accuracy and lower mean and tail flow-completion times in its evaluated workloads.

VALO separates weight adjustment from the per-connection decision.
WhenComputation
Weights changeCalculate gravity values from winning-region volumes
A connection is selectedMultiply hash scores by gravity values and choose the highest score

Key takeaways

  1. The score-to-share relationship depends on selection geometry. The geometry of winning regions explains the mismatch between requested and realized allocations.
  2. Correcting the weights ahead of time keeps the connection decision simple. The evaluation connects the resulting split accuracy to application completion time.