You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Libp2p rendezvous is a lightweight mechanism for generalized peer discovery. It can be used for bootstrap purposes, real time peer discovery, application specific routing, and so on. Any node implementing the rendezvous protocol can act as a rendezvous point, allowing the discovery of relevant peers in a decentralized fashion.
Motivation
Over the last few years, libp2p has provided libp2p/js-libp2p-webrtc-star and libp2p/js-libp2p-websocket-star to enable browser nodes to discover each others in the network and be able to connect. These were never designed to be long term solutions, but to be quick tools for demos. In addition, they re-implement a lot of what libp2p can do, such as connection authentication, peer-discovery, circuit-relay and rendezvous.
The rendezvous protocol is the missing piece in the js-libp2p for enabling full connectivity between browser nodes, as well as other constrained environments, without the need for these *-star transports.
Benefits:
By cutting of the *-star transports, we would be saving the time from reinventing the wheel and also reduce the confusion from the users.
Any IPFS/libp2p node could then be the rendezvous or the relaying address (meaning that we can use the go-libp2p to handle with even more clients).
We avoid spending time creating custom instrumentation and use instead the instrumentation that IPFS & libp2p have.
Any security, perf improvement or memory leak fix will be directly on libp2p and/or IPFS rather than external "temporary" code.
People would not have to rely on a centralized of custom built infrastructure, instead, they could use it with any IPFS/libp2p node.
The rendezvous implementation is part of libp2p/js-libp2p#385, where we aim to sunset the *-star protocols. This implementation solves most of what we need to finally sunset all these protocols except for webrtc-star. However, this work is also the groundwork to also support webrtc distributed signalling, so that we can sunset the *-star protocols.
This was delayed for 0.30 release so that we can cut out 0.29 sooner
so given this seems to be actually implemented since about 2-4 years ago (judging by various open, conflicting, PRs in various repos), and was supposed to be in 0.29, then 0.30 and then apparently 0.32, which ALSO is closed now (2 years after you last mentioned it), can we expect js-libp2p to actually...yknow...do working networking within this decade?
@nonchip I responded to your other comment here libp2p/js-libp2p-rendezvous#6 (comment)
We probably won't work to support rendezvous anytime soon. If you want solutions for browser connectivity with js-libp2p, know that we have a browser to server solution in WebTransport and WebRTC as well as a WebRTC browser-to-browser solution coming in soon.
Rendezvous Spec
Background
Libp2p rendezvous is a lightweight mechanism for generalized peer discovery. It can be used for bootstrap purposes, real time peer discovery, application specific routing, and so on. Any node implementing the rendezvous protocol can act as a rendezvous point, allowing the discovery of relevant peers in a decentralized fashion.
Motivation
Over the last few years, libp2p has provided libp2p/js-libp2p-webrtc-star and libp2p/js-libp2p-websocket-star to enable browser nodes to discover each others in the network and be able to connect. These were never designed to be long term solutions, but to be quick tools for demos. In addition, they re-implement a lot of what libp2p can do, such as connection authentication, peer-discovery, circuit-relay and rendezvous.
The rendezvous protocol is the missing piece in the
js-libp2p
for enabling full connectivity between browser nodes, as well as other constrained environments, without the need for these *-star transports.Benefits:
References:
Milestones
The rendezvous implementation is part of libp2p/js-libp2p#385, where we aim to sunset the
*-star
protocols. This implementation solves most of what we need to finally sunset all these protocols except forwebrtc-star
. However, this work is also the groundwork to also support webrtc distributed signalling, so that we can sunset the*-star
protocols.1) Rendezvous Implementation
2) Rendezvous client in js-libp2p
3) Rendezvous IPFS/libp2p browser example
4) Deploy a set of libp2p rendezvous nodes
5) Rendezvous used by default in js-ipfs
6) IPFS/libp2p browser guide blogpost
The text was updated successfully, but these errors were encountered: