CN110958265B - 一种基于行情数据实时转发的方法及装置 - Google Patents
一种基于行情数据实时转发的方法及装置 Download PDFInfo
- Publication number
- CN110958265B CN110958265B CN201911292130.6A CN201911292130A CN110958265B CN 110958265 B CN110958265 B CN 110958265B CN 201911292130 A CN201911292130 A CN 201911292130A CN 110958265 B CN110958265 B CN 110958265B
- Authority
- CN
- China
- Prior art keywords
- data
- connection
- node
- current
- sending
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/14—Session management
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/12—Applying verification of the received information
- H04L63/123—Applying verification of the received information received data contents, e.g. message integrity
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/60—Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/04—Protocols for data compression, e.g. ROHC
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/22—Parsing or analysis of headers
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种基于行情数据实时转发的方法及装置,所述方法包括如下步骤:步骤S1,发起连接请求与上级网关或其备用节点建立连接,以于建立连接后,接收上级网关发送的行情数据;步骤S2,获取并解析行情数据包,并重新组包,经过压缩算法处理将数据压缩,将数据包分为压缩前及压缩后两份数据,并遍历两种通道对应的下级连接,将行情数据包引用分配给对应连接,并增加发送任务;步骤S3,遍历发送任务,将各份行情数据包从对应连接上发送出去。
Description
技术领域
本发明涉及数据实时处理技术领域,特别是涉及一种基于行情数据实时转发的方法及装置。
背景技术
随着信息技术快速发展,各行各业的信息化建设要求逐步提高,而对数据分析及传输领域的实时性及性能要求也越来越高。
以行情数据为例,随着各交易所行情提速,原单向行情小站、行情VDE(VanguardEnergy)合并为行情网关MDGW,原文件方式的行情改造为数据流行情模式,为用户提供更快的速度。而各证券公司、基金公司为了接入高速行情网络,广域接入需要更高带宽的专线,接入成本较高。基于行情实时性要求及成本因素,行情数据的高效传输的需求也越来越迫切。
发明内容
为克服上述现有技术存在的不足,本发明之目的在于提供一种基于行情数据实时转发的方法及装置,以将行情数据快速接收及转发至众多下级节点,且在数据传输过程中不允许丢包乱序,并要求转发延迟足够低,以确保传输过程的高效,数据转发至下级后实时有效及稳定可靠。
为达上述目的,本发明提出一种基于行情数据实时转发的方法,包括如下步骤:
步骤S1,本级节点发起连接请求与上级网关或其备用节点建立连接,以于建立连接后,接收上级网关发送的行情数据;
步骤S2,本级节点获取并解析行情数据包,并重新组包,存入处理队列中;利用压缩算法对处理队列中的行情数据包压缩,将行情数据包分为压缩前及压缩后两份数据,分别将数据地址引用分配给压缩通道和非压缩通道下的各个连接,同时创建发送任务,并将创建的发送任务加入到发送任务队列;并遍历压缩通道和非压缩通道对应的下级连接,将对应的行情数据包引用分配给对应连接,并增加发送任务;
步骤S3,本级节点遍历发送任务,将各份行情数据包从对应连接上发送出去;
其中,本级节点等待下级节点的认证请求;校验所述下级节点的登陆信息是否可以通过;若不通过则发送认证失败的应答数据至下级节点,若通过则发送认证成功的应答数据至下级节点;于认证成功后,判断所述认证请求中请求数据类型,根据请求数据类型将当前连接归类至压缩通道和非压缩通道。
优选地,步骤S1进一步包括:
步骤S100,利用发送模块发起连接请求,若连接上级网关失败,则选择上级网关的备用节点继续尝试连接;
步骤S101,于连接成功后,发送认证请求,所述认证请求中包含请求数据类型;
步骤S102,若认证失败,则选择下一个备用节点继续尝试连接,并返回步骤S101,若认证成功,则等待并接收行情数据。
优选地,所述上级网关及备用节点开启服务监听端口,等待本级节点的连接;当接收到本级节点的连接请求时,返回连接确认反馈至本级节点,则连接成功,若本级节点未接收到上级网关或备用节点的连接确认反馈,则连接失败。
优选地,该解析行情数据包,并重新组包,存入处理队列中的步骤进一步包括:
步骤S200a,接收到行情数据后,将接收到的行情数据按顺序存入接收队列;
步骤S200b,解析线程定期根据接收队列数据,校验数据是否为完整行情数据包,若不完整,则继续等待接收队列获取新数据包,直至完整数据包;
步骤S200c,解析出完整数据包后,计算当前数据包校验和是否正确,如果校验失败,则说明当前数据接收有异常,断开当前连接并重新连接上级获取最新数据,同时记录异常日志;若数据校验成功,将当前数据包存入所述处理队列。
优选地,步骤S3进一步包括:
步骤S301,从发送任务队列获取发送任务;
步骤S302,遍历压缩和非压缩通道下的各个连接,开始发送数据;
步骤S303,若发送失败,则将当前行情数据包存入当前连接的发送缓存队列中,下一个行情数据包到达时将重新尝试发送,避免数据丢包;若发送完成,则继续遍历,直至当前任务对应的连接遍历完成,释放对应内存资源。
优选地,于发送过程中,若检测到当前连接的发送缓存队列已满,则表示当前连接接收异常或者网络异常,将断开与下级节点的当前连接,记录异常日志说明此线路异常。
为达到上述目的,本发明还提供一种基于行情数据实时转发的装置,包括:
发送模块,用于本级节点发起连接请求与上级网关或其备用节点建立连接;
接收及数据解析处理模块,用于本级节点在与上级网关或备用节点建立连接后,接收所述上级网关或备用节点发送的行情数据,获取并解析行情数据包,并重新组包,存入处理队列中;利用压缩算法对处理队列中的行情数据包压缩,将行情数据包分为压缩前及压缩后两份数据,分别将数据地址引用分配给压缩通道和非压缩通道下的各个连接,同时创建发送任务,并将创建的发送任务加入到发送任务队列;并遍历压缩通道和非压缩通道对应的下级连接,将对应的行情数据包引用分配给对应连接,并增加引用计数,同时增加发送任务;
发送任务处理模块,用于本级节点遍历发送任务,触发所述发送模块将各份行情数据包从对应连接上发送出去;
本级节点等待下级节点的认证请求;校验所述下级节点的登陆信息是否可以通过;若不通过则发送认证失败的应答数据至下级节点,若通过则发送认证成功的应答数据至下级节点;于认证成功后,判断所述认证请求中请求数据类型,根据请求数据类型将当前连接归类至压缩通道和非压缩通道。
与现有技术相比,本发明一种基于行情数据实时转发的方法及装置,通过将行情数据从网关(MDGW/VDE)接收至当前节点后,通过解析及组包压缩等处理后,实时转发至下级多个节点,从而达到节省主机资源和网络资源的同时,将行情数据高效传输至下级并使用的目的,本发明可将行情数据快速接收及转发至众多下级节点,且在数据传输过程中不允许丢包乱序,并要求转发延迟足够低,以确保传输过程的高效,数据转发至下级后实时有效及稳定可靠。
附图说明
图1为本发明一种基于行情数据实时转发的方法的步骤流程图;
图2为本发明所应用的架构的拓扑架构图;
图3为本发明一种基于行情数据实时转发的装置的系统架构图;
图4为本发明实施例中行情数据接收到转发的具体流程图;
图5为本发明实施例中下级节点向上级网关或备用节点连接认证的流程图;
图6为本发明实施例中上级网关或备用节点连接认证的流程图;
图7为本发明实施例中接收数据并解析处理的流程图;
图8为本发明实施例中数据组包及压缩的流程图;
图9为本发明实施例中数据发送的流程图。
具体实施方式
以下通过特定的具体实例并结合附图说明本发明的实施方式,本领域技术人员可由本说明书所揭示的内容轻易地了解本发明的其它优点与功效。本发明亦可通过其它不同的具体实例加以施行或应用,本说明书中的各项细节亦可基于不同观点与应用,在不背离本发明的精神下进行各种修饰与变更。
图1为本发明一种基于行情数据实时转发的方法的步骤流程图。如图1所示,本发明一种基于行情数据实时转发的方法,包括如下步骤:
步骤S1,发起连接请求与上级网关建立连接,并接收行情数据。
图2为本发明所应用的架构的拓扑架构图。在图2中描述了几个主要的层级,图中每一个节点都包含发送模块和接收模块,因此可以多层级联,其中每层节点都包含有主用节点和备用节点(具体可根据硬件条件,条件宽裕的情况下,可以设置多个备用节点,一般一主一备即可),如图2所示,实线表示主用节点的数据流向,虚线表示备用节点的数据流向,主用节点线路连接中断情况下可以自动切换至备用线路。
具体地,步骤S1进一步包括:
步骤S100,发送模块发起连接请求,若连接上级网关失败,则选择上级网关的备用节点继续尝试连接;
具体地说,上级网关及其备用节点会开启服务监听端口,等待下级节点的连接。当接收到下级节点的连接请求时,返回连接确认反馈至下级节点,则连接成功,若下级节点未接收到上级网关或备用节点的连接确认反馈,则连接失败。
步骤S101,于连接成功后,发送认证请求,所述认证请求中会包含请求数据类型;
步骤S102,若认证失败,则选择下一个备用节点继续尝试连接,并返回步骤101,若认证成功,则等待并接收行情数据。
具体地,当上级网关或备用节点与下级节点连接成功后,等待下级节点的认证请求,校验登陆信息是否可以通过,不通过则发送认证失败的应答数据至下级节点,通过则发送认证成功的应答数据至下级节点,并于认证成功后,判断认证请求中请求数据类型,根据请求数据类型将当前连接归类至压缩通道和非压缩通道中,至此连接认证完成,接下来则可以发送行情数据至下级节点。在本发明具体实施例中,认证请求的格式为接口规范彼此提前约定,认证请求数据包含:数据类型、用户名、密码、版本信息、数据长度、校验码等,所述请求的数据类型包括但不限于普通登陆、压缩登陆、注销、心跳等,例如当认证请求数据包中类型为压缩登陆,上级网关则根据此类型将当前下级的连接归类至压缩通道。
步骤S2,获取并解析行情数据包,并重新组包,经过压缩算法处理将数据压缩,将数据包分为压缩前及压缩后两份数据,并遍历两种通道对应的下级连接,将行情数据包引用分配给对应连接,并增加引用计数,同时增加发送任务。
具体地,步骤S2进一步包括:
步骤S200,解析行情数据包,并重新组包。
具体地,步骤S200进一步包括:
步骤S200a,接收到行情数据后,将接收到的行情数据按顺序存入接收队列;
步骤S200b,解析线程定期根据接收队列数据,校验数据是否为完整行情数据包,如果不完整,则继续等待接收队列获取新数据包,直至得到完整数据包;
步骤S200c,解析出完整数据包后,计算当前数据包checksum(校验和)是否正确,如果校验失败,则说明当前数据接收有异常,断开当前连接并重新连接上级获取最新数据,同时记录异常日志;若数据校验成功,将当前数据包存入处理队列。
步骤S201,利用压缩算法对处理队列中的行情数据包压缩,将行情数据包分为压缩前及压缩后两份数据,。
具体地,步骤S201进一步包括:
步骤S201a,从处理队列中获取行情数据包;
步骤S201b,设置组包大小并开始组包,例如设置组包大小为64KB,当队列不充足的情况下,则自动跳过本步骤组包,以确保实时性;
步骤S201c,利用压缩算法将组包后的行情数据包处理为压缩和不压缩两份。
步骤S202,遍历两种通道对应的下级连接,将对应的行情数据包引用分配给对应连接,并增加发送任务。具体地,分别将数据地址引用分配给压缩通道和非压缩通道下的各个连接,同时创建发送任务,并将创建的发送任务加入到发送任务队列。
步骤S3,遍历发送任务,将各份行情数据包从对应连接上发送出去。
具体地,步骤S3进一步包括:
步骤S301,触发发送模块从发送任务队列获取发送任务。
步骤S302,遍历压缩和非压缩通道下的各个连接,开始发送数据;
步骤S303,若发送失败,则将当前行情数据包存入当前连接的发送缓存队列中,下一个行情数据包到达时将重新尝试发送,避免数据丢包;若发送完成,则继续遍历,直至当前任务对应的连接遍历完成,释放对应内存资源。
优选地,于发送过程中,若检测到当前连接的发送缓存队列已满,则说明当前连接接收异常或者网络异常,将断开其与下级节点的当前连接,记录异常日志说明此线路异常。
图3为本发明一种基于行情数据实时转发的装置的系统架构图。如图3所示,本发明一种基于行情数据实时转发的装置,包括:
发送模块301,用于发起连接请求与上级网关建立连接。
仍参考图2,如图2所示为本发明所应用的架构的拓扑架构图。在图2中描述了几个主要的层级,图中每一个节点都包含发送模块和接收模块,因此可以多层级联,其中每层节点都包含有主用节点和备用节点,如图2所示,实线表示主用节点的数据流向,虚线表示备用节点的数据流向,主用节点线路连接中断情况下可以自动切换至备用线路,本发明之基于行情数据实时转发的装置可应用于架构中的任一节点。
发送模块301具体用于:
发起连接请求,若连接上级网关失败,则选择上级网关的备用节点继续尝试连接;
具体地说,上级网关及其备用节点会开启服务监听端口,等待下级节点的连接。当接收到下级节点的连接请求时,返回连接确认反馈至下级节点,则连接成功,若下级节点未接收到上级网关或备用节点的连接确认反馈,则连接失败。
于连接成功后,发送认证请求,所述认证请求中会包含请求数据类型;
若认证失败,则选择下一个备用节点继续尝试连接,若认证成功,则启动接收及数据解析处理模块302等待并接收行情数据。
具体地,当上级网关或备用节点与下级节点连接成功后,等待下级节点的认证请求,校验登陆信息是否可以通过,不通过则发送认证失败的应答数据至下级节点,通过则发送认证成功的应答数据至下级节点,并于认证成功后,判断认证请求中请求数据类型,根据请求数据类型将当前连接归类至压缩通道和非压缩通道中,至此连接认证完成,接下来则可以发送行情数据至下级节点。在本发明具体实施例中,认证请求的格式为接口规范彼此提前约定,认证请求数据包含:数据类型、用户名、密码、版本信息、数据长度、校验码等,所述请求的数据类型包括但不限于普通登陆、压缩登陆、注销、心跳等,例如当认证请求数据包中类型为压缩登陆,上级网关则根据此类型将当前下级的连接归类至压缩通道。
接收及数据解析处理模块302,用于接收行情数据,获取并解析行情数据包,并重新组包,经过压缩算法处理将数据压缩,将数据包分为压缩前及压缩后两份数据,并遍历两种通道对应的下级连接,将行情数据包引用分配给对应连接,并增加引用计数,同时增加发送任务。
具体地,接收及数据解析处理模块302进一步包括:
解析组包单元,用于解析行情数据包,并重新组包。
解析组包单元具体用于:
接收行情数据后,将接收到的行情数据按顺序存入接收队列;
通过解析线程定期根据接收队列数据,校验数据是否为完整行情数据包,如果不完整,则继续等待接收队列获取新数据包,直至完整数据包;
解析出完整数据包后,计算当前数据包checksum(校验和)是否正确,如果校验失败,则说明当前数据接收有异常,断开当前连接并重新连接上级获取最新数据,同时记录异常日志;若数据校验成功,将当前数据包存入处理队列。
压缩处理单元,用于利用压缩算法对处理队列中的行情数据包压缩,将行情数据包分为压缩前及压缩后两份数据。
压缩处理单元具体用于:
从处理队列中获取行情数据包;
设置组包大小并开始组包,例如设置组包大小为64KB,当队列不充足的情况下,则自动跳过本步骤组包,以确保实时性;
利用压缩算法将组包后的行情数据包处理为压缩和不压缩两份。
发送任务创建处理单元,用于遍历两种通道对应的下级连接,将对应的行情数据包引用分配给对应连接,并增加发送任务。具体地,发送任务创建处理单元分别将数据地址引用分配给压缩通道和非压缩通道下的各个连接,同时创建发送任务,并将创建的发送任务加入到发送任务队列。
发送任务处理模块303,用于遍历发送任务,触发发送模块301将各份行情数据包从对应连接上发送出去。
发送任务处理模块303具体用于:
触发发送模块301从发送任务队列获取发送任务。
遍历压缩和非压缩通道下的各个连接,开始发送数据;
若发送失败,则将当前行情数据包存入当前连接的发送缓存队列中,下一个行情数据包到达时将重新尝试发送,避免数据丢包;若发送完成,则发送下一发送任务,直至发送任务全部完成,释放对应内存资源。
优选地,于发送过程中,若检测到当前连接的发送缓存队列已满,则说明当前连接接收异常或者网络异常,将断开其与下级节点的当前连接,记录异常日志说明此线路异常。
实施例
图4为本发明实施例中行情数据接收到转发的具体流程图,过程如下:
首先,发起连接与上级网关建立连接,接收行情数据。
然后,解析接收队列中的行情数据,校验数据有效性并重新组包,若校验不成功,则表示数据异常断开连接,并选择下一个备用节点继续尝试连接,若校验成功,则重新组包处理。
接下来,预先将通道分为两种,压缩通道和非压缩通道,将新组包的数据添加至非压缩通道下各个连接,同时将新组包的数据经过高效压缩处理后,添加至压缩通道下的各个连接。
最后,遍历通道下的连接,将数据发送至对应连接的下级。
图5为本发明实施例中下级节点向上级网关或备用节点连接认证的流程图。其过程如下:
首先,由发送模块发起连接请求,连接上级网关如果失败,则选择下一个备用节点继续尝试连接;
连接上级网关成功后,则发送认证请求,所述认证请求中会包含请求数据类型,认证失败则选择下一个备用节点继续尝试连接;
认证成功后,等待接收行情数据。
图6为本发明实施例中上级网关或备用节点连接认证的流程图,其过程如下:
首先,开启服务监听端口,等待下级节点连接,连接成功后,等待下级节点发送的认证请求。
然后,解析下级节点发送过来的认证请求,校验登陆信息是否可以通过,不通过则发送认证失败的应答数据给下级节点。
认证成功后,判断认证请求中请求数据类型,根据请求将当前连接归类至压缩通道和非压缩通道中,至此连接认证完成,接下去可以发送行情数据。
图7为本发明实施例中接收数据并解析处理的流程图,其过程如下:
首先,接收行情数据后,将数据按顺序存入接收队列。
然后,通过解析线程定期根据接收队列数据,校验数据是否为完整行情数据包,如果不完整,则继续等待接收队列获取新数据包,直至完整数据包。
解析出完整数据包后,计算当前数据包checksum是否正确,如果校验失败,则说明当前数据接收有异常,断开当前连接并重新连接上级获取最新数据,同时记录异常日志。
最后,数据校验成功后,将当前数据存入处理队列。
图8为本发明实施例中数据组包及压缩的流程图,其过程如下:
首先,从处理队列中获取行情数据包。
然后,设置组包大小开始组包,如64KB,队列不充足的情况下,自动跳过组包,确保实时性。
最后,将行情数据包分为压缩和不压缩两份,分别将数据地址引用分配给压缩通道和非压缩通道下的各个连接,并增加引用计数,同时创建发送任务,加入发送任务队列,即遍历非压缩通道中的下级连接,将当前非压缩数据的地址记录到连接中,计数加一,遍历压缩通道中下级连接,将当前压缩数据的地址记录到连接中,计数加一,并以当前数据包为标识新建发送任务并加入发送任务队列,直至处理队列中的行情数据包均已处理完毕。
图9为本发明实施例中数据发送的流程图,过程如下:
首先,发送模块从发送任务队列获取任务。
然后,通过当前任务遍历压缩和非压缩通道下的各个连接,开始发送数据,如果发送失败,则将当前行情数据包存入当前连接的发送队列中,下一个行情数据包到达时将重新尝试发送,避免数据丢包;如果发送完成,则对引用计数减一处理,直至归零后,释放对应内存资源。如果检测到当前连接的发送缓存队列已满,则说明当前连接接收异常或者网络异常,如下级接收过慢或者网络异常,将断开下级的当前连接,记录异常日志说明此线路异常。
综上所述,本发明一种基于行情数据实时转发的方法及装置,通过将行情数据从网关(MDGW/VDE)接收至当前节点后,通过解析及组包压缩等处理后,实时转发至下级多个节点,从而达到节省主机资源和网络资源的同时,将行情数据高效传输至下级并使用的目的,本发明可将行情数据快速接收及转发至众多下级节点,且在数据传输过程中不允许丢包乱序,并要求转发延迟足够低,以确保传输过程的高效,数据转发至下级后实时有效及稳定可靠。
上述实施例仅例示性说明本发明的原理及其功效,而非用于限制本发明。任何本领域技术人员均可在不违背本发明的精神及范畴下,对上述实施例进行修饰与改变。因此,本发明的权利保护范围,应如权利要求书所列。
Claims (7)
1.一种基于行情数据实时转发的方法,包括如下步骤:
步骤S1,本级节点发起连接请求与上级网关或其备用节点建立连接,以于建立连接后,接收上级网关发送的行情数据;
步骤S2,本级节点获取并解析行情数据包,并重新组包,存入处理队列中;利用压缩算法对处理队列中的行情数据包压缩,将行情数据包分为压缩前及压缩后两份数据,分别将数据地址引用分配给压缩通道和非压缩通道下的各个连接,同时创建发送任务,并将创建的发送任务加入到发送任务队列;并遍历压缩通道和非压缩通道对应的下级连接,将对应的行情数据包引用分配给对应连接,并增加发送任务;
步骤S3,本级节点遍历发送任务,将各份行情数据包从对应连接上发送出去;
其中,本级节点等待下级节点的认证请求;校验所述下级节点的登陆信息是否可以通过;若不通过则发送认证失败的应答数据至下级节点,若通过则发送认证成功的应答数据至下级节点;于认证成功后,判断所述认证请求中请求数据类型,根据请求数据类型将当前连接归类至压缩通道和非压缩通道。
2.如权利要求1所述的一种基于行情数据实时转发的方法,其特征在于,步骤S1进一步包括:
步骤S100,利用发送模块发起连接请求,若连接上级网关失败,则选择上级网关的备用节点继续尝试连接;
步骤S101,于连接成功后,发送认证请求,所述认证请求中包含请求数据类型;
步骤S102,若认证失败,则选择下一个备用节点继续尝试连接,并返回步骤S101,若认证成功,则等待并接收行情数据。
3.如权利要求2所述的一种基于行情数据实时转发的方法,其特征在于:所述上级网关及备用节点开启服务监听端口,等待本级节点的连接;当接收到本级节点的连接请求时,返回连接确认反馈至本级节点,则连接成功,若本级节点未接收到上级网关或备用节点的连接确认反馈,则连接失败。
4.如权利要求1所述的一种基于行情数据实时转发的方法,其特征在于,该解析行情数据包,并重新组包,存入处理队列中的步骤进一步包括:
步骤S200a,接收到行情数据后,将接收到的行情数据按顺序存入接收队列;
步骤S200b,解析线程定期根据接收队列数据,校验数据是否为完整行情数据包,若不完整,则继续等待接收队列获取新数据包,直至完整数据包;
步骤S200c,解析出完整数据包后,计算当前数据包校验和是否正确,如果校验失败,则说明当前数据接收有异常,断开当前连接并重新连接上级获取最新数据,同时记录异常日志;若数据校验成功,将当前数据包存入所述处理队列。
5.如权利要求1所述的一种基于行情数据实时转发的方法,其特征在于,步骤S3进一步包括:
步骤S301,从发送任务队列获取发送任务;
步骤S302,遍历压缩和非压缩通道下的各个连接,开始发送数据;
步骤S303,若发送失败,则将当前行情数据包存入当前连接的发送缓存队列中,下一个行情数据包到达时将重新尝试发送,避免数据丢包;若发送完成,则继续遍历,直至当前任务对应的连接遍历完成,释放对应内存资源。
6.如权利要求5所述的一种基于行情数据实时转发的方法,其特征在于:于发送过程中,若检测到当前连接的发送缓存队列已满,则表示当前连接接收异常或者网络异常,将断开与下级节点的当前连接,记录异常日志说明此线路异常。
7.一种基于行情数据实时转发的装置,包括:
发送模块,用于本级节点发起连接请求与上级网关或其备用节点建立连接;
接收及数据解析处理模块,用于本级节点在与上级网关或备用节点建立连接后,接收所述上级网关或备用节点发送的行情数据,获取并解析行情数据包,并重新组包,存入处理队列中;利用压缩算法对处理队列中的行情数据包压缩,将行情数据包分为压缩前及压缩后两份数据,分别将数据地址引用分配给压缩通道和非压缩通道下的各个连接,同时创建发送任务,并将创建的发送任务加入到发送任务队列;并遍历压缩通道和非压缩通道对应的下级连接,将对应的行情数据包引用分配给对应连接,并增加引用计数,同时增加发送任务;
发送任务处理模块,用于本级节点遍历发送任务,触发所述发送模块将各份行情数据包从对应连接上发送出去;
其中 , 本级节点等待下级节点的认证请求;校验所述下级节点的登陆信息是否可以通过;若不通过则发送认证失败的应答数据至下级节点,若通过则发送认证成功的应答数据至下级节点;于认证成功后,判断所述认证请求中请求数据类型,根据请求数据类型将当前连接归类至压缩通道和非压缩通道。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911292130.6A CN110958265B (zh) | 2019-12-16 | 2019-12-16 | 一种基于行情数据实时转发的方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911292130.6A CN110958265B (zh) | 2019-12-16 | 2019-12-16 | 一种基于行情数据实时转发的方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110958265A CN110958265A (zh) | 2020-04-03 |
CN110958265B true CN110958265B (zh) | 2022-03-04 |
Family
ID=69981752
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911292130.6A Active CN110958265B (zh) | 2019-12-16 | 2019-12-16 | 一种基于行情数据实时转发的方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110958265B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111769909B (zh) * | 2020-06-16 | 2023-05-09 | 上海英方软件股份有限公司 | 一种基于行情数据级联重传的装置及方法 |
CN112087470A (zh) * | 2020-09-27 | 2020-12-15 | 山东云海国创云计算装备产业创新中心有限公司 | 一种行情数据传输方法及相关装置 |
CN112333043A (zh) * | 2020-10-28 | 2021-02-05 | 上海英方软件股份有限公司 | 一种基于行情数据的延时统计装置及方法 |
CN112583829A (zh) * | 2020-12-14 | 2021-03-30 | 上海英方软件股份有限公司 | 一种自适配多级端到端传输行情信息流的方法和装置 |
CN117014520B (zh) * | 2023-10-08 | 2024-02-09 | 广东广宇科技发展有限公司 | 一种基于压缩算法的数据快速传输方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1561007A (zh) * | 2004-02-27 | 2005-01-05 | 中兴通讯股份有限公司 | 用于数据传输中数据压缩解压缩的装置和方法 |
US7298298B1 (en) * | 2003-04-15 | 2007-11-20 | Cisco Technology, Inc. | Multi-epoch codebook learning in a lossy packet network |
CN102148983A (zh) * | 2010-02-08 | 2011-08-10 | 杨占昆 | 一种解决处理高清图像资源占用过高的方法 |
CN102291398A (zh) * | 2011-08-05 | 2011-12-21 | 中兴通讯股份有限公司 | 无线通讯系统中数据压缩与解压缩方法、装置及系统 |
-
2019
- 2019-12-16 CN CN201911292130.6A patent/CN110958265B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7298298B1 (en) * | 2003-04-15 | 2007-11-20 | Cisco Technology, Inc. | Multi-epoch codebook learning in a lossy packet network |
CN1561007A (zh) * | 2004-02-27 | 2005-01-05 | 中兴通讯股份有限公司 | 用于数据传输中数据压缩解压缩的装置和方法 |
CN102148983A (zh) * | 2010-02-08 | 2011-08-10 | 杨占昆 | 一种解决处理高清图像资源占用过高的方法 |
CN102291398A (zh) * | 2011-08-05 | 2011-12-21 | 中兴通讯股份有限公司 | 无线通讯系统中数据压缩与解压缩方法、装置及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN110958265A (zh) | 2020-04-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110958265B (zh) | 一种基于行情数据实时转发的方法及装置 | |
US11729260B2 (en) | Internet-of-things resource access system and method | |
CN111131450B (zh) | 文件上传方法、重组方法及装置 | |
US20050036497A1 (en) | Frame transmission/reception system, frame transmitting apparatus, frame receiving apparatus, and frame transmission/reception method | |
US20070033284A1 (en) | System server for data processing with multiple clients and a data processing method | |
CN102394925B (zh) | 远程监测诊断中心与地区调度中心的通讯方法及装置 | |
CN110191066B (zh) | 一种确定最大传输单元pmtu的方法、设备及系统 | |
WO2008148334A1 (fr) | Procédé, système et appareil pour détecter la réception anormale d'un message | |
US7079491B2 (en) | Method and node apparatus for filtering ICMP data frame | |
KR20180047172A (ko) | 서비스 별 네트워크 혼잡을 제어하는 방법 및 장치 | |
CN111327650A (zh) | 数据传输方法、装置、设备及存储介质 | |
CN111046008A (zh) | 一种文件实时同步分发系统及方法 | |
US8472336B2 (en) | Network management apparatus for setting communication method of network apparatus | |
CN111935017A (zh) | 跨网络的应用调用方法、装置及路由设备 | |
CN114616858A (zh) | 包括多个upf实例的upf节点执行qos监测的方法和执行该方法的upf节点 | |
US7646738B2 (en) | Wireless network information distribution method | |
CN108512761B (zh) | 文件传输调度方法、管理平台、请求平台以及存储介质 | |
CN100461784C (zh) | 一种从网关设备之间进行通信的方法和系统 | |
CN116010130B (zh) | Dpu虚拟口的跨卡链路聚合方法、装置、设备及介质 | |
CN117082054A (zh) | 一种数据传输方法、装置、系统和介质 | |
JP2010067015A (ja) | ファイル送信装置、ファイル受信装置、ファイル送受信システム及びそのプログラム | |
CN108600308B (zh) | 数据上传方法、装置、存储介质和服务器 | |
CN112671662B (zh) | 数据流加速方法、电子设备和存储介质 | |
KR102492716B1 (ko) | 다중 라디오 액세스 기술 기반 IIoT 서비스를 위한 동적 태스크 오프로딩을 수행하는 사용자 단말 및 이의 오프로딩 방법 | |
KR102286913B1 (ko) | 네트워크 관리 장치 및 그 제어방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |