当前位置: 技术问答>linux和unix
tcp三路握手第三个ack收到却被丢弃掉
来源: 互联网 发布时间:2017-05-29
本文导语: 本帖最后由 lihao112 于 2014-09-28 22:59:10 编辑 如题。 Linux上c++程序。开启了一个端口的监听。开始的时候正常的,一段时间之后发现如下异常: 1、客户端发送syn。 2、服务器返回syn,ack。 3、客户端发送ack。 tcpdump抓包...
Linux上c++程序。开启了一个端口的监听。开始的时候正常的,一段时间之后发现如下异常:
1、客户端发送syn。
2、服务器返回syn,ack。
3、客户端发送ack。
tcpdump抓包的时候,发现第三个ack确实发送到了服务器。但是服务器貌似没接收到或者出了其他异常。
服务器重复发送 syn,ack。(此时服务器端连接处于syn_recv状态,客户端处于estabished状态)。在重复发送了几次之后,断开了该连接。
当出现该异常之后,该端口上所有的连接都不能接入,但是重启服务器(软件)之后,一切又恢复到了正常。
求大神帮忙。
|
防火墙还是交换机,不知道原因的时候就瞎套
要改下系统参数,syn_recvd timewait(名字已忘) 时间值设短,tcp未完成连接队列设大(这个不知道能不能设置)
网上搜下吧,sysconfig还是啥,具体忘了~~
但这样只能扩大阀值,不找到具体原因该堵还得堵~
要改下系统参数,syn_recvd timewait(名字已忘) 时间值设短,tcp未完成连接队列设大(这个不知道能不能设置)
网上搜下吧,sysconfig还是啥,具体忘了~~
但这样只能扩大阀值,不找到具体原因该堵还得堵~
|
客户端发ack的地址是否正确 如果服务器一直发syn ack 应该是它没接收到 或者接收到的消息解析不出来
|
客户端发ack的地址是否正确 如果服务器一直发syn ack 应该是它没接收到 或者接收到的消息解析不出来