Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
METHOD AND APPARATUS FOR TRANSMITTING A DATA PACKET IN A COMMUNICATION NETWORK IN THE EVENT OF BUFFER OVERFLOW
Document Type and Number:
WIPO Patent Application WO/2014/173438
Kind Code:
A1
Abstract:
In standard communication networks, data packets are transmitted from network node to network node. In the process, it is accepted that packets are lost during transport and need to be retransmitted. The method and the apparatus specify a strategy for how to deal with the case in which packets would need to be rejected at a network node on account of a lack of available memory. The essential inventive concept is that of not rejecting the data packet in question but rather of transmitting it back to the sending network element, and in this way effectively buffer-storing it in the network.

Inventors:
KERSCHBAUM SVEN (DE)
VOLKMANN FRANK (DE)
Application Number:
PCT/EP2013/058441
Publication Date:
October 30, 2014
Filing Date:
April 24, 2013
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
SIEMENS AG (DE)
International Classes:
H04L12/801; H04L12/803
Foreign References:
US20050276274A12005-12-15
Other References:
DOBOSIEWICZ W ET AL: "New contention control mechanisms for FDDI", LOCAL COMPUTER NETWORKS, 1993., PROCEEDINGS., 18TH CONFERENCE ON MINNEAPOLIS, MN, USA 19-22 SEPT. 1993, LOS ALAMITOS, CA, USA,IEEE COMPUT. SOC, 19 September 1993 (1993-09-19), pages 167 - 174, XP010224382, ISBN: 978-0-8186-4510-5, DOI: 10.1109/LCN.1993.591211
Download PDF:
Claims:
Patentansprüche

Verfahren zum Übertragen eines Datenpakets (PI, P2, P3) in einem Kommunikationsnetz von einem Sender (EG1, EG2, EG3) zu einem Empfänger (EG4),

wobei das Kommunikationsnetz aus einzelnen voneinander unabhängigen Netzelementen (SW1, SW2, SW3, SW4) besteht und zumindest einige der Netzelemente zur Zwischenspeicherung der Datenpaketen einen Daten-Puffer (BUF) haben, und das Datenpaket (PI, P2, P3) von dem Netzelement (SW1, SW2, SW3) nach Empfang weiter leitbar oder in dem Daten-Puffer speicherbar ist, und

zumindest ein Datenpaket (P3) nicht zwischengespeichert werden kann, weil in dem Daten-Puffer (BUF) kein ausreichender Speicherplatz mehr vorhanden ist,

dadurch gekennzeichnet, dass

das empfangene Datenpaket von dem empfangenden Netzelement (SW1) zurück an das sendende Netzelement (SW2) gesendet wird .

Verfahren nach Patentanspruch 1, dadurch gekennzeichnet, dass

nachdem ein erstes empfangene Datenpaket (P3) von dem emp¬ fangenden Netzelement (SW1) an das sendende Netzelement (SW2) zurück gesendet wurde, jedes weitere empfangene Da¬ tenpaket (PI) an den jeweiligen Sender (SW4) zurück gesendet wird, so lange bis das erste empfangene Datenpaket er¬ folgreich an das nächste Netzelement (EG4) übermittelt werden konnte.

Verfahren nach Patentanspruch 1 oder 2, dadurch gekennzeichnet, dass

eine Überwachung der Übermittlungsversuche des Datenpa¬ kets (P3) erfolgt, indem überwacht wird, wie viel Zeit und/oder wie viele Zustellversuche benötigt werden, um das erste Datenpaket (P3) an das nächste Netzelement (EG4) weiter zu leiten. Verfahren nach Patentanspruch 3, dadurch gekennzeichnet, dass

die Überwachung ergibt, dass die Übermittlung des Datenpakets (P3) zu viel Zeit und/oder zu viele Zustellversu¬ che benötigt, wobei

das Datenpaket (P3) gelöscht wird und

eine Fehlermeldung erzeugt wird.

Verfahren nach einem der vorherigen Patentansprüche, dadurch gekennzeichnet, dass

