Method and system for connecting four-path parallel redundancy protocol in network
By establishing independent network paths in industrial process control and automation systems and transmitting data packet frames using independent network addresses, the existing PRP is solved for the problem of vulnerability to failure in multiple failure situations, and the ability to provide additional flexibility and withstand dual failures in the network is achieved, ensuring the stability of communication.
Patent Information
- Application Number
- CN202411596710.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Priority Date
- 2023-11-13
- Filing Date
- 2024-11-11
- Publication Date
- 2025-05-13
AI Technical Summary
The existing parallel redundant protocol (PRP) is still susceptible to failure in multiple failure situations and cannot effectively withstand dual failures in the network, resulting in serious losses in communications of industrial control systems.
By establishing independent network paths in the data communication system, transmitting data packet frames and their copy frames between the two networks using two independent network addresses, ensuring that packets on each network use the same MAC address, and managing the MAC address through the partner MAC address table to avoid drift failures.
It realizes additional flexibility in the network, can withstand double faults, ensures the stable communication of supervision control signals and data between devices or nodes, and avoids communication interruptions caused by MAC drift errors.
Smart Images

Figure CN119996528A_ABST
Abstract
Description
Technical Field
[0001] The present disclosure generally relates to industrial process control and automation systems. More specifically, the present disclosure relates to methods and systems for facilitating a four-path parallel redundant protocol in an industrial process control and automation system connection network. Background Art
[0002] Industrial process control and automation systems are commonly used to automate large and complex industrial processes. These types of systems typically include sensors, actuators, controllers, and other intelligent electronic devices for supervisory control and data acquisition. The intelligent electronic devices in such systems are interconnected and communicated via a LAN (local area network) or WAN. In such industrial process control and automation systems, the architecture may include gateways connected to sensors and actuators used in the automation system, which are not directly connected to the controller. High-availability applications operating within LAN or WAN control and supervisory process control and automation systems expect the network to have access to all intelligent electronic devices in the network to avoid communication interruptions. Such as, for example, a high-speed redundant ring or a parallel redundant protocol (PRP) network system. However, these high-availability applications continue to be susceptible to failures under a variety of failure conditions.
[0003] The PRP network system uses two independent networks to transmit supervisory control signals and data between devices or nodes of the network. PRP duplicates the data frame to be transmitted and adds a redundant control tail (RCT) with a unique sequence number at the end of each standard communication data packet. For example, each PRP frame has an IP (Internet Protocol) data packet, and the two PRP frames are sent through two independent LANs or WANs with similar network topologies. The receiver identifies the frame by the RCT and the source MAC (Media Access Control) address, accepts and processes the first arriving PRP frame, and discards the second PRP frame (if the second PRP frame arrives). Since the RCT is added at the end of the standard data packet as part of the PRP frame, non-PRP compatible devices may ignore the RCT. This method ensures that PRP can work with both PRP compatible and non-compatible devices as long as the transmitter and receiver ends are PRP compatible.
[0004] Many industrial process control and automation system customers require vendors to ensure that two PRP networks are independent and there is no interconnection between them. However, a fault condition occurs when an unintentional physical connection is established between these independent networks. Such as cross-connect cables between the two networks. Such connections will cause serious and catastrophic loss of communication between the devices and nodes of the industrial control system, resulting in plant shutdowns or safety incidents. The communication loss is mainly due to the PRP design, which uses the same MAC address for packets on each network in the independent networks. Although PRP has a built-in design that contains information about the network to which the packet belongs, the managed switching equipment sees the same MAC address from two different ports and reports a MAC drift error. This causes the spanning tree recovery process to be executed incorrectly.
[0005] The problems with standard PRP are multifaceted in nature. A connected PRP network can be used to provide additional resilience compared to standard PRP. However, while a connected PRP network can provide additional resilience compared to standard PRP, a connected PRP network may not be able to withstand a double failure in the network.
[0006] Therefore, there is a need for an improved PRP network that can provide additional resilience and can withstand dual failures in the network to ensure the communication of supervisory control signals and data between devices or nodes of the network. Summary of the invention
[0007] The present disclosure relates to a method and system for facilitating a parallel redundancy protocol in an industrial process control and automation system.
[0008] In a first embodiment, a data communication system is provided, which is configured to establish an independent network path through the data communication system. The data communication system includes at least a first network and a second network, and the first network and the second network include a first node interface connected to the second node interface through the first network and connected to the second node interface through the second network. The data communication system copies a data packet frame to a plurality of alternative data packet frames. The data communication system sends the data packet frame and the alternative data packet frame from the first node interface to the second node interface via the first network using a first network address, and sends the data packet frame and the plurality of alternative data packet frames from the first node interface to the second node interface via the second network using a second network address.
[0009] In a second embodiment, a method establishes an independent network path through a data communication system, the data communication system including at least a first network and a second network. The method connects a first node interface to a second node interface through the first network, and further connects the first node interface to the second node interface through the second network. The method configures the first node interface to send a data packet frame to the second node interface via the first network using a first network address, and configures the first node interface to send a data packet frame to the second node interface via the second network using a second network address, wherein the first node interface copies the data packet frame to a plurality of alternative data packet frames.
[0010] In a third embodiment, a non-transitory computer-readable medium containing instructions that, when executed, cause at least one processing device to connect a first node interface to a second node interface via a first network and connect the first node interface to the second node interface via a second network, instruct the first node interface to send a data packet frame to the second node interface via the first network using a first network address, and to send the data packet frame to the second node interface via the second network using a second network address, wherein the first node interface copies the data packet frame to a plurality of alternative data packet frames.
[0011] Other technical features will be apparent to those skilled in the art from the following drawings, descriptions and claims. BRIEF DESCRIPTION OF THE DRAWINGS
[0012] For a more complete understanding of the present disclosure, reference is now made to the following description taken in conjunction with the accompanying drawings, in which:
[0013] Figure 1 An example industrial process control and automation system according to the present disclosure is illustrated;
[0014] Figure 2 An example control group consisting of a controller in a first network node communicating with a gateway in a second network node according to the present disclosure is illustrated;
[0015] Figure 3 An example module for implementing a parallel redundancy protocol over a pair of parallel networks is illustrated;
[0016] Figure 4 illustrates an example table representing MAC addresses of nodes represented by a PRP network;
[0017] Figure 4a An example simplified network 1PRP data packet frame is illustrated;
[0018] Figure 4b An example simplified network 2PRP data packet frame is illustrated;
[0019] Figure 5An example schematic diagram illustrating a dedicated network for transmitting data between a controller 202 and a gateway 204 according to the present disclosure is illustrated;
[0020] Figure 6 An example table representing node MAC addresses according to the present disclosure is illustrated;
[0021] Figure 6a An example simplified network 1PRP data packet frame according to the present disclosure is illustrated;
[0022] Figure 6b An example simplified network 2PRP data packet frame according to the present disclosure is illustrated;
[0023] Figure 6c Another example simplified network 1PRP data packet frame according to the present disclosure is illustrated;
[0024] Figure 6d Another example simplified network 2PRP data packet frame according to the present disclosure is illustrated;
[0025] Figure 7 A block diagram illustrating a method for implementing a parallel redundancy protocol method in a connection network according to the present disclosure; and
[0026] Figure 8 The method for implementing a parallel redundancy protocol in a connection network according to the present disclosure is illustrated. Figure 7 Another block diagram of . DETAILED DESCRIPTION
[0027] These figures discussed below and the various embodiments for describing the principles of the present invention in this patent document are carried out by way of example only and should not be construed as limiting the scope of the present invention in any way. Those skilled in the art will appreciate that the principles of the present invention can be implemented in any type of suitably arranged device or system.
[0028] Figure 1 A portion of an example industrial process control and automation system 100 according to the present disclosure is illustrated. Figure 1 As shown, system 100 includes various components that facilitate the production or processing of at least one product or other material. For example, system 100 can be used to facilitate the control or monitoring of components in one or more industrial plants. Each plant represents one or more processing facilities (or one or more parts thereof), such as one or more manufacturing facilities for producing at least one product or other material. In general, each plant can implement one or more industrial processes and can be referred to as a process system individually or collectively. A process system generally represents any system or part of a system that is configured to process one or more products or other materials or energy in different forms in some manner.
[0029] exist Figure 1 In the example shown, the system 100 includes one or more sensors 102a and one or more actuators 102b. The sensors 102a and actuators 102b represent components in a process system that can perform any of a variety of functions. For example, the sensor 102a can measure a variety of characteristics in the process system, such as temperature, pressure, or flow. In addition, the actuator 102b can change a variety of characteristics in the process system. Each sensor in the sensor 102a includes any suitable structure for measuring one or more characteristics in the process system. Each actuator in the actuator 102b includes any suitable structure for operating or affecting one or more conditions in the process system.
[0030] At least one input / output (I / O) module 104 is coupled to the sensor 102a and the actuator 102b. The I / O module 104 facilitates interaction with the sensor 102a, the actuator 102b, or other field devices. For example, the I / O module 104 may be used to receive one or more analog inputs (AI), digital inputs (DI), digital input sequence of events (DISOE), or pulse accumulator inputs (PI) or to provide one or more analog outputs (AO) or digital outputs (DO). Each I / O module 104 includes any suitable structure for receiving one or more input signals from one or more field devices or providing one or more output signals to one or more field devices. Depending on the implementation, the I / O module 104 may include a fixed number and fixed type of inputs or outputs or reconfigurable inputs or outputs. In Figure 1 In an exemplary system of FIG. 1 , I / O modules are connected to a gateway 106 via a network 108. The gateway 106 receives supervisory control information from a remotely located controller 116. The gateway 106 serves as an entry point and an exit point for a network node. Control information and all data must pass through or communicate with a gateway before being routed from a node. For example, control information from a controller 116 may be sent from the controller 116 to an actuator 102 b via one or more gateways 106. Data from a sensor 102 a is transmitted to one or more controllers 116 via one or more gateways 106.
[0031] For example, a first set of controllers 116 can use measurements from one or more sensors 102a to control the operation of one or more actuators 102b. These controllers 116 can interact with sensors 102a, actuators 102b, and other field devices via I / O modules 104. The controllers 116 can be coupled to the I / O modules 104 via Ethernet, backplane communications, serial communications, etc. A second set of controllers 116 can be used to optimize control logic or other operations performed by the first set of controllers. A third set of controllers 106 can be used to perform additional functions.
[0032] Controllers 116 can be used in the system 100 to perform various functions in order to control one or more industrial processes. For example, a first group of controllers 116 operating as a first network node can use measurements from one or more sensors 102b to control the operation of one or more actuators 102b, which are sent from a gateway 106 operating as a second (and separate) network node. These controllers 116 can interact with sensors 102a, actuators 102b and other field devices via the gateway 106 and the I / O module 104. In addition, the controllers 116 can also communicate with sensors and actuators (not shown) that can be connected to the I / O module 114 in the first network node. The controllers 116 can be coupled to the I / O module 104 via Ethernet, backplane communication, serial communication, etc. A second group of controllers 116 can be used to optimize the control logic or other operations performed by the first group of controllers. A third group of controllers 116 can be used to perform additional functions.
[0033] Controllers 116 are usually arranged in layers in the system. For example, different controllers 116 can be used to control individual actuators, a collection of actuators forming a machine, a collection of machines forming a unit, a collection of units forming a plant, and a collection of plants forming an enterprise, which are directly connected in their network nodes or connected to different network nodes via gateways 106. A specific example of a hierarchical arrangement of controllers 116 is defined as the "Purdue" model of process control. Controllers 116 in different hierarchical levels can communicate via one or more networks 108 and associated switches, firewalls, and other components.
[0034] Each controller 116 includes any suitable structure for controlling one or more aspects of an industrial process. For example, at least some of the controllers 106 may represent proportional integral derivative (PID) controllers or multivariable controllers, such as robust multivariable predictive control technology (RMPCT) controllers or other types of controllers that implement model predictive control or other advanced predictive control. As a specific example, each controller 116 may represent a computing device running a real-time operating system, a MICROSOFT WINDOWS operating system, or other operating system. Operator access and interaction with the controllers 116 and other components of the system 100 may be performed via each operator station 110.
[0035] Each operator station 110 may be used to provide information to an operator and to receive information from an operator. For example, each operator station 110 may provide information identifying the current state of an industrial process to an operator, such as the values of various process variables and warnings, alarms, or other states associated with the industrial process. Each operator station 110 may also receive information that affects how the industrial process is controlled, such as by receiving set points for process variables controlled by the controller 106 or receiving other information that changes or affects how the controller 106 controls the industrial process. Each operator station 110 includes any suitable structure for displaying information to an operator and interacting with an operator.
[0036] This represents a brief description of one type of industrial process control and automation system that can be used to manufacture or process one or more materials. Additional details about industrial process control and automation systems are well known in the art and are not required for understanding the present disclosure. In addition, industrial process control and automation systems are highly configurable and can be configured in any suitable manner according to specific needs.
[0037] Although Figure 1 A portion of an example industrial process control and automation system 100 is illustrated, but may be used for Figure 1 Make various changes. For example, they can be combined, further subdivided, reorganized or omitted Figure 1 In addition, although Figure 1 One example operating environment in which redundant controllers may be used is illustrated, but this functionality may also be used in any other suitable system.
[0038] Figure 2 An example control group 200 is illustrated consisting of a controller in a first network node communicating with a gateway in a second network node along one or more networks 108. For ease of explanation, the control group 200 is described as Figure 1 The control group 200 is used in the industrial process control and automation system 100 of the present invention. However, the control group 200 can be used in any other suitable system. The example control group 200 operates at level 1 of the Purdue model, and among other things, the example control group 200 can use the measurement results from one or more sensors 102a to control the operation of one or more actuators 102b.
[0039] like Figure 2 As shown, the control group 200 includes a controller 202 and a gateway 204. The controller 202 may represent Figure 1 The gateway 204 may represent or be represented by various controllers in the controller 116. Figure 1106 of the gateways 106 of the present invention or represented by these gateways. The controller 202 and the gateway 204 are connected to one or more networks 108, such as FTE (fault tolerant Ethernet), IEC-61850, Ethernet / IP or MODBUS / TCP networks. The controller 202 can communicate with sensors and implement control logic for controlling actuators within its own network node. The controller 202 can also communicate with the gateway 106 and the sensor 102a and implement control logic for controlling the actuator 102b within the second network node of the gateway 204.
[0040] In an embodiment of the present disclosure, a dedicated network facilitates communication between the controller 202 and the gateway 204. The dedicated network can transmit supervisory control and data between the controller 202 and the gateway 204, thereby allowing the controller 202 to access and control sensors and actuators of the second network nodes.
[0041] The dedicated network includes any suitable structure for transmitting data between networked devices, such as a parallel redundancy protocol (PRP) network operating under IEC standard 62439-3. For example, each controller 202 can be configured as a node that communicates between gateways 204 using two independent PRP networks. Supervisory control and process data can be transmitted and received along the two independent networks between the controller 202 and the gateway 204. Each controller 202 includes any suitable structure configured to perform control operations in an industrial process control and automation system.
[0042] although Figure 2 An example of a controller group 200 having redundant process controllers for an industrial control network is illustrated, but may be used for Figure 2 Various changes may be made. For example, controller group 200 may include more or fewer controllers. In addition, any suitable number and configuration of other network devices may be used to interconnect controllers in a controller group or controller node.
[0043] Figure 3 An example of a PRP module operating under IEC standard 62439-3 is illustrated. The two PRP modules include a first dual-attached node compliant with PRP (DANP1) 302, labeled as Node 1 in this disclosure. A second dual-attached node compliant with PRP (DANP2) 304 is labeled as Node 2. In this example, Node 1 will serve as a source node and Node 2 will serve as a destination node.
[0044] Each PRP module 302, 304 includes a processor in the upper layer of the modules 302 and 304, which may use any processing device including one or more processors, or other processing devices that can execute operating system instructions including a protocol stack. The protocol stack may be implemented in the hypertext transfer protocol (HTTP) and may include the transmission control protocol (TCP) at the transport layer and the IP Internet Protocol (IP) at the network layer. These protocol layer examples should be considered non-limiting and are merely illustrative of the types of communication protocols that may be implemented by the protocol stack and operated by the processors of the PRP modules 302-304.
[0045] The PRP module further includes TX / RX circuits that implement the PRP-related functions described herein as they relate to the communication stack of the Link Redundancy Entity (LRE) from IEC Standard 62439-3. As described in IEC 62439-3, to achieve redundancy, a PRP-compatible node is connected to two independent network LANs having similar topologies, e.g., a network 1 including LAN A and a second network 2 including LAN B, through two independent physical ports (port A and port B). The physical ports include circuits (such as transmit (TX) circuits and receive (RX) circuits) and transceivers for handling the physical connection of the corresponding DANP1 node and DANP2 node.
[0046] Each pair of port A and port B of the same node shares the same MAC address, but operates in parallel and is attached to the same upper layer of the protocol stack, for example, through a link redundancy entity (LRE). The LRE ensures that the upper layers are unaware of the redundancy and are not affected by the redundancy. The LRE performs two key tasks related to the PRP-related functions described in this article. The LRE handles the duplication of PRP frames and manages the acceptance of packets received from network 1 and network 2.
[0047] For example, the upper layers of the protocol stack attach a MAC header to the data packet and convert it into an IEEE 802.3 frame, as is done in a non-redundant network. The MAC header includes a source MAC address field, a destination MAC address field, and other fields, such as a tag and Ethernet type / size field for Ethernet frames. Typically, the LRE uses the same destination MAC address for destinations within the network. The LRE replicates the data frames received from the upper layers and appends a redundancy check trailer (RCT) to each replicated data frame. The RCT complies with IEC Standard 62439-3. Thus, the RCT includes a sequence number field (SeqNr), a LAN identifier field (LanID), a frame size field (LSDU size), and a PRP suffix that identifies the new (appended) frame as a PRP frame.
[0048] Figure 4 Indicated in Figure 3400. It should be understood that the MAC addresses in this example have been simplified for ease of explanation. As shown, node 1 PRP module DANP1 includes network 1 MAC address A1 and network 2 MAC address A1. Node 2 PRP module DANP2 includes network 1 MAC address A2 and network 2 MAC address A2. It should be noted that Figure 4 The node identifiers Node 1 and MAC addresses in Node 2 are shown to be the same and identical.
[0049] In this example Node 1, the sending node LRE copies the data packet for transmission in the LRE. The data packet is encapsulated into a frame, which includes the destination MAC address, the source MAC address, the data and the RCT. Figure 4a A data packet frame 402 is shown to be transmitted on Network 1. The MAC header identifies that the data packet source is MAC address A1 from Node 1 and the destination is MAC address A2 at Node 2. The RCT of the frame includes a sequence number and identifies that the data packet is transmitted on Network 1. Figure 4b The data packet frame 404 transmitted on the network 2 is illustrated. The data packet frame includes: Figure 4a The LRE transmits the data packet frame to the transmitter of port A associated with LAN 1 and the transmitter of port B associated with LAN 2.
[0050] The two PRP frames travel through LAN 1 and LAN 2 with different delays, and ideally, both PRP frames arrive at destination Node 2. The LRE receiving Node 2 consumes the first PRP frame and discards the second PRP frame (if the second PRP frame arrives). The MAC address of the source node (Node 1 in this example) is used to identify the received PRP frame. During the processing of the duplicated PRP frame, the sequence number in the RCT is combined with the original source MAC address and used to identify the data frame.
[0051] Figure 5 A dedicated network for transmitting data between the controller 202 and the gateway 204 according to the present disclosure is illustrated. The first network node 1 is formed by the controller 202, the I / O module 114 and the interface module 302. The second network node 2 is formed by the gateway 204, the I / O module 104b and the interface module 304.
[0052] Interface modules 302 and 304 are PRP modules operating under IEC standard 62439-3. The two interface modules 302-304 include a first dual attachment node compliant with PRP (DANP1) and a second dual attachment node compliant with PRP (DANP2), as described above for Figure 3 As explained above. The controller 202 is connected to and communicates with other components of the industrial process control system via one or more networks 108 and associated switches, firewalls. The sensors 102a and actuators 102b of the control group are connected to I / O modules 104a and 104b via one or more networks 103, and to the associated gateway 204, as explained above. The PRP network uses two independent LAN networks to send data from the controller 202 of node 1 to the gateway 204 of node 2. For example, the interface module 302 associated with network node 1 communicates using LAN network 1 (hereinafter referred to as network 1), which includes a first cable A connected between the module 302 and Ethernet switch A 502 and a second cable A' connected from the Ethernet switch A to the interface module 304. Similarly, the interface module 302 is connected to the LAN network 2 (hereinafter referred to as network 2) via a first cable B to the Ethernet switch B 504 and a second cable B' connected to the interface module 304. The interface modules 302-304 establish two separate networks, Network 1 and Network 2, between the controller 202 and the gateway 204 through their associated Ethernet switches 502-504. However, unlike the classic PRP network, the present disclosure includes a cable C that operably connects Ethernet switch A and switch B. Thus, the redundant Network 1 and Network 2 of the present disclosure are interconnected, thereby allowing the crossover of MAC address identifiers between Network 1 and Network 2.
[0053] As previously explained, industrial process control system vendors who manufacture equipment that implement PRP as their network redundancy scheme need to ensure that the two PRP networks are independent and there is no interconnection between them. However, when an unintentional physical connection is established between these independent networks, a failure condition occurs, resulting in a serious and catastrophic loss of communication between the equipment and nodes of the industrial control system. Although PRP redundant networks are suitable for high-availability applications, interconnection cannot be properly handled in a switching environment. The root cause of the communication loss is mainly due to the PRP design, which replicates and reuses the same MAC address for data packets transmitted on each independent network. Although PRP has a built-in design that contains information about the network to which the packet belongs, the managed switching equipment sees the same MAC address from two different ports and reports a MAC drift error. This causes the spanning tree recovery process to be executed incorrectly. Drift failures can be prevented by purposefully interconnecting PRP networks in a managed switch environment and implementing the network addressing scheme of the present disclosure.
[0054] The MAC addressing scheme of the present disclosure requires each PRP (in this example, PRPs 302-304) to construct a partner MAC address table 600 that lists each of the two MAC addresses of the nodes connected to the network, such as Figure 6 As shown. It should be noted that the network topology may include more than two nodes, however, for ease of explanation, only two nodes are used in this example. Cable C interconnecting switch A and switch B allows each interface module 302-304 to discover and share the MAC addresses used by node 1 and node 2. Therefore, each node shares its MAC address with other nodes connected in the network. Each MAC address and its partner MAC address are identified according to the network to which it is associated. For example, according to Figure 6 Table 600, node 1, network 1 has MAC address A1 and partner MAC address B1. Node 2, network 2 has MAC address B2 and partner MAC address A2. No MAC address duplication occurs. Each interface module 302-304 includes a partner MAC address table 600, which is used to assign appropriate MAC addresses for data packet transmission along network 1 and network 2.
[0055] PRPs 302-304 construct a MAC header using the MAC addresses contained in MAC address table 600. For example, Figure 6a exemplified by 602 and in Figure 6bIn the MAC header illustrated by 604, the protocol stack of the sending node PRP will look up the destination MAC address of the destination from the MAC address table and send the original data packet from source A1 to destination A2 using network 1 according to frame 602. The duplicate packet will be sent from node 1 MAC address A1 to node 2 MAC address A2 along network 2 as shown in frame 604.
[0056] At the destination node PRP (e.g., PRP 304), the first PRP frame that arrives is consumed and the second PRP frame (if the second PRP frame arrives) is discarded. The manner is as previously described for ordinary PRP nodes. In this example, the MAC address of the source node 302 is used to identify the received PRP frame. During the processing of the duplicated PRP frame, the sequence number in the RCT is combined with the original source MAC address and used to identify the data frame.
[0057] Connected PRP networks may also face some issues and may not be able to withstand a double fault in the network. Situations where a double fault for a connected PRP network affects communications may occur due to switch misconfiguration or double faults in the network from crossover cables and / or faulty cables. Although these scenarios are unlikely to occur, they may cause severe communication disruptions as the network moves towards a flat network.
[0058] Handling more than two failures on the network can be extended to the connected PRP solution to further improve network resiliency for critical applications. This can be achieved by extending the connected PRP network packet sending design to replicate and send two additional packets, such as Figure 6c and Figure 6d Therefore, an application sent will result in Figures 6a to 6d The four network groups shown in Figure 6c and Figure 6d The two new copies of the packet shown in are sent together. Figure 6c and Figure 6d The two additional groups shown add more robustness to the two-path solution and instead use four paths from source to destination. Figure 6c exemplified by 606 and in Figure 6d In the MAC header illustrated by 608, the protocol stack of the sending node PRP will look up the destination MAC address of the destination from the MAC address table and send another copy of the data packet from the source B1 to the destination A2 using network 1 according to frame 606. Another copy of the data packet will be sent from node 1 MAC address A1 to node 2 MAC address B2 along network 2, as shown in frame 608.
[0059] The present disclosure provides an improved connected PRP network that provides additional resilience and can withstand double failures in the network to ensure that supervisory control signals and data are communicated between devices or nodes of the network. Figures 6a to 6d As shown and described above, the present disclosure provides a modification to the connected PRP design and allows the generation of four data packets. These additional packets over the conventional connected PRP design significantly improve network resilience and mitigate communication disruptions caused by multiple failures in the network due to human errors caused by switch misconfiguration or cross wiring.
[0060] Figure 7 The invention is illustrated for constructing respectively Figures 6a to 6d FIG. 7 is a diagram of an example method 700 of PRP data packet frames 602, 604, 606, and 608. For ease of explanation, with respect to Figure 1 The method 700 is described with reference to the system 100 of FIG. 1 , but the method 700 may be implemented in any other suitable system. Figure 5 The method 700 is implemented by controller nodes 1 and 2, but the method 700 can be implemented in any other suitable manner.
[0061] The assembly of the data packet frame begins at step 701, where the source interface module looks up the source MAC address and destination MAC address received from the protocol stack. Next, a decision step 702 is performed, where the method checks whether the received source MAC address is in network 1. If the source MAC address is in network 2, the method branches at step 704. If the source MAC address is in network 1, a second decision step is performed at 706 to determine whether the destination MAC address is in network 1. If the destination is in network 1, the method of the present disclosure replaces the original MAC address in the following manner. In step 710, three copied data packet frames are created and named AltSendCopy, AltSendCopy2, and AltSendCopy3 respectively. Next, at step 712, the source MAC address of the copied data frame AltSendCopy is replaced with the partner or network 2 source MAC address. For this example, if the MAC address of the original data frame is A1, then Figure 6The partner or network 2 MAC address in the MAC address table in indicates that the partner or network 2 MAC address is B1, and therefore in the AltSendCopy frame, the source MAC address is changed to B1. Similarly, in step 714, the destination MAC address of AltSendCopy is changed from B1 to B2. For the other two copy data packet frames AltSendCopy2 and AltSendCopy3, similar steps are followed. At step 716, the source MAC address of the copy data frame AltSendCopy2 is replaced with the partner or network 2 source MAC address. Next, at step 718, the destination MAC address of AltSendCopy3 is changed with the partner or network 2 destination MAC address.
[0062] Finally, in steps 720, 722, 724 and 726, the original data packet frame is transmitted on network 1 and the AltSendCopy data packet frame is transmitted on network 2, the AltSendCopy2 data packet frame is transmitted on network 2 and the AltSendCopy3 data packet frame is transmitted on network 1. Thus, the original data packet frame is transmitted along network 1 from MAC address A1 using destination MAC address A2. In the same case, the AltSendCopy data packet frame is transmitted along network 2 with source MAC address A1 using destination MAC address A2, the AltSendCopy2 data packet frame is transmitted along network 2 with source MAC address B1 using destination MAC address A2, and the AltSendCopy3 data packet frame is transmitted along network 1 with source MAC address A1 using destination MAC address B2.
[0063] However, if in decision step 706, the MAC address received from the stack shows the network 2 destination MAC address, the method branches to step 707. In step 709, three duplicate data packet frames are created and named AltSendCopy, AltSendCopy2, and AltSendCopy3, respectively. In step 711, the program replaces the source MAC address of the original data packet frame with the network 2 source MAC address. For example, at step 711, the program replaces the source MAC address of the original data packet frame from B1 to A2. In step 713, the destination MAC address of the original data packet frame is replaced with the network 1 destination MAC address. Therefore, in step 713, the destination MAC address B2 of the original data packet frame is replaced with MAC address A2. Similarly, at step 715, the destination MAC address of the duplicate data frame AltSendCopy2 is replaced with the network 1 destination MAC address. Next, at step 717, the source MAC address of AltSendCopy3 is changed with the network 2 source MAC address. Thus, in steps 719, 721, 723, and 725, the original data packet frame is transmitted along network 1 using destination MAC address A2. In the same case where the original data packet frame is transmitted on network 1, the AltSendCopy data packet frame is transmitted along network 2 using destination MAC address A2, the AltSendCopy2 data packet frame is transmitted along network 1 with source MAC address B1 using destination MAC address A2, and the AltSendCopy3 data packet frame is transmitted along network 2 with source MAC address A1 using destination MAC address B2.
[0064] Figure 8 The method of the present disclosure is illustrated, wherein the method branches at 704 because the source MAC address originates from network 2. At decision step 732, the method checks whether the destination MAC address is in network 1. If so, three duplicate data packet frames named AltSendCopy, AltSendCopy2, and AltSendCopy3 are created in step 734. Next, in step 736, the source MAC address B2 is replaced with the partner or network 1 source MAC address A2 in AltSendCopy. Next, in step 738, the destination MAC address in the original data packet frame is replaced with the partner or network 2 MAC address, replacing it from A1 to B1. Similar steps are followed for the other two duplicate data packet frames AltSendCopy2 and AltSendCopy3. At step 740, the source MAC address of the duplicate data frame AltSendCopy2 is replaced with the network 1 source MAC address. Next, at step 742, the destination MAC address of AltSendCopy3 will change with the network 2 destination MAC address.
[0065] In steps 743 and 744, the AltSendCopy data packet frame is transmitted from source MAC address A2 in node 2 to destination MAC address A1 in node 1 through network 1. In the same case, the original data packet frame is transmitted to destination MAC address A1 through network 2 using MAC address A2. In addition, in the same case, the other two copied data packet frames AltSendCopy2 and AltSendCopy3 are transmitted through network 2 and network 1 respectively. At step 745, the AltSendCopy2 data packet frame is transmitted from source MAC address A2 to destination MAC address B1 through network 2 on network 2. At step 746, the AltSendCopy3 data packet frame is transmitted from source MAC address B2 to destination MAC address A1 through network 1 on network 1.
[0066] At decision step 732, if the destination MAC address is in Network 2, conditional branch 731 is taken. At step 733, three duplicate data packet frames named AltSendCopy, AltSendCopy2, and AltSendCopy3 are created again. Next, at step 735, the source MAC address of the AltSendCopy data packet frame is replaced with the partner or network 1 source MAC address A1. Next, at step 737, the destination MAC address of AltSendCopy2 is replaced with the partner or network 1 MAC address A2. At step 739, the destination MAC address of the duplicate data packet frame AltSendCopy3 is replaced with the network 1 destination MAC address. Next, at step 741, the source MAC address of AltSendCopy3 will change with the network 1 source MAC address.
[0067] In step 743, the original data packet frame is transmitted from source MAC address A1 to destination MAC address A2 via network 2. In step 744, under the same circumstances, the AltSendCopy data packet frame is transmitted using MAC address A1 to destination MAC address A2 via network 1. In addition, under the same circumstances, the other two copied data packet frames AltSendCopy2 and AltSendCopy3 are transmitted via network 2 and network 1, respectively. At step 745, the AltSendCopy2 data packet frame is transmitted from source MAC address A2 to destination MAC address B1 on network 2 via network 2. At step 746, the AltSendCopy3 data packet frame is transmitted from source MAC address B2 to destination MAC address A1 on network 1 via network 1.
[0068] At the destination node of each interface module 302-304, the PRP consumes the first data packet frame that arrives and discards other copies (if other copies arrive). This is done in the manner previously described for ordinary PRP nodes. The network 1 MAC address has priority and is selected to replace all other incoming data packets. If the network 2 source MAC address arrives first, the network 1 source MAC address is looked up in the MAC address table and all incoming packet source MAC addresses are replaced with the network 1 source partner MAC address.
[0069] In some embodiments, the various functions described in this patent document are implemented or supported by a computer program, which is formed by a computer-readable program code and is embodied in a computer-readable medium. The phrase "computer-readable program code" includes any type of computer code, including source code, object code and executable code. The phrase "computer-readable medium" includes any type of medium that can be accessed by a computer, such as a read-only memory (ROM), a random access memory (RAM), a hard drive, a compact disc (CD), a digital video disc (DVD) or any other type of memory. "Non-transient" computer-readable medium excludes wired, wireless, optical or other communication links that transmit instantaneous electrical signals or other signals. Non-transient computer-readable medium includes a medium that can permanently store data and a medium that can store and rewrite data afterwards, such as a rewritable optical disc or an erasable memory device.
[0070] It may be advantageous to set forth the definitions of certain words and phrases used throughout this patent document. The terms "application" and "program" refer to one or more computer programs, software components, instruction sets, processes, functions, objects, classes, instances, related data or a portion thereof that are suitable for implementation with suitable computer code (including source code, object code or executable code). The term "communication" and its derivatives cover both direct communication and indirect communication. The terms "include" and "comprise" and their derivatives mean including but not limited to this. The term "or" is inclusive, meaning and / or. The phrase "associated with..." and its derivatives may mean including, included within, interconnected with, included within, connected to or connected with, coupled to or coupled with, communicable with, collaborate with, interlace, juxtapose, close to, coupled to or coupled with, have, have the property of, have a relationship with, or have a relationship with. When used with a list of items, the phrase "at least one of..." means that different combinations of one or more of the listed items may be used, and only one item in the list may be required. For example, “at least one of A, B, and C” includes any combination of A, B, C, A and B, A and C, B and C, and A, B, and C.
[0071] The description in this application should not be construed as implying that any particular element, step, or function is an essential or critical element that must be included within the scope of the claims. The scope of subject matter protected by a patent is limited only by the claims as allowed. In addition, none of the claims is intended to invoke 35 U.S.C. §112(f) with respect to any of the appended claims or claim elements, unless the exact words "means for..." or "step for..." followed by a participle phrase identifying the function are expressly used in a particular claim. The use of terms such as (but not limited to) "mechanism", "module", "device", "unit", "component", "element", "member", "device", "machine", "system", "processor" or "controller" within the claims is understood and intended to refer to structures known to those skilled in the relevant art, as further modified or enhanced by the features of the claims themselves, and is not intended to invoke 35 U.S.C. §112(f).
[0072] Although the present disclosure has described certain embodiments and generally associated methods, changes and permutations of these embodiments and methods will be apparent to those skilled in the art. Therefore, the above description of the exemplary embodiments does not limit or restrict the present disclosure. Other changes, substitutions and variations are also possible without departing from the spirit and scope of the present disclosure as defined in the following claims.
Claims
1. A data communication system, the data communication system being configured to establish an independent network path through the data communication system, the data communication system comprising at least a first network and a second network operating in parallel, wherein the communication system: comprising a first node interface, the first node interface being connected to a second node interface via the first network; the first node interface being connected to the second node interface via the second network, the first node interface being arranged to transmit data encapsulated in a data packet frame; and The method is configured to copy the data packet frame to multiple selected data packet frames, and send the data packet frame and the selected data packet frames from the first node interface to the second node interface via the first network using a first network address, and send the data packet frame and the selected data packet frames from the first node interface to the second node interface via the second network using a second network address.
2. The data communication system according to claim 1, wherein: the first node interface being arranged to select the network address of the second interface and to append the network address to the data packet frame for transmitting the data packet frame along the first network to the second node interface; and The first node interface copies the data packet frame to a first alternative data packet frame, a second alternative data packet frame and a third alternative data packet frame to select the second network address of the second node interface and append the second network address to the first alternative data packet frame, the second alternative data packet frame and the third alternative data packet frame for transmitting the data packet frame and the first alternative data packet frame, the second alternative data packet frame and the third alternative data packet frame along the second network to the second node interface.
3. The data communication system according to claim 2, wherein: The first node interface is connected to a first network switch, and the first network switch is connected to the second node interface through the first network; and The first node interface is connected to a second network switch, and the second network switch is connected to the second node interface through the second network.
4. The data communication system according to claim 3, wherein the first network switch and the second network switch are interconnected, and the first network address and the second network address are transmitted and shared with the first node interface and the second node interface using the first network switch and the second network switch.
5. A data communication system according to claim 4, wherein the first mode interface and the second node interface use a partner address table to determine which of the first network address or the second network address will be used to send data via the first network and the second network, and the partner address table includes the first network address and the second network address of the first node interface and the second node interface.
6. A data communication system according to claim 5, wherein the second node interface is arranged to encapsulate the data into a data packet frame and select the network address of the first node interface and append the network address to the data packet frame for transmitting the data packet frame along the first network to the first node interface; and The second node interface copies the data packet frame to a first alternative data packet frame, a second alternative data packet frame and a third alternative data packet frame to select the second network address of the second node interface and append the second network address to the first alternative data packet frame, the second alternative data packet frame and the third alternative data packet frame for transmitting the data packet frame and the first alternative data packet frame, the second alternative data packet frame and the third alternative data packet frame along the second network to the first node interface.
7. A method for establishing an independent network path through a data communication system, the data communication system comprising at least a first network and a second network, the method comprising: connecting the first node interface to the second node interface through the first network; connecting the first node interface to the second node interface via the second network, the first node interface being arranged to transmit data encapsulated in a data packet frame; as well as configuring the first node interface to send data encapsulated in a data packet frame to the second node interface via the first network using a first network address, and configuring the first node interface to send the data packet frame to the second node interface via the second network using a second network address, The first node interface copies the data packet frame to a plurality of alternative data packet frames.
8. The method according to claim 7, further comprising: Encapsulating the data into the data packet frame by the first node interface; selecting the network address of the second node interface and appending the network address to the data packet frame; Copying, by the first node interface, the data packet frame to the plurality of alternative data packet frames; selecting the second network address of the second node interface and appending the second network address to the plurality of selected data packet frames; as well as The data packet frame is transmitted along the first network to the second node interface and the plurality of selected data packet frames are transmitted along the second network to the second node interface.
9. The method according to claim 8, further comprising: The second node interface encapsulates the data into a data packet frame; selecting the network address of the first node interface and appending the network address to the data packet frame; Copying, by the second node interface, the data packet frame to the plurality of alternative data packet frames; selecting the second network address of the first node interface and appending the second network address to the plurality of selected data packet frames; as well as The data packet frame is transmitted along the first network to the first node interface and the plurality of selected data packet frames are transmitted along the second network to the first node interface.
10. The method of claim 9, wherein the plurality of alternatively selected data packet frames comprises a first alternatively selected data packet frame, a second alternatively selected data packet frame, and a third alternatively selected data packet frame.
Citation Information
Patent Citations
A packaging system
IE61850B1