CN114079670B - 传输路由信息的方法、装置和通信系统 - Google Patents
传输路由信息的方法、装置和通信系统 Download PDFInfo
- Publication number
- CN114079670B CN114079670B CN202010753143.5A CN202010753143A CN114079670B CN 114079670 B CN114079670 B CN 114079670B CN 202010753143 A CN202010753143 A CN 202010753143A CN 114079670 B CN114079670 B CN 114079670B
- Authority
- CN
- China
- Prior art keywords
- routing information
- rib
- data middleware
- request
- data
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5083—Techniques for rebalancing the load in a distributed system
-
- 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/02—Topology update or discovery
- H04L45/04—Interdomain routing, e.g. hierarchical routing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5061—Partitioning or combining of resources
-
- 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/24—Multipath
-
- 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/28—Routing or path finding of packets in data switching networks using route fault recovery
-
- 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
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/12—Avoiding congestion; Recovering from congestion
- H04L47/125—Avoiding congestion; Recovering from congestion by balancing the load, e.g. traffic engineering
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Computer And Data Communications (AREA)
Abstract
本申请实施例提供了传输路由信息的方法、装置和通信系统,属于通信技术领域。传输路由信息的方法应用在包括数据中间件和RIB的系统中,数据中间件和RIB通信。本申请实施例提供的数据中间件可以从RIB获得路由信息,并将从RIB获得的路由信息发送给第三方消费者设备。并且,数据中间件也可以从第三方生产者设备获得路由信息,并将从第三方生产者设备获得的路由信息发送给RIB。因此,采用本申请实施例提供的技术方案,实现了RIB包括的路由信息的开放导出,以及第三方生产者设备生成的路由信息引入到RIB中。
Description
技术领域
本申请涉及通信技术领域,特别涉及传输路由信息的方法、装置和通信系统。
背景技术
相关技术中的路由系统为一个封闭的系统,包括管理面、控制面和转发面。其中,控制面用于生成路由信息(如各种路由表),并将路由信息下发给转发面。
由于相关技术中的路由系统为一个封闭的架构,所以,外部的第三方消费者设备无法获取到该路由系统中的路由信息,这使得路由系统的可观测能力较差。例如,外部的路由安全性分析软件,由于无法获取到路由系统中的路由信息,所以也无法对路由系统的安全性进行分析,相关人员也无法了解到路由系统的安全性。
发明内容
本申请实施例提供了传输路由信息的方法、装置和通信系统,传输路由信息的方法可以应用在包括数据中间件和路由信息库(Routing Information Base,RIB)的系统中,数据中间件和RIB通信。数据中间件可以将从路由信息库RIB获得的路由信息发送给第三方消费者设备,并将从第三方生产者设备获得的路由信息发送给RIB,从而,实现了路由系统的开放。所述传输路由信息的方法、装置和通信系统如下:
第一方面,提供了一种传输路由信息的方法,该方法应用于包括数据中间件和RIB的系统中,所述数据中间件与所述RIB通信,所述方法包括:所述数据中间件接收第一请求,所述第一请求用于请求目标路由信息。响应于所述第一请求,所述数据中间件向第三方消费者设备发送所述目标路由信息,所述目标路由信息由所述数据中间件从所述RIB获得。
本申请实施例所示的方案,数据中间件可以从RIB获得路由信息,并将从RIB获得的路由信息发送到第三方消费者设备,从而,实现了RIB包括的路由信息的开放导出。
并且,数据中间件的存在,使得RIB和第三方消费者设备解耦。第三方消费者设备和RIB互相不感知,RIB和数据中间件的交互,以及数据中间件和第三方消费者设备的交互相互独立,第三方消费者设备无需确定RIB的部署和具体实现。当有多个第三方消费者设备需要获取RIB包括的路由信息时,多个第三方消费者设备可以直接从数据中间件获取所需的路由信息,而无需RIB感知,从而,减轻了RIB的负担,RIB做的处理仅仅为将数据中间件所需的路由信息发送给数据中间件。
在一种可能的实现方式中,所述第一请求包括:所述第三方消费者设备发送的平滑请求,或,所述第三方消费者设备发送的订阅请求,所述订阅请求包括目标类型,所述目标路由信息的类型与所述目标类型对应。
本申请实施例所示的方案,第一请求可以包括至少两种,第一种为第三方消费者设备发送的平滑请求。则在数据中间件接收到第三方消费者设备发送的平滑请求后,响应于该平滑请求,数据中间件根据平滑请求向第三方消费者设备发送平滑路由信息。第二种为第三方消费者设备发送的订阅请求。则数据中间件在接收到第三方消费者设备发送的订阅请求后,响应于该订阅请求,可以立即向第三方消费者设备发送存储的目标类型的路由信息,也可以是周期性的从RIB获取目标类型的路由信息,并周期性的向第三方消费者设备发送目标类型的路由信息,还可以是立即发送和周期性发送的结合,示例性的,数据中间件在接收到订阅请求后,首先,立即向第三方消费者设备发送已存储的目标类型的所有路由信息,然后,后续每当数据中间件新获取到目标类型的路由信息,则实时发送给第三方消费者设备。
在一种可能的实现方式中,所述方法还包括:响应于所述数据中间件存储的路由信息异常,所述数据中间件向所述RIB发送平滑请求。所述数据中间件获取所述RIB根据所述平滑请求发送的平滑路由信息。所述数据中间件存储所述平滑路由信息。
其中,平滑路由信息是指数据中间件根据平滑请求向RIB发送的路由信息。
本申请实施例所示的方案,在数据中间件检测到存储的路由信息异常时,可以向RIB发送平滑请求,以保证存储的路由信息的准确性和完整性。RIB接收到平滑请求之后,可以根据平滑请求向数据中间件发送平滑路由信息。数据中间件接收并存储平滑路由信息。
在一种可能的实现方式中,所述方法还包括:所述数据中间件基于所述平滑路由信息和已存储的路由信息进行对账处理。
其中,所述已存储的路由信息为在获取到所述平滑路由信息之前存储的路由信息。
本申请实施例所示的方案,数据中间件在获取到平滑路由信息之后,还可以根据平滑路由信息和已存储的路由信息进行对账处理。对账处理还可以称为同步处理或平滑处理等,起到生产者和消费者中的数据对齐的目的,对账处理可以为全量对账和增量对账中的任意一种,本申请对此不做限定。
在一种可能的实现方式中,所述方法还包括:所述数据中间件向所述RIB订阅第一类型的路由信息。所述数据中间件获得所述RIB包括的所述第一类型的路由信息,所述第一类型的路由信息包括所述目标路由信息。
本申请实施例所示的方案,数据中间件获得RIB包括的路由信息,可以是获得RIB包括的所有的路由信息,也可以是获得RIB包括的第一类型的路由信息,本申请对此不做限定。
数据中间件获得RIB包括的路由信息之前,需要先向RIB订阅路由信息,订阅时可以是订阅RIB包括的所有路由信息,也可以仅仅订阅第一类型的路由信息。
在一种可能的实现方式中,所述系统还包括RIB代理,所述数据中间件与所述RIB通过所述RIB代理通信。
本申请实施例所示的方案,数据中间件和RIB之间的通信可以通过RIB代理完成。RIB代理可以具有格式转换功能、合规检查功能以及解耦功能中的一种或多种。下面,分别对格式转换功能、合规检查功能以及解耦功能进行解释说明:
格式转换功能:示例性的,RIB代理将从RIB接收到的路由信息的格式转换为与数据中间件对应的格式,然后再发送给数据中间件。RIB代理也可以将从数据中间件接收到的路由信息的格式转换为与RIB对应的格式,然后再发送给RIB。
合规检测功能:示例性的,RIB代理可以对从数据中间件接收到的路由信息(例如,数据中间件存储的来自第三方生产者设备的路由信息)进行合规检查,从而,防止控制面设备接收到不合规的路由信息,造成通信系统故障。
解耦功能:示例性的,RIB代理可以将从RIB接收到的路由信息进行存储,在数据中间件请求时,再发送给数据中间件,还可以将从数据中间件接收到的路由信息进行存储,在RIB请求时,再发送给RIB。从而,实现了数据中间件和RIB之间的解耦,数据中间件和RIB可以不同时工作。
第二方面,提供了一种传输路由信息的方法,该方法应用于包括数据中间件和路由信息库RIB的系统中,所述数据中间件与所述RIB通信,所述方法包括:所述数据中间件获得第三方生产者设备生成的路由信息,所述数据中间件存储所述路由信息,所述数据中间件向所述RIB发送目标路由信息。
本申请实施例所示的方案,数据中间件可以从第三方生产者设备获得路由信息,并将从第三方生产者设备获得的路由信息发送到RIB。从而,实现了外部的第三方生产者设备生成的路由信息导入到RIB中。
并且,数据中间件的存在,使得RIB和第三方生产者设备解耦。第三方生产者设备和RIB互相不感知,RIB和数据中间件的交互,以及数据中间件和第三方生产者设备的交互相互独立,第三方生产者设备无需确定RIB的部署和具体实现。当有多个第三方生产者设备需要向RIB下发路由信息时,多个第三方生产者设备可以直接向数据中间件下发路由信息,再由数据中间件下发给RIB,从而,减轻了RIB的负担。
在一种可能的实现方式中,在所述数据中间件向所述RIB发送目标路由信息之前,还包括:所述数据中间件接收第一请求,所述第一请求用于向所述数据中间件请求目标路由信息。
所述第一请求包括:所述RIB发送的平滑请求,或,所述RIB发送的订阅请求,所述订阅请求包括目标类型,所述目标路由信息的类型与所述目标类型对应。
本申请实施例所示的方案,在一个示例中,数据中间件可以在每次获得第三方生产者设备生成的路由信息后,即将新获得的路由信息发送给RIB,在这个示例中,这些新获得的路由信息即为目标路由信息。在另一个示例中,数据中间件可以响应于接收到的第一请求,向RIB发送目标路由信息。
第一请求可以包括至少两种,第一种为RIB发送的平滑请求。则在数据中间件接收到RIB发送的平滑请求后,响应于该平滑请求,数据中间件根据平滑请求向RIB发送平滑路由信息。
第二种为RIB发送的订阅请求。则数据中间件在接收到RIB发送的订阅请求后,响应于该订阅请求,可以立即向RIB发送存储的目标类型的路由信息,也可以是周期性的从第三方生产者设备获取目标类型的路由信息,并周期性的向RIB发送目标类型的路由信息,还可以是立即发送和周期性发送的结合,示例性的,数据中间件在接收到订阅请求后,首先,立即向RIB发送已存储的目标类型的所有路由信息,然后,后续每当数据中间件新获取到目标类型的路由信息,则实时发送给RIB。
在一种可能的实现方式中,所述数据中间件获得第三方生产者设备生成的路由信息,包括:响应于所述数据中间件存储的路由信息异常,所述数据中间件向所述第三方生产者设备发送平滑请求。所述数据中间件接收所述第三方生产者设备根据所述平滑请求发送的平滑路由信息。所述数据中间件存储所述平滑路由信息。
其中,平滑路由信息是指第三方生产者设备根据平滑请求向数据中间件发送的路由信息。
本申请实施例所示的方案,在数据中间件检测到存储的路由信息异常时,可以向第三方生产者设备发送平滑请求。第三方生产者设备接收到平滑请求之后,可以根据平滑请求向数据中间件发送平滑路由信息。数据中间件接收并存储平滑路由信息。通过上述平滑过程,可以保证数据中间件存储的路由信息的准确性和完整性。
在一种可能的实现方式中,所述数据中间件获得第三方生产者设备生成的路由信息,包括:响应于所述数据中间件与所述第三方生产者设备连接建立,所述数据中间件向所述第三方生产者设备发送平滑请求。所述数据中间件接收所述第三方生产者设备根据所述平滑请求发送的平滑路由信息。所述数据中间件存储所述平滑路由信息。
其中,平滑路由信息是指第三方生产者设备根据平滑请求向数据中间件发送的路由信息。
数据中间件与第三方生产者设备的连接建立,可以是首次连接建立,也可以是连接断开后再次的连接建立。
本申请实施例所示的方案,在数据中间件与第三方设备连接建立时,数据中间件可以向第三方生产者设备发送平滑请求。第三方生产者设备接收到平滑请求之后,可以根据平滑请求向数据中间件发送平滑路由信息。数据中间件接收并存储平滑路由信息。
对于首次连接建立,通过上述平滑过程,可以使数据中间件获取到连接建立之前,第三方生产者设备生成的路由信息。对于非首次连接建立,通过上述平滑过程,可以避免在连接断开过程中,数据中间件存储的路由信息发生异常,保证数据中间件存储的路由信息的准确性和完整性。
在一种可能的实现方式中,所述方法还包括:所述数据中间件基于所述平滑路由信息和已存储的路由信息进行对账处理。
本申请实施例所示的方案,对账处理还可以称为同步处理或平滑处理等,对账处理可以为全量对账和增量对账中的任意一种,本申请对此不做限定。通过对账处理,可以保证数据中间件存储的路由信息的完整性和准确性。
在一种可能的实现方式中,所述路由信息与第一类型对应,所述数据中间件获得第三方生产者设备生成的路由信息,包括:所述数据中间件向所述第三方生产者设备发送订阅请求,所述订阅请求包括所述第一类型,所述订阅请求用于请求所述第一类型对应的路由信息。
本申请实施例所示的方案,数据中间件获得第三方生产者设备生成的路由信息,可以是获得第三方生产者设备生成的所有的路由信息,也可以是获得第三方生产者设备生成的第一类型的路由信息,本申请对此不做限定。
数据中间件获得第三方生产者设备生成的路由信息之前,可以先向第三方生产者设备订阅路由信息,订阅时可以是订阅第三方生产者设备生成的所有路由信息,也可以仅仅订阅第三方生产者设备生成的第一类型的路由信息。
在一种可能的实现方式中,所述系统还包括RIB代理,所述数据中间件与所述RIB通过所述RIB代理通信。
本申请实施例所示的方案,数据中间件和RIB之间的通信可以通过RIB代理完成。RIB代理可以具有格式转换功能、合规检查功能以及解耦功能中的一种或多种。下面,分别对格式转换功能、合规检查功能以及解耦功能进行解释说明:
格式转换功能:示例性的,RIB代理将从RIB接收到的路由信息的格式转换为与数据中间件对应的格式,然后再发送给数据中间件。RIB代理也可以将从数据中间件接收到的路由信息的格式转换为与RIB对应的格式,然后再发送给RIB。
合规检测功能:示例性的,RIB代理可以对从数据中间件接收到的路由信息(例如,数据中间件存储的来自第三方生产者设备的路由信息)进行合规检查,从而,防止控制面设备接收到不合规的路由信息,造成通信系统故障。
解耦功能:示例性的,RIB代理可以将从RIB接收到的路由信息进行存储,在数据中间件请求时,再发送给数据中间件,还可以将从数据中间件接收到的路由信息进行存储,在RIB请求时,再发送给RIB。从而,实现了数据中间件和RIB之间的解耦,数据中间件和RIB可以不同时工作。
第三方面,提供了一种传输路由信息的装置,所述装置包括数据中间件,所述数据中间件与RIB通信,所述数据中间件包括:
接收模块,用于接收第一请求,所述第一请求用于请求目标路由信息;
发送模块,用于响应于所述第一请求,向第三方消费者设备发送所述目标路由信息,所述目标路由信息由所述数据中间件从所述RIB获得。
在一种可能的实现方式中,所述第一请求包括:
所述第三方消费者设备发送的平滑请求;或,所述第三方消费者设备发送的订阅请求,所述订阅请求包括目标类型,所述目标路由信息的类型与所述目标类型对应。
在一种可能的实现方式中,所述发送模块,还用于响应于所述存储的路由信息异常,向所述RIB发送平滑请求;
所述数据中间件还包括获取模块和存储模块;
所述获取模块,用于获取所述RIB根据所述平滑请求发送的平滑路由信息;
所述存储模块,用于存储所述平滑路由信息。
在一种可能的实现方式中,所述数据中间件还包括对账模块,用于:
基于所述平滑路由信息和已存储的路由信息进行对账处理,其中,所述已存储的路由信息为在获取到所述平滑路由信息之前存储的路由信息。
在一种可能的实现方式中,所述数据中间件还包括订阅模块,用于向所述RIB订阅第一类型的路由信息;
所述数据中间件还包括获取模块,所述获取模块,用于获得所述RIB包括的所述第一类型的路由信息,所述第一类型的路由信息包括所述目标路由信息。
在一种可能的实现方式中,所述装置还包括所述RIB。
在一种可能的实现方式中,所述装置还包括RIB代理,所述数据中间件和所述RIB通过所述RIB代理通信。
第四方面,提供了一种传输路由信息的装置,所述装置包括数据中间件,所述数据中间件与RIB通信,所述数据中间件包括:
获取模块,用于获得第三方生产者设备生成的路由信息;
存储模块,用于存储所述路由信息;
发送模块,用于向所述RIB发送目标路由信息。
在一种可能的实现方式中,在向所述RIB发送目标路由信息之前,所述获取模块还用于接收第一请求,所述第一请求用于向所述数据中间件请求目标路由信息。
所述第一请求包括:所述RIB发送的平滑请求;或,所述RIB发送的订阅请求,所述订阅请求包括目标类型,所述目标路由信息的类型与所述目标类型对应。
在一种可能的实现方式中,所述发送模块,还用于响应于存储的路由信息异常,向所述第三方生产者设备发送平滑请求;
所述获取模块,还用于接收所述第三方生产者设备根据所述平滑请求发送的平滑路由信息;
所述存储模块,还用于存储所述平滑路由信息。
在一种可能的实现方式中,所述发送模块,还用于响应于与所述第三方生产者设备连接建立,向所述第三方生产者设备发送平滑请求;
所述获取模块,用于接收所述第三方生产者设备根据所述平滑请求发送的平滑路由信息;
所述存储模块,还用于存储所述平滑路由信息。
在一种可能的实现方式中,所述路由信息与第一类型对应,所述发送模块,还用于向所述第三方生产者设备发送订阅请求,所述订阅请求包括所述第一类型,所述订阅请求用于请求所述第一类型对应的路由信息。
在一种可能的实现方式中,所述装置还包括所述RIB。
在一种可能的实现方式中,所述装置还包括RIB代理,所述数据中间件和所述RIB通过所述RIB代理通信。
第五方面,提供了一种通信系统,所述通信系统包括第一网络设备,所述第一网络设备包括第一方面或第二方面任一项所述的装置。
在一种可能的实现方式中,所述通信系统还包括第三方生产者设备,所述第三方生产者设备用于向所述第一网络设备中的数据中间件下发路由信息。
在一种可能的实现方式中,所述通信系统还包括第三方消费者设备,所述第三方消费者设备用于从所述第一网络设备中的所述数据中间件获取路由信息。
第六方面,提供了一种通信系统,所述通信系统包括第一网络设备和第二网络设备,所述第一网络设备包括如第三方面任一项所述的装置或如第四方面任一项所述的装置,所述第二网络设备包括RIB。
第七方面,提供了一种网络设备,所述网络设备包括处理器和存储器;
所述存储器存储有一个或多个程序,所述一个或多个程序被配置成由所述处理器执行,用于实现如第一方面或第二方面任一项所述的方法。
第八方面,提供了一种计算机可读存储介质,所述计算机可读存储介质包括指令,当所述计算机可读存储介质在网络设备上运行时,使得所述网络设备执行如第一方面或第二方面所述的方法。
第九方面,提供了一种包含指令的计算机程序产品,当所述计算机程序产品在网络设备上运行时,所述网络设备执行如第一方面或第二方面所述的方法。
第十方面,提供了一种芯片,所述芯片包括可编程逻辑电路和/或程序指令,当所述芯片运行时用于实现上述第一方面或第二方面所述的方法。
本申请实施例提供的技术方案带来的有益效果是:
本申请实施例提供的传输路由信息的方法中,数据中间件可以从RIB获得路由信息,并将从RIB获得的路由信息发送给第三方消费者设备。从而,实现了RIB中的路由信息的开放导出,可用于外部的路由安全性分析软件根据RIB包括的路由信息,对路由系统的安全性进行分析或其他场景。
附图说明
图1是本申请实施例提供的一种通信系统的架构图;
图2是本申请实施例提供的一种数据中间件的功能示意图;
图3是本申请实施例提供的一种数据中间件的结构示意图;
图4是本申请实施例提供的一种传输路由信息的方法的流程图;
图5是本申请实施例提供的一种传输路由信息的方法的流程图;
图6是本申请实施例示出的一种RIB向数据中间件发送路由信息交互图;
图7是本申请实施例示出的一种第三方消费者设备消费数据中间件中的路由信息的交互图;
图8是本申请实施例示出的一种第三方生产者设备向数据中间件下发路由信息的的交互图;
图9是本申请实施例提供的一种RIB消费数据中间件中的路由信息的交互图;
图10是本申请实施例提供的一种传输路由信息的装置的结构示意图;
图11是本申请实施例提供的另一种传输路由信息的装置的结构示意图;
图12是本申请实施例提供的一种网络设备的结构示意图;
图13是本申请实施例提供的另一种网络设备的结构示意图;
图14是本申请实施例提供的一种通信系统的示意图。
具体实施方式
本申请实施例提供了一种用于传输路由信息通信系统。
如图1所示,该通信系统中包括路由信息库(Routing Information Base,RIB)和数据中间件,RIB和数据中间件通信,数据中间件还可以称为数据代理(Data Broker),RIB例如,可以为常规的网际互连协议(Internet Protocol,IP)路由表,或,多协议标签交换(Multi Protocol Label Switching,MPLS)标签表等。除了RIB表之外,RIB还可以包括RIB表对应的管理模块,在本申请中涉及到的RIB的逻辑处理,均可以由RIB中的管理模块执行。RIB和数据中间件可以是运行在网络设备中的应用程序,数据中间件存在对应的存储空间存储路由信息,RIB可以存在独立的存储空间存储路由信息,也可以与数据中间件共用一个存储空间。数据中间件还可以为一个独立的网络设备或服务器。
该系统中还可以包括控制面和转发面。其中,控制面可以控制RIB生成路由信息,并基于路由信息进行路由选路处理,下发优选路由信息给转发面,还可以将生成的路由信息发送到数据中间件中。数据中间件可以存储接收到的路由信息,并将存储的路由信息对外开放给第三方消费者设备。除此之外,数据中间件还可以接收并存储外部的第三方生产者设备生成的路由信息,并将第三方生产者设备生成的路由信息发送给RIB。相应的,RIB可以根据第三方生产者设备生成的路由信息以及自身生成的路由信息进行统一的优选路由选路处理。
为了使得RIB和数据中间件之间的交互更加安全,在路由系统中还可以包括RIB代理(RIB Broker)。RIB和数据中间件之间所有的数据交互,可以均通过RIB代理来实现。RIB代理可以仅仅是RIB和数据中间件之间的一个适配接口,仅具有适配功能。除了适配功能之外,RIB代理还可以具有独立的存储空间,在这种情况下,RIB代理可以将RIB和数据中间件解耦,RIB和数据中间件之间的交互划分为RIB和RIB代理之间的交互以及RIB代理和数据中间件之间的交互两个过程,这两个交互过程可以独立运行。
另外,在上述第三方设备(第三方消费者设备和/或第三方生产者设备)中可以运行有路由协议应用(Application,APP),路由协议APP可以生成,和/或,消费或获得数据中间件中的路由信息。为了使得路由协议APP和数据中间件之间的交互更加顺畅,在第三方设备中可以运行有RIB客户端(RIB Client),RIB Client可以认为是路由协议APP和数据中间件之间的一个适配接口。另外,上述第三方设备可以认为是路由系统之外的设备,也可以认为是路由系统中的设备。
需要说明的是,第三方消费者设备和第三方生产者设备可以为两个第三方设备,也可以为一个第三方设备,即存在一种第三方设备,该第三方设备可以作为生产者生成路由信息给数据中间件,也可以作为消费者从数据中间件消费或获得路由信息。
为了便于理解本申请,下面分别对本申请涉及到的RIB代理、数据中间件和RIBClient进行更加详细的说明:
1、RIB代理:
(1)从数据中间件获取路由信息,并将路由信息发送给RIB,由RIB根据所有路由进行统一选路,产生最终路由优选结果。
(2)从RIB获取路由信息,该路由信息可以包括路由优选信息或其他非路由优选信息,并将获取到的路由信息发送到中间件。
(3)对从数据中间件获取到的路由信息进行检查,包括合法性检查和容量限制检查,以及,将从数据中间件获取到的路由信息的格式转换成控制面内部格式。
(4)将从RIB获取到的路由信息的格式转换成数据中间件可接受的格式。
2、数据中间件:
(1)数据中间件的简要说明:
数据中间件不同于业界常用的消息代理(Message Broker),Message Broker是面向通讯消息的中间件,是为消息通讯的两端提供解耦的中间件,本质是服务间的通信通道。而数据中间件是面向服务间业务数据的中间件,是数据的生产者和消费者之间为了降低运行耦合、提升数据可靠性以及便于扩容而设置的数据外置载体,本质是数据载体,存储了生产者生产的数据。
由于数据中间件的上述特性,如图2所示,当新消费者上线时,不需要生产者感知,只需要数据中间件从自己的存储中发送数据给新消费者即可。而Message Broker只作为生产者和消费者之间的通信通道,新消费者上线,还需要生产者感知,由生产者通过MessageBroker把数据下发给新消费者。
(2)数据中间件具有的功能:
数据中间件是将原有的数据进行了实体外置,因此数据中间件对于数据的处理是需要和非外置时具备相同的能力,所以数据中间件具有以下功能:
支持数据的平滑对账,保证数据的正确性和完整性。
支持数据的老化,保证生产者故障及恢复场景的数据一致性。
支持消费者上线时批量历史数据和实时数据同步推送。
支持数据的多副本存储可靠性。
支持多副本数据的强一致性或其他一致性策略。
(3)数据中间件的基本组成,在一个示例中,可如图3所示:
消息队列(Message Queue,MQ):数据的输出本质也是通讯,因此数据中间件需要具备基本的消息队列功能。
数据库(DataBase,DB):数据外置后的存储介质,一旦有了这个DB,当新的消费者上线后,就不用重新向生产者重新请求数据,只需要从DB获取数据并发送给新上线的消费者即可。
负载分担、故障容错和集群管理部件:为提升数据可靠性和高性能,需要支持分布式多实例的消息队列和DB,因此数据中间件还可以具有集群和容错管理系统。
3、RIB Client:
RIB Client可以认为是路由协议APP和数据中间件之间的适配接口,为路由协议APP提供下发路由和引入路由的标准接口,并且为路由协议APP屏蔽了RIB部署和具体实现。具体的功能可以如下所述:
(1)RIB Client向路由协议APP提供路由下发接口:
支持路由协议APP批量下发路由信息和实时下发路由信息。
支持给数据中间件发布路由时,多条路由打大包,提高下发效率。
支持按前缀下发,即同一前缀,多负载分担时一起下发,避免负载分担时同一前缀多次下发。
(2)RIB Client向路由协议APP提供路由引入接口:
支持路由协议APP批量引入路由信息和实时引入路由信息。
支持按前缀引入,即同一前缀,多负载分担时同时引入,避免负载分担时同一前缀多次引入。
本申请实施例提供了一种传输路由信息的方法,如图4所示,该方法应用于包括数据中间件和RIB的系统中,数据中间件和RIB通信,该方法可以由数据中间件执行,也可以由包括数据中间件的设备执行。下面将结合具体实施方式,对该方法的处理流程进行详细说明,内容可以如下:
步骤401,数据中间件接收第一请求,第一请求用于请求目标路由信息。
其中,第一请求包括第三方消费者设备发送的平滑请求,或,第三方消费者设备发送的订阅请求,在订阅请求中包括目标类型,该目标类型是指第三方消费者设备向数据中间件订阅的路由信息的类型。第三方消费者设备中运行有路由协议APP,该路由协议APP可以消费路由信息,例如,可以为路由安全性分析APP和/或路由变化统计及分析APP。目标类型可以为边界网关协议(Border Gateway Protocol,BGP)类型的路由信息,或其他类型。
第三方消费者设备至少可以在以下三种情况下向数据中间件发送平滑请求:
第一,第三方消费者设备新添加为数据中间件的消费者时,可以向数据中间件发送平滑请求,以将第三方消费者设备在添加消费者成功之前,数据中间件获取到的路由信息批量发送给第三方消费者设备。
第二,第三方消费者设备在检测到存储的来自数据中间件的路由信息异常(如丢失路由信息)时,可以向数据中间件发送平滑请求,以重新获取数据中间件中存储的路由信息,保证第三方消费者设备获取到的路由信息的准确性和完整性。
第三,第三方消费者设备与数据中间件发生连接中断情况下,第三方消费者设备无法得知在一中断过程中,数据中间件是否获取到了新的路由信息,则在连接恢复后,第三方消费者设备可以向数据中间件发送平滑请求,以获取数据中间件中存储的路由信息,保证第三方消费者设备获取到的路由信息的准确性和完整性。
步骤402,响应于第一请求,数据中间件向第三方消费者设备发送目标路由信息,目标路由信息由数据中间件从RIB获得。
其中,目标路由信息的类型与目标类型对应。
本申请实施例所示的方案,数据中间件响应于第一请求,向第三方消费者设备发送目标路由信息时,根据第一请求的类型的不同,第三方消费者设备发送目标路由信息的机制也不同。
示例性的,如果第一请求为第三方消费者设备发送的平滑请求,则在数据中间件接收到第三方消费者设备发送的平滑请求后,响应于该平滑请求,数据中间件根据平滑请求向第三方消费者设备发送路由信息。
如果第一请求为第三方消费者设备发送的订阅请求,则数据中间件在接收到第三方消费者设备发送的订阅请求后,响应于该订阅请求,可以立即向第三方消费者设备发送存储的目标类型的路由信息,也可以是周期性的从RIB获取目标类型的路由信息,并周期性的向第三方消费者设备发送目标类型的路由信息,还可以是上述立即发送和周期性发送的结合,例如,数据中间件在接收到订阅请求后,首先,立即向第三方消费者设备发送已存储的目标类型的所有路由信息,然后,后续每当数据中间件新获取到目标类型的路由信息,则实时发送给第三方消费者设备。
目标路由信息是由数据中间件从RIB获得的,下面,对数据中间件从RIB获得路由信息的过程进行示例性说明:
在数据中间件获得RIB包括的路由信息时,数据中间件可以获得RIB包括的所有的路由信息,也可以仅仅获得某些特定类型的路由信息,示例性的,数据中间件向RIB订阅第一类型的路由信息。数据中间件获得RIB包括的第一类型的路由信息。其中,第一类型的路由信息可以为BGP类型的路由信息,或其它类型。
数据中间件在获取RIB包括的路由信息时,可以是批量获取和实时获取的结合。示例性的,数据中间件在新添加为RIB的消费者时,先批量获取RIB的历史路由信息,在一个示例中,这些历史路由信息的类型为数据中间件向RIB订阅的路由信息类型。然后,后续每当RIB生成数据中间件所订阅的路由信息,则实时发送给数据中间件,数据中间件实时获取RIB生成的路由信息。
另外,如果数据中间件检测到存储的路由信息异常,可以从RIB重新获取路由信息,以保证数据中间件存储的路由信息的准确性和完整性。则相应的处理过程可以如下所述:响应于数据中间件存储的路由信息异常,数据中间件向RIB发送平滑请求。数据中间件获取RIB根据平滑请求发送的平滑路由信息,其中,平滑路由信息是指RIB根据平滑请求向数据中间件发送的路由信息。然后,数据中间件可以基于平滑路由信息和已存储的路由信息进行对账处理。其中,已存储的路由信息为在获取到平滑路由信息之前存储的路由信息。需要补充说明的是,对账处理还可以称为同步处理或平滑处理等,起到生产者和消费者中的数据对齐的目的,对账处理可以为全量对账和增量对账中的任意一种,本申请对此不做限定。
除此之外,数据中间件中还可以存储有来自第三方生产者设备的路由信息,则数据中间件还可以将来自第三方生产者设备的路由信息发送给第三方消费者设备。
以上,RIB和数据中间件之间的交互可以是RIB和数据中间件之间直接交互,也可以是通过RIB代理实现交互。在一个示例中,当RIB和数据中间件之间通过RIB代理交互,则数据中间件可以先向RIB代理请求路由信息,RIB代理响应于该请求,RIB代理向数据中间件发送从RIB获得的路由信息。在一个示例中,RIB代理还可以进行格式转换处理,如将从RIB接收到的路由信息的格式转换为与数据中间件相适应的格式,然后再发送给数据中间件。
本申请实施例还提供了一种传输路由信息的方法,如图5所示,该方法应用于包括数据中间件和RIB的系统中,数据中间件与RIB通信,该方法可以由数据中间件执行,也可以由包括数据中间件的设备执行。下面将结合具体实施方式,对该方法的处理流程进行详细说明,内容可以如下:
步骤501,数据中间件获得第三方生产者设备生成的路由信息。
其中,第三方生产者设备中运行有路由协议APP,该路由协议APP可以生成路由信息。
本申请实施例所示的方案,数据中间件可以先向第三方生产者设备订阅路由信息,然后,数据中间件再获得第三方生产者设备生成的数据中间件所订阅的路由信息。在订阅路由信息时,可以订阅第三方生产者设备生成的所有类型的路由信息,也可以订阅特定类型的路由信息(如第一类型,示例性的,可以为BGP类型的路由信息)。
在数据中间件获取第三方生产者设备生成的路由信息时,可以是批量获取和实时获取的结合。示例性的,数据中间件新添加为第三方生产者设备的消费者时,先批量获取第三方生产者设备的历史路由信息。在一个示例中,这些历史路由信息的类型为数据中间件向第三方生产者设备订阅的路由信息类型。然后,后续每当第三方生产者设备生成数据中间件所订阅的路由信息,则实时发送给数据中间件,数据中间件实时获取第三方生产者设备生成的路由信息。
步骤502,数据中间件存储路由信息。
本申请实施例所示的方案,在数据中间件获取到第三方生产者设备生成的路由信息之后,即可以将获取到的路由信息存储。
如果检测到数据中间件存储的从第三方生产者设备获取到的路由信息异常,可以从第三方生产者设备重新获取路由信息,则相应的处理过程可以如下所述:响应于数据中间件存储的路由信息异常,数据中间件向第三方生产者设备发送平滑请求。数据中间件接收第三方生产者设备根据平滑请求发送的平滑路由信息。数据中间件存储平滑路由信息。其中,平滑路由信息是指第三方生产者设备根据平滑请求向数据中间件发送的路由信息。
除了在检测到存储的路由信息异常时,向第三方生产者设备发送平滑请求之外,数据中间件在与第三方生产者设备连接建立时,也可以向第三方生产者设备发送平滑请求,具体的处理过程可以如下所述:响应于数据中间件与第三方生产者设备连接建立,数据中间件向第三方生产者设备发送平滑请求。数据中间件接收第三方生产者设备根据平滑请求发送的平滑路由信息。数据中间件存储平滑路由信息。其中,上述连接建立可以是首次连接建立,也可以是连接中断后的再次连接建立。
在获得平滑路由信息之后,数据中间件可以基于平滑路由信息和已存储的路由信息进行对账处理,其中,已存储的路由信息为在获取到平滑路由信息之前存储的路由信息。从而,保证数据中间件存储的路由信息的完整性和准确性。需要补充说明的是,对账处理还可以称为同步处理或平滑处理等,对账处理可以为全量对账和增量对账中的任意一种,本申请对此不做限定。示例性的,第三方生产者设备与数据中间件的通信发生故障,在故障过程中第三方生产者设备可能删除了部分数据,等通信重新恢复后,此时重新平滑数据,数据中间件检测到平滑路由信息和已存储路由信息相比少了一部分,由于第三方生产者设备对于删除数据无法再发送给数据中间件,所以,数据中间件可以将这些已存储的路由信息中比平滑路由信息多的部分删除。
步骤503,数据中间件向RIB发送目标路由信息。
在一个示例中,数据中间件可以在每次获得第三方生产者设备生成的路由信息后,即将新获得的路由信息发送给RIB,在这个示例中,这些新获得的路由信息即为目标路由信息。
在另一个示例中,数据中间件可以响应于接收到的第一请求,向RIB发送目标路由信息。
其中,第一请求包括RIB发送的平滑请求,或,RIB发送的订阅请求,订阅请求包括目标类型,目标路由信息的类型与目标类型对应。示例性的,目标类型可以为数据中间件存储的来自第三方生产者设备的类型的路由信息,例如,可以为第三方生产者设备生成BGP类型的路由信息。RIB发送第一请求,可以由RIB中包括的管理模块执行。
RIB可以在至少两种情况下向数据中间件发送平滑请求:
第一,RIB新添加为数据中间件的消费者时,可以向数据中间件发送平滑请求,以将RIB在添加消费者成功之前,数据中间件获取到的路由信息批量平滑给RIB。
第二,RIB在检测到存储的来自数据中间件的路由信息异常(如丢失路由信息)时,可以向数据中间件发送平滑请求,以重新获取数据中间件中存储的路由信息,保证RIB获取到的路由信息的完整性。
本申请实施例所示的方案,数据中间件响应于第一请求,向第三方消费者设备发送目标路由信息时,根据第一请求的类型的不同,第三方消费者设备发送目标路由信息的机制也不同。
示例性的,如果第一请求为RIB发送的平滑请求,则在数据中间件接收到RIB发送的平滑请求后,响应于该平滑请求,数据中间件根据平滑请求向RIB发送平滑路由信息。
如果第一请求为RIB发送的订阅请求,则数据中间件在接收到RIB发送的订阅请求后,响应于该订阅请求,可以立即向RIB发送存储的目标类型的路由信息,也可以是周期性的从第三方生产者设备获取目标类型的路由信息,并周期性的向RIB发送目标类型的路由信息,还可以是立即发送和周期性发送的结合,例如,数据中间件在接收到订阅请求后,首先,立即向RIB发送已存储的目标类型的所有路由信息,然后,后续每当数据中间件新获取到目标类型的路由信息,则实时发送给RIB。
以上,RIB和数据中间件之间的交互可以是RIB和数据中间件之间直接交互,也可以是通过RIB代理实现交互。在一个示例中,当RIB和数据中间件之间通过RIB代理交互,由于数据中间件中存储的路由信息有可能是来自第三方生产者设备的,所以,这些路由信息的安全性是不确定的,因此,为了保证路由系统的安全性,可以通过RIB代理对来自数据中间件的路由信息进行检查和格式转换等处理,并将检查合格且格式转换后的路由信息向RIB发送。
下面,结合具体的应用场景,对本申请实施例提供的技术方案进行说明:
1、RIB向数据中间件下发路由信息,这一过程可以是通过RIB代理实现的,下面,结合图6对RIB向数据中间件下发路由信息的过程进行说明:
(1)RIB代理作为RIB的消费者从RIB订阅路由信息,其中,订阅的路由可以是RIB包括的所有路由信息,也可以是RIB包括的某些类型的路由信息,如BGP类型的路由信息。
(2)RIB将RIB代理订阅的路由信息发送给RIB代理。
(3)RIB代理作为数据中间件的生产者将引入的路由信息发送给数据中间件。在RIB代理将路由信息发送给数据中间件之前,还可以对待发送的路由信息进行格式转换,转换成数据中间件可以接受的格式。
需要补充的说明的是,RIB代理和RIB之间的交互以及RIB代理与数据中间件之间的交互,可以是互相解耦的。此时,RIB代理可以存在独立的存储空间存储路由信息。
2、第三方消费者设备消费数据中间件中的路由信息,下面,结合图7对第三方消费者设备消费数据中间件的路由信息的过程进行说明:
(1)第三方消费者设备通过运行的路由协议APP(该路由协议可以消费路由信息)调用RIB Client提供的接口添加消费者,表明要消费路由信息。
(2)RIB Client接收路由协议APP发送的添加消费者请求,向数据中间件添加消费者。并在添加成功后,通知路由协议APP。
(3)数据中间件接收添加消费者的请求,创建路由协议APP表信息,并通过RIBClient向路由协议APP发送平滑请求。
(4)RIB Client接收路由协议APP发送的平滑请求,并发送给数据中间件,触发数据中间件把此次添加消费者之前的路由信息(可以是数据中间件中所有路由信息,也可以是某些特定类型的路由信息)都批量发送到路由协议APP。
(5)数据中间件将此次添加消费者成功之前的路由信息批量发送给路由协议APP,示例性的,数据中间件向路由协议APP发送路由信息的过程可以如下所述:
数据中间件通过RIB Client向路由协议APP发送“批量Begin”。第一路由协议APP接收到“批量Begin”之后确定路由信息的平滑过程开始。其中,“批量Begin”为一个表示平滑过程开始的消息。
数据中间件通过RIB Client向路由协议APP批量下发路由信息。
数据中间件在此次平滑的路由信息平滑完成后,通过RIB Client向路由协议APP发送“批量End”。其中,“批量End”为一个表示平滑过程结束的消息。
(6)路由协议APP根据接收到的路由信息进行处理,如进行路由安全分析和路由变化统计分析,或将路由信息发送给其他消费者设备。
(7)后续数据中间件每次获取到第三方消费者设备所订阅的路由信息,都会通过RIB Client的实时路由引入接口向第三方消费者设备下发路由信息。
3、第三方生产者设备向数据中间件下发路由信息,下面,结合图8对第三方生产者设备下发路由信息的过程进行说明:
(1)第三方生产者设备通过运行的路由协议APP(该路由协议APP可以生产路由信息)调用RIB Client提供的接口添加生产者,表明要生产路由信息。
(2)RIB Client接收路由协议APP发送的添加生产者请求后,向数据中间件添加生产者。在添加成功后,通知给路由协议APP。
(3)数据中间件接收路由协议APP添加生产者的请求,创建路由协议APP表信息,并通过RIB Client向路由协议APP发起平滑请求。
(4)RIB Client接收数据中间件发送的平滑请求,并发送给路由协议APP,触发路由协议APP把此次添加生产者之前的路由信息(可以是路由协议APP生成的所有路由信息,也可以是某些特定类型的路由信息)都批量平滑到数据中间件。
(5)路由协议APP将此次添加生产者成功之前的路由信息批量平滑给数据中间件,示例性的,路由协议APP向数据中间件平滑路由信息的过程可以如下所述:
路由协议APP通过RIB Client向数据中间件发送“批量Begin”。数据中间件接收到“批量Begin”之后确定路由信息的平滑过程开始。其中,“批量Begin”为一个表示平滑过程开始的消息。
路由协议APP通过RIB Client向数据中间件批量下发路由信息。
路由协议APP在此次平滑的路由信息平滑完成后,通过RIB Client向数据中间件发送“批量End”。其中,“批量End”为一个表示平滑过程结束的消息。
数据中间件在接收到“批量End”后,确定此次平滑结束。
(6)数据中间件将路由协议APP平滑的路由信息都存储下来。需要补充说明的是,数据中间件支持保证数据的可靠性,如果出现丢数据,或者,数据中间件故障,都会触发给路由协议APP和/或RIB发送平滑请求,从而触发数据重新恢复。
(7)后续路由协议APP每次生成数据中间件所订阅的路由信息,都会调用RIBClient提供的实时路由下发接口向数据中间件实时下发路由信息。
4、RIB消费数据中间件的路由信息,下面,结合图9对RIB消费数据中间件的路由信息的过程进行说明:
(1)RIB代理作为数据中间件的消费者,订阅数据中间件中的路由信息,例如,订阅数据中间件中存储的来自第三方生产者设备生成的路由信息。
(2)在数据中间件将RIB代理创建为消费者时,数据中间件会将历史路由信息向RIB推送,这些历史路由信息可以是从第三方生产者设备获取到的路由信息。后续,数据中间件再获取到RIB订阅的路由信息时,会实时的推送给RIB代理。
(3)RIB代理作为RIB的生产者,将从数据中间件消费到的路由信息下发给RIB。另外,RIB代理还会检查从数据中间件获取到的路由信息的合规性,并且将路由信息的格式转换成控制面内部格式。
(4)RIB作为RIB代理的消费者,从RIB代理接收路由信息,并根据路由信息(包括RIB生成的路由信息和第三方生产者设备生成的路由信息)进行路由统一选路。
需要补充的说明的是,RIB代理和RIB之间的交互以及RIB代理与数据中间件之间的交互,可以是互相解耦的。此时,RIB代理存在独立的存储空间存储路由信息。
以上介绍了本申请实施例示出的传输路由信息的方法,以下介绍本申请实施例的传输路由信息的装置,以下介绍的传输路由信息的装置可实现上述任一项传输路由信息的方法中的任意功能。
图10是本申请实施例提供的一种传输路由信息的装置的结构示意图,如图10所示,该传输路由信息的装置包括数据中间件模块,该数据中间件模块可以包括:
接收模块1001,用于接收第一请求,所述第一请求用于请求目标路由信息;
发送模块1002,用于响应于第一请求,向第三方消费者设备发送目标路由信息,目标路由信息由数据中间件从RIB获得。
在一种可能的实现方式中,发送模块1002,还用于响应于存储的路由信息异常,向RIB发送平滑请求;
该数据中间件还包括获取模块和存储模块;
获取模块,用于获取RIB根据平滑请求发送的平滑路由信息;
存储模块,用于存储平滑路由信息。
在一种可能的实现方式中,数据中间件还包括对账模块,用于:
基于平滑路由信息和已存储的路由信息进行对账处理,其中,已存储的路由信息为在获取到平滑路由信息之前存储的路由信息。
在一种可能的实现方式中,数据中间件还包括订阅模块,用于向RIB订阅第一类型的路由信息;
数据中间件还包括获取模块,获取模块,用于获得RIB包括的第一类型的路由信息,第一类型的路由信息包括目标路由信息。
在一种可能的实现方式中,该装置还包括上述RIB。
在一种可能的实现方式中,装置还包括RIB代理,数据中间件和RIB通过RIB代理通信。
需要说明的是,上述接收模块1001、发送模块1002、获取模块、存储模块、对账模块和订阅模块可以由处理器实现,或者处理器配合存储器来实现,或者,处理器执行存储器中的程序指令来实现。
传输路由信息的装置在传输路由信息时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将传输路由信息的装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的传输路由信息的装置与图4、图6、图7或图9示出的传输路由信息的方法属于同一构思,其具体实现过程详见对应的方法部分,这里不再赘述。
图11是本申请实施例提供的又一种传输路由信息的装置的结构示意图,如图11所示,该传输路由信息的装置包括数据中间件模块,该数据中间件模块可以包括:
获取模块1101,用于获得第三方生产者设备生成的路由信息;
存储模块1102,用于存储获得的路由信息;
发送模块1103,用于向RIB发送目标路由信息。
在一种可能的实现方式中,在向RIB发送目标路由信息之前,获取模块1101还用于接收第一请求,第一请求用于向数据中间件请求目标路由信息;第一请求包括RIB发送的平滑请求;或,RIB发送的订阅请求,订阅请求包括目标类型,目标路由信息的类型与目标类型对应。
在一种可能的实现方式中,发送模块1103,还用于响应于存储的路由信息异常,向第三方生产者设备发送平滑请求;
获取模块1101,还用于接收第三方生产者设备根据平滑请求发送的平滑路由信息;
存储模块1102,还用于存储平滑路由信息。
在一种可能的实现方式中,发送模块1103,还用于响应于与第三方生产者设备连接建立,向第三方生产者设备发送平滑请求;
获取模块1101,用于接收第三方生产者设备根据平滑请求发送的平滑路由信息;
存储模块1102,还用于存储平滑路由信息。
在一种可能的实现方式中,路由信息与第一类型对应,发送模块1103,还用于向第三方生产者设备发送订阅请求,订阅请求包括第一类型,订阅请求用于请求第一类型对应的路由信息。
在一种可能的实现方式中,装置还包括RIB。
在一种可能的实现方式中,装置还包括RIB代理,数据中间件和RIB通过RIB代理通信。
需要说明的是,上述获取模块1101、存储模块1102和发送模块1103可以由处理器实现,或者处理器配合存储器来实现,或者,处理器执行存储器中的程序指令来实现。
传输路由信息的装置在传输路由信息时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将传输路由信息的装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的传输路由信息的装置与图5、图8或图9示出的传输路由信息的方法属于同一构思,其具体实现过程详见对应的方法部分,这里不再赘述。
与本申请提供的方法实施例以及虚拟装置实施例相对应,本申请实施例还提供了一种网络设备,下面对网络设备的硬件结构进行介绍。
下面描述的网络设备1200或网络设备1300可以用于实现上述任一项所述的传输路由信息的方法,网络设备1200或网络设备1300中的各硬件、模块和上述其他操作和/或功能分别为了实现方法实施例中的各种步骤和方法,关于网络设备1200或网络设备1300如何传输路由信息的的详细流程,具体细节可参见上述方法实施例,为了简洁,在此不再赘述。其中,上文任一项传输路由信息的方法的各步骤通过网络设备1200或网络设备1300处理器中的硬件的集成逻辑电路或者软件形式的指令完成。结合本申请实施例所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法的步骤。为避免重复,这里不再详细描述。
网络设备1200或网络设备1300对应于上述虚拟装置实施例中的任意一种传输路由信息的装置,上述传输路由信息的装置的每个功能模块采用网络设备1200或网络设备1300的软件实现。换句话说,上述传输路由信息的装置包括的功能模块为网络设备1200或网络设备1300的处理器读取存储器中存储的程序代码后生成的。
参见图12,图12示出了本申请一个示例性实施例提供的网络设备1200的结构示意图,该网络设备1200可以包括上述数据中间件,该网络设备1200可以实现上述任一所述的传输路由信息的方法。该网络设备1200可以由一般性的总线体系结构来实现。另外,网络设备1200还可以包括RIB。
网络设备1200包括至少一个处理器1201、通信总线1202、存储器1203以及至少一个通信接口1204。
处理器1201可以是一个通用CPU、NP、微处理器、或者可以是一个或多个用于实现本申请方案的集成电路,例如,专用集成电路(application-specific integratedcircuit,ASIC),可编程逻辑器件(programmable logic device,PLD)或其组合。上述PLD可以是复杂可编程逻辑器件(complex programmable logic device,CPLD),现场可编程逻辑门阵列(field-programmable gate array,FPGA),通用阵列逻辑(generic array logic,GAL)或其任意组合。
通信总线1202用于在上述组件之间传送信息。通信总线1202可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
存储器1203可以是只读存储器(read-only memory,ROM)或可存储静态信息和指令的其它类型的静态存储设备,也可以是随机存取存储器(random access memory,RAM)或者可存储信息和指令的其它类型的动态存储设备,也可以是电可擦可编程只读存储器(electrically erasable programmable read-only Memory,EEPROM)、只读光盘(compactdisc read-only memory,CD-ROM)或其它光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其它磁存储设备,或者是能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其它介质,但不限于此。存储器1203可以是独立存在,并通过通信总线1202与处理器1201相连接。存储器1203也可以和处理器1201集成在一起。
通信接口1204使用任何收发器一类的装置,用于与其它设备或通信网络通信。通信接口1204包括有线通信接口,还可以包括无线通信接口。其中,有线通信接口例如可以为以太网接口。以太网接口可以是光接口,电接口或其组合。无线通信接口可以为无线局域网(wireless local area networks,WLAN)接口,蜂窝网络通信接口或其组合等。
在具体实现中,作为一种实施例,处理器1201可以包括一个或多个CPU,如图12中所示的CPU0和CPU1。
在具体实现中,作为一种实施例,网络设备1200可以包括多个处理器,如图12中所示的处理器1201和处理器1205。这些处理器中的每一个可以是一个单核处理器(single-CPU),也可以是一个多核处理器(multi-CPU)。这里的处理器可以指一个或多个设备、电路、和/或用于处理数据(如计算机程序指令)的处理核。
在具体实现中,作为一种实施例,网络设备1200还可以包括输出设备1206和输入设备1207。输出设备1206和处理器1201通信,可以以多种方式来显示信息。例如,输出设备1206可以是液晶显示器(liquid crystal display,LCD)、发光二级管(light emittingdiode,LED)显示设备、阴极射线管(cathode ray tube,CRT)显示设备或投影仪(projector)等。输入设备1207和处理器1201通信,可以以多种方式接收用户的输入。例如,输入设备1207可以是鼠标、键盘、触摸屏设备或传感设备等。
在一些实施例中,存储器1203用于存储执行本申请方案的程序代码1210,处理器1201可以执行存储器1203中存储的程序代码1210。也即是,网络设备1200可以通过处理器1201以及存储器1203中的程序代码1210,来实现方法实施例提供的任一项传输路由信息的方法。
本申请实施例的网络设备1200可实现上述任一项传输路由信息的方法,并且,该网络设备1200中的处理器1201、通信接口1204等可以实现上述各个方法实施例中的各种步骤和方法。为了简洁,在此不再赘述。
如图10所示的传输路由信息的装置的接收模块1001、发送模块1002、获取模块、订阅模块相当于网络设备1200中的通信接口1204;传输路由信息的装置中的对账模块可以相当于网络设备1200中的处理器1201;传输路由信息的装置中的存储模块可以相当于网络设备1200中的存储器1203。
如图11所示的传输路由信息的装置中的获取模块1101和发送模块1103相当于网络设备1200中的通信接口1204;传输路由信息的装置中的存储模块1102可以相当于网络设备1200中的存储器1203。
参见图13,图13示出了本申请一个示例性实施例提供的网络设备1300的结构示意图,该网络设备1300可以包括上述数据中间件,或者,也可以就是上述数据中间件。网络设备1300可以实现上述任一项所述的传输路由信息的方法。网络设备1300包括:主控板1310和接口板1330。另外,网络设备1300还可以包括RIB。
主控板1310也称为主处理单元(main processing unit,MPU)或路由处理卡(route processor card),主控板1310用于对网络设备1300中各个组件的控制和管理,包括路由计算、设备管理、设备维护、协议处理功能。主控板1310包括:中央处理器1311和存储器1312。
接口板1330也称为线路接口单元卡(line processing unit,LPU)、线卡(linecard)或业务板。接口板1330用于提供各种业务接口并实现数据包的转发。业务接口包括而不限于以太网接口、POS(Packet over SONET/SDH)接口等,以太网接口例如是灵活以太网业务接口(Flexible Ethernet Clients,FlexE Clients)。接口板1330包括:中央处理器1331、网络处理器1332、转发表项存储器1334和物理接口卡(physical interface card,PIC)1333。
接口板1330上的中央处理器1331用于对接口板1330进行控制管理并与主控板1310上的中央处理器1311进行通信。
网络处理器1332用于实现报文的转发处理。网络处理器1332的形态可以是转发芯片。具体而言,网络处理器1332用于基于转发表项存储器1334保存的转发表转发接收到的报文,如果报文的目的地址为网络设备1300的地址,则将该报文上送至CPU(如中央处理器1311)处理;如果报文的目的地址不是网络设备1300的地址,则根据该目的地址从转发表中查找到该目的地址对应的下一跳和出接口,将该报文转发到该目的地址对应的出接口。其中,上行报文的处理包括:报文入接口的处理,转发表查找;下行报文的处理:转发表查找等等。
物理接口卡1333用于实现物理层的对接功能,原始的流量由此进入接口板1330,以及处理后的报文从该物理接口卡1333发出。物理接口卡1333也称为子卡,可安装在接口板1330上,负责将光电信号转换为报文并对报文进行合法性检查后转发给网络处理器1332处理。在一些实施例中,中央处理器也可执行网络处理器1332的功能,比如基于通用CPU实现软件转发,从而物理接口卡1333中不需要网络处理器1332。
可选地,网络设备1300包括多个接口板,例如网络设备1300还包括接口板1340,接口板1340包括:中央处理器1341、网络处理器1342、转发表项存储器1344和物理接口卡1343。
可选地,网络设备1300还包括交换网板1320。交换网板1320也可以称为交换网板单元(switch fabric unit,SFU)。在网络设备有多个接口板1330的情况下,交换网板1320用于完成各接口板之间的数据交换。例如,接口板1330和接口板1340之间可以通过交换网板1320通信。
主控板1310和接口板1330耦合。例如。主控板1310、接口板1330和接口板1340,以及交换网板1320之间通过系统总线与系统背板相连实现互通。在一种可能的实现方式中,主控板1310和接口板1330之间建立进程间通信协议(inter-process communication,IPC)通道,主控板1310和接口板1330之间通过IPC通道进行通信。
在逻辑上,网络设备1300包括控制面和转发面,控制面包括主控板1310和中央处理器1331,转发面包括执行转发的各个组件,比如转发表项存储器1334、物理接口卡1333和网络处理器1332。控制面执行路由器、生成转发表、处理信令和协议报文、配置与维护设备的状态等功能,控制面将生成的转发表下发给转发面,在转发面,网络处理器1332基于控制面下发的转发表对物理接口卡1333收到的报文查表转发。控制面下发的转发表可以保存在转发表项存储器1334中。在有些实施例中,控制面和转发面可以完全分离,不在同一设备上。
如图10所示的传输路由信息的装置的接收模块1001、发送模块1002、获取模块、订阅模块相当于网络设备1300中的物理接口卡1333;传输路由信息的装置中的对账模块可以相当于网络设备1300中的网络处理器1332或中央处理器1311;传输路由信息的装置中的存储模块可以相当于网络设备1300中的存储器1312或转发表项存储器1334。
如图11所示的传输路由信息的装置中的获取模块1101和发送模块1103相当于网络设备1300中的物理接口卡1333;传输路由信息的装置中的存储模块1102可以相当于网络设备1300中的存储器1312或转发表项存储器1334。
本申请实施例中接口板1540上的操作与接口板1530的操作一致,为了简洁,不再赘述。本实施例的网络设备1500可对应于上述各个方法实施例中的数据中间件,该网络设备1500中的主控板1510、接口板1530和/或1540可以实现上述各个方法实施例中的数据中间件所具有的功能和/或所实施的各种步骤,为了简洁,在此不再赘述。
值得说明的是,主控板可能有一块或多块,有多块的时候可以包括主用主控板和备用主控板。接口板可能有一块或多块,网络设备的数据处理能力越强,提供的接口板越多。接口板上的物理接口卡也可以有一块或多块。交换网板可能没有,也可能有一块或多块,有多块的时候可以共同实现负荷分担冗余备份。在集中式转发架构下,网络设备可以不需要交换网板,接口板承担整个系统的业务数据的处理功能。在分布式转发架构下,网络设备可以有至少一块交换网板,通过交换网板实现多块接口板之间的数据交换,提供大容量的数据交换和处理能力。所以,分布式架构的网络设备的数据接入和处理能力要大于集中式架构的设备。可选地,网络设备的形态也可以是只有一块板卡,即没有交换网板,接口板和主控板的功能集成在该一块板卡上,此时接口板上的中央处理器和主控板上的中央处理器在该一块板卡上可以合并为一个中央处理器,执行两者叠加后的功能,这种形态设备的数据交换和处理能力较低(例如,低端交换机或路由器等网络设备)。具体采用哪种架构,取决于具体的组网部署场景,此处不做任何限定。
在一些可能的实施例中,上述传输路由信息的方法也可以由虚拟化设备实现,该虚拟化设备可以为数据中间件,或者,包括数据中间件。另外,该虚拟化设备还可以包括RIB。
例如,虚拟化设备可以是运行有传输路由信息功能的程序的虚拟机(英文:Virtual Machine,VM),虚拟机部署在硬件设备上(例如,物理服务器)。虚拟机指通过软件模拟的具有完整硬件系统功能的、运行在一个完全隔离环境中的完整计算机系统。可以将容器配置为可执行上述传输路由信息的方法的网络设备。例如,可以基于通用的物理服务器结合网络功能虚拟化(Network Functions Virtualization,NFV)技术来实现可执行上述传输路由信息的方法的网络设备。该网络设备可以为虚拟主机、虚拟路由器或虚拟交换机。本领域技术人员通过阅读本申请即可结合NFV技术在通用物理服务器上虚拟出具有上述传输路由信息的功能的网络设备。此处不再赘述。
例如,虚拟化设备可以是容器,容器是一种用于提供隔离的虚拟化环境的实体,例如,容器可以是docker容器。可以将容器配置为可执行上述传输路由信息的方法的网络设备。例如,可以通过对应的镜像来创建出该网络设备。采用容器技术实现时,该网络设备可以利用物理机的内核运行,多个网络设备可以共享物理机的操作系统。通过容器技术可以将不同的网络设备网络设备隔离开来。容器化的网络设备可以在虚拟化的环境中运行,例如可以在虚拟机中运行,容器化的网络设备也可以直接在物理机中运行。
例如,虚拟化设备可以是Pod,Pod是Kubernetes(Kubernetes是谷歌开源的一种容器编排引擎,英文简称为K8s)为部署、管理、编排容器化应用的基本单位。Pod可以包括一个或多个容器。同一个Pod中的每个容器通常部署在同一主机上,因此同一个Pod中的每个容器可以通过该主机进行通信,并且可以共享该主机的存储资源和网络资源。可以将Pod配置为可执行上述任一项所述的传输路由信息的方法的网络设备。例如,具体地,可以指令容器即服务(英文全称:container as a service,英文简称:CaaS,是一种基于容器的PaaS服务)来创建Pod,将Pod提供为该网络设备。
当然,还可以通过其他虚拟化设备实现上述任一项传输路由信息的方法,在此不做一一列举。
在一些可能的实施例中,上述传输路由信息的方法也可以由通用处理器来实现。该通用处理可以为数据中间件,或者,包括数据中间件。另外,该通用处理还可以包括RIB。例如,该通用处理器的形态可以是一种芯片。具体地,通用处理器包括处理电路和与该处理电路内部连接通信的输入接口以及输出接口,该处理电路用于执行上述各个方法实施例中的传输路由信息的各个步骤,该处理电路用于通过输入接口执行上述各个方法实施例中的接收或获取步骤,该处理电路用于通过输出接口执行上述各个方法实施例中的发送步骤。可选地,该通用处理器还可以包括存储介质,该处理电路用于通过存储介质执行上述各个方法实施例中的存储步骤。存储介质可以存储处理电路执行的指令,该处理电路用于执行存储介质存储的指令以执行上述各个方法实施例。
参见图14,本申请实施例提供了一种通信系统1400,所述通信系统1400包括:第一网络设备1401和第二网络设备1402。第一网络设备1401包括上述任一装置实施例中所述的数据中间件,第二网络设备1402包括RIB。
在一种可能的实现方式中,通信系统1400还可以包括第三方生产者设备,和/或,第三方消费者设备。
本申请实施例还提供了一种通信系统,该通信系统包括第一网络设备,第一网络设备包括上述任一项所述的传输路由信息的装置。
在一种可能的实现方式中,第一网络设备中还包括RIB。
在一种可能的实现方式中,该通信系统还包括第三方生产者设备,第三方生产者设备用于向第一网络设备中的数据中间件下发路由信息。
在一种可能的实现方式中,该通信系统还包括第三方消费者设备,第三方消费者设备用于从第一网络设备中的数据中间件获取路由信息。
以上两种通信系统的架构均与图1所示的通信系统的架构对应,具体请参见图1处描述。
本申请提供了一种计算机可读存储介质,该计算机可读存储介质包括指令,当该计算机可读存储介质在网络设备上运行时,使得该网络设备执行上述任一项所述的传输路由信息的方法。
本申请实施例提供了一种包含指令的计算机程序产品,当该计算机程序产品在网络设备上运行时,使得网络设备执行上述方法实施例中任一传输路由信息的方法。
本申请实施例提供了一种芯片,该芯片包括可编程逻辑电话和/或程序指令,当所述芯片运行时用于实现上述任一项所述的传输路由信息的方法。
上述各种产品形态的网络设备,均可实现上述任一项所述的传输路由信息的方法,此处不再赘述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例中描述的各方法步骤和单元,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各实施例的步骤及组成。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。本领域普通技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参见前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,该单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口、装置或单元的间接耦合或通信连接,也可以是电的,机械的或其它的形式连接。
该作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本申请实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
该集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例中方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(read-only memory,ROM)、随机存取存储器(random access memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上描述,仅为本申请的实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围为准。
Claims (23)
1.一种传输路由信息的方法,其特征在于,应用于包括数据中间件和路由信息库RIB的系统中,所述数据中间件与所述RIB通信,所述方法包括:
所述数据中间件接收第一请求,所述第一请求用于请求第一目标路由信息;
响应于所述第一请求,所述数据中间件向第三方消费者设备发送所述第一目标路由信息,所述第一目标路由信息由所述数据中间件从所述RIB获得;
所述方法还包括:
所述数据中间件获得第三方生产者设备生成的路由信息;
所述数据中间件存储所述路由信息;
所述数据中间件向所述RIB发送第二目标路由信息。
2.根据权利要求1所述的方法,其特征在于,所述第一请求包括:
所述第三方消费者设备发送的第一平滑请求;或
所述第三方消费者设备发送的第一订阅请求,所述第一订阅请求包括第一目标类型,所述第一目标路由信息的类型与所述第一目标类型对应。
3.根据权利要求1或2所述的方法,其特征在于,所述方法还包括:
响应于所述数据中间件存储的路由信息异常,所述数据中间件向所述RIB发送第二平滑请求;
所述数据中间件获取所述RIB根据所述第二平滑请求发送的平滑路由信息;
所述数据中间件存储所述平滑路由信息。
4.根据权利要求3所述的方法,其特征在于,所述方法还包括:
所述数据中间件基于所述平滑路由信息和已存储的路由信息进行对账处理,其中,所述已存储的路由信息为在获取到所述平滑路由信息之前存储的路由信息。
5.根据权利要求1或2所述的方法,其特征在于,所述方法还包括:
所述数据中间件向所述RIB订阅第一类型的路由信息;
所述数据中间件获得所述RIB包括的所述第一类型的路由信息,所述第一类型的路由信息包括所述第一目标路由信息。
6.根据权利要求1或2所述的方法,其特征在于,所述系统还包括RIB代理,所述数据中间件和所述RIB通过所述RIB代理通信。
7.根据权利要求1所述的方法,其特征在于,在所述数据中间件向所述RIB发送第二目标路由信息之前,所述方法还包括:
所述数据中间件接收第二请求,所述第二请求用于向所述数据中间件请求第二目标路由信息,所述第二请求包括:
所述RIB发送的第二平滑请求;或
所述RIB发送的第二订阅请求,所述第二订阅请求包括第二目标类型,所述第二目标路由信息的类型与所述第二目标类型对应。
8.根据权利要求1或7所述的方法,其特征在于,所述数据中间件获得第三方生产者设备生成的路由信息,包括:
响应于所述数据中间件存储的路由信息异常,所述数据中间件向所述第三方生产者设备发送第三平滑请求;
所述数据中间件接收所述第三方生产者设备根据所述第三平滑请求发送的平滑路由信息;
所述数据中间件存储所述平滑路由信息。
9.根据权利要求1或7所述的方法,其特征在于,所述数据中间件获得第三方生产者设备生成的路由信息,包括:
响应于所述数据中间件与所述第三方生产者设备连接建立,所述数据中间件向所述第三方生产者设备发送第四平滑请求;
所述数据中间件接收所述第三方生产者设备根据所述第四平滑请求发送的平滑路由信息;
所述数据中间件存储所述平滑路由信息。
10.根据权利要求1或7所述的方法,其特征在于,所述第二目标路由信息与第二类型对应,所述数据中间件获得第三方生产者设备生成的路由信息,包括:
所述数据中间件向所述第三方生产者设备发送第三订阅请求,所述第三订阅请求包括所述第二类型,所述第三订阅请求用于请求所述第二类型对应的路由信息。
11.一种传输路由信息的装置,其特征在于,所述装置包括数据中间件,所述数据中间件与路由信息库RIB通信,所述数据中间件包括:
接收模块,用于接收第一请求,所述第一请求用于请求第一目标路由信息;
发送模块,用于响应于所述第一请求,向第三方消费者设备发送所述第一目标路由信息,所述第一目标路由信息由所述数据中间件从所述RIB获得;
获取模块,用于获得第三方生产者设备生成的路由信息;
存储模块,用于存储所述第三方生产者设备生成的路由信息;
所述发送模块,还用于向所述RIB发送第二目标路由信息。
12.根据权利要求11所述的装置,其特征在于,所述发送模块,还用于响应于存储的路由信息异常,向所述RIB发送第二平滑请求;
所述获取模块,还用于获取所述RIB根据所述第二平滑请求发送的平滑路由信息;
所述存储模块,还用于存储所述平滑路由信息。
13.根据权利要求12所述的装置,其特征在于,所述数据中间件还包括对账模块,用于:
基于所述平滑路由信息和已存储的路由信息进行对账处理,其中,所述已存储的路由信息为在获取到所述平滑路由信息之前存储的路由信息。
14.根据权利要求11-13任一项所述的装置,其特征在于,所述数据中间件还包括订阅模块,用于向所述RIB订阅第一类型的路由信息;
所述获取模块,还用于获得所述RIB包括的所述第一类型的路由信息,所述第一类型的路由信息包括所述第一目标路由信息。
15.根据权利要求11-13任一项所述的装置,其特征在于,所述装置还包括所述RIB。
16.根据权利要求15所述的装置,其特征在于,所述装置还包括RIB代理,所述数据中间件和所述RIB通过所述RIB代理通信。
17.根据权利要求11所述的装置,其特征在于,所述发送模块,还用于响应于存储的路由信息异常,向所述第三方生产者设备发送第三平滑请求;
所述获取模块,还用于接收所述第三方生产者设备根据所述第三平滑请求发送的平滑路由信息;
所述存储模块,还用于存储所述平滑路由信息。
18.根据权利要求11或17所述的装置,其特征在于,所述发送模块,还用于响应于与所述第三方生产者设备连接建立,向所述第三方生产者设备发送第四平滑请求;
所述获取模块,用于接收所述第三方生产者设备根据所述第四平滑请求发送的平滑路由信息;
所述存储模块,还用于存储所述平滑路由信息。
19.根据权利要求11或17所述的装置,其特征在于,所述第二目标路由信息与第二类型对应,所述发送模块,还用于向所述第三方生产者设备发送第三订阅请求,所述第三订阅请求包括所述第二类型,所述第三订阅请求用于请求所述第二类型对应的路由信息。
20.一种通信系统,其特征在于,所述通信系统包括第一网络设备,所述第一网络设备包括如权利要求11-19任一项所述的装置。
21.根据权利要求20所述的通信系统,其特征在于,所述通信系统还包括第三方生产者设备,所述第三方生产者设备用于向所述第一网络设备中的数据中间件下发路由信息。
22.根据权利要求20所述的通信系统,其特征在于,所述通信系统还包括第三方消费者设备,所述第三方消费者设备用于从所述第一网络设备中的所述数据中间件获取路由信息。
23.一种通信系统,其特征在于,所述通信系统包括第一网络设备和第二网络设备,所述第一网络设备包括如权利要求11-19任一项所述的装置,所述第二网络设备包括路由信息库RIB。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010753143.5A CN114079670B (zh) | 2020-07-30 | 2020-07-30 | 传输路由信息的方法、装置和通信系统 |
EP21849711.3A EP4181435A4 (en) | 2020-07-30 | 2021-07-19 | ROUTING INFORMATION TRANSMISSION METHOD, COMMUNICATION APPARATUS AND SYSTEM |
PCT/CN2021/107092 WO2022022313A1 (zh) | 2020-07-30 | 2021-07-19 | 传输路由信息的方法、装置和通信系统 |
US18/160,919 US20230168948A1 (en) | 2020-07-30 | 2023-01-27 | Routing information transmission method and apparatus, and communication system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010753143.5A CN114079670B (zh) | 2020-07-30 | 2020-07-30 | 传输路由信息的方法、装置和通信系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114079670A CN114079670A (zh) | 2022-02-22 |
CN114079670B true CN114079670B (zh) | 2023-07-11 |
Family
ID=80037570
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010753143.5A Active CN114079670B (zh) | 2020-07-30 | 2020-07-30 | 传输路由信息的方法、装置和通信系统 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20230168948A1 (zh) |
EP (1) | EP4181435A4 (zh) |
CN (1) | CN114079670B (zh) |
WO (1) | WO2022022313A1 (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101998227A (zh) * | 2009-08-28 | 2011-03-30 | 华为技术有限公司 | 业务路由方法、装置及系统 |
CN102511151A (zh) * | 2011-04-27 | 2012-06-20 | 华为技术有限公司 | 一种路由器、虚拟集群路由器系统及建立方法 |
CN104219147A (zh) * | 2013-06-05 | 2014-12-17 | 中兴通讯股份有限公司 | 边缘设备的vpn实现处理方法及装置 |
CN104253748A (zh) * | 2014-09-24 | 2014-12-31 | 大唐移动通信设备有限公司 | 基于分布式架构的路由方法和系统 |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
AU2003270863A1 (en) * | 2002-09-30 | 2004-04-23 | Advent Networks, Inc. | Implementing request/reply programming semantics using publish/subscribe middleware |
KR100636380B1 (ko) * | 2004-12-17 | 2006-10-19 | 한국전자통신연구원 | 이종의 홈네트워크 미들웨어상에 접속해 있는 홈디바이스들간의 상호 연동을 위한 홈네트워크 범용미들웨어 브릿지 시스템 및 그 방법 |
US8675656B2 (en) * | 2007-02-20 | 2014-03-18 | Cisco Technology, Inc. | Scaling virtual private networks using service insertion architecture |
US9106530B1 (en) * | 2013-03-27 | 2015-08-11 | Juniper Networks, Inc. | Constrained route distribution for multiple virtual private network services |
CN105471760B (zh) * | 2014-09-12 | 2019-04-05 | 华为技术有限公司 | 一种路由方法、负载均衡的装置及数据通信系统 |
CN106815218B (zh) * | 2015-11-27 | 2020-12-01 | 华为技术有限公司 | 数据库访问方法、装置和数据库系统 |
US9960994B2 (en) * | 2016-03-23 | 2018-05-01 | Juniper Networks, Inc. | Method, system, and apparatus for forwarding network traffic using minimal forwarding information bases |
CN107292598A (zh) * | 2017-05-31 | 2017-10-24 | 杭州大搜车汽车服务有限公司 | 一种支付路由方法及支付路由中间件 |
CN110647425A (zh) * | 2018-05-18 | 2020-01-03 | 杭州数梦工场科技有限公司 | 一种数据库恢复方法及装置 |
CN110493352B (zh) * | 2019-08-30 | 2020-08-21 | 南京联创互联网技术有限公司 | 一种基于web中间件的统一网关服务系统及其服务方法 |
-
2020
- 2020-07-30 CN CN202010753143.5A patent/CN114079670B/zh active Active
-
2021
- 2021-07-19 WO PCT/CN2021/107092 patent/WO2022022313A1/zh unknown
- 2021-07-19 EP EP21849711.3A patent/EP4181435A4/en active Pending
-
2023
- 2023-01-27 US US18/160,919 patent/US20230168948A1/en active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101998227A (zh) * | 2009-08-28 | 2011-03-30 | 华为技术有限公司 | 业务路由方法、装置及系统 |
CN102511151A (zh) * | 2011-04-27 | 2012-06-20 | 华为技术有限公司 | 一种路由器、虚拟集群路由器系统及建立方法 |
CN104219147A (zh) * | 2013-06-05 | 2014-12-17 | 中兴通讯股份有限公司 | 边缘设备的vpn实现处理方法及装置 |
CN104253748A (zh) * | 2014-09-24 | 2014-12-31 | 大唐移动通信设备有限公司 | 基于分布式架构的路由方法和系统 |
Non-Patent Citations (1)
Title |
---|
EPON系统的三层路由及其接口设计;郭鹂;吴军平;李岳政;;光通信技术(第12期);9-12 * |
Also Published As
Publication number | Publication date |
---|---|
EP4181435A1 (en) | 2023-05-17 |
EP4181435A4 (en) | 2023-10-11 |
US20230168948A1 (en) | 2023-06-01 |
CN114079670A (zh) | 2022-02-22 |
WO2022022313A1 (zh) | 2022-02-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2022078415A1 (zh) | 报文转发方法以及网络设备 | |
CN113938403B (zh) | 一种能力通告方法及相关设备 | |
EP4239954A1 (en) | Message transmission method and apparatus, device, and computer-readable storage medium | |
EP4210247A1 (en) | Method for obtaining message header information and generating message, device, and storage medium | |
EP4040745B1 (en) | Service packet forwarding method, device, and computer storage medium | |
CN116886496A (zh) | 基于dpu的数据处理方法、装置、设备及可读存储介质 | |
EP4294080A1 (en) | Route processing method and network device | |
CN114650255B (zh) | 报文处理方法及网络设备 | |
CN114079670B (zh) | 传输路由信息的方法、装置和通信系统 | |
EP4199464A1 (en) | Packet sending method and device | |
WO2021244588A1 (zh) | 处理路由报文的方法、通信设备、存储介质及系统 | |
EP4207640A1 (en) | Path identifier allocation method, system, apparatus and device, and storage medium | |
CN116346716A (zh) | 报文处理方法及装置、通信系统 | |
CN117097818A (zh) | 一种报文处理的方法及相关设备 | |
CN114301734A (zh) | 一种接入处理方法及其相关设备 | |
CN115328693A (zh) | 一种业务进程恢复业务的方法、装置、设备及存储介质 | |
CN114629834B (zh) | 通信方法及装置 | |
US20230344756A1 (en) | Routing method and related device | |
CN113949634B (zh) | 一种报文传输的方法、装置及系统 | |
WO2024114048A1 (zh) | 一种时钟质量等级设置方法、设备及系统 | |
EP4369690A1 (en) | Method and apparatus for transmitting network layer readable information, device, system, and medium | |
US20240340239A1 (en) | Route advertisement method and related device | |
US20230224245A1 (en) | Packet Transmission Method and Apparatus | |
CN116781778A (zh) | 一种消息处理方法及相关设备 | |
CN118842726A (zh) | 一种报文传输的方法、装置及系统 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |