|
Quick Lists
|
|
Bug ID:
|
6432031
|
|
Votes
|
1
|
|
Synopsis
|
No way to access SO_REUSEPORT on sockets
|
|
Category
|
java:classes_net
|
|
Reported Against
|
|
|
Release Fixed
|
|
|
State
|
3-Accepted,
request for enhancement
|
|
Priority:
|
5-Very Low
|
|
Related Bugs
|
|
|
Submit Date
|
31-MAY-2006
|
|
Description
|
A DESCRIPTION OF THE REQUEST :
There is no way to access the SO_REUSEPORT socket option in the JDK. The addition of a setReusePort() and getReusePort() function equivalent to setReuseAddress() and getReuseAddress() would fill this gap.
Alternatively, a more generic way of setting and querying individual socket options would suffice.
JUSTIFICATION :
Quite a lot of peer to peer systems are now making use of this flag in order to avoid having to configure many ports on network address translators. With this flag, both outgoing and incoming connections can be bound to the same port and consequently remain bound to the same external port of the NAT.
EXPECTED VERSUS ACTUAL BEHAVIOR :
EXPECTED -
Add setReusePort() and getReusePort() to the JDK.
ACTUAL -
Not applicable.
---------- BEGIN SOURCE ----------
Not applicable.
---------- END SOURCE ----------
CUSTOMER SUBMITTED WORKAROUND :
Not applicable.
Posted Date : 2006-05-31 05:40:28.0
|
|
Work Around
|
N/A
|
|
Evaluation
|
SO_REUSEPORT is introduced in BSD4.4, mainly for multicast. The sematic is to allow completely duplicate bindings, but only if each socket that wants to bind the same IP address and port specify this socket option.
The problem is not all systems support this option. Currently, Solaris and Windows seem not support it yet. But when binding to multicast IP address, SO_REUSEADDR is considered equivalent to SO_REUSEPORT.
May check the situation in future release.
Posted Date : 2006-05-31 08:44:45.0
|
|
Comments
|
PLEASE NOTE: JDK6 is formerly known as Project Mustang
|
|
|
 |