Inner Layer 3 Classification

Napatech Link™ Software Features

product_line_custom
Intel® PAC
Napatech SmartNIC
category
Feature Description

Inner layer 3 packets

Inner layer 3 packets are classified in the basic classes shown in this table.

Class Classification Conditions Length of Header (in bytes)
IPv4 The frame decoder recognizes an inner IPv4 packet if the value of the Version field of the IP header is 0x4, the value of the IHL field of the IP header is larger than or equal to 0x5, and one of these conditions is met:
  • The tunnel type is GRE_v0, and the GRE Protocol Type field is 0x0800.
  • The tunnel type is GTPv0-U or GTPv1-U, and the GTP Message Type field is 0xFF.
  • The tunnel type is IPinIP (IPv4-in-IPv4 or IPv4-in-IPv6) or EtherIP.
20, 24, 28, ..., 60 (fetched from the IHL field in the IPv4 header).
IPv6 The frame decoder recognizes an inner IPv6 packet if the value of the Version field of the IP header is 0x6, and one of these conditions is met:
  • The tunnel type is GRE_v0, and the GRE Protocol Type field is 0x86DD.
  • The tunnel type is GTPv0-U or GTPv1-U, and the GTP Message Type field is 0xFF.
  • The tunnel type is IPinIP (IPv6-in-IPv4 or IPv6-in-IPv6) or EtherIP.
40 plus optional next headers. The maximum length is approximately 300 bytes (from the packet start).
L3_Other The frame decoder recognizes an inner L3_Other packet if none of the above applies. 0

Inner layer 3 IPv4 fragment status

The inner layer 3 IPv4 fragment status is extracted from the IPv4 header as shown in this table.

Class Classification Conditions
none One of these conditions is met:
  • The packet is an IPv4 packet, Fragment offset is set to 0, and the More fragments flag is set to 0.
  • The packet is not an IPv4 packet.
first The packet is an IPv4 packet, Fragment offset is set to 0, and the More fragments flag is set to 1.
middle The packet is an IPv4 packet, Fragment offset is not set to 0, and the More fragments flag is set to 1.
last The packet is an IPv4 packet, Fragment offset is not set to 0, and the More fragments flag is set to 0.

Inner layer 3 IPv6 fragment status

The inner layer 3 IPv6 fragment status is extracted from the IPv6 fragment header as shown in this table.

Class Classification Conditions
none One of these conditions is met:
  • The packet is an IPv6 packet with fragment header, Fragment offset is set to 0, and the More fragments flag is set to 0.
  • The packet is an IPv6 packet, and the IPv6 fragment header is not present.
  • The packet is not an IPv6 packet.
first The packet is an IPv6 packet with fragment header, Fragment offset is set to 0, and the More fragments flag is set to 1.
middle The packet is an IPv6 packet with fragment header, Fragment offset is not set to 0, and the More fragments flag is set to 1.
last The packet is an IPv6 packet with fragment header, Fragment offset is not set to 0, and the More fragments flag is set to 0.