Định hình lưu lượng OpenVPN: Giao diện nào nhìn thấy nó?
Giới hạn tốc độ, xếp hàng công bằng và ưu tiên ứng dụng cần thông tin gói khác nhau. Hãy quyết định giai đoạn nào nhìn thấy nó trước khi viết một quy tắc mà bộ định hình sẽ không bao giờ khớp.
Đi qua bốn bước kiểm tra: bạn muốn giới hạn điều gì, gói nào mang thông tin nhận diện điều đó, giao diện nào bộ định hình có thể thấy, và bộ định tuyến chịu được gì trong khi mã hóa. Bộ định tuyến đi kèm cả trang OpenVPN lẫn trang băng thông, và việc cả hai cùng tồn tại không chứng minh gì về bất kỳ trang nào. Thứ tự quan trọng, vì một quy tắc viết cho sai gói sẽ không bao giờ khớp, dù tốc độ của nó có đúng đến đâu.
Hãy bắt đầu từ mục tiêu: giới hạn một thiết bị, chia sẻ dung lượng công bằng, hoặc ưu tiên một ứng dụng. Mỗi mục tiêu cần một cách khớp khác nhau.
Đặt tên mục tiêu trước quy tắc
Giới hạn theo thiết bị cần khớp với địa chỉ của thiết bị đó, địa chỉ này chỉ tồn tại bên trong đường hầm. Sự công bằng giữa các luồng cạnh tranh cần một hàng đợi mà tất cả cùng chia sẻ, không phải một quy tắc cho mỗi máy chủ. Ưu tiên ứng dụng cần thứ gì đó nhận diện ứng dụng, đây là điều khó nhất trong ba khi mã hóa loại bỏ các tiêu đề bên trong khỏi tầm nhìn. Việc viết mục tiêu ra trước cho bạn biết cần dữ kiện nào và có thể lấy nó ở đâu.
Một giới hạn hoạt động trên lưu lượng WAN trực tiếp không phải bằng chứng rằng cùng máy chủ đó được bao phủ bên trong đường hầm. Quy tắc có thể đang khớp với một địa chỉ không bao giờ xuất hiện trong tiêu đề mà bộ định hình nhìn thấy.
Bên trong đường hầm hay bên ngoài
Với một ứng dụng khách VPN do bộ định tuyến sở hữu, nhiều luồng LAN di chuyển bên trong một kênh vận chuyển được mã hóa. Trước khi đóng gói, bộ định tuyến vẫn thấy nguồn và đích bên trong, nên chính sách gắn ở giai đoạn đó có thể phân loại theo thiết bị. Sau khi đóng gói, thiết bị thông thường chỉ thấy kết nối bên ngoài, và việc khớp với cổng VPN không nói gì về thiết bị nào chịu trách nhiệm. Chính dữ kiện đó quyết định quy tắc thuộc về đâu.
Các nền tảng khác nhau ở cách phơi bày điều này. Một số cung cấp bộ định hình xếp hàng và phân loại trên giao diện đường hầm; số khác coi bộ giới hạn là quy tắc giao diện hoạt động giống nhau với lưu lượng VPN và không VPN; một số làm cả hai với khả năng khác nhau. Hãy đọc tài liệu của chính phần sụn cho giao diện mà nó hỗ trợ thay vì sao chép tên giao diện từ hướng dẫn của nhà sản xuất khác.
Xác định nơi địa chỉ vẫn còn khả dụng, nơi diễn ra việc dịch địa chỉ và hàng đợi nào thực sự kiểm soát nút cổ chai.
Ba chính sách, ba loại bằng chứng
Giới hạn tốc độ được chứng minh bằng một lần truyền bền vững từ thiết bị bị giới hạn trong khi thiết bị khác truyền cùng lúc. Chia sẻ công bằng được chứng minh bằng hai luồng đạt tốc độ tương đương thay vì một luồng bị bỏ đói, đây là một phép đo khác. Ưu tiên ứng dụng được chứng minh bằng một tác vụ tương tác vẫn phản hồi trong khi truyền hàng loạt, và bằng việc kiểm tra xem bộ phân loại có nhận ra luồng hay không. Mỗi chính sách cần quan sát riêng, và không chính sách nào được chứng minh bằng một trang cấu hình.
Việc phân loại đáng bị nghi ngờ đặc biệt. Khớp với cổng mã hóa bên ngoài không thể khôi phục danh tính của từng ứng dụng bên trong, nên một quy tắc trông như ưu tiên một ứng dụng có thể trên thực tế đang ưu tiên mọi thứ từ đường hầm đó. Hãy đọc bộ đếm của quy tắc, không phải ý định của nó.
Đo khối lượng công việc được mã hóa, không phải khối lượng trần
Định hình, phân loại và mã hóa cạnh tranh cho một CPU, và tăng tốc phần cứng có thể đưa lưu lượng đi vòng qua đúng những quy tắc và bộ đếm bạn đang theo dõi. Một con số thông lượng từ bài kiểm tra định tuyến đơn giản nói rất ít về thiết bị dưới khối lượng công việc được mã hóa và định hình. Hãy kiểm tra cả hai chiều, vài ứng dụng khách đại diện và một tác vụ tương tác nhỏ song song với lần truyền hàng loạt. Khả năng phản hồi khi có tải quan trọng hơn con số đỉnh trên một liên kết nhàn rỗi.
Đưa các ngoại lệ vào phép đo: lưu lượng cần bỏ qua đường hầm, cả hai họ địa chỉ nếu cả hai cùng hoạt động, và điều gì xảy ra khi đường hầm ngừng hoạt động. Một chính sách chỉ cư xử hợp lý khi đường hầm khỏe mạnh là nửa chính sách.
Viết đặc tả thành ba dòng: khớp lưu lượng, điểm thực thi và khối lượng công việc đã đo. OpenVPN cộng QoS không phải là đặc tả.