DE10125337A1 - Packet data transfer method for controlling for a network node in which data packets are grouped according to their data transfer rate before transmission at an assigned time so that overall data transfer rates increase - Google Patents

Packet data transfer method for controlling for a network node in which data packets are grouped according to their data transfer rate before transmission at an assigned time so that overall data transfer rates increase

Info

Publication number
DE10125337A1
DE10125337A1 DE10125337A DE10125337A DE10125337A1 DE 10125337 A1 DE10125337 A1 DE 10125337A1 DE 10125337 A DE10125337 A DE 10125337A DE 10125337 A DE10125337 A DE 10125337A DE 10125337 A1 DE10125337 A1 DE 10125337A1
Authority
DE
Germany
Prior art keywords
group
qrk
data packets
network node
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Ceased
Application number
DE10125337A
Other languages
German (de)
Inventor
Xiaoning Nie
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Infineon Technologies AG
Original Assignee
Infineon Technologies AG
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Infineon Technologies AG filed Critical Infineon Technologies AG
Priority to DE10125337A priority Critical patent/DE10125337A1/en
Publication of DE10125337A1 publication Critical patent/DE10125337A1/en
Ceased legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/2854Wide area networks, e.g. public data networks

Abstract

Method in which the data packets are grouped according to their corresponding data transfer rate. Data transfer rates are all an integer multiple of a base data transfer rate (r0). After grouping each group is assigned an output time, with the number of data in a group to which an output time has been assigned corresponding to the integer multiple of the transfer rate. An Independent claim is made for a network node with a buffer memory in which data packets are grouped according to data transfer rate.

Description

Die Erfindung bezieht sich generell auf das Gebiet der Daten­ übertragung. Insbesondere betrifft die Erfindung ein Verfah­ ren zur zeitlichen Steuerung der Ausgabe von Datenpaketen aus einem Netzknoten und einen Netzknoten, welcher gemäß dem Ver­ fahren gesteuert wird.The invention relates generally to the field of data transmission. In particular, the invention relates to a method control the timing of the output of data packets a network node and a network node, which according to Ver driving is controlled.

In einem Netz zu Datenübertragungszwecken wird ein Punkt, an welchem verschiedene Datenübertragungskanäle zusammenlaufen, als Netzknoten bezeichnet. Ein Netzknoten kann durch unter­ schiedliche Netzelemente realisiert sein. Beispielsweise kann dieses ein Router, welchem Datenpaketvermittlungsaufgaben zu­ fallen, oder ein Gateway, welches Protokollumsetzungen durch­ führt, sein. Andere Ausführungen eines Netzknotens sind bei­ spielsweise Switches (Schalter oder Datenpaketverteiler), Bridges (Brücken) oder Hubs (Systemkonzentratoren oder Stern­ verteiler), welche eine Hardware-basierte Netzkopplung unter Auswertung von Adreßinformationen der einzelnen Datenpakete bewirken. Gemeinsam sind den unterschiedlichen Realisierungs­ formen eines Netzknotens, daß Datenpakete an einem oder meh­ reren Eingängen des betrachteten Netzknotens eingehen und daß die Datenpakete an einem oder mehreren Ausgängen des Netzkno­ tens nach einer gewissen Verweilzeit in dem Netzknoten ausge­ geben werden.In a network for data transmission purposes, a point becomes which different data transmission channels converge, referred to as a network node. A network node can pass through different network elements can be realized. For example this is a router which data packet switching tasks to fall, or a gateway, which protocol conversions through leads, be. Other versions of a network node are in for example switches (switches or data packet distributors), Bridges or hubs (system concentrators or star distributor), which is a hardware-based network coupling Evaluation of address information of the individual data packets cause. The different realizations are common form a network node that data packets on one or more dere inputs of the network node under consideration and that the data packets at one or more exits of the network node at least after a certain dwell time in the network node will give.

In Fig. 1 ist ein Verfahren zur zeitlichen Steuerung der Aus­ gabe von Datenpaketen aus einem Netzknoten dargestellt, wie es häufig im Stand der Technik Verwendung findet. Bei dem vorliegenden Verfahren handelt es sich bei sämtlichen be­ trachteten Datenpaketen um Zellen, d. h. um Datenpakete mit einer für alle Datenpakete gleichen Datenlänge. In den Netz­ knoten können Datenpakete nicht nur einzeln, sondern auch in größeren Einheiten, wie z. B. in Datenströmen, eingehen. Der Begriff Datenstrom bezeichnet eine Folge von hintereinander­ hängenden Datenpaketen, die von einem bestimmten Sender stam­ men und für einen bestimmten Empfänger vorgesehen sind. In den Netzknoten eingehende Datenströme werden in einem Puffer­ speicher in Warteschlangen qi (i = 1, . . ., N) (Queue) zwi­ schengespeichert. In einer Warteschlange qi kann mehr als ein Datenstrom abgelegt werden. Die einzelnen Elemente einer War­ teschlange qi, in welchen jeweils genau ein Datenpaket abge­ legt werden kann, sind mit Identifikationsnummern behaftet. Die Identifikationsnummern können somit zur Identifizierung der in den jeweiligen Elementen der Warteschlangen qi abge­ legten Datenpakete herangezogen werden.In Fig. 1, a method for timing the off is passing data packets from one network node shown as it is often used in the prior art. In the present method, all data packets considered are cells, ie data packets with a data length that is the same for all data packets. In the network node, data packets can not only individually, but also in larger units, such as. B. in data streams. The term data stream denotes a sequence of data packets which are connected in series and originate from a specific transmitter and are intended for a specific receiver. Data streams arriving at the network nodes are temporarily stored in a buffer in queues qi (i = 1,..., N) (queue). More than one data stream can be stored in a queue qi. The individual elements of a queue qi, in which exactly one data packet can be stored, are associated with identification numbers. The identification numbers can thus be used to identify the data packets stored in the respective elements of the queues qi.

Die Datenpakete verweilen solange in den Warteschlangen qi, bis ihnen Ausgabezeitpunkte aus dem Netzknoten zugewiesen werden. Diese Zuweisung erfolgt beispielsweise gemäß dem vor­ liegenden bekannten Verfahren. Dazu werden diejenigen Daten­ pakete, welche in den Warteschlangen qi an vorderster Stelle stehen, einem Element j (j = 1, . . ., N) einer Zeittabelle C (Calendar) zugeordnet. Die Anzahl der Elemente j der Zeitta­ belle C ist gleich der Anzahl der Warteschlangen qi. Es kann folglich jeder Warteschlange qi genau ein Element j der Zeit­ tabelle C zugeordnet werden, so daß die Zeittabelle C stets mit höchstens einem Datenpaket aus jeder Warteschlange qi in Beziehung steht. Den Elementen j der Zeittabelle C werden sukzessive Ausgabezeitpunkte vtj für die zugehörigen Datenpa­ kete zugewiesen. Dabei bezeichnet der Ausgabezeitpunkt vtj beispielsweise den Zeitpunkt, zu welchem mit der Ausgabe des betreffenden Datenpakets aus dem Netzknoten begonnen wird. Der Ausgabezeitpunkt vt(j+1) des dem Element j nachfolgenden Elements j+1 berechnet sich aus dem Ausgabezeitpunkt vtj des mit dem Element j assoziierten Datenpakets und der Zeit Lj/rj, die zur Ausgabe des Datenpakets benötigt wird, wobei Lj für die Anzahl der Bits und rj für die Datenübertragungs­ rate des Datenpakets stehen:
The data packets remain in the queues qi until they are assigned output times from the network node. This assignment takes place, for example, according to the known method before. For this purpose, the data packets that are in the queue qi at the top are assigned to an element j (j = 1,..., N) of a time table C (calendar). The number of elements j of the time table C is equal to the number of queues qi. Consequently, exactly one element j of the time table C can be assigned to each queue qi, so that the time table C is always related to at most one data packet from each queue qi. The elements j of the time table C are successively assigned output times vtj for the associated data packets. The output time vtj denotes, for example, the time at which the data packet in question is started to be output from the network node. The output time vt (j + 1) of the element j + 1 following the element j is calculated from the output time vtj of the data packet associated with the element j and the time Lj / rj that is required to output the data packet, where Lj is the number the bits and rj stand for the data transmission rate of the data packet:

vt (j+1) = vtj + Lj/rj (1)
vt (j + 1) = vtj + Lj / rj (1)

Die Ausgabezeitpunkte vtj werden den betreffenden, in den Warteschlangen qi zwischengespeicherten Datenpaketen zuge­ führt, so daß diese Datenpakete zu den vorgegebenen Ausgabe­ zeitpunkten vtj aus dem Netzknoten ausgegeben werden können. Anschließend werden die in den Warteschlangen qi den ausgege­ benen Datenpaketen nachfolgenden Datenpakete den Elementen j der Zeittabelle C zugeordnet und diesen werden Ausgabezeit­ punkte vtj zugewiesen.The output times vtj are the relevant, in the Queues qi cached data packets leads so that these data packets to the predetermined output times vtj can be output from the network node. The queues in the queues are then output data packets following data packets the elements j assigned to the time table C and these become the output time points assigned to vtj.

Das Verfahren der Ausgabe der Datenpakete aus den Warte­ schlangen qi entspricht einem FIFO-Verfahren (First in - First out). Dabei werden die Datenpakete einer Warteschlange qi in der Reihenfolge ausgegeben, in der sie auch in den Netzknoten eingegangen sind. Dadurch bleibt die Reihenfolge der Datenpakete innerhalb eines Datenstroms auch bei der Aus­ gabe der Datenpakete gewahrt.The process of outputting data packets from the control room queues qi corresponds to a FIFO procedure (First in - First out). The data packets become a queue qi output in the order in which they are also in the Network nodes have been received. This keeps the order of data packets within a data stream even when it is switched off handing over the data packets.

Ein gravierender Nachteil des in Fig. 1 dargestellten Verfah­ rens ist seine relativ große Komplexität. Die Komplexität ei­ nes derartigen Verfahrens ist in erster Linie durch die An­ zahl der Schritte bestimmt, welche durchgeführt werden müs­ sen, um die in der Zeittabelle C eingetragenen Ausgabezeit­ punkte vtj zu vergleichen und in der richtigen Reihenfolge hintereinander zu reihen. Dabei wächst die Komplexität des Verfahrens mit dem Logarithmus der Anzahl der Elemente j der Zeittabelle C an. Folglich steigt die Komplexität des vorlie­ genden Verfahrens auch bei einer höheren Anzahl von Warte­ schlangen qi. Da derzeit immer höhere Datenübertragungsraten in Datennetzen erforderlich werden, ist der dem vorliegenden Verfahren zugrundeliegende Algorithmus zur Steuerung der Aus­ gabezeitpunkte vtj der Datenpakete aus dem Netzknoten oftmals nicht akzeptabel.A serious disadvantage of the process shown in FIG. 1 is its relatively great complexity. The complexity of such a method is primarily determined by the number of steps that have to be carried out in order to compare the output times vtj entered in the time table C and to arrange them in succession in the correct order. The complexity of the method increases with the logarithm of the number of elements j of the time table C. Consequently, the complexity of the present method increases qi even with a higher number of queues. Since currently ever higher data transmission rates are required in data networks, the algorithm on which the present method is based for controlling the output times vtj of the data packets from the network node is often not acceptable.

Ein ebenfalls bekanntes Verfahren, welches ein schnelleres Versenden der Datenpakete als das in Fig. 1 gezeigte Verfah­ ren ermöglicht, ist in Fig. 2 dargestellt. Die Grundidee die­ ses Verfahrens ist es, die Datenpakete anhand ihrer zugewie­ senen Datenübertragungsraten zu sortieren. Dazu werden die in den Netzknoten eingegangenen Datenströme zunächst wieder in einem Pufferspeicher in Warteschlangen qi zwischengespei­ chert. Den Warteschlangen qi ist jeweils eine feste Daten­ übertragungsrate für die in ihnen abgelegten Datenpakete zu­ gewiesen. Die die Warteschlangen qi anführenden Datenpakete werden in Gruppen qrk (k = 1, 2, 3, . . .) sortiert, wobei jede Gruppe qrk ausschließlich Datenpakete mit der gleichen zuge­ wiesenen Datenübertragungsrate rk enthält. Darüber hinaus enthält jede Gruppe qrk höchstens ein Datenpaket aus jeder Warteschlange qi. Den die Gruppen qrk anführenden Datenpake­ ten werden wie bei dem in Fig. 1 gezeigten Verfahren Elemente einer Zeittabelle C zugewiesen, wodurch ihnen Ausgabezeit­ punkte vtj aus dem Netzknoten zugeteilt werden. Für jede Gruppe qrk ist genau ein Element der Zeittabelle C vorgese­ hen. Sobald ein Datenpaket aus dem Netzknoten ausgegeben wur­ de, rückt in die zugehörige Gruppe qrk ein Datenpaket aus der Warteschlange qi, in welcher sich das ausgegebene Datenpaket ursprünglich befand, an die letzte Stelle der zugehörigen Gruppe qrk nach. Alternativ dazu kann auch vorgesehen sein, daß jeder Warteschlange qi ein bestimmtes Element einer be­ stimmten Gruppe qrk zugeteilt ist, welches nach der Ausgabe eines Datenpakets mit dem in der Warteschlange qi nachfolgen­ den Datenpaket besetzt wird.A method which is also known and which enables the data packets to be sent more quickly than the method shown in FIG. 1 is shown in FIG. 2. The basic idea of this method is to sort the data packets based on their assigned data transfer rates. For this purpose, the data streams received in the network nodes are first buffered again in queues qi in a buffer memory. The queues qi are each assigned a fixed data transfer rate for the data packets stored in them. The data packets leading the queues qi are sorted into groups qrk (k = 1, 2, 3,...), Each group qrk exclusively containing data packets with the same assigned data transfer rate rk. In addition, each group qrk contains at most one data packet from each queue qi. The data packets leading the groups qrk are assigned elements of a time table C as in the method shown in FIG. 1, as a result of which they are assigned output times vtj from the network node. Exactly one element of the time table C is provided for each group qrk. As soon as a data packet has been output from the network node, a data packet from the queue qi in which the output data packet was originally located moves to the last position in the associated group qrk in the associated group qrk. Alternatively, it can also be provided that each queue qi is assigned a specific element of a certain group qrk, which after the output of a data packet is filled with the data packet following in the queue qi.

Des weiteren kann vorgesehen sein, daß nicht Datenpakete auf die Gruppen qrk verteilt werden, sondern daß lediglich Iden­ tifikationsnummern der Datenpakete, die durch die zugehörigen Elemente der Warteschlangen qi bestimmt sind, auf die Gruppen qrk verteilt werden. Durch die Identifikationsnummern sind die zugehörigen Datenpakete eindeutig bestimmt. Dadurch wird die Geschwindigkeit des Ausgabeverfahrens erhöht, da die Da­ tenpakete während des Abarbeitens des Algorithmus in den War­ teschlangen qi verbleiben können. Furthermore, it can be provided that data packets are not the groups qrk are distributed, but that only idens tification numbers of the data packets by the associated Elements of the queues qi are determined on the groups qrk be distributed. By the identification numbers are the associated data packets are clearly determined. This will the speed of the issuing process increases because the Da packages during the execution of the algorithm in the war queues qi can remain.  

In der Regel ist die Zahl der unterschiedlichen Datenübertra­ gungsraten rk kleiner als die Anzahl der Warteschlangen qi, so daß durch das vorliegende Verfahren die Komplexität der Zeittabelle C reduziert wird, wodurch im Vergleich zu dem in Fig. 1 gezeigten Verfahren ein höherer Durchsatz von Datenpa­ keten pro Zeiteinheit durch den Netzknoten ermöglicht wird. Allerdings sind die mit dem vorliegenden Verfahren erzielba­ ren Datenübertragungsraten immer noch zu gering, um Netzwerk­ raten von 2,5 Gbit/s oder 10 Gbit/s zuverlässig verarbeiten zu können. Bei derart hohen Netzwerkraten wäre die Zwischenspei­ cherungsmöglichkeit in dem Pufferspeicher des Netzknotens zu irgendeinem Zeitpunkt unweigerlich erschöpft, und es käme zu Datenverlusten. Besonders für zeitkritische Anwendungen, wie z. B. bei Echtzeitsystemen oder bei Audio- und Videoübertra­ gungen z. B. über das Internet, ist es daher notwendig, Mecha­ nismen bereitzustellen, welche eine schnelle Datenübertragung gewährleisten.In general, the number of different data transfer rates rk is smaller than the number of queues qi, so that the complexity of the time table C is reduced by the present method, as a result of which a higher throughput of data packets compared to the method shown in FIG. 1 per time unit is made possible by the network node. However, the data transfer rates that can be achieved with the present method are still too low to be able to reliably process network rates of 2.5 Gbit / s or 10 Gbit / s. With such high network rates, the possibility of intermediate storage in the buffer memory of the network node would inevitably be exhausted at any point in time and data loss would occur. Especially for time-critical applications such as B. in real-time systems or in audio and video transmissions z. B. on the Internet, it is therefore necessary to provide mechanisms that ensure fast data transmission.

Aufgabe der Erfindung ist es daher, ein Verfahren zur zeitli­ chen Steuerung der Ausgabe von Datenpaketen aus einem Netz­ knoten und einen gemäß diesem Verfahren gesteuerten Netzkno­ ten zu schaffen, mit welchem eine schnelle Ausgabe der Daten­ pakete aus dem Netzknoten ermöglicht wird.The object of the invention is therefore to provide a method for time Chen control the output of data packets from a network node and a network node controlled according to this method with which a quick output of the data packets from the network node is enabled.

