-
GEBIET DER ERFINDUNG:
-
Diese
Erfindung betrifft Datenserver und genauer Datenserver, die insbesondere
als Medienserver zur Verwendung in Netzwerken arbeiten, in denen
Medien in Paketform übertragen
werden. Solche Netzwerke umfassen diejenigen, die für Telefonie,
Videokonferenzen und dergleichen verwendet werden können, wobei
die Netzwerke VoIP/VoATM-Telefonienetzwerke,
PSTN oder andere paketfreie Telefonienetzwerke, drahtlose Telefonienetzwerke
und Kombinationen aus diesen oder anderen sind. Jedoch betrifft
die vorliegende Erfindung insbesondere die Softwarearchitektur von
Datenservern, so wie Medienservern, die in der Lage sind, Verarbeitungsdienste
zu Wertschöpfungszwecken
verschiedenen Mediennetzwerken zur Verfügung zu stellen, in denen die
Medien in Paketform übertragen
werden.
-
HINTERGRUND DER ERFINDUNG:
-
Datenserver
finden sich zu vielen Zwecken in vielen Situationen. Jedoch ist
die vorliegende Erfindung insbesondere auf den Einsatz von Datenservern
in Mediennetzwerken gerichtet, in denen die Mediendaten in Paketform übertragen
werden. Solche Verwendungen können
speziell bei Mediengateways und Medienservern für Mediennetzwerke, so wie Telefonienetzwerke,
liegen.
-
Das
Dokument LAURSEN A u.a. "Oracle Media
Server Framework",
5. März
1995, Seiten 203-208, offenbart einen Datenserver zur Verwendung
in einem Netzwerk, in dem Mediensignale als digitale Signale als
Video- oder Audiodaten in Paketform gesendet werden.
-
Tatsächlich ist
es in der Umgebung der Telefonienetzwerke, in denen die vorliegende
Erfindung besondere Verwendbarkeit findet. Telefonienetzwerke transportieren
insbesondere Sprachdaten, die in ein digitales Format codiert worden
sind. Während das
menschliche Ohr jedoch zu einem gewissen Ausmaß verzeihen kann, wird es keine
wesentlichen Unterbre chungen oder Verzögerungen im Verlauf gesprochener
Nachrichten tolerieren. Mit anderen Worten, anders als Datennetzwerke,
in denen Verzögerungen
oder Unterbrechungen bei der Lieferung von Daten in Paketform toleriert
werden können,
wenigstens zu einem gewissen Ausmaß, muß die Übertragung und das Verarbeiten
von Sprachnachrichten und auch Videonachrichten und dergleichen
im wesentlichen in Echtzeit stattfinden. Somit müssen Datenserver, so wie Gateways
und Medienserver, in einer solchen Weise aufgebaut sein, daß sie in
der Lage sind, mit hohem Durchsatz und Genauigkeit in der Datenverwaltung
und -verarbeitung zu arbeiten.
-
Die
folgende Diskussion ist insbesondere auf Datenserver gerichtet und
wie ein Datenserver in ein Netzwerk eingegliedert werden kann. Eine
besondere Diskussion folgt, was den Aufbau von Datenservern betrifft,
wenn sie als Medienserver verwendet werden; es wird jedoch verstanden
werden, daß die Diskussion
ebenfalls auf Gateways und andere Ausgestaltungen von Datenservern
anwendbar ist, wie es denjenigen, die auf dem Gebiet bewandert sind, deutlich
werden wird.
-
Datenserver,
die als Medienserver ausgestaltet sind, wie sie in Telefonienetzwerken
benutzt werden, führen
eine Vielfalt grundlegender und erweiterter Dienste aus, die das
Durchführen
von Konferenzen, interaktive Sprachantwort, Transcodieren, Ankündigungen
und andere fortgeschrittene Sprachdienste umfassen. Sie können auch
in Netzwerken verwendet werden, die Videokonferenzdienste zur Verfügung stellen,
ebenso wie typische Datenaustauschdienste der Art, die über das
Internet, über
virtuelle private Netzwerke, innerhalb von Fernbereichsnetzwerken
und Nahbereichsnetzwerken und dergleichen geschehen. In jedem Fall
werden die Daten jeglicher Art, seien sie Sprach-, Video-, numerische
oder Textdaten oder ein Multimediastrom, der irgendeine Kombination
dieser Daten aufweist, in Pakete aufgeteilt – das heißt, die Daten werden in Paketen
verschickt.
-
Medienserver
sind direkt mit einem Paketnetzwerk verbunden und können daher
an vielen Diensteproviderorten in der Verwendung gefunden werden,
einschließlich
denjenigen, die drahtlose, kabelmodm-, xDSL-, Faser- und Kupferzugangstechnologien
umfassen; vorausgesetzt jedoch, daß das Kernnetzwerk, in dem
der unmittelbare Server gefunden werden kann, eines ist, das auf
Pakettechnologien, so wie IP, ATM, Frame Relay und Variationen solcher
Technologien aufgebaut ist, wie sie für die mobile Mobiltelefonie
verwendet werden.
-
Medienserver
führen
Echtzeitverarbeitung von Medienströmen durch, die über einen
geeigneten Mediengateway von solchen Geräten wie Personal Computer,
IP-Telefonen, mobilen Telefonen und herkömmlichen Telefonen herrühren können. Typische
Funktionen, die von Medienservern durchgeführt werden können, umfassen
das Decodieren und Sammeln von DTMF-Tönen oder codierter Nachrichten,
die das Vorliegen von DTMF-Tönen
anzeigen. Sie können
auch komplexe Audioankündigungen spielen,
die auf einem Datenserver oder einem externen Dateiserver gespeichert
sind, sie können
mehrere Audiosignale überbrücken, sie
können
zwischen unterschiedlichen Codier/Decodiertypen und Bitraten transcodieren,
sie können
den Pegel von Audiosignalen für
die manuelle oder automatische Verstärkungssteuerung anheben und
sie können
Text in Sprache oder Sprache in Text umwandeln. Medienserver können auch
Sprachbefehle erkennen, Videosignale überbrücken, feststellen, welche Partei
in einer Konferenz gerade spricht – oder am lautesten spricht – und Faxströme decodieren/codieren.
-
Typischerweise
sind Medienserver Teil einer verbesserten Diensteinfrastruktur in
Paketnetzwerken, die eine zerlegte Architektur verwenden, so wie eine
Softswitch-Architektur, Packet-CableTM-Architektur, 3GPP/UTMS/EuroCable-Architektur
usw. Die Medienserver werden als Slaves arbeiten, um Logik zu bedienen,
die in einem Anwendungsserver enthalten ist, oder werden auf ähnliche
Kontrollagenten in der Schaltebene eines Steuernetzwerks antworten, und
sie werden Hardware nach dem Stand der Technik zur Verfügung stellen,
die aufgerüstet
werden kann und die fast unbegrenzte Skalierbarkeit zeigt, ungeachtet
der Dienstelogik, die in einem Anwendungsserver oder Softswitch
verwendet werden kann, und ungeachtet dessen, ob ein Mediengateway
vorliegt oder nicht, so wie der, der für eine andere als die reine
VoIP/VoATM-Telefonie erforderlich ist.
-
Zwei
weitere, ebenfalls anhängige
Anmeldungen beschreiben andere Merkmale und Besonderheiten von Datenservern
und insbesondere von Medienservern der Art, die im allgemeinen hierin
betrachtet werden. Die vorliegende Erfindung ist insbesondere auf
die Architektur verteilter Software gerichtet, die auf einem Datenserver
im Zusammenhang mit der vorliegenden Erfindung gefunden wird.
-
Natürlich wird
berücksichtigt
werden, daß Datenserver
im Zusammenhang mit der vorliegenden Erfindung dynamisch aufgerüstet werden
können
und skalierbar sind, so daß die
verteilte Software, die schlechthin in einem Datenserver im Zusammenhang
mit der vorliegenden Er findung gefunden wird, wie es hiernach diskutiert
werden wird, nur beispielhaft ist, da solche Software – und insbesondere die
verschiedenen Softwareobjekte – kontinuierlich aufgerüstet, verbessert
und hinzugefügt
werden können,
wenn neue Dienste vorgeschlagen werden.
-
Es
wird auch verstanden werden, daß die
Art von Diensten, die von Datenservern und insbesondere von Medienservern
im Zusammenhang mit der vorliegenden Erfindung zur Verfügung gestellt
werden, derart sind, daß sie
den grundlegenden Medienverarbeitungsdiensten mehr Wert hinzufügen, der Kunden
irgendeines Diensteproviders zur Verfügung gestellt werden kann.
-
Die
vorliegende Diskussion liefert eine Ansicht der Funktionalität von Datenservern
auf Systemebene und lehrt eine Verarbeitungsmaschine für Datenserver,
die fortgeschrittene Dienste vornimmt, bei denen die Mediendaten
in Paketform irgendeines Kunden oder irgendeines Diensteproviders
in Echtzeit oder nahezu Echtzeit verarbeitet werden müssen.
-
Jeder
Datenserver im Zusammenhang mit der vorliegenden Erfindung arbeitet
insbesondere als eine Vorrichtung, die auf ein mit einem Internet-Protokoll
arbeitenden Netzwerk gerichtet werden kann, so wie einem IP-Netzwerk,
für das
beabsichtigt ist, daß es
VoIP/VoATM-Paket-Telefoniesignale
transportiert. Als solcher kann ein derartiger Datenserver, wie
er durch die vorliegende Erfindung gelehrt wird, an der Grenze eines
IP-, ATM- oder anderen Paketnetzwerkes zum Einsatz kommen, so daß er an
einem günstigen
geographischen Ort angeordnet werden kann, oder so daß er sich
nahe dem Kopf einer Kabel-TV-Organisation oder einem Kabel-Telekommunikationsdiensteprovider
oder an dem Zentralbüro eines
xDSL-Telekommunikationsdiensteproviders befindet.
-
Die
Implementierung und Unterstützung
von Multiprozessing wird von der Architektur der verteilten Software
im Zusammenhang mit der vorliegenden Erfindung zur Verfügung gestellt,
wie es hiernach beschrieben ist.
-
ZUSAMMENFASSUNG DER ERFINDUNG:
-
Zu
diesem Zweck stellt die vorliegende Erfindung einen Datenserver
zur Verwendung in Netzwerken zur Verfügung, in denen Mediensignale
als Datensignale in Paketform übertragen
werden, wobei die Mediensignale aus der Gruppe bestehend aus Audiodaten
in Paket form, Videodaten in Paketform, Steuerdaten in Paketform,
Informationsdaten in Paketform und Kombinationen aus diesen ausgewählt sind,
wie es in Anspruch 1 beschrieben ist. Die Pakete aus Mediendaten
sollen von dem Datenserver verarbeitet werden.
-
Der
Datenserver weist wenigstens eine Konsole mit wenigstens einer Karte
darauf auf, deren Zweck es ist, eine Konsolensteuerfunktion und
eine Medienprozessorfunktion zur Verfügung zu stellen, zusammen mit
einer Vielzahl von Inter-Prozessorbussen, die mit den Prozessoren
auf der wenigstens einen Karte auf der Konsole kommunizieren.
-
Die
Konsole-Controllerfunktion liefert Zugriff auf Steuer- und Verwaltungssignale
für verteilte
Software, die auf der wenigstens einen Karte auf der Konsole verteilt
ist. Die Medienprozessorfunktion liefert Zugriff auf und sorgt für die Verarbeitung
von Mediensignalen in Paketform.
-
Die
verteilte Software auf der Konsole besteht aus einer modularen Softwarearchitektur
mit einer Transportschicht, einer Medienverarbeitungsschicht, einer
Sitzungssteuerungsschicht und einer Verwaltungsebene.
-
Die
Verwaltungsebene erstreckt sich über die
Transportschicht, die Medienschicht und die Sitzungssteuerungsschicht.
-
Die
wenigstens eine Karte enthält
eine Vielzahl von digitalen Signalprozessoren für die Medienprozessorfunktion.
Die Vielzahl der digitalen Signalprozessoren hat eine Vielzahl darin
eingebetteter diskreter Softwareobjekte, um so dazu ausgelegt zu sein,
die Pakete der Mediendaten im Zusammenhang mit den Softwareobjekten
zu verarbeiten.
-
Die
Vielzahl der diskreten Softwareobjekte ist dynamisch unter der Steuerung
der Steuer- und Verwaltungssignale änderbar, die von der Konsole-Controllerfunktion
empfangen und gesendet werden können.
-
Die
Verwaltungsebene ist dazu ausgelegt, die Arbeitsgänge des
Datenservers zur Verfügung
zu stellen und zu überwachen
und auch Alarm im Zusammenhang mit vorbestimmten Kriterien für diesen auszulösen.
-
Im
Zusammenhang mit einer Ausgestaltung der vorliegenden Erfindung
umfaßt
die Transportschicht der Architektur der verteilten Software wenigstens
eine Verbindungsschnittstelle zu einem Paketnetzwerk, von dem die
Mediensignale in Paketform empfangen werden und zu dem Mediensignale in
Paketform geschickt werden. Auch umfaßt die Medienverarbeitungsschicht
der Architektur der verteilten Software einen Softwareverwalter
für das
Initialisieren, Koordinieren und Steuern der Vielzahl der diskreten
Softwareobjekte, die in der Vielzahl der digitalen Signalprozessoren
auf der wenigstens einen Karte eingebettet sind.
-
Ein
Datenserver der vorliegenden Erfindung kann derart sein, daß die Konsole
genau eine Karte trägt.
Wenn dies der Fall ist, bedient die eine Karte sowohl die Konsole-Controllerfunktion
als auch die Medienprozessorfunktion. Auch wird diese eine Karte
eine Vielzahl von Prozessoren tragen; und die Kommunikation unter
der Vielzahl der Prozessoren geschieht mittels der Vielzahl der
Inter-Prozessorbusse.
-
Darüber hinaus
kann ein Datenserver im Zusammenhang mit der vorliegenden Erfindung
eine Vielzahl von Karten auf der Konsole haben. In dem Fall erstreckt
sich eine Vielzahl von Inter-Prozessorbussen über eine Rückwandplatine als eine Vielzahl von
Rückwandbussen,
um so für
die Kommunikation unter der Vielzahl der Karten auf der Konsole
zu sorgen.
-
Typischerweise
ist ein Datenserver im Zusammenhang mit der vorliegenden Erfindung
so ausgestaltet, daß die
Konsole eine Konsole-Controllerkarte und wenigstens eine Medienprozessorkarte trägt. Die
Vielzahl der Rückwandbusse
wird für
die Kommunikation unter all den Karten auf der Konsole sorgen.
-
Weiter
wird in dem Fall die verteilte Software unter den Karten auf der
Konsole verteilt.
-
Wenn
es wenigstens eine Medienprozessorkarte auf der Konsole gibt, wird
jede solche Karte eine Vielzahl digitaler Prozessoren mit einer
Vielzahl darin eingebetteter diskreter Softwareobjekte enthalten.
-
Die
Transportschicht der Architektur der verteilten Software kann weiter
eine Netzwerk-Abstraktionsschicht
umfassen, die dazu ausgelegt ist, eine Schnittstelle zu der Medienverarbeitungsschicht
für alle
Medienpaketdaten zur Verfügung
zu stellen, die durch den Datenser ver von dem Paketnetzwerk über die
wenigstens eine Verbindungsschnittstelle zu diesem empfangen worden
ist.
-
Es
kann auch eine Vielzahl unterschiedlicher Verbindungsschnittstellen
von der Transportschicht zu dem Paketnetzwerk geben. Somit wird
für eine Vielzahl
von Medienpaketdaten-Diensteprovidern
für Modularität gesorgt,
die unterschiedliche Datenpaketlieferprotokolle und -systeme verwenden
mögen.
-
Die
Medienverarbeitungsschicht umfaßt
weiter logische Eingangs- und Ausgangsports für die logische Kommunikation
zu und von sowohl der Transportschicht als auch der Sitzungssteuerungsschicht.
-
Die
Vielzahl diskreter Softwareobjekte, die in der Medienverarbeitungsschicht
enthalten ist, kann aus der Gruppe ausgewählt werden, die aus Softwareobjekten
für das
Protokollhandhaben, Softwareobjekten für die Audioverarbeitung, Softwareobjekten für die Mischsteuerung,
Softwareobjekten für
Videodienste, Softwareobjekten für
Telefaxdienste, Softwareobjekten für Audiostreaming, Softwareobjekten für die Audioaufzeichnung,
Softwareobjekten für
die Audioankündigung,
Softwareobjekten für
die Audioverstärkungssteuerung,
Softwareobjekten für
automatische Verstärkungssteuerung,
Softwareobjekten für
die Erfassung von Audioereignissen, Softwareobjekten für Mediendaten-Codierer/Decodierer,
Softwareobjekten für
Audioerzeugung, Softwareobjekten für Data Scrambling (IPsec),
Softwareobjekten für das
Identifizieren von Dienstegüte
und Kombinationen aus diesen besteht.
-
Noch
weiter kann die Software für
das Erfassen von Audioereignissen aus der Gruppe bestehend aus DTMF-Detektor-
und Decodiersoftware, VAD-Detektorsoftware, Software zum Erfassen
des lautesten Sprechers und Kombinationen aus diesen ausgewählt werden.
-
Auch
können
die Softwareobjekte für
die Audioerzeugung aus der Gruppe bestehend aus DTMF-Generatoren,
algorithmischen Tongeneratoren, CNG (Komfort-Rauscherzeugung – Comfort
Noise Generation)-Erzeugersoftware, Softwareobjekten für das Audiostreaming,
Softwareobjekten für
die Audiowiedergabe und Kombinationen aus diesen ausgewählt werden.
-
Eine
weitere Ausgestaltung des Datenservers der vorliegenden Erfindung
besteht darin, daß die
Sitzungssteuerungsschicht der verteilten Softwarearchitektur eine
Dialogsteuerungs-Teilschicht und
eine Sitzungsverwaltungs- und Administrations-Teilschicht aufweist.
-
Die
Steuerungs-Teilschicht umfaßt
wenigstens eine Steuerschnittstelle für den Datenserver.
-
Die
Sitzungsverwaltungs- und Administrations-Teilschicht ist dazu ausgelegt,
die Software-Ressourcen
der verteilten Softwarearchitektur unabhängig von dem Steuerprotokoll
des Netzwerkes für
digitale Mediensignale, die in Paketform gesendet werden, zu steuern
und zu verwalten, mit dem der Datenserver zum Empfangen und Verarbeiten
dieser digitalen Mediensignale verbunden ist.
-
Der
Datenserver der vorliegenden Erfindung kann derart sein, daß die wenigstens
eine Steuerschnittstelle der Dialogsteuerungs-Teilschicht der Sitzungssteuerungsschicht
so ausgelegt ist, daß sie
mit einem Netzwerk für
digitale Mediensignale, die in Paketform übertragen werden, verbindbar
ist, entsprechend einem gesteuerten Protokoll, das aus der Gruppe
der Steuerprotokolle ausgewählt
ist, die aus dem Mediengateway-Steuerungsprotokoll (MGCP – Media
Gateway Control Protocol), PacketCableTM NCS,
PacketCableTM Audioserverspezifikation-Sitzungseinleitungsprotokoll
(SIP – Session
Initiation Protocol), VoiceXMLTM, SALT,
MEGACO, ITU-T, H.248 und Kombinationen und Ableitungen aus diesen
besteht.
-
Typischerweise,
wie oben angegeben, wird ein Datenserver im Zusammenhang mit der
vorliegenden Erfindung als ein Medienserver ausgestaltet, der zur
Verwendung in Netzwerken ausgelegt ist, in denen Audiodaten in der
Form digitaler Medienpakete verschickt werden.
-
Darüber hinaus
kann typischerweise jeder Datenserver im Zusammenhang mit der vorliegenden
Erfindung, ob er als ein Medienserver oder als ein Mediengateway
ausgestaltet ist, eine einzige Karte umfassen, die alle Funktionen
ausführt,
oder eine Vielzahl von Karten, von denen manche Medienverarbeitungsfunktionen
ausführen
und andere Karten Konsole-Controllerfunktionen
für alle
Karten, die auf der Konsole angebracht sind, ausführen.
-
Jeder
Datenserver im Zusammenhang mit der vorliegenden Erfindung kann
mit wenigstens einem externen Audio-Dateiserver und/oder einem externen
Spracherkennungs-Dateiserver verbunden werden.
-
Wenn
dies der Fall ist, speichert der externe Audio-Dateiserver aufgezeichnete
Audiodateien und leitet sie zu und von der wenigstens einen Medienprozessorkarte,
und der externe Spracherkennungs-Dateiserver leitet synthetisiertes
Audio zu und von der wenigsten einen Medienprozessorkarte.
-
Die
digitalen Medienpakete können
in einem Protokoll transportiert werden, das aus der Gruppe bestehend
aus: Internetprotokoll (IP), Protokoll für asynchronen Übertragungsmodus
(ATM – Asynchronous
Transfer Mode), Frame Relay-Protokoll und Kombinationen aus diesen
ausgewählt
werden.
-
Ein
Datenserver im Zusammenhang mit der vorliegenden Erfindung kann
als ein Medienserver ausgestaltet werden, der zur Verwendung in
Netzwerken ausgelegt ist, in dem Audiodaten in der Form digitaler
Medienpakete gesendet werden.
-
KURZBESCHREIBUNG DER ZEICHNUNGEN:
-
Die
neuen Merkmale, von denen vermutet wird, daß sie für die vorliegende Erfindung
kennzeichnend sind, was ihre Struktur, Organisation, Verwendung
und Betriebsverfahren betrifft, zusammen mit weiteren Zielen und
Vorteilen, werden aus den folgenden Zeichnungen besser verstanden
werden, in denen eine gegenwärtig
bevorzugte Ausführungsform
der Erfindung nun beispielhaft veranschaulicht werden wird. Es wird
jedoch ausdrücklich
verstanden, daß die
Zeichnungen nur dem Zweck der Veranschaulichung und Beschreibung
dienen und nicht als eine Definition der Grenzen der Erfindung gedacht sind.
Ausführungsformen
dieser Erfindung werden nun beispielhaft im Zusammenhang mit den
beigefügten
Zeichnungen beschrieben, in denen:
-
1 eine
physikalische Übersicht über einen
Datenserver im Zusammenhang mit der vorliegenden Erfindung liefert;
-
2 eine Übersicht über den
Daten- und Steuersignalfluß bei
einem Datenserver im Zusammenhang mit der vorliegenden Erfindung
liefert;
-
3 eine Übersicht
darüber
liefert, wie Medienpakete innerhalb eines Datenservers im Zusammenhang
mit der vorliegenden Erfindung verteilt werden können; und
-
4 eine Übersicht über die
Softwarearchitektur der vorliegenden Erfindung liefert.
-
GENAUE BESCHREIBUNG DER BEVORZUGTEN AUSFÜRHUNGSFORMEN:
-
Die
neuen Merkmale, von denen vermutet wird, daß sie für die vorliegende Erfindung
kennzeichnend sind, was ihre Struktur, Organisation, Verwendung
und Betriebsverfahren betrifft, zusammen mit weiteren Zielen und
Vorteilen, werden aus der folgenden Diskussion besser verständlich.
-
Ein
Datenserver im Zusammenhang mit der vorliegenden Erfindung wird
mehrere Medientypen unterstützen,
so wie Sprache, Daten, Bild, Video und Faksimile. Er wird auch eine
Vielzahl von Diensten und Anwendungen zur Verfügung stellen, so wie Sprach-
und Videokonferenz, Nachrichtentransfer, interaktive Sprachantwort,
Videostreaming und dergleichen.
-
Wie
erwähnt,
sind Datenserver im Zusammenhang mit der vorliegenden Erfindung
insbesondere für
den Einsatz in Netzwerken gedacht, in denen Mediensignale als digitale
Signale in Paketform übertragen
werden. Die Mediensignale können
beispielsweise Audiodaten in Paketform, Videodaten in Paketform,
Steuerdaten in Paketform, Informationsdaten in Paketform und Kombinationen
aus diesen sein. Auf jeden Fall sollen die Pakete aus Mediendaten
von dem Datenserver verarbeitet werden.
-
Jedoch,
wie oben angemerkt, obwohl Datenserver im Zusammenhang mit der vorliegenden
Erfindung als Mediengateways ausgestaltet werden können, sind
sie typischerweise als Medienserver ausgestaltet, und es ist dieser
Aufbau, auf den die folgende Diskussion insbesondere gerichtet ist,
zu Zwecken der Klarheit und beispielhaft auf eine typische Architektur
von Datenservern, so wie Medienservern, die im Zusammenhang mit
der vorliegenden Erfindung stehen.
-
Typischerweise
stellt ein solcher Medienserver eine Anordnung aus wiederprogrammierbaren
digitalen Signalprozessoren zur Verfügung, auf die von einem in
Echtzeit arbeitenden Transportprotokollrouter zugegriffen werden
kann. Somit, wenn Mediendaten – digitale
Da ten in Paketform – in
einen Medienserver im Zusammenhang mit der vorliegenden Erfindung
einlaufen, werden die Mediensignale direkt über eine Rückwandplatine und über die
Vielzahl der Inter-Prozessorbusse auf der Medienprozessorkarte oder
den Karten zu einem digitalen Signalprozessor geleitet. Sobald die
Mediendatenpakte die digitalen Signalprozessoren erreichen, können sie
in einer Vielfalt und Anzahl unterschiedlicher Arten verarbeitet
werden. Zum Beispiel kann Bildanalyse und -manipulation in Echtzeit,
einschließlich
paralleler Verarbeitung von Bild/Videodaten, für die automatisierte Szenenanalyse
und Videoindexierung durchgeführt werden,
indem ein Medienserver im Zusammenhang mit der vorliegenden Erfindung
verwendet wird.
-
Genauer
finden Medienserver im Zusammenhang mit der vorliegenden Erfindung
unmittelbare Funktionalität
in Telefonienetzwerken, insbesondere denen, die über ein IP- oder ATM-Paketnetzwerk arbeiten.
-
Jeder
digitale Signalprozessor oder jede Medienprozessorkarte, wie hiernach
beschrieben, wird als softwaremäßig aufrüstbar angesehen,
so daß neue
Merkmale und/oder Protokolle dem Medienserver dynamisch hinzugefügt werden
können.
-
Tatsächlich kann
bei jeder Sitzung die Programmierbarkeit der digitalen Signalprozessoren,
die die Medienprozessorkarten bevölkern, dynamisch sein, wodurch
die Leistungsfähigkeit
der Hardware maximiert wird.
-
Mit
Bezug nun auf die 1 und 2 sind zwei
vom Konzept her unterschiedliche Darstellungen eines Datenservers
im Zusammenhang mit der vorliegenden Erfindung gezeigt, in jedem
Fall bei 10. In 1 ist die Konzeptualisierung
tatsächlich
physikalisch; in 2 steht die Konzeptualisierung
tatsächlich
in bezug auf die Art und Weise, in der Steuer- und Mediensignale
durch den Medienserver transportiert werden.
-
Typischerweise
wird ein Datenserver im Zusammenhang mit der vorliegenden Erfindung
als ein Medienserver, wie in 1 ausgestaltet,
eine einzige Konsole-Controllerkarte 12 und eine Vielzahl
von Medienprozessorkarten 14 umfassen. Die Konsole-Controllerkarte
und die Medienprozessorkarten sind in eine Kartenkonsole in einer
wohlbekannten Weise eingesteckt.
-
Die
Konsole wird auch eine Vielzahl Rückwandbusse haben, die gemeinsam
bei 18 gezeigt sind, die alle über Busverbinder 20 mit
den jeweiligen Karten 12, 14, 16 verbunden
sind. Genauere Diskussion der jeweiligen Struktur und Funktionen
der Karten 12, 14, 16 und der Busse 18 kann
in den oben angegebenen ebenfalls anhängigen Anmeldungen gefunden
werden.
-
Ein
IP- oder ATM-Netzwerk oder eine Anzahl solcher Netzwerke kann über Ethernet
oder eine andere Weise mit dem Medienserver verbunden sein. Zum
Beispiel können
ein Steuer-IP-Netzwerk 22,
ein Verwaltungs-IP-Netzwerk 24 und eine oder mehrere Medien-IP-
oder – ATM-Netzwerke 26 mit
dem Medienserver verbunden sein, wie denen, die in der 1 und 2 gezeigt
sind und wie es in weiteren Einzelheiten hiernach diskutiert wird.
-
Es
wird in den 1 und 2 bemerkt
werden, daß das
Steuer-IP-Netzwerk 22 und ein Verwaltungs-IP-Netzwerk 24 jedes
mit der Konsole-Controllerkarte 12 verbunden sind.
-
Eine
Craft-Schnittstelle 28 kann auch mit der Konsole-Controllerkarte 12 verbunden
werden, wie es in 2 zu sehen ist. Typischerweise
ist die Craft-Schnittstelle 28 durch eine RS-232-Schnittstelle 48 mit
der Konsole-Controllerkarte 12 verbunden; die in 1 gezeigt
ist und die für
weitere Signalanschlußfähigkeit
zu der Konsole-Controllerkarte 12 sorgen kann, so wie diagnostische
Zwecke.
-
Darüber hinaus,
wie in 2 zu sehen, unterstützt das Steuer-IP-Netzwerk 22 einen
Steueragenten; und wie oben angemerkt kann sich der Steueragent
auf einem Softswitch oder einem Anwendungsserver befinden.
-
Mit
besonderem Bezug auf 2 wird zunächst bemerkt werden, daß ein Medien-IP-Netzwerk 26 optional
einen Gateway 30 zu einem PSTN-Netzwerk aufweisen kann,
wodurch geeignete Signalverwaltung und -übersetzung geschehen kann,
oder zu einem VoIP/VoATM-Anschluß 32 oder zu
beiden; zusammen mit einem externen Audio-Dateiserver 80,
der aufgezeichnete Audiodateien mit dem Datenserver austauscht,
und einen externen Spracherkennungs-Dateiserver 79, der
Ströme
von Audiodaten mit dem Datenserver austauscht.
-
Typischerweise
wird jede Medienprozessorkarte 14 Dateien mit dem externen
Audio-Dateiserver 80 austauschen,
wobei entweder ein http- oder ein NFS-Protokoll verwendet wird.
Solche Dateien sind immer aufgezeichnetes Audio. Der Austausch von Dateien
von einer Medienprozessorkarte 14 kann derart sein, daß eine Karte 14 Audioaufzeichnungen an
den externen Audio-Dateiserver 80 sendet und Audioaufzeichnungen
von diesem wiedergewinnt.
-
Der
Austausch von aufgezeichneten Audiodateien mit dem Spracherkennungs-Dateiserver 79 wird
typischerweise durchgeführt,
indem das RTP/UDP/IP-Protokoll verwendet wird. Der Spracherkennungs-Dateiserver 79 kann
synthetisiertes Audio in derselben Weise zurück zu einer Medienprozessorkarte 14 treiben.
Eine Steuerverbindung wird von der Medienprozessorkarte 14 verwendet,
um den Spracherkennungs-Dateiserver 79 zu informieren,
was mit dem Audio zu tun ist, das zu ihm getrieben wird, und auch
um Information über
das aufgezeichnete Audio zu sammeln, nachdem es von einer Sprachmaschine
(nicht gezeigt) analysiert worden.
-
Weitere
verschiedene Protokolle und Verbindungsmodi sind in 2 zur
Verbindung des Verwaltungs-IP-Netzwerks 24 und der Craft-Schnittstelle 28 vorgeschlagen,
jedoch sind sie lediglich beispielhaft und sind nicht so gedacht,
daß sie
den Datenserver beschränken
oder für
diesen besonders beschreibend sind, der als ein Medienserver oder
als ein Mediengateway ausgestaltet ist.
-
Wie
in 2 zu sehen ist, können Steuersignale zwischen
der Konsole-Controllerkarte 12 und dem Steueragenten 22 laufen,
wie bei 34; und zwischen der Konsole-Controllerkarte 12 und
dem Verwaltungs-IP-Netzwerk 24 und der Craft-Schnittstelle 28,
durch eine Bereithaltungs-Schnittstelle, wie sie bei 36 gezeigt
ist.
-
Natürlich laufen
Signale durch die Konsole-Controllerkarte 12, wie bei 38,
und zwischen der Konsole-Controllerkarte und verschiedenen Medienprozessorkarten 14 über die
Rückwandbusse 18,
wie bei 40 in 2 gezeigt.
-
Ähnlich werden
digitale Mediendaten in Paketform zu und von den verschiedenen Medienprozessorkarten 14 geleitet,
wie bei 42 gezeigt.
-
Aus
Gründen
der Bequemlichkeit ist die Schnittstelle zwischen dem Medienserver 10 und dem
Medien-IP-Netzwerk 26 als durch ein Paketnetzwerk 44 gebildet
gezeigt, das hiernach diskutiert werden soll, über verschiedene Signalverbindungen, wie
sie 46 gezeigt sind.
-
Steuersignale
in Paketform fließen
zwischen den Medienprozessorkarten 14 und dem Dateiserver 80 für aufgezeichnetes
Audio ebenso wie zwischen dem Datenserver und dem Spracherkennungs-Dateiserver 79 über Verbindungen 42, 46 zu
dem Paketnetzwerk 44.
-
Innerhalb
des Medienservers und insbesondere innerhalb jeder der Prozessorkarten 14 gibt
es eine Vielzahl digitaler Signalprozessoren 50. Sie sind in 3 gezeigt,
wobei eine Anordnung aus digitalen Signalprozessoren gezeigt ist,
wobei eine Vielzahl von digitalen Signalprozessoren so angegeben
ist, daß sie
für jede
der verschiedenen Karten vorgesehen sind, die in 1 gezeigt
sind.
-
Innerhalb
des Medienservers 10, wie es in 3 zu sehen
ist, gibt es auch eine Vielzahl von Steuerprozessoren 52 und
einen Digitalsignalrouter 54, der in Echtzeit arbeitet,
um so Mediendatenpakete 56 durch den Medienserver 10 zu
den verschiedenen Digitalsignalprozessoren 50 zu verteilen.
-
Die
Beziehung zwischen den 1, 2 und 3,
wie sie verschiedene Aspekte eines Medienservers, seine räumliche
Anordnung und seine Anordnung des Signal- und Steuerflusses veranschaulichen,
wird nun klar verstanden sein.
-
Es
wird auch gesehen werden, daß die
Konsole-Controllerkarte 12 Zugriff auf Steuer- und Verwaltungssignale
für verteilte
Software liefert, die unter den Karten auf der Konsole verteilt
wird; und natürlich,
daß die
Medienprozessorkarten Zugriff auf die Mediensignale bieten, die
von dem Medien-IP-Netzwerk 56 in Paketform in den Medienserver
einlaufen.
-
Mit
Bezug nun auf 4 wird nun die Architektur der
verteilten Software, die unter den Karten auf der Konsole verteilt
wird, beschrieben. Zunächst wird
bemerkt werden, daß die
Softwarearchitektur modular ist, und daß sie vier Hauptkomponenten
aufweist. Diese sind eine Transportschicht 60, eine Medienverarbeitungsschicht 62,
eine Sitzungssteuerungsschicht 64 und eine Verwaltungsebene 66.
Es wird bemerkt werden, daß die
Verwaltungsebe ne 66 sich über die Transportschicht 60,
die Medienverarbeitungsschicht 62 und die Sitzungssteuerungsschicht 64 erstreckt.
-
Es
ist oben ausgeführt
worden und sollte deutlich verstanden sein, daß die digitalen Signalprozessoren 50,
die auf die Karten auf der Konsole des Medienservers 10 verteilt
sind, alle so ausgelegt sind, daß sie die Mediendatenpakete 56 verarbeiten,
wenn sie in den Medienserver 10 einlaufen, im Zusammenhang
mit einer Vielzahl diskreter Softwareobjekte, die in den verschiedenen
digitalen Signalprozessoren 50 eingebettet sind.
-
Es
wird auch verstanden werden, daß die Vielzahl
der diskreten Softwareobjekte innerhalb der Vielzahl der digitalen
Signalprozessoren 50 dynamisch unter der Steuerung der
Steuer- und Verwaltungssignale
bei 34, 38 und 40 änderbar sind. Somit, wie erwähnt, können die
diskreten Softwareobjekte, die mit verschiedenen Diensten verbunden
sind, jederzeit abgeändert,
aufgerüstet
oder hinzugefügt werden.
Die diskreten Softwareobjekte können
auch durch die Bereithaltungs-Schnittstelle 36 beim Anlaufen
oder in einer zeitunkritischen Weise modifiziert werden.
-
Man
sieht aus 4, daß mehrere Aufgaben der Verwaltungsebene 66 das
Bereitstellen und Überwachen
(80) der Operationen des Medienservers, das Bereitstellen
von Datenbankeinrichtungen (82), die Verwaltung von Protokolleinrichtungen
und dergleichen umfassen.
-
Ein
weiterer Zweck, dem die Verwaltungsebene 66 dient, besteht
darin, Alarme (84) im Zusammenhang mit vorbestimmten Kriterien
dafür auszugeben;
wobei es verstanden wird, daß,
wenn die Verwaltungsebene 66 die Schichten der Softwarearchitektur
im Zusammenhang mit der vorliegenden Erfindung überwacht, Anomalien in dem
Betrieb der Software erfaßt
werden und ein geeigneter Alarm ausgegeben wird oder andere korrigierende
Schritte vorgenommen werden.
-
Eine
Vielfalt von Protokollen und Diensteidentitäten (81, 83, 85)
wird in 4 erwähnt. Sie sind nicht als in
irgendeiner Weise beschränkend
gedacht, da sie lediglich veranschaulichend sind, und beziehen sich
auf eine typische System-Softwarearchitektur für einen Datenserver im Zusammenhang mit
der vorliegenden Erfindung.
-
Innerhalb
der Architektur der verteilten Software der vorliegenden Erfindung
umfaßt
die Transportschicht 60 wenigstens eine Verbindungsschnittstelle 70,
welche für
die Verbindung mit einem Paketnetzwerk 44 sorgt, von dem
die Mediensignale in Paketform empfangen werden. Es gibt auch eine
Netzwerk-Abstraktionsschicht 72, die dazu ausgelegt ist, eine
Schnittstelle zu der Medienverarbeitungsschicht 62 für alle Medienpaketdaten
zur Verfügung
zu stellen, die durch den Medienserver 10 von dem Paketnetzwerk 44 empfangen
werden.
-
Wie
erwähnt,
kann es innerhalb der Teilschicht 70 der Verbindungsschnittstellen
eine Vielzahl unterschiedlicher Verbindungsschnittstellen (87, 89, 91, 93)
zu dem Paketnetzwerk 44 geben. Somit wird für eine Vielzahl
von Medienpaketdaten-Diensteprovidern Modularität zur Verfügung gestellt, die unterschiedliche
Datenpaket-Lieferprotokolle und -systeme benutzen können. Das
kann zweierlei bedeuten: Erstens kann ein Datenserver im Zusammenhang
mit der vorliegenden Erfindung im wesentlichen "außerhalb
der Konsole" an
irgendeinen Diensteprovider liefern, dessen Geschäft das Handhaben,
Senden und Verarbeiten der Medienpaketdaten umfaßt. Es bedeutet auch, daß der Diensteprovider
selbst mit mehr als einem Medienpaket-Datenpaket-Lieferprotokoll
arbeiten kann, die alle mit demselben Datenserver 10 verbunden
sind.
-
Mit
Bezug auf die Medienverarbeitungsschicht 62 wird man sehen,
daß unter
den verschiedenen Komponenten innerhalb der Schicht es einen Softwareverwalter 74 gibt.
Die Aufgabe des Softwareverwalters besteht darin, die Vielzahl der
diskreten Softwareobjekte zu initialisieren, zu koordinieren und
zu steuern, die in der Vielzahl der digitalen Signalprozessoren 50 auf
jeder der wenigstens einen Medienprozessorkarte 14 eingebettet
sind. Die diskreten Softwareobjekte sind im allgemeinen relativ kleine
Softwareobjekte, die in einer solchen Weise geschrieben sind, daß, selbst
wenn sie initialisiert werden, sie keine Verarbeitungsressourcen
der digitalen Signalprozessoren brauchen, in denen sie sitzen, bis
zu dem Zeitpunkt, in dem sie zu laufen beginnen.
-
Die
Medienverarbeitungsschicht 62 umfaßt auch logische Eingangs-
und Ausgangsports (nicht angegeben, da sie tatsächlich Hardwarekomponenten
sind), die die logische Kommunikation zu und von jeweils der Transportschicht 60 und
der Sitzungssteuerungsschicht 42 erlauben.
-
Die
Vielzahl der Softwareobjekte, die in der Medienprozessorschicht
enthalten sein können, kann
ziemlich variiert werden. Wie angemerkt, gibt es bestimmte Dienste
und Protokolle, die in 4 bezeichnet sind, und sie sind
im Hinblick auf eine typische Ausführungsform eines Medienprozessors 10 beispielhaft,
jedoch werden sie ansonsten hierin nicht weiter diskutiert und beschrieben.
-
Jedoch
ist es für
jeden Medienprozessor im Zusammenhang mit der vorliegenden Erfindung
typisch, daß die
diskreten Softwareobjekte, die in der Medienverarbeitungsschicht
enthalten sind, die folgenden umfassen können: Protokollbehandler 95, Softwareobjekte 97 für Audioverarbeitung,
Softwareobjekte für
Mischersteuerung, Softwareobjekte für Videodienste, Softwareobjekte 99 für Audiostreaming, Softwareobjekte 101 für Faksimiledienste,
Softwareobjekte 103 für
Audioaufzeichnung, Softwareobjekte 105 für Audioankündigungen,
Softwareobjekte 107 für
Audioverstärkungssteuerung,
Softwareobjekte 109 zum Erfassen von Audioereignissen,
Softwareobjekte 111 für
Mediendaten-Codierer/Decodierer, Softwareobjekte 113 für die Audioerzeugung,
Softwareobjekte 115 für
das Data Scrambling (IPsec), Softwareobjekte 117 für das Identifizieren
der Dienstegüte
und Kombinationen aus diesen.
-
Wenn
dies der Fall ist, dann wird typischerweise die Software zum Erfassen
von Audioereignissen aus der Gruppe bestehend aus DTMF-Detektor- und
-Decodersoftware, VAD-Detektorsoftware,
Software zum Bestimmen des lautesten Sprechers und Kombinationen
aus diesen gewählt.
-
Auch
werden typischerweise die Softwareobjekte für das Erzeugen von Audio aus
der Gruppe bestehend aus DTMF-Generatoren, algorithmischen Tongeneratoren,
CNG (Komfort-Rauscherzeugung – Comfort
Noise Generation)-Generatorsoftware, Softwareobjekten für Audiostreaming,
Softwareobjekten für
Audiowiedergabe und Kombinationen aus diesen ausgewählt.
-
Mit
Bezug nun auf die Sitzungssteuerungsschicht 64 wird man
sehen, daß die
Schicht eine Dialogsteuerungs-Teilschicht 76 und eine Sitzungsverwaltungs-
und Administrations-Teilschicht 78 umfaßt.
-
Die
Dialogsteuerungs-Teilschicht 76 umfaßt wenigstens eine Steuerschnittstelle
für den
Medienserver 10. Das ist die Schnittstelle, über die
der Medienserver 10 mit dem Steuer-IP-Netzwerk 22 und/oder dem Verwaltungs-IP-Netzwerk 24 kommunizieren
wird.
-
Darüberhinaus
ist die Sitzungsverwaltungs- und Administrations-Teilschicht 78 dazu
ausgelegt, die Softwareressourcen der verteilten Softwarearchitektur,
die in 4 gezeigt ist, zu steuern und zu verwalten, unabhängig von
dem Steuerprotokoll, das über
die Wege 34, 38 und 40 zu den Medienprozessoren
gegeben wird. Das heißt,
ungeachtet dessen, welches Protokoll benutzt wird, um die Verarbeitung der
digitalen Mediensignale zu steuern, die von dem Medienserver empfangen
werden, wird die Sitzungsverwaltungs- und Administrations-Teilschicht die Softwareressourcen
des Medienservers unabhängig von
dem Steuerprotokoll verwalten, so daß die Mediendatenpakete 56 (3)
die diskreten Softwareobjekte erreichen werden, die in der Medienverarbeitungsschicht 62 eingebettet
sind.
-
Typischerweise
gibt es eine Steuerungsschnittstelle, jedoch kann es in der Dialogsteuerungs-Teilschicht 76 eine
Vielzahl von Steuerungwschnittstellen geben. Jede Steuerungsschnittstelle
in der Dialogsteuerungs-Teilschicht ist dazu ausgelegt, daß sie mit
einem Netzwerk für
digitale Mediensignale verbunden ist, die in Paketform unter der
Steuerung eines Protokolls gesendet werden, das typischerweise aus
der Gruppe der Steuerprotokolle gewählt werden kann, die aus dem
Mediengateway-Steuerprotokoll (MGCP – Media Gateway Control Protocol) 121,
dem PacketCableTM NCS123, der PacketCableTM Audioserver-Spezifikation, Sitzungseinleitungsprotokoll
(SIP – Session
Initiation Protocol) 125, VoiceXMLTM 127,
MEGACO, SALT und Kombinationen aus diesen besteht.
-
Es
ist ein Datenserver beschrieben worden, und insbesondere ist ein
Medienserver beschrieben worden, der eine bevorzugte Ausführungsform
einer Architektur für
verteilte Software hat, die unter den Karten auf einer Kartenkonsole
innerhalb eines Medienservers gefunden wird. Es ist bemerkt worden, daß die Vielzahl
der diskreten Softwareobjekte, die auf den digitalen Signalprozessoren
gefunden werden sollen, welche unter den Medienprozessorkarten innerhalb
eines Datenservers der vorliegenden Erfindung verteilt sind, dynamisch änderbar
sind, indem sie aufgerüstet,
modifiziert oder hinzugefügt
werden, unter der Steuerung von Steuerungs- und Verwaltungssignalen,
die über
ein Steuerungs- und Verwaltungssystem von einem Steuerungs-IP-Netzwerk oder
einem Verwaltungs-IP-Netzwerk geliefert werden, die außerhalb
des Medienservers sind – typischerweise
von einem Softswitch, einem Anwendungsserver, einem Serververwaltungssystem
oder einem Elementverwaltungssystem.
-
Der
Datenserver, insbesondere wie er in seiner Ausführungsform als ein Medienserver
beschrieben ist, ist dazu ausgelegt, eine Vielzahl variierender Medienverarbeitungsdienste
auf Mediendaten in Paketform, die an den Datenserver geliefert werden,
zur Verfügung
zu stellen und die Medienverarbeitung wird unabhängig von dem Protokoll geschehen,
mit dem die Mediendaten in Paketform an den Datenserver geliefert
worden sind.
-
IN DER BESCHREIBUNG ZITIERTE
REFERENZEN
-
Diese
Liste der Referenzen, die von dem Anmelder genannt sind, dient nur
dem Komfort für
den Leser. Sie bildet keinen Teil des europäischen Patentdokumentes. Obwohl
große
Sorgfalt beim Zusammenstellen der Referenzen vorgenommen ist, können Fehler
oder Weglassungen nicht ausgeschlossen werden, und das EPA lehnt
alle Verantwortung in dieser Hinsicht ab.
-
Nichtpatentliteratur, die in der Beschreibung
genannt ist
-
- • LAURSEN
A u.a. Oracle Media Server Framework, 05. März 1995, 203-208 [0002]