Tải bản đầy đủ (.pdf) (40 trang)

Giáo trình khóa học BCMSN Chương 4 – Thực thi Spanning Tree

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1017.84 KB, 40 trang )

Giáo trình khóa học BCMSN Chương 4 – Thực thi Spanning Tree
62

C
C
h
h
ư
ư
ơ
ơ
n
n
g
g


4
4


-
-


T
T
h
h



c
c


T
T
h
h
i
i


S
S
p
p
a
a
n
n
n
n
i
i
n
n
g
g



T
T
r
r
e
e
e
e


Trong chương này giới thiệu cơ bản về Spanning Tree Protocol (STP)
trong một mạng switch, giải thích cách Root bridge (switch gốc) và đường dự
phòng được bầu chọn, và cũng bao gồm những nhức năng tăng cường hiệu năng
STP như Rapid STP (RSTP) và Multiple STP (MSTP). Ngoài ra, bạn còn được
giới thiệu cấu hình EtherChannel, và cách tương tác như thế nào với STP.
Chương này cung cấp hướng dẫn nâng cao STP khả năng phục hồi khi lỗi diễn
ra.
4
4
.
.
1
1


M
M
ô
ô



t
t




S
S
T
T
P
P


4
4
.
.
1
1
.
.
1
1


G
G
i

i


i
i


t
t
h
h
i
i


u
u


B
B
r
r
i
i
d
d
g
g
e

e


Switch đã thay thế bridge như là một thiết bị mạng thực hiện các kết nối
trong mạng hiện nay. Các chức năng cơ bản của switch trùng với một transparent
bridge trên cơ sở mỗi VLAN. Để hiểu STP, chúng ta xem xét hoạt động của
Bridge mà không có Spanning Tree.
Một transparent bridge có những đặc điểm:
Nó không phải sửa đổi các frame được chuyển tiếp.
Nó học địa chỉ bằng cách "lắng nghe" trên một cổng từ địa chỉ nguồn của
thiết bị. Khi một địa chỉ MAC nguồn được đọc trong các frame đi vào một
cổng cụ thể, bridge giả định rằng các frame đích với địa chỉ MAC trên có
thể được gửi ra khỏi cổng đó. Sau đó bridge xây dựng một bảng ghi chú có
địa chỉ nguồn được nhìn thấy trên cổng. Một bridge là luôn luôn lắng nghe
và học tập các địa chỉ MAC theo cách này.
Nó phải gửi tất cả các broadcast ra ngoài trên tất cả các cổng, ngoại trừ
cổng mà ban đầu nhận vào.
Nếu một địa chỉ đích mà bridge không biết đến, nó sẽ chuyển các frame ra
ngoài tất cả các cổng, ngoại trừ cổng mà ban đầu đã nhận được frame.
Đây được gọi là unicast flooding.
Transparent bridging phải „‟trong suốt „‟ giữa các thiết bị trên mạng. Các
thiết bị đầu cuối không yêu cầu cấu hình. Các giao thức bridging hoạt động không
được trực tiếp nhận biết bởi các thiết bị đầu cuối.
Giáo trình khóa học BCMSN Chương 4 – Thực thi Spanning Tree
63

Giống như với kiểu chia sẻ trên Ethernet truyền thống, transparent bridge
vốn đã thiếu khả năng về cung cấp dự phòng. STP cung cấp một cơ chế trong
môi trường Ethernet transparent bridge để khám phá kiến trúc mạng ở phân lớp 2
một cách tự động và để đảm bảo rằng chỉ có một con đường thông qua mạng.

Nếu không có STP, không có cách nào để tạo ra một môi trường transparent
bridge đảm bảo tính dự phòng. STP cũng bảo vệ một mạng lưới chống lại những
lỗi kết nối cáp mà vô tình nó tạo nên một loop không mong muốn xảy ra trong
mạng đó.
Lưu ý
Thuật toán spanning tree được thực hiện trong các loại phương tiện truyền
thông khác, như Token Ring. STP có một mục đích khác và chức năng trong
Token Ring so với Ethernet, vì loop có thể được theo mong muốn trong Token
Ring.
4
4
.
.
1
1
.
.
2
2


G
G
i
i


i
i



t
t
h
h
i
i


u
u


d
d




l
l
i
i


u
u


t

t
r
r
u
u
y
y


n
n


b
b




l
l
o
o
o
o
p
p


Bridge bị loop diễn ra khi không có cơ chế nào ở phân lớp 2, như Time-to-

live, để quản lý đường dự phòng và loại bỏ nhưng dữ liệu mà truyền không thể
kết thúc.
Thiết bị A có 2 đường truyền đến thiết bị B qua hai thiết bị trung gian
bridge. Hình dưới:

Hình 4.1.2-1: Hiện tượng loop
Giáo trình khóa học BCMSN Chương 4 – Thực thi Spanning Tree
64

Bridge loop có thể xảy ra bất kỳ khi nào mà có đường dự phòng hoặc vòng
trong mạng bridge.
Bước 1: Station A truyền 1 frame cho Station B trên segment A, cả hai
bridge trên segment A nhận được gói dữ liệu trên cổng 1/1 và 2/1. Cả hai
bridge đều cập nhật bảng Mac của mình, rằng Station A ở segment A, ở
cổng 1/1 và 2/1.
Bước 2: Cả hai bridge đều chuyển gói dữ liệu sang segment B. Station B
nhận được các gói dữ liệu, và cả hai bridge thấy được gói dữ liệu giống
nhau với địa chỉ nguồn của gói dữ liệu là Station A đến từ bridge kia. Các
bridge sẽ chuyển gói sai tất cả các gói cho station A sang segment B. Khi
station B gửi trả dữ liệu cho station A, tất cả các gói dữ liệu bị loại bỏ bởi
cả 2 bridge vì gói dữ liệu mà nó nhận được có cùng cổng bridge mà nó là
đích cho station A.
Bước 3: Nếu station A, hoặc bất kỳ, gửi một dữ liệu broadcast, hiệu ứng
loop ở phân lớp 2 sẽ rất tệ. Địa chỉ MAC đích sẽ là FF-FF-FF-FF-FF-FF.
Nó sẽ gây ra trên mỗi bridge chuyển gói broadcast ra tất cả các cổng trừ
cổng nhận vào. Gói broadcast cũng sẽ được chuyển đến bridge đã chuyển
gói broadcast này, mà nó sẽ chuyển lại lần nữa cũng gói broadcast trên tất
cả các cổng. Gói broadcast này sẽ tiếp tục cho đến khi loop được tắt hoặc
bridge không có khả năng xử lý được nữa các gói dữ liệu.
4

