Description | The TCP senders current estimate of the number of
unacknowledged data octets in the network.
While not in recovery (e.g., while the receiver is not
reporting missing data to the sender), this is precisely the
same as 'Flight size' as defined in RFC 2581, which can be
computed as SND.NXT minus SND.UNA. [RFC793]
During recovery, the TCP sender has incomplete information
about the state of the network (e.g., which segments are
lost vs reordered, especially if the return path is also
dropping TCP acknowledgments). Current TCP standards do not
mandate any specific algorithm for estimating the number of
unacknowledged data octets in the network.
RFC 3517 describes a conservative algorithm to use SACK
information to estimate the number of unacknowledged data
octets in the network. tcpEStatsPerfPipeSize object SHOULD
be the same as 'pipe' as defined in RFC 3517 if it is
implemented. (Note that while not in recovery the pipe
algorithm yields the same values as flight size).
If RFC 3517 is not implemented, the data octets in flight
SHOULD be estimated as SND.NXT minus SND.UNA adjusted by
some measure of the data that has left the network and
retransmitted data. For example, with Reno or NewReno style
TCP, the number of duplicate acknowledgment is used to
count the number of segments that have left the network.
That is,
PipeSize=SND.NXT-SND.UNA+(retransmits-dupacks)*CurMSS |