Что такое файлы сокетов?

Недавно я начал использовать tmux; Я пытаюсь использовать функцию парного программирования в этом программном обеспечении. Во время процесса был создан файл сокета. Мой вопрос: что такое файлы сокетов, как мне открыть их в Ubuntu и как они используются?

2 ответа

Решение

Сокеты - это особый тип файлов, аналогичный сокетам TCP/IP, которые обеспечивают межпроцессное взаимодействие, защищенное контролем доступа файловой системы.

Например, когда вы открываете сокет прослушивания в одном терминале с помощью netcat:

nc -lU socket.sock

затем отправьте данные с другого терминала:

echo mytext | nc -U socket.sock

mytext появляется на первом терминале.

По умолчанию nc прекращает прослушивание после символа конца файла.

Сокет домена unix - это двунаправленный канал, похожий на сокет TCP/IP. Сервер прослушивает и принимает соединения от клиентов, а затем может связываться с клиентом по вновь принятому соединению. Что особенного в доменных сокетах unix, так это то, что вместо IP-адреса и номера порта в качестве адреса используется имя файла. Это позволяет другим приложениям, которые ничего не знают о работе сети, получать информацию об открытии файла и чтении или записи, а данные отправляются на сервер, а не на диск.

Другие вопросы по тегам