Internet tezligini o'lchash zonasini ishlab chiqish

Internet tezligini o'lchash zonasini ishlab chiqish
Barcha Habra foydalanuvchilariga xayrli kun.

Men doimo Habré-da Malinka-da u yoki bu funksiyaning rivojlanishi haqida maqolalarni o'qiyman. Men o'z ishimni shu yerda baham ko'rishga qaror qildim.

Sana oldin

Men kabel televideniesi va Internetga ulanish xizmatlarini ko'rsatadigan kompaniyada ishlayman. Va bunday kompaniyalarda bo'lgani kabi, men vaqti-vaqti bilan tarif rejasining shartnomada ko'rsatilgan narsalarga mos kelmasligi haqida shikoyatlarni eshitaman. Yoki foydalanuvchi "kabel orqali" past tezlikdan, keyin ma'lum xizmatlarning yuqori pinglari haqida, ba'zida kunning ma'lum vaqtlarida Internetning to'liq yo'qligi haqida shikoyat qiladi. Ko'pincha, bunday shikoyatlar so'rovlar to'plamida tugaydi, bunga asoslanib, xodimlardan biri ishlaydigan noutbuk bilan "saytga" boradi, unda barcha o'lchovlar olinadi. Va, tez-tez, hamma narsa tezlik bilan yaxshi ekanligi ayon bo'ladi. Va past tezlik, aslida, mobil telefonda, wi-fi orqali, balkonda. Xo'sh, yoki shunga o'xshash narsa.

Afsuski, abonentga borish mumkin emas, masalan, soat 21:37 da, u eng past tezlikka ega. Axir xodimlarning ish vaqti cheklangan. Routerni almashtirish hech qanday ta'sir ko'rsatmaydi, chunki... Mamlakatimizda Wi-Fi uchun chastota diapazoni achinarli darajada tartibsiz.

rekord uchun — Belarus Respublikasidagi davlat provayderi foydalanish uchun taqdim etilgan barcha qurilmalarda Wi-Fi-ni majburiy ravishda yoqadi va har bir qurilmadan ByFly SSID-ni uzatadi. Abonentda Internet xizmati bo'lmasa ham, faqat uy telefoni. Bu qo'shimcha sotish uchun qilingan. Siz ushbu operatordan kartani kioskda xarid qilishingiz, ByFly nomli istalgan nuqtaga ulanishingiz va kartadagi maʼlumotlarni kiritish orqali Internet xizmatlarini olishingiz mumkin. Shaharlarning deyarli 100% qamrovi va xususiy sektor va qishloq joylarining sezilarli darajada qamrab olinishi hisobga olinsa, ulanish nuqtasini topish muammo emas.

Tashqi aloqa kanallarimiz kuzatuvlari shuni ko'rsatadiki, ma'lum bir o'tkazish qobiliyati zaxirasi mavjud. Va abonentlar mavjud kanallarni jami, hatto shoshilinch vaqtda ham iste'mol qilmaydi. Biz bu borada juda jiddiymiz. Turli xizmatlar va turli tezlikni o'lchash serverlaridan foydalanish qiziqarli natijalarga olib keldi. Ma’lum bo‘lishicha, barcha xizmatlar birdek foydali emas... Ayniqsa, kechki payt. Va siz ularga aniq ishonmasligingiz kerak. Xuddi shu Ookla tarmog'ining ko'pgina operatorlari keng aloqa kanallariga ega emas yoki orqaga qarab ishlaydi. Bu shuni anglatadiki, kechqurun ko'pincha halol natijaga erishish deyarli mumkin emas. Ha, va magistrallar gunohkor bo'lib chiqadi. Misol uchun, Yaponiyada tezlikni o'lchashga urinishlar juda halokatli natijalarni ko'rsatadi...

Asosiy qaror

Internet tezligini o'lchash zonasini ishlab chiqish
Surat faqat illyustrativ maqsadlarda.

Ikkita tezlikni boshqarish serveri joylashtirildi. Birinchisi LibreSpeed, ikkinchisi - OOKLA tomonidan tezlik testi. Har ikkala xizmat ko'rsatkichlari solishtirildi. Axir biz Ooklada to'xtashga qaror qildik, chunki... abonentlarning 90% gacha ushbu xizmatdan foydalanadi.

Keyinchalik, foydalanuvchilar va xodimlar uchun tarmoq ichida va tashqarisida tezlikni o'lchash bo'yicha ko'rsatmalar yozildi. Bular. Sinov boshlanganda sukut bo'yicha tarmoq ichidagi tezlik o'lchanadi. Server bizning bosh tomonimizda joylashgan va Ookla yechimi sukut bo'yicha abonentga eng yaqin serverni tanlaydi. Shu tarzda biz o'zimizning ma'lumotlarni uzatish tarmog'ining ishlashini tekshiramiz.

Mamlakat ichidagi tezlikni o'lchash uchun (bizda barcha operatorlar va mamlakat ichidagi asosiy ma'lumotlar markazlarini birlashtirgan aloqa operatorlari uchun alohida tarmoq mavjud), siz mamlakat ichida provayderni tanlashingiz va ikkinchi o'lchovni o'tkazishingiz kerak. Biz empirik ravishda kunning istalgan vaqtida ko'proq yoki kamroq barqaror natijalar beradigan bir nechta serverlarni aniqladik va ularni ko'rsatmalarda tavsiya etilganidek sanab o'tdik.

