DE60034353T2 - Regelbasierte ip datenverarbeitung - Google Patents
Regelbasierte ip datenverarbeitung Download PDFInfo
- Publication number
- DE60034353T2 DE60034353T2 DE60034353T DE60034353T DE60034353T2 DE 60034353 T2 DE60034353 T2 DE 60034353T2 DE 60034353 T DE60034353 T DE 60034353T DE 60034353 T DE60034353 T DE 60034353T DE 60034353 T2 DE60034353 T2 DE 60034353T2
- Authority
- DE
- Germany
- Prior art keywords
- rules
- data packets
- data
- flow
- packets
- 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 - Lifetime
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/302—Route determination based on requested QoS
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/302—Route determination based on requested QoS
- H04L45/308—Route determination based on user's profile, e.g. premium users
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/38—Flow based routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/56—Routing software
- H04L45/563—Software download or update
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/16—Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
- H04L69/161—Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/16—Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
- H04L69/168—Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP] specially adapted for link layer protocols, e.g. asynchronous transfer mode [ATM], synchronous optical network [SONET] or point-to-point protocol [PPP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/40—Network security protocols
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/02—Capturing of monitoring data
- H04L43/026—Capturing of monitoring data using flow identification
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0823—Errors, e.g. transmission errors
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0823—Errors, e.g. transmission errors
- H04L43/0829—Packet loss
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0852—Delays
- H04L43/087—Jitter
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0876—Network utilisation, e.g. volume of load or congestion level
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0876—Network utilisation, e.g. volume of load or congestion level
- H04L43/0888—Throughput
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/06—Notations for structuring of protocol data, e.g. abstract syntax notation one [ASN.1]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/12—Protocol engines
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/16—Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/22—Parsing or analysis of headers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/30—Definitions, standards or architectural aspects of layered protocol stacks
- H04L69/32—Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
Description
- GEBIET DER ERFINDUNG
- Die vorliegende Erfindung betrifft allgemein ein Echtzeit- und Nicht-Echtzeit-Verfahren und Vorrichtungen zum Klassifizieren von Datenpaketen und deren nachfolgender Verarbeitung gemäß einem Regelsatz.
- ALLGEMEINER STAND DER TECHNIK
- Das Internet-Protokoll (IP) ist das Verfahren oder Protokoll, durch das Daten im Internet von einem Computer zu einem anderen gesendet werden. Internet-Kommunikation verwendet im allgemeinen geschichtete Software des OSI-Modell-Typs. OSI teilt die Telekommunikation in sieben Schichten (layers) auf. Die Schichten befinden sich in zwei Gruppen. Die oberen vier Schichten werden immer dann verwendet, wenn eine Nachricht von oder zu einem Benutzer geleitet wird. Die drei unteren Schichten (bis hinauf zu der Netzwerkschicht) werden verwendet, wenn irgendeine Nachricht durch den Hostcomputer geleitet wird. Für diesen Computer bestimmte Nachrichten werden zu den oberen Schichten geleitet. Nachrichten, die für einen bestimmten anderen Host bestimmt sind, werden nicht zu den oberen Schichten heraufgeleitet, sondern zu einem anderen Host weitergeleitet. Die sieben Schichten sind die folgenden:
Schicht 7: Anwendungsschicht – auf dieser Schicht werden Kommunikationspartner identifiziert, Dienstgüte identifiziert, Benutzerauthentifikation und -privatsphäre berücksichtigt und etwaige Einschränkungen bezüglich der Datensyntax identifiziert. (Diese Schicht ist nicht die Anwendung selbst, obwohl bestimmte Anwendungen Anwendungsschichtfunktionen ausführen können.)
Schicht 6: Darstellungsschicht – eine Schicht, die gewöhnlich Teil eines Betriebssystems ist und ankommende und abgehende Daten von einem Darstellungsformat in ein anderes umsetzt (zum Beispiel aus einem Text-Stream in ein Popup-Fenster mit dem neuangekommenen Text). Diese Schicht wird manchmal als Syntaxschicht bezeichnet.
Schicht 5: Sitzungsschicht – durch diese Schicht werden Gespräche, Austausche und Dialoge zwischen den Anwendungen an jedem Ende aufgebaut, koordiniert und abgeschlossen. Sie behandelt Sitzungs- und Verbindungskoordination.
Schicht 4: Transportschicht – diese Schicht verwaltet Ende-zu-Ende-Steuerung (zum Beispiel Bestimmung, ob alle Pakete angekommen sind) und Fehlerprüfung. Sie stellt vollständigen Datentransfer sicher.
Schicht 3: Netzwerkschicht – diese Schicht behandelt das Routen der Daten (Senden der Daten in die richtige Richtung zu dem richtigen Ziel auf abgehenden Übertragungen und Empfangen ankommender Übertragungen auf Paketebene). Die Netzwerkschicht führt Routing und Weiterleitung durch.
Schicht 2: Datenstreckenschicht – diese Schicht stellt Fehlerkontrolle und Synchronisierung für die physische Ebene bereit.
Schicht 1: die physische Schicht – diese Schicht übermittelt den Bitstrom durch das Netzwerk auf der elektrischen und mechanischen Ebene. Sie stellt die Hard waremittel zum Senden und Empfangen von Daten auf einem Träger bereit. - IP-Pakete fließen durch alle sieben Schichten über Router und dergleichen. Im Internet ist ein Router eine Einrichtung oder in bestimmten Fällen Software in einem Computer, die den nächsten Netzwerkpunkt bestimmt, zu dem ein Paket auf dem Weg zu seinem Ziel weitergeleitet werden soll. Der Router ist mit mindestens zwei Netzwerken verbunden und entscheidet, auf welchem Weg jedes Informationspaket gesendet wird, auf der Basis eines aktuellen Verständnis des Zustands der Netzwerke, mit denen er verbunden ist. Ein Router befindet sich an jedem Verbindungspunkt der Netzwerke oder einem Gateway, einschließlich jedes Internet-Einwahlpunkts (POP – Point-of-Presence). Im allgemeinen erzeugt oder führt ein Router eine Tabelle der verfügbaren Routen und ihrer Zustände und verwendet diese Informationen zusammen mit Distanz- und Kostenalgorithmen, um die beste Route für ein gegebenes Paket zu bestimmen. In der Regel kann ein Paket eine Anzahl von Netzwerk-Zwischenverbindungen mit Routern durchqueren, bevor es an seinem Ziel ankommt.
- Die Bandbreite jedes konkreten Netzwerks ist begrenzt. Folglich wird es wichtig, den Transport von Paketen über die Netzwerkwege zu verwalten und zu lenken, um die Nutzung solcher Bandbreite zu maximieren.
- Derzeitige Router empfangen ein IP-Paket. Der Router schaut auf die IP-Quelle und Zieladresse, bei der es sich um Informationen der Schicht 3 handelt. Die MAC-Adresse – die zu Schicht 2 gehört – wurde bereits in der MAC behandelt. Auf der Basis des Routing- Tabelleneintrags und der Streckenkapazität leitet der Router das Paket zu dem Ausgangsport weiter. Wenn der Ausgangsport überlastet oder die Strecke blockiert ist, wird das Paket entweder gepuffert oder verworfen. Wenn der konkrete Router auch mit anderen Schichten zu tun hat, führt er dies sequentiell durch, nachdem bereits der Ausgangsport bestimmt wurde (d.h. Klassifikation auf Ebene 2/3 und Weiterleitung). Der Router liest dann die Nutzinformationen des Pakets nochmals und findet heraus, was als nächstes zu unternehmen ist. Folglich ist ein weiteres Nachschlagen notwendig, dieses Mal für die eigentlichen Informationen von Ebene 3++. Ob das Paket gepuffert werden kann, ob es zurückgestellt, neu geroutet, verworfen werden kann usw.. Das Paket könnte auch etikettiert werden, da der nächste Sprung (d.h. der nächste Router auf dem Weg) im allgemeinen etikettierte Pakete verstehen und diese priorisieren kann. Für Ebene 4 wird das Paket nochmals gelesen, es wird eine Entscheidung getroffen und so weiter über die verschiedenen Ebenen hinweg.
- Eine beispielhafte vorbekannte Lösung enthält den StreamProcessor von Neo Networks, der einen Backbone-Switch-Router enthält, der Netzwerkverkehrstypen unterscheidet und auf jede Klasse von identifiziertem Verkehr bestimmte Regeln anwendet. Der Streamprozessor kann auf ein beliebiges Paket eine beliebige Regel anwenden, kann aber keine Aktion ausführen. Zum Beispiel ist er auf Aktionen beschränkt, die in der Regel durch einen traditionellen Router ausgeführt werden. Zu solchen Aktionen gehören Weiterleiten, Puffern oder Verwerfen. Der StreamProcessor kann keine Firewall-Fähigkeiten, wie zum Beispiel das Abwerfen von Paketen, ausführen.
- Das US-Patent Nr. 6,598,034 B1 betrifft ein Netzwerkschnittstellensystem mit konfigurierbarer Protokollanalysefähigkeit mit Zentralsteuerungslogik, die auf viele verschiedene Netzwerkeinrichtungen anwendbar ist. Anspruch 1 dieses Patents offenbart Merkmale zum Anwenden von programmierbar konfigurierbaren Protokollbeschreibungen auf die Verarbeitung von Rahmen über ein Netzwerk.
- Es wird folglich auf diesem Gebiet ein Vermittlungssystem auf Router-Basis benötigt, das auf einem Prozessor basiert und einen völlig flexiblen Automaten zum Routen von Datenpaketen bereitstellt. Die Konfiguration sollte einen Regelsatz zum Routen der verschiedenen Pakete in einem IP-Strom gemäß Mustern entlang jedes Punkts in dem IP-Strom benutzen. Zu den analysierten Mustern würden bestimmte Felder in dem IP-Kopfteil und/oder Datenmuster in den Nutzinformationen oder dergleichen gehören.
- Das System sollte gesamte IP-Flüsse (oder Pakete) auf solche Muster analysieren. Das Vermittlungssystem sollte ein Paket (wenn möglich und/oder gewünscht) gemäß Informationen der Schicht 3 in einer ersten Phase weiterleiten. Wenn ein Paket nicht weitergeleitet werden kann, sollte eine zweite Phase das Paket völlig gemäß Regeln klassifizieren. Die Regeln können durch einen Just-in-Time-Compiler im Verlauf kompiliert und angewandt werden. Ein Benutzer oder Administrator sollte in der Lage sein, die Regeln auf dynamische Weise zu editieren und neu anzuwenden, ohne den Dienst zu beeinträchtigen. Das System sollte außerdem zusätzliche Fähigkeiten bereitstellen, darunter Firewalls.
- KURZFASSUNG DER ERFINDUNG
- Um das obige zu erzielen und gemäß dem Zweck der vorliegenden Erfindung werden eine Vorrichtung und ein diesbezügliches Verfahren offenbart, wodurch ein IP-VerkehrsFluss verarbeitet und Aktionen an den Datenpaketen durchgeführt werden. Die Datenpakete werden gemäß einem Regelsatz verarbeitet, der auf Echtzeit- oder Wirespeed-Grundlage kompiliert und angewandt wird.
- Das Routen besteht heutzutage im allgemeinen darin, das Paket zu klassifizieren und dann eine oder mehrere der folgenden Handlungen auszuführen: Weiterleiten des Paktets, Abwerfen des Pakets (keine Benachrichtigung an den Absender), Verwerfen des Pakets (mit Benachrichtigung des Absenders, einschließlich Rückdruck), Puffern des Pakets, Einrichten eines Stroms für nachfolgende Pakete des IP-Flusses oder -Stroms, Überwachen des Pakets (oder Flusses oder Stroms). Das Routen ist jedoch nicht auf nur diese Aktionen beschränkt. Das vorliegende System verwendet eine Form von Routing auf Regelbasis, wobei ein System auf ein beliebiges Paket eine beliebige Regel anwenden und einen beliebigen gewünschten Befehl ausführen kann. Dies ergibt beträchtliche Freiheit für den Netzwerk-Administrator sowie Leistungsfähigkeit und Schutz vor Eindringlingen. Dieser Prozeß geschieht mit Wirespeed, wodurch CoS/QoS-Fähigkeiten bereitgestellt werden, so daß die Benutzer daraus Nutzen ziehen werden. Aufgrund einer besseren Netzwerkausnutzung ziehen auch die Träger und Backbone-Betreiber Nutzen, weil das vorliegende System einen beständig höheren mittleren Auslastungsgrad mit verringerten Burst und Spitzen ermöglicht.
- Wenn das vorliegende System das Paket auf der Basis von Informationen der Schicht 3 (IP-Adresse) nicht routen kann (oder gewünscht wird, es nicht zu routen), wird das Paket zu der CPU weitergeleitet. Zu einem solchen Nicht-Routen kann es zum Beispiel kommen, weil das System definiert hat, daß ein Paket zu überwachen ist, zu verwerfen ist (in bezug auf die Erkennung von Eindringlingen, Überlastung usw.) oder weil das System noch keine IP-Flussinformationen eingerichtet hat und so weiter. In dieser Situation werden alle verfügbaren Schichtinformationen (d.h. für die Schichten 2, 3, 4, 5, 6 und 7) gelesen und zur Anwendung der Regeln, die in bezug darauf, wie das Paket auf einer beliebigen Schicht zu verarbeiten ist, definiert wurden, verwendet. Gleichzeitig schlägt das vorliegende System daher den Zielport nach und die Kriterien, wie das Paket zu routen ist (oder verarbeitet allgemein ausgedrückt das Paket). Zum Beispiel würde ein Nachschlagen nach der IP-Adresse 192.37.3.1, einer TCP-Portindikation HTTP und ein Anwendungstyp Netscape "Zielport 17" zurückgeben und gleichzeitig "paketgemäß priorisierten Status etikettieren, sofort routen/weiterleiten/vermitteln, nicht puffern, Benutzer hat Priorität, nicht überwachen, nicht verwerfen, nicht abwerfen" und so weiter. Diese Regeln werden durch den Netzwerkadministrator (NetAdmin) definiert. Sie werden dann auf die Routersoftware oder den NMS angewandt. Die Router-Software oder der NMS verringern diese Konditionen auf die minimale Anzahl logischer Konditionen gemäß dem Verfahren von Quine-McCluskey oder ähnlichen Verfahren, und diese Regeln werden dann in der Routing-Tabelle für die Paketverarbeitungsinformationen abgelegt.
- Ein durch das vorliegende System bereitgestellter Unterschied (oder Vorteil) besteht darin, daß herkömmliche Router beide Nachschlagevorgänge (d.h. Zielports, umfassend Weiterleitungsinformationen und Paketverarbeitungsaktion) sequentiell verabeiten. Das vorliegende System verarbeitet solche Nachschlagevorgänge parallel. Ein weiterer Unterschied besteht darin, daß das vorliegende System ermöglicht, eine beliebige Aktion auf ein beliebiges Paket auf der Basis einer beliebigen Regel, die der NetAdmin definieren könnte, anzuwenden. Anders ausgedrückt, ist das vorliegende System nicht eingeschränkt.
- Die vorliegende Erfindung kann dafür konfiguriert werden, vielfältige Aufgaben durchzuführen, die an Informationen operieren, darunter (zum Beispiel) die OSI-Schichten (d.h. Schichten 2–7), die Lastsituation des Routers, Info über den abgehenden Port und/oder auf alle (oder bestimmte) Pakete oder IP-Flüsse oder- Ströme anzuwendende allgemeine Regeln (wie etwa Überwachung und so weiter). Die Informationen können gleichzeitig über viele verschiedene Pakete hinweg angewandt werden. Das vorliegende System entscheidet dann, ob das Paket zu Puffern, zu verwerfen (gemäß Leaky Bucket oder anderen Algorithmen abzuwerfen), zu überwachen, weiterzuleiten ist oder ein Informationsstrom einzurichten ist, um in der Lage zu sein, danach die folgenden Pakete des Stroms schneller und mit weniger beteiligter Rechenleistung weiterzuleiten.
- Im allgemeinen wird das Paket in einer (und manchmal zwei) Phasen betrachtet (oder verarbeitet). Aus Gründen der Leistungsfähigkeit könnte Phase 1 logisch und physisch getrennt sein. Das System betrachtet die IP- Adresse und entscheidet, ob das Paket bereits geroutet werden kann. Wenn das Paket geroutet werden kann, wird diese Aufgabe dann ausgeführt, solange die Aufwärtsstrecke Kapazität aufweist, der Weg durch den Router frei ist und so weiter. Wenn das System keine Entscheidung treffen kann, wird es notwendig, das Paket völlig zu klassifizieren. Anders ausgedrückt, findet das System die Priorität, Lebensdauer, den Überwachungsstatus und alle anderen anzuwendenden Regeln heraus. Folglich führt das vorliegende System das Nachschlagen der Route parallel zu dem Nachschlagen des Rests der Attribute des bestimmten Pakets durch, d.h. beide Nachschlagevorgänge erfolgen parallel. Vorbekannte Router arbeiten insofern anders, als sie das Nachschlagen der Route durchführen und danach sequentiell das Nachschlagen des Rests der Attribute durchführen. Das das vorliegende System die Aufgaben parallel ausführt, besteht weniger Latenz. Folglich können Entscheidungen (bezüglich des Pakets) so früh wie möglich getroffen werden.
- Das vorliegende System wendet eine etwaige Regel an, die definiert werden kann, und auf jedes Paket zur Laufzeit und in Echtzeit angewandt wird. Für Echtzeitanwendungen könnte man einen Compiler des Typs JIT (Just In Time) verwenden. Andernfalls könnten die Regeln sogar ohne den JIT-Compiler auferlegt werden. Die Regeln werden (zum Beispiel) durch das JIT auf die minimale Anzahl logischer Konditionen reduziert (z.B. AND/NAND/OR/XOR/EXOR). Die vorliegende Erfindung berücksichtigt außerdem die Router- und Aufwärtsstreckenlastsituation beim Routing-Prozeß (d.h. dem Weiterleitungsteil) in einer oder zwei Phasen direkt in dem Klassifikationsprozeß. Dies unterscheidet sich von dem vorbekannten System, das solche Informationen später berücksichtigen könnte, wie zum Beispiel im abgehenden Port, einem zentralen Teil des Routers oder an einer anderen Stelle.
- Das vorliegende System ergibt dadurch eine neue und einzigartige Möglichkeit zum Klassifizieren des Pakets so früh wie möglich mit so viel Informationen wie möglich – aus allen OSI-Schichten und aus allen Regeln – die auf jedes IP-Paket anzuwenden sind. Das vorliegende System führt die Klassifikation nicht sequentiell durch, sondern führt sie statt dessen so früh wie möglich in dem Prozeß vollständig durch (für den gesamten IP-Fluss). Je mehr Informationen über ein bestimmtes Paket in den frühen Phasen des Prozesses verfügbar sind, desto besser kann das vorliegende System es klassifizieren und desto effizienter kann der IP-Fluss geroutet werden.
- Gemäß einem Aspekt der vorliegenden Erfindung wird eine Routing-Engine bereitgestellt, die vielfältige Operationen ausführt. Die Routing-Engine empfängt und analysiert einen ankommenden IP-Fluss. Von Beginn an betrachtet (oder analysiert) die Engine alle Teile des IP-Flusses, wie zum Beispiel den IP-Kopfteil, den TCP-Kopfteil, Anwendungs-Kopfteil usw. Dann entscheidet die Engine, ob das Datenpaket weiterzuleiten oder zu puffern ist. Es wird ein Regelsatz verwendet, um ein Muster (oder einen Mustersatz) zu definieren, der in dem ankommenden IP-DatenFluss zu analysieren (oder zu vergleichen/anzupassen) ist. Die Regeln können über eine entsprechende graphische Schnittstelle editiert oder entwickelt werden. Die Regeln können im Verlauf (z.B. in Echtzeit oder Online usw.) über einen Compiler des Typs Just-in-Time (JIT) oder dergleichen angewandt wer den. Die Regeln könnten auch in der Laufzeit ohne Verwendung eines JIT-Compilers auferlegt werden. Das Muster kann sich an einer beliebigen Stelle in dem IP-Fluss, z.B. in IP-Paket-Kopfteilen oder Paketdaten, befinden. Wenn ein bestimmtes Muster erkannt wird, können Aktionen an dem IP-Fluss und/oder einzelnen IP-Paketen ausgeführt werden. Zu solchen Aktionen können Routing-Entscheidungen gehören, wobei das Paket auf bestimmte Routing-Fähigkeit abgebildet wird. Zu solchen Verkehrsdurchsetzungsfähigkeiten kann folgendes gehören: unspezifizierte Bitrate (UBR), variable Bitrate (VBR), konstante Bitrate (CBR) oder ihre Äquivalente. Das Paket kann auch zum späteren Senden und/oder zum Ausgleich von Verkehrslasten zwischen verschiedenen Punkten (oder Knoten) in einem Netzwerk gepuffert werden.
- In einem weiteren Aspekt werden die Routing-Zuweisungen auf existierende Fähigkeiten bezüglich Dienstgüte (QoS) und/oder Dienstklasse (CoS) abgebildet.
- In einem weiteren Aspekt wird der DatenFluss als Ergebnis eines erkannten Musters, das Funktion einer assoziierten Regel ist, abgeändert oder modifiziert. Das erkannte Muster kann abgeändert oder modifiziert werden. Als Alternative kann das IP-Paket selbst abgeändert oder modifiziert werden. Dazu würde gehören, Zieladressen oder dergleichen für Datenpakete zu ändern (oder auszutauschen).
- In einem weiteren Aspekt könnten der DatenFluss (oder Pakete) als Ergebnis eines erkannten Datenmusters in Abständen abgeworfen oder ganz verworfen werden. Zum Beispiel könnten alle mit einem bestimmten Virusmuster assoziierte Datenpakete abgeworfen oder verworfen wer den. Mit einer bestimmten Quellenadresse assoziierte Pakete könnten auch abgeworfen oder verworfen werden, wenn bestimmt wurde, daß diese Quellenadresse unerwünschte Materialien sendet.
- Die vorliegende Erfindung liefert deshalb traditionelle Routing-Funktionen, wie zum Beispiel L2-Vermittlung, L3-Routing und IP-Vermittlung. Zusätzlich kann die vorliegende Erfindung (unter anderem) die folgenden Fähigkeiten bereitstellen: Firewall, Erkennung von Eindringlingen, Virus-Detektion, Hintertür-Eindringschutz, Lastausgleich und -aufteilung, Netzverkehrskontrolle, Verkehrsformung und SAN als dringende L7-Anwendung auf Routern.
- Als Ergebnis solcher Aspekte gehört zu einem Nutzen oder Vorteil die gleichmäßige Verteilung (über die Zeit) der Bandbreitenauslastung auf einem bestimmten Netzwerk.
- Diese und weitere Vorteile der vorliegenden Erfindung werden bei Durchsicht der folgenden ausführlichen Beschreibung und der verschiedenen Figuren und Zeichnungen deutlich.
- KURZE BESCHREIBUNG DER ZEICHNUNGEN
- Die Erfindung zusammen mit ihren weiteren Vorteilen kann am besten durch Bezugnahme auf die folgende Beschreibung in Verbindung mit den beigefügten Zeichnungen verstanden werden. Es zeigen:
-
1 ein vorbekanntes Blockdiagramm eines IP-Flusses mit IP-Paketen und Kopfteilinformationen. -
2 ein vorbekanntes Blockdiagramm bestimmter repräsentativer Kopfteilfelder in dem Kopfteil eines beliebigen einzelnen IP-Pakets. -
3 ein Diagamm der Bandbreitenauslastung als Funktion der ungefähren Tageszeit. -
4 ein Diagramm eines Kurzzeitprofils der Bandbreitenauslastung als Funktion der Zeit, abgeleitet aus3 . -
5 ein Blockdiagramm der Verkapselung von IP-Paketdaten in einem IP-Fluss. -
6 ein Blockdiagramm bestimmter repräsentativer Elemente, die bei der Implementierung einer vorbekannten Routing-Konfiguration verwendet werden. -
7 ein Blockdiagramm bestimmter repräsentativer Elemente, die zur Implementierung mindestens einer Ausführungsform der vorliegenden Erfindung verwendet werden könnten. -
8 ein Flussdiagramm bestimmter repräsentativer Schritte, die zur Implementierung mindestens einer Ausführungsform der vorliegenden Erfindung verwendet werden könnten. -
9 ein Flussdiagramm bestimmter repräsentativer Schritte, die zur Implementierung der beispielhaften durch JIT kompilierten Regeln gemäß der vorliegenden Erfindung verwendet werden könnten. -
10A ein Flussdiagramm bestimmter repräsentativer Schritte, die zur Implementierung der beispielhaften durch JIT kompilierten Regeln gemäß der vorliegenden Erfindung verwendet werden könnten. -
10B ein Flussdiagramm bestimmter repräsentativer Schritte, die zur Implementierung der beispielhaften durch JIT kompilierten Regeln gemäß der vorliegenden Erfindung verwendet werden könnten. -
11 einen repräsentativen Kommunikationsprotokollstapel gemäß der vorliegenden Erfindung. -
12 eine repräsentative Router-Controllerkonfiguration gemäß der vorliegenden Erfindung. -
13 einen repräsentativen Protokollstapel für eine Implementierung der vorliegenden Erfindung über Gigabit-Ethernet. -
14 einen repräsentativen Protokollstapel für eine Implementierung der vorliegenden Erfindung über ATM. -
15 einen repräsentativen Protokollstapel für eine Implementierung der vorliegenden Erfindung über SDH/SONET. -
16 einen repräsentativen Protokollstapel für eine Implementierung der vorliegenden Erfindung über ATM und SDH. -
17 ein Blockdiagramm einer verteilten System-Router-Konfiguration gemäß der vorliegenden Erfindung. - AUSFÜHRLICHE BESCHREIBUNG DER ERFINDUNG
- Die vorliegende Erfindung analysiert Informationen für die Schichten 2, 3, 4, 5, 6 und 7 – d.h. alle verfügbaren Informationen – und leitet dann über ein einziges Nachschlagen nicht nur ab, wohin das Paket zu Routen ist, sondern auch was im Fall bestimmter Situationen zu tun ist (wobei die Durchführung weiterer Operationen an den Paketen erforderlich werden könnte). Es wird ein Regelsatz entwickelt und angewandt und gibt bestimmte Anleitungen zur Handhabung der Pakete gemäß solchen (konditionalen) Situationen. Das vorliegende System kann dadurch eine beliebige Regel auf ein beliebiges Paket anwenden und kann dazu verwendet werden, eine beliebige Aktion an einem beliebigen Paket hervorzurufen. Der allgemeine Vorteil des vorliegenden Systems besteht darin, daß nur ein einziger Nachschlagevorgang durchgeführt wird und diese Informationen aus allen Schichten 2–7 kommen (statt nur aus den Schichten 2 und 3).
- Ein weiterer Vorteil besteht darin, daß die Regeln deshalb so abgestimmt werden können, daß sie an spezifischeren Informationselementen aus allen Schichten wirken. Dadurch erhält der Betreiber des Backbone auch den Vorteil, auf wesentlich ausgereiftere Weise mit Paketen umzugehen. Zum Beispiel könnte das vorliegende System (gegebenenfalls) Pakete gemäß Leaky-Bucket-Theorien und dergleichen abwerfen. Außerdem könnte ein Paket als keinerlei Echtzeit-Anforderungen aufweisend identifiziert werden, und falls die Kommunikationsstrecke überlastet (oder langsam oder außer Betrieb ist), kann dieses bestimmte Paket gepuffert werden. Vorbekannte Einrichtungen stellten solche Fähigkeiten nur durch separate Nachschlagevorgänge oder separate Zugriffe und dergleichen bereit. Die vorliegende Erfindung führt alle solchen Aufgaben in einem Schritt aus.
- Nur ein Nachschlagen und/oder eine auf Regeln basierende Analyse zu Beginn für alle Informationen (d.h. über alle Schichten hinweg) durchzuführen, kann wesentlich mehr Verarbeitungsleistung erfordern als vorbekannte Systeme, die möglicherweise nur die Schichten 2 und 3 betrachten. Solche vorbekannten Systeme verbrauchen jedoch bei späteren Operationen mehr Betriebsmittel, indem sie weitere Nachschlagevorgänge oder auf Regeln basierende Anleitungen durchführen. Darüber hinaus müssen Backbones von Datennetzen im allgemeinen gemäß Spitzendatentransfer Raten-Anforderungen eingerichtet werden. Dies kann sehr teuer werden, weil ein Systementwickler dann jeden Router so auslegen muß, daß die erforderliche Spitzenleistungsfähigkeit an jedem Knoten berücksichtigt wird. Im Mittel könnte jeder Router jedoch nur Lasten im Bereich von 15–50% aufweisen; dennoch müßte ein Entwurf ein Netzwerk um einen Faktor 2 überprovisionieren, um Spitzenperioden zu berücksichtigen. Letzendlich führt dies zu wesentlich größeren Kosten bei der Bildung und Aufrechterhaltung der Infrastruktur.
- Im Gegensatz dazu liefert das vorliegende System einen intelligenten Routing-Mechanismus zur effizienten Ausnutzung eines Netzwerks, wobei Lasten über den Vernetzungsknoten hinweg ausgeglichen werden. Das vorliegende System kann bestimmte Pakete, die nicht unbedingt Echtzeit-Anforderungen aufweisen, puffern, und dies erfolgt über einen einzigen Schritt. Während das vorliegende System zu Beginn zusätzliche Hardware oder Verarbeitungsleistung erfordern könnte, kann solche Hardware (und/oder Verarbeitungsleistung) viel kostengünstiger und leichter implementiert werden, als in einem im allgemeinen ineffizienten System zusätzliche Knoten zu besitzen. Indem es ungefähr um einen Faktor 2 weniger Knoten zur Herstellung der Infrastruktur eines Datennetzes erfordert, ergibt das vorliegende System letztendlich insgesamt Ersparnisse.
- Ein Aspekt der hier beschriebenen vorliegenden Erfindung stellt folglich eine Vorrichtung oder ein Verfahren zur Durchführung von Nachschlagen und Klassifikation von Datenpaketen aus allen verfügbaren Daten über alle Schichten hinweg in einem einzigen Schritt für den gesamten DatenFluss bereit. Die Pakete werden danach gemäß einer solchen anfänglichen Verarbeitung aller Pakete geroutet (oder gepuffert oder dergleichen). Das vorliegende System wendet außerdem einen Regelsatz auf die Datenmuster in dem IP-Fluss an, um die Pakete weiter zu lenken. Um die Regeln in Echtzeit anzuwenden, kann man einen JIT-Compiler (Just In Time) verwenden. Andernfalls könnten die Regeln in der Laufzeit ohne einen JIT-Compiler auferlegt werden. In der folgenden Beschreibung werden zahlreiche spezifische Einzelheiten dargelegt, um ein umfassendes Verständnis der vorliegenden Erfindung zu gewähren. Für Fachleute ist jedoch ersichtlich, daß die vorliegende Erfindung ohne bestimmte oder alle dieser spezifischen Einzelheiten ausgeübt werden kann. In anderen Fällen werden wohlbekannte Strukturen und/oder Prozeßschritte nicht im Detail beschrieben, damit die vorliegende Erfindung nicht unnötig verschleiert wird.
- Nunmehr mit Bezug auf
1 ist ein vorbekanntes Blockdiagramm100 eines repräsentativen IP-Flusses102 gezeigt. Der IP-Fluss102 enthält eine Reihe von Daten paketen104 ,106 und108 , die als Teil des Datenstroms eingestreut sind. Jedes IP-Paket enthält bestimmte jeweilige Kopfteilinformationen110 ,112 und114 . Die Kopfteile dienen zur Ermöglichung des Sendens des Pakets über ein Netzwerk oder dergleichen. Die Kopfteilinformationen werden auch von der TCP-Software verwendet, um die Pakete erfolgreich umzuarrangieren, wenn sie an einer Zielmaschine ankommen. - Nunmehr mit Bezug auf
2 ist ein vorbekanntes Blockdiagramm200 bestimmter repräsentativer Felder gezeigt, die in dem Kopfteil eines Datenpakets enthalten sein könnten. Solche Kopfteilinformationen könnten in der Regel aus 1500 oder mehr Informationsbyte bestehen. Zu den gezeigten beispielhaften Feldern gehören ein IP-Kopfteilfeld202 , ein Anwendungs-Kopfteilfeld204 und ein Dienstklassen-Kopfteilfeld206 . Das IP-Kopfteilfeld202 würde Informationen wie etwa die Quellenadresse (SA) und die Zieladresse (DA) für das Datenpaket enthalten. Die SA und die DA dienen zum Weiterleiten oder Vermitteln eines Pakets zu einem vorbestimmten Ausgangsport. Das Anwendungs-Kopfteilfeld204 würde Informationen wie etwa den Typ der Anwendung, die das Paket gesendet hat, enthalten. Der Typ der Anwendung könnte eine unterschiedliche Behandlung für die Pakete rechtfertigen, insbesondere, wenn die Anwendung zeitempfindliche Daten erfordert. Das Dienstklassen-Kopfteilfeld206 würde einen Grad des Dienstes enthalten, der dem bestimmten Informationspaket zugewiesen wurde. Gemäß der vorliegenden Erfindung könnten vier Dienstklassen existieren, darunter Platin-Dienst, Gold-Dienst, Silber-Dienst und Bronze-Dienst. An Hand des Dienstgrads kann man ferner die entsprechende auf das Datenpaket anzuwendende Routing-Geschwindigkeit entscheiden. Wie durch den Fortsetzungsfall208 gezeigt, könnte man auch viele andere Arten von Kopfteildaten verwenden. Gemäß der vorliegenden Erfindung könnte man beliebige solche IP-Flusspaket- oder Kopfteilinformationen, wie in1 und2 gezeigt, während des anfänglichen Schritts des Routens und Klassifizierens der Daten verwenden. - Gemäß derzeitigen Problemen auf dem Gebiet der IP-Datenübertragung ist die Bandbreitenbenutzung von Netzwerkeinrichtungen zu bestimmten Tageszeiten im Gegensatz zu anderen größer. Im allgemeinen könnten solche Spitzen 9 Uhr morgens, 12 Uhr mittags, 3 Uhr nachmittags und dann wieder 7 Uhr abends auftreten, wenn sich die Benutzer von zu Hause aus einloggen. Nunmehr mit Bezug auf
3 ist eine repräsentative Kurve der Bandbreitenbenutzung während eines typischen Zeitraums von 12 Stunden in einem beispielhaften Netzwerk gezeigt. Wie gezeigt, nimmt die Bandbreitenbenutzung im Verlauf des Tages zu und erreicht um 2–4 Uhr nachmittags eine Spitze. Danach fällt die Benutzung ab. Dieses relative Problem könnte gelöst werden, indem man bestimmten Datenverkehr von der Spitzenzeit von 2–4 Uhr nachmittags zu anderen Zeiten verlagert zu denen normalerweise nicht so viel Verkehr auftritt. Für nicht zeitempfindliche Anwendungen, wie zum Beispiel bestimmte Arten von E-Mail, könnten die Datenpakete umgeleitet und zu verschiedenen Zeiten während des Tages gesendet werden. Gemäß der vorliegenden Erfindung kann das Routen und Klassifizieren der Pakete dazu führen, daß solche Pakete gepuffert werden, um Verkehrsflüsse über verschiedene Datenwege und zu verschiedenen Tageszeiten zu glätten. - Nunmehr mit Bezug auf
4 ist eine repräsentative Kurve der Bandbreitenbenutzung für ein Kurzzeit-Verkehrsprofil gezeigt, z.B. ist das Profil ein beliebiger Teil der Zeit aus der Kurve von3 . Bei402 ist eine große Spitze gezeigt, wobei in den umgebenden Regionen eine geringere Bandbreitenbenutzung auftritt. Sogar bei diesem Profil wäre die ideale Situation, die Pakete, die auf der Spitze402 (oder in der Nähe davon) gesendet werden, in jeder Richtung zeitlich zu verlagern, um dadurch die Bandbreitenbenutzung über den Sub-Rahmen-Bereich hinweg zu verflachen. Solche Datenpaket-Verlagerungen könnten in einem beliebigen Bereich von Minuten bis hin zu Sekunden oder Bruchteilen von Sekunden betragen. Durch Verwendung der vorliegenden Erfindung und Anwendung bestimmter kompilierter Regeln (d.h. über einen JIT- oder Laufzeit-Compiler oder dergleichen) kann die Bandbreitenbenutzung über einen beliebigen Zeitbereich hinweg ausgeglichen werden. - Die vorliegende Erfindung kann auch eingekapselte IP-Daten behandeln, um die gegebenen Regeln auf Datenmuster in dem IP-Fluss anzuwenden. In der Telekommunikation ist Einkapselung der Einschluß einer Datenstruktur in eine andere Struktur, so daß die erste Datenstruktur während einer bestimmten Operation an den Daten verborgen ist. Zum Beispiel kann ein gemäß TCP/IP formatiertes Datenpaket in einen ATM-Rahmen eingekapselt werden. ATM (asynchroner Transfermodus) ist eine Vermittlungstechnologie mit festzugeordneten Verbindungen, die digitale Daten zu 53-Byte-Zellen oder Paketen organisiert und diese unter Verwendung von digitaler Signaltechnologie über ein Medium sendet. Individuell wird eine Zelle relativ zu anderen verwandten Zellen asynchron verarbeitet und wird vor dem Multiplexen über die Lei tung in Warteschlangen eingereiht. Im Kontext des Sendens und Empfangens des ATM-Rahmens ist das eingekapselte Paket einfach ein Bitstrom zwischen den ATM-Daten, die den Transfer beschreiben. Nunmehr mit Bezug auf
5 ist ein Blockdiagramm gezeigt, das die Einkapselung eines IP-Pakets darstellt. Es ist ein erstes Paket eines detektierten IP-Flusses502 gezeigt. Das erste Paket502 enthält einen ATM-Kopfteil504 , Nutzinformationen (oder Paketdaten)506 , einen IP-Kopfteil508 und IP-Paketdaten510 . Nachfolgende Pakete von detektiertem IP-Fluss sind als512 gezeigt und enthalten einen ATM-Kopfteil514 , Nutzinformationen516 und IP-Paketdaten518 . Das letzte Paket des detektierten IP-Flusses520 ist als einen ATM-Kopfteil522 , Nutzinformationen524 , IP-Paketdaten526 und einen bestimmten Leerraum528 enthaltend gezeigt. Sogar mit einer solchen Einkapselung analysiert die vorliegende Erfindung den IP-Fluss, um das Routen und Klassifizieren auf alle Datenpakete unter Verwendung aller verfügbaren Informationen und in einem einzigen Schritt anzuwenden. - Bei der vorliegenden Erfindung kann der Entkapselungsprozeß in Hardware oder in Software, die mit der Vorrichtung assoziiert ist, ausgeführt werden. Als Alternative kann der vorliegende Parser den Kopfteil und Nachspann der Einkapselungsentität ignorieren.
- Nunmehr mit Bezug auf
6 ist ein Blockdiagramm600 bestimmter repräsentativer Elemente gezeigt, mit denen man eine vorbekannte Konfiguration implementieren könnte. Es ist ein Router602 mit einem Speicher oder Speichermitteln604 gezeigt. In einer höheren Sprache wird ein Regelsatz608 geschrieben und arrangiert. Die Regeln608 werden einem Compiler606 zugeführt, der aus führbaren Code erzeugt. Der Code wird in die Speichermittel604 heruntergeladen. Eine Quelle610 sendet einen IP-Fluss612 zu der Router-Einrichtung602 . Der Router könnte typischerweise die Schichten 2 und 3 (der OSI-Schichten) analysieren und danach die Pakete auf der Basis von Informationen in diesen beiden Schichten routen (oder weiterleiten). Dabei erfolgt eine erste Nachschlageoperation. Wenn weitere Operationen an den Paketen durchzuführen sind, könnte man bestimmte Regeln anwenden, und dabei erfolgen weitere Nachschlageoperationen. Der Router wendet die Regeln, die in dem Speicher604 kompiliert und fixiert wurden, dann auf den IP-Fluss an, um das Routing der verschiedenen darin enthaltenen Pakete zu bestimmen. Der IP-Fluss wird dann wie durch das Element614 gezeigt zu verschiedenen Zieladressen geroutet. Im allgemeinen sind solche vorbekannten Systeme aufgrund von Ineffizienzen, die (zum Beispiel) durch mehrere Nachschlagevorgänge verursacht werden, nicht völlig in der Lage, die Bandbreitenauslastung eines Netzwerks zu maximieren. - Nunmehr mit Bezug auf
7 ist ein Blockdiagramm700 bestimmter repräsentativer Elemente gezeigt, mit denen man eine Konfiguration gemäß der vorliegenden Erfindung implementieren könnte. Die Konfiguration repräsentiert eine Routing-Engine, die ankommende Datenpakete annimmt und gemäß kompilierten Regeln Routing-Operationen an den Paketen ausführt. Obwohl ein Compiler (im allgemeinen) gezeigt ist, ist zu beachten, daß auch ein Runtime-Compiler oder ein JIT-Compiler (Just-In-Time) oder eine beliebige andere Art von Compiler verwendet werden könnte. Es ist ein Router702 mit auf Paketen basierender Anwendung von Regeln gezeigt. Mit dem Router ist der Compiler706 assoziiert. In einer Sprache wie etwa ASN1 (Abstract Syntax Notation One) wird ein Regelsatz704 entwickelt oder aufrechterhalten. Es könnten auch andere höhere (oder abstrakte) Sprachen verwendet werden, wie zum Beispiel Pascal, C, C++ und dergleichen, wobei die einzige Anforderung darin besteht, daß sie ohne weiteres durch den Compiler706 kompiliert werden können. Er setzt die ASN1-Befehle in Anweisungen für den Prozessor722 um, die es ihm erlauben, Pakete oder Muster herauszufiltern, Muster zu erkennen und dann an dem erkannten Muster bestimmte Aktionen auszuführen. - Es ist eine Quelle
708 gezeigt, die einen IP-Fluss710 zu der Router-Einrichtung702 sendet. Ein Parser711 analysiert die Bitmuster und/oder Felder in dem IP-Fluss. Der gesamte IP-Fluss wird verarbeitet, und alle Informationen betreffend alle Ebenen und alle Regeln werden verwendet, um die beliebigen Datenpakete gemäß einer beliebigen Regel zu routen und zu klassifizieren. Dieser gesamte Prozeß erfolgt über eine Nachschlageoperation zu Beginn. Der Router kann so konfiguriert werden, daß er Regelinformationen (über703 ) kontinuierlich abruft und (über705 ) kompilierte Ergebnisse aus dem Regelsatz704 zurückgibt. Die Regeln könnten über eine graphische Schnittstelle (z.B. das Element720 ) erzeugt werden, die Interaktion zum Eingeben und Revidieren der Regeln auf hierarchische Weise oder anderweitig bereitstellt. Die Regeln könnten auch abrufbar in einem beliebigen von vielfältigen Speichermedien (z.B. elektronische Speicher, Festplatte usw.) gespeichert werden. Solche Regeln werden angewandt, ohne daß jegliche weitere Nachschlageoperationen ausgeführt werden. Die anfängliche Analyse des gesamten IP-Flusses wird benutzt, um alle solchen Regeln anzuwenden. Beispielhafte Ergebnisse der angewandten Regeln wären zum Beispiel ein unmittelbares Weiterleiten des Pakets, wie durch das Element714 gezeigt. Als Alternative könnte man eine Puffereinrichtung712 verwenden, und das Paket würde zur späteren Weiterleitung über716 gepuffert. Auf diese Weise können die Pakete gemäß verschiedenen Kriterien, wie zum Beispiel Kopfteilinformationen (z.B. Dienstklasse oder dergleichen) sortiert und verzögert werden. Die Regeln können auch für Datenmuster an beliebiger Stelle in dem allgemeinen IP-Fluss (ob es sich um eingekapselte Daten handelt oder nicht), wie zum Beispiel Muster in bezug auf Eindringlinge und dergleichen, gelten. - Nunmehr mit Bezug auf
8 ist ein Flussdiagramm800 bestimmter repräsentativer Schritte gezeigt, mit denen man mindestens einen Aspekt der vorliegenden Erfindung implementieren könnte. Gemäß diesem Diagramm würden alle solchen Schritte als Teil eines anfänglichen Nachschlageschritts ausgeführt, der alle Informationen zum Routen und Klassifizieren eines beliebigen Pakets in den Fluss benutzt. Im Schritt802 werden die Regeln zur Verwendung durch den JIT-Compiler (oder anderweitig) formuliert und für den Zugriff durch die JIT-Compilereinrichtung gespeichert. Im Schritt804 wird der in den Router hereinkommende IP-Fluss analysiert. Die Technologie des Analysierens (Parsing) ist wohl bekannt, und die vorliegende Erfindung könnte beliebige dieser Techniken verwenden. Wie bereits erwähnt, würde das Analysieren über den gesamten IP-Fluss hinweg angewandt, und eingekapselte Datenmuster würden auch zur Analyse gemäß den formulierten Regeln getrennt. Im Schritt806 werden bestimmte Muster in dem IP-Fluss detektiert. Die zu detektierenden Muster werden im wesentlichen durch die formulierten Regeln bestimmt. Eine bestimmte Regel präsentiert ein Muster der Wichtigkeit der Detektion und des Handelns daran in dem IP-Fluss. Im Schritt808 werden die Regeln gemäß den entsprechenden Mustern angewandt. Zum Beispiel könnte ein bestimmtes Bitmuster (z.B. das Anwendungsfeld ist gesetzt, um "E-Mail mit niedriger Priorität" anzuzeigen) dann eine Regel zum Routen des assoziierten Pakets über ein Transferprotokoll niedrigerer Priorität tragen. In diesem Schritt werden alle Datenpakete in einem IP-Fluss gemäß allen verfügbaren Informationen, d.h. Regeln, Ports usw., klassifiziert. Im Schritt810 wird eine Prozeßaktion gemäß dem Regelsatz an den Paketen ausgeführt. Die Pakete können modifiziert werden, um die angewandten Routing-Entscheidungen widerzuspiegeln. Die Schritte804 bis810 können in (mindestens) einem einzigen Schritt812 ausgeführt werden, ohne daß das Datenpaket wieder neu klassifiziert werden muß. - Ein Paket mit niedrigerer Priorität könnte zur späteren Weiterleitung gepuffert werden. Dadurch wird ein nützliches Ziel des gleichmäßigeren Verteilens der Bandbreitenauslastung des Netzwerks über die Zeit (oder anderweitig) weiter ermöglicht.
- Die vorliegende Erfindung sieht vor, jeden Teil eines Pakets zu betrachten, wobei das Paket Teil eines in die Routing-Engine hereinkommenden IP-Flusses ist. Zum Mustervergleich könnte man viele verschiedene Muster definieren (über die JIT- oder anderweitig kompilierten Regeln). Nachdem ein Muster erkannt wurde, könnte man vielfältige Aktionen ausführen. Zum Beispiel könnte ein Muster verändert, modifiziert oder abgeändert werden. Die Zieladresse könnte durch eine andere ausgewechselt werden. Als ein konkretisiertes Beispiel könnten, wenn die Netzwerkschnittstellenkarte eines Benutzers ausfällt und bestimmt wird, daß der Benutzer immer noch viele Pakete empfängt, diese Pakete möglicherweise umgelenkt werden müssen, indem man einfach die Zieladresse austauscht. Andernfalls ist der vorbekannte Prozeß im allgemeinen insofern ineffizient, als das Paket zu dem Benutzer gesendet wird, die MAC bestimmt, daß der Benutzer nicht mehr existiert, eine Nachricht zu dem System zurückgesendet wird und dann danach eine Konvertierung stattfindet.
- Ein weiteres Beispiel wäre eine Firewall-Anwendung. Zum Beispiel könnte über Mustervergleich oder dergleichen, eingerichtet als Funktion bestimmter Regeln, ein Eindringling in ein System erkannt werden. Der Eindringling wird eine bestimmte IP-Adresse aufweisen. Der IP-Strom (oder die Pakete) des Eindringlings werden verworfen.
- Ferner sollte beachtet werden, daß beim Analysieren des gesamten IP-Flusses ein Virus oder dergleichen in den Nutzinformationen (oder anderen Bit) des IP-Flusses detektiert werden könnte. Relevante infizierte Pakete oder Bitmuster könnten danach verworfen und/oder korregiert werden.
- Außerdem kann VerkehrsFluss von "Spammern" beseitigt werden, indem man das Quellenadressenmuster von solche unerwünschte Informationen sendenden Maschinen detektiert und danach jegliche Pakete von dieser Quellenadresse abwirft.
- Weitere Regeln könnten mit dem Zählen der verschiedenen Pakete und dem Routing als Funktion des resultierenden Zählwerts assoziiert werden.
- Nunmehr mit Bezug auf
9 ist ein Flussdiagramm900 bestimmter repräsentativer Schritte gezeigt, mit denen man eine beispielhafte Regel (oder Regeln) gemäß der vorliegenden Erfindung implementieren könnte. Es sollte beachtet werden, daß gemäß dem anfänglichen gemäß der vorliegenden Erfindung durchgeführten Nachschlagen eine beliebige Regel auf ein beliebiges Paket angewandt werden kann. Gemäß dieser beispielhaften Regel wird ein IP-Flussmuster analysiert, um zu sehen, ob das Paket mit einem bestimmten Dienstgrad assoziiert ist. Am typischstem ist, daß das zu analysierende Feld (oder Bitmuster) das Dienstklassefeld in den Kopfteilinformationen enthält. Ein Entscheidungsblock902 fragt an, ob der Benutzer den "Bronze-"Dienst besitzt. Wenn ja, sind repräsentative Schritte gemäß der Implementierung bestimnmter Regeln gezeigt. Im Schritt904 werden Pakete von Echtzeitverkehr (RTT) auf Echtzeit (RT) Routing-Fähigkeiten mit unspezifizierter Bitrate (UBR) abgebildet. Im Schritt906 wird Nicht-Echtzeitverkehr (NRTT) auf Nicht-Echtzeit-(NRT-)Routing-Fähigkeiten mit UBR abgebildet. Im Schritt906 werden Pakete des Dateitransferprotokolls (FTP) auf UBR abgebildet. FTP ist ein Standardprotokoll und ist im wesentlichen die einfachste Möglichkeit zum Austausch von Dateien zwischen Computern im Internet. Wie HTTP (Hypertext Transfer Protocol), das anzeigbare Webseiten und diesbezügliche Dateien transferiert, und SMTP (Simple Mail Transfer Protocol), das E-Mail tranferiert, ist FTP ein Anwendungsprotokoll, das die TCP/IP-Protokolle des Internet verwendet. FTP wird gewöhnlich zum Transfer von Websei tendateien von dem Seitenersteller zu dem Computer verwendet, der als der Server für Benutzer im Internet zum Anschauen dieser Seiten wirkt. FTP wird auch gewöhnlich zum Herunterladen von Programmen und anderen Dateien zu einem Computer von anderen Servern verwendet. FTP könnte auf eine billigere Verkehrsklasse (z.B. UBR) abgebildet werden, da solche assoziierten Pakete im allgemeinen nicht durch RT-Anforderungen eingeschränkt werden, und wenn ein Paket verloren geht, wird es neu gesendet. - Schritt
910 und die zu ihm führenden Fortsetzungssymbole zeigen an, daß unter diesem Zweig des Entscheidungsblocks902 viele andere solcher Regeln geltend gemacht werden könnten. - Gemäß diesem Regelzweig wurde daher den verschiedenen Paketen die Transferrate UBR mit der niedrigsten Priorität zugewiesen. In diesem Fall ist die Dienstklasse für den Benutzer die niedrigste Stufe (z.B. "Bronze"). Im allgemeinen ist UBR eine Verkehrsklasse (oder Kontrollklasse) von ATM, die auf Ethernet-Anwendungen (z.B. Versionen 4 oder 6) angewandt werden kann, bei der CoS unter Verwendung einer beispielhaften Anwendung wie etwa DiffServ implementiert ist. UBR ist ein Verkehrsvertrag, der keine spezifizierte Bitrate aufweist – statt dessen weist man Implementierungen, denen UBR zugewiesen ist, jegliche Bandbreite zu, die übrig ist. Im Gegensatz dazu gewährt VBR (Variable Bitrate) eine minimale und maximale Bitrate, die RT- und NRT-Anforderungen genügen. Zum Beispiel wird ein MPEG3-(MP3-)Strom auf der sendenden Seite komprimiert. Der MP3-Strom wird dann auf der Empfangsseite empfangen, gepuffert, dekomprimiert und abgespielt. Für einen sol chen Datenstrom könnte eine VBR-NRT-Umgebung gut funktionieren, da keine Anforderungen in bezug auf konstante Bitraten oder Echtzeitdienst bestehen. CBR (konstante Bitrate) ist am kostspieligsten, da die Rate konstant ist und immer eine bestimmte Menge an Bandbreite verbraucht. Vielfältiger Verkehr könnte dadurch billiger (oder gegebenenfalls mit größeren Kosten) gesendet werden, während aber weiterhin garantiert wird, daß die Verkehrsanforderungen erfüllt sind.
- Wenn der Benutzer zum Beispiel nicht den "Bronze"Dienst hat, fragt der Entscheidungsblock
912 als nächstes an, ob der Benutzer "Silber-"Dienst hat. Wenn ja, zeigt Schritt914 die RTT-Pakete, die auf VBR-RT-Fähigkeiten abgebildet werden. Schritt916 zeigt NRTT-Pakete, die auf VBR-NRT-Fähigkeiten abgebildet werden und so weiter. Schritt918 zeigt dann wieder eine Fortsetzung, bis alle solchen Regeln angewandt wurden. - Der Fortsetzungsindikator
913 zeigt, daß ähnlich auch andere Dienstklassen (z.B. "Gold") geprüft und assoziierte Regeln angewandt werden. Der Entscheidungsblock920 fragt an, ob der Benutzer "Platin-"Dienst hat. Wenn ja, werden alle Pakete auf CBT-Fähigkeiten abgebildet. - Nunmehr mit Bezug auf
10A ist ein weiteres repräsentatives Flussdiagramm einer beispielhaften Regel gezeigt. Viele Netzwerke weisen außerhalb der Spitzenstunden niedrigere Auslastungsraten auf. Folglich zeigt diese Regel einen Entscheidungsblock1002 , der anfragt, ob die Systemzeit zwischen einer bestimmten Zeit X und einer anderen Zeit Y liegt. Wenn ja, zeigt Schritt1004 die Umabbildung bestimmter Dienstklassen auf höhere Ebenen. Während dieser verkehrsschwachen Stunden werden alle durch einen solchen Benutzer gesendeten Datenpakete mit schnelleren Raten gesendet. Wenn die Systemzeit nicht zwischen X und Y liegt, zeigt Schritt1006 , daß die vorliegenden Abbildungen für das System aufrechterhalten werden. - Nunmehr mit Bezug auf
10B ist ein weiteres repräsentatives Flussdiagramm einer beispielhaften Regel gezeigt. Netzwerke können überlastet und heruntergefahren (oder beschädigt) werden, wenn der Verkehr zu groß wird. Zum Beispiel kann eine statistische Datensammlungsverkehrsklasse des Typs SNMP Anzeigen einer Überlastsituation geben. Folglich könnte es notwendig sein, daß bestimmter Verkehr verworfen wird, damit das Netzwerk überlebt und funktionsfähig bleibt. In bezug auf Benutzer, die bereits eine IP-Verbindung hergestellt haben, könnte es als Bandbreitenverschwendung angesehen werden, diese Datenpakete wegzuwerfen. Es könnte immernoch einen Teil der Datenpakete geben, die sich im Übergang befinden und bewirken könnten, daß die sendende Station das Paket neu sendet. Deshalb ist es besser, solche Pakete völlig abzuschneiden. Der Entscheidungsblock1010 fragt dann an, ob die Systemlast in einem annehmbaren Bereich liegt. Wenn nicht, weist Schritt1012 das System an, Pakete für bestimmte Dienstniveaus zu verwerfen. Schritt1014 zeigt auch, daß das System etwaige neue Clients, die in das System eintreten könnten (z.B. unterhalb eines bestimmten Dienstniveaus oder als Alternative alle neue Clients) verwirft. Wenn die Systemlast in einem annehmbaren Bereich liegt, zeigt Schritt1016 , daß das System seine derzeitigen Konfigurationseinstellungen beibehält. - Als Ergebnis der Anwendung beliebiger solcher Regeln werden bestimmte repräsentative Verkehrstypen, Verkehrsprioritäten und Dienstniveaus eingerichtet. Diese Typen, Prioritäten und Niveaus können dann auf existierende Definitionen und Zuweisungen von ATM-QoS (Dienstgüte) abgebildet werden. Im Internet und in anderen Netzwerken verwendet QoS die Prämisse, daß Übertragungsraten, Fehlerraten und andere Eigenschaften gemessen, verbessert und zu gewissem Grade im voraus garantiert werden können. QoS ist von besonderer Bedeutung für die kontinuierliche Übertragung von Video- und Multimediainformationen mit hoher Bandbreite. Eine zuverlässige Übertragung dieser Art von Inhalt ist in öffentlichen Netzwerken, die gewöhnliche Protokolle des Typs "best effort" verwenden, schwierig. Durch Verwendung des Betriebsmittelreservierungsprotokolls (RSVP) des Internets können einen Gateway-Host durchquerende Pakete auf der Basis von im voraus arrangierten Richtlinien- und Reservierungskriterien beschleunigt werden. Bei Verwendung von ATM kann eine Firma oder ein Benutzer ein Qualitätsniveau im Hinblick auf den Dienst im voraus wählen. QoS kann über die mittlere Verzögerung in einem Gateway, die Schwankung der Verzögerung in einer Gruppe von Zellen, Zellenverluste und die Übertragungsfehlerrate gemessen und garantiert werden. Die Abbildung kann auch auf Definitionen der Dienstklasse (CoS) des Ethernet-Typs, wie etwa MPLS und DiffServ, erfolgen.
- Es versteht sich, daß die obigen Beispiele für Regelimplementierung lediglich zur Veranschaulichung dienen und die vorliegende Erfindung nicht auf die Implementierung dieser konkreten Regeln beschränken sollen. Im allgemeinen könnte jede beliebige Regel in bezug auf das Routen von IP-Paketen auf der Basis der analysierten Datenmuster in dem IP-Fluss ähnlich implementiert werden. Darüber hinaus könnten einzelne Regeln für ein beliebiges Paket in dem Fluss gelten.
- Nunmehr mit Bezug auf
11 ist ein repräsentatives Blockdiagramm eines Kommunikationsprotokollstapels gemäß der vorliegenden Erfindung gezeigt. Ein Controller-Umgebungsblock1102 tritt mit den verschiedenen rechts gezeigten Ebenen in Wechselwirkung. Dies könnte aus einer Linecard-Controller-Umgebung bestehen, oder anderen ähnlichen Inkarnationen von Routern oder selbständigen Routern. Auf den höchsten Ebenen zeigt Block1104 Kommunikationsanwendungen. Außerdem sind Protokolle gezeigt, darunter zum Beispiel HTTP (Hypertext Transfer Protocol), SMTP (Simple Mail Transfer Protocol), FTP (File Transfer Protocol), T-FTP (Trivial FTP), NNTP (Network News Transfer Protocol), RIP (Routing Information Protocol) und EGP (Exterior Gateway Protocol) und so weiter. Danach enthält diese Ebene lokale und abgesetzte OA&M (Operation, Administration & Wartung) und Zugangsschutz. Die nächsten Ebenen sind im Block1106 gezeigt und enthalten die Kommunikations-API (Anmeldungsprogrammschnittstelle), den Regeleditor (graphisch oder anderweitig), den JIT-Compiler, das RTOS (Echtzeit-Betriebssystem) und SW-(Software)Interrupt-Zugang. Block1108 zeigt Ebenen, an denen Routing, Vermittlung, Weiterleitung und QoS (Dienstgüte) auf der Basis von JIT-kompilierten Regeln und Kopfteilinformationen, RIP, EGP und so weiter beteiligt sind. Block1110 zeigt Prozesse von einer MAC der Schicht 2+3 und des Automaten (FSM), digitale Kommunikationsprozessoren der Schicht 3++, SNMP (Simple Network Management Protocol) und Watchdog. Die niedrigsten Ebenen (z.B. L1) würden im allgemeinen aufgrund von Geschwindigkeitsanforderungen durch Hardwareimplementierungen abgewickelt. Höhere Ebenen (z.B. L2+) könnten über Software oder eine Kombination von Hardware und Software implementiert werden. Noch höhere Ebenen könnten völlig durch Software implementiert werden. Man beachte, daß beabsichtigt ist, daß auch die niedrigsten Ebenen auf Software basieren könnten, wenn die Verarbeitungs-Tasks schnell genug durchgeführt werden könnten, um eine Verarbeitung der IP-Pakete oder Daten mit Wirespeed oder nahezu Wirespeed zu ermöglichen. - Es könnten vielfältige Hardwarekonfigurationen zur Implementierung der vorliegenden Erfindung verwendet werden. Zum Beispiel könnte man eine Linecard oder einen selbständigen Router verwenden. Nunmehr mit Bezug auf
12 ist eine repräsentative Konfiguration des Routers (oder der Router-Engine)1200 gezeigt. Eine interne Querverbindung1202 dient zur Verbindung und Ermöglichung des Datenaustauschs zwischen den verschiedenen Elementen. Eine (nicht gezeigte) zweite Querverbindung in der System-Backplane könnte sogar noch höhere Leistungsniveaus bereitstellen. Block1204 versorgt MAC + FSM (d.h. L1 ...L2). Ein erster schneller Computer oder Prozessor1206 und ein zweiter schneller Computer oder Prozessor1208 treten parallel in Wechselwirkung, um den IP-Fluss zu verarbeiten (und zu analysieren). Folglich wird das Paket bzw. der Fluss bzw. der Strom vollständig verarbeitet, um die oben erwähnten Muster zu erkennen und dadurch die oben erwähnten Regeln anzuwenden. Die schnellen Computer oder Prozessoren könnten einen RISC-Prozessor oder dergleichen umfassen. Die dualen oder parallelen Prozessoren (die hier als1206 ,1208 gezeigt sind) dienen zur Erfüllung der prozessor intensiven Task des Berücksichtigens aller Informationen für alle Ebenen sowie der Anwendung der Regeln während der oben beschriebenen anfänglichen Nachschlageoperation für den gesamten IP-Fluss. Ferner ist eine DRAM-Schnittstelle für Zwischenspeicherzwecke gezeigt, einschließlich zum Beispiel der Regeln und Routing-Tabellen. Es ist eine Systemschnittstelle1212 gezeigt, die Steuerung und Interaktion auf Systemebene bereitstellen könnte. Block1214 zeigt eine Busschnittstelleneinheit zu der Backplane des Systems. Dazu würde Interaktion der OSI-Schicht 3 (z.B. Vernetzung und Routing) gehören. Block1216 zeigt weitere Logik zur Behandlung von Temperatur- und Überstromsensor- und Not-Herunterfahrinformationen. - Bei einer solchen Konfiguration verläuft der Verkehrsstrom durch die Routing-Engine und wird in Echtzeit überwacht. Es ist wünschenswert, daß die Pakete in so wenig Zyklen wie möglich geroutet (oder abgeändert oder modifiziert) werden, so daß die Konfiguration ein "Wirespeed-"System wird. In der Praxis arbeitet das vorliegende System mit einer ausreichenden Rate, so daß eine Modifikation (oder dergleichen) eines beliebigen Teils des IP-Stroms, IP-Pakets oder IP-Flusses durch die Router-Engine im allgemeinen in derselben Zeit durchgeführt wird, für die die Informationen in der Router-Engine gespeichert würden. Solche Hardware wäre auch mit Software assoziiert. Die Software erlaubt es dem System, ein beliebiges gegebenes Muster in dem IP-Paket/-Fluss/-Strom zu erkennen und gemäß der assoziierten Regel die erforderliche Aktion an den Daten auszuführen. Es sollte beachtet werden, daß solche Software unabhängig von den gezeigten Hardwarekonfigurationen auf eine existierende Routerkonfiguration angewandt werden könnte. Daher könnten existierende Router gemäß der vorliegenden Erfindung über die Software-Uploads (oder dergleichen) auf die Routing-Einrichtung in auf Regeln basierende Router verwandelt werden.
- Vielfältige Transportstrukturen und Netzwerkkonfigurationen könnten von der vorliegenden Erfindung Nutzen ziehen. Die Verarbeitung des gesamten Datenflusses in einem anfänglichen Nachschlageschritt gemäß der vorliegenden Erfindung ist im allgemeinen auf jede beliebige Transportstruktur anwendbar. Beispiele wären Ethernetkompatible Netzwerke, ATM-Netzwerke und über solche Netzwerke transportierter eingekapselter IP-Verkehr. Zusätzliche Transport-Infrastrukturen wären SDH/SONET- oder WDM/DWDM-Transportströme. Zum Beispiel ist das dichte Wellenlängenmultiplexen (DWDM) eine Technologie, die Daten aus verschiedenen Quellen zusammen auf eine optische Faser legt, wobei jedes Signal auf seiner eigenen separaten Lichtwellenlänge geführt wird. Durch Verwendung von DWDM können bis zu 80 (und theoretisch mehr) separate Wellenlängen oder Kanäle von Daten auf einen Lichtstrom gemultiplext werden, der auf einer einzigen optischen Faser übertragen wird. In einem System, bei dem jeder Kanal 2,5 Gbps (Milliarden Bit pro Sekunde) trägt, können durch die optische Faser bis zu 200 Milliarden Bit pro Sekunde abgeliefert werden. DWDM wird manchmal auch als Wellenlängenmultiplex (WDM) bezeichnet. Da jeder Kanal am Ende der Übertragung wieder zu der ursprünglichen Quelle gedemultiplext wird, können verschiedene Datenformate, die mit verschiedenen Datenraten übertragen werden, zusammen übertragen werden. Genauer gesagt können Internet-(IP)Daten, SONET-Daten und ATM-Daten alle gleichzeitig in der optischen Faser übertragen werden. DWDM verspricht, das Problem der "Fasererschöpfung" zu lösen und es wird erwartet, daß es die zentrale Technologie in den durchweg optischen Netzwerken in der nahen Zukunft sein wird. DWDM ersetzt zeitliches Multiplexen (TDM) als effektivstes optisches Übertragungsverfahren. TDM ist das Hauptkonzept vieler heutiger Netzwerke – es wird aber erwartet, daß DWDM-Systeme in immer größerer Anzahl geprüft und eingesetzt werden.
- Nunmehr mit Bezug auf
13 ist ein Protokollstapel-IP zum Übertragen von Paketen gemäß der vorliegenden Erfindung über eine Einrichtung des Typs Gigabit Ethernet (GbE) gezeigt. Die Client-Seite1302 enthält einen Protokollstapel mit (mindestens) einer Anwendungsschicht1304 ; eine Schicht1306 für HTTP, POP3 (usw.); eine TCP-Schicht1308 ; eine IP-Schicht1310 ; und eine physische Schicht1312 . Die Routerseite1320 enthält einen Anwendungskopfteil1322 , der in eine TCP-Portnummer1324 führt. Der IP-Block1326 tritt mit der physischen Schicht1328 in Wechselwirkung. Die physische Schicht1328 tritt mit der physischen Schicht1312 von der Client-Seite1302 aus in Wechselwirkung. Der IP-Block1330 befindet sich in Kommunikation mit dem IP-Block1326 und tritt mit dem internen Zellenbus1332 in Wechselwirkung. Eine interne Backplane1340 empfängt Signale1341 aus dem internen Bus1332 (d.h. dem internen Zellenbus oder anderweitig). - Nunmehr mit Bezug auf
14 ist ein Protokollstapel-IP zum Übertragen von Paketen gemäß der vorliegenden Erfindung über eine ATM-Einrichtung gezeigt. Die Client-Seite1402 enthält einen Protokollstapel mit (mindestens) einer Anwendungsschicht1404 , eine Schicht1406 für HTTP, POP3 (usw.); eine TCP-Schicht1408 ; eine IP-Schicht1410 ; eine ATM-AAL5-Schicht1412 ; und eine physische Schicht1414 . Die Routerseite1420 enthält einen Anwendungskopfteil1422 , der in eine TCP-Portnummer1324 führt. Der Block1426 für IP und VCI/VPI (virtuelle Verbindungskennung/virtuelle Wegkennung) sind mit der physischen Schicht1428 in Wechselwirkung. Die physische Schicht1428 tritt mit der physischen Schicht1414 von der Client-Seite1302 aus in Wechselwirkung. Der Block1427 für IP und VCI/VPI (virtuelle Verbindungskennung/virtuelle Wegkennung) befindet sich in Kommunikation mit dem IP- und VCI/VPI-Block 1426 und tritt mit dem internen Bus1430 in Wechselwirkung. Eine interne Backplane1440 empfängt Signale1441 aus dem internen Bus1430 . - Nunmehr mit Bezug auf
15 ist ein Protokollstapel-IP zum Übertragen von Paketen gemäß der vorliegenden Erfindung über eine SDH/SONET-Einrichtung gezeigt. SDH (Synchron-Digital-Hierarchie) ist eine Standardtechnologie für synchrone Datenübertragung auf optischen Medien. Sie ist das internationale Äquivalent von SO-NET. SONET ist der US-(ANSI-)Standard für synchrone Datenübertragung auf optischen Medien. Die Client-Seite1502 enthält einen Protokollstapel mit (mindestens) einer Anwendungsschicht1504 ; eine Schicht1506 für HTTP, POP3 (usw.); eine TCP-Schicht1508 ; eine Schicht1310 für IP-PPP (Punkt-zu-Punkt-Protokoll); eine SDH/SONET-Schicht1512 ; und eine physische Schicht1514 . Die Routerseite1520 enthält einen Anwendungskopfteil1522 , der in eine TCP-Portnummer1524 führt. Der IP-Block1526 tritt mit der physischen Schicht1530 in Wechselwirkung. Die physische Schicht1530 tritt mit der physischen Schicht1514 von der Client-Seite1502 aus in Wechselwirkung. Der IP-Block1528 befindet sich in Kom munikation mit dem IP-Block1526 und tritt mit dem internen Bus1532 in Wechselwirkung. Eine interne Backplane1540 empfängt Signale1541 aus dem internen Bus1532 . - Nunmehr mit Bezug auf
16 ist ein Protokollstapel-IP zum Übertragen von Paketen gemäß der vorliegenden Erfindung über eine ATM- und SDH-Einrichtung gezeigt. Die Client-Seite1602 enthält einen Protokollstapel mit (mindestens) einer Anwendungsschicht1604 ; eine Schicht1606 für HTTP, POP3 (usw.); eine TCP-Schicht1608 ; eine IP-Schicht1610 ; eine ATM-AAL5-Schicht1612 ; eine SDH/SONET-Schicht1614 ; und eine physische Schicht1616 . Die Routerseite1620 enthält einen Anwendungskopfteil1622 , der in eine TCP-Portnummer1624 führt. Der IP- und VCI/VPI-Block1628 tritt mit der physischen Schicht1632 in Wechselwirkung. Die physische Schicht1632 tritt mit der physischem Schicht1616 von der Client-Seite1602 aus in Wechselwirkung. Der IP- und VCI/VPI-Block1630 befindet sich in Kommunikation mit dem IP- und VCI/VPI-Block1628 und tritt mit dem internen Bus1634 in Wechselwirkung. Eine interne Backplane1640 empfängt Signale1641 aus dem internen Bus1634 . - Nunmehr mit Bezug auf
17 ist ein Blockdiagramm1700 bestimmter repräsentativer Elemente gezeigt, die in einem verteilten System verwendet werden könnten. Obwohl das vorliegende System auf vielerlei Weise konfiguriert werden kann, liefert ein verteiltes System viele Vorteile im Hinblick auf Geschwindigkeit und Modularität. Es ist ein zentrales Koppelfeld1702 (d.h. Bus oder dergleichen) mit mehreren an das Koppelfeld angeschalteten Linecards (LC) gezeigt. Jede verschiedene Art von Vernetzungstechnologie verbindet sich mit dem Koppelfeld unter Verwendung einer verschiedenen LC. Die LC1704 zeigt PoS-Technologie, und die LC1706 zeigt ATM-Technologie. Die übrigen LC zeigen GbE-Technologie (Gigabit Ethernet), die in der Regel den größten Teil der mit einem solchen verteilten System verbundenen Daten umfaßt. - Obwohl die obige Erfindung der Klarheit halber in einigem Detail beschrieben wurde, versteht sich, daß innerhalb des Schutzumfangs der angefügten Ansprüche bestimmte Änderungen und Modifikationen ausgeübt werden können. Zum Beispiel könnten der beschriebene Router, der JIT-Compiler, Software und dergleichen durch eine beliebige solche Computereinrichtung implementiert (oder damit assoziiert) sein. Die beschriebenen Ausführungsformen sollten deshalb nicht als einschränkend, sondern als veranschaulichend aufgefaßt werden, und die Erfindung sollte nicht auf die hier angegebenen Details beschränkt werden, sondern sollte durch die folgenden Ansprüche und ihren vollen Schutzumfang von Äquivalenten definiert werden.
Claims (10)
- Vorrichtung (
700 ) zum Anwenden von Regeln auf die Verarbeitung von Datenpaketen über ein Netzwerk, wobei die Vorrichtung aufweist: eine Netzwerkverbindungseinrichtung (702 ) zum Leiten von paketbasierten Daten über ein zugehöriges Netzwerk; wobei die Vorrichtung gekennzeichnet ist durch: einen mit der Netzwerkverbindungseinrichtung assoziierten Parser (711 ) zum Analysieren von Bitmustern aus ankommenden IP-Flüssen von Datenpaketen, wobei der gesamte IP-Fluss analysiert wird und die Zielports, zu denen die Datenpakete geroutet werden sollen, und die Regeln, wie die Datenpakete geroutet werden sollen, parallel analysiert werden; einen Regelgenerator (704 ) zum Bereitstellen von Regeln für die Verarbeitung der Datenpakete gemäß den analysierten Bitmustern; und einen Compiler (706 ) zum Kompilieren der Regeln, wobei die Regeln auf die Bitmuster angewandt werden, die aus dem IP-Fluss (710 ) geparst werden. - Vorrichtung (
700 ) nach Anspruch 1, wobei der Compiler (706 ) ein Compiler des Typs Just-In-Time (JIT) zur Erzielung einer Echtzeit-Anwendung der Regeln ist. - Vorrichtung (
700 ) nach Anspruch 1, wobei der Compiler (706 ) Laufzeit-Anwendung der Regeln bereitstellt. - Vorrichtung (
700 ) nach Anspruch 1, wobei ein Prozessor (722 ) mit den Weiterleit-, Parser-, Regelgenerator- und Compilereinrichtungen assoziiert ist. - Vorrichtung nach Anspruch 1, wobei die Regeln (
704 ) über eine grafische Schnittstelle (720 ) zur Echtzeit-Anwendung auf ankommende IP-Flüsse (710 ) editiert werden können. - Vorrichtung nach Anspruch 1, wobei ferner eine Pufferungseinrichtung (
712 ) vorgesehen ist und Pakete zur späteren Weiterleitung gemäß der auf den jeweiligen Pakettyp angewandten Regeln gepuffert werden. - Verfahren nach Anspruch 1, wobei Datenpaketprioritätszuweisungen bestimmt und auf existierende Zuweisungen der Dienstgüte (QoS) oder Zuweisungen der Dienstklasse (CoS) abgebildet werden.
- Verfahren (
800 ) zum Anwenden von Regeln auf die Verarbeitung von Datenpaketen innerhalb eines IP-Flusses über ein Netzwerk, wobei das Verfahren die folgenden Schritte aufweist: Formulieren (802 ) eines Regelsatzes (704 ), der mit jeder Netzwerkverbindungseinrichtung (700 ) zur Anwendung auf die Datenpakete eines IP-Flusses (710 ) assoziiert ist; wobei das Verfahren durch die Schritte gekennzeichnet ist: Empfangen (804 ) eines IP-Flusses (710 ) in die Weiterleitungseinrichtung (702 ); Klassifizieren (806 ) der ankommenden Datenpakete gemäß den Regeln (704 ) und aller verfügbaren Informationen für die Datenpakete, wobei die Zielports, zu denen die Datenpakete geroutet werden sollen, und die Regeln, wie die Datenpakete geroutet werden sollen, parallel analysiert werden; Modifizieren (808 ) der Datenpakete gemäß gewünschten Weiterleitungsinstruktionen, wobei der gesamte Regelsatz (704 ) während mindestens einer Nachschlageoperation (812 ) auf alle ankommende Datenpakete angewandt wird, um die Weiterleitung für alle der Pakete zu bestimmen. - Verfahren nach Anspruch 8, wobei die Verkehrskontrolle in der mindestens einen Nachschlageoperation (
812 ) angewandt wird, ohne die Datenpakete neu klassifizieren zu müssen. - Verfahren nach Anspruch 8, wobei der IP-Fluss (
710 ) in Netzwerk-Transporttechnologien eingekapselt ist.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US09/401,030 US6598034B1 (en) | 1999-09-21 | 1999-09-21 | Rule based IP data processing |
US401030 | 1999-09-21 | ||
PCT/US2000/025389 WO2001022686A1 (en) | 1999-09-21 | 2000-09-14 | Rule based ip data processing |
Publications (2)
Publication Number | Publication Date |
---|---|
DE60034353D1 DE60034353D1 (de) | 2007-05-24 |
DE60034353T2 true DE60034353T2 (de) | 2007-12-13 |
Family
ID=23585982
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE60034353T Expired - Lifetime DE60034353T2 (de) | 1999-09-21 | 2000-09-14 | Regelbasierte ip datenverarbeitung |
Country Status (4)
Country | Link |
---|---|
US (1) | US6598034B1 (de) |
EP (1) | EP1214827B1 (de) |
DE (1) | DE60034353T2 (de) |
WO (1) | WO2001022686A1 (de) |
Families Citing this family (255)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3549774B2 (ja) * | 1999-06-01 | 2004-08-04 | 富士通株式会社 | ネットワーク相互接続装置及びネットワーク相互接続方法 |
US6493698B1 (en) * | 1999-07-26 | 2002-12-10 | Intel Corporation | String search scheme in a distributed architecture |
US7484008B1 (en) | 1999-10-06 | 2009-01-27 | Borgia/Cummins, Llc | Apparatus for vehicle internetworks |
SE9904685D0 (sv) * | 1999-12-17 | 1999-12-17 | Switchcore Ab | A programmable packet decoder |
US7149222B2 (en) * | 1999-12-21 | 2006-12-12 | Converged Access, Inc. | Integrated access point network device |
US6629163B1 (en) | 1999-12-29 | 2003-09-30 | Implicit Networks, Inc. | Method and system for demultiplexing a first sequence of packet components to identify specific components wherein subsequent components are processed without re-identifying components |
US7143439B2 (en) * | 2000-01-07 | 2006-11-28 | Security, Inc. | Efficient evaluation of rules |
US8074256B2 (en) * | 2000-01-07 | 2011-12-06 | Mcafee, Inc. | Pdstudio design system and method |
US6779120B1 (en) * | 2000-01-07 | 2004-08-17 | Securify, Inc. | Declarative language for specifying a security policy |
JP2001203691A (ja) * | 2000-01-19 | 2001-07-27 | Nec Corp | ネットワークトラフィック監視システム及びそれに用いる監視方法 |
WO2001058110A2 (en) * | 2000-02-03 | 2001-08-09 | Apion Telecoms Limited | A network gateway-based billing method |
DE50013558D1 (de) * | 2000-02-23 | 2006-11-16 | Tektronix Berlin Gmbh & Co Kg | Vorrichtung zum Aufbau eines Protokoll-Stacks und zugehöriges Verfahren |
US6798777B1 (en) * | 2000-04-17 | 2004-09-28 | Juniper Networks, Inc. | Filtering and route lookup in a switching device |
US7215637B1 (en) | 2000-04-17 | 2007-05-08 | Juniper Networks, Inc. | Systems and methods for processing packets |
US7688727B1 (en) | 2000-04-17 | 2010-03-30 | Juniper Networks, Inc. | Filtering and route lookup in a switching device |
FR2808150B1 (fr) * | 2000-04-19 | 2002-11-29 | France Telecom | Procede de test d'un systeme de commutation, et dispositif d'insertion utilisable dans ce procede |
US6934280B1 (en) * | 2000-05-04 | 2005-08-23 | Nokia, Inc. | Multiple services emulation over a single network service |
US6862267B1 (en) * | 2000-05-08 | 2005-03-01 | Nortel Networks Limited | Determining network addresses and ports using table from a description file |
US7058976B1 (en) * | 2000-05-17 | 2006-06-06 | Deep Nines, Inc. | Intelligent feedback loop process control system |
US7380272B2 (en) * | 2000-05-17 | 2008-05-27 | Deep Nines Incorporated | System and method for detecting and eliminating IP spoofing in a data transmission network |
AU2001268411A1 (en) * | 2000-06-14 | 2002-01-02 | Core Express, Inc. | Route selection within a network with peering connections |
US7058974B1 (en) * | 2000-06-21 | 2006-06-06 | Netrake Corporation | Method and apparatus for preventing denial of service attacks |
US7003555B1 (en) * | 2000-06-23 | 2006-02-21 | Cloudshield Technologies, Inc. | Apparatus and method for domain name resolution |
US6829654B1 (en) | 2000-06-23 | 2004-12-07 | Cloudshield Technologies, Inc. | Apparatus and method for virtual edge placement of web sites |
US7032031B2 (en) * | 2000-06-23 | 2006-04-18 | Cloudshield Technologies, Inc. | Edge adapter apparatus and method |
US9444785B2 (en) | 2000-06-23 | 2016-09-13 | Cloudshield Technologies, Inc. | Transparent provisioning of network access to an application |
US8204082B2 (en) | 2000-06-23 | 2012-06-19 | Cloudshield Technologies, Inc. | Transparent provisioning of services over a network |
US7114008B2 (en) * | 2000-06-23 | 2006-09-26 | Cloudshield Technologies, Inc. | Edge adapter architecture apparatus and method |
US6789203B1 (en) * | 2000-06-26 | 2004-09-07 | Sun Microsystems, Inc. | Method and apparatus for preventing a denial of service (DOS) attack by selectively throttling TCP/IP requests |
US7111163B1 (en) | 2000-07-10 | 2006-09-19 | Alterwan, Inc. | Wide area network using internet with quality of service |
US7213077B2 (en) * | 2000-07-21 | 2007-05-01 | Hughes Network Systems, Inc. | Method and system for providing buffer management in a performance enhancing proxy architecture |
US6842775B1 (en) * | 2000-08-29 | 2005-01-11 | International Business Machines Corporation | Method and system for modifying mail rules |
US6847989B1 (en) * | 2000-08-29 | 2005-01-25 | International Business Machines Corporation | Method and system for creating mail rules from existing mail |
US7089302B1 (en) * | 2000-08-30 | 2006-08-08 | Mcafee, Inc. | Method and system for maintaining a communications protocol session |
US7120931B1 (en) * | 2000-08-31 | 2006-10-10 | Cisco Technology, Inc. | System and method for generating filters based on analyzed flow data |
US6826698B1 (en) * | 2000-09-15 | 2004-11-30 | Networks Associates Technology, Inc. | System, method and computer program product for rule based network security policies |
DE60124122T2 (de) * | 2000-09-15 | 2007-09-06 | British Telecommunications P.L.C. | Kommunikationsnetzentwurf |
US6741556B1 (en) * | 2000-09-29 | 2004-05-25 | Nortel Networks Limited | Method for classifying persistent TCP flows |
US6944162B1 (en) * | 2000-10-03 | 2005-09-13 | Alcatel | Tuple-based lookup scheme for packet switching node |
US7130306B1 (en) * | 2000-10-25 | 2006-10-31 | Pasi Into Loukas | Pulse group soliton transmission |
FI20002377A (fi) * | 2000-10-27 | 2002-04-28 | Ssh Comm Security Corp | Menetelmä käännetyn suodatinkoodin hallitsemiseksi |
US6975592B1 (en) * | 2000-11-22 | 2005-12-13 | Nortel Networks Limited | Configurable rule-engine for layer-7 and traffic characteristic-based classification |
US8185615B1 (en) | 2000-11-28 | 2012-05-22 | Verizon Business Global Llc | Message, control and reporting interface for a distributed network access system |
US7657628B1 (en) | 2000-11-28 | 2010-02-02 | Verizon Business Global Llc | External processor for a distributed network access system |
US8180870B1 (en) * | 2000-11-28 | 2012-05-15 | Verizon Business Global Llc | Programmable access device for a distributed network access system |
US7046680B1 (en) * | 2000-11-28 | 2006-05-16 | Mci, Inc. | Network access system including a programmable access device having distributed service control |
WO2002045359A1 (en) * | 2000-11-29 | 2002-06-06 | Telefonaktiebolaget Lm Eriksson Publ | Method and apparatus for forwarding of telecommunications traffic |
US20040034715A1 (en) * | 2000-12-06 | 2004-02-19 | Steven Dawson | Content based routing devices and methods |
US20020103925A1 (en) * | 2000-12-06 | 2002-08-01 | Sheth Siddharth C. | Generic programmable internet protocol classification technique for a broadband engine |
KR100358153B1 (ko) * | 2000-12-18 | 2002-10-25 | 한국전자통신연구원 | 서비스 품질을 지원하는 아이피 패킷 포워딩 분산 처리장치 및 그 방법 |
US6731652B2 (en) * | 2001-02-14 | 2004-05-04 | Metro Packet Systems Inc. | Dynamic packet processor architecture |
US9900286B2 (en) | 2001-04-26 | 2018-02-20 | Nokia Technologies Oy | Device classification for media delivery |
WO2002088875A2 (en) * | 2001-04-27 | 2002-11-07 | The Boeing Company | Communicating data through a network |
US7451216B2 (en) * | 2001-06-14 | 2008-11-11 | Invision Networks, Inc. | Content intelligent network recognition system and method |
US6944678B2 (en) | 2001-06-18 | 2005-09-13 | Transtech Networks Usa, Inc. | Content-aware application switch and methods thereof |
US7315892B2 (en) * | 2001-06-27 | 2008-01-01 | International Business Machines Corporation | In-kernel content-aware service differentiation |
US6513122B1 (en) | 2001-06-29 | 2003-01-28 | Networks Associates Technology, Inc. | Secure gateway for analyzing textual content to identify a harmful impact on computer systems with known vulnerabilities |
FR2827103B1 (fr) * | 2001-07-03 | 2003-12-26 | Elysean Networks | Procede de routage de donnees par paquets |
US20030033430A1 (en) * | 2001-07-20 | 2003-02-13 | Lau Chi Leung | IP flow discovery for IP probe auto-configuration and SLA monitoring |
US6970454B1 (en) * | 2001-08-09 | 2005-11-29 | Pasternak Solutions Llc | Sliced crossbar architecture with inter-slice communication |
WO2004090741A2 (en) * | 2001-08-14 | 2004-10-21 | Riverhead Networks Inc. | Selective diversion and injection of communication traffic |
US8271672B1 (en) * | 2001-08-31 | 2012-09-18 | Juniper Networks, Inc. | Guaranteed bandwidth memory apparatus and method |
US7142509B1 (en) * | 2001-09-12 | 2006-11-28 | Extreme Networks | Method and apparatus providing for delivery of streaming media |
US20030084326A1 (en) * | 2001-10-31 | 2003-05-01 | Richard Paul Tarquini | Method, node and computer readable medium for identifying data in a network exploit |
US7698454B1 (en) * | 2001-11-26 | 2010-04-13 | Juniper Networks, Inc. | Interfacing with streams of differing speeds |
WO2003049462A1 (en) * | 2001-12-03 | 2003-06-12 | Nokia Corporation | Context filter in a mobile node |
US20030105881A1 (en) * | 2001-12-03 | 2003-06-05 | Symons Julie Anna | Method for detecting and preventing intrusion in a virtually-wired switching fabric |
GB2382962A (en) * | 2001-12-07 | 2003-06-11 | Altio Ltd | Data routing without using an address |
US7050555B2 (en) * | 2001-12-20 | 2006-05-23 | Telarix, Inc. | System and method for managing interconnect carrier routing |
US9392002B2 (en) | 2002-01-31 | 2016-07-12 | Nokia Technologies Oy | System and method of providing virus protection at a gateway |
US7359974B1 (en) * | 2002-03-29 | 2008-04-15 | Packeteer, Inc. | System and method for dynamically controlling aggregate and individual packet flow characteristics within a compressed logical data tunnel |
FR2838899B1 (fr) * | 2002-04-19 | 2004-08-27 | Cit Alcatel | Dispositif de routage a traitement parallele |
US7483379B2 (en) * | 2002-05-17 | 2009-01-27 | Alcatel Lucent | Passive network monitoring system |
US20030223365A1 (en) * | 2002-06-04 | 2003-12-04 | Sharp Laboratories Of America, Inc. | Class of dynamic programming schedulers |
US7248560B1 (en) | 2002-06-04 | 2007-07-24 | Cisco Technology, Inc. | Method and system for router redundancy in a wide area network |
US8667105B1 (en) * | 2002-06-26 | 2014-03-04 | Apple Inc. | Systems and methods facilitating relocatability of devices between networks |
US7420929B1 (en) | 2002-07-02 | 2008-09-02 | Juniper Networks, Inc. | Adaptive network flow analysis |
FR2842970B1 (fr) * | 2002-07-29 | 2005-03-18 | Qosmos | Procede de reconnaissance et d'analyse de protocoles dans des reseaux de donnees |
US7689485B2 (en) * | 2002-08-10 | 2010-03-30 | Cisco Technology, Inc. | Generating accounting data based on access control list entries |
US7467406B2 (en) * | 2002-08-23 | 2008-12-16 | Nxp B.V. | Embedded data set processing |
US7254114B1 (en) | 2002-08-26 | 2007-08-07 | Juniper Networks, Inc. | Network router having integrated flow accounting and packet interception |
US7251215B1 (en) * | 2002-08-26 | 2007-07-31 | Juniper Networks, Inc. | Adaptive network router |
US7313100B1 (en) | 2002-08-26 | 2007-12-25 | Juniper Networks, Inc. | Network device having accounting service card |
FR2846170A1 (fr) * | 2002-10-18 | 2004-04-23 | Overnetworks | Procede d'optimisation du trafic sur internet. |
FR2848044B1 (fr) | 2002-11-28 | 2005-04-01 | Qosmos | Procede et systeme informatique pour declencher une action sur des donnees de communication numerique |
ATE403197T1 (de) * | 2002-12-03 | 2008-08-15 | Research In Motion Ltd | Verfahren, system und computersoftwareprodukt zur vorauswahleines ordners für eine nachricht |
KR100523486B1 (ko) * | 2002-12-13 | 2005-10-24 | 한국전자통신연구원 | 트래픽 측정 시스템 및 그의 트래픽 분석 방법 |
US20040125816A1 (en) * | 2002-12-13 | 2004-07-01 | Haifeng Xu | Method and apparatus for providing a buffer architecture to improve presentation quality of images |
US20040122967A1 (en) * | 2002-12-23 | 2004-06-24 | Bressler Robert D. | Method and apparatus for managing packet flows for multiple network services |
FR2850503B1 (fr) * | 2003-01-23 | 2005-04-08 | Everbee Networks | Procede et systeme dynamique de securisation d'un reseau de communication au moyen d'agents portables |
US7286844B1 (en) * | 2003-01-31 | 2007-10-23 | Bbn Technologies Corp. | Systems and methods for three dimensional antenna selection and power control in an Ad-Hoc wireless network |
US20040174838A1 (en) * | 2003-03-04 | 2004-09-09 | Eero Sillasto | Method and arrangement for controlling network resources in mobile communication network |
US20040184462A1 (en) * | 2003-03-17 | 2004-09-23 | Network Equipment Technologies | Sliding window implementation for regulating packets for protocol-based connections |
US20050021842A1 (en) * | 2003-03-17 | 2005-01-27 | Network Equipment Technologies | Real-time packet classification and rate-limiting control packets in a network processor based data-plane |
US20050021683A1 (en) * | 2003-03-27 | 2005-01-27 | Chris Newton | Method and apparatus for correlating network activity through visualizing network data |
US7382777B2 (en) * | 2003-06-17 | 2008-06-03 | International Business Machines Corporation | Method for implementing actions based on packet classification and lookup results |
US6881900B2 (en) * | 2003-07-03 | 2005-04-19 | Alan P. Halbert | Ceiling box safety mounting bracket |
FR2858501B1 (fr) * | 2003-07-29 | 2006-04-28 | Cit Alcatel | Traitement de paquets de donnees adaptable en fonction de l'etat de charge interne, en vue d'un routage dans une architecture qos |
US7088809B1 (en) | 2003-08-01 | 2006-08-08 | Cisco Technology, Inc. | Call screening agent |
US7889644B2 (en) * | 2003-08-21 | 2011-02-15 | Alcatel Lucent | Multi-time scale adaptive internet protocol routing system and method |
GB2406485B (en) * | 2003-09-11 | 2006-09-13 | Detica Ltd | Real-time network monitoring and security |
US20050097185A1 (en) * | 2003-10-07 | 2005-05-05 | Simon Gibson | Localization link system |
US9614772B1 (en) * | 2003-10-20 | 2017-04-04 | F5 Networks, Inc. | System and method for directing network traffic in tunneling applications |
US9032095B1 (en) | 2004-01-06 | 2015-05-12 | Juniper Networks, Inc. | Routing device having multiple logical routers |
US8214481B2 (en) * | 2004-02-10 | 2012-07-03 | Seagate Technology Llc | Firewall permitting access to network based on accessing party identity |
US7769045B2 (en) * | 2004-03-10 | 2010-08-03 | Motorola, Inc. | Method and apparatus for processing header bits and payload bits |
US7685637B2 (en) * | 2004-06-14 | 2010-03-23 | Lionic Corporation | System security approaches using sub-expression automata |
US7930742B2 (en) * | 2004-06-14 | 2011-04-19 | Lionic Corporation | Multiple-level data processing system |
US7596809B2 (en) * | 2004-06-14 | 2009-09-29 | Lionic Corporation | System security approaches using multiple processing units |
US7779464B2 (en) | 2004-06-14 | 2010-08-17 | Lionic Corporation | System security approaches utilizing a hierarchical memory system |
US7505463B2 (en) | 2004-06-15 | 2009-03-17 | Sun Microsystems, Inc. | Rule set conflict resolution |
US7760730B2 (en) * | 2004-06-15 | 2010-07-20 | Oracle America, Inc. | Rule set verification |
US7512071B2 (en) | 2004-06-15 | 2009-03-31 | Sun Microsystems, Inc. | Distributed flow enforcement |
US7492763B1 (en) * | 2004-07-16 | 2009-02-17 | Applied Micro Circuits Corporation | User-specified key creation from attributes independent of encapsulation type |
US7546635B1 (en) | 2004-08-11 | 2009-06-09 | Juniper Networks, Inc. | Stateful firewall protection for control plane traffic within a network device |
US7205920B2 (en) * | 2004-09-17 | 2007-04-17 | Analog Devices, Inc. | Continuous-time-sigma-delta DAC using chopper stabalization |
US20060075199A1 (en) * | 2004-10-06 | 2006-04-06 | Mahesh Kallahalla | Method of providing storage to virtual computer cluster within shared computing environment |
US7620984B2 (en) * | 2004-10-06 | 2009-11-17 | Hewlett-Packard Development Company, L.P. | Method of managing computer system |
US8145201B2 (en) * | 2004-12-17 | 2012-03-27 | Raytheon Bbn Technologies Corp. | Methods and apparatus for reduced energy communication in an ad hoc network |
CN100393069C (zh) * | 2004-12-29 | 2008-06-04 | 中兴通讯股份有限公司 | 区分多业务的抗ip组播数据流冲击通信系统的方法 |
US8045474B2 (en) * | 2005-01-26 | 2011-10-25 | Cisco Technology, Inc. | Method and apparatus for tracking layer-2 (L2) resource of a switch |
US9400875B1 (en) | 2005-02-11 | 2016-07-26 | Nokia Corporation | Content routing with rights management |
US8214851B2 (en) * | 2005-05-06 | 2012-07-03 | Broadcom Corporation | API interface to make dispatch tables to match API routines |
US7860782B2 (en) | 2005-05-24 | 2010-12-28 | Magnum Communications, Limited | System and method for defining attributes, decision rules, or both, for remote execution, claim set IV |
US8019828B2 (en) * | 2005-05-24 | 2011-09-13 | CRIF Corporation | System and method for defining attributes, decision rules, or both, for remote execution, claim set III |
US8024778B2 (en) * | 2005-05-24 | 2011-09-20 | CRIF Corporation | System and method for defining attributes, decision rules, or both, for remote execution, claim set I |
US8019843B2 (en) * | 2005-05-24 | 2011-09-13 | CRIF Corporation | System and method for defining attributes, decision rules, or both, for remote execution, claim set II |
US8098657B2 (en) * | 2005-05-31 | 2012-01-17 | Broadcom Corporation | System and method for providing data commonality in a programmable transport demultiplexer engine |
US20070245413A1 (en) * | 2005-07-05 | 2007-10-18 | Viasat, Inc. | Trusted Cryptographic Switch |
US20070033496A1 (en) * | 2005-07-14 | 2007-02-08 | Hitachi, Ltd. | System and method for adjusting BER/PER to increase network stream-based transmission rates |
US8346918B2 (en) * | 2005-08-19 | 2013-01-01 | Cpacket Networks, Inc. | Apparatus and method for biased and weighted sampling of network traffic to facilitate network monitoring |
US8665868B2 (en) * | 2005-08-19 | 2014-03-04 | Cpacket Networks, Inc. | Apparatus and method for enhancing forwarding and classification of network traffic with prioritized matching and categorization |
US20070070983A1 (en) * | 2005-09-28 | 2007-03-29 | Bbn Technologies Corp. | Methods and apparatus for improved efficiency communication |
US7643496B1 (en) | 2005-09-30 | 2010-01-05 | Nortel Networks Limited | Application specified steering policy implementation |
US7869442B1 (en) * | 2005-09-30 | 2011-01-11 | Nortel Networks Limited | Method and apparatus for specifying IP termination in a network element |
GB2416891B (en) * | 2005-11-09 | 2006-11-01 | Streamshield Networks Ltd | A network implemented content processing system |
US8146146B1 (en) | 2005-12-23 | 2012-03-27 | At&T Intellectual Property Ii, L.P. | Method and apparatus for integrated network security alert information retrieval |
US8170021B2 (en) * | 2006-01-06 | 2012-05-01 | Microsoft Corporation | Selectively enabled quality of service policy |
US7970899B2 (en) * | 2006-03-03 | 2011-06-28 | Barracuda Networks Inc | Integrated data flow packet admission and traffic management apparatus |
US7697537B2 (en) * | 2006-03-21 | 2010-04-13 | Broadcom Corporation | System and method for using generic comparators with firmware interface to assist video/audio decoders in achieving frame sync |
US20070248318A1 (en) * | 2006-03-31 | 2007-10-25 | Rodgers Stephane W | System and method for flexible mapping of AV vs record channels in a programmable transport demultiplexer/PVR engine |
US8045976B2 (en) | 2006-04-04 | 2011-10-25 | Aegis Mobility, Inc. | Mobility call management |
US7756134B2 (en) | 2006-05-02 | 2010-07-13 | Harris Corporation | Systems and methods for close queuing to support quality of service |
US8004974B2 (en) * | 2006-05-09 | 2011-08-23 | International Business Machines Corporation | Virtualized computing architecture having multiple realms |
US7633944B1 (en) | 2006-05-12 | 2009-12-15 | Juniper Networks, Inc. | Managing timeouts for dynamic flow capture and monitoring of packet flows |
US7809827B1 (en) | 2006-05-12 | 2010-10-05 | Juniper Networks, Inc. | Network device having service card for lawful intercept and monitoring of packet flows |
US7894509B2 (en) * | 2006-05-18 | 2011-02-22 | Harris Corporation | Method and system for functional redundancy based quality of service |
US8001601B2 (en) * | 2006-06-02 | 2011-08-16 | At&T Intellectual Property Ii, L.P. | Method and apparatus for large-scale automated distributed denial of service attack detection |
US8516153B2 (en) | 2006-06-16 | 2013-08-20 | Harris Corporation | Method and system for network-independent QoS |
US8064464B2 (en) * | 2006-06-16 | 2011-11-22 | Harris Corporation | Method and system for inbound content-based QoS |
US7990860B2 (en) | 2006-06-16 | 2011-08-02 | Harris Corporation | Method and system for rule-based sequencing for QoS |
US7856012B2 (en) * | 2006-06-16 | 2010-12-21 | Harris Corporation | System and methods for generic data transparent rules to support quality of service |
US7916626B2 (en) | 2006-06-19 | 2011-03-29 | Harris Corporation | Method and system for fault-tolerant quality of service |
US8730981B2 (en) | 2006-06-20 | 2014-05-20 | Harris Corporation | Method and system for compression based quality of service |
US20070291765A1 (en) * | 2006-06-20 | 2007-12-20 | Harris Corporation | Systems and methods for dynamic mode-driven link management |
US7769028B2 (en) | 2006-06-21 | 2010-08-03 | Harris Corporation | Systems and methods for adaptive throughput management for event-driven message-based data |
US8300653B2 (en) * | 2006-07-31 | 2012-10-30 | Harris Corporation | Systems and methods for assured communications with quality of service |
US20080025318A1 (en) * | 2006-07-31 | 2008-01-31 | Harris Corporation | Systems and methods for dynamically customizable quality of service on the edge of a network |
US7924728B2 (en) * | 2006-08-25 | 2011-04-12 | Raytheon Bbn Technologies Corp | Systems and methods for energy-conscious communication in wireless ad-hoc networks |
GB2443240B (en) * | 2006-10-27 | 2009-05-06 | 3Com Corp | Signature checking using deterministic finite state machines |
US8023973B2 (en) * | 2007-01-03 | 2011-09-20 | Motorola Solutions, Inc. | Expandable text messaging service protocol for use with a two-way radio transceiver |
US8214497B2 (en) | 2007-01-24 | 2012-07-03 | Mcafee, Inc. | Multi-dimensional reputation scoring |
US8763114B2 (en) | 2007-01-24 | 2014-06-24 | Mcafee, Inc. | Detecting image spam |
US8781491B2 (en) * | 2007-03-02 | 2014-07-15 | Aegis Mobility, Inc. | Management of mobile device communication sessions to reduce user distraction |
US9014047B2 (en) * | 2007-07-10 | 2015-04-21 | Level 3 Communications, Llc | System and method for aggregating and reporting network traffic data |
US8149716B2 (en) * | 2007-08-20 | 2012-04-03 | Raytheon Bbn Technologies Corp. | Systems and methods for adaptive routing in mobile ad-hoc networks and disruption tolerant networks |
US8224353B2 (en) | 2007-09-20 | 2012-07-17 | Aegis Mobility, Inc. | Disseminating targeted location-based content to mobile device users |
US8427966B2 (en) * | 2007-10-26 | 2013-04-23 | Jds Uniphase Corporation | Programmable passive probe |
US8045458B2 (en) | 2007-11-08 | 2011-10-25 | Mcafee, Inc. | Prioritizing network traffic |
US8406254B2 (en) * | 2008-04-11 | 2013-03-26 | Mobitv, Inc. | Network optimized distribution |
US8102865B2 (en) * | 2008-05-16 | 2012-01-24 | Microsoft Corporation | Group based allocation of network bandwidth |
US8259722B1 (en) * | 2008-05-19 | 2012-09-04 | Juniper Networks, Inc. | Integrated packet inspection and modification system and network device for internet service provider market research and influence |
US8339959B1 (en) | 2008-05-20 | 2012-12-25 | Juniper Networks, Inc. | Streamlined packet forwarding using dynamic filters for routing and security in a shared forwarding plane |
US8626115B2 (en) | 2009-01-28 | 2014-01-07 | Headwater Partners I Llc | Wireless network service interfaces |
US8340634B2 (en) | 2009-01-28 | 2012-12-25 | Headwater Partners I, Llc | Enhanced roaming services and converged carrier networks with device assisted services and a proxy |
US8635335B2 (en) | 2009-01-28 | 2014-01-21 | Headwater Partners I Llc | System and method for wireless network offloading |
US8589541B2 (en) | 2009-01-28 | 2013-11-19 | Headwater Partners I Llc | Device-assisted services for protecting network capacity |
US8406748B2 (en) | 2009-01-28 | 2013-03-26 | Headwater Partners I Llc | Adaptive ambient services |
US8924469B2 (en) | 2008-06-05 | 2014-12-30 | Headwater Partners I Llc | Enterprise access control and accounting allocation for access networks |
US8346225B2 (en) | 2009-01-28 | 2013-01-01 | Headwater Partners I, Llc | Quality of service for device assisted services |
US8630192B2 (en) | 2009-01-28 | 2014-01-14 | Headwater Partners I Llc | Verifiable and accurate service usage monitoring for intermediate networking devices |
US8548428B2 (en) | 2009-01-28 | 2013-10-01 | Headwater Partners I Llc | Device group partitions and settlement platform |
US8725123B2 (en) | 2008-06-05 | 2014-05-13 | Headwater Partners I Llc | Communications device with secure data path processing agents |
US8924543B2 (en) | 2009-01-28 | 2014-12-30 | Headwater Partners I Llc | Service design center for device assisted services |
US8898293B2 (en) | 2009-01-28 | 2014-11-25 | Headwater Partners I Llc | Service offer set publishing to device agent with on-device service selection |
US8402111B2 (en) | 2009-01-28 | 2013-03-19 | Headwater Partners I, Llc | Device assisted services install |
US8275830B2 (en) | 2009-01-28 | 2012-09-25 | Headwater Partners I Llc | Device assisted CDR creation, aggregation, mediation and billing |
US8832777B2 (en) | 2009-03-02 | 2014-09-09 | Headwater Partners I Llc | Adapting network policies based on device service processor configuration |
US8391834B2 (en) | 2009-01-28 | 2013-03-05 | Headwater Partners I Llc | Security techniques for device assisted services |
WO2010025562A1 (en) * | 2008-09-05 | 2010-03-11 | Aegis Mobility, Inc. | Bypassing enhanced services |
US8955107B2 (en) * | 2008-09-12 | 2015-02-10 | Juniper Networks, Inc. | Hierarchical application of security services within a computer network |
US8040808B1 (en) | 2008-10-20 | 2011-10-18 | Juniper Networks, Inc. | Service aware path selection with a network acceleration device |
US10798252B2 (en) | 2009-01-28 | 2020-10-06 | Headwater Research Llc | System and method for providing user notifications |
US10264138B2 (en) | 2009-01-28 | 2019-04-16 | Headwater Research Llc | Mobile device and service management |
US9392462B2 (en) | 2009-01-28 | 2016-07-12 | Headwater Partners I Llc | Mobile end-user device with agent limiting wireless data communication for specified background applications based on a stored policy |
US9351193B2 (en) | 2009-01-28 | 2016-05-24 | Headwater Partners I Llc | Intermediate networking devices |
US8745191B2 (en) | 2009-01-28 | 2014-06-03 | Headwater Partners I Llc | System and method for providing user notifications |
US10064055B2 (en) | 2009-01-28 | 2018-08-28 | Headwater Research Llc | Security, fraud detection, and fraud mitigation in device-assisted services systems |
US9955332B2 (en) | 2009-01-28 | 2018-04-24 | Headwater Research Llc | Method for child wireless device activation to subscriber account of a master wireless device |
US9858559B2 (en) | 2009-01-28 | 2018-01-02 | Headwater Research Llc | Network service plan design |
US9270559B2 (en) | 2009-01-28 | 2016-02-23 | Headwater Partners I Llc | Service policy implementation for an end-user device having a control application or a proxy agent for routing an application traffic flow |
US11218854B2 (en) | 2009-01-28 | 2022-01-04 | Headwater Research Llc | Service plan design, user interfaces, application programming interfaces, and device management |
US9980146B2 (en) | 2009-01-28 | 2018-05-22 | Headwater Research Llc | Communications device with secure data path processing agents |
US9565707B2 (en) | 2009-01-28 | 2017-02-07 | Headwater Partners I Llc | Wireless end-user device with wireless data attribution to multiple personas |
US10248996B2 (en) | 2009-01-28 | 2019-04-02 | Headwater Research Llc | Method for operating a wireless end-user device mobile payment agent |
US9578182B2 (en) | 2009-01-28 | 2017-02-21 | Headwater Partners I Llc | Mobile device and service management |
US10200541B2 (en) | 2009-01-28 | 2019-02-05 | Headwater Research Llc | Wireless end-user device with divided user space/kernel space traffic policy system |
US9253663B2 (en) | 2009-01-28 | 2016-02-02 | Headwater Partners I Llc | Controlling mobile device communications on a roaming network based on device state |
US10783581B2 (en) | 2009-01-28 | 2020-09-22 | Headwater Research Llc | Wireless end-user device providing ambient or sponsored services |
US9706061B2 (en) | 2009-01-28 | 2017-07-11 | Headwater Partners I Llc | Service design center for device assisted services |
US10057775B2 (en) | 2009-01-28 | 2018-08-21 | Headwater Research Llc | Virtualized policy and charging system |
US9647918B2 (en) | 2009-01-28 | 2017-05-09 | Headwater Research Llc | Mobile device and method attributing media services network usage to requesting application |
US9954975B2 (en) | 2009-01-28 | 2018-04-24 | Headwater Research Llc | Enhanced curfew and protection associated with a device group |
US10237757B2 (en) | 2009-01-28 | 2019-03-19 | Headwater Research Llc | System and method for wireless network offloading |
US10492102B2 (en) | 2009-01-28 | 2019-11-26 | Headwater Research Llc | Intermediate networking devices |
US9572019B2 (en) | 2009-01-28 | 2017-02-14 | Headwater Partners LLC | Service selection set published to device agent with on-device service selection |
US8893009B2 (en) | 2009-01-28 | 2014-11-18 | Headwater Partners I Llc | End user device that secures an association of application to service policy with an application certificate check |
US9571559B2 (en) | 2009-01-28 | 2017-02-14 | Headwater Partners I Llc | Enhanced curfew and protection associated with a device group |
US9557889B2 (en) | 2009-01-28 | 2017-01-31 | Headwater Partners I Llc | Service plan design, user interfaces, application programming interfaces, and device management |
US10841839B2 (en) | 2009-01-28 | 2020-11-17 | Headwater Research Llc | Security, fraud detection, and fraud mitigation in device-assisted services systems |
US10484858B2 (en) | 2009-01-28 | 2019-11-19 | Headwater Research Llc | Enhanced roaming services and converged carrier networks with device assisted services and a proxy |
US10715342B2 (en) | 2009-01-28 | 2020-07-14 | Headwater Research Llc | Managing service user discovery and service launch object placement on a device |
US10779177B2 (en) | 2009-01-28 | 2020-09-15 | Headwater Research Llc | Device group partitions and settlement platform |
US9755842B2 (en) | 2009-01-28 | 2017-09-05 | Headwater Research Llc | Managing service user discovery and service launch object placement on a device |
US10326800B2 (en) | 2009-01-28 | 2019-06-18 | Headwater Research Llc | Wireless network service interfaces |
US8793758B2 (en) | 2009-01-28 | 2014-07-29 | Headwater Partners I Llc | Security, fraud detection, and fraud mitigation in device-assisted services systems |
JP2010178867A (ja) * | 2009-02-05 | 2010-08-19 | Fujifilm Corp | 放射線撮影用ネットワークシステム及び放射線画像撮影システム制御方法 |
US9277029B2 (en) * | 2009-03-27 | 2016-03-01 | Telefonaktiebolaget L M Ericsson (Publ) | Method and apparatus for providing relevant service levels |
EP2417788A4 (de) * | 2009-04-09 | 2015-08-05 | Aegis Mobility Inc | Kontextbasierte datenvermittlung |
WO2011011544A1 (en) | 2009-07-21 | 2011-01-27 | Scott Ferrill Tibbitts | Method and system for controlling a mobile communication device in a moving vehicle |
US9386447B2 (en) | 2009-07-21 | 2016-07-05 | Scott Ferrill Tibbitts | Method and system for controlling a mobile communication device |
US9615213B2 (en) | 2009-07-21 | 2017-04-04 | Katasi Llc | Method and system for controlling and modifying driving behaviors |
US8369345B1 (en) | 2009-11-13 | 2013-02-05 | Juniper Networks, Inc. | Multi-router system having shared network interfaces |
US8307030B1 (en) | 2010-04-20 | 2012-11-06 | Juniper Networks, Inc. | Large-scale timer management |
US9998571B2 (en) | 2010-10-01 | 2018-06-12 | Qualcomm Incorporated | Legacy-compatible control frames |
US8854996B2 (en) * | 2010-12-16 | 2014-10-07 | International Business Machines Corporation | Accelerating data packet parsing |
US9225656B2 (en) | 2011-02-07 | 2015-12-29 | Brocade Communications Systems, Inc. | Quality of service in a heterogeneous network |
US9154826B2 (en) | 2011-04-06 | 2015-10-06 | Headwater Partners Ii Llc | Distributing content and service launch objects to mobile devices |
US9253156B2 (en) | 2011-06-09 | 2016-02-02 | International Business Machines Corporation | Dynamically defining network access rules |
WO2013072773A2 (en) * | 2011-11-18 | 2013-05-23 | Marvell World Trade Ltd. | Data path acceleration using hw virtualization |
CN102413141B (zh) * | 2011-11-30 | 2014-10-08 | 华为技术有限公司 | 网络消息解析方法及通信设备 |
US9251535B1 (en) | 2012-01-05 | 2016-02-02 | Juniper Networks, Inc. | Offload of data transfer statistics from a mobile access gateway |
US9648133B2 (en) * | 2012-03-12 | 2017-05-09 | Telefonaktiebolaget L M Ericsson | Optimizing traffic load in a communications network |
US9503327B2 (en) * | 2012-07-24 | 2016-11-22 | Nec Corporation | Filtering setting support device, filtering setting support method, and medium |
WO2014159862A1 (en) | 2013-03-14 | 2014-10-02 | Headwater Partners I Llc | Automated credential porting for mobile devices |
US10834754B2 (en) | 2013-10-29 | 2020-11-10 | Qualcomm Incorporated | Systems and methods for improved communication efficiency in high efficiency wireless networks |
US9661634B2 (en) | 2013-11-01 | 2017-05-23 | Qualcomm Incorporated | Systems and methods for improved communication efficiency in high efficiency wireless networks |
US20150326600A1 (en) * | 2013-12-17 | 2015-11-12 | George KARABATIS | Flow-based system and method for detecting cyber-attacks utilizing contextual information |
US9189218B2 (en) | 2014-03-26 | 2015-11-17 | Telefonaktiebolaget L M Ericsson (Publ) | Processing packets by generating machine code from pre-compiled code fragments |
US9699301B1 (en) | 2015-05-31 | 2017-07-04 | Emma Michaela Siritzky | Methods, devices and systems supporting driving and studying without distraction |
US10476886B2 (en) | 2015-11-05 | 2019-11-12 | Microsoft Technology Licensing, Llc | Just-in-time access based on geolocation to maintain control of restricted data in cloud computing environments |
US10484430B2 (en) | 2015-11-05 | 2019-11-19 | Microsoft Technology Licensing, Llc | Just-in-time access based on screening criteria to maintain control of restricted data in cloud computing environments |
US10560463B2 (en) | 2015-11-05 | 2020-02-11 | Microsoft Technology Licensing, Llc | Incident management to maintain control of restricted data in cloud computing environments |
US11461671B2 (en) | 2019-06-03 | 2022-10-04 | Bank Of America Corporation | Data quality tool |
US20230319168A1 (en) * | 2022-04-01 | 2023-10-05 | Nxp B.V. | Hardware ethernet header verification |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5642513A (en) | 1994-01-19 | 1997-06-24 | Eastman Kodak Company | Method and apparatus for multiple autorouter rule language |
US5793954A (en) | 1995-12-20 | 1998-08-11 | Nb Networks | System and method for general purpose network analysis |
US5920705A (en) | 1996-01-31 | 1999-07-06 | Nokia Ip, Inc. | Method and apparatus for dynamically shifting between routing and switching packets in a transmission network |
US5781550A (en) * | 1996-02-02 | 1998-07-14 | Digital Equipment Corporation | Transparent and secure network gateway |
US5842040A (en) | 1996-06-18 | 1998-11-24 | Storage Technology Corporation | Policy caching method and apparatus for use in a communication device based on contents of one data unit in a subset of related data units |
US5872783A (en) | 1996-07-24 | 1999-02-16 | Cisco Systems, Inc. | Arrangement for rendering forwarding decisions for packets transferred among network switches |
US5903559A (en) | 1996-12-20 | 1999-05-11 | Nec Usa, Inc. | Method for internet protocol switching over fast ATM cell transport |
US5864666A (en) * | 1996-12-23 | 1999-01-26 | International Business Machines Corporation | Web-based administration of IP tunneling on internet firewalls |
US6246684B1 (en) * | 1997-12-24 | 2001-06-12 | Nortel Networks Limited | Method and apparatus for re-ordering data packets in a network environment |
US6167395A (en) * | 1998-09-11 | 2000-12-26 | Genesys Telecommunications Laboratories, Inc | Method and apparatus for creating specialized multimedia threads in a multimedia communication center |
US6332154B2 (en) * | 1998-09-11 | 2001-12-18 | Genesys Telecommunications Laboratories, Inc. | Method and apparatus for providing media-independent self-help modules within a multimedia communication-center customer interface |
US6170011B1 (en) * | 1998-09-11 | 2001-01-02 | Genesys Telecommunications Laboratories, Inc. | Method and apparatus for determining and initiating interaction directionality within a multimedia communication center |
US6154776A (en) * | 1998-03-20 | 2000-11-28 | Sun Microsystems, Inc. | Quality of service allocation on a network |
US6452915B1 (en) * | 1998-07-10 | 2002-09-17 | Malibu Networks, Inc. | IP-flow classification in a wireless point to multi-point (PTMP) transmission system |
US6862622B2 (en) * | 1998-07-10 | 2005-03-01 | Van Drebbel Mariner Llc | Transmission control protocol/internet protocol (TCP/IP) packet-centric wireless point to multi-point (PTMP) transmission system architecture |
-
1999
- 1999-09-21 US US09/401,030 patent/US6598034B1/en not_active Expired - Lifetime
-
2000
- 2000-09-14 EP EP00965063A patent/EP1214827B1/de not_active Expired - Lifetime
- 2000-09-14 DE DE60034353T patent/DE60034353T2/de not_active Expired - Lifetime
- 2000-09-14 WO PCT/US2000/025389 patent/WO2001022686A1/en active IP Right Grant
Also Published As
Publication number | Publication date |
---|---|
DE60034353D1 (de) | 2007-05-24 |
EP1214827A1 (de) | 2002-06-19 |
EP1214827B1 (de) | 2007-04-11 |
US6598034B1 (en) | 2003-07-22 |
WO2001022686A1 (en) | 2001-03-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE60034353T2 (de) | Regelbasierte ip datenverarbeitung | |
DE10100842B4 (de) | Kommunikationsvorrichtung mit Mehrschichten-Klassenidentifikation und Prioritätssteuerung | |
DE60029879T2 (de) | System zur mehrschichtigen Bereitstellung in Computernetzwerken | |
CA2698255C (en) | Intelligent collection and management of flow statistics | |
Clark et al. | Explicit allocation of best-effort packet delivery service | |
US7606147B2 (en) | Application aware traffic shaping service node positioned between the access and core networks | |
DE69919569T2 (de) | Verwaltung von verbindungsorientierten diensten über das internet-protokoll | |
EP0885506B1 (de) | Verfahren und anordnung zur übertragung eines datenpakets im ethernet von einer ersten anordnung zu mindestens einer zweiten anordnung | |
EP1428408B1 (de) | Verteilte übermittlung von informationen in einem verbindungslosen, paketorientierten kommunikationsnetz | |
US6826147B1 (en) | Method and apparatus for aggregate flow control in a differentiated services network | |
US20060233101A1 (en) | Network element architecture for deep packet inspection | |
EP0902600B1 (de) | Verfahren zum Einrichten von logischen Verbindungen in einem synchronen digitalen Nachrichtenübertragungsnetz, Netzelement und Managementsystem | |
DE60023916T2 (de) | Vorrichtung und verfahren zur paketübertragung in einem ringnetzwerk | |
DE202015009244U1 (de) | Routing von Datenverkehr innerhalb von und zwischen autonomen Systemen | |
DE602004005164T2 (de) | Architektur, verfahren und system wdm-gestützter photonischer burst-vermittelter netzwerke | |
CA2586949A1 (en) | Network service classes | |
DE60217685T2 (de) | System und verfahren zum vermitteln von daten unter verwendung eines gemeinsamen koppelfeldes | |
DE602004010056T2 (de) | Verfahren und System zur Verwaltung des Netzwerkverkehrs unter Berücksichtung von mehreren Zwangsbedingungen | |
DE10136047A1 (de) | Router-Einrichtung und Prioritätssteuerungsverfahren zur Verwendung in der Router-Einrichtung | |
DE60109038T2 (de) | Zugangskontrolleinrichtung zwischen atm-netzen | |
EP1133112A2 (de) | Verfahren zum Verteilen einer Datenverkehrslast eines Kommunikationsnetzes und Kommunikationsnetz zur Realisierung des Verfahrens | |
CA2359594C (en) | End-to-end prioritized data delivery on networks using ip over frame relay | |
DE602004012955T2 (de) | Parallele Steuerungsvorrichtungen für den Data Link Layer mit Statistikerfassung in einer Netzwerksvermittlungseinrichtung | |
DE60036493T2 (de) | Datenflusssteuerung | |
KR100453825B1 (ko) | Ip망에서 큐오에스 제공을 위한 자원 관리 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8364 | No opposition during term of opposition | ||
R082 | Change of representative |
Ref document number: 1214827 Country of ref document: EP Representative=s name: WESTPHAL, MUSSGNUG & PARTNER, DE |
|
R081 | Change of applicant/patentee |
Ref document number: 1214827 Country of ref document: EP Owner name: INFINEON TECHNOLOGIES AG, DE Free format text: FORMER OWNER: INFINEON TECHNOLOGIES NORTH AMERICA CORP., SAN JOSE, US Effective date: 20121128 |
|
R082 | Change of representative |
Ref document number: 1214827 Country of ref document: EP Representative=s name: WESTPHAL, MUSSGNUG & PARTNER, DE Effective date: 20121128 |