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.

Announcement

Collapse
No announcement yet.

Spanning Tree Protocol

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Spanning Tree Protocol

    Giao thức Spanning Tree (STP) – Hiểu và triển khai

    Trong một mạng chuyển mạch (switching), nếu tồn tại vòng lặp – nơi một gói tin quay lại chính thiết bị đã gửi nó – sẽ gây ra hiện tượng broadcast storm, MAC flapping, và lỗi định tuyến. Những vấn đề này có thể khiến toàn bộ mạng bị tê liệt. Vòng lặp xảy ra bất cứ khi nào có nhiều hơn một đường kết nối giữa các switch mà không có cơ chế ngăn chặn.
    STP là gì?

    Spanning Tree Protocol (STP) là một thuật toán được thiết kế để loại bỏ các vòng lặp trong mạng Layer 2 bằng cách tạo ra một cấu trúc logic dạng cây – gọi là Spanning Tree. Trong cây này:
    • một cầu gốc (root bridge) duy nhất.
    • Mỗi switch đều có duy nhất một đường dẫn tối ưu về cầu gốc.
    • Các đường dẫn dư thừa sẽ bị chặn để ngăn tạo vòng lặp vật lý.

    Cách STP hoạt động

    1. Bầu chọn Cầu Gốc (Root Bridge)

    STP sử dụng một giá trị gọi là Bridge ID (BID) để xác định switch nào sẽ làm cầu gốc. BID gồm:
    • 2 byte ưu tiên (priority) – mặc định là 32768.
    • 6 byte địa chỉ MAC.
    Switch có BID nhỏ nhất (ưu tiên thấp nhất, nếu bằng nhau thì MAC thấp nhất) sẽ được chọn làm cầu gốc.
    👉 Bạn có thể ép một switch trở thành cầu gốc bằng lệnh:




    spanning-tree vlan X root primary

    Hoặc chỉ định một switch dự phòng:



    spanning-tree vlan X root secondary

    2. Tính toán đường dẫn

    Mỗi switch sẽ tính toán chi phí đường dẫn (path cost) về cầu gốc qua các cổng của nó. Chi phí phụ thuộc vào băng thông của liên kết:
    10 Mbps 100
    100 Mbps 19
    1 Gbps 4
    10 Gbps 2
    • Cổng có chi phí nhỏ nhất về gốc sẽ được chọn làm cổng gốc (root port).
    • Cổng còn lại trên cùng phân đoạn LAN, nếu không phải root port, có thể được chọn là cổng được chỉ định (designated port).
    • Các cổng khác sẽ ở trạng thái chặn (blocked) để loại bỏ vòng lặp.

    3. Gửi và xử lý BPDU

    STP hoạt động bằng cách trao đổi Bridge Protocol Data Units (BPDU) giữa các switch qua multicast L2. Các cổng nối với thiết bị đầu cuối (host) không nhận BPDU nên không tham gia vào cây STP và có thể được cấu hình ở chế độ chuyển tiếp (PortFast).
    Các trạng thái STP

    Cổng trong STP sẽ chuyển qua các trạng thái sau trước khi có thể truyền dữ liệu:
    • Blocking: Chờ và không chuyển tiếp lưu lượng. Trạng thái ban đầu sau khi khởi động.
    • Listening: Lắng nghe BPDU, chưa học địa chỉ MAC.
    • Learning: Bắt đầu học địa chỉ MAC nhưng vẫn chưa truyền dữ liệu.
    • Forwarding: Cho phép truyền và nhận dữ liệu.
    • Disabled: Không sử dụng (do quản trị viên tắt cổng hoặc lỗi).
    👉 Thời gian chuyển trạng thái mặc định (theo bộ đếm thời gian STP):
    • Hello Time: 2 giây (gửi BPDU định kỳ).
    • Max Age: 20 giây (chờ BPDU trước khi vô hiệu hóa).
    • Forward Delay: 15 giây mỗi trạng thái (Listening và Learning).
    ==> Một cổng mới khởi động sẽ mất tối đa 30 giây để bắt đầu chuyển tiếp dữ liệu.
    Các loại cổng STP

    Mỗi switch có thể có các loại cổng sau:
    Cổng gốc (Root Port) Đường dẫn tốt nhất về cầu gốc. Mỗi switch có duy nhất một cổng gốc.
    Cổng được chỉ định (Designated Port) Một cổng trên mỗi phân đoạn mạng dùng để chuyển tiếp lưu lượng.
    Cổng thay thế (Alternate Port) Cổng bị chặn để dự phòng. Nếu cổng gốc thất bại, cổng này có thể được kích hoạt.
    Cầu gốc không có cổng gốc.

    Điều chỉnh hành vi STP

    Bạn có thể tùy chỉnh STP để kiểm soát đường dẫn được ưu tiên:
    Ưu tiên cổng


    interface Gig0/1 spanning-tree port-priority 0 interface Gig0/2 spanning-tree port-priority 240

    Cổng có ưu tiên thấp hơn sẽ được chọn làm đường dẫn chính.


    Tùy chỉnh chi phí cost


    interface Gig0/1 spanning-tree cost 10

    Lệnh giám sát và khắc phục sự cố STP

    show spanning-tree active Xem STP trên các interface hoạt động
    show spanning-tree detail Chi tiết trạng thái STP trên toàn bộ switch
    show spanning-tree vlan <id> Xem STP cho một VLAN cụ thể
    show spanning-tree interface <id> Trạng thái STP của một cổng
    show spanning-tree blockedports Liệt kê tất cả các cổng đang bị chặn

    Spanning Tree cho từng VLAN – PVST và Rapid PVST

    Các thiết bị Cisco hỗ trợ Per-VLAN Spanning Tree (PVST) – mỗi VLAN có một cây STP riêng biệt, cho phép cân bằng tải. Tuy nhiên, nếu có hàng trăm VLAN, việc chạy một phiên bản STP cho từng VLAN sẽ tốn nhiều tài nguyên.
    Rapid PVST là phiên bản cải tiến, tương thích ngược với PVST, giúp hội tụ nhanh (dưới 1 giây), so với 30–50 giây ở STP thường.
    Tổng kết

    Cầu gốc (Root Bridge) Trung tâm điều phối cây STP
    BPDU Gói tin kiểm soát trao đổi giữa các switch
    Cổng gốc (Root Port) Đường dẫn ngắn nhất về gốc
    Cổng được chỉ định Chuyển tiếp dữ liệu trong mỗi đoạn
    Cổng thay thế Chặn vòng lặp, dự phòng



    Đặng Quang Minh, CCIEx2#11897 (Enterprise Infrastructure, Wireless), DEVNET, CCSI#31417

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