diff --git a/src/internet/model/tcp-bic.cc b/src/internet/model/tcp-bic.cc index d6de4d7fb..ca95e8761 100644 --- a/src/internet/model/tcp-bic.cc +++ b/src/internet/model/tcp-bic.cc @@ -273,14 +273,6 @@ TcpBic::GetSsThresh (Ptr tcb, uint32_t bytesInFlight) return ssThresh; } -void -TcpBic::ReduceCwnd (Ptr tcb) -{ - NS_LOG_FUNCTION (this << tcb); - - tcb->m_cWnd = std::max (tcb->m_cWnd.Get () / 2, tcb->m_segmentSize); -} - Ptr TcpBic::Fork (void) { diff --git a/src/internet/model/tcp-bic.h b/src/internet/model/tcp-bic.h index 428c330a5..8428a77fd 100644 --- a/src/internet/model/tcp-bic.h +++ b/src/internet/model/tcp-bic.h @@ -103,7 +103,6 @@ public: uint32_t segmentsAcked); virtual uint32_t GetSsThresh (Ptr tcb, uint32_t bytesInFlight); - virtual void ReduceCwnd (Ptr tcb); virtual Ptr Fork (); diff --git a/src/internet/model/tcp-congestion-ops.cc b/src/internet/model/tcp-congestion-ops.cc index add7c29d2..ab94caabd 100644 --- a/src/internet/model/tcp-congestion-ops.cc +++ b/src/internet/model/tcp-congestion-ops.cc @@ -250,14 +250,6 @@ TcpNewReno::GetSsThresh (Ptr state, return std::max (2 * state->m_segmentSize, bytesInFlight / 2); } -void -TcpNewReno::ReduceCwnd (Ptr tcb) -{ - NS_LOG_FUNCTION (this << tcb); - - tcb->m_cWnd = std::max (tcb->m_cWnd.Get () / 2, tcb->m_segmentSize); -} - Ptr TcpNewReno::Fork () { diff --git a/src/internet/model/tcp-congestion-ops.h b/src/internet/model/tcp-congestion-ops.h index 678e30a12..7ba35a71c 100644 --- a/src/internet/model/tcp-congestion-ops.h +++ b/src/internet/model/tcp-congestion-ops.h @@ -188,13 +188,6 @@ public: const TcpRateOps::TcpRateConnection &rc, const TcpRateOps::TcpRateSample &rs); - /** - * \brief Reduces congestion window on receipt of ECN Echo Flag - * - * \param tcb internal congestion state - */ - virtual void ReduceCwnd (Ptr tcb) = 0; - // Present in Linux but not in ns-3 yet: /* call when ack arrives (optional) */ // void (*in_ack_event)(struct sock *sk, u32 flags); @@ -243,7 +236,6 @@ public: virtual void IncreaseWindow (Ptr tcb, uint32_t segmentsAcked); virtual uint32_t GetSsThresh (Ptr tcb, uint32_t bytesInFlight); - virtual void ReduceCwnd (Ptr tcb); virtual Ptr Fork (); protected: diff --git a/src/internet/model/tcp-dctcp.cc b/src/internet/model/tcp-dctcp.cc index 974c39076..25fd93b6e 100644 --- a/src/internet/model/tcp-dctcp.cc +++ b/src/internet/model/tcp-dctcp.cc @@ -129,11 +129,6 @@ TcpDctcp::GetSsThresh (Ptr tcb, uint32_t bytesInFlight) return static_cast ((1 - m_alpha / 2.0) * tcb->m_cWnd); } -void -TcpDctcp::ReduceCwnd (Ptr tcb) -{ -} - void TcpDctcp::PktsAcked (Ptr tcb, uint32_t segmentsAcked, const Time &rtt) { diff --git a/src/internet/model/tcp-dctcp.h b/src/internet/model/tcp-dctcp.h index dc0a36d10..a64a38f9d 100644 --- a/src/internet/model/tcp-dctcp.h +++ b/src/internet/model/tcp-dctcp.h @@ -86,7 +86,6 @@ public: virtual uint32_t GetSsThresh (Ptr tcb, uint32_t bytesInFlight); virtual Ptr Fork (); - virtual void ReduceCwnd (Ptr tcb); virtual void PktsAcked (Ptr tcb, uint32_t segmentsAcked, const Time &rtt); virtual void CwndEvent (Ptr tcb, diff --git a/src/internet/model/tcp-linux-reno.cc b/src/internet/model/tcp-linux-reno.cc index 3a4d4deb6..26449c6f2 100644 --- a/src/internet/model/tcp-linux-reno.cc +++ b/src/internet/model/tcp-linux-reno.cc @@ -132,14 +132,6 @@ TcpLinuxReno::GetSsThresh (Ptr state, return std::max (2 * state->m_segmentSize, state->m_cWnd / 2); } -void -TcpLinuxReno::ReduceCwnd (Ptr tcb) -{ - NS_LOG_FUNCTION (this << tcb); - - tcb->m_cWnd = std::max ( tcb->m_cWnd.Get () / 2, tcb->m_segmentSize); -} - Ptr TcpLinuxReno::Fork () { diff --git a/src/internet/model/tcp-linux-reno.h b/src/internet/model/tcp-linux-reno.h index c1b6ff830..7a939e501 100644 --- a/src/internet/model/tcp-linux-reno.h +++ b/src/internet/model/tcp-linux-reno.h @@ -52,7 +52,6 @@ public: virtual void IncreaseWindow (Ptr tcb, uint32_t segmentsAcked); virtual uint32_t GetSsThresh (Ptr tcb, uint32_t bytesInFlight); - virtual void ReduceCwnd (Ptr tcb); virtual Ptr Fork (); protected: diff --git a/src/internet/test/tcp-dctcp-test.cc b/src/internet/test/tcp-dctcp-test.cc index 2976fd6d0..d579f7445 100644 --- a/src/internet/test/tcp-dctcp-test.cc +++ b/src/internet/test/tcp-dctcp-test.cc @@ -273,7 +273,6 @@ TcpDctcpCongestedRouter::SendDataPacket (SequenceNumber32 seq, uint32_t maxSize, if (m_tcb->m_ecnState == TcpSocketState::ECN_ECE_RCVD && m_ecnEchoSeq.Get () > m_ecnCWRSeq.Get () && !isRetransmission && m_testCase != 3) { NS_LOG_INFO ("Backoff mechanism by reducing CWND by half because we've received ECN Echo"); - m_congestionControl->ReduceCwnd (m_tcb); m_tcb->m_ssThresh = m_tcb->m_cWnd; flags |= TcpHeader::CWR; m_ecnCWRSeq = seq; @@ -665,13 +664,11 @@ TcpDctcpDecrementTest::ExecuteTest (void) Ptr cong = CreateObject (); m_state->m_ecnState = TcpSocketState::ECN_IDLE; cong->PktsAcked (m_state, m_segmentsAcked, m_rtt); - cong->ReduceCwnd (m_state); NS_TEST_ASSERT_MSG_EQ (m_state->m_cWnd.Get (), m_cWnd, "cWnd has updated correctly"); m_state->m_ecnState = TcpSocketState::ECN_ECE_RCVD; cong->PktsAcked (m_state, m_segmentsAcked, m_rtt); - cong->ReduceCwnd (m_state); uint32_t val = (uint32_t)(m_cWnd * (1 - 0.0625 / 2.0)); NS_TEST_ASSERT_MSG_EQ (m_state->m_cWnd.Get (), val,