Interneta ātruma mērÄ«Å”anas zonas izstrāde

Interneta ātruma mērÄ«Å”anas zonas izstrāde
Labdien visiem Habra lietotājiem.

Es pastāvÄ«gi lasu rakstus par HabrĆ© par Ŕīs vai citas Malinka funkcionalitātes attÄ«stÄ«bu. Es nolēmu Å”eit dalÄ«ties ar saviem darbiem.

Aizvēsture

Strādāju uzņēmumā, kas sniedz kabeļtelevÄ«zijas un interneta piekļuves pakalpojumus. Un, kā jau Ŕādos uzņēmumos notiek, periodiski dzirdu sÅ«dzÄ«bas par tarifu plāna neatbilstÄ«bu lÄ«gumā norādÄ«tajam. Vai nu lietotājs sÅ«dzas par zemu ātrumu ā€œpa kabeliā€, pēc tam par augstu noteiktu pakalpojumu ping, dažreiz par pilnÄ«gu interneta neesamÄ«bu noteiktos diennakts laikos. Bieži vien Ŕādas sÅ«dzÄ«bas nonāk pieprasÄ«jumu pÅ«lÄ«, uz kura pamata kāds no darbiniekiem dodas ā€œuz vietasā€ ar strādājoÅ”u portatÄ«vo datoru, uz kura tiek veikti visi mērÄ«jumi. Un bieži vien izrādās, ka ar ātrumu viss ir kārtÄ«bā. Un mazais ātrums patiesÄ«bā ir mobilajā telefonā, caur wi-fi, uz balkona. Nu vai kaut kas lÄ«dzÄ«gs.

Diemžēl nav iespējams aiziet pie abonenta, piemēram, pulksten 21:37, kad viņam ir mazākie ātrumi. Galu galā darbinieku darba laiks ir ierobežots. MarÅ”rutētāja nomaiņai nav nekādas ietekmes, jo... Wi-Fi frekvenču diapazons mÅ«su valstÄ« ir nožēlojami pārblÄ«vēts.

Par ierakstu ā€” valsts nodroÅ”inātājs Baltkrievijas Republikā piespiedu kārtā ieslēdz wi-fi visās lietoÅ”anai paredzētajās ierÄ«cēs un pārraida ByFly SSID no katras ierÄ«ces. Pat ja abonentam nav interneta pakalpojuma, bet tikai mājas tālrunis. Tas tika darÄ«ts papildu pārdoÅ”anas nolÅ«kā. JÅ«s varat iegādāties karti pie Ŕī operatora kioskā, izveidot savienojumu ar jebkuru punktu ar nosaukumu ByFly un, ievadot datus no kartes, saņemt interneta pakalpojumus. Ņemot vērā gandrÄ«z 100% pilsētu pārklājumu un ievērojamo privātā sektora un lauku teritoriju pārklājumu, pieslēguma vietas atraÅ”ana nav problēma.

MÅ«su ārējo sakaru kanālu novērojumi liecina, ka ir noteikta joslas platuma rezerve. Un abonenti nepatērē pieejamos kanālus kopumā pat sastrēgumstundās. Mēs esam ļoti nopietni Å”ajā jautājumā. Dažādu pakalpojumu un dažādu ātruma mērÄ«Å”anas serveru izmantoÅ”ana radÄ«ja interesantus rezultātus. Izrādās, ne visi pakalpojumi ir vienlÄ«dz noderÄ«gi... It Ä«paÅ”i vakaros. Un jums noteikti nevajadzētu viņiem uzticēties. Daudziem viena un tā paÅ”a Ookla tÄ«kla operatoriem nav plaÅ”u saziņas kanālu vai tie darbojas savstarpēji. Tas nozÄ«mē, ka vakarā bieži vien ir gandrÄ«z neiespējami iegÅ«t godÄ«gu rezultātu. Jā, un lielceļi izrādās grēcÄ«gi. Piemēram, mēģinājumi izmērÄ«t ātrumu Japānā uzrāda ārkārtÄ«gi postoÅ”us rezultātus...

Primārais lēmums

Interneta ātruma mērÄ«Å”anas zonas izstrāde
Fotogrāfija ir paredzēta tikai ilustratīviem nolūkiem.

Tika izvietoti divi ātruma kontroles serveri. Pirmais ir LibreSpeed, otrais - Ātruma tests no OOKLA. Tika salÄ«dzināta abu pakalpojumu darbÄ«ba. Galu galā mēs nolēmām apstāties Ooklā, jo... lÄ«dz 90% abonentu izmanto Å”o pakalpojumu.

Pēc tam tika uzrakstītas instrukcijas lietotājiem un darbiniekiem, kā izmērīt ātrumu tīklā un ārpus tā. Tie. Kad pārbaude sākas, pēc noklusējuma tiek mērīts ātrums tīklā. Serveris atrodas mūsu galvas punktā, un Ookla risinājums pēc noklusējuma atlasa abonentam vistuvāko serveri. Tādā veidā mēs pārbaudām sava datu pārraides tīkla darbību.

Lai mērÄ«tu ātrumu valsts iekÅ”ienē (mums ir atseviŔķs tÄ«kls telekomunikāciju operatoriem, kas apvieno visus operatorus un galvenos datu centrus valstÄ«), jums ir jāizvēlas pakalpojumu sniedzējs valstÄ« un jāveic otrs mērÄ«jums. Mēs esam empÄ«riski identificējuÅ”i vairākus serverus, kas sniedz vairāk vai mazāk stabilus rezultātus jebkurā diennakts laikā, un esam tos uzskaitÄ«juÅ”i, kā ieteikts instrukcijās.

