Rings Network
  • Introduction
    • 🚀Start Here
  • Native Node
    • Native Node
    • Host a Native Node
  • Wasm Node (WebAssembly for Browsers)
    • Build for Wasm
    • Connect Rings Network
  • Advanced topic
    • Architecture
    • How handshake works
    • Exchange SDP
    • DHT - Network Layer
    • API
    • Account Abstraction
    • config.yaml
  • Features
    • Decentralized services
  • External message handler
  • examples
    • Decentralized Service Examples
Powered by GitBook
On this page
  1. Advanced topic

How handshake works

Rings Network has chosen to use WebRTC as the transport layer, which facilitates the implementation of a purely peer-to-peer (P2P) network. This means that with the help of the WebRTC protocol and WebAssembly (Wasm), Rings nodes can run fully functional within web browsers.

The WebRTC protocol is platform-agnostic and leverages Interactive Connectivity Establishment (ICE) for network traversal. It enables peers to establish direct connections by exchanging Session Description Protocol (SDP) for the purpose of handshake and negotiation.

Rings Network supports two ways for establishing connections: Relay and Direct.

  • Relay: This involves establishing connections through a third-party node, such as a Rings node that has an endpoint service enabled. Using a relay offers convenience in establishing connections.

  • Direct: This refers to establishing peer-to-peer connections by directly exchanging SDP information. Direct connections are more decentralized in nature.

Both approaches have their advantages. Relay connections are more convenient, while direct connections provide a more decentralized approach.

To understand more about how handshake works, you may like to read:

Exchange SDP

PreviousArchitectureNextExchange SDP

Last updated 1 year ago