S_Tag - 802.1ad Service VLAN Tag Type

pcapkit.protocols.link.s_tag.protocol contains S_Tag only, which implements the extractor for the 802.1ad Service VLAN Tag Type (S-Tag) [*], EtherType 0x88A8.

Its structure, and all of its parsing and construction, come from VLAN; this class adds only the tag’s own identity – name, alias, info_name, id() – and its registry index.

It has a package of its own, apart from C_Tag, since a package holds one protocol class, named after it, with only the framework bases in pcapkit.protocols.protocol exempt (#2529). The two tags are reached through different registry indices, 0x88A8 against 0x8100.

class pcapkit.protocols.link.s_tag.protocol.S_Tag(file=None, length=None, **kwargs)[source]

Bases: VLAN

This class implements 802.1ad Service VLAN Tag Type.

Note

802.1ad was incorporated into IEEE 802.1Q-2011, so the service tag is specified by 802.1Q. The 802.1ad name is kept because it is what the provider-bridging tag is universally called, and because it is the only thing distinguishing this class from C_Tag by name.

Added in version 1.5.0.

property name: Literal['802.1ad Service VLAN Tag Type']

Name of current protocol.

property alias: Literal['802.1ad']

Acronym of corresponding protocol.

property info_name: Literal['s_tag']

Key name of the info dict.

classmethod id()[source]

Index ID of the protocol.

Return type:

tuple[Literal['S_Tag'], Literal['VLAN']]

Returns:

Index ID of the protocol. VLAN is retained alongside the class’s own name so that selecting VLAN tags by that name matches the service tag as well as the customer tag.

classmethod __index__()[source]

Numeral registry index of the protocol.

Return type:

EtherType

Returns:

Numeral registry index of the protocol in IANA.

Footnotes