CROSS-REFERENCE TO RELATED APPLICATION

This is a U.S. national stage of application No. PCT/EP2019/051604 filed 23 Jan. 2019.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The invention relates to a network node, a computer program, a computer-readable medium and a method for fail-safe data transmission in a network, in particular an industrial network, having a plurality of network nodes.

2. Description of the Related Art

In industrial networks, sensor/actuator information is generally interchanged with the controller in a digitized manner via a communication network. A field bus is a bus system that connects field devices, such as measurement sensors (sensors) and actuating elements (actuators), to an automation device for the purpose of communication in an installation. If a plurality of communication participants transmit their messages via the same line, then it is necessary to stipulate who (identifier) says what (measured value, command) when (initiative). There are standardized protocols for this. Ethernet has become prevalent as the technology.

The field bus replaces the parallel bundles of lines with a single bus cable and connects all levels, from the field level to the control level. Irrespective of the type of automation device, for example, programmable logic controllers (PLC) from different manufacturers or PC-based controllers, the transmission medium of the field bus networks the components in the field.

The data to be transmitted are required for the automation task, where a loss of data should therefore be excluded. The destruction or failure of individual connecting sections should likewise not result in a break in communication.

A separate field bus technology has hitherto been developed in industry. The new Ethernet-based field buses with real-time capability are compiled, for example, in the International Electrotechnical Commission (IEC) 61784-2 standard. PROFINET (Process Field Network), the open industrial Ethernet standard of the PROFIBUS Nutzerorganisation e.V. (PNO), is known for automation. PROFINET uses Transmission Control Protocol/Internet Protocol (TCP/IP) and IT standards, has Ethernet capability and makes it possible to integrate field bus systems.

Pure data transmission in Ethernet does not provide any protection in the event of failure of a connection. A network becomes free of loops by virtue of IT protocols, for example, RSTP (by deactivating existing additional cables which are also referred to as links). There are further developments, for example ISIS SPB (SPB stands in this case for Shortest Path Bridging which is standardized in Institute of Electrical and Electronics Engineers (IEEE) 802.1aq; ISIS stands for the routing protocol “Intermediate System to Intermediate System Protocol” which is standardized, in particular, in International Organization for Standardization/International Electrotechnical Commission (ISO/IEC) 10589:2002(E)). Here, the further developments are based on the use of the respectively shortest connection between network nodes, for instance bridges, and the deactivation of additional links. However, in the two above-mentioned variants, there is a brief failure of communication in the event of a fault.

In the field of industry in particular, special redundancy mechanisms were introduced in order to be able to guarantee a deterministic switching time as easily as possible and to keep the failure low. In this case, recourse was had, for example, to the Media Redundancy Protocol (MRP) (see IEC 62439, in particular) that can compensate for individual failures in a simple ring topology.

In applications that do not cope with the failure of a connection, the data are generally transmitted on a plurality of, typically two, separate transmission paths (paths) in a parallel manner in the network. This is often referred to as “seamless redundancy” because there is no failure of communication in the event of a fault. The network protocol for Ethernet referred to as High-Availability Seamless Redundancy (HSR) and the Parallel Redundancy Protocol (PRP), which are both standardized in IEC 62439-3, are known, for example. A sequence number is inserted into all data packets in HSR and PRP.

At the IEEE, this principle is standardized by the Time-Sensitive Networking (TSN) task group within the scope of IEEE 802.1CB. An additional TAG (redundancy TAG) with a sequence number is inserted in a connection. As a result, duplicates can be transmitted in the network and subsequently filtered for particularly critical connections.

All of the previously known mechanisms are used only for operation and prevent a communication failure in the event of a fault on one of the two redundant paths. A possibly planned, in particular permanent, change to an existing network, such as on account of a conversion and/or an expansion, is not possible without problems. In the case of switching redundancy (also in the case of seamless redundancy) the result here may be a brief failure in communication. This has hitherto not been prevented. The cause of this is that, on account of a network change, a change in all (in the case of two) both redundant paths can occur. The redundant paths have hitherto been determined in ISIS SPB-PCR by the so-called GADAG. In this case, the acronym GADAG stands for Generalized Almost Directed Acyclic Graph. The Internet Engineering Task Force (IETF) project with the title “Algorithms for Computing Maximally Redundant Trees for IP/LDP Fast-Reroute”, for example, discloses a method for an MRT fast-reroute algorithm which makes it possible to calculate GADAGs and to derive MRTs from the GADAGs.

