热门标签 | HotTags
当前位置:  开发笔记 > 后端 > 正文

Netstat中Recv-Q和Send-Q状态

执行命令查看当前网络状态时候发现,执行了命令netstat-anp发现recv-q和send-q状态不是很正常,对这2个参数不了解,特意学习了一下,简单总结如下:recv-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情况。

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


推荐阅读
author-avatar
诸葛烈火_220
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有