欢迎光临小豌豆知识网!
当前位置:首页 > 电学技术 > 电通讯技术> 数据包路由方法、装置、设备、系统及存储介质独创技术64254字

数据包路由方法、装置、设备、系统及存储介质

2021-03-08 20:50:35

数据包路由方法、装置、设备、系统及存储介质

  技术领域

  本发明实施例涉及通信技术领域,尤其涉及数据包路由方法、装置、设备、系统及存储介质。

  背景技术

  随着通信技术和互联网技术的快速发展,许多企业的业务范围不断扩大,需要在较大的地域范围内(如整个国家或者全球)跨区域部署存放服务器的机房,如何保证不同机房之间网络通信的质量成为待解决的难题。

  目前,为了解决上述问题,保障稳定可靠的互联通信,一般需要额外花费昂贵费用来购买国际私有专用线路(International Private Leased Circuit,IPLC)等网络专线,IPLC一般指电信运营商租赁给企业用户专用的跨国家或地区的通信线路,提供大数据量的安全、稳定、高速及低误码率传输,购买网络专线将严重增加企业的成本负担,并不是理想的解决方案。

  发明内容

  本发明实施例提供了数据包路由方法、装置、设备及存储介质,可以改善跨机房的网络通信方案。

  第一方面,本发明实施例提供了一种数据包路由方法,应用于跨机房的通信系统中的中心机房,所述通信系统中还包括多个前端机房,所述方法包括:

  获取前端机房发送的网络质量探测信息,其中,所述网络质量探测信息包括前端机房探测到的本机房到其他机房的网络质量信息;

  根据多个前端机房对应的网络质量探测信息确定起点机房到终点机房的数据路由路径,其中,所述起点机房和所述终点机房包括前端机房,所述数据路由路径对应的网络质量优于起点机房到终点机房的网络质量;

  将所述数据路由路径下发至对应的起点机房,用于指示所述起点机房按照所述数据路由路径将对应的数据包发送至相应的终点机房。

  第二方面,本发明实施例提供了一种数据包路由方法,应用于跨机房的通信系统中的第一前端机房,所述通信系统中还包括中心机房和多个其他前端机房,所述方法包括:

  向所述中心机房上报网络质量探测信息,用于指示所述中心机房根据所述第一前端机房上报的网络质量探测信息和其他前端机房上报的网络质量探测信息确定起点机房到终点机房的数据路由路径,其中,所述网络质量探测信息包括前端机房探测到的本机房到其他机房的网络质量信息,所述起点机房包括所述第一前端机房,所述数据路由路径对应的网络质量优于起点机房到终点机房的网络质量;

  接收所述中心机房下发的与所述第一前端机房对应的第一数据路由路径;

  根据所述第一数据路由路径将对应的数据包发送至相应的终点机房。

  第三方面,本发明实施例提供了一种数据包路由装置,配置于跨机房的通信系统中的中心机房,所述通信系统中还包括多个前端机房,所述装置包括:

  探测信息获取模块,用于获取前端机房发送的网络质量探测信息,其中,所述网络质量探测信息包括前端机房探测到的本机房到其他机房的网络质量信息;

  数据路由路径确定模块,用于根据多个前端机房对应的网络质量探测信息确定起点机房到终点机房的数据路由路径,其中,所述起点机房和所述终点机房包括前端机房,所述数据路由路径对应的网络质量优于起点机房到终点机房的网络质量;

  数据路由路径下发模块,用于将所述数据路由路径下发至对应的起点机房,用于指示所述起点机房按照所述数据路由路径将对应的数据包发送至相应的终点机房。

  第四方面,本发明实施例提供了一种数据包路由装置,配置于跨机房的通信系统中的第一前端机房,所述通信系统中还包括中心机房和多个其他前端机房,所述装置包括:

  探测信息发送模块,用于向所述中心机房上报网络质量探测信息,用于指示所述中心机房根据所述第一前端机房上报的网络质量探测信息和其他前端机房上报的网络质量探测信息确定起点机房到终点机房的数据路由路径,其中,所述网络质量探测信息包括前端机房探测到的本机房到其他机房的网络质量信息,所述起点机房包括所述第一前端机房,所述数据路由路径对应的网络质量优于起点机房到终点机房的网络质量;

  数据路由路径接收模块,用于接收所述中心机房下发的与所述第一前端机房对应的第一数据路由路径;

  数据包发送模块,用于根据所述第一数据路由路径将对应的数据包发送至相应的终点机房。

  第五方面,本发明实施例提供了一种机房设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如本发明实施例第一方面提供的数据包路由方法。

  第六方面,本发明实施例提供了一种机房设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如本发明实施例第二方面提供的数据包路由方法。

  第七方面,本发明实施例提供了一种跨机房的通信系统,所述通信系统中包括中心机房和多个前端机房,所述中心机房中包含至少一个如本发明实施例第五方面所述的机房设备,所述多个前端机房中的每个机房中包含至少一个如本发明实施例第六方面所述的机房设备。

  第八方面,本发明实施例提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本发明实施例提供的数据包路由方法。

  本发明实施例中提供的数据包路由方案,在跨机房的通信系统中设置中心机房和多个前端机房,中心机房获取前端机房发送的网络质量探测信息,其中,网络质量探测信息包括前端机房探测到的本机房到其他机房的网络质量信息,根据多个前端机房对应的网络质量探测信息确定起点机房到终点机房的数据路由路径,数据路由路径对应的网络质量优于起点机房到终点机房的网络质量,将数据路由路径下发至对应的起点机房,起点机房按照数据路由路径将对应的数据包发送至相应的终点机房。通过采用上述技术方案,中心机房可以根据各前端机房之间的网络质量信息来规划数据包的路由路径,并将规划出的网络质量优于起点机房直接发送至终点机房的路由路径下发到前端机房,指导前端机房按照该路由路径进行数据包的发送,可改善数据包发送过程中路径的网络质量,提高数据包被成功接收的概率。

  附图说明

  图1为本发明实施例提供的一种数据包路由方法所适用的应用场景的场景架构图;

  图2为本发明实施例提供的一种数据包路由方法的流程示意图;

  图3为本发明实施例提供的一种数据包路由方法的流程示意图;

  图4为本发明实施例提供的一种数据包路由方法的流程示意图;

  图5为本发明实施例提供的一种数据包路由方法的流程示意图;

  图6为本发明实施例提供的一种拆包流程示意图;

  图7为本发明实施例提供的一种拆包原理示意图;

  图8为本发明实施例提供的一种通信系统的交互示意图;

  图9为本发明实施例提供的一种下行控制信令传输过程示意图;

  图10为本发明实施例提供的一种上行控制信令传输过程示意图;

  图11为本发明实施例提供的一种数据包路由装置的结构框图;

  图12为本发明实施例提供的一种数据包路由装置的结构框图;

  图13为本发明实施例提供的一种计算机设备的结构框图;

  图14为本发明实施例提供的一种跨机房的通信系统的结构框图。

  具体实施方式

  下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。此外,在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互组合。

  图1为本发明实施例提供的一种数据包路由方法所适用的应用场景的场景架构图。具体的,参考图1,该应用场景中涉及跨机房的通信系统,该通信系统中包括中心机房10和多个前端机房20。中心机房10中包含的机房设备(如服务器)的数量以及每个前端机房20中包含的机房设备的数量不做限定。本发明实施例中的方法步骤可以由所对应的机房中的任意或指定机房设备来执行,具体可以由机房设备中的进程执行。

  现有技术中,跨机房的通信系统中的机房一般分布于不同的国家或地区,基于因特网(Internet)进行通信,且各机房的地位一般是平等的,当一个机房A(可称为起点机房)想要向另一个机房B(可称为终点机房或目的机房)发送数据包时,则直接根据机房B的地址进行数据包的发送,而由于机房A和机房B之间的网络质量可能因各种因素而无法保障,因此两者之间的网际协议地址(Internet Protocol,IP)互联是不可靠的,采用IPLC等网络专线可以在一定程度上改善上述问题,但是成本很高,不利于企业实施。

  本发明实施例中,在跨机房的通信系统中增设中心机房10,其他与实际业务相关的机房被称为前端机房20或普通机房(如上述机房A和机房B),由前端机房20探测本机房到其他机房的网络质量,并将包含网络质量信息的网络质量探测信息发送给中心机房10,中心机房10可以根据各前端机房20上报的网络质量探测信息来规划出网络质量优于从起点机房直接向终点机房发送这一原始路径的数据路由路径,并下发到前端机房20,由前端机房20根据接收到的数据路由路径进行数据包的发送,可改善数据包发送过程中路径的网络质量,提高数据包被成功接收的概率。

  图2为本发明实施例提供的一种数据包路由方法的流程示意图,该方法可以由数据包路由装置执行,其中该装置可由软件和/或硬件实现,一般可集成在跨机房的通信系统中的中心机房的如服务器等机房设备中。如图2所示,该方法包括:

  步骤201、获取前端机房发送的网络质量探测信息,其中,所述网络质量探测信息包括前端机房探测到的本机房到其他机房的网络质量信息。

  示例性的,中心机房可以直接接收前端机房上报的网络质量探测信息,也可以接收由其他机房或设备转发的前端机房上报的网络质量探测信息,可由中心机房主动获取,也可由前端机房主动发送。所获取的网络质量探测信息可以来源于通信系统中的所有前端机房,也可以来源于通信系统中的部分前端机房。一般的,两个机房之间的网络质量信息可能因发起探测的机房的不同而不同,也就是说在机房A和机房B之间,由机房A探测到本机房到机房B的网络质量为a,而由机房B探测到本机房到机房A的网络质量为b,a和b可能相同也可能不同,若a和b相同,则为了减少数据量传输可仅获取部分前端机房发送的网络质量探测信息,当然,即使a和b相同,为了保证信息准确性,也可获取系统中所有前端机房发送的网络质量探测信息,具体可根据实际需求进行设置。其中,网络质量探测信息包括前端机房探测到的本机房到其他机房的网络质量信息,其他机房可包括前端机房,还可包括中心机房或具备其他功能的机房,如后文中的中心代理机房等,具体不做限定。

  示例性的,网络质量可采用丢包率或往返时间(Round-Trip time,RTT)等指标进行衡量。可选的,网络质量信息可包括丢包率和RTT中的至少一个。当然,还可选择其他更多的指标或参数用于评价网络质量,丰富网络质量信息的维度,如数据包传输延迟、数据包时延变化以及数据包误差率等,以数据包为IP包为例,可以包括IP包传输延迟(IP PacketTransfer Delay,IPTD)、IP包时延变化(IP Packet Delay Variation,IPDV)以及IP包误差率(IP Packet Error Rate,IPER)等,可以得到更加准确的网络质量信息,具体可根据实际需求进行设置。

  示例性的,前端机房在进行网络质量探测时,可以采用第一预设频率进行探测,并以第二预设频率进行上报,在上报时可将上一次上报时刻到本次上报时刻之间的网络质量情况进行汇总,得到需要上报的网络质量探测信息。其中,第一预设频率可以高于或等于第二预设频率,两者数值可根据实际情况进行设置,例如,第一预设频率为1次/秒,第二预设频率为0.1次/秒。

  步骤202、根据多个前端机房对应的网络质量探测信息确定起点机房到终点机房的数据路由路径,其中,所述起点机房和所述终点机房包括前端机房,所述数据路由路径对应的网络质量优于起点机房到终点机房的网络质量。

  示例性的,本步骤中的多个前端机房的数量可以小于或等于通信系统中前端机房的总数。数据路由路径也可称为数据中转路径。针对通信系统中的每两个前端机房,可以将其中一个前端机房(假设机房A)确定为起点机房,将另一个机房(假设机房B)确定为终点机房,算出从A到B的网络质量较好的路径,例如,可先根据机房A上报的机房A到机房B的网络质量探测信息确定A到B的网络质量(假设以丢包率进行评估,A到B的丢包率为10%),然后根据A上报的A到其他机房的网络质量探测信息确定A到其他机房的网络质量,以及根据其他机房上报的本机房到B的网络质量探测信息确定其他机房到B的网络质量,例如,A到C的丢包率为0,C到B的丢包率为0,那么可以得知从A到C再到B的这一路径对应的网络质量是优于A到B的网络质量的,可将该路径作为A对应的一个数据路由路径,此时C可称为该路径中的中转机房。当然,若C到B的丢包率为5%,而C到D的丢包率为0,D到B的丢包率为0,也可将依次经过A、C、D到B的路径作为A对应的一个数据路由路径,也即中转机房的数量可以是两个或两个以上。随后,可将B作为起点机房,将A作为终点机房,参照上述过程确定B对应的数据路由路径。可以理解的是,通信系统中的每个前端机房均可能成为起点机房、终点机房或中转机房。

  可选的,所述根据多个前端机房对应的网络质量探测信息确定起点机房到终点机房的数据路由路径,包括:根据预设最大跳数阈值和多个前端机房对应的网络质量探测信息确定起点机房到终点机房的数据路由路径,其中,所确定的数据路由路径的跳数小于或等于所述预设最大跳数阈值。这样设置的好处在于,对数据路由路径的跳数进行限制,相当于对中转机房的数量进行控制,可以保证数据包的传输效率,也即保证数据包传输效率的同时提高数据包传输的成功率。预设最大跳数阈值可根据实际需求设置,例如为6。

  步骤203、将所述数据路由路径下发至对应的起点机房,用于指示所述起点机房按照所述数据路由路径将对应的数据包发送至相应的终点机房。

  示例性的,中心机房在确定出各起点机房对应的数据路由路径后,将数据路由路径下发至对应的起点机房,可以指示起点机房按照对应的数据路由路径将想要发送的数据包经中转机房发送至相应的终点机房。数据路由路径例如可包含在中心机房下发到前端机房的控制信令中。

  本发明实施例中提供的数据包路由方法,在跨机房的通信系统中设置中心机房和多个前端机房,中心机房获取前端机房发送的网络质量探测信息,其中,网络质量探测信息包括前端机房探测到的本机房到其他机房的网络质量信息,根据多个前端机房对应的网络质量探测信息确定起点机房到终点机房的数据路由路径,数据路由路径对应的网络质量优于起点机房到终点机房的网络质量,将数据路由路径下发至对应的起点机房,起点机房按照数据路由路径将对应的数据包发送至相应的终点机房。通过采用上述技术方案,中心机房可以根据各前端机房之间的网络质量信息来规划数据包的路由路径,并将规划出的网络质量优于起点机房直接发送至终点机房的路由路径下发到前端机房,指导前端机房按照该路由路径进行数据包的发送,可改善数据包发送过程中路径的网络质量,提高数据包被成功接收的概率。

  在一些实施例中,还可包括:根据多个前端机房对应的网络质量探测信息确定所述中心机房到起点机房的下行信令路由路径,其中,所述中心机房在所述下行信令路由路径中为起点,起点机房在所述下行信令路由路径中为终点,所述下行信令路由路径对应的网络质量优于中心机房到起点机房的网络质量;所述将所述数据路由路径下发至对应的起点机房,包括:按照所述下行信令路由路径将所述数据路由路径下发至对应的起点机房。这样设置的好处在于,前端机房可能会部署在全球各地,其与中心机房之间也可能有存在网络故障的时候,这种网络故障情况下,前端机房也可能不能成功接收到中心机房下发的数据路由路径,因此,对于中心机房到前端机房的控制信令传输,也可由中心机房重新规划路由路径,本文中将这里所规划出的路由路径称为下行信令路由路径,按照下行信令路由路径进行数据路由路径的发送,可提高前端机房接收数据路由路径的成功率。

  在一些实施例中,还可包括:根据多个前端机房对应的网络质量探测信息确定前端机房到所述中心机房的上行信令路由路径,其中,前端机房在所述上行信令路由路径中为起点,所述中心机房在所述上行信令路由路径中为终点,所述上行信令路由路径对应的网络质量优于前端机房到中心机房的网络质量;按照所述下行信令路由路径将所述上行信令路由路径下发至对应的前端机房,用于指示接收到所述上行信令路由路径的前端机房按照所述上行信令路由路径向所述中心机房上报网络质量探测信息。这样设置的好处在于,如前文所述前端机房可能会部署在全球各地,其与中心机房之间也可能有存在网络故障的时候,这种网络故障情况下,中心机房也可能不能成功接收到前端机房上报的网络质量探测信息,因此,对于前端机房到中心机房的控制信令传输,也可由中心机房重新规划路由路径,本文中将这里所规划出的路由路径称为上行信令路由路径,按照下行信令路由路径进行上行信令路由路径的发送,可提高前端机房接收上行信令路由路径的成功率,同时,指导前端机房按照上行信令路由路径进行下一次的网络质量探测信息的上报,提高中心机房接收前端机房上报的网络质量探测信息的成功率。

  在一些实施例中,所述通信系统中还包括中心代理机房,所述中心代理机房和所述中心机房之间的网络质量满足预设质量要求;所述获取前端机房发送的网络质量探测信息,包括:获取前端机房以所述中心机房为终点机房发送的第一网络质量探测信息;获取所述中心代理机房转发的第二网络质量探测信息,其中,所述第二网络质量探测信息由前端机房以所述中心代理机房为终点机房进行发送;根据所述第一网络质量探测信息和所述第二网络质量探测信息确定前端机房发送的网络质量探测信息。这样设置的好处在于,可以进一步保证中心机房成功接收到准确的网络质量探测信息的概率。

  示例性的,中心机房和中心代理机房可分别部署在同一个城市中,这两个机房可以采用城域网连接,保证两者的网络通信是可靠的。当然,也可采用上述的丢包率等指标来衡量中心机房和中心代理机房之间的网络质量,例如,预设质量要求为丢包率小于1%。第一网络质量探测信息和第二网络质量探测信息可以是相同的,具体可以是由实际的网络传输情况决定的。通过增加中心代理机房,保证前端机房到中心机房的控制信令是双份的,中心机房可以根据不同路径接收到的第一网络质量探测信息和第二网络质量探测信息进行去重以及合并等操作,综合确定出前端机房发送的网络质量探测信息,用于准确地确定数据路由路径。

  在一些实施例中,所述将所述数据路由路径下发至对应的起点机房,包括:将所述数据路由路径下发至对应的起点机房;将所述数据路由路径发送至所述中心代理机房,用于指示所述中心代理机房将所述数据路由路径转发至所述对应的起点机房。这样设置的好处在于,保证中心机房到前端机房的控制信令是双份的,可以进一步保证普通机房成功接收到准确的数据路由路径的概率。

  图3为本发明实施例提供的一种数据包路由方法的流程示意图,该方法应用于跨机房的通信系统中的中心机房,该通信系统中还包括中心代理机房和多个前端机房。

  示例性的,该方法可包括:

  步骤301、获取前端机房以中心机房为终点机房发送的第一网络质量探测信息。

  示例性的,可在中心机房中设置中心控制进程,由中心控制进程完成中心机房所需执行的相应步骤。网络质量探测信息包括前端机房探测到的本机房到其他机房的网络质量信息,网络质量信息可包括丢包率和RTT中的至少一个。

  步骤302、获取中心代理机房转发的第二网络质量探测信息,其中,第二网络质量探测信息由前端机房以中心代理机房为终点机房进行发送。

  示例性的,可在中心代理机房中设置中心控制代理进程,由中心控制代理进程完成中心代理机房所需执行的相应步骤。

  步骤303、根据第一网络质量探测信息和第二网络质量探测信息确定前端机房发送的网络质量探测信息。

  步骤304、根据预设最大跳数阈值和多个前端机房对应的网络质量探测信息确定起点机房到终点机房的数据路由路径。

  其中,所确定的数据路由路径的跳数小于或等于所述预设最大跳数阈值,数据路由路径对应的网络质量优于起点机房到终点机房的网络质量。

  步骤305、根据多个前端机房对应的网络质量探测信息确定中心机房到起点机房的下行信令路由路径。

  其中,中心机房在下行信令路由路径中为起点,起点机房在下行信令路由路径中为终点,下行信令路由路径对应的网络质量优于中心机房到起点机房的网络质量。

  步骤306、根据多个前端机房对应的网络质量探测信息确定前端机房到中心机房的上行信令路由路径。

  其中,前端机房在上行信令路由路径中为起点,中心机房在上行信令路由路径中为终点,上行信令路由路径对应的网络质量优于前端机房到中心机房的网络质量。

  步骤307、按照下行信令路由路径将数据路由路径和上行信令路由路径下发至对应的前端机房。

  其中,上行信令路由路径用于指示接收到上行信令路由路径的前端机房按照上行信令路由路径向中心机房上报网络质量探测信息;数据路由路径用于指示对应的起点机房按照接收到的数据路由路径将对应的数据包发送至相应的终点机房。

  步骤308、将数据路由路径和上行信令路由路径发送至中心代理机房,用于指示中心代理机房将数据路由路径和上行信令路径转发至对应的前端机房。

  本发明实施例提供的数据包路由方法,通过增设中心代理机房来保证中心机房和前端机房之间的控制信令的传输是双份的,也即均通过不同路径传输两次,能够有效保证控制信令传输的可靠性,同时,中心机房与前端机房之间的控制信令传输路径也由中心机房根据各前端机房上报的网络质量探测信息来确定,进一步保证了控制信令传输的成功率和准确率,进而保证了整个通信系统中的数据包传输的成功率和准确率,保证系统性能,使系统能够提供高质量的网络互连服务。

  图4为本发明实施例提供的一种数据包路由方法的流程示意图,该方法可以由数据包路由装置执行,其中该装置可由软件和/或硬件实现,一般可集成在跨机房的通信系统中的第一前端机房的如服务器等机房设备中。如图4所示,该方法包括:

  步骤401、向所述中心机房上报网络质量探测信息,用于指示所述中心机房根据所述第一前端机房上报的网络质量探测信息和其他前端机房上报的网络质量探测信息确定起点机房到终点机房的数据路由路径。

  其中,所述网络质量探测信息包括前端机房探测到的本机房到其他机房的网络质量信息,所述起点机房包括所述第一前端机房,所述数据路由路径对应的网络质量优于起点机房到终点机房的网络质量。

  可选的,可在前端机房中增设探测进程,由探测进程完成网络质量的探测以及上报等相关步骤。

  步骤402、接收所述中心机房下发的与所述第一前端机房对应的第一数据路由路径。

  可选的,可在前端机房中增设业务接口进程,由业务接口进程完成第一数据路由路径的接收等相关步骤。

  步骤403、根据所述第一数据路由路径将对应的数据包发送至相应的终点机房。

  示例性的,通信系统中的网络质量可能是动态变化的,不同时刻中心机房所确定的数据路由路径可能会发生变化,也即,不同时刻接收到的第一数据路由路径可能是不同的,在确定需要向第一数据路由路径中的终点机房发送数据包时,可根据最近接收到的第一数据路由路径进行数据包的发送。

  可选的,也可由上述业务接口进程完成数据包的发送等相关步骤。

  本发明实施例中提供的数据包路由方法,在跨机房的通信系统中设置中心机房和多个前端机房,前端机房向中心机房上报网络质量探测信息,由中心机房根据多个前端机房对应的网络质量探测信息确定起点机房到终点机房的数据路由路径,数据路由路径对应的网络质量优于起点机房到终点机房的网络质量,作为起点机房的前端机房接收中心机房下发的数据路由路径,在需要进行数据包发送时,该前端机房按照数据路由路径将对应的数据包发送至相应的终点机房。通过采用上述技术方案,前端机房在进行数据包发送时,所依据的数据包路由路径由中心机房根据各前端机房之间的网络质量信息来规划得到,可改善数据包发送过程中路径的网络质量,提高数据包被成功接收的概率。

  在一些实施例中,所述根据所述第一数据路由路径将对应的数据包发送至相应的终点机房,包括:获取所述第一数据路由路径中的终点机房对应的第一原始数据包;将所述第一原始数据包和所述第一数据路由路径的相关信息封装至基于预设通信协议的第一数据包的负载中,其中,所述第一数据路由路径的相关信息中包括所述第一数据路由路径中的终点机房的第一地址信息;根据所述第一数据路由路径确定中转机房的第二地址信息;根据所述第二地址信息将所述第一数据包发送至所述中转机房,用于指示所述中转机房根据所述第一地址信息将所述第一原始数据包转发至相应的终点机房。这样设置的好处在于,将第一原始数据包和第一数据路由路径的相关信息封装至另一个数据包的负载中并发送至中转机房,中转机房可以通过解析接收到的数据包并成功从负载中获知第一原始数据包以及真正的终点机房,并进行后续的转发操作,使得真正的终点机房能够成功接收到第一原始数据包。其中,预设通信协议例如可以是用户数据报协议(User DatagramProtocol,UDP),第一地址信息和第二地址信息例如可以是IP地址。

  可选的,终点机房的第一地址信息可包括终点机房中业务接口进程的地址信息,也即终点机房中业务接口进程所属机房设备的地址信息;还可在前端机房中增设中继转发进程,由中继转发进程完成需要转发的数据包的接收及转发等相关步骤,中转机房的第二地址信息可包括中转机房中中继转发进程的地址信息,也即中转机房中中继转发进程所属机房设备的地址信息。第一原始数据包的真正目的地可能是终点机房中的目的服务器,第一地址信息还可包括第一原始数据包最终的接收设备(如目的服务器)的地址信息,终点机房中业务接口进程在接收到第一原始数据包后可转发至目的服务器中的业务目的进程。

  在一些实施例中,所述第一数据路由路径中包含至少两个中转机房,所述第一数据路由路径的相关信息中还包括除第一个中转机房之外的其他中转机房的第二地址信息;所述根据所述第二地址信息将所述第一数据包发送至所述中转机房,用于指示所述中转机房根据所述第一地址信息将所述第一原始数据包转发至相应的终点机房,包括:根据第一个中转机房对应的第二地址信息将所述第一数据包发送至所述第一个中转机房,用于指示所述第一个中转机房根据下一个中转机房的第二地址信息将第二数据包发送至所述下一个中转机房,其中,所述第二数据包的负载中包含所述第一数据路由路径对应的第一原始数据包、第一地址信息和剩余中转机房的第二地址信息。这样设置的好处在于,当存在多个中转机房时,可根据中转机房在整个路径中所处的位置依次减少所要传输的数据包中包含的第二地址信息的数量,提高数据包传输效率。其中,剩余中转机房可包括在第一数据路径中位于所述下一个中转机房之后的中转机房,剩余中转机房未接收过包含第一原始数据包的数据包。

  例如,第一数据路由路径为A、C、D、E到B,C、D和E是中转机房,则A发送给C的数据包a中包含了A原本要发送给B的原始数据包,还包括B的第一地址信息以及D和E的第二地址信息,C在接收到数据包a后,从中提取到下一个中转机房D(也即下一跳)的第二地址信息,将原始数据包、B的第一地址信息以及E的第二地址信息封装到数据包b中,根据D的第二地址信息将数据包b发送给D,D在接收到数据包b后,从中提取到下一个中转机房E的第二地址信息,将原始数据包和B的第一地址信息封装到数据包c中,根据E的第二地址信息将数据包c发送给E,E在接收到数据包c后,从中提取到B的第一地址信息,将原始数据包封装到数据包d,根据第一地址信息将数据包d发送给B,B在接收到数据包d后,可以从中提取到A发送的原始数据包,从而完成由A向B的数据包发送。

  可以理解的是,第一前端机房也可以成为中转机房,当第一前端机房的身份为第二数据路由路径中的中转机房时,可以接收第二前端机房发送的第三数据包,所述第三数据包中包括第二数据路由路径中对应的第二原始数据包、终点机房的第一地址信息以及剩余中转机房的第二地址信息,根据下一个中转机房的第二地址信息将第四数据包发送至下一个中转机房,其中,所述第四数据包的负载中包含所述第二数据路由路径对应的第二原始数据包、第一地址信息和剩余中转机房的第二地址信息。可以理解的是,当第一前端机房为最后一个中转机房时,第四数据包的负载中无需包含剩余中转机房的第二地址信息。

  在一些实施例中,该方法还可包括:接收所述中心机房下发的与所述第一前端机房对应的第一上行信令路由路径,其中,所述第一上行信令路由路径由所述中心机房根据多个前端机房对应的网络质量探测信息确定,所述第一前端机房在所述第一上行信令路由路径中为起点,所述中心机房在所述第一上行信令路由路径为终点;按照所述第一上行信令路由路径向所述中心机房上报网络质量探测信息。这样设置的好处在于,可提高中心机房接收前端机房上报的网络质量探测信息的成功率。

  在一些实施例中,所述将所述第一原始数据包和所述第一数据路由路径的相关信息封装至基于预设通信协议的第一数据包的负载中,包括:检测到若将所述第一原始数据包和所述第一数据路由路径的相关信息封装至基于预设通信协议的第一数据包的负载后,所述第一数据包的大小大于第一预设数值时,将所述第一原始数据包的原始负载拆分为至少两个原始子负载;针对每个原始子负载,将所述第一原始数据包的包头和当前原始子负载封装成对应的分片包,其中,最后一个分片包以外的分片包设置有分片标识,第一个分片包以外的分片包设置有分片偏移量;对于每个分片包,将当前分片包和所述第一数据路由路径的相关信息封装至对应的基于预设通信协议的第一数据分包的负载中,其中,第一数据分包的数量与分片包的数量一致。所述根据所述第二地址信息将所述第一数据包发送至所述中转机房,用于指示所述中转机房根据所述第一地址信息将所述第一原始数据包转发至相应的终点机房,包括:根据所述第二地址信息将所述第一数据分包发送至所述中转机房,用于指示所述中转机房根据所述第一地址信息将所述分片包转发至相应的终点机房,供终点机房中的业务接口进程将所述分片包透传给终点机房中的目的服务器,用于指示所述目的服务器根据所述分片包重组得出所述第一原始数据包。这样设置的好处在于,可提升通信系统针对较大数据包的处理性能,且直接将大包(大数据包)拆分成多个小包(小数据包),并避免终点机房业务接口对分片包的合并,可直接透传给真正的最终目的服务器,避免终点机房的额外性能消耗,提升处理大包的并发性能,且保证同一包头在分片传输的情况下保持包头相同,避免乱序等问题,增强了传输可靠性。

  示例性的,第一预设数值可以自由设置,例如可以是最大传输单元(MaximumTransmission Unit,MTU),数据链路层使用MTU来限制所能传输的数据包大小,广泛使用的以太网该值为1500,即一个以太网包最多能携带1500字节的数据。一般的,原始子负载的数量可以是两个,可以满足目前技术水平的要求,若随着网络协议等相关技术的发展,数量也可以更多。在进行原始负载拆分时,可以平均拆分,或以预设尺寸进行拆分。例如,预设尺寸为800字节,若原始负载为1500字节,则可拆分为800字节和700字节;又如预设尺寸为600字节,若原始负载为1500字节,则可拆分为600字节、600字节和300字节。分片标识可用于表示当前分片包之后还有其他分片包,例如可以是分片标志位(more fragment,MF)。分片偏移量可用于表示当前分片包之前的所有分片包的尺寸之和。例如,分片偏移量100,可表示前面的分片包尺寸之和为800字节。在根据原始数据包生成多个分片包后,可将每个分片包分别作为原始数据包进行用于发送给中转机房的数据包的封装,封装得到的数据包可称为数据分包。由于分片包的包头均与原始数据包的包头一致,因此,目的服务器可以根据原始数据包的包头以及分片标志位和分片偏移量重组出原始数据包,最终完成原始数据包的传输。

  在一些实施例中,所述第一前端机房中的交换机采用策略路由配置。所述接收所述中心机房下发的与所述第一前端机房对应的第一数据路由路径,包括:通过所述交换机接收所述中心机房下发的与所述第一前端机房对应的第一数据路由路径,基于所述策略路由配置确定所述第一数据路由路径对应的控制信令中的预设字段为预设值时,将所述第一数据路由路径转发至所述第一前端机房中的业务接口进程;通过所述业务接口进程接收所述第一数据路由路径。在所述通过所述业务接口进程接收所述第一数据路由路径之后,还包括:通过所述业务接口进程基于预设路由协议向所述交换机宣告所述第一数据路由路径中的终点机房的第一地址信息,用于通知所述交换机将发往至所述第一数据路由路径中的终点机房的第一原始数据包转发给所述业务接口进程;所述根据所述第一数据路由路径将对应的数据包发送至相应的终点机房,包括:通过所述业务接口进程根据所述第一数据路由路径将对应的数据包发送至相应的终点机房。这样设置的好处在于,交换机采用策略路由配置,业务接口进程基于预设路由协议向交换机宣告终点机房的地址信息,交换机可以将发往至终点机房的原始数据包交由业务接口进程处理,可实现业务无感知的接入方式,业务接入本发明实施例提供的通信系统时,不需要做匹配修改,提升通信系统的通用性,节约业务方成本。

  可选的,所述交换机可以是核心交换机。一般的,路由器或核心交换机可以根据IP包的目的地址来进行转发,但策略路由(Policy-Based Routing,PBR)可以实现根据IP包的其他属性,比如源IP地址、服务类型(Type of Service,TOS)或包长度等来进行转发。预设字段例如可以是TOS字段,预设值可以是预先协商的用于表示将数据或信令转发至业务接口进程的值。预设路由协议可以是用于向交换机更新路由信息的协议,例如可以是边界网关协议(Border Gateway Protocol,BGP)或链路状态路由协议(Open Shortest PathFirst,OSPF)等。

  可选的,当所述通信系统中还包括中心代理机房时,所述方法还包括:向所述中心代理机房发送网络质量探测信息,用于指示所述中心代理机房向所述中心机房转发所接收到的网络质量探测信息。

  可选的,当所述通信系统中还包括中心代理机房时,所述方法还包括:接收所述中心代理机房发送的与所述第一前端机房对应的第一数据路由路径。可选的,若成功接收到所述中心机房下发的第一数据路由路径,则按照中心机房下发的第一数据路由路径将对应的数据包发送至相应的终点机房,若未成功接收到所述中心机房下发的第一数据路由路径,则按照中心代理机房发送的第一数据路由路径将对应的数据包发送至相应的终点机房。

  图5为本发明实施例提供的一种数据包路由方法的流程示意图,该方法可应用于跨机房的通信系统中的一个前端机房(记为第一前端机房),该通信系统中还包括中心机房、中心代理机房和多个其他前端机房。

  示例性的,该方法可包括:

  步骤501、向中心机房上报网络质量探测信息以及将网络质量探测信息发送给中心代理机房,用于指示中心机房根据接收到的第一前端机房上报的网络质量探测信息和其他前端机房上报的网络质量探测信息确定起点机房到终点机房的数据路由路径。

  其中,网络质量探测信息包括前端机房探测到的本机房到其他机房的网络质量信息,起点机房包括第一前端机房,数据路由路径对应的网络质量优于起点机房到终点机房的网络质量。中心代理机房在接收到第一前端机房发送的网络质量探测信息后,会转发给中心机房。

  步骤502、通过核心交换机接收中心机房下发的与第一前端机房对应的第一数据路由路径和第一上行信令路由路径。

  可选的,第一数据路由路径和第一上行信令路由路径可包含于同一条控制信令中实现同时下发,也可包含于不同的控制信令中实现分别下发。第一前端机房中,通过核心交换机来接收中心机房下发的控制信令。

  步骤503、通过核心交换机基于策略路由配置确定第一数据路由路径对应的控制信令中的预设字段为预设值时,将第一数据路由路径转发至第一前端机房中的业务接口进程。

  其中,策略路由配置具体可以是PBR配置。

  步骤504、通过业务接口进程接收第一数据路由路径,基于预设路由协议向核心交换机宣告第一数据路由路径中的终点机房的第一地址信息,用于通知核心交换机将发往至第一数据路由路径中的终点机房的第一原始数据包转发给业务接口进程。

  示例性的,预设路由协议可以是BGP。第一前端机房中的服务器在生成需要发送到某个机房(或可理解为发送到该机房的业务接口进程)的数据包时,会统一发送至核心交换机,而业务接口进程已向核心交换机宣告了由自己来处理第一原始数据包的发送,因此,核心交换机会将原始数据包转发至业务接口进程。

  步骤505、通过业务接口进程获取核心交换机发送的第一数据路由路径中的终点机房对应的第一原始数据包。

  步骤506、通过业务接口进程将第一原始数据包和第一数据路由路径的相关信息封装至基于预设通信协议的第一数据包的负载中。

  其中,第一数据路由路径的相关信息中包括第一数据路由路径中的终点机房的第一地址信息,具体可以是终点机房中业务接口进程的地址信息。

  可选的,当检测到第一原始数据包的大小大于第一预设数值时,可将所第一原始数据包的原始负载拆分为至少两个原始子负载。为了便于说明,下面以将IP大包拆分为两个IP小包为例进行说明,图6为本发明实施例提供的一种拆包流程示意图,图7为本发明实施例提供的一种拆包原理示意图,参考图6,拆包流程可包括:

  步骤601、检测到第一原始数据包的大小大于第一预设数值时,将第一原始数据包的原始负载拆分为至少两个原始子负载。

  在第一前端机房(也即源机房)的业务接口进程接收到源IP包时,可以构造新IP包将源IP包放在新IP包的UDP负载里,若判断出新IP包的总大小超过了MTU,可将原IP(源IP包的IP)的负载拆成2部分,第一部分为前800字节,第二部分为扣除前800字节之后的部分。目前,以太网的MTU为1500,如图7所示,假设原始负载为1480字节,若增加了第一数据路由路径的相关信息,则可能会超过1500,因此,拆分成前800字节和后780字节。

  步骤602、针对每个原始子负载,将第一原始数据包的包头和当前原始子负载封装成对应的分片包。

  其中,第一个分片包设置有分片标识(MF位),第二个分片包设置有分片偏移量(100)。示例性的,源IP包的包头为真正IP头,第一个分片包的包头为IP1头,第二个分片包的包头为IP2头,IP1头、IP2头和真正IP头相同,也即保持IP五元组不变。其中,IP五元组指IP源地址和目的地址,TCP/UDP的源端口和目的端口以及IP的传输协议这五个量组成的一个集合,网络传输中一般使用这五元组唯一标识一个会话。这样可以让入口模块(可理解为业务接口进程中负责添加第一数据路由路径的相关信息的模块)等同于收到2个IP分片包,对这两个分片包分别处理。

  步骤603、对于每个分片包,将当前分片包和第一数据路由路径的相关信息封装至对应的基于预设通信协议的第一数据分包的负载中,其中,第一数据分包的数量与分片包的数量一致。

  如图7所示,将两个分片IP包添加上新IP头,设置不分片标识,将分片包和第一数据路由路径的相关信息(如图中所示的UDP)作为第一数据分包的负载,封装得到第一数据分包。其中,新IP头可以根据终点机房的第一地址信息设置(或者,当存在多个中转机房时,可以根据下一个中转机房的第二地址信息设置)。

  步骤507、通过业务接口进程根据第一数据路由路径确定中转机房的第二地址信息,根据第二地址信息将第一数据包发送至中转机房,用于指示中转机房根据第一地址信息将第一原始数据包转发至相应的终点机房。

  示例性的,若如前文所述进行了分包操作,则此时可根据第二地址信息将第一数据分包发送至中转机房。

  如图7所示,终点机房的业务接口进程收到两个数据分包后,解封装取出其中的分片包,发送给最终目的服务器,最终目的服务器收到两个分片包后,可以根据IP1头和IP2头将这两个分片包重新组装为一个IP包,即得到源IP包。

  步骤508、在检测到网络质量探测信息上报事件被触发时,按照第一上行信令路由路径向中心机房发送网络质量探测信息,同时将网络质量探测信息发送给中心代理机房。

  示例性的,在检测到需要再次上报网络质量探测信息时,可以采用之前接收到的第一上行信令路由路径向中心机房上报网络质量探测信息,也提高中心机房接收成功率,同时还将网络质量探测信息发送给中心代理机房,增强可靠性。

  本发明实施例提供的数据包路由方法,在跨机房的通信系统中设置中心机房、中心代理机房和多个前端机房,前端机房和中心代理机房之间的信令交互是双份数据并且可通过不同路径发送,增强稳定性和可靠性,前端机房向中心机房上报网络质量探测信息,由中心机房根据多个前端机房对应的网络质量探测信息确定起点机房到终点机房的数据路由路径以及上行信令路由路径,路由路径对应的网络质量优于起点机房到终点机房的网络质量,前端机房接收中心机房下发的数据路由路径,在需要进行数据包发送时,该前端机房将原始数据包和数据路由路径相关信息封装到新的数据包中,发往相应的终点机房,当预计封装后的新数据包的尺寸过大时,还可进行分包操作,在源业务接口进程把IP大包分解成两个IP分片包,以便在终点机房的业务接口进程解封装后不需要对IP分片包进行重组处理,而是直接透传这些IP分片包给真正的最终目的服务器,由最终目的服务器来进行IP分片包的重组,避免了目的机房的业务接口进行IP分片包重组的性能消耗,大大提升了处理大包的并发性能,并且保证了同一IP包在分片传输的情况下保持IP五元组相同,避免乱序等问题,增强了传输可靠性。通过采用上述技术方案,前端机房在进行数据包发送时,所依据的数据包路由路径由中心机房根据各前端机房之间的网络质量信息来规划得到,可改善数据包发送过程中路径的网络质量,提高数据包被成功接收的概率。

  本发明实施例中的跨机房的通信系统可应用于企业在全球各地部署的多个机房间IP互联通信的业务场景,该通信系统可通过采用结合BGP和PBR的方式在机房服务器中实现让核心交换机把业务包等数据包转发给同机房的业务接口进程,实现业务无感知的接入方式,也即使得该通信系统成为一种上层业务无感知的智能路由系统,让应用业务能不需要额外修改就能方便接入此智能路由系统,避免在发生网络故障的机房之间直接通信,而是能智能绕道其他网络质量好的路径机房,保障机房之间的可靠通信。

  示例性的,系统中可包含两种类型的进程模块,第一种类型是中心控制进程Central-Controller和其代理进程CC-Proxy,部署在中心机房,为了进一步保证可靠性,中心控制进程和中心代理进程可分别部署在中心机房和中心代理机房,中心机房和中心代理机房可位于同一个城市,并采用城域网连接,网络通信认为是可靠的。第二种类型是前端进程,部署在每个机房(前端机房),包括探测进程pkgloss、中继转发进程Relay和接口业务进程Transparent-Edge。其中,中心控制进程Central-Controller可理解为本系统的总控中心,其他模块或进程可以都向其上报状态,中心控制进程根据各个机房间的网络质量,实时计算出机房间的中继路径,下发给业务接口进程;中心控制代理进程CC-Proxy作为中心控制进程的代理,转发中心控制进程和前端进程之间的信令交互,达到中心控制进程和前端进程之间的信令交互是双份数据并且通过不同路径发送,增加可靠性;探测进程pkgloss用于探测两两机房之间的网络质量(如丢包率和RTT等),上报到中心控制进程;中继转发进程Relay把收到的符合预定格式的包(也即本发明实施例中上文所述的中转机房收到的数据包)转发给下一跳;业务接口进程Transparent-Edge接收同机房的业务包,封装在UDP的负载里,通过多个中继转发进程,最后到达业务包目的机房的业务接口进程,目的机房的业务接口进程解封出原始业务包发给最终目的服务器。

  图8为本发明实施例提供的一种通信系统的交互示意图。如图8所示,中心代理进程收到所有从前端发来的控制信令都转发给中心控制进程,而中心控制进程发给前端的所有控制信令,都复制一份发给中心控制代理进程,中心控制代理进程再转发给对应的前端进程,即通过中心控制代理进程、中心控制进程和前端进程的所有控制信令的通信都是双份的。探测进程可以探测本机房到所有其他机房的网络质量,定时上报给中心控制进程。中心控制进程根据所获取的机房间的网络质量,算出机房间网络质量好的路径。比如上文中示例情况A机房到B机房丢包率10%,但A机房到C机房没有丢包,而且C机房到B机房也没有丢包,则可计算出A机房=》B机房=》C机房这样的中转路径(数据路由路径),然后把这个机房间的中转路径下发给对应机房(A机房)的业务接口进程。业务接口进程根据中转路径,使用BGP向核心交接机宣告需要中转的目的IP地址,让交换机把发往这些目的IP的包,交给自己处理。针对上述示例情况,在机房A的业务接口进程向交换机宣告B机房的业务IPb,A机房的业务接口进程收到目的IP为IPb的包,则把其IP包封装在UDP负载中并添加上最终目的机房(终点机房,也即机房B)的业务接口进程的相关信息(如机房B的业务接口进程的地址信息),发给C机房的中继转发进程,C机房的中继转发进程解析此包,拿出下一跳目的地址是B机房的业务接口进程,转发给B机房的业务接口进程,B机房的业务接口进程收到此包,解封装获得原始IP包,发给同机房的目的业务进程(也即最终的目的服务器的目的业务进程)。

  因为前端进程在全球各个机房,其与中心控制进程所在的机房之间也可能会存在网络故障的时候。这种网络故障情况下,可能出现探测进程无法上报不网络质量或业务接口进程无法接收到中心控制进程下发的中转路径等各种异常情况,导致智能路由系统无法正常为业务提供服务。因此,本发明实施例中,可进一步让中心控制进程与前端进程交互的控制信令也通过自身提供的中继转发路径来解决网络故障时的传输,再加上通过中心控制代理进程转发的另一份控制信令来增加可靠性。

  从中心控制进程发往前端的控制信令(可称为下行控制信令),可以在其IP头的TOS字段设置预设值,由于核心交换机使用PBR配置,收到TOS字段为预设值的IP包,则默认转发给该机房的业务接口进程。业务接口进程收到TOS字段为预设值的IP包,也同样把其封装在UDP负载中并添加上最终目的机房业务接口进程等相关信息,然后通过中继转发进程,最终到达各个机房的前端进程。

  图9为本发明实施例提供的一种下行控制信令传输过程示意图,如图9所示,下行控制信令对应的下行信令路由路径为机房1至机房2再到机房4(数据路由路径的起点机房)。机房1的中心控制进程将控制信令发送给机房n的中心控制代理进程,中心控制代理进程将控制信令转发给机房4的前端进程,而机房1的中心控制进程将带预设值TOS的控制信令发送给机房1的核心交换机,机房1的核心交换机将控制信令转发给机房1的业务接口进程,再由机房1的业务接口进程将封装在UDP的控制信令发送给机房2的中继转发进程,由机房2的中继转发进程将封装的控制信令转发给机房4的业务接口进程,再由机房4的业务接口进程将解封装后的控制信令发送给机房4的前端进程。可见,中心控制进程发往前端的控制信令是走不同路径的双份包,可保证控制信令传输的可靠性。

  从各个机房的前端进程到中心控制进程的通信,也即从机房的前端进程发往中心控制进程的控制信令(可称为上行控制信令),通过该机房的业务接口进程向核心交换机宣告中心控制进程所在服务器IP的方式,实现在网络有故障的时候能绕其他机房到达中心控制进程所在机房。

  图10为本发明实施例提供的一种上行控制信令传输过程示意图,如图10所示,上行控制信令对应的上行信令路由路径为机房4(需要上报网络质量探测信息的前端机房)至机房2再到机房1。机房4的前端进程将控制信令发送给机房n的中心控制代理进程,由机房n的中心控制代理进程转发给机房1的中心控制进程,同时,机房4的前端进程将目的IP为中心控制进程的控制信令发送给机房4的核心交换机,由机房4的核心交换机转发给机房4的业务接口进程,机房4的业务接口进程将封装在UDP的控制信令发送给机房2的中继转发进程,由机房2的中继转发进程转发给机房1的业务接口进程,由机房1的业务接口进程将解封装后的控制信令发送给机房1的中心控制进程。可见,从前端到中心控制进程的控制信令是走不同路径的双份包,可保证控制信令传输的可靠性。

  图11为本发明实施例提供的一种数据包路由装置的结构框图,该装置可由软件和/或硬件实现,一般可集成在跨机房的通信系统中的中心机房的如服务器等机房设备中,可通过执行数据包路由方法来进行数据包路由。如图11所示,该装置包括:

  探测信息获取模块1101,用于获取前端机房发送的网络质量探测信息,其中,所述网络质量探测信息包括前端机房探测到的本机房到其他机房的网络质量信息;

  数据路由路径确定模块1102,用于根据多个前端机房对应的网络质量探测信息确定起点机房到终点机房的数据路由路径,其中,所述起点机房和所述终点机房包括前端机房,所述数据路由路径对应的网络质量优于起点机房到终点机房的网络质量;

  数据路由路径下发模块1103,用于将所述数据路由路径下发至对应的起点机房,用于指示所述起点机房按照所述数据路由路径将对应的数据包发送至相应的终点机房。

  本发明实施例中提供的数据包路由装置,在跨机房的通信系统中设置中心机房和多个前端机房,中心机房获取前端机房发送的网络质量探测信息,其中,网络质量探测信息包括前端机房探测到的本机房到其他机房的网络质量信息,根据多个前端机房对应的网络质量探测信息确定起点机房到终点机房的数据路由路径,数据路由路径对应的网络质量优于起点机房到终点机房的网络质量,将数据路由路径下发至对应的起点机房,起点机房按照数据路由路径将对应的数据包发送至相应的终点机房。通过采用上述技术方案,中心机房可以根据各前端机房之间的网络质量信息来规划数据包的路由路径,并将规划出的网络质量优于起点机房直接发送至终点机房的路由路径下发到前端机房,指导前端机房按照该路由路径进行数据包的发送,可改善数据包发送过程中路径的网络质量,提高数据包被成功接收的概率。

  图12为本发明实施例提供的一种数据包路由装置的结构框图,该装置可由软件和/或硬件实现,一般可集成在跨机房的通信系统中的第一前端机房的如服务器等机房设备中,可通过执行数据包路由方法来进行数据包路由。如图12所示,该装置包括:

  探测信息发送模块1201,用于向所述中心机房上报网络质量探测信息,用于指示所述中心机房根据所述第一前端机房上报的网络质量探测信息和其他前端机房上报的网络质量探测信息确定起点机房到终点机房的数据路由路径,其中,所述网络质量探测信息包括前端机房探测到的本机房到其他机房的网络质量信息,所述起点机房包括所述第一前端机房,所述数据路由路径对应的网络质量优于起点机房到终点机房的网络质量;

  数据路由路径接收模块1202,用于接收所述中心机房下发的与所述第一前端机房对应的第一数据路由路径;

  数据包发送模块1203,用于根据所述第一数据路由路径将对应的数据包发送至相应的终点机房。

  本发明实施例中提供的数据包路由装置,在跨机房的通信系统中设置中心机房和多个前端机房,前端机房向中心机房上报网络质量探测信息,由中心机房根据多个前端机房对应的网络质量探测信息确定起点机房到终点机房的数据路由路径,数据路由路径对应的网络质量优于起点机房到终点机房的网络质量,作为起点机房的前端机房接收中心机房下发的数据路由路径,在需要进行数据包发送时,该前端机房按照数据路由路径将对应的数据包发送至相应的终点机房。通过采用上述技术方案,前端机房在进行数据包发送时,所依据的数据包路由路径由中心机房根据各前端机房之间的网络质量信息来规划得到,可改善数据包发送过程中路径的网络质量,提高数据包被成功接收的概率。

  本发明实施例提供了一种计算机设备,该计算机设备中可集成本发明实施例提供的数据包路由装置。图13为本发明实施例提供的一种计算机设备的结构框图。计算机设备1300包括存储器1301、处理器1302及存储在存储器1301上并可在处理器1302上运行的计算机程序,所述处理器1302执行所述计算机程序时实现本发明实施例提供的数据包路由方法。

  图14为本发明实施例提供的一种跨机房的通信系统的结构框图,所述通信系统中包括中心机房1401和多个前端机房1402,所述中心机房1401中包含至少一个应用于中心机房的机房设备,所述多个前端机房1402中的每个机房中包含至少一个应用于前端机房的机房设备。可选的,该通信系统中还可包括一个中心代理机房1403。

  本发明实施例提供一种包含计算机可执行指令的存储介质,计算机可执行指令在由计算机处理器执行时用于执行本发明实施例提供的数据包路由方法。

  上述实施例中提供的数据包路由装置、设备、系统以及存储介质可执行本发明相应实施例所提供的数据包路由方法,具备执行该方法相应的功能模块和有益效果。未在上述实施例中详尽描述的技术细节,可参见本发明相应实施例所提供的数据包路由方法。

  注意,上述仅为本发明的较佳实施例。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由权利要求范围决定。

《数据包路由方法、装置、设备、系统及存储介质.doc》
将本文的Word文档下载到电脑,方便收藏和打印
推荐度:
点击下载文档

文档为doc格式(或pdf格式)