wap ein referat von oliver dohndorf. gliederung drahtlose datenübertragung: schwierigkeiten und...
TRANSCRIPT
WAPEin Referat von
Oliver Dohndorf
Gliederung
• Drahtlose Datenübertragung: Schwierigkeiten und
Lösungsansätze
• WAP 1.x
• WML
• WAP 2.0
• XHTML-MP
• Konkrete Projekte, Ausblick
Was ist „wireless“?
Problem: Man wollte das Internet auch auf Mobiltelefonen verfügbar machen!
Welche Probleme gibt es?
Durch den Client bestimmte Probleme:
• Eingeschränkte Verarbeitungsleistung und geringer Speicher
• Kurzlebige Batterien und geringe Energiezufuhr
• Kleine Displays mit geringer Auflösung
• Schlechte Eingabemöglichkeiten
Welche Probleme gibt es?
Durch die Datenübertragung bestimmte Probleme:
• Häufig instabile Verbindungen
• Eingeschränkte Bandbreite
• Hohe Warte- und Verzögerungszeit
• Hohe Verbindungskosten
Lösungsansätze
Können nicht die gleichen Protokolle und Datenformate wie im Internet verwendet werden? (HTTP, HTML, GIF, JPG…)
Vorteile:• Internetanbindung ohne Konvertierung• Sehr große Auswahl von Informationen
Nachteile:• Schlechte/unmögliche Darstellung wg. begrenzter Hardware• Zu umfangreiche Daten
Daten müssen speziell aufgearbeitet und den technischen Möglichkeiten und dem Kunden angepasst werden
Die Entstehung des WAP-Forums
1997 gründeten Motorola, Nokia, Ericsson und Unwired Planet das WAP-Forum
Ziel: Entwicklung und Pflege eines einzigen Standartprotokoll für mobile Anwendungen
Mitte 2000 bestand das Forum schon aus über 400 Mitgliedern
Ziele des WAP-Forums
• Internet Inhalte auf wireless Devices zu bringen
• Eine Protokollspezifikation zu entwickeln, die mit allen Netzwerktechnologien funktioniert
• Bestehende Technologien sollten soweit wie möglich verwendet werden
Elemente des WAP
• WAP: Wireless Aplication Protocol– Protokolle und Datenformate, welche den gesamten drahtlosen
Datenverkehr abwickeln
• WML: Wireless Markup Language– Basiert auf XML– Unterteilung in Decks– Eingeschränkter Funktionsumfang
• WMLScript:– Wichtigsten Unterschiede zu JavaScript
• Als Source- oder Bytecode interpretiert• Zusätzlicher Datentyp: „invalid“
WAP-Protocol Stack
Aus: Axelsson, Fredrik; Development of WAP Services
WAP-Protocol Stack
WAE: Anwendungsschicht; beinhaltet den Micro-Browser des Gerätes, WML, WMLScript, Telefondienste und eine Reihe von häufig genutzten Daten (wie Bilder, Telefonbücher und Kalender)
WAP-Protocol Stack
WSP: Sitzungsschicht; stellt eine HTTP-1.1-Funktion zusammen mit einer grundlegenden Verwaltung des Sitzungsstatus zur Verfügung
WAP-Protocol Stack
WTP: Transaktionsschicht; stellt Transportdienste und verwandte Technologien zur Verfügung
WAP-Protocol Stack
WTLS: Sicherheitsschicht; stellt Datensicherheit und Vertraulichkeit zur Verfügung, Authentifizierung
WAP-Protocol Stack
WDP: allgemeine Transportschicht
Wie funktioniert WAP?
Internet
WAP-Gerät
WAP-Server
Wie funktioniert WAP?
Internet
1. Der Benutzer fordert WAP Inhalte an
WAP-Gerät
WAP-Server
Wie funktioniert WAP?
Internet
1. Der Benutzer fordert WAP Inhalte an
2. Die Anforderung wird zur Verarbeitung an den WAP Server gesendet
WAP-Gerät
WAP-Server
Wie funktioniert WAP?
Internet
1. Der Benutzer fordert WAP Inhalte an
2. Die Anforderung wird zur Verarbeitung an den WAP Server gesendet
3. Der WAP Server sendet die angeforderten Daten zurück zum Gerät
WAP-Gerät
WAP-Server
Wie funktioniert WAP?
Internet
1. Der Benutzer fordert WAP Inhalte an
2. Die Anforderung wird zur Verarbeitung an den WAP Server gesendet
3. Der WAP Server sendet die angeforderten Daten zurück zum Gerät
4. Das WAP Gerät empfängt die Daten und zeigt sie anWAP-Gerät
WAP-Server
Ein WAP-Request
WSP Encoded Request (URL)HTTP Request (URL)HTTP Response (WML)WSP Encoded Response (WML)
Aus: WAP Forum; Technical white paper
Beispiel<?xml version="1.0" encoding="utf-8"?> <!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML
1.3//EN" "http://www.wapforum.org/DTD/wml13.dtd"> <wml> <template> <do type="prev"><prev/></do> </template> <card id="card1" title="Bundesligatabelle"> <do type="accept" label="Next"> <go href="#card2"/> </do> <p align="left"> 1. VfL Bochum 68P </p>
<p>2. B. München 63P</p><p>3. MGladbach 60P</p><p>4. Stuttgart 55P</p><p>5. Hamburg 50P</p> <p>6. Bremen 48P</p><p>7. Berlin 45P</p>
</card>
<card id="card2" title="2. Hälfte">
<p align="left">
13. Rostock 41P
</p>
<p>14. Wolfsburg 41P</p>
<p>15. Bielefeld 40P</p>
<p>16. Leverkusen 38P</p>
<p>17. Schalke 04 36P</p>
<p>18. Dortmund 18P</p>
</card>
</wml>
Beispiel<card id="card2" title="2. Hälfte">
<p align="left">
13. Rostock 41P
</p>
<p>14. Wolfsburg 41P</p>
<p>15. Bielefeld 40P</p>
<p>16. Leverkusen 38P</p>
<p>17. Schalke 04 36P</p>
<p>18. Dortmund 18P</p>
</card>
</wml>
<?xml version="1.0" encoding="utf-8"?> <!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML
1.3//EN" "http://www.wapforum.org/DTD/wml13.dtd"> <wml> <template> <do type="prev"><prev/></do> </template> <card id="card1" title="Bundesligatabelle"> <do type="accept" label="Next"> <go href="#card2"/> </do> <p align="left"> 1. VfL Bochum 68P </p>
<p>2. B. München 63P</p><p>3. MGladbach 60P</p><p>4. Stuttgart 55P</p><p>5. Hamburg 50P</p> <p>6. Bremen 48P</p><p>7. Berlin 45P</p>
</card>
Beispiel<?xml version="1.0" encoding="utf-8"?> <!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML
1.3//EN" "http://www.wapforum.org/DTD/wml13.dtd"> <wml> <template> <do type="prev"><prev/></do> </template> <card id="card1" title="Bundesligatabelle"> <do type="accept" label="Next"> <go href="#card2"/> </do> <p align="left"> 1. VfL Bochum 68P </p>
<p>2. B. München 63P</p><p>3. MGladbach 60P</p><p>4. Stuttgart 55P</p><p>5. Hamburg 50P</p> <p>6. Bremen 48P</p><p>7. Berlin 45P</p>
</card>
<card id="card2" title="2. Hälfte">
<p align="left">
13. Rostock 41P
</p>
<p>14. Wolfsburg 41P</p>
<p>15. Bielefeld 40P</p>
<p>16. Leverkusen 38P</p>
<p>17. Schalke 04 36P</p>
<p>18. Dortmund 18P</p>
</card>
</wml>
Einige weitere Tags
• <timer> Führt nach einer bestimmten Zeit der Inaktivität eine Aktion durch
• <input> Fordert den Benutzter zu einer Eingabe auf
• <select> Zeigt eine Liste mit Optionen zur Auswahl durch den Benutzer an– Diese Optionen werden per <option> festgelegt
• <img> zeigt Bilder im wbmp-Format an• <oneevent> Legt eine Aktion fest, die beim
Eintreten eines bestimmten Ereignisses erfolgen soll
Regeln für WML Programmierung
• Kurz fassen• Nicht zu lange Seiten• Wenig Bilder• Wenig Texteingabe• Anwendungen auf Benutzer abstimmen• Co-Design – WML und HTML
Man sollte es dem Benutzter so leicht wie möglich machen
Vereinfachungen
• pWAP– pWAP ist ein Dienst, mit dem man ein
eigenes Startportal einrichten kann– Die Einrichtung erfolgt über das Internet
• Neue User Interfaces– Beispiel: Sprachsteuerung
Neuentwicklung WAP 2.0
• Annäherung an das Internet– TCP, HTTP wird nun auch unterstützt– Existierende Internettechnologien können
nun auch genutzt werden
• Neue Highspeedtechnologien können genutzt werden (GPRS etc.)
• Prozessorbelastung wird minimiert
• Netzwerkressourcennutzung optimiert
Neuentwicklung WAP 2.0
• WML1 wird durch XHTML-MP ersetzt, eine r Untermenge von XHTML, welches HTML ersetzten soll
• Die neuen Technologien (GPRS) ermöglichen neue Anwendungen (z.B. streaming media)
• Die Endgeräte haben nun mehr Kapazitäten (bessere Prozessoren, größerer Bildschirm)
Das WAP-Forum arbeitet nun ganz eng mit dem W3C und der IETF zusammen
WAP 2.0 Protocol Stack
Aus: WAP Forum; WAP 2.0 technical white paper
WAP 2.0 Protocol Stack
Wireless Profiled HTTP (WP-HTTP): Bei WP-HTTP handelt es sich um eine speziell für die Bedürfnisse von WAP zugeschnittene Form von HTTP für die WAE. WP-HTTP ist HTTP/1.1-kompatibel. Die Interaktion zwischen WAP-Geräten und WAP-Proxy bzw. WAP-Server basiert auf HTTP-Request/Response-Transaktionen.
WAP 2.0 Protocol Stack
Wireless Profiled Transport Layer Security (WP-TLS): Dabei handelt es sich um einen WAP-spezifischen Ableger von TLS für die Durchführung sicherer Transaktionen. Diese Form von TLS unterstützt insbesondere Zertifikate, verschiedene Verschlüsselungsverfahren und das Resuming von Sessions.
WAP 2.0 Protocol Stack
Wireless Profiled TCP (WP-TCP): WP-TCP erlaubt den Aufbau verbindungsorientierter Dienste. Bei diesem TCP-Ableger handelt es sich ebenfalls um eine für den drahtlosen Einsatz spezialisierte Form, die sich mit Standard-TCP-Implementierungen verträgt. Spezifische Verbesserungen bringen zudem Performance-Gewinne.
WAP 2.0 Request
Aus: WAP Forum; WAP 2.0 technical white paper
WAP 2.0 Request
Aus: WAP Forum; WAP 2.0 technical white paper
Abwärtskompatibel?
Das Dual-Stack sorgt dafür, dass kommende WAP 2.0-Geräte auch WAP 1.x sprechen. Allerdings handelt es sich dabei um eine optionale Komponente.
Die neuen Geräte können zudem auch WML1 Inhalte lesen. Dazu werden die Inhalte mittels XSLT Transformation in WML2 umgewandelt
Aus: WAP Forum; WAP 2.0 technical white paper
XHTML-MP Beispiel<?xml version="1.0" encoding="utf-8"?><!DOCTYPE html PUBLIC "-//WAPFORUM//DTD
XHTML Mobile 1.0//EN"
"http://www.wapforum.org/DTD/xhtml-mobile10.dtd" >
<html xmlns="http://www.w3.org/1999/xhtml">
<head> <title>Bundesligatabelle</title> <link rel="stylesheet"
href="http://192.168.0.24/style.css" type="text/css"/>
</head>
<body> <h1> 1. Hälfte </h1> <p>
1. VfL Bochum 68P<br/> 2. B. München 63P<br/>
3. MGladbach 60P<br/><br/>
</p><p><a href="http://192.168.0.24/test.xhtml">Logo Spitzenreiter</a></p></body>
</html>
XHTML-MP Beispiel<?xml version="1.0" encoding="utf-8"?><!DOCTYPE html PUBLIC "-//WAPFORUM//DTD XHTML
Mobile 1.0//EN" "http://www.wapforum.org/DTD/xhtml-
mobile10.dtd" >
<html xmlns="http://www.w3.org/1999/xhtml"> <head> <title>Bundesligatabelle</title> <link rel="stylesheet"
href="http://192.168.0.24/style.css" type="text/css"/>
</head>
<body> <h1> 1. Hälfte </h1> <p>
1. VfL Bochum 68P<br/> 2. B. München 63P<br/>
3. MGladbach 60P<br/><br/>
</p><p><a href="http://192.168.0.24/test.xhtml">Logo Spitzenreiter</a></p></body>
</html>
XHTML-MP Beispiel
<?xml version="1.0" encoding="utf-8"?><!DOCTYPE html PUBLIC
"-//WAPFORUM//DTD XHTML Mobile 1.0//EN"
"http://www.wapforum.org/DTD/xhtml-mobile10.dtd" >
<html xmlns="http://www.w3.org/1999/xhtml">
<head> <title>2. Hälfte</title> <link rel="stylesheet"
href="style.css" type="text/css"/> </head> <body>
<p><img src="http://192.168.0.24/vfllogo.gif"></img></p>
</body></html>
CSS Beispiel
caption { font-weight:bold ; font-style:italic ; font-size:small }
ol { list-style-type:upper-roman ; list-style-position:inside }
ul { list-style-type:square }li { list-style-position:inherit }td,th { border-width:1px ;
border-color:black ; border-style:solid ; text-align:center }
h1 { color:red }p {color:blue}link { text-decoration:underline }
.b { font-weight:bold }
.u { text-decoration:underline }
.big { font-size:larger }
.i { font-style:italic }
.small { font-size:smaller }
Entwicklungswerkzeuge
• WAP Mobile Internet Toolkit von Nokia
• WapIDE SDK von Ericcson
• UP.Simulator von Phone.com
Neuheiten
• WAP-Push– Daten werden ohne Anfrage versendet (Nachrichten,
Verkehrswarnungen etc.)• User agent profile
– Informationen über den Client und den Benutzer werden mitversendet, dadurch können Inhalte optimiert werden
• MMS– Weiterentwicklung von SMS
• External Functionality Interface– Externe Interfaces (Smart cards, digitale Kameras
etc.)
Konkrete Anwendungen/Projekte
• M-Commerce– Buchbestellung– GetThatSong
• Torbit– Webbox zur Konvertierung von Fax- und E-
mail-Dokumenten in WML
• Fahrplandienste
• Informationsdienste
Zukunft
Um mobile Dienste auch in Zukunft attraktiv zu machen setzt die Forschung auf folgende Gebiete:
• Adaptivität• Energie: Auf Hard- und Softwareseite• Payment• Rekonfigurierbarkeit• P2P• User Interface• Gesellschaftliche Nutzerakzeptanz
ENDE