CN104579992B - 一种控制网络流量路径的方法及装置 - Google Patents
一种控制网络流量路径的方法及装置 Download PDFInfo
- Publication number
- CN104579992B CN104579992B CN201310474162.4A CN201310474162A CN104579992B CN 104579992 B CN104579992 B CN 104579992B CN 201310474162 A CN201310474162 A CN 201310474162A CN 104579992 B CN104579992 B CN 104579992B
- Authority
- CN
- China
- Prior art keywords
- routing node
- network
- routing
- node
- selection
- 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
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/02—Topology update or discovery
- H04L45/04—Interdomain routing, e.g. hierarchical routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/02—Topology update or discovery
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/12—Shortest path evaluation
- H04L45/123—Evaluation of link metrics
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/20—Hop count for routing purposes, e.g. TTL
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/42—Centralised routing
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本发明公开了一种控制网络流量路径的方法及装置,接收从第一网络向第二网络的路由发布信息;根据所述路由发布信息,确定数据从所述第二网络流向所述第一网络经过的路径包含的所有路由节点;为确定的每一个路由节点配置下一跳路由节点,其中,所述下一跳路由节点是所述路径中所包含的所有路由节点中的节点,且与所述被配置的路由节点相邻,所述被配置的路由节点不包括所述第一网络的路由节点和所述第二网络的路由节点。
Description
技术领域
本发明涉及计算机技术领域,具体涉及一种控制网络流量路径的方法及装置。
背景技术
边界网关协议(Border Gateway Protocol,简称BGP)是一种用于自治系统(Autonomous System简称AS)之间的动态路由协议,且相互交换消息的BGP发言人之间互称对等体,BGP发言人只把自己使用的路由通告给对等体,进而使得数据从BGP发言人流向对等体时,只能配置与BGP发言人连接的数据进口路由节点和与对等体连接的数据出口路由节点。
现有技术中,数据从所述数据进口路由节点到所述数据出口路由节点之间经过的路由节点是通过路由反射器来进行选择的,由于所述数据进口路由节点和所述数据出口路由节点之间的所有路由节点均为路由反射器的邻居节点,导致在选择经过的路由节点时,路由反射器在选择一个路由节点的下一跳路节点时,所述下一跳路由节点与所述选择的路由节点并不相邻,从而存在无法逐邻居选择路由节点的下一跳路由节点为相邻节点的技术问题。
发明内容
本申请实施例通过提供一种控制网络流量路径的方法及装置,用于解决现有技术中存在无法逐邻居选择路由节点的下一跳路由节点为相邻节点的技术问题。
根据本发明的第一方面,提供了一种控制网络流量路径的方法,所述方法包括:接收从第一网络向第二网络的路由发布信息;根据所述路由发布信息,确定数据从所述第二网络流向所述第一网络经过的路径包含的所有路由节点;为确定的每一个路由节点配置下一跳路由节点,其中,所述下一跳路由节点是所述路径中所包含的所有路由节点中的节点,且与所述被配置的路由节点相邻,所述被配置的路由节点不包括所述第一网络的路由节点和所述第二网络的路由节点。
结合第一方面,在第一种可能的实现方式中,所述根据所述路由发布信息,确定数据从所述第二网络流向所述第一网络经过的路径包含的所有路由节点,具体包括:基于所述路由发布信息和接收到的所述第一网络与所述第二网络之间的路由规划信息,确定数据从所述第二网络流向所述第一网络经过的路径包含的所有路由节点;其中,所述路由规划信息中的规划节点包括所述第一网络和所述第二网络之间的N个路由节点,所述确定的路由节点包括所述N个路由节点,N为正整数。
结合第一方面的第一种可能的实现方式,在第二种可能的实现方式中,所述基于所述路由发布信息和接收到的所述第一网络与所述第二网络之间的路由规划信息,确定数据从所述第二网络流向所述第一网络经过的路径包含的所有路由节点,具体包括:基于所述路由发布信息和接收到的所述第一网络与所述第二网络之间的路由规划信息,确定数据从所述第二网络流向所述第一网络经过的符合预设约束条件的路由节点。
结合第一方面的第二种可能的实现方式,在第三种可能的实现方式中,所述基于所述路由发布信息和接收到的所述第一网络与所述第二网络之间的路由规划信息,确定数据从所述第二网络流向所述第一网络经过的符合预设约束条件的路由节点,具体包括:选择与所述第二网络连接的路由节点;针对选择的每一个路由节点执行以下操作,直到选择的路由节点与所述第一网络连接:判断与选择的路由节点连接的路由节点中是否存在有所述N个路由节点中的一个路由节点;在判断存在有所述N个路由节点中的一个路由节点时,选择所述N个路由节点中的一个路由节点为下一跳路由节点;在判断未存在所述N个路由节点中的一个路由节点时,从与选择的路由节点连接的路由节点中选择符合所述预设约束条件的路由节点作为下一跳路由节点。
结合第一方面,在第四种可能的实现方式中,所述根据所述路由发布信息,确定数据从所述第二网络流向所述第一网络经过的路径包含的所有路由节点,具体包括:根据所述路由发布信息,确定数据从所述第二网络流向所述第一网络经过的符合所述预设约束条件的路由节点。
结合第一方面的第四种可能的实现方式,在第五种可能的实现方式中,根据所述路由发布信息,确定数据从所述第二网络流向所述第一网络经过的符合预设约束条件中的路由节点,包括:选择与所述第二网络连接的路由节点;针对选择的每一个路由节点执行以下操作,直到选择的路由节点与所述第一网络连接:从与选择的路由节点连接的路由节点中选择符合所述预设约束条件的路由节点作为下一跳路由节点。
结合第一方面的第三种或第五种可能的实现方式,在第六种可能的实现方式中,所述从与选择的路由节点连接的路由节点中选择符合预设约束条件的下一跳路由节点,包括:在有多个所述第二网络的数据需要传输给所述第一网络时,针对一个所述第二网络,从与选择的路由节点连接的未被选择的所有路由节点中选择符合所述预设约束条件的路由节点作为下一跳路由节点。
本发明的第二方面提供了一种控制网络流量路径的装置,所述装置包括:接收单元,用于接收从第一网络向第二网络的路由发布信息;路由确定单元,用于接收所述接收单元发送的所述路由发布信息,并根据所述路由发布信息,确定数据从所述第二网络流向所述第一网络经过的路径包含的所有路由节点;配置单元,用于接收所述路由确定单元发送的所述确定的所有路由节点,为确定的每一个路由节点配置下一跳路由节点,其中,所述下一跳路由节点是所述路径中所包含的所有路由节点中的节点,且与所述被配置的路由节点相邻,所述被配置的路由节点不包括所述第一网络的路由节点和所述第二网络的路由节点。
结合第二方面,在第一种可能的实现方式中,所述路由确定单元包括第一路由确定子单元,用于基于所述路由发布信息和接收到的所述第一网络与所述第二网络之间的路由规划信息,确定数据从所述第二网络流向所述第一网络经过的路径包含的所有路由节点,其中,所述路由规划信息中的规划节点包括所述第一网络和所述第二网络之间的N个路由节点,所述确定的路由节点包括所述N个路由节点,N为正整数。
结合第二方面的第一种可能的实现方式,在第二种可能的实现方式中,所述第一路由确定子单元,具体用于基于所述路由发布信息和接收到的所述第一网络与所述第二网络之间的路由规划信息,确定数据从所述第二网络流向所述第一网络经过的符合预设约束条件的路由节点。
结合第二方面的第二种可能的实现方式,在第三种可能的实现方式中,所述第一路由确定子单元,具体用于选择与所述第二网络连接的路由节点,并针对选择的每一个路由节点执行以下操作,直到选择的路由节点与所述第一网络连接,判断与选择的路由节点连接的路由节点中是否存在有所述N个路由节点中的一个路由节点,以及在判断存在有所述N个路由节点中的一个路由节点时,选择所述N个路由节点中的一个路由节点为下一跳路由节点,以及在判断未存在所述N个路由节点中的一个路由节点时,从与选择的路由节点连接的路由节点中选择符合所述预设约束条件的路由节点作为下一跳路由节点。
结合第二方面,在第四种可能的实现方式中,所述路由确定单元包括第二路由确定子单元,用于根据所述路由发布信息,确定数据从所述第二网络流向所述第一网络经过的符合所述预设约束条件的路由节点。
结合第二方面的第四种可能的实现方式,在第五种可能的实现方式中,所述第二路由确定子单元,具体用于选择与所述第二网络连接的路由节点,并针对选择的每一个路由节点执行以下操作,直到选择的路由节点与所述第一网络连接,以及从与选择的路由节点连接的路由节点中选择符合所述预设约束条件的路由节点作为下一跳路由节点。
结合第二方面的第三种或第五种可能的实现方式,在第六种可能的实现方式中,所述配置单元,还用于在有多个所述第二网络的数据需要传输给所述第一网络时,针对一个所述第二网络,从与选择的路由节点连接的未被选择的所有路由节点中选择符合所述预设约束条件的路由节点作为下一跳路由节点。
本发明的第三方面提供了一种控制网络流量路径的装置,所述装置包括:接收器,用于接收从第一网络向第二网络的路由发布信息;控制器,用于根据所述路由发布信息,确定数据从所述第二网络流向所述第一网络经过的路径包含的所有路由节点,以及为确定的每一个路由节点配置下一跳路由节点,其中,所述下一跳路由节点是所述路径中所包含的所有路由节点中的节点,且与所述被配置的路由节点相邻,所述被配置的路由节点不包括所述第一网络的路由节点和所述第二网络的路由节点。
结合第三方面,在第一种可能的实现方式中,所述控制器,具体用于基于所述路由发布信息和接收到的所述第一网络与所述第二网络之间的路由规划信息,确定数据从所述第二网络流向所述第一网络经过的路径包含的所有路由节点,其中,所述路由规划信息中的规划节点包括所述第一网络和所述第二网络之间的N个路由节点,所述确定的路由节点包括所述N个路由节点,N为正整数。
结合第三方面的第一种可能的实现方式,在第二种可能的实现方式中,所述控制器,具体用于基于所述路由发布信息和接收到的所述第一网络与所述第二网络之间的路由规划信息,确定数据从所述第二网络流向所述第一网络经过的符合预设约束条件的路由节点。
结合第三方面的第二种可能的实现方式,在第三种可能的实现方式中,所述控制器,具体用于选择与所述第二网络连接的路由节点,并针对选择的每一个路由节点执行以下操作,直到选择的路由节点与所述第一网络连接,判断与选择的路由节点连接的路由节点中是否存在有所述N个路由节点中的一个路由节点,以及在判断存在有所述N个路由节点中的一个路由节点时,选择所述N个路由节点中的一个路由节点为下一跳路由节点,以及在判断未存在所述N个路由节点中的一个路由节点时,从与选择的路由节点连接的路由节点中选择符合所述预设约束条件的路由节点作为下一跳路由节点。
结合第三方面,在第四种可能的实现方式中,所述控制器,还用于根据所述路由发布信息,确定数据从所述第二网络流向所述第一网络经过的符合所述预设约束条件的路由节点。
结合第三方面的第四种可能的实现方式,在第五种可能的实现方式中,所述控制器,具体用于选择与所述第二网络连接的路由节点,并针对选择的每一个路由节点执行以下操作,直到选择的路由节点与所述第一网络连接,以及从与选择的路由节点连接的路由节点中选择符合所述预设约束条件的路由节点作为下一跳路由节点。
结合第三方面的第三种或第五种可能的实现方式,在第六种可能的实现方式中,所述控制器,还用于在有多个所述第二网络的数据需要传输给所述第一网络时,针对一个所述第二网络,从与选择的路由节点连接的未被选择的所有路由节点中选择符合所述预设约束条件的路由节点作为下一跳路由节点。
本发明有益效果如下:
本发明实施例中,本申请技术方案是接收从第一网络向第二网络的路由发布信息,再根据所述路由发布信息,确定数据从所述第二网络流向所述第一网络经过的路径包含的所有路由节点,以及为确定的每一个路由节点配置下一跳路由节点,由于本申请的技术方案为所述确定的每一个路由节点配置了下一跳路由节点,使得数据到所述确定的每一个路由节点时,数据会被自动传输给下一跳路由节点,从而解决了现有技术中存在逐逐邻居选择路由节点的下一跳路由节点为相邻节点的技术问题。
附图说明
图1为本发明实施例中控制网络流量路径的方法的第一种流程图;
图2为本发明实施例对第一网络和第二网络进行通信的第一种结构图;
图3为本发明实施例中控制网络流量路径的方法的第二种流程图;
图4为本发明实施例中控制网络流量路径的方法的第三种流程图;
图5为本发明实施例对第一网络和第二网络进行通信的第二种结构图;
图6为本发明实施例中控制网络流量路径的装置的第一种结构图;
图7为本发明实施例中控制网络流量路径的装置的第二种结构图。
具体实施方式
针对现有技术中存在无法逐邻居选择路由节点的技术问题,本发明实施例提出的技术方案中,首先接收从第一网络向第二网络的路由发布信息,再根据所述路由发布信息,确定数据从所述第二网络流向所述第一网络经过的路径包含的所有路由节点,以及为确定的每一个路由节点配置下一跳路由节点,使得数据到所述确定的每一个路由节点时,数据会被自动传输给下一跳路由节点,从而解决了现有技术中存在无法逐邻居选择路由节点的下一跳路由节点为相邻节点的技术问题,从而实现了逐邻居选择路由节点的下一跳路由节点为相邻节点的技术效果,由于能够逐逐邻居选择路由节点的下一跳路由节点为相邻节点,当一路由节点中的网络流量较大时,从而可以将所述路由节点去除在所述确定的路由节点之外,进而能够实现细粒度、灵活的流量疏导。
下面结合各个附图对本发明实施例技术方案的主要实现原理、具体实施方式及其对应能够达到的有益效果进行详细地阐述。
实施例一:
本发明实施例一提出了一种控制网络流量路径的方法,如图1所示,该方法具体处理过程如下:
步骤101:接收从第一网络向第二网络的路由发布信息;
步骤102:根据所述路由发布信息,确定数据从所述第二网络流向所述第一网络经过的路径包含的所有路由节点;
步骤103:为确定的每一个路由节点配置下一跳路由节点,其中,所述下一跳路由节点是所述路径中所包含的所有路由节点中的节点,且与所述被配置的路由节点相邻,所述被配置的路由节点不包括所述第一网络的路由节点和所述第二网络的路由节点。
其中,在步骤101中,接收从第一网络向第二网络的路由发布信息。在具体实施过程中,所述第一网络和所述第二网络例如是城域网,两个城域网之间是通过骨干网进行通信的,例如成都城域网和北京城域网是通过163骨干网连接的,在所述第一网络向所述第二网络进行路由发布时,接收所述第一网络向所述第二网络进行路由发布时产生的所述路由发布信息。
例如,以第一网络为A城域网以及以第二网络为B城域网为例,在A城域网向B城域网进行路由发布时,A城域网将A城域网IP例如是200.1.1.240,200.1.1.244,200.1.2.240,200.1.2.244,200.1.3.240等向B城域网进行路由发布,并接收A城域网向A城域网进行路由发布时产生的路由发布信息包括A城域网的IP地址和B城域网路的IP地址,和/或,以及数据从A城域网流向B城域网时经过的所有路由节点的IP地址。
接下来执行步骤102,在该步骤中,根据所述路由发布信息,确定数据从所述第二网络流向所述第一网络经过的路径包含的所有路由节点。
在具体实施过程中,可以根据所述路由发布信息,获取到数据从所述第二网络流向第一网络经过的所有路由节点,在从所有的路由节点中选择一条路径,以使得数据能够通过所述路径从所述第二网络传输到所述第一网络。
具体的,由于所述是从所述第二网络流向所述第一网络的,导致所述确定的所有路由节点必然包含有所述第一网络的路由节点和所述第二网络的路由节点,并可以确定所述第一网络的路由节点为目的节点。
例如,参见图2,在城域网AS1向城域网AS2进行了路由发布,路由控制器B1根据AS1的路由发布信息,其中,AS1和AS2之间通过骨干网AS10连接,获取数据从AS2流向AS1需要经过的所有路由节点包括路由节点D1、D2、D3和D4,以及路由节点P1、P2、P3、P4和P5,以及AS1的路由节点A1和AS2的路由节点A2。
其中,在获取数据从AS2流向AS1需要经过的所有路由节点之后,数据可以通过多条路径从AS2传输到AS1,所述多条路径例如可以是A2->D3->P4->P1->D1->A1,A2->D3->P3->D1->A1,A2->D3->P3->D2->A1,A2->D3->P4->P1->P3->D1->A1,A2->D3->P4->P1->P3->D2->A1,A2->D3->P2->P3->D1->A1,A2->D3->P2->P3->D2->A1等,可以从所述多条路径中随机选择一条路径作为数据从AS2流向AS1的路径,假设从所述多条路径中随机选择的一条路径为A2->D3->P3->D1->A1,则确定数据从AS2流向AS1经过的路径包含的所有路由节点为A2,D3,P3,D1和A1。
在具体实施过程中,还可以基于所述路由发布信息和接收到的所述第一网络与所述第二网络之间的路由规划信息,确定数据从所述第二网络流向所述第一网络经过的路径包含的所有路由节点,其中,所述路由规划信息中的规划节点包括所述第一网络和所述第二网络之间的N个路由节点,所述确定的路由节点包括所述N个路由节点,N为正整数。
其中,所述路由规划信息可以在所述第一网络向所述第二网络进行路由发布之前获取,也可以在进行所述路由发布的过程中获取,还可以在所述路由发布之后获取,本申请不作具体限制。
具体的,所述N个路由节点是指数据从所述第二网络流向所述第一网络是必须经过的节点,所述N个值可以取1,2,5,10,30等值,所述N个路由节点可以是数据从所述第二网络流向所述第一网络时经过的路由节点中的一部分或全部路由节点,在所述N个路由节点为数据从所述第二网络流向所述第一网络时经过的路由节点的一部分路由节点时,在所述N个路由节点为数据从所述第二网络流向所述第一网络时经过的路由节点的一部分路由节点时,可以基于所述路由发布信息和接收到的所述第一网络与所述第二网络之间的路由规划信息,确定数据从所述第二网络流向所述第一网络经过的符合预设约束条件的路由节点。
当然,在所述N个路由节点为数据从所述第二网络流向所述第一网络时经过的路由节点的一部分路由节点时,还可以从所述第一网络与所述第二网络之间的路由节点中随机选择一些其它节点,以使得数据通过所述其它节点和所述N个路由节点从所述第二网络流向所述第一网络。
下面以所述N个路由节点为数据从所述第二网络流向所述第一网络时经过的路由节点的全部路由节点为例:
例如,参见图2,在城域网AS1向城域网AS2进行了路由发布,路由控制器B1根据AS1的路由发布信息,其中,AS1和AS2之间通过骨干网AS10连接,获取数据从AS2流向AS1需要经过的所有路由节点包括路由节点D1、D2、D3和D4,以及路由节点P1、P2、P3、P4和P5,以及AS1的路由节点A1和AS2的路由节点A2。
当路由控制器B1接收到数据从AS2流向AS1的路由规划信息的规划节点为D3->P4->P1->D1时,路由控制器B1上有去往DEST_IP的2条路由表项:
Dest: NextHop:
DEST_IP D1
DEST_IP D2
路由控制器B1执行所述规划节点的要求,检测到自己有满足出口为D1的路由,于是将路径翻译成该路径沿途各点的路由:
给D1下发路由:
Dest: NextHop:
DEST_IP A1
给P1下发路由:
Dest: NextHop:
DEST_IP D1
给P4下发路由:
Dest: NextHop:
DEST_IP P1
给D3选择路由:
Dest: NextHop:
DEST_IP P4
从而使得从AS2访问AS1的数据将顺着路径:A2->D3->P4->P1->D1->A1,到达AS1,使得数据从AS2流向AS1的路径符合所述路由规划信息,而现有的技术中数据从AS2流向AS1时,每一个选择的路由节点均是根据IGP的计算结果来选择下一跳路由节点,进而使得现有技术中的数据从AS2流向AS1的路径不符合所述路由规划信息,而本申请的上述技术方案,使得数据从AS2流向AS1的路径符合所述路由规划信息,可以将未经使用的路由节点来进行所述路由规划信息,进而实现充分利用路由节点来传输数据。
下面以所述N个路由节点为数据从所述第二网络流向所述第一网络时经过的路由节点的一部分路由节点为例:
参见图2,当路由控制器B1接收到数据从AS2流向AS1的路由规划信息的规划节点仅包含P3时,则路由控制器B1可以选择的路径为:A2->D3->P3->D1->A1,A2->D3->P3->D2->A1,A2->D3->P4->P1->P3->D1->A1,A2->D3->P4->P1->P3->D2->A1。
具体的,在所述N个路由节点为数据从所述第二网络流向所述第一网络时经过的路由节点的一部分路由节点时,所述基于所述路由发布信息和接收到的所述第一网络与所述第二网络之间的路由规划信息,确定数据从所述第二网络流向所述第一网络经过的路径包含的所有路由节点,具体包括:基于所述路由发布信息和接收到的所述第一网络与所述第二网络之间的路由规划信息,确定数据从所述第二网络流向所述第一网络经过的符合预设约束条件的路由节点。
当然,在所述N个路由节点为数据从所述第二网络流向所述第一网络时经过的路由节点的全部路由节点时,也可以按照上述方式来确定路由。
其中,所述预设约束条件可以是针对带宽,路由成本、可靠性、时延、负载等中一种或多种进行限制的条件,例如所述预设条件可以是带宽不小于10M,且路由成本最低,还可以仅是带宽不小于20M或者路由成本最低的条件。
具体的,所述基于所述路由发布信息和接收到的所述第一网络与所述第二网络之间的路由规划信息,确定数据从所述第二网络流向所述第一网络经过的符合预设约束条件的路由节点,具体包括以下步骤:
参见图3,上述步骤包括:
步骤301:选择与所述第二网络连接的路由节点;
步骤302:针对选择的每一个路由节点执行以下操作,直到选择的路由节点与所述第一网络连接:
其中,步骤302包括步骤3021、步骤3022和步骤3023,具体如下:
步骤3021:判断与选择的路由节点连接的路由节点中是否存在有所述N个路由节点中的一个路由节点;
在判断存在有所述N个路由节点中的一个路由节点时,执行步骤3022,选择所述N个路由节点中的一个路由节点为下一跳路由节点;
在判断未存在所述N个路由节点中的一个路由节点时,执行步骤3023,从与选择的路由节点连接的路由节点中选择符合所述预设约束条件的路由节点作为下一跳路由节点。
其中,在步骤301中,选择与所述第二网络连接的路由节点。
例如,参见图2,当路由控制器B1接收到数据从AS2流向AS1的路由规划信息的规划节点仅包含P3时,由于与AS2连接的路由节点仅有D3,因此,可以确定与AS2连接的路由节点为D3。
接下来执行步骤302,由于与AS2连接的路由节点仅有D3,进而使得AS2的路由节点A2到D3的带宽参数等参数均满足所述预设约束条件,以所述预设约束条件为路由成本最低为例。
针对选择的路由节点D3,执行步骤3021,判断与选择的路由节点连接的路由节点中是否存在有所述N个路由节点中的一个路由节点。
参见图2,在选择与D3连接的路由节点时,D3根据路由控制器B1中的路由表项,从而可以得到与D3的连接的路由节点包括P2,P3,P4和D4,从而判断P2,P3,P4和D4是否包含有所述N个路由节点中的一个路由节点,由于所述N个路由节点为P3,而P2,P3,P4和D4中包含有P3,进行执行步骤3022,将P3作为D3的下一跳的路由节点。
接下来针对P3,执行步骤3021,判断与选择的路由节点连接的路由节点中是否存在有所述N个路由节点中的一个路由节点。
参见图2,在选择P3的下一跳路由节点时,P3根据路由控制器B1中的路由表项,从而可以得到与P3的连接的路由节点包括P1,D1,D2和P2,由于所述N个路由节点为P3,从而可以判定P1,D1,D2和P2中未包括有所述N个路由节点中的一个路由节点,则执行步骤3023,从与选择的路由节点连接的路由节点中选择符合所述预设约束条件的路由节点作为下一跳路由节点。
进一步的,参见图2,针对P3,根据路由拓扑结构,由于数据需要从AS2流向AS1,因此,可以从与P3连接的路由节点P1,D1,D2和P2中去除掉P1和P2,从D1和D2中进行选择下一跳的路由节点,假设P3到D1的带宽为100M,则P3到D1的路由成本为:cost=10^8/100M=1,而P3到D2的带宽为16M时,则P3到D2的路由成本为:cost=10^8/16M=6,由于P3到D1的路由成本小于P3到D2的路由成本,且所述预设预设条件为路由成本最低,进而可以判定D1为P3的下一跳路由节点。
针对D1,由于D1与AS1的路由节点A1连接,进而可以确定数据从AS2流向AS1的路径为A2->D3->P3->D1->A1。
具体来讲,针对所述所述根据所述路由发布信息,确定数据从所述第二网络流向所述第一网络经过的路径包含的所有路由节点,在未接收到所述路由规划信息时,可以根据所述路由发布信息,确定数据从所述第二网络流向所述第一网络经过的符合所述预设约束条件的路由节点。
具体的,所述根据所述路由发布信息,确定数据从所述第二网络流向所述第一网络经过的符合预设约束条件中的路由节点,具体包括以下步骤:
参见图4,上述步骤包括:
步骤401:选择与所述第二网络连接的路由节点;
步骤402:针对选择的每一个路由节点执行以下操作,直到选择的路由节点与第一网络连接;
其中,步骤402包括步骤4021,具体如下:
步骤4021:从与选择的路由节点连接的路由节点中选择符合所述预设约束条件的路由节点作为下一跳路由节点。
其中,在步骤401中,选择与所述第二网络连接的路由节点。
例如,参见图2,当路由控制器B1接收到数据从AS2流向AS1的路由规划信息中的规划节点仅包含P3时,由于与AS2连接的路由节点仅有D3,因此,可以确定与AS2连接的路由节点为D3。
接下来执行步骤302,由于与AS2连接的路由节点仅有D3,进而使得AS2的路由节点A2到D3的带宽参数等参数均满足所述预设约束条件,以所述预设约束条件为路由成本最低为例。
针对选择的路由节点D3,执行步骤4021,从与选择的路由节点连接的路由节点中选择符合所述预设约束条件的路由节点作为下一跳路由节点。
具体来讲,在与选择的路由节点连接的路由节点有多个路由节点满足所述预设约束条件时,从所述多个路由节点中选择一个路由节点作为下一跳路由节点,例如所述预设约束条件为带宽不小于10M,可靠性不低于80%时,参见图2,以D3为例,与D3连接的路由节点包括P2,P3,P4和D4,当P2和P3均满足所述预设约束条件时,可以从P2和P3随机选择一个路由节点为D3的下一跳路由节点,也可以根据路由算法从P2和P3中选择一个路由节点与D3之间的路径为最佳路径。
参见图2,在选择与D3连接的路由节点时,D3根据路由控制器B1中的路由表项,从而可以得到与D3的连接的路由节点包括P2,P3,P4和D4,再从P1,D1,D2和P2中选择符合所述预设约束条件的路由节点作为下一跳路由节点,在所述预设约束条件为路由成本最低时,假设D3到P2的带宽为10M,则P3到D1的路由成本为:cost=10^8/10M=10,在D3到P3的带宽为100M时,则D3到D3的路由成本为1,在D3到P4的带宽为50M时,则D3到D1的路由成本为2,在D3到D4的带宽为20M时,则D3到D1的路由成本为5,由于1<2<5<10,从而可以确定D3到P3的路由成本最低,则确定D3的下一跳路由节点为P3。
参见图2,在选择P3的下一跳路由节点时,P3根据路由控制器B1中的路由表项,从而可以得到与P3的连接的路由节点包括P1,D1,D2和P2,再从P1,D1,D2和P2中选择符合所述预设约束条件的路由节点作为下一跳路由节点。
进一步的,针对P3,根据路由拓扑结构,由于数据需要从AS2流向AS1,因此,可以从与P3连接的路由节点P1,D1,D2和P2中去除掉P1和P2,从D1和D2中进行选择下一跳的路由节点,假设P3到D1的带宽为100M,则P3到D1的路由成本为:cost=10^8/100M=1,而P3到D2的带宽为16M时,则P3到D2的路由成本为:cost=10^8/16M=6,由于P3到D1的路由成本小于P3到D2的路由成本,且所述预设预设条件为路由成本最低,进而可以判定D1为P3的下一跳路由节点。
针对D1,由于D1与AS1的路由节点A1连接,而数据是从AS2流向AS1,导致A1为目的节点,进而可以确定D1的下一跳路由节点为A1,使得数据从AS2流向AS1的路径为A2->D3->P3->D1->A1,进而使得通过上述方式,由于确定的每一个路由均符合所述预设约束条件,进而使得数据从AS2流向AS1的路径能够符合所述预设约束条件,而且还能使得所述确定的路由的路由成本最低,使得数据能够更稳定和快速的进行传输。
在具体实施过程中,在所述所有路由节点中存在已被选中的路由节点时,所述从所述所有路由节点中选中下一跳路由节点,具体包括:从所述所有路由节点中除去所述已被选中的路由节点中选中下一跳路由节点。
具体来讲,在一个路由节点已被选中时,从所述所有路由节点中除去所述已被选中的路由节点中选中下一跳路由节点,参见图2,以D3为例,与D3的连接的路由节点包括P2,P3,P4和D4,在P3已被选中时,则从P2,P4和D4中选择D3的下一跳路由节点,使得每一条流量路径不会出现交叉的情况,进而能够防止出现多条流量路径出现汇聚点后再分叉的情况,实现了多条流量路径不出现汇聚点的技术效果。
例如,参见图5,在AS1向AS2和城域网AS3进行路由发布时,首先执行步骤:分别选择与AS2连接的路由节点为D3和选择与AS3连接的路由节点为D4,其中,D3和D4均符合所述预设约束条件,以所述预设约束条件为路由成本最低为例。
接下来针对D3,与D3连接的路由节点为P4、P3、P2和D4,由于D4已被选中,则从P4、P3和P2中选择与D3间的cost最小的路由节点为下一跳路由节点,若P4与D3间的cost为5,P3与D3间的cost为3,P3与D3间的cost为10,由于3<5<10,则选择P3为D3的下一跳节点。
接下来针对D4,与D4连接的路由节点为D3、P1、P2和P5,由于D3已被选中,则从P1、P2和P5中选择与D4间的cost最小的路由节点为下一跳路由节点,若P1与D4间的cost为6,P2与D4间的cost为4,P5与D4间的cost为9,由于4<6<9,则选择P2为D4的下一跳节点。
接下来针对P3,与P3连接的路由节点为P1、D1、D2、D3和P2,由于P2和D3已被选中,则从P1、D1和D2中选择与P3间的cost最小的路由节点为下一跳路由节点,若P1与P3间的cost为20,D1与P3间的cost为7,D2与P3间的cost为15,由于7<15<20,则选择D1为P3的下一跳节点。
接下来针对P2,与P2连接的路由节点为D3,P1,P3、D2、P5和D4,由于D4、D3和P3已被选中,则从P1,D2和P5中选择与P2间的cost最小的路由节点为下一跳路由节点,若P1与P2间的cost为13,D1与P2间的cost为1,D2与P2间的cost为35,由于1<13<35,则选择D2为P2的下一跳节点。
接下来针对D1,由于D1与AS1的路由节点A1连接,而数据是从AS2流向AS1,导致A1为目的节点,进而可以确定D1的下一跳路由节点为A1,使得数据从AS2流向AS1的路径为A2->D3->P3->D1->A1。
接下来针对D2,由于D2与AS1的路由节点A1连接,而数据是从AS3流向AS1,导致A1为目的节点,进而可以确定D1的下一跳路由节点为A1,使得数据从AS3流向AS1的路径为A3->D4->P2->D2->A1,进而使得获取的两条流量路径没有出现汇聚点,实现了多条流量路径不出现汇聚点的技术效果。
接下来执行步骤103,在该步骤中,为确定的每一个路由节点配置下一跳路由节点,其中,所述下一跳路由节点是所述路径中所包含的所有路由节点中的节点,且与所述被配置的路由节点相邻,所述被配置的路由节点不包括所述第一网络的路由节点和所述第二网络的路由节点。
在具体实施过程中,由于所述第一网络的路由节点为目的节点以及所述第二网络的路由节点为起始节点,导致所述确定的路径包含的所有路由节点必然包含所述第一网络的路由节点和所述第二网络的路由节点,而且会导致所述第一网络的路由节点没有下一跳路由节点,另外,所述控制网络流量路径的方法的执行主体通常情况下并不能控制所述第二网络的路由节点,因此,在确定数据从所述第二网络流向所述第一网络经过的路径包含的所有路由节点之后,需要将所述第一网络的路由节点和所述第二网络的路由节点去除掉,再为确定的每一个路由节点配置下一跳路由节点,以使得数据到达确定的每一个路由节点时,所述确定的每一个路由节点自动将数据传输到下一跳路由节点,以提高数据的转发效率。
具体的,所述下一跳路由节点是所述路径中所包含的所有路由节点中的节点,且与所述被配置的路由节点相邻,即表征所述下一跳路由节点与所述被配置的路由节点互为邻居节点,所述邻居节点是指一个路由节点与另一个路由节点直接相连的节点,在一个路由节点与另一个路由节点互为邻居节点时,可以确定所述一个路由节点与所述另一个路由节点为相邻节点。
例如,参见图5,针对D3,与D3直接相连的路由节点为P4、P3、P2和D4,则可以确定D3与P4互为邻居节点,D3与P3也互为邻居节点,D3与P2也互为邻居节点,D3与D4也互为邻居节点。
又例如,参见图5,针对P3,与P3直接相连的路由节点为P1、D1、D2、D3和P2,则可以确定P3与P1互为邻居节点,P3与D1也互为邻居节点,P3与D2也互为邻居节点,P3与D3也互为邻居节点,P3与P2也互为邻居节点,而P3与P4以及P5并不直接相连,导致P3和P4不是邻居节点,即表征P3和P4不是相邻节点,以及P3与P5不是邻居节点,即表征P3与P5不是相邻节点。
例如,参见图5,在确定数据从AS2流向AS1的路径为A2->D3->P3->D1->A1时,则路由控制器B1给D3下发路由:
Dest: NextHop:
DEST_IP P3
给P3下发路由:
Dest: NextHop:
DEST_IP D1
给D1下发路由:
Dest: NextHop:
DEST_IP A1
如此,在数据从AS2传输到D3时,由于路由控制器B1已经给D3配置了下一跳路由为P3,导致D3会直接将数据传输给P3,在P3接收到数据时,由于路由控制器B1已经给P3配置了下一跳路由为D1,导致P3也会直接将数据传输给D1,然后D1将数据直接传输给AS1,进而实现了实现了逐邻居选择路由节点的下一跳路由节点为相邻节点的技术效果,由于能够逐邻居选择路由节点的下一跳路由节点为相邻节点,当一路由节点中的数据流量较大时,从而可以将所述路由节点去除在所述确定的路由节点之外,进而能够实现细粒度、灵活的流量疏导。
以及在确定数据从AS3流向AS1的路径为A3->D4->P2->D2->A1时,则路由控制器B1给D4下发路由:
Dest: NextHop:
DEST_IP P2
给P3下发路由:
Dest: NextHop:
DEST_IP D2
给D2下发路由:
Dest: NextHop:
DEST_IP A1
如此,在数据从AS3传输到D3时,由于路由控制器B1已经给D4配置了下一跳路由为P2,导致D4会直接将数据传输给P2,在P2接收到数据时,由于路由控制器B1已经给P2配置了下一跳路由为D2,导致P2也会直接将数据传输给D2,然后D2将数据直接传输给AS1,进而实现了实现了逐邻居选择路由节点的下一跳路由节点为相邻节点的技术效果,由于能够逐邻居选择路由节点的下一跳路由节点为相邻节点,当一路由节点中的数据流量较大时,从而可以将所述路由节点去除在所述确定的路由节点之外,进而能够实现细粒度、灵活的流量疏导。
在另一实施例中,在所述基于所述路由发布信息和接收到的所述第一网络与所述第二网络之间的路由规划信息之后,确定数据从所述第二网络流向所述第一网络经过的路径包含的所有路由节点之前,针对所述N个路由节点中的每一个路由节点,执行以下操作,检测所述N个路由节点中的每一个路由节点是否已被选中。
在具体实施过程中,在所述N个路由节点中的每一个路由节点都未被选中时,确定数据从所述第二网络流向所述第一网络经过的路径包含的所有路由节点;否则,则发送提示信息,用以提示所述路由规划信息不正确。
例如,参见图5,在TI时刻,数据从AS2流向AS1的路由规划信息的规划节点为:D3->P3->D1,且数据从AS3流向AS1的经过的路由路径为:A3->D4->P2->P3->D2->A1,检测D3,P3和D1中的每一个路由节点是否已被选中,由于P3已被选中,则发送语音数据“路由规划信息不正确”给用户,以提示所述路由规划信息不正确,还可以将P3已被选中的信息发送给客户端,以方便重新设置路由规划信息;若数据从AS3流向AS1的经过的路由路径为:A3->D4->P2->D2->A1,由于D3,P3和D1每一个路由节点均未被选中,则可以确定数据从AS2流向AS1经过的路由节点为A2->D3->P3->D1->A1。
如此,能够对所述路由规划信息包含的规划节点进行校验,使得每一条流量路径不会出现交叉的情况,进而能够防止出现多条流量路径出现汇聚点后再分叉的情况,实现了多条流量路径不出现汇聚点的技术效果。
本发明实施例中,本申请技术方案是接收从第一网络向第二网络的路由发布信息,再根据所述路由发布信息,确定数据从所述第二网络流向所述第一网络经过的路径包含的所有路由节点,以及为确定的每一个路由节点配置下一跳路由节点,由于本申请的技术方案为所述确定的每一个路由节点配置了下一跳路由节点,使得数据到所述确定的每一个路由节点时,数据会被自动传输给下一跳路由节点,从而解决了现有技术中存在逐逐邻居选择路由节点的下一跳路由节点为相邻节点的技术问题。
实施例二:
本发明的实施例二提供了一种控制网络流量路径的装置,参见图6,所述装置包括:接收单元601,用于接收从第一网络向第二网络的路由发布信息;路由确定单元602,用于接收接收单元601发送的所述路由发布信息,并根据所述路由发布信息,确定数据从所述第二网络流向所述第一网络经过的路径包含的所有路由节点;配置单元603,用于接收路由确定单元602发送的所述确定的所有路由节点,为确定的每一个路由节点配置下一跳路由节点,其中,所述下一跳路由节点是所述路径中所包含的所有路由节点中的节点,且与所述被配置的路由节点相邻,所述被配置的路由节点不包括所述第一网络的路由节点和所述第二网络的路由节点。
其中,由于所述是从所述第二网络流向所述第一网络的,导致所述确定的所有路由节点必然包含有所述第一网络的路由节点和所述第二网络的路由节点,并可以确定所述第一网络的路由节点为目的节点。
具体的,接收单元601在接收到所述路由发布信息之后,可以根据所述路由发布信息,获取到数据从所述第二网络流向第一网络经过的所有路由节点,在从所有的路由节点中选择一条路径,以使得数据能够通过所述路径从所述第二网络传输到所述第一网络。
较佳的,路由确定单元602包括第一路由确定子单元604,用于基于所述路由发布信息和接收到的所述第一网络与所述第二网络之间的路由规划信息,确定数据从所述第二网络流向所述第一网络经过的路径包含的所有路由节点,其中,所述路由规划信息中的规划节点包括所述第一网络和所述第二网络之间的N个路由节点,所述确定的路由节点包括所述N个路由节点,N为正整数。
其中,所述路由规划信息可以在所述第一网络向所述第二网络进行路由发布之前获取,也可以在进行所述路由发布的过程中获取,还可以在所述路由发布之后获取,本申请不作具体限制。
具体的,所述N个路由节点是指数据从所述第二网络流向所述第一网络是必须经过的节点,所述N个值可以取1,2,5,10,30等值,所述N个路由节点可以是数据从所述第二网络流向所述第一网络时经过的路由节点中的一部分或全部路由节点。
较佳的,在所述N个路由节点为数据从所述第二网络流向所述第一网络时经过的路由节点的一部分路由节点时,在所述N个路由节点为数据从所述第二网络流向所述第一网络时经过的路由节点的一部分路由节点时,第一路由确定子单元604,用于基于所述路由发布信息和接收到的所述第一网络与所述第二网络之间的路由规划信息,确定数据从所述第二网络流向所述第一网络经过的符合预设约束条件的路由节点。
当然,在所述N个路由节点为数据从所述第二网络流向所述第一网络时经过的路由节点的一部分路由节点时,还可以从所述第一网络与所述第二网络之间的路由节点中随机选择一些其它节点,以使得数据通过所述其它节点和所述N个路由节点从所述第二网络流向所述第一网络。
较佳的,第一路由确定子单元604,具体用于选择与所述第二网络连接的路由节点,并针对选择的每一个路由节点执行以下操作,直到选择的路由节点与所述第一网络连接,判断与选择的路由节点连接的路由节点中是否存在有所述N个路由节点中的一个路由节点,以及在判断存在有所述N个路由节点中的一个路由节点时,选择所述N个路由节点中的一个路由节点为下一跳路由节点,以及在判断未存在所述N个路由节点中的一个路由节点时,从与选择的路由节点连接的路由节点中选择符合所述预设约束条件的路由节点作为下一跳路由节点。
其中,所述预设约束条件可以是针对带宽,路由成本、可靠性、时延、负载等中一种或多种进行限制的条件,例如所述预设条件可以是带宽不小于10M,且路由成本最低,还可以仅是带宽不小于20M或者路由成本最低的条件。
例如,参见图2,当路由控制器B1接收到数据从AS2流向AS1的路由规划信息仅包含P3时,由于与AS2连接的路由节点仅有D3,因此,可以确定与AS2连接的路由节点为D3,以所述预设约束条件为路由成本最低为例,针对选择的路由节点D3,在选择与D3连接的路由节点时,D3根据路由控制器B1中的路由表项,从而可以得到与D3的连接的路由节点包括P2,P3,P4和D4,从而判断P2,P3,P4和D4是否包含有所述N个路由节点中的一个路由节点,由于所述N个路由节点为P3,而P2,P3,P4和D4中包含有P3,则将P3作为D3的下一跳的路由节点。
其中,在选择P3的下一跳路由节点时,P3根据路由控制器B1中的路由表项,从而可以得到与P3的连接的路由节点包括P1,D1,D2和P2,由于所述N个路由节点为P3,从而可以判定P1,D1,D2和P2中未包括有所述N个路由节点中的一个路由节点,则从与选择的路由节点连接的路由节点中选择符合所述预设约束条件的路由节点作为下一跳路由节点,而且由于数据需要从AS2流向AS1,因此,可以从与P3连接的路由节点P1,D1,D2和P2中去除掉P1和P2,从D1和D2中进行选择下一跳的路由节点,假设P3到D1的带宽为100M,则P3到D1的路由成本为:cost=10^8/100M=1,而P3到D2的带宽为16M时,则P3到D2的路由成本为:cost=10^8/16M=6,由于P3到D1的路由成本小于P3到D2的路由成本,且所述预设预设条件为路由成本最低,进而可以判定D1为P3的下一跳路由节点。
针对D1,由于D1与AS1的路由节点A1连接,进而可以确定数据从AS2流向AS1的路径为A2->D3->P3->D1->A1。
路由确定单元602包括第二路由确定子单元605,用于根据所述路由发布信息,确定数据从所述第二网络流向所述第一网络经过的符合所述预设约束条件的路由节点。
较佳的,第二路由确定子单元605,具体用于选择与所述第二网络连接的路由节点,并针对选择的每一个路由节点执行以下操作,直到选择的路由节点与所述第一网络连接,以及从与选择的路由节点连接的路由节点中选择符合所述预设约束条件的路由节点作为下一跳路由节点。
具体来讲,在与选择的路由节点连接的路由节点有多个路由节点满足所述预设约束条件时,从所述多个路由节点中选择一个路由节点作为下一跳路由节点,例如所述预设约束条件为带宽不小于10M,可靠性不低于80%时,参见图2,以D3为例,与D3连接的路由节点包括P2,P3,P4和D4,当P2和P3均满足所述预设约束条件时,可以从P2和P3随机选择一个路由节点为D3的下一跳路由节点,也可以根据路由算法从P2和P3中选择一个路由节点与D3之间的路径为最佳路径。
较佳的,配置单元603,还用于在有多个所述第二网络的数据需要传输给所述第一网络时,针对一个所述第二网络,从与选择的路由节点连接的未被选择的所有路由节点中选择符合所述预设约束条件的路由节点作为下一跳路由节点。
具体来讲,在一个路由节点已被选中时,从所述所有路由节点中除去所述已被选中的路由节点中选中下一跳路由节点,参见图2,以D3为例,与D3的连接的路由节点包括P2,P3,P4和D4,在P3已被选中时,则从P2,P4和D4中选择D3的下一跳路由节点,使得每一条流量路径不会出现交叉的情况,进而能够防止出现多条流量路径出现汇聚点后再分叉的情况,实现了多条流量路径不出现汇聚点的技术效果。
本发明实施例中,本申请技术方案是接收从第一网络向第二网络的路由发布信息,再根据所述路由发布信息,确定数据从所述第二网络流向所述第一网络经过的路径包含的所有路由节点,以及为确定的每一个路由节点配置下一跳路由节点,由于本申请的技术方案为所述确定的每一个路由节点配置了下一跳路由节点,使得数据到所述确定的每一个路由节点时,数据会被自动传输给下一跳路由节点,从而解决了现有技术中存在逐逐邻居选择路由节点的下一跳路由节点为相邻节点的技术问题。
实施例三:
本发明的实施例二提供了一种控制网络流量路径的装置,参见图7,所述装置包括:接收器701,用于接收从第一网络向第二网络的路由发布信息;控制器702,用于根据所述路由发布信息,确定数据从所述第二网络流向所述第一网络经过的路径包含的所有路由节点,以及为确定的每一个路由节点配置下一跳路由节点,其中,所述下一跳路由节点是所述路径中所包含的所有路由节点中的节点,且与所述被配置的路由节点相邻,所述被配置的路由节点不包括所述第一网络的路由节点和所述第二网络的路由节点。
其中,接收器701例如可以是WIFI模块,天线等电子设备,进一步的,控制器702可以是单独的处理芯片,也可以集成在所述装置的处理器中。
其中,由于所述是从所述第二网络流向所述第一网络的,导致所述确定的所有路由节点必然包含有所述第一网络的路由节点和所述第二网络的路由节点,并可以确定所述第一网络的路由节点为目的节点。
具体的,接收器701在接收到所述路由发布信息之后,所述装置可以根据所述路由发布信息,获取到数据从所述第二网络流向第一网络经过的所有路由节点,在从所有的路由节点中选择一条路径,以使得数据能够通过所述路径从所述第二网络传输到所述第一网络。
较佳的,控制器702,具体用于基于所述路由发布信息和接收到的所述第一网络与所述第二网络之间的路由规划信息,确定数据从所述第二网络流向所述第一网络经过的路径包含的所有路由节点,其中,所述路由规划信息中的规划节点包括所述第一网络和所述第二网络之间的N个路由节点,所述确定的路由节点包括所述N个路由节点,N为正整数。
其中,所述路由规划信息可以在所述第一网络向所述第二网络进行路由发布之前获取,也可以在进行所述路由发布的过程中获取,还可以在所述路由发布之后获取,本申请不作具体限制。
具体的,所述N个路由节点是指数据从所述第二网络流向所述第一网络是必须经过的节点,所述N个值可以取1,2,5,10,30等值,所述N个路由节点可以是数据从所述第二网络流向所述第一网络时经过的路由节点中的一部分或全部路由节点。
较佳的,在所述N个路由节点为数据从所述第二网络流向所述第一网络时经过的路由节点的一部分路由节点时,在所述N个路由节点为数据从所述第二网络流向所述第一网络时经过的路由节点的一部分路由节点时,控制器702,具体用于基于所述路由发布信息和接收到的所述第一网络与所述第二网络之间的路由规划信息,确定数据从所述第二网络流向所述第一网络经过的符合预设约束条件的路由节点。
当然,在所述N个路由节点为数据从所述第二网络流向所述第一网络时经过的路由节点的一部分路由节点时,还可以从所述第一网络与所述第二网络之间的路由节点中随机选择一些其它节点,以使得数据通过所述其它节点和所述N个路由节点从所述第二网络流向所述第一网络。
较佳的,控制器702,具体用于选择与所述第二网络连接的路由节点,并针对选择的每一个路由节点执行以下操作,直到选择的路由节点与所述第一网络连接,判断与选择的路由节点连接的路由节点中是否存在有所述N个路由节点中的一个路由节点,以及在判断存在有所述N个路由节点中的一个路由节点时,选择所述N个路由节点中的一个路由节点为下一跳路由节点,以及在判断未存在所述N个路由节点中的一个路由节点时,从与选择的路由节点连接的路由节点中选择符合所述预设约束条件的路由节点作为下一跳路由节点。
其中,所述预设约束条件可以是针对带宽,路由成本、可靠性、时延、负载等中一种或多种进行限制的条件,例如所述预设条件可以是带宽不小于10M,且路由成本最低,还可以仅是带宽不小于20M或者路由成本最低的条件。
较佳的,控制器702,还用于根据所述路由发布信息,确定数据从所述第二网络流向所述第一网络经过的符合所述预设约束条件的路由节点。
较佳的,控制器702,具体用于选择与所述第二网络连接的路由节点,并针对选择的每一个路由节点执行以下操作,直到选择的路由节点与所述第一网络连接,以及从与选择的路由节点连接的路由节点中选择符合所述预设约束条件的路由节点作为下一跳路由节点。
具体来讲,在与选择的路由节点连接的路由节点有多个路由节点满足所述预设约束条件时,从所述多个路由节点中选择一个路由节点作为下一跳路由节点,例如所述预设约束条件为带宽不小于10M,可靠性不低于80%时,参见图2,以D3为例,与D3连接的路由节点包括P2,P3,P4和D4,当P2和P3均满足所述预设约束条件时,可以从P2和P3随机选择一个路由节点为D3的下一跳路由节点,也可以根据路由算法从P2和P3中选择一个路由节点与D3之间的路径为最佳路径。
较佳的,控制器702,还用于在有多个所述第二网络的数据需要传输给所述第一网络时,针对一个所述第二网络,从与选择的路由节点连接的未被选择的所有路由节点中选择符合所述预设约束条件的路由节点作为下一跳路由节点。
具体来讲,在一个路由节点已被选中时,从所述所有路由节点中除去所述已被选中的路由节点中选中下一跳路由节点,参见图2,以D3为例,与D3的连接的路由节点包括P2,P3,P4和D4,在P3已被选中时,则从P2,P4和D4中选择D3的下一跳路由节点,使得每一条流量路径不会出现交叉的情况,进而能够防止出现多条流量路径出现汇聚点后再分叉的情况,实现了多条流量路径不出现汇聚点的技术效果。
本发明实施例中,本申请技术方案是接收从第一网络向第二网络的路由发布信息,再根据所述路由发布信息,确定数据从所述第二网络流向所述第一网络经过的路径包含的所有路由节点,以及为确定的每一个路由节点配置下一跳路由节点,由于本申请的技术方案为所述确定的每一个路由节点配置了下一跳路由节点,使得数据到所述确定的每一个路由节点时,数据会被自动传输给下一跳路由节点,从而解决了现有技术中存在逐逐邻居选择路由节点的下一跳路由节点为相邻节点的技术问题。
本领域的技术人员应明白,本发明的实施例可提供为方法、装置(设备)、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、装置(设备)和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (14)
1.一种控制网络流量路径的方法,其特征在于,所述方法包括:
路由控制器接收从第一网络向第二网络的路由发布信息;
所述路由控制器根据所述路由发布信息,确定数据从所述第二网络流向所述第一网络经过的路径包含的所有路由节点;
所述路由控制器为确定的每一个路由节点配置下一跳路由节点,其中,所述下一跳路由节点是所述路径中所包含的所有路由节点中的节点,且与所述被配置的路由节点相邻,所述被配置的路由节点不包括所述第一网络的路由节点和所述第二网络的路由节点。
2.如权利要求1所述的方法,其特征在于,所述路由控制器根据所述路由发布信息,确定数据从所述第二网络流向所述第一网络经过的路径包含的所有路由节点,具体包括:
所述路由控制器基于所述路由发布信息和接收到的所述第一网络与所述第二网络之间的路由规划信息,确定数据从所述第二网络流向所述第一网络经过的路径包含的所有路由节点;
其中,所述路由规划信息中的规划节点包括所述第一网络和所述第二网络之间的N个路由节点,所述确定的路由节点包括所述N个路由节点,N为正整数。
3.如权利要求2所述的方法,其特征在于,所述路由控制器基于所述路由发布信息和接收到的所述第一网络与所述第二网络之间的路由规划信息,确定数据从所述第二网络流向所述第一网络经过的路径包含的所有路由节点,具体包括:
所述路由控制器基于所述路由发布信息和接收到的所述第一网络与所述第二网络之间的路由规划信息,确定数据从所述第二网络流向所述第一网络经过的符合预设约束条件的路由节点,所述预设约束条件为针对带宽、路由成本、可靠性、时延、负载中至少一项进行限制的条件。
4.如权利要求3所述的方法,其特征在于,所述路由控制器基于所述路由发布信息和接收到的所述第一网络与所述第二网络之间的路由规划信息,确定数据从所述第二网络流向所述第一网络经过的符合预设约束条件的路由节点,具体包括:
所述路由控制器选择与所述第二网络连接的路由节点;
所述路由控制器针对选择的每一个路由节点执行以下操作,直到选择的路由节点与所述第一网络连接:
所述路由控制器判断与选择的路由节点连接的路由节点中是否存在有所述N个路由节点中的一个路由节点;
所述路由控制器在判断存在有所述N个路由节点中的一个路由节点时,选择所述N个路由节点中的一个路由节点为下一跳路由节点;
所述路由控制器在判断未存在所述N个路由节点中的一个路由节点时,从与选择的路由节点连接的路由节点中选择符合所述预设约束条件的路由节点作为下一跳路由节点。
5.如权利要求1所述的方法,其特征在于,所述路由控制器根据所述路由发布信息,确定数据从所述第二网络流向所述第一网络经过的路径包含的所有路由节点,具体包括:
所述路由控制器根据所述路由发布信息,确定数据从所述第二网络流向所述第一网络经过的符合预设约束条件的路由节点,所述预设约束条件为针对带宽、路由成本、可靠性、时延、负载中至少一项进行限制的条件。
6.如权利要求5所述的方法,其特征在于,所述路由控制器根据所述路由发布信息,确定数据从所述第二网络流向所述第一网络经过的符合预设约束条件中的路由节点,包括:
所述路由控制器选择与所述第二网络连接的路由节点;
所述路由控制器针对选择的每一个路由节点执行以下操作,直到选择的路由节点与所述第一网络连接:
所述路由控制器从与选择的路由节点连接的路由节点中选择符合所述预设约束条件的路由节点作为下一跳路由节点。
7.如权利要求4或6所述的方法,其特征在于,所述路由控制器从与选择的路由节点连接的路由节点中选择符合预设约束条件的下一跳路由节点,包括:
所述路由控制器在有多个所述第二网络的数据需要传输给所述第一网络时,针对一个所述第二网络,从与选择的路由节点连接的未被选择的所有路由节点中选择符合所述预设约束条件的路由节点作为下一跳路由节点。
8.一种控制网络流量路径的装置,其特征在于,所述装置包括:
接收单元,用于接收从第一网络向第二网络的路由发布信息;
路由确定单元,用于接收所述接收单元发送的所述路由发布信息,并根据所述路由发布信息,确定数据从所述第二网络流向所述第一网络经过的路径包含的所有路由节点;
配置单元,用于接收所述路由确定单元发送的所述确定的所有路由节点,为确定的每一个路由节点配置下一跳路由节点,其中,所述下一跳路由节点是所述路径中所包含的所有路由节点中的节点,且与所述被配置的路由节点相邻,所述被配置的路由节点不包括所述第一网络的路由节点和所述第二网络的路由节点。
9.如权利要求8所述的装置,其特征在于,所述路由确定单元包括第一路由确定子单元,用于基于所述路由发布信息和接收到的所述第一网络与所述第二网络之间的路由规划信息,确定数据从所述第二网络流向所述第一网络经过的路径包含的所有路由节点,其中,所述路由规划信息中的规划节点包括所述第一网络和所述第二网络之间的N个路由节点,所述确定的路由节点包括所述N个路由节点,N为正整数。
10.如权利要求9所述的装置,其特征在于,所述第一路由确定子单元,具体用于基于所述路由发布信息和接收到的所述第一网络与所述第二网络之间的路由规划信息,确定数据从所述第二网络流向所述第一网络经过的符合预设约束条件的路由节点,所述预设约束条件为针对带宽、路由成本、可靠性、时延、负载中至少一项进行限制的条件。
11.如权利要求10所述的装置,其特征在于,所述第一路由确定子单元,具体用于选择与所述第二网络连接的路由节点,并针对选择的每一个路由节点执行以下操作,直到选择的路由节点与所述第一网络连接,判断与选择的路由节点连接的路由节点中是否存在有所述N个路由节点中的一个路由节点,以及在判断存在有所述N个路由节点中的一个路由节点时,选择所述N个路由节点中的一个路由节点为下一跳路由节点,以及在判断未存在所述N个路由节点中的一个路由节点时,从与选择的路由节点连接的路由节点中选择符合所述预设约束条件的路由节点作为下一跳路由节点。
12.如权利要求8所述的装置,其特征在于,所述路由确定单元包括第二路由确定子单元,用于根据所述路由发布信息,确定数据从所述第二网络流向所述第一网络经过的符合预设约束条件的路由节点,所述预设约束条件为针对带宽、路由成本、可靠性、时延、负载中至少一项进行限制的条件。
13.如权利要求12所述的装置,其特征在于,所述第二路由确定子单元,具体用于选择与所述第二网络连接的路由节点,并针对选择的每一个路由节点执行以下操作,直到选择的路由节点与所述第一网络连接,以及从与选择的路由节点连接的路由节点中选择符合所述预设约束条件的路由节点作为下一跳路由节点。
14.如权利要求11或13所述的装置,其特征在于,所述配置单元,还用于在有多个所述第二网络的数据需要传输给所述第一网络时,针对一个所述第二网络,从与选择的路由节点连接的未被选择的所有路由节点中选择符合所述预设约束条件的路由节点作为下一跳路由节点。
Priority Applications (7)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310474162.4A CN104579992B (zh) | 2013-10-11 | 2013-10-11 | 一种控制网络流量路径的方法及装置 |
EP14851634.7A EP3046295B1 (en) | 2013-10-11 | 2014-09-26 | Method and apparatus for controlling network traffic path |
EP22163803.4A EP4089982A1 (en) | 2013-10-11 | 2014-09-26 | Method and apparatus for controlling network traffic path |
PCT/CN2014/087487 WO2015051709A1 (zh) | 2013-10-11 | 2014-09-26 | 一种控制网络流量路径的方法和装置 |
US15/094,621 US10812368B2 (en) | 2013-10-11 | 2016-04-08 | Method and apparatus for controlling network traffic path |
US17/035,239 US11528216B2 (en) | 2013-10-11 | 2020-09-28 | Method and apparatus for controlling network traffic path |
US17/985,647 US11805047B2 (en) | 2013-10-11 | 2022-11-11 | Method and apparatus for controlling network traffic path |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310474162.4A CN104579992B (zh) | 2013-10-11 | 2013-10-11 | 一种控制网络流量路径的方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104579992A CN104579992A (zh) | 2015-04-29 |
CN104579992B true CN104579992B (zh) | 2018-05-29 |
Family
ID=52812519
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310474162.4A Active CN104579992B (zh) | 2013-10-11 | 2013-10-11 | 一种控制网络流量路径的方法及装置 |
Country Status (4)
Country | Link |
---|---|
US (3) | US10812368B2 (zh) |
EP (2) | EP3046295B1 (zh) |
CN (1) | CN104579992B (zh) |
WO (1) | WO2015051709A1 (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104579992B (zh) * | 2013-10-11 | 2018-05-29 | 华为技术有限公司 | 一种控制网络流量路径的方法及装置 |
CN104954894B (zh) * | 2015-06-26 | 2019-03-26 | 网宿科技股份有限公司 | 一种视频流量引导方法、装置及一种电子设备 |
CN108462639B (zh) * | 2016-12-13 | 2020-04-28 | 腾讯科技(深圳)有限公司 | 自治系统中的流量传输控制方法和系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1479496A (zh) * | 2002-08-27 | 2004-03-03 | 华为技术有限公司 | 在三层网络中查找路由下一跳的方法 |
CN1893419A (zh) * | 2005-07-06 | 2007-01-10 | 华为技术有限公司 | 一种路由更新方法 |
CN101076029B (zh) * | 2007-07-12 | 2011-05-11 | 中兴通讯股份有限公司 | 一种边界网关协议递归路由更新的方法 |
CN102273133A (zh) * | 2011-04-29 | 2011-12-07 | 华为技术有限公司 | 网络故障诊断方法及装置和系统 |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8693323B1 (en) * | 2004-04-05 | 2014-04-08 | Verizon Business Global Llc | System and method for managing communications in an access network |
US20060291446A1 (en) * | 2005-06-24 | 2006-12-28 | Donald Caldwell | Systems, methods, and devices for managing routing |
EP1946499B1 (en) * | 2005-10-20 | 2012-01-25 | Cisco Technology, Inc. | Constructing and implementing backup paths in autonomous systems |
US7769888B2 (en) * | 2007-06-15 | 2010-08-03 | Silver Spring Networks, Inc. | Method and system for providing network and routing protocols for utility services |
US8451750B2 (en) * | 2008-10-01 | 2013-05-28 | Cisco Technology, Inc. | Validation of routes advertised by border gateway protocol |
WO2010103909A1 (ja) * | 2009-03-09 | 2010-09-16 | 日本電気株式会社 | OpenFlow通信システムおよびOpenFlow通信方法 |
WO2010105698A1 (en) * | 2009-03-16 | 2010-09-23 | Telefonaktiebolaget Lm Ericsson (Publ) | Inter-domain advertisements in multi-domain networks |
US8773992B2 (en) * | 2010-10-11 | 2014-07-08 | At&T Intellectual Property I, L.P. | Methods and apparatus for hierarchical routing in communication networks |
EP2487844B1 (en) * | 2011-02-02 | 2014-08-06 | Alcatel Lucent | Control unit and method for dynamically controlling the routing within a network |
US9148223B2 (en) * | 2011-07-07 | 2015-09-29 | Ciena Corporation | Ethernet private local area network systems and methods |
US9307044B2 (en) * | 2012-03-28 | 2016-04-05 | At&T Intellectual Property I, L.P. | System and method for routing content based on real-time feedback |
US9306800B2 (en) * | 2013-05-10 | 2016-04-05 | Telefonaktiebolaget L M Ericsson (Publ) | Inter-domain fast reroute methods and network devices |
CN104579992B (zh) * | 2013-10-11 | 2018-05-29 | 华为技术有限公司 | 一种控制网络流量路径的方法及装置 |
-
2013
- 2013-10-11 CN CN201310474162.4A patent/CN104579992B/zh active Active
-
2014
- 2014-09-26 EP EP14851634.7A patent/EP3046295B1/en active Active
- 2014-09-26 WO PCT/CN2014/087487 patent/WO2015051709A1/zh active Application Filing
- 2014-09-26 EP EP22163803.4A patent/EP4089982A1/en active Pending
-
2016
- 2016-04-08 US US15/094,621 patent/US10812368B2/en active Active
-
2020
- 2020-09-28 US US17/035,239 patent/US11528216B2/en active Active
-
2022
- 2022-11-11 US US17/985,647 patent/US11805047B2/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1479496A (zh) * | 2002-08-27 | 2004-03-03 | 华为技术有限公司 | 在三层网络中查找路由下一跳的方法 |
CN1893419A (zh) * | 2005-07-06 | 2007-01-10 | 华为技术有限公司 | 一种路由更新方法 |
CN101076029B (zh) * | 2007-07-12 | 2011-05-11 | 中兴通讯股份有限公司 | 一种边界网关协议递归路由更新的方法 |
CN102273133A (zh) * | 2011-04-29 | 2011-12-07 | 华为技术有限公司 | 网络故障诊断方法及装置和系统 |
Also Published As
Publication number | Publication date |
---|---|
WO2015051709A1 (zh) | 2015-04-16 |
US20230084470A1 (en) | 2023-03-16 |
EP4089982A1 (en) | 2022-11-16 |
CN104579992A (zh) | 2015-04-29 |
US11528216B2 (en) | 2022-12-13 |
US11805047B2 (en) | 2023-10-31 |
US10812368B2 (en) | 2020-10-20 |
EP3046295A1 (en) | 2016-07-20 |
US20160226750A1 (en) | 2016-08-04 |
EP3046295B1 (en) | 2022-08-17 |
US20210099377A1 (en) | 2021-04-01 |
EP3046295A4 (en) | 2016-10-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106375214B (zh) | 一种基于sdn的层次化路由路径确定方法及装置 | |
US8447849B2 (en) | Negotiated parent joining in directed acyclic graphs (DAGS) | |
EP2548341B1 (en) | Alternate down paths for directed acyclic graph (dag) routing | |
US8406153B2 (en) | Affecting node association through load partitioning | |
CN104871490B (zh) | 能够改进能量使用效率的多径通信装置及其用于改进能量使用效率的业务分配方法 | |
US8593986B2 (en) | Lightweight storing mode for constrained computer networks | |
US20140304427A1 (en) | Managing host routes for local computer networks with a plurality of field area routers | |
CN103155499A (zh) | 用于计算点到多点标签交换路径的备份出口的系统和方法 | |
CN101610433A (zh) | 一种支持策略解析的多约束条件路由选择方法 | |
CN108809847A (zh) | 实现负载均衡的方法、装置和网络系统 | |
US11528216B2 (en) | Method and apparatus for controlling network traffic path | |
CN104158739B (zh) | 一种ip流量工程管理方法以及装置 | |
JP2006074600A (ja) | 遅延保証パス設定システム | |
CN103117925A (zh) | 数据报文转发处理方法及装置 | |
CN107483338A (zh) | 一种确定跨域标签交换路径隧道的方法、设备和系统 | |
CN109039922A (zh) | 组播处理方法 | |
CN110099002A (zh) | 一种路径计算方法及装置 | |
CN101483591B (zh) | 一种路由实现方法及路由生成装置 | |
CN105207906B (zh) | 一种业务路径确定方法及装置 | |
CN108075981A (zh) | 一种链路状态数据包的传输方法及路由节点 | |
CN110417653A (zh) | 报文转发方法、装置及报文转发控制方法、装置 | |
CN104320346B (zh) | 一种状态信息发布方法以及装置 | |
CN111245716A (zh) | 域间路由方法、设备和系统 | |
Zhang et al. | A novel segment-shared protection algorithm based on dynamic domain-sequencing scheme for multi-domain optical mesh networks | |
CN114513445A (zh) | 一种发送报文的方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |