The invention concerns a method for the transmission of messages in a computer network, wherein the computer network comprises nodes, which are connected to each other by communication lines, e.g., in which each time two nodes are connected to each other, and wherein the nodes exchange messages with each other, and wherein data in the form of messages is communicated between the nodes.
Moreover, the invention concerns a computer network comprising nodes, which are connected to each other by communication lines, e.g., in which each time two nodes are connected to each other, and wherein the nodes exchange messages with each other, and wherein data in the form of messages is communicated between the nodes.
Furthermore, the invention also concerns a real-time computer system, especially a distributed real-time computer system, which comprises at least one communication system, which is configured in the form of an aforementioned computer network.
An aforementioned computer network forms for example the communication system for a distributed real-time system, or part of such a communication system.
Through the communication links, nodes can exchange messages, which messages can contain data.
Nodes can act as sender and/or receiver and/or relay points of messages.
Nodes can optionally execute functions, such as the measuring of properties of physical processes by means of suitable sensors—for which the nodes are connected to one or more sensors and/or contain such sensors—the computation of manipulated variables, or the activation of actuators, such as valves.
“Data” in the context of the present disclosure can mean data in the narrower sense, such as measured values, which are determined for example by the node or by sensors connected to the node, or the values of state variables, diagnosis values, and so on. But the data can also involve commands, such as control commands.
In general, “data” can contain identifiers, on the basis of which the receiver of the data knows, for example, which data is involved (data in the proper sense, commands in general, control commands, etc.). For this, it may be advantageous for the data to be designed as TLV triples (Type/Length/Value) triples, i.e., data is described by means of a type, a length and a corresponding value.
Inn the context of the present text, the yet to be described “fill data” does not come under the above described term “data” and thus is not “data” in the sense of the present text.
One problem which the invention intends to solve is reducing the transmission time for data in an aforementioned computer network.
This problem is solved with a method as mentioned at the outset in that, according to the invention, at least two first nodes send data to a common second node, wherein the computer network is designed such that at least one first node lies in at least one communication pathway of an additional first sending node or the plurality of additional first sending nodes to the common second node, and wherein at least one first node—the so-called integration node—which is situated closer to the common second node than at least one other first node integrates the data from at least one of the messages of the at least one node further removed from the common second node into at least one message generated by the integration node, which this integration node sends to the common second node, and wherein the at least one integration node for the purpose of this integration after the transmission of the proper integration node data to be transmitted by it continues with the transmission of at least one message transmitting this proper integration node data, a so-called integration message, by inserting the data being integrated of the at least one additional first node and/or fill data into this at least one message. The crux of the present invention is that messages can be altered during the relaying in a node, the so-called integration node. This affords an advantage over the prior art, with which the transmission time of the data can be significantly reduced, especially in a network of nodes. Thanks to this reduced transmission time, for example, production processes in existing real-time systems can be speeded up, and new applications for distributed real-time systems can be found.
Moreover, this problem is solved with an aforementioned computer network in that, according to the invention, at least two first nodes send data to a common second node, wherein the computer network is designed such that at least one first node lies in at least one communication pathway of an additional first sending node or the plurality of additional first sending nodes to the common second node, and wherein at least one first node—the so-called integration node—which is situated closer to the common second node than at least one other first node integrates the data from at least one of the messages of the at least one node further removed from the common second node into at least one message generated by the integration node, which this integration node sends to the common second node, and wherein the at least one integration node for the purpose of this integration after the transmission of the proper integration node data to be transmitted by it continues with the transmission of at least one message transmitting this proper integration node data, a so-called integration message, by inserting the data being integrated of the at least one additional first node and/or fill data into this at least one message.
According to the present invention, data from first nodes are transmitted by means of messages to a common second node. At least one of these first nodes according to the invention acts as an integration node, which integrates the data destined for the second node into a new message. For simplicity, in the context of the explanations of the invention the present text shall assume that messages which a first node sends contain only data destined for the common second node. But in reality, a message of a first node which contains data for a common second node can also contain other data, for example that which is already destined for the integration node, which then directly processes this, and/or data which is destined for the receiver situated downstream from the common second node. The integration node then integrates only that data which is destined for the common second node, according to the invention as described above, the remaining data from the message either being processed directly and/or relayed to the common second node, e.g., with the message by which it arrived at the integration node, and the common second node relays this message with the remaining data on to the final receiver.
The information exchange between nodes is message-oriented, for example, by means of Ethernet messages on wirelines or for example by means of messages per IEEE 802.11 on wireless communication links.
Advantageous embodiments of the method or the computer network according to the invention, which can be realized each in themselves or in any given combination with each other, are explained below:
In Ethernet the maximum message length is, for example, around 1518 Bytes, while there are also jumbo frames with, e.g., 9216 Bytes. But it could also be provided that the configured or configurable time period corresponds to only one Byte. Typical values for the time period thus correspond to a length of 1 Byte-1518 Bytes or 1 Byte-9216 Bytes.
It can also be provided that the time period corresponds to the precision of the synchronization, i.e., the maximum time difference between two nonfaulty local clocks in the nodes.
In the following, the invention shall be explained more closely with the aid of the drawing by means of a sample embodiment. There is shown
The networks described in the following each time comprise a number of nodes, the nodes being connected by means of communication links. The communication link between two nodes can be wireless or wireline, in the following examples we shall assume wireline, especially bidirectional wireline communication links.
In one special configuration of the network, a node, in this case node 103, acts as receiver and the other nodes 101, 102 as sender. Basically, nodes may act as sender, receiver, relay point, or as sender and relay point. Accordingly, relay points for example could also be arranged between the nodes, or the receiver 103 itself could again act as sender in a larger network. But this is not germane to the description of the invention, and for sake of simplicity we shall therefore only assume networks with senders and receivers.
Specifically, for example, Ethernet can be implemented as the message-based transmission method. Ethernet comprises message structures like the following:
As shown in
Header H101 as well as the message end T101 of the message D101 will not be further sent, so that only part of the message transporting the data D101 need be sent further.
By the term “its” data or “the” data of a node is meant data having its origin in that node, either in that this node generates that data, or it comes from sensors connected to this node. Data coming from another node does not come under these terms.
In the sample configuration of a network depicted, for example, one node, namely node 103, can act as “second” node, i.e., receiver, and the other nodes 101, 102, 101a, 101b, 102a act as sender, relay points, or sender and relay points. It might be provided in a first example that
In a second example it might be provided that
In a third example it might be provided that
In a fourth example it might be provided that
The examples given should be seen as being purely exemplary and explanatory, it being clear to the skilled person that there are still other possibilities of realization in the context of the invention, besides the four described above, and which are not described here for sake of brevity.
Node 102 and node 103 constitute “first” nodes for node 104, which in turn represents the common “second” node for these two “first” nodes 102, 103. Node 103 now integrates the data arriving from the message of node 102, i.e., the data D101, D102, as well as its data D103 in a common message, which message is sent by node 103 to node 104. Specifically, the common “second” node 103 integrates the data D101, D102 received with the message from node 102 in that message which it has begun to transmit at the same time as the beginning of the transmission of the messages of node 101 and node 102, and which contains its data D103, among others.
In this example, it is assumed that no fill data are needed. This may be the case, for example, when the receiver 104 is aware, already before receiving the message, how long the data D101, D102, D103 are, and it is ensured that the nodes 102, 103, which carry out the integration of the data, have each received the data D101, D102 being integrated in good time prior to the integration.
Node 103 thus sends a message with H103, D103, D102, D101, T103 to node 104, which receives this message somewhat later.
As shown, it may be necessary in this case for integration nodes during the relaying to insert fill data in those messages in which data from one or more of the other nodes is integrated, for example the integration node 102 inserts fill data S102 until such time as the data D101 of the other first node 101 begins to arrive at it, so that it can then integrate this, after the fill data S102, in the message by which it is transmitting its data D102 to the common second node 103. Thus, the fill data S102 is located between the data D101 and D102 in the message which node 102 transmits to node 103.
In the temporal constellation depicted, it is not necessary for the integration node 103 to also insert fill data D103, since at the time when its data is fully integrated in the message being transmitted data has already arrived at it with the incoming message from node 102, so that the integration node 103 can integrate, immediately after its data D103, the data D102, fill data S102 and D101 data from the message of node 102 in the message with its data D103.
Thus, the integration node 103 sends a message consisting of H103, D103, D102, S102, D101, T103 to node 104.
As shown, it may be necessary in this case for integration nodes during the relaying to insert fill data in those messages in which data from one or more of the other nodes is integrated, for example the integration node 102 inserts fill data S102 until such time as the data D101 of the other first node 101 begins to arrive at it, so that it can then integrate this, after the fill data S102, in the message by which it is transmitting its data D102 to the common second node 103. Thus, the fill data S102 is located between the data D101 and D102 in the message which node 102 transmits to node 103.
In the temporal constellation depicted, it is not necessary for the integration node 103 to also insert fill data, since at the time when its data D103 is fully integrated in the message being transmitted data has already arrived at it with the incoming message from node 102. In fact, it is even possible for the integration node 103 in the depicted temporal constellation to again discard the fill data S102 during the integration, so that the integration node 103 can integrate, immediately after its data D103, the data D102 and data D101 from the message of node 102 in the message with its data D103.
Thus, the integration node 103 sends a message consisting of H103, D103, D102, D101, T103 to node 104.
The data D101, D102, D103 being transmitted can optionally contain a check sum, for example, a Cyclic Redundancy Check. A receiver of the data can identify transmission errors according to the check sum. In this way, the invention makes it possible for a receiver 104 to utilize the data D101, D102, D103 without having to wait for the message end T103.
Number | Date | Country | Kind |
---|---|---|---|
A 51103/2015 | Dec 2015 | AT | national |