diff --git a/src/aodv/test/tcp-chain-test-0-0.pcap b/src/aodv/test/tcp-chain-test-0-0.pcap index 5f7f29c01..db12bb073 100644 Binary files a/src/aodv/test/tcp-chain-test-0-0.pcap and b/src/aodv/test/tcp-chain-test-0-0.pcap differ diff --git a/src/aodv/test/tcp-chain-test-9-0.pcap b/src/aodv/test/tcp-chain-test-9-0.pcap index 12038ecd7..a120a8353 100644 Binary files a/src/aodv/test/tcp-chain-test-9-0.pcap and b/src/aodv/test/tcp-chain-test-9-0.pcap differ diff --git a/src/internet/model/tcp-socket-base.cc b/src/internet/model/tcp-socket-base.cc index 3de68ae13..6817ffcc2 100644 --- a/src/internet/model/tcp-socket-base.cc +++ b/src/internet/model/tcp-socket-base.cc @@ -1719,7 +1719,10 @@ TcpSocketBase::DoRetransmit () } // Retransmit a data packet: Call SendDataPacket NS_LOG_LOGIC ("TcpSocketBase " << this << " retxing seq " << m_txBuffer.HeadSequence ()); - SendDataPacket (m_txBuffer.HeadSequence (), m_segmentSize, true); + uint32_t sz = SendDataPacket (m_txBuffer.HeadSequence (), m_segmentSize, true); + // In case of RTO, advance m_nextTxSequence + m_nextTxSequence = std::max (m_nextTxSequence.Get (), m_txBuffer.HeadSequence () + sz); + } void