在 TCP 有效載荷處分割框架
支援標頭數據分割的NDIS微型埠網路介面卡必須支援針對TCP數據幀在上層協議標頭處進行分割。 不過,如果 TCP 標頭未包含任何 TCP 選項,NIC 應該在 TCP 負載開頭處分割框架。
如果產生的標頭緩衝區長度大於標頭大小上限,NIC 可能無法分割 TCP 框架。 如需瞭解在超過標頭大小上限時如何分割帧的詳細資訊,請參閱 分配標頭緩衝區。
NIC 也必須支援只使用時間戳選項來分割 TCP 標頭。 也就是說,timestamp 選項是唯一必要 TCP 選項。 否則,對於包含 TCP 選項的 TCP 標頭的支援是可選的。 如果框架的 TCP 標頭包含無法辨識的 TCP 選項,NIC 必須分割 TCP 標頭開頭的框架(也就是在上層通訊協定標頭中),否則不會分割框架。
附註 支援 IPv4 選項、IPv6 擴展標頭或 TCP 選項,基於標頭資料需求,表示 NIC 能夠辨識元素、判斷其長度、將其包含在標頭 MDL 中,並在框架中找到元素的結尾及下一個元素的開頭。
如需在上層通訊協定標頭開頭分割框架的詳細資訊,請參閱 在上層標頭開頭分割框架Layer-Protocol。
如果標頭數據分割提供者在 TCP 承載處分割框架,則指定的 NET_BUFFER_LIST 結構必須在 NblFlags 成員中設置 NDIS_NBL_FLAGS_IS_TCP 和 NDIS_NBL_FLAGS_SPLIT_AT_UPPER_LAYER_PROTOCOL_PAYLOAD 旗標。 如需設定標頭-資料拆分 NET_BUFFER_LIST 旗標的詳細資訊,請參閱 設定 NET_BUFFER_LIST 資訊。