das Kommunikationsnetz gemäß dem IEEE 802 Ethernet Standard arbeitet.

Netzelement (SW1, SW2, SW3, SW4) zur Übertragung von Datenpaketen (PI, P2, P3) in einem Kommunikationsnetz von einem Sender (EG1, EG2, EG3) zu einem Empfänger (EG4), mit Empfangsmitteln (EM) , Sendemitteln (SM) und mit einem Daten-Puffer (BUF) ,

wobei ein von einem benachbarten Netzelement ( SW2 ) mittels der Empfangsmittel empfangenes Datenpaket (PI, P2, P3) nach Empfang nicht in dem Daten-Puffer (BUF) gespeichert werden kann

dadurch gekennzeichnet, dass

die Sendemittel (SM) des empfangenden Netzelements (SW1) das empfangene Datenpaket (P3) zurück an das sendende Netzelement (SW2, SW4) senden.

Netzelement nach Patentanspruch 6, dadurch gekennzeichnet, dass

die Sendemittel jedes weitere empfangene Datenpaket (PI) an den jeweiligen Sender (SW4) zurück senden, nachdem ein erstes empfangene Datenpaket (P3) von dem empfangenden Netzelement (SW1) an das sendende Netzelement (SW2) zurück gesendet wurde, so lange bis das erste empfangene Datenpa¬ ket erfolgreich an das nächste Netzelement (EG4) übermit¬ telt werden konnte.

8. Netzelement nach Patentanspruch 6 oder 7, dadurch gekennzeichnet, dass

Überwachungsmittel die Übermittlungsversuche des Datenpa¬ kets (P3) überwachen, durch Messung wie viel Zeit und/oder wie viele Zustellversuche benötigt werden, um das erste Datenpaket (P3) an das nächste Netzelement (EG4) weiter zu leiten .

9. Netzelement nach Patentanspruch 6 oder 7, dadurch gekennzeichnet, dass

das Datenpaket (P3) gelöscht wird (DEL) wenn die Überwa¬ chungsmittel feststellen, dass die Übermittlung des Da¬ tenpakets (P3) zu viel Zeit und/oder zu viele Zustellver¬ suche benötigt und eine Fehlermeldung erzeugt wird.

10. Netzelement nach einem der Patentansprüche 6 bis 9, da¬ durch gekennzeichnet, dass

es gemäß dem IEEE 802 Ethernet Standard arbeitet.

Description:
Beschreibung

Verfahren und Vorrichtung zum Übertragen eines Datenpakets in einem Kommunikationsnetz bei Pufferüberlauf

Die Verwendung von Kommunikationsnetzen ist inzwischen in vielen Anwendungsgebieten üblich. Neben der klassischen Audio- und Video- Kommunikation zwischen Menschen ist ein weiterer wichtiger Anwendungsfall der Austausch von Daten zwi- sehen Maschinen oder Mensch und Maschine.

Die Paketvermittlung ist eines der häufig angewendeten Verfahren der Datenübertragung in Rechnernetzen. Längere Nachrichten werden dazu in einzelne Datenpakete aufgeteilt und entweder verbindungslos oder verbindungsorientiert übermit ¬ telt .

Bei der Paketvermittlung durchqueren die Datenpakete als unabhängige und eigenständige Einheiten das Kommunikationsnetz und können in den (Vermittlungs- ) Netzelementen zwischenge- speichert werden. Unter einem Netzelement versteht man dabei jedes Gerät welches Teil des Kommunikationsnetzes ist und das zwei oder mehr Übertragungswege eines Telekommunikationsnet ¬ zes verbindet, beispielsweise ein Switch, eine Bridge, Repea- ter, Hub, Router oder dergleichen.

