[L2] BPDU Format

BPDU(Bridge Protocol Data Unit)는 STP가 사용하는 Data Frame 입니다.

BPDU를 이용해 Root Bridge를 계산하고 STP 계산을 통해 Loop를 방지합니다.

 

TCN BPDU는 특정 링크가 활성화되거나 다운되는등 네트워크에 변화(Topology Change)가 발생 시 이것을 Root Switch에 보고할 때 사용된다.

 

BPDU는 Configuration BPDU와 TCN BPDU 두 종류가 있습니다.

 

Configuration BPDU (35Byte)

Field Byte Text
Protocol ID 2 항상 0
Version 1 BPDU의 버전, STP : 0, RSTP : 1, MSTP : 2
Type 1 BPDU 종류. 0x00
Flag 1 Topology 변화 표시. 0x01 : TC, 0x80 TCA
Root Bridge ID 8 Root Switch ID
Path Cost 4 Root Switch까지의 경로 값
Bridge ID 8 Root Switch로 가는 경로상 직전 스위치의 ID
Port  ID 2 Port ID
Message Age 2 Root Switch까지의 스위치 수, IP의 TTL과 유사
Max Age  2 BPDU 정보를 저장하는 시간
Hello time 2 BPDU interval
Forward Delay 2 Listen, Learn에 머무르는 시간

 

 

TCN BPDU (4Byte)

Field Byte Text
Protocol ID 2 항상 0
Version 1 BPDU의 버전, STP : 0, RSTP : 1, MSTP : 2
Type 1 BPDU 종류. 0x00

 

Bridge ID, Root Bridge ID

Bridge ID, Root Bridge ID는 2byte의 Priority, 6byte의 MAC address로 이루어져 있습니다. 

Priority의 기본 값은 32768이며 16진수로는 8000입니다. 가장 큰 값은 65535, 가장 작은 값은 0입니다.

 

Path Cost 

Interface의 속도별로 IEEE에서 정해놓은 값.

Bandwidth Path Cost
10 Mbps 100
100 Mbps 19
1 Gbps 4
10 Gbps 2

 

Port ID

BPDU를 전송하는 Switch의 Priority와 Port ID로 구성됩니다. Port Priority의 기본 값은 128입니다.