清华大学金融科技研究院孵化
金融科技与金融创新全媒体

扫描分享

本文共字,预计阅读时间

本文通过简要的说明方式,对最近几年来金融IT领域中交易系统中低延迟领域的研发策略和最新进展进行设计反思和研发解读,同时对系统架构、网络优化路线、性能方法论等方面取得的成果和经验做尝试性的总结分析,希望为同行研究者提供一些参考和启示。

一、技术背景和前景分析

(一)  交易系统在分布式服务架构方面的进一步成熟

过去3年金融交易系统在分布式领域的进展是全面突出且技术跨越最大的。虽然更早的十年里,金融交易系统已经经历多个演化阶段,出现了基于消息中间件、内存表技术等新交易平台技术的尝试与实践,但在研发投入、成果落地和市场认同方面都无法与近几年的变化相比。不断涌现的新概念、技术和产品促使分布式服务架构的交易体系不断熟化和加速迭代。

过去容错架构的交易平台主要提供HA层面的服务保证,无法线性提升扩展服务吞吐能力。但现在,不论是前置、报盘还是交易核心,分布式交易架构都可以通过资源分区的集群模式进行分布式服务的快速部署,同时不影响应用模块的统一管理,从而彻底解决了服务化资源扩展的问题。

(二)   核心处理的极限优化和合作组织化的研发布局

最近几年,期货柜台交易系统的核心处理能力指标的记录不断刷新,出现了递进式相互超越的情况——几乎所有的新交易系统都涌入了微秒级的延迟技术世界。这与软件级内存表或内存库计算技术的普遍掌握和精准使用息息相关。

不断优化突进的核心处理和边缘负载能力将全链路延迟的分析评估目标迅速拉入微秒度量时代。但在实际IT环境下,网络和IO延迟类成为全链路延迟的高占比部分。为此,在涉及网络交换机、网卡、协议栈、通讯中间件的技术方面,延迟改进工作从未停止,开发方法和度量工具也成为不断取得突破和变革的重点区域。在此趋势下,不同网络设备厂商、交易软件厂商、金融客户,以及客户外围开发组织等主动组队或结伴合作进行多领域技术尝试和共同实践优化。

图. 某一交易核心应用的运行性能火焰图,其中IO延迟类占比多已经显现

(三)   网络吞吐能力和低延迟技术的运用前景

在IT部署格局里,网络延迟技术水平一直是影响金融交易系统服务质量水准的核心要素。该要素技术的不断优化发展催生了各种网络特性和部署方案的尝试和实践。鉴于目前金融行业里具备低延迟能力的以太网络交换和网卡技术已经非常成熟和商业化,交易平台开发商必须在此技术条件下,进一步深挖和优化其网络技术能力在金融交易系统的延迟交换技术方面的实际表现和商业性高回报。RoCE(RDMA over Converged Ethernet)就是在此背景下进入行业的技术视野。

图. 针对RoCE环境进行的不同网络连接条件下的一组评测数据

二、RDMA/RoCE技术的引入和原生开发路线之选

(一)   RDMA/RoCE

RDMA(Remote Direct Memory Access)是一种内核旁路技术,它提供了网卡硬件的抽象层verbs,运行用户空间的进程绕过内核直接访问RDMA网卡,实现高效快速通讯。RDMA源于InfiniBand网络技术,由IBTA组织对其进行标准化定义和维护。在硬件层面,RDMA硬件在发送和接收端双方向都通过DMA技术直接对用户态内存进行读写,通过使用网卡内置的网络协议卸载引擎,实现数据传输过程中的完整协议处理,不仅大幅降低CPU对网络处理的资源利用率,同时使得时延降至1µs,网络吞吐量也得到明显提升,是高质量高性能网络通信的首选方式。

图. RDMA架构布局

RDMA技术的三个关键技术优势为:

  • CPU Bypass与offload
  • Zero-copy与内存直写/读
  • 异步调用与最大化用户态运行

(二)   VMA\Onload和 RDMA/ibVerbs原生接口的技术对比

