4

У меня проблема с пониманием вывода команды Linux ss (статистика сокетов). Не могу понять смысл вывода ss -s

Например:

[root@dls2304-1 ~]# ss -s
Total: 973 (kernel 996)
TCP:   600 (estab 280, closed 73, orphaned 0, synrecv 0, timewait 0/0), ports 333

Transport Total     IP        IPv6
*         996       -         -
RAW       1         1         0
UDP       157       128       29
TCP       527       512       15
INET      685       641       44
FRAG      0         0         0

Мои вопросы:

Что означает Total: 973 (kernel 996)? Что такое Total и что такое kernel? Почему Total кажется меньше kernel?

В строке TCP: 600 (estab 280, closed 73, orphaned 0, synrecv 0, timewait 0/0), ports 333 , что означает слово ports ?

И это:

Transport Total     IP        IPv6
*         996       -         -

Что означает звездочка (*)?

Они далеко над моей головой. Я не могу найти документ о спецификации вывода для команды ss . Можете ли вы помочь мне?

1 ответ1

3

Во-первых, я хочу прямо заявить, что я действительно «обожаю» этот ответ. У меня есть опыт работы в сети системным администратором, но мои сетевые знания не такие глубокие, как у большинства. Так что, надеюсь, я сделаю это правильно. И если кто-то, кто знает лучше, читает это, пожалуйста прокомментируйте или даже отредактируйте, чтобы исправить.

При запуске команды 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)? Это * соответствует сокетам, которые просто открываются / управляются независимо от их транспортного уровня на уровне ядра.

Но это сказал, да ... Это все довольно запутанно на уровне новичка.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .