linux/net/dccp/ccids
Samuel Jero d346d886a4 dccp ccid-2: prevent cwnd > Sequence Window
Add a check to prevent CCID-2 from increasing the cwnd greater than the
Sequence Window.

When the congestion window becomes bigger than the Sequence Window, CCID-2
will attempt to keep more data in the network than the DCCP Sequence Window
code considers possible. This results in the Sequence Window code issuing
a Sync, thereby inducing needless overhead. Further, if this occurs at the
sender, CCID-2 will never detect the problem because the Acks it receives
will indicate no losses. I have seen this cause a drop of 1/3rd in throughput
for a connection.

Also add code to adjust the Sequence Window to be about 5 times the number of
packets in the network (RFC 4340, 7.5.2) and to adjust the Ack Ratio so that
the remote Sequence Window will hold about 5 times the number of packets in
the network. This allows the congestion window to increase correctly without
being limited by the Sequence Window.

Signed-off-by: Samuel Jero <sj323707@ohio.edu>
Acked-by: Gerrit Renker <gerrit@erg.abdn.ac.uk>
2011-08-01 07:52:35 -06:00
..
lib net: return operator cleanup 2010-09-23 14:33:39 -07:00
ccid2.c dccp ccid-2: prevent cwnd > Sequence Window 2011-08-01 07:52:35 -06:00
ccid2.h dccp ccid-2: prevent cwnd > Sequence Window 2011-08-01 07:52:35 -06:00
ccid3.c dccp: Return-value convention of hc_tx_send_packet() 2010-10-28 10:27:00 -07:00
ccid3.h dccp ccid-3: Remove redundant 'options_received' struct 2010-09-21 12:14:26 +02:00
Kconfig dccp ccid-3: use per-route RTO or TCP RTO as fallback 2010-08-30 13:45:28 -07:00