OPNsense là một trong những firmware tường lửa mạnh mẽ hàng đầu hiện nay, cung cấp hàng loạt tính năng ưu việt mà các bộ định tuyến do nhà cung cấp dịch vụ Internet (ISP) cấp thường không có. Một trong những tính năng nổi bật đó là Traffic Shaping – điều tiết lưu lượng mạng. Dù nghe có vẻ xa lạ, nhưng đây lại là một công cụ cực kỳ giá trị giúp cải thiện đáng kể hiệu suất mạng gia đình hoặc văn phòng nhỏ của bạn, đặc biệt khi bạn sở hữu đường truyền băng thông rộng tốc độ cao. Với một kết nối Internet có thể vượt qua 1Gbps, việc điều tiết lưu lượng có thể mang lại hiệu suất tổng thể vượt trội ngay từ phía tường lửa. Phần tuyệt vời nhất? Tính năng này cực kỳ dễ cấu hình trong OPNsense.
Traffic Shaping là gì? Nó cải thiện hiệu suất mạng của bạn như thế nào?
Hãy hình dung mạng nội bộ (LAN) của bạn có hai máy tính đang hoạt động cùng lúc. Một thiết bị đang phát video YouTube trực tuyến, trong khi thiết bị còn lại đang thực hiện cuộc gọi video. Hai thiết bị này sẽ cùng chia sẻ băng thông có sẵn, cả trong mạng LAN lẫn khi đi qua tường lửa. Điều mà nhiều người dùng có thể không biết là tất cả lưu lượng này có thể gây ra các vấn đề về hiệu suất ngay trong mạng nội bộ của bạn. Đây chính là lúc Traffic Shaping phát huy tác dụng lớn thông qua các quy tắc và việc phân bổ không gian băng thông hợp lý.
Traffic Shaping (hay còn gọi là Smart Queue Management – Quản lý hàng đợi thông minh trên một số bộ định tuyến) bao gồm ba thành phần chính:
- Pipes (Ống dẫn): Đây là phần đầu tiên và có lẽ là quan trọng nhất của Traffic Shaping. Các ống dẫn này được cấu hình với giới hạn băng thông tối đa, ví dụ như 50 Mbps. Chúng được sử dụng để điều hướng lưu lượng đến và đi từ các thiết bị.
- Queues (Hàng đợi): Thành phần này cho phép bạn ưu tiên lưu lượng bên trong một ống dẫn cụ thể. Chẳng hạn, bạn có thể ưu tiên lưu lượng chơi game hơn các cuộc gọi video.
- Rules (Quy tắc): Các quy tắc sẽ điều chỉnh ứng dụng, dịch vụ hoặc thiết bị nào được ưu tiên và/hoặc bị giới hạn. Bằng cách kết hợp cả ba, chúng ta có thể tạo ra một giải pháp điều tiết lưu lượng mạnh mẽ.
Cách thức hoạt động của Traffic Shaping là trì hoãn một cách hiệu quả các gói tin nhất định để ưu tiên cho những gói tin được chỉ định là quan trọng thông qua các quy tắc, từ đó đưa chúng vào hàng đợi để xử lý trong ống dẫn. Hãy hình dung nó giống như việc xếp hàng chờ một trò chơi giải trí. Chúng ta muốn tách các gói tin xếp hàng bình thường để truy cập dịch vụ ra khỏi những gói tin được cấp quyền “Fast Pass”. Mọi gói tin đều được xử lý kịp thời, nhưng các thiết bị và cổng được ưu tiên sẽ được xử lý trước tiên. Nếu bạn thường xuyên chơi game, bạn có thể cấu hình OPNsense để xử lý các gói tin liên quan đến game trước.
Điều này có thể mang lại tác động tích cực đến độ trễ (latency) của mạng, vì mục tiêu của chúng ta là tránh hiện tượng bufferbloat càng nhiều càng tốt.
Bufferbloat là gì? Tại sao chỉ số này lại quan trọng như ping cao?
Bufferbloat là tình trạng thiết bị mạng, thường là tường lửa hoặc bộ định tuyến của bạn, đệm (buffer) quá nhiều dữ liệu, gây ra độ trễ không mong muốn. Mặc dù có thể khó nhận thấy đối với người dùng chỉ đơn thuần lướt web, nhưng bufferbloat có thể gây ra những vấn đề nghiêm trọng khi chơi game trực tuyến hoặc thực hiện các tác vụ nhạy cảm với mạng khác. Trước khi áp dụng bất kỳ cài đặt nào trên OPNsense, mạng LAN và kết nối ISP của tôi có thể dẫn đến xếp hạng Bufferbloat “A” trên Waveform, một kết quả khá tốt.
Có nhiều công cụ để đo độ trễ mạng, bao gồm Speedtest của Ookla và công cụ kiểm tra tốc độ của Waveform. Trong bài viết này, chúng ta sẽ sử dụng Waveform vì nó cung cấp một điểm số cụ thể giúp dễ dàng xác định mức độ cải thiện sau khi điều chỉnh cài đặt OPNsense. Đó chính là điều mà tôi gọi là “chỉ số Bufferbloat”. Bạn sẽ muốn đạt được mức A+ nếu có thể, nhưng nhìn chung, chữ cái càng gần đầu bảng chữ cái (A, B, C…) thì bufferbloat của bạn càng tốt.
Nếu không xử lý các chỉ số bufferbloat thấp hơn (ví dụ D, F), bạn có thể gặp phải tình trạng cuộc gọi video bị giật, cuộc gọi VoIP (bao gồm cả Discord) bị ngắt kết nối hoặc treo, và việc chơi game nhiều người chơi trực tuyến sẽ là một thách thức lớn. Bạn đã bao giờ thử chơi Liên Minh Huyền Thoại với độ trễ cao chưa? Thực sự rất khó chịu. May mắn thay, với OPNsense, việc thực hiện vài thay đổi trên giao diện quản trị web có thể tạo ra sự khác biệt lớn.
Đánh giá Bufferbloat trước khi cấu hình Traffic Shaping trên OPNsense
Hướng dẫn cấu hình Traffic Shaping trên OPNsense
Hãy cùng tìm hiểu cách cấu hình Traffic Shaping trên tường lửa chạy OPNsense của bạn một cách chuyên nghiệp.
Bước 1: Tạo Pipes (Ống dẫn)
-
Truy cập vào Firewall > Shaper > Pipes.
Giao diện điều khiển OPNsense và menu Shaper của Firewall
-
Nhấp vào biểu tượng +.
Cấu hình các Pipe Traffic Shaping trong OPNsense
-
Bật chế độ advanced mode.
-
Đặt Bandwidth thành tốc độ tải xuống (download) của mạng bạn.
-
Đặt Queue thành “2”.
-
Thay đổi Scheduler type thành “FlowQueue-CoDel”.
-
Nhập một giá trị vào trường FQ-CoDel quantum. (Bạn có thể tính giá trị này bằng cách nhân 300 cho mỗi 100 MB/s băng thông. Ví dụ, với 1Gbps, giá trị sẽ là 3.000).
-
Nhập “Download” vào trường mô tả (description).
Thêm Pipe Download cho Traffic Shaping trong OPNsense
-
Nhấp vào Save.
-
Bây giờ, đến lượt tạo pipe cho tốc độ tải lên (upload). Nhấp lại vào biểu tượng +.
-
Bật chế độ advanced mode.
-
Đặt Bandwidth thành tốc độ tải lên của mạng bạn.
-
Thay đổi Scheduler type thành “FlowQueue-CoDel”.
-
Nhập “Upload” vào trường mô tả.
-
Giữ nguyên các cài đặt còn lại và nhấp vào Save.
Các Pipe Traffic Shaping đã được thêm vào OPNsense
-
Nhấp vào Apply để lưu các thay đổi.
Bước 2: Tạo Queues (Hàng đợi)
-
Nhấp vào tab Queues.
-
Nhấp vào biểu tượng +.
-
Đặt Pipe thành “Download”.
-
Thay đổi mask thành “destination”.
-
Bật CoDel.
-
Nhập “Download Queue” vào trường mô tả.
Thêm hàng đợi Download cho Traffic Shaping trong OPNsense
-
Nhấp vào Save.
-
Nhấp lại vào biểu tượng +.
-
Đặt Pipe thành “Upload”.
-
Thay đổi mask thành “source”.
-
Bật CoDel.
-
Nhập “Upload Queue” vào trường mô tả.
Thêm hàng đợi Upload cho Traffic Shaping trong OPNsense
-
Nhấp vào Save.
Các hàng đợi Traffic Shaping đã được thêm vào OPNsense
-
Nhấp vào Apply.
Bước 3: Tạo Rules (Quy tắc)
-
Cuối cùng, nhấp vào tab Rules.
-
Nhấp vào biểu tượng +.
-
Thay đổi Direction thành “in” (lưu lượng vào).
-
Đặt Target thành “Download Queue”.
-
Nhập “Download Rule” vào trường mô tả.
Thêm quy tắc Traffic Shaping cho luồng vào trong OPNsense
-
Nhấp vào Save.
-
Nhấp lại vào biểu tượng +.
-
Thay đổi Direction thành “out” (lưu lượng ra).
-
Đặt Target thành “Upload Queue”.
-
Nhập “Upload Rule” vào trường mô tả.
-
Nhấp vào Save.
Bây giờ, OPNsense của bạn đã kích hoạt tính năng Traffic Shaping. Bạn có thể chạy lại các bài kiểm tra bufferbloat để xem sự khác biệt đã được tạo ra. Trong trường hợp của tôi, có thể nhận thấy sự cải thiện ngay lập tức về độ trễ với các tác vụ truyền tải dữ liệu đang hoạt động, giảm đáng kể các giá trị trên toàn hệ thống. Mặc dù tôi không đạt được xếp hạng A+ tuyệt đối, nhưng mạng đã trở nên cực kỳ ổn định cho việc chơi game, xem phim và mọi nhu cầu sử dụng Internet khác tại nhà. Phương pháp này là một giải pháp tổng thể, áp dụng cho toàn bộ lưu lượng mạng.
Đánh giá Bufferbloat sau khi cấu hình Traffic Shaping trên OPNsense
Mặc dù chúng ta chưa cấu hình bất kỳ ưu tiên cụ thể nào, tôi đã thấy những cải thiện đáng kể nhờ vào cơ chế hàng đợi FQ_CoDel. Với các pipes và queues đã được thiết lập, bạn có thể sử dụng các quy tắc để đặt ưu tiên cho các địa chỉ IP cụ thể, có thể được gán cho các thiết bị hoặc thậm chí các dịch vụ được lưu trữ. Hãy nhớ tính đến các mạng VLAN và mạng khách (guest networks), vì chúng sẽ cần được xử lý riêng biệt trong cùng một giao diện.
Kết luận
Việc tối ưu hóa mạng gia đình hoặc doanh nghiệp nhỏ không còn là một nhiệm vụ phức tạp với sự trợ giúp của OPNsense và tính năng Traffic Shaping mạnh mẽ của nó. Bằng cách thiết lập các “ống dẫn” (Pipes), “hàng đợi” (Queues) và “quy tắc” (Rules) một cách cẩn thận, bạn có thể kiểm soát lưu lượng mạng, giảm thiểu tình trạng “bufferbloat” khó chịu và cải thiện đáng kể trải nghiệm trực tuyến của mình. Từ chơi game mượt mà hơn, các cuộc gọi video không bị gián đoạn cho đến việc duyệt web nhanh chóng, Traffic Shaping trên OPNsense mang lại hiệu suất mạng ổn định và đáng tin cậy hơn.
Hãy bắt tay vào cấu hình ngay hôm nay và biến OPNsense thành người bạn đồng hành tốt nhất của bạn trong thế giới mạng.
Logo của OPNsense, một hệ điều hành tường lửa mã nguồn mở
OPNsense
Người bạn đồng hành tuyệt vời trong thế giới mạng của bạn.