Xo'sh, tashqi aloqa kanallari uchun shunga o'xshash harakatlar. Biz tezkor serverlarda katta kanallarga ega yirik operatorlarni topdik va ularni tavsiyanomalarda yozdik (“Moskva - Rostelekom” va “Riga - Baltcom” uzr, lekin men ushbu tugunlarni tegishli raqamlarni olishni tavsiya qilaman. Shaxsan men ~870 megabitgacha bo'lgan tezlikni oldim. bu serverlar eng yuqori soatlarda).

Nima uchun bunday qiyinchiliklarni so'rayapsiz? Hammasi juda oddiy. Biz yetarlicha qulay vositani oldik, u qobiliyatli qo‘llarda tarmoqlarimizda muammolar bor-yo‘qligini, respublika tarmog‘ida muammolar bor-yo‘qligini yoki magistral bilan bog‘liq muammolar mavjudligini aniqlash imkonini beradi. Agar biror kishi biron bir xizmatdan yuklab olish tezligining pastligidan shikoyat qilsa, biz abonentning kanali tezligini o'lchashimiz va keyin uni xizmatdan olgani bilan solishtirishimiz mumkin. Shartnomada ko'rsatilgan kanalni halollik bilan ajratayotganimizni ko'rsatish o'rinli. Tezlikdagi bunday farqning mumkin bo'lgan sabablarini ham tushuntirishimiz mumkin.

Ikkilamchi yechim

Kechqurun/kunduzi tezlikni pasaytirish masalasi ochiq qolmoqda. Abonentning uyida bo'lmasdan, xuddi shu narsani qanday qilish kerak? Gigabit tarmog'iga ega arzon bitta taxtali kartani oling va undan zond deb ataladigan narsani yarating. Qurilma ma'lum vaqt oralig'ida kabel bo'ylab tezlikni o'lchashi kerak. Yechim ochiq manba bo'lishi kerak, iloji boricha oddiy bo'lishi kerak, o'lchov natijalarini ko'rish uchun qulay boshqaruv paneli. Qurilma iloji boricha arzon bo'lishi kerak, shunda uni osongina almashtirish va qo'rqmasdan abonent bilan n kun davomida qoldirish mumkin.

Реализация

Internet tezligini o'lchash zonasini ishlab chiqish

BananaPI (model M1) asos sifatida olindi. Aslida, bu tanlovning ikkita sababi bor.

  1. Gigabit port.
  2. U shunchaki tungi stolda yotardi.

Keyinchalik, python mijozidan foydalanishga qaror qilindi eng tez-tez tezlikni o'lchash uchun backend sifatida Ookla xizmati tomonidan Speedtest uchun. Kutubxona Pythonping ping tezligini o'lchash uchun. Xo'sh, va administrator paneli uchun php. Idrok qilish qulayligi uchun men foydalandim yuklash.

Raspberry resurslari moslashuvchan emasligi sababli nginx+php-fpm+sqlite3 kombinatsiyasidan foydalanilgan. Og'irligi va ortiqchaligi tufayli MySQL-dan voz kechmoqchi edim. Men Iperf bilan bog'liq savolni kutmoqdaman. Mahalliy yo'nalishlardan boshqa yo'nalishlarda foydalanishning iloji yo'qligi sababli uni tark etishga to'g'ri keldi.

Dastlab men bu saytda ko'pchilikning yo'lidan yurdim. Speedtest-cli mijozi o'zgartirildi. Ammo keyin biroz o'ylanib, bu fikridan voz kechdi. Men asl mijozning imkoniyatlaridan foydalanadigan o'z ishchimni yozdim.

Pinglarni tahlil qilish uchun men shunchaki alohida ishlov beruvchi yozdim. O'lchovdan o'rtacha qiymatni olamiz. Ping vositasi ham IP manzili, ham domen nomini boshqarishi mumkin.

Men asenkron ishga erisha olmadim. Bu holatda, ayniqsa, kerak emas.

Natijalarni baholash uchun boshqaruv paneli juda minimalist bo'lib chiqdi.

Internet tezligini o'lchash zonasini ishlab chiqishFig. Sinov natijalari bilan asosiy boshqaruv oynasi

Internet tezligini o'lchash zonasini ishlab chiqishFig. Sinov sozlamalari

Internet tezligini o'lchash zonasini ishlab chiqish
Fig. Speedtest serverlari ro'yxatini yangilang

Ana xolos. G'oya tizzamda, bo'sh vaqtimda amalga oshirildi. Dala sinovlari hali boshlanmagan. Ammo biz yaqin kelajakda prototiplarni ishga tushirishni rejalashtirmoqdamiz. Undan u yerdagi provayderlar ham, provayderlarning mijozlari ham foydalanishlari mumkin. Hech kim sizni kechayu kunduz uyda o'lchash uchun bezovta qilmaydi. Esda tutishingiz kerak bo'lgan yagona narsa shundaki, agar siz Internetda faol bo'lsangiz yoki biror narsani yuklab olsangiz, o'lchov haqiqiydan past bo'ladi. Shunday qilib, ideal holda, probni tarmoqdagi yagona trafik iste'molchisi sifatida qoldirishingiz kerak.

PS: iltimos, kod sifati uchun meni tanqid qilmang. Men hech qanday tajribasiz o'zimni o'rgatganman. uchun manba kodi GitHub. Tanqid qabul qilinadi.

Manba: www.habr.com

a Izoh qo'shish