This application claims the benefit of priority to German Application No. 10302859.5 which was filed in the German language on Jan. 22, 2003, the contents of which are hereby incorporated by reference.
The invention relates to a method for ensuring the same order of messages in a plurality of data sinks.
In the case of multicomputer systems, in particular, it is necessary for the receivers, or data sinks, to receive the data messages originating from a plurality of transmitters, or data sources, in the same order. This requires a constrained synchronization of the data sinks.
The invention discloses a method in which the data sinks are synchronized in such a way as to ensure the same message order of the data messages in different data sources.
In one embodiment of the invention, the clock generator transmits a broadcast message cyclically, for example at equidistant time intervals of 50 ms. The message comprises a consecutive clock generator number, preferably in the 32-bit format. The current clock generator number is stored in each data source. Before a message is written to the transmission buffer of the data source, this is provided with a message header comprising the current clock generator number and a consecutive message counting number within the clock cycles, preferably in the 8-bit format. As long as the clock generator number has the same value, the message counting number is increased by one upon the generation of the message header. If the data source receives a new clock generator number from the clock generator, the message counting number is reset to the initialization value. The next time a message is written to the transmission buffer, the message is in turn preceded by the current clock generator number together with the message counting number=1. On account of the items of information in the message header, namely clock generator number and message counting number, the same order of messages can be established in all the data sinks.
In another embodiment of the invention, in the data sinks, in addition to the clock generator number and the message counting number, the sender address is also used for sorting. The sorting instant is determined by the fact that a determined time on the basis of a number of clock cycles, preferably of the order of magnitude of five clock cycles, must have elapsed. This ensures that all data sinks have received at least all messages with the oldest clock generator numbers.
In still another embodiment of the invention, the cycle time of a central clock generator may be lengthened by only using the central clock generator to synchronize the clock generators assigned to each individual data source. In this case, for the sake of simplicity, the cycle time of the central clock generator is an integral multiple of the cycle time of the clock generators assigned to the data sources.
The current value of the internal clock generator of the data source is then entered in the message header.
The invention is explained in more detail below on the basis of exemplary embodiments and illustrations, in which:
In order to ensure that the data messages arrive at the data sinks DS in the same order as they are generated by the data sources DQ, a special message construction is provided, which is illustrated in
For this purpose, each individual message N is preceded by a message header NK. Said message header NK comprises a clock generator number TG-Nr. and a message counting number TZ. The clock generator number TG-Nr. is generated by a clock generator TG incorporated into the network and is communicated synchronously to all the data sources DQ (
The invention is not restricted to the exemplary embodiment mentioned above. Rather, a number of variants are conceivable which make use of the features of the invention even with an embodiment of a fundamentally different configuration.
Filing Document | Filing Date | Country | Kind | 371c Date |
---|---|---|---|---|
PCT/DE03/04027 | 12/4/2003 | WO | 7/21/2005 |