diff options
author | Jakob Borg <jakob@nym.se> | 2014-06-19 01:59:58 +0200 |
---|---|---|
committer | Jakob Borg <jakob@nym.se> | 2014-06-19 01:59:58 +0200 |
commit | 0e59b5678ac4ceb513fa0a45e6f7db93f7678470 (patch) | |
tree | 0dd6fd4461bc6f2308fab74c6f46d7e1d614f698 | |
parent | de75550415694ea239f0683a6d103225263e4497 (diff) |
Further clarify message ordering requirements (ref #377)
-rw-r--r-- | protocol/PROTOCOL.md | 21 |
1 files changed, 11 insertions, 10 deletions
diff --git a/protocol/PROTOCOL.md b/protocol/PROTOCOL.md index 505e4bc398..1b1fb3c156 100644 --- a/protocol/PROTOCOL.md +++ b/protocol/PROTOCOL.md @@ -59,11 +59,11 @@ or certificate pinning combined with some out of band first verification. The reference implementation uses preshared certificate fingerprints (SHA-256) referred to as "Node IDs". -There is no required order or synchronization among BEP messages (except -for the requirements on Cluster Config messages below) - any message -type may be sent at any time and the sender need not await a response to -one message before sending another. Responses MUST however be sent in -the same order as the requests are received. +There is no required order or synchronization among BEP messages except +as noted per message type - any message type may be sent at any time and +the sender need not await a response to one message before sending +another. Responses MUST however be sent in the same order as the +requests are received. The underlying transport protocol MUST be TCP. @@ -297,11 +297,12 @@ peers acting in a specific manner as a result of sent options. ### Index (Type = 1) The Index message defines the contents of the senders repository. An -Index message MUST be sent by each node immediately upon connection. A -node with no data to advertise MUST send an empty Index message (a file -list of zero length). If the repository contents change from non-empty -to empty, an empty Index message MUST be sent. There is no response to -the Index message. +Index message MUST be sent for each repository mentioned in the Cluster +Config message. An Index message for a repository MUST be sent before +any other message referring to that repository. A node with no data to +advertise MUST send an empty Index message (a file list of zero length). +If the repository contents change from non-empty to empty, an empty +Index message MUST be sent. There is no response to the Index message. #### Graphical Representation |