CN104767682A - 路由方法和系统以及分发路由信息的方法和装置 - Google Patents

路由方法和系统以及分发路由信息的方法和装置 Download PDF

Info

Publication number
CN104767682A
CN104767682A CN201410008919.5A CN201410008919A CN104767682A CN 104767682 A CN104767682 A CN 104767682A CN 201410008919 A CN201410008919 A CN 201410008919A CN 104767682 A CN104767682 A CN 104767682A
Authority
CN
China
Prior art keywords
node
routing iinformation
hop
acceleration
routing
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.)
Granted
Application number
CN201410008919.5A
Other languages
English (en)
Other versions
CN104767682B (zh
Inventor
刘贤彬
车九洲
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent Technology Shenzhen Co Ltd
Tencent Cloud Computing Beijing Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN201410008919.5A priority Critical patent/CN104767682B/zh
Priority to PCT/CN2014/094816 priority patent/WO2015103926A1/en
Publication of CN104767682A publication Critical patent/CN104767682A/zh
Priority to US15/176,032 priority patent/US9634923B2/en
Application granted granted Critical
Publication of CN104767682B publication Critical patent/CN104767682B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/64Hybrid switching systems
    • H04L12/6418Hybrid transport
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/02Topology update or discovery
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/12Shortest path evaluation
    • H04L45/122Shortest path evaluation by minimising distances, e.g. by selecting a route with minimum of number of hops
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/02Topology update or discovery
    • H04L45/036Updating the topology between route computation elements, e.g. between OpenFlow controllers
    • H04L45/037Routes obligatorily traversing service-related nodes

Abstract

一种路由方法,包括:路由计算节点接收加速节点上传的其与其他加速节点或业务节点之间的网络质量参数,根据所述网络质量参数生成路由信息;路由分发节点由所述路由计算节点拉取所述路由信息,并将其分发给相应的加速节点;加速节点接收业务数据,获取所述业务数据对应的业务节点和作为起始节点的加速节点,查找与该起始节点和业务节点对应的路由信息,根据查找到的路由信息将所述业务数据逐跳转发至所述业务节点。此外,还提供了一种路由系统以及分发路由信息的方法及装置。上述路由方法和系统以及分发路由信息的方法和装置能够提升数据传输速度。

Description

路由方法和系统以及分发路由信息的方法和装置
技术领域
本发明涉及网络技术领域,特别是涉及一种路由方法和系统以及分发路由信息的方法和装置。
背景技术
大型互联网应用通常在多个地理区域设立有分布式的业务节点,用于处理其辖区内的终端设备发起的业务请求,而当两个不同的辖区之内终端设备需要进行交互时(例如即时通信应用、社交网络应用和网络游戏应用),则终端设备各自对应的业务节点之间需要进行通信。
为了提高业务节点之间的通信质量,通常在业务节点设立多个加速节点。加速节点用于在业务节点之间转发数据,当互联网应用较庞大,业务节点较多时,业务节点发送的数据需要通过多个加速节点依次转发才能到达目的地,因此,加速节点需要将数据逐跳转发给业务节点。
然而,现有的加速节点通常选择固定的加速节点作为其转发数据的下一跳地址,即加速节点选择下一跳加速节点的路由信息为预先设置的固定值,使得在加速节点之间的网络状况恶化时(例如带宽耗尽、线路损坏等情况),加速节点用于选择下一跳加速节点的路由信息不能得到即时更新,仍需要通过使用网络状况较差的链路转发数据,从而导致数据传输速度较慢。
发明内容
基于此,有必要提供一种能够提升数据传输速度的路由方法。
一种路由方法,包括:
路由计算节点接收加速节点上传的其与其他加速节点或业务节点之间的网络质量参数,根据所述网络质量参数生成路由信息;
路由分发节点由所述路由计算节点拉取所述路由信息,并将其分发给相应的加速节点;
加速节点接收业务数据,获取所述业务数据对应的业务节点和作为起始节点的加速节点,查找与该起始节点和业务节点对应的路由信息,根据查找到的路由信息将所述业务数据逐跳转发至所述业务节点。
此外,还有必要提供一种能够提升数据传输速度的路由系统。
一种路由系统,包括路由计算节点、路由分发节点、加速节点和业务节点,其中:
路由计算节点用于接收加速节点上传的其与其他加速节点或业务节点之间的网络质量参数,根据所述网络质量参数生成路由信息;
路由分发节点用于由所述路由计算节点拉取所述路由信息,并将其分发给相应的加速节点;
加速节点用于接收业务数据,获取所述业务数据对应的业务节点和作为起始节点的加速节点,查找与该起始节点和业务节点对应的路由信息,根据查找到的路由信息将所述业务数据逐跳转发至所述业务节点。
此外,还有必要提供一种能够提升数据传输速度的分发路由信息的方法。
一种分发路由信息的方法,包括:
接收加速节点上传的其与其他加速节点或业务节点之间的网络质量参数;
根据所述网络质量参数生成路由信息:在所述加速节点中选取起始节点,在所述业务节点中遍历选取目标节点,根据所述网络质量参数在所述加速节点中选取连接所述起始节点和目标节点的中间跳节点,并生成由所述起始节点经由所述中间跳节点转发至所述目标节点的路由信息;
将所述路由信息分发给所述起始节点和所述中间跳节点。
此外,还有必要提供一种能够提升数据传输速度的分发路由信息的装置。
一种分发路由信息的装置,包括:
网络质量参数接收模块,用于接收加速节点上传的其与其他加速节点或业务节点之间的网络质量参数;
路由信息计算模块,用于根据所述网络质量参数生成路由信息:在所述加速节点中选取起始节点,在所述业务节点中遍历选取目标节点,根据所述网络质量参数在所述加速节点中选取连接所述起始节点和目标节点的中间跳节点,并生成由所述起始节点经由所述中间跳节点转发至所述目标节点的路由信息;
路由信息分发模块,用于将所述路由信息分发给所述起始节点和所述中间跳节点。
上述路由方法和系统以及分发路由信息的方法及系统中,可先由各个加速节点各自采集与其他加速节点或业务节点的网络质量参数,再由路由计算节点根据网络质量参数生成全局的到业务节点数据传输速度最快的路由信息,然后由路由分发节点将其发送给相应的加速节点,加速节点即可根据该生成的全局的路由信息选择下一跳节点来转发接收到的业务数据。与传统技术相比,根据采集的网络质量参数生成的路由信息比传统技术中固定的路由信息更加适应多变的网络环境,可在某条链路出现故障或加速节点负载较大时,生成到业务节点数据传输速度更快的路由信息,从而提高了数据传输速度。
附图说明
图1为一个实施例中路由方法的流程图;
图2为一个实施例中路由系统的拓扑结构示意图;
图3为另一个实施例中路由系统的拓扑结构示意图;
图4为一个实施例中加速节点和业务节点的对应关系图;
图5为一个实施例中下路由分发节点下发的路由信息的内容示意图;
图6为一个实施例中分发路由信息的方法的流程图;
图7为一个实施例中分发路由信息的装置的结构示意图;
图8为一个实施例中运行分发路由信息的方法的服务器运行环境图。
具体实施方式
在一个实施例中,如图1所示,一种路由方法,该方法的运行可依赖于计算机程序,该计算机程序可运行于基于冯诺依曼体系的计算机系统之上。
如图2和图3所示,图2和图3分别展示了可运行上述路由方法的路由系统的应用场景实例。
在图2展示的网络拓扑结构中,加速节点10与路由计算节点20和路由分发节点30连接,路由计算节点20可与一个或一个以上的路由分发节点30连接,业务节点40可与部分或全部加速节点10连接。加速节点10基于具有路由功能的网络设备或具有路由功能的计算机系统,业务节点40可以是应用服务器或存储服务器,可对业务数据进行相应的处理。
在图3中,调度节点50实现了路由计算节点20和路由分发节点30的全部功能,可视为路由计算节点20和路由分发节点30构成的子系统。也就是说,路由计算节点20和路由分发节点30可基于同一服务器实体或同一服务器集群实体。
在本实施例中,该方法包括:
步骤S102,路由计算节点接收加速节点上传的其与其他加速节点或业务节点之间的网络质量参数,根据所述网络质量参数生成路由信息。
如图2所示,路由计算节点可定时向与其连接的所有加速节点发送网络质量参数探测指令,某个加速节点接收到该网络质量参数探测指令后,即可向所有加速节点以及业务节点发起ping指令(加速节点之间会互相发送ping指令,业务节点只会接收到加速节点发送的ping指令),并根据ping指令得到该加速节点与其他加速节点之间的以及与业务节点之间的网络质量参数,例如延时和丢包率等参数,然后将其上传路由计算节点。
图2所示的路由系统中的路由加速节点可接收所有加速节点各自上传的其与其他加速节点之间以及与业务节点之间的网络质量参数,并根据该网络质量参数生成路由信息。在本实施例中,路由计算节点可每隔10分钟向与其连接的所有加速节点发送网络质量参数探测指令,即路由计算节点可每隔10分钟根据探测到的网络质量参数重新计算路由信息。
在本实施例中,路由计算节点根据网络质量参数生成路由信息的步骤包括:
在加速节点中选取起始节点,在业务节点中遍历选取目标节点,根据网络质量参数在加速节点中选取连接起始节点和目标节点的中间跳节点,并生成由起始节点经由中间跳节点转发至所述目标节点的路由信息。
在本实施例中,可遍历加速节点,将每个遍历到的加速节点作为起始节点,同时遍历业务节点,将每个遍历到的业务节点作为目标节点,则每个起始节点到每个目标节点之间的链路的条数即为起始节点的个数与目标节点的个数的乘积。
如表1所示,表1展示了根据网络质量参数在加速节点中选取了起始节点和目标节点之间的中间跳节点后生成的与起始节点和目标节点对应的路由信息。
表1
起始节点 目标节点 路由信息
S1 D1 S1-S2-S3-D1
S1 D2 S1-S3-S4-D2
S1 D3 S1-S2-S4-D3
S2 D1 S2-S1-D1
…… …… ……
S4 D3 S4-D3
需要说明的是,表1仅用于展示路由信息中包含的起始节点与目标节点之间中间跳节点的节点信息以及由起始节点通过中间跳节点转发业务数据至目标节点的转发顺序信息,实际产品中并不需要与表1完全相同的数据表或映射表。
例如,如表1所示,路由信息S1-S2-S3-D1中,S1即为起始节点的节点标识、D1即为目标节点的节点标识、S2和S3即为根据网络质量参数选取的在S1和D1之间转发业务数据的中间跳节点的节点标识。需要说明的是,起始节点、目标节点和中间跳节点的节点标识可以是单一的网络地址,也可以是对应多个网络地址的标识信息。在一个实施例中,节点标识可以是C段IP地址,例如,192.168.1.x,即表示192.168.1.0至192.168.1.255之间的所有IP地址。在另一个实施例中,节点标识可以是字符串标识,而预设的地址服务器上可存储该字符串标识对应的网络地址的集合,可通过该地址服务器查询节点标识对应的网络地址的集合。
如图4所示,若路由系统中预先设置有M个加速节点,而业务节点有N个,则需要生成M×N条由起始节点到目标节点的路由信息。也就是说,可生成每个起始节点到每个目标节点的路由信息。
在其他实施例中,也可在加速节点中选取部分加速节点作为起始节点。也就是说,预先设置的加速节点中,可设置部分加速节点在拓扑结构上直接与业务节点或用户终端直接连接,接收其上传的业务数据,而设置另一部分加速节点在拓扑结构上仅与加速节点连接作为中间跳节点。需要说明的是,若选取的起始节点的个数为O,而业务节点的个数为P,则仍然需要生成O×P条由起始节点到目标节点的路由信息。
在本实施例中,如前所述,网络质量参数可包括延时和/或丢包率。根据网络质量参数生成路由信息的步骤还包括:获取加速节点对应的额定负载信息和/或带宽信息;根据加速节点与其他加速节点或业务节点之间的延时和/或丢包率以及加速节点对应的额定负载信息和/或带宽信息生成路由信息。
加速节点的额定负载信息和带宽信息可在设置该加速节点时写入配置文件或配置服务器中,路由计算节点可通过读取配置文件或访问配置服务器进行获取。也就是说,可以探测到的加速节点与其他加速节点或业务节点之间的延时和丢包率以及加速节点本身的额定负载信息和带宽信息作为参考向量在加速节点中选取中间跳节点。
在本实施例中,可通过将网络质量参数与阈值比对从而对加速节点进行过滤的方式和通过对网络质量参数进行加权比较的方式选取中间跳节点。
例如,若如果发现加速节点A到到加速节点B之间的丢包率或者延时超过阈值,则加速节点B不会出现在加速节点A到目标节点的链路中(即加速节点B被过滤掉);若两个加速节点之间的丢包率或者延时低于阈值,则根据不同等级赋予两个加速节点之间的链路不同的加权值,丢包率越低,延时越小,则赋予的加权值越大,在选取加速节点A到加速节点C之间的链路时,可选取A到B,A到C以及A到B再到C三条链路中加权值最大的一条路径即可。同理,对机器负载以及带宽指标也可以按照以上丢包率和延时同样处理,最终得到加速节点之间总的加权值,然后根据加权值选取中间跳节点。
步骤S104,路由分发节点由路由计算节点拉取路由信息,并将其分发给相应的加速节点。
在本实施例中,在图2对应的应用场景中,路由分发节点可定时从路由计算节点拉取路由信息,并执行:
获取拉取的路由信息中包含的起始节点、目标节点和中间跳节点的节点标识;根据拉取的路由信息在中间跳节点的节点标识中选取与起始节点和中间跳节点对应的下一跳节点的节点标识;将起始节点、目标节点和下一跳节点的节点标识分发给相应的起始节点和中间跳节点。
如前述表1中,路由信息S1-S2-S3-D1中,S1即为起始节点的节点标识,D1即为目标节点的节点标识,S2和S3即为中间跳节点的节点标识。路由分发节点需要将路由信息分发给起始节点S1和中间跳节点S2和S3。对于起始节点S1,路由分发节点可在路由信息S1-S2-S3-D1中获取到其对应的下一跳节点为中间跳节点S2,如图5所示,即可将S1、D1和S2发送给起始节点S1;对于中间跳节点S2,路由分发节点可在路由信息S1-S2-S3-D1中获取到其对应的下一跳节点为中间跳节点S3,如图5所示,路由分发节点即可将S1、D1和S3发送给中间跳节点S2;对于中间跳节点S3,路由分发节点可在路由信息S1-S2-S3-D1中获取到其对应的下一跳节点为空(即下一跳业务数据的转发不会通过加速节点转发),如图5所示,路由分发节点即可将S1、D1发送给中间跳节点S3。
在其他实施例中,路由分发节点也可将完整的路由信息分发给该路由信息经过的每个加速节点之上,加速节点可根据完整的路由信息自行查询下一跳节点。
进一步的,起始节点、目标节点和中间跳节点的节点标识分别各自对应至少一个节点地址。
路由分发节点将所述起始节点、目标节点和下一跳节点的节点标识分发给相应的所述起始节点和中间跳节点的步骤包括:
路由分发节点获取起始节点和中间跳节点的节点标识分别各自对应的节点地址;将起始节点、目标节点和下一跳节点的节点标识下发至起始节点和中间跳节点的节点标识分别各自对应的节点地址。
如前所述,作为起始节点和中间跳节点的每个加速节点可各自对应多个网络地址。例如,一个IP段的网络地址,该IP段的网络地址对应一个加速中心机房,该加速中心机房可整体视为一个加速节点,该加速中心机房中设置有多台服务器用于转发,每台服务器可具有相应的IP地址。
路由分发节点在向加速节点下发路由信息时,可获取接收路由信息的加速节点的节点标识对应的多个IP地址,并将路由信息下发至该多个IP地址。例如,若某个加速中心机房中由多台服务器,且该多台服务器占用了192.168.3.0至192.168.3.255之间的IP网段,则可将路由信息下发至192.168.3.0至192.168.3.255之间所有服务器。使得在该加速中心机房中的某台服务器出现故障时,其他服务器仍然能够根据该路由信息执行转发业务数据的任务,从而提高了可靠性,提升了抗灾害能力。
步骤S106,加速节点接收业务数据,获取业务数据对应的业务节点和作为起始节点的加速节点,查找与该起始节点和业务节点对应的路由信息,根据查找到的路由信息将业务数据逐跳转发至业务节点。
业务数据即为最终交由业务节点并由业务节点进行处理的数据。在本实施例中,业务数据可以是业务节点或终端设备生成,并由业务节点或终端设备发送给加速节点,接收到业务节点或终端设备上传的业务数据的加速节点即为起始节点,转发该业务数据的加速节点即为中间跳节点,该业务数据最终抵达的且最终处理该业务数据的业务节点即为目标节点。
例如,在一个网络游戏应用或社交网络应用对应的应用场景中,用户需要通过管辖各个地理区域的业务服务器交互数据,则A辖区的作为业务节点的网络游戏服务器或社交网络应用服务器向加速节点发送业务数据,经加速节点逐跳转发后抵达B辖区的作为业务节点的网络游戏服务器或社交网络应用服务器。
再例如,在一个网络硬盘应用对应的应用场景中,用户可通过终端设备直接向加速节点上传需要网络存储的业务数据,该业务数据经加速节点逐跳转发后抵达作为业务节点的网络硬盘服务器,该网络硬盘服务器即可将该业务数据存储。
在本实施例中,加速节点接收到业务数据(该加速节点可以是起始节点也可以是中间跳节点,该业务数据可以是业务节点或终端设备上传的业务数据,也可以是上一跳加速节点转发的业务数据)的数据报文之后,可通过提取该数据报文中的源地址和目标地址获取对应的业务节点和作为起始节点的加速节点。如前例中,可将通过在地址服务器中查询该源地址对应的节点标识获取起始节点,查询该目标地址对应的节点标识获取对应的目标节点。
加速节点获取到业务数据对应的起始节点和目标节点后,即可在接收到的路由分发节点下发的路由信息中查找相应的路由信息。如前例中,如果业务数据对应的起始节点为S1,目标节点为D3,则查找到的相应的路由信息即为链路S1-S2-S4-D3。
而若该加速节点为S1,则其可根据路由信息将业务数据转发至S2;若该加速节点为S2,则其可根据路由信息将业务数据转发至S4;若该加速节点为S4,则其可根据路由信息将业务数据转发至D3。
在本实施例中,如前所述,路由分发节点下发的路由信息为起始节点、目标节点和与接收该路由信息的加速节点对应的下一跳节点的节点标识。则加速节点由业务数据提取到起始节点和作为目标节点业务节点之后,可查找与该起始节点和目标节点对应的下一跳节点,并将业务数据转发给该下一跳节点。
如前例中,对于路由信息S1-S3-S4-D2,路由分发节点下发给加速节点S3的路由信息包括起始节点的节点标识S1,目标节点的节点标识D2,和与加速节点S3对应的下一跳节点的节点标识S4。则加速节点S3接收到S1转发的业务数据后,可根据业务数据获取到起始节点为起始节点的节点标识S1,目标节点的节点标识D2,并根据S1和D2查询得到相应的下一跳节点的节点标识为S4,即可将该业务数据发送给加速节点S4。
进一步的,若下一跳节点未查找到,则将业务数据转发到相应的业务节点。如前例中,对于路由信息S1-S3-S4-D2,路由分发节点下发给加速节点S4的路由信息包括起始节点的节点标识S1,目标节点的节点标识D2,而与加速节点S4对应的下一跳节点的节点标识为空(或NULL等表示空的标识)。则加速节点S4接收到S3转发的业务数据后,可根据业务数据获取到起始节点为起始节点的节点标识S1,目标节点的节点标识D2,但查找到的相应的下一跳节点的节点标识为空(或NULL等表示空的标识),则直接将业务数据转发至目标节点D2。
进一步的,加速节点将业务数据转发至查找到的下一跳节点的步骤还包括:
获取下一跳节点的节点标识,获取节点标识对应的节点地址,在节点地址中选取可连接的节点地址发送业务数据。
如前所述,作为下一跳节点的加速节点可具有多个网络地址。加速节点在向其他加速节点或业务节点转发业务数据时,可根据其对应的节点标识查询其对应的多个网络地址,并筛选出可连接的网络地址(如前所述,由于作为加速节点的加速中心机房中的某些服务器可能由于故障而宕机,因此在向该加速节点发送业务数据时,可通过发送探测包或连接请求包在该加速中心机房的多个网络地址中筛选出没有宕机的服务器的网络地址),使得在加速中心机房中的某些服务器宕机之后,仍然能够完成业务数据的转发任务,从而提高了可靠性,提升了抗灾害能力。
在本实施例中,可在筛选出的网络地址中选取一个网络地址。在其它实施例中,也可对筛选出的网络地址进行群发。
进一步的,加速节点查找与该起始节点和业务节点对应的路由信息的步骤还包括:
若未查找到与业务节点对应的路由信息,则将业务数据丢弃或根据传输层或网络层协议选取下一跳节点。
本实施例所述的路由系统为建立于传输层和网络层之上的处于应用层的路由系统,用于在应用层对数据传输进行加速。若加速节点接收到的数据报文并不是由起始节点发起或是最终转发到业务节点,则该数据报文可能是加速节点和加速节点之间或加速节点和业务节点直接的通信协议的控制信息的数据报文,也可能是网络中其他设备发送的数据报文。对于此类业务数据可将其丢弃,或者根据传输层或网络层协议对获取其对应的下一跳节点的网络地址,然后将其转发。
进一步的,加速节点将业务数据丢弃或根据传输层或网络层协议选取下一跳节点的步骤之后还可包括:
加速节点获取业务节点的节点标识,将其通过路由分发节点上传至路由计算节点。
路由计算节点获取与上传的节点标识对应的业务节点,将其作为目标节点,获取与其对应的网络质量参数,执行根据网络质量参数在加速节点中选取连接起始节点和目标节点的中间跳节点的步骤。
例如,在图2所示的应用场景中,路由系统中包含D1、D2、D3三个业务节点,如果随着业务量的增长,新增了业务节点D4,则D1、D2和D3通过加速节点发送给业务节点D4的业务数据在被加速节点接收时,提取的目标节点D4在路由分发节点下发的路由信息中并没有对应的链路。此时,接收该业务数据的加速节点可根据传输层或网络层协议选择下一跳节点进行转发,并将业务节点D4的节点标识上传给路由分发节点,路由分发节点再将该节点标识上传至路由计算节点(在图3对应的应用场景中即为加速节点将节点标识D4上传给调度节点)。
路由计算节点接收到节点标识D4后,即可向所有加速节点发送网络质量参数探测指令,通知加速节点向D4节点发起ping指令,从而获取与D4节点对应的网络质量参数,并根据该网络质量参数选取起始节点到目标节点D4的路由信息。在路由计算节点定时更新路由信息的实施例中,还可先将节点标识D4缓存,在周期性更新路由信息时,再加入该节点标识D4,将其作为目标节点,从而生成相应的路由信息。
在一个实施例中,加速节点将业务数据转发至查找到的下一跳节点的步骤还包括:为业务数据附加控制信息。
将业务数据转发到业务节点的步骤之前还包括:
移除业务数据附加的控制信息。
也就是说,加速节点在向加速节点转发业务数据时,可为业务数据附加用于记录日志、统计数量或与应用协议有关的控制信息,加速节点在获取到的路由信息中下一跳节点为空时(即将业务数据发送给业务节点之前),可将该附加的控制信息移除。从而可利用现有的路由系统对业务数据的传输进行控制和统计。
在一个实施例中,加速节点还可向路由分发节点持续上传探测包(例如用于检测连接状态的心跳包)。
路由分发节点持续接收加速节点上传的探测包,获取上传超时的加速节点对应的异常节点标识,将其上传至路由计算节点。
路由计算节点查找与该异常节点标识对应的路由信息,并根据网络质量参数更新该查找到的路由信息。
也就是说,加速节点可通过向路由分发节点持续上传心跳包来通知路由分发节点其连接状态,若某个加速节点的心跳包中断或发送超时,则路由分发节点判定该加速节点为异常状态,其节点标识即为异常节点标识,且该加速节点转发业务数据的功能已丧失,则可将该异常节点标识上传至路由计算节点。
路由计算节点可获取查找到的路由信息中包含的起始节点和目标节点,根据网络质量参数在加速节点中选取连接起始节点和目标节点的中间跳节点,并生成由起始节点经由中间跳节点转发至目标节点的路由信息。
如前例中,若异常节点标识为S3,则链路中包含S3的链路如表1所示,包括S1-S2-S3-D1、S1-S3-S4-D2等(即异常节点标识对应路由信息中起始节点或中间跳节点的路由信息)。则相应的,S1至D1、S1至D2等链路的路由信息需要重新计算,重新计算的方式即为,根据网络质量参数在S1和D1之间重新选取中间跳节点生成起始节点为S1、目标节点为D1的路由信息;根据网络质量参数在S1和D2之间重新选取中间跳节点生成起始节点为S1、目标节点为D2的路由信息。
在一个实施例中,路由分发节点还可根据上传的探测包获取与加速节点对应的运行状态信息,获取运行状态信息异常的加速节点的节点标识,将其上传至路由计算节点。
例如,加速节点可在心跳包中附加其自身的实时负载信息和/或可用带宽信息等运行状态信息,若是,实时负载信息大于阈值或可用带宽信息小于阈值,则该加速节点的运行状态信息出现异常,该加速节点的节点标识为异常节点标识,即该加速节点上的业务数据的转发量较大,需要对路由系统中的加速节点的负载进行均衡。此时,路由分发节点即可将该异常节点标识上传至路由计算服务器,路由计算服务器即可获取与该异常节点标识对应的路由信息,并根据网络质量参数更新该路由信息。更新的方式与前述的上传探测包超时的异常节点标识对应的更新路由信息的方式相同,在此不再赘述。
需要说明的是,对于图3对应的应用场景,调度节点40可视为图2对应的应用场景中路由计算节点20和路由分发节点30组成的子系统,图2中路由计算节点20运行的方法和路由分发节点39运行的方法均可基于图3中调度节点40运行,即图3对应的应用场景中,调度节点40同时扮演了路由计算节点20和路由分发节点30的角色,实现了二者的全部功能。
需要进一步说明的是,在路由计算节点20与一个或一个一上的路由分发节点30组成的子系统对应的应用场景中(例如图2),路由分发节点30可对应不同的应用协议,每个路由分发节点30可根据其对应的应用协议的不同而选择性地由所述路由计算节点20拉取路由信息,并根据应用协议的对路由信息进行相应的调整,相比采用单一的调度节点40的应用场景,可适应多种应用协议,即可针对多个不同的应用的业务数据选择合适的路由信息来选择下一跳节点,使得适应性更佳。
在一个实施例中,如图2所示,一种路由系统,包括加速节点10、路由计算节点20、路由分发节点30和业务节点40,其中:
路由计算节点20用于接收加速节点上传的其与其他加速节点或业务节点之间的网络质量参数,根据网络质量参数生成路由信息。
路由分发节点30用于由路由计算节点拉取路由信息,并将其分发给相应的加速节点。
加速节点10用于接收业务数据,获取业务数据对应的业务节点和作为起始节点的加速节点,查找与该起始节点和业务节点对应的路由信息,根据查找到的路由信息将业务数据逐跳转发至业务节点。
在本实施例中,路由计算节点20还用于在加速节点中选取起始节点,在业务节点中遍历选取目标节点,根据网络质量参数在加速节点中选取连接起始节点和目标节点的中间跳节点,并生成由起始节点经由中间跳节点转发至目标节点的路由信息。
在本实施例中,路由分发节点30还用于获取拉取的路由信息中包含的起始节点、目标节点和中间跳节点的节点标识;根据路由信息在中间跳节点的节点标识中选取与起始节点和中间跳节点对应的下一跳节点的节点标识;将起始节点、目标节点和下一跳节点的节点标识分发给相应的起始节点和中间跳节点。
在本实施例中,起始节点、目标节点和中间跳节点的节点标识分别各自对应至少一个节点地址。
路由分发节点30还用于获取起始节点和中间跳节点的节点标识分别各自对应的节点地址;将起始节点、目标节点和下一跳节点的节点标识下发至起始节点和中间跳节点的节点标识分别各自对应的节点地址。
在本实施例中,加速节点10还用于查找与起始节点和作为目标节点的业务节点对应的下一跳节点。
加速节点10还用于将业务数据转发至查找到的下一跳节点,若下一跳节点未查找到,则将业务数据转发至业务节点。
在本实施例中,加速节点10还用于获取下一跳节点的节点标识,获取节点标识对应的节点地址,在节点地址中选取可连接的节点地址发送业务数据。
在本实施例中,加速节点10还用于在未查找到与业务节点对应的路由信息时,将业务数据丢弃或根据传输层或网络层协议选取下一跳节点。
在本实施例中,加速节点10还用于获取未查找到与相应的路由信息的业务节点的节点标识,将其通过路由分发节点上传至路由计算节点;
路由计算节点20还用于获取与上传的节点标识对应的业务节点,将其作为目标节点,获取与其对应的网络质量参数,根据网络质量参数在加速节点中选取连接起始节点和目标节点的中间跳节点。
在本实施例中,加速节点10还用于在将业务数据转发至查找到的下一跳节点之前为业务数据附加控制信息。
加速节点10还用于在将业务数据转发至业务节点之前移除业务数据附加的控制信息。
在一个实施例中,加速节点10还用于向路由分发节点持续上传探测包;
路由分发节点还用于持续接收加速节点上传的探测包,获取上传超时的加速节点对应的异常节点标识,将其上传至路由计算节点;
路由计算节点还用于查找与异常节点标识对应的路由信息,并根据网络质量参数更新查找到的路由信息。
在一个实施例中,加速节点10还用于向路由分发节点持续上传探测包;
路由分发节点30还用于持续接收加速节点上传的探测包,根据上传的探测包获取与加速节点对应的运行状态信息,获取运行状态信息异常的加速节点的节点标识,将其上传至路由计算节点。
路由计算节点20还用于查找异常节点标识对应的路由信息,并根据网络质量参数更新查找到的路由信息。
在一个实施例中,路由计算节点20还用于获取查找到的路由信息中包含的起始节点和目标节点,根据网络质量参数在加速节点中选取连接起始节点和目标节点的中间跳节点,并生成由起始节点经由中间跳节点转发至目标节点的路由信息。
在另一个实施例中,如图3所示,调度节点50实现前述路由计算节点20和路由分发节点30的全部功能,即调度节点50为前述路由计算节点20和路由分发节点30构成的子系统。
在一个实施例中,如图6所示,一种分发路由信息的方法,该方法可基于计算机程序,可运行于基于冯诺依曼体系的计算机系统上,如图2和图3所示,该计算机系统可以是图2中路由计算节点20和路由分发节点30构成的子系统,也可以是图3中的实现前述路由计算节点20和路由分发节点30全部功能的调度节点50。
该方法包括:
步骤S202,接收加速节点上传的其与其他加速节点或业务节点之间的网络质量参数。
步骤S204,根据网络质量参数生成路由信息:在加速节点中选取起始节点,在业务节点中遍历选取目标节点,根据网络质量参数在加速节点中选取连接起始节点和目标节点的中间跳节点,并生成由起始节点经由中间跳节点转发至目标节点的路由信息。
步骤S206,将路由信息分发给起始节点和中间跳节点。
在本实施例中,将路由信息分发给起始节点和中间跳节点的步骤包括:
获取路由信息,获取其包含的起始节点、目标节点和中间跳节点的节点标识;根据路由信息在中间跳节点的节点标识中选取与起始节点和中间跳节点对应的下一跳节点的节点标识;将起始节点、目标节点和下一跳节点的节点标识分发给相应的起始节点和中间跳节点。
在本实施例中,起始节点、目标节点和中间跳节点的节点标识分别各自对应至少一个节点地址;
将起始节点、目标节点和下一跳节点的节点标识分发给相应的起始节点和中间跳节点的步骤包括:
获取起始节点和中间跳节点的节点标识分别各自对应的节点地址;将起始节点、目标节点和下一跳节点的节点标识下发至起始节点和中间跳节点的节点标识分别各自对应的节点地址。
在本实施例中,网络质量参数包括延时和/或丢包率。
根据网络质量参数生成路由信息的步骤还包括:
获取加速节点对应的额定负载信息和/或带宽信息;根据加速节点与其他加速节点或业务节点之间的延时和/或丢包率以及加速节点对应的额定负载信息和/或带宽信息生成路由信息。
在一个实施例中,还可持续接收加速节点上传的探测包,获取上传超时的加速节点对应的异常节点标识,并查找其对应的路由信息,根据网络质量参数更新查找到的路由信息。
在一个实施例中,还可持续接收加速节点上传的探测包,根据上传的探测包获取与加速节点对应的运行状态信息,获取运行状态信息异常的加速节点对应的异常节点标识,并查找其对应的路由信息,根据网络质量参数更新查找到的路由信息。
在一个实施例中,根据网络质量参数更新查找到的路由信息的步骤包括:
获取查找到的路由信息中包含的起始节点和目标节点,根据网络质量参数在加速节点中选取连接起始节点和目标节点的中间跳节点,并生成由起始节点经由中间跳节点转发至目标节点的路由信息。
在本实施例中,还可接收上传的目标网络地址,获取与目标网络地址对应的网络节点,获取路由信息包含的起始节点,选取网络节点为目标节点,执行根据网络质量参数在加速节点中选取连接起始节点和目标节点的中间跳节点的步骤。
在一个实施例中,如图7所示,一种分发路由信息的装置,包括网络质量参数接收模块102、路由信息计算模块104以及路由信息分发模块106,其中:
网络质量参数接收模块102,用于接收加速节点上传的其与其他加速节点或业务节点之间的网络质量参数。
路由信息计算模块104,用于根据网络质量参数生成路由信息:在加速节点中选取起始节点,在业务节点中遍历选取目标节点,根据网络质量参数在加速节点中选取连接起始节点和目标节点的中间跳节点,并生成由起始节点经由中间跳节点转发至目标节点的路由信息。
路由信息分发模块106,用于将路由信息分发给起始节点和中间跳节点。
在本实施例中,路由信息分发模块106还用于获取路由信息,获取其包含的起始节点、目标节点和中间跳节点的节点标识;根据路由信息在中间跳节点的节点标识中选取与起始节点和中间跳节点对应的下一跳节点的节点标识;将起始节点、目标节点和下一跳节点的节点标识分发给相应的起始节点和中间跳节点。
在本实施例中,起始节点、目标节点和中间跳节点的节点标识分别各自对应至少一个节点地址;
在本实施例中,路由信息分发模块106还用于获取起始节点和中间跳节点的节点标识分别各自对应的节点地址;将起始节点、目标节点和下一跳节点的节点标识下发至起始节点和中间跳节点的节点标识分别各自对应的节点地址。
在本实施例中,网络质量参数包括延时和/或丢包率;
在本实施例中,路由信息计算模块104还用于获取加速节点对应的额定负载信息和/或带宽信息;根据加速节点与其他加速节点或业务节点之间的延时和/或丢包率以及加速节点对应的额定负载信息和/或带宽信息生成路由信息。
在一个实施例中,如图7所示,分发路由信息的装置还包括第一异常节点探测模块108,用于持续接收加速节点上传的探测包,获取上传超时的加速节点对应的异常节点标识。
路由计算模块102还用于查找异常节点标识对应的路由信息,根据网络质量参数更新查找到的路由信息。
在一个实施例中,如图7所示,分发路由信息的装置还包括第二异常节点探测模块110,用于持续接收加速节点上传的探测包,根据上传的探测包获取与加速节点对应的运行状态信息,获取运行状态信息异常的加速节点对应的异常节点标识。
在一个实施例中,路由计算模块102还用于获取查找到的路由信息中包含的起始节点和目标节点,根据网络质量参数在加速节点中选取连接起始节点和目标节点的中间跳节点,并生成由起始节点经由中间跳节点转发至目标节点的路由信息。
在一个实施例中,如图7所示,分发路由信息的装置还包括业务节点添加模块112,用于接收上传的目标网络地址,获取与目标网络地址对应的网络节点。
路由信息计算模块102还用于获取路由信息包含的起始节点,选取网络节点为目标节点,根据网络质量参数在加速节点中选取连接起始节点和目标节点的中间跳节点。
上述路由方法和系统以及分发路由信息的方法及系统中,可先由各个加速节点各自采集与其他加速节点或业务节点的网络质量参数,再由路由计算节点根据网络质量参数生成全局的到业务节点数据传输速度最快的路由信息,然后由路由分发节点将其发送给相应的加速节点,加速节点即可根据该生成的全局的路由信息选择下一跳节点来转发接收到的业务数据。与传统技术相比,根据采集的网络质量参数生成的路由信息比传统技术中固定的路由信息更加适应多变的网络环境,可在某条链路出现故障或加速节点负载较大时,生成到业务节点数据传输速度更快的路由信息,从而提高了数据传输速度。
在一个实施例中,如图8所示,提供了一种可运行前述分发路由信息的方法的服务器结构示意图,该服务器结构可应用于图2中的路由计算节点20、路由分发节点30之上或图3中的调度节点50之上。该服务器500可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上中央处理器(centralprocessing units,CPU)522(例如,一个或一个以上处理器)和存储器532,一个或一个以上存储应用程序542或数据544的存储介质530(例如一个或一个以上海量存储设备)。其中,存储器532和存储介质530可以是短暂存储或持久存储。存储在存储介质530的程序可以包括一个或一个以上模块(如前述的网络质量参数接收模块102、路由信息计算模块104即可为图2中的路由计算节点20的存储介质中的程序模块,路由信息分发模块106即可为图2中的路由分发节点30的存储介质中的程序模块,或者前述的网络质量参数接收模块102、路由信息计算模块104和路由信息分发模块106均为图3中调度节点50的存储介质中的程序模块),每个模块可以包括对服务器中的一系列指令操作。更进一步地,中央处理器522可以设置为与存储介质530通信,在服务器500上执行存储介质530中的一系列指令操作。服务器500还可以包括一个或一个以上电源526,一个或一个以上有线或无线网络接口550,一个或一个以上输入输出接口558,和/或,一个或一个以上操作系统541,例如Windows ServerTM,Mac OSXTM,UnixTM,LinuxTM,FreeBSDTM等等。上述图1所示实施例中所述的由服务器所执行的步骤可以基于该图8所示的服务器结构。本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random Access Memory,RAM)等。
以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。

Claims (40)

1.一种路由方法,包括:
路由计算节点接收加速节点上传的其与其他加速节点或业务节点之间的网络质量参数,根据所述网络质量参数生成路由信息;
路由分发节点由所述路由计算节点拉取所述路由信息,并将其分发给相应的加速节点;
加速节点接收业务数据,获取所述业务数据对应的业务节点和作为起始节点的加速节点,查找与该起始节点和业务节点对应的路由信息,根据查找到的路由信息将所述业务数据逐跳转发至所述业务节点。
2.根据权利要求1所述的路由方法,其特征在于,所述路由计算节点根据所述网络质量参数生成路由信息的步骤包括:
在所述加速节点中选取起始节点,在所述业务节点中遍历选取目标节点,根据所述网络质量参数在所述加速节点中选取连接所述起始节点和目标节点的中间跳节点,并生成由所述起始节点经由所述中间跳节点转发至所述目标节点的路由信息。
3.根据权利要求2所述的路由方法,其特征在于,所述路由分发节点将路由信息分发给相应的加速节点的步骤包括:
获取拉取的路由信息中包含的起始节点、目标节点和中间跳节点的节点标识;
根据所述路由信息在所述中间跳节点的节点标识中选取与所述起始节点和中间跳节点对应的下一跳节点的节点标识;
将所述起始节点、目标节点和下一跳节点的节点标识分发给相应的所述起始节点和中间跳节点。
4.根据权利要求3所述的路由方法,其特征在于,所述起始节点、目标节点和中间跳节点的节点标识分别各自对应至少一个节点地址;
所述将所述起始节点、目标节点和下一跳节点的节点标识分发给相应的所述起始节点和中间跳节点的步骤包括:
获取所述起始节点和中间跳节点的节点标识分别各自对应的节点地址;
将所述起始节点、目标节点和下一跳节点的节点标识下发至所述起始节点和中间跳节点的节点标识分别各自对应的节点地址。
5.根据权利要求4所述的路由方法,其特征在于,所述加速节点查找与该起始节点和业务节点对应的路由信息的步骤包括:
所述加速节点查找与所述起始节点和作为目标节点的业务节点对应的下一跳节点;
所述加速节点根据查找到的路由信息将所述业务数据逐跳转发至所述业务节点的步骤为:
所述加速节点将所述业务数据转发至查找到的下一跳节点,若下一跳节点未查找到,则将所述业务数据转发至所述业务节点。
6.根据权利要求5所述的路由方法,其特征在于,所述加速节点将所述业务数据转发至查找到的下一跳节点的步骤还包括:
获取所述下一跳节点的节点标识,获取所述节点标识对应的节点地址,在所述节点地址中选取可连接的节点地址发送所述业务数据。
7.根据权利要求5所述的路由方法,其特征在于,所述加速节点查找与该起始节点和业务节点对应的路由信息的步骤还包括:
若未查找到与所述业务节点对应的路由信息,则将所述业务数据丢弃或根据传输层或网络层协议选取下一跳节点。
8.根据权利要求7所述的路由方法,其特征在于,所述加速节点将所述业务数据丢弃或根据传输层或网络层协议选取下一跳节点的步骤之后还包括:
所述加速节点获取所述业务节点的节点标识,将其通过所述路由分发节点上传至所述路由计算节点;
所述路由计算节点获取与所述上传的节点标识对应的业务节点,将其作为目标节点,获取与其对应的网络质量参数,执行所述根据所述网络质量参数在所述加速节点中选取连接所述起始节点和目标节点的中间跳节点的步骤。
9.根据权利要求5所述的路由方法,其特征在于,所述加速节点将所述业务数据转发至查找到的下一跳节点的步骤之前还包括:
为所述业务数据附加控制信息;
所述将所述业务数据转发至所述业务节点的步骤之前还包括:
移除所述业务数据附加的控制信息。
10.根据权利要求1所述的路由方法,其特征在于,所述方法还包括:
加速节点向所述路由分发节点持续上传探测包;
所述路由分发节点持续接收所述加速节点上传的探测包,获取上传超时的加速节点对应的异常节点标识,将其上传至所述路由计算节点;
所述路由计算节点查找所述异常节点标识对应的路由信息,并根据所述网络质量参数更新查找到的路由信息。
11.根据权利要求1所述的路由方法,其特征在于,所述方法还包括:
加速节点向所述路由分发节点持续上传探测包;
所述路由分发节点持续接收所述加速节点上传的探测包,根据所述上传的探测包获取与所述加速节点对应的运行状态信息,获取所述运行状态信息异常的加速节点对应的异常节点标识,将其上传至所述路由计算节点;
所述路由计算节点查找所述异常节点标识对应的路由信息,并根据所述网络质量参数更新查找到的路由信息。
12.根据权利要求10或11所述的路由方法,其特征在于,所述路由计算节点根据所述网络质量参数更新查找到的路由信息的步骤包括:
获取查找到的路由信息中包含的起始节点和目标节点,根据所述网络质量参数在所述加速节点中选取连接所述起始节点和目标节点的中间跳节点,并生成由所述起始节点经由所述中间跳节点转发至所述目标节点的路由信息。
13.一种路由系统,其特征在于,包括路由计算节点、路由分发节点、加速节点和业务节点,其中:
路由计算节点用于接收加速节点上传的其与其他加速节点或业务节点之间的网络质量参数,根据所述网络质量参数生成路由信息;
路由分发节点用于由所述路由计算节点拉取所述路由信息,并将其分发给相应的加速节点;
加速节点用于接收业务数据,获取所述业务数据对应的业务节点和作为起始节点的加速节点,查找与该起始节点和业务节点对应的路由信息,根据查找到的路由信息将所述业务数据逐跳转发至所述业务节点。
14.根据权利要求13所述的路由系统,其特征在于,所述路由计算节点还用于在所述加速节点中选取起始节点,在所述业务节点中遍历选取目标节点,根据所述网络质量参数在所述加速节点中选取连接所述起始节点和目标节点的中间跳节点,并生成由所述起始节点经由所述中间跳节点转发至所述目标节点的路由信息。
15.根据权利要求14所述的路由系统,其特征在于,所述路由分发节点还用于获取拉取的路由信息中包含的起始节点、目标节点和中间跳节点的节点标识;根据所述路由信息在所述中间跳节点的节点标识中选取与所述起始节点和中间跳节点对应的下一跳节点的节点标识;将所述起始节点、目标节点和下一跳节点的节点标识分发给相应的所述起始节点和中间跳节点。
16.根据权利要求15所述的路由系统,其特征在于,所述起始节点、目标节点和中间跳节点的节点标识分别各自对应至少一个节点地址;
所述路由分发节点还用于获取所述起始节点和中间跳节点的节点标识分别各自对应的节点地址;将所述起始节点、目标节点和下一跳节点的节点标识下发至所述起始节点和中间跳节点的节点标识分别各自对应的节点地址。
17.根据权利要求16所述的路由系统,其特征在于,所述加速节点还用于查找与所述起始节点和作为目标节点的业务节点对应的下一跳节点;
所述加速节点还用于将所述业务数据转发至查找到的下一跳节点,若下一跳节点未查找到,则将所述业务数据转发至所述业务节点。
18.根据权利要求17所述的路由系统,其特征在于,所述加速节点还用于获取所述下一跳节点的节点标识,获取所述节点标识对应的节点地址,在所述节点地址中选取可连接的节点地址发送所述业务数据。
19.根据权利要求17所述的路由方法,其特征在于,所述加速节点还用于在未查找到与所述业务节点对应的路由信息时,将所述业务数据丢弃或根据传输层或网络层协议选取下一跳节点。
20.根据权利要求19所述的路由系统,其特征在于,所述加速节点还用于获取所述未查找到与相应的路由信息的业务节点的节点标识,将其通过所述路由分发节点上传至所述路由计算节点;
所述路由计算节点还用于获取与所述上传的节点标识对应的业务节点,将其作为目标节点,获取与其对应的网络质量参数,根据所述网络质量参数在所述加速节点中选取连接所述起始节点和目标节点的中间跳节点。
21.根据权利要求17所述的路由系统,其特征在于,所述加速节点还用于在将所述业务数据转发至查找到的下一跳节点之前为所述业务数据附加控制信息;
所述加速节点还用于在将所述业务数据转发至所述业务节点之前移除所述业务数据附加的控制信息。
22.根据权利要求13所述的路由方法,其特征在于,所述加速节点还用于向所述路由分发节点持续上传探测包;
所述路由分发节点还用于持续接收所述加速节点上传的探测包,获取上传超时的加速节点对应的异常节点标识,将其上传至所述路由计算节点;
所述路由计算节点还用于查找与所述异常节点标识对应的路由信息,并根据所述网络质量参数更新查找到的路由信息。
23.根据权利要求13所述的路由方法,其特征在于,所述加速节点还用于向所述路由分发节点持续上传探测包;
所述路由分发节点还用于持续接收所述加速节点上传的探测包,根据所述上传的探测包获取与所述加速节点对应的运行状态信息,获取所述运行状态信息异常的加速节点的节点标识,将其上传至所述路由计算节点;
所述路由计算节点还用于查找异常节点标识对应的路由信息,并根据所述网络质量参数更新查找到的路由信息。
24.根据权利要求22或23所述的路由方法,其特征在于,所述路由计算节点还用于获取查找到的路由信息中包含的起始节点和目标节点,根据所述网络质量参数在所述加速节点中选取连接所述起始节点和目标节点的中间跳节点,并生成由所述起始节点经由所述中间跳节点转发至所述目标节点的路由信息。
25.一种分发路由信息的方法,包括:
接收加速节点上传的其与其他加速节点或业务节点之间的网络质量参数;
根据所述网络质量参数生成路由信息:在所述加速节点中选取起始节点,在所述业务节点中遍历选取目标节点,根据所述网络质量参数在所述加速节点中选取连接所述起始节点和目标节点的中间跳节点,并生成由所述起始节点经由所述中间跳节点转发至所述目标节点的路由信息;
将所述路由信息分发给所述起始节点和所述中间跳节点。
26.根据权利要求25所述的分发路由信息的方法,其特征在于,所述将所述路由信息分发给所述起始节点和所述中间跳节点的步骤包括:
获取所述路由信息,获取其包含的起始节点、目标节点和中间跳节点的节点标识;
根据所述路由信息在所述中间跳节点的节点标识中选取与所述起始节点和中间跳节点对应的下一跳节点的节点标识;
将所述起始节点、目标节点和下一跳节点的节点标识分发给相应的所述起始节点和中间跳节点。
27.根据权利要求26所述的分发路由信息的方法,其特征在于,所述起始节点、目标节点和中间跳节点的节点标识分别各自对应至少一个节点地址;
所述将所述起始节点、目标节点和下一跳节点的节点标识分发给相应的所述起始节点和中间跳节点的步骤包括:
获取所述起始节点和中间跳节点的节点标识分别各自对应的节点地址;
将所述起始节点、目标节点和下一跳节点的节点标识下发至所述起始节点和中间跳节点的节点标识分别各自对应的节点地址。
28.根据权利要求25所述的分发路由信息的方法,其特征在于,所述网络质量参数包括延时和/或丢包率;
所述根据所述网络质量参数生成路由信息的步骤还包括:
获取所述加速节点对应的额定负载信息和/或带宽信息;
根据所述加速节点与其他加速节点或业务节点之间的延时和/或丢包率以及所述加速节点对应的额定负载信息和/或带宽信息生成路由信息。
29.根据权利要求25所述的分发路由信息的方法,其特征在于,所述方法还包括:
持续接收所述加速节点上传的探测包,获取上传超时的加速节点对应的异常节点标识,并查找其对应的路由信息,根据所述网络质量参数更新查找到的路由信息。
30.根据权利要求25所述的分发路由信息的方法,其特征在于,所述方法还包括:
持续接收所述加速节点上传的探测包,根据所述上传的探测包获取与所述加速节点对应的运行状态信息,获取所述运行状态信息异常的加速节点对应的异常节点标识,并查找其对应的路由信息,根据所述网络质量参数更新查找到的路由信息。
31.根据权利要求29或30所述的分发路由信息的方法,其特征在于,所述根据所述网络质量参数更新查找到的路由信息的步骤包括:
获取查找到的路由信息中包含的起始节点和目标节点,根据所述网络质量参数在所述加速节点中选取连接所述起始节点和目标节点的中间跳节点,并生成由所述起始节点经由所述中间跳节点转发至所述目标节点的路由信息。
32.根据权利要求25所述的分发路由信息的方法,其特征在于,所述方法还包括:
接收上传的目标网络地址,获取与所述目标网络地址对应的网络节点,获取所述路由信息包含的起始节点,选取所述网络节点为目标节点,执行所述根据所述网络质量参数在所述加速节点中选取连接所述起始节点和目标节点的中间跳节点的步骤。
33.一种分发路由信息的装置,其特征在于,包括:
网络质量参数接收模块,用于接收加速节点上传的其与其他加速节点或业务节点之间的网络质量参数;
路由信息计算模块,用于根据所述网络质量参数生成路由信息:在所述加速节点中选取起始节点,在所述业务节点中遍历选取目标节点,根据所述网络质量参数在所述加速节点中选取连接所述起始节点和目标节点的中间跳节点,并生成由所述起始节点经由所述中间跳节点转发至所述目标节点的路由信息;
路由信息分发模块,用于将所述路由信息分发给所述起始节点和所述中间跳节点。
34.根据权利要求33所述的分发路由信息的装置,其特征在于,所述路由信息分发模块还用于获取所述路由信息,获取其包含的起始节点、目标节点和中间跳节点的节点标识;根据所述路由信息在所述中间跳节点的节点标识中选取与所述起始节点和中间跳节点对应的下一跳节点的节点标识;将所述起始节点、目标节点和下一跳节点的节点标识分发给相应的所述起始节点和中间跳节点。
35.根据权利要求34所述的分发路由信息的装置,其特征在于,所述起始节点、目标节点和中间跳节点的节点标识分别各自对应至少一个节点地址;
所述路由信息分发模块还用于获取所述起始节点和中间跳节点的节点标识分别各自对应的节点地址;将所述起始节点、目标节点和下一跳节点的节点标识下发至所述起始节点和中间跳节点的节点标识分别各自对应的节点地址。
36.根据权利要求33所述的分发路由信息的装置,其特征在于,所述网络质量参数包括延时和/或丢包率;
所述路由信息计算模块还用于获取所述加速节点对应的额定负载信息和/或带宽信息;根据所述加速节点与其他加速节点或业务节点之间的延时和/或丢包率以及所述加速节点对应的额定负载信息和/或带宽信息生成路由信息。
37.根据权利要求33所述的分发路由信息的装置,其特征在于,所述装置还包括第一异常节点探测模块,用于持续接收所述加速节点上传的探测包,获取上传超时的加速节点对应的异常节点标识;
所述路由计算模块还用于查找异常节点标识对应的路由信息,根据所述网络质量参数更新查找到的路由信息。
38.根据权利要求25所述的分发路由信息的装置,其特征在于,所述装置还包括第二异常节点探测模块,用于持续接收所述加速节点上传的探测包,根据所述上传的探测包获取与所述加速节点对应的运行状态信息,获取所述运行状态信息异常的加速节点对应的异常节点标识;
所述路由计算模块还用于查找异常节点标识对应的路由信息,根据所述网络质量参数更新查找到的路由信息。
39.根据权利要求29或30所述的分发路由信息的装置,其特征在于,所述路由计算模块还用于获取查找到的路由信息中包含的起始节点和目标节点,根据所述网络质量参数在所述加速节点中选取连接所述起始节点和目标节点的中间跳节点,并生成由所述起始节点经由所述中间跳节点转发至所述目标节点的路由信息。
40.根据权利要求25所述的分发路由信息的装置,其特征在于,所述装置还包括业务节点添加模块,用于接收上传的目标网络地址,获取与所述目标网络地址对应的网络节点;
所述路由信息计算模块还用于获取所述路由信息包含的起始节点,选取所述网络节点为目标节点,根据所述网络质量参数在所述加速节点中选取连接所述起始节点和目标节点的中间跳节点。
CN201410008919.5A 2014-01-08 2014-01-08 路由方法和系统以及分发路由信息的方法和装置 Active CN104767682B (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN201410008919.5A CN104767682B (zh) 2014-01-08 2014-01-08 路由方法和系统以及分发路由信息的方法和装置
PCT/CN2014/094816 WO2015103926A1 (en) 2014-01-08 2014-12-24 Method, apparatus and system for disseminating routing information
US15/176,032 US9634923B2 (en) 2014-01-08 2016-06-07 Method, apparatus and system for disseminating routing information

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410008919.5A CN104767682B (zh) 2014-01-08 2014-01-08 路由方法和系统以及分发路由信息的方法和装置

Publications (2)

Publication Number Publication Date
CN104767682A true CN104767682A (zh) 2015-07-08
CN104767682B CN104767682B (zh) 2018-10-02

Family

ID=53523532

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410008919.5A Active CN104767682B (zh) 2014-01-08 2014-01-08 路由方法和系统以及分发路由信息的方法和装置

Country Status (3)

Country Link
US (1) US9634923B2 (zh)
CN (1) CN104767682B (zh)
WO (1) WO2015103926A1 (zh)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106126402A (zh) * 2016-06-14 2016-11-16 网易(杭州)网络有限公司 加速器异常的处理方法及装置
CN106933718A (zh) * 2015-12-30 2017-07-07 华为技术有限公司 性能监控方法及装置
CN106991070A (zh) * 2016-10-11 2017-07-28 阿里巴巴集团控股有限公司 实时计算方法及装置
CN108173759A (zh) * 2016-12-07 2018-06-15 中国电信股份有限公司 业务功能路径的选择方法、装置和网关
CN110178118A (zh) * 2017-01-17 2019-08-27 微软技术许可有限责任公司 硬件实现的负载平衡
CN110780615A (zh) * 2018-07-27 2020-02-11 罗克韦尔自动化技术公司 在高可用性工业控制系统上传输数据的系统和方法
CN111464442A (zh) * 2019-01-22 2020-07-28 华为技术有限公司 对数据包进行路由的方法和装置
CN111464448A (zh) * 2020-06-17 2020-07-28 腾讯科技(深圳)有限公司 一种数据传输方法及装置
CN112887353A (zh) * 2019-11-29 2021-06-01 中国移动通信有限公司研究院 一种信息处理方法、装置、终端及存储介质
CN114268613A (zh) * 2022-03-02 2022-04-01 阿里巴巴(中国)有限公司 数据传输系统、方法、设备、存储介质及程序产品

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10491467B2 (en) * 2014-05-23 2019-11-26 Nant Holdings Ip, Llc Fabric-based virtual air gap provisioning, systems and methods
US10154133B2 (en) * 2016-05-17 2018-12-11 Nice-Systems Ltd Quality-dependent playback of recordings
US11327472B2 (en) 2018-07-27 2022-05-10 Rockwell Automation Technologies, Inc. System and method of connection management during synchronization of high availability industrial control systems
US11927950B2 (en) 2018-07-27 2024-03-12 Rockwell Automation Technologies, Inc. System and method of communicating safety data over high availability industrial control systems
US11669076B2 (en) 2018-07-27 2023-06-06 Rockwell Automation Technologies, Inc. System and method of communicating unconnected messages over high availability industrial control systems
JP7039447B2 (ja) * 2018-11-29 2022-03-22 株式会社東芝 無線通信装置、無線通信方法及びプログラム
US11451475B2 (en) 2019-12-19 2022-09-20 Huawei Technologies Co., Ltd. Packet forwarding based on geometric location
US11329717B2 (en) 2020-05-26 2022-05-10 Huawei Technologies Co., Ltd. Packet forwarding incorporating partial sorting of path costs or utilities
US11438823B2 (en) * 2020-05-29 2022-09-06 Huawei Technologies Co., Ltd. Orthodromic routing
US11374852B2 (en) 2020-05-29 2022-06-28 Huawei Technologies Co., Ltd. Piecewise shortest path first routing
US11374652B1 (en) 2020-12-10 2022-06-28 Huawei Technologies Co., Ltd. Method and apparatus for limited flooding and network routing region membership management
US11909627B2 (en) 2021-01-04 2024-02-20 Huawei Technologies Co., Ltd. Method and apparatus for managing network status information using multiple degree of precision graph
US11601780B2 (en) 2021-01-05 2023-03-07 Huawei Technologies Co., Ltd. Method and apparatus for propagating network status updates using directional tracking
US11476925B2 (en) 2021-02-04 2022-10-18 Huawei Technologies Co., Ltd. Method and apparatus for limited flooding in networks using transit nodes

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1625872A (zh) * 2002-05-08 2005-06-08 诺基亚公司 用于在网络中分配信息的分配方案
US7801048B1 (en) * 2004-06-23 2010-09-21 Cisco Technology, Inc. Concurrent path computation using virtual shortest path tree
WO2011035804A1 (en) * 2009-09-22 2011-03-31 Nokia Siemens Networks Gmbh & Co. Kg Method and device for processing data in a network
CN102347864A (zh) * 2011-11-02 2012-02-08 网宿科技股份有限公司 基于内容分发网络的服务质量监控系统
CN102571584A (zh) * 2012-01-12 2012-07-11 李禾禾 一种分布式网络加速的方法
CN103166859A (zh) * 2011-12-14 2013-06-19 中国电信股份有限公司 业务路由方法及系统

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7940716B2 (en) * 2005-07-01 2011-05-10 Terahop Networks, Inc. Maintaining information facilitating deterministic network routing
KR100571910B1 (ko) * 2003-07-15 2006-04-17 삼성전자주식회사 점대점 네트워크를 통해 통신하는 무선통신망에서QoS를 제공하는 방법 및 QoS를 제공하는 무선통신시스템
US7929546B2 (en) * 2006-05-25 2011-04-19 Motorola Solutions, Inc. Systems, methods and apparatus for allocating time slots in an ad hoc wireless communication network
EP2039085B1 (en) * 2006-06-30 2012-11-21 Vonage Holdings Corp. Method and system for network path discrimination
US8554137B2 (en) * 2007-02-12 2013-10-08 Broadcom Corporation Method and system for short range and wireless LAN coexistence
US9730078B2 (en) * 2007-08-31 2017-08-08 Fisher-Rosemount Systems, Inc. Configuring and optimizing a wireless mesh network
US8051203B2 (en) * 2009-03-12 2011-11-01 Cisco Technology, Inc. Providing SCSI acceleration as a service in the SAN
US8295280B2 (en) * 2009-12-21 2012-10-23 Manipal Institute Of Technology Multi-service adaptable routing protocol for wireless sensor networks
CN101989986A (zh) * 2010-10-28 2011-03-23 北京瑞汛世纪科技有限公司 一种查询服务节点的方法、服务器和系统
WO2013078687A1 (zh) * 2011-12-02 2013-06-06 华为技术有限公司 一种内容分发网络路由方法、系统和用户终端
US9591692B2 (en) * 2013-05-10 2017-03-07 Elwha Llc Dynamic point to point mobile network including destination device aspects system and method

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1625872A (zh) * 2002-05-08 2005-06-08 诺基亚公司 用于在网络中分配信息的分配方案
US7801048B1 (en) * 2004-06-23 2010-09-21 Cisco Technology, Inc. Concurrent path computation using virtual shortest path tree
WO2011035804A1 (en) * 2009-09-22 2011-03-31 Nokia Siemens Networks Gmbh & Co. Kg Method and device for processing data in a network
CN102347864A (zh) * 2011-11-02 2012-02-08 网宿科技股份有限公司 基于内容分发网络的服务质量监控系统
CN103166859A (zh) * 2011-12-14 2013-06-19 中国电信股份有限公司 业务路由方法及系统
CN102571584A (zh) * 2012-01-12 2012-07-11 李禾禾 一种分布式网络加速的方法

Cited By (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106933718A (zh) * 2015-12-30 2017-07-07 华为技术有限公司 性能监控方法及装置
CN106126402A (zh) * 2016-06-14 2016-11-16 网易(杭州)网络有限公司 加速器异常的处理方法及装置
CN106991070A (zh) * 2016-10-11 2017-07-28 阿里巴巴集团控股有限公司 实时计算方法及装置
CN106991070B (zh) * 2016-10-11 2021-02-26 创新先进技术有限公司 实时计算方法及装置
CN108173759B (zh) * 2016-12-07 2021-01-08 中国电信股份有限公司 业务功能路径的选择方法、装置和网关
CN108173759A (zh) * 2016-12-07 2018-06-15 中国电信股份有限公司 业务功能路径的选择方法、装置和网关
CN110178118A (zh) * 2017-01-17 2019-08-27 微软技术许可有限责任公司 硬件实现的负载平衡
CN110178118B (zh) * 2017-01-17 2023-06-23 微软技术许可有限责任公司 硬件实现的负载平衡
CN110780615A (zh) * 2018-07-27 2020-02-11 罗克韦尔自动化技术公司 在高可用性工业控制系统上传输数据的系统和方法
CN110780615B (zh) * 2018-07-27 2022-12-27 罗克韦尔自动化技术公司 在高可用性工业控制系统上传输数据的系统和方法
CN111464442A (zh) * 2019-01-22 2020-07-28 华为技术有限公司 对数据包进行路由的方法和装置
CN112887353A (zh) * 2019-11-29 2021-06-01 中国移动通信有限公司研究院 一种信息处理方法、装置、终端及存储介质
CN112887353B (zh) * 2019-11-29 2024-01-23 中国移动通信有限公司研究院 一种信息处理方法、装置、终端及存储介质
CN111464448A (zh) * 2020-06-17 2020-07-28 腾讯科技(深圳)有限公司 一种数据传输方法及装置
CN114268613A (zh) * 2022-03-02 2022-04-01 阿里巴巴(中国)有限公司 数据传输系统、方法、设备、存储介质及程序产品
CN114268613B (zh) * 2022-03-02 2022-06-03 阿里巴巴(中国)有限公司 数据传输系统、方法、设备及存储介质

Also Published As

Publication number Publication date
US20160323175A1 (en) 2016-11-03
CN104767682B (zh) 2018-10-02
WO2015103926A1 (en) 2015-07-16
US9634923B2 (en) 2017-04-25

Similar Documents

Publication Publication Date Title
CN104767682A (zh) 路由方法和系统以及分发路由信息的方法和装置
CN107332876B (zh) 区块链状态的同步方法及装置
JP6582723B2 (ja) ネットワークシステム、スイッチ装置、及びネットワークシステム制御方法
EP3829117B1 (en) Packet path recording with fixed header size
CN101483610B (zh) 链路状态路由协议的路由更新方法
CN105791169A (zh) 软件定义网络中交换机转发控制、转发方法及相关设备
US8693340B2 (en) Method and apparatus for least cost routing using multiple path accumulated constraints
CN110351286B (zh) 一种软件定义网络中链路洪泛攻击检测响应机制
CN107404526A (zh) 基于sdn的p2p遥感数据网络自适应分发系统及方法
CN102780779A (zh) 一种园区网出口p2p流量优化方法、装置及网关设备
CN104601467A (zh) 一种发送报文的方法和装置
CN103200100A (zh) 一种报文转发方法和设备
JP4815547B2 (ja) データ同期システム、データ同期方法、及び同期管理サーバ
CN111327460A (zh) 一种网关配置方法、云端设备、网关及系统
CN107959702B (zh) 路由方法和装置
CN103746768B (zh) 一种数据包的识别方法及设备
CN109120556B (zh) 一种云主机访问对象存储服务器的方法及系统
CN102437960A (zh) 集群模式的检测处理方法、系统和网络设备
CN107070681B (zh) 基于软件定义网络sdn的网络拓扑获取方法及装置
CN106209680A (zh) 信息处理装置以及方法
CN104838624B (zh) 一种控制业务数据在虚拟网络中转发的方法、装置及系统
CN109617776A (zh) 基于分布式散列表的软件定义网络控制器的方法及系统
CN102647424A (zh) 一种数据传输方法及其装置
US20150312136A1 (en) Centrally optimized variable length coding for source routed multicast
CN112468400A (zh) 一种故障定位方法、装置、设备和介质

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
EXSB Decision made by sipo to initiate substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20190809

Address after: 518000 Nanshan District science and technology zone, Guangdong, Zhejiang Province, science and technology in the Tencent Building on the 1st floor of the 35 layer

Co-patentee after: Tencent cloud computing (Beijing) limited liability company

Patentee after: Tencent Technology (Shenzhen) Co., Ltd.

Address before: Shenzhen Futian District City, Guangdong province 518000 Zhenxing Road, SEG Science Park 2 East Room 403

Patentee before: Tencent Technology (Shenzhen) Co., Ltd.

TR01 Transfer of patent right