DOS protection of non-relay req/resp protocols has a new cli argument, now described officially.

This commit is contained in:
NagyZoltanPeter 2024-09-13 15:36:55 +02:00
parent 583a4105b6
commit ee878472a7
No known key found for this signature in database
GPG Key ID: 16EADB9673B65368

View File

@ -156,6 +156,12 @@ Here are the available node configuration options, along with their default valu
| `websocket-secure-key-path` | | Secure websocket key path: '/path/to/key.txt' |
| `websocket-secure-cert-path` | | Secure websocket Certificate path: '/path/to/cert.txt' |
## Non relay, request-response protocol DOS protection configuration
| Name | Default Value | Description |
| ---------------------------- | ------------- | ------------------------------------------------------ |
| <nobr>`rate-limit`</nobr> | | This is a repeatable option. Each one of them can describe spefic rate limit configuration for a particular protocol.<br>\<protocol\>:volume/period\<time-unit\><br>- if protocol is not given, settings will be taken as default for un-set protocols. Ex: `80/2s`<br>-Supported protocols are: `lightpush`\|`filter`\|`px`\|`store`\|`storev2`\|`storev3`<br>-volume must be an integer value, representing number of requests over the period of time allowed.<br>-period\<time-unit\> must be an integer with defined unit as one of `h`\|`m`\|`s`\|`ms`<br>- `storev2` and `storev3` takes precedence over `store` which can easy set both store protocols at once.<br>- In case of multiple set of the same protocol limit, last one will take place.<br>- if config is not set it means unlimited requests are allowed.<br>-filter has a bit different approach. It has a default setting applied if not overridden. Rate limit setting for filter will be applied per subscriber-peers, not globally - it must be considered when changing the setting.<br><br>Examples:<br>- `100/1s` - default for all protocols if not set otherwise.<br>-`lightpush:0/0s` - lightpush protocol will be not rate limited.<br>-`store:130/1500ms` - both store-v3 and store-v2 will apply 130 request per each 1500ms separately.<br>-`px:10/1h` PeerExchange will serve only 10 requests in every hour.<br>-`filter:8/5m` - will allow 8 subs/unsubs/ping requests for each subscribers within every 5 min. |
:::tip
To configure your node using the provided configuration options, have a look at the [Node Configuration Methods](/guides/nwaku/config-methods) guide.
:::