ソケットは、通信チャネルの一方のエンドポイントを表すファイルディスクリプターです。
プログラムは socket(2) でソケットを作成し、通常はそれを bind または connect して、
read(2)/write(2) または send(2)/recv(2) を使用します。
c
int sockfd = socket(int domain, int type, int protocol);domain は AF_INET、AF_INET6、AF_UNIX、AF_NETLINK などのアドレスファミリーを
選択します。type は SOCK_STREAM、SOCK_DGRAM、SOCK_SEQPACKET などの意味論を
選択します。protocol は通常、その組み合わせにおける具体的なプロトコルを選択し、
0 の場合はデフォルトが選択されます。
一般的なソケットファミリー #
| Family | Address | Common Uses |
|---|---|---|
AF_UNIX | Pathname or abstract name | Local IPC |
AF_INET | IPv4 address and port | TCP, UDP, raw IP |
AF_INET6 | IPv6 address and port | TCP, UDP, raw IPv6 |
AF_NETLINK | Kernel protocol and port ID | Kernel configuration APIs |
AF_PACKET | Interface and Ethernet protocol | Link-layer packet access |
AF_VSOCK | VM CID and port | Host/guest communication |
コメント
GitHub で閲覧・コメントする(投稿にはログインが必要です)