故事背景
在测试以太网的链路质量的时候。硬件测试会通过眼图来看信号质量。
但是对于大量TX FIR filter参数组合的时候,功能测试可能更方便。
案例
硬件工程师通过测试以太网的link 状态来判断链路参数的有效范围。
Link表示有效,Link down 表示无效。
这种方法的问题是标准太宽松。
改进
发送数据包,检查丢包率来判断线路信号质量。
如果是测试管理口,可以用ping包。
如果是测试业务口,使用PRBS包,压力更大。
ping包测试方法
发包: 使用ping命令,
-p 参数指定Data。
-s 参数指定包大小。
指定内容和包大小 可以加大测试压力。
ping
Usage: ping [-aAbBdDfhLnOqrRUvV64] [-c count] [-i interval] [-I interface]
[-m mark] [-M pmtudisc_option] [-l preload] [-p pattern] [-Q tos]
[-s packetsize] [-S sndbuf] [-t ttl] [-T timestamp_option]
[-w deadline] [-W timeout] [hop1 ...] destination
ping <ip> -p 78
可以通过wireshark 来抓取上面命令发送的内容
Frame 10: 98 bytes on wire (784 bits), 98 bytes captured (784 bits) on interface 0
...
Data (48 bytes)
Data: 48020b000000000078787878787878787878787878787878...
[Length: 48]
可以看到data里面是以78为主要内容的。
为什么有48020b0000000000? 我也不知道...
丢包检测
通过指定发包个数(-c)或者总时间(-w),发送完成后查看loss
例子:
ping 127.0.0.1 -p 78 -w 3
PATTERN: 0x78
PING 127.0.0.1 (127.0.0.1) 56(84) bytes of data.
64 bytes from 127.0.0.1: icmp_seq=1 ttl=64 time=0.032 ms
64 bytes from 127.0.0.1: icmp_seq=2 ttl=64 time=0.051 ms
64 bytes from 127.0.0.1: icmp_seq=3 ttl=64 time=0.050 ms
--- 127.0.0.1 ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2038ms
rtt min/avg/max/mdev = 0.032/0.044/0.051/0.010 ms
网友评论