Vous êtes sur la page 1sur 51

WAP & WML Digest

Manish

Manish
Roadmap
 Motivation
 WAP History
 Introduction to WAP
 WAP protocol stack
 Stack Components
 WML
 Future of WAP
 Related Technologies

Manish
Differing Views on Wireless Messaging
 Just a “scaled down version”
 IP could be modified (Mobile IP)

 Retain web technologies

 Fundamentally Different
 Low processing and batter power

 Only a few lines of display

 “Not always on”

 WAP follows this school of thought

Manish
Motivation

 Examples:
 Delays with Interactive Voice Response (IVR)

 1-simple device rather than n-devices (palmtop,

laptop…)
 SMS: billions of messages per month

 Mobile camera/printer example

 Virtual cash – coke machine example

 Flight Delay example

Manish
Origin & Inspirations
 Phone.com’s HDML browser and UP.Link server
 Nokia’s smart messaging
 The Internet : Browser as thin client!
 Carriers needed Value Added Services

Manish
How to think of WAP
 Not Wireless Web
 Value added Service to cellular phones

Manish
WAP Goals
 Force a single new box upon carriers (WAP Gateway)
 Minimal initial investment

 Minimal disruption to infrastructure

 Do not force IP on carriers (Own protocol suite)


 Provide security (“Walled Garden” Approach, WTLS)
 Integrate telephony support (WTA)
 Make content suitable for one handed devices (WML…)

Manish
WAP Introduction

Manish
WAP Forum
 Established 1997
 Aim is ‘to develop the de-facto world standard for wireless
information and telephony services on digital mobile
phones and other wireless terminals.’
 Comprises of
 Network Operators, Network Infrastructure suppliers

 Mobile Device Suppliers, IT Companies

 Content Developers

Manish
What is WAP
 WAP is both an architecture and set of specifications that
provide:
 Wireless Application Environment (WAE)

 Protocol stack for WAE

 Transport Layer security

 Additional Specifications for Telephony, PUSH etc..

Manish
Abstract Network Architecture
 WAP Abstract Network Architecture resembles Internet
Browser Request-Response model

Manish
Questions ?

Manish
WAP Stack
 Based on the Internet Protocol Stack

Manish
Application Environment (WAE)
 W hat is W AE ?
 Top of the W AP stack exposed to user and developers

 Components:

Manish
WAP vs Internet
 Mapping Internet protocols onto W AP

Manish
WAP: Deployment Models
 WAP WSP Server
 WAP + Web Server

 WAP Proxy
 WAP + HTTP Client

Manish
Deployment Model: WSP Server

Manish
Deployment Model: WSP Proxy/Gateway

Manish
Abstract View

Manish
Questions ?

Manish
WAP Protocol Stack: Components

Manish
WDP
 Web: UDP
 Replaced by UDP by carriers running Mobile IP
 Goals: To accommodate airlink addresses
 Addressing by port numbers
 Ports allocated in dynamic, private port space
 Defines separate ports for secure connections
 Problem: Too many ports, Ports not registered

Manish
WDP Example: WDP on SMS

Manish
WTLS: Transport Layer Security
 Goals
 Reliable data transfer

 Support for certificates

 Comparison
 Web: Security at 2 levels: IPSec and TLS

 WAP: only one level (single point of contact?)

Manish
WTLS
 Provides for compression and encryption
 No explicit connection setup/tear down (message oriented
and not stream oriented)
 Reliable data transfer
 Reduce 3-way handshake

Manish
WTLS
 Supports port number addressing
 Abort for outstanding requests
 User Acknowledgement or Stack acknowledgement
 Between client & proxy or WSP server
 Problem: Does not interoperate with TLS/SSL

Manish
Transactional Prococol: WTP
 Goals
 Efficient request-reply based transport mechanism

 Inspiration
 T/TCP (Transactional TCP)

 3-message models:
 Class 0: Unreliable invoke (no result) [ Current session ]

 Class 1: Reliable invoke (no result) [ PUSH ]

 Class2 : Reliable invoke with one confirmed result

 WTP Ack could include explicit user confirmation!

Manish
WTP
 Reliable data transfer
 No explicit connection setup
 Reduces 3-way handshake
 Supports:
 Retransmission, selective-retransmit,

segmentation/reassembly, port number addressing, flow


control
 Message oriented (not stream)
 Supports Abort

Manish
WTP Example

Manish
Session Protocol: WSP
 Equivalent to HTTP
 Enhancements to HTTP 1.1
 Compact encoding (WBXML)

 Support for PUSH

 Suspend and resume

 Asynchronous requests

Manish
WSP
 Enhancements to HTTP 1.1
 Connectionless service
 Capability negotiation
 Content-negotiation (content-type)
 Header copy (for maintaining state across requests)
 Multiple-transaction support (eg. file & image at same time?)

Manish
Application Environment: WAE
 Goals:
 Network-neutral application environment

 Narrow-band suited

 Device independence

 Leverage on Internet technologies

 Enable telephony aware apps

Manish
WAE

Application Components

Manish
WAE – Content Formats
 WML & WMLScript
 WBXML
 Images: WBMP
 Business Cards: IMC vCard
 Calendar: IMC vCalendar

Manish
Questions ?

Manish
Binary XML: WBXML
 Similar to zip/deflate in http
 Tokenized XML
 Zip form has structure

 Allows skipping fields, random access etc..

 Allows for 31 tags per code page

Manish
Markup Language: WML
 Web equivalent: XML/HTML
 Tag-based browsing language
 Screen management

 Data input

 Hyperlinks

 XML based language


 Inherits from HDML (Phone.com) and HTML

Manish
WML
 WML Cards
 User interactions are split into cards

 Navigation between cards possible

 Card Navigation
 Hyperlinks, UI event handling

 History

 State Management
 Shared Variables

 Reduced network traffic

Manish
WML
 Syntax
 <p> paragraph </p>

 Linebreak <br/>

 WML Tasks e.g. <go>, <prev>, <refresh>, …

 Tokenized WML sent to client


 Implies content provider does not know the size 

 About 1.5k maximum binary size

Manish
WML Deck
 Deck = file.wml
 Must contain atleast one card
 Eg.
<?XML verstion=1.0?>
<! doctype wml PUBLIC …>
<wml>
<card>

</card>

</wml>
Manish
WML Example

Manish
WAE: WMLSciprt
 Overview:
 Scripting language like Java-script (ECMAScript)

 Integrated with WML

 Reduces overall network traffic

 Client side logic

Manish
WAE - WMLScript
 In Practice:
 Bytecode-based virtual machine

 ROM-able

 Better use of bandwidth and terminal memory

 Provides loops etc., shares variables with decks

Manish
Questions ?

Manish
PUSH Framework
 Goals :
 Reduce penalty of polling

 PUSH Framework provides:


 Special control mechanisms for lifetime and removal
 Similar to expires etc..
 Security framework

 Information Flow:
 PushInitiator -> Push Proxy Gateway -> WAP Client

Manish
WAE: Telephony Services (WTA)
 Telephony sepcific extensions
 Call control, logging etc.

 WTA Browser:
 Extensions added to WML/WMLScript browser

 e.g. “wtai://” url => Call placed

 Currently Data session terminates 

 Cannot resume data session

Manish
WAE: User Agent Profile (UAPROF)
 Permits devices to advertise capabilities to WAP proxies or
WSP servers and Application servers
 Developed jointly with W3C

Manish
Related Technologies
 RealNames : keyword based navigation
 voiceXML
 Palm.net
 Avantgo Model
 iMode (based on cHTML)
 SMS, (EMS, MMS)
 Mobile Platforms: Symbian, CE, Palm

Manish
WAP Future
 WAP 2.0 expected this year
 Move to XHTML basic

 Unclear whether WML will be discarded

 Short term solution until better processing capabilities


 Convergence with iMode expected
 Interaction with voiceXML
 Long term: Multi-modal support expected (bluetooth, wap
etc.)

Manish
Questions ?

Manish
Related Technologies: SMS
 Simple Messaging System
 Originally developed with GSM
 Transmitted on Signalling Channel
 Limit on number of characters ( 160? )
 MAP protocol limitation

 Cheap
 Used for
 Messaging

 SIM activation/configuration

 Dial tone download

Manish

Vous aimerez peut-être aussi