RSTP ( Rapid Spanning Tree Protocol ) 802.1w (theo IEEE )
1 Giới thiệu
Chuẩn IEEE 802.1D Spanning Tree Protocol được thiết kế để giữ cho một hệ thống các Switch không bị Loop và tự động thích nghi trước những thay đổi của mạng. Một sự thay đổi cấu trúc liên kết thông thường phải mất 30 giây, với một cổng chuyển từ trạng thái Blocking sang trạng thái Forwarding mất hai lần khoảng thời gian của bộ đếm thời gianForward Delay. Khi công nghệ đã được cải thiện, 30 giây trở thành một khoảng thời gian dài không thể chịu đựng để chờ đợi cho một mạng hội tụ và thích nghi khi có 1 vấn đề xảy ra.
Các tiêu chuẩn IEEE 802.1w được phát triển để sử dụng khái niệm 802.1D với điểm chính là thực hiện kết quả hội tụ nhanh hơn nhiều. Điều này cũng được gọi là Rapid Spanning Tree Protocol (RSTP), trong đó xác định cách thức chuyển mạch phải tương tác với nhau để giữ cho các cấu trúc liên kết mạng tránh bị loop- một cách rất hiệu quả.
Như với 802.1d, chức năng cơ bản của RSTP có thể được áp dụng như một trường hợp một hoặc nhiều trường hợp. Điều này có thể được thực hiện bằng cách sử dụng RSTP là cơ chế cơ bản đối với Cisco-sở hữu độc quyền Per-VLAN Spanning Tree Protocol (PVST +). Sự kết hợp đó được gọi là Rapid PVST + (RPVST ).
2 Hoạt động của RSTP
RSTP hoạt động cũng gần như STP truyền thống ,nhưng RSTP đưa ra những vai trò của Port và trạng thái của Port khác với STP.Đồng thời RSTP tích hợp các tính năng UplinkFast, Backbonefast được tích hợp vào trong hoạt động của mình luôn.
2.1 Vai trò và chức năng của các Port trong RSTP
Chi tiết về Port Role của RSTP :
Role là một biến được gán cho một cổng nhất định. Root Port và Designated Port vẫn giữ hoạt động như cũ trong khi vai trò của Blocking Port được chia thành các Backup Port và Alternative Port. Các thuật toán Spanning Tree (STA) xác định vai trò của một cổng dựa trên đơn vị dữ liệu BPDU . Để đơn giản hóa vấn đề, điều để nhớ về một BPDU là luôn luôn có một phương pháp để so sánh với bất kỳ hai của chúng và quyết định xem là một trong 2cái nào sẽ là hữu ích hơn hơn khác. Điều này là dựa trên giá trị được lưu trữ trong các BPDU và đôi khi trên cổng mà chúng được nhận.
Root Port :
Các cổng tiếp nhận BPDU tốt nhất trên cầu là Root Port. Đây là cổng mà có đường đi (Root Patch Cost ) thấp nhất để đi đến Root Switch. Root Port sẽ được lựa chọn trên các Switch không phải Root Switch .Root Switch sẽ gủi BPDUs hữu ích hơn so với những switch khác gủi . Root Switch là switch duy nhất trên mạng mà không có một Root Port. Tất cả switch khác nhận BPDUs trên ít nhất một cổng.
Designated Port :
Cổng A được chỉ định nếu nó có thể gửi các BPDU tốt nhất trên phân đoạn mạng mà nó được kết nối cùng các switch khác. Trong một phân đoạn nhất định, chỉ có thể có một con đường về phía Root Switch. Nếu có hai-điều đó có nghĩa là có một vòng lặp trong mạng. Tất cả các swtich kết nối với nhau lắng nghe các BPDUs của nhau sau đó đồng Switch có thể gửi các BPDU tốt nhất là switch ưu tiên dành cho phân đoạn mạng này. Port trên Switch đó sẽ là Desginated Port.
Alternative và Backup Port :
Đây là hai cổng có vai trò tương ứng với các trạng thái Blocking của 802.1D.
Một cổng chặn được định nghĩa là không phải Root Port hoặc Designated Port
Một cổng nhận được một BPDU bị hữu ích hơn so với cái nó gửi ra trên phân đoạn mạng của nó. Hãy nhớ rằng một cổng phải nhận các gói tin BPDU để ở lại trạng thái Blocking . RSTP giới thiệu hai vai trò cho mục đích này.
Alternative Port nhận những gói tin BPDU hữu ích hơn từ switch khác là Port bị khóa .Như hình vẽ :
Backup Port thì nhận những gói tin BPDU tốt nhất từ chính nó :
Sự phân biệt này đã được thực hiện trong nội bộ bên trong 802.1d. Đây thực chất là làm thế nào chức năng Cisco UplinkFast hoạt động. Lý do là một Cổng thay thế cung cấp một con đường thay thế để các RootSwitch và do đó có thể thay thế các RootPort nếu nó không thành công. Tất nhiên, một cổng sao lưu dự phòng để cung cấp kết nối cùng phân khúc và không thể đảm bảo một kết nối thay thế cho các RootSwtich . Do đó, loại trừ khỏi nhóm uplink.
Kết quả là, RSTP tính toán các mô hình mạng cuối cùng cho Spanning Tree có sử dụng các tiêu chuẩn như 802.1D. Hoàn toàn không có thay đổi trong cách ưu tiên các switch và các Port. Tên gọi “Blocking” được sử dụng cho trạng thái Discarding do Cisco thực hiện trong CatOS bản 7.1 và sau đó hiển thị trạng thái Listening và Learning . Điều này cho phép thông tin nhiều hơn về một cổng IEEE hơn tiêu chuẩn yêu cầu. Tuy nhiên, tính năng mới là bây giờ có một sự khác biệt giữa vai trò của giao thức xác định cho một cổng và trạng thái hiện tại của nó. Ví dụ, bây giờ là hoàn toàn hợp lệ cho một cổng được ở trạng thái Designated và Blocking cùng một lúc. Trong khi điều này thường xảy ra trong thời gian rất ngắn thời gian, nó đơn giản chỉ có nghĩa là cổng này đang ở trong một trạng thái chuyển tiếp đối tới trạng thái Forwarding .
2.2 Sự thay đổi trong gói tin BPDU
Rất ít thay đổi về gói tin BPDU trong RSTP. Chỉ có thay đổi về hai bit cờ, thay đổi Topology (TC) và TC Xác Nhận (TCA), được định nghĩa trong 802.1D . Tuy nhiên, RSTP bây giờ sử dụng tất cả 6 bit
Một thay đổi quan trọng là các BPDU RSTP bây giờ là loại 2, phiên bản 2. Điều này có nghĩa là các switch chạy STP phải bỏ các gói BPDU mới này. Sự thay đổi này giúp cho các switch nhận biết rằng nó đang chạy RSTP hay STP.
BPDUs được gửi đi tại mỗi cổng switch tại Hello – timer, bất kể BPDUs được nhận được từ Root. Bằng cách này, bất kỳ chuyển đổi bất cứ nơi nào trong mạng có thể đóng một vai trò tích cực trong duy trì vận hành mô hình mạng . Switch cũng có thể mong đợi để nhận BPDUs thường xuyên từ láng giềng. Khi ba BPDUs được bỏ qua trong một hàng, láng giềng được coi là Down, và tất cả thông tin liên quan đến Port đấu với láng giềng ngay lập tức “Age out “. Điều này có nghĩa rằng một chuyển đổi có thể phát hiện một thất bại láng giềng trong ba lần khoảng thời gian Hello-timer =6s thay vì phải đợi đến 20 s (Max Age Timer )của STP.
Bởi vì phân biệt BPDU của RSTP với BPDUs của STP 802.1D , nó có thể cùng tồn tại với thiết bị chuyển mạch vẫn còn sử dụng 802.1D . Mỗi Port nỗ lực để hoạt động theo STP BPDU được nhận. Ví dụ, khi một BPDU 802.1d (phiên bản 0) được nhận vào một cổng, cổng đó bắt đầu hoạt động theo các quy tắc 802.1D.
Tuy nhiên, mỗi cổng có một biện pháp mà khóa giao thức trong sử dụng, trong trường hợp từ cả hai BPDUs 802.1d và RSTP được nhận trong một khoảng thời gian ngắn. Điều này có thể xảy ra nếu các thiết bị chuyển mạch trong một mạng được được chuyển đổi từ các loại hình STP với nhau. Thay vì “flapping” hoặc “toggling” các loại STP trong một di chuyển, switch nắm giữ các loại giao thức trong thời gian một thời gian di chuyển chậm trễ. Sau khi bộ đếm thời gian này hết hạn, cổng là sẽ có thể thay đổi giao thức nếu cần thiết.
6 Cấu hình và tinh chỉnh Spanning Tree
Chạy Spanning Tree :
Mặc định trên switch của Cisco, chạy pVST + nên không cần cấu hình cho Spanning Tree nhưng cũng có thể chỉnh sang RSTP hoặc MST .
Câu lệnh :
Switch (config)#spanning-tree vlan-id : mở chế độ spanning tree trên từng vlan.
switch (config)#spanning –tree mode [rstp || pvst || mst || rapid -pvst]
Hiệu chỉnh các thông số & tính toán của Spanning Tree :
STP Root Bridge :
Là giá trị dùng để bình chọn Root Switch –gồm 2 byte Priority và 6 byte MAC.
Khi switch mới mua về , chưa cấu hình gì thì tất cả Priority bằng nhau nên switch sẽ so sánh giá trị MAC của Supervisor để bình chọn Root Switch .Thông thường switch đời cũ sẽ có MAC nhỏ và làm Root Switch vì vậy ta cần cấu hình Priority cho các switch để đảm bảo quá trình tính toàn STP tối ưu.
Switch (config)#spanning-tree vlan vlan-list priority bridge priority
Trong đó bridge priority nhận giá trị là bội số của 4096 vì mặc định switch Cisco chạy Spanning tree per Vlan .Nên Bridge Id dùng 16 bit trong đó có 4 bit chỉ số priority và 12 bit vlan-id để phân biệt cây Spanning Tree trên từng Vlan. Đây gọi là extend –system –ID .
Mặc định đã được switch Cisco chạy –nhưng ta vẫn có thể cấu hình tắt hoặc mở tính năng này .
Switch (config)# [no] spanning-tree extend system-id
Câu lệnh chỉnh Priority trong pVST +
Switch (config)#spanning-tree vlan vlan-list priority bridge priority
Trong đó, giá trị bridge priority mặc định là 32768 . Có thể gán giá trị từ 0 – 65 535
Nếu là pVST thì sau khi gán giá trị Priority , Bridge ID sẽ được cộng thêm giá trị của Vlan-id.
Ví dụ: khi bạn nhập giá trị Priority của Spanning tree cho Vlan 1 là 4096 thì khi đó Bridge-ID của switch sẽ là 4096 +1 =4097
Vlan-list : chỉ số vlan bạn chạn Spanning tree hoặc list các vlan. VD : chạy Spanning tree cho Vlan 1 , Vlan 5 –Vlan 100 ta có thể nhập .
Switch (config )#spanning-tree vlan 1,5-100 priority 4096
Khi muốn cho 1 switch làm Root Switch – ta có thể chọn cho switch đó giá trị Priority nhỏ nhất trong các switch có trong hệ thống .Ngoài ra, có 1 cách để cho switch đó làm Root switch là dùng câu lệnh :
Switch(config)#spanning-tree vlan-id root primary .
Đây là một câu lệnh Macro ,khi câu lệnh được thực hiện thì switch sẽ đưa giá trị Priority của nó xuống 24576 .Và sau đó, cứ mỗi lần ta đánh câu lệnh thì giá trị Priority sẽ lần lượt xuống giá trị thấp hơn một mức Giá trị này sẽ giảm đến khi 4096 nó sẽ không giảm xuống 0 mà sẽ có hiện tượng bị tràn (overload) và nhận giá trị 4096 .
Khi đã có Root switch, ta muốn có thêm 1 switch làm dự phòng, đề phòng khi root switch hư, nó sẽ lên làm root switch thì ta có câu lệnh Secondary
Switch(config)#spanning-tree vlan-id root secondary
Đây là câu lệnh đặc biệt .Khi ta dùng câu lệnh này, switch sẽ đưa giá trị Priority của nó về giá trị
28672 và đứng yên ở đó cho dù có switch khác trong hệ thống có priority thấp hơn.Câu lệnh này chỉ có giá trị 1 lần khi thực hiện.Ta có lập đi lập lại thì vẫn giữ nguyên 1 giá tri 28762.
Câu lệnh xem thông tin về Root Switch và Bridge ID
Switch (config)# show spanning-tree [vlan-id]
Trong tính toán Spanning-tree , việc quan trọng nhất là chọn và cấu hình cho RootSwitch.
Sau khi đã chọn ra được RootSwitch . Ta có thể hiệu chỉnh đường đi và các trạng thái của Port bằng tay cho tối ưu.Bốn thông số STP dùng để tính toán :
Root Bridge ID
Root Patch Cost
Sender Bridge ID
Sender Port ID
Trong đó, muốn hiệu chỉnh Root Bridge ID thì ta dùng Priority như ở trên. Bây giờ ta có thể hiệu chỉnh 3 thông số còn lại để điều khiển STP theo những mục đích riêng của ta.
2.3 Hiệu chỉnh Root Patch Cost :
Khi gói tin BPDU tới 1 cổng của Switch , giá trị Cost của cổng nhận BPDU sẽ được thêm vào trường Root Patch Cost trong gói tin BPDU.Khi thay đổi giá trị Patch Cost, ta cần phải tính toán kỹ và tính theo chiều – “khi BPDU đi vào thì cộng đi ra thì không” để tránh nhầm lẫn giữa các Port .Chỉnh Patch Cost 1 Port có thể ảnh hưởng tới nhiều đường và toàn bộ quá trình tính toán của STP –vì vậy ta nên chỉnh Patch Cost trên các Port Alternative để tránh ảnh hưởng tới Root Port.
Câu lệnh tinh chỉnh Patch Cost :
Switch (config)#spanning-tree vlan {vlan-id} cost {cost}
Nếu có chỉ rõ vlan thì giá trị cost của cổng tương ứng với Vlan đó, còn nếu không chỉ rõ vlan thì giá trị Cost sẽ tương ứng trên toàn bộ các Vlan .
Câu lệnh Show Cost của 1 cổng trong tiến trình STP:
Switch# show spanning-tree interface {cổng}
II.6.2 Hiệu chỉnh giá trị Port ID
Giá trị ID cổng switch sử dụng là một số 16-bit: 8 bit cho các ưu tiên cổng và 8 bit cho các số cổng. Các ưu tiên là một cổng giá trị 0-255 và mặc định là 128 cho tất cả các cổng. Số cổng có thể là 0-255 và đại diện thực tế của cổng vật lý. Port số bắt đầu bằng 1 tại cổng 0 / 1 và tăng trên mỗi mô-đun. (Các con số có thể không được liên tục vì mỗi môn được chỉ định một giá trị cụ thể ).
Port ID thường là một số cố định, chẳng hạn như là một port Switch 3560-48 Port. Số cổng STP chỉ đơn giản là số lượng đại diện từ 1 đến 48.
Tuy nhiên, nó không phải là dễ dàng tìm thấy số cổng STP trong Switch nhiều Port và nhiều Modul. Chú ý Port GigabitEthernet 3 / 16 còn được gọi là cổng 144
Ví dụ:
Switch# show spanning-tree interface gigabitEthernet 3/16
Vlan Role Sts Cost Prio.Nbr Type
—————- —- — ——— ——– ——————————-
VLAN0010 Desg FWD 4 128.144 Edge P2p
VLAN0100 Desg FWD 4 128.144 Edge P2p
VLAN0200 Desg FWD 4 128.144 Edge P2p
Rõ ràng, số cổng một cổng chuyển đổi được cố định bởi vì nó chỉ dựa trên vị trí phần cứng của nó hoặc chỉ mục. Các ID cổng, tuy nhiên, có thể được sửa đổi để ảnh hưởng đến một quyết định STP bằng cách sử dụng cổng ưu tiên. Bạn có thể cấu hình ưu tiên cổng với lệnh này giao diện cấu hình:
Switch(config_if)#spanning-tree vlan {vlan_list} port-priority {priority}
Bạn có thể sửa đổi các ưu tiên cổng cho một hay nhiều VLAN bằng cách sử dụng các tham số VLAN. Các VLAN con số này được cho là danh sách-vlan, một danh sách các giá trị duy nhất hoặc các vùng của các giá trị cách nhau bằng dấu phẩy. Nếu không, các cổng phải được đặt ưu tiên cho các cổng như một toàn thể (tất cả các hoạt động VLAN). Giá trị của cổng ưu tiên có thể là 0-255 và mặc định là 128. Một cổng giá trị ưu tiên thấp hơn cho thấy một nhiều hơn ưa thích con đường về phía cầu Root.
Ví dụ, bạn có thể sử dụng dãy lệnh sau đây để thay đổi các ưu tiên cổng
GigabitEthernet 3 / 16 từ 128 (mặc định) đến 64 cho VLAN 10 và 100:
2.4 Một số câu lệnh xem thông tin về trạng thái của STP:
Switch#show spanning-treeàxem thông tin tất cả về STP
Switch#show spanning-tree detailàxem thông tin tất cả về STP +chi tiết về Port
Switch#show spanning-tree vlan-id summaryàxem toàn bộ các Port ở các trạng thái của STP
Switch#show spanning-tree vlan –id rootàxem thông tin RootPort, RootBridgeID, RootPatchCost .
Switch#show spanning-tree vlan –id bridge ->xem thông tin về Bridge và bộ timer cho switch
Switch#show spanning-tree UplinkFast xem thông tin về Uplink và Backbone
Switch#show spanning-tree UplinkFast [max-update-ratepkts-per-second]
àHiệu chỉnh thông số cho UplinkFast
Switch#show spanning-tree Backbonefast
III.3 Sự hội tụ của RSTP
Sự hội tụ của STP trong mạng là quá trình mà mất tất cả các thiết bị chuyển mạch từ một trạng thái độc lập (mỗi switch nghĩ rằng nó phải là gốc STP) cho một trong những tính đồng nhất, trong đó từng switch cây Spanning Tree. Hội tụ là một quá trình hai giai đoạn:
Ø Một Root switch phải là con switch được “lựa chọn” , và tất cả các thiết bị switch phải biết về nó.
Ø Tình trạng của mỗi cổng chuyển đổi trong lĩnh vực STP phải được đưa từ một trạng thái Blocking để trạng thái thích hợp để ngăn chặn vòng.
Hội tụ thông thường phải mất thời gian bởi vì thông điệp được truyền từ switch tới switch . Các 802.1D STP truyền thống cũng yêu cầu hết thời hạn một vài giờ trước khi cổng chuyển đổi có thể an toàn được phép để chuyển tiếp dữ liệu.
RSTP có một cách tiếp cận khác nhau khi switch cần quyết định làm thế nào để tham gia vào mô hình mạng. Khi chuyển đổi một lần đầu tiên tham gia mô hình mạng (có lẽ nó chỉ chạy lên) hoặc đã phát hiện một thất bại trong các cấu trúc liên kết hiện có, RSTP đòi hỏi điều đó làm cơ sở quyết định chuyển tiếp của nó vào loại cổng. Vì thế, RSTP đưa ra các định nghĩa cho loại Port (Port Type )
Edge Port——-Một cổng vào “biên” của mạng, nơi chỉ có một máy chủ kết nối.
Theo truyền thống, điều này đã được xác định bằng cách bật tính năng PortFast STP. RSTP giữ PortFast khái niệm cho quen. Theo định nghĩa, các cổng không có thể hình thành một vòng lặp như nó kết nối với một máy chủ, vì vậy nó có thể được đặt ngay lập tức ở trạng thái chuyển tiếp. Tuy nhiên, nếu một BPDU được nhận vào một Edge Port – lập tức cổng đó sẽ mất trạng thái Edge Port.
Root port——-Các cổng đó có chi phí tốt nhất để đến gốc của cây STP. Chỉ có một Root Port có thể được lựa chọn và hoạt động bất kỳ lúc nào, mặc dù con đường thay thế cho Root có thể tồn tại thông qua các cổng khác. Nếu con đường thay thế được phát hiện, những cổng được xác định là cảng gốc thay thế và ngay lập tức có thể được đặt trong tình trạng “ Forwarding “ khi các cổng gốc hiện thời không thành công.
Point-to-point———Bất kỳ cổng kết nối tới cổng switch khác và trở thành một Designated Port . Một cái bắt tay nhanh chóng với sự láng giềng hơn là đợi một khoảng thời gian rồi sau đó mới quyết định chuyển trạn thái của cổng. BPDUs được trao đổi qua lại dưới hình thức đề nghị và một thỏa thuận. Một chuyển đổi đề xuất (proposes message )rằng các cổng của nó trở thành một Designated Port, nếu chuyển đổi khác đồng ý, nó trả lời với một thông báo thỏa thuận (agree message).
Ø Cổng Point-to-point tự động được xác định theo phương thức song công .Đôi cổng song công được coi là điểm tới điểm bởi vì chỉ có hai thiết bị chuyển mạch có thể có mặt vào liên kết. STP hội tụ có thể xảy ra nhanh chóng trên một liên kết điểm-điểm thông qua RSTP bắt tay tin nhắn.
Ø Cổng bán song công , mặt khác, được coi là một phương tiện chia sẻ với
nhiều hơn hai thiết bị chuyển mạch hiện nay. Nó không phải là cổng điểm-điểm. STP hội tụ trên một cổng bán song công phải xảy ra giữa một số kết nối trực tiếp
thiết bị chuyển mạch. Do đó, các truyền thống hội tụ theo phong cách 802.1d phải được sử dụng. Điều này kết quả là phải mất một khoảng thời gian trì hoãn cho 1 Port từ trạng thái “shared” được sữa chửa và chuyển sang Listenning và Learning.
Ø Thật dễ dàng để xem cách hai thiết bị chuyển mạch có thể nhanh chóng hội tụ về một gốc rễ và trong đó sẽ có một Designated Port sau khi trao đổi BPDUs. Điều gì về một mạng lớn hơn ??? nơi mà BPDUs 802.1D bình thường sẽ phải được chuyển tiếp từ Switch to Switch ?
Ø RSTP xử lý sự hội tụ đầy đủ như STP của mạng như là một sự tuyên truyền của “bắt tay” hơn là liên kết point-to-point. Khi Switch cần đưa ra quyết định về STP, “bắt tay” được thực hiện với láng giềng gần nhất. Nếu thành công, trình tự “bắt tay” được chuyển đến các switch tiếp theo và tiếp theo là một làn sóng ngày càng mở rộng hướng tới các cạnh của mạng.
Ø Trong mỗi dãy bắt tay, một chuyển đổi phải có biện pháp để hoàn toàn đảm bảo rằng nó không giới thiệu một vòng lặp chuyển tiếp trước khi bắt tay hướng ra ngoài. Điều này được thực hiện thông qua một quá trình đồng bộ hóa.
III.4 Đồng bộ hóa
Để tham gia vào quá trình RSTP hội tụ, một switch phải quyết định trạng thái của mỗi cổng của nó. Nonedge –Port bắt đầu bằng trạng thái “Discarding”. Sau khi BPDUs được trao đổi giữa các switch và của láng giềng, Rootswitch có thể được xác định. Nếu một cổng nhận được một BPDU tốt hơn từ một người láng giềng, Port trở thành Root Port.
Đối với mỗi cổng nonedge, Switch sẽ trao đổi gói tin “ proposal-agreement “ để quyết định trạng thái mỗi đường link. Mỗi Switch sẽ xem như Port của nó đóng vai trò Designated Port cho phân đoạn mạng đó , và quảng bá gói tin “Proposal” nằm trong BPDU tới láng giềng của nó.
Khi một switch nhận gói tin “ Proposal “trên 1 Port , những hành động của Switch có thể xảy ra :
1. Nếu đề nghị của người gửi có một BPDU cấp trên, việc chuyển đổi tại bản thân switch nhận ra rằng người gửi phải phải là Designated Switch (có các cổng là Designated port) và có cổng riêng của nó phải trở thành Root Port mới.
2. Trước khi đồng ý switch đồng ý với bất cứ điều gì, nó phải đồng bộ hóa tự với mô hình mạng.
3. Tất cả các nonedge Port ngay lập tức được chuyển vào trạng thái Discarding để tránh xuất hiện vòng lặp.
4. Một thông báo thỏa thuận (một BPDU cấu hình) được gửi trả lại cho người gửi, chỉ ra rằng switch đồng ý với sự lựa chọn cổng mới được chỉ định là Designated Port. Điều này nói cho người gửi rằng switch đang trong quá trình đồng bộ hóa bản thân.
5. Cổng gốc ngay lập tức được chuyển sang trạng thái Forwarding. Các cổng của người gửi cũng ngay lập tức có thể bắt đầu chuyển tiếp.
6. Đối với mỗi cổng nonedge hiện đang trong tình trạng Discarding , một thông báo đề nghị được gửi tới láng giềng tương ứng.
7. Một thông báo thỏa thuận được mong đợ và nhận được từ một láng giềng trên một cổng nonedge.
8. Cổng nonedge ngay lập tức được chuyển sang trạng thái Forwarding.
·Chú ý rằng sự hội tụ RSTP bắt đầu với một switch gửi tin nhắn đề nghị. Những người nhận đề xuất phải đồng bộ hóa bản thân bằng cách có hiệu quả cô lập mình khỏi phần còn lại mô hình mạng. Tất cả các cổng nonedge bị chặn cho đến khi một tin nhắn đề nghị có thể được gửi đi, là nguyên nhân gây ra cho láng giềng gần nhất đồng bộ hóa bản thân mình. Điều này tạo ra một “làn sóng” di chuyển của Switch đồng bộ hóa, mà có thể nhanh chóng quyết định để bắt đầu chuyển tiếp vào các liên kết của họ chỉ khi các láng giềng của họ đồng ý. Hình minh họa trên cho thấy làn sóng đồng bộ hóa đi qua một mạng lưới ở ba khoảng thời gian kế tiếp. Cô lập các thiết bị chuyển mạch dọc theo làn sóng đi trong mô hình vốn đã ngăn cản hiện tượng Loop.
·Quá trình hội tụ toàn bộ xảy ra nhanh chóng, với tốc độ của BPDU truyền, mà không có sử dụng bất kỳ bộ timer nào. Tuy nhiên, một cổng chỉ định sẽ gửi tin nhắn đề nghị có thể không nhận một thông báo thỏa thuận trả lời. Giả sử rằng các switch lân cận không hiểu hoặc RSTP có một vấn đề trả lời. Việc chuyển đổi gửi sau đó phải trở thành quá thận trọng và phải bắt đầu hoạt động theo nguyên tắc của 802.1D quy tắc cổng phải được chuyển qua Listerning-Learning-Forwarding.( sử dụng Forward delay timer =15s ).
· Nghe
· Đọc ngữ âm
Quá trình đồng bộ hóa Của RSTP trong toàn Mạng.
III.5 Sự thay đổi mô hình mạng trong RSTP
·Khi một chuyển đổi 802.1D phát hiện một thay đổi trạng thái cổng (có thể Up hoặc down), nó báo cho Root Bridge bằng cách gửi thông báo thay đổi cấu trúc liên kết (TCN) BPDUs. Root Switch lần lượt phải thông báo thay đổi cấu trúc liên kết bằng cách gửi ra một thông báo TCN được chuyển tiếp đến tất cả các switch tại các miền STP.
·RSTP phát hiện một cấu trúc liên kết thay đổi duy nhất khi một nonedge chuyển tiếp cổng để trạng thái Forwarding. Điều này có vẻ kỳ lạ bởi vì một trạng thái của đường link không được sử dụng như một sự thay đổi. RSTP sử dụng tất cả các phương pháp của nó để nhanh chóng ngăn cản hiện tượng Loop. Do đó, thay đổi cấu trúc liên kết được phát hiện chỉ để bảng MAC của switch có thể được cập nhật khi một máy ở sai port và chuyển sang 1 port khác.
·Khi một sự thay đổi cấu trúc liên kết được phát hiện, một chuyển đổi phải tuyên truyền tin tức về sự thay đổi để switch khác trong mạng để có thể sửa các bảng MAC của họ . Quá trình này cũng tương tự như hội tụ và cơ chế đồng bộ hóa; thay đổi cấu trúc liên kết (TC) thông điệp tuyên truyền thông qua mạng trong một làn sóng ngày càng mở rộng.
·BPDUs, với thiết lập bit TC của họ, được gửi ra tất cả các Port nonedge. Điều này được thực hiện cho đến khi các TC khi bộ đếm thời gian hết hạn, sau hai khoảng thời gian Hello.Thông báo này cho switch láng giềng của liên kết mới và thay đổi cấu trúc liên kết. Ngoài ra, tất cả các địa chỉ MAC được kết hợp với các nonedge Designated Port được xóa khỏi bảng(CAM) . Điều này làm cho các địa chỉ phải được học lại sau khi thay đổi, trong trường hợp máy tính bây giờ xuất hiện trên một link khác nhau. Tất cả các thiết bị chuyển mạch lân cận tiếp nhận các tin nhắn TC cũng phải tuôn ra các địa chỉ MAC học trên tất cả các cổng ngoại trừ một trong đó nhận được thông báo TC. Những thiết bị chuyển mạch sau đó phải gửi TC tin nhắn ra Port nonedge designated , và cứ tiếp tục như vậy.
III.6 Cấu hình RSTP
Theo mặc định , switch sẽ chạy pVST + (Spanning tree per Vlan ) sử dụng spanning-tree truyền thống 802.1D .Do đó, RSTP không thể sử dụng cho đến có một chế độ Spanning tree khác được chạy như RPVST + hoặc MST .
Những thay đổi cấu hình chỉ liên quan đến RSTP ảnh hưởng đến cổng hoặc kiểu liên kết. Các loại liên kết được sử dụng để xác định cách chuyển đổi một thương lượng thông tin cấu trúc liên kết với láng giềng của nó.
Để cấu hình một cổng như là một cổng edge RSTP, sử dụng câu lệnh sau đây:
Switch(config_if)#spanning-tree portfast
Theo mặc định, RSTP tự động quyết định rằng một cổng là một liên kết điểm-điểm nếu nó được hoạt động trong toàn chế độ toàn song công. Các cổng kết nối với switch khác thường toàn song công vì chỉ có hai thiết bị chuyển mạch vào liên kết. Tuy nhiên, bạn có thể ghi đè lên việc xác định tự động, nếu cần thiết. Ví dụ, một cổng kết nối đến switch khác có thể là một trong những hoạt động ở bán song công, vì lý do nào đó. Để ép cổng để hoạt động như một liên kết point-to-point, sử dụng cấu hình giao diện sau :
Switch(config_if)# spanning –tree link-type point-to-point
1 Giới thiệu
Chuẩn IEEE 802.1D Spanning Tree Protocol được thiết kế để giữ cho một hệ thống các Switch không bị Loop và tự động thích nghi trước những thay đổi của mạng. Một sự thay đổi cấu trúc liên kết thông thường phải mất 30 giây, với một cổng chuyển từ trạng thái Blocking sang trạng thái Forwarding mất hai lần khoảng thời gian của bộ đếm thời gianForward Delay. Khi công nghệ đã được cải thiện, 30 giây trở thành một khoảng thời gian dài không thể chịu đựng để chờ đợi cho một mạng hội tụ và thích nghi khi có 1 vấn đề xảy ra.
Các tiêu chuẩn IEEE 802.1w được phát triển để sử dụng khái niệm 802.1D với điểm chính là thực hiện kết quả hội tụ nhanh hơn nhiều. Điều này cũng được gọi là Rapid Spanning Tree Protocol (RSTP), trong đó xác định cách thức chuyển mạch phải tương tác với nhau để giữ cho các cấu trúc liên kết mạng tránh bị loop- một cách rất hiệu quả.
Như với 802.1d, chức năng cơ bản của RSTP có thể được áp dụng như một trường hợp một hoặc nhiều trường hợp. Điều này có thể được thực hiện bằng cách sử dụng RSTP là cơ chế cơ bản đối với Cisco-sở hữu độc quyền Per-VLAN Spanning Tree Protocol (PVST +). Sự kết hợp đó được gọi là Rapid PVST + (RPVST ).
2 Hoạt động của RSTP
RSTP hoạt động cũng gần như STP truyền thống ,nhưng RSTP đưa ra những vai trò của Port và trạng thái của Port khác với STP.Đồng thời RSTP tích hợp các tính năng UplinkFast, Backbonefast được tích hợp vào trong hoạt động của mình luôn.
2.1 Vai trò và chức năng của các Port trong RSTP
Chi tiết về Port Role của RSTP :
Role là một biến được gán cho một cổng nhất định. Root Port và Designated Port vẫn giữ hoạt động như cũ trong khi vai trò của Blocking Port được chia thành các Backup Port và Alternative Port. Các thuật toán Spanning Tree (STA) xác định vai trò của một cổng dựa trên đơn vị dữ liệu BPDU . Để đơn giản hóa vấn đề, điều để nhớ về một BPDU là luôn luôn có một phương pháp để so sánh với bất kỳ hai của chúng và quyết định xem là một trong 2cái nào sẽ là hữu ích hơn hơn khác. Điều này là dựa trên giá trị được lưu trữ trong các BPDU và đôi khi trên cổng mà chúng được nhận.
Root Port :
Các cổng tiếp nhận BPDU tốt nhất trên cầu là Root Port. Đây là cổng mà có đường đi (Root Patch Cost ) thấp nhất để đi đến Root Switch. Root Port sẽ được lựa chọn trên các Switch không phải Root Switch .Root Switch sẽ gủi BPDUs hữu ích hơn so với những switch khác gủi . Root Switch là switch duy nhất trên mạng mà không có một Root Port. Tất cả switch khác nhận BPDUs trên ít nhất một cổng.
Designated Port :
Cổng A được chỉ định nếu nó có thể gửi các BPDU tốt nhất trên phân đoạn mạng mà nó được kết nối cùng các switch khác. Trong một phân đoạn nhất định, chỉ có thể có một con đường về phía Root Switch. Nếu có hai-điều đó có nghĩa là có một vòng lặp trong mạng. Tất cả các swtich kết nối với nhau lắng nghe các BPDUs của nhau sau đó đồng Switch có thể gửi các BPDU tốt nhất là switch ưu tiên dành cho phân đoạn mạng này. Port trên Switch đó sẽ là Desginated Port.
Alternative và Backup Port :
Đây là hai cổng có vai trò tương ứng với các trạng thái Blocking của 802.1D.
Một cổng chặn được định nghĩa là không phải Root Port hoặc Designated Port
Một cổng nhận được một BPDU bị hữu ích hơn so với cái nó gửi ra trên phân đoạn mạng của nó. Hãy nhớ rằng một cổng phải nhận các gói tin BPDU để ở lại trạng thái Blocking . RSTP giới thiệu hai vai trò cho mục đích này.
Alternative Port nhận những gói tin BPDU hữu ích hơn từ switch khác là Port bị khóa .Như hình vẽ :
Sự phân biệt này đã được thực hiện trong nội bộ bên trong 802.1d. Đây thực chất là làm thế nào chức năng Cisco UplinkFast hoạt động. Lý do là một Cổng thay thế cung cấp một con đường thay thế để các RootSwitch và do đó có thể thay thế các RootPort nếu nó không thành công. Tất nhiên, một cổng sao lưu dự phòng để cung cấp kết nối cùng phân khúc và không thể đảm bảo một kết nối thay thế cho các RootSwtich . Do đó, loại trừ khỏi nhóm uplink.
Kết quả là, RSTP tính toán các mô hình mạng cuối cùng cho Spanning Tree có sử dụng các tiêu chuẩn như 802.1D. Hoàn toàn không có thay đổi trong cách ưu tiên các switch và các Port. Tên gọi “Blocking” được sử dụng cho trạng thái Discarding do Cisco thực hiện trong CatOS bản 7.1 và sau đó hiển thị trạng thái Listening và Learning . Điều này cho phép thông tin nhiều hơn về một cổng IEEE hơn tiêu chuẩn yêu cầu. Tuy nhiên, tính năng mới là bây giờ có một sự khác biệt giữa vai trò của giao thức xác định cho một cổng và trạng thái hiện tại của nó. Ví dụ, bây giờ là hoàn toàn hợp lệ cho một cổng được ở trạng thái Designated và Blocking cùng một lúc. Trong khi điều này thường xảy ra trong thời gian rất ngắn thời gian, nó đơn giản chỉ có nghĩa là cổng này đang ở trong một trạng thái chuyển tiếp đối tới trạng thái Forwarding .
2.2 Sự thay đổi trong gói tin BPDU
Rất ít thay đổi về gói tin BPDU trong RSTP. Chỉ có thay đổi về hai bit cờ, thay đổi Topology (TC) và TC Xác Nhận (TCA), được định nghĩa trong 802.1D . Tuy nhiên, RSTP bây giờ sử dụng tất cả 6 bit
Một thay đổi quan trọng là các BPDU RSTP bây giờ là loại 2, phiên bản 2. Điều này có nghĩa là các switch chạy STP phải bỏ các gói BPDU mới này. Sự thay đổi này giúp cho các switch nhận biết rằng nó đang chạy RSTP hay STP.
BPDUs được gửi đi tại mỗi cổng switch tại Hello – timer, bất kể BPDUs được nhận được từ Root. Bằng cách này, bất kỳ chuyển đổi bất cứ nơi nào trong mạng có thể đóng một vai trò tích cực trong duy trì vận hành mô hình mạng . Switch cũng có thể mong đợi để nhận BPDUs thường xuyên từ láng giềng. Khi ba BPDUs được bỏ qua trong một hàng, láng giềng được coi là Down, và tất cả thông tin liên quan đến Port đấu với láng giềng ngay lập tức “Age out “. Điều này có nghĩa rằng một chuyển đổi có thể phát hiện một thất bại láng giềng trong ba lần khoảng thời gian Hello-timer =6s thay vì phải đợi đến 20 s (Max Age Timer )của STP.
Bởi vì phân biệt BPDU của RSTP với BPDUs của STP 802.1D , nó có thể cùng tồn tại với thiết bị chuyển mạch vẫn còn sử dụng 802.1D . Mỗi Port nỗ lực để hoạt động theo STP BPDU được nhận. Ví dụ, khi một BPDU 802.1d (phiên bản 0) được nhận vào một cổng, cổng đó bắt đầu hoạt động theo các quy tắc 802.1D.
Tuy nhiên, mỗi cổng có một biện pháp mà khóa giao thức trong sử dụng, trong trường hợp từ cả hai BPDUs 802.1d và RSTP được nhận trong một khoảng thời gian ngắn. Điều này có thể xảy ra nếu các thiết bị chuyển mạch trong một mạng được được chuyển đổi từ các loại hình STP với nhau. Thay vì “flapping” hoặc “toggling” các loại STP trong một di chuyển, switch nắm giữ các loại giao thức trong thời gian một thời gian di chuyển chậm trễ. Sau khi bộ đếm thời gian này hết hạn, cổng là sẽ có thể thay đổi giao thức nếu cần thiết.
6 Cấu hình và tinh chỉnh Spanning Tree
Chạy Spanning Tree :
Mặc định trên switch của Cisco, chạy pVST + nên không cần cấu hình cho Spanning Tree nhưng cũng có thể chỉnh sang RSTP hoặc MST .
Câu lệnh :
Switch (config)#spanning-tree vlan-id : mở chế độ spanning tree trên từng vlan.
switch (config)#spanning –tree mode [rstp || pvst || mst || rapid -pvst]
Hiệu chỉnh các thông số & tính toán của Spanning Tree :
STP Root Bridge :
Là giá trị dùng để bình chọn Root Switch –gồm 2 byte Priority và 6 byte MAC.
Khi switch mới mua về , chưa cấu hình gì thì tất cả Priority bằng nhau nên switch sẽ so sánh giá trị MAC của Supervisor để bình chọn Root Switch .Thông thường switch đời cũ sẽ có MAC nhỏ và làm Root Switch vì vậy ta cần cấu hình Priority cho các switch để đảm bảo quá trình tính toàn STP tối ưu.
Switch (config)#spanning-tree vlan vlan-list priority bridge priority
Trong đó bridge priority nhận giá trị là bội số của 4096 vì mặc định switch Cisco chạy Spanning tree per Vlan .Nên Bridge Id dùng 16 bit trong đó có 4 bit chỉ số priority và 12 bit vlan-id để phân biệt cây Spanning Tree trên từng Vlan. Đây gọi là extend –system –ID .
Mặc định đã được switch Cisco chạy –nhưng ta vẫn có thể cấu hình tắt hoặc mở tính năng này .
Switch (config)# [no] spanning-tree extend system-id
Câu lệnh chỉnh Priority trong pVST +
Switch (config)#spanning-tree vlan vlan-list priority bridge priority
Trong đó, giá trị bridge priority mặc định là 32768 . Có thể gán giá trị từ 0 – 65 535
Nếu là pVST thì sau khi gán giá trị Priority , Bridge ID sẽ được cộng thêm giá trị của Vlan-id.
Ví dụ: khi bạn nhập giá trị Priority của Spanning tree cho Vlan 1 là 4096 thì khi đó Bridge-ID của switch sẽ là 4096 +1 =4097
Vlan-list : chỉ số vlan bạn chạn Spanning tree hoặc list các vlan. VD : chạy Spanning tree cho Vlan 1 , Vlan 5 –Vlan 100 ta có thể nhập .
Switch (config )#spanning-tree vlan 1,5-100 priority 4096
Khi muốn cho 1 switch làm Root Switch – ta có thể chọn cho switch đó giá trị Priority nhỏ nhất trong các switch có trong hệ thống .Ngoài ra, có 1 cách để cho switch đó làm Root switch là dùng câu lệnh :
Switch(config)#spanning-tree vlan-id root primary .
Đây là một câu lệnh Macro ,khi câu lệnh được thực hiện thì switch sẽ đưa giá trị Priority của nó xuống 24576 .Và sau đó, cứ mỗi lần ta đánh câu lệnh thì giá trị Priority sẽ lần lượt xuống giá trị thấp hơn một mức Giá trị này sẽ giảm đến khi 4096 nó sẽ không giảm xuống 0 mà sẽ có hiện tượng bị tràn (overload) và nhận giá trị 4096 .
Khi đã có Root switch, ta muốn có thêm 1 switch làm dự phòng, đề phòng khi root switch hư, nó sẽ lên làm root switch thì ta có câu lệnh Secondary
Switch(config)#spanning-tree vlan-id root secondary
Đây là câu lệnh đặc biệt .Khi ta dùng câu lệnh này, switch sẽ đưa giá trị Priority của nó về giá trị
28672 và đứng yên ở đó cho dù có switch khác trong hệ thống có priority thấp hơn.Câu lệnh này chỉ có giá trị 1 lần khi thực hiện.Ta có lập đi lập lại thì vẫn giữ nguyên 1 giá tri 28762.
Câu lệnh xem thông tin về Root Switch và Bridge ID
Switch (config)# show spanning-tree [vlan-id]
Trong tính toán Spanning-tree , việc quan trọng nhất là chọn và cấu hình cho RootSwitch.
Sau khi đã chọn ra được RootSwitch . Ta có thể hiệu chỉnh đường đi và các trạng thái của Port bằng tay cho tối ưu.Bốn thông số STP dùng để tính toán :
Root Bridge ID
Root Patch Cost
Sender Bridge ID
Sender Port ID
Trong đó, muốn hiệu chỉnh Root Bridge ID thì ta dùng Priority như ở trên. Bây giờ ta có thể hiệu chỉnh 3 thông số còn lại để điều khiển STP theo những mục đích riêng của ta.
2.3 Hiệu chỉnh Root Patch Cost :
Khi gói tin BPDU tới 1 cổng của Switch , giá trị Cost của cổng nhận BPDU sẽ được thêm vào trường Root Patch Cost trong gói tin BPDU.Khi thay đổi giá trị Patch Cost, ta cần phải tính toán kỹ và tính theo chiều – “khi BPDU đi vào thì cộng đi ra thì không” để tránh nhầm lẫn giữa các Port .Chỉnh Patch Cost 1 Port có thể ảnh hưởng tới nhiều đường và toàn bộ quá trình tính toán của STP –vì vậy ta nên chỉnh Patch Cost trên các Port Alternative để tránh ảnh hưởng tới Root Port.
Câu lệnh tinh chỉnh Patch Cost :
Switch (config)#spanning-tree vlan {vlan-id} cost {cost}
Nếu có chỉ rõ vlan thì giá trị cost của cổng tương ứng với Vlan đó, còn nếu không chỉ rõ vlan thì giá trị Cost sẽ tương ứng trên toàn bộ các Vlan .
Câu lệnh Show Cost của 1 cổng trong tiến trình STP:
Switch# show spanning-tree interface {cổng}
II.6.2 Hiệu chỉnh giá trị Port ID
Giá trị ID cổng switch sử dụng là một số 16-bit: 8 bit cho các ưu tiên cổng và 8 bit cho các số cổng. Các ưu tiên là một cổng giá trị 0-255 và mặc định là 128 cho tất cả các cổng. Số cổng có thể là 0-255 và đại diện thực tế của cổng vật lý. Port số bắt đầu bằng 1 tại cổng 0 / 1 và tăng trên mỗi mô-đun. (Các con số có thể không được liên tục vì mỗi môn được chỉ định một giá trị cụ thể ).
Port ID thường là một số cố định, chẳng hạn như là một port Switch 3560-48 Port. Số cổng STP chỉ đơn giản là số lượng đại diện từ 1 đến 48.
Tuy nhiên, nó không phải là dễ dàng tìm thấy số cổng STP trong Switch nhiều Port và nhiều Modul. Chú ý Port GigabitEthernet 3 / 16 còn được gọi là cổng 144
Ví dụ:
Switch# show spanning-tree interface gigabitEthernet 3/16
Vlan Role Sts Cost Prio.Nbr Type
—————- —- — ——— ——– ——————————-
VLAN0010 Desg FWD 4 128.144 Edge P2p
VLAN0100 Desg FWD 4 128.144 Edge P2p
VLAN0200 Desg FWD 4 128.144 Edge P2p
Rõ ràng, số cổng một cổng chuyển đổi được cố định bởi vì nó chỉ dựa trên vị trí phần cứng của nó hoặc chỉ mục. Các ID cổng, tuy nhiên, có thể được sửa đổi để ảnh hưởng đến một quyết định STP bằng cách sử dụng cổng ưu tiên. Bạn có thể cấu hình ưu tiên cổng với lệnh này giao diện cấu hình:
Switch(config_if)#spanning-tree vlan {vlan_list} port-priority {priority}
Bạn có thể sửa đổi các ưu tiên cổng cho một hay nhiều VLAN bằng cách sử dụng các tham số VLAN. Các VLAN con số này được cho là danh sách-vlan, một danh sách các giá trị duy nhất hoặc các vùng của các giá trị cách nhau bằng dấu phẩy. Nếu không, các cổng phải được đặt ưu tiên cho các cổng như một toàn thể (tất cả các hoạt động VLAN). Giá trị của cổng ưu tiên có thể là 0-255 và mặc định là 128. Một cổng giá trị ưu tiên thấp hơn cho thấy một nhiều hơn ưa thích con đường về phía cầu Root.
Ví dụ, bạn có thể sử dụng dãy lệnh sau đây để thay đổi các ưu tiên cổng
GigabitEthernet 3 / 16 từ 128 (mặc định) đến 64 cho VLAN 10 và 100:
2.4 Một số câu lệnh xem thông tin về trạng thái của STP:
Switch#show spanning-treeàxem thông tin tất cả về STP
Switch#show spanning-tree detailàxem thông tin tất cả về STP +chi tiết về Port
Switch#show spanning-tree vlan-id summaryàxem toàn bộ các Port ở các trạng thái của STP
Switch#show spanning-tree vlan –id rootàxem thông tin RootPort, RootBridgeID, RootPatchCost .
Switch#show spanning-tree vlan –id bridge ->xem thông tin về Bridge và bộ timer cho switch
Switch#show spanning-tree UplinkFast xem thông tin về Uplink và Backbone
Switch#show spanning-tree UplinkFast [max-update-ratepkts-per-second]
àHiệu chỉnh thông số cho UplinkFast
Switch#show spanning-tree Backbonefast
III.3 Sự hội tụ của RSTP
Sự hội tụ của STP trong mạng là quá trình mà mất tất cả các thiết bị chuyển mạch từ một trạng thái độc lập (mỗi switch nghĩ rằng nó phải là gốc STP) cho một trong những tính đồng nhất, trong đó từng switch cây Spanning Tree. Hội tụ là một quá trình hai giai đoạn:
Ø Một Root switch phải là con switch được “lựa chọn” , và tất cả các thiết bị switch phải biết về nó.
Ø Tình trạng của mỗi cổng chuyển đổi trong lĩnh vực STP phải được đưa từ một trạng thái Blocking để trạng thái thích hợp để ngăn chặn vòng.
Hội tụ thông thường phải mất thời gian bởi vì thông điệp được truyền từ switch tới switch . Các 802.1D STP truyền thống cũng yêu cầu hết thời hạn một vài giờ trước khi cổng chuyển đổi có thể an toàn được phép để chuyển tiếp dữ liệu.
RSTP có một cách tiếp cận khác nhau khi switch cần quyết định làm thế nào để tham gia vào mô hình mạng. Khi chuyển đổi một lần đầu tiên tham gia mô hình mạng (có lẽ nó chỉ chạy lên) hoặc đã phát hiện một thất bại trong các cấu trúc liên kết hiện có, RSTP đòi hỏi điều đó làm cơ sở quyết định chuyển tiếp của nó vào loại cổng. Vì thế, RSTP đưa ra các định nghĩa cho loại Port (Port Type )
Edge Port——-Một cổng vào “biên” của mạng, nơi chỉ có một máy chủ kết nối.
Theo truyền thống, điều này đã được xác định bằng cách bật tính năng PortFast STP. RSTP giữ PortFast khái niệm cho quen. Theo định nghĩa, các cổng không có thể hình thành một vòng lặp như nó kết nối với một máy chủ, vì vậy nó có thể được đặt ngay lập tức ở trạng thái chuyển tiếp. Tuy nhiên, nếu một BPDU được nhận vào một Edge Port – lập tức cổng đó sẽ mất trạng thái Edge Port.
Root port——-Các cổng đó có chi phí tốt nhất để đến gốc của cây STP. Chỉ có một Root Port có thể được lựa chọn và hoạt động bất kỳ lúc nào, mặc dù con đường thay thế cho Root có thể tồn tại thông qua các cổng khác. Nếu con đường thay thế được phát hiện, những cổng được xác định là cảng gốc thay thế và ngay lập tức có thể được đặt trong tình trạng “ Forwarding “ khi các cổng gốc hiện thời không thành công.
Point-to-point———Bất kỳ cổng kết nối tới cổng switch khác và trở thành một Designated Port . Một cái bắt tay nhanh chóng với sự láng giềng hơn là đợi một khoảng thời gian rồi sau đó mới quyết định chuyển trạn thái của cổng. BPDUs được trao đổi qua lại dưới hình thức đề nghị và một thỏa thuận. Một chuyển đổi đề xuất (proposes message )rằng các cổng của nó trở thành một Designated Port, nếu chuyển đổi khác đồng ý, nó trả lời với một thông báo thỏa thuận (agree message).
Ø Cổng Point-to-point tự động được xác định theo phương thức song công .Đôi cổng song công được coi là điểm tới điểm bởi vì chỉ có hai thiết bị chuyển mạch có thể có mặt vào liên kết. STP hội tụ có thể xảy ra nhanh chóng trên một liên kết điểm-điểm thông qua RSTP bắt tay tin nhắn.
Ø Cổng bán song công , mặt khác, được coi là một phương tiện chia sẻ với
nhiều hơn hai thiết bị chuyển mạch hiện nay. Nó không phải là cổng điểm-điểm. STP hội tụ trên một cổng bán song công phải xảy ra giữa một số kết nối trực tiếp
thiết bị chuyển mạch. Do đó, các truyền thống hội tụ theo phong cách 802.1d phải được sử dụng. Điều này kết quả là phải mất một khoảng thời gian trì hoãn cho 1 Port từ trạng thái “shared” được sữa chửa và chuyển sang Listenning và Learning.
Ø Thật dễ dàng để xem cách hai thiết bị chuyển mạch có thể nhanh chóng hội tụ về một gốc rễ và trong đó sẽ có một Designated Port sau khi trao đổi BPDUs. Điều gì về một mạng lớn hơn ??? nơi mà BPDUs 802.1D bình thường sẽ phải được chuyển tiếp từ Switch to Switch ?
Ø RSTP xử lý sự hội tụ đầy đủ như STP của mạng như là một sự tuyên truyền của “bắt tay” hơn là liên kết point-to-point. Khi Switch cần đưa ra quyết định về STP, “bắt tay” được thực hiện với láng giềng gần nhất. Nếu thành công, trình tự “bắt tay” được chuyển đến các switch tiếp theo và tiếp theo là một làn sóng ngày càng mở rộng hướng tới các cạnh của mạng.
Ø Trong mỗi dãy bắt tay, một chuyển đổi phải có biện pháp để hoàn toàn đảm bảo rằng nó không giới thiệu một vòng lặp chuyển tiếp trước khi bắt tay hướng ra ngoài. Điều này được thực hiện thông qua một quá trình đồng bộ hóa.
III.4 Đồng bộ hóa
Để tham gia vào quá trình RSTP hội tụ, một switch phải quyết định trạng thái của mỗi cổng của nó. Nonedge –Port bắt đầu bằng trạng thái “Discarding”. Sau khi BPDUs được trao đổi giữa các switch và của láng giềng, Rootswitch có thể được xác định. Nếu một cổng nhận được một BPDU tốt hơn từ một người láng giềng, Port trở thành Root Port.
Đối với mỗi cổng nonedge, Switch sẽ trao đổi gói tin “ proposal-agreement “ để quyết định trạng thái mỗi đường link. Mỗi Switch sẽ xem như Port của nó đóng vai trò Designated Port cho phân đoạn mạng đó , và quảng bá gói tin “Proposal” nằm trong BPDU tới láng giềng của nó.
Khi một switch nhận gói tin “ Proposal “trên 1 Port , những hành động của Switch có thể xảy ra :
1. Nếu đề nghị của người gửi có một BPDU cấp trên, việc chuyển đổi tại bản thân switch nhận ra rằng người gửi phải phải là Designated Switch (có các cổng là Designated port) và có cổng riêng của nó phải trở thành Root Port mới.
2. Trước khi đồng ý switch đồng ý với bất cứ điều gì, nó phải đồng bộ hóa tự với mô hình mạng.
3. Tất cả các nonedge Port ngay lập tức được chuyển vào trạng thái Discarding để tránh xuất hiện vòng lặp.
4. Một thông báo thỏa thuận (một BPDU cấu hình) được gửi trả lại cho người gửi, chỉ ra rằng switch đồng ý với sự lựa chọn cổng mới được chỉ định là Designated Port. Điều này nói cho người gửi rằng switch đang trong quá trình đồng bộ hóa bản thân.
5. Cổng gốc ngay lập tức được chuyển sang trạng thái Forwarding. Các cổng của người gửi cũng ngay lập tức có thể bắt đầu chuyển tiếp.
6. Đối với mỗi cổng nonedge hiện đang trong tình trạng Discarding , một thông báo đề nghị được gửi tới láng giềng tương ứng.
7. Một thông báo thỏa thuận được mong đợ và nhận được từ một láng giềng trên một cổng nonedge.
8. Cổng nonedge ngay lập tức được chuyển sang trạng thái Forwarding.
·Chú ý rằng sự hội tụ RSTP bắt đầu với một switch gửi tin nhắn đề nghị. Những người nhận đề xuất phải đồng bộ hóa bản thân bằng cách có hiệu quả cô lập mình khỏi phần còn lại mô hình mạng. Tất cả các cổng nonedge bị chặn cho đến khi một tin nhắn đề nghị có thể được gửi đi, là nguyên nhân gây ra cho láng giềng gần nhất đồng bộ hóa bản thân mình. Điều này tạo ra một “làn sóng” di chuyển của Switch đồng bộ hóa, mà có thể nhanh chóng quyết định để bắt đầu chuyển tiếp vào các liên kết của họ chỉ khi các láng giềng của họ đồng ý. Hình minh họa trên cho thấy làn sóng đồng bộ hóa đi qua một mạng lưới ở ba khoảng thời gian kế tiếp. Cô lập các thiết bị chuyển mạch dọc theo làn sóng đi trong mô hình vốn đã ngăn cản hiện tượng Loop.
·Quá trình hội tụ toàn bộ xảy ra nhanh chóng, với tốc độ của BPDU truyền, mà không có sử dụng bất kỳ bộ timer nào. Tuy nhiên, một cổng chỉ định sẽ gửi tin nhắn đề nghị có thể không nhận một thông báo thỏa thuận trả lời. Giả sử rằng các switch lân cận không hiểu hoặc RSTP có một vấn đề trả lời. Việc chuyển đổi gửi sau đó phải trở thành quá thận trọng và phải bắt đầu hoạt động theo nguyên tắc của 802.1D quy tắc cổng phải được chuyển qua Listerning-Learning-Forwarding.( sử dụng Forward delay timer =15s ).
· Nghe
· Đọc ngữ âm
Quá trình đồng bộ hóa Của RSTP trong toàn Mạng.
III.5 Sự thay đổi mô hình mạng trong RSTP
·Khi một chuyển đổi 802.1D phát hiện một thay đổi trạng thái cổng (có thể Up hoặc down), nó báo cho Root Bridge bằng cách gửi thông báo thay đổi cấu trúc liên kết (TCN) BPDUs. Root Switch lần lượt phải thông báo thay đổi cấu trúc liên kết bằng cách gửi ra một thông báo TCN được chuyển tiếp đến tất cả các switch tại các miền STP.
·RSTP phát hiện một cấu trúc liên kết thay đổi duy nhất khi một nonedge chuyển tiếp cổng để trạng thái Forwarding. Điều này có vẻ kỳ lạ bởi vì một trạng thái của đường link không được sử dụng như một sự thay đổi. RSTP sử dụng tất cả các phương pháp của nó để nhanh chóng ngăn cản hiện tượng Loop. Do đó, thay đổi cấu trúc liên kết được phát hiện chỉ để bảng MAC của switch có thể được cập nhật khi một máy ở sai port và chuyển sang 1 port khác.
·Khi một sự thay đổi cấu trúc liên kết được phát hiện, một chuyển đổi phải tuyên truyền tin tức về sự thay đổi để switch khác trong mạng để có thể sửa các bảng MAC của họ . Quá trình này cũng tương tự như hội tụ và cơ chế đồng bộ hóa; thay đổi cấu trúc liên kết (TC) thông điệp tuyên truyền thông qua mạng trong một làn sóng ngày càng mở rộng.
·BPDUs, với thiết lập bit TC của họ, được gửi ra tất cả các Port nonedge. Điều này được thực hiện cho đến khi các TC khi bộ đếm thời gian hết hạn, sau hai khoảng thời gian Hello.Thông báo này cho switch láng giềng của liên kết mới và thay đổi cấu trúc liên kết. Ngoài ra, tất cả các địa chỉ MAC được kết hợp với các nonedge Designated Port được xóa khỏi bảng(CAM) . Điều này làm cho các địa chỉ phải được học lại sau khi thay đổi, trong trường hợp máy tính bây giờ xuất hiện trên một link khác nhau. Tất cả các thiết bị chuyển mạch lân cận tiếp nhận các tin nhắn TC cũng phải tuôn ra các địa chỉ MAC học trên tất cả các cổng ngoại trừ một trong đó nhận được thông báo TC. Những thiết bị chuyển mạch sau đó phải gửi TC tin nhắn ra Port nonedge designated , và cứ tiếp tục như vậy.
III.6 Cấu hình RSTP
Theo mặc định , switch sẽ chạy pVST + (Spanning tree per Vlan ) sử dụng spanning-tree truyền thống 802.1D .Do đó, RSTP không thể sử dụng cho đến có một chế độ Spanning tree khác được chạy như RPVST + hoặc MST .
Những thay đổi cấu hình chỉ liên quan đến RSTP ảnh hưởng đến cổng hoặc kiểu liên kết. Các loại liên kết được sử dụng để xác định cách chuyển đổi một thương lượng thông tin cấu trúc liên kết với láng giềng của nó.
Để cấu hình một cổng như là một cổng edge RSTP, sử dụng câu lệnh sau đây:
Switch(config_if)#spanning-tree portfast
Theo mặc định, RSTP tự động quyết định rằng một cổng là một liên kết điểm-điểm nếu nó được hoạt động trong toàn chế độ toàn song công. Các cổng kết nối với switch khác thường toàn song công vì chỉ có hai thiết bị chuyển mạch vào liên kết. Tuy nhiên, bạn có thể ghi đè lên việc xác định tự động, nếu cần thiết. Ví dụ, một cổng kết nối đến switch khác có thể là một trong những hoạt động ở bán song công, vì lý do nào đó. Để ép cổng để hoạt động như một liên kết point-to-point, sử dụng cấu hình giao diện sau :
Switch(config_if)# spanning –tree link-type point-to-point
إرسال تعليق