Я использую Ubuntu 14.04 LTS с ядром Linux версии 3.13.0-34.
Как я могу узнать, какой используется по умолчанию или какой текущий алгоритм управления перегрузкой TCP используется?
Благодарю.
Там нет вариантов TCP; Существуют алгоритмы управления перегрузкой TCP:
sysctl net.ipv4.tcp_congestion_control
cat /proc/sys/net/ipv4/tcp_congestion_control
По умолчанию это обычно cubic
или reno
, хотя доступно множество других, и программы могут установить предпочтительный алгоритм для отдельных соединений (например, передача позволяет lp
если доступно).
(Одна и та же ручка влияет как на IPv4, так и на IPv6, несмотря на название.)
В дополнение к ответу @grawity можно проверить все доступные алгоритмы управления перегрузкой TCP следующей командой:
sysctl net.ipv4.tcp_available_congestion_control
Список некоторых возможных выходных данных (т.е. доступных вариантов):
reno: традиционный TCP, используемый почти всеми другими операционными системами . (дефолт)
кубический: CUBIC-TCP
БИК: BIC-TCP
htcp: Hamilton TCP
Вегас: TCP Вегас
Вествуд: оптимизирован для сетей с потерями
YeAH: задержка / поддержка состояния, чтобы поддерживать канал на уровне или ниже порога
ПРИМЕЧАНИЕ. Если cubic и / или htcp не указаны в списке при выполнении 'sysctl net.ipv4.tcp_available_congestion_control'
, попробуйте следующее, так как большинство дистрибутивов включают их в качестве загружаемых модулей ядра:
/sbin/modprobe tcp_htcp
/sbin/modprobe tcp_cubic
Для более подробной информации вы можете посмотреть здесь:
Надеюсь, поможет.
Ура,
Guy.