Server Fault is a question and answer site for system and network administrators. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I have 1 Gbits down/up fiber, and I run Filezilla FTP server (I'm in Sweden) and a person in the USA needs to download from me. He has 60/8 internet so he should be able to download about 7.5MBsec but only gets 350KB sec. He can upload 1MBsec to me.

The latency is about 155ms and I have:

CMD: netsh interface tcp set global congestionprovider=ctcp

...and FileZilla xml config:

Socket recv buffer size 4194304 Socket send buffer size 1162500

With 1162500 the TCP throughput should be about 60Mbit with 155ms, but it doesn't work.

Anyone know what the problem could be?

share|improve this question

closed as off-topic by kce, ceejayoz, devicenull, Ward, mdpc Mar 16 '14 at 22:47

This question appears to be off-topic. The users who voted to close gave this specific reason:

  • "Questions must be relevant to professional system administration. Server Fault is dedicated to professional system and network administrators. End user and enthusiast questions are off-topic (contact your system administrator or hire a professional to help you out). Please see the Help Center for more information." – kce, ceejayoz, devicenull, Ward, mdpc
If this question can be reworded to fit the rules in the help center, please edit the question.

That's a rather small send buffer, don't you think? – Michael Hampton Mar 15 '14 at 2:46
up vote 1 down vote accepted

Let's see, it could be:

  1. Cheap hardware or poorly implemented drivers
  2. Rate throttling at a peering point between you (I don't think I'd want a single host pushing 60Mb through my network unless I had a decent idea of their need for it)
  3. Poor TCP sliding window negotiaton on your long fat pipe. To name three easy guesses.

RTT generally dominates the window negotiation so I'd guess that 155ms plus his asymmetry is causing him to ask you to slow it down. Since you're a fileserver I'd move it off of TCP entirely, you don't really need guaranteed sequential delivery, do you?

Or post a dump and I'm sure one of us would be amused enough to take a look at it for you.

@Michael Hampton is actually right, you could increase your send buffer (to something on the order of 2^26 I suppose) and ignore his requests for window changes but that's kind of obnoxious and isn't guaranteed to not cause you more trouble on the transatlantic haul...we might have to get Stevens back from the dead to draw some pictures.

Go UDP, or at least something that's been actively developed in the last decade or two (SPDY comes to mind).

share|improve this answer
I'm not aware of a UDP based FTP. What (above layer 3) protocol were you referring to by "UDP"? – Slartibartfast Mar 15 '14 at 7:31
Thanks, yeah I'll skip filezilla FTP and run aspera point to point instead. – Patrik Fröhler Mar 15 '14 at 13:13
@Slartibartfast I wasn't referring to anything in particular. SIP and BitTorrent seem to be immediate examples that rely on higher layers. – quadruplebucky Mar 15 '14 at 15:52

Not the answer you're looking for? Browse other questions tagged or ask your own question.