Jump to content United States-English
HP.com Home Products and Services Support and Drivers Solutions How to Buy
» Contact HP
More options
HP.com home
HP-UX Reference > U


HP-UX 11i Version 3: February 2007

Technical documentation

» Feedback
Content starts here

 » Table of Contents

 » Index


UDP — Internet User Datagram Protocol


#include <sys/types.h> #include <sys/socket.h> #include <netinet/in.h> s = socket(AF_INET, SOCK_DGRAM, 0); s = socket(AF_INET6, SOCK_DGRAM, 0);


UDP is a simple, unreliable datagram protocol used to support the SOCK_DGRAM socket type for the internet protocol family. UDP sockets are connectionless, and are normally used with the sendto() and recvfrom() calls (see send(2) and recv(2). The connect() call can also be used to simulate a connection (see connect(2). When used in this manner, it fixes the destination for future transmitted packets (in which case the send() or write() system calls can be used), as well as designating the source from which packets are received. The recv() and read() calls can be used at any time if the source of the message is unimportant.

UDP address formats are identical to those used by TCP. In particular, UDP requires a port identifier in addition to the normal Internet address format. Note that the UDP port domain is separate from the TCP port domain (in other words, a UDP port cannot be connected to a TCP port).

The default send buffer size for UDP sockets is 65535 bytes. The default receive buffer size for UDP sockets is 2147483647 bytes. The send and receive buffer sizes for UDP sockets can be set by using the SO_SNDBUF and SO_RCVBUF options of the setsockopt() system call or the XTI_SNDBUF and XTI_RCVBUF options of the t_optmgmt() system call. The maximum size for these buffers is 2147483647 bytes. The maximum receive buffer size may be lowered using the ndd parameter udp_recv_hiwater_max.

The maximum message size for a UDP datagram socket is limited by the lesser of the maximum size of an IP datagram and the size of the UDP datagram socket buffer. The maximum size of an IP datagram limits the maximum message size of a UDP message to 65507 bytes. Therefore, using the maximum socket buffer size will allow multiple maximum-sized messages to be placed on the send queue. The default inbound and outbound message size limit for a UDP datagram socket is 65535 bytes.

The maximum message size for a UDP broadcast is limited by the MTU size of the underlying link.


One of the following errors may be returned in errno if a socket operation fails. For a more detailed list of errors, see the man pages for specific system calls.


Attempt to send a datagram with the destination address specified, when the socket is already connected.


No buffer space is available for an internal data structure.


Attempt to create a socket with a port which has already been allocated.


Attempt to create a socket with a network address for which no network interface exists.


The socket interfaces to UDP were developed by the University of California, Berkeley.


ndd(1M). getsockopt(2), recv(2), send(2), socket(2), t_open(3), t_optmgmt(3) inet(7F), socket(7),

RFC 768

User Datagram Protocol

RFC 1122

Requirements for Internet hosts

Printable version
Privacy statement Using this site means you accept its terms Feedback to webmaster
© 1983-2007 Hewlett-Packard Development Company, L.P.