Xin chào ! Nếu đây là lần đầu tiên bạn đến với diễn đàn, xin vui lòng danh ra một phút bấm vào đây để đăng kí và tham gia thảo luận cùng VnPro.
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • BPDU – Mạch máu của hoạt động của cây Spanning Tree Protocol

    BPDU – Mạch máu của Spanning Tree Protocol


    Trong STP (Spanning Tree Protocol), BPDU (Bridge Protocol Data Unit) chính là “ngôn ngữ” để các switch nói chuyện với nhau, thống nhất ai sẽ làm Root Bridge và đường nào sẽ được dùng, đường nào sẽ chặn để tránh loop.
    Nếu coi STP như một hệ thống giao thông, thì BPDU chính là biển báo và tín hiệu giao thông – thiếu nó là loạn ngay.

    Theo mặc định, switch gửi BPDU mỗi 2 giây (Hello Time). Đây là nhịp “trái tim” của STP – nếu nhịp này ngừng đập, các switch khác sẽ cho rằng có sự cố và bắt đầu bầu chọn lại.
    1. Cấu trúc BPDU


    Mỗi BPDU là một frame chứa nhiều trường thông tin quan trọng:
    • Protocol ID – Xác định đây là gói của STP (chuẩn IEEE 802.1D).
    • Version – Phiên bản STP (ví dụ: 0 cho STP chuẩn, 2 cho RSTP).
    • Message Type – Loại BPDU:
      • Configuration BPDU (cấu hình)
      • Topology Change Notification BPDU (TCN)
    • Flags – Bit điều khiển, ví dụ TCA (Topology Change Acknowledgment) hay TC (Topology Change).
    • Root Bridge ID – ID của switch đang làm Root Bridge.
    • Root Path Cost – Chi phí đường đi từ switch gửi BPDU đến Root Bridge.
    • Sender Bridge ID – ID của switch đang gửi BPDU.
    • Port ID – Cổng gửi BPDU.
    • Message Age – Tuổi của BPDU (để tránh loop thông tin cũ).
    • Max Age – Thời gian tối đa BPDU được coi là hợp lệ.
    • Hello Time – Khoảng thời gian giữa các BPDU của Root.
    • Forward Delay – Thời gian chờ ở trạng thái Listening và Learning.

    2. Địa chỉ MAC đặc biệt của BPDU


    BPDU được gửi đến địa chỉ MAC multicast chuẩn 01-80-C2-00-00-00
    Địa chỉ này được thiết kế để chỉ các thiết bị Layer 2 xử lý, không bao giờ bị forward qua cổng trunk đến máy trạm.

    Ví dụ: Một switch gửi BPDU từ cổng Gi0/1 → MAC nguồn là của Gi0/1, MAC đích là 01-80-C2-00-00-00.
    3. Hai loại BPDU trong hoạt động STP
    1. Configuration BPDU – Mang thông tin về cấu trúc STP, được Root Bridge gửi định kỳ.
    2. Topology Change Notification BPDU (TCN) – Thông báo có thay đổi topology (thêm/bớt link, thêm switch mới…).

    4. Cơ chế trao đổi BPDU trong STP
    • Hoạt động bình thường:
      Switch liên tục nhận Configuration BPDU từ Root trên Root Port nhưng không gửi ngược lại về phía Root.
      Điều này đảm bảo thông tin cấu hình luôn chảy từ Root xuống các switch khác.
    • Khi topology thay đổi:
      Ví dụ, một switch mới được cắm vào hoặc một link bị down:
      1. Switch phát hiện thay đổi sẽ gửi TCN BPDU lên Root qua Root Port.
      2. Mỗi switch trên đường đi sẽ xác nhận (TCA) bằng cách set bit TCA trong Configuration BPDU gửi ngược về switch đã thông báo.
      3. Quá trình lặp lại đến khi TCN đến được Root.
      4. Root Bridge khi nhận TCN sẽ gửi Configuration BPDU với bit TC được set, phát tán thông tin này khắp mạng.
      5. Khi nhận TC BPDU, các switch sẽ rút ngắn thời gian giữ MAC trong bảng CAM (mặc định còn 15 giây) để thích ứng với topology mới.

    5. Vì sao BPDU quan trọng?
    • Nếu switch không nhận được BPDU từ Root trong thời gian Max Age (mặc định 20 giây), nó sẽ tự bầu lại Root, gây ra quá trình hội tụ cây STP mới.
    • BPDU là cơ chế phòng ngừa loop chủ động – mất BPDU hoặc cấu hình sai BPDU có thể gây bão broadcast Broadcast Storm.

    Ví dụ thực tế


    Giả sử mạng có 3 switch: SW1 (Root), SW2, SW3.
    • SW1 gửi BPDU Hello mỗi 2s xuống SW2 và SW3.
    • Một ngày đẹp trời, link SW1–SW2 bị đứt:
      • SW2 không nhận BPDU từ SW1 nữa → sau 20 giây Max Age → bắt đầu bầu lại Root.
      • Trong thời gian convergence, lưu lượng có thể bị gián đoạn.
    • Nếu BPDU Guard được bật ở các cổng access, bất kỳ BPDU nào xuất hiện ở đó sẽ làm cổng shutdown → bảo vệ STP khỏi tấn công BPDU spoofing.
    Attached Files
    Đặng Quang Minh, CCIE#11897 (Enterprise Infrastructure, Wireless, Automation, AI), CCSI#31417

    Email : dangquangminh@vnpro.org
    https://www.facebook.com/groups/vietprofessional/
Working...
X