Lỗi liên kết một chiều trong mạng có thể gây ra vòng lặp, để giải quyết vấn đề này ta có thể sử dụng tính năng Loop Guard. Trong bài này ta sẽ đi vào tìm hiểu chi tiết về Loop Guard và cách để cấu hình nó!

Lỗi liên kết một chiều là gì?

ảnh đầu cáp quang
ảnh đầu cáp quang

Nếu bạn sử dụng cáp quang để kết nối, ta thường sử dụng loại Duplex gồm 1 đầu truyền (Tx) và 1 đầu dây nhận (Rx) để truyền lưu lượng. Vậy khi một trong 2 dây cáp quang bị lỗi thì một đầu còn lại vẫn truyền lưu lượng. Điều này có thể gây ra vòng lặp trong mạng. Để xử lý ta có 2 biện pháp thực hiện là: Loop Guard và UDLD. Trong bài này ta sẽ đi tìm hiểu Loop Guard.

Tính năng Loop Guard

Loop Guard là một tính năng quan trọng trong mạng LAN, đặc biệt được sử dụng trong các mạng sử dụng giao thức Spanning Tree Protocol (STP) hoặc Rapid Spanning Tree Protocol (RSTP). Nó được thiết kế để ngăn chặn các vòng lặp trong mạng do lỗi liên kết một chiều.

ví dụ lỗi liên kết 1 chiều

Khi một cổng trên một thiết bị mạng nhận được cả hai BPDUs (Bridge Protocol Data Units) và dữ liệu từ cổng đó, điều này có thể xảy ra khi một cổng trên một switch nhận được gói tin dữ liệu mà nó gửi ra cổng khác (hiện tượng gọi là “bridge loop” hoặc “Spanning Tree loop”). Trong tình huống này, STP hoặc RSTP có thể không thể phát hiện hoặc chặn được vòng lặp.

ví dụ về vòng lặp STP

Loop Guard giải quyết vấn đề này bằng cách kiểm tra các cổng không nhận được BPDU trong khoảng thời gian cụ thể (thường là 2 x hello time). Nếu cổng không nhận được BPDU trong thời gian này, nó được coi là “không chính xác” và sẽ bị chuyển sang trạng thái “loop-inconsistent” (mâu thuẫn vòng lặp). Trong trạng thái này, cổng sẽ ngừng chuyển tiếp dữ liệu, giúp ngăn chặn việc hình thành vòng lặp trong mạng. Khi BPDU lại được nhận được, cổng sẽ trở lại trạng thái hoạt động bình thường.

Cách Loop Guard hoạt động

Loop Guard dùng để chặn vòng lặp STP nhằm bổ sung khả năng bảo vệ các vòng chuyển tiếp tại lớp 2 (Vòng STP). Vòng lặp STP được tạo ra khi có 1 cổng STP trong cấu trúc liên kết dự phòng chuyển nhầm từ trạng thái Blocking (chặn) sang Forwarding (chuyển tiếp).

Điều này xảy ra là do 1 trong các cổng của cấu trúc trúc liên kết vật lý không còn nhận được gói tin BPDU nữa. Vì STP dựa vào việc truyền và nhận gói tin BPDU trên vai trò của cổng. Cổng chỉ định sẽ truyền BPDU và cổng ko được chỉ định sẽ nhận BPDU.

Khi các cổng trong cấu trúc liên kết dự phòng vật lý có 1 cổng không nhận BPDU, STP sẽ coi rằng cấu trúc này không có vòng lặp. Cuối cùng, cổng thay thế hoặc dự phòng đang từ trạng thái chặn thành cổng chỉ định và chuyển thành trạng thái chuyển tiếp. Lúc này vòng lặp sẽ tạo ra.

Loop Guard hoạt động bằng kích hoạt trên cổng chỉ định. Nếu cổng không nhận được BPDU thì nó sẽ chặn thay vì chuyển sang các trạng thái khác. Điều này giúp đảm bảo rằng không tạo ra vòng lặp.

Hello Time và Forwarding Delay

Hello Time Forwarding Delay là hai thông số quan trọng trong STP và RSTP, hai giao thức được sử dụng để ngăn chặn vòng lặp trong mạng LAN. Loop Guard thường sử dụng thông số này để xác định khi nào cổng không chính xác.

Hello Time là khoảng thời gian mà một switch hoặc bridge gửi BPDU (Bridge Protocol Data Unit) tới các switch hoặc bridge khác trong mạng. Thông thường, giá trị mặc định của Hello Time là 2 giây trong STP và 1 giây trong RSTP.

Forwarding Delay là khoảng thời gian mà một cổng của switch chuyển từ trạng thái Blocking (chặn) sang trạng thái Listening (nghe) và sau đó sang trạng thái Learning (học) trước khi cuối cùng chuyển sang trạng thái Forwarding (chuyển tiếp). Giá trị mặc định của Forwarding Delay trong STP là 15 giây.

Khi không nhận được BPDU trong khoảng thời gian này, cổng được coi là không chính xác và Loop Guard có thể tạm ngưng chuyển tiếp dữ liệu qua cổng đó để ngăn chặn vòng lặp trong mạng.

Cách cấu hình Loop Guard

– Kích hoạt Loop Guard trên một cổng:

Router(config)#interface gigabitEthernet 1/1
Router(config-if)#spanning-tree guard loop

– Kích hoạt Loop Guard chế độ toàn cầu:

Router(config)#spanning-tree loopguard default

– Vô hiệu hóa tính năng Loop Guard:

Router(config-if)#no spanning-tree guard loop

– Vô hiệu hóa tính năng Loop Guard trên toàn cầu:

Router(config)#no spanning-tree loopguard default

Loop Guard với các tính năng khác trong STP

1. Root Guard

Root Guard sử dụng trên các cổng được chỉ định để ngăn chặn Switch thành Root. Loop Guard sử dụng trên các cổng không được chỉ định để ngặn chặn lỗi liên kết 1 chiều. Ta không thể kích hoạt Root Guard trên cùng cổng với Loop Guard. Khi cấu hình loop Guard nó sẽ vô hiệu hóa tính băng Root Guard trên cổng.

2. UplinkFast và Backbone Fast

Uplink FastBackbone Fast là các tính năng được sử dụng để tăng tốc quá trình học và chuyển tiếp dữ liệu trong giao thức STP khi có sự cố xảy ra.

Loop Guard không có tương tác trực tiếp với Uplink Fast và Backbone Fast. Cả ba tính năng có thể hoạt động song song nhau để cung cấp một mạng LAN ổn định và nhanh chóng.

3. PortFast, BPDU Guard, và Dynamic VLAN

PortFast được sử dụng để kích hoạt cổng một cách nhanh chóng, loại bỏ thời gian chờ Listening và Learning trong quá trình học của giao thức STP hoặc RSTP. Tuy nhiên, khi một cổng được kích hoạt tính năng PortFast, các gói tin BPDU không được chấp nhận và được bỏ qua. Do đó, Loop Guard không thể hoạt động trên các cổng đã bật PortFast vì không nhận được BPDU để kiểm tra sự liên tục của liên kết.

BPDU Guard là tính năng được sử dụng để ngăn chặn cổng từ việc nhận và chuyển tiếp BPDU, nhằm ngăn chặn các vòng lặp không mong muốn trong mạng. Khi một cổng được kích hoạt tính năng PortFast, BPDU Guard sẽ được tự động kích hoạt trên cổng đó để đảm bảo tính an toàn của mạng.

Các cổng VLAN động là các cổng mạng được cấu hình tự động trở thành cổng nhanh, giúp giảm thiểu thời gian học và chuyển tiếp dữ liệu trong mạng. Tương tự như trường hợp đã đề cập ở trên, khi cổng được kích hoạt tính năng PortFast, Loop Guard không thể hoạt động trên các cổng này vì BPDU không được chấp nhận.

4. Shared Link

Các liên kết được chia sẻ là nơi mà nhiều VLAN chia sẻ một liên kết vật lý duy nhất. Khi một liên kết được chia sẻ, việc chuyển tiếp dữ liệu từ nhiều VLAN qua cùng một liên kết có thể tạo ra một môi trường mạng phức tạp.

Nếu Loop Guard được kích hoạt trên các liên kết được chia sẻ, có thể xảy ra tình trạng cổng bị tạm ngưng (port blocking) do Loop Guard không nhận ra BPDU từ các VLAN khác nhau và xem xét rằng liên kết đang trong tình trạng không chính xác.

Thông Tin Về Tác Giả

Tổng Biên Tập at Thiết Bị Mạng Giá Rẻ | Website | + posts

Nguyễn Thành Hợp là một chuyên gia về lĩnh vực thiết bị mạng, viễn thông gần 10 năm kinh nghiệm với nhiều chứng chỉ chất lượng như CCNA 200-301, CCNP, CCDA, CCDP,... do Cisco cung cấp. Sở thích cá nhân là khám phá những kiến thức mới mẻ về công nghệ nói chung và đặc biệt là liên quan đến lĩnh vực mạng!