From 119615c7d4c002778ca9dbfef0c6ce4f6d0ce482 Mon Sep 17 00:00:00 2001 From: hiren Date: Wed, 14 Oct 2015 05:29:33 +0000 Subject: [PATCH] MFC r288914 Add a comment specifying how we implement rfc3042. git-svn-id: svn://svn.freebsd.org/base/stable/10@289288 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f --- sys/netinet/tcp_input.c | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/sys/netinet/tcp_input.c b/sys/netinet/tcp_input.c index 6af5c9cf0..0500f2506 100644 --- a/sys/netinet/tcp_input.c +++ b/sys/netinet/tcp_input.c @@ -2523,6 +2523,16 @@ tcp_do_segment(struct mbuf *m, struct tcphdr *th, struct socket *so, tp->snd_nxt = onxt; goto drop; } else if (V_tcp_do_rfc3042) { + /* + * Process first and second duplicate + * ACKs. Each indicates a segment + * leaving the network, creating room + * for more. Make sure we can send a + * packet on reception of each duplicate + * ACK by increasing snd_cwnd by one + * segment. Restore the original + * snd_cwnd after packet transmission. + */ cc_ack_received(tp, th, CC_DUPACK); u_long oldcwnd = tp->snd_cwnd; tcp_seq oldsndmax = tp->snd_max; -- 2.45.0