DE60035091T2 - Telekommunikationsvermittlungstelle und Verfahren - Google Patents

Telekommunikationsvermittlungstelle und Verfahren Download PDF

Info

Publication number
DE60035091T2
DE60035091T2 DE60035091T DE60035091T DE60035091T2 DE 60035091 T2 DE60035091 T2 DE 60035091T2 DE 60035091 T DE60035091 T DE 60035091T DE 60035091 T DE60035091 T DE 60035091T DE 60035091 T2 DE60035091 T2 DE 60035091T2
Authority
DE
Germany
Prior art keywords
protocol data
data unit
queues
scheduling
service
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
DE60035091T
Other languages
English (en)
Other versions
DE60035091D1 (de
Inventor
Julian J. Kanata Cheesman
Norman A. Hull Lyon
Stacy S. Kanata Nichols
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.)
Nortel Networks Ltd
Original Assignee
Nortel Networks Ltd
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 Nortel Networks Ltd filed Critical Nortel Networks Ltd
Publication of DE60035091D1 publication Critical patent/DE60035091D1/de
Application granted granted Critical
Publication of DE60035091T2 publication Critical patent/DE60035091T2/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/60Software-defined switches
    • H04L49/606Hybrid ATM switches, e.g. ATM&STM, ATM&Frame Relay or ATM&IP
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/64Hybrid switching systems
    • H04L12/6402Hybrid switching fabrics
    • 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
    • H04L12/00Data switching networks
    • H04L12/54Store-and-forward switching systems 
    • H04L12/56Packet switching systems
    • H04L12/5601Transfer mode dependent, e.g. ATM
    • H04L2012/5638Services, e.g. multimedia, GOS, QOS
    • H04L2012/5646Cell characteristics, e.g. loss, delay, jitter, sequence integrity
    • H04L2012/5651Priority, marking, classes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/54Store-and-forward switching systems 
    • H04L12/56Packet switching systems
    • H04L12/5601Transfer mode dependent, e.g. ATM
    • H04L2012/5678Traffic aspects, e.g. arbitration, load balancing, smoothing, buffer management
    • H04L2012/5679Arbitration or scheduling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/54Store-and-forward switching systems 
    • H04L12/56Packet switching systems
    • H04L12/5601Transfer mode dependent, e.g. ATM
    • H04L2012/5678Traffic aspects, e.g. arbitration, load balancing, smoothing, buffer management
    • H04L2012/5681Buffer or queue management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/64Hybrid switching systems
    • H04L12/6418Hybrid transport
    • H04L2012/6464Priority
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/64Hybrid switching systems
    • H04L12/6418Hybrid transport
    • H04L2012/6489Buffer Management, Threshold setting, Scheduling, Shaping

Description

  • Die vorliegende Erfindung bezieht sich auf Telekommunikations-Vermittlungen und Verfahren für deren Betrieb, und sie betrifft insbesondere, jedoch nicht ausschließlich, Vermittlungen und Verfahren zur Bereitstellung von Diensten, wie zum Beispiel der asynchronen Übertragungs-Betriebsart (ATM), Frame-Relay (FR) und Internet-Protokoll (IP).
  • Das Internet treibt die Zunahme bei den Anforderungen an Netzbetreiber, verbindungslose Protokolle, wie zum Beispiel IP, in ihren Netzwerken zu unterstützen. IP scheint die vorherrschende Technologie für Netzwerk-Anwendungen zu sein, doch hat IP traditionell lediglich die Zustellung besten Bemühens unterstützt. In letzterer Zeit wurden Initiativen der Internet Engineering Task-Force (IETF) auf die Verbesserung der Fähigkeit von IP gerichtet, Dienst-Klassen-(CoS-) und Verkehrs-Engineering-Fähigkeiten einzufügen. Beispiele von zwei derartigen Initiativen sind die Multiprotokoll-Etikettvermittlung (MPLS) und Differenzierte Dienste. MPLS wurde zur Unterstützung von bedingungsbasierter Routenführung als eine Betriebsart zur Unterstützung der vorhandenen dynamischen Sprungabschnitt-für-Sprungabschnitt-(hop by hop-)Routenführung definiert. Das vorgeschlagene bedingungsbasierte Routenführungs-Etikett-Verteilungs-Protokoll (CR-LDP) ermöglicht es, dass Verkehrs-Parameter und die Routenführungs-Topologie pro Datenfluss festgelegt wird. Differenzierte Dienste definieren, wie ein Paket markiert ist, um eine priorisierte Dienst-Klassen-Behandlung an jedem Sprungabschnitt oder Hop zu erhalten. Typischerweise wird dies direkt in eine priorisierte Warteschlangen-Behandlung in einem Router umgesetzt.
  • Die vorstehend erläuterten IP-Erweiterungen ergeben Fähigkeiten, die ähnlich denen sind, die von der Technologie der asynchronen Übertragungs-Betriebsart (ATM) und Frame-Relay (FR) geboten wird. Tatsächlich erwägen einige Netzbetreiber den Einsatz von FR-, ATM-, und IP-Kommunikations-Diensten. Grundlegende Unterschiede zwischen den ATM-, FR-, IP-Protokollen haben jedoch unterschiedliche Vermittlungs-Systeme erfordert, was zu getrennten Netzwerken für jeden Dienst führte.
  • Die US 5,831,980 beschreibt eine gemeinsam genutzte Speicher-Struktur für ATM-Vermittlungen, bei der Speichereinrichtungen zur Bereitstellung einer hierarchischen Speicher-Struktur an jedem Vermittlungs-Modul verwendet werden.
  • Die US 5,555,265 beschreibt ein Vermittlungspfad-Einstellsystem, das in Vermittlungs-Ausrüstungen für den Austausch einer eine feste Länge aufweisenden Zelle in ATM-Netzwerken verwendet wird.
  • Die US 5,793,747 beschreibt eine Ereignis-gesteuerte Ablaufsteuerung oder einen Scheduler und ein Verfahren zur Unterstützung von mehrfachen Dienste-Kategorien in einem Kommunikations-Netzwerk.
  • Die US 5,850,399 beschreibt ein Verfahren zur fairen und effizienten Ablaufsteuerung der Übertragung eines Paketes von einer Vielzahl von Sitzungen auf ein Netzwerk
  • Die WO 99/00944 beschreibt einen Mechanismus zum Paket-Feldersatz in einem mehrschichtigen verteilten Netzwerk.
  • Die EP 0854614 beschreibt ein programmierbares Konkurrenz-Bereinigungssystem zur Bestimmung der Priorität der Ports einer Netzwerk-Vermittlung.
  • Die EP 0901307 beschreibt eine Vorrichtung und ein Verfahren zur Formung des ATM-Zellenverkehrs, der auf eine virtuelle Pfadverbindung in einem ATM-Netzwerk ausgesandt wird.
  • Gemäß der vorliegenden Erfindung wird eine Telekommunikations-Vermittlung zur Vermittlung von Protokolldaten-Einheiten zwischen Kommunikations-Verbindungsstrecken, die die Telekommunikations-Vermittlung mit einem Kommunikations-Netzwerk verbinden, gemäß Anspruch 1 geschaffen.
  • Ausführungsbeispiele der Erfindung ermöglichen es einem Betreiber, Klassenbasierte, in Warteschlangen angeordnete Dienste und Datenfluss-basierte, in Warteschlangen angeordnete Dienste auf der gleichen Vermittlung zu unterstützen.
  • In zweckmäßiger Weise schließt die Vielzahl von Warteschlangen eine andere Gruppe von Warteschlangen für eine Datenfluss-basierte und Klassen-basierte Teil-Datenstrom-Warteschlangen-Bildung eines dritten Teils der Protokolldaten-Einheiten ein, deren Routen durch die Vermittlungsstruktur gelenkt werden. Weiterhin schließt die Vielzahl von Ablaufsteuerungen weiterhin zweckmäßigerweise eine dritte Ablaufsteuerung ein, die der anderen Gruppe von Warteschlangen zugeordnet ist, und die erste Ablaufsteuerung ist weiterhin der dritten Ablaufsteuerung zugeordnet. Durch diese Zuordnung ist die erste Ablaufsteuerung betreibbar, um eine eine Ablaufsteuerung der zweiten und dritten Teile an die zweite Ablaufsteuerung zu schaffen. Diese Merkmale ermöglichen es einem Netzbetreiber, einen Dienst zu unterstützen, der eine Kombination einer Klassen-basierten Warteschlangen-Bildung und einer Datenfluss-basierten Warteschlangen-Bildung erfordert. Beispielsweise ermöglicht es dieses Merkmal einem Netzbetreiber, eine neue Art eines virtuellen privaten Netzwerk-(VPN-)Dienstes zu schaffen. Dieser Dienst würde es ermöglichen, dass eine Menge an Bandbreite für ein VPN garantiert wird, während Dienst-Klassen innerhalb des VPN jeweils ein relativer Anteil der garantierten Bandbreite zugeteilt werden könnte.
  • Zweckmäßigerweise ist die zweite Ablaufsteuerung eine Prioritäts-Ablaufsteuerung, und die ersten und dritten Ablaufsteuerungen sind Ablaufsteuerungen für eine bewertete faire Warteschlangen-Bildung.
  • Zweckmäßigerweise schließt die Telekommunikations-Vermittlung weiterhin eine umkonfigurierbare Durchschalteinrichtung ein, die zumindest eine Warteschlange der Vielzahl von Warteschlangen und eine Ablaufsteuerung der Vielzahl von Ablaufsteuerungen in einer umkonfigurierbaren Weise verbindet, wodurch eine Zuordnung einer Ablaufsteuerung zu einer Warteschlange selektiv änderbar ist. Dieses Merkmal ermöglicht es einem Netzbetreiber, der die Vermittlung betreibt, die Vermittlung umzukonfigurieren, um weitere Dienste zu unterstützen, Änderungen an vorhandenen Diensten durchzuführen und neue Dienste nach Bedarf hinzuzufügen.
  • Zweckmäßigerweise umfasst die Vielzahl von Ablaufsteuerungen Ablaufsteuerungs-Module, von denen jedes eine Prioritäts-Ablaufsteuerung und eine bewertete faire Warteschlangen-Ablaufsteuerung einschließt.
  • Die Erfindung ergibt weiterhin ein Verfahren zur Vermittlung von Etiketteingekapselten Protokolldaten-Einheiten in einer Telekommunikations-Vermittlung, die mit einem Kommunikations-Netzwerk über Kommunikations-Verbindungsstrecken verbunden ist, gemäß Anspruch 6.
  • In vorteilhafter Weise ergeben die verschiedenen Gesichtspunkte und Ausführungsformen der vorliegenden Erfindung eine Verbesserung der Betriebsleistung von Telekommunikations-Vermittlungen.
  • Ausführungsbeispiele der Erfindung werden nunmehr lediglich in Form eines Beispiels unter Bezugnahme auf die Zeichnungen beschrieben, in denen:
  • 1 ein funktionelles Blockschaltbild einer in der Technik bekannten generischen Vermittlung ist;
  • 2 ein funktionelles Blockschaltbild eines typischen Ausgangs-Ports eines Routers für Differenzierte Dienste nach dem Stand der Technik ist;
  • 3 ein funktionelles Blockschaltbild eines typischen Ausgangs-Ports einer in der Technik bekannten ATM-Vermittlung ist;
  • 4 ein funktionelles Blockschaltbild einer Telekommunikations-Vermittlung gemäß einer bevorzugten Ausführungsform der vorliegenden Erfindung ist;
  • 5 ein funktionelles Blockschaltbild ist, das die Vermittlung nach 4 in einer auseinandergefalteten Ansicht zeigt;
  • 6 ein funktionelles Blockschaltbild des Austritts-Prozessors nach 5 ist;
  • 7 ein Ablaufdiagramm eines Teils der Aufgabe zum Einreihen in eine Warteschlange nach 6 ist;
  • 8 ein funktionelles Blockschaltbild der Struktur von Warteschlangen und Ablaufsteuerungen nach 6 ist; und
  • 9 die umkonfigurierbare Durchschalteinrichtung zeigt, die zum Durchschalten der Warteschlangen und Ablaufsteuerungen nach 6 verwendet wird.
  • 1 ist ein funktionelles Blockschaltbild einer generischen Vermittlung, wie sie in der Technik bekannt ist. Ein Router zeigt ebenfalls die gleiche Funktionalität auf der Ebene der Einzelheiten, die in 1 gezeigt ist. Die Vermittlung 10 schließt Eingangs-Ports 12, 14 ein, die mit einer Vermittlungsstruktur 16 verbunden sind. Die Vermittlungsstruktur ist mit Ausgangs-Ports 18, 20 verbunden. Der Eingangs-Port 12 schließt eine Weiterleitungs-Einrichtung 22 ein, die mit ihrem Eingang verbunden ist. Der Ausgangs-Port 18 schließt eine mit seinem Eingang verbundene Warteschlangen-Einreihungs-Einrichtung 24, Warteschlangen 26, die mit der Einreihungs-Einrichtung 24 verbunden sind, und Ablaufsteuerungen 28 ein, die mit den Warteschlangen 26 verbunden sind. Die Eingangs-Ports 12, 14 sind hinsichtlich ihrer Struktur identisch. In gleicherweise haben die Ausgangs-Ports 18, 20 die gleiche Struktur.
  • ATM-Zellen in Fall einer ATM-Vermittlung oder IP-Pakete im Fall eines IP-Routers kommen an dem Eingangs-Port an und werden an die Vermittlungsstruktur 16 weitergeleitet, wo sie an den passenden Ausgangs-Port 18, 20 gelenkt werden. Nachfolgend werden ATM-Zellen und IP-Pakete zusammen als Protokolldaten-Einheiten (PDUs) bezeichnet. Die Weiterleitungs-Einrichtung 22 führt ein Nachschlagen für den passenden Ausgangs-Port für jede PDU aus. Im Fall einer Vermittlung, die verbindungsorientierte PDUs abwickelt, hängt das Nachschlagen in einer Tabelle von einer Verbindungs-Identifikation (CI) ab. Im Fall eines Routers, der verbindungslose PDUs abwickelt, hängt das Nachschlagen von einer Ziel-Adresse ab, die in der PDU enthalten ist. Allgemein kapselt die Weiterleitungs-Einrichtung 22 die PDU mit einem Kopffeld ein, das die Information aus dem Nachschlagen enthält und sie leitet die eingekapselte PDU an die Vermittlungstruktur 16 weiter.
  • 2 ist ein funktionelles Blockschaltbild eines typischen Ausgangs-Ports 18' eines in der Technik bekannten Routers zur Routenführung von für Differenzierte Dienste markierten IP-Paketen. Anhand der 2 wird die Struktur und die Betriebsweise des Ausgangs-Ports 18' beschrieben. Der Ausgangs-Port 18' schließt eine Warteschlangen-Einreihungs-Einrichtung 24', die an seinem Eingang angeschlossen ist, einen Satz von Warteschlangen 26', die mit der Einreihungs-Einrichtung 24' verbunden sind, und eine Ablaufsteuerung 28' ein, die mit dem Satz von Warteschlangen 26' verbunden ist. Die Einreihungs-Einrichtung 24' schließt einen Auswahl-Block 30 ein. Aus Gründen der Einfachheit schließt bei diesem Beispiel der Satz von Warteschlangen 26' drei Warteschlangen 32, 34 und 36 ein. Die Ablaufsteuerung 28' schließt eine bewertete faire Warteschlangen-(WFQ-)Ablaufsteuerung 38 ein. Im Betrieb empfängt der Ausgangs-Port 18' eine eingekapselte PDU 40 von der Vermittlungsstruktur 16. Die eingekapselte PDU 40 hat ein Kopffeld, das ein Etikett (L) enthält, das eine Klasse spezifiziert, zu der die PDU gehört. Die Einreihungs-Einrichtung 24' überprüft das Kopffeld der eingekapselten PDU. Der Auswahl-Block 30 bestimmt, in welche der Warteschlangen 32, 34, 36 die PDU gesandt werden sollte, auf der Grundlage der Klasse der PDU. Alternativ könnte die Weiterleitungs-Einrichtung 22 diese Funktion der Einreihung bereitstellen, das heißt die Einreihung kann an der Eingangs- oder Ausgangs-Seite der Vermittlung oder des Routers erfolgen. Typischerweise gibt es eine Warteschlange pro Klasse. Die Ablaufsteuerung 38 bestimmt, von welcher Warteschlange 32, 34, 36 die nächste auszusendende PDU ausgewählt wird. PDUs werden aus den Warteschlangen in einer FIFO-Basis ausgewählt, das heißt die erste eingeleitete PDU wird als erste ausgeleitet.
  • Typischerweise wird eine WFQ-Ablaufsteuerung verwendet. Eine relative Wertigkeit wird jeder der Ausgangs-Warteschlangen 32, 34, 36 zugeordnet. Jedem angebotenen Dienst ist eine Warteschlange zugeordnet, so dass jeder Dienst einen Anteil der Gesamt-Bandbreite erhält, die die Warteschlangen 32, 34, 36 erhalten. Dieser Anteil hängt von der relativen Wertigkeit ab, die der speziellen Warteschlange zugeordnet ist. Auf diese Weise ergibt eine differenzierte Dienste-Markierung Dienst-Klassen. Die Zustellung der PDUs erfolgt jedoch auf einer Grundlage besten Bemühens für alle Dienst-Klassen. Weiterhin stehen, obwohl einem Dienst ein relativer Anteil der Ausgangs-Port-Bandbreite zugeordnet ist, Pakete des gleichen Dienst-Typs, die von unterschiedlichen Quellen ankommen, im Wettbewerb für ihren Anteil dieser Zuteilung. Damit wird einem Dienste-Teilnehmer kein bestimmter Anteil dieser Zuteilung garantiert.
  • Ein Beispiel eines Internet-Dienstes, der mit einem Netzwerk von derartigen für differenzierte Dienste kompatiblen Routern bereitgestellt werden könnte, ist ein Klassen-basiertes virtuelles privates Netzwerk (CB-VPN). Beispielsweise könnten drei Klassen eines VPN-Dienstes bereitgestellt werden, die mit Gold, Silber und Bronze bezeichnet sind. Die Gold-Klasse des VPN-Dienstes würde einen größeren Anteil der Bandbreite als die Silber-Klasse des VPN-Dienstes haben, und in gleicher Weise würde der Silber-Klasse-VPN-Dienst einen größeren Teil der Bandbreite haben als der Bronze-Klasse-VPN-Dienst. In dem Netzwerk würden PDUs von jeder Dienst-Klasse (das heißt Gold, Silber, Bronze) mit PDUs der gleichen Klasse in Warteschlangen angeordnet werden. Beispielsweise würden PDUs von dem Gold-Klasse-VPN-Dienst mit anderen PDUs der gleichen Klasse in die Warteschlange 32 nach 2 eingereiht werden. Den Warteschlangen 32, 34, 36 ist eine relative Wertigkeit zugeordnet, was zu einem relativen Anteil der Bandbreite führt, doch erfolgt die Zustellung der PDUs für alle Dienst-Klassen auf einer Grundlage besten Bemühens. Das heißt, dass keine Menge an Bandbreite garantiert wird. Ein Kunde würde Teilnehmer an einer der VPN-Dienste-Klassen sein, und ein bestimmtes VPN (das heißt VPNx) würde diesem Kunden zugeordnet. Die PDUs von unterschiedlichen speziellen VPNs in der gleichen Dienst-Klasse würden für ihren Anteil von Bandbreite in dieser Klasse im Wettbewerb stehen. Somit könnte der Netzbetreiber, der das CB-VPC seinen Kunden bereitstellt, eine Dienstgüte-Vereinbarung (SLA) treffen, die die Verbindung durch das Netzwerk, die Klasse des VPN-Dienstes und eine bestimmte Menge an Bandbreite spezifiziert, doch könnte das Netzwerk diese Bandbreite für den Kunden nicht garantieren.
  • Verbindungsorientierte Protokolle, wie zum Beispiel Frame-Relay und ATM ergaben traditionell QoS- und Verbindungs-basierte Verkehrs-Engineering-Fähigkeiten in dem Netzwerk des Netzbetreibers. Im Fall von ATM schließt die QoS vier Dienst-Typen ein, die sich allgemein auf Garantie beziehen, die dem Benutzer bezüglich der Zellen-Verzögerung, der Bandbreite und des Zellen-Verlust-Verhältnisses gegeben werden. Diese Dienst-Typen sind: konstante Bit-Rate (CBR), veränderliche Bit-Rate (VBR), verfügbare Bit-Rate (ABR) und nicht spezifizierte Bit-Rate (UBR). Der spezielle Typ des Dienstes wird zwischen dem Benutzer und der Netzwerk-Verbindungs-Zulassungs-Steuerung (CAC) zu der Zeit ausgehandelt, zu der die Verbindung aufgebaut wird. Eine spezielle Dienst-Typ-Anforderung für eine Verbindung kann zum Zeitpunkt des Verbindungs-Aufbaus verweigert werden, wenn das Netzwerk die erforderliche Menge an Bandbreite nicht bereitstellen kann. Sobald eine Verbindung jedoch aufgebaut wurde, wird die Menge an Bandbreite, die für die Verbindung verfügbar ist durch das Netzwerk garantiert.
  • 3 ist ein Blockschaltbild eines typischen Ausgangs-Ports 18'' einer in der Technik bekannten ATM-Vermittlung. Anhand der 3 wird die Struktur und die Betriebsweise des Ausgangs-Ports 18'' beschrieben. Der Ausgangs-Port 18'' schließt eine Einreihungs-Einrichtung 24'', die an seinem Eingang angeschlossen ist, einen Satz von Warteschlangen 26'', die mit der Einreihung-Einrichtung 24'' verbunden sind, und eine Ablaufsteuerung 28'' ein, die mit dem Satz von Warteschlangen 26'' verbunden ist. Die Einreihungs-Einrichtung 24'' schließt einen Auswahl-Block 42 ein. Der Satz von Warteschlangen 26'' schließt Verbindungs-Warteschlangen 44, 46 und zusammengefügte Verbindungs-Warteschlangen 48, 50 ein, die eine CBR-Warteschlange 52 einschließen. Es kann viele Verbindungs-Warteschlangen geben, doch sind aus Gründen der Einfachheit nur zwei gezeigt. Die Verbindungs-Warteschlangen dienen zur Anordnung von PDUs in Warteschlangen auf einer Grundlage pro Verbindung, während die zusammengefügten Verbindungs-Warteschlangen zur Zusammenfügung von PDUs des gleichen QoS-Typ (beispielsweise CBR, VBR, ABR, UBR) von unterschiedlichen Verbindungen dienen. Typischerweise würde es eine zusammengefügte Verbindungs-Warteschlange für jeden QoS-Typ geben. Die CBR-Warteschlange 52 dient zur Einreihung aller der PDUs vom CBR-Typ, die in den Ausgangs-Port 18'' fließen, in eine Warteschlange. Eine Verbindung wird einer Warteschlange zugeordnet, wenn die Verbindung aufgebaut wird. Die Ablaufsteuerung 28'' schließt drei Ebenen von Ablaufsteuerungen ein. Die erste Ebene umfasst eine Prioritäts-Ablaufsteuerung 58, die mit der CBR-Warteschlange 52 verbunden ist, die die höchste Priorität aufweist. Das heißt, die Prioritäts-Ablaufsteuerung 58 versorgt PDUs von der CBR-Warteschlange 52 mit Diensten, bevor irgendeine der anderen Warteschlangen mit Diensten versorgt wird. Die zweite Ebene umfasst eine WFQ-Ablaufsteuerung 56, die mit den zusammengefügten Verbindungs-Warteschlangen 48, 50 und der Prioritäts-Ablaufsteuerung 58 verbunden ist. Die dritte Ebene umfasst eine weitere WFQ-Ablaufsteuerung 54, die mit den Verbindungs-Warteschlangen 44, 46 und der WFQ-Ablaufsteuerung 56 verbunden ist.
  • Im Betrieb kommt eine eingekapselte PDU 60 an dem Ausgangs-Port 18'' von der Vermittlungsstruktur 16 an. Die PDU 60 schließt eine Verbindungs-Identifikation (CI) ein, der ein Kontext zugeordnet ist. Der Auswahl-Block 42 verwendet diesen Kontext, um festzustellen, in welche der Warteschlangen 4452 die PDU gesandt werden sollte. Die Prioritäts-Ablaufsteuerung 58 bestimmt, ob die CBR-Warteschlange 52 oder die WFQ-Ablaufsteuerung 56 mit Diensten versorgt werden sollte. Die WFQ-Ablaufsteuerung 56 wird immer dann mit Diensten versorgt, wenn die CBR-Warteschlange 52 leer ist. Die WFQ-Ablaufsteuerung 56 versorgt die andere WFQ-Ablaufsteuerung 54 oder eine der zusammengefügten Verbindungs-Warteschlangen 48, 50 entsprechend ihrer relativen Bewertung mit Diensten. In gleicher Weise versorgt die andere WFQ-Ablaufsteuerung 54 eine der Verbindungs-Warteschlangen 44, 46 entsprechend ihrer relativen Bewertung mit Diensten. Das heißt, dass die WFQ-Ablaufsteuerungen 54, 56 eine bewertete faire Ablaufsteuerung ihrer jeweiligen Warteschlangen ausführen.
  • Eine ATM-Vermittlung ist zur Bereitstellung einer garantierten QoS bestimmt; dies bedeutet in vielen Fällen eine garantierte Bandbreite auf einer Grundlage pro Verbindung. Wenn eine Quelle von Zellen die zugeteilte Informations-Rate (CIR) ihrer Verbindung überschreitet, so können Zellen von anderen Quellen eine Beeinträchtigung ihrer QoS erfahren, wenn die den Überschuss aufweisende Quelle erfolgreich bei der Gewinnung von mehr als den ihr zugeteilten Teil der Bandbreite ist. Beispielsweise könnte eine Quelle für Zellen physikalisch mit dem Eingangs-Port über eine OC-3-(155 Mbps-)Verbindungsstrecke verbunden sein, jedoch lediglich eine CIR von 20 Mbps haben. Wenn diese Quelle Zellen an den Eingangs-Port mit der OC-3-Rate sendet, so könnte dies die QoS anderer Quellen beeinträchtigen, die von der gleichen Vermittlung mit Diensten versorgt werden. Hieraus folgt, das die CIR auf der Grundlage pro Verbindung erzwungen oder durchgesetzt werden muss.
  • Ein Beispiel eines Internet-Dienstes, der von einem Netzwerk ATM-Vermittlungen bereitgestellt werden könnte, ist ein QoS-basierter VPN-(Q-VPN-)Dienst. Bei einem derartigen Dienst wird die QoS für das VPN ausgehandelt, wenn die Verbindungen hierfür aufgebaut werden, und sie wird nachfolgend garantiert. Damit ein VPN nicht in nachteiliger Weise andere Dienste-Vereinbarungen beeinflusst, die an der Vermittlung getroffen wurden, muss die CIR des VPN in der vorstehend beschriebenen Weise durchgesetzt werden.
  • In 4 ist eine Telekommunikations-Vermittlung 100 gemäß einer bevorzugten Ausführungsform der vorliegenden Erfindung gezeigt. Die Vermittlung 100 ist ein Mehrfach-Dienst-Vermittlungssystem mit Zugangs-Schnittstellen 102a, 102b, 102c, die unterschiedliche Dienst-Typen unterstützen können, mit einer Vermittlungsstruktur 103 und Netzwerk-Schnittstellen 104a, 104b, die unterschiedliche Fernleitungs-Technologien unterstützen können. Drei Haupt-Datenstrom-Topologien 106, 108, 110 sind ebenfalls gezeigt. Der erste Datenstrom 106 wird intern zwischen den Zugangs-Schnittstellen 102a und 102b vermittelt. Der zweite Datenstrom 108 bildet einen Ursprung und Abschluss von Netzwerk-Verkehr, der zwischen der Zugangs-Schnittstelle 102c und der Fernleitungs-Schnittstelle 104b verläuft. Der dritte Datenstrom 110 umfasst Tandem-Verkehr, der zwischen den Fernleitungs-Schnittstellen 104a und 104b verläuft und daher weder von einer Zugangs-Schnittstelle in der Vermittlung 100 ausgeht, noch an dieser endet.
  • Die von der Vermittlung 100 unterstützten Dienste schließen verbindungsorientierte und verbindungslose Dienste, beispielsweise ATM, Frame-Relay, IP- und IP VPN-Dienste ein. Die von der Vermittlung 100 unterstützte Dienste erfordern Dienst-Klassen-(CoS-) und Dienstgüte-(QoS-)Betriebsarten der Verkehrs-Verwaltung. Die Vermittlung 100 ist in der Lage, diese Betriebsarten gleichzeitig auf einer Zugangs-Schnittstelle 102 bereitzustellen. Das heißt, die Zugangs-Schnittstellen der Vermittlung 100 sind in der Lage, ein Hybrid-Verhalten bezüglich der Verkehrs-Verwaltung zu schaffen. Die Fernleitungs-Technologien, die durch die Netzwerk-Schnittstellen 104a, 104b unterstützt werden, könnten beispielsweise ATM oder MPLS sein.
  • 5 ist eine auseinandergefaltete Ansicht der Vermittlung 100 nach 4. Die Vermittlung 100 schließt einen Eintritts-Prozessor 112 ein, der mit einer Vermittlungsstruktur 103 verbunden ist, die mit einem Austritts-Prozessor 114 verbunden ist. Der Verkehrsfluss 116 ist so gezeigt, dass er in den Eintritts-Prozessor 112 eintritt, durch die Vermittlungsstruktur 103 verläuft und aus dem Austritts-Prozessor 114 austritt.
  • Die Funktionalität der Vermittlung 100 ist in die Weiterleitung, Vermittlung und die Verkehrs-Verwaltung aufgeteilt, die durch den Eingangs-Prozessor 112, die Vermittlungsstruktur 103 bzw. den Austritts-Prozessor 114 ausgeführt wird.
  • Der Eintritts-Prozessor 112 analysiert jede ankommende Protokolldaten-Einheit, um festzustellen, zu welchem Dienst sie gehört. Beispielsweise könnte eine Protokolldaten-Einheit zu einem virtuellen ATM-Trägerkanal oder zu einem IP/MPLS-etikettvermittelten Pfad gehören. Der Eintritts-Prozessor 112 führt dann ein Nachschlagen der Schicht-3-Netzwerk-Adresse oder des Schicht-2-Etiketts (wie für den Dienst passend) aus, um einen Ziel-Port innerhalb der Vermittlung 100 zu bestimmen. Der Ziel-Port würde eine der Zugangs-Schnittstellen 102a, 102b, 102c oder der Netzwerk-Schnittstellen 104a, 104b sein. Ein internes Einkapselungs- Protokoll wird von der Vermittlungsstruktur 103 verwendet, um die Routenführung der Protokolldaten-Einheiten zu bewirken. Der Eintritts-Prozessor 112 kapselt die Protokolldaten-Einheit mit einer Vermittlungs-Marke ein, und die eingekpaselte Protokolldaten-Einheit wird in eine Warteschlange eingereiht, um auf die Übertragung über die Vermittlungsstruktur 103 zu warten. Die Vermittlungs-Marke schließt Information des Ziel-Ports innerhalb der Vermittlung 100 sowie Dienst-bezogene Information ein. Die Vermittlung 100 unterstützt eine Zellen-(beispielsweise ATM-)und Paket-(beispielsweise IP-)Vermittlung. Für die letztere wird ein Segmentierungs-Neuzusammenfügungs-Protokoll über die Vermittlungsstruktur 103 hinweg verwendet, um Protokolldaten-Einheiten für die Vermittlung zu segmentieren. Diese Segmentierung wird durchgeführt, um die Latenz von einem eine hohe Priorität aufweisenden Verkehr zu steuern. Die vorstehend beschriebene Funktionalität wird allgemein als „Weiterleitung" bezeichnet.
  • Die Vermittlungsstruktur 103 ist dienstunabhängig. Sie arbeitet mit dem internen Einkapselungs-Protokoll, um Protokolldaten-Einheiten zu ihrem Ziel-Port zu lenken. Die Vermittlungsstruktur 103 ergibt eine grundlegende absolute Prioritäts-Behandlung, das heißt, sie trennt Verkehr in eine kleine Anzahl von Warteschlangen. Die Funktion der Vermittlungsstruktur 103 kann als ein gemeinsamer Speicher-Puffer, als verteilter Speicher, als reiner räumlicher Bus oder als eine Kombination hiervon implementiert werden, wie dies in der Technik bekannt ist.
  • Der Austritts-Prozessor 114 analysiert die von der Vermittlungsstruktur 103 empfangenen Protokolldaten-Einheiten, um die erforderliche Art der Ablaufsteuerungs- und Warteschlangen-Behandlung zu bestimmen. Beispielsweise ist diese Behandlung eine von Folgenden: Warteschlangen-Bildung pro Verbindung oder Warteschlangen-Bildung pro zusammengefügter Verbindung für ATM-Verkehr; Warteschlangen-Bildung pro Klasse für IP-Verkehr; und Klassen-Teil-Warteschlangen-Bildung pro Datenstrom auf einer Basis pro VPN für IP VPN-Verkehr. Der Austritts-Prozessor 114 markiert eine Protokolldaten-Einheit für die Behandlung unter Verwendung einer Datenstrom-Identifikation und einer Warteschlangen-Identifikation, wodurch die Funktionen der Warteschlangen-Bildung von der Datenstrom-Verwaltung getrennt werden.
  • 6 ist ein funktionelles Blockschaltbild des Austritts-Prozessors 114. Die Figur zeigt die Haupt-Funktions-Blöcke des Austritts-Datenpfades und identifiziert den Fluss von Daten zwischen diesen. Eine Vermittlungsstruktur-Schnittstelle 120 überträgt Protokolldaten-Einheiten von einer Vermittlungsstruktur-Verbindungsstrecke 118 zu einem Daten-Puffer 122. Der Daten-Puffer 122 überträgt Protokolldaten-Einheiten zu einem Prozessor 124, empfängt Protokolldaten-Einheiten von dem Prozessor 124 und überträgt Protokolldaten-Einheit-Bezugnahmen auf eine Struktur 128 von Warteschlangen und Ablaufsteuerungen. Die Struktur 128 von Warteschlangen und Ablaufsteuerungen fordert die Übertragung von Protokolldaten-Einheiten auf eine Austritts-Verbindungsstrecke 130 an. Obwohl 6 eine Vermittlungsstruktur-Verbindungsstrecke 118 und eine Austritts-Verbindungsstrecke 130 zeigt, gibt es üblicherweise eine Vielzahl derartiger Verbindungsstrecken. Beispielsweise gibt es bei der vorliegenden Ausführungsform achtundvierzig derartiger Verbindungsstrecken. Entsprechend haben der Daten-Puffer 122, der Prozessor 124 und die Struktur 128 von Warteschlangen und Ablaufsteuerungen eine entsprechende Fähigkeit, die durch eine Zeit-Teilung bereitgestellt wird, um achtundvierzig parallele Daten-Pfade zu unterstützen. Alternativ zur Zeit-Teilung könnten der Daten-Puffer 122, der Prozessor 124 und die Struktur 128 von Warteschlangen und Ablaufsteuerungen eine Breite von achtundvierzig parallelen Daten-Pfaden haben.
  • Die Vermittlungsstruktur-Schnittstelle 120 schließt den Verkehrsfluss 116 von Protokolldaten-Einheiten von der Vermittlungsstruktur 103 ab und führt eine Datenübertragungs-Raten-Anpassung aus. Die Protokolldaten-Einheiten werden in den Daten-Puffer 122 überführt, in dem eine Neuzusammenfügung der segmentierten Protokolldaten-Einheiten erfolgt. Neuzusammengefügte Protokolldaten-Einheiten werden in dem Prozessor 124 eingeleitet, wo sie einer Einreihungs-Aufgabe 126 in eine Warteschlange zugeführt werden. Die Einreihungs-Aufgabe 126 analysiert jede Protokolldaten-Einheit, um deren Dienst zu ermitteln und um die Protokolldaten-Einheit für eine Warteschlangen-Bildung- und Ablaufsteuerung s-Behandlung zu klassifizieren. Die Einreihungs-Aufgabe 126 ergibt weiterhin eine Einkapselung jeder Protokolldaten-Einheit für deren Übertragung auf die Austritts-Verbindungsstrecken 130. Beispiele der Dienst- und Protokolldaten-Einheit-Klassifizierung sind in 7 angegeben. ATM-Träger-Verkehr ist in der Lage, die Einreihungs-Aufgabe 126 zu umgehen, weil das Verbindungs-Nachschlagen und der Kontext vollständig innerhalb des Daten-Puffer-Blockes 122 bereitgestellt werden können. ATM-Verkehr kann jedoch auch ebenfalls der Einreihungs-Aufgabe 126 zugeführt werden.
  • Der Daten-Puffer 122 empfängt klassifizierte Protokolldaten-Einheiten von dem Prozessor 124 und kombiniert sie mit dem durchlaufenden ATM-Verkehr. Ein Protokolldaten-Einheits-Bezug (üblicherweise ein Puffer-Speicher-Zeiger) wird in die Struktur 128 von Warteschlangen und Ablaufsteuerungen weitergeleitet. Jeder Protokolldaten-Einheit-Bezug ist mit einer Warteschlangen-Identifikation markiert, die sie in eine Warteschlange lenkt. Die Protokolldaten-Einheit-Bezugnahmen werden weiterhin mit einer Datenstrom-Identifikation markiert, die sie einen Datenstrom-Kontext zuordnet. Der Datenstrom-Kontext ist für mehrere Zwecke nützlich, wobei einer hiervon die Abrechnung ist. Diese Trennung der Warteschlangen- und Datenstrom-Identifikation ermöglicht es, dass sowohl eine Klassen-Warteschlangen-Bildung als auch eine Warteschlangen-Bildung pro Datenstrom ohne Verlust der Granularität für eine Datenstrom-basierte Abrechnung ausgeführt wird. Zusätzlich ermöglicht dies einen Dienst mit Klassen-basierten Teil-Strömen, jedoch mit einer zusammengefassten Abrechnung. Schließlich fordert die Struktur 128 von Warteschlangen und Ablaufsteuerungen eine Protokolldaten-Einheit für die Verbindungsstrecken-Übertragung an, wenn ihr entsprechender Protokolldaten-Einheit-Bezug das Kopfende seiner Warteschlange erreicht und für die Übertragung vorgesehen wird. Der Austritts-Prozessor 114 sendet die Protokolldaten-Einheit dann auf die Austritts-Verbindungsstrecke 130.
  • Die Protokolldaten-Einheiten werden für eine Übertragung zwischen den Funktions-Blöcken der Blöcke des Austritts-Prozessors 114 segmentiert. Diese Segmentierung erfolgt in einer derartigen Weise, dass die Verzögerungs-Prioritäten der Protokolldaten-Einheiten beibehalten werden; auf diese Weise wird es Segmenten höherer Priorität ermöglicht, Segmenten niedriger Priorität zuvorzukommen. Es sei jedoch bemerkt, dass diese Segmentierung nicht absolut erforderlich ist, jedoch wünschenswert ist.
  • 7 ist eine Ablaufdiagramm einer Ausführungsform der Einreihungs-Aufgabe 126 nach 6. Das Verfahren der Einreihungs-Aufgabe 126 schließt einen Dienst-Bestimmungsschritt 132 gefolgt von einem Datenstrom-Bestimmungsschritt 134 und abgeschlossen durch einen Warteschlangen-Bestimmungsschritt 136 ein. Wie dies weiter oben erwähnt wurde, ist jeder Protokolldaten-Einheit-Bezug mit einer Datenstrom-Identifikation und einer Warteschlangen-Identifikation markiert. Diese Markierung kann entweder am Ende aller der Bestimmungsschritte oder nach dem Bestimmungsschritt erfolgen, der dem Typ der Identifikation entspricht (das heißt einem Datenstrom oder einer Warteschlange).
  • Eine mit einer Vermittlungs-Marke (T) eingekapselte Protokolldaten-Einheit 140 wird in die Einreihungs-Aufgabe 126 eingegeben. Die Protokolldaten-Einheit wird im Schritt 138 für eine weitere Überprüfung der Vermittlungs-Marke (T) analysiert. Der Dienst wird im Schritt 132 durch Überprüfen der Vermittlungs-Marke (T) bestimmt, die den der Protokolldaten-Einheit zugeordneten Dienst anzeigt. Der Dienst ist einer von verschiedenen vorgegebenen Diensten, für deren Unterstützung die Vermittlung 100 konfiguriert wurde. Beispielsweise zeigt 7, dass der Dienst einer von ATM, IP oder IP VPN ist; die Erfindung ist jedoch nicht auf die Unterstützung dieser Dienste beschränkt.
  • Nachdem der Dienst bestimmt wurde, wird der Datenstrom im Schritt 134 durch Überprüfen der Vermittlungs-Marke (T) bestimmt, die den der Protokolldaten-Einheit zugeordneten Datenstrom anzeigt. Der Datenstrom ist einer von mehreren vorgegebenen Datenströmen, für dessen Unterstützung die Vermittlung 100 konfiguriert wurde. Beispielsweise zeigt 7 zusammengefügte Verbindungs- und Verbindungs-Datenströme, die mit ATM-Diensten verbunden sind, einen differenzierten IP-Diensten zugeordneten Datenstrom und VPN1 bis VPNn-Datenströme, die IP VPN-Diensten zugeordnet sind. Der Protokolldaten-Einheit-Bezug kann nach diesem Schritt oder alternativ nach der Bestimmung der Warteschlange mit einer Datenstrom-Identifikation markiert werden.
  • Nachdem der Datenstrom bestimmt wurde, wird die Warteschlange im Schritt 136 durch Überprüfen der Vermittlungs-Marke (T) bestimmt, die die Warteschlange anzeigt, die der Protokolldaten-Einheit zugeordnet ist. Die Warteschlange ist eine von mehreren vorgegebenen Warteschlangen, mit denen die Vermittlung 100 konfiguriert wurde. Beispielsweise zeigt 7 Warteschlangen, die zusammengefügten ATM-Verbindungs-Datenströmen auf einer QoS-Basis zugeordnet sind, und Warteschlangen, die ATM-Verbindungs-Datenströmen auf einer Grundlage pro Verbindung zugeordnet sind. Die Figur zeigt weiterhin Warteschlangen, die differenzierten IP-Dienst-Klassen (beispielsweise Gold, Silber, Bronze) auf einer Grundlage pro Klasse zugeordnet sind. Schließlich zeigt die Figur Warteschlangen, die IP VPN-Datenströmen auf einer Grundlage pro Teil-Datenstrom zugeordnet sind. Das heißt, dass eine Warteschlange einer einzelnen Dienstklasse (beispielsweise beschleunigt, Gold, Silber, Bronze) innerhalb eines spezifischen IP VPN zugeordnet ist. Jeden Protokolldaten-Einheit-Bezug ist eine Warteschlangen-Identifikation und eine Datenstrom-Identifikation, wenn nicht bereits zugeordnet, nach dem Warteschlangen-Bestimmungs-Schritt 36 zugeordnet, jedoch bevor er an die Struktur 128 von Warteschlangen und Ablaufsteuerungen überführt wird.
  • 8 ist ein funktionelles Blockschaltbild der Struktur 128 von Warteschlangen und Ablaufsteuerungen nach 6. Die Struktur 128 schließt eine Vielzahl von Warteschlangen 142, die Gruppen von Warteschlangen 142a, 142c, 142d einschließen, und eine Anzahl von Ablaufsteuerungen 144 ein. Die Ablaufsteuerungen umfassen Ablaufsteuerungs-Module 144a, 144c, 144d, die jeweils eine Prioritäts-Ablaufsteuerung (P) und eine WFQ-Ablaufsteuerung (W) einschließen. Die Warteschlangen 142 sind als Puffer implementiert, und die Ablaufsteuerungen 144 sind als Zustandsmaschinen auf einer integrierten Schaltung implementiert. Die Warteschlangen 142 und Ablaufsteuerungen 144 können so miteinander verbunden werden, dass sie eine Vielzahl von Diensten unterstützen. Die Pfeile in 8 zeigen logische Zuordnungen oder Zuteilungen, die Warteschlangen mit Ablaufsteuerungen verbinden und Ablaufsteuerungen miteinander in einer Ablaufsteuerungs-Hierarchie verbinden. Im einzelnen kann die Struktur nach Bedarf konfiguriert und umkonfiguriert werden, um gleichzeitig eine Klassen-basierte Warteschlangen-Bildung und Ablaufsteuerung, eine Verbindungs-basierte Warteschlangen-Bildung und Ablaufsteuerung und eine Kombination von einer Klassen- und Verbindungsbasierten Warteschlangen-Bildung und Ablaufsteuerung zu unterstützen. Beispiele der Dienste, die die vorstehenden Arten von Warteschlangen-Bildung und Ablaufsteuerung erfordern, wurden anhand der Diskussion der 7 gegeben. Die Anzahl von Warteschlangen 142 und Ablaufsteuerungen 44 liegt in der Größenordnung von Tausenden, so dass eine große Anzahl von unterschiedlichen Diensten durch die Vermittlung 100 unterstützt werden kann.
  • Gemäß 8 dient die Gruppe von Warteschlangen 142a, die mit der Prioritäts-Ablaufsteuerung (P) des Ablaufsteuerungs-Moduls 144a verbunden ist, für die Warteschlangen-Bildung für die absolute Prioritäts-FIFO-Klasse. Diese Art der Warteschlangen-Bildung wird typischerweise für einen Echtzeit-Verkehr mit niedriger Verzögerung und für Steuer-Verkehr verwendet. Beispiele von Diensten, die diesen Warteschlangen 142a zugeordnet sind, sind ATM CBR und beschleunigter IP-Verkehr. Die PRI-Ablaufsteuerung (P) des Ablaufsteuerungs-Moduls 144a teilt die Verbindungsstrecken-Bandbreite in einer strikten Prioritäts-Reihenfolge (das heißt von A1 bis Aj) der Gruppe von Warteschlangen 142a zu.
  • Die Gruppe von Warteschlangen 142b, die mit der WFQ-Ablaufsteuerung (W) des Ablaufsteuerungs-Moduls 144a verbunden ist, dient zur zusammengefügten Verbindungs- und Klassen-Warteschlangen-Bildung. Die WFQ-Ablaufsteuerung (W) des Ablaufsteuerungs-Moduls 144a teilt Wertigkeiten (das heißt einen definierten Anteil) der Verbindungsstrecken-Bandbreite zu, oder sie kann eine explizite minimale Bandbreite zuteilen. Wenn die WFQ-Ablaufsteuerung (W) des Ablaufsteuerungs-Moduls 144a arbeitssparend ist, so nutzt sie außerdem nicht zugeteilte oder unbenutzte Bandbreite zwischen der Gruppe von Warteschlangen 142b. Der Ausgang der WFQ-Ablaufsteuerung (W) des Ablaufsteuerungs-Moduls 144a ist mit der Prioritäts-Ablaufsteuerung (P) des gleichen Moduls verbunden. Die anderen Ablaufsteuerungs-Module 144c, 144d sind in dieser Hinsicht gleich. Es sei bemerkt, dass nachdem die Prioritäts-Ablaufsteuerung (P) des Ablaufsteuerungs-Moduls 144a die Bandbreite der Gruppe von Warteschlangen 142a zugeteilt hat, die WFQ-Ablaufsteuerung (W) des gleichen Moduls Bandbreite der Gruppe von Warteschlangen 142b und dem Ablaufsteuerungs-Modul 144c zuteilt.
  • Die Gruppe von Warteschlangen 142c, die mit der WFQ-Ablaufsteuerung (W) des Ablaufsteuerungs-Moduls 144c verbunden ist, dient für Verbindungs-basierte Dienste, die eine explizite Bandbreiten-Garantie für eine einzelne Verbindung haben. Beispiele von Diensten, die diesen Warteschlangen zugeordnet sind, sind Warteschlangen-Dienste für ATM-Verbindungen und ATM-Dienste. Der Unterschied zwischen der Gruppe von Warteschlangen 142b und der Gruppe von Warteschlangen 142c besteht darin, dass jede Warteschlange in der ersteren Gruppe Datenströme in der gleichen Warteschlange zusammenfügt, während jede Warteschlange in der letzteren Gruppe einen einzigen Datenstrom in der Warteschlange anordnet. Die Gruppe von Warteschlangen 142c wird durch die WFQ-Ablaufsteuerung (W) des Ablaufsteuerungs-Moduls 144c mit Diensten versorgt. Der Ausgang des Ablaufsteuerungs-Moduls 144c ist mit der WFQ-Ablaufsteuerung (W) des Ablaufsteuerungs-Moduls 114a verbunden.
  • Die Gruppe von Warteschlangen 142d und das Ablaufsteuerungs-Modul 144d sind einem IP VPN-Dienst zugeordnet, der Klassen-basierte Teil-Ströme hat. Dem IP VPN-Dienst (IP VPNx) wird eine garantierte minimale Bandbreite über die WFQ-Ablaufsteuerung (W) des Ablaufsteuerungs-Moduls 144a und 144c bereitgestellt. Das Ablaufsteuerungs-Modul 144d teilt Bandbreite innerhalb des IP VPN-Dienstes (IP VPNx) seinen Klassen-basierten Teil-Strömen zu. Dieses Diagramm zeigt an, dass der IP VPN-Dienst (VPNx) eine Echtzeit-Prioritäts-Klasse (exp.) unterstützt, die mit der Prioritäts-Ablaufsteuerung (P) des Ablaufsteuerungs-Moduls 144d verbunden ist, sowie drei bewertete Klassen-basierte Teil-Ströme (G, S, B), die mit der WFQ-Ablaufsteuerung (W) des Ablaufsteuerungs-Moduls 144d verbunden sind. Die WFQ-Ablaufsteuerung (W) des Ablaufsteuerungs-Moduls 144d wird zur Bereitstellung einer bewerteten Zuteilung von Bandbreite verwendet, die für den IP VPN-Dienst (IP VPNx) über dessen Klassen-basierte Teil-Ströme (G, S, B) hinweg garantiert wird.
  • Anhand der 8 wird nunmehr ein Beispiel einer Warteschlangen-Identifikations- und Datenstrom-Identifikations-Zuordnung zu einem Protokolldaten-Einheit-Bezug beschrieben. Einzelnen Warteschlangen in den Gruppen von Warteschlangen 142a, 142b, 142c und 142d wurden jeweilige Marken A1 bis Aj, B1 bis Bn, C1 bis Cn und D1 bis D4 zugeordnet. Die Indices j, m und n sind ganze Zahlen, wobei j größer oder gleich eins ist, m größer oder gleich drei ist, und n größer oder gleich eins ist. Der folgende Pseudo-Code erläutert das Verfahren zur Zuordnung der Datenstrom- und Warteschlangen-Identifikationen. in dem nachfolgenden Beispiel bezeichnet ein Semikolon das Ende einer einzelnen Anweisung, und wo ein Doppelpunkt verwendet wurde, bezeichnet eine „Ende"-Anweisung das Ende einer Folge von mehrfachen Anweisungen, die in einem Zweig einer bedingten Anweisung (beispielsweise end if) enthalten sind.
  • Figure 00170001
  • Figure 00180001
  • Anhand der 8 und 9 wird die Verbindung der Warteschlangen 142 und Ablaufsteuerungen 144 miteinander beschrieben. Die Struktur 128 von Warteschlangen 142 und Ablaufsteuerungen 144 schließt eine umkonfigurierbare Durchschalteinrichtung 146 ein. Die umkonfigurierbare Durchschalteinrichtung 146 schließt eine verkettete Liste 148, 150 ein. Um die Verkettung zu erzielen, werden die Warteschlangen 142 und Ablaufsteuerungen 144 in Ausdrücken von Eltern- und Kind-Beziehungen definiert, wobei Eltern immer eine Ablaufsteuerung sind, und ein Kind dieser Eltern eine andere Ablaufsteuerung oder eine Warteschlange sein kann. Die Beziehungen sind als Pfeile in 9 gezeigt. Ein durchgezogener Pfeil bezeichnet eine Eltern-zu-Kind-Beziehung, ein gestrichelter Pfeil bezeichnet eine Kind-zu-Eltern-Beziehung, und ein punktierter Pfeil bezeichnet eine Beziehung zwischen Kindern. Beispielsweise bildet die Prioritäts-Ablaufsteuerung P144 des Ablaufsteuerungs-Moduls 144a Eltern für die Gruppe von Warteschlangen 142a und eine WFQ-Ablaufsteuerung W144 des Ablaufsteuerungs-Moduls 144a. In gleicher Weise ist die WFQ-Ablaufsteuerung W144 Eltern für die Gruppe von Warteschlangen 144b.
  • Die Prioritäts-Ablaufsteuerung P144 verwendet eine verkettete Liste 148 zur Ablaufsteuerung ihrer Kinder. Ein Zeiger oder Zeiger definieren die Liste 148, wobei ein Zeiger ein Index ist, der in eindeutiger Weise ein bestimmtes Kind identifiziert. Gemäß 9 sind die Zeiger p0 bis p3 den Warteschlangen A1 bis A3 bzw. der WFQ-Ablaufsteuerung W144 zugeordnet. Jedes Kind hat weiterhin einen Zeiger (p), der seine Eltern anzeigt, die Prioritäts-Ablaufsteuerung P144. Wenn ein Kind keine Daten für die Ablaufsteuerung hat, so ist es in der Liste der Eltern als keinen Dienst erfordernd identifiziert. Wenn ein derartiges Kind Daten empfängt, muss es seine Eltern benachrichtigen, um in der Liste 148 als einen Dienst erfordernd identifiziert zu werden. Jedes Kind verwendet seinen Eltern-Zeiger (p) für diesen Zweck. Die Kinder werden in der Priorität-Reihenfolge von der höchsten bis zur niedrigsten Priorität (das heißt p0 bis p3) mit Diensten versorgt. Im einzelnen versorgt die Prioritäts-Ablaufsteuerung P144 alle verfügbaren Daten des die höchste Priorität aufweisenden Kindes mit verfügbaren Daten mit Diensten, bevor sie zur Versorgung des die nächst niedrigere Priorität aufweisenden Kindes mit verfügbaren Daten übergeht. Zusätzlich wird, wenn Eltern den letzten Teil der Daten für ein Kind mit Diensten versorgen, der Eintrag des Kindes in der Liste 148 aktualisiert, um anzuzeigen, dass ein Dienst für dieses Kind derzeit nicht erforderlich ist. 9 zeigt die verkettete Liste 148 für die Prioritäts-Ablaufsteuerung P144, wobei die Warteschlangen A1, A2 und die WFQ-Ablaufsteuerung W144 Daten aufweisen, was mit einem „Y" in der Figur bezeichnet ist, und somit einen Dienst erfordern. Die Warteschlange A3 ist so gezeigt, als ob sie keine Daten hat, was durch ein „N" in der verketteten Liste 148 bezeichnet ist, so dass diese Warteschlange derzeit keine Dienste erfordert.
  • Die WFQ-Ablaufsteuerung W144 verwendet ebenfalls eine verkettete Liste 150 für die Ablaufsteuerung ihrer Kinder. Lediglich Kinder, die einen Dienst erfordern (das heißt verfügbare Daten haben) sind in dieser Liste enthalten. 9 zeigt die verkettete Liste 150 für die WFQ-Ablaufsteuerung W144, wobei die Warteschlangen B1 und B2 verfügbare Daten haben, während die Warteschlange B3 so gezeigt ist, dass sie keine verfügbaren Daten hat. Ein Zeiger oder Zeiger definieren die Liste, wobei ein Zeiger ein Index ist, der in eindeutiger Weise ein bestimmtes Kind identifiziert. Jedes Kind hat weiterhin einen Geschwister-Zeiger (s), der das nächste Geschwister-Kind in der Liste 150 identifiziert. Beispielsweise hat das Ablaufsteuerungs-Modul 144a einen Kopffeld-Zeiger (H), der der Warteschlange B1 in seiner verketteten Liste zugeordnet ist. Die Warteschlange B1 hat einen Geschwister-Zeiger (SB1), der der Warteschlange B2 zugeordnet ist, die das nächste Geschwister-Kind in der Liste 150 ist. Die Warteschlange B2 hat einen Geschwister-Zeiger (SB2), der auf „Null" gesetzt ist, weil die Warteschlange B3 in diesem Beispiel keine verfügbaren Daten hat. Die WFQ-Ablaufsteuerung W144 weiterhin einen Nachlauf-Zeiger (T) auf, der der letzten Warteschlange in der Gruppe von Warteschlangen zugeordnet ist, die Dienste erfordern, in diesem Fall der Warteschlange B2. Wenn ein Kind keine der Ablaufsteuerung zu unterwerfenden Daten hat, so wird es aus der Liste der Eltern entfernt. Wenn ein derartiges Kind Daten empfängt, muss es seine Eltern benachrichtigen, um in die Liste seiner Eltern eingefügt zu werden. Jedes Kind hat einen Eltern-Zeiger (p) für diesen Zweck. Beispielsweise hat jede Warteschlange B1 bis B3 einen Zeiger (p) zu seinen Eltern, der WFQ-Ablaufsteuerung W144. Die WFQ-Ablaufsteuerung W144 versorgt jedes der Kinder in seiner Liste 150 auf einer Grundlage einer bewerteten fairen Warteschlangen-Bildung. Das heißt, dass jedes Kind auf der Liste entsprechend einem Bewertungsfaktor mit Diensten versorgt wird, der dem Kind zugeordnet ist, wodurch die Menge an Bandbreite, die das Kind erhält proportional zu dem Bewertungsfaktor ist. Wenn Eltern den letzten Teil von Daten für ein Kind mit Diensten versorgen, so wird der Eintrag für das Kind in der Liste 150 entfernt.
  • Vielfältige Modifikationen, Abänderungen und Anpassungen können an den speziellen vorstehend beschriebenen Ausführungsformen der Erfindung durchgeführt werden, ohne von dem Schutzumfang der Erfindung abzuweichen, der in den Ansprüchen definiert ist.

Claims (12)

  1. Telekommunikationsvermittlung zur Vermittlung von Protokolldaten-Einheiten zwischen Kommunikations-Verbindungsstrecken, die die Telekommunikationsvermittlung mit einem Kommunikations-Netzwerk verbinden, wobei die Telekommunikationsvermittlung in der Lage ist, Protokolldaten-Einheiten einer Vielzahl von Diensten gleichzeitig zu vermitteln und Folgendes umfasst: einen Eingangsprozessor (112) zum Empfang von Protokolldaten-Einheiten von einer Kommunikations-Verbindungsstrecke; einen Ausgangsprozessor (114) zum Senden von Protokolldaten-Einheiten an eine andere Kommunikations-Verbindungsstrecke; eine Vermittlungsstruktur (103) zum Lenken von Protokolldaten-Einheiten von dem Eingangsprozessor zu dem Ausgangsprozessor; und eine Struktur von Warteschlangen und Ablaufsteuerungen (128), die einer der Kommunikations-Verbindungsstrecken zugeordnet sind, wobei die Struktur von Warteschlangen und Ablaufsteuerungen betreibbar ist, um eine Verkehrs-Ablaufsteuerungs-Funktion zu schaffen und in der Lage ist, so angeordnet zu werden, dass sie eine Klassen-basierte Verkehrs-Ablaufsteuerung, eine Datenflussbasierte Verkehrs-Ablaufsteuerung und eine Ablaufsteuerung ergibt, die eine Kombination von Klassen-basierter und Datenstrom-basierter Verkehrsabwicklung ist, wobei die Verkehrs-Ablaufsteuerungs-Funktion die Warteschlangenbildung und Ablaufsteuerung von Protokolldaten-Einheiten von einer oder mehrerer der Vielzahl von Diensten gleichzeitig einschließt, wobei der Ausgangsprozessor (114) betreibbar ist, um: i) eine Marke für eine Warteschlangen-Identifikation an einer Protokolldaten-Einheit auf der Grundlage einer Diensteklasse anzubringen, die der Protokolldaten-Einheit zugeordnet ist, und wobei die Struktur der Warteschlangen und Ablaufsteuerungen betreibbar ist, um eine Warteschlangenbildung und Ablaufsteuerung der Protokolldaten-Einheiten auf einer Klassenbasis entsprechend der Warteschlangen-Identifikation auszuführen; ii) eine Marke für eine Datenfluss-Identifikation an einer Protokolldaten-Einheit auf der Grundlage eines Verkehrs-Datenstromes anzubringen, der der Protokolldaten-Einheit zugeordnet ist, und wobei die Struktur der Warteschlangen und Ablaufsteuerungen betreibbar ist, um eine Warteschlangenbildung und Ablaufsteuerung der Protokolldaten-Einheit auf einer Datenfluss-Basis entsprechend der Datenfluss-Identifikation auszuführen; und iii) eine Marke für eine Datenfluss-Identifikation an einer Protokolldaten-Einheit auf der Grundlage eines Verkehrs-Datenflusses anzubringen, der der Protokolldaten-Einheit zugeordnet ist, und um eine Marke für eine Warteschlangen-Identifikation an der Protokolldaten-Einheit auf der Grundlage der Diensteklasse innerhalb des Verkehrs-Datenstromes und in Zuordnung mit der Protokolldaten-Einheit anzubringen, und wobei die Struktur der Warteschlangen und Ablaufsteuerungen betreibbar ist, um eine Warteschlangenbildung und Ablaufsteuerung der Protokolldaten-Einheit auf einer Datenfluss-Basis und einer Klassen-Basis entsprechend der Datenfluss-Identifikation und der Warteschlangen-Identifikation auszuführen.
  2. Telekommunikationsvermittlung nach Anspruch 1, bei der der Eingangsprozessor (112) betreibbar ist, um die Protokolldaten-Einheiten mit einer Vermittlungsmarke einzukapseln, die eine Anzeige eines Dienstes und eines Verkehrs-Datenflusses einschließt, die der Protokolldaten-Einheit zugeordnet ist, wodurch die Telekommunikationsvermittlung Protokolldaten-Einheiten unterschiedlicher Dienste vermitteln kann.
  3. Telekommunikationsvermittlung nach Anspruch 1 oder 2, bei der die Struktur der Warteschlangen und Ablaufsteuerungen (128) eine umkonfigurierbare Durchschalteinrichtung umfasst, die die Warteschlangen und Ablaufsteuerungen der Struktur in einer umkonfigurierbaren Weise verbindet, wodurch eine Anordnung von Klassen-basierter Ablaufsteuerung, Datenfluss-basierter Ablaufsteuerung und einer Ablaufsteuerung, die eine Kombination einer Klassen-basierten und Datenstrombasierten Ablaufsteuerung ist, selektiv änderbar ist.
  4. Telekommunikationsvermittlung nach Anspruch 3, bei der die Ablaufsteuerungs-Module (144) mit den Warteschlangen durch die umkonfigurierbare Durchschalteinrichtung in einer umkonfigurierbaren Weise verbunden sind, wodurch die Verbindung zwischen einer Warteschlange und einem Ablaufsteuerungs-Modul selektiv änderbar ist.
  5. Telekommunikationsvermittlung nach einem der vorhergehenden Ansprüche, bei der die Vielzahl von Ablaufsteuerungen Ablaufsteuerungs-Module (144) umfasst, wobei die Module jeweils eine Prioritäts-Ablaufsteuerung (P) und eine bewertete faire Warteschlangen-Ablaufsteuerung (W) einschließen.
  6. Verfahren zur Vermittlung von Etikett-eingekapselten Protokolldaten-Einheiten in einer Telekommunikationsvermittlung (100), die mit einem Kommunikations-Netzwerk über Kommunikations-Verbindungsstrecken verbunden ist, wobei die Telekommunikationsvermittlung eine Vermittlungsstruktur (103) einen Eingangsprozessor (112), einen Ausgangsprozessor (114) und eine Struktur von Warteschlangen und Ablaufsteuerungen einschließt, die zur Schaffung einer Klassen-basierten Ablaufsteuerung, einer Datenfluss-basierten Ablaufsteuerung und einer Ablaufsteuerung konfiguriert ist, die eine Kombination einer Klassen-basierten und Datenfluss-basierten Ablaufsteuerung ist, wobei das Verfahren die folgenden Schritte umfasst: Empfangen einer Etikett-eingekapselten Protokolldaten-Einheit von dem Netzwerk über eine der Kommunikations-Verbindungsstrecken durch den Eingangsprozessor (112); Überprüfen des Etiketts der Etikett-eingekapselten Protokolldaten-Einheiten durch den Eingangsprozessor (112); Bestimmen, durch den Eingangsprozessor (112) und in Abhängigkeit von dem Inhalt des Etiketts, eines Dienstes und eines Verkehrs-Datenflusses, der der Etikett-eingekapselten Protokolldaten-Einheit zugeordnet ist; Einkapseln der Etikett-eingekapselten Protokolldaten-Einheit mit einer Vermittlungs-Marke durch den Eintrittsprozessor (112); Übertragen der mit der Vermittlungs-Marke eingekapselten Protokolldaten-Einheit durch den Eingangsprozessor (112) an die Vermittlungsstruktur; Vermitteln der mit der Vermittlungs-Marke eingekapselten Protokolldaten-Einheit durch die Vermittlungsstruktur (103) und in Abhängigkeit von den Inhalten der Vermittlungs-Marke an dem Ausgangsprozessor (114); und Anbringen, durch den Austrittsprozessor, i) einer Marke für eine Warteschlangen-Identifikation an der Protokolldaten-Einheit auf der Grundlage einer Diensteklasse, die der Protokolldaten-Einheit zugeordnet ist, wobei die Struktur von Warteschlangen und Ablaufsteuerungen betreibbar ist, um eine Warteschlangenbildung und Ablaufsteuerung der Protokolldaten-Einheit auf einer Klassen-Basis entsprechend der Warteschlangen-Identifikation auszuführen; ii) einer Marke für eine Datenfluss-Identifikation an der Protokolldaten-Einheit auf der Grundlage eines Verkehrs-Datenflusses, der der Protokolldaten-Einheit zugeordnet ist, wobei die Struktur von Warteschlangen und Ablaufsteuerungen betreibbar ist, um eine Warteschlangenbildung und Ablaufsteuerung der Protokolldaten-Einheit auf einer Datenfluss-Basis entsprechend der Datenfluss-Identifikation auszuführen; und iii) einer Marke für eine Datenfluss-Identifikation an der Protokolldaten-Einheit auf der Grundlage eines Verkehrs-Datenflusses, der der Protokolldaten-Einheit zugeordnet ist, und einer Marke für eine Warteschlangen-Identifikation an der Protokolldaten-Einheit auf der Grundlage einer Diensteklasse innerhalb des Verkehrs-Datenflusses und in Zuordnung zu der Protokoll-Dateneinheit, und wobei die Struktur der Warteschlangen und Ablaufsteuerungen betreibbar ist, um eine Warteschlangenbildung und Ablaufsteuerung der Protokolldaten-Einheit auf einer Datenfluss-Basis und einer Klassen-Basis entsprechend der Datenfluss-Identifikation und der Warteschlangen-Identifikation auszuführen; Senden der Etikett-eingekapselten Protokolldaten-Einheit durch den Ausgangsprozessor (114) und in Abhängigkeit davon, dass eine Ablaufsteuerung der Struktur von Warteschlangen und Ablaufsteuerungen anzeigt, dass die Etiketteingekapselte Protokolldaten-Einheit für eine Aussendung angesteuert ist, an eine andere der Kommunikations-Verbindungsstrecken.
  7. Verfahren nach Anspruch 6, bei dem ein Schritt der Bestimmung einer Warteschlange die Bestimmung des Dienstes einschließt, der der Protokolldaten-Einheit zugeordnet ist.
  8. Verfahren nach Anspruch 7, bei dem der Schritt der Bestimmung einer Warteschlange weiterhin die Bestimmung des Verkehrs-Datenflusses, dem die Protokolldaten-Einheit zugeordnet ist, und nachfolgendes Markieren der Protokolldaten-Einheit mit einer Datenfluss-Identifikation einschließt.
  9. Verfahren nach Anspruch 8, bei der der Schritt der Bestimmung einer Warteschlange weiterhin einen Schritt einschließt, der aus der Gruppe ausgewählt ist, die aus Folgendem besteht: i) Bestimmen einer Diensteklasse, der die Protokolldaten-Einheit zugeordnet ist, und nachfolgendes Markieren der Protokolldaten-Einheit mit einer Warteschlangen-Identifikation; und ii) Bestimmen eines Datenflusses, dem die Protokolldaten-Einheit zugeordnet ist, und nachfolgendes Markieren der Protokolldaten-Einheit mit der Datenfluss-Identifikation.
  10. Verfahren nach einem der Ansprüche 6 bis 9, bei dem das Verfahren weiterhin einen Anfangsschritt einer Umkonfiguration der Struktur von Warteschlangen und Ablaufsteuerungen in eine andere Konfiguration umfasst.
  11. Verfahren nach Anspruch 10, bei dem der Dienst einer von Folgendem ist: ein Verbindungs-orientierter Dienst und ein verbindungsloser Dienst; oder ein ATM-Dienst, und ein IP-Dienst, und ein IP VPN-Dienst.
  12. Computer-Programmelement, das Computerprogramm-Codeeinrichtungen umfasst, die so angeordnet sind, dass sie bewirken, dass ein Prozessor ein Verfahren zur Durchführung der Verfahrensschritte nach einem der Ansprüche 6–11 ausführt.
DE60035091T 1999-09-23 2000-09-22 Telekommunikationsvermittlungstelle und Verfahren Expired - Lifetime DE60035091T2 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/401,955 US6680933B1 (en) 1999-09-23 1999-09-23 Telecommunications switches and methods for their operation
US401955 1999-09-23

Publications (2)

Publication Number Publication Date
DE60035091D1 DE60035091D1 (de) 2007-07-19
DE60035091T2 true DE60035091T2 (de) 2008-02-07

Family

ID=23589954

Family Applications (1)

Application Number Title Priority Date Filing Date
DE60035091T Expired - Lifetime DE60035091T2 (de) 1999-09-23 2000-09-22 Telekommunikationsvermittlungstelle und Verfahren

Country Status (4)

Country Link
US (1) US6680933B1 (de)
EP (1) EP1093266B1 (de)
CA (1) CA2314625C (de)
DE (1) DE60035091T2 (de)

Families Citing this family (88)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6782535B1 (en) * 1999-08-30 2004-08-24 Creo Inc. Dynamic queue width system and method
US6983350B1 (en) * 1999-08-31 2006-01-03 Intel Corporation SDRAM controller for parallel processor architecture
US6532509B1 (en) 1999-12-22 2003-03-11 Intel Corporation Arbitrating command requests in a parallel multi-threaded processing system
US6694380B1 (en) 1999-12-27 2004-02-17 Intel Corporation Mapping requests from a processing unit that uses memory-mapped input-output space
US6661794B1 (en) * 1999-12-29 2003-12-09 Intel Corporation Method and apparatus for gigabit packet assignment for multithreaded packet processing
US7016365B1 (en) * 2000-03-31 2006-03-21 Intel Corporation Switching fabric including a plurality of crossbar sections
US7206843B1 (en) * 2000-04-21 2007-04-17 Sun Microsystems, Inc. Thread-safe portable management interface
US7151773B1 (en) * 2000-05-05 2006-12-19 Fujitsu Limited System and method for connectionless/connection oriented signal transport
US7002918B1 (en) * 2000-05-22 2006-02-21 Northrop Grumman Corporation Method and apparatus for real time scheduling in a satellite communications network
DE60115998T2 (de) * 2000-07-05 2006-06-22 Roke Manor Research Ltd., Romsey Verbesserungen in oder zu Vermittlungsvorrichtungen
US7184440B1 (en) * 2000-07-26 2007-02-27 Alcatel Canada Inc. Multi-protocol switch and method therefore
AUPQ968100A0 (en) * 2000-08-25 2000-09-21 Telstra Corporation Limited A management system
US6975638B1 (en) * 2000-10-13 2005-12-13 Force10 Networks, Inc. Interleaved weighted fair queuing mechanism and system
US20020085567A1 (en) * 2000-12-28 2002-07-04 Maple Optical Systems, Inc. Metro switch and method for transporting data configured according to multiple different formats
US7099330B2 (en) * 2001-01-10 2006-08-29 Lucent Technologies Inc. Method and apparatus for integrating guaranteed-bandwidth and best-effort traffic in a packet network
US7342942B1 (en) * 2001-02-07 2008-03-11 Cortina Systems, Inc. Multi-service segmentation and reassembly device that maintains only one reassembly context per active output port
US20020181476A1 (en) * 2001-03-17 2002-12-05 Badamo Michael J. Network infrastructure device for data traffic to and from mobile units
US6950396B2 (en) * 2001-03-20 2005-09-27 Seabridge Ltd. Traffic control method and system
US7009979B1 (en) * 2001-03-30 2006-03-07 Agere Systems Inc. Virtual segmentation system and method of operation thereof
US20040260829A1 (en) * 2001-04-13 2004-12-23 Husak David J. Manipulating data streams in data stream processors
US7212494B1 (en) * 2001-04-30 2007-05-01 Cisco Technology, Inc. In-band must-serve indication from scheduler to switch fabric
US7286566B1 (en) * 2001-05-08 2007-10-23 Cortina Systems, Inc. Multi-service segmentation and reassembly device that maintains reduced number of segmentation contexts
US6769092B1 (en) * 2001-07-31 2004-07-27 Cisco Technology, Inc. Method and system for testing linked list integrity
ATE352150T1 (de) 2001-08-30 2007-02-15 Tellabs Operations Inc System und verfahren zum vermitteln von daten unter verwendung eines gemeinsamen koppelfeldes
US20030074473A1 (en) * 2001-10-12 2003-04-17 Duc Pham Scalable network gateway processor architecture
JP2003158543A (ja) * 2001-11-22 2003-05-30 Anritsu Corp 中継装置及び中継方法
US7382792B2 (en) * 2001-11-23 2008-06-03 International Business Machines Corporation Queue scheduling mechanism in a data packet transmission system
US7065089B2 (en) * 2001-12-21 2006-06-20 Alcatel Canada Inc. Method and system for mediating traffic between an asynchronous transfer mode (ATM) network and an adjacent network
US7385993B2 (en) * 2001-12-21 2008-06-10 International Business Machines Corporation Queue scheduling mechanism in a data packet transmission system
US7379420B2 (en) * 2001-12-28 2008-05-27 Network Equipment Technologies, Inc. Method and apparatus for multiple qualities of service to different network connections of a single network path
US7711910B1 (en) 2002-01-17 2010-05-04 Juniper Networks, Inc. Flexible queue and stream mapping systems and methods
US7197612B1 (en) * 2002-01-17 2007-03-27 Juniper Networks, Inc. Flexible queue and stream mapping systems and methods
US7257125B1 (en) 2002-01-22 2007-08-14 Marvell International Ltd. Quality of service half-duplex media access controller
KR100428774B1 (ko) * 2002-01-24 2004-04-28 삼성전자주식회사 멀티 프로토콜 레이블 스위칭 트래픽 엔지니어링 스케줄링장치
US7020150B2 (en) 2002-02-22 2006-03-28 Nortel Networks Limited System, device, and method for traffic and subscriber service differentiation using multiprotocol label switching
US7782776B2 (en) * 2002-03-15 2010-08-24 Broadcom Corporation Shared weighted fair queuing (WFQ) shaper
US20030179754A1 (en) * 2002-03-20 2003-09-25 Broadcom Corporation Two stage egress scheduler for a network device
US7471688B2 (en) * 2002-06-18 2008-12-30 Intel Corporation Scheduling system for transmission of cells to ATM virtual circuits and DSL ports
US7486696B2 (en) * 2002-06-25 2009-02-03 Avaya, Inc. System and method for providing bandwidth management for VPNs
US7283532B2 (en) 2002-10-25 2007-10-16 Alcatel Lucent Hierarchical scheduler architecture for use with an access node
US7336662B2 (en) 2002-10-25 2008-02-26 Alcatel Lucent System and method for implementing GFR service in an access node's ATM switch fabric
US7564871B2 (en) * 2002-10-25 2009-07-21 At&T Corp. Network routing method and system utilizing label-switching traffic engineering queues
US8045539B2 (en) 2002-10-25 2011-10-25 Alcatel Lucent Virtual group connection scheme for ATM architecture in an access node
US7280542B2 (en) 2002-10-25 2007-10-09 Alcatel Lucent Multicasting system and method for use in an access node's ATM switch fabric
US7236495B2 (en) 2002-10-25 2007-06-26 Alcatel Lucent Calendar heap system and method for efficient sorting
US7433307B2 (en) * 2002-11-05 2008-10-07 Intel Corporation Flow control in a network environment
WO2004043011A1 (en) * 2002-11-06 2004-05-21 Wuhan Fiberhome Networks Co., Ltd. Multiple service ring of n-ringlet structure based on multiple fe, ge and 10ge
US7965717B2 (en) * 2003-01-17 2011-06-21 Nortel Networks Limited Multi-staged services policing
KR100612315B1 (ko) * 2003-02-20 2006-08-16 삼성전자주식회사 핑퐁 방지 기능이 구비된 분산형 라우터 및 그를 이용한핑퐁 방지 방법
US20040213264A1 (en) * 2003-04-25 2004-10-28 Nortel Networks Limited Service class and destination dominance traffic management
US7379467B1 (en) * 2003-05-08 2008-05-27 Cypress Semiconductor Corporation Scheduling store-forwarding of back-to-back multi-channel packet fragments
US7697432B2 (en) 2003-06-27 2010-04-13 Broadcom Corporation Equal and weighted cost multipath load balancing in a network device
US7539143B2 (en) * 2003-08-11 2009-05-26 Netapp, Inc. Network switching device ingress memory system
US20050089054A1 (en) * 2003-08-11 2005-04-28 Gene Ciancaglini Methods and apparatus for provisioning connection oriented, quality of service capabilities and services
CN100534063C (zh) * 2003-10-31 2009-08-26 皇家飞利浦电子股份有限公司 用于避免数据饥饿的集成电路和方法
US20050129031A1 (en) * 2003-12-10 2005-06-16 Robotham Robert E. Method and apparatus for providing combined processing of packet and cell data
US7680139B1 (en) * 2004-03-25 2010-03-16 Verizon Patent And Licensing Inc. Systems and methods for queue management in packet-switched networks
US7379453B1 (en) * 2004-03-29 2008-05-27 Sun Microsystems, Inc. Method and apparatus for transferring multiple packets from hardware
US8213422B2 (en) * 2004-06-04 2012-07-03 Rockstar Bidco, LP Selective internet priority service
US7573879B2 (en) * 2004-09-03 2009-08-11 Intel Corporation Method and apparatus for generating a header in a communication network
US7639674B2 (en) * 2004-10-25 2009-12-29 Alcatel Lucent Internal load balancing in a data switch using distributed network processing
GB0424704D0 (en) * 2004-11-09 2004-12-08 Nortel Networks Ltd Atm over ethernet scheduler
US7583588B2 (en) 2004-11-30 2009-09-01 Broadcom Corporation System and method for maintaining a layer 2 modification buffer
US8000324B2 (en) 2004-11-30 2011-08-16 Broadcom Corporation Pipeline architecture of a network device
FI117685B (fi) 2004-12-09 2007-01-15 Tellabs Oy Yhdistetty asiakasvuo- ja laatuluokkaperusteinen vuorotusmenetelmä ja -laitteisto siirtoyhteyskapasiteetin vuorottamiseksi pakettikytkentäisten tietoliikennevoiden kesken
US8228932B2 (en) 2005-02-18 2012-07-24 Broadcom Corporation Layout architecture for expandable network device
US7254768B2 (en) 2005-02-18 2007-08-07 Broadcom Corporation Memory command unit throttle and error recovery
US7948896B2 (en) 2005-02-18 2011-05-24 Broadcom Corporation Weighted-fair-queuing relative bandwidth sharing
US7630306B2 (en) 2005-02-18 2009-12-08 Broadcom Corporation Dynamic sharing of a transaction queue
US7522622B2 (en) 2005-02-18 2009-04-21 Broadcom Corporation Dynamic color threshold in a queue
US7802148B2 (en) 2005-02-23 2010-09-21 Broadcom Corporation Self-correcting memory system
US7606147B2 (en) 2005-04-13 2009-10-20 Zeugma Systems Inc. Application aware traffic shaping service node positioned between the access and core networks
US7719995B2 (en) 2005-09-09 2010-05-18 Zeugma Systems Inc. Application driven fast unicast flow replication
US7733891B2 (en) * 2005-09-12 2010-06-08 Zeugma Systems Inc. Methods and apparatus to support dynamic allocation of traffic management resources in a network element
US7593330B1 (en) * 2006-01-30 2009-09-22 Juniper Networks, Inc. Processing of partial frames and partial superframes
US7636357B2 (en) * 2006-04-27 2009-12-22 Alcatel Lucent Method of collecting consistent flow statistics through multiple congestion points within a multi-service switch/router and multi-service switches/routers provisioned with same
US7773510B2 (en) 2007-05-25 2010-08-10 Zeugma Systems Inc. Application routing in a distributed compute environment
US8374102B2 (en) 2007-10-02 2013-02-12 Tellabs Communications Canada, Ltd. Intelligent collection and management of flow statistics
GB2462406B (en) * 2008-06-09 2011-02-23 Gnodal Ltd Method of data delivery across a network
US20100097932A1 (en) * 2008-10-15 2010-04-22 Viasat, Inc. Satellite traffic and congestion-based upstream scheduler
US8359421B2 (en) * 2009-08-06 2013-01-22 Qualcomm Incorporated Partitioning a crossbar interconnect in a multi-channel memory system
FR2949934B1 (fr) * 2009-09-09 2011-10-28 Qosmos Surveillance d'une session de communication comportant plusieurs flux sur un reseau de donnees
US20140050221A1 (en) * 2012-08-16 2014-02-20 Stmicroelectronics, Inc. Interconnect arrangement
US8995457B1 (en) * 2012-11-15 2015-03-31 Qlogic, Corporation Systems and methods for modifying frames in a network device
US9866502B2 (en) * 2014-08-11 2018-01-09 Centurylink Intellectual Property Llc Programmable broadband gateway hierarchical output queueing
CN110301116B (zh) * 2017-11-27 2021-09-28 柏思科技有限公司 通过绑定连接传送和接收数据分组的方法和系统
US20220312253A1 (en) * 2021-03-26 2022-09-29 T-Mobile Usa, Inc. System and method for dynamic allocation of resources
EP4096173B1 (de) * 2021-05-27 2023-12-27 Amadeus S.A.S. Konsistente aktualisierung von routing-tabellen in einem verteilten nachrichtensystem

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3354689B2 (ja) * 1994-02-28 2002-12-09 富士通株式会社 Atm交換機、交換機及びそのスイッチングパス設定方法
US5793747A (en) * 1996-03-14 1998-08-11 Motorola, Inc. Event-driven cell scheduler and method for supporting multiple service categories in a communication network
US5831980A (en) 1996-09-13 1998-11-03 Lsi Logic Corporation Shared memory fabric architecture for very high speed ATM switches
US6097722A (en) * 1996-12-13 2000-08-01 Nortel Networks Corporation Bandwidth management processes and systems for asynchronous transfer mode networks using variable virtual paths
US6098109A (en) * 1996-12-30 2000-08-01 Compaq Computer Corporation Programmable arbitration system for determining priority of the ports of a network switch
US6115373A (en) * 1997-01-24 2000-09-05 The Hong Kong University Of Science And Technology Information network architecture
CA2285245A1 (en) 1997-04-04 1998-10-15 Mahesh N. Ganmukhi High speed packet scheduling method and apparatus
US5940390A (en) * 1997-04-10 1999-08-17 Cisco Technology, Inc. Mechanism for conveying data prioritization information among heterogeneous nodes of a computer network
US6014380A (en) * 1997-06-30 2000-01-11 Sun Microsystems, Inc. Mechanism for packet field replacement in a multi-layer distributed network element
US6163542A (en) 1997-09-05 2000-12-19 Carr; David Walter Virtual path shaping
US6339595B1 (en) * 1997-12-23 2002-01-15 Cisco Technology, Inc. Peer-model support for virtual private networks with potentially overlapping addresses
US6330614B1 (en) * 1998-03-20 2001-12-11 Nexabit Networks Llc Internet and related networks, a method of and system for substitute use of checksum field space in information processing datagram headers for obviating processing speed and addressing space limitations and providing other features
US6452915B1 (en) * 1998-07-10 2002-09-17 Malibu Networks, Inc. IP-flow classification in a wireless point to multi-point (PTMP) transmission system
US20020097725A1 (en) * 1998-07-27 2002-07-25 Nec Corporation Resource and protocol management for virtual private networks within multiprocessor ATM switches

Also Published As

Publication number Publication date
DE60035091D1 (de) 2007-07-19
CA2314625C (en) 2007-12-04
EP1093266A3 (de) 2003-09-03
EP1093266B1 (de) 2007-06-06
CA2314625A1 (en) 2001-03-23
EP1093266A2 (de) 2001-04-18
US6680933B1 (en) 2004-01-20

Similar Documents

Publication Publication Date Title
DE60035091T2 (de) Telekommunikationsvermittlungstelle und Verfahren
DE60120847T2 (de) Mehrprotokollvermittler und Verfahren dazu
DE10100842B4 (de) Kommunikationsvorrichtung mit Mehrschichten-Klassenidentifikation und Prioritätssteuerung
DE69732507T2 (de) Paketvermitteltes Kommunikationssystem
DE69735691T2 (de) Verwaltung von virtuellen ATM-Verbindungen mit Protokoll zur Reservierung von Ressourcen
DE60024228T2 (de) Dynamische zuweisung verkehrsklassen an einer prioritätswarteschlange in einer paketbeförderungsvorrichtung
DE60034654T2 (de) System und Verfahren zur Adaption und Verwaltung von IP Dienstqualität
DE60017622T2 (de) Auf RSVP-basiertes Tunnelprotokoll zum Bereitstellen von integrierten Diensten
DE10296945B4 (de) System und Verfahren zum differenzierten Warteschlangenbilden in einem Routing-System
DE60034353T2 (de) Regelbasierte ip datenverarbeitung
DE69838126T2 (de) Verkehrsverwaltung für geschalteten Frame Relay Datendienst
DE69634541T2 (de) Anordnung und verfahren in bezug auf paketflusssteuerung
DE69919569T2 (de) Verwaltung von verbindungsorientierten diensten über das internet-protokoll
DE69833588T2 (de) Dynamische, geschwindigkeitsbasierte Ablauffolgesteuerung für ATM-Netzwerke
DE69936966T2 (de) Kommunikationseinrichtung mit variabler Paketlänge
DE602004001470T2 (de) Verfahren zum Bereitstellen von Diensten mit garantierter Dienstqualität in einem IP-Zugangsnetz
DE69920723T2 (de) Virtuelle private atm-netze
DE69726223T2 (de) Verkehrsformer mit virtuellen Pfaden mit mehrfachen Warteschlangen
DE69926599T2 (de) Verfahren und Vorrichtung zur Reglementierung des Datenverkehrs
DE60128320T2 (de) Durchführung von MPLS auf einer ATM Plattform
DE69912172T2 (de) Verfahren und Vorrichtung zur Steuerung der Verkehrsflüsse in einem Paketvermittlungsnetz
DE10123821A1 (de) Geschaltete Ethernet-Netzwerke
EP0885506A1 (de) Verfahren und anordnung zur übertragung eines datenpakets im ethernet von einer ersten anordnung zu mindestens einer zweiten anordnung
DE10357582A1 (de) Klassenbasierte Ratensteuerung unter Verwendung eines Leaky Bucket mit einer Vielzahl von Grenzwerten
DE60213357T2 (de) System und Verfahren zum Wiederzusammenfügen von Paketen in einem Netzelement

Legal Events

Date Code Title Description
8364 No opposition during term of opposition