Mobilkommunikation Kapitel 10:
Mobilitätsunterstützung
Dateisysteme
Datenbanken
WWW und Mobilität
WAP (Wireless Application Protocol), i-mode & Co.
Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
MC SS05
10.1
Mobile, tragbare Multimedia-Ausstattung …
Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
MC SS05
10.2
WWW und Mobilität
Protokoll (HTTP, Hypertext Transfer Protocol) und Sprache (HTML,
Hypertext Markup Language) des Web wurden nicht für mobile
Anwendungen entworfen, daraus resultieren zahlreiche Probleme!
Typische Datengrößen
HTTP request: 100-350Byte
Antworten typ. <10kByte, Kopf 160Byte, GIF 4,1kByte, JPEG 12,8kByte,
HTML 5,6kByte
aber auch viele sehr große Dateien, nicht vernachlässigbar
Das Web ist kein Dateisystem!
Web-Seiten sind nicht nur einfach Dateien, die geladen werden
statische und dynamische Inhalte, Interaktion mit Servern über Formulare,
Inhaltstransformation, push-Strategien
zahlreiche Querverweise, kein transparenter Datenstrom, automatisches
Nachladen
ein Klick auf eine Datei kann große Konsequenzen haben!
Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
MC SS05
10.12
WWW-Beispiel
Request to port 80:
or:
GET / HTTP/1.0
GET / HTTP/1.1
Host: www.inf.fu-berlin.de
Response from server
non persistent
HTTP/1.1 200 OK
Date: Wed, 30 Oct 2002 19:44:26 GMT
Server: Apache/1.3.12 (Unix) mod_perl/1.24
Last-Modified: Wed, 30 Oct 2002 13:16:31 GMT
ETag: "2d8190-2322-3dbfdbaf"
Accept-Ranges: bytes
Content-Length: 8994
Connection: close
Content-Type: text/html
<DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>FU-Berlin: Institut f&uuml;r Informatik</TITLE>
<base href="http://www.inf.fu-berlin.de">
<link rel="stylesheet" type="text/css" href="http://www.inf.fuberlin.de/styles/homepage.css">
<!--script language="JavaScript" src="fuinf.js"-->
<!--/script-->
</head>
<body onResize="self.location.reload();">
...
Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
MC SS05
10.13
HTTP 1.0 und Mobilität I
Eigenschaften
zustandslos, Client/Server, Anfrage/Antwort
erfordert verbindungsorientiertes Protokoll, eine Verbindung pro Anfrage
(meist TCP eingesetzt) – Verbesserungen in HTTP/1.1
primitive Caching- und Sicherheitsmodelle
Probleme
entworfen für große Bandbreiten und geringe Verzögerungen
große und redundante Protokollköpfe (lesbar für Menschen, kein
gespeicherter Zustand erfordert stets umfangreiche Köpfe)
unkomprimierte Übertragung von Inhalten
mit TCP
großer Overhead pro Anfrage durch 3-Wege-Handshake verglichen mit dem
eigentlichen Inhalt (z.B. GET request)
slow-start Problematik
DNS-lookup durch Client erzeugt zusätzlichen Verkehr
Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
MC SS05
10.14
HTTP 1.0 und Mobilität II
Caching
oftmals von Dienstanbietern verhindert damit Benutzungsstatistiken erstellt
werden können
dynamische Objekte können nicht im Cache abgelegt werden
zahlreiche Zähler, Datum, Personalisierungen, ...
Mobilität macht oft Caches unmöglich
Sicherheitsproblematik
wie verhält sich SSL im Zusammenhang mit Proxys
Sehr viele Seiten werden erst nach Anforderung nutzerabhängig erstellt
(CGI, ASP, ...)
POST (d.h. Senden zum Server)
kann i.allg. nicht gepuffert werden, damit problematisch falls gerade
abgekoppelt
Genügend ungelöste Fragen!
Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
MC SS05
10.15
HTML und mobile Endgeräte
HTML
entworfen für Endgeräte höherer Leistung, Farbdisplay, Maus
Optimierung der „Ästhetik“, nicht des Kommunikationsaufwandes
Mobile Endgeräte
haben oft nur kleine Anzeigen niedriger Auflösung und sehr eingeschränkte
Eingabemöglichkeiten
weitere „Features“
animierte GIFs, Java AWT, Frames, ActiveX Controls, Shockwave, Filmclips, Audio,
...
heute schon werden Echtfarbendarstellung, Multimedia-Unterstützung, hohe
Auflösungen beim Entwurf von Web-Seiten vorausgesetzt
Die Mehrzahl der HTML-Seiten enthält Fehler
Browser müssen sehr leistungsfähig sein, um diese Fehler „auszugleichen“
Heterogenität der Endgeräte wird weitgehend ignoriert!
also werden z.B. auch große Bilder automatisch zum Mobiltelefon mit geringer
Auflösung unter hohen Kosten übertragen !
Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
MC SS05
10.16
Ansätze in Richtung Web für mobile Endgeräte
Anwendungs-Gateways, erweiterte Server
einfache Clients, Vorberechnungen im Festnetz
Kompression, Filterung, Inhaltsextraktion
automatische Anpassung an Netzwerkgegebenheiten
Beispiele
Skalierung von Grafiken, Farbreduktion, Änderung des
Dokumentenformats (z.B. PS nach TXT)
Detailbetrachtungen, Ausschnitte, Zoom
Extraktion von Überschriften, Zusammenfassung des Textes
HDML: einfache, HTML-ähnliche Sprache mit speziellem Browser
HDTP: passendes Protokoll, entwickelt von Unwired Planet
Probleme
proprietäre Ansätze, erfordern eine Menge spezieller Zusätze für Browser
große Geräteheterogenität erschwert Ansätze
Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
MC SS05
10.17
Neue Techniken, die der Mobilität helfen?
Push-Technik
echtes push, kein Client-Pull, channels etc.
HTTP/1.1
client/server nutzen die selbe Verbindung für mehrere Anfragen/Antworten
mehrere Anfragen zu Beginn einer Sitzung möglich, die Antworten
kommen dann in der Anfragereihenfolge
erweiterte Zwischenspeicherung von Antworten möglich (falls Antworten
identisch)
semantische Transparenz ist nicht immer machbar: abgetrennt, geringe
Leistung, Verfügbarkeit
neue tags und Optionen um das Caching besser zu steuern (public/private,
max-age, no-cache etc.)
Konsistenz kann auf Nutzerwunsch abgeschwächt werden
Kodierung/Kompression, Integritätsprüfung, Sicherheit von Proxies,
Authentisierung, Authentifikation...
Cookies: nun..., Sitzungen mit Zustand, nicht richtig integriert
Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
MC SS05
10.18
WAP - Wireless Application Protocol
Ziele
Internet-Inhalte und erweiterte Dienste sollen zu mobilen Endgeräten
(Telefone, PDA, ...) geliefert werden
Unabhängigkeit von Standards drahtloser Netze
offen für alle, Vorschläge („weltweite Protokollspezifikation“) werden
Standardisierungsgremien vorgelegt
Anwendungen sollen über aktuelle Transportmedien, Gerätetypen hinweg
skalieren und auch auf zukünftige Entwicklungen anwendbar sein
Plattformen
beispielsweise GSM (900, 1800, 1900), CDMA IS-95, TDMA IS-136,
Systeme der 3. Generation wie IMT-2000, UMTS, W-CDMA, cdma2000 1x
EV-DO
Forum
Früher: WAP-Forum, mitgegründet von u.a. Ericsson, Motorola, Nokia,
Unwired Planet, weitere Informationen unter www.wapforum.org
Jetzt: Open Mobile Alliance www.openmobilealliance.org
(Open Mobile Architecture + WAP Forum + SyncML + …)
Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
MC SS05
10.22
WAP - Standardisierungsinhalte
Browser
„Micro-Browser“, ähnlich der bekannten Browser vom Internet
Script-Sprache
ähnlich zu Java-Script, angepasst an das mobile Umfeld
WTA/WTAI
Wireless Telephony Application (Interface): Zugriff auf
Telefonfunktionalitäten
Inhaltsformate
z.B. Visitenkarten (vCard), Kalenderereignisse (vCalender)
Protokollstapel
Transport-, Sicherheits- und Sitzungsschicht
Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
MC SS05
10.23
WAP 1.x - Schichtenarchitektur und Protokolle
Internet
HTML, Java
A-SAP
WAP
Weitere Dienste und
Anwendungen
Application Layer (WAE)
S-SAP
Session Layer (WSP)
HTTP
TR-SAP
Transaction Layer (WTP)
SEC-SAP
SSL/TLS
Security Layer (WTLS)
T-SAP
TCP/IP,
UDP/IP,
Medien
Transport Layer (WDP)
WCMP
Trägerdienste (GSM, CDPD, ...)
WAE beinhaltet z.B. WML (Wireless Markup Language), WML Script, WTAI
Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
MC SS05
10.24
Wireless Markup Language (WML)
WML folgt einer Stapel/Blatt (Skat) [deck] und Karten [card] Metapher
WML-Dokumente bestehen aus vielen Karten, Karten werden zu Stapeln
gruppiert
ein Stapel ist einer HTML-Seite ähnlich und stellt eine Übertragungseinheit
dar
WML beschreibt nur die Absicht einer Interaktion in einer abstrakten Art
die Umsetzung/Präsentation hängt dann von den Gerätefähigkeiten ab
Eigenschaften
Texte, Bilder
Benutzerinteraktion
Navigation
Inhaltsverwaltung
Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
MC SS05
10.52
WML – Beispiel I
<?xml version="1.0"?>
<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN"
"http://www.wapforum.org/DTD/wml_1.1.xml">
<wml>
<card id="Karte_eins" title="Einfaches Beispiel">
<do type="accept">
<go href="#Karte_zwei"/>
</do>
<p>
Dies ist eine einfache erste Karte!
<br/>
Auf der folgenden Karte kann eine ...
</p>
</card>
Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
MC SS05
10.53
WML – Beispiel II
<card id="Karte_zwei" title="Pizzawahl">
<do type="accept" label="weiter">
<go href="#Karte_drei"/>
</do>
<p>
... Pizza bestellt werden!
<select value="Mar" name="PIZZA">
<option value="Mar">Margherita</option>
<option value="Fun">Funghi</option>
<option value="Vul">Vulcano</option>
</select>
</p>
</card>
<card id="Karte_drei" title="Die Pizza!">
<p>
Ihr Pizzaparameter ist <b>$(PIZZA)</b>!
</p>
</card>
</wml>
Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
MC SS05
10.54
WMLScript
Ergänzung zu WML
Stellt allgemeine Skript-Fähigkeiten zur Verfügung
Eigenschaften
Gültigkeitsüberprüfung von Benutzereingaben
Zugriff auf Gerätefunktionen
Hardware und Software (Telefonanruf, Adressbuch etc.)
lokale Benutzerinteraktion
Überprüfung der Eingabe bevor diese an einen Server gesendet wird
Interaktion ohne Verzögerung (RTT)
Erweiterung der Geräte-Software
Gerätekonfiguration, Laden neuer Funktionen nach der Auslieferung
Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
MC SS05
10.55
WMLScript - Beispiel
function pizza_test(pizza_typ){
var geschmack="unbekannt";
if (pizza_typ="Mar") {
geschmack="Na ja ...";
}
else {
if (pizza_typ="Vul") {
geschmack="Gut scharf";
};
};
return geschmack;
};
Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
MC SS05
10.56
Wireless Telephony Application (WTA)
Sammlung telefonspezifischer Erweiterungen
Erweiterung des Standard-WAE-Anwendungsmodells
content push
ein Server kann Inhalte direkt auf einen Client schieben
der Client kann nun evtl. bisher unbekannte Ereignisse verarbeiten
Behandlung von Netzereignissen
eine Tabelle zeigt auf, wie auf bestimmte Ereignisse vom Netz zu reagieren ist
Zugang zu Telefonfunktionen
jede Anwendung auf dem Client kann auf Telefonfunktionen zugreifen
Beispiel
Rufen einer Nummer (WML)
wtai://wp/mc;07216086415
Rufen einer Nummer (WMLScript)
WTAPublic.makeCall("07216086415");
Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
MC SS05
10.57
Push/Pull-Dienste in WAP I
Service Indication
Kurze Mitteilung über einen Dienst durch einen Push
Nutzung des Dienstes durch einen Pull
Identifikation durch URI
<?xml version="1.0"?>
<!DOCTYPE si PUBLIC "-//WAPFORUM//DTD SI 1.0//EN"
"http://www.wapforum.org/DTD/si.dtd">
<si>
<indication
href="http://www.piiiizza4u.de/angebot/salat.wml"
created="2000-02-29T17:45:32Z"
si-expires="2000-02-29T17:50:31Z">
Salat-Spezial: Das 5-Minuten-Angebot
</indication>
</si>
Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
MC SS05
10.64
Push/Pull-Dienste in WAP II
Service Loading
Kurze Push-Nachricht an den Client mit URI
Nutzeragent entscheidet über Nutzung der URI durch Pull
Transparent für einen Nutzer, sieht immer wie ein Push aus
<?xml version="1.0"?>
<!DOCTYPE sl PUBLIC "-//WAPFORUM//DTD SL 1.0//EN"
"http://www.wapforum.org/DTD/sl.dtd">
<sl
href="http://www.piiiizza4u.de/angebot/salat.wml">
</sl>
Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
MC SS05
10.65
i-mode – vor allem ein Geschäftsmodell!
Zugang zu Internet-Diensten in Japan/NTT DoCoMo
Dienste
Sehr großer Erfolg, über 30 Mio. Nutzer
Email, Kurznachrichten, Web, Austausch von Bildern, Horoskope, ...
Für viele ist dies ein PC-Ersatz, PC-Dichte in Japan „relativ“ niedrig
Ermöglichte für viele ersten Internet-Kontakt
Sehr einfach und bequem in der Handhabung
Technik
9,6 kbit/s (Erweiterungen bis zu 28,8 kbit/s), paketorientiert (PDC-P)
Compact HTML plus proprietäre tags, spezielle Transportschicht (stop&go, ARQ, push,
verbindungsorientiert)
Mobiles Endgerät
Mobilnetz
cHTML + tags
HTTP(S)
TL
TL
PDC-P
PDC-P
TCP
IP
L2
L1
Gateway
TCP
IP
L2
L1
Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
TCP
IP
L2
L1
Inhalteanbieter
cHTML + tags
HTTP(S)
TCP
IP
L2
L1
MC SS05
10.67
i-mode push mit SMS
Anwendung
WSP
WTP
Häufiges Missverständnis:
WAP war kein Erfolg, i-mode ist
unterschiedlich und ein Erfolg – falsch
aus technischer Sicht, richtig aus
wirtschaftlicher Sicht…
WDP
SMS
Netzbetreiber schickt eine SMS mit Push-Nachricht
falls eine email vorliegt. Danach erfolgt ein HTTPGet mit der email als Antwort, falls ein Nutzer die
email lesen möchte.
Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
i-mode ist ein Geschäftsmodell:
- Inhalteanbieter bekommen >80%
der Gebühren.
- technologieunabhängig
(GSM/GPRS in Europa,
PDC-P in Japan – aber auch
UMTS!)
MC SS05
10.68
i-mode Protokollstapel auf WAP 2.0 basierend
Endgerät
Gateway
Server
cHTML
cHTML
HTTP
HTTP
SSL
SSL
WTCP
WTCP
TCP
TCP
IP
IP
IP
IP
L2
L2
L2
L2
L1
L1
L1
L1
i-mode kann WAP –Protokolle nutzen (z.B.: i-mode in Deutschland über GSM/GPRS)
Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
MC SS05
10.69
i-mode – Technische Anforderungen
Functions
Descriptions
WEB Access
Portal Site / Internet Access
M
i-mode HTML (cHTML+tags)
E-mail
Internet e-mail and inter-terminal email
M
HTTP 1.1
Security
End-End security
O
SSL (Version 2, 3), TLS 1
Java
Java application made available
O
Compatible i-mode JAVA
Ringing tone download
Ringing melody download
M
SMF based
Image download
Stand-by screen download
M
GIF (O: JPEG)
Voice call notification during imode session
Voice termination notified and responded during i-mode
communications
M
3GPP standard system
Content charge billing
Per content charge billed to user
M
Specifications depend on each
operator’s billing system
Third party payment collection
Content charge collection on behalf of Content Provider
M
Specifications depend on each
operator’s billing system
Reverse billing
Packet usage charges can be billed to third party
O
Specifications depend on each
operator’s billing system
Subscriber ID transmission
Hashed subscriber ID from the operator’s portal to the CP
transmission on each content access
M
The ID generation algorithm
should be determined by each
operator and has to be secret
Number of characters per email
Number of characters (byte) per e-mail
M
To be defined by operators (e.g.
500 byte, 1K byte, 10K byte)
Character code set supported
Character code set supported by browser and used to develop content
M
To be defined by operators
User Agent
Browser specifications to be notified
M
HTTP 1.1
i-mode button
Dedicated button
O
Hard or soft key
Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
Status
MC SS05
Requirement
10.70
i-mode Beispiele I
Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
MC SS05
10.71
i-mode Beispiele II
Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
MC SS05
10.72
i-mode Beispiele III
Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
MC SS05
10.73
WAP 2.0 (Juli 2001)
Neu für Entwickler
XHTML
TCP mit „Wireless Profile“
HTTP
Neue Anwendungen
Farbgrafik
Animation
Laden großer Dateien
Ortsabhängige Dienste
Synchronisation mit PIMs
Pop-up/kontextsensitive Menüs
Ziel: Integration von WWW, Internet, WAP, i-mode
Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
MC SS05
10.74
Externe
Dienste EFI
KryptoBibliotheken
WAE/WTA User Agent
(WML, XHTML)
Push
Provisioning
Authentifizierung
Service
Lookup
Identifikation
PKI
Gesicherter
Transport
Gesicherte
Träger
Push
OTA
Cookies
Synchronisation
Hypermedia Transfer
(WTP+WSP, HTTP)
Verbindungen
(TCP mit
wireless profile)
Datagramme
(WDP, UDP)
IPv4
CSD
IPv6
MMS
Nachrichten
Streaming
Transport
Navigation
Discovery
Capability Negotiation
USSD
SMS
GUTS
FLEX
Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
...
MPAK
MC SS05
...
10.75
Protokollrahmenwerk
Inhaltsformate
Sitzung
Multimedia Messaging
(Email)
Transfer
Sicherheitsdienste
Träger
Dienstelokalisierung
Anwendungsrahmenwerk
WAP 2.0 Architektur
WAP 2.0 Protokollstapel
WAP-Gerät
WAE
WSP
WTP
WTLS
WDP
Träger
WAP-Gateway
WSP
WTP
WTLS
WDP
Träger
Web-Server
WAE
HTTP
HTTP
TLS
TCP
IP
TLS
TCP
IP
WAP-Gerät
WAE
HTTP
TCP‘
IP
WAP 1.x Server/Gateway/Client
WAP-Gerät
WAE
HTTP
TLS
TCP‘
IP
WAP-Proxy
TCP‘
IP
TCP
IP
Web-Server
WAE
HTTP
TLS
TCP
IP
WAP-Proxy
HTTP
TCP‘
IP
HTTP
TCP
IP
Web-Server
WAE
HTTP
TCP
IP
WAP HTTP Proxy mit angepasstem TCP
WAP-Gerät
WAE
HTTP
TCP‘
IP
WAP Proxy mit TLS-Tunneling
Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
IP-Router
IP
IP
WAP Direkter Zugriff
MC SS05
10.76
Web-Server
WAE
HTTP
TCP
IP
Java 2 Platform Micro Edition
„Java-Boom erwartet“ (?)
Desktop-Bereich: über 90% Standard-PC-Architektur, Intel-x86-kompatibel,
meist MS-Windows-Systeme
Was soll hier Plattformunabhängigkeit helfen?
ABER: Heterogene, „kleine“ Geräte
Internet Appliances, Mobilfunktelefone, eingebettete Steuerungen,
Autoradios, ...
Aus technischer Notwendigkeit (Temperatur, Platz, Leistungsaufnahme, ...)
und Kostengründen unterschiedliche Hardware benötigt
J2ME
Bereitstellung einer einheitlichen Plattform
Teilweise eingeschränkter Funktionsumfang im Vergleich zu StandardJava-Plattform
Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
MC SS05
10.77
Anwendungen von J2ME
Beispiel Mobiltelefone
NTT DoCoMo führt ippli ein
Anwendungen auf PDA, Handy, ...
Laden von Spielen, Multimedia-Anwendungen,
Verschlüsselung, Systemaktualisierungen
Zusatzfunktionen gegen Geld auf Knopfdruck
laden
Eingebettete Steuerungen
Hausgeräte, Fahrzeuge,
Überwachungssysteme, Gerätesteuerungen
Vorrangig Systemaktualisierung
Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
MC SS05
10.78
Zusammenfassung J2ME
Idee geht über WAP 1.x oder i-mode hinaus
Vollständige Anwendungen auf Mobiltelefonen,
nicht nur Browser
Auch Systemaktualisierungen, Ende-zu-EndeVerschlüsselung
Plattformunabhängigkeit durch Virtualisierung
Solange bestimmte Schnittstellen eingehalten
werden
Nicht bei Hardware-spezifischen Funktionen
Eingeschränkte Funktionalität im Vergleich zu JVM
Übergangslösung, bis auch eingebettete
Systeme/Mobiltelefone etc. gleiche
Leistungsfähigkeit wie heutige Desktopsysteme
besitzen
Prof. Dr.-Ing. Jochen Schiller, http://www.jochenschiller.de/
MC SS05
10.81