4
.
.
1
1
.
.
3
3


P
P
h
h
â
â
n
n


t
t
í
í
c
c
h
h



m
m


t
t


m
m


n
n
g
g


k
k
h
h
ô
ô
n
n
g
g



l
l
o
o
o
o
p
p
:
:




Một mạng không bị loop, là mạng không tạo ra bão broadcast ở phân lớp 2
hoặc bão trùng lắp các gói unicast. Một mạng không có loop có thể đạt được bằng
cách tắt hoặc ngắt kết nối tất cả các liên kết dự phòng giữa các bridge bằng tay.
Tuy nhiên, điều này không loại bỏ tính dự phòng trong mạng và đòi hỏi phải can
thiệp bằng tay trong trường hợp suất hiện một lỗi liên kết.
STP giải quyết vấn đề này: Nếu có những liên kết thay thế cho một điểm
đến trên một switch, chỉ có một liên kết được sử dụng để chuyển tiếp dữ liệu.
Những cổng của switch được liên kết với các con đường thay thế vẫn là một phần
của các kết nối mạng và frame chuyển tiếp qua liên kết thay thế đó nếu xảy ra một
lỗi trên đường liên kết chính.
Thuật toán spanning tree (STA) chạy trên mỗi switch để kích hoạt hoặc
chặn các liên kết dự phòng. Để tìm các liên kết dự phòng, STA chọn một điểm
tham chiếu trong mạng và xác định tất cả những đường đường dự phòng tới điểm
Giáo trình khóa học BCMSN Chương 4 – Thực thi Spanning Tree
65


tham chiếu. Nếu STA thấy một đường dự phòng, nó sẽ chọn đường nào sẽ thực
hiện chuyển tiếp dữ liệu, đường nào sẽ bị chặn. Điều này có hiệu quả cho các
máy chủ khi các liên kết dự phòng tồn tại trong hệ thống cho đến khi chúng được
cần đến khi liên kết chính nối với điểm tham chiếu có vấn đề.
Chuẩn Spanning Tree thường chỉ nhắc đến một “bridge”, nhưng tất cả các
thiết bị trao đổi thông tin spanning tree đều là switch ở phân lớp 2.
4
4
.
.
1
1
.
.
4
4


M
M
ô
ô


t
t





8
8
0
0
2
2
.
.


1
1
D
D


S
S
p
p
a
a
n
n
n
n
i
i
n

n
g
g


T
T
r
r
e
e
e
e


P
P
r
r
o
o
t
t
o
o
c
c
o
o
l

l
:
:




Với 802. 1D STP, Switch cấu hình lại các đường dẫn để xác định đường đi
của việc truyền gói dữ liệu, do đó tạo ra một đường đi không còn loop mà vẫn tồn
tại đường dự phòng cho những đường đi giữa các switch qua mạng. Điều này
được thực hiện bởi chuyển tiếp các lưu lượng qua cổng cụ thể và bằng cách
ngăn chặn lưu lượng bị chuyển ra khỏi cổng khác. STP ngăn cản loop bằng cách
sử dụng các cơ chế sau đây:
STP truyền thông tin lớp 2 giữa các switch liền kề bằng các trao đổi các gói
tin bridge protocol data unit (BPDU).
Một root bridge duy nhất được chọn để làm điểm tham chiếu, từ đó một sơ
đồ mạng không xảy ra loop được xây dựng cho tất cả các switch trao đổi
BPDUs.
Mỗi switch, ngoại trừ root bridge, chọn một cổng làm root để cung cấp
đường đi tốt nhất đến root bridge.
Trong một thiết kế theo hình tam giác tương tự như trong hình, liên kết
giữa hai cổng switch là nonroot, thì một cổng trên một switch trở thành
cổng designated, và cổng kia sẽ được đưa vào trạng thái block và không
chuyển tiếp gói dữ liệu đi. Điều này sẽ làm hệ thống không còn loop. Thông
thường, các cổng designated trên switch sẽ là đường đi tốt nhất đến root
bridge.
Giáo trình khóa học BCMSN Chương 4 – Thực thi Spanning Tree
66



Hình 4.1.4-1: Các trạng thái port trên switch trong mô hình tam giác
STP gửi BPDUs ra tất cả các cổng của bridge.
Thông tin cung cấp trong một BPDU bao gồm những phần sau đây:
Root ID: bridge ID thấp nhất (BID) trong mô hình.
Cost of path: Chi phí của đường đi của tất cả các liên kết từ các switch
đến root bridge.
BID: BID của switch gửi BPDU.
Port ID: port ID của switch gửi BPDU.
STP timer values: maximum age, hello time, forward delay.
Giáo trình khóa học BCMSN Chương 4 – Thực thi Spanning Tree
67


Hình 4.1.4-2: Hình miêu tả số byte các trường trong gói BPDU
BPDU chứa những thông tin cần thiết cho cấu hình STP. Trường Type cho
các gói tin BPDU là 0x00, và nó sử dụng địa chỉ MAC multicast 01-80-C2-00-00-
00.
4
4
.
.
1
1
.
.
5
5


M

M
ô
ô


t
t




R
R
o
o
o
o
t
t


B
B
r
r
i
i
d
d
g

g
e
e


