doc: update DEP-0001

This commit is contained in:
draoi
2024-03-17 17:40:35 +01:00
parent b7c11c2bed
commit 5d9c465b3e

View File

@@ -21,17 +21,14 @@ easier.
| `u32` | version | Identifies protocol version being used by the node |
| `u64` | timestamp | UNIX timestamp |
| `u16` | nonce | Random nonce, randomly generated everytime a version packet is sent. This nonce is used to detect connections to self. |
| `String` | connect_recv_addr | Network address of the node receiving this message (before resolving) |
| `String` | resolv_recv_addr | Network address of the node receiving this message (after resolving) |
| `Url` | connect_recv_addr | Network address of the node receiving this message (before resolving) |
| `Option<Url>` | resolv_recv_addr | Network address of the node receiving this message (after resolving) |
| `Vec<String>` | ext_send_addr | (Optional) External address of the node sending this message |
| `Vec<(String, u32)>` | (services, version) | List of features to be enabled for this connection |
`resolv_recv_addr` is optional depending on some transports which may not have such an address.
`resolv_recv_addr` is optional as inbound connections do not have such an address.
`ext_send_addr` is optional in these cases:
1. No external address is set.
2. Node does not advertise itself. Set via a flag in the network settings.
`ext_send_addr` is empty when no external address is set.
The `(services, version)` field can be used to enable certain features in protocols, or even to upgrade protocols to new versions.
When protocols are first attached, they can add their own data to this field which will be communicated in the subsequent version exchange.