Lesson 04 — QoS & Quản lý lưu lượng

Ba module tương tác: mô phỏng hàng đợi ưu tiên (Priority Queue), mô phỏng token bucket, và biểu đồ jitter so sánh luồng đều vs rung.

1. Mô phỏng hàng đợi ưu tiên (Priority Queue)

Gói tin của 4 loại traffic đến cùng lúc. Bấm "Gửi batch" để nạp gói vào hàng đợi, rồi bấm "Phục vụ 1 gói" để thấy hàng ưu tiên cao được phục vụ trước. Khi có tắc nghẽn, gói Bulk bị trễ dài nhất.

4 mức ưu tiên (cao → thấp): ■ P1 VoIP   ■ P2 Video   ■ P3 Web   ■ P4 Bulk
Hàng đợi (chờ phục vụ)
P1 VoIP
P2 Video
P3 Web
P4 Bulk
Thống kê đợi:
Link đầu ra
Log phục vụ (thứ tự)
Log xuất hiện khi bấm "Phục vụ"...
Quan sát starvation: Bấm "Gửi batch" nhiều lần rồi "Phục vụ tất cả". Gói P4 Bulk phải đợi đến khi P1+P2+P3 hết. Nếu P1/P2 liên tục có gói mới đến, P4 có thể chờ mãi (starvation). Giải pháp: WFQ (đảm bảo tỷ lệ tối thiểu).

2. Mô phỏng Token Bucket

Kéo slider để điều chỉnh tốc độ token (r)kích thước bucket (B). Gửi các gói với kích thước tùy chỉnh để xem gói nào được cho qua ngay, gói nào bị giữ (shaping), và sau bao lâu được phục vụ.

100 KB/s2500 KB/s5 MB/s
1 KB50 KB100 KB
1 KB25 KB50 KB
Nhấn "Gửi gói" để bắt đầu mô phỏng...
Log token bucket xuất hiện ở đây...
Nguyên tắc hoạt động: Mỗi giây bucket nhận r KB token mới (tối đa B KB). Mỗi gói cần tiêu đúng bằng kích thước gói token. Nếu đủ token → gói đi qua ngay. Nếu thiếu → gói phải đợi (thêm thời gian = thiếu / r giây).

3. Biểu đồ Jitter — Luồng đều vs Luồng rung

So sánh hai luồng gói tin: Luồng đều (inter-arrival time ổn định) và Luồng rung (jitter cao). Kéo slider để thay đổi mức jitter và xem tác động đến đường biểu diễn.

Hoàn hảoTrung bìnhTệ (40 ms)

Luồng đều (jitter = 0 ms)

Luồng rung (jitter = 0 ms)

Biểu đồ: inter-arrival time từng gói (ms). Đường đứt nét = trung bình. Gạch đỏ = ngưỡng jitter buffer 30 ms.
Jitter buffer: Receiver giữ gói thêm vài ms để "làm phẳng" luồng đến. Jitter buffer lớn → giảm gián đoạn nhưng tăng latency tổng. VoIP thường dùng adaptive jitter buffer: tự điều chỉnh 20–80 ms tùy mạng. Xem tính toán chi tiết trong bài tập Bài 1 (README).