共用方式為


在接收路徑中尋找封裝封包的傳輸標頭

在接收封包時, 使用一般路由封裝支援網路虛擬化的 NIC (NVGRE) 必須先判斷封包是否已封裝,如果是,則封裝的類型。

注意 在傳送路徑中,如果 NDIS_TCP_SEND_OFFLOADS_SUPPLEMENTAL_NET_BUFFER_LIST_INFO則會封裝封包。IsEncapsulatedPacketTRUE

在接收路徑中,NIC 必須檢查 IPv4 通道的通訊 協定號碼, (外部) 標頭或 IPv6 通道的 NextHeader 欄位, (外部) 標頭檢查通訊協定號碼來封裝封包。 您可以在 找到 https://www.iana.org/assignments/protocol-numbers/protocol-numbers.xml 指派的通訊協定號碼清單。

一旦封包判定為封裝封包,NIC 必須藉由剖析封裝封包的通訊協定,來判斷傳輸 (內部) IP 標頭的位移。

針對 NDIS 6.30 (Windows Server 2012) 和更新版本,僅支援 GRE IP 封裝。 因此,NIC 應該能夠根據公告的功能剖析下列專案:

如果 NIC 找到未知或不支援的封裝通訊協定,則必須將封包未變更傳遞至主機堆疊。

因此,在接收路徑上,迷你埠必須剖析傳輸 (內部) IP 標頭,以判斷 IP 版本,以及取得 TCP 或 UDP 標頭。 這是 NDIS 6.30 (Windows Server 2012) 和更新版本的新需求。