BPDU — Bridge Protocol Data Unit, ya’ni Ethernet bridge va switchlar Spanning Tree topologiyasini hisoblash uchun almashadigan boshqaruv frame’idir. BPDU root bridge kimligi, rootgacha path cost, sender bridge va port ma’lumotini uzatadi. Switchlar shu qiymatlar orqali redundant linklardan loop-free daraxt tanlaydi.
Configuration BPDU
Klassik IEEE 802.1D STP’da root bridge configuration BPDU yaratadi, boshqa switchlar uni yangilangan cost va sender ma’lumoti bilan tarqatadi. Muhim maydonlar quyidagilar:
- Root ID — root bridge priority va MAC addressi;
- Root Path Cost — senderdan rootgacha umumiy cost;
- Bridge ID — BPDU yuborgan bridge identifikatori;
- Port ID — sender port priority va raqami;
- timerlar — message age, max age, hello time va forward delay.
BPDUlar destination multicast MAC manzilga yuboriladi va oddiy user traffic sifatida route qilinmaydi.
Superior BPDU
STP taqqoslashda eng kichik qiymat “yaxshi” hisoblanadi. Avval Root ID, keyin path cost, sender Bridge ID va Port ID solishtiriladi. Yaxshiroq tuple superior BPDU deyiladi.
Switch superior BPDU olganda root yoki port rolini qayta hisoblaydi. Bir xil costli yo‘llarda Bridge ID va Port ID deterministic tie-break beradi. Bu barcha switchlarning bir xil loop-free qarorga kelishiga yordam beradi.
TCN va RSTP
Klassik STP Topology Change Notification BPDU orqali forwarding topologiyasi o‘zgarganini rootga bildiradi. Root configuration BPDU’da topology change flag tarqatadi va switchlar MAC aging vaqtini qisqartiradi. Bu eski port mappinglar tezroq o‘chishiga yordam beradi.
RSTP BPDU formatini kengaytirib port role va proposal/agreement flaglarini uzatadi. Switchlar point-to-point linkda yangi yo‘lni handshake bilan tez forwardingga o‘tkazishi mumkin. RSTP bridge BPDU’ni faqat relay qilmay, har hello intervalda o‘zi yaratadi.
BPDU kelmay qolishi
Blocking port BPDU olish orqali boshqa yo‘l mavjudligini biladi. Bir yo‘nalishli link yoki filter sabab BPDU kelmay qolsa, klassik timer tugagach port forwardingga o‘tib loop yaratishi mumkin. Loop Guard bunday portni loop-inconsistent holatda ushlab turadi.
BPDU Filter noto‘g‘ri ishlatilsa STPni portda amalda ko‘r qiladi. U edge port va aniq platforma semantikasida ehtiyotkor qo‘llanadi. Uplinkda BPDUni filtrlash redundant topologiyada xavfli.
BPDU Guard va Root Guard
PortFast edge portda BPDU kutilmaydi. BPDU Guard shunday port BPDU qabul qilsa err-disable yoki blocked holatga o‘tkazadi. Bu foydalanuvchi switchining topologiyaga qo‘shilishini va accidental loopni cheklaydi.
Root Guard designated portdan superior BPDU kelganda portni root-inconsistent qiladi. Shu segmentdagi qurilma root bridge bo‘la olmaydi. U root bo‘lishi mumkin bo‘lmagan downstream linklarga qo‘llanadi.
VLAN va tunnel
PVST oilasida har VLAN alohida BPDU va spanning tree instance’iga ega bo‘lishi mumkin. Native VLAN mismatch BPDUlarning kutilmagan instance’da ko‘rinishiga olib keladi. MSTP VLANlarni instance’ga xaritalaydi va region parametrlari mos bo‘lishi kerak.
Layer 2 provider BPDUlarni tunnel qilishi, terminate qilishi yoki filterlashi mumkin. Customer spanning tree provider core’dan qanday ajratilishi xizmat dizaynida aniq belgilanadi.
Diagnostika
Packet capture BPDU root ID, cost, bridge ID va timerlarni ko‘rsatadi. Switch commandlari har port bo‘yicha received/sent BPDU va oxirgi topology change manbasini beradi. Kutilmagan superior BPDU qaysi portdan kelgani root o‘zgarishini topishga yordam beradi.
Bog‘liq tushunchalar
Spanning Tree Protocol, Root Bridge, Bridge ID, Root Guard, BPDU Guard, RSTP, Topology Change Notification