DE10119754B4 - Verfahren und Vorrichtung zum Speichern von Datenpaketen - Google Patents

Verfahren und Vorrichtung zum Speichern von Datenpaketen Download PDF

Info

Publication number
DE10119754B4
DE10119754B4 DE10119754A DE10119754A DE10119754B4 DE 10119754 B4 DE10119754 B4 DE 10119754B4 DE 10119754 A DE10119754 A DE 10119754A DE 10119754 A DE10119754 A DE 10119754A DE 10119754 B4 DE10119754 B4 DE 10119754B4
Authority
DE
Germany
Prior art keywords
data
transmission format
memory
data packet
data transmission
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.)
Expired - Fee Related
Application number
DE10119754A
Other languages
English (en)
Other versions
DE10119754A1 (de
Inventor
Xiaoning Dr. 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 DE10119754A priority Critical patent/DE10119754B4/de
Priority to US10/128,207 priority patent/US7327755B2/en
Publication of DE10119754A1 publication Critical patent/DE10119754A1/de
Application granted granted Critical
Publication of DE10119754B4 publication Critical patent/DE10119754B4/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q11/00Selecting arrangements for multiplex systems
    • H04Q11/04Selecting arrangements for multiplex systems for time-division multiplexing
    • H04Q11/0428Integrated services digital network, i.e. systems for transmission of different types of digitised signals, e.g. speech, data, telecentral, television signals
    • H04Q11/0478Provisions for broadband connections
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/90Buffering arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/90Buffering arrangements
    • H04L49/901Buffering arrangements using storage descriptor, e.g. read or write pointers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/54Store-and-forward switching systems 
    • H04L12/56Packet switching systems
    • H04L12/5601Transfer mode dependent, e.g. ATM
    • H04L2012/5638Services, e.g. multimedia, GOS, QOS
    • H04L2012/5646Cell characteristics, e.g. loss, delay, jitter, sequence integrity
    • H04L2012/5652Cell construction, e.g. including header, packetisation, depacketisation, assembly, reassembly
    • H04L2012/5653Cell construction, e.g. including header, packetisation, depacketisation, assembly, reassembly using the ATM adaptation layer [AAL]
    • H04L2012/5658Cell construction, e.g. including header, packetisation, depacketisation, assembly, reassembly using the ATM adaptation layer [AAL] using the AAL5
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/54Store-and-forward switching systems 
    • H04L12/56Packet switching systems
    • H04L12/5601Transfer mode dependent, e.g. ATM
    • H04L2012/5638Services, e.g. multimedia, GOS, QOS
    • H04L2012/5665Interaction of ATM with other protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/54Store-and-forward switching systems 
    • H04L12/56Packet switching systems
    • H04L12/5601Transfer mode dependent, e.g. ATM
    • H04L2012/5678Traffic aspects, e.g. arbitration, load balancing, smoothing, buffer management
    • H04L2012/5681Buffer or queue management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/08Protocols for interworking; Protocol conversion
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/18Multiprotocol handlers, e.g. single devices capable of handling multiple protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/22Parsing or analysis of headers

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

Verfahren zum Vermitteln von Datenpaketen,
wobei die Daten eines in einem ersten Datenübertragungsformat vorliegenden und an einen Empfänger weiterzuleitenden Datenpakets in einem Speicher (1), der in Speicherblöcke (7) gleicher Größe unterteilt ist, zwischengespeichert werden,
wobei dem weiterzuleitenden Datenpaket ein Deskriptor (8) zugeordnet wird, welcher in Abhängigkeit von dem Typ des ersten Datenübertragungsformats generiert wird und ein Datenfeld (14) mit einem Verweis auf die Startadressen derjenigen Speicherblöcke (7) des Speichers (1), in denen die Daten des Datenpakets zu speichern sind, und ein Datenfeld (9), welches das erste Datenübertragungsformat des an den Empfänger weiterzuleitenden Datenpakets beschreibt, umfasst,
wobei die Daten des Datenpakets unter Verwendung des Deskriptors (8) in dem Speicher (1) zwischengespeichert und anschließend auf mindestens ein Datenpaket mit einem zweiten Datenübertragungsformat umgesetzt und an den Empfänger weitergeleitet werden.

Description

  • Die vorliegende Erfindung betrifft ein Verfahren sowie eine entsprechend ausgestaltete Vorrichtung zum Speichern von Nachrichten- oder Datenpaketen, welche in einem bestimmten Datenübertragungsformat vorliegen und in einem Kommunikationsnetz von einem Sender an einen gewünschten Empfänger zu übertragen bzw. zu vermitteln sind.
  • Zur Übertragung bzw. Vermittlung von Nachrichten werden in modernen Telekommunikationsnetzen die Nachrichten in mehrere Einheiten bzw. Datenpakete zerlegt. Jedes dieser Datenpakete ist dabei üblicherweise mit einem Kopffeld ("Header") und einem Informationsfeld, welches die eigentliche Nachrichten- oder Nutzinformation ("Payload") enthält, versehen. Zudem kann ein Endfeld ("Trailer") als Abschluss des jeweiligen Datenpakets vorgesehen sein.
  • Die für die Vermittlung ("Routing") eines Datenpakets erforderliche Information ist in der Regel in dem Kopffeld des jeweiligen Datenpakets enthalten. Ein beispielsweise in einem MAC-Frame ("Medium Access Control") übertragenes Ethernet-Datenpaket (welches nachfolgend der Einfachheit halber als eMAC-Datenpaket bezeichnet wird) weist z. B. im Kopffeld die Ursprungsadresse ("Source Address") und die Zieladresse ("Destination Address") der zu übermittelnden Nachricht auf. Die Zieladresse des Datenpakets wird in jedem Knotenpunkt des entsprechenden Kommunikationsnetzes ausgewertet, um davon abhängig den bestmöglichen Vermittlungspfad zu dem gewünschten Empfänger zu ermitteln.
  • Ein eMAC-Datenpaket umfasst zudem ein IP-Paket ("Internet Protocol"), wobei ein derartiges IP-Paket bis zu 60.000 Bytes umfassen kann. In Vermittlungsknoten eines Kommunikationsnetzes kann das Problem auftreten, dass ein in einem bestimmten Datenpaketformat vorliegendes eingehendes Datenpaket ausgangsseitig auf ein oder mehrere Datenpakete eines anderen Datenpaketformats abgebildet werden muss. Während eine Ethernet-Vermittlung vorzugsweise in lokalen Netzen Anwendung findet, wird beispielsweise in moderneren Breitband-ISDN-Kommunikationsnetzen ("Broadband Integrated Services Digital Network") eine ATM-Vermittlung ("Asynchronous Transfer Mode") verwendet. Bei der ATM-Vermittlung werden die zu übertragenden Nachrichten in Form von Datenpaketen konstanter Länge, sog. ATM-Zellen, übertragen, wobei die Vermittlung der ATM-Zellen anhand von Identifikatoren in den Zellköpfen bzw. Kopffeldern erfolgt. Eine Besonderheit der ATM-Vermittlung ist die Tatsache, dass jede ATM-Zelle stets 53 Bytes umfasst und sich aus einem Kopffeld ("Header") mit 5 Bytes und einem Informationsfeld ("Payload") mit 48 Bytes zusammensetzt. In einem Vermittlungsknoten eines Kommunikationsnetzes, welcher sowohl eine eMAC- oder IP-Schnittstelle als auch eine ATM-Schnittstelle aufweist, besteht somit das Problem, die Daten eines eingehenden IP-Pakets, welche bis zu 60.000 Bytes umfassen können, ausgangsseitig auf die relativ kurzen ATM-Zellen, welche jeweils lediglich 48 Bytes an Nutzinformation umfassen können, abzubilden.
  • Aus der WO 99/65193 ist ein Switch zur Übertragung von Datenpaketen zwischen einer Vielzahl von lokalen Netzwerken (LAN) bekannt. Zur Zwischenspeicherung der Datenpaketen werden Deskriptoren generiert, welche auf diejenigen Pufferspeicher zeigen, in welchen die Datenpakete gespeichert sind.
  • Aus der US 6,148,082 ist eine Vorrichtung zum Remultiplexen mehrerer „Transport Streams", welche insbesondere MPEG-2 Transport Streams sein können, offenbart. Auch hier werden zum Zwischenspeichern Deskriptoren verwendet, welche Zeiger auf Speicherorte umfassen.
  • Aus der EP 0 752 780 ist ein Verfahren und eine Vorrichtung zum Übertragen von Datenpaketen aus einem Computersystem in ein Netzwerk offenbart, welche es ermöglicht, Datenpakete an verschiedenen Speicherorten zu speichern. Die Information, welche Teile eines Datenpakets wo gespeichert sind, werden in Deskriptoren abgelegt.
  • In Vermittlungsknoten bzw. Vermittlungseinrichtungen, wie z. B. Routern oder Switches, ist es daher erforderlich, die Daten eines eingehenden Datenpakets in einem Pufferspeicher ("Buffer") zwischenzuspeichern. Da für die Vermittlung von Datenpaketen in Kommunikationsnetzen vorwiegend die in den Kopffeldern der einzelnen Datenpakten enthaltene Routinginformation von Bedeutung ist, wird in der Regel das Kopffeld über einen schnellen Datenpfad verarbeitet, während die wesentlich umfangreichere Nutzinformation des Informationsfelds eines eingehenden Datenpakets unter Umständen einer äußerst umfangreichen Datenverarbeitung mit der zuvor erwähnten Zwischenspeicherung unterzogen werden muss, um die Abbildung auf das gewünschte ausgangsseitige Datenübertragungsformat zu ermöglichen.
  • Dabei besteht grundsätzlich das Bedürfnis nach einem Verfahren bzw. eine entsprechend ausgestaltete Vorrichtung, womit Datenpakete unterschiedlicher Datenübertragungsformate möglichst einfach, d.h. mit möglichst geringem Speicherbedarf und möglichst wenigen Speicherzugriffen, abgespeichert werden können.
  • Diese Aufgabe wird erfindungsgemäß durch ein Verfahren mit den Merkmalen des Anspruches 1 bzw. eine Vorrichtung mit den Merkmalen des Anspruchs 18 gelöst. Die Unteransprüche definieren jeweils bevorzugte und vorteilhafte Ausführungsformen der vorliegenden Erfindung.
  • Die Erfindung stellt ein Verfahren und eine Vorrichtung zum Vermitteln von Datenpaketen bereit, wobei die Daten, insbesondere die Payload-Daten eines in einem ersten Datenübertragungsformat vorliegenden und an einen Empfänger weiterzulei tenden Datenpakets in einem Speicher, der in Speicherblöcke gleicher Größe unterteilt ist, zwischengespeichert werden. Für jedes zu speichernde Datenpaket wird in Abhängigkeit von dem Typ des ersten Datenübertragungsformats ein Deskriptor generiert, welcher ein Datenfeld mit einem Verweis auf die Startadressen derjenigen Speicherblöcke des Speichers, in denen die Daten des Datenpakets zu speichern sind, und ein Datenfeld, welches das erste Datenübertragungsformat des an den Empfänger weiterzuleitenden Datenpakets beschreibt, umfasst. Die Daten des Datenpakets werden unter Verwendung des Deskriptors in dem Speicher zwischengespeichert und anschließend auf mindestens ein Datenpaket mit einem zweiten Datenübertragungsformat umgesetzt und an den Empfänger weitergeleitet.
  • Der Deskriptor ist vorteilhafterweise bevorzugt aus 32Bit-Datenwörtern/Datenfeldern aufgebaut.
  • Darüber hinaus kann der Deskriptor ein Datenfeld umfassen, welches Auskunft über die Anzahl der durch das jeweilige Datenpaket belegten Speicherblöcke des Speichers gibt. Diesbezüglich kann ein Iterator verwendet werden, welcher einerseits die Anzahl der insgesamt von dem Datenpaket belegten Speicherblöcke bezeichnet und andererseits eine Laufvariable beinhaltet, die wäh rend des Speicherns des jeweiligen Datenpakets mit dem jeweils verwendeten Speicherblock inkrementiert wird.
  • Während des Speicherns der Daten eines Datenpakets kann jeder Speicherblock beginnend bei seiner Startadresse und/oder endend bei seiner Endadresse beschrieben werden. Darüber hinaus ist es jedoch auch möglich, dass jeder Speicherblock beginnend bei einem bestimmten Adressenoffset bezogen auf seine Startadresse und/oder bis zu einem bestimmten Adressenoffset bezogen auf seine Endadresse beschrieben wird. Zu diesem Zweck kann der beim Speichern der Daten eines Datenpakets verwendete Deskriptor einen Zeiger aufweisen, welcher auf diejenige Adresse eines Speicherblocks verweist, bei der tatsächlich mit dem Speichern begonnen werden soll. Ebenso kann der Deskriptor einen Zeiger aufweisen, welcher auf diejenige Adresse eines Speicherblocks verweist, bis zu welcher tatsächlich die Daten in den jeweiligen Speicherblock geschrieben werden sollen.
  • Durch Verwendung der erfindungsgemäß vorgeschlagenen Datenstruktur bzw. des erfindungsgemäß vorgeschlagenen Deskriptors kann die Verarbeitung der Daten des zu speichernden Datenpakets von dem physikalischen Speichervorgang entkoppelt werden. Durch die Verwendung eines Speichers mit Speicherblöcken fester bzw. identischer Speicherkapazität wird sichergestellt, dass variabel stets nur diejenige Gesamtspeicherkapazität des Speichers reserviert werden kann, welche tatsächlich zum Speichern des jeweiligen Datenpakets benötigt wird. Somit können problemlos Datenpakete unterschiedlicher Länge bzw. unterschiedlichen Umfangs in ein und demselben Speicher abgelegt werden. Durch die Verwendung eines Pointer Arrays ist eine einfachere Verarbeitung der Daten und eine einfachere Adressierung der benötigten Speicherblöcke möglich. Zudem wird die Freigabe nicht mehr gebrauchter Speicherblöcke einfacher ("Garbage Collection").
  • Die vorliegende Erfindung eignet sich allgemein zur Verarbeitung bzw. Speicherung von Datenpaketen unterschiedlicher Datenübertragungsformate, wie beispielsweise eMAC-, IP-, MPLS ("Multi Protocol Label Switch")- oder AAL5-Datenpaketen.
  • Besonders vorteilhaft ist es, wenn die Speicherkapazität der einzelnen Speicherblöcke des zum Speichern der Datenpakete verwendeten Speichers eine Kapazität aufweisen, welche dem Umfang des Informationsfelds ("Payload") einer ATM-Zelle entsprechen und somit 48 Bytes umfassen. In diesem Fall kann die Nutzinformation einer ATM-Zelle bereits in einem einzigen Speicherblock gespeichert werden, wodurch sich der Aufbau des benötigten Deskriptors deutlich vereinfacht.
  • Die Erfindung eignet sich allgemein zum Einsatz in allen Anwendungsbereichen, wo Datenpakete, insbesondere Datenpakete mit unterschiedlichen Datenübertragungsformaten, zu speichern sind, wobei die vorliegende Erfindung insbesondere in Telekommunikationsvermittlungseinrichtungen, wie z. B. in Form von Netzwerkprozessoren auf sog. Linecards für Switches oder Router zum Einsatz kommen kann. Insbesondere ist die vorliegende Erfindung zum Einsatz in Telekommunikationsvermittlungseinrichtungen geeignet, welche über Schnittstellen für unterschiedliche Datenübertragungsformate, wie beispielsweise über eine Ethernet-, IP-, MPLS- oder ATM-Schnittstelle, verfügen, um die Daten eines mit einem bestimmten Datenübertragungsformat empfangenen Datenpakets auf mindestens ein Datenpaket mit einem anderen Datenübertragungsformat abzubilden, welches an den gewünschten Empfänger weiter vermittelt werden soll.
  • Die vorliegende Erfindung wird nachfolgend näher unter Bezugnahme auf die Zeichnung anhand bevorzugter Ausführungsbeispiele beschrieben.
  • 1 zeigt ein vereinfachtes Blockschaltbild einer Telekommunikationsvermittlungseinrichtung mit einer erfindungsgemäßen Vorrichtung zum Speichern der Daten von Datenpakten unterschiedlicher Datenübertragungsformate,
  • 2 zeigt einen möglichen Aufbau eines zum Speichern eines eMAC-Datenpakets erfindungsgemäß verwendeten Deskriptors,
  • 3 zeigt eine Darstellung zur Erläuterung des Aufbaus eines zum Speichern einer ATM-Zelle erfindungsgemäß verwendeten Deskriptors,
  • 4 zeigt eine Darstellung zur Erläuterung des Aufbaus eines zum Speichern eines AAL5-Datenpakets erfindungsgemäß verwendeten Deskriptors, und
  • 5 zeigt eine Darstellung zur Erläuterung des Aufbaus eines zum Speichern eines MPLS-Datenpakets erfindungsgemäß verwendeten Deskriptors.
  • In 1 ist in Form eines stark vereinfachten Blockschaltbilds der Aufbau einer erfindungsgemäßen Vorrichtung dargestellt, wie sie beispielsweise in einem Router oder Switch eines Telekommunikationsnetzes zum Einsatz kommen kann. Ein wesentlicher Bestandteil ist ein Pufferspeicher 1, in dem die Daten eines über eine Anschlusseinheit 3 oder 4 empfangenen Datenpakets zwischengespeichert werden. Bei dem dargestellten Ausführungsbeispiel wird davon ausgegangen, dass die Anschlusseinheit 3 eine Schnittstelle zu einem Ethernet-Kommunikationsnetz, insbesondere zu einem MAC-Frame-Ethernet-Kommunikationsnetz (eMAC-Kommunikationsnetz), definiert, während die Anschlusseinheit 4 eine Schnittstelle zu einem ATM-Kommunikationssystem definiert, d.h. über die Anschlusseinheit 3 werden Datenpakete gemäß dem eMAC-Datenübertragungsformat und über die Anschlusseinheit 4 Datenpakete gemäß dem ATM-Datenübertragungsformat empfangen bzw. gesendet.
  • Der Speicherzugriff auf den Speicher 1 wird von einer Steuereinheit 2 gesteuert, wobei die Steuereinheit 2 insbesondere dafür verantwortlich ist, die Daten eines eingehenden Datenpakets in dem Speicher 2 zwischenzuspeichern und anschließend in das Datenübertragungsformat eines ausgehenden Datenpakets zu transferieren. Zu diesem Zweck kommuniziert die Steuereinheit 2 mit den Anschlusseinheiten 3 und 4 über bidirektionale Datenpfade 5. Darüber hinaus ist zwischen den Anschlusseinheiten 3, 4 und dem Speicher 1 ein schneller bidirektionaler Datenpfad 6 vorgesehen, welcher zur beschleunigten und bevorzugten Verarbeitung der im Kopffeld ("Header") eines empfangenen Datenpakets enthaltenen Informationen dient. Wie bereits erläutert worden ist, dienen die im Kopffeld eines Datenpakets enthaltenen Informationen vorwiegend der Vermittlung ("Routing") des jeweiligen Datenpakets zu dem gewünschten Empfänger, so dass diese Informationen von übergeordneter Bedeutung sind und demzufolge bevorzugt verarbeitet werden müssen, um die geeigneten Vermittlungspfade bestimmen zu können. Die in dem Informationsfeld des jeweiligen Datenpakets enthalten Nutzinformation ("Payload") wird durch die Steuereinheit 2 mittels Zugriff über die Datenpfade 5 im Wesentlichen unverändert in dem Speicher 1 zwischengespeichert, während die in dem Kopffeld des Datenpakets enthaltene Information über den schnelleren Datenpfad 6 und den Speicher 1 nach einer entsprechenden Datenverarbeitung durch die Steuereinheit 2 weitergeleitet wird.
  • Beim Zwischenspeichern der Daten eines empfangenen Datenpakets, insbesondere der Payload-Daten eines empfangenen Datenpakets, wird von der Steuereinheit 2 eine spezielle Datenstruktur in Form eines Deskriptors verwendet, wobei der Grundaufbau des Deskriptors im wesentlichen für die unterschiedlichen Datenübertragungsformate einheitlich ist. Dennoch kann der Deskriptor geringfügig Abweichungen in Abhängigkeit von dem Datenübertragungsformat des zu speichernden Datenpakets, d.h. in Abhängigkeit von dem Typ des zu speichernden Datenpakets, aufweisen.
  • Bei Empfang eines zu speichernden Datenpakets wird in Abhängigkeit von dem Typ dieses Datenpakets eine spezielle Funktion der Steuereinheit 2 aktiviert, durch welche ein zur Beschreibung dieses Datenpakets geeigneter Deskriptor generiert und die in dem Deskriptor enthaltenen Parameter entsprechend gesetzt werden. Durch Verwendung des somit generierten Deskriptors werden anschließend die Daten des entsprechenden Datenpakets von der Steuereinheit 2 in dem Speicher 1 zwischengespeichert. Nach der Verarbeitung eines empfangenen Datenpakets auf zuvor beschriebene Art und Weise kann ein Update des Deskriptors zur Verarbeitung eines weiteren Datenpaketes desselben Typs vorgenommen werden. Liegt kein Datenpaket desselben Typs zur Verarbeitung an, wird der Deskriptor vorzugsweise gelöscht, um Speicherplatz, welcher zum Speichern der Deskriptoren benötigt wird, frei zu geben. Die Deskriptoren können beispielsweise auch in dem Speicher 1 oder direkt in der Steuereinheit 2 gespeichert werden.
  • Nachfolgend werden unter Bezugnahme auf 25 bevorzugte Ausführungsbeispiele für die Struktur von Deskriptoren zur Beschreibung unterschiedlicher Datenpakettypen erläutert.
  • Wie in 2 gezeigt ist, ist der Speicher 1, welcher zum Zwischenspeichern der Daten eines Datenpakets vorgesehen ist, in eine Vielzahl von gleichgroßen Speicherblöcken 7 unterteilt. Ebenso ist in 2 eine mögliche Struktur für einen Deskriptor 8 zur Beschreibung eines eMAC-Datenpakets dargestellt. Mit Hilfe des Deskriptors wird die Verbindung bzw. Zuordnung zwischen den Daten des zu speichernden Datenpakets und den zum Speichern dieser Daten benötigten Speicherblöcken 7 des Speichers 1 hergestellt.
  • Der in 2 gezeigte Deskriptor 8 umfasst ein Datenfeld bzw. Datenwort 9, welches den Typ des jeweiligen Datenpakets, im vorliegenden Fall den Typ "eMAC", bezeichnet. Das Datenwort 9 kann darüber hinaus auch eine Information beinhalten, welches Auskunft über den Umfang der zu speichernden Daten bzw. die Datenpaketgröße gibt, wobei beispielsweise zwischen zwei unterschiedlichen Datenpaketgrößen unterschieden werden kann. Diese Information kann für die blockweise Reservierung bzw. Freigabe des Speichers 1 hilfreich sein.
  • Ein weiteres Datenwort 10 des Deskriptors 8 kann optional in Abhängigkeit von dem Typ des jeweiligen Datenpakets belegt bzw. verwendet werden (beispielsweise zum Speichern von Kopffeldinformationen). Im Falle eines eMAC-Datenpakets ist das Datenwort 10 im vorliegenden Fall mit keiner Information belegt.
  • Darüber hinaus umfasst der Deskriptor 8 ein Datenwort 11, welches einen Iterator mit einem Parameter L und einer Laufvariable K umfasst. Der Parameter L bezeichnet die Anzahl der Speicherblöcke 7, welche insgesamt zum Speichern der Daten des jeweiligen Datenpakets benötigt werden. Die Laufvariable K bezeichnet hingegen den jeweils augenblicklich zum Speichern verwendeten Speicherblock 7, d.h. die Laufvariable K wird bei jedem Speicherblockwechsel 7 verändert bzw. inkrementiert. In Abhängigkeit von dem Wert des Parameters L wird die benötigte Anzahl an Speicherblöcken 7 reserviert.
  • Ein wesentlicher Bestandteil des vorzugsweise 32Bit-weise organisierten Deskriptors 8 ist ein Datenfeld 14, in dem ein Pointer Array mit Pointern bzw. Zeigern auf die Startadressen der L benötigten Speicherblöcke 7 abgelegt ist. In dem Datenfeld 14 befindet sich somit eine Liste von Pointern, die auf die Startadressen derjenigen Speicherblöcke 7 verweisen, die zum Speichern des jeweiligen Datenpakets benötigt werden. Das Datenfeld 14 umfasst entsprechend dem Wert des im Datenfeld 11 enthaltenen Parameters L somit L unterschiedliche Pointer.
  • Beim Speichern der Daten eines Datenpakets können diese unter Verwendung des dargestellten Deskriptors 8 sukzessiv beginnend bei der Startadresse des ersten Speicherblocks 7 in die einzelnen Speicherblöcke 7 geschrieben werden, wobei die Speicherblöcke 7 jeweils vollständig beschrieben werden. Statt dessen ist es jedoch auch möglich, die Daten beginnend mit einem gewissen Adressenoffset OFF1 bezogen auf die Startadresse des ersten Speicherblocks 7 bis zu einem gewissen Adressenoffset OFF2 bezogen auf die Endadresse des letzten Speicherblocks 7 einzuschreiben. Zu diese Zweck umfasst der in 2 dargestellte Deskriptor 8 ein Datenfeld 12 mit einem Verweis auf diejenige Adresse des ersten Speicherblocks 7, bei welcher tatsächlich mit dem Einschreiben der Daten begonnen werden soll, so dass die in dem Datenfeld 12 enthaltene Information auch als Start-Pointer oder S-Pointer bezeichnet werden kann. Entsprechend umfasst der Deskriptor 8 bei dem in 2 dargestellten Ausführungsbeispiel ein Datenfeld 13 mit einem Verweis auf diejenige Adresse des letzten Speicherblocks 7, bis zu welcher die Daten tatsächlich in den Speicher 1 geschrieben werden sollen, so dass die in dem Datenfeld 13 enthaltene Information auch als Trail-Pointer oder T-Pointer bezeichnet werden kann. Der durch das Datenfeld 12 beschriebene S-Pointer definiert somit den Adressenoffset OFF1, während der durch das Datenfeld 13 beschriebene T-Pointer den Adressenoffset OFF2 definiert. Selbstverständlich ist auch denkbar, dass der S-Pointer und der T-Pointer nicht auf den ersten und letzten Speicherblock 7 des Speichers 1 bezogen sind, sondern sich gemeinsam auf ein und denselben Speicherblock 7 beziehen, so dass beim Speichern der Daten eines Datenpakets die Daten in die einzelnen Speicherblöcke 7 stets mit einem Offset OFF1 bzw. einem Offset OFF2 geschrieben werden.
  • Die in 2 gezeigte Struktur des Deskriptors 8 eignet sich beispielsweise auch zum Speichern eines Ethernet-CPCS ("Common Part Convergence Sublayer")-Datenpakets. Dabei handelt es sich um ein Zwischenformat, welches beispielsweise zur ATM-Segmentierung verwendet wird.
  • Die Größe der einzelnen Speicherblöcke 7 des zur Zwischenspeicherung der Daten verwendeten Speichers 1 ist prinzipiell nicht festgelegt. Insbesondere ist auch denkbar, dass jeder Speicherblock 7 wiederum mehreren Speicherelementen geringerer Größe zugeordnet ist. Besonders vorteilhaft ist es jedoch, wenn die Speicherblöcke 7 eine Speicherkapazität aufweisen, welche zum Speichern des kleinstmöglichen Datenpakettyps ausreicht. So kann die Speicherkapazität der Speicherblöcke 7 beispielsweise derart gewählt sein, dass jeder Speicherblock 7 vollständig die Daten einer ATM-Zelle (53 Bytes) oder zumindest die Payload-Daten einer ATM-Zelle (48 Bytes) speichern kann, da ATM-Zellen die kürzesten Datenpakete sind, welche darüber hinaus stets denselben Aufbau aufweisen.
  • Wird die Speicherkapazität der einzelnen Speicherblöcke 7 zu 48 Bytes gewählt, kann zur Beschreibung einer ATM-Zelle bzw. eines ATM-Datenpakets ein Deskriptor 8 mit einer besonders einfachen Struktur verwendet werden, wie es in 3 dargestellt ist. Der in 3 gezeigte Deskriptor 8 umfasst wiederum ein Datenwort 9 (welches beispielsweise analog zu den anderen beschriebenen Ausführungsbeispielen 32 Bits umfassen kann), um den Typ des jeweiligen Datenpakets zu beschreiben. Darüber hinaus ist das Datenfeld 14, welches gemäß 2 mit einem Pointer Array belegt ist, auf lediglich einen einzigen Pointer reduziert, welcher auf die Startadresse des zum Speichern der entsprechenden ATM-Zelle benötigten Speicherblock 7 verweist, da aufgrund der gewählten Größe der Speicherblöcke 7 bereits ein Speicherblock zum Speichern der Payload-Daten einer ganzen ATM-Zelle ausreicht. Darüber hinaus ist gemäß 3 das Datenfeld 10 des Deskriptors 8 mit der im Kopffeld ("Header") der jeweiligen ATM-Zelle enthaltenen Information belegt. Die separate Speicherung der Kopffeldinformation der ATM-Zelle in den Deskriptor 8 ist sinnvoll, da diese Information – wie bereits zuvor beschrieben worden ist – für die Vermittlung der ATM-Zelle von primärer Bedeutung ist. Selbstverständlich kann das in 3 dargestellte Ausführungsbeispiel jedoch auch derart abgewandelt werden, dass der Speicherblock 7 53 Bytes umfasst, so dass in dem Speicherblock 7 sowohl die Header-Daten als auch die Payload-Daten einer einzigen ATM-Zelle gespeichert werden können, wobei in diesem Fall das Datenfeld 10 unbenutzt bleiben kann. Die Erkennung des richtigen Formats des Deskriptors erfolgt über das Datenfeld 9, welches den Typ bezeichnet.
  • In einem ATM-basierten Kommunikationsnetz erfolgen Übertragung und Vermittlung der ATM-Zellen grundsätzlich unabhängig von der jeweiligen Anwendung. Die erforderliche Flexibilität von ATM-Kommunikationsnetzen bezüglich unterschiedlicher Kommunikationsprozesse, wie beispielsweise Audio-, Video- oder Datenkommunikation, ergibt sich aus der Funktionalität einer speziellen ATM-Anpassungsschicht, welche als AAL-Schicht bezeichnet wird. Die Funktionen der AAL-Schicht sind bezüglich der Bitrate (konstant oder variabel), der Kommunikationsart (verbindungsorientiert oder verbindungslos) etc. anwendungsabhängig. Unabhängig von der Funktion der AAL-Schicht wird zwischen unterschiedlichen Dienstklassen bzw. AAL-Typen unterschieden. Die Dienstklasse AAL5 unterstützt beispielsweise den für Datenkommunikation typischen VBR-Datenverkehr ("Variable Bitrate"), wobei sowohl verbindungslose als auch verbindungsorientierte Kommunikation möglich ist.
  • In der Praxis kommt eine AAL5-Datenübertragung beispielsweise für den verbindungslosen Fall bei einer ATM-Kommunikation zwischen lokalen Netzen ("Local Area Network", LAN) zur Anwendung, wobei die AAL5-Dienstklasse bzw. der AAL5-Diensttyp insbesondere für die Aufteilung der Daten eines IP-Pakets auf mehrere ATM-Zellen geeignet ist. Bei diesem Anwendungsfall ist typisch, dass die einem IP-Paket zugeordneten ATM-Zellen allesamt dasselbe Kopffeld ("Header") aufweisen, wobei lediglich die letzte ATM-Zelle ein davon abweichendes Kopffeld besitzt. Demzufolge eignet sich für dieses Szenario beispiels weise ein Deskriptor 8 mit dem in 4 dargestellten Aufbau, wobei das Datenwort 9 den Typ "AAL5" beschreibt. Das gemäß 2 optional verwendete Datenfeld 10 ist bei dem in 4 gezeigten Ausführungsbeispiel aufgeteilt und beschreibt einerseits das Kopffeld der letzten ATM-Zelle (Header 2) sowie andererseits das Kopffeld aller übrigen ATM-Zellen (Header 1). Die Datenfelder bzw. Datenwörter 11-14 sind analog zu 2 belegt. Vorteilhaft ist, dass lediglich ein Deskriptor 8 für alle ATM-Zellen, die einem AAL5-Frame bzw. einem AAL5-CPCS-Frame zugeordnet sind, verwendet werden kann.
  • In 5 ist ein möglicher Aufbau des Deskriptors 8 zur Beschreibung eines MPLS-Datenpakets ("Multi Protocol Lable Switching") dargestellt. MPLS integriert IP und ATM durch Zusammenfügen von Schicht2-Funktionalität (ATM-Switching) mit Schicht3-Funktionalität (IP-Routing). Zu diesem Zweck umfasst ein MPLS-Datenpaket ein IP-Datenpaket, welches mit einem speziellen 32Bit-Kopffeld, das als "Shim Header" bezeichnet wird, versehen ist. Dieser "Shim Header" umfasst ein 20Bit-Label, welches zur Vermittlung ("Routing"/"Switching") des entsprechenden Datenpakets dient (im Gegensatz hierzu wird bei einer reinen IP-Vermittlung ausschließlich die Zieladresse ("Destination Address") ausgewertet. Weitere Bits des "Shim Header" bezeichnen beispielsweise die Dienstgüte ("Quality of Service"), d.h. es ist beispielsweise angegeben, ob wichtige Videodaten oder weniger wichtige Audiodaten übertragen werden etc.
  • Das in einem MPLS-Datenpaket enthaltene IP-Paket ist gemäß dem normalen IP-Protokoll aufgebaut.
  • Zur Beschreibung eines derartigen MPLS-Datenpakets umfasst der in 5 gezeigte Deskriptor 8 wiederum ein Datenfeld bzw. Datenwort 9, welches den Typ des Datenpakets bezeichnet. Das Datenfeld 10 ist bei dem dargestellten Ausführungsbeispiel mit den Informationen des zuvor beschriebenen Kopffelds ("Shim Header") belegt. Die Datenfelder 11-14 sind analog zu den in 2 und 4 dargestellten Ausführungsbeispielen belegt, so dass diesbezüglich auf die vorhergehenden Erläuterungen verwiesen werden kann.

Claims (20)

  1. Verfahren zum Vermitteln von Datenpaketen, wobei die Daten eines in einem ersten Datenübertragungsformat vorliegenden und an einen Empfänger weiterzuleitenden Datenpakets in einem Speicher (1), der in Speicherblöcke (7) gleicher Größe unterteilt ist, zwischengespeichert werden, wobei dem weiterzuleitenden Datenpaket ein Deskriptor (8) zugeordnet wird, welcher in Abhängigkeit von dem Typ des ersten Datenübertragungsformats generiert wird und ein Datenfeld (14) mit einem Verweis auf die Startadressen derjenigen Speicherblöcke (7) des Speichers (1), in denen die Daten des Datenpakets zu speichern sind, und ein Datenfeld (9), welches das erste Datenübertragungsformat des an den Empfänger weiterzuleitenden Datenpakets beschreibt, umfasst, wobei die Daten des Datenpakets unter Verwendung des Deskriptors (8) in dem Speicher (1) zwischengespeichert und anschließend auf mindestens ein Datenpaket mit einem zweiten Datenübertragungsformat umgesetzt und an den Empfänger weitergeleitet werden.
  2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass der Deskriptor (8) ein Datenfeld (12) umfasst, welches einen Adressenoffset (OFF1) bezüglich der Startadresse eines Speicherblocks (7), in dem die Daten des Datenpakets gespeichert werden sollen, beschreibt, wobei die Daten des Datenpakets beginnend bei diesem Adressenoffset (OFF1) in den entsprechenden Speicherblock (7) geschrieben werden.
  3. Verfahren nach Anspruch 1 oder 2, dadurch gekennzeichnet, dass der Deskriptor (8) ein Datenfeld (13) umfasst, welches einen Adressenoffset (OFF2) bezüglich der Endadresse eines Speicherblocks (7), in den die Daten des Datenpakets geschrieben werden sollen, beschreibt, wobei die Daten des Datenpakets in den entsprechenden Speicherblock (7) bis zu diesem Adressenoffset (OFF2) geschrieben werden.
  4. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass der Deskriptor (8) ein Datenfeld (11) umfasst, welches einerseits die Anzahl (L) der zum Speichern der Daten des Datenpakets benötigten Speicherblöcke (7) des Speichers (1) beschreibt und andererseits eine Laufvariable (K) aufweist, die während des Speicherns der Daten mit jedem Speicherblock (7) des Speichers (1) verändert wird und somit jeweils den augenblicklich beschriebenen Speicherblock (7) des Speichers (1) bezeichnet.
  5. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass das weiterzuleitende Datenpaket ein Kopffeld und ein Informationsfeld, welches Nutzdaten aufweist, umfasst, wobei mit Hilfe des Deskriptors die in dem Informationsfeld enthaltenen Nutzdaten in dem Speicher (1) gespeichert werden.
  6. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass das erste Datenübertragungsformat ein Ethernet-Datenübertragungsformat ist.
  7. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass das erste Datenübertragungsformat ein Ethernet-CPCS-Datenübertragungsformat ist.
  8. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass das erste Datenübertragungsformat ein ATM-Datenübertragungsformat ist.
  9. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass die Speicherblöcke (7) des Speichers (1) jeweils eine Speicherkapazität aufweisen, welche zum Speichern der Daten eines in einem ATM-Datenübertragungsformat vorliegenden Datenpakets ausreicht.
  10. Verfahren nach Anspruch 9, dadurch gekennzeichnet, dass die Speicherblöcke (7) des Speichers (1) jeweils eine Speicherkapazität von 48 Bytes aufweisen, um jeweils die in einem Informationsfeld des in dem ATM-Datenübertragungsformat vorliegenden Datenpakets enthaltenen Nutzdaten vollständig speichern zu können.
  11. Verfahren nach Anspruch 8 und Anspruch 9 oder 10, dadurch gekennzeichnet, dass das auf die Startadressen der benötigen Speicherblöcke (7) des Speichers (1) verweisende Datenfeld (14) des Deskriptors (8) für das in dem ATM-Datenübertragungsformat vorliegende Datenpaket lediglich einen Verweis auf die Startadresse eines einzigen bestimmten Speicherblocks (7) des Speichers (1) aufweist.
  12. Verfahren nach den Ansprüchen 10 und 11, dadurch gekennzeichnet, dass unter Verwendung des auf die Startadresse des bestimmten Speicherblocks (7) verweisenden Datenfelds (14) des Deskrip tors (8) die in dem Informationsfeld des in dem ATM-Datenübertragungsformat vorliegenden Datenpakets enthaltenen Nutzdaten in dem bestimmten Speicherblock (7) gespeichert werden, und dass der Deskriptor (8) für das in dem ATM-Datenübertragungsformat vorliegende Datenpaket ein Datenfeld (10) zur Bezeichnung der in dem Kopffeld des Datenpakets enthaltenen Daten umfasst.
  13. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass das erste Datenübertragungsformat ein AAL5-Datenübertragungsformat ist.
  14. Verfahren nach Anspruch 13, dadurch gekennzeichnet, dass die Daten eines in einem IP-Datenübertragungsformat vorliegenden Datenpakets auf mehrere in einem ATM-Datenübertragungsformat vorliegende Datenpakete unter Verwendung des AAL5-Datenübertragungsformats abgebildet werden, wobei jedes in dem ATM-Datenübertragungsformat vorliegende Datenpaket ein Kopffeld und ein Nutzdaten aufweisendes Informationsfeld umfasst, und dass der Deskriptor (8) für das AAL5-Datenübertragungsformat ein Datenfeld (10) zur Bezeichnung des Kopffelds des zeitlich letzten Datenpakets, welches in dem ATM-Datenübertragungsformat vorliegt, sowie des Kopffelds aller anderen Datenpakete, welche in dem ATM-Datenübertragungsformat vorliegen, umfasst.
  15. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass das erste Datenübertragungsformat ein MPLS-Datenübertragungsformat ist.
  16. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass das an den Empfänger weiterzuleitende Datenpaket ein Kopffeld und ein Informationsfeld mit Nutzdaten aufweist, und dass die in dem Informationsfeld enthaltenen Nutzdaten in dem Speicher (1) unter Verwendung des Deskriptors (8) gespeichert werden, wobei der Deskriptor (8) ein Datenfeld (10) zur Beschreibung des Kopffelds des jeweiligen Datenpakets umfasst.
  17. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass das zweite Datenübertragungsformat unterschiedlich zu dem ersten Datenübertragungsformat ist.
  18. Vorrichtung zum Vermitteln von Datenpaketen, wobei ein an einen Empfänger weiterzuleitendes Datenpaket in einem ersten Datenübertragungsformat vorliegt, mit einem Speicher (1), welcher in eine Vielzahl von Speicherblöcken (7) gleicher Größe unterteilt ist, und mit einer Steuereinrichtung (2) zur Erzeugung eines Deskriptors (8), welcher dem weiterzuleitenden Datenpaket zugeordnet ist, in Abhängigkeit von dem Typ des ersten Datenübertragungsformats, wobei der Deskriptor (8) ein Datenfeld (14) aufweist, welches auf die Startadressen der zum Speichern der Daten des Datenpakets benötigten Speicherblöcke (7) des Speichers (1) verweist, und wobei der Deskriptor (8) ein Datenfeld (9) umfasst, welches das erste Datenübertragungsformat des an den Empfänger weiterzuleitenden Datenpakets beschreibt, wobei die Steuereinrichtung (2) zum Zwischenspeichern der Daten des Datenpakets unter Verwendung des Deskriptors (8) in dem Speicher (1) und zur anschließenden Umsetzung der zwischengespeicherten Daten auf mindestens ein Datenpaket mit einem zweiten Datenübertragungsformat ausgestaltet ist, um das mindestens eine Datenpaket mit dem zweiten Datenübertragungsformat an den Empfänger weiterzuleiten.
  19. Vorrichtung nach Anspruch 18, dadurch gekennzeichnet, dass die Vorrichtung Bestandteil einer Telekommunikationsvermittlungseinrichtung ist.
  20. Vorrichtung nach Anspruch 18 oder 19, dadurch gekennzeichnet, dass die Vorrichtung zur Durchführung des Verfahrens nach einem der Ansprüche 1-17 ausgestaltet ist.
DE10119754A 2001-04-23 2001-04-23 Verfahren und Vorrichtung zum Speichern von Datenpaketen Expired - Fee Related DE10119754B4 (de)

Priority Applications (2)

Application Number Priority Date Filing Date Title
DE10119754A DE10119754B4 (de) 2001-04-23 2001-04-23 Verfahren und Vorrichtung zum Speichern von Datenpaketen
US10/128,207 US7327755B2 (en) 2001-04-23 2002-04-23 Method and device for storing data packets

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE10119754A DE10119754B4 (de) 2001-04-23 2001-04-23 Verfahren und Vorrichtung zum Speichern von Datenpaketen

Publications (2)

Publication Number Publication Date
DE10119754A1 DE10119754A1 (de) 2002-10-31
DE10119754B4 true DE10119754B4 (de) 2007-11-29

Family

ID=7682344

Family Applications (1)

Application Number Title Priority Date Filing Date
DE10119754A Expired - Fee Related DE10119754B4 (de) 2001-04-23 2001-04-23 Verfahren und Vorrichtung zum Speichern von Datenpaketen

Country Status (2)

Country Link
US (1) US7327755B2 (de)
DE (1) DE10119754B4 (de)

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100518813B1 (ko) * 2003-02-15 2005-10-05 삼성전자주식회사 패킷 메모리 관리 장치를 가지는 패킷 포워딩 시스템 및 그의 동작방법
US6963946B1 (en) 2003-10-01 2005-11-08 Advanced Micro Devices, Inc. Descriptor management systems and methods for transferring data between a host and a peripheral
US7689738B1 (en) 2003-10-01 2010-03-30 Advanced Micro Devices, Inc. Peripheral devices and methods for transferring incoming data status entries from a peripheral to a host
DE10347762B4 (de) * 2003-10-14 2007-05-03 Infineon Technologies Ag Verfahren zur Speicherung von Übertragungseinheiten und Netzwerkkommunikations-Vorrichtung
US7826614B1 (en) 2003-11-05 2010-11-02 Globalfoundries Inc. Methods and apparatus for passing initialization vector information from software to hardware to perform IPsec encryption operation
US7533154B1 (en) 2004-02-04 2009-05-12 Advanced Micro Devices, Inc. Descriptor management systems and methods for transferring data of multiple priorities between a host and a network
US20060153300A1 (en) * 2005-01-12 2006-07-13 Nokia Corporation Method and system for motion vector prediction in scalable video coding
JP2007172008A (ja) * 2005-12-19 2007-07-05 Sony Corp 情報処理システム、受信装置、およびプログラム
TWI378689B (en) * 2009-05-13 2012-12-01 Jmicron Technology Corp Packet receiving management method and network control circuit with packet receiving management functionality
US9087154B1 (en) 2011-12-12 2015-07-21 Crashlytics, Inc. System and method for providing additional functionality to developer side application in an integrated development environment
US9262250B2 (en) 2011-12-12 2016-02-16 Crashlytics, Inc. System and method for data collection and analysis of information relating to mobile applications
US9703680B1 (en) 2011-12-12 2017-07-11 Google Inc. System and method for automatic software development kit configuration and distribution
US9165337B2 (en) * 2013-05-31 2015-10-20 Qualcomm Incorporated Command instruction management
US11392317B2 (en) * 2017-05-31 2022-07-19 Fmad Engineering Kabushiki Gaisha High speed data packet flow processing
CN108462652B (zh) * 2017-07-31 2019-11-12 新华三技术有限公司 一种报文处理方法、装置和网络设备
CN112380148B (zh) * 2020-11-30 2022-10-25 海光信息技术股份有限公司 数据传输方法和数据传输装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0752780A2 (de) * 1995-07-07 1997-01-08 Sun Microsystems, Inc. Verfahren und Vorrichtung zur Datenpakettrennung in eine Vielfalt von Bussen
WO1999065193A1 (en) * 1998-06-11 1999-12-16 Cabletron Systems, Inc. Optimizing the transfer of data packets between lans
US6148082A (en) * 1998-01-14 2000-11-14 Skystream Corporation Scrambling and descrambling control word control in a remultiplexer for video bearing transport streams

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0659952A (ja) * 1992-08-07 1994-03-04 Toshiba Corp 磁気ディスク装置
JP3464836B2 (ja) * 1995-01-19 2003-11-10 富士通株式会社 記憶装置のメモリ管理装置
US6078733A (en) * 1996-03-08 2000-06-20 Mitsubishi Electric Information Technolgy Center America, Inc. (Ita) Network interface having support for message processing and an interface to a message coprocessor
US5778414A (en) * 1996-06-13 1998-07-07 Racal-Datacom, Inc. Performance enhancing memory interleaver for data frame processing
KR100280642B1 (ko) * 1998-11-18 2001-05-02 윤종용 이더넷 컨트롤러의 메모리 관리 장치 및 그 제어방법
CA2293066A1 (en) * 1999-12-20 2001-06-20 Nortel Networks Corporation Method and apparatus for cross-connecting data streams with efficient memory utilization and transparent protocol conversion
US6757802B2 (en) * 2001-04-03 2004-06-29 P-Cube Ltd. Method for memory heap and buddy system management for service aware networks

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0752780A2 (de) * 1995-07-07 1997-01-08 Sun Microsystems, Inc. Verfahren und Vorrichtung zur Datenpakettrennung in eine Vielfalt von Bussen
US6148082A (en) * 1998-01-14 2000-11-14 Skystream Corporation Scrambling and descrambling control word control in a remultiplexer for video bearing transport streams
WO1999065193A1 (en) * 1998-06-11 1999-12-16 Cabletron Systems, Inc. Optimizing the transfer of data packets between lans

Also Published As

Publication number Publication date
DE10119754A1 (de) 2002-10-31
US20020188742A1 (en) 2002-12-12
US7327755B2 (en) 2008-02-05

Similar Documents

Publication Publication Date Title
DE10119754B4 (de) Verfahren und Vorrichtung zum Speichern von Datenpaketen
DE60120847T2 (de) Mehrprotokollvermittler und Verfahren dazu
DE69601374T2 (de) Verfahren und vorrichtung zur synchronisierung von datenubertragungen mit wahlverbindungen in einem netzwerk
DE69727936T2 (de) Verfahren und vorrichtung zur wiederzusammensetzung von paketen in eine nachricht, in einem atm-kommunikationssystem
DE69837272T2 (de) Mechanismus zum ersetzen eines paketfelds in einem mehrschicht-vermittlungsnetzelement
DE69535477T2 (de) Paketverwaltungsgerät für schnelles Paketnetzwerk
DE60017622T2 (de) Auf RSVP-basiertes Tunnelprotokoll zum Bereitstellen von integrierten Diensten
DE60038600T2 (de) Netzwerk-Datenübertragungs-Zuteilungsverfahren und -vorrichtungen zum Bestimmen einer Paketübertragungspriorität zwichen einer Vielzahl von Datenströmen
DE69900492T2 (de) Grosse kombinierte Breitband und Schmalband Vermittlungsstelle
DE69732274T2 (de) Flusssteuerungsprotokollsystem und verfahren
EP3695577A1 (de) Verfahren zur daten-kommunikation in einem insbesondere industriellen netzwerk, steuerungsverfahren, vorrichtung, computerprogramm sowie computerlesbares medium
DE102005046702B4 (de) Verfahren und Prozessor zum Klassifizieren von Datenpaketeinheiten
DE60000326T2 (de) Verkehrsformer zur Aufnahme von OAM Zellen ohne Jitter oder Verzögerung zu erreichen
DE60221472T2 (de) Verfahren und Vorrichtung zur Multiplexübertragung
DE60112680T2 (de) Netzwerkerweiterungsmodul
DE10023037A1 (de) Koppelfeld für ein Fernmeldenetz und Verfahren zur Vermittlung in einem Koppelfeld
DE69835858T2 (de) Selbstleitweglenkender Schalter und einen solchen Schalter benutzendes Videokonferenzsystem
DE69710917T2 (de) Anpassbarer datennetzrouter
DE69509499T2 (de) Verfahren und einrichtung zur übertragung zwischen knoten in einem kommunikationsnetzwerk
DE10231958A1 (de) Direkt adressiertes Multicast-Protokoll
EP0685949A2 (de) Paketübermittlungssystem
EP0614296A2 (de) Lokales, nach dem asynchronen Transfermodus (ATM) arbeitendes Netzwerk
EP1313284B1 (de) Router
DE60318971T2 (de) Routinggerät mit paralleler Verarbeitung
DE60032888T2 (de) Teilsystem eines Telekommunikationsträger-Prozessors mit Inband-Steuerung und Adressierung via Zelle-Kopffelder

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
8364 No opposition during term of opposition
R119 Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee