Một mô-đun hạt nhân đã được giới thiệu có thể tăng tốc đáng kể OpenVPN

Các nhà phát triển gói mạng riêng ảo OpenVPN đã giới thiệu mô-đun hạt nhân ovpn-dco, có thể tăng tốc đáng kể hiệu suất VPN. Mặc dù thực tế là mô-đun này vẫn đang được phát triển chỉ dành cho nhánh linux-next và ở trạng thái thử nghiệm, nhưng nó đã đạt đến mức độ ổn định cho phép nó được sử dụng để đảm bảo hoạt động của dịch vụ OpenVPN Cloud.

So với cấu hình dựa trên giao diện điều chỉnh, việc sử dụng mô-đun ở phía máy khách và máy chủ sử dụng mật mã AES-256-GCM giúp có thể đạt được thông lượng tăng gấp 8 lần (từ 370 Mbit/s lên 2950 Mbit /S). Khi chỉ sử dụng mô-đun ở phía máy khách, thông lượng tăng gấp ba lần đối với lưu lượng đi và không thay đổi đối với lưu lượng đến. Khi chỉ sử dụng mô-đun ở phía máy chủ, thông lượng tăng gấp 4 lần đối với lưu lượng truy cập đến và 35% đối với lưu lượng truy cập đi.

Một mô-đun hạt nhân đã được giới thiệu có thể tăng tốc đáng kể OpenVPN

Khả năng tăng tốc đạt được bằng cách chuyển tất cả các hoạt động mã hóa, xử lý gói và quản lý kênh liên lạc sang phía nhân Linux, giúp loại bỏ chi phí liên quan đến chuyển đổi ngữ cảnh, giúp tối ưu hóa công việc bằng cách truy cập trực tiếp vào API nhân bên trong và loại bỏ việc truyền dữ liệu chậm giữa các nhân và không gian người dùng (mã hóa, giải mã và định tuyến được thực hiện bởi mô-đun mà không gửi lưu lượng truy cập đến bộ xử lý trong không gian người dùng).

Cần lưu ý rằng tác động tiêu cực đến hiệu suất VPN chủ yếu là do các hoạt động mã hóa tiêu tốn nhiều tài nguyên và sự chậm trễ do chuyển đổi ngữ cảnh gây ra. Các phần mở rộng của bộ xử lý như Intel AES-NI đã được sử dụng để tăng tốc độ mã hóa, nhưng các chuyển đổi ngữ cảnh vẫn là một nút thắt cổ chai cho đến khi ovpn-dco ra đời. Ngoài việc sử dụng các hướng dẫn do bộ xử lý cung cấp để tăng tốc độ mã hóa, mô-đun ovpn-dco còn đảm bảo rằng các hoạt động mã hóa được chia thành các phân đoạn riêng biệt và được xử lý ở chế độ đa luồng, cho phép sử dụng tất cả các lõi CPU có sẵn.

Các hạn chế triển khai hiện tại sẽ được giải quyết trong tương lai bao gồm chỉ hỗ trợ cho chế độ AEAD và 'không' cũng như mật mã AES-GCM và CHACHA20POLY1305. Hỗ trợ DCO dự kiến ​​sẽ được đưa vào bản phát hành OpenVPN 2.6, dự kiến ​​vào quý 4 năm nay. Mô-đun này hiện được hỗ trợ trong máy khách OpenVPN3 Linux thử nghiệm beta và các bản dựng thử nghiệm của máy chủ OpenVPN cho Linux. Một mô-đun tương tự, ovpn-dco-win, cũng đang được phát triển cho nhân Windows.

Nguồn: opennet.ru

Thêm một lời nhận xét