|
4.0 Session
< Previous Next >
re: Sequence numbers and session lifetimes
Scott Atwell - American Century 26 Sep 1997 8:01AM ET> > I'm not aware of anything in the spec which directly ties the resetting of sequence numbers back to one to the Logout message itself. The first paragraph of the "SESSION PROTOCOL" section describes a "single FIX session" which can consist of multiple connect and disconnects (which would likely involve Logout messages). The start/stop times for each FIX session are pre-arranged and agreed to by the connecting parties and recommended that they are established
> > once every 24 hour period.
>
> There seems to be an inconsistency in the spec. The first paragraph of "session protocol" says that a session can be maintained over a number of physical connection/disconnections, but "message recovery" says sequence numbers are "unique (by connection)". I presume this really means "session".
>
> I'm confused about when a session ends. Sessions obviously start with a logon message with seqence number 1, but if a session can persist over multiple connections and logon/logout messages, what marks its termination? Is it just that both parties forget about it by consensis at a particular time? Wouldn't it be better if a session could be explicitly terminated?
>
> Why are sequence numbers constrained to 5 digits anyway? Wouldn't it help if wrap-around were much less likely (say, if they were 6-7 digits)?
>
> Thanks,
> Jeremy Fitzhardinge
>
The posting you're responding to is kind of old (back when 4.0 was still in draft). Yes, I agree that "unique (by connection)" means "unique (by session)" and should be changed in the future. A session begins and ends at pre-agreed upon times between the two counterparties. Sequence numbers were increased to 6 digits in the 4.0 spec.
The part about linking session level sequence reset for both sides to the Logout message was one proposal. This was discussed at the US Tech Committee Meeting held at CS First Boston 2/97 and it was agreed that we need to add some sort of optional support for this capability to the protocol and that it would make more sense to add it to the Logon vs. Logout message. At the last US Tech Meeting (9/9/97 at Morgan Stanley), this was on the list of planned changes for the next release of the FIX protocol. The purpose of this is for counterparties who need to maintain a single session 24 hours per day.
I'm not sure passing session stop time would help too much. Systems are either constrained such that they must disconnect all FIX sessions by a certain time (i.e. to do batch or end of day processing) so that they would disconnect the counterparty before that time if the counterparty did not initiate the disconnect. Start times obviously must be maintained outside of the protocol. If I send my logon to a counterparty, I could provide the timestamp of when I plan to disconnect the session, but I'm not sure what real value that gives my counterparty since I'm going to do it at that time (which is the time we agreed upon anyway). I don't personally mind adding it to the spec as optional if others think it would be of value.
re: Sequence numbers and session lifetimes Scott Atwell - American Century 26 Sep 1997 8:01AM ET
|