Bert Hubert - Linux Advanced Routing & Traffic Control HOWTO
- Название:Linux Advanced Routing & Traffic Control HOWTO
- Автор:
- Жанр:
- Издательство:неизвестно
- Год:неизвестен
- ISBN:нет данных
- Рейтинг:
- Избранное:Добавить в избранное
-
Отзывы:
-
Ваша оценка:
Bert Hubert - Linux Advanced Routing & Traffic Control HOWTO краткое содержание
Оригинальную версию документа вы найдете по адресу http://lartc.org/.
Практическое руководство по применению iproute2 (и в меньшей степени netfilter) для управления трафиком.
Linux Advanced Routing & Traffic Control HOWTO - читать онлайн бесплатно полную версию (весь текст целиком)
Интервал:
Закладка:
Целое число в диапазоне 0..2147483647 и означает нижний порог длины очереди фрагментов в байтах, по достижении которого, фрагментированные пакеты снова будут приниматься в очередь. Значение по-умолчанию — 196608 байт, или 192 Кб. Это число обязательно должно быть меньше, чем ipfrag_high_thresh .
/proc/sys/net/ipv4/ipfrag_time
Определяет максимальное время "хранения" фрагментов в секундах. Это относится только к тем фрагментам, которые пока невозможно собрать, поскольку собранные пакеты к этому сроку скорее всего уже будут переданы дальше (на следующий уровень или в сеть).
Принимает целое значение и определяет предельное время хранения фрагментов в секундах. Если записать туда число 5, то это будет означать 5 секунд.
/proc/sys/net/ipv4/tcp_abort_on_overflow
Заставляет ядро отвергать новые соединения, если их поступает такое количество, что система не в состоянии справиться с таким потоком. Что это означает? Допустим, что на систему обрушивается шквал запросов на соединение, тогда они могут быть просто отвергнуты, если эта опция будет включена, поскольку система не в состоянии обработать их все. Если не установлена, то система будет пытаться обслужить все запросы.
Может иметь два значение — 0(выключено) или 1(включено). Значение по-умолчанию – 0. Включение этой опции следует расценивать как крайнюю меру. Перед этим необходимо попытаться поднять производительность сервисов.
/proc/sys/net/ipv4/tcp_fin_timeout
Задает максимальное время пребывания сокета в состоянии FIN-WAIT-2. Используется в тех случаях, когда другая сторона по тем или иным причинам не закрыла соединение со своей стороны. Каждый сокет занимает в памяти порядка 1.5 Кб, что может привести к значительным утечкам памяти в некоторых случаях.
Принимает целое число. Значение по-умолчанию — 60 секунд. В ядрах серии 2.2 это значение было равно 180 секундам, но было уменьшено, поскольку иногда возникали проблемы, связанные с нехваткой памяти, на web-серверах, которые, как правило, обслуживают огромное количество подключений.
За дополнительной информацией — обращайтесь к описанию параметров tcp_max_orphans и tcp_orphan_retries .
/proc/sys/net/ipv4/tcp_keepalive_time
Определяет — как часто следует проверять соединение, если оно давно не используется. Значение параметра имеет смысл только для тех сокетов, которые были созданы с флагом SO_KEEPALIVE.
Принимает целое число секунд. Значение по-умолчанию — 7200, т.е. 2 часа. Не уменьшайте это число без необходимости, поскольку это может привести к увеличению бесполезного трафика.
/proc/sys/net/ipv4/tcp_keepalive_intvl
Определяет интервал проверки "жизнеспособности" сокета. Это значение учитывается при подсчете времени, которое должно пройти перед тем как соединение будет разорвано.
Принимает целое число. Значение по-умолчанию — 75 секунд. Это достаточно высокое значение, чтобы рассматривать его как нормальное. Значения параметров tcp_keepalive_probes и tcp_keepalive_intvl могут использоваться для определения времени, через которое соединение будет разорвано.
Со значениями по-умолчанию (9 попыток с интервалом 75 секунд) это займет примерно 11 минут. Попытки определения "жизнеспособности", в свою очередь, начнутся через 2 часа после того, как через данное соединение проследовал последний пакет.
/proc/sys/net/ipv4/tcp_keepalive_probes
Определяет количество попыток проверки "жизнеспособности" прежде, чем будет принято решении о разрыве соединения.
Принимает целое число, которое не следует устанавливать больше 50-ти. Значение по-умолчанию — 9. Это означает, что будет выполнено 9 попыток проверки соединения, чтобы убедиться в том, что соединение разорвано.
/proc/sys/net/ipv4/tcp_max_orphans
Задает максимальное число "осиротевших" (не связанных ни с одним процессом) сокетов. Если это число будет превышено, то такие соединения разрываются, а в системный журнал пишется предупреждение.
Это ограничение существует исключительно ради предотвращения простейших разновидностей DoS-атак. Вообще вы не должны полагаться на эту переменную! Не рекомендуется уменьшать это число. Сетевая среда может потребовать увеличение этого порога, однако, такое увеличение может привести к необходимости увеличения объема ОЗУ в системе. Прежде чем поднимать этот предел – попробуйте перенастроить сетевые сервисы на более агрессивное поведение по отношению к "осиротевшим" сокетам.
Принимает целое число. Значение по-умолчанию — 8192, однако оно очень сильно зависит от объема памяти в системе. Каждый "осиротевший" сокет "съедает" примерно 64 Кб памяти, которая не может быть сброшена в своп (swap).
Note
При возникновении проблем, связанных с этим ограничением — в системный журнал будет записано сообщение, подобное этому: TCP: too many of orphaned sockets. Это может служить поводом к тому, чтобы пересмотреть значения переменных tcp_fin_timeout или tcp_orphans_retries .
/proc/sys/net/ipv4/tcp_orphan_retries
Количество попыток закрыть соединение перед тем как оно будет разорвано принудительно. Если вы администрируете http-сервер, который испытывает большие нагрузки, то стоит подумать об уменьшении этого значения.
Принимает целое число. Значение по-умолчанию — 7, что соответствует, примерно, от 50 секунд до 16 минут, в зависимости от внличины Retransmission Timeout (RTO — Таймаут для Повторной Передачи. прим. перев.). Детальное описание RTO вы найдете в разделе "3.7. Data Communication" RFC 793 — Transmission Control Protocol.
Кроме того, посмотрите описание переменной tcp_max_orphans .
/proc/sys/net/ipv4/tcp_max_syn_backlog
Определяет максимальное время хранения SYN-запросов в памяти до момента получения третьего, завершающего установление соединения, пакета. Эта опция работает только тогда, когда включен параметр tcp_syncookies . Если сервер испытывает серьезные нагрузки, то можно попробовать немного увеличить этот параметр.
Значение по-умолчанию зависит от количества памяти, имеющейся в системе. Если объем памяти менее 128 Мб, то значение по-умолчанию равно 128, если больше, то значение по-умолчанию равно 1024.
Note
Если вы увеличиваете эту переменную до величины более чем 1024, то было бы неплохо изменить величину TCP_SYNQ_HSIZE и пересобрать ядро. TCP_SYNQ_HSIZE находится в файле linux/include/tcp.h. Эта величина рассчитывается по формуле: TCP_SYNQ_HSIZE*16 <= tcp_max_syn_backlog
/proc/sys/net/ipv4/tcp_max_tw_buckets
Максимальное число сокетов, находящихся в состоянии TIME-WAIT одновременно. При превышении этого порога — "лишний" сокет разрушается и пишется сообщение в системный журнал. Цель этой переменной — предотвращение простейших разновидностей DoS-атак.
Целое число. Значение по-умолчанию — 180000. На первый взгляд может показаться, что это очень много, но на самом деле это не так. Если у вас начинают возникать ошибки, связанные с этим параметром, то попробуйте увеличить его.
Читать дальшеИнтервал:
Закладка: