DE10115799A1 - Method for processing of data-blocks e.g. for internet communication, involves dividing header-data into at least two zones - Google Patents

Method for processing of data-blocks e.g. for internet communication, involves dividing header-data into at least two zones

Info

Publication number
DE10115799A1
DE10115799A1 DE2001115799 DE10115799A DE10115799A1 DE 10115799 A1 DE10115799 A1 DE 10115799A1 DE 2001115799 DE2001115799 DE 2001115799 DE 10115799 A DE10115799 A DE 10115799A DE 10115799 A1 DE10115799 A1 DE 10115799A1
Authority
DE
Germany
Prior art keywords
data
header
header data
processing
content
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.)
Granted
Application number
DE2001115799
Other languages
German (de)
Other versions
DE10115799B4 (en
Inventor
Juergen Foag
Thomas Wild
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.)
Technische Universitaet Muenchen
Original Assignee
Technische Universitaet Muenchen
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 Technische Universitaet Muenchen filed Critical Technische Universitaet Muenchen
Priority to DE2001115799 priority Critical patent/DE10115799B4/en
Publication of DE10115799A1 publication Critical patent/DE10115799A1/en
Application granted granted Critical
Publication of DE10115799B4 publication Critical patent/DE10115799B4/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • 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

Abstract

A data-blocks processing procedure in which each data-block includes header-data and useful-data. The content of the header-data is predicted for at least one of the zones into which the header data is divided and the associated processing step is introduced on the basis of the forecast content before the corresponding zone of the header data is evaluated. The content of the predicted header-data is verified when it concurs with the actual corresponding header-data. An Independent claim is given for a device for processing data-blocks.

Description

Die vorliegende Erfindung bezieht sich auf ein Verfahren zum Verarbeiten von Datenblö­ cken sowie auf eine zugehörige Vorrichtung nach dem Oberbegriff des Patentanspruchs 1.The present invention relates to a method for processing data blocks cken and an associated device according to the preamble of the claim 1.

In den verschiedensten Bereichen der Datenkommunikation weisen die zu übertragen­ den Daten eine blockorientierte Datenstruktur auf. Dabei umfasst jeder Datenblock ne­ ben den eigentlichen Nutzdaten eine Reihe von sogenannten Headerdaten, die in ver­ schiedene Bereiche unterteilt sind. Die Übertragung solcher Datenblöcke nach dem Stand der Technik soll im folgenden am Beispiel der Übertragung von sogenannten Da­ tagrammen über das Internet erläutert werden. Unter Datagrammen versteht man in sich geschlossene unabhängige Datenblöcke, die sich vor allem durch ihren geringen Proto­ koll-Overhead auszeichnen.In the most diverse areas of data communication, they have to be transmitted the data has a block-oriented data structure. Each data block includes ne ben the actual user data a series of so-called header data, which in ver different areas are divided. The transfer of such data blocks after The state of the art is shown below using the example of the transmission of so-called da to be explained on the Internet. Datagrams are in themselves closed independent data blocks, which are mainly characterized by their low proto mark coll overhead.

Für die Internetdatenkommunikation wird nach dem Stand der Technik ein standardi­ siertes offenes Protokollschichtmodell verwendet, wie es beispielsweise in W. D. Haaß, "Handbuch der Kommunikationsnetze", Springer-Verlag, Berlin, 1997, beschrieben und in Fig. 1 dargestellt ist. Jeder Protokollschicht sind unterschiedliche Funktionalitäten zu­ geordnet. Für jede dieser Schichten gibt es spezifizierte Protokolle, die Steuerinformatio­ nen in Form von Meldungs- und Quittierungsaustauschen zwischen Kommunikationsein­ heiten beschreiben. Unter einem Protokollstapel versteht man ein Gebilde aus insgesamt bis zu sieben Protokollen, dem pro Schicht ein Protokoll zugeordnet ist. Bei der Verar­ beitung eines über eine Übertragungsstrecke 107 von einem Endsystem 101 empfange­ nen Datenblocks in einem Transitsystem 102 oder einem weiteren Endsystem 103 müs­ sen im Empfangsteil 108 des Transitsystems bzw. dem Empfangsteil 110 des Endsys­ tems mehrere Prozessierungsschritte durchgeführt werden. Diese beinhalten im wesent­ lichen die Abtrennung der für die jeweilige Schicht entsprechend dem Protokollschich­ tenmodell der Datenkommunikation zugeordnete gekapselte Headerdateninformation 106, die Herausarbeitung einzelner Informationsfelder und deren Analyse.According to the prior art, a standardized open protocol layer model is used for Internet data communication, as described, for example, in WD Haass, “Handbuch der Kommunikationnetze”, Springer-Verlag, Berlin, 1997, and shown in FIG. 1. Different functionalities are assigned to each protocol layer. For each of these layers there are specified protocols that describe control information in the form of message and acknowledgment exchanges between communication units. A protocol stack is a structure consisting of a total of up to seven protocols, to which one protocol is assigned per shift. When processing a data block received via a transmission link 107 from an end system 101 in a transit system 102 or a further end system 103, several processing steps must be carried out in the receiving part 108 of the transit system or the receiving part 110 of the end system. These essentially include the separation of the encapsulated header data information 106 assigned to the respective layer in accordance with the protocol layer model of data communication, the elaboration of individual information fields and their analysis.

In einem Transitsystem wird bei der Analyse u. a. die Wegewahlentscheidung durchge­ führt, bei der die Zuordnung des weiterzuleitenden Datenblocks in der Regel zu einer von mehreren transitsystemausgangsseitigen Schnittstellen getroffen wird. Hierbei und bei weiteren, bedingt durch den Protokollstapeltyp durchzuführenden Prozessierungsschritten werden für jede Schicht von den höhergelegenen Schichten bis hin zu den tie­ fer gelegenen veränderte oder unveränderte Headerdaten erzeugt und mit den Nutzda­ ten zusammengefügt, was man als Kapselung bezeichnet.In a transit system, the analysis u. a. followed the routing decision leads, in which the assignment of the data block to be forwarded usually to one is hit by several interfaces on the exit of the transit system. Here and for further processing steps to be carried out depending on the protocol stack type  for each layer from the higher layers to the tie fer changed or unchanged header data generated and with the Nutzda ten put together what is called encapsulation.

Die Headerdaten sind in mehrere Bereiche unterteilt, die jeweils einer Protokollebene zugeordnet sind. Für Protokolle von unterschiedlichem Typus weisen diese Bereiche unterschiedliche Längen und Bedeutungen auf. Die Headerdaten beinhalten Informatio­ nen, welche die Weiterbehandlung des Datenblocks festlegen. Bei zu übertragenden Datagrammen wird generell unterschieden zwischen Benutzerdatagrammen, welche die Information der Benutzeranwendung beinhalten und Kontrolldatagrammen, welche für das Übertragungsmedium relevante Informationen tragen.The header data is divided into several areas, each with a protocol level assigned. These areas indicate protocols of different types different lengths and meanings. The header data contains information who determine the further processing of the data block. With to be transferred Datagrams are generally differentiated between user datagrams, which the Include information of the user application and control datagrams, which for the transmission medium carry relevant information.

