I would not that starting dynamic ports above 1024 or even above 4096
is not sufficient. There are already services with assigned ports
higher than that. And it keeps growing. The IANA list of well-known
ports is quite long.
If we could go back and start over, something like dynamic DNS and
SRV records would get us out of the mess. But that is not a viable choice.
Yes, whenever possible one starts services before applications which
grab dynamic port numbers. Unfortunately, that sometimes does not work.
All that aside, the IANA has a distinction (based on history) between
ports below 1024 and those above. And whne asking for a port number
assignment, one specifies which range one wants. I had least can not
find a coherent strategy for what should be on one side or the other
of that boundary.
Yours,
Joel
At 03:41 PM 3/18/2006, Christian Huitema wrote:
> A more interesting question is this: what are the odds that a user
> process will accidentally grab the port number before the system
> process gets to it? The notion of a "privileged" port number is
> certainly preposterous; that said, putting services in a range that
> ordinary applications tend not to use has its merits.
There are two issues there, accidental collision between a dynamic port
and a service port, and "voluntary" collision between applications
trying to open the same port.
The practical solution to the first problem are to start services and
grab ports as part of the boot sequence, i.e. before user processes
start, and start dynamic allocations at some high number (e.g. larger
than 1024 or larger than 4096 or some admin defined value depending on
system version and configuration). If there is a reserved range, then it
is easy to start dynamic allocation outside the range.
Starting services quickly also helps with the "voluntary collisions"
between system services and applications, but is not foolproof. In any
case, it does not help with collisions between applications, e.g. two
applications trying to use the same port. What does help there is an
easily accessible registration system, so application developers can
easily "do the right thing", i.e. reserve a port and avoid collisions.
Note the emphasis on "easily accessible": if there are too many hoops to
jump through, the developers will likely just pick a number at random.
-- Christian Huitema
_______________________________________________
Ietf@xxxxxxxx
https://www1.ietf.org/mailman/listinfo/ietf
_______________________________________________
Ietf@xxxxxxxx
https://www1.ietf.org/mailman/listinfo/ietf