关键词: KAD/SWI/108;数据丢包;数据传输模式
1 引言
KAD/SWI/108网络交换模块是对二级网络交换机的有力补充,其作为独立的网络交换板卡,可以在KAM采集器中直接使用,这样就不需要额外占用飞机上有限的空间。KAD/SWI/108网络交换模块配置灵活,4个端口可以自由组合,完全可以替代某些二级交换机的功能,甚至可以作为一级交换机来使用。由于其具有体积小、配置灵活、使用方便、功耗低等诸多优点,在机载测试中得到了广泛的应用。
2故障现象
在某型直升机测试系统中,根据测试需求而采用网络化测试系统构架。为减少设备安装空间,网络化采集系统架构中使用KAD/SWI/108网络交换模块作为二级网络交换机。其网络拓扑结构如图2-1所示。采集器3-1和采集器4-1直接连接主控网络交换机NET/SWI/003,其余采集器均经过KAD/SWI/108网络交换模块连接至NET/SWI/003。KAD/EBM/102安装在采集器4-1上,用于多机箱调度。NET/SWI/003的所有端口均设置为100M速率,除进入 MiniR700记录器的端口过滤了多机箱调度产生的网络包之外,其余端口均无过滤。
图2-1
在参数校准时,发现参数有时会出现卡顿现象,在3~4秒内不更新。起初这一现象并未引起机载测试团队的重视,以为这是由于PC机的缓存不够所造成的。实验数据送交数据处理后,课题组反应数据中出现大面积的时间丢点而无法使用,如图2-2所示。根据数据处理返回的数据分析,可以看出网络化采集系统在工作中出现了大量的数据包丢包。
图2-2
3故障分析与定位
机载测试团队首先利用Wireshark软件对所有网络包进行长时间抓取,通过分析IENA包中SEQ参数可以判断数据的连续性。将保存的pcap文件作数据丢包处理,处理结果如下表3-1所示。
至此,可以看出,所有使用KAD/SWI/108网络交换模块的采集器都出现了丢包现象,而与主控网络交换机NET/SWI/003直连的采集器没有出现数据丢包。结合起前述参数实时检查时的卡顿现象及大面积的时间丢点现象,发现这些参数也都来源于使用KAD/SWI/108网络交换模块的采集器。因此可以将故障定位在KAD/SWI/108网络交换模块。通过更换KAD/SWI/108网络交换模块故障现象依旧。在排除掉硬件原因之后,我们认为KAD/SWI/108网络交换模块与主控网络交换机NET/SWI/003的数据传输方式可能引起了网络数据的丢包。
4故障的排除
网络数据传输属于串行传输的一种,数据在线路上的传送方式可以分为全双工通信、半双工通信和单工通信三种。全双工通信,是指在通信的任意时刻,数据的传输都是双向的;半双工通信,是指数据可以沿两个方向传送,但同一时刻只允许单方向传送,因此又被称为双向交替通信;单工通信是指,数据传输是单向的。
根据故障现象分析,网络数据的传输有可能处于半双工模式。在同一时刻,数据的传输只能单向进行,在需要数据作双向传输时,就会形成网络资源竞争,从而导致数据丢包。为进一步验证以上分析,我们搭建了一个验证系统,其网络拓扑结构如图4-1所示。数据采集器1的BCU/140与KAD/SWI/108端口1相连,KAD/SWI/108端口4与主控交换机端口1相连;数据采集器2的BCU/140直接与主控交换机端口2相连。
图4-1
KAD/SWI/108网络交换模块的端口配置均如图2-2所示。网络交换机NET/SWI/003的所有端口均设置为100M速率,所有端口无过滤。
对数据采集器加载完成后,使用实时检查软件对所有参数进行实时检查,发现来自数据采集器1的参数更新时有3-4秒的卡顿现象;而来自采集器2的参数更新时没有卡顿现象。
使用Wireshark对所有网络包进行抓取,将保存的pcap文件作数据丢包处理,处理结果如表
查阅KAD/SWI/108网络交换模块的Datasheet,发现KAD/SWI/108在端口设置上除了网速设置外,还有一个端口模式设置,如图4-2所示。在默认情况下,其端口被配置成100M网口,自适应模式。
图4-2
检查KAD/SWI/108的配置与NET/SWI/003的配置,发现NET/SWI/003的所有端口都被配置成100M网口,而KAD/SWI/108的所有端口如图1-2所示,使用了默认配置,被配置成100M网口,并勾选“Negotiate(自适应)”。
在网络数据传输的两端,数据收、发器的工作模式决定着数据传输的方式。当两端的数据收、发器工作模式不匹配时,数据传输就会出现问题,甚至无法传输。KAD/SWI/108使用了自适应模式,与NET/SWI/003的端口配置并不完全一致。
更改KAD/SWI/108的配置,如图3-3所示,使用强制连接模式。
图4-3
加载后,依然使用Wireshark对网络包进行抓取,将保存的pcap文件作数据丢包处理,处理结果如下表4-2所示。
表4-2
由表4-2可以看出,网络数据丢包没有丢包。同时,使用实时检查软件对所有参数进行实时检查,参数更新时的卡顿现象也没有了。至此,故障得以排除。
根据实验结果,测试团队又进行在进行了大量的试验,通过数据分析,发现网络交换模块KAD/SWI/108的配置与主控交换机NET/SWI/003的配置决定了数据传输的模式,其关系表如表5-1所示。
表5-1
在使用KAD/SWI/108的时候,需要特别注意其与NET/SWI/003的端口配置,一定要使用全双工模式,这样才能保证数据传输的可靠性。半双工模式有时也不会引起数据传输的问题,但是对于系统稳定性来说始终存在隐患。
在通常使用中,NET/SWI/003被配置为100M网速。基于此,建议在使用KAD/SWI/108时更改KAD/SWI/108的默认端口配置,将KAD/SWI/108配置成100M网口,使用强制连接模式。
总结
本文首先从网络交换模块KAD/SWI/108引起的故障现象入手,通过Wireshark抓取网络包对网络数据的丢包现象进行分析。在对网络数据传输模式进行了深入分析之后,通过验证系统复现了故障现象,并通过更改网络交换模块KAD/SWI/108 的配置排除了故障。文章最后给出了网络交换模块KAD/SWI/108的一些使用心得。在使用网络数据时,需要特别注意数据传输模式不匹配造成的数据丢包现象。
论文作者:吉陈力
论文发表刊物:《科学与技术》2019年18期
论文发表时间:2020/4/28
标签:网络论文; 数据论文; 端口论文; 模块论文; 数据传输论文; 现象论文; 交换机论文; 《科学与技术》2019年18期论文;