STP dùng root bridge, root port và designated port để thiết lập một đường
không bị loop trong mạng. Bước đầu tiên trong việc tạo ra đường không bị loop
trong spanning tree là chọn ra root bridge để làm điểm tựa cho tất cả các con
switch thiết lập đường vận chuyển. Mô hình STP được hội tụ sau khi root bridge
đã được chọn, và mỗi bridge chọn root port cho nó, designated bridge, và port
tham gia vào STP. STP sử dụng gói tin BPDUs để truyền trạng thái port để hoàn
tất việc hội tụ
Spanning tree chọn Root Bridge trong mỗi miền broadcast trên mạng LAN.
Tính toán đường đi dựa trên Root Bridge. Con Root Bridge được chọn dựa trên
Bridge ID (BID), nó bao gồm 2 byte cho trường Priority cộng với 6 byte địa chỉ
MAC. Trong spanning tree, BID thấp hơn được ưu tiên. Giá trị trường Priority giúp
cho việc xác định Bridge nào sẽ trở thành Root và trường này có thể thay đổi
bằng tay. Cấu hình mặc định, trường Priority được đặt là 32768. Khi trường
Priority mặc định như nhau trên tất cả con Bridge thì việc lựa chọn Root Bridge
dựa vào địa chỉ MAC nào thấp nhất.
Con root bridge duy trì tình trạng của đường forwarding giữa tất cả con
switch cho một trường hợp STP đơn giản. Một trường hợp STP là khi tất cả
Giáo trình khóa học BCMSN Chương 4 – Thực thi Spanning Tree
68

switch trao đổi BPDUs và tham gia vào đàm phán spanning tree được bầu làm
root đơn giản. Nếu nó được thực hiện cho tất cả VLAN, nó được gọi là Common
Spanning Tree (CST) instance. Nó cũng có cho từng VLAN gọi là Per-VLAN
Spanning Tree (PVST), do đó sẽ có 1 root bridge cho mỗi VLAN.
Trường BID và root ID mỗi cái đều 8 byte được mang trong mỗi BPDU.

Những giá trị này được dung để hoàn tất tiến trình bầu chọn root bridge. Con
Switch xác định được root bridge bằng cách đánh giá trường root ID trong gói
BPDU mà nó nhận. BID là duy nhất được mang trong trường root ID của BPDU
gửi bởi mỗi con switch trong cây.

Hình 4.1.5-1: Hình thể hiện giá trị bằng nhau của Root IP và Bridge IP
Khi switch mới khởi động và bắt đầu gửi BPDU, nó chưa biết root ID, vì thế
nó quảng bá trường root ID chính là BID của nó.
Switch mà có BID thấp nhất sẽ giữ vai trò Root Bridge cho tiến trình
Spanning Tree. Nếu switch nhận được gói BPDU mà có BID thấp hơn của nó, nó
sẽ thay thế giá trị thấp hơn này vào trường Root ID của gói BPDU gửi ra.
Spanning Tree hoạt động yêu cầu mỗi switch phải có một định danh BID.
Trong phiên bản gốc chuẩn 802. 1D, BID kết hợp giữa Priority và MAC của
switch. Bởi vì PVST yêu cầu mỗi tiến trình Spanning Tree độc lập trên mỗi VLAN,
BID yêu cầu mang định danh VLAN ID, mà nó được xử lý bằng cách sử dụng lại
phần priority như là Extended system ID.
Giáo trình khóa học BCMSN Chương 4 – Thực thi Spanning Tree
69

Để tương thích với Extended system ID, 16 bit của trường priority của
chuẩn 802. 1D gốc được chia làm 2 trường, kết quả đây là các thành phần trong
BID:
Bridge Priority: một trường 4 bit mang bridge priority. Bởi vì sự giới hạn
của tăng hoặc giảm bit, Giá trị Priority tăng hoặc giảm với giá trị là 4096
trên một bit chứ không còn là tăng hoặc giảm 1 như khi nó sử dụng 1
trường 16 bit. Mặc định giá trị priority, để tương thích với IEEE 802. 1D là
giá trị 32768, mà nó cũng là giá trị ở giữa.
Extended System ID: một trường 12 bit dành để mang VID cho PVST.
MAC address: một trường 6 byte với giá trị MAC của mỗi switch.


Hình 4.1.5-2: Sự khác nhau giữa Bridge có Extended System IP và không có
Extended System IP

Hình 4.1.5-3: Hình miêu tả sự thay đổi các trường trong gói BPDU
Giáo trình khóa học BCMSN Chương 4 – Thực thi Spanning Tree
70

Bởi giá trị duy nhất của địa chỉ MAC, một BID luôn luôn là duy nhất. Khi
priority và Extended sysem ID được sử dụng cùng với địa chỉ MAC, mỗi VLAN
trên switch có thể được thể hiện với 1 định danh BID duy nhất.
Nếu priority không được cấu hình, tất cả switch có cùng priority và bầu
chọn root trên mỗi VLAN dựa vào địa chỉ MAC. Trong trường hợp bầu chọn không
ngẫu nhiên có nghĩa là root bridge mà được bầu chọn được xác định trước đó,
trong trường hợp này, chúng ta phải thiết lập priority thấp hơn cho switch mà nó
sẽ trở thành root bridge.
Các gói BPDU được trao đổi giữa các switch và phân tích BID và thông tin
root ID từ gói BPDU để xác định switch nào sẽ trở thành root bridge.
Bước
Hoạt động
1
Khi bắt đầu, mỗi switch truyền các gói BPDU ra các cổng trên
mỗi VLAN. Khi bắt đầu, mỗi switch thiết lập root ID bằng BID của
nó. Trong suốt thời gian này, các cổng của switch không dùng để
truyền dữ liệu thông thường.
2
Khi các gói BPDU truyền trong mạng, mổi switch sẽ so sánh giá
trị root ID mà nó truyền đi và nó nhận được. Hoạt động chính xác
mà nó so sánh được giới thiệu kế tiếp.
3
Nếu nó nhận được root ID mà thấp hơn giá trị BID của nó, switch

