Mikä on hyvä tapa testata VPN:n suorituskykyä? - KH1165

Usein kysytyt kysymykset

Mikä on hyvä tapa testata VPN:n suorituskykyä?
 

VPN-läpäisykyvyn testaaminen etäisen tiedostojakopalvelun avulla ei yleensä ole hyvä idea kahdesta syystä:

Ensinnäkin itse tiedostojakoprotokolla. Tiedostojakoprotokollat, kuten SMB, AFP tai NFS, on suunniteltu paikallisiin verkkoihin, jotka ovat nopeita, luotettavia ja joilla on hyvin alhainen latenssi. Internet puolestaan on hidas (ainakin siihen liittyminen), epäluotettava ja sillä on erittäin korkea latenssi. Saadaksesi realistisia tuloksia, sinun on käytettävä protokollaa, joka on optimoitu tällaiseen tilanteeseen, kuten HTTP tai FTP.

Toiseksi tiedostojakoprotokollan toteutus. Useimmat järjestelmät käyttävät nykyään SMB:tä, Windows-tiedostojen jakoprotokollaa. Applen oma toteutus tästä protokollasta ei kuitenkaan ole hyvä. Vaikka SMB 3.x -toteutus on jo heikko, SMB 1.x/2.x -toteutus (yhteensopivuustila) on kauhea, ja useista syistä macOS siirtyy usein tähän yhteensopivuustilaan. Testatessamme paikallisella NAS-tiedostojakopalvelulla saimme 28 Mt/s SMB 3:lla ja vain 18 Mt/s SMB 1:llä, kun taas samalla palvelimella AFP:llä saavutimme 50 Mt/s.

Jos sinulla on Mac etäisellä puolella, on helppo pystyttää sopiva testausympäristö. Avaa vain vakiosovellus "Pääte" (käytä Spotlightia löytääksesi sen) ja suorita sitten seuraava komentojoukko (jokainen komento vahvistetaan Return/Enter-näppäimellä):

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

Ensimmäinen komento luo uuden hakemiston, toinen siirtyy tähän hakemistoon, kolmas luo sinne 1 GiB:n datatiedoston ja neljäs käynnistää yksinkertaisen HTTP-palvelimen, joka tarjoaa nykyisen hakemiston sisällön portissa 8080. VPN Tracker -sivulla riittää nyt syöttämään seuraava osoite Safariin (tai muuhun selaimeen):

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

Missä "a.b.c.d" on sen Macin IP-osoite, johon aiemmin syötit komennot. Selaimeen tulevan datanopeuden näyttämisen avulla saat hyvän käsityksen siitä, kuinka paljon VPN:n läpäisykyky on. Tietenkin tämä riippuu monista tekijöistä, mutta tärkeimmät ovat paikallinen internetyhteys, etä-VPN-yhdyskäytävän yhteys ja tietysti VPN-yhdyskäytävälle käytettävissä oleva laskentateho (jälkimmäinen on usein huomattavasti pienempi kuin jopa hitaan Macin laskentateho).

Testien jälkeen testijärjestelmän siivoamiseksi riittää, että aktivoit pääteikkunan, painat CTRL+C lopettaaksesi HTTP-palvelimen ja suoritat sitten seuraavat kaksi komentoa:

cd
rm -r /tmp/www-bench