Linux
OpenVPN - TCP 사용 시 속도가 느릴 때
구리z
2018. 3. 12. 18:05
개요
OpenVPN 기본 설정을 사용해 TCP VPN 터널링(Site-To-Site) 구축 후, 파일전송을 해보면 속도가 지나치게 느린 경우가 생긴다. 자세한 설명은 이 블로그를 참고하면 된다. 요약하면 windows size가 너무 작아 이 부분 설정이 필요하다.
설정 1. window size 조절
서버와 클라이언트 양 쪽에 해당 설정을 추가하고 연결을 맺는다. 클라이언트 설정을 강제하지 않으려면 push로 시작하는 설정을 삭제해도된다.
sndbuf 0
rcvbuf 0
push "sndbuf 393216"
push "rcvbuf 393216"
설정 2. comp-lzo 삭제
comp-lzo가 설정 돼있으면 CPU 사용량이 늘어나면서 속도가 느려질 수 있으니 속도 향상을 위해서는 비활성화 하도록 하자.
설정 3. socket-flags TCP_NODELAY
OpenVPN 설정 문서에 보면 TCP 환경 구성시 성능 향상을 위해 추천한다고 적혀있다.
결과
테스트 결과, 설정 전에 초당 2~3메가 정도 전송속도가 나왔는데 초당 20~30메가 정도로 눈에 띄는 속도 향상이 있었다.
참고
https://community.openvpn.net/openvpn/wiki/Gigabit_Networks_Linux
https://hamy.io/post/0003/optimizing-openvpn-throughput/