datproject-discussions
datproject-discussions copied to clipboard
p2p connection research
using this issue to document links to research and statistics on various p2p connection mechanisms: STUN (UDP hole punching), TCP hole punching, ICMP hole punching etc
- http://www.brynosaurus.com/pub/net/p2pnat/
- found ~80% of routers support udp hole punching, ~60% tcp simultaneous open
- "well known rendezvous server"
- "hairpin translation"
- for multi-level nats, hairpin is necessary but not very common
connection types
- direct connection
- connection relaying
- connection reversal
- udp hole punching
- tcp hole punching
- icmp hole punching
discovery types
- LAN MDNS
- LAN UPNP SSDP
- DHT
- Tracker
Does node support tcp hole punching using the net module?
@mafintosh not sure, it would need the syscalls SO_REUSEPORT and SO_REUSEADDR
@maxogden i'll look into that