Although the proper use of the handle field during transmission phase was implied, it never hurts to make it more explicit that clients should alter the handle on each message, and the server repeat the handle unchanged, in order for the client to track when the server is sending replies out of order.
Signed-off-by: Eric Blake <ebl...@redhat.com> --- doc/proto.md | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/doc/proto.md b/doc/proto.md index 6d1cb34..d0102e0 100644 --- a/doc/proto.md +++ b/doc/proto.md @@ -200,7 +200,11 @@ S: 64 bits, handle S: (*length* bytes of data if the request is of type `NBD_CMD_READ`) Replies need not be sent in the same order as requests (i.e., requests -may be handled by the server asynchronously). +may be handled by the server asynchronously). Clients SHOULD send a +different value of handle for each request, and the server MUST use the +same value for handle as was sent by the client for each request that +the server is replying to, so that the client may correlate which +request is receiving a response. ## Values -- 2.5.5