Что такое UNIX-сокет? [закрыто]

Что такое Unix-сокет и где он используется где и почему?

В каких случаях я должен использовать сокет UNIX через IP-адрес?

0
задан 9 June 2017 в 13:39

2 ответа

Сокеты домена UNIX - это метод, с помощью которого процессы на одном и том же хосте могут связываться.

Сокеты домена UNIX используют файловую систему в качестве пространства имен адресов, т. Е. Вместо идентификации сервера по IP-адресу и порту сокет домена UNIX является известный по пути. Это означает, что вы можете использовать разрешения файлов UNIX для управления доступом к ним. I.e., вы можете ограничить то, что другие процессы могут подключиться к демону - возможно, один пользователь может, но веб-сервер не может или тому подобное. С IP-сокетами возможность подключения к вашему демону подвергается воздействию текущей системы, что означает, что любой может подключиться к вашему сокету, поэтому для обеспечения безопасности могут потребоваться дополнительные шаги. С другой стороны, вы получаете прозрачность сети.

С помощью сокетов домена UNIX вы можете фактически получить учетные данные процесса, создавшего удаленный сокет, и использовать его также для управления доступом, что может быть весьма удобным для многопользовательских систем.

Сокеты домена UNIX имеют явные знания о том, что они выполняются в одной и той же системе. Они избегают дополнительных переключателей контекста и не вычисляются контрольные суммы, не вставлены заголовки, не выполняется маршрутизация и т. Д. Поскольку они имеют доступ к буферу удаленных сокетов, они также могут напрямую предоставлять обратную связь отправителю при его заполнении или более важно, опорожнение, а не добавление дополнительных накладных явных подтверждений и изменений окна. Единственная функциональность, которую UNIX-сокеты не обеспечивают, что TCP - это внеполосные данные.

2
ответ дан 18 July 2018 в 11:55

Сокеты домена UNIX - это метод, с помощью которого процессы на одном и том же хосте могут связываться.

Сокеты домена UNIX используют файловую систему в качестве пространства имен адресов, т. Е. Вместо идентификации сервера по IP-адресу и порту сокет домена UNIX является известный по пути. Это означает, что вы можете использовать разрешения файлов UNIX для управления доступом к ним. I.e., вы можете ограничить то, что другие процессы могут подключиться к демону - возможно, один пользователь может, но веб-сервер не может или тому подобное. С IP-сокетами возможность подключения к вашему демону подвергается воздействию текущей системы, что означает, что любой может подключиться к вашему сокету, поэтому для обеспечения безопасности могут потребоваться дополнительные шаги. С другой стороны, вы получаете прозрачность сети.

С помощью сокетов домена UNIX вы можете фактически получить учетные данные процесса, создавшего удаленный сокет, и использовать его также для управления доступом, что может быть весьма удобным для многопользовательских систем.

Сокеты домена UNIX имеют явные знания о том, что они выполняются в одной и той же системе. Они избегают дополнительных переключателей контекста и не вычисляются контрольные суммы, не вставлены заголовки, не выполняется маршрутизация и т. Д. Поскольку они имеют доступ к буферу удаленных сокетов, они также могут напрямую предоставлять обратную связь отправителю при его заполнении или более важно, опорожнение, а не добавление дополнительных накладных явных подтверждений и изменений окна. Единственная функциональность, которую UNIX-сокеты не обеспечивают, что TCP - это внеполосные данные.

2
ответ дан 24 July 2018 в 19:52

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

Похожие вопросы: