1Overview
1.1Introduction
1.2Scope
2References
3Definitions
3.1Bridged Local Area Network
3.2Expedited traffic
3.3Group
3.4IEEE 802 Local Area Network (LAN)
4Abbreviations
5Conformance
5.1Required capabilities
5.2Optional capabilities
5.3Protocol Implementation Conformance Statement
5.4Recommendations
5.5MAC-specific bridging methods
6Support of the MAC Service
6.1Support of the MAC Service
6.2Preservation of the MAC Service
6.3Quality of Service maintenance
6.3.1Service availability
6.3.2Frame loss
6.3.3Frame misordering
6.3.4Frame duplication
6.3.5Frame transit delay
6.3.6Frame lifetime
6.3.7Undetected frame error rate
6.3.8Maximum Service Data Unit Size
6.3.9Frame priority
6.3.10Throughput
6.4Internal Sublayer Service provided within the MAC
6.4.1Service primitives
6.4.2MAC status parameters
6.4.3Point-to-Point MAC parameters
6.5Support of the Internal Sublayer Service by specif
6.5.1Support by IEEE Std 802.3 (CSMA/CD)
6.5.2Support by IEEE Std 802.5 (token-passing ring)
6.5.3Support by fibre distributed data interface (FDDI)
6.5.4Support by IEEE Std 802.11 (Wireless LANs)
6.6Filtering services in Bridged Local Area Networks
6.6.1Purpose(s) of filtering service provision
6.6.1.1Administrative control
6.6.1.2Throughput and end station load
6.6.2Goals of filtering service provision
6.6.3Users of filtering services
6.6.4Basis of service
6.6.5Categories of service
6.6.6Service configuration
6.6.7Service definition for Extended Filtering Services
6.6.7.1Dynamic registration and de-registration services
7Principles of Bridge operation
7.1Bridge operation
7.1.1Relay
7.1.2Filtering and relaying information
7.1.3Bridge management
7.2Bridge architecture
7.3Model of operation
7.4Port States and the active topology
7.5Frame reception
7.5.1Regenerating user priority
7.6Frame transmission
7.7The Forwarding Process
7.7.1Active topology enforcement
7.7.2Frame filtering
7.7.3Queuing frames
7.7.4Transmission selection
7.7.5Priority mapping
7.7.6FCS recalculation
7.8The Learning Process
7.9The Filtering Database
7.9.1Static Filtering Entries
7.9.2Dynamic Filtering Entries
7.9.3Group Registration Entries
7.9.4Default Group filtering behavior
7.9.5Querying the Filtering Database
7.9.6Permanent Database
7.10Spanning Tree Protocol Entity and GARP Entities
7.11Bridge management
7.12Addressing
7.12.1End stations
7.12.2Bridge Ports
7.12.3Spanning Tree Protocol Entities and GARP Entities
7.12.4Bridge Management Entities
7.12.5Unique identification of a bridge
7.12.6Reserved addresses
7.12.7Points of attachment and connectivity for Higher-L
8Spanning tree algorithm and protocol
9Encoding of bridge protocol data units
9.1Structure
9.1.1Transmission and representation of octets
9.1.2Components
9.2Encoding of parameter types
9.2.1Encoding of protocol identifiers
9.2.2Encoding of protocol version identifiers
9.2.3Encoding of BPDU types
9.2.4Encoding of flags
9.2.5Encoding of Bridge Identifiers
9.2.6Encoding of Root Path Cost
9.2.7Encoding of Port Identifiers
9.2.8Encoding of Timer Values
9.2.9Encoding of Port Role values
9.2.10Encoding of Length Values
9.3BPDU formats and parameters
9.3.1Configuration BPDUs
9.3.2Topology Change Notification BPDUs
9.3.3Rapid Spanning Tree BPDUs (RST BPDUs)
9.3.4Validation of received BPDUs
10GARP Multicast Registration Protocol (GMRP)
10.1Purpose
10.2Model of operation
10.2.1Propagation of Group Membership information
10.2.2Propagation of Group service requirement informati
10.2.3Source pruning
10.2.4Use of Group service requirement registration by e
10.3Definition of the GMRP Application
10.3.1Definition of GARP protocol elements
10.3.1.1Use of GIP Contexts by GMRP
10.3.1.2GMRP Application address
10.3.1.3Encoding of GMRP Attribute Types
10.3.1.4Encoding of GMRP Attribute Values
10.3.2Provision and support of Extended Filtering Servic
10.3.2.1End system registration and de-registration
10.3.2.2Registration and de-registration events
10.3.2.3Administrative controls
10.4Conformance to GMRP
10.4.1Conformance to GMRP in MAC Bridges
10.4.2Conformance to GMRP in end stations
11Example “C” code implementation of GMRP
12Generic Attribute Registration Protocol (GARP)
12.1GARP overview
12.2GARP architecture
12.2.1GARP Applications
12.2.2GID
12.2.2.1Declarations
12.2.2.2Registration
12.2.3GIP
12.2.4GARP Information Propagation Context
12.3Requirements to be met by GARP
12.4Requirements for interoperability between GARP Par
12.5Conformance to GARP Applications
12.6Protocol Operation
12.6.1Basic notions
12.6.2GARP Messages
12.6.3Applicant and Registrar
12.6.4Registrar behavior
12.6.5Applicant behavior
12.6.5.1Anxious Applicants
12.6.5.2Members and Observers
12.6.5.3Active and Passive Members
12.6.5.4Receiving a Leave
12.6.5.5Leaving
12.6.5.6Applicant State Summary
12.6.6The Leave All protocol component
12.6.7Applicant-Only Participants
12.6.8Simple-Applicant Participants
12.6.9Choice of Applicant-Only Participant or Simple-App
12.6.10Use of GARP in point-to-point LANs
12.7State machine descriptions
12.7.1Applicant state machine
12.7.2Registrar state machine
12.7.3Leave All state machine
12.7.4Combined Applicant and Registrar state machine
12.7.5Applicant Only GARP Participant
12.7.6Simple-Applicant Participant
12.8Administrative controls
12.8.1Registrar Administrative Control values
12.8.2Applicant Administrative Control values
12.9Procedures
12.9.1Discarding badly formed GARP PDUs
12.9.2Protocol parameters and timers
12.9.2.1jointimer
12.9.2.2leavetimer
12.9.2.3leavealltimer
12.9.3Protocol event definitions
12.9.3.1Initialize
12.9.3.2ReqJoin
12.9.3.3ReqLeave
12.9.3.4rJoinIn
12.9.3.5rJoinEmpty
12.9.3.612.9.3.6 rEmpty
12.9.3.7rLeaveIn
12.9.3.8rLeaveEmpty
12.9.3.9LeaveAll
12.9.3.10leavetimer!
12.9.3.11leavealltimer!
12.9.3.12transmitPDU!
12.9.4Action definitions
12.9.4.1-x-
12.9.4.2sJ[E, I], sJ[I]
12.9.4.3sE
12.9.4.4sLE
12.9.4.512.9.4.5 sLeaveAll
12.9.4.6Start leavetimer
12.9.4.7Stop leavetimer
12.9.4.8Start leavealltimer
12.9.4.9IndJoin
12.9.4.10IndLeave
12.9.4.11Failure to register
12.10Structure and encoding of GARP Protocol Data Units
12.10.1Structure
12.10.1.1Transmission and representation of octets
12.10.1.2Structure definition
12.10.2Encoding of GARP PDU parameters
12.10.2.1Encoding of Protocol Identifier
12.10.2.2Encoding of Attribute Type
12.10.2.3Encoding of Attribute Length
12.10.2.4Encoding of Attribute Event
12.10.2.5Encoding of LeaveAll Event
12.10.2.6Encoding of Attribute Value
12.10.2.7Encoding of End Mark
12.10.3Packing and parsing GARP PDUs
12.10.3.1Packing
12.10.3.2Parsing
12.10.3.3Discarding unrecognized information
12.11Timer values, granularity and relationships
12.11.1Timer values
12.11.2Timer resolution
12.11.3Timing relationships
12.12Interoperability considerations
13Example “C” code implementation of GARP
14Bridge management
14.1Management functions
14.1.1Configuration Management
14.1.2Fault Management
14.1.3Performance Management
14.1.4Security Management
14.1.5Accounting Management
14.2Managed objects
14.3Data types
14.4Bridge Management Entity
14.4.1Bridge Configuration
14.4.1.1Discover Bridge
14.4.1.1.1Purpose
14.4.1.1.2Inputs
14.4.1.1.3Outputs
14.4.1.2Read Bridge
14.4.1.2.1Purpose
14.4.1.2.2Inputs
14.4.1.2.3Outputs
14.4.1.3Set Bridge Name
14.4.1.3.1Purpose
14.4.1.3.2Inputs
14.4.1.3.3Outputs
14.4.1.4Reset Bridge
14.4.1.4.1Purpose
14.4.1.4.2Inputs
14.4.1.4.3Outputs
14.4.2Port Configuration
14.4.2.1Read Port
14.4.2.1.1Purpose
14.4.2.1.2Inputs
14.4.2.1.3Outputs
14.4.2.2Set port name
14.4.2.2.1Purpose
14.4.2.2.2Inputs
14.4.2.2.3Outputs
14.5MAC Entities
14.6Forwarding Process
14.6.1The Port Counters
14.6.1.1Read Forwarding Port Counters
14.6.1.1.1Purpose
14.6.1.1.2Inputs
14.6.1.1.3Outputs
14.6.2Priority Handling
14.6.2.1Read Port Default User Priority
14.6.2.1.1Purpose
14.6.2.1.2Inputs
14.6.2.1.3Outputs
14.6.2.2Set Port Default User Priority
14.6.2.2.1Purpose
14.6.2.2.2Inputs
14.6.2.2.3Outputs
14.6.2.3Read Port User Priority Regeneration Table
14.6.2.3.1Purpose
14.6.2.3.2Inputs
14.6.2.3.3Outputs
14.6.2.4Set Port User Priority Regeneration Table
14.6.2.4.1Purpose
14.6.2.4.2Inputs
14.6.2.4.3Outputs
14.6.3Traffic Class Table
14.6.3.1Read Port Traffic Class Table
14.6.3.1.1Purpose
14.6.3.1.2Inputs
14.6.3.1.3Outputs
14.6.3.2Set Port Traffic Class Table
14.6.3.2.1Purpose
14.6.3.2.2Inputs
14.6.3.2.3Outputs
14.6.3.3Read Outbound Access Priority Table
14.6.3.3.1Purpose
14.6.3.3.2Inputs
14.6.3.3.3Outputs
14.7Filtering Database
14.7.1The Filtering Database
14.7.1.1Read Filtering Database
14.7.1.1.1Purpose
14.7.1.1.2Inputs
14.7.1.1.3Outputs
14.7.1.2Set Filtering Database ageing time
14.7.1.2.1Purpose
14.7.1.2.2Inputs
14.7.1.2.3Outputs
14.7.2A Static Filtering Entry
14.7.3A Dynamic Filtering Entry
14.7.4A Group Registration Entry
14.7.5Permanent Database
14.7.5.1Read Permanent Database
14.7.5.1.1Purpose
14.7.5.1.2Inputs
14.7.5.1.3Outputs
14.7.6General Filtering Database operations
14.7.6.1Create Filtering Entry
14.7.6.1.1Purpose
14.7.6.1.2Inputs
14.7.6.1.3Outputs
14.7.6.2Delete Filtering Entry
14.7.6.2.1Purpose
14.7.6.2.2Inputs
14.7.6.2.3Outputs
14.7.6.3Read filtering entry
14.7.6.3.1Purpose
14.7.6.3.2Inputs
14.7.6.3.3Outputs
14.7.6.4Read Filtering Entry range
14.7.6.4.1Purpose
14.7.6.4.2Inputs
14.7.6.4.3Outputs
14.8Spanning Tree Protocol Entity
14.8.1The Protocol Entity
14.8.1.1Read Spanning Tree Protocol parameters
14.8.1.1.1Purpose
14.8.1.1.2Inputs
14.8.1.1.3Outputs
14.8.1.2Set Spanning Tree Protocol parameters
14.8.1.2.1Purpose
14.8.1.2.2Inputs
14.8.1.2.3Outputs
14.8.1.2.4Procedure
14.8.2Bridge Port
14.8.2.1Read Port Parameters
14.8.2.1.1Purpose
14.8.2.1.2Inputs
14.8.2.1.3Outputs
14.8.2.2Force port state
14.8.2.2.1Purpose
14.8.2.2.2Inputs
14.8.2.2.3Outputs
14.8.2.2.4Procedure
14.8.2.3Set Port Parameters
14.8.2.3.1Purpose
14.8.2.3.2Inputs
14.8.2.3.3Outputs
14.8.2.3.4Procedure
14.8.2.4Force BPDU Migration Check
14.8.2.4.1Purpose
14.8.2.4.2Inputs
14.8.2.4.3Outputs
14.8.2.4.4Procedure
14.9GARP Entities
14.9.1The GARP Timers object
14.9.1.1Read GARP Timers
14.9.1.1.1Purpose
14.9.1.1.2Inputs
14.9.1.1.3Outputs
14.9.1.2Set GARP Timers
14.9.1.2.1Purpose
14.9.1.2.2Inputs
14.9.1.2.3Outputs
14.9.2The GARP Attribute Type object
14.9.2.1Read GARP Applicant controls
14.9.2.1.1Purpose
14.9.2.1.2Inputs
14.9.2.1.3Outputs
14.9.2.2Set GARP Applicant controls
14.9.2.2.1Purpose
14.9.2.2.2Inputs
14.9.2.2.3Outputs
14.9.3The GARP State Machine object
14.9.3.1Read GARP State
14.9.3.1.1Purpose
14.9.3.1.2Inputs
14.9.3.1.3Outputs
14.10GMRP entities
14.10.1GMRP Configuration managed object
14.10.1.1Read GMRP Configuration
14.10.1.1.1Purpose
14.10.1.1.2Inputs
14.10.1.1.3Outputs
14.10.1.2Notify Group registration failure
14.10.1.2.1Purpose
14.10.1.2.2Inputs
14.10.1.2.3Outputs
14.10.1.3Configure Restricted_Group_Registration parameters
14.10.1.3.1Purpose
14.10.1.3.2Inputs
14.10.1.3.3Outputs
15Management protocol
16Bridge performance
16.1Guaranteed Port Filtering Rate
16.2Guaranteed Bridge Relaying Rate
17Rapid Spanning Tree Protocol (RSTP)
17.1Protocol design requirements
17.2Protocol support requirements
17.3RSTP overview
17.3.1Computation of the active topology
17.3.2Example topologies
17.4STP compatibility
17.5Spanning tree priority vectors
17.6Priority vector calculations
17.7Port Role assignments
17.8Communicating spanning tree information
17.9Changing spanning tree information
17.10Changing Port States
17.11Updating learned station location information
17.12RSTP and point-to-point links
17.13RSTP performance parameters
17.13.1Admin Edge Port
17.13.2Ageing Time
17.13.317.13.3 AutoEdge
17.13.4Force Protocol Version
17.13.5Bridge Forward Delay
17.13.6Bridge Hello Time
17.13.7Bridge Identifier Priority
17.13.8Bridge Max Age
17.13.9Migrate Time
17.13.10Port Identifier Priority
17.13.11PortPathCost
17.13.12Transmit Hold Count
17.14Performance parameter management
17.15Rapid Spanning Tree state machines
17.16Notational conventions used in state diagrams
17.17State machine timers
17.17.1edgeDelayWhile
17.17.2fdWhile
17.17.3helloWhen
17.17.4mdelayWhile
17.17.5rbWhile
17.17.6rcvdInfoWhile
17.17.7rrWhile
17.17.8tcWhile
17.18Per-Bridge variables
17.18.1BEGIN
17.18.2BridgeIdentifier
17.18.3BridgePriority
17.18.4BridgeTimes
17.18.5rootPortId
17.18.6rootPriority
17.18.7rootTimes
17.19Per-Port variables
17.19.1ageingTime
17.19.2agree
17.19.3agreed
17.19.4designatedPriority
17.19.5designatedTimes
17.19.6disputed
17.19.7fdbFlush
17.19.8forward
17.19.9forwarding
17.19.10infoIs
17.19.11learn
17.19.12learning
17.19.13mcheck
17.19.14msgPriority
17.19.15msgTimes
17.19.16newInfo
17.19.17operEdge
17.19.18portEnabled
17.19.19portId
17.19.20PortPathCost
17.19.21portPriority
17.19.22portTimes
17.19.23proposed
17.19.24proposing
17.19.25rcvdBPDU
17.19.26rcvdInfo
17.19.27rcvdMsg
17.19.28rcvdRSTP
17.19.29rcvdSTP
17.19.30rcvdTc
17.19.31rcvdTcAck
17.19.32rcvdTcn
17.19.33reRoot
17.19.34reselect
17.19.35role
17.19.36selected
17.19.37selectedRole
17.19.38sendRSTP
17.19.39sync
17.19.40synced
17.19.41tcAck
17.19.42tcProp
17.19.43tick
17.19.44txCount
17.19.45updtInfo
17.20State machine conditions and parameters
17.20.1AdminEdge
17.20.2AutoEdge
17.20.3allSynced
17.20.4EdgeDelay
17.20.5forwardDelay
17.20.6FwdDelay
17.20.7HelloTime
17.20.8MaxAge
17.20.9MigrateTime
17.20.10reRooted
17.20.11rstpVersion
17.20.12stpVersion
17.20.13TxHoldCount
17.21State machine procedures
17.21.1betterorsameinfo(newInfoIs)
17.21.2clearReselectTree()
17.21.3disableForwarding()
17.21.4disableLearning()
17.21.5enableForwarding()
17.21.6enableLearning()
17.21.7newTcWhile()
17.21.8rcvInfo()
17.21.9recordAgreement()
17.21.10recordDispute()
17.21.11recordProposal()
17.21.12recordPriority()
17.21.13recordTimes()
17.21.14setSyncTree()
17.21.15setReRootTree()
17.21.16setSelectedTree()
17.21.17setTcFlags()
17.21.18setTcPropTree()
17.21.19txConfig()
17.21.20txRstp()
17.21.21txTcn()
17.21.22updtBPDUVersion()
17.21.23updtRcvdInfoWhile()
17.21.24updtRoleDisabledTree()
17.21.25updtRolesTree()
17.22Port Timers state machine
17.23Port Receive state machine
17.24Port Protocol Migration state machine
17.25Bridge Detection state machine
17.26Port Transmit state machine
17.27Port Information state machine
17.28Port Role Selection state machine
17.29Port Role Transitions state machine
17.29.1Disabled Port states
17.29.2Root Port states
17.29.3Designated Port states
17.29.4Alternate and Backup Port states
17.30Port State Transition state machine
17.31Topology Change state machine
17.32RSTP performance requirements
18Bridge Detection state machine