Die der Erfindung zugrundeliegende Aufgabenstellung wird durch die Merkmale der unabhängigen Patentansprüche gelöst. Vorteilhafte Weiterbildungen und Ausgestaltungen sind in den Unteransprüchen angegeben.The problem underlying the invention is solved by the features of the independent claims. Advantageous further developments and refinements are in the Subclaims specified.

Das erfindungsgemäße Verfahren dient zur zeitlichen Steuerung der Ausgabe von Datenpaketen aus einem Netzknoten. Das Ver­ fahren basiert darauf, daß nach dem Eingang der Datenpakete in den Netzknoten die Datenpakete in Warteschlangen zwischen­ gespeichert werden, welchen jeweils eine feste Datenübertra­ gungsrate für die in ihnen abgelegten Datenpakete zugeordnet ist. In einem Verfahrensschritt (a) wird mindestens ein Teil der Datenpakete, welches beispielsweise die die Warteschlan­ gen anführenden Datenpakete sein können, in Gruppen sortiert. Dabei werden Datenpakete mit gleichen Datenübertragungsraten derselben Gruppe zugewiesen. Somit weisen alle Datenpakete einer Gruppe die gleiche Datenübertragungsrate auf. Die Da­ tenübertragungsrate, die mit einer bestimmten Gruppe assozi­ iert werden kann, ist stets das Produkt aus einem gruppenspe­ zifischen Multiplikator und einer Basisdatenübertragungsrate. Der gruppenspezifische Multiplikator ist dabei eine natürli­ che Zahl. Ein wesentlicher Gedanke der Erfindung besteht dar­ in, daß in einem Verfahrensschritt (b) den Datenpaketen, die jeweils eine Gruppe anführen, Ausgabezeitpunkte aus dem Netz­ knoten zugewiesen werden, wobei die Anzahl der Datenpakete einer Gruppe, die aus dem Netzknoten ausgegeben werden, dem Multiplikator der Gruppe entspricht. In Abhängigkeit von der Anzahl der in den Netzknoten eingegangenen Datenpakete werden anschließend gegebenenfalls den in den Gruppen an die vorder­ sten Stellen nachrückenden Datenpaketen ebenfalls Ausgabe­ zeitpunkte gemäß dem Verfahrensschritt (b) zugewiesen. Der Verfahrensschritt (b) kann eventuell sooft wiederholt werden, bis sämtliche in den Netzknoten eingegangenen Datenpakete wieder ausgegeben wurden.The method according to the invention is used for time control the output of data packets from a network node. The Ver driving is based on the fact that after the receipt of the data packets in the network nodes the data packets in queues between are saved, which each have a fixed data transfer assignment rate for the data packets stored in them is. In a process step (a) at least one part the data packets, which for example the the queue  data packets can be sorted into groups. Data packets with the same data transfer rates are used assigned to the same group. So all data packets point the same data transfer rate in a group. The Da transmission rate associated with a particular group can always be the product of a group sp specific multiplier and a basic data transfer rate. The group-specific multiplier is a natural one che number. An essential idea of the invention is in that in a step (b) the data packets that lead one group at a time, issue times from the network nodes are assigned, the number of data packets a group that are output from the network node, the Multiplier of the group corresponds. Depending on the Number of data packets received in the network node then, if applicable, the one in the groups to the front Most of the following data packets also output times assigned according to method step (b). The Process step (b) can possibly be repeated as often as until all data packets received in the network node have been spent again.

Es kann auch vorgesehen sein, daß bei dem erfindungsgemäßen Verfahren anstelle der Datenpakete Identifikationsnummern, die sich den Datenpaketen aufgrund der Einreihung der Daten­ pakete in die Warteschlangen eineindeutig zuordnen lassen, den Gruppen anhand der zugehörigen Datenübertragungsraten zu­ geordnet werden. In diesem Fall werden die Ausgabezeitpunkte den Identifikationsnummern zugewiesen. Anschließend wird ein Rückbezug zu den zugehörigen Datenpaketen hergestellt, um die Datenpakete aus dem Netzknoten ausgeben zu können.It can also be provided that in the inventive Procedure instead of data packets identification numbers, the data packets due to the classification of the data have packages clearly assigned to the queues, to the groups based on the associated data transfer rates be ordered. In this case, the time of issue assigned to the identification numbers. Then a Back reference to the associated data packets made to the To be able to output data packets from the network node.

Die mit den Gruppen assoziierbaren Datenübertragungsraten sind ganzzahlige Vielfache der Basisdatenübertragungsrate. Da die Zahl der in einem Durchlauf des Verfahrensschritts (b) ausgegebenen Datenpakete einer Gruppe beispielsweise gleich dem gruppenspezifischen Multiplikator ist, werden um so mehr Datenpakete einer Gruppe in einem Durchlauf des Verfahrens­ schritts (b) ausgegeben, je größer die Datenübertragungsrate der betreffenden Gruppe ist. Dieses bedeutet beispielsweise, daß bei zwei Gruppen, wobei die Datenübertragungsrate der ei­ nen Gruppe doppelt so groß ist wie die Datenübertragungsrate der anderen Gruppe und wobei die Datenpakete beider Gruppen in ihren Datenlängen übereinstimmen, doppelt so viele Daten­ pakete der einen Gruppe im Vergleich zu der Zahl der Datenpa­ kete der anderen Gruppe aus dem Netzknoten ausgegeben werden. Dieses ist von Vorteil, da dadurch in einem bestimmten Zeit­ intervall immer eine ganze Zahl von Datenpaketen, die pro Zeitintervall alle aus derselben Gruppe stammen, aus dem Netzknoten ausgegeben wird, wodurch das Ausgabeverfahren er­ heblich beschleunigt wird. Die Ausgabe kann dann auf einfache Weise von einem Zähler anhand dieses Zeitintervalls gesteuert werden.The data transfer rates that can be associated with the groups are integer multiples of the basic data transfer rate. There the number of in one run of process step (b) output data packets of a group for example the same the group-specific multiplier, the more so  Data packets of a group in one run of the procedure step (b), the greater the data transfer rate of the group in question. This means, for example, that with two groups, the data transfer rate of the egg NEN group is twice as large as the data transfer rate the other group and being the data packets of both groups match in their data lengths, twice as much data packets of one group compared to the number of data pairs kete of the other group are output from the network node. This is beneficial because it does so in a certain amount of time interval always an integer number of data packets per Time interval all come from the same group from which Network node is output, causing the output method is accelerated considerably. The output can then be simple Controlled by a counter based on this time interval become.

Gemäß einer vorteilhaften Ausgestaltung der Erfindung wird der Verfahrensschritt (b) zum Zuweisen der Ausgabezeitpunkte in mehrere Teilschritte aufgegliedert. Dazu werden zunächst die Identifikationsnummern der die Gruppen anführenden Daten­ pakete bzw. die Identifikationsnummern, welche die Gruppen anführen, Elementen einer Übergruppe zugeordnet. Jedes Ele­ ment der Übergruppe enthält die Identifikationsnummer eines Datenpakets oder ist diesem zumindest durch eine Zuordnung zugewiesen. Die Anzahl der Datenpakete einer Gruppe, deren Identifikationsnummern der Übergruppe zugeordnet werden, bzw. die Anzahl der Identifikationsnummern einer Gruppe, die der Übergruppe zugeordnet werden, entspricht dem Multiplikator der Gruppe. Nach dem Bilden der Übergruppe werden den Elemen­ ten der Übergruppe Ausgabezeitpunkte zugewiesen. Dabei erhält beispielsweise ein in der Übergruppe weiter vorne stehendes Element einen früheren Ausgabezeitpunkt als ein in der Über­ gruppe weiter hinten stehendes Element. Vorteilhafterweise wird zum Anweisen der Ausgabezeitpunkte mindestens ein Ele­ ment der Übergruppe einem Element einer Zeittabelle zugeord­ net, in welcher dem mindestens einen Element ein Ausgabezeit­ punkt zugewiesen wird. Diese Zuordnung von Elementen der Übergruppe zu der Zeittabelle kann gegebenenfalls mit weite­ ren Elementen der Übergruppe mehrfach durchgeführt werden. Anschließend werden die Ausgabezeitpunkte von den Elementen der Übergruppe oder dem betreffenden Element der Zeittabelle an die den Elementen zugeordneten Datenpakete weitergeleitet, so daß die betreffenden Datenpakete zu den vorgegebenen Aus­ gabezeitpunkten aus dem Netzknoten ausgegeben werden können.According to an advantageous embodiment of the invention the method step (b) for assigning the output times divided into several steps. To do this first the identification numbers of the data leading the groups packages or the identification numbers, which the groups lead, assigned to elements of a supergroup. Every ele The group contains the identification number of one Data packet or this is at least through an assignment assigned. The number of data packets in a group whose Identification numbers of the super group are assigned, or the number of identification numbers of a group that the Assigning a super group corresponds to the multiplier the group. After forming the supergroup, the elemen assigned to the subgroup output times. Thereby receives for example, one that is higher up in the supergroup Item earlier in issue than one in About Element further back. advantageously, at least one Ele element of the supergroup is assigned to an element of a time table net, in which the at least one element has an issue time  point is assigned. This assignment of elements of the Overgroup to the time table can if necessary with wide elements of the supergroup can be carried out several times. Then the output times of the elements the parent group or the relevant element of the time table forwarded to the data packets assigned to the elements, so that the relevant data packets to the given off delivery times can be output from the network node.

Es kann vorgesehen sein, daß die Elemente der Übergruppe stets den jeweils gleichen Gruppen zugeordnet sind, d. h. es müssen lediglich die Identifikationsnummern der die Gruppen anführenden Datenpakete in die Übergruppe eingetragen werden, wobei die Positionen der Identifikationsnummern bereits fest­ gelegt sind.It can be provided that the elements of the supergroup are always assigned to the same groups, d. H. it just need the identification numbers of the groups leading data packets are entered in the super group, where the positions of the identification numbers are already fixed are laid.

Durch das erfindungsgemäße Erzeugen einer Übergruppe weist das vorliegende Verfahren entscheidende Vorteile gegenüber bisherigen, dem gleichen Zweck dienenden Verfahren auf. Bei­ spielsweise wird in jedem Durchlauf des Verfahrens nur einer Identifikationsnummer, welcher einem Element der Übergruppe zugeordnet ist, über die Zeittabelle ein Ausgabezeitpunkt zu­ geteilt. Dadurch wird die Komplexität der Zeittabelle wesent­ lich reduziert und folglich die Ausgaberate des Netzknotens gegenüber bekannten Verfahren erhöht.By generating a supergroup according to the invention the present process over decisive advantages previous processes serving the same purpose. at for example, only one in each run of the process Identification number, which is an element of the supergroup is assigned an output time via the time table divided. This increases the complexity of the time table Lich reduced and consequently the output rate of the network node increased compared to known methods.

Eine weitere vorteilhafte Ausgestaltung der Erfindung sieht vor, daß als Basisdatenübertragungsrate die Datenübertra­ gungsrate der Gruppe mit der niedrigsten Datenübertragungsra­ te herangezogen wird. In der Regel wird durch diese Maßnahme sichergestellt, daß die Datenübertragungsraten aller übrigen Gruppen ein ganzzahliges Vielfaches der Basisdatenübertra­ gungsrate sind.A further advantageous embodiment of the invention provides before that as the basic data transfer rate, the data transfer rate of the group with the lowest data transfer rate te is used. Usually this measure ensured that the data transfer rates of all others Groups an integer multiple of the basic data transfer rate.

Vorteilhafterweise sind die Datenpakete Zellen mit einer fe­ sten Datenlänge und gehen beispielsweise in Datenströmen in den Netzknoten ein. Bei einer festen Datenlänge muß zur Be­ rechnung der Länge der Ausgabezeit der jeweiligen Zelle nur die Datenübertragungsrate dieser Zelle berücksichtigt werden. Dieses vereinfacht den Algorithmus zur Ausgabe der Datenpake­ te aus dem Netzknoten in erheblichem Maße. Des weiteren wei­ sen Zellen den Vorteil auf, daß die auszuwertenden Informa­ tionen immer an den gleichen Stellen der Zellen stehen.The data packets are advantageously cells with a fe most data length and go into data streams, for example the network node. If the data length is fixed,  calculation of the length of the output time of the respective cell only the data transfer rate of this cell are taken into account. This simplifies the algorithm for outputting the data packets to a considerable extent from the network node. Furthermore, white cells have the advantage that the information to be evaluated ions are always in the same places on the cells.

Eine bevorzugte Ausgestaltung der Erfindung ist dadurch ge­ kennzeichnet, daß der Netzknoten ein ATM-Knoten (Asynchronous Transfer Mode) ist. Ein ATM-Knoten analysiert lediglich den Kopf eines Datenpakets, um die Nutzdaten weiterzuleiten. Diese Analyse geschieht hardwaremäßig ohne den Zugriff auf Softwareroutinen. Dadurch wird die Effektivität der Übermitt­ lung von Datenpaketen gesteigert.A preferred embodiment of the invention is thereby ge indicates that the network node is an ATM node (Asynchronous Transfer mode). An ATM node only analyzes that Header of a data packet to forward the user data. In terms of hardware, this analysis is done without access to Software routines. This will make the transmission effective data packets increased.

Das erfindungsgemäße Verfahren läßt sich sowohl auf Netzkno­ ten mit Vermittlungs- oder Protokolltransferfunktionen (Router bzw. Gateways) als auch auf sämtliche anderen Netz­ knoten, wie z. B. Switches, Bridges oder Hubs, anwenden.The method according to the invention can be used both on the network node with operator or protocol transfer functions (Routers or gateways) as well as on all other networks knots, such as B. switches, bridges or hubs, apply.

Ein weiterer Aspekt der Erfindung betrifft einen Netzknoten, der mindestens einen Pufferspeicher zum Zwischenspeichern von Datenpaketen in Warteschlangen enthält. Jeder Warteschlange ist eine Datenübertragungsrate für die in ihr befindlichen Datenpakete zugeordnet. Des weiteren weist der Netzknoten er­ ste Mittel auf, die zum Sortieren der Datenpakete bzw. von Identifikationsnummern der Datenpakete in Gruppen dienen. Die ersten Mittel weisen Datenpakete mit gleichen Datenübertra­ gungsraten bzw. deren Identifikationsnummern derselben Gruppe zu. Somit ist jede Gruppe durch eine spezifische Datenüber­ tragungsrate charakterisiert, welche gleich dem Produkt aus einem gruppenspezifischen Multiplikator und einer Basisdaten­ übertragungsrate ist. Ferner umfaßt der Netzknoten zweite Mittel, deren Aufgabe es ist, den eine Gruppe anführenden Da­ tenpaketen bzw. den eine Gruppe anführenden Identifikations­ nummern die Ausgabezeitpunkte der zugehörigen Datenpakete aus dem Netzknoten zuzuweisen. Dabei entspricht die Anzahl der in einem Zyklus auszugebenden Datenpakete einer Gruppe dem Mul­ tiplikator der Gruppe.Another aspect of the invention relates to a network node, the at least one buffer memory for buffering Contains data packets in queues. Any queue is a data transfer rate for those in it Data packets assigned. The network node also points it out means to sort the data packets or of Identification numbers of the data packets are used in groups. The The first means assign data packets with the same data transfer rates or their identification numbers of the same group to. Thus each group is over by a specific data wear rate characterized which is equal to the product a group-specific multiplier and basic data transfer rate is. The network node further comprises second Means, whose task it is, the group leader Da packages or the identification leading a group number the output times of the associated data packets assign to the network node. The number of in  data packets of a group to be output to the Mul Group multiplier.

In analoger Weise zu dem erfindungsgemäßen Verfahren gestat­ tet es der erfindungsgemäße Netzknoten beispielsweise, bei gleicher Datenlänge aller Datenpakete in einem bestimmten Zeitintervall immer eine ganze Zahl von Datenpaketen aus­ zugeben. Dieses bedingt eine erhebliche Verkürzung der Zeit, die zur Ausgabe der Datenpakete benötigt wird.In an analogous manner to the method according to the invention if it is the network node according to the invention, for example same data length of all data packets in a certain Time interval always a whole number of data packets to admit. This causes a considerable reduction in the time which is required to output the data packets.

Die Erfindung wird nachfolgend unter Bezugnahme auf die Zeichnungen näher erläutert. In diesen zeigen:The invention is described below with reference to the Drawings explained in more detail. In these show:

Fig. 1 eine schematische Darstellung eines Verfahrens zur zeitlichen Steuerung der Ausgabe von Datenpa­ keten aus einem Netzknoten gemäß dem Stand der Technik; Figure 1 is a schematic representation of a method for timing the output of data packets from a network node according to the prior art.

Fig. 2 eine schematische Darstellung eines weiteren Ver­ fahrens zur zeitlichen Steuerung der Ausgabe von Datenpaketen aus einem Netzknoten gemäß dem Stand der Technik; und Figure 2 is a schematic representation of a further driving Ver for timing the output of data packets from a network node according to the prior art; FIG. and

Fig. 3 eine schematische Darstellung eines Ausführungs­ beispiels des erfindungsgemäßen Verfahrens. Fig. 3 is a schematic representation of an embodiment of the method according to the invention.

In Fig. 3 sind Warteschlangen qi (i = 1, . . ., N) eines Netz­ knotens gezeigt, in denen in den Netzknoten eingegangene Da­ tenpakete zwischengespeichert werden. In dem vorliegenden er­ findungsgemäßen Ausführungsbeispiel ist allen Datenpaketen gemeinsam, daß sie die gleichen Datenlängen aufweisen. Jeder Warteschlange qi ist eine Datenübertragungsrate zugewiesen, mit welcher die in ihr abgelegten Datenpakete aus dem Netz­ knoten ausgegeben werden sollen. Des weiteren setzen sich die Warteschlangen qi aus einzelnen Elementen zusammen, in wel­ chen jeweils ein Datenpaket abgespeichert ist. Jedes Element einer Warteschlange qi weist eine spezifische Identifikati­ onsnummer auf. Durch die Identifikationsnummer ist ebenfalls das in dem betreffenden Element der Warteschlange qi abgeleg­ te Datenpaket charakterisiert.In Fig. 3, queue qi (i = 1,..., N) of a network node shown in which received in the network node since tenpakete be cached. In the present embodiment of the invention it is common to all data packets that they have the same data lengths. Each queue qi is assigned a data transmission rate with which the data packets stored in it are to be output from the network node. Furthermore, the queues qi are composed of individual elements, in each of which a data packet is stored. Each element of a queue qi has a specific identification number. The identification number also characterizes the data packet stored in the relevant element of the queue qi.

Die Identifikationsnummern der Datenpakete werden anhand der Datenübertragungsraten der zugehörigen Datenpakete in Gruppen qrk (k = 1, 2, 3) sortiert. Dabei werden die Identifikations­ nummern derjenigen Datenpakete, welche die gleichen Daten­ übertragungsraten aufweisen, derselben Gruppe qrk zugewiesen.The identification numbers of the data packets are based on the Data transfer rates of the associated data packets in groups qrk (k = 1, 2, 3) sorted. The identification number of those data packets that have the same data have transmission rates assigned to the same group qrk.

Jede Gruppe qrk enthält höchstens ein Datenpaket aus jeder Warteschlange qi. Erst sobald ein zu einer Warteschlange qi gehörendes Datenpaket aus dem Netzknoten ausgegeben wurde, kann die Identifikationsnummer des in der Warteschlange qi dem ausgegebenen Datenpaket nachfolgenden Datenpakets in die zugehörige Gruppe qrk aufgenommen werden.Each qrk group contains at most one data packet from each Queue qi. Only as soon as one goes to a queue qi belonging data packet was output from the network node, can identify the identification number of the queue qi the data packet following the output data packet into the associated group qrk can be included.

Die Motivation zur Bildung der Gruppen qrk ist die hohe Wahr­ scheinlichkeit, daß die Anzahl der unterschiedlichen Daten­ übertragungsraten und somit auch die Anzahl der Gruppen qrk wesentlich kleiner ist als die Anzahl Warteschlangen qi. Auf­ grund dessen kann der Algorithmus zum Versenden der Datenpa­ kete aus dem Netzknoten wesentlich schneller abgearbeitet werden.The motivation to form the qrk groups is the high truth probability that the number of different data transmission rates and thus also the number of groups qrk is significantly smaller than the number of queues qi. on therefore the algorithm for sending the data pa kete processed much faster from the network node become.

Das erfindungsgemäße Verfahren ist auf einen Netzknoten an­ wendbar, sofern die zu den Gruppen qrk gehörenden Datenüber­ tragungsraten jeweils ein ganzzahliges Vielfaches einer Ba­ sisdatenübertragungsrate r0 darstellen. Üblicherweise ist die Basisdatenübertragungsrate r0 die Datenübertragungsrate der Gruppe qrk mit der niedrigsten Datenübertragungsrate. In dem in Fig. 3 dargestellten Ausführungsbeispiel des erfindungsge­ mäßen Verfahrens weist die Gruppe qr1 die niedrigste Daten­ übertragungsrate auf. Die Datenübertragungsraten aller weite­ ren Gruppen qrk sind das k-fache der Basisdatenübertragungs­ rate r0. The method according to the invention can be applied to a network node, provided that the data transmission rates belonging to the groups qrk each represent an integer multiple of a basic data transmission rate r0. The basic data transfer rate r0 is usually the data transfer rate of the group qrk with the lowest data transfer rate. In the exemplary embodiment of the method according to the invention shown in FIG. 3, the group qr1 has the lowest data transmission rate. The data transfer rates of all other groups qrk are k times the basic data transfer rate r0.

Gemäß dem erfindungsgemäßen Verfahren werden die Identifika­ tionsnummern, welche die Gruppen qrk anführen, Elementen ei­ ner Übergruppe qü zugeordnet. Dazu werden aus jeder Gruppe qrk die k Identifikationsnummern, welche die zugehörige Grup­ pe qrk anführen, der Übergruppe qü zugeordnet. Beispielsweise weist das in Fig. 3 gezeigte Ausführungsbeispiel der Erfin­ dung die drei Gruppen qr1, qr2 und qr3 auf. Von der Gruppe qr1 wird die erste Identifikationsnummer, von der Gruppe qr2 werden die ersten zwei Identifikationsnummern und von der Gruppe qr3 werden die ersten drei Identifikationsnummern der Übergruppe qü zugeordnet. Durch diese Zuordnung ist die An­ zahl der Elemente der Übergruppe qü eindeutig bestimmt. In dem vorliegenden Ausführungsbeispiel umfaßt die Übergruppe qü sechs Elemente. Dabei kann vorgesehen sein, daß die Elemente der Übergruppe qü jeweils einer bestimmten Gruppe qrk fest zugeordnet sind. Anschließend wird ein Element der Übergruppe einer Zeittabelle C zugeordnet. Dort wird dem Element ein Ausgabezeitpunkt zugewiesen. Dieser Ausgabezeitpunkt wird an das zugehörige Datenpaket in einer der Warteschlangen qi wei­ tergeleitet und das betreffende Datenpaket wird zu dem zuge­ wiesenen Ausgabezeitpunkt aus dem Netzknoten ausgegeben. Da­ nach erhält das nächste Element der Übergruppe qü einen Aus­ gabezeitpunkt mittels der Zeittabelle C. Das vorliegende Ver­ fahren hat im Vergleich zu den in den Fig. 1 und 2 darge­ stellten Verfahren den Vorteil, daß die Komplexität der Zeit­ tabelle C sehr klein ist, da die Zeittabelle C in dem erfin­ dungsgemäßen Ausführungsbeispiel nur ein Element aufweist.According to the method according to the invention, the identification numbers leading the groups qrk are assigned to elements of a super group qü. For this purpose, the k identification numbers from each group qrk, which lead the associated group pe qrk, are assigned to the super group qü. For example, the embodiment of the invention shown in FIG. 3 has the three groups qr1, qr2 and qr3. From group qr1 the first identification number is assigned, from group qr2 the first two identification numbers and from group qr3 the first three identification numbers are assigned to super group qü. This assignment uniquely determines the number of elements of the super group qü. In the present embodiment, the subgroup qü comprises six elements. It can be provided that the elements of the supergroup qü are permanently assigned to a specific group qrk. Then an element of the super group is assigned to a time table C. There an output time is assigned to the element. This output time is forwarded to the associated data packet in one of the queues qi and the data packet in question is output from the network node at the assigned output time. Since then the next element of the supergroup qü receives an output time by means of the time table C. The present method has the advantage over the methods shown in FIGS . 1 and 2 that the complexity of the time table C is very small, since the time table C in the exemplary embodiment according to the invention has only one element.

Die Zuordnung zwischen der Übergruppe qü und der Zeittabelle C kann beispielsweise mittels eines Zeigers (Pointer) bewerk­ stelligt werden. Ein Zeiger ist eine Variable, die eine Adresse einer anderen Variablen im Speicher enthält. Über diese Adresse kann auf den Wert der anderen Variablen zuge­ griffen werden.The assignment between the super group qü and the time table C can be used, for example, by means of a pointer be made. A pointer is a variable, one Contains the address of another variable in memory. about this address can be assigned to the value of the other variable be gripped.

In dem vorliegenden Ausführungsbeispiel wird beispielsweise in einem ersten Zeitintervall ein zu der Gruppe qr1 gehören­ des Datenpaket ausgegeben. In einem zweiten Zeitintervall werden zwei Datenpakete der Gruppe qr2 ausgegeben und in ei­ nem dritten Zeitintervall erfolgt die Ausgabe von drei Daten­ paketen der Gruppe qr3. Danach wird wieder ein Datenpaket der Gruppe grl ausgegeben und der Zyklus wiederholt sich von neu­ em. Sämtliche Zeitintervalle weisen die gleichen Zeitlängen auf, da die Datenübertragungsraten der zu den Gruppen qr2 bzw. qr3 gehörenden Datenpakete das doppelte bzw. dreifache der Basisdatenübertragungsrate r0 betragen und alle Datenpa­ kete die gleichen Datenlängen aufweisen. Aufgrund dieser Ver­ einfachung des Algorithmus zur Steuerung der Ausgabe der Da­ tenpakete läßt sich eine sehr schnelle Ausgabe der Datenpake­ te aus dem Netzknoten erzielen.In the present embodiment, for example in a first time interval belong to the group qr1  of the data packet. In a second time interval two data packets of the group qr2 are output and in ei In the third time interval, three data are output packages of group qr3. After that, a data packet of the Group grl is output and the cycle repeats itself em. All time intervals have the same time lengths because the data transfer rates to the groups qr2 or qr3 belonging data packets double or triple the basic data transfer rate r0 and all data pa kete have the same data lengths. Because of this ver simplification of the algorithm for controlling the output of the Da The data packets can be output very quickly achieve te from the network node.

Es ist denkbar, daß die Zeittabelle C mehr als ein Element aufweist. Die weiteren Elemente der Zeittabelle C würden sich beispielsweise auf weitere Übergruppen, die mit weiteren War­ teschlangen assoziiert wären, beziehen. Mittels eines Zeigers könnten die Elemente der Zeittabelle angesteuert werden und ihnen Ausgabezeitpunkte zugewiesen werden. Dabei müßte ge­ währleistet sein, daß das Element der Zeittabelle C, welches der Zeiger zu einem bestimmten Zeitpunkt ansteuert, zu diesem Zeitpunkt eine gültige Zuordnung zu einem auszugebenden Da­ tenpaket aufweist. Um dieses Kriterium zu erfüllen, müßten alle vorhergehenden Verfahrensschritte mit der entsprechenden Geschwindigkeit vollzogen werden.It is conceivable that the time table C has more than one element having. The other elements of the time table C would for example, to other super groups that are associated with other war would be associated. Using a pointer the elements of the time table could be controlled and issue times are assigned to them. It should be ge ensures that the element of the time table C which the pointer drives at a certain point in time, at that point Time a valid assignment to a data to be output has tenpaket. To meet this criterion, would have to all previous process steps with the corresponding one Speed.

In dem Netzknoten können sich auch Datenpakete befinden, de­ nen eine Datenübertragungsrate zugewiesen ist, welche kein ganzzahliges Vielfaches der Basisdatenübertragungsrate r0 ist. Beispielsweise können die Datenübertragungsraten dieser Datenpakete ganzzahlige Vielfache weiterer Basisdatenübertra­ gungsraten sein. Neben der Basisdatenübertragungsrate r0 kön­ nen folglich weitere Basisdatenübertragungsraten vorhanden sein. Das Vorhandensein weiterer Basisdatenübertragungsraten führt zu weiteren Gruppen, weiteren Übergruppen und letztend­ lich zu weiteren Elementen der Zeittabelle C. Es können in dem Netzknoten des weiteren Datenpakete zwischengespeichert sein, deren Datenübertragungsraten sich keiner Basisdaten­ übertragungsrate zuordnen lassen. Die Ausgabe dieser Datenpa­ kete aus dem Netzknoten wird ebenfalls von der Zeittabelle C gesteuert. Beispielsweise kann dazu die betreffende Daten­ übertragungsrate als eine weitere Basisdatenübertragungsrate verstanden werden. Das bedeutet, daß durch das erfindungsge­ mäße Verfahren und den erfindungsgemäßen Netzknoten die Aus­ gabe sämtlicher Datenübertragungsraten, mit welchen die Da­ tenpakete behaftet sind, unterstützt wird.Data packets can also be located in the network node, de a data transfer rate is assigned which is not a integer multiple of the basic data transfer rate r0 is. For example, the data transfer rates of these Data packets integer multiples of further basic data transmission rates. In addition to the basic data transfer rate r0 consequently further basic data transmission rates are available his. The presence of further basic data transfer rates leads to more groups, more super groups and ultimately Lich to further elements of the time table C. In  the network node of the further data packets buffered be, whose data transfer rates are no basic data Allocate transfer rate. The output of this data pair kete from the network node is also from the time table C controlled. For example, the relevant data transfer rate as a further basic data transfer rate be understood. That means that through the fiction appropriate method and the network node according to the invention give all data transfer rates with which the Da packages are affected, is supported.

Claims (26)

1. Verfahren zur zeitlichen Steuerung der Ausgabe von Daten­ paketen aus einem Netzknoten, wobei die Datenpakete in dem Netzknoten in Warteschlangen (qi) zwischengespeichert vorlie­ gen und jeder Warteschlange (qi) eine Datenübertragungsrate für die in ihr befindlichen Datenpakete zugeordnet ist, und bei welchem folgende Schritte durchlaufen werden:
  • a) Sortieren einer Anzahl von Datenpaketen bzw. Sortieren von Identifikationsnummern von einer Anzahl von Datenpa­ keten in Gruppen (qrk), wobei
    • - Datenpakete mit gleichen Datenübertragungsraten bzw. deren Identifikationsnummern derselben Gruppe (qrk) zugewiesen werden, und
    • - die zu einer Gruppe (qrk) gehörende Datenübertra­ gungsrate das Produkt aus einem gruppenspezifischen Multiplikator und einer Basisdatenübertragungsrate (r0) ist; und
  • b) Zuweisen von Ausgabezeitpunkten aus dem Netzknoten zu den eine Gruppe (qrk) anführenden Datenpaketen bzw. zu den eine Gruppe (qrk) anführenden Identifikationsnum­ mern, wobei die Anzahl der Datenpakete einer Gruppe (qrk), denen Ausgabezeitpunkte zugewiesen werden, dem Multiplikator der Gruppe (qrk) entspricht, wobei der Schritt (b) entsprechend der Anzahl der Datenpakete ge­ gebenenfalls mehrfach durchgeführt wird.
1. A method for timing the output of data packets from a network node, the data packets being temporarily stored in the network node in queues (qi) and each queue (qi) being assigned a data transmission rate for the data packets in it, and the following Steps to go through:
  • a) Sorting a number of data packets or sorting identification numbers of a number of data packets in groups (qrk), wherein
    • - Data packets with the same data transfer rates or their identification numbers are assigned to the same group (qrk), and
    • - The data transfer rate belonging to a group (qrk) is the product of a group-specific multiplier and a basic data transfer rate (r0); and
  • b) assigning output times from the network node to the data packets leading a group (qrk) or to the identification numbers leading a group (qrk), the number of data packets of a group (qrk) to which output times are assigned being the multiplier of the group (qrk) corresponds, step (b) being carried out several times, depending on the number of data packets.
2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß der Schritt (b) folgende Teilschritte aufweist:
  • 1. Zuordnen der Identifikationsnummern der die Gruppen (qrk) anführenden Datenpakete bzw. der die Gruppen (qrk) anführenden Identifikationsnummern zu Elemen­ ten einer Übergruppe (qü), wobei
    • - jedem Element der Übergruppe (qü) die Identifika­ tionsnummer eines Datenpakets zugeordnet wird, und
    • - die Anzahl der Datenpakete einer Gruppe (qrk), de­ ren Identifikationsnummern der Übergruppe (qü) zu­ geordnet werden, bzw. die Anzahl der Identifikati­ onsnummern einer Gruppe (qrk), die der Übergruppe (qü) zugeordnet werden, dem Multiplikator der Gruppe (qrk) entspricht;
  • 2. Anweisen von Ausgabezeitpunkten an die Elemente der Übergruppe (qü); und
  • 3. Zuweisen der Ausgabezeitpunkte von den Elementen der Übergruppe (qü) zu den den Elementen zugehörigen Da­ tenpaketen.
2. The method according to claim 1, characterized in that step (b) has the following substeps:
  • 1. Assignment of the identification numbers of the data packets leading the groups (qrk) or of the identification numbers leading the groups (qrk) to elements of a super group (qü), whereby
    • - The identification number of a data packet is assigned to each element of the supergroup (qü), and
    • - The number of data packets of a group (qrk), whose identification numbers are assigned to the group (qü), or the number of identification numbers of a group (qrk) that are assigned to the group (qü), the multiplier of the group ( qrk) corresponds to;
  • 2. Assigning the time of issue to the elements of the super group (qü); and
  • 3. Assign the output times from the elements of the super group (qü) to the data packages belonging to the elements.
3. Verfahren nach Anspruch 2, dadurch gekennzeichnet, daß im Schritt (b2) mindestens ein Element der Übergruppe (qü) einem Element einer Zeittabelle (C) zugeordnet wird, in welcher dem mindestens einen Element ein Ausgabezeit­ punkt zugewiesen wird, und daß dieser Verfahrensschritt gegebenenfalls mit weiteren Elementen der Übergruppe (qü) durchgeführt wird.3. The method according to claim 2, characterized, that in step (b2) at least one element of the supergroup (qü) is assigned to an element of a time table (C), in which the at least one item has an issue time point is assigned, and that this step possibly with other elements of the supergroup (qü) is carried out. 4. Verfahren nach einem oder mehreren der vorhergehenden An­ sprüche, dadurch gekennzeichnet, daß als Basisdatenübertragungsrate (r0) die Datenübertra­ gungsrate der Gruppe (qrk) verwendet wird, welche die niedrigste Datenübertragungsrate aufweist.4. The method according to one or more of the preceding An claims, characterized, that as the basic data transfer rate (r0) the data transfer gation rate of the group (qrk) is used, which the has the lowest data transfer rate. 5. Verfahren nach einem oder mehreren der vorhergehenden An­ sprüche, dadurch gekennzeichnet, daß sich in jeder Gruppe (qrk) höchstens ein Datenpaket aus derselben Warteschlange (qi) befindet.5. The method according to one or more of the preceding An claims, characterized, that there is at most one data packet in each group (qrk) from the same queue (qi). 6. Verfahren nach einem oder mehreren der vorhergehenden An­ sprüche, dadurch gekennzeichnet, daß die Datenpakete bzw. deren Identifikationsnummern, die in den Warteschlangen (qi) an vorderster Stelle stehen, in die Gruppen (qrk) sortiert werden.6. The method according to one or more of the preceding An claims, characterized,  that the data packets or their identification numbers, the are at the top of the queues (qi), in the groups (qrk) are sorted. 7. Verfahren nach einem oder mehreren der vorhergehenden An­ sprüche, dadurch gekennzeichnet, daß jedem Element der Übergruppe (qü) ein Element einer Gruppe (qrk) eineindeutig zugeordnet ist.7. The method according to one or more of the preceding An claims, characterized, that each element of the supergroup (qü) has an element of a Group (qrk) is uniquely assigned. 8. Verfahren nach einem oder mehreren der vorhergehenden An­ sprüche, dadurch gekennzeichnet, daß die Zuordnung eines Elements der Übergruppe (qü) zu der Zeittabelle (C) mittels eines Zeigers vollzogen wird.8. The method according to one or more of the preceding An claims, characterized, that the assignment of an element of the supergroup (qü) to the time table (C) is carried out by means of a pointer. 9. Verfahren nach einem oder mehreren der vorhergehenden An­ sprüche, dadurch gekennzeichnet, daß die Datenpakete Zellen mit einer festen Datenlänge sind.9. The method according to one or more of the preceding An claims, characterized, that the data packets cells with a fixed data length are. 10. Verfahren nach einem oder mehreren der vorhergehenden An­ sprüche, dadurch gekennzeichnet, daß die Datenpakete in Datenströmen in den Netzknoten ein­ gehen.10. The method according to one or more of the preceding An claims, characterized, that the data packets in data streams in the network node go. 11. Verfahren nach Anspruch 10, dadurch gekennzeichnet, daß in den Warteschlangen (qi) jeweils eine Mehrzahl von Datenströmen zwischenspeicherbar sind.11. The method according to claim 10, characterized, that in the queues (qi) a plurality of Data streams can be buffered. 12. Verfahren nach einem oder mehreren der vorhergehenden An­ sprüche, dadurch gekennzeichnet, daß der Netzknoten ein ATM-Knoten ist. 12. The method according to one or more of the preceding An claims, characterized, that the network node is an ATM node.   13. Verfahren nach einem oder mehreren der vorhergehenden An­ sprüche, dadurch gekennzeichnet, daß der Netzknoten ein Router oder ein Gateway oder ein Switch oder eine Bridge oder ein Hub ist.13. The method according to one or more of the preceding An claims, characterized, that the network node is a router or a gateway or a Switch or a bridge or a hub. 14. Netzknoten, mit
mindestens einem Pufferspeicher zum Zwischenspeichern von in den Netzknoten eingegangenen Datenpaketen in Warte­ schlangen (qi), wobei jeder Warteschlange (qi) eine Daten­ übertragungsrate für die in ihr befindlichen Datenpakete zugeordnet ist,
ersten Mitteln zum Sortieren der Datenpakete bzw. von Identifikationsnummern der Datenpakete in Gruppen (qrk), wobei die ersten Mittel derart ausgelegt sind, daß sie Da­ tenpakete mit gleichen Datenübertragungsraten bzw. deren Identifikationsnummern derselben Gruppe (qrk) zuweisen, wobei die zu einer Gruppe (qrk) gehörende Datenübertra­ gungsrate das Produkt aus einem gruppenspezifischen Multi­ plikator und einer Basisdatenübertragungsrate (r0) ist, und
zweiten Mitteln zum Anweisen von Ausgabezeitpunkten aus dem Netzknoten an die eine Gruppe (qrk) anführenden Daten­ pakete bzw. an die eine Gruppe (qrk) anführenden Identifi­ kationsnummern, wobei die Anzahl der in einem Zyklus aus­ zugebenden Datenpakete einer Gruppe (qrk) dem Multiplika­ tor der Gruppe (qrk) entspricht.
14. Network node, with
at least one buffer memory for temporarily storing data packets received in the network nodes in queues (qi), each queue (qi) being assigned a data transfer rate for the data packets located therein,
first means for sorting the data packets or identification numbers of the data packets into groups (qrk), the first means being designed in such a way that they assign data packets with the same data transmission rates or their identification numbers to the same group (qrk), whereby the to a group ( qrk) belonging data transfer rate is the product of a group-specific multiplier and a basic data transfer rate (r0), and
second means for instructing output times from the network node to the data packets leading a group (qrk) or to the identification numbers leading to a group (qrk), the number of data packets to be output in one cycle from a group (qrk) to the multiplier corresponds to the group (qrk).
15. Netzknoten nach Anspruch 14, dadurch gekennzeichnet,
  • - daß die zweiten Mittel folgende Mittel aufweisen:
  • - dritte Mittel zum Zuordnen der Identifikationsnummern der die Gruppen (qrk) anführenden Datenpakete bzw. der die Gruppen (qrk) anführenden Identifikationsnummern zu Elementen einer Übergruppe (qü), wobei
  • - jedem Element der Übergruppe (qü) die Identifikati­ onsnummer eines Datenpakets zuordnungsbar ist, und
  • - die Anzahl der Datenpakete einer Gruppe (qrk), deren Identifikationsnummern der Übergruppe (qü) zugeordnet werden, bzw. die Anzahl der Identifikationsnummern einer Gruppe (qrk), die der Übergruppe (qü) zugeord­ net werden, dem Multiplikator der Gruppe (qrk) ent­ spricht,
  • - vierte Mittel zum Anweisen von Ausgabezeitpunkten an die Elemente der Übergruppe (qü), und
  • - fünfte Mittel zum Zuweisen der Ausgabezeitpunkte von den Elementen der Übergruppe (qü) zu den den Elementen zugehörigen Datenpaketen.
15. Network node according to claim 14, characterized in
  • - that the second means have the following means:
  • - Third means for assigning the identification numbers of the data packets leading the groups (qrk) or the identification numbers leading the groups (qrk) to elements of a supergroup (qü), wherein
  • - The identification number of a data packet can be assigned to each element of the supergroup (qü), and
  • - the number of data packets of a group (qrk), whose identification numbers are assigned to the super group (qü), or the number of identification numbers of a group (qrk), which are assigned to the super group (qü), the multiplier of the group (qrk) speaks,
  • - fourth means for instructing output times on the elements of the supergroup (qü), and
  • - fifth means for assigning the output times from the elements of the supergroup (qü) to the data packets belonging to the elements.
16. Netzknoten nach Anspruch 15, dadurch gekennzeichnet, daß die vierten Mittel derart ausgelegt sind, daß sie min­ destens ein Element der Übergruppe (qü) einem Element ei­ ner Zeittabelle (C) zuordnen, in welcher dem mindestens einen Element ein Ausgabezeitpunkt zugewiesen wird, und daß sie gegebenenfalls eine analoge Zuordnung mit den wei­ teren Elementen der Übergruppe (qü) durchführen.16. The network node according to claim 15, characterized, that the fourth means are designed so that they min at least one element of the supergroup (qü) an element egg Assign time table (C) in which the at least an element is assigned an output time, and that they may have an analog assignment with the white Perform other elements of the super group (qü). 17. Netzknoten nach einem oder mehreren der Ansprüche 14 bis 16, dadurch gekennzeichnet, daß die Basisdatenübertragungsrate (r0) die Datenübertra­ gungsrate der Gruppe (qrk) ist, welche die niedrigste Da­ tenübertragungsrate aufweist.17. Network node according to one or more of claims 14 to 16 characterized, that the basic data transfer rate (r0) the data transfer group (qrk), which is the lowest Da transmission rate. 18. Netzknoten nach einem oder mehreren der Ansprüche 14 bis 17, dadurch gekennzeichnet, daß sich in jeder Gruppe (qrk) höchstens ein Datenpaket aus derselben Warteschlange (qi) befindet. 18. Network node according to one or more of claims 14 to 17 characterized, that there is at most one data packet in each group (qrk) from the same queue (qi).   19. Netzknoten nach einem oder mehreren der Ansprüche 14 bis 18, dadurch gekennzeichnet, daß die Datenpakete bzw. deren Identifikationsnummern, die in den Warteschlangen (qi) an vorderster Stelle stehen, in die Gruppen (qrk) sortiert werden.19. Network node according to one or more of claims 14 to 18 characterized, that the data packets or their identification numbers, the are at the top of the queues (qi), in the groups (qrk) are sorted. 20. Netzknoten nach einem oder mehreren der Ansprüche 14 bis 19, dadurch gekennzeichnet, daß jedem Element der Übergruppe (qü) ein Element einer Gruppe (qrk) eineindeutig zugeordnet ist.20. Network node according to one or more of claims 14 to 19 characterized, that each element of the supergroup (qü) has an element of a Group (qrk) is uniquely assigned. 21. Netzknoten nach einem oder mehreren der Ansprüche 14 bis 20, dadurch gekennzeichnet, daß die Zuordnung eines Elements der Übergruppe (qü) zu der Zeittabelle (C) mittels eines Zeigers vollziehbar ist.21. Network node according to one or more of claims 14 to 20 characterized, that the assignment of an element of the supergroup (qü) to the time table (C) is executable by means of a pointer. 22. Netzknoten nach einem oder mehreren der Ansprüche 14 bis 21, dadurch gekennzeichnet, daß die Datenpakete Zellen mit einer festen Datenlänge sind.22. Network node according to one or more of claims 14 to 21 characterized, that the data packets cells with a fixed data length are. 23. Netzknoten nach einem oder mehreren der Ansprüche 14 bis 22, dadurch gekennzeichnet, daß die Datenpakete in Datenströmen in den Netzknoten ein­ gehen.23. Network node according to one or more of claims 14 to 22 characterized, that the data packets in data streams in the network node go. 24. Netzknoten nach Anspruch 23, dadurch gekennzeichnet, daß in den Warteschlangen (qi) jeweils eine Mehrzahl von Datenströmen zwischenspeicherbar sind. 24. Network node according to claim 23, characterized, that in the queues (qi) a plurality of Data streams can be buffered.   25. Netzknoten nach einem oder mehreren der Ansprüche 14 bis 24, dadurch gekennzeichnet, daß der Netzknoten ein ATM-Knoten ist.25. Network node according to one or more of claims 14 to 24 characterized, that the network node is an ATM node. 26. Netzknoten nach einem oder mehreren der Ansprüche 14 bis 25, dadurch gekennzeichnet, daß der Netzknoten ein Router oder ein Gateway oder ein Switch oder eine Bridge oder ein Hub ist.26. Network node according to one or more of claims 14 to 25 characterized, that the network node is a router or a gateway or a Switch or a bridge or a hub.
DE10125337A 2001-05-23 2001-05-23 Packet data transfer method for controlling for a network node in which data packets are grouped according to their data transfer rate before transmission at an assigned time so that overall data transfer rates increase Ceased DE10125337A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE10125337A DE10125337A1 (en) 2001-05-23 2001-05-23 Packet data transfer method for controlling for a network node in which data packets are grouped according to their data transfer rate before transmission at an assigned time so that overall data transfer rates increase

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE10125337A DE10125337A1 (en) 2001-05-23 2001-05-23 Packet data transfer method for controlling for a network node in which data packets are grouped according to their data transfer rate before transmission at an assigned time so that overall data transfer rates increase

Publications (1)

Publication Number Publication Date
DE10125337A1 true DE10125337A1 (en) 2002-07-18

Family

ID=7685990

Family Applications (1)

Application Number Title Priority Date Filing Date
DE10125337A Ceased DE10125337A1 (en) 2001-05-23 2001-05-23 Packet data transfer method for controlling for a network node in which data packets are grouped according to their data transfer rate before transmission at an assigned time so that overall data transfer rates increase

Country Status (1)

Country Link
DE (1) DE10125337A1 (en)

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5757771A (en) * 1995-11-14 1998-05-26 Yurie Systems, Inc. Queue management to serve variable and constant bit rate traffic at multiple quality of service levels in a ATM switch
DE19653118A1 (en) * 1996-12-19 1998-06-25 Siemens Ag Method for the optimized transmission of ATM cells over connection sections
WO1998035485A2 (en) * 1997-02-11 1998-08-13 Telefonaktiebolaget Lm Ericsson (Publ) A mobile telecommunications unit and system and a method relating thereto
DE19737852A1 (en) * 1997-08-29 1999-03-04 Siemens Ag Method and circuit arrangement for transmitting message units in message streams of different priority
US5920568A (en) * 1996-06-17 1999-07-06 Fujitsu Limited Scheduling apparatus and scheduling method
WO1999053656A1 (en) * 1998-04-14 1999-10-21 Core El Microsystems Asynchronous transfer mode traffic shapers
US6052375A (en) * 1997-11-26 2000-04-18 International Business Machines Corporation High speed internetworking traffic scaler and shaper
DE19957544A1 (en) * 1998-11-30 2000-07-06 Nec Corp Asynchronous transfer mode telecommunication control apparatus stores virtual packet, virtual code and look-up tables in control memory so that forwarding rate control of each virtual packet is performed
US6134217A (en) * 1996-04-15 2000-10-17 The Regents Of The University Of California Traffic scheduling system and method for packet-switched networks with fairness and low latency

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5757771A (en) * 1995-11-14 1998-05-26 Yurie Systems, Inc. Queue management to serve variable and constant bit rate traffic at multiple quality of service levels in a ATM switch
US6134217A (en) * 1996-04-15 2000-10-17 The Regents Of The University Of California Traffic scheduling system and method for packet-switched networks with fairness and low latency
US5920568A (en) * 1996-06-17 1999-07-06 Fujitsu Limited Scheduling apparatus and scheduling method
DE19653118A1 (en) * 1996-12-19 1998-06-25 Siemens Ag Method for the optimized transmission of ATM cells over connection sections
WO1998035485A2 (en) * 1997-02-11 1998-08-13 Telefonaktiebolaget Lm Ericsson (Publ) A mobile telecommunications unit and system and a method relating thereto
DE19737852A1 (en) * 1997-08-29 1999-03-04 Siemens Ag Method and circuit arrangement for transmitting message units in message streams of different priority
US6052375A (en) * 1997-11-26 2000-04-18 International Business Machines Corporation High speed internetworking traffic scaler and shaper
WO1999053656A1 (en) * 1998-04-14 1999-10-21 Core El Microsystems Asynchronous transfer mode traffic shapers
DE19957544A1 (en) * 1998-11-30 2000-07-06 Nec Corp Asynchronous transfer mode telecommunication control apparatus stores virtual packet, virtual code and look-up tables in control memory so that forwarding rate control of each virtual packet is performed

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
KORNAROS, G., KOZYRAKIS, C., VATSOLAKI, P., KATEVENIS, M.: "Pipelined Multi-Queue Management in a VLSI ATM Switch Chip with Credit-Based Flow Control" Proc. of 17th Conf. on Advanced Research in VLSI, Univ. of Michigan, Ann Arbor, Sept. 1997 http://www.ics.forth.gr/proj/arch-vlsi/atlasI/ atlasI arvlsi97.pdf *

Similar Documents

Publication Publication Date Title
DE60110760T2 (en) ELITE DISPOSAL CONTROL FOR NON-CONSISTENT FOLLOWING DATA
DE60119866T2 (en) Switching device and method with separate output buffers
DE60038600T2 (en) Network data transmission arbitration methods and apparatus for determining a packet transmission priority between a plurality of data streams
DE19634492B4 (en) Method for the optimized transmission of ATM cells over connection sections
EP0847165A1 (en) Digital data transmission network and method for operating a data transmission network
DE19745020A1 (en) Data traffic control method for ATM network
DE60130383T2 (en) Method for delay-balanced allocation of time slots and device for point-to-multipoint communication networks
EP1433352A1 (en) Distributed transmission of traffic flows in communication networks
DE69817672T2 (en) Device for sorting data elements in a binary tree and an ATM spacer with such a device
EP0730361A2 (en) Circuitry for intake and transfer of data packets on an ATM communication network
DE60300827T2 (en) Communication system and method with a queuing device per service
DE10062640B4 (en) Method for timing the output of data packets from network nodes, network nodes and configured network
DE10052904B4 (en) Queuing method for forwarding packets in sequence
EP0711055B1 (en) Method and apparatus for measuring characteristic parameters of a flow of fixed length data packets in a digital transmission system
DE10125337A1 (en) Packet data transfer method for controlling for a network node in which data packets are grouped according to their data transfer rate before transmission at an assigned time so that overall data transfer rates increase
DE10142460A1 (en) Distribution of weights between port control and switching units of a packet switching device
EP0960551B1 (en) Method and circuit for transmitting information cells during virtual linking with various priorities
DE69830948T2 (en) ATM cell positioning system
EP0509126B1 (en) Message routing method towards target addresses in a multi-stage network through routing elements
EP1313268B1 (en) Router
EP0916231B1 (en) Process for optimising load distribution between connection sections of data package transmission systems
EP1283624A2 (en) Prescribed calculation that works parallel an iterative for the avoidance of data packets
EP0589288A2 (en) Method for multiplexing virtual channels on a transmission line
EP1358735A2 (en) Unit for distributing and processing data packets
DE10130749A1 (en) Packet switching device with feedback coupling for allocation unit has port controller for storing, arranging packets in queues, generating queue state feedback information units for allocation unit

Legal Events

Date Code Title Description
OAV Applicant agreed to the publication of the unexamined application as to paragraph 31 lit. 2 z1
OP8 Request for examination as to paragraph 44 patent law
8131 Rejection