Movatterモバイル変換


[0]ホーム

URL:


CN107483338A - A method, device and system for determining cross-domain label switching path tunnels - Google Patents

A method, device and system for determining cross-domain label switching path tunnels
Download PDF

Info

Publication number
CN107483338A
CN107483338ACN201610402567.0ACN201610402567ACN107483338ACN 107483338 ACN107483338 ACN 107483338ACN 201610402567 ACN201610402567 ACN 201610402567ACN 107483338 ACN107483338 ACN 107483338A
Authority
CN
China
Prior art keywords
tunnel
node
controller
cross
label
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
CN201610402567.0A
Other languages
Chinese (zh)
Inventor
王海波
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei 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 LtdfiledCriticalHuawei Technologies Co Ltd
Priority to CN201610402567.0ApriorityCriticalpatent/CN107483338A/en
Priority to PCT/CN2017/084377prioritypatent/WO2017211164A1/en
Publication of CN107483338ApublicationCriticalpatent/CN107483338A/en
Pendinglegal-statusCriticalCurrent

Links

Classifications

Landscapes

Abstract

Translated fromChinese

本发明提供一种确定跨域标签交换路径隧道的方法、设备和系统,该方法包括:获取用于请求建立首节点与尾节点之间的LSP隧道的隧道建立请求,首节点与尾节点属于不同的域;基于网络拓扑计算第一跨域LSP隧道,第一跨域LSP隧道经过的节点包括首节点、中间节点与尾节点,其中包括的第一节点与第二节点之间具有已经建立的隧道,网络拓扑中包括已经建立的隧道;向各个节点下发相应的隧道配置消息,用于指示建立第一跨域LSP隧道,其中,控制器向第一节点发送的隧道配置消息携带下一跳隧道信息,下一跳隧道信息用于指示已经建立的隧道。本发明能够在有效减小控制器的算路负担与信令开销的基础上建立跨域LSP隧道。

The present invention provides a method, device and system for determining a cross-domain label switching path tunnel. The method includes: obtaining a tunnel establishment request for requesting establishment of an LSP tunnel between a head node and a tail node, and the head node and the tail node belong to different domain; calculate the first cross-domain LSP tunnel based on the network topology, and the nodes passed by the first cross-domain LSP tunnel include the first node, the intermediate node and the tail node, and there is an established tunnel between the first node and the second node included , the network topology includes the tunnels that have been established; the corresponding tunnel configuration message is sent to each node to indicate the establishment of the first cross-domain LSP tunnel, wherein the tunnel configuration message sent by the controller to the first node carries the next-hop tunnel Information, the next hop tunnel information is used to indicate the established tunnel. The invention can establish a cross-domain LSP tunnel on the basis of effectively reducing the path calculation burden and signaling overhead of the controller.

Description

Translated fromChinese
一种确定跨域标签交换路径隧道的方法、设备和系统A method, device and system for determining cross-domain label switching path tunnels

技术领域technical field

本发明实施例涉及通信领域,并且更具体地,涉及一种确定跨域标签交换路径隧道的方法、设备和系统。Embodiments of the present invention relate to the communication field, and more specifically, relate to a method, device and system for determining a cross-domain label switching path tunnel.

背景技术Background technique

对于跨自治系统(autonomous system,AS)域的场景,要完成跨域的端到端(Endto End,E2E)的业务布放,需要一条跨域的端到端的标签交换路径(Label Switched Path,LSP)隧道。在现有的建立跨域LSP的方案中,需要控制器逐节点计算跨域LSP隧道,对应地,需要向隧道中的每个节点下发相应的隧道配置,以建立该跨域LSP隧道。For scenarios across autonomous system (autonomous system, AS) domains, to complete cross-domain end-to-end (E2E) service deployment, a cross-domain end-to-end Label Switched Path (Label Switched Path, LSP )tunnel. In an existing solution for establishing a cross-domain LSP, the controller needs to calculate the cross-domain LSP tunnel node by node, and correspondingly, needs to send corresponding tunnel configuration to each node in the tunnel to establish the cross-domain LSP tunnel.

在现有的建立跨域LSP隧道的方案中,控制器算路负担较大,信令开销也较大。In an existing solution for establishing a cross-domain LSP tunnel, the controller has a large burden of path calculation and a large signaling overhead.

发明内容Contents of the invention

本发明提供一种确定跨域LSP隧道的方法、设备和系统,能够在有效减小控制器的算路负担与信令开销的基础上建立跨域LSP隧道。The invention provides a method, device and system for determining a cross-domain LSP tunnel, which can establish a cross-domain LSP tunnel on the basis of effectively reducing the path calculation burden and signaling overhead of a controller.

第一方面,提供了一种确定跨域标签交换路径隧道的方法,该方法包括:In the first aspect, a method for determining a cross-domain label switching path tunnel is provided, and the method includes:

控制器获取隧道建立请求,所述隧道建立请求用于请求建立首节点与尾节点之间的标签交换路径LSP隧道,所述首节点与所述尾节点属于不同的域;所述控制器根据所述隧道建立请求,基于网络拓扑计算第一跨域LSP隧道,所述第一跨域LSP隧道经过的节点包括所述首节点、第一中间节点与所述尾节点,其中,所述首节点、所述第一中间节点与所述尾节点中的第一节点与第二节点之间具有已经建立的隧道,所述网络拓扑中包括所述已经建立的隧道;所述控制器分别向所述首节点、所述第一中间节点与所述尾节点下发相应的隧道配置消息,用于指示所述首节点、所述第一中间节点与所述尾节点建立所述第一跨域LSP隧道,其中,所述控制器向所述第一节点发送的隧道配置消息携带下一跳隧道信息,所述下一跳隧道信息用于指示所述已经建立的隧道,以指示所述第一节点利用所述已经建立的隧道与所述第二节点进行通信连接。The controller obtains a tunnel establishment request, the tunnel establishment request is used to request establishment of a label switched path LSP tunnel between the head node and the tail node, the head node and the tail node belong to different domains; the controller according to the The tunnel establishment request is based on the network topology to calculate a first cross-domain LSP tunnel, and the nodes passed by the first cross-domain LSP tunnel include the head node, the first intermediate node, and the tail node, wherein the head node, There is an established tunnel between the first intermediate node and the first node and the second node in the tail node, and the network topology includes the established tunnel; The node, the first intermediate node, and the tail node issue corresponding tunnel configuration messages for instructing the head node, the first intermediate node, and the tail node to establish the first cross-domain LSP tunnel, Wherein, the tunnel configuration message sent by the controller to the first node carries next-hop tunnel information, and the next-hop tunnel information is used to indicate the established tunnel, so as to instruct the first node to use the The established tunnel communicates with the second node.

应理解,所述第一中间节点可以包括一个或多个节点,换句话,在所述第一跨域LSP隧道的首节点与尾节点之间可以包括一个或多个中间节点。It should be understood that the first intermediate node may include one or more nodes, in other words, one or more intermediate nodes may be included between the head node and the tail node of the first cross-domain LSP tunnel.

还应理解,在本发明技术方案中,所述首节点与所述尾节点属于不同的域,具体地,例如所述首节点与所述尾节点属于不同的AS域,或者所述首节点与所述尾节点属于相同AS域中的不同IGP域。It should also be understood that in the technical solution of the present invention, the first node and the last node belong to different domains, specifically, for example, the first node and the last node belong to different AS domains, or the first node and the last node belong to different domains. The tail nodes belong to different IGP domains in the same AS domain.

在本发明技术方案中,所述第一节点可以指示所述第一跨域LSP隧道的首节点,或者指示所述第一跨域LSP隧道的第一中间节点,或者指示所述首节点与所述第一中间节点。In the technical solution of the present invention, the first node may indicate the first node of the first cross-domain LSP tunnel, or indicate the first intermediate node of the first cross-domain LSP tunnel, or indicate the relationship between the first node and the first Describe the first intermediate node.

在本发明技术方案中,控制器基于网络拓扑计算跨域LSP隧道,所述网络拓扑中包括已经建立好的隧道,则控制器可以基于网络中已经建立好的隧道计算跨域LSP隧道。具体地,控制器根据网络拓扑获知,要计算的跨域LSP隧道经过第一节点与第二节点,且第一节点与第二节点之间具有已经建立的隧道,则控制器直接利用该已经建立的隧道确定所述第一节点与第二节点之间的隧道,而非逐节点计算第一节点与第二节点之间的隧道。应理解,减小了第一节点与第二节点之间的隧道的计算负担,自然能够减小控制器计算整条跨域LSP隧道的计算负担。所述控制器完成跨域LSP隧道的计算后,通过向跨域LSP隧道经过的转发节点下发相应的隧道配置消息,以完成跨域LSP隧道的建立,其中在向第一节点发送的隧道配置消息中携带下一跳隧道信息,该下一跳隧道信息用于指示已经建立的隧道,以指示第一节点利用已经建立的隧道与第二节点建立通信连接,而非像现有技术一样需要向第一节点与第二节点之间的各个转发节点下发相应的隧道配置消息才可以实现第一节点与第二节点之间的通信连接,因此,能够降低控制器的信令开销。In the technical solution of the present invention, the controller calculates the cross-domain LSP tunnel based on the network topology, and the network topology includes established tunnels, so the controller can calculate the cross-domain LSP tunnel based on the established tunnels in the network. Specifically, the controller knows according to the network topology that the cross-domain LSP tunnel to be calculated passes through the first node and the second node, and there is an established tunnel between the first node and the second node, then the controller directly uses the established tunnel The tunnels of the first node and the second node are determined instead of calculating the tunnels between the first node and the second node node by node. It should be understood that reducing the calculation burden of the tunnel between the first node and the second node can naturally reduce the calculation burden of the controller for calculating the entire cross-domain LSP tunnel. After the controller completes the calculation of the cross-domain LSP tunnel, it sends a corresponding tunnel configuration message to the forwarding node passed by the cross-domain LSP tunnel to complete the establishment of the cross-domain LSP tunnel, wherein the tunnel configuration message sent to the first node The next-hop tunnel information is carried in the message, and the next-hop tunnel information is used to indicate the established tunnel, so as to indicate that the first node uses the established tunnel to establish a communication connection with the second node, instead of needing to communicate with the second node as in the prior art. Only when each forwarding node between the first node and the second node issues a corresponding tunnel configuration message can the communication connection between the first node and the second node be realized, thus, the signaling overhead of the controller can be reduced.

综上所述,在本发明技术方案中,控制器利用网络中已经建立好的隧道计算跨域LSP隧道,能够有效降低控制器的算路负担。控制器通过在隧道配置消息中携带下一跳隧道信息,从而无需向跨域LSP隧道经过的每个节点下发隧道配置,能够一定程度上减小控制器的信令开销。相比于现有技术,本发明技术方案能够在有效减小控制器的算路负担与信令开销的基础上,完成跨域LSP隧道的建立。To sum up, in the technical solution of the present invention, the controller calculates the cross-domain LSP tunnel by using the established tunnel in the network, which can effectively reduce the path calculation burden of the controller. By carrying the next-hop tunnel information in the tunnel configuration message, the controller does not need to deliver the tunnel configuration to each node passed by the cross-domain LSP tunnel, which can reduce the signaling overhead of the controller to a certain extent. Compared with the prior art, the technical solution of the present invention can complete the establishment of the cross-domain LSP tunnel on the basis of effectively reducing the path calculation burden and signaling overhead of the controller.

应理解,在本发明技术方案中,控制器获知的网络拓扑中除了包括所述首节点、所述第一中间节点与所述尾节点的相关信息,还包括所述第一节点与第二节点之间具有的所述已经建立的隧道的相关信息。换句话说,控制器根据网络拓扑,能够获知跨域LSP隧道经过第一节点与第二节点,且第一节点与第二节点之间具有已经建立好的已经建立的隧道。It should be understood that, in the technical solution of the present invention, the network topology learned by the controller includes not only information about the head node, the first intermediate node, and the tail node, but also information about the first node and the second node. Relevant information about the tunnels that have been established between them. In other words, according to the network topology, the controller can learn that the cross-domain LSP tunnel passes through the first node and the second node, and there is an established tunnel between the first node and the second node.

还应理解,在本发明技术方案中,控制器可以采用现有的任意可行方法获取所述网络拓扑。It should also be understood that, in the technical solution of the present invention, the controller may acquire the network topology by using any existing feasible method.

在本发明技术方案中,已经建立的隧道指的是网络中已经建立好的隧道,具体地,所述已经建立的隧道包括但不限定于下列任一种隧道:LDP LSP、BGP LSP、TE、GRE等通信网络中采用的隧道。其中,LDP为标签分发协议(Label Distribution Protocol),TE为流量工程(Traffic Engineering),BGP为边界网关协议(Border Gateway Protocol),GRE为通用路由封装(Generic Routing Encapsulation)。In the technical solution of the present invention, an established tunnel refers to an established tunnel in the network. Specifically, the established tunnel includes but is not limited to any of the following tunnels: LDP LSP, BGP LSP, TE, Tunnel used in communication networks such as GRE. Among them, LDP is Label Distribution Protocol, TE is Traffic Engineering, BGP is Border Gateway Protocol, and GRE is Generic Routing Encapsulation.

结合第一方面,在第一方面的第一种可能的实现方式中,所述第一节点指示所述跨域LSP隧道经过的所述首节点与所述第一中间节点。With reference to the first aspect, in a first possible implementation manner of the first aspect, the first node indicates the head node and the first intermediate node through which the cross-domain LSP tunnel passes.

应理解,在本发明技术方案中,控制器根据网络拓扑获知,通过拼接网络中已经建立好的隧道,而计算得到跨域LSP隧道,能够更进一步减小控制器的算路负担。It should be understood that in the technical solution of the present invention, the controller obtains the cross-domain LSP tunnel by splicing the established tunnels in the network based on the knowledge of the network topology, which can further reduce the path calculation burden of the controller.

结合第一方面或第一方面的第一种可能的实现方式,在第一方面的第二种可能的实现方式中,所述控制器分别向所述首节点、所述第一中间节点与所述尾节点下发相应的隧道配置消息,包括:所述控制器向所述首节点发送第一隧道配置消息,所述第一隧道配置消息携带下列信息:入口隧道类型(Ingress)、出标签、下一跳节点的IP地址;所述控制器向所述第一中间节点发送第二隧道配置消息,所述第二隧道配置消息携带下列信息:中转隧道类型(Transit)、入标签、出标签、下一跳节点的IP地址,所述第一中间节点的入标签与所述第一中间节点的上一跳节点的出标签相同;所述控制器向所述尾节点发送第三隧道配置消息,所述第三隧道配置消息携带下列信息:出口隧道类型(Egress)、入标签,所述尾节点的入标签与所述尾节点的上一跳节点的出标签相同。With reference to the first aspect or the first possible implementation manner of the first aspect, in a second possible implementation manner of the first aspect, the controller sends the head node, the first intermediate node, and the The tail node sends a corresponding tunnel configuration message, including: the controller sends a first tunnel configuration message to the head node, and the first tunnel configuration message carries the following information: ingress tunnel type (Ingress), egress label, The IP address of the next hop node; the controller sends a second tunnel configuration message to the first intermediate node, and the second tunnel configuration message carries the following information: transit tunnel type (Transit), incoming label, outgoing label, the IP address of the next hop node, the inbound label of the first intermediate node is the same as the outbound label of the previous hop node of the first intermediate node; the controller sends a third tunnel configuration message to the tail node, The third tunnel configuration message carries the following information: an egress tunnel type (Egress), an inbound label, and the inbound label of the tail node is the same as the outbound label of the previous hop node of the tail node.

结合第一方面或第一方面的第一种或第二种可能的实现方式,在第一方面的第三种可能的实现方式中,所述控制器向所述第一节点发送的隧道配置消息中携带的下一跳隧道信息包括用于指示所述已经建立的隧道的隧道名和/或所述已经建立的隧道的隧道类型的信息。With reference to the first aspect or the first or second possible implementation of the first aspect, in a third possible implementation of the first aspect, the tunnel configuration message sent by the controller to the first node The next-hop tunnel information carried in includes information for indicating the tunnel name of the established tunnel and/or the tunnel type of the established tunnel.

结合第一方面或第一方面的第一种至第三种可能的实现方式中的任一种可能的实现方式,在第一方面的第四种可能的实现方式中,所述控制器利用网络配置NETCONF协议或边界网关协议BGP分别向所述首节点、所述第一中间节点与所述尾节点下发所述相应的隧道配置消息。In combination with the first aspect or any one of the first to third possible implementations of the first aspect, in a fourth possible implementation of the first aspect, the controller utilizes a network Configure the NETCONF protocol or the Border Gateway Protocol BGP to deliver the corresponding tunnel configuration message to the head node, the first intermediate node, and the tail node respectively.

结合第一方面或第一方面的第一种至第四种可能的实现方式中的任一种可能的实现方式,在第一方面的第五种可能的实现方式中,所述控制器分别向所述首节点、所述第一中间节点与所述尾节点下发的隧道配置消息中还携带所述第一跨域LSP隧道的隧道名,所述方法还包括:所述控制器根据所述隧道建立请求,基于所述网络拓扑计算第二跨域LSP隧道,所述第二跨域LSP隧道经过的节点包括所述首节点、第二中间节点与所述尾节点;所述控制器向所述首节点、所述第二中间节点与所述尾节点发送携带所述第二跨域LSP隧道的隧道名的隧道配置消息,用于指示所述首节点、所述第二中间节点与所述尾节点建立所述第二跨域LSP隧道。In combination with the first aspect or any one of the first to fourth possible implementations of the first aspect, in a fifth possible implementation of the first aspect, the controller sends The tunnel configuration message issued by the head node, the first intermediate node, and the tail node also carries the tunnel name of the first cross-domain LSP tunnel, and the method further includes: the controller according to the A tunnel establishment request, calculating a second cross-domain LSP tunnel based on the network topology, the nodes passed by the second cross-domain LSP tunnel include the head node, the second intermediate node, and the tail node; the controller sends the The head node, the second intermediate node, and the tail node send a tunnel configuration message carrying the tunnel name of the second cross-domain LSP tunnel to indicate that the head node, the second intermediate node, and the The tail node establishes the second cross-domain LSP tunnel.

应理解,所述第二跨域LSP隧道与所述第一LSP隧道不是同一条LSP隧道,换句话说,这两条LSP隧道所经过的节点不完全相同。所述第一中间节点表示第一跨域LSP隧道的各个中间节点(除了首节点与尾节点之外的其他节点),所述第二中间节点表示第二跨域LSP隧道的各个中间节点(除了首节点与尾节点之外的其他节点),则所述第一中间节点与所述第二中间节点中必定存在互不相同的节点。It should be understood that the second cross-domain LSP tunnel is not the same LSP tunnel as the first LSP tunnel, in other words, the nodes passed by the two LSP tunnels are not exactly the same. The first intermediate node represents each intermediate node of the first cross-domain LSP tunnel (other nodes except the head node and the tail node), and the second intermediate node represents each intermediate node of the second cross-domain LSP tunnel (except node other than the first node and the tail node), then there must be nodes that are different from each other in the first intermediate node and the second intermediate node.

在本发明技术方案中,控制器通过设置隧道名,在所述首节点与所述尾节点之间确定了两条不同的跨域LSP隧道,能够实现端到端之间的多路径传输。In the technical solution of the present invention, the controller determines two different cross-domain LSP tunnels between the head node and the tail node by setting the tunnel name, so as to realize end-to-end multipath transmission.

应理解,控制器还可以基于所述首节点与尾节点,计算得到更多条跨域LSP隧道,并分别配置不同的隧道名,通过向相关的节点发送相应的隧道配置消息,以使得基于相同的首节点与尾节点,建立多条跨域LSP隧道。It should be understood that the controller can also calculate more cross-domain LSP tunnels based on the head node and tail node, and configure different tunnel names respectively, and send corresponding tunnel configuration messages to related nodes, so that based on the same The head node and tail node of the network establish multiple cross-domain LSP tunnels.

第二方面,提供了一种确定跨域标签交换路径隧道的方法,该方法包括:In the second aspect, a method for determining a cross-domain label switching path tunnel is provided, and the method includes:

第一网络设备接收控制器发送的用于指示建立跨域标签交换路径LSP隧道的隧道配置消息,所述隧道配置消息携带下一跳隧道信息,所述下一跳隧道信息用于指示所述第一网络设备与第二网络设备之间具有的已经建立的隧道,所述跨域LSP隧道包括所述已经建立的隧道;所述第一网络设备根据所述隧道配置消息,通过所述已经建立的隧道与所述第二网络设备建立通信连接。The first network device receives a tunnel configuration message sent by the controller for instructing to establish a cross-domain label switched path LSP tunnel, where the tunnel configuration message carries next-hop tunnel information, and the next-hop tunnel information is used to indicate the first There is an established tunnel between a network device and a second network device, the cross-domain LSP tunnel includes the established tunnel; the first network device passes the established tunnel according to the tunnel configuration message The tunnel establishes a communication connection with the second network device.

在本发明技术方案中,通过网络中已经建立的隧道来建立跨域LSP隧道,能够有效减小控制器算路的负担,同时也能够减小控制器与网络设备之间传输信令的开销。In the technical solution of the present invention, the cross-domain LSP tunnel is established through the established tunnel in the network, which can effectively reduce the burden of calculating the path of the controller, and can also reduce the signaling transmission overhead between the controller and the network equipment.

结合第二方面,在第二方面的第一种可能的实现方式中,所述第一网络设备为所述跨域LSP隧道的首节点,所述第一网络设备接收的所述隧道配置消息还携带下列信息:入口隧道类型、出标签、下一跳节点的IP地址,所述下一跳节点为所述第二网络设备;或所述第一网络设备为所述跨域LSP隧道的中间节点,所述第一网络设备接收的所述隧道配置消息还携带下列信息:中转隧道类型、入标签、出标签、下一跳节点的IP地址,所述下一跳节点为所述第二网络设备,所述第一网络设备的入标签与所述第一网络设备的上一跳节点的出标签相同。With reference to the second aspect, in a first possible implementation manner of the second aspect, the first network device is the head node of the cross-domain LSP tunnel, and the tunnel configuration message received by the first network device is also Carry the following information: ingress tunnel type, egress label, IP address of the next-hop node, where the next-hop node is the second network device; or the first network device is the intermediate node of the cross-domain LSP tunnel , the tunnel configuration message received by the first network device also carries the following information: transit tunnel type, incoming label, outgoing label, IP address of a next-hop node, the next-hop node being the second network device , the incoming label of the first network device is the same as the outgoing label of the previous hop node of the first network device.

应理解,当所述第一网络设备为所述跨域LSP隧道的首节点时,所述第二网络设备为所述跨域LSP隧道的中间节点。当所述第一网络设备为所述跨域LSP隧道的中间节点时,所述第二网络设备为所述跨域LSP隧道中所述第一网络设备的下一跳中间节点,或者所述第二网络设备为所述跨域LSP隧道的尾节点。It should be understood that when the first network device is the first node of the cross-domain LSP tunnel, the second network device is an intermediate node of the cross-domain LSP tunnel. When the first network device is an intermediate node of the cross-domain LSP tunnel, the second network device is a next-hop intermediate node of the first network device in the cross-domain LSP tunnel, or the second network device The second network device is the tail node of the cross-domain LSP tunnel.

还应理解,在所述第一网络设备为所述跨域LSP隧道的中间节点,所述第二网络设备为所述跨域LSP隧道的尾节点的情况下,所述第二网络设备接收到隧道配置消息包括以下信息:出口隧道类型、入标签,所述第二网络设备的入标签与所述第一网络设备的出标签相同。It should also be understood that, when the first network device is an intermediate node of the cross-domain LSP tunnel and the second network device is a tail node of the cross-domain LSP tunnel, the second network device receives The tunnel configuration message includes the following information: egress tunnel type, inbound label, the inbound label of the second network device is the same as the outbound label of the first network device.

在第二方面提供的技术方案中,所述第一网络设备根据所述控制器下发的隧道配置消息后,根据下一跳隧道信息,确定已经建立的隧道,并为所述已经建立的隧道分配隧道ID,并生成转发表项。具体地,当所述第一网络设备为跨域LSP隧道的首节点时,所述转发表项中包括隧道目的IP地址、出标签、下一跳节点的IP地址、下一跳隧道ID。当所述第一网络设备为跨域LSP隧道的中间节点时,所述转发表项中包括隧道目的IP地址、入标签、出标签、下一跳节点的IP地址、下一跳隧道ID。当所述第一网络设备为跨域LSP隧道的尾节点时,所述转发表项中包括隧道目的IP地址与入标签。In the technical solution provided in the second aspect, the first network device determines the established tunnel according to the next-hop tunnel information according to the tunnel configuration message sent by the controller, and provides the established tunnel Allocate a tunnel ID and generate a forwarding entry. Specifically, when the first network device is the head node of the cross-domain LSP tunnel, the forwarding entry includes the tunnel destination IP address, outgoing label, IP address of the next-hop node, and next-hop tunnel ID. When the first network device is an intermediate node of a cross-domain LSP tunnel, the forwarding entry includes a tunnel destination IP address, an incoming label, an outgoing label, an IP address of a next-hop node, and a next-hop tunnel ID. When the first network device is a tail node of a cross-domain LSP tunnel, the forwarding entry includes a tunnel destination IP address and an incoming label.

第三方面,提供一种确定跨域LSP隧道的方法,所述方法包括:In a third aspect, a method for determining a cross-domain LSP tunnel is provided, the method comprising:

控制器获取隧道建立请求,所述隧道建立请求用于请求建立第一端节点与第二端节点之间的标签交换路径LSP隧道,所述第一端节点属于第一自治系统,所述第二端节点属于第二自治系统,第一域控制器管理所述第一自治系统,第二域控制器管理所述第二自治系统;The controller acquires a tunnel establishment request, where the tunnel establishment request is used to request establishment of a label switched path LSP tunnel between a first end node and a second end node, where the first end node belongs to the first autonomous system, and the second end node the end node belongs to a second autonomous system, the first domain controller manages the first autonomous system, and the second domain controller manages the second autonomous system;

所述控制器根据所述隧道建立请求,确定需要通过所述第一自治系统的网络拓扑与所述第二自治系统的网络拓扑计算第一跨域LSP隧道,所述第一跨域LSP隧道的首节点为所述第一端节点、尾节点为所述第二端节点;The controller determines, according to the tunnel establishment request, that a first cross-domain LSP tunnel needs to be calculated through the network topology of the first autonomous system and the network topology of the second autonomous system, and the first cross-domain LSP tunnel The first node is the first end node, and the tail node is the second end node;

所述控制器向所述第一域控制器发送第一指示消息,所述第一指示消息用于指示建立所述第一端节点与所述第一自治系统的第一边界节点之间的第一域内LSP隧道,所述第一指示消息还指示所述第一端节点为首节点、所述第一边界节点为中间节点、所述第一边界节点的下一跳节点为所述第二自治系统的第二边界节点,所述第一指示消息还用于指示所述第一边界节点的出标签;The controller sends a first indication message to the first domain controller, where the first indication message is used to indicate the establishment of a first end node between the first end node and the first border node of the first autonomous system. An intra-domain LSP tunnel, the first indication message also indicates that the first end node is the head node, the first border node is an intermediate node, and the next-hop node of the first border node is the second autonomous system the second border node, the first indication message is also used to indicate the outgoing label of the first border node;

所述控制器向所述第二域控制器发送第二指示消息,所述第二指示消息用于指示建立所述第二端节点与所述第二边界节点之间的第二域内LSP隧道,所述第二指示消息还指示所述第二端节点为尾节点、所述第二边界节点为中间节点,所述第二指示消息还用于指示所述第二边界节点的入标签,所述第二边界节点的入标签与所述第一边界节点的出标签相同。The controller sends a second indication message to the second domain controller, where the second indication message is used to indicate establishment of a second intra-domain LSP tunnel between the second end node and the second border node, The second indication message also indicates that the second end node is a tail node and the second border node is an intermediate node, and the second indication message is also used to indicate an incoming label of the second border node, the The incoming label of the second boundary node is the same as the outgoing label of the first boundary node.

在本发明技术方案中,在控制器分层场景中,所述控制器通过控制域控制器建立跨域LSP隧道,也能够减小控制器算路负担与信令开销。In the technical solution of the present invention, in the controller layering scenario, the controller establishes a cross-domain LSP tunnel by controlling the domain controller, which can also reduce the path calculation burden and signaling overhead of the controller.

在第三方面提供的方法中,第一域控制器或第二域控制器可以按照第一方面中所述控制器的方法建立LSP隧道。In the method provided in the third aspect, the first domain controller or the second domain controller can establish the LSP tunnel according to the method of the controller in the first aspect.

在本发明各个实现方式中,控制器可以利用BGP协议向节点下发隧道配置消息,基于BGP协议的隧道配置消息可以称之为BGP信令。本发明中的BGP信令相对于传统BGP信令,在多协议网络层可达信息(Multi-Protocol Network Layer Reachability Information,MP-NLRI)属性中增加一个地址族,该地址族例如可以称为隧道路由地址族,该地址族包括以下字段、且各个字段用于存储的信息如下所示:隧道名字段,用于存储待建立LSP隧道的隧道名,该隧道名字段的长度例如为2字节。应理解,该隧道名为字符串,具体地,隧道名的具体格式可自定义。隧道长度字段,用于存储隧道名字段中存储的隧道名的长度,该隧道长度字段的长度例如为1字节。目的地址字段,用于存储待建立LSP隧道的目的地址,该目的地址的表现形式为地址族+目的地址,地址族包括IPv4和IPv6,该目的地址字段的长度例如为3字节。地址长度字段,用于存储目的地址字段中存储的隧道目的地址的总长度,例如当隧道目的地址为IPv4地址时,地址长度是4字节,当隧道目的地址为IPv6地址时,地址长度一般为16字节,该地址长度字段的长度例如为1字节。地址掩码字段,用于存储目的地址字段中存储的隧道目的地址的掩码,该地址掩码字段的长度例如为1字节。隧道类型字段,用于存储当前隧道配置消息的接收节点的隧道类型,隧道类型包括Ingress、Transit或Egress,该隧道类型字段的长度例如为1字节。隧道标签字段,当隧道类型字段中的隧道类型为Ingress时,隧道标签字段中存储的隧道标签为出标签,当隧道类型字段中的隧道类型为Transit或Egress时,隧道标签字段中存储的隧道标签为入标签,该隧道标签字段的长度例如为3字节。隧道交换标签字段,仅在隧道类型字段中的隧道类型为Transit时有效,当隧道类型为其他情形时,该隧道交换标签字段无效,例如可以设置为空值,该隧道交换标签字段的长度例如为3字节。隧道下一跳字段,用于存储当前隧道配置消息的接收节点的下一跳节点的IP地址,例如为IPv4或IPv6,该隧道下一跳字段的长度例如为4字节。下一跳隧道类型字段,用于存储当前隧道配置消息的接收节点与下一跳节点之间存在的隧道的隧道类型。具体地,例如,该下一跳隧道类型可以是LDP LSP、BGP LSP、TE或GRE等,该下一跳隧道类型字段的长度例如为1字节。隧道标识字段,用于存储下一跳隧道类型字段中存储的隧道类型对应的隧道名,该隧道标识字段的长度例如为3字节。隧道标识长度字段,用于存储隧道标识字段中存储的隧道名的长度,该隧道标识长度字段的长度例如为1字节。In various implementation manners of the present invention, the controller can send a tunnel configuration message to the node by using the BGP protocol, and the tunnel configuration message based on the BGP protocol can be called BGP signaling. Compared with traditional BGP signaling, the BGP signaling in the present invention adds an address family to the multi-protocol network layer reachability information (Multi-Protocol Network Layer Reachability Information, MP-NLRI) attribute, and this address family can be called a tunnel, for example Routing address family, the address family includes the following fields, and the information stored in each field is as follows: the tunnel name field is used to store the tunnel name of the LSP tunnel to be established, and the length of the tunnel name field is, for example, 2 bytes. It should be understood that the tunnel name is a character string, specifically, the specific format of the tunnel name can be customized. The tunnel length field is used to store the length of the tunnel name stored in the tunnel name field, and the length of the tunnel length field is, for example, 1 byte. The destination address field is used to store the destination address of the LSP tunnel to be established. The destination address is in the form of address family+destination address. The address family includes IPv4 and IPv6. The length of the destination address field is, for example, 3 bytes. The address length field is used to store the total length of the tunnel destination address stored in the destination address field. For example, when the tunnel destination address is an IPv4 address, the address length is 4 bytes. When the tunnel destination address is an IPv6 address, the address length is generally 16 bytes, the length of the address length field is, for example, 1 byte. The address mask field is used to store the mask of the tunnel destination address stored in the destination address field, and the length of the address mask field is, for example, 1 byte. The tunnel type field is used to store the tunnel type of the receiving node of the current tunnel configuration message. The tunnel type includes Ingress, Transit or Egress. The length of the tunnel type field is, for example, 1 byte. Tunnel label field, when the tunnel type in the tunnel type field is Ingress, the tunnel label stored in the tunnel label field is the outbound label; when the tunnel type in the tunnel type field is Transit or Egress, the tunnel label stored in the tunnel label field For an incoming label, the length of the tunnel label field is, for example, 3 bytes. The Tunnel Switching Label field is valid only when the tunnel type in the Tunnel Type field is Transit. When the tunnel type is other cases, the Tunnel Switching Label field is invalid. For example, it can be set to a null value. The length of the Tunnel Switching Label field is, for example, 3 bytes. The tunnel next hop field is used to store the IP address of the next hop node of the receiving node of the current tunnel configuration message, such as IPv4 or IPv6, and the length of the tunnel next hop field is, for example, 4 bytes. The next-hop tunnel type field is used to store the tunnel type of the tunnel existing between the receiving node of the current tunnel configuration message and the next-hop node. Specifically, for example, the next-hop tunnel type may be LDP LSP, BGP LSP, TE, or GRE, and the length of the next-hop tunnel type field is, for example, 1 byte. The tunnel identifier field is used to store the tunnel name corresponding to the tunnel type stored in the next-hop tunnel type field, and the length of the tunnel identifier field is, for example, 3 bytes. The tunnel identifier length field is used to store the length of the tunnel name stored in the tunnel identifier field, and the length of the tunnel identifier length field is, for example, 1 byte.

可选地,所述隧道配置消息的所述隧道路由字段还包括以下字段:反向隧道关联字段,存储用于指示反向关联隧道的信息,仅在分层控制器场景中,该反向隧道关联字段有效,用来上级控制器指导下级控制器反向关联隧道,具体地,该反向隧道关联字段具体包括反向隧道名字段,该反向隧道名字段的长度例如为2字节,反向隧道长度字段,该反向隧道长度字段的长度例如为1字节,反向隧道地址长度字段,该反向隧道地址长度字段的长度例如为1字节,反向隧道地址掩码字段,该反向隧道地址掩码字段的长度例如为1字节,反向隧道目的地址字段,该反向隧道目的地址字段的长度例如为3字节。Optionally, the tunnel routing field of the tunnel configuration message further includes the following fields: a reverse tunnel association field, which stores information used to indicate a reverse association tunnel, and only in a layered controller scenario, the reverse tunnel The association field is valid, and is used by the upper-level controller to guide the lower-level controller to associate the tunnel in reverse. Specifically, the reverse tunnel association field specifically includes the reverse tunnel name field. The length of the reverse tunnel name field is, for example, 2 bytes. To the tunnel length field, the length of the reverse tunnel length field is, for example, 1 byte, the reverse tunnel address length field, the length of the reverse tunnel address length field, for example, is 1 byte, the reverse tunnel address mask field, the The length of the reverse tunnel address mask field is, for example, 1 byte, and the length of the reverse tunnel destination address field is, for example, 3 bytes.

设置反向隧道关联字段的意义在于:隧道通常是单向的,即一个隧道具有唯一一个目的地址,但业务一般是双向的,每一个方向上的业务需要绑定该方向的隧道,则两个方向上的业务使用不同的隧道。如果两个方向的隧道没有关联关系,可能会出现以下情形:方向A的隧道无效(Down)了,而方向B(方向A的反方向)的隧道还是有效(Up)的,这种情况在分层控制器场景中是不希望出现的。在本发明中,通过在隧道配置消息中设置反向隧道关联字段,来实现部署双向关联隧道,即把A、B这两个方向上的隧道关联起来,使得如果一个方向(例如方向A)上的隧道无效的话,另一个方向(例如方向B)上的隧道也设置为无效。The significance of setting the reverse tunnel association field is that tunnels are usually unidirectional, that is, a tunnel has only one destination address, but services are generally bidirectional, and services in each direction need to be bound to the tunnel in this direction, then two Services in the other direction use different tunnels. If the tunnels in the two directions are not related, the following situation may occur: the tunnel in direction A is invalid (Down), but the tunnel in direction B (the opposite direction of direction A) is still valid (Up). This is not desired in layer controller scenarios. In the present invention, by setting the reverse tunnel association field in the tunnel configuration message, the deployment of bidirectional association tunnels is realized, that is, the tunnels in the two directions of A and B are associated, so that if one direction (for example, direction A) If the tunnel in the other direction (such as direction B) is invalid, the tunnel in the other direction (for example, direction B) is also set to be invalid.

为了便于理解,下面以具体例子说明下一跳隧道类型字段的作用。例如,下一跳隧道类型字段存储的隧道类型为LDP LSP,当一个节点收到控制器下发的隧道配置消息后,根据该隧道配置消息中下一跳隧道类型字段携带的LDP LSP,该节点会利用与下一跳节点之间具有的LDP LSP隧道与下一跳节点建立通信(例如利用该LDP LSP隧道向下一跳节点转发业务流)。应理解,这种情形下,相当于利用已经建立的LDP LSP隧道来建立当前待建立的LSP隧道,这个过程也称为隧道迭代(当前待建立LSP隧道迭代LDP LSP隧道)。For ease of understanding, the function of the next-hop tunnel type field is described below with a specific example. For example, the tunnel type stored in the next-hop tunnel type field is LDP LSP. When a node receives the tunnel configuration message sent by the controller, according to the LDP LSP carried in the next-hop tunnel type field in the tunnel configuration message, the node The LDP LSP tunnel with the next-hop node will be used to establish communication with the next-hop node (for example, the LDP LSP tunnel is used to forward the service flow to the next-hop node). It should be understood that, in this case, it is equivalent to using the established LDP LSP tunnel to establish the currently to-be-established LSP tunnel, and this process is also called tunnel iteration (the current to-be-established LSP tunnel iterates the LDP LSP tunnel).

在本发明各个实现方式中,控制器还可以利用网络配置(NETCONF)协议向节点下发隧道配置消息,基于NETCONF协议的隧道配置消息的格式可以是NETCONF协议的标准格式,例如xsd表。具体地,基于NETCONF协议的隧道配置消息中也包括如上述基于BGP协议的隧道配置消息中包括的各个字段,为了简洁不再赘述。In various implementations of the present invention, the controller can also use the network configuration (NETCONF) protocol to send a tunnel configuration message to the node, and the format of the tunnel configuration message based on the NETCONF protocol can be a standard format of the NETCONF protocol, such as an xsd table. Specifically, the tunnel configuration message based on the NETCONF protocol also includes various fields included in the above-mentioned tunnel configuration message based on the BGP protocol, which will not be repeated for brevity.

第四方面提供了一种控制器,该控制器用于执行上述第一方面或第一方面的任一方面的可能实现方式中的方法。A fourth aspect provides a controller, where the controller is configured to execute the method in the above-mentioned first aspect or a possible implementation manner of any one of the first aspects.

具体地,该控制器可以包括用于执行第一方面或第一方面的任一可能的实现方式中的方法的模块。Specifically, the controller may include a module for executing the method in the first aspect or any possible implementation manner of the first aspect.

第五方面提供了一种网络设备,该网络设备用于执行上述第二方面或第二方面的任一方面的可能实现方式中的方法。A fifth aspect provides a network device, and the network device is configured to execute the method in the foregoing second aspect or a possible implementation manner of any one of the second aspects.

具体地,该网络设备可以包括用于执行第二方面或第二方面的任一可能的实现方式中的方法的模块。Specifically, the network device may include a module for executing the second aspect or the method in any possible implementation manner of the second aspect.

第六方面提供了一种控制器,该控制器包括存储器和处理器,该存储器用于存储指令,该处理器用于执行该存储器存储的指令,并且对该存储器中存储的指令的执行使得该处理器执行第一方面或第一方面的任一方面的可能实现方式中的方法。A sixth aspect provides a controller, the controller includes a memory and a processor, the memory is used to store instructions, the processor is used to execute the instructions stored in the memory, and execution of the instructions stored in the memory causes the processing The device executes the method in the first aspect or possible implementation manners of any one of the first aspects.

第七方面提供了一种网络设备,该网络设备包括存储器和处理器,该存储器用于存储指令,该处理器用于执行该存储器存储的指令,并且对该存储器中存储的指令的执行使得该处理器执行第二方面或第二方面的任一方面的可能实现方式中的方法。A seventh aspect provides a network device, the network device includes a memory and a processor, the memory is used to store instructions, the processor is used to execute the instructions stored in the memory, and the execution of the instructions stored in the memory makes the processing The device executes the method in the second aspect or possible implementation manners of any one of the second aspects.

第八方面,提供了一种控制器控制系统,所述控制器控制系统包括如第四方面提供的控制器与如第五方面提供的网络设备。In an eighth aspect, a controller control system is provided, and the controller control system includes the controller as provided in the fourth aspect and the network device as provided in the fifth aspect.

基于上述技术方案,在本发明技术方案中,控制器利用网络中已经建立好的隧道计算跨域LSP隧道,能够有效降低控制器的算路负担。控制器通过在隧道配置消息中携带下一跳隧道信息,从而无需向跨域LSP隧道经过的每个节点下发隧道配置,能够一定程度上减小控制器的信令开销。相比于现有技术,本发明技术方案能够在有效减小控制器的算路负担与信令开销的基础上,完成跨域LSP隧道的建立。Based on the above technical solution, in the technical solution of the present invention, the controller calculates the cross-domain LSP tunnel by using the established tunnel in the network, which can effectively reduce the path calculation burden of the controller. By carrying the next-hop tunnel information in the tunnel configuration message, the controller does not need to deliver the tunnel configuration to each node passed by the cross-domain LSP tunnel, which can reduce the signaling overhead of the controller to a certain extent. Compared with the prior art, the technical solution of the present invention can complete the establishment of the cross-domain LSP tunnel on the basis of effectively reducing the path calculation burden and signaling overhead of the controller.

附图说明Description of drawings

为了更清楚地说明本发明实施例的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。In order to more clearly illustrate the technical solutions of the embodiments of the present invention, the following will briefly introduce the accompanying drawings that need to be used in the description of the embodiments or the prior art. Obviously, the accompanying drawings in the following description are only some of the present invention. Embodiments, for those of ordinary skill in the art, other drawings can also be obtained according to these drawings without paying creative labor.

图1示出了本发明实施例的场景示意图。Fig. 1 shows a schematic diagram of a scene of an embodiment of the present invention.

图2示出了根据本发明实施例提供的确定LSP隧道的方法的示意性流程图。Fig. 2 shows a schematic flowchart of a method for determining an LSP tunnel according to an embodiment of the present invention.

图3示出了根据本发明实施例提供的确定LSP隧道的方法的示意图。Fig. 3 shows a schematic diagram of a method for determining an LSP tunnel according to an embodiment of the present invention.

图4示出了根据本发明实施例提供的隧道配置消息的格式的示意图。Fig. 4 shows a schematic diagram of the format of a tunnel configuration message provided according to an embodiment of the present invention.

图5示出了根据本发明实施例提供的确定LSP隧道的方法的另一示意图。Fig. 5 shows another schematic diagram of the method for determining an LSP tunnel according to an embodiment of the present invention.

图6示出了根据本发明实施例提供的控制器的示意性框图。Fig. 6 shows a schematic block diagram of a controller provided according to an embodiment of the present invention.

图7示出了根据本发明实施例提供的转发设备的示意性框图。Fig. 7 shows a schematic block diagram of a forwarding device provided according to an embodiment of the present invention.

图8示出了根据本发明实施例提供的控制器的另一示意性框图。Fig. 8 shows another schematic block diagram of a controller provided according to an embodiment of the present invention.

图9示出了根据本发明实施例提供的转发设备的另一示意性框图。Fig. 9 shows another schematic block diagram of a forwarding device provided according to an embodiment of the present invention.

图10示出了根据本发明实施例提供的控制器控制系统的示意性框图。Fig. 10 shows a schematic block diagram of a controller control system provided according to an embodiment of the present invention.

具体实施方式detailed description

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。The following will clearly and completely describe the technical solutions in the embodiments of the present invention with reference to the accompanying drawings in the embodiments of the present invention. Obviously, the described embodiments are some of the embodiments of the present invention, but not all of them. Based on the embodiments of the present invention, all other embodiments obtained by persons of ordinary skill in the art without creative efforts fall within the protection scope of the present invention.

本发明实施例的应用场景为建立跨域LSP隧道,其中跨域指的是,所需建立的LSP隧道的两个端节点属于两个不同的域,例如属于两个不同的AS域,或者属于相同AS域内的两个不同的IGP域。The application scenario of the embodiment of the present invention is to establish a cross-domain LSP tunnel, where cross-domain means that the two end nodes of the LSP tunnel to be established belong to two different domains, for example, belong to two different AS domains, or belong to Two different IGP domains in the same AS domain.

在现有的建立跨域LSP隧道的方案中,无法利用网络中已经计算好的隧道,例如一个AS域内已经计算好的流量工程(TE)隧道,跨域LSP隧道完全是由控制器计算得到的,而且需要控制器向跨域LSP隧道经过的所有节点下发隧道配置,导致控制器算路压力较大,信令开销也较大。In the existing solutions for establishing cross-domain LSP tunnels, the tunnels already calculated in the network cannot be used, such as the traffic engineering (TE) tunnels that have been calculated in an AS domain, and the cross-domain LSP tunnels are completely calculated by the controller , and the controller needs to deliver the tunnel configuration to all the nodes that the cross-domain LSP tunnel passes through, which results in a high pressure on the controller for path calculation and a large signaling overhead.

针对上述技术问题,本发明实施例提供一种确定跨域LSP隧道的方法、设备和系统,能够在有效降低控制器的算路负担与信令开销的基础上建立跨域LSP隧道。In view of the above technical problems, embodiments of the present invention provide a method, device and system for determining a cross-domain LSP tunnel, which can establish a cross-domain LSP tunnel on the basis of effectively reducing the path calculation burden and signaling overhead of the controller.

为了便于理解与描述本发明实施例,下面结合图1简单介绍本发明实施例的应用场景。In order to facilitate understanding and description of the embodiment of the present invention, the application scenario of the embodiment of the present invention is briefly introduced below with reference to FIG. 1 .

软件定义网络(Software Defined Network,SDN)通过将网络设备控制平面与数据平面分离开来,从而实现了网络流量的灵活控制。具体地,如图1所示,在控制平面,SDN网络控制器(SDN Network Controller,SNC)管理和控制域控制器(Domain Controller,DC),DC用于管理和控制数据平面的网络设备,数据平面的网络设备如图1中所示的基站侧网关(Cell Site Gateway,CSG)、汇聚侧网关(Aggregation Site Gateway,ASG)、自治系统边界路由器(Autonomous System Boundary Router,ASBR)。Software Defined Network (SDN) realizes flexible control of network traffic by separating the control plane of network equipment from the data plane. Specifically, as shown in Figure 1, in the control plane, an SDN network controller (SDN Network Controller, SNC) manages and controls a domain controller (Domain Controller, DC), and the DC is used to manage and control the network devices of the data plane, data Planar network devices are shown in Figure 1 as a Cell Site Gateway (Cell Site Gateway, CSG), Aggregation Site Gateway (Aggregation Site Gateway, ASG), and Autonomous System Boundary Router (Autonomous System Boundary Router, ASBR).

本发明实施例可以应用于图1所示的分层控制器(SNC与DC两层)的场景;还可以应用于一层控制器的场景,例如在图1中没有DC,仅有SNC的场景,这种场景中,由SNC统一控制与管理数据平面上的各个网络设备。在图1所示场景中,SNC也可称为超级控制器。The embodiment of the present invention can be applied to the scenario of layered controllers (two layers of SNC and DC) shown in Figure 1; it can also be applied to the scenario of one layer of controllers, for example, there is no DC in Figure 1 and only the SNC scenario , in this scenario, the SNC uniformly controls and manages each network device on the data plane. In the scenario shown in Figure 1, the SNC can also be called a super controller.

多协议标签交换(Multiprotocol Label Switching,MPLS)是一种分类转发技术,将具有相同转发处理方式的分组归为一类,称为FEC(Forwarding Equivalence Class,转发等价类)。相同FEC的分组在MPLS网络中将获得完全相同的处理。FEC的划分方式非常灵活,可以是以源地址、目的地址、源端口、目的端口或协议类型等作为划分依据。例如,在传统的采用最长匹配算法的IP转发中,到同一个目的地址的所有报文就是一个FEC。标签是一个长度固定、仅具有本地意义的短标识符,用于唯一标识一个分组所属的FEC,一个标签只能代表一个FEC。标签交换路由器(Label Switching Router,LSR)是MPLS网络中的基本元素,所有LSR都支持MPLS技术,例如,图1中所示的网络设备CSG、ASG、ASBR均可作为LSR。一个FEC在MPLS网络中经过的路径称为标签交换路径(Label Switched Path,LSP),例如图1中所示的LSP<CSG1→ASG1→ASBR1→ASBR3→CSG2>。在一条LSP上,沿数据传送的方向,相邻的LSR分别称为上游LSR和下游LSR,例如在图1中,ASG1为CSG1的下游LSR,CSG1为ASG1的上游LSR。LSP的入节点称为Ingress节点,中间的节点(也可称之为转发节点)称为Transit节点,出节点称为Egress节点,例如在图1所示的LSP中,CSG1为Ingress节点,ASG1、ASBR1与ASBR3均为Transit节点,CSG2为Egress节点。Multiprotocol Label Switching (Multiprotocol Label Switching, MPLS) is a classification forwarding technology, which classifies packets with the same forwarding processing method into one category, which is called FEC (Forwarding Equivalence Class, Forwarding Equivalence Class). Groups with the same FEC will be treated exactly the same in the MPLS network. The division method of FEC is very flexible, and can be based on source address, destination address, source port, destination port, or protocol type. For example, in traditional IP forwarding using the longest match algorithm, all packets to the same destination address are one FEC. A label is a short identifier with a fixed length and only local significance. It is used to uniquely identify the FEC to which a group belongs. A label can only represent one FEC. A label switching router (Label Switching Router, LSR) is a basic element in an MPLS network, and all LSRs support the MPLS technology. For example, the network devices CSG, ASG, and ASBR shown in FIG. 1 can all serve as LSRs. The path that a FEC passes through in the MPLS network is called a Label Switched Path (Label Switched Path, LSP), for example, LSP<CSG1→ASG1→ASBR1→ASBR3→CSG2> shown in FIG. 1 . On an LSP, along the direction of data transmission, adjacent LSRs are called upstream LSRs and downstream LSRs respectively. For example, in Figure 1, ASG1 is the downstream LSR of CSG1, and CSG1 is the upstream LSR of ASG1. The entry node of LSP is called Ingress node, the intermediate node (also can be referred to as forwarding node) is called Transit node, and the outgoing node is called Egress node, for example in the LSP shown in Figure 1, CSG1 is Ingress node, ASG1, Both ASBR1 and ASBR3 are transit nodes, and CSG2 is an egress node.

MPLS支持LSP隧道技术。一条LSP的上游LSR和下游LSR,尽管它们之间的路径可能并不在路由协议所提供的路径上,但是MPLS允许在它们之间建立一条新的LSP,这样,上游LSR和下游LSR分别就是这条LSP的起点和终点。这时,上游LSR和下游LSR间的LSP就是LSP隧道,它避免了采用传统的网络层封装隧道。例如,图1中所示的LSP<CSG1→ASG1→ASBR1→ASBR3→CSG2>可以看作为CSG1与CSG2之间的一条跨域LSP隧道。MPLS supports LSP tunnel technology. The upstream LSR and downstream LSR of an LSP, although the path between them may not be on the path provided by the routing protocol, but MPLS allows a new LSP to be established between them, so that the upstream LSR and downstream LSR are respectively the path The start and end of the LSP. At this time, the LSP between the upstream LSR and the downstream LSR is an LSP tunnel, which avoids the use of traditional network layer encapsulation tunnels. For example, the LSP <CSG1→ASG1→ASBR1→ASBR3→CSG2> shown in Figure 1 can be regarded as an inter-domain LSP tunnel between CSG1 and CSG2.

图2示出了本发明实施例的确定跨域LSP隧道的方法100的示意性流程图,如图2所示,该方法100包括:FIG. 2 shows a schematic flowchart of a method 100 for determining a cross-domain LSP tunnel according to an embodiment of the present invention. As shown in FIG. 2 , the method 100 includes:

S110,控制器获取隧道建立请求,该隧道建立请求用于请求建立首节点与尾节点之间的标签交换路径LSP隧道,该首节点与该尾节点属于不同的域。本发明实施例中的控制器例如图1中所示的SNC。S110. The controller obtains a tunnel establishment request, where the tunnel establishment request is used to request establishment of a label switched path LSP tunnel between a head node and a tail node, where the head node and the tail node belong to different domains. The controller in the embodiment of the present invention is, for example, the SNC shown in FIG. 1 .

S120,该控制器根据该隧道建立请求,基于网络拓扑计算第一跨域LSP隧道,该第一跨域LSP隧道经过的节点包括该首节点、第一中间节点与该尾节点,其中,该首节点、该第一中间节点与该尾节点中的第一节点与第二节点之间具有已经建立的隧道,该网络拓扑中包括该已经建立的隧道。S120. The controller calculates a first cross-domain LSP tunnel based on the network topology according to the tunnel establishment request, and the nodes passed by the first cross-domain LSP tunnel include the head node, the first intermediate node, and the tail node, where the head node There is an established tunnel between the first node and the second node among the node, the first intermediate node, and the tail node, and the network topology includes the established tunnel.

应理解,该第一中间节点指示在该第一跨域LSP隧道中位于该首节点与该尾节点中间的一个或多个转发节点。It should be understood that the first intermediate node indicates one or more forwarding nodes located between the head node and the tail node in the first cross-domain LSP tunnel.

S130,该控制器分别向该首节点、该第一中间节点与该尾节点下发相应的隧道配置消息,用于指示该首节点、该第一中间节点与该尾节点建立该第一跨域LSP隧道,其中,该控制器向该第一节点发送的隧道配置消息携带下一跳隧道信息,该下一跳隧道信息用于指示第一节点与第二节点之间的已经建立的隧道,以指示该第一节点利用该已经建立的隧道与该第二节点进行通信连接。该下一跳隧道信息具体包括下一跳隧道(对应已经建立的隧道)的隧道类型。S130. The controller sends corresponding tunnel configuration messages to the head node, the first intermediate node, and the tail node respectively, for instructing the head node, the first intermediate node, and the tail node to establish the first cross-domain LSP tunnel, wherein the tunnel configuration message sent by the controller to the first node carries next-hop tunnel information, and the next-hop tunnel information is used to indicate the established tunnel between the first node and the second node, so as to Instructing the first node to use the established tunnel to communicate with the second node. The next-hop tunnel information specifically includes the tunnel type of the next-hop tunnel (corresponding to the established tunnel).

具体地,控制器向首节点发送的隧道配置消息携带下列信息:入口隧道类型(Ingress)、出标签、下一跳节点的IP地址;向第一中间节点发送的隧道配置消息携带下列信息:中转隧道类型(Transit)、入标签、出标签、下一跳节点的IP地址,该第一中间节点的入标签与该第一中间节点的上一跳节点的出标签相同;向该尾节点发送的隧道配置消息携带下列信息:出口隧道类型(Egress)、入标签,该尾节点的入标签与该尾节点的上一跳节点的出标签相同。Specifically, the tunnel configuration message sent by the controller to the head node carries the following information: the entry tunnel type (Ingress), the outgoing label, and the IP address of the next hop node; the tunnel configuration message sent to the first intermediate node carries the following information: Tunnel type (Transit), incoming label, outgoing label, IP address of the next hop node, the incoming label of the first intermediate node is the same as the outgoing label of the last hop node of the first intermediate node; The tunnel configuration message carries the following information: egress tunnel type (Egress), inbound label, and the inbound label of the tail node is the same as the outbound label of the previous hop node of the tail node.

S140,该第一节点根据接收到的隧道配置消息,该隧道配置消息携带下一跳隧道信息,该下一跳隧道信息用于指示第一节点与第二节点之间具有的已经建立的隧道,该第一节点通过该已经建立的隧道与该第二节点建立通信连接。S140, the first node according to the received tunnel configuration message, the tunnel configuration message carries next-hop tunnel information, and the next-hop tunnel information is used to indicate the established tunnel between the first node and the second node, The first node establishes a communication connection with the second node through the established tunnel.

当该第一节点为该第一跨域LSP隧道的首节点时,该第二节点为该第一跨域LSP隧道的中间节点。当该第一节点为该第一跨域LSP隧道的中间节点时,该第二节点为该第一跨域LSP隧道中该第一节点的下一跳中间节点,或者该第二节点为该第一跨域LSP隧道的尾节点。When the first node is the first node of the first cross-domain LSP tunnel, the second node is an intermediate node of the first cross-domain LSP tunnel. When the first node is the intermediate node of the first cross-domain LSP tunnel, the second node is the next-hop intermediate node of the first node in the first cross-domain LSP tunnel, or the second node is the first cross-domain LSP tunnel The tail node of an inter-domain LSP tunnel.

具体地,当该第一节点为该第一跨域LSP隧道的首节点时,该第一节点接收控制器发送的隧道配置消息还携带下列信息:入口隧道类型(Ingress)、出标签、下一跳节点的IP地址,该下一跳节点即为第二节点。该第一节点根据接收的隧道配置消息中的下一跳隧道信息,确定已经建立的隧道,并为该已经建立的隧道分配隧道ID,并生成转发表项。该转发表项中包括隧道目的IP地址、出标签、下一跳节点的IP地址、下一跳隧道ID(即为已经建立的隧道分配的ID)。Specifically, when the first node is the head node of the first cross-domain LSP tunnel, the first node receives the tunnel configuration message sent by the controller and also carries the following information: ingress tunnel type (Ingress), egress label, next The IP address of the hop node, and the next hop node is the second node. The first node determines the established tunnel according to the next-hop tunnel information in the received tunnel configuration message, assigns a tunnel ID to the established tunnel, and generates a forwarding entry. The forwarding table entry includes the tunnel destination IP address, the outgoing label, the IP address of the next-hop node, and the next-hop tunnel ID (that is, the ID assigned to the established tunnel).

具体地,当该第一节点为该第一跨域LSP隧道的中间节点时,该第一节点接收控制器发送的隧道配置消息还携带下列信息:中转隧道类型(Transit)、入标签、出标签、下一跳节点的IP地址,该下一跳节点即为该第二节点,该第一节点的入标签与该第一节点的上一跳节点的出标签相同。该第一节点根据隧道配置消息中的下一跳隧道信息,确定已经建立的隧道,并为该已经建立的隧道分配隧道ID,并生成转发表项。该转发表项中包括隧道目的IP地址、入标签、出标签、下一跳节点的IP地址、下一跳隧道ID(即为已经建立的隧道分配的ID)。Specifically, when the first node is an intermediate node of the first cross-domain LSP tunnel, the first node receives the tunnel configuration message sent by the controller and also carries the following information: transit tunnel type (Transit), incoming label, outgoing label . The IP address of the next hop node, the next hop node is the second node, and the inbound label of the first node is the same as the outbound label of the previous hop node of the first node. The first node determines the established tunnel according to the next-hop tunnel information in the tunnel configuration message, assigns a tunnel ID to the established tunnel, and generates a forwarding entry. The forwarding entry includes the tunnel destination IP address, incoming label, outgoing label, IP address of the next-hop node, and next-hop tunnel ID (that is, the ID assigned to the established tunnel).

还应理解,在该第一节点为该跨域LSP隧道的中间节点,该第二节点为该跨域LSP隧道的尾节点的情况下,该第二节点接收控制器发送的隧道配置消息包括以下信息:出口隧道类型(Egress)与入标签,该第二节点的入标签与该第一节点的出标签相同。该第二节点根据接收到的隧道配置消息生成转发表项,该转发表项中包括隧道目的IP地址与入标签。It should also be understood that, when the first node is an intermediate node of the cross-domain LSP tunnel and the second node is the tail node of the cross-domain LSP tunnel, the tunnel configuration message sent by the second node receiving controller includes the following Information: egress tunnel type (Egress) and incoming label, the incoming label of the second node is the same as the outgoing label of the first node. The second node generates a forwarding entry according to the received tunnel configuration message, and the forwarding entry includes a tunnel destination IP address and an incoming label.

具体地,如图3所示,控制器预先获取了如图3所示的网络拓扑(包括CSG1、ASG1、CSG3与CSG2的相关拓扑信息)。假设CSG1与CSG2之间已经建立有LDP LSP隧道,该LDP LSP隧道上可能包括多个转发节点(图3中未示出),ASG1与CSG2之间已经建立了TE隧道,该TE隧道上可能包括多个转发节点(图3中未示出)。CSG1与CSG2之间的LDP LSP隧道,以及ASG1与CSG2之间的TE隧道对应于本发明实施例中的已经建立的隧道。Specifically, as shown in FIG. 3 , the controller pre-acquires the network topology shown in FIG. 3 (including relevant topology information of CSG1 , ASG1 , CSG3 and CSG2 ). Assuming that an LDP LSP tunnel has been established between CSG1 and CSG2, the LDP LSP tunnel may include multiple forwarding nodes (not shown in Figure 3), and a TE tunnel has been established between ASG1 and CSG2, and the TE tunnel may include Multiple forwarding nodes (not shown in Figure 3). The LDP LSP tunnel between CSG1 and CSG2, and the TE tunnel between ASG1 and CSG2 correspond to the established tunnels in the embodiment of the present invention.

控制器获取用于请求在CSG1与CSG2之间建立LSP隧道的隧道建立请求。控制器根据图3所示的网络拓扑,以CSG1为首节点,以CSG2为尾节点,计算得到一条LSP隧道:<CSG1→ASG1→CSG2>(对应于本发明实施例中的第一跨域LSP隧道)。则CSG1为Ingress节点,ASG1为Transit节点,CSG2为Egress节点。控制器分别为CSG1、ASG1、CSG2分配标签:为Ingress节点CSG1分配出标签Label1,为Transit节点ASG1分配入标签Label1与出标签Label2,为Egress节点CSG2分配入标签Label2。然后控制器分别向CSG1、ASG1、CSG2下发相关隧道配置消息,以创建LSP隧道<CSG1→ASG1→CSG2>。The controller obtains a tunnel establishment request for requesting establishment of an LSP tunnel between CSG1 and CSG2. According to the network topology shown in Figure 3, the controller calculates an LSP tunnel with CSG1 as the head node and CSG2 as the tail node: <CSG1→ASG1→CSG2> (corresponding to the first cross-domain LSP tunnel in the embodiment of the present invention ). Then CSG1 is an Ingress node, ASG1 is a Transit node, and CSG2 is an Egress node. The controller assigns labels to CSG1, ASG1, and CSG2 respectively: the ingress node CSG1 is assigned the outgoing label Label1, the transit node ASG1 is assigned the incoming label Label1 and the outgoing label Label2, and the egress node CSG2 is assigned the incoming label Label2. Then the controller sends relevant tunnel configuration messages to CSG1, ASG1, and CSG2 respectively to create an LSP tunnel <CSG1→ASG1→CSG2>.

具体地,控制器向CSG1下发的隧道配置消息包括:入口隧道类型(Ingress),出标签Label1,下一跳节点(即ASG1)的IP地址,以及下一跳隧道类型LDP LSP隧道,用于指示CSG1利用该LDP LSP隧道与ASG1建立通信连接;向ASG1下发的隧道配置消息包括:中转隧道类型(Transit),入标签Label1,出标签Label2,下一跳节点(即CSG2)的IP地址,以及下一跳隧道类型TE隧道,用于指示ASG1利用TE隧道与CSG2建立通信连接,例如ASG1利用TE隧道向CSG2转发业务流;向CSG2下发的隧道配置消息包括:出口隧道类型(Egress),入标签Label2。至此,完成LSP隧道<CSG1→ASG1→CSG2>的建立。后续进入网络的业务流会按照<CSG1→ASG1→CSG2>进行传输。例如,根据控制器下发的隧道配置消息,CSG1利用该LDP LSP隧道向ASG1发送携带Label1的业务流,ASG1接收携带Label1的业务流,利用Label2替换业务流中的Label1,并利用该TE隧道向CSG2发送携带Label2的业务流、CSG2接收携带Label2的业务流。Specifically, the tunnel configuration message issued by the controller to CSG1 includes: the entry tunnel type (Ingress), the exit label Label1, the IP address of the next-hop node (ie, ASG1), and the next-hop tunnel type LDP LSP tunnel for Instruct CSG1 to use the LDP LSP tunnel to establish a communication connection with ASG1; the tunnel configuration message sent to ASG1 includes: Transit tunnel type (Transit), incoming label Label1, outgoing label Label2, IP address of the next hop node (i.e. CSG2), And the next-hop tunnel type TE tunnel, which is used to instruct ASG1 to use the TE tunnel to establish a communication connection with CSG2, for example, ASG1 uses the TE tunnel to forward the service flow to CSG2; the tunnel configuration message issued to CSG2 includes: egress tunnel type (Egress), Enter the label Label2. So far, the establishment of the LSP tunnel <CSG1→ASG1→CSG2> is completed. Subsequent service flows entering the network will be transmitted according to <CSG1→ASG1→CSG2>. For example, according to the tunnel configuration message delivered by the controller, CSG1 uses the LDP LSP tunnel to send a service flow carrying Label1 to ASG1. ASG1 receives the service flow carrying Label1, replaces Label1 in the service flow with Label2, and uses the TE tunnel to send CSG2 sends the service flow carrying Label2, and CSG2 receives the service flow carrying Label2.

在本发明实施例中,跨域LSP隧道经过的节点根据控制器下发的隧道配置消息后,根据下一跳隧道信息,确定已经建立的隧道,并为该已经建立的隧道分配隧道ID,并生成转发表项。具体地,CSG1根据控制器下发的隧道配置消息生成转发表项,该转发表项中包括隧道目的IP地址(即CSG2的IP地址)、出标签Label1、下一跳节点(即ASG1)的IP地址、下一跳隧道(即LDP LSP隧道)ID。ASG1根据控制器下发的隧道配置消息生成转发表项,该转发表项中包括隧道目的IP地址(即CSG2的IP地址)、入标签Label1、出标签Label2、下一跳节点(即CSG1)的IP地址、下一跳隧道(即TE隧道)ID。CSG2根据控制器下发的隧道配置消息生成转发表项,该转发表项中包括隧道目的IP地址(即CSG2的IP地址)、入标签Label2。In the embodiment of the present invention, the node passing through the cross-domain LSP tunnel determines the established tunnel according to the tunnel configuration message issued by the controller and the next-hop tunnel information, and assigns a tunnel ID to the established tunnel, and Generate forwarding entries. Specifically, CSG1 generates a forwarding table entry according to the tunnel configuration message issued by the controller, and the forwarding table entry includes the tunnel destination IP address (that is, the IP address of CSG2), the outgoing label Label1, and the IP address of the next hop node (that is, ASG1). Address, next hop tunnel (that is, LDP LSP tunnel) ID. ASG1 generates a forwarding table entry according to the tunnel configuration message issued by the controller. The forwarding table entry includes the tunnel destination IP address (that is, the IP address of CSG2), the incoming label Label1, the outgoing label Label2, and the next hop node (namely CSG1). IP address, next-hop tunnel (TE tunnel) ID. CSG2 generates a forwarding entry according to the tunnel configuration message delivered by the controller, and the forwarding entry includes the tunnel destination IP address (that is, the IP address of CSG2) and the incoming label Label2.

可选地,在本发明实施例中,控制器会为LSP隧道<CSG1→ASG1→CSG2>分配隧道名Tunnel1(即为第一跨域LSP隧道配置的隧道名为Tunnel1)。Optionally, in this embodiment of the present invention, the controller assigns the tunnel name Tunnel1 to the LSP tunnel <CSG1→ASG1→CSG2> (that is, the tunnel name configured for the first cross-domain LSP tunnel is Tunnel1).

具体地,在控制器分别向CSG1、ASG1、CSG2下发相关隧道配置消息中可以携带隧道名Tunnel1。Specifically, the tunnel name Tunnel1 may be carried in the relevant tunnel configuration messages sent by the controller to CSG1, ASG1, and CSG2 respectively.

在本发明实施例中,控制器基于网络拓扑计算跨域LSP隧道,所述网络拓扑中包括已经建立好的隧道,则控制器可以基于网络中已经建立好的隧道计算跨域LSP隧道。具体地,控制器根据网络拓扑获知,要计算的跨域LSP隧道经过第一节点与第二节点,且第一节点与第二节点之间已经具有建好的已经建立的隧道,则控制器直接利用该已经建立的隧道确定所述第一节点与第二节点之间的隧道,而非逐节点计算第一节点与第二节点之间的隧道。例如,在图3所示场景中,无需计算从ASG1到CSG2的具体隧道(假设ASG1与CSG2并非直连,二者之前还包括多个其他转发节点),可以直接利用TE隧道实现ASG1与CSG2的连接。应理解,减小了第一节点与第二节点之间的隧道的计算负担,自然能够减小控制器计算整条跨域LSP隧道的计算负担。所述控制器完成跨域LSP隧道的计算后,通过向跨域LSP隧道经过的转发节点下发相应的隧道配置消息,以完成跨域LSP隧道的建立,其中在向第一节点发送的隧道配置消息中携带下一跳隧道信息,该下一跳隧道信息用于指示已经建立的隧道,以指示第一节点利用已经建立的隧道与第二节点建立通信连接,而非像现有技术一样需要向第一节点与第二节点之间的各个转发节点下发相应的隧道配置消息才可以实现第一节点与第二节点之间的通信连接,因此,能够降低控制器的信令开销。In the embodiment of the present invention, the controller calculates the inter-domain LSP tunnel based on the network topology, and the network topology includes established tunnels, and the controller may calculate the inter-domain LSP tunnel based on the established tunnels in the network. Specifically, the controller learns from the network topology that the cross-domain LSP tunnel to be calculated passes through the first node and the second node, and there is already an established tunnel between the first node and the second node, then the controller directly The established tunnel is used to determine the tunnel between the first node and the second node, instead of calculating the tunnel between the first node and the second node node by node. For example, in the scenario shown in Figure 3, there is no need to calculate the specific tunnel from ASG1 to CSG2 (assuming that ASG1 and CSG2 are not directly connected, and there are multiple other forwarding nodes before them), and the TE tunnel can be directly used to realize the connection between ASG1 and CSG2. connect. It should be understood that reducing the calculation burden of the tunnel between the first node and the second node can naturally reduce the calculation burden of the controller for calculating the entire cross-domain LSP tunnel. After the controller completes the calculation of the cross-domain LSP tunnel, it sends a corresponding tunnel configuration message to the forwarding node passed by the cross-domain LSP tunnel to complete the establishment of the cross-domain LSP tunnel, wherein the tunnel configuration message sent to the first node The next-hop tunnel information is carried in the message, and the next-hop tunnel information is used to indicate the established tunnel, so as to indicate that the first node uses the established tunnel to establish a communication connection with the second node, instead of needing to communicate with the second node as in the prior art. Only when each forwarding node between the first node and the second node issues a corresponding tunnel configuration message can the communication connection between the first node and the second node be realized, thus, the signaling overhead of the controller can be reduced.

综上所述,在本发明实施例中,控制器利用网络中已经建立好的隧道计算跨域LSP隧道,能够有效降低控制器的算路负担。控制器通过在隧道配置消息中携带下一跳隧道信息,从而无需向跨域LSP隧道经过的每个节点下发隧道配置,能够一定程度上减小控制器的信令开销。相比于现有技术,本发明实施例能够在有效减小控制器的算路负担与信令开销的基础上,完成跨域LSP隧道的建立。To sum up, in the embodiment of the present invention, the controller calculates the cross-domain LSP tunnel by using the established tunnel in the network, which can effectively reduce the path calculation burden of the controller. By carrying the next-hop tunnel information in the tunnel configuration message, the controller does not need to deliver the tunnel configuration to each node passed by the cross-domain LSP tunnel, which can reduce the signaling overhead of the controller to a certain extent. Compared with the prior art, the embodiment of the present invention can complete the establishment of the cross-domain LSP tunnel on the basis of effectively reducing the path calculation burden and signaling overhead of the controller.

应理解,图3作为示例而非限定,例如ASG1与CSG2之间已经建立的隧道除了TE隧道之外,还可以是以下这些隧道类型:LDP LSP、BGP LSP、TE、GRE等通信网络中使用的隧道。本发明实施例对此不作限定。It should be understood that FIG. 3 is an example rather than a limitation. For example, in addition to the TE tunnel, the established tunnel between ASG1 and CSG2 can also be the following tunnel types: LDP LSP, BGP LSP, TE, GRE, etc. used in communication networks tunnel. This embodiment of the present invention does not limit it.

可选地,在本发明实施例中,S130该控制器向该首节点、该第一中间节点与该尾节点下发相应的隧道配置消息,包括:该控制器网络配置NETCONF协议或边界网关协议BGP分别向该首节点、该第一中间节点与该尾节点下发相应的隧道配置消息。该隧道配置消息为BGP信令。Optionally, in the embodiment of the present invention, S130, the controller sends corresponding tunnel configuration messages to the head node, the first intermediate node, and the tail node, including: the controller network configuration NETCONF protocol or border gateway protocol BGP sends corresponding tunnel configuration messages to the head node, the first intermediate node and the tail node respectively. The tunnel configuration message is BGP signaling.

具体地,本发明实施例中,控制器可以利用BGP协议向节点下发隧道配置消息,基于BGP协议的隧道配置消息可以称之为BGP信令。本发明中的BGP信令相对于传统BGP信令,在多协议网络层可达信息(MP-NLRI)属性中增加一个地址族,该地址族例如可以称为隧道路由地址族,该地址族包括以下字段、且各个字段用于存储的信息如下所示:隧道名字段,用于存储待建立LSP隧道的隧道名,该隧道名字段的长度例如为2字节。应理解,该隧道名为字符串,具体地,隧道名的具体格式可自定义。隧道长度字段,用于存储隧道名字段中存储的隧道名的长度,该隧道长度字段的长度例如为1字节。目的地址字段,用于存储待建立LSP隧道的目的地址,该目的地址的表现形式为地址族+目的地址,地址族包括IPv4和IPv6,该目的地址字段的长度例如为3字节。地址长度字段,用于存储目的地址字段中存储的隧道目的地址的总长度,例如当隧道目的地址为IPv4地址时,地址长度是4字节,当隧道目的地址为IPv6地址时,地址长度一般为16字节,该地址长度字段的长度例如为1字节。地址掩码字段,用于存储目的地址字段中存储的隧道目的地址的掩码,该地址掩码字段的长度例如为1字节。隧道类型字段,用于存储当前隧道配置消息的接收节点的隧道类型,隧道类型包括Ingress、Transit或Egress,该隧道类型字段的长度例如为1字节。隧道标签字段,当隧道类型字段中的隧道类型为Ingress时,隧道标签字段中存储的隧道标签为出标签,当隧道类型字段中的隧道类型为Transit或Egress时,隧道标签字段中存储的隧道标签为入标签,该隧道标签字段的长度例如为3字节。隧道交换标签字段,仅在隧道类型字段中的隧道类型为Transit时有效,当隧道类型为其他情形时,该隧道交换标签字段无效,例如可以设置为空值,该隧道交换标签字段的长度例如为3字节。隧道下一跳字段,用于存储当前隧道配置消息的接收节点的下一跳节点的IP地址,例如为IPv4或IPv6,该隧道下一跳字段的长度例如为4字节。下一跳隧道类型字段,用于存储当前隧道配置消息的接收节点与下一跳节点之间存在的隧道的隧道类型。具体地,例如,该下一跳隧道类型可以是LDP LSP、BGP LSP、TE或GRE等,该下一跳隧道类型字段的长度例如为1字节。隧道标识字段,用于存储下一跳隧道类型字段中存储的隧道类型对应的隧道名,该隧道标识字段的长度例如为3字节。隧道标识长度字段,用于存储隧道标识字段中存储的隧道名的长度,该隧道标识长度字段的长度例如为1字节。Specifically, in the embodiment of the present invention, the controller may send a tunnel configuration message to the node by using the BGP protocol, and the tunnel configuration message based on the BGP protocol may be called BGP signaling. Compared with traditional BGP signaling, BGP signaling in the present invention adds an address family in the Multi-Protocol Network Layer Reachability Information (MP-NLRI) attribute. This address family can be called a tunnel routing address family, for example, and the address family includes The following fields and the information stored in each field are as follows: the tunnel name field is used to store the tunnel name of the LSP tunnel to be established, and the length of the tunnel name field is, for example, 2 bytes. It should be understood that the tunnel name is a character string, specifically, the specific format of the tunnel name can be customized. The tunnel length field is used to store the length of the tunnel name stored in the tunnel name field, and the length of the tunnel length field is, for example, 1 byte. The destination address field is used to store the destination address of the LSP tunnel to be established. The destination address is in the form of address family+destination address. The address family includes IPv4 and IPv6. The length of the destination address field is, for example, 3 bytes. The address length field is used to store the total length of the tunnel destination address stored in the destination address field. For example, when the tunnel destination address is an IPv4 address, the address length is 4 bytes. When the tunnel destination address is an IPv6 address, the address length is generally 16 bytes, the length of the address length field is, for example, 1 byte. The address mask field is used to store the mask of the tunnel destination address stored in the destination address field, and the length of the address mask field is, for example, 1 byte. The tunnel type field is used to store the tunnel type of the receiving node of the current tunnel configuration message. The tunnel type includes Ingress, Transit or Egress. The length of the tunnel type field is, for example, 1 byte. Tunnel label field, when the tunnel type in the tunnel type field is Ingress, the tunnel label stored in the tunnel label field is the outbound label; when the tunnel type in the tunnel type field is Transit or Egress, the tunnel label stored in the tunnel label field For an incoming label, the length of the tunnel label field is, for example, 3 bytes. The Tunnel Switching Label field is valid only when the tunnel type in the Tunnel Type field is Transit. When the tunnel type is other cases, the Tunnel Switching Label field is invalid. For example, it can be set to a null value. The length of the Tunnel Switching Label field is, for example, 3 bytes. The tunnel next hop field is used to store the IP address of the next hop node of the receiving node of the current tunnel configuration message, such as IPv4 or IPv6, and the length of the tunnel next hop field is, for example, 4 bytes. The next-hop tunnel type field is used to store the tunnel type of the tunnel existing between the receiving node of the current tunnel configuration message and the next-hop node. Specifically, for example, the next-hop tunnel type may be LDP LSP, BGP LSP, TE, or GRE, and the length of the next-hop tunnel type field is, for example, 1 byte. The tunnel identifier field is used to store the tunnel name corresponding to the tunnel type stored in the next-hop tunnel type field, and the length of the tunnel identifier field is, for example, 3 bytes. The tunnel identifier length field is used to store the length of the tunnel name stored in the tunnel identifier field, and the length of the tunnel identifier length field is, for example, 1 byte.

可选地,在本发明实施例中,该隧道配置消息的该隧道路由字段还包括以下字段:反向隧道关联字段,存储用于指示反向关联隧道的信息,仅在分层控制器场景中,该反向隧道关联字段有效,用来上级控制器指导下级控制器反向关联隧道,具体地,该反向隧道关联字段具体包括反向隧道名字段,该反向隧道名字段的长度例如为2字节,反向隧道长度字段,该反向隧道长度字段的长度例如为1字节,反向隧道地址长度字段,该反向隧道地址长度字段的长度例如为1字节,反向隧道地址掩码字段,该反向隧道地址掩码字段的长度例如为1字节,反向隧道目的地址字段,该反向隧道目的地址字段的长度例如为3字节。Optionally, in this embodiment of the present invention, the tunnel routing field of the tunnel configuration message further includes the following fields: a reverse tunnel association field, storing information for indicating a reverse association tunnel, only in a layered controller scenario , the reverse tunnel association field is valid, and is used by the superior controller to instruct the subordinate controller to reversely associate the tunnel. Specifically, the reverse tunnel association field specifically includes the reverse tunnel name field, and the length of the reverse tunnel name field is, for example, 2 bytes, the reverse tunnel length field, the length of the reverse tunnel length field is, for example, 1 byte, the reverse tunnel address length field, the length of the reverse tunnel address length field, for example, is 1 byte, the reverse tunnel address A mask field, the length of the reverse tunnel address mask field is, for example, 1 byte, and the reverse tunnel destination address field, the length of the reverse tunnel destination address field is, for example, 3 bytes.

可选地,在本发明实施例中,控制器还可以利用网络配置(NETCONF)协议向节点下发隧道配置消息,基于NETCONF协议的隧道配置消息的格式可以是NETCONF协议的标准格式,例如xsd表。具体地,基于NETCONF协议的隧道配置消息中也包括如图4所示的各个字段,为了简洁,这里不再赘述。Optionally, in the embodiment of the present invention, the controller can also use the network configuration (NETCONF) protocol to send a tunnel configuration message to the node, and the format of the tunnel configuration message based on the NETCONF protocol can be the standard format of the NETCONF protocol, such as an xsd table . Specifically, the tunnel configuration message based on the NETCONF protocol also includes various fields as shown in FIG. 4 , which are not repeated here for brevity.

具体地,还以图3所示场景为例,控制器计算的LSP隧道为:<CSG1→ASG1→CSG2>,控制器为该LSP隧道<CSG1→ASG1→CSG2>分配隧道名Tunnel1。Specifically, taking the scenario shown in FIG. 3 as an example, the LSP tunnel calculated by the controller is: <CSG1→ASG1→CSG2>, and the controller assigns the tunnel name Tunnel1 to the LSP tunnel <CSG1→ASG1→CSG2>.

控制器向作为Ingress节点的CSG1下发的隧道配置消息的格式如图4所示,其中,隧道名字段中存储字符串“Tunnel1”;隧道长度字段中存储字符串“Tunnel1”的长度;目的地址字段中存储LSP隧道的目的IP地址,即CSG2的IP地址;地址长度字段中存储目的地址字段中存储的CSG2的IP地址的总长度;地址掩码字段存储目的地址字段中存储的CSG2的IP地址的掩码;隧道类型字段中存储Ingress;隧道标签字段存储出标签Label1;隧道交换标签字段为无效字段;隧道下一跳字段存储ASG1的IP地址;下一跳隧道类型字段存储LDP LSP隧道的隧道类型信息;隧道标识字段存储下一跳隧道类型字段中存储的LDP LSP隧道的隧道名;隧道标识长度字段存储隧道标识字段中存储的隧道名的长度;反向隧道关联字段为无效字段。The format of the tunnel configuration message issued by the controller to CSG1 as an Ingress node is shown in Figure 4, where the string "Tunnel1" is stored in the tunnel name field; the length of the string "Tunnel1" is stored in the tunnel length field; the destination address The field stores the destination IP address of the LSP tunnel, that is, the IP address of CSG2; the address length field stores the total length of the IP address of CSG2 stored in the destination address field; the address mask field stores the IP address of CSG2 stored in the destination address field The tunnel type field stores Ingress; the tunnel label field stores the label Label1; the tunnel switch label field is an invalid field; the tunnel next hop field stores the IP address of ASG1; the next hop tunnel type field stores the tunnel of the LDP LSP tunnel Type information; the tunnel identifier field stores the tunnel name of the LDP LSP tunnel stored in the next hop tunnel type field; the tunnel identifier length field stores the length of the tunnel name stored in the tunnel identifier field; the reverse tunnel association field is an invalid field.

控制器向作为Transit节点的ASG1下发的隧道配置消息的格式也如图4所示,其中,隧道名字段中存储字符串“Tunnel1”;隧道长度字段中存储字符串“Tunnel1”的长度;目的地址字段中存储LSP隧道的目的IP地址,即CSG2的IP地址;地址长度字段中存储目的地址字段中存储的CSG2的IP地址的总长度;地址掩码字段存储目的地址字段中存储的CSG2的IP地址的掩码;隧道类型字段存储Transit;隧道标签字段存储入标签Label1;隧道交换标签字段存储出标签Label2;隧道下一跳字段存储CSG2的IP地址;下一跳隧道类型字段存储TE隧道;隧道标识字段存储TE隧道的隧道名;隧道标识长度字段存储隧道标识字段中存储的TE隧道的隧道名的长度;反向隧道关联字段为无效字段。The format of the tunnel configuration message issued by the controller to ASG1 as a Transit node is also shown in Figure 4, where the string "Tunnel1" is stored in the tunnel name field; the length of the string "Tunnel1" is stored in the tunnel length field; the purpose The address field stores the destination IP address of the LSP tunnel, that is, the IP address of CSG2; the address length field stores the total length of the IP address of CSG2 stored in the destination address field; the address mask field stores the IP address of CSG2 stored in the destination address field The mask of the address; the tunnel type field stores Transit; the tunnel label field stores the label Label1; the tunnel exchange label field stores the label Label2; the tunnel next hop field stores the IP address of CSG2; the next hop tunnel type field stores the TE tunnel; tunnel The identification field stores the tunnel name of the TE tunnel; the tunnel identification length field stores the length of the tunnel name of the TE tunnel stored in the tunnel identification field; the reverse tunnel association field is an invalid field.

控制器向作为Egress节点的CSG2下发的隧道配置消息的格式也如图4所示,其中,隧道名字段中存储字符串“Tunnel1”;隧道长度字段中存储字符串“Tunnel1”的长度;目的地址字段中存储LSP隧道的目的IP地址,即CSG2的IP地址;地址长度字段中存储目的地址字段中存储的CSG2的IP地址的总长度;地址掩码字段存储目的地址字段中存储的CSG2的IP地址的掩码;隧道类型字段存储Egress;隧道标签字段存储入标签Label2;隧道交换标签字段、隧道下一跳字段、下一跳隧道类型字段、隧道标识字段、隧道标识长度字段与反向隧道关联字段为无效字段均为无效字段。The format of the tunnel configuration message issued by the controller to CSG2 as the egress node is also shown in Figure 4, where the string "Tunnel1" is stored in the tunnel name field; the length of the string "Tunnel1" is stored in the tunnel length field; the purpose The address field stores the destination IP address of the LSP tunnel, that is, the IP address of CSG2; the address length field stores the total length of the IP address of CSG2 stored in the destination address field; the address mask field stores the IP address of CSG2 stored in the destination address field The mask of the address; the tunnel type field stores Egress; the tunnel label field stores the label Label2; the tunnel exchange label field, the tunnel next hop field, the next hop tunnel type field, the tunnel identification field, and the tunnel identification length field are associated with the reverse tunnel Fields are invalid Fields are invalid fields.

优选地,在本发明实施例中,为了保证LSP隧道的快速建立,控制器可以从计算得到的LSP隧道的尾节点开始下发隧道配置消息,例如在图3所示场景中,控制器向CSG1、ASG1和CSG2下发隧道配置消息时,可以从尾节点CSG2开始,向上一跳节点逐个下发对应的隧道配置消息。Preferably, in the embodiment of the present invention, in order to ensure the fast establishment of the LSP tunnel, the controller can start sending the tunnel configuration message from the calculated end node of the LSP tunnel. For example, in the scenario shown in FIG. 3, the controller sends the CSG1 , ASG1 and CSG2 deliver the tunnel configuration messages, they may start from the tail node CSG2 and send the corresponding tunnel configuration messages one by one to the next hop node.

可选地,在本发明实施例中,S130该控制器向该首节点、该第一中间节点与该尾节点下发的隧道配置消息中还携带该第一跨域LSP隧道的隧道名,该方法100还包括:Optionally, in this embodiment of the present invention, S130, the tunnel configuration message sent by the controller to the head node, the first intermediate node, and the tail node also carries the tunnel name of the first cross-domain LSP tunnel, the Method 100 also includes:

该控制器根据该隧道建立请求,基于该网络拓扑计算第二跨域LSP隧道,该第二跨域LSP隧道经过的节点包括该首节点、第二中间节点与该尾节点,该第二中间节点与该第一中间节点不完全相同。The controller calculates a second cross-domain LSP tunnel based on the network topology according to the tunnel establishment request, and the nodes passed by the second cross-domain LSP tunnel include the head node, the second intermediate node, and the tail node, and the second intermediate node Not exactly the same as the first intermediate node.

具体地,该第二中间节点指示在该第三LSP隧道中位于该首节点与该尾节点中间的一个或多个转发节点。应理解,该第二中间节点与S120中的第一跨域LSP隧道中的第一中间节点不完全相同。Specifically, the second intermediate node indicates one or more forwarding nodes located between the head node and the tail node in the third LSP tunnel. It should be understood that the second intermediate node is not exactly the same as the first intermediate node in the first inter-domain LSP tunnel in S120.

该控制器向该首节点、该第二中间节点与该尾节点发送携带该第二跨域LSP隧道的隧道名的隧道配置消息,用于指示该首节点、该第二中间节点与该尾节点建立该第二跨域LSP隧道。The controller sends a tunnel configuration message carrying the tunnel name of the second cross-domain LSP tunnel to the head node, the second intermediate node, and the tail node, to indicate the head node, the second intermediate node, and the tail node The second inter-domain LSP tunnel is established.

具体地,还以图3所示场景为例,控制器根据图3所示的网络拓扑,计算CSG1与CSG2之间的LSP隧道,例如计算得到的一条LSP隧道为:<CSG1—ASG2—CSG2>(对应于本发明实施例中的第三LSP隧道),以隧道方向为<CSG1→ASG2→CSG2>为例进行描述,则CSG1为Ingress节点,ASG2为Transit节点,CSG2为Egress节点。为CSG1、ASG2、CSG2分配标签,CSG1为Ingress节点,为其分配出标签Label3;ASG2为Transit节点,为其分配入标签Label3、出标签Label4;CSG2为Egress节点,为其分配入标签Label4。控制器为<CSG1→ASG1→CSG2>配置隧道名Tunnel2(即第三LSP隧道的隧道名为Tunnel2)。然后控制器分别向CSG1、ASG2、CSG2下发相关隧道配置消息,以创建LSP隧道<CSG1→ASG2→CSG2>,具体过程与上述第一跨域LSP隧道(即<CSG1→ASG1→CSG2>)的相关过程类似,为了简介,这里不再赘述。Specifically, taking the scenario shown in Figure 3 as an example, the controller calculates the LSP tunnel between CSG1 and CSG2 according to the network topology shown in Figure 3, for example, a calculated LSP tunnel is: <CSG1—ASG2—CSG2> (corresponding to the third LSP tunnel in the embodiment of the present invention), the tunnel direction is <CSG1→ASG2→CSG2> as an example for description, then CSG1 is an Ingress node, ASG2 is a Transit node, and CSG2 is an Egress node. Assign labels to CSG1, ASG2, and CSG2. CSG1 is an Ingress node and assigns it an outgoing label Label3; ASG2 is a Transit node and assigns it an incoming label Label3 and an outgoing label Label4; CSG2 is an Egress node and assigns it an incoming label Label4. The controller configures the tunnel name Tunnel2 for <CSG1→ASG1→CSG2> (that is, the tunnel name of the third LSP tunnel is Tunnel2). Then the controller sends relevant tunnel configuration messages to CSG1, ASG2, and CSG2 respectively to create an LSP tunnel <CSG1→ASG2→CSG2>. The related process is similar, and will not be repeated here for the sake of brief introduction.

需要说明的是,控制器分别向LSP隧道<CSG1→ASG2→CSG2>中的CSG1与ASG2下发的隧道配置消息也携带下一跳隧道信息,以实现通过迭代已经建立好的隧道来高效建立该LSP隧道<CSG1→ASG2→CSG2>。It should be noted that the tunnel configuration messages delivered by the controller to CSG1 and ASG2 in the LSP tunnel <CSG1→ASG2→CSG2> respectively carry the next-hop tunnel information, so as to realize the efficient establishment of the tunnel by iterating the established tunnel. LSP tunnel <CSG1→ASG2→CSG2>.

应理解,在本发明实施例中,控制器在首节点(CSG1)与尾节点(CSG2)之间计算了两条不同的LSP隧道,并通过分别为两条LSP隧道配置不同的隧道名,来区分这两条LSP隧道。转发设备接收到控制器下发的信道配置信息,可以根据其中携带的隧道名,区分不同的LSP隧道。It should be understood that, in the embodiment of the present invention, the controller calculates two different LSP tunnels between the head node (CSG1) and the tail node (CSG2), and configures different tunnel names for the two LSP tunnels respectively to achieve Distinguish the two LSP tunnels. After receiving the channel configuration information delivered by the controller, the forwarding device can distinguish different LSP tunnels according to the tunnel name carried in it.

因此,在本发明实施例中,控制器在首节点与尾节点之间计算两条不同的隧道,并通过向不同隧道各自的转发节点下发消息以实现两条隧道的建立,并在消息中携带相应隧道的隧道名,以区分相同首节点与尾节点之间的不同隧道,因此,本发明能够较为灵活地实现在相同首节点与尾节点之间建立两条不同的隧道。Therefore, in the embodiment of the present invention, the controller calculates two different tunnels between the head node and the tail node, and sends messages to the respective forwarding nodes of the different tunnels to realize the establishment of the two tunnels, and in the message Carry the tunnel name of the corresponding tunnel to distinguish different tunnels between the same head node and tail node. Therefore, the present invention can more flexibly establish two different tunnels between the same head node and tail node.

针对控制器分层的场景,本发明实施例还提出一种确定跨域LSP隧道的方法,该方法包括:For the scenario where the controller is layered, the embodiment of the present invention also proposes a method for determining a cross-domain LSP tunnel, the method including:

控制器获取隧道建立请求,该隧道建立请求用于请求建立第一端节点与第二端节点之间的标签交换路径LSP隧道,该第一端节点属于第一自治系统,该第二端节点属于第二自治系统,第一域控制器管理该第一自治系统,第二域控制器管理该第二自治系统;The controller obtains a tunnel establishment request, where the tunnel establishment request is used to request establishment of a label switched path LSP tunnel between a first end node and a second end node, where the first end node belongs to the first autonomous system, and the second end node belongs to a second autonomous system, the first domain controller manages the first autonomous system, and the second domain controller manages the second autonomous system;

该控制器根据该隧道建立请求,确定需要通过该第一自治系统的网络拓扑与该第二自治系统的网络拓扑计算第一跨域LSP隧道,该第一跨域LSP隧道的首节点为该第一端节点、尾节点为该第二端节点;According to the tunnel establishment request, the controller determines that a first cross-domain LSP tunnel needs to be calculated through the network topology of the first autonomous system and the network topology of the second autonomous system, and the first node of the first cross-domain LSP tunnel is the second autonomous system. One end node and tail node are the second end node;

该控制器向该第一域控制器发送第一指示消息,该第一指示消息用于指示建立该第一端节点与该第一自治系统的第一边界节点之间的第一域内LSP隧道,该第一指示消息还指示该第一端节点为首节点、该第一边界节点为中间节点、该第一边界节点的下一跳节点为该第二自治系统的第二边界节点,该第一指示消息还用于指示该第一边界节点的出标签;The controller sends a first indication message to the first domain controller, where the first indication message is used to indicate establishment of a first intra-domain LSP tunnel between the first end node and the first border node of the first autonomous system, The first indication message also indicates that the first end node is the head node, the first border node is an intermediate node, and the next-hop node of the first border node is the second border node of the second autonomous system, the first indication The message is also used to indicate the outgoing label of the first border node;

该控制器向该第二域控制器发送第二指示消息,该第二指示消息用于指示建立该第二端节点与该第二边界节点之间的第二域内LSP隧道,该第二指示消息还指示该第二端节点为尾节点、该第二边界节点为中间节点,该第二指示消息还用于指示该第二边界节点的入标签,该第二边界节点的入标签与该第一边界节点的出标签相同。The controller sends a second indication message to the second domain controller, where the second indication message is used to indicate establishment of a second intra-domain LSP tunnel between the second end node and the second border node, and the second indication message It also indicates that the second end node is a tail node and the second border node is an intermediate node, and the second indication message is also used to indicate the incoming label of the second border node, and the incoming label of the second border node is the same as the first The outgoing labels of the border nodes are the same.

具体地,如图5所示,CSG1、CSG3、ASG1、ASBR1为AS1中的路由器,CSG2、ASBR2和ASBR3为AS2中的路由器。域控制器DC1负责管理AS1中的路由器,即CSG1、CSG3、ASG1与ASBR1,DC2负责管理AS1中的路由器,即CSG2、ASBR2与ASBR3。控制器负责控制DC1与DC2,也知道DC1管理AS1、DC2管理AS2。Specifically, as shown in FIG. 5 , CSG1 , CSG3 , ASG1 , and ASBR1 are routers in AS1 , and CSG2 , ASBR2 , and ASBR3 are routers in AS2 . The domain controller DC1 is responsible for managing the routers in AS1, namely CSG1, CSG3, ASG1 and ASBR1, and DC2 is responsible for managing the routers in AS1, namely CSG2, ASBR2 and ASBR3. The controller is responsible for controlling DC1 and DC2, and knows that DC1 manages AS1 and DC2 manages AS2.

应理解,图5所示的场景为控制器分层的场景,控制器分层指的是将完整的网络拓扑进行分层抽象,高一层的网络拓扑忽略低一层网络拓扑的内部信息,低一层的网络拓扑收到高一层的网络拓扑的分解后再根据内部拓扑进行二次计算分解。在图5中,DC1能获取到AS1的网络拓扑,DC2能获取到AS2的网络拓扑。控制器仅获取高一层的网络拓扑,即控制器仅能获取到AS1与AS2的边界路由器,即ASBR1、ASBR2与ASBR3,也可以管理控制这些边界路由器。应理解,控制器看不到AS1与AS2内部的网络拓扑,换句话说,控制器不能直接管理AS1与AS2的内部路由器。当然,控制器能够知道待建立LSP隧道的端节点。在图5所示场景中,控制器能够看到的网络拓扑为CSG1—ASBR1—ASBR2/3—CSG2。It should be understood that the scenario shown in FIG. 5 is a scenario of controller layering. Controller layering refers to the layered abstraction of the complete network topology, and the higher layer network topology ignores the internal information of the lower layer network topology. The network topology of the lower layer receives the decomposition of the network topology of the higher layer, and then performs secondary calculation and decomposition according to the internal topology. In Figure 5, DC1 can obtain the network topology of AS1, and DC2 can obtain the network topology of AS2. The controller only obtains the higher-level network topology, that is, the controller can only obtain the border routers of AS1 and AS2, namely ASBR1, ASBR2 and ASBR3, and can also manage and control these border routers. It should be understood that the controller cannot see the network topology inside AS1 and AS2, in other words, the controller cannot directly manage the internal routers of AS1 and AS2. Of course, the controller can know the end node of the LSP tunnel to be established. In the scenario shown in Figure 5, the network topology that the controller can see is CSG1-ASBR1-ASBR2/3-CSG2.

例如,控制器接收的隧道建立请求用于请求建立CSG1与CSG2之间的LSP隧道,假设控制器计算的LSP隧道为<CSG1→ASBR1→ASBR3→CSG2>。控制器为该隧道<CSG1→ASBR1→ASBR3→CSG2>分配隧道名为Tunnel1。For example, the tunnel establishment request received by the controller is used to request establishment of an LSP tunnel between CSG1 and CSG2, assuming that the LSP tunnel calculated by the controller is <CSG1→ASBR1→ASBR3→CSG2>. The controller assigns the tunnel name Tunnel1 to the tunnel <CSG1→ASBR1→ASBR3→CSG2>.

控制器发现CSG1、CSG2不归属控制器管理,则控制器仅为ASBR1与ASBR3分配交换标签,为ASBR1分配出标签L1,为ASBR3分配入标签L1。When the controller finds that CSG1 and CSG2 are not managed by the controller, the controller only assigns switching labels to ASBR1 and ASBR3, assigns out-label L1 to ASBR1, and assigns in-label L1 to ASBR3.

控制器还可以通知相应PCEP计算ASBR1与ASBR3之间的隧道,对于图5所示的跨AS域的场景,也可以通知PCEP在ASBR1与ASBR2建立一条域间隧道。The controller can also notify the corresponding PCEP to calculate the tunnel between ASBR1 and ASBR3. For the inter-AS domain scenario shown in Figure 5, the controller can also notify the PCEP to establish an inter-domain tunnel between ASBR1 and ASBR2.

由于,AS1与AS2内部节点不归属控制器管理,因此,控制器将剩余隧道请求CSG1-ASBR1、ASBR3-CSG2分别下发到DC1、DC2。Since the internal nodes of AS1 and AS2 are not managed by the controller, the controller sends the remaining tunnel requests CSG1-ASBR1 and ASBR3-CSG2 to DC1 and DC2 respectively.

控制器向DC1发送第一隧道建立请求,该第一隧道建立请求携带以下信息:建立CSG1到ASBR1的LSP隧道,且该LSP隧道的尾节点为CSG2,ASBR1为Transit,ASBR1的下一跳节点为ASBR3,且ASBR1的出标签为Label1。The controller sends a first tunnel establishment request to DC1. The first tunnel establishment request carries the following information: establish an LSP tunnel from CSG1 to ASBR1, and the tail node of the LSP tunnel is CSG2, ASBR1 is Transit, and the next hop node of ASBR1 is ASBR3, and the outgoing label of ASBR1 is Label1.

