Jaki jest dobry sposób na przetestowanie przepustowości... - KH1165

Najczęściej zadawane pytania

Jaki jest dobry sposób na przetestowanie przepustowości VPN?
 

Testowanie przepustowości VPN za pomocą zdalnego udziału plików zwykle nie jest dobrym pomysłem z dwóch powodów:

Pierwszym powodem jest sam protokół udostępniania plików. Protokóły udostępniania plików, takie jak SMB, AFP lub NFS, zostały zaprojektowane dla sieci lokalnych, które są szybkie, niezawodne i mają bardzo niskie opóźnienia. Internet z kolei jest wolny (przynajmniej połączenie z nim), zawodny i ma bardzo wysokie opóźnienia. Aby uzyskać realistyczne wyniki, musisz użyć protokołu, który został zoptymalizowany do takiej sytuacji, takiego jak HTTP lub FTP.

Drugim powodem jest implementacja protokołu udostępniania plików. Obecnie większość udziałów plików korzysta z SMB, protokołu udostępniania plików systemu Windows. Apple ma własną implementację tego protokołu, ale nie jest ona dobra. Podczas gdy implementacja SMB 3.x jest już słaba, implementacja SMB 1.x/2.x (tryb kompatybilności) jest okropna i z kilku powodów macOS często powraca do tego trybu kompatybilności. Testując lokalny udział plików NAS, uzyskaliśmy 28 MB/s przy użyciu SMB 3 i tylko 18 MB/s przy użyciu SMB 1, w porównaniu z 50 MB/s przy użyciu AFP.

Jeśli masz Maca po stronie zdalnej, bardzo łatwo jest skonfigurować serwer benchmarkowy HTTP. Wszystko, co musisz zrobić, to otworzyć standardową aplikację „Terminal” (użyj Spotlight, aby ją znaleźć), a następnie uruchomić następujący zestaw poleceń (każde polecenie potwierdzane jest przez Return/Enter):

mkdir /tmp/www-bench
cd /tmp/www-bench
dd count=1048576 bs=1024 if=/dev/random of=1GiB.dat
php -S 0.0.0.0:8080

Pierwsze polecenie tworzy nowy katalog, drugie wchodzi do tego katalogu, trzecie tworzy plik danych o pojemności 1 GiB wypełniony danymi losowymi, a ostatnie uruchamia prosty serwer HTTP, który udostępnia zawartość bieżącego katalogu na porcie 8080. Teraz użytkownicy VPN mogą po prostu otworzyć ten adres w Safari (lub innej przeglądarce):

http://a.b.c.d:8080/1GiB.dat

Gdzie „a.b.c.d” to adres IP Maca, na którym właśnie wpisałeś powyższe polecenia. Obserwując prędkość transferu w przeglądarce, możesz dobrze ocenić możliwości swojego VPN-u. Oczywiście jest to ograniczone wieloma czynnikami, takimi jak szybkość lokalnego połączenia internetowego, szybkość zdalnego połączenia internetowego i moc obliczeniowa bramy VPN (która zwykle jest znacznie mniejsza niż moc obliczeniowa Maca).

Aby posprzątać po teście, ponownie aktywuj okno terminala i naciśnij CTRL+C, aby zatrzymać serwer HTTP, a następnie uruchom następujące dwa polecenia:

cd
rm -r /tmp/www-bench