Method and system for connecting parallel redundant protocols in a network
By establishing independent parallel network paths and using different network addresses in industrial process control and automation systems, the communication interruption problem of PRP networks during unintentional physical connections is solved, achieving high availability and stable communication.
Patent Information
- Application Number
- CN202210309432.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Priority Date
- 2021-04-05
- Filing Date
- 2022-03-28
- Publication Date
- 2025-11-04
- Estimated Expiration
- 2042-03-28
AI Technical Summary
In existing industrial process control and automation systems, networks using parallel redundancy protocols are prone to communication interruptions and catastrophic losses when unintentionally physically connected. This is mainly due to the use of the same MAC address in the PRP design, which leads to incorrect handling by the switching equipment.
By establishing independent parallel network paths in the data communication system, data is transmitted between two independent networks using different network addresses, and a partner MAC address table is constructed to avoid MAC address conflicts, thus ensuring network independence.
It effectively prevents communication interruptions caused by unintentional physical connections, ensures the high availability and stability of industrial control systems, and avoids spanning tree recovery errors caused by MAC drift errors.
Smart Images

Figure CN115208967B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present disclosure relates generally to industrial process control and automation systems. More specifically, the present disclosure relates to methods and systems for facilitating parallel redundancy protocols in industrial process control and automation systems. BACKGROUND
[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 communicate through a LAN (local area network) or a WAN. In such industrial process control and automation systems, the architecture can include gateways connected to sensors and actuators used in the automation system that are not directly connected to the controllers. High availability applications operating within a LAN or WAN control and supervisory process control and automation systems desire that the network has access to all intelligent electronic devices in the network, thereby avoiding communication disruptions. Such as, for example, a high speed redundant ring or a parallel redundancy protocol (PRP) network system.
[0003] A PRP network system uses two independent networks to transmit supervisory control signals and data between the devices or nodes of the network. PRP duplicates the data frames to be transmitted, adding a redundancy control trailer (RCT) with a unique sequence number at the end of each standard communication data packet. Such as, each PRP frame has an IP (Internet Protocol) data packet, and both 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 can ignore the RCT. This approach ensures that PRP works with both PRP compatible and non-compatible devices as long as the transmitter end and receiver end are PRP compatible.
[0004] Many industrial process control and automation system vendors manufacture equipment that implement PRP as their network redundancy solution. Customers need to ensure that the two PRP networks are independent and there is no interconnection between them. However, a failure condition arises when an inadvertent physical connection is made between these independent networks. For example, a cable is cross-connected between the two networks. Such a connection will cause a serious and catastrophic loss of communication between the devices and nodes of the industrial control system, resulting in a plant shutdown or safety incident. The loss of communication is primarily due to the PRP design that uses the same MAC address for packets on each of the independent networks. Although PRP has a built-in design that contains information about the network to which a packet belongs, the managed switching equipment will see the same MAC address from two different ports and report a MAC drift error. This causes the spanning tree recovery process to be executed erroneously. SUMMARY
[0005] The present disclosure relates to a method and system for facilitating parallel redundancy protocol in industrial process control and automation systems.
[0006] In a first embodiment, a data communication system is provided that is configured to establish independent network paths through the data communication system. The data communication system includes at least a first network and a second network that include a first node interface connected to a second node interface through the first network and through the second network. The first network and the second network operate in parallel. The data communication system sends data from the first node interface to the second node interface via the first network using a first network address and sends data from the first node interface to the second node interface via the second network using a second network address, wherein the second network address is not equivalent to the first network address.
[0007] In a second embodiment, a method establishes independent network paths through a data communication system that includes 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 first network and the second network operate in parallel. The method configures the first node interface to send data to the second node interface via the first network using a first network address and configures the first node interface to send data to the second node interface via the second network using a second network address, wherein the second network address is not equivalent to the first network address.
[0008] In a third implementation, 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 through a first network and connect the first node interface to the second node interface through a second network. The first network and the second network operate in parallel. The instructions instruct the first node interface to send data to the second node interface via the first network using a first network address and to send data to the second node interface via the second network using a second network address, wherein the second network address is not equivalent to the first network address.
[0009] Other technical features can be readily apparent to one skilled in the art from the following figures, descriptions, and claims. BRIEF DESCRIPTION OF DRAWINGS
[0010] For a more complete understanding of the present disclosure, reference is now made to the following description taken in connection with the accompanying drawings in which:
[0011] Figure 1 An exemplary industrial process control and automation system according to the present disclosure is shown;
[0012] Figure 2 An exemplary control group consisting of a controller in a first network node in communication with a gateway in a second network node according to the present disclosure is shown;
[0013] Figure 3 An exemplary module for implementing a parallel redundancy protocol over a pair of parallel networks is shown;
[0014] Figure 4 An exemplary table representing node MAC addresses represented by a PRP network is shown;
[0015] Figure 4a An exemplary simplified network 1 PRP data packet frame is shown;
[0016] Figure 4b An exemplary simplified network 2 PRP data packet frame is shown;
[0017] Figure 5 An exemplary schematic diagram of a dedicated network for transmitting data between a controller 202 and a gateway 204 according to the present disclosure is shown;
[0018] Figure 6 An exemplary table representing node MAC addresses according to the present disclosure is shown;
[0019] Figure 6a An exemplary simplified network 1 PRP data packet frame according to the present disclosure is shown;
[0020] Figure 6bAn exemplary simplified network 2 PRP data packet frame according to this disclosure is shown;
[0021] Figure 7 A block diagram of a method for implementing a parallel redundancy protocol in a connected network according to the present disclosure is shown; and
[0022] Figure 8 A method for implementing a parallel redundancy protocol in a connected network according to this disclosure is shown. Figure 7 Another block diagram. Detailed Implementation
[0023] These figures (discussed below) and the various embodiments used to illustrate the principles of the invention in this patent document are by way of example only and should not be construed as limiting the scope of the invention in any way. Those skilled in the art will understand that the principles of the invention can be implemented in any type of suitably arranged device or system.
[0024] Figure 1 A portion of an exemplary industrial process control and automation system 100 according to this disclosure is shown. 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 portions thereof), such as one or more manufacturing facilities for producing at least one product or other material. Generally, each plant can implement one or more industrial processes and can be individually or collectively referred to as a process system. A process system typically refers to any system or part of a system configured to process one or more products or other materials or energy in a certain way and in different forms.
[0025] exist Figure 1 In the example shown, system 100 includes one or more sensors 102a and one or more actuators 102b. Sensors 102a and actuators 102b represent components in a process system capable of performing any of a variety of functions. For example, sensor 102a may measure various characteristics of the process system, such as temperature, pressure, or flow rate. Additionally, actuators 102b may alter various characteristics of the process system. Each sensor in sensor 102a includes any suitable structure for measuring one or more characteristics of the process system. Each actuator in actuator 102b includes any suitable structure for operating or influencing one or more conditions in the process system.
[0026] At least one input / output (I / O) module 104 is coupled to the sensors 102a and actuators 102b. The I / O modules 104 facilitate interaction with the sensors 102a, actuators 102b, or other field devices. For example, the I / O modules 104 can be used to receive one or more analog inputs (AI), digital inputs (DI), digital input event sequences (DISOE), or pulse accumulator inputs (PI) or 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 embodiment, the I / O modules 104 can include a fixed number and fixed type of inputs or outputs or reconfigurable inputs or outputs. In Figure 1 In the exemplary system, the I / O modules are connected to the gateway 106 via the network 108. The gateway 106 receives supervisory control information from remotely located controllers 116. The gateway 106 serves as an entry point and exit point for network nodes. Control information and all data must pass through or communicate with the gateway before being routed from the node. For example, control information from the controllers 116 can be sent from the controllers 116 to the actuators 102b through one or more gateways 106. Data from the sensors 102a is communicated to one or more controllers 116 through one or more gateways 106.
[0027] For example, a first set of controllers 116 can use measurements from one or more sensors 102a to control operation of one or more actuators 102b. These controllers 116 can interact with the sensors 102a, actuators 102b, and other field devices via the I / O modules 104. The controllers 116 can be coupled to the I / O modules 104 via Ethernet, backplane communication, serial communication, etc. A second set of controllers 116 can be used to optimize the 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.
[0028] Controllers 116 can be used in system 100 to perform various functions in order to control one or more industrial processes. For example, a first set of controllers 116 operating as first network nodes can use measurements from one or more sensors 102b sent from gateways 106 operating as second (and separate) network nodes to control operation of one or more actuators 102b. These controllers 116 can interact with sensors 102a, actuators 102b, and other field devices via gateways 106 and I / O modules 104. In addition, controllers 116 can also communicate with sensors and actuators (not shown) that can be connected to I / O modules 114 in the first network nodes. Controllers 116 can be coupled to I / O modules 104 via Ethernet, backplane communication, serial communication, 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 116 can be used to perform additional functions.
[0029] Controllers 116 are typically arranged in a hierarchy in the system. For example, different controllers 116 can be used to control individual actuators, collections of actuators forming machines, collections of machines forming units, collections of units forming plants, and collections of plants forming enterprises, either directly connected in their network nodes or connected via gateways 106 to different network nodes. A particular example of the 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.
[0030] Each controller 116 includes any suitable structure for controlling one or more aspects of an industrial process. For example, at least some of controllers 106 can 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 particular example, each controller 116 can represent a computing device running a real-time operating system, a MICROSOFT WINDOWS operating system, or other operating system. Operator access and interaction with controllers 116 and other components of system 100 can be via various operator stations 110.
[0031] Each operator station 110 can be used to provide and receive information from the operator. For example, each operator station 110 can provide the operator with information identifying the current state of the industrial process, such as the values of various process variables and warnings, alarms, or other states associated with the industrial process. Each operator station 110 can also receive information that affects how the industrial process is controlled, such as by receiving setpoints for process variables controlled by controller 106 or receiving other information that changes or affects how controller 106 controls the industrial process. Each operator station 110 includes any suitable structures for displaying information to the operator and interacting with the operator.
[0032] This represents a brief description of a type of industrial process control and automation system that can be used to manufacture or process one or more materials. Additional details regarding industrial process control and automation systems are well known in the art and are not necessary for understanding this disclosure. Furthermore, industrial process control and automation systems are highly configurable and can be configured in any suitable manner to meet specific needs.
[0033] Although Figure 1 A portion of an exemplary industrial process control and automation system 100 is shown, but it is applicable to... Figure 1 Make various changes. For example, make them combinable, further subdivided, reorganized, or omitted. Figure 1 The various components are included, and additional components can be added as needed. Furthermore, although... Figure 1 An exemplary operating environment in which redundant controllers can be used is shown, but this functionality can also be used in any other suitable system.
[0034] Figure 2 An exemplary control group 200 is shown, consisting of a controller in a first network node that communicates 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 being in... Figure 1 The control group 200 is used in an industrial process control and automation system 100. However, the control group 200 can be used in any other suitable system. The exemplary control group 200 operates at Level 1 of the Purdue model, and among other things, the exemplary control group 200 can use measurements from one or more sensors 102a to control the operation of one or more actuators 102b.
[0035] like Figure 2 As shown, control group 200 includes controller 202 and gateway 204. Controller 202 can represent... Figure 1 The various controllers in controller 116, or those represented by these controllers. Gateway 204 can represent... Figure 1The various gateways in the gateway 106 or represented by these gateways. The controllers 202 and gateways 204 are connected to one or more networks 108, such as a FTE (Fault Tolerant Ethernet), IEC-61850, Ethernet / IP, or MODBUS / TCP network. The controllers 202 can communicate with sensors and implement control logic for controlling actuators within their own network nodes. The controllers 202 can also communicate with the gateways 106 and sensors 102a and implement control logic for controlling actuators 102b within the second network nodes of the gateways 204.
[0036] In embodiments of the present disclosure, a dedicated network facilitates communication between the controllers 202 and the gateways 204. This dedicated network can transmit supervisory control and data between the controllers 202 and the gateways 204, allowing the controllers 202 to access and control the sensors and actuators of the second network nodes.
[0037] This 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 the gateways 204 using two independent PRP networks. Supervisory control and process data can be transmitted and received along the two independent networks between the controllers 202 and the gateways 204. Each controller 202 includes any suitable structure configured to perform control operations in an industrial process control and automation system.
[0038] Although Figure 2 Various changes can be made to the example of the controller group 200 with redundant process controllers for industrial control networks shown, without departing from the spirit and scope of embodiments of the present disclosure. Figure 2 For example, the controller group 200 can include more or fewer controllers. In addition, any suitable number and configuration of other network devices can be used to interconnect the controllers in the controller group or controller nodes.
[0039] Figure 3 An example of PRP modules operating under IEC Standard 62439-3 is shown. Two PRP modules include a first dual-attached node adhering to PRP (DANP1) 302, labeled as Node 1 in the present disclosure. A second dual-attached node adhering to PRP (DANP2) 304 is labeled as Node 2. In this example, Node 1 will act as a source node and Node 2 will act as a destination node.
[0040] Each PRP module 302, 304 includes a processor in the upper layer of the module 302 and 304, which can 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 can be implemented in Hypertext Transfer Protocol (HTTP) and can include a Transmission Control Protocol (TCP) at the transport layer and an IP Internet Protocol (IP) at the network layer. These protocol layer examples should be considered non-limiting and merely illustrative of the type of communication protocols that can be implemented by the protocol stack and operated by the processor of the PRP module 302-304.
[0041] The PRP module further includes TX / RX circuitry that implements 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 implement redundancy, a PRP compatible node is connected through two independent physical ports (port A and port B) to two independent networks LAN with similar topology, for example, network 1 including LAN A and a second network 2 including LAN B. The physical ports include circuitry such as transmit (TX) circuitry and receive (RX) circuitry as well as transceivers for handling the physical connection to the corresponding DANP1 node and DANP2 node.
[0042] Each pair of port A and port B of the same node share the same MAC address but operate in parallel and are attached to the same upper layer of the protocol stack, for example, through a Link Redundancy Entity (LRE). The LRE ensures that the upper layer is unaware of and unaffected by the redundancy. The LRE performs two key tasks related to the PRP related functions described herein, the LRE handles duplication of PRP frames and manages acceptance of packets received from network 1 and network 2.
[0043] For example, the upper layer of the protocol stack attaches a MAC header to a data packet and converts it to an IEEE 802.3 frame as is done in non-redundant networks. The MAC header includes a source MAC address field, a destination MAC address field, and other fields such as a tag and an Ethernet type / size field for an Ethernet frame. Typically, the LRE uses the same destination MAC address for destinations within the network. The LRE duplicates the data frame received from the upper layer and appends a Redundancy Check Trailer (RCT) to each duplicated data frame. The RCT is in compliance 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.
[0044] Figure 4 represents in Figure 3simplified MAC address identifier 400 used in an exemplary PRP network of Figure 4. 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 Al and network 2 MAC address Al. 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 MAC addresses in the node identifiers node 1 and node 2 are the same and identical.
[0045] In this exemplary node 1, the transmitting node LRE duplicates the data packet for transmission in the LRE. The data packet is encapsulated into a frame that includes a destination MAC address, a source MAC address, data, and an RCT. Figure 4a A data frame 402 is shown that will be transmitted on network 1. The MAC header identifies that the source of the data packet is MAC address Al 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 being transmitted on network 1. Figure 4b A data packet frame 404 is shown that is transmitted on network 2. This data packet frame includes a duplicated data packet as in Figure 4a The duplicated data packet used in the data packet frame 402 of Figure 4. The source MAC address is Al and the destination MAC address is A2, which corresponds to the source and destination addresses in the data packet frame 402, even though the packet is transmitted along network 2. The LRE passes the data packet frame to the transmitter associated with port A of LAN 1 and the transmitter associated with port B of LAN 2.
[0046] The two PRP frames travel through LAN 1 and LAN 2 with different delays, and ideally, both PRP frames arrive at the destination node 2. The receiving node 2 LRE consumes the first PRP frame and discards the second PRP frame, if it arrives. The MAC address of the source node (in this example, node 1) is used to identify the received PRP frame. The sequence number in the RCT is used in conjunction with the original source MAC address to identify the data frame during processing of the duplicated PRP frame.
[0047] Figure 5 A dedicated network for transmitting data between a controller 202 and a gateway 204 is shown in accordance with the present disclosure. A first network node 1 is formed by the controller 202, I / O module 114, and interface module 302. A second network node 2 is formed by the gateway 204, I / O module 104b, and interface module 304.
[0048] Interface modules 302 and 304 are PRP modules operating under IEC standard 62439-3. The two interface modules 302-304 include a first dual attach node adhering to PRP (DANP1) and a second dual attach node adhering to PRP (DANP2) as explained above with respect to Figure 3 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 an 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 uses LAN network 1 (hereinafter network 1) for communication, 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 LAN network 2 (hereinafter network 2) via a first cable B to 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 a classic PRP network, the disclosure of the present invention includes a cable C operably connecting the Ethernet switch A and switch B. Thus, the redundant network 1 and network 2 of the present disclosure are interconnected, allowing the MAC address identifier to cross between network 1 and network 2.
[0049] As previously explained, industrial process control system vendors that manufacture devices that implement PRP as their network redundancy scheme need to ensure that the two PRP networks are independent and have no interconnections between them. However, when an inadvertent physical connection is made between these independent networks, a fault condition occurs, resulting in a serious and catastrophic loss of communication between devices and nodes of the industrial control system. Although PRP redundant networks are suitable for high availability applications, they do not handle interconnections properly in a switched environment. The root cause of the loss of communication is primarily due to the PRP design, which duplicates 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 a packet belongs, the managed switch equipment will see the same MAC address from two different ports and report a MAC drift error. This causes the spanning tree recovery process to be executed incorrectly. By purposefully interconnecting the PRP networks in a managed switch environment and implementing the network addressing scheme of the present disclosure, the drift fault can be prevented.
[0050] 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, as shown in Figure 6 It should be noted that the network topology can include more than two nodes, however, for ease of explanation, only two nodes are used in this example. Cable C, which interconnects 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. Thus, each node shares its MAC address with the 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 table 600, Figure 6 Node 1, network 1 has MAC address Al and partner MAC address Bl. Node 2, network 2 has MAC address B2 and partner MAC address A2. The MAC addresses are not duplicated. Each interface module 302-304 includes the partner MAC address table 600, which is used to assign the appropriate MAC address for data packet transmission along network 1 and network 2.
[0051] PRPs 302-304 use the MAC addresses contained in the MAC address table 600 to construct the MAC header. For example, in Figure 6a is shown by 602 and in Figure 6bIn the MAC header shown 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 Al to destination A2 using network 1 according to frame 602. The replicated packet will be sent from node 1 MAC address Bl to node 2 MAC address B2 along network 2 as shown by frame 604. Thus, in the MAC addressing scheme of the present disclosure, MAC address Al is neither equal nor identical to MAC address Bl. Similarly, MAC address A2 is neither equal nor identical to MAC address B2.
[0052] At the destination node PRP (e.g., PRP 304), the first PRP frame arriving is consumed and the second PRP frame, if it arrives, is discarded. In the manner previously described for a normal PRP node. In this example, the MAC address of the source node 302 is used to identify the received PRP frame. During processing of the replicated PRP frame, the sequence number in the RCT is combined with the original source MAC address and used to identify the data frame. Since the MAC addresses in this example are neither shared nor replicated (e.g., source MAC address Al and source MAC address Bl), any interconnection of cables A and B or cables A' and B' between network 1 and network 2, if inadvertently made, will not trigger a network error.
[0053] Figure 7 A diagram of an exemplary method 700 for constructing PRP data packet frames 602 and 604 as shown in Figure 6a and Figure 6b is shown. For ease of explanation, the method 700 is described with respect to the system 100 of Figure 1 , but the method 700 can be implemented in any other suitable system. Further, the method 700 is implemented using the controller node 1 and node 2 of Figure 5 , but the method 700 can be implemented in any other suitable manner.
[0054] Assembly of the data packet frame begins at step 701 where the source interface module looks up the source MAC address and the destination MAC address received from the protocol stack. Next decision step 702 is taken where the method looks to see if the source MAC address received 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 taken at 706 to determine if 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 addresses in the following manner. In step 710, a duplicate data packet frame is created and named AltSendCopy. Next at step 712, the source MAC address of the duplicate data frame is replaced with the partner source MAC address. For this example, if the MAC address of the original data frame is Al, the partner MAC address in the MAC address table in Figure 6
[0055]
[0056] Figure 8 The method of the present application is shown where the source MAC address originates from network 2, the method branches at 704. At decision step 732, the method looks to see if the destination MAC address is in network 1. If so, a duplicate data packet frame is created in step 734 named AltSendCopy. Next in step 736, the source MAC address B2 is replaced with the partner 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 MAC address, changing it from Al to Bl. In steps 740, 745, the AltSendCopy data packet frame is transmitted through network 1 from the source MAC address A2 in node 2 to the destination MAC address Al in node 1. In the same case, the original data packet frame is transmitted through network 2 using MAC address B2 to the destination MAC address Bl.
[0057] At decision step 732, if the destination MAC address is in network 2, conditional branch 731 is taken. In step 733, a duplicate data packet frame is again created named AltSendCopy. Next in step 735, the source MAC address of the AltSendCopy frame is replaced with the partner source MAC address Al. Next in step 737, the destination MAC address of the AltSendCopy is replaced with the partner MAC address A2. In step 740, the original data packet frame is transmitted through network 2 from the source MAC address Bl to the destination MAC address B2. In step 745, in the same case, the AltSendCopy data packet frame is transmitted through network 1 using MAC address Al to the destination MAC address A2.
[0058] At the destination node of each interface module 302-304, the PRP consumes the first data packet frame that arrives and discards the second data packet frame, if it arrives. In the manner previously described for a normal PRP node. The network 1 MAC address has priority and is selected to replace all other incoming data packet frames. 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.
[0059] In some embodiments, various functions described in this patent document are implemented or supported by a computer program that is formed from computer readable program code and that 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 media capable of being accessed by a computer, such as read only memory (ROM), random access memory (RAM), a hard disk drive, a compact disc (CD), a digital video disc (DVD), or any other type of memory. A "non-transitory" computer readable medium excludes wired, wireless, optical, or other communication links. Non-transitory computer readable media include media that stores data permanently and media that stores and then overwrites data, such as a rewritable optical disc or an erasable memory device.
[0060] It can be advantageous to set forth definitions for certain words and phrases used throughout this patent document. The terms "application" and "program" refer to one or more computer programs, software components, sets of instructions, procedures, functions, objects, classes, instances, related data, or a portion thereof. The term "communicate" and its derivatives refer both to the act of directly conveying information and the act of indirectly conveying information. The terms "include" and "comprise," and derivatives thereof, mean inclusion without limitation. The term "or" is inclusive, meaning and / or. The phrase "associated with," as well as derivatives thereof, can mean to include, be included within, interconnect with, contain, be contained within, connect to or with, couple to or with, be communicable with, cooperate with, interleave, be proximate to, be bound to or with, have a property of, have relations with, or the like. The phrase "at least one of," when used with a list of items, means that different combinations of one or more of the listed items can be used, and only one item in the list can be needed. For example, "at least one of A, B, and C" includes: A alone, B alone, C alone, A and B together, A and C together, B and C together, and A and B and C together.
[0061] The description in this application of should not be understood as implying that any particular element, step, or function is more or less critical, essential, or necessary to the disclosure than another element, step, or function. The scope of the subject matter claimed herein is not limited by the recited claims, given that the supportable means-plus-function limitations can be broad enough to include any sort of claim that does not specifically name the means, but instead recites functions, instructions, or steps to perform a certain operation or action. Moreover, nothing disclosed herein is intended to be dependent on the cooperation of any particular
[0062] To the extent any clause of the appended claims or claim elements is expressed using the phrase "means for" or "step for," it is intended to invoke the transitional term "means for" or "step for" under 35 U.S.C. § 112(f) only as it that clause applies to the corresponding claim element either expressly recited or implicitly recited by the claim element's function. The use of the phrases "means for" or "step for" in any claim element of this application, unless otherwise specified, is not intended to invoke the transitional term "means for" or "step for" under 35 U.S.C. § 112(f).
[0063] While certain embodiments and generally associated methods have been described herein, alterations and permutations of various embodiments and methods described herein will be apparent to those skilled in the art. Accordingly, the above description of example embodiments does not restrict or dictate the scope of the patent. Other changes, substitutions, and alterations are also possible. The post-published patent application WO 2019 / 1 1 1 1 18 A1 discloses a method for determining a position of a mobile device.
Claims
1. A data communication system configured to establish an independent network path, the data communication system comprising at least a first network and a second network, wherein the data communication system: It includes a first node interface (302), which is connected to a second node interface (304) through the first network. The first node interface (302) is connected to the second node interface (304) via the second network, wherein the first network and the second network operate as two independent LANs or WANs in parallel, each LAN or WAN being configured to use different source and destination MAC addresses so that the different source and destination MAC addresses are not reused between the networks; and It is configured to send data from the first node interface (302) to the second node interface via the first network using a first network address, and to send data from the first node interface to the second node interface via the second network using a second network address. in, The second network address is not the same as the first network address. The first node interface (302) is configured to encapsulate data into a first packet frame, select a third network address of the second node interface (304), and append the third network address to the first packet frame for transmitting the first packet frame along the first network to the second node interface; and The first node interface (302) is configured to copy the data of the first packet frame into a second packet frame, and select a fourth network address of the second node interface and append the fourth network address to the second packet frame for transmitting the second data frame along the second network to the second node interface.
2. The data communication system according to claim 1, wherein: The first node interface (302) is connected to the first network switch (502), and the first network switch is connected to the second node interface through the first network; The first node interface (302) is connected to the second network switch (504), and the second network switch is connected to the second node interface through the second network; The first network switch (502) and the second network switch (504) are interconnected, and The first network address and the second network address are transmitted to the first node interface and the second node interface using the first network switch and the second network switch, and the first network address and the second network address are shared with the first node interface and the second node interface.
3. The data communication system according to claim 2, wherein the first node interface (302) and the second node interface (304) use a partner address table (600) 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, the partner address table including the first network address and the second network address of the first node interface and the second node interface.
4. The data communication system according to claim 1, wherein the second node interface (304) is arranged to encapsulate data into a third packet frame and select the first network address of the first node interface (302) and append the first network address to the third packet frame for transmitting the third packet frame along the first network to the first node interface; and The second node interface (304) is configured to copy the data of the third packet frame into a fourth packet frame and select the second network address of the first node interface and append the second network address to the fourth packet frame for transmitting the fourth data frame along the second network to the first node interface (302).
5. A method for establishing an independent network path through a data communication system, said data communication system comprising at least a first network and a second network, the method comprising: Connect the first node interface (302) to the second node interface (304) through the first network; The first node interface (302) is connected to the second node interface (304) through the second network, wherein the first network and the second network operate in parallel as two independent LANs or WANs, and each LAN or WAN is configured to use different source and destination MAC addresses so that different source and destination MAC addresses are not reused between networks; as well as The first node interface (302) is configured to send data to the second node interface (304) via the first network using a first network address, and the first node interface (302) is configured to send data to the second node interface (304) via the second network using a second network address. The data is encapsulated into a first packet frame by the first node interface (302); Select the third network address of the second node interface (304) and append the third network address to the first packet frame; The data from the first packet frame is copied to the second packet frame via the first node interface; Select the fourth network address of the second node interface (304) and append the fourth network address to the second packet frame; as well as The first packet frame is transmitted along the first network to the second node interface (304), and the second packet frame is transmitted along the second network to the second node interface (304). The second network address is not the same as the first network address.
6. The method according to claim 5, wherein the method further comprises: Connect the first node interface (302) to the first network switch (502), and the first network switch (502) is connected to the second node interface (304) through the first network; and The first node interface (302) is connected to the second network switch (504), and the second network switch (504) is connected to the second node interface (304) through the second network; The first network switch (502) and the second network switch (504) are interconnected; and The first network switch and the second network switch are used to share the first network address and the second network address with the first node interface (302) and the second node interface (304).
7. The method according to claim 5, wherein the partner address table (600) maintains the first network address and the second network address of the first node interface (302) and the second node interface (304), the method further comprising: The first node interface (302) and the second node interface (304) use the partner address table (600) 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.
8. The method according to claim 5, wherein the method further comprises: The data is encapsulated into a third packet frame by the second node interface (304); Select the first network address of the first node interface (302) and append the first network address to the third packet frame; The data of the third packet frame is copied to the fourth packet frame by the second node interface (304); Select the second network address of the first node interface (302) and append the second network address to the fourth packet frame; as well as The third packet frame is transmitted along the first network to the first node interface (302), and the fourth packet frame is transmitted along the second network to the first node interface (302).
Citation Information
Patent Citations
A packaging system
IE61850B1
Parallel redundancy protocol over wide area networks
US20170195260A1
Methods, Nodes And System For Establishing Independent Network Paths
US20190149451A1
Redundancy in converged networks
US20190207715A1