KOMMUNIKATIONSVERFAHREN UND APPARAT ZUR EFFIZIENTEN UND SICHEREN
ÜBERTRAGUNG VON TT-ETHERNET NACHRICHTEN
Die Erfindung betrifft ein Kommunikationsverfahren zur Übertragung von TT-Ethernet Nachrichten in einem verteilten Echtzeitsystem, bestehend aus einer Vielzahl von Knotenrechnern, wobei jeder Knotenrechner über mindestens einen Ethernetkontroller verfügt, welcher Ethernetkontroller über eine Datenleitung mit einem dem Knotenrechner eindeutig zugeordneten Port eines TT-Sternkopplers direkt verbunden ist, und wobei mehrere TT- Sternkoppler über eine oder mehrere Datenleitungen untereinander direkt oder indirekt verbunden sein können, um ein geschlossenes TT-Netzwerk zu bilden.
Weiters betrifft die Erfindung einen TT-Sternkoppler zur Vermittlung von Ethernet Nachrichten in einem oben genannten Kommunikationsverfahren.
hi den vergangen zwanzig Jahren hat sich der IEEE Ethernet Standard 802.3 [5] so weit durchgesetzt, dass aufgrund des vorhandenen Massenmarktes für Ethernet Kontroller im Personal Computer Bereich die Kosten für Ethernet basierte Kommunikationssysteme sehr stark gesunken sind. Aus diesen Kostengründen wird Ethernet auch zunehmend in der Echtzeitdatenverarbeitung eingesetzt. Im Europäischen Patent EP 1 512 254 [4] wird ein Verfahren offen gelegt, das es ermöglicht, zeitgesteuerte Nachrichten mit guten Echtzeiteigenschaft in einem erweiterten Ethernetsystem— im folgenden TT-(time-triggered) Ethernet genannt - zu übertragen.
Im TT-Ethernet [4] wird zwischen zwei Nachrichtenkategorien unterschieden, den herkömmlichen Ethernet Nachrichten (im-Folgenden ET (eOβnt-tήggered) Nachrichten genannt) und den neuen TT-Nachrichten. Die TT-Nachrichten sind dadurch gekennzeichnet, dass sie im Ethernet Type Field ein spezielles von der Ethernet Standardverwaltung der IEEE autorisiertes Bitmuster (das Bitmuster 88d7) enthalten [5]. Während die ET Nachrichten (das sind die herkömmlichen Ethernet Nachrichten) aus einer zeitlich unkoordirύerten offenen Umgebung kommen und daher im zeitlichen Konflikt zueinander stehen können, wird in TT- Ethernet vorausgesetzt, dass alle TT-Nachrichten entsprechend einem a -priori festgelegten Zeitplan in einem geschlossenen TT-Netzwerk ohne wechselseitige Behinderung übertragen werden können. Das geschlossene TT-Netzwerk besteht aus einer Anzahl von Knotenrechnern, die über einen oder mehrere TT-Sternkoppler kommunizieren.
Die Nutzdateneffizienz der TT-Nachrichtenübertragung in TT-Ethernet [4] hängt wesentlich von der Präzision π [6] der Uhrensynchronisation der TT-Ethernetkontroller in den Knoten-
rechnern ab, da der zeitliche Abstand zwischen zwei TT-Nachrichten größer sein muss als die doppelte Präzision II, um jede TT-Nachrichtenkollision ausschließen zu können [2]. Eine sehr präzise Uhrensynchronisation— etwa im Bereich von 1 μsec— setzt eine Hardwareunterstützung [1] voraus, die in handelsüblichen Ethernetkontrollern nicht zu finden ist. Wird die Uhrensynchronisation in Software durchgeführt, so ist es schwierig, eine Präzision von besser als 50 μsec zu realisieren, d.h. zwischen zwei TT-Ethernet Nachrichten muss ein zeitlicher Abstand von mindestens 100 μsec eingeplant werden, um eine Kollision von TT- Nachrichten im TT-Netzwerk auszuschließen. Wenn angenommen wird, dass in einem 100 Mbit/sec Ethernet System die Übertragungszeit vieler TT-Nachrichten wesentlich kürzer ist als 100 μsec, so kann bei Verwendung handelsüblichen Ethernet Kontroller eine Nutzdateneffizienz von wesentlich weniger als 50% auftreten.
Es ist eine Aufgabe der Erfindung, eine Verbesserung der Nutzdatenrate und der Datensicherheit in einem verteilten Echtzeitcomputersystem, in dem die Knotenrechner mittels zeitgesteuerter Ethernet Nachrichten, wie z.B. in EP 1 512 254 offen gelegt, kommunizieren, zu erzielen.
Die vorliegende Erfindung löst diese Aufgabe erfindungsgemäß dadurch, dass jeder TT- Ethernetnachricht durch einen Scheduler a priori ein Netzwerksendezeitpunkt, beispielsweise ein periodischer Netzwerksendezeitpunkt zugewiesen wird, wobei der Port des TT- Sternkopplers eine vom Knotenrechner eintreffende TT-Ethernetnachricht so lange verzögert, bis auf seiner Uhr der nächste Netzwerksendezeitpunkt für diesen TT- Ethernetnachrichtentyp erreicht ist, und wobei der Port diese TT-Ethernetnachricht exakt zu diesem Netzwerksendezeitpunkt bzw. in einem exakt nach oben begrenzten Zeitintervall beginnend zu diesem Netzwerksendezeitpunkt in das TT-Netzwerk sendet.
Es wird also zwischen dem Knotenrechnersendezeitpunkt (KNSZPKT) und dem Netzwerksendezeitpunkt (NWSZPKT) einer Nachricht unterschieden. Erfindungsgemäß wird vorgeschlagen, die TT-Sternkoppler so zu modifizieren, dass eine von einem Knotenrechner eintreffende TT-Ethernet Nachricht in einem intelligenten Port des TT-Sternkopplers bis zum NWSZPKT verzögert wird, um sie dann präzise zum NWSZPKT in das TT-Netzwerk senden zu können. Der KNSZPKT, interpretiert von der Uhr des sendenden Knotenrechners, muss so rechtzeitig vor dem NWSZPKT liegen, dass unter allen Umständen (d.h. auch wenn die Uhren von Knotenrechner und TT-Sternkoppler an den Grenzen des Präzisionsintervalls [6] liegen) der Anfang der Nachricht zum NWSZPKT, interpretiert von der Uhr im TT- Sternkoppler, im TT-Sternkoppler eingetroffen ist. Im Intervall zwischen KNSZPKT und NWSZPKT kann vom intelligenten Port des TT-Sternkopplers auch eine zeitliche und semantische Überprüfung der eintreffenden TT-Nachricht vorgenommen werden, um die
Fehlererkennung zu verbessern. Da der Knotenrechner und der TT-Sternkoppler zwei getrennte Fault-Containment Regionen bilden [7, 3], lässt sich durch eine Überprüfung der Nachricht im unabhängigen TT-Sternkoppler die Wahrscheinlichkeit für eine Fehlerfortpflanzung durch eine falsche Nachricht reduzieren. Weiters kann der intelligente Port des TT-Sternkopρlers die vom Knotenrechner eintreffende Nachricht verschlüsseln, so dass die TT-Nachrichten im Netzwerk verschlüsselt übertragen werden.
Weitere vorteilhafte Ausgestaltungen sind in die Unteransprüche angegeben.
Durch die vorliegende Erfindung ergeben sich folgende signifikante wirtschaftliche Vorteile:
Die Nutzdateneffizienz der TT-Nachrichtenübertragung kann auch bei Verwendung von handelsüblichen Ethernetkontrollern, welche die Uhrensynchronisation in Software durchführen, auf weit über 90% gesteigert werden.
Die Überprüfung einer TT-Nachricht im intelligenten Port des TT-Sternkopplers reduziert die Wahrscheinlichkeit der Fehlerfortpflanzung und erleichtert die Diagnose.
Die Verschlüsselung der Nachricht im intelligenten Port des TT-Sternkopplers erhöht die Sicherheit eines Echtzeitsystems, ohne die Applikationsrechner zusätzlich zu belasten.
Herkömmliche Ethernet Kontroller können ohne Änderungen in der Hardware zur Übertragung von TT-Nachrichten und ET Nachrichten eingesetzt werden.
Im Folgenden ist die Erfindung an Hand der Zeichnung in einem nicht einschränkenden Beispiel näher erörtert. In dieser zeigt
Fig. 1 zeigt den Aufbau eines verteilten Computersystems mit einem TT-Sternkoppler,
Fig. 2. zeigt die Sendezeitpunkte einer Nachricht, und
Fig. 3 zeigt den Aufbau einer TT-Ethernet Nachricht.
Im folgenden Abschnitt wird eine Realisierung des neuen Verfahrens an einem möglichen Beispiel mit drei Knotenrechnern, die über einen TT-Sternkoppler verbunden sind, gezeigt.
Fig. 1 zeigt ein verteiltes Computersystem mit einem TT-Sternkoppler 101. Es besteht aus den drei Knotenrechner 111, 112, 113, die mit dem TT-Sternkoppler 101 über bidirektionale
Leitungen verbunden sind. Der TT-Sternkoppler 101 kann über die Leitung 100 mit weiteren TT-Sternkopplern verbunden werden und so Teil eines zeitgesteuerten (TT) Netzwerks, das aus mehreren TT-Sternkopplern besteht, werden. Es wird angenommen, dass die Uhren aller TT-Sternkoppler, die ein TT-Netzwerk bilden, über eine gemeinsame Zeitbasis hoher Präzision [6] (besser als 1 μsec) verfügen. Der TT-Sternkoppler 101 besteht aus den drei intelligenten Ports 121, 122, 123, die über den eigentlichen Ethernet Switch 102 Nachrichten austauschen können. Jeder der intelligenten Ports 121, 122, 123 verfügt über eine autonome Verarbeitungskapazität, so dass Nachrichten parallel empfangen und in den Ports gleichzeitig bearbeitet werden können. Beispielsweise kann jeder Port über einen eigenen Computer mit lokalem Speicher zur Bearbeitung von Nachrichten verfügen. Eine von einem Knotenrechner, z.B. dem Knotenrechner 111, am zugeordneten Port 121 eintreffende TT- Ethernetnachricht wird im Port 121 solange verzögert, bis der nächste periodisch wiederkehrende Netzwerksendezeitpunkt (NWSZPKT) für diesen Nachrichtentyp erreicht ist. In TT- Ethernet [4] ist ein Nachrichtentyp eindeutig durch den periodischen Sendezeitpunkt eines Knotenrechners in einem TT-Netzwerk festgelegt. Im Gegensatz dazu wird, entsprechend dieser Erfindung, der TT-Nachrichtentyp durch den periodischen Netzwerksendezeitpunkt (NWSZPKT) einer Nachricht eindeutig bestimmt.
Fig. 2 zeigt den zeitlichen Ablauf des Sendens einer periodischen zeitgesteuerten Nachricht in einer zyklischen Darstellung der Periode am Beispiel des Sendens einer Nachricht durch den Knotenrechner 111 und den Port 121. Die Zeit schreitet in Fig. 2 im Uhrzeigersinn voran. Da der Netzwerksendepunkt NWSZPKT 202 des intelligenten Ports 121 (und auch die Sendezeitpunkte der anderen Ports 122, 123 und der über die Verbindung 100 angeschlossenen weiteren Ports der anderen TT-Sternkoppler des geschlossenen TT-Netzwerks) auf einer Zeitbasis hoher Präzision [6] basiert (eine Präzision von besser als 1 μsec ist mit entsprechender Hardwareunterstützung leicht erreichbar), kann ein Nachrichten-Scheduler die Einplanung der kollisionsfreien Übertragung der TT-Nachrichten im geschlossenen TT-Netzwerk mit einem durch die Präzision dieser Zeitbasis gegebenen kleinen Abstand zwischen zwei Nachrichten vornehmen und somit eine hohe Nutzdatenrate im TT-Netzwerk realisieren. Nach Festlegung der Netzwerksendepunkte NWSZPKT 202 wird in einer zweiten Phase der Einplanung der Zeitpunkt des Sendens einer TT-Nachricht durch den Knotenrechner, der KNSZPKT 201 festgelegt. Da die Interpretation des KNSZPKT 201 durch die Uhr des Knotenrechners erfolgt, die Interpretation des Netzwerksendezeitpunkt NWSZPKT 202 jedoch durch die Uhr des TT-Sternkopplers erfolgt, muss die gegebene Präzision der Uhrensyn- chronisation zwischen Knotenrechner und TT-Sternkoppler bei der Planung des Knotenrechnersendezeitpunkts KNSZPKT 201 berücksichtigt werden, so dass selbst im Grenzfall der schlechtesten Synchronisation der Anfang der Nachricht rechtzeitig vor dem Netzwerksendezeitpunkt NWSZPKT 202 im Port des TT-Sternkopplers eingetroffen ist. Der zeitliche
Abstand zwischen KNSZPKT und NWSZPKT muss größer sein als die doppelte Präzision dieser Uhrensynchronisation [6] plus der Übertragungsdauer des ersten Bits der Nachricht und der Dauer einer eventuellen Vorverarbeitung der Nachricht im Port des TT- Sternkopplers. Im weiteren muss gewährleistet sein, dass der Rest der Nachricht im Port verfügbar wird bevor dieser Rest der Nachricht gesendet werden muss, damit ein einmal begonnener Sendevorgang nicht unterbrochen werden muss.
Wenn die Uhr des Knotenrechners mit der Uhr des TT-Sternkopplers nicht synchronisiert ist, so ist der KNSZPKT 201 beliebig. In diesem degenerierten Fall wird eine von einem Knotenrechner eintreffende Nachricht im Port des TT-Sternkopplers solange verzögert, bis der nächste periodische NWSZPKT 202 für diesen TT-Nachrichtentyp erreicht wird. Treffen während einer einzigen Nachrichtenperiode mehrere TT-Nachrichteninstanzen des gleichen TT-Nachrichtentyps ein, so wird eine Fehlermeldung an einen Diagnoserechner generiert und keine der TT-Nachrichten weiter gesendet, da offensichtlich ein Fehler aufgetreten ist.
Die erreichbare Präzision der Uhrensynchronisation zwischen den TT-Sternkopplern des TT- Netzwerks und einem Knotenrechner hängt wesentlich von der Art der Uhrensynchronisation im Knotenrechner ab, da angenommen wird, dass alle TT-Sternkoppler über eine entsprechende hardwareunterstützte Uhrensynchronisation von hoher Präzision verfügen. Wenn im Knotenrechner eine Uhrensynchronisation über Software realisiert wird, so kann es schwierig sein, eine Präzision von besser als 50 μsec zu realisieren. Verfügt der Knotenrechner jedoch über spezielle Synchronisationshardware, z.B. einer Uhrensynchronisationshardware entsprechend dem IEEE 1588 Standard [7], so kann eine wesentlich bessere Präzision erzielt werden. Die Erfindung unterstützt somit Endsysteme unterschiedlicher Qualität, die mit unterschiedlichen handelsüblichen Ethernetkontrollern ausgestattet sind, ohne die Nutzdateneffizienz der TT-Ethernetnachrichtenübertragung im TT-Netzwerk herabzusetzen.
Die Attribute einer TT-Nachricht, wie der KNSZPKT 201 und der NWSZPKT 202, sowie ein eventuell durch den Sternkoppler zu überprüfendes Prädikat einer Nachricht, müssen vor dem Senden der TT-Nachricht bekannt sein. Diese Attribute können entweder statisch von einem off-line Scheduler vor der Laufzeit festgelegt werden oder on-line von einem TT- Ethernet Service Knoten auf Anforderung eines Knotenrechners unmittelbar vor dem Senden der Nachricht dynamisch ermittelt werden. Ein Knotenrechner kann über Standard ET Ethernet Nachrichten einen TT-Ethernet Serviceknoten auffordern, eine neue TT-Nachricht dynamisch einzuplanen. Ein solcher TT-Ethernet Service Knoten kann, wie jeder andere Ethernet Knotenrechner, an den TT-Sternkoppler 101 angeschlossen werden. Beispielsweise kann in Fig. 1 der Knoten 113 ein solcher TT-Ethernet Serviceknoten sein. In einer anderen Ausprägung derselben Erfindung kann der TT-Ethernet Serviceknoten auch in den TT-
Sternkoppler integriert sein. Ein solcher TT-Ethernet Serviceknoten kann auch Zugang zu einer genauen externen Zeitbasis, z.B. über einen GPS Empfänger oder über eine Atomuhr, haben. Diese externe Zeit kann der TT-Ethernet Serviceknoten über Ethernet Nachrichten an alle TT-Sternkoppler und Knotenrechner im gegenständlichen TT-Netzwerk verteilen. Die Verteilung der Zeit kann entsprechend einem bestehenden Standard, z.B. dem IEEE Standard 1588 [5], erfolgen. Dieser Standard wird bereits durch die Hardware einiger Mikrorechner unterstützt. Wenn ein Knotenrechner einen solchen Synchronisationsstandard unterstützt, so kann aufgrund der erreichbaren guten Präzision der Uhr des Knotenrechners der zeitliche Abstand zwischen dem KNSZPKT 201 und dem NWSZPKT 202 klein gehalten werden und so die Latenz bei der Übertragung von Echtzeitinformationen reduziert werden. Wenn eine solche hardwaremäßige Unterstützung der Uhrensynchronisation im Knotenrechner nicht gegeben ist, muss ein längere Übertragungslatenz hingenommen werden.
Wenn der TT-Ethernet Serviceknoten die Netzwerksendezeitpunkte NWSZPKT 202 aller TT- Nachrichten a pήori an alle vom Nachrichtentransport betroffenen TT-Sternkoppler sendet, so können die TT-Sternkoppler schon rechtzeitig vor dem Eintreffen einer TT-Nachricht die für den Transport der TT-Nachricht zum NWSZPKT benötigten Übertragungskanäle von ET Nachrichten frei halten oder entsprechend [4] frei machen und so den Transport einer TT- Nachricht zum NWSZPKT mit minimaler Latenz auf den reservierten freien Leitungen ermöglichen. Eine solche minimale Nachrichtenlatenz, bei der die Verzögerung in einem Sternkoppler nur wenige Bits beträgt (das sind einem 100Mbit/sec Ethernet System nur kleine Bruchteile einer μsec), ist in Systemen von besonderer Bedeutung, die eine Vielzahl von TT-Sternkopplern beinhalten, beispielsweise wenn eine Bus- Verkabelung durch das Hintereinanderschalten von vielen TT-Sternkopplern unterstützt werden soll und die Gleichzeitigkeit des Eintreffens einer TT Nachricht bei mehreren Knotenrechnern von Bedeutung ist.
Um sicherzustellen, dass nach einem transienten Ausfall des TT-Sternkopplers die globale Zeit, alle NWSZPKTe der TT Nachrichten und alle für die Fehlererkennung benötigten Attribute der an einem Port erwarteten TT-Ethernet Nachrichten innerhalb einer vorab spezifizierten Wiederanlaufzeit in den TT-Sternkopplern und den intelligenten Ports 121, 122, 123 der TT-Sternkoppler wieder vorhanden sind, werden die globale Zeit und die TT- Nachrichtenattribute periodisch von einem oder mehreren Serviceknoten an die TT- Sternkoppler gesendet. Der TT-Sternkoppler 101 leitet die globale Zeit an die ihm direkt zugeordneten Knotenrechner 111, 112, 113 periodisch weiter, damit sich die Knotenrechner auf die globale Zeit synchronisieren können.
In einem verteilten Echtzeitsystem bildet jeder Knotenrechner 111, 112 und 113 und der Sternkoppler 101 eine Fault-Containment Unit (FCU), d.h., dass die unmittelbaren Folgen eines Fehlers (Software oder Hardware) nur innerhalb der FCU Auswirkungen zeigen. Mittelbar kann eine FCU über fehlerhafte Nachrichten (im Wert- oder Zeitbereich) das Kommunikationssystem und die anderen Knotenrechner negativ beeinflussen. Die fehlerhaften FCUs müssen daher isoliert werden. Wenn nun einer der Knotenrechner 111, 112, 113 fehlerhaft ist, so können im allgemeinen Fall keine Annahmen über das Verhalten des fehlerhaften Knotenrechners gemacht werden. Eine Fehlerisolation ist daher nur möglich, wenn zwei unabhängige FCUs vorhanden sein, eine FCU (z.B. der Knotenrechner 111) zeigt ein fehlerhaftes Verhalten, während eine unabhängige zweite FCU (z.B. der TT Sternkoppler 101) dieses fehlerhafte Verhalten erkennt und die Fehlerfortpflanzung verhindert. Entsprechend der vorliegenden Erfindung wird zwischen vertrauenswürdigen (trusted) und nicht vertrauenswürdigen Einheiten unterschieden. Es wird angenommen dass der Sternkoppler 101 und der TT- Ethernetserviceknoten vertrauenswürdig sind und die Knotenrechner 111,112, 113 im Allgemeinen nicht vertrauenswürdig sind. Der vertrauenswürdige Sternkoppler 101 verhindert, dass ein Fehler eines Knotenrechners 111, 112, 113, gleichgültig ob in der Hardware oder Software, ob accidental oder intentional (security Verletzung), Auswirkungen auf das Zeitverhalten der Übertragung von TT-Nachrichten der fehlerfreien Knotenrechner haben kann. Um zu verhindern, dass ein bösartiger (malicious) Sender falsche TT- Nachrichtenattribute an den TT Sternkoppler senden kann, werden diese TT- Nachrichtenattribute vom TT-Serviceknoten an den TT Sternkoppler kryptographisch verschlüsselt übertragen.
Wenn im intelligenten Port 121 eine weitere Vorverarbeitung der Nachricht vorgenommen wird, so ist die WCET (Worst-Case-Execution-Time) dieser Vorverarbeitung in der Planung des zeitlichen Abstands zwischen dem KNSZPKT 201 und dem NWSZPKT 202 einzuplanen. Eine solche Vorverarbeitung kann darin bestehen, dass der Inhalt der Nachricht im intelligenten Port 121 verschlüsselt wird oder dass ein Prädikat über den Inhalt der Nachricht überprüft wird, um die Wahrscheinlichkeit der Fehlerfortpflanzung durch einen Fehler im Wertebereich, verursacht durch den Knotenrechner 111, herabzusetzen. Weiters kann in der Planung der Nachricht ein erwartetes Empfangsfenster mit dem Anfangszeitpunkt 210 und dem Endzeitpunkt 211 vorgegeben werden, so dass ein Fehler im Zeitbereich des Knotenrechners 111 vom Port 121 des unabhängigen TT-Sternkopplers 101 erkannt werden kann. Wenn ein Fehler vom Port 121 erkannt wird, so wird der Port 121 eine ET-Diagnosenachricht an einen Diagnoserechner senden. Da der Knotenrechner 111 und der zugeordnete Port 121 in zwei unabhängigen Fault-Containment Regionen angeordnet sind, wird ausgeschlossen, dass eine einzige Fehlerursache einen Fehler verursacht und gleichzeitig die Fehlerkennung ausschaltet. Aus diesem Grund ist die Beobachtung des Verhaltens vom Knotenrechner 111
im. zugeordneten intelligenten Port 121 eine besonders wirkungsvolle Art der Fehlererkennung [3].
Der dem Knotenrechner zugeordnete intelligente Port, z.B. der Port 121 bezogen auf den Knotenrechner 111, kann eine eintreffende TT-Nachricht kryptographisch verschlüsseln, bevor sie in das Netzwerk gesandt wird. Entsprechend muss der Port 121 alle vom Netzwerk verschlüsselt eintreffenden Nachrichten entschlüsseln, ehe eine Nachricht an den Knotenrechner 111 übermittelt wird. Die Schlüsselverwaltung zur Verschlüsselung und Entschlüsselung der TT-Nachrichten erfolgt mit verschlüsselten ET Nachrichten.
Fig. 3 zeigt eine mögliche Struktur einer zeitgesteuerten (TT) Ethernet Nachricht. Im Ethernet Standard [5] sind die Felder 301 bis 305 und die Felder 310 bis 312 vorgegeben. In Übereinstimmung mit der IEEE Ethernet Standardverwaltung wurde festgelegt, dass alle proto- koll-spezifischen TT-Ethernet Nachrichten im Tag Type Feld 305 das Bitmuster 88dl enthalten, um so jede TT-Ethernet Nachricht weltweit eindeutig identifizieren zu können. Applikationsnachrichten können optional in zeitlicher Hinsicht auf TT-Nachrichten abgebildet und somit mit exakt bestimmten Zeitverhalten versehen werden. Derartige Nachrichten behalten das schon zuvor definierte Tag Type Feld bei. Li Fig. 3 ist beispielhaft ein zwei-Byte TT- Kontrollfeld 306 in einer möglichen, aber nicht der einzig möglichen Realisierung der Erfindung vorgesehen. Das erste Byte des Feldes 306 enthält Kontrollinformationen über die TT- Nachricht, z.B. ob die TT-Nachricht eine Synchronisationsnachricht ist. Durch ein weiteres Bit im TT-Kontrollfeld 306 wird unterschieden, ob die Nachricht eine periodische TT-Nachricht oder eine sporadische TT-Nachricht ist. Eine periodische TT-Nachricht wird in jeder diesem TT-Nachrichtentyp zugeordneten Periode gesendet. Eine sporadische TT-Nachricht wird nicht in jeder diesem Nachrichtentyp zugeordneten Periode gesendet. Während eine periodische TT-Nachricht vom. Empfängerknoten als Lebenszeichen des Senderknotens interpretierte werden kann dessen Ausbleiben einen transienten oder permanenten Senderausfall meldet, ist dies bei einer sporadischen TT-Nachricht nicht der Fall.
Das zweite Byte des Feldes 306 enthält die Länge der TT-Ethernet Nachricht, gemessen in Einheiten von 8 Bytes. Das Feld 307, die Period ID, legt die Position der aktuellen Periode in der globalen Zeit mit einem Horizont von sechzehn Bit fest. Der KNSZPKT 201, der durch die Uhr des Knotenrechners interpretiert wird, ist im Feld 307 enthalten. Der Netzwerksendezeitpunkt NWSZPKT 202, der durch die Uhr des TT-Sternkopplers interpretiert wird, ist im Feld 308 enthalten. Der NWSZPKT definiert auch eindeutig den TT- Ethernetnachrichtentyp, d.i. die Message ID. Wie schon erwähnt, müssen die Netzwerksendezeitpunkte NWSZPKT 202 aller TT-Nachrichten von einem Scheduler so eingeplant werden, dass es zu keiner Kollision von TT-Nachrichten im gegebenen TT-Netzwerk kom-
men kann. Hingegen ist es erlaubt, dass mehrere Knotenrechner zum gleichen KNSZPKT 201 ihre TT- Nachricht an den ihnen zugeordneten Ports der TT-Sternkopplers senden.
Abschließend noch einmal zusammen gefasst hat die vorliegende Erfindung zum Ziel, in einem verteilten Echtzeitcomputersystem, indem eine Anzahl von Knotenrechnern über einen oder mehreren Kommunikationskanäle mittels TT-ETHERNET Nachrichten kommunizieren, eine Verbesserung der Nutzdateneffizienz und der Sicherheit bei Verwendung von handelsüblichen ETHERNET Kontrollern zu realisieren. Um dieses Ziel zu erreichen wird zwischen dem Knotenrechnersendezeitpunkt (KNSZPKT) und dem Netzwerksendezeitpunkt (NWSZPKT) einer Nachricht unterschieden. Der KNSZPKT, interpretiert von der Uhr des sendenden Knotenrechners, muss so rechtzeitig vor dem NWSZPKT liegen, dass unter allen Umständen (d.h. auch wenn die Uhren von Knotenrechner und TT-Sternkoppler an den Grenzen des Präzisionsintervalls liegen) der Anfang der Nachricht zum NWSZPKT, interpretiert von der Uhr im TT-Sternkoppler, im TT-Sternkoppler eingetroffen ist. Es wird vorgeschlagen, die TT-Sternkoppler so zu modifizieren, dass eine von einem Knotenrechner eintreffende Nachricht in einem intelligenten Port des TT-Sternkopplers bis zum NWSZPKT verzögert wird, um sie dann präzise zum NWSZPKT in das TT-Netzwerk senden zu können.
Die oben beschriebene konkrete Realisierung der Erfindung stellt nur eine von vielen Realisierungsmöglichkeiten dieser Erfindung dar.
Zitierte Patente:
[1] US 5694542 issued on Dec. 12, 1989: A loosely coupled distributed Computer System with node synchronization for precision in real time.
[2] EP 0 658 257 vom 18.12.1996: Kommunikationskontrolleinheit und Verfahren zur Übermittlung von Nachrichten.
[3] EP 1 222542 vom 16.4.2003: Nachrichtenverteilereinheit mit integriertem Guardian.
[4] EP 1 512254 vom 10.5.2005: Zeitgesteuertes (Time-Triggered (TT)) Ethernet.
Sonstige Literatur:
[5] IEEE Ethernet Standard 802.3 , URL: http://standards.ieee.org
[6] Kopetz, H. (1997). Real-Time Systems, Design Principles Jbr Distributed Embedded Applications; ISBN: 0-7923-9894-7. Boston. Kluwer Academic Publishers.
[7] IEEE Standard 1588 zur Uhrensynchronisation, URL: http://standards.ieee.org