A GADAG can be used as the basis for redundant paths in the network. When calculating paths, a path/route in the direction of the GADAG and a second path/route counter to the GADAG are usually found. However, if the GADAG changes, then the direction of the GADAG in a subsegment may change. Both paths/routes are then affected by this change. When switching from a previous GADAG to a new GADAG, the result may therefore be a simultaneous change on both paths that results in the failure of communication even when using a seamless redundancy method. A corresponding change may therefore be worse than a failure, for instance, a defect of an individual connection.

The Stream Reservation Protocol (SRP), IEEE 802.1Qat, with which transmission resources can be dynamically reserved and with which it becomes possible to guarantee latencies, is also known. The Time-Sensitive Networking (TSN) task group which emerged from the Audio Video Bridging (AVB) task group has worked and is working on a number of further standards. The TSN standards include, for example, time synchronization (IEEE 802.1AS-Rev), frame preemption (IEEE 802.1Qbu) and reservation (IEEE 802.1Qca, IEEE 802.1Qcc) and others.

WO 2019/001718 A1, which likewise traces back to the applicant, discloses a method for reserving maximally redundant transmission paths for transmitting data packets. This document discloses the practice of extending a reservation protocol such that the duplicate filters of seamless redundancy are automatically configured at the required locations in the network during resource reservation. All information is already known in the reservation protocol.

SUMMARY OF THE INVENTION

Proceeding from the prior art, it is therefore an object of the present invention to provide a network node and further develop the method of the type mentioned at the outset such that a particularly high degree of failure safety of communication, in particular even in the case of a change to the network, in particular the network topology is achieved.

This and other objects and advantages are achieved in accordance with the invention by a method for fail-safe data transmission in a network, in particular an industrial network, having a plurality of network nodes, in which data packets are transmitted from a transmitter to a receiver via at least two, preferably precisely two, redundant paths, on which resources for the transmission are reserved at involved network nodes using an identifier assigned to the respective path, in particular a VID assigned to the respective path, wherein, if a new path is to be found for at least one affected path, in particular on account of a change caused by a conversion and/or an expansion of the network, then the previous reservations on all redundant paths are retained, a new redundant path is determined for the at least one affected path and an attempt is made to reserve resources for the transmission on this path at the involved network nodes, wherein a new identifier which is assigned to the new path and differs from the previous identifiers is used, and if the new reservations on the at least one new path are successful, then the previous reservations on the at least one affected previous path are removed and, in particular, the transmission of data packets via the at least one affected previous path is terminated.

In other words, the basic concept of the present invention involves providing increased failure safety even in the event of changes, in particular network topology changes, by additionally setting up new reservations and specifically removing existing reservations only when the new reservations have been successful. Here, new, different identifiers are used in accordance with the invention for the new redundant paths/routes. The identifiers may be, for example, VLAN IDs, which are also referred to as VIDs for short.

Since, in accordance with the invention, there is simply no direct changing to new paths, but rather existing reservations on existing paths are initially deliberately not changed, but rather are maintained and expediently, if possible, used to forward packets or frames, interruption-free communication can be ensured even in that case in which all of two or more existing redundant paths are affected by a change. In particular, at least one of the previous paths can then continue to be used for protected real-time communication, in particular with guaranteed latency, in any case until one or more new paths can be found and resources can be successfully reserved on these paths.

Particularly in networks in which CB (IEEE 802.1CB) is supported only by some network nodes, it is particularly expedient to consider the resources separately for both variants. If paths are intended to run differently than existing reservations, then the result may be duplicates in network nodes that do not support CB and accordingly must send all duplicates of this connection.

As a result of the use in accordance with the invention of different identifiers, in particular VIDs, for the “old” paths and the “new” path(s), the data may be distinguished during forwarding. In the case of multiple assignments, only the reservation for the first arriving packet is effected in network nodes, for instance bridges, with CB. In the case of CB, the first arriving duplicate/packet is generally forwarded and all further, subsequently arriving duplicates are detected and filtered by the CB mechanism, i.e., are not forwarded and therefore do not constitute a multiple assignment on a common forwarding path. As a result of the reservation for the first arriving packet, no more resources than absolutely necessary are therefore also reserved.

The procedure in accordance with the invention makes it possible to reconfigure connections with seamless redundancy. An industrial installation that uses a network to transmit data need no longer be stopped, for example, if there is a planned optimization in the network. The use of seamless redundancy, in particular CB, in combination with the sequence in accordance with the invention of changing the reservations in the network, enables an interruption-free path change.

A change to the network may be caused or given, for example, by an expansion and/or optimization and/or conversion and/or repair on account of a fault or defect. The change is, in particular, a permanent change, in particular to the network topology.

It may be the case that a plurality of, in particular all, previous paths are affected by a change. In such a case, a new path is respectively preferably calculated for a plurality of, in particular all, affected paths and an attempt is made to make reservations with respective new identifiers on each new path, where, in particular, the new identifiers of all new paths differ from one another and from the previous identifiers. This ensures that data that are transmitted on all previous paths and on all new paths can be reliably distinguished from one another.

The identifiers, in particular VIDs, which belong to the two or more redundant paths of a transmission or connection preferably belong to a common base identifier, in particular a common base VLAN or base VID, or are included therein.

The identifiers that are assigned to the at least two redundant paths expediently differ from one another, i.e., the same identifier is expediently not used for the at least two redundant paths. This preferably applies both to the previous redundant paths and to the new redundant paths.

A path should be understood as meaning, in particular, in a manner known per se, a transmission path from a transmitter to a receiver.

In accordance with a further particularly preferred embodiment, a new generalized almost directed acyclic graph (GADAG) is calculated for the network or at least one part of the network, in particular in response to the change, and the at least one new path is calculated for the at least one affected previous path using the new GADAG. If a plurality of, possibly all, previous paths are affected by a change and a new path must accordingly be respectively calculated for a plurality of, possibly all, previous paths, then it is preferably true that all new paths are determined using the new GADAG.

The determination or calculation of the (new) GADAG, i.e., in particular the GADAG update, is preferably triggered manually. This can be implemented via a network management system, for example, after completion of a repair or planned optimization by a network administrator. The manual triggering or activation of the recalculation, i.e., the update, is particularly expedient to be able to distinguish in a specific manner between a planned expansion of the network or the completion of repair work, for instance, and the failure caused by a fault.

It will predominantly be the case that, in order to ensure seamless redundancy on precisely two redundant paths, data packets and duplicates are transmitted simultaneously to be able to pick up the failure of a defect on a path without interruption. Provision may then be made, in particular, for precisely two existing previous paths to change on account of a change in the network and for a new path to be respectively calculated for these two paths, which is then preferably performed using a new GADAG.

Furthermore, if a plurality of, in particular all, paths are affected by the change, provision may be made, of the new paths determined, for at least one path to point in the direction of the new GADAG and for at least one path to point in the opposite direction. If only one of the previous paths is affected by a change, it is preferably true that, of the one new path and the unaffected retained previous path(s), at least one path points in the direction of the new GADAG and at least one path points in the opposite direction.

Furthermore, provision may preferably be made for the new GADAG to be communicated to the involved network nodes. This can be performed, for example, in the form of or as part of messages that are distributed in the network, in particular interchanged between network nodes, by processing a protocol, in particular a routing protocol. The ISIS protocol shall be mentioned as an example of a routing protocol, where the ISIS-SPB/PCR protocol is particularly preferably used.

It should be noted that the situation in which the involved network nodes do not interchange the corresponding information, in particular a new GADAG, with one another, but rather each receive the information from a central location, is not excluded. Information can naturally also be received from a central location in combination with the information being interchanged by the network nodes.

In a further embodiment, the at least two previous paths are calculated using a previous generalized almost directed acyclic graph (previous GADAG). If this is the case, it is preferably true that at least one of the previous paths pointed or points in the direction of the previous GADAG and at least one other path of the previous paths pointed or points in the opposite direction. For the particularly customary situation in which precisely two previous redundant paths are or were provided, one of the two paths points in the direction of the previous GADAG and the other points in the opposite direction, in particular.

It should be noted that it is conventional to assign the color blue to a path that points in the direction of a GADAG and to assign the color red to a path that points in the opposite direction.

If precisely two new redundant paths need to be determined for precisely two (previous) redundant paths within the scope of the method in accordance with the invention, the colors of light blue and light red can be assigned in a similar manner to the two new redundant paths, where it is then true, in particular, that the light blue path points in the direction of the new GADAG and the light red path points in the opposite direction.

