Image default
Máy Tính

Traffic Shaping trong OPNsense: Hướng dẫn chi tiết để tối ưu mạng và giảm Bufferbloat

OPNsense là một phần mềm firmware tường lửa mạnh mẽ, sở hữu nhiều tính năng vượt trội mà các bộ định tuyến do nhà mạng cung cấp thường không có. Một trong những tính năng đó chính là Traffic Shaping – quản lý và định hình lưu lượng mạng. Nghe có vẻ phức tạp, nhưng tính năng này có thể cực kỳ giá trị trong việc cải thiện mạng gia đình của bạn, đảm bảo hiệu suất ổn định, đặc biệt khi bạn sở hữu đường truyền internet tốc độ cao. Với một kết nối có thể vượt qua 1Gbps, Traffic Shaping vẫn có thể nâng cao hiệu suất tổng thể ngay từ phía tường lửa của bạn. Điều tuyệt vời nhất là việc cấu hình nó trong OPNsense lại vô cùng dễ dàng.

Traffic Shaping là gì và nó cải thiện mạng như thế nào?

Giả sử bạn có hai máy tính trong cùng mạng LAN và cả hai đều kết nối Internet. Một máy đang xem video YouTube độ phân giải cao, trong khi máy còn lại đang tham gia cuộc gọi video quan trọng. Lúc này, hai thiết bị sẽ chia sẻ băng thông có sẵn, cả bên trong mạng LAN lẫn sau tường lửa. Điều bạn có thể chưa biết là toàn bộ lưu lượng này có thể gây ra các vấn đề về hiệu suất ngay tại mạng nội bộ của bạn, và đây chính là lúc Traffic Shaping phát huy tác dụng thông qua một số quy tắc và không gian dành riêng trên mạng LAN.

Traffic Shaping (hay còn được biết đến là Smart Queue Management trên một số router) bao gồm ba thành phần chính:

  • Pipes (Đường ống): Là nơi đặt giới hạn băng thông tối đa, ví dụ 50 Mbps. Các đường ống này được dùng để điều hướng lưu lượng đến và đi từ các thiết bị.
  • Queues (Hàng đợi): Cho phép bạn ưu tiên lưu lượng truy cập trong một Pipe. 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 này chi phối ứng dụng, dịch vụ và thiết bị nào được ưu tiên hoặc bị hạn chế.

Sử dụng cả ba thành phần này, chúng ta có thể tạo ra một giải pháp Traffic Shaping cực kỳ hiệu quả. Cơ chế hoạt động của Traffic Shaping là chủ động trì hoãn các gói dữ liệu ít quan trọng hơn, ưu tiên các gói dữ liệu được chỉ định là có độ ưu tiên cao thông qua các quy tắc, từ đó đưa chúng vào một hàng đợi để xử lý trong Pipe. 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 riêng các gói dữ liệu xếp hàng bình thường để truy cập “trò chơi” khỏi những gói dữ liệu mà chúng ta có thể cấp “vé nhanh”. 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 mọi thứ khác. 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 tiên.

Điều này có thể mang lại hiệu quả tích cực cho độ 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.

Người dùng đang cầm bộ định tuyến TP-Link, biểu tượng cho việc thay thế router ISP bằng OPNsenseNgười dùng đang cầm bộ định tuyến TP-Link, biểu tượng cho việc thay thế router ISP bằng OPNsense

Bufferbloat là gì? Tại sao Bufferbloat cao lại gây “lag” tương tự ping?

Bufferbloat là hiện tượng xảy ra khi thiết bị mạng, điển hình là tường lửa hoặc bộ định tuyến, lưu trữ quá nhiều dữ liệu trong bộ đệm, dẫn đến độ trễ không mong muốn. Hiện tượng này có thể không đáng chú ý đối với người dùng chỉ lướt web thông thường, nhưng nó có thể gây ra sự hỗn loạn 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 cho OPNsense, mạng LAN và kết nối ISP của tôi cho ra điểm Bufferbloat là A trên Waveform, một điểm khá tốt.

Có nhiều công cụ để đo độ trễ, 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ác cài đặt OPNsense. Đây chính là điều tôi gọi là “điểm Bufferbloat”. Bạn sẽ muốn đạt được A+ nếu có thể, nhưng nhìn chung, chữ cái càng gần đầu bảng chữ cái thì điểm Bufferbloat của bạn càng tốt.

