以太網標準規定的最大幀長度為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的占用。利用搭建起來的千兆以太網運行環境,可以擴展類似的高速數據傳輸應用。