Ìgbà méjì, ọ̀nà kan, àwọn nọ́mbà sì yàtọ̀ ní ìlọ́po mẹ́ta. Ọ̀nà náà kò yí padà láàrín wọn. Ohun tó yí padà ni ìdíwọ̀n: ojú-ìwé ìdánwò tó ń yan olùpín nípa ibi tí ó dà bí ẹ ti wà, iye ìṣàn tó ń pinnu bóyá ìbẹ̀rẹ̀ lọra kan tàbí mẹ́fà ló ń kún pàáù mọ́, àti àkókò tó kúrú tó láti parí kí a tó lo ọ̀nà náà dáadáa. Àwọn ìdánwò ìyára kò jẹ́ aṣiṣe, ṣùgbọ́n wọ́n ń dá ìdáhùn fún ìbéèrè tó kúnjú ju èyí tí àwọn ènìyàn ń béèrè lọ́wọ́ wọn.

Àdírẹ́sì ìjáde tuntun ń yí ibi tí ìdánwò ń lọ sí padà

Ọ̀pọ̀ ojú-ìwé ìdánwò ń yan olùpín ìdíwọ̀n fúnra wọn, wọ́n sì ń yàn án ní apá kan nípa wíwo ibi tí ìsopọ̀ rẹ dà bí ó ti ń bọ̀. Tan ọ̀nà náà, orílẹ̀-èdè tí ó dà bí ẹ wà yóò yí padà, nítorí náà olùpín tí a yàn yóò yí padà, ìfiwéra náà sì ń bo ọ̀nà méjì tó yàtọ̀ sí ọ̀gá méjì tó yàtọ̀.

Èsì náà kì í ṣe ìdíwọ̀n VPN rárá. Ìdíwọ̀n ọ̀nà rẹ sí olùpín tí ìwọ kò yàn ni, ìyàtọ̀ láàrín ìgbà méjì náà sì lè jẹ́ kí ìsopọ̀ olùpín yẹn jẹ gàba ju ohunkóhun tí ọ̀nà náà ṣe.

Fi ibi tó ń lọ sí múlẹ̀ kí o tó yí ohunkóhun mìíràn padà. Gbogbo irinṣẹ́ tó ṣeé gbẹ́kẹ̀lé ń jẹ́ kí o yan olùpín kedere, nígbà tí kò bá ṣe bẹ́ẹ̀, ojú-ìwé èsì sábà ń dárúkọ èyí tí a lò, èyí tó tó láti ṣàkíyèsí pé ìgbà méjì náà kò ṣeé fi wé. Jẹ́rìí sí ohun tí ojú-ìwé náà rí kí o tó gbẹ́kẹ̀lé yíyàn rẹ̀:

curl -sS https://ipinfo.io/json | grep -E '"ip"|"org"|"country"'

Bí orílẹ̀-èdè bá yí padà láàrín ìgbà méjì náà, ohunkóhun tí ìdánwò yàn lẹ́yìn náà yóò yí padà pẹ̀lú. Kọ ìjáde tí a ṣàkíyèsí lẹ́gbẹ̀ẹ́ èsì kọ̀ọ̀kan, ìdàrúdàpọ̀ yóò sì pòórá.

Ìbẹ̀rẹ̀ tó lọra máa ń parí lẹ́yìn tí ọ̀pọ̀ jùlọ ìdánwò kúkúrú bá ti parí

Ìsopọ̀ TCP kì í bẹ̀rẹ̀ ní ìyára ọ̀nà náà. Ó ń bẹ̀rẹ̀ pẹ̀lú fèrèsé ìpọ́nju tó kéré, ó ń fi ìlọ́po méjì pọ̀ sí i ní gbogbo ìrìn àjò padà, ó sì ń dé agbára ọ̀nà náà lẹ́yìn ọ̀pọ̀ ìrìn àjò. Ìdánwò ìṣẹ́jú mẹ́wàá lórí ọ̀nà tó ní ìdúró gun lè lo apá pàtàkì kan nínú ìgbésí ayé rẹ̀ nínú gọ̀gà yẹn.

