Я запускаю сервер OpenVPN (2.3.4) на Debian Jessie по UDP (порт 1194) с TAP. Ссылка на интернет 100Мбит / с (симметричная).
Клиент запускает TunnelBlick (3.7.0 с OpenVPN 2.3.14) на MacBookPro 2015 за жилым кабельным модемом со скоростью 100 Мбит / с и 5 Мбит / с.
Я постоянно отслеживаю потерю пакетов как внутри, так и снаружи VPN между сервером и клиентом, используя Smokeping. Вот два графика:
За пределами VPN: потеря пакетов 0,05% (график Smokeping)
Внутри VPN: потеря пакетов 5,26% (график Smokeping)
Smokeping работает на сервере VPN и настроен для проверки общедоступного IP-адреса (вне графа VPN) и внутреннего IP-адреса VPN (внутри графа VPN).
Чем можно объяснить эту разницу?
Еще несколько деталей:
- ЦП на клиенте всегда ниже, чем на 50% и намного ниже, чем на сервере
- Использование полосы пропускания на сервере обычно составляет от 10% до 30%.
- К серверу подключено 10-20 одновременных клиентов, в основном Linux-боксы, и я наблюдаю эту проблему только на двух клиентах, работающих под управлением macOS Sierra
- Иногда, когда TunnelBlick перезапускается на клиенте, потеря пакетов внутри VPN совпадает с тем, что я вижу за пределами VPN (~ 0%), но иногда она сохраняется на протяжении перезапусков TunnelBlick.
Есть ли очевидные вещи, которые вы бы протестировали на этой установке?