0

I am analyzing two virtual machines in the same LAN, tcp packet loss problem, but the knowledge has been exhausted.

platform

CentOS Linux release 7.2.1511 (Core)
3.10.0-327.el7.x86_64 #1 SMP Thu Nov 19 22:10:57 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux

environment

tcp_rmem

16384   655360  16777216

tcp_adv_win_scale

1

tcp_moderate_rcvbuf

1

Test tools and methods

Execute iperf3 and observe netstat changes on the server side

iperf3 output

[  4] local 10.39.19.15 port 15908 connected to 10.39.19.10 port 5201
[ ID] Interval           Transfer     Bandwidth       Retr  Cwnd
[  4]   0.00-1.00   sec   429 MBytes  3.60 Gbits/sec  165    211 KBytes
[  4]   1.00-2.00   sec   297 MBytes  2.49 Gbits/sec  117    215 KBytes
[  4]   2.00-3.00   sec   418 MBytes  3.51 Gbits/sec    3    305 KBytes
[  4]   3.00-4.00   sec   418 MBytes  3.50 Gbits/sec   25    342 KBytes
[  4]   4.00-5.00   sec   438 MBytes  3.67 Gbits/sec  148    406 KBytes
[  4]   5.00-6.00   sec   399 MBytes  3.35 Gbits/sec    0    406 KBytes
[  4]   6.00-7.00   sec   411 MBytes  3.45 Gbits/sec  119    319 KBytes
[  4]   7.00-8.00   sec   406 MBytes  3.41 Gbits/sec  237    342 KBytes
[  4]   8.00-9.00   sec   313 MBytes  2.62 Gbits/sec  300    271 KBytes
[  4]   9.00-10.00  sec   411 MBytes  3.45 Gbits/sec    0    271 KBytes
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval           Transfer     Bandwidth       Retr
[  4]   0.00-10.00  sec  3.85 GBytes  3.31 Gbits/sec  1114             sender
[  4]   0.00-10.00  sec  3.85 GBytes  3.31 Gbits/sec                  receiver

iperf Done.

netstat -s

begin -->

TcpExt:
    36 SYN cookies sent
    36 SYN cookies received
    1538 invalid SYN cookies received
    504 resets received for embryonic SYN_RECV sockets
    364800 packets pruned from receive queue because of socket buffer overrun
    1029887 TCP sockets finished time wait in fast timer
    271 TCP sockets finished time wait in slow timer
    419271 delayed acks sent
    139 delayed acks further delayed because of locked socket
    Quick ack mode was activated 42725 times
    5332 times the listen queue of a socket overflowed
    5368 SYNs to LISTEN sockets dropped
    935931 packets directly queued to recvmsg prequeue.
    3791163939 bytes directly in process context from backlog
    2439373863 bytes directly received in process context from prequeue
    156088936 packet headers predicted
    4869162 packets header predicted and directly queued to user
    9512958 acknowledgments not containing data payload received
    3286817 predicted acknowledgments
    1433 times recovered from packet loss due to fast retransmit
    9541 times recovered from packet loss by selective acknowledgements
    Detected reordering 12 times using FACK
    Detected reordering 225 times using SACK
    Detected reordering 30 times using reno fast retransmit
    1079 congestion windows fully recovered without slow start
    4956 congestion windows recovered without slow start by DSACK
    1890 congestion windows recovered without slow start after partial ack
    TCPLostRetransmit: 296
    17 timeouts after reno fast retransmit
    1289 timeouts after SACK recovery
    89 timeouts in loss state
    35966 fast retransmits
    13695 forward retransmits
    159406 retransmits in slow start
    669795 other TCP timeouts
    TCPLossProbes: 49191
    TCPLossProbeRecovery: 26425
    418 classic Reno fast retransmits failed
    606 SACK retransmits failed
    224393634 packets collapsed in receive queue due to low socket buffer
    42725 DSACKs sent for old packets
    1014 DSACKs sent for out of order packets
    45581 DSACKs received
    22 DSACKs for out of order packets received
    100 connections reset due to unexpected data
    149 connections reset due to early user close
    376281 connections aborted due to timeout
    TCPDSACKIgnoredOld: 7
    TCPDSACKIgnoredNoUndo: 17080
    TCPSpuriousRTOs: 496
    TCPSackShiftFallback: 417911
    TCPBacklogDrop: 915590
    TCPTimeWaitOverflow: 76072
    TCPReqQFullDoCookies: 36
    TCPRetransFail: 6
    TCPRcvCoalesce: 165368153
    TCPOFOQueue: 10612503
    TCPOFOMerge: 976
    TCPAutoCorking: 317778
    TCPFromZeroWindowAdv: 13834
    TCPToZeroWindowAdv: 13834
    TCPWantZeroWindowAdv: 4272276
    TCPSynRetrans: 668864
    TCPOrigDataSent: 140399255
    TCPHystartTrainDetect: 344
    TCPHystartTrainCwnd: 21723
    TCPHystartDelayDetect: 13
    TCPHystartDelayCwnd: 2064
    TCPACKSkippedSeq: 77

