Pecp segment routing path segment label binding extension
Patent Information
- Application Number
- CN202111670696.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Priority Date
- 2017-07-07
- Filing Date
- 2018-07-05
- Publication Date
- 2026-10-27
- Estimated Expiration
- 2038-07-05
AI Technical Summary
[0009]因此,在旧系统中,SR-TE中的MSD或跳数的硬件限制使得在旧系统中实施SR-TE且其中SR-TE路径跨越的跳点超过MSD值(例如,如果数据路由涉及的节点数量大于3到5)的情况尚未实现
[0022]与现有技术相比,本发明将入标签与PCE用于子LSP(即LSP的一部分)的出标签栈和标签范围相关联。传统技术仅限于通过PCE进行标签分配。如本发明一样,它们不指导也不建议由PCC分配标签绑定标签。
Smart Images

Figure CN114244771B_ABST
Abstract
Description
Technical Field
[0001] The invention described herein generally relates to communication networks, and more particularly to integrating segmented routing with multiprotocol label switching with longer path segmentation in legacy systems. More specifically, the invention relates to a method and apparatus for transmitting data packets in a communication network. Background Technology
[0002] Traditional routing technologies require the SDN (Software Defined Networking) controller to interact directly with each node involved in the traffic path. Due to the routing state that needs to be maintained in the core network nodes and the required configuration traffic, the granularity and temporal characteristics of service flows can lead to scalability issues.
[0003] Segment Routing (SR) is an emerging technology that simplifies traffic engineering in WANs. SR provides complete control over forwarding paths by combining simple network commands, eliminating the need for additional protocols and sometimes even removing unnecessary ones to simplify the network. SR simplifies routing by delegating configuration and flow-by-flow states at network boundaries. Because path signaling is not required in SR, flow-by-flow states are maintained only at the ingress nodes within the SR domain, increasing network flexibility while reducing costs. Segment routing allows traffic to be routed along arbitrary paths within the network, enabling operators to implement low-latency and / or split-path routing regardless of traditional / normal forwarding paths.
[0004] Multiprotocol Label Switching (MPLS) is a protocol for carrying data in high-performance telecommunications networks. Based on short-path labels instead of the traditionally used long network addresses, MPLS directs data from one network node to the next, avoiding complex lookups in routing tables. These labels identify virtual links (paths) between distant nodes, not between endpoints. MPLS can encapsulate packets of various network protocols, hence the name "multiprotocol." In MPLS, each packet is labeled by the ingress router upon entering the service provider network, and all subsequent routing switches forward the packaged data solely based on the label, eliminating the need to route traffic by examining the IP header. The egress router removes the label and forwards the original IP packet to its final destination.
[0005] It's worth noting that Segmented Routing (SR) can be directly applied to MPLS architectures without altering the forwarding layer. Compared to traditional MPLS networks, SR can utilize network bandwidth more efficiently while providing lower latency. Segments are encoded as MPLS labels, and an ordered list of segments is encoded as a label stack. The segment to be processed is at the top of the stack, and after a segment is completed, its associated label is popped from the stack.
[0006] Segmented routing provides automatic traffic protection without topology constraints. The network protects traffic from link and node failures without requiring additional signaling within the network. Existing IP Fast Re-Route (FRR) technology, combined with the explicit routing capabilities of segmented routing, guarantees full protection coverage of the optimal backup path. Traffic protection does not impose any additional signaling requirements.
[0007] Using Segment Routing Traffic Engineering (SR-TE)-MPLS, nodes guide packets through an ordered list of instructions called segments (MPLS labels). Ingress nodes insert segments (i.e., label stacks) to direct the packet to a specific path within the network. When segmented routing tunnels are calculated by the central controller, the controller must know the maximum segment depth (MSD) at the SR tunnel exit of a node or link to ensure that it does not download paths with a depth exceeding the SID (label stack) that the node or link can handle.
[0008] It is worth noting that older systems (older routers or low-end hardware devices) have limitations on the number of segments that can be inserted (because the MSD value or hop count in the SR-TE of these systems is typically 3 to 5), which cannot meet the requirements of a complete SR-TE path (the tag stack inserted at the ingress). It is also worth noting that the MSD value of these systems must be at least 2.
[0009] Therefore, in legacy systems, hardware limitations on the MSD (Mean Distance to Size) or hop count in SR-TE prevented the implementation of SR-TE in systems where the SR-TE path traverses more than the MSD value (e.g., if the number of nodes involved in the data routing is greater than 3 to 5). More specifically, due to certain hardware limitations in legacy systems, for example, if the MSD value is 3, when an SR-TE is established and the router is the ingress node of the segmented routing tunnel, the maximum hop count between the ingress node and the egress node of the segmented routing tunnel can only be 3; that is, the hop count cannot exceed 3.
[0010] Therefore, a mechanism is needed to implement SR-TE-MPLS in the old system to eliminate the restriction that the SR-TE path across hops needs to be the same as the MSD value, that is, to introduce a way to establish longer segmented routing tunnels in the old system.
[0011] The shortcomings of implementing SR-TE-MPLS in legacy systems described above are intended only to outline some of the problems with conventional systems / mechanisms / techniques and are not exhaustive. Other problems with conventional systems / mechanisms / techniques and the corresponding advantages of the various non-limiting embodiments described herein will become more apparent in the following overview. Summary of the Invention
[0012] This invention aims to introduce concepts related to methods for implementing SR-TE LSP (Label Switched Path, or LSP) across networks to provide longer SR-TE paths. These concepts will be further described in detail below. This invention is not intended to identify the essential features of the claimed invention, nor is it intended to define or limit the scope of the claimed invention.
[0013] The purpose of this invention is to solve the above-mentioned technical problems by providing a tag stack and binding the tag stack with the input tag.
[0014] Another objective of this invention is to enable the establishment of SR-TE LSPs across networks to provide longer SR-TE paths.
[0015] Another object of the present invention is to provide an apparatus for establishing longer segmented routing tunnels in a legacy system.
[0016] Another object of the present invention is to provide a method for sending data packets in a communication system.
[0017] Another object of the present invention is to provide an apparatus for transmitting data packets in a communication system.
[0018] According to a first aspect of the present invention, a method for transmitting data packets in a communication system is provided. The method includes: a first network device receiving a first packet through a first adjacency segment of an SR-TE path, wherein the first adjacency segment is located between a first label switching router (LSR) and the first network device, the first packet including a first incoming label and a second packet; the first network device determining a first label stack based on the first packet and a correspondence between the first incoming label and a first label stack; the first network device generating a third packet based on the first incoming label, wherein the third packet includes the first label stack and the second packet; and the first network device transmitting the third packet to a second network device along a first path segment of the SR-TE path, wherein the first label stack includes at least one adjacency segment identifier (Adj-SID), and the first path segment is identified by at least one Adj-SID in the first label stack; wherein the first network device is an incoming node of the first path segment, and the second network device is an outgoing node of the first path segment.
[0019] In one implementation of the first aspect, the present invention provides a method for supporting the establishment of SR-TE LSPs to provide longer SR-TE paths. The Path Computation Element (PCE) obtains the SRID (i.e., tag) from all Path Computation Clients (PCCs), meaning the PCC runs the Interior Gateway Protocol (IGP) and maintains consistency with the Traffic Engineering Database (TEDB).
[0020] According to a second aspect of the present invention, a system for transmitting data packets in a communication network is provided. The system includes a first network device. The first network device includes: a memory for receiving a first packet via a first adjacent segment of a segment routing traffic engineering (SR-TE) path; wherein the first packet includes a first incoming label and a second packet; a processor for identifying the first packet from the memory, wherein the processor is configured to: determine a first label stack based on the first packet, map the first incoming label to the first label stack, and generate a third packet based on the first label stack, wherein the third packet includes the first label stack and the second packet; and a transceiver for segmenting the third packet generated by the processor along the first path of the SR-TE path and transmitting it to a second network device.
[0021] According to a third aspect of the present invention, a network apparatus for transmitting data packets in a communication system is provided. The apparatus includes: a memory for receiving a first packet via a first adjacent segment of a segment routing traffic engineering (SR-TE) path; wherein the first packet includes a first incoming label and a second packet; a processor for identifying the first packet from the memory, wherein the processor is configured to: determine a first label stack based on the first packet, map the first incoming label to the first label stack, and generate a third packet based on the first label stack, wherein the third packet includes the first label stack and the second packet; and a transceiver for transmitting the third packet generated by the processor.
[0022] Compared to existing technologies, this invention associates incoming tags with the output tag stack and tag range used by the PCE for the sub-LSP (i.e., a portion of the LSP). Conventional technologies are limited to tag allocation via the PCE. Like this invention, they neither guide nor recommend tag binding by the PCC.
[0023] The various options and preferred embodiments of the first implementation method mentioned above are also applicable to other implementation methods. Attached Figure Description
[0024] This detailed description is given with reference to the accompanying drawings. In the drawings, the leftmost digit of the reference number identifies the drawing in which the reference number first appears. All drawings use the same digits to refer to components with the same features.
[0025] Figure 1a and Figure 1bThis invention provides a flowchart illustrating a network deployment scenario for establishing an SR-TE LSP in a traditional routing system, as illustrated in an embodiment of the present invention.
[0026] Figure 2 This invention illustrates a network deployment scenario for establishing an SR-TE LSP, wherein the SR-TE LSP has nine nodes between its ingress and egress points.
[0027] Figure 3 This illustrates a new label range from PCC to PCE with label type 3, provided by an embodiment of the present invention;
[0028] Figure 4 This invention illustrates another network deployment scenario for establishing an SR-TE LSP, according to another embodiment of the present invention, wherein...
[0029] The SR-TE LSP has 5 nodes between the inlet and outlet;
[0030] Figure 5 This invention illustrates the establishment of a label-bound LSP in a transmission node or network device including P2, P4, and P6, as provided in an embodiment of the invention.
[0031] Figure 6 This invention illustrates LSP deletion of a tag splicing transmission node or network device including P2, P4, and P6, provided by an embodiment of the present invention.
[0032] Figure 7 The STATEFULL-PCE-CAPABILITY TLV (type, length, and value) format provided in this embodiment of the invention is shown.
[0033] Figure 8 The label range object format (new label type 3) provided in an embodiment of the present invention is shown;
[0034] Figure 9 A network apparatus for sending data packets is shown according to another embodiment of the present invention.
[0035] It should be understood that the accompanying drawings are intended to illustrate the concept of the invention and may not be drawn to scale. Detailed Implementation
[0036] This invention can be implemented in various ways, including as a process, apparatus, system, material composition, computer-readable medium such as a computer-readable storage medium, or a computer network in which program instructions are transmitted via optical or electronic communication links. In this specification, these embodiments or any other form in which the invention may take are referred to as techniques. Generally, the sequence of steps in the disclosed process can be modified within the scope of this invention.
[0037] The following provides a detailed description of one or more embodiments of the present invention, along with accompanying drawings illustrating the principles of the invention. The invention has been described in conjunction with these embodiments, but is not limited to any particular embodiment. The scope of the invention is limited only by the claims, and the invention includes many alternatives, modifications, and equivalents. To provide a thorough understanding of the invention, numerous specific details are set forth in the following description. These details are provided for illustrative purposes; the invention can be implemented according to the claims without requiring some or all of these specific details. For clarity, technical materials known in the art related to the invention have not been described in detail, thereby avoiding unnecessary obscuring of the invention.
[0038] Numerous specific details are set forth in the following description to provide a thorough understanding of the various embodiments of the invention. However, those skilled in the art will appreciate that the invention can be practiced without these specific details. Other well-known methods, processes, and components have not been described in detail in other instances so as not to obscure the invention.
[0039] While embodiments of the invention are not limited in this respect, discussions using terms such as “processing,” “operation,” “calculation,” “determining,” “establishing,” “analyzing,” and “checking” may refer to operations and / or processes of a computer, computing platform, computing system, or other electronic computing device that operate and / or transform data represented as physical (e.g., electronic) quantities in the computer’s registers and / or memory into other data similarly represented as physical quantities in the computer’s registers and / or memory or other non-transitory storage media that may store instructions for performing the operations and / or processes.
[0040] While embodiments of the invention are not limited in this respect, the terms "majority" and "multiple" as used herein may include, for example, "multiples" or "two or more". The terms "majority" or "multiple" throughout the specification may be used to describe two or more components, devices, elements, units, and parameters, etc. Unless explicitly stated otherwise, the method embodiments described herein are not limited to a particular order or sequence. Furthermore, some of the method embodiments or elements described herein may occur or be performed simultaneously, at the same point in time, or in parallel.
[0041] While this embodiment of the invention does not limit the scope of the invention, the term SR-TE path stands for MPLS Label Switching Path (LSP). An SR-TE path can be represented by an ordered set of SIDs. Furthermore, the term "path segment" refers to a portion of a path, specifically a portion of an SR-TE path. Even further, the term "adjacent segment" refers to a hop on a specific adjacency between two nodes in an IGP. It is worth noting that, in most cases, an adjacent segment is a one-hop path.
[0042] This application discloses a method for establishing SR-TE LSP across networks, which does not require consideration of the forwarding node's restriction on MSD.
[0043] In describing aspects of the method for establishing SR-TE LSP across networks without considering the limitations of forwarding nodes on MSD, the invention can be implemented in any number of different computing systems, environments, and / or configurations, and embodiments are described in the context of the following exemplary systems, devices / nodes / apparatus, and methods.
[0044] Hereinafter, exemplary diagrams and one or more examples may be used to explain embodiments of the invention. However, such exemplary diagrams and examples are provided for illustrative purposes to better understand the invention and should not be construed as limiting the scope of the invention.
[0045] An LSP is a path between Provider Edge (PE) routers. A PCEP session is established with all forwarding nodes (PCCs), the IGP publishes SR-TE NLRI (Node / Adjacency) segment identifiers across IGP domains, and the PCE controller calculates the path and attempts to establish an SR-TE LSP (e.g., if the ingress node has an MSD that cannot support inserting all SR-TE segment paths, the SR-TE path cannot be established).
[0046] Segments represent sub-paths that can be combined by routers to form a complete route to a network destination. Each segment has a Segment Identifier (SID), which is distributed throughout the network using a new IGP (Interior Gateway Protocol) extension. This extension is supported by both the IPv4 and IPv6 control planes. The segment identifier is encoded as an MPLS label stack entry and guides data along the specified path. Routers can request paths to destinations with certain characteristics, including latency, bandwidth, and diversity. The controller calculates the optimal path and returns the corresponding list of segments, such as the MPLS label stack, to the requesting router. At this point, the router can inject traffic using the segment list without any additional signaling in the network.
[0047] A segment is represented by a 32-bit entity called the Segment ID (SID). The prefix segment identifier (SID) identifies a segmented routing tunnel leading to the destination represented by the prefix. The prefix SID is globally unique and its uniqueness is guaranteed by the operator. The maximum value of the prefix SID is 2^32. 16 -1. The prefix SID is allocated from the Segment Routing Global Block (SRGB), and the prefix SID value is converted into a local MPLS label. The adjacency SID is a locally unique SID of the node, and when the Anycast SID scheme is used, it is automatically generated by the node attached to the adjacency.
[0048] Segmented routing control planes can be applied to MPLS data planes. In this case, the prefix-SID in the MPLS data plane is represented as an LSP, whose path flows along the shortest path to the prefix, while the adjacent segment-SID is represented as a cross-entry pointing to a specific egress data link.
[0049] The header affixes the appropriate MPLS label stack to outgoing packets transmitted through the tunnel. Each transmission node or network device along the path uses the top-level incoming label to select the next label and uses the remaining part of the label stack to forward / route the packet to the next node until the packet reaches its final destination.
[0050] In one implementation, the present invention provides a method for supporting the establishment of SR-TE LSPs without considering the limitations of forwarding nodes on MSDs. The PCE learns the SRID (i.e., label) from all PCCs (i.e., the PCCs are running IGP) and maintains consistency with TEDB. The PCE calculates the path and creates label bindings as needed, downloading the label bindings to the transport node along the SR path at the ingress. This label binding is a binding between a label (i.e., an IN label, label type 3) and a label stack (i.e., an OUT label or a sub-LSP (i.e., a Segment Routing Explicit Route Object, or SRERO)). Once the path-related information is downloaded, the PCC confirms the establishment of the LSP by running BDF (i.e., Bi-directional Forwarding) on the SR-TE LSP or through OAM (Operations, Administration, and Maintenance) technology, and reports the LSP to the PCE.
[0051] This invention establishes cross-network SR-TE LSPs by downloading the label stack and binding it to incoming labels, without considering the limitations of forwarding nodes on MSD. The Path Computation Element Protocol (PCEP) or any other protocol lacks a mechanism for downloading the label stack (i.e., labels generated from IGP information) and binding it to incoming labels. The PCE, acting as a central controller, is suitable for creating / downloading labels and binding them to forwarding nodes. Currently available solutions support label binding downloads, but are limited to labels generated by the PCE.
[0052] While existing technologies do disclose the processes of LSP establishment and forwarding table entry download, these processes are limited to labels (i.e., SRIDs) assigned by the PCE. They are not concerned with the network where labels (i.e., SRIDs) are generated by the IGP at the forwarding nodes, nor with the PCE's acquisition of SRIDs via BGPLS / PCEPLS. In this invention, since the IGP (at each PCC) generates a global SRID index and a local SRID (i.e., adjacent SIDs, from which labels are derived) range for the PCE, a new label range is introduced to bind the label stack (i.e., a portion of the LSP). The PCE creates a binding from this range to a portion of the LSP (i.e., a portion of the SRID) and downloads this binding to the forwarding nodes (e.g., PE1, P1, P2...PE2).
[0053] To establish SR-TE LSPs across networks without considering the limitations of forwarding devices on MSD, this invention discloses encoding PATH-BINDING-TYPE to TE-PATH-BINDING TLV in the LSP object, encoding an explicit route object (ERO) (i.e., path segment SRRO) in PCLabelUpd, and a new label range object type, namely Label-Type 3, such as... Figure 8 As shown, this is used to send the label range reserved for the PCE from the PCC. The PCE sends a PCLabelUpd message with label bindings to all qualified transport nodes or network devices. It is worth noting that, based on the MSD, certain forwarding nodes or network devices become qualified nodes for the PCE to download the label splicing mapping.
[0054] In one implementation, the present invention provides a method for establishing SR-TE LSPs to provide longer SR-TE paths. Figure 1a and Figure 1b A flowchart illustrating a method for sending data packets in a communication network is shown.
[0055] Figure 2 The network structure containing SR-TE paths is shown. Figure 1a and Figure 1b The method shown can be used in Figure 2 Implemented in the network structure shown. The following... Figure 2 The implementation of the method shown will be through Figure 2 Let's have a discussion.
[0056] It is worth noting that the first path segment includes forwarding nodes P2-P3-P4, where P1 can be the first LSR, P2 can be the first network device, P3 can be the second LSR, and P4 can be the second network device. Here, the first incoming label can be 3001, and the second incoming label can be 4001. The first label stack includes two Adj-SIDs. The first label stack may include the second incoming label 4001. The two Adj-SIDs in the first label stack are 301 and 401, respectively. 301 and 401 identify the tunnel P2-P3-P4, where 301 identifies link P2-P3, and 401 identifies link P3-P4.
[0057] The second path segmentation includes forwarding nodes PE1-P1-P2, where the third network device can be PE1. The second packet can be an IP packet, and after receiving the second packet, PE1 can encapsulate the second label stack within the second packet.
[0058] The second label stack includes the first incoming label (e.g., 3001) and at least one Adj-SID (e.g., 101 and 102). 101 and 102 identify the second path segment (e.g., PE1-P1-P2), with 101 identifying PE1-P1 and 201 identifying P1-P2. The third MPLS tunnel includes forwarding nodes P4-P6.
[0059] It is worth noting that the first Adj-SID can be 301. 301 identifies the adjacent segment between P2 and P3. 201 identifies the adjacent segment between P1 and P2.
[0060] The method of the present invention includes the following steps: a first network device (P2) receives (1001) a first packet (3001+IP) through a first adjacency segment of the SR-TE path, wherein the first adjacency segment is located between a first label switching router (P1) and the first network device (P2), and the first packet (3001+IP) includes a first incoming label (3001) and a second packet (IP); based on the first packet (3001+IP) and the correspondence between the first incoming label (3001) and the first label stack (301, 401), the first network device (P2) determines (1001) a first packet (3001+IP) and a second packet (IP). 002) The first label stack (301, 401); according to the first incoming label (3001), the first network device (P2) generates (1003) a third message, wherein the third message includes the first label stack (301, 401) and the second message (IP); along the first path segment (P2-P4) of the SR-TE path, the first network device (P2) sends (1004) the third message to the second network device (P4), wherein the first label stack (301, 401) includes at least one adjacency segment identifier (Adj-SID), and the first path segment is identified by at least one Adj-SID in the first label stack (301, 401); wherein the first network device (P2) is the incoming node of the first path segment (P2-P4), and the second network device (P4) is the outgoing node of the first path segment (P2-P4).
[0061] It is worth noting that before the first network device (P2) receives the first message (3001+IP), the method includes the following steps: the first network device (P2) reports (1005) the label range of the first network device (P2) to the path computation element (PCE); the first network device (P2) receives (1006) the mapping relationship between the first incoming label (3001) and the first label stack (301, 401) from the PCE, wherein the first incoming label is assigned by the PCE and the first incoming label (3001) belongs to the label range; after the third network device (PE1) learns the first incoming label (3001) from the PCE, it encapsulates the first incoming label (3001) in the second message (IP), wherein the PCE receives the report from the first network device (P2).
[0062] The first message (3001+IP) is received by the first network device (P2) through the second path segment (P1-P2) of the SR-TE path. The second path segment (P1-P2) passes through the first adjacent segment. The first network device (P2) is the outgoing node of the second path segment (P1-P2), and the third network device (PE1) is the incoming node of the second path segment (P1-P2).
[0063] Before the second packet (IP) is transmitted along a second path segment (P1-P2) identified by at least one Adj-SID in the second label stack, the third network device (PE1) encapsulates the second label stack in the second packet (IP), wherein the second label stack includes the first ingress label (3001) and the at least one Adj-SID.
[0064] It is worth noting that the first input tag (3001) is located at the bottom of the second tag stack, and the first tag stack (301, 401) includes the second input tag (4001) located at the bottom of the first tag stack (301, 401).
[0065] The second ingress label (4001) is used by the second network device (P4) to forward the second packet (IP) along the third path segment (P4-P6) of the SR-TE path, wherein the second network device (P4) is the ingress node of the third path segment (P4-P6).
[0066] It is worth noting that the first Adj-SID that identifies the second adjacency segment between the first network device (P2) and the second LSR (P1) is located at the top of the first label stack (301, 401), wherein the first path segment (P2-P4) passes through the second adjacency segment.
[0067] Figure 2 This paper illustrates a network deployment scenario for establishing an SR-TE LSP, provided by an embodiment of the present invention. The SR-TE LSP has nine nodes between its ingress and egress points. It is worth noting that label binding or label concatenation is used for IN-label->label-stack mapping (i.e., the forwarding nodes use this mapping relationship to operate on the labels). Figure 2 The message flow was interpreted through operations a) at PE1, b) at P1, c) at P2, d) at P3, e) at P4, f) at P5, and g) at P6, respectively.
[0068] An entity (such as a router) performs IGP to publish the SR-TE Adjacency SID (i.e., label) to all nodes in the IGP domain (zone / level). The PCEP processing flow is as follows:
[0069] a) such as Figure 7 As shown, during PCEP session establishment, the PCE learns the MSD and label concatenation (i.e., binding) capabilities (LBit25 in the STATEFUL-PCE-CAPABILITY TLV) from all forwarding nodes (i.e., PE1, P1, P2...PE2), as well as the MSD (label stack depth) supported by each PCC, i.e., each network device. For example, Figure 2 and Figure 4 All PCCs shown have an MSD value of 3.
[0070] b) Once the session is established, the network device (hereinafter referred to as PCC) allocates a label range reservation for the PCE in the PCLRResv message. For example... Figure 8 As shown, a new tag type (3) has been introduced into the tag range object, which will be used by PCE as... Figure 3 The example shows tag concatenation (binding, etc.). It's important to note that this scope can only be used by PCE to create tag bindings.
[0071] c) The PCE obtains the TEDB / Label-DB from all PCCs through BGPLS (Border Gateway Protocol Link State), PCEPLS (PCEP Link State), or IGP.
[0072] d) In order to establish the SR-TE tunnel, the PCE calculates the path from PE1 to PE2, and the LSP span is PE1->P1->P2->P3->P4->P5->P6->PE2.
[0073] e) Since the MSD value of PE1 is 3, it can only encode a maximum of 3 labels. Therefore, PCE will generate a label concatenation (i.e., IN-label->Label-Stack) mapping for the SR-TE path from the label range received for label type 3 in step b at PE1, P2, P4 and P6.
[0074] f) such as Figure 5 As shown, the PCE sends the label binding mapping to the network device (i.e., P2, P4, and P6) with label binding capability via PCLabelUpd. Subsequently, the PCC or the network device can send a PCRpt message with an encoded SRP-ID (Stateful Request Parameter Identifier, abbreviated as SRP-ID).
[0075] g) Before sending the PCUpd message to the PCC (Ingress), the PCE can choose to wait for the PCRpt message from the network devices (i.e., P2, P4, and P6), or send the PCUpd message with the first part of the label stack and the concatenated label to the Ingress router (PE1). Once the PCE receives the PCRpt message from the Ingress and shows that the LSP status is UP, the PCE confirms that the LSP status is UP (the LSP status is UP only if the path is normal and can carry traffic) and that the label concatenation is correct; if there is an error, the PCE should delete the label concatenation, such as... Figure 6 As shown.
[0076] Figure 4 This illustration shows another network deployment scenario for establishing an SR-TE LSP according to another embodiment of the present invention, wherein the SR-TE LSP has 5 nodes between the ingress and egress points. The IGP publishes the SR-TE Adjacency SID (i.e., tag) to all nodes in the IGP domain (region / level). The PCEP processing flow is as follows:
[0077] a) Establish PCEP sessions with PCE and all forwarding nodes (PE1, P1, P2, P3 and PE2).
[0078] b) During session establishment, the PCE learns the tag binding capabilities (L Bit in the STATEFUL-PCE-CAPABILITY TLV) and MSD (tag stack depth) supported by each PCC. Assume that PE1 sends an MSD value of 3.
[0079] c) PCE is the SR-TE LSP calculation path from PE1 to PE2, and the LSP span is PE1->P1->P2->P3->PE2.
[0080] d) Since PE1 has an MSD value of 3, it can only encode a maximum of 3 tags. Therefore, PCE will generate tag bindings (new binding tags for the remaining tags).
[0081] e) Since P2 supports label binding capability, PCE will send a PCLabelUpd message with the new label binding at the first network device, and P2 can send a PCRpt message encoding the SRP-ID, such as... Figure 3 As shown. It is worth noting that this range can only be used by PCE to create tag bindings.
[0082] f) Before sending the PCUpd message to the PCC (Ingress), the PCE may choose to wait for the PCRpt message from the first network device (hereinafter referred to as P2), or send a PCUpd message containing the first part of the tag stack and the bound tag to the third network device (hereinafter referred to as PE1). Once the PCRpt message is received from the Ingress, the PCE confirms that the LSP has been established and the tag binding is correct. If there is an error, the PCE should delete the tag binding, such as... Figure 4 As shown. Therefore, the PCE sends the PCUpd message to the ingress node, wherein the PCUpd message includes a label exchange path with label bindings.
[0083] g) The SR-TE tunnel (LSP) crosses PE1 (Ingress) -> PE2 (Egress).
[0084] h) On PE1, the PCE pre-adds the SR-TE label stack (i.e., 201, 301, and 3001) to the IP header based on the path.
[0085] i) At the first label switching router (LSR) P1, label 201 is popped out, label 301 is checked, and the packet with the SR-TE label stack (i.e., 301 and 30014) is forwarded to P2.
[0086] j) At P2, label 301 is popped out and 3001 is checked. Since each label is bound to the SR-TE label stack (i.e., 601 and 701) has been added in advance, the packet is forwarded to P3 normally.
[0087] k) At the second LSR P3, pop up label 601, check label 701, and forward the message to PE2.
[0088] Since PE1 only supports MSD=3, the tag binding is generated and sent by the PCE of P2, and the respective SR-TE paths are sent to PCC(PE1).
[0089] Protocol extensions:
[0090] a) In STATEFUL-PCE-CAPABILITY, reserve L BIT(25) to support tag binding capabilities. For example... Figure 7 As shown, if the L bit is set, PCE / PCC supports tag binding for SR-PATH segments.
[0091] b) A tag binding update should be added to the existing PCEP message PCLabelUpd to update the tag splicing in the first network device (i.e., Figure 2 (P2).
[0092]
[0093]
[0094] It is important to note that the SRP object must encode the PATH-BINDING to download the label binding to the transport node or network device. The LSP object should be selectively encoded to uniquely identify the LSP; this may be useful for diagnostics. The ERO object encodes a portion of the SRERO (i.e., the label bound to the label in the PATH-BINDING-TLV). To clear / remove the label binding, the existing R bit in the SRP object can be used.
[0095] c) A new label range object type 3 has been added to the PCLRResv message, which is used to send the label range reserved for PCE to generate label binding.
[0096] The system for sending data packets in the communication network includes a first network device (P2). The first network device (P2) includes: a memory (101) for receiving a first packet through a first adjacent segment of a segment routing traffic engineering (SR-TE) path; wherein the first packet includes a first incoming label and a second packet; a processor (102) for identifying the first packet from the memory (101), wherein the processor (102) is configured to: determine a first label stack based on the first packet, map the first incoming label to the first label stack, and generate a third packet based on the first label stack, wherein the third packet includes the first label stack and the second packet; and a transceiver (103) for sending the third packet generated by the processor (102) to a second network device (P4) in segments along the first path of the SR-TE path.
[0097] like Figure 9 As shown, according to a third aspect of the present invention, a network apparatus (100) for transmitting data packets in a communication system is provided. It is noteworthy that the network apparatus (100) can perform... Figure 1a and 1b The method shown. The first network device (100) includes: a memory (101) for receiving a first packet through a first adjacent segment of a segment routing traffic engineering (SR-TE) path; wherein the first packet includes a first incoming label and a second packet; a processor (102) for identifying the first packet from the memory, wherein the processor (102) is configured to: determine a first label stack based on the first packet, map between the first incoming label and the first label stack, and generate a third packet based on the first label stack, wherein the third packet includes the first label stack and the second packet; and a transceiver (103) for transmitting the third packet generated by the processor. It is worth noting that the system for transmitting data packets in a communication network is provided according to an embodiment of this application. The system includes Figure 9 The first network device (100) shown.
[0098] In the prior art, PCE assigns and downloads labels to each forwarding node to establish an SR-TE LSP. However, in networks where labels (i.e., SRIDs) are generated by IGP (i.e., PCC) and downloaded to the forwarding plane, the establishment of the SR-TE LSP is limited by the MSD value of the node. To support the establishment of SR-TE LSPs without considering the limitation of MSD value, this invention discloses PCEP extensions, such as STATEFUL-PCE-CAPABILITY, L bit (25) reserved to support label binding capability, and label binding update added to the existing PCEP message PCLabelUpd, wherein the label binding update is used to update the label splicing on the transport node or network device.
[0099] With the scheme disclosed in this invention, in order to establish an SR-TE LSP, the PCE can generate label bindings from the defined label range (i.e., label type 3) and send the label bindings to the network device, thereby realizing the establishment of cross-network SR-TELSP in the old routing system without worrying about the forwarding node's restriction on MSD.
[0100] In addition to the content discussed above, some other advantages and features of this topic are as follows:
[0101] i. Segmented routing with traffic engineering can be implemented in existing networks without upgrading products to support higher MSDs.
[0102] ii. Scalable solutions are not limited by the product.
[0103] iii. Migrating from the existing RSVP-TE scheme to the SDN (PCE) controlled SR-TE scheme is simpler.
[0104] iv. Inter-zone or inter-domain LSPs can be created without creating a separate LSP in the next domain.
[0105] Those skilled in the art will understand that any known or new algorithm can be used to implement this invention. However, it should be noted that this invention provides a method that enables segmented routing with traffic engineering in existing networks without upgrading products to support higher MSDs. Therefore, regardless of the known or new algorithm used, the aforementioned advantages and technological advancements can be achieved.
[0106] Those skilled in the art will recognize that the examples described in conjunction with the embodiments disclosed in this specification can be implemented by electronic hardware or a combination of computer software and electronic hardware. Whether the function is performed by hardware or software depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of this invention.
[0107] In the embodiments provided by this invention, it should be understood that the disclosed methods can be implemented in other ways. For example, the described device embodiments are merely exemplary. For example, the unit division is merely a logical functional division, and in actual implementation, there may be other divisions. For example, multiple units or components may be merged or integrated into another system, or some features may be ignored or not performed. In addition, the shown or discussed mutual coupling or direct coupling or communication connection can be implemented through some interfaces. Direct coupling or communication connection between devices or units can be implemented electronically, mechanically, or otherwise.
[0108] When these functions are implemented as software functional units and sold or used as separate products, they can be stored in a computer-readable storage medium. Based on this understanding, the technical solutions of the present invention can be implemented essentially or constitute a part of the prior art or a part of the technical solutions through a software product. The computer software product is stored in the storage medium and includes several instructions for instructing a computer node (which may be a personal computer, server, or network node) to execute all or part of the steps of the methods described in the embodiments of the present invention. The aforementioned storage medium includes, for example, any medium capable of storing program code, such as a USB flash drive, a removable hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk, or an optical disk.
[0109] Devices that communicate with each other do not need to maintain continuous communication unless otherwise expressly stated. Furthermore, devices that communicate with each other may communicate directly or indirectly through one or more intermediate devices.
[0110] While this document describes a single device or article of manufacture, it is obvious that more than one device / article of manufacture (whether or not they cooperate) can be used in place of a single device / article of manufacture. Similarly, if this document describes more than one device or article of manufacture (whether or not they cooperate), it is obvious that a single device / article of manufacture can be used in place of more than one device or article of manufacture, or a different number of devices / articles of manufacture can be used instead of the number of devices or programs shown. The functionality and / or features of a device can alternatively be implemented by one or more other devices that are not explicitly described as having such functionality / features. Therefore, other embodiments of the invention do not necessarily need to include the device itself.
[0111] While an implementation of a method that enables segmented routing in existing networks without requiring product upgrades to support higher MSDs using traffic engineering has been described in feature- and / or method-specific language, it should be understood that the appended claims are not necessarily limited to the specific features or methods described. Rather, the specific features and methods are disclosed as examples of implementations of the PCEP segmented routing path segmentation label binding extension.
Claims
1. A method for sending data packets in a communication network, characterized in that, The method includes the following steps: The first network device receives the first packet in segments via the second path of the segment routing traffic engineering (SR-TE) path. The first packet includes a first incoming label and a second packet. Before the first network device receives the first message, the method further includes the following steps: the first network device reports its tag range to the path computation element (PCE); the first network device receives the correspondence between the first incoming tag and the first tag stack from the PCE, wherein the first incoming tag is allocated by the PCE and belongs to the tag range. The first network device sends a third message to the second network device through the first path segment of the SR-TE path. The third message includes a first tag stack and a second message. The first tag stack is obtained based on the first incoming tag. The first network device is the incoming node of the first path segment, and the second network device is the outgoing node of the first path segment.
2. The method according to claim 1, characterized in that, The first tag stack includes at least one adjacency segment identifier (Adj-SID), and the first path segment is identified by at least one Adj-SID in the first tag stack.
3. The method according to claim 1 or 2, characterized in that, The first network device is the outgoing node of the second path segment, and the third network device is the incoming node of the second path segment.
4. The method according to any one of claims 1 to 3, characterized in that, Before the second message is transmitted through a second path segmentation identified by at least one Adj-SID in the second label stack, the third network device encapsulates the second label stack within the second message, wherein the second label stack includes the first incoming label.
5. The method according to any one of claims 1 to 4, characterized in that, The first input label is located at the bottom of the second label stack.
6. The method according to any one of claims 1 to 5, characterized in that, The first incoming tag is encapsulated into the second message by the third network device after it learns that the first incoming tag comes from the PCE that has received the tag range reported by the first network device.
7. The method according to any one of claims 1 to 6, characterized in that, The first tag stack includes a second in tag located at the bottom of the first tag stack.
8. The method according to claim 7, characterized in that, The second ingress label is used by the second network device to forward the second packet through the third path segment of the SR-TE path, wherein the second network device is the ingress node of the third path segment.
9. A system for transmitting data packets in a communication network, characterized in that, The system includes: A first network device includes a memory and a processor; The processor is configured to execute instructions in the memory to cause the first network device to: The first packet is received in segments via the second path of the segment routing traffic engineering (SR-TE) path. The first packet includes a first incoming label and a second packet. Prior to receiving the first message, the processor executes instructions in the memory to cause the first network device to further: report the tag range of the first network device to the path computation element (PCE); and receive from the PCE the correspondence between the first incoming tag and the first tag stack, wherein the first incoming tag is allocated by the PCE and belongs to the tag range. The third message is sent to the second network device through the first path segment of the SR-TE path. The third message includes a first label stack and the second message. The first label stack is obtained based on the first incoming label. Wherein, the first network device is the ingress node of the first path segment, and the second network device is the egress node of the first path segment.
10. The system according to claim 9, characterized in that, in, The first tag stack includes at least one adjacency segment identifier (Adj-SID), and the first path segment is identified by at least one Adj-SID in the first tag stack.
11. The system according to claim 9 or 10, characterized in that, The first network device is the outgoing node of the second path segment, and the third network device is the incoming node of the second path segment.
12. The system according to any one of claims 9 to 11, characterized in that, Before the second message is transmitted through a second path segmentation identified by at least one Adj-SID in the second label stack, the third network device encapsulates the second label stack within the second message, wherein the second label stack includes the first incoming label.
13. The system according to any one of claims 9 to 12, characterized in that, The first input label is located at the bottom of the second label stack.
14. The system according to any one of claims 9 to 13, characterized in that, The first incoming tag is encapsulated into the second message by the third network device after it learns that the first incoming tag comes from the PCE that has received the tag range reported by the first network device.
15. The system according to any one of claims 9 to 14, characterized in that, The first tag stack includes a second in tag located at the bottom of the first tag stack.
16. The system according to claim 15, characterized in that, The second ingress label is used by the second network device to forward the second packet through the third path segment of the SR-TE path, wherein the second network device is the ingress node of the third path segment.
17. The system according to any one of claims 9 to 16, characterized in that, The system further includes the PCE, which is used to receive the tag range of the first network device reported by the first network device; obtain the correspondence between the first incoming tag and the first tag stack; and send the correspondence between the first incoming tag and the first tag stack to the first network device.
18. A first network device for transmitting data packets in a communication system, characterized in that, The first network device includes a memory and a processor, the processor being configured to execute instructions in the memory to cause the first network device to perform the method as described in any one of claims 1-8.
19. A computer program product comprising instructions that, when run on a computer, cause the computer to perform the method as described in any one of claims 1-8.
20. A computer-readable storage medium comprising instructions that, when executed on a computer, cause the computer to perform the method as claimed in any one of claims 1-8.
21. A communication method applied to a communication system, the communication system comprising a path computation element (PCE), a first network device, and a second network device, the method being executed by the PCE, characterized in that... The method includes: Receive the tag range of the first network device reported by the first network device; Obtain the correspondence between the first input label and the first label stack; The correspondence between the first incoming tag and the first tag stack is sent to the first network device, and the first incoming tag belongs to the tag range; The correspondence between the first incoming label and the first label stack is used by the first network device to obtain the first label stack corresponding to the first incoming label after receiving a first message including the first incoming label and the second message through the second path segment of the segment routing traffic engineering (SR-TE) path, and then encapsulating the first label stack and the second message into a third message and sending it to the second network device through the first path segment of the SR-TE path.
22. A communication device, applied to a communication system, the communication system comprising the communication device, a first network device, and a second network device, characterized in that, The communication device includes a memory and a processor, the processor being configured to execute instructions in the memory to cause the communication device to: Receive the tag range of the first network device reported by the first network device; Obtain the correspondence between the first input label and the first label stack; The correspondence between the first incoming tag and the first tag stack is sent to the first network device, and the first incoming tag belongs to the tag range; The correspondence between the first incoming label and the first label stack is used by the first network device to obtain the first label stack corresponding to the first incoming label after receiving a first message including the first incoming label and the second message through the second path segment of the segment routing traffic engineering (SR-TE) path, and then encapsulating the first label stack and the second message into a third message and sending it to the second network device through the first path segment of the SR-TE path.
23. The communication device according to claim 22, characterized in that, The communication device is a path computation element (PCE).
24. A computer program product comprising instructions that, when run on a computer, cause the computer to perform the method as described in claim 21.
25. A computer-readable storage medium comprising instructions that, when executed on a computer, cause the computer to perform the method of claim 21.
Citation Information
Patent Citations
Massage forwarding processing method, massage forwarding processing device, controller and routing forwarding device
CN105991437A