基于xnetoe tcp offload engine(TOE)的高频交易系统设计方案

时间:2024-03-18 19:09:14

       高频交易是指从那些普通投资者无法利用的极为短暂的市场变化中寻求获利的一种程序化交易方式,投资者为了获取这极为短暂的市场变化,需要搭建超低延时的网络系统,同时,为了最快速度的做出投资决策,需要以最快的速度执行策略,因此,国际上普遍采用可编程的硬件(FPGA)来实现,以达到理想的低延时效果。

基于xnetoe tcp offload engine(TOE)的高频交易系统设计方案

        如图所示左侧的服务器实现方案,所有的网络数据,包括交易所行情数据以及交易数据均需通过网卡数字化后通过PCIE总线存储在DDR,然后利用CPU调用Linux内核协议栈处理网络数据,完成TCP协议头剥离后拷贝一次,然后操作系统用户态trader处理后进行交易决策,以按照英特尔至强系列处理器为例,整个系统的行情处理到决策下单,整个过程花费的时间在40us左右;

        右侧的FPGA实现方案,所有的网络数据处理以及交易管理与交易决策过程均在FPGA中实现,首先欧亿芯提供的IPcore XOE的网络处理延时约0.2us,远低于linux网络协议栈,其次,所有数据均不需要跨越PCIE总线,另外,在FPGA的数据传输不需要进行多次数据拷贝,因此,整个系统的行情处理到决策下单时间大大降低,实际测试得到数据可以控制在1.5us以内,延时提升数十倍,随着trader和交易策略的实现优化还有进一步的优化;

        在FPGA实现方案中,TOE提供了稳定的,超低延时的网络接入,在整个方案中扮演的是一个不可或缺的角色。