Ìdí nìyẹn tí ọ̀nà tó ní ìdúró gun ń gba àmì tó burú ju bó ṣe yẹ nínú ìdánwò kúkúrú, àti ìdí tí ìgbà tó gùn ń sábà sọ nọ́mbà tó ga láìsí ìyípadà ìṣètò kankan. ìlàlẹ̀ ìṣàn RFC 6349 ń ṣàlàyé èyí kedere, ìdí nìyẹn tí àwọn ìdíwọ̀n ṣeé gbáralé ń gùn tó láti dé ipò tó dúró ṣinṣin. Ìgbà ìṣẹ́jú márùn-ún lórí ọ̀nà sátúláìtì ń díwọ̀n ẹ̀rọ ìmúyára, kì í ṣe ọ̀nà.

Wo àwọn ìpele ìsopọ̀ náà dípò gbẹ́kẹ̀lé nọ́mbà kan ṣoṣo. Curl ń sọ ìpele kọ̀ọ̀kan lọ́tọ̀ọ̀tọ̀, nítorí náà ìwọ lè rí bóyá àkókò ń lọ sí ìfọwọ́sowọ́pọ̀, sí gọ̀gà, tàbí sí gbígbé:

curl -sS -o /dev/null -w 'dns=%{time_namelookup} tcp=%{time_connect} tls=%{time_appconnect} total=%{time_total} bytes/s=%{speed_download}\n' \
  https://mirror.example.net/testfile.bin

Ṣe é lẹ́ẹ̀mejì lẹ́sẹẹsẹ sí ibi kan náà. Bí ìgbà kejì bá yára jù, ìwọ ń díwọ̀n gọ̀gà ni, kì í ṣe ọ̀nà, ìfiwéra èyíkéyìí tí ó lo ìgbà kìíní nìkan sì jẹ́ àìdánilójú.

Ìṣàn kan àti ìṣàn mẹ́fà ń díwọ̀n ohun tó yàtọ̀

Ìṣàn TCP kan ń ní ààlà nípa fèrèsé tí ó lè gbé lójú afẹ́fẹ́, èyí tó fẹ́rẹ̀ẹ́ jẹ́ àkókò ìrìn àjò ẹ̀ẹ̀mẹjì ìlọ́po ìyára. Lórí ọ̀nà gígùn, èyí tó pọ̀ ju èyí tí ìṣàn kan yóò lò, nítorí náà ìgbà ìgbàlódé kan ń sọ agbára tó wà ní kùdíẹ̀. Ìṣàn mẹ́fà tó ń lọ lọ́nà kan náà ń kún àlàfo náà, wọ́n sì ń mú nọ́mbà tó tóbi jáde.

iperf3 -c speed.example.net -t 20
iperf3 -c speed.example.net -t 20 -P 6
mtr -rwc 50 speed.example.net

Àwọn nọ́mbà méjèèjì jẹ́ òtítọ́. Nọ́mbà ìṣàn kan ń sọ ohun tí ìgbà ìgbàlódé kan yóò ṣe, èyí tí ẹ̀ka aṣàwákiri sábà ń rí. Nọ́mbà àfonífojì ń sọ ohun tí ọ̀nà náà lè gbé lápapọ̀, èyí tí torrent tàbí ìgbàlódé apá púpọ̀ lè lò. Lílo ọ̀kan bí ẹni pé òmíràn ni ni ọ̀nà tí a ń fi ọ̀nà tó ní ìlera yí padà láìsí ìdí.

Fífi èsì àfonífojì wé èsì ìṣàn kan ni ọ̀nà tó wọ́pọ̀ jù tí àwọn ènìyàn ń gbà parí pé VPN ti dín ìyára wọn lọ́jọ̀. Dọ́gba ọ̀nà náà, kí o tó fi wé. Àmì tó wà nínú àṣẹ kẹta ń fi àyíká tó kù kún un: ọ̀nà tó ní ìrìlẹ̀ gíga yóò fún èsì àìdọ́gba ní àwọn ipò méjèèjì, kò sì sí iye ìṣàn tó ń tún èyí ṣe.

Ìparapọ̀ ń gba àkókò ẹ̀rọ ìṣèròyìn, ìkójọ ń gba báìtì

