Fault detection method, device and PE equipment
By generating an SRv6 message containing a BFD indicator in the PE device, a BFD session between the head and tail nodes is realized, which solves the problem of long delay in service stream transmission, and realizes timely fault detection and service stream switching.
Patent Information
- Application Number
- CN202080001138.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2020-06-30
- Publication Date
- 2025-04-18
- Estimated Expiration
- 2040-06-30
AI Technical Summary
When a PE device detects a link failure, the service streaming delay is too long, resulting in the inability to switch to the backup link in time.
By generating Internet Communication Protocol Version 6 (SRv6) packets containing bidirectional forwarding detection (BFD) indicators, a BFD session between the head and tail nodes is realized, PW tunnel failure is detected in a timely manner and traffic flows are switched to the backup tunnel.
It realizes timely switching of service flows when a fault is detected, reduces the transmission delay of service flows and ensures high availability of the network.
Smart Images

Figure CN114208129B_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of communication technology, and in particular to a fault detection method, device and PE equipment. Background Art
[0002] With the evolution of Ethernet Virtual Private Network (EVPN), the Label Distribution Protocol (LDP) and Internet Protocol version 6 Segment Routing (SRv6) coexist in EVPN. For example, Figure 1 As shown in the figure, A1 accesses Provider Edge (PE) 1 and PE2, and PE1 is connected to PE2 and PE3. A2 accesses PE3 and PE4, and PE3 is connected to PE1 and PE4. PE2 is connected to PE4. Among them, A1, PE1 and PE2 form a Multi-protocol Label Switching (MPLS) domain, and A1 and PE1, and A1 and PE2 communicate through MPLS pseudo wires (PW). PE1, PE2, PE3, and PE4 form an SRv6 domain, and PE1 and PE3, and PE2 and PE4 communicate through SRv6 PW. A2, PE3 and PE4 form an MPLS domain, and A2 and PE3, and A2 and PE4 communicate through MPLS PW.
[0003] There are multiple communication links between A1 and A2. Among them, A1-PE1-PE3-A2 is set as the main link, and A1-PE2-PE4-A2 is set as the backup link of the main link. PE1 detects whether there is a link failure between PE1 and PE3 through the fault detection mechanism of SRv6. For example, PE1 can detect whether there is a link failure by sending a ping command to PE3. If no response message is received from PE3 within the specified time period, PE1 determines that there is a link failure. If a link failure is detected, PE1 sends a Transmission Control Protocol (TCP) message to A1 according to the LDP protocol to notify A1 that there is a link failure between PE1 and PE3. After receiving the TCP message, A1 perceives the failure of the main link composed of A1-PE1-PE3-A2, and then switches the service flow to the backup link.
[0004] However, when PE1 determines that the link between PE1 and PE3 is faulty, the service flow has already incurred transmission delay. At this point, PE1 still needs to construct a TCP message and send it to A1. This process will further extend the transmission delay of the service flow, making it impossible for A1 to switch the service flow carried by the faulty link to other backup links in time, further extending the transmission delay. Summary of the invention
[0005] The present application provides a fault detection method, apparatus and PE device to timely switch the service flow carried by the faulty link to other backup links to avoid long transmission delay of the service flow. The specific technical solution is as follows:
[0006] In a first aspect, the present application provides a fault detection method, the method being applied to a first service provider edge PE device in an Ethernet virtual private network EVPN, the first PE device being connected to a second PE device via an Internet communication protocol version 6 segment routing pseudowire SRv6 PW tunnel, the method comprising:
[0007] Generate an Internet Communication Protocol Version 6 SRv6 message, the SRv6 message including a first indicator, the first indicator being used to indicate that an inner layer message of the SRv6 message is a Bidirectional Forwarding Detection BFD message;
[0008] Send the SRv6 message to the second PE device, so that when the second PE device is the tail node, the second PE device establishes a BFD session with the head node according to the BFD message, and when the head node detects through the BFD session that there is a fault in the PW tunnel between the head node and the tail node, the service flow is switched to the backup tunnel; or, when the second PE device is a bonding device, the second PE device transparently transmits the BFD message to the tail node, so that a BFD session is established between the head node and the tail node, and when the head node detects through the BFD session that there is a fault in the PW tunnel between the head node and the tail node, the service flow is switched to the backup tunnel;
[0009] The head node and the tail node are both nodes connected to a user edge CE device.
[0010] In a possible implementation, the head node is a first multi-protocol label switching MPLS device, and the first PE device is connected to the first multi-protocol label switching MPLS device through a first multi-protocol label switching pseudowire MPLS PW tunnel;
[0011] Before generating the SRv6 message, the method includes:
[0012] Receiving a first MPLS message sent by the first MPLS device;
[0013] Decapsulating the first MPLS message, and reading a pseudo wire associated control channel PW ACH field in the first MPLS message;
[0014] If the value of the PW ACH field is a BFD control word, extracting a BFD message after the PW ACH field, wherein the BFD control word is used to indicate that the inner message included in the first MPLS message is a BFD message;
[0015] The generating of the SRv6 message includes:
[0016] The BFD message is encapsulated to obtain the SRv6 message, and the value of the inner routing header field of the SRv6 message is the first indicator.
[0017] In a possible implementation manner, after extracting the BFD message after the PW ACH field, the method further includes:
[0018] Determine whether the configuration information of the PE device includes adhesion configuration information, where the adhesion configuration information is used to indicate that the first PE device is used to implement intercommunication between the MPLS network and the SRv6 network;
[0019] If the configuration information of the device itself includes the adhesion configuration information, the step of encapsulating the BFD message to obtain the SRv6 message is performed.
[0020] In a second aspect, the present application provides a fault detection method, the method being applied to a second service provider edge PE device in an Ethernet virtual private network EVPN, the second PE device being connected to a first PE device through a first Internet communication protocol version 6 segment routing pseudowire SRv6 PW tunnel; the method comprising:
[0021] Receive an Internet Communication Protocol Version 6 SRv6 message sent by the first PE device, where the SRv6 message includes a first indicator, where the first indicator is used to indicate that an inner layer message of the SRv6 message is a bidirectional forwarding detection BFD message;
[0022] If the second PE device is an egress node, a BFD session is established with the head node according to the BFD message, so that when the head node detects through the BFD session that a PW tunnel between the head node and the egress node is faulty, the service flow is switched to a standby tunnel;
[0023] If the second PE device is a bonding device, the BFD message is transparently transmitted to the tail node, so that a BFD session is established between the head node and the tail node. When the head node detects a fault in the PW tunnel between the head node and the tail node through the BFD session, the service flow is switched to the backup tunnel.
[0024] The head node and the tail node are both nodes connected to a user edge CE device.
[0025] In a possible implementation, the tail node is a second multi-protocol label switching (MPLS) device, and the second device is connected to the second PE device;
[0026] If the second PE device is not the egress node, before transparently transmitting the BFD message to the egress node, the method further includes:
[0027] Reading the inner routing header field of the SRv6 message;
[0028] If it is determined that the value of the inner routing header field is the first indicator, extracting the BFD message from the SRv6 message;
[0029] encapsulate the BFD message to obtain a second MPLS message, wherein a value of a pseudo wire associated control channel PW ACH field of the second MPLS message is a BFD control word;
[0030] The transparently transmitting the BFD message to the tail node includes:
[0031] Send the second MPLS message to the second MPLS device.
[0032] In a possible implementation manner, after receiving the SRv6 message sent by the first PE device, the method further includes:
[0033] Determine whether the configuration information of the second PE device includes adhesion configuration information, where the adhesion configuration information is used to indicate that the second PE device is used to implement intercommunication between the SRv6 network and the MPLS network;
[0034] If the configuration information of the device itself includes the sticky configuration information, the device itself is determined to be a sticky device;
[0035] If its own configuration information does not include the adhesion configuration information, it is determined that it is the tail node.
[0036] In a third aspect, the present application provides a fault detection device, the device being applied to a first service provider edge PE device in an Ethernet virtual private network EVPN, the first PE device being connected to a second PE device via an Internet communication protocol version 6 segment routing pseudowire SRv6 PW tunnel, the device comprising:
[0037] A generating module, configured to generate an Internet Communication Protocol Version 6 SRv6 message, wherein the SRv6 message includes a first indicator, wherein the first indicator is used to indicate that an inner layer message of the SRv6 message is a bidirectional forwarding detection BFD message;
[0038] A sending module, used for sending the SRv6 message to the second PE device, so that when the second PE device is a tail node, the second PE device establishes a BFD session with the head node according to the BFD message, and when the head node detects through the BFD session that there is a fault in the PW tunnel between the head node and the tail node, the service flow is switched to the backup tunnel; or, when the second PE device is a bonding device, the second PE device transparently transmits the BFD message to the tail node, so that a BFD session is established between the head node and the tail node, and when the head node detects through the BFD session that there is a fault in the PW tunnel between the head node and the tail node, the service flow is switched to the backup tunnel;
[0039] The head node and the tail node are both nodes connected to a user edge CE device.
[0040] In a possible implementation, the head node is a first multi-protocol label switching MPLS device, and the first PE device is connected to the first multi-protocol label switching MPLS device through a first multi-protocol label switching pseudowire MPLS PW tunnel;
[0041] The device also includes:
[0042] A receiving module, configured to receive a first MPLS message sent by the first MPLS device before the generating module generates the SRv6 message;
[0043] A decapsulation module, configured to decapsulate the first MPLS message and read a pseudo wire associated control channel PW ACH field in the first MPLS message;
[0044] an extraction module, configured to extract a BFD message after the PW ACH field if the value of the PW ACH field is a BFD control word, wherein the BFD control word is used to indicate that the inner layer message included in the first MPLS message is a BFD message;
[0045] The generating module is specifically configured to encapsulate the BFD message to obtain the SRv6 message, wherein the value of the inner routing header field of the SRv6 message is the first indicator.
[0046] In a possible implementation manner, the device further includes:
[0047] A judgment module is used to judge whether its own configuration information includes adhesion configuration information, and the adhesion configuration information is used to indicate that the first PE device is used to realize the intercommunication between the MPLS network and the SRv6 network; if its own configuration information includes the adhesion configuration information, the generation module is triggered to encapsulate the BFD message to obtain the SRv6 message.
[0048] In a fourth aspect, the present application provides a fault detection device, the device being applied to a second service provider edge PE device in an Ethernet virtual private network EVPN, the second PE device being connected to a first PE device through a first Internet communication protocol version 6 segment routing pseudowire SRv6 PW tunnel; the device comprising:
[0049] A receiving module, configured to receive an Internet Communication Protocol Version 6 SRv6 message sent by the first PE device, wherein the SRv6 message includes a first indicator, and the first indicator is used to indicate that an inner layer message of the SRv6 message is a bidirectional forwarding detection BFD message;
[0050] An establishing module, configured to establish a BFD session with a head node according to the BFD message if the second PE device is a tail node, so that when the head node detects through the BFD session that a PW tunnel between the head node and the tail node is faulty, the service flow is switched to a backup tunnel;
[0051] A transparent transmission module, configured to transparently transmit the BFD message to the tail node if the second PE device is a bonding device, so that a BFD session is established between the head node and the tail node, and when the head node detects through the BFD session that a PW tunnel between the head node and the tail node is faulty, switch the service flow to a backup tunnel;
[0052] The head node and the tail node are both nodes connected to a user edge CE device.
[0053] In a possible implementation, the tail node is a second multi-protocol label switching MPLS device, and the second MPLS device is connected to the second PE device;
[0054] The device also includes:
[0055] A reading module, used to read the inner routing header field of the SRv6 message;
[0056] an extraction module, configured to extract the BFD message from the SRv6 message if it is determined that the value of the inner routing header field is the first indicator;
[0057] an encapsulation module, configured to encapsulate the BFD message to obtain a second MPLS message, wherein a value of a pseudo wire associated control channel PW ACH field of the second MPLS message is a BFD control word;
[0058] The transparent transmission module is specifically used to send the second MPLS message to the second MPLS device.
[0059] In a possible implementation, the device further includes: a judgment module;
[0060] The judging module is used for:
[0061] Determine whether the configuration information of the second PE device includes adhesion configuration information, where the adhesion configuration information is used to indicate that the second PE device is used to implement intercommunication between the SRv6 network and the MPLS network;
[0062] If the configuration information of the second PE device includes the sticky configuration information, determining that the second PE device is a sticky device;
[0063] If the configuration information of the second PE device does not include the adhesion configuration information, it is determined that the second PE device is an end node.
[0064] In a fifth aspect, the present application further provides a PE device, including a processor, a communication interface, a memory and a communication bus, wherein the processor, the communication interface and the memory communicate with each other through the communication bus;
[0065] Memory, used to store computer programs;
[0066] The processor is used to implement any of the above-mentioned fault detection method steps when executing the program stored in the memory.
[0067] In a sixth aspect, the present application further provides a computer-readable storage medium, in which a computer program is stored, and when the computer program is executed by a processor, any of the above-mentioned fault detection methods is implemented.
[0068] In a seventh aspect, the present application also provides a computer program product comprising instructions, which, when executed on a computer, enables the computer to execute any of the above-mentioned fault detection methods.
[0069] The fault detection method, apparatus and PE device provided by the present application, the first PE device can generate an SRv6 message, and indicate that the inner message of the SRv6 message is a BFD message through the first indicator included in the SRv6 message. After the second PE device receives the SRv6 message, it can extract the BFD message from the SRv6 message based on the first indicator, and implement fault detection by BFD in the SRv6 domain. In addition, if the second PE device is a bonding device, the second PE device can transparently transmit the BFD message to the tail node, so that a BFD session can be established between the head node and the tail node across the network domain. Since the BFD session can achieve a millisecond-level fault detection speed, the BFD session between the head node and the tail node can timely detect whether there is a fault in the PW tunnel between the head node and the tail node. Therefore, when a fault is detected, the service flow is switched to the backup tunnel in time, reducing the transmission delay of the service flow.
[0070] Of course, implementing any product or method of the present application does not necessarily require achieving all of the advantages described above at the same time. BRIEF DESCRIPTION OF THE DRAWINGS
[0071] In order to more clearly illustrate the embodiments of the present application and the technical solutions of the prior art, the following briefly introduces the drawings required for use in the embodiments and the prior art. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying creative work.
[0072] Figure 1 An exemplary schematic diagram of an EVPN network architecture provided for background technology;
[0073] Figure 2 A flowchart of a fault detection method provided for implementation of this application;
[0074] Figure 3a An exemplary schematic diagram of an SRv6 message header provided in an embodiment of the present application;
[0075] Figure 3b An exemplary schematic diagram of an SRv6 message header provided in an embodiment of the present application;
[0076] Figure 4 A flowchart of another fault detection method provided for implementation of the present application;
[0077] Figure 5 A schematic diagram of the structure of an EVPN network architecture provided in an embodiment of the present application;
[0078] Figure 6 A flowchart of another fault detection method provided for implementation of the present application;
[0079] Figure 7 A schematic diagram of the structure of another EVPN network architecture provided in an embodiment of the present application;
[0080] Figure 8 A flowchart of another fault detection method provided for implementation of the present application;
[0081] Fig. 9 A schematic diagram of the structure of another EVPN network architecture provided in an embodiment of the present application;
[0082] Fig.10 A flowchart of another fault detection method provided for implementation of the present application;
[0083] Fig.11 A structural schematic diagram of a fault detection device provided for the implementation of this application;
[0084] Fig.12 A schematic diagram of the structure of another fault detection device provided for the implementation of this application;
[0085] Fig.13 A schematic diagram of the structure of a PE device provided for the implementation of this application. DETAILED DESCRIPTION
[0086] In order to make the purpose, technical scheme, and advantages of the present application more clearly understood, the present application is further described in detail with reference to the accompanying drawings and examples. Obviously, the described embodiments are only part of the embodiments of the present application, rather than all of the embodiments. Based on the embodiments in the present application, all other embodiments obtained by ordinary technicians in the field without creative work are within the scope of protection of the present application.
[0087] The present application embodiment provides a fault detection method, which is applied to a first PE device in an EVPN, where the first PE device is connected to a second PE device through an SRv6 PW tunnel, such as Figure 2 As shown, the method includes:
[0088] S201. Generate an SRv6 message, where the SRv6 message includes a first indicator, and the first indicator is used to indicate that an inner message of the SRv6 message is a bidirectional forwarding detection (BFD) message.
[0089] S202. Send an SRv6 message to the second PE device, so that when the second PE device is the tail node, the second PE device establishes a BFD session with the head node according to the BFD message, and when the head node detects through the BFD session that there is a fault in the PW tunnel between the head node and the tail node, the service flow is switched to the backup tunnel; or, when the second PE device is a bonding device, the second PE device transparently transmits the BFD message to the tail node, so that a BFD session is established between the head node and the tail node, and when the head node detects through the BFD session that there is a fault in the PW tunnel between the head node and the tail node, the service flow is switched to the backup tunnel.
[0090] Among them, the adhesion device refers to the device connected to the SRv6 domain and the MPLS domain. If the MPLS device connected to the second PE device is the tail node, the second PE device transparently transmits the BFD message to the tail node. If the MPLS device connected to the second PE device is not the tail node, the second PE device transparently transmits the BFD message to the MPLS device, and the MPLS device forwards the BFD message in the MPLS domain until the BFD message is transmitted to the tail node in the MPLS domain.
[0091] The head node and the tail node are both nodes connected to the user edge (Custom Edge, CE) device. The head node is the first node in the PW tunnel used to carry the service flow, and the tail node is the last node in the PW tunnel used to carry the service flow.
[0092] In one embodiment, the PW tunnel between the head node and the tail node and the backup tunnel are in a relationship of a main tunnel and a backup tunnel. When there is no fault in the PW tunnel, the PW tunnel carries the service flow between the head node and the tail node, and the backup tunnel does not carry the service flow. When the PW tunnel fails, the service flow carried by the PW tunnel is switched to the backup tunnel.
[0093] In another implementation, the PW tunnel and the backup tunnel between the head node and the tail node are equivalent tunnels. When both tunnels are not faulty, the two tunnels carry a portion of the service flow between the head node and the tail node. When one of the two tunnels fails, the service flow carried by the failed tunnel is switched to the other tunnel.
[0094] In the fault detection method provided in the embodiment of the present application, the first PE device can generate an SRv6 message, and indicate that the inner message of the SRv6 message is a BFD message through the first indicator included in the SRv6 message. After the second PE device receives the SRv6 message, it can extract the BFD message from the SRv6 message based on the first indicator, and implement fault detection through BFD in the SRv6 domain. In addition, if the second PE device is a bonding device, the second PE device can transparently transmit the BFD message to the tail node, so that a BFD session can be established between the head node and the tail node across the network domain. Since the BFD session can achieve a millisecond-level fault detection speed, the BFD session between the head node and the tail node can timely detect whether there is a fault in the PW tunnel between the head node and the tail node. Therefore, when a fault is detected, the service flow is switched to the backup tunnel in time, reducing the transmission delay of the service flow.
[0095] In one embodiment of the present application, the head node is a first MPLS device, and the first PE device is connected to the first MPLS device through a first MPLS PW tunnel. The first MPLS device is a PE device in an MPLS domain. Before the above S201, generating an SRv6 message, the method further includes:
[0096] Step 1: A first PE device receives a first MPLS message sent by a first MPLS device.
[0097] Step 2: The first PE device decapsulates the first MPLS message and reads the PW associated control channel (ACH) field in the first MPLS message.
[0098] Step 3: If the value of the PW ACH field is the BFD control word, the first PE device extracts the BFD message after the PW ACH field.
[0099] The BFD control word is used to indicate that the inner layer message included in the first MPLS message is a BFD message.
[0100] In one embodiment, after extracting the BFD message, the first PE device determines whether its own configuration information includes adhesion configuration information, and the adhesion configuration information is used to indicate that the first PE device is used to achieve intercommunication between the MPLS network and the SRv6 network. If its own configuration information includes adhesion configuration information, the above S201 is executed. If its own configuration information does not include adhesion device information, the first PE device establishes a BFD session with the first MPLS device according to the BFD message.
[0101] On the basis of the BFD message extracted by the first PE device from the first MPLS message, the above S201 may be specifically implemented as follows:
[0102] The BFD message is encapsulated to obtain an SRv6 message. The value of the inner routing header field of the SRv6 message is the first indicator.
[0103] In the process of encapsulating the BFD message by the first PE device, in addition to basic encapsulation work, the value of the inner routing header field (next header) in the header of the SRv6 message needs to be set to the first indicator.
[0104] For example, Figure 3a As shown, if there is only one layer of next header field in the header of the SRv6 message, the value of the next header field is set to the first indicator. The header of the SRv6 message is an ipv6 basic header.
[0105] Figure 3a In the above code, Ver is Version (version number), which is used to indicate the protocol version and its value is 6.
[0106] Traffic class, used to indicate the Quality of Service (QoS) of the message. Flow label, used to identify messages in the same data flow. Payload length, used to identify the number of bytes contained after the IPv6 basic header. Next header, used to identify the type of the next header following the IPv6 basic header. Hop limit, each time the message is forwarded, the hop count is reduced by 1. When the value of this field is 0, the message will be discarded. Source address, used to identify the source address of the message, and Destination address, used to identify the destination address of the message.
[0107] For example, Figure 3b As shown, if there are multiple layers of next header fields in the header of the SRv6 message, the value of the innermost next header field is set to the first indicator.
[0108] Figure 3b In the SRv6 packet header, the header includes an IPv6 basic header and a routing extension header, and the routing extension header is an IPv6 SR packet header (Segment Identifier Header, SRH). Figure 3bIn the example, the innermost next header field is the next header field included in the SRH.
[0109] SRH includes: Next Header, which is used to identify the type of the next header. Hdr Ext Len (extended header length), which indicates the length of SRH in units of 8 bytes. This length does not include the first 8 bytes of SRH. The length of the Hdr Ext Len field is 8 bits. Routing Type (routing type), which is used to identify the type of routing extension header. The value is 4, indicating that the routing extension header type is SRH. The length of the Routing Type field is 8 bits. Segments Left (segments to the left), which is used to identify the number of the next segment identifier (Segment Identifier, SID) to be viewed. The initial value is n-1 (n represents the number of SIDs in the routing extension header), and the value is reduced by 1 for each node passed. The length of the Segments Left field is 8 bits. Last Entry (last entry), which is used to identify the number of the last SID of the message forwarding path in the SRH header. The value is 0. The length of the Last Entry field is 8 bits. Flags (flag bit), which is the flag bit information. The length of the Flags field is 8 bits. Tag, used to mark a group of messages with the same characteristics, the length of the Tag field is 168 bits. Segment List, used to identify the SID list, the SIDs in the SID list are arranged in the order from far to near nodes on the message forwarding path, that is, Segment List[0] represents the last SID in the communication link, Segment List[1] represents the second to last SID in the path, and so on. Optional type lengthvalue objects, variable means that the value of this field is a variable.
[0110] In an embodiment of the present application, the value of the innermost next header field of the SRv6 message can be set to 253, where the 253 type is an experimental reserved type specified by the protocol. In an embodiment of the present application, the 253 type can be used as the first indicator to indicate that the inner message of the SRv6 message is a BFD message.
[0111] and Figure 2 Corresponding to the method flow, the embodiment of the present application also provides a fault detection method, which is applied to a second PE device in EVPN, where the second PE device is connected to the first PE device through a first SRv6 PW tunnel, such as Figure 4As shown, the method includes:
[0112] S401. Receive an SRv6 message sent by a first PE device, where the SRv6 message includes a first indicator, and the first indicator is used to indicate that an inner message of the SRv6 message is a BFD message.
[0113] S402: If the second PE device is the tail node, a BFD session is established with the head node according to the BFD message, so that when the head node detects a fault in the PW tunnel between the head node and the tail node through the BFD session, the service flow is switched to the backup tunnel.
[0114] S403: If the second PE device is a bonding device, the BFD message is transparently transmitted to the tail node so that a BFD session is established between the head node and the tail node. When the head node detects a fault in the PW tunnel between the head node and the tail node through the BFD session, the service flow is switched to the backup tunnel.
[0115] The head node and the tail node are both nodes connected to the CE device.
[0116] For the description of the head node, the tail node and the backup tunnel, reference may be made to the related description in the above S202.
[0117] In the fault detection method provided by the embodiment of the present application, after the second PE device receives the SRv6 message, it can determine that the inner message of the SRv6 message is a BFD message through the first indicator. Furthermore, when the second PE device is a tail node, a BFD session is established with the head node; when the second PE device is a bonding device, the BFD message is transparently transmitted to the tail node, so that a BFD session is established between the head node and the tail node. Since the BFD session can achieve a millisecond-level fault detection speed, the BFD session between the head node and the tail node can timely detect whether there is a fault in the PW tunnel between the head node and the tail node. Therefore, when a fault is detected, the service flow is switched to the backup tunnel in time, reducing the transmission delay of the service flow.
[0118] In one implementation, after receiving the SRv6 message sent by the first PE device, the second PE device may determine whether its own configuration information includes adhesion configuration information, where the adhesion configuration information is used to indicate that the second PE device is used to implement intercommunication between the SRv6 network and the MPLS network.
[0119] If its own configuration information includes sticky configuration information, it is determined that it is a sticky device; if its own configuration information does not include sticky configuration information, it is determined that it is an end node.
[0120] In one embodiment of the present application, the tail node is a second MPLS device, and the second MPLS device is connected to the second PE device. In the above S403, if the second PE device is not the tail node, before transparently transmitting the BFD message to the tail node, the method further includes:
[0121] Step A: Read the inner routing header field of the SRv6 message.
[0122] As an example, in Figure 3a In , the inner routing header field is the next header field in the ipv6 basic header. Figure 3b In the example, the inner routing header field is the next header field in the SRH header.
[0123] Step B: If it is determined that the value of the inner routing header field is the first indicator, extract the BFD message from the SRv6 message.
[0124] In one implementation, the value of the first indicator is 253.
[0125] Step C: encapsulate the BFD message to obtain a second MPLS message, wherein the value of the PW ACH field of the second MPLS message is the BFD control word.
[0126] Furthermore, the second PE device may send the second MPLS message to the egress node, so that when the egress node identifies the BFD control word, it does not forward the second MPLS message to the CE device but processes the BFD message in the inner layer of the second MPLS message.
[0127] The following introduces the fault detection method provided in the embodiment of the present application in conjunction with specific scenarios.
[0128] Scenario 1: Figure 5 As shown, the EVPN includes a first MPLS device, a first PE device, a second PE device, and a second MPLS device.
[0129] The first MPLS device and the second MPLS device are both PE devices.
[0130] The first MPLS device is respectively connected to the first PE device and the third PE device, and the second MPLS device is respectively connected to the second PE device and the fourth PE device.
[0131] There is a first MPLS PW tunnel between the first MPLS device and the first PE device, and there is a third MPLS PW tunnel between the first MPLS device and the third PE device. The first MPLS device, the first PE device and the third PE device form an MPLS network, which belongs to an MPLS domain.
[0132] A first SRv6 PW tunnel exists between the first PE device and the second PE device, a second SRv6 PW tunnel exists between the third PE device and the fourth PE device, and the first PE device, the second PE device, the third PE device, and the fourth PE device constitute an SRv6 network and belong to an SRv6 domain.
[0133] There is a second MPLS PW tunnel between the second MPLS device and the second PE device, and there is a fourth MPLS PW tunnel between the second MPLS device and the fourth PE device. The second MPLS device, the second PE device and the fourth PE device form an MPLS network, which belongs to the MPLS domain.
[0134] in, Figure 5 In the embodiment, there are multiple forwarding paths between the first MPLS device and the second MPLS device, and two of the forwarding paths are taken as examples for description.
[0135] Path 1 is: first MPLS device-first PE device (MPLS interface-SRv6 interface)-second PE device (SRv6 interface-MPLS interface)-second MPLS device.
[0136] Path 2 is: first MPLS device-third PE device (MPLS interface-SRv6 interface)-fourth PE device (SRv6 interface-MPLS interface)-second MPLS device.
[0137] That is, path 1 is tunnel 1 formed by connecting the first MPLS PW tunnel, the first SRv6 PW tunnel, and the second MPLS PW tunnel. Path 2 is tunnel 2 formed by connecting the third MPLS PW tunnel, the second SRv6 PW tunnel, and the fourth MPLS PW tunnel. Tunnel 1 and tunnel 2 are equivalent tunnels, or one of tunnel 1 and tunnel 2 is a primary tunnel and the other is a backup tunnel.
[0138] In scenario 1, the head node is a first MPLS device, and the tail node is a second MPLS device.
[0139] Based on scenario 1, the present application embodiment provides a method for fault detection, such as Figure 6 As shown, the method includes:
[0140] S601: A first PE device receives a first MPLS message sent by a first MPLS device.
[0141] S602: The first PE device decapsulates the first MPLS message, and if the value of the PW ACH field in the first MPLS message is a BFD control word, extracts the BFD message in the first MPLS message.
[0142] S603: The first PE device encapsulates the BFD message to obtain an SRv6 message, where the value of the inner routing header field of the SRv6 message is the first indicator.
[0143] The first indicator is used to indicate that a BFD message is encapsulated in the SRv6 message.
[0144] In one embodiment, the first indicator is specifically used to indicate: if the PE device that receives the SRv6 message is a bonding device, the BFD message in the SRv6 message is encapsulated as an MPLS message, and a BFD control word is added to the MPLS message; if the PE device that receives the SRv6 message is a tail node, a BFD session is established with the head node according to the BFD message in the SRv6 message.
[0145] The bonding device refers to the PE device connected to the MPLS network and the SRv6 network. For example, the first PE device and the second PE device in scenario 1 are both bonding devices. The tail node is a non-bonding device and is an egress device of a certain network domain, such as the second MPLS device in scenario 1.
[0146] S604: The first PE device sends an SRv6 message to the second PE device.
[0147] S605: The second PE device extracts a BFD message from the SRv6 message based on the first indicator, and encapsulates the BFD message into a second MPLS message.
[0148] In the process of encapsulating the BFD message into the second MPLS message, the value of the PW ACH field in the second MPLS message is set to the BFD control word.
[0149] S606: Send the second MPLS message to the second MPLS device through the second MPLS SW tunnel.
[0150] S607: The second MPLS device establishes a BFD session with the first MPLS device according to the BFD message in the second MPLS message.
[0151] Among them, when the second MPLS device determines that the value of the PW ACH field of the second MPLS message is set to the BFD control word, it determines that the inner message of the second MPLS message is not an ordinary service message, but a BFD message, and then establishes a BFD session with the first MPLS device based on the BFD message.
[0152] S608: When the first MPLS device detects a PW tunnel failure between the first MPLS device and the second MPLS device through the BFD session, the service flow is switched to the backup tunnel.
[0153] The PW tunnel between the first MPLS device and the second MPLS device is the above-mentioned tunnel 1, and the backup tunnel is the above-mentioned tunnel 2.
[0154] The BFD session is used to detect whether tunnel 1 is faulty. If any PW tunnel included in tunnel 1 is faulty, the service flow can be switched to tunnel 2.
[0155] In the fault detection method provided by the embodiment of the present application, after the first PE device receives the first MPLS message sent by the first MPLS device, it can re-encapsulate the BFD message encapsulated in the first MPLS message into an SRv6 message, and send the SRv6 message to the second PE device. The second PE device can determine that the SRv6 message is encapsulated with a BFD message through the first indicator in the SRv6 message, and then transparently transmit the BFD message encapsulated in the SRv6 message to the second MPLS device in the MPLS network for processing, thereby realizing the establishment of a BFD session across the network domain between the first MPLS device and the second MPLS device. The BFD session can achieve a fault detection speed of milliseconds, which can make the tunnel fault detection between the first MPLS device and the second MPLS device more timely, so as to switch the service flow in time and reduce the transmission delay of the service flow.
[0156] In one implementation of the embodiment of the present application, in order to achieve Figure 6 According to the method steps, the first MPLS device, the first PE device and the second PE device are configured in advance.
[0157] The configuration parameters of the first MPLS device are as follows:
[0158] xconnect-group 1
[0159] connection 1
[0160] ac interface GE 0 / 1
[0161] bfd enable control-word
[0162] peer PE1_IP pw-id 1
[0163] backup-peer PE2_IP pw-id 2
[0164] return
[0165] Among them, xconnect-group 1 is used to indicate that the cross-connection group to which the PW tunnel connected to the first MPLS device belongs is group 1, and connection 1 is used to indicate that the cross-connection of the PW tunnel connected to the first MPLS device is connection 1. acinterface GE 0 / 1 is used to indicate the AC interface on the first MPLS device. bfd enable control-word is used to indicate enabling BFD in control word mode. bfd enable control-word is a newly added configuration in the embodiment of the present application. Through this configuration, the first MPLS can send MPLS packets encapsulated with BFD packets to the first PE device. peer PE1_IP pw-id 1 indicates that the first MPLS device accesses PE1 through the PW tunnel identified as pw-id 1, and backup-peer PE2_IP pw-id2 indicates that the first MPLS device accesses PE1 through the PW tunnel identified as pw-id 2.
[0166] The configuration parameters of the second PE device are as follows:
[0167] xconnect-group 1
[0168] connection 1
[0169] ac interface VE-L2VPN1 splicing
[0170] bfd enable control-word
[0171] peer A1_IP pw-id 1
[0172] connection 2
[0173] ac interface VE-L2VPN1.1 splicing
[0174] evpn local-service-id 1remote-service-id 3
[0175] #
[0176] interface VE-L2VPN1
[0177] #
[0178] interface VE-L2VPN1.1
[0179] vlan-type dot1q vid 1000
[0180] #
[0181] Wherein, ac interface VE-L2VPN1 splicing is used to indicate that the VE-L2VPN1 interface of the first PE device needs to be locally spliced. ac interface VE-L2VPN1.1 splicing is used to indicate that the VE-L2VPN1.1 interface of the first PE device needs to be locally spliced.
[0182] The VE-L2VPN1 interface is an MPLS network interface on the first PE device, and the VE-L2VPN1.1 interface is an SRv6 network interface on the first PE device. The above two pieces of configuration information are used to indicate that the VE-L2VPN1 interface and the VE-L2VPN1.1 interface need to be bonded.
[0183] peer A1_IP pw-id 1 is used to indicate that the first PE device is connected to the A1 device through a PW tunnel identified as pw-id 1. In the embodiment of the present application, the A1 device is the first MPLS device mentioned above.
[0184] evpn local-service-id 1remote-service-id 2 is used to indicate that the first PE device is connected to the second PE device through the SRv6 network.
[0185] vlan-type dot1q vid 1000 is used to enable the dot1q termination function of the sub-interface.
[0186] Similarly, the configuration parameters of the third PE device are:
[0187] xconnect-group 1
[0188] connection 1
[0189] ac interface VE-L2VPN1 splicing
[0190] peer A1_IP pw-id 2
[0191] connection 2
[0192] ac interface VE-L2VPN1.1 splicing
[0193] evpn local-service-id 2remote-service-id 4
[0194] #
[0195] interface VE-L2VPN1
[0196] #
[0197] interface VE-L2VPN1.1
[0198] vlan-type dot1q vid 1000
[0199] #
[0200] Through the above configuration, the first PE device and the third PE device are both configured as adhesion devices.
[0201] Scenario 2: Figure 7 As shown, the EVPN includes a first MPLS device, a first PE device, and a second PE device.
[0202] The first MPLS device may be a PE device. The first MPLS device is respectively connected to the first PE device and the third PE device.
[0203] The second PE device is connected to the CE device, and the CE device is dual-homed to the second PE device and the fourth PE device.
[0204] There is a first MPLS PW tunnel between the first MPLS device and the first PE device, and there is a third MPLS PW tunnel between the first MPLS device and the third PE device. The first MPLS device, the first PE device and the third PE device form an MPLS network, which belongs to an MPLS domain.
[0205] A first SRv6 PW tunnel exists between the first PE device and the second PE device, a second SRv6 PW tunnel exists between the third PE device and the fourth PE device, and the first PE device, the second PE device, the third PE device, and the fourth PE device constitute an SRv6 network and belong to an SRv6 domain.
[0206] Figure 7 In the example, the first MPLS device can transmit the service flow to the CE device through the PW tunnel between the first MPLS device and the second PE device, or can transmit the service flow to the CE device through the PW tunnel between the first MPLS device and the fourth PE device. The two tunnels are equivalent tunnels, or one of the tunnels is the main tunnel and the other tunnel is the backup tunnel.
[0207] In common case 2, the first MPLS device is a head node, and the second PE device is a tail node.
[0208] Based on scenario 2, the present application embodiment provides a fault detection method, such as Figure 8As shown, the method includes S801 to S806.
[0209] Among them, S801 to S804 are the same as the above S601 to S604, and reference may be made to the relevant description in the above S601 to S604.
[0210] After S804, the first PE device sends the SRv6 message to the second PE device, S805 to S806 are executed.
[0211] S805: The second PE device extracts a BFD message from the SRv6 message based on the first indicator, and establishes a BFD session with the first MPLS device according to the BFD message.
[0212] S806: When the first MPLS device detects a PW tunnel failure between the first MPLS device and the second PE device through the BFD session, the service flow is switched to the backup tunnel.
[0213] According to the fault detection method provided by the embodiment of the present application, after the first PE device receives the first MPLS message sent by the first MPLS device, the BFD message encapsulated in the first MPLS message can be re-encapsulated into an SRv6 message, and the SRv6 message can be sent to the second PE device. The second PE device can determine that the SRv6 message carries a BFD message through the first indicator in the SRv6 message. Then, the BFD message encapsulated in the SRv6 message is processed, thereby establishing a BFD session across the network domain between the first MPLS device and the second PE device. The BFD session can achieve a millisecond-level fault detection speed, which can make the tunnel fault detection between the first MPLS device and the second PE device more timely, thereby switching the service flow in time and reducing the transmission delay of the service flow.
[0214] Scenario 3: Fig. 9 As shown, CE device 1 is dual-homed to the first PE device and the third PE device, and CE device 2 is dual-homed to the second PE device and the fourth PE device.
[0215] A first SRv6 PW tunnel exists between the first PE device and the second PE device, a second SRv6 PW tunnel exists between the third PE device and the fourth PE device, and the first PE device, the second PE device, the third PE device, and the fourth PE device constitute an SRv6 network and belong to an SRv6 domain.
[0216] The first SRv6 PW tunnel and the second SRv6 PW tunnel are equivalent tunnels, or one of the tunnels is a main tunnel and the other tunnel is a backup tunnel. When the first SRv6 PW tunnel fails, the carried service flow can be switched to the second SRv6 PW tunnel.
[0217] In scenario three, the head node is the first PE device, and the tail node is the second PE device.
[0218] Based on scenario three, the present application embodiment provides a fault detection method, such as Fig.10 As shown, the method includes:
[0219] S1001. A first PE device generates an SRv6 message, where the SRv6 message includes a first indicator, where the first indicator is used to indicate that an inner message of the SRv6 message is a BFD message.
[0220] In scenario 3, the first PE device is not a bonding device, and the configuration information of the first PE device includes a bfdenable control-word. The first PE device can determine that the BFD function needs to be enabled according to the configuration information, and then generate the SRv6 message.
[0221] S1002. The first PE device sends an SRv6 message to the second PE device.
[0222] S1003: The second PE device extracts a BFD message from the SRv6 message based on the first indicator, and establishes a BFD session with the first PE device according to the BFD message.
[0223] S1004: When the first PE device detects a PW tunnel failure between the first PE device and the second PE device through the BFD session, the service flow is switched to the backup tunnel.
[0224] The backup tunnel of the PW tunnel between the first PE device and the second PE device is the backup tunnel between the third PE device and the fourth PE device.
[0225] By adopting the fault detection method provided in the embodiment of the present application, for devices in the SRv6 network, the embodiment of the present application can encapsulate the BFD message and the first indicator in the SRv6 message, so that the second PE device can establish a BFD session between the first PE device and the second PE device through the BFD message in the SRv6 message. This allows devices in the SRv6 domain to perform fault detection through BFD, thereby improving detection efficiency, so that service flows can be switched in a timely manner, and the transmission delay of service flows can be reduced.
[0226] In another embodiment of the present application, based on the above scenarios 1 to 3, the message encapsulated in the SRv6 message transmitted between the first PE device and the second PE device may also be other MPLS operation administration and maintenance (OAM) messages in addition to the BFD message, so as to achieve the purpose of enabling the PE device in the SRv6 network to process the MPLS OAM message. For example, the MPLS OAM message may also be a ping command.
[0227] Based on the same technical concept, an embodiment of the present application provides a fault detection device, which is applied to a first PE device in an EVPN, where the first PE device is connected to a second PE device through an SRv6 PW tunnel, such as Fig.11 As shown, the device comprises:
[0228] A generating module 1101, configured to generate an SRv6 message, where the SRv6 message includes a first indicator, where the first indicator is used to indicate that an inner message of the SRv6 message is a BFD message;
[0229] The sending module 1102 is used to send an SRv6 message to the second PE device, so that when the second PE device is a tail node, the second PE device establishes a BFD session with the head node according to the BFD message, and when the head node detects through the BFD session that there is a fault in the PW tunnel between the head node and the tail node, the service flow is switched to the backup tunnel; or, when the second PE device is a bonding device, the second PE device transparently transmits the BFD message to the tail node, so that a BFD session is established between the head node and the tail node, and when the head node detects through the BFD session that there is a fault in the PW tunnel between the head node and the tail node, the service flow is switched to the backup tunnel;
[0230] The head node and the tail node are both nodes connected to the user edge CE device.
[0231] In one implementation, the head node is a first MPLS device, and the first PE device is connected to the first multi-protocol label switching MPLS device through a first multi-protocol label switching pseudowire MPLS PW tunnel;
[0232] The device also includes:
[0233] A receiving module, configured to receive a first MPLS message sent by a first MPLS device before the generating module 1101 generates the SRv6 message;
[0234] A decapsulation module, used for decapsulating the first MPLS message and reading a pseudo wire associated control channel PW ACH field in the first MPLS message;
[0235] an extraction module, configured to extract a BFD message after the PW ACH field if the value of the PW ACH field is a BFD control word, wherein the BFD control word is used to indicate that the inner layer message included in the first MPLS message is a BFD message;
[0236] The generating module 1101 is specifically configured to encapsulate the BFD message to obtain an SRv6 message, wherein the value of the inner routing header field of the SRv6 message is the first indicator.
[0237] In one embodiment, the device further comprises:
[0238] The judgment module is used to judge whether its own configuration information includes adhesion configuration information, where the adhesion configuration information is used to indicate that the first PE device is used to realize the intercommunication between the MPLS network and the SRv6 network; if its own configuration information includes adhesion configuration information, the generation module is triggered to encapsulate the BFD message to obtain the SRv6 message.
[0239] Based on the same technical concept, the embodiment of the present application also provides a fault detection device, which is applied to a second PE device in an EVPN, and the second PE device is connected to the first PE device through a first SRv6 PW tunnel. Fig.12 As shown, the device comprises:
[0240] The receiving module 1201 is configured to receive an SRv6 message sent by a first PE device, where the SRv6 message includes a first indicator, and the first indicator is used to indicate that an inner message of the SRv6 message is a BFD message;
[0241] Establishing module 1202, for establishing a BFD session with the head node according to the BFD message if the second PE device is the tail node, so that when the head node detects through the BFD session that a PW tunnel between the head node and the tail node has a fault, the service flow is switched to the backup tunnel;
[0242] The transparent transmission module 1203 is used for transparently transmitting the BFD message to the tail node if the second PE device is a bonding device, so that a BFD session is established between the head node and the tail node, and when the head node detects that the PW tunnel between the head node and the tail node is faulty through the BFD session, the service flow is switched to the backup tunnel;
[0243] The head node and the tail node are both nodes connected to the user edge CE device.
[0244] In one embodiment, the tail node is a second MPLS device, and the second multi-protocol label switching MPLS device is connected to the second PE device;
[0245] The device also includes:
[0246] A reading module is used to read the inner routing header field of the SRv6 message;
[0247] An extraction module, configured to extract a BFD message from the SRv6 message if it is determined that the value of the inner routing header field is the first indicator;
[0248] An encapsulation module, configured to encapsulate the BFD message to obtain a second MPLS message, wherein the value of a pseudo wire associated control channel PW ACH field of the second MPLS message is a BFD control word;
[0249] The transparent transmission module 1203 is specifically configured to send the second MPLS message to the second MPLS device.
[0250] In one embodiment, the device further includes: a judgment module;
[0251] The judgment module is used to:
[0252] Determine whether the configuration information of the second PE device includes adhesion configuration information, where the adhesion configuration information is used to indicate that the second PE device is used to implement intercommunication between the SRv6 network and the MPLS network;
[0253] If the configuration information of the second PE device includes sticky configuration information, determining that the second PE device is a sticky device;
[0254] If the configuration information of the second PE device does not include adhesion configuration information, it is determined that the second PE device is an egress node.
[0255] The embodiment of the present application further provides a PE device, which may be the first PE device or the second PE device in the above embodiment. Fig.13 As shown, it includes a processor 1301, a communication interface 1302, a memory 1303 and a communication bus 1304, wherein the processor 1301, the communication interface 1302, and the memory 1303 communicate with each other through the communication bus 1304.
[0256] Memory 1303, used for storing computer programs;
[0257] The processor 1301 is used to implement the method content in the above method embodiment when executing the program stored in the memory 1303.
[0258] The communication bus mentioned in the above PE device can be a Peripheral Component Interconnect (PCI) bus or an Extended Industry Standard Architecture (EISA) bus, etc. The communication bus can be divided into an address bus, a data bus, a control bus, etc. For ease of representation, only one thick line is used in the figure, but it does not mean that there is only one bus or one type of bus.
[0259] The communication interface is used for communication between the above PE device and other devices.
[0260] The memory may include a random access memory (RAM) or a non-volatile memory (NVM), such as at least one disk memory. Optionally, the memory may also be at least one storage device located away from the aforementioned processor.
[0261] The above-mentioned processor can be a general-purpose processor, including a central processing unit (CPU), a network processor (NP), etc.; it can also be a digital signal processor (DSP), an application specific integrated circuit (ASIC), a field programmable gate array (FPGA) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components.
[0262] In another embodiment provided in the present application, a computer-readable storage medium is provided, in which a computer program is stored. When the computer program is executed by a processor, the steps of any of the above-mentioned fault detection methods are implemented.
[0263] In another embodiment provided by the present application, a computer program product including instructions is also provided, which, when executed on a computer, enables the computer to execute any fault detection method in the above embodiments.
[0264] In the above embodiments, it can be implemented in whole or in part by software, hardware, firmware or any combination thereof. When implemented using software, it can be implemented in whole or in part in the form of a computer program product. The computer program product includes one or more computer instructions. When the computer program instructions are loaded and executed on a computer, the process or function described in the embodiment of the present application is generated in whole or in part. The computer may be a general-purpose computer, a special-purpose computer, a computer network, or other programmable device. The computer instructions may be stored in a computer-readable storage medium, or transmitted from one computer-readable storage medium to another computer-readable storage medium, for example, the computer instructions may be transmitted from a website site, computer, server or data center by wired (e.g., coaxial cable, optical fiber, digital subscriber line (DSL)) or wireless (e.g., infrared, wireless, microwave, etc.) mode to another website site, computer, server or data center. The computer-readable storage medium may be any available medium that a computer can access or a data storage device such as a server or data center that includes one or more available media integrated. The available medium may be a magnetic medium, (e.g., a floppy disk, a hard disk, a tape), an optical medium (e.g., a DVD), or a semiconductor medium (e.g., a solid-state drive Solid State Disk (SSD)), etc.
[0265] It should be noted that, in this article, relational terms such as first and second, etc. are only used to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Moreover, the terms "include", "comprise" or any other variants thereof are intended to cover non-exclusive inclusion, so that a process, method, article or device including a series of elements includes not only those elements, but also other elements not explicitly listed, or also includes elements inherent to such process, method, article or device. In the absence of further restrictions, the elements defined by the sentence "comprise a ..." do not exclude the existence of other identical elements in the process, method, article or device including the elements.
[0266] Each embodiment in this specification is described in a related manner, and the same or similar parts between the embodiments can be referred to each other, and each embodiment focuses on the differences from other embodiments. In particular, for the device embodiment, since it is basically similar to the method embodiment, the description is relatively simple, and the relevant parts can be referred to the partial description of the method embodiment.
[0267] The above description is only a preferred embodiment of the present application and is not intended to limit the protection scope of the present application. Any modification, equivalent replacement, improvement, etc. made within the spirit and principle of the present application are included in the protection scope of the present application.
Claims
1. A fault detection method, characterized in that: The method is applied to a first service provider edge PE device in an Ethernet virtual private network EVPN, wherein the first PE device is connected to a second PE device via an Internet Protocol version 6 segment routing pseudowire SRv6PW tunnel, and the method comprises: Generate an Internet Communication Protocol Version 6 SRv6 message, the SRv6 message including a first indicator, the first indicator being used to indicate that an inner layer message of the SRv6 message is a Bidirectional Forwarding Detection BFD message; Send the SRv6 message to the second PE device, so that when the second PE device is the tail node, the second PE device establishes a BFD session with the head node according to the BFD message, and when the head node detects through the BFD session that there is a fault in the PW tunnel between the head node and the tail node, the service flow is switched to the backup tunnel; or, when the second PE device is a bonding device, the second PE device transparently transmits the BFD message to the tail node, so that a BFD session is established between the head node and the tail node, and when the head node detects through the BFD session that there is a fault in the PW tunnel between the head node and the tail node, the service flow is switched to the backup tunnel; Wherein, the head node and the tail node are both nodes connected to the user edge CE device; The head node is a first multi-protocol label switching MPLS device, and the first PE device is connected to the first multi-protocol label switching MPLS device through a first multi-protocol label switching pseudo wire MPLS PW tunnel; Before generating the SRv6 message, the method includes: Receiving a first MPLS message sent by the first MPLS device; Decapsulating the first MPLS message, and reading a pseudo wire associated channel PWACH field in the first MPLS message; If the value of the PWACH field is a BFD control word, extracting a BFD message after the PWACH field, wherein the BFD control word is used to indicate that the inner message included in the first MPLS message is a BFD message; The generating of the Internet Communication Protocol Version 6 SRv6 message includes: The BFD message is encapsulated to obtain the SRv6 message, and the value of the inner routing header field of the SRv6 message is the first indicator.
2. The method according to claim 1, characterized in that After extracting the BFD message after the PW ACH field, the method further includes: Determine whether the configuration information of the PE device includes adhesion configuration information, where the adhesion configuration information is used to indicate that the first PE device is used to implement intercommunication between the MPLS network and the SRv6 network; If the configuration information of the device itself includes the adhesion configuration information, the step of encapsulating the BFD message to obtain the SRv6 message is performed.
3. A fault detection method, characterized in that: The method is applied to a second service provider edge PE device in an Ethernet virtual private network EVPN, wherein the second PE device is connected to the first PE device through a first Internet communication protocol version 6 segment routing pseudowire SRv6 PW tunnel; the method comprises: Receive an Internet Communication Protocol Version 6 SRv6 message sent by the first PE device, where the SRv6 message includes a first indicator, where the first indicator is used to indicate that an inner layer message of the SRv6 message is a bidirectional forwarding detection BFD message; If the second PE device is an egress node, a BFD session is established with the head node according to the BFD message, so that when the head node detects through the BFD session that a PW tunnel between the head node and the egress node is faulty, the service flow is switched to a standby tunnel; If the second PE device is a bonding device, the BFD message is transparently transmitted to the tail node, so that a BFD session is established between the head node and the tail node. When the head node detects a fault in the PW tunnel between the head node and the tail node through the BFD session, the service flow is switched to the backup tunnel. Wherein, the head node and the tail node are both nodes connected to the user edge CE device; The tail node is a second multi-protocol label switching MPLS device, and the second MPLS device is connected to the second PE device; If the second PE device is not the egress node, before transparently transmitting the BFD message to the egress node, the method further includes: Reading the inner routing header field of the SRv6 message; If it is determined that the value of the inner routing header field is the first indicator, extracting the BFD message from the SRv6 message; Encapsulating the BFD message to obtain a second MPLS message, wherein a value of a pseudo wire associated channel control channel PWACH field of the second MPLS message is a BFD control word; The transparently transmitting the BFD message to the tail node includes: Send the second MPLS message to the second MPLS device.
4. The method according to claim 3, characterized in that After receiving the SRv6 message sent by the first PE device, the method further includes: Determine whether the configuration information of the second PE device includes adhesion configuration information, where the adhesion configuration information is used to indicate that the second PE device is used to implement intercommunication between the SRv6 network and the MPLS network; If the configuration information of the device itself includes the adhesion configuration information, the device itself is determined to be an adhesion device; If its own configuration information does not include the adhesion configuration information, it is determined that it is the tail node.
5. A fault detection device, characterized in that: The device is applied to a first service provider edge PE device in an Ethernet virtual private network EVPN, the first PE device is connected to a second PE device through an Internet communication protocol version 6 segment routing pseudowire SRv6PW tunnel, and the device includes: A generating module, configured to generate an Internet Communication Protocol Version 6 SRv6 message, wherein the SRv6 message includes a first indicator, wherein the first indicator is used to indicate that an inner layer message of the SRv6 message is a bidirectional forwarding detection BFD message; A sending module, used for sending the SRv6 message to the second PE device, so that when the second PE device is a tail node, the second PE device establishes a BFD session with the head node according to the BFD message, and when the head node detects through the BFD session that there is a fault in the PW tunnel between the head node and the tail node, the service flow is switched to the backup tunnel; or, when the second PE device is a bonding device, the second PE device transparently transmits the BFD message to the tail node, so that a BFD session is established between the head node and the tail node, and when the head node detects through the BFD session that there is a fault in the PW tunnel between the head node and the tail node, the service flow is switched to the backup tunnel; Wherein, the head node and the tail node are both nodes connected to the user edge CE device; The head node is a first multi-protocol label switching MPLS device, and the first PE device is connected to the first multi-protocol label switching MPLS device through a first multi-protocol label switching pseudo wire MPLS PW tunnel; The device also includes: A receiving module, configured to receive a first MPLS message sent by the first MPLS device before the generating module generates the SRv6 message; A decapsulation module, configured to decapsulate the first MPLS message and read a pseudo wire associated channel PWACH field in the first MPLS message; an extraction module, configured to extract a BFD message after the PW ACH field if the value of the PW ACH field is a BFD control word, wherein the BFD control word is used to indicate that the inner layer message included in the first MPLS message is a BFD message; The generating module is specifically configured to encapsulate the BFD message to obtain the SRv6 message, wherein the value of the inner routing header field of the SRv6 message is the first indicator.
6. The device according to claim 5, characterized in that The device also includes: A judgment module is used to judge whether its own configuration information includes adhesion configuration information, and the adhesion configuration information is used to indicate that the first PE device is used to realize the intercommunication between the MPLS network and the SRv6 network; if its own configuration information includes the adhesion configuration information, the generation module is triggered to encapsulate the BFD message to obtain the SRv6 message.
7. A fault detection device, characterized in that: The device is applied to a second service provider edge PE device in an Ethernet virtual private network EVPN, the second PE device being connected to the first PE device via a first Internet communication protocol version 6 segment routing pseudowire SRv6PW tunnel; The device comprises: A receiving module, configured to receive an Internet Communication Protocol Version 6 SRv6 message sent by the first PE device, wherein the SRv6 message includes a first indicator, and the first indicator is used to indicate that an inner layer message of the SRv6 message is a bidirectional forwarding detection BFD message; An establishing module, configured to establish a BFD session with a head node according to the BFD message if the second PE device is a tail node, so that when the head node detects through the BFD session that a PW tunnel between the head node and the tail node is faulty, the service flow is switched to a backup tunnel; A transparent transmission module, configured to transparently transmit the BFD message to the tail node if the second PE device is a bonding device, so that a BFD session is established between the head node and the tail node, and when the head node detects through the BFD session that a PW tunnel between the head node and the tail node is faulty, switch the service flow to a backup tunnel; Wherein, the head node and the tail node are both nodes connected to the user edge CE device; The tail node is a second multi-protocol label switching MPLS device, and the second MPLS device is connected to the second PE device; The device also includes: A reading module, used to read the inner routing header field of the SRv6 message; an extraction module, configured to extract the BFD message from the SRv6 message if it is determined that the value of the inner routing header field is the first indicator; An encapsulation module, configured to encapsulate the BFD message to obtain a second MPLS message, wherein a value of a pseudo wire associated channel control channel PWACH field of the second MPLS message is a BFD control word; The transparent transmission module is specifically used to send the second MPLS message to the second MPLS device.
8. The device according to claim 7, characterized in that The device further comprises: a judgment module; The judging module is used for: Determine whether the configuration information of the second PE device includes adhesion configuration information, where the adhesion configuration information is used to indicate that the second PE device is used to implement intercommunication between the SRv6 network and the MPLS network; If the configuration information of the second PE device includes the adhesion configuration information, determining that the second PE device is a adhesion device; If the configuration information of the second PE device does not include the adhesion configuration information, it is determined that the second PE device is an end node.
9. A PE device, characterized in that: It includes a processor, a communication interface, a memory and a communication bus, wherein the processor, the communication interface and the memory communicate with each other through the communication bus; Memory, used to store computer programs; A processor, for implementing the method steps described in any one of claims 1-2 or 3-4 when executing a program stored in a memory.
Citation Information
Patent Citations
Method, apparatus and system for bidirectional forwarding detection implementation
CN101425942A
Protecting method, device and system of packet network
CN101902353A