It is generally true that a recalculation results in a new GADAG, from which the two new paths are then formed. Accordingly, it can be stated that both paths are “updated”. However, it may be the case here that one part leads to the same result (path remains the same—part of the GADAG is retained without change for the new topology).

It is also true that the redundant trees required for seamless redundancy, for example, according to IEEE 802.1Qca, are explicitly predefined and/or can be locally calculated in the network nodes, for instance, bridges.

In order to calculate the paths, it is also possible to use topology discovery and/or distributed path computing, in particular spanning tree, shortest path (in particular for each boundary node, as in IEEE 802.1Q SPB-V for each SPT bridge with the SPVID) and/or maximally redundant trees (MRT), in particular based on a GADAG.

In a further preferred embodiment, after removing the previous reservations on the at least one affected previous path, provision may be made for further reservations of resources to be made at the involved network nodes on the at least one (respectively) associated new path using the previous identifier of the associated at least one previous path, and for the reservations for the new identifier to then be removed or cleared again. It thus becomes possible to change back to the previous original identifiers, in particular VIDs, for the new path(s), which has proved to be particularly suitable.

The changeover to one or more new paths for seamless redundancy with the preservation in accordance with the invention of the old reservations and their removal only after successful reservations on the new path(s) is particularly preferably performed in a completely transparent manner from the point of view of the involved terminals or for an associated application. As a result of the mechanisms for changing the identifier of a path in the network for the reservation that are defined in the reservation for CB, the internal identifiers used in the network are not visible to the terminals when using a special identifier for terminals—the identifier in the network is therefore changed in a transparent manner for the terminals.

When reserving resources along the (previous and new) path(s), the involved network nodes are (were) configured, in particular, where an identifier, for instance a VID, is/was preferably used, preferably is/was stored in the respective network node. The resources are reserved for the respective stream, in particular under or for the identifier.

A stream reservation protocol is preferably used to reserve resources at involved network nodes within the scope of the method in accordance with the invention. SRP and RAP are mentioned as an example of such a protocol. In this case, SRP stands for the Stream Reservation Protocol, preferably according to IEEE 802.1Q. The acronym RAP stands for Resource Allocation Protocol which is, in particular, the Resource Allocation Protocol according to the draft P802.1Qdd. LRP stands for Link-local Registration Protocol, in particular according to IEEE P802.1CS.

The reservation protocol used is preferably extended such that it performs, preferably in an automated manner, at those network nodes at which this is required, a configuration for seamless redundancy, in particular an automatic configuration of the duplicate filters for seamless redundancy at the required locations in the network while reserving resources. All information is already known in the resource reservation protocol previously known from the prior art.

In order to reserve resources at the involved network nodes on the at least one new path, a preferably standard advertisement message can be transmitted, for example, from the network node closest to the transmitter, in response to the change, to the network nodes that are next in the direction of the receiver on the at least one new path. An advertisement message may be, in particular, a so-called talker advertise, as is previously known from the prior art.

Provision may be made, in particular, for a plurality of new paths to be determined and, in order to reserve resources at the involved network nodes on the new paths, for a preferably standard advertisement message to be transmitted from the network node closest to the transmitter, in response to the change, to the network nodes that are next in the direction of the receiver on each new path.

Furthermore, in order to reserve resources at the involved network nodes on the at least one new path, a preferably standard participation message, in particular a listener ready, can be transmitted from the network node closest to the receiver to the network nodes that are next in the direction of the transmitter on the at least one new path. If a plurality of new paths are determined, in order to reserve resources at the involved network nodes on the plurality of new paths, a preferably standard participation message, in particular a listener ready, can be transmitted from the network node closest to the receiver to the network nodes that are next in the direction of the transmitter on each of the new paths.

In accordance with the disclosed embodiments, recourse is made to the previously known procedures for stream reservation and establishment, which has proved to be particularly suitable.

When forwarding the participation message, the CB functionality is preferably configured, in network nodes that are on a plurality of paths and support CB, for the paths with the respectively different identifiers and the participation message is transmitted on all paths in the direction of the network node closest to the transmitter. This is also described in WO 2019/001718 A1 which likewise traces back to the applicant.

The reservation of resources on the new path(s) within the scope of the method in accordance with the invention is preferably achieved or undertaken in the manner described in WO 2019/001718 A1, there in particular for obtaining for the first time more than one path with reserved resources at involved network nodes to ensure redundancy.

