Next: Low-Level Terminal Interface, Previous: Pipes and FIFOs, Up: Top [Contents][Index]
This chapter describes the GNU facilities for interprocess communication using sockets.
A socket is a generalized interprocess communication channel.
Like a pipe, a socket is represented as a file descriptor. Unlike pipes
sockets support communication between unrelated processes, and even
between processes running on different machines that communicate over a
network. Sockets are the primary means of communicating with other
machines; telnet, rlogin, ftp, talk and the
other familiar network programs use sockets.
Not all operating systems support sockets. In the GNU C Library, the header file sys/socket.h exists regardless of the operating system, and the socket functions always exist, but if the system does not really support sockets these functions always fail.
Incomplete: We do not currently document the facilities for broadcast messages or for configuring Internet interfaces. The reentrant functions and some newer functions that are related to IPv6 aren’t documented either so far.
| • Socket Concepts: | Basic concepts you need to know about. | |
| • Communication Styles: | Stream communication, datagrams and other styles. | |
| • Socket Addresses: | How socket names (“addresses”) work. | |
| • Interface Naming: | Identifying specific network interfaces. | |
| • Local Namespace: | Details about the local namespace. | |
| • Internet Namespace: | Details about the Internet namespace. | |
| • Misc Namespaces: | Other namespaces not documented fully here. | |
| • Open/Close Sockets: | Creating sockets and destroying them. | |
| • Connections: | Operations on sockets with connection state. | |
| • Datagrams: | Operations on datagram sockets. | |
| • Inetd: | Inetd is a daemon that starts servers on request. The most convenient way to write a server is to make it work with Inetd. | |
| • Socket Options: | Miscellaneous low-level socket options. | |
| • Networks Database: | Accessing the database of network names. |
Next: Low-Level Terminal Interface, Previous: Pipes and FIFOs, Up: Top [Contents][Index]