Ein Teil der Analyse betrifft das Feld eines Headerdatenbereichs, in welchem die Infor­ mation über den Typus des jeweils nächst höhergelegenen Protokolls oder des selben Protokolls enthalten ist. Als Beispiel hierfür ist das Internetprotokoll in der Version 4 (Re­ quest for Comments 760: Internet Protocol Version 4, Internet Engineering Task Force - Internet Architecture Board) in Fig. 2 dargestellt. Die Position des Protokolltypfeldes ist durch die standardisierte Definition des entsprechenden Protokolls festgelegt. Bedingt durch die Verwendung von optionalen Feldern 206 im Protokollkopfteil können die Felder der höheren Schichten variieren. Sämtliche Prozessierungsschritte, welche mit einem zeitlichen Prozessierungsaufwand behaftet sind, laufen, wie beispielsweise in Berkeley Software Distribution 4.4BSD-Lite, University of California at Berkeley, 1994 oder in Lu­ cent-Agere, Preliminary Product Brief "NPFPP-Payload Plus Fast Pattern Processor", 2000, beschrieben und in Fig. 3 dargestellt, bedingt durch die Datenabhängigkeit eines Protokolls der jeweils im Schichtenmodell höheren Schicht von der tieferen Schicht, se­ quentiell ab. In sogenannten parallel prozessierenden Systemen können diese Schritte, wie in Fig. 4 dargestellt, nach Auflösung der Protokolltypdatenabhängigkeit 401 und 402 zeitlich versetzt pseudoparallel von den niederen Schichten mit den niedrigen Ordnungs­ zahlen zu den höheren Schichten mit den höheren Ordnungszahlen ablaufen. Nach Pro­ zessierung des Prozessierungsschritts zur Erkennung des nächst höhergelegenen Pro­ tokollschichttyps 403 wird bei der pseudoparallelen Prozessierung mit der Prozessierung der Prozessierungsschritte der nächsthöheren Schicht begonnen.Part of the analysis relates to the field of a header data area, in which the information about the type of the next highest protocol or the same protocol is contained. As an example of this, the Internet Protocol in Version 4 (Request for Comments 760 : Internet Protocol Version 4 , Internet Engineering Task Force - Internet Architecture Board) is shown in FIG. 2. The position of the protocol type field is determined by the standardized definition of the corresponding protocol. Due to the use of optional fields 206 in the protocol header, the fields of the higher layers can vary. All processing steps, which involve a time-consuming processing effort, run, for example in Berkeley Software Distribution 4.4 BSD-Lite, University of California at Berkeley, 1994 or in Lu cent-Agere, Preliminary Product Brief "NPFPP-Payload Plus Fast Pattern Processor" , 2000, and shown in FIG. 3, due to the data dependency of a protocol of the higher layer in the layer model in each case from the lower layer, sequentially. In so-called parallel processing systems, these steps can, as shown in FIG. 4, take place after the protocol type data dependency 401 and 402 have been resolved pseudo-parallel from the lower layers with the lower order numbers to the higher layers with the higher order numbers. After the processing step for the recognition of the next higher protocol layer type 403 has been processed, the processing steps of the next higher layer are started in the pseudo-parallel processing.

Eine wesentliche Kenngröße für die Verarbeitungsdauer in einem System ist die soge­ nannte Latenzzeit, welche die Zeit zwischen Start und Ende der Datenblockbearbeitung bezeichnet. Die Entscheidung, bis zu welcher Protokollschicht die Headerdaten herausgearbeitet und analysiert werden, hängt davon ab, ob das analysierende System ein Transitpunkt oder der Endpunkt des übertragenen Datenblocks ist. Dies ergibt sich aus der Headeranalyse. Während im Fall eines Transitsystems die Herausarbeitung von un­ ten in der Regel maximal bis in die vierte Protokollschicht stattfindet, wird im Fall eines Endsystems die Herausarbeitung bis zur siebten Schicht, d. h. bis zur Anwendungs­ schicht durchgeführt.An essential parameter for the processing time in a system is the so-called called latency, which is the time between the start and end of data block processing designated. The decision up to which protocol layer the header data is worked out  and be analyzed depends on whether the analyzing system is on Transit point or the end point of the transmitted data block. This follows from header analysis. While in the case of a transit system the elaboration of un usually takes place up to the fourth protocol layer, in the case of a End system working out to the seventh layer, d. H. until application shift carried out.

Sowohl die sequentielle als auch die pseudoparallele Bearbeitung eines Datenblocks in einem Transit- oder Endsystem führen zu einer vergleichsweise langen Latenzzeit des Datenblocks. Daraus resultiert bei der Datenübertragung über ein Netzwerk mit einer Vielzahl von Transitsystemen eine deutliche Reduzierung der möglichen Übertragungs­ geschwindigkeiten. Dies ist mitunter auch bedingt durch die sich aus der Datenabhän­ gigkeit ergebende nicht optimale Ausführungsreihenfolge einzelner für den Protokollsta­ pel auszuführender Funktionalitäten. Darüber hinaus verzögert auch die sequentielle Durchführung zeitaufwendiger oder ressourcenaufwendiger Prozessierungsschritte, wie z. B. die Prüfsummenberechnung oder die Klassifizierung von Datenblöcken, die Über­ tragungsdauer der Datenblöcke erheblich.Both the sequential and the pseudo-parallel processing of a data block in a transit or end system lead to a comparatively long latency of the Data block. This results in data transmission over a network with one Large number of transit systems significantly reduce the possible transmission speeds. This is sometimes due to the fact that the data depend non-optimal execution order of individual for the protocol sta functionalities to be executed. It also delays the sequential Execution of time-consuming or resource-consuming processing steps, such as z. B. the calculation of the checksum or the classification of data blocks, the About The data blocks have a long service life.

Daher besteht die Aufgabe der vorliegenden Erfindung darin, eine Vorrichtung und ein Verfahren zur beschleunigten Bearbeitung von Datenblöcken anzugeben.Therefore, the object of the present invention is a device and a Specify procedures for accelerated processing of data blocks.

Diese Aufgabe wird durch ein Verfahren mit den Merkmalen des Patentanspruchs 1 so­ wie eine Vorrichtung gemäß Anspruch 8 gelöst.This object is achieved by a method with the features of claim 1 how a device according to claim 8 solved.

