1

First please note that I am using ethernet, not wifi.

Checking with my ISP, I have 5Mbps download and 512Kb upload.

So why is it that while uploading to Google Drive (I happen to use the Mac OSX Google Drive app that runs in the menubar) do I find surfing to be SO slow?

Shouldn't the relatively small amount of bandwidth I have available to me for uploading leave lots of cable and/or ISP bandwidth for downloading?

This is something I have always been confused about. I tried taking it up with my ISP, but they didn't know the answer.

2
  • Update: I increased my plan to 30Mbps download and 2.5Mbps upload and the problem seems to be all but gone.
    – Drewdavid
    Oct 7, 2015 at 16:13
  • Also the ISP installed a new combined modem/router that is supposed to be faster... It's very possible that this also handles the upstream/downstream more effectively. Apparently I "needed it" (they included it for free though!)
    – Drewdavid
    Oct 7, 2015 at 16:14

3 Answers 3

3

The bottleneck is - as you assumed - the upstream: If it is saturated by the upload, it will introduce high latency into the TCP ack packets (as far as large downloads are concerned) and on DNS queries and HTTP requests (as opposed to their replies) - this will result in a highly perceivable sluggishness.

Since the biggest part of this latency comes from queing and buffering, the solution is to throttle your uploads to something like 95% of available upload bandwidth - this will keep queues and buffers close to empty but will not significantly impede your uploads.

2
  • +1 Surfing is latency sensitive and having your upload bandwidth satured kills latency. The fix suggested above is dead on -- if you can limit the bulk upload to 95% of your bandwidth, that will preserve your latency. Sep 9, 2015 at 22:33
  • Ok thanks for this interesting answer @EugenRieck, and thanks for your comment David! I have edited G Drive upload speed and I will see if I notice a difference! I will come back and accept this answer after a bit of use.
    – Drewdavid
    Sep 10, 2015 at 21:59
1

Saturating your upstream SHOULD NOT cause high latency. You want uploads to saturate your upstream, otherwise you'd be wasting bandwidth and have needlessly prolonged uploads. That said, on many home networks, saturating your upstream DOES cause high latency, but it is NOT just a fact of life you have to accept and live with, it's a bug that can be fixed, not just worked around by slowing down your uploads.

If saturating your upstream causes high latency, it's a classic sign that you have a bufferbloat problem you need to fix.

If Google Drive uses TCP for its uploading, it shouldn't exacerbate congestion or cause increased latency, because TCP has built-in mechanisms for congestion avoidance and congestion control.

However, poorly-designed router software that doesn't do smart queueing will be susceptible to a problem known as bufferbloat, which is where some poorly-designed routers focus too much on trying to never drop packets, so they buffer everything and let their buffer queues grow excessively long, which effectively hides the congestion from TCP (TCP uses dropped packets as a sign of congestion), preventing TCP from doing the congestion control that it's quite good at.

Look into bufferbloat and look at putting aftermarket firmware on your router that supports the anti-bufferbloat innovations that were pioneered in the CeroWrt project, such as FQ_CoDel (or plain CoDel) smart queueing and Explicit Congestion Notification (ECN).

Short of that, if your router (possibly with aftermarket firmware) lets you do any kind of WAN port bandwidth limitation, you should limit what it sends out its WAN port to the effective upstream bandwidth of your broadband Internet connection.

That is, let's say you have a situation like this:

  • Your router's WAN port is Gigabit Ethernet
  • It's plugged into an ADSL2+ modem set for Annex A, and you're paying for "up to 25Mbps down, up to 6Mbps up"
  • You've measured your upload with dslreports.com/speedtest (DSLReports' speed test tool measures bufferbloat, making it much better than Speedtest.net), and you're only getting 400kbps upload.

In this scenario, since you know that your broadband upstream really only measures out to 400kbps, set your router's WAN port to only send 400kbps toward the modem. This will likely keep bloated buffer queues from building up.

4
  • While a saturated upload should not cause high latency, in real world it actually does. Many of the components contributing to this are out of the control of the end user. So your answer is theoretically fine, but unusable in practice. Sep 10, 2015 at 9:11
  • 1
    @EugenRieck Replacing, firmware-updating, or tweaking settings of one's home gateway is well within the power of the power users that are SU's audience. In fact many of the networking questions on SU are from people running DD-WRT, OpenWrt, and other firmware distros that have already benefitted from the fixes pioneered by CeroWrt. It's worth helping people understand the root cause of a problem and how to cure it if they can, not just slap on hasty workarounds that only manage the symptoms and only work in a few apps like Google Drive that give you an upload bandwidth throttle.
    – Spiff
    Sep 10, 2015 at 11:32
  • Well, when you show me how to install alternative firmware on my ISP-provided Modem (128 MB Buffers "to reduce retransmissions"), ISP-provided Router and DOCSIS concentrator I might change my opinion. Sep 10, 2015 at 17:36
  • Yes, my box is a combined modem/router from my ISP... Don't think I'll be messing with that.
    – Drewdavid
    Oct 7, 2015 at 16:12
-1

I was running into this issue, and then I ran the TCP Optimizer from http://www.speedguide.net/downloads.php and used it to set my connection to optimal settings. Now Google Drive sync is no longer killing my network. Good times.

1
  • 1
    Can you expand your answer a bit? Just pointing to a product doesn't really explain how to accomplish the solution, and this answer reads a bit like spam. It's better to include some instructions on how to use the product to solve the problem, or at least describe what makes the product a good solution. Good guidance on recommending software here: meta.superuser.com/questions/5329/…. Thanks.
    – fixer1234
    Dec 22, 2015 at 20:31

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .