DE20023622U1 - Switch for multiservice network, has system control module having memory to store routing table with list of destination addresses reachable by interface modules and its all known routes - Google Patents

Switch for multiservice network, has system control module having memory to store routing table with list of destination addresses reachable by interface modules and its all known routes Download PDF

Info

Publication number
DE20023622U1
DE20023622U1 DE20023622U DE20023622U DE20023622U1 DE 20023622 U1 DE20023622 U1 DE 20023622U1 DE 20023622 U DE20023622 U DE 20023622U DE 20023622 U DE20023622 U DE 20023622U DE 20023622 U1 DE20023622 U1 DE 20023622U1
Authority
DE
Germany
Prior art keywords
port
protocol
switch
layer
packet
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
DE20023622U
Other languages
German (de)
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.)
Nokia of America Corp
Original Assignee
Alcatel Internetworking Inc
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 Alcatel Internetworking Inc filed Critical Alcatel Internetworking Inc
Priority claimed from EP01128305A external-priority patent/EP1225731A3/en
Publication of DE20023622U1 publication Critical patent/DE20023622U1/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/60Router architectures
    • 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/4641Virtual LANs, VLANs, e.g. virtual private networks [VPN]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/02Topology update or discovery
    • H04L45/10Routing in connection-oriented networks, e.g. X.25 or ATM
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/12Shortest path evaluation
    • H04L45/122Shortest path evaluation by minimising distances, e.g. by selecting a route with minimum of number of hops
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/22Alternate routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/28Routing or path finding of packets in data switching networks using route fault recovery
    • 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
    • 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/308Route determination based on user's profile, e.g. premium users
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/52Multiprotocol routers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/58Association of routers
    • H04L45/583Stackable routers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/58Association of routers
    • H04L45/586Association of routers of virtual routers
    • 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/11Identifying congestion
    • 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/16Flow control; Congestion control in connection oriented networks, e.g. frame relay
    • 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/20Traffic policing
    • 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
    • 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/32Flow control; Congestion control by discarding or delaying data units, e.g. packets or frames
    • 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
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/10Packet switching elements characterised by the switching fabric construction
    • H04L49/103Packet switching elements characterised by the switching fabric construction using a shared central buffer; using a shared memory
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/25Routing or path finding in a switch fabric
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/55Prevention, detection or correction of errors
    • 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/18Multiprotocol handlers, e.g. single devices capable of handling multiple protocols

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

Interface modules (10) have processor and memory to store a forwarding table with a list of destination addresses and associated known best route. System control module (14) has a memory to store routing table with a list of destination addresses reachable by interface modules and its all known routes. Routing table is referenced if the particular destination address is not found in the forwarding table. Buses (16,18,20) interconnect the interface modules and the system control module for transferring blocks of data to the particular destination address. An independent claim is also included for method of forwarding data blocks to destination address.

Description

SACHGEBIET DER ERFINDUNGFIELD THE INVENTION

Die vorliegende Erfindung bezieht sich allgemein auf Netzwerkvermittlungen und genauer auf einen Mehrdienstnetzwerk-Switch zur Bereitstellung mehrerer Netzdienste von einer einzigen Plattform aus.The The present invention relates generally to network switches and more particularly to a multi-service network switch for deployment multiple network services from a single platform.

HINTERGRUND DER ERFINDUNGBACKGROUND THE INVENTION

Die heutigen Anbieter von Netzdiensten werden mit außerordentlichen Herausforderungen konfrontiert. Das Verkehrsvolumen nimmt rasant zu. Sowohl Verbraucher als auch Unternehmen verlangen höhere Zugangsraten und halten sich länger im Internet auf, und sie sind zugleich auf der Suche nach Garantien für kalkulierbare Leistungsniveaus sowie nach strikteren Service-Levels. Dies zwingt die Anbieter von Internetdiensten (Internet Service Providers, ISPs) unmittelbar, an den Standorten ihrer POPs (Points of Presence) größere Kapazitäten und höhere Übertragungsgeschwindigkeiten vorzuhalten, und das vorzugsweise ohne Einschränkungen bei der Leistung.The Today's providers of network services are facing extraordinary challenges faced. The volume of traffic is increasing rapidly. Both consumers as well as companies demand higher access rates and stay longer on the internet, and they are also looking for guarantees for calculable Performance levels and stricter service levels. This forces Internet service providers (ISPs) immediately, at the sites of their POPs (Points of Presence) greater capacity and higher transmission speeds vorzuhalten, and preferably without limitations on performance.

Um auch nur eine akzeptable Leistung aufrechtzuerhalten, bieten die Dienstanbieter zusätzlichen Support für mehr Benutzer, mehr Verkehr und mehr Transaktionen, vorzugsweise ohne die Schaffung von Engpässen oder Beeinträchtigung der Netzverfügbarkeit. Viele netzbasierte Unternehmenstransaktionen sind zeitkritisch und verkraften typisch keine untragbaren Verzögerungen oder Abbrüche.Around even to maintain an acceptable performance, the offer Service provider additional support for more Users, more traffic and more transactions, preferably without the creation of bottlenecks or impairment the network availability. Many network-based business transactions are time-critical and Typically, there are no intolerable delays or crashes.

In dem Bemühen, einigen der Herausforderungen zu begegnen, gehen einige ISPs dazu über, das große Verkehrsvolumen durch Zugangs-Konzentratoren und High-End-Router zu bewältigen. Das Problem bei herkömmlichen Zugangs-Konzentratoren und High-End-Routern ist allerdings, daß diese Komponenten von ihrem Konzept her mit einer zentralen Zentralverarbeitungseinheit (Central Processing Unit, CPU) für die zentralisierte Verarbeitung ausgerüstet sind. Sämtliche Daten werden über einen zentralisierten Routenweiterleiter/Prozessor geleitet, der den Verarbeitungs-Overhead erhöht, Engpässe verursacht, die Skalierbarkeit einschränkt und einen einzigen Ausfallpunkt (Point of Failure) schafft. Tatsächlich kann der Zentralprozessor das höhere Datenvolumen nicht effektiv verarbeiten, wenn neue Module hinzugefügt werden. Wenn weitere Module hinzugefügt werden, stößt die Systemleistung an ihre Grenzen.In the effort To meet some of the challenges, some ISPs are transitioning to the large volume of traffic through access concentrators and high-end routers. The problem with conventional Access concentrators and high-end routers, however, is that these Components from their concept with a central central processing unit (Central Processing Unit, CPU) for the centralized processing are equipped. All Data is being transmitted directed a centralized route router / processor, the increases the processing overhead, bottlenecks causing scalability and a single point of failure (Point of Failure) creates. Indeed the central processor can do the higher Do not process data volumes effectively when new modules are added. If added more modules will hit the system performance to their limits.

Zur Herausforderung der wachsenden Datenvolumina kommt die Herausforderung einer zunehmenden Diversität der angewandten Netzwerktechnologien. So können die Benutzer beispielsweise über Wählverbindungen, ISDN-Verbindungen, Mietleitungen, Frame Relays oder virtuelle ATM-Leitungen auf die öffentliche Infrastruktur zugreifen. Sie können dafür Sprachband-Modems, Kabelmodems, unterschiedlichste xDSL-Modems oder sonstige Modems verwenden. Innerhalb der Infrastruktur kann ein POP eines Dienstanbieters beispielsweise über ATM, Frame Relay oder Ethernet eine Verbindung zum Kernnetz und zu anderen Geräten im POP herstellen.to The challenge comes with the challenge of growing data volumes an increasing diversity the applied network technologies. For example, users can use dial-up connections, ISDN connections, leased lines, frame relays or virtual ATM lines on the public infrastructure access. You can for voice-band modems, Cable modems, various xDSL modems or other modems use. Within the infrastructure can be a POP of a service provider for example about ATM, Frame Relay or Ethernet connect to the core network and to other devices in the POP.

Alle Netzwerktechnologien in herkömmlicher Weise zu unterstützen, bedeutet für die ISPs, daß sie typischerweise separate Zugangsserver, Zugangsrouter und/oder Stand-alone-LAN-Switches hinzufügen, was für den ISP allgemein zu einer Zunahme der Kosten und der Management-Komplexitäten führt.All Network technologies in conventional Way to support means for the ISPs that they typically add separate access servers, access routers, and / or stand-alone LAN switches, which is for the ISP generally leads to an increase in costs and management complexities.

Dementsprechend besteht ein Bedarf an einem Netzwerk-Switch, der fehlertolerante und effiziente Dienste bereitstellen kann, die der steigenden Zahl und Verschiedenartigkeit des Datenverkehrs im Netz Rechnung tragen. Ein solcher Switch sollte den ISPs vorzugsweise die Bereitstellung von Mehrwertdiensten erlauben, die es ihnen gestatten, sich von ihren Wettbewerbern abzuheben, sich neue Märkte zu erschließen und den Umsatz mit ihren vorhandenen Kunden zu steigern.Accordingly There is a need for a network switch that provides fault-tolerant and efficient services can provide that of increasing number and diversity data traffic in the network. Such a switch should preferably allow the ISPs to provide value-added services, that allow them to stand out from their competitors, new markets to open up and increase sales with their existing customers.

KURZBESCHREIBUNG DER ERFINDUNGSUMMARY THE INVENTION

Die vorliegende Erfindung betrifft einen Mehrdienstnetzwerk-Switch, der in der Lage ist, von einer einzigen Plattform aus mehrere Netzdienste einschließlich Modem- und ISDN-Dienste, die Unterstützung von Frame Relay, LAN-Schnittstellen sowie das Layer-2- und Layer-3-Switching bereitzustellen. Gemäß einer Ausführungsform der Erfindung beinhaltet der Switch eine dezentrale Paketweiterleitungs-Architektur, bei der die verschiedenen Systemschnittstellenmodule (Karten) modulinterne Intelligenz, Routenweiterleitung und Routenverarbeitungs-Informationen besitzen. Jedes Modul kann somit autark Weiterleitungsentscheidungen treffen, so daß die Datenpakete parallel weitergeleitet werden können. Gemäß einem Aspekt der Erfindung wird die dezentrale Paketweiterleitung durch ein hierarchisches Routingschema bewerkstelligt, das eine Routingtabelle, eine Weiterleitungstabelle und einen IP-Cache beinhaltet. Jedes Schnittstellenmodul beinhaltet vorzugsweise den IP-Cache und die Weiterleitungstabelle bekannter Zieladressen. Wenn eine Zieladresse weder im IP-Cache noch in der Weiterleitungstabelle gefunden wird, erfolgt ein Vergleich (Lookup) mit der Routingtabelle, bei dem die Routing-Information zum Weiterleiten eines Pakets abgerufen wird.The present invention relates to a multi-service network switch capable of supporting multiple network services, including modem and ISDN services, Frame Relay support, LAN interfaces, Layer 2 and Layer 3, from a single platform. To provide switching. According to one embodiment of the invention, the switch includes a distributed packet routing architecture in which the various system interface modules (cards) have module-internal intelligence, route forwarding, and route processing information. Each module can thus autonomously make forwarding decisions, so that the data packets can be forwarded in parallel. In accordance with one aspect of the invention, decentralized packet forwarding is accomplished by a hierarchical routing scheme that includes a routing table, a routing table, and an IP cache. Each interface module preferably includes the IP cache and routing table of known destination addresses. If a destination address is found neither in the IP cache nor in the routing table, a look-up is made to the routing table, which retrieves the routing information for forwarding a packet.

In alternativen Ausführungsformen beinhaltet der Switch eines oder mehrere der folgenden Merkmale:In alternative embodiments The switch includes one or more of the following features:

Der Switch gestattet ein dynamisches Ressourcenmanagement für das dynamische Zuweisen von Ressourcen zu einem ankommenden Anruf. Dadurch sind Ressourcen nicht an bestimmte Ports gebunden, sondern können von verschiedenen Schnittstellenmodulen gemeinsam genutzt werden. Wenn eine Ressource irgendwo im System verfügbar ist, kann sie vorzugsweise von jeder Karte genutzt werden. Wenn weiterhin eine der Ressourcen ausfällt, wird sie als nicht verfügbar gekennzeichnet, und Anrufe werden vorzugsweise automatisch zu anderen Ressourcen umgeleitet. In einer vollständig dezentral organisierten Architektur verringert dies die Abhängigkeit von einer einzigen Verarbeitungseinheit zum Senden oder Beantworten einer Ressourcenanforderung.Of the Switch allows dynamic resource management for the dynamic Assign resources to an incoming call. Thereby are Resources are not tied to specific ports, but can be from different interface modules are shared. If a resource is available anywhere in the system, it can preferably be used by every card. If one of the resources continues fails, she will not be available and calls preferably become others automatically Resources redirected. In a completely decentralized organized Architecture reduces this dependence on a single one Processing unit for sending or answering a resource request.

Der Switch kann außerdem Fehlermanagementfunktionen zur Absicherung gegen einzelne Ausfallpunkte innerhalb des Switches beinhalten. Ein fehlertoleranter Anwendungs-Manager (FTAM) überwacht Systemmodule, und beim Ausfall eines Moduls stellt sich die FTAM-Software in den übrigen Modulen vorzugsweise wieder her und baut erneut Verbindungen zu verschiedenen Ressourcen oder Ausgangsports auf. Der FTAM aktiviert vorzugsweise eine Hardware und eine Software zur automatischen Schutzumschaltung (Automatic Protection Switching, APS) zur automatischen Wiederherstellung nach Geräteausfällen und Ausfällen externer Verbindungen.Of the Switch can also Error management functions to protect against individual points of failure within the switch. A fault-tolerant application manager Monitored (FTAM) System modules, and if a module fails, the FTAM software arises in the rest Preferably restores modules and reestablishes connections different resources or output ports. The FTAM is activated preferably hardware and software for automatic protection switching (Automatic Protection Switching, APS) for automatic recovery after device failures and Failures external Links.

Der Switch kann überdies das Wählverbindungsnetzwerk-Wholesaling erleichtern, bei dem Wählverbindungsports an andere ISPs weiterverkauft werden, indem der Switch in mehrere virtuelle Router partitioniert wird. Jeder virtuelle Router sollte vorzugsweise über seinen eigenen Satz von Ressourcen (z.B. ISDN- oder Modem-Ressourcen) und eine zum virtuellen Router gehörige Routingtabelle verfügen. Jeder virtuelle Router funktioniert daher als separater, unabhängiger und eigenständiger Router. Gemäß einem speziellen Aspekt der Erfindung ist jeder virtuelle Router ferner zum weiteren Steuern des Zugangs zum Netz in virtuelle private Netzwerke partitioniert. Ein virtuelles privates Netz wird durch Filter gebildet, von denen jedes einem Filterkriterium und einer Aktion zugeordnet ist, die auszuführen ist, wenn ein an den virtuellen Router gerichteter Datenblock die Filterkriterien erfüllt.Of the Switch can also facilitate the dial-up networking wholesaling, at the dial-up port to be resold to other ISPs by having the switch in several virtual router is partitioned. Every virtual router should preferably over its own set of resources (e.g., ISDN or modem resources) and have a routing table associated with the virtual router. Everyone virtual router therefore works as a separate, independent and independent Router. According to one In particular aspect of the invention, each virtual router is further to further control access to the network in virtual private networks partitioned. A virtual private network is formed by filters, each of which is associated with a filter criterion and an action is to execute that is when a data block directed to the virtual router is the Filter criteria met.

Das Wählverbindungsnetzwerk-Wholesaling wird auch vom policybasierten Routing des Switches unterstützt. Der Switch gestattet die Auswahl eines Routingpfades für eine bestimmte Verbindung anhand von Anruf-Policies, die dem Anruf zugewiesen wurden. Somit kann anhand von Faktoren wie z.B. dem Inlink-Typ der Verbindung, einem Domainnamen, einer Telefonnummer oder ähnlichen Angaben eine Verbindung zum Router eines bestimmten ISPs hergestellt werden.The Wählverbindungsnetzwerk-Wholesaling is also supported by the policy-based routing of the switch. Of the Switch allows you to choose a routing path for a particular one Connection based on call policies assigned to the call. Thus, by factors such as e.g. the inlink type of connection, a domain name, phone number or similar information to the router of a particular ISP.

Der Switch bietet außerdem durch Festlegen von Quality-of-Access-Niveaus (QoA-Niveaus) für jede ankommende Verbindungsanforderung einen abgestuften Zugang zum Internet. Über die QoA-Stufen kann der Switch den ankommenden Verbindungsanforderungen Prioritäten zuweisen, wenn Konkurrenz um Ressourcen herrscht. Vorzugsweise wird einer Verbindungsanforderung mit einer höheren QoA-Stufe eine höhere Priorität zugewiesen als einer Verbindungsanforderung mit einer niedrigeren QoA-Stufe.Of the Switch also offers by setting quality of access levels (QoA levels) for each incoming connection request has a tiered access to the internet. about The QoA stages allow the switch to meet the incoming connection requirements priorities assign when there is competition for resources. Preferably assigned a higher priority to a connection request with a higher QoA level as a connection request with a lower QoA level.

Der Switch kann überdies ein IP-Routingprotokoll und eine Architektur unterstützen, bei denen die Layer-2-Protokolle unabhängig von der physikalischen Schnittstelle sind, auf der sie arbeiten. Ein Portschnittstellen- (Port InterFace, PIF-) Modul ermöglicht das dynamische Verknüpfen von Layer-2-Protokollen mit physikalischen Schnittstellen. Wenn über den physikalischen Port eine Verbindung hergestellt wird, generiert der Switch ein PIF-Objekt für diesen Port. Das PIF-Objekt legt vorzugsweise das für die Sitzung zu verwendende Layer-2-Protokoll anhand der Verbindungsart fest und verknüpft dynamisch eine Layer-2-Schnittstelle mit der Layer-1-Schnittstelle des Medienports. Auf diese Weise brauchen Layer-2-Protokolle nicht von den physikalischen Medienports abhängig gemacht zu werden, auf denen sie arbeiten, sondern können im Runtime-Betrieb dynamisch festgelegt werden. Wenn beispielsweise ein Paket an einen physikalischen Port weitergeleitet werden soll, empfängt das PIF das Paket, fügt die benötigten Layer-2-Verkapselungs-Header hinzu und leitet das Paket an die jeweilige physikalische Schnittstelle weiter.The switch can also support an IP routing protocol and an architecture where the Layer 2 protocols are independent of the physical interface on which they operate. A port interface (PIF) module allows dynamic linking of Layer 2 protocols to physical interfaces. When a connection is made through the physical port, the switch generates a PIF object for that port. The PIF object preferably determines the layer 2 protocol to be used for the session based on the connection type and dynamically links a layer 2 interface to the media port layer 1 interface. In this way, Layer 2 protocols do not need to be made dependent on the physical media ports on which they operate, but can be set dynamically in runtime mode. For example, if a packet is to be forwarded to a physical port, the PIF receives the packet, adds the required Layer 2 encapsulation headers, and directs that Package to the respective physical interface on.

Der Switch kann zur Anwendungstransparenz außerdem Software für eine generische Weiterleitungs-Schnittstelle (Generic Forwarding Interface, GFI) beinhalten. Die GFI-Software stellt den Weiterleitungsfunktionen vorzugsweise eine einheitliche Schnittstelle zur Verfügung, um die Details für das Senden und Empfangen von Paketen über unterschiedliche Schnittstellentypen zu maskieren. Sie definiert außerdem vorzugsweise eine Schnittstelle, über welche die Treiber empfangene Pakete liefern und Pakete vom System senden.Of the Switch can also provide generic software for application transparency Forwarding Interface (GFI) include. The GFI software preferably makes the forwarding functions uniform Interface available, around the details for sending and receiving packets via different interface types to mask. It also defines preferably an interface over which the driver received Deliver packages and send packages from the system.

KURZBESCHREIBUNG DER ZEICHNUNGENSUMMARY THE DRAWINGS

Diese und andere Merkmale, Aspekte und Vorteile der vorliegenden Erfindung werden verständlicher werden, wenn sie im Zusammenhang mit der folgenden Detailbeschreibung, den beigefügten Ansprüchen und den zugehörigen Zeichnungen betrachtet werden, in welchenThese and other features, aspects and advantages of the present invention will become more understandable when related to the following detailed description, the attached claims and its associated Drawings are considered in which

1 ein Blockdiagramm eines Mehrdienstnetzwerk-Switches gemäß einer Ausführungsform der Erfindung zeigt; 1 shows a block diagram of a multi-service network switch according to an embodiment of the invention;

2 ein detaillierteres Blockdiagramm eines Weiterleitungsmoduls aus 1 zeigt; 2 a more detailed block diagram of a forwarding module 1 shows;

3 ein beispielhaftes Flußdiagramm zum Verarbeiten eines beim Switch aus 1 eintreffenden Anrufs zeigt; 3 an exemplary flowchart for processing one at the switch 1 incoming call shows;

4 ein detaillierteres Funktions-Blockdiagramm eines IP-Weiterleitungsmoduls aus 2 zeigt; 4 a more detailed functional block diagram of an IP forwarding module 2 shows;

5 ein Entwurfsschema einer Routingtabelle zeigt; 5 shows a layout of a routing table;

6 ein Entwurfsschema einer Weiterleitungstabelle zeigt; 6 shows a layout scheme of a routing table;

7 ein Entwurfsschema eines IP-Caches zeigt; 7 shows a design scheme of an IP cache;

8 ein Entwurfsschema einer ARP-Tabelle zeigt; 8th a schematic of an ARP table is shown;

9 ein Flußdiagramm eines vom IP-Weiterleitungsmodul aus 4 ausgelösten Paketweiterleitungsprozesses zeigt; 9 a flowchart of one from the IP forwarding module 4 triggered packet forwarding process shows;

10 ein Entwurfsschema einer Domain-Datenbank zeigt; 10 shows a design schema of a domain database;

11 ein Entwurfsschema eines Anrufpolicy-Eintrags zeigt; 11 shows a scheme of a call policy entry;

12 ein Prozeß-Flußdiagramm für das policybasierte Routing zeigt; 12 shows a process flow diagram for policy-based routing;

13 ein Entwurfsschema einer Zugangsqualitätstabelle zeigt; 13 shows a design scheme of an access quality table;

14 eine Darstellung eines Pfades zeigt, über den eine Verbindung hergestellt werden könnte, wenn Switch-Ressourcen gemeinsam genutzt werden; 14 shows a representation of a path over which a connection could be made if switch resources are shared;

15 ein Entwurfsschema einer Modemressourcentabelle zeigt; 15 shows a schematic of a modem resource table;

16 ein Flußdiagramm eines Ressourcenzuordnungsprozesses zeigt; 16 shows a flowchart of a resource allocation process;

17 ein schematisches Blockdiagramm des Switches aus 1 zeigt, auf dem eine Routingtabelle für jeden virtuellen Router geführt wird; 17 a schematic block diagram of the switch 1 shows on which a routing table is maintained for each virtual router;

18 ein Entwurfsschema einer Sitzungstabelle mit mehreren Sitzungen virtueller Privatnetze zeigt; 18 shows a schematic of a session table with multiple virtual private network sessions;

19 ein Entwurfsschema einer Regeltabelle mit mehreren Regeln virtueller Privatnetze zeigt; 19 shows a design scheme of a rule table with multiple virtual private network rules;

20 ein Entwurfsschema einer Filtertabelle mit mehreren Filtern virtueller Privatnetze zeigt; 20 shows a schematic of a filter table with multiple virtual private network filters;

21 ein Flußdiagramm eines von einem Filterungsmodul ausgelösten Paketfilterungsprozesses zeigt; 21 shows a flowchart of a filtering module initiated by a filtering module;

22 ein Blockdiagramm eines Switches mit einem APS-Mechanismus für den Ausfall externer Verbindungen zeigt; 22 shows a block diagram of a switch with an APS mechanism for the failure of external connections;

23 ein schematisches Blockdiagramm eines Switches mit einem Backup-Port zeigt, der physikalisch mit einem anderen Port auf einer separaten Karte verbunden ist; 23 shows a schematic block diagram of a switch with a backup port that is physically connected to another port on a separate card;

24 ein schematisches Blockdiagramm eines Switches mit 1:2-Schutzumschaltung zeigt; 24 shows a schematic block diagram of a switch with 1: 2 protection switching;

25 ein schematisches Blockdiagramm eines Switches mit 1:2-Schutzumschaltung gemäß einer alternativen Ausführungsform der Erfindung zeigt; 25 shows a schematic block diagram of a switch with 1: 2 protection switching according to an alternative embodiment of the invention;

26 ein schematisches Blockdiagramm eines Switches mit 1:1-Schutzumschaltung zeigt; 26 shows a schematic block diagram of a switch with 1: 1 protection switching;

27 ein schematisches Blockdiagramm einer IP-Weiterleitungsschicht sowie von Layer-2-Protokollen und physikalischen Layer-1-Schnittstellen zeigt; 27 Figure 12 shows a schematic block diagram of an IP forwarding layer as well as Layer 2 protocols and Layer 1 physical interfaces;

28 ein schematisches Blockdiagramm aus Layer-1-, Layer-2- und Layer-3-Schnittstellen mit Mehrfach-Portschnittstellen zeigt; 28 shows a schematic block diagram of Layer 1, Layer 2 and Layer 3 interfaces with multiple port interfaces;

29 ein schematisches Blockdiagramm einer generischen Weiterleitungs-Schnittstelle zeigt, die den Switch aus 1 in Treiber und Anwendungen unterteilt; 29 a schematic block diagram of a generic forwarding interface showing the switch off 1 divided into drivers and applications;

30 ein schematisches Blockdiagramm eines generischen Paketformats zeigt; 30 shows a schematic block diagram of a generic packet format;

31 ein Entwurfsschema einer Weiterleitungs-Portadresse zeigt; 31 shows a layout scheme of a forwarding port address;

32 ein Entwurfsschema einer physikalischen Portadresse zeigt; 32 shows a schematic scheme of a physical port address;

33 ein Entwurfsschema einer Eingangsportinformation zeigt; 33 Fig. 16 shows a layout scheme of input port information;

34 ein Entwurfsschema einer Ausgangsportinformation zeigt; 34 Fig. 16 shows a layout diagram of output port information;

35 ein Entwurfsschema Zuordnungen virtueller Adressenports zeigt und 35 a design schema shows assignments of virtual address ports and

36 ein Entwurfsschema einer generischen Weiterleitungs-Schnittstelle zeigt, die das Empfangen von Warteschlangen und das Weiterleiten von Warteschlangen unterstützt. 36 shows a schematic schema of a generic forwarding interface that supports receiving queues and forwarding queues.

AUSFÜHRLICHE BESCHREIBUNG DER ERFINDUNG DETAILED DESCRIPTION OF THE INVENTION

I. ARCHITEKTUR DES MEHRDIENSTNETZWERK-SWITCHESI. ARCHITECTURE OF THE MULTI-NETWORK NETWORK SWITCH

1 zeigt ein schematisches Blockdiagramm eines (auch als das "Chassis" oder "System" bezeichneten) Mehrdienstnetzwerk-Switches gemäß einer Ausführungsform der Erfindung. Jeder Steckplatz des Switches bedient vorzugsweise ein einziges Schnittstellenmodul (eine Karte), das als Weiterleitungsmodul (Forwarding Module, FM) 10 bezeichnet wird. Jedes FM 10 beinhaltet vorzugsweise die modulinterne Intelligenz, Routenweiterleitungsfunktionen und Routenverarbeitungs-Informationen für das dezentrale Weiterleiten von Paketen, was nachstehend näher beschrieben wird. 1 Figure 12 shows a schematic block diagram of a multi-service network switch (also referred to as the "chassis" or "system") according to an embodiment of the invention. Each slot of the switch preferably operates a single interface module (a card) that serves as a forwarding module (FM). 10 referred to as. Every FM 10 preferably includes the module-internal intelligence, route forwarding functions and route processing information for the decentralized forwarding of packets, which will be described in more detail below.

Ein FM-Typ, der als Systemsteuerungsmodul (System Control Module, SCM) bezeichnet wird, dient als Host für einen Routenserver und wirkt als Kontrollpunkt für das Netzmanagement. Das SCM 14 führt zudem alle typischen Funktionen eines FM 10 aus.An FM type, referred to as a System Control Module (SCM), hosts a route server and acts as a control point for network management. The SCM 14 also performs all the typical functions of an FM 10 out.

Der Switch beinhaltet mindestens zwei SCMs für die Fehlertoleranz, und zwar ein primäres SCM und ein sekundäres SCM. Das primäre SCM wird beim Starten des Systems ausgewählt und allen anderen FMs 10 bekanntgegeben. Das primäre SCM wählt vorzugsweise das sekundäre SCM als Backup-Modul aus. Sollte das primäre SCM ausfallen, übernimmt das sekundäre SCM dessen Funktion als primäres SCM, vorzugsweise ohne Verlust von Informationen und ohne Betriebsunterbrechung.The switch includes at least two fault tolerance SCMs, a primary SCM and a secondary SCM. The primary SCM is selected when the system starts and all other FMs 10 announced. The primary SCM preferably selects the secondary SCM as a backup module. Should the primary SCM fail, the secondary SCM assumes its function as the primary SCM, preferably without loss of information and without service interruption.

Jedem FM 10 können anwendungsspezifische Tochterkarten zugeordnet sein, die als Personalmodule (Personality Modules, PMs) 12 bezeichnet werden und als zusätzliche Leitungsschnittstellen oder Unterstützungshardware dienen. In der bevorzugten Ausführungsform sind jedem FM ein oder zwei PMs zugeordnet. Die als Beispiel angegebenen PMs 12 beinhalten Ethernet-Switch-PMs 12a, Primärmultiplexschnittstellen-PMs 12b, Digitalmodemserver-PMs 12c und serielle Datenschnittstellen-PMs 12d. Zusammen ermöglichen die FMs 10 und die PMs 12 einem ISP die Bereitstellung einer Vielzahl von Diensten und die Unterstützung einer Vielzahl von Anwendungen innerhalb ein und derselben Plattform.Every FM 10 You can assign application-specific daughter cards that are called Personality Modules (PMs). 12 and serve as additional line interfaces or support hardware. In the preferred embodiment, each FM is assigned one or two PMs. The PMs given as an example 12 include Ethernet switch PMs 12a , Primary multiplex interface PMs 12b , Digital Modem Server PMs 12c and serial data interface PMs 12d , Together, the FMs 10 and the PMs 12 providing an ISP with a variety of services and supporting a variety of applications within one and the same platform.

Das Ethernet-Swicth-PM 12a ermöglicht das Herstellen einer LAN-Verbindung zu einem öffentlichen Netz, beispielsweise zum Internet. Dieses Modul wird typisch für das Verbinden von Serverfarmen, Intranets und Web-Servern mit dem Internet verwendet. Gemäß einer Ausführungsform der Erfindung stellt das Ethernet-Switch-PM 12a zwölf 10-Mbit/s-Ethernet-Ports und zwei 10/100-Mbit/s-Autosensing-Ethernet-Ports/Fast-Ethernet-Ports bereit.The Ethernet Swicth PM 12a allows you to establish a LAN connection to a public network, such as the Internet. This module is typically used to connect server farms, intranets, and web servers to the Internet. According to one embodiment of the invention, the Ethernet switch PM 12a Twelve 10Mbps Ethernet ports and two 10 / 100Mbps Autosensing Ethernet ports / Fast Ethernet ports ready.

Das Primärmultiplex-Schnittstellen- (Primary Rate Interface-, PRI-) PM 12b stellt Wählverbindungen zum Internet bereit. Dieses Modul ist als Software für T1/E1- oder PRI-ISDN-Verbindungen implementierbar. Das PRI-PM 12b stellt redundante Verbindungen für eine automatische Schutzumschaltung auf jedem Port bereit. Dem Port "A" 13 ist die Rolle des aktiven Primärports zugewiesen, während Port "B" 15 als aktiver Backup-Port arbeitet.The Primary Rate Interface (PRI) PM 12b Provides dialup connections to the Internet. This module can be implemented as software for T1 / E1 or PRI ISDN connections. The PRI-PM 12b Provides redundant connections for automatic protection switching on each port. Port "A" 13 is assigned the role of the active primary port while port "B" 15 works as an active backup port.

Das Digitalmodemserver-PM 12c stellt Wählzugänge für Modemanrufe bereit. Gemäß einer Ausführungsform der Erfindung stellt jedes Digitalmodemserver-PM 12c einen Pool von 32 Modems zur Verfügung. Das Digitalmodemserver-PM 12c besitzt vorzugsweise keine physikalischen Anschlüsse. Somit werden ankommende Anrufe über die Backplane zu demjenigen FM 10 geroutet, an welches das Digitalmodemserver-PM 12c angeschlossen ist. Die verfügbaren Modems werden in Abhängigkeit von Ressourcen-Verfügbarkeitskriterien wie der Zugangsqualität und der ID des virtuellen Routers auf die ankommenden Anrufe verteilt. Wenn ein Anruf abgewickelt werden kann, wird er unabhängig vom FM 10, bei dem der Anruf eingegangen ist, nach dem Zufallsprinzip einem der verfügbaren Modems im Modempool zugewiesen.The digital modem server PM 12c Provides dial access for modem calls. According to one embodiment of the invention, each digital modem server PM 12c a pool of 32 modems available. The digital modem server PM 12c preferably has no physical connections. Thus, incoming calls over the backplane become FM 10 to which the digital modem server PM 12c connected. The available modems are distributed to the incoming calls based on resource availability criteria such as the access quality and the ID of the virtual router. If a call can be handled, it will be independent of the FM 10 in which the call came in, randomly assigned to one of the available modems in modem pool.

Das serielle Datenschnittstellen-PM 12d ermöglicht eine serielle synchrone Kommunikation. Das serielle Datenschnittstellen-PM 12d unterstützt insgesamt vier Verbindungen, beispielsweise drei Frame-Relay-Verbindungen und -eine Ethernet-Verbindung oder vier Frame-Relay-Verbindungen und keine Ethernet-Verbindung. Die Verbindungsschicht des seriellen Datenschnittstellen-PMs 12d ist vorzugsweise vom Frame-Relay-Typ und stellt typisch Verbindungen zu lokalen Routern oder externen Geräten her, über die Verbindungen mit ISPs oder Dienstanbietern hergestellt werden.The serial data interface PM 12d enables serial synchronous communication. The serial data interface PM 12d supports a total of four connections, for example three frame relay connections and one Ethernet connection or four frame relay connections and no Ethernet connection. The connection layer of the serial data interface PMs 12d is preferably frame relay type and typically connects to local routers or external devices that connect to ISPs or service providers.

Zusätzlich zu den anwendungsspezifischen PMs 12d können auch fest zugewiesene FMs 10 den ISPs die Möglichkeit zur Bereitstellung einer Vielzahl von Diensten geben. Fest zugewiesene FMs 10 sind vorzugsweise Module mit fester Konfiguration, die über Verarbeitungsleistung und auf dem Modul fest verdrahtete Funktionen verfügen. Beispiele für fest zugewiesene FMs sind Digitalmodemserver-PMs und WAN-Leitungsschnittstellen-FMs. Ein WAN-Leitungsschnittstellen-FM stellt dem Switch einen kanalweise organisierten T1- oder ISDN-Primärmultiplex-Zugang zur Verfügung. Ein Digitalmodemserver-PM stellt einen Wählzugang für Modemanrufe bereit. Ein Digitalmodemserver-PM stellt typisch 32 Modems bereit, kann aber auch durch Hinzufügen eines Digitalmodemserver-PMs 12c bis zu 64 Modems bereitstellen.In addition to the application specific PMs 12d can also use dedicated FMs 10 give the ISPs the opportunity to provide a variety of services. Fixed FMs 10 are preferably fixed configuration modules that have processing power and functions hard-wired to the module. Examples of dedicated FMs are digital modem server PMs and WAN trunk interface FMs. A WAN trunk interface FM provides the switch with channel-based T1 or ISDN primary rate access. A digital modem server PM provides dial-up access for modem calls. A digital modem server PM typically provides 32 modems, but can also do so by adding a digital modem server PM 12c provide up to 64 modems.

Der Switch beinhaltet vorzugsweise eine redundante Busarchitektur zur Verknüpfung der FMs 10 und der SCMs 14. Diese Busarchitektur stellt über die Backplane des Switches vorzugsweise zwei Managementbusse 16 (rechts und links), zwei im Zeitmultiplex (Time-Division Multiplex, TDM) arbeitende Busse 18 (rechts und links) und zwei Cell/ATM-Busse 20 (rechts und links) zur Verfügung. In einer Ausführungsform der Erfindung nutzen alle Karten standardmäßig die rechten Management- und TDM-Busse. Alle Karten in geradzahligen Steckplätzen nutzen standardmäßig den linken Cell-Bus, während alle Karten in ungeradzahligen Steckplätzen standardmäßig den rechten Cell-Bus nutzen. Durch die redundante Busarchitektur kann der Datenverkehr automatisch auf den verbleibenden Bus umgeschaltet werden, so daß ein ununterbrochener Betrieb gewährleistet ist. Nachdem der ausgefallene Bus wieder in Betrieb genommen wurde, wird der Verkehr vorzugsweise automatisch wieder auf den nunmehr wieder funktionsfähigen Bus umgeschaltet.The switch preferably includes a redundant bus architecture for linking the FMs 10 and the SCMs 14 , This bus architecture preferably provides two management buses via the backplane of the switch 16 (right and left), two time-division multiplex (TDM) buses 18 (right and left) and two Cell / ATM buses 20 (right and left) available. In one embodiment of the invention, all cards use the right management and TDM buses by default. All cards in even slots use the left cell bus by default, while all cards in odd slots use the right cell bus by default. Due to the redundant bus architecture, the traffic can be automatically switched to the remaining bus, so that uninterrupted operation is ensured. After the failed bus has been put back into operation, the traffic is preferably automatically switched back to the now re-functioning bus.

Die Managementbusse 16 bewerkstelligen die systeminterne Kommunikation zur Überwachung verschiedener Systemkomponenten. So transportieren die Managementbusse beispielsweise Meldungen für die Betriebsabläufe beim Einschalten, für den Modulstatus sowie für andere Funktionen des Hardwaremanagements.The management buses 16 manage the system-internal communication for the monitoring of various system components. For example, the management buses carry messages for power-on operations, module status, and other hardware management functions.

Die TDM-Busse 18 bewerkstelligen die Kommunikation für die Digitalmodemserver-PMs 12c. Gemäß einer Ausführungsform der Erfindung unterstützen die TDM-Busse 16c über 2000 DS0-Verbindungen und bewältigen gemeinsam die auf ihnen liegende Verkehrslast.The TDM buses 18 do the communication for the digital modem server PMs 12c , According to one embodiment of the invention, the TDM buses support 16c Over 2000 DS0 connections and manage the traffic load on them together.

Die Cell-Busse 20 transportieren neben dem Benutzerverkehr zwischen den FMs 10 mit Hilfe von Multicast-Schaltungen auch interne Protokoll- und Steuermeldungen.The cell buses 20 transport in addition to the user traffic between the FMs 10 with the help of multicast circuits also internal protocol and control messages.

Zusätzlich zu den oben beschriebenen Baugruppen beinhaltet der Switch auch zwei Taktkarten, und zwar eine rechte oder erste Taktkarte 18a und eine linke oder zweite Taktkarte 18b, von denen jeder die Funktion einer aktiven primären Taktkarte oder einer redundanten Backup-Taktkarte zugewiesen sein kann. Die rechte Taktkarte 18a überwacht die rechten TDM- und Cell-Busse, während die linke Taktkarte 18b die linken TDM- und Cell-Busse überwacht.In addition to the assemblies described above, the switch also includes two clock cards, a right or first clock card 18a and a left or second clock card 18b each of which may be assigned the function of an active primary clock card or a redundant backup clock card. The right clock card 18a monitors the right TDM and Cell buses while the left clock card 18b monitors the left TDM and Cell buses.

Beide Taktkarten prüfen in regelmäßigen Intervallen ihre jeweiligen TDM- und Cell-Busse, ferner den Status von System-Lüftereinschüben und Systemlüftern sowie das Vorhandensein und den Typ von Stromversorgungen. Anschließend übermitteln die Taktkarten eine Chassis-Statusmeldung über ihren Managementbus 16 per Rundsendung (Broadcast) an alle FMs 10.Both clocks periodically check their respective TDM and Cell buses, as well as the status of system fan trays and system fans, and the presence and type of power supplies. The clock cards then transmit a chassis status message via their management bus 16 Broadcasting to all FMs 10 ,

Die Taktkarten sind vorzugsweise mit mindestens einer Taktsignalquelle ausgestattet, damit der Switch Wählanrufe empfangen kann. Das Taktsignal erzwingt vorzugsweise den Erhalt der Synchronisation zwischen den gesendeten und den empfangenen Bits. Gemäß einer Ausführungsform der Erfindung unterstützt der Switch bis zu fünf Referenztaktsignale, ein primäres Betriebstaktsignal, ein sekundäres Taktsignal zur Gewährleistung der Redundanz sowie bis zu drei Signale als Alternativsignale. Der Switch kann das Referenztaktsignal entweder aus einer externen Quelle oder aus einem internen Systemtakt ableiten. Wenn das Eingangssignal von einer Quelle inakzeptabel wird, schaltet die Taktkarte automatisch auf eine Backup-Taktsignalquelle um. In ähnlicher Weise übernimmt die andere Karte oder der andere Bus den Betrieb, wenn eine Taktkarte oder ein TDM-Bus ausfällt.The Timing cards are preferably with at least one clock signal source equipped to allow the switch dialing calls can receive. The clock signal preferably enforces receipt the synchronization between the sent and the received Bits. According to one embodiment the invention supports the switch up to five Reference clock signals, a primary Operating clock signal, a secondary one Clock signal for warranty the redundancy and up to three signals as alternative signals. Of the Switch can receive the reference clock signal either from an external source or derived from an internal system clock. When the input signal If a source becomes unacceptable, the clock card automatically switches to a backup clock source. In a similar way takes over the other card or the other bus operation, if a clock card or a TDM bus fails.

2 zeigt ein detaillierteres Blockdiagramm eines Weiterleitungsmoduls FM 10 aus 1. Obwohl 2 unter Bezug auf das FM 10 beschrieben wird, kann dasselbe Blockdiagramm auch für das SCM 14 gelten, da das SCM 14 eine Sonderform des FMs 10 ist. Allerdings kann das SCM 14 zusätzlichen Speicher sowie zusätzliche Flash-PROMs und Boot-PROMs beinhalten. Gemäß einer Ausführungsform der Erfindung beinhaltet das FM 10 mindestens einen, im allgemeinen aber zwei RISC-Prozessoren, nämlich einen rechten oder ersten (und auch als Anwendungs-CPU bezeichneten) Prozessor (RCPU) 22a und einen linken oder zweiten (und auch als Treiber-CPU bezeichneten) Prozessor (LCPU) 22b. In einer bevorzugten Ausführungsform mit zwei CPUs ist die LCPU 22b hauptsächlich für das Empfangen und Senden von Paketen verantwortlich, während die RCPU 22a hauptsächlich für das Fehlermanagement, die Protokoll-Ver- und -Entkapselung und ähnliche Aufgaben zuständig ist. Sowohl die RCPU 22a als auch die LCPU 22b haben über Peripheriekomponenten-Verbindungsbusse (Peripheral Component Interconnect Buses, PCI-Busse) 28a und 28b Zugriff auf einen gemeinsam genutzten Speicher 24. 2 shows a more detailed block diagram of a forwarding module FM 10 out 1 , Even though 2 with reference to the FM 10 The same block diagram can also be used for the SCM 14 apply since the SCM 14 a special form of the FM 10 is. However, the SCM 14 additional memory as well as additional Flash PROMs and boot PROMs. According to one embodiment of the invention, the FM includes 10 at least one, but generally two RISC processors, namely a right or first (and also referred to as application CPU) processor (RCPU) 22a and a left or second (and also referred to as a driver CPU) processor (LCPU) 22b , In a preferred embodiment with two CPUs, the LCPU 22b mainly responsible for receiving and sending packets while the RCPU 22a mainly responsible for error management, protocol encapsulation and de-encapsulation and similar tasks. Both the RCPU 22a as well as the LCPU 22b have Peripheral Component Interconnect Buses (PCI buses) 28a and 28b Access to a shared memory 24 ,

Eine PCI-Brücke 30 verbindet den rechten PCI- (RPCI-) Bus 28a mit dem linken PCI- (LPCI-) Bus 28b. Gegenüber der Brücke 30 ist vorzugsweise der RPCI-Bus 28a der primäre PCI-Bus und der LPCI-Bus 28b der sekundäre PCI-Bus.A PCI bridge 30 connects the right PCI (RPCI) bus 28a with the left PCI (LPCI) bus 28b , Opposite the bridge 30 is preferably the RPCI bus 28a the primary PCI bus and the LPCI bus 28b the secondary PCI bus.

Jedes FM 10 beinhaltet außerdem vorzugsweise einen generischen Modulmanagementblock (Generic Module Management Block, GMM-Block) 26 zum Austauschen von Meldungen mit der RCPU 22a über den Managementbus 16. Gemäß einer Ausführungsform der Erfindung ist das GMM 26 als intelligenter Mikroprozessor implementiert. Die Kommunikation zwischen dem GMM 26 und der RCPU 22a wird über eine Serie von Registern bewerkstelligt. Auf die Register, die in einem programmierbaren Logikbauelement implementiert sind, greift die RCPU 22a über einen Eingabe-Ausgabe-PCI-Block 40 zu. Gemäß einer Ausführungsform der Erfindung stellt das GMM 26 zwei Statusregister (GST0 und GST1) zur Verfügung, über welche die RCPU 22a Informationen zum Chassis-Status, zum Status des letzten ausgegebenen Befehls, zum Status der vorangegangenen und nächsten Meldungen in den Meldungswarteschlangen und zu ähnlichen Informationen abfragt und abruft.Every FM 10 also preferably includes a Generic Module Management Block (GMM Block) 26 to exchange messages with the RCPU 22a via the management bus 16 , According to one embodiment of the invention, the GMM 26 implemented as an intelligent microprocessor. The communication between the GMM 26 and the RCPU 22a is accomplished through a series of registers. The RCPU accesses the registers implemented in a programmable logic device 22a via an input-output PCI block 40 to. According to one embodiment of the invention, the GMM 26 two status registers (GST0 and GST1) are available, via which the RCPU 22a Queries and retrieves chassis status information, the status of the last issued command, the status of the previous and next messages in the message queues, and similar information.

Das GMM 26 empfängt von anderen GMMs rundgesandte Meldungen sowie Meldungen, die über den Managementbus 16 an sein FM 10 adressiert sind. Gemäß einer Ausführungsform der Erfindung empfängt nur das GMM 26 auf einer Karte, der die Funktion eines Chassis-Managers zugewiesen ist, rundgesandte Meldungen. Alle anderen GMMs ignorieren vorzugsweise die rundgesandten Meldungen und empfangen nur die an die Karte adressierten Meldungen. Eine spezielle Verarbeitung wird von dem auf dem Chassis-Manager residenten GMM 26 auf Chassis-Statusmeldungen angewandt, die in regelmäßigen Intervallen von den Taktkarten 18a und 18b rundgesandt werden, wie nachstehend ausführlicher beschrieben wird.The GMM 26 receives broadcast messages from other GMMs as well as messages via the management bus 16 to his FM 10 are addressed. According to one embodiment of the invention, only the GMM receives 26 on a map assigned the function of a chassis manager, broadcast messages. All other GMMs preferably ignore the broadcasted messages and only receive those the card addressed messages. Special processing is provided by the GMM resident on the chassis manager 26 applied to chassis status messages at regular intervals from the clock cards 18a and 18b be broadcast, as described in more detail below.

Jeder Karte, sei es nun ein FM 10 oder ein SCM 14, kann die Funktion des Chassis-Managers zugewiesen werden. Es gibt jedoch nur einen Chassis-Manager – einen primären Chassis-Manager – für das gesamte System. Sollte der primäre Chassis-Manager ausfallen, übernimmt ein sekundärer Backup-Chassis-Manager die Rolle des aktiven Chassis-Managers.Every card, be it an FM 10 or an SCM 14 , the function of the chassis manager can be assigned. However, there is only one chassis manager - a primary chassis manager - for the entire system. If the primary chassis manager fails, a secondary backup chassis manager takes over the role of the active chassis manager.

Die Auswahl des primären Chassis-Managers und des sekundären Chassis-Managers erfolgt vorzugsweise während des Hochfahrens des Systems nach dem Einschalten. Jede Karte beinhaltet einen Chassis-Management-Switch, und alle Karten mit eingeschalteten Chassis-Management-Switches sind Chassis-Manager-Kandidaten. Diese Kandidaten werden nach dem Einschalten ohne jede Notwendigkeit zum Senden von Aktivierungsanforderungen hochgefahren. Gemäß einer Ausführungsform der Erfindung wird die Karte im niedrigsten Chassissteckplatz mit eingeschaltetem Chassis-Management-Switch als primärer Chassis-Manager ausgewählt, während die Karte im zweitniedrigsten Chassissteckplatz mit eingeschaltetem Chassis-Management-Switch als sekundärer Chassis-Manager ausgewählt wird. Wenn im System nur eine Karte existiert, wird diese sowohl zum primären Chassis-Manager als auch zum sekundären Chassis-Manager. Sobald der primäre und der sekundäre Chassis-Manager ausgewählt sind, beginnen diese Karten auf Aktivierungsanforderungen zu antworten, die von den übrigen Karten empfangen werden.The Selection of the primary Chassis Managers and Secondary Chassis managers preferably occur during system startup after turning on. Each card includes a chassis management switch, and all cards with chassis management switches turned on are chassis manager candidates. These candidates will turn on without any need started up to send activation requests. According to one embodiment The invention is the card in the lowest chassis slot with switched chassis management switch selected as the primary chassis manager, while the Card in the second lowest chassis slot with power on Chassis Management Switch is selected as the secondary chassis manager. If only one card exists in the system, it becomes both the primary chassis manager as well as to the secondary Chassis Manager. Once the primary and the secondary Chassis Manager selected are, these cards begin to respond to activation requests, those of the rest Cards are received.

Der primäre und der sekundäre Chassis-Manager kommunizieren mit Hallo-Meldungen über den Cell-Bus 20. Der primäre Chassis-Manager steuert die rechten aktiven Management- und Cell-Busse 16a und 20a. Der sekundäre Chassis-Manager steuert die linken im Standby befindlichen Management- und Cell-Busse 16b und 20b. Stellt der sekundäre Chassis-Manager eine Fehlfunktion des primären Chassis-Managers (aufgrund einer Zeitüberschreitung der Hallo-Meldungen) fest, so schaltet der sekundäre Chassis-Manager vorzugsweise auf den rechten Managamentbus 16a um, setzt den primären Chassis-Manager zurück und wird selbst zum neuen primären Chassis-Manager. Der neue primäre Chassis-Manager wählt einen neuen sekundären Chassis-Manager anhand der Steckplatzposition im Chassis aus. Stellt der primäre Chassis-Manager eine Fehlfunktion des sekundären Chassis-Managers fest, so setzt der primäre Chassis-Manager den sekundären Chassis-Manager zurück und wählt ein neues FM 10 aus, das die Funktion des sekundären Chassis-Managers übernimmt.The primary and secondary chassis managers communicate with hello messages over the cell bus 20 , The primary chassis manager controls the right active management and cell busses 16a and 20a , The secondary chassis manager controls the left standby management and cell busses 16b and 20b , If the secondary chassis manager detects a malfunction of the primary chassis manager (due to a timeout of the hello messages), the secondary chassis manager preferably switches to the right hand bus bus 16a , resets the primary chassis manager and becomes the new primary chassis manager itself. The new primary chassis manager selects a new secondary chassis manager based on the slot location in the chassis. If the primary chassis manager detects a malfunction of the secondary chassis manager, the primary chassis manager resets the secondary chassis manager and selects a new FM 10 which assumes the function of the secondary chassis manager.

Der Chassis-Manager beinhaltet ein Chassis-Management-Modul (CMM) 34. Das CMM 34 empfängt und sendet Chassis-Statusmeldungen über das GMM 26 und ist für die Überwachung und Verwaltung des Systems verantwortlich. Unter anderem ist das CMM 34 für das Chassis-Energiemanagement verantwortlich. Wird also ein neues FM 10 in das System eingebaut, so liest das GMM 26 der neu eingesetzten Karte ein serielles EEPROM im FM 10 und den PMs 12 aus und ermittelt so den Energiebedarf der Karte. Das EEPROM speichert Information über das Modell, die Revision, die Seriennummer und den Leistungsbedarf der Karte. Das GMM 26 der neuen Karte übermittelt den Energiebedarf anschließend in einer Aktivierungsmeldung per Rundsendung über den Managementbus 16 an den Chassis-Manager. Das GMM 26 im Chassis-Manager empfängt die Anforderung und leitet sie an das CMM 34 weiter, um festzustellen, ob das System genügend Leistung zur Inbetriebnahme der Karte zur Verfügung stellen kann. Wenn ja, antwortet das GMM 26 im Chassis-Manager mit einer Modul-Aktivierungsmeldung.The chassis manager includes a chassis management module (CMM) 34 , The CMM 34 Receives and sends chassis status messages via the GMM 26 and is responsible for monitoring and managing the system. Among other things, the CMM 34 responsible for the chassis energy management. So will a new FM 10 built into the system, so reads the GMM 26 the newly inserted card a serial EEPROM in the FM 10 and the PMs 12 and thus determines the energy requirements of the card. The EEPROM stores information about the model, revision, serial number, and power requirements of the card. The GMM 26 The new card then transmits the energy requirement in an activation message via broadcast via the management bus 16 to the chassis manager. The GMM 26 in Chassis Manager receives the request and forwards it to the CMM 34 to determine if the system can provide enough power to power up the card. If so, the GMM answers 26 in the chassis manager with a module activation message.

Das CMM 34 im Chassis-Manager ist vorzugsweise auch für die Taktkartenüberwachung verantwortlich. Das CMM 34 im primären Chassis-Manager hört die Chassis-Statusmeldungen mit, die in regelmäßigen Intervallen von der rechten Taktkarte über den rechten Managementbus 16a gesendet werden, während das CMM 34 im sekundären Chassis-Manager die Chassis-Statusmeldungen mithört, die in regelmäßigen Intervallen von der linken Taktkarte über den linken Managementbus 16a gesendet werden. Die Chassis-Statusmeldungen beinhalten den Status der Chassis-Stromversorgungen, Lüfter und Temperatur. Das GMM 26 in jedem Chassis-Manager überwacht seinen jeweiligen Managementbus auf die Chassis-Statusmeldungen. Anschließend informiert das GMM 26 das CMM 34 über jede Änderung in der Chassis-Statusmeldung. Wenn die Leistung eine begrenzende Ressource ist, nimmt das CMM 34 Karten außer Betrieb, beginnend mit den höchsten durchnumerierten Steckplätzen, bis die erforderliche Leistungsaufnahme von den noch im System in Betrieb befindlichen Stromversorgungen gedeckt werden kann.The CMM 34 in the chassis manager is preferably responsible for the clock card monitoring. The CMM 34 In the primary Chassis Manager, the Chassis Status messages stop listening at regular intervals from the right clock card to the right management bus 16a be sent while the CMM 34 In the secondary chassis manager, the chassis status messages are listening in at regular intervals from the left clock card over the left management bus 16a be sent. The chassis status messages include the status of the chassis power supplies, fans, and temperature. The GMM 26 in each chassis manager monitors its respective management bus for the chassis status messages. Subsequently, the GMM informs 26 the CMM 34 about every change in the chassis status message. If performance is a limiting resource, the CMM takes 34 Cards out of service, starting with the highest numbered slots, until the required power consumption can be met by the power supplies still in the system.

Wenn das GMM 26 auf einem bestimmten Managementbus keine zwei aufeinanderfolgenden Chassis-Statusmeldungen empfängt, informiert das GMM sein CMM 34. Das CMM 34 ruft anschließend den FTAM 36 auf, der auf seinem Managementbus per Rundsendung eine Testmeldung aussendet. Wenn die Sendung erfolgreich ist oder wegen Nichtverfügbarkeit des Ziels fehlschlägt, wird davon ausgegangen, daß bei seiner Taktkarte (z.B. der rechten Taktkarte 18a) ein Fehler aufgetreten ist, und der FTAM 36 erzeugt eine Fehlerbenachrichtigung. In diesem Fall werden alle Karten wieder auf den Standby-Managementbus (z.B. den linken Managementbus 16b) verlagert. Wenn die fehlerhafte Karte wieder in Betrieb ist, werden alle Karten vorzugsweise wieder auf den ursprünglichen Managementbus (z.B. den rechten Managementbus 16a) geschaltet.If the GMM 26 GMM will inform its CMM on a particular management bus not receiving two consecutive chassis status messages 34 , The CMM 34 then call the FTAM 36 who broadcasts a test message on his management bus. If the shipment is successful or fails because of unavailability of the target, it is assumed that in his clock card (eg the right clock card 18a ) an error has occurred, and the FTAM 36 generates an error notification. In this case, all cards are put back on the standby management bus (eg the left management bus 16b ) relocated. When the faulty card is in operation again, all cards are preferably returned to the original management bus (eg the right management bus 16a ).

Wenn die Sendung wegen Nichtverfügbarkeit des Busses fehlschlägt, wird davon ausgegangen, daß auf dem überwachten Managementbus (z.B. dem rechten Managementbus 16a) ein Fehler aufgetreten ist, und der FTAM 36 erzeugt eine Fehlerbenachrichtigung. Der zugehörige Chassis-Manager verlagert alle Karten auf den Standby-Managementbus (z.B. den linken Managementbus 16b). Der fehlerhafte Managementbus wird überwacht, und nach wieder erfolgter Inbetriebnahme werden alle Karten vorzugsweise wieder auf diesen Bus verlagert.If the transmission fails due to unavailability of the bus, it is assumed that the monitored management bus (eg the right management bus 16a ) an error has occurred, and the FTAM 36 generates an error notification. The associated chassis manager moves all cards to the standby management bus (eg the left management bus 16b ). The faulty management bus is monitored, and after re-commissioning all cards are preferably relocated to this bus.

Verwaltung und Überwachung des Chassis durch das CMM 34 erfolgen in Kombination mit dem FTAM 36, der auf dem Chassis-Manager läuft. Eine Instanz des FTAM 36 läuft außerdem in jeder der übrigen Karten im Chassis. Während das CMM 34 für das gesamte Chassis verantwortlich ist, ist der FTAM 3b vorzugsweise für die Erkennung von Fehlfunktionen und die Behebung einiger der Fehlfunktionen verantwortlich, die lokal auf der Karte auftreten. Die FTAM 36 bewerkstelligen unter anderem die lokale Überwachung, die Fehlfunktionserkennung, die Fehlfunktionsbenachrichtigung, die Fehlereinkreisung und (wo immer möglich) die Wiederherstellung des Betriebs bei Fehlfunktionen von Karten und Verbindungen oder Ports.Management and monitoring of the chassis by the CMM 34 done in combination with the FTAM 36 running on the chassis manager. An instance of the FTAM 36 also runs in each of the remaining cards in the chassis. While the CMM 34 responsible for the entire chassis is the FTAM 3b preferably responsible for detecting malfunctions and resolving some of the malfunctions that occur locally on the card. The FTAM 36 These include local monitoring, malfunction detection, malfunction notification, error detection, and (wherever possible) recovery from malfunctioning of cards and connections or ports.

Anwendungssoftwarekomponenten sind beim FTAM 36 registriert, der zu überwachende Ereignisse identifiziert. Wird eine Fehlfunktion erkannt, benachrichtigt der FTAM 36 alle Anwendungen, die für diese Ereignisart registriert wurden. Der FTAM 36 und die Anwendungen ergreifen anschließend Abhilfemaßnahmen. So kann sich beispielsweise eine Taktmanager-Anwendung beim FTAM 36 für die Auswahl externer Taktsignalquellen auf aktiven Verbindungen registrieren lassen. Eine Anwendung für eine Liste redundanter Ports kann sich beim FTAM 36 für die Erkennung fehlerhafter Verbindungen und zum Umschalten auf aktive Backup-Ports registrieren lassen. IP-Anwendungen können sich beim FTAM 36 zum Aktualisieren von Weiterleitungstabellen mit Einträgen ausgefallener Verbindungen oder Ports registrieren lassen.Application software components are in the FTAM 36 registered, which identifies events to be monitored. If a malfunction is detected, the FTAM will notify 36 all applications registered for this event type. The FTAM 36 and the applications then take remedial action. For example, a clock manager application can be used in FTAM 36 for selecting external clock sources on active connections. An application for a list of redundant ports may be in FTAM 36 register for detecting bad connections and switching to active backup ports. IP applications can join the FTAM 36 to register forwarding tables with entries of failed connections or ports.

Jeder FTAM 36 stellt eine Kartenfehlfunktion über Hallo-Meldungen fest. Jedes FM 20 sendet in festen Zeitintervallen eine Hallo-Meldung über den Cell-Bus 20 aus. Wenn eine Karte keine Hallo-Meldungen sendet, kennzeichnen die übrigen Karten im System diese Karte als ausgefallen. Der FTAM 36 in jeder Karte aktualisiert daraufhin alle vom Fehlerereignis betroffenen Tabellen. Das primäre SCM 14 gibt nach Erkennen der Karten-Fehlfunktion über den Managementbus an das primäre Chassis eine Reset-Anforderung zum erneuten Starten der defekten Karte aus.Every FTAM 36 detects a card malfunction via hello messages. Every FM 20 sends a hello message over the cell bus at fixed time intervals 20 out. If a card does not send hello messages, the remaining cards in the system mark that card as failed. The FTAM 36 In each card, all tables affected by the error event then update. The primary SCM 14 After detecting the card malfunction via the management bus to the primary chassis, it issues a reset request to restart the failed card.

Jeder FTAM 36 detektiert außerdem vorzugsweise Verbindungs- bzw. Port-Fehlfunktionen. Verbindungs- und Port-Treiber überwachen kontinuierlich den Betriebszustand aller Verbindungen und Ports. Wird dabei eine Zustandsänderung festgestellt, so wird eine Verbindungsfehlermeldung per Rundsendung an den FTAM 36 übermittelt. Die Hardware- und Software-Mechanismen der automatischen Schutzumschaltung (Automatic Protection Switching, APS) des Systems gestatten eine automatische Wiederherstellung des Normalbetriebs sowohl nach Gerätefehlfunktionen als auch nach Ausfall einer externen Verbindung. So verfügt beispielsweise jeder Port im Primärmultiplex-Schnittstellen- (PRI-) PM 12b (1) über zwei Steckverbinder, nämlich einen Steckverbinder des Ports "A" 13 und Steckverbinder des Ports "B" 15. Wird am Port "A" 13 eine interne Fehlfunktion festgestellt, leitet der APS-Mechanismus des Systems WAN-Verkehr automatisch über den Steckverbinder des Ports "B" 15 um.Every FTAM 36 also preferably detects connection or port malfunctions. Connection and port drivers continuously monitor the health of all connections and ports. If a change of state is detected, a connection error message is broadcast to the FTAM 36 transmitted. The system's Automatic Protection Switching (APS) hardware and software mechanisms allow for automatic recovery of normal operation, both after device failure and when an external connection fails. For example, each port in the Primary Multiplex Interface (PRI) PM has 12b ( 1 ) via two connectors, namely a connector of port "A" 13 and connectors of port "B" 15 , Is on port "A" 13 detected an internal malfunction, the APS mechanism of the system automatically routes WAN traffic through the connector of port "B" 15 around.

Wiederum unter Bezug auf 1 beinhaltet jedes FM 10 weiterhin einen Verbindungsmanager 46 und einen Ressourcenmanager 38. Der Verbindungsmanager 46 detektiert beim FM 10 ankommende Anrufe, und der Ressourcenmanager 38 verwaltet und verteilt lokale Ressourcen, zu denen unter anderem Digitalmodem- und ISDN-vermittelnde Ressourcen gehören. Jede Verbindung zum Switch erfordert einen bestimmten Satz von Hardware- und Softwareressourcen. So benötigt beispielsweise ein Frame-Relay-Anruf eine Leitungsschnittstelle, einen HDLC-Controller, einen Frame-Relay-Protokollstack sowie Frame-Weiterleitungssoftware. Allgemein sind alle für eine Verbindung benötigten Ressourcen beim Eingangs-FM 10 und den ihm zugeordneten PMs 12 zu finden.Again referring to 1 includes every FM 10 continue a connection manager 46 and a resource manager 38 , The connection manager 46 detected at the FM 10 incoming calls, and the resource manager 38 manages and distributes local resources, including digital modem and ISDN intermediating resources. Each connection to the switch requires a specific set of hardware and software resources. For example, a frame relay call requires a line interface, an HDLC controller, a frame relay protocol stack, and frame forwarding software. Generally, all resources needed for a connection are at the input FM 10 and its associated PMs 12 to find.

Zuweilen allerdings benötigt Datenverkehr, der über eine Karte ins System gelangt, Ressourcen einer anderen Karte. Wenn der Verbindungsmanager 46 daher einen ankommenden Anruf detektiert, wird über den Cell-Bus 20 per Rundsendung eine Ressourcenanforderung gesendet. Der Ressourcenmanager 38 in den einzelnen Karten empfängt die Anforderung und stellt fest, welche Ressourcen benötigt werden. Wenn die Karte über die angeforderte Ressource verfügt, wird sie dem ankommenden Anruf zugewiesen.Sometimes, however, traffic that enters the system through one card may require resources from another card. If the connection manager 46 therefore detects an incoming call is via the cell bus 20 Broadcast sent a resource request. The resource manager 38 in the one individual cards receives the request and determines what resources are needed. If the card has the requested resource, it will be assigned to the incoming call.

Jedes FM 10 beinhaltet außerdem einen IP-Weiterleiter 44 zum Weiterleiten von Paketen anhand von Layer-3-Adressen. Das IP-Weiterleitermodul enthält vorzugsweise lokale Routinginformationen zum Weiterleiten eines Pakets über eine rechte oder erste IP-Weiterleitungs-Maschine 42a und eine linke oder zweite IP-Weiterleitungs-Maschine 42b. Wenn das FM 10 ein Paket empfängt, leitet es der IP-Weiterleiter 44 weiter, wenn er die Zieladresse bereits kennt. Andernfalls führt der IP-Weiterleiter 44 einen Vergleich mit einer zentralen Routingtabelle aus und ruft von dort die nötigen Routinginformationen ab.Every FM 10 also includes an IP redirector 44 for forwarding packets based on Layer 3 addresses. The IP router module preferably includes local routing information for forwarding a packet via a right or first IP forwarding engine 42a and a left or second IP forwarding engine 42b , If the FM 10 When it receives a packet, it forwards the IP forwarder 44 continue if he already knows the destination address. Otherwise, the IP forwarder performs 44 a comparison with a central routing table and retrieves from there the necessary routing information.

3 zeigt ein Beispiel für ein Flußdiagramm zum Abwickeln einer Verbindungsanforderung, die beim Switch aus 1 eintrifft. Das Programm startet, und in Schritt 50 detektiert der Verbindungsmanager 46 einen ankommenden Anruf bei einem der physikalischen Ports des FMs 10 (also des empfangenden FMs). In Schritt 52 informiert der Verbindungsmanager 46 den Ressourcenmanager 38 im empfangenden FM über den ankommenden Anruf. Der Ressourcenmanager 38 sucht in Schritt 54 eine Anruf-Policy-Tabelle nach einem Anrufpolicy-Eintrag ab, welcher dem ankommenden Anruf entspricht. Der Anrufpolicy-Eintrag beinhaltet verschiedene Parameter, die vorgeben, wie das Routing des Anrufs zu erfolgen hat. Dabei können unterschiedliche Policies angewandt werden, die vom Inlink-Typ des Anrufs, einer Telefonnummer, einem Domainnamen, einer Quelladresse, einer Zieladresse oder anderen Bedingungen abhängen. 3 Figure 14 shows an example of a flowchart for handling a connection request made at the switch 1 arrives. The program starts, and in step 50 the connection manager detects 46 an incoming call to one of the physical ports of the FM 10 (ie the receiving FM). In step 52 informs the connection manager 46 the resource manager 38 in the receiving FM over the incoming call. The resource manager 38 look in step 54 a call policy table for a call policy entry corresponding to the incoming call. The call policy entry includes various parameters that dictate how the routing of the call should be made. Different policies can be used, depending on the inlink type of call, phone number, domain name, source address, destination address, or other conditions.

In den Anrufpolicy-Parametern enthalten sind eine Klasse für die Zugangsqualität (QoA), eine Klasse für die Dienstqualität (QoS), die ID eines virtuellen Routers und die ID eines virtuellen Privatnetzes, welche dem Anruf zugeordnet sind. QoA ist ein Verfahren zur Klassifizierung von Benutzern und zur Erteilung eines Zugangs zum Switch auf der Grundlage eines Vergleichs zwischen ihrer QoA-Klasse und der aktuellen Ressourcennutzung. Dieses Verfahren gestattet einen abgestuften Zugang zum Internet, wenn um Ressourcen konkurriert wird. Jeder QoA-Klasse ist vorzugsweise ein Prozentsatz eines Schwellenwertes der Ressourcennutzung zugeordnet. Wenn die Ressourcennutzung unter dem Prozentsatz des Ressourcennutzungs-Schwellenwertes liegt, die dem der QoA-Klasse des ankommenden Anrufs zugeordnet ist, wird der Anruf angenommen. Andernfalls wird der Anruf abgewiesen.In the call policy parameters include an access quality class (QoA), a class for the quality of service (QoS), the ID of a virtual router and the ID of a virtual router Private network associated with the call. QoA is a procedure for the classification of users and the granting of access to the switch based on a comparison between its QoA class and the current resource usage. This procedure allows a graduated access to the Internet when competing for resources becomes. Each QoA class is preferably a percentage of a threshold assigned to resource usage. When the resource usage is under is the percentage of the resource usage threshold that that of the QoA class the incoming call is assigned, the call is accepted. Otherwise the call will be rejected.

QoS ist ein Verfahren zur Klassifizierung von Benutzern, das die Priorität ermittelt, mit der Pakete nach Annahme eines Anrufes weiterbefördert werden. QoS bietet eine bevorzugte Behandlung durch die Abwicklung von Verbindung anhand ihrer QoS-Klassen. Je höher die QoS-Klasse ist, die einem Anruf zugeordnet ist, desto höher ist auch die Priorität, mit der die zum Anruf gehörenden Pakete verarbeitet werden.QoS is a method of classifying users that determines the priority be forwarded with the packages after accepting a call. QoS provides preferential treatment by handling connection based on their QoS classes. The higher the higher the QoS class that is assigned to a call also the priority with the ones belonging to the call Packages are processed.

Anhand der ID des virtuellen Routers und der ID eines virtuellen Privatnetzes, die einem ankommenden Anruf zugeordnet sind, kann der Switch den Zugang zu Ressourcen bereitstellen, zu deren Nutzung der Benutzer berechtigt ist. Gemäß einer Ausführungsform der Erfindung kann der Switch in mehrere virtuelle Router partitioniert sein, wobei jeder virtuelle Router über seinen eigenen Satz von Ressourcen (z.B. IDSN- oder Modemressourcen) und Routingtabellen verfügt. Somit funktioniert jeder virtuelle Router vorzugsweise unabhängig und autark als separater Router. Jeder virtuelle Router kann ferner zur weiteren Steuerung des Zugriffs auf den Switch in mehrere virtuelle Privatnetze (VPNs) partitioniert sein. VPNs werden mit einer Filtersoftware eingerichtet, die Datenverkehr, der an den virtuellen Router gerichtet ist, nach bestimmten Kriterien wie z.B. der Quelladresse und/oder der Zieladresse ausfiltert.Based the ID of the virtual router and the ID of a virtual private network, which are assigned to an incoming call, the switch can Provide access to resources for the use of which the user is entitled. According to one embodiment According to the invention, the switch can be partitioned into multiple virtual routers be, each virtual router has its own set of Resources (e.g., IDSN or modem resources) and routing tables features. Thus, each virtual router preferably works independently and self-sufficient as a separate router. Each virtual router can also to further control access to the switch in multiple virtual Private networks (VPNs) to be partitioned. VPNs are set up with filtering software, the traffic that is directed to the virtual router, after certain criteria such as the source address and / or the destination address filters out.

Nachdem die QoA-Klasse, die QoS-Klasse, die ID des virtuellen Routers und die VPN-ID eines Anrufs anhand des Anrufpolicy-Eintrags identifiziert wurden, übermittelt der Ressourcenmanager 38 in Schritt 58 per Rundsendung eine Ressourcenanforderung an die übrigen FMs 10. Wenn eines der FMs 10 über eine Ressource verfügt, die mit der QoA-Klasse und der ID des virtuellen Routers übereinstimmt, sendet das FM 10 mit der verfügbaren Ressource eine Antwort an das empfangende FM 10, die veranlaßt, daß der Anruf mit der verfügbaren Ressource verbunden wird.After the QoA class, QoS class, virtual router ID, and VPN ID of a call are identified by the call policy record, the resource manager submits 38 in step 58 Broadcast a resource request to the remaining FMs 10 , If one of the FMs 10 has a resource that matches the QoA class and the ID of the virtual router sends the FM 10 with the available resource a response to the receiving FM 10 which causes the call to connect to the available resource.

Wenn der ankommende Anruf angenommen ist, erzeugt das Programm in Schritt 59 ein Portschnittstellen- (Port InterFace, PIF-) Objekt, von dem das für die Sitzung zu verwendende Layer-2-Protokoll festgelegt wird. Eine vom Switch bereitgestellte generische Weiterleitungs-Schnittstelle verknüpft die Layer-2-Schnittstelle anschließend dynamisch mit der Layer-1-Schnittstelle des physikalischen Ports. Auf diese Weise brauchen Layer-2-Protokolle nicht von den physikalischen Medienports abhängig gemacht zu werden, auf denen sie arbeiten, sondern können zur Laufzeit dynamisch festgelegt werden.When the incoming call is accepted, the program generates in step 59 a Port Interface (PIF) object that sets the Layer 2 protocol to use for the session. A generic forwarding interface provided by the switch then dynamically links the Layer 2 interface to the Layer 1 interface of the physical port. In this way, Layer 2 protocols do not need to be made dependent on the physical media ports they work on, but can be set dynamically at runtime.

In Schritt 60 ruft das Programm den Authentifizierungsserver des ISPs auf, um den Benutzer zu authentifizieren. Ein typischer Authentifizierungsserver ist ein RADIUS-Server. Der Authentifizierungsserver beinhaltet vorzugsweise eine Datenbank aus Benutzern und benutzerspezifischen Konfigurationsinformationen, aus denen genau hervorgeht, welche Art von Dienst jedem einzelnen Benutzer zur Verfügung zu stellen ist. Zu den Dienstkonfigurationsinformationen können der Kompressionstyp, die QoA-Klasse, die QoS-Klasse und/oder eine VPN-ID gehören, die dem Benutzer zugeordnet sind und nachstehend ausführlicher beschrieben werden. Gemäß einer Ausführungsform der Erfindung können die Konfigurationsinformationen im Authentifizierungsserver die Standard-Konfigurationsinformationen ersetzen, die von der Anrufpolicy-Datenbank ausgegeben wurden.In step 60 The program calls the authentication server of the ISP to call the user thentifizieren. A typical authentication server is a RADIUS server. The authentication server preferably includes a database of users and user-specific configuration information, which clearly indicates what type of service is to be made available to each individual user. The service configuration information may include the compression type, the QoA class, the QoS class, and / or a VPN ID associated with the user, and described in more detail below. According to an embodiment of the invention, the configuration information in the authentication server may replace the default configuration information output from the call policy database.

Nach der Authentifizierung des Benutzers können Datenpakete an ihre Zieladressen weitergeleitet werden wie in Schritt 62 gezeigt. In dieser Hinsicht stellt der Switch eine einheitliche Schnittstelle zur Verfügung, die als generische Weiterleitungs-Schnittstelle (Generic Forwarding Interface, GFI) bezeichnet wird und für die gesamte interne Paketweiterleitung entweder zwischen Ports auf demselben FM 10 oder über den Bus zu einem anderen FM 10 im Switch verantwortlich ist. Insbesondere sorgt die GFI-Software für Transparenz zwischen Anwendungen und dem Verbindungsprotokoll sowie dem physikalischen Verbindungstreiber, so daß jede beliebige physikalische Schnittstelle jedem beliebigen Protokoll oder jeder beliebigen Anwendung zugeordnet werden kann. Somit arbeiten alle GFI-Weiterleitungsfunktionen vorzugsweise protokolltransparent.After authenticating the user, data packets can be forwarded to their destination addresses as in step 62 shown. In this regard, the switch provides a unified interface called the Generic Forwarding Interface (GFI) and for all internal packet forwarding either between ports on the same FM 10 or over the bus to another FM 10 is responsible in the switch. In particular, the GFI software provides transparency between applications and the connection protocol as well as the physical connection driver so that any physical interface can be associated with any protocol or application. Thus, all GFI forwarding functions are preferably protocol transparent.

Wenn ein Paket beim System eintrifft, übersetzt die GFI-Software das Paket unter Verwendung von GFI-Hilfsprogrammen in ein generisches Format. Soll ein Paket an einen physikalischen Port übermittelt werden, so ruft die GFI-Software die Weiterleitungsfunktion des betreffenden Treibers auf, die dann das Paket übermittelt. Die Weiterleitungsfunktion des Treibers ist anschließend für das Identifizieren des physikalischen Ports und das Übergeben des Pakets an das PIF-Modul verantwortlich, von dem das generische Paket in das treiberspezifische Format übersetzt und an den geforderten Port ausgesandt wird.If When a package arrives at the system, the GFI software translates the package using GFI utilities in a generic format. If a packet is to be transmitted to a physical port, it will call the GFI software is the forwarding feature of the driver in question which then transmits the packet. The forwarding function of the driver is then for identifying of the physical port and passing the packet to the PIF module responsible, from which the generic package in the driver-specific Format translated and sent to the requested port.

Vor dem Weiterleiten des Datenpakets wird allerdings vorzugsweise eine Kontrolle durchgeführt, um festzustellen, ob Filter vorliegen, die auf das Datenpaket anzuwenden sind. Die Filter ermitteln, ob das Paket weitergeleitet oder ausgelassen werden soll. Die auf das Datenpaket anzuwendenden Filter werden anhand der VPN-ID des Datenpakets ausfindig gemacht.In front however, the forwarding of the data packet is preferably a Control performed, to determine if there are any filters that apply to the data packet are. The filters determine if the packet is forwarded or dropped shall be. The filters to be applied to the data packet become Identified by the VPN ID of the data packet.

II. DEZENTRALE VERARBEITUNG UND PAKETWEITERLEITUNGII. DECENTRALIZED PROCESSING AND PACKET TRANSMISSION

Eines der Merkmale des Mehrdienstnetzwerk-Switches aus 1 ist das IP-Routing (Layer-3-Routing) unter Verwendung einer dezentral organisierten Verarbeitungs- und Paketweiterleitungs-Architektur. Der IP-Weiterleiter 44 in jedem FM 10 stellt die erforderliche Intelligenz für die Paketweiterleitung und Routenverarbeitung zur Verfügung. Im Gegensatz zu einem herkömmlichen Zugangsserver, bei dem ein zentralisierter Prozessor einen Engpaß bildet, hilft eine dezentral organisierte Weiterleitungs-Architektur, den einzelnen Blockierungspunkt zu reduzieren oder zu beseitigen und gestattet es, die Produkte sowohl für die Zahl der angeschlossenen Schnittstellen als auch die Leistungsfähigkeit der Paketweiterleitung zu skalieren.One of the features of the multi-service network switch 1 is IP routing (Layer 3 Routing) using a decentralized processing and packet forwarding architecture. The IP forwarder 44 in every FM 10 Provides the intelligence required for packet forwarding and route processing. In contrast to a traditional access server, where a centralized processor bottoms out, a decentralized routing architecture helps to reduce or eliminate the single blocking point and allows products to be linked both to the number of interfaces connected and to the performance of the To scale packet forwarding.

4 zeigt ein detaillierteres Funktions-Blockdiagramm des IP-Weiterleiters 44 aus 2. Ein IP-Datenpaket kommt an einem Medienport eines PMs 12 an und wird durch seinen Medienport-Treiber 118 verarbeited. Das IP-Datenpaket kann auch von einem Backplane-Treiber 120 empfangen werden, wenn das Paket beispielsweise von einem anderen FM 10 über den Cell-Bus 20 weitergeleitet wurde. 4 shows a more detailed functional block diagram of the IP router 44 out 2 , An IP data packet arrives at a media port of a PM 12 and is powered by its media port driver 118 verarbeited. The IP data packet may also be from a backplane driver 120 be received, for example, if the packet from another FM 10 over the cell bus 20 was forwarded.

Wenn eine Verbindung über den Medienport hergestellt wird, erzeugt der Switch ein Port-Schnittstellenobjekt (Port InterFace Object, PIF-Objekt) 122 für den Port. Das PIF-Objekt 122 legt das für die aktuelle Sitzung zu verwendende Layer-2-Protokoll anhand des Verbindungstyps fest, und die GFI-Software 124 verknüpft die Layer-2-Schnittstelle dynamisch mit der Layer-1-Schnittstelle des Medienports. Auf diese Weise brauchen Layer-2-Protokolle nicht von den physikalischen Medienports abhängig gemacht zu werden, auf denen sie arbeiten, sondern können zur Laufzeit dynamisch festgelegt werden.When a connection is made through the media port, the switch creates a port interface object (Port InterFace Object, PIF object) 122 for the port. The PIF object 122 sets the Layer 2 protocol to use for the current session based on the connection type, and the GFI software 124 dynamically links the Layer 2 interface to the Layer 1 interface of the media port. In this way, Layer 2 protocols do not need to be made dependent on the physical media ports they work on, but can be set dynamically at runtime.

Das PIF 122 beinhaltet außerdem PIF-Strukturen zum Speichern bestimmter Medien- und Paketinformationen für jeden Port. PIF-Strukturen werden als zweidimensionale Arrays vorgehalten, wofür eine Controllernummer und eine Portnummer als Index verwendet wird.The PIF 122 Also includes PIF structures for storing specific media and packet information for each port. PIF structures are kept as two-dimensional arrays, using a controller number and a port number as an index.

Ein logischer Port-Identifier (LPI) 128 kommuniziert mit der PIF 122 und beinhaltet die mit jedem physikalischen Port verbundenen IP-Parameter. Die IP-Schicht ruft eine LPI-Sendefunktion auf, wann immer sie ein Paket senden will. Die LPI-Sendefunktion identifiziert den betreffenden physikalischen Port und übergibt das Paket an das PIF 122, wo die medienspezifischen Layer-2-Verkapselungs-Header hinzugefügt werden und das Paket über den betreffenden Port ausgesandt wird.A logical port identifier (LPI) 128 communicates with the PIF 122 and includes the IP parameters associated with each physical port. The IP layer invokes an LPI send function whenever it wants to send a packet. The LPI send function identifies the physical port concerned and passes the packet to the PIF 122 where the media-specific Layer 2 encapsulation headers are added and the package is sent out via the relevant port.

Wenn ein Paket vom Medienport-Treiber 120 empfangen wird, wird das Paket vorzugsweise vom Treiber in ein generisches Format übersetzt und an die GFI-Software 124 gesendet. GFI 124 erledigt vorzugsweise die gesamte Paketweiterleitung in einer protokolltransparenten Schicht, wobei die Details zum Senden und Empfangen von Paketen über unterschiedliche Schnittstellentypen verborgen werden. GFI 124 ordnet das Paket ferner anhand des QoS des Pakets in eine Warteschlange in einer von vier GFI-Puffern ein, die im gemeinsam genutzten Speicher 24 des Systems (2) resident vorhanden sind.If a package from the media port driver 120 The packet is preferably translated by the driver into a generic format and sent to the GFI software 124 Posted. GFI 124 preferably, handles all packet forwarding in a protocol-transparent layer, hiding the details for sending and receiving packets over different types of interfaces. GFI 124 Further, the packet is queued in one of four GFI buffers, based on the QoS of the packet, in the shared memory 24 of the system ( 2 ) resident are present.

Ein Paketverarbeitungsmodul 126 fragt die GFI-Puffer nach dem Paket ab und analysiert das Paket (Parsing), um die PIF- Struktur des Pakets zu ermitteln. Sobald diese gefunden ist, prüft das Paketverarbeitungsmodul 126 vorzugsweise, ob das Paket ein Datenpaket ist und ob eine Sitzung eingerichtet ist und übergibt das Paket an den IP-Weiterleiter 44. Wenn das Paket geroutet werden muß, versucht der IP-Weiterleiter, die Zielinformation aus seinem IP-Cache 102 oder seiner Weiterleitungstabelle 90 abzurufen. Ist dies erfolglos, so versucht der IP-Weiterleiter 44, die Information aus einer Routingtabelle 70 abzurufen, die im SCM 14 gespeichert ist. Zudem könnte der IP-Weiterleiter 44 von einer Adressenauflösungs-Protokolltabelle 112 (Address Resolution Protocol table, ARP-Tabelle) über einen ARP-Funktionsblock 114 oder mittels einer Management-ARP-Anforderung (MARP-Anforderung) über einen MARP-Funktionsblock 116 weitere Parameter zur Zieladresse abrufen.A packet processing module 126 queries the GFI buffers for the packet and analyzes the parsing packet to determine the PIF structure of the packet. Once found, the packet processing module checks 126 preferably, whether the packet is a data packet and whether a session is established, and passes the packet to the IP redirector 44 , If the packet needs to be routed, the IP forwarder attempts to retrieve the destination information from its IP cache 102 or his routing table 90 retrieve. If this is unsuccessful, then the IP forwarder tries 44 , the information from a routing table 70 retrieve that in the SCM 14 is stored. In addition, the IP redirector could 44 from an address resolution log table 112 (Address Resolution Protocol table, ARP table) via an ARP function block 114 or by means of a management ARP request (MARP request) via a MARP function block 116 call up further parameters for the destination address.

5 zeigt ein Entwurfsschema einer Routingtabelle 70 gemäß einer Ausführungsform der Erfindung. Die Routingtabelle 70 enthält eine Liste aller IP-Zieladressen, die von den FMs 10 aus erreichbar sind, sowie alle bekannten Routen zu jeder dieser Zieladressen. Die Routingtabelle kann auf der Basis von Standard-Routingprotokollen erzeugt werden, so z.B. RIP, OSPF, GBP4 oder dergleichen. 5 shows a design scheme of a routing table 70 according to an embodiment of the invention. The routing table 70 contains a list of all IP destination addresses used by the FMs 10 are reachable, as well as all known routes to each of these destinations. The routing table may be generated based on standard routing protocols such as RIP, OSPF, GBP4, or the like.

Gemäß einer Ausführungsform der Erfindung beinhaltet die Routingtabelle 70 ein Feld 72 für das Ziel, das eine konfigurierte IP-Zieladresse identifiziert, an die ein Paket weitergeleitet werden könnte. Daneben beinhaltet die Routingtabelle ein Unternetzfeld 74, das auf die signifikanten Bits der IP-Zieladresse verweist, indem ein Teil der Adresse entweder verborgen oder angezeigt wird. Die Zahl "0" gestattet das Anzeigen der zugehörigen Bits der IP-Zieladresse, wenn die Zahl "255" die zugehörigen Bits der IP-Zieladresse verbirgt. Auf diese Weise läßt sich ein Bereich von Adressen im Unternetz spezifizieren.According to one embodiment of the invention, the routing table includes 70 a field 72 for the destination, which identifies a configured IP destination address to which a packet could be forwarded. In addition, the routing table includes a subnet field 74 that points to the significant bits of the destination IP address by either hiding or displaying part of the address. The number "0" allows the corresponding bits of the destination IP address to be displayed if the number "255" hides the associated bits of the destination IP address. In this way, a range of addresses in the subnet can be specified.

Die Routingtabelle 70 beinhaltet ferner ein Next-Hop-Router-Feld 76, das eine IP-Adresse zu einem Next-Hop-Router angibt. Ein Owner-Feld 78 gibt an, wie die Route gelernt wurde. Insbesondere gibt "OSPFE" an, daß es sich bei der Route um eine externe Route handelt, die von einer anderen Routing-Domain (z.B. RIP) gelernt wurde. "OSPF1" gibt an, daß die Route eine bereichsinterne Route ist. "OSPF2" gibt an, daß die Route eine bereichsübergreifende Route ist. "LOCAL" gibt an, daß die Route direkt verbunden ist. "STATIC" gibt an, daß die Route eine manuell konfigurierte Route ist. "ANWAHLPOOL" gibt an, daß die Route aus einem Wählverbindungspool zugewiesen wurde.The routing table 70 also includes a next-hop router field 76 that specifies an IP address to a next-hop router. An owner field 78 indicates how the route was learned. In particular, "OSPFE" indicates that the route is an external route learned from another routing domain (eg RIP). "OSPF1" indicates that the route is an in-area route. "OSPF2" indicates that the route is a cross-section route. "LOCAL" indicates that the route is directly connected. "STATIC" indicates that the route is a manually configured route. "DIALING POOL" indicates that the route has been assigned from a dial-up connection pool.

Ein Kostenfeld 80 gibt die Kosten an, die jeder Route zugeordnet sind. Die Kosten basieren auf einer Entfernung, die ein Maß für die IP-Zieladresse ist, welche die angegebene Route nutzt. Im allgemeinen werden die Kosten aus einem beliebigen geeigneten oder konventionellen Entfernungs-Vektoralgorithmus berechnet.A cost field 80 indicates the costs associated with each route. The cost is based on a distance that is a measure of the IP destination address using the specified route. In general, the cost is calculated from any suitable or conventional range vector algorithm.

6 zeigt ein Entwurfsschema einer Weiterleitungstabelle 90 gemäß einer Ausführungsform der Erfindung. Die Weiterleitungstabelle 90 ist eine Untermenge der Routingtabelle 70. Im Gegensatz zur Routingtabelle 70 beinhaltet die Weiterleitungstabelle 90 allerdings vorzugsweise eine Liste von IP-Zieladressen und die beste bekannte Route zu jeder dieser Zieladressen. 6 shows a scheme of a routing table 90 according to an embodiment of the invention. The routing table 90 is a subset of the routing table 70 , Unlike the routing table 70 includes the routing table 90 however, preferably a list of IP destination addresses and the best known route to each of these destination addresses.

Wie die Routingtabelle 70, so beinhaltet auch die Weiterleitungstabelle 90 ein Feld 92 für das Ziel und ein Unternetzfeld 94, die jeweils die IP-Zieladressen und Unternetzmasken angeben. Ein Next-Hop-Router-Feld 96 gibt eine IP-Adresse zum Next-Hop-Router an, wenn die Route eine Remote-Route ist.Like the routing table 70 so also includes the routing table 90 a field 92 for the target and a subnet field 94 , which respectively specify the IP destination addresses and subnet masks. A next-hop router field 96 Specifies an IP address to the next-hop router if the route is a remote route.

Ein Typenfeld 98 gibt einen Portverbindungstyp an. Wenn als Portverbindungstyp beispielsweise "SPORT" angegeben ist, ist die IP-Zieladresse ein einzelner Port (Single Port). Wenn als Portverbindungstyp "VLAN" angegeben ist, gehört das Ziel zu einem virtuellen LAN. Wenn als Typ "DIAL" angegeben ist, existiert der Zielport im IP-Wähladressenpool.A type field 98 specifies a port connection type. For example, if the port connection type is "SPORT", the destination IP address is a single port. If the port connection type is VLAN, the destination belongs to a virtual LAN. If the type is "DIAL", the destination port exists in the IP dial address pool.

Die Weiterleitungstabelle beinhaltet außerdem ein Flag-Feld 100, das die Routentypen beschreibt. Gültige Werte für dieses Feld sind "S", womit auf eine Systemschnittstelle hingewiesen wird, bei welcher das Ziel auf der entfernten Seite einer Switch-Schnittstelle existiert, ferner "D", womit auf eine direkte Schnittstelle hingewiesen wird, bei welcher das Ziel (entweder auf derselben Karte oder auf einer anderen Karte) mit dem Switch verbunden ist, des weiteren "R", womit darauf hingewiesen wird, daß sich das Ziel entfernt auf einem anderen Gerät des Netzes befindet, ebenso "P", womit darauf hingewiesen wird, daß das Ziel ein Supernet ist, ferner "F", womit darauf hingewiesen wird, daß das Ziel eine Standardroute ist, und schließlich "M", womit darauf hingewiesen wird, daß das Ziel eine Managementschnittstelle ist.The routing table also includes a flag field 100 that describes the route types. Valid values for this field are "S", which indicates a system interface in which the Destination on the far side of a switch interface exists, further "D", indicating a direct interface in which the destination (either on the same card or on another card) is connected to the switch, further "R" indicating that the target is remotely located on another device of the network, also "P", indicating that the target is a supernet, further "F", indicating that the target is a Default route, and finally "M", indicating that the destination is a management interface.

7 zeigt ein Entwurfsschema eines IP-Caches 102 gemäß einer Ausführungsform der Erfindung. Der IP-Cache 102 ist außerdem in jedem der FMs 10 resident vorhanden und beinhaltet eine Liste der zuletzt verwendeten IP-Quell- und – Zieladressenpaare sowie die Adresse des physikalischen Ports und die Header-Information. Wenn also im IP-Cache eine Zieladresse existiert, können Pakete ohne Vergleich mit irgendeiner Routing- oder Weiterleitungstabelle weitergeleitet werden, was eine Steigerung der Weiterleitungsleistung gestattet. 7 shows a design scheme of an IP cache 102 according to an embodiment of the invention. The IP cache 102 is also in each of the FMs 10 resident and contains a list of the last used IP source and destination address pairs as well as the address of the physical port and the header information. Thus, if a destination address exists in the IP cache, then packets can be forwarded without comparison with any routing or forwarding table, allowing for an increase in the forwarding performance.

Gemäß einer Ausführungsform der Erfindung beinhaltet der IP-Cache 102 ein Feld 104 für das Ziel und ein Feld 106 für die Quelle, welche die letzten IP-Quell- und -Zieladressen angeben. Ein Ausgangsport-Feld 108 gibt einen physikalischen Port an, über den Daten an die Zieladresse gesendet werden. Ein Header-Feld 100 gibt eine aus 16 Bit bestehende MAC- Header-Information zum Weiterleiten des Pakets an die Zieladresse an.According to one embodiment of the invention, the IP cache includes 102 a field 104 for the goal and a field 106 for the source specifying the last IP source and destination addresses. An output port field 108 Specifies a physical port over which data is sent to the destination address. A header field 100 indicates a 16-bit MAC header information for forwarding the packet to the destination address.

8 zeigt ein Entwurfsschema einer ARP-Tabelle 112 gemäß einer Ausführungsform der Erfindung. Die ARP-Tabelle gestattet das Auflösen von IP-Adressen zu MAC-Adressen und physikalischen Portadressen für lokale Ziele. Wenn ein Gerät an das FM 10 angeschlossen ist, löst die IP-Software die MAC-zu-IP-Adressenübersetzung dynamisch auf und speichert diese Information in der ARP-Tabelle 112 des FMs 10. 8th shows a schematic of an ARP table 112 according to an embodiment of the invention. The ARP table allows resolving IP addresses to MAC addresses and physical port addresses for local destinations. When a device to the FM 10 is connected, the IP software dynamically resolves the MAC-to-IP address translation and stores this information in the ARP table 112 of the FM 10 ,

Die ARP-Tabelle 112 beinhaltet ein IP-Adressenfeld 200, das eine IP-Adresse angibt, welche in eine MAC-Adresse und in eine physikalische Portadresse zu übersetzen ist. Ein MAC-Adressenfeld 202 gibt die MAC-Adresse an, die der IP-Adresse entspricht. Ein Feld 204 für einen physikalischen Port gibt die Adresse des physikalischen Ports an, die den IP- und MAC-Adressen entspricht. Gemäß einer Ausführungsform der Erfindung lautet die Portadressenkonvention wie folgt:
device type.chassis.slot.PeronalityModuleLoacation.link.port
The ARP table 112 includes an IP address field 200 which specifies an IP address to be translated into a MAC address and a physical port address. A MAC address field 202 Specifies the MAC address that corresponds to the IP address. A field 204 for a physical port specifies the physical port address corresponding to the IP and MAC addresses. According to one embodiment of the invention, the port address convention is as follows:
device type.chassis.slot.PeronalityModuleLoacation.link.port

Der Gerätetyp (device type) ist eine aus zwei Zeichen bestehende Beschreibung des Typs des PMs 12, das die Verbindung bereitstellt. Der Switch unterstützt vorzugsweise mindestens die folgenden PMs: Primärmultiplex-Schnittstellen-PMs 12b für ISDN (is), Primärmultiplex-Schnittstellen-PMs 12b für T1 (t1), Digitalmodem-Server-PMs 12c (mo), Ethernet-Switch-PMs 12a (en) und serielle Datenschnittstellen-PMs 12d für Frame Relay (fr).The device type is a two-character description of the type of PM 12 that provides the connection. The switch preferably supports at least the following PMs: Primary Multiplex Interface PMs 12b for ISDN (is), Primary Multiplex Interface PMs 12b for T1 (t1), Digital Modem Server PMs 12c (mo), Ethernet switch PMs 12a (s) and serial data interface PMs 12d for Frame Relay (fr).

Die Chassisnummer (chassis) ist eine Nummer, die dem Switch zugeordnet ist. Die Steckplatznummer (slot) gibt den Steckplatz an, in welchen das FM eingesteckt ist. Die Steckplätze sind der Reihe nach von oben nach unten durchnumeriert, beginnend bei Steckplatz Nummer eins. Der Personalmodul-Standort (PersonalityModuleLocation) gibt entweder ein rechtes PM (Nummer 1) oder ein linkes PM (Nummer 2) an. Die Verbindung (link) gibt die Zahl der logischen Verbindungen an, die im Modul konfiguriert sind. Die Portnummer (port) gibt einen Port im PM an. Gemäß dieser Verbindung bezeichnet eine physikalische Portadresse En.1.3.1.1.1 eine Verbindung zu einem Ethernet-Modul in Chassis 1, Steckplatz 3, rechtes PM, Verbindung 1, physikalischer Port 1.The Chassis number (chassis) is a number assigned to the switch is. The slot number indicates the slot in which the FM is plugged in. The slots are in turn from Numbered top to bottom, starting at slot number one. The Personal Module Location (PersonalityModuleLocation) is either a right PM (number 1) or a left PM (number 2). The Connection (link) indicates the number of logical connections that are configured in the module. The port number (port) gives a port in the PM. According to this Connection refers to a physical port address En.1.3.1.1.1 a Connection to an Ethernet module in chassis 1, slot 3, right PM, connection 1, physical port 1.

Die ARP-Tabelle 112 beinhaltet außerdem ein Typenfeld 206, das angibt, daß die Adresse statisch ist ("S"), wenn die Adresse in einem Netz statistisch konfiguriert wurde, lokal ("L"), wenn sich die Adresse auf einem direkt angeschlossenen Netzwerk befindet, dynamisch ("D"), wenn die Adresse gelernt wurde, entfernt ("R"), wenn sich die Adresse in einem entfernten Netz befunden hat, vom Punkt-zu-Punkt-Typ ("P"), wenn die Adresse auf einer Punkt-zu-Punkt-Verbindung gelernt wurde, ein Router ("T"), wenn die Adresse zu einem Router gehört, oder vom Typ Broadcast ("B") ist, wenn die Adresse über ein Rundesendepaket gelernt wurde.The ARP table 112 also includes a type field 206 indicating that the address is static ("S"), if the address in a network has been statistically configured, locally ("L"), if the address is on a directly connected network, dynamically ("D"), if the address has been learned, ("R") removes, if the address was on a remote network, point-to-point type ("P") if the address is on a point-to-point link a router ("T"), if the address belongs to a router, or broadcast type ("B"), if the address was learned via a broadcast packet.

9 zeigt ein Flußdiagramm eines vom IP-Weiterleiter 44 ausgelösten Paketweiterleitungsprozesses. Wenn ein zu routendes IP-Paket an den IP-Weiterleiter 44 übergeben wird, stellt das Programm in Schritt 210 fest, ob der IP-Cache 102 die Zieladresse beinhaltet. Wenn der IP-Cache 102 einen Eintrag für die Zieladresse enthält, wird der MAC-Header vom Header-Feld 110 in das Paket kopiert, und das Paket wird in Schritt 212 an den physikalischen Port weitergeleitet, der vom Ausgangsport-Feld 108 angegeben wird. Der Backplane-Treiber 120 wird verwendet, um das Paket weiterzuleiten, wenn der physikalische Port auf einer anderen Karte resident ist. 9 shows a flowchart of one of the IP forwarder 44 triggered packet forwarding process. When an IP packet to be routed to the IP forwarder 44 is passed, the program puts in step 210 determines if the IP cache 102 includes the destination address. If the IP cache 102 contains an entry for the destination address, the MAC header is taken from the header field 110 copied into the package, and the package gets in step 212 forwarded to the physical port, that of the output port field 108 is specified. The backplane driver 120 is used to forward the packet if the physical port is on another Map is resident.

Wenn der IP-Cache 102 keinen Eintrag für die Zieladresse enthält, stellt das Programm in Schritt 214 fest, ob die Zieladresse in der IP-Weiterleitungstabelle 90 enthalten ist. Lautet die Antwort JA, so ruft das Programm die Route zum Ziel ab und ermittelt, ob die Route über einen der Ports auf derselben Karte oder über eine andere Karte geführt wird. Wird die Route über einen der Ports auf derselben Karte geführt, kann sie lokal verarbeitet werden. Entsprechend sucht das Programm in Schritt 216 in der ARP-Tabelle 112 nach der Zieladresse, wenn sie direkt angehängt ist, oder nach dem Next-Hop-Router, der dem Next-Hop-Router-Feld 96 der Weiterleitungstabelle 90 entnommen wird, sofern es sich um eine entfernte Route handelt. Wenn entweder die Zieladresse oder der Next-Hop-Router in der ARP-Tabelle 112 gefunden wird, wie in Schritt 218 abgefragt wird, so wird das Paket an die angegebene physikalische Portadresse gesendet und der Eintrag dem IP-Cache 102 hinzugefügt.If the IP cache 102 does not contain an entry for the destination address, the program puts in step 214 Determines if the destination address is in the IP forwarding table 90 is included. If the answer is yes, the program retrieves the route to the destination and determines whether the route is being routed through one of the ports on the same card or via another card. If the route is routed via one of the ports on the same card, it can be processed locally. Accordingly, the program looks in step 216 in the ARP table 112 after the destination address, if it is attached directly, or after the next hop router, which is the next hop router field 96 the routing table 90 if it is a distant route. If either the destination address or the next-hop router in the ARP table 112 is found, as in step 218 is queried, the packet is sent to the specified physical port address and the entry is sent to the IP cache 102 added.

Liegt in der ARP-Tabelle kein Eintrag für die Zieladresse oder den Next-Hop-Router vor, so führt der Weg zum Ziel nicht über einen der Ports auf derselben Karte. Daher ruft das Programm in Schritt 220 ein Management-ARP- (MARP-) Protokoll auf, um zu ermitteln, ob der Weg zum Ziel über einen Port auf einer anderen Karte führt. Dazu stellt das Programm dem IP-Paket ein MARP-Anforderungspaket voran und verschickt es per Rundsendung über den Managementbus 16, um festzustellen, ob ein anderes FM 10 über den Pfad zum Ziel verfügt. Das FM 10 mit der IP-Zielroute entnimmt das MARP-Paket und leitet das IP-Paket über die entsprechende Schnittstelle weiter. Anschließend wird ein MARP-Antwortpaket zurück an das FM 10 versandt, von dem das MARP-Paket kam, so daß seine ARP-Tabelle 112 gemäß Schritt 222 mit der Portinformation aktualisiert werden kann. Alle folgenden Pakete können nun direkt an den Port weitergeleitet werden und brauchen nicht über den Bus rundgesendet zu werden.If there is no entry in the ARP table for the destination address or the next-hop router, the path to the destination does not pass through one of the ports on the same card. Therefore, the program calls in step 220 a management ARP (MARP) protocol to determine if the path to the destination passes through a port on another card. For this purpose, the program prefaces the IP packet with a MARP request packet and broadcasts it via the management bus 16 to determine if another FM 10 has the path to the destination. The FM 10 with the destination IP route takes the MARP packet and forwards the IP packet via the appropriate interface. Then a MARP response packet is sent back to the FM 10 from which the MARP package came from, leaving its ARP table 112 according to step 222 can be updated with the port information. All the following packages can now be forwarded directly to the port and do not need to be broadcast over the bus.

Ist beim Schritt 214 die Zieladresse nicht in der Weiterleitungstabelle 90 enthalten, wird eine Anforderung nach der Route an das SCM 14 gesendet. In Schritt 224 fragt das Programm, ob die Zieladresse in der Routingtabelle 70 enthalten ist. Lautet die Antwort JA, so wird die Route zur Zieladresse abgerufen und in Schritt 226 in der Weiterleitungstabelle gespeichert. Existieren mehrere Routen zum selben Ziel, liefert das SCM 14 vorzugsweise die Route mit den geringsten Kosten. Wenn mehrere Routen zum selben Ziel existieren und beide Routen dieselben Kosten verursachen, liefert das SCM 14 diejenige Route, die in der Routingtabelle 70 als erste erscheint. Anschließend führt das Programm einen Vergleich mit der ARP-Tabelle durch oder ruft die MARP-Anforderung auf, um das Paket an die Zieladresse weiterzuleiten.Is at the step 214 the destination address is not in the routing table 90 included is a request for the route to the SCM 14 Posted. In step 224 the program asks if the destination address is in the routing table 70 is included. If the answer is yes, the route to the destination address is retrieved and in step 226 stored in the forwarding table. If several routes to the same destination exist, the SCM delivers 14 preferably the route with the least cost. If there are multiple routes to the same destination and both routes cost the same, the SCM will deliver 14 the route that is in the routing table 70 appears first. The program then compares to the ARP table or calls the MARP request to forward the packet to the destination address.

Wenn die Zieladresse nicht in der Routingtabelle 70 enthalten ist, liefert das SCM 14 in Schritt 228 eine Meldung, aus der hervorgeht, daß das Ziel nicht erreichbar war, und das Paket wird in Schritt 230 fallengelassen.If the destination address is not in the routing table 70 is included, delivers the SCM 14 in step 228 a message stating that the destination was unreachable, and the package will be in step 230 dropped.

III. POLICYBASIERTES ROUTINGIII. POLICY-BASED ROUTING

Ein weiteres Merkmal des Mehrdienstnetzwerk-Switches aus 1 ist die Fähigkeit zum Auswählen eines Routers anhand bestimmter Eigenschaften einer Verbindungsanforderung. Solche Eigenschaften sind unter anderem ein ankommender Zugangskanal oder eine ankommende Zugangsverbindung, eine rufende oder gerufene Telefonnummer, ein Domainname, eine Quelladresse, eine Zieladresse und dergleichen. Unter anderem erleichtert dieses Merkmal das Wholesaling von Wählverbindungen zu anderen ISPs. So kann beispielsweise der gesamte von einem bestimmten Verbindungstyp (z.B. einer ISDN-Leitung) empfangene Benutzerverkehr dem Router zugeführt werden, der von einem Wholesaling-ISP betrieben wird, welcher dem Inlink zugewiesen ist. Das policybasierte Routing ermöglicht also die Auswahl eines Routingpfades innerhalb des Switches, ohne auf eine separate Routingtabelle Bezug nehmen zu müssen.Another feature of the multi-service network switch off 1 is the ability to select a router based on specific properties of a connection request. Such features include an incoming access channel or inbound access connection, a calling or called telephone number, a domain name, a source address, a destination address, and the like. Among other things, this feature facilitates wholesaling dial-up connections to other ISPs. For example, all user traffic received by a particular type of connection (eg, an ISDN line) may be routed to the router operated by a wholesaling ISP assigned to the inlink. Policy-based routing thus allows selection of a routing path within the switch without having to refer to a separate routing table.

Für das domainbasierte Routing kann die Login-Information eines Benutzers (z.B. "user@isp1.com") verwendet werden, um einen ISP auszuwählen und den Benutzer mit dem Authentifizierungsserver des ISPs zu authentifizieren. Nach der Authentifizierung werden alle vom Benutzer kommenden Pakete zu dem Router weitergeleitet, der für die vom ISP betriebene Domain zugewiesen wurde.For the domain-based Routing can use the login information of a user (e.g., "user@isp1.com") to select an ISP and authenticate the user with the authentication server of the ISP. After authentication, all packets coming from the user are taken forwarded to the router responsible for the domain operated by the ISP was assigned.

Gemäß einer Ausführungsform der Erfindung unterhält der Switch eine Domain-Datenbank mit Parametern, welche die Domain festlegen, mit welcher der Benutzer zu verbinden ist. 10 zeigt ein Entwurfsschema einer Domain-Datenbank 380 gemäß einer Ausführungsform der Erfindung. Jeder Domain-Datenbank 380 ist ein Domainname 382 vorangestellt, durch den sie identifiziert wird, und ein Benutzer kann angeben, mit dieser verbunden zu werden. Die Domain-Datenbank 380 beinhaltet außerdem die Adresse 384 eines Next-Hop-Routers, die einen dieser Domain zugewiesenen Router identifiziert. Pakete, die von dem mit der Domain verbundenen Benutzer kommen, werden anschließend an den jeweiligen Router weitergeleitet.According to one embodiment of the invention, the switch maintains a domain database with parameters defining the domain with which the user is to be connected. 10 shows a design schema of a domain database 380 according to an embodiment of the invention. Every domain database 380 is a domain name 382 preceded by identifying it, and a user can specify to be connected to it. The domain database 380 also includes the address 384 a next-hop router that identifies a router assigned to that domain. Packages from that with the Domain connected users come, are then forwarded to the respective router.

Für das quellbasierte Routing werden Pakete an einen bestimmten Router anhand der Quelladresse des Pakets weitergeleitet. Somit greift der Benutzer mit einer bestimmten Quelladresse nur auf die Domain zu, die hinter dem zugewiesenen Router steht. Gemäß einer Ausführungsform der Erfindung sind Routerinformationen für quellbasiertes Routing für jeden Benutzer im Authentifizierungsserver des ISPs eingerichtet.For the source-based Routing packets to a specific router based on the source address of the router Forwarded packet. Thus, the user accesses a particular one Source address only to the domain that is behind the assigned one Router stands. According to one embodiment The invention is router information for source-based routing for each User set up in the ISP's authentication server.

Für anrufpolicybasiertes Routing werden Pakete anhand einer Telefonnummer, einer Verbindung oder eines Kanals einer Wählverbindung an einen bestimmten Router weitergeleitet. Gemäß einer Ausführungsform der Erfindung unterhält der Switch eine Anrufpolicy-Datenbank mit Anrufprofil-Informationen, die als Anrufpolicy-Parameter bezeichnet werden und festlegen, wie eine Wählverbindung zu behandeln ist. Insbesondere gestatten die Anrufpolicy-Parameter die Auswahl bestimmter Router, an welche der gesamte Benutzerverkehr zu richten ist. Die Anrufpolicy-Datenbank kann auf mehrere Arten konfiguriert werden, vorzugsweise jedoch in Form von mehreren Anrufpolicy-Einträgen, von denen jeder ein eindeutiges Profil für eine Serie von Benutzern definiert, die einen Zugang zum System fordern.For call-policy-based Routing packets are based on a phone number, a connection or a dial-up channel forwarded to a specific router. According to one embodiment the invention maintains the switch has a call policy database with call profile information, which are referred to as call policy parameters and determine how a dial-up connection to treat. In particular, the call policy parameters allow the selection of specific routers to which all user traffic to be addressed. The call policy database can be done in several ways be configured, but preferably in the form of multiple call policy entries, from each one a unique profile for a series of users defined that require access to the system.

11 zeigt ein Entwurfsschema eines Anrufpolicy-Eintrags 290 gemäß einer Ausführungsform der vorliegenden Erfindung. Der Anrufpolicy-Eintrag 290 beinhaltet einen Suchschlüssel 291 für die Eingabe des Eintrags. Der Suchschlüssel 291 kann so ausgelegt werden, daß er eines von mehreren verschiedenen Merkmalen ist oder eine von mehreren verschiedenen Kombinationen von Merkmalen ist, die einem ankommenden Anruf zugeordnet sind. Vorzugsweise ist der Suchschlüssel 291 eine Telefonnummer, ein Inlink oder ein Kanal innerhalb eines Inlinks (z.B. DS0), auf welchem der Anruf übergeben wird, oder eine Kombination aus beiden. Wenn der Suchschlüssel beispielsweise "Called" angibt, wird die Anrufpolicy auf die angerufene Telefonnummer angewandt. Wenn der Suchschlüssel "Calling" angibt, wird die Anrufpolicy auf die anrufende Telefonnummer angewandt. Wenn der Suchschlüssel "Inlink" ist, wird die Anrufpolicy auf alle Anrufe angewandt, die über einen vorgegebenen Inlink empfangen werden. Der spezielle Inlink und/oder der spezielle Kanal sind in einem Quellverbindungsfeld 292 und/oder einem Quellkanalfeld 293 angegeben. Die anrufenden oder angerufenen Nummern sind in einem Telefonnummernfeld 316 angegeben. 11 shows a scheme of a call policy entry 290 according to an embodiment of the present invention. The call policy entry 290 includes a search key 291 for entering the entry. The search key 291 may be arranged to be one of several different features or one of several different combinations of features associated with an incoming call. Preferably, the search key 291 a telephone number, an inlink, or a channel within an in-line (eg, DS0) on which the call is transferred, or a combination of both. For example, if the search key indicates "Called," the call policy is applied to the called telephone number. If the search key indicates "calling", the calling policy is applied to the calling telephone number. If the search key is "inlink", the call policy is applied to all calls received over a given inlink. The special inlink and / or the special channel are in a source connection field 292 and / or a source channel field 293 specified. The calling or called numbers are in a telephone number field 316 specified.

Jeder Anrufpolicy-Eintrag 290 beinhaltet einen Anruftyp 294, der einen Typ eines empfangenen Anrufs angibt, und einen Diensttyp 296, der einen Typ eines vom Anruf angeforderten Dienstes angibt. Gemäß einer Ausführungsform der Erfindung beinhaltet der Anruftyp 294 ISDN- und Modemanrufe und der Diensttyp 296 Point-to-Point-Protocol- (PPP-) oder Endgerätedienste.Each call policy entry 290 includes a call type 294 indicating a type of received call and a service type 296 indicating a type of service requested by the call. According to one embodiment of the invention, the call type includes 294 ISDN and modem calls and the service type 296 Point-to-Point Protocol (PPP) or Terminal Services.

Jeder Anrufpolicy-Eintrag 290 beinhaltet ferner eine QoA-Klasse 298, die den Prioritätstyp angibt, welcher dem Anruf zu geben ist, sowie eine QoS-Klasse 300, die den Prioritätstyp angibt, welcher den zu befördernden Paketen zu geben ist, wenn der Anruf angenommen wurde.Each call policy entry 290 also includes a QoA class 298 indicating the priority type to be given to the call and a QoS class 300 indicating the priority type to be given to the packets to be transported when the call is accepted.

Der Anrufpolicy-Eintrag 290 beinhaltet außerdem eine ID 302 eines virtuellen Routers und eine ID 304 eines virtuellen Privatnetzes. Die ID 302 des virtuellen Routers gibt einen virtuellen Router an, dem der Anruf zuzuführen ist. Wie nachstehend noch ausführlicher erläutert wird, ist jedem virtuellen Router ein Satz von Ressourcen und Routingprotokollen zugeordnet, die es dem virtuellen Router gestatten, innerhalb des Switches als unabhängiger Router zu wirken. Die ID 304 des virtuellen Privatnetzes gibt ein virtuelles Privatnetz an, das den Zugang zum virtuellen Router steuert.The call policy entry 290 also includes an ID 302 a virtual router and an ID 304 a virtual private network. The ID 302 The virtual router specifies a virtual router to which the call is to be delivered. As will be explained in more detail below, each virtual router is assigned a set of resources and routing protocols that allow the virtual router to act as an independent router within the switch. The ID 304 virtual private network specifies a virtual private network that controls access to the virtual router.

Zusätzlich zu den obigen Merkmalen spezifiziert der Anrufpolicy-Eintrag 290 eine Authentifizierungsquelle 306 entweder als den Authentifizierungsserver des ISPs oder als eine vom Switch bereitgestellte lokale Datenbank. Wenn die Authentifizierungsquelle der Authentifizierungsserver des ISPs ist, spezifiziert der Anrufpolicy-Eintrag einen primären Authentifizierungsserver 312 und einen sekundären Authentifizierungsserver 314, der aktiviert wird, falls der primäre ausfällt.In addition to the above features, the call policy entry specifies 290 an authentication source 306 either as the ISP's authentication server or as a local database provided by the switch. If the authentication source is the ISP's authentication server, the call policy entry specifies a primary authentication server 312 and a secondary authentication server 314 which is activated if the primary fails.

Der Anrufpolicy-Eintrag 290 beinhaltet außerdem eine IP-Adresse eines Domainnamensservers (DNS) zum Abwickeln des Anrufs. Der Switch unterstützt vorzugsweise eine primäre DNS-Adresse 308 und eine sekundäre DNS-Adresse 310, die aktiviert wird, falls die primäre ausfällt.The call policy entry 290 also includes an IP address of a domain name server (DNS) to handle the call. The switch preferably supports a primary DNS address 308 and a secondary DNS address 310 which is activated if the primary fails.

Zum Auswählen des richtigen Routers für die Wählverbindung beinhaltet der Anrufpolicy-Eintrag 290 eine Domain-ID 311 mit einem Index auf einen Domaindatenbankeintrag. Der Domaindatenbankeintrag beinhaltet die Adresse des Routers, der den vom Benutzer kommenden Verkehr abwickeln soll.To select the correct dial-up router, the call policy entry is included 290 a domain ID 311 with an index on a domain database entry. The domain database entry contains the address of the router that is to handle the traffic coming from the user.

12 zeigt ein Prozeß-Flußdiagramm für policybasiertes Routing gemäß einer Ausführungsform der Erfindung. Das Programm startet, und in Schritt 318 detektiert der Verbindungsmanager 46 einen ankommenden Anruf und informiert den Ressourcenmanager 38 über das Anstehen eines Anrufs. In Schritt 320 fragt der Ressourcenmanager 38 von der Anrufpolicy-Datenbank unter Verwendung eines oder mehrerer der Suchschlüssel 291 den richtigen Anrufpolicy-Eintrag 290 ab. In Schritt 322 werden die im Anrufpolicy-Eintrag 290 aufgelisteten Anrufparameter identifiziert und in Schritt 324 angewandt. Andere Policies wie z.B. das domainbasierte Routing können bei Eignung ebenfalls angewandt werden. In Schritt 326 routet das Programm den Anruf anhand der Policy-Parameter zum richtigen Router. 12 FIG. 12 shows a policy-based routing process flowchart according to an embodiment of the invention Invention. The program starts, and in step 318 the connection manager detects 46 an incoming call and informs the resource manager 38 about queuing a call. In step 320 the resource manager asks 38 from the call policy database using one or more of the search keys 291 the correct call policy entry 290 from. In step 322 are the in the call policy entry 290 listed call parameters and identified in step 324 applied. Other policies, such as domain-based routing, may also be used if appropriate. In step 326 The program routes the call to the correct router based on the policy parameters.

IV. ZUGANGSQUALITÄT IN ZUGANGSSERVERNIV. ACCESS QUALITY IN ACCESS SERVER

Ein weiteres Merkmal des Mehrdienstnetzwerk-Switches aus 1 ist die Fähigkeit, daß er den abgestuften Zugang zu Systemressourcen einschließlich Anwahlmodem- und ISDN-Ressourcen durch Zuweisung von QoA-Klassen zu ankommenden Verbindungsanforderungen gestattet. Auf diese Weise kann ein ISP, der den Switch nutzt, unterschiedliche Zugangsdienstklassen anbieten, deren Preise sich voneinander unterscheiden. Je höher die QoA-Klasse ist, desto höher ist die Zugangspriorität und folglich auch die Wahrscheinlichkeit, eine Verbindung zu bekommen, wenn die Verfügbarkeit von Ressourcen im Switch gering ist.Another feature of the multi-service network switch off 1 is the ability to allow tiered access to system resources including dial-up modem and ISDN resources by assigning QoA classes to incoming connection requests. In this way, an ISP using the switch can offer different access classes whose rates are different. The higher the QoA class, the higher the access priority, and therefore the likelihood of connecting if the availability of resources in the switch is low.

Gemäß einer Ausführungsform der Erfindung ist die QoA-Klasse für eine ankommende Verbindung im Anrufpolicy-Eintrag 290 definiert. Der Anrufpolicy-Eintrag gibt QoA-Zugangsklassen anhand eines bestimmten Merkmals des ankommenden Anrufs wie etwa des Inlink-Typs, der Telefonnummer oder einer ähnlichen Information an. Wenn eine Verbindung angefordert wird, wird der Anrufpolicy-Eintrag des Anrufs abgerufen und die QoA-Klasse des Anrufs identifiziert. Anschließend wird dem Anruf anhand der identifizierten QoA-Klasse und der aktuellen Ressourcennutzung eine angeforderte Ressource zugewiesen.According to one embodiment of the invention, the QoA class is for an incoming call in the call policy entry 290 Are defined. The call policy entry indicates QoA access classes based on a particular feature of the incoming call, such as the inlink type, the telephone number, or similar information. When a connection is requested, the call policy entry of the call is retrieved and the call's QoA class is identified. The call is then assigned a requested resource based on the identified QoA class and current resource usage.

Wenn der Ruthentifizierungsserver des ISPs zum Authentifizieren des Benutzers verwendet wird, wird eine QoA-Klasse des Benutzers ferner als Bestandteil der Benutzerkonfigurations-Information definiert. Die QoA-Klasse im Authentifizierungsserver kann so konfiguriert werden, daß sie der QoA-Klasse im Anrufpolicy-Eintrag vorgeht.If the authentication server of the ISP to authenticate the user is used, becomes a QoA class the user also as part of the user configuration information Are defined. The QoA class in the authentication server can be configured this way they will the QoA class in the call policy record.

13 zeigt ein Entwurfsschema einer QoA-Tabelle 332 gemäß einer Ausführungsform der Erfindung. Die QoA-Tabelle 332 beinhaltet eine Standardanzahl von QoA-Klassen 328 und Zugangsschwellen 330, die jeder der QoA-Klassen zugeordnet sind. Gemäß einer Ausführungsform der Erfindung beträgt die Standardanzahl der QoA-Klassen 328 vier. Die jeder der QoA-Klassen 328 zugeordnete Zugangsschwelle 330 gibt vorzugsweise eine Höchstzahl von Ressourcen an, die in Benutzung sein darf, bevor eine Ressource der Verbindungsanforderung zugewiesen wird. Wenn die Ressourcennutzung die Zugangsschwelle 330 entsprechend der QoA-Klasse 328 des Benutzers überschreitet, wird die Anforderung zurückgewiesen. Im Beispiel in 13 hat ein Benutzer mit der niedrigsten QoA-Klasse (Klasse 1) immer Zugang zu verfügbaren Systemressourcen. Ein Benutzer mit einer QoA-Klasse von 2 hat Zugang zu verfügbaren Systemressourcen, bis 75 Prozent dieser Ressourcen in Benutzung sind. An diesem Punkt haben keine neuen Benutzer mehr die Erlaubnis zum Zugang zu Systemressourcen, bis weitere Ressourcen verfügbar werden. Für einen Benutzer mit einer QoA-Klasse von 4 werden die Systemressourcen zum begrenzenden Faktor, sobald die Zugangsschwelle 25 Prozent erreicht. 13 shows a design schema of a QoA table 332 according to an embodiment of the invention. The QoA table 332 includes a standard number of QoA classes 328 and access thresholds 330 that are associated with each of the QoA classes. According to one embodiment of the invention, the standard number of QoA classes is 328 four. The each of the QoA classes 328 assigned access threshold 330 Preferably, specifies a maximum number of resources that may be in use before a resource is assigned to the connection request. If the resource usage is the access threshold 330 according to the QoA class 328 exceeds the user's request will be rejected. In the example in 13 a user with the lowest QoA class (class 1) always has access to available system resources. A user with a QoA class of 2 has access to available system resources until 75 percent of those resources are in use. At this point, new users no longer have permission to access system resources until more resources become available. For a user with a QoA class of 4, system resources become the limiting factor once the access threshold reaches 25 percent.

Gemäß einer Ausführungsform der Erfindung reserviert das System die Systemressourcen für andere Verbindungen, indem es Benutzer mit niedrigen QoA-Klassen abtrennt. Diesbezüglich kontrolliert der Ressourcenmanager 38 in regelmäßigen Intervallen den Nutzungsgrad der Systemressourcen (z.B. alle 60 Sekunden). Der Ressourcenmanager 38 vergleicht die in Benutzung befindlichen Systemressourcen mit der Zugangsschwelle 330, die der QoA-Klasse jedes eingeloggten Benutzers zugeordnet ist. Wenn die in Benutzung befindlichen Systemressourcen die Zugangsschwelle 330 eines Benutzers überschreiten, wird der Benutzer abgetrennt. Sind mehrere Benutzer mit unterschiedlichen QoA-Klassen mit dem Internet verbunden, so trennt der Ressourcenmanager 38 die Benutzer vorzugsweise in absteigender Reihenfolge ab. So werden beispielsweise Benutzer mit einer QoA-Klasse von 4 zuerst abgetrennt, dann Benutzer mit einer QoA-Klasse von 3 und so fort, bis genügend Ressourcen wieder zur Verfügung stehen, um künftige Verbindungsanforderungen bedienen zu können.According to one embodiment of the invention, the system reserves the system resources for other connections by disconnecting users with low QoA classes. In this regard, the resource manager controls 38 at regular intervals the degree of utilization of the system resources (eg every 60 seconds). The resource manager 38 compares the system resources in use with the access threshold 330 that is associated with the QoA class of each logged-in user. If the system resources in use are the access threshold 330 of a user, the user is disconnected. If several users with different QoA classes are connected to the Internet, the resource manager disconnects 38 the users preferably in descending order. For example, users with a QoA class of 4 will be disconnected first, then users with a QoA class of 3 and so on, until enough resources are available again to serve future connection requests.

Als Beispiel sei angenommen, daß drei Benutzer mit dem Internet verbunden sind. Benutzer 1 hat eine QoA-Klasse von 1, Benutzer 2 eine QoA-Klasse von 2 und Benutzer 3 hat eine QoA-Klasse von 3. Solange der Nutzungsgrad der Systemressourcen 50 Prozent oder weniger beträgt, bleiben alle drei Benutzer mit dem Switch verbunden. Sobald der Nutzungsgrad 70 Prozent erreicht, bleiben nur noch die Benutzer 1 und 2 verbunden. Benutzer 3 wird abgetrennt, und die Ressourcen, die bis dahin von Benutzer 3 in Anspruch genommen wurden, werden wieder vom Ressourcenmanager 38 beansprucht. Steigt der Nutzungsgrad der Systemressourcen auf 80 Prozent oder mehr, so bleibt nur noch Benutzer 1 mit dem Internet verbunden.For example, assume that three users are connected to the Internet. User 1 has a QoA class of 1, User 2 has a QoA class of 2, and User 3 has a QoA class of 3. As long as the system resource usage is 50 percent or less, all three users remain connected to the switch. Once the utilization reaches 70 percent, only users 1 and 2 remain connected. User 3 is disconnected, and the resources used by User 3 until then were again from the resource manager 38 claimed. If system resource utilization increases to 80 percent or more, only user 1 remains connected to the Internet.

Wenn mehrere Benutzer mit derselben QoA-Klasse mit dem Internet verbunden sind, trennt der Ressourcenmanager 38 vorzugsweise die Benutzer mit derselben Klasse nach dem First- in-first-out-Prinzip ab. Es wird also derjenige Benutzer zuerst abgetrennt, der am längsten eingeloggt war.If multiple users with the same QoA class are connected to the Internet, the Resource Manager disconnects 38 Preferably, the users with the same class on the first-in-first-out principle from. Thus, the user who was logged in the longest is first disconnected.

V. MODEMPOOL-MANAGEMENT FÜR WÄHLANWENDUNGENV. MODEMPOOL MANAGEMENT FOR MONITORING

Ein weiteres Merkmal des Mehrdienstnetzwerk-Switches aus 1 ist die Fähigkeit, ankommenden Verbindungsanforderungen dynamisch Systemressourcen zuzuweisen. Die Ressourcen sind nicht auf bestimmte Ports festgelegt, sondern können von den verschiedenen Karten nach Bedarf gemeinsam genutzt werden.Another feature of the multi-service network switch off 1 is the ability to dynamically allocate system resources to incoming connection requests. The resources are not set to specific ports, but can be shared by the various cards as needed.

14 zeigt eine Darstellung eines Pfades, über den eine Verbindung hergestellt werden könnte, wenn Ressourcen gemeinsam genutzt werden. Im Beispiel in 14 handelt es sich bei der Verbindung um einen Modemanruf, der als DS0 an einem Port eines T1-WAN-Leitungsschnittstellen-FMs 380 eintrifft. Das FM besitzt keine eigenen Modems, so daß der Ressourcenmanager 38 ein verfügbares Modem sucht und den DS0 über den TDM-Bus 18 an das Digitalmodemserver-FM 382 routet. Nach der Demodulation werden die resultierenden Pakete nach Bedarf aufbereitet und über den Cell-Bus 20 an ein Ausgangs-FM 384 weitergeleitet. 14 Figure 10 shows an illustration of a path through which a connection could be established when resources are shared. In the example in 14 If the connection is a modem call that is DS0 to a port of a T1 WAN trunk interface FM 380 arrives. The FM does not have its own modems, so the resource manager 38 an available modem is looking for and DS0 over the TDM bus 18 to the digital modem server FM 382 routes. After demodulation, the resulting packets are prepared as needed and over the cell bus 20 to an output FM 384 forwarded.

Gemäß einer Ausführungsform der Erfindung ist der in jedem FM 10 resident vorhandene Ressourcenmanager 38 verantwortlich für die Zuweisung und Verwaltung von Systemressourcen. Der Ressourcenmanager führt vorzugsweise eine Tabelle lokaler Ressourcen und übermittelt diese Informationen per Rundsendung an alle anderen FMs 10 im System. Danach besitzt jedes FM 10 eine vollständige Übersicht über sämtliche Ressourcen, die im Switch verfügbar oder in Benutzung sind. Der Ressourcenmanager 38 ist außerdem vorzugsweise verantwortlich für das Überwachen des fehlerfreien Betriebs lokaler Ressourcen. So können beispielsweise mutmaßlich defekte Modems als nicht verfügbar gekennzeichnet und außer Betrieb genommen werden.According to one embodiment of the invention, that is in each FM 10 resident existing resource manager 38 responsible for allocating and managing system resources. The resource manager preferably maintains a table of local resources and broadcasts this information to all other FMs 10 in the system. After that, each FM owns 10 a complete overview of all the resources available or in use on the switch. The resource manager 38 In addition, it is preferably responsible for monitoring the error-free operation of local resources. For example, suspected defective modems may be marked unavailable and taken out of service.

15 zeigt ein Entwurfsschema einer Modemressourcentabelle 334, die vom Ressourcenmanager 38 gemäß einer Ausführungsform der Erfindung geführt wird. Ähnliche Tabellen werden außerdem vorzugsweise für ISDN- und andere Systemressourcen geführt. 15 shows a design scheme of a modem resource table 334 by the resource manager 38 is guided in accordance with an embodiment of the invention. Similar tables are also preferably maintained for ISDN and other system resources.

Der Ressourcenmanager 38 verfolgt verfügbare Modemressourcen in der Modemressourcentabelle 334 sowohl nach QoA-Klassen als auch nach dem virtuellen Router (VR). Daher beinhaltet die Tabelle 334 ein VR-ID-Feld 336, das den virtuellen Router angibt, für welchen Modemressourcen verfolgt werden. Ein Feld 338 für die maximalen lokalen Ressourcen gibt eine Höchstzahl von Modems an, die dem VR auf dem FM 10 zugewiesen sind. Ein Wert von Null in diesem Feld kann darauf hindeuten, daß das FM 10 kein Modemmodul ist. Ein Feld 340 für die maximalen globalen Ressourcen gibt eine Höchstzahl von Modems im gesamten Switch an, die dem VR zugewiesen wurden.The resource manager 38 tracks available modem resources in the modem resource table 334 both for QoA classes and for the virtual router (VR). Therefore, the table includes 334 a VR-ID field 336 indicating the virtual router for which modem resources are being tracked. A field 338 for the maximum local resources specifies a maximum number of modems that the VR on the FM 10 are assigned. A value of zero in this field may indicate that the FM 10 is not a modem module. A field 340 Maximum Global Resources indicates a maximum number of modems in the entire switch that have been assigned to the VR.

Ein Feld 342 für die aktuellen lokalen Ressourcen gibt eine aktuelle Zahl von Modems an, die dem Vr auf dem FM 10 zur Verfügung stehen. Die Differenz zwischen dieser Zahl und der Zahl aus dem Feld 338 für die maximalen lokalen Ressourcen gibt die Zahl der Modems an, die vom VR auf dem FM 10 in Benutzung sind. Ein Feld 344 für die aktuellen globalen Ressourcen gibt die Zahl der Modems an, die vom VR im gesamten Switch in Benutzung sind. Die Differenz zwischen dieser Zahl und der Zahl aus dem Feld 340 für die maximalen globalen Ressourcen gibt die Zahl der Modems an, die vom VR im gesamtem Switch in Benutzung sind.A field 342 for the current local resources specifies an actual number of modems that the Vr on the FM 10 be available. The difference between this number and the number from the field 338 for the maximum local resources specifies the number of modems that the VR on the FM 10 are in use. A field 344 the current global resources are the number of modems in use by the VR throughout the switch. The difference between this number and the number from the field 340 Maximum Global Resources specifies the number of modems in use by the VR in the entire switch.

Ein QoA-Feld 346 gibt die vom Switch unterstützten Qoa-Klassen an. Gemäß einer Ausführungsform der Erfindung unterstützt der Switch vier QoA-Klassen, wobei die Klasse 1 der höchsten Priorität entspricht.A QoA field 346 Specifies the switch-supported Qoa classes. According to one embodiment of the invention, the switch supports four QoA classes, with class 1 corresponding to the highest priority.

Ein Feld 348 für die lokale QoA gibt die Zahl der Modems an, die im FM 10 für die für den angegebenen VR aufgelistete QoA-Klasse zur Verfügung stehen. Im Beispiel in 15 greift ein QoA von 1 auf den Switch zu, wenn null oder mehr Modems verfügbar sind (100% der Zeit), während ein QoA von 2 auf den Switch zugreift, wenn 8 oder mehr Modems verfügbar sind (75% der Zeit), ein QoA von 3 auf den Switch zugreift, wenn 16 oder mehr Modems verfügbar sind (50% der Zeit) und ein QoA von 4 auf den Switch zugreift, wenn 24 oder mehr Modems verfügbar sind (25% der Zeit).A field 348 for the local QoA, the number of modems that are in the FM 10 available for the listed QoA class for the specified VR. In the example in 15 For example, a QoA of 1 accesses the switch when zero or more modems are available (100% of the time), while a QoA of 2 accesses the switch when 8 or more modems are available (75% of the time), a QoA 3 accesses the switch when 16 or more modems are available (50% of the time) and a QoA of 4 accesses the switch when 24 or more modems are available (25% of the time).

Ein Feld 350 für die globale QoA liefert ähnliche Informationen wie das Feld 348 für die lokale QoA, jedoch für den gesamten Switch. Somit gibt das Feld 350 für die globale QoA die Zahl der Modems an, die im gesamten Switch für die für den angegebenen VR aufgelistete QoA-Klasse zur Verfügung stehen.A field 350 for the global QoA provides similar information as the field 348 for the local QoA, but for the entire switch. Thus, the field gives 350 For global QoA, the number of modems available throughout the switch for the QoA class listed for the specified VR.

Ein Feld 352 für die lokale Akzeptanz gibt anhand der Zahl der verfügbaren lokalen Ressourcen gemäß den Angaben im Feld 342 für die aktuellen lokalen Ressourcen an, ob jede der aufgelisteten QoA-Klassen auf das FM 10 zugreifen kann. Die gültigen Werte sind vorzugsweise Ja und Nein. Die Werte Ja und Nein werden dynamisch berechnet, so daß bei zunehmender Inanspruchnahme von Ressourcen die Ja-Werte in Nein-Werte wechseln können, jedoch mit Ausnahme der QoA-Klasse 1, der der Zugriff stets gestattet ist.A field 352 for the local acceptance given by the number of available local resources as indicated in the box 342 For the current local resources, check whether each of the listed QoA classes is on the FM 10 can access. The valid values are preferably yes and no. The values Yes and No are calculated dynamically, so that as resources increase, the Yes values can change to No values, with the exception of QoA class 1, which is always allowed access.

Ein Feld 354 für die globale Akzeptanz liefert ähnliche Informationen wie das Feld 352 für die lokale Akzeptanz, jedoch für den gesamten Switch. Somit gibt das Feld 354 für die globale Akzeptanz anhand der Zahl der verfügbaren globalen Ressourcen gemäß den Angaben im Feld 344 für die aktuellen globalen Ressourcen an, ob jedes der aufgelisteten QoA-Niveaus auf den Switch zugreifen kann.A field 354 for global acceptance provides similar information as the field 352 for local acceptance, but for the entire switch. Thus, the field gives 354 for global acceptance based on the number of available global resources as indicated in the field 344 for the current global resources, whether each of the listed QoA levels can access the switch.

16 zeigt ein Flußdiagramm eines Ressourcenzuordnungsprozesses gemäß einer Ausführungsform der Erfindung. Wenn ein Benutzer in Schritt 356 eine Verbindungsanforderung auslöst, detektiert der Verbindungsmanager 46 die ankommende Verbindungsanforderung in Schritt 358 über eine der Schnittstellenleitungen und benachrichtigt in Schritt 360 den Ressourcenmanager 38, der im FM 10, welches die Anforderung empfängt (dem empfangenden FM) resident vorhanden ist. In Schritt 362 ruft der Ressourcenmanager 38 den zugehörigen Anrufpolicy-Eintrag 290 anhand der Eigenschaften der Verbindungsanforderung aus der Anrufpolicy-Datenbank ab. Der abgerufene Anrufpolicy-Eintrag beinhaltet unter anderem den Anruftyp, die QoA-Klasse und die dem Anruf zugeordnete VR-ID. 16 FIG. 12 shows a flowchart of a resource allocation process according to an embodiment of the invention. FIG. When a user in step 356 triggers a connection request, the connection manager detects 46 the incoming connection request in step 358 over one of the interface lines and notified in step 360 the resource manager 38 who in FM 10 receiving the request (the receiving FM) is resident. In step 362 calls the resource manager 38 the associated call policy entry 290 based on the connection request properties from the call policy database. The retrieved call policy entry includes, among other things, the call type, the QoA class, and the VR ID associated with the call.

Je nach Anruftyp ermittelt der Ressourcenmanager 38 den Typ der Ressource, die dem Anruf zuzuweisen ist. Handelt es sich beispielsweise um einen ISDN-Anruf, so werden ihm ISDN-Ressourcen zugewiesen. Ist der Anruf dagegen ein Modemanruf, so werden ihm Modemressourcen zugewiesen.Depending on the call type, the resource manager determines 38 the type of resource to assign to the call. For example, if it is an ISDN call, it will be assigned ISDN resources. If, on the other hand, the call is a modem call, modem resources are assigned to it.

In Schritt 364 fragt das Programm ab, ob die angegebene Ressource lokal im empfangenden FM 10 resident vorhanden ist. Lautet die Antwort JA, so weist der Ressourcenmanager 38 in Schritt 366 die angegebene Ressource dem Anruf anhand der angegebenen VR-ID und der QoA-Klasse zu. In Schritt 368 aktualisiert der Ressourcenmanager 38 seine lokale Ressourcentabelle 334 unter Angabe der Zuweisung der angegebenen Ressource. Darüber hinaus übermittelt der Ressourcenmanager 38 im empfangenden FM 10 eine Rundsendung, aus der hervorgeht, daß die angegebene Ressource zugewiesen wurde, so daß alle anderen Ressourcenmanager ihre jeweiligen Ressourcentabellen ebenfalls aktualisieren können. In Schritt 370 wird der Benutzer – vorzugsweise über den Authentifizierungsserver des ISPs – authentifiziert und kann nun mit dem Senden und Empfangen von Datenpaketen beginnen.In step 364 The program asks if the specified resource is local to the receiving FM 10 resident is present. If the answer is yes, the resource manager instructs 38 in step 366 assign the specified resource to the call based on the specified VR ID and QoA class. In step 368 updates the resource manager 38 his local resource table 334 indicating the assignment of the specified resource. In addition, the resource manager submits 38 in the receiving FM 10 a broadcast that indicates that the specified resource has been assigned so that all other resource managers can also update their respective resource tables. In step 370 the user is authenticated, preferably via the authentication server of the ISP, and can now begin to send and receive data packets.

Wenn – nochmals unter Bezug auf Schritt 364 – die angegebene Ressource nicht lokal vorhanden ist, übermittelt der Ressourcenmanager 38 in Schritt 372 per Rundsendung eine Ressourcenanforderung, welche die QoA-Klasse und die VR-ID beinhaltet, die dem ankommenden Anruf zugeordnet sind. Die Ressourcenmanager 38 in den übrigen FMs 10 empfangen die Anforderung und überprüfen ihre lokalen Ressourcentabellen 334 darauf, ob eine Ressource für die angegebene QoA-Klasse und die angegebene VR-ID zur Verfügung steht. Wenn ja, empfängt das empfangende FM 10 in Schritt 374 eine Meldung von jedem einzelnen FMs 10, aus der die Verfügbarkeit der angeforderten Ressource hervorgeht. Gemäß einer Ausführungsform der Erfindung wird dem ersten FM 10, das auf die Verbindungsanforderung antwortet, der Anruf zugeordnet, während die übrigen Antworten ignoriert werden.If - again with reference to step 364 - The specified resource does not exist locally, the resource manager submits 38 in step 372 Broadcast a resource request that includes the QoA class and the VR-ID associated with the incoming call. The resource manager 38 in the remaining FMs 10 receive the request and check their local resource tables 334 whether a resource is available for the specified QoA class and VR-ID. If so, the receiving FM receives 10 in step 374 a message from each individual FM 10 showing the availability of the requested resource. According to one embodiment of the invention, the first FM 10 that answers the connection request, the call is assigned while the remaining responses are ignored.

Beim Zuweisen der Ressource zum Anruf übermittelt der Verbindungsmanager 46 des empfangenden FMs 10, wie Schritt 366 zeigt, per Rundsendung eine Verbindungsanforderung, um die Ressource mit dem ersten antwortenden FM 10 zu verbinden. Der Verbindungsmanager 46 im empfangenden FM 10 antwortet daraufhin mit einer Meldung, daß der Anruf verbunden wurde. Gemäß einer Ausführungsform der Erfindung weist das antwortende FM 10 ein Modem aus seinem lokalen Pool zu, wobei es mit dem Modem auf Port 1 beginnt. Der nächste Anruf, der vom empfangenden FM 10 übergenommen wird, geht an Port 2, dann an Port 3 und so fort. Wird ein Anruf auf Port 1 oder Port 2 beendet, bevor Port 3 einen Anruf übernimmt, so verbleiben die Ports 1 und 2 unbenutzt, wobei der dritte Anruf weiterhin von Port 3 bedient wird. Wenn ein Modemport in Benutzung ist und dieser Port der nächste Port ist, der den Anruf normalerweise beantworten würde, erfolgt die Zuweisung des Ports fortan zufallsbedingt, so daß jeder folgende Port den Anruf beantworten kann.When assigning the resource to the call, the connection manager submits 46 the receiving FM 10 like step 366 shows, by broadcast, a connection request to the resource with the first answering FM 10 connect to. The connection manager 46 in the receiving FM 10 will answer with a message that the call has been connected. According to one embodiment of the invention, the answering FM 10 a modem from its local pool, starting with the modem on port 1. The next call, from the receiving FM 10 takes over, goes to port 2, then to port 3 and so on. If a call to port 1 or port 2 terminates before port 3 takes a call, ports 1 and 2 remain unused, with the third call still serviced by port 3. If a modem port is in use and this port is the next port that would normally answer the call, the port will now be randomized so that each subsequent port can answer the call.

Wenn keine Ressourcen verfügbar sind, die der spezifizierten QoA-Klasse und der spezifizierten VR-ID entsprechen, veranlaßt der Verbindungsmanager 46 im empfangenden FM 10, daß der Anruf beendet wird.If no resources are available, those of the specified QoA class and the specified ones VR ID, causes the connection manager 46 in the receiving FM 10 that the call is terminated.

Wenn ein Anruf verbunden und ihm eine Ressource zugewiesen wurde und der Anruf beendet werden soll, empfängt die Schnittstellenleitung, die den Anruf überträgt, eine Anforderung zum Trennen des Anrufs und informiert den Verbindungsmanager 46. Wenn dem Anruf eine lokale Ressource vom empfangenden FM 10 zugewiesen wurde, wird er lokal beendet, und die dem Anruf zugewiesene Ressource wird an den Pool zurückgegeben. Alle Ressourcenmanager 38 aktualisieren daraufhin ihre Ressourcentabellen, die nunmehr angeben, daß die Ressource verfügbar geworden ist.When a call is connected and assigned a resource and the call is to be terminated, the interface line transmitting the call receives a request to disconnect the call and informs the connection manager 46 , If the call is a local resource from the receiving FM 10 is assigned, it is terminated locally, and the resource assigned to the call is returned to the pool. All resource managers 38 then update their resource tables, which now indicate that the resource has become available.

Wenn dem Anruf eine Ressource von einer anderen Karte zugewiesen wurde, übermittelt der Verbindungsmanager 46 im empfangenden FM 10 per Rundsendung eine Anforderung zum Trennen des Anrufs. Der Verbindungsmanager 46 in dem FM 10, das die Ressource zugewiesen hat, nimmt daraufhin das Trennen des Anrufs vor. Der Verbindungsmanager 46 in dem FM 10, das die Ressource zugewiesen hat, übermittelt danach per Rundsendung eine Meldung, daß der Anruf getrennt wurde. Die Ressource wird danach an den freien Pool zurückgegeben, und die Ressourcenmanager in jedem der FMs 10 aktualisieren ihre Ressourcentabellen, die nunmehr angeben, daß die Ressource verfügbar geworden ist.If the call has a resource assigned from another card, the connection manager submits 46 in the receiving FM 10 Broadcast a request to disconnect the call. The connection manager 46 in the FM 10 that assigned the resource will then disconnect the call. The connection manager 46 in the FM 10 who has assigned the resource will then broadcast a message that the call has been disconnected. The resource is then returned to the free pool and the resource managers in each of the FMs 10 update their resource tables, which now indicate that the resource has become available.

VI. MEHRERE VIRTUELLE ROUTERVI. MULTIPLE VIRTUAL ROUTER

Ein weiteres Merkmal des Mehrdienstnetzwerk-Switches aus 1 ist die Fähigkeit, den Switch in mehrere virtuelle Router (VRs) zu partitionieren, wobei jedem VR einen Satz von Ressourcen (z.B. ISDN- oder Modemressourcen) und Routingtabellen zugewiesen wird. Somit funktioniert jeder VR unabhängig und autark als separater Router.Another feature of the multi-service network switch off 1 is the ability to partition the switch into multiple virtual routers (VRs) with each VR assigned a set of resources (eg, ISDN or modem resources) and routing tables. Thus, each VR works independently and self-sufficient as a separate router.

Das Systemkonzept zum Ressourcenmanagement ermöglicht das effiziente Bereitstellen von VRs. Wie oben beschrieben, sind Systemressourcen nicht an einen bestimmten Steckplatz oder eine bestimmte Schnittstelle gebunden und können deshalb flexibel auf die verschiedenen VRs verteilt werden.The System concept for resource management enables efficient deployment from VRs. As described above, system resources are not at one bound to a specific slot or interface and can Therefore be distributed flexibly to the different VRs.

Gemäß einer Ausführungsform der Erfindung wird beim Booten des Systems ein Standard-Systemrouter erzeugt. Dieser Router ist vorzugsweise ständig im System präsent, und alle Ressourcen gehören zum Systemrouter, bis sie den VRs wieder zugewiesen werden.According to one embodiment The invention becomes a standard system router when booting the system generated. This router is preferably constantly present in the system, and all resources belong to the system router until they are reassigned to the VRs.

Ein Systemadministrator kann neue VRs erzeugen und diesen Ressourcen zuweisen. Der Systemadministrator kann außerdem Routingkonfigurationen für die VRs vornehmen.One System Administrator can create new VRs and these resources to assign. The system administrator can also configure routing configurations for the Make VRs.

Ein neuer VR wird vorzugsweise erzeugt, indem ihm ein eindeutiger Name und eine eindeutige VR-ID zugeordnet werden. Anschließend wird der neue VR durch Einrichten seiner physikalischen Schnittstellen und IP-Schnittstellen sowie durch Aktivieren seiner Routingprotokolle konfiguriert. Nach dem Konfigurieren wird der VR aktiviert und kann fortan als unabhängiger Router arbeiten.One new VR is preferably generated by giving it a unique name and a unique VR ID. Subsequently, will the new VR by setting up its physical interfaces and IP interfaces and by enabling its routing protocols configured. After configuration, the VR is activated and can henceforth as an independent Router work.

Insbesondere wird ein Teil der für das System verfügbaren Ressourcen dem neu erzeugten VR zugewiesen. Solche Ressourcen können Anwahlmodem-, ISDN-, T1-, PRI-, Ethernet- und/oder Frame-Relay-Ressourcen sein. Ethernet-Ressourcen werden PMweise partitioniert. Somit verfügt jeder VR entweder über das gesamte Ethernet-Switch-PM 12a oder über gar kein PM. PRI- und T1-Ressourcen werden auf DS0-Ebene partitioniert. Frame-Relay-Ressourcen werden auf der Ebene der permanenten virtuellen Leitungen (Permanent Virtual Circuit, PVCs) partitioniert.In particular, a portion of the resources available to the system are allocated to the newly created VR. Such resources may be dial-up modem, ISDN, T1, PRI, Ethernet, and / or Frame Relay resources. Ethernet resources are partitioned by PM. Thus, each VR has either the entire Ethernet Switch PM 12a or no PM at all. PRI and T1 resources are partitioned at DS0 level. Frame relay resources are partitioned at the level of the permanent virtual circuit (PVCs).

Jedem VR ist außerdem eine Anzahl von Modem- und ISDN-Ressourcen im Anwahlpool zugeordnet. Gemäß einer Ausführungsform der Erfindung ist jedem VR ein fester prozentualer Anteil oder eine feste Anzahl des Pools zugeordnet. Der Ressourcenmanager 38 überwacht die Nutzung der Ressourcen für jeden VR für jede QoA-Klasse. Wenn ein Anruf eingeht, identifiziert der Ressourcenmanager 38 die VR-ID des ankommenden Anrufs und weist dynamisch die Modem- oder ISDN-Ressourcen zu, wenn er innerhalb der Grenzen liegt, die für den VR und die QoA des Benutzers festgelegt sind.Each VR is also assigned a number of modem and ISDN resources in the dial-up pool. According to one embodiment of the invention, each VR is assigned a fixed percentage or a fixed number of the pool. The resource manager 38 monitors the usage of resources for each VR for each QoA class. When a call comes in, the resource manager identifies 38 the VR ID of the incoming call and dynamically allocate the modem or ISDN resources if it is within the limits set for the user's VR and QoA.

Darüber hinaus verfügt jeder VR über eine Instanz eines IP-Protokoll-Stacks und über seine eigene Routingtabelle 70 für Routingprotokolle wie z.B. RIP, OSPF, GBP4 und dergleichen. Das SCM 14 führt daher, wie in 17 veranschaulicht, für jeden VR eine Routingtabelle 70 anhand der VR-ID. Überdies verfügt jeder VR über seine eigene Weiterleitungstabelle 90 und einen IP-Cache 102 zum Weiterleiten von IP-Paketen, die ebenfalls anhand der VR-ID geführt werden.In addition, each VR has an instance of an IP protocol stack and its own routing table 70 for routing protocols such as RIP, OSPF, GBP4 and the like. The SCM 14 Therefore, as in 17 illustrates a routing table for each VR 70 based on the VR ID. Moreover, each VR has its own routing table 90 and an IP cache 102 for forwarding IP packets, which are also routed using the VR-ID.

Jeder VR kann ferner in mehrere virtuelle Privatnetze (VPNs) zum Steuern des Zugangs zu bestimmten Teilen des VRs partitioniert sein. Die Zugangskontrolle wird mit einer Filtersoftware bewerkstelligt, die an den VR gerichteten Verkehr anhand von Kriterien wie z.B. der Quell- oder Zieladressen filtert.Everyone VR can also be used in several virtual private networks (VPNs) to control be partitioned to access certain parts of the VR. The Access control is accomplished with a filtering software that traffic directed to the VR based on criteria such as e.g. of the Source or destination addresses filter.

Gemäß einer Ausführungsform der Erfindung bestehen VPNs aus VPN-Sitzungen, VPN-Regeln und VPN-Filtern. VPN-Sitzungen sind ein Satz von Kriterien, die der Switch mit dem Verkehr im Netz vergleicht. VPN-Regeln legen fest, wie die Pakete, die mit der VPN-Sitzung übereinstimmen, zu verarbeiten sind. VPN-Filter verknüpfen VPN-Sitzungen mit VPN-Regeln.According to one embodiment In the invention, VPNs consist of VPN sessions, VPN rules, and VPN filters. VPN sessions are a set of criteria that the switch uses Traffic in the network compares. VPN rules determine how the packets that match the VPN session, to be processed. VPN filter link VPN sessions with VPN rules.

18 zeigt ein Entwurfsschema einer Sitzungstabelle 240 mit verschiedenen VPN-Sitzungen gemäß einer Ausführungsform der Erfindung. Jede VPN-Sitzung in 18 beinhaltet eine Sitzungs-ID 242, die zum Klassifizieren einer bestimmten Sitzung dient. Da Sitzungen in numerischer Reihenfolge abgefragt werden, gibt die Sitzungs-ID 242 vorzugsweise auch die Reihenfolge an, in der Sitzungen in der Sitzungstabelle 240 mit Paketen verglichen werden. Beispielsweise wird die Sitzung 1 zuerst verglichen, dann die Sitzung 2 und so fort. Wenn ein Paket nicht mit einer der Sitzungen übereinstimmt, durchläuft es die Liste bis zur nächsten Sitzung. 18 shows a design scheme of a session table 240 with different VPN sessions according to an embodiment of the invention. Every VPN session in 18 includes a session ID 242 which is used to classify a particular session. Because sessions are queried in numeric order, the session ID returns 242 preferably also the order in which sessions in the session table 240 be compared with packages. For example, Session 1 is compared first, then Session 2 and so on. If a packet does not match any of the sessions, it cycles through the list until the next session.

Jede Sitzung beinhaltet außerdem vorzugsweise eine VPN-ID 244, die zum Klassifizieren und Kategorisieren von Wählverbindungen dient. So kann beispielsweise eine Gruppe von Benutzern aus den Mitarbeitern eines Unternehmens mit einer bestimmten VPN-ID 244 bestehen, denen der Zugang zum Unternehmensnetz wie auch zum Internet gewährt wird, während eine zweite Gruppe von Benutzern aus Kunden mit einer anderen VPN-ID 244 bestehen kann, denen zwar der Zugang zum Internet, nicht aber zum Unternehmensnetz gewährt wird. In einer Ausführungsform der Erfindung ist die VPN-ID jedes Benutzers im Authentifizierungsserver des ISPs konfiguriert.Each session also preferably includes a VPN ID 244 which is used to classify and categorize dial-up connections. For example, a group of users from the employees of a company with a specific VPN ID 244 who are granted access to the corporate network as well as the Internet, while a second group of users are customers with a different VPN ID 244 which is granted access to the internet but not to the corporate network. In one embodiment of the invention, the VPN ID of each user is configured in the ISP's authentication server.

Jede Sitzung beinhaltet außerdem ein Paar aus einer IP-Quelladresse 246 und einer Zieladresse 250, das Paketen entsprechen muß, die im Netz gesendet und empfangen werden. Eine Quellvergleichsmaske 248 und eine Zielvergleichsmaske 252 gestatten die Spezifizierung eines Unternetzes, einer Gruppe von Hosts oder aller Adressen. Auf diese Weise identifiziert der Switch diejenigen Pakete, die Kandidaten für den Filterprozeß sind.Each session also includes a pair from an IP source address 246 and a destination address 250 which must correspond to packets sent and received on the network. A source comparison mask 248 and a destination comparison mask 252 allow the specification of a subnet, a group of hosts or all addresses. In this way, the switch identifies those packets that are candidates for the filtering process.

Beispielsweise geben eine Sitzungs-ID 242 von "1", eine VPN-ID 244 von "111", eine Quelladresse 246 von "any", eine Quellvergleichsmaske 248 von "any", eine Zieladresse von "10.1.0.0" und eine Zielvergleichsmaske 252 von "255.255.0.0" eine VPN-Sitzung "1" für Benutzer mit einer VPN-ID von "111" (z.B. die Mitarbeiter eines Unternehmens) an und gestatten, daß diese von jedem beliebigen Punkt oder jeder beliebigen Quelladresse her kommen und auf jedes Unternetz im 10.1.0.0-Netz (z.B. das Unternehmens-LAN) zugreifen können. Andererseits geben eine Sitzungs-ID 242 von "2", eine VPN-ID 244 von "any", eine Quellvergleichsmaske 248 von "255.255.0.0", eine Zieladresse von "208.277.214.0" und eine Zielvergleichsmaske 252 von "255.255.255.0" eine VPN-Sitzung "2" an, daß beliebige Benutzer (VPN-ID von "any") in jedem beliebigen Unternetz im 10.1.0.0-Netz (z.B. dem Unternehmens-LAN) auf das Netz 207.221.211.0 zugreifen können (z.B. den Anwahlpool für den Zugang zum Internet). In diesen Beispielen werden Pakete mit jeder einzelnen Sitzung in aufsteigender numerischer Reihenfolge anhand der Sitzungs-ID verglichen. Wenn daher ein Paket nicht mit der Sitzungs-ID 242 "1" übereinstimmt, wird es anschließend mit der Sitzungs-ID "2" verglichen.For example, give a session ID 242 of "1", a VPN ID 244 from "111", a source address 246 from "any", a source comparison mask 248 from "any", a destination address of "10.1.0.0" and a destination comparison mask 252 from "255.255.0.0" a VPN session "1" for users with a VPN ID of "111" (eg the employees of a company) and allow them to come from any point or any source address and to any Subnet in the 10.1.0.0 network (eg the corporate LAN) can access. On the other hand give a session ID 242 of "2", a VPN ID 244 from "any", a source comparison mask 248 of "255.255.0.0", a destination address of "208.277.214.0" and a destination comparison mask 252 of "255.255.255.0" a VPN session "2" indicates that any user (VPN-ID of "any") in any subnet in the 10.1.0.0 network (eg the corporate LAN) on the network 207.221.211.0 access (eg the dial-up pool for access to the Internet). In these examples, packets are compared with each session in ascending numerical order by session ID. Therefore, if a package does not match the session ID 242 " 1 ", it is then compared to the session ID" 2 ".

Nachdem ein Paket zum Filtern ausgewählt wurde, legen die VPN-Regeln eine Serie von Bedingungen fest, nach welchen das Paket zu verarbeiten ist. Die Regel kann etwa festlegen, daß das Paket weiterzuleiten oder aber auszulassen ist.After this a package is selected for filtering The VPN rules determine a series of conditions which the package is to be processed. The rule may specify that this Forward packet or skip it.

19 zeigt ein Entwurfsschema einer Regeltabelle 254 mit verschiedenen VPN-Regeln gemäß einer Ausführungsform der Erfindung. Jede VPN-Regel beinhaltet eine Regel-ID 256 zur Identifikation der Bedingungen der Regel. Daneben beinhaltet jede VPN-Regel eine Regelpriorität 258 zur Angabe der Reihenfolge, in der die Regeln auf ein Paket anzuwenden ist, das mit einer bestimmten VPN-Sitzung übereinstimmt. Ein Aktionsfeld 260 gibt die Aktion an, die von der Regel auf das Paket angewandt werden soll. Gültige Aktionen beinhalten vorzugsweise das Weiterleiten oder Auslassen der Pakete. 19 shows a design schema of a rules table 254 with different VPN rules according to an embodiment of the invention. Each VPN rule includes a rule ID 256 to identify the conditions of the rule. In addition, each VPN rule includes a rule priority 258 to specify the order in which the rules apply to a packet that matches a particular VPN session. An action field 260 specifies the action to be applied by the rule to the package. Valid actions preferably include forwarding or omitting the packets.

Jede Sitzung beinhaltet ferner ein IP-Protokollfeld 262 und ein Anwendungsschicht-Protokollfeld 264. Das IP-Protokollfeld gibt den Namen des zu filternden IP-Protokolls an. Das Anwendungsschicht-Protokollfeld gibt das Anwendungsschichtprotokoll an, von dem das Paket an das VPN übermittelt wurde.Each session also includes an IP protocol field 262 and an application layer protocol field 264 , The IP protocol field specifies the name of the IP protocol to be filtered. The application layer protocol field specifies the application layer protocol from which the packet was submitted to the VPN.

Ein Sitzungszahlfeld 266 gibt die Anzahl der VPN-Sitzungen an, die die Regeln verwenden. Ein Paketzahlfeld 268 gibt die Anzahl der Pakete an, die vom Switch weitergeleitet oder ausgelassen werden.A session number field 266 Specifies the number of VPN sessions that use the rules. A pa ketzahlfeld 268 Specifies the number of packets forwarded or dropped by the switch.

Das VPN-Filter ist vorzugsweise diejenige Einheit, die eine VPN-Sitzung mit einer VPN-Regel verknüpft. Wenn somit ein Paket anhand der Kriterien in der Sitzungstabelle 240 zum Filtern identifiziert ist, fragt die Software die der Sitzung zugeordnete Regel aus der Regeltabelle 254 ab, und die Regel legt fest, ob sich das Paket durch das Netz weiter bewegt.The VPN filter is preferably the entity that associates a VPN session with a VPN rule. Thus, if a package based on the criteria in the session table 240 For filtering, the software asks the rule associated with the session from the rules table 254 and the rule determines whether the packet continues to move through the network.

20 zeigt ein Entwurfsschema einer Filtertabelle 270 mit verschiedenen VPN-Filtern gemäß einer Ausführungsform der Erfindung. Jedes Filter beinhaltet eine Sitzung 272 und eine mit der Sitzung 272 verknüpfte Regel 274. Die Sitzung 272 entspricht der Sitzungs-ID 242 in der Sitzungstabelle 240, und die Regel 274 entspricht der Regel-ID 256 in der Regeltabelle 254. 20 shows a design scheme of a filter table 270 with various VPN filters according to an embodiment of the invention. Each filter includes a session 272 and one with the session 272 linked rule 274 , The session 272 corresponds to the session ID 242 in the session table 240 , and the rule 274 corresponds to the rule ID 256 in the rules table 254 ,

Wenn ein Medienport ein Paket empfängt, stellt er fest, ob dieses zu filtern ist. Falls ja, so wird es an ein Filtermodul übergeben, das den entsprechenden Filterungsvorgang durchführt. Gemäß einer Ausführungsform der Erfindung ist das Filtermodul in jedem der FMs 10 resident vorhanden.When a media port receives a packet, it determines if it is to be filtered. If so, it is passed to a filter module that performs the corresponding filtering operation. According to one embodiment of the invention, the filter module is in each of the FMs 10 resident present.

21 zeigt ein Flußdiagramm eines von einem Filterungsmodul ausgelösten Paketfilterungsprozesses gemäß einer Ausführungsform der Erfindung. Jedes zu filternde Paket beinhaltet eine VPN-ID. Somit startet das Programm und sucht in Schritt 280 nach der VPN-ID im Paket. Das Programm durchsucht außerdem die Sitzungstabelle 240 nach der richtigen VPN-ID 244. Das Programm durchsucht die Sitzungstabelle 240 anhand der Sitzungs-ID 242 in aufsteigender numerischer Reihenfolge. Sobald das Programm eine Sitzung gefunden hat, das mit der VPN-ID übereinstimmt, fragt es in Schritt 282 ab, ob die Quelladresse des Pakets mit der für die Sitzung spezifizierten Quelladresse 246 übereinstimmt. Lautet die Antwort JA, so fragt das Programm in Schritt 284 ab, ob die Zieladresse des Pakets mit der für die Sitzung spezifizierten Zieladresse 250 übereinstimmt. Lautet die Antwort erneut JA, so durchsucht das Programm in Schritt 286 die Filtertabelle 270 nach der Regel, die zur übereinstimmenden Sitzung gehört. In Schritt 288 durchsucht das Programm die Regeltabelle 254, um die für die Regel spezifizierten Bedingungen zu ermitteln, und verarbeitet das Paket gemäß diesen Bedingungen (d.h. leitet das Paket weiter oder läßt es aus). 21 FIG. 12 shows a flowchart of a filtering module initiated packet filtering process according to one embodiment of the invention. FIG. Each packet to be filtered contains a VPN ID. Thus, the program starts and searches in step 280 after the VPN-ID in the package. The program also searches the session table 240 for the right VPN ID 244 , The program searches the session table 240 based on the session ID 242 in ascending numerical order. Once the program has found a session that matches the VPN ID, ask in step 282 Whether the source address of the packet matches the source address specified for the session 246 matches. If the answer is yes, the program asks in step 284 determines whether the destination address of the packet is the destination address specified for the session 250 matches. If the answer is YES again, then the program will search in step 286 the filter table 270 after the rule that belongs to the matching session. In step 288 the program searches the rule table 254 to determine the conditions specified for the rule, and process the packet according to these conditions (ie forward or omit the packet).

VII. AUTOMATISCHE SCHUTZUMSCHALTUNGVII. AUTOMATIC PROTECTION

Ein weiteres Merkmal des Mehrdienstnetzwerk-Switches aus 1 ist die Fähigkeit zur Schaffung von Fehlertoleranz durch Hardware und Software für die automatische Schutzumschaltung (Automatic Protection Switching, APS). Die APS gestattet es, Komponentenfehlfunktionen innerhalb des Switches (z.B. Fehlfunktionen von Endgeräten) sowie Fehlfunktionen auf externen Verbindungen einzukreisen und den Betrieb über Backup-Komponenten wiederherzustellen. Wenn also eine Abschlußeinheit oder eine externe Verbindung ausfällt, wird jedes dieser Elemente ohne Betriebsunterbrechung automatisch zu einer Backup-Komponente umgeroutet. Es gibt zwei Elemente einer Verbindung, nämlich eine externe Verbindung und eine an die externe Verbindung angeschlossene Abschlußeinheit. Somit ist die APS vorzugsweise in zwei Bereiche unterteilt, von denen der eine für das Einkreisen von Fehlfunktionen und die automatische Wiederherstellung nach einem Ausfall von Abschlußeinheiten und der andere für das Einkreisen von Fehlfunktionen und die automatische Wiederherstellung nach einem Ausfall von externen Verbindungen zuständig ist.Another feature of the multi-service network switch off 1 is the ability to provide fault tolerance through hardware and automatic protection switching (APS) software. The APS makes it possible to cradle component malfunctions within the switch (eg malfunctions of terminals) as well as malfunctions on external connections and to restore operation via backup components. Thus, if a terminating unit or an external connection fails, each of these elements is automatically re-routed to a backup component without interrupting operations. There are two elements of a connection, namely an external connection and a termination unit connected to the external connection. Thus, the APS is preferably divided into two areas, one responsible for circling malfunctions and the automatic recovery from a failure of termination units and the other for circling malfunctions and automatically recovering from a failure of external connections.

Der Switch unterstützt vorzugsweise alle Kombinationen aus primären Komponenten und Backup-Komponenten. Beispielsweise kann die Backup-Komponente ein Port auf demselben Modul (Karte), ein anderes Modul innerhalb desselben Einschubs, ein anderes Modul in einem anderen Einschub, aber im selben Gestell oder auch ein anderes Modul in einem anderen Einschub und in einem anderen Gestell sein.Of the Switch supported preferably all combinations of primary components and backup components. For example, the backup component can have a port on it Module (card), another module within the same slot, another module in another slot, but in the same rack or another module in another slot and in one be different frame.

22 zeigt ein schematisches Blockdiagramm eines Switches mit einem APS-Mechanismus für den Ausfall externer Verbindungen. Der Switch beinhaltet ein primäres Modul 506 und ein Backup-Modul 508, wobei beim primären Modul eine primäre WAN-Verbindung 502 und beim Backup-Modul eine Backup-WAN-Verbindung 504 ankommt. Sowohl das primäre als auch das Backup-Modul beinhalten eine Überspannungs-Schutzvorrichtung 510, 514 und eine Leitungsschnittstelleneinheit (Line Interface Unit, LIU)/ einen Framer 512, 518. Dieselben Daten, die über die primäre WAN-Verbindung 502 empfangen werden, werden vorzugsweise auch über die sekundäre WAN-Verbindung 504 empfangen. Wenn die Software Fehler auf der primären WAN-Verbindung 502 – beispielsweise Übertragungsfehler – erkennt, schaltet die APS-Software das Lesen von der primären WAN-Verbindung 502 auf die Backup-WAN-Verbindung 504 um. Die Umschaltung von der primären WAN-Verbindung auf die Backup-WAN-Verbindung verläuft vorzugsweise verzögerungsfrei und verursacht keine Unterbrechung der Systemfunktionalität. 22 shows a schematic block diagram of a switch with an APS mechanism for the failure of external connections. The switch includes a primary module 506 and a backup module 508 , where the primary module is a primary WAN connection 502 and a backup WAN connection to the backup module 504 arrives. Both the primary and backup modules include an overvoltage protection device 510 . 514 and a line interface unit (LIU) / framer 512 . 518 , The same data over the primary WAN connection 502 are also preferably received over the secondary WAN link 504 receive. If the software fails on the primary WAN connection 502 For example, if there is a transmission error, the APS software switches reading from the primary WAN connection 502 on the backup WAN connection 504 around. Switching from the primary WAN link to the backup WAN link is preferably instantaneous and does not interrupt the system functionality.

Gemäß einer Ausführungsform der Erfindung wird die Backup-WAN-Verbindung 504 aus einer Liste redundanter Ports (Redundant Ports List, RPL) ausgewählt. Die Liste redundanter Ports stellt eine benutzerdefinfierte Liste von Backup-Verbindungen für jede Verbindung im System zur Verfügung. Die Backup-Verbindung kann vom selben Typ wie die primäre Verbindung oder von einem anderen Typ sein. So könnte beispielsweise eine ISDN-Verbindung eine T1-Teilverbindung als Backup-Verbindung haben.According to one embodiment of the invention, the backup WAN connection 504 selected from a list of redundant ports (RPL). The list of redundant ports provides a user-defined list of backup connections for each connection in the system. The backup connection can be of the same type as the primary connection or of another type. For example, an ISDN connection could have a T1 sublink as a backup connection.

Der Switch stellt ferner einen APS-Mechanismus für den Ausfall von Abschlußeinheiten wie etwa defekte Modems oder defekte Ports zur Verfügung. Gemäß einer Ausführungsform der Erfindung gibt es zwei Möglichkeiten zum Absichern von Abschlußeinheiten. Eine Möglichkeit besteht darin, jede Karte mit zwei oder mehr Ports auszustatten, von denen jeder primäre Port jeweils durch einen Backup-Port abgesichert wird. Sollte also ein primärer Port ausfallen, übernimmt ein Backup-Port dessen Funktion. Eine weitere Möglichkeit besteht in der Verwendung von zwei oder mehr Karten, wobei jede primäre Karte durch eine Backup-Karte abgesichert wird. Sollte also eine Karte ausfallen, übernimmt eine der anderen Karten deren Funktion und verarbeitet die Daten.Of the Switch also provides an APS mechanism for the termination of terminators such as broken modems or broken ports. According to one embodiment There are two possibilities of the invention to secure financial statements. A possibility is to provide each card with two or more ports, each of which is primary Port is backed up by a backup port. So should a primary one Port fail, takes over a backup port whose function. Another possibility is the use of two or more cards, with each primary card through a backup card is secured. So should a card fail, take over one of the other cards whose function and processes the data.

23 zeigt ein schematisches Blockdiagramm eines Switches mit einem Backup-Port, der physikalisch mit einem anderen Port auf einer separaten Karte verbunden ist. Ein primäres Modul 501 beinhaltet einen primären Port 503 und einen Backup-Port 505. Der Backup-Port 505 ist über eine Backup-Verbindung 511 physikalisch mit einem anderen Port 509 auf einem Backup-Modul 507 verbunden. Wird am primären Port 503 eine Fehlfunktion festgestellt, leitet das Relais Verkehr zum Backup-Port 505 um, der seinerseits den Verkehr zum Port 509 auf dem Backup-Modul 507 umleitet. 23 Figure 12 shows a schematic block diagram of a switch with a backup port that is physically connected to another port on a separate card. A primary module 501 includes a primary port 503 and a backup port 505 , The backup port 505 is via a backup connection 511 physically with a different port 509 on a backup module 507 connected. Will be on the primary port 503 detected a malfunction, the relay forwards traffic to the backup port 505 which, in turn, is the traffic to the port 509 on the backup module 507 redirects.

Gemäß einer Ausführungsform der Erfindung wird eine Fehlfunktion am primären Port 503 per Hardware detektiert, indem die Aktivität des Ports überwacht wird. Liegt nach einer programmierten Zeitspanne (z.B. 290 Millisekunden) keine Aktivität (z.B. keine Änderung des Betriebszustands) des Ports vor, so schaltet das Schutzrelais 520 automatisch auf den Backup-Port 505 um. Die APS-Software hält die Daten im Backup-Port 505 auf dem aktuellen Stand des primären Ports. Erfolgt also eine Umschaltung vom primären Port auf den Backup-Port, so wird kein Datenverlust eintreten. Befindet sich der Backup-Port auf derselben Karte, so wird derselbe Speicher verwendet. Befindet sich der Backup-Port auf einer anderen Karte, so schreibt die APS-Software vorzugsweise die Daten gleichzeitig an beide Karten.According to one embodiment of the invention, a malfunction on the primary port 503 detected by hardware by monitoring the activity of the port. If there is no activity (eg no change in the operating state) of the port after a programmed period of time (eg 290 milliseconds), then the protective relay switches 520 automatically to the backup port 505 around. The APS software keeps the data in the backup port 505 up to date with the primary port. Thus, if a switch from the primary port to the backup port, so no data loss will occur. If the backup port is on the same card, the same memory will be used. If the backup port is on a different card, the APS software preferably writes the data to both cards at the same time.

Die APS-Architektur ist vorzugsweise eine 1:n-Architektur, in der jede Backup-Komponente n primäre Komponenten unterstützt, wobei n größer oder gleich 1 ist. So gibt beispielsweise eine 1:2-Schutzumschaltung an, daß für jeweils zwei primäre Komponenten eine Backup-Komponente existiert. Gemäß einer Ausführungsform der Erfindung bietet der Switch die Wahl zwischen einer 1:1-, einer 1:2-, einer 1:3- und einer 1:4-Schutzumschaltung für T1/E1-Verbindungen sowie die Wahl zwischen einer 1:1- und einer 1:2-Schutzumschaltung für CT3-Verbindungen (E3, T3 und OC3 kanalisiert). 24 zeigt ein schematisches Blockdiagramm eines Switches mit 1:2-Schutzumschaltung gemäß einer Ausführungsform der Erfindung. Port Nr. 1 522 ist über die Backup-Verbindung 528 an den Backup-Port 526 angeschlossen, und Port Nr. 2 524 ist über die Backup-Verbindung 530 an den Backup-Port angeschlossen. Bei einer solchen 1:2-Schutzumschaltung kann jede der beiden Betriebsverbindungen auf die Schutzschaltung umgeschaltet werden.The APS architecture is preferably a one-to-many architecture in which each backup component supports n primary components, where n is greater than or equal to one. For example, a 1: 2 protection switch indicates that there is a backup component for every two primary components. According to one embodiment of the invention, the switch offers a choice of a 1: 1, a 1: 2, a 1: 3 and a 1: 4 protection switching for T1 / E1 connections as well as a choice between a 1: 1 and a 1: 2 protection switch for CT3 connections (channeled E3, T3 and OC3). 24 shows a schematic block diagram of a switch with 1: 2 protection switching according to an embodiment of the invention. Port No. 1 522 is about the backup connection 528 to the backup port 526 connected, and port no. 2 524 is about the backup connection 530 connected to the backup port. With such a 1: 2 protection switching, each of the two operating connections can be switched to the protection circuit.

25 zeigt ein schematisches Blockdiagramm eines Switches mit 1:2-Schutzumschaltung gemäß einer alternativen Ausführungsform der vorliegenden Erfindung. Port 1 hat eine erste primäre Verbindung 540, und Port 2 hat eine zweite primäre Verbindung 542. Statt daß jeder Port, wie in der Ausführungsform von 25, über eine eigene Backup-Verbindung verfügt, nutzen die Ports 1 und 2 gemeinsam eine Backup-Verbindung 544. 25 Figure 12 shows a schematic block diagram of a switch with 1: 2 protection switching according to an alternative embodiment of the present invention. port 1 has a first primary connection 540 , and port 2 has a second primary connection 542 , Instead of each port, as in the embodiment of 25 , has its own backup connection, ports 1 and 2 share a backup connection 544 ,

26 zeigt ein Blockdiagramm einer anderen Ausführungsform mit einer 1:1-Schutzumschaltung. Hier wirkt die externe Verbindung B 532 als Backup für die externe Verbindung A 534. Gemäß dieser Ausführungsform werden die LIU und andere Logikeinheiten über ein Auswahlrelais 536 entweder auf Port A 538 oder Port B 540 umgeschaltet. Sollte daher die externe Verbindung B 534 ausfallen, schaltet das Relais 536 auf Port B 540 um, um Daten von der externen Verbindung B 532 zu lesen. 26 shows a block diagram of another embodiment with a 1: 1 protection switching. This is where the external connection B works 532 as a backup for the external connection A 534 , According to this embodiment, the LIU and other logic units become via a selection relay 536 either on port A 538 or Port B 540 switched. Therefore, should the external connection B 534 fail, the relay turns off 536 on Port B 540 to get data from the external connection B 532 to read.

VII. MODULARE, UNABHÄNGIGE PROTOKOLLSTACK-ARCHITEKTURVII. MODULAR, INDEPENDENT PROTOCOL STACK ARCHITECTURE

Ein weiteres Merkmal des Mehrdienstnetzwerk-Switches aus 1 ist die Fähigkeit zur Unterstützung eines IP- Routingprotokolls und einer Architektur, in welcher die Layer-2-Protokolle unabhängig von den physikalischen Schnittstellen sind, auf denen sie arbeiten. Im Gegensatz zur bekannten Switch-Technologie, bei der ein Protokoll beim Kompilieren einem physikalischen Port fest zugeordnet wird, konfiguriert der Switch vorzugsweise einen Port mit dem richtigen Protokoll, wenn der Port aktiviert wird, also dynamisch nach dem Herstellen einer Verbindung, was es ermöglicht, daß Switch-Anwendungen unabhängig von den physikalischen Ports sind, auf denen sie arbeiten.Another feature of the multi-service network switch off 1 is the ability to support an IP routing protocol and architecture in which the Layer 2 protocols are independent of the physical interfaces on which they operate. In contrast to the well-known switch technology, in which a protocol is assigned to a physical port during compilation, the switch is configured in advance Preferably, a port with the correct protocol when the port is activated, that is, dynamically after establishing a connection, which allows switch applications to be independent of the physical ports on which they operate.

Der Switch unterstützt vorzugsweise eine Vielzahl von Schnittstellen von Weitverkehrsnetzen (Wide Area Networks, WANs) und lokalen Netzwerken (Local Area Networks, LANs). Zu diesen physikalischen Schnittstellen zählen unter anderem solche vom Modem-, ISDN-, T1 und Fractional-T1- (T1/FT1-), nicht kanalisierten T3- (UT3), ATM-OC3-, ATM-DS3- und Ethernet-Typ. Darüber hinaus unterstützt der Switch eine Vielzahl von Layer-2-Protokollen wie das Punkt-zu-Punkt-Protokoll (PPP), PPP over Frame Relay (PPP/FR), PPP over Ethernet (PPOE), das Layer Two Tunneling Protocol (L2TP), die Layer-2-Weiterleitung (Layer-Two Forwarding. L2F), RFC 1483 Bridged, RFC 1483 Routed, RFC 1490 Bridged und RFC 1490.Of the Switch supported preferably a plurality of interfaces of wide area networks (Wide Area Networks, WANs) and local area networks (Local Area Networks, LANs). These physical interfaces include, but are not limited to, those of Modem, ISDN, T1 and Fractional T1 (T1 / FT1), non-channelized T3 (UT3), ATM-OC3, ATM-DS3 and Ethernet type. Furthermore supports the Switch has a variety of Layer 2 protocols, such as Point-to-Point Protocol (PPP), PPP over Frame Relay (PPP / FR), PPP over Ethernet (PPOE), the Layer Two Tunneling Protocol (L2TP), Layer 2 Forwarding (Layer-Two Forwarding. L2F), RFC 1483 Bridged, RFC 1483 Routed, RFC 1490 Bridged and RFC 1490.

Mit der Flexibilität zum dynamischen Konfigurieren eines Ports kann ein einziger Port ein L2TP für eine Sitzung und ein L2F für eine andere Sitzung unterstützen. Darüber hinaus kann dasselbe Protokoll für jede Sitzung auf unterschiedlichen Ports betrieben werden. So wird PPP beispielsweise typisch bei Modems verwendet. Mit der dynamischen Port-Konfiguration jedoch kann PPP auch über Ethernet-, T1- oder ISDN-Leitungen betrieben werden, ohne daß man auf einen einzigen physikalischen Schnittstellentyp beschränkt ist. Überdies ist der Switch nicht nur in der Lage, unterschiedliche Pakettypen von unterschiedlichen Medientypen zu verarbeiten, sondern er ist auch in der Lage, die Pakete an jede Art von Medium weiterzuleiten. Beispielsweise können Daten per PPP in den Switch gelangen und ihn per ATM wieder verlassen.With the flexibility A single port can be used to dynamically configure a port an L2TP for a session and an L2F for support another session. About that In addition, the same protocol for each session can be operated on different ports. So will For example, PPP is typically used with modems. With the dynamic However, port configuration can also use PPP over Ethernet, T1 or ISDN lines be operated without you is limited to a single physical interface type. moreover Not only is the switch capable of delivering different packet types of different media types to process, but he is also able to forward the packets to any kind of medium. For example, you can Data via PPP into the switch and leave it again via ATM.

Die dynamische Konfiguration von Ports läßt sich ferner auf eine Vielzahl von Medien erweitern, so etwa auf Schmalband zur Sprachübertragung, Breitband oder DSL, um nur einige zu nennen. Ein Port kann außerdem einem Medium fest zugewiesen werden, beispielsweise T1. Die Software-Architektur ermöglicht es, daß Module für unterschiedliche Medien in einem Switch miteinander kommunizieren können.The dynamic configuration of ports can also be on a variety from media, such as to narrowband for voice transmission, Broadband or DSL, just to name a few. A port can also be one Medium, for example T1. The software architecture allows it, that modules for different Media in a switch can communicate with each other.

27 zeigt ein schematisches Blockdiagramm einer IP-Weiterleitungsschicht 600 sowie von Layer-2-Protokollen 602 und physikalischen Layer-1-Schnittstellen 604, Die dynamische Konfiguration von Ports gestattet es, beispielsweise PPP mit Modem, ISDN, T1, UT3, ATM DS3 und ATM OC3 zu verknüpfen. Überdies können Layer-2-Protokolle 602 dynamisch miteinander gekoppelt werden, so daß ein neues Layer-2-Protokoll entsteht. Das neue Layer-2-Protokoll kann anschließend mit einer Layer-1-Schnittstelle 604 verknüpft werden. 27 shows a schematic block diagram of an IP forwarding layer 600 as well as layer 2 protocols 602 and physical Layer 1 interfaces 604 , The dynamic configuration of ports makes it possible, for example, to link PPP with modem, ISDN, T1, UT3, ATM DS3 and ATM OC3. Moreover, Layer 2 protocols can 602 be dynamically coupled together so that a new Layer 2 protocol is created. The new Layer 2 protocol can then interface with a Layer 1 interface 604 be linked.

Gemäß einer Ausführungsform der Erfindung ermöglicht die Portschnittstelle (Port InterFace, PIF) 122 (4) das dynamische Verknüpfen von Layer-2-Protokollen mit Layer-1-Protokollen. Wenn ein Medienport aktiv wird, erzeugt der Switch ein PIF-Objekt für den Port. Vorzugsweise werden PIFs von der GFI-Software 124 (4) erzeugt, die vom Medientreiber 118 ausgelöst wird. Das PIF-Objekt legt das für die aktuelle Sitzung zu verwendende Layer-2-Protokoll anhand des Verbindungstyps fest, und die GFI-Software verknüpft das Layer-2-Protokoll dynamisch mit der Layer-1-Schnittstelle des Medienports. Die Protokollverknüpfung wird für die Dauer der Sitzung aufrechterhalten.According to one embodiment of the invention, the port interface (Port InterFace, PIF) allows 122 ( 4 ) dynamically linking layer 2 protocols to layer 1 protocols. When a media port becomes active, the switch creates a PIF object for the port. Preferably, PIFs are from the GFI software 124 ( 4 ) generated by the media driver 118 is triggered. The PIF object sets the Layer 2 protocol to use for the current session by the connection type, and the GFI software dynamically links the Layer 2 protocol to the Media Port Layer 1 interface. Logging is maintained for the duration of the session.

28 zeigt ein schematisches Blockdiagramm aus Layer-1-, Layer-2- und Layer-3-Schnittstellen mit mehreren PIFs 122, je eine PIF pro Port. Wenn ein Port aktiviert wird, erzeugt der Medientreiber 118 vorzugsweise eine PIF-Struktur/ein PIF- Modul, das spezifische Medien- und Paketformatinformationen für den Port einschließlich Porttyp, Verkapselung, Statusinformation (z.B. aktiv oder inaktiv) sowie verschiedene Portnummern (z.B. physikalische Portadresse, Weiterleitungs-Portadresse und Backplane-Portadresse) speichert. Die PIF verfolgt außerdem den Status der PIF, meldet Änderungen an das FTAM, führt eine Statistik der Ports und speichert einen Zeiger zum gegenwärtig eingewählten Benutzer für Anwahlports. 28 shows a schematic block diagram of Layer 1, Layer 2 and Layer 3 interfaces with multiple PIFs 122 , one PIF per port. When a port is activated, the media driver generates 118 preferably a PIF structure / PIF module that stores specific media and packet format information for the port, including port type, encapsulation, status information (eg, active or inactive), and various port numbers (eg, physical port address, forwarding port address, and backplane port address). The PIF also tracks the status of the PIF, reports changes to the FTAM, maintains a statistics of the ports, and stores a pointer to the currently dialed in user for dial-up ports.

Gemäß einer Ausführungsform der Erfindung werden die PIF-Strukturen als zweidimensionale Arrays vorgehalten, bei denen die Controllernummer und die Portnummer als Index verwendet werden. Zum Auffinden einer bestimmten PIF eines Ports werden sowohl die Controllernummer als auch die Portnummer innerhalb dieses Controllers verwendet.According to one embodiment The invention relates to PIF structures held as two-dimensional arrays in which the controller number and the port number can be used as an index. To find one particular PIF of a port will be both the controller number and also the port number used within this controller.

Die PIFs für alle physikalischen Ports werden vorzugsweise bei der Inbetriebnahme einer Karte erzeugt. Die PIFs befinden sich anfänglich in einem inaktiven Zustand. Wenn die Ports aktiv werden, ändert sich der PIF-Status in einen aktiven Zustand. Für Einwahlports wird die PIF in einen aktiven Zustand versetzt, sobald sich ein Benutzer über diesen Port einwählt. Wenn der Anruf getrennt wird, wird der PIF-Status in einen inaktiven Zustand gebracht. Die PIF wird vorzugsweise nicht entfernt, weil in der PIF-Struktur auch die Portstatistik geführt wird und es nützlich ist, die Portstatistik auch nach dem Trennen eines Benutzers zur Verfügung zu haben.The PIFs for All physical ports are preferably at startup a card generated. The PIFs are initially in an inactive state. When the ports become active, changes the PIF status changes to an active state. For dial-in ports, the PIF put into an active state as soon as a user talks about it Port dials. When the call is disconnected, the PIF status becomes inactive State brought. The PIF is preferably not removed because in the PIF structure also the port statistics is kept and it is useful The port statistics are also available after disconnecting a user to have.

Eine Meldung "Port aktiv" wird immer dann von allen LAN-Karten an das SCM gesendet, wenn sich der Zustand eines Ports von einem inaktiven zu einem aktiven Status ändert. Die WAN-Karten senden die Meldung "Port aktiv" normalerweise nicht an das SCM. Die Meldung "Port aktiv" wird vorzugsweise von einem WAN-Port gesendet, wenn dieser Port dafür konfiguriert ist, die Routingprotokoll-Aktualisierungsmeldungen wie RIP- und OSPF-Pakete zu transportieren.A Message "Port active" is always then from all LAN cards sent to the SCM when the state of a port of a inactive to an active status changes. The WAN cards send the Normally, the message "Port active" does not work to the SCM. The message "Port active "is preferred sent from a WAN port if this port is configured for that is the routing protocol update messages such as RIP and To transport OSPF packets.

Eine Meldung "Port inaktiv" wird immer dann an alle Karten im Chassis gesendet, wenn sich der Zustand eines Ports von einem aktiven zu einem inaktiven Status ändert. Nach dem Empfang dieser Meldung entfernen die Karten diejenigen Einträge in der Weiterleitungstabelle und der ARP-Tabelle, die den Port als inaktiv angeben.A Message "Port inactive" is always then sent to all cards in the chassis when the condition of a Changes ports from an active to an inactive state. To Upon receipt of this message, the cards remove those entries in the card Forwarding table and the ARP table, which make the port inactive specify.

Das PIF-Modul im SCM ist außerdem für die Führung und Verwaltung der Liste redundanter Ports (Redundant Ports List, RPL) verantwortlich. Für jeden der physikalischen Ports kann der Benutzer einen anderen physikalischen Port als Backup-Port einrichten. Der Backup-Port ist vorzugsweise nicht Bestandteil irgendeines logischen Port-Identifiers (LPIs). Der Backup-Port wird verwendet, falls der primäre Port ausfällt. Alle Pakete werden normalerweise an den primären Port gesendet. Der Backup-Port wird in einem inaktiven Zustand gehalten. Pakete werden vom Backup-Port weder gesendet noch empfangen, wenn der primäre Port aktiv ist. Sollte der primäre Port ausfallen, gibt das PIF-Modul im SCM den Backup-Port frei, und fortan werden alle Pakete an den Backup-Port gesendet. Gemäß einer Ausführungsform der Erfindung wird der Backup-Port immer dann, wenn der primäre Port wieder verfügbar wird, wieder in den inaktiven Zustand gebracht, und alle Pakete werden wieder an den primären Port gesendet. Alternativ dazu nutzen die Pakete weiterhin den Backup-Port für den Rest der Sitzung und schalten nicht auf den primären Port um.The PIF module in the SCM is also for the guide and Management of the List of Redundant Ports (Redundant Ports List, RPL). For Each of the physical ports allows the user a different physical Set up the port as a backup port. The backup port is preferred not part of any logical port identifier (LPI). The backup port is used if the primary port fails. All Packets are usually sent to the primary port. The backup port is kept in an inactive state. Packages are from the backup port neither sent nor received when the primary port is active. Should the primary Port fails, the PIF module releases the backup port in the SCM, and from now on, all packets will be sent to the backup port. According to one embodiment The invention will use the backup port whenever the primary port again available will be put back in the inactive state, and all packages will be back to the primary Port sent. Alternatively, the packages continue to use the backup port for the rest the session and do not switch to the primary port.

In einer alternativen Ausführungsform der Erfindung wird die RPL in dezentraler Weise geführt. Die RPL wird vom SCM als Teil ihrer Initialisierung auf die einzelnen Karten verteilt, wenn die Karte in Betrieb genommen wird. Auf jeder der Karten wird der Backup-Port im inaktiven Zustand gehalten. Sollte der primäre Port ausfallen, wird an alle Karten eine RPL-Meldung "Port außer Betrieb " gesendet. Wenn die Karten die RPL-Meldung "Port außer Betrieb " empfangen, fragt jede Karte ihre RPL-Tabelle danach ab, ob einer ihrer Ports der Backup-Port ist. Wenn ja, dann bringt diese Karte den Port in einen aktiven Zustand und beginnt damit, auf diesem Port Verkehr zu bearbeiten. Außerdem entfernen alle Karten alle Einträge in der Weiterleitungstabelle und der ARP-Tabelle, die auf den primären Port verweisen. Von diesem Zeitpunkt an strömt der gesamte Verkehr zum Backup-Port. Wenn der primäre Port wieder verfügbar wird, wird eine RPL-Meldung "Port in Betrieb" an alle Karten gesendet. Diejenige Karte, auf der sich der Backup-Port befindet, versetzt den Port in einen inaktiven Zustand und sendet eine Meldung "Port außer Betrieb" für den Backup-Port an alle Karten. Die Meldung "Port außer Betrieb" veranlaßt alle Karten, die Einträge in der Weiterleitungstabelle und der ARP-Tabelle zu entfernen, die auf den Backup-Port verweisen. Von diesem Zeitpunkt an wird der primäre Port wieder aktiv. Die RPL-Tabelle wird auf allen Karten synchronisiert. Immer dann, wenn eine Änderung an der RPL-Tabelle vorgenommen wird, wird sie vom SCM auf alle Karten verteilt.In an alternative embodiment According to the invention, the RPL is guided in a decentralized manner. The RPL is used by the SCM as part of its initialization on each card distributed when the card is put into operation. On each of the Cards, the backup port is kept inactive. Should the primary Port fails, an RPL message "Port out of service" is sent to all cards. If the Cards receive the RPL message "Port out of service" asks Each card will dedicate its RPL table to whether one of its ports is the backup port. If so, this card puts the port into an active state and start working on this port traffic. Also remove all cards all entries in the routing table and the ARP table pointing to the primary port refer. From this point on, all traffic flows to Backup port. If the primary Port available again will be an RPL message "Port in operation "to all Sent cards. The card on which the backup port is located, puts the port in an inactive state and sends a "port out of service" message to the backup port to all cards. The message "Port except Operation "causes all Cards, the entries in the forwarding table and the ARP table to remove the refer to the backup port. From this point on, the primary Port active again. The RPL table is synchronized on all maps. Whenever a change is made on the RPL table, it is scanned by the SCM on all cards distributed.

Der IP-Weiterleiter 44 (4) ist per Schnittstelle mit dem PIF gekoppelt und sendet und empfängt Pakete an die bzw. von der PIF über den logischen Port-Identifier (LPI) 128. Ein logischer Port-Identifier (LPI) 128 kommuniziert mit der PIF 122 und beinhaltet die IP-Parameter, die das jeweilige physikalische Port betreffen. Die IP-Schicht ruft immer dann eine LPI-Funktion auf, wenn sie ein Paket übermitteln will. Die LPI-Sendefunktion identifiziert den richtigen physikalischen Port und übergibt das Paket an die PIF 122, um den medienspezifischen Layer-2-Verkapselungs-Header hinzuzufügen und ihn über den richtigen Port auszusenden.The IP forwarder 44 ( 4 ) is interfaced with the PIF and sends and receives packets to and from the PIF via the logical port identifier (LPI) 128 , A logical port identifier (LPI) 128 communicates with the PIF 122 and includes the IP parameters that pertain to each physical port. The IP layer invokes an LPI function whenever it wants to transmit a packet. The LPI send function identifies the correct physical port and passes the packet to the PIF 122 to add the media-specific Layer 2 encapsulation header and send it out via the correct port.

Nach dem Verarbeiten des anfänglichen Pakets werden die identifizierten Layer-2-Verkapselungs-Header vorzugsweise in einem IP-Cache-Eintrag gespeichert. Auf diese Weise kann der IP-Weiterleiter die PIF- und Layer-2-Funktionen bei den nachfolgenden Paketen umgehen, was den Overhead bei der Paketverarbeitung minimiert. Somit werden Layer-2-Verkapselungs-Header für alle nachfolgenden Pakete dem IP-Cache-Eintrag entnommen.To processing the initial one Packets are preferably the identified Layer 2 encapsulation headers stored in an IP cache entry. In this way, the IP forwarder, the PIF and Layer 2 functions in the following Bypass packets, which minimizes overhead in packet processing. Thus, Layer 2 encapsulation headers for all subsequent packets to the IP cache entry taken.

IX. GENERISCHE WEITERLEITUNGSSCHNITTSTELLEIX. GENERIC FORWARDING INTERFACE

Ein weiteres Merkmal des Mehrdienstnetzwerk-Switches aus 1 ist die Fähigkeit zur Bereitstellung einer einheitlichen Schnittstelle für die Weiterleitungsfunktionen zur Maskierung der Details für das Senden und Empfangen von Paketen über unterschiedliche Schnittstellentypen. Dies wird vorzugsweise über die generische Weiterleitungs-Schnittstelle (Generic Forwarding Interface, GFI) 122 (4) bewerkstelligt, die es Anwendungen (z.B. dem IP-Weiterleiter, PPP und anderen vom Switch bereitgestellten Funktionen) ermöglicht, Pakete in einem generischen Format zu senden und zu empfangen.Another feature of the multi-service network switch off 1 is the ability to provide a unified interface to the forwarding functions to mask the details for sending and receiving packets over different interface types. This is preferably done via the Generic Forwarding Interface (GFI). 122 ( 4 ), which allows applications (eg, the IP forwarder, PPP, and other functions provided by the switch) to send and receive packets in a generic format.

Gemäß einer Ausführungsform der Erfindung handhabt die GFI die gesamte interne Paketweiterleitung entweder zwischen Ports auf demselben FM 10 oder über den Bus zu anderen FMs 10 im Switch. Die GFI macht vorzugsweise Weiterleitungsfunktionen transparent, und zwar unabhängig davon, ob ein Paket zu einer entfernten oder lokalen Karte weitergeleitet wird. Überdies sind Weiterleitungsfunktionen unabhängig von den Eingangs- und Ausgangsports transparent, die für das Paket verwendet werden. So kann beispielsweise ein Eingangsport vom Typ "Frame Relay über ISDN" sein, während der zugehörige Ausgangsport auf eine Frame-Relay-Leitung geschaltet werden kann, ohne das IP-Weiterleitermodul 44 (4) zu durchlaufen.According to one embodiment of the invention, the GFI handles all internal packet routing either between ports on the same FM 10 or over the bus to other FMs 10 in the switch. The GFI preferably makes forwarding functions transparent, regardless of whether a packet is forwarded to a remote or local card. In addition, forwarding functions are transparent regardless of the input and output ports used for the packet. For example, an input port may be of the "frame relay over ISDN" type, while the associated output port may be switched to a frame relay line without the IP relay module 44 ( 4 ) to go through.

Die GFI 124 sorgt für Protokolltransparenz, indem der Switch, wie in 29 veranschaulicht, in Treiber 620 und Anwendungen 610 unterteilt wird. Die Anwendungen 610 sind zur Laufzeit vorzugsweise mit Treibern 620 verknüpft. Auf diese Weise können Anwendungen und Treiber dynamisch gekoppelt und entkoppelt werden, was für Flexibilität des Ports sorgt. Die dynamische Verknüpfung setzt außerdem Speicher- und Verarbeitungsressourcen frei, die für unbenutzte Protokolle nicht benötigt werden.The GFI 124 provides protocol transparency by allowing the switch, as in 29 Illustrates in drivers 620 and applications 610 is divided. The applications 610 are at runtime preferably with drivers 620 connected. In this way, applications and drivers can be dynamically coupled and decoupled, providing port flexibility. The dynamic link also frees up memory and processing resources that are not needed for unused logs.

Anwendungen und Treiber, die Pakete empfangen und weiterleiten möchten, registrieren verschiedene Funktionen bei der GFI, zu denen Empfangsfunktionen, Weiterleitungsfunktionen und/oder Rundabfragefunktionen gehören. Die Treiber 620 registrieren vorzugsweise ihre Weiterleitungsfunktionen zum Weiterleiten von Paketen an einen physikalischen Port. Wenn ein Paket an einen physikalischen Port weitergeleitet werden soll, ruft die GFI die Weiterleitungsfunktion auf, die vom Treiber des Ports registriert ist.Applications and drivers that want to receive and forward packets register various features of the GFI, including receive, forward, and / or poll. The drivers 620 preferably register their forwarding functions for forwarding packets to a physical port. When a packet is to be forwarded to a physical port, the GFI calls the forwarding function registered by the driver of the port.

Anwendungen 610 registrieren vorzugsweise ihre Empfangsfunktionen bei der GFI zum Empfangen und Verarbeiten ankommender Pakete. Empfängerfunktionen sind zur Bedienung verschiedener Pakettypen registriert, zu denen unter anderem Pakete zählen, die über Medienports empfangen wurden, ferner weitergeleitete Pakete und Pakete, die für bekannte interne Ports bestimmt sind. Eine Protokollverarbeitungs- oder Weiterleitungsfunktion wie PPP oder IP-Weiterleiter registriert sich typisch bei der GFI zum Empfangen und Verarbeiten von Paketen, die über die Medienports empfangen wurden. Weitergeleitete Pakete werden von Anwendungen verarbeitet, die Übersetzungs- und Verkapselungsfunktionen für einen bestimmten Ausgangsport ausführen. Empfängerfunktionen registrieren sich ebenfalls bei der GFI zum Handhaben von Paketen, die für bekannte interne Ports bestimmt sind, so z.B. ein Managementkanal, der zum Austauschen von externen Managementinformationen verwendet wird.applications 610 preferably register their receive functions with the GFI to receive and process incoming packets. Receiver functions are registered to service various types of packets, including, but not limited to, packets received via media ports, forwarded packets, and packets destined for known internal ports. A protocol processing or forwarding function such as PPP or IP forwarder typically registers with the GFI to receive and process packets received through the media ports. Forwarded packets are processed by applications that perform translation and encapsulation functions for a given output port. Receiver functions also register with the GFI for handling packets destined for known internal ports, such as a management channel used to exchange external management information.

Sowohl Anwendungen 610 als auch Treiber 620 können bei der GFI Abfragefunktionen zum periodischen Aufruf registrieren. Abfragefunktionen werden häufig verwendet, um die Funktion des Switches zu überprüfen. In einer bevorzugten Ausführungsform der Erfindung können zwei Abfragefrequenz-Ebenen spezifiziert werden, nämlich hoch und niedrig. Vorzugsweise nutzen Vordergrundfunktionen wie etwa die Paketverarbeitung die hohe Abfragefrequenz, während Hintergrundfunktionen wie etwa Timerprozesse die Abfrage mit niedriger Frequenz nutzen. In alternativen Ausführungsformen der Erfindung können mehrere Ebenen von Abfragefrequenzen verwendet werden.Both applications 610 as well as drivers 620 can register with the GFI query functions for periodic call. Query functions are often used to verify the function of the switch. In a preferred embodiment of the invention, two interrogation frequency levels can be specified, namely high and low. Preferably, foreground functions such as packet processing use the high polling frequency while background functions such as timer processes use the low frequency polling. In alternative embodiments of the invention, multiple levels of polling frequencies may be used.

Wenn ein Paket über einen Medienport beim System eintrifft, wird das Paket von einem oder mehreren Puffern (GFI-Puffern) im gemeinsam genutzten Speicher 24 empfangen (2). Der dem Medienport zugeordnete Treiber empfängt das Paket und übersetzt es mit GFI-Hilfsprogrammen in ein generisches Format. Der Treiber erzeugt außerdem einen GFI-Deskriptor, der das Paket definiert, und besitzt Zeiger auf Puffer, die zum Paket gehören. Anschließend wird das Paket an das System zur Verarbeitung durch die Anwendungen übergeben.When a package arrives at the system through a media port, the package will become one or more buffers (GFI buffers) in shared memory 24 receive ( 2 ). The driver associated with the media port receives the package and translates it into a generic format using GFI utilities. The driver also creates a GFI descriptor that defines the packet and has pointers to buffers that belong to the packet. The package is then transferred to the system for processing by the applications.

Wenn ein Paket an einen physikalischen Port gesendet werden soll, ruft die GFI die Weiterleitungsfunktion des entsprechenden Treibers auf, um das Paket zu senden. Die Weiterleitungsfunktion des Treibers ist vorzugsweise für das Übersetzen des generischen Pakets in das treiberspezifische Format und das Aussenden des Pakets über den geforderten Port verantwortlich.If a packet is to be sent to a physical port calls the GFI has the forwarding function of the corresponding driver, to send the package. The forwarding function of the driver is preferably for the translation the generic package into the driver-specific format and the Sending the package over responsible for the requested port.

Alle Pakete, die in das System gelangen, werden zur Protokolltransparenz vorzugsweise in ein generisches Paketformat (GPF) konvertiert. 30 zeigt ein schematisches Blockdiagramm eines GPF 700 gemäß einer Ausführungsform der Erfindung. Das GPF 700 beinhaltet vorzugsweise eine Liste von gemeinsam genutzten Speicherpuffern und einen Deskriptor, der auf die Puffer zeigt. Der Deskriptor ist in einen allgemeinen Paketdeskriptor (General Packet Descriptor, GPD) 702 und einen oder mehrere Pufferdeskriptoren 704 unterteilt. Der GPD beinhaltet vorzugsweise vier Worte. In einer Ausführungsform beinhaltet das erste Wort des GPD eine Byte-Gesamtzahl 706 für das Paket sowie verschiedene Routing-Flags 708. Die Routing-Flags beinhalten Flags für Fragmentierung, Multicast, geschaltet und überwacht. In dieser Ausführungsform ist die Byte-Gesamtzahl die Länge eines Pakets.All packets entering the system are preferably converted to protocol transparency in a generic packet format (GPF). 30 shows a schematic block diagram of a GPF 700 according to an embodiment of the invention. The GPF 700 preferably includes a list of shared memory buffers and a descriptor pointing to the buffers. The descriptor is in a general packet descriptor (GPD) 702 and one or more buffer descriptors 704 divided. The GPD preferably contains four words. In one embodiment, the first word of the GPD includes a byte total 706 for the package as well as different routing flags 708 , The routing flags include flags for fragmentation, multicast, switched and monitored. In this embodiment, the total byte count is the length of a packet.

Das zweite Wort definiert einen QoS-Wert 710 und eine VPN-ID 712. Die VPN-ID identifiziert ein dem Paket zugeordnetes virtuelles Privatnetz. Der QoS-Wert identifiziert die Prioritätsklasse zur Behandlung des Pakets. In einer bevorzugten Ausführungsform der Erfindung stellt die GFI acht QoS-Klassen zur Verfügung. Nachdem einem Paket ein QoS-Wert zugeordnet wurde, gewährleistet die GFI, daß das Paket durch das gesamte System hindurch gemäß seinem QoS-Wert bedient wird. Außerdem stellt die GFI für die Pakete gemäß ihren QoS-Werten Ressourcen wie die CPU, die Backplane, den Kommunikationskanal und Systempuffer bereit.The second word defines a QoS value 710 and a VPN ID 712 , The VPN ID identifies a virtual private network associated with the packet. The QoS value identifies the priority class for handling the packet. In a preferred embodiment of the invention, the GFI provides eight QoS classes. After a packet has been assigned a QoS value, the GFI ensures that the packet is serviced throughout the system according to its QoS value. In addition, for the packets, the GFI provides resources such as the CPU, backplane, communication channel, and system buffers according to their QoS values.

Das dritte Wort spezifiziert eine Ausgangsportinformation 714. Die Ausgangsportinformation wird vorzugsweise eingetragen, nachdem die Routinginformation des Pakets durch einen Vergleich im IP-Weiterleitermodul 44 ermittelt wurde.The third word specifies output port information 714 , The output port information is preferably entered after the routing information of the packet by a comparison in the IP router module 44 was determined.

Das vierte Wort identifiziert einen Eingangsport 716, der das Paket empfängt. Das vierte Wort beinhaltet außerdem eine Referenzzahl zum Multicasting. Die Referenzzahl wird von Treibern verwendet, um ein Paket zu verfolgen, das an mehrere Ports übertragen wird.The fourth word identifies an input port 716 who receives the package. The fourth word also includes a reference number for multicasting. The reference number is used by drivers to keep track of a packet being transmitted to multiple ports.

Der Puffer-Deskriptor beinhaltet vorzugsweise ein Puffer-Steuerwort und einen Zeiger zu einem Systempuffer 717. Das Puffer-Steuerwort beinhaltet Steuerinformationen 718 sowie die Zahl der Datenbytes 720 im Puffer. Die Steuerinformationen beinhalten Steuer-Flags, die den Puffertyp definieren.The buffer descriptor preferably includes a buffer control word and a pointer to a system buffer 717 , The buffer control word includes control information 718 as well as the number of data bytes 720 in the buffer. The control information includes control flags that define the buffer type.

Ein Port-Adressierungsschema, das für die Eingangsportinformation 716 und die Ausgangsportinformation 714 verwendet wird, ermöglicht das Weiterleiten von Paketen an einen beliebigen Ort im Switch. Das Port-Adressierungsschema ist vorzugsweise hierarchisch aufgebaut und basiert auf Chassis, Karten, Controllern und Ports. Darüber hinaus sind Ports in fünf Kategorien eingeteilt: Lokale Ports, interne Multicast-Ports, interne Unicast-Ports, externe Multicast-Ports und Remote-Ports. Gemäß einer Ausführungsform der Erfindung stellt die GFI zwei verschiedene Typen von Port-Adressierungsschemen zur Verfügung, nämlich eine Weiterleitungs-Portadresse (Forwarding Port Address, FPA) und eine physikalische Portadresse (PPA). 31 zeigt ein Entwurfsschema einer FPA gemäß einer Ausführungsform der Erfindung. FPA wird bevorzugt verwendet zur Weiterleitung von Paketen im Switch. 32 zeigt ein Entwurfsschema einer PPA gemäß einer Ausführungsform der Erfindung. Die PPA wird vorzugsweise für externe Verwendung, für administrative Zwecke und zum Konfigurieren von Ports innerhalb des Switches verwendet.A port addressing scheme used for the input port information 716 and the output port information 714 allows forwarding packets to any location in the switch. The port addressing scheme is preferably hierarchical and based on chassis, cards, controllers, and ports. In addition, ports are divided into five categories: local ports, internal multicast ports, internal unicast ports, external multicast ports, and remote ports. According to one embodiment of the invention, the GFI provides two different types of port addressing schemes, namely a forwarding port address (FPA) and a physical port address (PPA). 31 shows a schematic diagram of an FPA according to an embodiment of the invention. FPA is preferred for routing packets in the switch. 32 shows a schematic diagram of a PPA according to an embodiment of the invention. The PPA is preferably used for external use, for administrative purposes, and for configuring ports within the switch.

Die GFI stellt vorzugsweise zwei FPA-Typen zur Verfügung, nämlich eine lokale FPA und eine Backplane-FPA. Die lokale FPA wird verwendet, um Pakete an lokale Medientreiber zu leiten. Die Backplane-FPA wird verwendet, um Pakete an entfernte Ports zu leiten.The GFI preferably provides two FPA types, namely a local FPA and a Backplane FPA. The local FPA is used to send packets to local To manage media drivers. The backplane FPA is used to package to forward to remote ports.

Das Weiterleiten von Paketen basiert sowohl bei lokalen FPAs als auch bei Backplane-FPAs auf der Controllernummer. Jede Komponente auf der Karte verfügt vorzugsweise über eine Controllernummer 601. So ist beispielsweise ein Ethernet-Controller für eine Ethernet-Komponente und ein ISDN-Controller für eine ISDN-Komponente vorhanden. Die Controllernummer ist Bestandteil der FPA. Die Controllernummer gestattet es der GFI, das Paket an den zugehörigen Treiber zu schicken. Gemäß einer Ausführungsform der Erfindung hat die Controllernummer nur lokale Bedeutung. Wenn auf einer Karte vier Treiber vorhanden sind, sind den vier Treibern vier Controllernummern zugeordnet, so daß die GFI Pakete an sie schicken kann.Forwarding of packets is based on the controller number for both local FPAs and backplane FPAs. Each component on the card preferably has a controller number 601 , For example, there is an Ethernet controller for an Ethernet component and an ISDN controller for an ISDN component. The controller number is part of the FPA. The controller number allows the GFI to send the packet to its driver. According to one embodiment of the invention, the controller number has only local meaning. If there are four drivers on a card, four controller numbers are assigned to the four drivers so GFI can send packets to them.

Es gibt außerdem einen Controller für den Backplane-Treiber. Der Backplane-Treiber verwendet vorzugsweise die Controllernummer null. Die Backplane ist ein weiterer Treiber, der unter der GFI läuft. Backplane-Pakete verlassen den Switch nicht. Sie gehen zu einer anderen Karte im Switch. Alle Pakete, die zu anderen Karten innerhalb des Switches weitergeleitet werden sollen, werden an den Backplane-Treiber gesendet. Wenn ein Paket an eine andere Karte übermittelt werden muß, wird die Controllernummer geändert, was es ermöglicht, das Paket an einen entfernten Port zu senden. Das Schema beinhaltet Adreßbereiche, die den Porttyp bestimmen.It there as well a controller for the backplane driver. The backplane driver preferably uses the controller number zero. The backplane is another driver that comes under the GFI running. Backplane packets do not leave the switch. They go to one another card in the switch. All packages to other cards within the switch should be forwarded to the backplane driver Posted. If a package has to be sent to another card, it will changed the controller number, what makes it possible send the packet to a remote port. The scheme includes address areas which determine the port type.

Die Backplane beinhaltet ebenfalls einen Adreßbereich. Beim Senden eines Pakets von einer Karte zu einer anderen Karte, wie es etwa geschieht, wenn ein Paket, das von einem Modem in den Switch gelangt und per Frame Relay zu einer anderen Karte übertragen wird, wird das Paket zur Backplane umgeleitet, indem die Controllernummer zu null geändert wird. Pakete, die an entfernte Ports geleitet werden, werden zum Backplane-Treiber geleitet. Wenn ein Paket von der anderen Karte empfangen wird, wird die Controlleradresse auf Frame Relay umgeschaltet.The Backplane also includes an address area. When sending a Package from one card to another card, as it happens, if a packet that gets into the switch from a modem and via Frame Relay is transferred to another card, the package becomes redirected to the backplane by changing the controller number to zero. Packets directed to remote ports become the backplane driver directed. If a package is received from the other card, will the controller address switched to frame relay.

Wenn ein Treiber ein Paket von einem Port empfängt, erzeugt er einen GPD 702 für das Paket. Dabei erzeugt der Treiber vorzugsweise die Eingangsportinformation 716, wie 33 veranschaulicht. Die Eingangsportinformation 716 beinhaltet acht Flag-Bits und 24 Adreßbits. Die Flag-Bits spezifizieren die Quellkontrollinformation, die es der empfangenden Anwendung gestattet, die richtigen Routing- und Verkapselungsfunktionen anzuwenden.When a driver receives a packet from a port, it generates a GPD 702 for the package. there the driver preferably generates the input port information 716 , as 33 illustrated. The input port information 716 includes eight flag bits and 24 address bits. The flag bits specify the source control information that allows the receiving application to apply the proper routing and encapsulation functions.

Die Ausgangsportinformation 714 wird vorzugsweise aufgebaut, nachdem die Routinginformation des Pakets vom IP-Weiterleitermodul 44 empfangen wurde. 34 zeigt ein Entwurfsschema der Ausgangsportinformation gemäß einer Ausführungsform der Erfindung. Die Ausgangsportinformation 714 beinhaltet acht Flag-Bits und 24 Adreßbits. Das aus den acht Flag-Bits bestehende Feld wird als Kontrollinformation verwendet, die von der Anwendung an die Treiber übergeben wird, die für das Übermitteln des Pakets verantwortlich sind.The output port information 714 is preferably established after the routing information of the packet from the IP router module 44 was received. 34 FIG. 12 is a schematic diagram of the output port information according to an embodiment of the invention. FIG. The output port information 714 includes eight flag bits and 24 address bits. The field consisting of the eight flag bits is used as control information which is passed by the application to the drivers responsible for transmitting the packet.

Die Ausgangsportinformation ist vorzugsweise so aufgebaut, daß Anwendungen ein Paket an eine lokale Portadresse (LPA), eine bekannte interne Multicast-Adresse (WKIM), eine bekannte interne Unicast-Adresse (WKIU), eine bekannte externe Multicast-Adresse (WKEM), eine dynamische externe Multicast-Adresse (DEM) und eine Adresse eines entfernten Ports (RPA) senden können.The Output port information is preferably constructed such that applications a packet to a local port address (LPA), a known internal Multicast Address (WKIM), a known internal unicast address (WKIU), a known external multicast address (WKEM), a dynamic external multicast address (DEM) and an address of a remote port (RPA).

Wenn ein Paket an einen lokalen Port (also lokal auf der Karte) weitergeleitet wird, spezifiziert der Ausgangsport die physikalische Portadresse, wie in 32 veranschaulicht. Lokale Ports, die für die anderen Karten sichtbar sind, sind Backplane-Treiber-Ports zugeordnet. Die Backplane-Treiber-Ports werden verwendet, um Pakete an entfernte Ports zu leiten. Der Backplane-Treiber bewerkstelligt eine Zuordnung von Portadressen in den ankommenden Paketen zu lokalen Portadressen.When a packet is forwarded to a local port (that is, locally on the card), the output port specifies the physical port address, as in 32 illustrated. Local ports that are visible to the other cards are associated with backplane driver ports. The backplane driver ports are used to route packets to remote ports. The backplane driver accomplishes an assignment of port addresses in the incoming packets to local port addresses.

