tracy icon indicating copy to clipboard operation
tracy copied to clipboard

UDP broadcast port 8086 reserved on Apple systems?

Open slomp opened this issue 9 months ago • 3 comments

I ran into issue on macOS where Tracy profiler was unable to listen for UDP broadcast messages from clients on port 8086. More specifically, socket bind() would fail with "error 48 address in use" even though the address reuse socket option (SO_REUSEADDR) was enabled.

I found out that port 8086 was being used by the system for something, and that I could not even kill the related process. Rebooting the system did not help at first, but on the next day, after another reboot, port 8086 was free again. I am not sure what prompts the system to star using the port.

After some digging, it looks like Apple has the range of ports [8000, 8999] reserved for "Web service, iTunes Radio streams", whatever that means: https://support.apple.com/en-us/HT202944

In addition, port 8086 is also an officially assigned IANA port as of 2008 for "Distributed SCADA Networking Rendezvous Port": https://www.adminsub.net/tcp-udp-port-finder/8086 https://www.speedguide.net/port.php?port=8086 https://www.iana.org/assignments/service-names-port-numbers/service-names-port-numbers.xml

If we were to stick with the Intel homage, perhaps we could use port 4004, which does not seem to be used for anything "mainstream".

slomp avatar Sep 21 '23 17:09 slomp