-
HINTERGRUND
DER ERFINDUNG
-
Die
Erfindung betrifft ein Kommunikationssteuerungssystem zur Anwendung
bei einem Multicastvorgänge
unterstützenden
Kommunikationsnetz sowie ein an dieses System angepasstes Kommunikationssteuerungsverfahren.
-
Die
aktuelle allgemeine Verbreitung eines breitbandigen Netzwerks ermöglicht es
auch Haushalten, Datenkommunikation mit hoher Geschwindigkeit auszuführen. Auch
werden als Endstellen in weitem Umfang nicht nur die herkömmlichen
Desktop-PCs verwendet, sondern auch tragbare Notebook-PCs, PDAs
und Handys. Darüber
hinaus enthalten die Netzwerke selbst nun Funknetzwerke mit schnell
wachsendem Anwendungsumfang, einschließlich des Starts von Diensten,
die so ausgebildet wurden, dass sie es ermöglichen, Funknetzwerke an öffentlichen
Orten wie Bahnhöfen
und Cafes zu verwenden.
-
Einhergehend
vor dem Hintergrund derartiger Entwicklungen wird nun einem Ad-Hoc-Netzwerk Aufmerksamkeit
geschenkt, das als Mechanismus zum Realisieren von Kommunikationsvorgängen durch
Ausbilden eines zeitweiligen Mehrbenutzernetzwerks einschließlich einer
Anzahl von Endstellen, die von einem Funknetzwerk genutzt werden können, funktioniert.
Herkömmlicherweise
kann, obwohl es versucht wird, ein Funknetzwerk an einem Kommunikationsort
zu verwenden, kein Kommunikationsvorgang ausgeführt werden, wenn der Kommunikationsort
außerhalb
eines Bereichs liegt, der durch eine durch eine Basisstation erzeugte
elektrische Welle erreichbar ist, oder wenn, obwohl sich der Kommunikationsort
innerhalb des durch eine elektrische Welle erreichbaren Bereichs
befindet, der Zustand vorliegt, dass es zeitweilig und in einigen
Fällen schwierig
ist, dass die elektrische Welle den Kommunikationsort erreicht.
Ein Ad-Hoc-Netzwerk ist ein Netzwerk, das Kommunikation selbst in
einem Bereich aufbauen kann, der durch eine durch eine Basisstation
erzeugte elektrische Welle nicht erreichbar ist, und zwar dadurch,
dass nahe beieinander liegende Endstellen die Rollen der Basisstation
und/oder von Routern spielen können,
wenn sich der Kommunikationsort außerhalb des Bereichs befindet,
der durch eine durch die Basisstation erzeugte elektrische Welle
erreichbar ist, oder wenn sich der Kommunikationsort innerhalb des
Bereichs befindet, jedoch der Zustand vorliegt, dass es zeitweilig
schwierig ist, dass die elektrische Welle denselben erreicht. D.h.,
dass ein Ad-Hoc-Netzwerk bei Funkkommunikation ein zeitweiliges
Netzwerk ist, das nur Endstellen enthält, von denen jedes über die
Funktion eines Repeaters verfügt,
und dass es sich nicht auf eine spezielle Infrastruktur wie eine
Basisstation stützt.
-
Hinsichtlich
eines Kommunikationsverfahrens in einem Ad-Hoc-Netzwerk, wie es
oben beschrieben ist, wurde eine Technologie entwickelt, die darauf
abzielt, ein Gruppenkommunikationsverfahren bereit zu stellen, bei
dem ein Kommunikationsnetz innerhalb eines geschlossenen Gebiets
autonom innerhalb einer nicht spezifizierten Anzahl von Kommunikationsendstellen
aufgebaut werden kann, wie es in Dokumenten wie der Patentliteraturstelle
1 beschrieben ist.
-
Andererseits
existiert ein als Chat bekanntes Kommunikationsverfahren, das es
ermöglicht,
Nachrichten beinahe in Echtzeit auszutauschen, abweichend von E-mails, die derzeit
sehr beliebt sind. Entsprechend einem Verwaltungsverfahren bei einem Chatsystem
wird allgemein eine als Konferenzraum bezeichnete Gruppe geschaffen,
zu der Benutzer, die als Gruppenelemente an einem Kommunikationsvorgang
teilhaben, zugreifen, um Meldungen auszutauschen. Ein Verwaltungsserver
verwaltet die an einem Chat teilnehmenden Benutzer.
-
Außerdem wurde
ein nachfolgend einfach als IM bezeichneter Instant-Messaging-Dienst beliebt. Der
IM beinhaltet den o.g. Dienst zum Austauschen von Meldungen sowie
einen Präsenzdienst, durch
den vorab Information zur Präsenz
eines speziellen Benutzers bekannt ist. Die Information zur Präsenz eines
speziellen Benutzers zeigt typischerweise an, ob sich der spezielle
Benutzer in einem Zustand befindet, in dem er mit einem Netzwerk
verbunden ist und einen Kommunikationsvorgang ausführen kann.
-
Vom
Standpunkt der Mehrbenutzerkommunikation aus ist normalerweise ein
Server wie eine MCU (Media Control Unit) zum Verwalten von Kommunikationsvorgängen beim
oben beschriebenen Kommunikationsverfahren erforderlich. Die Organisation
ITU-T (International Telecommunication Unit), die Spezifikationen
für Multimedia-Kommunikationsvorgänge über ein
LAN vorgibt, schreibt in H.323 eine Mehrpunktkonferenz von konzentriertem
oder verteiltem Typ vor. Beim konzentrierten Typ stellt jede Endstelle
eine Point-to-Point-Session mit der MCU ein, die Daten sowohl zur
Sitzungssteuerung als auch Medien steuert. Beim verteilten Typ überträgt und empfängt andererseits
jede Endstelle Audio- und Videodaten unter Verwendung einer Multicastfunktion. Jedoch
werden Steuerkanaldaten, wie betreffend die Anzahl der Video- und
Audiostreams, die empfangen werden können, in einer als MC (Multipoint
Control) bezeichneten Verwaltungseinheit gemäß H.245 gesammelt. Die MC kann
in der MCU oder einer Endstelle enthalten sein. Wenn die MC in einer
Endstelle verwendet wird, ist in einer Gruppe, die an einer Konferenz
teilnimmt, mindestens eine erforderlich. Eine den verteilten Typ
unterstützende
Endstelle muss ein solches sein, das die Aufgabe hat, mehrere einzelne empfangene
Audiodaten und eine Auswahl von Videodaten zu mischen.
-
Betreffend
Multicastkommunikation ist eine als VAT bezeichnete Multicast-Audiokommunikationssoftware
auf einem Multicastnetzwerk bekannt, die als Internet Multicast
Backbone (M-BONE) bezeichnet wird und in der Nichtpatent-Literaturstelle 1 offenbart
ist. Multicastkommunikation wurde unter anderen Protokollen durch
ein als DVMRP (Distance Vector Multicast Routing Protocol) bekanntes
Protokoll vorgeschlagen.
-
Gemäß einer
anderen Technologie, wie sie in der Patentliteraturstelle 2 offenbart
ist, wird, wenn mehrere Endstellen mit jeweils Fernsehkonferenzfunktion
eine Mehrort-Fernsehkonferenz über
ein Netzwerk ausführen,
das es erlaubt, unter Verwendung eines ATM eine Ressource zu reservieren,
ein Band dadurch reserviert, dass zwischen den Endstellen Verbindungen
in Sternform aufgebaut werden. In jeder der Endstellen, die an der
Fernsehkonferenz teilhaben, werden von mehreren Orten empfangene Video-
und Audiodaten verarbeitet. Genauer gesagt, wird im Fall von Videodaten
der Schirm entsprechend der Anzahl der Videostreams in Bereiche
unterteilt. Im Fall von Audiodaten wird ein Mischprozess ausgeführt.
-
Vom
IM-Gesichtspunkt aus gesehen, realisiert das normale IM-System Kommunikationsvorgänge vom
Server-Client-Typ. Bei einem derartigen Kommunikationstyp trägt ein Client
als Erstes seine eigene Information in einem Präsenzserver ein, um Information
zur Präsenz
zu verwalten. Dann empfängt
der Client den aktuellen Zustand einer Buddyliste (Liste von Freunden),
die vorab im Präsenzserver
katalogisiert wurde. Aus der Buddyliste kann die Endstelle erfahren,
wer bereits eine Onlineverbindung zum Präsenzserver hat. Unter Bezugnahme
auf die in der Buddyliste enthaltene Information wird ein Benutzer
ausgewählt,
der als IM-Kommunikationspartner dienen soll. Es wird eine an den
aus gewählten
Partner zu sendende Meldung erzeugt und über einen IM-Server an den
Partner übertragen,
der körperlich
in derselben Vorrichtung wie der Präsenzserver enthalten sein kann.
Wenn der IM-Server die Meldung empfängt, erfasst er vom Präsenzserver
Information zum Meldungssender, und er ermittelt die Adresse des
Senders, um eine Antwort zu empfangen. Auf diese Weise sendet ein
Client Daten über den
IM-Server an einen anderen Client.
-
Ein
Kommunikationssystem mit einer Steuerung von Präsenzinformation ist durch US-2001/0025314-A
offenbart.
- Patentliteraturstelle 1
Veröffentlichung
Nr. 2002-111679 zu einer ungeprüften
japanischen Patentanmeldung, auch als US-2002/0037736-A veröffentlicht.
- Patentliteraturstelle 2
Veröffentlichung Nr. Hei 11-331155
zu einer ungeprüften
japanischen Patentanmeldung.
- Nichtpatent-Literaturstelle 1
"VAT (Visual Audio Tool)", [online], UC Berkeley,
Lawrence Berkeley National Laboratory, herausgesucht am 14. November
2002, Internetadresse (URL):
http://www-nrg.ee.lbl.gov/vat/
-
Gemäß der in
der Patentliteraturstelle 1 offenbarten Technologie wird ein Anruf
zum Aufbauen einer Gruppe rundübertragen.
Dann wird die Gruppe so aufgebaut, dass sie nur solche Endstellen
enthält, die
innerhalb einer vorbestimmten Zeitperiode auf den Anruf antworten.
Wenn bereits einige Gruppe existieren, wird Information zu diesen
durch Unicasting an eine unspezifizierte Anzahl von Endstellen übertragen.
Nachdem die Endstellen an der aufgebauten Gruppe Teilnahme erhalten
haben, werden Benutzerdaten durch Multicasting gesendet und empfangen.
Jedoch ist es unmöglich,
Information zur Präsenz
anderer Benutzer zu erfahren.
-
Selbst
unter Verwendung der in der o.g. Nichtpatent-Literaturstelle 1 offenbarten
Software kann nur 1 Person sprechen. Während eine Person spricht,
können
andere Personen dieser nur zuhören, was
zu fehlender Annehmlichkeit führt.
-
Wenn
Audiokommunikation unter Verwendung herkömmlicher Endstellen ausgeführt wird,
ist mindestens 1 Vorrichtung zum Verwalten einer Konferenz erforderlich,
um Audiokommunikation zwischen einer Anzahl von Benutzern zu realisieren.
Die Vorrichtung zum Verwalten einer Konferenz kann ein als MCU dienender
Server oder eine Kommunikationsendstelle mit Funktionen eines derartigen
Servers sein. Außerdem
ist, auch beim herkömmlichen IM-System,
ein Server erforderlich. Um Audiokommunikation zwischen einer Anzahl
von Benutzern über
ein vorübergehend
aufgebautes Netzwerk, wie ein Ad-Hoc-Netzwerk, auszuführen, ist
es jedoch erforderlich, einen Dienst ohne Verwendung eines Servers
bereitzustellen.
-
Ferner
sind, gemäß der Technologie,
bei der eine sternartige Verbindung zwischen Kommunikationsendstellen
aufgebaut wird, die Kommunikationsendstellen so miteinander verbunden,
dass Unicast-Kommunikationsvorgänge
ausgeführt
werden. So sieht auch eine Weiterleitungsendstelle aufgrund einer
Zunahme der Anzahl verbundener Endstellen einen Anstieg der kommunizierten
Daten als Belastung, die von der Weiterleitungsendstelle zu tragen ist,
die aktuell keine Anwendung ausführt,
und dies führt
zu einer Beeinträchtigung
der Kommunikationsqualität,
wie es bei einem Ad-Hoc-Netzwerk zu beobachten ist.
-
Aus
den oben beschriebenen Gründen
wird ein Mehrbenutzer-Kommunikationsverfahren benötigt, das
für ein
Ad-Hoc-Netzwerk geeignet ist.
-
ZUSAMMENFASSUNG
DER ERFINDUNG
-
Durch
die Erfindung ist ein verteiltes Kommunikationssystem geschaffen,
wie es durch den Anspruch 1 definiert ist. Zugehörige bevorzugte Ausführungsformen
sind durch die Unteransprüche
definiert.
-
Durch
die Erfindung ist eine Technologie zum Realisieren von Audiokommunikation
zwischen einer Anzahl von Benutzern bereitgestellt, nämlich ein Eins-zu-eins-Textmeldungsaustausch
und ein Textmeldungsaustausch zwischen einer Anzahl von Benutzern,
was andernfalls einen herkömmlichen
Server erforderlich machen würde,
sollte die herkömmliche
Technologie verwendet werden, und zwar unter Verwendung nur von
Clientendstellen, von denen in einer Netzwerkumgebung, die Multicast-Kommunikationsvorgänge ausführen kann,
keine über
Serverfunktionen verfügt.
Es sei darauf hingewiesen, dass in der folgenden Beschreibung das
Senden und Empfangen einer Textmeldung oder der Austausch ei ner
Textmeldung als IM bezeichnet werden. So werden ein Eins-zu-eins-Textmeldungsaustausch und
Textmeldungs-Austauschvorgänge
zwischen einer Anzahl von Benutzern nachfolgend als Eins-zu-eins-IM
bzw. als Mehrbenutzer-IM bezeichnet.
-
Beim
verteilten, durch die Erfindung geschaffenen Kommunikationssystem
führt eine
Endstelle in einem Onlinezustand eine Rundübertragung eines Onlinebefehls
an alle anderen Endstellen aus, während eine Endstelle in einem
Offlinezustand eine Rundübertragung
eines Offlinebefehls an alle anderen Endstellen ausführt. Ein
Onlinezustand einer Endstelle ist ein Zustand, in dem es mit einem
Netzwerk verbunden ist, das eine Multicastübertragung von Information
ausführen
kann. Andererseits ist ein Offlinezustand einer Endstelle ein Zustand,
in dem es von einem Netzwerk getrennt ist, das eine Multicastübertragung
von Information ausführen
kann. Eine Endstelle in einem Onlinezustand ordnet in mehreren Kanälen verwendete
Ressourcen dadurch zu, dass vorab Übereinstimmung erzielt wird.
Zu den Ressourcen gehören
ein Puffer, ein UDP-Empfangs-Warte-Socket
für Multicastvorgänge sowie
ein TCP-Empfangs-Warte-Socket
für Eins-zu-eins-IM.
Außerdem erfasst
eine Endstelle Information zur Präsenz eines anderen Benutzers
durch Rundübertragen
einer Anfrage nach derartiger Information, und der Benutzer der
Endstelle wählt
auf Grundlage der Präsenzinformation
ein Kommunikationsverfahren aus.
-
Bei
Mehrbenutzerkommunikation sendet, sowohl für IM als auch Audiokommunikation,
eine Clientendstelle einen die Teilnahme ausdrückenden Befehl, der die Nummer
eines Kanals enthält,
an dem die Endstelle teilzuhaben wünscht, als Paket, das für eine Multicastadresse
bestimmt ist, die vorab dem Kanal zugewiesen wurde und vorab in
der Clientendstelle eingetragen wurde. Gleichzeitig sendet die Clientendstelle
auch eine Textmeldung und Audiodaten an die Multicastadresse.
-
Außerdem empfängt, wenn
andere Endstellen am Kanal teilhaben, der Clientkanal mehrere Textmeldungen
und mehrere einzelne Audiodaten von den anderen Endstellen. Die
einzelnen Audiodaten, wie sie periodisch von den anderen Endstellen empfangen
werden, werden gemischt, und es werden gemischte Audiodaten wiedergegeben.
Um die Clientendstelle vom Kanal zu trennen, sendet sie einen Trennbefehl
an die Multicastadresse. Bei Eins-zu-eins-IM wird ein zwischen der
Clientendstelle und einer als Kommunikationspartner dienenden anderen Clientendstelle
ein TCP vereinbart, damit eine Textmeldung entsprechend dem TCP
mit dem Partner ausgetauscht werden kann.
-
Die
Erfindung ermöglicht
es, für
ein Ad-Hoc-Netzwerk geeignete Mehrbenutzer-Kommunikationsvorgänge auszuführen.
-
KURZE BESCHREIBUNG
DER ZEICHNUNGEN
-
1 ist
ein Diagramm, das die Gesamtkonfiguration eines durch eine Ausführungsform
realisierten verteilten Kommunikationssystems zeigt;
-
2 ist
ein Diagramm, das eine typische interne Konfiguration einer Clientendstelle
zeigt;
-
3 ist
ein Diagramm, das ein typisches Format einer Sitzungsverwaltungstabelle
für Mehrbenutzer-Kommunikationsvorgänge zeigt;
-
4 ist
ein Diagramm, das ein typisches Format einer Kanalverwaltungstabelle
zeigt;
-
5 ist
ein Diagramm, das ein typisches Format einer Empfangsverwaltungstabelle
zeigt;
-
6 ist
ein Diagramm, das ein typisches Format einer Sendeverwaltungstabelle
zeigt;
-
7 ist
ein Diagramm, das ein typisches Format eines Befehls zum Aufbauen
oder Trennen einer Verbindung zu einem Multicast-Netzwerk zeigt;
-
8 ist
ein Diagramm, das ein typisches Format eines Sitzungssteuerungsbefehls
für Mehrbenutzer-Kommunikationsvorgänge zeigt;
-
9 ist
ein Diagramm, das ein typisches Format eines Audiodaten enthaltenden
Pakets zeigt;
-
10 ist
ein Diagramm, das ein typisches Format eines IM-Sitzungssteuerungsbefehls zeigt;
-
11 ist
ein Diagramm, das ein typisches Format eines IM-Textdaten enthaltenden
Pakets zeigt;
-
12 ist
ein Diagramm, das einen typischen Hauptschirm zeigt;
-
13 ist
ein Diagramm, das einen typischen Einstellschirm zeigt;
-
14 ist
ein Diagramm, das einen typischen Schirm zum Ausführen eines
Prozesses zum Aufbauen oder Trennen einer Verbindung zu einem Multicast-Netzwerk
zeigt;
-
15 ist
ein Diagramm, das einen typischen Schirm 'Kommunikation: VOIP' zeigt;
-
16 ist
ein Diagramm, das einen typischen Schirm 'Kommunikation: IM' zeigt;
-
17 ist
ein Diagramm, das einen typischen Schirm 'Kommunikation: IM-Konferenz' zeigt;
-
18 ist
ein Diagramm, das einen typischen Schirm zum Anzeigen von Information
zur Präsenz
als Ergebnis des Auswählens
eines auf dem Hauptschirm angezeigten Einzelpunkts zeigt;
-
19 ist
ein Diagramm, das eine typische Abfolge einer Sitzungssteuerung
zeigt;
-
20 ist
ein Diagramm, das eine typische Abfolge eines Prozesses zeigt, wie
er bei einem durch einen Benutzer erzeugten Ereignis als Teil der Sitzungssteuerung
ausgeführt
wird;
-
21 ist
ein Diagramm, das eine typische Fortsetzungsabfolge zum Prozess
zeigt, wie er für ein
von einem Benutzer erzeugtes Ereignis als Teil der Sitzungssteuerung
ausgeführt
wird;
-
22 ist
ein Diagramm, das eine typische Fortsetzungsabfolge zum Prozess
zeigt, wie er für ein
von einem Benutzer erzeugtes Ereignis als Teil der Sitzungssteuerung
ausgeführt
wird;
-
23 ist
ein Diagramm, das eine typische Abfolge eines Prozesses zeigt, der
bei einem in einem Netzwerk erzeugten Ereignis als Teil der Sitzungssteuerung
ausgeführt
wird;
-
24 ist
ein Diagramm, das eine typische Fortsetzungsabfolge des Prozesses
zeigt, wie er bei einem in einem Netzwerk erzeugten Ereignis als
Teil der Sitzungssteuerung ausgeführt wird;
-
25 ist
ein Diagramm, das eine typische Abfolge der Verarbeitung zum Verarbeiten
von IM-Daten zeigt;
-
26 ist
ein Diagramm, das eine typische Abfolge eines Prozesses zum Senden
von Audiodaten zeigt;
-
27 ist
ein Diagramm, das eine typische Abfolge eines Prozesses zum Empfangen
von IM-Daten zeigt;
-
28 ist
ein Diagramm, das eine typische Abfolge eines Prozesses zum Mischen
von IM-Daten zeigt;
-
29 ist
ein Diagramm, das eine typische Abfolge bei der Verarbeitung zum
Verarbeiten von IM-Daten zeigt; und
-
30 ist
ein Diagramm, das eine typische Fortsetzungsabfolge der Verarbeitung
zum Verarbeiten von IM-Daten zeigt.
-
AUSFÜHRUNGSFORM
DER ERFINDUNG
-
Eine
bevorzugte Ausführungsform
der Erfindung wird unter Bezugnahme auf die Diagramme beschrieben.
-
Die 1 ist
ein Diagramm, das eine typische Konfiguration eines verteilten Kommunikationssystems
zeigt, das entsprechend einer Ausführungsform der Erfindung realisiert
ist. Bei diesem verteilten Kommunikationssystem sind mehrere Clientendstellen
2-n mit einem Paketnetzwerk 1 verbunden, das Multicast-Kommunikationsvorgänge ausführen kann. Bei
der typischen Konfiguration der in der Figur dargestellten Ausführungsform
sind 8 Clientendstellen 2-n, mit n = 1 bis 8, mit dem Paketnetzwerk 1 verbunden.
Jede der Clientendstellen 2 verfügt über die Funktion des Verwendens
von Multicasting und die Funktion des Übertragens von Paketdaten.
Ein Beispiel der Funktion zum Verwenden von Multicasting ist eine
Funktion zum Transferieren und Empfangen eines Pakets an eine Multicastgruppe
und von dieser, an der die Clientendstelle teil hat. Die Funktion
zum Transferieren von Paketdaten wird als Routingfunktion bezeichnet.
-
Die 2 ist
ein Diagramm, das die interne Konfiguration der Clientendstelle 2 zeigt.
Wie es in der Figur dargestellt ist, verfügt die Clientendstelle 2 über eine
Speicher 10, eine CPU 11 zum Ausführen eines
Kommunikationsprogramms 9, eine Speichereinheit 12,
eine Eingabeeinheit 13, eine Ausgabeeinheit 19,
eine Paketnetzwerkschnittstelle 15, eine D/A-Wandlereinheit 29 und
eine A/D-Wandlereinheit 16. Der Speicher 10, die
CPU 11, die Speichereinheit 12, die Eingabeeinheit 13,
die Ausgabeeinheit 14, die Paketnetzwerkschnittstelle 15,
die D/A-Wandlereinheit 29 und die A/D-Wandlereinheit 16 sind
durch eine interne Kommunikationsleitung wie einen Bus miteinander
verbunden. Der Speicher 10 ist eine Komponente zum Speichern
des Kommunikationsprogramms 9, und die CPU 11 ist
eine Komponente zum Ausführen
desselben. Die Eingabeeinheit 13 wird zum Eingeben von
Zeichen, Sprache/Tönen
und anderer Arten von Information verwendet, und sie verfügt über eine
Tastatur, eine Maus, einen Griffel und ein Mikrofon. Die Ausgabeeinheit 14,
die zum Ausgeben von Sprache/Tönen
und zum Anzeigen von Zeichen verwendet wird, verfügt über einen
Lautsprecher und eine Anzeigeeinheit. Die Paketnetzwerkschnittstelle 15 ist
eine Komponente zum Ausführen
von Kommunikationsvorgängen
mit dem Paketnetzwerk 1. Die D/A-Wandlereinheit 29 ist
eine Komponente zum Wandeln digitaler Audiodaten in analoge Audiodaten.
Andererseits ist die A/D-Wandlereinheit 16 eine Komponente
zum Wandeln analoger Audiodaten in digitale Audiodaten.
-
Das
im Speicher 10 gespeicherte Kommunikationsprogramm 9 beinhaltet
ein Sitzungsverwaltungsmodul 33, ein Netzwerkpaketzerlegemodul 23 und
ein Audiodaten/Daten/Befehls-Portioniermodul 24. Das Sitzungsverwaltungsmodul 33 ist
ein Modul zum Ausführen
einer Sitzungssteuerung. Das Netzwerkpaketzerlegemodul 23 ist
ein Modul zum Entfernen von Netzwerkkopfinformation aus einem über die Paketnetzwerkschnittstelle 15 empfangenen
Paket bei einer Empfangsverarbeitung. Das Audiodaten/Daten/Befehls-Portioniermodul 29 ist
ein Modul zum Portionieren von Audiodaten, Befehls- und allgemeinen
Daten, die jeweils aus einem Paket entnommen werden, aus dem die
Netzwerkkopfinformation bereits ent fernt wurde, für andere
Module. Der Inhalt eines Pakets besteht aus Audiodaten, einem Befehl
oder allgemeinen Daten.
-
Das
Kommunikationsprogramm 9 verfügt ferner über mehrere Ausgangsdatenschlangen 25, ein
Audiodatenkopf-Entfernungsmodul 26, ein Mischmodul 27 und
einen Decodierer 28. Jede der Ausgangsdatenschlangen 25 ist
ein Modul zum Empfangen von Audiodaten, die aus einem empfangenen Paket
entnommen wurden, vom Audiodaten/Daten/Befehls-Portioniermodul 24.
Jede der Ausgangsdatenschlangen 25 wird zum Zwischenspeichern
von von einer sendenden Clientendstelle empfangenen Audiodaten verwendet.
Das Audiodatenkopf-Entfernungsmodul 26 ist ein Modul zum
Entnehmen einzelner Audiodaten pro Zeiteinheit aus den Ausgangsdatenschlangen 25,
beginnend mit dem Audiodatenwert, der im Schlitz am Kopf der Ausgangsdatenschlangen 25 gespeichert
ist, und zum Zerlegen jedes Audiodatenwerts in Audiodaten und Information, die
zu diesen hinzugefügt
ist. Das Mischmodul 27 ist ein Modul zum Mischen einzelner
Audiodaten, die durch das Audiodatenkopf-Entfernungsmodul 26 zerlegt
wurden. Der Decodierer 28 ist ein Modul zum Decodieren
der gemischten einzelnen Audiodaten, wenn diese codiert sind.
-
Außerdem verfügt das Kommunikationsprogramm 9 auch über ein
Befehlsanalysiermodul 30, ein Datenanalysiermodul 31 und
ein Ausgangsdatenerzeugungsmodul 32. Das Befehlsanalysiermodul 30 ist
ein Modul zum Empfangen eines Befehls, der aus einem empfangenen
Paket entnommen wurde, vom Audiodaten/Daten/Befehls-Portioniermodul 24 und zum
Bestimmen des Befehlstyps. Andererseits ist das Datenanalysiermodul 31 ein
Modul zum Empfangen allgemeiner Daten, die aus einem empfangenen Paket
entnommen wurden, vom Audiodaten/Daten/Befehls-Portioniermodul 24 und
zum Bestimmen des Typs der allgemeinen Daten. Das Ausgangsdatenerzeugungsmodul 32 ist
ein Modul zum Erzeugen von Information, die an die Ausgabeeinheit 14 auszugeben
ist, wenn es erforderlich ist, dem Benutzer über den Befehl und die allgemeinen
Daten Mitteilung zu machen.
-
Darüber hinaus
verfügt
das Kommunikationsprogramm 9 auch über einen Codierer 17,
ein Audiodatenpaket-Wandlermodul 18, ein Netzwerkpaket-Wandlermodul 19,
ein Ereignisanalysiermodul 20, ein Befehlspaketwandlermodul 21 und
ein Datenpaketwandlermodul 22. Der Codierer 17 ist
ein Modul zum Codieren digitaler Audiodaten, wie sie durch die A/D-Wandlereinheit 16 ausgegeben
werden. Das Audiodatenpaket-Wandlermodul 18 ist ein Modul
zum Ausgeben codierter Audiodaten, wie sie durch den Codierer 17 an
das Paketnetzwerk 1 als Paket ausgege ben werden. Das Netzwerkpaket-Wandlermodul 19 ist
ein Modul zum Hinzufügen
von Kopfinformation zu Audiodaten, die in ein vom Audiodatenpaket-Wandlermodul
ausgegebenes Paket gewandelt wurden. Die Kopfinformation beinhaltet
die Adresse eines Kommunikationspartners, die Abfolgenummer des
Pakets sowie die Kennung des Senders. Das Ereignisanalysiermodul 20 ist
ein Modul zum Analysieren eines durch den Benutzer eingegebenen
Ereignisses. Das Befehlspaketwandlermodul 21 ist ein Modul
zum Erzeugen eines Befehls, wenn es sich zeigt, dass das Ereignis
ein solches für
den Befehl ist, der die Steuerung einer Sitzung betreffend Audiokommunikation
betrifft. Das Datenpaketwandlermodul 22 ist ein Modul zum
Erzeugen von Daten, wenn es sich ergibt, dass das Ereignis ein solches
für die Daten
eines anderen IM-Prozesses ist.
-
Die
CPU 11 realisiert Prozesse der oben beschriebenen Module
durch Ausführen
des Kommunikationsprogramms 9. Diese Programmmodule können vorab
in der Speichereinheit 12 abgespeichert werden, oder sie
können
durch das Paketnetzwerk 1 von anderen Vorrichtungen heruntergeladen
werden. Als andere Alternative werden die Programme von einem in
der Figur nicht dargestellten anbringbaren und entnehmbaren Speicherträger in der
Speichereinheit 12 installiert.
-
Es
sei darauf hingewiesen, dass die A/D-Wandlereinheit 16 und
die D/A-Wandlereinheit 29 jeweils
durch Hardware realisiert sind, obwohl die anderen Komponenten der
Konfiguration jeweils entweder durch Hardware oder Software realisiert
werden können.
-
Die
in der Clientendstelle 2 verwendete Speichereinheit 12 wird
auch zum Speichern zumindest der in den 3 bis 6 dargestellten
Verwaltungstabellen verwendet.
-
Die 3 ist
ein Diagramm, das eine Sitzungsverwaltungstabelle zeigt, die Information
enthält,
die zur Steuerung von Sitzungen bei einem Mehrbenutzer-Kommunikationsvorgang
verwendet wird. Die Steuerung von Sitzungen bei einem Mehrbenutzer-Kommunikationsvorgang
wird als Teil des Kommunikationsprogramms 9 ausgeführt. Die
Bezugszahl 50 kennzeichnet den Namen eines die Clientendstelle 2 benutzenden
Benutzers, und die Bezugszahl 51 bezeichnet den Spitznamen
des Benutzers. Der Spitzname wird beim Kennzeichnen der Clientendstelle 2 verwendet
und auf Schirmen angezeigt. Die Bezugszahl 52 kennzeichnet
die Portnummer einer Broadcastadresse. Diese Portnummer 52 wird
dann verwendet, wenn ein Online- oder ein Offlinebefehl an das Paketnetzwerk 1 gesendet
und von ihm empfangen wird. Die Bezugszahl 53 kennzeichnet
eine Multicastadresse, die bei einem Mehrbenutzer-Kommunikationsvorgang
verwendet wird, und die Bezugszahl 54 kennzeichnet die
Portnummer einer Broadcastadresse. Diese Portnummer 54 wird dann
verwendet, wenn ein Sitzungssteuerungsbefehl bei einem Mehrbenutzer-Kommunikationsvorgang gesendet
und empfangen wird. Die Bezugszahl 55 kennzeichnet einen
Offsetwert einer Portnummer. Dieser Offsetwert 55 wird
bei der Kommunikation von Audiodaten bei einem Mehrbenutzer-Kommunikationsvorgang
verwendet. Die Bezugszahl 56 kennzeichnet einen verwendbaren
CO-DEC.
-
Die
als IANA (Internet Assigned Authority der URL http://www.iana.org/ipaddress/ip-addresses.html)
bezeichnete Organisation ist eine Institution zum Standardisieren
und Zuweisen von im Internet verwendeten Adressressourcen. Zu den
Adressressourcen gehören
IP-Adressen, Domänennamen und
Portnummern. Entsprechend einem durch die IANA bereitgestellten
Adressenzuweisungsverfahren kann diese Clientendstelle 2 über die
typische IP-Adresse (153.25.7.100) verfügen. In diesem Fall ist die
Broadcastadresse (153.35.7.255) und die Multicastadresse ist eine
Adresse der Klasse D im Bereich (224.0.0.0 bis 239.255.255.255).
-
D.h.,
dass bei einer vorgegebenen Netzwerkadresse dieser Clientendstelle 2 die
Multicastadresse eindeutig bestimmt ist, so dass kein Punkt für eine Broadcastadresse
in der Sitzungsverwaltungstabelle erforderlich ist. Jedoch kann
eine spezielle Adresse, die durch ein anderes Adressenbestimmungsverfahren
bestimmt wird, explizit spezifiziert werden. Außerdem ist es wünschenswert,
einen allgemeinen Spitznamen 51 zu verwenden, der auf offensichtliche
Weise aus einer Netzwerkadresse wie der IP-Adresse oder dem Hostnamen
hergeleitet ist.
-
Der
Offsetwert 55 wird zum Spezifizieren der Portnummer des
Kanals n durch Addieren des Offsetwerts 55 zur dem Kanal 1 zugewiesenen
Portnummer verwendet. Jedoch kann die Portnummer jedes Kanals auch
ohne Verwendung des Offsetwerts 55 spezifiziert werden.
-
Bei
dieser Ausführungsform
wird ein Kanal als Kommunikationspfad definiert, der bereitgestellt wird,
um es Mitmenschen zu ermöglichen,
Gespräche
oder Jobkommunikationen auszuführen.
Die Mitmenschen können
solche sein, die an einem Mehrbenutzer-Kommunikationsvorgang teilnehmen,
Mitmenschen, die an ei ner Fertigungsstelle dieselbe Arbeit ausführen, oder
allgemein Mitmenschen, die sich zur Arbeit versammeln.
-
Die 4 ist
ein Diagramm, das eine Kanalverwaltungstabelle einschließlich eines
Teilnahmezustands in jedem Kanal zeigt. Die Bezugszahlen 60 und 61 kennzeichnen
eine Kanalnummer bzw. den Typ des Kommunikationsverfahrens. Die
Bezugszahl 62 kennzeichnet die Anzahl der an einem Kanal
teilhabenden Clientendstellen 2, und die Bezugszahl 63 kennzeichnet
einen für
den Kanal verwendeten Audio-CODEC.
-
Die 5 ist
ein Diagramm, das eine Empfangsverwaltungstabelle einschließlich des
Empfangszustands für
ein Audiopaket von jeder anderen Clientendstelle 2 beinhaltet,
die am Kanal teil hat, an dem diese Clientendstelle 2 teil
hat. Die Bezugszahl 70 kennzeichnet den Spitznamen der
am Kanal teilhabenden Clientendstelle 2. Die Bezugszahl 71 kennzeichnet
die Startadresse einer Ausgangsdatenschlange 25, die dieser
Clientendstelle 2 zugewiesen ist, und die Bezugszahl 72 kennzeichnet
die Endadresse der Ausgangsdatenschlange 25. Die Bezugszahl 73 kennzeichnet
eine SSRC (Synchronization Source) in der Kopfinformation eines
RTP(Real-time Transport Protocol)-Pakets, bei dem es sich um ein Audiopaket
entsprechend einem in der Bestimmung RFC 1889 der IETF beschriebenen
RTP handelt. Die Bezugszahl 74 kennzeichnet eine Zeitmarkierung
in der Kopfinformation des RTP-Pakets und die Bezugszahl 75 kennzeichnet
eine Abfolgenummer in der Kopfinformation des RTP-Pakets.
-
Die 6 ist
ein Diagramm, das eine Sendeverwaltungstabelle für ein durch diese Clientendstelle 2 gesendetes
Audiopaket zeigt. Die Bezugszahl 80 kennzeichnet die Nummer
des Kanals, an dem diese Clientendstelle 2 teil hat. Die
Bezugszahl 81 kennzeichnet die Adresse eines Sendepuffers.
Die Bezugszahl 82 kennzeichnet eine SSRC in der Kopfinformation
eines durch diese Clientendstelle 2 gesendeten RTP-Pakets.
Die Bezugszahl 83 kennzeichnet eine Zeitmarkierung in der
Kopfinformation des RTP-Pakets, und die Bezugszahl 84 kennzeichnet eine
Abfolgenummer in der Kopfinformation des RTP-Pakets.
-
Die 7 bis 11 bilden
jeweils ein Diagramm, das ein typisches Paketformat eines Befehls zur
Sitzungssteuerung, wie im Kommunikationsprogramm 9 ausgeführt, zeigt.
-
Genauer
gesagt, ist die 7 ein Diagramm, das einen Befehl
zum Aufbauen und Trennen einer Verbindung zum Paketnetzwerk 1 zeigt.
Die Bezugszahlen 90 und 91 kennzeichnen einen
IP-Kopf bzw. einen UDP-Kopf. Die Bezugszahl 92 kennzeichnet den
Typ des Befehls, und die Bezugszahl 93 kennzeichnet den
Benutzernamen der Clientendstelle 2. Der Benutzername wird
dann verwendet, wenn der Typ des Befehls ONLINE ist. Die Bezugszahl 94 kennzeichnet
einen Bereich zum Speichern eines Spitznamens.
-
Die 8 ist
ein Diagramm, das einen zur Sitzungssteuerung bei einem Mehrbenutzer-Kommunikationsvorgang
verwendeten Befehl zeigt. Die Bezugszahl 100 kennzeichnet
den Typ des Befehls. Die Bezugszahl 102 kennzeichnet den
Spitznamen eines Benutzers, der die Clientendstelle 2 verwendet,
von der dieser Befehl herrührt.
Die Bezugszahl 102 kennzeichnet einen Bereich zum Speichern
der Nummer eines Kanals zur Teilnahme an einem Kommunikationsvorgang
oder eines aktuell teilnehmenden Kanals.
-
Die 9 ist
ein Diagramm, das das Format eines Audiopakets zeigt. Die Bezugszahl 110 kennzeichnet
einen RTP-Kopf, und die Bezugszahl 111 kennzeichnet einen
Bereich zum Speichern von Audiodaten.
-
Die 10 ist
ein Diagramm, das einen bei der Sitzungssteuerung eines Eins-zu-eins-IM verwendeten
Befehls zeigt. Die Bezugszahlen 120 und 121 kennzeichnen
einen IP-Kopf bzw. einen TCP-Kopf. Die Bezugszahl 122 kennzeichnet
den Typ des Befehls, und die Bezugszahl 123 kennzeichnet
den Spitznamen eines Benutzers, der die Clientendstelle 2 verwendet,
von der dieser Befehl herrührt.
-
Die 11 ist
ein Diagramm, das das Paketformat einer Textmeldung eines IM zeigt.
Die Bezugszahlen 130 und 133 kennzeichnen jeweils
einen IP-Kopf. Die Bezugszahlen 131 und 134 kennzeichnen
einen TCP-Kopf bzw. einen UDP-Kopf. Die Bezugszahlen 132 und 136 kennzeichnen
jeweils einen Bereich zum Speichern einer Textmeldung. Die Bezugszahl 135 kennzeichnet
einen Bereich zum Speichern einer Kanalnummer eines Mehrbenutzer-IM, was
auch als Gruppenchat bekannt ist. Die Textmeldung kann Attributinformation
enthalten, wie Zeichenmodifizierinformation.
-
Die 12 bis 18 bilden
jeweils ein Diagramm, das einen Schirm zeigt, wie er durch das Ausgangsdatenerzeugungsmodul 32 des
Kommunikationsprogramms 9 auf der Ausgabeeinheit 14 angezeigt
wird.
-
Genauer
gesagt, ist die 12 ein Diagramm, das einen Hauptschirm
zeigt. Die Bezugszahl 140 kennzeichnet einen Onlinepunkt,
der auszuwählen
ist, um eine Anforderung für
eine Verbindung oder eine Trennung vom Paketnetzwerk 1 zu
bilden. Die Bezugszahl 141 kennzeichnet einen Einstellpunkt,
der zum Einstellen von bei Kommunikationsvorgängen zu verwendender Adressinformation
auszuwählen
ist. Die Bezugszahl 142 kennzeichnet einen Präsenzpunkt,
der zum Erfassen von Präsenzinformation
für andere
mit dem Paketnetzwerk 1 verbundene Clientendstellen auszuwählen ist.
Die Bezugszahl 143 kennzeichnet einen Kommunikationspunkt
zum Repräsentieren
eines Menüs,
aus dem Mehrbenutzer-Audiokommunikation,
ein IM (d.h. Eins-zu-eins-IM) oder eine IM-Konferenz (d.h. ein Mehrbenutzer-IM)
ausgewählt
werden kann. Die Bezugszahl 144 kennzeichnet einen Bereich
zum Anzeigen von Benutzerspitznamen anderer Clientendstellen 2,
die mit dem Paketnetzwerk 1 verbunden sind. Die Bezugszahl 145 kennzeichnet
einen Bereich zum Anzeigen des Kommunikationszustand dieser Clientendstelle 2.
Bei dieser Ausführungsform kennzeichnet
die Information zur Präsenz
einen Zustand ohne Kommunikation, einen Zustand mit Mehrbenutzer-Audiokommunikation
oder einen Zustand, bei dem man sich in einem IM befindet.
-
Die 13 ist
ein Diagramm, das einen Konfigurationsschirm zeigt, wie er als Ergebnis
der Auswahl des Einstellpunkts 141 angezeigt wird. Die
Bezugszahl 150 kennzeichnet eine bei Mehrbenutzer-Audiokommunikation
und einem Gruppenchat verwendete Multicastadresse. Die Bezugszahl 151 kennzeichnet
eine Portnummer, die beim Senden oder Empfangen eines Sitzungssteuerungsbefehls verwendet
wird. Die Bezugszahl 152 kennzeichnet einen Bereich, in
den ein Versatzwert der Portnummer eingetragen wird. Der Versatzwert
wird beim Senden oder Empfangen eines bei Mehrbenutzer-Audiokommunikation
verwendeten RTP-Audiopakets
verwendet. Die Bezugszahl 153 kennzeichnet eine IP-Adresse
für das
TCP, und die Bezugszahl 154 kennzeichnet eine TCP-Portnummer.
Die IP-Adresse für das TCP
und die TCP-Portnummer werden bei einem Eins-zu-eins-IM verwendet.
Die Bezugszahl 155 kennzeichnet einen Bereich, in den ein
Versatzwert einer Portnummer zur Verwendung bei einem Mehrbenutzer-IM
eingetragen wird. Die Bezugszahl 156 kennzeichnet eine
OK-Taste, die durch Auswählen
eines Anklickvorgangs zum Speichern der angezeigten Daten ausgewählt wird.
Die Bezugszahl 157 kennzeichnet eine Löschtaste, die durch Ausführen eines
Anklickvorgangs zum Löschen
des Prozesses auszuwählen
ist. Wenn dieser Schirm angezeigt wird, erscheinen auf dem Schirm vorab
abgespeicherte Daten oder im vorigen Prozess abgespeicherte Daten.
-
Die 14 ist
ein Diagramm, das einen Schirm zeigt, wie er als Ergebnis der Auswahl
des Onlinepunkts 140 angezeigt wird. Die Bezugszahl 160 kennzeichnet
einen Benutzernamen, und die Bezugszahl 161 kennzeichnet
einen Spitznamen, wie er auf angezeigten Schirmen erscheint. Die
Bezugszahl 162 kennzeichnet eine Taste ONLine, die auszuwählen ist,
um für
den Benutzernamen 160 und den Spitznamen 161 eine
Verbindung zum Paketnetzwerk 1 herzustellen. Die Bezugszahl 164 kennzeichnet
eine Löschtaste,
die zu betätigen
ist, um den Prozess aufzuheben.
-
Die 15 ist
ein Diagramm, das einen Schirm 'Kommunikation:
VOIP' zeigt, der
als Ergebnis der Auswahl einer Mehrbenutzer-Audiokommunikation (VoIP)
aus dem durch den ausgewählten
Kommunikationspunkt 143 repräsentierten Menü, mit anschließendem Auswählen des
Kanals 1, angezeigt wird. Die Bezugszahl 170 kennzeichnet
ein Gebiet zum Anzeigen einer Liste von am Kanal teilhabenden Benutzern.
Die Bezugszahl 171 kennzeichnet eine Beitrittstaste, die
vom Benutzer dieser Clientendstelle 2 auszuwählen ist,
damit er an der Mehrbenutzer-Audiokommunikation über diesen Kanal teilnimmt.
Die Bezugszahl 172 bezeichnet eine Auflisttaste, die auszuwählen ist,
um eine Anfrage betreffend die jüngste
Liste von am Kanal teilhabenden Benutzern zu starten. Die Bezugszahl 173 kennzeichnet eine
Verlassenstaste, die auszuwählen
ist, um den Kanal zu verlassen und die Mehrbenutzer-Audiokommunikation
zu beenden.
-
Die 16 ist
ein Diagramm, das einen Schirm 'Kommunikation:
IM' zeigt, der als
Ergebnis des Auswählens
des IM, d.h. des Eins-zu-eins-IM, aus dem durch den ausgewählten Kommunikationspunkt 143 repräsentierten
Menü angezeigt
wird. Die Bezugszahl 180 kennzeichnet ein Gebiet zum Anzeigen
des Spitznamens eines Kommunikationspartners. Die Bezugszahl 181 kennzeichnet
ein Gebiet zum Anzeigen einer Meldung, wie sie zwischen dem Benutzer
dieser Clientendstelle 2 und dem Kommunikationspartner
ausgetauscht wird. Die Bezugszahl 182 kennzeichnet einen
Bereich, in den der Benutzer dieser Clientendstelle 2 Text
eingibt. Die Bezugszahl 183 kennzeichnet eine OK-Taste,
die auszuwählen ist,
um auf eine IM-Anfrage hin einen Befehl IMACK zu senden. Die Bezugszahl 184 kennzeichnet
eine Taste SORRY, die auszuwählen
ist, um als Reaktion auf das Verneinen einer IM-Anfrage einen Befehl
IMZURÜCKGEWIESEN
zu senden. Die Bezugszahl 185 kennzeichnet eine Taste SENDEN,
die auszuwählen
ist, um eine eingegebene Meldung als Befehl SENDEN zu senden. Die
Bezugszahl 186 kennzeichnet eine Verlassenstaste, die auszugeben
ist, um den IM zu beenden.
-
Die 17 ist
ein Diagramm, das einen Schirm 'Kommunikation:
IM-Konferenz' als
Ergebnis des Auswählens
der IM-Konferenz, d.h. des Mehrbenutzer-IM, aus dem durch den ausgewählten Kommunikationspunkt 143 repräsentierten
Menü angezeigt
wird. Die Bezugszahl 190 kennzeichnet ein Gebiet zum Anzeigen
der Liste der Benutzer, die am Kanal teilhaben. Die Bezugszahl 191 kennzeichnet
eine Teilnahmetaste, die vom Benutzer dieser Clientendstelle 2 zu
betätigen
ist, damit dieser am Mehrbenutzer-IM über diesen Kanal teilnimmt.
-
Die
Bezugszahl 192 kennzeichnet eine Auflisttaste, die auszuwählen ist,
um eine Anfrage nach der jüngsten
Liste von Benutzern, die am Kanal teilhaben, zu starten. Die Bezugszahl 193 kennzeichnet eine
Verlassenstaste, die auszuwählen
ist, um den Kanal des Mehrbenutzer-IM (den Gruppenchat) zu verlassen,
an dem der Teilnehmer teilhatte, und um den Gruppenchat zu beenden.
Die Bezugszahl 194 kennzeichnet ein Gebiet zum Anzeigen
einer Meldung, die von einer am Mehrbenutzer-IM teilnehmenden Clientendstelle
empfangen wird. Die Bezugszahl 195 kennzeichnet einen Bereich,
in den der Benutzer dieser Clientendstelle 2 einen Text
eingibt. Die Bezugszahl 196 kennzeichnet eine Taste SENDEN,
die auszuwählen
ist, um eine in den Bereich 195 eingegebene Meldung als
Befehl SENDEN zu senden.
-
Die 18 ist
ein Diagramm, das einen Hauptschirm zeigt, der als Ergebnis des
Auswählens des
Präsenzpunkts 142 angezeigt
wird. Die Bezugszahl 199 kennzeichnet ein Gebiet zum Anzeigen
einer Liste von Spitznamen, wie sie jeweils für einen Onlinebenutzer vergeben
sind. Ein Onlinebenutzer ist ein Benutzer in einem Verbindungszustand
mit dem Paketnetzwerk 1. Zum Gebiet 199 können ein Spitzname
und Präsenzinformation
für diesen
hinzugefügt
sein.
-
Die 19 zeigt
eine typische Abfolge der bei dieser Ausführungsform ausgeführten Sitzungssteuerung.
Wenn das in der Clientendstelle 2 installierte Kommunikationsprogramm 9 aufgerufen
wird, initialisiert das Sitzungsverwaltungsmodul 33 die Computerressourcen
in einem Schritt 200. Beispielsweise werden Puffer für Sende-
und Empfangsvorgänge
von Daten reserviert, und es wird ein Arbeitsbereich zugeordnet.
Jede Clientendstelle erfährt
vorab Information zu jedem Kanal. Information zu einem Kanal beinhaltet
Anwendungen desselben, wie die Verwendung desselben als Arbeitsberichtskanal, eine
Multicastadresse, eine Portnummer und einen Offsetwert. Im Stadium,
in dem die Clientendstelle 2 mit dem Paketnetzwerk 1 verbunden
wird, ist bereits jeder Kanal geöffnet,
und es ist kein spezieller Kanal geöffnet oder geschlossen.
-
Als
Verfahren zum Erhalten von Information zu einem Kanal ist es möglich, eine
Technik zu verwenden, bei der Vorgabewerte oder eine andere Kommunikationstechnik
verwendet wird, wobei es sich um ein Verfahren des Benutzens von
Kommunikationsmedien wie Mail, eines Web oder einer IM (Instant
Message) für
ein Kommunikationsziel innerhalb desselben Unternehmens, ein Verfahren
unter Verwendung einer Werbung wie eines Plakats für ein Kommunikationsziel
an einer Straßenkreuzung
oder ein Verfahren handeln kann, bei dem ein Kommunikationsziel
mitgeteilt wird, das zu einem Zeitpunkt, zu dem eine Gruppe als
Teil des Aufbaus eines Ad-Hoc-Netzwerks konfiguriert ist, zu diesem Ad-Hoc-Netzwerk
gehört.
Die Gruppe kann eine Gruppe von an 00 interessierten Personen oder
eine Gruppe von Twens sein, die sich im Gebiet befinden, um einige
zu nennen.
-
Im
nächsten
Schritt 201 zeigt das Sitzungsverwaltungsmodul 33 den
in der 12 dargestellten Hauptschirm
an, und es tritt in einen Zustand ein, in dem es auf die Eingabe
eines Ereignisses durch den Benutzer oder einen Befehl wartet, der über das
Paketnetzwerk 1 von einer anderen Clientendstelle 2 empfangen
wird. Wenn ein Ereignis eingegeben wird oder ein Befehl empfangen
wird, geht der Ablauf der Abfolge zu einem Schritt 202 weiter,
um zu ermitteln, ob ein vom Benutzer eingegebenes Ereignis erfasst wurde
oder nicht. Wenn das Ergebnis der Ermittlung Ja ist, geht der Ablauf
der Abfolge zu einem Schritt 203 weiter, in dem ein Benutzerereignisprozess
entsprechend einer in den 20 bis 22 dargestellten
Abfolge ausgeführt
wird. Andernfalls geht der Ablauf der Abfolge zu einem Schritt 204 weiter,
um zu ermitteln, ob ein Netzwerkereignis erkannt wurde oder nicht.
Wenn das Ergebnis der Ermittlung JA ist, geht der Ablauf der Abfolge
zu einem Schritt 205 weiter, in dem ein Netzwerkereignisprozess
entsprechend einer in den 23 und 24 dargestellten Abfolge
ausgeführt
wird.
-
Die 20 bis 22 zeigen
eine typische Abfolge des Benutzerereignisprozesses.
-
In
einem Schritt 210 der in der 20 dargestellten
Abfolge ermittelt das Sitzungsverwaltungsmodul 33, ob das
vom Benutzer eingegebene Ereignis eine Bedienung zum Auswählen des
Einstellpunkts 141 ist. Wenn das Ergebnis der Er mittlung
JA ist, geht der Ablauf der Abfolge zu einem Schritt 211 weiter,
in dem Sitzungsverwaltungsmodul 33 den in der 13 dargestellten
Konfigurationsschirm auf der Ausgabeeinheit 14 anzeigt.
Dann ermittelt das Sitzungsverwaltungsmodul 33, im nächsten Schritt 212,
ob die OK-Taste 156 in einem Zustand ausgewählt wird,
in dem auf eine vom Benutzer eingebende Eingabe gewartet wird. Wenn
die OK-Taste 156 ausgewählt
wird, um anzuzeigen, dass eine Eingabe eingegeben wurde, d.h., wenn
das Ergebnis der Ermittlung JA ist, geht der Ablauf der Abfolge
zu einem Schritt 213 weiter, in dem das Sitzungsverwaltungsmodul 33 die
eingegebenen Eingangsdaten, wie sie auf dem Konfigurationsschirm
angezeigt werden, in die Sitzungsverwaltungstabelle für Mehrbenutzer-Kommunikationsvorgänge eingibt
und den Schirm schließt.
Die Sitzungsverwaltungstabelle ist in der 3 dargestellt.
Dann tritt das Sitzungsverwaltungsmodul 33 in einen Zustand
ein, in dem es auf das nächste
Ereignis wartet.
-
Wenn
das Ergebnis keine Bedienung zum Auswählen des Auswählpunkts 141 ist,
geht der Ablauf der Abfolge andererseits zu einem Schritt 214 weiter,
um zu ermitteln, ob das vom Benutzer eingegebene Ereignis eine Bedienung
zum Auswählen des
Onlinepunkts 140 ist oder nicht. Wenn das Ergebnis der
Ermittlung JA ist, geht der Ablauf der Abfolge zu einem Schritt 215 weiter,
in dem das Sitzungsverwaltungsmodul 33 den in der 14 dargestellten
Onlineschirm anzeigt. Dann ermittelt das Sitzungsverwaltungsmodul 33,
im nächsten
Schritt 216, ob die ONLine-Taste 162 ausgewählt wurde
oder nicht. Wenn das Ergebnis der Ermittlung JA ist, geht der Ablauf
der Abfolge zu einem Schritt 217 weiter, in dem das Sitzungsverwaltungsmodul 33 die
auf dem Onlineschirm angezeigten Daten in der Sitzungsverwaltungstabelle
für Mehrbenutzer-Kommunikationsvorgänge speichert
und den Schirm schließt.
Wie oben beschrieben, ist die Sitzungsverwaltungstabelle in der 3 dargestellt.
Dann erzeugt, im nächsten Schritt 218,
das Befehlspaketwandlermodul 31 einen ONLINE-Befehl, der
an eine Portnummer einer vorab eingestellten Broadcastadresse rund
zu senden ist. Auf diese Weise erfolgt eine Verbindung mit dem Paketnetzwerk 1,
was es ermöglicht,
Kommunikationsvorgänge
mit einem anderen Benutzer auszuführen, der den Befehl ONLINE
empfängt.
Dann erzeugt das Sitzungsverwaltungsmodul 33, in einem
nächsten Schritt 219,
einen beim Eins-zu-eins-IM verwendeten TCP-Empfangs-Warte-Socket,
und es tritt in einen Zustand ein, in dem es auf einen derartigen
Empfang wartet.
-
Wenn
das vom Benutzer eingegebene Ereignis keine Bedienung zum Auswählen des
Onlinepunkts 140 ist, geht andererseits der Ablauf der
Abfolge zu einem Schritt 220 weiter, um zu ermitteln, ob die
OFFLine-Taste 163 ausgewählt wurde oder nicht. Wenn
das Ergebnis der Ermittlung Ja ist, geht der Ablauf der Abfolge
zu einem Schritt 221 weiter, in dem das Befehlspaketwandlermodul 21 einen
Befehl OFFLINE erzeugt und rundüberträgt, der
Information zum Sender enthält.
Auf diese Weise wird eine Verbindung zum Paketnetzwerk 1 abgebrochen.
Dann schließt
das Sitzungsverwaltungsmodul 33, im nächsten Schritt 222,
den im Schritt 219 erzeugten TCP-Empfangs-Warte-Socket.
Anschließend
gibt das Sitzungsverwaltungsmodul 33, im nächsten Schritt 223,
die im Schritt 200 reservierten Ressourcen frei.
-
Wenn
das vom Benutzer eingegebene Ereignis keine Bedienung zum Auswählen der
OFFLine-Taste 163 ist, geht andererseits der Ablauf der Abfolge
zu einem Schritt 230 der in der 21 dargestellten
Abfolge weiter, um zu ermitteln, ob das vom Benutzer eingegebene
Ereignis, im Zustand der Verbindung mit dem Paketnetzwerk 1,
eine Bedienung zum Auswählen
des Kommunikationspunkts 143 ist. Wenn das Ergebnis der
Ermittlung Ja ist, geht der Ablauf der Abfolge zu einem Schritt 231 weiter, um
zu ermitteln, ob das VOIP aus einem Menü ausgewählt wurde, das als Ergebnis
der Auswahl des Kommunikationspunkts 143 angezeigt wird.
Wenn das Ergebnis der Ermittlung ebenfalls Ja ist, geht der Ablauf
der Abfolge zu einem Schritt 232 weiter, in dem das Sitzungsverwaltungsmodul 33 den
in der 15 dargestellten Schirm 'Kommunikation: VOIP' anzeigt. Dann geht
der Ablauf der Abfolge zu einem Schritt 233 weiter, um
zu ermitteln, ob die Beitrittstaste 171 ausgewählt wurde.
Wenn das Ergebnis der Ermittlung Ja ist, geht der Ablauf der Abfolge
zu einem Schritt 234 weiter, in dem das Befehlspaketwandlermodul 21 einen
Befehl BEITRETEN erzeugt und diesen Befehl an eine Portnummer rundüberträgt, wie sie
für einen
Sitzungssteuerungsbefehl bereitgestellt ist und in einer vorab in
dieser Clientendstelle 2 gespeicherten Multicastadresse
enthalten ist. Dann werden, im nächsten
Schritt 235, Audiodaten gesendet und empfangen. Eine unter
der Multicastadresse existierende Clientendstelle 2, die
an der Multicastgruppe teilnimmt, dient als Kommunikationspartner zum
Empfangen und Senden von Audiodaten.
-
Wenn
das Ergebnis der Ermittlung anzeigt, dass die Beitrittstaste 171 nicht
ausgewählt
wurde, geht andererseits der Ablauf der Abfolge zu einem Schritt 236 weiter,
um zu ermitteln, ob die Auflisttaste 172 ausgewählt wurde
oder nicht. Wenn das Ergebnis der Ermittlung Ja ist, geht der Ablauf
der Abfolge zu einem Schritt 237 weiter, in dem das Befehlspaketwandlermodul 21 einen
Befehl WERDA erzeugt und diesen an das Ziel, das der Nummer eines
Kanals entspricht, rundüberträgt. Der
Befehl WERDA beinhaltet die Nummer des Kanals, und er dient als Befehl,
um eine Anfrage betreffend eine Liste von Benutzern zu stellen,
die am Kanal teilhaben. Wenn das Ergebnis der Ermittlung Nein ist,
geht andererseits der Ablauf der Abfolge zu einem Schritt 238 weiter, um
zu ermitteln, ob die Verlassenstaste 173 ausgewählt wurde
oder nicht. Wenn das Ergebnis der Ermittlung Ja ist, geht der Ablauf
der Abfolge zu einem Schritt 239 weiter, in dem das Befehlspaketwandlermodul 21 einen
Verlassensbefehl erzeugt und im Rundruf überträgt. Dann wird, im nächsten Schritt 240,
ein Beendigungsprozess des Audioverarbeitungsmoduls ausgeführt.
-
Wenn
nicht das VOIP ausgewählt
wurde, geht andererseits der Ablauf der Abfolge zu einem Schritt 241 weiter,
um zu ermitteln, ob aus dem durch den Kommunikationspunkt 143 repräsentierten
Menü der
IM ausgewählt
wurde. Wenn das Ergebnis der Ermittlung Ja ist, geht der Ablauf
der Abfolge zu einem Schritt 242 weiter, in dem das Sitzungsverwaltungsmodul 33 den
in der 16 dargestellten Schirm 'Kommunikation: IM' anzeigt. Dann erzeugt
das Sitzungsverwaltungsmodul 33, im nächsten Schritt 243, einen
TCP-Socket zum Senden und Empfangen einer IM-Textmeldung. Anschließend erzeugt
das Befehlspaketwandlermodul 21, im nächsten Schritt 244, einen
Befehl IMREQ, und es sendet diesen Befehl an einen einen Kommunikationsvorgang
anfordernden Partner, der von einem anderen mit dem Paketnetzwerk 1 verbundenen
Benutzer ausgewählt
wurde, was unter Verwendung des im Schritt 243 erzeugten TCP-Sockets
erfolgt. Der Befehl IMREQ ist ein Befehl, der dazu verwendet wird,
eine Anfrage zum Starten eines Eins-zu-eins-IM zu stellen.
-
Wenn
das Ergebnis der Ermittlung anzeigt, dass kein IM ausgewählt wurde,
geht andererseits der Ablauf der Abfolge zu einem Schritt 245 weiter, um
zu ermitteln, ob aus dem durch den Kommunikationspunkt 143 repräsentierten
Menü IM-Konferenz ausgewählt wurde
oder nicht. Wenn das Ergebnis der Ermittlung Ja ist, führt das
Sitzungsverwaltungsmodul 33 einen durch die in der 22 dargestellte
Abfolge repräsentierten
Prozess zur IM-Konferenz aus. Wenn das vom Benutzer eingegebene
Ereignis keine Bedienung zum Auswählen des Kommunikationspunkts 143 ist,
geht andererseits der Ablauf der Abfolge zu einem Schritt 246 weiter,
um zu ermitteln, ob der Präsenzpunkt 142 des
Hauptschirms ausgewählt wurde
oder nicht. Wenn das Ergebnis der Ermittlung Ja ist, geht der Ablauf
der Abfolge zu einem Schritt 247 weiter, in dem das Befehlspaketwandlermodul 21 einen
Befehl PRESENCEREQ erzeugt und rundüberträgt, wobei es sich um einen
Befehl handelt, der eine Anfrage zur Erfassung von Information zum Sender
und Information zur Präsenz
stellt.
-
Wenn
das im Schritt 245 erhaltene Ergebnis der Ermittlung anzeigt,
dass die IM-Konferenz ausgewählt
wurde, geht der Ablauf der Abfolge zu einem Schritt 250 der
in der 22 dargestellten Abfolge weiter.
In diesem Schritt zeigt das Sitzungsverwaltungsmodul 33 den
Schirm 'Kommunikation:
IM-Konferenz' an.
Dann geht der Ablauf der Abfolge zu einem Schritt 251 weiter,
um zu ermitteln, ob die Beitrittstaste 191 ausgewählt wurde
oder nicht. Wenn das Ergebnis der Ermittlung Ja ist, geht der Ablauf der
Abfolge zu einem Schritt 252 weiter, in dem das Befehlspaketwandlermodul 21 einen
Befehl BEITRETEN erzeugt, der Information zum Sender und zur Nummer
des Kanals enthält,
wobei der Befehl an eine Portnummer rundübertragen wird, die in einer vorab
eingetragenen Multicastadresse enthalten ist und für einen
Sitzungssteuerungsbefehl bereitgestellt wird. Dann führt, im
nächsten
Schritt 253, das das Datenpaketwandlermodul 22 und
das Datenanalysiermodul 31 enthaltende IM-Datenverarbeitungsmodul
einen Prozess aus, der durch die in der 28 dargestellte
Abfolge repräsentiert
ist.
-
Wenn
es das Ergebnis der Ermittlung anzeigt, dass die Beitrittstaste 191 nicht
ausgewählt wurde,
geht andererseits der Ablauf der Abfolge zu einem Schritt 254 weiter,
um zu ermitteln, ob die Auflisttaste 192 ausgewählt wurde
oder nicht. Wenn das Ergebnis der Ermittlung Ja ist, geht der Ablauf
der Abfolge zu einem Schritt 255 weiter, in dem das Befehlspaketwandlermodul 21 einen
Befehl WERDA erzeugt, der Information zum Sender und zur Nummer des
Kanals enthält,
und es führt
eine Multicastübertragung
des Befehls aus.
-
Wenn
es das Ergebnis der Ermittlung anzeigt, dass die Auflisttaste 192 nicht
ausgewählt
wurde, geht andererseits der Ablauf der Abfolge zu einem Schritt 256 weiter,
um zu ermitteln, ob die Verlassenstaste 193 ausgewählt wurde
oder nicht. Wenn das Ergebnis der Ermittlung Ja ist, geht der Ablauf der
Abfolge zu einem Schritt 257 weiter, in dem das Befehlspaketwandlermodul 21 einen
Befehl VERLASSEN erzeugt, der Information zum Sender enthält, und
es führt
eine Multicastübertragung
des Befehls aus. Dann wird, in einem nächsten Schritt 258, ein
Beendigungsprozess des IM-Datenverarbeitungsmoduls ausgeführt.
-
Die 23 und 24 zeigen
eine Abfolge eines für
ein Netzwerkereignis ausgeführten
Prozesses.
-
Die
Abfolge beginnt mit dem Schritt 260 der in der 23 dargestellten
Abfolge, um zu ermitteln, ob ein vom Paketnetzwerk 1 empfangenes
Paket einem Befehl ONLINE entspricht. Wenn das Ergebnis der Ermittlung
Ja ist, geht der Ablauf der Abfolge zu einem Schritt 261 weiter,
in dem das Befehlsanalysiermodul 30 im Befehl enthaltene
Benutzerinformation erfasst. Dann fügt, im nächsten Schritt 262,
das Befehlsanalysiermodul 30 zu einem auf dem in der 12 dargestellten
Hauptschirm angezeigten Onlinebenutzergebiet einen Spitznamen, zur
Anzeige auf dem Schirm, hinzu. Anschließend erzeugt das Befehlsanalysiermodul 30,
im nächsten
Schritt 263, einen als Antwort dienenden Befehl ACK, der
ebenfalls Information zu dieser Clientendstelle 2 enthält und es
anzeigt, dass der Benutzer dieser Clientendstelle 2 am
Kommunikationsvorgang teil hat, und es führt eine Rundübertragung
des Befehls aus.
-
Auf
diese Weise empfängt
die den Befehl ONLINE sendende Clientendstelle 2 von jeder
mit dem Paketnetzwerk 1 verbundenen Clientendstelle 2 eine
Antwort und ist so dazu in der Lage, Benutzer zu kennen, die mit
dem Paketnetzwerk 1 verbunden sind. Als Alternative sendet
nur eine der mit dem Paketnetzwerk 1 verbundenen Clientendstellen 2 eine Antwort,
gemeinsam mit einer Liste von mit dem Paketnetzwerk 1 verbundenen
Clientendstellen 2. In diesem Fall ist es nicht erforderlich,
dass die anderen mit dem Paketnetzwerk 1 verbundenen Clientendstellen 2 eine
Antwort senden.
-
Wenn
das Ergebnis der Ermittlung anzeigt, dass das vom Paketnetzwerk 1 empfangene
Paket keinem Befehl ONLINE entspricht, geht andererseits der Ablauf
der Abfolge zu einem Schritt 264 weiter, um zu ermitteln,
ob das vom Paketnetzwerk 1 empfangene Paket einem Paket
ACK entspricht oder nicht. Wenn das Ergebnis der Ermittlung Ja ist,
geht der Ablauf der Abfolge zu einem Schritt 265 weiter,
in dem das Befehlsanalysiermodul 30 im Befehl enthaltene
Information erfasst. Dann fügt
das Befehlsanalysiermodul 30, im nächsten Schritt 266,
zu einem auf dem in der 12 dargestellten
Hauptschirm angezeigten Onlinebenutzergebiet einen Spitznamen hinzu,
der auf dem Schirm anzuzeigen ist, wenn der Benutzer der den Befehl
ACK sendenden Clientendstelle 2 nicht angezeigt wurde,
d.h., wenn diese Clientendstelle 2 eine solche ist, die
einen Befehl ONLINE sendet.
-
Wenn
das Ergebnis der Ermittlung anzeigt, dass das vom Paketnetzwerk 1 empfangene
Paket keinem Befehl ACK entspricht, geht andererseits der Ablauf
der Abfolge zu einem Schritt 267 weiter, um zu ermitteln,
ob das vom Paketnetzwerk 1 empfangene Paket einem Befehl
BEITRETEN entspricht oder nicht. Wenn das Ergebnis der Ermittlung
Ja ist, geht der Ablauf der Abfolge zu einem Schritt 268 weiter,
in dem das Befehlsanalysiermodul 30 Information wie den
Spitznamen und die Nummer des Kanals erfasst. Dann wird, im nächsten Schritt 269,
die Anzahl der am Kanal teilhabenden Benutzer inkrementiert, wobei
es sich um den Kanal handelt, an dem der diesen Befehl BEITRETEN
sendende Benutzer teilhaben möchte.
Die Anzahl dieser Benutzer wird in die in der 4 dargestellte
Kanalverwaltungstabelle eingeschlossen.
-
Wenn
das Ergebnis der Ermittlung anzeigt, dass das vom Paketnetzwerk 1 empfangene
Paket keinem Befehl BEITRETEN entspricht, geht andererseits der
Ablauf der Abfolge zu einem Schritt 270 weiter, um zu ermitteln,
ob das vom Paketnetzwerk 1 empfangene Paket einem Befehl
WERDA entspricht. Wenn das Ergebnis der Ermittlung Ja ist, geht
der Ablauf der Abfolge zu einem Schritt 271 weiter, in
dem das Befehlsanalysiermodul 30 die Nummer des Kanals
aus dem Befehl WERDA erfasst. Dann erzeugt das Befehlsanalysiermodul 30,
im nächsten
Schritt 272, einen Befehl IAM, und sendet diesen multicastmäßig, der
anzeigt, dass diese Clientendstelle 2 am Kanal teil hat,
wenn dies der Fall ist. Auf diese Weise zeigt das Spitznamengebiet 144 der
den Befehl WERDA sendenden Clientendstelle 2 den Spitznamen
des Benutzers dieser den Befehl IAM sendenden Clientendstelle 2 an.
Wenn diese Clientendstelle 2 am Kanal teil hat, wird andererseits
kein derartiger Befehl IAM gesendet.
-
Wenn
es das Ergebnis der Ermittlung anzeigt, dass das vom Paketnetzwerk 1 empfangene Paket
nicht dem Befehl WERDA entspricht, geht andererseits der Ablauf
der Abfolge zu einem Schritt 273 weiter, um zu ermitteln,
ob das vom Paketnetzwerk 1 empfangene Paket ein Befehl
IAM ist. Wenn das Ergebnis der Ermittlung Ja ist, geht der Ablauf der
Abfolge zu einem Schritt 274 weiter, in dem das Befehlsanalysiermodul 30 Information
zum den Befehl IAM sendenden Benutzer erfasst. Dann wird, im nächsten Schritt 275,
ein Spitzname zum Gebiet 170 hinzugefügt, wo dieser anzuzeigen ist,
wenn der den Befehl IAM sendende Benutzer nicht im Gebiet 170 angezeigt
wurde, wobei es sich um ein Gebiet zum Anzeigen einer Liste von
Teilnehmern im in der 15 dargestellten Schirm 'Kommunikation: VOIP' handelt.
-
Wenn
es das Ergebnis der Ermittlung anzeigt, dass das vom Paketnetzwerk 1 empfangene Paket
kein Befehl IAM ist, geht andererseits der Ablauf der Abfolge zu
einem Schritt 276 weiter, um zu ermitteln, ob das vom Paketnetzwerk 1 empfangene Paket
ein Befehl VERLASSEN ist. Wenn das Ergebnis der Ermittlung Ja ist,
geht der Ablauf der Abfolge zu einem Schritt 277 weiter,
in dem das Befehlsanalysiermodul 30 Information zum den
Befehl VERLASSEN sendenden Benutzer erfasst. Dann wird, im nächsten Schritt 278,
der Spitzname des den Befehl VERLASSEN sendenden Benutzers aus der
Liste der Teilnehmer gelöscht,
die im in der 15 dargestellten Schirm 'Kommunikation: VOIP' erscheint.
-
Wenn
es das Ergebnis der Ermittlung anzeigt, dass das vom Paketnetzwerk 1 empfangene Paket
nicht dem Befehl VERLASSEN entspricht, geht andererseits der Ablauf
der Abfolge zu einem Schritt 279 weiter, um zu ermitteln,
ob das vom Paketnetzwerk 1 empfangene Paket ein Befehl
OFFLINE ist oder nicht. Wenn das Ergebnis der Ermittlung Ja ist,
geht der Ablauf der Abfolge zu einem Schritt 280 weiter,
in dem das Befehlsanalysiermodul 30 Information zum den
Befehl OFFLINE sendenden Benutzer erfasst. Dann wird, im nächsten Schritt 281, der
Spitzname des den Befehl VERLASSEN sendenden Benutzers aus der Liste
der Onlinebenutzer gelöscht,
die auf dem in der 12 dargestellten Hauptschirm
erscheint.
-
Wenn
es das Ergebnis der Ermittlung anzeigt, dass das vom Paketnetzwerk 1 empfangene Paket
keinem Befehl OFFLINE entspricht, geht andererseits der Ablauf der
Abfolge zu einem Schritt 290 der in der 24 dargestellten
Abfolge weiter, um zu ermitteln, ob das vom Paketnetzwerk 1 empfangene Paket
einem Befehl IMACK entspricht oder nicht. Wenn das Ergebnis der
Ermittlung Ja ist, geht der Ablauf der Abfolge zu einem Schritt 291 weiter,
in dem das IM-Datenverarbeitungsmodul
einen Prozess ausführt,
der durch die in der 29 dargestellten Abfolge repräsentiert
ist.
-
Wenn
es das Ergebnis der Ermittlung anzeigt, dass das vom Paketnetzwerk 1 empfangene Paket
keinem Befehl IMACK entspricht, geht andererseits der Ablauf der
Abfolge zu einem Schritt 292 weiter, um zu ermitteln, ob
das vom Paketnetzwerk 1 empfangene Paket dem Befehl IMZURÜCKGEWIESEN
entspricht oder nicht. Wenn das Ergebnis der Ermittlung Ja ist,
geht der Ablauf der Abfolge zu einem Schritt 293 weiter,
in dem der Schirm 'Kommunikation:
IM' und der im Schritt 243 erzeugte
TCP-Socket geschlossen werden.
-
Wenn
es das Ergebnis der Ermittlung anzeigt, dass das vom Paketnetzwerk 1 empfangene Paket
keinem Befehl IMREFUSED entspricht, geht andererseits der Ablauf
der Abfolge zu einem Schritt 294 weiter, um zu ermitteln,
ob das vom Paketnetzwerk 1 empfangene Paket einem Befehl
PRESENCEREQ entspricht oder nicht. Wenn das Ergebnis der Ermittlung
Ja ist, geht der Ablauf der Abfolge zu einem Schritt 295 weiter,
in den der aktuelle Kommunikationsstatus dieser Clientendstelle 2 untersucht wird.
Wenn keine speziellen Daten übertragen
werden, wird ein Befehl PRESENCE/NOP erzeugt. Wenn diese Clientendstelle 2 Mehrbenutzer-Audiokommunikation
ausführt,
wird ein Befehl PRESENCE/VOIP erzeugt. Wenn diese Clientendstelle 2 einen
IM ausführt,
wird ein Befehl PRESENCE/IM erzeugt. Der erzeugte Befehl wird dann
rundübertragen.
-
Wenn
es das Ergebnis der Ermittlung anzeigt, dass das vom Paketnetzwerk 1 empfangene Paket
kein Befehl PRESENCEREQ ist, geht andererseits der Ablauf der Abfolge
zu einem Schritt 296 weiter, um zu ermitteln, ob das vom
Paketnetzwerk 1 empfangene Paket ein Befehl PRESENCE/NOP, PRESENCE/VOIP
oder PRESENCE/IM ist oder nicht. Wenn das Ergebnis der Ermittlung
Ja ist, geht der Ablauf der Abfolge zu einem Schritt 297 weiter,
in dem Information zur diesen Befehl sendenden Endstelle erfasst
wird. Dann wird, im nächsten
Schritt 298, der Benutzer der diesen Befehl sendenden Endstelle
zur Liste der Onlinebenutzer hinzugefügt, die auf dem in der 12 dargestellten
Hauptschirm erscheint, um dort angezeigt zu werden.
-
Wenn
es das Ergebnis der Ermittlung anzeigt, dass das vom Paketnetzwerk 1 empfangene Paket
kein Befehl PRESENCE/NOP, PRESENCE/VOIP oder PRESENCE/IM ist, geht
andererseits der Ablauf der Abfolge zu einem Schritt 299 weiter,
um zu ermitteln, ob das vom Paketnetzwerk 1 empfangene
Paket einem Befehl IMREQ entspricht oder nicht. Wenn das Ergebnis
der Ermittlung Ja ist, geht der Ablauf der Abfolge zu einem Schritt 300 weiter,
in dem Information zum Auslöser
des Befehls IMREQ und Textdaten aus dem Befehl erfasst werden. Dann
werden, im nächsten
Schritt 301, die Information und die Textdaten im Informationsanzeigegebiet 180 für den Auslöser bzw.
im Textanzeigegebiet 181 angezeigt, die Teile des Schirms 'Kommunikation: IM' sind.
-
Die 25 zeigt
eine Abfolge eines Prozesses, wie er dann als Fortsetzung des Schritts 301 ausgeführt wird,
wenn das vom Benutzer eingegebene Ereignis ein Befehl IMREQ ist.
Die Abfolge beginnt mit einem Schritt 400. In diesem Schritt
wurde der Schirm 'Kommunikation:
IM' angezeigt. Dann geht
der Ablauf der Abfolge zu einem Schritt 401 weiter, um
zu ermitteln, ob der Benutzer die auf dem in der 16 dargestellten
Schirm erscheinende OK-Taste 183 ausgewählt hat oder nicht. Wenn das Ergebnis
der Ermittlung Ja ist, geht der Ablauf der Abfolge zu einem Schritt 402 weiter,
in dem ein Befehl IMACK, der einen Spitznamen und Text enthält, entsprechend
dem TCP gesendet wird. Dann wird, im nächsten Schritt 403,
das IM-Datenverarbeitungsmodul aktiviert. Wenn das Ergebnis der
Ermittlung Nein ist, geht andererseits der Ablauf der Abfolge zu
einem Schritt 404 weiter, um zu ermitteln, ob der Benutzer
die auf dem in der 16 dargestellten Schirm erscheinende
SORRY-Taste 184 ausgewählt hat
oder nicht. Wenn das Ergebnis der Ermittlung Ja ist, geht der Ablauf
der Abfolge zu einem Schritt 405 weiter, in dem ein Befehl
IMREFUSED, der einen Spitznamen und eine Zurückweisungsantwort betreffend
die IM-Anfrage enthält,
entsprechend dem TCP gesendet wird.
-
Die 26 ist
ein Diagramm, das die Abfolge eines Audiosendeprozesses zeigt, wie
er durch das Audioverarbeitungsmodul mit dem Codierer 17 und
dem Audiodatenpaket-Wandlermodul 18 ausgeführt wird.
Wenn das Audioverarbeitungsmodul aufgerufen wird, wird ein Timer
zum Bestimmen eines Zeitpunkts zum Abrufen von Audiodaten eingestellt, und
in einem Schritt 310 wird ein Puffer für einen Audiomischprozess zugeordnet.
Dann geht der Ablauf der Abfolge zu einem Schritt 311 weiter,
um in einen Wartezustand einzutreten, in dem ermittelt wird, ob ein
Zeitablauf aufgetreten ist oder nicht. Wenn eine vorbestimmte Zeitperiode
verstrichen ist, wie es durch das Ereignis eines Zeitablaufs ersichtlich
wird, d.h., wenn das Ergebnis der Ermittlung Ja anzeigt, geht der
Ablauf der Abfolge zu einem Schritt 312 weiter, in dem
Daten im Umfang eines Pakets vom Codierer 17 eingelesen
werden. Dann wird, im nächsten Schritt 313,
RTP-Kopfinformation aus der Sendeverwaltungstabelle erfasst. Anschließend wird,
im nächsten
Schritt 314, ein RTP-Paket erzeugt. Dann wird, im nächsten Schritt 315,
das RTP-Paket an eine Multicastadresse gesendet. Anschließend wird,
im nächsten
Schritt 316, die RTP-Kopfinformation aktualisiert. Dann
geht der Ablauf der Abfolge zu einem Schritt 317 weiter,
um zu ermitteln, ob der Benutzer die Taste VERLASSEN ausgewählt hat
oder nicht. Wenn das Ergebnis der Ermittlung Nein ist, geht der Ablauf
der Abfolge zum Schritt 311 zurück, um den oben beschriebenen
Prozess zu wiederholen. Der Prozess wird wiederholt ausgeführt, bis
der Benutzer die Taste VERLASSEN auswählt. Wenn das Ergebnis der
Ermittlung Ja wird, wird die Ausführung des Audiosendeprozesses
beendet.
-
Die 27 ist
ein Diagramm, das die Abfolge eines Audioempfangsprozesses zeigt,
wie er durch das Audioverarbeitungsmodul ausgeführt wird. Wenn das Audioverarbeitungsmodul
aufgerufen wird, beginnt die Abfolge mit einem Schritt 320,
um einen Port zum Empfangen eines RTP-Pakets zu öffnen und um in einen Zustand
einzutreten, in dem auf das Eintreffen eines RTP-Pakets gewartet
wird. Wenn ein RTP-Paket empfangen wird, geht der Ablauf der Abfolge
zu einem Schritt 321 weiter, in dem eine Portnummer zum
Empfangen des RTP-Pakets identifiziert wird. Dann geht der Ablauf
der Abfolge zu einem Schritt 322 weiter, um zu ermitteln,
ob der Kanal, für
den das RTP-Paket bestimmt ist, ein Kanal ist, an dem diese Clientendstelle 2 selbst
teil hat. Wenn das Ergebnis der Ermittlung Ja ist, geht der Ablauf
der Abfolge zu einem Schritt 323 weiter, in dem die SSRC
aus der Kopfinformation des RTP-Pakets entnommen wird und beim Identifizieren
der das Paket sendenden Clientendstelle 2 verwendet wird. Dann
wird, im nächsten
Schritt 324, die Endadresse einer Ausgangsdatenschlange,
die einer anderen Clientendstelle 2 als dieser Clientendstelle 2 zugeordnet
ist, erfasst, und die empfangenen Daten werden bei einer Pufferungsoperation
an der Endadresse abgespeichert. Dann geht der Ablauf der Abfolge
zu einem Schritt 325 weiter, um zu ermitteln, ob der Benutzer
die Taste VERLASSEN ausgewählt
hat oder nicht. Wenn das Ergebnis der Ermittlung Nein ist, geht
der Ablauf der Abfolge zum Schritt 320 zurück, um den
oben beschriebenen Prozess zu wiederholen. Der Prozess wird wiederholt
ausgeführt,
wenn der Benutzer die Taste VERLASSEN auswählt. Wenn das Ergebnis der
Ermittlung Ja wird, wird die Ausführung des Audioempfangsprozesses
beendet.
-
Die 28 ist
ein Diagramm, das die Abfolge eines durch das Audioverarbeitungsmodul
ausgeführten
Audiodatenwiedergabeprozesses zeigt. Wenn das Audioverarbeitungsmodul
aufgerufen wird, beginnt die Abfolge mit einem Schritt 330,
um einen Timer einzustellen, der bis zu einem Zeitpunkt zählt, um
Audiodaten an den Decodierer 28 durchzulassen, und um einen
Puffer zuzuordnen, der bei der Verarbeitung zum Mischen mehrerer
einzelner Audiodaten zu verwenden ist. Dann geht der Ablauf der Abfolge
zu einem Schritt 331 weiter, um dadurch in einen Wartezustand
zu gelangen, dass ermittelt wird, ob ein Zeitablauf aufgetreten
ist oder nicht. Wenn ein Zeitablauf auftritt, d.h., wenn das Ergebnis
der Ermittlung Ja anzeigt, geht der Ablauf der Abfolge zu einem Schritt 332 weiter,
um die Startadresse jeder Ausgangsdatenschlange 25 zu lesen,
die einem Teilnehmer an einer Konferenz zugeordnet ist, an der diese Clientendstelle 2 selbst
teilnimmt. Dann werden, im nächsten
Schritt 333, Audiodaten ab der Startadresse jeder Ausgangsdatenschlange 25 erfasst.
An schließend
werden, im nächsten
Schritt 334, einzelne Audiodaten gemischt. Dann werden,
im nächsten Schritt 335,
die gemischten Audiodaten zur Wiedergabe an den Decodierer 28 geliefert.
Anschließend wird,
im nächsten
Schritt 336, die Startadresse jeder Ausgangsdatenschlange 25 als
Vorbereitung für
die nächste
Wiedergabeverarbeitung inkrementiert. Dann geht der Ablauf der Abfolge
zu einem Schritt 337 weiter, um zu ermitteln, ob der Benutzer
die Taste VERLASSEN ausgewählt
hat oder nicht. Wenn das Ergebnis der Ermittlung Nein ist, geht
der Ablauf der Abfolge zum Schritt 331 zurück, um den
oben beschriebenen Prozess zu wiederholen. Der Prozess wird wiederholt
ausgeführt,
bis der Benutzer die Taste VERLASSEN auswählt. Wenn das Ergebnis der Ermittlung
Ja wird, wird die Ausführung
des Audiodatenwiedergabeprozesses beendet.
-
Die 29 und 30 zeigen
die Abfolge eines durch das IM-Datenverarbeitungsmodul
ausgeführten
Prozesses. Wenn das IM-Datenverarbeitungsmodul
aktiviert ist, werden in einem Schritt 340 Puffer zum Senden,
Empfangen und Anzeigen einer Textmeldung zugeordnet. Dann geht der
Ablauf der Abfolge zu einem Schritt 341 weiter, um zu ermitteln, ob
der Benutzer die Sendetaste ausgewählt hat oder nicht, wie sie
auf dem Schirm 'Kommunikation:
IM' oder 'Kommunikation: IM-Konferenz' angezeigt wird. Wenn
das Ergebnis der Ermittlung Ja ist, geht der Ablauf der Abfolge
zu einem Schritt 342 weiter, in dem in das Benutzertexteingabegebiet 181 oder 194 eingegebene
Textdaten erfasst werden. Dann wird, im nächsten Schritt 343,
eine Textmeldung erzeugt. Anschließend wird, im nächsten Schritt 344,
ein Befehlskopf MELDUNG zur Textmeldung hinzugefügt, um einen Befehl MELDUNG
zu erzeugen. Dann wird, im nächsten
Schritt 345, der Befehl MELDUNG an die Adresse eines Kommunikationspartners
dadurch gesendet, dass bei einem Eins-zu-eins-IM das TCP verwendet
wird. Bei einem Mehrbenutzer-IM (oder einem Gruppenchat) wird andererseits
der Befehl MELDUNG an eine Portnummer und eine dem Kanal entsprechende
Multicastadresse gesendet. Anschließend wird, im nächsten Schritt 346,
die gesendete Textmeldung zum Benutzertexteingabegebiet 181 oder 194 hinzugefügt, um dort
angezeigt zu werden.
-
Dann
geht der Ablauf der Abfolge zu einem Schritt 347 weiter,
um zu ermitteln, ob der Benutzer die Taste VERLASSEN ausgewählt hat
oder nicht. Wenn das Ergebnis der Ermittlung Nein ist, geht der Ablauf
der Abfolge zum Schritt 341 zurück, um den oben beschriebenen
Prozess zu wiederholen. Der Prozess wird wiederholt ausgeführt, bis
der Benutzer die Taste VERLASSEN auswählt. Wenn das Ergebnis der
Ermittlung Ja wird, wird der durch das IM-Datenverarbeitungsmodul ausgeführte Prozess
beendet.
-
Wenn
der Benutzer nicht die Sendetaste ausgewählt hat, geht andererseits
der Ablauf der Abfolge zum Schritt 348 zurück, um zu
ermitteln, ob von einem Kommunikationspartner ein Befehl MELDUNG
empfangen wurde oder ob ein für
eine Multicastadresse bestimmter Befehl MELDUNG empfangen wurde.
Wenn das Ergebnis der Ermittlung Ja ist, geht der Ablauf der Abfolge
zu einem Schritt 349 weiter, um Information zu einer Endstelle,
die diesen Befehl MELDUNG gesendet hat, aus diesem Befehl zu erfassen.
Dann wird, im nächsten
Schritt 350, eine in diesem Befehl MELDUNG enthaltene Textmeldung erfasst.
Anschließend
geht der Ablauf der Abfolge zu einem Schritt 351 weiter,
um zu ermitteln, ob die Sitzung, zu der der Befehl MELDUNG gehört, eine
Sitzung eines Mehrbenutzer-IM (oder eines Gruppenchats) und nicht
eine Sitzung eines Eins-zu-eins-IM ist. Wenn das Ergebnis der Ermittlung
Ja ist, was anzeigt, dass die Sitzung eine solche eines Gruppenchats
ist, geht der Ablauf der Abfolge zu einem Schritt 352 weiter,
in dem die empfangene Textmeldung zu einem Textmeldungsanzeigegebiet 194 hinzugefügt wird,
das auf dem Schirm 'Kommunikation:
IM-Konferenz' erscheint,
gemeinsam mit dem Spitznamen des Benutzers, der die die Textmeldung
sendende Endstelle verwendet, um dort angezeigt zu werden. Wenn
das Ergebnis der Ermittlung Nein ist, geht andererseits der Ablauf
der Abfolge zu einem Schritt 360 der in der 30 dargestellten
Abfolge weiter, um zu ermitteln, ob die Sitzung, zu der der Befehl MELDUNG
gehört,
eine Sitzung eines Eins-zu-eins-IM ist oder nicht. Wenn das Ergebnis der
Ermittlung Ja ist, geht der Ablauf der Abfolge zu einem Schritt 361 weiter,
in dem die empfangene Textmeldung zum auf dem Schirm 'Kommunikation: IM' erscheinenden Textmeldungsanzeigegebiet
181 gemeinsam mit dem Spitznamen des Benutzers, der die die Textmeldung
sendende Endstelle verwendet, hinzugefügt wird, um dort angezeigt
zu werden.
-
In
der oben beschriebenen Ausführungsform ist
ein Ad-Hoc-Netzwerk als Paketnetzwerk 1 angenommen. Jedoch
kann die Erfindung auch bei einem anderen Netzwerk angewandt werden,
wenn dieses Multicast-Kommunikationsvorgänge ausführen kann. Beispielsweise kann
die Erfindung bei einem derzeitigen Multicast-Netzwerk angewandt
werden, das so konfiguriert ist, dass eine Clientendstelle eine IGMP(Internet
Group Membership Protocol)-Meldung an einen Router ausgibt, der
dann Multicastdaten an die Clientendstelle sendet. IGMP ist ein
Proto koll, das es einer Clientendstelle ermöglicht, an einem Multicastdienst
teilzunehmen.
-
Gemäß der oben
beschriebenen Ausführungsform
ist es selbst in einer Umgebung ohne Server möglich, einen Mehrbenutzer-Kommunikationsvorgang,
einen Eins-zu-eins-IM
und einen Mehrbenutzer-IM auszuführen.