> For the complete documentation index, see [llms.txt](https://rings.gitbook.io/rings-network/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://rings.gitbook.io/rings-network/wasm-node-webassembly-for-browsers/connect-rings-network.md).

# Connect Rings Network

Rings is a peer-to-peer network based on WebRTC transport, and as such, you have multiple ways to establish connections:

### Peer-to-Peer：

You can establish a direct connection by exchanging Session Description Protocol (SDP). SDP is a format used to describe media session characteristics in a format that can be exchanged between peers. Read more:

[Exchange SDP](/rings-network/advanced-topic/exchange-sdp.md)

### Via Entry Point

Rings nodes are functionally equivalent, but they are divided into two categories based on the execution environment: Node nodes and Browser nodes. Node nodes are allowed to enable an external service called `EntryPoint`.

The Entry Point is an HTTP service primarily used to assist in the initialization and network connection of nodes within a firewall. As long as you can connect to one of the nodes, you can join the Rings Network.

If you have installed a Node node, you can use the following command to utilize the Entry Point:

```bash
rings connect node <entry_point url>
```

If you are using a Browser node, you can utilize the Entry Point by calling the following function:

```javascript
client.connect_peer_via_http(url)
```

Future reading:

[How handshake works](/rings-network/advanced-topic/handshake.md)
