[Vortex] Is vortex assuming that msg numbers on channels start at 1 and increase by 1/

Robert M. Münch robert.muench at robertmuench.de
Sun Nov 23 09:38:40 CET 2008


Am 23.11.2008, 01:03 Uhr, schrieb Sam Roberts <vieuxtech at gmail.com>:

> No message ordering was defined in the standard. There doesn't have to
> be any order. And, of course, even if you just increment msg numbers
> by 1 they will wrap down to zero if you send enough of them.
>
> FYI, rfc3080:
>
>   The message number ("msgno") must be a non-negative integer (in the
>    range 0..2147483647) and have a different value than all other "MSG"
>    messages on the same channel for which a reply has not been
>    completely received.

Hi, ok, thinking a bit longer about it, I see a good reason now:

If msgno are reused this means that there can be around 2^32-1 outstanding messages per channel. Reusing msgno would avoid the wrapping problem completely. Because msgno no longer would be a counter instead it would be a reference to outstanding replys.

Implementing the whole stuff via bit-fields per channel could be an efficient implementation. And making that bit-field dynamicly grow/shrink can avoid that to much memory is alloacted without being used.

> I suspect you only use vortex to talk to vortex, so fixing this might
> have no value to you.

Correct.

> I use multiple toolkits, and it looks like this vortex assumption has
> caused interop failure with two other implementations recently, so its
> not "subtle".

Ok, I see. BTW: What other BEEP toolkits do you use? What's the main difference to vortex?

-- 
Robert M. Münch
Mobile: +49 (177) 245 2802
http://www.robertmuench.de


More information about the Vortex mailing list