Ein besonderer Vorteil des erfindungsgemäßen Verfahrens und der Vorrichtung besteht darin, dass aufgrund der zeitweiligen spekulativen Aufhebung von Datenabhängigkeiten über die Verwendung vorhergesagter Headerdaten mehrere Prozessierungsschritte pa­ rallel gestartet werden können, die Reihenfolge der Prozessierungsschritte im Hinblick auf die Bearbeitungszeit optimiert angeordnet werden kann und sich dadurch im statisti­ schen Mittel die Latenzzeit deutlich reduziert.There is a particular advantage of the method and the device according to the invention in that due to the temporary speculative lifting of data dependencies several processing steps pa about the use of predicted header data can be started in parallel, the order of the processing steps in view can be arranged in an optimized manner for the processing time and thus in the statistical mean latency is significantly reduced.

Weitere Ausgestaltungen der Erfindung sind Gegenstand mehrerer Unteransprüche.Further embodiments of the invention are the subject of several dependent claims.

Gemäß einer bevorzugten Ausführungsform wird der Inhalt der Headerdaten für eine be­ stimmte Anzahl von in der Vergangenheit bearbeiteten Datenblöcken gespeichert und die Vorhersage des Inhalts der Headerdaten für einen empfangenen Datenblock erfolgt auf der Basis der gespeicherten Headerdaten. Auf diese Weise kann die Historie von in der Vergangenheit übertragenen Datenblöcken zur Schaffung eines Vorabwissens über die künftig zu erwartenden Datenblöcke genützt werden.According to a preferred embodiment, the content of the header data for a be certain number of data blocks processed in the past are saved and the content of the header data is predicted for a received data block  based on the saved header data. In this way, the history of in data blocks transmitted in the past to create a prior knowledge about the data blocks to be expected in the future are used.

Eine noch weitergehende Reduzierung der Bearbeitungszeit kann dadurch erreicht wer­ den, dass der Inhalt der Headerdaten mehrerer Bereiche vorhergesagt wird und die je­ weils zugeordneten Verarbeitungsschritte parallel begonnen werden.Anyone can achieve a further reduction in processing time that the content of the header data of several areas is predicted and each assigned processing steps are started in parallel.

Im Falle, dass hierbei der Inhalt der Headerdaten eines Bereiches nicht mit den tatsäch­ lichen entsprechenden Headerdaten übereinstimmt und der zugehörige eingeleitete Ver­ arbeitungsschritt abgebrochen werden muss, kann dadurch Zeit gespart werden, dass der Inhalt der Headerdaten für die folgenden Bereiche auf der Basis des Überprüfungs­ ergebnisses erneut vorhergesagt wird.In the event that the content of the header data of an area does not match the actual corresponding header data matches and the associated initiated Ver If the work step has to be canceled, time can be saved that the content of the header data for the following areas based on the review result is predicted again.

Gemäß einer bevorzugten Ausführungsform sind die Bereiche verschiedenen Protokoll­ schichten zugeordnet und die Vorhersage wird bezüglich einer Protokollstapelcharakte­ ristik getroffen. Dadurch kann eine beschleunigte Weiterleitung von Internetdatenblö­ cken, z. B. von Datagrammen, erreicht werden.According to a preferred embodiment, the areas are different protocol layers are assigned and the prediction is related to a protocol stack character hit. This can accelerate the forwarding of Internet data blocks tick, e.g. B. from datagrams can be achieved.

Die Vorhersage kann sich auch auf das Vorhandensein von möglichen Header-Erweite­ rungsfeldern eines Datenblocks erstrecken. Da solche Header-Erweiterungsfelder die Länge des Protokollheaders beeinflussen, kann eine Vorhersage über das Vorhanden­ sein solcher Felder die Ausführung von Prozessierungsschritten beschleunigen.The prediction can also refer to the presence of possible header expansions fields of a data block. Because such header extension fields are the The length of the protocol header can influence the prediction of the existence such fields accelerate the execution of processing steps.

Um die Wahrscheinlichkeit einer richtigen Vorhersage der Headerdaten zu erhöhen, kann erfindungsgemäß ein Markierer mitgeführt werden, der angibt, ob ein bearbeiteter Datenblock im Sinne eines Transitsystems weitergeleitet wird oder in dem Verarbei­ tungssystem endet.To increase the probability of a correct prediction of the header data, According to the invention, a marker can be carried, which indicates whether a processed Data block is forwarded in the sense of a transit system or in the processing system ends.

Gemäß einer weiteren bevorzugten Ausführungsform kann die Latenzzeit eines Daten­ blocks dadurch verkürzt werden, dass eine Vorhersage zu Werten gemacht wird, die sich erst nach dem Herausziehen von Protokoll-Headerdaten und der Durchführung von Pro­ zessierungsschritten ergeben.According to a further preferred embodiment, the latency of a data blocks can be shortened by making a prediction on values that change only after extraction of protocol header data and the execution of Pro cessation steps result.

Zweckmäßigerweise basiert die Vorhersage auf einer Empfangshistorie dieser Werte. Anhand der in den beiliegenden Zeichnungen dargestellten bevorzugten Ausgestaltun­ gen wird die Erfindung im folgenden näher erläutert. Es zeigen: The prediction is expediently based on a reception history of these values. Based on the preferred embodiment shown in the accompanying drawings gene, the invention is explained in more detail below. Show it:  

Fig. 1 ein offenes Protokollschichtenmodell nach dem Stand der Technik; FIG. 1 is an open protocol layer model according to the prior art;

Fig. 2 das Internetprotokoll Version 4 nach dem Stand der Technik; Fig. 2 the Internet Protocol Version 4 of the prior art;

Fig. 3 den zeitlichen Ablauf der Prozessierungsschritte bei sequentieller Header­ datenbearbeitung nach dem Stand der Technik: FIG. 3 shows the timing of the processing steps in sequential header data manipulation according to the prior art:

Fig. 4 den zeitlichen Ablauf der Prozessierungsschritte bei pseudoparalleler Headerdatenbearbeitung nach dem Stand der Technik Fig. 4 shows the timing of the processing steps in pseudo-parallel header data processing according to the prior art

Fig. 5 den zeitlichen Ablauf der Prozessierungsschritte beim Bearbeiten eines Datenblocks gemäß der vorliegenden Erfindung; FIG. 5 shows the timing of the processing steps when processing a data block according to the present invention;

Fig. 6 ein Blockschaltbild mit einer Vorrichtung zum Verarbeiten von Datenblö­ cken nach der vorliegenden Erfindung; Fig. 6 is a block diagram showing an apparatus for processing Datenblö CKEN according to the present invention;

Fig. 7 ein Zeitdiagramm der Prozessierungsschritte bei korrekter Vorhersage der Headerdaten; Fig. 7 is a timing diagram of the processing steps with correct prediction of the header data;

Fig. 8 ein Zeitdiagramm der Prozessierungsschritte bei falscher Vorhersage der Headerdaten; Fig. 8 is a time chart of processing steps due to incorrect prediction of the header data;

Fig. 9 den Aufbau der Headerdaten des Transport Control Protocol; FIG. 9 is the structure of the header data of the Transport Control Protocol;

Fig. 10 die Kapselung von Tunnelprotokollen; Fig. 10 shows the encapsulation of tunneling protocols;

Fig. 11 ein Blockschaltbild eines virtuellen privaten Netzwerks. Fig. 11 is a block diagram of a virtual private network.

Im folgenden werden bevorzugte Ausgestaltungen der Erfindung näher beschrieben. Ähnliche oder korrespondierende Einzelheiten des erfindungsgemäßen Gegenstandes sind mit denselben Bezugszeichen versehen.Preferred embodiments of the invention are described in more detail below. Similar or corresponding details of the subject matter of the invention are provided with the same reference numerals.

Fig. 5 zeigt den zeitlichen Ablauf der Prozessierungsschritte, die bei der Bearbeitung des Datenblocks durchgeführt werden müssen, für den Fall, dass alle Prozessierungs­ schritte zum Zeitpunkt 501 gleichzeitig gestartet werden. Dies kann dann erfolgen, wenn die Datenabhängigkeit der einzelnen Prozessierungsschritte PSj aufgrund der Vorhersa­ ge von entsprechenden Headerdaten spekulativ aufgehoben wird. Fig. 5 shows the chronological sequence of the processing steps that need to be performed in the processing of the data block in the event that all Prozessierungs steps are started simultaneously at the time five hundred and first This can take place if the data dependency of the individual processing steps PSj is speculatively canceled due to the prediction of corresponding header data.

Fig. 6 zeigt den schematischen Aufbau eines Transit- oder Endsystems gemäß der vor­ liegenden Erfindung. Das System 100 übernimmt die auf den angeschlossenen Übertra­ gungsstrecken 601 ankommenden Datenblöcke, die z. B. Fragmente eines Datagramms sein können, und speichert diese in den Eingangsspeicher 606. Da die gesamte anwen­ dungsbezogene zu übertragende Information die in einzelnen Protokollen festgelegten maximalen Transfereinheiten in Oktetts überschreiten kann, ist ein Datagramm sende­ seitig in mehrere Datagrammfragmente zu unterteilen. Mittels eines Datagrammheaderfeldes, das im Eingangsspeicher 606 gespeichert wird und dessen Inhalt ausdrückt, ob es sich bei einem Datagramm um ein Fragment oder um das letzte Fragment eines Da­ tagramms handelt, kann auf den Start eines neuen Datagramms geschlossen werden. Im Fall des Internetprotokolls Version 4 (siehe Fig. 2) enthält das Feld "Kennzeichen" 203 diese Information. Der empfangene Datenblock besteht jeweils aus einem Header­ anteil und einem Nutzdatenteil. Im Fall von Datagrammfragmenten ist der Headeranteil in jedem einzelnen Fragment enthalten und der gesamte Nutzdatenanteil auf die einzel­ nen Fragmente aufgeteilt. Die Zurückbildung zum ursprünglich gesendeten Datagramm aus den einzelnen Datagrammfragmenten findet im Endsystem 103 (siehe Fig. 1A) statt. Fig. 6 shows the schematic structure of a transit or end system according to the prior invention. The system 100 takes over on the connected transmission lines 601 incoming data blocks, the z. B. may be fragments of a datagram, and stores them in input memory 606 . Since the entire application-related information to be transmitted can exceed the maximum transfer units specified in individual protocols in octets, a datagram on the transmit side must be subdivided into several datagram fragments. The start of a new datagram can be concluded by means of a datagram header field, which is stored in the input memory 606 and whose content expresses whether a datagram is a fragment or the last fragment of a datagram. In the case of the Internet Protocol version 4 (see FIG. 2), the "identifier" field 203 contains this information. The data block received consists of a header part and a user data part. In the case of datagram fragments, the header portion is contained in each individual fragment and the entire user data portion is divided between the individual fragments. The reconstruction to the originally sent datagram from the individual datagram fragments takes place in the end system 103 (see FIG. 1A).

Eine Vorhersageeinheit 602 liefert die für die Weiterbehandlung des Datenblocks vor­ hergesagte nötige Headerinformation der Protokollschichten 2 bis 7 an die Systemsteue­ rungseinheit 605. Die Systemsteuerungseinheit 605, welche die gesamte Steuerung der erfindungsgemäßen Vorrichtung durchführt, veranlasst die Übertragung der Headerdaten in das Zwischenregister 612. Das gesamte Datagramm, d. h. die komplette Headerinfor­ mation und die Nutzdaten werden bei Verfügbarkeit im Eingangsspeicher 606 in den Systemhauptspeicher 611 übertragen. Somit ist ein Teil des Datagramms, nämlich der vorhergesagte Headerdatenanteil durch die Aufteilung 609 mehrfach gespeichert vor­ handen. Das Zwischenregister 612 besitzt erfindungsgemäß eine Überbrückung 610, die zur direkten Übertragung der in der Prozessierungsvorschrift des vorhergesagten Daten­ paket-Protokollstapels vorgeschriebenen Headerdaten aus dem Eingangsspeicher 606 in die Prozessierungsblöcke 613 entsprechend der Vorhersage dient. In den Prozessie­ rungsblöcken 613 werden auf der Basis der vorhergesagten Headerdaten die entspre­ chend durchzuführenden Prozessierungsschritte eines Datagramms ausgeführt. Es fin­ det hierbei nicht zwangsläufig eine Zuordnung der Prozessierungsblöcke zu den Proto­ kollschichten statt, sondern die Prozessierungsblöcke können auch entsprechend der Funktionalität zugeordnet werden, z. B. Prozessierungsblock für Prüfsummenberech­ nung.A prediction unit 602 supplies the necessary header information of the protocol layers 2 to 7 predicted for the further processing of the data block to the system control unit 605 . The system control unit 605 , which carries out the overall control of the device according to the invention, initiates the transfer of the header data into the intermediate register 612 . The entire datagram, ie the complete header information and the useful data, are transferred to the main system memory 611 if available in the input memory 606 . Thus, part of the datagram, namely the predicted header data portion, is stored multiple times by the division 609 . According to the invention, the intermediate register 612 has a bypass 610 , which is used for the direct transmission of the header data prescribed in the processing specification of the predicted data packet protocol stack from the input memory 606 into the processing blocks 613 in accordance with the prediction. In the processing blocks 613 , the corresponding processing steps of a datagram are carried out on the basis of the predicted header data. It is not necessarily an assignment of the processing blocks to the protocol layers, but the processing blocks can also be assigned according to the functionality, e.g. B. Processing block for checksum calculation.

Parallel zur Ausführung der einzelnen Prozessierungsschritte führt die Systemsteue­ rungseinheit 605 eine Überprüfung der vorhergesagten Headerdaten auf Übereinstim­ mung mit den tatsächlich vorliegenden Headerdaten durch. Für den Fall, dass die Hea­ derdaten korrekt vorhergesagt wurden, werden in einem Transitsystem 102 die für die Weiterübertragung nötigen Headerdaten im Zwischenregister 612 zusammengestellt und durch Datenverkettung mit den im Systemhauptspeicher 611 abgelegten Nutzdaten zu­ sammengeführt. Dies ist durch den Schritt 608 symbolisiert. Die Daten werden dem Ausgangsspeicher 604 zugeführt und verlassen das System über einen der Aus­ gangsports 607. Für den Fall, dass es sich bei der erfindungsgemäßen Vorrichtung 100 um ein Endsystem 103 handelt, werden die Daten der entsprechenden Anwendung zu­ geführt.In parallel with the execution of the individual processing steps, the system control unit 605 carries out a check of the predicted header data for compliance with the actually available header data. In the event that the header data were correctly predicted, the header data required for the further transmission are compiled in the intermediate register 612 in a transit system 102 and combined with the user data stored in the system main memory 611 by data chaining. This is symbolized by step 608 . The data are fed to the output memory 604 and leave the system via one of the output ports 607 . In the event that the device 100 according to the invention is an end system 103 , the data are fed to the corresponding application.

Fig. 7 zeigt den zeitlichen Verlauf der Prozessierungsschritte eines Datagramms, die für alle Protokollschichten parallel begonnen wurden, für den Fall, dass die an den Punkten 701 und 702 gelesene Headerinformation mit den zum Zeitpunkt 700 ange­ nommenen Werten übereinstimmt. Es zeigt sich, dass die Latenzzeit durch die Bearbei­ tungszeit der aufwendigsten Prozessierungsebene bestimmt wird und nicht durch die Summe aller Bearbeitungszeiten. FIG. 7 shows the temporal course of the processing steps of a datagram, which were started in parallel for all protocol layers, in the event that the header information read at points 701 and 702 matches the values assumed at time 700 . It turns out that the latency is determined by the processing time of the most complex processing level and not by the sum of all processing times.

Fig. 8 zeigt ein Zeitdiagramm für den Fall, dass die jeweiligen vorhergesagten Header­ daten nicht mit den tatsächlich vorliegenden Headerdaten übereinstimmen. Zum Zeit­ punkt 700 wird, ebenso wie in Fig. 7 gezeigt, mit der parallelen Prozessierung des Da­ tenblocks in allen Protokollschichten begonnen. In Schritt 801, der die Analyse des Pro­ tokollfeldes des nächst höheren Protokolltyps beinhaltet, stellt sich jedoch heraus, dass bezüglich der Prozessierung der nächst höheren Protokollschicht keine Übereinstim­ mung mit der bei der Vorhersage getroffenen Protokollstapelcharakteristik-Aussage er­ zielt wurde. Es muss also zum Zeitpunkt 803, beginnend mit der Schicht, für welche die Fehlvorhersage getroffen wurde, und unter Kenntnis des aus der Analyse erhaltenen faktisch vorliegenden Protokolltyps dieser und der tiefergelegenen Schichten die Vorher­ sageeinheit 602 erneut angesprochen werden und eine neue Vorhersage für die höher liegenden Schichten entnommen werden. Fig. 8 shows a timing diagram for the case that the respective predicted header data do not coincide with the actually present header data. At time 700 , as shown in FIG. 7, parallel processing of the data block is started in all protocol layers. In step 801 , which includes the analysis of the protocol field of the next higher protocol type, it turns out, however, that with regard to the processing of the next higher protocol layer, no agreement was reached with the protocol stack characteristic statement made during the prediction. At time 803 , beginning with the layer for which the incorrect prediction was made and knowing the actual protocol type of these and the lower layers obtained from the analysis, the prediction unit 602 must be addressed again and a new prediction for the higher layers Layers are removed.

Die Bearbeitungsschritte in dieser und den höheren Protokollschichten werden abgebro­ chen und es wird auf der Basis einer erneuten Vorhersage für die Headerdaten der hö­ herliegenden Protokollschichten wiederum mit der parallelen Prozessierung des Daten­ blocks begonnen. In dem Beispiel der Fig. 8 stellt sich außerdem im Prozessierungs­ schritt 802 heraus, dass die Headerdaten bezüglich der Bearbeitung in der Protokoll­ schicht S4 falsch vorhergesagt wurden. Die Bearbeitung in dieser und allen höher lie­ genden Protokollschichten wird daher abgebrochen und entsprechend den tatsächlich ermittelten Headerdaten aus der Protokollschicht 3 wird zum Zeitpunkt 804 mit der Pro­ zessierung entsprechend den tatsächlich gelesenen Headerdaten in Schicht 3 begon­ nen. Dieser Ablauf wiederholt sich bei falscher Vorhersage 802, 804, bis alle Analysen der Protokolltypfelder durchgeführt worden sind und alle für das faktisch vorliegende Datagramm durchzuführenden Prozessierungsschritte 814 bis 818 durch Richtigkeits­ überprüfung verifiziert richtigerweise ausgeführt wurden.The processing steps in this and the higher protocol layers are terminated and, based on a renewed prediction for the header data of the higher protocol layers, the parallel processing of the data block is started again. In the example of FIG. 8, it also turns out in processing step 802 that the header data regarding the processing in the protocol layer S4 were incorrectly predicted. The processing in this and all higher lying protocol layers is therefore terminated and in accordance with the header data actually determined from the protocol layer 3 , the processing in accordance with the actually read header data in layer 3 is started at time 804 . This process repeats itself in the event of incorrect prediction 802 , 804 until all analyzes of the protocol type fields have been carried out and all the processing steps 814 to 818 to be carried out for the actual datagram have been correctly carried out by verifying the correctness.

Die Protokollstapelcharakteristika empfangener Datenblöcke, vorzugsweise Da­ tagramme, werden, wie in Fig. 6 gezeigt ist, in der Protokollstapelaufzeichnungseinheit 603 abgelegt. Die Vorhersageeinheit 602 greift auf die Aufzeichnungseinheit 603 zu und berechnet einen Vorhersagewert für mindestens eine Protokollstapelcharakteristik des nächsten zu empfangenden Datenblocks. Die Protokollstapelaufzeichnungseinheit 603 beinhaltet außerdem einen Markierer, der angibt, ob ein bearbeitetes Datagramm im Sinne eines Transitsystems 102 weitergeleitet werden soll oder im vorliegenden System im Sinne eines Endsystems 103 endet. Die Markiererinformation ist Teil der Eingangs­ information der Vorhersageeinheit 602.The protocol stack characteristics of received data blocks, preferably datagrams, are stored in the protocol stack recording unit 603 , as shown in FIG. 6. The prediction unit 602 accesses the recording unit 603 and calculates a prediction value for at least one protocol stack characteristic of the next data block to be received. The protocol stack recording unit 603 also contains a marker which indicates whether a processed datagram is to be forwarded in the sense of a transit system 102 or ends in the present system in the sense of an end system 103 . The marker information is part of the input information of the prediction unit 602 .

Da manche Protokolltypen aufgrund der Möglichkeit von Header-Erweiterungsfeldern (z. B. bei dem in Fig. 2 dargestellten Internetprotokoll in Version 4 in Form des Feldes 206 "Optionen und Auffüllung") in der Länge des Protokollheaderteils variieren und in ei­ nem Datenrahmen somit die Positionen der höhergelegenen Protokollheaderbereiche veränderlich sind, beinhaltet das Verfahren der Protokollstapelvorhersage auch Vorher­ sageinformationen über das Vorhandensein von solchen Erweiterungsfeldern.Since some types of protocol vary due to the possibility of header extension fields (e.g. in the Internet protocol shown in FIG. 2 in version 4 in the form of field 206 "options and padding") in the length of the protocol header part and thus in a data frame Positions of the higher protocol header areas are variable, the protocol stack prediction method also includes prediction information about the existence of such extension fields.

Über die Vorhersage der eingekapselten nächst höheren Schichtprotokolle eines Da­ tagramms hinaus, die jeweils durch einen wohl definierten Wert im Protokollheaderbe­ reich gekennzeichnet sind, kann die Protokollstapelaufzeichnungseinheit 603 auch da­ hingehend erweitert werden, dass die Historie der Werte einzelner Protokollheaderfelder aufgezeichnet werden. Die Vorhersageeinheit 602 ermittelt daraus Vorhersagewerte für einzelne Protokollheaderfelder, mit denen das empfangene Datagramm spekulativ pro­ zessiert werden kann, und die vor Abschluss der Prozessierung des Datagramms auf ih­ re Richtigkeit überprüft werden.In addition to predicting the encapsulated next higher layer protocols of a datagram, each of which is richly characterized by a well-defined value in the protocol header, the protocol stack recording unit 603 can also be expanded such that the history of the values of individual protocol header fields is recorded. The prediction unit 602 uses this to determine prediction values for individual protocol header fields with which the received datagram can be processed speculatively and which are checked for correctness before the processing of the datagram is completed.

Bei der Bearbeitung eines Datagramms in einem Transitsystems 102 oder einem End­ system 103 müssen entsprechend der Protokollstapelcharakteristik, dem Einsatzgebiet und der Spezifizierung der unterstützen Fähigkeiten unterschiedliche Prozessierungs­ schritte durchgeführt werden. Sollen beispielsweise differenzierte Dienste durch das System 100 unterstützt werden, so stellt der dafür benötigte Prozessierungsschritt der Datagrammklassifizierung eine Funktion dar. Im Beispiel des in Fig. 9 dargestellten Schichtprotokolls "Transport Control Protocol" wie auch in dem in Fig. 2 dargestellten Internetprotokoll Version 4 werden aus mehreren Protokolldatenfeldern, wie der Sende­ adresse 204, der Zieladresse 205, dem Feld "Art des Services" 202 sowie dem Sende­ port 1101 und dem Empfangsport 1103, mit Hilfe einer systeminternen, vorab bekannten Berechnungsvorschrift zur Klassifizierung ein kennzeichnender Wert, das sogenannte Klassifizierungsoktett, erzeugt. Erfindungsgemäß kann die Historie der Resultate von Prozessierungsschritten, die zu einer Anzahl von Datagrammen und einem bestimmten System gehören, aufgezeichnet und mittels der Vorhersageeinheit vorausgesagt werden.When processing a datagram in a transit system 102 or an end system 103 , different processing steps must be carried out in accordance with the protocol stack characteristic, the area of application and the specification of the capabilities supported. If, for example, differentiated services are to be supported by the system 100 , the processing step of the datagram classification required for this represents a function. In the example of the layer protocol "Transport Control Protocol" shown in FIG. 9 as well as in the Internet protocol version 4 shown in FIG. 2 from a number of protocol data fields, such as the send address 204 , the destination address 205 , the field "type of service" 202 as well as the send port 1101 and the receive port 1103 , using a system-internal, previously known calculation rule for classification, a characteristic value, the so-called classification octet, generated. According to the invention, the history of the results of processing steps belonging to a number of datagrams and a specific system can be recorded and predicted using the prediction unit.

Zur Fernanbindung mobiler Benutzer an ein zumeist firmeneigenes Netzwerk existieren sogenannte virtuelle private Netzwerke. Hierzu muss über eine öffentliche Netzstruktur, wie sie z. B. das Internet darstellt, eine sichere Verbindung hergestellt werden. Zur Da­ tenverschlüsselung zwischen zwei öffentlichen Netzpunkten, einem Tunneleingangs­ punkt und einem Tunnelausgangspunkt, bedient man sich sogenannter Tunnelprotokolle 902, die eine Kapselung des Passagierprotokolls 903, verbunden mit einer Verschlüs­ selung, durchführen, bevor das Datagramm dem Trägerprotokoll 901 zugeführt wird (siehe Fig. 10).So-called virtual private networks exist for the remote connection of mobile users to a mostly company-owned network. For this, a public network structure such as B. represents the Internet, a secure connection can be established. For data encryption between two public network points, a tunnel entry point and a tunnel exit point, so-called tunnel protocols 902 are used , which encapsulate the passenger protocol 903 , combined with encryption, before the datagram is supplied to the carrier protocol 901 (see FIG. 10 ).

In Fig. 11 ist ein solches virtuelles privates Netzwerk in Form eines Blockschaltbildes dargestellt. Der fernangebundene Benutzer 1001 baut eine Verbindung zur Vermitt­ lungsstelle 1003 auf. Nach der Identifizierung des Benutzers etabliert die Vermittlungs­ stelle 1003 einen sogenannten Tunnel zum Firmengateway 1005, welcher der Zugangs­ punkt zum Firmennetzwerk und gleichzeitig Tunnelendpunkt ist. Für die öffentliche Netzinfrastruktur 1004 bleibt die verschlüsselte Information unbekannt.Such a virtual private network is shown in FIG. 11 in the form of a block diagram. The remote user 1001 establishes a connection to the switching center 1003 . After the user has been identified, the switching center 1003 establishes a so-called tunnel to the company gateway 1005 , which is the access point to the company network and at the same time the tunnel end point. The encrypted information remains unknown to the public network infrastructure 1004 .

Gemäß der vorliegenden Erfindung kann nun im Rahmen der Vorhersage von Header­ daten z. B. in der Vermittlungsstelle 1003 und/oder im Firmengateway 1005 das Vorhan­ densein eines Tunnelprotokolls oberhalb des Trägerprotokolls vorhergesagt werden. Da­ durch kann eine schnellere Bearbeitung von gekapselten Datenblöcken erreicht werden. Die Vorhersage kann wiederum auf der Basis der aufgezeichneten Datagrammhistorie erfolgen.According to the present invention can now z. B. in the exchange 1003 and / or in the corporate gateway 1005, the existence of a tunnel protocol above the carrier protocol can be predicted. This enables faster processing of encapsulated data blocks. The prediction can in turn be based on the recorded datagram history.

Claims (15)

1. Verfahren zum Verarbeiten von Datenblöcken, wobei jeder Datenblock Headerdaten und Nutzdaten aufweist und die Headerdaten die Verarbeitung der Nutzdaten koordi­ nieren und in mindestens zwei Bereiche unterteilt sind, denen jeweils mindestens ein Verarbeitungsschritt zugeordnet ist, dadurch gekennzeichnet,
dass der Inhalt der Headerdaten für mindestens einen der Bereiche vorhergesagt wird und der zugehörige Verarbeitungsschritt auf der Basis des vorhergesagten In­ halts eingeleitet wird, bevor der entsprechende Bereich der Headerdaten ausgewer­ tet wird,
und dass der Inhalt der vorhergesagten Headerdaten auf Übereinstimmung mit den tatsächlichen entsprechenden Headerdaten überprüft wird und der eingeleitete Ver­ arbeitungsschritt abgebrochen oder sein Ergebnis verworfen wird, für den Fall, dass die getroffene Vorhersage fehlerhaft war.
1. A method for processing data blocks, each data block having header data and user data and the header data coordinating the processing of the user data and being divided into at least two areas, each of which is assigned at least one processing step, characterized in that
that the content of the header data for at least one of the areas is predicted and the associated processing step is initiated on the basis of the predicted content before the corresponding area of the header data is evaluated,
and that the content of the predicted header data is checked for agreement with the actual corresponding header data and the initiated processing step is aborted or its result is discarded in the event that the prediction made was incorrect.
2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass der Inhalt der Header­ daten für eine bestimmte Anzahl von in der Vergangenheit bearbeiteten Datenblö­ cken gespeichert wird und die Vorhersage des Inhalts der Headerdaten für einen empfangenen Datenblock auf der Basis der gespeicherten Headerdaten erfolgt.2. The method according to claim 1, characterized in that the content of the header data for a certain number of data blocks processed in the past cken is saved and predicting the content of the header data for one received data block based on the stored header data. 3. Verfahren nach Anspruch 1 oder 2, dadurch gekennzeichnet, dass der Inhalt der Headerdaten mehrerer Bereiche vorhergesagt wird und die jeweils zugeordneten Verarbeitungsschritte parallel begonnen werden.3. The method according to claim 1 or 2, characterized in that the content of the Header data of several areas is predicted and the respectively assigned Processing steps can be started in parallel. 4. Verfahren nach Anspruch 3, dadurch gekennzeichnet, dass im Falle einer falschen Vorhersage des Inhalts der Headerdaten eines Bereiches der Inhalt der Headerdaten von weiteren Bereichen erneut vorhergesagt wird.4. The method according to claim 3, characterized in that in the case of an incorrect Prediction of the content of the header data of an area of the content of the header data is predicted again by other areas. 5. Verfahren nach einem der Ansprüche 1 bis 4, dadurch gekennzeichnet, dass die Bereiche verschiedenen Protokollschichten zugeordnet sind und eine Vorhersage bezüglich einer Protokollstapelcharakteristik getroffen wird.5. The method according to any one of claims 1 to 4, characterized in that the Areas are assigned to different protocol layers and a prediction regarding a protocol stack characteristic. 6. Verfahren nach einem der Ansprüche 1 bis 5, dadurch gekennzeichnet, dass eine Vorhersage bezüglich des Vorhandenseins von Header-Erweiterungsfeldern eines Datenblocks getroffen wird. 6. The method according to any one of claims 1 to 5, characterized in that a Predicting the existence of header extension fields Data blocks is hit.   7. Verfahren nach einem der Ansprüche 1 bis 6, dadurch gekennzeichnet, dass ein Markierer mitgeführt wird, der die Information beinhaltet, ob der Datenblock weiter­ geleitet wird oder in einem System endet.7. The method according to any one of claims 1 to 6, characterized in that a Marker is carried, which contains the information whether the data block continues is directed or ends in a system. 8. Verfahren nach einem der Ansprüche 1 bis 7, dadurch gekennzeichnet, dass eine Vorhersage zu Werten gemacht wird, die sich erst nach dem Herausziehen von Pro­ tokoll-Headerdaten und der Durchführung von Prozessierungsschritten ergeben.8. The method according to any one of claims 1 to 7, characterized in that a Prediction is made to values that only change after pulling out Pro tokoll header data and the execution of processing steps result. 9. Verfahren nach Anspruch 8, dadurch gekennzeichnet, dass die Vorhersage auf ei­ ner Empfangshistorie dieser Werte basiert.9. The method according to claim 8, characterized in that the prediction on egg based on the reception history of these values. 10. Vorrichtung zum Verarbeiten von Datenblöcken, wobei jeder Datenblock Headerda­ ten und Nutzdaten aufweist und die Headerdaten die Verarbeitung der Nutzdaten ko­ ordinieren und in mindestens zwei Bereiche unterteilt sind, denen jeweils mindestens ein Verarbeitungsschritt zugeordnet ist, dadurch gekennzeichnet,
dass die Vorrichtung eine Vorhersageeinheit (602) aufweist, die den Inhalt der Hea­ derdaten für mindestens einen der Bereiche vorhersagt, und
dass die Vorrichtung weiter eine Systemsteuerungseinheit (605) aufweist, die den zugehörigen Verarbeitungsschritt auf der Basis des vorhergesagten Inhalts einleitet, bevor der entsprechende Bereich der Headerdaten ausgewertet wird, und die den In­ halt der vorhergesagten Headerdaten auf Übereinstimmung mit den tatsächlichen entsprechenden Headerdaten überprüft und veranlasst, dass der eingeleitete Verar­ beitungsschritt abgebrochen oder sein Ergebnis verworfen wird, für den Fall, dass die getroffene Vorhersage fehlerhaft war.
10. Device for processing data blocks, each data block having header data and useful data and the header data coordinating the processing of the useful data and being divided into at least two areas, each of which is assigned at least one processing step, characterized in that
that the device has a prediction unit ( 602 ) that predicts the content of the header data for at least one of the areas, and
that the device further comprises a system control unit ( 605 ) which initiates the associated processing step on the basis of the predicted content before the corresponding area of the header data is evaluated and which checks and causes the content of the predicted header data to match the actual corresponding header data that the initiated processing step is canceled or its result is discarded in the event that the prediction made was incorrect.
11. Vorrichtung nach Anspruch 10, dadurch gekennzeichnet, dass die Vorrichtung weiterhin eine Aufzeichnungseinheit (603) aufweist, welche die Headerdaten einer bestimmten Anzahl von in der Vergangenheit bearbeiteten Datenblöcken speichert, und dass die Vorhersage des Inhalts der Headerdaten für einen empfangenen Da­ tenblock auf der Basis der gespeicherten Headerdaten erfolgt.11. The device according to claim 10, characterized in that the device further comprises a recording unit ( 603 ) which stores the header data of a certain number of data blocks processed in the past, and in that the prediction of the content of the header data for a received data block on the Based on the saved header data. 12. Vorrichtung nach Anspruch 10 oder 11, dadurch gekennzeichnet, dass die Vor­ richtung weiterhin einen Eingangsspeicher (606) aufweist, in dem die empfangenen Datenblöcke gespeichert werden. 12. The apparatus of claim 10 or 11, characterized in that the device further comprises an input memory ( 606 ) in which the received data blocks are stored. 13. Vorrichtung nach einem der Ansprüche 10 bis 12, dadurch gekennzeichnet, dass die Vorrichtung weiterhin einen Systemhauptspeicher (611), in dem die Nutzdaten des empfangenen Datenblocks gespeichert sind, sowie ein Zwischenregister (612), in dem die Headerdaten des empfangenen Daten­ blocks gespeichert sind, umfasst.13. Device according to one of claims 10 to 12, characterized in that the device further a system main memory ( 611 ) in which the useful data of the received data block is stored, and an intermediate register ( 612 ) in which the header data of the received data block is stored are included. 14. Vorrichtung nach einem der Ansprüche 10 bis 13, dadurch gekennzeichnet, dass die Vorrichtung weiterhin einen Ausgangsspeicher (604), in welchem die weiterzulei­ tenden Datenblöcke gespeichert sind, aufweist.14. Device according to one of claims 10 to 13, characterized in that the device further comprises an output memory ( 604 ) in which the data blocks to be forwarded are stored. 15. Vorrichtung nach einem der Ansprüche 10 bis 14, dadurch gekennzeichnet, dass die Vorrichtung weiterhin mindestens einen Prozessierungsblock (613) zum Durch­ führen des Verarbeitungsschritts aufweist, der mit der Systemsteuerungseinheit (605) und dem Zwischenregister (612) verbunden ist.15. The device according to one of claims 10 to 14, characterized in that the device further comprises at least one processing block ( 613 ) for performing the processing step, which is connected to the system control unit ( 605 ) and the intermediate register ( 612 ).
DE2001115799 2001-03-30 2001-03-30 Method and device for processing data blocks Expired - Fee Related DE10115799B4 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE2001115799 DE10115799B4 (en) 2001-03-30 2001-03-30 Method and device for processing data blocks

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE2001115799 DE10115799B4 (en) 2001-03-30 2001-03-30 Method and device for processing data blocks

Publications (2)

Publication Number Publication Date
DE10115799A1 true DE10115799A1 (en) 2002-10-17
DE10115799B4 DE10115799B4 (en) 2005-05-04

Family

ID=7679692

Family Applications (1)

Application Number Title Priority Date Filing Date
DE2001115799 Expired - Fee Related DE10115799B4 (en) 2001-03-30 2001-03-30 Method and device for processing data blocks

Country Status (1)

Country Link
DE (1) DE10115799B4 (en)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5056058A (en) * 1989-03-13 1991-10-08 Hitachi, Ltd. Communication protocol for predicting communication frame type in high-speed processing system
US5678060A (en) * 1993-10-28 1997-10-14 Hitachi, Ltd. System for executing high speed communication protocol processing by predicting protocol header of next frame utilizing successive analysis of protocol header until successful header retrieval

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5056058A (en) * 1989-03-13 1991-10-08 Hitachi, Ltd. Communication protocol for predicting communication frame type in high-speed processing system
US5678060A (en) * 1993-10-28 1997-10-14 Hitachi, Ltd. System for executing high speed communication protocol processing by predicting protocol header of next frame utilizing successive analysis of protocol header until successful header retrieval

Also Published As

Publication number Publication date
DE10115799B4 (en) 2005-05-04

Similar Documents

Publication Publication Date Title
DE19736515B4 (en) Network node for packet switching with selective data processing and corresponding method
DE60200285T2 (en) Lossless SRNS relocation procedure in a radio communication system
DE60113906T2 (en) Method and apparatus for packet transmission with packet header compression
DE10302788B4 (en) Device and method for rearranging TFTs in a mobile communication system
DE69830046T2 (en) DEVICE AND METHOD FOR MONITORING AND EVALUATING APPLICATION PROTOCOLS FOR DATA TRANSMISSION SYSTEMS IN NETWORKS
DE112011103561T5 (en) Network processor and method for accelerating data packet parsing
EP0847165A1 (en) Digital data transmission network and method for operating a data transmission network
EP2961106A1 (en) Network, head subscriber and data transmission method
DE60320685T2 (en) METHOD AND SYSTEM FOR IMPLEMENTING QUICK CHECKS IN A GPRS COMMUNICATION SYSTEM USING TUNNELS
EP3871377A1 (en) Distributor node, automation network and method for transmitting telegrams
DE19812163C2 (en) Device identification and initialization procedures
DE602005006127T2 (en) Secure communication method and device for processing SEND data packets
DE10231941A1 (en) Data packet structure for directly addressed multicast protocol
DE102015016716A1 (en) Method for transmitting transmission data from a transmitting device to a receiving device for processing the transmission data and means for carrying out the method
DE10115799A1 (en) Method for processing of data-blocks e.g. for internet communication, involves dividing header-data into at least two zones
EP0509114A1 (en) Procedure for the transmission of data to a plurality of stations
EP1505845A1 (en) Method and device for determining at least one transmission parameter in a transmission system
DE60214688T2 (en) PROCESS FOR UPGRADING PROGRAMS IN A NETWORK SERVER WITH RELATED SYSTEM AND SOFTWARE PRODUCT
DE10115794A1 (en) Protocol analyzer has control system which either erases or transfers received packet to second interface based on destination address in packet
DE3810576A1 (en) EMBEDDED TESTING SYSTEM FOR TESTING COMPLIANCE OF COMMUNICATION SYSTEMS
DE102019125545B3 (en) DATA TRANSFER PROCEDURE, SEGMENT TELEGRAM AND AUTOMATION COMMUNICATION NETWORK
DE10327545B4 (en) Method and device for processing real-time data
DE102004004345A1 (en) System and method for communication between remote objects and local proxies
DE102019210230A1 (en) Device and method for attack detection in a computer network
DE102016112314B4 (en) Method for determining at least one quality of service parameter of a packet-based data transmission

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee