NetDiag+

Про проєкт

NetDiag+ робить Dmytro Tishchenko, незалежний iOS-розробник. Застосунок виріс із простого роздратування: кожен інструмент казав, що з'єднання в порядку, поки дзвінки заїкалися й ігри лагали, і жоден не міг сказати, хто винен.

Тому застосунок вимірює, а не гадає — сирі ICMP і TCP з телефона, роутер перевіряється окремо від інтернету, джитер і втрати показуються поруч із затримкою, — а гайди на цьому сайті пояснюють, як читати ці числа. 27 інструментів, 13 мов; кожне вимірювання виконується на пристрої, результати залишаються в його Історії.

Як зʼявляються ці числа

Кожне вимірювання виконується на телефоні, без жодного мого сервера на шляху. Ping — це сирий ICMP через непривілейований датаграмний сокет, тож не потрібні ні джейлбрейк, ні окремий entitlement; а коли мережа фільтрує ICMP — а більшість мобільних операторів його фільтрують — інструмент повторює спробу по TCP на той порт, який хост справді слухає, і позначає це просто в рядку, замість показати фальшивий тайм-аут.

Важливішими за протокол виявилися дві звички. Перша — роутер вимірюється окремо від інтернету: якщо вже перший хоп повільний, усі віддалені числа завищені, і застосунок каже про це вголос, а не дає звалити провину на ігровий сервер. Друга — у рядку стоїть медіана одинадцяти спроб, а не середнє, і поруч із нею джитер і втрати. Один викид зсуває середнє і не може зсунути медіану, а зʼєднання на 40 мс із джитером 30 мс грається гірше за рівні 120 мс — середнє ховає саме це.

Чого воно тобі не скаже

iOS не дає сирих сокетів, тому відповіді приходять без свого IP-заголовка, і трасування не може показати TTL, який повернув хоп. У фоні нічого не вимірюється: вимірювання живуть, поки відкритий інструмент. Внутрішньоігрова затримка — не те саме число, що пінг до того ж регіону, бо гра додає зверху свій тікрейт і буферизацію. А на мобільній лінії черга належить оператору — застосунок може довести, що вона є, і не може з нею зробити нічого. Там, де є таке обмеження, гайди його називають.

Для кого це

Для тих, кому сказали, що з інтернетом усе гаразд. Для геймерів, у яких спідтест показує 300 Мбіт, а матч дьоргається; для віддалених працівників, у яких дзвінок розсипається, поки заливається бекап; і для всіх, хто збирається писати у підтримку провайдера і кому потрібно щось довговічніше за скріншот. Гайд про докази існує тому, що серія вимірювань із датами проводить звернення далі за першу лінію підтримки, а одне показання — ні.

Як воно сюди дійшло

Усе виходило відкрито, по одній проблемі за раз:

Контакти

Питання, баги, число, яке виглядає неправильно: support@netdiag.online · @Tischenkod80

Завантажити в App Store

Безкоштовно · 27 інструментів · разова покупка прибирає рекламу · без підписки