Trunk protocol

By adding VLAN information to Ethernet frames on a trunk link, it is possible to create VLANs that span multiple switches. The following two trunk protocols are used to add VLAN information.

  • IEEE802.1Q(IEEE standard)
  • ISL(Cisco proprietary)

Let’s take a look at how IEEE802.1Q and ISL add VLAN information to the frame on the trunk link.

Cisco’s proprietary trunk protocol, ISL, is no longer used very often.


IEEE802.1Q is a protocol for adding information to identify VLANs on a trunk link.

Now, recall the Ethernet frame format again. The VLAN identification information according to IEEE802.1Q is inserted between the “source MAC address” and “type” of the frame. The inserted information consists of two bytes of TPID and two bytes of TCI, for a total of four bytes. Since four bytes of information are inserted into the frame, the value of the CRC will change. Instead of the existing CRC, the inserted TPID and TCI will be included in the CRC calculation.

Fig. IEEE802.1Q
Fig. IEEE802.1Q

Also, when leaving the trunk link, the TPID and TCI are removed, and the CRC must be recalculated anew at this time.

The TPID is a fixed value of 0x8100, which indicates that IEEE802.1Q VLAN information has been added to the frame. The actual VLAN number is contained in the 12 bits of the TCI, so a total of 4096 VLANs can be identified.

ISL(Inter Switch Link)

ISL (Inter Switch Link) is a Cisco proprietary protocol that adds VLAN identification information on the trunk link. 26 bytes of “ISL header” is added at the beginning of the frame, and 4 bytes of newly calculated CRC is added to the entire frame including the ISL header. In other words, a total of 30 bytes of information is added.

In ISL, when Ethernet frame leaves the trunk link, simply removed the ISL header and the new CRC. The CRC of the original frame is preserved, so there is no need to recalculate the CRC. ISL is proprietary to Cisco, so of course it can only be used with connections between Cisco devices.

Fig. Cisco ISL