Das Vorgehen hat den wesentlichen Vorteil, dass die Übertra ¬ gungsgeschwindigkeit zwischen einzelnen Teilstrecken keine Begrenzung mehr darstellt. Jedes zu passierende Netzelement empfängt das Datenpaket und leitet es an seine Ausgangs- schnittsteile (des Netzelements) , die aber Ziel vieler Sen ¬ dungen sein kann, so dass die Neigung zu Überlastsituationen entsteht. Das Ganze lässt sich also darstellen als ein Netz ¬ werk von Warteschlangen. Die Existenz der Warteschlangen erzeugt einerseits Verzögerungen in der Paketzustellung oder Paketverluste, die Wiederholungen und damit eine weitere Be ¬ lastung des Übertragungsweges zur Folge haben. Für Sender und Empfänger ist dieser Ablauf intransparent, d. h. sie benöti ¬ gen und erhalten keinerlei Informationen über den Übertra- gungsweg. Im Regelfall können diese Informationen auch nicht erlangt werden, da sich die Übertragungswege auch dynamisch ändern können.

Stand der Technik

Netzelemente, die Datenpakete weiterleiten, können durch ein zu großes Paketaufkommen überflutet werden. Dies tritt übli- cherweise immer dann auf, wenn an einem Netzelement mehr Da ¬ tenpakete ankommen als dieser verarbeiten kann.

Die Figur 1 illustriert beispielhaft was in einem Netzelement passiert :

Dargestellt ist ein kleines Kommunikationsnetz mit drei Sen ¬ dern (EG1, EG2, EG3) und einem Empfänger (EG4), sowie mehreren vermittelnden Netzelementen (SW1, SW2, SW3) . Alle ankommenden Datenpakete werden im Netzelement (SW1) bis zur Verar ¬ beitung (Weiterleitung an das nächste Netzelement) in einem Daten-Puffer (BUF) abgelegt. Die Endgeräte EG1, EG2 und EG3 senden in dem in der Figur dargestellten Beispiel alle Daten an das Endgerät EG4 (z. B. Sensoren schicken Messwerte an einen verarbeitenden PLC) . Wenn nun mehr Pakete beim Netzelement ankommen als dieser direkt verarbeiten kann, müssen die- se Datenpakete im Daten-Puffer (BUF) zwischen gespeichert werden. Da der Daten-Puffer nur eine begrenzte Speicherkapa ¬ zität hat, kann es zum Pufferüberlauf kommen, das heißt, der Daten-Puffer ist irgendwann voll und kann keine weiteren Datenpakete mehr aufnehmen.

Wenn der Daten-Puffer komplett belegt ist und nun weitere Da ¬ tenpakete ankommen so würden diese vom empfangenden Netzelement nicht verarbeitet werden können, d. h. das Netzelement würde diese Datenpakete verwerfen (also löschen) . Es kommt somit zum Verlust dieser Datenpakete (DEL) . Dieser Paketverlust wird durch den Sender des Pakets entweder auf Protokoll ¬ ebene (z. B. durch eine automatisch veranlasste Sendewiederholung basierend auf einer eindeutigen Paketnummer, bei- spielsweise durch das TCP-Protokoll) oder auf Applikations ¬ ebene z. B. durch Neuübertragung behandelt. Dies führt dazu, dass der Sender das Paket nach einer gewissen Zeit erneut an den Empfänger überträgt und somit zu einer noch höheren Netz- last.

Es ist Aufgabe der Erfindung, ein Verfahren anzugeben welches eine vorteilhafte Strategie beim Weiterleiten von Datenpake ¬ ten benutzt. Weiterhin ist es Aufgabe der Erfindung, eine Vorrichtung zur Durchführung des Verfahrens anzugeben.

Darstellung der Erfindung Die Aufgabe wird erfindungsgemäß durch ein Verfahren mit den Merkmalen des Patentanspruchs 1 gelöst.

Das erfindungsgemäße Verfahren zum Übertragen eines Datenpa ¬ kets in einem Kommunikationsnetz, das aus einzelnen voneinan- der unabhängigen Netzelementen besteht, von denen zumindest einige zur Zwischenspeicherung der Datenpaketen einen Daten- Puffer besitzen, von einem Sender zu einem Empfänger, wobei das Datenpaket von dem Netzelement (Switch) nach Empfang wei ¬ ter leitbar oder in dem Daten-Puffer speicherbar ist.

