1. 程式人生 > >為什麼抓包時IP包會大於MTU

為什麼抓包時IP包會大於MTU

在linux上抓包的時候,發現了很大的包,有的包達到了2800位元組,在區域網的時候甚至有10K位元組以上的包。這與我們所學的IP資料包不能超過MTU(一般是1500位元組)相違背。查資料得知,這是因為網絡卡有設定tcp-segmentation-offload。這是作業系統為了減輕負擔,提高處理效率的一種方法。

我們知道,用TCP/IP協議處理網路流量,要佔用大量伺服器資源。為了減輕伺服器的壓力,一種稱為TCP減負引擎(TCP Offload Engine :TOE)的技術應運而生。TCP減負引擎一般由軟硬兩部分元件構成,將傳統的TIP/IP協議棧的功能進行延伸,把網路資料流量的處理工作全部轉到網絡卡上的整合硬體中進行,伺服器只承擔TCP/IP控制資訊的處理任務。這種為伺服器減輕負擔的技術,得到了大多數廠商的肯定。 
  
普通網絡卡用軟體方式進行一系列TCP/IP相關操作,因此,會在三個方面增加伺服器的負擔,這三個方面是:資料複製、協議處理和中斷處理。 

參考:

如何設定tcp-segmentation-offload: