On Mon, May 16, 2011 at 10:35:07AM +0100, Alex Bligh wrote: > This is a documentation only patch to the new handshake protocol, but > changes the protocol in completely back compatible manner. > > Under the current handshake protocol, it is impliedly necessary for the > server to understand every option presented by the client, as there is > no way for the server to skip options it does not understand (as the > length field is not always part of the option). > > My proposal is to include the length field as a 32 bit unsigned length > in the same way that it currently forms the first 4 octets of the > NBD_OPT_EXPORT_NAME. So the length field has technically moved out > of the option data and into the option header (obviously there is > no code change required). This will allow servers to skip options > presented by clients that the server does not understand.
Mm. My idea was that the client would need to set a flag in the reserved field if it wanted to use an option that maybe the server might not understand, but I guess this could work too, and it would allow us to not waste reserved bits quite as badly.. However, it would require that the server sends some sort of confirmation upon completing negotiation, so that the client knows whether its option has been accepted or ignored. Currently the server doesn't do that. I guess we can add a flag for that. -- The volume of a pizza of thickness a and radius z can be described by the following formula: pi zz a ------------------------------------------------------------------------------ Achieve unprecedented app performance and reliability What every C/C++ and Fortran developer should know. Learn how Intel has extended the reach of its next-generation tools to help boost performance applications - inlcuding clusters. http://p.sf.net/sfu/intel-dev2devmay _______________________________________________ Nbd-general mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/nbd-general
