CN113595901A - 一种基于边界网关协议的路由选择方法及装置 - Google Patents

一种基于边界网关协议的路由选择方法及装置 Download PDF

Info

Publication number
CN113595901A
CN113595901A CN202010364392.5A CN202010364392A CN113595901A CN 113595901 A CN113595901 A CN 113595901A CN 202010364392 A CN202010364392 A CN 202010364392A CN 113595901 A CN113595901 A CN 113595901A
Authority
CN
China
Prior art keywords
user
routing
routing algorithm
routes
route
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.)
Pending
Application number
CN202010364392.5A
Other languages
English (en)
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.)
Huawei Cloud Computing Technologies Co Ltd
Original Assignee
Huawei Technologies 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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN202010364392.5A priority Critical patent/CN113595901A/zh
Priority to PCT/CN2021/088864 priority patent/WO2021218754A1/zh
Publication of CN113595901A publication Critical patent/CN113595901A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • 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/04Interdomain routing, e.g. hierarchical routing
    • 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/06Deflection routing, e.g. hot-potato routing
    • 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
    • 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/20Hop count for routing purposes, e.g. TTL
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing
    • H04L45/745Address table lookup; Address filtering
    • H04L45/748Address table lookup; Address filtering using longest matching prefix

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

一种基于边界网关协议的路由选择方法及装置,该方法包括:获取基于边界网关协议BGP接收到的L条路由中的N条路由,并获取用户选择的路由算法;其中,所述路由算法为与云场景相对应的路由算法,且所述用户选择的路由算法为预先存储的多种路由算法中的一个;所述L、N为正整数;依据所述用户选择的路由算法,对所述N条路由进行选择,得到一条路由。通过本申请的方案,使得路由算法能够适用于多种场景,并且能够提高选择路由算法的灵活性。

Description

一种基于边界网关协议的路由选择方法及装置
技术领域
本申请涉及互联网技术领域,尤其涉及一种基于边界网关协议的路由选择方法及装置。
背景技术
边界网关协议(border gateway protocol,BGP)用于在不同的自治系统(autonomous system,AS)之间交换路由信息,并且主要用于各运营商网络之间或者运营商网络内部AS之间的互联。近年来,随着公有云的不断兴起,BGP协议用于公有云网络与运营商网络之间的互联。
目前的BGP协议主要用于运营商场景下的路由优选算法。而由于网络场景不同,路由的优选率也会不同,并且公有云场景下对优选出的路由的要求更高,如果在公有云场景下,利用现有的BGP路由优选算法进行路由优选,会使得路由的优选率比较低。也就是说,现有的BGP支持的路由优选算法,对于云场景下的服务不够好,并且路由算法的适用场景少,灵活性较差。
发明内容
本申请提供一种基于边界网关协议的路由选择方法及装置,用以提高选择路由算法的灵活性。
第一方面,本申请提供一种基于边界网关协议的路由选择方法,包括:获取基于边界网关协议BGP接收到的L条路由中的N条路由,并获取用户选择的路由算法;其中,所述路由算法为与云场景相对应的路由算法,且所述用户选择的路由算法为预先存储的多种路由算法中的一个;所述L、N为正整数;依据所述用户选择的路由算法,对所述N条路由进行选择,得到一条路由。
在上述技术方案中,可以根据用户选择的路由算法,对待进行路由选择的路由进行优选,这样使得用户能够灵活选择路由算法,并且使得优选出的路由更符合当前的场景,提高路由优选率。
在一种可能的设计中,所述N条路由具有相同的路由前缀。
在本申请的方案中,对于具有相同路由前缀的路由,需要进行路由优选,以选择出一条最优的路由。
本申请中,可以通过如下几种可能的实现方式,获取用户选择的路由算法:
第一种方式:
在一种可能的设计中,获取用户选择的路由算法之前,所述方法还包括:获取预先存储的多种路由算法,并以图形化界面显示所述多种路由算法。
所述获取用户选择的路由算法,包括:依据用户在所述图形化界面上输入的选择指令,确定用户所选择的路由算法。
在第一种方式中,多种路由可以以图形化界面的形式进行显示,然后用户可以在图形化界面上进行选择,这种方式比较直观,能够方便用户操作,提升用户体验。
第二种方式:
在一种可能的设计中,所述获取用户选择的路由算法,包括:获取用户以命令行界面输入的路由算法。本申请中,用户可以在命令行界面中输入路由算法,以便路由选择装置获取用户输入的路由算法。
需要说明的是,上述两种方式仅是举例,本申请中还可以通过语音、脚本等其它形式,来获取路由算法,本申请对获取路由算法的方式不作限定。
在一种可能的设计中,所述获取用户选择的路由算法,包括:获取用户选择的场景信息,并确定与所述用户选择的场景信息相对应的路由算法。
在上述技术方案中,也可以获取用户选择的场景信息,然后根据用户选择的场景信息,确定与场景信息相对应的路由算法。需要说明是,场景信息也可以通过图形化界面的形式进行显示,以供用户选择,本申请对此不作限定。
在一种可能的设计中,所述与云场景相对应的路由算法中包括如下规则中的至少一项:
本地优先级最高;自治系统路径最短;时延最低;丢包最少;线路成本最低。
在本申请中,路由算法中包括的规则可以为至少一项,并且规则并不限于上述几条规则。不同的场景,对应的路由算法不同,因此在不同的场景下,路由算法中包括的规则也不同。
第二方面,本申请提供一种基于边界网关协议的路由选择装置,包括:
获取单元,用于获取基于边界网关协议BGP接收到的L条路由中的N条路由,并获取用户选择的路由算法;其中,所述路由算法为与云场景相对应的路由算法,且所述用户选择的路由算法为预先存储的多种路由算法中的一个;所述L、N为正整数;选择单元,用于依据所述获取单元获取到的用户选择的路由算法,对所述N条路由进行选择,得到一条路由。
在一种可能的设计中,所述N条路由具有相同的路由前缀。
在一种可能的设计中,所述获取单元还用于:获取用户选择的路由算法之前,获取预先存储的多种路由算法,并以图形化界面显示所述多种路由算法。
所述获取单元具体用于按如下方式获取用户选择的路由算法:依据用户在所述图形化界面上输入的选择指令,确定用户所选择的路由算法。
在一种可能的设计中,所述获取单元具体用于按如下方式获取用户选择的路由算法:获取用户以命令行界面输入的路由算法。
在一种可能的设计中,所述获取单元具体用于按如下方式获取用户选择的路由算法:获取用户选择的场景信息,并确定与所述用户选择的场景信息相对应的路由算法。
在一种可能的设计中,所述与云场景相对应的路由算法中包括如下规则中的至少一项:
本地优先级最高;自治系统路径最短;时延最低;丢包最少;线路成本最低。
关于第二方面或第二方面的各种实施方式所带来的技术效果,可以参考对于第一方面或第一方面的各种实施方式的技术效果的介绍,在此处不作过多赘述。
第三方面,本申请提供一种基于边界网关协议的路由选择设备,该设备具有实现第一方面或第一方面任一种可能实现方式中的基于边界网关协议的路由选择方法的功能。所述功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。
所述装置包括通信接口、处理器和存储器,所述通信接口用于接收和发送数据,所述处理器被配置为支持所述装置执行上述第一方面或第一方面任一种可能实现方式中相应的功能。所述存储器与所述处理器耦合,其保存所述装置必要的程序指令。
第四方面,提供一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述第一方面及各实施方式中的方法。
第五方面,提供一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述第一方面及各实施方式中的方法。
第六方面,提供一种芯片,所述芯片中的逻辑用于执行上述第一方面及各实施方式中的方法。
附图说明
图1为现有技术中的路由选择过程示意图;
图2为本申请实施例提供的一种网络架构图;
图3为本申请实施例提供的一种基于边界网关协议的路由选择方法流程图;
图4为本申请实施例提供的一种BGP路由优选算法的功能模块图;
图5为本申请实施例提供的一种基于边界网关协议的路由选择装置的功能模块示意图;
图6为本申请实施例提供的一种基于边界网关协议的路由选择设备示意图。
具体实施方式
下面将结合附图对本申请实施例作进一步地详细描述。
目前,两个自治系统(autonomous system,AS)之间可通过BGP来交互路由信息,当一个路由器接收到来自其它路由器发送的多条路由之后,若接收到的多条路由中存在目的互联网协议地址(internet protocol address,IP)前缀相同的路由,则需要对目的IP前缀相同的路由进行优选,选择出一条路由。现有技术中,对目的IP前缀相同的路由进行路由选择时依据的规则包括如下规则:
R1、优先选择协议首选值(preferred-value)最大的路由;
R2、优先选择本地优先级(LOCAL_PREF)最高的路由;
R3、优先选择聚合(AGGREGATE)路由;
R4、优先选择AS路径(AS_PATH)最短的路由;
R5、优先选择起源(ORIGIN)属性为内部网关协议(interior gateway protocol,IGP)、外部网关协议(exterior gateway protocol,EGP)、Incomplete的路由;
R6、优先选择多出口区分(multi-exit discriminator,MED)值最低的路由;
R7、依次选择从EBGP(External/Exterior BGP)、联盟、IBGP(Internal/InteriorBGP)学来的路由;
R8、优先选择下一跳(Next_HOP)度量值最低的路由;
R9、优先选择簇列表(CLUSTER_LIST)长度最短的路由;
R10、优先选择起源号(ORIGINATOR_ID)最小的路由;
R11、优先选择路由器号(Router ID)最小的路由器发布的路由;
R12、优先选择网际互联协议(internet protocol,IP)地址最小的对等体发布的路由。
结合图1对现有技术中的路由选择过程进行介绍。如图1所示,为现有技术中的BGP路由优选功能模块图,参阅图1所示。需要说明的是,路由器在接收路由的同时也可能发送路由,以下仅以多个路由器发送,一个路由器接收为例进行说明。
需要说明的是,图1中的“RFC4271”为一种BGP协议版本。
为了描述方便,将接收端的路由器记为路由器1,将发送端的路由器记为路由器2和路由器3。
当路由器1接收到路由器2和路由器3发送的多条路由之后,可将路由保存在Adj-RIBS-In中,然后路由器1对待进行路由选择的路由进行选择,具体可根据上述12条规则进行优选,将优选出的路由保存在Loc-RIB中,最后将选择出的路由下载并转发给其它的路由器。需要说明的是,Adj-RIBS-In、Loc-RIB将在下文中进行介绍,此处先不做具体说明。
具体的,路由器1根据上述12条规则进行优选时,是按照上述12条规则的编号依次进行选择。示例性的,路由器1先根据R1对N(N为正整数)条路由进行优选,如果N条路由的参数都没有preferred-value,或者preferred-value值都相同,则继续根据R2对N条路由进行优选,如果N条路由的参数都没有LOCAL_PREF,或者LOCAL_PREF值都相同,则根据R3对N条路由进行优选,以此类推,直至选择出来一条路由。
由上述路由优选过程可知,现有的这种路由优选算法可以理解为直线型的优选算法。当前的BGP仅支持这一种路由优选算法,不支持多种路由优选算法。
另外,现有的BGP主要用于各运营商网络之间的互联以及运营商内部不同AS之间的互联。近年来,随着公有云的广泛兴起,BGP广泛用于公有云网络与运营商网络的互联。运营商互联场景主要实现不同AS的大量用户终端之间的互通,主要的关注点在于优先确保占比较小的大用户互通的高可用性,为数众多的一般用户正常互通,不出现频繁重大故障即可,并不会花很大心思去随时优化众多一般用户反馈的互通体验(例如,时延,丢包)。而公有云非常关心分布于目标覆盖区域的各个AS中的用户终端上的应用(APP)访问公有云中各种云服务的体验,如时延,丢包,如果用户体验差,可能会导致云服务转而选择迁移到其他网络性能更好的公有云提供商。
也就是说,公有云场景与运营商场景下的关注点不同,在公有云场景下如果利用现有技术中的直线型优选算法,选择出的路由可能并不是公有云场景下的最优路由。
有鉴于此,本申请实施例提供了一种路由选择方法,提供多种路由算法供网络管理员(以下简称“用户”)根据不同的场景进行选择,从而实现多种路由算法并行存在,同时能够适用于多种场景,能够提高灵活性。
本申请实施例涉及的至少一个,包括一个或者多个;其中,多个是指大于或者等于两个。另外,在本申请的描述中,“第一”、“第二”等词汇,仅用于区分描述对象的目的,而不能理解为指示或暗示相对重要性,也不能理解为指示或暗示顺序。
为了便于理解,示例性的给出了与本申请相关概念的说明以供参考,如下所示:
1)边界网关BGP协议:运行于传输控制协议(transmission control protocol,TCP)上的一种自治系统的路由协议。BGP用于在不同的自治系统(autonomous system,AS)之间交换路由信息。当两个AS需要交换路由信息时,每个AS都必须指定一个运行BGP的节点,来代表AS与其他的AS交换路由信息。这个节点可以是一个主机。但通常是路由器来执行BGP。两个AS中利用BGP交换信息的路由器也被称为边界网关(Border Gateway)或边界路由器(Border Router)。
2)自治系统AS:在一个自治系统中的所有路由器必须相互连接,运行相同的路由协议,同时分配同一个自治系统编号。
3)Adj-RIBS-In:存储从邻居的更新(update)报文中学习的路由信息。其中,RIB指路由择域信息库(routing information base,RIB)或称路由表。
4)Loc-RIB:存储BGP发言人根据本地路由策略,从Adj-RIBS-In中选取的路由信息。
5)Adj-RIBS-Out:存储用于向各对等体通告的路由信息。
6)对等体:包括外部对等体和内部对等体。对某BGP发言人,如果与其他BGP发言人通信而且那个BGP发言人在不同的AS,则那个其他BGP发言人称为外部对等体,而如果在相同的AS内,则称为内部对等体。
7)BGP发言人:通过BGP直接连接的路由器就是BGP发言人。BGP发言人可以在同一AS内,也可以在不同AS内。每个AS的BGP发言人互相通信,遵照每个AS建立的策略,交换网络可达性信息。在本申请中,BGP发言人即为边界BGP路由器。
8)IBGP:同一个自治系统AS中的两个或多个对等实体之间运行的BGP。
9)EBGP:归属不同的AS的对等实体之间运行的BGP。
需要说明的是,本申请中为了描述方便,可将“Adj-RIBS-In”记为“第一存储模块”,将“Loc-RIB”记为“第二存储模块”,将“Adj-RIBS-Out”记为“第三存储模块”。
首先,请参阅图2所示,为本申请实施例可以应用到的一种网络架构图,如图2所示,该网络架构可包括:终端用户(USer)、运营商网络下的路由器、公有云场景下的路由器。在图2所示的网络架构下,终端用户可通过互联网(Internet)连接到互联网服务提供商(internet service provider,ISP),也就是运营商网络,然后运营商网络下的边界BGP路由器与公有云边界BGP路由器之间可交互路由信息,从而实现终端用户访问云服务。其中,公有云的入网点(point-of-presence,POP)与公有云的数据中心(data center,DC)或者区域(Region)之间的骨干网相连接。
在图2中,运营商边界BGP路由器与公有云边界BGP路由器之间可交互路由信息,每一个边界BGP路由器在向其它路由器发送路由的同时,也可能接收其它路由器发送的路由。
以下对本申请实施例涉及的路由选择方法进行详细介绍。
如图3所示,为本申请实施例提供的一种基于BGP的路由选择方法流程图,参阅图3所示,该方法包括:
为了描述方便,以下将接收端的路由器记为路由器1,发送端的路由器记为路由器2、路由器3。当然,可以理解的是,发送端的路由器可以有多个,以下仅以两个为例进行说明。
S301:获取接收到的L条路由中的N条路由。
其中,所述L、N为正整数。路由器1接收路由器2和路由器3发送的L条路由,然后将L条路由保存在本地路由信息库中,路由器可从本地路由信息库中获取基于BGP接收到的多条路由。
在一种可能的实现方式中,可以在接收并保存L条路由之后,对L条路由进行划分,得到两部分路由。其中一部分路由为具有相同路由前缀的路由,例如N条路由,即需要进行路由选择的路由,另一部分为不需要进行路由选择的路由。
应理解,本申请中相同的路由前缀可以理解为IP前缀相同,换句话说,可以理解为同一组IP的集合。例如,192.168.0.1到192.168.0.25都属于相同的路由前缀。
当然,在本申请实施例中可以对L条进行分组,例如分为三组,分别为A、B、C。其中,A组中为不需要进行路由选择的路由,B组和C组中为需要进行路由选择的路由。可以理解的是,分组的数量可以分为两组,也可以分为四组等,本申请对此不作限定。
这样,对于路由器1而言,需要对接收到的具有相同路由前缀的路由进行选择,也就是说,假设有N条路由都是需要发送到路由器2,则路由器1需要在N条路由中选择一条路由,发送到路由器2。
以下参阅表1所示,对本申请中涉及到的路由进行实例。如表1所示,为本申请实施例提供的路由表中的部分路由示例。
表1路由示例
Network Nextop MED LocPrf PreVal Path/Ogn
1.0.0.0/24 201.125.254.8 0 1500 0 8151 13335i
1.0.4.0/22 201.125.254.8 0 1500 0 8151 1299 4826 38803 56203i
1.0.4.0/24 201.125.254.8 0 1500 0 8151 1299 4826 38803 56203i
1.0.5.0/24 201.125.254.8 0 1500 0 8151 1299 4826 38803 56203i
1.0.6.0/24 201.125.254.8 0 1500 0 8151 1299 4826 38803 56203i
1.0.7.0/24 201.125.254.8 0 1500 0 8151 1299 4826 38803 56203i
需要说明的是,表1中的Network表示网段,Nextop表示下一跳IP地址,MED表示多出口区分值,LocPrf表示本地优先级,PreVal表示协议首选值,Path表示路径,Ogn表示起源。
可以理解的是,表1中的路由仅是一种示意性说明,本申请并不限于此。
S302:获取用户选择的路由算法。
其中,所述路由算法为与当前场景相对应的路由算法,并且用户选择的路由算法为预先存储的多种路由算法中的一个。需要说明的是,本申请实施例中场景与路由算法之间具有对应关系。例如,场景1与路由算法1相对应,场景2与路由算法2相对应等。
需要说明的是,本申请实施例中可以预先保存场景与路由算法之间的对应关系,例如可以通过表格的形式进行保存,示例性的,路由算法与场景之间的对应关系可参阅表1所示。
表1场景与路由算法之间的对应关系
场景 路由算法
场景1 路由算法1
场景2 路由算法2
场景3 路由算法3
场景4 路由算法4
当然,可以理解的是,表1仅是一种示意性说明,保存的形式并不限于上述表格,本申请对此不做限定。
在一些实施例中,场景可以为运营商场景,例如移动、联动、电信,也可以为云场景,例如公有云场景、私有云场景,当然,也可以为中国广播电视网络有限公司(简称:广电)等,本申请对此不作限定。
以下以公有云为例,对本申请中涉及到的场景对应的路由算法进行介绍。
在公有云场景下,对于终端用户通过Internet访问云服务的体验(例如,时延和丢包)非常敏感。如果用户访问体验不好,可能会卸载手机APP,导致手机上该APP对应的云服务的用户减少。云服务对用户的活跃访问数量非常敏感,一旦用户数量减少会影响云服务的盈利和生存,因此对应的云服务会考虑立即迁移到其他公有云上,这样公有云就流失了一个客户。
基于此,公有云要求自己POP点的边界BGP路由器用路由优选算法优选出的最优路由是能时刻保证用户访问公有云上各种云服务的体验的,例如要求优选出来的路由从时延最低,丢包最低,且承载云入口流量的线路成本最低,线路利用率最低这些限制。
示例性的,在公有云场景下,对应的路由算法可以为:在对多条前缀相同的目的地址的路由进行优选时,可以同时比较路由的LP值,AS-Path,线路的成本以及线路利用率。具体的,可以选择路由的LP值最高;AS-Path最短;线路成本最低;线路利用率最低的路由。需要说明的是,LP即Local Preference,为前文所介绍的本地优先级(LOCAL_PREF),有时候简称LP,应理解其含义相同。
当然,可以理解的是,上述仅是一种示例,公有云场景下的路由算法并不限于此。
也就是说,除现有的12条规则之外,也可以有其它的规则(例如M条规则),比如规则也可以包括线路的成本以及线路利用率等,基于(12+M)条规则组成路由优选算法,以供用户根据不同场景选择。
在本申请一些实施例中,在传统的运营商场景下,主要是对大量终端用户提供尽力而为(Best-effort)连接业务,很少对其中具体业务做具体特殊的保障,因此只要业务不中断就行,对于时延与丢包的波动不敏感。终端用户一旦入网,电话号码与各种银行,电子商务业务绑定,很难转网,所以业务质量有波动对运营商压力没有对公有云业务压力那么大。运营商关注的是建网成本与运维成本,因此采用目前的BGP路由优选算法,更易于组网,易于维护,各方面成本也相对较低。
进一步的,作为一种可能的实施方式,获取用户选择的路由算法之前,所述方法还包括:
获取预先存储的多种路由算法,并以图形化界面显示所述多种路由算法。
在本申请实施例中,用户可以在图像化界面上输入选择指令,路由器依据用户在图形化界面上输入的选择指令,确定用户所选择的路由算法。
作为另一种可能的实施方式,本申请实施例中用户可通过命令行界面输入路由算法,也就是说,路由器可获取用户以命令行界面输入的路由算法,来获取用户获取的路由算法。
当然,可以理解的是,用户也可以通过语音、或其他人类可以感知的方式(例如触觉甚至嗅觉)、或者脚本、文件等其它形式来选择路由算法,本申请对此不作限定。
进一步的,由于本申请中场景与路由算法相对应,在一种可能的实现方式中,可以获取用户选择的场景信息,并确定与所述用户选择的场景信息相对应的路由算法。示例性的,例如路由器获取用户选择的场景为场景1,然后根据表1可知,与场景1对应的路由算法为路由算法1,因此,可确定出与用户选择的场景1相对应的路由算法为路由算法1。
S303:依据用户选择的路由算法,对N条路由进行选择,得到一条路由。
在本申请实施例中,可根据用户选择的路由算法,对具有相同路由前缀的多条路由进行选择,从而选择出一条发送给路由器2的路由。
作为一种示例,路由算法中可包括如下规则:本地优先级最高;自治系统路径最短;时延最低;丢包最少;线路成本最低。当然,路由算法中并不限于上述规则,也可以包括其他的规则。并且规则的数量可以为一个,也可以为多个,本申请对此不作限定。
以下以其中几个参数为例进行说明。例如,用户选择的路由算法要求LP值最高且AS-Path最短。比如,路由算法中包括如下规则:
R2:优先选择本地优先级(LOCAL_PREF)最高的路由;
R4:优先选择AS路径(AS_PATH)最短的路由。
假设具有相同路由前缀的路由有4条,四条路由的部分参数如下示例:
路由1:Local Preference=2000,length of(AS_PATH)=2。
路由2:Local Preference=1000,length of(AS_PATH)=3。
路由3:Local Preference=1500,length of(AS_PATH)=4。
路由4:Local Preference=1000,length of(AS_PATH)=3。
通过对上述四条路由的Local Preference值进行比较可知,路由1的LocalPreference值最大,对四条路由的AS_PATH进行比较可知,路由1的AS_PATH最短,因此,根据用户选择的路由算法,最终可选择出发送给路由器2的路由为路由1。
当然,可以理解的是,上述示例中的路由算法仅是一种示意性说明,本申请中对此不做限定。
如图4所示,为本申请实施例提供的一种BGP路由优选算法的功能模块图,参阅图4所示,在本申请中,路由器1在接收到路由之后,可将路由保存在第一存储模块(Adj-RIBS-In),同时通过路由优选算法选择模块,在路由算法1、路由算法2...路由算法N中选择路由算法,然后根据选择的路由算法对接收到的路由进行优选,优选出的路由放在第二存储模块(Loc-RIB),再将Loc-RIB中的优选路由放在第三存储模块(Adj-RIBS-Out),最后将优选路由广播给其它的路由器。
由于存储模块中保存的路由可能会更新,例如Adj-RIBS-In保存的是当前接收到的路由,当进行路由优选后,在Adj-RIBS-In会生成更新(update)消息,该消息中会包含新增、删除、更新或者撤回的路由,利用update消息可以更新Adj-RIBS-In,在新一轮的路由接收之后,可继续更新Loc-RIB。
图5示出了一种基于边界网关协议的路由选择装置的功能模块示意图。该装置500可包括:获取单元501和选择单元502。
其中,获取单元501,用于获取基于边界网关协议BGP接收到的L条路由中的N条路由,并获取用户选择的路由算法;其中,所述路由算法为与云场景相对应的路由算法,且所述用户选择的路由算法为预先存储的多种路由算法中的一个;所述L、N为正整数。
选择单元502,用于依据所述获取单元502获取到的用户选择的路由算法,对所述N条路由进行选择,得到一条路由。
在一种可能的设计中,所述N条路由具有相同的路由前缀。
在一种可能的设计中,所述获取单元502还用于:获取用户选择的路由算法之前,获取预先存储的多种路由算法,并以图形化界面显示所述多种路由算法。
所述获取单元502具体用于按如下方式获取用户选择的路由算法:依据用户在所述图形化界面上输入的选择指令,确定用户所选择的路由算法。
在一种可能的设计中,所述获取单元502具体用于按如下方式获取用户选择的路由算法:获取用户以命令行界面输入的路由算法。
在一种可能的设计中,所述获取单元502具体用于按如下方式获取用户选择的路由算法:获取用户选择的场景信息,并确定与所述用户选择的场景信息相对应的路由算法。
在一种可能的设计中,所述与云场景相对应的路由算法中包括如下规则中的至少一项:
本地优先级最高;自治系统路径最短;时延最低;丢包最少;线路成本最低。
其中,上述方法实施例涉及的各步骤的所有相关内容均可以援引到对应功能模块的功能描述,在此不再赘述。
本申请实施例中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,另外,在本申请各个实施例中的各功能模块可以集成在一个处理器中,也可以是单独物理存在,也可以两个或两个以上模块集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。
如图6所示为本申请实施例提供的一种基于边界网关协议的路由选择设备600,装置600包括至少一个处理器602,用于实现或用于支持装置600实现如本申请实施例提供的图5所示的选择单元的功能。示例性地,处理器602可以依据所述用户选择的路由算法,对所述N条路由进行选择,得到一条路由等,具体参见方法示例中的详细描述,此处不做赘述。
装置400还可以包括至少一个存储器401,用于存储程序指令。示例性地,存储器401可用于存储路由算法、场景信息等,具体参见方法示例中的详细描述,此处不做赘述。存储器601和处理器602耦合。本申请实施例中的耦合是装置、单元或模块之间的间接耦合或通信连接,可以是电性,机械或其它的形式,用于装置、单元或模块之间的信息交互。处理器602可能和存储器601协同操作。处理器602可能执行存储器601中存储的程序指令和/或数据。所述至少一个存储器中的至少一个可以包括于处理器中。
装置600还可以包括通信接口603,用于通过传输介质和其它设备进行通信。处理器602可以利用通信接口603收发数据。
本申请不限定上述通信接口603、处理器602以及存储器601之间的具体连接介质。本申请实施例在图6中以存储器601、处理器602以及通信接口603之间通过总线604连接,总线在图6中以粗线表示。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图6中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
在本申请实施例中,处理器602可以是通用处理器、数字信号处理器、专用集成电路、现场可编程门阵列或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件,可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接由硬件处理器执行完成,或者由处理器中的硬件及软件模块组合执行完成。
在本申请实施例中,存储器601可以是非易失性存储器,比如硬盘(hard diskdrive,HDD)或固态硬盘(solid-state drive,SSD)等,还可以是易失性存储器(volatilememory),例如RAM。存储器是能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。本申请实施例中的存储器还可以是电路或者其它任意能够实现存储功能的装置,用于存储程序指令。
可选的,本申请实施例中的计算机执行指令也可以称之为应用程序代码,本申请实施例对此不作具体限定。
本申请实施例中还提供一种计算机可读存储介质,包括指令,当其在计算机上运行时,使得计算机执行图3所示的实施例的方法。
本申请实施例中还提供一种计算机程序产品,包括指令,当其在计算机上运行时,使得计算机执行图3所示的实施例的方法。
本申请实施例中还提供一种芯片,所述芯片中的逻辑用于执行图3所示的实施例的方法。
本申请实施例是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。

