--- tcp-socket-base.h 2015-03-24 11:51:26.652635000 +0300 +++ tcp-socket-base.h 2015-04-04 18:33:16.785689922 +0300 @@ -675,6 +675,12 @@ */ void AddOptionTimestamp (TcpHeader& header); + /** + * \brief Refresh Window Size, with checking reordering of packets + * \param header TcpHeader from which take new WindowSize + */ + void RefreshWindowSize(TcpHeader& header); + protected: // Counters and events @@ -724,6 +730,10 @@ bool m_connected; //!< Connection established double m_msl; //!< Max segment lifetime + // the highest Sequence and Ack numbers, using for updating window ard/or detect reordering + SequenceNumber32 m_highestSequenceNumber; + SequenceNumber32 m_highestAckNumber; + // Window management uint32_t m_segmentSize; //!< Segment size uint16_t m_maxWinSize; //!< Maximum window size to advertise