DE10341565B4 - Bedarfsbasiertes Filtern für eine schnelle Auswahl von Geräten in einem Baumtopologie-Netzwerk - Google Patents

Bedarfsbasiertes Filtern für eine schnelle Auswahl von Geräten in einem Baumtopologie-Netzwerk Download PDF

Info

Publication number
DE10341565B4
DE10341565B4 DE10341565A DE10341565A DE10341565B4 DE 10341565 B4 DE10341565 B4 DE 10341565B4 DE 10341565 A DE10341565 A DE 10341565A DE 10341565 A DE10341565 A DE 10341565A DE 10341565 B4 DE10341565 B4 DE 10341565B4
Authority
DE
Germany
Prior art keywords
tree topology
devices
topology network
network specification
router
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 - Fee Related
Application number
DE10341565A
Other languages
English (en)
Other versions
DE10341565A1 (de
Inventor
Scott Alan Frisco Rhine
Sharad Belmont Singhal
Xiaoyun San Jose Zhu
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.)
Hewlett Packard Development Co LP
Original Assignee
Hewlett Packard Development Co LP
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 Hewlett Packard Development Co LP filed Critical Hewlett Packard Development Co LP
Publication of DE10341565A1 publication Critical patent/DE10341565A1/de
Application granted granted Critical
Publication of DE10341565B4 publication Critical patent/DE10341565B4/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • 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/44Star or tree networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Stored Programmes (AREA)
  • Small-Scale Networks (AREA)

Abstract

Verfahren zum Filtern einer Baumtopologienetzwerkspezifikation, ansprechend auf eine logische Spezifikation (402) einer Netzanordnung und eines Kommunikationsmodells für die Netzanordnung, um eine gefilterte Baumtopologienetzwerkspezifikation zu erhalten, wobei die gefilterte Baumtopologienetzwerkspezifikation bezüglich der Baumtopologienetzwerkspezifikation weniger Geräte aufweist, wobei Geräte, die zum Aufbauen der Netzanordnung benötigt werden, in der gefilterten Baumtopologienetzwerkspezifikation verfügbar sind, wobei das Verfahren folgenden Schritt umfaßt:
Entfernen eines ersten Satzes von Geräten und eines ersten Satzes von Schaltelementen von der Baumtopologienetzwerkspezifikation, beginnend an der untersten Ebene der Baumtopologienetzwerkspezifikation und vordringend zu dem Rootknoten der Baumtopologienetzwerkspezifikation, wobei jedes Gerät in dem ersten Satz von Geräten entweder ein redundantes Gerät, ein Gerät mit einem Typ, der von der Netzanordnung nicht benötigt wird, oder ein Gerät, das zum Aufbauen der Netzanordnung nicht verfügbar ist, darstellt, wobei jedes Schaltelement in dem ersten Satz von Schaltelementen ein Schaltelement darstellt, dessen Kindgeräte alle Mitglieder des ersten Satzes von Geräten sind.

Description

  • Computernetzwerke sind heutzutage überall vorhanden. In einem typischen Computernetzwerk sind verschiedene Geräte unterschiedlichen Typs über Schaltelemente, wie z. B. Router, Schalter und Hubs, miteinander verbunden, um es den Geräten zu ermöglichen, gemäß einem vordefinierten Kommunikationsmodell miteinander zu kommunizieren.
  • Es gibt verschiedene Möglichkeiten, wie Netzwerke in Topologien konfiguriert sein können, die durch Anwendungen benötigt werden, die diese Netzwerke verwenden. Das einfachste Netzwerk umfaßt tendenziell das Festverdrahten der verschiedenen Geräte unter Verwendung geeigneter Schaltelemente und Verbinden der Medien (z. B. leitfähige Kabel, Faseroptikkabel, das drahtlose Medium, usw.). Obwohl der festverdrahtete Lösungsansatz für relativ kleine statische Netzwerkkonfigurationen gut funktioniert, läßt er sich nicht gut erweitern und führt tendenziell zu Netzwerken, die schwierig zu verwalten und zu aktualisieren sind.
  • In jüngster Zeit wurde ein flexiblerer Lösungsansatz zum Erstellen von Computernetzwerken vorgeschlagen. Anstatt jede Netzwerktopologie stückchenweise, durch Festverdrahten der Geräte aufzubauen, werden die Geräte so betrachtet, daß sie zu einem gemeinsamen Pool bzw. einer Ansammlung von Ressourcen gehören, die in einer hierarchischen Baumtopologie angeordnet sind. Eine hierarchische Baumtopologie wird gewählt, da Geräte in dem Baum untereinander entlang deterministischer Kommunikationswege kommunizieren und dadurch die Bereitstellung und Aktualisierung von Aufgaben vereinfachen. Innerhalb der hierarchischen Baumtopologie sind die Geräte unter Verwendung eines Pools von Schaltelementen miteinander verbunden. Abhängig davon, wie die Schaltele mente konfiguriert sind, können verschiedene logische Netzwerke von diesem gemeinsamen Pool von Geräten und Schaltelementen (z. B. Schalter, Router und Hubs) aufgebaut werden, beispielsweise unter Verwendung einer virtuellen Lokalnetz-(VLAN = Virtual Local Area Network) Technologie. Eine Erörterung einer beispielhaften VLAN-Technologie kann von der IEEE 802.1Q Arbeitsgruppe erhalten werden (http://grouper.ieee.org/groups/802/1/, September 2002).
  • Unter diesem Lösungsansatz kann jede Anzahl logischer Netzwerktopologien von dem physikalischen Netzwerk aufgebaut werden, falls es ausreichend Ressourcen in dem gemeinsamen Pool von Geräten und Schaltelementen (z. B. Schalter, Router und Hubs) des Baums gibt. Beispielsweise möchte eine Organisation eine Dreilagenanwendungstopologie erzeugen oder zu derselben erweitern, die zwei Datenbankserver, fünf Anwendungsserver, vier Webserver und eine Firewall bzw. Brandmauer für Internetzugriffe aufweist. Von dieser Beschreibung und dem Kommunikationsmodell, das die Kommunikationspolitik (einschließlich der erwarteten Bandbreitenverwendung) für jedes Gerät, das für die Anwendung erforderlich ist, bestimmt, können die notwendigen Geräte (z. B. Datenbankserver, Anwendungsserver, Webserver und Brandmauern) von dem gemeinsamen Pool von Geräten ausgewählt werden und unter Verwendung der Schaltelemente in dem Baum miteinander verbunden werden. Somit wird der Aufbau einer logischen Netzwerktopologie eine Aufgabe im Auswählen der erforderlichen Geräte von dem Pool verfügbarer Geräte, die in der Baumhierarchie existieren, und im Konfigurieren der Schaltelemente auf geeignete Weise zum Verbinden der Geräte, wie es durch das Kommunikationsmodell und die logische Spezifikation spezifiziert ist. Ein solches Netzwerk (das eine Vielzahl von Geräten und Netzwerkelementen enthält, so daß dieselben einem gegebenen Kommunikationsmodell entsprechen) wird hierin als eine Farm bzw. ein Hof bzw. eine Netzanordnung bezeichnet.
  • Um die Erörterung zu erleichtern, stellt 1 ein beispielhaftes Datenzentrum 100 dar, das den großen gemeinsamen Pool von beinahe 500 vernetzten Geräten von zehn unterschiedlichen Typen und Schaltelementen darstellt, von denen verschiedene Netzanordnungen aufgebaut werden können. Das Datenzentrum 100 umfaßt einen Hub 1101 (der 8 Netzwerktore für insgesamt 4.096 Mbps enthält) an der Rootebene des hierarchischen Baums. Der Hub 1101 ist mit 9 Routern 2001, 2002, 2011, 2012, 2013, 2021, 2022, 2023 und 2024 gekoppelt, die an der Ebene 1 des Baums angeordnet sind (wobei die Hub die Ebene 0 ist).
  • Der Router 2001 ist mit 15 N4000 N-Klasse-Servern (Server sind in 1 mit dem Begriff „cpu" bezeichnet) und vier Schaltern 8011, 8021, 8031 und 8061 gekoppelt, die an der Ebene 2 des Baums angeordnet sind. Jeder der Schalter 8011, 8021, 8031 und 8061 ist mit 10 J6000-Servern gekoppelt, die an der Ebene 3 des Baums angeordnet sind.
  • Der Router 2002 ist mit 25 L3000-Servern gekoppelt, die an der Ebene 2 des Baums angeordnet sind. Wie es in 1 gezeigt ist, ist jeder der Router 2011, 2012 und 2013 mit 10 A500-Servern gekoppelt, die an der Ebene 2 des Baums angeordnet sind.
  • Der Router 2021 ist mit 10 Lastausgleichselementen (lb = load balancers) und 9 Schaltern 8041, 8051, 8045, 8081, 8001, 8135, 8991, 8981 und 8971 gekoppelt, die an der Ebene 2 des Baums angeordnet sind. Jeder der Schalter 8041, 8051 und 8045 ist mit 12 LP1000R-Servern gekoppelt. Jeder der Schalter 8081, 8001 und 8135 ist mit 12 LP2000R-Servern gekoppelt. Jeder der Schalter 8991, 8981 und 8971 ist mit 8 Brandmauern gekoppelt. Die LP1000R-Server, die LP2000R-Server und die Brandmauern, die dem Router 2021 zugeordnet sind, sind an der Ebene 3 des Baums angeordnet.
  • Der Router 2022 ist mit 10 Lastausgleichselementen (lb) und 9 Schaltern 8042, 8052, 8046, 8082, 8083, 8084, 8992, 8982 und 8972 gekoppelt, die an der Ebene 2 des Baums angeordnet sind. Jeder der Schalter 8042, 8052 und 8046 ist mit 12 LP1000R-Servern gekoppelt. Jeder der Schalter 8082, 8083 und 8084 ist mit 12 LP2000R-Servern gekoppelt. Jeder der Schalter 8992, 8982 und 8972 ist mit 8 Brandmauern gekoppelt. Die LP1000R-Server, die LP2000R-Server und die Brandmauern, die dem Router 2022 zugeordnet sind, sind an der Ebene 3 des Baums angeordnet.
  • Der Router 2023 ist mit 10 Lastausgleichselementen (lb) und 5 Schaltern 8043, 8053, 8055, 8085 und 8003 gekoppelt, die an der Ebene 2 des Baums angeordnet sind. Jeder der Schalter 8043, 8053 und 8055 ist mit 12 LP1000R-Servern gekoppelt. Jeder der Schalter 8085 und 8003 ist mit 12 LP2000R-Servern gekoppelt. Die LP1000R-Server und die LP2000R-Server, die dem Router 2023 zugeordnet sind, sind an der Ebene 3 des Baums angeordnet.
  • Der Router 2024 ist mit 10 Lastausgleichselementen (lb) und 7 Schaltern 8044, 8054, 8004, 8005, 8006, 8100 und 8101 gekoppelt, die an der Ebene 2 des Baums angeordnet sind. Jeder Schalter 8044 und 8054 ist mit 12 LP1000R-Servern gekoppelt. Jeder der Schalter 8004, 8005 und 8006 ist mit 12 LP2000R-Servern gekoppelt. Der Schalter 8100 ist mit 6 Virtuelles-Privates-Netzwerk-(VPN = Virtual Private Network-)Gateways (die in 1 als Backhauls bezeichnet werden) gekoppelt. Der Schalter 8101 ist mit 4 Netzwerkverbundenen-Speicher-(NAS = Network Attached Storage) Möglichkeiten und 2 VPN-Gateways gekoppelt. Die LP1000R-Server, die LP2000R-Server und die NAS und die VPN-Gateways, die dem Router 2024 zugeordnet sind, sind an der Ebene 3 des Baums angeordnet.
  • Man nehme an, daß man eine Netzanordnung aus einer logischen Spezifikation erstellen möchte, die eine Dreilagenarchitektur spezifiziert, mit zwei A500 Datenbankservern, einer NAS, einem Cluster von 13 LP2000R-Anwendungsservern und einem VPN-Gateway (Backhaul) von dem Datenzentrum 100 von 1. Ferner kommunizieren die LP2000R-Anwendungsserver nicht untereinander, noch kommunizieren die A500-Datenbanksever untereinander. Die logische Spezifikation dieser Netzanordnung ist in 2A gezeigt. Das Kommunikationsmodell ist in 2B gezeigt. Angenommen, daß alle Geräte in dem Datenzentrum 100 für eine Verwendung verfügbar sind, gibt es mehr als ausreichend Ressourcen in dem Datenzentrum 100, um die benötigte Netzanordnung aufzubauen.
  • Falls Effizienz kein Thema ist, kann die Netzanordnung durch zufälliges Auswählen der Geräte (z. B. der Datenbankserver, der LP2000R-Anwendungsserver und der Brandmauer) von den verfügbaren Geräten in dem Datenzentrum 100 und durch geeignetes Konfigurieren der Schaltelemente, die entlang der möglichen Kommunikationswege derselben angeordnet sind, aufgebaut werden. Ein solch zufälliger Lösungsansatz optimiert jedoch die Bandbreitenverwendung in dem Datenzentrum 100 nicht und kann erfordern, daß Daten zwischen den Geräten der Netzanordnung mehr Sprünge oder Hops als notwendig durchlaufen. Man betrachte beispielsweise die Kommunikation zwischen einem VPN-Gateway und einem LP2000R-Anwendungsserver. Falls sowohl der VPN-Gateway als auch der LP2000R-Anwendungsserver von denjenigen unter dem Router 2024, wie z. B. unter einem VPN-Gateway unter dem Schalter 8101 und einem LP2000R-Server unter dem Schalter 8004 ausgewählt werden, erfordert die Kommunikation zwischen diesem VPN-Gateway und dem LP2000R-Server nur vier Sprünge (über den Schalter 8101, den Router 2024 und den Schalter 8004). Falls andererseits der VPN-Gateway von denjenigen unter dem Schalter 8100 des Routers 2024 ausgewählt wird und der LP2000R-Server von denjenigen unter dem Schalter 8083 des Routers 2022 ausgewählt ist, erfordert die Kommunikation zwischen diesem VPN-Gateway und dem LP2000R-Server sechs Sprünge (über den Schalter 8100, Router 2024, Hub 1101, Router 2022, Schalter 8083). Der Zufallslösungsansatz berücksichtigt die Bandbreitenkapazität oder die Überlastung nicht, wenn die Bestandteilgeräte ausgewählt werden.
  • Ein weiterer Lösungsansatz, der als zuerst-kommen-zuerst-bedient-werden (FCFS = First-Come-First-Served) bekannt ist, gibt vor, daß man den Baum in einer bestimmten Richtung durchlaufen kann und so viele Ressourcen wie möglich entlang dem Weg sammeln kann, bis alle Ressourcenanforderungen erfüllt sind. Unter diesem Lösungsansatz kann die vorher erwähnte Netzanordnung beispielsweise unter Verwendung von Ressourcen aufgebaut werden, die angetroffen werden, wenn der Router 2001, die Kindknoten und Enkelknoten desselben und dann der Router 2002, die Kindknoten und Enkelknoten desselben durchlaufen wird, und durch Anhalten unterwegs, falls und wenn die erforderlichen Ressourcen alle erhalten wurden. Wie bei dem Zufallslösungsansatz gibt es hier wenig Intelligenz bei der Auswahl der Bestandteilgeräte der Netzanordnung bezüglich der Bandbreiteneffizienz. Folglich können Netzanordnungen, die unter Verwendung des zuerst-kommen-zuerst-bedient-werden-Paradigmas für die Geräteauswahl aufgebaut werden, auch zu einer Bandbreitenineffizienz und Leistungsverschlechterung führen.
  • Der effizienteste Satz von Bestandteilgeräten zum Aufbauen einer Netzanordnung aus einem Baumtopologienetzwerk kann nach dem Bewerten aller möglichen Permutationen und Auswählen der am bandbreiteneffizientesten Permutation erhalten werden. Dieser Lösungsansatz ist jedoch für die meisten Baumtopologie-Netzwerke jeder wesentlichen Größe unpraktisch (z. B. mit mehr als 100 Geräten). Über eine bestimmte Größe hinaus ergibt die bloße Anzahl der Geräte, die in dem Baumtopologie-Netzwerk vorliegen, Anlaß für einen riesigen Satz von möglichen Permutationen, was eine entsprechende riesige Menge an Rechenleistung und -Zeit zum Auswerten erfordert.
  • Einige intelligente Geräteauswahlalgorithmen können verwendet werden, um die Zeitdauer zu reduzieren, die erforderlich ist, um einen effizienten Satz von Bestandteilgeräten auszuwählen, um eine Netzanordnung zu erstellen. Auch wenn diese intelligenten Geräteauswahlalgorithmen keine erschöpfende Bewertung aller möglichen Kombinationen in dem Baumtopologie-Netzwerk erfordern, erhöht sich dennoch die erforderliche Zeitdauer zum Finden einer Lösung trotzdem mit ansteigender Komplexität der Baumnetzwerktopologie. Falls das Baumtopologie-Netzwerk vor der Geräteauswahl intelligent vereinfacht werden kann, können diese Geräteauswahlalgorithmen eventuell effizienter arbeiten, oder es kann sein, daß dieselben überhaupt nicht benötigt werden, um eine effiziente Lösung zu finden.
  • Aus der US 6134599 A ist bereits ein Netzwerk bekannt, welches sich als Baumstruktur organisiert. Hierbei werden mehrere Iterationen durchgeführt, wobei nur taugliche Geräte in den Baum aufgenommen werden. Bei dem bekannten Verfahren wird ferner die Kinderzahl reduziert und entsprechend die Übertragung eingestellt.
  • Die US 6,105,018 bezieht sich Computerdatenbanksysteme und insbesondere auf ein effizientes Ausführen einer Abfrage in einer Datenbank. Dabei wird ein effizienter Satz von Indizes bestimmt, um eine Mehrzahl von vorweggenommenen Abfragetypen (anticipated querry types) abzudecken, in dem ein gerichteter azyklischer Graph gebildet wird (directed acyclic graph), dessen Knoten vorweggenommenen Abfragetypen entsprechen. Ein Minimal-Blatt-Spannbaum (minimum leaf spanning tree) für den äquivalenten Graphen wird bestimmt durch wiederholtes Finden eines vergrößernden Pfads (augmenting paths) für einen aktuellen Spannbaum und Erstellen eines reduzierten Blatt-Spannbaums basierend auf dem aktu ellen Spannbaum und dem vergrößernden Pfad bis ein vergrößernder Pfad nicht länger gefunden werden kann. Die Blätter des Minimal-Blatt-Spannbaums zeigen an, welche Indizes gebaut werden sollen.
  • Es ist die Aufgabe der vorliegenden Erfindung, ein computerimplementiertes Verfahren zum Filtern einer Baumtopologie-Netzwerkspezifikation, einen Herstellungsartikel mit einem Programmspeichermedium mit eingebauten computerlesbaren Codes, ein computerimplementiertes Verfahren zum Filtern einer Baumtopologie-Netzwerkspezifikation und eine Anordnung zum Erzeugen einer Netzanordnung mit verbesserter Charakteristika zu schaffen.
  • Diese Aufgabe wird durch ein Verfahren gemäß Anspruch 1, einen Herstellungsartikel gemäß Anspruch 8, und Verfahren gemäß Anspruch 14, sowie eine Anordnung gemäß Anspruch 16 gelöst.
  • Diese und andere Merkmale der vorliegenden Erfindung werden nachfolgend näher beschrieben.
  • Die vorliegende Erfindung wird beispielhaft und nicht beschränkend in den Figuren der beiliegenden Zeichnungen dargestellt, bei denen sich gleiche Bezugszeichen auf ähnliche Elemente beziehen.
  • Bevorzugte Ausführungsbeispiele der vorliegenden Erfindung werden nachfolgend bezugnehmend auf beiliegende Zeichnungen näher erläutert. Es zeigen:
  • 1 ein beispielhaftes Datenzentrum, das den großen gemeinsamen Pool von vernetzten Geräten unterschiedlichen Typs und Schaltelementen darstellt, von denen verschiedene Netzanordnungen aufgebaut werden können;
  • 2A eine beispielhafte logische Spezifikation für eine Netzanordnung;
  • 2B ein beispielhaftes Kommunikationsmodell für eine Netzanordnung;
  • 3 den bedarfsbasierten Filteralgorithmus gemäß einem Ausführungsbeispiel der vorliegenden Erfindung;
  • 4 ein Ausführungsbeispiel des Filtern-nach-Gerät-Prozesses in näheren Einzelheiten;
  • 5 den beispielhaften OVERLAY-Baum, nachdem der Filterprozeß von 4 an dem Baumnetzwerk von 1 abgeschlossen ist;
  • 6 den Filtern-nach-Schaltelement-Prozeß gemäß einem Ausführungsbeispiel der vorliegenden Erfindung;
  • 7 den beispielhaften OVERLAY-Baum nach dem Abschluß des Filtern-nach-Schaltelement-Prozesses von 6;
  • 8A und 8B den Filtern-nach-Router-Prozeß gemäß einem Aus führungsbeispiel der vorliegenden Erfindung;
  • 9 den Kombinierprozeß, der durch 8B aufgerufen wird, gemäß einem Ausführungsbeispiel der vorliegenden Erfindung;
  • 10 den beispielhaften OVERLAY-Baum nach dem Abschluß des Filtern-nach-Router-Prozesses von 8A, 8B und 9;
  • 11A und 11B den Filtern-nach-Hub-Prozeß gemäß einem Ausführ ungsbeispiel der vorliegenden Erfindung; und
  • 12 den beispielhaften OVERLAY-Baum nach dem Abschluß des Filtern-nach-Hub-Prozesses von 11A und 11B.
  • Die vorliegende Erfindung wird nun mit Bezugnahme auf einige bevorzugte Ausführungsbeispiele derselben, wie sie in den beiliegenden Zeichnungen dargestellt sind, näher beschrieben. Bei der folgenden Beschreibung werden zahlreiche spezifische Einzelheiten aufgeführt, um ein tiefes Verständnis der vorliegenden Erfindung zu liefern. Es ist jedoch für einen Fachmann auf diesem Gebiet klar, daß die vorliegende Erfindung auch ohne einige oder ohne alle der spezifischen Einzelheiten praktiziert werden kann. In anderen Fällen wurden gut bekannte Prozeßschritte und/oder Strukturen nicht näher beschrieben, um die vorliegende Erfindung nicht unnötig zu verdecken.
  • Gemäß einem Ausführungsbeispiel der vorliegenden Erfindung ist eine Filtertechnik zum Reduzieren der Anzahl von Geräten und der Anzahl von Schaltelementen (d. h. der Hubs, Router oder Schalter) in dem Baumtopologie-Netzwerk vor der Geräteauswahl vorgesehen. Die Filtertechnik berücksichtigt den Bedarf der Netzanordnung, die Bandbreitenanforderungen der Geräte, die Bandbreite der Schaltelemente, durch die ein oder mehrere Geräte kommunizieren, um redundante Geräte und Schaltelemente von dem Baumtopologie-Netzwerk zu entfernen. Vorteilhafterweise weist das gefilterte Baumtopologie-Netzwerk (FTTN) alle Ressourcen auf, die für die Netzanordnung benötigt werden, und die beste Lösung, die mit dem FTTN verfügbar ist, ist im wesentlichen so effizient wie die beste Lösung, die mit dem ungefilterten TTN (UTTN) verfügbar ist. Auf diese Weise ist der Problemsatz reduziert und es müssen weniger Permutationen bewertet werden, um eine effiziente Lösung zu finden.
  • 3 stellt den bedarfbasierten Filteralgorithmus gemäß einem Ausführungsbeispiel der vorliegenden Erfindung dar. An einer hohen Ebene umfaßt der Filteralgorithmus das Filtern des Topologiebaum-Netzwerks oder eine Kopie desselben von unten nach oben und das Abschneiden, während das Filtern fortschreitet. Folglich werden die Geräte in Block 302 gefiltert, um Geräte von einem unbenötigten Typ zu entfernen. Allgemein gesagt werden für jeden Gerätetyp zwei Parameter gespeichert: 1) SELFTALK, der anzeigt, ob Geräte eines speziellen Gerättyps untereinander sprechen können, und 2) WORSTCASE-Bandbreite, die die Bandbreitenanforderungen im schlechtesten Fall für einen speziellen Gerätetyp darstellt. 4 hierin erörtert ein Ausführungsbeispiel des Filtern-nach-Geräte-Prozesses näher.
  • In Block 304 wird das Filtern an jeder der Schaltelement-(Schalter, Router und Hub) Ebenen durchgeführt. Allgemein gesagt wurden an dieser Stufe die nicht benötigten Geräte bereits früher in Block 302 entfernt, und der Filtern-nach-Schaltelement-Prozeß von Block 304 umfaßt das Entfernen redundanter direktverbundener Geräte von den Schaltelementen. 6 hierin erörtert ein Ausführungsbeispiel des Filtern-nach-Schaltelement-Prozesses näher.
  • In Block 306 wird Filtern an der Routerebene durchgeführt. Allgemein gesagt werden redundante Schalter bei diesem Prozeß eliminiert. Ferner werden Schalter „kombiniert", um den Bedarf der Netzanordnung bezüglich eines speziellen Gerätetyps zu erfüllen, falls dies vorteilhaft ist. 8A, 8B und 9 hierin erörtern ein Ausführungsbeispiel des Filtern-nach-Router-Prozesses näher.
  • In Block 308 wird Filtern an der Hubebene durchgeführt. Allgemein gesagt werden bei diesem Prozeß redundante Router eliminiert. 11 hierin erörtert ein Ausführungsbeispiel des Filtern-nach-Hub-Prozesses näher.
  • Es gibt zusätzliche Komplexitäten, Nuancen und Optimierungen in jedem der Blöcke von 3, die mit Bezugnahme auf die nachfolgenden Figuren besser verständlich werden.
  • 4 stellt den Filtern-nach-Gerät-Prozeß von Block 302 in 3 gemäß einem Ausführungsbeispiel der vorliegenden Erfindung dar. In Block 402 wird die Anzahl jedes Gerätetyps, der von der Netzanordnung gewünscht wird, das Kommunikationsmodell und das Hardwaremodell des Baumtopologie-Netzwerks, einschließlich der verfügbaren Bandbreite, empfangen. In Block 404 wird das Array SELFTALK, von dem Elemente verwendet werden, um zu verfolgen, ob Geräte des gleichen gegebenen Gerätetyps untereinander kommunizieren können, auf falsch initialisiert. Das Array WORSTCASE, von dem Elemente verwendet werden, um die Bandbreite im ungünstigsten Fall für jeden Gerätetyp zu verfolgen, wird auf 0 initialisiert. Ein Überlagerungsbild (z. B. eine Kopie) des Hubs des Baumtopologie-Netzwerks wird ebenfalls in 404 gemacht, um die Filteroperation zu ermöglichen, die auf dem OVERLAY-Baum arbeitet.
  • In Block 406 wird sichergestellt, ob es zusätzliche Gerätetypen zum Verarbeiten gibt. Falls es zusätzliche Gerätetypen zum Verarbeiten gibt, schreitet das Verfahren zu Block 408 fort, wo die temporäre Variable D als der nächste Gerätetyp eingestellt wird. In Block 410 wird eine einfache Überprüfung mit dem in Block 402 vorgesehenen Kommunikationsmodell durchgeführt, um zu bestimmen, ob Geräte des Typs D miteinander sprechen können. Falls Geräte des Typs D miteinander sprechen können, wird das entsprechende Arrayelement des Arrays SELFTALK in Block 412 auf wahr eingestellt, um diese Charakteristik wiederzuspiegeln.
  • In Block 414 wird das Arrayelement des Arrays WORSTCASE, das verwendet wird, um die Bandbreitenanforderung des Gerätetyps D im ungünstigsten Fall zu verfolgen, auf die größte Bandbreitenanforderung eingestellt, die durch das Kommunikationsmodell für den Gerätetyp D angezeigt wird. In Block 416 werden alle freien Geräte des Typs D, einschließlich deren Elternschalter und Router zu OVERLAY hinzugefügt. Die Wirkung des Blocks 416 ist es, nur die Geräte von dem Baumnetzwerk hinzuzufügen, die frei sind und Typen aufweisen, die für die Netzanordnung zu dem OVERLAY benötigt werden. Dies eliminiert alle Geräte, die von der Netzanordnung nicht benötigt werden, oder die Geräte, die bei der Suche berücksichtigt werden.
  • Danach kehrt das Verfahren zu Block 406 zurück, um den nächsten Gerätetyp zu verarbeiten. Der Prozeß setzt sich fort, bis alle Gerätetypen verarbeitet werden, in diesem Fall endet das Verfahren bei Block 420.
  • 5 zeigt den OVERLAY-Baum, nachdem der Filterprozeß von 4 an dem Baumnetzwerk von 1 abgeschlossen ist. Bei dem vorliegenden Beispiel wird davon ausgegangen, daß alle in der ursprünglichen 1 gezeigten Geräte frei sind und für die Verwendung beim Aufbauen der Netzanordnung verfügbar sind. Im Vergleich zu dem ursprünglichen Baumtopologie-Netzwerk von 1 wurden die unbenötigten Geräte eliminiert. Mit Bezugnahme auf Router 2001 und Router 2002 weisen diese Router beispielsweise kein Gerät auf, das von der Netzanordnung benötigt wird. Da diese nicht benötigten Geräte durch Block 416 nicht zu dem OVERLAY-Baum hinzugefügt wurden, und folglich in 5 fehlen, werden ihre Elternschalter und Router ebenfalls nicht zu dem OVERLAY-Baum hinzugefügt. Die Router 2011, 2012, 2013 weisen alle jeweils 10 a500-Server auf. Bei dem vorliegenden Beispiel werden diese a500-Server benötigt und werden daher alle dem OVERLAY-Baum hinzugefügt. Die Elternschalter und Router derselben werden ebenfalls hinzugefügt, wie es in 5 ersichtlich ist.
  • Mit Bezugnahme auf den Router 2021 werden die Lastausgleichselemente, die LP1000R-Server und die Brandmauern, die in 1 gezeigt sind, nicht benötigt und wurden somit dem OVERLAY-Baum nicht hinzugefügt. Die LP2000R-Server werden jedoch von der Netzanordnung benötigt und wurden folglich dem OVERLAY-Baum hinzugefügt. Die Elternschalter und Router derselben sind ebenfalls hinzugefügt, wie es in 5 ersichtlich ist.
  • 6 stellt gemäß einem Ausführungsbeispiel der vorliegenden Erfindung den Prozeß von Block 304 in 3 dar. In Block 604 wird sichergestellt, ob es irgendwelche zusätzlichen Schaltelemente in dem OVERLAY-Baum gibt. Falls es zusätzliche Schaltelemente zum Verarbeiten gibt, schreitet das Verfahren zu Block 606 fort, wo die temporäre Variable S auf das nächste Schaltelement eingestellt ist, und der WORSTCASE für dieses Schaltelement, das durch S dargestellt ist, auf 0 eingestellt ist. In Block 608 wird sichergestellt, ob es unter dem Schaltelement S mehr Gerätetypen zum Verarbeiten gibt. Falls dies der Fall ist, schreitet das Verfahren zu Block 610 fort, um die temporäre Variable D auf den nächsten Gerätetyp einzustellen und die temporäre Variable N auf den Bedarf an dem Gerätetyp D (wobei dieser Bedarf von der logischen Spezifikation erhalten wird).
  • In Block 612 wird geprüft, ob das Schaltelement S mehr direktverbundene Geräte des Typs D aufweist als der Bedarf, der durch die temporäre Variable N dargestellt ist. Falls das Schaltelement S mehr direktverbundene Geräte des Typs D aufweist als der Bedarf, der durch die temporäre Variable N dargestellt ist, werden alle überschüssigen Geräte des Typs D von dem OVERLAY-Baum in Block 614 abgeschnitten. Die Wirkung des Blocks 614 ist es daher, redundante direktverbundene Geräte von dem Schaltelement zu entfernen.
  • In Block 615 wird das Element des WORSTCASE-Arrays zum Verfolgen der Bandbreite im ungünstigsten Fall für das Schaltelement S gleich dem aktuell bestehenden Wert dieses Elements des WORSTCASE-Arrays und der Anzahl dieses Gerätetyps D, die mit dem Schaltelement S verbunden bleibt, eingestellt, multipliziert mit der Bandbreite im ungünstigsten Fall für diesen Gerätetyp (die durch den WORSTCASE (Typ) in Block 414 in 4 verfolgt wurde). Vorzugsweise werden die WORSTCASE-Szenarios für beide Richtungen für das Schaltelement S verfolgt (d. h. die Aufwärtsrichtung durch das Schaltelement S und die Abwärtsrichtung durch das Schaltelement S getrennt). Dieser Zustand wird verwendet, um die maximale Bandbreite zu verfolgen, die durch das Schaltelement fließen könnte, von Geräten des Typs D, die mit demselben verbunden sind. Außerdem wird die Variable FREE, die dem Elternschaltelement zugeordnet ist (z. B. Router 2022, wenn der Schalter 8082 in Betracht gezogen wird) durch die Anzahl von Geräten des Typs D inkrementiert (bis zu dem Maximum von NEED) in Block 607.
  • Danach kehrt der Prozeß zu Block 608 zurück, um den nächsten Gerätetyp unter dem Schaltelement S zu verarbeiten. Falls alle Gerätetypen unter dem Schaltelement S verarbeitet wurden, schreitet das Verfahren von Block 608 zu Block 618 fort, um zu prüfen, ob das Schaltelement S mehr als einen Gerätetyp aufweist (Block 618). Falls das Schaltelement S nur einen Gerätetyp aufweist, schreitet der Prozeß zu Block 620 fort, wo das Schaltelement S mit MONOCHROME bezeichnet ist, und die folgenden Variablen werden eingestellt.
    • UP = availUPBW/WORSTCASEup (D)
    • DOWN = availDOWNBW/WORSTCASEdown (D)
    • USABLE = min (NEED, UP, DOWN)
  • Die Variable UP verfolgt die Anzahl von Geräten des Typs D, die ein MONOCHROME-Schaltelement S unterstützen kann, bei der verfügbaren Bandbreite für das Schaltelement S und der Bandbreitenanforderung im ungünstigsten Fall in der Hoch-Richtung für ein Gerät des Typs D. Die Variable DOWN verfolgt die Anzahl von Geräten des Typs D, die ein MONOCHROME-Schaltelement S unterstützen kann, bei der verfügbaren Abwärtsbandbreite für das Schaltelement S und der Bandbreitenanforderung im ungünstigsten Fall in der Abwärtsrichtung für ein Gerät des Typs D. Die Variable USABLE verfolgt die maximale Anzahl von Geräten des Typs D, die ein MONOCHROME-Schaltelement unterstützen kann. Der Prozeß schreitet dann zu Block 604 fort, um zu prüfen, ob mehr Schaltelemente vorliegen. Falls es in Block 618 mehr als einen Gerätetyp gibt, kann der Schalter nicht mit MONOCHROME bezeichnet werden, und der Prozeß schreitet direkt zu Block 604 fort.
  • Falls dagegen in Block 604 sichergestellt wird, daß es keine weiteren Schaltelemente in dem OVERLAY-Baum gibt, endet der Prozeß bei Block 626.
  • 7 zeigt den OVERLAY-Baum nach dem Abschluß des Filtern-nach-Schaltelement-Prozesses von 6. Es ist anzumerken, daß redundante direktverbundene Geräte von den Schaltelementen eliminiert wurden. Beispielsweise wurde unter dem Schalter 8101 des Routers 2024 die Anzahl von NAS von 4 in 5 auf 1 in 7 reduziert, da die logische Spezifikation von 2A nur 1 NAS verlangt. Analog wurde unter dem Schalter 8100 des Routers 2024 die Anzahl von VPN-Gateways (Backhauls) von 6 in 5 auf 1 in 7 reduziert, da die logische Spezifikation von 2A nur 1 VPN-Gateway verlangt. Obwohl es viele offensichtliche redundante Schalter gibt, von denen einige besser geeignet sind zum Aufbau der Netzanordnung als andere, werden diese in dem Filtern-nach-Schaltelement-Prozeß von 6 nicht eliminiert. Diese werden in nachfolgenden Filterprozessen hierin entfernt. Außerdem reflektieren die Zahlen in Klammern neben den Routern (und dem Hub) die FREE-Geräte, die den Routern (und dem Hub) zugeordnet sind. Beispielsweise kann der Router 2021 13 LP2000R-Server liefern, während der Router 2024 13 LP2000R-Server, 1 NAS-Gerät und 1 Backhaul-Gerät liefern kann.
  • 8A und 8B zeigen den Filtern-nach-Router-Prozeß von Block 306 von 3 gemäß einem Ausführungsbeispiel der vorliegenden Erfindung. Allgemein gesagt zielen 8A und 8B darauf ab, entweder einen oder mehrere Schalter unter einem Router zu entfernen (8A), oder Schalter unter einer Router zu kombinieren, um den Bedarf an einem speziellen Gerätetyp zu erfüllen (8B). In 8A wird in Block 802 sichergestellt, ob es in dem OVERLAY-Baum mehr Router zum Verarbeiten gibt. Falls es mehr Router zum Verarbeiten gibt, schreitet das Verfahren zu Block 804 fort, um das Verarbeiten der Router nacheinander zu beginnen. Somit wird in Block 804 die temporäre Variable R auf den nächsten Router eingestellt, um den Durchlauf 1 über die Kinder des Routers R einzuleiten. In dem Zusammenhang von 8A und 8B stellt der Durchlauf 1 die Verarbeitung von 8A zum Eliminieren redundanter Schalter dar. Der Durchlauf 2 stellt die Verarbeitung von 8B zum Kombinieren von Schaltern dar, falls dies benötigt wird.
  • In Block 806 wird sichergestellt, ob es unter dem Router R mehr Schaltkinder zu verarbeiten gibt. Falls es unter dem Router R mehr Schaltkinder zum Verarbeiten gibt, schreitet das Verfahren zu Block 808 fort, wo die temporäre Variable S auf den nächsten Kindschalter von R eingestellt wird. In Schritt 810 wird sichergestellt, ob der Schalter S die Bandbreite aufweist, um die Bandbreitenanforderung im ungünstigsten Fall handzuhaben, auf der Basis von WORSTCASE(S), die in Block 616 von 6 berechnet wurden. Diese Prüfung stellt sicher, daß ein Schalter, der nicht in der Lage ist, die Bandbreitenanforderung im ungünstigsten Fall handzuhaben, in einem Vergleich mit anderen Schaltern zum Zweck des Eliminierens redundanter Schalter nicht „gewinnen" kann. Falls der Schalter S somit nicht die Bandbreite zum Handhaben der Bandbreitenanforderung im ungünstigsten Fall aufweist, kehrt der Prozeß zu Block 806 zurück, um den nächsten Kindschalter des Routers R zu verarbeiten.
  • Falls andererseits der Schalter S die Bandbreite übrig hat, um die Bandbreitenanforderung im ungünstigsten Fall handzuhaben, schreitet das Verfahren zu Block 812 fort, in dem alle anderen Schaltkinder des Routers R in einer Liste B gespeichert werden. Danach wird jedes Kind in der Liste B mit dem Schalter S verglichen, um zu bestimmen, ob das Kind in der Liste B, das verglichen wird, sicher eliminiert werden kann. Somit wird in Block 814 sichergestellt, ob es mehr Schalter in der Liste B zum Verarbeiten gibt. Falls keine weiteren Schalter in der Liste B zu verarbeiten sind, kehrt das Verfahren zu Block 806 zurück, um das nächste Schaltkind des Routers R zu verarbeiten.
  • Falls andererseits mehr Schalter in der Liste B zu verarbeiten sind, schreitet das Verfahren zu Block 816 fort, in dem die temporäre Variable T als nächster Schalter in der Liste B eingestellt wird. In Block 818 wird der Test durchgeführt, um sicherzustellen, ob der Schalter T eliminiert werden kann. Bei einem Ausführungsbeispiel kann der Schalter T eliminiert werden, falls beide der beiden folgenden Bedingungen erfüllt sind. Die erste Bedingung ist erfüllt, falls der Schalter S oder der Schalter T alle Bedürfnisse für alle Gerätetypen, die jeder aufweist, erfüllt. Die zweite Bedingung ist erfüllt, falls die Anzahl von freien Geräten unter dem Schalter S größer oder gleich der Anzahl von freien Geräten unter dem Schalter T für alle Gerätetypen in T ist. Beispielsweise ist der Schalter 8081 iden tisch (bezüglich der Systeme, die mit demselben verbunden sind) mit dem Schalter 8001 und dem Schalter 8135, keiner derselben kann jedoch die anderen eliminieren, weil keiner derselben die Anforderung der 13 LP2000R-Server erfüllt.
  • Falls beide Bedingungen des Blocks 818 nicht erfüllt sind, kehrt das Verfahren zu Block 814 zurück, um den nächsten Schalter in der Liste B zu verarbeiten. Falls andererseits beide Bedingungen des Blocks 818 erfüllt sind, schreitet das Verfahren zu Block 820 fort, wo der Schalter T von dem OVERLAY-Baum entfernt wird. Danach kehrt das Verfahren ebenfalls zu Block 814 zurück, um den nächsten Schalter in der Liste B zu verarbeiten.
  • Falls in Block 806 bestimmt wird, daß es keine weiteren Schaltkinder des Routers R zu verarbeiten gibt, schreitet das Verfahren zu 8 fort, um den Durchlauf 2 zum Verarbeiten der verbleibenden Kindschalter des Routers R zu beginnen.
  • In 8B ist es das Ziel, die Schalter unter einem Router zu kombinieren, um einen Bedarf der Netzanordnung zu erfüllen, falls dies vorteilhaft ist. Somit wird in Block 852 die Liste ListsbyType auf Null initialisiert. Jede Liste ListsbyType verfolgt für einen speziellen Router die MONOCHROME-Schalter, die einen bestimmten Gerätetyp liefern. Beispielsweise sind unter dem Router 2023 die Schalter 8085 und 8003 beide MONOCHROME-Schalter, die LP2000R-Server versorgen. Ferner wird die Variable UsablebyType auf Null eingestellt. Die Variable UsablebyType wird verwendet, um die Anzahl von Geräten eines speziellen Typs zu verfolgen, die ein bestimmter Schalter tatsächlich bereitstellen kann. Um die Differenz zwischen frei und benutzbar klarzustellen, betrachte man das folgende Beispiel. Ein Schalter kann 12 freie LP2000R-Server unter sich haben, aber kann die Bandbreite aufweisen, um nur 10 bereitzustellen. In diesem Fall ist die Variable UsablebyType für LP2000R für diesen Schalter 10, auch wenn es 12 freie LP2000R-Server unter demsel ben gibt. Die UsablebyType-Anzahl ist eine realistischere Beurteilung der Fähigkeit eines Schalters bezüglich eines speziellen Gerätetyps.
  • In Block 854 wird sichergestellt, ob mehr MONOCHROME-Schalter, zum Verarbeiten unter dem Router R übrig sind. Bezüglich des Routers 2024 von 7 gibt es beispielsweise 3 MONOCHROME-Schalter: 8004, 8005 und 8006. Falls es welche gibt, wird die Schleife von Block 854 plus Block 856 alle nutzbaren Geräte nach Typ unter den MONOCHROME-Schaltern addieren und dieselben der Variable UsablebyType zuweisen. Somit ist bei diesem Beispiel die Anzahl von UsablebyType für LP2000R-Server unter dem Router 2024 30 (weil jeder der Schalter 8004, 8005 und 8006 10 nutzbare LP2000R-Server aufweist). Ferner wird die Liste ListsbyType für den Router 2024 die drei Schalter 8004, 8005 und 8006 als MONOCHROME-Schalter verfolgen, die die LP2000R-Server versorgen. Dies ist in Block 856 gezeigt.
  • Falls keine MONOCHROME-Schalter zum Verarbeiten übrig sind, wie es durch Block 854 bestimmt wird, schreitet das Verfahren zu Block 858 fort, der eine Kennung oder ein Kommentar ist, um anzuzeigen, daß sich die verbleibenden Schritte hauptsächlich mit dem Filtern der MONOCHROME-Schalter beschäftigen. In Block 860 wird festgestellt, ob es mehr nicht-leere ListsbyType zum Verarbeiten gibt. Falls es mehr nicht-leere ListsbyType zum Verarbeiten gibt, schreitet das Verfahren zu Block 862 fort.
  • Mit Bezugnahme auf das Beispiel, das sich mit dem Router 2024 beschäftigt, gibt es eine nicht-leere ListsbyType (d. h. die eine nicht-leere ListsbyType, die die drei MONOCHROME-Schalter 8004, 8005 und 8006 verfolgt, die die LP200R-Server versorgen). Somit ist in Block 862 die temporäre Variable L als die nächste MONOCHROME-Liste eingestellt. Bei dem vorliegenden Beispiel ist die temporäre Variable L auf den einen nicht leeren ListsbyType eingestellt, der die drei MONOCHROME-Schalter 8004, 8005 und 8006 verfolgt, die die LP200R-Server versorgen. In Block 864 wird der Prozeß COMBINE aufgerufen, um Geräte zu kombinieren, falls dies angemessen ist. Der COMBINE-Prozeß von Block 864 wird in Verbindung mit 9 hierin erörtert. Nachdem der COMBINE-Prozeß von 9 abgeschlossen ist, kehrt das Verfahren zu Block 860 zurück, um festzustellen, ob es mehr nicht-leere ListsbyTypes zum Verarbeiten gibt. Falls es keine weiteren nicht-leeren ListsbyTypes zum Verarbeiten gibt, schreitet das Verfahren von Block 860 von 8B zu Block 802 von 8A fort, um den nächsten Router zu verarbeiten, falls es einen gibt.
  • 9 stellt den COMBINE-Prozeß gemäß einem Ausführungsbeispiel der vorliegenden Erfindung dar, der durch Block 864 von 8B aufgerufen wird. In 9 ist es das Ziel in jedem Router, daß die MONOCHROME-Schalter, die einen bestimmten Gerätetyp liefern, kombiniert werden, um einen größeren logischen Schalter zu erzeugen, der eine größere Anzahl von Geräten dieses Typs bereitstellt. In Block 902 wird festgestellt, wo der Gerätetyp Selbstsprechen erlaubt, d. h. Geräte dieses Typs miteinander kommunizieren können. Dieser Parameter wird durch das Kommunikationsmodell geliefert und wird durch die Variable SELFTALK früher in Block 412 von 4 verfolgt, falls Selbstsprechen erlaubt ist. Falls Selbstsprechen für diesen Gerätetyp nicht erlaubt ist, wie es für die LP2000R-Server des vorliegenden Beispiels der Fall wäre, sammelt Block 904 alle Geräte des Typs, der derzeit betrachtet wird, unter einem größeren logischen Schalter, bis zu der Anzahl von Geräten dieses Typs, die von der Netzanordnung benötigt wird.
  • Bei einem Ausführungsbeispiel wird dies erreicht durch Kopieren der Zeiger zu den Geräten und sammeln derselben unter einem der Schalter (die genaue Auswahl des Schalters ist beliebig, da davon ausgegangen wird, daß alle ähnlichen Geräte unter dem gleichen Router ungefähr die gleichen Kommunikationskosten aufweisen). Außerdem werden in Block 904 alle anderen Geräte dieses Typs entfernt, zusammen mit den Elternschaltern derselben. Bezüglich des Beispiels von 7 werden beispielsweise die 36 Nicht-Nebensprechen-LP2000Rs unter dem Router 2024 unter einem logischen Schalter 8004 gesammelt, bis zu den 13 LP2000R-Servern, die von der Netzanordnung benötigt werden, und alle anderen LP2000R-Geräte werden zusammen mit ihren Elternschaltern (d. h. Schalter 8005 und 8006) entfernt. Danach endet der Prozeß von 9, um zu dem Aufrufprozeß zurückzukehren.
  • Falls andererseits Selbstsprechen für Geräte dieses Gerätetyps erlaubt ist, schreitet das Verfahren zu Block 906 fort, bei dem ein minimaler Satz von Schaltern erstellt wird, beginnend von dem Schalter mit der größten Usableby-Type und rekursives Hinzufügen zu dem Satz des nächstgrößten UsableType-Schalters, bis die Anzahl erforderlicher Geräte nach Typen erfüllt ist. Anfangs wird eine schnelle Prüfung durchgeführt um sicherzustellen, daß die MONOCHROME-Schalter in dem ListsbyType von 8 abgeschnitten werden können. Somit wird in Block 906 festgestellt, ob die Anzahl von MONOCHROME-Schaltern in der ListsbyType-Liste zumindest drei beträgt. Dies liegt daran, daß an diesem Punkt kein einziger MONOCHROME-Schalter alle Geräte des Typs aufweist, um den Bedarf an diesem Typ zu erfüllen, und falls es nur zwei oder weniger MONOCHROME-Schalter in der Liste gibt, können die MONOCHROME-Schalter nicht abgeschnitten werden. Falls es mehr als zwei MONOCHROME-Schalter gibt und der UsablebyType-Wert aller MONOCHROME-Schalter, der dem Typ in der Liste zugeordnet ist (d. h. die Gesamtmenge von UsablebyType-Parametern aller MONOCHROME-Schalter, die dem Typ zugeordnet sind) größer ist als die erforderliche Anzahl von Geräten des Typs, ist Abschneiden zulässig. Falls Abschneiden nicht zulässig ist, wie es durch den Test von Block 906 festgestellt wird, schreitet das Verfahren zu Block 948 fort, um zu dem Aufrufprozeß zurückzukehren.
  • Falls Abschneiden zulässig ist, wie es durch den Test von Block 906 festgestellt wird, schreitet das Verfahren von Block 906 zu Block 908 fort, wobei die vorübergehende Liste SET auf Null initialisiert wird und die SUM (Summe) der UsablebyType-Werte für diese vorübergehende SET Null ist. In Block 910 wird festgestellt, ob die aktuelle SUM von UsablebyType geringer ist als die erforderliche Anzahl von Geräten des Typs. Falls die aktuelle SUM von UsablebyType geringer ist als die erforderliche Anzahl von Geräten, wird der Schalter G mit dem größten UsablebyType-Wert, der sich nicht bereits in der vorübergehenden SET befindet, dem vorübergehenden SET hinzugefügt, und die SUM von Usableby-Type wird aktualisiert durch Hinzufügen des UsablebyType-Werts des neuhinzugefügten Schalters G zu dem aktuellen SUM-Wert. Danach kehrt das Verfahren zu Block 910 zurück, um festzustellen, ob die aktuelle SUM von UsablebyType nach wie vor geringer ist als die erforderliche Anzahl von Geräten des Typs, und zum Hinzufügen des Schalters mit dem nächstgrößten UsablebyType-Wert zu der vorübergehenden SET, falls in Block 910 festgestellt wird, daß die aktuelle SUM von UsablebyType nach wie vor geringer ist als die erforderliche Anzahl von Geräten des Typs.
  • Auf diese Weise baut das Verfahren die vorübergehende SET auf, durch Ansammeln von Schaltern, beginnend mit dem Schalter mit dem größten UsablebyType-Wert zuerst, bis die Gesamt-SUM von UsablebyType in der vorübergehenden SET größer oder gleich der erforderlichen Anzahl von Geräten nach Typ ist. Sobald die Gesamt-SUM von UsablebyType in der vorübergehenden SET größer oder gleich der erforderlichen Anzahl von Geräten ist, schreitet das Verfahren zu Block 912 fort, um für diesen Router alle MONOCHROME-Schalter zu entfernen, die diesem Typ zugeordnet sind, die nicht der vorübergehenden SET hinzugefügt wurden. Somit schneidet Block 912 alle redundanten Schalter ab, sobald die Kombination eine ausreichende Anzahl von UsablebyType aufweist, um den Bedarf der Netzanordnung an Geräten dieses Typs zu erfüllen.
  • 10 zeigt den OVERLAY-Baum nach dem Abschluß des Filtern-nach-Router-Prozesses von 8A und 8B und 9. Es ist anzumerken, daß viele Schalter von den Routern eliminiert wurden, durch eine einfache Elimination von redundanten Schaltern oder über die Kombination von Schaltern zum Erfüllen des Bedarfs an dem Typ und Eliminieren der MONOCHROME-Schalter, die dem Typ zugeordnet sind, die nicht an der Kombination beteiligt sind. Beispielsweise wurde unter Router 2024 der Schalter 8100 sofort eliminiert, da der Schalter 8101 bereits alles bieten kann, was der Schalter 8100 bieten kann (d. h. ein VPN-Gateway) und mehr. Der Schalter 8101 wird bevorzugt und über den Schalter 8100 gehalten, da der Schalter 8101 auch eine zusätzliche NAS bietet. Als weiteres Beispiel wurden MONOCHROME-Schalter 8005 und 8006 eliminiert, da die LP2000R-Server unter dem Schalter 8004' logisch zusammengelegt werden können. Es ist in diesem Punkt anzumerken, daß es einige redundante Router gibt (d. h. jeder der Router 2011, 2012 und 2013 kann die zwei erforderlichen A500-Server bieten, und es gibt keinen Bedarf an allen drei dieser Router in dem OVERLAY-Baum). Das Abschneiden redundanter Router wird in dem Filtern-nach-Hub-Prozeß von 11A und 11B hierin durchgeführt.
  • 11A und 11B zeigen den Filtern-nach-Hub-Prozeß von Block 308 von 3 gemäß einem Ausführungsbeispiel der vorliegenden Erfindung. Allgemein gesagt zielen 11A und 11B darauf ab, entweder einen oder mehrere Router unter einem Hub zu entfernen (11A), oder Router unter einem Hub zu kombinieren, um den Bedarf an einem speziellen Gerätetyp zu erfüllen (11B). In 11A wird in Block 1102 festgestellt, ob es in dem OVERLAY-Baum mehr Router zum Verarbeiten gibt. Falls es mehr Router zum Verarbeiten gibt, schreitet das Verfahren zu Block 1104 fort, um das Verarbeiten der Router nacheinander zu beginnen. Somit ist in Block 1104 die vorgegebene Variable R auf den nächsten Router eingestellt, um das Verarbeiten der Routerkinder des Hubs einzuleiten, und die Liste Z ist eingestellt, um gleich allen anderen verbleibenden Routern des Hubs zu sein. Ferner ist das Flag SIMPLE(R) in dem SIMPLE-Array für den Router R gesetzt, falls alle Kinder des Routers R nur direkt verbundene Geräte und MONOCHROME-Schalter sind. Beispielsweise wäre mit Bezugnahme auf 10 das SIMPLE-Flag des Routers 2024 nicht gesetzt, da der Schalter 8101 kein MONOCHROME-Schalter ist. Alle anderen Router unter dem Hub 1101 sind jedoch berechtigt, daß ihre jeweiligen SIMPLE-Flags gesetzt sind. Die SIMPLE-Flags für die Router werden später in Verbindung mit 11B verwendet.
  • In Block 1106 wird festgestellt, ob es mehr Router in der Liste Z zum Verarbeiten gibt. Falls es in der Liste Z mehr Router zum Verarbeiten gibt, schreitet das Verfahren zu Block 1108 fort, wobei die vorübergehende Variable Y auf den nächsten Router in der Liste Z eingestellt ist. In Schritt 1110 wird festgestellt, ob der Router R oder der Router Y allen Bedarf an allen Gerätetypen erfüllen kann, die jeder hat. Falls nicht, kehrt das Verfahren zu Block 1106 zurück, um den nächsten Router in der Liste Z zu verarbeiten, da der Router Y in diesem Fall nicht sicher eliminiert werden kann. Falls andererseits entweder der Router R oder der Router Y allen Bedarf an allen Gerätetypen erfüllen können, die jeder hat, schreitet das Verfahren zu Block 1112 fort, um sicherzustellen, ob der Router Y eliminiert werden kann.
  • In Block 1112 wird festgestellt, daß der Router Y ein Kandidat für die Eliminierung von dem OVERLAY-Baum ist, falls beide der folgenden zwei Bedingungen erfüllt sind. Die erste Bedingung ist erfüllt, falls die Anzahl von Geräten, die in dem Router R zum Aufbauen der Netzanordnung frei verfügbar sind, größer oder gleich der Anzahl von Geräten ist, die zum Aufbauen der Netzanordnung in dem Router Y frei verfügbar sind. Die zweite Bedingung ist erfüllt, falls der Router R ein Duplikat aller Geräte und Schaltelemente in dem Router Y enthält. Falls beide Bedingungen erfüllt sind, schreitet der Prozeß von Block 1112 zu Block 1114 fort, indem der Router Y von dem OVERLAY- Netzwerk entfernt wird. Danach kehrt der Prozeß zu Block 1106 zurück, um den nächsten Router in der Liste Z zu verarbeiten. Falls andererseits beide Bedingungen nicht erfüllt sind, kehrt der Prozeß von Block 1112 zu Block 1106 zurück, um den nächsten Router in der Liste Z zu verarbeiten, ohne den Router Y zu eliminieren.
  • Falls alle Router in der Liste Z verarbeitet sind, kehrt das Verfahren zu Block 1102 zurück, um den nächsten Router unter dem Hub zu verarbeiten. Sobald alle Router unter dem Hub verarbeitet sind, schreitet das Verfahren zu 11B fort, wobei unnötige SIMPLE-Router abgeschnitten werden, um die Redundanz in dem OVERLAY-Baum zu reduzieren.
  • Somit bewirkt der Router 2011 mit Bezugnahme auf den beispielhaften OVERLAY-Baum von 10, daß die Router 2012 und 2013 von dem OVERLAY-Baum entfernt werden, da die Tests der Blöcke 1110 und 1112 erfüllt sind. Ferner bewirkt der Router 2021, daß die Router 2022 und 2023 von dem OVERLAY-Baum entfernt werden. Außerdem bewirkt der Router 2024 wiederum, daß der Router 2021, der früher der Gewinner-Router war, als der Router 2021 mit den Routern 2022 und 2023 verglichen wurde, von dem OVERLAY-Baum entfernt wird. Am Schluß verbleiben nur der Router 2011 und der Router 2024. Dies ist das in 12 gezeigte Ergebnis, das das gefilterte Baumtopologienetzwerk darstellt.
  • 11B stellt den Filtern-nach-Hub-Prozeß gemäß einem Ausführungsbeispiel der vorliegenden Erfindung dar, bei dem unnötige SIMPLE-Router abgeschnitten werden, um die Redundanz in dem OVERLAY-Baum zu reduzieren. 11B kann aufgerufen werden, falls nach dem Filtern-nach-Hub-Prozeß von 11A der OVERLAY-Baum beispielsweise nach wie vor fünf Router aufweist, von denen jeder einen A500-Server aufweist. Obwohl dies nicht die Situation des gewählten Beispiels ist, kann eine solche Situation bei einigen Baumtopologienetzwerken sehr wohl existieren. Da der Bedarf der Netzanordnung an A500-Servern zwei ist, und kein einzi ger Router bei diesem speziellen Beispiel zwei A500-Server liefern kann, gibt es einen Bedarf zum Eliminieren der redundanten Router.
  • Block 1150 ist ein Kennungs- oder Kommentarblock zum Anzeigen, daß der in 11B vorgenommene Prozeß das Abschneiden von SIMPLE-Routern umfaßt. Es wird daran erinnert, daß ein Router in Block 1104 von 11A als SIMPLE angesehen wird, wenn alle Kinder desselben nur direkt verbundene Geräte und MONOCHROME-Schalter sind (z. B. keine Nicht-MONOCHROME-Schalter-Kinder). In Block 1152 wird festgestellt, ob in dem OVERLAY-Baum irgendwelche SIMPLE-Router übrig sind, nachdem der Filterprozeß von 11A abgeschlossen ist. Falls es keine SIMPLE-Router gibt, endet der Prozeß von 11B, da bei diesem Ausführungsbeispiel nur SIMPLE-Router abgeschnitten werden.
  • Falls festgestellt wird, daß SIMPLE-Router übrig sind, um möglicherweise in Block 1152 abgeschnitten zu werden, wird der Satz LOSER auf Null initialisiert, und die temporäre Listen-Variable W ist auf alle Router eingestellt, die nach wie vor unter dem Hub sind. Ferner wird jeder Router oder alle Router, die benötigt werden, um die Lösung zu erreichen, mit dem Flag VITAL in Block 1154 gekennzeichnet. Beispielsweise wird der Router 2024 als VITAL markiert, da derselbe für die NAS und Backhaul benötigt wird.
  • Danach werden die Router in der Liste W nacheinander verarbeitet. In Block 1156 wird unter Verwendung der Logik in den Blöcken 1158 und 1160 festgestellt, ob es zusätzliche Router gibt, die in der Liste W verarbeitet werden sollen. Falls in Block 1156 festgestellt wird, daß es zusätzliche Router zum Verarbeiten gibt, schreitet das Verfahren zu Block 1158 fort, in dem die temporäre Variable R als der nächste Router in der Liste W eingestellt wird. In Block 1160 wird der Router R geprüft, um festzustellen, ob er sowohl SIMPLE als auch nicht VITAL ist. Falls nicht festgestellt wird, daß der Router sowohl SIMPLE als auch nicht VITAL ist (d. h. der Test von Block 1156 versagt), kehrt das Verfahren zu Block 1156 zurück, um den nächsten Router in der Liste W zu verarbeiten.
  • Falls andererseits festgestellt wird, daß der Router R sowohl SIMPLE als auch nicht VITAL ist, schreitet das Verfahren zu Block 1162 fort, während der Parameter LOSSES(R) eingestellt wird, um der Zählwert aller Router in der Liste W zu sein, die sowohl die Bandbreite haben, die größer ist als der ungünstigste Fall und mehr Geräte als der Router R aufweisen. Die Variable LOSER wird gleich dem Router mit dem bisher größten Wert für LÖSSES eingestellt. Während die Router von Liste W abwechselnd verarbeitet werden, stellen die Blöcke 1160 und 1162 im Wesentlichen den Router fest, der am wenigsten anzubieten hat, und markieren diesen Router als den LOSER, der zu einem späteren Zeitpunkt entfernt werden soll. Danach kehrt das Verfahren zu Block 1156 zurück, um andere Router in der Liste W zu verarbeiten.
  • Falls alle Router in der Liste W durch die Blöcke 1158, 1160 und/oder 1162 verarbeitet wurden, schreitet das Verfahren von Block 1156 zu Block 1166 fort, um festzustellen, ob es in der Tat einen LOSER gibt. Falls es keinen LOSER gibt (d. h. LOSER = Null), kann kein Router eliminiert werden, und somit endet der Prozeß bei Block 1164. Falls andererseits Block 1566 bestimmt, daß es in der Tat einen LOSER gibt, wird der Router, der durch LOSER dargestellt ist, in Block 1168 von dem OVERLAY-Baum entfernt. Danach kehrt das Verfahren zu Block 1152 zurück, um den OVERLAY-Baum erneut rekursiv zu verarbeiten, um zu bestimmen, ob zusätzliches Abschneiden möglich ist.
  • Sobald alle SIMPLE-Router verarbeitet sind, endet das Verfahren bei Block 1164. In dem Kontext des vorliegenden Beispiels führt der Prozeß von 11B dazu, daß zwei Router übrigbleiben, jeder mit einem A500-Server. Die anderen drei Router mit jeweils einem A500-Server werden abgeschnitten, wobei nur die erforderlichen 17 Geräte und vier Schalter übrig bleiben.
  • Wie aus dem Vorhergehenden ersichtlich ist, filtert die Erfindung effektiv das ursprüngliche Baumtopologienetzwerk und erhält ein gefiltertes Baumtopologienetzwerk (FTTN), das nach wie vor die optimale Lösung oder zumindest eine Lösung, die im wesentlich gleich der besten Lösung ist, die von dem ungefilterten Baumtopologienetzwerk erhalten werden kann. Das resultierende OVERLAY-Bild hat jedoch weit weniger Router, Schalter und Geräte. In vielen Fällen ist keine weitere Verarbeitung notwendig, da das gefilterte Baumtopologienetzwert selbst die Lösung ist (wie in dem Fall von 12 hierin).
  • Bei einem Ausführungsbeispiel wird die hierin offenbarte bedarfsbasierte Filtertechnik in Verbindung mit einer innovativen Technik zum Auswählen von Geräten verwendet. Eine solche Kombination ermöglicht es, daß eine hocheffiziente Netzanordnung von einem gegebenen Baumtopologienetzwerk ausgewählt wird, ohne übermäßig viel Zeit oder unnötige Rechenressourcen zu verbrauchen. Selbst ohne das Verwenden der Geräteauswahltechnik, die in der oben erwähnten mitanhängigen Patentanmeldung offenbart wurde, macht die bedarfsbasierte Filtertechnik, die hierin offenbart ist, jede Geräteauswahltechnik effizienter, da es weniger Router, Schalter und Geräte zu bewerten gibt. Dies liegt daran, daß die Geräteauswahlverfahren normalerweise eine Berechnung erfordern, die in Proportion zum Quadrat oder der dritten Potenz der Anzahl von Geräten variiert, die betrachtet werden. Falls somit die Anzahl von Geräten, die betrachtet werden, durch die Verwendung des bedarfsbasierten Filterverfahrens um einen Faktor von 10 reduziert werden kann, bevor irgendein Geräteauswahlverfahren angelegt wird, kann die Berechnung, die für den Geräteauswahlalgorithmus erforderlich ist, um einen Faktor von 100–1.000 reduziert werden.

