DE60311800T2 - Verfahren und vorrichtung zur verbesserung der netzwerkleitweglenkung - Google Patents

Verfahren und vorrichtung zur verbesserung der netzwerkleitweglenkung Download PDF

Info

Publication number
DE60311800T2
DE60311800T2 DE60311800T DE60311800T DE60311800T2 DE 60311800 T2 DE60311800 T2 DE 60311800T2 DE 60311800 T DE60311800 T DE 60311800T DE 60311800 T DE60311800 T DE 60311800T DE 60311800 T2 DE60311800 T2 DE 60311800T2
Authority
DE
Germany
Prior art keywords
identifier
address
value
network address
packet
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
Application number
DE60311800T
Other languages
English (en)
Other versions
DE60311800D1 (de
Inventor
Philip Santa Clara Mathew
Ranjeesta Sunnyvale Singh
Michael San Francisco Lewin
Harshawardhan San Josse Vipat
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Intel Corp
Original Assignee
Intel Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Intel Corp filed Critical Intel Corp
Publication of DE60311800D1 publication Critical patent/DE60311800D1/de
Application granted granted Critical
Publication of DE60311800T2 publication Critical patent/DE60311800T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/02Topology update or discovery
    • H04L45/04Interdomain routing, e.g. hierarchical routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing
    • H04L45/745Address table lookup; Address filtering
    • H04L45/74591Address table lookup; Address filtering using content-addressable memories [CAM]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Steering Control In Accordance With Driving Conditions (AREA)
  • Small-Scale Networks (AREA)

Description

  • ALLGEMEINER STAND DER TECHNIK
  • Mit Hilfe einer Netzwerkadresse kann Information über ein Netzwerk übertragen werden. Beispielsweise kann ein Router Information empfangen, die zu einer anderen Netzwerkvorrichtung weiterzuleiten ist. Der Router kann eine Netzwerkadresse, z.B. eine Zieladresse, benutzen, um nach der richtigen Routinginformation zu suchen. Mit zunehmender Größe des Netzwerkes kann dem Router jedoch weniger Suchzeit zum Weiterleiten der Information zur Verfügung stehen. Es kann deshalb notwendig sein, die Suchzeit zum Weiterleiten von Information zu reduzieren, was eine schnellere Verarbeitung von Paketen bewirken kann.
  • Beispiele für das Suchen nach Routinginformation sind in US 2001/056417 A1 und WO 01/93196 A beschrieben. Das erste Dokument offenbart eine Tabelle mit Information, die in einem Router zu verwenden ist, und die mehrere Suchschlüssel aufweist, die mehreren Dateneinträgen zugeordnet sind. Die Suchschlüssel bilden eine baumartige Struktur, und jeder Suchschlüssel kann erweitert werden, um zwei Suchschlüssel einer niedrigen Ebene zu unterstützen, die schließlich die niedrigsten Ebenen der Baumstruktur abdecken. Unter Verwendung eines Suchwerts wird an der Baumstruktur eine Binärsuche durchgeführt.
  • Das zweite Dokument offenbart eine Routingtabelle mit Internetprotokoll-Adresspräfixen, wobei ein eintreffendes Paket den Adresspräfixen zugeordnet wird. Dies kann eine Vielzahl von übereinstimmenden Einträgen in der Tabelle ergeben, weshalb die kürzeren Internetprotokoll-Adresspräfixe verworfen werden, und das längste übereinstimmende Präfix übrig bleibt.
  • DARLEGUNG DER ERFINDUNG
  • In einem Aspekt stellt die Erfindung ein Verfahren zum Suchen nach Routinginformation gemäß Anspruch 1 bereit. In einem anderen Aspekt stellt die Erfindung ein Routinggerät gemäß Anspruch 12 bereit. In einem anderen Aspekt stellt die Erfindung ein System zum Durchführen von Routing in einem Netzwerk gemäß Anspruch 15 bereit. In einem weiteren Aspekt stellt die Erfindung ein Computerprogrammprodukt zum Benutzen bei der Suche nach Routinginformation gemäß Anspruch 16 bereit.
  • KURZE BESCHREIBUNG DER FIGUREN
  • Der Gegenstand, der in Ausführungsformen der Erfindung betrachtet wird, wird insbesondere im abschließenden Abschnitt der Beschreibung verdeutlicht und klar beansprucht. Ausführungsformen der Erfindung können allerdings sowohl hinsichtlich der Anordnung als auch des Betriebsverfahrens, zusammen mit Aufgaben, Merkmalen und Vorteilen derselben, am besten durch Bezugnahme auf die folgende detaillierte Beschreibung nachvollzogen werden, unter Betrachtung der begleitenden Figuren, wobei:
  • 1 ein System ist, das zum Umsetzen einer Ausführungsform der Erfindung geeignet ist;
  • 2 ein Blockdiagramm eines Routingsystems gemäß einer Ausführungsform der Erfindung ist;
  • 3 ein Blockdiagramm eines Adressenkennungserzeugers gemäß einer Ausführungsform der Erfindung ist;
  • 4 ein Adressenformat zeigt, das zur Benutzung mit einer Ausführungsform der Erfindung geeignet ist;
  • 5 ein Blockablaufdiagramm von Operationen ist, die von einem Routingsystem gemäß einer Ausführungsform der Erfindung ausgeführt werden; und
  • 6 eine Routinghierarchie zeigt, die zur Benutzung mit einer Ausführungsform der Erfindung geeignet ist.
  • DETAILLIERTE BESCHREIBUNG
  • Ausführungsformen der Erfindung können ein Verfahren und eine Vorrichtung zum Verbessern des Weiterleitens von Information über ein Netzwerk umfassen. Während sich Information von einer Quelle zu einem bestimmten Ziel durch ein Netzwerk bewegt, müssen einige Netzwerkvorrichtungen nach Routinginformation suchen. Die Suche kann eine Netzwerkadresse verwenden. Die Wartezeit einer Suche kann direkt mit der Größe der Netzwerkadresse in Zusammenhang stehen. Typischerweise werden umso mehr Speicherzugriffe zum Suchen nach der Routinginformation benötigt, je mehr Bits zum Darstellen einer Netzwerkadresse benutzt werden. Deshalb kann eine kleinere Netzwerkadresse zu geringeren Wartezeiten während des Suchprozesses führen.
  • Die Ausführungsformen der Erfindung zielen darauf ab, eine Adressenkennung zu erzeugen, die kleiner ist als die Netzwerkadresse, und die Adressenkennung zu benutzen, um nach Routinginformation zu suchen. Der Begriff „Adressenkennung" im hier verwendeten Sinne kann einen Wert bezeichnen, der durch eine Anzahl von Bits dargestellt wird, die aus einer Netzwerkadresse hergeleitet werden. Da die Adressenkennung typischerweise kleiner ist als die Netzwerkadresse, kann die Wartezeit für die Suche gesenkt werden. Entsprechend kann ein Benutzer bessere Netzwerkdienste erzielen, indem Information schneller zwischen einzelnen Punkten übertragen wird.
  • Es verdient Erwähnung, dass in der Beschreibung jeder Verweis auf „eine Ausführungsform" bedeutet, dass ein bestimmtes Merkmal, eine bestimmte Struktur oder Eigenschaft, die im Zusammenhang mit der Ausführungsform beschrieben wird, in wenigstens einer Ausführungsform der Erfindung enthalten ist. Das Auftreten des Ausdrucks „in einer Ausführungsform" an verschiedenen Stellen der Beschreibung bezieht sich nicht notwendigerweise auf dieselbe Ausführungsform.
  • Es werden zahlreiche spezifische Details erörtert, um ein gründliches Verständnis der Ausführungsformen der Erfindung zu ermöglichen. Fachleute werden jedoch verstehen, dass die Ausführungsformen der Erfindung ohne diese spezifischen Details umgesetzt werden können. In anderen Fällen wurden allgemein bekannte Verfahren, Prozesse, Komponenten und Schaltungen nicht im Detail beschrieben, um die Ausführungsformen der Erfindung nicht zu verundeutlichen. Man wird verstehen, dass die hier offenbarten spezifischen strukturellen und funktionellen Details repräsentativ sein können und den Umfang der Erfindung nicht notwendigerweise begrenzen.
  • Unter detaillierter Bezugnahme auf die Figuren, in denen gleiche Bauteile mit gleichen Bezugszeichen versehen sind, ist in 1 ein System gezeigt, das zur Umsetzung einer Ausführungsform der Erfindung geeignet ist. 1 ist ein Blockdiagramm eines Systems 100, das eine Anzahl von Netzwerkknoten umfasst, die durch ein oder mehrere Kommunikationsmedien verbunden sind. Ein Netzwerkknoten („Knoten") kann in diesem Kontext jede Vorrichtung mit einschließen, die zum Übertragen von Information in der Lage ist, z.B. einen Computer, einen Server, einen Schalter, einen Router, eine Brücke, ein Gateway, einen persönlichen digitalen Assistenten, eine Mobilvorrichtung usw. Ein Kommunikationsmedium kann jedes Medium mit einschließen, das zum Tragen von Informationssignalen in der Lage ist, z.B. eine ver drillte Leitung, ein Koaxialkabel, Lichtleitfasern, Funkfrequenzen, elektronische, akustische oder optische Signale usw.
  • Insbesondere kann das System 100 einen Quellknoten 102, einen Transitknoten 106 und einen Zielknoten 110 umfassen. Der Quellknoten, der Transitknoten 106 und der Zielknoten 110 können durch Kommunikationsmedien 104 und 108 verbunden sein, wie dargestellt. Obwohl 1 nur einen Quellknoten, einen Transitknoten und einen Zielknoten zeigt, wird man verstehen, dass im System 100 jede beliebige Anzahl von Netzwerkknoten benutzt werden kann, und dies trotzdem in den Umfang der Erfindung fällt. Ferner können der Begriff „Verbindung" und Variationen desselben in diesem Kontext physikalische und/oder logische Verbindungen bezeichnen.
  • In einer Ausführungsform der Erfindung kann das System 100 ein paketvermitteltes Netzwerk umfassen. Paketvermittlung kann in diesem Kontext das Übertragen von Information über ein Netzwerk in der Form relativ kurzer Pakete gemäß einem oder mehreren Kommunikationsprotokollen bezeichnen. Ein Paket kann in diesem Kontext eine Informationsmenge von begrenzter Länge umfassen, wobei die Länge typischerweise in Bits oder Bytes dargestellt ist. Ein Beispiel für eine Paketlänge könnte 1.000 Bytes sein. Ein Protokoll kann einen Satz an Befehlen umfassen, anhand derer die Informationssignale über das Kommunikationsmedium übertragen werden. Beispielsweise kann das Protokoll ein Paketvermittlungsprotokoll wie z.B. das Transmission Control Protocol (TCP) sein, wie definiert durch Request for Comment (RFC) 793 Standard 7 der Internet Engineering Task Force (IETF), übernommen im September 1981 („TCP-Spezifikation"), und das Internetprotokoll (IP), wie definiert durch RFC 791, Standard 5 der IETF, übernommen im September 1981 („IP-Spezifikation"), beide verfügbar unter „www.ietf.org" (kollektiv bezeichnet als „TCP/IP-Spezifikation").
  • In einer Ausführungsform der Erfindung kann der Quellknoten 102 einen Knoten umfassen, der eine Menge an Information abgibt, die an Zielknoten 110 geliefert werden soll. Der Zielknoten 110 kann einen Knoten umfassen, bei dem es sich um den vorgesehenen Empfänger der Information handelt. Der Transitknoten 106 kann einen Knoten umfassen, der die Information zwischen dem Quellknoten 102 und dem Zielknoten 110 übermittelt. In einigen Fällen können mehr als ein Quellknoten, Zielknoten und/oder Transitknoten vorliegen. Beispielsweise können bei einer Multicast-Verbindung mehrere Zielknoten vorliegen. In einem anderen Beispiel liegen häufig mehrere Transitknoten zwischen einem Quellknoten und einem Zielknoten vor. Ein Beispiel für beide ist jeweils zur Verdeutlichung dargestellt, obwohl die Ausführungsformen in dieser Hinsicht nicht beschränkt sind. Information kann jede Art von Daten umfassen, die als ein Signal dargestellt werden können, z.B. ein elektrisches Signal, ein optisches Signal, ein akustisches Signal usw. Beispiele für Information in diesem Kontext können Daten eines Gesprächs, einer Videokonferenz, eines Video-Streams, einer elektronischen Nachricht („E-Mail"), einer Voice-Mail-Nachricht, alphanumerischer Symbole, Graphiken, Bilder, Video, Text usw. beinhalten.
  • Im allgemeinen Betrieb kann der Quellknoten 102 über den Transitknoten gemäß der TCP/IP-Spezifikation Information an den Zielknoten 110 senden. Der Quellknoten unterteilt eine Menge an Information in eine Serie von Paketen. Jedes Paket kann einen Teil der Information sowie Steuerungsinformation enthalten. Die Steuerungsinformation kann den Transitknoten im Netzwerk helfen, jedes Paket an den Zielknoten weiterzuleiten. Der Quellknoten 102 kann die Pakete an den Transitknoten 106 senden. Der Transitknoten 106 kann die Pakete empfangen, sie für kurze Zeit speichern, und sie dann an den nächsten Transitknoten oder den Zielknoten 110 weitergeben. Der Zielknoten 110 kann schließlich die gesamte Serie von Paketen empfangen und sie benutzen, um die ur sprünglich von Quellknoten 102 gesendete Information zu reproduzieren.
  • 2 zeigt ein Blockdiagramm eines Routingsystems gemäß einer Ausführungsform der Erfindung. 2 zeigt ein Routingsystem 200, das Funktionen aufweist, die als Software umgesetzt werden können, die von einem Prozessor, von Hardwareschaltungen oder -strukturen oder einer Kombination der beiden ausgeführt wird. Der Prozessor kann ein allgemeiner oder ein dedizierter Prozessor sein, z.B. ein Prozessor aus der Prozessorfamilie, die von der Intel Corporation, Motorola Incorporated, Sun Microsystems und anderen hergestellt wird. Die Software kann Programmierlogik, Befehle oder Daten umfassen, die bestimmte Funktionen für eine Ausführungsform der Erfindung implementieren. Die Software kann in einem Medium gespeichert sein, auf das eine Maschine zugreifen kann, oder in einem computerlesbaren Medium, z.B. einem Lesespeicher (ROM), einem Schreib-Lesespeicher (RAM), einer Magnetplatte (z.B. Diskette und Festplatte), einer optischen Platte (z.B. CD-ROM) oder jedem anderen Datenspeichermedium. In einer Ausführungsform der Erfindung können die Medien Programmierbefehle in einem komprimierten und/oder verschlüsselten Format speichern, und können Befehle speichern, die von einem Installierer zusammengestellt oder installiert werden müssen, bevor sie von dem Prozessor ausgeführt werden. Alternativ kann eine Ausführungsform der Erfindung als bestimmte Hardwarekomponenten implementiert sein, die fest verdrahtete Logik zum Ausführen der genannten Funktionen enthalten, oder durch jede beliebige Kombination programmierter allgemein einsetzbarer Computerkomponenten und speziell angefertigter Hardwarekomponenten.
  • In einer Ausführungsform der Erfindung kann das Verarbeitungssystem 200 eine Empfangsschnittstelle 202, einen Adressenkennungserzeuger 204, ein Routingmodul 206 und eine Sendeschnittstelle 208 umfassen. Die Empfangsschnittstelle 202 kann Informationspakete empfangen, die Routinginformation benötigen. Die Routinginformation kann standardmäßige Routinginformation umfassen, z.B. eine Portnummer, eine Kanalkennung, eine Gerätekennung, Warteschlangeninformation usw. Der Adressenkennungserzeuger 204 kann die Netzwerkadresse für die Pakete verarbeiten, um eine Adressenkennung zu erzeugen, die kürzer sein kann als die Netzwerkadresse. Das Routingmodul 206 kann die Adresskennung benutzen, um nach Routinginformation für die Pakete zu suchen. Zum Suchen nach der Routinginformation kann jede Art von Suchalgorithmus benutzt werden. Eine Ausführungsform der Erfindung kann einen Suchalgorithmus gemäß dem empfohlenen IETF-Standard namens „An Internet Protocol Version Six (IPv6) Aggregatable Global Unicast Address Format", RFC 2374, Juli 1998 („RFC 2374") benutzen, verfügbar unter „www.ietf.org". Die Sendeschnittstelle 208 kann die Pakete unter Verwendung der Routinginformation an einen anderen Netzwerkknoten senden. Die Struktur und der Betrieb jedes einzelnen Moduls sollen im Folgenden genauer erörtert werden.
  • 3 ist ein Blockdiagramm eines Adressenkennungserzeugers gemäß einer Ausführungsform der Erfindung. 3 zeigt einen Adressenkennungserzeuger 300, der beispielsweise eine Adressenkennung 204 darstellen kann. In dieser Ausführungsform der Erfindung kann der Adressenkennungserzeuger 300 ein Adressenextraktionsmodul 302, ein Vergleichermodul 304 und ein Entscheidungsmodul 306 umfassen.
  • Das Adressenextraktionsmodul 302 kann beispielsweise von der Empfangsschnittstelle 202 Paketinformation empfangen. In einer Ausführungsform der Erfindung kann die Paketinformation einen Paket-Header umfassen, der Steuerungsinformation aufweist, z.B. eine Quelladresse, eine Zieladresse, eine Paketkennung, eine Paketlänge usw. Das Adressenextraktionsmodul 302 kann aus der Paketinformation die Information extrahieren, die zum Erzeugen einer Adressenkennung notwendig ist. Das Adressenextraktionsmodul 302 kann dann die extrahierte Information an das Vergleichermodul 304 senden.
  • Eine Ausführungsform kann eine Netzwerkadresse RFC 2374 benutzen. RFC 2374 begrenzt Ebenen in der Routing-Hierarchie unter Verwendung eines Satzes von Kennungen, um den ursprünglichen Ipv6-Adressraum zu aggregieren und zu bewahren. RFC 2374 spezifiziert drei Kennungen zum Festlegen der Bitgrenzen einer Adresse. Bei den drei Kennungen handelt es sich um eine Top-Level-Aggregationskennung (TLA), eine Next-Level-Aggregationskennung (NLA) und eine Site-Level-Aggregationskennung (SLA). Die anfänglichen Zuweisungen zu einem Internetdienstanbieter (Internet Service Provider – ISP) können anhand einer TLA oder einer Sub-TLA erfolgen. Diese Organisationen können dann ihren Kunden-ISPs NLAs zuweisen, die wiederum Endnutzern SLAs zuteilen können, damit diese ihre eigene lokale Topologie schaffen können. Die Schnittstellenkennung kann den Host-Abschnitt einer IPv6-Adresse darstellen, wie er von den 64 am weitesten rechts angeordneten Bits der Adresse angezeigt wird.
  • 4 zeigt ein Adressenformat, das zur Benutzung mit einer Ausführungsform der Erfindung geeignet ist. 4 zeigt ein Adressenformat 400 gemäß RFC 2374. Das Adressenformat 400 kann eine Gesamtlänge von 128 Bits aufweisen. In einer Ausführungsform der Erfindung kann das Adressenformat 400 ein Formatpräfix (FP) 402, eine TLA 404, ein reserviertes Feld (RES) 406, eine NLA 408, eine SLA 410 und eine Schnittstellenkennung 412 aufweisen. Wie zuvor erwähnt, kann die TLA 404 die obere Ebene (Top Level) der Routing-Hierarchie darstellen. Router ohne Voreinstellung weisen für jede aktive TLA einen Routing-Tabelleneintrag auf, und weisen typischerweise außerdem weitere Einträge auf, die Routinginformation für die TLA liefern, in der sie angeordnet sind. Organisationen, denen TLA 404 zugewiesen wurde, können NLA 408 benutzen, um eine Adressierungshierarchie zu erzeugen und Sites zu identifizieren. Eine einzelne Organisation kann dann die SLA 410 benutzen, um eine eigene lokale Adressierungshierarchie zu erzeugen und Subnetze zu identifizieren. Die Schnittstellenkennung 412 kann eine Host- oder Geräteadresse darstellen, wie z.B. eine Schichtenkennung für die Medienzugriffskontrolle (media access control MAC). Die Länge der Schnittstellenkennung 412 kann beispielsweise 64 Bits umfassen.
  • Die Operationen der Systeme 100, 200 und 300 sowie die Benutzung von Adressenformat 400 sollen unter Bezugnahme auf 5 und die begleitenden Beispiele weiter beschrieben werden. Obwohl die hier gezeigte 5 eine bestimmte Verarbeitungslogik aufweisen kann, wird man verstehen, dass die Verarbeitungslogik lediglich ein Beispiel dafür darstellt, wie die hier beschriebenen allgemeinen Funktionen implementierbar sind. Ferner muss eine jeweilige Operation innerhalb einer bestimmten Verarbeitungslogik nicht notwendigerweise in der gezeigten Abfolge stattfinden, es sei denn, dies wird ausdrücklich so vorgegeben.
  • 5 ist ein Blockablaufdiagramm von Programmierlogik, die von einem Routingsystem gemäß einer Ausführungsform der Erfindung ausgeführt wird. In einer Ausführungsform der Erfindung kann das Routingsystem die Software und/oder Hardware bezeichnen, die benutzt wird, um die Funktionen zum Weiterleiten von Information bereitzustellen, wie sie hier beschrieben sind. In dieser Ausführungsform der Erfindung kann das Routingsystem als Teil des intermediären Knotens 106 implementiert sein. Man wird jedoch verstehen, dass diese Funktionen von jedem beliebigen Gerät, oder einer Kombination von Geräten, die an einem beliebigen Ort in einem Kommunikationsnetzwerk angeordnet sind, implementiert werden können, und trotzdem in den Umfang der Erfindung fallen.
  • 5 kann eine Programmierlogik 500 zum Suchen nach Routinginformation darstellen. Ein vorgegebener Wert, der auf einer Aggregationskennung basiert, kann an Block 502 gespeichert werden. An Block 504 kann ein Paket mit einer Netzwerkadresse empfangen werden. An Block 506 kann eine Adressenkennung erzeugt werden, die auf der Netzwerkadresse basiert. Eine Suche nach der Routinginformation des Pakets kann an Block 508 unter Verwendung der Adressenkennung durchgeführt werden. Das Paket kann an Block 510 mit Hilfe der Routinginformation gesendet werden.
  • In einer Ausführungsform der Erfindung kann der vorgegebene Wert ein Präfix für eine Netzwerkadresse sein. Das Präfix kann beispielsweise auf einer Aggregationskennung basieren. Ein Beispiel einer Aggregationskennung können die Aggregationskennungen sein, die in RFC 2374 beschrieben sind, z.B. eine TLA, NLA oder SLA. Der vorgegebene Wert kann auf Grundlage der Position des Routingsystems innerhalb eines Netzwerks konfiguriert werden. Wenn das Routingsystem beispielsweise an einer Position implementiert ist, die als eine TLA-Kennung zugewiesen ist, kann der vorgegebene Wert das Präfix sein, das der TLA-Kennung zugeordnet ist. Dies kann beispielsweise bei einem großen ISP der Fall sein. Wenn das Routingsystem in einem anderen Beispiel an einer Position angeordnet ist, der eine TLA-Kennung und eine NLA-Kennung zugeordnet ist, kann der vorgegebene Wert das Präfix sein, das der TLA-Kennung und der NLA-Kennung zugeordnet ist. Wenn das Routingsystem in einem weiteren Beispiel an einer Position angeordnet ist, der eine TLA-Kennung, eine NLA-Kennung und eine SLA-Kennung zugeordnet ist, kann der vorgegebene Wert das Präfix sein, das allen drei Kennungen zugeordnet ist.
  • In einer Ausführungsform der Erfindung kann das Abrufen eines ersten Wertes aus der Netzwerkadresse eine Adressenkennung erzeugen, die auf der Netzwerkadresse basiert. Ein Beispiel für den ersten Wert kann z.B. eine Kombination aus TLA-Kennung, NLA-Kennung und SLA-Kennung sein. Wie bei dem vorgegebenen Wert kann die genaue Kombination für den ersten Wert auf der Position des Routingsystems beruhen, die von einer Aggregationskennung angezeigt wird. Der erste Wert kann mit dem vorgegebenen Wert verglichen werden. Wenn eine Übereinstimmung mit dem vorgegebenen Wert vorliegt, kann ein zweiter Wert aus der Netzwerkadresse abgerufen werden. Ein Beispiel für einen zweiten Wert kann die übrige Netzwerkadresse sein, ohne die zuvor für den ersten Wert abgerufenen Bits. Die Adressenkennung kann unter Verwendung des zweiten Wertes erzeugt werden. Wenn keine Übereinstimmung mit dem vorgegebenen Wert vorliegt, kann die Adressenkennung unter Verwendung der gesamten Netzwerkadresse erzeugt werden, z.B. der Kombination des ersten Wertes und des zweiten Wertes.
  • In einer Ausführungsform der Erfindung kann die Netzwerkadresse gemäß IPv6 zugewiesen werden. In dieser Ausführungsform kann die Netzwerkadresse 128 Bits umfassen, einschließlich einer Schnittstellenkennung von 64 Bits. Wenn der zweite Wert die Schnittstellenkennung umfasst, kann die erzeugte Adressenkennung kleiner sein als die gesamte Netzwerkadresse (z.B. 64 Bits gegenüber 128 Bits). Entsprechend kann die Suchzeit für Routinginformation im Vergleich zur Benutzung der gesamten Netzwerkadresse reduziert werden.
  • 6 zeigt eine Routingstruktur, die zur Benutzung mit einer Ausführungsform der Erfindung geeignet ist. 6 zeigt eine hierarchische Routingstruktur 600, die beispielsweise gemäß RFC 2374 erstellt wurde. Die Routingstruktur 600 kann TLAs umfassen, die als T1, T2 und Tn bezeichnet sind. Die Routingstruktur 600 kann auch NLAs umfassen, die als N1, N2 und Nn bezeichnet sind. Ferner kann die Routingstruktur 600 SLAs umfassen, die als S1, S2 und Sn bezeichnet sind. Schließlich kann die Routing struktur 600 Schnittstellenkennungen umfassen, die als H1, H2 und Hn bezeichnet sind. Bei einer hierarchischen Routingstruktur kann jeder Knoten ein eindeutiges Präfix speichern, das auf seiner Aggregationsebene basiert. Beispielsweise kann S1 ein eindeutiges Präfix T1N1S1 speichern. Alle Pakete, die für die Knoten unter S1 bestimmt sind, sollten als Teil ihrer Netzwerkadresse dieses konstante Präfix aufweisen. Die Ausführungsformen der Erfindung können dieses konstante Präfix benutzen, um die Wartezeit im Zusammenhang mit dem Suchen nach Routinginformation zu verringern.
  • 6 kann benutzt werden, um dieses Konzept zu erläutern. Nehmen wir an, S1 ist ein Site-Level-Kantenrouter. In diesem bestimmten Fall können die Werte der Felder TLA, NLA und SLA (T1N1S1) aus der Zieladresse eines Pakets extrahiert und mit einem zuvor gespeicherten Wert (z.B. dem vorgegebenen Wert) verglichen werden. Wenn die Werte übereinstimmen, kann das Paket als eintreffendes Paket betrachtet werden, und die unteren 64 Bits (H1) können dazu benutzt werden, nach der Routinginformation zu suchen. Anderenfalls können alle 128 Bits (T1N1S1H1) der Adresse dazu benutzt werden, eine normale LPM-(Longest Prefix Matching)-Suche durchzuführen.
  • Man wird verstehen, dass die Ausführungsformen auf jeden Netzwerkknoten auf jeder Ebene innerhalb einer Routinghierarchie angewandt werden können. Eine Präfixmaske und Präfixwerte können gespeichert und dazu benutzt werden, eintreffende Pakete zu erfassen. Wenn die vorderen Bits der Zieladresse eines Pakets mit dem auf dieser Ebene gespeicherten Präfix übereinstimmen, können diese Bits ausgelassen werden, und nur die verbleibenden Bits der Adresse können benutzt werden, um nach der passenden Routinginformation zu suchen.

Claims (16)

  1. Verfahren zum Suchen nach Routinginformation, umfassend: Empfangen eines Paketes mit einer Netzwerkadresse (504); Abrufen eines ersten Wertes aus der Netzwerkadresse; Vergleichen des ersten Wertes mit einem vorgegebenen Wert; Abrufen eines zweiten Wertes aus der Netzwerkadresse, sofern der erste Wert mit dem vorgegebenen Wert übereinstimmt; Erzeugen einer Adressenkennung, die auf der Netzwerkadresse (506) basiert, lediglich unter Verwendung des zweiten Wertes, sofern der erste Wert mit dem vorgegebenen Wert übereinstimmt, wobei die Adressenkennung weniger Bits umfasst als die Netzwerkadresse; sowie Suchen nach Routinginformation für das Paket unter Verwendung der Adressenkennung anstelle der Netzwerkadresse (508).
  2. Verfahren nach Anspruch 1, ferner umfassend das Erzeugen der Adressenkennung unter Verwendung des ersten Wertes und des zweiten Wertes, sofern der erste Wert nicht mit dem vorgegebenen Wert übereinstimmt.
  3. Verfahren nach Anspruch 1, wobei die Netzwerkadresse eine 128-Bit-Adresse umfasst, die gemäß Internetprotokoll, Version sechs, zugewiesen wurde.
  4. Verfahren nach Anspruch 1, wobei der erste Wert ein Präfix umfasst, das auf einer Aggregationskennung basiert.
  5. Verfahren nach Anspruch 4, wobei die Aggregationskennung mindestens eines von einer Top-Level-Aggregationskennung TLA, Next-Level-Aggregationskennung NLA und Site-Level-Aggregationskennung SLA umfasst.
  6. Verfahren nach Anspruch 1, wobei der zweite Wert eine Schnittstellenkennung umfasst.
  7. Verfahren nach Anspruch 6, wobei die Schnittstellenkennung eine Schichtenkennung für die Medienzugriffskontrolle MAC umfasst.
  8. Verfahren nach Anspruch 6, wobei die Schnittstellenkennung 64 Bit umfasst.
  9. Verfahren nach Anspruch 1, wobei der vorgegebene Wert ein Präfix umfasst, das auf einer Aggregationskennung basiert.
  10. Verfahren nach Anspruch 9, wobei die Aggregationskennung mindestens eines von einer Top-Level-Aggregationskennung TLA, Next-Level-Aggregationskennung NLA und Site-Level-Aggregationskennung SLA umfasst.
  11. Verfahren nach Anspruch 1, ferner umfassend das Senden des Paketes unter Verwendung der Routinginformation (510).
  12. Routinggerät, umfassend: eine Empfangsschnittstelle (202) zum Empfangen eines Paketes mit einer Netzwerkadresse; einen Adressenkennungserzeuger (204), der zum Abrufen eines ersten Werts aus der Netzwerkadresse, Vergleichen des ersten Werts mit einem vorgegebenen Wert, Abrufen eines zweiten Werts aus der Netzwerkadresse, sofern der erste Wert mit dem vorgegebenen Wert übereinstimmt, und Erzeugen einer Adressenkennung, die auf der Netzwerkadresse basiert, lediglich unter Verwendung des zweiten Wertes, sofern der erste Wert mit dem vorgegebenen Wert übereinstimmt, geeignet ist, wobei die Adressenkennung weniger Bits umfasst als die Netzwerkadresse; sowie ein Routingmodul (206) zum Abrufen von Routinginformation unter Verwendung der Adressenkennung anstelle der Netzwerkadresse.
  13. Gerät nach Anspruch 12, ferner umfassend eine Sendeschnittstelle (208) zum Senden des Paketes unter Verwendung der Routinginformation.
  14. Gerät nach Anspruch 12, wobei der Adressenkennungserzeuger folgendes umfasst: ein Adressenextraktionsmodul (302) zum Extrahieren eines Präfixes aus der Netzwerkadresse; ein Vergleichermodul (304) zum Vergleichen des Präfixes mit einem vorgegebenen Wert; sowie ein Entscheidungsmodul (306) zum Erzeugen der Adressenkennung unter Verwendung eines Teils der Netzwerkadresse, sofern das Präfix mit dem vorgegebenen Wert übereinstimmt, andernfalls zum Erzeugen der Adressenkennung unter Verwendung der gesamten Netzwerkadresse.
  15. System zum Ausführen von Routing in einem Netzwerk, umfassend: einen Quellknoten (102) zum Senden eines Paketes unter Verwendung einer Netzwerkadresse; einen Zielknoten (110) entsprechend der Netzwerkadresse zum Empfangen des Paketes; sowie einen Transitknoten (106) zum Weiterleiten des Paketes zwischen dem Quellknoten (102) und dem Zielknoten (110), wobei der Transitknoten (106) ein Routinggerät (200) nach den Ansprüchen 12 bis 14 aufweist und das Paket unter Verwendung der Adressenkennung anstelle der Netzwerkadresse weiterleitet.
  16. Computerprogrammprodukt, das auf einem Speichermedium gespeichert ist und Befehle umfasst, die, wenn sie von einem Prozessor ausgeführt werden, zur Suche nach Routinginformation durch Umsetzen des Verfahrens nach einem der Ansprüche 1 bis 11 führen.
DE60311800T 2002-05-16 2003-05-01 Verfahren und vorrichtung zur verbesserung der netzwerkleitweglenkung Expired - Lifetime DE60311800T2 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US150315 2002-05-16
US10/150,315 US7257643B2 (en) 2002-05-16 2002-05-16 Method and apparatus to improve network routing
PCT/US2003/013703 WO2003098887A1 (en) 2002-05-16 2003-05-01 Method and apparatus to improve network routing

Publications (2)

Publication Number Publication Date
DE60311800D1 DE60311800D1 (de) 2007-03-29
DE60311800T2 true DE60311800T2 (de) 2007-11-22

Family

ID=29419221

Family Applications (1)

Application Number Title Priority Date Filing Date
DE60311800T Expired - Lifetime DE60311800T2 (de) 2002-05-16 2003-05-01 Verfahren und vorrichtung zur verbesserung der netzwerkleitweglenkung

Country Status (8)

Country Link
US (1) US7257643B2 (de)
EP (1) EP1506646B1 (de)
CN (1) CN1653760A (de)
AT (1) ATE354230T1 (de)
AU (1) AU2003234433A1 (de)
DE (1) DE60311800T2 (de)
TW (1) TWI336443B (de)
WO (1) WO2003098887A1 (de)

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7948916B2 (en) * 2003-01-31 2011-05-24 Hewlett-Packard Development Company, L.P. Method and apparatus for discovering topology information in a network
US7478169B2 (en) * 2003-10-16 2009-01-13 International Business Machines Corporation Accessing data processing systems behind a NAT enabled network
US7961731B2 (en) * 2005-03-31 2011-06-14 Alcatel-Lucent Usa Inc. Method and system for real-time detection of hidden traffic patterns
US8369329B2 (en) * 2005-05-16 2013-02-05 Rockstar Consortium Us Lp Dynamic hierarchical address resource management architecture, method and apparatus
US7978611B2 (en) * 2005-09-06 2011-07-12 At&T Intellectual Property I, L.P. Systems and methods to determine network routes based on transmission medium length
US7689764B1 (en) * 2006-04-13 2010-03-30 Symantec Operating Corporation Network routing of data based on content thereof
US7685459B1 (en) 2006-04-13 2010-03-23 Symantec Operating Corporation Parallel backup
US7904571B1 (en) * 2006-05-31 2011-03-08 At&T Intellectual Property Ii, L.P. Method and apparatus for generating a set of aggregates
JP4834493B2 (ja) * 2006-08-25 2011-12-14 アラクサラネットワークス株式会社 ネットワーク中継装置、および、ネットワーク中継装置の制御方法
US7827146B1 (en) 2007-03-30 2010-11-02 Symantec Operating Corporation Storage system
US8311964B1 (en) 2009-11-12 2012-11-13 Symantec Corporation Progressive sampling for deduplication indexing
US8473463B1 (en) 2010-03-02 2013-06-25 Symantec Corporation Method of avoiding duplicate backups in a computing system
US8370315B1 (en) 2010-05-28 2013-02-05 Symantec Corporation System and method for high performance deduplication indexing
US8983952B1 (en) 2010-07-29 2015-03-17 Symantec Corporation System and method for partitioning backup data streams in a deduplication based storage system
US8756197B1 (en) 2010-08-13 2014-06-17 Symantec Corporation Generating data set views for backup restoration
US8291170B1 (en) 2010-08-19 2012-10-16 Symantec Corporation System and method for event driven backup data storage
US8392376B2 (en) 2010-09-03 2013-03-05 Symantec Corporation System and method for scalable reference management in a deduplication based storage system
US8396841B1 (en) 2010-11-30 2013-03-12 Symantec Corporation Method and system of multi-level and multi-mode cloud-based deduplication
US8392384B1 (en) 2010-12-10 2013-03-05 Symantec Corporation Method and system of deduplication-based fingerprint index caching
US8589640B2 (en) 2011-10-14 2013-11-19 Pure Storage, Inc. Method for maintaining multiple fingerprint tables in a deduplicating storage system
US10275397B2 (en) 2013-02-22 2019-04-30 Veritas Technologies Llc Deduplication storage system with efficient reference updating and space reclamation
US9575680B1 (en) 2014-08-22 2017-02-21 Veritas Technologies Llc Deduplication rehydration
US10423495B1 (en) 2014-09-08 2019-09-24 Veritas Technologies Llc Deduplication grouping
US9819573B2 (en) 2014-09-11 2017-11-14 Microsoft Technology Licensing, Llc Method for scalable computer network partitioning
US9544225B2 (en) * 2014-09-16 2017-01-10 Microsoft Technology Licensing, Llc Method for end point identification in computer networks

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5974453A (en) * 1997-10-08 1999-10-26 Intel Corporation Method and apparatus for translating a static identifier including a telephone number into a dynamically assigned network address
JP3199051B2 (ja) 1999-02-10 2001-08-13 日本電気株式会社 キャッシュを有するルータの方路決定装置及びプログラムを記録した機械読み取り可能な記録媒体
WO2001026303A1 (fr) 1999-09-30 2001-04-12 Fujitsu Limited Procede et dispositif de commande de routes, dans un environnement de reseau hierarchique et de reseau non hierarchique presents de facon melangee
US6845091B2 (en) * 2000-03-16 2005-01-18 Sri International Mobile ad hoc extensions for the internet
US7058730B2 (en) * 2000-05-05 2006-06-06 Fujitsu Limited Unique address space and method for a transport network
US6826561B2 (en) 2000-05-22 2004-11-30 Broadcom Corporation Method and apparatus for performing a binary search on an expanded tree
US7027445B1 (en) 2000-05-26 2006-04-11 Sun Microsystems, Inc. Apparatus and method for finding the longest matching prefix in a router
US7698463B2 (en) * 2000-09-12 2010-04-13 Sri International System and method for disseminating topology and link-state information to routing nodes in a mobile ad hoc network
US7095738B1 (en) * 2002-05-07 2006-08-22 Cisco Technology, Inc. System and method for deriving IPv6 scope identifiers and for mapping the identifiers into IPv6 addresses
US6865184B2 (en) * 2003-03-10 2005-03-08 Cisco Technology, Inc. Arrangement for traversing an IPv4 network by IPv6 mobile nodes

Also Published As

Publication number Publication date
AU2003234433A1 (en) 2003-12-02
DE60311800D1 (de) 2007-03-29
EP1506646B1 (de) 2007-02-14
EP1506646A1 (de) 2005-02-16
US7257643B2 (en) 2007-08-14
ATE354230T1 (de) 2007-03-15
TW200412508A (en) 2004-07-16
US20030217175A1 (en) 2003-11-20
CN1653760A (zh) 2005-08-10
TWI336443B (en) 2011-01-21
WO2003098887A1 (en) 2003-11-27

Similar Documents

Publication Publication Date Title
DE60311800T2 (de) Verfahren und vorrichtung zur verbesserung der netzwerkleitweglenkung
DE60124643T2 (de) Paketenübertragungsmodel mit einem mobilen Knoten und mit einem Router zur Verhinderung von Angriffen basiert auf einer globalen Adresse
DE60202136T2 (de) Cache-eintrag-auswahlverfahren und -vorrichtung
DE10297269B4 (de) Kennzeichnung von Paketen mit einem Nachschlageschlüssel zur leichteren Verwendung eines gemeinsamen Paketweiterleitungs-Cache
DE60225892T2 (de) Firewall zur Filtrierung von getunnelten Datenpaketen
DE60114097T2 (de) Verfahren und System zur Verbesserung der Netzleistungsfähigkeit unter Verwendung eines leistungssteigernden Proxies
DE69836673T2 (de) Verfahren und Vorrichtung zur Konfigurierung eines Netzknotens um sich selbst Netzübergang zu sein
DE69711916T2 (de) Verfahren zur überschreibung von gelernten ip-adressen unter verwendung von dhcp
DE102012220834B4 (de) Verfahren und Vorrichtung zum Umsetzen eines flexiblen virtuellen lokalen Netzwerks
DE10022431B4 (de) Integriertes IP-Netzwerk
DE60116736T2 (de) System und verfahren zur benutzung einer ip-addresse als identifizierung eines drahtlosen endgerätes
DE69825596T2 (de) System und verfahren für ein vielschicht-netzelement
DE69929268T2 (de) Verfahren und System zur Überwachung und Steuerung der Netzzugriffe
DE69434330T2 (de) Übertragungsvorrichtgung und verfahren
DE69727447T2 (de) Übertragungstrennung und Ebene-3-Netzwerk-Vermittlung
DE69533953T2 (de) System für signaturlose Übertragung und Empfang von Datenpaketen zwischen Computernetzwerken
DE60310593T2 (de) Routing in einem datenkommunikationsnetz
DE602005002374T2 (de) System und Verfahren zur unnumerierten Netzwerkverbindung-Erkennung
DE69602753T2 (de) Netzwerkaddressierungsanordnung fur rückwarts kompatible leitweglenkung mit einem erweiterten addressraum
DE602005005536T2 (de) Verfahren und Einrichtung zur Verwaltung von Netzwerkadressen für private Sprachkommunikationen
DE102015102871A1 (de) Technologien für verteilten Leitweglenkungstabellennachschlag
DE112015006397B4 (de) DNS Optimierung für Multi-Source Download bei Hybridzugriff
DE602004004991T2 (de) Automatisierte Installation von Netzgeräten mit Informationen über Regeln, Authentifizierung und gerätespezische Daten
DE10330079B4 (de) Router und Verfahren zur Aktivierung eines deaktivierten Computers
DE60211287T2 (de) Handhabung von Verbindungen, die zwischen Firewalls umziehen

Legal Events

Date Code Title Description
8381 Inventor (new situation)

Inventor name: MATHEW, PHILIP, SANTA CLARA, CALIF., US

Inventor name: SINGH, RANJEESTA, SUNNYVALE, CALIF., US

Inventor name: LEWIN, MICHAEL, SAN FRANCISCO, CALIF., US

Inventor name: VIPAT, HARSHAWARDHAN, SAN JOSSE, CALIF., US

8364 No opposition during term of opposition