end -->

TcpExt:
    36 SYN cookies sent
    36 SYN cookies received
    1538 invalid SYN cookies received
    504 resets received for embryonic SYN_RECV sockets
    364813 packets pruned from receive queue because of socket buffer overrun
    1029921 TCP sockets finished time wait in fast timer
    271 TCP sockets finished time wait in slow timer
    419285 delayed acks sent
    139 delayed acks further delayed because of locked socket
    Quick ack mode was activated 42872 times
    5332 times the listen queue of a socket overflowed
    5368 SYNs to LISTEN sockets dropped
    935968 packets directly queued to recvmsg prequeue.
    3791163939 bytes directly in process context from backlog
    2439382173 bytes directly received in process context from prequeue
    158786407 packet headers predicted
    4869199 packets header predicted and directly queued to user
    9513171 acknowledgments not containing data payload received
    3286991 predicted acknowledgments
    1433 times recovered from packet loss due to fast retransmit
    9542 times recovered from packet loss by selective acknowledgements
    Detected reordering 12 times using FACK
    Detected reordering 225 times using SACK
    Detected reordering 30 times using reno fast retransmit
    1079 congestion windows fully recovered without slow start
    4957 congestion windows recovered without slow start by DSACK
    1890 congestion windows recovered without slow start after partial ack
    TCPLostRetransmit: 296
    17 timeouts after reno fast retransmit
    1289 timeouts after SACK recovery
    89 timeouts in loss state
    35967 fast retransmits
    13697 forward retransmits
    159406 retransmits in slow start
    669806 other TCP timeouts
    TCPLossProbes: 49192
    TCPLossProbeRecovery: 26425
    418 classic Reno fast retransmits failed
    606 SACK retransmits failed
    224398000 packets collapsed in receive queue due to low socket buffer
    42872 DSACKs sent for old packets
    1014 DSACKs sent for out of order packets
    45584 DSACKs received
    22 DSACKs for out of order packets received
    100 connections reset due to unexpected data
    149 connections reset due to early user close
    376292 connections aborted due to timeout
    TCPDSACKIgnoredOld: 7
    TCPDSACKIgnoredNoUndo: 17080
    TCPSpuriousRTOs: 496
    TCPSackShiftFallback: 417926
    TCPBacklogDrop: 917151
    TCPTimeWaitOverflow: 76072
    TCPReqQFullDoCookies: 36
    TCPRetransFail: 6
    TCPRcvCoalesce: 167690207
    TCPOFOQueue: 10643182
    TCPOFOMerge: 976
    TCPAutoCorking: 317778
    TCPFromZeroWindowAdv: 13834
    TCPToZeroWindowAdv: 13834
    TCPWantZeroWindowAdv: 4273883
    TCPSynRetrans: 668875
    TCPOrigDataSent: 140399932
    TCPHystartTrainDetect: 344
    TCPHystartTrainCwnd: 21723
    TCPHystartDelayDetect: 13
    TCPHystartDelayCwnd: 2064
    TCPACKSkippedSeq: 77

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.