Download - WAP Wireless Application Protocol CSI 668 Professor Meihua, Chen Presented by Min, Wu April 04,2001
WAPWireless Application
Protocol
CSI 668Professor Meihua, Chen
Presented by Min, WuApril 04,2001
Content Background WAP Architecture WAE WML & WMLScript & WTA WTP & WSP & WDP & WTLS Future of WAP
Background1 What’s WAP?(URL: www.wapforum.com ) • An open, global standard that empowers mobile
users with wireless devices to easily access and interact with information and services instantly.
• A standard created by wireless and Internet companies around the world to make accessing
the Internet as easy and convenient as using a
cellular phone
Background2 Why WAP?
Wireless networks and phones have specific needs and requirements
low bandwidth high latency connection availability
wireless devices have small screens, limited resource and a small, multifunction keypad.
WAP Architecture
Web Server
Content
CGIScripts
etc.
WM
L D
ecks
wit
h W
ML
-Scr
ipt
WAP Gateway
WML Encoder
WMLScriptCompiler
Protocol Adapters
Client
WML
WML-Script
WTAI
Etc.
HTTPWSP/WTP
What’s WAP Gateway? A software located on a server of a
mobile operator Handles requests from WAP phone. Responsible for compiling the WML
pages into bytecode (WMLC) which can be understood by a WAP device.
Takes care of the conversion required during WTLS/SSL sessions.
WAP Architecture(continued)
WAP Application Server
Content
Application
Logic
WM
L D
ecks
wit
h W
ML
-Scr
ipt
WML Encoder
WMLScriptCompiler
Protocol Adapters
Client
WML
WML-Script
WTAI
Etc.
WSP/WTP
About WAP Server A combined web server and WAP
gateway. Combining for security.
Gateway is a weak point.Accessing secure service(decrypts WTLS & encrypts SSL )When data returns(decrypts SSL & encrypts WTLS)
Why is HTTP/HTML not enough?
Wireless network
<HTML><HEAD><TITLE>NNN Interactive</TITLE><META HTTP-EQUIV="Refresh" CONTENT="1800, URL=/index.html"></HEAD><BODY BGCOLOR="#FFFFFF" BACKGROUND="/images/9607/bgbar5.gif" LINK="#0A3990" ALINK="#FF0000" VLINK="#FF0000" TEXT="000000" ONLOAD="if(parent.frames.length!=0)top.location='http://nnn.com';"> <A NAME="#top"></A><TABLE WIDTH=599 BORDER="0"><TR ALIGN=LEFT><TD WIDTH=117 VALIGN=TOP ALIGN=LEFT>
<HTML><HEAD><TITLE>NNN Interactive</TITLE><META HTTP-EQUIV="Refresh" CONTENT="1800, URL=/index.html">
Internet<WML><CARD><DO TYPE="ACCEPT"><GO URL="/submit?Name=$N"/></DO>Enter name:<INPUT TYPE="TEXT" KEY="N"/></CARD></WML>
010011010011110110010011011011011101010010011010
Content encoding
HTTP/HTML WAP
in order to use the bandwidth
as efficiently as possible
HTMLJavaScript
HTTP
TLS - SSL
TCP/IPUDP/IP
Wireless Application Protocol
Wireless ApplicationEnvironment (WAE)
Session Layer (WSP)
Security Layer (WTLS)
Transport Layer (WDP)
Other Services andApplications
Transaction Layer (WTP)
SMS USSD CSD IS-136 CDMA CDPD PDC-P Etc..
Bearers:
Sample Configurations of WAP Technology
WAP Benefits An Internet-based programming model WML - Wireless Markup Language A protocol stack that is optimized for the
wireless environment a “microbrowser” optimized for wireless devices Bearer Independence & Device Independence The endorsement of over 90% of all handset
manufacturers
WAE(Wirleless Application
environment)
Wireless Markup Language (WML) WMLScript Wireless Telephony Application
(WTA) Push
WML Structure DECKS and CARDS. When accessed from a mobile phone, all the
cards in a page are downloaded from the WAP server.
Navigation between the cards is done by the phone computer - inside the phone - without any extra access trips to the server.
The maximum size of a WML deck varies.Nokia 7110 is 1397 bytes (including images)Ericsson R320 is 3000 bytes(excluding images)
WML Header <?xml version="1.0"?>
<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" "http://www.wapforum.org/DTD/wml_1.1.xml">
WML Tags (1) The Complete WML DTD:
http://www.w3schools.com/wap/wml_dtd.asp
<wml> </wml> <card> </card> <p> </p>
WML Tags (2) <do> </do> <go/> <a> </a> <input/> <select></select>
WML Tags (3) <timer> <img alt=".. src=".. width="..
height="../> 80 pixels in width
50 pixels in height viewable on most devices.
WML Tags(5) Formatting
<em> </em> <strong> </strong>
<i> </i> <b> </b> <u> </u> <big> </big> <small> </small>
<br> Tables
WML Tags (4) <refresh/> <noop/> <prev/> WML Syntax Site:
http://fsinfo.cs.uni-sb.de/~abe/wml11.htmlhttp://www.ccwap.com/wap_express3.htm
What is WMLScript? WMLScript is the scripting language
used in WML pages language WMLScript is a light version of the
JavaScript WML scripts are not embedded in the
WML pages. WML pages only contains references to script URLs
What is WMLScript?(contd.)
WMLScript takes advantage of pre-compiled standard libraries.
WMLScript is compiled into byte code on the server before it is sent to the WAP browser
What is WMLScript used for? WMLScript is used to validate user input WMLScript is used to generate message
boxes and dialog boxes locally, to view error messages and confirmations faster
WMLScript is used to access facilities of the user agent
http://www.wmlscript.com/
WMLScript Standard Library
Lang - VM constants, general-purpose math functionality, etc.
String - string processing functions URL - URL processing Browser - WML browser interface Dialog - simple user interface Float - floating point functions
About WTA
WirelessTelephony Application
Tools for building telephony applications
Designed primarily for: Network Operators / Carriers Equipment Vendors
Network security and reliability a major consideration
WTA(Contd.) Some WAP browsers support WTAI
functionality, which means that it is possible for a user to click on a link to a phone number, and then the WAP session is terminated and the phone starts dialing the number. (via WTA server)
What’s new with WAP1.2? PUSH
push content from a server to one or many clients through a Push Proxy Gateway.Unlike an SMS, which also is pushed to the clients, a phone will only accept content from a 'trusted' source.
Push Increase the usability of WAP Make it more flexible than the
Internet Push can take advantage of
session headers Server knows when client can
accept a push
Wireless Transaction Service Access Point
Wireless Datagram Protocol
BearerService
D
BearerService
CBearerService
B
Transport Service Access Point (TSAP)
BearerService
A
Physical Layer Air Link Technology
Wireless Transaction Protocol
Wireless Session Protocol
Wireless Session Service Access Point
WCMP
WSP Overview Provides shared state between client
and server used to optimize content transfer
Provides semantics and mechanisms based on HTTP 1.1
Enhancements for WAE, wireless networks and “low-end” devices Compact encoding Push Efficient negotiation
Wireless Transaction Protocol Purpose:
Provide efficient request/reply based transport mechanism suitable for devices with limited resources over networks with low to medium bandwidth.
Provides reliable data transfer based on request/reply paradigm
Wireless Transaction Protocol
Advantages Operator Perspective - Load more
subscribers on the same network due to reduced bandwidth utilization.
Individual User - Performance is improved and cost is reduced.
uses the service primitives T-TRInvoke.req .cnf. .ind .res T-TRResult.req .cnf .ind .res T-Abort.req .ind
ClientClient ServerServer
Invoke
Ack
Result
Ack
T-TRInvoke.req
T-TRResult.ind
T-TRInvoke.cnf
T-TRResult.res
(PDUs)
T-TRInvoke.ind
T-TRResult.req
T-TRInvoke.res
T-TRResult.cnf
WDP Services and Protocols WDP (Datagram)
provides a connection-less, unreliable datagram service
WDP is replaced by UDP when used over an IP network layer.
WDP over IP is UDP/IP uses the Service Primitive
T-UnitData.req .ind
WTLS Internal Architecture
Record Protocol
Handshake Protocol
Alert Protocol
Application Protocol
Change Cipher Spec Protocol
Transaction Protocol (WTP)
Datagram Protocol (WDP/UDP)
Bearer networks
WTLS
Record protocol
WTLS Specifies a framework for secure
connections, using protocol elements from common Internet security protocols like SSL and TLS.
Provides security facilities for encryption, strong authentication, integrity, and key management
Provides end-to-end security between protocol end points
WTLS(contd.) Provides connection security for two
communicating applications Lightweight and efficient protocol with
respect to bandwidth, memory and processing power
Employs special adapted mechanisms for wireless usage
Long lived secure sessions Optimised handshake procedures Provides simple data reliability for operation
over datagram bearers
Bearers Bearers currently supported by
WAP• GSM SMS, USSD, C-S Data, GPRS• IS-136 R-Data, C-S Data, Packet• CDMA SMS, C-S Data• PDC C-S Data, Packet • PHS C-S Data• CDPD• iDEN SMS, C-S Data, Packet• FLEX and ReFLEX• DataTAC
Future and Problems Will WAP last long? GPRS(56kb/s – 115kb/s) GSM(9.6kb/s) What happens when HTTP and
High-speed transmissions become available to wireless devices?
WAP Site: www.wap.com
Thank You !Thank You !