sẽ quảng bá nó. Trong trường hợp ngược lại, nó sẽ tiếp tục
quảng bá với root ID là BID của nó trong gói BPDU.
4
Trên con root bridge, tất cả các cổng là designated và truyền dữ
liệu
5
Nonroot bridge phải xác định đường đi tối ưu về root bridge
Bảng 4.1.5-1: Quá trình bầu chọn root bridge

4
4
.
.
1
1
.
.
6
6


M
M
ô
ô


t
t





c
c
á
á
c
c


v
v
a
a
i
i


t
t
r
r
ò
ò


c
c



a
a


c
c


n
n
g
g


Trên non-root bridge, spanning tree xác định vai trò mỗi port trong sơ đồ và
đường forwarding mong muốn nhất cho frame dữ liệu như switch nhận BPDU trên
port. Có 4 vai trò port 802. 1D.
Giáo trình khóa học BCMSN Chương 4 – Thực thi Spanning Tree
71


Hình 4.1.6-1: Hình miêu tả vai trò các port
Vai trò cổng
Mô tả
Root port
Là cổng trên các nonroot bridgevà là cổng trên switch mà có
đường đi tối ưu nhất đi về root bridge. Root port chuyển dữ liệu
hướng về root bridge và địa chỉ MAC nguồn của dữ liệu nhận
vào trên root port được lưu trong bảng MAC. Chỉ có 1 root port

trên một nonroot bridge.
Designated port
Là cổng trên root và nonroot bridge. Với root bridge tất cả các
cổng là designated port. Với nonroot bridge, designated port là
cổng truyền và nhận dữ liệu đến root bridge khi cần thiết. Chỉ
một designated port trên một phân đoạn. nếu nhiều switch trên
một phân đoạn, một tiến trình bầu chọn xác định designated
switch, và cổng switch designated bắt đầu truyền dữ liệu cho
phân đoạn này. Designated port lưu địa chỉ MAC trong bảng
MAC.
Nondesignated
port
Nondesignated port là cổng mà không truyền dữ liệu (block) và
không lưu địa chỉ MAC trong bảng MAC với địa chỉ nguồn của
gói dữ liệu mà nó thấy trong phân đoạn
Disable port
Disable port là cổng switch mà nó bị tắt (shutdown)
Bảng 4.1.6-1: Đặc điểm của vai trò các cổng
Mỗi port lớp 2 trên con switch chạy STP tồn tại một trong năm trạng thái:
Blocking: Cổng lớp 2 là nondesignated port và không tham gia truyền dữ
liệu. Cổng này nhận BPDU để xác định vị trí và root ID của con root bridge
và vai trò cổng (root, designated, hoặc nondesignated) mỗi cổng switch nên
Giáo trình khóa học BCMSN Chương 4 – Thực thi Spanning Tree
72

hoàn tất hoạt động cuối cùng trong sơ đồ STP. Mặc định, port dành 20s
trong mỗi tình trạng (max age).
Listening: Spanning tree đã xác định cổng này có thể truyền dữ liệu dựa
theo BPDU switch nhận được. Tại điểm này, cổng switch đang nhận BPDU
và cũng truyền BPDU của bản thân nó và thông báo switch láng giềng rằng

cổng switch đang chuẩn bị tham gia vào sơ đồ mạng, Mặc định, cổng này
dành 15s (forward delay).
Learning: Cổng lớp 2 đang chuẩn bị tham gia truyền dữ liệu và bắt đầu
cập nhật học bảng CAM. Cổng này vẫn gửi và nhận BPDU, Mặc định, port
dành 15s cho trạng thái này (forward delay).
Forwarding: Cổng lớp 2 đã tham gia vào mạng. Nó truyền dữ liệu và cũng
tham gia và gửi và nhận BPDU.
Disable: Đây không thật sự là tình trạng của STP, mà nó là kết quả của
người quản trị tắt (shutdown) cổng, trong tình trạng này, cổng lớp 2 không
tham gia vào spanning tree và không truyền dữ liệu.

Hình 4.1.6-2: Quá trình chuyển trạng thái
STP sử dụng bộ đếm thời gian để xác định bao lâu thì chuyển trạng thái
cổng. STP cũng sử dụng bộ đếm thời gian để xác định bridge láng giềng còn hoạt
động không và bao lâu mới lưu bộ đệm địa chỉ MAC trong bảng bridge.
Giáo trình khóa học BCMSN Chương 4 – Thực thi Spanning Tree
73

Bộ đếm thời gian hoạt động như sau:
Hello timer: Xác định khoảng thời gian bao lâu bridge gửi BPDU. Mặc định
là 2 giây.
Maximum Age (Max Age): thời gian để chuyển cổng từ tình trạng blocking
trước khi sang listening. Mặc định là 20s.
Forward delay (Fwd delay): Xác định khoảng thời gian để chuyển từ
listening sang learning và từ learning sang forwarding. Mặc định là 15s.
Root bridge thông báo non root bridge chu kỳ thời gian và sử dụng bộ đếm
thời gian STP dựa trên kích thước mạng. Việc điều chỉnh bộ đếm thời gian nên
cẩn thận vì nếu không đúng sẽ làm cho mạng không ổn định và có thể bị loop.
Nonroot bridge đặt các cổng khác nhau cho đúng vai trò bằng cách lắng
nghe BPDU đến trên tất cả cổng. BPDU nhận được trên nhiều cổng chỉ định

đường dự phòng tới root bridge.
Switch xem thành phần dưới đây trong BPDU để xác định cổng nào của
switch sẽ truyền dữ liệu và cổng nào sẽ không truyền dữ liệu (block):
Path cost thấp nhất.
Con switch gửi có BID thấp nhất.
Con switch gửi có port ID thấp nhất.
Giáo trình khóa học BCMSN Chương 4 – Thực thi Spanning Tree
74