控制器向DC1发送第二隧道建立请求,该第二隧道建立请求携带以下信息:建立ASBR3到CSG2的LSP隧道,且该LSP隧道的尾节点为CSG2,ASBR3为Transit,ASBR3的下一跳节点为CSG2,ASBR3的入标签为Label1。The controller sends a second tunnel establishment request to DC1. The second tunnel establishment request carries the following information: establish an LSP tunnel from ASBR3 to CSG2, and the tail node of the LSP tunnel is CSG2, ASBR3 is Transit, and the next hop node of ASBR3 is The incoming label of CSG2 and ASBR3 is Label1.

DC1根据第一隧道建立请求计算CSG1到ASBR1的LSP隧道。假设DC1计算的LSP隧道为<CSG1→ASG1→ASBR1>,则CSG1为Ingress,为其分配出标签L3,其下一跳节点为ASG1;ASG1为Transit,为其分配入标签L3、出标签L4,其下一跳节点为ASBR1;ASBR1为Transit,为其分配入标签L4、出标签L1,其下一跳节点为ASBR3。DC1 calculates the LSP tunnel from CSG1 to ASBR1 according to the first tunnel establishment request. Assume that the LSP tunnel calculated by DC1 is <CSG1→ASG1→ASBR1>, then CSG1 is an Ingress, which is assigned a label L3, and its next-hop node is ASG1; ASG1 is a Transit, which is assigned an incoming label L3 and an outgoing label L4, Its next hop node is ASBR1; ASBR1 is a Transit, which is assigned incoming label L4 and outgoing label L1, and its next hop node is ASBR3.

DC1根据上述CSG1到ASBR1的隧道配置,分别向CSG1、ASG1、ASBR1下发对应的隧道配置信息。具体地,DC1向CSG1下发的隧道配置消息包括:入口隧道类型(Ingress)、出标签Label3与下一跳节点ASG1的IP地址、下一跳隧道信息,还可以包括隧道名Tunnel1;向ASG1下发的隧道配置消息包括:中转隧道类型(Transit)、入标签Label3、出标签Label4与下一跳节点ASBR1的IP地址、下一跳隧道信息,还可以包括隧道名称Tunnel1;向ASBR1下发的隧道配置消息包括:中转隧道类型(Transit)、入标签Label4、出标签Label1与下一跳节点ASBR3的IP地址、下一跳隧道信息,还可以包括隧道名称Tunnel1。According to the above-mentioned tunnel configuration from CSG1 to ASBR1, DC1 sends corresponding tunnel configuration information to CSG1, ASG1, and ASBR1 respectively. Specifically, the tunnel configuration message sent by DC1 to CSG1 includes: the entry tunnel type (Ingress), the exit label Label3 and the IP address of the next-hop node ASG1, the next-hop tunnel information, and may also include the tunnel name Tunnel1; The tunnel configuration message sent includes: transit tunnel type (Transit), incoming label Label3, outgoing label Label4 and the IP address of the next-hop node ASBR1, next-hop tunnel information, and can also include the tunnel name Tunnel1; the tunnel sent to ASBR1 The configuration message includes: the transit tunnel type (Transit), the incoming label Label4, the outgoing label Label1, the IP address of the next-hop node ASBR3, the next-hop tunnel information, and may also include the tunnel name Tunnel1.

假设在ASBR1与ASBR3之间已经建立了域间隧道,则DC1向ASBR1下发的隧道配置消息中携带下一跳隧道信息,该下一跳隧道信息用于指示ASBR1与ASBR3之间已经建立的隧道,用于指示ASBR1利用该已经建立的隧道道向ASBR3转发业务流。Assuming that an inter-domain tunnel has been established between ASBR1 and ASBR3, the tunnel configuration message sent by DC1 to ASBR1 carries the next-hop tunnel information, which is used to indicate the established tunnel between ASBR1 and ASBR3 , used to instruct ASBR1 to use the established tunnel to forward the service flow to ASBR3.

DC2根据第二隧道建立请求计算ASBR3到CSG2的LSP隧道。假设DC2计算的LSP隧道为<ASBR3→CSG2>,ASBR3为Transit,为其分配入标签L1、出标签L5,其下一跳节点为CSG2;CSG2为Egress,为其分配入标签L5。DC2 calculates the LSP tunnel from ASBR3 to CSG2 according to the second tunnel establishment request. Assume that the LSP tunnel calculated by DC2 is <ASBR3→CSG2>, ASBR3 is a transit, and assigns incoming label L1 and outgoing label L5 to it, and its next-hop node is CSG2; CSG2 is an egress, and assigns incoming label L5 to it.

DC2根据上述ASBR3到CSG2隧道配置,分别向ASBR3与CSG2下发对应的隧道配置信息。DC2向ASBR2下发的隧道配置消息包括:中转隧道类型(Transit)、入标签Label1、出标签Label5与下一跳节点CSG2的IP地址、下一跳隧道信息,还可以包括隧道名称Tunnel1;向CSG2下发的隧道配置消息包括:出口隧道类型(Egress)、入标签Label5,还可以包括隧道名称Tunnel1。DC2 sends corresponding tunnel configuration information to ASBR3 and CSG2 respectively according to the above ASBR3-CSG2 tunnel configuration. The tunnel configuration message issued by DC2 to ASBR2 includes: the transit tunnel type (Transit), the incoming label Label1, the outgoing label Label5, the IP address of the next-hop node CSG2, the next-hop tunnel information, and the tunnel name Tunnel1 may also be included; The delivered tunnel configuration message includes: the egress tunnel type (Egress), the ingress label Label5, and may also include the tunnel name Tunnel1.

至此,控制器通过DC1与DC2,建立了CSG1到CSG2的LSP隧道,即<CSG1→ASG1→ASBR1→ASBR3→CSG2>。So far, the controller establishes the LSP tunnel from CSG1 to CSG2 through DC1 and DC2, that is, <CSG1→ASG1→ASBR1→ASBR3→CSG2>.

因此,在本发明实施例中,该控制器无需获取该第一自治系统与该第二自治系统的网络拓扑,即无需获取全部网络拓扑,通过控制域控制器就可以完成首节点与尾节点之间的隧道建立,因此,本发明能够降低控制器的计算与通信负担。Therefore, in the embodiment of the present invention, the controller does not need to obtain the network topology of the first autonomous system and the second autonomous system, that is, it does not need to obtain the entire network topology, and can complete the connection between the head node and the tail node by controlling the domain controller. Therefore, the present invention can reduce the calculation and communication burden of the controller.

可选地,在图5所示的实施例中,DC1可以利用BGP协议分别向CSG1、ASG1与ASBR1下发对应的隧道配置消息,DC2可以利用BGP协议分别向ASBR3与CSG2下发对应的隧道配置消息,该隧道配置消息的格式如图4所示,为了简洁,这里不再赘述。Optionally, in the embodiment shown in FIG. 5 , DC1 can use the BGP protocol to send corresponding tunnel configuration messages to CSG1, ASG1, and ASBR1 respectively, and DC2 can use the BGP protocol to send corresponding tunnel configuration messages to ASBR3 and CSG2 respectively. message, the format of the tunnel configuration message is shown in Figure 4, and will not be repeated here for brevity.

应理解,LSP隧道是有方向性的,上文结合图3和图5描述的建立端到端的LSP隧道的方法,都是以一个隧道方向为例进行描述,例如在图3所示场景中,以隧道方向为<CSG1→ASG1→CSG2>为例进行描述,但本发明实施例并非限定于此,在本发明实施例中,控制器针对两个隧道端节点(例如图3中的CSG1与CSG2),可以建立双向LSP隧道。It should be understood that LSP tunnels are directional. The methods for establishing end-to-end LSP tunnels described above in conjunction with FIG. 3 and FIG. 5 are all described using one tunnel direction as an example. For example, in the scenario shown in FIG. The tunnel direction is <CSG1→ASG1→CSG2> as an example for description, but the embodiment of the present invention is not limited thereto. In the embodiment of the present invention, the controller targets two tunnel end nodes (such as CSG1 and CSG2 in ), a bidirectional LSP tunnel can be established.

例如在图3所示场景中,控制器计算得到反方向LSP隧道<CSG2→ASG1→CSG1>,则该反方向LSP隧道的目的地址为CSG1的IP地址,CSG2为Ingress,为其分配出出标签a,ASG1为Transit,为其分配入标签a和出标签b,CSG1为Egress,为其分配入标签b。控制器按照上述配置,分别向CSG2、ASG1、CSG1下发对应的隧道配置消息。还以CSG2与ASG1之间存在TE隧道为例,则控制器向CSG2发送的隧道配置消息中还携带用于指示下一跳隧道类型为TE隧道的信息,用于指示CSG2通过该TE隧道与ASG1建立通信连接。For example, in the scenario shown in Figure 3, the controller calculates the reverse LSP tunnel <CSG2→ASG1→CSG1>, then the destination address of the reverse LSP tunnel is the IP address of CSG1, CSG2 is the Ingress, and an outgoing label is assigned to it a, ASG1 is Transit, and assigns incoming label a and outgoing label b to it, and CSG1 is Egress, and assigns incoming label b to it. According to the above configuration, the controller sends corresponding tunnel configuration messages to CSG2, ASG1, and CSG1 respectively. Taking a TE tunnel between CSG2 and ASG1 as an example, the tunnel configuration message sent by the controller to CSG2 also carries information indicating that the next-hop tunnel type is a TE tunnel, which is used to instruct CSG2 to communicate with ASG1 through the TE tunnel. Establish a communication connection.

再例如,在图5所示的控制器分层场景中,也可以建立双向隧道。假设控制器计算的CSG1与CSG2之间的反向LSP路径为<CSG2→ASBR3→ASBR1→CSG1>(反向是相对的说法)。控制器发现CSG1、CSG2不归属控制器管理,则控制器仅为ASBR1与ASBR3分配交换标签,控制器为ASBR1分配入标签Label2,为ASBR3分配出标签Label2。由于,AS1与AS2内部节点不归属控制器管理,因此,控制器将剩余隧道请求CSG2-ASBR3、ASBR1-CSG1分别下发到DC2、DC1。控制器向DC1发送第三隧道建立请求,该第三隧道建立请求携带以下信息:建立ASBR1到CSG1的LSP隧道,且该LSP隧道的尾节点为CSG1,ASBR1为Transit,ASBR1的入标签为Label2。控制器向DC1发送第四隧道建立请求,该第四隧道建立请求携带以下信息:建立CSG2到ASBR3的LSP隧道,且该LSP隧道的尾节点为CSG1,ASBR3为Transit,ASBR3的出标签为Label2、ASBR3的下一跳节点为ASBR1。For another example, in the controller layering scenario shown in FIG. 5 , a bidirectional tunnel may also be established. Assume that the reverse LSP path between CSG1 and CSG2 calculated by the controller is <CSG2→ASBR3→ASBR1→CSG1> (reverse is a relative term). When the controller finds that CSG1 and CSG2 are not managed by the controller, the controller only assigns switching labels to ASBR1 and ASBR3. The controller assigns label Label2 to ASBR1 and assigns label Label2 to ASBR3. Since the internal nodes of AS1 and AS2 are not managed by the controller, the controller sends the remaining tunnel requests CSG2-ASBR3 and ASBR1-CSG1 to DC2 and DC1 respectively. The controller sends a third tunnel establishment request to DC1, and the third tunnel establishment request carries the following information: establish an LSP tunnel from ASBR1 to CSG1, and the tail node of the LSP tunnel is CSG1, ASBR1 is Transit, and the incoming label of ASBR1 is Label2. The controller sends a fourth tunnel establishment request to DC1, and the fourth tunnel establishment request carries the following information: establish an LSP tunnel from CSG2 to ASBR3, and the tail node of the LSP tunnel is CSG1, ASBR3 is Transit, and the outgoing label of ASBR3 is Label2, The next hop node of ASBR3 is ASBR1.

DC1根据第三隧道建立请求计算ASBR1到CSG1的LSP隧道,假设DC1计算的LSP隧道为<ASBR1→ASG1→CSG1>,并分别向CSG1、ASG1、ASBR1下发对应的隧道配置信息,以建立LSP隧道为<ASBR1→ASG1→CSG1>,具体过程与上述正向隧道(<CSG1→ASG1→ASBR1>)建立过程类似,这里不再赘述。假设在ASBR1与ASBR3之间已经建立了域间隧道,则DC1向ASBR1下发的隧道配置消息还包括下一跳隧道信息,该下一跳隧道信息用于指示ASBR1与ASBR3之间建立的隧道,即该域间隧道,用于指示ASBR1利用该域间隧道向ASBR3转发业务流。DC2根据第四隧道建立请求计算CSG2到ASBR3的LSP隧道。假设DC2计算的LSP隧道为<CSG2→ASBR3>,分别向ASBR3与CSG2下发对应的隧道配置信息,以建立LSP隧道<CSG2→ASBR3>。至此,控制器通过DC1与DC2,建立了CSG2到CSG1的LSP隧道,即<CSG2→ASBR3→ASBR1→ASG1→CSG1>。DC1 calculates the LSP tunnel from ASBR1 to CSG1 according to the third tunnel establishment request, assuming that the LSP tunnel calculated by DC1 is <ASBR1→ASG1→CSG1>, and sends corresponding tunnel configuration information to CSG1, ASG1, and ASBR1 respectively to establish the LSP tunnel It is <ASBR1→ASG1→CSG1>, and the specific process is similar to the establishment process of the above-mentioned forward tunnel (<CSG1→ASG1→ASBR1>), and will not be repeated here. Assuming that an inter-domain tunnel has been established between ASBR1 and ASBR3, the tunnel configuration message sent by DC1 to ASBR1 also includes next-hop tunnel information, and the next-hop tunnel information is used to indicate the tunnel established between ASBR1 and ASBR3. That is, the inter-domain tunnel is used to instruct ASBR1 to use the inter-domain tunnel to forward the service flow to ASBR3. DC2 calculates the LSP tunnel from CSG2 to ASBR3 according to the fourth tunnel establishment request. Assume that the LSP tunnel calculated by DC2 is <CSG2→ASBR3>, and deliver the corresponding tunnel configuration information to ASBR3 and CSG2 respectively to establish the LSP tunnel <CSG2→ASBR3>. So far, the controller has established the LSP tunnel from CSG2 to CSG1 through DC1 and DC2, that is, <CSG2→ASBR3→ASBR1→ASG1→CSG1>.

可选地,在本发明实施例中,可以建立双向LSP隧道的关联,在图5所示场景中,即关联正向LSP隧道<CSG1→ASG1→ASBR1→ASBR3→CSG2>与反向LSP隧道<CSG2→ASBR3→ASBR1→ASG1→CSG1>,控制器向转发节点下发的隧道配置消息中携带反向隧道关联信息,例如包括隧道名和隧道地址信息等。应理解,在图3所示单层控制器的场景中,可以由控制器直接向相关转发节点下发该反向隧道关联信息,例如,控制器向相关转发节点下发的隧道配置消息中包括反向隧道关联字段,该反向隧道关联字段中存储反向关联隧道相关信息,该反向隧道关联字段具体包括反向隧道名字字段、反向隧道长度字段、反向隧道地址长度字段、反向隧道地址掩码字段、反向隧道目的地址字段,如图4所示。还应理解,在图5所示分层控制器场景中,首先上层控制器(如图5中所示控制器)告诉域控制器(如图5中所示DC1与DC2)反向关联隧道相关信息,然后该域控制器再向相关转发节点下发对应的反向关联隧道信息。Optionally, in this embodiment of the present invention, a bidirectional LSP tunnel association can be established. In the scenario shown in FIG. CSG2→ASBR3→ASBR1→ASG1→CSG1>, the tunnel configuration message delivered by the controller to the forwarding node carries reverse tunnel association information, such as tunnel name and tunnel address information. It should be understood that in the scenario of a single-layer controller shown in FIG. 3, the controller may directly send the reverse tunnel associated information to the relevant forwarding nodes. For example, the tunnel configuration message sent by the controller to the relevant forwarding nodes includes The reverse tunnel association field, which stores the relevant information of the reverse tunnel association in the reverse tunnel association field, and the reverse tunnel association field specifically includes the reverse tunnel name field, the reverse tunnel length field, the reverse tunnel address length field, the reverse tunnel address length field, the reverse tunnel The tunnel address mask field and the reverse tunnel destination address field are shown in Figure 4. It should also be understood that in the hierarchical controller scenario shown in Figure 5, first the upper controller (the controller shown in Figure 5) tells the domain controller (DC1 and DC2 shown in Figure 5) that the reverse association tunnel is related information, and then the domain controller sends the corresponding reverse association tunnel information to the relevant forwarding node.

应理解,本发明实施例中涉及的正向隧道与反向隧道是相对的说法。It should be understood that the forward tunnel and the reverse tunnel mentioned in the embodiment of the present invention are relative terms.

还应理解,在本发明实施例中,控制器根据网络拓扑、首节点与尾节点,计算LSP隧道,具体计算方法可以利用现有的计算端到端LSP隧道的方法,本发明实施例对比不作限定。但是需要说明是,在本发明实施例中,控制器能够利用已经建立好的LSP隧道确定待建立的端到端的LSP隧道,例如图3中所示的TE隧道,换句话说,本发明实施例中计算的LSP隧道可以迭代已经建立好的LSP隧道。It should also be understood that in the embodiment of the present invention, the controller calculates the LSP tunnel according to the network topology, the head node and the tail node, and the specific calculation method can use the existing method for calculating the end-to-end LSP tunnel, and the comparison in the embodiment of the present invention is not made limited. However, it should be noted that in this embodiment of the present invention, the controller can use the established LSP tunnel to determine the end-to-end LSP tunnel to be established, such as the TE tunnel shown in Figure 3. In other words, the The LSP tunnels calculated in can iterate the established LSP tunnels.

还应理解,图1、图3与图5所示的例子是为了更好地帮助本领域技术人员更好地理解本发明实施例,而非将本发明限于这些具体的形式。本领域技术人员根据所给出的图1、图3与图5的例子,显然可以进行各种等价的修改或变化,这样的修改或变化也落入本发明实施例的范围内仅为示例而非限定。It should also be understood that the examples shown in FIG. 1 , FIG. 3 and FIG. 5 are intended to better help those skilled in the art better understand the embodiments of the present invention, rather than to limit the present invention to these specific forms. Those skilled in the art can obviously make various equivalent modifications or changes based on the examples shown in FIG. 1, FIG. 3 and FIG. rather than limited.

图6示出本发明实施例提供的控制器200的示意性框图,该控制器200包括:FIG. 6 shows a schematic block diagram of a controller 200 provided by an embodiment of the present invention, and the controller 200 includes:

获取模块210,用于获取隧道建立请求,该隧道建立请求用于请求建立首节点与尾节点之间的标签交换路径LSP隧道,该首节点与该尾节点属于不同的域;The acquiring module 210 is configured to acquire a tunnel establishment request, the tunnel establishment request is used to request establishment of a label switched path LSP tunnel between a head node and a tail node, and the head node and the tail node belong to different domains;

计算模块220,用于根据该获取模块获取的该隧道建立请求,基于网络拓扑计算第一跨域LSP隧道,该第一跨域LSP隧道经过的节点包括该首节点、第一中间节点与该尾节点,其中,该首节点、该第一中间节点与该尾节点中的第一节点与第二节点之间具有已经建立的隧道,该网络拓扑中包括该已经建立的隧道;The calculation module 220 is configured to calculate a first cross-domain LSP tunnel based on the network topology according to the tunnel establishment request obtained by the acquisition module, and the nodes passed by the first cross-domain LSP tunnel include the head node, the first intermediate node, and the tail node. node, wherein there is an established tunnel between the first node and the second node among the head node, the first intermediate node, and the tail node, and the network topology includes the established tunnel;

发送模块230,用于向该首节点、该第一中间节点与该尾节点下发相应的隧道配置消息,用于指示该首节点、该第一中间节点与该尾节点建立该计算模块计算的该第一跨域LSP隧道,其中,该控制器向该第一节点发送的隧道配置消息携带下一跳隧道信息,该下一跳隧道信息用于指示该已经建立的隧道,以指示该第一节点利用该已经建立的隧道与该第二节点进行通信连接。The sending module 230 is configured to send a corresponding tunnel configuration message to the head node, the first intermediate node, and the tail node, and is used to instruct the head node, the first intermediate node, and the tail node to establish the tunnel configuration information calculated by the computing module. The first cross-domain LSP tunnel, wherein the tunnel configuration message sent by the controller to the first node carries next-hop tunnel information, and the next-hop tunnel information is used to indicate the established tunnel, so as to indicate the first The node communicates with the second node by using the established tunnel.

