@@ -20,20 +20,24 @@ This specification describes the Waku lightpush protocol used with resource rest
20
20
A non-relay node, or a edge node,
21
21
are resource restricted devices that have short connection windows and
22
22
limited bandwidth.
23
- Edge nodes should be able to send and receive messages in the network.
24
- To accomplish this, the lightpush protocol helps edge nodes push messages to other nodes
23
+ Edge nodes should be able to send and receive messages in the network.
24
+ To accomplish this,
25
+ the lightpush protocol helps edge nodes push messages to other nodes
25
26
in the [ 64/WAKU-NETWORK] ( /waku/standards/core/64/network.md ) for access to message services.
26
27
A common use case is to request that a service node publish a message,
27
28
received by an edge node, to an [ 11/WAKU2-RELAY] ( /waku/standards/core/11/relay.md ) pubsub-topic.
28
- Additionally, in some cases, there is a need for confirmation that a message has been received "by the network"
29
+ Additionally, in some cases,
30
+ there is a need for confirmation that a message has been received "by the network"
29
31
(here, at least one node).
30
32
31
33
## Payloads
34
+
32
35
The keywords “MUST”, “MUST NOT”, “REQUIRED”, “SHALL”, “SHALL NOT”, “SHOULD”,
33
- “SHOULD NOT”, “RECOMMENDED”, “MAY”, and
36
+ “SHOULD NOT”, “RECOMMENDED”, “MAY”, and
34
37
“OPTIONAL” in this document are to be interpreted as described in [ 2119] ( https://www.ietf.org/rfc/rfc2119.txt ) .
35
38
36
- Below describes the protobuf stucture used by Waku edge nodes and Waku service nodes who have lightpush enabled (set to ` true ` ):
39
+ Below describes the protobuf stucture used by Waku edge nodes and
40
+ Waku service nodes who have lightpush enabled (set to ` true ` ):
37
41
38
42
``` protobuf
39
43
syntax = "proto3";
@@ -57,7 +61,8 @@ message LightPushResponse {
57
61
58
62
Nodes that respond to ` LightPushRequest ` SHOULD
59
63
60
- - either relay the encapsulated message via [ 11/WAKU2-RELAY] ( /waku/standards/core/11/relay.md ) protocol on the specified ` pubsub_topic `
64
+ - either relay the encapsulated message via
65
+ [ 11/WAKU2-RELAY] ( /waku/standards/core/11/relay.md ) protocol on the specified ` pubsub_topic `
61
66
- or perform another requested service.
62
67
` Services beyond [11/WAKU2-RELAY](/waku/standards/core/11/relay.md) are yet to be defined. `
63
68
@@ -70,7 +75,7 @@ it SHOULD return an error code in `LightPushResponse`.
70
75
Possible error codes described below.
71
76
72
77
Once the relay is successful,
73
- the ` relay_peer_count ` will indicate the number of peers that the node has managed to relay the message to.
78
+ the ` relay_peer_count ` will indicate the number of peers that the node has managed to relay the message to.
74
79
It's important to note that this number may vary depending on the node subscriptions and
75
80
support for the requested ` pubsub_topic ` .
76
81
The client can use this information to either consider the relay as successful or
@@ -98,6 +103,7 @@ take further action, such as switching to a lightpush service peer with better c
98
103
Since this can introduce an amplification factor,
99
104
it is RECOMMENDED for the node relaying to the rest of the network to take extra precautions.
100
105
Therefore Waku applies or will apply:
106
+
101
107
- DOS protection through request rate limitation on the service itself.
102
108
- message rate limiting via [ 17/WAKU2-RLN-RELAY] ( https://rfc.vac.dev/waku/standards/core/17/rln-relay ) , applied via network membership subscription.
103
109
@@ -113,7 +119,7 @@ Copyright and related rights waived via [CC0](https://creativecommons.org/public
113
119
114
120
## References
115
121
116
- * [ 11/WAKU2-RELAY] ( ../11/relay.md )
117
- * [ WAKU2-DANDELION] ( https://github.com/waku-org/specs/blob/master/standards/application/dandelion.md )
118
- * [ 17/WAKU2-RLN-RELAY] ( ../17/rln-relay.md )
119
- * [ WAKU2-INCENTIVIZATION] ( https://github.com/waku-org/specs/blob/master/standards/core/incentivization.md )
122
+ - [ 11/WAKU2-RELAY] ( ../11/relay.md )
123
+ - [ WAKU2-DANDELION] ( https://github.com/waku-org/specs/blob/master/standards/application/dandelion.md )
124
+ - [ 17/WAKU2-RLN-RELAY] ( ../17/rln-relay.md )
125
+ - [ WAKU2-INCENTIVIZATION] ( https://github.com/waku-org/specs/blob/master/standards/core/incentivization.md )
0 commit comments