Claims (22)

  1. Verfahren zum Filtern einer Baumtopologienetzwerkspezifikation, ansprechend auf eine logische Spezifikation (402) einer Netzanordnung und eines Kommunikationsmodells für die Netzanordnung, um eine gefilterte Baumtopologienetzwerkspezifikation zu erhalten, wobei die gefilterte Baumtopologienetzwerkspezifikation bezüglich der Baumtopologienetzwerkspezifikation weniger Geräte aufweist, wobei Geräte, die zum Aufbauen der Netzanordnung benötigt werden, in der gefilterten Baumtopologienetzwerkspezifikation verfügbar sind, wobei das Verfahren folgenden Schritt umfaßt: Entfernen eines ersten Satzes von Geräten und eines ersten Satzes von Schaltelementen von der Baumtopologienetzwerkspezifikation, beginnend an der untersten Ebene der Baumtopologienetzwerkspezifikation und vordringend zu dem Rootknoten der Baumtopologienetzwerkspezifikation, wobei jedes Gerät in dem ersten Satz von Geräten entweder ein redundantes Gerät, ein Gerät mit einem Typ, der von der Netzanordnung nicht benötigt wird, oder ein Gerät, das zum Aufbauen der Netzanordnung nicht verfügbar ist, darstellt, wobei jedes Schaltelement in dem ersten Satz von Schaltelementen ein Schaltelement darstellt, dessen Kindgeräte alle Mitglieder des ersten Satzes von Geräten sind.
  2. Verfahren gemäß Anspruch 1, bei dem das Entfernen folgenden Schritt umfaßt: Durchführen von Filtern-nach-Gerät an der Baumtopologienetzwerkspezifikation, um an der untersten Ebene der Baumtopologienetzwerkspezifikation einen zweiten Satz von Geräten abzuschneiden, wobei jedes Gerät in dem zweiten Satz von Geräten entweder ein Gerät eines Typs aufweist, der von der Netzanordnung nicht benötigt wird, oder ein Gerät, das zum Aufbauen der Netzanordnung nicht verfügbar ist, darstellt, wodurch eine Nach-Filtern-nach-Gerät-Baumtopologienetzwerk-spezifikation erhalten wird.
  3. Verfahren gemäß Anspruch 2, bei dem das Entfernen ferner folgenden Schritt umfaßt: Durchführen von Filtern-nach-Schaltelement an Schaltelementen der Nach-Filtern-nach-Gerät-Baumtopologienetzwerkspezifikation, um an jedem Schaltelement der Nach-Filtern-nach-Gerät-Baumtopologienetzwerkspezifikation direkt verbundene redundante Geräte abzuschneiden, wodurch eine Nach-Filtern-nach-Schaltelement-Baumtopologienetzwerkspezifikation erhalten wird.
  4. Verfahren gemäß Anspruch 3, bei dem das Entfernen ferner folgenden Schritt umfaßt: Durchführen von Filtern-nach-Router an Routern der Nach-Filtern-nach-Schaltelement-Baumtopologienetzwerkspezifikation zum Abschneiden redundanter Schalter an jedem Router der Nach-Filtern-nach-Schaltelement-Baumtopologienetzwerkspezifikation, wodurch eine Nach-Filtern-nach-Router-Baumtopologienetzwerkspezifikation erhalten wird.
  5. Verfahren gemäß Anspruch 4, bei dem das Durchführen von Filtern-nach-Router ferner das logische Kombinieren von zwei Schaltern umfaßt, die einem Router, der betrachtet wird, zugeordnet sind, falls beide der zwei Schalter nur zwei der Schaltergeräte eines bestimmten Typs aufweisen und keiner der beiden Schalter, wenn sie einzeln berücksichtigt werden, eine ausreichende Anzahl von Geräten des bestimmten Typs besitzt, um den Bedarf der Netzanordnung an dem bestimmten Typ zu erfüllen.
  6. Verfahren gemäß Anspruch 4 oder 5, bei das Entfernen ferner folgenden Schritt umfaßt: Durchführen von Filtern-nach-Hub an einem Hub der Nach-Filtern-nach-Router-Baumtopologienetzwerkspezifikation, um redundante Router abzuschneiden, wodurch die gefilterte Baumtopologienetzwerkspezifikation erhalten wird.
  7. Verfahren gemäß Anspruch 6, bei dem ein erster Router als redundant angesehen wird gegenüber einem zweiten Router, falls der zweite Router unter dem zweiten Router zumindest alle Geräte aufweist, die der erste Router unter dem ersten Router aufweist.
  8. Herstellungsartikel, der ein Programmspeichermedium umfaßt, das computerlesbare Codes in demselben eingebaut hat, wobei die computerlesbaren Codes konfiguriert sind zum Filtern einer Baumtopologienetzwerkspezifikation, ansprechend auf eine logische Spezifikation einer Netzanordnung und eines Kommunikationsmodells für die Netzanordnung, um eine gefilterte Baumtopologienetzwerkspezifikation zu erhalten, wobei die gefilterte Baumtopologienetzwerkspezifikation weniger Geräte aufweist bezüglich der Baumtopologienetzwerkspezifikation, wobei Geräte, die zum Aufbauen der Netzanordnung benötigt werden, in der gefilterten Baumtopologienetzwerkspezifikation verfügbar sind, wobei die computerlesbaren Codes folgendes Merkmal umfassen: computerlesbare Codes zum Entfernen eines ersten Satzes von Geräten und eines ersten Satzes von Schaltelementen von der Baumtopologienetzwerkspezifikation, beginnend an der untersten Ebene der Baumtopologienetzwerkspezifikation und vordringend zu dem Rootknoten der Baumtopologienetzwerkspezifikation, wobei jedes Gerät in dem ersten Satz von Geräten entweder ein re dundantes Gerät, ein Gerät mit einem Typ, der von der Netzanordnung nicht benötigt wird oder ein Gerät, das zum Aufbauen der Netzanordnung nicht verfügbar ist, darstellt, wobei jedes Schaltelement in dem ersten Satz von Schaltelementen ein Schaltelement darstellt, dessen Kindgeräte alle Mitglieder des ersten Satzes von Geräten sind.
  9. Herstellungsartikel gemäß Anspruch 8, bei dem computerlesbare Codes, die das Entfernen implementieren, folgendes Merkmal umfassen: computerlesbare Codes zum Durchführen von Filtern-nach-Gerät auf der Baumtopologienetzwerkspezifikation, um an der untersten Ebene der Baumtopologienetzwerkspezifikation einen zweiten Satz von Geräten abzuschneiden, wobei jedes Gerät in dem zweiten Satz von Geräten entweder ein Gerät mit einem Typ, der von der Netzanordnung nicht benötigt wird oder ein Gerät, das zum Aufbauen der Netzanordnung nicht verfügbar ist, darstellt, wodurch eine Nach-Filtern-nach-Gerät-Baumtopologienetzwerkspezifikation erhalten wird.
  10. Herstellungsartikel gemäß Anspruch 9, bei dem die computerlesbaren Codes, die das Entfernen implementieren, ferner folgendes Merkmal umfassen: computerlesbare Codes zum Durchführen von Filtern-nach-Schaltelement an Schaltelementen der Nach-Filtern-nach-Gerät-Baumtopologienetzwerkspezifikation, um an jedem Schaltelement der Nach-Filtern-nach-Gerät-Baumtopologienetzwerkspezifikation direkt verbundene redundante Geräte abzuschneiden, wodurch eine Nach-Filtern-nach-Schaltelement-Baumtopologienetzwerkspezifikation erhalten wird.
  11. Herstellungsartikel gemäß Anspruch 10, bei dem die computerlesbaren Codes, die das Entfernen implementieren, ferner folgendes Merkmal umfassen: computerlesbare Codes zum Durchführen von Filtern-nach-Router an Routern der Nach-Filtern-nach-Schaltelement-Baumtopologienetzwerkspezifikation, um an jedem Router der Nach-Filtern-nach-Schaltelement-Baumtopologienetzwerkspezifikation redundante Schalter abzuschneiden, wodurch eine Nach-Filtern-nach-Router-Baumtopologienetzwerkspezifikation erhalten wird.
  12. Herstellungsartikel gemäß Anspruch 8, bei dem computerlesbare Codes zum Durchführen von Filtern-nach-Router ferner computerlesbare Codes umfassen, zum logischen Kombinieren von zwei Schaltern, die einem Router, der betrachtet wird, zugeordnet sind, falls beide der Schalter unter den beiden Schaltern nur Geräte eines bestimmten Typs aufweisen und keiner der beiden Schalter, wenn sie einzeln betrachtet werden, eine ausreichende Anzahl von Geräten des bestimmten Typs besitzt, um den Bedarf der Netzanordnung an dem gegebenen Typ zu erfüllen.
  13. Herstellungsartikel gemäß Anspruch 11 oder 12, bei dem die computerlesbaren Codes, die das Entfernen implementieren, ferner folgendes Merkmal umfassen: computerlesbare Codes zum Durchführen von Filtern-nach-Hub an einem Hub der Nach-Filtern-nach-Router-Baumtopologienetzwerkspezifikation zum Abschneiden redundanter Router, wodurch die gefilterte Baumtopologienetzwerkspezifikation erhalten wird.
  14. Verfahren zum Filtern einer Baumtopologienetzwerkspezifikation, ansprechend auf eine logische Spezifikation einer Netzanordnung und eines Kommunikationsmodells für die Netzanordnung, um eine gefilterte Baumtopolo gienetzwerkspezifikation zu erhalten, wobei die gefilterte Baumtopologienetzwerkspezifikation bezüglich der Baumtopologienetzwerkspezifikation weniger Geräte aufweist, wobei Geräte, die zum Aufbauen der Netzanordnung benötigt werden, in der gefilterten Baumtopologienetzwerkspezifikation verfügbar sind, wobei das Verfahren folgende Schritte umfaßt: Durchführen von Filtern-nach-Gerät an der Baumtopologienetzwerkspezifikation, um an der untersten Ebene der Baumtopologienetzwerkspezifikation einen ersten Satz von Geräten abzuschneiden, wobei jedes Gerät in dem ersten Satz von Geräten entweder ein Gerät eines Typs aufweist, der von der Netzanordnung nicht benötigt wird, oder ein Gerät, das zum Aufbauen der Netzanordnung nicht verfügbar ist, darstellt, wodurch eine Nach-Filtern-nach-Gerät-Baumtopologienetzwerk-spezifikation erhalten wird; Durchführen von Filtern-nach-Schaltelement an Schaltelementen der Nach-Filtern-nach-Gerät-Baumtopologienetzwerkspezifikation, um an jedem Schaltelement der Nach-Filtern-nach-Gerät-Baumtopologienetzwerkspezifikation direkt verbundene redundante Geräte abzuschneiden, wodurch eine Nach-Filtern-nach-Schaltelement-Baumtopologienetzwerkspezifikation erhalten wird, wobei zumindest ein Schaltelement entweder einen Schalter, einen Router oder einen Hub darstellt; Durchführen von Filtern-nach-Router an Routern der Nach-Filtern-nach-Schaltelement-Baumtopologienetzwerkspezifikation zum Abschneiden redundanter Schalter an jedem Router der Nach-Filtern-nach-Schaltelement-Baumtopologienetzwerkspezifikation, wodurch eine Nach-Filtern-nach-Router-Baumtopologienetzwerkspezifikation erhalten wird; Durchführen von Filtern-nach-Hub an einem Hub der Nach-Filtern-nach-Router-Baumtopologienetzwerkspezifikation, um redundante Router abzuschneiden, wodurch die gefilterte Baumtopologienetzwerkspezifikation erhalten wird.
  15. Verfahren gemäß Anspruch 14, bei dem das Durchführen von Filtern-nach-Router ferner das logische Kombinieren von zwei Schaltern umfaßt, die einem Router, der betrachtet wird, zugeordnet sind, falls bei den zwei Schaltern nur zwei der Schaltergeräte eines bestimmten Typs aufweisen und keiner der beiden Schalter, wenn sie einzeln berücksichtigt werden, eine ausreichende Anzahl von Geräten des bestimmten Typs besitzt, um den Bedarf der Netzanordnung an dem bestimmten Typ zu erfüllen.
  16. Anordnung zum Erzeugen einer Netzanordnung, die einer ausgestatteten logischen Spezifikation und einem ausgestatteten Kommunikationsmodell für die Netzanordnung entspricht, wobei die logische Spezifikation Typen von Geräten spezifiziert, die von der Netzanordnung benötigt werden, und eine Anzahl von Geräten von jedem der Typen von Geräten, die von der Netzanordnung benötigt werden, wobei das Kommunikationsmodell die Bandbreitenausnutzung jedes Typs von Gerät in der Netzanordnung spezifiziert, wobei die Anordnung folgende Merkmale umfaßt: ein Baumtopologienetzwerk mit Geräten und Schaltelementen in demselben, die in einer Baumtopologie angeordnet sind; und eine Rechenvorrichtung, die computerlesbare Codes zum Filtern einer Baumtopologienetzwerkspezifikation des Baumtopologienetzwerks ausführt, ansprechend auf die logische Spezifikation und das Kommunikationsmodell für die Netzanordnung, um eine gefilterte Baumtopolo gienetzwerkspezifikation zu erhalten, wobei die gefilterte Baumtopologienetzwerkspezifikation bezüglich der Baumtopologienetzwerkspezifikation weniger Geräte aufweist, wobei Geräte, die zum Aufbauen der Netzanordnung benötigt werden, in der gefilterten Baumtopologienetzwerkspezifikation verfügbar sind, wobei computerlesbare Codes für das Filtern computerlesbare Codes zum Entfernen eines ersten Satzes von Geräten und eines ersten Satzes von Schaltelementen von der Baumtopologienetzwerkspezifikation umfassen, beginnend an der untersten Ebene der Topologienetzwerkspezifikation und vordringend zu dem Rootknoten der Baumtopologienetzwerkspezifikation, wobei jedes Gerät in dem ersten Satz von Geräten entweder ein redundantes Gerät, ein Gerät mit einem Typ, der von der Netzanordnung nicht benötigt wird oder ein Gerät, das zum Aufbauen der Netzanordnung nicht verfügbar ist, darstellt, wobei jedes Schaltelement in dem ersten Satz von Schaltelementen ein Schaltelement darstellt, dessen Kindgeräte alle Mitglieder des ersten Satzes von Geräten sind.
  17. Anordnung gemäß Anspruch 16, bei der computerlesbare Codes, die das Entfernen implementieren, folgendes Merkmal umfassen: computerlesbare Codes zum Durchführen von Filtern-nach-Gerät auf der Baumtopologienetzwerkspezifikation, um an der untersten Ebene der Baumtopologienetzwerkspezifikation einen zweiten Satz von Geräten abzuschneiden, wobei jedes Gerät in dem zweiten Satz von Geräten entweder ein Gerät mit einem Typ, der von der Netzanordnung nicht benötigt wird oder ein Gerät, das zum Aufbauen der Netzanordnung nicht verfügbar ist, darstellt, wodurch eine Nach-Filtern-nach-Gerät-Baumtopologienetzwerkspezifikation erhalten wird
  18. Anordnung gemäß Anspruch 17, bei der die computerlesbaren Codes, die das Entfernen implementieren, ferner folgendes Merkmal umfassen: computerlesbare Codes zum Durchführen von Filtern-nach-Schaltelement an Schaltelementen der Nach-Filtern-nach-Gerät-Baumtopologienetzwerkspezifikation, um an jedem Schaltelement der Nach-Filtern-nach-Gerät-Baumtopologienetzwerkspezifikation direkt verbundene redundante Geräte abzuschneiden, wodurch eine Nach-Filtern-nach-Schaltelement-Baumtopologienetzwerkspezifikation erhalten wird.
  19. Anordnung gemäß Anspruch 18, bei dem die computerlesbaren Codes, die das Entfernen implementieren, ferner folgendes Merkmal umfassen: computerlesbare Codes zum Durchführen von Filtern-nach-Router an Routern der Nach-Filtern-nach-Schaltelement-Baumtopologienetzwerkspezifikation, um an jedem Router der Nach-Filtern-nach-Schaltelement-Baumtopologienetzwerkspezifikation redundante Schalter abzuschneiden, wodurch eine Nach-Filtern-nach-Router-Baumtopologienetzwerkspezifikation erhalten wird.
  20. Anordnung gemäß Anspruch 19, bei der computerlesbare Codes zum Durchführen von Filtern-nach-Router das logische Kombinieren von zwei Schaltern umfassen, die einem Router, der betrachtet wird, zugeordnet sind, falls beide der Schalter unter den beiden Schaltern nur Geräte eines bestimmten Typs aufweisen und keiner der beiden Schalter, wenn sie einzeln betrachtet werden, eine ausreichende Anzahl von Geräten des bestimmten Typs besitzt, um den Bedarf der Netzanordnung an dem gegebenen Typ zu erfüllen.
  21. Anordnung gemäß Anspruch 19 oder 20, bei der die computerlesbaren Codes, die das Entfernen implementieren, ferner folgendes Merkmal umfassen: computerlesbare Codes zum Durchführen von Filtern-nach-Hub an einem Hub der Nach-Filtern-nach-Router-Baumtopologienetzwerkspezifikation zum Abschneiden redundanter Router, wodurch die gefilterte Baumtopologienetzwerkspezifikation erhalten wird.
  22. Verfahren gemäß einem der Ansprüche 1 bis 7, 14 oder 15, bei dem das Verfahren ein computerimplementiertes Verfahren ist.
DE10341565A 2002-12-20 2003-09-09 Bedarfsbasiertes Filtern für eine schnelle Auswahl von Geräten in einem Baumtopologie-Netzwerk Expired - Fee Related DE10341565B4 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/327335 2002-12-20
US10/327,335 US7313101B2 (en) 2002-12-20 2002-12-20 Need-based filtering for rapid selection of devices in a tree topology network

Publications (2)

Publication Number Publication Date
DE10341565A1 DE10341565A1 (de) 2004-07-15
DE10341565B4 true DE10341565B4 (de) 2008-11-20

Family

ID=29780455

Family Applications (1)

Application Number Title Priority Date Filing Date
DE10341565A Expired - Fee Related DE10341565B4 (de) 2002-12-20 2003-09-09 Bedarfsbasiertes Filtern für eine schnelle Auswahl von Geräten in einem Baumtopologie-Netzwerk

Country Status (4)

Country Link
US (1) US7313101B2 (de)
JP (1) JP2004208296A (de)
DE (1) DE10341565B4 (de)
GB (1) GB2396992B (de)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7403998B2 (en) * 2003-04-10 2008-07-22 International Business Machines Corporation Estimating network management bandwidth
US7865582B2 (en) * 2004-03-24 2011-01-04 Hewlett-Packard Development Company, L.P. System and method for assigning an application component to a computing resource
US7861247B1 (en) 2004-03-24 2010-12-28 Hewlett-Packard Development Company, L.P. Assigning resources to an application component by taking into account an objective function with hard and soft constraints
US7912955B1 (en) * 2007-04-24 2011-03-22 Hewlett-Packard Development Company, L.P. Model-based provisioning of resources
US8065676B1 (en) 2007-04-24 2011-11-22 Hewlett-Packard Development Company, L.P. Automated provisioning of virtual machines for a virtual machine buffer pool and production pool
US8141090B1 (en) 2007-04-24 2012-03-20 Hewlett-Packard Development Company, L.P. Automated model-based provisioning of resources
CN102144374B (zh) * 2009-01-21 2014-05-21 株式会社日立制作所 省电网络管理服务器、网络系统和电力供给判断方法
US9141650B1 (en) * 2011-12-06 2015-09-22 The Boeing Company Methods and systems for filtering tree node data to determine part and assembly relationships
CN110263628B (zh) * 2019-05-09 2021-11-23 杭州飞步科技有限公司 障碍物检测方法、装置、电子设备以及存储介质
CN113315650B (zh) * 2021-04-26 2022-05-27 新华三大数据技术有限公司 一种节点布局方法及装置

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6105018A (en) * 1998-03-26 2000-08-15 Oracle Corporation Minimum leaf spanning tree
US6134599A (en) * 1998-04-18 2000-10-17 Sun Microsystems, Inc. System and method for organizing devices in a network into a tree using suitability values

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB9614927D0 (en) * 1996-07-16 1996-09-04 British Telecomm Arranging data signals defining a network
US6032194A (en) * 1997-12-24 2000-02-29 Cisco Technology, Inc. Method and apparatus for rapidly reconfiguring computer networks
JP2000049779A (ja) * 1998-07-31 2000-02-18 Nippon Telegr & Teleph Corp <Ntt> ディジタル通信ネットワーク上のエンドノードによるマルチキャスト情報配布方法
JP3970448B2 (ja) * 1998-12-21 2007-09-05 株式会社日立製作所 情報中継方法および装置
JP4156112B2 (ja) * 1998-12-25 2008-09-24 富士通株式会社 高速検索方法及び高速検索装置
US6496485B1 (en) * 1999-06-14 2002-12-17 Hewlett-Packard Company Method of loop breaking tree indentification in a system bus hierarcy
US6614789B1 (en) * 1999-12-29 2003-09-02 Nasser Yazdani Method of and apparatus for matching strings of different lengths
DE60135127D1 (de) * 2000-05-24 2008-09-11 Voltaire Ltd Gefilterte kommunikation von anwendung zu anwendung
JP3668130B2 (ja) * 2000-12-26 2005-07-06 株式会社東芝 マルチキャスト通信装置及びマルチキャスト通信方法
US6839541B2 (en) * 2001-12-04 2005-01-04 Illinois Institute Of Technology Technique for establishing a virtual backbone in an ad hoc wireless network
US7088674B2 (en) 2001-12-27 2006-08-08 Alcatel Canada Inc. Method and apparatus for checking continuity of leaf-to-root VLAN connections
US7310343B2 (en) * 2002-12-20 2007-12-18 Hewlett-Packard Development Company, L.P. Systems and methods for rapid selection of devices in a tree topology network

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6105018A (en) * 1998-03-26 2000-08-15 Oracle Corporation Minimum leaf spanning tree
US6134599A (en) * 1998-04-18 2000-10-17 Sun Microsystems, Inc. System and method for organizing devices in a network into a tree using suitability values

Also Published As

Publication number Publication date
GB2396992A (en) 2004-07-07
DE10341565A1 (de) 2004-07-15
GB0328169D0 (en) 2004-01-07
GB2396992B (en) 2005-11-09
US20040120330A1 (en) 2004-06-24
US7313101B2 (en) 2007-12-25
JP2004208296A (ja) 2004-07-22

Similar Documents

Publication Publication Date Title
DE10342310A1 (de) Systeme und Verfahren zur schnellen Auswahl von Vorrichtungen in einem Baumtopologienetz
DE69533535T2 (de) Verfahren zur effizienten aggregation von verbindungsmetriken
DE69937248T2 (de) Routers und verfahren für optimale leitwegtabellenkomprimierung
EP1223709B1 (de) Verfahren und Vorrichtung zum rechnergestützten Überwachen eines Telekommunikationsnetzes
DE69734927T2 (de) Digitalsignalverarbeitung
DE102020113347A1 (de) Ausführung von containerisierten prozessen innerhalb der beschränkungen der verfügbaren host-knoten
DE10341565B4 (de) Bedarfsbasiertes Filtern für eine schnelle Auswahl von Geräten in einem Baumtopologie-Netzwerk
DE602004005242T2 (de) Zentralisierte konfiguration von verwalteten objekten des link-scope-typs in netzwerken, die auf dem internet-protokoll (ip) basieren
DE4302228A1 (de) Verfahren zur Zuweisung von Frequenzen zu Basisstationen eines Mobilfunknetzes
DE19681678B4 (de) Telekommunikationsnetz-Verwaltungssystem
DE102014014429A1 (de) Verfahren zur Begrenzung einer Anzahl von Routern in einem vermaschten Netzwerk
DE19719170C2 (de) Verfahren und Werkzeug zum Herstellen eines Telekommunikationsnetzes
DE60220747T2 (de) Verfahren zur Übertragungswegeauswahl und Kommunikationssnetz dafür
DE602004005405T2 (de) Verfahren zur Verkehrsplanung eines Virtual Private LAN Dienstes (VPLS)
DE602004010864T2 (de) Gerät und Verfahren zur Verkehrsverteilungssteuerung
EP1624614B1 (de) Automatische Planung von Netzwerkkonfigurationen
DE102022101070A1 (de) Flexible bereitstellung von netzwerk-slices in einem mobilfunknetz durch eine netzwerkexpositionsfunktion (nef)
DE60118802T2 (de) Skalierbarer, modulärer, stringent blockierungsfreier elektro-optischer querverbindungskern
DE60037160T2 (de) Verfahren zur Fernabfrage von SNMP-Agenten
DE60036270T2 (de) Frequenzliste aufgebaut unter Verwendung einer mehrfarch von basis Frequenzen und Speicherung binärer Daten zur Verwendung in einer GSM Anordnung
DE102004046858A1 (de) Verfahren zur Bestimmung eines leitenden Teilnehmers in einem Netzwerk
DE60209257T2 (de) Verfahren zur planung oder zur bereitstellung in datenübertragungsnetzwerken
DE60218631T2 (de) Status - basierende Verfahrensverwaltungsmethode für ein Kommunikationstransportnetz
DE69925599T2 (de) Kommunikationsnetz oder ip-netz mit einem paketklassifizierer
DE1487623A1 (de) Schaltnetzwerk fuer Fernsprechvermittlungen

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
8364 No opposition during term of opposition
R119 Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee

Effective date: 20140401