Во-первых, я хочу прямо заявить, что я действительно «обожаю» этот ответ. У меня есть опыт работы в сети системным администратором, но мои сетевые знания не такие глубокие, как у большинства. Так что, надеюсь, я сделаю это правильно. И если кто-то, кто знает лучше, читает это, пожалуйста прокомментируйте или даже отредактируйте, чтобы исправить.
При запуске команды ss
(статистика сокетов) с флагом -s
который показывает состояние сокета. Итак, зная, что:
Что означает Total: 973 (kernel 996)
? Что такое Total
и что такое kernel
? Почему Total
кажется меньше kernel
?
Насколько мне известно, системные сокеты не истекают сразу после использования. Итак, насколько мне известно, 973
является отражением общего количества активных сокетов минус истекшие сокеты, но 996
подключенный к ядру, включает в себя 23
оставшихся случайных сокета, которые ядро еще не успело очистить. Эта страница о настройке ядра дает хороший обзор концепции того, как ядро работает с сокетами и как можно настроить систему для лучшего управления сокетами на уровне ядра.
В строке TCP: 600 (estab 280, closed 73, orphaned 0, synrecv 0,
timewait 0/0), ports 333
, что означает слово ports
?
ports 333
- это просто подсчет всей активности портов в вашей системе в данный конкретный момент. 333
соответствует сумме estab 280
и closed 73
. Подробности об этих портах будут обобщены ниже этого списка. Но в контексте сокетов , которые выстилают в основном говорится , есть 600
розетки доступны и из этих 600
333
в некотором роде , связанных с портами в системе. Для получения более подробной информации о том, что такое сокет по сравнению с портом, прочитайте этот превосходный ответ о переполнении стека .
Что означает звездочка (*
)?
В контексте примера вы показываете:
Transport Total IP IPv6
* 996 - -
Видите, как всего 996
всего ядра в целом Total: 973 (kernel 996)
? Это *
соответствует сокетам, которые просто открываются / управляются независимо от их транспортного уровня на уровне ядра.
Но это сказал, да ... Это все довольно запутанно на уровне новичка.