Nguyên lý hoạt động của Switch (2.1.2-Bài 2)

Switch hoạt động dựa trên 3 nguyên lý chính: học địa chỉ MAC, chuyển tiếp gói tin, và lọc gói tin. Ngoài ra, Switch còn sử dụng cơ chế flooding khi không biết địa chỉ MAC đích, và lưu trữ thông tin trong bảng địa chỉ MAC. Switch có thể hoạt động ở các chế độ Store-and-Forward hoặc Cut-through.

2.1.2.1. Học địa chỉ MAC (MAC Learning)

a. Khái niệm

Học địa chỉ MAC là quá trình Switch ghi nhận địa chỉ MAC nguồn của các gói tin nhận được vào bảng địa chỉ MAC, kèm theo số cổng mà gói tin đến. Quá trình này giúp Switch biết được thiết bị nào đang kết nối ở cổng nào.

b. Cơ chế hoạt động

Khi một gói tin đến một cổng của Switch:

  1. Switch đọc địa chỉ MAC nguồn trong gói tin.

  2. Switch kiểm tra bảng địa chỉ MAC:

    • Nếu địa chỉ MAC nguồn chưa có trong bảng → Switch thêm địa chỉ MAC và số cổng vào bảng.

    • Nếu địa chỉ MAC nguồn đã có → Switch cập nhật lại thời gian (aging time).

  3. Switch lưu thông tin vào bảng MAC Address Table.

c. Ví dụ minh họa

Ban đầu, bảng MAC trống.

Máy A (MAC: AA:AA:AA:AA:AA:AA) kết nối cổng Fa0/1 gửi gói tin đến Máy B.
→ Switch học: MAC AA:AA:AA:AA:AA:AA thuộc cổng Fa0/1.

Máy B (MAC: BB:BB:BB:BB:BB:BB) kết nối cổng Fa0/2 gửi gói tin trả lời Máy A.
→ Switch học: MAC BB:BB:BB:BB:BB:BB thuộc cổng Fa0/2.

Bảng MAC sau khi học:

Địa chỉ MACCổngThời gian (Aging)
AA:AA:AA:AA:AA:AAFa0/1300 giây
BB:BB:BB:BB:BB:BBFa0/2300 giây

d. Lưu ý

  • Aging time: Mặc định 300 giây (5 phút). Nếu không có gói tin nào từ MAC đó trong 300 giây, Switch xóa khỏi bảng.

  • Giới hạn: Bảng MAC có giới hạn (thường 8.000 – 16.000 địa chỉ).

  • Bảo mật: Có thể cấu hình Port Security để giới hạn số MAC trên mỗi cổng.

2.1.2.2. Chuyển tiếp gói tin (Forwarding)

a. Khái niệm

Chuyển tiếp gói tin là quá trình Switch gửi gói tin đến đúng cổng đích dựa trên địa chỉ MAC đích trong bảng địa chỉ MAC.

b. Cơ chế hoạt động

Khi một gói tin đến một cổng của Switch:

  1. Switch đọc địa chỉ MAC đích trong gói tin.

  2. Switch tra cứu bảng địa chỉ MAC:

    • Nếu địa chỉ MAC đích có trong bảng → Switch chuyển tiếp gói tin đến đúng cổng tương ứng.

    • Nếu địa chỉ MAC đích không có trong bảng → Switch flooding gói tin đến tất cả các cổng (trừ cổng nhận).

c. Ví dụ minh họa

Bảng MAC:
| MAC | Cổng |
|-----|------|
| AA:AA:AA:AA:AA:AA | Fa0/1 |
| BB:BB:BB:BB:BB:BB | Fa0/2 |

Máy A (Fa0/1) gửi gói tin đến Máy B (BB:BB:BB:BB:BB:BB).
→ Switch tra bảng MAC, thấy BB:BB:BB:BB:BB:BB thuộc Fa0/2.
→ Switch chuyển tiếp gói tin chỉ đến Fa0/2.
→ Các cổng khác không nhận được gói tin.

d. Lưu ý

  • Unicast: Chuyển tiếp đến một cổng duy nhất.

  • Multicast: Chuyển tiếp đến một nhóm cổng.

  • Broadcast: Chuyển tiếp đến tất cả các cổng.

2.1.2.3. Lọc gói tin (Filtering)

a. Khái niệm

Lọc gói tin là quá trình Switch loại bỏ gói tin nếu địa chỉ MAC nguồn và địa chỉ MAC đích cùng thuộc một cổng. Điều này giúp giảm lưu lượng không cần thiết.

b. Cơ chế hoạt động

Khi một gói tin đến một cổng của Switch:

  1. Switch đọc địa chỉ MAC nguồnđịa chỉ MAC đích.

  2. Nếu cả hai địa chỉ MAC cùng thuộc một cổng → Switch loại bỏ gói tin (không chuyển tiếp).

  3. Nếu khác cổng → Switch chuyển tiếp bình thường.

c. Ví dụ minh họa

Máy A (Fa0/1) gửi gói tin đến Máy C (cũng kết nối Fa0/1 qua Hub).
→ Switch thấy MAC nguồn và MAC đích cùng thuộc Fa0/1.
→ Switch lọc, không chuyển tiếp gói tin.

d. Lưu ý

  • Lọc giúp giảm lưu lượng: Không gửi gói tin không cần thiết.

  • Lọc không áp dụng cho broadcast/multicast: Các gói tin này vẫn được flood.

2.1.2.4. Flooding

a. Khái niệm

Flooding là cơ chế Switch gửi gói tin đến tất cả các cổng (trừ cổng nhận) khi không biết địa chỉ MAC đích hoặc khi gói tin là broadcast/multicast.

b. Cơ chế hoạt động

Khi một gói tin đến một cổng của Switch:

  1. Switch đọc địa chỉ MAC đích.

  2. Nếu địa chỉ MAC đích không có trong bảng MAC → Switch flooding.

  3. Nếu gói tin là broadcast (FF:FF:FF:FF:FF:FF) → Switch flooding.

  4. Nếu gói tin là multicast → Switch flooding đến nhóm multicast.

c. Ví dụ minh họa

Bảng MAC chưa có địa chỉ MAC đích.
Máy A (Fa0/1) gửi gói tin đến Máy X (chưa biết ở cổng nào).
→ Switch flooding gói tin đến tất cả các cổng (trừ Fa0/1).
→ Máy X nhận được gói tin, trả lời.
→ Switch học được MAC của Máy X.

d. Lưu ý

  • Flooding có thể gây nghẽn mạng: Nếu có nhiều gói tin flooding.

  • Broadcast storm: Nếu có loop, flooding có thể gây broadcast storm.

  • STP (Spanning Tree Protocol): Ngăn chặn loop, giảm flooding.

2.1.2.5. Bảng địa chỉ MAC (MAC Address Table)

a. Khái niệm

Bảng địa chỉ MAC là bảng lưu trữ địa chỉ MAC của các thiết bị và cổng tương ứng trên Switch. Bảng này được xây dựng thông qua quá trình học địa chỉ MAC.

b. Cấu trúc bảng MAC

STT Địa chỉ MAC Cổng VLAN Loại Aging Time
1 AA:AA:AA:AA:AA:AA Fa0/1 10 Dynamic 300s
2 BB:BB:BB:BB:BB:BB Fa0/2 10 Dynamic 300s
3 CC:CC:CC:CC:CC:CC Fa0/3 20 Dynamic 300s
4 DD:DD:DD:DD:DD:DD Fa0/4 20 Static

c. Các loại entry trong bảng MAC

LoạiMô tảCách tạo
DynamicTự động học từ gói tin.Switch tự học.
StaticCấu hình thủ công.Người quản trị cấu hình.
SecureCấu hình Port Security.Người quản trị cấu hình.

d. Cách xem bảng MAC

Trên Cisco Switch:

Switch# show mac address-table

Kết quả:

text
Mac Address Table
-------------------------------------------
Vlan    Mac Address       Type        Ports
----    -----------       --------    -----
10      AA:AA:AA:AA:AA:AA DYNAMIC     Fa0/1
10      BB:BB:BB:BB:BB:BB DYNAMIC     Fa0/2
20      CC:CC:CC:CC:CC:CC DYNAMIC     Fa0/3

e. Lưu ý

  • Aging time: Mặc định 300 giây.

  • Giới hạn: Bảng MAC có giới hạn (8.000 – 16.000).

  • Bảo mật: Cấu hình Port Security để giới hạn MAC.

  • Xóa bảng MAC: clear mac address-table dynamic.

2.1.2.6. Chế độ Store-and-Forward, Cut-through