Hình 4.1.6-3: Các giá trị để tính đường ngắn nhất tới root bridge
Switch xem path cost đầu tiên, nó được tính dựa trên tốc độ và số đường
mà BPDU di chuyển qua. Cổng cùng với cost thấp nhất đủ tư cách đặt trong chế
độ forwarding. Tất cả port khác đang nhận BPDUs tiếp tục trong chế độ Blocking
Mỗi bridge quảng bá path cost spanning tree trong BPDU. Path cost này
được tính cộng dồn tất cả đường kết nối từ root bridge tới switch gửi BPDU.
Switch nhận được sử dụng cost này để xác định đường đi tốt nhất về root bridge.
Cost thấp nhất được xem là đường tốt nhất.
Giá trị cost trên mỗi liên kết giữa 2 switch được qui định ở bảng sau.

Hình 4.1.6-4: Các giá trị cost thông dụng
Hình dưới, switch Y nhận được BPDU từ root bridge (switch X) trên phân
đoạn fast Ethernet và gói BPDU khác từ phân đoạn Ethernet. Path cost từ root
bridge đều bằng 0. Path cost trên switch Y trên cổng Fast Ethernet là 19 và trên
cổng Ethernet là 100. Và kết quả là, cổng Fast Ethernet có path cost thấp hơn đến
root bridge và được bầu chọn là root port trên switch Y.
Giáo trình khóa học BCMSN Chương 4 – Thực thi Spanning Tree
75



Hình 4.1.6-5: Ví dụng tính cost và xác định vai trò port
STP chọn một designated port trên mỗi phân đoạn mạng để truyền dữ liệu.
Cổng khác trên phân đoạn tiêu biểu trở thành nondesignated ports và tiếp tục
không truyền dữ liệu. Hoặc chúng có thể là root port và tiếp tục truyền dữ liệu.

Hình 4.1.6-6: Ví dụng tính cost và xác định vai trò port
Nondesignated port nhận BPDU nhưng không truyền dữ liệu và không
không truyền dữ liệu để ngăn cản loop. Switch port trên phân đoạn cùng với path
cost thấp nhất tới root bridge được bầu làm designated port. Nếu nhiều cổng
switch trên con switch có cùng path cost và được nối tới cùng con switch láng
giềng, cổng switch gửi có ID thấp nhất trở thành designated port.
Giáo trình khóa học BCMSN Chương 4 – Thực thi Spanning Tree
76

Bởi vì các cổng trên root bridge có path cost bằng 0, tất cả các cổng của
root bridge là designated port.
Hình dưới, mô tả các switch chạy spanning tree và trao đổi thông tin.
Những trường thông tin kết quả dưới đây:
Bầu chọn root bridge ở phân lớp 2 làm điểm tham chiếu.
Xác định đường đi tối ưu nhất đến root bridge trên mỗi switch.
Bầu chọn designated switch và designated port trên mỗi phân đoạn mạng.
Giải quyết vấn đề loop trên mạng bằng cách chuyển trạng thái một số liên
kết giữa các switch sang trạng thái không truyền dữ liệu (block).
Xác định trạng thái hoạt động (active topology) cho mỗi tiến trình spanning
tree hoặc VLAN chạy STP.
Trạng thái hoạt động (active topology) là bước cuối cùng của tiến trình tìm
đường để truyền dữ liệu mà nó tạo ra bởi các cổng switch truyền và nhận dữ liệu.
sau khi trạng thái hoạt động được thiết lập, các switch phải thiết lập lại trạng thái
hoạt động sử dụng Topology Change Notifications (TCNs) nếu có một liên kết bị
lỗi xảy ra.

Một TCN BPDU được phát sinh khi con bridge phát hiện sơ đồ mạng thay
đổi, thông thường là kết nối bị mất, xấu, bridge không hoạt động hoặc cổng
chuyển trạng thái forwarding. TCN BPDU được thiết lập 0x80 trong trường Type
và được forwarded trên root port tiến về root bridge. Bridge cấp cao hơn nhận
được BPDU với một TCA. Trong trường Flag, các bit ít quan trọng thì dành cho
TCN, và các bit quan trong thì dành cho TCA.
Bridge gửi thông tin này tới designated bridge của nó, láng giềng gần root
nhất của một bridge cụ thể. Designated bridge gởi thông tin về cấu trúc mạng cho
láng giềng đã gởi và gửi thông báo tới designated bridge của nó, tiến trình này lặp
lại cho đến root bridge lấy được thông báo. Đây là cách root bridge biết được thay
đổi trên mạng.
Khi mạng thay đổi xảy ra con root gửi thông báo xuyên qua cây do đó nội
dung của CAM có thể chỉnh sửa và cung cấp đường mới cho thiết bị cuối.
Giáo trình khóa học BCMSN Chương 4 – Thực thi Spanning Tree
77

4
4
.
.
1
1
.
.
7
7


G
G

i
i


i
i


t
t
h
h
i
i


u
u


g
g
i
i
a
a
o
o



t
t
h
h


c
c


n
n
â
â
n
n
g
g


c
c
a
a
o
o


c
c



a
a


S
S
T
T
P
P


Chuẩn 802. 1D STP đã được phát triển lâu trước khi VLAN được giới thiệu
và có vài hạn chế mà Cisco PVST gặp phải. PVST cho phép trường hợp riêng rẻ
của spanning tree và bao gồm tính năng riêng của Cisco như PortFast và
UplinkFast, cái mà cung cấp hội tụ nhanh hơn.


Hình 4.1.7-1: Các loại STP
Chuẩn 802.1Q được định nghĩa lả công nghệ chuẩn cho việc quản lý
VLAN. Để giảm phức tạp của chuẩn này, tổ chức 802. 1 chỉ định chỉ có 1 trường
hợp của spanning tree cho tất cả VLAN, Không chỉ ít linh hoạt hơn Cisco PVST nó
còn tạo ra vấn đề khi hoạt động, để giải quyết cả hai vấn đề Cisco đưa ra PVST+
trong Version 4. 1 trên Cisco Catalyst 5000 Series (tất cả Cisco Catalyst 4000 và
6000 series đều hổ trợ PVST+). PVST+ cho phép phạm vi hoạt động xuyên suốt
và trong suốt trong hầu hết tất cả sơ đồ và cấu hình.
Có sự thuận lợi và bất lợi khi sử dụng spanning đơn giản. Một mặt nó cho
phép switch trở nên đơn giản hơn trong thiết kế và đỡ phải load CPU, nhưng mặt