Wenn zumindest ein Datenpaket nicht zwischengespeichert wer ¬ den kann, weil in dem Daten-Puffer kein ausreichender Speicherplatz mehr vorhanden ist, wird das empfangene Datenpaket von dem empfangenden Netzelement erfindungsgemäß zurück an das sendende Netzelement gesendet.

Die Aufgabe wird weiterhin durch eine Vorrichtung mit den Merkmalen des Patentanspruchs 6 gelöst.

Das erfindungsgemäße Netzelement zur Übertragung von Datenpa- keten in einem Kommunikationsnetz von einem Sender zu einem Empfänger umfasst Empfangsmittel, Sendemittel und einen Da ¬ ten-Puffer, wobei ein von einem benachbarten Netzelement mittels der Empfangsmitteln empfangenes Datenpaket nach Empfang nicht in dem Daten-Puffer gespeichert werden kann und wobei die Sendemittel des empfangenden Netzelements das empfangene Datenpaket zurück an das sendende Netzelement senden.

Weitere Ausführungsbeispiele sind in den Unteransprüchen an ¬ gegeben .

In einer vorteilhaften Ausgestaltung wird jedes weitere emp- fangene Datenpaket an den jeweiligen Sender zurück gesendet, nachdem ein erstes empfangenes Datenpaket von dem empfangen ¬ den Netzelement an das sendende Netzelement zurück gesendet wurde. Dies wird solange durchgeführt bis das erste empfange ¬ ne Datenpaket erfolgreich an das nächste Netzelement übermit- telt werden konnte.

Es ist weiterhin vorteilhaft, eine Überwachung der Übermitt ¬ lungsversuche des Datenpakets durchzuführen, indem gemessen wird, wie viel Zeit und/oder wie viele Zustellversuche benö- tigt werden, um das erste Datenpaket an das nächste Netzele ¬ ment weiter zu leiten.

Wenn die Überwachung ergibt, dass die Übermittlung des Datenpakets (P3) zu viel Zeit und/oder zu viele Zustellversuche benötigt, kann in einer weiteren Ausführungsform der Erfindung das erste Datenpaket gelöscht werden und so eine End-to- End Übertragung mittels dem normalen Datenübertragungsproto ¬ koll angeregt werden. Das Verfahren und die Vorrichtung arbeiten dabei in einer weiteren Ausführungsform gemäß dem IEEE 802 Ethernet Standard .

Bisher ist es so, dass Vermittlungs-Netzelemente bei voller Pufferauslastung alle weiteren ankommenden Datenpakete verwerfen. Es wird somit nicht die bereits für das Paket er ¬ brachte Kommunikationsleistung berücksichtigt. Das Problem betrifft jedes Netzelement, das Pakete in einem Netzwerk weiterleitet, wie z. B. einen Switch oder Router. Das Problem betrifft alle Arten von Ethernet-Netzwerken :

drahtgebundene und drahtlose Netzwerke sowie Office- und in- dustrielle Netzwerke.

Ein Problem liegt nun darin, dass mit dem Verwerfen von Paketen in Netzknoten auch bereits erbrachte Kommunikationsleis ¬ tungen z.B. für das Weiterleiten durch vorherige Netzwerkge- rate verworfen werden. Unter Kommunikationsleistung ist dabei der Aufwand zu verstehen, der bereits durch den Transport des Datenpakets im Netz und über die Netzknoten aufgewendet wer ¬ den musste bis zu dem aktuellen Zeitpunkt. Das Verwerfen eines Pakets führt somit automatisch dazu, dass diese gesamte bereits erbrachte Kommunikationsleistung durch eine Wiederholung der Paketübertragung erneut durch das Netzwerk erbracht werden muss. Es gilt also: je mehr Kommunikati ¬ onsleistung bereits in ein Paket durch das Netzwerk (genauer gesagt: alle Netzknoten im Netzwerk, die dieses Paket bereits weitergeleitet haben) „investiert" wurde, desto „wertvoller" ist das Paket für das Netzwerk oder anders gesagt, desto wichtiger ist es für das Netzwerk, dass das Paket an das Ziel ohne erneute Übertragung des Paketes auf Grund von Paketver- lust durch Pufferüberlauf transportiert wird.

