174 research outputs found
Coding for Fast Content Download
We study the fundamental trade-off between storage and content download time.
We show that the download time can be significantly reduced by dividing the
content into chunks, encoding it to add redundancy and then distributing it
across multiple disks. We determine the download time for two content access
models - the fountain and fork-join models that involve simultaneous content
access, and individual access from enqueued user requests respectively. For the
fountain model we explicitly characterize the download time, while in the
fork-join model we derive the upper and lower bounds. Our results show that
coding reduces download time, through the diversity of distributing the data
across more disks, even for the total storage used.Comment: 8 pages, 6 figures, conferenc
Effects of the Generation Size and Overlap on Throughput and Complexity in Randomized Linear Network Coding
To reduce computational complexity and delay in randomized network coded
content distribution, and for some other practical reasons, coding is not
performed simultaneously over all content blocks, but over much smaller,
possibly overlapping subsets of these blocks, known as generations. A penalty
of this strategy is throughput reduction. To analyze the throughput loss, we
model coding over generations with random generation scheduling as a coupon
collector's brotherhood problem. This model enables us to derive the expected
number of coded packets needed for successful decoding of the entire content as
well as the probability of decoding failure (the latter only when generations
do not overlap) and further, to quantify the tradeoff between computational
complexity and throughput. Interestingly, with a moderate increase in the
generation size, throughput quickly approaches link capacity. Overlaps between
generations can further improve throughput substantially for relatively small
generation sizes.Comment: To appear in IEEE Transactions on Information Theory Special Issue:
Facets of Coding Theory: From Algorithms to Networks, Feb 201
Efficient Redundancy Techniques for Latency Reduction in Cloud Systems
In cloud computing systems, assigning a task to multiple servers and waiting
for the earliest copy to finish is an effective method to combat the
variability in response time of individual servers, and reduce latency. But
adding redundancy may result in higher cost of computing resources, as well as
an increase in queueing delay due to higher traffic load. This work helps
understand when and how redundancy gives a cost-efficient reduction in latency.
For a general task service time distribution, we compare different redundancy
strategies in terms of the number of redundant tasks, and time when they are
issued and canceled. We get the insight that the log-concavity of the task
service time creates a dichotomy of when adding redundancy helps. If the
service time distribution is log-convex (i.e. log of the tail probability is
convex) then adding maximum redundancy reduces both latency and cost. And if it
is log-concave (i.e. log of the tail probability is concave), then less
redundancy, and early cancellation of redundant tasks is more effective. Using
these insights, we design a general redundancy strategy that achieves a good
latency-cost trade-off for an arbitrary service time distribution. This work
also generalizes and extends some results in the analysis of fork-join queues.Comment: accepted for publication in ACM Transactions on Modeling and
Performance Evaluation of Computing System
- …