khác single spanning tree ngăn load balancing và có thể tạo ra kết nối không hoàn
tất trong VLAN (Single STP VLAN phải chọn link mà nó không bao gồm VLAN
khác). Để giữ sự cân bằng, hầu hết người thiết kế mạng kết luận rằng những bất
lợi có ảnh hưởng nhiều hơn thuận lợi.
Hai chuẩn IEEE, RSTP (802. 1w) và MSTP (802. 1s) cải thiện cho gốc
chuẩn 802. 1D STP và cung cấp tính năng riêng biệt của Cisco, RSTP cung cấp
hội tụ nhanh hơn, trong khi MSTP cho phép nhiều trường hợp trong spanning
tree.
Per VLAN Rapid Spanning Tree (PVRST) cho phép RSTP được thực thi,
giúp hội tụ nhanh, trong khi vẫn sử dụng Cisco PVST.
Giáo trình khóa học BCMSN Chương 4 – Thực thi Spanning Tree
78

Spanning PortFast tạo một interface được cấu hình như access port lớp 2
để chuyển từ blocking sang forwarding ngay lập tức, bỏ qua các bước listening và
learning. Bạn có thể sử dụng portfast trên access port lớp 2 kết nối đến
workstation hoặc server. Nếu một interface được cấu hình portfast nhận được
BPDU, spanning tree có thể đặt port đó sang blocking bằng cách sử dụng tính
năng gọi là BPDU guard.
Cảnh Báo
Bởi vì mục đích của portfast là thu nhỏ lại thời gian mà access port phải đợi
cho spanning tree hội tụ, nó nên được sử dụng chỉ với access port. Nếu bạn bật
portfast lên trên port mà kết nối đến switch khác thì có nguy cơ sẽ tạo ra spanning
tree loop.
4
4
.
.
2
2



T
T
h
h


c
c


t
t
h
h
i
i


R
R
S
S
T
T
P
P







4
4
.
.
2
2
.
.
1
1


M
M
ô
ô


t
t




R
R

a
a
p
p
i
i
d
d


S
S
p
p
a
a
n
n
n
n
i
i
n
n
g
g


T
T

r
r
e
e
e
e


P
P
r
r
o
o
t
t
o
o
c
c
o
o
l
l



Hình 4.2.1-1: Các trạng thái port
Một vấn đề đáng xem xét của STP đó là thời gian hội tụ. Tùy thuộc vào
từng loại sự cố, thời gian thường trong khoảng từ 30-50s để mạng hội tụ. RSTP

cải thiện hơn cho vấn đề hội tụ so với STP. RSTP đưa vô thêm tính năng mới như
UplinkFast và BackboneFast giúp cho khôi phục lớp 2 tốt hơn.
Giáo trình khóa học BCMSN Chương 4 – Thực thi Spanning Tree
79

RSTP dựa theo chuẩn IEEE 802. 1w. Có nhiều sự khác nhau giữa RSTP
và STP. RSTP yêu cầu đường kết nối phải là point-to-point full-duplex giữa những
con các switch láng giềng để có thể hội tụ mạng nhanh. Haft-duplex ví dụ như
chia sẽ đường truyền trong đó nhiều host chia sẽ cùng một sợi dây, kết nối point-
to-point không thể hoạt động được trong môi trường này. Kết quả, RSTP không
thể hội tụ nhanh trong chể độ haft-duplex. STP và RSTP cũng có port designated
khác nhau. RSTP có alternate và backup port designations, cái mà nó không có
trong môi trường STP. Port không tham gia trong spanning tree gọi là edge port.
Edge port có thể cấu hình static bằng câu lệnh PortFast. Edge port ngay lập tức
trở thành non-edge port nếu như có 1 BPDU “nghe” trên port này. Non-edge port
tham gia trong thuật toán spanning tree và chỉ có non-edge port phát sinh
topology change (TC) trên mạng khi chuyển sang tình trạng forwarding. TC không
phát sinh cho bất kì tình trạng RSTP khác. Trong STP, TCN được phát sinh cho
bất kì active port nào không cấu hình PortFast.
RSTP sẽ tính toán lại trong spanning tree khi mạng lớp 2 thay đổi. Nó định
nghĩa lại vai trò và tình trạng port và các gói BPDU.
RSTP rất linh hoạt và do đó không thể chấp nhận sự chậm trể của 802. 1D.
RSTP 802. 1w cao cấp hơn 802. 1D trong khi vẫn tương thích với phiên bản cũ.
Nhiều khái niệm được giữ lại và phần lớn tham số không thay đổi để có thể hoạt
động với switch không hỗ trợ RSTP.
RSTP BPDU có cấu trúc gói giống với IEEE 802. 1D ngoại trừ Version
được đặt là 2 để chỉ định là RSTP. Và cờ Flags sử dụng hết tất cả 8bit.
Trong vùng switch, chỉ có thể là một đường forwarding tiến về một điểm
tham khảo chuẩn đó là root bridge, Thuật toán RSTP bầu chọn root bridge chính
xác giống y hệt 802. 1D đã làm.

Tuy nhiên, có những tiêu chí khác nhau mà làm cho RSTP là giao thức
được yêu thích hơn cho việc ngăn chặn loop layer 2 trong môi trường switch.
Nhiều tính năng mới đã được Cisco đưa vô thêm chẳng hạn BPDU giờ đây sẽ
mang và gửi thông tin về vai trò port tới switch láng giềng mà không yêu cầu cấu
hình thêm, và thực thi tốt hơn 802. 1D.
Bởi vì RSTP và Cisco mở rộng có chức năng khá giống nhau, chẳng hạn
như UplinkFast và BackboneFast thì không tương thích với RSTP.
Giáo trình khóa học BCMSN Chương 4 – Thực thi Spanning Tree
80

