Thread: [Quickfix-developers] Session Identification Problem
Brought to you by:
orenmnero
From: Shamanth <sha...@in...> - 2004-07-28 12:14:53
|
Hi We have a provider who has the two sessions exposed 1) For Marketdata 2) For Order The problem is both these sessions use same SenderID, SenderSubID, = TargetID and also the SocketConnectHost the only difference is in the = port number (SocketConnetPort). How does quickfix can be setup to handle the above situation. We want to = run only one instance of quickfix servicing both the sessions. thanks R Shamanth > NOTICE > This e-mail message and any attachments, which may contain = confidential information, are to be viewed solely by the intended = recipient of Integral Development Corp. If the reader of this message = is not the intended recipient, you are hereby notified that any use, = dissemination, distribution or copying of this communication is strictly = prohibited. If you have received this message in error, please = immediately notify the sender and delete the mail and all attachments. >=20 |
From: Pasquale d'A. <pas...@ga...> - 2004-08-02 17:09:17
|
Hi I experienced same problem as Shamanth because there are some FIX market = server that implement different services on difference TCP ports, using = same session identifier. I need to manage more than one simultaneous session with same SenderID, = SenderSubID and TargetID. I modified my quickfix code inserting a new configuration field = "SessionQualifier". I added a new member "std::string m_strQualifier" to = class SessionID and I modified all methods to manage that new member. I use the class MySQLStore to store sessions info, so I added a new = field "session_qualifier" to my "sessions" table and I manage that field = in my MySQLStore code version. My code routes well messages to the right destination and I have been = using this implementation for many months. Regards. Pasquale d'Aloise |
From: Oren M. <or...@qu...> - 2004-08-04 03:29:15
|
This is along the lines of what I was thinking. I've made these=20 changes and checked them into CVS. --oren On Aug 2, 2004, at 12:08 PM, Pasquale d'Aloise wrote: > Hi > =A0 > I experienced same problem as Shamanth because there are some FIX=20 > market server that implement different services on difference TCP=20 > ports, using same session identifier. > =A0 > I need to manage more than one simultaneous session with same=20 > SenderID, SenderSubID and TargetID. > =A0 > I modified my quickfix code inserting a new configuration field=20 > "SessionQualifier". I added a new member "std::string m_strQualifier"=20= > to class SessionID and I modified all methods to manage that new=20 > member. > =A0 > I use the class MySQLStore to store sessions info, so I added a new=20 > field "session_qualifier" to my "sessions" table and I manage that=20 > field in my MySQLStore code version. > =A0 > My code routes well messages to the right destination and I have been=20= > using this implementation for many months. > =A0 > Regards. > Pasquale d'Aloise |
From: Oren M. <or...@qu...> - 2004-07-30 11:49:11
|
That's a strange scenario. The way QuickFIX would handle this now is=20 the way you don't want to do it, two separate processes. The problem=20 with using something like the port to identify the session is twofold. =20= One, as Joerg pointed out, it is a transport level concept and not one=20= which the fix protocol itself is familiar with. Another problem is=20 that the port is not a part of the message. In other words, in a=20 scenario like this, you can no longer rely on the contents of the=20 message to identify what session it belongs to. This means we would=20 have to rely on some meta-data in addition to the FIX message itself to=20= figure out where it needs to be routed. I don't have a problem with=20 this necessarily, but I don't think and arbitrary attribute like the=20 session port is the way to do it. One thing I may consider is something along the lines of a UserID=20 configuration field. Something like this: [SESSION] SenderCompID=3DSENDER TargetCompID=3DTARGET UserID=3DMARKETDATA [SESSION] SenderCompID=3DSENDER TargetCompID=3DTARGET UserID=3DORDER This user id would be optional, and it would at least make the id=20 meaningful. On Jul 28, 2004, at 7:18 AM, Shamanth wrote: > Hi > > We have a provider who has the two sessions exposed > 1) For Marketdata > 2) For Order > > The problem is both these sessions use same SenderID, SenderSubID,=20 > TargetID and also the SocketConnectHost the only difference is in the=20= > port number (SocketConnetPort). > > How does quickfix can be setup to handle the above situation. We want=20= > to run only one instance of quickfix servicing both the sessions. > > thanks > R Shamanth > > =A0 NOTICE > > This e-mail message and any attachments, which may contain=20 > confidential information, are to be viewed solely by the intended=20 > recipient of Integral Development Corp.=A0 If the reader of this = message=20 > is not the intended recipient, you are hereby notified that any use,=20= > dissemination, distribution or copying of this communication is=20 > strictly prohibited.=A0 If you have received this message in error,=20 > please immediately notify the sender and delete the mail and all=20 > attachments. |