- Т е ты хочешь не только инкапсулировать пакеты в тоннель и шифровать, а еще и п,
Pahanivo пробегал (?), 00:12 , 29-Мрт-24 (1)> Имеется мобильный оператор, крайне не любящий высокий PPS, packet-per-second. > При этом порядка 90% траффика, который на данный момент роутится через openvpn/udp > состоит из пакетов 64-128 байт. > Есть ли какие-либо варианты аггрегации мелких пакетов по достижению заданного размера или > по таймауту?Т.е. ты хочешь не только инкапсулировать пакеты в тоннель и шифровать, а еще и пересобирать их в цепочки? Хм, имхо, из-за буферизации получится весьма рандомный джиттер бонусом к прочим доп. задержкам на обработку. Теперь у тебя вместо одного битого пакеты будет целая серия - круть, на забитом канале еще и всплеск повторных передач получить на tcp. Как при этом поведут себя реалтайм протоколы чувствительные к задержкам - думаю и Аллах не знает, но те же ip телефонисты могут тебя кастрировать за это тупым ножом, и будут, кстати, правы (а я так понимаю у тебя что-то реалтаймовское там ходит). Опять же оверхед от тоннеля никто не отменял. > Спустя 10 лет, что-то появилось, или отправят писать свой протокол? Может я что-то не догоняю с пакетной сети - но, имхо, концептуально это бред. 
- Можно попробовать переключить openvpn на tcp, и не вклюючать NO_DELAY Но как уж,
Аноним (4), 00:58 , 01-Апр-24 (4)Можно попробовать переключить openvpn на tcp, и не вклюючать NO_DELAY. Но как уже тут писали это приведет к возрасранию джиттера.> Имеется мобильный оператор, крайне не любящий высокий PPS, packet-per-second. > При этом порядка 90% траффика, который на данный момент роутится через openvpn/udp > состоит из пакетов 64-128 байт. > Есть ли какие-либо варианты аггрегации мелких пакетов по достижению заданного размера или > по таймауту? > По мотивам темы 10-летней давности https://www.linux.org.ru/forum/admin/10120422 > Спустя 10 лет, что-то появилось, или отправят писать свой протокол? - То есть ты хочешь собрать побольше P_CONTROL_V1, отправить их всей кучей, а пото,
ACCA (ok), 22:22 , 01-Апр-24 (5)То есть ты хочешь собрать побольше P_CONTROL_V1, отправить их всей кучей, а потом получить кучу P_ACK_V1.Ну, так себе идея.
- Вообще буквально так работает FreeBSD ipfw pipe, там буквально есть корзина, кот,
zyxman (?), 07:57 , 02-Апр-24 (6) +1 > Есть ли какие-либо варианты аггрегации мелких пакетов по достижению заданного размера или > по таймауту?Вообще буквально так работает FreeBSD ipfw pipe, там буквально есть корзина, которая заполняется пакетами и освобождается, либо когда пакет задержан на сколько заказано, либо когда корзина переполнилась. На практике, надо померять распределение траффика, посчитать сколько пакетов в секунду проходит сейчас и поделить на сколько хочется иметь и получится 1/(задержка в секундах). Дальше это уже вопрос настройки VPN, который будет просто отправлять сразу блоком - главное что этими пайпами оно будет получать сразу вот этот блок. В Линуксе это вобщем тоже можно сделать, но сильно менее удобно. Я экспериментировал с этой штукой, но траффик через диверт вытаскивал в скрипт и там в скрипте делал нужные мне манипуляции, это делается через юсерспейс, поэтому небыстрая штука получилась, но так точно работает, это факт. В принципе можно переписать на С++, а также там есть ebpf кажется расширение чтобы оно прямо в ядре работало, тогда без проблем любые скорости. По сложности, это задача на пару дней. Также подобным образом сортировал пакеты по размеру (чтобы маленькие проходили раньше больших). Поначалу экспериментов ничего не вышло, тк просто не увидел вообще никакой сортировки, потому что по учебнику сделал очень маленькую корзину и очень маленькую задержку и оно вообще не задерживало и не сортировало. Потом проанализировал мой траффик, сколько там был период между пакетами и сделал задержку и размер буфера (корзины) так чтобы за ее время в среднем десяток пакетов накапливалось, и тогда сразу всё поехало как заказал.

- Это уже интересно, спасибо Читаю handbook и мануал по ipwf и не нахожу ничего по, Олег Бартунов (?), 09:58 , 03-Апр-24 (7)

- ipfw pipeТам в настройках конкретной трубы можно указать bw bandwidthdelay ms-de, zyxman (?), 02:00 , 04-Апр-24 (8) +1

- Спасибо ещё раз Читаю мануал ipfw и dummynet и складывается понимание, что queue, Олег Бартунов (?), 22:03 , 06-Апр-24 (10)

- Это КОРЗИНА, которая заполняется пришедшими пакетами со скоростью ограниченной b, zyxman (?), 01:32 , 07-Апр-24 (11)

- Локальная kvm freebsd, openvpnipfw add 10 pipe 1 udp from 10 11 9 21 to 10 11 9 , Олег Бартунов (?), 14:52 , 07-Апр-24 (12)

- gt оверквотинг удален Всё логично, это императивный подход, теперь надо в явно, zyxman (?), 20:09 , 07-Апр-24 (13) +1
 - PS кстати, простой скрипт на перле, думаю до тысяч 50 пакетов на современной маш, zyxman (?), 20:11 , 07-Апр-24 (14) +1
 - вот набор ссылок по теме спрашивайте тут только не надо читать умняк насчет пол, zyxman (?), 20:32 , 07-Апр-24 (15) +1

|