Beschreibung
Paketvermittlungsvorrichtung und lokales Kommunikationsnetz mit einer solchen Paketvermittlungsvorrichtung
Die Erfindung betrifft eine Paketvermittlungsvorrichtung und ein lokales Kommunikationsnetz mit einer solchen Paketvermittlungsvorrichtung .
Lokale Kommunikationsnetzwerke, sogenannte „local area net- works" (LANs), sind auf ein geografisches Gebiet begrenzt und setzen sich aus einem oder mehreren Servern und Arbeitsstationen, sogenannten Knoten, zusammensetzen, die über ein Kommunikationsleitungsnetz, z.B. ein Koaxial-, Glasfaser- oder Twisted-Pair-Kabel miteinander verbunden sind. Bei LANs sind verschiedene Netzwerktopologien, z. B. Bus-, Stern- oder Baumstrukturen möglich. LANs werden mit einem Netzwerk- Betriebssystem und einem Netzwerk-Protokoll betrieben.
Der zur Zeit am weitesten verbreitete Standard für ein LAN- Netzwerk-Protokoll ist das Ethernet. Mit dem Ethernet lassen sich Daten aktuell mit einer Geschwindigkeit bis zu 100 Mbits/sec (Mbps) übertragen. Im OSI-Schichtenmodell, dem internationalen Referenzmodell für Datenübertragung in Netzwer- ken, das aus einem Schichtenstapel aus sieben Schichten aufgebaut ist, wobei für jede Schicht eine Menge von Protokollen definiert ist, die jeweils der nächst höheren Schicht ihre Dienste zur Verfügung stellen, ist das Ethernet der zweiten Schicht, der sogenannten Leitungsschicht, zugeordnet. In die- ser Leitungsschicht werden die zu übermittelnden Daten im Paketen gebündelt, denen spezifische Informationen für das jeweilige Kommunikationsprotokoll hinzugefügt werden. Die Leitungsschicht ist im Netzwerk für den Transport der Datenpakete von Knoten zu Knoten und für die Fehlererkennung zustän- dig. Das Ethernet unterstützt dabei unterschiedlichste Kommunikationsprotokolle, z.B. das TCP/IP-Protokoll oder das IPX- Protokoll .
Beim Ethernet-Konzept ist die Leitungsschicht in zwei Ebenen unterteilt, wobei die erste Ebene den Daten einen Kopfabschnitt, einen sogenannten Header, hinzufügt, der Informatio- nen enthält, die für eine korrekte Datenübertragung vom Empfänger-Protokoll benötigt werden. In der zweiten Ebene des Ethernet-Protokolls werden dann die Datenpakete mithilfe eines zusätzlichen Headers und eines weiteren Endabschnitts, eines sogenannten Trailers, für den Transport der Datenpakete von Knoten zu Knoten eingekapselt. Mit solchen Ethernet-
Datenpaketen, sogenannten Ethernet-Telegrammen, lassen sich Daten mit eine Länge bis zu 1500 Bytes übertragen.
Das Ethernet legt weiterhin das Zugriffsverfahren fest, wie die einzelnen Knoten die physikalischen Verbindungswege des Netzwerkes nutzen und belegen dürfen. Das Ethernet arbeitet dabei nach dem sogenannten CSMA/CD (carrier sense multiple access/collision detect) -Zugriffsverfahren . Bei diesem Zugriffsverfahren wird vom sendewilligen Knoten vor dem Sen- den geprüft, ob der Übertragungsweg frei ist. Dann werden die Daten versandt. Da alle Knoten ihre Daten gleichzeitig verschicken können, kann es zu Kollisionen kommen. Von dem Knoten, der die Kollision bemerkt, wird dann der Sendevorgang unterbrochen. Um zu verhindern, dass zwei Knoten um eine ge- ringe Zeitspanne versetzt mit dem Senden beginnen, erzeugen alle sendenden Knoten ein sogenanntes JAM-Signal, damit alle am Übertragungsweg befindlichen Knoten die Bearbeitung des aktuellen Datenpaketes abbrechen und so den Sendevorgang nicht stören.
Das Ethernet-Protokoll wird vornehmlich bei Bürokommunikati- ons-Netzwerken eingesetzt. Aufgrund der Vorteile des Ether- net-Konzepts, bei der Nutzung von Standard-Hardware- und - Softwarekomponenten sowie der Möglichkeit, auch bei einfacher Vernetzungstechnologie hohe Datenübertragungsraten zu erreichen, besteht der Wunsch, die Ethernet-Netzwerkkommunikation auch in der industriellen Fertigung zum Datenaustausch und
zum Durchführen von Steuerungsaufgaben einsetzen zu können. Insbesondere die mangelhafte Echtzeit-Fähigkeit des Ethernet- Protokolls lässt bisher jedoch nur einen begrenzten Einsatz in der Automatisierungstechnik zu. Bei der Steuerung von Ma- schinen ist es nämlich erforderlich, dass eine zyklische Bearbeitung der Steuerungsaufgabe ohne zeitliche Schwankungen, d.h. mit nur geringen Abweichungen von der gewünschten Zykluszeit im Bereich weniger Mikrosekunden folgt, wobei mit einer vorhersehbaren Antwortzeit auf die Regelanforderung rea- giert wird. Das vom Ethernet verwendete CSMA/CD-Zugriffsverfahren garantiert solche festen Reaktionszeiten aber nicht. Bei sehr starker Netzwerkauslastung kann es aufgrund des verwendeten Zugriffsverfahrens nämlich passieren, dass Ethernet- Telegramme über einen gewissen Zeitraum nicht versandt werden können, so dass eine garantierte Antwortzeit auf eine Regelanforderung nicht gewährleistet ist.
Um in Ethernet-Netzwerken trotzdem eine gewisse Echtzeit erreichen zu können, werden solche Ethernet-Netzwerke oft in Sterntopologie unter Verwendung von einer Paketvermittlungsvorrichtung, eines sogenannten Switches, aufgebaut. Dabei weist jeder Knoten, im Weiteren auch als Teilnehmer bezeichnet, eine Punkt-zu-Punkt-Verbindung zu dem Switch des Netzwerkes auf. Eine solche Netzwerktopologie aus lauter Punkt- zu-Punkt-Verbindungen zwischen den Teilnehmer und dem zentrale Switch erfordert aber eine aufwändige Verkabelung und ist deshalb mit hohen Kosten verbunden.
Das Switch untersucht jedes auf dem Netzwerk durchlaufende Ethernet-Telegramm auf die Adresse des angesprochenen Teilnehmers und leitet dann das Ethernet-Telegramm an den adressierten Teilnehmer über die entsprechende Punkt-zu-Punkt- Verbindung weiter. Switches arbeiten dabei in der Regel so, dass sie mit der Zeit anhand der Adressen lernen, welche Teilnehmer sich an welcher Schnittstelle des Switches befindet. Anhand einer solchermaßen erzeugten dynamischen Adressentabelle im Switch wird beim Empfang eines Ethernet-
Telegramms dann entschieden, an welche Schnittstelle das E- thernet-Telegramm geschickt werden soll. Falls es aber im Switch für die Zieladresse des empfangenen Ethernet- Telegramms keinen Adresseintrag gibt oder das empfangene E- thernet-Telegramm ein Multicast- bzw. Broadcasttelegramm ist, wird das empfangene Ethernet-Telegramm über alle Schnittstellen versandt.
Bezüglich der Sendereihenfolge gilt bei den Switches in der Regel das FIFO-Prinzip, bei denen diejenigen Ethernet-
Telegramme, die zuerst empfangen wurden, auch zuerst wieder gesendet werden. Dies verhindert aber eine zuverlässige Echtzeitbearbeitung der Ethernet-Telegramme . Neuere Switches unterstützen deshalb auch das sogenannte VLAN-Tagging, mit dem einzelne Ethernet-Telegramm beim Senden priorisiert werden können, um so eine Echtzeitfähigkeit zu gewährleisten. Ferner sind auch Switches bekannt, die aufgrund von protokollspezifischen Kennungen Ethernet-Telegramme zu fest vorgebenen Zeitpunkten versenden, um so eine Echtzeitbearbeitung zu er- möglichen. Durch das Erfordernis von protokollspezifischen
Kennungen können solche Switches aber nur gemäß dem jeweiligen Protokoll erzeugten Ethernet-Telegramme verarbeiten. E- thernet-Telegramme, die mit anderen Ethernet-Protokolle erzeugt wurden, können dagegen nicht zeitgesteuert geschaltet werden, um eine Echtzeitbearbeitung zu gewährleisten.
Bei den bekannten Switches sind aber grundsätzlich eine Reihe von Szenarien denkbar, bei den ein Echtzeitverhalten, bei dem ein Ethernet-Telegramm innerhalb einer vorbestimmten Zeit zu- verlässig übertragen werden muss, nicht garantiert werden kann. Die bekannten Switches führen immer einen Adressenvergleich zur Weiterleitung von Ethernet-Telegrammen durch. Wenn es im Switch für die Zieladresse des empfangenen Ethernet- Telegramms keinen Adresseintrag gibt oder das empfangene E- thernet-Telegramm ein Multicast- bzw. Broadcasttelegramm ist, wird das empfangene Ethernet-Telegramm über alle Schnittstellen versandt. Die Schnittstellen sind dann für die maximale
Ethernetdatenlänge, bei einer Datenübertragungsrate von 100Mbits/sec also für 150 μsec blockiert, was eine Echtzeitverarbeitung mit kleiner Zykluszeiten, z.B. von 100 μsec unmöglich macht. Bei den zeitgesteuerten Switches muss in jeder Schnittstelle für Ethernet-Telegramme mit der vorgebenen protokollspezifischen Kennung die Zeitspanne der maximale Ethernetdatenlänge, bei einer Datenübertragungsrate von 100Mbits/sec also für 150 μsec, reserviert werden. Echtzeitanwendungen mit kleineren Zykluszeiten unter Verwendung be- liebiger Ethernet-Protokolle sind also auch hier nicht ausführbar .
Um ohne Verwendung von Switches auf einfache und kostengünstige Weise Echtzeit-Steuerungsaufgaben mithilfe von Ethernet- Telegrammen ausführen zu können, wird in der DE 103 04 637 vorgeschlagen, die für die Echtzeitanwendung vorgesehenen Teilnehmer an einen ringförmigen Übertragungsweg anzuschließen, wobei dieser ringförmige Übertragungsweg über einen Netzwerk-Koppler mit einem Netzwerk, auf dem Ethernet- Telegramme übertragen werden können, verbunden ist. Der Netzwerk-Koppler ist dabei so ausgelegt, dass ein über eine externe Schnittstelle des Netzwerk-Kopplers vom Netzwerk empfangenes Ethernet-Telegramm an eine interne Schnittstelle des Netzwerk-Kopplers weitergeleitet und auf dem ringförmigen Ü- bertragungsweg ausgegeben wird, wobei jeder an den ringförmigen Übertragungsweg angeschlossene Teilnehmer beim Durchlauf des Ethernet-Telegramms auf dem ringförmigen Übertragungsweg die für den jeweiligen Teilnehmer bestimmten Nutzdaten mit dem auf dem Übertragungsweg umlaufenden Ethernet-Telegramm austauscht.
Bei dieser Netzwerk-Auslegung erscheint der ringförmige Übertragungsweg mit dem Netzwerk-Koppler und den über den Netzwerk-Koppler an den Übertragungsweg angeschlossenen Teilneh- mern gegenüber dem Netzwerk als ein einzelner Ethernet-Teil- nehmer . Der Netzwerk-Koppler und die an den ringförmigen Übertragungsweg angeschlossenen Teilnehmer teilen sich eine
einzelne Ethernet-Anschaltung. Durch die Verarbeitung der E- thernet-Telegramme auf dem ringförmigen Übertragungsweg im Durchlauf durch die daran angeschlossenen Teilnehmer verringert sich die Reaktionszeit der einzelnen Teilnehmer wesent- lieh, so dass mit den umlaufenden Ethernet-Telegrammen Steuerungsaufgaben in Echtzeit ausgeführt werden können. Insbesondere ist es auch möglich, mit Standard-Ethernet-Telegrammen, die üblicherweise eine Datenlänge von mehreren 100 Bytes aufweisen, auch Teilnehmer einfach und kostengünstig anzusteu- ern, die nur wenige Bytes an Prozessdaten benötigen.
Eine Schwierigkeit bei der ringförmigen Netzwerkauslegung besteht jedoch dann, wenn sehr viele Teilnehmer angeschlossen werden, da dann Verzögerungen bei der Datenverarbeitung auf- treten können, die eine Echtzeitverarbeitung bei sehr kurzen Zykluszeiten verhindert. Beim Durchlauf durch die einzelnen Teilnehmer sowie bei der Weiterleitung zwischen den Teilnehmern treten nämlich Zeitverzögerungen in der Größenordnung von mehreren hundert Nanosekunden auf, die bei einem ringför- migen Zusammenschluss von mehr als 100 Teilnehmern Zykluszeiten bei der Echtzeitverarbeitung von 50 μsec schwierig machen. Um eine überlangen Strang zu vermeiden, wird in der DE 103 04 637 vorgeschlagen, mehrere kürze Stränge über einen herkömmlichen Adressen vergleichenden Switch mit einem Steue- rungsrechner zu verbinden, wobei in jedem Strang zusätzlich ein Filter vorgesehen ist, mit dem es ermöglicht wird, Ether- net-Telegramme herauszufiltern, die nicht für über den Strang angeschlossenen Teilnehmer bestimmt sind.
Aufgabe der Erfindung ist es eine Paketvermittlungseinrichtung und ein Kommunikationsnetzwerk bereitzustellen, mit dem sich auf einfache und kostengünstige Weise Echtzeitsteue- rungsaufgaben mit sehr kurzen Zykluszeiten ausführen lassen.
Diese Aufgabe wird durch eine Paketvermittlungseinrichtung gemäß Anspruch 1 und ein Kommunikationsnetzwerk gemäß An-
spruch 8 gelöst. Bevorzugte Weiterbildungen sind in den Abhängigen Ansprüchen angegeben.
Erfindungsgemäß weist die Paketvermittlungsvorrichtung für ein Kommunikationsnetzwerk eine Netzwerk-Schnittstelle zum Senden und Empfangen von Datenpaketen, mehrere Strang- Schnittstellen zum Senden und Empfangen von Datenpaketen an mehrere in Reihe an einen ringförmigen Übertragungsweg angeschlossene Teilnehmer und eine mit der Netzwerk-Schnittstelle und den mehreren Strang-Schnittstellen verbundene Vermittlungseinrichtung auf. Die Vermittlungseinrichtung weist eine Steuerungseinheit aufweist, die den Datendurchsatz steuert, wobei die Steuerungseinheit eine Schnittstellen- Zuordnungstabelle umfasst, in der festgelegt ist, dass die über die Netzwerk-Schnittstelle empfangenen Datenpakete über die Strang-Schnittstellen und die über die Strang- Schnittstellen empfangenen Datenpakete über die Netzwerk- Schnittstelle ausgegeben werden.
Diese Auslegung ermöglicht es, einfache und kostengünstige, ringförmige Teilnehmer-Netzwerke zu verwenden und gleichzeitig auch bei einer Vielzahl von Teilnehmern Echtzeitaufgaben mit kurzen Zykluszeiten auszuführen. Die Zwischenschaltung der Paketvermittlungseinrichtung sorgt dafür, dass keine ü- berlangen Stränge und damit Umlaufzeiten entstehen. Gleichzeitig wird jede Verzögerung und Blockierung der Schnittstellen in der Paketübermittlungsvorrichtung durch die feste Schnittstellen-Zuordnung bei der Datenübertragung, bei der vom Steuerungsrechner auf der Netzwerk-Schnittstelle empfan- gene Datenpakete zwingend an die Strang-Schnittstellen und damit die nachgeordneten Stränge weitergeleitet werden und auf den Strang-Schnittstellen empfangene Datenpakete auf die Netzwerk-Schnittstelle und damit den Steuerungsrechner rückgekoppelt werden, verhindert. Da die Durchlaufzeiten für die Ethernet-Telegramme in der Paketübermittlungsvorrichtung maximal verkürzt sind, wird die Echtzeitfähigkeit des Ethernet- Netzwerkes gewährleistet. Die Datenpakete werden adressen-
und protokollunabhängig automatisch weitergeleitet, wodurch keine Zeitverzögerung und Blockierungen auftreten.
Gemäß einer bevorzugten Ausführungsform sorgt die Paketver- mittlungseinrichtung dafür, dass von den Strang- Schnittstellen empfangene Datenpakete in einer vorgegebenen Prioritätsreihenfolge weitergeleitet werden. Durch die Prio- risierung von bestimmten Strang-Schnittstellen wird gewährleistet, dass Stränge mit Teilnehmern, die besonders zeitkri- tische Echtzeitaufgaben ausführen, in der Datenübertragung bevorzugt werden. Dabei besteht die Möglichkeit mehreren Strang-Schnittstellen auch gleiche Prioritäten zuzuweisen, wobei dann die Priorisierung der Telegramme anhand einer Adresseninformation der empfangenen Datenpakete ausgeführt wer- den kann.
Gemäß einer weiteren bevorzugten Ausführungsform der Erfindung kann die Vermittlungseinrichtung der Paketvermittlungsvorrichtung einen zeitgesteuerten Sendevorgang, insbesondere einen synchronen Sendevorgang der über die Strang- Schnittstellen zu versendenden Datenpakete durchführen. Hierdurch wird eine genaue Steuerung der Echtzeitverarbeitung durch die in den Strängen zusammengeschlossenen Teilnehmer ermöglicht. Gleichzeitig kann durch den zeitgesteuerten pa- rallelen Sendevorgang der Strang-Schnittstellen die Netzwerk- Schnittstelle mit einer höheren Datenübertragungsrate betrieben werden.
Die Erfindung wird anhand der beigefügten Zeichnungen näher erläutert. Es zeigen:
Figuren IA und IB einen Netzwerk-Koppler mit ringförmig an den Netzwerk-Koppler angeschlossenen Teilnehmern, die eine Verarbeitung eines Ethernet-Telegramms im Durchlauf ausführen, wobei Figur IA eine Ausführung mit Ringleitung und Figur IB eine Ausführung mit Zweikanal-Leitung wiedergibt;
Figur 2 ein erfindungsgemäßes Netzwerk mit einem Switch; und
Figur 3 ein schematische Darstellung eines erfindungsgemäßen Switches.
Mit lokalen Kommunikationsnetzen (LANs) lassen sich auf einfache Weise Daten und Ressourcen zwischen Arbeitsstationen, im Allgemeinen Computer oder Maschinen, im Weiteren auch Knoten oder Teilnehmer genannt, austauschen und gemeinsam nutzen. Das Ethernet-Konzept ist dabei der am weitesten verbreiterte Kommunikationsstandard im LAN.
Bei Ethernet-Netzwerken sind die Mehrzahl von Knoten über ein gemeinsames Übertragungsmedium miteinander verbunden, wobei eine Verkapselung der zu übermittelnden Daten in sogenannten Datenpaketen, im Weiteren auch als Ethernet-Telegramme bezeichnet, mit einem vorgegebenen Format vorgenommen wird.
Das Ethernet besteht aus drei Bereichen, nämlich dem Übertragungsmedium und den Netzwerk-Schnittstellen, d. h. der Hardware, der Menge von Protokollen, die den Zugriff auf das Ü- bertragungsmedium steuern, und der Ethernet-Paketform. Das Ethernet stellt dabei grundsätzlich ein Busnetz dar, wobei beliebige Netzwerktopologien, z.B. Stern-, Bus- oder Baumnetze verwendet werden können. Ethernet-Datenübertragung findet dabei üblicherweise mithilfe des CSMA/CD-Zugriffsverfah- rens statt, bei dem eine Datenübertragung nur durchgeführt wird, wenn das Netz ruhig ist. Darüber hinaus ist ein Kolli- sionsverhinderungsmechanismus vorgesehen. Das Ethernet-Daten- paket selbst kann dabei eine Datenlänge von bis zu 1500 Bytes aufweist, wobei die Daten mittels Header und Trailer, die eine Anfangskennung, die Ziel- und Quelladresse, den Datenpa- kettyp und den Fehlererkennungsmechanismus angeben, verkapselt sind.
Das Ethernet hat sich als Kommunikationsstandard für Netzwerksysteme vor allem in der Bürokommunikation durchgesetzt, da Standard-Hardware-Komponenten und -Software-Protokolle genutzt werden können und darüber hinaus hohe Datenübertra- gungsraten möglich sind. Aus diesem Grund ist es auch wünschenswert, den Ethernet-Standard in industrieller Umgebung bei der Datenübertragung, insbesondere von Steuerungsaufgaben nutzen zu können. Das wesentliche Problem besteht hierbei in der mangelnden Echtzeitfähigkeit des Ethernet-Standards, so dass Automatisierungsaufgaben mit Echtzeitanwendungen in der Regel von Ethernet-Kommunikationsnetzen getrennt in eigenständigen Steuerungsbaugruppen, sogenannten Feldbussystemen, durchgeführt werden.
Um den Ethernet-Standard und ein entsprechend ausgelegtes
Netzwerk auf einfache und kostengünstige Weise auch zur Ausführung von Automatisierungsaufgaben, insbesondere solche, bei denen die einzelnen, an der Steuerung beteiligten Teilnehmer, Prozessdaten von nur wenigen Bytes benötigen, verwen- den zu können, ist, wie in Figur IA gezeigt, ein Netzwerk- Koppler 1, im Weiteren auch als Ethernet-Koppler bezeichnet, vorgesehen, der eine externe Schnittstelle 11 zur Anbindung an ein Ethernet-Netzwerk aufweist. In der in Figur IA gezeigten Ausführungsform ist der Ethernet-Koppler 1 mit seiner ex- ternen Schnittstelle 11 dabei an das Ethernet-Netzwerk über ein Übertragungsmedium 2, das ein Koaxialkabel, ein Twisted- Pair-Kabel oder ein Glasfaserkabel sein kann, angeschlossen.
Die externe Schnittstelle 11 des Netzwerk-Kopplers 1 ist mit einer Empfangseinheit RX zum Empfang eines Ethernet-Tele- gramms vom Netzwerk und einer Sendeeinheit TX zum Senden eines Ethernet-Telegramms auf dem Netzwerk ausgestattet. Figur IA zeigt solch ein vom Ethernet-Koppler 1 empfangenes Ether- net-Telegramm ETI und ein vom Ethernet-Koppler 1 gesendetes Ethernet-Telegramm ET2. Jedes der beiden Ethernet-Telegramme ETI, ET2 setzt sich aus einem Header mit der Empfangskennung und der Ziel- und Quelladresse, einem Datenbereich sowie ei-
nem Trailer, der eine Paketlänge und einen Fehlererkennungsmechanismus angibt, zusammen. Der zwischen dem Header und dem Trailer vorgesehene Datenbereich enthält die für die Steuerungsaufgabe notwendigen Prozessdaten, die vorzugsweise ein gesamtes Prozessabbild wiedergeben. Diese Prozessdaten sind wiederum vorzugsweise in für die einzelnen Teilnehmer der Steuerungsaufgabe erforderlichen Datenblöcken, d. h. für Teilnehmer Gerät 1 „Daten Gerät 1" usw. gruppiert.
Der Ethernet-Koppler 1 ist weiter über eine interne Schnittstelle 12 an eine Reihe von Teilnehmern die als Gerät 1 bis n gekennzeichnet sind über einen ringförmigen Übertragungsweg 5 angeschlossen. Dieser ringförmige Übertragungsweg 5 schließt die Teilnehmer Gerät 1 bis n, zu einer Ringtopologie zusam- men, wobei als Dateneinkoppelstelle eine Sendeeinheit TX der internen Schnittstelle 12 des Ethernet-Kopplers 1 ist und als die Datenauskoppelstelle eine Empfangseinheit RX der internen Schnittstelle 12 des Ethernet-Kopplers 1 dient.
Die einzelnen Teilnehmer am Übertragungsweg 5 sind zu einer Kette zusammengeschlossen, wobei jeder Teilnehmer mit zwei Nachbarn, der erste und letzte Teilnehmer in der Kette dabei mit dem Ethernet-Koppler 1 verbunden sind. Die Datenübertragung erfolgt dabei in eine Richtung ausgehend vom Ethernet- Koppler 1 zum Teilnehmer Gerät 1 und von dort bis zum Teilnehmer Gerät n und dann zurück in den Ethernet-Koppler 1. Die Übertragungsrichtung ist in Fig. IA mit einem Pfeil angedeutet. Jeder Teilnehmer weist zum Empfang des umlaufenden E- thernet-Telegramms von dem vorherigen Teilnehmer eine Schnittstelle mit einer Empfangseinheit RX und zur Weitergabe an den nächstfolgenden Teilnehmer eine Schnittstelle mit einer Sendeeinheit TX auf.
Der Datenaustausch erfolgt dabei folgendermaßen: Das vom E- thernet-Netzwerk über das Übertragungsmedium 2 angelegte E- thernet-Telegramm ETI mit den Prozessdaten für die einzelnen Teilnehmer der Automatisierungsaufgabe wird durch die Emp-
fangseinheit RX der externen Schnittstelle 11, die das Netzwerk mit dem Ethernet-Koppler 1 verbindet, empfangen. Das empfangene Ethernet-Telegramm wird dann von der externen Schnittstelle 11 an die interne Schnittstelle 12 weitergege- ben, wobei die Sendeeinheit TX der internen Schnittstelle 12 das Ethernet-Telegramm ohne nennenswerte Verzögerung sofort auf den ringförmigen Übertragungsweg 5 ausgeht.
Jeder am ringförmigen Übertragungsweg 5 angeschlossene Teil- nehmer entnimmt dann die für ihn bestimmten Prozessdaten aus dem umlaufenden Ethernet-Telegramm (Pfeile in Fig. IA), d. h. der Teilnehmer Gerät 1 die „Daten Gerät 1" usw. und fügt seinerseits die sich aus der Prozessdurchführung ergebenden Prozessdaten wiederum an die entsprechende Stelle im Ethernet- Telegramm ein. Das so umlaufende Ethernet-Telegramm wird dann nach Durchlauf durch das letzte Teilnehmer Gerät n an die Empfangseinheit RX der internen Schnittstelle 12 des Ether- net-Kopplers 1 gesendet und von dort an die externe Schnittstelle 11 weitergeleitet, die das Ethernet-Telegramm ET2 mit der Sendeeinheit TX in das Übertragungsmedium 2 des Ethernet- Netzwerkes einspeist. Der beschriebene Datenaufbau der umlaufenden Ethernet-Telegramme ist dabei nur beispielhaft.
Die Ankopplung der Teilnehmer einer Automatisierungsaufgabe an das Ethernet-Netzwerk über einen Ethernet-Koppler, wobei die Teilnehmer über eine Ringstruktur zusammengeschlossen sind, hat den Vorteil, dass die an dem Ethernet-Koppler angeschlossenen Geräte vom Ethernet-Netzwerk als ein einzelner Standard-Ethernet-Teilnehmer angesehen werde. Durch die spe- zielle Ethernet-Anschaltung im Ethernet-Koppler wird das von diesem empfangene Ethernet-Telegramm ohne nennenswerte Verzögerung auf die Ringstruktur ausgegeben, so dass jeder Teilnehmer die an ihn gerichtete Daten im Ethernet-Telegramm während des Durchlaufs des Ethernet-Telegramms auf dem Übertra- gungsring entnehmen und seinerseits die entsprechenden Daten einfügen kann. Die Vorteile dieser Vorgehensweise sind, dass aufgrund der Verarbeitung des Ethernet-Telegramms im Durch-
lauf keine nennenswerten Verzögerungen bei der Datenverarbeitung entstehen und somit kurze Reaktionszeiten, wie sie für eine Echtzeitanwendung erforderlich sind, eingehalten werden können. Ein weiterer Vorteil ist, dass die Ethernet- Anschaltkosten pro Teilnehmer minimiert werden können, da alle angeschlossenen Teilnehmer mit dem Ethernet-Koppler die Ethernet-Anschaltung teilen und durch die Verarbeitung des Ethernet-Telegramms im Durchlauf keine leistungsfähigen Mik- rocontroller in den Geräten selbst notwendig sind.
Der ringförmige Übertragungsweg kann eine einfache und damit billige Übertragungsphysik mit auch geringer Reichweite haben. So kann für den Übertragungsweg beispielsweise ein Flachbandkabel, über das LVDS-Signale übertragen werden kön- nen, oder ein Lichtleiterkabel statt der aufwändigen Twisted- Pair-Kabel oder Glasfaserkabel eingesetzt werden. Falls sich die Übertragungsphysik des Ethernet-Netzwerkes von dem des ringförmigen Übertragungsweges unterscheidet, ist im Ethernet-Koppler 1 eine Verarbeitungseinrichtung 13, wie sie in Figur IB gezeigt ist, notwendig, um ein Ethernet-Telegramm von Übertragungsphysik des Netzwerkes auf die des ringförmigen Übertragungsweges 3 umzusetzen. Diese Verarbeitungseinheit 13 ist zwischen der externen Schnittstelle 11 und internen Schnittstelle 12 des Ethernet-Kopplers 1 angeordnet. Wei- terhin können von der Verarbeitungseinheit 13 ggfs. notwendigen Änderungen am Ethernet-Telegramm vorgenommen werden, um den Ethernet-Standard für auf dem Übertragungswege 5 modifizierten Ethernet-Telegramms zu garantieren, z.B. durch Vertauschung von Quell- und Zieladresse und Neuberechnung einer Ethernet-Checksumme .
Figur IB zeigt dabei eine weitere mögliche Ausführungsform des ringförmigen Übertragungsweges 3. Statt einem Einkanal- Übertragungsweges, wie in Figur IA gezeigt, ist in Fig. IB ein Zweikanal-Übertragungsweg vorgesehen. Die Übertragung findet dabei so statt, dass das vom Ethernet-Koppler 1 auf den Übertragungsweg 5 ausgegebene Ethernet-Telegramm mit den
Prozessdaten auf einem ersten Kanal 51 vom Teilnehmer Gerät 1 bis zum Teilnehmer Gerät n weitergegeben wird, wobei jeder Teilnehmer beim Durchlauf den gewünschten Datenaustausch vornimmt. Der letzte angeschlossene Teilnehmer Gerät n koppelt dann das verarbeitete Ethernet-Telegramm auf einen zweiten Kanal 52 zurück, wobei jeder zwischen dem Teilnehmer Gerät n und dem Ethernet-Koppler 1 zwischengeschaltete weitere Teilnehmer das Ethernet-Telegramm nur durchleitet. Diese Ausgestaltung ermöglicht es, den üblicherweise verwendeten VoIl- Duplex-Übertragungsweg des Ethernet-Netzwerkes auch für den ringförmigen Übertragungsweg zum Anschluss der Automatisierungsteilnehmer an den Ethernet-Koppler zu verwenden. Jeder Teilnehmer weist zur Weitergabe der Ethernet-Telegramme auf die Voll-Duplex-Leitung, vorzugsweise zwei Schnittstellen auf, die jeweils komplementär eine Sendeeinheit TX und eine
Empfangseinheit RX aufweisen, um auf dem ersten und dem zweiten Kanal senden bzw. empfangen zu können.
Bei der Netzwerkauslegung mit einem ringförmigen Übertra- gungsweg, bei dem der Ethernet-Koppler am Eingang als Ether- net-Anschaltung dient und die an den Ethernet-Koppler angeschlossenen Teilnehmer die Ethernet-Telegramme im Durchlauf verarbeiten, kann es jedoch bei einer zu hohen Anzahl von Teilnehmern zu ungewünschten Verzögerungen kommen, die die Echtzeitfähigkeit der Netzwerkauslegung beeinträchtigt. Jeder Teilnehmer benötigt nämlich eine gewisse Durchlaufzeit zur Verarbeitung der Telegramme, die insbesondere von der Leistungsfähigkeit der Verarbeitungseinheit im Teilnehmer abhängt und durchschnittlich ca. 200 nsec beträgt. Hinzu kommen noch Verzögerungszeiten bei der Übertragung der Ethernet- Telegramme von einem Teilnehmer auf den anderen, sodass bei einer Anzahl von 100 Teilnehmern am ringförmigen Übertragungsweg Zykluszeiten bei der Echtzeitbearbeitung von weniger als 50 μsec schwer zu gewährleisten sind.
Um den vorgeschlagenen, einfachen und kostengünstigen ringförmigen Übertragungsweg mit einem Ethernet-Koppler als E-
thernet-Anschaltung auch bei einer hohen Anzahl von Teilnehmern einsetzen zu können und gleichzeitig auch kleine Zykluszeiten unter 100 μsec zuverlässig zu garantieren, wird erfindungsgemäß vorgeschlagen, den ringförmigen Übertragungsweg bei einer hohen Anzahl von Teilnehmern in mehrere Stränge zu unterteilen und zusätzlich eine Paketvermittlungsvorrichtung, die im Weiteren als „Switch" bezeichnet, vorzusehen, die die einzelnen Stränge mit einem Steuerungsrechner zur Durchführung der Echtzeitsteuerungsaufgaben verbindet.
Figur 2 zeigt eine solche Ethernet-Netzwerkauslegung mit drei ringförmigen Übertragungssträngen 101, 102, 103, die jeweils entsprechend der in Figur IA und IB gezeigte Netzwerkauslegung aufgebaut sind mit einem Ethernet-Koppler als Ethernet- Anschaltung und ringförmig an diesen angeschlossene Teilnehmer. Der Ethernet-Koppler und die Teilnehmer sind dabei nur schematisch angedeutet, wobei vom Ethernet-Koppler jeweils die externe Schnittstelle 111, 112, 113 mit der Empfangseinheit Rx und der Sendeeinheit Tx gezeigt ist. Diese externen Schnittstellen 111, 112, 113 sind über separate Übertragungswege 21, 22, 23 des Übertragungsmediums 2 mit zugehörigen Strang-Schnittstellen 31, 32, 33 eines Switches 3 verbunden. Die Strang-Schnittstellen 31, 32, 33 des Switches 3 weisen jeweils eine Empfangeinheit Rx und eine Sendeeinheit Tx auf, wobei die jeweilige Sendeeinrichtung Tx der Strang- Schnittstelle des Switches 3 mit der Empfangseinheit Rx der externen Schnittstelle des ringförmigen Strangs verbunden ist. Die Empfangseinheit Rx der jeweiligen Strang- Schnittstelle des Switches 3 ist wiederum an die zugehörige Sendeeinheit Tx der externen Schnittstelle des zugeordneten ringförmigen Strangs angeschlossen.
Der Switch 3 weist außer den Strang-Schnittstellen 31, 32, 33 eine weitere Netzwerk-Schnittstelle 34 auf, die über einen separaten Übertragungsweg 24 des Übertragungsmediums 2 mit einem Steuerungsrechner 4, der die Echtzeitaufgaben verwaltet, verbunden ist. Der Steuerungsrechner 4 besitzt als Ge-
genstück dazu eine Netzwerk-Schnittstelle 41 mit einer Sendeeinheit Tx und einer Empfangseinheit Rx. Die Sendeeinheit Tx der Netzwerk-Schnittstelle 41 des Steuerungsrechners 4 ist dabei mit der Empfangseinheit Rx der Netzwerk-Schnittstelle 34 des Switches 3 verbunden. Die Empfangseinheit Rx der Netzwerk-Schnittstelle 41 des Steuerungsrechners 4 ist an die Empfangseinheit Tx der Netzwerk-Schnittstelle 34 des Switches 3 angeschlossen. Die in Figur 2 gezeigte Netzwerkauslegung ist dabei nur exemplarisch. Der Switch kann eine beliebige Anzahl von Strang-Schnittstellen und auch mehrere Netzwerk- Schnittstellen aufweisen. Auch ist es nicht zwingend erforderlich, dass alle Strang-Schnittstellen mit ringförmigen Strängen bzw. alle Netzwerk-Schnittstellen mit Steuerungsrechnern belegt sind. Die Übertragungsphysik auf den Übertra- gungswegen zwischen den Strang-Schnittstellen des Switches und den einzelnen Strängen und der Netzwerk-Schnittstelle des Switches und dem Steuerungsrechner kann sich dabei unterscheiden. Insbesondere kann der Übertragungsweg zwischen dem Steuerungsrechner und der Netzwerk-Schnittstelle des Switches für eine höhere Übertragungsgeschwindigkeit ausgelegt sein, als Übertragungswege zwischen den Strang-Schnittstellen des Switches und den nachgeordneten ringförmigen Strängen.
Figur 3 zeigt in schematischer Darstellung den Aufbau des Switches 3. Die Strang-Schnittstellen, 31, 32, 33 und die
Netzwerk-Schnittstelle 34 sind über ein internes Leitungsnetz an eine Vermittlungseinheit 35 angeschlossen. Figur 3 zeigt dabei schematisch durch Pfeile die jeweilige Datenübertragungsrichtung zwischen den Schnittstellen 31, 32, 33, 34 und der Vermittlungseinrichtung 35. Die Vermittlungseinrichtung 35 weist eine Steuerungseinheit 351 auf, das den Datendurchsatz durch den Switch 3 steuert. Die Steuerungseinheit 351 enthält eine Schnittstellen-Zuordnungstabelle 352, in der festgelegt ist, dass über die Netzwerk-Schnittstelle 34 emp- fangene Ethernet-Telegramme über die Strang-Schnittstellen 31, 32, 33 an die angeschlossenen ringförmigen Stränge 101, 102, 103 ausgegeben werden und dass über die Strang-
Schnittstellen 31, 32, 33 empfangene Ethernet-Telegramme über die Netzwerk-Schnittstelle 34 auf den Steuerungsrechner 4 rückgekoppelt werden.
Diese Auslegung des Switches ermöglicht es, dass die Ethernet-Telegramme ohne Verzögerung zwischen den Steuerungsrechner und den einzelnen, über die ringförmigen Übertragungswege angeschlossenen Teilnehmer übertragen werden, wodurch eine Echtzeitbearbeitung von Steuerungsaufgaben gewährleistet wird. Durch die direkte Zuordnung der Schnittstellen kann ohne Adressenprüfung und damit Zeitverzögerung eine Durchleitung der Ethernet-Telegramme durch den Switch gewährleistet werden, um die Echtzeitfähigkeit des Switches zu garantieren.
Die Steuerungseinheit 351 kann dabei weiter eine Prioritätstabelle 353 umfassen, die die Prioritätsreihenfolge bei der Weiterleitung der von den Strang-Schnittstellen 31, 32, 33 empfangenen Datenpakete festlegt. Die Prioritätstabelle 353 kann dabei so ausgelegt sein, dass, wenn mehrere Strang- Schnittstellen den gleichen Prioritätsrang aufweisen, anhand der Adresseninformation der über die einzelnen Strang- Schnittstellen empfangenen Ethernet-Telegramme entschieden wird, welches Telegramm priorisiert ist und zuerst an die Netzwerk-Schnittstelle 34 zur Ausgabe an den Steuerungsrech- ner 4 weitergeleitet wird. Alternativ kann jedoch ein fester Algorithmus vorgesehen sein, der bei gleichrangiger Priorität der Strang-Schnittstellen ohne Prüfung der Adresse festlegt, wessen Telegramme zuerst über die Netzwerk-Schnittstelle auf den Steuerungsrechner zurückzukoppeln ist.
Bei der Durchleitung der Ethernet-Telegramme geht der Switch 3 so vor, dass die Steuerungseinheit 351 laufend den Füllgrad der Sende- bzw. Empfangspuffer in der Netzwerk-Schnittstelle 34 bzw. in den Strang-Schnittstellen 31, 32, 33 prüft. Diese Abfrage ist in Figur 3 durch den Datenpfeil 361 gekennzeichnet. Die Steuerungseinheit prüft dabei die einzelnen Schnittstellen in der Reihenfolge ihrer Priorität, wie sie in der
Prioritätstabelle 353 festgelegt ist. Bevorzugt wird zuerst die Netzwerk-Schnittstelle 34 unterprüft, anschließend dann die Strang-Schnittstellen 31, 32, 33. Ist ein Empfangspuffer voll, bewirkt die Steuerungseinheit das die Vermittlungsein- richtung 35 im Switch 3 die Telegramme aus dem Empfangspuffer der entsprechenden Schnittstelle zu dem Sendepuffer der in der Zuordnungstabelle zur Ausgabe festgelegten Schnittstelle weitergeleitet werden. Die Zuordnung erfolgt dabei so, dass die im Empfangspuffer der Netzwerk-Schnittstelle 34 zwischen- gespeicherten Ethernet-Telegramme an die Sendepuffer der
Strang-Schnittstellen 31, 32, 33 weitergeleitet werden. Die in den Empfangspuffern der Strang-Schnittstellen 31, 32, 33 empfangenen Ethernet-Telegramme dagegen an den Sendepuffer der Netzwerk-Schnittstelle 34 übermittelt.
Die Prüfung der Empfangspuffer der Strang-Schnittstellen in der Prioritätstabelle 353 vorgesehenen Reihenfolge sorgt dafür, dass Ethernet-Telegramme von priorisierten Strängen zuerst über die Netzwerk-Schnittstelle 34 auf den Steuerungs- rechner 4 zurückgesendet werden. Es besteht dabei die Möglichkeit Strang-Schnittstellen auch gleich zu priorisieren . Falls dann die gleichpriorisierten Strang-Schnittstellen volle Empfangspuffer aufweisen, kann anhand der Adresseninformation der in den Puffern zwischengespeicherten Ethernet- Telegramme festgelegt werden, welche Telegramme zuerst weiterzuleiten sind. Bevor die Steuereinheit 351 der Vermittlungseinrichtung 35 im Switch 3 die Weiterleitung der Ethernet-Telegramme vom Empfangpuffer der einen Schnittstelle zum zugeordneten Sendepuffer der anderen Schnittstelle vornimmt, prüft die Steuereinheit 351, ob im Sendepuffer ausreichend Speicherplatz für die Datenaufnahme gegeben ist. Falls dies nicht der Fall ist, sorgt die Steuereinheit 351 dafür, dass der Sendevorgang eingeleitet wird, um den Empfangspuffer zu leeren und um so dann die zu übergehenden Ethernet-Telegramme aufnehmen zu können.
Durch die erfindungsgemäße Switchauslegung ist es möglich E- thernet-protokollunabhängig Ethernet-Telegramme ohne Verzögerung und Schnittstellenblockierung zwischen dem Steuerungsrechner und den in ringförmigen Strängen zusammengeschlosse- nen Teilnehmern auszutauschen, wodurch sich Echtzeitanwendungen mit extrem kurzen Zykluszeiten auch unter 10 μsec realisieren lassen. Die feste Zuordnung zwischen den Schnittstellen, bei der die über die Netzwerk-Schnittstelle empfangene Ethernet-Telegramme ohne Verzögerung zu den Strang- Schnittstellen übertragen werden und umgekehrt die über die Strang-Schnittstellen empfangene Ethernet-Telegramme ohne Verzögerung zur Netzwerk-Schnittstelle weitergeleitet werden, sorgt für maximal verkürzte Durchleitungszeiten ohne unnötige Schnittstellenblockierung. Zugleich besteht die Möglichkeit die einzelnen Strang-Schnittstellen direkt zu priorisieren, um dort empfangene Ethernet-Telegramme mit maximal verkürzten Zykluszeiten an den Steuerungsrechner zurückleiten zu können.
In der Steuerungseinheit 351 der Vermittlungseinrichtung 35 des Switches 3 besteht weiterhin die Möglichkeit einen zeitgesteuerten Sendevorgang der Schnittstellen durchzuführen. Dies ist insbesondere vorteilhaft wenn eine synchronisierte Echtzeitverarbeitung durch die Teilnehmer durchgeführt werden soll. In diesem Fall sorgt die Steuereinheit 351 dafür, dass die Sendepuffer der Strang-Schnittstellen 31, 32, 33, an die das über die Netzwerk-Schnittstelle 34 empfangene Ethernet- Telegramm weitergeleitet worden ist, gleichzeitig die zwischengespeicherten Telegramme an die nachgeordneten ringförmigen Stränge zur Verarbeitung im Durchlauf ausgeben. Hier- durch wird für eine synchrone Verarbeitung des Ethernet-
Telegramms in allen Strängen gesorgt. Die synchrone Datenausgabe kann zeitgesteuert über eine Systemuhr im Switch erfolgen .
Alternativ zu der in Figur 2 gezeigten Ausführungsform besteht auch die Möglichkeit, die Ethernet-Koppler der ringförmigen Stränge direkt in den Switch zu integrieren. Die
Strang-Schnittstelle im Switch ist dann als Ethernet-Koppler ausgelegt, wobei die Strang-Schnittstelle dann auch die interne Schnittstelle des Netzwerkkopplers bildet, an die die Teilnehmer ringförmig angeschlossen sind. Weiterhin kann die Vermittlungseinrichtung des Switches auch eine Einrichtung zum Umsetzen von Datenpaketen von der Übertragungsphysik des Übertragungsweges zum Steuerungsrechner zur Übertragungsphysik zu den ringförmigen Stränge und umgekehrt aufweisen. Der Übertragungsweg zwischen der Netzwerk-Schnittstelle des Swit- ches und dem Steuerungsrechner kann dabei eine wesentlich höhere Übertragungsgeschwindigkeit als der Übertragungsweg zwischen den Strang-Schnittstellen des Switches und den nachge- ordneten ringförmigen Strängen besitzen, da die Strang- Schnittstellen parallel zueinander betrieben werden und somit kein Geschwindigkeitsverlust bei der Datenübertragung auftritt.