diff options
author | rrs <rrs@FreeBSD.org> | 2011-02-02 11:13:23 +0000 |
---|---|---|
committer | rrs <rrs@FreeBSD.org> | 2011-02-02 11:13:23 +0000 |
commit | 21c4d27f12ba02243502767bea3b5204d7cc5b4b (patch) | |
tree | 0056ca24f8b0f300a7c3fbf157aaaace4954e2df /sys/netinet/sctp_cc_functions.c | |
parent | 3d021845fb3da3ecb328f8817a723c879122b386 (diff) | |
download | FreeBSD-src-21c4d27f12ba02243502767bea3b5204d7cc5b4b.zip FreeBSD-src-21c4d27f12ba02243502767bea3b5204d7cc5b4b.tar.gz |
1) Allow a chunk to track the cwnd it was at when sent.
2) Add separate max-bursts for retransmit and hb. These
are set to sysctlable values but not settable via the
socket api. This makes sure we don't blast out HB's or
fast-retransmits.
3) Determine on the first data transmission on a net if
its local-lan (by being under or over a RTT). This
can later be used to think about different algorithms
based on locallan vs big-i (experimental)
4) The cwnd should NOT be allowed to grow when an ECNEcho
is seen (TCP has this same bug). We fix this in SCTP
so an ECNe being seen prevents an advance of cwnd.
5) CWR's should not be sent multiple times to the
same network, instead just updating the TSN being
transmitted if needed.
MFC after: 1 Month
Diffstat (limited to 'sys/netinet/sctp_cc_functions.c')
-rw-r--r-- | sys/netinet/sctp_cc_functions.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/sys/netinet/sctp_cc_functions.c b/sys/netinet/sctp_cc_functions.c index ddd2fd85..d9cf609 100644 --- a/sys/netinet/sctp_cc_functions.c +++ b/sys/netinet/sctp_cc_functions.c @@ -481,6 +481,7 @@ sctp_cwnd_update_after_timeout(struct sctp_tcb *stcb, struct sctp_nets *net) } } + static void sctp_cwnd_update_after_ecn_echo(struct sctp_tcb *stcb, struct sctp_nets *net, int in_window, int num_pkt_lost) |