买专利卖专利找龙图腾,真高效! 查专利查商标用IPTOP,全免费!专利年费监控用IP管家,真方便!
申请/专利权人:上海金融期货信息技术有限公司
摘要:本发明公开了一种基于FPGA加速处理证券行情中TCP镜像的装置,在不增加任何成本的前提下提高接收TCP数据的效率。其技术方案为:根据TCP协议,在FPGA中实现对TCP接收侧的数据即TCP镜像数据进行TCP负载提取,再通过FPGA实现行情业务解析并通过UDP协议将证券行情转发给客户。经济方面,通过TCP镜像处理模块可实现不增加证券行情网关的条件下,实现了FPGA对行情数据的提取、解析与转发;速度方面,在遵守TCP协议下,简化了FPGA接收TCP镜像数据的处理方式,大幅提高了接收TCP数据的效率。
主权项:1.一种基于FPGA加速处理证券行情中TCP镜像的装置,其特征在于,包括网络接收模块、TCP镜像处理模块、行情业务模块、UDP协议封装模块、网络发送模块,其中:网络接收模块,接收网络数据,将网络数据包中的网络负载输出给TCP镜像处理模块;TCP镜像处理模块,根据配置的IP地址、端口号,基于TCP协议对TCP镜像数据进行TCP负载的提取,并将提取到的TCP负载的数据传输给行情业务模块;行情业务模块,根据交易所协议,将来自TCP镜像处理模块传输来的TCP负载的数据解析为行情数据,并将行情数据发送给UDP协议封装模块;UDP协议封装模块,将行情数据封装成一个完整的UDP格式的数据包,将UDP格式的数据包传输给网络发送模块;网络发送模块,将UDP格式的数据向外部传输;其中,TCP镜像处理模块包括地址与端口校验单元、提取负载单元、序号检测单元,其中:地址与端口校验单元,接收来自网络接收模块传输来的网络负载数据后,对接收的网络负载数据进行滤除,去除非匹配的数据包,将匹配的数据包即TCP镜像数据包传输至提取负载单元;提取负载单元,根据来自地址与端口校验单元传输来的TCP镜像数据包的头部中所包含的TCP负载的长度信息,提取TCP负载,同时计算TCP负载对应的校验和,与TCP镜像数据包头部所包含的校验和进行比较,如果不一致则丢弃该TCP镜像数据包,如果一致则将TCP镜像数据包头部中含有的序列号信息与计算出的TCP镜像数据包中的TCP负载的长度信息,一起传输给序号检测单元;序号检测单元,根据TCP协议,基于提取负载单元传输来的当前TCP镜像数据包的序列号、上一个TCP镜像数据包的序列号以及TCP负载的长度的比较,对当前TCP镜像数据包进行对应的处理,以使接收的TCP数据包头部中所含有的序列号的值连续增长;其中,序号检测单元通过先进先出的数据缓冲对序列号进行简化判断的具体处理包括:当前TCP镜像数据包的序列号小于上一个TCP镜像数据包的序列号加TCP负载的长度,且当前TCP镜像数据包的序列号加当前TCP镜像数据包的TCP负载的长度也小于上一个TCP镜像数据包的序列号加TCP负载的长度,则当前TCP镜像数据包丢弃;当前TCP镜像数据包的序列号小于上一个TCP镜像数据包的序列号加TCP负载的长度,但当前TCP镜像数据包的序列号加当前TCP镜像数据包的TCP负载的长度,大于上一个TCP镜像数据包的序列号加TCP负载的长度的,则将当前TCP镜像数据包中的部分数据丢弃至序列号连续,再将剩余的数据传输给后续模块;当前TCP镜像数据包的序列号等于上一个TCP镜像数据包的序列号加TCP负载的长度,则将当前TCP镜像包直接传输给后续模块;当前TCP镜像数据包的序列号大于上一个TCP镜像数据包的序列号加TCP负载的长度,则将数据暂时存储在多个先进先出缓存中的一个,如果后续有TCP镜像数据包能形成序列号的值连续,再从该多个先进先出缓存中根据序列号的规则将数据传输给后续模块。
全文数据:
权利要求:
百度查询: 上海金融期货信息技术有限公司 基于FPGA加速处理证券行情中TCP镜像的装置
免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。