Nu, lÄ«dzÄ«gas darbÄ«bas ārējiem komunikācijas kanāliem. Atradām lielus operatorus ar lieliem kanāliem uz speedtest serveriem un ierakstÄ«jām ieteikumos (atvainojos ā€œMoskva - Rostelecomā€ un ā€œRÄ«ga - Baltcomā€, bet ieteikÅ”u Å”os mezglus, lai iegÅ«tu adekvātus skaitļus. PersonÄ«gi saņēmu lÄ«dz ~870 megabitiem no plkst. Å”os serverus pÄ«Ä·a stundās).

Kāpēc, jÅ«s jautājat, Ŕādas grÅ«tÄ«bas? Viss ir ļoti vienkārÅ”i. Esam saņēmuÅ”i diezgan ērtu rÄ«ku, kas spējÄ«gās rokās ļauj noteikt, vai ir problēmas mÅ«su tÄ«klos, vai ir problēmas republikas tÄ«klā, vai ir problēmas ar mugurkaulu. Ja cilvēks sÅ«dzas par zemu lejupielādes ātrumu no kāda pakalpojuma, mēs varam izmērÄ«t abonenta kanāla ātrumu un pēc tam salÄ«dzināt to ar to, ko viņŔ saņem no pakalpojuma. Un ir pamatoti parādÄ«t, ka mēs godÄ«gi pieŔķiram lÄ«gumā noteikto kanālu. Mēs varam arÄ« izskaidrot iespējamos iemeslus Ŕādai ātrumu atŔķirÄ«bai.

Sekundārais risinājums

Atklāts paliek jautājums par ātruma kritumu vakaros/dienā. Kā to paÅ”u izdarÄ«t, neatrodoties abonenta mājās? Paņemiet lētu vienas plates karti ar gigabitu tÄ«klu un izveidojiet no tās tā saucamo zondi. IerÄ«cei ir jāveic ātruma mērÄ«jumi pa kabeli noteiktā laika intervālā. Risinājumam jābÅ«t atvērtam pirmkodam, pēc iespējas nepretenciozam, ar ērtu admin paneli mērÄ«jumu rezultātu apskatei. IerÄ«cei jābÅ«t pēc iespējas lētākai, lai to varētu viegli nomainÄ«t un bez bailēm atstāt pie abonenta uz n dienām.

IevieŔana

Interneta ātruma mērÄ«Å”anas zonas izstrāde

Par pamatu tika ņemts BananaPI (modelis M1). PatiesÄ«bā Å”ai izvēlei ir divi iemesli.

  1. Gigabitu ports.
  2. Tas vienkārÅ”i gulēja naktsskapÄ«.

Tālāk tika nolemts izmantot python klientu speedtest-cli Ookla pakalpojumam Speedtest kā aizmugursistēma ātruma mērÄ«Å”anai. bibliotēka Pythonping lai izmērÄ«tu ping ātrumu. Nu un php admin panelim. Uztveres atviegloÅ”anai izmantoju bootstrap.

Sakarā ar to, ka Raspberry resursi nav elastīgi, tika izmantota kombinācija nginx+php-fpm+sqlite3. Es gribēju atteikties no MySQL tā smaguma un liekuma dēļ. Es paredzu jautājumu par Iperf. No tā bija jāatsakās, jo nebija iespējams to izmantot citos, nevis vietējos virzienos.

Sākotnēji es sekoju daudzu ceļu Å”ajā vietnē. MainÄ«ts speedtest-cli klients. Bet tad, nedaudz padomājis, viņŔ no Ŕīs idejas atteicās. Es uzrakstÄ«ju savu darbinieku, kas izmanto sākotnējā klienta iespējas.

Lai analizētu pingus, es vienkārÅ”i uzrakstÄ«ju atseviŔķu apstrādātāju. Mēs ņemam vidējo vērtÄ«bu no mērÄ«juma. Ping rÄ«ks var apstrādāt gan IP adresi, gan domēna nosaukumu.

Man nesanāca asinhrons darbs. Šajā gadījumā tas nav īpaŔi vajadzīgs.

Rezultātu novērtÄ“Å”anas administratora panelis izrādÄ«jās diezgan minimālistisks.

Interneta ātruma mērÄ«Å”anas zonas izstrādeAtt. Galvenais administratora logs ar testÄ“Å”anas rezultātiem

Interneta ātruma mērÄ«Å”anas zonas izstrādeAtt. Testa iestatÄ«jumi

Interneta ātruma mērÄ«Å”anas zonas izstrāde
Att. Atjauniniet Speedtest serveru sarakstu

Tas ir viss. Ideja tika Ä«stenota uz ceļiem, manā brÄ«vajā laikā. Lauka pārbaudes vēl nav sākuŔās. Bet mēs plānojam tuvākajā nākotnē laist klajā prototipus. To var izmantot gan pakalpojumu sniedzēji, gan pakalpojumu sniedzēju klienti. Neviens netraucē veikt mērÄ«jumus mājās visu diennakti. VienÄ«gais, kas jums jāatceras, ir tas, ka, aktÄ«vi sērfojot internetā vai kaut ko lejupielādējot, mērÄ«jums bÅ«s zemāks par reālo. Tātad ideālā gadÄ«jumā zonde ir jāatstāj tÄ«klā kā vienÄ«gais satiksmes patērētājs.

PS: lÅ«dzu, nekritizējiet mani par koda kvalitāti. Esmu autodidakts bez pieredzes. Avota kods priekÅ” GitHub. Kritika tiek pieņemta.

Avots: www.habr.com

Pievieno komentāru