簡體   English   中英

為什么在 FIX 登錄期間連接被重置?

[英]Why is connection being reset during FIX logon?

我在針對我的 FIX 服務器測試我的 FIX 客戶端時遇到問題。 我的客戶端日志如下所示,您可以看到連接正在重置,我正在嘗試確定原因。

修復客戶端日志:

<event> Created session
<event> Connecting to 127.0.0.1 on port 5001
2/1/2023 2:50:32 PM inf: [FixClient] ToAdmin: FIX.4.4:CLIENT->SERVER [98, 2], [108, 30]
<event> Connection succeeded
<event> Session reset: ResetOnLogon
2/1/2023 2:50:32 PM inf: [FixClient] ToAdmin: FIX.4.4:CLIENT->SERVER [98, 0], [108, 30], [141, Y]
<event> Session reset: ResetSeqNumFlag
<outgoing> 8=FIX.4.49=7335=A34=149=CLIENT52=20230201-14:50:32.20356=SERVER98=0108=30141=Y10=177
<event> Initiated logon request
<event> Session FIX.4.4:CLIENT->SERVER disconnecting: System.Net.Sockets.SocketException (54): Connection reset by peer
   at QuickFix.SocketInitiatorThread.ReadSome(Byte[] buffer, Int32 timeoutMilliseconds)
   at QuickFix.SocketInitiatorThread.Read()
2/1/2023 2:50:32 PM inf: [FixClient] OnLogout: FIX.4.4:CLIENT->SERVER
<event> Session reset: ResetOnDisconnect

客戶:

SessionID sessionId = new SessionID("FIX.4.4", "CLIENT", "SERVER");

var logon = new QuickFix.FIX44.Logon {
    EncryptMethod = new EncryptMethod(EncryptMethod.None),
    HeartBtInt = new HeartBtInt(30)
};

Session.SendToTarget(logon, sessionId);

客戶端.cfg:

[DEFAULT]
ConnectionType=initiator
ReconnectInterval=30
FileStorePath=store
FileLogPath=log
StartTime=00:00:00
EndTime=00:00:00
UseDataDictionary=Y
DataDictionary=./FIX/spec/FIX44.xml
SocketConnectHost=127.0.0.1
SocketConnectPort=5001
LogoutTimeout=5
ResetOnLogon=Y
ResetOnLogout=Y
ResetOnDisconnect=Y

[SESSION]
# inherit ConnectionType, ReconnectInterval and SenderCompID from default
BeginString=FIX.4.4
SenderCompID=CLIENT
TargetCompID=SERVER
HeartBtInt=30

服務器.cfg:

[DEFAULT]
ConnectionType=acceptor
SocketAcceptPort=5001
StartTime=00:00:00
EndTime=00:00:00
FileLogPath=log
UseDataDictionary=Y
ResetOnLogon=Y
ResetOnLogout=Y
ResetOnDisconnect=Y

[SESSION]
BeginString=FIX.4.4
SenderCompID=CLIENT
TargetCompID=SERVER
FileStorePath=store
DataDictionary=./FIX/spec/FIX44.xml

它是 CompID。

服務器和客戶端應該交換了 CompID。 服務器TargetCompID是客戶端SenderCompID ,反之亦然。

相關: 是什么導致了 QuickFIX/J 中的“斷開連接:遇到 END_OF_STREAM”session 消息?

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM