Формування трафіку OpenVPN: який інтерфейс його бачить?
Обмеження швидкості, справедлива черга та пріоритет застосунків потребують різної інформації з пакетів. Визначте, який етап її бачить, перш ніж писати правило, яке формувач ніколи не зіставить.
Пройдіть чотири перевірки: що ви хочете обмежити, який пакет несе інформацію, що це ідентифікує, який інтерфейс бачить формувач і що маршрутизатор витримує під час шифрування. Маршрутизатори постачаються і зі сторінкою OpenVPN, і зі сторінкою пропускної здатності, а їхнє співіснування не доводить нічого ні про одну. Порядок має значення, бо правило, написане проти неправильного пакета, ніколи не збігається, хоч би якою правильною була його швидкість.
Почніть із мети: обмежити один пристрій, справедливо розподілити ємність або надати пріоритет одному застосунку. Кожна потребує іншого зіставлення.
Назвіть мету перш ніж правило
Обмеження на пристрій потребує зіставлення з адресою цього пристрою, яка існує лише всередині тунелю. Справедливість між конкуруючими потоками потребує черги, яку всі поділяють, а не правила на кожен хост. Пріоритет застосунку потребує чогось, що ідентифікує застосунок, — найскладніше з трьох, коли шифрування прибирає внутрішні заголовки з поля зору. Якщо записати мету першою, ви знатимете, який факт потрібен і де його взагалі можна отримати.
Обмеження, що працює на прямому трафіку WAN, не є доказом того, що той самий хост охоплено всередині тунелю. Правило може зіставлятися з адресою, яка ніколи не з'являється в заголовку, який бачить формувач.
Усередині тунелю чи зовні
Із клієнтом VPN на маршрутизаторі багато потоків LAN подорожують усередині одного зашифрованого транспорту. До інкапсуляції маршрутизатор ще бачить внутрішнє джерело й призначення, тож політика, прив'язана на цьому етапі, може класифікувати за пристроєм. Після інкапсуляції звичайне обладнання бачить лише зовнішнє з'єднання, а зіставлення з портом VPN нічого не каже про те, який пристрій відповідальний. Цей єдиний факт вирішує, де має бути правило.
Платформи відрізняються тим, як вони це відкривають. Деякі надають формувач, що ставить у чергу й класифікує на інтерфейсі тунелю; інші трактують обмежувачі як правила інтерфейсу, що поводяться однаково для трафіку VPN і не-VPN; деякі роблять обидва з різними можливостями. Замість копіювати назву інтерфейсу з посібника іншого виробника, прочитайте документацію прошивки щодо інтерфейсу, який вона підтримує.
Визначте, де адреси ще доступні, де відбувається перетворення і яка черга насправді керує вузьким місцем.
Три політики, три види доказів
Обмеження швидкості доводиться тривалим передаванням із обмеженого пристрою, поки інший передає водночас. Справедливий розподіл доводиться двома потоками, що досягають подібних швидкостей, а не голодуванням одного, — це інше вимірювання. Пріоритет застосунку доводиться інтерактивним завданням, що залишається чутливим під час масового передавання, і перевіркою того, чи класифікатор узагалі розпізнав потік. Кожна політика потребує власного спостереження, і жодну не доводить сторінка конфігурації.
Класифікація заслуговує на окрему недовіру. Зіставлення із зовнішнім зашифрованим портом не може відновити ідентичність кожного внутрішнього застосунку, тож правило, що ніби надає пріоритет одному застосунку, на практиці може надавати пріоритет усьому з того тунелю. Читайте лічильники правила, а не його намір.
Вимірюйте зашифроване навантаження, а не голе
Формування, класифікація та шифрування змагаються за один CPU, а апаратне прискорення може провести трафік повз саме ті правила й лічильники, які ви спостерігаєте. Показник пропускної здатності з простого тесту маршрутизації мало говорить про пристрій під зашифрованим і сформованим навантаженням. Перевіряйте обидва напрямки, кілька репрезентативних клієнтів і невелике інтерактивне завдання поряд із масовим передаванням. Чутливість під навантаженням важливіша за пікове число на простоюючому каналі.
Включіть у вимірювання винятки: трафік, що має обходити тунель, обидві родини адрес, якщо обидві задіяні, і що станеться, коли тунель недоступний. Політика, що поводиться розумно лише поки тунель здоровий, — це половина політики.
Запишіть специфікацію як три рядки: зіставлення трафіку, точка застосування і виміряне навантаження. OpenVPN плюс QoS — це не специфікація.