High -Fidelity Latency Measurements in Low -Latency Networks
Effekterna av bufferbloat och latency på internet
-
Upload
valtech-ab -
Category
Technology
-
view
1.188 -
download
1
description
Transcript of Effekterna av bufferbloat och latency på internet
Are you feeling buffer bloated?Stefan Holmer
Google Confidential and Proprietary
App performs poorly for some users
● Simple tasks are taking seconds to perform:○ Downloading a web page○ Sending a message○ DNS queries are timing out
● Interactivity is completely broken:○ Calling doesn't work due to talking over
each other○ Gaming gets frustrating
Google Confidential and Proprietary
Turns out...
● ...someone is streaming a movie or downloading a big file.
● ...not necessarily in your home.
● ...it's not necessarily lack of bandwidth.
Google Confidential and Proprietary
Taking a Step Back - TCP
Loss based○ Wants to keep increasing the bitrate (cwnd) until a packet is lost.○ Typically happens when a packet buffer is full.
(from Ilya Grigorik's High Performance Browser Networking)
Google Confidential and Proprietary
TCP - Roughly Fair
Google Confidential and Proprietary
Effects of a Long TCP Transfer
(Jim Gettys' measurements)
Google Confidential and Proprietary
Effects of a Long TCP Transfer
(Jim Gettys' measurements)
Google Confidential and Proprietary
Bufferbloat
● In the early days, buffers were reasonably sized.● TCP got feedback early when the link was over-used.● Packet loss = bad connection...
Queue length
Google Confidential and Proprietary
Bufferbloat
● Memory cheaper and cheaper.● Bigger buffers are added to avoid losing packets.● TCP needs those losses!
Google Confidential and Proprietary
Slow-start will really be slow
(from, Ilya Grigorik's blog, igvita.com)
Google Confidential and Proprietary
What can we do?
● In applications, mostly nothing.This is something others do to you!○ Avoid big TCP transfers when
interaction is needed.○ Limit background traffic.
● Must be solved:○ in the network.○ or in every endpoint.
● Notify people when possible.
Google Confidential and Proprietary
Check your home connection
● Try Netalyzr.
● Measures the quality of your connection in terms of:○ Blocked ports○ Throughput○ Queue sizes/bufferbloat
Google Confidential and Proprietary
What is being done?
● Improving the networks.○ Lots of research on new Active Queue Management techniques
■ CoDel, PIE○ Drop packets earlier when possible to keep the bloat low.○ Being built into home routers and Linux.
● Improving endpoints.○ Better delay-sensing congestion control.○ uTorrent - LEDBAT○ VoIP services, such as Hangouts - RMCAT