Scroll to navigation

address_families(7) Miscellaneous Information Manual address_families(7)

ИМЯ

address_families - семейства адресов сокетов (домены)

СИНТАКСИС

#include <sys/types.h>          /* смотрите ЗАМЕЧАНИЯ */
#include <sys/socket.h>
int socket(int domain, int type, int protocol);

ОПИСАНИЕ

Параметр domain в socket(2) задает домен соединения: выбирает семейство протоколов, которое будет использоваться для соединения. Семейства описаны в <sys/socket.h>. В настоящее время ядром Linux распознаются следующие форматы:

Local communication. For further information, see unix(7).
Протоколы Интернет IPv4, дополнительная информация доступна в ip(7).
Протокол любительского радио AX.25, дополнительная информация доступна в ax25(4).
Протоколы Novell IPX.
AppleTalk, дополнительная информация доступна в ddp(7).
Протокол пакетного уровня AX.25, дополнительная информация доступна в netrom(4), The Packet Radio Protocols and Linux и AX.25, NET/ROM и главах ROSE network programming из Linux Amateur Radio AX.25 HOWTO.
Нельзя использовать для создания сокетов; в основном используется для связей типа «мост» в протокольных командах rtnetlink(7).
Доступ к неструктурированным постоянным виртуальным каналам ATM (PVC), дополнительная информация доступна в ATM on Linux HOWTO.
Протокол ITU-T X.25 / ISO-8208, дополнительная информация доступна в x25(7).
Протоколы Интернет IPv6, дополнительная информация доступна в ipv6(7).
RATS (Radio Amateur Telecommunications Society). Open Systems environment (ROSE) AX.25 packet layer protocol. For further information, see the resources listed for AF_NETROM.
Протокольные сокеты DECet, дополнительная информация доступна в Documentation/networking/decnet.txt из дерева исходного кода Linux.
Зарезервировано для «проекта 802.2LLC», никогда не использовалось.
Недолго существовавшее (с Linux 2.1.30 по 2.1.99pre2) семейство протоколов для вызовов из межсетевого экрана.
Прокотол управления ключами, изначально разрабатывался для использования с IPsec (начиная с Linux 2.1.38). Никак не связан с keyctl(2) и возможностью хранения ключей в ядре. Дополнительная информация доступна в RFC 2367 PF_KEY Key Management API, Version 2
Kernel user interface device. For further information, see netlink(7).
Низкоуровневый пакетный интерфейс, дополнительная информация доступна в packet(7).
Протокол Acorn Econet (удалён в Linux 3.5); дополнительная информация доступна в Econet documentation
Доступ к коммутируемым виртуальным каналам ATM (SVC); дополнительная информация доступна в ATM on Linux HOWTO
Reliable Datagram Sockets (RDS) protocol (since Linux 2.6.30). RDS over RDMA has no relation to AF_SMC or AF_XDP. For further information, see rds(7), rds-rdma(7), and Documentation/networking/rds.txt in the Linux kernel source tree.
Socket interface over IrDA (moved to staging in Linux 4.14, removed in Linux 4.17). For further information, see irda(7).
Транспортный слой PPP общего назначения для поднятия туннелей L2 (L2TP и PPPoE). Смотрите файл Documentation/networking/l2tp.txt в дереве исходного кода Linux.
Устаревший протокол для территориально распределённой сети (WAN), использовался в картах Sangoma WAN («WANPIPE»); удалён в Linux 2.6.21.
Протокол управления логической связью (IEEE 802.2 LLC), верхних подуровень канального уровня сетевого стека протоколов ISO/OSI (начиная с Linux 2.4); никак не связан с AF_PACKET. Смотрите главу 13.5.3. Logical Link Control в Understanding Linux Kernel Internals (O'Reilly Media, 2006) и IEEE Standards for Local Area Networks: Logical Link Control (The Institute of Electronics and Electronics Engineers, Inc., New York, New York, 1985). В исторических заметках описана разработка протокола.
Собственная адресация InfiniBand (начиная с Linux 3.11).
Многопротокольная коммутация по меткам (начиная с Linux 4.1); по большей части используется для настройки маршрутизации MPLS через netlink(7), так как нет возможности создавать сокеты в пользовательском пространстве.
Автотранспортный протокол шины Controller Area Network (начиная с Linux 2.6.25). Дополнительную информацию смотрите в файле Documentation/networking/can.rst в дереве исходного кода Linux.
TIPC, протокол «кластерных доменных сокетов» (начиная с Linux 2.6.16). Смотрите TIPC Programmer's Guide и описание протокола
Сокетный протокол Bluetooth низкого уровня (начиная с Linux 3.11). Описан в Bluetooth Management API overview и An Introduction to Bluetooth Programming Альбертом Хуангом (Albert Huang)
Протокол IUCV (средство межпользовательской связи) z/VM для взаимодействия гипервизор-гость (начиная с Linux 2.6.21); никак не связан с AF_VSOCK и/или AF_SMC. Дополнительную информацию смотрите в IUCV protocol overview
Rx, протокол процедурных вызовов Andrew File System (начиная с Linux 2.6.22).Дополнительную информацию смотрите в файле Documentation/networking/rxrpc.txt дерева исходного кода Linux.
Новый протокол взаимодействия с драйвером «модульного ISDN» (начиная с Linux 2.6.27). Смотрите вики mISDN
Интерфейс IPC/RPC к сотовому модему Nokia (начиная с Linux 2.6.31). Дополнительную информацию смотрите в файле Documentation/networking/phonet.txt дерева исходного кода Linux.
Неструктурированный пакетный протокол IEEE 802.15.4 WPAN (персональная беспроводная сеть) (начиная с Linux 2.6.31). Дополнительную информацию смотрите в файле Documentation/networking/ieee802154.txt дерева исходного кода Linux.
Протокол взаимодействия Ericsson Communication CPU с Application CPU (CAIF)(начиная с Linux 2.6.36). Дополнительную информацию смотрите в файле Documentation/networking/caif/Linux-CAIF.txt дерева исходного кода Linux.
Взаимодействие с ядерным интерфейсом шифрования (начиная с Linux 2.6.38). Дополнительную информацию смотрите в файле Documentation/crypto/userspace-if.rst дерева исходного кода Linux.
Протокол VMWare VSockets для взаимодействия гипервизор-гость (начиная с Linux 3.9);никак не связан с AF_IUCV и AF_SMC. Дополнительную информацию смотрите в vsock(7).
KCM (kernel connection multiplexer) interface (since Linux 4.6). See Documentation/networking/kcm.txt in the Linux kernel source tree for details.
Протокол взаимодействия с маршрутизатором Qualcomm IPC (начиная с Linux 4.7).
Протокол SMC-R (подключения к общей памяти через RDMA) (начиная с Linux 4.11), и протокол SMC-D (подключения к общей памяти, прямой доступ к памяти) для межузлового гостевого взаимодействия z/VM (начиная с Linux 4.19); никак не связан с AF_RDS, AF_IUCV или AF_VSOCK. В RFC 7609 IBM's Shared Memory Communications over RDMA (SMC-R) Protocol приведена информация по SMC-R. В SMC-D Reference Information приведена информация по SMC-D.
Интерфейс XDP (короткий путь прохождения данных) (начиная с Linux 4.18). Дополнительную информацию смотрите в файле Documentation/networking/af_xdp.rst дерева исходного кода Linux.

СМОТРИТЕ ТАКЖЕ

socket(2), socket(7)

ПЕРЕВОД

Русский перевод этой страницы руководства разработал(и) Dmitry Bolkhovskikh <d20052005@yandex.ru> и Yuri Kozlov <yuray@komyakino.ru>

Этот перевод является свободной программной документацией; он распространяется на условиях общедоступной лицензии GNU (GNU General Public License - GPL, https://www.gnu.org/licenses/gpl-3.0.html версии 3 или более поздней) в отношении авторского права, но БЕЗ КАКИХ-ЛИБО ГАРАНТИЙ.

Если вы обнаружите какие-либо ошибки в переводе этой страницы руководства, пожалуйста, сообщите об этом разработчику(ам) по его(их) адресу(ам) электронной почты или по адресу списка рассылки русских переводчиков.

22 января 2023 г. Справочные страницы Linux 6.03