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

Sam Roberts vieuxtech at gmail.com
Tue Nov 18 07:38:04 CET 2008


A vortex listener is arbitrarily closing the connection from a
beepcore-c client. It appears to be making some
assumptions about the message numbers chosen by the peer.

For fairly lame reasons (something to do with visually distinctive
message numbers???), the
beecore-c guys start msgs on channel zero from msgno 101. Lame, but legal:

"""
2.2.1.1 Frame Header
  [...]
  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.
"""

A valid implementation can use the same msgno over and over, or choose
them randomly, or whatever, as long
as it only uses it for one MSG at a time.

Anyhow, its no deal-stopper, I'll change this in beepcore-c, but I
think its a bug.

Btw, I'm doing performance testing and interop of swirl against vortex.

http://github.com/sam-github/swirl/tree/master

I'll release it soon.

Cheers,
Sam


vortex log:

(proc 17558): (debug) vortex-frame-factory: Frame received on channel
0, content type=, transfer encoding=, payload size=111, mime content
size=0
(proc 17558): (debug) vortex-reader: frame received (before all filters)
MSG 0 101 . 63 111
Content-Type: application/beep+xml

<start number='1' ><profile uri='http://example.com/beep/null' /></start>END

(proc 17558): (debug) vortex-reader: passed initial accept stage
(proc 17558): (debug) vortex-reader: passed connection existence stage
(proc 17558): (debug) vortex-channel: SEQ FRAME: not updated, already
not consumed half of window advertised: 175 < (4096 / 2)
(proc 17558): (debug) vortex-channel:
frame-content-size=111, frame-payload-size=111,
(proc 17558): (debug) vortex-channel:            window_size=4096,
consumed_seqno=174, new_max_seq_no_accepted=4269
(proc 17558): (debug) vortex-channel:            max_seq_no_accepted=4095
(proc 17558): (debug) vortex-reader: about to checking expected
message to be received on this channel
(proc 17558): (debug) vortex-connection: flagging the connection as
non-connected
(proc 17558): (debug) vortex-connection: closing connection id=2 to
127.0.0.1:57283
(proc 17558): (debug) vortex-connection: closing session id=2 and set
to be not connected


tcpflow output (port 3333 is the listener):

127.000.000.001.03333-127.000.000.001.46059: RPY 0 0 . 0 114
Content-Type: application/beep+xml

<greeting>
  <profile uri='http://example.com/beep/null' />
</greeting>
END

127.000.000.001.46059-127.000.000.001.03333: RPY 0 0 . 0 63
Content-Type: application/beep+xml

<greeting>
</greeting>
END

127.000.000.001.46059-127.000.000.001.03333: MSG 0 101 . 63 111
Content-Type: application/beep+xml

<start number='1' ><profile uri='http://example.com/beep/null' /></start>END


More information about the Vortex mailing list