日历

2018年十二月
« 11月    
 12
3456789
10111213141516
17181920212223
24252627282930
31  

最近评论

    linux企业应用

    Netstat 中 Recv-Q和Send-Q状态

    运行netstat -anp发现recv-q 和 send-q 状态不是很正常,对这2个参数不了解,特意学习了一下,简单总结如下:

    recv-Q 表示网络接收队列
    表示收到的数据已经在本地接收缓冲,但是还有多少没有被进程取走,recv()
    如果接收队列Recv-Q一直处于阻塞状态,可能是遭受了拒绝服务 denial-of-service 攻击。

    send-Q 表示网路发送队列
    对方没有收到的数据或者说没有Ack的,还是本地缓冲区.
    如果发送队列Send-Q不能很快的清零,可能是有应用向外发送数据包过快,或者是对方接收数据包不够快。

    这两个值通常应该为0,如果不为0可能是有问题的。packets在两个队列里都不应该有堆积状态。可接受短暂的非0情况。

    从运行netstat -anp中可以看到是大量的 send-Q ,可以判定是发送数据给目的地址的时候出现了阻塞的问题,导致了包堆积在本地缓存中,不能成功发出去。那么问题就产生在了客户端,根据公司的业务逻辑发现是客户端发送的TCP长连接数量过多。验证办法,尝试减少客户端和服务的长连接.查看效果

    评论已关闭。