It is clear, inter alia, from WO 2019/001718 A1 that the connection-dependent configuration component of seamless redundancy can be effected via the protocol by virtue of the skilled combination of existing data from the reservation protocol and extension of rules when implementing the actual stream reservation. The extension is necessary in this case, in particular, only at the end points of the network (transitions to the terminal) or at redundant transitions (in particular ring-ring coupling locations). The reservation request is respectively implemented in this case at the input and output of the TSN network, in particular. The forwarding is performed in the network itself according to the standards.

According to WO 2019/001718 A1, provision is made, in particular, for both a stream advertisement message, in particular a talker advertise, and a stream participation message, in particular a listener join, to be forwarded to the boundary nodes at the talker and listener ends in a duplicated manner and via the plurality of, in particular both, redundant paths to be able to accordingly configure the nodes on all redundant paths and to be able to process the reservations.

The advantageous extension results in easier applicability of seamless redundancy for protected communication and enables use in low-configuration networks.

The procedures described in WO 2019/001718 A1 can also be implemented in a similar manner if one or more of the previous redundant paths change. In particular, duplicate filters can also be activated or set up, at least at the required locations in the network, in the manner described in WO 2019/001718 A1, in particular using an accordingly extended reservation protocol.

The stream data are forwarded in the network in a manner known per se based on the identification used for the stream in the stream data packets. Depending on the configured mode of CB, the stream data are forwarded with their respective own identifier, in particular their own VID, for each path or with a common identifier, in particular a common VID, on all paths which have previously been configured, in particular, by the reservation, in particular a talker advertise and listener join. Both variants are possible according to the mechanisms defined in the IEEE 802.1CB standard.

The network in which the data are transmitted may comprise at least a ring topology and/or at least a meshed topology.

The network is also expediently an AVB or TSN network or a network with AVB or TSN capability. In particular, the network nodes of the network have AVB or TSN capability, support one or more AVB or TSN standards, such as the reservation of resources for forwarding with guaranteed latency.

It should be understood it is possible to transmit data, as a stream, from one transmitter to more than one receiver and/or to transmit data from a plurality of transmitters to one receiver using reserved resources at the involved network nodes. Here, a pair consisting of one transmitter and one receiver should then be respectively considered, for which two or more (previous) redundant paths then exist, and, if at least one of the redundant paths belonging to the pair is affected by a change, at least one new path is determined for each pair of transmitter and receiver and an attempt is made to reserve resources on said path.

It is also an object of the invention to provide a network node having a processor and memory, which is configured to implement the method in accordance with disclosed embodiments of the invention. A network node, which can also be referred to as a network element, may be form as a bridge or switch, for example.

The network node in accordance with the invention is preferably configured such that it can make the reservation.

Provision may also be made for the network node according to the invention to be configured such—that it defines the paths in the network. This has proved to be expedient, in particular, if the network node is intended (to be able) to function in a network as a boundary node that is closest to a transmitter (talker) or receiver (listener), in particular a terminal representing such. The paths should preferably be defined by a boundary node at the transmitter end or are defined by a boundary node at the transmitter end if a stream is to be set up between precisely one transmitter and one or more receivers, and are defined by a boundary node at the receiver end if a stream is to be set up between a plurality of transmitters and precisely one receiver.

The network node in accordance with the invention has proved to be particularly suitable for performing the method in accordance with the disclosed embodiments of the invention.

It is also an object of the invention to provide a computer program comprising program code for performing the steps of the method in accordance with the disclosed embodiments of the invention.

Finally, it is also an object of the invention to provide a computer-readable medium comprising instructions which, when executed by a processor on at least one computer, cause the at least one computer to perform the steps of the method in accordance with the disclosed embodiments of the invention.

The computer-readable medium may be, for example, a CD-ROM or DVD or a USB or flash memory. It should be noted that a computer-readable medium is not intended to be understood as meaning solely a physical medium, but rather such a medium may also be present, for example, in the form of a data stream and/or a signal representing a data stream.

Other objects and features of the present invention will become apparent from the following detailed description considered in conjunction with the accompanying drawings. It is to be understood, however, that the drawings are designed solely for purposes of illustration and not as a definition of the limits of the invention, for which reference should be made to the appended claims. It should be further understood that the drawings are not necessarily drawn to scale and that, unless otherwise indicated, they are merely intended to conceptually illustrate the structures and procedures described herein.

