15,626 research outputs found
Delay versus Stickiness Violation Trade-offs for Load Balancing in Large-Scale Data Centers
Most load balancing techniques implemented in current data centers tend to
rely on a mapping from packets to server IP addresses through a hash value
calculated from the flow five-tuple. The hash calculation allows extremely fast
packet forwarding and provides flow `stickiness', meaning that all packets
belonging to the same flow get dispatched to the same server. Unfortunately,
such static hashing may not yield an optimal degree of load balancing, e.g.,
due to variations in server processing speeds or traffic patterns. On the other
hand, dynamic schemes, such as the Join-the-Shortest-Queue (JSQ) scheme,
provide a natural way to mitigate load imbalances, but at the expense of
stickiness violation.
In the present paper we examine the fundamental trade-off between stickiness
violation and packet-level latency performance in large-scale data centers. We
establish that stringent flow stickiness carries a significant performance
penalty in terms of packet-level delay. Moreover, relaxing the stickiness
requirement by a minuscule amount is highly effective in clipping the tail of
the latency distribution. We further propose a bin-based load balancing scheme
that achieves a good balance among scalability, stickiness violation and
packet-level delay performance. Extensive simulation experiments corroborate
the analytical results and validate the effectiveness of the bin-based load
balancing scheme
Load Balancing in Large-Scale Systems with Multiple Dispatchers
Load balancing algorithms play a crucial role in delivering robust
application performance in data centers and cloud networks. Recently, strong
interest has emerged in Join-the-Idle-Queue (JIQ) algorithms, which rely on
tokens issued by idle servers in dispatching tasks and outperform power-of-
policies. Specifically, JIQ strategies involve minimal information exchange,
and yet achieve zero blocking and wait in the many-server limit. The latter
property prevails in a multiple-dispatcher scenario when the loads are strictly
equal among dispatchers. For various reasons it is not uncommon however for
skewed load patterns to occur. We leverage product-form representations and
fluid limits to establish that the blocking and wait then no longer vanish,
even for arbitrarily low overall load. Remarkably, it is the least-loaded
dispatcher that throttles tokens and leaves idle servers stranded, thus acting
as bottleneck.
Motivated by the above issues, we introduce two enhancements of the ordinary
JIQ scheme where tokens are either distributed non-uniformly or occasionally
exchanged among the various dispatchers. We prove that these extensions can
achieve zero blocking and wait in the many-server limit, for any subcritical
overall load and arbitrarily skewed load profiles. Extensive simulation
experiments demonstrate that the asymptotic results are highly accurate, even
for moderately sized systems
Balanced Allocations and Double Hashing
Double hashing has recently found more common usage in schemes that use
multiple hash functions. In double hashing, for an item , one generates two
hash values and , and then uses combinations for to generate multiple hash values from the initial two. We
first perform an empirical study showing that, surprisingly, the performance
difference between double hashing and fully random hashing appears negligible
in the standard balanced allocation paradigm, where each item is placed in the
least loaded of choices, as well as several related variants. We then
provide theoretical results that explain the behavior of double hashing in this
context.Comment: Further updated, small improvements/typos fixe
Tight Load Balancing via Randomized Local Search
We consider the following balls-into-bins process with bins and
balls: each ball is equipped with a mutually independent exponential clock of
rate 1. Whenever a ball's clock rings, the ball samples a random bin and moves
there if the number of balls in the sampled bin is smaller than in its current
bin. This simple process models a typical load balancing problem where users
(balls) seek a selfish improvement of their assignment to resources (bins).
From a game theoretic perspective, this is a randomized approach to the
well-known Koutsoupias-Papadimitriou model, while it is known as randomized
local search (RLS) in load balancing literature. Up to now, the best bound on
the expected time to reach perfect balance was due to Ganesh, Lilienthal, Manjunath, Proutiere, and Simatos
(Load balancing via random local search in closed and open systems, Queueing
Systems, 2012). We improve this to an asymptotically tight
. Our analysis is based on the crucial observation
that performing "destructive moves" (reversals of RLS moves) cannot decrease
the balancing time. This allows us to simplify problem instances and to ignore
"inconvenient moves" in the analysis.Comment: 24 pages, 3 figures, preliminary version appeared in proceedings of
2017 IEEE International Parallel and Distributed Processing Symposium
(IPDPS'17
Sprinklers: A Randomized Variable-Size Striping Approach to Reordering-Free Load-Balanced Switching
Internet traffic continues to grow exponentially, calling for switches that
can scale well in both size and speed. While load-balanced switches can achieve
such scalability, they suffer from a fundamental packet reordering problem.
Existing proposals either suffer from poor worst-case packet delays or require
sophisticated matching mechanisms. In this paper, we propose a new family of
stable load-balanced switches called "Sprinklers" that has comparable
implementation cost and performance as the baseline load-balanced switch, but
yet can guarantee packet ordering. The main idea is to force all packets within
the same virtual output queue (VOQ) to traverse the same "fat path" through the
switch, so that packet reordering cannot occur. At the core of Sprinklers are
two key innovations: a randomized way to determine the "fat path" for each VOQ,
and a way to determine its "fatness" roughly in proportion to the rate of the
VOQ. These innovations enable Sprinklers to achieve near-perfect load-balancing
under arbitrary admissible traffic. Proving this property rigorously using
novel worst-case large deviation techniques is another key contribution of this
work
Asymptotically Optimal Load Balancing Topologies
We consider a system of servers inter-connected by some underlying graph
topology . Tasks arrive at the various servers as independent Poisson
processes of rate . Each incoming task is irrevocably assigned to
whichever server has the smallest number of tasks among the one where it
appears and its neighbors in . Tasks have unit-mean exponential service
times and leave the system upon service completion.
The above model has been extensively investigated in the case is a
clique. Since the servers are exchangeable in that case, the queue length
process is quite tractable, and it has been proved that for any ,
the fraction of servers with two or more tasks vanishes in the limit as . For an arbitrary graph , the lack of exchangeability severely
complicates the analysis, and the queue length process tends to be worse than
for a clique. Accordingly, a graph is said to be -optimal or
-optimal when the occupancy process on is equivalent to that on
a clique on an -scale or -scale, respectively.
We prove that if is an Erd\H{o}s-R\'enyi random graph with average
degree , then it is with high probability -optimal and
-optimal if and as , respectively. This demonstrates that optimality can
be maintained at -scale and -scale while reducing the number of
connections by nearly a factor and compared to a
clique, provided the topology is suitably random. It is further shown that if
contains bounded-degree nodes, then it cannot be -optimal.
In addition, we establish that an arbitrary graph is -optimal when its
minimum degree is , and may not be -optimal even when its minimum
degree is for any .Comment: A few relevant results from arXiv:1612.00723 are included for
convenienc
- β¦