Nếu không xử lý các điểm số thấp, các cuộc gọi video có thể bị giật, cuộc gọi VoIP (bao gồm cả Discord) có thể bị rớt hoặc treo, và trải nghiệm chơi game nhiều người chơi trực tuyến sẽ trở thành một thử thách lớn. Bạn đã bao giờ thử chơi Liên Minh Huyền Thoại với độ trễ cao chưa? Chắc chắn không hề vui chút nào. May mắn thay, với OPNsense, việc thực hiện một vài thay đổi nhỏ trong bảng điều khiển web admin có thể tạo ra sự khác biệt đáng kể.

Ảnh chụp màn hình điểm Bufferbloat A trên Waveform trước khi cấu hình Traffic Shaping trong OPNsenseẢnh chụp màn hình điểm Bufferbloat A trên Waveform trước khi cấu hình Traffic Shaping trong OPNsense

Hướng dẫn cấu hình Traffic Shaping trong OPNsense

Hãy cùng tìm hiểu các bước để cấu hình Traffic Shaping trên tường lửa chạy OPNsense của bạn. Với hướng dẫn chi tiết này, bạn sẽ nhanh chóng trở thành một chuyên gia Traffic Shaping!

Giao diện Dashboard của OPNsense, thể hiện trạng thái hệ thống và các widget cơ bản của tường lửaGiao diện Dashboard của OPNsense, thể hiện trạng thái hệ thống và các widget cơ bản của tường lửa

Bước 1: Tạo các Pipe (Đường ống Download & Upload)

  1. Đi tới Firewall > Shaper > Pipes.

    Ảnh chụp màn hình giao diện OPNsense, hiển thị đường dẫn Firewall > Shaper để cấu hình Traffic ShapingẢnh chụp màn hình giao diện OPNsense, hiển thị đường dẫn Firewall > Shaper để cấu hình Traffic Shaping

  2. Nhấp vào nút +.

    Giao diện quản lý Pipes trong Traffic Shaper của OPNsense, nơi thêm các đường ống băng thôngGiao diện quản lý Pipes trong Traffic Shaper của OPNsense, nơi thêm các đường ống băng thông

  3. Bật advanced mode (chế độ nâng cao).

  4. Đặt Bandwidth thành tốc độ tải xuống của mạng bạn (ví dụ: 1000 Mbps).

  5. Đặt Queue thành “2”.

  6. Thay đổi Scheduler type thành “FlowQueue-CoDel”.

  7. Nhập giá trị vào trường FQ-CoDel quantum. (Tính toán bằng cách nhân 300 cho mỗi 100 MB/s băng thông. Với 1Gb/s, giá trị sẽ là 3.000.)

  8. Nhập “Download” vào trường mô tả (Description).

    Cửa sổ thêm mới Pipe trong OPNsense, cấu hình băng thông download và Scheduler type FlowQueue-CoDelCửa sổ thêm mới Pipe trong OPNsense, cấu hình băng thông download và Scheduler type FlowQueue-CoDel

  9. Nhấp Save.

  10. Bây giờ, đến lượt Pipe dành cho tải lên (upload). Nhấp lại vào nút +.

  11. Bật advanced mode.

  12. Đặt Bandwidth thành tốc độ tải lên của mạng bạn (ví dụ: 1000 Mbps).

  13. Thay đổi Scheduler type thành “FlowQueue-CoDel”.

  14. Nhập “Upload” vào trường mô tả.

  15. Giữ nguyên các trường còn lại và nhấp Save.

    Danh sách các Pipe Download và Upload đã được cấu hình thành công trong OPNsense Traffic ShaperDanh sách các Pipe Download và Upload đã được cấu hình thành công trong OPNsense Traffic Shaper

  16. Nhấp Apply để áp dụng các thay đổi.

Bước 2: Cấu hình Queues (Hàng đợi Download & Upload)

  1. Nhấp vào tab Queues.

  2. Nhấp vào nút +.

  3. Đặt Pipe thành “Download”.

  4. Thay đổi mask thành “destination”.

  5. Bật CoDel.

  6. Nhập “Download Queue” vào trường mô tả.

    Cửa sổ thêm Download Queue trong OPNsense, cấu hình Pipe là Download và Mask là DestinationCửa sổ thêm Download Queue trong OPNsense, cấu hình Pipe là Download và Mask là Destination

  7. Nhấp Save.

  8. Nhấp vào nút + một lần nữa.

  9. Đặt Pipe thành “Upload”.

  10. Thay đổi mask thành “source”.

  11. Bật CoDel.

  12. Nhập “Upload Queue” vào trường mô tả.

    Cửa sổ thêm Upload Queue trong OPNsense, cấu hình Pipe là Upload và Mask là SourceCửa sổ thêm Upload Queue trong OPNsense, cấu hình Pipe là Upload và Mask là Source

  13. Nhấp Save.

  14. Nhấp Apply để áp dụng các hàng đợi.

    Danh sách các Queue Download và Upload đã được tạo trong OPNsense Traffic ShaperDanh sách các Queue Download và Upload đã được tạo trong OPNsense Traffic Shaper

Bước 3: Thiết lập Rules (Quy tắc Download & Upload)

  1. Cuối cùng, nhấp vào tab Rules.

  2. Nhấp vào nút +.

  3. Thay đổi Direction thành “in” (lưu lượng vào).

  4. Đặt Target thành “Download Queue”.

  5. Nhập “Download Rule” vào trường mô tả.

    Cửa sổ thêm Download Rule trong OPNsense, cấu hình Direction là In và Target là Download QueueCửa sổ thêm Download Rule trong OPNsense, cấu hình Direction là In và Target là Download Queue

  6. Nhấp Save.

  7. Nhấp vào nút + một lần nữa.

  8. Thay đổi Direction thành “out” (lưu lượng ra).

  9. Đặt Target thành “Upload Queue”.

  10. Nhập “Upload Rule” vào trường mô tả.

  11. Nhấp Save.

OPNsense giờ đây sẽ chạy tính năng Traffic Shaping của nó. 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.

Kết quả thực tế sau khi áp dụng Traffic Shaping

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ễ (latency) khi có các gói dữ liệu đang được truyền tải tích cực, giúp giảm giá trị độ trễ trên toàn hệ thống. Mặc dù tôi không đạt được điểm A+ tuyệt đối, nhưng kết nối mạng đã trở nên cực kỳ ổn định, vững chắc cho việc chơi game, xem đa phương tiện và mọi nhu cầu sử dụng Internet khác tại nhà. Phương pháp này đóng vai trò như một giải pháp toàn diện cho hầu hết các tình huống sử dụng.

Ảnh chụp màn hình điểm Bufferbloat A+ trên Waveform sau khi cấu hình Traffic Shaping trong OPNsenseẢnh chụp màn hình điểm Bufferbloat A+ trên Waveform sau khi cấu hình Traffic Shaping trong 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 (FlowQueue-CoDel). Với các Pipe và Queue đã được thiết lập, bạn có thể sử dụng Rules để đặt mức độ ưu tiên cho các địa chỉ IP cụ thể, có thể được gán cho các thiết bị riêng lẻ hoặc thậm chí là các dịch vụ được lưu trữ. Hãy nhớ tính đến các VLAN và mạng khách (guest networks), vì những mạng này sẽ cần được xử lý riêng biệt trong cùng một giao diện.

Thiết bị NAS của Ugreen, minh họa một trong các thiết bị có thể hưởng lợi từ việc tối ưu hóa mạng với OPNsenseThiết bị NAS của Ugreen, minh họa một trong các thiết bị có thể hưởng lợi từ việc tối ưu hóa mạng với OPNsense

Kết luận

Traffic Shaping trong OPNsense là một công cụ cực kỳ mạnh mẽ, giúp người dùng kiểm soát và tối ưu hóa hiệu suất mạng gia đình hoặc văn phòng nhỏ. Bằng cách hiểu rõ khái niệm Pipe, Queue, Rule và đặc biệt là cách chúng giúp giảm thiểu Bufferbloat, bạn có thể biến một kết nối internet “tốt” thành một kết nối “tuyệt vời”, mang lại trải nghiệm trực tuyến mượt mà hơn đáng kể.

Với hướng dẫn chi tiết từng bước trên, bạn đã có thể tự cấu hình Traffic Shaping cơ bản trong OPNsense. Kết quả là mạng của bạn sẽ ít bị giật lag hơn, độ trễ giảm đáng kể, đặc biệt hữu ích cho game thủ, người dùng gọi video hoặc những ai thường xuyên làm việc với các ứng dụng nhạy cảm với băng thông. Đừng ngần ngại thử nghiệm và tinh chỉnh các quy tắc để đạt được hiệu suất tối ưu nhất cho nhu cầu sử dụng cụ thể của bạn.

Nếu bạn có bất kỳ câu hỏi nào về Traffic Shaping hoặc cách tối ưu hóa OPNsense, hãy chia sẻ ý kiến của bạn ở phần bình luận bên dưới!

Related posts

Tản Nhiệt AIO: 4 Điều Bạn Cần Biết Trước Khi Quyết Định Mua Cho PC

Administrator

Đánh giá Perplexity Comet: Liệu Trình Duyệt AI Có Thật Sự Là Tương Lai Của Internet?

Administrator

TPM 2.0 là gì và tại sao Windows 11 yêu cầu? Giải mã chip bảo mật cho tương lai PC

Administrator