esnet / iperf

iperf3: A TCP, UDP, and SCTP network bandwidth measurement tool
Other
6.91k stars 1.28k forks source link

what "Retr" field mean . #343

Closed big-loser closed 8 years ago

big-loser commented 8 years ago

Does the "Retr" field mean?

Is re-transmitted by TCP ?

Under what circumstances will appear this kind of state?

tks

bmah888 commented 8 years ago

It's the number of TCP segments retransmitted. This can happen if TCP segments are lost in the network due to congestion or corruption.

penglei0 commented 10 months ago

It's the number of TCP segments retransmitted. This can happen if TCP segments are lost in the network due to congestion or corruption.

@bmah888 It's not the number of retransmitted segments. Actually, it's the number of attempting to retransmit segments; the retransmission attempting may fail and the segment will not be occurs on the outgoing link.

    tcp_enter_loss(sk);

    icsk->icsk_retransmits++;
    if (tcp_retransmit_skb(sk, tcp_rtx_queue_head(sk), 1) > 0) {
        /* Retransmission failed because of local congestion,
         * Let senders fight for local resources conservatively.
         */
        inet_csk_reset_xmit_timer(sk, ICSK_TIME_RETRANS,
                      TCP_RESOURCE_PROBE_INTERVAL,
                      TCP_RTO_MAX);
        goto out;
    }
bmah888 commented 10 months ago

It's the number of TCP segments retransmitted. This can happen if TCP segments are lost in the network due to congestion or corruption.

@bmah888 It's not the number of retransmitted segments. Actually, it's the number of attempting to retransmit segments; the retransmission attempting may fail and the segment will not be occurs on the outgoing link.

Good point, that's a subtle but very important difference.