低延迟技术

低延迟技术
 交易延迟主要包括网络延迟、协议延迟、操作系统延迟、应用延迟 

1.网络延迟:
 网络中存在三种类型的延迟:数据序列化延迟、传输延时、排队延迟。
 1.数据序列化延迟:网络设备将数据转入物理介质所需要的时间
 2.传输延迟:数据在物理介质中传输的时间,光在光纤中速度是真空的66.6%
 3.排队延迟:接收端接收数据,大量数据需要排队处理,速度取决于数据量和带宽 

2.协议延迟:
 协议设计的目的不同,传输效率同延迟都有区别,一般考虑:
 1.纳吉尔算法
 2.数据窗口
 3.包丢失
 4.路由协议
 5.Qos与SPAN的使用 

3.操作系统延迟
 计算机硬件与交易系统间,存在BIOS/FIRMWARE、操作系统内核、代码运行环境(包含在操作系统内),为交易系统提供各种功能函数调用,以实现代码与硬件之间的互动,操作系统内核及代码运行环境在调用过程中也存在一定的延迟 

4.应用延迟
 1.磁盘访问
 低延时应用采用内存数据库或者固态存储来降低IO延迟。
 2.进程间通讯
 低延时应用采用RDMA等技术降低进程间通讯成本。
 3.数据计算
 低延时应用采用FPGA、GPU等技术加速数据计算过程。
 4.数据锁等共享资源访问等待
 可采用非阻塞式的数据管理系统,或者更小粒度的资源管理来降低访问等待。 

 延迟的度量:平均延时、延迟抖动(每次实际延迟与平均延迟之间的偏差程度)、吞吐量、时间精度 

以太网:
 新型以太网通过DCB、VXLAN、FCoE等技术,丰富存储和虚拟化支持能力;通过RoCE、拥塞控制优化、流控管理优化等技术,大幅降低网络转发时延。
 纽约证券交易所(NYSE)、纳斯达克证券交易所(NASDAQ)、伦敦证券交易所(LSE)、东京证券交易所(TSE)、香港证券交易所(HKEX)等交易所根据技术的发展,
 都升级了自己的网络接入,提供万兆接入的托管机房。 

InfiniBand
 通过大带宽链路实现服务器、存储设备互联。其特点一是超大带宽的连接。带宽支持56Gb/s、100Gb/s及200Gb/s;二是极低的网络时延。InfiniBand在可比数据速率下具有比以太网更低的时延;三是可靠无损的网络。基于链路层的流控机制和先进的拥塞控制机制防止拥塞和丢包;四是完全的CPU卸载功能。基于硬件的传输协议实现高可靠、无丢包的网络数据传输。通过远程直接内存存取(RDMA)和内核旁路技术,可以直接对远程节点间预分配内存读和写,无需涉及操作系统内核、无需数据多次复制,大幅降低CPU工作负载和网络时延。五是卓越的可扩展性和灵活性。一个子网可以支持48,000个节点,一个网络即可支撑大规模服务器的部署。
 一套完整的InfiniBand系统由服务器、交换机、子网管理器、主机通道适配器(HCA)组成。高性能服务器集群最广泛使用的网络架构为胖树(Fat-Tree),非阻塞网络下,该架构可以达到大规模服务器的最优性能。
 部分交易系统的内部通信为了达到最小的时延,核心网络采用InfiniBand,其它网络采用以太网,如德国证券交易所和新加坡交易所的交易系统内网采用InfiniBand,德国证券交易所的T7交易系统6.1版本委托回报回路时延少于52us,新加坡交易所的平均订单回报时延为90us。 

低延迟网络构建 

 1.转发时延压缩:使用超低延时交换机
 2.网络架构:三层架构(核心、汇聚、接入)减少为二层架构(核心、接入),降低跳数减少时延
 3.传输时延优化:就近接入交易所,在交易所托管机房部署系统可以缩短传输时延
 4.低延时万兆网卡:普通网卡和低延时万兆网卡差别非常大,非常有必要使用这种低延时万兆网卡
 5.网络带宽提升
 6.网卡加速:可以大幅有效减少系统总体时延,RoCE协议
 7.无损网络:减少或者避免网络拥塞和丢包现在通用解决方案