socket(2) System Calls Manual socket(2) socket - (libc -lc) #include int socket(int domain, int type, int protocol); socket() . . domain . . : AF_UNIX unix(7) AF_LOCAL AF_UNIX AF_INET IPv4 ip(7) AF_AX25 . ax25(4) AX.25 AF_IPX IPX - Novell AF_APPLETALK AppleTalk ddp(7) AF_X25 ITU-T X.25 / ISO/IEC 8208 x25(7) AF_INET6 IPv6 ipv6(7) AF_DECnet DECet AF_KEY IPsec AF_NETLINK netlink(7) AF_PACKET packet(7) AF_RDS . . . rds(7) rds-rdma(7) (RDS) AF_PPPOX PPP L2 (L2TP PPPoE) AF_LLC . (IEEE 802.2 LLC) AF_IB . InfiniBand AF_MPLS . AF_CAN . AF_TIPC . TIPC " " AF_BLUETOOTH . AF_ALG . AF_VSOCK . VSOCK ( vsock(7) "VMWare VSockets") AF_KCM . KCM ( ) AF_XDP . XDP ( ) address_families(7). . : SOCK_STREAM . . SOCK_DGRAM ( ). SOCK_SEQPACKET . SOCK_RAW . SOCK_RDM . SOCK_PACKET packet(7). . 2.6.27 : OR socket(): SOCK_NONBLOCK O_NONBLOCK ( open(2)) . fcntl(2) . SOCK_CLOEXEC (FD_CLOEXEC) . O_CLOEXEC open(2) . . 0. . " " protocols(5). getprotoent(3) . SOCK_STREAM . . . connect(2). read(2) write(2) send(2) recv(2). close(2). send(2) recv(2). SOCK_STREAM . . SO_KEEPALIVE . SIGPIPE . SOCK_SEQPACKET SOCK_STREAM. read(2) . . SOCK_DGRAM SOCK_RAW sendto(2). recvfrom(2) . SOCK_PACKET . packet(7) . fcntl(2) F_SETOWN SIGURG SIGPIPE SOCK_STREAM . / / SIGIO. F_SETOWN ioctl(2) FIOSETOWN SIOCSPGRP. ( ICMP IP) . . IP_RECVERR ip(7). . . setsockopt(2) getsockopt(2) . . -1 errno . EACCES / . EAFNOSUPPORT . EINVAL . EINVAL type. EMFILE . ENFILE . ENOBUFS ENOMEM . . EPROTONOSUPPORT . . POSIX.1-2024 SOCK_CLOFORK . POSIX.1-2024. POSIX.1-2001 4.2BSD. / BSD BSD ( System V). 4.x BSD PF_UNIX PF_INET AF_UNIX AF_INET . BSD : " " AF_* . SOCK_NONBLOCK SOCK_CLOEXEC POSIX.1-2024. socket() getaddrinfo(3). accept(2) bind(2) close(2) connect(2) fcntl(2) getpeername(2) getsockname(2) getsockopt(2) ioctl(2) listen(2) read(2) recv(2) select(2) send(2) shutdown(2) socketpair(2) write(2) getprotoent(3) address_families(7) ip(7) socket(7) tcp(7) udp(7) unix(7) " 4.3BSD" " BSD" 1. 3 . . : . 6.18 29 2025 socket(2)