WO2018033060A1 - Message switching method and device - Google Patents
Message switching method and device Download PDFInfo
- Publication number
- WO2018033060A1 WO2018033060A1 PCT/CN2017/097500 CN2017097500W WO2018033060A1 WO 2018033060 A1 WO2018033060 A1 WO 2018033060A1 CN 2017097500 W CN2017097500 W CN 2017097500W WO 2018033060 A1 WO2018033060 A1 WO 2018033060A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- node
- topology
- prefix
- mrt
- 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.)
- Ceased
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/12—Shortest path evaluation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/46—Interconnection of networks
- H04L12/4633—Interconnection of networks using encapsulation techniques, e.g. tunneling
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/22—Alternate routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/50—Routing or path finding of packets in data switching networks using label swapping, e.g. multi-protocol label switch [MPLS]
Definitions
- the present invention relates to the field of communications, and in particular to a packet forwarding method and apparatus.
- MRT Maximum Redundant Trees
- FRR Fast Re-Route
- LDP Label Distribution Protocol
- IP-tunnel network protocol-tunnel
- the LDP forwarding mechanism distinguishes between the default topology forwarding behavior and the MRT forwarding behavior through different labels, so that the forwarding plane can support MRT-FRR without any upgrade.
- the IP-tunnel forwarding mechanism needs to waste the dedicated MRT loopback address to support forwarding. It also enables the forwarding plane to support MRT-FRR without any upgrade. In contrast, the LDP forwarding mechanism is more reasonable. Therefore, the default maximum redundancy tree configuration file of the MRT architecture uses the LDP forwarding mechanism in the default MRT profile. Currently, other MRT profiles are not defined.
- the segmentation routing technology will enable a node to specify its forwarding path for the message instead of forwarding it according to the general shortest path. By adding the segment list information related to the segment ID segment ID to the message, it is not required. The status information of each path is maintained on the intermediate node. Segmented routing primarily extends the IGP to support advertising and learning segment IDs. Generally, in the network where the segmentation route is deployed, the LDP and the Resource ReSerVation Protocol-Traffic Extension (RSVP-TE) are no longer needed. In the segmented routing network, the known FRR technology has a Topology Independent Loop Free Alternate (TI-LFA), but the protection rules defined by TI-LFA are very complicated and immature.
- TI-LFA Topology Independent Loop Free Alternate
- the embodiment of the invention provides a packet forwarding method and device, so as to solve at least the problem that the segment routing network and the MTR function cannot be combined in the related art.
- a packet forwarding method including: a first node receives a packet to be forwarded, where a destination address of the packet is a second node; and the first node is in advance Searching for a target topology corresponding to the packet in the generated topology, where the pre-generated topology includes: a first topology and a second topology generated according to a maximum redundancy tree MRT algorithm, and obtained according to a shortest path first SPF algorithm a third topology, the first topology and the second topology and the third topology are different from each other; the first node looks up in the target topology for forwarding to the second node a hop node, and forwarding the message to the next hop node based on a predetermined forwarding mechanism, wherein the predetermined forwarding mechanism adopts a segmented route forwarding based on a tunnel nesting manner of each prefix per prefix per prefix mechanism.
- the method further includes: determining, by the first node, a route from the first topology to the destination address and a route from the second topology to the destination address according to the MRT algorithm a protection route for protecting a route to the destination address in the third topology, and determining that a topology corresponding to the protection route is a protection topology; and/or, the first node according to the color flag information from the Determining a protection route for protecting a route to the destination address in the third topology from a route to a tunnel end point in a topology and a route to a tunnel end point in the second topology, and determining a corresponding path of the protection route
- the topology is a protection topology, where the tunnel endpoint is a remote node selected by the first node for the protection destination address, and the remote node is loop-free for the fault point, when the fault occurs.
- the first node uses the MRT tunnel encapsulation message to the remote node.
- the searching, by the first node, the target topology corresponding to the packet in the pre-generated topology includes: determining, by the first node, a chain in the third topology for reaching the second node Whether the road has a fault; in the case that it is determined that there is no fault, the first node determines that the third topology is the target topology; and/or, in the event that a fault is determined, The first node determines that the protection topology is the target topology.
- the method before the receiving, by the first node, the packet to be forwarded, the method further includes: the first node generating, according to the MRT algorithm, the first topology and the second topology, and according to The SPF algorithm generates the third topology.
- the first node generates the first topology and the second topology according to the MRT algorithm
- the third topology is generated according to the SPF algorithm
- the first node determines the An MRT Island where a node is located, wherein the MRT Island is an open shortest path first OSPF or intermediate system on the first node and other nodes in the same domain area or the same level as the first node
- the segmentation route SR and the maximum redundancy tree profile MRT profile are enabled in the intermediate system ISIS instance
- the first node and the other nodes negotiate with each other in the area or level where the first node is located;
- the first node generates the first topology and the second topology based on the MRT Island running the MRT algorithm
- the third topology is generated by running the SPF algorithm based on the area or level.
- the predetermined forwarding mechanism is specified in the MRT profile.
- the method further includes at least one of: the first node assigns a first prefix-sid to the first topology for a node-level prefix local to the first node, and the first prefix -sid flooding in the domain area or level of the MRT Island; the first node is a node-level prefix local to the first node, and assigns a second prefix-sid to the second topology, and The second prefix-sid is flooded in a domain area or a hierarchy level in which the MRT Island is located; the first node is a node-level and a non-node-level prefix local to the first node, and the third topology is allocated to the third topology.
- the first node receiving a prefix of the pre-generated topology on other nodes -sid, recording a prefix-sid of the pre-generated topology on the other node and continuing to advertise a prefix-sid of the pre-generated topology on the other node to a node other than the other node .
- the forwarding, by the first node, the packet to the next hop node includes: Determining, by the first node, an outgoing label of the first node that matches the packet; the first node encapsulating the outgoing label of the first node into the packet, and sending the encapsulated packet Go to the next hop node.
- the determining, by the first node, the outbound label of the first node that matches the packet includes: when the target topology is the third topology, the first node corresponding to the target The outbound label of the topology is calculated by the first node based on the third prefix index prefix-sid of the destination prefix prefix corresponding to the destination address and the SRGB of the next hop node.
- the determining, by the first node, the outbound label of the first node that matches the packet includes: when the target topology is the first topology or the second topology: When the two nodes are the nodes in the MRT Island and the destination prefix prefix corresponding to the destination address is the node-level prefix prefix of the second node, the first node determines the corresponding location of the first node by: An outbound label of the target topology: an outbound label of the first node corresponding to the target topology is prefixed by the first node based on a prefix index of the node level prefix prefix of the second node corresponding to the target topology SRGB calculation with the next hop node; if the second node is not the node in the MRT Island or the destination prefix prefix corresponding to the destination address is the non-node level prefix of the second node The first node determines whether the next hop node is a node outside the MRT Island; when the determination result is no, the first no
- the first node encapsulates the outgoing label of the first node into the packet, and includes at least one of the following: when the packet type of the packet is an Internet Protocol IP packet, The outbound label of the first node is pressed on the IP header of the IP packet; when the packet type of the packet is a fragmented route SR label packet, the stack of the label stack of the SR label packet is used. The top tag is replaced with the outgoing tag of the first node.
- the determining, by the first node, the outgoing label of the first node includes: when the first node and the second node are the same node, the first node is determined based on the target topology. The next hop node is the first node, and the first node does not have a label.
- the method further includes: when the first node and the second node are the same node, the method includes: when the packet type of the packet is an Internet Protocol IP packet, the first Sending, by the node, the packet to the control plane of the first node; and/or, when the packet type of the packet is a fragmented route SR label packet, the first node sends the SR
- the stack top label of the label stack of the label message pops up, and continues to be forwarded based on the lower layer label or IP header lookup table of the label stack of the message.
- a message forwarding device is further provided, where the device is applied to a first node, and includes: a receiving module, configured to receive a packet to be forwarded, where the packet is The destination address is a second node, and the search module is configured to search for a target topology corresponding to the packet in a pre-generated topology, where the pre-generated topology includes: a first generated according to a maximum redundancy tree MRT algorithm.
- a forwarding module configured to be at the target Finding, in the topology, a next hop node for forwarding to the second node, and forwarding the packet to the next hop node based on a predetermined forwarding mechanism, where the predetermined forwarding mechanism adopts per prefix based on each topology
- the segmentation route forwarding mechanism of the tunnel nesting mode of the index prefix-sid is configured to be at the target Finding, in the topology, a next hop node for forwarding to the second node, and forwarding the packet to the next hop node based on a predetermined forwarding mechanism, where the predetermined forwarding mechanism adopts per prefix based on each topology
- the segmentation route forwarding mechanism of the tunnel nesting mode of the index prefix-sid is configured to be at the target Finding, in the topology, a next hop node for forwarding to the second node, and forwarding the packet to the next hop node based on a predetermined forwarding mechanism, where the predetermined forwarding mechanism adopts per prefix
- the apparatus further includes: a determining module, configured to follow a route from the first topology to the destination address and the second topology to the destination according to the MRT algorithm Determining, in the routing of the address, a protection route for protecting a route to the destination address in the third topology, and determining that the topology corresponding to the protection route is a protection topology; and/or, according to the color flag information, from the Determining a protection route for protecting a route to the destination address in the third topology from a route to a tunnel end point in a topology and a route to a tunnel end point in the second topology, and determining a corresponding path of the protection route
- the topology is a protection topology, where the tunnel endpoint is a remote node selected by the first node for the protection destination address, and the remote node is loop-free for the fault point, when the fault occurs.
- the first node uses the MRT tunnel encapsulation message to the remote node.
- a storage medium is also provided.
- the storage medium is arranged to store program code for performing the above steps.
- the MRT function is introduced in the segment routing network, thereby achieving the purpose of combining the segment routing network with the MTR function.
- FIG. 1 is a flowchart of a packet forwarding method according to an embodiment of the present invention.
- FIG. 2 is a schematic diagram of an MRT Profile according to an embodiment of the present invention.
- FIG. 3 is a network topology diagram according to a specific embodiment of the present invention.
- FIG. 4 is a network topology diagram according to a second embodiment of the present invention.
- FIG. 5 is a network topology diagram according to a third embodiment of the present invention.
- FIG. 6 is a structural block diagram of a message forwarding apparatus according to an embodiment of the present invention.
- FIG. 7 is a block diagram showing a preferred structure of a message forwarding apparatus according to an embodiment of the present invention.
- FIG. 1 is a flowchart of a packet forwarding method according to an embodiment of the present invention. As shown in FIG. 1, the process includes the following steps:
- Step S102 the first node receives the packet to be forwarded, where the destination address of the packet is the second node;
- Step S104 The first node searches for a target topology corresponding to the foregoing packet in a pre-generated topology, where the pre-generated topology includes: a first topology and a second topology generated according to a maximum redundancy tree MRT algorithm, According to a third topology obtained by a Shortest Path First (SPF) algorithm, the first topology and the second topology and the third topology are different from each other;
- SPF Shortest Path First
- Step S106 the first node searches for a next hop node for forwarding to the second node in the target topology, and forwards the packet to the next hop node according to a predetermined forwarding mechanism, where the predetermined forwarding mechanism is adopted.
- a segmented route forwarding mechanism based on the tunnel nesting manner of prefix-sid per prefix per topology.
- the first node may be any node in the MRT Island, and the second node may be any node in the SR Domain, and the second node may be in the MRT Island or outside the MRT Island.
- One of the first topology and the second topology may be an MRT-red topology, and one is an MRT-blue topology; and the third topology may be an MT-default topology.
- the first node when the first node forwards the packet to the next hop node, the first node may perform forwarding according to a predetermined forwarding mechanism, which is a tunnel nesting manner based on the per-segment per-segment routing global block SRGB. Segmented route forwarding mechanism.
- a predetermined forwarding mechanism which is a tunnel nesting manner based on the per-segment per-segment routing global block SRGB. Segmented route forwarding mechanism.
- the MRT function is introduced in the segment routing network, thereby achieving the purpose of combining the segment routing network with the MTR function.
- the foregoing method further includes: (can receive the message to be forwarded).
- the foregoing step is performed in the embodiment: the first node determines, according to the MRT algorithm, the route from the first topology to the destination address and the route from the second topology to the destination address to protect the third topology to the destination address.
- Protecting the route of the route, and determining that the topology corresponding to the protection route is a protection topology; and/or, the first node according to the color flag information from the first topology to the tunnel end point and the route from the second topology to the tunnel end point Determining a protection route for protecting a route to a destination address in the third topology, and determining that the topology corresponding to the protection route is a protection topology, wherein the tunnel end point is a remote node selected by the first node as a protection destination address
- the remote node is loop-free for the fault point.
- the first node uses the MRT tunnel to the remote node to encapsulate the packet.
- the first topology may be determined as the protection topology
- the second topology may be determined as the protection topology.
- the specific topology selected as the protection topology needs to be determined according to actual conditions.
- the searching, by the first node, the target topology corresponding to the foregoing packet in the pre-generated topology includes: determining, by the first node, whether the link used to reach the second node in the third topology is A fault occurs; the first node determines that the third topology is the target topology in the case that it is determined that there is no fault; and/or, in the case that the fault is determined, the first node determines that the protection topology is the target topology.
- the packet can be forwarded according to the default topology. After the link is faulty, the protection topology is used to forward the packet.
- the method before the receiving, by the first node, the packet to be forwarded, the method further includes: the first node generates the first topology and the second topology according to the MRT algorithm, and generates according to the SPF algorithm. Get the third topology.
- the first node generates the first topology and the second topology according to the foregoing MRT algorithm, and generates the third topology according to the SPF algorithm, where the first node determines the MRT Island where the first node is located.
- the MRT Island is an Open Shortest Path First (OSPF) or intermediate system to an intermediate system on the first node and other nodes in the same domain area or the same level as the first node. (Intermediate system to Intermediate system, referred to as ISIS), the segmentation route SR and the maximum redundancy tree configuration file MRT profile are enabled in the first section.
- OSPF Open Shortest Path First
- ISIS Intermediate system to Intermediate system
- the first node and the other nodes are mutually negotiated in the area or level where the point is located; the first node generates the first topology and the second topology based on the MRT Island running MRT algorithm, and generates the SPF algorithm based on the above area or level.
- the third topology is mutually negotiated in the area or level where the point is located; the first node generates the first topology and the second topology based on the MRT Island running MRT algorithm, and generates the SPF algorithm based on the above area or level.
- the foregoing predetermined forwarding mechanism is specified in the MRT profile. That is, the segmented route forwarding mechanism based on the tunnel nesting manner of the prefix-sid per prefix per topology is adopted.
- the foregoing method further includes at least one of the following: the first node is a node-level prefix local to the first node, and the first prefix-sid is allocated to the first topology, and the first prefix-sid is Flooding in the domain area or level of the MRT Island; the first node is a node-level prefix local to the first node, and a second prefix-sid is allocated for the second topology, and the second prefix-sid is located at the MRT Island.
- the first node is a node-level and non-node-level prefix local to the first node, and a third prefix-sid is allocated for the third topology, and the third prefix-sid is in the first node.
- the first node receives the prefix-sid of the pre-generated topology on the other node, records the prefix-sid of the pre-generated topology on the other node, and the other
- the prefix-sid of the pre-generated topology on the node continues to be advertised to nodes other than the other nodes.
- the first prefix-sid, the second prefix-sid, and the third prefix-sid are independent of each other.
- the first node forwarding the packet to the next hop node includes: the first node determining an outgoing label of the first node that matches the packet; the first node The outgoing label of the node is encapsulated into the above packet, and the encapsulated packet is sent to the next hop node.
- the label encapsulation manner is different for different types of packets.
- the first node determines that the egress label of the first node that matches the packet includes: when the target topology is the third topology, the label of the corresponding target topology of the first node is A node is calculated based on the third prefix index prefix-sid of the destination prefix prefix corresponding to the destination address and the SRGB of the next hop node.
- the first node determines the first section that matches the message.
- the outbound label of the point includes: when the target topology is the first topology or the second topology: if the second node is a node in the MRT Island and the destination prefix corresponding to the destination address is a node-level prefix prefix of the second node.
- the first node determines an outbound label of the first node corresponding to the target topology by: the outbound label of the corresponding target topology of the first node is corresponding to the target topology of the first node based on the node level prefix of the second node
- the prefix index prefix-sid is calculated by the SRGB of the next hop node; if the second node is not the node in the MRT Island or the destination prefix prefix corresponding to the destination address is the non-node level prefix of the second node, the foregoing A node determines whether the next hop node is a node outside the MRT Island; when the determination
- the first node encapsulates the outgoing label of the first node into the packet, and includes at least one of the following: when the packet type of the packet is an Internet Protocol IP packet, The IP address of the IP packet is stamped with the outgoing label of the first node. When the packet type of the packet is a fragmented routing SR label, the top label of the label stack of the SR label is replaced with the first label. The outgoing label of a node.
- the determining, by the first node, the outbound label of the first node includes: when the first node and the second node are the same node, the first node determines the next hop node based on the target topology. For the first node, the first node does not have a label.
- the method further includes: when the first node and the second section are When the point is the same node, the first node sends the packet to the control plane of the first node when the packet type of the packet is an Internet Protocol IP packet; and/or, when the packet is When the packet type is a segment-routed SR-tag packet, the first node pops up the stack-top label of the label stack of the SR-tag packet, and continues to forward the packet based on the lower-layer label or the IP header of the label stack of the packet.
- the segmentation route is combined with the MRT technology to provide an MRT-FRR method based on the segmentation route forwarding mechanism.
- an MRT profile is added to the MRT architecture, and the segment routing and forwarding mechanism is used to distinguish the default topology forwarding behavior and the MRT topology forwarding behavior by using the segment routing and forwarding mechanism.
- the first step is to define a new MRT profile MRT Profile.
- the SR-LSP is an LSP based on the fragment routing (SR) type, which is similar to the LDP LSP.
- the SR-LSP tunneling forwarding mechanism is that the SR LSP in the MRT topology is established with the MRT egress node as the destination node. After the MRT FRR switchover occurs, on the MRT Ingress node, the SR LSP in the default topology is the tunnel nested in the MRT. Topology of the SR LSP.
- Multi-prefix-sid refers to each prefix-sid per topology, that is, the default topology is different from the MRT-red topology and the prefix-sid in the MRT-blue topology.
- the MRT is enabled in the corresponding IGP instance on each node in the IGP area/level (which may be only a part of the node) and the new MRT profile is supported, and the corresponding MRT Island is generated for the new MRT profile.
- the corresponding MT-IDs are recorded as MT-red and MT-blue, respectively.
- the MT-ID corresponding to the default topology generated by the SPF algorithm can be recorded as MT-default.
- the third step is to enable the IGP instance on each node of the segmentation route. If the MRT is also enabled and the new MRT profile is supported, the MT-default prefix-sid is not assigned to the MT-default. -default node-sid (usually the prefix-sid corresponding to a loopback route, the same below), and also assign the MT-red prefix-sid of the node-level MT-red node-sid to MT-red, and MT-blue The MT-blue prefix-sid of the node level is assigned as the MT-blue node-sid.
- the three node-sids are flooded with (MT-default, prefix), (MT-red, prefix), and (MT-blue, prefix) reachable notification messages, where (MT-default, prefix) can be between areas. Flooding, but (MT-red, prefix) and (MT-blue, prefix) flood only in the area.
- the nodes in the above MRT Island need to additionally allocate MT-red node-sid and MT-blue node-sid for their node-level prefix.
- the non-node-level prefix in the MRT Island can also be assigned the corresponding MT-red prefix-sid and MT-blue prefix-sid, but it is not required. Generally, it is not recommended to allocate. If it is allocated, its corresponding entry establishment process and node.
- the establishment process of the class prefix is completely similar; the node-level and non-node-level prefix outside the MRT Island do not need to allocate the corresponding MT-red prefix-sid and MT-blue prefix-sid because of the original in these prefixes.
- the MRT is not perceived, and it is impossible to allocate the MRT-related MT-red prefix-sid and MT-blue prefix-sid.
- the source node S in the MRT Island calculates the SPF primary next hop and the MRT-blue/red next hop for the node-level prefix (denoted as D-loopback0) of the other destination node D in the Island, ie (MT- Default, D-loopback0) will contain the SPF main next hop, (MT-blue, D-loopback0) will contain the MRT-blue next hop, (MT-red, D-loopback0) will contain MRT-red One jump. And determining whether the MRT-blue next hop or the MRT-red next hop protects the SPF primary next hop by the MRT algorithm.
- D-loopback0 node-level prefix
- the MT-default SR outgoing label in the SPF primary next hop is calculated based on the offset of the (MT-default, D-loopback0) corresponding prefix-sid in the SRGB of the next hop node; in the MRT-red next hop The MRT-red SR outgoing label is calculated based on the offset of the (MT-red, D-loopback0) corresponding prefix-sid in the SRGB of the next hop node; the above MRT-blue next The MRT-blue SR outgoing label in the hop is calculated based on the offset of the corresponding prefix-sid of (MT-blue, D-loopback0) in the SRGB of the next hop node.
- the primary NHLFE includes the SPF primary next hop and the corresponding MT-default SR outgoing label
- the MRT-FRR standby NHLFE includes the above selected for protecting the SPF primary.
- the corresponding ILM entry is also generated, and the MT-default SR incoming tag is calculated based on the offset of the (MT-default, prefix) corresponding prefix-sid in the SRGB of the S node, NHLFE Same as the above FTN entry.
- the S-node can also generate a corresponding Incoming Label Map (ILM) entry for (MT-red, D-loopback0), and the MT-red SR is based on the label (MT-red, D-loopback0).
- the corresponding prefix-sid is calculated by offsetting in the SRGB of the S node, and the NHLFE includes the MRT-red next hop and the corresponding MT-red SR outgoing label.
- the corresponding ILM entry is also generated for (MT-blue, D-loopback0), and the MT-blue SR input tag is calculated based on the offset of the corresponding prefix-sid of the (MT-blue, D-loopback0) in the S node.
- the NHLFE contains the MRT-blue next hop and the corresponding MT-blue SR outgoing label.
- the source node S in the MRT Island also calculates the SPF primary next hop and the MRT for other prefixes within the Island or other outside of the Island (ie all other prefixes in the network except the node level prefix in the MRT Island where the S is located).
- -FRR backup next hop MRT-FRR backup next hop is represented as the corresponding MRT Egress node (denoted as E, the corresponding node level prefix is marked as E-loopback0) and the color flag information prompt is selected to the M node of the E node
- E MRT Egress node
- E-loopback0 the corresponding node level prefix
- the color flag information prompt is selected to the M node of the E node
- the red path is also the MRT-blue path to protect the above SPF primary next hop.
- the MT-default SR outgoing label in the SPF primary next hop is calculated based on the offset of the (MT-default, prefix) corresponding prefix-sid in the SRGB of the next hop node; the MRT-FRR backup next hop will correspond to one
- the underlying label is the MT-default SR label assigned by the E node for the destination prefix, that is, based on the offset of the (MT-default, prefix) corresponding prefix-sid in the SRGB of the E node
- the upper label is S to E's MRT-blue or MRT-red road
- the SR entry label corresponding to the path (selecting the MRT-blue or MRT-red path according to the color flag information), that is, based on the (MT-red, E-loopback0) or (MT-blue, E-loopback0) corresponding prefix-sid
- the offset is calculated in the SRGB of the S node.
- the top-level SR into the label needs to be searched for the corresponding SR ILM entry and replaced with the outgoing label and the direct next hop, that is, the above-mentioned incoming label stack is converted into the outgoing label stack.
- a corresponding FTN entry is generated.
- the primary NHLFE includes the foregoing SPF primary next hop and the corresponding MT-default SR outgoing label
- the standby NHLFE includes the MRT Egress node E and its corresponding color flag information.
- the calculated inbound label stack (used to be replaced with the label stack before being actually forwarded).
- the corresponding ILM entry is also generated, and the MT-default SR entry tag is calculated based on the offset of the (MT-default, prefix) corresponding prefix-sid in the S node SRGB, NHLFE and the above
- the FTN entries are the same. If the prefix is an S node local or direct prefix, there is no NHLFE information.
- the IP or SR label unicast traffic is forwarded along the MRT path as follows:
- the MRT Ingress node directs the IP packet based on the corresponding FTN entry of the MT-default, prefix, or the ILM entry guides the SR.
- Label packet forwarding Specifically divided into two cases:
- the top-level label of the SR-label packet MT-default SR is switched into the MRT-
- the red or MRT-blue SR is sent to the MRT-red or MRT-blue next hop after the label is sent out; or the IP packet is directly pressed onto the MRT-red or MRT-blue SR and sent to the MRT-red or MRT- Blue next hop.
- the MT-default SR is switched to the MT that the MRT Egress node allocates for the prefix.
- the -default SR tag is then pressed to the MRT-red or MRT-blue SR of the MRT Egress node and sent to the MRT-red or MRT-blue next hop of the MRT Egress node; or the IP packet is directly pressed.
- the MR-red or MRT-blue SR that is up to the MRT Egress node is sent out to the MRT-red or MRT-blue next hop to the MRT Egress node.
- the MRT Transit node forwards the message based on the corresponding SR ILM entry to the MRT Egress node level (MT-red, prefix) or (MT-blue, prefix), and continues to exchange the MRT-red or MRT-blue SR into the label.
- the MRT-red or MRT-blue SR is sent out to the MRT-red or MRT-blue next hop.
- the MLD-based SR tag corresponding to the lower layer (MT-default, prefix) is used to search for the corresponding ILM entry to forward the packet, or IP address. After the packet header is exposed, it is forwarded directly based on the destination IP address.
- FIG. 2 is a schematic diagram of an MRT profile according to an embodiment of the present invention.
- the MRT profile shown in FIG. 2 is basically the same as the default MRT profile defined in RFC7812. The difference is that the MRT Forwarding Mechanism option is SR-LSP based on multi-prefix. -sid tunneling Option.
- FIG. 3 is a network topology diagram according to a specific embodiment of the present invention.
- OSPF is running in the network, and all nodes are in the same area.
- the segment routing function is enabled in the corresponding OSPF instance, and the MRT profile defined in the foregoing embodiment of the present invention is enabled.
- S establishes the MRT path to the prefix of the destination node D as the source node, and then protects the SPF main path based on this MRT path. Including the following steps:
- Step S301 After the SR is enabled in the OSPF instance on each node of the S, A, B, and D, and the MRT profile defined in the embodiment of the present invention, they form an MRT Island in the area.
- the MRT SR-LSP based on multi-prefix-sid tunneling option is used as the forwarding mechanism in the MRT profile.
- each node in the MRT Island additionally allocates the MT-red prefix-sid.
- MT-blue prefix-sid for example, three types of node-level prefix S-loopback0 can be assigned on the S node.
- the prefix-sid is respectively recorded as: (MT-default, S-loopback0) node-sid, (MT-red, S-loopback0) node-sid, (MT-blue, S-loopback0) node-sid.
- SRGB of the S node is SRGB_S, and the other nodes are similar.
- the MT-default topology in the area is obtained based on the SPF algorithm on each node in the MRT Island, and the MT-red and MT-blue topologies are obtained based on the MRT algorithm.
- the MT-default path to the destination node D is S-D
- the MT-red path is also S-D
- the MT-blue path is S-A-B-D.
- Each node generates a corresponding prefix entry based on the topology. For example, on the S node, the MT-default next hop of the node-level prefix D-loopback0 in the MT-default topology to the destination node D is D, and the MT-blue topology is selected. The MT-blue path is given to protect the MT-default next hop D, then the corresponding MRT-FRR next hop will be copied to the next hop in the above MT-blue, that is, A, which is called MRT-blue next hop. .
- the next hop is D, and the outgoing label is SRGB_D[default_SID0_D]
- Standby NHLFE the next hop is A, and the outgoing label is SRGB_A[blue_SID0_D]
- the entry tag is SRGB_S[default_SID0_D]
- the next hop is D, and the outgoing label is SRGB_D[default_SID0_D]
- Standby NHLFE the next hop is A, and the outgoing label is SRGB_A[blue_SID0_D]
- a node A node:
- the entry tag is SRGB_A[blue_SID0_D]
- NHLFE The next hop is B, and the outgoing label is SRGB_B[blue_SID0_D]
- the entry tag is SRGB_B[blue_SID0_D]
- NHLFE The next hop is D, and the outgoing label is SRGB_D[blue_SID0_D]
- the entry tag is SRGB_D[blue_SID0_D]
- NHLFE None. Indicates that the SR-LSP has been terminated.
- Step S302 When the link SD is faulty, the S node will switch the traffic to the MRT-blue next hop A prepared in advance, that is, the packet will be reported to the destination D-loopback0. The text is forwarded along the MT-blue path SABD.
- the S receives the MT-default SR label packet, it is forwarded based on the ILM for (MT-default, D-loopback0) entry, and the inbound label SRGB_S[default_SID0_D] is exchanged to the outbound label SRGB_A[blue_SID0_D]; if S If the IP packet is received, it is forwarded based on the FTN for (MT-default, D-loopback0) entry, and the label SRGB_A[blue_SID0_D] is directly pressed on the IP header.
- Step S303 after receiving the packet, the node A is matched with the ILM_for (MT-blue, D-loopback0) entry according to the top label of the packet, and continues to exchange the top label SRGB_A[blue_SID0_D] of the packet. It is sent to B after SRGB_B[blue_SID0_D].
- ILM_for MT-blue, D-loopback0
- Step S304 after receiving the packet, the node B matches the ILM for (MT-blue, D-loopback0) entry according to the top label of the packet, and continues to the top label SRGB_B[blue_SID0_D] of the packet. It is sent to D after being exchanged to SRGB_D[blue_SID0_D].
- Step S305 After receiving the packet, the D node selects the SLM_D[blue_SID0_D] according to the top label of the packet, and matches the ILM for (MT-blue, D-loopback0) entry to terminate the SR-LSP locally.
- the IP header continues to forward. Since the IP header is D-loopback0, the packet is sent to the control plane.
- step S306 for the non-node level prefix on the D node, such as D-loopback1, the corresponding three prefix-sids may also be allocated, for example: (MT-default, D-loopback1) prefix-sid, (MT-red , D-loopback1) prefix-sid, (MT-blue, D-loopback1) prefix-sid.
- the nodes in the MRT Island are similar to the steps in the step S301 to the D-loopback1, and the forwarding behavior is similar to the steps S302-305, and will not be described again.
- the optimization method in the embodiment of the present invention may be that the corresponding MT-red node-sid and MT-blue node-sid are additionally allocated only for the node level prefix in the MRT Island.
- the following describes how each node establishes a corresponding entry for D-loopback1 under this optimization method.
- Other embodiments will also be described in accordance with this optimization method, and assume that each node's loopback0prefix is a node-level prefix, and other prefixes are non-node-level prefixes.
- Step S307 creates an entry.
- Step S307 on the S node, the MT-default next hop in the MT-default topology to D-loopback1 is D, and the MT-blue path (SABD) given in the MT-blue topology is selected to protect the MT-default next.
- SABD MT-blue path
- the next hop of the MRT-FRR backup is the MRT Egress node D and the color flag information is MRT-blue.
- the prefix-sid is default_SID1_D.
- the next hop is D, and the outgoing label is SRGB_D[default_SID1_D]
- the top-level tag is SRGB_S[blue_SID0__D]
- the underlying label is SRGB_D[default_SID1_D]
- the entry tag is SRGB_S[default_SID1_D]
- the next hop is D, and the outgoing label is SRGB_D[default_SID1_D]
- Top-level tag is SRGB_S[blue_SID0_D]
- the underlying label is SRGB_D[default_SID1_D]
- the entry tag is SRGB_S[blue_SID0_D]
- NHLFE The next hop is A, and the outgoing label is SRGB_A[blue_SID0_D]
- the entry tag is SRGB_D[default_SID1_D]
- NHLFE None. Indicates that the SR-LSP has been terminated.
- Step S308 for the packet sent to the destination D-loopback1, when the link SD fails, the S node will switch the traffic as the MRT ingress node to the MRT-blue path prepared to the remote MRT Egress node D in advance. , that is, the message is forwarded along the MT-blue path SABD.
- the S receives an MT-default SR tag, it is forwarded based on the ILM for (MT-default, D-loopback 1) entry, and the tag SRGB_S[default_SID1_D] is exchanged to the tag SRGB_D[default_SID1_D].
- SRGB_A[blue_SID0_D] is sent to the next hop A.
- the S receives an IP packet, it is forwarded based on the FTN for (MT-default, D-loopback1) entry and is directly pressed on the IP header. After the label SRGB_D[default_SID1_D], press SRGB_A[blue_SID0_D] and send it to the next hop A.
- step S309 the process of receiving the message by the node A is the same as step S303.
- step S310 the process of receiving the message by the Node B is the same as that of step S304.
- step S311 after receiving the message, the D node continuously plays off the labels SRGB_D[blue_SID0_D] and SRGB_D[default_SID1_D], and continues to forward based on the IP header. Since the IP header is D-loopback0, the packet is sent to the control plane.
- the MRT Island when the packet is forwarded along the MRT path, the MRT Island is actually forwarded along the SR-LSP in the corresponding MRT topology, wherein the node-level prefix in the MRT Island is actually the MT-default SR-LSP. It is attached to the MT-blue or MT-red SR-LSP, and the other prefix actually carries its MT-default SR-LSP on the MT-blue or MT-red SR-LSP to the MRT Egress node.
- FIG. 4 is a network topology diagram according to the second embodiment of the present invention.
- the network runs OSPF, and includes two areas, all nodes.
- the segment routing function is enabled in the corresponding OSPF instance, and the MRT profiles defined in the embodiment of the present invention are enabled in the S, A, B, and C in the area1.
- S establishes the MRT path to the prefix of the destination node D as the source node, and then protects the SPF main path based on this MRT path. Including the following steps:
- step S401 the SR is enabled in the OSPF instance of all the nodes in area1 and area2. Each node is assigned SRGB.
- the MRT profiles defined in the embodiment of the present invention are enabled in the OSPF instance on the S, A, B, and C nodes in the area1, they form an MRT Island in the area1.
- the MRT SR-LSP based on multi-prefix-sid tunneling option is used as the forwarding mechanism in the MRT profile.
- each node in the MRT Island additionally allocates the MT-red prefix-sid.
- the three prefix-sids assigned to the node-level prefix B-loopback0 can be respectively recorded as: (MT-default, B-loopback0) node-sid, (MT-red , B-loopback0) node-sid, (MT-blue, B-loopback0) node-sid.
- Each node will get the MT-default topology in the area based on the SPF algorithm, and based on The MRT algorithm obtains MT-red and MT-blue topologies.
- the MT-default path to the destination node A is S-A
- the MT-blue path is also S-A
- the MT-red path is S-C-B-A.
- the entries established by the nodes in the MRT Island for the node-level prefixes in the MRT Island are completely similar to the entries established for the prefix D-loopback0 in the step S301 of the first embodiment, and the destination IP matches the corresponding node-level prefix in the MRT Island.
- the forwarding behavior of the traffic is also completely similar to steps S302-305, and will not be described again.
- Step S403 On the S node, the MT-default next hop in the MT-default topology to the prefix D-loopback0 is C (assuming that the ABR1 in the area1 is the advertised node of the prefix D-loopback0, the MT to the destination node ABR1 is used. The default path to determine the next hop).
- the remote node selected by the Tunnel Endpoint Selection method (refer to RFC7812) is A, assuming S is the GADAG root in MRT Island, and S ⁇ A ⁇ B ⁇ C ⁇ S, then The MRT-blue path to node A is SA, which can be used to protect the MT-default next hop C above.
- Assume (MT-default, D-loopback0) prefix-sid is default_SID0_D.
- the next hop is C, and the outgoing label is SRGB_C[default_SID0_D]
- Top-level tag is SRGB_S[blue_SID0_A]
- the underlying label is SRGB_A[default_SID0_D]
- the entry tag is SRGB_S[default_SID0_D]
- the next hop is C, and the outgoing label is SRGB_C[default_SID0_D]
- Top-level tag is SRGB_S[blue_SID0_A]
- the underlying label is SRGB_A[default_SID0_D]
- the entry tag is SRGB_S[blue_SID0_A]
- NHLFE The next hop is A, and the outgoing label is SRGB_A[blue_SID0_A]
- a node A node:
- the entry tag is SRGB_A[blue_SID0_A]
- NHLFE None. Indicates that the SR-LSP has been terminated.
- the entry tag is SRGB_A[default_SID0_D]
- NHLFE The next hop is ABR3, and the outgoing label is SRGB_ABR3[default_SID0_D]
- the entry tag is SRGB_ABR3[default_SID0_D]
- NHLFE The next hop is ABR2, and the outgoing label is SRGB_ABR2[default_SID0_D]
- the entry tag is SRGB_ABR2[default_SID0_D]
- NHLFE The next hop is D, and the outgoing label is SRGB_D[default_SID0_D]
- the entry tag is SRGB_D[default_SID0_D]
- NHLFE None. Indicates that the SR-LSP has been terminated.
- Step S404 For the packet sent to the destination D-loopback0, when the link S-C fails, the S node will switch the traffic as the MRT ingress node to the remotely prepared to the far end.
- the MRT-blue path of the MRT Egress node A begins to forward the message along the MT-blue path S-A.
- the S receives the MT-default SR tag packet, it is forwarded based on the ILM for (MT-default, D-loopback0) entry, and the inbound tag SRGB_S[default_SID0_D] is exchanged to the outbound tag SRGB_A[default_SID0_D].
- SRGB_A[blue_SID0_A] is sent to the next hop A.
- the S receives an IP packet, it is forwarded based on the FTN for (MT-default, D-loopback0) entry and is directly pressed on the IP header. After the label SRGB_A[default_SID0_D], press SRGB_A[blue_SID0_A] and send it to the next hop A.
- Step S405 after receiving the message, the node A bounces off the label SRGB_A[blue_SID0_A], and exchanges the lower layer label SRGB_A[default_SID0_D] into SRGB_ABR3[default_SID0_D] and sends it to the next hop ABR3.
- Step S406 after receiving the message, the ABR3 node exchanges the label SRGB_ABR3[default_SID0_D] into SRGB_ABR2[default_SID0_D] and sends it to the next hop ABR2.
- Step S407 after receiving the message, the ABR2 node exchanges the label SRGB_ABR2[default_SID0_D] into SRGB_D[default_SID0_D] and sends it to the next hop D.
- Step S408 After receiving the packet, the D node bounces off the label SRGB_D[default_SID0_D], and continues forwarding according to the IP header. Since the IP header is D-loopback0, the packet is sent to the control plane.
- FIG. 5 The network topology diagram of the third embodiment of the present invention, as shown in FIG. 5, runs OSPF in the network, and includes two areas, and all nodes enable segmentation routing function in the corresponding OSPF instance, where S and A in area1
- the B, C, and C enable the MRT profile defined in the embodiment of the present invention.
- the B, E, D, and F in the area 2 also enable the MRT profile defined in the embodiment of the present invention.
- S establishes the MRT path to the prefix of the destination node D as the source node, and then protects the SPF main path based on this MRT path. Including the following steps:
- step S501 the SR is enabled in the OSPF instance of all the nodes in area1 and area2. Each node is assigned SRGB.
- Step S502 After the MRT profiles defined in the embodiment of the present invention are enabled in the OSPF instance on the S, A, B, and C nodes in the area 1, they form an MRT Island in the area1.
- the MRT SR-LSP based on multi-prefix-sid tunneling option is used as the forwarding mechanism in the MRT profile.
- each node in the MRT Island additionally allocates the MT-red prefix-sid.
- the three prefix-sids assigned to the node-level prefix B-loopback0 can be respectively recorded as: (MT-default, B-loopback0) node-sid, (MT-red , B-loopback0) node-sid, (MT-blue, B-loopback0) node-sid.
- the MT-default topology in the area is obtained based on the SPF algorithm, and the MT-red and MT-blue topologies are obtained based on the MRT algorithm.
- the MT-default path to the destination node B is S-C-B
- the MT-red path is also S-C-B
- the MT-blue path is S-A-B.
- the entries established by the nodes in the MRT Island in the area1 for the node-level prefix in the MRT Island are completely similar to the entries established in the step S301 of the first embodiment for the prefix D-loopback0, and the destination IP matches the MRT Island.
- the forwarding behavior of the traffic of the corresponding node-level prefix is also completely similar to steps S302-305. No longer.
- step S503 the MRT profile defined in the embodiment of the present invention is also enabled in the OSPF instance on each of the nodes B, E, D, and F in area2, and then an MRT Island is formed in area2, and correspondingly generated in area2.
- the entries established by the nodes in the MRT Island in the area 2 for the node-level prefix in the MRT Island are completely similar to the entries established in the step S301 of the first embodiment for the prefix D-loopback 0, and the destination IP matches the corresponding in the MRT Island.
- the forwarding behavior of the traffic of the node-level prefix is also completely similar to steps S302-305. No longer.
- Step S504 On the S node, the MT-default next hop in the MT-default topology to the prefix D-loopback0 is C (assuming that the ABR1 in the area1 is the advertised node of the prefix D-loopback0, the MT to the destination node ABR1 is used. The default path to determine the next hop).
- the remote node selected by the Tunnel Endpoint Selection method (refer to RFC7812) is B, assuming S is the GADAG root in MRT Island, and S ⁇ A ⁇ B ⁇ C ⁇ S, then The MRT-blue path of Node B is SAB, which can be used to protect the MT-default next hop C above.
- prefix-sid is default_SID0_D.
- the next hop is C, and the outgoing label is SRGB_C[default_SID0_D]
- Top-level entry tag is SRGB_S[blue_SID0_B]
- the underlying label is SRGB_B[default_SID0_D]
- the entry tag is SRGB_S[default_SID0_D]
- the next hop is C, and the outgoing label is SRGB_C[default_SID0_D]
- Top-level entry tag is SRGB_S[blue_SID0_B]
- the underlying label is SRGB_B[default_SID0_D]
- the entry tag is SRGB_S[blue_SID0_B]
- NHLFE The next hop is A, and the outgoing label is SRGB_A[blue_SID0_B]
- a node A node:
- the entry tag is SRGB_A[blue_SID0_B]
- NHLFE The next hop is B, and the outgoing label is SRGB_B[blue_SID0_B]
- the entry tag is SRGB_B[blue_SID0_B]
- NHLFE None. Indicates that the SR-LSP has been terminated.
- the entry tag is SRGB_B[default_SID0_D]
- NHLFE The next hop is F, and the outgoing label is SRGB_F[default_SID0_D]
- the entry tag is SRGB_F[default_SID0_D]
- NHLFE The next hop is D, and the outgoing label is SRGB_D[default_SID0_D]
- the entry tag is SRGB_D[default_SID0_D]
- NHLFE None. Indicates that the SR-LSP has been terminated.
- Step S505 For the packet sent to the destination D-loopback0, when the link SC fails, the S node will switch the traffic as the MRT ingress node to the MRT-blue path prepared to the remote MRT Egress Node B in advance. , that is, the message is forwarded along the MT-blue path SAB.
- the S receives the MT-default SR tag packet, it is forwarded based on the ILM for (MT-default, D-loopback0) entry, and the inbound tag SRGB_S[default_SID0_D] is exchanged to the outbound tag SRGB_B[default_SID0_D].
- SRGB_A[blue_SID0_B] is sent to the next hop A.
- the S receives an IP packet, it is forwarded based on the FTN for (MT-default, D-loopback0) entry and is directly pressed on the IP header. After the label SRGB_B[default_SID0_D], press SRGB_A[blue_SID0_B] and send it to the next hop A.
- Step S506 after receiving the message, the node A exchanges the label SRGB_A[blue_SID0_B] into SRGB_B[blue_SID0_B] and sends it to the next hop B.
- Step S507 after receiving the message, the Node B bounces off the label SRGB_B[blue_SID0_B], and exchanges the label SRGB_B[default_SID0_D] into SRGB_F[default_SID0_D] and sends it to the next hop F.
- Step S508 after receiving the message, the F node exchanges the label SRGB_F[default_SID0_D] into SRGB_D[default_SID0_D] and sends it to the next hop D.
- Step S509 After receiving the packet, the D node bounces off the label SRGB_D[default_SID0_D], and continues to forward the packet based on the IP header. Since the IP header is D-loopback0, the packet is sent to the control plane.
- the method according to the above embodiment can be implemented by means of software plus a necessary general hardware platform, and of course, by hardware, but in many cases, the former is A better implementation.
- the technical solution of the present invention which is essential or contributes to the prior art, may be embodied in the form of a software product stored in a storage medium (such as ROM/RAM, disk,
- the optical disc includes a plurality of instructions for causing a terminal device (which may be a mobile phone, a computer, a server, or a network device, etc.) to perform various embodiments of the present invention. The method described.
- a message forwarding device is also provided, which is used to implement the foregoing embodiments and preferred embodiments, and has not been described again.
- the term "module” may implement a combination of software and/or hardware of a predetermined function.
- the apparatus described in the following embodiments is preferably implemented in software, hardware, or a combination of software and hardware, is also possible and contemplated.
- FIG. 6 is a structural block diagram of a message forwarding apparatus according to an embodiment of the present invention.
- the apparatus may be applied to a first node.
- the apparatus includes a receiving module 62, a searching module 64, and a forwarding module 66.
- the device includes a receiving module 62, a searching module 64, and a forwarding module 66.
- the receiving module 62 is configured to receive the packet to be forwarded, where the destination address of the packet is the second node, and the searching module 64 is connected to the receiving module 62, and is configured to search for the packet in the pre-generated topology.
- the pre-generated topology comprises: a first topology and a second topology generated according to a maximum redundancy tree MRT algorithm, and a third topology obtained according to a shortest path first SPF algorithm, the first topology and the first topology
- the second topology and the third topology are different from each other;
- the forwarding module 66 is connected to the foregoing searching module 64, configured to search for the next hop node for forwarding to the second node in the target topology, and to perform the foregoing according to a predetermined forwarding mechanism.
- the message is forwarded to the next hop node, wherein the predetermined forwarding mechanism adopts a segmented route forwarding mechanism based on the tunnel nesting manner of the prefix-sid per prefix per topology.
- FIG. 7 is a block diagram showing a preferred structure of a message forwarding device according to an embodiment of the present invention. As shown in FIG. 7 (FIG. 7 is only an example), the device includes a determining module in addition to all the modules shown in FIG. 6. 72, the device is described below:
- the determining module 72 is connected to the receiving module 62, and is configured to determine, according to the foregoing MRT algorithm, a route from the first topology to the destination address and a route from the second topology to the destination address, to protect the third topology to the destination address. Protecting the route of the route, and determining that the topology corresponding to the protection route is a protection topology; and/or determining the route from the first topology to the tunnel end point and the route from the second topology to the tunnel end point according to the color flag information.
- Protecting the protection route of the route to the destination address in the foregoing third topology, and determining the topology corresponding to the protection route is to protect The topology of the tunnel, wherein the tunnel end point is a remote node selected by the first node for the protection destination address, and the remote node is loop-free for the fault point, and the first node is used to the remote end when the fault occurs.
- the MRT tunnel of the node encapsulates the packet.
- the foregoing searching module 64 may search for a target topology corresponding to the foregoing packet in a pre-generated topology by determining whether a link for reaching the second node in the third topology is present. The fault is determined; in the case that it is determined that there is no fault, the third topology is determined to be the target topology; and/or, in the case that the fault is determined, the protection topology is determined to be the target topology.
- the packet when the link is faulty, the packet can be forwarded according to the default topology. After the link is faulty, the protection topology is used to forward the packet.
- the foregoing apparatus further includes a first processing module, configured to: before receiving the packet to be forwarded, generate a first topology and a second topology according to an MRT algorithm, and generate and generate according to an SPF algorithm.
- the third topology is configured to: before receiving the packet to be forwarded, generate a first topology and a second topology according to an MRT algorithm, and generate and generate according to an SPF algorithm. The third topology.
- the first processing module may generate the first topology and the second topology according to the foregoing MRT algorithm, and generate a third topology according to the SPF algorithm: determining the MRT where the first node is located. Island, where the MRT Island is enabled by the OSPF or ISIS instance at the first node and other nodes at the same domain area or level as the first node, and the maximum redundant tree profile MRT After the profile is formed by the first node and other nodes in the area or level where the first node is located; generating the first topology and the second topology based on the MRT Island running MRT algorithm, and running the SPF algorithm based on the above area or level Generate a third topology.
- the foregoing predetermined forwarding mechanism is specified in the MRT profile. That is, the segmented route forwarding mechanism based on the tunnel nesting manner of the prefix-sid per prefix per topology is adopted.
- the apparatus further includes a second processing module, configured to perform at least one of: assigning a first prefix-sid to the first topology for a node-level prefix local to the first node, and The first prefix-sid is at the domain or level of the MRT Island.
- the local node-level and non-node-level prefix allocates a third prefix-sid for the third topology, and floods the third prefix-sid in all domain areas or levels of the first node; receiving the above on other nodes
- the prefix-sid of the pre-generated topology records the prefix-sid of the pre-generated topology on the other node and continues to advertise the prefix-sid of the pre-generated topology on the other node to nodes other than the other nodes.
- the first prefix-sid, the second prefix-sid, and the third prefix-sid are independent of each other.
- the forwarding module 66 may forward the packet to the next hop node by: determining an outgoing label of the first node that matches the packet; and using the outgoing label of the first node.
- the packet is encapsulated into the foregoing packet, and the encapsulated packet is sent to the next hop node.
- the label encapsulation manner is different for different types of packets.
- the forwarding module 66 may determine, according to the following manner, an outgoing label of the first node that matches the packet: when the target topology is the third topology, the corresponding target topology of the first node is The label is calculated by the first node based on the third prefix index prefix-sid of the destination prefix prefix corresponding to the destination address and the SRGB of the next hop node.
- the forwarding module 66 may determine, according to the manner, the outgoing label of the first node that matches the foregoing packet: when the target topology is the first topology or the second topology: if the second node is When the node in the MRT Island is the node prefix prefix of the second node, the first node determines the outbound label of the first node corresponding to the target topology by: The outbound label of the corresponding target topology is calculated by the first node based on the prefix index prefix-sid of the corresponding target topology of the node-level prefix prefix of the second node and the SRGB of the next hop node; if the second node is not the MRT Island When the destination prefix corresponding to the node or the destination address is the non-node level prefix of the second node, the first node determines whether the next hop node is a node other than the MRT Island; when the judgment result is no, the first node Determining an outbound
- the forwarding module 66 may encapsulate the outgoing label of the first node into the packet by using at least one of the following manners: when the packet type of the packet is an Internet Protocol IP packet, The outbound label of the first node is pressed on the IP header of the IP packet; when the packet type of the packet is a fragmented route SR label, the top label of the label stack of the SR label is replaced. The outgoing label of the first node.
- the forwarding module 66 may determine the outgoing label of the first node by: when the first node and the second node are the same node, the first node is determined according to the target topology.
- the one-hop node is the first node, and the first node does not have a label.
- the foregoing apparatus further includes a third processing module, configured to: when the first node and the second node are the same node, perform the following operations: when the packet type of the packet is an Internet Protocol IP address When the packet is sent, the first node sends the packet to the control plane of the first node; and/or, when the packet type of the packet is a fragmented route SR label packet, the first node sends the SR label.
- the stack top label of the label stack of the message pops up, and continues to be forwarded based on the lower layer label or IP header lookup table of the label stack of the above message.
- each of the above modules may be implemented by software or hardware.
- the foregoing may be implemented by, but not limited to, the foregoing modules are all located in the same processor; or, the above modules are in any combination.
- the forms are located in different processors.
- Embodiments of the present invention also provide a storage medium.
- the storage medium may be arranged to store program code for performing the steps described above.
- the foregoing storage medium may include, but is not limited to, a USB flash drive, a Read-Only Memory (ROM), and a Random Access Memory (RAM).
- ROM Read-Only Memory
- RAM Random Access Memory
- the processor performs the above steps according to the stored program code in the storage medium.
- the method in the embodiment of the present invention can fill the gap between the segmentation route and the MRT technology in the related technology, and provides a valuable exploration for the evolution of the future network.
- modules or steps of the present invention described above can be implemented by a general-purpose computing device that can be centralized on a single computing device or distributed across a network of multiple computing devices. Alternatively, they may be implemented by program code executable by the computing device such that they may be stored in the storage device by the computing device and, in some cases, may be different from the order herein.
- the steps shown or described are performed, or they are separately fabricated into individual integrated circuit modules, or a plurality of modules or steps thereof are fabricated as a single integrated circuit module.
- the invention is not limited to any specific combination of hardware and software.
- the packet forwarding method and apparatus have the following beneficial effects: the MRT function is introduced in the segment routing network, thereby implementing the segment routing network and The purpose of combining MTR functions.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
Description
本发明涉及通信领域,具体而言,涉及一种报文转发方法及装置。The present invention relates to the field of communications, and in particular to a packet forwarding method and apparatus.
最大冗余树(Maximally Redundant Trees,简称为MRT)快速重路由(Fast Re-Route,简称为FRR)是一种较新的FRR技术,该技术中使用两个最大限度不同的转发拓扑,对单点的链路或节点故障能提供100%的保护。MRT架构定义了两种转发机制,即标签分发协议(Label Distribution Protocol,简称为LDP)转发机制和网络协议-隧道(IP-tunnel)转发机制。LDP转发机制通过不同的标签来区分是默认拓扑转发行为还是MRT转发行为,使得转发平面不作任何升级即可支持MRT-FRR。IP-tunnel转发机制则需要浪费专用的MRT loopback地址来支持转发,同样也使得转发平面不作任何升级即可支持MRT-FRR。相比而言,LDP转发机制更加合理,所以MRT架构的默认最大冗余树配置文件default MRT Profile中采用的就是LDP转发机制,目前尚未定义其它MRT Profiles。Maximum Redundant Trees (MRT) Fast Re-Route (FRR) is a newer FRR technology that uses two different forwarding topologies. Point link or node failure provides 100% protection. The MRT architecture defines two forwarding mechanisms, namely, the Label Distribution Protocol (LDP) forwarding mechanism and the network protocol-tunnel (IP-tunnel) forwarding mechanism. The LDP forwarding mechanism distinguishes between the default topology forwarding behavior and the MRT forwarding behavior through different labels, so that the forwarding plane can support MRT-FRR without any upgrade. The IP-tunnel forwarding mechanism needs to waste the dedicated MRT loopback address to support forwarding. It also enables the forwarding plane to support MRT-FRR without any upgrade. In contrast, the LDP forwarding mechanism is more reasonable. Therefore, the default maximum redundancy tree configuration file of the MRT architecture uses the LDP forwarding mechanism in the default MRT profile. Currently, other MRT profiles are not defined.
分段路由技术将使得一个节点可以为报文指定其转发路径,而不是按一般的最短路径转发,通过在报文中附加由段标识Segment ID组成的段列表Segment List相关的信息,不需要在中间节点上为维护每路径的状态信息。分段路由主要扩展IGP以支持通告和学习Segment ID。一般在部署了分段路由的网络中,就不再需要部署LDP与基于流量工程扩展的资源预留协议(Resource ReSerVation Protocol-Traffic Extension,简称为RSVP-TE)了。在分段路由网络中,已知的FRR技术有拓扑无关的无环替换路径(Topology Independent Loop Free Alternate,简称为TI-LFA),但是TI-LFA定义的保护规则十分复杂并且还不成熟。The segmentation routing technology will enable a node to specify its forwarding path for the message instead of forwarding it according to the general shortest path. By adding the segment list information related to the segment ID segment ID to the message, it is not required. The status information of each path is maintained on the intermediate node. Segmented routing primarily extends the IGP to support advertising and learning segment IDs. Generally, in the network where the segmentation route is deployed, the LDP and the Resource ReSerVation Protocol-Traffic Extension (RSVP-TE) are no longer needed. In the segmented routing network, the known FRR technology has a Topology Independent Loop Free Alternate (TI-LFA), but the protection rules defined by TI-LFA are very complicated and immature.
在分段路由网络中引入MRT功能将有重要的意义,但是,迄今为止尚未有文献讨论这方面的内容,因此,在相关技术中,无法实现分段路由 网络与MTR功能结合。The introduction of MRT functionality in a segmented routing network will be of great significance, but there has been no literature discussing this aspect so far, so in the related art, segmentation routing cannot be implemented. The network is combined with the MTR function.
发明内容Summary of the invention
本发明实施例提供了一种报文转发方法及装置,以至少解决相关技术中存在的无法实现分段路由网络与MTR功能结合的问题。The embodiment of the invention provides a packet forwarding method and device, so as to solve at least the problem that the segment routing network and the MTR function cannot be combined in the related art.
根据本发明的一个实施例,提供了一种报文转发方法,包括:第一节点接收待转发的报文,其中,所述报文的目的地址为第二节点;所述第一节点在预先生成的拓扑中查找与所述报文对应的目标拓扑,其中,所述预先生成的拓扑包括:根据最大冗余树MRT算法生成得到的第一拓扑和第二拓扑,根据最短路径优先SPF算法得到的第三拓扑,所述第一拓扑和所述第二拓扑以及所述第三拓扑彼此各不相同;所述第一节点在所述目标拓扑中查找用于转发到所述第二节点的下一跳节点,并基于预定转发机制将所述报文转发到所述下一跳节点,其中,所述预定转发机制采用基于每拓扑每前缀索引prefix-sid的隧道嵌套方式的分段路由转发机制。According to an embodiment of the present invention, a packet forwarding method is provided, including: a first node receives a packet to be forwarded, where a destination address of the packet is a second node; and the first node is in advance Searching for a target topology corresponding to the packet in the generated topology, where the pre-generated topology includes: a first topology and a second topology generated according to a maximum redundancy tree MRT algorithm, and obtained according to a shortest path first SPF algorithm a third topology, the first topology and the second topology and the third topology are different from each other; the first node looks up in the target topology for forwarding to the second node a hop node, and forwarding the message to the next hop node based on a predetermined forwarding mechanism, wherein the predetermined forwarding mechanism adopts a segmented route forwarding based on a tunnel nesting manner of each prefix per prefix per prefix mechanism.
可选地,所述方法还包括:所述第一节点按照所述MRT算法从所述第一拓扑中至所述目的地址的路由和所述第二拓扑中至所述目的地址的路由中确定用于保护所述第三拓扑中至所述目的地址的路由的保护路由,并确定所述保护路由对应的拓扑为保护拓扑;和/或,所述第一节点按照颜色标志信息从所述第一拓扑中至隧道终点的路由和所述第二拓扑中至隧道终点的路由中确定用于保护所述第三拓扑中至所述目的地址的路由的保护路由,并确定所述保护路由对应的拓扑为保护拓扑,其中,所述隧道终点为所述第一节点为保护目的地址而选择的一个远端节点,所述远端节点针对故障点是无回路loop-free的,当故障发生时所述第一节点使用至所述远端节点的MRT隧道封装报文。Optionally, the method further includes: determining, by the first node, a route from the first topology to the destination address and a route from the second topology to the destination address according to the MRT algorithm a protection route for protecting a route to the destination address in the third topology, and determining that a topology corresponding to the protection route is a protection topology; and/or, the first node according to the color flag information from the Determining a protection route for protecting a route to the destination address in the third topology from a route to a tunnel end point in a topology and a route to a tunnel end point in the second topology, and determining a corresponding path of the protection route The topology is a protection topology, where the tunnel endpoint is a remote node selected by the first node for the protection destination address, and the remote node is loop-free for the fault point, when the fault occurs. The first node uses the MRT tunnel encapsulation message to the remote node.
可选地,所述第一节点在预先生成的拓扑中查找与所述报文对应的目标拓扑包括:所述第一节点判断所述第三拓扑中的用于到达所述第二节点的链路是否出现故障;在判断出没有出现故障的情况下,所述第一节点确定所述第三拓扑为所述目标拓扑;和/或,在判断出出现故障的情况下,所 述第一节点确定所述保护拓扑为所述目标拓扑。Optionally, the searching, by the first node, the target topology corresponding to the packet in the pre-generated topology includes: determining, by the first node, a chain in the third topology for reaching the second node Whether the road has a fault; in the case that it is determined that there is no fault, the first node determines that the third topology is the target topology; and/or, in the event that a fault is determined, The first node determines that the protection topology is the target topology.
可选地,所述第一节点在接收待转发的所述报文之前,所述方法还包括:所述第一节点根据所述MRT算法生成得到所述第一拓扑和第二拓扑,以及根据所述SPF算法生成得到所述第三拓扑。Optionally, before the receiving, by the first node, the packet to be forwarded, the method further includes: the first node generating, according to the MRT algorithm, the first topology and the second topology, and according to The SPF algorithm generates the third topology.
可选地,所述第一节点根据所述MRT算法生成得到所述第一拓扑和第二拓扑,以及根据所述SPF算法生成得到所述第三拓扑包括:所述第一节点确定所述第一节点所在的MRT Island,其中,所述MRT Island是通过在所述第一节点以及与所述第一节点处于同一域area或同一层次level的其他节点上的开放最短路径优先OSPF或者中间系统到中间系统ISIS实例下使能分段路由SR以及最大冗余树配置文件MRT profile后在所述第一节点所在的area或level内由所述第一节点和所述其他节点相互协商形成的;所述第一节点基于所述MRT Island运行所述MRT算法生成所述第一拓扑和所述第二拓扑,以及,基于所述area或level运行所述SPF算法生成所述第三拓扑。Optionally, the first node generates the first topology and the second topology according to the MRT algorithm, and the third topology is generated according to the SPF algorithm, where the first node determines the An MRT Island where a node is located, wherein the MRT Island is an open shortest path first OSPF or intermediate system on the first node and other nodes in the same domain area or the same level as the first node After the segmentation route SR and the maximum redundancy tree profile MRT profile are enabled in the intermediate system ISIS instance, the first node and the other nodes negotiate with each other in the area or level where the first node is located; The first node generates the first topology and the second topology based on the MRT Island running the MRT algorithm, and the third topology is generated by running the SPF algorithm based on the area or level.
可选地,所述MRT profile中指定采用所述预定转发机制。Optionally, the predetermined forwarding mechanism is specified in the MRT profile.
可选地,所述方法还包括以下至少之一:所述第一节点为所述第一节点本地的节点级prefix针对所述第一拓扑分配第一prefix-sid,并将所述第一prefix-sid在所述MRT Island所在的域area或层次level内泛洪;所述第一节点为所述第一节点本地的节点级prefix针对所述第二拓扑分配第二prefix-sid,并将所述第二prefix-sid在所述MRT Island所在的域area或层次level内泛洪;所述第一节点为所述第一节点本地的节点级和非节点级prefix针对所述第三拓扑分配第三prefix-sid,并将所述第三prefix-sid在所述第一节点所在的所有域area或层次level内泛洪;所述第一节点接收其他节点上的所述预先生成的拓扑的prefix-sid,记录所述其他节点上的所述预先生成的拓扑的prefix-sid以及将所述其他节点上的所述预先生成的拓扑的prefix-sid继续通告给除所述其他节点之外的节点。Optionally, the method further includes at least one of: the first node assigns a first prefix-sid to the first topology for a node-level prefix local to the first node, and the first prefix -sid flooding in the domain area or level of the MRT Island; the first node is a node-level prefix local to the first node, and assigns a second prefix-sid to the second topology, and The second prefix-sid is flooded in a domain area or a hierarchy level in which the MRT Island is located; the first node is a node-level and a non-node-level prefix local to the first node, and the third topology is allocated to the third topology. a third prefix-sid, and flooding the third prefix-sid in all domain or hierarchy levels in which the first node is located; the first node receiving a prefix of the pre-generated topology on other nodes -sid, recording a prefix-sid of the pre-generated topology on the other node and continuing to advertise a prefix-sid of the pre-generated topology on the other node to a node other than the other node .
可选地,所述第一节点将所述报文转发到所述下一跳节点包括:所述 第一节点确定与所述报文匹配的所述第一节点的出标签;所述第一节点将所述第一节点的出标签封装到所述报文上,并将封装后的报文发送到所述下一跳节点。Optionally, the forwarding, by the first node, the packet to the next hop node includes: Determining, by the first node, an outgoing label of the first node that matches the packet; the first node encapsulating the outgoing label of the first node into the packet, and sending the encapsulated packet Go to the next hop node.
可选地,所述第一节点确定与所述报文匹配的所述第一节点的出标签包括:当所述目标拓扑为所述第三拓扑时,所述第一节点的对应所述目标拓扑的出标签由所述第一节点基于目的地址对应的目的前缀prefix的第三前缀索引prefix-sid与所述下一跳节点的SRGB计算得到的。Optionally, the determining, by the first node, the outbound label of the first node that matches the packet includes: when the target topology is the third topology, the first node corresponding to the target The outbound label of the topology is calculated by the first node based on the third prefix index prefix-sid of the destination prefix prefix corresponding to the destination address and the SRGB of the next hop node.
可选地,所述第一节点确定与所述报文匹配的所述第一节点的出标签包括:当所述目标拓扑为所述第一拓扑或所述第二拓扑时:若所述第二节点为所述MRT Island内的节点并且所述目的地址对应的目的前缀prefix为所述第二节点的节点级前缀prefix时,所述第一节点通过如下方式确定所述第一节点的对应所述目标拓扑的出标签:所述第一节点的对应所述目标拓扑的出标签由所述第一节点基于所述第二节点的节点级前缀prefix的对应所述目标拓扑的前缀索引prefix-sid与所述下一跳节点的SRGB计算得到;若所述第二节点不为所述MRT Island内的节点或者所述目的地址对应的目的前缀prefix为所述第二节点的非节点级前缀prefix时,所述第一节点判断所述下一跳节点是否为所述MRT Island外的节点;在判断结果为否时,所述第一节点通过如下方式确定所述第一节点的对应所述目标拓扑的出标签:所述第一节点的对应所述目标拓扑的出标签为标签栈,外层标签为所述第一节点至隧道终点的标签,内层标签为所述隧道终点至所述目的前缀prefix的标签;其中,所述外层标签由所述第一节点基于所述隧道终点的节点级前缀prefix的对应所述目标拓扑的前缀索引prefix-sid与所述目标拓扑内至所述隧道终点的下一跳节点的SRGB计算得到,所述内层标签由所述第一节点基于所述目的前缀prefix的对应所述第三拓扑的前缀索引prefix-sid与所述隧道终点的SRGB计算得到;在判断结果为是时,所述第一节点通过如下方式确定所述第一节点的对应所述目标拓扑的出标签:所述第一节点的对应所述目标拓扑的出标签由所述第一节点基于所述目的前缀prefix的对应所述第三拓扑的前缀索引prefix-sid与所述下一跳节 点的SRGB计算得到的。Optionally, the determining, by the first node, the outbound label of the first node that matches the packet includes: when the target topology is the first topology or the second topology: When the two nodes are the nodes in the MRT Island and the destination prefix prefix corresponding to the destination address is the node-level prefix prefix of the second node, the first node determines the corresponding location of the first node by: An outbound label of the target topology: an outbound label of the first node corresponding to the target topology is prefixed by the first node based on a prefix index of the node level prefix prefix of the second node corresponding to the target topology SRGB calculation with the next hop node; if the second node is not the node in the MRT Island or the destination prefix prefix corresponding to the destination address is the non-node level prefix of the second node The first node determines whether the next hop node is a node outside the MRT Island; when the determination result is no, the first node determines the corresponding state of the first node by: An outgoing label of the topological topology: the outgoing label of the first node corresponding to the target topology is a label stack, the outer label is a label of the first node to the tunnel end point, and the inner layer label is the tunnel end point to the a label of the destination prefix prefix; wherein the outer label is referenced by the first node based on a node-level prefix prefix of the tunnel destination, a prefix index prefix corresponding to the target topology, and the target topology to the SRGB calculation of the next hop node of the tunnel end point, the inner layer label is calculated by the first node based on the prefix index prefix-sid of the third topology and the SRGB of the tunnel end point based on the destination prefix prefix Obtaining; when the determination result is yes, the first node determines an outbound label of the first node corresponding to the target topology by: the outbound label of the first node corresponding to the target topology is Determining, by the first node, a prefix index prefix-sid corresponding to the third topology and the next hop by the destination prefix prefix The point is calculated by SRGB.
可选地,所述第一节点将所述第一节点的出标签封装到所述报文上包括以下至少之一:当所述报文的报文类型为互联网协议IP报文时,在所述IP报文的IP头上压上所述第一节点的出标签;当所述报文的报文类型为分段路由SR标签报文时,将所述SR标签报文的标签栈的栈顶标签替换成所述第一节点的出标签。Optionally, the first node encapsulates the outgoing label of the first node into the packet, and includes at least one of the following: when the packet type of the packet is an Internet Protocol IP packet, The outbound label of the first node is pressed on the IP header of the IP packet; when the packet type of the packet is a fragmented route SR label packet, the stack of the label stack of the SR label packet is used. The top tag is replaced with the outgoing tag of the first node.
可选地,所述第一节点确定所述第一节点的出标签包括:当所述第一节点和所述第二节点为同一节点时,则所述第一节点基于所述目标拓扑确定的所述下一跳节点为所述第一节点,所述第一节点没有出标签。Optionally, the determining, by the first node, the outgoing label of the first node includes: when the first node and the second node are the same node, the first node is determined based on the target topology. The next hop node is the first node, and the first node does not have a label.
可选地,所述方法还包括:当所述第一节点和所述第二节点为同一节点时,包括:当所述报文的报文类型为互联网协议IP报文时,所述第一节点将所述报文上送至所述第一节点的控制平面;和/或,当所述报文的报文类型为分段路由SR标签报文时,所述第一节点将所述SR标签报文的标签栈的栈顶标签弹出,并继续基于所述报文的标签栈的下层标签或IP头查表转发。Optionally, the method further includes: when the first node and the second node are the same node, the method includes: when the packet type of the packet is an Internet Protocol IP packet, the first Sending, by the node, the packet to the control plane of the first node; and/or, when the packet type of the packet is a fragmented route SR label packet, the first node sends the SR The stack top label of the label stack of the label message pops up, and continues to be forwarded based on the lower layer label or IP header lookup table of the label stack of the message.
根据本发明的另一个实施例,还提供了一种报文转发装置,所述装置应用于第一节点中,包括:接收模块,设置为接收待转发的报文,其中,所述报文的目的地址为第二节点;查找模块,设置为在预先生成的拓扑中查找与所述报文对应的目标拓扑,其中,所述预先生成的拓扑包括:根据最大冗余树MRT算法生成得到的第一拓扑和第二拓扑,根据最短路径优先SPF算法得到的第三拓扑,所述第一拓扑和所述第二拓扑以及所述第三拓扑彼此各不相同;转发模块,设置为在所述目标拓扑中查找用于转发到所述第二节点的下一跳节点,并基于预定转发机制将所述报文转发到所述下一跳节点,其中,所述预定转发机制采用基于每拓扑每前缀索引prefix-sid的隧道嵌套方式的分段路由转发机制。According to another embodiment of the present invention, a message forwarding device is further provided, where the device is applied to a first node, and includes: a receiving module, configured to receive a packet to be forwarded, where the packet is The destination address is a second node, and the search module is configured to search for a target topology corresponding to the packet in a pre-generated topology, where the pre-generated topology includes: a first generated according to a maximum redundancy tree MRT algorithm. a topology and a second topology, according to a third topology obtained by the shortest path first SPF algorithm, the first topology and the second topology and the third topology are different from each other; a forwarding module configured to be at the target Finding, in the topology, a next hop node for forwarding to the second node, and forwarding the packet to the next hop node based on a predetermined forwarding mechanism, where the predetermined forwarding mechanism adopts per prefix based on each topology The segmentation route forwarding mechanism of the tunnel nesting mode of the index prefix-sid.
可选地,所述装置还包括:确定模块,设置为按照所述MRT算法从所述第一拓扑中至所述目的地址的路由和所述第二拓扑中至所述目的地 址的路由中确定用于保护所述第三拓扑中至所述目的地址的路由的保护路由,并确定所述保护路由对应的拓扑为保护拓扑;和/或,按照颜色标志信息从所述第一拓扑中至隧道终点的路由和所述第二拓扑中至隧道终点的路由中确定用于保护所述第三拓扑中至所述目的地址的路由的保护路由,并确定所述保护路由对应的拓扑为保护拓扑,其中,所述隧道终点为所述第一节点为保护目的地址而选择的一个远端节点,所述远端节点针对故障点是无回路loop-free的,当故障发生时所述第一节点使用至所述远端节点的MRT隧道封装报文。Optionally, the apparatus further includes: a determining module, configured to follow a route from the first topology to the destination address and the second topology to the destination according to the MRT algorithm Determining, in the routing of the address, a protection route for protecting a route to the destination address in the third topology, and determining that the topology corresponding to the protection route is a protection topology; and/or, according to the color flag information, from the Determining a protection route for protecting a route to the destination address in the third topology from a route to a tunnel end point in a topology and a route to a tunnel end point in the second topology, and determining a corresponding path of the protection route The topology is a protection topology, where the tunnel endpoint is a remote node selected by the first node for the protection destination address, and the remote node is loop-free for the fault point, when the fault occurs. The first node uses the MRT tunnel encapsulation message to the remote node.
根据本发明的又一个实施例,还提供了一种存储介质。该存储介质设置为存储用于执行上述步骤的程序代码。According to still another embodiment of the present invention, a storage medium is also provided. The storage medium is arranged to store program code for performing the above steps.
通过本发明,在分段路由网络中引入MRT功能,从而实现了分段路由网络与MTR功能结合的目的。Through the invention, the MRT function is introduced in the segment routing network, thereby achieving the purpose of combining the segment routing network with the MTR function.
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:The drawings described herein are intended to provide a further understanding of the invention, and are intended to be a part of the invention. In the drawing:
图1是根据本发明实施例的报文转发方法的流程图;1 is a flowchart of a packet forwarding method according to an embodiment of the present invention;
图2是根据本发明具体实施方式的MRT Profile示意图;2 is a schematic diagram of an MRT Profile according to an embodiment of the present invention;
图3是根据本发明具体实施例一的网络拓扑图;3 is a network topology diagram according to a specific embodiment of the present invention;
图4是根据本发明具体实施例二的网络拓扑图;4 is a network topology diagram according to a second embodiment of the present invention;
图5是根据本发明具体实施例三的网络拓扑图;FIG. 5 is a network topology diagram according to a third embodiment of the present invention; FIG.
图6是根据本发明实施例的报文转发装置的结构框图;FIG. 6 is a structural block diagram of a message forwarding apparatus according to an embodiment of the present invention; FIG.
图7是根据本发明实施例的报文转发装置的优选结构框图。FIG. 7 is a block diagram showing a preferred structure of a message forwarding apparatus according to an embodiment of the present invention.
下文中将参考附图并结合实施例来详细说明本发明。需要说明的是, 在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。The invention will be described in detail below with reference to the drawings in conjunction with the embodiments. It should be noted, The embodiments in the present application and the features in the embodiments may be combined with each other without conflict.
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。It is to be understood that the terms "first", "second" and the like in the specification and claims of the present invention are used to distinguish similar objects, and are not necessarily used to describe a particular order or order.
在本实施例中提供了一种报文转发方法,图1是根据本发明实施例的报文转发方法的流程图,如图1所示,该流程包括如下步骤:In this embodiment, a packet forwarding method is provided. FIG. 1 is a flowchart of a packet forwarding method according to an embodiment of the present invention. As shown in FIG. 1, the process includes the following steps:
步骤S102,第一节点接收待转发的报文,其中,该报文的目的地址为第二节点;Step S102, the first node receives the packet to be forwarded, where the destination address of the packet is the second node;
步骤S104,上述第一节点在预先生成的拓扑中查找与上述报文对应的目标拓扑,其中,该预先生成的拓扑包括:根据最大冗余树MRT算法生成得到的第一拓扑和第二拓扑,根据最短路径优先(Shortest Path First,简称为SPF)算法得到的第三拓扑,该第一拓扑和第二拓扑以及第三拓扑彼此各不相同;Step S104: The first node searches for a target topology corresponding to the foregoing packet in a pre-generated topology, where the pre-generated topology includes: a first topology and a second topology generated according to a maximum redundancy tree MRT algorithm, According to a third topology obtained by a Shortest Path First (SPF) algorithm, the first topology and the second topology and the third topology are different from each other;
步骤S106,上述第一节点在上述目标拓扑中查找用于转发到上述第二节点的下一跳节点,并基于预定转发机制将报文转发到上述下一跳节点,其中,该预定转发机制采用基于每拓扑每前缀索引prefix-sid的隧道嵌套方式的分段路由转发机制。Step S106, the first node searches for a next hop node for forwarding to the second node in the target topology, and forwards the packet to the next hop node according to a predetermined forwarding mechanism, where the predetermined forwarding mechanism is adopted. A segmented route forwarding mechanism based on the tunnel nesting manner of prefix-sid per prefix per topology.
其中,上述的第一节点可以是MRT Island内的任何节点,上述第二节点可以是SR Domain内的任何节点,该第二节点可能处于所述MRT Island内或MRT Island外。上述的第一拓扑和第二拓扑可以一个是MRT-red拓扑,一个是MRT-blue拓扑;上述的第三拓扑可以是MT-default拓扑。The first node may be any node in the MRT Island, and the second node may be any node in the SR Domain, and the second node may be in the MRT Island or outside the MRT Island. One of the first topology and the second topology may be an MRT-red topology, and one is an MRT-blue topology; and the third topology may be an MT-default topology.
在上述实施例中,第一节点在将报文转发到下一跳节点时,可以基于预定转发机制进行转发,该预定转发机制为基于每拓扑每分段路由全局块SRGB的隧道嵌套方式的分段路由转发机制。In the foregoing embodiment, when the first node forwards the packet to the next hop node, the first node may perform forwarding according to a predetermined forwarding mechanism, which is a tunnel nesting manner based on the per-segment per-segment routing global block SRGB. Segmented route forwarding mechanism.
通过上述步骤,在分段路由网络中引入MRT功能,从而实现了分段路由网络与MTR功能结合的目的。Through the above steps, the MRT function is introduced in the segment routing network, thereby achieving the purpose of combining the segment routing network with the MTR function.
在一个可选的实施例中,上述方法还包括(可以在接收待转发的报文 之前执行本实施例中的步骤):上述第一节点按照MRT算法从第一拓扑中至目的地址的路由和第二拓扑中至目的地址的路由中确定用于保护上述第三拓扑中至目的地址的路由的保护路由,并确定上述保护路由对应的拓扑为保护拓扑;和/或,上述第一节点按照颜色标志信息从第一拓扑中至隧道终点的路由和第二拓扑中至隧道终点的路由中确定用于保护第三拓扑中至目的地址的路由的保护路由,并确定上述保护路由对应的拓扑为保护拓扑,其中,该隧道终点为第一节点为保护目的地址而选择的一个远端节点,远端节点针对故障点是无回路loop-free的,当故障发生时上述第一节点使用至远端节点的MRT隧道封装报文。在本实施例中,在确定保护拓扑时,可以确定第一拓扑为保护拓扑,也可以确定第二拓扑为保护拓扑,具体选择哪个拓扑作为保护拓扑需要根据实际情况进行确定。In an optional embodiment, the foregoing method further includes: (can receive the message to be forwarded The foregoing step is performed in the embodiment: the first node determines, according to the MRT algorithm, the route from the first topology to the destination address and the route from the second topology to the destination address to protect the third topology to the destination address. Protecting the route of the route, and determining that the topology corresponding to the protection route is a protection topology; and/or, the first node according to the color flag information from the first topology to the tunnel end point and the route from the second topology to the tunnel end point Determining a protection route for protecting a route to a destination address in the third topology, and determining that the topology corresponding to the protection route is a protection topology, wherein the tunnel end point is a remote node selected by the first node as a protection destination address The remote node is loop-free for the fault point. When the fault occurs, the first node uses the MRT tunnel to the remote node to encapsulate the packet. In this embodiment, when determining the protection topology, the first topology may be determined as the protection topology, and the second topology may be determined as the protection topology. The specific topology selected as the protection topology needs to be determined according to actual conditions.
在一个可选的实施例中,上述第一节点在预先生成的拓扑中查找与上述报文对应的目标拓扑包括:上述第一节点判断第三拓扑中的用于到达第二节点的链路是否出现故障;在判断出没有出现故障的情况下,第一节点确定上述第三拓扑为目标拓扑;和/或,在判断出出现故障的情况下,上述第一节点确定保护拓扑为目标拓扑。在本实施例中,当链路没有故障时,可以继续按照默认的拓扑进行报文转发,当链路出现故障后,需要使用保护拓扑进行报文转发。In an optional embodiment, the searching, by the first node, the target topology corresponding to the foregoing packet in the pre-generated topology includes: determining, by the first node, whether the link used to reach the second node in the third topology is A fault occurs; the first node determines that the third topology is the target topology in the case that it is determined that there is no fault; and/or, in the case that the fault is determined, the first node determines that the protection topology is the target topology. In this embodiment, when the link is faulty, the packet can be forwarded according to the default topology. After the link is faulty, the protection topology is used to forward the packet.
在一个可选的实施例中,上述第一节点在接收待转发的所述报文之前,上述方法还包括:第一节点根据MRT算法生成得到第一拓扑和第二拓扑,以及根据SPF算法生成得到第三拓扑。In an optional embodiment, before the receiving, by the first node, the packet to be forwarded, the method further includes: the first node generates the first topology and the second topology according to the MRT algorithm, and generates according to the SPF algorithm. Get the third topology.
在一个可选的实施例中,上述第一节点根据上述MRT算法生成得到第一拓扑和第二拓扑,以及根据SPF算法生成得到第三拓扑包括:第一节点确定上述第一节点所在的MRT Island,其中,该MRT Island是通过在第一节点以及与第一节点处于同一域area或同一层次level的其他节点上的开放最短路径优先(Open shortest Path First,简称为OSPF)或者中间系统到中间系统(Intermediate system to Intermediate system,简称为ISIS)实例下使能分段路由SR以及最大冗余树配置文件MRT profile后在第一节 点所在的area或level内由第一节点和其他节点相互协商形成的;该第一节点基于上述MRT Island运行MRT算法生成第一拓扑和第二拓扑,以及,基于上述area或level运行SPF算法生成第三拓扑。In an optional embodiment, the first node generates the first topology and the second topology according to the foregoing MRT algorithm, and generates the third topology according to the SPF algorithm, where the first node determines the MRT Island where the first node is located. The MRT Island is an Open Shortest Path First (OSPF) or intermediate system to an intermediate system on the first node and other nodes in the same domain area or the same level as the first node. (Intermediate system to Intermediate system, referred to as ISIS), the segmentation route SR and the maximum redundancy tree configuration file MRT profile are enabled in the first section. The first node and the other nodes are mutually negotiated in the area or level where the point is located; the first node generates the first topology and the second topology based on the MRT Island running MRT algorithm, and generates the SPF algorithm based on the above area or level. The third topology.
在一个可选的实施例中,上述MRT profile中指定采用上述预定转发机制。即,采用上述的基于每拓扑每前缀索引prefix-sid的隧道嵌套方式的分段路由转发机制。In an optional embodiment, the foregoing predetermined forwarding mechanism is specified in the MRT profile. That is, the segmented route forwarding mechanism based on the tunnel nesting manner of the prefix-sid per prefix per topology is adopted.
在一个可选的实施例中,上述方法还包括以下至少之一:上述第一节点为第一节点本地的节点级prefix针对第一拓扑分配第一prefix-sid,并将该第一prefix-sid在MRT Island所在的域area或层次level内泛洪;上述第一节点为第一节点本地的节点级prefix针对第二拓扑分配第二prefix-sid,并将该第二prefix-sid在MRT Island所在的域area或层次level内泛洪;上述第一节点为第一节点本地的节点级和非节点级prefix针对第三拓扑分配第三prefix-sid,并将该第三prefix-sid在第一节点所在的所有域area或层次level内泛洪;上述第一节点接收其他节点上的上述预先生成的拓扑的prefix-sid,记录该其他节点上的上述预先生成的拓扑的prefix-sid以及将该其他节点上的预先生成的拓扑的prefix-sid继续通告给除其他节点之外的节点。在本实施例中,上述第一prefix-sid、第二prefix-sid、第三prefix-sid彼此是相互独立的。In an optional embodiment, the foregoing method further includes at least one of the following: the first node is a node-level prefix local to the first node, and the first prefix-sid is allocated to the first topology, and the first prefix-sid is Flooding in the domain area or level of the MRT Island; the first node is a node-level prefix local to the first node, and a second prefix-sid is allocated for the second topology, and the second prefix-sid is located at the MRT Island. Flooding in the domain area or level level; the first node is a node-level and non-node-level prefix local to the first node, and a third prefix-sid is allocated for the third topology, and the third prefix-sid is in the first node. Flooding in all domain or level levels; the first node receives the prefix-sid of the pre-generated topology on the other node, records the prefix-sid of the pre-generated topology on the other node, and the other The prefix-sid of the pre-generated topology on the node continues to be advertised to nodes other than the other nodes. In this embodiment, the first prefix-sid, the second prefix-sid, and the third prefix-sid are independent of each other.
在一个可选的实施例中,上述第一节点将报文转发到上述下一跳节点包括:第一节点确定与上述报文匹配的第一节点的出标签;该第一节点将上述第一节点的出标签封装到上述报文上,并将封装后的报文发送到下一跳节点。在本实施例中,针对不同类型的报文,标签的封装方式是不同的。In an optional embodiment, the first node forwarding the packet to the next hop node includes: the first node determining an outgoing label of the first node that matches the packet; the first node The outgoing label of the node is encapsulated into the above packet, and the encapsulated packet is sent to the next hop node. In this embodiment, the label encapsulation manner is different for different types of packets.
在一个可选的实施例中,上述第一节点确定与报文匹配的第一节点的出标签包括:当上述目标拓扑为第三拓扑时,上述第一节点的对应目标拓扑的出标签由第一节点基于目的地址对应的目的前缀prefix的第三前缀索引prefix-sid与下一跳节点的SRGB计算得到的。In an optional embodiment, the first node determines that the egress label of the first node that matches the packet includes: when the target topology is the third topology, the label of the corresponding target topology of the first node is A node is calculated based on the third prefix index prefix-sid of the destination prefix prefix corresponding to the destination address and the SRGB of the next hop node.
在一个可选的实施例中,上述第一节点确定与上述报文匹配的第一节 点的出标签包括:当上述目标拓扑为第一拓扑或第二拓扑时:若上述第二节点为MRT Island内的节点并且该目的地址对应的目的前缀prefix为第二节点的节点级前缀prefix时,上述第一节点通过如下方式确定第一节点的对应上述目标拓扑的出标签:上述第一节点的对应目标拓扑的出标签由第一节点基于上述第二节点的节点级前缀prefix的对应目标拓扑的前缀索引prefix-sid与下一跳节点的SRGB计算得到;若上述第二节点不为MRT Island内的节点或者目的地址对应的目的前缀prefix为第二节点的非节点级前缀prefix时,上述第一节点判断下一跳节点是否为MRT Island外的节点;在判断结果为否时,第一节点通过如下方式确定第一节点的对应上述目标拓扑的出标签:第一节点的对应上述目标拓扑的出标签为标签栈,外层标签为上述第一节点至隧道终点的标签,内层标签为上述隧道终点至目的前缀prefix的标签;其中,该外层标签由第一节点基于上述隧道终点的节点级前缀prefix的对应目标拓扑的前缀索引prefix-sid与目标拓扑内至上述隧道终点的下一跳节点的SRGB计算得到,该内层标签由第一节点基于目的前缀prefix的对应第三拓扑的前缀索引prefix-sid与隧道终点的SRGB计算得到;在判断结果为是时,上述第一节点通过如下方式确定第一节点的对应目标拓扑的出标签:上述第一节点的对应目标拓扑的出标签由第一节点基于上述目的前缀prefix的对应第三拓扑的前缀索引prefix-sid与下一跳节点的SRGB计算得到的。In an optional embodiment, the first node determines the first section that matches the message. The outbound label of the point includes: when the target topology is the first topology or the second topology: if the second node is a node in the MRT Island and the destination prefix corresponding to the destination address is a node-level prefix prefix of the second node The first node determines an outbound label of the first node corresponding to the target topology by: the outbound label of the corresponding target topology of the first node is corresponding to the target topology of the first node based on the node level prefix of the second node The prefix index prefix-sid is calculated by the SRGB of the next hop node; if the second node is not the node in the MRT Island or the destination prefix prefix corresponding to the destination address is the non-node level prefix of the second node, the foregoing A node determines whether the next hop node is a node outside the MRT Island; when the determination result is no, the first node determines, by the following manner, the outbound label of the first node corresponding to the target topology: the first node corresponding to the target topology The label is the label stack, and the outer label is the label of the first node to the tunnel end point, and the inner label is the above a label from the end of the track to the destination prefix; wherein the outer label is prefixed by the first node based on the prefix index of the corresponding target topology of the node-level prefix prefix of the tunnel end point and the next hop from the target topology to the tunnel end point The SRGB of the node is calculated, and the inner layer label is calculated by the first node based on the prefix index prefix-sid of the third topology of the destination prefix prefix and the SRGB of the tunnel end point; when the judgment result is yes, the first node passes the following The method determines an outbound label of the corresponding target topology of the first node: the outbound label of the corresponding target topology of the first node is determined by the first node based on the prefix index prefix-sid of the third topology of the destination prefix prefix and the next hop node Calculated by SRGB.
在一个可选的实施例中,上述第一节点将上述第一节点的出标签封装到报文上包括以下至少之一:当上述报文的报文类型为互联网协议IP报文时,在上述IP报文的IP头上压上第一节点的出标签;当上述报文的报文类型为分段路由SR标签报文时,将上述SR标签报文的标签栈的栈顶标签替换成第一节点的出标签。In an optional embodiment, the first node encapsulates the outgoing label of the first node into the packet, and includes at least one of the following: when the packet type of the packet is an Internet Protocol IP packet, The IP address of the IP packet is stamped with the outgoing label of the first node. When the packet type of the packet is a fragmented routing SR label, the top label of the label stack of the SR label is replaced with the first label. The outgoing label of a node.
在一个可选的实施例中,上述第一节点确定第一节点的出标签包括:当上述第一节点和第二节点为同一节点时,则上述第一节点基于目标拓扑确定的下一跳节点为上述第一节点,该第一节点没有出标签。In an optional embodiment, the determining, by the first node, the outbound label of the first node includes: when the first node and the second node are the same node, the first node determines the next hop node based on the target topology. For the first node, the first node does not have a label.
在一个可选的实施例中,上述方法还包括:当上述第一节点和第二节 点为同一节点时,包括:当上述报文的报文类型为互联网协议IP报文时,上述第一节点将报文上送至第一节点的控制平面;和/或,当上述报文的报文类型为分段路由SR标签报文时,上述第一节点将SR标签报文的标签栈的栈顶标签弹出,并继续基于上述报文的标签栈的下层标签或IP头查表转发。In an optional embodiment, the method further includes: when the first node and the second section are When the point is the same node, the first node sends the packet to the control plane of the first node when the packet type of the packet is an Internet Protocol IP packet; and/or, when the packet is When the packet type is a segment-routed SR-tag packet, the first node pops up the stack-top label of the label stack of the SR-tag packet, and continues to forward the packet based on the lower-layer label or the IP header of the label stack of the packet.
下面结合具体实施例对本发明进行说明:The present invention will be described below in conjunction with specific embodiments:
在本发明实施例中,将分段路由与MRT技术结合,提供一种基于分段路由转发机制的MRT-FRR方法。在本实施例中,为MRT架构新增一种MRT Profile,使用分段路由转发机制,通过分段路由转发机制来区分默认拓扑转发行为和MRT拓扑转发行为。In the embodiment of the present invention, the segmentation route is combined with the MRT technology to provide an MRT-FRR method based on the segmentation route forwarding mechanism. In this embodiment, an MRT profile is added to the MRT architecture, and the segment routing and forwarding mechanism is used to distinguish the default topology forwarding behavior and the MRT topology forwarding behavior by using the segment routing and forwarding mechanism.
本发明实施例中的基于分段路由转发机制的MRT-FRR方法包括以下步骤:The MRT-FRR method based on the segment routing and forwarding mechanism in the embodiment of the present invention includes the following steps:
第一步,定义新的MRT配置文件MRT Profile,与默认的default MRT Profile相比,差异主要体现在使用SR-LSP based on multi-prefix-sid tunneling转发机制。其中,SR-LSP是指基于prefix-sid生成的分段路由(Segment Routing,简称为SR)类型的LSP,与LDP LSP是类似的。SR-LSP tunneling转发机制是指MRT拓扑内的SR LSP是以MRT egress节点为目的节点建立的,即发生MRT FRR切换后,在MRT Ingress节点上,默认拓扑内的SR LSP是隧道嵌套于MRT拓扑的SR LSP中。SR-LSP tunneling转发机制时,MRT Ingress节点需要感知MRT Egress节点为目的prefix分配的默认拓扑对应的SR标签。multi-prefix-sid是指每拓扑每prefix-sid,即默认拓扑与MRT-red拓扑以及MRT-blue拓扑中的prefix-sid是不同的。The first step is to define a new MRT profile MRT Profile. Compared with the default default MRT profile, the difference is mainly reflected in the SR-LSP based on multi-prefix-sid tunneling forwarding mechanism. The SR-LSP is an LSP based on the fragment routing (SR) type, which is similar to the LDP LSP. The SR-LSP tunneling forwarding mechanism is that the SR LSP in the MRT topology is established with the MRT egress node as the destination node. After the MRT FRR switchover occurs, on the MRT Ingress node, the SR LSP in the default topology is the tunnel nested in the MRT. Topology of the SR LSP. When the SR-LSP tunneling forwarding mechanism is used, the MRT ingress node needs to perceive the SR label corresponding to the default topology allocated by the MRT egress node for the destination prefix. Multi-prefix-sid refers to each prefix-sid per topology, that is, the default topology is different from the MRT-red topology and the prefix-sid in the MRT-blue topology.
第二步,在IGP area/level内各节点(可以是仅部分节点)上相应IGP实例下使能MRT并且支持上述新的MRT Profile,针对上述新的MRT Profile生成相应的MRT Island。基于该MRT Island运行MRT算法生成相应的MRT-red拓扑与MRT-blue拓扑,相应的MT-ID分别记为MT-red和MT-blue。另外可以将基于SPF算法生成的默认拓扑对应的MT-ID记为 MT-default。In the second step, the MRT is enabled in the corresponding IGP instance on each node in the IGP area/level (which may be only a part of the node) and the new MRT profile is supported, and the corresponding MRT Island is generated for the new MRT profile. Based on the MRT Island running MRT algorithm to generate the corresponding MRT-red topology and MRT-blue topology, the corresponding MT-IDs are recorded as MT-red and MT-blue, respectively. In addition, the MT-ID corresponding to the default topology generated by the SPF algorithm can be recorded as MT-default.
第三步,使能了分段路由的各个节点上的IGP实例,如果还使能了MRT并且支持上述新的MRT Profile,则不仅为MT-default分配节点级的MT-default prefix-sid即MT-default node-sid(一般是某个loopback路由对应的prefix-sid,下同),还为MT-red分配节点级的MT-red prefix-sid即MT-red node-sid,以及为MT-blue分配节点级的MT-blue prefix-sid即MT-blue node-sid。这三个node-sid分别随(MT-default,prefix)、(MT-red,prefix)以及(MT-blue,prefix)可达通告消息泛洪,其中(MT-default,prefix)可在area间泛洪,但是(MT-red,prefix)与(MT-blue,prefix)仅在area内泛洪。The third step is to enable the IGP instance on each node of the segmentation route. If the MRT is also enabled and the new MRT profile is supported, the MT-default prefix-sid is not assigned to the MT-default. -default node-sid (usually the prefix-sid corresponding to a loopback route, the same below), and also assign the MT-red prefix-sid of the node-level MT-red node-sid to MT-red, and MT-blue The MT-blue prefix-sid of the node level is assigned as the MT-blue node-sid. The three node-sids are flooded with (MT-default, prefix), (MT-red, prefix), and (MT-blue, prefix) reachable notification messages, where (MT-default, prefix) can be between areas. Flooding, but (MT-red, prefix) and (MT-blue, prefix) flood only in the area.
需要说明的是,仅上述MRT Island内的节点才需要必须额外为其节点级prefix分配MT-red node-sid与MT-blue node-sid。MRT Island内的非节点级prefix也可以分配相应的MT-red prefix-sid与MT-blue prefix-sid,但不是必须的,一般不建议分配,如果分配了,其相应的表项建立过程与节点级prefix的表项建立过程是完全类似的;MRT Island外的节点级与非节点级prefix,都不需要分配相应的MT-red prefix-sid与MT-blue prefix-sid,因为在这些prefix的原始通告节点上,是感知不到MRT的,无从谈起分配MRT相关的MT-red prefix-sid与MT-blue prefix-sid。It should be noted that only the nodes in the above MRT Island need to additionally allocate MT-red node-sid and MT-blue node-sid for their node-level prefix. The non-node-level prefix in the MRT Island can also be assigned the corresponding MT-red prefix-sid and MT-blue prefix-sid, but it is not required. Generally, it is not recommended to allocate. If it is allocated, its corresponding entry establishment process and node. The establishment process of the class prefix is completely similar; the node-level and non-node-level prefix outside the MRT Island do not need to allocate the corresponding MT-red prefix-sid and MT-blue prefix-sid because of the original in these prefixes. On the advertising node, the MRT is not perceived, and it is impossible to allocate the MRT-related MT-red prefix-sid and MT-blue prefix-sid.
第四步,MRT Island内的源节点S为Island内的其它目的节点D的节点级prefix(记为D-loopback0)计算SPF主下一跳以及MRT-blue/red下一跳,即(MT-default,D-loopback0)中将包含SPF主下一跳,(MT-blue,D-loopback0)中将包含MRT-blue下一跳,(MT-red,D-loopback0)中将包含MRT-red下一跳。并且通过MRT算法确定到底是上述MRT-blue下一跳还是MRT-red下一跳保护上述SPF主下一跳。In the fourth step, the source node S in the MRT Island calculates the SPF primary next hop and the MRT-blue/red next hop for the node-level prefix (denoted as D-loopback0) of the other destination node D in the Island, ie (MT- Default, D-loopback0) will contain the SPF main next hop, (MT-blue, D-loopback0) will contain the MRT-blue next hop, (MT-red, D-loopback0) will contain MRT-red One jump. And determining whether the MRT-blue next hop or the MRT-red next hop protects the SPF primary next hop by the MRT algorithm.
上述SPF主下一跳中的MT-default SR出标签基于(MT-default,D-loopback0)相应的prefix-sid在下一跳节点的SRGB中偏移计算得到;上述MRT-red下一跳中的MRT-red SR出标签基于(MT-red,D-loopback0)相应的prefix-sid在下一跳节点的SRGB中偏移计算得到;上述MRT-blue下一 跳中的MRT-blue SR出标签基于(MT-blue,D-loopback0)相应的prefix-sid在下一跳节点的SRGB中偏移计算得到。The MT-default SR outgoing label in the SPF primary next hop is calculated based on the offset of the (MT-default, D-loopback0) corresponding prefix-sid in the SRGB of the next hop node; in the MRT-red next hop The MRT-red SR outgoing label is calculated based on the offset of the (MT-red, D-loopback0) corresponding prefix-sid in the SRGB of the next hop node; the above MRT-blue next The MRT-blue SR outgoing label in the hop is calculated based on the offset of the corresponding prefix-sid of (MT-blue, D-loopback0) in the SRGB of the next hop node.
根据(MT-default,D-loopback0)将生成相应的FTN表项,主NHLFE包含上述SPF主下一跳及相应的MT-default SR出标签,MRT-FRR备NHLFE包含上述选中用于保护SPF主下一跳的MRT-red下一跳或MRT-blue下一跳及相应的MRT-red SR出标签或MRT-blue SR出标签。根据(MT-default,D-loopback0)也生成相应的ILM表项,其MT-default SR入标签基于(MT-default,prefix)相应的prefix-sid在S节点的SRGB中偏移计算得到,NHLFE与上述FTN表项相同。According to (MT-default, D-loopback0), a corresponding FTN entry is generated. The primary NHLFE includes the SPF primary next hop and the corresponding MT-default SR outgoing label, and the MRT-FRR standby NHLFE includes the above selected for protecting the SPF primary. The next hop MRT-red next hop or MRT-blue next hop and the corresponding MRT-red SR outgoing label or MRT-blue SR outgoing label. According to (MT-default, D-loopback0), the corresponding ILM entry is also generated, and the MT-default SR incoming tag is calculated based on the offset of the (MT-default, prefix) corresponding prefix-sid in the SRGB of the S node, NHLFE Same as the above FTN entry.
S节点另外还可以为(MT-red,D-loopback0)生成相应的入标签映射(Incoming Label Map,简称为ILM)表项,其MT-red SR入标签基于(MT-red,D-loopback0)相应的prefix-sid在S节点的SRGB中偏移计算得到,NHLFE包含MRT-red下一跳及相应的MT-red SR出标签。亦为(MT-blue,D-loopback0)生成相应的ILM表项,其MT-blue SR入标签基于(MT-blue,D-loopback0)相应的prefix-sid在S节点的SRGB中偏移计算得到,NHLFE包含MRT-blue下一跳及相应的MT-blue SR出标签。The S-node can also generate a corresponding Incoming Label Map (ILM) entry for (MT-red, D-loopback0), and the MT-red SR is based on the label (MT-red, D-loopback0). The corresponding prefix-sid is calculated by offsetting in the SRGB of the S node, and the NHLFE includes the MRT-red next hop and the corresponding MT-red SR outgoing label. The corresponding ILM entry is also generated for (MT-blue, D-loopback0), and the MT-blue SR input tag is calculated based on the offset of the corresponding prefix-sid of the (MT-blue, D-loopback0) in the S node. The NHLFE contains the MRT-blue next hop and the corresponding MT-blue SR outgoing label.
第五步,MRT Island内的源节点S还为Island内或Island外的其它prefix(即除了S所处MRT Island内的节点级prefix以外的网络中所有其它prefix)计算SPF主下一跳以及MRT-FRR备份下一跳,MRT-FRR备份下一跳表示为相应的MRT Egress节点(记为E,相应的节点级prefix记为E-loopback0)以及颜色标志信息提示是选择至E节点的MRT-red路径还是MRT-blue路径来保护上述SPF主下一跳。In the fifth step, the source node S in the MRT Island also calculates the SPF primary next hop and the MRT for other prefixes within the Island or other outside of the Island (ie all other prefixes in the network except the node level prefix in the MRT Island where the S is located). -FRR backup next hop, MRT-FRR backup next hop is represented as the corresponding MRT Egress node (denoted as E, the corresponding node level prefix is marked as E-loopback0) and the color flag information prompt is selected to the M node of the E node The red path is also the MRT-blue path to protect the above SPF primary next hop.
上述SPF主下一跳中的MT-default SR出标签基于(MT-default,prefix)相应的prefix-sid在下一跳节点的SRGB中偏移计算得到;上述MRT-FRR备份下一跳将对应一个入标签栈:底层标签为E节点为目的prefix分配的MT-default SR标签,即基于(MT-default,prefix)相应的prefix-sid在E节点的SRGB中偏移计算得到;上层标签为S至E的MRT-blue或MRT-red路 径(根据颜色标志信息选择到底是MRT-blue或MRT-red路径)对应的SR入标签,即基于(MT-red,E-loopback0)或(MT-blue,E-loopback0)相应的prefix-sid在S节点的SRGB中偏移计算得到。用于实际转发前需将顶层SR入标签查找相应的SR ILM表项换成出标签与直连下一跳,即将上述入标签栈转换成出标签栈。The MT-default SR outgoing label in the SPF primary next hop is calculated based on the offset of the (MT-default, prefix) corresponding prefix-sid in the SRGB of the next hop node; the MRT-FRR backup next hop will correspond to one In the label stack: the underlying label is the MT-default SR label assigned by the E node for the destination prefix, that is, based on the offset of the (MT-default, prefix) corresponding prefix-sid in the SRGB of the E node; the upper label is S to E's MRT-blue or MRT-red road The SR entry label corresponding to the path (selecting the MRT-blue or MRT-red path according to the color flag information), that is, based on the (MT-red, E-loopback0) or (MT-blue, E-loopback0) corresponding prefix-sid The offset is calculated in the SRGB of the S node. Before the actual forwarding, the top-level SR into the label needs to be searched for the corresponding SR ILM entry and replaced with the outgoing label and the direct next hop, that is, the above-mentioned incoming label stack is converted into the outgoing label stack.
根据(MT-default,prefix)将生成相应的FTN表项,主NHLFE包含上述SPF主下一跳及相应的MT-default SR出标签,备NHLFE包含基于上述MRT Egress节点E及其相应颜色标志信息计算得到的入标签栈(用于实际转发前需换成出标签栈)。根据(MT-default,prefix)也生成相应的ILM表项,其MT-default SR入标签基于(MT-default,prefix)相应的prefix-sid在S节点的SRGB中偏移计算得到,NHLFE与上述FTN表项相同。如果prefix为S节点本地或直连prefix,则没有NHLFE信息。According to (MT-default, prefix), a corresponding FTN entry is generated. The primary NHLFE includes the foregoing SPF primary next hop and the corresponding MT-default SR outgoing label, and the standby NHLFE includes the MRT Egress node E and its corresponding color flag information. The calculated inbound label stack (used to be replaced with the label stack before being actually forwarded). According to (MT-default, prefix), the corresponding ILM entry is also generated, and the MT-default SR entry tag is calculated based on the offset of the (MT-default, prefix) corresponding prefix-sid in the S node SRGB, NHLFE and the above The FTN entries are the same. If the prefix is an S node local or direct prefix, there is no NHLFE information.
第六步,故障发生时,按照如下方法沿MRT路径转发IP或SR标签单播流量:MRT Ingress节点基于(MT-default,prefix)相应的FTN表项指导IP报文,或ILM表项指导SR标签报文转发。具体分成两种情况:In the sixth step, when the fault occurs, the IP or SR label unicast traffic is forwarded along the MRT path as follows: The MRT Ingress node directs the IP packet based on the corresponding FTN entry of the MT-default, prefix, or the ILM entry guides the SR. Label packet forwarding. Specifically divided into two cases:
1)如果流量匹配的是MRT Island内的某个节点级(MT-default,prefix)对应的FTN或ILM表项,则会将SR标签报文的顶层标签MT-default SR入标签交换成MRT-red或MRT-blue SR出标签后发往MRT-red或MRT-blue下一跳;或会将IP报文直接压上MRT-red或MRT-blue SR出标签后发往MRT-red或MRT-blue下一跳。1) If the traffic matches the FTN or ILM entry corresponding to a node-level (MT-default, prefix) in the MRT Island, the top-level label of the SR-label packet MT-default SR is switched into the MRT- The red or MRT-blue SR is sent to the MRT-red or MRT-blue next hop after the label is sent out; or the IP packet is directly pressed onto the MRT-red or MRT-blue SR and sent to the MRT-red or MRT- Blue next hop.
2)如果流量匹配的是其它(MT-default,prefix)对应的FTN或ILM表项,则会将SR标签报文的顶层标签MT-default SR入标签交换成MRT Egress节点为该prefix分配的MT-default SR标签,再压上至MRT Egress节点的MRT-red或MRT-blue SR出标签后发往至MRT Egress节点的MRT-red或MRT-blue下一跳;或会将IP报文直接压上至MRT Egress节点的MR-red或MRT-blue SR出标签后发往至MRT Egress节点的MRT-red或MRT-blue下一跳。 2) If the traffic matches the FTN or ILM entry corresponding to the other (MT-default, prefix), the top-level label of the SR-label packet, the MT-default SR, is switched to the MT that the MRT Egress node allocates for the prefix. The -default SR tag is then pressed to the MRT-red or MRT-blue SR of the MRT Egress node and sent to the MRT-red or MRT-blue next hop of the MRT Egress node; or the IP packet is directly pressed. The MR-red or MRT-blue SR that is up to the MRT Egress node is sent out to the MRT-red or MRT-blue next hop to the MRT Egress node.
MRT Transit节点基于至MRT Egress的节点级(MT-red,prefix)或(MT-blue,prefix)相应的SR ILM表项指导报文转发,继续将MRT-red或MRT-blue SR入标签交换成MRT-red或MRT-blue SR出标签后发往MRT-red或MRT-blue下一跳。The MRT Transit node forwards the message based on the corresponding SR ILM entry to the MRT Egress node level (MT-red, prefix) or (MT-blue, prefix), and continues to exchange the MRT-red or MRT-blue SR into the label. The MRT-red or MRT-blue SR is sent out to the MRT-red or MRT-blue next hop.
MRT Egress节点弹掉至它自身的MRT-red或MRT-blue SR入标签后,基于下层(MT-default,prefix)对应的MT-default SR标签查找相应的ILM表项指导报文转发,或者IP报文头露出后直接基于目的IP转发。After the MRT Egress node is dropped to its own MRT-red or MRT-blue SR tag, the MLD-based SR tag corresponding to the lower layer (MT-default, prefix) is used to search for the corresponding ILM entry to forward the packet, or IP address. After the packet header is exposed, it is forwarded directly based on the destination IP address.
下面结合附图对本发明实施例中的技术方案作进一步的详细描述:The technical solutions in the embodiments of the present invention are further described in detail below with reference to the accompanying drawings:
本具体实施方式中,首先对本发明实施例中的MRT Profile进行说明:In this embodiment, the MRT profile in the embodiment of the present invention is first described:
图2是根据本发明具体实施方式的MRT Profile示意图,如图2所示的MRT Profile,其与RFC7812中定义的default MRT Profile基本相同,区别是MRT Forwarding Mechanism选项为SR-LSP based on multi-prefix-sid tunneling Option。2 is a schematic diagram of an MRT profile according to an embodiment of the present invention. The MRT profile shown in FIG. 2 is basically the same as the default MRT profile defined in RFC7812. The difference is that the MRT Forwarding Mechanism option is SR-LSP based on multi-prefix. -sid tunneling Option.
具体实施例一
本实施例将描述目的prefix处于MRT Island内的MRT路径转发流程,图3是根据本发明具体实施例一的网络拓扑图,如图3所示,网络中运行OSPF,所有节点均处于同一area内,均在相应的OSPF实例下使能分段路由功能以及使能本发明上述实施例中所定义的MRT Profile。S作为源节点建立至目的节点D的prefix的MRT路径,然后基于此MRT路径保护SPF主路径。包括如下步骤:This embodiment will describe the MRT path forwarding process in which the destination prefix is located in the MRT Island. FIG. 3 is a network topology diagram according to a specific embodiment of the present invention. As shown in FIG. 3, OSPF is running in the network, and all nodes are in the same area. The segment routing function is enabled in the corresponding OSPF instance, and the MRT profile defined in the foregoing embodiment of the present invention is enabled. S establishes the MRT path to the prefix of the destination node D as the source node, and then protects the SPF main path based on this MRT path. Including the following steps:
步骤S301,S、A、B、D各节点上的OSPF实例下使能SR以及本发明实施例中所定义的MRT Profile,则它们在area内形成一个MRT Island。并且由于MRT Profile中指定使用MRT SR-LSP based on multi-prefix-sid tunneling Option作为转发机制,则MRT Island内的各节点除了分配MT-default prefix-sid以外,还额外分配MT-red prefix-sid与MT-blue prefix-sid,比如在S节点上可以将为节点级prefix S-loopback0分配的三种 prefix-sid分别记为:(MT-default,S-loopback0)node-sid,(MT-red,S-loopback0)node-sid,(MT-blue,S-loopback0)node-sid。另外,可以记S节点的SRGB为SRGB_S,其它节点类似。Step S301: After the SR is enabled in the OSPF instance on each node of the S, A, B, and D, and the MRT profile defined in the embodiment of the present invention, they form an MRT Island in the area. In addition, the MRT SR-LSP based on multi-prefix-sid tunneling option is used as the forwarding mechanism in the MRT profile. In addition to the MT-default prefix-sid, each node in the MRT Island additionally allocates the MT-red prefix-sid. With MT-blue prefix-sid, for example, three types of node-level prefix S-loopback0 can be assigned on the S node. The prefix-sid is respectively recorded as: (MT-default, S-loopback0) node-sid, (MT-red, S-loopback0) node-sid, (MT-blue, S-loopback0) node-sid. In addition, it can be noted that the SRGB of the S node is SRGB_S, and the other nodes are similar.
MRT Island内各节点上将基于SPF算法得到area内的MT-default拓扑,以及基于MRT算法得到MT-red和MT-blue拓扑。比如S节点上,至目的节点D的MT-default路径为S-D,MT-red路径也为S-D,而MT-blue路径为S-A-B-D。The MT-default topology in the area is obtained based on the SPF algorithm on each node in the MRT Island, and the MT-red and MT-blue topologies are obtained based on the MRT algorithm. For example, on the S node, the MT-default path to the destination node D is S-D, the MT-red path is also S-D, and the MT-blue path is S-A-B-D.
各节点上基于拓扑生成相应的prefix表项,比如S节点上,MT-default拓扑内至目的节点D的节点级prefix D-loopback0的MT-default下一跳为D,并且选中MT-blue拓扑中给出的MT-blue路径来保护MT-default下一跳D,那么相应的MRT-FRR下一跳将拷贝为上述MT-blue中的下一跳即A,称之为MRT-blue下一跳。假设(MT-default,D-loopback0)node-sid为default_SID0_D,(MT-red,D-loopback0)node-sid为red_SID0_D,(MT-blue,D-loopback0)node-sid为blue_SID0_D,则上述MT-default下一跳D对应的出标签为SRGB_D[default_SID0_D],上述MRT-blue下一跳A对应的出标签为SRGB_A[blue_SID0__D]。下面对部分节点上的表项进行举例说明:Each node generates a corresponding prefix entry based on the topology. For example, on the S node, the MT-default next hop of the node-level prefix D-loopback0 in the MT-default topology to the destination node D is D, and the MT-blue topology is selected. The MT-blue path is given to protect the MT-default next hop D, then the corresponding MRT-FRR next hop will be copied to the next hop in the above MT-blue, that is, A, which is called MRT-blue next hop. . Assume (MT-default, D-loopback0) node-sid is default_SID0_D, (MT-red, D-loopback0) node-sid is red_SID0_D, (MT-blue, D-loopback0) node-sid is blue_SID0_D, then MT- The outgoing label corresponding to the default next hop D is SRGB_D[default_SID0_D], and the outgoing label corresponding to the next hop A of the MRT-blue is SRGB_A[blue_SID0__D]. The following is an example of the entries on some nodes:
S节点:S node:
FTN for(MT-default,D-loopback0)FTN for(MT-default, D-loopback0)
主NHLFE:下一跳为D,出标签为SRGB_D[default_SID0_D]Primary NHLFE: The next hop is D, and the outgoing label is SRGB_D[default_SID0_D]
备NHLFE:下一跳为A,出标签为SRGB_A[blue_SID0_D]Standby NHLFE: the next hop is A, and the outgoing label is SRGB_A[blue_SID0_D]
ILM for(MT-default,D-loopback0)ILM for(MT-default, D-loopback0)
入标签为SRGB_S[default_SID0_D]The entry tag is SRGB_S[default_SID0_D]
主NHLFE:下一跳为D,出标签为SRGB_D[default_SID0_D]Primary NHLFE: The next hop is D, and the outgoing label is SRGB_D[default_SID0_D]
备NHLFE:下一跳为A,出标签为SRGB_A[blue_SID0_D]Standby NHLFE: the next hop is A, and the outgoing label is SRGB_A[blue_SID0_D]
A节点:A node:
ILM for(MT-blue,D-loopback0) ILM for(MT-blue, D-loopback0)
入标签为SRGB_A[blue_SID0_D]The entry tag is SRGB_A[blue_SID0_D]
NHLFE:下一跳为B,出标签为SRGB_B[blue_SID0_D]NHLFE: The next hop is B, and the outgoing label is SRGB_B[blue_SID0_D]
B节点:Node B:
ILM for(MT-blue,D-loopback0)ILM for(MT-blue, D-loopback0)
入标签为SRGB_B[blue_SID0_D]The entry tag is SRGB_B[blue_SID0_D]
NHLFE:下一跳为D,出标签为SRGB_D[blue_SID0_D]NHLFE: The next hop is D, and the outgoing label is SRGB_D[blue_SID0_D]
D节点:D node:
ILM for(MT-blue,D-loopback0)ILM for(MT-blue, D-loopback0)
入标签为SRGB_D[blue_SID0_D]The entry tag is SRGB_D[blue_SID0_D]
NHLFE:无。表示SR-LSP已经终结。NHLFE: None. Indicates that the SR-LSP has been terminated.
步骤S302,对于发往目的地D-loopback0的报文,当链路S-D出现故障时,S节点将作为MRT ingress节点将流量切换至事先准备好的MRT-blue下一跳A,即开始将报文沿MT-blue路径S-A-B-D转发。Step S302: When the link SD is faulty, the S node will switch the traffic to the MRT-blue next hop A prepared in advance, that is, the packet will be reported to the destination D-loopback0. The text is forwarded along the MT-blue path SABD.
如果S收到的是MT-default SR标签报文,则它基于ILM for(MT-default,D-loopback0)表项转发,将入标签SRGB_S[default_SID0_D]交换成出标签SRGB_A[blue_SID0_D];如果S收到的是IP报文,则它基于FTN for(MT-default,D-loopback0)表项转发,直接在IP头上压上出标签SRGB_A[blue_SID0_D]。If the S receives the MT-default SR label packet, it is forwarded based on the ILM for (MT-default, D-loopback0) entry, and the inbound label SRGB_S[default_SID0_D] is exchanged to the outbound label SRGB_A[blue_SID0_D]; if S If the IP packet is received, it is forwarded based on the FTN for (MT-default, D-loopback0) entry, and the label SRGB_A[blue_SID0_D] is directly pressed on the IP header.
步骤S303,A节点收到报文后,根据报文的顶层标签为SRGB_A[blue_SID0_D],匹配到ILM_for(MT-blue,D-loopback0)表项,继续将报文的顶层标签SRGB_A[blue_SID0_D]交换成SRGB_B[blue_SID0_D]后发给B。Step S303, after receiving the packet, the node A is matched with the ILM_for (MT-blue, D-loopback0) entry according to the top label of the packet, and continues to exchange the top label SRGB_A[blue_SID0_D] of the packet. It is sent to B after SRGB_B[blue_SID0_D].
步骤S304,B节点收到报文后,根据报文的顶层标签为SRGB_B[blue_SID0_D],匹配到ILM for(MT-blue,D-loopback0)表项,继续将报文的顶层标签SRGB_B[blue_SID0_D]交换成SRGB_D[blue_SID0_D]后发给D。 Step S304, after receiving the packet, the node B matches the ILM for (MT-blue, D-loopback0) entry according to the top label of the packet, and continues to the top label SRGB_B[blue_SID0_D] of the packet. It is sent to D after being exchanged to SRGB_D[blue_SID0_D].
步骤S305,D节点收到报文后,根据报文的顶层标签为SRGB_D[blue_SID0_D],匹配到ILM for(MT-blue,D-loopback0)表项,本地终结SR-LSP,剥掉标签后基于IP头继续转发,由于IP头为D-loopback0,则报文上送控制平面。Step S305: After receiving the packet, the D node selects the SLM_D[blue_SID0_D] according to the top label of the packet, and matches the ILM for (MT-blue, D-loopback0) entry to terminate the SR-LSP locally. The IP header continues to forward. Since the IP header is D-loopback0, the packet is sent to the control plane.
步骤S306,对于D节点上的非节点级prefix,比如D-loopback1,也可以为之分配相应的三种prefix-sid,如:(MT-default,D-loopback1)prefix-sid,(MT-red,D-loopback1)prefix-sid,(MT-blue,D-loopback1)prefix-sid。并且MRT Island内各节点类似步骤S301建立至D-loopback1的表项,以及转发行为类似步骤S302~305,不再赘述。In step S306, for the non-node level prefix on the D node, such as D-loopback1, the corresponding three prefix-sids may also be allocated, for example: (MT-default, D-loopback1) prefix-sid, (MT-red , D-loopback1) prefix-sid, (MT-blue, D-loopback1) prefix-sid. And the nodes in the MRT Island are similar to the steps in the step S301 to the D-loopback1, and the forwarding behavior is similar to the steps S302-305, and will not be described again.
优选地,在本发明实施例中的优化方法可以是仅为MRT Island内的节点级prefix额外分配相应的MT-red node-sid与MT-blue node-sid。下面对在这种优化方法下各节点如何为D-loopback1建立相应的表项进行说明。其它实施例中也将按照此优化方法描述,并且假设各节点的loopback0prefix为节点级prefix,其它prefix为非节点级prefix。Preferably, the optimization method in the embodiment of the present invention may be that the corresponding MT-red node-sid and MT-blue node-sid are additionally allocated only for the node level prefix in the MRT Island. The following describes how each node establishes a corresponding entry for D-loopback1 under this optimization method. Other embodiments will also be described in accordance with this optimization method, and assume that each node's loopback0prefix is a node-level prefix, and other prefixes are non-node-level prefixes.
需要说明的是,基于上述优化方法的一种判断条件为:如果prefix是area内的节点级prefix且其通告节点是MRT Island内的节点,则按照步骤S301为该prefix建立表项,否则按照如下步骤S307建立表项。It should be noted that, according to the foregoing optimization method, if the prefix is a node-level prefix in the area and the advertised node is a node in the MRT Island, the entry is established for the prefix according to step S301, otherwise, Step S307 creates an entry.
步骤S307,S节点上,MT-default拓扑内至D-loopback1的MT-default下一跳为D,并且选中MT-blue拓扑中给出的MT-blue路径(S-A-B-D)来保护MT-default下一跳D,则MRT-FRR备份下一跳为MRT Egress节点D以及颜色标志信息为MRT-blue。假设(MT-default,D-loopback1)prefix-sid为default_SID1_D。下面对部分节点上的表项进行举例说明:Step S307, on the S node, the MT-default next hop in the MT-default topology to D-loopback1 is D, and the MT-blue path (SABD) given in the MT-blue topology is selected to protect the MT-default next. When D is hopped, the next hop of the MRT-FRR backup is the MRT Egress node D and the color flag information is MRT-blue. Assume (MT-default, D-loopback1) that the prefix-sid is default_SID1_D. The following is an example of the entries on some nodes:
S节点:S node:
FTN for(MT-default,D-loopback1)FTN for(MT-default, D-loopback1)
主NHLFE:下一跳为D,出标签为SRGB_D[default_SID1_D]Primary NHLFE: The next hop is D, and the outgoing label is SRGB_D[default_SID1_D]
备NHLFE:顶层入标签为SRGB_S[blue_SID0__D]Prepare NHLFE: The top-level tag is SRGB_S[blue_SID0__D]
底层出标签为SRGB_D[default_SID1_D] The underlying label is SRGB_D[default_SID1_D]
ILM for(MT-default,D-loopback1)ILM for(MT-default,D-loopback1)
入标签为SRGB_S[default_SID1_D]The entry tag is SRGB_S[default_SID1_D]
主NHLFE:下一跳为D,出标签为SRGB_D[default_SID1_D]Primary NHLFE: The next hop is D, and the outgoing label is SRGB_D[default_SID1_D]
备NHLFE:顶层入标签为SRGB_S[blue_SID0_D]Prepare NHLFE: Top-level tag is SRGB_S[blue_SID0_D]
底层出标签为SRGB_D[default_SID1_D]The underlying label is SRGB_D[default_SID1_D]
ILM for(MT-blue,D-loopback0)ILM for(MT-blue, D-loopback0)
入标签为SRGB_S[blue_SID0_D]The entry tag is SRGB_S[blue_SID0_D]
NHLFE:下一跳为A,出标签为SRGB_A[blue_SID0_D]NHLFE: The next hop is A, and the outgoing label is SRGB_A[blue_SID0_D]
D节点:D node:
ILM for(MT-default,D-loopback1)ILM for(MT-default,D-loopback1)
入标签为SRGB_D[default_SID1_D]The entry tag is SRGB_D[default_SID1_D]
NHLFE:无。表示SR-LSP已经终结。NHLFE: None. Indicates that the SR-LSP has been terminated.
步骤S308,对于发往目的地D-loopback1的报文,当链路S-D出现故障时,S节点将作为MRT ingress节点将流量切换至事先准备好的至远端MRT Egress节点D的MRT-blue路径,即开始将报文沿MT-blue路径S-A-B-D转发。Step S308, for the packet sent to the destination D-loopback1, when the link SD fails, the S node will switch the traffic as the MRT ingress node to the MRT-blue path prepared to the remote MRT Egress node D in advance. , that is, the message is forwarded along the MT-blue path SABD.
如果S收到的是MT-default SR标签报文,则它基于ILM for(MT-default,D-loopback1)表项转发,将入标签SRGB_S[default_SID1_D]交换成出标签SRGB_D[default_SID1_D]后,再压上SRGB_A[blue_SID0_D],发给下一跳A;如果S收到的是IP报文,则它基于FTN for(MT-default,D-loopback1)表项转发,直接在IP头上压上出标签SRGB_D[default_SID1_D]后,再压上SRGB_A[blue_SID0_D],发给下一跳A。If the S receives an MT-default SR tag, it is forwarded based on the ILM for (MT-default, D-loopback 1) entry, and the tag SRGB_S[default_SID1_D] is exchanged to the tag SRGB_D[default_SID1_D]. SRGB_A[blue_SID0_D] is sent to the next hop A. If the S receives an IP packet, it is forwarded based on the FTN for (MT-default, D-loopback1) entry and is directly pressed on the IP header. After the label SRGB_D[default_SID1_D], press SRGB_A[blue_SID0_D] and send it to the next hop A.
步骤S309,A节点收到报文的处理与步骤S303相同。In step S309, the process of receiving the message by the node A is the same as step S303.
步骤S310,B节点收到报文的处理与步骤S304相同。 In step S310, the process of receiving the message by the Node B is the same as that of step S304.
步骤S311,D节点收到报文后,连续弹掉标签SRGB_D[blue_SID0_D]与SRGB_D[default_SID1_D],基于IP头继续转发,由于IP头为D-loopback0,则报文上送控制平面。In step S311, after receiving the message, the D node continuously plays off the labels SRGB_D[blue_SID0_D] and SRGB_D[default_SID1_D], and continues to forward based on the IP header. Since the IP header is D-loopback0, the packet is sent to the control plane.
根据上述实施例,可知报文沿MRT路径转发时,在MRT Island内实际上是沿相应MRT拓扑内的SR-LSP转发,其中MRT Island内节点级的prefix实际上是将MT-default SR-LSP与MT-blue或MT-red SR-LSP粘连,而其它prefix实际上是将其MT-default SR-LSP承载于至MRT Egress节点的MT-blue或MT-red SR-LSP之上。According to the foregoing embodiment, when the packet is forwarded along the MRT path, the MRT Island is actually forwarded along the SR-LSP in the corresponding MRT topology, wherein the node-level prefix in the MRT Island is actually the MT-default SR-LSP. It is attached to the MT-blue or MT-red SR-LSP, and the other prefix actually carries its MT-default SR-LSP on the MT-blue or MT-red SR-LSP to the MRT Egress node.
具体实施例二
本实施例将描述目的prefix处于MRT Island外的MRT路径转发流程,图4是根据本发明具体实施例二的网络拓扑图,如图4所示,网络中运行OSPF,包含两个area,所有节点均在相应的OSPF实例下使能分段路由功能,其中area1中的S、A、B、C使能本发明实施例中所定义的MRT Profile。S作为源节点建立至目的节点D的prefix的MRT路径,然后基于此MRT路径保护SPF主路径。包括如下步骤:This embodiment will describe the MRT path forwarding process in which the destination prefix is outside the MRT Island. FIG. 4 is a network topology diagram according to the second embodiment of the present invention. As shown in FIG. 4, the network runs OSPF, and includes two areas, all nodes. The segment routing function is enabled in the corresponding OSPF instance, and the MRT profiles defined in the embodiment of the present invention are enabled in the S, A, B, and C in the area1. S establishes the MRT path to the prefix of the destination node D as the source node, and then protects the SPF main path based on this MRT path. Including the following steps:
步骤S401,area1与area2内所有节点的OSPF实例下均使能SR。各节点分配SRGB。In step S401, the SR is enabled in the OSPF instance of all the nodes in area1 and area2. Each node is assigned SRGB.
步骤S402,area1内的S、A、B、C各节点上的OSPF实例下使能本发明实施例中所定义的MRT Profile,则它们在area1内形成一个MRT Island。并且由于MRT Profile中指定使用MRT SR-LSP based on multi-prefix-sid tunneling Option作为转发机制,则MRT Island内的各节点除了分配MT-default prefix-sid以外,还额外分配MT-red prefix-sid与MT-blue prefix-sid,比如在B节点上可以将为节点级prefix B-loopback0分配的三种prefix-sid分别记为:(MT-default,B-loopback0)node-sid,(MT-red,B-loopback0)node-sid,(MT-blue,B-loopback0)node-sid。In the step S402, if the MRT profiles defined in the embodiment of the present invention are enabled in the OSPF instance on the S, A, B, and C nodes in the area1, they form an MRT Island in the area1. In addition, the MRT SR-LSP based on multi-prefix-sid tunneling option is used as the forwarding mechanism in the MRT profile. In addition to the MT-default prefix-sid, each node in the MRT Island additionally allocates the MT-red prefix-sid. With the MT-blue prefix-sid, for example, on the Node B, the three prefix-sids assigned to the node-level prefix B-loopback0 can be respectively recorded as: (MT-default, B-loopback0) node-sid, (MT-red , B-loopback0) node-sid, (MT-blue, B-loopback0) node-sid.
各节点上将基于SPF算法得到area内的MT-default拓扑,以及基于 MRT算法得到MT-red和MT-blue拓扑。比如S节点上,至目的节点A的MT-default路径为S-A,MT-blue路径也为S-A,而MT-red路径为S-C-B-A。Each node will get the MT-default topology in the area based on the SPF algorithm, and based on The MRT algorithm obtains MT-red and MT-blue topologies. For example, on the S node, the MT-default path to the destination node A is S-A, the MT-blue path is also S-A, and the MT-red path is S-C-B-A.
MRT Island内各节点针对MRT Island内各节点级prefix建立的表项与实施例一的步骤S301中针对prefix D-loopback0建立的表项是完全类似的,并且目的IP匹配MRT Island内相应节点级prefix的流量的转发行为也与步骤S302~305是完全类似的,不再赘述。The entries established by the nodes in the MRT Island for the node-level prefixes in the MRT Island are completely similar to the entries established for the prefix D-loopback0 in the step S301 of the first embodiment, and the destination IP matches the corresponding node-level prefix in the MRT Island. The forwarding behavior of the traffic is also completely similar to steps S302-305, and will not be described again.
步骤S403,S节点上,MT-default拓扑内至prefix D-loopback0的MT-default下一跳为C(假设在area1内ABR1作为prefix D-loopback0的通告节点,则使用至目的节点ABR1的MT-default路径来确定下一跳)。对于prefix D-loopback0,可以假设使用Tunnel Endpoint Selection方法(参考RFC7812)选择的远端节点为A,假设MRT Island中S作为GADAG root,且S<<A<<B<<C<<S,则至节点A的MRT-blue路径为S-A,它可用来保护上述MT-default下一跳C。假设(MT-default,D-loopback0)prefix-sid为default_SID0_D。下面对部分节点上的表项进行举例说明:Step S403: On the S node, the MT-default next hop in the MT-default topology to the prefix D-loopback0 is C (assuming that the ABR1 in the area1 is the advertised node of the prefix D-loopback0, the MT to the destination node ABR1 is used. The default path to determine the next hop). For prefix D-loopback0, it can be assumed that the remote node selected by the Tunnel Endpoint Selection method (refer to RFC7812) is A, assuming S is the GADAG root in MRT Island, and S<<A<<B<<C<<S, then The MRT-blue path to node A is SA, which can be used to protect the MT-default next hop C above. Assume (MT-default, D-loopback0) prefix-sid is default_SID0_D. The following is an example of the entries on some nodes:
S节点:S node:
FTN for(MT-default,D-loopback0)FTN for(MT-default, D-loopback0)
主NHLFE:下一跳为C,出标签为SRGB_C[default_SID0_D]Primary NHLFE: The next hop is C, and the outgoing label is SRGB_C[default_SID0_D]
备NHLFE:顶层入标签为SRGB_S[blue_SID0_A]Prepare NHLFE: Top-level tag is SRGB_S[blue_SID0_A]
底层出标签为SRGB_A[default_SID0_D]The underlying label is SRGB_A[default_SID0_D]
ILM for(MT-default,D-loopback0)ILM for(MT-default, D-loopback0)
入标签为SRGB_S[default_SID0_D]The entry tag is SRGB_S[default_SID0_D]
主NHLFE:下一跳为C,出标签为SRGB_C[default_SID0_D]Primary NHLFE: The next hop is C, and the outgoing label is SRGB_C[default_SID0_D]
备NHLFE:顶层入标签为SRGB_S[blue_SID0_A]Prepare NHLFE: Top-level tag is SRGB_S[blue_SID0_A]
底层出标签为SRGB_A[default_SID0_D]The underlying label is SRGB_A[default_SID0_D]
ILM for(MT-blue,A-loopback0)ILM for(MT-blue,A-loopback0)
入标签为SRGB_S[blue_SID0_A] The entry tag is SRGB_S[blue_SID0_A]
NHLFE:下一跳为A,出标签为SRGB_A[blue_SID0_A]NHLFE: The next hop is A, and the outgoing label is SRGB_A[blue_SID0_A]
A节点:A node:
ILM for(MT-blue,A-loopback0)ILM for(MT-blue,A-loopback0)
入标签为SRGB_A[blue_SID0_A]The entry tag is SRGB_A[blue_SID0_A]
NHLFE:无。表示SR-LSP已经终结。NHLFE: None. Indicates that the SR-LSP has been terminated.
ILM for(MT-default,D-loopback0)ILM for(MT-default, D-loopback0)
入标签为SRGB_A[default_SID0_D]The entry tag is SRGB_A[default_SID0_D]
NHLFE:下一跳为ABR3,出标签为SRGB_ABR3[default_SID0_D]NHLFE: The next hop is ABR3, and the outgoing label is SRGB_ABR3[default_SID0_D]
ABR3节点:ABR3 node:
ILM for(MT-default,D-loopback0)ILM for(MT-default, D-loopback0)
入标签为SRGB_ABR3[default_SID0_D]The entry tag is SRGB_ABR3[default_SID0_D]
NHLFE:下一跳为ABR2,出标签为SRGB_ABR2[default_SID0_D]NHLFE: The next hop is ABR2, and the outgoing label is SRGB_ABR2[default_SID0_D]
ABR2节点:ABR2 node:
ILM for(MT-default,D-loopback0)ILM for(MT-default, D-loopback0)
入标签为SRGB_ABR2[default_SID0_D]The entry tag is SRGB_ABR2[default_SID0_D]
NHLFE:下一跳为D,出标签为SRGB_D[default_SID0_D]NHLFE: The next hop is D, and the outgoing label is SRGB_D[default_SID0_D]
D节点:D node:
ILM for(MT-default,D-loopback0)ILM for(MT-default, D-loopback0)
入标签为SRGB_D[default_SID0_D]The entry tag is SRGB_D[default_SID0_D]
NHLFE:无。表示SR-LSP已经终结。NHLFE: None. Indicates that the SR-LSP has been terminated.
步骤S404,对于发往目的地D-loopback0的报文,当链路S-C出现故障时,S节点将作为MRT ingress节点将流量切换至事先准备好的至远端 MRT Egress节点A的MRT-blue路径,即开始将报文沿MT-blue路径S-A转发。Step S404: For the packet sent to the destination D-loopback0, when the link S-C fails, the S node will switch the traffic as the MRT ingress node to the remotely prepared to the far end. The MRT-blue path of the MRT Egress node A begins to forward the message along the MT-blue path S-A.
如果S收到的是MT-default SR标签报文,则它基于ILM for(MT-default,D-loopback0)表项转发,将入标签SRGB_S[default_SID0_D]交换成出标签SRGB_A[default_SID0_D]后,再压上SRGB_A[blue_SID0_A],发给下一跳A;如果S收到的是IP报文,则它基于FTN for(MT-default,D-loopback0)表项转发,直接在IP头上压上出标签SRGB_A[default_SID0_D]后,再压上SRGB_A[blue_SID0_A],发给下一跳A。If the S receives the MT-default SR tag packet, it is forwarded based on the ILM for (MT-default, D-loopback0) entry, and the inbound tag SRGB_S[default_SID0_D] is exchanged to the outbound tag SRGB_A[default_SID0_D]. SRGB_A[blue_SID0_A] is sent to the next hop A. If the S receives an IP packet, it is forwarded based on the FTN for (MT-default, D-loopback0) entry and is directly pressed on the IP header. After the label SRGB_A[default_SID0_D], press SRGB_A[blue_SID0_A] and send it to the next hop A.
步骤S405,A节点收到报文后,弹掉标签SRGB_A[blue_SID0_A],将下层标签SRGB_A[default_SID0_D]交换成SRGB_ABR3[default_SID0_D]后发给下一跳ABR3。Step S405, after receiving the message, the node A bounces off the label SRGB_A[blue_SID0_A], and exchanges the lower layer label SRGB_A[default_SID0_D] into SRGB_ABR3[default_SID0_D] and sends it to the next hop ABR3.
步骤S406,ABR3节点收到报文后,将标签SRGB_ABR3[default_SID0_D]交换成SRGB_ABR2[default_SID0_D]后发给下一跳ABR2。Step S406, after receiving the message, the ABR3 node exchanges the label SRGB_ABR3[default_SID0_D] into SRGB_ABR2[default_SID0_D] and sends it to the next hop ABR2.
步骤S407,ABR2节点收到报文后,将标签SRGB_ABR2[default_SID0_D]交换成SRGB_D[default_SID0_D]后发给下一跳D。Step S407, after receiving the message, the ABR2 node exchanges the label SRGB_ABR2[default_SID0_D] into SRGB_D[default_SID0_D] and sends it to the next hop D.
步骤S408,D节点收到报文后,弹掉标签SRGB_D[default_SID0_D],基于IP头继续转发,由于IP头为D-loopback0,则报文上送控制平面。Step S408: After receiving the packet, the D node bounces off the label SRGB_D[default_SID0_D], and continues forwarding according to the IP header. Since the IP header is D-loopback0, the packet is sent to the control plane.
根据上述实施例,可知报文沿MRT路径转发时,在MRT Island内实际上是沿相应MRT拓扑内的SR-LSP转发,离开MRT Island后,将沿默认拓扑内的SR-LSP转发。符合FEC7812定义的转发规则。According to the foregoing embodiment, it is known that when the packet is forwarded along the MRT path, it is actually forwarded along the SR-LSP in the corresponding MRT topology in the MRT Island. After leaving the MRT Island, it will be forwarded along the SR-LSP in the default topology. Conforms to the forwarding rules defined by FEC7812.
具体实施例三Concrete embodiment 3
本实施例将描述目的prefix处于MRT Island外的MRT路径转发流程,特别是如何基于SR-LSP实现RFC7812定义的跨域转发规则。图5是根据
本发明具体实施例三的网络拓扑图,如图5所示,网络中运行OSPF,包含两个area,所有节点均在相应的OSPF实例下使能分段路由功能,其中area1中的S、A、B、C使能本发明实施例中所定义的MRT Profile,area2中的B、E、D、F也同样使能本发明实施例中所定义的MRT Profile。S作为源节点建立至目的节点D的prefix的MRT路径,然后基于此MRT路径保护SPF主路径。包括如下步骤:This embodiment will describe the MRT path forwarding process in which the destination prefix is outside the MRT Island, and in particular, how to implement the cross-domain forwarding rule defined by RFC7812 based on the SR-LSP. Figure 5 is based on
The network topology diagram of the third embodiment of the present invention, as shown in FIG. 5, runs OSPF in the network, and includes two areas, and all nodes enable segmentation routing function in the corresponding OSPF instance, where S and A in area1 The B, C, and C enable the MRT profile defined in the embodiment of the present invention. The B, E, D, and F in the
步骤S501,area1与area2内所有节点的OSPF实例下均使能SR。各节点分配SRGB。In step S501, the SR is enabled in the OSPF instance of all the nodes in area1 and area2. Each node is assigned SRGB.
步骤S502,area1内的S、A、B、C各节点上的OSPF实例下使能本发明实施例中所定义的MRT Profile,则它们在area1内形成一个MRT Island。并且由于MRT Profile中指定使用MRT SR-LSP based on multi-prefix-sid tunneling Option作为转发机制,则MRT Island内的各节点除了分配MT-default prefix-sid以外,还额外分配MT-red prefix-sid与MT-blue prefix-sid,比如在B节点上可以将为节点级prefix B-loopback0分配的三种prefix-sid分别记为:(MT-default,B-loopback0)node-sid,(MT-red,B-loopback0)node-sid,(MT-blue,B-loopback0)node-sid。Step S502: After the MRT profiles defined in the embodiment of the present invention are enabled in the OSPF instance on the S, A, B, and C nodes in the
各节点上将基于SPF算法得到area内的MT-default拓扑,以及基于MRT算法得到MT-red和MT-blue拓扑。比如S节点上,至目的节点B的MT-default路径为S-C-B,MT-red路径也为S-C-B,而MT-blue路径为S-A-B。On each node, the MT-default topology in the area is obtained based on the SPF algorithm, and the MT-red and MT-blue topologies are obtained based on the MRT algorithm. For example, on the S node, the MT-default path to the destination node B is S-C-B, the MT-red path is also S-C-B, and the MT-blue path is S-A-B.
area1中的MRT Island内各节点针对MRT Island内各节点级prefix建立的表项与具体实施例一的步骤S301中针对prefix D-loopback0建立的表项是完全类似的,并且目的IP匹配MRT Island内相应节点级prefix的流量的转发行为也与步骤S302~305是完全类似的。不再赘述。The entries established by the nodes in the MRT Island in the area1 for the node-level prefix in the MRT Island are completely similar to the entries established in the step S301 of the first embodiment for the prefix D-loopback0, and the destination IP matches the MRT Island. The forwarding behavior of the traffic of the corresponding node-level prefix is also completely similar to steps S302-305. No longer.
步骤S503,area2中的B、E、D、F各节点上的OSPF实例下也使能本发明实施例中所定义的MRT Profile,则它们在area2内也形成一个MRT Island,在area2内生成相应的MT-default拓扑,以及MT-red和MT-blue 拓扑。假设B至D在默认拓扑内的最短路径下一跳为F。In step S503, the MRT profile defined in the embodiment of the present invention is also enabled in the OSPF instance on each of the nodes B, E, D, and F in area2, and then an MRT Island is formed in area2, and correspondingly generated in area2. MT-default topology, as well as MT-red and MT-blue Topology. Assume that the shortest path from B to D in the default topology is F.
area2中的MRT Island内各节点针对MRT Island内各节点级prefix建立的表项与实施例一的步骤S301中针对prefix D-loopback0建立的表项是完全类似的,并且目的IP匹配MRT Island内相应节点级prefix的流量的转发行为也与步骤S302~305是完全类似的。不再赘述。The entries established by the nodes in the MRT Island in the
步骤S504,S节点上,MT-default拓扑内至prefix D-loopback0的MT-default下一跳为C(假设在area1内ABR1作为prefix D-loopback0的通告节点,则使用至目的节点ABR1的MT-default路径来确定下一跳)。对于prefix D-loopback0,假设使用Tunnel Endpoint Selection方法(参考RFC7812)选择的远端节点为B,假设MRT Island中S作为GADAG root,且S<<A<<B<<C<<S,则至节点B的MRT-blue路径为S-A-B,它可用来保护上述MT-default下一跳C。假设(MT-default,D-loopback0)prefix-sid为default_SID0_D。下面对部分节点上的表项进行举例说明:Step S504: On the S node, the MT-default next hop in the MT-default topology to the prefix D-loopback0 is C (assuming that the ABR1 in the area1 is the advertised node of the prefix D-loopback0, the MT to the destination node ABR1 is used. The default path to determine the next hop). For prefix D-loopback0, assume that the remote node selected by the Tunnel Endpoint Selection method (refer to RFC7812) is B, assuming S is the GADAG root in MRT Island, and S<<A<<B<<C<<S, then The MRT-blue path of Node B is SAB, which can be used to protect the MT-default next hop C above. Assume (MT-default, D-loopback0) prefix-sid is default_SID0_D. The following is an example of the entries on some nodes:
S节点:S node:
FTN for(MT-default,D-loopback0)FTN for(MT-default, D-loopback0)
主NHLFE:下一跳为C,出标签为SRGB_C[default_SID0_D]Primary NHLFE: The next hop is C, and the outgoing label is SRGB_C[default_SID0_D]
备NHLFE:顶层入标签为SRGB_S[blue_SID0_B]Prepare NHLFE: Top-level entry tag is SRGB_S[blue_SID0_B]
底层出标签为SRGB_B[default_SID0_D]The underlying label is SRGB_B[default_SID0_D]
ILM for(MT-default,D-loopback0)ILM for(MT-default, D-loopback0)
入标签为SRGB_S[default_SID0_D]The entry tag is SRGB_S[default_SID0_D]
主NHLFE:下一跳为C,出标签为SRGB_C[default_SID0_D]Primary NHLFE: The next hop is C, and the outgoing label is SRGB_C[default_SID0_D]
备NHLFE:顶层入标签为SRGB_S[blue_SID0_B]Prepare NHLFE: Top-level entry tag is SRGB_S[blue_SID0_B]
底层出标签为SRGB_B[default_SID0_D]The underlying label is SRGB_B[default_SID0_D]
ILM for(MT-blue,B-loopback0)ILM for(MT-blue,B-loopback0)
入标签为SRGB_S[blue_SID0_B] The entry tag is SRGB_S[blue_SID0_B]
NHLFE:下一跳为A,出标签为SRGB_A[blue_SID0_B]NHLFE: The next hop is A, and the outgoing label is SRGB_A[blue_SID0_B]
A节点:A node:
ILM for(MT-blue,B-loopback0)ILM for(MT-blue,B-loopback0)
入标签为SRGB_A[blue_SID0_B]The entry tag is SRGB_A[blue_SID0_B]
NHLFE:下一跳为B,出标签为SRGB_B[blue_SID0_B]NHLFE: The next hop is B, and the outgoing label is SRGB_B[blue_SID0_B]
B节点:Node B:
ILM for(MT-blue,B-loopback0)ILM for(MT-blue,B-loopback0)
入标签为SRGB_B[blue_SID0_B]The entry tag is SRGB_B[blue_SID0_B]
NHLFE:无。表示SR-LSP已经终结。NHLFE: None. Indicates that the SR-LSP has been terminated.
ILM for(MT-default,D-loopback0)ILM for(MT-default, D-loopback0)
入标签为SRGB_B[default_SID0_D]The entry tag is SRGB_B[default_SID0_D]
NHLFE:下一跳为F,出标签为SRGB_F[default_SID0_D]NHLFE: The next hop is F, and the outgoing label is SRGB_F[default_SID0_D]
F节点:F node:
ILM for(MT-default,D-loopback0)ILM for(MT-default, D-loopback0)
入标签为SRGB_F[default_SID0_D]The entry tag is SRGB_F[default_SID0_D]
NHLFE:下一跳为D,出标签为SRGB_D[default_SID0_D]NHLFE: The next hop is D, and the outgoing label is SRGB_D[default_SID0_D]
D节点:D node:
ILM for(MT-default,D-loopback0)ILM for(MT-default, D-loopback0)
入标签为SRGB_D[default_SID0_D]The entry tag is SRGB_D[default_SID0_D]
NHLFE:无。表示SR-LSP已经终结。NHLFE: None. Indicates that the SR-LSP has been terminated.
步骤S505,对于发往目的地D-loopback0的报文,当链路S-C出现故障时,S节点将作为MRT ingress节点将流量切换至事先准备好的至远端MRT Egress节点B的MRT-blue路径,即开始将报文沿MT-blue路径S-A-B转发。 Step S505: For the packet sent to the destination D-loopback0, when the link SC fails, the S node will switch the traffic as the MRT ingress node to the MRT-blue path prepared to the remote MRT Egress Node B in advance. , that is, the message is forwarded along the MT-blue path SAB.
如果S收到的是MT-default SR标签报文,则它基于ILM for(MT-default,D-loopback0)表项转发,将入标签SRGB_S[default_SID0_D]交换成出标签SRGB_B[default_SID0_D]后,再压上SRGB_A[blue_SID0_B],发给下一跳A;如果S收到的是IP报文,则它基于FTN for(MT-default,D-loopback0)表项转发,直接在IP头上压上出标签SRGB_B[default_SID0_D]后,再压上SRGB_A[blue_SID0_B],发给下一跳A。If the S receives the MT-default SR tag packet, it is forwarded based on the ILM for (MT-default, D-loopback0) entry, and the inbound tag SRGB_S[default_SID0_D] is exchanged to the outbound tag SRGB_B[default_SID0_D]. SRGB_A[blue_SID0_B] is sent to the next hop A. If the S receives an IP packet, it is forwarded based on the FTN for (MT-default, D-loopback0) entry and is directly pressed on the IP header. After the label SRGB_B[default_SID0_D], press SRGB_A[blue_SID0_B] and send it to the next hop A.
步骤S506,A节点收到报文后,将标签SRGB_A[blue_SID0_B]交换成SRGB_B[blue_SID0_B]后发给下一跳B。Step S506, after receiving the message, the node A exchanges the label SRGB_A[blue_SID0_B] into SRGB_B[blue_SID0_B] and sends it to the next hop B.
步骤S507,B节点收到报文后,弹掉标签SRGB_B[blue_SID0_B],将标签SRGB_B[default_SID0_D]交换成SRGB_F[default_SID0_D]后发给下一跳F。Step S507, after receiving the message, the Node B bounces off the label SRGB_B[blue_SID0_B], and exchanges the label SRGB_B[default_SID0_D] into SRGB_F[default_SID0_D] and sends it to the next hop F.
步骤S508,F节点收到报文后,将标签SRGB_F[default_SID0_D]交换成SRGB_D[default_SID0_D]后发给下一跳D。Step S508, after receiving the message, the F node exchanges the label SRGB_F[default_SID0_D] into SRGB_D[default_SID0_D] and sends it to the next hop D.
步骤S509,D节点收到报文后,弹掉标签SRGB_D[default_SID0_D],基于IP头继续转发,由于IP头为D-loopback0,则报文上送控制平面。Step S509: After receiving the packet, the D node bounces off the label SRGB_D[default_SID0_D], and continues to forward the packet based on the IP header. Since the IP header is D-loopback0, the packet is sent to the control plane.
根据上述实施例,可知报文沿MRT路径转发时,在area1中的MRT Island内实际上是沿相应MRT拓扑内的SR-LSP转发,而离开area1进入area2后,将沿默认拓扑内的SR-LSP转发。符合FEC7812定义的转发规则。According to the foregoing embodiment, it is known that when the packet is forwarded along the MRT path, the MRT Island in the area1 is actually forwarded along the SR-LSP in the corresponding MRT topology, and after leaving the area1 to enter the area2, the SR in the default topology will be along. LSP forwarding. Conforms to the forwarding rules defined by FEC7812.
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所 述的方法。Through the description of the above embodiments, those skilled in the art can clearly understand that the method according to the above embodiment can be implemented by means of software plus a necessary general hardware platform, and of course, by hardware, but in many cases, the former is A better implementation. Based on such understanding, the technical solution of the present invention, which is essential or contributes to the prior art, may be embodied in the form of a software product stored in a storage medium (such as ROM/RAM, disk, The optical disc includes a plurality of instructions for causing a terminal device (which may be a mobile phone, a computer, a server, or a network device, etc.) to perform various embodiments of the present invention. The method described.
在本实施例中还提供了一种报文转发装置,该装置用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。如以下所使用的,术语“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。In this embodiment, a message forwarding device is also provided, which is used to implement the foregoing embodiments and preferred embodiments, and has not been described again. As used below, the term "module" may implement a combination of software and/or hardware of a predetermined function. Although the apparatus described in the following embodiments is preferably implemented in software, hardware, or a combination of software and hardware, is also possible and contemplated.
图6是根据本发明实施例的报文转发装置的结构框图,该装置可以应用于第一节点中,如图6所示,该装置包括接收模块62、查找模块64和转发模块66,下面对该装置进行说明:FIG. 6 is a structural block diagram of a message forwarding apparatus according to an embodiment of the present invention. The apparatus may be applied to a first node. As shown in FIG. 6, the apparatus includes a receiving module 62, a searching module 64, and a forwarding module 66. Explain the device:
接收模块62,设置为接收待转发的报文,其中,该报文的目的地址为第二节点;查找模块64,连接至上述接收模块62,设置为在预先生成的拓扑中查找与上述报文对应的目标拓扑,其中,该预先生成的拓扑包括:根据最大冗余树MRT算法生成得到的第一拓扑和第二拓扑,根据最短路径优先SPF算法得到的第三拓扑,该第一拓扑和第二拓扑以及第三拓扑彼此各不相同;转发模块66,连接至上述查找模块64,设置为在上述目标拓扑中查找用于转发到第二节点的下一跳节点,并基于预定转发机制将上述报文转发到下一跳节点,其中,该预定转发机制采用基于每拓扑每前缀索引prefix-sid的隧道嵌套方式的分段路由转发机制。The receiving module 62 is configured to receive the packet to be forwarded, where the destination address of the packet is the second node, and the searching module 64 is connected to the receiving module 62, and is configured to search for the packet in the pre-generated topology. Corresponding target topology, wherein the pre-generated topology comprises: a first topology and a second topology generated according to a maximum redundancy tree MRT algorithm, and a third topology obtained according to a shortest path first SPF algorithm, the first topology and the first topology The second topology and the third topology are different from each other; the forwarding module 66 is connected to the foregoing searching module 64, configured to search for the next hop node for forwarding to the second node in the target topology, and to perform the foregoing according to a predetermined forwarding mechanism. The message is forwarded to the next hop node, wherein the predetermined forwarding mechanism adopts a segmented route forwarding mechanism based on the tunnel nesting manner of the prefix-sid per prefix per topology.
图7是根据本发明实施例的报文转发装置的优选结构框图,如图7所示(图7仅是一种示例),该装置除包括图6所示的所有模块外,还包括确定模块72,下面对该装置进行说明:FIG. 7 is a block diagram showing a preferred structure of a message forwarding device according to an embodiment of the present invention. As shown in FIG. 7 (FIG. 7 is only an example), the device includes a determining module in addition to all the modules shown in FIG. 6. 72, the device is described below:
确定模块72,连接至上述接收模块62,设置为按照上述MRT算法从第一拓扑中至目的地址的路由和第二拓扑中至目的地址的路由中确定用于保护上述第三拓扑中至目的地址的路由的保护路由,并确定该保护路由对应的拓扑为保护拓扑;和/或,按照颜色标志信息从上述第一拓扑中至隧道终点的路由和第二拓扑中至隧道终点的路由中确定用于保护上述第三拓扑中至目的地址的路由的保护路由,并确定该保护路由对应的拓扑为保 护拓扑,其中,该隧道终点为第一节点为保护目的地址而选择的一个远端节点,该远端节点针对故障点是无回路loop-free的,当故障发生时第一节点使用至远端节点的MRT隧道封装报文。The determining module 72 is connected to the receiving module 62, and is configured to determine, according to the foregoing MRT algorithm, a route from the first topology to the destination address and a route from the second topology to the destination address, to protect the third topology to the destination address. Protecting the route of the route, and determining that the topology corresponding to the protection route is a protection topology; and/or determining the route from the first topology to the tunnel end point and the route from the second topology to the tunnel end point according to the color flag information. Protecting the protection route of the route to the destination address in the foregoing third topology, and determining the topology corresponding to the protection route is to protect The topology of the tunnel, wherein the tunnel end point is a remote node selected by the first node for the protection destination address, and the remote node is loop-free for the fault point, and the first node is used to the remote end when the fault occurs. The MRT tunnel of the node encapsulates the packet.
在一个可选的实施例中,上述查找模块64可以通过如下方式在预先生成的拓扑中查找与上述报文对应的目标拓扑:判断第三拓扑中的用于到达第二节点的链路是否出现故障;在判断出没有出现故障的情况下,确定上述第三拓扑为目标拓扑;和/或,在判断出出现故障的情况下,确定保护拓扑为目标拓扑。在本实施例中,当链路没有故障时,可以继续按照默认的拓扑进行报文转发,当链路出现故障后,需要使用保护拓扑进行报文转发。In an optional embodiment, the foregoing searching module 64 may search for a target topology corresponding to the foregoing packet in a pre-generated topology by determining whether a link for reaching the second node in the third topology is present. The fault is determined; in the case that it is determined that there is no fault, the third topology is determined to be the target topology; and/or, in the case that the fault is determined, the protection topology is determined to be the target topology. In this embodiment, when the link is faulty, the packet can be forwarded according to the default topology. After the link is faulty, the protection topology is used to forward the packet.
在一个可选的实施例中,上述装置还包括第一处理模块,设置为在接收待转发的所述报文之前,根据MRT算法生成得到第一拓扑和第二拓扑,以及根据SPF算法生成得到第三拓扑。In an optional embodiment, the foregoing apparatus further includes a first processing module, configured to: before receiving the packet to be forwarded, generate a first topology and a second topology according to an MRT algorithm, and generate and generate according to an SPF algorithm. The third topology.
在一个可选的实施例中,上述第一处理模块可以通过如下方式根据上述MRT算法生成得到第一拓扑和第二拓扑,以及根据SPF算法生成得到第三拓扑:确定上述第一节点所在的MRT Island,其中,该MRT Island是通过在第一节点以及与第一节点处于同一域area或同一层次level的其他节点上的OSPF或者ISIS实例下使能分段路由SR以及最大冗余树配置文件MRT profile后在第一节点所在的area或level内由第一节点和其他节点相互协商形成的;基于上述MRT Island运行MRT算法生成第一拓扑和第二拓扑,以及,基于上述area或level运行SPF算法生成第三拓扑。In an optional embodiment, the first processing module may generate the first topology and the second topology according to the foregoing MRT algorithm, and generate a third topology according to the SPF algorithm: determining the MRT where the first node is located. Island, where the MRT Island is enabled by the OSPF or ISIS instance at the first node and other nodes at the same domain area or level as the first node, and the maximum redundant tree profile MRT After the profile is formed by the first node and other nodes in the area or level where the first node is located; generating the first topology and the second topology based on the MRT Island running MRT algorithm, and running the SPF algorithm based on the above area or level Generate a third topology.
在一个可选的实施例中,上述MRT profile中指定采用上述预定转发机制。即,采用上述的基于每拓扑每前缀索引prefix-sid的隧道嵌套方式的分段路由转发机制。In an optional embodiment, the foregoing predetermined forwarding mechanism is specified in the MRT profile. That is, the segmented route forwarding mechanism based on the tunnel nesting manner of the prefix-sid per prefix per topology is adopted.
在一个可选的实施例中,上述装置还包括第二处理模块,设置为执行以下操作至少之一:为第一节点本地的节点级prefix针对第一拓扑分配第一prefix-sid,并将该第一prefix-sid在MRT Island所在的域area或层次level 内泛洪;为第一节点本地的节点级prefix针对第二拓扑分配第二prefix-sid,并将该第二prefix-sid在MRT Island所在的域area或层次level内泛洪;为第一节点本地的节点级和非节点级prefix针对第三拓扑分配第三prefix-sid,并将该第三prefix-sid在第一节点所在的所有域area或层次level内泛洪;接收其他节点上的上述预先生成的拓扑的prefix-sid,记录该其他节点上的上述预先生成的拓扑的prefix-sid以及将该其他节点上的预先生成的拓扑的prefix-sid继续通告给除其他节点之外的节点。在本实施例中,上述第一prefix-sid、第二prefix-sid、第三prefix-sid彼此是相互独立的。In an optional embodiment, the apparatus further includes a second processing module, configured to perform at least one of: assigning a first prefix-sid to the first topology for a node-level prefix local to the first node, and The first prefix-sid is at the domain or level of the MRT Island. Flooding; assigning a second prefix-sid to the second topology for the node-level prefix local to the first node, and flooding the second prefix-sid in the domain or level of the MRT Island; The local node-level and non-node-level prefix allocates a third prefix-sid for the third topology, and floods the third prefix-sid in all domain areas or levels of the first node; receiving the above on other nodes The prefix-sid of the pre-generated topology records the prefix-sid of the pre-generated topology on the other node and continues to advertise the prefix-sid of the pre-generated topology on the other node to nodes other than the other nodes. In this embodiment, the first prefix-sid, the second prefix-sid, and the third prefix-sid are independent of each other.
在一个可选的实施例中,上述转发模块66可以通过如下方式将报文转发到上述下一跳节点:确定与上述报文匹配的第一节点的出标签;将上述第一节点的出标签封装到上述报文上,并将封装后的报文发送到下一跳节点。在本实施例中,针对不同类型的报文,标签的封装方式是不同的。In an optional embodiment, the forwarding module 66 may forward the packet to the next hop node by: determining an outgoing label of the first node that matches the packet; and using the outgoing label of the first node. The packet is encapsulated into the foregoing packet, and the encapsulated packet is sent to the next hop node. In this embodiment, the label encapsulation manner is different for different types of packets.
在一个可选的实施例中,上述转发模块66可以通过如下方式确定与报文匹配的第一节点的出标签:当上述目标拓扑为第三拓扑时,上述第一节点的对应目标拓扑的出标签由第一节点基于目的地址对应的目的前缀prefix的第三前缀索引prefix-sid与下一跳节点的SRGB计算得到的。In an optional embodiment, the forwarding module 66 may determine, according to the following manner, an outgoing label of the first node that matches the packet: when the target topology is the third topology, the corresponding target topology of the first node is The label is calculated by the first node based on the third prefix index prefix-sid of the destination prefix prefix corresponding to the destination address and the SRGB of the next hop node.
在一个可选的实施例中,上述转发模块66可以通过如下方式确定与上述报文匹配的第一节点的出标签:当上述目标拓扑为第一拓扑或第二拓扑时:若上述第二节点为MRT Island内的节点并且该目的地址对应的目的前缀prefix为第二节点的节点级前缀prefix时,上述第一节点通过如下方式确定第一节点的对应上述目标拓扑的出标签:上述第一节点的对应目标拓扑的出标签由第一节点基于上述第二节点的节点级前缀prefix的对应目标拓扑的前缀索引prefix-sid与下一跳节点的SRGB计算得到;若上述第二节点不为MRT Island内的节点或者目的地址对应的目的前缀prefix为第二节点的非节点级前缀prefix时,上述第一节点判断下一跳节点是否为MRT Island外的节点;在判断结果为否时,第一节点通过如下方式确定第一节点的对应上述目标拓扑的出标签:第一节点的对应上述目标拓扑的出标签为标签栈,外层标签为上述第一节点至隧道终点的标签,内层标签为 上述隧道终点至目的前缀prefix的标签;其中,该外层标签由第一节点基于上述隧道终点的节点级前缀prefix的对应目标拓扑的前缀索引prefix-sid与目标拓扑内至上述隧道终点的下一跳节点的SRGB计算得到,该内层标签由第一节点基于目的前缀prefix的对应第三拓扑的前缀索引prefix-sid与隧道终点的SRGB计算得到;在判断结果为是时,上述第一节点通过如下方式确定第一节点的对应目标拓扑的出标签:上述第一节点的对应目标拓扑的出标签由第一节点基于上述目的前缀prefix的对应第三拓扑的前缀索引prefix-sid与下一跳节点的SRGB计算得到的。In an optional embodiment, the forwarding module 66 may determine, according to the manner, the outgoing label of the first node that matches the foregoing packet: when the target topology is the first topology or the second topology: if the second node is When the node in the MRT Island is the node prefix prefix of the second node, the first node determines the outbound label of the first node corresponding to the target topology by: The outbound label of the corresponding target topology is calculated by the first node based on the prefix index prefix-sid of the corresponding target topology of the node-level prefix prefix of the second node and the SRGB of the next hop node; if the second node is not the MRT Island When the destination prefix corresponding to the node or the destination address is the non-node level prefix of the second node, the first node determines whether the next hop node is a node other than the MRT Island; when the judgment result is no, the first node Determining an outbound label of the first node corresponding to the target topology by: the first node corresponding to the target topology The outgoing label is the label stack, and the outer label is the label of the first node to the tunnel end point, and the inner label is a label of the tunnel end point to the destination prefix prefix; wherein the outer label is prefixed by the prefix index of the corresponding target topology of the first node based on the node level prefix of the tunnel end point and the next to the tunnel end point in the target topology The SRGB calculation of the hop node is obtained by the first node based on the prefix index prefix-sid of the third topology based on the destination prefix prefix and the SRGB of the tunnel end point; when the judgment result is yes, the first node passes The outbound label of the corresponding target topology of the first node is determined as follows: the outbound label of the corresponding target topology of the first node is determined by the first node based on the prefix index prefix-sid and the next hop node of the corresponding third topology of the destination prefix prefix The SRGB is calculated.
在一个可选的实施例中,上述转发模块66可以通过如下方式至少之一将上述第一节点的出标签封装到报文上:当上述报文的报文类型为互联网协议IP报文时,在上述IP报文的IP头上压上第一节点的出标签;当上述报文的报文类型为分段路由SR标签报文时,将上述SR标签报文的标签栈的栈顶标签替换成第一节点的出标签。In an optional embodiment, the forwarding module 66 may encapsulate the outgoing label of the first node into the packet by using at least one of the following manners: when the packet type of the packet is an Internet Protocol IP packet, The outbound label of the first node is pressed on the IP header of the IP packet; when the packet type of the packet is a fragmented route SR label, the top label of the label stack of the SR label is replaced. The outgoing label of the first node.
在一个可选的实施例中,上述转发模块66可以通过如下方式确定第一节点的出标签:当上述第一节点和第二节点为同一节点时,则上述第一节点基于目标拓扑确定的下一跳节点为上述第一节点,该第一节点没有出标签。In an optional embodiment, the forwarding module 66 may determine the outgoing label of the first node by: when the first node and the second node are the same node, the first node is determined according to the target topology. The one-hop node is the first node, and the first node does not have a label.
在一个可选的实施例中,上述装置还包括第三处理模块,设置为当上述第一节点和第二节点为同一节点时,执行以下操作:当上述报文的报文类型为互联网协议IP报文时,上述第一节点将报文上送至第一节点的控制平面;和/或,当上述报文的报文类型为分段路由SR标签报文时,上述第一节点将SR标签报文的标签栈的栈顶标签弹出,并继续基于上述报文的标签栈的下层标签或IP头查表转发。In an optional embodiment, the foregoing apparatus further includes a third processing module, configured to: when the first node and the second node are the same node, perform the following operations: when the packet type of the packet is an Internet Protocol IP address When the packet is sent, the first node sends the packet to the control plane of the first node; and/or, when the packet type of the packet is a fragmented route SR label packet, the first node sends the SR label. The stack top label of the label stack of the message pops up, and continues to be forwarded based on the lower layer label or IP header lookup table of the label stack of the above message.
需要说明的是,上述各个模块是可以通过软件或硬件来实现的,对于后者,可以通过以下方式实现,但不限于此:上述模块均位于同一处理器中;或者,上述各个模块以任意组合的形式分别位于不同的处理器中。It should be noted that each of the above modules may be implemented by software or hardware. For the latter, the foregoing may be implemented by, but not limited to, the foregoing modules are all located in the same processor; or, the above modules are in any combination. The forms are located in different processors.
本发明的实施例还提供了一种存储介质。可选地,在本实施例中,上 述存储介质可以被设置为存储用于执行上述步骤的程序代码。Embodiments of the present invention also provide a storage medium. Optionally, in this embodiment, on The storage medium may be arranged to store program code for performing the steps described above.
可选地,在本实施例中,上述存储介质可以包括但不限于:U盘、只读存储器(Read-Only Memory,简称为ROM)、随机存取存储器(Random Access Memory,简称为RAM)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。Optionally, in the embodiment, the foregoing storage medium may include, but is not limited to, a USB flash drive, a Read-Only Memory (ROM), and a Random Access Memory (RAM). A variety of media that can store program code, such as a hard disk, a disk, or an optical disk.
可选地,在本实施例中,处理器根据存储介质中已存储的程序代码执行上述各步骤。Optionally, in the embodiment, the processor performs the above steps according to the stored program code in the storage medium.
可选地,本实施例中的具体示例可以参考上述实施例及可选实施方式中所描述的示例,本实施例在此不再赘述。For example, the specific examples in this embodiment may refer to the examples described in the foregoing embodiments and the optional embodiments, and details are not described herein again.
通过本发明实施例中的方法,能够填补相关技术中的分段路由与MRT技术结合的缺口,为未来网络的演进提供了有价值的探索。The method in the embodiment of the present invention can fill the gap between the segmentation route and the MRT technology in the related technology, and provides a valuable exploration for the evolution of the future network.
显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。It will be apparent to those skilled in the art that the various modules or steps of the present invention described above can be implemented by a general-purpose computing device that can be centralized on a single computing device or distributed across a network of multiple computing devices. Alternatively, they may be implemented by program code executable by the computing device such that they may be stored in the storage device by the computing device and, in some cases, may be different from the order herein. The steps shown or described are performed, or they are separately fabricated into individual integrated circuit modules, or a plurality of modules or steps thereof are fabricated as a single integrated circuit module. Thus, the invention is not limited to any specific combination of hardware and software.
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。The above description is only the preferred embodiment of the present invention, and is not intended to limit the present invention, and various modifications and changes can be made to the present invention. Any modifications, equivalent substitutions, improvements, etc. made within the spirit and scope of the present invention are intended to be included within the scope of the present invention.
如上所述,本发明实施例提供的一种报文转发方法及装置具有以下有益效果:在分段路由网络中引入MRT功能,从而实现了分段路由网络与 MTR功能结合的目的。 As described above, the packet forwarding method and apparatus provided by the embodiments of the present invention have the following beneficial effects: the MRT function is introduced in the segment routing network, thereby implementing the segment routing network and The purpose of combining MTR functions.
Claims (16)
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN201610682060.5A CN107770063A (en) | 2016-08-17 | 2016-08-17 | Message forwarding method and device |
| CN201610682060.5 | 2016-08-17 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2018033060A1 true WO2018033060A1 (en) | 2018-02-22 |
Family
ID=61196426
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/CN2017/097500 Ceased WO2018033060A1 (en) | 2016-08-17 | 2017-08-15 | Message switching method and device |
Country Status (2)
| Country | Link |
|---|---|
| CN (1) | CN107770063A (en) |
| WO (1) | WO2018033060A1 (en) |
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN112491701A (en) * | 2018-04-13 | 2021-03-12 | 华为技术有限公司 | Message forwarding method and device |
| EP3915230A4 (en) * | 2019-01-24 | 2022-01-19 | Telefonaktiebolaget LM Ericsson (publ) | METHOD AND SYSTEM FOR PREVENTING MICRO LOOPS WHEN CHANGING NETWORK TOPOLOGY |
| CN115834462A (en) * | 2021-09-15 | 2023-03-21 | 华为技术有限公司 | Routing information processing method, communication device and communication network |
Families Citing this family (8)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN110620728B (en) * | 2018-06-19 | 2022-07-15 | 中兴通讯股份有限公司 | Message transmission method and device and computer readable storage medium |
| CN110830354B (en) * | 2018-08-08 | 2021-12-03 | 北京华为数字技术有限公司 | Data forwarding method, device, equipment and storage medium |
| CN109861913B (en) * | 2018-12-25 | 2020-03-20 | 华为技术有限公司 | Method and device for advertising prefix identification of cross-interior gateway protocol |
| CN114844818A (en) * | 2019-01-28 | 2022-08-02 | 华为技术有限公司 | A method, device and system for establishing a cross-domain forwarding path |
| CN113364680A (en) * | 2020-03-06 | 2021-09-07 | 华为技术有限公司 | Method and device for issuing and receiving SR (scheduling request) strategy |
| WO2022012690A1 (en) * | 2020-07-17 | 2022-01-20 | 华为技术有限公司 | Router advertisement method and related device |
| CN114157931A (en) * | 2020-09-07 | 2022-03-08 | 中兴通讯股份有限公司 | Method, system, device and storage medium for determining topological relation of wavelength division device |
| CN112272144B (en) * | 2020-10-28 | 2022-11-25 | 北京轻网科技股份有限公司 | Message forwarding method and device |
Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US8861340B1 (en) * | 2012-03-12 | 2014-10-14 | Juniper Networks, Inc. | Fast reroute using maximally redundant trees |
| CN104660507A (en) * | 2013-11-22 | 2015-05-27 | 华为技术有限公司 | Control method and device for data flow forwarding route |
| CN104754025A (en) * | 2013-12-27 | 2015-07-01 | 英特尔公司 | Programmable Distributed Networking |
| CN105453491A (en) * | 2013-07-19 | 2016-03-30 | 瑞典爱立信有限公司 | Extended remote LFA fast reroute |
-
2016
- 2016-08-17 CN CN201610682060.5A patent/CN107770063A/en active Pending
-
2017
- 2017-08-15 WO PCT/CN2017/097500 patent/WO2018033060A1/en not_active Ceased
Patent Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US8861340B1 (en) * | 2012-03-12 | 2014-10-14 | Juniper Networks, Inc. | Fast reroute using maximally redundant trees |
| CN105453491A (en) * | 2013-07-19 | 2016-03-30 | 瑞典爱立信有限公司 | Extended remote LFA fast reroute |
| CN104660507A (en) * | 2013-11-22 | 2015-05-27 | 华为技术有限公司 | Control method and device for data flow forwarding route |
| CN104754025A (en) * | 2013-12-27 | 2015-07-01 | 英特尔公司 | Programmable Distributed Networking |
Cited By (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN112491701A (en) * | 2018-04-13 | 2021-03-12 | 华为技术有限公司 | Message forwarding method and device |
| CN112491701B (en) * | 2018-04-13 | 2024-06-07 | 华为技术有限公司 | Method and device for forwarding message |
| EP3915230A4 (en) * | 2019-01-24 | 2022-01-19 | Telefonaktiebolaget LM Ericsson (publ) | METHOD AND SYSTEM FOR PREVENTING MICRO LOOPS WHEN CHANGING NETWORK TOPOLOGY |
| US12058028B2 (en) | 2019-01-24 | 2024-08-06 | Telefonaktiebolaget Lm Ericsson (Publ) | Method and system to prevent micro-loops during a network topology change |
| CN115834462A (en) * | 2021-09-15 | 2023-03-21 | 华为技术有限公司 | Routing information processing method, communication device and communication network |
Also Published As
| Publication number | Publication date |
|---|---|
| CN107770063A (en) | 2018-03-06 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| WO2018033060A1 (en) | Message switching method and device | |
| US10992574B2 (en) | Packet forwarding method and device | |
| EP2761827B1 (en) | Incremental deployment of mrt based ipfrr | |
| US9525619B2 (en) | Scalable edge node protection using segment routing | |
| US9444677B2 (en) | Scalable edge node protection using IPv6 segment routing extension header | |
| WO2018019131A1 (en) | Method and device for forwarding message | |
| CN111385207B (en) | Service data forwarding method, network device and network system | |
| CN105871722B (en) | Label structure and label message forwarding method and device | |
| US9143395B2 (en) | Scalable BGP protection from edge node failure using context labels in data packets identifying backup router mirror table | |
| US12034632B2 (en) | Fault protection method, node, and storage medium | |
| EP2761832B1 (en) | Optimizing endpoint selection of mrt-frr detour paths | |
| US10237175B2 (en) | Entropy prefix segment identifier for use with entropy label in segment routing networks | |
| EP2911350B1 (en) | Neighbor-label distribution with label distribution protocol | |
| WO2016115850A1 (en) | Segment routing processing method, processing apparatus and sending apparatus | |
| US20150009803A1 (en) | Scalable bgp protection from edge node failure using dynamically assigned labels in data packets | |
| WO2016198015A1 (en) | Packet transmission method, apparatus, and system | |
| WO2018082652A1 (en) | Information transmission method, apparatus and system and apparatus | |
| US20120124238A1 (en) | Prioritization of routing information updates | |
| US20210281507A1 (en) | Parameter notification and obtaining methods and devices, and storage medium | |
| CN114338277B (en) | Method, device, equipment and readable medium for protecting VPN network nodes in Anycast scenario | |
| CN118101378A (en) | A communication method, device, equipment and medium for virtual private network |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| 121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 17841032 Country of ref document: EP Kind code of ref document: A1 |
|
| NENP | Non-entry into the national phase |
Ref country code: DE |
|
| 122 | Ep: pct application non-entry in european phase |
Ref document number: 17841032 Country of ref document: EP Kind code of ref document: A1 |