netstat中sendq/recvq用于排查发送端发送数据的问题

news/2024/11/8 23:53:17 标签: 服务器

web同事开发了一个用于接收syslog数据的服务器,不清楚web的开发方式,用来联调的发送端是我们的C模块
反馈syslog udp形式接收正常,速度正常,数量也正常,syslog tcp形式接收开始比较快后面越来越慢,并且知道接收不到后数量和发送端发送数量也对不上

查看接收端发现recvq很高,并且87616这个数字停留了很久了
在这里插入图片描述

10.19.17.10是服务端(接收),10.19.17.160是客户端(发送)

查看发送端的sendq也很高
在这里插入图片描述
发送端堆栈的堆栈停留在最上面一层停留在系统调用send上
在这里插入图片描述
以上接着查看发送端的网络问题发现延迟这些都正常,并且发送端使用syslog udp发送也是没问题的,所以判断为接收端问题,接收端处理太慢导致的,如此答复web同事后。web端最后排查是他们自身的问题。原话是:“不是,有问题的这种我是通过syslog提供的包搞的,之前没问题的用的apache的包搞的”。不过咱也不懂web,只要不是我们的问题就行了,不过大概也可以判断出来是web的接收端处理逻辑有问题导致发送端发送的数据阻塞了。

总结:
这里主要是使用netstat或者ss命令中的sendq和recvq来排查问题
sendq(发送队列)和recvq(接收队列)是系统级别的队列,而非特定于某个程序的队列。它们属于TCP/IP协议栈在网络接口和应用程序之间维护的数据缓冲区。

系统级别:
这两个队列是由操作系统内核管理的,用于在网络通信过程中暂存数据。
它们的存在是为了确保数据在网络传输中的可靠性和顺序性。

与程序的关系:
虽然sendq和recvq不是直接由程序创建的,但程序确实会与之交互。
当程序通过socket发送数据时,数据会被放入sendq中等待发送。
当程序通过socket接收数据时,它会从recvq中读取数据。


http://www.niftyadmin.cn/n/5744582.html

相关文章

内部知识库:优化企业培训流程的关键驱动力

在当今快速变化的商业环境中,企业培训的重要性日益凸显。内部知识库作为整合、管理和分享企业内部学习资源的关键工具,正逐步成为优化企业培训流程的核心。以下将探讨内部知识库如何通过多种功能,助力企业提升培训效率、质量和员工满意度。 …

sheng的学习笔记-tidb框架原理

目录 TiDB整体架构 TiDB架构图 组件-TiDB Server 架构图 流程 关系型数据转成kv ​编辑 组件-TiKV Server​ 架构图 主要功能: 列簇 组件-列存储TiFlash 组件-分布式协调层:PD PD架构图 路由 Region Cache back off TSO分配 概念 解…

非线性数据结构之图

一、无环图(Acyclic Graph) 1. 定义 无环图是一种没有环路的图,图中的路径不会形成封闭回路。如果无环图是有向的,则称为 有向无环图(DAG, Directed Acyclic Graph)。 2. 特点 无环性:无环图…

手撕代码要做(更新)

https://mp.weixin.qq.com/s?__bizMzkyNTY0Mjg0OQ&mid2247483790&idx1&sn308fb18b66cc66b78f7e15822cdd6eff&scene21#wechat_redirect 算法工程师面试常考手撕题(更新) Transformer篇 单头注意力多头注意力位置编码 神经网络篇 BP…

c++ 多态性

类的多态 多态概念入门 #include <iostream> using namespace std;/* 多态的前提: 拥有继承关系的类中有相同的函数(返回类型、函数名、形参列表) 多态解决的问题&#xff1a;1、派生类的对象被赋值给基类对象时2、派生类的对象初始化基类的引用时3、基类的指针指向派生…

前端 Canvas 绘画 总结

目录 一、使用案例 1、基础使用案例 2、基本案例改为直接JS实现 二、相关资料 1、API教程文档 2、炫酷案例 一、使用案例 1、基础使用案例 使用Canvas的基本步骤&#xff1a; 1、需要一个canvas标签 2、需要获取 画笔 对象 3、使用canvas提供的api进行绘图 <!--…

HTB:Perfection[WriteUP]

目录 连接至HTB服务器并启动靶机 1.What version of OpenSSH is running? 使用nmap对靶机TCP端口进行开放扫描 2.What programming language is the web application written in? 使用浏览器访问靶机80端口页面&#xff0c;并通过Wappalyzer查看页面脚本语言 3.Which e…

基础算法练习--滑动窗口(已完结)

算法介绍 滑动窗口算法来自tcp协议的一种特性,它的高效使得其也变成了算法题的一种重要考点.滑动窗口的实现实际上也是通过两个指针前后遍历集合实现,但是因为它有固定的解题格式,我将其单独做成一个篇章. 滑动窗口的解题格式: 首先,定义两个指针left和right,与双指针不同的…