CN112714066A - 一种bgp对等体的建立方法和装置 - Google Patents
一种bgp对等体的建立方法和装置 Download PDFInfo
- Publication number
- CN112714066A CN112714066A CN201911019566.8A CN201911019566A CN112714066A CN 112714066 A CN112714066 A CN 112714066A CN 201911019566 A CN201911019566 A CN 201911019566A CN 112714066 A CN112714066 A CN 112714066A
- Authority
- CN
- China
- Prior art keywords
- bgp routing
- routing device
- bgp
- link
- link information
- 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
Links
Images
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
-
- 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/74—Address processing for routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/46—Interconnection of networks
- H04L12/4641—Virtual LANs, VLANs, e.g. virtual private networks [VPN]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本申请实施例公开了一种BGP对等体的建立方法和装置,用于使得云化网络架构中的服务器与虚拟机之间通过建立不同的连接链路,以及部署相同的本地链路地址,从而使得该服务器与该虚拟机之间互为BGP对等体。本申请实施例方法包括:第一BGP路由设备获取关联地址和链路信息,该关联地址为该第二BGP路由设备与该第一BGP路由设备之间的连接链路的本地链路地址,该链路信息为该第一BGP路由设备上与该第二BGP路由设备之间的连接链路的链路信息,该链路信息包括端口信息和虚拟局域网VLAN信息;该第一BGP路由设备根据该关联地址和该链路信息与该第二BGP路由设备建立传输控制协议TCP连接,使得该第一BGP路由设备与该第二BGP路由设备互为BGP对等体。
Description
技术领域
本申请涉及通信领域,尤其涉及一种BGP对等体的建立方法和装置。
背景技术
边界网关协议(Border Gateway Protocol,BGP)为自治系统(AutonomousSystem,AS)提供一个无环的路由环境。不同AS采用不同的系统号码来区分。自治系统一般定义为在单一技术管理下,采用同一种内部网关协议和统一度量值在AS内转发数据包,并采用一种外部网关协议将数据包转发到其它AS的一组路由器。每一个AS能够潜在地使用多个内部网关协议(Interior Gateway Protocol,IGP)在AS内部交换路由表,并使用一个外部网关协议(Exterior Gateway Protocol,EGP)将报文发送到AS外。实现BGP有两种类型的BGP会晤(BGP Session)方式,即外部BGP会晤(EBGP Session)和内部BGP会晤(IBGPSession)。
由于当前的云化解决方案(比如云计算或云存储等)的普及,网络结构中服务器或虚拟机作为网关的情况很常见。如图1所示的一种示例性网络架构所示,该网络架构包括虚拟交换机(图1中的VM1,VM2,VM3)和路由器设备(图1中的device1)。其中,该虚拟交换机用于将宿主服务器连接到虚拟机,当前虚拟机也可以运行路由协议,接收网络中路由。路由器设备用于在网络内发布和接收路由,进行业务流量的转发。在该网络结构中一个路由器设备对应的不同虚拟机的可能是相同的LinkLocal地址。若VM1,VM2,VM3运行V6 BGP的路由协议,且常使用linklocal地址进行BGP对等体部署。目前相同的linklocal地址只能用于建立一个BGP对等体。因此,在如图1所示的网络结构中多个虚拟机需要分别部署不同的linklocal地址,才能建立相应的BGP对等体。
这样用户在建立BGP对等体时需要对不同链路进行linklocal地址规划,使得该BGP组网的易用性较差。
发明内容
本申请实施例提供了一种BGP对等体的建立方法和装置,用于使得云化网络架构中的服务器与虚拟机之间通过建立不同的连接链路,且部署相同的本地链路地址,从而使得该服务器与该虚拟机之间互为BGP对等体。
第一方面,本申请实施例提供一种BGP对等体的建立方法,具体应用于云化网络结构中,其中该云化网络结构中服务器作为该第一BGP路由设备,该服务器对接的虚拟机作为该第二BGP路由设备,且该第一BGP路由设备与该第二BGP路由设备均具有自协商能力。该BGP对等体的建立方法具体如下:该第一BGP路由设备获取关联地址和链路信息,其中,该关联地址为该第二BGP路由设备与该第一BGP路由设备之间的连接链路的本地链路地址,该链路信息为该第一BGP路由设备上与该第二BGP路由设备之间的连接链路的链路信息,该链路信息包括端口信息和虚拟局域网(virtual local area network,VLAN)信息;然后该第一BGP路由设备根据该本地链路地址和该链路信息与该第二BGP路由设备建立传输控制协议(Transmission Control Protocol,TCP)连接,从而使得该第一BGP路由设备与该第二BGP路由设备建立邻居关系,从而互为BGP对等体。
本实施例中,该第一BGP路由设备在与该第二BGP路由设备建立邻居关系时,该第一BGP路由设备获取到该第二BGP路由设备的地址信息以及该第一BGP路由设备上与该第二BGP路由设备之间的连接链路对应的端口信息和VLAN信息,即该第一BGP路由设备新增了链路信息来区分该第二BGP路由设备,从而使得云化网络架构中的服务器与虚拟机之间通过建立不同的连接链路,以及部署相同的本地链路地址,从而使得该服务器与该虚拟机之间互为BGP对等体。
可选的,在云化网络结构中,若该第二BGP路由设备的数目大于1,则该第一BGP路由设备与该第二BGP路由设备之间的连接链路中属于该第二BGP路由设备的本地链路地址可以部署为相同的本地链路地址。即在云化网络结构中,在该第一BGP路由设备作为服务器,该第二BGP路由设备作为虚拟机时,该服务器与多个虚拟机之间可能具有相同的本地链路地址(即linklocal地址)。
可选的,在该第一BGP路由设备与该第二BGP路由设备建立邻居关系(即互为BGP对等体)之后,该第一BGP路由设备与该第二BGP路由设备之间交换BGP路由表,其中,该BGP路由表包括该关联地址和该链路信息;然后该第一BGP路由设备根据该关联地址和该链路信息确定下一跳路由设备;最后该第一BGP路由设备向该下一跳路由设备发送数据。即该第一BGP路由设备在确定一下跳路由设备时,同时考虑对端地址、本地地址以及端口信息和VLAN信息,这样可以在对端地址和/或本地地址相同的情况下,可以根据端口信息和VLAN信息确定该下一跳路由设备。
第二方面,本申请实施例提供了一种BGP路由装置,具体为本申请实施例中的第一BGP路由设备,该装置具有实现上述第一方面中第一BGP路由设备行为的功能。所述功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。所述硬件或软件包括一个或多个与上述功能相对应的模块。
在一个可能的实现方式中,该装置包括用于执行以上第一方面各个步骤的单元或模块。例如,该装置包括:收发模块,用于获取关联地址和链路信息,所述关联地址为第二BGP路由设备与所述第一BGP路由设备之间的连接链路的本地链路地址,所述链路信息为所述第一BGP路由设备上与所述第二BGP路由设备之间的连接链路的链路信息,所述链路信息包括端口信息和虚拟局域网VLAN信息;处理模块,用于根据所述关联地址和所述链路信息与所述第二BGP路由设备建立TCP连接,使得所述第一BGP路由设备与所述第二BGP路由设备互为BGP对等体。
可选的,还包括存储模块,用于保存该第一BGP路由设备必要的程序指令和数据。
在一种可能的实现方式中,该装置包括:处理器和收发器,所述处理器被配置为支持第一BGP路由设备执行上述第一方面提供的方法中相应的功能。收发器用于指示该第一BGP路由设备与第二BGP路由设备之间的通信,向第二BGP路由设备发送上述方法中所涉及的信息或指令。可选的,此装置还可以包括存储器,所述存储器用于与处理器耦合,其保存第一BGP路由设备必要的程序指令和数据。
在一种可能的实现方式中,当该装置为第一BGP路由设备内的芯片时,该芯片包括:处理模块和收发模块,所述收发模块例如可以是该芯片上的输入/输出接口、管脚或电路等,该收发模块,用于获取关联地址和链路信息,所述关联地址为第二BGP路由设备与所述第一BGP路由设备之间的连接链路的本地链路地址,所述链路信息为所述第一BGP路由设备上与所述第二BGP路由设备之间的连接链路的链路信息,所述链路信息包括端口信息和虚拟局域网VLAN信息;所述处理模块例如可以是处理器,此处理器用于根据所述关联地址和所述链路信息与所述第二BGP路由设备建立TCP连接,使得所述第一BGP路由设备与所述第二BGP路由设备互为BGP对等体。该处理模块可执行存储单元存储的计算机执行指令,以支持第一BGP路由设备执行上述第一方面提供的方法。可选地,所述存储单元可以为所述芯片内的存储单元,如寄存器、缓存等,所述存储单元还可以是位于所述芯片外部的存储单元,如只读存储器(read-only memory,简称ROM)或可存储静态信息和指令的其他类型的静态存储设备,随机存取存储器(random access memory,简称RAM)等。
在一种可能的实现方式中,该装置包括:处理器,基带电路,射频电路和天线。其中处理器用于实现对各个电路部分功能的控制,基带电路用于生成建立TCP连接的相关信息,经由射频电路进行模拟转换、滤波、放大和上变频等处理后,再经由天线发送给第二BGP路由设备。可选的,该装置还包括存储器,其保存第一BGP路由设备必要的程序指令和数据。
其中,上述任一处提到的处理器,可以是一个通用中央处理器(CentralProcessing Unit,简称CPU),微处理器,特定应用集成电路(application-specificintegrated circuit,简称ASIC),或一个或多个用于控制上述各方面BGP对等体的建立方法的程序执行的集成电路。
第三方面,本申请实施例提供一种计算机可读存储介质,所述计算机存储介质存储有计算机指令,所述计算机指令用于执行上述第一方面中任意可能的实施方式所述的方法。
第四方面,本申请实施例提供一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述各方面中任意一方面所述的方法。
第五方面,本申请提供了一种芯片系统,该芯片系统包括处理器,用于支持第一BGP路由设备实现上述方面中所涉及的功能,例如生成或处理上述方法中所涉及的数据和/或信息。在一种可能的设计中,所述芯片系统还包括存储器,所述存储器,用于保存第一BGP路由设备必要的程序指令和数据,以实现上述各方面中任意一方面的功能。该芯片系统可以由芯片构成,也可以包含芯片和其他分立器件。
第六方面,本申请实施例提供一种通信系统,该系统包括上述方面所述的第一BGP路由设备和第二BGP路由设备。
从以上技术方案可以看出,本申请实施例具有以下优点:该第一BGP路由设备在与该第二BGP路由设备建立邻居关系时,该第一BGP路由设备获取到该第二BGP路由设备的地址信息以及该第一BGP路由设备上与该第二BGP路由设备之间的连接链路对应的端口信息和VLAN信息,即该第一BGP路由设备新增了链路信息来区分该第二BGP路由设备,从而使得云化网络架构中的服务器与虚拟机之间通过建立不同的连接链路,以及部署相同的本地链路地址,从而使得该服务器与该虚拟机之间互为BGP对等体。
附图说明
图1为本申请实施例中网络结构的一个示例性结构示意图;
图2为本申请实施例中BGP对等体的建立方法的一个实施例示意图;
图3为本申请实施例中云化网络结构的一个示例性结构示意图;
图4为本申请实施例中BGP对等体的一个工作流程示意图;
图5为本申请实施例中BGP路由装置的一个实施例示意图;
图6为本申请实施例中BGP路由装置的另一个实施例示意图。
具体实施方式
本申请实施例提供了一种BGP对等体的建立方法和装置,用于使得云化网络架构中的服务器与虚拟机之间通过建立不同的连接链路,且部署相同的本地链路地址,从而使得该服务器与该虚拟机之间互为BGP对等体。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
BGP为AS提供一个无环的路由环境。不同AS采用不同的系统号码来区分。自治系统一般定义为在单一技术管理下,采用同一种内部网关协议和统一度量值在AS内转发数据包,并采用一种外部网关协议将数据包转发到其它AS的一组路由器。每一个AS能够潜在地使用多个IGP在AS内部交换路由表,并使用一个EGP将报文发送到AS外。实现BGP有两种类型的BGP会晤方式,即外部BGP会晤和内部BGP会晤。由于当前的云化解决方案(比如云计算或云存储等)的普及,网络结构中服务器或虚拟机作为网关的情况很常见。如图1所示的一种示例性网络架构所示,该网络架构包括虚拟交换机(图1中的VM1,VM2,VM3)和路由器设备(图1中的device1)。其中,宿主服务器通过路由设备和虚拟交换机连接到虚拟机,当前虚拟机也可以运行路由协议,接收网络中的路由。路由器设备用于在网络内发布和接收路由,进行业务流量的转发。在该网络结构中一个路由器设备对应的不同虚拟机的可能是相同的LinkLocal地址。若VM1,VM2,VM3运行V6 BGP的路由协议,且常使用linklocal地址进行BGP对等体部署。目前相同的linklocal地址只能用于建立一个BGP对等体。因此,在如图1所示的网络结构中多个虚拟机需要分别部署不同的linklocal地址,才能建立相应的BGP对等体。这样用户在建立BGP对等体时需要对不同链路进行linklocal地址规划,使得该BGP组网的易用性较差。
为了解决这一问题,本申请实施例提供如下技术方案:该第一BGP路由设备获取关联地址和链路信息,其中,该关联地址为该第二BGP路由设备与该第一BGP路由设备之间的连接链路的本地链路地址,该链路信息为该第一BGP路由设备上与该第二BGP路由设备之间的连接链路的链路信息,该链路信息包括端口信息和虚拟局域网(virtual local areanetwork,VLAN)信息;然后该第一BGP路由设备根据该本地链路地址和该链路信息与该第二BGP路由设备建立传输控制协议(Transmission Control Protocol,TCP)连接,从而使得该第一BGP路由设备与该第二BGP路由设备建立邻居关系,从而互为BGP对等体。
具体请参阅图2所示,本申请实施例中BGP对等体的建立方法的一个实施例包括:
201、第一BGP路由设备获取关联地址和链路信息,其中,该关联地址为该第二BGP路由设备与该第一BGP路由设备之间的连接链路的本地链路地址,该链路信息为该第一BGP路由设备上与该第二BGP路由设备之间的连接链路的链路信息,该链路信息包括端口信息和VLAN信息。
该第一BGP路由设备在部署该第二BGP路由设备为其BGP对等体时,该第一BGP路由设备获取关联地址以及链路信息。其中,该关联地址为该第二BGP路由设备与该第一BGP路由设备之间的连接链路的本地链路地址,该链路信息为该第一BGP路由设备上与该第二BGP路由设备之间的连接链路的链路信息,该链路信息包括端口信息和VLAN信息。
比如,以图3所示的云化网络结构所示,该第一BGP路由设备为devive1,该第二BGP路由设备包括VM1,VM2和VM3。在该devive1在部署该VM1,VM2和VM3为BGP对等体时,该devive1可以根据自身的接口媒体访问控制(Media Access Control,MAC)地址按照固定算法生成该VM1,VM2和VM3的本地链路地址,这样devive对应的不同虚拟机(如图3所示的VM1,VM2和VM3)可能会产生相同的本地链路地址。如图3所示的,该devive1的接口MAC地址为“FE80::1”,而对于VM1,VM2和VM3生成的本地链路地址均为“FE80::2”。本实施例中,该devive1还可以为该VM1,VM2和VM3分配不同的端口信息和VLAN信息(即链路信息)。
202、该第一BGP路由设备根据该关联地址和该链路信息与所述第二BGP路由设备建立TCP连接,使得该第一BGP路由设备与该第二BGP路由设备互为BGP对等体。
在该第一BGP路由设备与该第二BGP路由设备建立BGP对等体时,该第一BGP路由设备先与该第二BGP路由设备建立TCP连接,并通过该本地链路地址以及链路信息建立该TCP连接;在该TCP连接建立之后,该第一BGP路由设备与该第二BGP路由设备建立了BGP对等体关系。
本实施例中,在该第一BGP路由设备与该第二BGP路由设备建立BGP对等体之后,该第一BGP路由设备与该第二BGP路由设备可以交换路由表,并更新各自保存的路由表,该BGP路由表包括该关联地址和该链路信息;然后该第一BGP路由设备根据该关联地址和该链路信息确定下一跳路由设备;最后该第一BGP路由设备向该下一跳路由设备发送数据。即该第一BGP路由设备在确定一下跳路由设备时,同时考虑本地链路地址和端口信息以及VLAN信息,这样可以在本地链路地址相同的情况下,可以根据端口信息以及VLAN信息确定该下一跳路由设备。
可以理解的是,在该第一BGP路由设备与该第二BGP路由设备互为邻居之后,该第一BGP路由设备与该第二BGP路由设备的工作流程具体可以如图4所示,本实施例中以第一BGP路由设备为例进行说明:
第一阶段,该第一BGP路由设备处于空闲状态(即Idle状态,Idle状态是BGP连接的第一个状态)。这时该第一BGP路由设备需要等待一个启动事件,启动事件出现以后,该第一BGP路由设备初始化资源,复位连接重试计时器(Connect-Retry),向该第二BGP路由设备发起一条TCP连接,同时转入连接状态(即Connect状态)。
第二阶段,该第一BGP路由设备处于连接状态(即Connect状态)。在Connect状态,该第一BGP路由设备启动连接重传定时器,从而向该第二BGP路由设备发起第一个TCP连接。如果连接重试计时器(Connect-Retry)超时,该第一BGP路由设备就向该第二BGP路由设备重新发起TCP连接,并继续保持在Connect状态;如果TCP连接成功,就转入打开消息已发送状态(即OpenSent状态);如果TCP连接失败,就转入活跃状态(即Active状态)。
其中,当该第一BGP路由设备处于活跃状态(即Active状态)时,该第一BGP路由设备总是在试图与该第二BGP路由设备建立TCP连接。如果连接重试计时器(Connect-Retry)超时,该第一BGP路由设备就退回到Connect状态;如果TCP连接成功,该第一BGP路由设备就转入OpenSent状态,并关闭连接重试计时器;如果TCP连接失败,该第一BGP路由设备就继续保持在Active状态,并继续发起TCP连接。
当该第一BGP路由设备处于OpenSent状态时,该第一BGP路由设备与该第二BGP路由设备之间的TCP连接已经建立。该第一BGP路由设备向该第二BGP路由设备之间发送了第一个Open报文,然后该第一BGP路由设备等待该第二BGP路由设备反馈的Open报文。该第一BGP路由设备对收到的Open报文进行正确性检查(比如对该Open报文中的AS号、版本号以及认证码等进行检查),如果有错误,该第一BGP路由设备发送出错通知消息(即Notification报文)给该第二BGP路由设备,并退回到Idle状态;如果没有错误,则该第一BGP路由设备开始发送Keepalive报文给该第二BGP路由设备,并复位Keepalive计时器,开始计时。同时该第一BGP路由设备转入打开消息确认状态(即OpenConfirm状态)。
当该第一BGP路由设备处于OpenConfirm状态,该第一BGP路由设备向该第二BGP路由设备发送Keepalive报文,同时复位保持计时器。如果该第一BGP路由设备收到该第二BGP路由设备反馈的Keepalive报文,则该第一BGP路由设备转入连接已建立状态(即Established状态)。这时该第一BGP路由设备与该第二BGP路由设备之间的BGP对等体关系就建立起来了。如果该第一BGP路由设备与该第二BGP路由设备之间的TCP连接中断,该第一BGP路由设备就退回到Idle状态。
当该第一BGP路由设备处于Established状态时,该第一BGP路由设备与该第二BGP路由设备的BGP邻居关系已经建立。这时,该第一BGP路由设备可以与该第二BGP路由设备交换Update、Keepalive、Route-refresh报文和Notification报文。如果该第一BGP路由设备收到正确的Update或Keepalive报文,那么该第一BGP路由设备就认为该第二BGP路由设备处于正常运行状态,将保持BGP连接。如果该第一BGP路由设备收到错误的Update或Keepalive报文,那么该第一BGP路由设备发送Notification报文通知该第二BGP路由设备,并该第一BGP路由设备转至Idle状态。Route-refresh报文不会改变该第一BGP路由设备的状态。如果收到Notification报文,那么该第一BGP路由设备转至Idle状态。如果该第一BGP路由设备收到TCP拆链通知,那么该第一BGP路由设备断开连接,转至Idle状态。
本实施例中,该第一BGP路由设备在与该第二BGP路由设备建立邻居关系时,该第一BGP路由设备获取到该第二BGP路由设备的地址信息以及该第一BGP路由设备上与该第二BGP路由设备之间的连接链路对应的端口信息和VLAN信息,即该第一BGP路由设备新增了链路信息来区分该第二BGP路由设备,从而使得云化网络架构中的服务器与虚拟机之间通过建立不同的连接链路,以及部署相同的本地链路地址,从而使得该服务器与该虚拟机之间互为BGP对等体。
上面对本申请实施例中的BGP对等体的建立方法进行了描述,下面对本申请实施例中BGP路由装置进行描述。
具体请参阅图5所示,本申请实施例中该BGP路由装置500包括:收发模块501和处理模块502。该BGP路由装置500可以是上述方法实施例中的该第一BGP路由设备,也可以是该第一BGP路由设备内的一个或多个芯片。装置500可以用于执行上述方法实施例中的第一BGP路由设备的部分或全部功能。
例如,该收发模块501可以用于执行上述方法中的步骤201。例如,该收发模块501用于获取关联地址和链路信息,其中,所述关联地址为第二BGP路由设备与所述第一BGP路由设备之间的连接链路的本地链路地址,所述链路信息为所述第一BGP路由设备上与所述第二BGP路由设备之间的连接链路的链路信息,所述链路信息包括端口信息和虚拟局域网VLAN信息。该处理模块502可以用于执行上述方法实施例中的步骤202。例如,处理模块502确定该第一BGP路由设备根据该关联地址以及链路信息与该第二BGP路由设备建立传输控制协议(Transmission Control Protocol,TCP)连接,从而使得该第一BGP路由设备与该第二BGP路由设备互为BGP对等体。
可选的,该收发模块501还用于向该第二BGP路由设备发送相应报文,以及接收该第二BGP路由设备发送的相应报文。
可选的,装置500还包括存储模块503,此存储模块503于处理模块502耦合,使得处理模块502可执行存储模块503中存储的计算机执行指令以实现上述方法实施例中第一BGP路由设备的功能。在一个示例中,装置500中可选的包括的存储模块503可以为芯片内的存储单元,如寄存器、缓存等,所述存储模块503还可以是位于芯片外部的存储单元,如只读存储器(read-only memory,简称ROM)或可存储静态信息和指令的其他类型的静态存储设备,随机存取存储器(random access memory,简称RAM)等。应理解,上述图5对应实施例中第一BGP路由设备的各模块之间所执行的流程与前述图2中对应方法实施例中的第一BGP路由设备执行的流程类似,具体此处不再赘述。
图6示出了上述实施例中一种BGP路由装置600可能的结构示意图,该装置600可以配置成是前述第一BGP路由设备。该装置600可以包括:处理器602、计算机可读存储介质/存储器603、收发器604、输入设备605和输出设备606,以及总线601。其中,处理器,收发器,计算机可读存储介质等通过总线连接。本申请实施例不限定上述部件之间的具体连接介质。
一个示例中,该收发器604获取该第二BGP路由设备的关联地址和链路信息,其中,所述关联地址为第二BGP路由设备与所述第一BGP路由设备之间的连接链路的本地链路地址,所述链路信息为所述第一BGP路由设备上与所述第二BGP路由设备之间的连接链路的链路信息,所述链路信息包括端口信息和虚拟局域网VLAN信息;
该处理器602根据该关联地址以及链路信息与该第二BGP路由设备建立传输控制协议(Transmission Control Protocol,TCP)连接,使得该第一BGP路由设备与该第二BGP路由设备互为BGP对等体。
一个示例中,处理器602可以包括基带电路。收发器604可以包括射频电路,以对报文信息进行调制放大等处理后发送给第二BGP路由设备。
又一个示例中,处理器602可以运行操作系统,控制各个设备和器件之间的功能。收发器604可以包括基带电路和射频电路,例如,可以生成报文信息经由基带电路,射频电路进行处理后发送给第二BGP路由设备。
该收发器604与该处理器602可以实现上述图2中相应的步骤,具体此处不做赘述。
可以理解的是,图6仅仅示出了第一BGP路由设备的简化设计,在实际应用中,第一BGP路由设备可以包含任意数量的收发器,处理器,存储器等,而所有的可以实现本申请的第一BGP路由设备都在本申请的保护范围之内。
上述装置600中涉及的处理器602可以是通用处理器,例如通用中央处理器(CPU)、网络处理器(network processor,NP)、微处理器等,也可以是特定应用集成电路(application-specific integrated circBIt,ASIC),或一个或多个用于控制本申请方案程序执行的集成电路。还可以是数字信号处理器(digital signal processor,DSP)、现场可编程门阵列(field-programmable gate array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。控制器/处理器也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,DSP和微处理器的组合等等。处理器通常是基于存储器内存储的程序指令来执行逻辑和算术运算。
上述涉及的总线601可以是外设部件互连标准(peripheral componentinterconnect,简称PCI)总线或扩展工业标准结构(extended industry standardarchitecture,简称EISA)总线等。该总线可以分为地址总线、数据总线、控制总线等。为便于表示,图6中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
上述涉及的计算机可读存储介质/存储器603还可以保存有操作系统和其他应用程序。具体地,程序可以包括程序代码,程序代码包括计算机操作指令。更具体的,上述存储器可以是只读存储器(read-only memory,ROM)、可存储静态信息和指令的其他类型的静态存储设备、随机存取存储器(random access memory,RAM)、可存储信息和指令的其他类型的动态存储设备、磁盘存储器等等。存储器603可以是上述存储类型的组合。并且上述计算机可读存储介质/存储器可以在处理器中,还可以在处理器的外部,或在包括处理器或处理电路的多个实体上分布。上述计算机可读存储介质/存储器可以具体体现在计算机程序产品中。举例而言,计算机程序产品可以包括封装材料中的计算机可读介质。
可以替换的,本申请实施例还提供一种通用处理系统,例如通称为芯片,该通用处理系统包括:提供处理器功能的一个或多个微处理器;以及提供存储介质的至少一部分的外部存储器,所有这些都通过外部总线体系结构与其它支持电路连接在一起。当存储器存储的指令被处理器执行时,使得处理器执行第一BGP路由设备在图2所述实施例中的BGP对等体的建立方法中的部分或全部步骤,例如图2中的步骤202和/或用于本申请所描述的技术的其它过程。
结合本申请公开内容所描述的方法或者算法的步骤可以硬件的方式来实现,也可以是由处理器执行软件指令的方式来实现。软件指令可以由相应的软件模块组成,软件模块可以被存放于RAM存储器、闪存、ROM存储器、EPROM存储器、EEPROM存储器、寄存器、硬盘、移动硬盘、CD-ROM或者本领域熟知的任何其它形式的存储介质中。一种示例性的存储介质耦合至处理器,从而使处理器能够从该存储介质读取信息,且可向该存储介质写入信息。当然,存储介质也可以是处理器的组成部分。处理器和存储介质可以位于ASIC中。另外,该ASIC可以位于无线接入网设备中。当然,处理器和存储介质也可以作为分立组件存在于第一BGP路由设备中。
可以理解的是,若该第二BGP路由设备也具备相应的部署BGP对等体的能力,则该第二BGP路由设备与该第一BGP路由设备具有相同的结构,此处不再赘述。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。
Claims (11)
1.一种边界网关协议BGP对等体的建立方法,应用于包括第一BGP路由设备和第二BGP路由设备的网络中,其特征在于,包括:
第一BGP路由设备获取关联地址和链路信息,所述关联地址为所述第二BGP路由设备与所述第一BGP路由设备之间的连接链路的本地链路地址,所述链路信息为所述第一BGP路由设备上与所述第二BGP路由设备之间的连接链路的链路信息,所述链路信息包括端口信息和虚拟局域网VLAN信息;
所述第一BGP路由设备根据所述关联地址和所述链路信息与所述第二BGP路由设备建立传输控制协议TCP连接,使得所述第一BGP路由设备与所述第二BGP路由设备互为BGP对等体。
2.根据权利要求1所述的方法,其特征在于,所述第二BGP路由设备的数目大于1时,所述第一BGP路由设备与所述第二BGP路由设备中的各个BGP路由设备之间的连接链路部署相同的本地链路地址。
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
所述第一BGP路由设备与所述第二BGP路由设备之间交换BGP路由表,所述BGP路由表包括所述关联地址和所述链路信息;
所述第一BGP路由设备根据所述关联地址和所述链路信息确定下一跳路由设备;
所述第一BGP路由设备向所述下一跳路由设备发送数据。
4.根据权利要求1至3中任一项所述的方法,其特征在于,所述第一BGP路由设备为服务器,所述第二BGP路由设备为所述服务器对接的虚拟机。
5.一种BGP路由装置,应用于第一BGP路由设备,其特征在于,包括:
收发模块,用于获取关联地址和链路信息,所述关联地址为第二BGP路由设备与所述第一BGP路由设备之间的连接链路的本地链路地址,所述链路信息为所述第一BGP路由设备上与所述第二BGP路由设备之间的连接链路的链路信息,所述链路信息包括端口信息和虚拟局域网VLAN信息;
处理模块,用于根据所述关联地址和所述链路信息与所述第二BGP路由设备建立TCP连接,使得所述第一BGP路由设备与所述第二BGP路由设备互为BGP对等体。
6.根据权利要求5所述的装置,其特征在于,所述第二BGP路由设备的数目大于1时,所述第一BGP路由设备与所述第二BGP路由设备中的各个BGP路由设备之间的连接链路部署相同的本地链路地址。
7.根据权利要求5所述的装置,其特征在于,所述收发模块,还用于与所述第二BGP路由设备之间交换BGP路由表,所述BGP路由表包括所述关联地址和所述链路信息;
所述处理模块,还用于根据所述关联地址和所述链路信息确定下一跳路由设备;
所述收发模块,还用于向所述下一跳路由设备发送数据。
8.根据权利要求5至7中任一项所述的装置,其特征在于,所述第一BGP路由设备为服务器。
9.一种BGP路由装置,其特征在于,包括一个或多个处理器和存储器,其中,所述存储器中存有计算机可读程序,所述处理器调用所述存储器中的程序,用于完成权利要求1至4中任一项所述的方法。
10.一种计算机可读存储介质,所述计算机存储介质存储有计算机指令,所述计算机指令用于执行上述权利要求1至权利要求4中任一项所述的方法。
11.一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述权利要求1至权利要求4中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911019566.8A CN112714066A (zh) | 2019-10-24 | 2019-10-24 | 一种bgp对等体的建立方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911019566.8A CN112714066A (zh) | 2019-10-24 | 2019-10-24 | 一种bgp对等体的建立方法和装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112714066A true CN112714066A (zh) | 2021-04-27 |
Family
ID=75540362
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911019566.8A Pending CN112714066A (zh) | 2019-10-24 | 2019-10-24 | 一种bgp对等体的建立方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112714066A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114726780A (zh) * | 2022-03-23 | 2022-07-08 | 阿里云计算有限公司 | 一种云上到云下的通信方法、设备及存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102449964A (zh) * | 2011-07-22 | 2012-05-09 | 华为技术有限公司 | 一种三层虚拟专有网路由控制方法、装置及系统 |
CN102761482A (zh) * | 2012-06-29 | 2012-10-31 | 杭州华三通信技术有限公司 | 一种bgp邻居的建立方法和设备 |
CN105049350A (zh) * | 2014-04-17 | 2015-11-11 | 思科技术公司 | 分段路由-出口对等工程(sp-epe) |
CN108418701A (zh) * | 2017-02-10 | 2018-08-17 | 中国移动通信集团贵州有限公司 | 建立边界网关协议设备网络拓扑的方法及装置 |
US20190190811A1 (en) * | 2017-12-14 | 2019-06-20 | Lenovo Enterprise Solutions (Singapore) Pte. Ltd. | Automatic sharing of routing information between neighboring routers using a link-local address |
-
2019
- 2019-10-24 CN CN201911019566.8A patent/CN112714066A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102449964A (zh) * | 2011-07-22 | 2012-05-09 | 华为技术有限公司 | 一种三层虚拟专有网路由控制方法、装置及系统 |
CN102761482A (zh) * | 2012-06-29 | 2012-10-31 | 杭州华三通信技术有限公司 | 一种bgp邻居的建立方法和设备 |
CN105049350A (zh) * | 2014-04-17 | 2015-11-11 | 思科技术公司 | 分段路由-出口对等工程(sp-epe) |
CN108418701A (zh) * | 2017-02-10 | 2018-08-17 | 中国移动通信集团贵州有限公司 | 建立边界网关协议设备网络拓扑的方法及装置 |
US20190190811A1 (en) * | 2017-12-14 | 2019-06-20 | Lenovo Enterprise Solutions (Singapore) Pte. Ltd. | Automatic sharing of routing information between neighboring routers using a link-local address |
Non-Patent Citations (1)
Title |
---|
"\"C3-205303 TEI17 29.061 Rel-17, Corrections to IPv4 and IPv6\"", 3GPP TSG_CT\\WG3_INTERWORKING_EX-CN3 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114726780A (zh) * | 2022-03-23 | 2022-07-08 | 阿里云计算有限公司 | 一种云上到云下的通信方法、设备及存储介质 |
CN114726780B (zh) * | 2022-03-23 | 2024-04-02 | 阿里云计算有限公司 | 一种云上到云下的通信方法、设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20210084009A1 (en) | Route generation method and device | |
US10924389B2 (en) | Segment routing based on maximum segment identifier depth | |
US9755958B2 (en) | Fast convergence in VRRP with multipoint bidirectional forwarding detection | |
US11129061B1 (en) | Local identifier locator network protocol (ILNP) breakout | |
EP3125476B1 (en) | Service function chaining processing method and device | |
EP3622777B1 (en) | Local identifier locator network protocol (ilnp) breakout | |
WO2020084335A1 (en) | Using location indentifier separation protocol to implement a distributed user plane function architecture for 5g mobility | |
US10880380B2 (en) | Synchronization of routing information in an edge system cluster | |
EP4046351B1 (en) | Rtps discovery in kubernetes | |
EP3494670B1 (en) | Method and apparatus for updating multiple multiprotocol label switching (mpls) bidirectional forwarding detection (bfd) sessions | |
CN109861913A (zh) | 一种跨内部网关协议的前缀标识通告方法和装置 | |
US11296978B2 (en) | Enablement of multi-path routing in virtual edge systems | |
WO2018042230A1 (en) | Configurable selective packet-in mechanism for openflow switches | |
EP3750073B1 (en) | A method for seamless migration of session authentication to a different stateful diameter authenticating peer | |
US9521073B2 (en) | Enhanced fine-grained overlay transport virtualization multi-homing using per-network authoritative edge device synchronization | |
CN112714066A (zh) | 一种bgp对等体的建立方法和装置 | |
US10250497B1 (en) | Avoiding false duplicate network address detection in virtual router redundancy protocol (VRRP) scenarios | |
US20220294728A1 (en) | Packet Transmission Path Switching Method, Device, and System | |
CN105765903A (zh) | 一种拓扑发现方法及设备 | |
CN112751754B (zh) | 双归接入时选择切换为工作状态的端口的方法和设备 | |
CN113141265B (zh) | 跨设备链路聚合方法及设备 | |
WO2015055103A1 (zh) | 一种配置点连接信息的获取方法及装置 | |
WO2017187222A1 (en) | Robust method of distributing packet-ins in a software defined networking (sdn) network |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |