Израда зонда за мерење брзине Интернета

Израда зонда за мерење брзине Интернета
Добар дан свим корисницима Хабре.

Стално читам чланке на Хабреу о развоју ове или оне функционалности на Малинки. Одлучио сам да поделим свој рад овде.

praistorija

Радим за компанију која пружа услуге кабловске телевизије и приступа интернету. И, као што се дешава у таквим компанијама, повремено чујем жалбе на неусаглашеност тарифног плана са оним што је наведено у уговору. Корисник се или жали на малу брзину „преко кабла“, затим на високе пингове одређених сервиса, понекад на потпуно одсуство интернета у одређено доба дана. Често такве жалбе заврше у групи захтева, на основу којих неко од запослених одлази „на лице места“ са исправним лаптопом, на коме се врше сва мерења. И, често се испостави да је са брзином све у реду. А мала брзина је заправо на мобилном телефону, преко ви-фи, на балкону. Па, или нешто слично.

Нажалост, није могуће отићи до претплатника, на пример, у 21:37, када има најниже брзине. Уосталом, радно време запослених је ограничено. Замена рутера нема ефекта, јер... Фреквенцијски опсег за ви-фи у нашој земљи је јадно претрпан.

За записник — државни провајдер у Републици Белорусији принудно укључује ви-фи на свим уређајима који су дати за коришћење и емитује БиФли ССИД са сваког уређаја. Чак и ако претплатник нема Интернет услугу, већ само кућни телефон. Ово је урађено ради додатне продаје. Можете купити картицу код овог оператера на киоску, повезати се на било коју тачку под називом БиФли и уносом података са картице добити Интернет услуге. С обзиром на скоро 100% покривеност градова и значајну покривеност приватног сектора и руралних подручја, проналажење тачке везе није проблем.

Посматрања наших екстерних комуникационих канала показују да постоји резерва пропусног опсега. А претплатници не троше укупно доступне канале, чак ни током шпица. Веома смо озбиљни у вези овога. Коришћење различитих сервиса и различитих сервера за мерење брзине довело је до занимљивих резултата. Испоставља се да нису све услуге подједнако корисне... Поготово увече. И не треба им дефинитивно веровати. Многи оператери исте Оокла мреже немају широке комуникационе канале или раде један уз други. То значи да је увече често готово немогуће добити поштен резултат. Да, и аутопутеви се испостављају грешни. На пример, покушаји мерења брзине у Јапану показују изузетно катастрофалне резултате...

Примарна одлука

Израда зонда за мерење брзине Интернета
Фотографија је илустративна

Постављена су два сервера за контролу брзине. Први је ЛибреСпеед, други - Тест брзине од ООКЛА. Упоређен је учинак обе услуге. На крају крајева, одлучили смо да се зауставимо у Оокли јер... до 90% претплатника користи ову услугу.

Затим су написана упутства за кориснике и запослене како да мере брзине унутар и ван мреже. Оне. Када тест почне, подразумевано се мери брзина унутар мреже. Сервер се налази на нашој глави, а Оокла решење подразумевано бира сервер најближи претплатнику. На овај начин проверавамо рад сопствене мреже за пренос података.

За мерење брзине унутар земље (имамо посебну мрежу за телеком оператере, која обједињује све оператере и главне дата центре у земљи), потребно је да изаберете провајдера у земљи и извршите друго мерење. Емпиријски смо идентификовали неколико сервера који дају мање или више стабилне резултате у било које доба дана и навели их као препоручене у упутствима.

Па, сличне акције за екстерне комуникационе канале. Пронашли смо велике оператере са великим каналима на спеедтест серверима и написали их у препорукама (извините „Москва - Ростелецом” и „Рига – Балтцом”, али ћу препоручити ове чворове да добијем адекватне бројеве. Лично сам добио до ~870 мегабита од ови сервери у вршним сатима).

Зашто, питате, такве потешкоће? Све је врло једноставно. Добили смо прилично згодан алат који нам у способним рукама омогућава да утврдимо да ли постоје проблеми у нашим мрежама, да ли постоје проблеми у републичкој мрежи или постоје проблеми са кичмом. Ако се особа жали на малу брзину преузимања са неког сервиса, можемо да измеримо брзину претплатничког канала и да је упоредимо са оним што добија од сервиса. И разумно је показати да поштено додељујемо канал наведен у уговору. Можемо објаснити и могуће разлоге за такву разлику у брзинама.

Секундарно решење

Питање пада брзине увече/током дана остаје отворено. Како учинити исту ствар а да нисте код претплатника? Узми јефтину сингле-боард картицу са гигабитном мрежом и направи од ње такозвану сонду. Уређај мора да мери брзину дуж кабла у датом временском интервалу. Решење треба да буде отвореног кода, што је могуће непретенциозније, са погодним админ панелом за преглед резултата мерења. Уређај треба да буде што јефтинији како би се лако могао заменити и без страха оставити код претплатника н дана.

Имплементација

Израда зонда за мерење брзине Интернета

За основу је узет БананаПИ (модел М1). За овај избор заправо постоје два разлога.

  1. Гигабитни порт.
  2. Само је лежао у ноћном ормарићу.

Затим је одлучено да се користи питхон клијент спеедтест-цли за Спеедтест би Оокла сервис као позадину за мерење брзине. библиотека Питхонпинг за мерење брзине пинга. Па, и пхп за админ панел. За лакшу перцепцију користио сам боотстрап.

Због чињенице да Распберри-јеви ресурси нису флексибилни, коришћена је комбинација нгинк+пхп-фпм+склите3. Хтео сам да одустанем од МиСКЛ-а због његове тежине и сувишности. Предвиђам питање у вези Иперфа. Морао је бити напуштен због немогућности коришћења у другим правцима осим у локалним.

У почетку сам пратио пут многих на овом сајту. Модификован спеедтест-цли клијент. Али онда је, након мало размишљања, напустио ову идеју. Написао сам свог радника који користи могућности оригиналног клијента.

Да бих анализирао пингове, једноставно сам написао посебан обрађивач. Из мерења узимамо просечну вредност. Алат за пинг може да обрађује и ИП адресу и име домена.

Нисам постигао асинхрони рад. У овом случају то није посебно потребно.

Админ панел за процену резултата показао се прилично минималистичким.

Израда зонда за мерење брзине ИнтернетаСл. Главни администраторски прозор са резултатима тестирања

Израда зонда за мерење брзине ИнтернетаСл. Тест подешавања

Израда зонда за мерење брзине Интернета
Сл. Ажурирајте листу Спеедтест сервера

То је све. Идеја је спроведена на коленима, у слободно време. Теренски тестови још нису почели. Али планирамо да лансирамо прототипове у блиској будућности. Могу га користити и тамошњи провајдери и клијенти провајдера. Нико вам не смета да мерите код куће даноноћно. Једина ствар коју треба да запамтите је да ако активно сурфујете Интернетом или преузимате нешто, онда ће мерење бити ниже од стварног. Дакле, идеално би било да сонду оставите на мрежи као јединог потрошача саобраћаја.

ПС: молим вас немојте ме критиковати због квалитета кода. Ја сам самоук без искуства. Изворни код за ГитХуб. Критика се прихвата.

Извор: ввв.хабр.цом

Додај коментар