Diplomarbeit
Prototypische Implementierung eines„Virtual Handshaking“
zwischen zwei Telefonenzum Austausch multimedialer assoziierter
Daten
von
Markus Thurner
28.04.2008
Lehrstuhl für KommunikationssystemeInstitut fürInformatik
Lehrstuhl für Kommunikationssysteme
1. Entstehung
2. Zielsetzung
3. Grundlagen
4. Analyse
5. Entwurf und Implementierung
6. Zusammenfassung und Ausblick
Institut fürInformatik
Inhalt
Lehrstuhl für KommunikationssystemeInstitut fürInformatik
Inhalt
07.05.2007 erstes großes Meeting
Strategie-Workshop mit Siemens
24.05.2007 zweites Meeting
Vorschläge der Studenten bezüglich Anwender- beziehungsweise Nutzersicht in Form einer
Präsentation
26.07.2007 letztes Treffen mit Siemens
Definition der Diplomarbeiten zu Openstage Applikationen
1. Entstehung
Lehrstuhl für KommunikationssystemeInstitut fürInformatik
1. Austausch elektronischer Visitenkarten während des Telefonats
Möglichkeiten:
Automatische Aktualisierung des Adressbuchs
Darstellung der Kontakte auf dem Telefon
Manuelle Einpflegung in das Adressbuch entfällt
1. Entstehung 2. Zielsetzung
Lehrstuhl für KommunikationssystemeInstitut fürInformatik
0 – 50 % of connections50 – 100 % of connections
1. Austausch elektronischer Visitenkarten während des Telefonats
2. Austausch der Daten über eine heterogene Netzstruktur
Heterogene IP- & Telefonwelt
Nutzlast
SIP-Server SIP-Server
Gateway
POT
Plain old telephonySignalisierung
Gateway
Teilnehmer AFirmennetzwerk A
Teilnehmer BFirmennetzwerk B
2. Zielsetzung
Lehrstuhl für KommunikationssystemeInstitut fürInformatik
1. Verbindungsaufbau über Session Initiation Protocol (SIP)
Verwendet Hilfsprotokoll Session Description Protocol (SDP)
2. Transport der Sprachpakete etc. über Realtime Transport Protocol (RTP)
3. Netzübergang wird durch Gateways sichergestellt
Media Gateways
Signalling Gateways
Heterogene IP- & Telefonwelt
Nutzlast
SIP-Server SIP-Server
Gateway
POT
Plain old telephonySignalisierung
Gateway
Teilnehmer AFirmennetzwerk A
Teilnehmer BFirmennetzwerk B
3. Grundlagen 2. Zielsetzung
Call Control-Ebene / Verwaltet Telefonat
Sequenzielle Anordnung / Auswerten von RequestsFasst Transaktionen zu einer Sitzung zusammen
Lehrstuhl für KommunikationssystemeInstitut fürInformatik
1. SIP SoftPhone
Frei zugänglicher Quellcode
Vollständig in Java implementierter Protokollstack
MjSipUA
RFC 3261 konforme Implementierung
Dokumentation leider unvollständig
Transaktionsverwaltung / Timeouts
Versenden und Empfangen von SIP-Nachrichten
4. Analyse 3. Grundlagen
Lehrstuhl für KommunikationssystemeInstitut fürInformatik
2. Datenaustausch via DTMF
Dual-Tone Multifrequency (Wählverfahren)
Sowohl in analogen als auch in IP-Netzen verwendbar
Versenden von DTMF-Signalen nach RFC 4733
innerhalb von RTP-Paketen
Erste Möglichkeit: Durch Angabe der überlagerten Frequenzen
4. Analyse
Lehrstuhl für KommunikationssystemeInstitut fürInformatik
2. Datenaustausch via DTMF
Dual-Tone Multifrequency (Wählverfahren)
Sowohl in analogen als auch in IP-Netzen verwendbar
Versenden von DTMF-Signalen nach RFC 4733
innerhalb von RTP-Paketen
Zweite Möglichkeit: Durch Angabe von Events
4. Analyse
Lehrstuhl für KommunikationssystemeInstitut fürInformatik
2. Anforderungen an die Gateways
Physikalische Schnittstellen
SIP-Standard / Sprachcodecs
SS7 Signalisierung
RFC 4733
Hardware für die Verarbeitung von DTMF-Signalen
Heterogene IP- & Telefonwelt
Nutzlast
SIP-Server SIP-Server
Gateway
POT
Plain old telephonySignalisierung
Gateway
Teilnehmer AFirmennetzwerk A
Teilnehmer BFirmennetzwerk B
4. Analyse
Lehrstuhl für KommunikationssystemeInstitut fürInformatik
3. vCard Format
RFC 2426 Virtual Card Format
Standardisiertes Dateiformat für digitale Visitenkarten
Einfache Dateien in Klartext
Bietet Möglichkeiten, Audio- und Videodaten anzuhängen
Eigenschaft ´;´ Parameter ´:´ Wert
4. Analyse
Lehrstuhl für KommunikationssystemeInstitut fürInformatik
4. Übertragung der vCard
Umwandlung der Textdatei in DTMF-Signale ungeeignet
Zuordnung eigener, auf die SoftClients bezogener Adressen
Verwendung des weit verbreiteten E-Mail Dienstes
Vorraussetzung: Endgeräte benötigen Zugang zu einem Mail Server
Heterogene IP- & Telefonwelt
Nutzlast
SIP-Server SIP-Server
Gateway
POT
Plain old telephonySignalisierung
Gateway
Teilnehmer AFirmennetzwerk A
Teilnehmer BFirmennetzwerk B
Mail Server
Mail Server
4. Analyse
Lehrstuhl für KommunikationssystemeInstitut fürInformatik
1. Erweiterung des Graphical User Interface
Adresszeile und vereinfachtes Adressbuch für die Zielrufnummer
Infozeile gibt den aktuellen, am SIP-Server angemeldeten Account an
Statusanzeige gibt an, in welchem Status sich der Client befindet
Wähltaste zum Initiieren eines Anrufs
Auflegtaste, um den Anruf zu beenden oder um den aktuellen Vorgang abzubrechen
Taste zum Öffnen der VHS-Oberfläche
5. Entwurf und Implementierung 4. Analyse
Lehrstuhl für KommunikationssystemeInstitut fürInformatik
1. Erweiterung des Graphical User Interface
5. Entwurf und Implementierung
Lehrstuhl für KommunikationssystemeInstitut fürInformatik
2. Abfangen und Initialisieren von Ereignissen
Provider → Listener Modell
Listener-Klasse wartet auf Ereignisse
Provider-Klasse meldet Ereignisse
5. Entwurf und Implementierung
Lehrstuhl für KommunikationssystemeInstitut fürInformatik
3. Initialisierung des VHS und Versenden der DTMF Signale
Alice BobGateway 1 Gateway 2
PSTN
RTP Pakete
SIP Signalisierung
PSTN Signalisierung (z.B. SS7)
Netzinterne DTMF Übertragung
RTP RTP
DTMF via RTP DTMF via RTP
RE-INVITE
RE-INVITETRYING (100)
OK (180)
OK (180)
ACK
ACK
5. Entwurf und Implementierung
Lehrstuhl für KommunikationssystemeInstitut fürInformatik
3. Initialisierung des VHS und Versenden der DTMF Signale
Klasse UserAgent realisiert alle wesentlichen
Funktionen eines SoftPhones
Startet und beendet Media-Anwendung
Reagiert auf SIP-Signalisierungsnachrichten
Erzeuge RE-INVITE mit neuem Session Descriptor
Erweiterung des Listeners für RE-INVITE Nachrichten
Erweiterung des Listeners für OK (180) Nachrichten
5. Entwurf und Implementierung
Lehrstuhl für KommunikationssystemeInstitut fürInformatik
4. Erzeugen von RTP Paketen
Zur Generierung der RTP-Pakete wird auf die Klasse RtpPacket zurückgegriffen
Für die Generierung der nach RFC 4733 vorgeschriebenen Nutzlast wurde eine RtpPayload Klasse erstellt
5. Entwurf und Implementierung
Lehrstuhl für KommunikationssystemeInstitut fürInformatik
5. Senden und Empfangen von DTMF-Signalen
DTMFtransmitter eigentliche Programmlogik
RtpStreamSender wurde für einzelne Events modifiziert
RtpStreamReceiver schreibt ankommende Daten in ein RtpPaket Objekt
5. Entwurf und Implementierung
5. Entwurf und Implementierung
Lehrstuhl für KommunikationssystemeInstitut fürInformatik
6. Senden und Abrufen von E-Mail
Soll eigene vCard
versendet
werden ?
Versende eigene vCard
Teste E-Mailkont
o auf neue E-
Mails
Stimmt Betreff
mit Call-ID
überein?
Beende VHS
Werte vCard aus
Rufe E-Mail ab
Dem Inhalt
vertrauen ?
Ja
Nein
Call-ID = Betreff
Call-ID ≠ Betreff
Keine neuen E-Mails vorhanden
Neue E-Mail im Postfach
Ja
Nein
Alice Bob
5. Entwurf und Implementierung
Lehrstuhl für KommunikationssystemeInstitut fürInformatik
6. Senden und Abrufen von E-Mail
Client enthält drei wesentliche Funktionen
Abrufen per POP3
Senden durch SMTP
Wenn vCard angekommen, dann rufe E-Mail ab
5. Entwurf und Implementierung
5. Entwurf und Implementierung
Lehrstuhl für KommunikationssystemeInstitut fürInformatik
7. Auswerten / Erzeugen der Daten
vCardAnalyzer zum Auslesen lokal
gespeicherter vCards
vCardGenerator schreibt Daten in
eine neue Datei
5. Entwurf und Implementierung
Lehrstuhl für KommunikationssystemeInstitut fürInformatik
5. Entwurf und Implementierung
Lehrstuhl für KommunikationssystemeInstitut fürInformatik
Erfolgschancen
Überprüfen auf verloren gegangene Pakete nimmt zu viel Zeit in Anspruch
Jedes Paket wird nur einmal gesendet
Mind. in 10% der getesteten Versuche tritt ein Paketverlust auf
Alternative Ansätze
Anbieten der vCards über Webseiten wie MySpace oder Facebook
Klassisches Telefonnetz veraltet
ISDN nahezu überall verfügbar
Anstatt DTMF-Signale zu versenden eventuell den 64k/bit Signalisierungskanal verwenden (ISUP-Nachrichten)
6. Zusammenfassung und Ausblick 5. Entwurf und Implementierung