TCP: Fixed RTO update and dup ACKs generation.hrev51655
commitbf1a86c199f81b436c5b2f72342f8d56fc59450b
authorA-star-ayush <myselfthebest@yahoo.com>
Mon, 4 Dec 2017 17:31:02 +0000 (4 23:01 +0530)
committerAugustin Cavalier <waddlesplash@gmail.com>
Mon, 4 Dec 2017 20:12:03 +0000 (4 15:12 -0500)
treec47b513a1d05e8e3153395017fbabe7532e972b8
parenta88944c86ecf4a4876b9bb4cb07534359d22896e
TCP: Fixed RTO update and dup ACKs generation.

 i) there was an integer promotion problem in updating the retransmission
timeout : a signed int was being divided by an unsigned int. This was causing
the values to overflow. Thus leading to huge values for timeout which
manifested in the perception of pause in data flow.

ii) for an ack to be recognised as a duplicate ack, the advertised window
must remain same. This was not taken care of in the code so I added it.

Signed-off-by: Augustin Cavalier <waddlesplash@gmail.com>
Helps with #13769 but does not fix it completely (upload gets
farther but still stalls.)
src/add-ons/kernel/network/protocols/tcp/TCPEndpoint.cpp
src/add-ons/kernel/network/protocols/tcp/TCPEndpoint.h