This preview shows page 1. Sign up to view the full content.
Unformatted text preview: ecified in the RFCs, most implementations allow only one application end
point at a time to be associated with any one local IP address and UDP port number. When a
UDP datagram arrives at a host destined for that IP address and port number, one copy is
delivered to that single end point. The IP address of the end point can be the wildcard, as shown
For example, under SunOS 4.1.3 we start one server on port 9999 with a wildcarded local IP
sun % sock -u -s 9999
If we then try to start another server with the same wildcarded local address and the same port,
it doesn't work, even if we specify the -A option:
sun % sock -u -s 9999 we expect this to fail
can't bind local address: Address already in use file:///D|/Documents%20and%20Settings/bigini/Doc...omenet2run/tcpip/tcp-ip-illustrated/udp_user.htm (27 of 29) [12/09/2001 14.46.58] Chapter 11. UDP: User Datagram Protocol sun % sock -u-s-A 9999 so we try -A flag this time
can't bind local address: Address already in use
On systems that support multicasting (Chapter 12), this changes. Multiple end points can use
the same local IP address and UDP port number, although the application normally must tell the
API that this is OK (i.e., our -A flag to specify the SO_REUSEADDR socket option).
4.4BSD, which supports multicasting, requires the application to set a different socket option
(SO_REUSEPORT) to allow multiple end points to share the same port. Furthermore each end
point must specify this option, including the first one to use the port.
When a UDP datagram arrives whose destination IP address is a broadcast or multicast address,
and there are multiple end points at the destination IP address and port number, one copy of the
incoming datagram is passed to each end point. (The end point's local IP address can be the
wildcard, which matches any destination IP address.) But if a UDP datagram arrives whose
destination IP address is a unicast address, only a single copy of the datagram is delivered to
one of the end points. Which end po...
View Full Document
This test prep was uploaded on 04/04/2014 for the course ECE EL5373 taught by Professor Guoyang during the Spring '12 term at NYU Poly.
- Spring '12