The low TCI bits carry the VLAN identifier.

highlighted = computed this step

The remaining bits name the VLAN

After priority and DEI, the remaining TCI bits carry the VLAN ID.

VLAN ID=42\text{VLAN ID}=42
VLAN IDThe tag bytes are split into TPID and TCI subfields.VLAN ID32 bits / 4 bytes0x8100002abyte 0byte 1byte 2byte 310000001000000000000000000101010tpid0x8100priorityvlan-id42priority: 0 dei: clear

Read VLAN forty two

The VLAN ID is 42. That value is recomputed from the low bits of TCI.

VID=42\text{VID}=42
VLAN IDThe tag bytes are split into TPID and TCI subfields.VLAN ID32 bits / 4 bytes0x8100002abyte 0byte 1byte 2byte 310000001000000000000000000101010tpid0x8100priorityvlan-id42priority: 0 dei: clear

The VLAN ID is not EtherType

The VLAN ID selects a tag value. The payload type is a separate field after the tag.

VID=42\text{VID}=42
VLAN IDThe tag bytes are split into TPID and TCI subfields.VLAN ID32 bits / 4 bytes0x8100002abyte 0byte 1byte 2byte 310000001000000000000000000101010tpid0x8100priorityvlan-id42priority: 0 dei: clear

Summary

The TCI word gives priority, DEI, and VLAN ID as separate exact fields.

TCI=0x002a\text{TCI}=0x002a
VLAN IDThe tag bytes are split into TPID and TCI subfields.VLAN ID32 bits / 4 bytes0x8100002abyte 0byte 1byte 2byte 310000001000000000000000000101010tpid0x8100priorityvlan-id42priority: 0 dei: clear