BpduBase

Namespace: inet

class BpduBase

Represents a BPDU (Bridge PDU) used by the STP and RSTP protocols, as defined in the 802.1D-1998 specification.

Usage diagram

Inheritance diagram

Extends

Name

Type

Description

FieldsChunk

class

(no description)

Known subclasses

Name

Type

Description

BpduCfg

class

(no description)

BpduTcn

class

(no description)

Fields

Name

Type

Description

id

int

mutable

bool

complete

bool

correct

bool

properlyRepresented

bool

chunkLength

b

rawBin

string[]

rawHex

string[]

regionTags

SharingRegionTagSet::TagBaseRegionTag[]

protocolIdentifier

BpduProtocolIdentifier

2 bytes, 0 for STP, 1 for RSTP (TODO use them)

protocolVersionIdentifier

BpduProtocolVersionIdentifier

1 byte, version ID, currently 0, // 3:MultipleSpanningTree

bpduType

BpduType

1 byte, 0 for Configuration BPDU, 1 for Topology Change Notification BPDU

Properties

Name

Value

Description

beforeChange

handleChange()

descriptor

readonly

existingClass

packetData

Source code

//
// Represents a BPDU (Bridge PDU) used by the STP and RSTP protocols,
// as defined in the 802.1D-1998 specification.
//
class BpduBase extends FieldsChunk
{
    BpduProtocolIdentifier protocolIdentifier = static_cast<BpduProtocolIdentifier>(-1);    // 2 bytes, 0 for STP, 1 for RSTP (TODO use them)
    BpduProtocolVersionIdentifier protocolVersionIdentifier = static_cast<BpduProtocolVersionIdentifier>(-1);    // 1 byte, version ID, currently 0, // 3:MultipleSpanningTree
    BpduType bpduType = static_cast<BpduType>(-1);    // 1 byte, 0 for Configuration BPDU, 1 for Topology Change Notification BPDU
}

File: src/inet/linklayer/ieee8021d/common/Ieee8021dBpdu.msg