В Linux, как установить максимальный размер сегмента, разрешенный для TCP-соединения? Мне нужно установить это для приложения, которое я не написал (поэтому я не могу использовать setsockopt
, чтобы сделать это). Мне нужно установить это выше mtu в сетевом стеке.
У меня два потока, использующих одно и то же сетевое соединение. Каждый периодически отправляет небольшие пакеты, которые требуют абсолютной минимальной задержки. Другой отправляет тонны данных - я использую SCP для имитации этой ссылки.
У меня настроено управление трафиком (tc), чтобы обеспечить высокий приоритет трафика с минимальной задержкой. Однако проблема, с которой я сталкиваюсь, заключается в том, что TCP-пакеты, поступающие из SCP, имеют размеры до 64 Кбайт. Да, они разбиты на более мелкие пакеты на основе mtu, но, к сожалению, это происходит ПОСЛЕ того, как tc устанавливает приоритеты для пакетов. Таким образом, мой пакет с низкой задержкой застревает до 64 Кбайт трафика SCP.
Эта статья указывает, что в Windows вы можете установить это значение.
Что-нибудь в Linux можно установить? Я пробовал ip route и iptables, но они слишком низки в сетевом стеке. Мне нужно ограничить размер пакета TCP до tc, чтобы он мог соответствующим образом расставить приоритеты для пакетов с высоким приоритетом.