本申请涉及数据处理领域,尤其涉及一种数据传输方法及镜像系统。
背景技术:
1、在金融行情及交易等一些领域,十分注重系统的性能和延时,对数据的处理延时提出了极高的要求,通常为纳秒级别,因此要以最低的性能消耗达到最小的处理延时,与此同时,交易所的席位等资源也较为昂贵。
2、现有技术中,一个席位的数据仅能提供给一套特定的行情系统所使用,那么不同的行情系统则需要分别申请席位才可以从行情数据中心获取到行情数据。
3、由此可见,这不仅导致行情系统需要付出较高的成本才能够获取到行情数据,并且由于不同行情系统从行情数据中心获取到的行情数据实质上并无差别,从而导致了数据传输资源的极大浪费。
技术实现思路
1、本申请提供了一种数据传输方法及镜像系统,以解决现有技术中一个席位的数据仅能提供给一套特定的行情系统所使用导致行情数据的使用成本大且对数据传输资源造成极大浪费的技术问题。
2、第一方面,本申请提供了一种数据传输方法,所述方法应用于镜像系统,所述镜像系统包括代理节点、镜像节点,所述方法包括:
3、所述代理节点在接收到数据传输任务时,从所述镜像节点上确定与所述数据传输任务相匹配的目标镜像源端口,并通过所述目标镜像源端口与数据源之间建立传输控制协议tcp连接,以使所述数据源通过所述tcp连接将目标数据发送至所述目标镜像源端口;
4、所述镜像节点生成所述目标数据的镜像数据,并通过所述目标镜像源端口对应的多个不同的镜像目的端口将所述目标数据的镜像数据推送至不同的数据接收方。
5、在一可能的实施方式中,所述镜像节点还包括第一镜像源端口,所述第一镜像源端口属于所述数据源的组播域;所述方法还包括:
6、所述镜像节点通过所述第一镜像源端口接收到所述数据源发送的组播数据,并生成所述组播数据的镜像数据,以及通过所述第一镜像源端口对应的多个不同的镜像目的端口将所述组播数据的镜像数据推送至不同的数据接收方。
7、在一可能的实施方式中,所述目标镜像源端口属于所述数据源的组播域;所述方法还包括:
8、所述镜像节点通过所述目标镜像源端口接收到所述数据源发送的组播数据,并生成所述组播数据的镜像数据,以及通过所述目标镜像源端口对应的多个不同的镜像目的端口将所述组播数据的镜像数据推送至不同的数据接收方。
9、在一可能的实施方式中,所述目标数据为全量行情数据,所述组播数据为增量行情数据。
10、在一可能的实施方式中,所述从所述镜像节点上确定与所述数据传输任务相匹配的目标镜像源端口,包括:
11、从所述数据传输任务中解析出会员信息,所述会员信息为请求获取所述目标数据的用户的信息;
12、根据所述会员信息向所述数据源申请目标席位;
13、基于预设的席位与端口之间的绑定关系,从所述镜像节点上确定与所述目标席位绑定的端口,并将该端口确定为与所述数据传输任务相匹配的目标镜像源端口;其中,一个席位绑定一个端口。
14、在一可能的实施方式中,所述数据接收方采用现场可编程门阵列fpga芯片对所述镜像节点推送的数据进行抓包。
15、在一可能的实施方式中,所述方法还包括:
16、所述fpga芯片将收集到的数据交由上层软件进行基于tcp协议的处理,并对所述上层软件返回的处理结果进行计算。
17、第二方面,本申请提供一种镜像系统,所述镜像系统包括代理节点、镜像节点;
18、所述代理节点,在接收到数据传输任务时,从所述镜像节点上确定与所述数据传输任务相匹配的目标镜像源端口,并通过所述目标镜像源端口与数据源之间建立传输控制协议tcp连接,以使所述数据源通过所述tcp连接将目标数据发送至所述目标镜像源端口;
19、所述镜像节点,生成所述目标数据的镜像数据,并通过所述目标镜像源端口对应的多个不同的镜像目的端口将所述目标数据的镜像数据推送至不同的数据接收方。
20、在一可能的实施方式中,所述镜像节点还包括第一镜像源端口,所述第一镜像源端口属于所述数据源的组播域;
21、所述镜像节点,通过所述第一镜像源端口接收到所述数据源发送的组播数据,并生成所述组播数据的镜像数据,以及通过所述第一镜像源端口对应的多个不同的镜像目的端口将所述组播数据的镜像数据推送至不同的数据接收方。
22、在一可能的实施方式中,所述目标镜像源端口属于所述数据源的组播域;
23、所述镜像节点,通过所述目标镜像源端口接收到所述数据源发送的组播数据,并生成所述组播数据的镜像数据,以及通过所述目标镜像源端口对应的多个不同的镜像目的端口将所述组播数据的镜像数据推送至不同的数据接收方。
24、本申请实施例提供的上述技术方案与现有技术相比具有如下优点:本申请实施例提供的该方法,通过在上期所数据中心与多个期货行情系统之间设置镜像系统,该镜像系统包括代理节点和镜像节点,其中,代理节点在接收到数据传输任务时,从镜像节点上确定与数据传输任务相匹配的目标镜像源端口,并通过目标镜像源端口与数据源之间建立传输控制协议tcp连接,以使数据源通过tcp连接将目标数据发送至目标镜像源端口。镜像节点生成所述目标数据的镜像数据,并通过目标镜像源端口对应的多个不同的镜像目的端口将目标数据的镜像数据推送至不同的数据接收方,可以实现由代理节点与上期所数据中心建立一个tcp连接,通过该tcp连接从上期所数据中心获取到行情数据,并通过镜像节点将该行情数据镜像到不同的期货行情系统,从而实现了多个不同的期货行情系统能够复用一个席位的行情数据,这极大降低了多个期货行情系统获取行情数据的成本,并且节省了行情数据的传输资源。
1.一种数据传输方法,其特征在于,所述方法应用于镜像系统,所述镜像系统包括代理节点、镜像节点,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述镜像节点还包括第一镜像源端口,所述第一镜像源端口属于所述数据源的组播域;所述方法还包括:
3.根据权利要求2所述的方法,其特征在于,所述目标镜像源端口属于所述数据源的组播域;所述方法还包括:
4.根据权利要求2或3所述的方法,其特征在于,所述目标数据为全量行情数据,所述组播数据为增量行情数据。
5.根据权利要求1所述的方法,其特征在于,所述从所述镜像节点上确定与所述数据传输任务相匹配的目标镜像源端口,包括:
6.根据权利要求2或3所述的方法,其特征在于,所述数据接收方采用现场可编程门阵列fpga芯片对所述镜像节点推送的数据进行抓包。
7.根据权利要求6所述的方法,其特征在于,所述方法还包括:
8.一种镜像系统,其特征在于,所述镜像系统包括代理节点、镜像节点;
9.根据权利要求8所述的系统,其特征在于,所述镜像节点还包括第一镜像源端口,所述第一镜像源端口属于所述数据源的组播域;
10.根据权利要求9所述的系统,其特征在于,所述目标镜像源端口属于所述数据源的组播域;