DE10247164A1 - Verfahren und Vorrichtung für eine Netzwerkbandbreitenoptimierung - Google Patents
Verfahren und Vorrichtung für eine NetzwerkbandbreitenoptimierungInfo
- Publication number
- DE10247164A1 DE10247164A1 DE10247164A DE10247164A DE10247164A1 DE 10247164 A1 DE10247164 A1 DE 10247164A1 DE 10247164 A DE10247164 A DE 10247164A DE 10247164 A DE10247164 A DE 10247164A DE 10247164 A1 DE10247164 A1 DE 10247164A1
- Authority
- DE
- Germany
- Prior art keywords
- network
- bandwidth
- application
- networks
- quality
- 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.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/50—Network service management, e.g. ensuring proper service fulfilment according to agreements
- H04L41/5003—Managing SLA; Interaction between SLA and QoS
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0896—Bandwidth or capacity management, i.e. automatically increasing or decreasing capacities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04Q—SELECTING
- H04Q3/00—Selecting arrangements
- H04Q3/0016—Arrangements providing connection between exchanges
- H04Q3/0062—Provisions for network management
- H04Q3/0066—Bandwidth allocation or management
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/50—Network service management, e.g. ensuring proper service fulfilment according to agreements
- H04L41/508—Network service management, e.g. ensuring proper service fulfilment according to agreements based on type of value added network service under agreement
- H04L41/5087—Network service management, e.g. ensuring proper service fulfilment according to agreements based on type of value added network service under agreement wherein the managed service relates to voice services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/50—Network service management, e.g. ensuring proper service fulfilment according to agreements
- H04L41/508—Network service management, e.g. ensuring proper service fulfilment according to agreements based on type of value added network service under agreement
- H04L41/509—Network service management, e.g. ensuring proper service fulfilment according to agreements based on type of value added network service under agreement wherein the managed service relates to media content delivery, e.g. audio, video or TV
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
Es wird ein Verfahren für eine Netzwerkbandbreitenoptimierung offenbart. Das Verfahren weist das Empfangen einer Anforderung von einer Anwendung auf, um einen Netzwerkdienst in einem Netzwerk an die Anwendung zu liefern. Das Verfahren weist ferner das automatische Zuweisen eines Kanals zu der Anwendung in dem Netzwerk auf, um einen Netzwerkdienst, ansprechend auf einen Dienstqualitätsparameter, zu liefern, falls ausreichend Bandbreite in dem Netzwerk existiert.
Description
- Die vorliegende Erfindung bezieht sich allgemein auf Telekommunikationen und insbesondere auf eine Netzwerkbandbreitenoptimierung.
- Viele Änderungen bei der Zwischen-Personalen- und Zwischen- Organisatorischen-Kommunikation wurden durch Entwicklungen bei einer Vielzahl von Protokollen und der Multimediakommunikationstechnik ermöglicht. Die Multimediakommunikation ermöglicht zum Beispiel, daß Text, Stimme und Video alleine oder in Verbindung für eine Kommunikation mit einem breiten Publikum verwendet wird. Neueste Entwicklungen haben sich auf den Transport und das Schalten von traditionellen Stimmdiensten über Internetprotokollnetzwerke (IP- Netzwerke) spezialisiert. Es wurden einige vereinte Dienste, wie zum Beispiel integrierte Stimm- und Daten-, E-Mail und Web-aktivierte Rufzentrum-Anwendungen, eingeführt.
- Leider leiden herkömmliche Systeme und Vorrichtungen zum Verarbeiten von Anforderungen durch Anwendungen für Netzwerkdienste üblicherweise unter Nachteilen. Diese Systeme berücksichtigen üblicherweise zum Beispiel Personalcomputer (PC)-Netzwerkanforderungen durch eine Anwendung auf dem PC derart, als ob dieselben die gleichen Eigenschaften aufweisen. Daher liefern diese Systeme ohne Berücksichtigung des Typs der Anforderungen, der Bandbreitensuffizienz oder der Fragmentierung üblicherweise einen sofortigen Netzwerkzugriff für alle Anwendungen, die einen Dienst anfordern. Diese Systeme führen somit zum Gewähren von Netzwerkzugriff für Anwendungen ohne ausreichende Bandbreiten für die Anwendung, um richtig zu arbeiten. Dieses Szenario führt zu einer schlechten Verbindungsqualität des Dienstes für einen Benutzer des PCs. Ferner reduziert dieses Szenario die Bandbreite, die für andere Anwendungen verfügbar ist. Wenn diese Systeme Zugriff zu einer großen Anzahl von Anforderungen von Anwendungen gewähren, müssen diese Anwendungen um Bandbreite kämpfen, was üblicherweise zu fragmentierten Bandbreiten über eines oder mehrere Netzwerke und somit zu einer unzureichenden Bandbreite für alle Anforderer führt. Zusätzlich dazu liefern diese Systeme keinen Netzwerkzugriff basierend auf einer Priorität oder der kritischen Beschaffenheit der Operation, die von einem Benutzer erwünscht sein kann. Daher sind diese Systeme vielleicht nicht in der Lage, einen Netzwerkzugriff für jene Anwendungen zu garantieren, die als kritisch betrachtet werden, und umgekehrt können jene Anwendungen, die nicht kritisch sind, die verfügbare Systembandbreite fragmentieren und tragen.
- Es ist die Aufgabe der vorliegenden Erfindung, ein Verfahren, ein System und eine Netzwerkbandbreiten- Optimierungsanwendung mit verbesserten Charakteristika zu schaffen.
- Diese Aufgabe wird durch ein Verfahren gemäß Anspruch 1, eine Netzwerkbandbreiten-Optimierungsanwendung gemäß Anspruch 8 und ein System gemäß Anspruch 16 gelöst.
- Ein Aspekt der Erfindung ist ein Netzwerkbandbreiten- Optimierungsverfahren. Das Verfahren weist das Empfangen einer Anforderung von einer Anwendung auf, um dieselbe in einem Netzwerk an den Anwendungsnetzwerkdienst zu liefern. Das Verfahren weist ferner das automatische Zuweisen eines Kanals zu der Anwendung in dem Netzwerk auf, um einen Netzwerkdienst ansprechend auf eine Qualität eines Dienstparameters zu liefern, falls eine ausreichende Bandbreite in dem Netzwerk existiert.
- Ein anderer Aspekt der Erfindung ist eine Netzwerkbandbreiten-Optimierungsanwendung, die ein computerlesbares Medium und eine Anwendungssoftware aufweist, die auf dem computerlesbaren Medium vorliegen. Die Anwendungssoftware ist wirksam, um eine Anforderung von einer Anwendung zu empfangen, um den Anwendungsnetzwerkdienst in einem Netzwerk zu liefern. Die Anwendungssoftware ist ferner wirksam, um der Anwendung automatisch einen Kanal in dem Netzwerk zuzuweisen, um einen Netzwerkdienst ansprechend auf einen Dienstqualitätsparameter zu liefern, falls eine ausreichende Bandbreite in dem Netzwerk existiert.
- Ein weiterer Aspekt der Erfindung ist ein System zum Optimieren einer Netzwerkbandbreite, das eine Einrichtung aufweist, die wirksam ist, um mit einem Netzwerk und einem Netzwerkverwalter verbunden zu sein, die auf der Einrichtung vorliegen. Der Netzwerkverwalter ist wirksam, um eine Anforderung von einer Anwendung zu empfangen, um den Anwendungsnetzwerkdienst in dem Netzwerk zu liefern. Der Netzwerkverwalter ist ferner wirksam, um der Anwendung automatisch einen Kanal in dem Netzwerk zuzuweisen, um einen Netzwerkdienst ansprechend auf einen Dienstqualitätsparameter zu liefern, falls eine ausreichende Bandbreite in dem Netzwerk existiert.
- Bevorzugte Ausführungsbeispiele der vorliegenden Erfindung werden nachfolgend Bezug nehmend auf die beiliegenden Zeichnungen näher erläutert. Es zeigen:
- Fig. 1 ein Blockdiagramm eines Ausführungsbeispiels eines Netzwerkbandbreiten-Optimierungssystems, das die Lehren der vorliegenden Erfindung verwendet;
- Fig. 2 ein Beispiel eines Verfahrens, das verwendet werden kann, um eine Dienstqualität in einem Netzwerkbandbreiten-Optimierungssystem unter Verwendung der Lehren der vorliegenden Erfindung zu liefern; und
- Fig. 3 ein Beispiel eines Verfahrens, das verwendet werden kann, um einen Kanal freizugeben, der die Lehren der vorliegenden Erfindung verwendet.
- Aus dem Vorangehenden kann erkannt werden, daß ein Bedarf zum Verarbeiten von Anforderungen durch Anwendungen für einen Netzwerkdienst unter Verwendung von Dienstqualitätsparametern entstanden ist. Gemäß der vorliegenden Erfindung werden ein Netzwerkbandbreiten-Optimierungs-System und ein -Verfahren geschaffen, die die Nachteile und Probleme herkömmlicher Systeme im wesentlichen beseitigen oder reduzieren.
- Ein Ausführungsbeispiel der vorliegenden Erfindung bestimmt die Zuweisung von Kanälen innerhalb eines oder mehrerer Netzwerke zu Anwendungen, die variierende Ebenen von Dienstqualität (QoS = quality of service) liefern. Ein Kanal ist ein Abschnitt einer Bandbreite in einem Netzwerk, der einer Anforderung zugewiesen werden kann. Die Anzahl verfügbarer Kanäle, die zugewiesen werden können, hängt von einer Vielzahl von Parametern ab, einschließlich aber nicht beschränkt auf dem Typ eines Netzwerks, dem Typ einer Anforderung und der Anzahl von Anforderungen, die an dem Netzwerk interessiert sind. Ein Ethernetnetzwerk, das zum Beispiel über eine digitale Teilnehmerleitung (DSL = digital subscriber line) oder ein Kabelmodem und ein Einwahlmodem verbunden ist, kann weit variierende Bandbreiten unterstützen. Das Verfahren akzeptiert Anforderungen nach einem Netzwerkdienst, die basierend auf Parametern zugewiesen werden können, wie zum Beispiel aber nicht beschränkt auf einer Dienstqualitätpegel, einem erforderlichen Betrag von Bandbreite, einer Warteschlangenfähigkeit und einer Priorität. Bei einem bestimmten Ausführungsbeispiel bestimmt ein Warteschlangenfähigkeitsparameter, ob eine Anwendungsanforderung in die Warteschlange gestellt werden kann, und ein Prioritätsparameter bestimmt, ob eine Anforderung sofort einem Übergangskanal zugewiesen wird, unabhängig von einer verfügbaren Bandbreite oder einem Langzeitkanal, falls eine ausreichende Bandbreite verfügbar ist. Ein Langzeitkanal kann zum Beispiel bei einer Audioströmungsanwendung verwendet werden, wie zum Beispiel Iradio, bei der der Benutzer der Anwendung 20 einer "Strömungsmusik" bzw durchgehend gelieferten Musik aus einer oder mehreren Quellen zuhört und erwartet, weiterhin Daten über das Netzwerk zu senden oder zu empfangen.
- Ein Ausführungsbeispiel der Erfindung ermöglicht es einer Anwendung, wie zum Beispiel einer Internetanwendung, mehrere Anwendungen gleichzeitig zu betreiben, durch Koordinieren eines Netzwerkdienstes für jede Anwendung. Dies liefert zum Beispiel eine effiziente und effektive Einwähl- Netzwerkerfahrung für einen Benutzer, ohne unnötig lange Verbindungs- und Neuverbindungs-Versuche und ohne ein unnötiges in Beschlag nehmen der Einwählverbindung. Verschiedene Ausführungsbeispiele versichern, daß ein kritischer Netzwerkzugriff verfügbar ist und reduzieren oder beseitigen eine Fragmentierung oder Nichtverfügbarkeit eines Netzwerkzugriffs für Anwendungen. Einer Anzahl von Anforderungen kann zum Beispiel erst nach dem Sicherstellen, daß eine ausreichende Bandbreite für jede der anfragenden Anwendungen existiert, Zugriff zu Kanälen innerhalb eines oder mehrerer Netzwerke gewährt werden.
- Fig. 1 ist ein Blockdiagramm eines Ausführungsbeispiels eines Netzwerkbandbreiten-Optimierungssystems, das die Lehren der vorliegenden Erfindung verwendet. Ein System 10 umfaßt einen Computer oder eine Anwendung 20, die verwendet werden können, um einen Netzwerkdienst zu liefern, der durch eine oder mehrere Anwendungen angefordert wurde, ein Prozeß, der durch einen Netzwerkverwalter 30 verwaltet wird. Die Anwendung 20 ist mit zumindest einem aus einer Mehrzahl von Netzwerken 41, 42, 43 und 44 über jeweilige Kommunikationsverbindungen 41a, 42a, 43a und 44a gekoppelt. Beispielsweise und nicht einschränkend kann das Netzwerk 41 ein Ethernetnetzwerk sein, das über einen Breitbandmechanismus, wie zum Beispiel eine digitale Teilnehmerleitung (DSL) oder ein Kabelmodem verbunden ist. Das Netzwerk 42 kann ein Netzwerk sein, das dem Standard der Heimtelephonleitungs-Netzwerkgesellschaft (HomePNA = Home Phoneline Network Alliance) entspricht, die eine Verwendung einer Mehrzahl von Anwendungen unter Verwendung einer existierenden Verdrahtung in einer physikalischen Position bereitstellt, wie zum Beispiel einem Heimwohnort. Das Netzwerk 43 kann ein Telephonnetzwerk sein, wie zum Beispiel ein öffentliches Telephonwählnetz (PSTN = public-switched telephone network), das durch eine Einwählverbindung (z. B. Modem) zugreifbar ist, und ein Netzwerk 44 kann ein drahtloses Netzwerk sein. Das drahtlose Netzwerk 44 kann ein Protokoll verwenden, wie zum Beispiel das Drahtlose-Anwendung-Protokoll (WAP = wireless application protocol), um mit drahtlosen Diensten zu kommunizieren, wie zum Beispiel aber nicht beschränkt auf Mobiltelefonen und persönlichen digitalen Assistenten (PDAs). Obwohl Fig. 1 vier Netzwerke 41-44 darstellt, umfaßt die vorliegende Erfindung weniger oder mehr Netzwerke oder Kommunikationsverbindungen zu Netzwerken, je nach Wunsch. Der Computer 20 kann verwendet werden, um Kanäle innerhalb von jedem dieser Netzwerke zuzuweisen, die die empfangenen Anforderungen erfüllen.
- Die Anwendung 20 kann einen Netzwerkverwalter 30, zumindest eine Anwendung 31 und ein Betriebssystem (OS = operating system) 40 aufweisen. Die Anwendung 20 kann ferner eine Eingabe-/Ausgabe (I/O = input/output)-Vorrichtung 22 umfassen. Die Anwendung 20 kann eine Netzwerkanwendung sein, wie zum Beispiel ein digitales Unterhaltungszentrum, das wirksam ist, um eine Mehrzahl von Medientypen zu verarbeiten, einschließlich Musik. Die Anwendung 20 kann ferner ein Allzweck- oder ein Spezial-Computer sein und kann ein Abschnitt eines Computers sein, der angepaßt ist, um ein Betriebssystem auszuführen. Die Anwendung 20 kann eine drahtlose Vorrichtung sein, wie zum Beispiel ein Telephon, ein persönlicher digitaler Assistent oder eine Internetanwendung. Die Anwendung 20 kann auf Anwendungen oder Softwareroutinen innerhalb eines Netzwerkverwalters 30 zugreifen und/oder dieselben umfassen, abhängig von einer bestimmten Anwendung. Viele Verfahren zum Implementieren einer Softwarearchitektur können verwendet werden und umfassen, sind jedoch nicht beschränkt auf, objektorientierte Entwürfe. Eine I/O-Vorrichtung 22 oder ein anderer Speicher, wie zum Beispiel ein Cache-Speicher oder ein Direktzugriffsspeicher (RAM = random access memory), können zum Speichern des gesamten oder eines Abschnitts dieses Programms oder der Routinen und/oder zum temporären Speichern von Daten während verschiedener Prozesse, die durch die Anwendung 20 ausgeführt werden, geeignet sein. Der Speicher und/oder die I/O- Vorrichtung 22 können unter anderem verwendet werden, um eine Echtzeitanalyse, ein Speichern und/oder ein Verarbeiten von Daten zu unterstützen. Bei einem bestimmten Ausführungsbeispiel kann das System 10 ferner eine oder mehrere Warteschlangen aufweisen, wie zum Beispiel die Warteschlange 37. Diese Warteschlangen können auf einer Anwendung 20, einem Abschnitt der I/O-Vorrichtung 22 oder einer Kombination aus den beiden vorliegen.
- Bei einem bestimmten Ausführungsbeispiel kann der Netzwerkverwalter 30 einen Dienstqualitätsadapter (QoS-Adapter) 32, einen Netzwerktreiber 34, eine Netzwerkanwendungs- Programmierungsschnittstellenschicht (API-Schicht) 35 und eine Netzwerkhintergrundroutine 33 aufweisen. Ein Netzwerktreiber 34 bildet eine Schnittstelle zwischen einer Anwendung 31 und dem Netzwerkverwalter 30. Der QoS-Adapter 32 ist wirksam, um verfügbare Bandbreiten für jede der Kommunikationsverbindungen 41, 42, 43 und 44 zu bestimmen. Bei einem bestimmten Ausführungsbeispiel kann der Netzwerktreiber 34 den Dienstqualitäts-Adapter 32 verwenden, um die Dienstqualitätsparameter (QoS-Parameter) zu bestimmen oder sogar zu erzeugen, wenn durch eine Anwendung 31 keine derselben bereitgestellt werden. Diese Parameter können durch eine Anzahl von Techniken erzeugt werden, die folgende umfassen, jedoch nicht auf dieselben beschränkt sind: Tabellennachschlagemechanismen, algorithmische Erzeuger und heuristische Anpassung. Die API-Schicht 35 bildet eine Schnittstelle zwischen dem Netzwerktreiber 34 und der Netzwerkhintergrundroutine 33. Diese können durch verschiedene Zwischenprozeß-Kommunikationsverfahren (IPC-Verfahren) kommunizieren, wie zum Beispiel gemeinschaftlich verwendeten Speicher, Nachrichtenwarteschlangen und Kommunikationskanäle. Die Netzwerk-API 35 kommuniziert Informationen (zum Beispiel Netzwerkanfragen, Bandbreiteninformationen der Anwendung 31 und/oder Verbindungs-/Trennungs-Rückrufe) zu der Netzwerkhintergrundroutine 33. Bei einem bestimmten Ausführungsbeispiel kann die Netzwerk-API 35 mit einer Netzwerkhintergrundroutine 33 unter Verwendung eines Daten- und Nachrichten-Transfer-Kommunikationsmechanismus kommunizieren, wie zum Beispiel durch Zwischenprozeß-Kommunikationen (IPC = inter-process communications). Der Netzwerkverwalter 30 liefert Steuerungsmechanismen, um einen Netzwerkzugriff für das OS 40 auf Netzwerke zu initiieren und zu gewähren. Sobald derselbe gewährt ist, kann eine anfragende Anwendung 31 oder ein Anfrager 31 eine der vielen bekannten Techniken verwenden, die erforderlich sind, um durch die Netzwerkschnittstellen (nicht genau gezeigt) durch ein OS 40 direkt auf Daten aus den Netzwerken 41-44 zuzugreifen.
- Der Netzwerkverwalter 30 empfängt vorzugsweise Anforderungen nach einem Netzwerkdienst von der/den Anwendungen 31 und gewährt diese Anforderungen unter Verwendung eines Verfahrens gemäß jenen, die ferner detailliert in Verbindung mit den Fig. 2 und 3 erörtert werden. Der Netzwerkverwalter 30 wird bei einem bestimmten Ausführungsbeispiel eine Anforderung nach einem Netzwerkdienst durch eine Anwendung 31 gewähren, verweigern oder in eine Warteschlange stellen. Das heißt, wenn eine Anforderung in eine Warteschlange gestellt wird, wird dieselbe zu dieser Zeit nicht gewährt; dieselbe wird später gewährt, wenn ausreichend Bandbreite verfügbar wird. Wenn die Anforderung gewährt wird, weist der Netzwerkverwalter 30 einen Kanal innerhalb des angeforderten Netzwerks zu. Wenn keine ausreichende Bandbreite verfügbar ist, verweigert der Netzwerkverwalter 30 entweder die Anforderung oder stellt die Anforderung in eine Warteschlange, bis ausreichend Bandbreite verfügbar wird, abhängig von dem Warteschlangenfähigkeitsparameter.
- Die Netzwerkhintergrundroutine 33 konfiguriert und steuert jegliche Mechanismen in dem OS 40, die notwendig sind, um eine Datenübertragung an die Netzwerkschnittstellen 41, 42, 43 und 44 zu steuern. Die Netzwerkhintergrundroutine 33 kann durch Erhalten von Parametern eine Konfiguration und Steuerungsfunktionen von der Anwendung 31 liefern, wie zum Beispiel einen Kanalidentifizierer, ein angefordertes Netzwerk und einen Anforderer-Identifizierer. Die Netzwerkhintergrundroutine 33 kann QoS-Parameter verwenden, wie zum Beispiel eine QoS-Ebene, eine verfügbare Bandbreite, eine Priorität und eine Warteschlangenfähigkeit, um die Funktionen des Gewährens von Zugriff für eine Anwendung und des Trennens dieser Anwendung, wenn dieselbe vervollständigt ist, durchzuführen.
- Die I/O-Vorrichtung 22 kann ein geeignetes Speicherungsmedium sein. Konfigurationsdateien, Kontextinformationen und andere Daten können in einer Vielzahl von Formaten in der I/O-Vorrichtung 22 gespeichert sein. Die Kontextinformationen können zum Beispiel in einer Tabelle, einer Einheitsdatei oder einer Datenbank gespeichert sein, einschließlich objektorientierter, relationaler oder anderer Datenbanken, die jetzt bekannt sind oder in der Zukunft entwickelt werden. Kontextinformationen können verwendet werden, um Netzwerkdienste besser auf eine bestimmte Anwendung oder Aktion zuzuschneiden, die eventuell von einem Benutzer erwartet wird, und viele Varianten von Kontextinformationen können gemäß den Lehren der Erfindung verwendet werden. Kontextinformationen können einer Anwendung, einem Benutzer, einer Plattform, einem Netzwerk, einer Verbindung oder allen der oben genannten zugeordnet sein. Beispielsweise und nicht einschränkend können Kontextinformationen für eine Anwendung 31, wie zum Beispiel einen Audioplayer, der Informationen über das Internet von einem CD-Platten- Datenbankverwalter (CDDB-Verwalter) anfordert, verwendet werden, um Parameter zu bestimmen, wie zum Beispiel aber nicht beschränkt auf eine QoS-Ebene, einen Bandbreitenwert, eine Priorität und eine Warteschlangenfähigkeit. Für eine CDDB-Zugriffsanforderung kann ein QoS-Adapter 32 zum Beispiel bestimmen, daß die Anforderung eine hohe Ebene einer QoS, einen Prioritätszugriff und 256 Kbps Bandbreite benötigt und nicht warteschlangenfähig ist. Bei einem anderen Anwendungskontext, wie zum Beispiel dem Herunterladen eines digitalen Musikmusters, kann der QoS-Adapter 32 bestimmen, daß die Anforderung eine niedrige Ebene einer QoS, einen Nichtprioritätszugriff und 56 Kbps Bandbreite benötigt und warteschlangenfähig ist. Bei bestimmten Anwendungen kann ein Bandbreitenwert eine gewünschte Bandbreite oder eine Bandbreitenanforderung sein.
- Obwohl Fig. 1 eine einzelne Anwendung 20 darstellt, umfaßt die vorliegende Erfindung die Verwendung von mehreren Anwendungen 20, so daß eine Netzwerkbandbreitenoptimierung durch eine Anzahl von Plattformen durchgeführt werden kann. Jede zusätzliche Anwendung 20 kann ferner ähnlich oder identisch strukturiert sein, um einige oder alle der Elemente der dargestellten Anwendung 20 zu umfassen. In einem solchen Fall würden die QoS-Parameter für jede Anwendungsanforderung bei jeder Anwendung gemeinschaftlich mit dem Netzwerkverwalter 30 verwendet werden. Eine Form einer Standardnetzwerkkonfiguration kann verwendet werden, um diese Informationen zwischen Anwendungen zu übertragen.
- Fig. 2 stellt ein Beispiel eines Verfahrens dar, das bei einem Netzwerkbandbreiten-Optimierungssystem unter Verwendung der Lehren der vorliegenden Erfindung verwendet werden kann. Ein Verfahren 200 weist im allgemeinen die Schritte des Empfangens einer Anforderung nach einem Netzwerkdienst von einer Anwendung 31 und das Verbinden der Anwendung 31 mit dem angeforderten Netzwerk 41, 42, 43 oder 44 auf, abhängig von verschiedenen Parametern. Bei einem bestimmten Ausführungsbeispiel können diese Parameter durch die anfordernde Anwendung geliefert werden oder derselben zugeordnet sein oder können durch andere Verfahren bestimmt werden, einschließlich heuristischer Verfahren, je nach Wunsch. Bei bestimmten Anwendungen kann es wünschenswert sein, vorbestimmte Werte für Kontextinformationen zum Bestimmen eines oder mehrerer Parameter empirisch zu bestimmen oder anderweitig zu liefern. Diese Informationen können unter Verwendung einer Vielzahl von Verfahren gespeichert werden, wie zum Beispiel oder nicht beschränkt auf eine oder mehrere Tabellen in einer Datenbank.
- Das Verfahren beginnt bei Schritt 202, wo eine Anforderung nach einem Netzwerkdienst von einer Anwendung 31 empfangen wird. Bei Schritt 204 fragt das Verfahren ab, ob Dienstqualitätsinformationen vorhanden sind. Wenn ja, springt das Verfahren zu Schritt 208. Wenn nein, werden bei Schritt 206 die Dienstqualitätsparameter bestimmt. Bei einem bestimmten Ausführungsbeispiel weisen diese Parameter eine Dienstqualitätpegel, eine Bandbreite, die durch die anfordernde Anwendung 31 für die Anforderung benötigt wird und eine Bestimmung, ob die Anwendung 31 ermöglicht, daß die Anforderung in die Warteschlange gestellt wird, wenn kein sofortiger Netzwerkzugriff verfügbar ist, auf. Ferner kann die Anforderung einen Prioritätsparameter umfassen, wobei in diesem Fall das Verfahren einen sofortigen Zugriff auf einen Übergangskanal liefert. Bei einem bestimmten Ausführungsbeispiel können diese Eigenschaften (Parameter) durch einen QoS-Adapter 32 unter Verwendung einer Vielzahl von Verfahren bestimmt werden. Ein Verfahren zum Bestimmen dieser Eigenschaften kann die Verwendung von vorbestimmten Werten für diese Parameter, oder heuristische oder andere Algorithmen, die diese Parameter verwenden oder sogar herleiten können, aus Kontext- oder anderen Informationen, wie zum Beispiel statischen Informationen, umfassen, die beim Bewerten eines erwarteten Verhaltens von entweder einem Benutzer oder einer Anwendung nützlich sein können. Beispielsweise aber nicht einschränkend können Kontextinformationen verwendet werden, um eine Tendenz eines Benutzers zum Unterbreiten gewisser Typen oder Muster von Anforderungen zu bestimmen. Als ein anderes Beispiel können Kontextinformationen verwendet werden, um erwartete Zeitdauern derartiger Anforderungen zu bestimmen.
- Bei Schritt 208 fragt das Verfahren ab, ob sich eine Netzwerkkommunikationsverbindung in einem verbundenen Zustand befindet. Wenn das System 10 zum Beispiel mit einem Netzwerk verbunden ist, wie zum Beispiel dem Ethernet, oder unter Verwendung einer Breitbandverbindung mit einem Netzwerk verbunden ist, wie zum Beispiel einem Kabelmodem oder DSL, bleibt das System 10 üblicherweise verbunden, unabhängig davon, ob dasselbe aktiv ist oder ob ein Benutzer anderweitig auf die Netzwerke zugreift. Wenn nicht springt das Verfahren zu Schritt 210, wo eine Verbindung zu einem Netzwerk hergestellt wird. Das Verfahren fragt ab, ob die Anforderung bei Schritt 212 eine Prioritätsanforderung ist. Wenn dieselbe eine Prioritätsanforderung ist, weist das Verfahren bei Schritt 214 sofort einen Übergangskanal für die Anwendung zu. Bei Schritt 216 wird die Anforderung gewährt. Ein Beispiel für eine Prioritätsanforderung ist eine Anforderung nach CD-Informationen aus einer CD-Platten-Datenbank (CDDB). Obwohl das Verfahren die Verwendung anderer Kriterien zum Zuweisen eines Übergangskanals umfaßt, weist das Verfahren bei einem bestimmten Ausführungsbeispiel automatisch einen Übergangskanal zu, auf das Empfangen einer Prioritätsanforderung hin. Bei einem solchen Ausführungsbeispiel kann eine Anwendung einer Prioritätsanforderung zugeordnet sein, wenn dieselbe Netzwerkdienste wünscht, was zu einer sofortigen aber kurzzeitigen Verarbeitungs- und/oder Zugriffs-Zeit von dem Netzwerk führt. Ein Übergangskanal weist eine begrenzte erlaubte Verbindungszeit auf, die auf der angeforderten Bandbreite basiert.
- Wenn die Anforderung bei Schritt 212 keine Prioritätsanforderung ist, dann bestimmt das Verfahren bei Schritt 218 die verfügbare Bandbreite. Das Verfahren kann zum Beispiel eine Netzwerküberwachung verwenden, um die gesamte verfügbare Bandbreite einzurichten, oder die Gesamtbandbreite kann statisch basierend auf den Typ des Netzwerks geschätzt werden. Von einer derartigen Gesamtbandbreite, unabhängig davon, wie dieselbe hergeleitet wurde, kann die Bandbreite aller zugeordneter Kanäle zum Beispiel subtrahiert werden, um eine verbleibende verfügbare Bandbreite zu erhalten. Das Verfahren fragt dann bei Schritt 220 durch Vergleichen der verbleibenden verfügbaren Bandbreite mit der angeforderten Bandbreite ab, ob eine ausreichende Bandbreite existiert. Wenn ja, weist das Verfahren bei Schritt 222 einen Langzeitkanal zu. Das Verfahren verwendet vorzugsweise einen Langzeitkanal zum Bedienen einer Anforderung, die keine Prioritätsanforderung ist. Das heißt, bei einem bestimmten Ausführungsbeispiel wird eine Anwendung automatisch einem Langzeitkanal zugewiesen, die ein Verarbeiten und/oder einen Netzwerkdienst für andere als sofortige und Kurzzeit- Anforderungen wünscht. Ein Langzeitkanal läuft nicht ab sondern wird gehalten, bis die Anwendung denselben freigibt. Das Verfahren umfaßt bei anderen Ausführungsbeispielen ferner das Zuweisen eines Langzeitkanals gemäß anderen Kriterien. Das Verfahren springt dann zu Schritt 216 und gewährt die Anforderung. Wenn keine ausreichende Bandbreite ansprechend auf die Abfrage bei Schritt 220 existiert, bestimmt das Verfahren bei Schritt 224, ob die Netzwerkanforderung ermöglicht, daß die Anforderung in die Warteschlange gestellt wird. Wenn ja, fügt das Verfahren die Anforderung bei Schritt 226 einer Warteschlange hinzu, wie zum Beispiel der Warteschlange 37. Das Verfahren sendet dann einen Status "Warteschlange" bei Schritt 228 an den Anfrager zurück. Eine Warteschlangenanforderung ist weder gewährt noch verweigert, aber verzögert, bis eine ausreichende Bandbreite verfügbar wird. Wenn das Stellen in die Warteschlange bei Schritt 224 nicht ermöglicht wird, springt das Verfahren zu Schritt 230, wo dasselbe die Anforderung verweigert. Obwohl das Verfahren eine Vielzahl von Warteschlangen umfaßt, die verwendet werden können, sind bei einem bestimmten Ausführungsbeispiel die Warteschlangen vorzugsweise priorisierte Zuerst-Hinein-/Zuerst-Hinaus-Warteschlangen (FIFO - first in/first out).
- Fig. 3 ist ein Beispiel eines Verfahrens, das verwendet werden kann, um einen Kanal freizugeben, der ansprechend auf eine Anforderung nach einem Netzwerkdienst durch eine Anwendung 31 unter Verwendung der Lehren der vorliegenden Erfindung zugewiesen wird. Das Verfahren beginnt bei Schritt 302, wo eine Freigabeanforderung empfangen wird. Eine Freigabeanforderung kann beispielsweise und nicht einschränkend eine vom Benutzer initiierte Aktion, wie zum Beispiel das Schließen eines Browserfensters, oder eine von der Anwendung initiierte Aktion, wie zum Beispiel eine Rückkehr von einem JAVA-Script, nachdem die Anwendung Ergebnisse der Anforderung empfangen hat (wie zum Beispiel einer CDDB-Anfrage), sein. Bei Schritt 304 löscht das Verfahren den Kanal, der der Anwendung vorangehend zugewiesen war. Bei Schritt 306 durchsucht das Verfahren die Warteschlange nach Dienstanforderungen und wählt eine Anforderung zum Bewerten aus. Wenn mehr als eine Dienstanforderung in die Warteschlange gestellt sind, dann kann eine Dienstanforderung unter Verwendung einer Anzahl von Verfahren ausgewählt werden. Zum Beispiel kann die Dienstanforderung auf einer Zuerst-Hinein-Zuerst-Heraus (FIFO)-Basis oder basierend auf einer dynamisch bestimmten Prioritätsbasis ausgewählt werden. Bei Schritt 208 fragt das Verfahren ab, ob eine Dienstanforderung aus der Warteschlange wiedergewonnen wurde. Wenn nicht, endet das Verfahren bei Schritt 310.
- Wenn bei Schritt 308 eine Dienstanforderung aus der Warteschlange wiedergewonnen wurde, springt das Verfahren zu Schritt 310, wo dasselbe die verfügbare Bandbreite für das Netzwerk bestimmt. Das Verfahren kann zum Beispiel eine Netzwerküberwachung verwenden, um die gesamte verfügbare Bandbreite einzurichten, oder die Gesamtbandbreite kann statistisch basierend auf dem Typ des Netzwerkes geschätzt werden. Von der Gesamtbandbreite aller zugewiesenen Kanäle kann wiederum abgezogen werden, um eine verbleibende verfügbare Bandbreite zu erhalten. Bei Schritt 314 bestimmt das Verfahren, ob eine ausreichende Bandbreite existiert, um die Anforderung zu erfüllen. Wenn nicht, kehrt das Verfahren zu Schritt 306 zurück, um die Warteschlange nach anderen Anforderungen zu durchsuchen. Wenn bei Schritt 314 eine ausreichende Bandbreite vorhanden ist, springt das Verfahren zu Schritt 316, wo dasselbe einen Langzeitkanal zuweist. Bei Schritt 318 benachrichtigt das Verfahren den Anfrager, daß derselbe nicht länger in die Warteschlange gestellt ist und daß demselben wie angefordert ein Kanal zugewiesen wurde. Das Verfahren kehrt dann zu Schritt 306 zurück, um die Warteschlange nach zusätzlichen Anforderungen zu durchsuchen.
- Die Erfindung umfaßt zahlreiche Ausführungsbeispiele des Verfahrens, das in Verbindung mit den Fig. 2 und 3 erörtert wurde. Zum Beispiel kann der Netzwerkverwalter 30 bei einem bestimmten Ausführungsbeispiel eine Softwarearchitektur verwenden, die eine oder mehrere Anwendungen umfaßt und die logisch aus mehreren Klassen und Schnittstellen aufgebaut sein kann. Diese Klassen können in einer verteilten Umgebung arbeiten und miteinander unter Verwendung von verteilten Kommunikationsverfahren kommunizieren und können eine verteilte Komponentenarchitektur umfassen. Ferner kann das Stellen in die Warteschlange und das Priorisieren von Anforderungen gemäß einer Anzahl von verschiedenen Algorithmen durchgeführt werden, abgesehen von jenen, die eine FIFO-Warteschlange verwenden. Ferner können Ausführungsbeispiele der Erfindung Anforderungen unter Verwendung von Verfahren gleichzeitig oder praktisch gleichzeitig verarbeiten, die mit jenen konsistent sind, die in den Fig. 2 und 3 erörtert wurden. Das heißt zum Beispiel, daß eine Mehrzahl von Anforderungen verarbeitet werden kann, während andere Kanäle, die anderen Anforderungen zugewiesen sind, freigegeben werden. Ferner können verschiedene Ausführungsbeispiele der Erfindung weniger oder mehr Schritte verwenden und das Verfahren kann unter Verwendung einer Anzahl von unterschiedlichen Implementierungen und unterschiedlichen Arbeitsflußreihenfolgen durchgeführt werden, abhängig von der Anwendung. Einige der Schritte können parallel durchgeführt werden. Die Schritte 306 und 312 können zum Beispiel gleichzeitig für unterschiedliche Anforderungen aus einer oder mehreren Anwendungen 31 verarbeitet werden, abhängig von der Anwendung. Die Erfindung umfaßt ferner die Verwendung von verschiedenen Verfahren für viele der erörterten Schritte. Eine Anzahl von Verfahren kann zum Beispiel verwendet werden, um bei Schritt 218 die verfügbare Bandbreite zu bestimmen, bei Schritt 226 eine Anforderung zu einer Warteschlange hinzuzufügen und bei Schritt 318 einen Anforderer zu benachrichtigen.
Claims (22)
1. Verfahren zum Optimieren einer Netzwerkbandbreite, das
folgende Schritte aufweist:
Empfangen einer Anforderung von einer Anwendung (31) zum Liefern eines Netzwerkdienstes in einem Netzwerk (41, 42, 43, 44) zu der Anwendung (31); und
automatisches Zuweisen eines Kanals in dem Netzwerk, um den Netzwerkdienst ansprechend auf einen Dienstqualitätsparameter zu liefern, falls eine ausreichende Bandbreite in dem Netzwerk (41, 42, 33, 44) existiert.
Empfangen einer Anforderung von einer Anwendung (31) zum Liefern eines Netzwerkdienstes in einem Netzwerk (41, 42, 43, 44) zu der Anwendung (31); und
automatisches Zuweisen eines Kanals in dem Netzwerk, um den Netzwerkdienst ansprechend auf einen Dienstqualitätsparameter zu liefern, falls eine ausreichende Bandbreite in dem Netzwerk (41, 42, 33, 44) existiert.
2. Verfahren gemäß Anspruch 1, das ferner folgende
Schritte aufweist:
Überwachen des Netzwerks (41, 42, 43, 44); Einrichten einer verfügbaren Gesamtbandbreite ansprechend auf die Überwachung;
Bestimmen einer verbleibenden verfügbaren Bandbreite ansprechend auf die verfügbare Gesamtbandbreite und der Bandbreiten aller zugewiesenen Kanäle in dem Netzwerk, wo ein Kanal zugewiesen wurde; und
Vergleichen der verbleibenden verfügbaren Bandbreite mit einer Bandbreite, die durch die Anforderung benötigt wird, um zu bestimmen, ob eine ausreichende Bandbreite in dem Netzwerk existiert.
Überwachen des Netzwerks (41, 42, 43, 44); Einrichten einer verfügbaren Gesamtbandbreite ansprechend auf die Überwachung;
Bestimmen einer verbleibenden verfügbaren Bandbreite ansprechend auf die verfügbare Gesamtbandbreite und der Bandbreiten aller zugewiesenen Kanäle in dem Netzwerk, wo ein Kanal zugewiesen wurde; und
Vergleichen der verbleibenden verfügbaren Bandbreite mit einer Bandbreite, die durch die Anforderung benötigt wird, um zu bestimmen, ob eine ausreichende Bandbreite in dem Netzwerk existiert.
3. Verfahren gemäß Anspruch 1 oder 2, das ferner das
Herleiten der Dienstqualitätsparameter ansprechend auf
Kontextinformationen aufweist.
4. Verfahren gemäß einem der Ansprüche 1 bis 3, das
ferner das Herleiten der Dienstqualitätsparameter für die
Anforderung aufweist, wenn die Anforderung keinen
Dienstqualitätsparameter umfaßt.
5. Verfahren gemäß einem der Ansprüche 1 bis 4, bei dem
das Herleiten des Dienstqualitätsparameter das
Herleiten von einem aus der Gruppe bestehend aus
Dienstqualitätpegel, Bandbreitenwert, Priorität und
Warteschlangenfähigkeit aufweist.
6. Verfahren gemäß einem der Ansprüche 1 bis 5, bei dem
das automatische Zuweisen eines Kanals zu der
Anwendung ferner das Zuweisen eines Übergangskanals zu der
Anwendung aufweist, wenn der Dienstqualitätsparameter
einen Hochprioritätsparameter aufweist.
7. Verfahren gemäß einem der Ansprüche 1 bis 6, das
ferner folgende Schritte aufweist:
Überwachen einer Mehrzahl von Netzwerken (41, 42, 43, 44)
Einrichten einer verfügbaren Gesamtbandbreite für jedes aus der Mehrzahl von Netzwerken (41, 42, 43, 44) ansprechend auf die Überwachung;
Bestimmen einer verbleibenden verfügbaren Bandbreite für jedes der Mehrzahl von Netzwerken (41, 42, 43, 44) ansprechend auf die verfügbare Gesamtbandbreite für jedes der Mehrzahl von Netzwerken (41, 42, 43, 44) und Bandbreiten aller zugewiesenen Kanäle auf jedem der Mehrzahl von Netzwerken (41, 42, 43, 44), wo ein Kanal zugewiesen wurde; und
Vergleichen der verbleibenden verfügbaren Bandbreite für jedes der Mehrzahl von Netzwerken (41, 42, 43, 44) mit einer Bandbreite, die durch die Anforderung benötigt wird, um zu bestimmen, ob eine ausreichende Bandbreite auf einem der Mehrzahl von Netzwerken (41, 42, 43, 44) existiert.
Überwachen einer Mehrzahl von Netzwerken (41, 42, 43, 44)
Einrichten einer verfügbaren Gesamtbandbreite für jedes aus der Mehrzahl von Netzwerken (41, 42, 43, 44) ansprechend auf die Überwachung;
Bestimmen einer verbleibenden verfügbaren Bandbreite für jedes der Mehrzahl von Netzwerken (41, 42, 43, 44) ansprechend auf die verfügbare Gesamtbandbreite für jedes der Mehrzahl von Netzwerken (41, 42, 43, 44) und Bandbreiten aller zugewiesenen Kanäle auf jedem der Mehrzahl von Netzwerken (41, 42, 43, 44), wo ein Kanal zugewiesen wurde; und
Vergleichen der verbleibenden verfügbaren Bandbreite für jedes der Mehrzahl von Netzwerken (41, 42, 43, 44) mit einer Bandbreite, die durch die Anforderung benötigt wird, um zu bestimmen, ob eine ausreichende Bandbreite auf einem der Mehrzahl von Netzwerken (41, 42, 43, 44) existiert.
8. Netzwerkbandbreiten-Optimierungsanwendung, die
folgende Merkmale aufweist:
eine Anwendungssoftware, die auf einem computerlesbaren Medium vorliegt und wirksam ist, um eine Anforderung von einer Anwendung zu empfangen, um einen Netzwerkdienst in einem Netzwerk an die Anforderung zu liefern; und
automatisches Zuweisen einer Anforderung auf einem Kanal in dem Netzwerk, um den Netzwerkdienst ansprechend auf einen Dienstqualitätsparameter zu liefern, falls eine ausreichende Bandbreite in dem Netzwerk existiert.
eine Anwendungssoftware, die auf einem computerlesbaren Medium vorliegt und wirksam ist, um eine Anforderung von einer Anwendung zu empfangen, um einen Netzwerkdienst in einem Netzwerk an die Anforderung zu liefern; und
automatisches Zuweisen einer Anforderung auf einem Kanal in dem Netzwerk, um den Netzwerkdienst ansprechend auf einen Dienstqualitätsparameter zu liefern, falls eine ausreichende Bandbreite in dem Netzwerk existiert.
9. Anwendung gemäß Anspruch 8, die ferner die
Anwendungssoftware aufweist, die wirksam ist zum:
Überwachen des Netzwerks;
Einrichten einer verfügbaren Gesamtbandbreite ansprechend auf die Überwachung;
Bestimmen einer verbleibenden verfügbaren Bandbreite ansprechend auf die verfügbare Gesamtbandbreite und eine Bandbreite aller zugewiesenen Kanäle in dem Netzwerk, wo ein Kanal zugewiesen wurde; und
Vergleichen der verbleibenden verfügbaren Bandbreite mit einer Bandbreite, die durch die Anforderung benötigt wird, um zu bestimmen, ob eine ausreichende Bandbreite in dem Netzwerk existiert.
Überwachen des Netzwerks;
Einrichten einer verfügbaren Gesamtbandbreite ansprechend auf die Überwachung;
Bestimmen einer verbleibenden verfügbaren Bandbreite ansprechend auf die verfügbare Gesamtbandbreite und eine Bandbreite aller zugewiesenen Kanäle in dem Netzwerk, wo ein Kanal zugewiesen wurde; und
Vergleichen der verbleibenden verfügbaren Bandbreite mit einer Bandbreite, die durch die Anforderung benötigt wird, um zu bestimmen, ob eine ausreichende Bandbreite in dem Netzwerk existiert.
10. Anwendung gemäß Anspruch 8 oder 9, bei der die
Anwendungssoftware und die Anwendung wirksam einer
Anwendung zugeordnet sind, die mit dem Netzwerk gekoppelt
ist.
11. Anwendung gemäß einem der Ansprüche 8 bis 10, die
ferner die Anwendungssoftware aufweist, die ferner
wirksam ist, um die Dienstqualitätsparameter ansprechend
auf Kontextinformationen herzuleiten.
12. Anwendung gemäß einem der Ansprüche 8 bis 11, die
ferner die Anwendungssoftware aufweist, die ferner
wirksam ist, um den Dienstqualitätsparameter für die
Anforderung herzuleiten, wenn die Anforderung keinen
Dienstqualitätsparameter umfaßt.
13. Anwendung gemäß einem der Ansprüche 8 bis 12, bei der
der Dienstqualitätsparameter einen aus der Gruppe
bestehend aus Dienstqualitätpegel, Bandbreitenwert,
Priorität und Warteschlangenfähigkeit aufweist.
14. Anwendung gemäß einem der Ansprüche 8 bis 13, bei der
der Kanal einen Übergangskanal aufweist, wenn der
Dienstqualitätsparameter einen Hochprioritätsparameter
aufweist.
15. Anwendung gemäß einem der Ansprüche 8 bis 14, die
ferner die Anwendungssoftware aufweist, die wirksam ist
zum:
Überwachen einer Mehrzahl von Netzwerken (41, 42, 43, 44)
Einrichten einer verfügbaren Gesamtbandbreite für jedes der Mehrzahl von Netzwerken (41, 42, 43, 44) ansprechend auf die Überwachung;
Bestimmen einer verbleibenden verfügbaren Bandbreite für jedes der Mehrzahl von Netzwerken (41, 42, 43, 44) ansprechend auf die verfügbare Gesamtbandbreite für jedes der Mehrzahl von Netzwerken (41, 42, 43, 44) und der Bandbreiten aller zugewiesener Kanäle auf jedem der Mehrzahl von Netzwerken (41, 42, 43, 44) wo ein Kanal zugewiesen wurde; und
Vergleichen der verbleibenden verfügbaren Bandbreite für jedes der Mehrzahl von Netzwerken (41, 42, 43, 44) mit einer Bandbreite, die durch die Anforderung benötigt wird, um zu bestimmen, ob eine ausreichende Bandbreite auf einem der Mehrzahl von Netzwerken (41, 42, 43, 44) existiert.
Überwachen einer Mehrzahl von Netzwerken (41, 42, 43, 44)
Einrichten einer verfügbaren Gesamtbandbreite für jedes der Mehrzahl von Netzwerken (41, 42, 43, 44) ansprechend auf die Überwachung;
Bestimmen einer verbleibenden verfügbaren Bandbreite für jedes der Mehrzahl von Netzwerken (41, 42, 43, 44) ansprechend auf die verfügbare Gesamtbandbreite für jedes der Mehrzahl von Netzwerken (41, 42, 43, 44) und der Bandbreiten aller zugewiesener Kanäle auf jedem der Mehrzahl von Netzwerken (41, 42, 43, 44) wo ein Kanal zugewiesen wurde; und
Vergleichen der verbleibenden verfügbaren Bandbreite für jedes der Mehrzahl von Netzwerken (41, 42, 43, 44) mit einer Bandbreite, die durch die Anforderung benötigt wird, um zu bestimmen, ob eine ausreichende Bandbreite auf einem der Mehrzahl von Netzwerken (41, 42, 43, 44) existiert.
16. System zum Optimieren der Netzwerkbandbreite, das
folgende Merkmale aufweist:
eine Anwendung (20), die wirksam ist, um mit einem Netzwerk (41, 42, 43, 44) verbunden zu werden; und
einen Netzwerkverwalter (30), der auf der Anwendung (20) vorliegt und wirksam ist, um eine Anforderung von einer Anwendung (31) zu empfangen, um einen Netzwerkdienst in dem Netzwerk (41, 42, 43, 44) zu liefern und automatisch einen Kanal in dem Netzwerk (41, 42, 43, 44) zuzuweisen, um den Netzwerkdienst ansprechend auf den Dienstqualitätsparameter der Anwendung zu liefern, falls ausreichend Bandbreite in dem Netzwerk (41, 42, 43, 44) existiert.
eine Anwendung (20), die wirksam ist, um mit einem Netzwerk (41, 42, 43, 44) verbunden zu werden; und
einen Netzwerkverwalter (30), der auf der Anwendung (20) vorliegt und wirksam ist, um eine Anforderung von einer Anwendung (31) zu empfangen, um einen Netzwerkdienst in dem Netzwerk (41, 42, 43, 44) zu liefern und automatisch einen Kanal in dem Netzwerk (41, 42, 43, 44) zuzuweisen, um den Netzwerkdienst ansprechend auf den Dienstqualitätsparameter der Anwendung zu liefern, falls ausreichend Bandbreite in dem Netzwerk (41, 42, 43, 44) existiert.
17. System gemäß Anspruch 16, das ferner den
Netzwerkverwalter (30) aufweist, der ferner wirksam ist zum:
Überwachen des Netzwerks;
Einrichten einer verfügbaren Gesamtbandbreite ansprechend auf das Überwachen;
Bestimmen einer verbleibenden verfügbaren Bandbreite ansprechend auf die verfügbare Gesamtbandbreite und der Bandbreite aller zugewiesenen Kanäle in dem Netzwerk, wo ein Kanal zugewiesen wurde; und
Vergleichen der verbleibenden verfügbaren Bandbreite mit einer Bandbreite, die durch die Anforderung benötigt wird, um zu bestimmen, ob ausreichend Bandbreite in dem Netzwerk existiert.
Überwachen des Netzwerks;
Einrichten einer verfügbaren Gesamtbandbreite ansprechend auf das Überwachen;
Bestimmen einer verbleibenden verfügbaren Bandbreite ansprechend auf die verfügbare Gesamtbandbreite und der Bandbreite aller zugewiesenen Kanäle in dem Netzwerk, wo ein Kanal zugewiesen wurde; und
Vergleichen der verbleibenden verfügbaren Bandbreite mit einer Bandbreite, die durch die Anforderung benötigt wird, um zu bestimmen, ob ausreichend Bandbreite in dem Netzwerk existiert.
18. System gemäß Anspruch 16 oder 17, das ferner den
Netzwerkverwalter (30) aufweist, der ferner wirksam ist,
um den Dienstqualitätsparameter ansprechend auf
Kontextinformationen herzuleiten.
19. System gemäß einem der Ansprüche 16 bis 18, das ferner
den Netzwerkverwalter (30) aufweist, der ferner
wirksam ist, um den Dienstqualitätsparameter für die
Anforderung herzuleiten, wenn die Anforderung keinen
Dienstqualitätsparameter umfaßt.
20. System gemäß einem der Ansprüche 16 bis 19, bei dem
der Dienstqualitätsparameter einen aus der Gruppe
bestehend aus einer Dienstqualitätpegel,
Bandbreitenwert, Priorität und Warteschlangenfähigkeit aufweist.
21. System gemäß einem der Ansprüche 16 bis 20, bei dem
der Kanal einen Übergangskanal aufweist, wenn der
Dienstqualitätsparameter einen Hochprioritätsparameter
aufweist.
22. System gemäß einem der Ansprüche 16 bis 21, das ferner
folgende Merkmale aufweist:
die Anwendung (20), die wirksam ist, um mit einer Mehrzahl von Netzwerken (41, 42, 43, 44) gekoppelt zu werden; und
den Netzwerkverwalter (30), der ferner wirksam ist zum:
Überwachen einer Mehrzahl von Netzwerken (41, 42, 43, 44),
Einrichten einer verfügbaren Gesamtbandbreite für jedes der Mehrzahl von Netzwerken (41, 42, 43, 44) ansprechend auf die Überwachung,
Bestimmen einer verbleibenden verfügbaren Bandbreite für jedes der Mehrzahl von Netzwerken (41, 42, 43, 44) ansprechend auf die verfügbare Gesamtbandbreite für jedes der Mehrzahl von Netzwerken (41, 42, 43, 44) und der Bandbreiten aller zugewiesenen Kanäle auf jedem der Mehrzahl von Netzwerken (41, 42, 43, 44) wo ein Kanal zugewiesen wurde, und
Vergleichen der verbleibenden verfügbaren Bandbreite für jedes der Mehrzahl von Netzwerken (41, 42, 43, 44) mit einer Bandbreite, die durch die Anforderung benötigt wird, um zu bestimmen, ob eine ausreichende Bandbreite auf einem der Mehrzahl von Netzwerken (41, 42, 43, 44) existiert.
die Anwendung (20), die wirksam ist, um mit einer Mehrzahl von Netzwerken (41, 42, 43, 44) gekoppelt zu werden; und
den Netzwerkverwalter (30), der ferner wirksam ist zum:
Überwachen einer Mehrzahl von Netzwerken (41, 42, 43, 44),
Einrichten einer verfügbaren Gesamtbandbreite für jedes der Mehrzahl von Netzwerken (41, 42, 43, 44) ansprechend auf die Überwachung,
Bestimmen einer verbleibenden verfügbaren Bandbreite für jedes der Mehrzahl von Netzwerken (41, 42, 43, 44) ansprechend auf die verfügbare Gesamtbandbreite für jedes der Mehrzahl von Netzwerken (41, 42, 43, 44) und der Bandbreiten aller zugewiesenen Kanäle auf jedem der Mehrzahl von Netzwerken (41, 42, 43, 44) wo ein Kanal zugewiesen wurde, und
Vergleichen der verbleibenden verfügbaren Bandbreite für jedes der Mehrzahl von Netzwerken (41, 42, 43, 44) mit einer Bandbreite, die durch die Anforderung benötigt wird, um zu bestimmen, ob eine ausreichende Bandbreite auf einem der Mehrzahl von Netzwerken (41, 42, 43, 44) existiert.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US09/999,467 | 2001-10-30 | ||
US09/999,467 US20030084144A1 (en) | 2001-10-30 | 2001-10-30 | Network bandwidth optimization method and system |
Publications (2)
Publication Number | Publication Date |
---|---|
DE10247164A1 true DE10247164A1 (de) | 2003-05-15 |
DE10247164B4 DE10247164B4 (de) | 2008-07-03 |
Family
ID=25546363
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE10247164A Expired - Fee Related DE10247164B4 (de) | 2001-10-30 | 2002-10-09 | Verfahren und Vorrichtung für eine Netzwerkbandbreitenoptimierung |
Country Status (4)
Country | Link |
---|---|
US (1) | US20030084144A1 (de) |
JP (1) | JP2003188908A (de) |
DE (1) | DE10247164B4 (de) |
GB (1) | GB2381996B (de) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE10315066A1 (de) * | 2003-04-02 | 2004-10-28 | Siemens Ag | Verfahren zur Steuerung der Übertragung von Daten |
Families Citing this family (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2835987B1 (fr) * | 2002-02-14 | 2005-04-29 | Cit Alcatel | Controle d'admission a un reseau de donnees pour l'assurance de la qualite de service |
EP1497955B1 (de) * | 2002-04-19 | 2010-06-09 | Telefonaktiebolaget LM Ericsson (publ) | Verfahren und einrichtungen für adaptive proxy-bearbeitung von flüssen |
US7426182B1 (en) * | 2002-08-28 | 2008-09-16 | Cisco Technology, Inc. | Method of managing signal processing resources |
TW576045B (en) * | 2002-09-20 | 2004-02-11 | Ind Tech Res Inst | System for controlling network flow by monitoring download bandwidth |
US20040208966A1 (en) * | 2003-04-15 | 2004-10-21 | Cargill Inc. | Minimal pulp beverage and methods for producing the same |
US20050021716A1 (en) * | 2003-05-15 | 2005-01-27 | Maria Adamczyk | Methods, systems and computer program products for authentication of session requests from service providers in communication networks |
US7395339B2 (en) * | 2003-08-07 | 2008-07-01 | International Business Machines Corporation | Method and system for providing on-demand media streaming from a user's own library to a receiving device of the user |
US7602899B1 (en) * | 2004-02-18 | 2009-10-13 | Sprint Spectrum L.P. | Method and system for call routing based on obtained information |
IL160921A (en) * | 2004-03-18 | 2009-09-01 | Veraz Networks Ltd | Method and device for quality management in communication networks |
US7734284B2 (en) | 2004-04-30 | 2010-06-08 | Research In Motion Limited | System and method for handling data transfers |
US7583658B1 (en) | 2004-06-17 | 2009-09-01 | Cisco Technology, Inc. | Signal processing allocation using credit prediction |
US7369502B2 (en) * | 2004-12-02 | 2008-05-06 | Cisco Technology, Inc. | Intelligent provisioning of DSP channels for codec changes |
US7440399B2 (en) * | 2004-12-22 | 2008-10-21 | Qualcomm Incorporated | Apparatus and method for efficient transmission of acknowledgments |
SG125139A1 (en) * | 2005-02-14 | 2006-09-29 | William Mutual | A system for managing bandwidth |
JP4298679B2 (ja) * | 2005-05-27 | 2009-07-22 | 株式会社ソニー・コンピュータエンタテインメント | 情報処理方法、情報処理装置、およびサーバ |
JP4844425B2 (ja) * | 2007-02-15 | 2011-12-28 | ソニー株式会社 | 帯域要求システム、帯域要求装置、クライアント機器、帯域要求方法、コンテンツ再生方法およびプログラム |
US7807915B2 (en) * | 2007-03-22 | 2010-10-05 | Qualcomm Incorporated | Bandwidth control for retrieval of reference waveforms in an audio device |
US20080259810A1 (en) * | 2007-04-23 | 2008-10-23 | At&T Knowledge Ventures, Lp | Broadband Service Applications Test Tool |
EP2194674B1 (de) * | 2007-09-28 | 2017-03-22 | Fujitsu Limited | Verfahren zur zuweisung von drahtlosen betriebsmitteln, drahtlose mobilstation und drahtlose basisstation in einem drahtlosen kommunikationssystem |
US8301716B2 (en) * | 2009-11-20 | 2012-10-30 | Time Warner Cable Inc. | Interface for a multi-processor gateway apparatus and method for using the same |
US9161226B2 (en) | 2011-10-17 | 2015-10-13 | Blackberry Limited | Associating services to perimeters |
US9613219B2 (en) * | 2011-11-10 | 2017-04-04 | Blackberry Limited | Managing cross perimeter access |
US9369466B2 (en) | 2012-06-21 | 2016-06-14 | Blackberry Limited | Managing use of network resources |
CN102791032B (zh) * | 2012-08-14 | 2016-08-03 | 华为终端有限公司 | 网络带宽分配方法及终端 |
US10979970B2 (en) * | 2016-06-30 | 2021-04-13 | Huawei Technologies Co., Ltd. | Network channel allocation method and apparatus |
CN112737822B (zh) * | 2020-12-23 | 2022-05-13 | 中国商用飞机有限责任公司 | 基于授权的机载网络带宽分配***和方法 |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5581703A (en) * | 1993-06-29 | 1996-12-03 | International Business Machines Corporation | Method and apparatus for reserving system resources to assure quality of service |
EP0689321A1 (de) * | 1994-06-23 | 1995-12-27 | International Business Machines Corporation | System zur hohen Verfügbarkeit von netzwerkweiter Bandbreitenzuordnung |
US5799002A (en) * | 1996-07-02 | 1998-08-25 | Microsoft Corporation | Adaptive bandwidth throttling for network services |
EP1008276B1 (de) * | 1997-04-18 | 2003-03-19 | Nortel Networks Limited | Nach dem verbindungslosen prinzip arbeitendes kommunikationsnetzwerk |
US6578077B1 (en) * | 1997-05-27 | 2003-06-10 | Novell, Inc. | Traffic monitoring tool for bandwidth management |
GB2331659A (en) * | 1997-11-21 | 1999-05-26 | Ericsson Telefon Ab L M | Resource reservation |
US6154776A (en) * | 1998-03-20 | 2000-11-28 | Sun Microsystems, Inc. | Quality of service allocation on a network |
US6345038B1 (en) * | 1998-05-12 | 2002-02-05 | International Business Machines Corporation | Improving access to congested networks |
US6771661B1 (en) * | 1999-07-21 | 2004-08-03 | Cisco Technology, Inc. | Apparatus and methods for providing event-based data communications device configuration |
US6721270B1 (en) * | 1999-08-09 | 2004-04-13 | Lucent Technologies Inc. | Multicommodity flow method for designing traffic distribution on a multiple-service packetized network |
US6728365B1 (en) * | 1999-09-13 | 2004-04-27 | Nortel Networks Limited | Method and system for providing quality-of-service on packet-based wireless connections |
US6744767B1 (en) * | 1999-12-30 | 2004-06-01 | At&T Corp. | Method and apparatus for provisioning and monitoring internet protocol quality of service |
WO2001063855A1 (en) * | 2000-02-25 | 2001-08-30 | Telefonaktiebolaget Lm Ericsson (Publ) | Packet scheduling in umts using several calculated transfer rates |
JP2002300181A (ja) * | 2001-03-30 | 2002-10-11 | Nec Corp | 統合ネットワークQoS制御方式 |
-
2001
- 2001-10-30 US US09/999,467 patent/US20030084144A1/en not_active Abandoned
-
2002
- 2002-10-09 DE DE10247164A patent/DE10247164B4/de not_active Expired - Fee Related
- 2002-10-16 GB GB0224113A patent/GB2381996B/en not_active Expired - Fee Related
- 2002-10-24 JP JP2002309905A patent/JP2003188908A/ja active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE10315066A1 (de) * | 2003-04-02 | 2004-10-28 | Siemens Ag | Verfahren zur Steuerung der Übertragung von Daten |
DE10315066B4 (de) * | 2003-04-02 | 2006-06-01 | Siemens Ag | Verfahren zur Steuerung der Übertragung von Daten |
US8767534B2 (en) | 2003-04-02 | 2014-07-01 | Prasendt Investments, Llc | Method for controlling the transmission of data |
Also Published As
Publication number | Publication date |
---|---|
GB0224113D0 (en) | 2002-11-27 |
DE10247164B4 (de) | 2008-07-03 |
GB2381996B (en) | 2004-10-06 |
US20030084144A1 (en) | 2003-05-01 |
JP2003188908A (ja) | 2003-07-04 |
GB2381996A (en) | 2003-05-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE10247164B4 (de) | Verfahren und Vorrichtung für eine Netzwerkbandbreitenoptimierung | |
DE112018003482B4 (de) | Serveranfrageverwaltung | |
DE60117957T2 (de) | Verfahren, System und Rechnerprogrammprodukt zur Bandbreitenzuteilung in einem System mit Mehrfachzugriff | |
DE69818846T2 (de) | Paketnetzwerk | |
DE69429384T2 (de) | Verfahren zur Reservierung von Betriebsmitteln für Multimedia | |
DE69928761T2 (de) | System zur regelbasierten Netzkonfiguration | |
DE69828511T2 (de) | Verfahren und system zur kanalzuteilung nach endgeräteprioritäten | |
DE60210733T2 (de) | System und Verfahren zur Überlastregelung in Netzwerken | |
DE69030340T2 (de) | Makler für die Auswahl von Rechnernetzwerkservern | |
DE60015423T2 (de) | Verfahren und Vorrichtung zur Objektwiedergabe in einem Netzwerk | |
DE60207077T2 (de) | Methode und vorrichtung zur bereitstellung von kommunikationsbandbreite an benutzer mit garantierter datenrate basierend auf prioritätszuweisung | |
DE69425213T2 (de) | Verfahren und Vorrichtung zum Austausch von Multimediendaten mit Schrittgeschwindigkeitsfähigkeit in einem verteilten Datenverarbeitungssystem | |
DE602004008550T2 (de) | Speichervorrichtung und System zum Bereitstellen einer Reservierungsfunktion für einen Kommunikationspuffer. | |
DE60301035T2 (de) | Verfahren und Vorrichtung zur Planung von Datenzübertragungen zu Nutzern in Telekommunikationsystemen | |
DE602004005604T2 (de) | Verfahren zur dienstqualitätsdifferenzierung in paketmodus-mobilkommunikationsnetzen | |
DE60109809T2 (de) | Verfahren und system für betriebsmittelreservierungen in einem multicast-netzwerk | |
DE60131517T2 (de) | Verfahren und vorrichtung zum rückhalten eines verbindungsanforderungstroms eines hochvolumigen burst-klients in einem verteilten netzwerk | |
DE69904899T2 (de) | Vorrichtung und Verfahren zur Kontrolle der Paketübertragung und der Planung der Reihenfolge der Übertragung der Pakete | |
DE10123821A1 (de) | Geschaltete Ethernet-Netzwerke | |
DE69132857T2 (de) | Verfahren zur Anruf-Steuerung auf der Grundlage von Belastungslage | |
EP0885507A1 (de) | Verfahren zur übertragung von datenpaketen vorgebbarer prioritätsklassen im ethernet von einer ersten anordnung zu mindestens einer zweiten anordnung | |
DE10296682T5 (de) | Integriertes Verfahren zur Aufteilung von Netzwerkdatendienstleistungen unter mehreren Teilnehmern | |
DE102007038964A1 (de) | Verfahren und Vorrichtung zum Verarbeiten von Netzwerkdaten | |
DE10297645B4 (de) | Verfahren und Einrichtung zum Lastteilen und zur Datenverteilung in Servern | |
DE602004010056T2 (de) | Verfahren und System zur Verwaltung des Netzwerkverkehrs unter Berücksichtung von mehreren Zwangsbedingungen |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OP8 | Request for examination as to paragraph 44 patent law | ||
8127 | New person/name/address of the applicant |
Owner name: HEWLETT-PACKARD DEVELOPMENT CO., L.P., HOUSTON, TE |
|
8364 | No opposition during term of opposition | ||
R119 | Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee |
Effective date: 20140501 |