Claims (15)

1.一种基于边界网关协议的路由选择方法,其特征在于,包括:
获取基于边界网关协议BGP接收到的L条路由中的N条路由,并获取用户选择的路由算法;其中,所述路由算法为与云场景相对应的路由算法,且所述用户选择的路由算法为预先存储的多种路由算法中的一个;所述L、N为正整数;
依据所述用户选择的路由算法,对所述N条路由进行选择,得到一条路由。
2.如权利要求1所述的方法,其特征在于,所述N条路由具有相同的路由前缀。
3.如权利要求1或2所述的方法,其特征在于,获取用户选择的路由算法之前,所述方法还包括:
获取预先存储的多种路由算法,并以图形化界面显示所述多种路由算法;
所述获取用户选择的路由算法,包括:
依据用户在所述图形化界面上输入的选择指令,确定用户所选择的路由算法。
4.如权利要求1或2所述的方法,其特征在于,所述获取用户选择的路由算法,包括:
获取用户以命令行界面输入的路由算法。
5.如权利要求1或2所述的方法,其特征在于,所述获取用户选择的路由算法,包括:
获取用户选择的场景信息,并确定与所述用户选择的场景信息相对应的路由算法。
6.如权利要求1所述的方法,其特征在于,所述与云场景相对应的路由算法中包括如下规则中的至少一项:
本地优先级最高;
自治系统路径最短;
时延最低;
丢包最少;
线路成本最低。
7.一种基于边界网关协议的路由选择装置,其特征在于,包括:
获取单元,用于获取基于边界网关协议BGP接收到的L条路由中的N条路由,并获取用户选择的路由算法;其中,所述路由算法为与云场景相对应的路由算法,且所述用户选择的路由算法为预先存储的多种路由算法中的一个;所述L、N为正整数;
选择单元,用于依据所述获取单元获取到的用户选择的路由算法,对所述N条路由进行选择,得到一条路由。
8.如权利要求7所述的装置,其特征在于,所述N条路由具有相同的路由前缀。
9.如权利要求7或8所述的装置,其特征在于,所述获取单元还用于:获取用户选择的路由算法之前,获取预先存储的多种路由算法,并以图形化界面显示所述多种路由算法;
所述获取单元具体用于按如下方式获取用户选择的路由算法:
依据用户在所述图形化界面上输入的选择指令,确定用户所选择的路由算法。
10.如权利要求7或8所述的装置,其特征在于,所述获取单元具体用于按如下方式获取用户选择的路由算法:
获取用户以命令行界面输入的路由算法。
11.如权利要求7或8所述的装置,其特征在于,所述获取单元具体用于按如下方式获取用户选择的路由算法:
获取用户选择的场景信息,并确定与所述用户选择的场景信息相对应的路由算法。
12.如权利要求7所述的装置,其特征在于,所述与云场景相对应的路由算法中包括如下规则中的至少一项:
本地优先级最高;
自治系统路径最短;
时延最低;
丢包最少;
线路成本最低。
13.一种基于边界网关协议的路由选择设备,其特征在于,包括:存储器、通信接口和处理器;
所述存储器存储有计算机指令;
所述通信接口用于接收和发送数据;
所述处理器用于执行所述存储器所存储的计算机指令,以使所述装置执行如权利要求1-6中任一项所述的方法。
14.一种计算机可读存储介质,其特征在于,所述存储介质存储有计算机指令,当所述计算机指令被计算机执行时,使得所述计算机执行如权利要求1-6中任一项所述的方法。
15.一种计算机程序产品,其特征在于,所述计算机程序产品包括计算机指令,当所述计算机指令被计算机执行时,使得所述计算机执行如权利要求1-6中任一项所述的方法。
CN202010364392.5A 2020-04-30 2020-04-30 一种基于边界网关协议的路由选择方法及装置 Pending CN113595901A (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202010364392.5A CN113595901A (zh) 2020-04-30 2020-04-30 一种基于边界网关协议的路由选择方法及装置
PCT/CN2021/088864 WO2021218754A1 (zh) 2020-04-30 2021-04-22 一种基于边界网关协议的路由选择方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010364392.5A CN113595901A (zh) 2020-04-30 2020-04-30 一种基于边界网关协议的路由选择方法及装置

Publications (1)

Publication Number Publication Date
CN113595901A true CN113595901A (zh) 2021-11-02

Family

ID=78237284

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010364392.5A Pending CN113595901A (zh) 2020-04-30 2020-04-30 一种基于边界网关协议的路由选择方法及装置

Country Status (2)

Country Link
CN (1) CN113595901A (zh)
WO (1) WO2021218754A1 (zh)

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101141382A (zh) * 2006-09-07 2008-03-12 华为技术有限公司 路由更新方法和路由器
CN101355486A (zh) * 2007-07-23 2009-01-28 中国移动通信集团公司 一种路由切换的方法、设备及系统
US8064443B2 (en) * 2009-05-11 2011-11-22 Juniper Networks, Inc. Scalable routing policy construction using dynamic redefinition of routing preference value
US9847939B2 (en) * 2015-10-08 2017-12-19 Cisco Technology, Inc. Optimal route reflection using efficient border gate protocol best path selection
CN106982162B (zh) * 2016-01-19 2020-02-21 华为技术有限公司 用于转发业务流的方法、装置和系统
WO2018217143A1 (en) * 2017-05-24 2018-11-29 Telefonaktiebolaget Lm Ericsson (Publ) Routing table selection in a policy based routing system

Also Published As

Publication number Publication date
WO2021218754A1 (zh) 2021-11-04

Similar Documents

Publication Publication Date Title
EP3055950B1 (en) Ad-hoc on-demand routing through central control
US11563641B1 (en) Shifting network traffic from a network device
EP3718268B1 (en) Remotely and dynamically injecting routes into an ip network
CN109156046B (zh) 一种家庭网关及其转发业务的方法
CN110324263B (zh) 传输组播报文的方法、设备和系统
US11800587B2 (en) Method for establishing subflow of multipath connection, apparatus, and system
US20210377158A1 (en) Best Path Computation Offload In A Network Computing Environment
CN112702773B (zh) 一种通信方法及装置
CN109672613B (zh) 自适应访问方法、装置及电子设备
CN106059917B (zh) 一种路由信息处理方法和装置
WO2022062568A1 (zh) 一种交换机的配置方法及相关设备
US20230006917A1 (en) Route Determining Method and Apparatus and Network Device
US11870683B2 (en) 3GPP network function set adaptation for pre-5G network elements
CN113595901A (zh) 一种基于边界网关协议的路由选择方法及装置
WO2022068484A1 (zh) 一种业务链地址池切片处理方法、装置及系统
CN114079640B (zh) 一种数据处理方法、用户面功能及装置
CN109309619A (zh) 一种域间二维路由协议的实现方法及装置
WO2021218766A1 (zh) 一种基于边界网关协议的路由选择方法及网络设备
CN113840016A (zh) 报文处理方法、装置和计算机可读存储介质
CN111585909A (zh) Tcp报文的负载均衡方法及装置
US10129089B1 (en) Shifting network traffic
CN116319514B (zh) 一种数据处理方法和相关装置
CN113852572B (zh) 一种报文处理方法及装置
CN115550973B (zh) 4g/5g多端视频通信网络拓扑结构判定方法及装置
CN113014481B (zh) 传输链路状态通告的方法、装置、设备及存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
TA01 Transfer of patent application right
TA01 Transfer of patent application right

Effective date of registration: 20220210

Address after: 550025 Huawei cloud data center, jiaoxinggong Road, Qianzhong Avenue, Gui'an New District, Guiyang City, Guizhou Province

Applicant after: Huawei Cloud Computing Technology Co.,Ltd.

Address before: 518129 Bantian HUAWEI headquarters office building, Longgang District, Guangdong, Shenzhen

Applicant before: HUAWEI TECHNOLOGIES Co.,Ltd.

SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination