DE60029879T2 - System zur mehrschichtigen Bereitstellung in Computernetzwerken - Google Patents

System zur mehrschichtigen Bereitstellung in Computernetzwerken Download PDF

Info

Publication number
DE60029879T2
DE60029879T2 DE60029879T DE60029879T DE60029879T2 DE 60029879 T2 DE60029879 T2 DE 60029879T2 DE 60029879 T DE60029879 T DE 60029879T DE 60029879 T DE60029879 T DE 60029879T DE 60029879 T2 DE60029879 T2 DE 60029879T2
Authority
DE
Germany
Prior art keywords
information
traffic type
data
bandwidth
provisioning
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
DE60029879T
Other languages
English (en)
Other versions
DE60029879D1 (de
Inventor
Tony Pleasanton Stelliga
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
Application granted granted Critical
Publication of DE60029879D1 publication Critical patent/DE60029879D1/de
Publication of DE60029879T2 publication Critical patent/DE60029879T2/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
    • H04L49/00Packet switching elements
    • H04L49/90Buffering arrangements
    • H04L49/9057Arrangements for supporting packet reassembly or resequencing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4604LAN interconnection over a backbone network, e.g. Internet, Frame Relay
    • H04L12/4608LAN interconnection over ATM networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/54Store-and-forward switching systems 
    • H04L12/56Packet switching systems
    • H04L12/5601Transfer mode dependent, e.g. ATM
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/302Route determination based on requested QoS
    • H04L45/306Route determination based on the nature of the carried application
    • 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/7453Address table lookup; Address filtering using hashing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/15Flow control; Congestion control in relation to multipoint traffic
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/24Traffic characterised by specific attributes, e.g. priority or QoS
    • H04L47/2408Traffic characterised by specific attributes, e.g. priority or QoS for supporting different services, e.g. a differentiated services [DiffServ] type of service
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/24Traffic characterised by specific attributes, e.g. priority or QoS
    • H04L47/2416Real-time traffic
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/24Traffic characterised by specific attributes, e.g. priority or QoS
    • H04L47/2425Traffic characterised by specific attributes, e.g. priority or QoS for supporting services specification, e.g. SLA
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/24Traffic characterised by specific attributes, e.g. priority or QoS
    • H04L47/2441Traffic characterised by specific attributes, e.g. priority or QoS relying on flow classification, e.g. using integrated services [IntServ]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/50Queue scheduling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/50Queue scheduling
    • H04L47/52Queue scheduling by attributing bandwidth to queues
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/50Queue scheduling
    • H04L47/52Queue scheduling by attributing bandwidth to queues
    • H04L47/522Dynamic queue service slot or variable bandwidth allocation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/50Queue scheduling
    • H04L47/62Queue scheduling characterised by scheduling criteria
    • H04L47/6215Individual queue per QOS, rate or priority
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/50Queue scheduling
    • H04L47/62Queue scheduling characterised by scheduling criteria
    • H04L47/625Queue scheduling characterised by scheduling criteria for service slots or service orders
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/70Admission control; Resource allocation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/70Admission control; Resource allocation
    • H04L47/80Actions related to the user profile or the type of traffic
    • H04L47/801Real time traffic
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/70Admission control; Resource allocation
    • H04L47/80Actions related to the user profile or the type of traffic
    • H04L47/805QOS or priority aware
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/70Admission control; Resource allocation
    • H04L47/80Actions related to the user profile or the type of traffic
    • H04L47/808User-type aware
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/70Admission control; Resource allocation
    • H04L47/82Miscellaneous aspects
    • H04L47/822Collecting or measuring resource availability data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/70Admission control; Resource allocation
    • H04L47/82Miscellaneous aspects
    • H04L47/825Involving tunnels, e.g. MPLS
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/60Software-defined switches
    • H04L49/602Multilayer or multiprotocol switching, e.g. IP switching
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/90Buffering arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/90Buffering arrangements
    • H04L49/9084Reactions to storage capacity overflow
    • H04L49/9089Reactions to storage capacity overflow replacing packets in a storage arrangement, e.g. pushout
    • H04L49/9094Arrangements for simultaneous transmit and receive, e.g. simultaneous reading/writing from/to the storage element
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/10Mapping addresses of different types
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q11/00Selecting arrangements for multiplex systems
    • H04Q11/04Selecting arrangements for multiplex systems for time-division multiplexing
    • H04Q11/0428Integrated services digital network, i.e. systems for transmission of different types of digitised signals, e.g. speech, data, telecentral, television signals
    • H04Q11/0478Provisions for broadband connections
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/20Support for services
    • H04L49/205Quality of Service based
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/30Peripheral units, e.g. input or output ports
    • H04L49/3009Header conversion, routing tables or routing tags
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/35Switches specially adapted for specific applications
    • H04L49/351Switches specially adapted for specific applications for local area network [LAN], e.g. Ethernet switches
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/08Protocols for interworking; Protocol conversion
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/12Protocol engines
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level

Description

  • BEZUGNAHME AUF VERWANDTE ANMELDUNGEN
  • Diese Anmeldung nimmt die Priorität der vorläufigen US-Patentanmeldung Nr. 60/090,939 mit dem Titel „Network accelerator subsystem based on single-chip network processor and interface protocol", eingereicht am 27. Juni 1998, in Anspruch. Diese Anmeldung nimmt ebenfalls die Priorität der US-Patentanmeldung Nr. 09/271,061 mit dem Titel „Two-dimensional queuing/de-queuing methods and systems for implementing the same", eingereicht am 16. März 1999 (Anwaltsakte Nr. 19148-000200US), in Anspruch.
  • HINTERGRUND DER ERFINDUNG
  • Diese Erfindung betrifft allgemein Kommunikationssysteme und insbesondere ein System zum Bereitstellen von Ressourcen und zum Abrechnen der Verwendung dieser Ressourcen in einem Kommunikationsnetzwerk.
  • Das Internet und neue Breitbandträgernetzwerke entwickeln sich rasch zum Medium für große und unterschiedliche Kommunikationen und für den Handel. Beispielsweise stellen das Internet und verschiedene Breitbandträger bereits eine ungeheuere Anzahl an Datenübermittlungen zur Verfügung, indem sie das World Wide Web (WWW bzw. das „Netz") unterstützen. Unter Verwendung der Netzstandards sind Benutzer in der Lage, diskrete Mengen an Informationen zu erhalten, typischerweise durch ein Zugreifen auf „Webseiten", deren Größe bzgl. der zum Anzeigen einer Webseite benötigten Daten relativ klein ist. Ein menschlicher Benutzer jedoch kann innerhalb einer Minute viele Webseiten auswählen, so dass sogar kleine Wartezeiten auf die Information jeder Webseite nicht tolerierbar sein können. Eine weitere Form des Datenzugriffs über das Internet bezieht sich auf größere Dateien, wie etwa Bilddateien, ausführbare Dateien, etc. Die erhebliche Größe dieser Dateien bedeutet oft, dass nicht erwartet wird, dass die Übertragung einer Datei sehr schnell stattfindet. Demzufolge findet die Übertragung bei einer niedrigen Priorität statt, oft im „Hintergrund", während der Benutzer andere Aufgaben verrichtet. Andere Arten von Datenübermittlungen werden ohne menschliches Eingreifen durch einen Prozessor initiiert.
  • Andere Arten der Übermittlung bedingen sehr große Mengen an Streaming-Daten über einen ausgedehnten Zeitraum. Beispiele für diese Art von Daten sind Sprach- und Videoübertragungen. Es sei bemerkt, dass in diesen Fällen das Internet für das Handhaben von Datenverkehr in Anspruch genommen wird, der vorher durch separate, dafür bestimmte Infrastruktursysteme unterstützt worden ist, wie etwa das Telefonnetz, das Funknetz oder Rundsendungs- oder Kabelfernsehnetze. Es existieren noch weitere Arten von Daten-„Verkehr" in dem heutigen Internet. Ein Bereich mit hohem Wachstum ist der elektronische Handel bzw. „e-commerce". Dieser benötigt letztendlich Finanzinformationsübermittelungen mit hoher Sicherheit und hoher Priorität. Firmen verwenden das Internet, um Informationen zwischen Zweigbüros oder voneinander entfernt befindlichen Angestellten, Datenbanken oder den getrennten internen Netzwerken der Firmen zu übermitteln. Zusätzlich zu dem am Menschen ausgerichteten Verkehr gibt es Kopfverkehr beim Handhaben der Benachrichtigungsprotokolle, automatisierte bzw. Maschine-zu-Maschine-Kommunikationen, etc.
  • Einige der oben dargelegten Verkehrsarten benötigen eine niedrige Priorität. Beispielsweise erwarten die meisten Menschen, dass die Übertragungszeit einer großen Datei in Abhängigkeit von dem gesamten Internetverkehr stark variieren kann. Andererseits würde ein Kunde, der das Internet für Echtzeittelefonkommunikationen nutzt, sehr wütend werden, wenn der Dienst keine hohe Qualität aufweisen würde oder ungleichmäßig wäre. Demnach ist es wünschenswert, einem Benutzer der Internettelefonie einen bestimmten Dienstgrad oder eine Bandbreite zu garantieren. Ein weiteres Problem ist die Datensicherheit. Einige Informationen, wie etwa Finanzübermittlungen, sensible oder geschützte Daten, müssen unter Umständen unterschiedlich behandelt werden, um Authentizität und Sicherheit sicherzustellen. Die Kunden, seien es Unternehmen, Bildungseinrichtungen oder Einzelpersonen, wissen am besten um ihre Bedürfnisse hinsichtlich der Informationsbandbreite und der Sicherheit.
  • Angesichts der wachsenden Bedeutung des Internets als Kommunikations- und Handelssystem ist es erstaunlich, festzustellen, dass das Internet sehr dürftige Mechanismen zum Sicherstellen von Informationslieferraten bzw. „Bandbreite" für unterschiedliche Verkehrsarten oder für unterschiedliche Nachrichtenkommunikationen zur Verfügung stellt. Geräte wie etwa Switches (Weichen), Router (Vermittlungsknoten), Hubs (Netzknoten), Backbones (Basisnetze), Gateways (Netzübergänge) und andere Geräte, die Informationen über das Internet leiten oder übermitteln, können die Information, die sie senden, kaum zu etwas mehr als einen rudimentären Grad differenzieren. Zusätzlich stellt das heutige Internet keinen effizienten Mechanismus zum Überwachen des Informationsflusses durch Übermittlungsgeräte wie etwa Router, Switches, Server oder der physischen Verbindungen selbst zur Verfügung. Dies bedeutet kurz gesagt, dass das Internet nicht nur keine flexible oder präzise Zuweisung von Bandbreiten zur Verfügung stellt, sondern dass es sogar, auch wenn eine solche Zuweisung erreicht werden könnte, keinen Weg gibt, auf dem ein Internetdienstanbieter („ISP = Internet Service Provider") oder „Träger" bestellte und maßgeschneiderte Dienste für Kunden berücksichtigen und dadurch berechnen könnte.
  • Während das Internet und seine zugehörigen Protokolle allgemein erfolgreich in der Lage waren, mit der gewaltigen Anzahl von Benutzern, zu deren Handhabung es in Anspruch genommen wird, und der Menge an Informationen, zu deren Übermittelung es verwendet wird, zu skalieren, stellt das Internet in verschiedenen Bereichen keine effizienten und effektiven Handels- und Unternehmensinfrastrukturen für viele herkömmliche Handels- und Kommunikationsansätze zur Verfügung, die es ersetzen soll.
  • Internetdienstanbieter (ISPs) versuchen den Benutzern transparente Dienste zu liefern. Benutzer möchten beispielsweise Sprachinformationen übermitteln, im Internet surfen, Produkte erwerben und andere Informationsbeeinflussungen über eine einzige physische Verbindung mit einem Hauptinternet-„Backbone" durchführen, die für den Benutzer transparent ist. Andere Benutzer können mit anderen Informationsformen wie etwa Video, großen Datenbankendownloads, etc. befasst sein. Alle diese Benutzer (es kann tausende über eine einzelne Verbindung geben) können zeitweise Übermittlungen von Informationen mit hoher und mit niedriger Bandbreite erzeugen und benötigen. Ferner machen die Unterschiede in den Datenübermittlungen für jeden der unterschiedlichen Informationstypen multipliziert mit der großen Anzahl an Benutzern den Verkehrsfluss durch die physische Verbindung höchst ungleichmäßig und unvorhersagbar.
  • Angesichts dieses zerstückelten Verkehrs ist es für Diensteanbieter wünschenswert, in der Lage zu sein, den Verkehr so zu regulieren, dass die Verbindungsbenutzung maximiert wird und der Verkehr überwacht wird, so dass er hinsichtlich seines Wertes in Rechnung gestellt werden kann. Mit anderen Worten möchte ein Diensteanbieter die maximale Datenrate bzw. Bandbreite, die über die Verbindung fließen kann, aufrechterhalten und für so viele unterschiedliche Dienste wie möglich Rechnung stellen. Versuche, dies zu bewerkstelligen, waren jedoch weitgehend nicht erfolgreich, da jedes Überwachen und Steuern des Netzwerkverkehrs Verzögerungen bei der Übermittlung der Informationen verursacht. Derartige Verzögerungen können harmlos bis verhängnisvoll in Abhängigkeit von der Art der übermittelten Informationen reichen. Aus diesem Grunde war eine Unterauslastung von Verbindungen für Internetverkehr die Regel.
  • Zusätzlich zum Maximieren des Durchsatzes einer Verbindung sind Diensteanbieter auch daran interessiert, unterschiedliche Dienstgrade für unterschiedliche Kunden zur Verfügung zu stellen. Dieser Wunsch stammt von den herkömmlichen unternehmerischen Ansätzen.
  • Beispielsweise ist bei einem herkömmlichen Telefonsystem eine Telefongesellschaft in der Lage, einem Benutzer auf Telefonleitungsbasis, auf Anrufbasis, auf Merkmalsbasis (z.B. Anklopfen), etc. Rechnung zu stellen. Ferner werden Telefonleitungen mit unterschiedlicher Kapazität und unterschiedlichen Fähigkeiten zum Handhaben von Sprach- oder digitalen Datenübermittlungen angeboten. Beispiele sind POTS-Leitungen („POTS = Plain Old Telephone System"/herkömmliches (analoges) Telefonsystem), ISDN („ISDN = Integrated Services Digital Network"/integrierendes digitales Fernmeldenetz), T1-, T3- und andere Arten von Leitungen. Dies stellt eine sehr genaue Weise für eine Telefongesellschaft dar, einem Kunden einen Dienstgrad zur Verfügung zu stellen und entsprechend für den zur Verfügung gestellten Dienstgrad Rechnung zu stellen. Dies steht im Gegensatz zum Internet, in dem jeglicher Kommunikationsverkehr von vielen Quellen und viele Kommunikationsarten an einem Punkt durch eine einzelne gemeinsame Verbindung oder wenige Verbindungen passen müssen.
  • Als Beispiel kann ein großer Netzwerkbetreiber ein OC-48-SONET-Backbone besitzen. Dieses Backbone kann Zweiweg-Kommunikationen bei 2,4 Gigabit pro Sekunde in jede Richtung unterstützen. Kein einzelner Dienst bzw. keine einzelne Anwendung könnte diese riesige Bandbreitenleitung ausfüllen. Der Diensteanbieter jedoch kann Dienste „anhäufen", in dem er die Leitung für mehrere Dienste zu verschiedenen Preisen zur Verfügung stellt, wie unten in Tabelle 1 gezeigt:
  • Figure 00040001
  • Figure 00050001
  • Um alle Dienste der Tabelle 1 bei den gezeigten variablen Bitraten zur Verfügung zu stellen, müssen die Sitzungen und Benutzer innerhalb des faseroptischen Strangs „versorgt" werden. Vorzugsweise werden die Benutzer mit unterschiedlichen Dienstqualitäten auf der Basis von Parametern versorgt, die in Echtzeit variieren. Diese Parameter sind nur bekannt, wenn der Verkehr streng überwacht und die Überwachungsergebnisse an eine Art Rechnungsstellungssystem kommuniziert werden. Wie oben erläutert, ist jegliche Überwachung und/oder Steuerung des Netzwerksverkehrs unerwünscht, insbesondere bei den Arten von Datenübertragungen, bei denen Verzögerungen nicht akzeptierbar sind. Beispielsweise benötigt eine Sprach- und Videodatenübertragung im Streamingverfahren hochkonstante Datenströme.
  • Idealerweise sollte das Versorgen bzw. Bereitstellen in mehreren Schichten stattfinden, die parallel zu der Architektur der heutigen Internets sind. Die bestehende Architektur des Internets ist diejenige, die von der ISO („ISO = International Standards Organisation"/Internationale Organisation für Standards) vorgeschlagen wurde, welche die OSI-Netzwerkfolge („OSI = Open Systems Interconnection"/Verbindung für offene Systeme) um 1980 entwickelt hat.
  • OSI-Siebenschichten-Modell
  • Die ISO entwickelte OSI in den 80er Jahren des vergangenen Jahrhunderts. Das Netzwerksystem nach dem OSI-Modell ist in Schichten unterteilt. Innerhalb jeder Schicht implementieren eine oder mehrere Einheiten deren Funktionalität. Jede Einheit interagiert auf direkte Weise nur mit der unmittelbar unter ihr liegenden Schicht und stellt Funktionalitäten zur Verwendung durch die über ihr liegende Schicht zur Verfügung. Protokolle ermöglichen, dass eine Einheit in einem Host mit einer entsprechenden Einheit in der gleichen Schicht in einem entfernten Host interagiert. Die sieben Schichten der OSI-Basisreferenzmodells sind in Tabelle II gezeigt. Diese sind:
    Physische Schicht: Diese Schicht beschreibt die physikalischen Eigenschaften der verschiedenen Kommunikationsmedien sowie die elektrischen Eigenschaften und die Interpretation der ausgetauschten Signale, das heißt, die Art des Kabels, des Verbinders und/oder des Abschlussverfahrens.
    Datenverbindungsschicht: Diese Schicht beschreibt die logische Organisation von Datenbits, die auf einem bestimmten Medium übertragen werden, wie etwa die Rahmen-, Adressierungs- und Prüfpakete.
    Netzwerkschicht: Diese Schicht beschreibt, wie eine Reihe von Austauschoperationen über verschiedene Datenverbindungen Daten zwischen zwei beliebigen Knoten in einem Netzwerk befördern kann, wie etwa die Adressierungs- und Routingstruktur des Internets.
    Transportschicht: Diese Schicht beschreibt die Qualität und die Eigenart der Datenlieferung. Beispielsweise definiert diese Schicht, ob und wie wiederholte Übertragungen verwendet werden, um eine Datenlieferung sicherzustellen.
    Sitzungsschicht: Diese Schicht beschreibt die Organisation von Datensequenzen, die größer als die von niedrigeren Schichten behandelten Pakete sind. Beispielsweise beschreibt diese Schicht, wie Anfrage- und Antwortpakete bei einem entfernten Funktionsaufruf paarweise angeordnet werden.
    Präsentationsschicht: Diese Schicht beschreibt die Syntax der Daten, die übermittelt werden. Beispielsweise beschreibt diese Schicht, wie Fließkommazahlen zwischen Hosts mit unterschiedlichen mathematischen Formaten ausgetauscht werden können.
    Anwendungsschicht: Diese Schicht beschreibt, wie die reale Arbeit tatsächlich gemacht wird, etwa Dateisystemoperationen.
  • Verkehr, der diese Backbones durchquert, muss am Rand bzw. Abschluss durch dieses Modell von Schicht 1 zu Schicht 7 verarbeitet werden. Die Informationen in diesen Schichten sind extrem detailliert und jeder Paketkopf enthält zahlreiche Felder, die die Werte der mit jeder Schicht assoziierten Information abbilden. Der Großteil der Vielschichtverarbeitung wird üblicherweise in Software implementiert, wie in Tabelle II gezeigt.
  • Figure 00060001
  • Figure 00070001
  • Es existieren jedoch Probleme bei den heutigen Versuchen, eine Breitbandvielschichtverarbeitung durchzuführen. Ein erstes Problem besteht darin, dass die heutigen Systeme keinen Bereitstellungsgrad zur Verfügung stellen, der es ausreichend ermöglicht, dass man sich auf das Internet hinsichtlich vieler Geschäftserfordernisse oder Arten von Kommunikationsdiensten verlassen könnte. Eine detaillierte Überwachung der Verkehrsflusses, einem bestimmten Kunden zuordenbar, sollte einem Diensteanbieter zur Verfügung gestellt werden, so dass Paradigmen ähnlich der herkömmlichen geschäftlichen Verwertung von Kommunikationsressourcen (z.B. Telefon, Kabelfernsehen, etc.) aufrecht erhalten werden können. Ein Bereitstellungssystem sollte neu konfigurierbar sein, um den veränderlichen Bedürfnissen der Kunden und der veränderlichen Verfügbarkeit der Ressource Rechnung zu tragen. Versuche im Stand der Technik, insbesondere softwarebasierte Herangehensweisen, waren weder effizient, detailliert, zur Rechnungsstellung geeignet noch schnell genug und verhindern demnach das Maximieren des Internetverkehrs. Ein Bereitstellungssystem, oder eine Bereitstellungsmaschine, sollte eine „Drahtgeschwindigkeit" und transparente Bereitstellungs-, Sicherheits-, Überwachungs- und Steuerfunktionen für Hunderttausende von gleichzeitigen Benutzerdienstegraden ohne eine Güteverschlechterung zur Verfügung stellen.
  • Die WO 98/28939 offenbart ein Verfahren zum Einreihen von Verkehr in eine Warteschlange für eine Übertragung, wobei Pakete auf der Basis von QOS-Anforderungen („QOS = Quality of Service"/Dienstequalität) verteilt werden, die durch die dem Verkehr zugewiesene Klasse spezifiziert sind.
  • ABRISS DER ERFINDUNG
  • Gemäss der vorliegenden Erfindung gibt es ein Verfahren zum Bereitstellen von Ressourcen in einem Kommunikationsnetz, wie es in dem zugehörigen unabhängigen Anspruch definiert ist, auf den nun ebenfalls Bezug genommen werden soll. Ausführungsformen der vorliegenden Erfindung sind in den zugehörigen abhängigen Ansprüchen definiert, auf die nun ebenfalls Bezug genommen werden soll.
  • Die Erfindung beinhaltet die Verwendung einer „Bereitstellungsmaschine", die eine Hochgeschwindigkeitsidentifikation, -analyse und -verarbeitung von Informationen in einem Netzwerk durchführt. Die Bereitstellungsmaschine ermöglicht es, dass Regeln angewendet werden, um Netzwerkressourcen zuzuweisen, wie etwa Bandbreite, um eine bestimmte Güte zu erreichen. Dies ermöglicht es, dass die Bereitstellungsmaschine dazu verwendet werden kann, um Information zu übermitteln, zu überwachen und zu steuern, die durch sie fließen, wie etwa Datenpakete. Bei einer Ausführungsform ist die Bereitstellungsmaschine mit einem extrem schnellen Mechanismus zum Handhaben einer Routing- und Datenflussbeeinflussung der Pakete versehen. Dies ermöglicht eine schnelle Verarbeitung der Informationseinheiten, wie etwa Pakete, mit „Drahtgeschwindigkeit" zu bestimmten, garantierten Flüssen und virtuellen Schaltkreisen in Echtzeit. Eine bevorzugte Ausführungsform offenbart eine dedizierte Architektur zum Verarbeiten des Datenverkehrs. Die dedizierte Architektur verwendet variable Abschnitte von Paketkopfinformationen, um Verkehrstypen zu identifizieren. Die Typen werden auf eine Dienstklasse abgebildet, die bereits existiert oder die erzeugt werden kann, um eine Bandbreitenanforderung eines Verkehrstyps einzuhalten. Dann werden vordefinierte Regeln basierend auf Kundenbedürfnissen, Diensteanbieterrichtlinien, Dienstgradübereinkünften („SLA = Service Level Agreement"), Bandbreitenverfügbarkeit, etc. angewendet. Dies ermöglicht es, dass die Verwendung von Datenfeldern von Schicht 1 bis Schicht 7 die Basis zum Bereitstellen, zur Sicherheit, zum Überwachen und zur Steuerung eines Paketflusses bei voller Leitungsgeschwindigkeit bildet.
  • KURZBESCHREIBUNG DER ZEICHNUNGEN
  • 1 zeigt ein Beispiel eines Computersystems, das zur Verwendung mit der vorliegenden Erfindung geeignet ist;
  • 2 zeigt Untersysteme eines Computersystems;
  • 3 zeigt ein verallgemeinertes Diagramm des Internets;
  • 4 veranschaulicht den Prozess des vorbereitenden Zusammensetzens eines Pakets vor dem Übermitteln des Pakets von einer Quelle zu einem Ziel;
  • 5 veranschaulicht den Prozess des Extrahierens von Informationen aus einem Paket;
  • 6 veranschaulicht detaillierter einen Paketkopf und Nutzlast;
  • 7 veranschaulicht das Kopfformat für Schicht 4;
  • 8 veranschaulicht das Kopfformat für die Schichten 2 und 3;
  • 9 stellt eine konzeptionelle Veranschaulichung des Bereitstellens eines Breitbandstromes gemäß der vorliegenden Erfindung dar;
  • 10 zeigt die Bereitstellungsmaschinenarchitektur; und
  • 11 veranschaulicht weitere Details der Verarbeitung der Bereitstellungsmaschine.
  • BESCHREIBUNG BESTIMMTER AUSFÜHRUNGSFORMEN
  • Als erstes wird Hardware beschrieben, die zur Verwendung mit der vorliegenden Erfindung geeignet ist. Als nächstes werden einige unternehmerische Vorteile der detaillierten Bereitstellung, der Überwachung und der Steuerung erläutert, wie sie von der vorliegenden Erfindung zur Verfügung gestellt werden. Schließlich werden Details der Architektur einer bevorzugten Ausführungsform der Bereitstellungsmaschine offenbart.
  • Hardware- und Netzwerkbeschreibung
  • 1 zeigt ein Beispiel eines Computersystems, das zur Verwendung mit der vorliegenden Erfindung geeignet ist. In 1 beinhaltet ein Computersystem 1 eine Anzeige 3, einen Anzeigeschirm 5, ein Gehäuse 7, eine Tastatur 9 und eine Maus 11. Die Maus 11 umfasst Maustasten 13. Das Gehäuse 7 nimmt zusätzliche Komponenten (nicht abgebildet) auf, wie etwa eine CD-ROM (CD-ROM = Compact Disk-Read-Only-Memory/Kompaktdisk-Nurlesespeicher), eine Festplatte, etc. 1 ist nur ein Beispiel eines Computers, namentlich eines Personalcomputers, der zur Verwendung mit der Erfindung geeignet ist.
  • 2 zeigt Untersysteme des Computersystems 1 der 1.
  • In 2 sind in Block 100 Untersysteme gezeigt, die sich innerhalb des Gehäuses 7 des Computersystems der 1 befinden. Die internen Untersysteme umfassen einen seriellen Anschluss 102, eine Netzwerkschnittstelle 105, einen I/O-Controller 106, einen Systemspeicher 107, einen Zentralprozessor 108 und einen Anzeigeadapter 111.
  • Diese Untersysteme können miteinander kommunizieren und, am wichtigsten, mit dem Zentralprozessor 108 über den Bus 115. Demnach kann der Zentralprozessor 108 Informationen zu und von beispielsweise einer Festplatte 104 übermitteln. Weitere Geräte wie etwa ein Anzeigemonitor koppeln schnittstellenmäßig an den Bus 115 über den Anzeigeadapter 111. Ein relatives Zeigegerät wie etwa eine Maus, ein Trackball, etc. können mit dem Bus 115 über eine serielle Schnittstelle 102 koppeln. Manche Geräte, wie etwa eine Tastatur, koppeln schnittstellenmäßig direkt mit dem Bus 115.
  • Es sei bemerkt, dass, obwohl in den 1 und 2 eine bestimmte Hardware beschrieben wurde, viele Arten von Hardwarekomponenten für ein typisches Computersystem verwendet werden können. Beispielsweise muss ein Benutzereingabegerät nicht auf eine Tastatur und eine Maus beschränkt sein, sondern kann einen Trackball, ein Digitalisiertablett, einen berührungsempfindlichen Bildschirm, ein Mikrophon, etc. umfassen. Ferner muss ein Computersystem nicht alle der in den 1 und 2 dargestellten Komponenten und Subsysteme umfassen. Beispielsweise haben einige Computer, die keine Benutzereingaben erhalten müssen, keine Benutzereingabegeräte. Oft ist ein Anzeigegerät für solche Computer nicht notwendig, die reine Datenverarbeitungsfunktionen oder Kommunikationsfunktionen durchführen. Untersysteme wie etwa ein Graphikbeschleuniger, eine Soundkarte, etc. können enthalten sein, während einige der in 2 gezeigten Untersysteme weggelassen werden können. Im Allgemeinen kann ein beliebiger Typ eines Verarbeitungssystems oder Prozessors zur Verwendung mit der vorliegenden Erfindung geeignet sein.
  • 3 zeigt ein verallgemeinertes Diagramm des Internets.
  • In 3 sind verschiedene Benutzer mit dem Internet über lokale Server verbunden. Diese Server können eine Software ausführen, eine Routingfunktion zur Verfügung stellen, die bestimmt, wohin Information gesendet werden sollte, die an dem Server empfangen wird. Alternativ hierzu können Geräte wie etwa Router verwendet werden, um diese Funktionen durchzuführen. Demnach stellen, obwohl die Geräte der
  • 3 als „Server" gekennzeichnet sind, sie tatsächlich eine beliebige Art der Verarbeitung und Verbindung, die zur Verwendung in einem Netzwerk geeignet ist, dar.
  • In 3 sind verschiedene Benutzer-Computersysteme gezeigt. Diese sind üblicherweise mit einem lokalen Server oder mit einem anderem Gerät verbunden, um Informationen zur Verfügung zu stellen und zum Verwalten der Übermittlung von Informationen über ein lokales Netzwerk. Der lokale Server oder das lokale Netzwerk sind an das Internet gekoppelt, das viele andere Server, Router, Netzwerkprozessoren, Hubs, Switches, etc. umfasst. Die Verbindung von Servern und Benutzercomputern untereinander, die das Internet umfasst, kann eine beliebige Form annehmen. Die physischen Verbindungen, die dazu verwendet werden, derartige Benutzerverbindungen zu implementieren, können beispielsweise Übertragungen über eine feste Verdrahtung, eine faseroptische Übertragung, eine elektromagnetische Übertragung, etc. sein. Im Allgemeinen kann eine beliebige Art von Kommunikationstechnologie verwendet werden, um das Netzwerk zu implementieren, innerhalb dessen die Verarbeitung der vorliegenden Erfindung abläuft. Das Verarbeiten der vorliegenden Erfindung – das unten beschrieben wird – kann auch an beinahe jedem beliebigen Punkt in dem Netzwerk durchgeführt werden. Obwohl speziell Bezug genommen wird auf eine Ausführungsform der Erfindung, die zur Verwendung im Internet geeignet ist, ist es unmittelbar ersichtlich, dass die Erfindung zur Verwendung mit einem beliebigen System angepasst werden kann, bei dem es eine Übermittlung von Informationen gibt. Beispielsweise können ein lokales Netzwerk („LAN = Local Area Network"), Speichersysteme wie etwa eine redundante Anordnung preisgünstiger Platten (RAID), Voice Gateway Residential Access (Sprachschnittstellenzugang für Zuhause) oder andere Kommunikationssysteme durch Verwendung der vorliegenden Erfindung verbessert werden.
  • Im Allgemeinen kann eine Breitbandkommunikation im Internet von einem beliebigen Punkt innerhalb des Internets zu einem anderen Punkt stattfinden, solange die Punkte über das Internet oder das Trägernetzwerk kommunizieren. Beispielsweise kann ein Prozessor Informationen zu einem anderen Prozessor senden. Diese Prozessoren können sich in einem Computersystem eines Endbenutzers befinden, sie können sich in einem Servercomputersystem, in einem Speichersystem, einem Gerät der Unterhaltungselektronik oder einem anderen Gerät befinden. Der Begriff „Prozessor", wie in dieser Beschreibung verwendet, umfasst eine beliebige Stelle, an der eine Funktion oder ein Verarbeiten von oder mit Informationen durchgeführt wird. Eine derartige Funktion kann eine Datenbankoperation, eine mathematische Operation, eine Übermittlung, ein Speichern oder ein Zwischenspeichern in einer Warteschlange von Informationen, etc. sein. Üblicherweise benötigt das Verarbeiten einen Prozessor in der Form eines Computers, eines Mikrocomputers oder einer andere Schaltung, die arithmetische und/oder logische Funktionen mit den Daten ausführt. Es kann jedoch eine beliebige Art von Gerät oder Schaltung, das/die eine beliebige Funktion oder einen beliebigen Prozess mit Daten durchführt, als Prozessor betrachtet werden.
  • Das Internet übermittelt üblicherweise Informationen in der Form von „Paketen". Die Protokolle, die zum Übermitteln von Paketen verwendet werden, beinhalten das Übertragungssteuerungsprotokoll/Internetprotokoll („TCP/IP = Transmission Control Protocol/Internet Protocol"). Ein Paket ist lediglich eine vordefinierte Größe oder Menge an Informationen, die übermittelt und als eine Einheit in dem Übermittlungsprozess behandelt wird, der von den Protokollen bestimmt wird. Beispielsweise kann das Paket 512 Bytes lang sein. Gewöhnlich benötigt ein Objekt, wie etwa ein Dokument, eine Datei oder eine andere Informationseinheit, mehrere oder viele Pakete, um die gesamten Informationen zu übermitteln. Ein Teil der Informationen wird mit jedem Paket über das Internet gesendet. Es muss nicht jedes Paket bei der Übermittlung dem gleichen Pfad folgen. Pakete werden während mehrerer Übermittlungen unabhängig behandelt, so dass ein Paket, das vor einem anderen Paket gesendet wurde, nicht notwendigerweise vor dem später gesendeten Paket empfangen werden muss. Das Paketübermittlungsprotokoll behandelt Aspekte der Übermittlung, wie etwa das Sicherstellen, dass Pakete auf richtige Weise zu den ursprünglichen Informationen zusammengesetzt werden, der Fehlererfassung und Wiederherstellung, etc.
  • Jedes Paket enthält im Wesentlichen zwei Datenkomponenten. Die erste Komponente ist der Paketkopf. Dieser umfasst Informationen zur Routenplanung („Routing") des Pakets an andere Stellen im Netzwerk, wie etwa zu einem Prozessor. Die zweite Komponente eines Pakets ist die Paketnutzlast, auch als Dienstdateneinheit („SDU = Service Data Unit") bezeichnet. Die Nutzlast ist ein Teil der Informationen, die übertragen werden.
  • Eine Datenquelle ist ein beliebiger Punkt im Netzwerk, der eine Datenübermittlung an ein Ziel oder einen Endpunkt initiiert. Um von der Datenquelle zu dem Endpunkt zu kommen, durchlaufen die Informationen in der Form von Paketen gewöhnlicherweise Zwischenpunkte, die eine Verarbeitung an den Paketen durchführen. Diese Systeme umfassen oder sind Prozessoren. Um die Informationen über die Zwischensysteme hinweg weiterzuleiten, wird der Paketkopf verwendet, um jedem Prozessor in den Zwischensystemen, die Routen- oder Übermittlungsfunktionen durchführen, mitzuteilen, wohin das nächste Paket zu senden ist. Das ISO-Modell erlaubt es, dass Ent scheidungen durch den Prozessor basierend auf Schicht-2-Informationen („datalink"-/Datenverbindung) in Unternehmensswitches oder in einer Schicht-3-(Netzwerk-)-Schicht in WAN-Router-Systemen („WAN = wide-area network"/Weitverkehrsnetz) getroffen werden. Das ISO-Modell erlaubt es, dass Zwischenprozessoren die Paketübermittlung zu einem gewissen Grad bzgl. eines Paketziels, einer durchlaufenen Route, einer Priorität, einer Quelle, etc. kennzeichnen oder steuern.
  • 4 veranschaulicht den Prozess der Zusammensetzung eines Pakets in Vorbereitung einer Übermittlung des Pakets von einer Quelle zu einem Ziel. In jeder der N-Schichten können Protokollsteuerinformationen den von der höheren Schicht empfangenen Informationen angehängt werden. Diese Kombination aus Kopf und Nutzlast wird als Nutzlastabschnitt in der nächsten Schicht verwendet, die zusätzlich Protokollsteuerinformationen anhängen kann, usw.
  • 5 veranschaulicht den Prozess, der an dem Ziel durchgeführt wird, an dem die ursprünglichen Informationen (oder PDU) von den verschiedenen PCI-Anhängen abgelöst werden. Demnach enthält in den Zwischensystemen, die das Paket von der Quelle zum Ziel übermitteln, jedes Paket tatsächlich Protokollsteuerinformationsköpfe, die den Paketkopf umfassen. Der Rest des Paketes ist die Paketnutzlast.
  • 6 veranschaulicht detaillierter den Kopf und die Nutzlast eines Pakets.
  • In 6 umfasst der Paketkopf 140 Informationen, die von unterschiedlichen Schichten angehängt worden sind. Die Nutzlast 142 ist der Rest des Pakets. Jede Schicht addiert einige Bytes zu dem Paketkopf, um spezifische Schichtinformationen zur Verfügung zu stellen. Dieser Verkettungs- oder Kopffeld-„Verflachungs"-Prozess ergibt einen 64 Byte großen Kopf, der dazu verwendet wird, das Paket durch ein Netzwerk zu seinem Ziel zu befördern. Der Paketkopf kann Informationen von einer beliebigen der Schichten 1–7 bzgl. des Routings und der Steuerung des Pakets oder andere Informationen enthalten.
  • 7 veranschaulicht das Kopfformat für Schicht 4.
  • 8 veranschaulicht das Kopfformat für die Schichten 2 und 3.
  • Wie in den 7 und 8 gezeigt, sind in dem Schicht-4-Feld Informationen betreffend die Quelle/das Ziel, die Portadresse, die Sequenznummer, die Paketlänge und den Protokolltyp verfügbar. Diese Felder sind beim Zuweisen von Portnummern (d.h. Servern) an spezifische virtuelle Pipes der Benutzerdienstklassen in dem Netzwerk nützlich, so dass bestimmte Server eine höhere Priorität oder einen Lastausgleich besitzen können. Schicht-3-Daten stellen Informationen zur Verfügung, die zur Vorbereitung des Netzwerks für das Routing gehören. Schicht-2-Daten stellen Informationen zur Verfügung, die zu der Geräteadresse und Portnummer in einem Switch gehören. Dies ist bei einer Arbeitsgruppenpriorisierung und bei der Zuweisung von Bandbreiten nützlich. Die Schicht 5 (nicht abgebildet) enthält die HTTP-Netzadresse und -sitzung zu Bereitstellungszwecken. Es sei bemerkt, dass, obwohl die Erfindung im Hinblick auf ein spezifisches OSI-7-Schichtenmodell und im Hinblick auf Felder in den Köpfen dieses Modells erläutert wird, die Erfindung zur Verwendung in einer beliebigen Netzwerkarchitektur angepasst werden kann. Die vorliegende Erfindung kann zur Verwendung mit einer beliebigen Anordnung von Feldern, Werten und anderen Informationen in einem Kopf, einer Nutzlast, einem Paket oder anderen „Informationseinheiten" in dem Netzwerk angepasst werden.
  • Unternehmensmodell für die Bereitstellungsmaschine
  • Dieser Abschnitt präsentiert ein Beispiel, um die Vorteile der Erfindung im Hinblick auf das Bereitstellen eines Geschäftsmodells zum Unterstützen von Netzwerkressourcen zu veranschaulichen. Netzwerkressourcen umfassen die Bandbreite, die Latenz (d.h. die Zeit, die eine Informationseinheit wartend bzw. in der Warteschlange gehalten wird, bevor sie übermittelt wird), den Speicher, Prozessorzyklen, etc. Auch können „Qualitätsparameter", die eine Priorität, einen Sicherheitsgrad oder andere Aspekte des Behandelns der Informationen einführen, als Ressourcen angesehen werden. Im Allgemeinen kann ein beliebiger Aspekt der Netzwerkübermittlung, der die Flussgeschwindigkeit von Informationen von einer Quelle zu einem Ziel in dem Netzwerk beeinflusst, als eine Ressource im Hinblick auf die vorliegende Erfindung betrachtet werden. Dies beinhaltet Ressourcen wie etwa die Bandbreitenfähigkeiten von Verbindungen, Unterverbindungen, virtuellen Verbindungen, Prozessoren, Bussen oder anderen Geräten, virtuelle Ressourcen wie etwa virtuelle Kanäle, Speicher, etc. und Kennzeichnungen wie etwa Prioritäten, Sicherheitsgerade oder andere Identifikatoren.
  • Die Einheiten, die solche Ressourcen erzeugen, betreiben, steuern oder „besitzen", werden als Träger („Carriers") bezeichnet. Das Unternehmensmodell, das durch die vorliegende Erfindung zur Verfügung stellt wird, bietet den Trägern eine große Flexibilität und Genauigkeit beim Zuweisen ihrer Ressourcen auf eine Weise, die es ihnen erlaubt, die Ressourcenverwendung zu maximieren und für die Verwendung der Ressourcen Rechnung zu stellen. In dem Beispiel und während dieser ganzen Beschreibung wird üblicherweise auf „Bandbreite" als die zugewiesene Ressource Bezug genommen. Dies ist jedoch nur eine der vielen Ressourcen unter der Steuerung eines Trägers, die gemäß der vorliegenden Erfindung zugewiesen werden können.
  • In diesem Beispiel wird angenommen, dass ein Diensteanbieter eine Netzwerkbandbreite in der Form einer Hochgeschwindigkeitsverbindung zum Internet besitzt. Eine derartige Verbindung kann beispielsweise ein Internet-Backbone, Hub, Router, Switch, Server oder ein anderer Mechanismus sein, der an eine physische Verbindung wie etwa ein faseroptisches Kabel, einen Funksender, ein fest verdrahtetes Kabel, ein Telefon- oder Kabelfernsehennetzwerk, etc. gekoppelt ist. Das Ziel des Diensteanbieters ist es, Kunden die Erlaubnis, die Bandbreitenressource des Diensteanbieters zum Internet zu verwenden, zu verkaufen, zu verleihen („Leasing") oder auf andere Weise davon zu profitieren.
  • Zu diesem Zweck erlaubt es der Diensteanbieter bzw. Träger einem Kunden, ein Dienstgüteübereinkommen („SLA = Service Level Agreement") zu spezifizieren. Der untenstehende beispielhafte SLA-Abschnitt spezifiziert die folgenden Kundenwünsche:
    • (1) Der Träger muss Ethernet-LAN-Verkehr von LA nach NY unterstützen;
    • (2) dem Nachrichtenverkehr von Geschäftsverantwortlichen muss Priorität eingeräumt werden;
    • (3) einem Sitzungsverkehr zu der Intranet-Webseite des Kunden und den zugehörigen Webseiten und Intranets des Kunden muss Priorität eingeräumt werden;
    • (4) Übertragung von Sprachdaten in der Form von „Voice over IP"-Verkehr (Sprache-über-IP-Verkehr) muss für bis zu 100 Benutzer unterstützt werden; und
    • (5) erweiterter Speicherbereichsverkehr sollte mit niedrigerer Priorität behandelt werden.
  • Unter Verwendung der Kundenerfordernisse in dem SLA kann der Träger USCs („USCs = User Services Classes"/Benutzerdienstklassen) auf eine Reihe von Wegen zuweisen. Ein derartiger Weg ist unten in Tabelle III gezeigt:
  • Figure 00160001
  • Wie in Tabelle III gezeigt, werden vier USCs erzeugt und mit 1 bis 4 durchnummeriert. Die USCs 1 bis 3 werden dazu verwendet, die von dem Kunden bezeichneten Erfordernisse zu implementieren. Die USC 4 wird für den sonstigen Verkehr verwendet, der nicht unter die von dem Träger festgelegten Regeln, um die Erfordernisse des Kunden zu implementieren, fällt. Die USC 2 kann in Abhängigkeit von der Quelle-Ziel-Adresse oder der Webseite eine unterschiedliche Priorität haben, d.h. wenn die gewünschte Webseite eine des Betriebs oder eines zugehörigen Betriebs ist, bekommt sie eine höhere Priorität als sonstiger allgemeiner Netzsurfverkehr gemäß der SLA-Regel 3 oben. Ein Beispiel für Regeln zum Maschenverarbeiten zur Implementierung der Prioritäten, die von dem Träger aufgestellt worden sind, ist unten in Tabelle IV gezeigt:
    USC1
    IF<TRAFFIC TYPE> is Sprache (z.B. Byte 47 = 10 H)
    Then USC = 1
    USC2
    IF<Ethernet Verkehr> (z.B. Byte 22 = 1011010xB)
    AND
    IF<Geschäftsverantwortliche Management> (z.B. Bytes 9–12 sind > 01100101H)
    AND
    IF<zugehörige Webseite des Kunden> (z.B. Bytes 28 und 29 = 01XXH)
    Then USC = 2
    USC3
    IF<SAN Extension> Where SAN is when byte 34 is 0101111B
    Then USC = 3
    Else USC = 4
  • Wie aus Tabelle IV ersichtlich ist, wird der gesamte Verkehr des Kunden in eine Dienstklasse eingeordnet, die durch die USC 1, 2, 3 oder 4 definiert ist. USC 4 ist eine Auffang-Best-Effort-Dienstklasse. Dies bedeutet, dass Verkehr, der nicht in die USC 1 bis 3 fällt, auf Konformität bezüglich des allgemeinen SLA der USC 4 überprüft wird (d.h. Verkehr, der eine Datenrate von nicht mehr als 100 Mbps und einer Latenz von nicht weniger als 10 Millisekunden verkraftet), die durch den Prozess vorkonfiguriert ist, oder alternativ hierzu könnte er einfach die gesamte verbleibende Bandbreite aufbrauchen. Die Maschenlogik kann in ein FPGA („FPGA = Field Programmable Gate Array"/frei programmierbare Gatteranordnung) kompiliert werden und die Ausgabe kann ein Steuerwort für jedes Paket erzeugen. Dann wird ein inhaltsadressierbarer Speicher („CAM = Content-addressable memory") oder eine inhalts-adressierbare Speicherdatenstruktur in einem Standardspeicher verwendet, um explizite USC-Nummern für jedes Paket zu Verfügung zu stellen. Obwohl die bevorzugte Ausführungsform eine Hash-Funktion verwendet, benötigen einige Implementierungen keine Hash-Funktion. Beispielsweise wäre keine Hash-Funktion für den einfachen Regelsatz in Tabelle IV notwendig, der nur eine kleine Menge von Bits in wenigen Feldern in dem Kopf betrachtet.
  • Andererseits ist eine Hash-Funktion nützlich, wenn es notwendig ist, die Adress- oder Wortgröße zu reduzieren, die dazu verwendet wird, als ein Index oder als anderer Parameter zu fungieren, um eine USC nachzuschlagen. Darüber hinaus kann die Hash-Funktionalität dazu verwendet werden, Kollisionen in großen Netzwerktopologien aufzulösen. Wenn eine Hash-Funktonalität gewünscht ist, kann jede im Stand der Technik bekannte Hash-Funktion angewandt werden.
  • Sobald eine USC einem Paket zugewiesen worden ist, wird auf die USC-MIB („USC-MIB = USC Management Information Base"/USC-Verwaltungsinformationsbasis) zugegriffen. Diese Datenstruktur, die in dem Prozessor selbst gespeichert ist, enthält Informationen, die mit den USC-Verkehrsparametern in Verbindung stehen. Wenn eine USC-MIB nicht für eine gegebene USC existiert, signalisiert der Prozessor dies dem Netzwerk, öffnet eine USC und erzeugt die USC-MIB. Das Paket wird dann für eine Übertragung gemäß einem Scheduling- oder Planungssystem, das in der USC-MIB festgelegt ist, in eine Warteschlange gegeben. Der Planer berücksichtigt die Priorität, die dem Paket gemäß dem USC-MIB zugewiesen ist. Anders ausgedrückt werden Pakete für eine Übertragung gemäß dem Planertyp und der Intervallge schwindigkeit des Planers in eine Warteschlange gegeben und priorisiert, und der Planer stellt sicher, dass USCs, die für eine minimale Bandbreitengröße gekennzeichnet sind, diese Bandbreite bekommen. Der Planer hindert Pakete auch daran, in Verbindung mit einer USC gesendet zu werden, wenn der virtuelle Kanal dieser USC die maximale Datenrate oder die Bandbreitenzuweisung für eine gewisse Zeitintervallseinheit überschritten hat. In diesem Fall wird das verzögerte Paket in der nächsten Zeitintervalleinheit gesendet, so dass die zugewiesene Bandbreite nicht durch den Kanal dieses Pakets (USC) überschritten wird.
  • Während des Verarbeitens der Bereitstellungsmaschine können die Pakete in jeder USC gezählt werden. Die Paketzahlen werden in der entsprechenden USC-MIB gesammelt und ausgelesen. Auf diese Weise kann die tatsächlich über die einem Kunden zugewiesene USC gesendete Menge an Daten verfolgt werden. Dies stellt eine Rechnungsstellungsmöglichkeit auf einer benutzungsabhängigen oder paketabhängigen Basis gemäß der tatsächlichen Benutzung zur Verfügung. Die USC-MIB stellt auch Statistiken für Kunden und in gleicher Weise für den Träger zur Verfügung, um die Kanalverwendung, die Benutzergewohnheiten sowie Überlauf- und Ausfallbedingungen sowie die Frage, wieviel Bandbreite einem Kanal zuzuweisen ist, zu analysieren. Detailliertere Statistiken können aufgezeichnet werden, insbesondere dort, wo die Bereitstellungsmaschine weitere Felder als nur die Kopffelder verwendet, um Pakete zur Bereitstellung oder Statistikerfassung zu unterscheiden. Wenn beispielsweise auf bestimmte Informationstypen häufig über einen bestimmten Kanal zugegriffen wird, kann es für den Träger nützlich sein, derartige Informationen lokal zwischenzuspeichern („Cache") oder einen weiteren Server dahingehend zu instruieren, die Informationen zwischenzuspeichern. Es können Benutzergewohnheiten, wie etwa der Grad, zu dem ein Benutzer über das Internet einkauft, zu weitergehenden Marketing- oder Demografiezwecken bestimmt werden. Eine typische Bereitstellungsmaschine handhabt 160.00–256.000 USCs. Leistungsgrade von Hunderttausenden von Megabit pro Sekunde können erreicht werden.
  • 9 stellt eine Konzeptveranschaulichung des Bereitstellens eines Breitbandstromes gemäß der vorliegenden Erfindung zur Verfügung.
  • In 9 werden Informationseinheiten wie etwa Pakete auf einer oder mehreren Ebenen analysiert. Eine beispielhafte Analyse ist in 9 veranschaulicht, in der die Kopfinformationen der „Transport-IP"- Schicht einschließlich der „TCP-Port"- und „UDP-Port"-Werte verwendet werden, um das Paket einer Unterverbindung oder einem Kanal innerhalb einer physischen Verbindung, wie etwa einem faseroptischen Kanal, zuzuweisen. Eine Vergrößerung der physischen Verbindung zeigt konzeptionell, dass Unterverbindungen auf unterschiedliche Weise organisiert werden können, um LAN-, VPN-, SAN- oder Sprachverkehr zu behandeln. Die Größen- oder die Bandbreitenzuweisung jeder Unterverbindung wird durch den Träger über die Regeln der Bereitstellungsmaschine gemäß den Anforderungen der Kunden gesteuert. Den Kunden wird dementsprechend, wie oben erläutert, Rechnung gestellt.
  • Bereitstellungsmaschinenarchitektur
  • 10 zeigt die Bereitstellungsmaschinenarchitektur. Zwei grundlegende Abschnitte der Bereitstellungsmaschine 200 enthalten ein Zugreifen auf Pakete des Datenstroms, ein Extrahieren von Kopfinformationen, ein Anwenden von Regeln auf die Kopfinformationen, um eine Abbildung auf eine Benutzerdienstklasse zu erzeugen, und schließlich ein Übertragen der Nutzlast entsprechend des Kopfes über das Netzwerk.
  • In 10 stellt der Datenstrom 202 den Netzwerkverkehr dar. Der gesamte oder ein Teil dieses Verkehrs kann zum Verarbeiten auf die Bereitstellungsmaschine der vorliegenden Erfindung umgeleitet werden. Es können unterschiedliche Kriterien verwendet werden, um zu bestimmen, welche Pakete der Bereitstellungsmaschine zugeleitet werden. Beispielsweise kann eine Vorselektion der Pakete durchgeführt werden, wobei lediglich Pakete eines vorbestimmen Adressbereichs, eines Paketsequenzbereichs, etc zu der Bereitstellungsmaschine umgeleitet werden. Die Pakete können in die Bereitstellungsmaschine durch Prozesse innerhalb der Bereitstellungsmaschine „gezogen" („Pull") werden. Es können auch Pakete durch das Hostsystem „geschoben" („Push") oder auf der Basis eines vordefinierten Adressbereichs durch andere Geräte der Bereitstellungsmaschine zugeleitet werden. Wenn die Bereitstellungsmaschine mit dem Verarbeiten eines Pakets beginnt, bewegt sie die Paketnutzlast für eine temporäre Speicherung in einen lokalen Speicher, während sie den Bereitstellungsprozess unter Verwendung der durch den Paketkopf zur Verfügung gestellte Informationen und eines vordefinierten Regelsatzes durchläuft. Schritt 204 der 10 stellt einen beliebigen Mechanismus zur Bereitstellung von Paketen an die Bereitstellungsmaschine dar.
  • Das Bewegen der Nutzlast des Pakets in den Speicher ist in Schritt 210 angedeutet. Die Paketnutzlast wird in einem lokalen Bereitstellungsmaschinenspeicher gespeichert, wie durch die Paketnutzlast 212 angezeigt. Demnach wird die Nutzlast von dem Kopf zum Zweck einer effizienten Verarbeitung der Kopfinformationen abgelöst, um das Paket auf eine USC abzubilden. Es sei bemerkt, dass bei verschiedenen Ausführungsformen der Erfindung die Informationseinheit, die verarbeitet wird, nicht in Kopf- und Nutzlast separiert werden muss. Teile der Nutzlast können für den Bereitstellungsprozess verwendet werden. Zusätzliche Informationen, wie beispielsweise Daten, die speziell für das Bereitstellen zu beispielsweise Routing-, Überwachungs-, Sicherheits-, Steuer- oder anderen Zwecken zur Verfügung gestellt werden, können in der Informationseinheit enthalten sein, die bereitgestellt wird. Im Allgemeinen dient Schritt 210 dazu, Informationen, die nicht Teil des Bereitstellungskriteriums sind, von Informationen zu trennen, die dazu verwendet werden, auf eine USC abzubilden. In einem Extremfall wäre es beispielweise wünschenswert, dass alle Informationseinheiten bei dem Abbilden verwendet werden, wodurch für Schritt 210 dann keine Notwendigkeit mehr besteht.
  • Die gespeicherte Paketnutzlast wird im Speicher gehalten, bis der Kanal oder die USC, der/die dem Paket entspricht, bestimmt wurde.
  • Bei der bevorzugten Ausführungsform sind Paketköpfe bis zu 64 Byte lang. In Schritt 214 wird die gewünschte Kopfinformation durch eine dedizierte Schaltung zum Zwecke weiterer Verarbeitung identifiziert. Die Anwendung des Regelsatzes findet in Schritt 218 statt, wobei die Anwendung der vorbestimmten Regeln (der „Regelsatz") auf die Paketkopfinformationen einen Steuerwortindex ergibt. Der Regelsatz kann mit einem Teilsatz des 64 Byte großen Kopfes in Abhängigkeit von den Grenzen der Funktionalität arbeiten. Kleinere Feldoperationen ergeben einfachere und möglicherweise schnellere Maschenlogik- und Hashanforderungen. Der Regelsatz ist ein Satz kompilierter HDL-Regeln („HDL = High Level Design Language"/Hochdesignsprache), welche die Maschenlogik auf der Basis vordefinierter Regeln konfiguriert, die durch den Netzwerkbetreiber, den Benutzer oder den Geräteausrüster aufgestellt worden sind. Diese Regeln arbeiten auf verschiedenen Ebenen in dem OSI-Modell und können Regeln umfassen, die explizit hervorheben, welche Felder auf welchen Schichten als Parameter zu verwenden sind, um Pakete auf verschiedene Benutzerdienstschaltungen in dem Faserstrang abzubilden.
  • Wie oben erläutert, werden diese Regeln (durch einen Menschen oder eine Maschine) erzeugt, um die Kundenanforderungen, das Design eines Trägers oder andere Anforderungen der Ressourcenzuweisung zufrieden zu stellen. Diese Regeln können von komplexen relationalen Logikregeln bis zu einfachen vergleichenden Bitoperatoren reichen. Der Designkompromiss liegt in der Tiefe oder in der Ausdehnung der Kopfsuche gegenüber der Verarbeitungsgeschwindigkeit der Bereitstellungsmaschine.
  • Bei einer bevorzugten Ausführungsform können die Regeln (und andere, für die Verarbeitung der Breitstellungsmaschine relevanten Informationen) durch Laden neuer Informationen und Regeln in die Bereitstellungsmaschine geändert werden. Ein derartiges Laden kann beispielsweise über das Internet, durch eine andere Netzwerkverbindung oder einen dedizierten Datenport stattfinden. Dies ermöglicht ein dynamisches Neukonfigurieren der Bereitstellungsmaschine, so dass die Ressourcenbereitstellung, die Routing-, Überwachungs- und Steuerfunktionen modifiziert werden können. Dies ermöglicht es auch, dass Dienstanbieter und Träger neue Benutzer- und Dienstklassen hinzufügen können, wenn neue Diensttypen eingeführt werden.
  • Ein schnelles und dynamisches Laden von Regeln und anderen Konfigurationsinformationen ermöglicht nicht nur eine Flexibilität bei einem Verändern der Konten (bzw. Accounts) der Kunden, sondern erlaubt auch eine schnelle Fehlerbehebung. Wenn beispielsweise ein Strang oder eine physische Verbindung zum Übermitteln ausfällt, kann sofort eine an einen anderen Strang gekoppelte Bereitstellungsmaschine konfiguriert werden, um Verkehr zu übernehmen, der normalerweise auf dem ausgefallenen Strang behandelt wird.
  • Das Laden eines Regelsatzes aus einem Speicher, einem Datenport oder mittels anderer Mittel ist in 208 gezeigt. Die Regeln existieren dann in der Bereitstellungsmaschine bei 216, wo sie schnell auf die Maschenüberlagerungsinformationen (d.h. einen Teilsatz der Kopfinformation) bei 218 angewendet werden können. Es sind auch andere Herangehensweisen möglich. Auf die Regeln kann von einer externen Quelle auf einer Bedarfsbasis zugegriffen werden. Es kann einen dauerhaften Regelsatz geben, wie etwa einen Default-Regelsatz, zusammen mit auswählbaren Regelsätzen. Regeln können sogar die zu verarbeitende Informationseinheit begleiten, etwa wenn die Nutzlast eines Pakets Regeln für das Bereitstellen umfasst.
  • Die Ausgabe der Verarbeitung der Maschenüberlagerungs-Parsingregeln ist ein Steuerwort/-index, der den Fluss und die Klasse des Pakets darstellt, und zwar auf der Basis des Vergleichs des Paketes oder Flusses durch die Maschenlogik. Beispielsweise kann ein Paket mit einer begrenzten Maschenverarbeitung ein Steuerwort ausgeben, das nur den virtuellen LAN-Identifikator oder den Ethernet-MAC-Identifikator anzeigt, der zum Selektieren einer Benutzerdienstklasse verwendet werden soll. Bei einem ausgefeilteren Maschenverfahren können bestimmte MAC-Adressbereiche unterschiedliche Steuerwortwerte ergeben. Bei einem ausgefeilterem Szenario können die MAC-Adresse, der MAC-Bereich und die Schicht-4-HTTP-Adresse dazu verwendet werden, um bestimmte Steuerwörter für diejenigen MAC-Adressen in einer bestimm ten Gruppe zu erzeugen, die eine bestimmte (oder eine Gruppe von bestimmten) Webseiten betrachtet.
  • Das Steuerwort wird dann in einen inhaltsadressierbaren Speicher (CAM) oder eine CAM-Datenstruktur 220 abgebildet, wo der Status des Paketflusses identifiziert wird. Wenn in Schritt 228 die Abbildungstabelle einen „Treffer" erzeugt, d.h., die Benutzerdienstschaltung ist bereits aktiv, wird die USC einfach an den Sender weitergeleitet, was es ermöglicht, dass die Paketnutzlast der USC-Pipe beitritt. Ergibt sich ein Fehlen, richtet der Prozessor eine neue USC auf der Basis der Latenz-, Bandbreiten- und der Qualitätsparameter auf der Basis des Dienstgradübereinkommens oder anderer durch den Träger oder den Dienstanbieter definierter Kriterien ein. Der Hostprozessor- oder die Netzwerkintelligenz führt dann die Netzwerksignalgebung durch, erhält eine USC, baut eine Verbindung und eine USC-MIB auf und weist schließlich das Paket, welches das „Fehlen" erzeugt hatte, dieser USC und dieser USC-MIB zu. Alle nachfolgenden Pakete, die die Kriterien erfüllen, werden danach einen Treffer erzeugen. Dies kann mit generischen Signalprotokollen wie etwa ARP („ARP = Address Resolution Protocol"/Adressauflösungsprotokoll), LES („LES = LAN Emulation Server"/LAN-Emulationsserver), IETF RFC 1477/1583, RSVP, etc. eingerichtet werden. Bei der bevorzugten Ausführungsform wird auf die Programmschaltungsregeln 206 durch die Bereitstellungsmaschine zugegriffen, und sie werden zusammen mit den UPC-MIBs verwendet (Schaltungsparameter 224), um Steuerwort-/-indexwerte einer vorkonfigurierten Schaltung zuzuweisen.
  • Es werden dann Benutzerdienstklassenummern verwendet, um einen USC-spezifischen Kopf zu erzeugen. Der USC-Kopf kann eine virtuelle Schaltungsnummer in einem ATM-Netzwerk, ein proprietäres Paket-„Kennzeichen" („tag"), eine „Marke" („label") in einem MPLS-Netzwerk, ein modifizierter Abschnitt des Internetprotokollkopfes, wobei die „Diffserv"- oder Servicetypbits modifiziert sind, oder eine andere Kennzeichnung sein. Dieser Kopf (oder ein Teil davon) wird mit der gehaltenen Nutzlast zusammengeführt und in das Netzwerk unter dessen vorgeschriebenen Parametern gesendet. Vor dem Senden des Pakets verwendet ein Planer die USC, um Pakete zur Übertragung über eine physische Verbindung zu priorisieren. Der Planer verwendet effektiv USC-Kanäle, um „virtuelle Kanäle" oder Prioritäten über eine oder mehrere physische oder virtuelle Verbindungen zu erzeugen. Die USC-Kanäle besitzen Ressourcenzuweisungen, wie etwa Bandbreite, die dazu verwendet werden, um die angefragten Leistungsziele eines Kunden zu erfüllen.
  • Detaillierte Beschreibung von regelbasierter Maschenverarbeitung
  • 11 veranschaulicht weitere Details der Verarbeitung der Bereitstellungsmaschine. Die weiteren Details umfassen das Folgende:
  • 1. Feldauswahl
  • Um das Leistungsverhalten zu optimieren und das Maschendesign zu vereinfachen, kann ein Teilsatz des 64 großen Paketkopfes verwendet werden. Beispielsweise variieren in vielen Nur-Schicht-2-Anwendungen lediglich die ersten 32 Bytes, die demzufolge maschenverarbeitet werden müssen. Alternativ hierzu kann eine Mischung aus Feldern verwendet werden, mit der bei bestimmten Anwendungen gearbeitet wird. Die Feldauswahllogik verwendet einfach Benutzerinformationen und reduziert das Verarbeiten auf die Felder, die im vollen 64 Byte großen Paketbereich benötigt werden.
  • 2. Regelvermaschung
  • Regelvermaschung nimmt die Mehrfachschichtregeln zum Parsen auf der Basis der benutzerdefinierten Eingaben oder Netzwerkparameter notwendig sind. Dieses boolsche Parsen wird dazu verwendet, ein Steuerwort zu erzeugen, das die Benutzerklasse definiert, zu der das Paket innerhalb des Breitbandfaserstrangs zugeordnet werden sollte.
  • Diese Logik, vorzugsweise implementiert in einem FPGA, ASIC oder Speicher-EEPROM, wird aus einer Hochsprache abgeleitet, die die zu untersuchenden Felder und die zu unternehmende Aktion auf der Basis ihres Wertes angeben kann, wie in dem obigen Beispiel dargestellt.
  • 3. Felder-Hashfunktionalität
  • Um einen linearen Adressbereich für den inhaltsadressierbaren Speicher zu erzeugen und um jegliche Adresslücken zu eliminieren und den Bereich möglicher Kombinationen zu reduzieren, wird eine optionale Hashfunktion verwendet. Die Hashfunktion ist ein einfacher Hardwarehash zur Reduzierung so vieler wie möglich der 32 Millionen oder 64 Millionen Felder auf üblicherweise 16.000 bis 64.000 – was gut innerhalb des Erfassungsbereichs eines CAM liegt. Einfache Maschenalgorithmen benötigen die Hashfunktion nicht.
  • 4. Abbildungstabelle
  • Die MT („Mapping Table") nimmt die geparsten Steuerwörter und bildet sie in eine tatsächliche Benutzerdienstschaltungsnummer ab, die von dem Trägernetzwerk verstanden wird. In einem ATM-Netzwerk kann dies ein VPI („VPI = Virtual Path Identifier"/Virtueller Pfadidentifizierer) oder ein VCI ("VCI = Virtual Circuit Identifier"/Virtueller Schaltungsidentifizierer) sein. In einem Frame-Relay-Netzwerk könnte dies ein PID („PID = Path Identifier"/Pfadidentifizierer) und in einem Paket-über-SONET- oder einem IP-Netzwerk könnte dies ein Diffserv-Wert oder ein PPP-Identifizierer sein. Die Abbildungstabelle wird üblicherweise als ein Hochgeschwindigkeits-CAM („CAM = Content Addressable Memory"/inhaltsadressierbarer Speicher) oder als eine CAM-Datenstruktur im Speicher implementiert. Wenn das Steuerwort dazu verwendet wird, den CAM zu triggern, stellt der CAM eine USC-Nummer zur Verfügung. Wenn der CAM keine Eintragung für ein bestimmtes Steuerwort aufweist, tritt ein „Fehlen" auf, und eine neue USC muss erzeugt werden. Dies wird dadurch durchgeführt, dass dem Netzwerk dies mit einem beliebigen aus der Vielzahl der industriellen Standardprotokolle (LEARP, ARP, etc) „signalisiert" wird und eine neue neue USC und eine USC-MIB erzeugt werden.
  • 5. Schaltungsverbindung und Bereitstellung
  • Wenn man die USC erhalten hat, wird sie dazu verwendet, das Paket mit einem jetzt bestehenden USC-„Tunnel" oder einer virtuellen Schaltung innerhalb des Breitbandstranges zu verbinden (oder zu „linken"). Die bestehende USC stellt Latenz-, Dienstqualitäts-, Bandbreiten-, Verzögerungsvariations-, Protokollkonversions-/-kapselung- und andere Parameter für unterschiedliche Rechnungssätze und Dienststufen zur Verfügung.
  • Es sei bemerkt, dass, obwohl speziell Bezug auf Pakete und Paketübermittlungsprotokolle genommen worden ist, jede Übertragung von Informationseinheiten für eine Verwendung der vorliegenden Erfindung geeignet ist und ein beliebiges Protokoll oder Verfahren zum Übermitteln der Informationseinheit an die vorliegende Erfindung anpassbar ist. Beispielsweise können Rahmen, Gruppen von mehreren Paketen, Bit- oder Byteströme variabler Länge, ganze Dateien, Dokumente etc. über das Netzwerk übermittelte Informationseinheiten sein, die von der vorliegenden Erfindung profitieren können. Solange es Daten gibt, die den Informationseinheiten, die übermittelt werden, zugeordnet sind und die Daten zu Bereitstellungszwecken ver wendet werden können, kann ein derartiges Bereitstellen von Daten Gegenstand der hier beschriebenen Verarbeitung und Verwendung sein. Es sei bemerkt, dass die Bereitstellungsdaten nicht dem hier erläuterten Paketkopfformat, insbesondere dem OSI-Modellformat, folgen müssen. Es können spezialisierte Bereitstellungsdaten verwendet werden, die darauf zugeschnitten sind, das Leistungsverhalten zu verbessern oder neue Merkmale des Übermittelns, des Routings, des Überwachens, der Sicherheit und des Steuerns der Daten zur Verfügung stellen. Die Bereitstellungsdaten können irgendwo in den Informationseinheiten existieren. Beispielsweise kann ein „Signatur"-Block oder eine andere Art von Identifikations- oder Authentifikationsdaten dazu verwendet werden, um Bereitstellungsfunktionen durchzuführen. Bereitstellungsdaten können auch Fehlerkorrektur- und -detektionsdaten, die Größe der Informationseinheit, Zeitstempel, Routing-Tabellen, Prioritätswerte, Identifikatoren, eine Anzeige von Computer-, Prozessor- oder Netzwerkressourcen oder sogar irgendwelche Informationen in den Nutzlastdaten selbst umfassen.
  • Die vorliegende Erfindung ist auf die Bereitstellung einer beliebigen Art von Prozessor- oder Netzwerkressource anpassbar. Wenn beispielweise Speicher in einem Gerät verwendet wird, kann die Bereitstellungsmaschine bestimmen, welche Informationseinheiten in einem bestimmten Speicher (zum Beispiel einem Schnellzugriffsspeicher im Gegensatz zu einer Festplatte oder einem langsameren Speicher, Zwischenspeicher, etc.) zu speichern sind. Wo eine Ressource die Verarbeitungszeit ist, wenn etwa Aufgaben CPU-Takten zugewiesen werden, kann die Bereitstellungsmaschine der vorliegenden Erfindung dazu verwendet werden, Informationseinheiten für die CPU-Verarbeitung zu priorisieren.
  • Obwohl die vorliegende Erfindung im Hinblick auf bestimmte Ausführungsformen derselben erläutert wurde, sollte es klar sein, dass die Ausführungsformen lediglich für bestimmte Wege des Ausführens der vorliegenden Erfindung veranschaulichend sind, deren Geltungsbereich in den beigefügten Ansprüchen definiert wird.

Claims (12)

  1. Verfahren zum Bereitstellen von Ressourcen in einem Kommunikationsnetzwerk, welches aufweist: Definieren eines Ziel-Gütegrades für einen spezifischen Verkehrstyp in Bezug auf Bandbreite und/oder Latenz und/oder Sicherheit und/oder Priorität, wobei der Ziel-Gütegrad auf von einem Teilnehmer bereitgestellten Anforderungsinformationen basiert, und Zuordnen des Ziel-Gütegrades zu einer Benutzerdienstklasse; Erfassen einer Datenübertragung des spezifischen Verkehrstyps und der Benutzerdienstklasse in einer Bereitstellungsmaschine (200); Zuweisen von Ressourcen in der Bereitstellungsmaschine (200), um den Ziel-Gütegrad für den spezifischen Verkehrstyp und die Benutzerdienstklasse zu erreichen, wobei die Ressourcenzuweisung das Erzeugen eines virtuellen Kanals beinhaltet, der geeignet ist, dem Gütegrad zu genügen; und Übertragen der Daten über den virtuellen Kanal, der dem spezifischen Verkehrstyp zugeordnet ist, um die definierte Bandbreite, Latenz, Sicherheit und Priorität bereitzustellen.
  2. Verfahren nach Anspruch 1, wobei die Ressourcen einer Mehrzahl von Unterverbindungen im Netzwerk zugewiesen werden.
  3. Verfahren nach Anspruch 1, welches weiterhin aufweist: Empfangen eines Signals an der Bereitstellungsmaschine (200) zum Ändern einer Datenrate für den spezifischen Verkehrstyp; und Zuweisen der Bandbreite auf dem virtuellen Kanal durch die Bereitstellungsmaschine (200), um die Datenrate zu erreichen.
  4. Verfahren nach Anspruch 3, wobei Daten in Paketen übertragen werden, die einen Kopf enthalten, der einen Verkehrstyp spezifiziert, und wobei das Erfassen von Datenübertragungen des spezifischen Verkehrstyps durch die Bereitstellungsmaschine beinhaltet, dass die Bereitstellungsmaschine eine Datenübertragung eines spezifischen Typs basierend auf dem in dem Kopf spezifizierten, spezifischen Verkehrstyp erfasst.
  5. Verfahren nach Anspruch 4, wobei der Kopf eine Paketquelle, ein Paketziel, eine durchlaufene Route oder eine Priorität beinhaltet.
  6. Verfahren nach Anspruch 4, welches weiterhin aufweist: Bilden von einer Dienstklasse oder mehreren Dienstklassen, wobei jeder Dienstklasse eine unterschiedliche Datenrate zugeordnet ist; Definieren von einer Regel oder mehreren Regeln zum Zuordnen eines Verkehrstyps zu einer Dienstklasse; wobei das Zuweisen der Bandbreite durch die Bereitstellungsmaschine, um die Datenrate für den spezifischen Verkehrstyp zu erreichen, die Verwendung von einer oder mehreren der Regeln zum Zuweisen der Bandbreite beinhaltet.
  7. Verfahren nach Anspruch 6, welches weiterhin aufweist: Verwenden von Bits in dem Paketkopf, um eine Maschenanordnung binärer Bitmuster zu bilden; und Verwenden eines inhalte-adressierbaren Speichers mit Hashing-Vorverarbeitung, um die Maschenanordnung auf eine Dienstklasse abzubilden.
  8. Verfahren nach Anspruch 1, welches weiterhin das Sammeln von Informationen über die aktuelle Datenrate für den spezifischen Verkehrstyp aufweist.
  9. Verfahren nach Anspruch 8, welches weiterhin aufweist: Akzeptieren einer Anforderung von einem Teilnehmer für eine Datenrate für einen spezifischen Verkehrstyp; und Erstellen einer Abrechnung für den Teilnehmer gemäß den gesammelten Informationen.
  10. Verfahren nach Anspruch 3, wobei die Bereitstellungsmaschine einen Port zum Empfangen von Informationen zum Ändern der Datenrate beinhaltet, und wobei das Verfahren weiterhin aufweist: Akzeptieren von die Datenrate spezifizierenden Informationen; und Zuweisen der Bandbreite durch die Bereitstellungsmaschine, um die Datenrate für einen Verkehrstyp zu erreichen.
  11. Verfahren nach Anspruch 3, wobei die Bereitstellungsmaschine einen Port zum Empfangen von Informationen zum Ändern des spezifizierten Verkehrstyps beinhaltet, und wobei das Verfahren weiterhin aufweist: Akzeptieren von einen Verkehrstyp spezifizierenden Informationen; und Zuweisen der Bandbreite durch die Bereitstellungsmaschine, um eine Datenrate für den Verkehrstyp zu erreichen.
  12. Verfahren nach Anspruch 3, wobei die Bereitstellungsmaschine einen Port zum Empfangen von Informationen zum Ändern des spezifizierten Verkehrstyps beinhaltet, und wobei das Verfahren weiterhin aufweist: Akzeptieren von einen Verkehrstyp spezifizierenden Informationen; und Bereitstellen von Abrechnungsinformationen durch die Bereitstellungsmaschine für das Hostsystem, wobei die Abrechnungsinformationen den Umfang des Verkehrs auf jeder der Verbindungen über einen Zeitraum beinhalten, um eine Gebühr für die Verwendung des spezifischen Verkehrstyps zu erhalten.
DE60029879T 1999-06-25 2000-06-23 System zur mehrschichtigen Bereitstellung in Computernetzwerken Expired - Lifetime DE60029879T2 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/340,068 US6625650B2 (en) 1998-06-27 1999-06-25 System for multi-layer broadband provisioning in computer networks
US340068 1999-06-25

Publications (2)

Publication Number Publication Date
DE60029879D1 DE60029879D1 (de) 2006-09-21
DE60029879T2 true DE60029879T2 (de) 2007-03-08

Family

ID=23331730

Family Applications (2)

Application Number Title Priority Date Filing Date
DE60042709T Expired - Lifetime DE60042709D1 (de) 1999-06-25 2000-06-23 System zur mehrschichtigen Bereitstellung in Computernetzwerken
DE60029879T Expired - Lifetime DE60029879T2 (de) 1999-06-25 2000-06-23 System zur mehrschichtigen Bereitstellung in Computernetzwerken

Family Applications Before (1)

Application Number Title Priority Date Filing Date
DE60042709T Expired - Lifetime DE60042709D1 (de) 1999-06-25 2000-06-23 System zur mehrschichtigen Bereitstellung in Computernetzwerken

Country Status (6)

Country Link
US (1) US6625650B2 (de)
EP (2) EP1718011B1 (de)
JP (1) JP2001053789A (de)
AT (2) ATE438989T1 (de)
DE (2) DE60042709D1 (de)
HK (1) HK1033872A1 (de)

Families Citing this family (162)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6466976B1 (en) * 1998-12-03 2002-10-15 Nortel Networks Limited System and method for providing desired service policies to subscribers accessing the internet
US6976258B1 (en) 1999-11-30 2005-12-13 Ensim Corporation Providing quality of service guarantees to virtual hosts
US6654350B1 (en) * 2000-02-07 2003-11-25 Hewlett-Packard Development Company, L.P. Method and apparatus for tracking a transaction across a multi-hop network
US7343421B1 (en) 2000-02-14 2008-03-11 Digital Asset Enterprises Llc Restricting communication of selected processes to a set of specific network addresses
GB0004178D0 (en) 2000-02-22 2000-04-12 Nokia Networks Oy Integrity check in a communication system
US6948003B1 (en) 2000-03-15 2005-09-20 Ensim Corporation Enabling a service provider to provide intranet services
US6792472B1 (en) * 2000-03-31 2004-09-14 International Business Machines Corporation System, method and computer readable medium for intelligent raid controllers operating as data routers
US7343622B1 (en) * 2000-04-27 2008-03-11 Raytheon Company Multi-level secure multi-processor computer architecture
US6987763B2 (en) * 2000-05-04 2006-01-17 Comverse Ltd. Load balancing
US6985937B1 (en) 2000-05-11 2006-01-10 Ensim Corporation Dynamically modifying the resources of a virtual server
US6907421B1 (en) 2000-05-16 2005-06-14 Ensim Corporation Regulating file access rates according to file type
WO2001091416A2 (en) 2000-05-19 2001-11-29 Enron Broadband Services, Inc. Globally accessible computer network-based broadband communication system with user-controllable quality of information delivery and flow priority
US7269185B2 (en) * 2000-05-22 2007-09-11 Nortel Networks Limited Management and control of multi-layer networks
US7464163B1 (en) * 2000-07-27 2008-12-09 International Business Machines Corporation Service provisioning via attribute-based subscription
US6954462B1 (en) * 2000-07-31 2005-10-11 Cisco Technology, Inc. Method and apparatus for determining a multilayer switching path
US6909691B1 (en) * 2000-08-07 2005-06-21 Ensim Corporation Fairly partitioning resources while limiting the maximum fair share
US7412514B2 (en) * 2000-08-17 2008-08-12 Hoshiko Llc Method and apparatus for improving bandwidth efficiency in a computer network
US6988142B2 (en) * 2000-08-24 2006-01-17 Red Hat, Inc. Method and apparatus for handling communication requests at a server without context switching
US7444398B1 (en) * 2000-09-13 2008-10-28 Fortinet, Inc. System and method for delivering security services
US7487232B1 (en) 2000-09-13 2009-02-03 Fortinet, Inc. Switch management system and method
US7574495B1 (en) * 2000-09-13 2009-08-11 Fortinet, Inc. System and method for managing interworking communications protocols
US7272643B1 (en) 2000-09-13 2007-09-18 Fortinet, Inc. System and method for managing and provisioning virtual routers
US7389358B1 (en) * 2000-09-13 2008-06-17 Fortinet, Inc. Distributed virtual system to support managed, network-based services
US8250357B2 (en) 2000-09-13 2012-08-21 Fortinet, Inc. Tunnel interface for securing traffic over a network
US7032119B2 (en) * 2000-09-27 2006-04-18 Amphus, Inc. Dynamic power and workload management for multi-server system
US7822967B2 (en) 2000-09-27 2010-10-26 Huron Ip Llc Apparatus, architecture, and method for integrated modular server system providing dynamically power-managed and work-load managed network devices
USRE40866E1 (en) 2000-09-27 2009-08-04 Huron Ip Llc System, method, and architecture for dynamic server power management and dynamic workload management for multiserver environment
US20070245165A1 (en) * 2000-09-27 2007-10-18 Amphus, Inc. System and method for activity or event based dynamic energy conserving server reconfiguration
US7058826B2 (en) 2000-09-27 2006-06-06 Amphus, Inc. System, architecture, and method for logical server and other network devices in a dynamically configurable multi-server network environment
US6807156B1 (en) * 2000-11-07 2004-10-19 Telefonaktiebolaget Lm Ericsson (Publ) Scalable real-time quality of service monitoring and analysis of service dependent subscriber satisfaction in IP networks
US6894969B1 (en) * 2000-11-14 2005-05-17 Lucent Technologies Inc. Apparatus and method for redundancy of processing modules interfaced to a switching core
US6950874B2 (en) * 2000-12-15 2005-09-27 International Business Machines Corporation Method and system for management of resource leases in an application framework system
US20020075803A1 (en) * 2000-12-18 2002-06-20 John Zaharychuk Method and apparatus for dynamic optimization of a multi-service access device
US7219354B1 (en) 2000-12-22 2007-05-15 Ensim Corporation Virtualizing super-user privileges for multiple virtual processes
US6981077B2 (en) * 2000-12-22 2005-12-27 Nortel Networks Limited Global access bus architecture
AU2002306495A1 (en) 2001-02-13 2002-08-28 Candera, Inc. Storage virtualization and storage management to provide higher level storage services
US6880062B1 (en) * 2001-02-13 2005-04-12 Candera, Inc. Data mover mechanism to achieve SAN RAID at wire speed
US20020110087A1 (en) * 2001-02-14 2002-08-15 David Zelig Efficient setup of label-switched connections
US7606909B1 (en) * 2001-02-20 2009-10-20 Michael Ely Method and apparatus for a business contact center
DE10109441A1 (de) * 2001-02-27 2002-09-12 Mayah Comm Gmbh Verfahren zum Erkennen audio-visueller Daten in Übertragungsnetzen, insbesondere dem Internet
US7269157B2 (en) * 2001-04-10 2007-09-11 Internap Network Services Corporation System and method to assure network service levels with intelligent routing
US20030196126A1 (en) 2002-04-11 2003-10-16 Fung Henry T. System, method, and architecture for dynamic server power management and dynamic workload management for multi-server environment
US20060248360A1 (en) * 2001-05-18 2006-11-02 Fung Henry T Multi-server and multi-CPU power management system and method
US7203722B2 (en) * 2001-05-24 2007-04-10 International Business Machines Corporation Optimistic processing of network frames to reduce latency
JP4728511B2 (ja) * 2001-06-14 2011-07-20 古河電気工業株式会社 データ中継方法、その装置およびその装置を用いたデータ中継システム
US7020143B2 (en) * 2001-06-18 2006-03-28 Ericsson Inc. System for and method of differentiated queuing in a routing system
US7181547B1 (en) 2001-06-28 2007-02-20 Fortinet, Inc. Identifying nodes in a ring network
TW576061B (en) * 2001-08-13 2004-02-11 Via Tech Inc Device and method for load balancing of packet switching
US7561517B2 (en) 2001-11-02 2009-07-14 Internap Network Services Corporation Passive route control of data networks
US7668966B2 (en) 2001-11-02 2010-02-23 Internap Network Services Corporation Data network controller
US7133365B2 (en) 2001-11-02 2006-11-07 Internap Network Services Corporation System and method to provide routing control of information over networks
US7464016B2 (en) * 2001-11-09 2008-12-09 Sun Microsystems, Inc. Hot plug and hot pull system simulation
US7260650B1 (en) * 2001-11-28 2007-08-21 Cisco Technology, Inc. Method and apparatus for tunneling information
US7380120B1 (en) 2001-12-12 2008-05-27 Guardian Data Storage, Llc Secured data format for access control
US7921284B1 (en) 2001-12-12 2011-04-05 Gary Mark Kinghorn Method and system for protecting electronic data in enterprise environment
US7565683B1 (en) 2001-12-12 2009-07-21 Weiqing Huang Method and system for implementing changes to security policies in a distributed security system
US10033700B2 (en) * 2001-12-12 2018-07-24 Intellectual Ventures I Llc Dynamic evaluation of access rights
US7930756B1 (en) 2001-12-12 2011-04-19 Crocker Steven Toye Multi-level cryptographic transformations for securing digital assets
US10360545B2 (en) 2001-12-12 2019-07-23 Guardian Data Storage, Llc Method and apparatus for accessing secured electronic data off-line
US7260555B2 (en) 2001-12-12 2007-08-21 Guardian Data Storage, Llc Method and architecture for providing pervasive security to digital assets
US7178033B1 (en) 2001-12-12 2007-02-13 Pss Systems, Inc. Method and apparatus for securing digital assets
US7921288B1 (en) 2001-12-12 2011-04-05 Hildebrand Hal S System and method for providing different levels of key security for controlling access to secured items
US7921450B1 (en) 2001-12-12 2011-04-05 Klimenty Vainstein Security system using indirect key generation from access rules and methods therefor
USRE41546E1 (en) 2001-12-12 2010-08-17 Klimenty Vainstein Method and system for managing security tiers
US8065713B1 (en) 2001-12-12 2011-11-22 Klimenty Vainstein System and method for providing multi-location access management to secured items
US7681034B1 (en) 2001-12-12 2010-03-16 Chang-Ping Lee Method and apparatus for securing electronic data
US7783765B2 (en) 2001-12-12 2010-08-24 Hildebrand Hal S System and method for providing distributed access control to secured documents
US8006280B1 (en) 2001-12-12 2011-08-23 Hildebrand Hal S Security system for generating keys from access rules in a decentralized manner and methods therefor
US7950066B1 (en) 2001-12-21 2011-05-24 Guardian Data Storage, Llc Method and system for restricting use of a clipboard application
US7249169B2 (en) * 2001-12-28 2007-07-24 Nortel Networks Limited System and method for network control and provisioning
US20030133412A1 (en) * 2002-01-10 2003-07-17 Iyer Arvind B. VLAN to MPLS mapping: method to establish end-to-end traffic path spanning enterprise local area networks and a global network
US6633835B1 (en) 2002-01-10 2003-10-14 Networks Associates Technology, Inc. Prioritized data capture, classification and filtering in a network monitoring environment
US7299277B1 (en) 2002-01-10 2007-11-20 Network General Technology Media module apparatus and method for use in a network monitoring environment
US7447777B1 (en) * 2002-02-11 2008-11-04 Extreme Networks Switching system
US7298746B1 (en) 2002-02-11 2007-11-20 Extreme Networks Method and system for reassembling and parsing packets in a network environment
US7321926B1 (en) 2002-02-11 2008-01-22 Extreme Networks Method of and system for allocating resources to resource requests
US7814204B1 (en) 2002-02-11 2010-10-12 Extreme Networks, Inc. Method of and system for analyzing the content of resource requests
US7584262B1 (en) 2002-02-11 2009-09-01 Extreme Networks Method of and system for allocating resources to resource requests based on application of persistence policies
US8176334B2 (en) 2002-09-30 2012-05-08 Guardian Data Storage, Llc Document security system that permits external users to gain access to secured files
US7227867B1 (en) 2002-04-16 2007-06-05 Juniper Networks, Inc. Multi-protocol label switching in a network device
US8613102B2 (en) 2004-03-30 2013-12-17 Intellectual Ventures I Llc Method and system for providing document retention using cryptography
US7177311B1 (en) 2002-06-04 2007-02-13 Fortinet, Inc. System and method for routing traffic through a virtual router-based network switch
US7116665B2 (en) 2002-06-04 2006-10-03 Fortinet, Inc. Methods and systems for a distributed provider edge
US7161904B2 (en) 2002-06-04 2007-01-09 Fortinet, Inc. System and method for hierarchical metering in a virtual router based network switch
US7203192B2 (en) * 2002-06-04 2007-04-10 Fortinet, Inc. Network packet steering
US7376125B1 (en) 2002-06-04 2008-05-20 Fortinet, Inc. Service processing switch
US7483399B2 (en) * 2002-06-05 2009-01-27 David Zelig Signaling MPLS over RPR rings
US6788690B2 (en) * 2002-06-27 2004-09-07 Nokia Corporation Packet identifier search filtering
US7339929B2 (en) * 2002-08-23 2008-03-04 Corrigent Systems Ltd. Virtual private LAN service using a multicast protocol
US7096383B2 (en) * 2002-08-29 2006-08-22 Cosine Communications, Inc. System and method for virtual router failover in a network routing system
US20040044749A1 (en) * 2002-08-30 2004-03-04 Harkin Arthur S. Method and system for controlling class of service admission to a server
US7305464B2 (en) * 2002-09-03 2007-12-04 End Ii End Communications, Inc. Systems and methods for broadband network optimization
US7512810B1 (en) 2002-09-11 2009-03-31 Guardian Data Storage Llc Method and system for protecting encrypted files transmitted over a network
US7305431B2 (en) * 2002-09-30 2007-12-04 International Business Machines Corporation Automatic enforcement of service-level agreements for providing services over a network
US7836310B1 (en) 2002-11-01 2010-11-16 Yevgeniy Gutnik Security system that uses indirect password-based encryption
US7454499B2 (en) * 2002-11-07 2008-11-18 Tippingpoint Technologies, Inc. Active network defense system and method
US7415032B2 (en) * 2002-11-13 2008-08-19 Intel Corporation Aggregatable connectivity
US7266120B2 (en) 2002-11-18 2007-09-04 Fortinet, Inc. System and method for hardware accelerated packet multicast in a virtual routing system
GB0229647D0 (en) * 2002-12-19 2003-01-22 Zarlink Semiconductor Ltd Packet classifer
US7890990B1 (en) 2002-12-20 2011-02-15 Klimenty Vainstein Security system with staging capabilities
US20040181594A1 (en) * 2003-03-14 2004-09-16 Sun Microsystems, Inc. Methods for assigning performance specifications to a storage virtual channel
US20040181589A1 (en) * 2003-03-14 2004-09-16 Sun Microsystems,Inc. Storage virtual channels and method for using the same
US7515605B2 (en) 2003-03-24 2009-04-07 Corrigent Systems Ltd Efficient transport of TDM services over packet networks
US20040210663A1 (en) * 2003-04-15 2004-10-21 Paul Phillips Object-aware transport-layer network processing engine
US7386630B2 (en) * 2003-04-30 2008-06-10 Nokia Corporation Using policy-based management to support Diffserv over MPLS network
US8707034B1 (en) 2003-05-30 2014-04-22 Intellectual Ventures I Llc Method and system for using remote headers to secure electronic files
US20040257994A1 (en) * 2003-06-17 2004-12-23 Cymphonix Corporation System and method for network communications management
US7720095B2 (en) * 2003-08-27 2010-05-18 Fortinet, Inc. Heterogeneous media packet bridging
US20080089347A1 (en) * 2003-08-29 2008-04-17 End Ii End Communications Inc. Systems and methods for broadband network optimization
US7703140B2 (en) 2003-09-30 2010-04-20 Guardian Data Storage, Llc Method and system for securing digital assets using process-driven security policies
US8127366B2 (en) 2003-09-30 2012-02-28 Guardian Data Storage, Llc Method and apparatus for transitioning between states of security policies used to secure electronic documents
ATE385096T1 (de) * 2004-03-03 2008-02-15 France Telecom Verfahren und vorrichtung zur erzeugung von regeln zur behandlung eines informationsrahmen
US7707427B1 (en) 2004-07-19 2010-04-27 Michael Frederick Kenrich Multi-level file digests
US8631105B2 (en) * 2004-08-27 2014-01-14 International Business Machines Corporation Apparatus and method to optimize revenue realized under multiple service level agreements
US7388248B2 (en) * 2004-09-01 2008-06-17 Micron Technology, Inc. Dielectric relaxation memory
US7499419B2 (en) * 2004-09-24 2009-03-03 Fortinet, Inc. Scalable IP-services enabled multicast forwarding with efficient resource utilization
US7808904B2 (en) 2004-11-18 2010-10-05 Fortinet, Inc. Method and apparatus for managing subscriber profiles
US7974223B2 (en) 2004-11-19 2011-07-05 Corrigent Systems Ltd. Virtual private LAN service over ring networks
US8116292B2 (en) * 2005-04-29 2012-02-14 Interdigital Technology Corporation MAC multiplexing and TFC selection procedure for enhanced uplink
TWI380651B (en) 2005-04-29 2012-12-21 Interdigital Tech Corp Mac multiplexing and tfc selection procedure for enhanced uplink
US7515536B2 (en) * 2005-07-11 2009-04-07 Corrigent Systems Ltd. Transparent transport of fibre channel traffic over packet-switched networks
US8730982B2 (en) * 2005-11-10 2014-05-20 Broadcom Corporation Scheduling of data transmission with minimum and maximum shaping of flows in a network device
US7983150B2 (en) * 2006-01-18 2011-07-19 Corrigent Systems Ltd. VPLS failure protection in ring networks
US7808931B2 (en) * 2006-03-02 2010-10-05 Corrigent Systems Ltd. High capacity ring communication network
US20070242676A1 (en) * 2006-04-13 2007-10-18 Corrigent Systems Ltd. Interface between a synchronous network and high-speed ethernet
US7756134B2 (en) 2006-05-02 2010-07-13 Harris Corporation Systems and methods for close queuing to support quality of service
US20070258445A1 (en) * 2006-05-02 2007-11-08 Harris Corporation Systems and methods for protocol filtering for quality of service
US7894509B2 (en) * 2006-05-18 2011-02-22 Harris Corporation Method and system for functional redundancy based quality of service
US7593400B2 (en) * 2006-05-19 2009-09-22 Corrigent Systems Ltd. MAC address learning in a distributed bridge
US7856012B2 (en) 2006-06-16 2010-12-21 Harris Corporation System and methods for generic data transparent rules to support quality of service
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
US8516153B2 (en) 2006-06-16 2013-08-20 Harris Corporation Method and system for network-independent QoS
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
EP2039082B1 (de) 2006-07-06 2010-11-17 Interdigital Technology Corporation Drahtloses kommunikationsverfahren zur auswahl einer erweiterten uplink-transportformatkombination mittels einstellung von ablaufsteuerungsnutzdaten auf die höchste übertragbare nutzdatenmenge
US20080013559A1 (en) * 2006-07-14 2008-01-17 Smith Donald L Systems and methods for applying back-pressure for sequencing in quality of service
US8300653B2 (en) 2006-07-31 2012-10-30 Harris Corporation Systems and methods for assured communications with quality of service
US7660303B2 (en) 2006-08-22 2010-02-09 Corrigent Systems Ltd. Point-to-multipoint functionality in a bridged network
US7738392B2 (en) * 2006-09-20 2010-06-15 At&T Intellectual Property I, L.P. Methods and apparatus to provide services over integrated broadband communication systems
US7660234B2 (en) * 2006-09-22 2010-02-09 Corrigent Systems Ltd. Fault-tolerant medium access control (MAC) address assignment in network elements
US11120406B2 (en) * 2006-11-16 2021-09-14 Comcast Cable Communications, Llc Process for abuse mitigation
WO2008091183A1 (en) * 2007-01-26 2008-07-31 Telefonaktiebolaget Lm Ericsson (Publ) A method and apparatus for providing network resources to content providers
CN101141284B (zh) * 2007-01-31 2011-01-19 中兴通讯股份有限公司 业务带宽配置方法和网管系统
US20080240168A1 (en) * 2007-03-31 2008-10-02 Hoffman Jeffrey D Processing wireless and broadband signals using resource sharing
CN101459660A (zh) * 2007-12-13 2009-06-17 国际商业机器公司 用于集成多个威胁安全服务的方法及其设备
FR2931968B1 (fr) * 2008-06-02 2012-11-30 Alcatel Lucent Procede et equipement de stockage de donnees en ligne
US8031627B2 (en) * 2008-07-10 2011-10-04 At&T Intellectual Property I, L.P. Methods and apparatus to deploy and monitor network layer functionalities
US7929440B2 (en) * 2009-02-20 2011-04-19 At&T Intellectual Property I, Lp Systems and methods for capacity planning using classified traffic
US8452835B2 (en) * 2009-12-23 2013-05-28 Citrix Systems, Inc. Systems and methods for object rate limiting in multi-core system
WO2011095205A1 (en) * 2010-02-02 2011-08-11 Telefonaktiebolaget L M Ericsson (Publ) Traffic differentiation in a transport network
WO2011143094A2 (en) 2010-05-09 2011-11-17 Citrix Systems, Inc. Systems and methods for allocation of classes of service to network connections corresponding to virtual channels
US8699484B2 (en) 2010-05-24 2014-04-15 At&T Intellectual Property I, L.P. Methods and apparatus to route packets in a network
US9491085B2 (en) 2010-05-24 2016-11-08 At&T Intellectual Property I, L.P. Methods and apparatus to route control packets based on address partitioning
CN102624560B (zh) * 2012-03-12 2016-06-29 深圳市天威视讯股份有限公司 一种分布式部署、集中式控制的有线电视网络宽带接入系统
US9338105B2 (en) * 2013-09-03 2016-05-10 Broadcom Corporation Providing oversubscription of pipeline bandwidth
US8966074B1 (en) * 2013-09-13 2015-02-24 Network Kinetix, LLC System and method for real-time analysis of network traffic
US10003266B2 (en) 2016-07-27 2018-06-19 Dell Products, Lp Configurable multi-rail voltage regulation with coupled inductor power steering
CN109614345B (zh) * 2018-12-18 2021-02-12 北京神州绿盟信息安全科技股份有限公司 一种协议层之间通信的内存管理方法及装置
US11509590B2 (en) * 2021-02-17 2022-11-22 Juniper Networks, Inc. Determining network device statistics associated with fast counters and slow counters

Family Cites Families (40)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB1499184A (en) * 1974-04-13 1978-01-25 Mathematik & Datenverarbeitung Circuit arrangement for monitoring the state of memory segments
JPH02230352A (ja) * 1988-09-06 1990-09-12 American Teleph & Telegr Co <Att> サービス制御方法およびそのための通信網オペレーティング・システム
EP0594196B1 (de) * 1992-10-22 1999-03-31 Cabletron Systems, Inc. Aufsuchen von Adressen bei Paketübertragung mittels Hashing und eines inhaltsadressierten Speichers
US5619650A (en) * 1992-12-31 1997-04-08 International Business Machines Corporation Network processor for transforming a message transported from an I/O channel to a network by adding a message identifier and then converting the message
EP0689748B1 (de) * 1993-03-20 1998-09-16 International Business Machines Corporation Verfahren und vorrichtung zur herausarbeitung der vermittlungsinformation aus dem kopfteil eines protokolls
US5974457A (en) * 1993-12-23 1999-10-26 International Business Machines Corporation Intelligent realtime monitoring of data traffic
DE69428267D1 (de) * 1994-04-28 2001-10-18 Hewlett Packard Co Erzeugung von Kanalsidentifizierer
US5539729A (en) * 1994-12-09 1996-07-23 At&T Corp. Method for overload control in a packet switch that processes packet streams having different priority levels
US5764895A (en) * 1995-01-11 1998-06-09 Sony Corporation Method and apparatus for directing data packets in a local area network device having a plurality of ports interconnected by a high-speed communication bus
US5857075A (en) * 1995-01-11 1999-01-05 Sony Corporation Method and integrated circuit for high-bandwidth network server interfacing to a local area network
US5943693A (en) * 1995-03-29 1999-08-24 Intel Corporation Algorithmic array mapping to decrease defect sensitivity of memory devices
US5659794A (en) * 1995-03-31 1997-08-19 Unisys Corporation System architecture for improved network input/output processing
US5684797A (en) * 1995-04-05 1997-11-04 International Business Machines Corporation ATM cell multicasting method and apparatus
US5805805A (en) * 1995-08-04 1998-09-08 At&T Corp. Symmetric method and apparatus for interconnecting emulated lans
US5917822A (en) * 1995-11-15 1999-06-29 Xerox Corporation Method for providing integrated packet services over a shared-media network
CA2186795A1 (en) * 1995-11-17 1997-05-18 Cormac John Sreenan Resource management system for a broadband multipoint bridge
US5751709A (en) 1995-12-28 1998-05-12 Lucent Technologies Inc. Adaptive time slot scheduling apparatus and method for end-points in an ATM network
US6021263A (en) * 1996-02-16 2000-02-01 Lucent Technologies, Inc. Management of ATM virtual circuits with resources reservation protocol
US5754530A (en) * 1996-04-18 1998-05-19 Northern Telecom Limited Flow control of ABR traffic in ATM networks
US5768527A (en) * 1996-04-23 1998-06-16 Motorola, Inc. Device, system and method of real-time multimedia streaming
US5748630A (en) * 1996-05-09 1998-05-05 Maker Communications, Inc. Asynchronous transfer mode cell processing system with load multiple instruction and memory write-back
US5912892A (en) * 1996-08-30 1999-06-15 Hughes Electronics Corporation Method of providing fractional path service on an ATM network
US6028842A (en) * 1996-12-23 2000-02-22 Nortel Networks Corporation Dynamic traffic conditioning
GB2322761B (en) * 1997-01-17 1999-02-10 Donal Casey Method for selecting virtual channels based on address p;riority in an asynchronous transfer mode device
US5836928A (en) * 1997-02-04 1998-11-17 Gerber; Allen Spinal fluid collection system
US5974462A (en) * 1997-03-28 1999-10-26 International Business Machines Corporation Method and apparatus for controlling the number of servers in a client/server system
US5909441A (en) * 1997-04-11 1999-06-01 International Business Machines Corporation Apparatus and method for reducing frame loss in route switched networks
US6223292B1 (en) * 1997-07-15 2001-04-24 Microsoft Corporation Authorization systems, methods, and computer program products
US6104700A (en) * 1997-08-29 2000-08-15 Extreme Networks Policy based quality of service
US6154776A (en) * 1998-03-20 2000-11-28 Sun Microsystems, Inc. Quality of service allocation on a network
US6201971B1 (en) * 1998-03-26 2001-03-13 Nokia Mobile Phones Ltd. Apparatus, and associated method for controlling service degradation performance of communications in a radio communication system
US6073175A (en) * 1998-04-27 2000-06-06 International Business Machines Corporation Method for supporting different service levels in a network using web page content information
US6144996A (en) * 1998-05-13 2000-11-07 Compaq Computer Corporation Method and apparatus for providing a guaranteed minimum level of performance for content delivery over a network
US6425067B1 (en) * 1998-06-27 2002-07-23 Intel Corporation Systems and methods for implementing pointer management
US6311212B1 (en) * 1998-06-27 2001-10-30 Intel Corporation Systems and methods for on-chip storage of virtual connection descriptors
US6272544B1 (en) * 1998-09-08 2001-08-07 Avaya Technology Corp Dynamically assigning priorities for the allocation of server resources to completing classes of work based upon achievement of server level goals
US6452923B1 (en) * 1998-12-31 2002-09-17 At&T Corp Cable connected wan interconnectivity services for corporate telecommuters
US6147975A (en) * 1999-06-02 2000-11-14 Ac Properties B.V. System, method and article of manufacture of a proactive threhold manager in a hybrid communication system architecture
US6195697B1 (en) * 1999-06-02 2001-02-27 Ac Properties B.V. System, method and article of manufacture for providing a customer interface in a hybrid network
US6343078B1 (en) * 2000-05-12 2002-01-29 3Com Corporation Compression of forwarding decisions in a network device

Also Published As

Publication number Publication date
EP1063818B1 (de) 2006-08-09
EP1063818A3 (de) 2003-07-23
HK1033872A1 (en) 2001-09-28
EP1063818A2 (de) 2000-12-27
EP1718011B1 (de) 2009-08-05
ATE438989T1 (de) 2009-08-15
DE60042709D1 (de) 2009-09-17
EP1718011A3 (de) 2007-03-07
US6625650B2 (en) 2003-09-23
JP2001053789A (ja) 2001-02-23
ATE336127T1 (de) 2006-09-15
EP1718011A2 (de) 2006-11-02
US20030061338A1 (en) 2003-03-27
DE60029879D1 (de) 2006-09-21

Similar Documents

Publication Publication Date Title
DE60029879T2 (de) System zur mehrschichtigen Bereitstellung in Computernetzwerken
DE60024228T2 (de) Dynamische zuweisung verkehrsklassen an einer prioritätswarteschlange in einer paketbeförderungsvorrichtung
DE60034353T2 (de) Regelbasierte ip datenverarbeitung
DE69926109T2 (de) Paketversendegerät mit einer Flussnachweistabelle
DE69929268T2 (de) Verfahren und System zur Überwachung und Steuerung der Netzzugriffe
DE60221261T2 (de) Verfahren und anordnung in einem ip-netzwerk
DE69812777T2 (de) Verbindung von Ethernetkompatiblen Netzwerken
DE69835400T2 (de) Netzbelastungsausgleich für Mehrrechner Anbieter
DE60114097T2 (de) Verfahren und System zur Verbesserung der Netzleistungsfähigkeit unter Verwendung eines leistungssteigernden Proxies
DE60109809T2 (de) Verfahren und system für betriebsmittelreservierungen in einem multicast-netzwerk
DE602004011689T2 (de) Verfahren und System zur Handhabung der Übermittlung von Inhalten in Kommunikationsnetzen
DE60216918T2 (de) Verfahren und computersystem zur auswahl eines randservercomputers
DE60116501T2 (de) Mehrfach-dienst-benutzung der netzverbindungsfähigkeit unter benutzer-zu-netzwerk-schnittstellenzeichengabe
US7003578B2 (en) Method and system for controlling a policy-based network
DE60217253T2 (de) Centrale und regelbasierte Verkehrsverwaltung
DE69827351T2 (de) Mehrfach-virtuelle Wegsucher
DE69917555T2 (de) Vermittlungseinrichtung mit mehrstufiger Warteschlangeschema
DE202015009244U1 (de) Routing von Datenverkehr innerhalb von und zwischen autonomen Systemen
DE10205108A1 (de) System und Verfahren zum Zugreifen auf Softwarekomponenten in einer verteilten Netzwerkumgebung
DE112018003482T5 (de) Serveranfrageverwaltung
DE10123821A1 (de) Geschaltete Ethernet-Netzwerke
EP1133112B1 (de) Verfahren zum Verteilen einer Datenverkehrslast eines Kommunikationsnetzes und Kommunikationsnetz zur Realisierung des Verfahrens
DE60303691T2 (de) Verfahren und System zu richtliniengestützten Steuerung in einem verteilten Netzwerk
DE10297645B4 (de) Verfahren und Einrichtung zum Lastteilen und zur Datenverteilung in Servern
DE102007038964A1 (de) Verfahren und Vorrichtung zum Verarbeiten von Netzwerkdaten

Legal Events

Date Code Title Description
8364 No opposition during term of opposition