WKIM-Adressen stellen interne Kommunikationspfade zwischen Anwendungen auf verschiedenen Modulen bereit. Wenn beispielsweise eine Anwendung, die auf dem ISDN-Modul läuft, eine Meldung an den Management-IP-Stack senden will, der auf dem SCM läuft, verwendet sie die entsprechende WKIM-Adresse, die dem IP-Stack des SCMs zugeordnet ist. Falls es mehrere SCMs im System gibt, wird die Meldung an den Management-IP-Stack aller SCMs gesendet. Wenn der Benutzer einen bekannten internen Port innerhalb einer Karte verwenden möchte, ist die WKIU zu verwenden.WKIM addresses provide internal communication paths between applications on different modules ready. For example, if an application running on the ISDN module running, wants to send a message to the management IP stack on the SCM is running, it uses the appropriate WKIM address that matches the IP stack of the SCMs is assigned. If there are several SCMs in the system, then the message to the management IP stack all SCMs sent. If the user has a known internal If you want to use port within a map, you have to use the WKIU.

Eine WKEM wird zum Gruppieren mehrerer externer Ports verwendet. Beispielsweise wird eine WKEM für eine Anwendung wie z.B. OSPF eingerichtet, die Rundsenden an eine Liste von Ports erfordert. Über eine DEM-Fähigkeit kann der Benutzer Multicast-Gruppen im laufenden Betrieb einrichten und wieder auflösen.A WKEM is used to group multiple external ports. For example becomes a WKEM for an application such as OSPF set up the broadcast to one List of ports required. about a DEM capability the user can set up multicast groups on the fly and dissolve again.

Wenn eine Anwendung auf einer Karte ein Paket an einen externen Port auf einer anderen Karte aussenden möchte, verwendet sie die RPA, die diesem Port zugewiesen ist. Bevor ein entfernter Port adressiert werden kann, erfolgt eine Zuordnung der RPA zu einer physikalischen Portadresse. Jede Karte im System ist für die Zuordnung ihrer eigenen Ports zu RPAs verantwortlich. In der bevorzugten Ausführungsform der Erfindung führen Hilfsprogramme in einer Headerdatei die erforderliche Zuordnung aus.If an application on a card a package to an external port on a different card, she uses the RPA, assigned to this port. Before a remote port is addressed If an assignment of the RPA to a physical port address occurs. Every card in the system is for the assignment of their own ports to RPAs responsible. In the preferred embodiment lead the invention Helper programs in a header file the required mapping out.

Mit Ausnahme der lokalen Portadresse sind alle obigen Kategorien von Adressen vorzugsweise virtuelle Adressen. Eine virtuelle Portadresse ist einer oder mehreren physikalischen Portadressen zugeordnet. Die Zuordnungen der virtuellen Portadressen gemäß einer Ausführungsform der Erfindung sind in 35 veranschaulicht. Vorzugsweise ist die Controllernummer 0 den virtuellen Adressen zugeordnet. In einer bevorzugten Ausführungsform der Erfindung lauten die Backplane-Adreßbereiche wie folgt: With the exception of the local port address, all of the above categories of addresses are preferably virtual addresses. A virtual port address is assigned to one or more physical port addresses. The assignments of the virtual port addresses according to an embodiment of the invention are in 35 illustrated. Preferably, the controller number 0 is assigned to the virtual addresses. In a preferred embodiment of the invention, the backplane address ranges are as follows:

Figure 00660001
Figure 00660001

Das bekannte interne Multicast wird verwendet, um Pakete an die internen Anwendungen zu leiten, die auf mehreren Karten laufen. Beispiele hierfür sind OSPF, RIP und das Anrufprotokoll (call log). Das bekannte externe Multicast wird verwendet, um Pakete an eine Gruppe von Ports für eine bekannte Anwendung zu leiten. Beispiele hierfür sind Ports, die von Routingprotokollen wie OSPF, RIP und BGP4 verwendet werden. Dynamisches Multicast wird von Anwendungsprotokollen verwendet, die das dynamische Generieren und Löschen von Multicast-Gruppen erfordern. Bei einem dynamischen Multicast können Gruppenmitglieder dynamisch hinzugefügt und gelöscht werden. IP-Multicast ist ein Beispiel für dynamisches Multicast.The Known internal multicast is used to send packets to the internal ones Run applications that run on multiple maps. Examples therefor are OSPF, RIP and call log. The well-known external Multicast is used to forward packets to a group of ports for a known one To direct application. Examples include ports that use routing protocols as OSPF, RIP and BGP4 are used. Dynamic multicast becomes used by application logs that generate dynamic and delete require multicast groups. For a dynamic multicast can Group members are dynamically added and deleted. IP multicast is an example for dynamic multicast.

Eine weitere von der GFI bereitgestellte Funktion ist verteiltes Multicasting. Um ein Paket an eine Multicast-Gruppe zu senden, wird nur ein Paket erzeugt. Wenn das Paket an eine Multicast-Gruppe gesendet wird, wird das Paket zur Backplane gesendet. Anschließend wird das Paket zur Multicast-Gruppe weiterbefördert. Wenn die Empfänger das Paket erhalten, wird dieses in der Empfängerkarte zu den richtigen Medienports weiterbefördert, ohne daß es kopiert zu werden braucht.A another function provided by the GFI is distributed multicasting. To send a packet to a multicast group will only be one packet generated. When the packet is sent to a multicast group, it will sent the package to the backplane. Then the package becomes the multicast group conveyed. If the recipients receive the package, this is in the receiver card to the right one Media ports forwarded, without it needs to be copied.

Die GFI sorgt ferner für Transparenz in der Hardwarekonfiguration. So sind beispielsweise die Anzahl der CPUs und die DMA-Fähigkeit für die Anwendungen transparent. Die Speicheranordnung zwischen Plattformen kann von Karte zu Karte vollständig unterschiedlich sein. Die GFI macht sie für Anwendungen transparent. Daher brauchen sich Anwendungen nicht um Treiber und Speicher zu kümmern. Die genauen Eigenschaften einer Karte werden zur Laufzeit festgelegt. Die GFI verlagert die gesamten Datenstrukturen anhand der GFI-Kunfiguration an die richtigen Positionen. Wenn die GFI aktiviert wird, ruft sie eine generische Plattformfunktion zum Initialisieren der Plattform auf. Die generische Plattformfunktion übernimmt die Parameter für eine Plattform. Die Plattformfunktion stellt fest, um welche Art Karte es sich handelt und welche Art von Speicher sie darstellt und richtet anschließend entsprechende Datenstrukturen und Speicher ein. Parameter, die von der Funktion übergeben werden, legen die Konfiguration des gemeinsamen Speichers und die Puffergröße fest. Beispielsweise kann ein Parameter für eine Modempuffergröße von 255 kB an die GFI zurückgegeben werden. Für jede Karte gibt es eine Plattformfunktion. Somit ist derselbe Code auf unterschiedlichen Karten lauffähig.The GFI also takes care of Transparency in the hardware configuration. Such are, for example the number of CPUs and the DMA capability for the applications are transparent. The storage arrangement between platforms can vary from card to card Completely be different. The GFI makes them transparent for applications. Therefore, applications do not need to be drivers and memory too To take care of. The exact properties of a map are set at runtime. The GFI relocates all data structures based on the GFI configuration to the right positions. When the GFI is activated, it calls a generic platform feature to initialize the platform on. The generic platform function inherits the parameters for a platform. The platform feature determines what type of map it is and what kind of memory it represents and then sets up appropriate Data structures and memory. Parameters passed by the function be, set the shared memory configuration and the Buffer size fixed. For example, a parameter for a modem buffer size of 255 kB be returned to GFI. For every Card there is a platform function. Thus, the same code is on different cards executable.

Die GFI-Software ist so ausgelegt, daß sie auf unterschiedlichen Hardwareplattformen lauffähig ist. So ist die GFI beispielsweise auf allen Personalmodulen wie auch auf allen generischen Hardwaremodulen (d.h. dem High-Speed Generic Module, dem Low-Speed Generic Module usw.) lauffähig. Nachdem ein auf der GFI-Schnittstelle basierender Treiber implementiert wurde, kann er ohne jede Modifikation von Plattform zu Plattform verlagert werden. Darüber hinaus macht die GFI die CPU-Konfiguration des Systems (d.h. eine CPU oder zwei CPUs) für die Anwendungen und Treiber transparent. Beim Übergang von einer Einzel-CPU-Konfiguration zu einer Konfiguration mit mehreren CPUs und umgekehrt sind keine Änderungen an den Treibern und Anwendungen erforderlich.The GFI software is designed to work on different Hardware platforms executable is. For example, the GFI is on all staff modules like also on all generic hardware modules (i.e., the high-speed Generic Module, the Low-Speed Generic Module, etc.). After this implemented a driver based on the GFI interface he can, without any modification from platform to platform be relocated. About that In addition, the GFI makes the system's CPU configuration (i.e. CPU or two CPUs) for the applications and drivers transparent. When transitioning from a single-CPU configuration to a configuration with multiple CPUs and vice versa are no changes required at the drivers and applications.

Beim Verarbeiten von Paketen auf einer Plattform mit einer einzelnen CPU geht die GFI eine Empfangswarteschlange durch und kontrolliert den Code, der im Paket-Deskriptor festgelegt ist. Die GFI prüft ferner, ob eine Anwendung zum Empfangen des Pakets registriert ist. Die Anwendungen registrieren sich beim Initialisieren bei der GFI. Wenn eine Anwendung zum Empfangen des Pakets registriert ist, ruft die GFI die registrierte Anwendung auf und übergibt den Paket-Deskriptor an die Anwendung.When processing packets on a single CPU platform, the GFI goes through a receive queue and controls the code specified in the packet descriptor. The GFI checks fer whether an application is registered to receive the package. The applications register when initializing at the GFI. When an application is registered to receive the package, the GFI calls the registered application and passes the package descriptor to the application.

Auf einer Plattform mit mehreren CPUs befindet sich eine Warteschlangen-CPU und eine Anwendungs-CPU. Die Warteschlangen-CPU bewerkstelligt die Organisation von Warteschlangen, während die Anwendungs-CPU die Verarbeitung übernimmt. Ein Makro übergibt das Paket anhand der QoS-Klasse, die im Paket-Deskriptor festgelegt ist, an eine QoS-Warteschlange, die von der Anwendungs-CPU abzuarbeiten ist. Der GFI-Code macht die Anzahl der CPUs konfigurationstransparent. Ob die GFI auf einer CPU oder auf zwei CPUs läuft, macht für den Treiber, der die GFI-Empfangsfunktion aufruft, keinen Unterschied. Die GFI übergibt ein Paket an eine Warteschlange, wenn sie auf einer Plattform mit zwei CPUs läuft, oder sie ruft die Funktion auf einer Plattform mit einer einzelnen CPU direkt auf.On In a multi-CPU platform, there is a queue CPU and an application CPU. The queuing CPU accomplishes the Organization of queues while the application CPU the Processing takes over. A macro hands over the package based on the QoS class specified in the package descriptor is to a QoS queue, which is to be processed by the application CPU. The GFI code does the number of CPUs is configuration-transparent. Whether the GFI on one CPU or running on two CPUs, makes for the driver that has the GFI receive function calls, no difference. The GFI passes a packet to a queue, if it is running on a platform with two CPUs, or it calls the function a platform with a single CPU directly on.

Wenn ein Paket an eine Anwendung übergeben wird, kann die Anwendung (1) das Paket weiterleiten, (2) das Paket auslassen oder (3) das Paket halten. Wird die Anwendung aufgerufen, so liefert sie einen dieser drei Codes an die GFI.If Passing a package to an application the application (1) can forward the packet, (2) the packet omit or (3) keep the package. If the application is called so she delivers one of these three codes to the GFI.

Eine Anwendung ist das IP-Weiterleitermodul 44, der das IP-Paket erhält und Weiterleitungsentscheidungen bezüglich des Pakets trifft. Nachdem die Weiterleitungsentscheidung getroffen wurde, legt das IP-Weiterleitermodul die GFI-Zieladresse im Paket-Deskriptor fest und gibt einen Weiterleitungscode zurück. Wenn das IP-Weiterleitermodul feststellt, daß das Paket nicht in Ordnung ist oder nicht verarbeitet werden kann, liefert es an die GFI einen Auslassungscode, welcher meldet, daß das Paket auszulassen ist. Wenn das IP-Weiterleitermodul feststellt, daß das Paket gehalten werden soll, überträgt das Modul das Paket später, weil die Routinginformation noch nicht ermittelt wurde.One application is the IP redirector module 44 who receives the IP packet and makes forwarding decisions regarding the packet. After the forwarding decision is made, the IP router module sets the GFI destination address in the packet descriptor and returns a forwarding code. If the IP router detects that the packet is out of order or can not be processed, it provides the GFI with an ellipse code that indicates that the packet should be skipped. If the IP forwarder module determines that the packet is to be held, the module later transfers the packet because the routing information has not yet been determined.

Wenn der Weiterleitungscode zurückgegeben wird und die GFI in einer Betriebsumgebung mit zwei CPUs läuft, übergibt die GFI das Paket an die Warteschlangen-CPU. Läuft die GFI dagegen in einer Betriebsumgebung mit einer CPU, so ruft die GFI die Sendefunktion für die GFI direkt auf. Die Sendefunktion entscheidet in Abhängigkeit davon, an welchen Treiber dieses Paket zu gehen hat und richtet das Paket zum Aussenden an die richtige Sendefunktion.If the forwarding code returned and running the GFI in an operating environment with two CPUs passes the GFI sends the packet to the queuing CPU. In contrast, the GFI runs in one Operating environment with a CPU, the GFI calls the send function for the GFI directly on. The transmission function decides in dependence of which driver this package has to go to and directs the package to send to the right send function.

Wenn die GFI auf einer Plattform mit zwei CPUs läuft, wird automatisch ein Satz von Warteschlangen eingerichtet, nämlich Empfangs- und Weiterleitungswarteschlangen. In einer Ausführungsform der Erfindung sind vier Empfangswarteschlangen und vier Weiterleitungswarteschlangen vorhanden. Die einzelnen Warteschlange werden verwendet, um zwischen unterschiedlichen QoS-Klassen zu unterscheiden. Die GFI entnimmt das Paket aus der Warteschlange, verarbeitet es anhand der QoS, ruft anschließend die Sendefunktion auf und stellt das Paket schließlich für die richtige Treiber-Sendefunktion bereit. Welche Treiber-Sendefunktion aufgerufen wird, hängt von der Weiterleitungs-Portadresse im Paket-Deskriptor ab. Die Weiterleitungs-Portadresse verfügt über eine Controllernummer, die wiederum den Treiber festlegt, der das Paket empfangen soll.If The GFI running on a platform with two CPUs automatically becomes one set of queues, namely receive and forward queues. In one embodiment of the invention are four receive queues and four forward queues available. The single queue is used to switch between to differentiate between different QoS classes. The GFI takes off the packet from the queue, processes it by QoS, then call the send function on and finally puts the package for the right one Driver send function ready. Which driver send function is called will hang from the forwarding port address in the packet descriptor. The forwarding port address has one Controller number, which in turn sets the driver of the package should receive.

In einer alternativen Ausführungsform der Erfindung unterstützt die GFI acht Empfangswarteschlangen (Receiving Queues, RQs) und acht Weiterleitungswarteschlangen (Forwarding Queues, FQs). 36 zeigt ein Entwurfsschema der Empfangswarteschlangen und Weiterleitungswarteschlangen gemäß einer Ausführungsform der Erfindung. Wenn der Treiber ein Paket empfängt, verwendet er den dem Paket zugewiesenen QoS-Wert, um es in eine der acht RQs einzuordnen. Wenn eine Anwendung in ähnlicher Weise ein Paket weiterleitet, verwendet sie den dem Paket zugewiesenen QoS-Wert, um es in eine der acht FQs einzuordnen.In an alternative embodiment of the invention, the GFI supports eight receiving queues (RQs) and eight forwarding queues (FQs). 36 FIG. 12 shows a layout scheme of the receive and forward queues according to one embodiment of the invention. FIG. When the driver receives a packet, it uses the QoS value assigned to the packet to place it in one of the eight RQs. Similarly, when an application forwards a packet, it uses the QoS value assigned to the packet to place it in one of the eight FQs.

Das oben beschriebene Warteschlangenschema wird vorzugsweise nur für die Konfiguration mit zwei CPUs verwendet. Wenn die GFI in einer Konfiguration mit nur einer CPU läuft, werden die Weiterleitungs- und Empfangswarteschlangen nicht erzeugt oder verwendet. Die GFI macht dies für ihre Benutzer transparent.The The queue scheme described above is preferably for configuration only used with two CPUs. If the GFI in a configuration with only one CPU is running, the forwarding and receiving queues are not generated or used. The GFI makes this transparent to its users.

Die GFI stellt ferner eine prozessorübergreifende Kommunikation (Inter-Processor Communication, IPC) bereit. Unter Verwendung der IPC-Fähigkeit können Anwendungen, die auf unterschiedlichen Prozessoren auf derselben Karte laufen, untereinander Meldungen austauschen. Um Meldungen per IPC zu empfangen, registriert sich eine Anwendung bei der IPC mit Hilfe der in gfi-ipc.h enthaltenen Funktionsaufrufe. Die IPC bietet zwei Betriebsarten, nämlich den synchronen und den asynchronen Betrieb. Bei Verwendung des synchronen Betriebs kann eine Anwendung eine Meldung an einen Client senden, der auf einer anderen CPU läuft, und auf die Antwort warten. Die IPC stellt den Mechanismus bereit, nach dem die antwortende Stelle eine Meldung an die anfragende Stelle sendet, wenn die synchrone Betriebsart verwendet wird. Wenn eine Anwendung keine explizite Bestätigung einer Meldung benötigt, verwendet sie die asynchrone Betriebsart. In diesem Fall ordnet die IPC die Meldung in eine Warteschlange ein und kehrt unmittelbar zur Anwendung zurück.The GFI also provides inter-processor communication (IPC). Using IPC capability, applications running on different processors on the same card can exchange messages with each other. To receive messages via IPC, an application registers with the IPC using the function calls contained in gfi-ipc.h. The IPC offers two modes of operation, namely synchronous and asynchronous operation. When using synchronous operation, an application can send a message to a client running on a different CPU and wait for the response. The IPC provides the mechanism by which the responding party sends a message to the requestor when the synchronous mode is used. If an application does not require an explicit acknowledgment of a message, it uses the asynchronous mode. In this Case, the IPC queues the message and returns immediately to the application.

Obwohl diese Erfindung anhand bestimmter spezifischer Ausführungsformen beschrieben wurde, werden für den Fachmann zahlreiche zusätzliche Modifikationen und Varianten offensichtlich sein. Es sei deshalb darauf hingewiesen, daß die vorliegende Erfindung auch auf jede andere als die konkret beschriebene Weise angewandt werden kann. Somit sollte die vorliegende Ausführungsform der Erfindung in jeder Hinsicht als illustrativ und nicht einschränkend betrachtet werden, und der Geltungsbereich der Erfindung ergibt sich aus den beigefügten Ansprüchen und ihren Äquivalenten.Even though this invention based on certain specific embodiments has been described for the expert numerous additional Modifications and variants are obvious. It is therefore noted that the present invention in any other than the concrete manner described can be applied. Thus, the present embodiment should The invention is considered in all respects as illustrative and not restrictive and the scope of the invention will become apparent from the attached claims and their equivalents.

Claims (9)

Daten-Switch, beinhaltend: Mittel zum Empfangen einer Verbindungsanforderung, Mittel zum Identifizieren eines Protokolls, welches der Verbindungsanforderung zugeordnet ist, Mittel zum dynamischen Verknüpfen des identifizierten Protokolls mit einem Port, wobei das dynamische Verknüpfen dem Port erlaubt, während einer ersten Kommunikationssitzung Pakete nach einem ersten Protokoll zu senden und während einer zweiten Kommunikationssitzung Pakete nach einem zweiten Protokoll zu senden, ohne neu initialisieren zu müssen, und Mittel zum Formatieren des Pakets nach dem identifizierten Protokoll, wobei das identifizierte Protokoll, sowohl als erstes Protokoll als auch als zweites Protokoll, ein Layer-2-Protokoll ist.Data Switch, including: Means for receiving a connection request, Means for identifying a Protocol associated with the connection request, medium for dynamic linking of the identified protocol with a port, where the dynamic Link allowed the port while a first communication session packets after a first protocol too send and while a second communication session packets according to a second protocol to send without reinitializing, and Means for formatting the package according to the identified protocol, the identified Protocol, both as a first protocol and as a second protocol, is a Layer 2 protocol. Daten-Switch nach Anspruch 1, ferner beinhaltend einen Cache zum Speichern von Verkapselungsinformation, die aufgrund des identifizierten Protokolls erzeugt wurde.The data switch of claim 1, further including a cache for storing encapsulation information due to of the identified protocol. Daten-Switch nach Anspruch 1, ferner beinhaltend Mittel zum Aufbauen einer Kommunikationssitzung mit einem Endgerät, Mittel zum Identifizieren eines ersten Kommunikationsprotokolls einer Vielzahl von Datenpaketen, die der Kommunikationssitzung zugeordnet sind, Mittel zum dynamischen Konfigurieren eines ersten Ports mit dem identifizierten ersten Kommunikationsprotokoll für eine Dauer der Kommunikationssitzung, wobei das erste Port in der Lage ist, dynamisch mit einem abweichenden Kommunikationsprotokoll konfiguriert zu werden, wenn die Kommunikationssitzung beendet ist, Mittel zum Formatieren eines Datenpakets aufgrund des identifizierten Kommunikationsprotokolls, und eine Vermittlungs-Schnittstelle, die an das Mittel zum Formatieren gekoppelt ist und dem Weiterleiten des formatierten Datenpakets dient, und die weiter aufweist Mittel zum Identifizieren eines zweiten Kommunikationsprotokolls, wobei das identifizierte zweite Kommunikationsprotokoll vom identifizierten ersten Kommunikationsprotokoll abweicht, Mittel zum dynamischen Konfigurieren eines zweiten Ports mit dem identifizierten zweiten Kommunikationsprotokoll, ohne neu zu initialisieren, Mittel zum Übersetzen des formatierten Datenpakets in das zweite Kommunikationsprotokoll, und Mittel zum Senden des übersetzten Datenpakets über das zweite Port.The data switch of claim 1, further including medium for establishing a communication session with a terminal, medium for identifying a first communication protocol of a plurality data packets associated with the communication session medium to dynamically configure a first port with the one identified first communication protocol for a duration of the communication session, with the first port in the Location is dynamic with a different communication protocol to be configured when the communication session is finished, medium for formatting a data packet based on the identified communication protocol, and a switching interface to the agent for Formatting is coupled and forwarding the formatted Data packets, and which has further Means for identifying a second communication protocol, wherein the identified second communication protocol from the identified first communication protocol deviates Means for dynamically configuring a second one Ports with the identified second communication protocol, without to reinitialize, Means of translating the formatted Data packets in the second communication protocol, and medium to send the translated Data packets via the second port. Daten-Switch nach Anspruch 1, ferner beinhaltend ein erstes physikalisches Port, das daran angepaßt ist, eine Vielzahl von Datenpaketen zu empfangen, wobei jedes Datenpaket gekennzeichnet ist durch eines aus einer ersten Vielzahl von Layer-2-Protokollen, Mittel zum Identifizieren des Layer-2-Protokolls einer jeden empfangenen Verbindungsanforderung, Mittel zum dynamischen Verknüpfen des identifizierten Layer-2-Protokolls mit dem ersten physikalischen Port für jedes Datenpaket, Mittel zum Übersetzen der Vielzahl von Datenpaketen, ein zweites physikalisches Port, das daran angepaßt ist, die Vielzahl von übersetzten Datenpaketen zu senden, wobei jedes übersetzte Datenpaket gekennzeichnet ist durch eines aus einer zweiten Vielzahl von Layer-2-Protokollen, Mittel zum dynamischen Verknüpfen des übersetzten Layer-2-Protokolls aus der Vielzahl von übersetzten Datenpaketen mit dem zweiten physikalischen Port, und Mittel zum Senden der verknüpften Vielzahl von übersetzten Datenpaketen über das zweite physikalische Port.The data switch of claim 1, further including one first physical port adapted to a plurality of data packets receive, each data packet is characterized by a from a first variety of Layer 2 protocols, Means to Identifying the Layer 2 protocol of each received connection request, medium for dynamic linking of the identified Layer 2 protocol with the first physical one Port for every data packet, Means for translating the plurality of Data packets a second physical port adapted to the variety of translated Data packets, each translated data packet marked is by one of a second plurality of Layer 2 protocols, medium for dynamic linking of the translated Layer 2 protocol from the large number of translated data packets with the second physical port, and Means for sending the linked Variety of translated Data packets via the second physical port. Daten-Switch nach Anspruch 4, dadurch gekennzeichnet, daß die erste und die zweite Vielzahl von Layer-2-Protokollen ein Punkt-zu-Punkt-Protokoll (PPP) beinhaltet.Data switch according to claim 4, characterized in that that the first and the second plurality of Layer 2 protocols a point-to-point protocol (PPP) includes. Daten-Switch nach Anspruch 5, dadurch gekennzeichnet, daß die erste und die zweite Vielzahl von Layer-2-Protokollen ein Punkt-zu-Punkt-Protokoll über Frame-Relay (PPP/FR) beinhaltet.Data switch according to claim 5, characterized in that that the first and second plurality of Layer 2 protocols use a point-to-point protocol via frame relay (PPP / FR). Daten-Switch nach Anspruch 5, dadurch gekennzeichnet, daß die erste und die zweite Vielzahl von Layer-2-Protokollen ein Punkt-zu-Punkt-Protokoll über Ethernet (PPOE) beinhaltet.Data switch according to claim 5, characterized in that that the first and second plurality of Layer 2 protocols provide a point-to-point protocol over Ethernet (PPOE) includes. Daten-Switch nach Anspruch 4, dadurch gekennzeichnet, daß die erste und die zweite Vielzahl von Layer-2-Protokollen ein Layer-2-Tunnel-Protokoll (L2TP) enthält.Data switch according to claim 4, characterized in that that the first and second plurality of Layer 2 protocols a Layer 2 tunnel protocol (L2TP). Daten-Switch nach Anspruch 4, dadurch gekennzeichnet, daß die erste und die zweite Vielzahl von Layer-2-Protokollen ein Layer-2-Forwarding-Protokoll (L2 F) enthält.Data switch according to claim 4, characterized in that that the first and second plurality of Layer 2 protocols a Layer 2 forwarding protocol (L2 F) contains.
DE20023622U 1999-02-23 2000-02-23 Switch for multiservice network, has system control module having memory to store routing table with list of destination addresses reachable by interface modules and its all known routes Expired - Lifetime DE20023622U1 (en)

Applications Claiming Priority (31)

Application Number Priority Date Filing Date Title
US12127299P 1999-02-23 1999-02-23
US12159199P 1999-02-23 1999-02-23
US12127699P 1999-02-23 1999-02-23
US12159399P 1999-02-23 1999-02-23
US12159099P 1999-02-23 1999-02-23
US12127099P 1999-02-23 1999-02-23
US12158999P 1999-02-23 1999-02-23
US12127399P 1999-02-23 1999-02-23
US12127999P 1999-02-23 1999-02-23
US12127599P 1999-02-23 1999-02-23
US12127499P 1999-02-23 1999-02-23
US12127799P 1999-02-23 1999-02-23
US12127899P 1999-02-23 1999-02-23
US12159299P 1999-02-23 1999-02-23
US12127199P 1999-02-23 1999-02-23
US121278P 1999-02-23
US121591P 1999-02-23
US121276P 1999-02-23
US121277P 1999-02-23
US121590P 1999-02-23
US121274P 1999-02-23
US121271P 1999-02-23
US121273P 1999-02-23
US121279P 1999-02-23
US121593P 1999-02-23
US121275P 1999-02-23
US121589P 1999-02-23
US121270P 1999-02-23
US121592P 1999-02-23
EP01128305A EP1225731A3 (en) 1999-02-23 2000-02-23 Multi-service network switch with independent protocol stacks
US121272P 2008-12-10

Publications (1)

Publication Number Publication Date
DE20023622U1 true DE20023622U1 (en) 2005-07-07

Family

ID=34754097

Family Applications (1)

Application Number Title Priority Date Filing Date
DE20023622U Expired - Lifetime DE20023622U1 (en) 1999-02-23 2000-02-23 Switch for multiservice network, has system control module having memory to store routing table with list of destination addresses reachable by interface modules and its all known routes

Country Status (1)

Country Link
DE (1) DE20023622U1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11778072B2 (en) 2018-08-27 2023-10-03 Phoenix Contact Gmbh & Co. Kg Control and data transfer system for supporting different communication protocols and an adapter module
CN117240715A (en) * 2023-11-14 2023-12-15 湖南恒茂信息技术有限公司 Frame type switch service board card mixed management method

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11778072B2 (en) 2018-08-27 2023-10-03 Phoenix Contact Gmbh & Co. Kg Control and data transfer system for supporting different communication protocols and an adapter module
CN117240715A (en) * 2023-11-14 2023-12-15 湖南恒茂信息技术有限公司 Frame type switch service board card mixed management method
CN117240715B (en) * 2023-11-14 2024-01-23 湖南恒茂信息技术有限公司 Frame type switch service board card mixed management method

Similar Documents

Publication Publication Date Title
US6674756B1 (en) Multi-service network switch with multiple virtual routers
US6789118B1 (en) Multi-service network switch with policy based routing
US6980515B1 (en) Multi-service network switch with quality of access
US6850531B1 (en) Multi-service network switch
US7327757B2 (en) Multi-service network switch with independent protocol stack architecture
US7116679B1 (en) Multi-service network switch with a generic forwarding interface
US6717913B1 (en) Multi-service network switch with modem pool management
DE69727930T2 (en) SUMMARY OF CONNECTIONS IN COMMUNICATION COMMUNICATION NETWORKS
DE69933417T2 (en) Device and method for router-free layer 3 routing in a network
DE69816845T2 (en) SEVERAL COOPERATING AREAS WITHIN A NETWORK UNIT
DE69928761T2 (en) System for rule-based network configuration
DE69832769T2 (en) Network communication device with bound ports for increased bandwidth
DE69825596T2 (en) SYSTEM AND METHOD FOR A MULTILAYER NETWORK ELEMENT
DE69827351T2 (en) Multiple virtual pathfinder
DE69535135T2 (en) Transparent connection of LANs over an ATM network
DE69737342T2 (en) Internet NCP (network control point) over ATM
DE60127794T2 (en) Bound power switch configuration
DE69827201T2 (en) Method and system for server-network switch-multiple connection
DE69812777T2 (en) Connection of Ethernet compatible networks
DE69636126T2 (en) DISTRIBUTED CONNECTION-ORIENTED SERVICES FOR MEDIATED TELECOMMUNICATIONS
DE60126223T2 (en) Arrangement for connection of network exchanges
DE10123821A1 (en) Switched Ethernet network has a method for assigning priorities to user groups so that a quality of service guarantee can be provided by ensuring that packets for one or more groups are given priority over other groups
EP1133112B1 (en) Method for balancing the data transfer load of a communication network and corresponding communication network
US7869442B1 (en) Method and apparatus for specifying IP termination in a network element
DE112008003966T5 (en) Selective re-mapping of a network topology

Legal Events

Date Code Title Description
R207 Utility model specification

Effective date: 20050811

R163 Identified publications notified

Effective date: 20050621

R150 Utility model maintained after payment of first maintenance fee after three years

Effective date: 20050801

R151 Utility model maintained after payment of second maintenance fee after six years

Effective date: 20060309

R152 Utility model maintained after payment of third maintenance fee after eight years

Effective date: 20080229

R071 Expiry of right