mirror of
https://github.com/waku-org/nwaku.git
synced 2025-01-27 07:06:42 +00:00
chore(rln-relay): adds Rln-relay testnet2 tutorial (#1232)
* first version * proof read * adds a new line
This commit is contained in:
parent
a9fa3a29a4
commit
44d8a2026d
31
docs/tutorial/rln-chat-cross-client.md
Normal file
31
docs/tutorial/rln-chat-cross-client.md
Normal file
@ -0,0 +1,31 @@
|
||||
# Waku-RLN-Relay Testnet2: Cross-Client
|
||||
|
||||
In this tutorial, the aim is to test the interoperability of the 3 available Waku v2 clients namely, Nim, Go, and JS over the Waku network in the spam-protected mode.
|
||||
Spam protection is done by rate limiting each message publisher.
|
||||
At the time of this tutorial, the messaging rate is set to `1` per Epoch where Epoch duration is set to `10` seconds.
|
||||
You will find more about the details of spam protection in the chat clients tutorial provided below.
|
||||
Messaging rate/spam protection is enabled through [Waku-RLN-Relay protocol](https://rfc.vac.dev/spec/17/) that is mounted on the routing hops.
|
||||
For ease of demonstration, we make use of Nim-chat, Go-chat, and JS-chat applications that are developed on top of their respective Waku v2 clients.
|
||||
You will need to set up one instance of each chat client in spam-protected mode and then start messaging with them.
|
||||
As for the setup, please follow the tutorials below:
|
||||
- [Nim-chat](./onchain-rln-relay-chat2.md)
|
||||
- [Go-chat](https://github.com/status-im/go-waku/blob/master/docs/tutorials/rln.md)
|
||||
- [JS-chat](https://examples.waku.org/rln-js/)
|
||||
|
||||
Once you set up your chat clients, they will all be connected to the Waku v2 test fleets as their first hop.
|
||||
Messages generated by all the chat clients are set to be published on a specific combination of pubsub and content topic i.e., the default pubsub topic of `/waku/2/default-waku/proto` and the content topic of `/toy-chat/2/luzhou/proto`.
|
||||
The test fleets also run Waku-RLN-Relay over the same pubsub topic and content topic.
|
||||
Test fleets act as routers and enforce the message rate limit.
|
||||
As such, any spam messages published by the chat clients on the said combination of topics will be caught by the Waku v2 test fleet nodes and will not be routed.
|
||||
Note that spam protection does not rely on the presence of the test fleets.
|
||||
In fact, all the chat clients (except js-chat as it is in progress) are also capable of catching and dropping spam messages if they receive any.
|
||||
You can test it by connecting two chat clients (running Waku-RLN-Relay) directly to each other and see if they can spot each other's spam activities.
|
||||
|
||||
Note: JS-chat will use the [WAKU2-LIGHTPUSH protocol](https://rfc.vac.dev/spec/19/) to push its messages to the Waku v2 test fleets.
|
||||
Waku v2 test fleets will act according to the WAKU2-LIGHTPUSH specifications and push that message to the network without any further verification.
|
||||
That is, they do not enforce spam protection in that specific protocol but rather act merely as a message publisher (this behavior may change in the future though).
|
||||
As such, you can expect to receive spam messages published by the JS-chat clients from other connecting chat clients i.e., Go-chat and Nim-chat.
|
||||
However, you will see that such messages will be immediately identified as spam on those clients and a proper message will be displayed on the console.
|
||||
|
||||
|
||||
You can also find a recorded demo of this testnet in the following [video](https://drive.proton.me/urls/EC4G8SY2J8#ie92Wtje1f4O).
|
Loading…
x
Reference in New Issue
Block a user