Die Idee ist es nun, das letzte empfangene Datenpaket (das Paket, das im Stand der Technik verworfen wird) an den Sender zurück zu senden. Unter dem Begriff Sender versteht man dabei den unmittelbaren Vorgänger auf dem Transportweg des Paketes, also nicht zwingend den tatsächlichen ursprünglichen Sender des Datenpakets. Damit wird die Anzahl der im Netzwerk wegen Pufferüberlauf zu verwerfenden Datenpakete auf ein Minimum reduziert .

Dieses Vorgehen führt dazu, dass der Vorgänger dieses Daten ¬ paket wieder an den Switch übermittelt, oder gegebenenfalls auch einen anderen Weg durch das Kommunikationsnetz sucht und das Datenpaket an ein anderes Netzelement übermittelt, wel ¬ ches nicht überlastet ist. Durch die dadurch gewonnene Zeit kann das Paket mit großer Wahrscheinlichkeit beim nächsten Versuch erfolgreich zugestellt werden. Das Datenpaket wird sozusagen zwischen den Teilnehmern "on the road" zwischengespeichert .

Werden zeitgleich mehrere Pakete von unterschiedlichen Sendern empfangen, so führt dieses Vorgehen zu einer Art von au- tomatischen „Round-Robin" Verfahren, so dass ein Verhungern oder endloses Kreisen von Paketen sehr unwahrscheinlich wird. Ist ein Paket an einen Vorgänger zurückgesendet worden, so werden in einer vorteilhaften Ausführungsform alle neuen Pakete von anderen Vorgängern an diese zurückgesendet bis das erste Datenpaket des ersten Vorgängers an sein Ziel erfolg ¬ reich weitergeleitet werden konnte. Dann ist das Paket des nächsten Vorgängers zur Übermittlung dran, usw.

Löst sich das Überlastproblem für längere Zeit nicht, so wird in einer weiteren Ausführungsform auf ein Verfahren nach dem Stand der Technik gewechselt, um damit eine Entlastung des überlasteten Ports herbeizuführen. Dies sollte von einem managebaren Switch als SNMPTrap gemeldet werden, da dies auf eine grundlegende Fehlstrukturierung des Netzwerkes hindeuten kann.

Durch das erfindungsgemäße Verfahren ergeben sich folgende Vorteile :

Es wird keine bereits erbrachte Kommunikationsleistung ver- worfen.

Eine erhöhte Kommunikationslast entsteht nur zwischen dem Switch mit dem überlasteten Ausgangsport und seinem Vorgänger .

Das Verfahren kann auch nur auf einzelnen Netzelementen

(Switches) implementiert werden, es muss nicht bei den Vor ¬ gänger-Netzelementen bekannt und propagiert sein. Jedes Netz- element kann für sich nach Verfahren gemäß Stand der Technik reagieren. Dies kann beispielsweise ein Fremdgerät sein, das keine Kenntnis des Verfahrens besitzt. Dieser Vorteil ist be ¬ sonders wichtig, da üblicherweise Geräte in bestehende Netze eingebunden werden. Es ist daher nicht notwendig, auf allen Netzelementen die Änderung einzubringen.

Der Switch muss darüber hinaus kein Wissen über die Infrastruktur des Netzwerks haben. Es muss auch keine Analyse bzw. Engineering des Netzwerkes stattfinden, weder vor Inbetriebnahme und auch nicht während des Betriebs.

Es muss kein separater Mechanismus implementiert werden, um das Verhungern / Kreisen von Paketen zu verhindern - diese ergibt sich impliziert aus dem Vorgehen selbst.

