Linux kernel increased the TCP_MIB_OUTSEGS even if only retransmitted octets is send out. RFC2012 saied that it excluding those containing only retransmitted octets.
Refer to RFC2012, tcpOutSegs is defined as following: tcpOutSegs OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "The total number of segments sent, including those on current connections but excluding those containing only retransmitted octets." ::= { tcp 11 } --- a/net/ipv4/tcp_output.c 2006-02-23 09:20:24.660261904 +0900 +++ b/net/ipv4/tcp_output.c 2006-02-23 09:41:16.393969456 +0900 @@ -379,7 +379,8 @@ if (skb->len != tcp_header_size) tcp_event_data_sent(tp, skb, sk); - TCP_INC_STATS(TCP_MIB_OUTSEGS); + if (!(tcb->sacked & TCPCB_LOST)) + TCP_INC_STATS(TCP_MIB_OUTSEGS); err = tp->af_specific->queue_xmit(skb, 0); if (unlikely(err <= 0)) - To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html