layout | title | group | data | presenters | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
default |
ACM SIGCOMM 2017 Tutorial (Half-Day): Understanding Latency - A Root Cost and Mitigation Approach |
Tutorials |
|
|
"Time is fleeting," it has been said. Time delay, or latency, is the one metric that drives most others. It defines what it means to be fast, and limits us to what is fast enough.
Latency has always been a key part of network performance, but recently it has been elevated to a primary focus for electronic traders, search engines, name servers, data centers, and home and network routers. Increases in network bandwidth, router forwarding speed, and end system computational resources have helped bring latency to the forefront as a primary concern. New protocols are emerging to address latency as a primary issue, including Delay Tolerant Networking (DTN) and bufferbloat mitigations.
This tutorial presents a comprehensive exploration of the impact of latency on communication. It explores time as a budget to be spent, over-spent, rebated, and conserved. We explore the root causes of latency: generating data, transmitting it, processing it, and the impact of resource sharing through multiplexing and aggregation, as well as corresponding ways to mitigate each of these causes. We also explore ways to mask latency that cannot be reduced and to avoid incurring its cost in the first place. This tutorial provides examples of real system design and implementations, as well as exploring several key case studies to provide practical experience that attendees can immediately apply to their own systems.
{% include presenters.html presenters=page.presenters %}
{% include program.html type="tutorial-latency" data=page.data %}
The evolution of technology has increased computer performance by many orders of magnitude, but whatever we improve, latency remains the last and most critical limit. Everything else has become so fast we now notice – and care – more about delay. Papers addressing latency issues have always been prevalent at Sigcomm and many other conferences in the IEEE, ACM, and IFIP, including the Internet Society Workshop on Reducing Internet Latency and the recent flurry of activity around bufferbloat. Computing resources have shifted from constraints to opportunities, where we now have enough surplus processing, memory, storage, and bandwidth that we can spend to reduce latency. Interaction has increased, where isolated computers are rare, collaborating groups of resources are larger and more ubiquitous, and the way resources relate is more complex. Some of this complexity and resource surplus has even made latency worse, as web page sizes, photos, and software become larger and buffer capacity has begun to hurt, rather than help. This is a useful time to consider the impact of system and protocol design on latency and find ways it can be reduced, masked, or avoided.
This tutorial presents a comprehensive discussion of communication latency, focusing on the fundamental properties and behaviors that cause latency to increase and corresponding ways to mitigate each of these causes. The following concepts are covered:
-
The latency budget and how its bounds are determined
-
The root causes of latency, i.e., how the latency budget is spent
-
The corresponding mitigations of each root latency cause, i.e., how to receive refunds
-
A variety of case studies, including bufferbloat, stock trading, data centers, and search engines
-
New opportunities to reduce latency, including “fission” and “information advance”
-
Use cases for tolerating latency in different environments
-
Emerging applications, including TCP TFO, integrated forwarding, and future curiosities
Lecture
Audiences are expected to have basic knowledge of packet networking, including layering, TCP basics, and commonly used protocols such as DNS and the Web.
A structured set of cited papers and presentations with corresponding links is available at http://www.latency.org/.