Kurzbeschreibung der Zeichnungen Im Folgenden wird die Erfindung anhand von Ausführungsbei ¬ spielen erläutert. Dabei zeigen

Figur 1 ein beispielhaftes Netz nach dem Stand der Technik, Figur 2 ein erstes Beispiel gemäß dem erfindungsgemäßen Gegenstand und

Figur 3 ein zweites Beispiel gemäß dem erfindungsgemäßen Gegenstand .

In Figur 2 ist das Problem beispielhaft für ein Netzwerk bestehend aus vier Endgeräten EG1, EG2 und EG3 (z.B. PCs, Pro- grammable Logic Controller PLCs, SPS etc.) und drei Switches SW1, SW2, SW3 skizziert. Wenn nun die Endgeräte EG1, EG2 und EG3 jeweils Datenpakete PI, P2, P3 an Endgerät EG4 senden, kann es in Switch SW1, in welchem alle Pakete aufeinander treffen, zu einem Überlauf im Puffer BUF kommen. Switch SW1 würde nach dem Stand der Technik dann alle weiter ankommenden Datenpakete verwerfen, solange der Puffer BUF belegt ist. In der Figur wird nur ein Datenpuffer BUF und ein Port darge- stellt, es können aber wie oben beschrieben auch mehrere Datenpuffer sein.

In der beschriebenen Lösung wird das überzählige Datenpaket P3 nun nicht verworfen, sondern an das in der Sender"kette" vorangehende Netzelement SW2 zurück gesendet. Das Netzelement SW2 empfängt das Datenpaket, weiss aber gegebenenfalls nicht mal, dass es bereits einmal an das Netzelement SW1 gesendet wurde, ermittelt den nächsten Schritt auf dem Weg zum endgül- tigen Empfänger EG4 und sendet das Datenpaket P3 nochmals, retry .

In diesem Beispiel gibt es nur einen möglichen Weg von Sender EG3 zu Empfänger EG4 über die Netzelemente SW3, SW2, SW1. Es ist auch denkbar, dass ein alternativer Weg existiert und das Netzelement nach jedem weiteren Empfang des Datenpakets P3 erneut entscheidet, welcher Weg zum Empfänger gewählt wird, über SW2 oder einen anderen Switch (in der Figur nicht dargestellt) .

In Figur 3 ist eine weitere Ausführungsform für ein zweites Netzwerk bestehend ebenfalls aus vier Endgeräten EG1 - EG4 (z.B. PCs, Programmable Logic Controller PLCs, SPS etc.) und vier Switches SW1 bis SW4 skizziert.

Wenn nun die Endgeräte EG1, EG2 und EG3 jeweils Datenpakete PI, P2, P3 an Endgerät EG4 senden, kommt es in Switch SW1, in welchem alle Pakete aufeinander treffen, zu einem Überlauf des Datenpuffers BUF.

Zunächst wird Datenpaket P2 von EG2 empfangen und ggf. im Da ¬ tenpuffer BUF zwischengespeichert.

Es ist nun angenommen, dass das Datenpaket P3 über SW3 und SW2 als nächstes und damit zeitlich etwas früher also das dritte Datenpaket PI von Endgerät EG1 beim Netzelement SW1 eintrifft. Weiterhin sei angenommen, das SW1 das Datenpaket nicht Zwischenspeichern kann und daher nach dem erfindungsge- mäßen Verfahren zurück an das vorhergehende Netzelement SW2 sendet .

Wenn nun das nächste Datenpaket PI empfangen wird, so sieht es eine Ausführungsform vor, dass das Netzelement SW1 dieses Datenpaket ebenfalls an den Sender (in diesem Fall das Netz ¬ element SW4) zurück sendet, unabhängig davon, ob der Datenpuffer BUF inzwischen wieder frei ist und das Datenpaket ggf sogar weiter geleitet werden könnte. In diesem Fall wird die erneute Übertragung des Datenpakets P3 abgewartet, retry3, bevor auch das Datenpaket PI übertragen wird.