分析网络路径和性能:
mtr命令
mtr
输出的详细分析:
mtr 162.105.253.58
命令用于结合 traceroute
和 ping
的功能,实时监测并分析从你的计算机到目标主机(IP 地址 162.105.253.58,北京大学计算中心)之间的网络路径和性能。其主要作用如下:
- 路径追踪:识别数据包从源到目标经过的所有中间节点。
- 延迟测量:测量每个中间节点的响应时间(RTT),包括平均延迟、最小延迟和最大延迟。
- 丢包率监测:计算每个中间节点的数据包丢失百分比,以识别网络中的潜在瓶颈或问题节点。
- 实时更新:提供实时的网络性能数据,便于持续监控和诊断。
mtr 162.105.253.58
参数解释
- Host: 数据包传输路径中的各个中间节点或主机地址。
- Loss%: 丢包率,表示在传输过程中数据包丢失的百分比。
- Snt: 发送的数据包总数。
- Last: 最后一次响应时间(RTT,单位为毫秒)。
- Avg: 平均响应时间(单位为毫秒)。
- Best: 最快响应时间(单位为毫秒)。
- Wrst: 最慢响应时间(单位为毫秒)。
- StDev: 响应时间的标准差,表示响应时间的波动程度。
ping
命令
ping
命令输出详细信息
显示了从你的计算机发送的 ICMP 回显请求的数据包从目标主机(IP 地址 162.105.253.58,北京大学计算中心)返回的详细信息:
[1715675570.594846] 64 bytes from 162.105.253.58: icmp_seq=19 ttl=240 time=4.25 ms
[1715675570.796353] 64 bytes from 162.105.253.58: icmp_seq=20 ttl=240 time=5.42 ms
每一行的格式:
[时间戳] 字节数 来自 目标IP地址: ICMP序列号 TTL 响应时间
参数解释
-
[时间戳]:
[1715675569.979467]
:这是一个时间戳,表示数据包返回时的精确时间,以秒为单位。这个时间戳通常从系统启动时间算起(例如,上述时间戳是从系统启动以来经过的秒数和微秒数)。
-
字节数:
64 bytes
:表示从目标主机返回的数据包大小为64字节,这是标准的ICMP数据包大小。
-
来自:
from 162.105.253.58
:表示数据包的来源,即目标主机的IP地址。
-
ICMP序列号:
icmp_seq=16
:表示这是第16个ICMP回显请求。序列号帮助跟踪每个发送的请求及其响应。
-
TTL(Time To Live):
ttl=240
:表示数据包的生存时间。TTL字段在每经过一个路由器时减一,当TTL值变为零时,数据包被丢弃。初始TTL值通常为64、128或255,这取决于操作系统的默认设置。这里的TTL=240表示数据包在返回时经过了较少的路由器跳数。
-
响应时间:
time=7.29 ms
:表示从发送ICMP请求到收到响应所花费的时间,单位为毫秒(ms)。这个时间反映了往返时延(RTT)。
网络协议
ICMP(Internet Control Message Protocol)
- 用途:ICMP 是一种用于在网络设备之间发送控制消息的网络层协议。它主要用于诊断和错误报告。
- 常见应用:
ping
命令:用于测试目标主机的可达性并测量往返时间(RTT)。traceroute
命令:用于确定数据包从源到目标的路径以及路径上每个跳的延迟。
数据分析
-
总体交付率:
- 作用:评估在整个测量期间内,发送的echo请求中有多少收到了回复,反映了网络路径的稳定性和可靠性。
- 计算方法:读取
data.txt
文件,计算发送的echo请求总数和接收到的回复总数。通过检查丢失的序列号来确定丢失的包,并计算交付率。
-
最长连续成功ping的字符串:
- 作用:找出连续成功回复的最大序列长度,显示网络路径在一段时间内的稳定性。
- 计算方法:遍历
data.txt
文件,记录连续回复的最长序列长度。
-
最长的丢包突发:
- 作用:确定连续丢包的最大序列长度,显示网络路径在一段时间内的脆弱性或不稳定性。
- 计算方法:遍历
data.txt
文件,记录连续丢包的最长序列长度。
-
丢包的相关性:
- 作用:分析丢包事件之间的相关性,判断丢包事件是否独立或具有连锁效应。
- 计算方法:
- 计算echo请求#N收到回复时,echo请求#(N+1)也收到回复的概率。
- 计算echo请求#N未收到回复时,echo请求#(N+1)收到回复的概率。
- 将这些条件概率与总体交付率进行比较,分析丢包的独立性或相关性。
-
最小RTT:
- 作用:确定测量期间内最小的往返时间(RTT),反映最理想情况下的网络延迟。
- 计算方法:从
data.txt
文件中找出最小的RTT值。
-
最大RTT:
- 作用:确定测量期间内最大的往返时间(RTT),反映网络路径在最不理想情况下的延迟。
- 计算方法:从
data.txt
文件中找出最大的RTT值。
-
RTT随时间变化的图:
- 作用:展示RTT值在两个小时期间内的变化趋势,反映网络延迟的波动情况。
- 绘制方法:绘制RTT值随时间变化的图,x轴为实际时间,y轴为RTT(以毫秒为单位)。
-
RTT分布的直方图或累积分布函数(CDF):
- 作用:展示RTT值的分布情况,反映RTT值的频率分布和累积概率。
- 绘制方法:创建RTT值的直方图或CDF。
-
连续ping的RTT相关性图:
- 作用:分析连续ping之间RTT值的相关性,判断RTT值在时间上的一致性或变化趋势。
- 绘制方法:绘制ping#N的RTT和ping#N+1的RTT之间的相关性图,x轴为第一个RTT的毫秒数,y轴为第二个RTT的毫秒数。
-
从数据中得出的结论:
- 作用:通过分析数据、图表和摘要统计,得出网络路径行为的总体结论,评估网络性能的好坏。
- 结论内容:包括网络路径的稳定性、可靠性、延迟波动等方面的分析,任何出乎意料的发现和网络行为特征的总结。
结论:
1. 总体交付率为: 100.00%
2. 最长连续成功ping的字符串为: 9776
3. 最长的丢包突发为: 0
4. 收到回复后下一次收到回复的概率为: 99.99%
5. 未收到回复后下一次收到回复的概率为: 0.00%
6. 最小RTT为: 3.06 ms
7. 最大RTT为: 105.0 ms
通过这些分析,我们可以看到网络路径的稳定性和可靠性。网络延迟在时间上有波动,但整体交付率较高。
DAI
仓库(已经更新Lab4):
lms2004/minnow: CS 144 networking lab (github.com)