对某以太网设备进行长时间的温度循环测试,利用 SmartBits(SmartBits 设备,是由Spirent 公司开发的,用于以太网数据流量测试的设备。)对设备连续地、全速率地发送以太网数据包,测试人员发现一个奇怪的现象,设备在白天的测试中,均无丢包现象,夜间设备继续运行,但是第二天一早就会发现已发生丢包。
《讨论》
该设备的用户接口是百兆以太网接口,利用5类非屏蔽双绞线与 SmartBits 连接,由于端口数目较多,线缆布线较杂,存在线缆被实验室管理员挪动的可能,在挪动过程中,可能导致丢数据包。经与管理员确认,这种可能被排除。
温度循环测试是指,通过对温箱温度曲线的控制,以实现调整产品工作所处环境温度的目的。在这个测试中,温度曲线如图 6.9所示。
图6.9高低温循环测试温度曲线
循环测试一个周期共 26h (h:小时),分为六个阶段。第一阶段是用4h 均地从25℃降温到-5℃,第二阶段是在-5℃保持 5h,第三阶段用 4h 均地从-5℃升温到 25℃,第段用4h 均匀地从25℃升温到 55℃,第五阶段是在55℃保持 5h,第六阶段是用4h从55降温到25℃。在这个过程中,产品不间断地全速运行。测试人员每天清早 9 点钟开始一个周期的测试,到下午 6 点下班前检查丢包情况,没有发现丢包,第二天清早9点检查,发现已经出现丢包现象。头天清早 9点到下午 6 点,循环测试正好完成了头两个阶段,从夜间到第二天早上9点,完成第三、四、五阶段以及第六阶段的一半,即丢包现象总是发生在后四个阶段。而后四个阶段有两个特点:一是升温,二是高温。在高温 55℃下,测量单板上与 PHY 相关的信号完整性和时序,没有发现问题。
利用 SmartBits 对以太网产品进行流量测试,有两个原因可能丢数据包:一个是产品本身存在缺陷;另一个是SmartBits的晶振快于以太网产品上PHY使用的晶振在高温下进行大量测试后,可基本排除产品缺陷造成丢数据包的可能性以下主要讨论晶振快慢对数据传输的影响。
SmartBits 是用于以太网性能测试的设备,在本案例中,其作用是以线速的速度产生以太网数据包,并发送给以太网交换机,以太网交换机收到数据包后,在内部转发,最终又将所有数据包发回SmartBits。SmartBits 通过检测发出的数据包数目和接收的数据包数目是否相等,来判断是否发生了丢包。如图6.10所示,假设SmartBits 上的IC1是负责收发数据包的芯片,数据包到达以大网设备,完成业务后,通过芯片 PHY1发送回 SmartBits。在这个过程中,SmartBits 上的ICl是基于晶振OSCI收发数据包,而以太网设备的PHY1是基于晶振OSC2收发数据包,由于双方采用的不是同一颗晶振,在频率上必然有一定的差别。假设 OSC1和OSC2都是25MHz(误差士50ppm)的晶振(ppm指百万分之一,此处,50ppm的误差即为50Hz),虽然标称频率和精度完全一样,但实际振荡频率并不完全一样。利用频率计测量,在室温下,OsC1的频率是25.000050MHz,即25MHz(误差+2ppm);OSC2的频率是25.000100MHz,即 25MHz(误差+4ppm)。OSC2略微快于 OSC1,即以太网设备上 PHYI的工作速率高于SmartBits上IC1的工作速率,因此在常温下,以太网设备有能力将SmartBits发送来的数据包接收下来,并全部发回。
图6.10 SmartBits 与以太网设备连接
白天的测试从不丢包,分析温度循环曲线图可知,白天的测试包括常温和低温两种情况,在测试中,只有以太网设备被放置在温箱中,而 SmartBits 一直工作在室温环境,在低温-5C下测量OSC2的频率为25.000300MH,即25MHz(误差+12ppm),高于OSC1室温下的频率25MHz(误差+2ppm),因此,在低温下,以太网设备同样有能力将 SmartBits发送来的数据全部发回。
丢包现象都是发生在夜间,夜间的测试包括低温、常温、高温三个阶段,通过前面的测试已经证实,低温和常温条件下,OSC2 的频率都快于 OSC1,因此主要考虑高温的情况。在55C,测量OSC2的频率为 24.999825MHz,即25MHz(误差-7ppm),慢于OSC1,在这种情况下,以太网设备没有足够的能力将 SmartBits 发送来的数据包全部发回即对于以太网设备而言,接收到的数据包始终多于能发送出去的数据包,必然造成丢包。根据以上分析得到结论,夜间丢包的原因是高温下 OSC2 的速率慢于 OSC1。为了检验这个结论,设计者将 SmartBits 发包速率从全速的 100%调整为97%,进行多个温度循环测试,没有发现丢包。由此证明丢包原因确系高温下 OSC2 速度较慢。仔细查阅以太网设备上使用的晶振 OSC2的器件资料,发现晶振的输出频率随着环境温度的变化,也会有略微的变化,如图 6.11 所示。
图 6.11 晶振频率一温度变化曲线(-40~+85°)
以 25C时晶振的频率为基准,随着温度的降低,输出频率将先提高,再降低;随着温度的升高,输出频率将先降低,再升高。本例中,55C时的晶振输出频率相对常温最多可能降低12ppm。
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。
举报投诉
-
测试
+关注
关注
8文章
5162浏览量
126469 -
以太网
+关注
关注
40文章
5376浏览量
171114 -
晶振
+关注
关注
34文章
2826浏览量
67904 -
流量
+关注
关注
0文章
244浏览量
23881
发布评论请先 登录
相关推荐
ubuntu ping 开发板存在严重的丢包情况,请问该怎么解决?
我现在在学习一个嵌入式Linux的项目,要实现主机,虚拟机,开发板三者的通信,我的一系列设置应该是没问题的。但是在ubuntu上ping开发板时总是会出现很严重的丢包情况,有时甚至会有From
发表于 11-01 16:50
新加坡服务器的速度测试方法有哪些
测试新加坡服务器的速度和性能是确保服务器能够满足业务需求的关键步骤。以下是一些常用的方法和工具: Ping测试: Ping命令是一种基本的网络诊断工具,用于测试与服务器的连接延迟和丢
工业交换机的零延迟和零丢包
在现代工业自动化和网络通信的快速发展中,工业交换机作为连接各类设备的核心元素,其性能和稳定性显得尤为重要。零延迟和零丢包的概念不仅是技术上的追求,更是推动工业智能化进程的重要保障。传统网络在数
使用SPI连接MCU和ESP8266,频繁出现丢包问题是什么原因呢?
您好;
我司使用SPI 连接MCU和ESP8266,同一个局域网内 8台左右机器同时上传10MB 大小的文件到后台,频繁出现丢包问题;设备信号没有问题,紧挨着路由器;另外换过不同型号路由器也没有改善;大概会是什么原因呢
发表于 07-19 08:12
ESP8266_RTOS3.0串口0传输大量数据丢包的原因?
多个分段进入处理函数,后来使用example示例中的uart_echo,发现接收可以完整接收,但是当把数据原样从串口0的tx输出时,数据中间出现多次中断丢包。
我发现用系统自带的打印log的函数打印数据时,并不会出现丢
发表于 07-09 06:32
串口通信的时候怎么避免丢包的情况?
1.如何避免在中断里面执行长时间的操作
2.串口通信的时候怎么避免丢包的情况
3.串口通信为什么不可以一次发送1000bit或者10000bit 也就是说一帧数据为 一位起始位 10000bit数据位 一位停止位
发表于 07-03 07:00
例程simple_sniffer接收wifi数据包时老是丢包,有什么改进办法?
您好!
在用例程simple_sniffer接收wifi数据包时老是丢包,是否有什么改进办法?
谢谢
发表于 06-26 07:41
ESP8266 STA+AP模式下丢包如何解决?
ESP8266 STA单模式下,发送成功率在99%以上,请问如果存在STA+AP模式下丢包bug的话(我在网上看到相关信息,说信道共用的问题)那么我的95%通讯成功率是否正常(基于这个bug的前提下),再问
发表于 06-26 06:25
CC2640R2L使用BLE的Notify功能,通过定时器每隔10ms向手机发送一包数据,会出现丢包的原因?
使用BLE的Notify功能,通过定时器每隔10ms向手机发送一包数据,每包数据20字节,发送大约4000包后出现丢包情况,每次丢1
发表于 05-30 07:43
奥迪威推出新一代高温流量传感器
随着物联网技术的迅猛发展,超声波智能热量表在“智慧城市”供热系统中的应用越来越广泛。为满足市场对高精度、低耗损超声波流量传感器的需求,奥迪威从感知层出发,推出了新一代专供超声波热量表应用的流量传感器——
常见的网络丢包故障定位⽅法
本期分享一个比较常见的⽹络问题--丢包。例如我们去ping⼀个⽹站,如果能ping通,且⽹站返回信息全⾯,则说明与⽹站服务器的通信是畅通的,如果ping不通,或者⽹站返回的信息不全等,则很可能是数据
评论