Es lässt sich festhalten, dass CarRing II eine wesentlich effektivere Nutzung der Bandbreite aufweist, wogegen die Latenzzeiten bei FlexRay mit zunehmender Senderzahl besser werden, was an der geringeren Geschwindigkeit und dem zusätzlichen Aufwand für das Zweiphasen-Handshake-Protokoll von CarRing II liegt. Beide Protokolle gewährleisten dennoch ein stabiles Verhalten in Überlastsituationen.
In einem der nächsten Schritte wer-den CarRing-II-Netzwerk-Knoten in VHDL als FPGAs implementiert, um die Simulationsergebnisse zu verifizieren und den Teststand funktionsfähig zu machen. Dazu wird ein Kommunikationsring aufgebaut, der mit einer Datenrate von 1 Gbit/s arbeitet. Zur Vervollständigung der Protokollspezifikation werden außerdem Algorithmen für die Transportschicht und die Wegewahl entwickelt. Die Fertigstellung eines Prototyps ist für Ende 2007 vorgesehen.
[1] ITZ – Informationstechnisches Zentrum der TU Clausthal: www.itz.tu-clausthal.de
[2] Institut für Informatik der TU Clausthal – Abteilung „Technische Informatik und Rechnersysteme: www.in.tu-clausthal.de/abteilungen/ rechnersysteme
Marcel Wille
erlangte 2003 sein Diplom für Informatik an der TU Clausthal. Während des Studiums war er freiberuflicher Mitarbeiter der Firma C-Partner und hat dort Softwareprojekte im Bereich e-Commerce durchgeführt. Nach einem kurzen Aufenthalt bei der Firma Intershop in Jena kehrte er Ende 2003 an die TU Clausthal zurück und arbeitet als wissenschaftlicher Mitarbeiter in der Arbeitsgruppe von Prof. Richter am dortigen Institut für Informatik. Im Rahmen seiner Promotion er maßgeblich an der Entwicklung des CarRing-Netzwerks beteiligt.
marcel.wille@in.tu-clausthal.de
Prof. Dr.-Ing. Dr. rer. nat. habil. Harald Richter
erlangte sein Diplom für Elektrotechnik an der TU Stuttgart. Mit seiner Arbeit über „Multiprozessor mit dynamisch variabler Topologie“ promovierte er zum Dr.-Ing. an der TU München. Nach seiner Habilitation zum Dr. rer. nat. habil. in Technischer Informatik an der TU München über „Verbindungsnetzwerke“ arbeitete er als Privatdozent für Technische Informatik an der TU München und der Uni Augsburg; derzeit hat er die Professur „Technische Informatik und Rechnersysteme“ an der TU Clausthal inne.
richter@in.tu-clausthal.de
Bei ETA2I ist unter bestimmten Voraussetzungen eine Wiederverwendung der ungenutzten Transport Frames möglich. Wenn ein Knoten keine Daten senden will, kann sein Transport Frame unter Umständen von den nachfolgenden Knoten im Ring genutzt werden. Angenommen, ein beliebiger Knoten k besitzt einen Transport Frame mit der ID k. Nun kann der leere Transport Frame k für eine Datenübertragung zwischen zwei weiteren Knoten i und j eingesetzt werden, sofern sich diese beiden Knoten in dem Ring „vor“ Knoten k befinden. Solche Übertragungen werden mit „i-zu-j-Transfer“ bezeichnet (Bild 5). Knoten k wird von dieser zusätzlichen Übertragung nicht beeinträchtigt. Die Aussage, ob sich ein Knoten „vor“ einem anderen Knoten befindet, lässt sich nur schwer prüfen, da es sich wohlgemerkt um einen Ring handelt. Dennoch wird diese Aussage bei CarRing II mit Hilfe eines speziellen Algorithmus getestet, auf den hier nicht genauer eingegangen wird.
Durch eine solche Erweiterung kann also die Bandbreite effizienter genutzt werden. Dieser Vorteil lässt sich aber nur so lange aufrechterhalten, wie die Voraussetzungen für derartige Übertragungen tatsächlich erfüllt sind. Existiert kein i-zu-j-Transfer, geht die Bandbreite weiterhin verloren. An dieser Stelle greift die zweite Erweiterung: Bei OTA2I (Open Time Slot Access with Acknowledge Insertion) ist es den Knoten nun auch gestattet, ihre eigenen Transport Frames für die Verwendung durch andere Knoten freizugeben. Die Freigabe kann nur durch den Eigentümer des Transport Frames erfolgen, wenn dessen Sendepuffer leer ist. Ohne weitere Voraussetzungen können dann alle Knoten im Ring diesen Frame für einen Datentransfer nutzen. Der Eigentümer hebt die Freigabe wieder auf, sobald sich Daten in seinem Sendepuffer befinden. Damit signalisiert er den anderen Knoten, dass dieser Frame im nächsten TDMA-Zyklus nur von ihm verwendet werden darf. Damit bleibt die Echtzeit-Fähigkeit erhalten.
Ungenutzte Transport Frames können jetzt mehrfach innerhalb eines TDMA-Zyklus verwendet werden. Es ist sogar denkbar, dass ein einzelner Sender die gesamte Ringbandbreite für sich beansprucht. Mit dieser Erweiterung kann der Ring über feine Zwischenschritte in einem komplett synchronen Modus bis hin zu einem ausschließlich asynchronen Modus betrieben werden.
Einfache und zuverlässige Kommunikation
Bei CarRing II ersetzt ein Zweiphasen-Handshake-Protokoll die herkömmlichen Sende- und Empfangsoperationen. Daten werden in Form von Nachrichten übertragen, es gibt keine Datenpaket-Verluste, und die Reihenfolge der Datenpakete kann garantiert werden. Ferner unterstützt das Netzwerk-Protokoll „Multicast“ und „Broadcast“ sowie die Segmentierung sehr langer Nachrichten. Grundsätzlich wird zwischen einem Sender und Empfänger eine „Sitzung“ (Session) aufgebaut. Innerhalb dieser Sitzung können bis zu 16 Ende-zu-Ende-Verbindungen auf Basis des Zweiphasen-Handshakes aufgebaut werden. Die Verbindungen arbeiten parallel und unabhängig voneinander.
Bei der Kommunikation innerhalb einer einzelnen Verbindung wiederum werden die Daten sequentiell, unter Einhaltung ihrer logischen Reihenfolge, in einer Sequenz von Datenpaketen übertragen. Jede Kommunikation ist zeitlich in die beiden Phasen „Request“ und „Response“ unterteilt, wobei jede Phase in einem separaten Datenpaket übermittelt wird. Die Request-Phase stellt eine Art Anfrage dar, während in der Response-Phase die Antwort auf diese Anfrage übermittelt wird. Das Response-Datenpaket stellt außerdem eine implizite Bestätigung dar. Ein Vorteil der parallelen Verbindungen ist die effiziente Nutzung der Bandbreite. Es entsteht kein Verlust, während der Knoten auf ein Response-Datenpaket wartet, weil sich verschiedene Phasen mehrerer Verbindungen den Ring in einer Art Zeitmultiplex teilen.
Simulationsergebnisse
Die folgenden Diagramme zeigen einen Vergleich der Leistungsdaten von CarRing II und FlexRay unter normalen Bedingungen und in Überlastsituationen. Die Vergleiche beschränken sich auf Durchsatz und Latenz. Zur Simulation von FlexRay wurde eine am Institut entwickelte Software auf Basis des NS-2-Simulators und einer Spezifikation von FlexRay in der Version 2.0 verwendet. Die Auswertung bei CarRing II basiert auf den Ergebnissen der speziell für ringbasierte Netze entworfenen Simulationssoftware „RingSim“, die im Rahmen von „Steer by Wire“ weiterentwickelt wurde.
RingSim erlaubt die Simulation einzelner Ringe bis hin zu komplexen Ringsystemen bei einer Vielzahl justierbarer Parameter. Für alle Simulationen beträgt die Länge der Nutzdaten 64 byte, die Laufzeit ist auf 32 ms begrenzt, wobei das System nach 8 ms einen eingeschwungenen Zustand erreicht hat. Insgesamt stehen jeweils sechs Knoten zur Verfügung, die bei FlexRay über einen herkömmlichen Bus und bei CarRing II über einen Ring verbunden sind. Zum besseren Vergleich mit FlexRay wird CarRing II nicht wie vorgesehen mit mindestens 200 Mbit/s, sondern lediglich mit 10 Mbit/s betrieben, was sich erheblich auf die Latenzzeiten auswirkt. Die Datenraten der Sender werden schrittweise von 0 auf 10 Mbit/s erhöht. CarRing II verwendet hier das Medienzugangsverfahren EOTA2I.