因此,在本发明实施例中,控制器基于网络拓扑计算跨域LSP隧道,所述网络拓扑中包括已经建立好的隧道,则控制器可以基于网络中已经建立好的隧道计算跨域LSP隧道。具体地,控制器根据网络拓扑获知,要计算的跨域LSP隧道经过第一节点与第二节点,且第一节点与第二节点之间已经具有建好的已经建立的隧道,则控制器直接利用该已经建立的隧道确定所述第一节点与第二节点之间的隧道,而非逐节点计算第一节点与第二节点之间的隧道。例如,在图3所示场景中,无需计算从ASG1到CSG2的具体隧道(假设ASG1与CSG2并非直连,二者之前还包括多个其他转发节点),可以直接利用TE隧道实现ASG1与CSG2的连接。应理解,减小了第一节点与第二节点之间的隧道的计算负担,自然能够减小控制器计算整条跨域LSP隧道的计算负担。所述控制器完成跨域LSP隧道的计算后,通过向跨域LSP隧道经过的转发节点下发相应的隧道配置消息,以完成跨域LSP隧道的建立,其中在向第一节点发送的隧道配置消息中携带下一跳隧道信息,该下一跳隧道信息用于指示已经建立的隧道,以指示第一节点利用已经建立的隧道与第二节点建立通信连接,而非像现有技术一样需要向第一节点与第二节点之间的各个转发节点下发相应的隧道配置消息才可以实现第一节点与第二节点之间的通信连接,因此,能够降低控制器的信令开销。综上所述,在本发明实施例中,控制器利用网络中已经建立好的隧道计算跨域LSP隧道,能够有效降低控制器的算路负担。控制器通过在隧道配置消息中携带下一跳隧道信息,从而无需向跨域LSP隧道经过的每个节点下发隧道配置,能够一定程度上减小控制器的信令开销。相比于现有技术,本发明实施例能够在有效减小控制器的算路负担与信令开销的基础上,完成跨域LSP隧道的建立。Therefore, in the embodiment of the present invention, the controller calculates the inter-domain LSP tunnel based on the network topology, and the network topology includes established tunnels, and the controller may calculate the inter-domain LSP tunnel based on the established tunnels in the network. Specifically, the controller learns from the network topology that the cross-domain LSP tunnel to be calculated passes through the first node and the second node, and there is already an established tunnel between the first node and the second node, then the controller directly The established tunnel is used to determine the tunnel between the first node and the second node, instead of calculating the tunnel between the first node and the second node node by node. For example, in the scenario shown in Figure 3, there is no need to calculate the specific tunnel from ASG1 to CSG2 (assuming that ASG1 and CSG2 are not directly connected, and there are multiple other forwarding nodes before them), and the TE tunnel can be directly used to realize the connection between ASG1 and CSG2. connect. It should be understood that reducing the calculation burden of the tunnel between the first node and the second node can naturally reduce the calculation burden of the controller for calculating the entire cross-domain LSP tunnel. After the controller completes the calculation of the cross-domain LSP tunnel, it sends a corresponding tunnel configuration message to the forwarding node passed by the cross-domain LSP tunnel to complete the establishment of the cross-domain LSP tunnel, wherein the tunnel configuration message sent to the first node The next-hop tunnel information is carried in the message, and the next-hop tunnel information is used to indicate the established tunnel, so as to indicate that the first node uses the established tunnel to establish a communication connection with the second node, instead of needing to communicate with the second node as in the prior art. Only when each forwarding node between the first node and the second node issues a corresponding tunnel configuration message can the communication connection between the first node and the second node be realized, thus, the signaling overhead of the controller can be reduced. To sum up, in the embodiment of the present invention, the controller calculates the cross-domain LSP tunnel by using the established tunnel in the network, which can effectively reduce the path calculation burden of the controller. By carrying the next-hop tunnel information in the tunnel configuration message, the controller does not need to deliver the tunnel configuration to each node passed by the cross-domain LSP tunnel, which can reduce the signaling overhead of the controller to a certain extent. Compared with the prior art, the embodiment of the present invention can complete the establishment of the cross-domain LSP tunnel on the basis of effectively reducing the path calculation burden and signaling overhead of the controller.

可选地,在本发明实施例中,该第一节点指示该首节点和该第一中间节点。Optionally, in this embodiment of the present invention, the first node indicates the head node and the first intermediate node.

可选地,在本发明实施例中,该发送模块230用于,利用NETCONF协议或BGP协议向该首节点、该第一中间节点与该尾节点下发该相应的隧道配置消息。Optionally, in this embodiment of the present invention, the sending module 230 is configured to send the corresponding tunnel configuration message to the head node, the first intermediate node, and the tail node by using the NETCONF protocol or the BGP protocol.

可选地,在本发明实施例中,该发送模块230具体用于向该首节点发送第一隧道配置消息,该第一隧道配置消息携带下列信息:入口隧道类型、出标签、下一跳节点的IP地址;Optionally, in this embodiment of the present invention, the sending module 230 is specifically configured to send a first tunnel configuration message to the head node, where the first tunnel configuration message carries the following information: ingress tunnel type, egress label, next-hop node IP address;

该发送模块230具体用于向该第一中间节点发送第二隧道配置消息,该第二隧道配置消息携带下列信息:中转隧道类型、入标签、出标签、下一跳节点的IP地址,该第一中间节点的入标签与该第一中间节点的上一跳节点的出标签相同;The sending module 230 is specifically configured to send a second tunnel configuration message to the first intermediate node, and the second tunnel configuration message carries the following information: transit tunnel type, incoming label, outgoing label, IP address of the next hop node, the second tunnel configuration message The incoming label of an intermediate node is the same as the outgoing label of the previous hop node of the first intermediate node;

该发送模块230具体用于向该尾节点发送第三隧道配置消息,该第三隧道配置消息携带下列信息:出口隧道类型、入标签,该尾节点的入标签与该尾节点的上一跳节点的出标签相同。The sending module 230 is specifically configured to send a third tunnel configuration message to the tail node, and the third tunnel configuration message carries the following information: egress tunnel type, incoming label, incoming label of the tail node and last hop node of the tail node The output labels are the same.

可选地,在本发明实施例中,该发送模块230向该首节点、该第一中间节点与该尾节点下发的隧道配置消息中还携带该第一跨域LSP隧道的隧道名;Optionally, in this embodiment of the present invention, the tunnel configuration message sent by the sending module 230 to the head node, the first intermediate node, and the tail node also carries the tunnel name of the first cross-domain LSP tunnel;

该计算模块220还用于,根据该隧道建立请求,基于该网络拓扑计算第二跨域LSP隧道,该第二跨域LSP隧道经过的节点包括该首节点、第二中间节点与该尾节点,该第二中间节点与该第一中间节点不完全相同;The calculating module 220 is further configured to calculate a second cross-domain LSP tunnel based on the network topology according to the tunnel establishment request, and the nodes passed by the second cross-domain LSP tunnel include the head node, the second intermediate node, and the tail node, the second intermediate node is not identical to the first intermediate node;

该发送模块230还用于,向该首节点、该第二中间节点与该尾节点发送携带该第二跨域LSP隧道的隧道名的隧道配置消息,用于指示该首节点、该第二中间节点与该尾节点建立该计算模块计算的该第二跨域LSP隧道。The sending module 230 is also configured to send a tunnel configuration message carrying the tunnel name of the second cross-domain LSP tunnel to the head node, the second intermediate node, and the tail node, to indicate that the head node, the second intermediate node The node establishes the second cross-domain LSP tunnel calculated by the calculation module with the tail node.

应理解,根据本发明实施例的控制器可对应于本发明实施例的确定跨域LSP隧道的方法中的控制器,并且控制器中的各个模块的上述和其它操作和/或功能分别为了实现图2、图3和图5中的各个方法的相应流程,为了简洁,在此不再赘述。It should be understood that the controller according to the embodiment of the present invention may correspond to the controller in the method for determining a cross-domain LSP tunnel in the embodiment of the present invention, and the above-mentioned and other operations and/or functions of each module in the controller are for realizing For the sake of brevity, the corresponding flow of each method in FIG. 2 , FIG. 3 and FIG. 5 will not be repeated here.

图7示出本发明实施例提供的网络设备300的示意性框图,该网络设备300包括:FIG. 7 shows a schematic block diagram of a network device 300 provided by an embodiment of the present invention. The network device 300 includes:

接收模块310,用于接收控制器发送的用于指示建立跨域标签交换路径LSP隧道的隧道配置消息,该隧道配置消息携带下一跳隧道信息,该下一跳隧道信息用于指示该网络设备300与第二网络设备之间具有的已经建立的隧道,该跨域LSP隧道包括该已经建立的隧道;The receiving module 310 is configured to receive a tunnel configuration message sent by the controller for instructing the establishment of a cross-domain label switched path LSP tunnel, where the tunnel configuration message carries next-hop tunnel information, and the next-hop tunnel information is used to indicate the network device 300 has an established tunnel between the second network device, and the cross-domain LSP tunnel includes the established tunnel;

建立模块320,用于根据该接收模块接收的该隧道配置消息,通过该已经建立的隧道与该第二网络设备建立通信连接。The establishing module 320 is configured to establish a communication connection with the second network device through the established tunnel according to the tunnel configuration message received by the receiving module.

在本发明实施例中,通过网络中已经建立的隧道来建立跨域LSP隧道,能够有效减小控制器算路的负担,同时也能够减小控制器与网络设备之间传输信令的开销。In the embodiment of the present invention, the cross-domain LSP tunnel is established through the established tunnel in the network, which can effectively reduce the burden of path calculation on the controller, and also reduce the signaling transmission overhead between the controller and the network device.

可选地,在本发明实施例中,该网络设备300为该跨域LSP隧道的首节点,该接收模块310接收的该隧道配置消息还携带下列信息:入口隧道类型、出标签、下一跳节点的IP地址,该下一跳节点为该第二网络设备;或Optionally, in this embodiment of the present invention, the network device 300 is the head node of the cross-domain LSP tunnel, and the tunnel configuration message received by the receiving module 310 also carries the following information: ingress tunnel type, egress label, next hop an IP address of a node, the next-hop node being the second network device; or

该网络设备300为该跨域LSP隧道的中间节点,该接收模块310接收的该隧道配置消息还携带下列信息:中转隧道类型、入标签、出标签、下一跳节点的IP地址,该下一跳节点为该第二网络设备,该网络设备300的入标签与该网络设备300的上一跳节点的出标签相同。The network device 300 is the intermediate node of the cross-domain LSP tunnel, and the tunnel configuration message received by the receiving module 310 also carries the following information: transit tunnel type, incoming label, outgoing label, IP address of the next hop node, the next The hop node is the second network device, and the incoming label of the network device 300 is the same as the outgoing label of the previous hop node of the network device 300 .

在本发明实施例中,该网络设备300根据该控制器下发的隧道配置消息后,根据下一跳隧道信息,确定已经建立的隧道,并为该已经建立的隧道分配隧道ID,并生成转发表项。具体地,当该网络设备300为跨域LSP隧道的首节点时,该转发表项中包括隧道目的IP地址、出标签、下一跳节点的IP地址、下一跳隧道ID。当该网络设备300为跨域LSP隧道的中间节点时,该转发表项中包括隧道目的IP地址、入标签、、出标签、下一跳节点的IP地址、下一跳隧道ID。当该网络设备300为某个跨域LSP隧道的尾节点时,该转发表项中包括隧道目的IP地址与入标签。In the embodiment of the present invention, the network device 300 determines the established tunnel according to the tunnel configuration message issued by the controller and the next-hop tunnel information, assigns a tunnel ID to the established tunnel, and generates a forwarding post items. Specifically, when the network device 300 is the head node of the cross-domain LSP tunnel, the forwarding entry includes the tunnel destination IP address, outgoing label, IP address of the next-hop node, and next-hop tunnel ID. When the network device 300 is an intermediate node of a cross-domain LSP tunnel, the forwarding entry includes a tunnel destination IP address, an incoming label, an outgoing label, an IP address of a next-hop node, and a next-hop tunnel ID. When the network device 300 is the tail node of a cross-domain LSP tunnel, the forwarding entry includes the tunnel destination IP address and incoming label.

应理解,根据本发明实施例的网络设备300可对应于本发明实施例的确定跨域LSP隧道的方法中的首节点和/或中间节点,并且网络设备300中的各个模块的上述和其它操作和/或功能分别为了实现图2、图3和图5中的各个方法的相应流程,为了简洁,在此不再赘述。It should be understood that the network device 300 according to the embodiment of the present invention may correspond to the head node and/or the intermediate node in the method for determining a cross-domain LSP tunnel in the embodiment of the present invention, and the above-mentioned and other operations of the various modules in the network device 300 The and/or functions are respectively to realize the corresponding processes of the methods in FIG. 2 , FIG. 3 and FIG. 5 , and for the sake of brevity, details are not repeated here.

图8示出本发明实施例提供的控制器400的另一示意性框图,该控制器400包括处理器410、存储器420、总线系统430、接收器440和发送器450。其中,处理器410、存储器420、接收器440和发送器450通过总线系统430相连,该存储器420用于存储指令,该处理器410用于执行该存储器420存储的指令,以控制接收器440接收信号,并控制发送器450发送信号。其中,处理器410用于,获取隧道建立请求,该隧道建立请求用于请求建立首节点与尾节点之间的标签交换路径LSP隧道,该首节点与该尾节点属于不同的域;根据该隧道建立请求,基于网络拓扑计算第一跨域LSP隧道,该第一跨域LSP隧道经过的节点包括该首节点、第一中间节点与该尾节点,其中,该首节点、该第一中间节点与该尾节点中的第一节点与第二节点之间具有已经建立的隧道,该网络拓扑中包括该已经建立的隧道。该发送器450用于,向该首节点、该第一中间节点与该尾节点下发相应的隧道配置消息,用于指示该首节点、该第一中间节点与该尾节点建立该第一跨域LSP隧道,其中,该控制器向该第一节点发送的隧道配置消息携带下一跳隧道信息,该下一跳隧道信息用于指示该已经建立的隧道,以指示该第一节点利用该已经建立的隧道与该第二节点进行通信连接。FIG. 8 shows another schematic block diagram of a controller 400 provided by an embodiment of the present invention. The controller 400 includes a processor 410 , a memory 420 , a bus system 430 , a receiver 440 and a transmitter 450 . Wherein, the processor 410, the memory 420, the receiver 440 and the transmitter 450 are connected through the bus system 430, the memory 420 is used to store instructions, and the processor 410 is used to execute the instructions stored in the memory 420 to control the receiver 440 to receive signal, and control the transmitter 450 to send the signal. Wherein, the processor 410 is configured to obtain a tunnel establishment request, the tunnel establishment request is used to request establishment of a label switched path LSP tunnel between the head node and the tail node, the head node and the tail node belong to different domains; according to the tunnel Establishing a request, calculating a first cross-domain LSP tunnel based on the network topology, the nodes passed by the first cross-domain LSP tunnel include the head node, the first intermediate node, and the tail node, wherein the head node, the first intermediate node and the There is an established tunnel between the first node and the second node in the tail node, and the network topology includes the established tunnel. The sender 450 is configured to send a corresponding tunnel configuration message to the head node, the first intermediate node, and the tail node, and is used to instruct the head node, the first intermediate node, and the tail node to establish the first tunnel configuration message. A domain LSP tunnel, wherein the tunnel configuration message sent by the controller to the first node carries next-hop tunnel information, and the next-hop tunnel information is used to indicate the established tunnel, so as to instruct the first node to use the established The established tunnel communicates with the second node.

因此,在本发明实施例中,控制器利用网络中已经建立好的隧道计算跨域LSP隧道,能够有效降低控制器的算路负担。控制器通过在隧道配置消息中携带下一跳隧道信息,从而无需向跨域LSP隧道经过的每个节点下发隧道配置,能够一定程度上减小控制器的信令开销。相比于现有技术,本发实施例能够在有效减小控制器的算路负担与信令开销的基础上,完成跨域LSP隧道的建立。Therefore, in the embodiment of the present invention, the controller calculates the cross-domain LSP tunnel by using the established tunnel in the network, which can effectively reduce the path calculation burden of the controller. By carrying the next-hop tunnel information in the tunnel configuration message, the controller does not need to deliver the tunnel configuration to each node passed by the cross-domain LSP tunnel, which can reduce the signaling overhead of the controller to a certain extent. Compared with the prior art, the embodiment of the present invention can complete the establishment of the cross-domain LSP tunnel on the basis of effectively reducing the path calculation burden and signaling overhead of the controller.

可选地,在本发明实施例中,该第一节点指示该首节点和该第一中间节点。Optionally, in this embodiment of the present invention, the first node indicates the head node and the first intermediate node.

可选地,在本发明实施例中,发送器450用于,利用NETCONF协议或BGP协议向该首节点、该第一中间节点与该尾节点下发该相应的隧道配置消息。Optionally, in this embodiment of the present invention, the sender 450 is configured to send the corresponding tunnel configuration message to the head node, the first intermediate node, and the tail node by using the NETCONF protocol or the BGP protocol.

可选地,在本发明实施例中,发送器450用于,向该首节点发送第一隧道配置消息,该第一隧道配置消息携带下列信息:入口隧道类型、出标签、下一跳节点的IP地址;Optionally, in this embodiment of the present invention, the sender 450 is configured to send a first tunnel configuration message to the head node, where the first tunnel configuration message carries the following information: ingress tunnel type, egress label, next-hop node IP address;

发送器450用于,向该第一中间节点发送第二隧道配置消息,该第二隧道配置消息携带下列信息:中转隧道类型、入标签、出标签、下一跳节点的IP地址,该第一中间节点的入标签与该第一中间节点的上一跳节点的出标签相同;The sender 450 is used to send a second tunnel configuration message to the first intermediate node, where the second tunnel configuration message carries the following information: transit tunnel type, incoming label, outgoing label, IP address of the next hop node, the first The incoming label of the intermediate node is the same as the outgoing label of the previous hop node of the first intermediate node;

发送器450用于,向该尾节点发送第三隧道配置消息,该第三隧道配置消息携带下列信息:出口隧道类型、入标签,该尾节点的入标签与该尾节点的上一跳节点的出标签相同。The sender 450 is configured to send a third tunnel configuration message to the tail node, where the third tunnel configuration message carries the following information: egress tunnel type, incoming label, incoming label of the tail node and previous hop node of the tail node The labels are the same.

可选地,在本发明实施例中,发送器450向该首节点、该第一中间节点与该尾节点下发的隧道配置消息中还携带该第一跨域LSP隧道的隧道名;Optionally, in this embodiment of the present invention, the tunnel configuration message sent by the sender 450 to the head node, the first intermediate node, and the tail node also carries the tunnel name of the first cross-domain LSP tunnel;

该处理器410用于,根据该隧道建立请求,基于该网络拓扑计算第二跨域LSP隧道,该第二跨域LSP隧道经过的节点包括该首节点、第二中间节点与该尾节点,该第二中间节点与该第一中间节点不完全相同;The processor 410 is configured to, according to the tunnel establishment request, calculate a second cross-domain LSP tunnel based on the network topology, the nodes passed by the second cross-domain LSP tunnel include the head node, the second intermediate node, and the tail node, the the second intermediate node is not identical to the first intermediate node;

该发送器450用于,向该首节点、该第二中间节点与该尾节点发送携带该第二跨域LSP隧道的隧道名的隧道配置消息,用于指示该首节点、该第二中间节点与该尾节点建立该第二跨域LSP隧道。The sender 450 is configured to send a tunnel configuration message carrying the tunnel name of the second cross-domain LSP tunnel to the head node, the second intermediate node, and the tail node, to indicate that the head node, the second intermediate node Establish the second cross-domain LSP tunnel with the tail node.

应理解,根据本发明实施例的控制器400可对应于本发明实施例的确定跨域LSP隧道的方法中的控制器,以及可以对应于根据本发明实施例的控制器200,并且控制器400中的各个模块的上述和其它操作和/或功能分别为了实现图2、图3和图5中的各个方法的相应流程,为了简洁,在此不再赘述。It should be understood that the controller 400 according to the embodiment of the present invention may correspond to the controller in the method for determining a cross-domain LSP tunnel in the embodiment of the present invention, and may correspond to the controller 200 according to the embodiment of the present invention, and the controller 400 The above-mentioned and other operations and/or functions of each module in FIG. 2 are for realizing corresponding processes of each method in FIG. 2 , FIG. 3 and FIG. 5 , and for the sake of brevity, details are not repeated here.

