Introduciuse un módulo do núcleo que pode acelerar significativamente OpenVPN

Os desenvolvedores do paquete de rede privada virtual OpenVPN presentaron o módulo do núcleo ovpn-dco, que pode acelerar significativamente o rendemento da VPN. A pesar de que o módulo aínda se está a desenvolver só coa rama linux-next e ten estado experimental, xa alcanzou un nivel de estabilidade que permite empregalo para garantir o funcionamento do servizo OpenVPN Cloud.

En comparación coa configuración baseada na interface tun, o uso dun módulo nos lados do cliente e do servidor mediante o cifrado AES-256-GCM permitiu acadar un aumento de 8 veces no rendemento (de 370 Mbit/s a 2950 Mbit). /s). Ao usar o módulo só no lado do cliente, o rendemento aumentou por tres para o tráfico de saída e non cambiou para o tráfico de entrada. Ao usar o módulo só no lado do servidor, o rendemento aumentou 4 veces para o tráfico de entrada e un 35 % para o tráfico de saída.

Introduciuse un módulo do núcleo que pode acelerar significativamente OpenVPN

A aceleración conséguese movendo todas as operacións de cifrado, procesamento de paquetes e xestión de canles de comunicación ao lado do núcleo de Linux, o que elimina a sobrecarga asociada ao cambio de contexto, permite optimizar o traballo accedendo directamente ás API do núcleo interno e elimina a transferencia lenta de datos entre o núcleo. e espazo de usuario (o cifrado, descifrado e enrutamento realízao o módulo sen enviar tráfico a un controlador no espazo de usuario).

Nótese que o impacto negativo no rendemento da VPN é causado principalmente por operacións de cifrado con uso intensivo de recursos e atrasos causados ​​polo cambio de contexto. Utilizáronse extensións de procesadores como Intel AES-NI para acelerar o cifrado, pero os cambios de contexto seguiron sendo un pescozo de botella ata a chegada de ovpn-dco. Ademais de utilizar as instrucións proporcionadas polo procesador para acelerar o cifrado, o módulo ovpn-dco tamén garante que as operacións de cifrado se dividan en segmentos separados e se procesen en modo multiproceso, o que permite o uso de todos os núcleos de CPU dispoñibles.

As limitacións actuais de implementación que se abordarán no futuro inclúen soporte para os modos AEAD e "ningunha" e os cifrados AES-GCM e CHACHA20POLY1305. Está previsto que o soporte DCO se inclúa no lanzamento de OpenVPN 2.6, programado para o cuarto trimestre deste ano. O módulo é compatible actualmente no cliente Linux OpenVPN4 de proba beta e nas compilacións experimentais do servidor OpenVPN para Linux. Tamén se está a desenvolver un módulo similar, ovpn-dco-win, para o núcleo de Windows.

Fonte: opennet.ru

Engadir un comentario