Dual-homed protection method, device, and computer readable medium
Patent Information
- Application Number
- JP2024097818
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2023-06-19
- Filing Date
- 2024-06-18
- Publication Date
- 2025-01-09
Smart Images

Figure 2025003373000001_ABST
Abstract
Description
[Technical field]
[0001] FIELD OF THE DISCLOSURE Embodiments of the present disclosure relate generally to the field of communications, and more specifically, to a dual-home protection method, apparatus, and computer-readable medium. [Background technology]
[0002] Fronthaul networks based on optical communication network architecture have become popular with the development of optical communication technology. Fronthaul networks can realize traffic data transmission between customer equipment (CE), for example, between radio unit (RU) and distribution unit (DU). To improve the reliability of data transmission, some service providers use two communication links between CE to form an active / standby protection switching mechanism (also called dual-home protection).
[0003] However, some existing CEs do not support the relevant protection protocols, and traditional protection switching mechanisms take a long time to complete switching. Therefore, further research and development of protection switching mechanisms with a wider scope and faster response speed is needed. Summary of the Invention [Problem to be solved by the invention]
[0004] In general, exemplary embodiments of the present disclosure relate to a high speed dual home port protection mechanism. [Means for solving the problem]
[0005] In a first aspect of the present disclosure, an apparatus is provided, the apparatus including at least one processor and at least one memory, the memory having instructions stored therein that, when executed by the at least one processor, cause the apparatus to perform: determining, at a first transport node, a protection state of a first port of the first transport node based on at least one of at least one local request generated by the first transport node or at least one control message from a second transport node, where the first port and a second port of the second transport node are coupled to customer equipment, a port function of the first port is one of a working port or a protection port, and a port function of the second port is the other of the working port or the protection port; and determining a usage status of the first port with respect to the customer equipment based on the protection state and the port function of the first port, where the usage status includes active or standby.
[0006] In a second aspect of the present disclosure, a method is provided that includes: at a first transport node, determining a protection state of a first port of the first transport node based on at least one of at least one local request generated by the first transport node or at least one control message from a second transport node, where the first port and a second port of the second transport node are coupled to customer equipment, and a port function of the first port is one of a working port or a protection port, and a port function of the second port is the other of the working port or the protection port; and determining a usage status of the first port with respect to the customer equipment based on the protection state and the port function of the first port, where the usage status includes active or standby.
[0007] In a third aspect of the present disclosure, an apparatus is provided, comprising: means, at a first transport node, for determining a protection state of a first port of the first transport node based on at least one of at least one local request generated by the first transport node or at least one control message from a second transport node, where the first port and a second port of the second transport node are coupled to customer equipment, and a port function of the first port is one of a working port or a protection port, and a port function of the second port is the other of the working port or the protection port; and means for determining a usage status of the first port for the customer equipment based on the protection status and the port function of the first port, where the usage status includes active or standby.
[0008] In a fourth aspect of the present disclosure, a computer-readable medium is provided having instructions stored thereon that, when executed by an apparatus, cause the apparatus to at least: determine, at a first transport node, a protection state of a first port of the first transport node based on at least one of at least one local request generated by the first transport node or at least one control message from a second transport node, where the first port and a second port of the second transport node are coupled to customer equipment, where a port function of the first port is one of a working port or a protection port and a port function of the second port is the other of the working port or the protection port; and determine a usage status of the first port with respect to the customer equipment based on the protection state and the port function of the first port, where the usage status includes active or standby.
[0009] In a fifth aspect of the present disclosure, a computer program having instructions that, when executed by an apparatus, cause the apparatus to at least: determine, at a first transport node, a protection state of a first port of the first transport node based on at least one of at least one local request generated by the first transport node or at least one control message from a second transport node, where the first port and a second port of the second transport node are coupled to customer equipment, and a port function of the first port is one of a working port or a protection port, and a port function of the second port is the other of the working port or the protection port; and determine a usage status of the first port with respect to the customer equipment based on the protection status and the port function of the first port, where the usage status includes active or standby.
[0010] In a sixth aspect, an apparatus is provided, comprising: a protection state determination circuit, at a first transport node, configured to determine a protection state of a first port of the first transport node based on at least one of at least one local request generated by the first transport node or at least one control message from a second transport node, wherein the first port and a second port of the second transport node are coupled to customer equipment, and a port function of the first port is one of a working port or a protection port, and a port function of the second port is the other of the working port or the protection port; and a usage status determination circuit configured to determine a usage status of the first port with respect to the customer equipment based on the protection state and the port function of the first port, wherein the usage status includes active or standby.
[0011] This Summary is provided to introduce a selection of concepts in a simplified form that are further described below in the Detailed Description. This Summary is not intended to identify key features or essential features of the disclosure, nor is it intended to be used to limit the scope of the disclosure. [Brief description of the drawings]
[0012] [Figure 1] FIG. 1 illustrates an example of a communication system in which embodiments of the present disclosure may be implemented. [Diagram 2] FIG. 2 illustrates a schematic interaction diagram of a communication method according to some embodiments of the present disclosure. [Diagram 3] FIG. 3 illustrates a schematic block diagram of a Dual Home Port Protection (DHPP) system according to some embodiments of the present disclosure. [Figure 4] FIG. 4 illustrates an exemplary embodiment of a DHPP module according to some embodiments of the present disclosure. [Figure 5A] FIG. 5A illustrates an example embodiment of a control message for DHPP according to some embodiments of the present disclosure. [Figure 5B] FIG. 5B illustrates an example embodiment of a control message for DHPP according to some embodiments of the present disclosure. [Figure 5C] FIG. 5C illustrates an example embodiment of a control message for DHPP according to some embodiments of the present disclosure. [Figure 6] FIG. 6 shows a schematic diagram of a DHPP system under normal conditions according to some embodiments of the present disclosure. [Figure 7] FIG. 7 illustrates a schematic diagram of a DHPP system having a traffic data link failure according to some embodiments of the present disclosure. [Figure 8] FIG. 8 illustrates a schematic diagram of a DHPP system with an active node failure according to some embodiments of the present disclosure. [Figure 9] FIG. 9 illustrates a schematic diagram of a DPHH system with a standby node failure according to some embodiments of the present disclosure. [Figure 10] FIG. 10 illustrates a schematic diagram of a DPHH system with a DHPP control link failure according to some embodiments of the present disclosure. [Figure 11] FIG. 11 illustrates a schematic diagram of a DHPP system with mate fail and DHPP control link failure according to some embodiments of the present disclosure. [Figure 12] FIG. 12 illustrates a schematic diagram of a DHPP system for dual port customer equipment according to some embodiments of the present disclosure. [Figure 13] FIG. 13 illustrates a schematic flow chart of a communication method according to some embodiments of the present disclosure. [Figure 14] FIG. 14 shows a simplified block diagram of an electronic device adapted to implement embodiments of the present disclosure. [Figure 15] 15 shows a schematic diagram of a computer readable medium adapted to implement embodiments of the present disclosure. Throughout the drawings, the same or similar elements are referred to as the same or similar reference numerals. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0013] In order to explain the purpose and gist of the present disclosure, reference will be made below to some exemplary embodiments shown in the drawings. It should be noted that the description of these specific embodiments is intended to enable those skilled in the art to better understand and practice the present disclosure, and is not intended to limit the scope of the disclosure in any way.
[0014] As used herein, the term "including" and its derivatives are to be interpreted as open-ended terms meaning "including, but not limited to." The term "based on" is to be interpreted as "based at least in part on." The term "an embodiment" or "an embodiment" is to be interpreted as "at least one exemplary embodiment." The terms "first," "second," and similar terms may refer to different or the same object. Other definitions, either express or implied, may be included below.
[0015] As used herein, the term "determining" encompasses a broad range of actions. For example, "determining" includes calculating, computing, processing, deriving, investigating, referencing (e.g., referencing a table, database, or other data structure), ascertaining, and the like. Additionally, "determining" may include receiving (e.g., receiving information), accessing (e.g., accessing data in a memory), and the like. Additionally, "determining" may include resolving, selecting, choosing, establishing, and the like. As used herein, in "at least one of: a list of two or more elements," "at least one of a list of two or more elements," and similar expressions, two or more elements of a list joined by "and" or "or" means at least one of those elements, or at least two or more of those elements, or all of those elements.
[0016] The term "circuitry" as used herein may refer to any one or more of the following: (a) a hardware-only circuit implementation (e.g., an implementation with only analog and / or digital circuitry), (b) a combination of hardware circuitry and software (where applicable), (i) a combination of analog and / or digital hardware circuitry(s) and software / firmware, and (ii) a combination of any portion of hardware processor(s) and software (including digital signal processors, software, and memory(s) that work together to perform various functions in devices such as mobile phones and servers), and (c) hardware circuit(s) and / or processor(s) that require software (e.g., firmware) for operation, such as microprocessor(s) or portions of microprocessor(s), although software may be absent if not necessary for operation.
[0017] This definition of circuitry applies to all uses of the term in this application, including the claims. Further, by way of example, the term "circuitry" may cover merely a hardware circuit or processor (or processors), or a portion of a hardware circuit or processor and its (or their) accompanying software and / or firmware implementations. The term "circuitry" may also cover, where applicable to certain claim elements, a baseband integrated circuit or a processor integrated circuit, or similar integrated circuit in a switch or other computing device.
[0018] For dual-homed topology, common protection mechanisms in packet forwarding networks are Multi-Chassis Link Aggregation Group (MC-LAG) and Ethernet Ring Protection (ERP). The disadvantages of these two protection mechanisms are that both MC-LAG and ERP require the customer equipment (CE) to support the same protection protocol and control switching on the other side of the link, and the packet forwarding system must coordinate with the CE to perform the protection switching, and both MC-LAG and ERP require the customer equipment to provide two ports, one as the active port and the other as the standby port.
[0019] More and more service providers are transforming their networks to cloud-based solutions. For example, open radio access networks (Open RAN) and virtual radio access networks (vRAN) are two of the hottest topics. Open access networks decentralize mobile base stations using industry-standardized interfaces between baseband units (BBUs) and radio units (RUs), such as the O-RAN interface, enhanced common radio interface (eCPRI), and common radio interface (CPRI). vRAN replaces the BBU with software running on general-purpose servers, which allows operators to operate their networks with more flexibility and agility, and potentially allows for a wider range of software choices from different vendors. vRAN includes devices such as virtual distributed units (vDUs) and virtual central units (vCUs), which are required by 3GPP and other open RAN standardization bodies.
[0020] When implementing network functions with software on a general-purpose server, the processing efficiency depends on the performance of the processor, such as the central processing unit (CPU), graphics processing unit (GPU), and data processing unit (DPU). Unlike hardware-based application-specific integrated circuits (ASCICs) and field-programmable gate arrays (FPGAs) that can support processing at wire speed, the computing power of the processor is greatly affected by the load, so some network functions are not supported to reduce the load.
[0021] Some service providers are planning to build a next-generation fronthaul transmission network to transmit traffic between RU and vDU / vCU, where two fronthaul transmission nodes are deployed to ensure redundancy in case one of the nodes fails. To guarantee performance, it is necessary to provide a fast automatic protection mechanism within 50 milliseconds for node failure or link failure. However, for cost reduction, RU has only one uplink interface to vDU, and RU / vDU / vCU does not support existing fast protection protocols such as LAG, MC-LAG, ERP, ELP (Ethernet Linear Protection). Existing solutions to solve this problem include: on the RU side, RUs that do not support automatic protection can only be switched manually by the operator; on the vDU / vCU side, MC-LAG mechanism is supported by disabling Link Aggregation Control Protocol (LACP) protocol, but the performance is not ideal and the time required for protection switching is in the order of seconds.
[0022] In addition to cloud networks, some traditional non-cloud networks also have some devices that do not support Layer 2 protection mechanisms, such as LAG / MC-LAG / ERP / ELP, and also require high-speed protection mechanisms, for example, when traffic hit times of less than 50 milliseconds are required.
[0023] In view of the above, the embodiments of the present disclosure provide a high-speed dual home port protection mechanism without requiring the CE to support a protection protocol or have two ports. The basic concept of the embodiments of the present disclosure is that the high-speed protection mechanism operates between two local packet transport nodes, exchanges protection state control messages between the two transport nodes, and controls two working / protection links connected to the CEs so that only one link is "active" at a time, which forwards traffic data between the CEs. This mechanism can control switching based on locally detected defects without requiring control message exchange with the CE. In some implementations, a CE with one port uses a Y cable (including optical Y cable and electrical Y cable) to form two links (splitting a signal from the only port of the customer equipment into two duplicate signals that are respectively copied to two peer packet transport nodes), so that the CE can be configured to trigger the shutdown of the laser of the port connected to the CE, preventing the duplication of signals by the Y cable.
[0024] FIG. 1 illustrates an exemplary communication system 100 in which embodiments of the present disclosure can be implemented. The communication system 100 may be an optical or packet transmission system and may be implemented in a fronthaul network, for example, at a 4G, 5G or other standard base station. As illustrated, the communication system 100 includes a first transport node 110, a second transport node 120, a customer equipment 130, and a customer equipment 140. The customer equipment 130 may be a radio unit (RU), a router, etc., and the customer equipment 140 may be a distributed unit (DU) or a virtualized distributed unit (vDU) in the form of software on a general-purpose processor. The first transport node 110 and the second transport node 120 may be switching devices, for example, Ethernet service switches. The first transport node 110 and the second transport node 120 may include physical or logical ports (112, 122, 114, 124, 116, 126) for communicating with the customer equipment 130 and the customer equipment 140 or with each other. This port can support any EVC service (E-Line / E-LAN / E-Tree services, etc.).
[0025] The customer equipment 130 and the customer equipment 140 may transmit data bidirectionally via one or more ports of the first transport node 110 and the second transport node 120. For example, traffic data transmission from the customer equipment 130 to the customer equipment 140 may be referred to as an uplink transmission, and traffic data transmission from the customer equipment 140 to the customer equipment 130 may be referred to as a downlink transmission. It should be noted that the communication system 100 may include a different number of customer equipment 130 and 140 than shown in FIG. 1 and may provide data transfer services between multiple CEs 130 and multiple customer equipment 140 simultaneously.
[0026] As mentioned above, the communication system 100 needs to support a protection mechanism to recover user traffic data between the customer equipment 130 and 140 in order to handle link failures or failures of the transport nodes 110 and 120. As shown in FIG. 1, the connected customer equipment 130 can access two alternative (redundant) transport nodes 110 and 120 in a dual-homed manner. The customer equipment 130 can connect to a port 112 of the first transport node 110 and to a port 122 of the second transport node 120 to form links for traffic data transmission, respectively. The first transport node 120 includes a port 116 connected to an upstream customer equipment 140. Similarly, the second transport node 120 includes a port 126 connected to an upstream customer equipment 140. The first transport node 110 and the second transport node 120 can be connected to each other via mate ports 114 and 124 to form a mate link capable of transmitting traffic data and / or protection control messages. It should be noted that the number of ports shown in Figure 1 is provided as an example and is not limiting. For example, each of the first transport node 110 and the second transport node 120 may include multiple ports for downstream customer equipment 130 and multiple ports for upstream customer equipment 140, and each transport node may have multiple mate ports for forming multiple mate links.
[0027] To implement data protection in the event of failure, the port 112 of the first transport node 110 and the port 122 of the second transport node 120 may form a port group, where the port 112 of the first transport node 110 is configured as a working port (e.g., has higher performance and is up most of the time) and the port 122 of the second transport node 120 is configured as a protection port. Note that the reverse configuration is also possible. In some implementations, a node may have multiple node groups on it. Some of the ports of the first transport node 110 are working ports and other parts of the ports are protection ports. The second transport node 120 has a similar configuration. During normal operation, only one transport port in the port group is active at a time, and the other transport ports are in standby. For example, the first port 112 is active and the second port 122 is in standby. In this case, the customer equipment 130 can transmit and receive traffic data to and from the customer equipment 140 via the port 112 and the port 116 of the first transport node 110, the corresponding service access point is not blocked, the port 122 of the second transport node 120 is in standby state, and the customer equipment 130 does not transmit and receive traffic data to and from the customer equipment 140 via the port 122. If a communication failure (e.g., a transport node failure or a link failure) occurs between the customer equipment 130 and the customer equipment 140, the standby transport node 120 can take over the traffic data. The node failure may be, for example, a hardware failure at the node level, an intentional or unintentional restart and shutdown, etc. The link failure may occur in a link for transmitting traffic data connected to the access device 130, a mate link for transmitting traffic data between two transport nodes, a mate link for transmitting protection control messages between two transport nodes, etc.At this time, customer equipment 130 may switch to further communicate with customer equipment 140 via ports 122 and 126 of a second transmission device (not shown in FIG. 1 ). It should be noted that the protection switching mechanism according to the embodiments of the present disclosure may not only be implemented in downstream customer equipment 130, but may also be applied to upstream customer equipment 140, although the present specification is not limited thereto.
[0028] According to an embodiment of the present disclosure, the desired protection switching can realize at least one of the following aspects: in case of a failure of an active node, the traffic data of all ports of the active node is switched to the standby node, in case of a failure of the standby node, the traffic data of all ports of the active node is not affected and no traffic loss occurs; in case of a failure of one port of the active node, the traffic data of that port should be switched to the corresponding port of the standby node, in case of a failure of a port of the standby node, the traffic of the corresponding port of the active node is not affected and no traffic data loss occurs; in case of a failure of a mate link, the traffic data is still recovered and forwarded.
[0029] To this end, the embodiments of the present disclosure provide an improved technical solution that can implement port-based high-speed dual-home protection based on local request and control messages between transport nodes. Hereinafter, the embodiments of the present disclosure will be described in detail with reference to FIGS.
[0030] FIG. 2 shows a schematic interaction diagram of a communication method 200 according to some embodiments of the present disclosure. The communication method 200 may be performed by the first transport node 110 and the second transport node 120 as shown in FIG. 1. In some embodiments, the dual home protection function performed across the first transport node 110 and the second transport node 120 may be equivalent, i.e., the operation of the first transport node 110 may be performed by the second transport node 120 and the operation of the second transport node 120 may be performed by the first transport node 110. Alternatively, the dual home protection function may be performed by one of the first transport node 110 and the second transport node 120, while the other node may be dedicated only to reporting local port failures and notifying the usage status determined by the peer end. For ease of explanation, the interaction process 200 will be described with reference to FIG. 1.
[0031] At 201, the first transport node 110 determines a protection state of the first port 112 of the first transport node 110 based on at least one of at least one local request generated by the first transport node 110 or at least one control message from the second transport node 120. The local request may be a request triggered at the first transport node, such as, for example, detection of a link or node failure, performance degradation, manual protection switch by a user, protection switch by the node itself, etc. In some embodiments, the first transport node 110 may retrieve the local requests periodically or retrieve the triggered state of all local requests at the first transport node 110 in response to an event, for example, a change in any of the local requests.
[0032] The first transport node 110 may also receive control messages from the second transport node 120, for example, via a mate link between mate ports 114 and 124. The mate link for carrying the control messages may be a separate link or a shared link for carrying traffic data between the transport nodes 110 and 120. The control message from the second transport node 120 may include a far-end request indicating a protection status of the second port 122 of the second transport node. In some embodiments, the first transport node 110 may receive the control messages from the second transport node 120 periodically or may receive the respective control message upon an event occurring at the second transport node 120.
[0033] In some embodiments, each protection state in the set of protection states can be associated with a priority. The protection state with the highest priority indicated in the local request and the far-end request is determined as the protection state of the first port. In other words, the request with the highest priority can be found, and the protection state of the first port 112 can be determined based on the request with the highest priority.
[0034] At 202, in the first transport node 110, the usage status of the first port 112 for the customer equipment 130 is determined based on the protection status and the port capability of the first port 112. The first port 112 of the first transport node 110 and the second port 122 of the second transport node 120 may be coupled to the customer equipment 130 and have corresponding mate port capabilities to perform dual-home protection. As used herein, the port capability may also be referred to as the port role, and the two terms are interchangeable. For example, the port capability of the first port 112 may be a working port, and the port capability of the second port 122 may be a protection port (of course, this order can be reversed). In some embodiments, the port capability or role may be set based on the performance or load of the transport node. During normal operation, the first port is active and the second port 122 is in a standby state, i.e., the customer equipment 130 transmits and receives traffic data through the first port 112, and traffic data (if any) at the second port 122 is discarded. After a protection switch (e.g., a failure of the first transport node 110 or the first port 112), the customer equipment 130 can switch to transmitting and receiving traffic data via the second port 122 to perform protection of the traffic data.
[0035] In some embodiments, the protection state may indicate a usage status related to a port function. The usage status of the port function may be represented by the following configurations: the working port is active while the protection port is in a standby state, the working port is in a standby state while the protection port is in an active state, both the working port and the protection port are in an active state, etc. Thus, whether to place the first port in an active state or a standby state may be determined based on the determined protection state of the first port and the port function of the first port.
[0036] In some embodiments, if the usage of the first port 112 is determined to be active, packets from or to the customer equipment 130 are forwarded on the first port and MAC (Media Access Control) address learning can be enabled in the inbound direction. If the usage of the first port 112 is determined to be active, packets on the first port 112 are dropped and MAC address learning in the inbound direction is stopped. In some embodiments, if the usage changes, the MAC addresses learned on the first port and the MAC addresses of the mate port 114 connected to the second transport node 120 are flushed. Additionally or alternatively, the MAC address may be removed entirely in the filter database (FDB) of the transport node 110.
[0037] In some embodiments, ports of customer equipment are coupled to the first port 112 and the second port 122 via an optical splitter / combiner (e.g., a Y cable). If the usage status of the first port 112 is determined to be standby, the transmit laser at the first port 112 may be shut down. If the usage status of the first port 112 is determined to be active, the transmit laser at the first port 112 may be activated.
[0038] At 203, the first transport node 110 transmits a control message 205 to the second transport node 120. In response, the second transport node 120 receives the control message 205 from the first transport node 110. The control message 205 may indicate the protection status, usage status, and other information of the first port 110. The control message 205 is transmitted periodically, or when a failure occurs in the first transport node 110, or when the protection status or usage status of the first port 112 changes.
[0039] At 206, at the second transport node 120, a protection status of the second port 122 of the second transport node 120 is determined based on at least one of the at least one local request generated by the second transport node 120 or the at least one control message from the first transport node 110. At 207, a usage status of the second port 122 for the customer equipment 130 is determined based on the protection status and the port capabilities of the second port 122. At 208, the second transport node 120 sends a control message 215 to the first transport node 110. In response, the first transport node 110 receives the control message 215 from the second transport node 120. In some embodiments, the dual home functions implemented in the first transport node 110 and the second transport node 120 are identical, and the operations in the second transport node are similar to the operations 201 to 203 of the first transport node 110, which are omitted here. In some implementations, the dual-home protection function can be performed only in the first transport node 110, and the second transport node 120 reports the failure of the second port 122 and receives and applies the usage determined by the first transport node 110 without determining the protection state or usage of the local port. In other words, the operations 206 and 207 may be omitted, and the control message 215 is mainly used to notify the failure information of the second port 122. Therefore, together with the local request, the first transport node 110 and the second transport node 120 can negotiate the usage of the mate first and second ports by exchanging control messages to perform fast dual-home protection for the customer equipment without the customer equipment supporting additional protection switching protocols.
[0040] 3 shows a schematic block diagram of a Dual Home Port Protection (DHPP) system according to some embodiments of the present disclosure. The DHPP mechanism may be an exemplary embodiment for performing the interaction process 200 shown in FIG. 2. In some embodiments, the customer equipment 130 has only one port, and the only port can be expanded to two ports using an optical splitter / combiner 150, where one port is coupled to the first port 112 and the other port is coupled to the second port 122. If the customer equipment 130 has two ports, the two ports can be directly coupled to the first port 112 and the second port 122.
[0041] The first transport node 110 and the second transport node 120 may operate at Layer 2, which are also referred to as switching nodes. As shown in Fig. 3, when the customer equipment 130 is dual-homed to the two alternative transport nodes 110 and 120, the DHPP process or modules 115 and 125 (the two DHPP modules are also collectively referred to as a DHPP group) may run in two transports, respectively, to perform the interworking process 200 shown in Fig. 2. Specifically, the DHPP group is distributed to the two alternative transport nodes 110 and 120, where the first transport node 110 includes the DHPP module 115 and the second transport node 120 includes the DHPP module 125.
[0042] The DHPP modules 115 and 125 may have the same functionality. The mate DHPP modules 115 and 125 may cooperate to operate a pair of ports 112 and 122, one of which is in an "active" usage state and the other in a "standby" state, to protect traffic data transmission between the transport node and the customer equipment in the event of a communication system failure and reduce traffic arrival time. For coordination, the mate DHPP modules 115 and 125 may exchange control messages to synchronize information regarding protection state, switching commands, active / standby state, and filter database (FDB) flushing. It should be noted that the first transport node 110 and the second transport node 120 may be included in the same device or different devices, and the mate first port 112 and second port 112 may be controlled by a single DHPP module.
[0043] 4 illustrates an example embodiment of a DHPP module according to some embodiments of the present disclosure. The DHPP module may include a protection state switching function that allows the DHPP module to determine the protection state and utilization of ports based on local requests and control messages from further transport nodes.
[0044] In some embodiments, the protection state of a port may be one of a set of protection states. Each protection state may have an associated priority. In some embodiments, the set of protection states may include at least one of: lockout-on-work (LO-W), lockout-on-work (LO-P), mate fail (MF), forced switch-on-on-work (FS-W), forced switch-on-on-work (FS-P), signal fail-on-work (SF-W), signal fail-on-work (SF-P), signal degrade-on-work (SD-W), signal degrade-on-work (SD-P), manual switch-on-on-work (MS-W), manual switch-on-on-work (MS-P), no request-on-work (NR-W), or no request-on-work (NR-P). Here, mate link failure refers to a failure of a mate port carrying traffic data or a DHPP control link failure. The mate port carrying traffic data and the port carrying the DHPP control link may be the same or different. In some embodiments, more protection states may be included, such as wait to restore (WTR), execute (EXER), cancel requested (RR), and do not resume (DNR).
[0045] The protection states may be prioritized from high to low as follows: Lockout (LO-W / LO-P) > Mate Fail (MF) > Force Switch (FS-W / FS-P) > Link Fault (SF-W / SF-P) > Link Degraded (SD-W / SD-F) > Manual Switch (MS-W / MS-P) > No Request in Work (NR-W) > No Request in Protection (NR-P). Alternatively, the protection states may be prioritized from low to high as follows: Lockout (LO-W / LO-P) > Force Switch (FS-W / FS-P) > Mate Fail (MF) > Link Fault (SF-W / SF-P) > Link Degraded (SD-W / SD-F) > Manual Switch (MS-W / MS-P) > No Request in Work (NR-W) > No Request in Protection (NR-P).
[0046] The DHPP module can perform protection state transition based on the above priority. As shown in FIG. 4, the DHPP module includes a local priority determination circuit 402, a global priority determination circuit 404, a validity checking circuit 406, a mismatch detection circuit 408, etc. The local priority determination circuit 402 is configured to receive a local request and output a local request with the highest priority. The validity checking circuit 406 is configured to receive a control message from a far-end transport node and output a far-end request after checking. Assuming that the DHPP module is the DHPP module 115, it receives a control message of the second transport node 120, and the far-end request indicates a protection state of the second port 122. The global priority determination circuit 404 is configured to determine a global request with the highest priority from the far-end request and the local request with the highest priority. Then, the DHPP module determines a protection state of the port based on the global request with the highest priority and the previous protection state of the port, and determines the usage status of the local port based on the determined protection state.
[0047] In some embodiments, when commands / conditions of the same priority are executed simultaneously on two transport nodes (i.e., a local request and a far-end request are of the same priority), a command / condition to activate a working port takes precedence over a command / condition to activate a protection port. In other words, if the DHPP module's local port is a working port, the DHPP module determines the port usage as active, and if the local port is a standby port, the DHPP module determines the port usage as standby.
[0048] In some embodiments, the protection state of a port may be determined based on one or more state transition tables. The state transition table may be set based on a protection switching mode, such as, for example, revertive switching and non-revertive switching. Revertive switching refers to a mode in which traffic data is switched to a working node or working port after a failure of the working node or working port is restored. Non-revertive switching refers to a mode in which traffic data is not switched to a working node or working port after a failure of the working node or working port is restored, but continues to be transmitted on a protection node or protection port. In some embodiments, the state transition table may be different depending on whether the highest priority global request is a local request or a far-end request. It should be noted that in the state transition table, if the priority of the immediately preceding protection state is higher than the priority of the protection state indicated by the highest priority global request, a transition may not be performed for that protection state.
[0049] In some embodiments, the DHPP module may also use a mismatch detection circuit 408 to detect whether the distal port usage matches the locally determined port usage. If not, error information may be generated to indicate that the protection switch is not completed. Figures 5A-5C show exemplary embodiments of control messages for DHPP according to some embodiments of the present disclosure. Figure 5A shows a control message based on a protocol data unit (PDU) format in which 4 bytes are used to carry request information from or to the far end. In some embodiments, other fields may be defined as follows: version: 0x00, opcode: 0d39 (=0x27), flags: 0x00, and termination TLV: 0x00. The MEL field is filled with the maintenance entity group (MEG) level of the PDU.
[0050] Figure 5B shows an example of the format of the request information in Figure 5A. The request information includes a request / status, a protocol type, a requested signal (r), bridge information (b), a bridge type (T), a mate fail setting (P), and a reserved byte.
[0051] FIG. 5C shows the fields of FIG. 5B and their meanings. It is noteworthy that there is a mate fail (MF) condition, and one byte P is used to indicate two options when a mate fail occurs. Option 1 (e.g., P is 0) indicates the current active (non-blocked) state and the current standby (blocked) state of the port of the DHPP group, and option 2 (e.g., P is 1) indicates that both two ports of the DHPP group are in an active (non-blocked) state. Option 1 is mainly used when the two ports of the DHPP group are connected to the customer equipment CE via an optical splitter / combiner (e.g., a Y cable). Option 2 is mainly used when the two ports of the DHPP group are connected to two ports of the customer equipment CE. In some embodiments, when the highest priority request indicates a mate fail (MF), the usage status of the port of the DHPP group can be determined based on the P byte of the control message. When the option is 0, the usage status of the two ports is kept unchanged, and when the option is 1, the usage status of both two ports is determined to be active.
[0052] The control message may indicate the protection state of the port (e.g., the “Request / State” field in FIG. 5C). In some embodiments, the control message may also indicate port usage (e.g., the “Request Signal” and “Bridge Signal” fields in the downlink and uplink communications in FIG. 5C). In some embodiments, the control message may further indicate a filter database (FDB) flush in case of node failure, where the FDB stores Media Access Control (MAC) addresses learned at the transport node. In some embodiments, an FDB flush may be performed when a port usage changes (i.e., from active to standby or from standby to active) or when a node failure occurs. An FDB flush may include flushing MAC addresses learned at the associated port or may include flushing the FDB of the entire transport node.
[0053] The embodiments of the present disclosure further provide protection for mate links. In some embodiments, a mate link between transport nodes includes multiple mate links, and the control message and its copy can be sent to a first link and a second link in the multiple mate links, respectively. For example, on the sending side, the control message is broadcast to two links, with one copy being broadcast to each link, and on the receiving side, the control message is received on the two mate links, and one copy is selected to verify whether the mate link is working properly, and then sent to the DHPP module after verification.
[0054] As used herein, a failure may include a traffic data link failure, a transport node failure, or a mate failure between transport nodes. A port failure may be considered as a traffic data link failure and corresponds to a protection state of signal fail-working (SF-W) or signal fail-protected (SF-P). In some embodiments, the detection of a traffic data link failure may cover detection of physical layer failures including local failures (e.g., power loss, signal loss, synchronization loss, and local failure indication) and remote failures (remote failure indication). Additionally or alternatively, the detection of a traffic data link failure may further include, for example, IEEE 802.3ah Operation, Administration, and Maintenance (OAM) link monitoring and remote failure indication. Additionally or alternatively, the detection of a traffic data link failure may include IEEE 802.1ag Configuration Connection Failure Management (CFM) OAM Loss of Continuity (LOC) and Remote Defect Indication (RDI).
[0055] With respect to transport node failure detection, if a transport node is accidentally cold rebooted or powered off, the transport node may use a bulk capacitor or backup power source to send a set of fast control messages (e.g., multiple control messages indicating signal failure (SF)) to the peer transport node in a short period of time. In some embodiments, after the node failure is recovered, the transmit laser on the port of the failed transport node may be disabled until the port usage is determined by the DHHP module.
[0056] For mate fail detection, a transport node may determine the occurrence of a mate fail based on a failure of a mate port transmitting a control message or the consecutive loss of multiple (e.g., three) periodic control messages.
[0057] Examples of work processes using a dual-homed communication system according to embodiments of the present disclosure will be described below with reference to Figures 6 to 12. In these examples, the embodiments of the present disclosure are applied to protect traffic data between a radio unit (RU) and a virtualized distributed unit (vDU), but it should be noted that the present disclosure is not limited thereto.
[0058] As shown in the figure, the customer equipment uses only one port and is connected to two alternative transport nodes via optical splitters / combiners. The DHPP protection mechanism running on transport node 1 and transport node 2 protects the traffic between the RU and transport nodes 1 and 2. To restore end-to-end traffic between the RU and the vDU, MC-LAG is used on transport nodes 1 and 2 to protect the traffic data between the vDU and transport nodes 1 and 2. It should be noted that the MC-LAG is not part of the DHPP protection mechanism but is provided as an example and other protection mechanisms can also be used.
[0059] In this embodiment, the RU uses only one uplink port to connect to a Y cable (including optical Y cable or electrical Y cable) and splits the optical signal into two copies to send to alternative transport nodes respectively. The vDU uses two ports, one of which is connected to transport node 1 and the other to transport node 2. A mate link is connected between transport node 1 and transport node 2 to ensure a forwarding path in case of a link failure. In transport nodes 1 and 2, an Ethernet service (e.g., E-LAN service) is configured to perform Layer 2 forwarding between P1, P2, P3, and P4. In transport nodes 1 and 2, DHPP operates P1, MC-LAG1 operates P2, and MC-LAG2 operates P3.
[0060] A DHPP instance runs on transport node 1 and a peer DHPP instance runs on transport node 2. Here, the DHPP instance on transport node 1 operates P1 on transport node 1 with its port configured as working port. The DHPP instance on the second transport node 2 operates P1 on transport node 2 with its port configured as protected port. DHPP control messages are sent and received over mate links between transport nodes and may share the same link as traffic data, like P4, or may use other links.
[0061] FIG. 6 shows a schematic diagram of a DHPP system in normal state according to some embodiments of the present disclosure. In normal state without any faults or external commands, the priority list defines "No Request in Working (NR-W)" > "No Request in Protection (NR-P)", so in the initial state, the working port is active and forwards traffic data, and the protection port is standby and blocks by shutting down the transmit laser. Thus, traffic from RU and vDU passes through P1 and P2 of transport node 1. Traffic data is bidirectional and may be broadcast before the MAC address is learned.
[0062] 7 shows a schematic diagram of a DHPP system with a traffic data link failure according to some embodiments of the present disclosure. In case of a link failure (e.g., P1 of transport node 1 detects a local or remote failure), the DHPP on transport nodes 1 and 2 performs the following operations:
[0063] The DHPP on transport node 1 transitions its protection state to Signal Fail-Will-Working (SF-W), sets its working port to standby, and shuts down and blocks its transmit laser. The DHPP on transport node 1 flushes the MAC addresses of its working and mate ports and sends the SF-W to its peer DHPP on transport node 2 using a control message.
[0064] Upon receiving SF-W, the DHPP on transport node 2 transitions to state "SF-W, remote", sets the protection port to active state, unblocks it, turns on the transmit laser, and flushes the peer port and P1. The DHPP on transport node 2 also sends a No Protection Request (NR-P) to the peer DHPP on transport node 1.
[0065] Traffic data received by P2 on transport node 1 from the vDU is broadcast to all ports (except P2) and forwarded via P4, and when the traffic data is received by P4 on transport node 2, the traffic data is broadcast to P1 because the MAC table has already been flushed or refreshed. This restores traffic from the vDU to the RU. Traffic data received by P1 on transport node 2 from the RU is broadcast to all ports (except P1) and forwarded via P4. Because the MAC address has already been learned by P2, it is forwarded to P2 on transport node 1. In this way, traffic from the RU to the vDU is restored. This restores bidirectional communication between the RU and the vDU.
[0066] 8 illustrates a schematic diagram of a DHPP system with an active node failure according to some embodiments of the present disclosure. In case of an active node failure (e.g., a hardware failure or power off occurs on a transport node), the DHPP on transport nodes 1 and 2 performs the following processes:
[0067] The DHPP on transport node 1 sends three fast node failure notification control messages (e.g., SF-W) to notify the peer DHPP on transport node 2. Upon receiving the node failure notification control messages, the DHPP on transport node 2 transitions state to "SF-W, remote", sets the protection port to active state, turns on and unblocks the transmit laser, and sends an NR-P to the peer DHPP on transport node 1 using the control message. When a peer node failure is detected, the MC-LAG on transport node 2 becomes active and flushes the MAC addresses learned on P2 / P3.
[0068] The traffic data of the RU received from P1 of transport node 2 is sent to all ports (except P1) and forwarded by P2 / P3. Because the vDU can receive traffic data from two network interface cards (NICs), the traffic data from the RU to the vDU is restored via P1 and P2 / P3. When the MAC address of the RU is received on P1, the vDU learns the MAC address of the RU on NIC2 and starts sending traffic data via NIC2. The traffic data received from the vDU by P2 of transport node 2 is forwarded to P1 based on the learned MAC address. In this way, the traffic from the vDU to the RU is restored. This restores the bidirectional communication between the RU and the vDU that was interrupted until then.
[0069] 9 illustrates a schematic diagram of a DHPP system with a standby node failure according to some embodiments of the present disclosure. In the case of a standby node failure (e.g., a hardware failure or power off occurs on transport node 2), the DHPP on transport nodes 1 and 2 performs the following processes:
[0070] The DHPP on transport node 2 sends three Fast Node Fault Notification control messages (SF-P) to notify the peer DHPP on transport node 1. Upon receiving the Node Fault Notification control messages, in the absence of any higher priority condition or instruction, the DHPP on the transport node transitions to state "SF-P, remote", keeps the working port active, turns on and unblocks the transmit laser, does not flush the MAC table, and sends "NR-W" to the peer DHPP on transport node 2. Thus, no traffic data is lost in either direction.
[0071] 10 shows a schematic diagram of a DHPP system with a DHPP control link failure according to some embodiments of the present disclosure. In the example of FIG. 10, the DHPP control channel uses a different link than the user traffic. When a DHPP control link failure (e.g., link down or loss of control message) is detected, the DHPP on transport nodes 1 and 2 performs the following actions:
[0072] If a DHPP control link failure is detected, DHPP on transport node 1 transitions to Mate Fail (MF) state, unless a higher priority condition exists such as LO-W / LO-P commands. If option 1 above is used (considering there is only one customer equipment port), the working port remains in Active state, is not blocked, and no MAC table flush is performed. If a DHPP control link failure is detected, DHPP on transport node 2 transitions to Mate Fail (MF) state, unless a higher priority condition exists such as LO-W / LO-P commands, and if option 1 is used, the port remains in Standby state, is unblocked, and no MAC table flush is performed. Thus, no traffic data is lost in either direction.
[0073] 11 shows a schematic diagram of a DHPP system with mate fail and DHPP control link failure according to some embodiments of the present disclosure. If the DHPP control channel shares the same mate link with user traffic data, when a mate fail (e.g., in the downlink direction) is detected, DHPP on transports 1 and 2 will do the following:
[0074] If a mate fail is detected, and no higher priority conditions such as LO-W / LO-P commands exist, DHPP on transport node 1 transitions the port protection state to mate fail (MF), keeps the working port active and unblocked, and does not perform a MAC table flush. If a mate fail is detected, and no higher priority conditions such as LO-W / LO-P exist, DHPP on transport node 2 keeps the protection port in standby and does not perform a MAC table flush. On the other hand, if a mate fail is detected, MC-LAG activates the two peer LAGs. In this way, bidirectional traffic is restored.
[0075] The operation of single port customer equipment has been described above with reference to Figures 6 to 11. Figure 12 shows a schematic diagram of a DHPP system for dual port customer equipment according to some embodiments of the present disclosure. The DHPP protection mechanism running on transport node 1 and transport node 2 can also be used to protect traffic data between transport nodes 1 and 2 and the vDU as an alternative to the MC-LAG of Figures 6-11.
[0076] As shown in the figure, the communication between the RU and the transport node and the communication between the vDU and the transport node are both protected by the DHPP mechanism. For the communication between the transport node and the vDU, the vDU uses two ports, one port is connected to the transport node 1 and the other port is connected to the transport node 2. For the various failures described with reference to Figures 6 to 11, the DHPP of the transport nodes 1 and 2 may follow the same procedure to restore the traffic, except for the difference that the DHPP of the transport nodes 1 and 2 may be configured with the option not to shut off the transmit laser of the standby port, since both NICs of the vDU are scheduled to receive the user traffic. The DHPP may also be configured to shut off the transmit laser of the standby port. These two methods can be flexibly configured. In addition, the DHPP of the transport nodes 1 and 2 may be configured with the option to activate both peer ports in case of a mate fail, so that the traffic data can continue to be forwarded through either port.
[0077] Table 1 below shows a comparison of a DHPP system according to an embodiment of the present disclosure with other existing protection mechanisms (i.e., Ethernet Linear Protection (ELP), Ethernet Ring Protection (EPR), and MC-LAG). [Table 1]
[0078] In some implementations, the protection switching mechanism according to the embodiments of the present disclosure may be implemented in two stages. In the first stage, the mechanism is implemented only on one node, and the other node is responsible for reporting failures on its side and enforcing the port usage determined by the peer port, but in this stage the mate link must use the protection mechanism to prevent the mate from failing. In the second stage, the proposed protection switching mechanism is implemented on both nodes. The method proposed herein can be used to control a single port of a mate, but is not limited to this, to protect a paired port group, to protect a pair of service access points (SAPs) where the SAPs are recognized as port ID+VLAN ID, or to protect a paired group of SAPs.
[0079] 13 illustrates a schematic flow chart of a method 1300 for communicating in accordance with some embodiments of the present disclosure. In some embodiments, the method 1300 may be implemented in either or both of the devices of the first transport node 110 and the second transport node 120 of FIG.
[0080] At block 1310, the method includes, at a first transport node, determining a protection state of a first port of the first transport node based on at least one of at least one local request generated by the first transport node or at least one control message from a second transport node, the first port and a second port of the second transport node being coupled to customer equipment, a port function of the first port being one of a working port or a protection port, and a port function of the second port being the other of the working port or the protection port. At block 1320, the method includes determining a usage status of the first port with respect to the customer equipment based on the protection status and the port function of the first port, the usage status including active or standby.
[0081] In some embodiments, the device can determine a protection state of a first port by: each of at least one local request indicating one protection state of a set of protection states each having an associated priority, where the control message of the at least one control message includes a far-end request indicating a protection state of a second port of the set of protection states; and determining a request with the highest priority from the at least one local request and the far-end request, and determining a protection state of the first port based on a previous protection state of the first port and the request with the highest priority.
[0082] In some embodiments, the set of protection states includes at least one of: lockout while operating, lockout while protecting, mate fail, forced switch on while operating, forced switch on while protecting, signal fail while operating, signal fail while protecting, signal degrade while operating, signal degrade while protecting, manual switch on while operating, manual switch on while protecting, no request while operating, or no request while protecting.
[0083] In some embodiments, the priority of the set of protection states is such that at least lockout during operation and lockout during protection have a higher priority than mate fail, which in turn has a higher priority than force switch, or lockout during operation and lockout during protection have a higher priority than force switch on during operation and force switch on during protection, which in turn have a higher priority than mate fail.
[0084] In some embodiments, the device can determine the highest priority request by determining, based on the priority, a local request having a highest priority among at least one local request, and determining a request having a highest priority among the determined local requests and the far-end requests.
[0085] In some embodiments, determining the protection status of the first port may include, when the local request and the far-end request are of the same priority, determining that the usage of the first port is active based on the port function of the first port being a working port, or determining that the usage of the first port is standby based on the function of the first port being a protection port.
[0086] In some embodiments, the apparatus is further configured to send a control message to the second transport node based on the protection status of the first port, and the usage status of the second port is determined based at least on the control message.
[0087] In some embodiments, the first transport node and the second transport node are coupled via at least one mate link, and the control message is transmitted via one of the at least one mate link.
[0088] In some embodiments, the device is further configured to determine a usage status of the first port and a usage status of the second port based on an indication of the control message when the highest priority request indicates a failure of at least one mate link.
[0089] In some embodiments, determining the first port usage and the second port usage includes at least one of maintaining the first port usage and the second port usage unchanged or determining that the first port usage and the second port usage are both active.
[0090] In some embodiments, the at least one mate link includes a plurality of mate links, and the control message and a copy thereof are transmitted to a first link and a second link in the plurality of mate links, respectively.
[0091] In some embodiments, the control message indicates at least one of a protection state of a port, a usage status of a port, or a flush of a filter database (FDB).
[0092] In some embodiments, the control message is transmitted over at least one of an Ethernet header, an Internet Protocol (IP) header, a Multiprotocol Label Switching (MPLS) header, or an Optical Transport Network (OTN) or Synchronous Digital Hierarchy (SDH) container.
[0093] In some embodiments, the device is further configured to forward packets from or to the customer equipment based on the first port being determined to be in an active state and enable Media Access Control (MAC) address learning at the first port, or to discard packets based on the first port being determined to be in a standby state.
[0094] In some embodiments, a port of the customer equipment is coupled to the first port and the second port via an optical splitter / combiner, and the device is further configured to turn off a transmit laser at the first port based on the usage status of the first port being determined to be standby, or to turn on a transmit laser at the first port based on the usage status of the first port being determined to be active.
[0095] In some embodiments, the apparatus is further configured to update learned MAC addresses at the first port and at least one mate port of the first transport node connected to the second transport node based on a change in usage of the first port.
[0096] In some embodiments, the apparatus is further configured to detect a traffic data link failure, a transport node failure, or a mate failure between transport nodes.
[0097] In some embodiments, detection of faults in the traffic data link is based on at least one of physical layer fault detection, Operations, Administration, and Maintenance (OAM) link monitoring and remote fault indication, or Configuration Connectivity Fault Management (CFM) OAM Loss of Continuity (LOC) and remote station defect indication.
[0098] In some embodiments, when a failed transport node, either the first transport node or the second transport node, recovers, the transmit laser at the device port of the failed transport node may be disabled until the usage status of that port has been determined.
[0099] In some embodiments, the first transport node and the second transport node are comprised in the same network device or in different network devices.
[0100] In some embodiments, the port function of the first port is a working port and a previous usage status of the first port was active, and the apparatus is further configured to, based on detecting a link failure between the first port and the customer equipment, change a protection state of the first port to indicate a failure of the working node, change the usage status of the first port to standby, flush MAC addresses of the first port and a mate port of the second transport node, and send a control message to the second transport node indicating the failure of the working node.
[0101] In some embodiments, the port function of the first port is a protection port and a previous usage state of the first port is standby, and the apparatus is further configured to: change the protection state of the first port to active and flush MAC addresses on the first port and a mate port of the second transport node based on receiving a control message from the second transport node indicating a failure of the working node.
[0102] In some embodiments, the port function of the first port is a working port and a previous usage of the first port is active, and the apparatus is further configured to send at least one control message to the second transport node indicating the failure of the working node based on detecting the failure of the first transport node.
[0103] In some embodiments, the port function of the first port is a protection port and a previous usage status of the first port was active, and the apparatus is further configured to: based on at least receiving a control message from the second transport node indicating a failure of the working node, change both the usage status of the first port and the usage status of a third port coupled to the further customer equipment to active, traffic data being transmitted between the further customer equipment and the customer equipment, and flush MAC addresses on the first port and the third port.
[0104] In some embodiments, the port function of the first port is a protection port and a usage status of the first port is standby, and the apparatus is further configured to send at least one control message to the second transport node indicating a failure of the protection node based on detecting a failure of the protection node of the first transport node.
[0105] In some embodiments, the port function of the first port is a working port and the usage status of the first port is active, and the apparatus is further configured to maintain the usage status of the first port in active status based on receiving at least one control message from the second transport node indicating a failure of the protection node.
[0106] In some embodiments, the customer equipment includes two ports for respectively transmitting different traffic data to the first port, and the apparatus is configured to maintain a transmit laser of the first port on or off based on a determination that the usage of the first port is standby, or to determine that the usage of the first port and the usage of the second port are active based on detecting a mate fail between the first transport node and the second transport node.
[0107] In some embodiments, the apparatus further includes means for performing other steps of some embodiments of method 1300. In some embodiments, the means includes at least one processor and at least one memory having computer program code stored therein, the at least one memory and the computer program code, together with the at least one processor, configured to cause the apparatus to perform these steps.
[0108] In some exemplary embodiments, an apparatus for performing the method 1300 may include means for performing each step of the method 1300. The means may be implemented in any suitable form. For example, the means may be implemented in a circuit or a software module.
[0109] The apparatus may include means, at a first transport node, for determining a protection state of a first port of the first transport node based on at least one of at least one local request generated by the first transport node or at least one control message from a second transport node, the first port and a second port of the second transport node being coupled to customer equipment, a port function of the first port being one of a working port or a protection port, and a port function of the second port being the other of the working port or the protection port. The apparatus may further include means for determining a usage status of the first port with respect to the customer equipment based on the protection status and the port function of the first port, the usage status including active or standby.
[0110] In some embodiments, each of the at least one local request indicates one protection state of a set of protection states, and the at least one control message includes a far-end request indicating a protection state of the second port of the set of protection states, each set of protection states being associated with a priority. The means for determining the protection state of the first port may include sub-means for determining a request with the highest priority from the at least one local request and the far-end request, and sub-means for determining the protection state of the first port based on a previous protection state of the first port and the request with the highest priority.
[0111] In some embodiments, the set of protection states includes at least one of: lockout while operating, lockout while protecting, mate fail, forced switch on while operating, forced switch on while protecting, signal fail while operating, signal fail while protecting, signal degrade while operating, signal degrade while protecting, manual switch on while operating, manual switch on while protecting, no request while operating, or no request while protecting.
[0112] In some embodiments, the priority of the set of protection states is such that at least the priority of lockout during operation and lockout during protection is higher than the priority of mate fail, which is higher than the priority of force switch during operation and force switch during protection, or the priority of lockout during operation and lockout during protection is higher than the priority of force switch during operation and force switch during protection, which is higher than the priority of mate fail.
[0113] In some embodiments, the means for determining the highest priority request may include sub-means for determining a local request having the highest priority among the at least one local request based on the priority, and sub-means for determining a request having the highest priority among the determined local requests and the far-end requests.
[0114] In some embodiments, the means for determining a protection status of the first port includes determining, when the local request and the far-end request have the same priority, a usage status of the first port to be active based on a port capability of the first port being a working port, or determining a usage status of the first port to be standby based on a capability of the first port being a protection port.
[0115] In some embodiments, the method may further comprise means for transmitting a control message to the second transport node based on a protection status of the first port, wherein the usage of the second port is determined based at least on the control message.
[0116] In some embodiments, the first transport node and the second transport node are coupled via at least one mate link, and the control message is transmitted via one of the at least one mate link.
[0117] In some embodiments, the apparatus may further include means for determining a usage status of the first port and a usage status of the second port based on an indication of the control message when the highest priority request indicates a failure of at least one mate link.
[0118] In some embodiments, the means for determining the first port usage and the second port usage may include at least one of a sub-means for maintaining the first port usage and the second port usage unchanged or a sub-means for determining that the first port usage and the second port usage are both active.
[0119] In some embodiments, the at least one mate link includes a plurality of mate links, and the control message and a copy thereof are transmitted to a first link and a second link in the plurality of mate links, respectively.
[0120] In some embodiments, the control message indicates at least one of a port's protection state, a port's usage, or a filter database (FDB) flush.
[0121] In some embodiments, the control message is transmitted over at least one of an Ethernet header, an Internet Protocol (IP) header, a Multiprotocol Label Switching (MPLS) header, or an Optical Transport Network (OTN) or Synchronous Digital Hierarchy (SDH) container.
[0122] In some embodiments, the apparatus may further include means for forwarding packets to or from the customer equipment and enabling Media Access Control (MAC) address learning at the first port based on usage of the first port determined to be active, or means for discarding packets at the first port based on usage of the first port determined to be standby.
[0123] In some embodiments, the customer equipment ports are coupled to the first port and the second port via an optical splitter / combiner, and the apparatus may further include means for turning off a transmit laser at the first port based on usage of the first port determined to be standby, or means for turning on a transmit laser at the first port based on usage of the first port determined to be active.
[0124] In some embodiments, the apparatus may further comprise means for refreshing learned MAC addresses at the first port and at least one mate port of the first transport node connected to the second transport node based on a change in usage of the first port.
[0125] In some embodiments, the apparatus is further configured to detect a traffic data link failure, a transport node failure, or a mate fail between transport nodes.
[0126] In some embodiments, detection of a fault in the traffic data link is based on at least one of physical layer fault detection, Operations, Administration, and Maintenance (OAM) link monitoring and remote fault indication, Configuration Connectivity Fault Management (CFM) OAM Loss of Continuity (LOC) and remote station defect indication.
[0127] In some embodiments, the apparatus is further configured, when the failed transport node, either the first transport node or the second transport node, recovers, to disable a transmit laser at a port of the failed transport node until a usage status of the port of the failed transport node is determined.
[0128] In some embodiments, the first transport node and the second transport node may be comprised in the same network device or in different network devices.
[0129] In some embodiments, the port function of the first port is a working port and a previous usage status of the first port was active, and the apparatus may further include means for changing a protection state of the first port to indicate a failure of the working node based on detecting a link failure between the first port and the customer equipment, means for changing the usage status of the first port to standby, means for flushing MAC addresses at the first port and a mate port of the second transport node, and means for sending a control message to the second transport node indicating the failure of the working node.
[0130] In some embodiments, the port function of the first port is a protection port and a previous usage status of the first port is standby, and the apparatus is further configured to: change the protection state of the first port to active and flush MAC addresses on the first port and a mate port of the second transport node based on receiving a control message from the second transport node indicating a failure of the working node.
[0131] In some embodiments, the port function of the first port is a working port and a previous usage of the first port is active, and the apparatus may further comprise means for transmitting at least one control message to a second transport node indicating a failure of the working node based on detecting the failure of the first transport node.
[0132] In some embodiments, the port function of the first port is a protection port and a previous usage status of the first port was active, and the apparatus is further configured to: based on receiving a control message from the second transport node indicating a failure of the working node, change the usage status of both the first port and a usage status of a third port coupled to the further customer equipment to active, traffic data being transmitted between the further customer equipment and the customer equipment, and flush MAC addresses on the first port and the third port.
[0133] In some embodiments, the port function of the first port is a protection port and a usage status of the first port is standby, and the apparatus is further configured to send at least one control message to the second transport node indicating the failure of the protection node based on detecting the failure of the protection node of the first transport node.
[0134] In some embodiments, the port function of the first port is a working port and usage of the first port is active, and the apparatus may further include means for maintaining usage of the first port active based on receiving at least one control message from the second transport node indicating a failure of the protection node.
[0135] In some embodiments, the customer equipment includes two ports for respectively transmitting different traffic data to a first port, and the apparatus is configured to maintain a transmit laser of the first port on or off based on determining that the usage of the first port is standby, or to determine that the usage of the first port and the usage of the second port are active based on detecting a mate fail between the first transport node and the second transport node.
[0136] In some embodiments, the apparatus may further include means for performing other steps in some embodiments of method 1300. In some embodiments, the means include at least one processor and at least one memory having computer program code stored therein. The at least one memory and the computer program code, together with the at least one processor, are configured to cause the apparatus to perform these steps.
[0137] 14 illustrates a simplified block diagram of an electronic device 1400 adapted to implement embodiments of the present disclosure. The device 1400 may be provided to implement, for example, a communications device including one or both of the first transport node 110 and the second transport node 120 of FIG. 1. As shown, the device 1400 may include one or more processors 1410, one or more memories 1420 coupled to the processor(s) 1410, and one or more communications modules 1440 coupled to the processor(s) 1410.
[0138] The communication module 1440 is for bidirectional communication. For example, the communication module 1440 may include a transmitter, a receiver, or a transceiver applicable to the embodiments of the present disclosure. The communication interface may be any interface necessary for communication with other network elements.
[0139] The processor 1410 may be of any type suitable for a local technology network, including, but not limited to, one or more of a general purpose computer, a special purpose computer, a microcontroller, a digital signal processor (DSP), and a processor having a controller-based multi-core controller architecture. The device 1400 may include multiple processors, e.g., application-specific integrated circuit chips time-slaved to a clock that is synchronous with a main processor.
[0140] The memory 1420 may include one or more non-volatile memories and one or more volatile memories. Examples of non-volatile memories include, but are not limited to, read only memory (ROM) 1424, electrically programmable read only memory (EPROM), flash memory, hard disks, compact disks (CDs), digital video disks (DVDs), and other magnetic and / or optical storage devices. Examples of volatile memories include, but are not limited to, random access memory (RAM) 1422 and other volatile memories whose contents are not retained during a power outage.
[0141] The computer program 1430 includes computer executable instructions that are executed by the associated processor 1410. The program 1430 may be stored in the ROM 1424. The processor 1410 may load the program 1430 into the RAM 1422 to perform any suitable operations and processes.
[0142] The embodiments of the present disclosure may be implemented by the program 1430, which enables the device 1400 to execute any of the processes disclosed herein and described with reference to Figures 2 to 13. The embodiments of the present disclosure may also be implemented by hardware or a combination of software and hardware.
[0143] In some embodiments, the program 1430 may be physically stored in a computer-readable medium included in the device 1400 (e.g., memory 1420) or other storage accessible to the device 1400. The device 1400 may load the program 1430 from the computer-readable medium into RAM 1422 for execution. The computer-readable medium may include any type of tangible non-volatile storage device, such as ROM, EPROM, Flash memory, hard disk, CD, DVD, etc.
[0144] 15 shows an example of a computer readable medium 1500 in the form of a CD or DVD. The computer readable medium has a program 1430 stored thereon.
[0145] In general, various embodiments of the present disclosure can be implemented in hardware or dedicated circuits, software, circuits, or any combination thereof. Some aspects can be implemented in hardware, while other aspects can be implemented in firmware or software running on a controller, microprocessor, or other computing device. Although various aspects of the embodiments of the present disclosure are illustrated and described using block diagrams, flow charts, or other graphical representations, it should be noted that the blocks, devices, systems, techniques, or methods described herein can be implemented in, by way of non-limiting examples, hardware, software, firmware, special purpose circuits or circuits, general purpose hardware or controllers or other computing devices, or some combination thereof.
[0146] The present disclosure also provides at least one computer program product physically stored in a non-transitory computer-readable storage medium. The computer program product includes computer-executable instructions, such as those included in program modules, that are executed on a device on a desired real or virtual processor to perform the method 1300 described above with reference to FIG. 13. Generally, program modules include routines, programs, libraries, objects, classes, components, data structures, etc. that perform particular tasks or implement particular abstract data types. The functionality of the program modules may be combined or split between program modules as desired in various embodiments. The machine-executable instructions for the program modules may be executed in local or distributed devices. In a distributed device, the program modules may be located in both local and remote storage media.
[0147] Program codes for implementing the methods of the present disclosure can be written in any combination of one or more programming languages. These program codes can be provided to a processor or controller of a general purpose computer, a special purpose computer, or other programmable data processing apparatus, and when executed by the processor or controller, can cause the specific functions / operations in the flowcharts and / or block diagrams to be performed. The program codes can be entirely executed on the machine, or partly executed on the machine and partly executed as a stand-alone software package, partly executed on the machine and partly executed on a remote machine, or entirely executed on a remote machine or server.
[0148] In the context of the present disclosure, computer program code or associated data may be transmitted by any suitable carrier to enable a device, apparatus, or processor to perform the various processes or operations described above. Examples of the carrier include a signal, a computer readable medium, etc.
[0149] The computer-readable medium may be a computer-readable signal medium or a computer-readable storage medium. The computer-readable medium may include, but is not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any suitable combination of the above. More specific examples of the computer-readable storage medium include an electrical connection having one or more wires, a portable computer diskette, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable and programmable read-only memory (EPROM or flash memory), optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the above.
[0150] Additionally, although acts are depicted in a particular order, it should not be understood that performing the acts in the order depicted, or sequentially, or performing all of the acts depicted, is necessary to achieve desirable results.
[0151] In certain circumstances, multitasking and parallel processing may be preferred. Similarly, although the above description includes specific details of some particular examples, these should not be construed as limiting the scope of the disclosure, but rather as descriptions of features specific to particular embodiments. Certain features that are described in the context of separate embodiments may also be implemented in combination in a single embodiment. Conversely, various features that are described in the context of a single embodiment may also be implemented in multiple embodiments separately or in any suitable subcombination.
Claims
1. 1. An apparatus comprising: At least one processor; at least one memory having instructions stored thereon, the instructions, when executed by the at least one processor, causing the apparatus to: determining, at a first transport node, a protection state of a first port of the first transport node based on at least one of at least one local request generated by the first transport node or at least one control message from a second transport node, wherein the first port and a second port of the second transport node are coupled to customer equipment, and a port function of the first port is one of a working port or a protection port, and a port function of the second port is the other of the working port or the protection port; determining a usage status of the first port for the customer equipment based on the protection state and the port capabilities of the first port, the usage status including active or standby; A device that performs the above.
2. Each of the at least one local request indicates a protection state from a set of protection states each having an associated priority, and a control message of the at least one control message includes a far-end request indicating a protection state of the second port from the set of protection states, and the apparatus further comprises: determining a highest priority request from the at least one local request and the far-end requests; determining the protection state of the first port based on a previous protection state of the first port and the request with the highest priority; 2. The apparatus of claim 1, adapted to determine the protection state of the first port by:
3. 3. The apparatus of claim 2, wherein the set of protection states includes at least one of: lockout while operating, lockout while protecting, mate fail, forced switch on while operating, forced switch on while protecting, signal fail while operating, signal fail while protecting, signal degrade while operating, signal degrade while protecting, manual switch on while operating, manual switch on while protecting, no request while operating, or no request while protecting.
4. The priority of the set of protection states includes at least the priority of the working lockout and the protection lockout is higher than the priority of the mate fail, and the priority of the mate fail is higher than the priority of the working force switch and the protection force switch; or the priority of the lockout during operation and the lockout during protection is higher than the priority of the force switch during operation and the force switch during protection, and the priority of the force switch during operation and the force switch during protection is higher than the priority of the mate fail; The device according to claim 3 , wherein one of the above is satisfied.
5. The apparatus comprises: determining a highest priority local request among the at least one local request based on the priority; and determining the request having the highest priority among the determined local requests and the far-end requests; 5. The apparatus according to claim 2, further configured to determine the request having the highest priority by:
6. Determining the protection state of the first port includes, if the local request and the far-end request have the same priority, determining that the usage status of the first port is active based on the port function of the first port being the working port; determining that the usage status of the first port is standby based on the port function of the first port being the protection port; The apparatus of claim 5 , comprising:
7. The instructions, when executed by the at least one processor, further cause the apparatus to: sending a control message to the second transport node based on the protection status of the first port, such that a usage status of the second port is determined based at least on the control message.
7. An apparatus according to claim 1, further comprising:
8. 8. The apparatus of claim 1, wherein the first transport node and the second transport node are coupled via at least one mate link, and the control message is transmitted via one of the at least one mate link.
9. The instructions, when executed by the at least one processor, further cause the apparatus to: determining the utilization of the first port and the utilization of the second port based on the indication of the control message if the request with the highest priority indicates a failure of the at least one mate link; The apparatus of claim 8 ,
10. Determining the usage status of the first port and the usage status of the second port comprises: maintaining the usage status of the first port and the usage status of the second port unchanged; or determining that the usage status of the first port and the usage status of the second port are both active; The apparatus of claim 9 , comprising at least one of:
11. 11. The apparatus of claim 7, wherein the at least one mate link comprises a plurality of mate links, and the control message and a copy thereof are respectively transmitted to a first link and a second link in the plurality of mate links.
12. The control message is Port protection status, Port usage, Flushing the Filter Database (FDB), 12. The device according to claim 1, further comprising at least one of:
13. The control message is Ethernet header, Internet Protocol (IP) header, a Multiprotocol Label Switching (MPLS) header, or Optical Transport Network (OTN) or Synchronous Digital Hierarchy (SDH) containers; 13. The apparatus according to claim 1, wherein the transmission is performed via at least one of the following:
14. The instructions, when executed by the at least one processor, further cause the apparatus to: forwarding packets to or from the customer equipment and enabling Media Access Control (MAC) address learning at the first port based on the usage status of the first port being determined to be active; or discarding a packet at the first port based on the fact that the usage status of the first port is determined to be standby; 14. An apparatus according to claim 1, further comprising:
15. a port of the customer equipment coupled to the first port and the second port via an optical drop / combiner, and the instructions, when executed by the at least one processor, cause the apparatus to: turning off a transmit laser at the first port based on the usage status of the first port being determined to be standby; or turning on the transmit laser at the first port based on the usage status of the first port being determined to be active; 15. An apparatus as claimed in any preceding claim, adapted to perform the steps of:
16. The instructions, when executed by the at least one processor, cause the apparatus to: updating a learned MAC address in at least one mate port of the first transport node connected to the first port and the second transport node based on a change in the usage status of the first port; 15. An apparatus according to claim 1, further comprising:
17. The instructions, when executed by the at least one processor, cause the apparatus to: Traffic data link failure, A transport node failure, or Mate failure between transport nodes, 17. An apparatus according to claim 1 for detecting
18. Detecting a failure in the traffic data link Physical layer fault detection, Operations, Administration, and Maintenance (OAM) link monitoring and remote fault indication, or Configuration Fault Management (CFM) OAM Loss of Continuity (LOC) and peer defect indication; The apparatus of claim 17, based on at least one of:
19. The instructions, when executed by the at least one processor, further cause the apparatus to: When a failed transport node among the first transport node and the second transport node recovers, disabling a transmit laser at the port of the failed transport node until a usage status of the port is determined. The apparatus of claim 17 .
20. The apparatus of claim 1 , wherein the first transport node and the second transport node are comprised in a same network device or in different network devices.
21. The port function of the first port is a working port, a previous usage of the first port is active, and the instructions, when executed by the at least one processor, cause the apparatus to further: based on detecting a link failure between the first port and the customer equipment, changing a protection state of the first port to indicate a working node failure; changing the usage status of the first port to standby; Flushing MAC addresses of the first port and a mate port of the second transport node; sending a control message to the second transport node indicating a failure of the working node; 21. An apparatus according to any preceding claim, adapted to execute the following:
22. and wherein the port function of the first port is a protection port and a previous usage status of the first port is standby, and the instructions, when executed by the at least one processor, cause the apparatus to further: changing a protection state of the first port to active based on receiving a control message from the second transport node indicating a working node failure; Flushing MAC addresses of the first port and a mate port of the second transport node; 19. An apparatus according to any preceding claim, adapted to execute the following:
23. The port function of the first port is a working port, a previous usage of the first port is active, and the instructions, when executed by the at least one processor, cause the apparatus to further: based on detecting the failure of the first transport node, transmitting at least one control message to the second transport node indicating a working node failure.
19. An apparatus according to any preceding claim, adapted to:
24. The port function of the first port is a protection port, a previous usage of the first port is active, and the instructions, when executed by the at least one processor, cause the apparatus to further: actively modifying both the usage status of the first port and the usage status of a third port coupled to a further customer equipment, based on receiving at least one control message from the second transport node indicating a working node failure, wherein traffic data is transmitted between the further customer equipment and the customer equipment; Flushing the MAC addresses of the first port and the third port; 19. An apparatus according to any preceding claim, adapted to execute the following:
25. The port function of the first port is a protection port, and the usage status of the first port is standby, and the instructions, when executed by the at least one processor, cause the apparatus to further: transmitting at least one control message to the second transport node indicating a protection node failure based on detecting a protection node failure of the first transport node; 19. An apparatus according to any preceding claim, adapted to execute the following:
26. The port function of the first port is a working port, the usage status of the first port is active, and the instructions, when executed by the at least one processor, cause the apparatus to further: maintaining the usage status of the first port active based on receiving at least one control message from the second transport node indicating a protection node failure; 19. An apparatus according to any preceding claim, adapted to execute the following:
27. the customer equipment comprises two ports for transmitting different traffic data to the first port and the second port, respectively, and the instructions, when executed by the at least one processor, cause the apparatus to further: maintaining a transmit laser of the first port on or off based on determining that the usage status of the first port is standby; or determining the usage status of the first port and the usage status of the second port as active based on detecting a mate fail between the first transport node and the second transport node; 25. Apparatus according to any one of claims 19 to 24, adapted to execute the following:
28. determining, at a first transport node, a protection state of a first port of the first transport node based on at least one of at least one local request generated by the first transport node or at least one control message from a second transport node, wherein the first port and a second port of the second transport node are coupled to customer equipment, a port function of the first port being one of a working port or a protection port, and a port function of the second port being the other of the working port or the protection port; determining a usage status of the first port for the customer equipment based on the protection state and the port capabilities of the first port, the usage status including active or standby; A method comprising:
29. means, in a first transport node, for determining a protection state of a first port of the first transport node based on at least one of at least one local request generated by the first transport node or at least one control message from a second transport node, wherein the first port and a second port of the second transport node are coupled to customer equipment, a port function of the first port being one of a working port or a protection port, and a port function of the second port being the other of the working port or the protection port; means for determining a usage status of the first port for the customer equipment based on the protection state and the port capabilities of the first port, the usage status including active or standby; An apparatus comprising:
30. A computer-readable medium having instructions stored thereon, the instructions, when executed by an apparatus, causing the apparatus to perform at least: determining, at a first transport node, a protection state of a first port of the first transport node based on at least one of at least one local request generated by the first transport node or at least one control message from a second transport node, wherein the first port and a second port of the second transport node are coupled to customer equipment, and a port function of the first port is one of a working port or a protection port, and a port function of the second port is the other of the working port or the protection port; determining a usage status of the first port for the customer equipment based on the protection state and the port capabilities of the first port, the usage status including active or standby; A computer-readable medium for causing a computer to execute the method.
Citation Information
Patent Citations
Using ethernet ring protection switching with computer networks
EP2951959A1
Data provision method
JP2010515316A
System and method for multi-chassis link aggregation
JP2013535922A
Communication device, communication method, and communication program
JP2014170985A
Relay system and switch device
JP2015198416A