Пройдите четыре проверки: что вы хотите ограничить, какой пакет несёт информацию, которая это идентифицирует, какой интерфейс видит формирователь и что выдерживает маршрутизатор во время шифрования. Маршрутизаторы поставляются и со страницей OpenVPN, и со страницей полосы пропускания, и их сосуществование ничего не доказывает ни об одной из них. Порядок важен, потому что правило, написанное против не того пакета, никогда не совпадёт, какой бы правильной ни была его скорость.

Начните с цели: ограничить одно устройство, справедливо разделить ёмкость или дать приоритет одному приложению. Каждая требует своего сопоставления.

Назовите цель до правила

Ограничение на устройство требует сопоставления с адресом этого устройства, который существует только внутри туннеля. Справедливость между конкурирующими потоками требует очереди, которую все они делят, а не правила на каждый хост. Приоритету приложения нужно нечто, идентифицирующее приложение, — самое сложное из трёх, когда шифрование убирает внутренние заголовки из вида. Если записать цель первой, вы поймёте, какой факт вам нужен и где его можно получить.

Ограничение, работающее на прямом трафике WAN, не доказывает, что тот же хост покрыт внутри туннеля. Правило может сопоставляться с адресом, который никогда не появляется в заголовке, видимом формирователю.

Внутри туннеля или снаружи

С VPN-клиентом, принадлежащим маршрутизатору, многие потоки LAN идут внутри одного зашифрованного транспорта. До инкапсуляции маршрутизатор всё ещё видит внутренний источник и назначение, поэтому политика, привязанная на этом этапе, может классифицировать по устройству. После инкапсуляции обычное оборудование видит только внешнее соединение, а сопоставление по порту VPN ничего не говорит о том, какое устройство отвечает. Этот единственный факт решает, где место правилу.

Платформы различаются тем, как они это показывают. Одни предоставляют формирователь, который ставит в очередь и классифицирует на интерфейсе туннеля; другие рассматривают ограничители как правила интерфейса, ведущие себя одинаково для трафика VPN и без VPN; некоторые делают и то и другое с разными возможностями. Читайте собственную документацию прошивки для интерфейса, который она поддерживает, вместо того чтобы копировать имя интерфейса из руководства другого производителя.

Определите, где адреса остаются доступными, где происходит преобразование и какая очередь действительно управляет узким местом.

Три политики, три вида доказательств

Ограничение скорости доказывается устойчивой передачей с ограниченного устройства, пока другое передаёт одновременно. Справедливый раздел доказывается двумя потоками, достигающими схожих скоростей, а не голоданием одного, и это другое измерение. Приоритет приложения доказывается тем, что интерактивная задача остаётся отзывчивой во время массовой передачи, и проверкой того, распознал ли классификатор поток вообще. Каждая политика требует собственного наблюдения, и ни одну не доказывает страница конфигурации.

Классификация заслуживает особого недоверия. Сопоставление по внешнему зашифрованному порту не может восстановить идентичность каждого внутреннего приложения, поэтому правило, которое выглядит как приоритет одного приложения, на практике может давать приоритет всему из этого туннеля. Читайте счётчики правила, а не его намерение.

Измеряйте зашифрованную нагрузку, а не голую

Формирование, классификация и шифрование конкурируют за один процессор, а аппаратное ускорение может провести трафик мимо тех самых правил и счётчиков, за которыми вы наблюдаете. Цифра пропускной способности из простого теста маршрутизации мало говорит об устройстве под зашифрованной и сформированной нагрузкой. Тестируйте оба направления, несколько типичных клиентов и небольшую интерактивную задачу рядом с массовой передачей. Отзывчивость под нагрузкой важнее пиковой цифры на простаивающем канале.

Включите исключения в измерение: трафик, который должен обходить туннель, оба семейства адресов, если задействованы оба, и то, что происходит при отказе туннеля. Политика, которая ведёт себя разумно только пока туннель здоров, — половина политики.

Запишите спецификацию тремя строками: сопоставление трафика, точка применения и измеренная нагрузка. OpenVPN плюс QoS — это не спецификация.

Похожие статьи