Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add STUN functionality #85

Closed
robert-cronin opened this issue Aug 18, 2020 · 1 comment
Closed

Add STUN functionality #85

robert-cronin opened this issue Aug 18, 2020 · 1 comment
Assignees
Labels
development Standard development

Comments

@robert-cronin
Copy link
Contributor

With #84, js-polykey will have all it needs to do NAT traversal reliably with just TCP hole punching and TURN relay server functionality. In the grand scheme of things, however, this is not completely adequate as it leaves out STUN functionality. With thousands of private nodes connecting to a single public node, TURN sockets will fill up quickly and a the relay traffic will become a burden on infrastructure. STUN will alleviate some of this burden by first trying to connect the private nodes directly (TCP hole punching tries to do this blindly but doesn't work behind symmetric NATs).

There are some projects that already attempt to do this but I have found none in pure TCP (this is another reason why we should wait, STUN might require js-polykey to employ UDP transports to fully utilise it's potential.):
https://www.npmjs.com/package/stunsrv
https://github.com/summerwind/node-stun
https://github.com/enobufs/stun

Related to #37

@robert-cronin robert-cronin added the development Standard development label Aug 18, 2020
@robert-cronin robert-cronin self-assigned this Aug 18, 2020
@robert-cronin
Copy link
Contributor Author

Closing on account of migration to gitlab

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
development Standard development
Development

No branches or pull requests

1 participant