图9示出本发明实施例提供的网络设备500的另一示意性框图,该网络设备500包括处理器510、存储器520、总线系统530、接收器540和发送器550。其中,处理器510、存储器520、接收器540和发送器550通过总线系统530相连,该存储器520用于存储指令,该处理器510用于执行该存储器520存储的指令,以控制接收器540接收信号,并控制发送器550发送信号。其中,接收器540用于,接收控制器发送的用于指示建立跨域标签交换路径LSP隧道的隧道配置消息,所述隧道配置消息携带下一跳隧道信息,所述下一跳隧道信息用于指示所述网络设备500与第二网络设备之间具有的已经建立的隧道,所述跨域LSP隧道包括所述已经建立的隧道;处理器510用于,根据所述隧道配置消息,通过所述已经建立的隧道与所述第二网络设备建立通信连接。FIG. 9 shows another schematic block diagram of a network device 500 provided by an embodiment of the present invention. The network device 500 includes a processor 510 , a memory 520 , a bus system 530 , a receiver 540 and a transmitter 550 . Wherein, the processor 510, the memory 520, the receiver 540 and the transmitter 550 are connected through the bus system 530, the memory 520 is used to store instructions, and the processor 510 is used to execute the instructions stored in the memory 520 to control the receiver 540 to receive signal, and control the transmitter 550 to send the signal. Wherein, the receiver 540 is configured to receive a tunnel configuration message sent by the controller for instructing to establish a cross-domain label switched path LSP tunnel, the tunnel configuration message carries next-hop tunnel information, and the next-hop tunnel information is used for Indicate the established tunnel between the network device 500 and the second network device, the cross-domain LSP tunnel includes the established tunnel; the processor 510 is configured to, according to the tunnel configuration message, pass the The established tunnel establishes a communication connection with the second network device.

因此,在本发明实施例中,控制器利用网络中已经建立好的隧道计算跨域LSP隧道,能够有效降低控制器的算路负担。控制器通过在隧道配置消息中携带下一跳隧道信息,从而无需向跨域LSP隧道经过的每个节点下发隧道配置,能够一定程度上减小控制器的信令开销。相比于现有技术,本发明实施例能够在有效减小控制器的算路负担与信令开销的基础上,完成跨域LSP隧道的建立。Therefore, in the embodiment of the present invention, the controller calculates the cross-domain LSP tunnel by using the established tunnel in the network, which can effectively reduce the path calculation burden of the controller. By carrying the next-hop tunnel information in the tunnel configuration message, the controller does not need to deliver the tunnel configuration to each node passed by the cross-domain LSP tunnel, which can reduce the signaling overhead of the controller to a certain extent. Compared with the prior art, the embodiment of the present invention can complete the establishment of the cross-domain LSP tunnel on the basis of effectively reducing the path calculation burden and signaling overhead of the controller.

可选地,在本发明实施例中,该网络设备500为该跨域LSP隧道的首节点,该网络设备500接收的该隧道配置消息还携带下列信息:入口隧道类型、出标签、下一跳节点的IP地址,该下一跳节点为该第二网络设备;或Optionally, in this embodiment of the present invention, the network device 500 is the head node of the cross-domain LSP tunnel, and the tunnel configuration message received by the network device 500 also carries the following information: ingress tunnel type, egress label, next hop an IP address of a node, the next-hop node being the second network device; or

该网络设备500为该跨域LSP隧道的中间节点,该网络设备500接收的该隧道配置消息还携带下列信息:中转隧道类型、入标签、出标签、下一跳节点的IP地址,该下一跳节点为该第二网络设备,该网络设备500的入标签与该网络设备500的上一跳节点的出标签相同。The network device 500 is the intermediate node of the cross-domain LSP tunnel, and the tunnel configuration message received by the network device 500 also carries the following information: transit tunnel type, incoming label, outgoing label, IP address of the next hop node, the next The hop node is the second network device, and the incoming label of the network device 500 is the same as the outgoing label of the previous hop node of the network device 500 .

应理解,根据本发明实施例的网络设备500可对应于本发明实施例的确定跨域LSP隧道的方法中的首节点或中间节点,以及可以对应于根据本发明实施例的网络设备300,并且网络设备500中的各个模块的上述和其它操作和/或功能分别为了实现图2、图3和图5中的各个方法的相应流程,为了简洁,在此不再赘述。It should be understood that the network device 500 according to the embodiment of the present invention may correspond to the head node or intermediate node in the method for determining a cross-domain LSP tunnel in the embodiment of the present invention, and may correspond to the network device 300 according to the embodiment of the present invention, and The above-mentioned and other operations and/or functions of each module in the network device 500 are for realizing the corresponding flow of each method in FIG. 2 , FIG. 3 and FIG. 5 , and for the sake of brevity, details are not repeated here.

图10示出了本发明实施例提供的控制器控制系统600的示意性框图,该控制器控制系统600包括控制器610和网络设备620,该控制器610为本发明实施例提供的控制器200或控制器400,该网络设备620为本发明实施例提供的网络设备300或网络设备500。FIG. 10 shows a schematic block diagram of a controller control system 600 provided by an embodiment of the present invention. The controller control system 600 includes a controller 610 and a network device 620. The controller 610 is the controller 200 provided by an embodiment of the present invention. Or the controller 400, the network device 620 is the network device 300 or the network device 500 provided in the embodiment of the present invention.

在本发明实施例中,控制器基于网络拓扑计算跨域LSP隧道,所述网络拓扑中包括已经建立好的隧道,则控制器可以基于网络中已经建立好的隧道计算跨域LSP隧道。具体地,控制器根据网络拓扑获知,要计算的跨域LSP隧道经过第一节点与第二节点,且第一节点与第二节点之间具有已经建立的隧道,则控制器直接利用该已经建立的隧道确定所述第一节点与第二节点之间的隧道,而非逐节点计算第一节点与第二节点之间的隧道。例如,在图3所示场景中,无需计算从ASG1到CSG2的具体隧道(假设ASG1与CSG2并非直连,二者之前还包括多个其他转发节点),可以直接利用TE隧道实现ASG1与CSG2的连接。应理解,减小了第一节点与第二节点之间的隧道的计算负担,自然能够减小控制器计算整条跨域LSP隧道的计算负担。所述控制器完成跨域LSP隧道的计算后,通过向跨域LSP隧道经过的转发节点下发相应的隧道配置消息,以完成跨域LSP隧道的建立,其中在向第一节点发送的隧道配置消息中携带下一跳隧道信息,该下一跳隧道信息用于指示已经建立的隧道,以指示第一节点利用已经建立的隧道与第二节点建立通信连接,而非像现有技术一样需要向第一节点与第二节点之间的各个转发节点下发相应的隧道配置消息才可以实现第一节点与第二节点之间的通信连接,因此,能够降低控制器的信令开销。综上所述,在本发明实施例中,控制器利用网络中已经建立好的隧道计算跨域LSP隧道,能够有效降低控制器的算路负担。控制器通过在隧道配置消息中携带下一跳隧道信息,从而无需向跨域LSP隧道经过的每个节点下发隧道配置,能够一定程度上减小控制器的信令开销。相比于现有技术,本发明实施例能够在有效减小控制器的算路负担与信令开销的基础上,完成跨域LSP隧道的建立。In the embodiment of the present invention, the controller calculates the inter-domain LSP tunnel based on the network topology, and the network topology includes established tunnels, and the controller may calculate the inter-domain LSP tunnel based on the established tunnels in the network. Specifically, the controller knows according to the network topology that the cross-domain LSP tunnel to be calculated passes through the first node and the second node, and there is an established tunnel between the first node and the second node, then the controller directly uses the established tunnel The tunnels of the first node and the second node are determined instead of calculating the tunnels between the first node and the second node node by node. For example, in the scenario shown in Figure 3, there is no need to calculate the specific tunnel from ASG1 to CSG2 (assuming that ASG1 and CSG2 are not directly connected, and there are multiple other forwarding nodes before them), and the TE tunnel can be directly used to realize the connection between ASG1 and CSG2. connect. It should be understood that reducing the calculation burden of the tunnel between the first node and the second node can naturally reduce the calculation burden of the controller for calculating the entire cross-domain LSP tunnel. After the controller completes the calculation of the cross-domain LSP tunnel, it sends a corresponding tunnel configuration message to the forwarding node passed by the cross-domain LSP tunnel to complete the establishment of the cross-domain LSP tunnel, wherein the tunnel configuration message sent to the first node The next-hop tunnel information is carried in the message, and the next-hop tunnel information is used to indicate the established tunnel, so as to indicate that the first node uses the established tunnel to establish a communication connection with the second node, instead of needing to communicate with the second node as in the prior art. Only when each forwarding node between the first node and the second node issues a corresponding tunnel configuration message can the communication connection between the first node and the second node be realized, thus, the signaling overhead of the controller can be reduced. To sum up, in the embodiment of the present invention, the controller calculates the cross-domain LSP tunnel by using the established tunnel in the network, which can effectively reduce the path calculation burden of the controller. By carrying the next-hop tunnel information in the tunnel configuration message, the controller does not need to deliver the tunnel configuration to each node passed by the cross-domain LSP tunnel, which can reduce the signaling overhead of the controller to a certain extent. Compared with the prior art, the embodiment of the present invention can complete the establishment of the cross-domain LSP tunnel on the basis of effectively reducing the path calculation burden and signaling overhead of the controller.

还应理解,本文中涉及的第一、第二、第三、第四以及各种数字编号仅为描述方便进行的区分,并不用来限制本发明实施例的范围。It should also be understood that the first, second, third, fourth and various numbers mentioned herein are only for convenience of description, and are not used to limit the scope of the embodiments of the present invention.

应理解,在本发明的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。It should be understood that in various embodiments of the present invention, the sequence numbers of the above-mentioned processes do not mean the order of execution, and the execution order of each process should be determined by its functions and internal logic, rather than by the embodiment of the present invention. The implementation process constitutes any limitation.

本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。Those skilled in the art can appreciate that the units and algorithm steps of the examples described in conjunction with the embodiments disclosed herein can be implemented by electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are executed by hardware or software depends on the specific application and design constraints of the technical solution. Those skilled in the art may use different methods to implement the described functions for each specific application, but such implementation should not be regarded as exceeding the scope of the present invention.

所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。Those skilled in the art can clearly understand that for the convenience and brevity of the description, the specific working process of the above-described system, device and unit can refer to the corresponding process in the foregoing method embodiment, which will not be repeated here.

在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。In the several embodiments provided in this application, it should be understood that the disclosed systems, devices and methods may be implemented in other ways. For example, the device embodiments described above are only illustrative. For example, the division of the units is only a logical function division. In actual implementation, there may be other division methods. For example, multiple units or components can be combined or May be integrated into another system, or some features may be ignored, or not implemented. In another point, the mutual coupling or direct coupling or communication connection shown or discussed may be through some interfaces, and the indirect coupling or communication connection of devices or units may be in electrical, mechanical or other forms.

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。The units described as separate components may or may not be physically separated, and the components displayed as units may or may not be physical units, that is, they may be located in one place, or may be distributed to multiple network units. Part or all of the units can be selected according to actual needs to achieve the purpose of the solution of this embodiment.

另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。In addition, each functional unit in each embodiment of the present invention may be integrated into one processing unit, each unit may exist separately physically, or two or more units may be integrated into one unit.

所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。If the functions described above are realized in the form of software function units and sold or used as independent products, they can be stored in a computer-readable storage medium. Based on this understanding, the essence of the technical solution of the present invention or the part that contributes to the prior art or the part of the technical solution can be embodied in the form of a software product, and the computer software product is stored in a storage medium, including Several instructions are used to make a computer device (which may be a personal computer, a server, or a network device, etc.) execute all or part of the steps of the method described in each embodiment of the present invention. The aforementioned storage medium includes: U disk, mobile hard disk, read-only memory (ROM, Read-Only Memory), random access memory (RAM, Random Access Memory), magnetic disk or optical disk and other media that can store program codes. .

以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。The above is only a specific embodiment of the present invention, but the scope of protection of the present invention is not limited thereto. Anyone skilled in the art can easily think of changes or substitutions within the technical scope disclosed in the present invention. Should be covered within the protection scope of the present invention. Therefore, the protection scope of the present invention should be determined by the protection scope of the claims.

Claims (13)

CN201610402567.0A2016-06-082016-06-08 A method, device and system for determining cross-domain label switching path tunnelsPendingCN107483338A (en)

Priority Applications (2)

Application NumberPriority DateFiling DateTitle
CN201610402567.0ACN107483338A (en)2016-06-082016-06-08 A method, device and system for determining cross-domain label switching path tunnels
PCT/CN2017/084377WO2017211164A1 (en)2016-06-082017-05-15Method, apparatus, and system for determining inter-as label switched path tunnel

Applications Claiming Priority (1)

Application NumberPriority DateFiling DateTitle
CN201610402567.0ACN107483338A (en)2016-06-082016-06-08 A method, device and system for determining cross-domain label switching path tunnels

Publications (1)

Publication NumberPublication Date
CN107483338Atrue CN107483338A (en)2017-12-15

Family

ID=60577586

Family Applications (1)

Application NumberTitlePriority DateFiling Date
CN201610402567.0APendingCN107483338A (en)2016-06-082016-06-08 A method, device and system for determining cross-domain label switching path tunnels

Country Status (2)

CountryLink
CN (1)CN107483338A (en)
WO (1)WO2017211164A1 (en)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
CN109639600A (en)*2019-01-252019-04-16新华三技术有限公司A kind of method and device of tunnel speed limit
CN110838965A (en)*2019-09-252020-02-25北京华为数字技术有限公司Tunnel establishment method and receiving node
CN110943923A (en)*2018-09-212020-03-31中兴通讯股份有限公司LSP establishing method, device, equipment and computer storage medium
CN111131038A (en)*2018-10-312020-05-08中国电信股份有限公司Cross-domain message forwarding method, system and storage system
CN111600737A (en)*2019-02-212020-08-28华为技术有限公司Topology information collection method and network equipment
CN112039774A (en)*2020-07-272020-12-04深圳市风云实业有限公司Tunnel and SR combined network flow adjusting and optimizing method
CN115037681A (en)*2021-03-042022-09-09国家电网有限公司信息通信分公司 Label forwarding method and system using IP address as explicit path
WO2024152888A1 (en)*2023-01-182024-07-25华为技术有限公司Connection establishment method, controller, node, communication system, and storage medium
WO2025167452A1 (en)*2024-02-082025-08-14华为技术有限公司Network interconnecting method and apparatus, and communication system

Citations (7)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
CN101478474A (en)*2008-12-192009-07-08华为技术有限公司Method, apparatus and system for cross-domain MPLS TE LSP establishment
CN101945035A (en)*2009-07-102011-01-12中兴通讯股份有限公司Method and device for recovering cross-domain path based on path computation element
CN102065006A (en)*2010-12-012011-05-18电子科技大学Method for recovering inter-domain failure of cross-domain label switched path
CN102611607A (en)*2011-01-212012-07-25中兴通讯股份有限公司Processing method and path computation element of inter-domain link information
US8422514B1 (en)*2010-02-092013-04-16Juniper Networks, Inc.Dynamic configuration of cross-domain pseudowires
US9246838B1 (en)*2011-05-272016-01-26Juniper Networks, Inc.Label switched path setup using fast reroute bypass tunnel
CN105591862A (en)*2014-10-202016-05-18中兴通讯股份有限公司Tunnel path computation re-optimization method and device

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
CN101478474A (en)*2008-12-192009-07-08华为技术有限公司Method, apparatus and system for cross-domain MPLS TE LSP establishment
CN101945035A (en)*2009-07-102011-01-12中兴通讯股份有限公司Method and device for recovering cross-domain path based on path computation element
US8422514B1 (en)*2010-02-092013-04-16Juniper Networks, Inc.Dynamic configuration of cross-domain pseudowires
CN102065006A (en)*2010-12-012011-05-18电子科技大学Method for recovering inter-domain failure of cross-domain label switched path
CN102611607A (en)*2011-01-212012-07-25中兴通讯股份有限公司Processing method and path computation element of inter-domain link information
US9246838B1 (en)*2011-05-272016-01-26Juniper Networks, Inc.Label switched path setup using fast reroute bypass tunnel
CN105591862A (en)*2014-10-202016-05-18中兴通讯股份有限公司Tunnel path computation re-optimization method and device

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
方俊: "基于MPLS的三层VPN的实现", 《电脑与信息技术》*

Cited By (13)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
CN110943923B (en)*2018-09-212023-09-12中兴通讯股份有限公司LSP establishment method, LSP establishment device, LSP establishment equipment and computer storage medium
CN110943923A (en)*2018-09-212020-03-31中兴通讯股份有限公司LSP establishing method, device, equipment and computer storage medium
CN111131038A (en)*2018-10-312020-05-08中国电信股份有限公司Cross-domain message forwarding method, system and storage system
CN111131038B (en)*2018-10-312022-04-19中国电信股份有限公司Cross-domain message forwarding method, system and storage system
CN109639600A (en)*2019-01-252019-04-16新华三技术有限公司A kind of method and device of tunnel speed limit
CN109639600B (en)*2019-01-252022-07-01新华三技术有限公司Tunnel speed limiting method and device
CN111600737B (en)*2019-02-212021-12-24华为技术有限公司Topology information collection method and network equipment
CN111600737A (en)*2019-02-212020-08-28华为技术有限公司Topology information collection method and network equipment
CN110838965A (en)*2019-09-252020-02-25北京华为数字技术有限公司Tunnel establishment method and receiving node
CN112039774A (en)*2020-07-272020-12-04深圳市风云实业有限公司Tunnel and SR combined network flow adjusting and optimizing method
CN115037681A (en)*2021-03-042022-09-09国家电网有限公司信息通信分公司 Label forwarding method and system using IP address as explicit path
WO2024152888A1 (en)*2023-01-182024-07-25华为技术有限公司Connection establishment method, controller, node, communication system, and storage medium
WO2025167452A1 (en)*2024-02-082025-08-14华为技术有限公司Network interconnecting method and apparatus, and communication system

Also Published As

Publication numberPublication date
WO2017211164A1 (en)2017-12-14

Similar Documents

PublicationPublication DateTitle
US11431526B2 (en)Deterministic forwarding across L2 and L3 networks
CN111865796B (en)Path Computation Element Central Controller (PCECC) for network traffic
CN107483338A (en) A method, device and system for determining cross-domain label switching path tunnels
EP3002913B1 (en)Tunnel establishment method, label allocation method, device, and network system
CN112118182B (en) IP Path Tunnel for Send Traffic Engineering
US7684420B2 (en)Method for implementing cross-domain constraint routing
US20160006614A1 (en)Source Routing Using Path Computation Elements
US8861547B2 (en)Method, apparatus, and system for packet transmission
CN106656794B (en)Message transmission method and device
CN110870261B (en)PECP segmented routing path segmented label binding extension
CN109587009A (en)Method and device for configuring Seamless Bidirectional Forwarding Detection (SBFD) mechanism
WO2015184852A1 (en)Sr information obtainment method and sr network establishment method
EP1713197A1 (en)A method for implementing the virtual leased line
US20020110087A1 (en)Efficient setup of label-switched connections
JP4971496B2 (en) Ethernet spanning tree provision
CN102217238A (en) Service Instances Applied to MPLS Networks
CN107306222A (en)The method and apparatus that traffic engineering tunnel on label switched path is set up
CN103326940A (en)Method for forwarding message in network and edge device of operator
CN106982157A (en)Traffic engineering tunnel building method and device
CN105991385B (en)A kind of method that establishing BGP lsp tunnel and the network equipment
CN103634210B (en)Find the method and apparatus of the opposite end PE equipment of VPLS example
CN102904808B (en)Across the method for building up and system of resource reservation protocol flow engineering label switched path
CN115567439A (en)Message forwarding method, node, system, network node and storage medium
CN116405425A (en)Segment traceroute for segment routing traffic engineering
Liu et al.Internet Engineering Task Force H. Chen Internet-Draft Huawei Technologies Intended status: Standards Track N. So Expires: August 14, 2014 Tata Communications

Legal Events

DateCodeTitleDescription
PB01Publication
PB01Publication
SE01Entry into force of request for substantive examination
SE01Entry into force of request for substantive examination
RJ01Rejection of invention patent application after publication

Application publication date:20171215

RJ01Rejection of invention patent application after publication

[8]ページ先頭

©2009-2025 Movatter.jp