moved multicast to an extension spec

This commit is contained in:
Izaya 2018-03-07 18:05:14 +11:00
parent 25dce8a759
commit fe52a72659
2 changed files with 13 additions and 13 deletions

View File

@ -36,19 +36,6 @@ When sending a message, check the cache for the given destination. If there is a
### Optional: Broadcast address
Packets addressed to the broadcast address, an address beginning with the tilde character, `~`, ASCII 126, can optionally be received by all nodes of the same layer 2 network. While a node MAY forward a broadcast packet to other nodes, it SHOULD NOT, unless both sides of the forward are prepared to handle such a packet, to avoid it going around the entire layer 3 network.
### Optional: Multicast
A multicast packet has a specially formatted address part.
The address must be a list of valid addresses, beginning with `~` seperated by the tilde character, `~`, ASCII 126.
For example, to send to nodes `a` and `b`, the address in the packet would be `~a~b`.
Each node should send multicasts as layer 2 broadcasts, unless it is known (using the address cache) that all layer 3 destination addresses have to be sent to or forwarded by one layer 2 address.
When a multicast packet is forwarded, the addresses already seen SHOULD be removed from the packet when possible, using the address cache as a guide.
The same address MUST NOT be repeated in a multicast destination, but the duplicate MAY be ignored and just considered one, but also MAY br dropped as an invalid packet. A duplicate address MUST NOT be considered as two packets with the same contents to the same address.
A multicast packet SHOULD also be able to be broken up into multiple packets with the same contents (but they need different packet IDs!) with different addresses.
### WIP, Optional: Network status packets
Currently undecided on specifics and taking input.

13
protocol-ext-multicast.md Normal file
View File

@ -0,0 +1,13 @@
### Optional: Multicast
A multicast packet has a specially formatted address part.
The address must be a list of valid addresses, beginning with `~` seperated by the tilde character, `~`, ASCII 126.
For example, to send to nodes `a` and `b`, the address in the packet would be `~a~b`.
Each node should send multicasts as layer 2 broadcasts, unless it is known (using the address cache) that all layer 3 destination addresses have to be sent to or forwarded by one layer 2 address.
When a multicast packet is forwarded, the addresses already seen SHOULD be removed from the packet when possible, using the address cache as a guide.
The same address MUST NOT be repeated in a multicast destination, but the duplicate MAY be ignored and just considered one, but also MAY br dropped as an invalid packet. A duplicate address MUST NOT be considered as two packets with the same contents to the same address.
A multicast packet SHOULD also be able to be broken up into multiple packets with the same contents (but they need different packet IDs!) with different addresses.