-
Die
vorliegende Erfindung bezieht sich auf die Ankündigung von Verbindungen mit
Mediendatenströmen
für eine
Mediensitzung über
ein Kommunikationsnetzwerk.
-
Mehrfachsendungen
werden im Internet zunehmend üblich.
Im Gegensatz zu Punkt-zu-Punkt-Sendungen (Einzelsendungen) mit dem
Standard-Internet-Protokoll (IP) ermöglichen IP-Mehrfachsendungen
die gleichzeitige Übertragung
von Informationen von einer einzelnen Quelle an eine Gruppe von
Empfängern.
Unterstützung
der Leitweglenkung für
IP-Mehrfachsendungen wird von dem MBone (IP Multicast Backbone)
bereitgestellt, das ein virtuelles Netzwerk ist, das sich auf der
obersten Ebene des Internets befindet.
-
IP-Mehrfachsendungen
ermöglichen
Echtzeitkommunikationen über
IP-Weitbereichsnetze, und typische Sendungen enthalten Video- und
Audiokonferenzen, Multimedia-Livetraining, Universitätsvorlesungen und
Sendungen von Live-Fernsehprogrammen.
-
Eine
Mehrfachsendung besteht normalerweise aus einer Multimediasitzung,
die aus verschiedenen individuellen Mediendatenströmen aufgebaut
ist, wie typischerweise Video-, Audio-, Zeichenflächen- oder
Rohdaten. Manche Sitzungen sind fortlaufend, aber die Mehrzahl besteht
für eine
bestimmte Zeitdauer, obwohl sie nicht kontinuierlich sein müssen. Auf
Mehrfachsendungen basierte Übertragungen über das
MBone weichen von IP-Übertragungen
mit Einzelsendungen dadurch ab, dass jeder Benutzer, der die Sendung
empfängt,
an der Sitzung teilnehmen kann (außer, wenn die Sitzung verschlüsselt ist),
und um eine Sendung zu empfangen, muss der Benutzer nur die entsprechende
Sendeadresse und die Zeitinformation kennen.
-
Vor
einer Mehrfachübertragung
wird eine geeignete Ankündigung
gemacht, die eine Sitzungsbeschreibung enthält, üblicherweise an eine Mehrfachsendeadresse
einer IP-Gruppe. Standardsitzungsbeschreibungen werden mit einem
Sitzungsbeschreibungsprotokoll (SDP, Session Description Protocol)
erzeugt, wie in dem Entwurf der Internet Engineering Task Force
RFC 2327 definiert ist. SDP ist ein einfaches, ASCII-textbasiertes
Protokoll, das verwendet wird, um Echtzeitmultimediasitzungen und
die zugehörigen
Zeitablaufinformationen zu beschreiben. SDP-Nachrichten werden in
ein Trägerprotokoll
eingekapselt, das als ein Sitzungsankündigungsprotokoll SAP (Session
Announcement Protocol) bekannt ist, das, zusätzlich dazu, dass es die erforderliche
IP-Adressierung und Leitweglenkungsinformationen zur Übertragung über das
Internet oder MBone enthält,
ermöglicht,
dass die SDP-Nachricht verschlüsselt,
signiert oder komprimiert wird. Eine Ankündigung kann dann in regelmäßigen Intervallen
an die Gruppenankündigungsadresse
gesendet werden. Als eine Alternative zum SAP kann eine Sitzung
angekündigt
werden, indem eine SDP-Nachricht auf einer World Wide Web (WWW)-Seite
platziert wird, oder indem sie an einzelne per E-Mail oder als Einzelsendung
geschickt wird, um sie zur Teilnahme einzuladen.
-
Eine
SDP-Nachricht überträgt Informationen über jeden
Medienstrom in der Multimediasitzung mit Mehrfachsendungen, um den
Empfängern
zu ermöglichen,
an der Sitzung teilzunehmen. Eine typische SDP-Nachricht enthält Namen
und Zweck der Sitzung, die Zeiten) und das Datum (die Daten), zu
denen die Sitzung aktiv sein wird, Mediendatenstromkomponenten der
Sitzung und Informationen, die erforderlich sind, um an jedem Mediendatenstrom
teilzuhaben (wie Mehrfachsendungsadresse, Port, Medienformat). Die SDP-Nachricht
kann auch Details der erforderlichen Bandbreite für die Nutzung,
einen Schlüssel
für die
Verschlüsselung,
der erforderlich ist, um an einer sicheren Übertragung mit Mehrfachsendungen
mit Verschlüsselung
mit einem öffentlichen
Schlüssel
teilzunehmen, Kontaktinformationen für den Organisator der Sitzung
mit Mehrfachsendungen und einen eindeutigen Ressourcenbezeichner
(URI, Unique Resource Indicator), der auf eine WWW- oder Intranetwebseite
zeigt, wo weitere Informationen über
die Sitzung zu finden sind, z. B. Hintergrundinformationen, die
sich auf die Konferenz beziehen.
-
Die
Ebene der Teilnahme, auf der ein Benutzer an einer Sitzung oder
einem Datenstrom mitwirken darf, hängt von deren Zweck ab. In
einer Fernsehsendung mit Mehrfachsendungen können Benutzer typischerweise
nur Datenströme
der Sitzung empfangen, während
in einer Konferenzsitzung mit Mehrfachsendungen die Kommunikation
bidirektional mit einem zentralen Server (wie etwa Gruppenadresse 120)
ist, der Sendungen von jedem Teilnehmer empfängt und sie zu den anderen
Teilnehmern weiterleitet. Die Ebene der Teilnahme, die von einem
Benutzer in einer Sitzung oder einem Datenstrom erwartet wird, kann
in der Sitzungsbeschreibung explizit angegeben sein, oder kann aus
der Sitzungsbeschreibung inhärent
hervorgehen, z. B. wenn eine nur empfangende Anwendung einem Typ
von Mediendatenströmen
in der Sitzungsbeschreibung zugeordnet wird.
-
Die
europäische
Patentanmeldung, Veröffentlichungsnummer
EP 0798905 A2 ,
im Namen von Digital Vision Laboratories Corporation, veröffentlicht
ein System und ein Verfahren zur Erleichterung der Verbindung zwischen
einer Anwendung und einem Datenstrom. Es wurde entwickelt, um die
Komplexität
einer Client-Anwendung zu verringern, die sonst daran beteiligt
wäre, die Übertragungsroute
zu sichern, Vorgänge
zu synchronisieren, und die Übertragung
im gewünschten
Format auszuführen,
wenn mit einem Datenstrom verbunden wird. Das System erreicht dies,
indem auf Anfrage ein virtu elles Objekt erzeugt wird, an das die
Kundenanwendung einfach die gewünschten
Befehle zum Starten, für
den Rücklauf,
zum Anhalten usw. des Datenstroms ausgibt. Das virtuelle Objekt
erleichtert dann die Verbindung, wobei es eine Schnittstelle zwischen
der Kundenanwendung und dem System bereitstellt, um sicherzustellen,
dass die erforderliche Übertragung
des Datenstroms ausgeführt
wird, und verwendet verschiedene Module, die für die Übertragung der Daten entworfen
wurden, wie etwa ein Zuleitungsmodul, ein Empfängermodul und ein Senkenmodul.
-
Eine
gemeinsame Schnittstelle am Frontende, die von Endbenutzern von
Mehrfachsendungen verwendet wird, ist als Sitzungsverzeichnis-Rendezvous (SDR,
Session Directory Rendezvous) bekannt. Diese Schnittstelle nimmt
die empfangenen Ankündigungen
an, dekodiert die SDP-Nachricht und zeigt die Namen der Sitzungen
an, die noch in einer Liste aktuell sind. Der Endbenutzer kann dann
eine der aufgelisteten Ankündigungen
auswählen,
um weitere technische und benutzerorientierte Details der angekündigten
Sitzung anzusehen. Der Endbenutzer kann aus den angezeigten Informationen
auswählen,
um an einzelnen Datenströmen
der Sitzung teilzunehmen, oder an der ganzen Sitzung teilzunehmen.
Wenn die Datenströme,
an denen teilgenommen werden soll, einmal ausgewählt sind, startet das SDR die
erforderliche mehrsendungsfähige
Multimediaanwendung auf dem Rechner des Endbenutzers, wie etwa Vic
und Vat, und gibt die relevanten Datenstrominformationen (eine Transport-Portadresse)
von der Ankündigung
an die Anwendung weiter, die es der Anwendung ermöglichen,
die Verbindung zu der zugeordneten IP-Mehrfachsendungsadresse aufzubauen und
an dem Datenstrom zur Übertragungszeit
teilzuhaben. Nachdem es die Anwendungen gestartet hat, und die relevanten
Transport-Portadressen weitergegeben hat, spielt das SDR bei der
Sitzung keine weitere Rolle.
-
Verstärkte Verwendung
und Nachfrage nach (Multi)Mediensitzungen in letzter Zeit hat eine
Anzahl von Begrenzungen im SDP hervortreten lassen. SDP beschränkt die
Sitzungsbeschreibungen auf die Definition einer Sitzung mit einem
einzelnen Satz von Zeitpunkten, die auf alle Datenströme darin
angewendet werden. Eine Sitzung, bei der ein Datenstrom während der
laufenden Übertragung
beginnt, kann mit SDP nicht einfach beschrieben werden. Die Struktur
einer Sitzungsbeschreibung, die in SDP geschrieben ist, muss eine
einfache Liste von Datenströmen
sein, die die intuitive Struktur einer komplexen Sitzung nicht reflektieren
kann. SDP unterstützt
einen begrenzten und vordefinierten Satz von Anwendungen, die Datenströme empfangen
können, und
einen begrenzten und vordefinierten Satz von Transportmechanismen
(zum Beispiel einfache Schichtung, RTP und UDP). Da garantierte
Dienstqualität
(QoS, Quality of Service) für
den Kunden und den Versorger mehr und mehr wünschenswert wird, muss auch
die Notwendigkeit erfüllt
werden, eine Vorgehensweise bezüglich
QoS für
die gesamte Sitzung und einzelne Datenströme unter den Bedingungen der
verfügbaren
Systemressourcen, der Anforderungen an die Bandbreite und der unterstützten Anwendungen
zu definieren. Es kann auch Anforderungen an die Priorisierung von
Datenströmen
oder kompliziertere Regeln für
den Empfang von Datenströmen
geben. Eine weitere Anforderung an den Anteil des Versorgers ist
die Notwendigkeit von Einrichtungen zur Rechnungsstellung, die die
Rechnungsstellung an einen Endbenutzer für eine Übertragung mit Mehrfachsendungen,
die er abonniert, entsprechend der QoS und empfangenen Datenströmen usw.
ermöglichen.
Es gibt wenig Spielraum, Informationen über die Vorgehensweise bezüglich QoS
oder Rechnungsstellung, oder irgendwelche Metadaten über die
Sitzung in die herkömmliche
Struktur einer SDP-Sitzungsbeschreibung einzuschließen.
-
Ein
Problem, dem die Anbieter von aktuellen (Multi)Mediensitzungen und
die Entwickler von entsprechenden (Multi)Medienanwendungen gegenüberstehen,
ist der Spanne von Qualifikationen, die erforderlich sind, um eine
Anwendung zu implementieren, die eine Echtzeit-Datenverbindung über ein Kommunikationsnetzwerk
einleiten und verwalten und die (Multi)Medienfunktionen ausführen kann,
die der Endbenutzer erwartet. Zum Beispiel brauchen Entwickler von
Multimedienanwendungen Teams mit Qualifikationen in Audio- und Videokodierung,
Netzwerktransportprotokollen, Echtzeitprogrammierung, Benutzerschnittstellenentwurf
und Integrationsmethoden. Darüber
hinaus war bisher die einzige Art und Weise, auf die eine Vorgehensweise
bezüglich
QoS implementiert werden konnte, eine Sitzungsbeschreibung zu verarbeiten,
um zu bestimmen, welche Datenströme
einer Sitzung ausgeführt
werden können
oder sollen, und dann die Anwendung zu initialisieren, sodass sie
an die entsprechenden Datenströme
angeschlossen wird. Dies erfordert von dem Kommunikationsverwalter
nicht nur, die Anforderungen an die Sitzung und die verfügbaren Systemressourcen,
sondern auch die Fähigkeiten
jeder Anwendung zu kennen.
-
Nach
einem ersten Aspekt der Erfindung wird ein Verfahren zur Verwaltung
von Verbindungen mit Mediendatenströmen für eine Mediensitzung geschaffen,
wobei das Verfahren die folgenden Schritte umfasst:
Empfangen
einer Sitzungsbeschreibung einer Mediensitzung;
Syntaxanalyse
der Sitzungsbeschreibung, um geeignete Medienanwendungsprogramme
zur Verarbeitung des oder jedes Mediendatenstroms in der Sitzungsbeschreibung
zu bestimmen;
und dadurch gekennzeichnet, dass:
die Sitzungsbeschreibung
Daten enthält,
die sich auf eine Vorgehensweise bezüglich der Dienstqualität beziehen;
und
dass das Verfahren weiter folgende Schritte umfasst:
Bestimmen
auf Basis der verfügbaren
Ressourcen unter Anwendung einer Vorgehensweise bezüglich der Dienstqualität, die auf
den Daten basiert, ob Teilnahme an der Mediensitzung realisierbar
ist,
Auswählen
eines oder mehrerer Mediendatenströme, die in der Sitzungsbeschreibung
identifiziert wurden; und
Verbinden des oder jedes ausgewählten Mediendatenstroms
mit einem oder mehreren entsprechenden Medienanwendungsprogrammen
unter Verwendung einer Sitzungssteuerung, die für die Verwaltung von Verbindungen
mit Mediendatenströmen
für das
oder jedes Medienanwendungsprogramm konfiguriert ist.
-
Vorzugsweise
wird die Auswahl von dem oder jedem Mediendatenstrom von der Sitzungssteuerung nach
vorher festgelegten Kriterien durchgeführt.
-
In
bevorzugten Ausführungen
sind die vorher festgelegten Kriterien für die Präferenzen von wenigstens einem
aus der Gruppe, die aus einem Endbenutzer, dem Endgerät und dem
oder jedem Medienanwendungsprogramm besteht, spezifisch.
-
Herkömmlicherweise
wählen
Medienanwendungen einen oder mehrere der in der Sitzungsbeschreibung
identifizierten Mediendatenströme
aus, die erforderlich sind, und geben jeweilige Verbindungsanfragen an
die Sitzungssteuerung weiter.
-
Vorzugsweise
umfasst das Verfahren weiter den Schritt der Weitergabe von wenigstens
einem Teil der Sitzungsbeschreibung an die oder jede Medienanwendung.
-
In
bevorzugten Ausführungen
erzeugen oder modifizieren die Medienanwendungen eine Vorgehensweise
bezüglich
der Dienstqualität
für die
Verbindungsanfragen für
die Verwendung durch die Sitzungssteuerung.
-
Herkömmlicherweise
modifizieren die Medienanwendungen die Sitzungsbeschreibung, um
die nachfolgende Verwaltung von Verbindungen durch das Sitzungssteuerungssystem
zu ändern.
-
Vorzugsweise
gibt die Sitzungssteuerung die Verbindungsanfragen an einen Endgerätekommunikationsverwalter
weiter, der bestimmt, ob die Verbindungsanfragen realisierbar sind
und nachfolgend die Verbindungen einleitet.
-
In
bevorzugten Ausführungen
priorisiert die Sitzungssteuerung die Verbindungsanfragen von den
Medienanwendungen entsprechend der Vorgehensweise bezüglich der
Dienstqualität,
um einen Satz von Verbindungsanfragen zu erzeugen, die an den Kommunikationsverwalter
weitergegeben werden.
-
Herkömmlicherweise
bestimmt der Kommunikationsverwalter Ressourcen, die für jede Verbindungsanfrage
erforderlich sind, und ob den Anfragen unter der Voraussetzung der
verfügbaren
Ressourcen nachgekommen werden kann.
-
Wenn
den Verbindungsanfragen nachgekommen werden kann, werden die Verbindungen
vorzugsweise eingeleitet. Wenn einer Verbindungsanfrage nicht nachgekommen
werden kann, und die Verbindungsanfrage nach einem optionalen Mediendatenstrom
der Mediensitzung besteht, dann fährt der Kommunikationsverwalter
fort, indem er die Verbindungsanfrage als nicht realisierbar erklärt und zu
der nächsten
Verbindungsanfrage übergeht.
Wenn einer Verbindungsanfrage nicht nachgekommen werden kann, und
die Verbindungsanfrage nach einem obligatorischen Mediendatenstrom
der Mediensitzung besteht, fährt
der Kommunikationsverwalter fort, indem er versucht, Ressourcen
freizumachen, um der Verbindungsanfrage zu nachzukommen, und wenn
der Kommunikationsverwalter keine ausreichenden Ressourcen freimachen
kann, um der Verbindungsanfrage nachzukommen, wird die Verbindungsanfrage
als nicht realisierbar erklärt
und der Kommunikationsverwalter verweigert die Teilnahme an der
Mediensitzung.
-
In
bevorzugten Ausführungen
umfasst das Verfahren weiter den Schritt des Bekommens eines fehlenden
Teils der Sitzungsbeschreibung, indem es einem Link oder Links in
der Sitzungsbeschreibung folgt, bevor es die Sitzungsbeschreibung
syntaktisch analysiert.
-
Nach
einem zweiten Aspekt der Erfindung wird ein System zur Verwaltung
von Verbindungen mit Mediendatenströmen geschaffen, die aus einer
Sitzungsbeschreibung für
eine Mediensitzung abgeleitet werden, wobei das System folgendes
umfasst:
eine Sitzungssteuerung für die Syntaxanalyse der Sitzungsbeschreibung,
um geeignete Medienanwendungsprogramme zur Verarbeitung des oder
jedes Mediendatenstroms der Sitzungsbeschreibung zu bestimmen; und
gekennzeichnet dadurch, dass:
das System weiter einen Kommunikationsverwalter
umfasst, um auf Basis der verfügbaren
Ressourcen unter Anwendung einer Vorgehensweise bezüglich der
Dienstqualität
auf Basis von Daten der Dienstqualität, die in der Sitzungsbeschreibung
zur Verfügung
stehen, zu bestimmen, ob die Teilnahme an der Mediensitzung realisierbar
ist, und
die Sitzungssteuerung für die Verwaltung der Verbindungen
der Mediendatenströme
mit den Anwendungsprogrammen konfiguriert ist.
-
In
einem bevorzugten Beispiel der vorliegenden Erfindung werden Medienmodule
einer modularen Sitzungsbeschreibung vor der QoS-Verwaltung durch die entsprechende Multimedia-Client-Anwendung
geprüft, wodurch
die Arbeitsbelastung des Kommunikationsverwalters verringert wird,
das heißt,
die entsprechenden Kundenanwendungen bestimmen, ob die Medienmodule
unterstützt
werden können.
Die Anwendungen können
die Sitzungsbeschreibung erweitern oder modifizieren, um ihre eigene
Vorgehensweise bezüglich
QoS einzubinden oder die Art und Weise zu verändern, auf die die Sitzung
und/oder ihre Einleitung verwaltet werden. Darüber hinaus brauchen Anwendungen
nur Datenströme
von dem Sitzungssteuerungssystem anzufragen, die dem Client zugeordnet
sind, da die Sitzungssteuerung nun die Erzeugung und die Verwaltung
der Datenströme
in Echtzeit zentral handhabt. Auf diese Weise vereinfacht die vorliegende
Erfindung die Anwendungsentwicklung und die Bereitstellung des Dienstes.
-
Ein
weiteres Problem ist, dass Anwendungen in der Lage sein sollten,
sich an verschiedene Netzwerke und Host-Ressourcen anzupassen.
-
Dies
ist in Anwendungen mit mehreren Parteien in heterogenen Umgebungen
besonders wichtig, wo für
jede Partei verschiedene Ressourcen verfügbar sein können. Darüber hinaus kann sich die Art
der Heterogenität
während
der Dauer der Sitzung verändern,
zum Beispiel, da Staus im Netzwerk variieren, und da die Ressourcen
des Endgeräts
mit anderen Anwendungen des Benutzers geteilt werden. Die vorliegende
Erfindung kann eine Vorgehensweise bezüglich QoS verwenden, die in
der Sitzungsbeschreibung enthalten ist, um die Ressourcenzuordnung
zu priorisieren, und zu bestimmen, ob die Teilnahme an der Sitzung
realisierbar ist.
-
Ein
weiteres Problem ist, dass die Anwendungsentwickler und die Dienstanbieter
typischerweise Erfordernisse bezüglich
Sicherheit und Rechnungsstellung angehen müssen. Die vorliegende Erfindung
ermöglicht,
dass Vorgehensweisen bezüglich
Sicherheit und Rechnungsstellung in die Sitzungsbeschreibung für die Verwendung
in dem Sitzungssteuerungssystem integriert werden, um geeignete
Prozeduren für
Sicherheit und Rechnungsstellung aufzurufen. Statt dass man Funktionen
für Sicherheit
und Rechnungsstellung entwickeln muss, müssen der Anwendungsentwickler
und der Dienstanbieter nur geeignete Vorgehensweisen angeben.
-
Bei
der vorliegenden Erfindung wird die Anwendungsentwicklung vereinfacht,
indem Sitzungsbeschreibung verwendet wird, um eine dynamische Verwaltung
der Kommunikationskanäle
zu steuern, und die verfügbaren
Ressourcen anzupassen. Sie reduziert auch das Problem der Handhabung
von Anforderungen an Sicherheit und Rechnungsstellung auf einen
Spezifizierungsvorgang für
die Vorgehensweisen bezüglich Rechnungsstellung
und Sicherheit in der Sitzungsbeschreibung.
-
Die
vorliegende Erfindung ist besonders nützlich, wenn sie in Verbindung
mit der modularen Sitzungsbeschreibung verwendet wird, die in dieser
Patentanmeldung beschrieben ist, und die auch Gegenstand unserer
ebenfalls angemeldeten Patentanmeldung im Vereinigten Königreich
9826185.9 ist.
-
Nun
wird ein Beispiel der vorliegenden Erfindung mit Bezug auf die Zeichnungen
im Anhang beschrieben, in denen:
-
1 eine
schematische Darstellung ist, die die Übertragung mit Mehrfachsendungen über das MBone
darstellt;
-
2 eine
schematische Darstellung ist, die die Verteilung einer SDP-Ankündigung
darstellt;
-
3 ein
Blockdiagramm einer modularen Sitzungsbeschreibung einer einfachen
Sitzung ist, die entsprechend der vorliegenden Erfindung erzeugt
wird;
-
4 ein
Blockdiagramm einer modularen Sitzungsbeschreibung einer komplexen
Sitzung ist, die entsprechend der vorliegenden Erfindung erzeugt
wird;
-
5 eine
schematische Darstellung eines Systems für die Verwaltung von Verbindungen
mit Mediendatenströmen
ist;
-
6 ein
Flussdiagramm ist, das die Schritte darstellt, die an der Verwaltung
einer Mediensitzung nach dem System in 5 beteiligt
ist; und,
-
7 ein
Flussdiagramm ist, das den Schritt der Syntaxanalyse in 6 weiter
darstellt.
-
Ein
Beispiel eines Systems für
die Übertragung
mit IP-Mehrfachsendungen wird mit Bezug auf 1 beschrieben.
Vor einer Sitzung mit Mehrfachsendungen wird eine geeignete Ankündigung
gemacht, die eine Sitzungsbeschreibung enthält, wodurch den Endbenutzern 110a–110e ermöglicht wird,
den Empfang der Übertragung
zu wählen.
Jeder Endbenutzer, der wählt,
die Übertragung
zu empfangen, ist mit einer IP-Mehrfachsendungsgruppenadresse 120 verlinkt,
die der Übertragung
zugeordnet ist. Zur Übertragungszeit
der Sitzung mit Mehrfachsendungen werden die Datenströme von einer
Quelle 130 oder von mehreren Quellen an die Gruppenadresse
gesendet. An der Gruppenadresse wird die Übertragung auf die Verbindungen 140 an
die Endbenutzer verteilt, die den Empfang gewählt haben (in diesem Beispiel
die Endbenutzer 110a–110c).
-
Ein
Beispiel eines Ankündigungs-
und Wählsystems
ist mit Bezug auf 2 beschrieben. Die meisten öffentlichen
Sitzungen werden über
eine IP-Adresse für
Mehrfachsendungen einer einzelnen Gruppe 200 angekündigt, die
für die Übertragung
von Ankündigungen
an Endbenutzer von Mehrfachsendungen vorgesehen ist. Die Endbenutzer 210a–210e,
die den Empfang der Ankündigungen
gewählt
haben, werden mit der Gruppenadresse für Ankündigungen verlinkt und, auf
gleiche Weise wie eine tatsächliche
Sitzungsübertragung, wird
jede Ankündigung,
die an der Gruppenadresse für
Ankündigungen
ankommt, an die Endbenutzer verteilt. Eine Schnittstelle am Frontende 220 auf
dem Rechner jedes Endbenutzers zeigt Informationen an, die aus der zugeordneten
Sitzungsbeschreibung für
jede Ankündigung
erhalten werden. Die Minimalinformationen, die eine Sitzungsbeschreibung
enthalten kann, ist die Zeit und das Datum, zu denen die Sitzung
aktiv sein wird, und die Gruppenadresse(n) für IP-Mehrfachsendungen, aus denen der Endbenutzer
den Empfang von einem oder mehreren Mediendatenströmen auswählen kann,
und an die sie ihre eigenen Datenströme für die Sitzung senden können. Indem
die Schnittstelle am Frontende verwendet wird, kann ein Endbenutzer
die angekündigte(n)
Sitzungen) oder ihre(n) Teildatenströme(strom) auswählen, an
dem sie teilnehmen möchten.
-
3 ist
ein Blockdiagrammm einer Sitzungsbeschreibung 300 für eine einfache
Fernsehsitzung mit Mehrfachsendungen. Die Sitzungsbeschreibung 300 umfasst
ein Basismodul 310, das mit einem Medienmodul 320 verbunden
ist.
-
Das
Basismodul 310 enthält
benutzerorientierte Daten, die sich auf die Sitzung beziehen, einschließlich dem
Titel und den Zeitinformationen. Das Basismodul 310 kann
auch eine Beschreibung oder Kurzfassung, Kontaktinformationen zu
dem Organisator und einen WWW- oder
Intranet-URI enthalten, der auf eine Webseite zeigt, die weitere
Informationen enthält.
Idealerweise enthält
das Basismodul genug Informationen, damit die Benutzer entscheiden
können,
ob sie an der Teilnahme an der Sitzung interessiert sind.
-
Das
Medienmodul 320 enthält
Ankündigungsdaten,
die sich auf einen Videodatenstrom der Sitzung beziehen. Das Medienmodul 320 enthält die technischen
Informationen (Daten), die der Benutzer braucht, um den zugeordneten
Datenstrom zu empfangen. Insbesondere werden Details zu Verbindung,
Zeitpunkt und Medienformat zur Verfügung gestellt.
-
Ein
erstes Beispiel einer Sitzungsbeschreibung
300, die für die Übertragung
an Endbenutzer erzeugt wurde, ist unten gezeigt:
-
Beispiel 1 für eine Sitzungsbeschreibung
-
Das
Basismodul 310 hat einen eindeutigen Bezeichner (ID-Feld),
der bei der Erzeugung von Verbindungen zwischen zwei Modulen während der
Verarbeitung der Sitzungsbeschreibung verwendet wird. Das Modul-Feld
des Basismoduls 310 listet den Typ und den eindeutigen
Bezeichner des Medienmoduls 320 auf, das mit dem Basismodul 310 verbunden
ist. Der zweite Bezeichner in dem ID-Feld des Medienmoduls 320 ist der
eindeutige Bezeichner, der zu dem Basismodul 310 gehört, der
die Medienmodule zurück
zu dem Basismodul 310 verbindet. Durch Erweiterung ermöglichen
diese Zweiwegeverbindungen für
einen Modulbaum, dass er von einem Basismodul nach unten oder von
einem Medienmodul nach oben durchlaufen wird. Die Verwendung dieses
Merkmals wird später
mit Bezug auf das Beispiel 4 für
die Sitzungsbeschreibung beschrieben.
-
Das
Verbindungsfeld des Medienmoduls 320 enthält die IP-Adresse
für Mehrfachsendungen
und die Portnummer, von der der Mediendatenstrom empfangen werden
kann.
-
4 ist
ein Blockdiagramm einer Sitzungsbeschreibung 400 für eine komplexe
Sitzung mit Mehrfachsendungen einer Multimedia-Konferenz mit Spuren, oder Untersitzungen,
und einer Diskussion einer Diskussionsrunde. Jede Spur der stellt
Video- und Audiokonferenzfähigkeit
für mehrere
Parteien und eine gemeinsame Zeichenfläche zum Hinterlassen von Bemerkungen
und Nachrichten bereit. Die Diskussion der Diskussionsrunde wird
verschlüsselt
und die ganze Konferenz wird mit einer Teilnahmegebühr belegt,
die im voraus von jedem Teilnehmer bezahlt wird.
-
Die
Sitzungsbeschreibung 400 enthält ein Basismodul 410 auf
höchster
Ebene, das mit weiteren Basismodulen 420, 430 und 440 und
einem Optionsmodul 411 verbunden ist. Das Basismodul 410 auf
höchster Ebene
enthält
Daten, sie sich auf die Gesamtsitzung beziehen, einschließlich ihrem
Namen, dem Zweck und Zeitinformationen. Das Optionsmodul 411 enthält Details
des Zahlungsmechanismus für
die Teilnahmegebühren.
-
Jedes
weitere Basismodul 420, 430 und 440 bezieht
sich auf eine Untersitzung der Sitzung. Das Basismodulen 420 bezieht
sich auf die erste Spur der Konferenz. Das Basismodulen 420 ist
mit den Medienmodulen 421–423 verbunden, von
denen jedes die Informationen über
Verbindung, Zeiten und Mediendatenformat für die entsprechenden Video-,
Audio-, und Datenströme
der Zeichenfläche
enthält.
-
Das
Basismodul 420 ist auch mit dem Optionsmodul 424 verbunden,
das Daten enthält,
die sich auf eine Vorgehensweise bezüglich QoS für die erste Spur beziehen,
die definieren, welche Medienmodule für einen Teilnehmer an der ersten
Spur optional und welche obligatorisch sind. Die obligatorische
Liste enthält
Bezeichner der Medienmodule, die für die Sitzung oder Untersitzung
gebraucht werden, um korrekt zuarbeiten, während die optionale Liste Bezeichner
der Medienmodule enthält,
die für
die Sitzung oder Untersitzung nicht er forderlich sind, um korrekt
zuarbeiten, wenn Systemressourcen knapp sind.
-
Das
Basismodul 430 bezieht sich auf eine zweite Spur der Konferenz.
Es ist mit den Medienmodulen 431–433 verbunden, von
denen jedes die Verbindung, Zeitinformationen und Details des Medienformats
für die
entsprechenden Video-, Audio-, und Datenströme der Zeichenfläche enthält. Das
Basismodul 430 ist auch mit dem Optionsmodul 434 verbunden,
das Daten enthält,
die sich auf eine Vorgehensweise bezüglich QoS für die zweite Spur beziehen,
die definieren, welche Medienmodule optional und welche obligatorisch
für einen Teilnehmer
an der zweiten Spur sind. Das Basismodul 440 bezieht sich
auf die Diskussion der Diskussionsrunde. Es ist mit den Medienmodulen 441 und 442 verbunden,
von denen jedes Verbindung, Zeitinformationen und Details des Medienformats
für die
entsprechenden Video- und
Audiodatenströme
der Diskussion der Diskussionsrunde enthält. Das Basis von 440 ist
auch mit dem Optionsmodul 443 verbunden, das Details der
Verschlüsselung
(d. h. wie und wo die erforderlichen kryptografischen Schlüssel zu
bekommen sind), die für
einen Teilnehmer erforderlich sind, um die Mediendatenströme 441 und 442 der
Diskussion der Diskussionsrunde entsprechend einem bekannten Verschlüsselungsmechanismus
wie etwa DES oder Verschlüsselung
mit einem öffentlichen
Schlüssel
zu dekodieren.
-
Der
Video-Mediendatenstrom, der in dem Medienmodul 441 definiert
ist, ist mehrschichtig. Mehrschichtigkeit von Mediendatenströmen erlaubt
Benutzern mit verschiedenen Systemressourcen, so viel der Datenströme zu empfangen,
wie ihre Systemressourcen erlauben. Jeder Benutzer muss die unterste
Schicht des Datenstroms empfangen, die das Minimum an Daten des
Datenstroms enthält.
Wenn jedoch ein Benutzer ausreichend freie Systemressourcen hat,
dann kann er die nächsthöhere Schicht
empfangen, die Verbesserungen der darun ter liegenden Schicht enthält. Darüberliegende
Schichten können
empfangen werden, was den empfangenen Mediendatenstrom verbessert,
bis eine maximale Anzahl von Schichten empfangen wird, oder alle
freie Kapazität
der Systemressourcen verwendet wird. Das Medienmodul 441 ist
mit einem Optionsmodul 444 verbunden, das Daten über die
Schichtung enthält,
die für
den Benutzer erforderlich sind, um den mehrschichtigen Datenstrom
richtig zu empfangen.
-
Der
Abschnitt der Sitzungsbeschreibung 400, der für die Module 410, 411, 420 und 440 zum
Senden an Endbenutzer erzeugt wurde, ist unten als Beispiel 2 für eine Sitzungsbeschreibung
gezeigt.
-
-
-
Beispiel 2 einer Sitzungsbeschreibung
-
Wenn überschüssige Netzwerkbandbreite
zur Verfügung
steht, können
dem Endbenutzer vollständige Sitzungsbeschreibungen
angekündigt
werden, der dann wählen
kann, die angekündigte
Sitzung oder Teile davon zu empfangen. Die einzelnen Module der
Sitzungsbeschreibung müssen
jedoch nicht zusammen angekündigt
werden. Wenn die für
Ankündigungen
verfügbare
Netzwerkbandbreite die Größe von Sitzungsbeschreibungen
begrenzt, können
nur die Basis module auf oberster Ebene angekündigt werden. In dieser Situation
können
der Link zwischen Modulen z. B. eine URI auf eine WWW- oder Intranet-Webseite
oder einen Server, eine E-Mail-Adresse, eine IP-Adresse für Mehrfachsendungen,
eine FTP-Adresse oder Details einer Datei oder einer Datenbank sein,
die auf einem lokalen Rechnersystemen gespeichert sind, von dem
ein interessierter Benutzer die restlichen Module erhalten kann.
-
Das
folgende Beispiel für
eine Sitzungsbeschreibung illustriert, wie die obige Sitzungsbeschreibung
für das
Basismodul 420 verändert
würde,
wenn das Medienmodul 421 auf einem WWW-Server gespeichert
wäre:
-
-
Beispiel 3 einer Sitzungsbeschreibung
-
Darüber hinaus
können
Module auf höchster
Ebene einer Sitzungsbeschreibung ohne weiteres vor der tatsächlichen Übertragung
angekündigt
werden, wobei in diesem Fall die verbleibenden Ebenen von den zuvor angekündigten
Verbindungen zu einem späteren
Zeitpunkt verfügbar
sein können.
-
5 ist
ein schematisches Diagramm eines Systems zur Verwaltung von Verbindungen
mit Mediendatenströmen
an einem Endgerät
eines Endbenutzersystems nach der vorliegenden Erfindung.
-
Das
Sitzungssteuerungssystem 500 ist mit einer Schnittstelle
zum Empfangen von Ankündigungen 510 und
einer oder mehreren Multimedia-Anwendungen mit der Fähigkeit
zu Mehrfachsendungen 520 verbunden. Das Sitzungssteuerungssystem 500 und
die Schnittstelle zum Empfangen von Ankündigungen 510 sind mit
einer Netzwerkschnittstelle 530 verbunden, über die
Ankündigungen
empfangen und Mehrfachsendungen eingeleitet und/oder empfangen werden
können.
-
Ankündigungen,
die an der Netzwerkschnittstelle empfangen werden, werden an die
Empfangsschnittstelle 510 weitergeleitet. Die Empfangsschnittstelle 510 dekodiert
jede Ankündigung,
um die Sitzungsbeschreibung zu erhalten, und zeigt dem Benutzer
benutzerorientierte Informationen von einem oder mehreren Basismodulen
in einer Liste an. Der Benutzer kann eine Sitzungsbeschreibung aus
der Liste auswählen,
die eine Sitzung angekündigt,
die er empfangen möchte.
Die ausgewählte
Beschreibung wird an das Sitzungssteuerungssystem 500 weitergegeben,
das bestimmt, welche der Multimedia-Anwendungen des Benutzers 520 für die Teilnahme
an der beschriebenen Sitzung erforderlich sind, das die Anwendung
startet, und die erforderlichen Mediendatenströme einleitet und den entsprechenden
Anwendungen 520 über
einen Kommunikationsverwalter 550 bereitstellt.
-
Die
Empfangsschnittstelle 510 kann mit anderen Internet-Kommunikationsanwendungen 540,
wie etwa einem WWW-Browser oder einem E-Mail-Client (nicht gezeigt)
verbunden sein, die verwendet werden können, um weitere Informationen über die
beschriebene Sitzung auf Basis von Links zu sammeln, die in der Sitzungsbeschreibung
zur Verfügung
gestellt werden. Wenn ein unvollständiger Satz von Basis- und/oder
Medienmodulen einer Sitzungsbeschrei bung empfangen wird, versucht
die Empfangsschnittstelle 510 auch, die verbleibenden Module
mit Internet-Kommunikationsanwendungen zu bekommen, bevor sie sie
an das Sitzungssteuerungssystem 500 weitergibt.
-
6 ist
ein Flussdiagramm, das die Schritte zeigt, die von dem Sitzungssteuerungssystem 500 auf den
Empfang einer Sitzungsbeschreibung hin ergriffen werden. Die Beschreibung
wird zuerst im Schritt 600 syntaktisch analysiert, um die
Client-Anwendungen für
jedes Medienmodul zu identifizieren. Wenn dies einmal ausgeführt ist,
wird eine zweite Syntaxanalyse ausgeführt, wobei Anwendungen im Schritt 610 gestartet
werden, das heißt,
für jedes
Medienmodul wird die Anwendung gestartet, die in dem Client-Feld
angegeben ist, wenn diese Anwendung nicht schon gestartet wurde.
Der Abschnitt der Sitzungsbeschreibung, der sich auf die jeweiligen
Medientypen bezieht, d. h. auf das Medienmodul, das Basismodul direkt über den
Medienmodul, alle anderen Module, die mit dem Basismodul verbunden
sind, und irgendwelche anderen betroffenen Optionsmodule, wird in
Schritt 620 an die entsprechende Anwendung weitergegeben.
Da in die Medienmodule geeignete Client-Anwendungen eingetragen
sind, ist jede Anwendung in der Lage, die Mediendatenströme auszuwählen, an
denen sie teilnehmen will. Die Anwendung antwortet dem Sitzungssteuerungssystem
mit einer Verbindungsanfrage, wobei sie ihre Anforderungen in Form
einer Liste mit Bezeichnern von Medienmodulen angibt, von denen
Datenströme
in Schritt 630 eingeleitet werden sollen. Die Verbindungsanfrage
wird von dem Sitzungssteuerungssystem im Schritt 640 zusammengesetzt,
und dann analysiert das System die Syntax der Sitzungsbeschreibung,
um andere Anwendungen zu identifizieren, die in Schritt 645 gestartet
werden. Wenn ein weiterer Medientyp gefunden wird, werden die Schritte 610 bis 640 wiederholt,
ansonsten verwendet das Sitzungssteuerungssys tem die zusammengesetzten
Verbindungsanfragen, um eine Liste von Medienmodulen aufzustellen.
Diese Liste wird zusammen mit einer Vorgehensweise bzgl. QoS in
dieser Sitzung an den Kommunikationsverwalter weitergegeben, ein
System, das von dem Sitzungssteuerungssystem verwendet wird, das
entsprechend der Vorgehensweise bezüglich QoS und den verfügbaren Systemressourcen
feststellt, ob alle Verbindungsanfragen realisierbar sind.
-
Die
Vorgehensweise bezüglich
QoS ist in zwei Schritten aufgebaut:
erstens werden die Vorgehensweisen
bezüglich
QoS für
Sitzungen mit mehreren Teilnehmern, die für alle einzuleitenden Medienmodule
relevant sind, in eine Vorgehensweise bezüglich QoS für die Sitzung zusammengefasst,
zweitens kann die resultierende Vorgehensweise bezüglich QoS
dazu eingerichtet werden, folgendes zu berücksichtigen:
(a) Standardeinstellungen
des Benutzers, (b) den Wunsch eines Benutzers, die Vorgehensweise
interaktiv festzulegen, und (c) die Standardkonfiguration einer
Anwendung (definiert in dem/den Anwendungsprofil(en)).
-
Der
Kommunikationsverwalter antwortet dem Sitzungssteuerungssystem im
Schritt 650 mit einer Anzeige der realisierbaren Anfragen
nach Verbindungen mit Mediendatenströmen. Wenn erforderlich, kann
das Sitzungssteuerungssystem ein Rechnungsstellungssystem kontaktieren,
um die Abrechnung für
die Sitzung einzuleiten, bevor der Kommunikationsverwalter angefragt
wird, die realisierbaren Verbindungen mit Mediendatenströmen in Schritt 660 zu
erzeugen.
-
Wenn
eine Sitzung einmal beginnt, wird jeder empfangene Datenstrom, der
zu der Sitzung gehört,
an die zugeordnete Multimedia-Anwendung
in Schritt 670 weitergegeben, bis der geplante Zeitraum
für die
Datenströme
in Schritt 680 endet oder die Multimedia- Anwendung bei dem
Sitzungssteuerungssystem anfragt, die Verbindung in Schritt 690 zu
beenden, wobei das Sitzungssteuerungssystem die Verbindung an dieser Stelle
in Schritt 700 trennt.
-
7 ist
ein Flussdiagramm, das den Verwaltungsschritt für die QoS 650 in 6 detaillierter
zeigt.
-
Nachdem
er die zusammengesetzte Liste von Verbindungsanfragen empfangen
hat, ordnet der Kommunikationsverwalter jedes Objekt dieser Liste
einem Medienprofil 705 zu. Ein Medienprofil definiert die
Anforderungen, die für
den angefragten Mediendatenstrom erfüllt werden müssen, um
auf dem Rechner des Endbenutzers zu laufen, einschließlich der
minimalen Netzwerkbandbreite, die für zufriedenstellenden Empfang des
Datenstroms erforderlich ist.
-
Ein
Profil des Endgerätes
wird in Schritt 710 festgelegt. Das Profil des Endgerätes definiert
die Ressourcen, die an dem Rechner des Benutzers für die Verwendung
durch die angefragten Mediendatenströme verfügbar sind. Dies schließt die verfügbare Netzwerkbandbreite,
freien Speicherplatz, Festspeicherplatz und verfügbare Hardware, wie etwa Größe des Monitors,
Prozessorgeschwindigkeit und freie Audio- und Videoaufnahmeeinrichtungen ein.
Das Medienprofil jeder Verbindungsanfrage wird mit den verfügbaren Systemressourcen
verglichen, die von dem Profil des Endgerätes in Schritt 720 definiert
werden. Wenn das Profil des Endgerätes dem Medienprofil entspricht
oder es übertrifft,
wird die Verbindungsanfrage in Schritt 730 für realisierbar
erklärt
und das Profil des Endgerätes
wird für
die verbleibenden Verbindungsanfragen in Schritt 740 entsprechend
herabgestuft. Jede Verbindungsanfrage wird verarbeitet, bis es keine
verbleibenden Anfragen mehr gibt oder bis das Medienprofil einer
Anfrage das Profil des Endgerätes übertrifft.
In dieser Situation bestimmt der Kommunikationsverwalter das optimale
Profil für
das Endgerät,
das der Rechner des Benutzers hätte,
wenn alle nicht-essenziellen Anwendungen in Schritt 750 nicht
laufen würden,
und ob der Rechner dem Medienprofil in Schritt 760 entsprechen
kann.
-
Wenn
der Rechner dem Medienprofil entsprechen kann, versucht der Kommunikationsverwalter,
Systemressourcen von aktuell zugewiesenen Datenströmen oder
Verbindungsanfragen frei zu machen, der geringere Priorität haben,
oder indem er in Schritt 770 den Benutzer fragt, andere
nicht-essenzielle Anwendungen zu beenden, die auf dem Rechner laufen.
Alternativ kann dies ausgeführt
werden, indem die Anzahl von Schichten verringert wird, die aus
der Übertragung
eines mehrschichtigen Datenstroms empfangen werden. Wenn keine ausreichenden
Ressourcen gefunden werden können,
wird dem Benutzer eine Ausnahme gemeldet, und die Verbindungsanfrage
als nicht realisierbar gekennzeichnet. Wenn der Mediendatenstrom,
der nicht empfangen werden kann, in einer Vorgehensweise bezüglich QoS
als obligatorisch für
eine Sitzung oder eine Untersitzung definiert ist, werden alle Verbindungsanfragen
nach dieser Mediensitzung oder Untersitzung in Schritt 790 abgebrochen.
Wenn der Mediendatenstrom jedoch optional ist, fährt der Kommunikationsverwalter mit
der Verarbeitung weiterer Verbindungsanfragen in Schritt 720 fort.
Wenn alle anstehenden Verbindungsanfragen einmal verarbeitet worden
sind, meldet der Kommunikationsverwalter die, die für das Sitzungssteuerungssystem
realisierbar sind.
-
Die
Verarbeitung einer Sitzungsbeschreibung wird nun mit Bezug auf 4 und
das Beispiel 4 für
eine Sitzungsbeschreibung beschrieben, das die Sitzungsbeschreibung
ist, die für
Spur 1 erzeugt wurde (Module 410 und 420–424 in 4).
-
-
-
Beispiel 4 für eine Sitzungsbeschreibung
-
Nachdem
das Sitzungssteuerungssystem die Sitzungsbeschreibung empfangen
hat, verarbeitet es die Baumstruktur der Sitzungsbeschreibung, die
mit dem Basismodul 410 beginnt. Das erste Modul, auf das es
stößt, ist
das Basismodul 420. Da dies kein Medienmodul ist, sondern
Untermodule hat, folgt das Sitzungssteuerungssystem diesem Ast zu
den Medienmodulen.
-
Das
Medienfeld des Medienmoduls 421 definiert schon die Multimedia-Anwendungen
beim Kunden, die als RealPlayerG2 (einer Multimedia-Anwendung von
Real Networks Inc.) benötigt
wird, folglich ignoriert der Sitzungssteuerungssystem sie und fährt mit
dem nächsten
Medienmodul fort. Für
das Medienfeld des Medienmoduls 422 ist keine Multimedia-Client-Anwendung
definiert, jedoch ist ein Format für die Audiodaten angegeben.
Das Sitzungssteuerungssystem erkennt, dass dieses bestimmte Audioformat
von dem RealPlayerG2 unterstützt
werden kann, und folglich ändert
es das Medienfeld auf read client = RealPlayerG2. Für das nächste Medienmodul 423 ist
schon eine Client-Anwendung als wb definiert, folglich ignoriert
sie dieses Modul, und ignoriert auch das Optionsmodul 424.
-
Das
Sitzungssteuerungssystem analysiert die Baumstruktur wieder syntaktisch,
um Anwendungen beim Kunden zu starten. Das erste Medienmodul 421 gibt
an, dass der RealPlayerG2 gestartet werden soll, folglich startet
das Sitzungssteuerungssystem die Anwendung auf dem System des Endbenutzers
und behält einen
Datensatz über diese
Aktivität.
Das zweite Medienmodul 422 gibt eine Anwendung an, die
schon gestartet worden ist, und wird folglich von dem Sitzungssteuerungssystem
ignoriert, das zu dem nächsten
Medienmodul übergeht.
Das Medienmodul 423 gibt an, dass wb gestartet werden soll,
folglich startet das Sitzungssteuerungssystem die Anwendung und
behält
einen Datensatz dieser Aktivität.
-
Dem
RealPlayerG2 werden das Basismodul 421, das Medienmodul 420 und
die Module 422–424 übergeben.
Die Anwendung verarbeitet die übergebenen
Medienmodule, um festzustellen, welche sie handhaben kann, und identifiziert
in diesem Fall 421 und 422. Nachdem festgestellt
wurde, welche Datenströme
sie handhaben kann, sendet die Anwendung eine Verbindungsanfrage
zurück
zu dem Sitzungssteuerungssystem, die die Verbindung mit Mediendatenströmen der
Module 421 und 422 anfragt. Ebenso wird wb das
erste Medienmodul 423, das Basismodul 420, die
Module 421–422 und
das Modul 424 weitergeleitet. Die Anwendung verarbeitet
die übergebenen
Module wie zuvor beschrieben, und fragt eine Verbindung mit dem
Mediendatenstrom der Module 423 an.
-
Die
obigen Verbindungsanfragen werden von dem Sitzungssteuerungssystem
in einer Liste zusammengefasst, diese Liste wird dann an den Kommunikationsverwalter
zusammen mit dem Modul für
die Vorgehensweise bezüglich
QoS der Sitzung 424 weitergegeben. Der Kommunikationsverwalter
stellt fest, ob jede Anfrage entsprechend den Schritten in 7 realisierbar
ist.
-
Unter
der Annahme, dass es ausreichende Ressourcen für alle Verbindungsanfragen
für obligatorische
Mediendatenströme
gibt, leitet der Kommunikationsverwalter eine Liste von realisierbaren
Datenströmen an
das Sitzungssteuerungssystem weiter, das den Baum noch einmal verarbeitet,
um die Verbindungsdaten zu bestimmen, die in dem Verbindungsfeld
von jedem Medienmodul gespeichert sind, sodass es beim Kommunikationsverwalter
anfragen kann, eine Verbindung mit dem geeigneten Mediendatenstrom
für jede
der realisierbaren Verbindungsanfragen entsprechend den Verbindungsdaten
aufzubauen. Das Sitzungssteuerungssystem verwaltet dann die Sitzung
und ihre Verbindungen mit Mediendatenströmen, wie mit Bezug auf die
Schritte 670 bis 700 in 6 beschrieben
ist.
-
Wegen
der Heterogenität
des Internets und abweichenden Fähigkeiten
und Betriebsumgebungen von Rechnersystemen der Endbenutzer wurde
das beschriebene Sitzungssteuerungssystem in Java implementiert
(Java ist eine Handelsmarke von Sun Microsystems Inc.). Die Schnittstelle
zum Empfangen von Ankündigungen,
das Sitzungsverzeichnis, empfängt
die Ankündigungen
und leitet die von dem Endbenutzer ausgewählten an den Sitzungssteuerungsverwalter
weiter, der als eine Schnittstelle zur Programmierung von Anwendungen
implementiert ist, die als ein Hintergrundprozess auf dem Rechner
des Benutzers läuft.
-
Während die
vorliegende Erfindung mit Bezug auf das Internet und Mehrfachsendungen
beschrieben worden ist, ist es für
den Leser offensichtlich, dass die beschriebene modulare Sitzungsbeschreibung
und das Sitzungssteuerungssystem auf die Ankündigung und nachfolgende Verwaltung
von Verbindungen zu Mediendatenströmen einer (Multi)Mediensitzung
unter Verwendung anderer bekannter Transportmechanismen, wie etwa
unicast, angewendet werden kann.
-
Obwohl
Mechanismen zur Verschlüsselung,
Rechnungsstellung und anderer solcher Dienste nicht explizit beschrieben
worden sind, ist es ist es darüber
hinaus für
den Leser offensichtlich, dass geeignete Sit zungsbeschreibungen
und zugeordnete Funktionen in dem Sitzungssteuerungssystem zu deren
Verarbeitung entsprechend dem erforderlichen Mechanismus leicht
implementiert werden können.