Skip to content

Call out the benefits of browser-compatible transports #25

@aschmahmann

Description

@aschmahmann

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 (Update go-libp2p and redeploy #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.)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions