From e82c68a1ae991afd72cc6ce00a0023878e440c82 Mon Sep 17 00:00:00 2001 From: Vivek Jain Date: Fri, 4 May 2018 11:17:31 +0200 Subject: [PATCH] tcp: reset cwnd to 1 after, and not before, the notification to a CA --- src/internet/model/tcp-socket-base.cc | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/internet/model/tcp-socket-base.cc b/src/internet/model/tcp-socket-base.cc index a148278d1..f845f2c56 100644 --- a/src/internet/model/tcp-socket-base.cc +++ b/src/internet/model/tcp-socket-base.cc @@ -3532,11 +3532,11 @@ TcpSocketBase::ReTxTimeout () } // Cwnd set to 1 MSS - m_tcb->m_cWnd = m_tcb->m_segmentSize; - m_tcb->m_cWndInfl = m_tcb->m_cWnd; m_congestionControl->CwndEvent (m_tcb, TcpSocketState::CA_EVENT_LOSS); m_congestionControl->CongestionStateSet (m_tcb, TcpSocketState::CA_LOSS); m_tcb->m_congState = TcpSocketState::CA_LOSS; + m_tcb->m_cWnd = m_tcb->m_segmentSize; + m_tcb->m_cWndInfl = m_tcb->m_cWnd; m_pacingTimer.Cancel ();