4
4
.
.
2
2
.
.
2
2


M
M
ô
ô


t
t





t
t
r
r


n
n
g
g


t
t
h
h
á
á
i
i


c
c



n
n
g
g


c
c


a
a


R
R
S
S
T
T
P
P


RSTP cung cấp hội tụ nhanh dựa theo lỗi hoặc trong suốt quá trình thiết lập
lại switch, switch port hoặc link. Một sơ đồ mạng RSTP thay đổi do sự chuyển
switch port thích hợp tới trạng thái forwarding thông qua hoặc là bắt tay rõ rang
hoặc là gửi tiến trình đề xuất và đồng ý và đồng bộ lại.
Cùng với RSTP, vai trò của port được chi ra từ tình trạng port. Ví dụ,
designated port có thể tạm thời trong tình trạng discarding, cho dù tình trạng cuối

cùng của nó là forwarding.
RSTP port state tương ứng với 3 hoạt động cơ bản của switch port:
discarding, learning, và forwarding.

Hình 4.2.2-1: Hoạt động của các port trong các trạng thái nhất định
Bảng sau mô tả các đặc điểm của trạng thái port trong RSTP. Trong tất cả
các trạng thái port, một port chấp nhận và thực thi các frame BPDU
Bước
Hoạt động
Discarding
Trạng thái này xảy ra trong cả mô hình mạng hoạt động
ổn định và trong quá trình đồng bộ và thay đổi. Trạng thái
discarding ngăn cản chuyển tiếp các frame, do đó phá vỡ
tình trạng loop Lớp 2.
Learning
Trạng thái này trong cả mô hình mạng hoạt động ổn định
và trong suốt quá trình đồng bộ mạng và mạng thay đổi.
Giáo trình khóa học BCMSN Chương 4 – Thực thi Spanning Tree
81

Trạng thái learning cho phép dữ liệu frame ở trong bảng
MAC trong một nỗ lực giới hạn flood các frame unicast
không rõ.
Forwarding
Trạng thái này chỉ xảy ra trong mô hình mạng đang hoạt
động ổn định. Các port forwarding trên switch quyết định
mô hình mạng. Khi mô hình mạng thay đổi, hoặc trong
quá trình đồng bộ, việc vận chuyển các frame dữ liệu chỉ
xảy ra sau tiến trình đề xuất và đồng ý.
Bảng sau so sánh các trạng thái port của STP và RSTP


4
4
.
.
2
2
.
.
3
3


M
M
ô
ô


t
t




v
v
a
a
i

i


t
t
r
r
ò
ò


c
c


a
a


c
c


n
n
g
g


t

t
r
r
o
o
n
n
g
g


R
R
S
S
T
T
P
P


Vai trò port định nghĩa mục đích sau cùng của switch port và cách mà nó
xử lý data frame. Port roles và port state có thể chuyển độc lập với nhau. Hỉnh sau
là cách vai trò port được sử dụng trong
Giáo trình khóa học BCMSN Chương 4 – Thực thi Spanning Tree
82

RSTP

Hình 4.2.3-1: Các trạng thái port

Bảng sau thể hiện vai trỏ của port:
Vai trò port
Mô tả
Root port
Root port là port trên switch không phải là root bridge thứ
mà chọn đường đi đến root brigde. Chỉ có một root port
trên mỗi switch. Root port giữ trạng thái forwarding khi
mạng hoạt động ổn định.
Designated port
Mỗi phân đoạn mạng có ít nhất một port trên switch ở
trạng thái designated cho phân đoạn mạng dó. Khi mạng
hoạt động ổn định, switch có designated port nhận frame
trên phân đoạn mạng được đến root bridge. Chỉ có một
designated port cho mỗi phân đoạn mạng. Designated
port giữ trạng thái forwarding. Tất cả các switch kết nối
đến phân đoạn mạng lắng nghe các gói BPDU và quyết
định switch nào sẽ là designated switch cho phân đoạn
mạng.
Alternative port
Alternative port là một port trên switch sẵn sàng một
đường thay thế đến root bridge. Alternative port giữ
trạng thái discarding trong mạng hoạt động ổn định. Một
Giáo trình khóa học BCMSN Chương 4 – Thực thi Spanning Tree
83

alternative port thì ở trên nondesignated switch và tạo ra
sự chuyển sang designated port nếu đường designated
bị lỗi.
Backup port
Backup port là một port thêm trên designated switch với

một link dự phòng trong phân đoạn mạng cho các
designated switch. Một backup port có port ID cao hơn
designated port trên designated switch. Backup port giữ
trạng thái discarding khi mạng hoạt động ổn định.
Bảng 4.2.3-1 : Bảng sau thể hiện vai trò của port
Thiết lập thêm vai trò port cho phép RSTP định nghĩa standby switch port
trước khi lỗi hoặc topology change. Alternative port chuyển sang forwarding nếu
lỗi trên designated port trên cùng segment.
4
4
.
.
2
2
.
.
4
4


G
G
i
i


i
i



t
t
h
h
i
i


u
u


E
E
d
d
g
g
e
e


P
P
o
o
r
r
t
t

s
s


Một RSTP edge port là switch port mà không bao giờ tham gia vào kết nối
tới con switch khác. Nó ngay lập tức chuyển tới forwarding khi bật nó lên.

Hình 4.2.4-1: Edge port và non-Edge port
Edge port có nội dung dể hiễu bởi vì nó đáp ứng giống với tính năng
PortFast trong đó tất cả các port kết nối trực tiếp tới trạm cuối mà không có switch
nào kết nối trực tiếp đến nó. Port PortFast ngay lập tức chuyển đổi tới forwarding,
Giáo trình khóa học BCMSN Chương 4 – Thực thi Spanning Tree
84

