HP-UX Reference (11i v2 04/09) - 7 Device (Special) Files, 9 General Information, Index (vol 10)
u
UNIX(7P) UNIX(7P)
NAME
UNIX - local communication domain protocol
SYNOPSIS
#include <sys/types.h>
#include <sys/un.h>
DESCRIPTION
The local communication domain protocol, commonly referred to in the industry as the Unix domain
protocol, utilizes the path name address format and the
AF_UNIX address family. This protocol can be
used as an alternative to the Internet protocol family (TCP/IP or UDP/IP) for communication between
processes executing on the same node. It has a significant throughput advantage when compared with
local IP loopback, due primarily to its much lower code execution overhead. Data is looped back at the
protocol layer (OSI Level 4), rather than at the driver layer (OSI Level 2).
Only
SOCK_STREAM is supported in the AF_UNIX
address family.
The HP-UX implementation of the local communication domain protocol does not support the
MSG_OOB
flag in recv() (see recv (2)) and
send() (see send(2)).
Addressing
AF_UNIX socket addresses are path names. They are limited to 92 bytes in length, including a terminat-
ing null byte. Calls to bind() to an AF_UNIX socket utilize an addressing structure called
structsockaddr_un (see bind (2)). Pointers to this structure should be used in all
AF_UNIX socket sys-
tem calls wherever they require a pointer to a
struct sockaddr.
The include file <
sys/un.h> defines this addressing structure. Within this structure are two notable
fields. The first is sun_family , which must be set to AF_UNIX. The next is sun_path , which is the null-
terminated character string that specifies the path name of the file associated with the socket (for exam-
ple,
/tmp/mysocket).
Only the passive (listening) socket must bind to an address. The active socket connects to that address,
but it does not need an address of its own.
For additional information on using
AF_UNIX sockets for interprocess communication, refer to the BSD
Sockets Interface Programmer’s Guide.
Socket Buffer Size
For stream and datagram sockets, the maximum send and receive buffer size is 262142 bytes. The
default buffer size is 32768 bytes. The send and receive buffer sizes can be altered by using the
SO_SNDBUF and SO_RCVBUF options of the setsockopt() system call. Refer to getsockopt (2) for
details.
AUTHOR
AF_UNIX was developed by the University of California, Berkeley.
SEE ALSO
getsockopt(2), socket(2).
HP-UX 11i Version 2: September 2004 − 1 − Hewlett-Packard Company Section 7−−203