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

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

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

在FPGA实现方案中,深圳欧亿芯科技(www.xnetoe.com)自主开发的XOE提供了稳定的,超低延时的网络接入,在整个方案中扮演的是一个不可或缺的角色。

toe网卡 linux c,TOE(TCP offload Engine)在高频交易中的应用相关推荐

  1. xnetoe toe(tcp offload engine)测试方案与结果

    本文介绍了X1702-TUALL产品TCP/UDP等功能在不同网络条件下的性能测试方法和测试结果,由于测试环境不同包括测试设备,网络状况等,可能会得到不同的测试结果,存在一定的误差范围. X1702- ...

  2. 使用xnetoe TOE(tcp offload engine)构建的网络安全隔离网关实现方案

    政府或者事业部门一般按照国家电子政务建设要求组建自己的电子政务网络,采用三级联网,政府的政务网一般主要由四部分组成: 1)内部运行信息系统的局域网(政务内网) 2)上下级互联的广域网(政务专网) 3) ...

  3. 嵌入式linux学习笔记--TCP通讯整理

    嵌入式linux学习笔记–TCP通讯整理 之前的项目中使用到了比较多的tcp 通讯相关的知识,一直也没有进行整理,今天准备拿出时间好好的整理一下TCP通讯的整个过程.预计会整理linux和window ...

  4. Linux网络 IP/TCP校验和、checksum、伪首部相关问题

    1.校验和作用 校验和是为防止报文在信道传输出现误码导致报文错误,或者传输过程中间网络设备错误造成报文错误等,并不保证报文被他人恶意篡改.防君子不防小人,而已修改报文内容重新计算校验和是无法检测的. ...

  5. linux内核协议栈 TCP层数据发送之TSO/GSO

    目录 1 基本概念 2 TCP延迟分段判定 2.1 客户端初始化 2.2 服务器端初始化 2.3 sk_setup_caps() 3 整体结构 4. TCP发送路径TSO处理 4.1 tcp_send ...

  6. Linux网络-UDP/TCP协议详解

    Linux网络-UDP/TCP协议详解 零.前言 一.UDP协议 二.TCP协议 1.应答机制 2.序号机制 3.超时重传机制 4.连接管理机制 三次握手 四次挥手 5.理解CLOSE_WAIT状态 ...

  7. linux 速锐tcp.加速,【转载】锐速 ServerSpeeder 常规配置资料

    安装成功后,安装程序会在您的服务器文件系统的根目录下面创建一个/serverspeeder 目录,下面包含bin.etc 和log 三个子目录:各目录及文件的说明如下: 名称类型说明 /servers ...

  8. 什么叫linux网络协议栈,我们为什么使用Linux内核的TCP协议栈

    最近的一篇文章提出了"我们为什么使用Linux内核的TCP协议栈"的问题,并在Hacker News引发了非常有意思的讨论. 在CloudFlare的时候我也曾思考这个问题.我的经 ...

  9. 深入分析Linux操作系统对于TCP/IP栈的实现原理与具体过程

    一.Linux内核与网络体系结构 在我们了解整个linux系统的网络体系结构之前,我们需要对整个网络体系调用,初始化和交互的位置,同时也是Linux操作系统中最为关键的一部分代码-------内核,有 ...

最新文章

  1. Java封装(速读版)
  2. iOS9 This application is modifying the autolayout engine from a background thread, which
  3. Redis集群:sharding策略
  4. Centos7安装Python3并更改默认版本为python3(编译安装)
  5. MATLAB字符串数组中查找指定子串
  6. 微信上传素材 java_微信素材上传(JAVA)
  7. 【Python】Python第三方库安装
  8. 通信原理实践(一)——音频信号处理
  9. MongoDB学习笔记~大叔分享批量添加—批量更新—批量删除
  10. 机房火灾自动报警系统常见问题及解决方案
  11. mysql 官网 update_UPDATE
  12. 《TCP/IP详解 卷1:协议》学习笔记(未完待续)
  13. java目标和规划_java个人职业发展目标规划书(2)
  14. 2019 年第 28 周 DApp 影响力排行榜 | TokenInsight
  15. py函数式编程(高阶函数map/reduce/filter/sorted、闭包函数/返回函数、匿名函数lamber、@装饰器decorator、偏函数functool.partial())
  16. iOS NSFileManager文件管理(沙盒)
  17. 前端开发优秀简历_这就是如今成为优秀的前端开发人员所需要的
  18. 您的私人助理已上线:保护重要数据的101条建议
  19. 爬取上交所公司信息,根据公司股票代码获取公司注册地址以及地址的经纬度
  20. 利用3D-DNA流程组装基因组

热门文章

  1. Ubuntu上的几个音频工具
  2. tcp 头部格式是怎样的?都有哪些字段?TCP 与 UDP 的区别
  3. FBEC2020 | 智线科技合伙人高丽贞:2020全球游戏市场买量洞察
  4. Liunx CentOS-7-x86_64-DVD-2009.iso 镜像下载
  5. Clumsy-Windows下网络环境模拟工具
  6. 从知乎页面的502说一说测试人员应该知道的HTTP协议状态码
  7. windows11 MySql服务不见了
  8. SSM整合Quart和Springboot整合Quartz组件
  9. 寒假-第一周-几何-(点线关系的问题)
  10. 【产品】产品设计:包装盒内衬-植绒EVA内衬特点详解