以太网标准规定的最大帧长度为1 518 Byte,这包括IP层和UDP层添加的首部,一般发送的数据包也都应该限制在这一范围内。但千兆以太网有一种厂商标准的超长帧格式,目前还没有获得IEEE标准委员会的认可,它规定的帧格式与普通以太网帧相同,只是其数据填充区域可以突破原有限制,整个帧长度为9 000~64 000 Byte不等,即Jumbo巨型帧。
在本系统中采用Jumbo帧的好处:(1)可以适当提高网络带宽的利用率。这主要靠节省各层首部的添加得到。(2)减少操作系统因频繁响应网络设备的中断而带来的CPU资源的过多占用。这可以说是采用Jumbo帧的主要原因,因为要处理千兆以太网较高的数据率,无论上位机软件如何优化,CPU的占用仍然很高,这时如果能减少其他地方的CPU开销,将大幅增加软件的处理能力。
但Jumbo帧在使用时也有一些不利的地方。首先,目前很多PC机的网络适配器不支持Jumbo帧的传输,虽然Altera的以太网控制器IP核支持,但这不足以使两个设备进行通信;其次,Jumbo帧会长时间占用网络通道,这会影响那些对数据延迟敏感的设备和应用;第三,Jumbo帧的丢包意味着严重的灾难,一帧相当于十多个正常帧,这会将处理能力弱的PC机迅速引入重传的陷阱,丢包越来越多,直到网络带宽被全部占用,导致上位机软件崩溃。所以在考虑支持Jumbo帧之前,应先充分权衡这些优势与不足。
5 结束语
系统硬件设备与上位机软件配合工作,可以较好地完成双路彩色PAL制数据流的采集任务。通过实际测试与分析,采用Jumbo帧进行传输,有效地减少了软件运行过程中的系统中断数,从而最大限度地降低了CPU的占用。利用搭建起来的千兆以太网运行环境,可以扩展类似的高速数据传输应用。