Відкрийте вікно стану клієнта, і цифри виглядають заспокійливо: байти зростають, тунель підключено. Закрийте вікно, а офісний застосунок усе одно не працює, тобто лічильники відповіли на питання, якого ніхто не ставив. Підрахунок байтів на інтерфейсі вимірює трафік у цій точці спостереження і нічого більше. Перейдіть від цифри, на яку ви дивитеся, до рівня, про який вона повідомляє, а потім до результату, який застосунок фактично вам дав.

Спершу виберіть інтерфейс, потім число

Почніть там, де відображається число, і прочитайте мітку поруч. Вікно клієнта може показувати підсумки сеансу, інтерфейс тунелю — байти внутрішнього IP, а фізичний адаптер — зашифровані зовнішні байти; три різні лічильники, які випадково виражені в байтах. У командному рядку netstat -ibn виводить один рядок на кожну адресу на кожному інтерфейсі, тож тунель може з'явитися кілька разів. Зіставте рядок з інтерфейсом, яким клієнт справді володіє, і підтвердьте його маршрутом, який вибирає призначення. Пристрій із назвою utun може належати VPN, іншому тунелю або чомусь, що вас не цікавить.

Не замінюйте його лічильником Wi-Fi лише тому, що його легше читати. Інша точка спостереження відповідає на інше питання.

Беріть різницю, а не підсумок від завантаження

Прочитайте рядок, зробіть один невеликий дозволений запит, потім прочитайте той самий рядок знову. Різниця і є доказом, адже підсумок від завантаження включає все, що робила машина. Тримайте інтервал коротким, щоб фоновий трафік мав менше можливостей його забруднити. На зайнятій машині nettop може віднести пропускну здатність до процесу, що звужує поле перед поверненням до лічильників інтерфейсу.

Прийміть, що різниця не є чистою. Пошта, оновлення та власні повідомлення підтримки з'єднання клієнта всі додають свій внесок, тому сприймайте число як верхню межу, а не як вимірювання. Якщо за інтервал ви робили лише застосунок, межа зазвичай достатньо тісна, щоб бути корисною.

Внутрішні та зовнішні лічильники вимірюють різне

Фізичний адаптер рахує зашифровані пакети разом з їхніми зовнішніми заголовками, а інтерфейс тунелю обліковує корисне навантаження, яке отримує або передає. Додавання обох рахує одне передавання двічі. Накладні витрати, повторні передавання та інкапсуляція також роблять просту рівність неможливою.

Два лічильники, що рухаються в протилежних напрямках, — це знахідка, а не суперечність. Зазвичай це означає, що трафік увійшов в один шар і так і не покинув інший.

Пов'яжіть лічильник із результатом застосунку

Отриманий підсумок може зростати через розмови протоколу, поки потрібна вам служба все ще не працює. Зростання надсилання каже ще менше: воно доводить, що ядро прийняло пакет, а не те, що хтось відповів.

Запишіть точний результат поруч із лічильниками: розв'язання імен не вдалося, з'єднання вичерпало час, TLS було відхилено або надійшла відповідь HTTP. Це чотири різні несправності, і лише одна з них стосується тунелю. Якщо доказ має піти далі, наступна точка спостереження — шлюз або межа служби, де хтось може побачити, чи надійшов запит. Скидання мережевих налаштувань Mac знищує стан, який ви вимірювали, і нічого вам не повідомляє.

Напишіть нотатку, яка потрібна наступній людині

Назва інтерфейсу, мітка лічильника, інтервал, значення до і після та результат застосунку. Цього достатньо, щоб колега відтворив спостереження, не повторюючи ваш день. Додайте версію клієнта й версію macOS, бо семантика лічильників може змінюватися між випусками.

Пропустіть повне перехоплення пакетів і дамп системи. Вони рідко потрібні, щоб пояснити, який локальний лічильник зсунувся за один запит, і сповільнюють кожного, хто читає звіт. Якщо клієнт показує власну статистику, цитуйте його мітку дослівно, а не перекладайте своєю. Сенс нотатки — зафіксувати, що виміряно, а не сперечатися, що це означає.

Схожі статті