Stripping 802.1q Tags on Receives — Intel
®
82575EB Gigabit Ethernet Controller
324632-003 Intel
®
82575EB Gigabit Ethernet Controller
Revision: 2.1 Software Developer’s Manual and EEPROM Guide
January 2011 261
10.2.2 Stripping 802.1q Tags on Receives
Software can instruct the 82575 to strip 802.1q VLAN tags from received packets. If the CTRL.VME bit
is set to 1b, and the incoming packet is an 802.1q VLAN packet (its Ethernet Type field matched the
VET register), then the 82575 strips the 4-byte VLAN tag from the packet, and stores the TCI in the
Special field of the receive descriptor.
The 82575 also sets the VP bit in the receive descriptor to indicate that the packet had a VLAN tag that
was stripped. If the CTRL.VME bit is not set, the 802.1Q packets can still be received if they pass the
receive filter. In this case, the VLAN tag is not stripped and the VP bit is not set. Refer to Table 84 for
more information regarding receive packet filtering.
10.3 802.1q VLAN Packet Filtering
VLAN filtering is enabled by setting the RCTL.VFE bit to 1b. If enabled, hardware compares the type
field of the incoming packet to a 16-bit field in the VLAN EtherType (VET) register. If the VLAN type field
in the incoming packet matches the VET register, the 802.1q VLAN packet is then compared against the
VLAN Filter Table Array for acceptance.
The Virtual LAN ID field indexes a 4096 bit vector. If the indexed bit in the vector is 1b, there is a Virtual
LAN match. Software can set the entire bit vector to 1b’s if the node does not implement 802.1q
filtering.
In summary, the 4096 bit vector is comprised of 128 32-bit registers. The VLAN Identifier (VID) field
consists of 12 bits. The upper 7 bits of this field are decoded to determine the 32-bit register in the
VLAN Filter Table Array to address and the lower 5 bits determine which of the 32 bits in the register to
evaluate for matching.
Two other bits in the Receive Control register (see Section 14.3.47), CFIEN and CFI, are also used in
conjunction with 802.1q VLAN filtering operations. CFIEN enables the comparison of the value of the
CFI bit in the 802.1q packet to the Receive Control register CFI bit as an acceptance criteria for the
packet.
Table 84 lists reception actions according to control bit settings.
Note: The VFE bit does not affect whether the VLAN tag is stripped. It only affects whether the
VLAN packet passes the receive filter.
A packet is defined as a VLAN/802.1q packet if its type field matches the VET.