ipfs-check
ipfs-check copied to clipboard
Call out the benefits of browser-compatible transports
When listing addresses for peers we should explicitly check if they have advertised browser-compatible transport addresses (WSS, WebTransport, WebRTC) and if they are reachable. May want to link to https://connectivity.libp2p.io/
Supporting WSS/WebTransport/WebRTC addresses means that nodes in more limited environments, in particular browser nodes, will be able to fetch data directly from you rather than requiring some other node to proxy requests for them and slow things down in the process. While these protocols generally have more performant alternatives, for example WSS is not the most performant protocol (e.g. libp2p's usage of WS is more efficient than WSS) it can be important to have it exposed. WebTransport and WebRTC should make this even easier for people who don't have the domain names needed for WSS support.
Pieces required to make this happen:
- Try explicitly dialing WSS/WebTransport/WebRTC addresses from the internal go-libp2p node if they are available rather than other addresses
- We could also try all the addresses and report back which ones are reachable vs not
- Requires an update of go-libp2p in order for these dials to work at all (#26)
- Front end processing and text to signal to the end user that it's fine if they don't support these protocols but that they should if they can
- Pointer to instructions for how they can do so (e.g. a WSS listener or a WS listener with some TLS termination endpoint in front, enabling WebTransport, etc.)