Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
UDP(4)			 BSD Kernel Interfaces Manual			UDP(4)

NAME
     udp -- Internet User Datagram Protocol

SYNOPSIS
     #include <sys/types.h>
     #include <sys/socket.h>
     #include <netinet/in.h>

     int
     socket(AF_INET, SOCK_DGRAM, 0);

DESCRIPTION
     UDP is a simple, unreliable datagram protocol which is used to support
     the SOCK_DGRAM abstraction	for the	Internet protocol family.  UDP sockets
     are connectionless, and are normally used with the	sendto(2) and
     recvfrom(2) calls,	though the connect(2) call may also be used to fix the
     destination for future packets (in	which case the recv(2) or read(2) and
     send(2) or	write(2) system	calls may be used).

     UDP address formats are identical to those	used by	TCP.  In particular
     UDP provides a port identifier in addition	to the normal Internet address
     format.  Note that	the UDP	port space is separate from the	TCP port space
     (i.e., a UDP port may not be "connected" to a TCP port).  In addition
     broadcast packets may be sent (assuming the underlying network supports
     this) by using a reserved "broadcast address"; this address is network
     interface dependent.

     Options at	the IP transport level may be used with	UDP; see ip(4).

MIB VARIABLES
     The udp protocol implements a number of variables in the net.inet branch
     of	the sysctl(3) MIB.

     UDPCTL_CHECKSUM	(udp.checksum) Enable udp checksums (enabled by	de-
			fault).

     UDPCTL_MAXDGRAM	(udp.maxdgram) Maximum outgoing	UDP datagram size

     UDPCTL_RECVSPACE	(udp.recvspace)	Maximum	space for incoming UDP data-
			grams

     udp.log_in_vain	For all	udp datagrams, to ports	on which there is no
			socket listening, log the connection attempt (disabled
			by default).

     udp.blackhole	When a datagram	is received on a port where there is
			no socket listening, do	not return an ICMP port	un-
			reachable message.  (Disabled by default.  See
			blackhole(4).)

ERRORS
     A socket operation	may fail with one of the following errors returned:

     [EISCONN]		when trying to establish a connection on a socket
			which already has one, or when trying to send a	data-
			gram with the destination address specified and	the
			socket is already connected;

     [ENOTCONN]		when trying to send a datagram,	but no destination ad-
			dress is specified, and	the socket has not been	con-
			nected;

     [ENOBUFS]		when the system	runs out of memory for an internal
			data structure;

     [EADDRINUSE]	when an	attempt	is made	to create a socket with	a port
			which has already been allocated;

     [EADDRNOTAVAIL]	when an	attempt	is made	to create a socket with	a net-
			work address for which no network interface exists.

SEE ALSO
     getsockopt(2), recv(2), send(2), socket(2), blackhole(4), inet(4),
     intro(4), ip(4)

HISTORY
     The udp protocol appeared in 4.2BSD.

BSD				 June 5, 1993				   BSD

NAME | SYNOPSIS | DESCRIPTION | MIB VARIABLES | ERRORS | SEE ALSO | HISTORY

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=udp&sektion=4&manpath=FreeBSD+10.1-RELEASE>

home | help