背景最近一直在排查一些网络的问题,比如 connect timeout 、read timeout 以及一些丢包的问题,刚好想整理一些东西,方便和团队内及开发分享。我们先看下 Linux 系统接收数据包的过程: 网卡收到数据包。将数据包从网卡硬件缓存转移到服务器内存中。通知内核处理。经过 TCP/IP 协议逐层处理。应用程序通过 read() 从 socket buffer
转载
2024-02-09 12:32:55
564阅读
引言本期分享一个比较常见的⽹络问题—丢包。例如我们去 Ping ⼀个⽹站,如果能 Ping 通,且⽹站返回信息全⾯,则说明与⽹站服务器的通信是畅通的,如果 Ping 不通,或者⽹站返回的信息不全等,则很可能是数据被丢包了,类似情况想必⼤家都不陌⽣。针对⽹络丢包,本⽂提供⼀些常见的丢包故障定位⽅法,希望能够帮助⼤家对⽹络丢包有更多的认识,遇到丢包莫要慌,且跟着⼀起来涨姿(知)势(识)……什么是丢包数
转载
2023-10-27 05:49:27
255阅读
“tcp丢包分析”系列文章代码来自谢宝友老师,由西邮陈莉君教授研一学生进行解析,本文由戴君毅整理,梁金荣编辑,贺东升校对。最初开发 /proc 文件系统是为了提供有关系统中进程的信息。但是这个文件系统非常有用, /proc 文件系统包含了一些目录(用作组织信息的方式)和虚拟文件。虚拟文件可以向用户呈现内核中的一些信息,也可以用作一种从用户空间向内核发送信息的手段。/proc文件系统可以为用户提供很
转载
2024-08-28 21:57:15
57阅读
上周六写了《
在Wireshark的tcptrace图中看清TCP拥塞控制算法的细节(CUBIC/BBR算法为例)》,收到一封邮件,说我文中的图示画错了。
确实,关于CUBIC,我只说了缠绕,关于BBR我只说了顺延,并没有说具体如何,甚至我没有提一嘴关于重传的细节,更
转载
2024-03-18 06:42:46
237阅读
1 起因 前段时间,一直在调线上的一个问题:线上应用接受POST请求,请求body中的参数获取不全,存在丢失的状况。这个问题是偶发性的,大概发生的几率为5%-10%左右,这个概率已经相当高了。在排查问题的过程中使用到了tcpdump和Wireshark进行抓包分析。感觉这两个工具搭配起来干活,非常完美。所有的网络传输在这两个工具搭配下,都无处遁形。 为了更好、更顺手地能够用好这两个工具,特整理
今天我们谈论的关键词是“Linux 丢包”。Linux系统作为一种开放源代码操作系统,广泛应用于各种服务器和计算机系统中,而丢包问题一直是Linux系统中一个比较令人头疼的问题。
在网络通信过程中,数据包的传输是非常重要的。丢包指的是在数据包传输过程中由于各种原因导致数据包丢失的情况。在一个稳定的网络环境中,丢包问题可能不太显著,但在网络负载较高或者网络环境不稳定的情况下,丢包问题就显得更加明显
原创
2024-02-23 10:03:39
52阅读
丢包(Packet loss)是指一个或多个数据数据包(packet)的数据无法透过网上到达目的地的情况,无论是Windows还是Linux系统中都会出现丢包的情况。netem是 Linux 2.6 及以上内核版本提供的一个网络模拟功能模块。该功能模块可以用来在性能良好的局域网中,模拟出复杂的互联网在Linux系统中性能,诸如低带宽、传输延迟、丢包等等情况。除此之外,我们在Linux模拟丢包的过程
转载
2024-04-03 20:35:35
63阅读
D-SMART的雷达图上看到操作系统扣分十分严重,打开一看,原来是网络丢包量十分严重。后来换了根网线,这个问题就消失了,看样子真的和网络有关。这两天一个客户那边有几套系统,我们的D-SMART总是报警网络有丢包,高峰的时候会达到每秒几百个。一般情况下,每秒有十个八个丢包是不会报警的,不过如果比较高的时候,必须做一个分析,否则心里总觉得不安心。于是我们就在INTEL等朋友的帮助下边学边干,工作过程中
转载
2024-04-17 10:28:44
187阅读
实验 3:Mininet 实验——测量路径的损耗率
一、实验目的 在实验 2 的基础上进一步熟悉 Mininet 自定义拓扑脚本,以及与损耗率相关的设
定;初步了解 Mininet 安装时自带的 POX 控制器脚本编写,测试路径损耗率。
二、实验任务
h0 向 h1 发送数据包,由于在 Mininet 脚本中设置了连接损耗率,在传输过程中
会丢失一些包,本次实验的目的是展示如何通过控制器计算路径损
丢包的概念和造成丢包的原因丢包,顾名思义,在通信中是指通信数据包丢失。数据在通信网络上是以数据包为单位传输的,每个数据包中有表示数据信息和提供数据路由的帧。所以无论网络情况多好,数据包之间都是有空隙的,因为物理线路故障、设备故障、病毒攻击、路由信息错误等原因,总会有一定的损失。碰到这种情况,网络会自动的让通信的两端根据协议来补包。如果线路情况好,速度快,包的损失会非常小,补包的工作也相对较易完成,
转载
2024-07-11 21:52:02
153阅读
今天要测试一下linux上udp的丢包率,查了一下,有个iperf的可以做这个,分别在发送端和接收端安装命令,然后运行一下就行了,首先在服务端设置 iperf -p 80 -s -u -i 1
参数说明:
-p : 端口号
-s : 标示服务端
-u : 标示udp协议
-i : 检测的时间间隔(单位:秒)然后在发送端设置iperf -c 10.0.0.6 -p 10021 -u -b 10M
转载
2023-06-07 16:15:06
280阅读
TODO: 此篇比较杂乱, 待整理 !!!术语解释解决网络问题的思路流控理论网络性能问题拥塞重传RTO: 丢包的 Retransmission Timeout 被触发 -> 进入超时重传阶段超时重传快速重传选择重传: SACk延迟确认: Delayed ACK来自: <<一篇关于Vmware的文章>> , <<来点有深度的>>含义: 当需要发送
转载
2024-03-21 22:52:00
56阅读
网卡丢包怎么办?或者再具体点,使用ifconfig查看网卡,发现有dropped统计时可以从哪些方面进行调查?要想知道为什么丢包,首先要弄清楚接收数据包的流程。一. 收包模块间的关系Linux系统从网卡收到数据包到最终上层应用处理之间涉及到多个模块,包括物理硬件、驱动、缓存队列、内核、再到应用程序。如下图,其中任一模块出问题都有可能导致网卡丢包。二. 数据包接收流程如上图,接收数据包会遵循硬件(d
转载
2024-03-26 08:51:16
444阅读
1. TCP DUP ACK TCP dup ack XXX#X原因分析: 就是重复应答#前的表示报文到哪个序号丢失,#后面的是表示第几次丢失.当乱序或者丢包发生时,接收方会收到一些Seq号比期望值大的包。它每收到一个这种包就会Ack一次期望的Seq值,以此方式来提醒发送方,于是就产生了一些重复的Ack。Wireshark会在这种重复的Ack上标记[TCP Dup ACK] .2. TCP Fas
转载
2024-02-21 11:45:25
359阅读
故障排查:早上突然收到nagios服务器check_icmp的报警,报警显示一台网站服务器的内网网络有问题。因为那台服务器挂载了内网的NFS,因此内网的网络就采用nagios的check_icmp来做监控。赶紧登录服务器进行排查。首先使用ping 内网IP的方式查看内网的连通性,ping的过程中出现丢包现象,信息如下:64 bytes from 10.1.1.1: icmp_seq=34 ttl=
转载
2024-02-17 08:44:50
116阅读
关于TCP三次握手和四次挥手大家都在《计算机网络》课程里学过,还记得当时高超老师耐心地讲解。大学里我遇到的最好的老师大概就是这位了,虽然他只给我讲过《java程序设计》和《计算机网络》,但每次课几乎都动手敲代码或者当场做实验。好了不扯了,下面进入正题。 关于三次握手和四次挥手的理论部分可以在很多资料上找到,我今天动手抓了几个包验证书上的理论,毕竟那
转载
2024-03-22 09:41:26
217阅读
深入分析Linux网络丢包问题
原创
精选
2023-04-20 21:06:09
423阅读
前言我们都知道,一般流量分析设备都支持pcap回放离线分析的功能,但如果抓的pcap丢了包,会影响最终安全测试的效果。比如说竞测现场需要提供pcap包测试恶意文件的检测功能,如果pcap中丢包,可能会导致文件还原失败,最终恶意文件检测功能“实效”。那问题来了,我们怎么识别pcap包是否有丢包呢?接下来,我们通过wireshark来查找pcap文件中的丢包线索。完整?丢包?思路1 :透过现象看现象。
一.根据定位问题到解决问题的思路:1.确认网络链路问题,ping测和traceroute确认链路是否健康。如果链路有问题,找对应网络管理员排查网络。2.确认系统问题,通过wireshark或者tcpdump在应用系统两端抓包,定位问题所在,排查是发送或者接受系统网卡、性能问题3.从tcp应用本身排查,通过在程序上添加调试代码,核查是否应用逻辑处理问题二.考虑TCP协议为什么会丢包,在什么样的情况下
转载
2024-03-22 16:46:47
530阅读
Debug 网络质量的时候,我们一般会关注两个因素:延迟和吞吐量(带宽)。延迟比较好验证,Ping 一下或者 mtr[1] 一下就能看出来。这篇文章分享一个 debug 吞吐量的办法。看重吞吐量的场景一般是所谓的长肥管道(Long Fat Networks, LFN, rfc7323[2]). 比如下载大文件。吞吐量没有达到网络的上限,主要可能受 3 个方面的影响:发
转载
2024-03-20 08:16:22
944阅读