TCP/IP

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了TCP/IP相关的知识,希望对你有一定的参考价值。

http://serverfault.com/questions/340223/troubleshoot-large-number-of-tcp-retransmits-dup-ack-segment-lost

 

You are receiving the following packages:

  1. TCP Retransmits
  2. Duplicate ACK
  3. Segment lost

If you receive a TCP retransmit, this is because the ACK you have sent was not received by the server. The server was not aware the TCP packet was received, thinks it was lost underway and will send it again.

The duplicate ACK is typically received at the Sender in the following scenario:

  • Receiver receives packet 1
  • Receiver sends ACK for packet 1
  • Receiver receives packet 3
  • Receiver sends ACK for packet 1 (maximum packet sequence number received). This is a Duplicate ACK for the Sender.
  • Receiver receives packet 4
  • Receiver sends ACK for packet 1 (maximum packet sequence number received). This is a Duplicate ACK for the Sender.

The third error (Segment Lost) is exactly this scenario, but at the Receiver side. It indicates packet 3 was received before packet 2.

All these errors indicate congestion: somewhere along the way packets are dropped. This can have a lot of causes, so we really need a good indication of your network architecture to be able to tell you what the cause is.

Normally, congestion is not a bad thing. TCP is made to automatically adjust to this scenario, increasing transfer rate until packet drops / slowdown starts to occur. The fact that congestion poses problems here can have a number of different causes:

  1. Your network is so congested it cannot handle the minimum required transfer rate for RDP. This would be the case for a 2G cell phone connection.
  2. The algorithms in server or client are badly configured. Some ADSL "optimizer" programs can cause this, messing with the parameters of the Vegas TCP algorithm in Windows.
  3. There is some other error (very high load on server or client, bad firmware/driver for network card, ...)

以上是关于TCP/IP的主要内容,如果未能解决你的问题,请参考以下文章

TCP/IP资料

TCP/IP协议---ICMP协议及pingtraceroute

TCP/IP 服务器代码在包含附加库后停止工作

漏洞预警 | VxWorks TCP/IP 协议栈多个远程代码执行漏洞

Java TCP/IP Socket基于NIO的TCP通信(含代码)

Java TCP/IP SocketUDP Socket(含代码)