do đó bỏ qua thời gian lảng phí không cần thiết ở chế độ listening và learning.
Không phải Edge port cũng không PortFast phát sinh gói TC khi mà port bị tắt
hoặc mở lên.
Không giống PortFast, edge port nhận được BPDU sẽ mất tính năng edge
port của mình ngay lập tức trở thành port hoạt động trong spanning tree bình
thường. Khi một switch cùng với edge port nhận BPDU, nó sẽ phát sinh TCN.
Cisco RSTP thực thi duy trì PortFast cho edge port, do đó làm cho mạng
chuyển qua RSTP dễ dàng hơn. Cấu hình edge port gắn với switch khác có thể
phủ nhận cho RSTP khi thực thi quá trình đồng bộ.
4
4
.
.
2
2
.

.
5
5


M
M
ô
ô


t
t




c
c
á
á
c
c


l
l
o
o



i
i


l
l
i
i
ê
ê
n
n


k
k
ế
ế
t
t


(
(
L
L
i
i
n

n
k
k


t
t
y
y
p
p
e
e
)
)


t
t
r
r
o
o
n
n
g
g


R

R
S
S
T
T
P
P


Mỗi port tham gia trong RSTP được gói gọn với link type. Link type có thể
định trước active port mà port hoạt động như là nó đứng bởi chuyển ngay lập tức
tới trạng thái forwarding nếu chắc chắn tham số trùng lắp. Những tham số này
khác nhau cho edge port và non-edge port. Non-edge port được gói gọn vào trong
2 loại link type. Link type được tự động nhưng có thể viết chồng.
Edge port tương đương với PortFast và point-to-point link cho chuyển
nhanh sang trạng thái forwarding, trước khi link type có thể được xem như mục
đích của port chuyển, RSTP phải xác định vai trò của port.

Hình 4.2.5-1: Các loại link

Loại link
Mô tả
Giáo trình khóa học BCMSN Chương 4 – Thực thi Spanning Tree
85

Point-to-point
Port hoạt động ở chế độ full-duplex. Cho rằng port đó
được kết nối đến một switch ở đầu kia của link
Shared
Port hoạt động ở chết độ half-duplex. Cho rằng port đó

kết nối đến một thiết bị chia sẻ nơi mà nhiều switch tồn
tại
Bảng 4.2.5-1 : Bảng mô tả các loại link trong RSTP
Root port không sử dụng tham số link type. Root port có thể chuyển nhanh
chóng đến forwarding trong đồng bộ. Thêm vào đó, alternate port và backup port
không sử dụng link type trong hầu hết trường hợp.
Designated port phần lớn sử dụng link type. Việc Chuyển nhanh sang
forwarding cho designated port xảy ra chỉ nếu link type point-to-point.
4
4
.
.
2
2
.
.
6
6


P
P
h
h
â
â
n
n



t
t
í
í
c
c
h
h


R
R
S
S
T
T
P
P


B
B
P
P
D
D
U
U



RSTP 802. 1w sử dụng type 2, version 2 BPDU, một RSTP bridge có thể
nói chuyện với 802. 1D trên bất kì shared link nào hoặc cùng với bất kì switch
chạy 802. 1D. RSTP gửi BPDU và phổ biến cờ flag khác nhau so với 802. 1D:
Một RSTP bridge gửi BPDU cùng với thông tin hiện giờ của nó mỗi chu kì
hello timer(2s mặc định) ngay cả khi không nhận được BPDU nào từ Root
Bridge.
Thông tin giao thức có thể ngay lập tức hết hạn trên port nếu như các gói
hello không được nhận sau 3 lần hello time hoặc nếu max age hết giờ.
Bởi vì BPDU được sử dụng như cơ chế keepalive, 3 BPDU liên tiếp không
nhận được sẽ cho là mất kết nối giữa 2 con bridge, thời gian này cho phép
nhanh chóng dò ra lỗi.
RSTP sử dụng cờ flag version 2 BPDU:
Giáo trình khóa học BCMSN Chương 4 – Thực thi Spanning Tree
86


Hình 4.2.6-1: Các bit trường Flag của gói BPDU của RSTP
Bit 0 và 7 được dùng cho TCN và ACK, giống nhu 802. 1D.
Bit 1 và 6 được dùng cho proposal và agreement.
Bit 2 đến 5 hiễn thị vai trò role và state của port BPDU.
Trường Flag trong STP BPDU chứa TCN và TCA. Trong RSTP, cờ Flag
dài 1 byte được chỉnh sửa cung cấp thêm port designation và proposal và
agreement giữa các switch. BPDU được gửi mỗi 2s. Không giống STP, mỗi switch
phát sinh BPDU chính nó bất kể nó nghe được BPDU từ con Root. Trong STP,
BPDU chỉ phát sinh bởi con Root và được truyền xuống toàn mạng, kết quả, khi
switch không nghe được BPDU, nó không biết nơi nào lỗi xảy ra. Trong RSTP,
con switch chỉ cần quan tâm tới con láng giềng của nó, vì vậy, BPDU cũng giống
như keepalive giữa những con switch. Nếu switch không nghe 3 lần BPDU từ con
switch xuôi dòng, nó chuyển port thích hợp để hội tụ mạng.
4

4
.
.
2
2
.
.
7
7


M
M
ô
ô


t
t




t
t
i
i
ế
ế
n

n


t
t
r
r
ì
ì
n
n
h
h


R
R
S
S
T
T
P
P


P
P
r
r
o

o
p
p
o
o
s
s
a
a
l
l


v
v
à
à


A
A
g
g
r
r
e
e
e
e
m

m
e
e
n
n
t
t


Trong 802. 1D khi port được chọn bởi spanning tree để trở thành
designated port. Nó phải đợi 2 lần forward delay trước khi chuyển tới forwarding.
RSTP có ý nghĩa nhanh hơn trong việc tính toán lại thời gian hội tụ sau khi
topology thay đổi, bởi vì nó hội tụ trên link-by-link và không phản hồi thời gian hết
hạn trước khi port chuyển đổi. Sự chuyển đổi nhanh chóng đến trạng thái
forwarding có thể trên edge port và link point-to-point. Trong RSTP điều kiện này

×