Status: draft

Context

When talking about networking topology, various options exist for building decentralized communication applications on the client side, including,

On server side, p2p connection is always preferred to remove central point of failure and maintain a decentralized network.

<aside> 💡 Note: Here Client means the application runs on user devices, usually behind a NAT, has limited online time and bandwidth. Server means the daemon process runs Waku protocol, helps with message availability and gossiping, usually has a public IP attached, always online and high bandwidth.

</aside>

To ensure the Waku network is preferred in building decentralized communication apps, there are a lot of requirements need to be met. Here list a few points which may relate to this doc,

Client - P2P Connection via Libp2p

Pros: