Presentation on WAP
Keerti Sharma
August 2002
Agenda
What is WAP ? Limitations of Internet for wireless applications WAP Architecture / protocol stack WAP Components / WML WAP brings Internet to hand-held devices Conclusion
August 2002
What is WAP ?
WAP The Wireless Application Protocol
Makes it possible to access the Internet via wireless devices such as mobile phones, PDAs etc. Set of rules governing transmission/reception of data by wireless devices (e.g. mobile phones)
August 2002
Limitations of Internet for Wireless Applications
Traditional Internet applications cannot run on mobile devices because of the following limitations:
Low bandwidth network High Latency network Limited connection stability Small display size Limited input facility Limited memory Limited processing power
August 2002
Limitations of Internet (contd)
Low bandwidth
Size of an HTML page, including graphics Download time (56Kbps modem) Bandwidth of wireless network Download time for data on one page 20 KB 3s 9.6Kbps 17 s
High latency
At the expiry of retransmission timer value, the TCP layer resends the packet of data An average latency in a wireless network is around s but can be as high as 10s This can cause a lot of retransmission causing severe congestion
August 2002
Limitations of Internet (contd)
Limited connection stability Small display size Limited input facility Limited memory Limited processing power
August 2002
WAP Architecture/Protocol Stack
August 2002
WAP Architecture (contd)
.
Client
WML
WAP Gateway
WML Encoder
Web Server
CGI Scripts etc.
WMLScript WTAI
WSP/WTP
WMLScript Compiler Protocol Adapters
HTTP
Content
Etc.
August 2002
WML Decks with WML-Script
WAP Architecture (contd)
.
Client
WML WMLScript WTAI Etc.
WAP Application Server
WML Encoder WMLScript Compiler Application Logic
WML Decks with WML-Script
WSP/WTP
Protocol Adapters
Content
August 2002
WAP Architecture (contd)
WAE - holds the tools that wireless Internet content
developers use. WSP - determines whether a session between the device and the network will be connection-oriented or connectionless. WTP - acts like a traffic cop, keeping the data flowing in a logical and smooth manner. It also determines how to classify each transaction request:
Reliable two way (WTP/C) Reliable one way (WTP/T) Unreliable one way (WTP/D)
WTLS - provides many of the same security features
August 2002
found in the Transport Layer Security (TLS) part of TCP/IP. WDP - makes it easy to adapt the transport layer to a variety of bearers because all that needs to change is the information maintained at this level.
WAP Architecture (contd)
.
August 2002
WAP Architecture (contd)
In a real WAP solution, the main components include:
WAP Device Bearer WAP Gateway Content Content Server
August 2002
WAP Components (contd)
WAP Gateway
Encoder: converts WML to binarized WML Adaptor: provides additional information through HTTP header
Translate HTTP requests to WSP. Convert between SSL and WTLS Convert transport protocols (TCP and WDP)
August 2002
WAP Components (contd)
WML (Wireless Markup Language)
An XML-based markup language that describes how WAP content is presented on a wireless terminal
Differs from HTML in the following
WML was specifically designed for wireless terminals with a target screen that is only a few lines long and about an inch wide. WML is case sensitive, and all tags and attributes should be in lowercase. Unlike HTML, WML is unforgiving of incorrectly nested tags. WML doesn't assume that a keyboard or a mouse is available for user input.
Based on these differences, WML provides a smaller, telephonyaware set of tags that make it more appropriate than HTML for handheld wireless terminals.
August 2002
WAP Components (contd)
WML Contd
Card metaphor
User interactions are split into cards Navigation occurs between cards
Explicit inter-card navigation model
Hyperlinks History
State management and variables
Reduce network traffic Results in better caching
August 2002
Example of WML
Navigation
Variables
Input Elements
August 2002
<WML> <CARD> <DO TYPE=ACCEPT> <GO URL=#eCard/> </DO Welcome! </CARD> <CARD NAME=eCard> <DO TYPE=ACCEPT> <GO URL=/submit?N=$(N)&S=$(S)/> </DO> Enter name: <INPUT KEY=N/> Choose speed: <SELECT KEY=S> <OPTION VALUE=0>Fast</OPTION> <OPTION VALUE=1>Slow</OPTION> <SELECT> </CARD> </WML>
Card
A Deck of Cards
.
<WML> <CARD> <DO TYPE="ACCEPT" LABEL="Next"> <GO URL="#card2"/> </DO> Acme Inc.<BR/>Directory </CARD> <CARD NAME="card2"> <DO TYPE="ACCEPT"> <GO URL="?send=$type"/> </DO> Services <SELECT KEY="type"> <OPTION VALUE="em">Email</OPTION> <OPTION VALUE="ph">Phone</OPTION> <OPTION VALUE="fx">Fax</OPTION> </SELECT> </CARD> </WML> August 2002
Acme Inc. Directory _____________ Next
Services 1>Email 2 Phone ____________ OK
WAP brings Internet to Handheld Devices
WAP handles limited bandwidth
Minimizes traffic over wireless interface WSP layer, too, is binary encoded WTP is not only designed to minimize amount of data but also number of transactions
WAP handles high latency
WAE uses scripting to avoid round trip delays, e.g. by validating user input locally WTAI environment introduces a repository to hold services that should be started in response to an event in mobile network, e.g. incoming call.
August 2002
WAP brings (contd)
WAP handles less stable connections
The sessions supported by WSP are assumed to be long-lived. WTP layer has been kept very simple compared to TCP WTP supports selective retransmission of data
WAP handles small displays
WML structures its documents in Decks & Cards When an application is executed, user navigates through a series of cards
August 2002
WAP brings (contd)
WAP handles limited input facilities
The WML elements can be easily be implemented without much input required from the key-board Deck & Cards model requires minimal navigation between pages Soft buttons or user-definable keys are also supported by WML
WAP handles limited memory and CPU
Defining a light weight protocol stack Limited functionality provided by WML & WMLScript Binary encoding of WML & WMLScript
August 2002
Conclusion
WAP provides a microbrowser optimized for wireless devices
Requires minimal RAM, ROM, Display, CPU and keys
WAP Offers Bearer Independence
Allows Applications developed once to work across all networks Protects the Carriers investment in wireless data as networks evolve Enables Mobile Device Manufacturers to use common code across products
WAP Offers Device Independence
Allows applications developed once to work across devices from small handsets to powerful PDAs Promotes consistent user experience across all of a carriers handset offerings Encourages a wealth of applications for handset manufacturers
August 2002
Some WAP applications
Location-based services
Real-time traffic reporting Event/restaurant recommendation Highly customized ads Instant messaging-type buddy location
Financial services
Banking Bill-paying Stock trading Funds transfers
Enterprise solutions
Email access Database access A global intranet Information updates pushed to WAP devices
Travel services
Schedules and rescheduling Reservations
August 2002
Some known WAP Services
123Jump (http://www.123jump.com)
A selection of stock data & news, all via WAP
Ajaxo (http://www.ajaxo.com)
A WAP service for wireless stock trading from any WAP enabled device
2PL WorldWide Hotel Guide (http://wap.2pl.com)
A hotel guide, accessible in multiple languages via WAP enabled device
Traffic Maps (http://www.webraska.com)
A French service that monitors and shows latest traffic news via maps
August 2002
WAP demo
http://www.w3schools.com/wap/wap_demo.asp
August 2002
Next presentation will cover
WAP 2.0 Integrating JAVA with WAP Push Technology in WAP Using WAP with Bluetooth
August 2002
References 1.
http://www.wapforum.org http://www.mobileinfo.com/WAP/components.htm http://wap.sonyericsson.com/ http://www.nokia.com/phones/9110/app.html http://www.iec.org/online/tutorials/wap/ http://www.wapaka.com/wapaka/default.asp http://www.ericsson.com/about/publications/review/2001_04/files /2001043.pdf http://www.btob.barnesandnoble.com/offers/wapgap.asp?btob=Y http://www.w3schools.com/wap/wap_pages.asp
August 2002
References 2.
Professional WAP WAP A Beginners Guide by Dale Bulbrook Wireless Crash Course by Bedell Cracking the Code WAP, Bluetooth & 3G Programming WAP Integration by Vujosevic & Laberge WAP 2.0 Development by Tull
August 2002