您的位置:首页 > 产品设计 > UI/UE

QuickFix的SSL问题

2015-08-11 13:28 916 查看
QuickFix是FIX协议的一个开源引擎,有多中语言的实现:

Java: QuickFIX/J

C#: QuickFIX/N

C++: Python和Ruby的接口基于C++的版本

最近在学习FIX和QuickFIX,碰到一个问题,broker提供的Demo是基于QuickFIX/J的,可以正常工作。我使用同样的逻辑,用C#和Python代码重新实现,却每次发送登录请求LOGON之后,链接就会被对端断开:Socket Error: Connection reset by peer.

我花了十几个小时去调试,对比Python、C#、Java版本程序发出的消息的异同,还使用MiniFIX作为客户端发送Logon,发现多个版本发送的都是相同的Message,但惟有Java版的在工作。最后迫于无奈,使用WireShark抓包,发现Java版发送的TCP包内容是加密的,而其他版本发送的都是明文。终于找到问题:



[SESSION]
BeginString=FIX.4.4
#...

SocketUseSSL=Y


目前QuickFIX的多个版本中,Java实现了SSL的支持,而C#和C++版本均未实现。定位到了问题,解决方法也容易:使用stunnel。可以参考:https://waiseekweng.wordpress.com/2014/09/08/configure-for-fixn/
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: