Raspberry PI 4 Model B 2GB VPN Throughput
라즈베리파이를 사서 Raspbian을 설치해서 가장 먼저 설치한 건, SoftEther VPN 서버다. SoftEther VPN서버 하나로 다양한 플랫폼(L2TP, OpenVPN, SoftEtherVPN Client, SoftEtherVPN Server Cascade, MS-SSTP, …)에서 접속할 수 있고 멀티쓰레드 처리이기 때문에 싱글스레드 기반인 OpenVPN 보다 절대적으로 Throughput은 높을 수 밖에 없다. RADIUS서버를 통한 인증또한 지원하며, 패킷필터링 (VPN Client간 통신 차단, 그룹을 지정하여 그룹 클라이언트 간 통신만 허용한다거나.. DHCP Snooping 혹은 DHCP광고 패킷의 차단등 보안기능)이 강력한 오픈소스 VPN 플랫폼이다.
TEST (SoftEtherVPN, iperf3)
테스트를 하면서, UDP 가속모드에서는 암호화가 지정한 암호화가 아닌 다른 방법(CHACHA20_POLY1305)으로 암호화 되는 것으로 보여서, UDP 속도측정은 단 한번만 하기로 하였다.
UDP Acceleration (304Mbps)
AES128-SHA (263Mbps)
AES128-GCM-SHA256 (296Mbps)
AES256-GCM-SHA384 (256Mbps)
DHE-RSA-AES128-GCM-SHA256 (298Mbps)
DHE-RSA-AES256-GCM-SHA384 (265Mbps)
ECDHE-RSA-AES128-GCM-SHA256 (300Mbps)
ECDHE-RSA-AES256-GCM-SHA384 (264Mbps)
VPN without Encryption (OH NO)
UDP Acceleration (462Mbps)
TCP (579Mbps)
Conclusion
Throughput | ||
NO CRYPTO (UDP) | 462 Mbps | CHACHA20-POLY1305? |
NO CRYPTO (TCP) | 579 Mbps | |
UDP Acceleration | 304 Mbps | CHACHA20-POLY1305 |
AES128-SHA | 263 Mbps | |
AES128-GCM-SHA256 | 296 Mbps | |
AES256-GCM-SHA384 | 265 Mbps | |
DHE-RSA-AES128-GCM-SHA256 | 298 Mbps | |
DHE-RSA-AES256-GCM-SHA384 | 265 Mbps | |
ECDHE-RSA-AES128-GCM-SHA256 | 300 Mbps | |
ECDHE-RSA-AES256-GCM-SHA384 | 264 Mbps |
SoftEther VPN은 멀티스레딩으로 프로그램이 설계되었다. 그러나 OpenVPN의 경우, 단일스레드 프로그램이기 때문에 OpenVPN의 경우 이보다 성능이 안나올 지도 모른다.
재미있는 점은, ARM에는 AES 가속 (AES-NI)가 부재라고 하는데 이 정도 성능이 나오는 것은 부재라고 믿기 힘들 다는 것이다.