In my cluster, I am running some experiments that uses the network bandwidth aggressively. (It's on Cent OS 7 Linux)

Right after starting up the experiment, the machines use their maximum network bandwidth. After a short period of time, their network speed drops significantly (it becomes 20~25 times slower).

After long period of time, when most of machines terminate, the remaining few machines are still struggling with the slow network speed.

I suspect the TCP's congestion control, so am cosidering trying turning it off.

How can I completely turn off TCP congestion control?

  • What does tcpdump or wireshark show going on? (Also how do you know TCP is the problem and is not a symptom of something else?) – thrig Jul 1 '17 at 13:54
  • 1
    Yiu can't disable it, but you can choose algo and tune it: fasterdata.es.net/host-tuning/linux/expert – user996142 Jul 1 '17 at 14:10

You can't turn it off because of how TCP works.

TCP is a protocol which provides guaranteed delivery and which provides a data stream. That means that all data need to be acknowledged by the recipient. Until this is done the TCP stack needs to retry packet delivery and for this it needs to buffer any data which got not acknowledged yet. Also, if there are packets missing in the middle of the data stream the recipient need to wait for these to arrive before it can forward the following data to the application since the order of data in the data stream needs to be kept.

When the network is used aggressively packets gets dropped, that is either the data itself or the acknowledgement. This implicitly throttles the connection since it must wait for redelivery of the packet. There are several algorithms and parameters to tune the exact behavior of the TCP stack depending on the environment (low vs. high bandwidth, low vs. high latency...) but because of the delivery guarantees of TCP there is no way to disable congestion control completely.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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