在支持RDMA接口的开发解决方案里,基于TCP/Socket接口的技术方案比较容易被初涉其间的开发组织关注,因为其开发门槛相对较低,成果变现快,比如Mellanox的VMA技术。另外,Solarflare公司的低延迟技术Onload也是通过网卡加速技术提供的解决方案,只是其本质不属于RDMA/RoCE范畴,尽管如此我们也一并纳入对比分析。关于采用原生RDMA接口的想法,是基于我们对各类编程接口和实际环境的实验评测以及对交易系统技术栈的评估而不断演化后产生的,为此我们进行了针对各类交互场景和软件组件以及系统方案级的对比性评测。

在针对标准消息中间件的对比性测试中,VMA\Onload技术下的指标性延迟表现是比较接近的,相对原有传统网络情况下的延迟优化提升也是非常接近的,但我们在对RDMA原生接口情况下的对比评测后发现,原生接口的延迟表现在VMA\Onload的表现基础上会有非常稳定和明确的提升,提升比例在100%左右。这些因素促使我们更加坚定地采用原生RDMA接口技术。

是毫秒级,基本上就相当于本地PCI-X。

三、DTP在RDMA/RoCE方面的低延迟网络解决方案

端到端全链路网络解决方案的模块布局如下图所示。

根据基本适配的延迟层面的阶段分析表格(如下图所示),在将全链路的技术环节按技术类型分解后,我们需要针对不同类型的技术栈进行加速优化。

其中网络层次和环节的优化项占比较大;关于网络技术方面的方案要素包括:

  • 在交易平台的总线应用网络中消息容错总线从基于UDP组播方式调整为基于RDMA/RoCE方式,全面大幅度优化网络吞吐量和低延迟消息,其效果将内部穿透延迟推进到个位数微秒级别;
  • 在策略方API和交易前置间采用RDMA/RoCE方式替代原先的TCP通讯模式,不过作为逐步替代方案,初期可以考虑采用VMA方式来过渡;
  • 在报盘和TGW间,采用VMA方式以优化仅为TCP模式的限制性应用网络环境。

四、未来极低延迟技术方面在DTP领域的发展预测

(一)   引入Infiniband网络

在支持RDMA的以太网技术世界里,Infiniband是一个传奇般的存在,正是IB的成功历史才真正成就了RDMA的目前地位。在前述网络解决方案里,基于RDMA技术的总线应用网络里,我们希望通过引入IB技术成果,来全面优化和进一步改善极低延迟的技术质量。

(二)   引入FPGA网卡和加速产品

在未来的端到端方案中,FPGA技术可以在网络协议加速、业务逻辑加速、甚至柜台整体加速方面提供更加优异和惊人的加速产品解决方案,同时为现有的端到端方案提供更多部署选择和商业模式。

(三)   RDMA/RoCE的原生实现 RDMA_MSG

RDMA/RoCE的研发技术方面,金仕达在不断和厂商深入合作的基础上,准备开放性地提供更为基础性的RDMA通信组件RDMA_MSG。该组件通过更为直接和方便的接口方式,为不同通信模式的软件提供统一性的编程接口,用以在替代Socket编程接口向RDMA演化期间,为研发团队提供低门槛高质量的通讯组件。

结语

在过去研发者的基础上推进性能优化的技术工作一向很艰难,尤其是在高层金融产品的技术架构层面。虽然分布式、微服务、高速网卡等面世已有一段时间,但业内在交易系统建设时,牵绊和局限条件依旧很多。在前述的具体工作中,我们充分体会到多层技术栈整合的巨大研发潜力还没有被挖掘出来。这个领域需要不同技术层次的厂商和供应商共同合作才能提供真正完备的高质量高性能的金融交易产品系统解决方案。

[Source]

本文系未央网专栏作者发表,属作者个人观点,不代表网站观点,未经许可严禁转载,违者必究!首图来自图虫创意。

本文为作者授权未央网发表,属作者个人观点,不代表网站观点,未经许可严禁转载,违者必究!首图来自图虫创意。

本文版权归原作者所有,如有侵权,请联系删除。首图来自图虫创意。

评论


猜你喜欢

扫描二维码或搜索微信号“iweiyangx”
关注未央网官方微信公众号,获取互联网金融领域前沿资讯。