a. Khái niệm

Switch có thể hoạt động ở các chế độ chuyển tiếp khác nhau:

  • Store-and-Forward: Nhận toàn bộ gói tin, kiểm tra lỗi, rồi mới chuyển tiếp.

  • Cut-through: Chuyển tiếp ngay khi đọc được địa chỉ MAC đích.

  • Fragment-free: Kết hợp cả hai, đọc 64 byte đầu tiên rồi chuyển tiếp.

b. So sánh các chế độ

STT Tiêu chí Store-and-Forward Cut-through Fragment-free
1 Độ trễ Cao Thấp Trung bình
2 Kiểm tra lỗi Không Có (một phần)
3 Độ tin cậy Cao Thấp Trung bình
4 Tốc độ Chậm Nhanh Trung bình
5 Ứng dụng Mạng cần tin cậy Mạng cần tốc độ Cân bằng

c. Chi tiết từng chế độ

1. Store-and-Forward

  • Cơ chế: Switch nhận toàn bộ gói tin vào bộ đệm, kiểm tra lỗi (CRC), rồi mới chuyển tiếp.

  • Ưu điểm:

    • Kiểm tra lỗi, loại bỏ gói tin lỗi.

    • Độ tin cậy cao.

  • Nhược điểm:

    • Độ trễ cao.

    • Tốn bộ đệm.

  • Ứng dụng: Mạng cần độ tin cậy cao.

2. Cut-through

  • Cơ chế: Switch đọc 6 byte đầu tiên (địa chỉ MAC đích) và chuyển tiếp ngay.

  • Ưu điểm:

    • Độ trễ thấp.

    • Tốc độ nhanh.

  • Nhược điểm:

    • Không kiểm tra lỗi.

    • Có thể chuyển tiếp gói tin lỗi.

  • Ứng dụng: Mạng cần tốc độ cao.

3. Fragment-free

  • Cơ chế: Switch đọc 64 byte đầu tiên (đủ để phát hiện collision fragment) rồi chuyển tiếp.

  • Ưu điểm:

    • Cân bằng giữa tốc độ và độ tin cậy.

    • Loại bỏ hầu hết gói tin lỗi.

  • Nhược điểm:

    • Không kiểm tra toàn bộ gói tin.

  • Ứng dụng: Mạng cân bằng.

d. Ví dụ minh họa

Gói tin có kích thước 1500 byte.

Store-and-Forward:
- Nhận toàn bộ 1500 byte.
- Kiểm tra CRC.
- Chuyển tiếp.
- Độ trễ: Cao.

Cut-through:
- Đọc 6 byte đầu (MAC đích).
- Chuyển tiếp ngay.
- Độ trễ: Thấp.

Fragment-free:
- Đọc 64 byte đầu.
- Chuyển tiếp.
- Độ trễ: Trung bình.

e. Lưu ý

  • Mặc định: Hầu hết Switch hiện đại dùng Store-and-Forward.

  • Cấu hình: Một số Switch cho phép chọn chế độ.

  • Hiệu năng: Cut-through nhanh hơn nhưng kém tin cậy hơn.

BẢNG TÓM TẮT NGUYÊN LÝ HOẠT ĐỘNG CỦA SWITCH

STT Nguyên lý Mô tả Kết quả
1 Học địa chỉ MAC Ghi nhận MAC nguồn vào bảng Bảng MAC đầy đủ
2 Chuyển tiếp gói tin Gửi đến đúng cổng đích Tiết kiệm băng thông
3 Lọc gói tin Loại bỏ gói tin cùng cổng Giảm lưu lượng
4 Flooding Gửi đến tất cả cổng khi không biết đích Đảm bảo gói tin đến đích
5 Bảng MAC Lưu trữ MAC và cổng Quản lý thiết bị
6 Store-and-Forward Nhận toàn bộ, kiểm tra lỗi Tin cậy cao
7 Cut-through Chuyển tiếp ngay Tốc độ cao

CÂU HỎI ÔN TẬP

  1. Trình bày quá trình học địa chỉ MAC của Switch.

  2. Phân biệt chuyển tiếp gói tin và lọc gói tin.

  3. Flooding là gì? Khi nào Switch flooding?

  4. Trình bày cấu trúc bảng địa chỉ MAC. Các loại entry trong bảng.

  5. So sánh chế độ Store-and-Forward và Cut-through.