tcp: Save minRtt in TcpSocketState
This commit is contained in:
@@ -262,7 +262,8 @@ TcpSocketState::TcpSocketState (void)
|
||||
m_rcvTimestampEchoReply (0),
|
||||
m_pacing (false),
|
||||
m_maxPacingRate (0),
|
||||
m_currentPacingRate (0)
|
||||
m_currentPacingRate (0),
|
||||
m_minRtt (Time::Max ())
|
||||
{
|
||||
}
|
||||
|
||||
@@ -281,7 +282,8 @@ TcpSocketState::TcpSocketState (const TcpSocketState &other)
|
||||
m_rcvTimestampEchoReply (other.m_rcvTimestampEchoReply),
|
||||
m_pacing (other.m_pacing),
|
||||
m_maxPacingRate (other.m_maxPacingRate),
|
||||
m_currentPacingRate (other.m_currentPacingRate)
|
||||
m_currentPacingRate (other.m_currentPacingRate),
|
||||
m_minRtt (other.m_minRtt)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -3223,7 +3225,8 @@ TcpSocketBase::EstimateRtt (const TcpHeader& tcpHeader)
|
||||
// RFC 6298, clause 2.4
|
||||
m_rto = Max (m_rtt->GetEstimate () + Max (m_clockGranularity, m_rtt->GetVariation () * 4), m_minRto);
|
||||
m_lastRtt = m_rtt->GetEstimate ();
|
||||
NS_LOG_FUNCTION (this << m_lastRtt);
|
||||
m_tcb->m_minRtt = m_lastRtt.Get () < m_tcb->m_minRtt ? m_lastRtt.Get () : m_tcb->m_minRtt;
|
||||
NS_LOG_FUNCTION (this << m_lastRtt << m_tcb->m_minRtt);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -186,6 +186,7 @@ public:
|
||||
bool m_pacing; //!< Pacing status
|
||||
DataRate m_maxPacingRate; //!< Max Pacing rate
|
||||
DataRate m_currentPacingRate; //!< Current Pacing rate
|
||||
Time m_minRtt; //!< Minimum RTT observed throughout the connection
|
||||
|
||||
/**
|
||||
* \brief Get cwnd in segments rather than bytes
|
||||
|
||||
Reference in New Issue
Block a user