shorten rendezvous server section

This commit is contained in:
Christian Ulrich 2020-10-20 00:35:28 +02:00
parent 31f09a0a88
commit d04bbfa4b9
No known key found for this signature in database
GPG Key ID: 8241BE099775A097
1 changed files with 1 additions and 2 deletions

View File

@ -8,8 +8,7 @@ The idea is to try out a sequence of well known hole punching techniques until o
- [SYNI](https://www.uni-kassel.de/eecs/fileadmin/datas/fb16/Fachgebiete/UC/papers/HWW_11-SYNI.pdf) (TCP hole punching based on SYN injection), DOI: 10.1109/NCA.2011.66 - [SYNI](https://www.uni-kassel.de/eecs/fileadmin/datas/fb16/Fachgebiete/UC/papers/HWW_11-SYNI.pdf) (TCP hole punching based on SYN injection), DOI: 10.1109/NCA.2011.66
- [NUTSS](https://www.cs.cornell.edu/people/francis/nutss-fdna.pdf) (TCP hole punching, the non-spoofing approach described in section 4.2.2 of the paper), DOI: 10.1145/1016707.1016715 - [NUTSS](https://www.cs.cornell.edu/people/francis/nutss-fdna.pdf) (TCP hole punching, the non-spoofing approach described in section 4.2.2 of the paper), DOI: 10.1145/1016707.1016715
The assumption of those techniques is that there is a side-channel (i.e. a rendezvous server) between the two hosts. A peer that wants to be available for hole punching needs to constantly be connected (subscribed) to the rendezvous server so it can be notified by other peers about new hole punching attempts. Also it needs to provide its peer ID (e.g. a public key for encryption) and its endpoint (public IP address and port) to other peers before those can initiate the hole punching. The assumption of those techniques is that there is a side-channel (i.e. a rendezvous server) between the two hosts. A peer that wants to be available for hole punching needs to constantly be connected (subscribed) to the rendezvous server so it can be notified by other peers about new hole punching attempts. Also it needs to provide an endpoint (public IP address and port) to other peers before those can initiate the hole punching. See the example applications for a naive rendezvous server implementation.
The example applications include a naive rendezvous server implementation which allows any peer to subscribe by registering a peer ID (an arbitrary string) and endpoint information. Other peers can then query that information and send notifications through the server.
# How can I use punchd? # How can I use punchd?