Àwọn ọ̀nà méjì ń ṣiṣẹ́ lórí gbogbo pákẹ́ẹ̀tì láìka bí ọ̀nà náà ṣe yára. Ìparapọ̀ ń lo ẹ̀rọ ìṣèròyìn fún báìtì kọ̀ọ̀kan, ìkójọ sì ń fi báìtì orí kún un tí ọ̀nà náà ṣì ní láti gbé. Àwọn méjèèjì ń farahàn bí òrùlé, àwọn àmì wọn sì yàtọ̀.

Òrùlé ẹ̀rọ ìṣèròyìn ń farahàn bí pẹ̀tẹ́lẹ̀: ìṣàn ń dákẹ́ gbígbé sókè bí o ti ń fi ìṣàn kún un, ẹ̀rọ ìṣèròyìn ẹ̀rọ náà sì ń ṣiṣẹ́ nígbà tí ọ̀nà náà kò ṣiṣẹ́. Lórí róútà kékeré tàbí fọ́n, èyí sábà ni ààlà gidi, ìdí nìyẹn tí ìlà tó yára ṣì lè fún ọ̀nà tó rẹlẹ̀.

Ìnáwó báìtì kéré ṣùgbọ́n ó dúró ṣinṣin. Orí àfikún túmọ̀ sí ẹrù tó wúlò tó kéré lórí pákẹ́ẹ̀tì kọ̀ọ̀kan, lórí ọ̀nà tó ní ẹ̀yà ìgbékalẹ̀ tó ga jùlọ tí ó dúró, wọ́n tún lè fa ìpínpín tàbí ihò dúdú tó ń farahàn bí ìdúró nínú gbígbé ńlá, kì í ṣe bí ìdíwọ̀n tó lọra.

ObservationLikely mechanismWhat to measure
Throughput flat as streams increaseCPU per packet on one corePer-core utilisation during the test
Fast small transfers, stalled large onesMTU and fragmentationPayload size at which it breaks
Good average, unusable callsQueueing delay behind a full bufferLatency under load

Àwọn mẹ́ta yìí sábà ń dàrú pọ̀ nítorí àwọn olùlò ń ṣàpèjúwe gbogbo wọn bí VPN tó lọra. Ẹ̀rọ tó tóbi jù ló ń dáhùn sí ẹ̀rọ tí ó tóbi, ẹ̀rọ kejì nìkan ló ń dáhùn sí MTU tó kéré, ẹ̀rọ kẹta nìkan ló ń dáhùn sí ìṣàkóso ìlà.

Kọ ọ̀nà náà sínú àkọsílẹ̀

Èsì tó yẹ láti tọ́jú ń dárúkọ ẹ̀rọ, nẹ́tíwọ́kì àwọlé, ìjáde, olùpín ìdíwọ̀n, ìtọ́sọ́nà, iye ìṣàn àti àkókò. Láìsí wọn, a kò lè fi nọ́mbà méjì wé, tíkẹ́ẹ̀tì tó ní nọ́mbà kan sì jẹ́ ìmọ̀lára ní ti gidi.

Tọ́jú àwọn ìgbà búburú pẹ̀lú. Ẹ̀wẹ̀ tí ìjáde kan ń fa ìdúró ní gbogbo ìgbà ní ìsọfúnni ju ìdíwọ̀n lọ, àwọn ìdúró sì ni ohun tí àwọn ìdíwọ̀n ń fi pamọ́.

Lẹ́yìn náà dán ohun tí ó ṣe pàtàkì fún ọ wò. Bí ibi tó ń lọ sí bá jẹ́ ìgbàlódé ńlá, gbé fáìlì náà kalẹ̀. Bí ibi tó ń lọ sí bá jẹ́ ìpè, díwọ̀n ìdúró lábẹ́ ẹrù dípò ìṣàn ní àkókò ìsinmi, nítorí ọ̀nà lè gba àmì dáadáa nínú ìdánwò ìyára, ó sì ṣì lè jẹ́ kí gbogbo ìpàdé di aláìgbọ́.

Àwọn àpilẹ̀kọ tó jọra