WWiirreelleessss AApppplliiccaattiioonn PPrroottooccooll 
OOvveerrvviieeww 
© 1999 NOKIA, ©1999 Wireless Application Forum, Ltd. WAPXML-99.ppt / 1 / 22-September 1999 
Jari Alvinen 
Nokia
BBuussiinneessss cchhaalllleennggee 
• There must be one global wireless network 
language and protocol stack 
• Internet developers will only write to one global wireless Internet. 
• carriers require multiple sources for compatible handsets. 
• handset vendors require common standards for economies of scale. 
© 1999 NOKIA, ©1999 Wireless Application Forum, Ltd. WAPXML-99.ppt / 2 / 22-September 1999
WWhhyy iiss IInntteerrnneett nnoott eennoouugghh?? 
…… oorr aaccttuuaallllyy ...... ""ttoooo mmuucchh"" ...... 
• Big pipe - small pipe syndrome 
HTTP/HTML 
Internet 
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 
Intera 
ctive< 
/TITLE 
> 
<META 
HTTP-EQUIV= 
"Refre 
sh" 
CONTEN 
T="180 
0, 
URL=/i 
ndex.h 
tml"> 
© 1999 NOKIA, ©1999 Wireless Application Forum, Ltd. WAPXML-99.ppt / 3 / 22-September 1999 
<WML> 
<CARD> 
<DO TYPE="ACCEPT"> 
<GO URL="/submit?Name=$N"/> 
</DO> 
Enter name: 
<INPUT TYPE="TEXT" KEY="N"/> 
</CARD> 
</WML> 
010011 
010011 
110110 
010011 
011011 
011101 
010010 
011010 
WAP 
Content encoding
WWhhyy iiss IInntteerrnneett nnoott eennoouugghh?? 
…… oorr aaccttuuaallllyy …… ""ttoooo mmuucchh"" ...... 
© 1999 NOKIA, ©1999 Wireless Application Forum, Ltd. WAPXML-99.ppt / 4 / 22-September 1999 
? 
• Big screen - small screen syndrome
WWhhyy WWAAPP?? 
• WAP is an open technology based on Internet technologies 
• Allows competition - lower cost 
• WAP is backed by major vendors 
• Nokia, Ericsson, Motorola, Microsoft, IBM 
• Future proof 
• WAP Forum is open for all 
• WAP is not “take it or leave it” 
• Over one hundred companies have joined the WAP Forum 
• WAP supports several wireless systems 
• GSM, IS-136, CDMA, PDC etc. 
• WAP has a layered architecture 
• The same application can be used via several systems 
© 1999 NOKIA, ©1999 Wireless Application Forum, Ltd. WAPXML-99.ppt / 5 / 22-September 1999
WWAAPP FFoorruumm mmeemmbbeerrss 
© 1999 NOKIA, ©1999 Wireless Application Forum, Ltd. WAPXML-99.ppt / 6 / 22-September 1999 
CCL
WWhhaatt ccaann bbee ddoonnee wwiitthh WWAAPP?? 
• Information services 
• Similar to web browsing 
• Small downloadable programs 
• WAP script language is based on JavaScript™ 
• Telephony functionality combined with browser 
• Call the airline when your flight is delayed 
• Push 
• Server initated content push 
© 1999 NOKIA, ©1999 Wireless Application Forum, Ltd. WAPXML-99.ppt / 7 / 22-September 1999
WWhhaatt iiss ddeeffiinneedd iinn WWAAPP?? 
• Layered telecommunication stack including 
• Datagrams and Transactions 
• Security 
• Session 
• Micro browser 
• Concept that is similar to the Internet browsing 
• XML based markup language ( WML ) 
• Scripting ( WMLS ) 
• WTA / WTAI 
• Access to telephone functionality 
• Content formats e.g. 
• Service Indication 
• Wireless Bitmap ( WBMP ) 
© 1999 NOKIA, ©1999 Wireless Application Forum, Ltd. WAPXML-99.ppt / 8 / 22-September 1999
WWAAPP AArrcchhiitteeccttuurree 
© 1999 NOKIA, ©1999 Wireless Application Forum, Ltd. WAPXML-99.ppt / 9 / 22-September 1999 
Web Server 
CGI 
Scripts 
etc. 
Content 
WML Decks 
with WML-Script 
WAP Gateway 
WML Encoder 
WMLScript 
Compiler 
Protocol Adapters 
Client 
WML 
WML-Script 
WTAI 
Etc. 
WSP/WTP HTTP
Internet 
IInntteerrnneett aanndd WWAAPP aarrcchhiitteeccttuurree 
HTML 
JavaScript™ 
HTTP 
TLS - SSL 
TCP/IP 
UDP/IP 
Wireless Application Protocol 
Wireless Application 
Environment (WAE) 
Wireless Transport Layer Security (WTLS) 
Bearers: 
Wireless Session Layer (WSP) 
Wireless Datagram Protocol (WDP) 
SMS USSD CSD R-Data Packet UDP PDC-P Etc... 
© 1999 NOKIA, ©1999 Wireless Application Forum, Ltd. WAPXML-99.ppt / 10 / 22-September 1999 
Other Services and 
Applications 
Wireless Transaction Protocol (WTP)
WWAAPP && SSttaannddaarrddss 
• Submit specifications for adoption by appropriate industry 
and standards bodies 
• Good relationships with standards bodies 
• Several Liaisons with ETSI 
• ETSI / WAP compliance profile for GSM and UMTS. 
• CTIA official Liaison Officer to the WAP Forum 
• WAP is actively working with the W3C and IETF 
© 1999 NOKIA, ©1999 Wireless Application Forum, Ltd. WAPXML-99.ppt / 11 / 22-September 1999
WWAAPP PPrroottooccooll SSttaacckk 
Wireless Session Service Access Point 
Wireless Session Protocol 
Wireless Transaction Service Access Point 
Wireless Transaction Protocol 
Transport Service Access Point (TSAP) 
Wireless Datagram Protocol 
WCMP 
© 1999 NOKIA, ©1999 Wireless Application Forum, Ltd. WAPXML-99.ppt / 12 / 22-September 1999 
Bearer 
Service 
D 
Bearer 
Service 
C 
Bearer 
Service 
B 
Bearer 
Service 
A 
Physical Layer Air Link Technology 
• Developed by 
• Wireless Protocols Group 
(WPG) 
• A WAP technical working 
group.
WWAAPP PPrroottooccooll SSttaacckk -- WWSSPP 
• 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 
• Enhancements beyond HTTP 
• Binary header encoding 
• Confirmed and non-confirmed data push 
• Capability negotiation 
• Suspend and resume 
• Connectionless service 
© 1999 NOKIA, ©1999 Wireless Application Forum, Ltd. WAPXML-99.ppt / 13 / 22-September 1999
WWAAPP PPrroottooccooll SSttaacckk -- WWSSPP 
• Binary header encoding 
• Compact binary encoding of headers, content type identifiers 
and other well-known textual or structured values 
• Reduces the data actually sent over the network 
• Capabilities 
• Message Size, client and server 
• Protocol Options: Confirmed Push Facility, Push Facility, 
Session Suspend Facility, Acknowledgement headers 
• Maximum Outstanding Requests 
• Extended Methods 
• Header Code Pages 
• Suspend & Resume 
• Allows the release of underlying bearer resources 
© 1999 NOKIA, ©1999 Wireless Application Forum, Ltd. WAPXML-99.ppt / 14 / 22-September 1999
WWAAPP PPrroottooccooll SSttaacckk -- WWSSPP 
• Connection & Connectionless service 
• Connection-mode 
• Long-lived communication 
• Benefits of the session state 
• Reliability 
• Connectionless 
• Stateless applications 
• No session creation overhead 
• No reliability overhead 
© 1999 NOKIA, ©1999 Wireless Application Forum, Ltd. WAPXML-99.ppt / 15 / 22-September 1999
WWAAPP PPrroottooccooll SSttaacckk -- WWTTPP 
• Reliable data transfer based on request/reply paradigm 
• No explicit connection setup or tear down 
• Data carried in first packet of protocol exchange 
• Seeks to reduce 3-way handshake on initial request 
• Supports 
• retransmission of lost packets 
• selective-retransmission 
• segmentation / re-assembly 
• port number addressing (UDP ports numbers) 
• flow control 
• abort function for outstanding requests 
• concatenation of PDUs 
• Message oriented (not stream) 
© 1999 NOKIA, ©1999 Wireless Application Forum, Ltd. WAPXML-99.ppt / 16 / 22-September 1999
WWAAPP PPrroottooccooll SSttaacckk -- WWTTPP 
• WTP Protocol Exchange 
CClliieenntt SSeerrvveerr 
(PDUs) 
Invoke 
Ack 
Result 
Ack 
T-TRInvoke.req 
T-TRInvoke.cnf 
T-TRResult.ind 
T-TRResult.res 
© 1999 NOKIA, ©1999 Wireless Application Forum, Ltd. WAPXML-99.ppt / 17 / 22-September 1999 
T-TRInvoke.ind 
T-TRInvoke.res 
T-TRResult.req 
T-TRResult.cnf
WWAAPP PPrroottooccooll SSttaacckk -- WWDDPP 
• WDP provides a connection-less, unreliable datagram 
service 
• WDP is adapted to each particular wireless network to 
provide the generic datagram transport. 
• The basic datagram service is fundamental to all wireless 
networks and makes it possible to utilize WAP everywhere 
• Replaced by UDP when used over an IP network layer. 
• WDP over IP is UDP/IP 
• Uses the Service Primitive 
• T-UnitData.req .ind 
© 1999 NOKIA, ©1999 Wireless Application Forum, Ltd. WAPXML-99.ppt / 18 / 22-September 1999
WAP Protocol SSttaacckk -- BBeeaarreerr ssuuppppoorrtt 
• 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 
© 1999 NOKIA, ©1999 Wireless Application Forum, Ltd. WAPXML-99.ppt / 19 / 22-September 1999
WAP PPrroottooccooll SSttaacckk -- BBeeaarreerr EExxaammppllee 
• WAP over GSM Circuit Switched 
Mobile 
WAE 
WSP 
IP 
PPP 
RAS - Remote Access Server 
IWF - InterWorking Function 
PPP 
© 1999 NOKIA, ©1999 Wireless Application Forum, Ltd. WAPXML-99.ppt / 20 / 22-September 1999 
WAP 
Proxy/Server 
WAE Apps on 
Other Servers 
WSP 
IP 
Subnetwork 
CSD-RF 
IWF 
PSTN 
Circuit 
CSD-RF 
ISP/RAS 
IP 
PSTN Subnetwork 
Circuit 
WTP 
UDP 
WTP 
UDP
Sta WAP Protocol Stacckk -- BBeeaarreerr EExxaammppllee 
• WAP over GSM Short Message Service 
WAE 
WSP 
WTP 
WDP 
SMS 
SMS 
Subnetwork 
© 1999 NOKIA, ©1999 Wireless Application Forum, Ltd. WAPXML-99.ppt / 21 / 22-September 1999 
WAE Apps on 
other servers 
WSP 
WTP 
WDP 
WDP Tunnel 
Protocol 
WDP Tunnel 
Protocol 
Subnetwork 
SMSC 
WAP 
Mobile Proxy/Server 
under development
WWAAPP PPrroottooccooll SSttaacckk -- WWTTLLSS 
• Specifies a framework for secure connections, using 
protocol elements from common Internet security protocols 
like SSL and TLS. 
• Provides connection security for two communicating 
applications 
• Privacy (encryption) 
• Data integrity (MACs) 
• Authentication (public-key and symmetric) 
• 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 
© 1999 NOKIA, ©1999 Wireless Application Forum, Ltd. WAPXML-99.ppt / 22 / 22-September 1999
Wireless Application EEnnvviirroonnmmeenntt (( WWAAEE )) 
• WAP Application framework 
• Network-neutral application environment; 
• Suitable for narrowband wireless devices; 
• Follows the Internet/WWW programming model; 
• Ensures high degree of interoperability. 
• Leverages Internet standard technology 
• Device Independent 
• Network Independent 
• International Support 
• Developed by 
• Wireless Applications Group (WAG); 
• A WAP technical working group. 
© 1999 NOKIA, ©1999 Wireless Application Forum, Ltd. WAPXML-99.ppt / 23 / 22-September 1999
WWAAEE ""CCoommppoonneennttss"" 
• WML 
• Display language 
• WMLScript 
• Scripting language 
• WTA 
• Telephony services API and architecture 
• Content Formats 
• Data exchange 
• User Agent Profiling 
• Content customized for device 
• Push 
• Server-initiated content delivery 
© 1999 NOKIA, ©1999 Wireless Application Forum, Ltd. WAPXML-99.ppt / 24 / 22-September 1999
WWAAEE -- WWAAPP GGaatteewwaayy 
© 1999 NOKIA, ©1999 Wireless Application Forum, Ltd. WAPXML-99.ppt / 25 / 22-September 1999 
Web Server 
CGI 
Scripts 
etc. 
Content 
WML Decks 
with WML-Script 
WAP Gateway 
WML Encoder 
WMLScript 
Compiler 
Protocol Adapters 
Client 
WML 
WML-Script 
WTAI 
Etc. 
WSP/WTP HTTP
WWAAEE -- WWAAPP AApppplliiccaattiioonn SSeerrvveerr 
WAP Application Server 
© 1999 NOKIA, ©1999 Wireless Application Forum, Ltd. WAPXML-99.ppt / 26 / 22-September 1999 
Application 
Logic 
Content 
WML Decks 
with WML-Script 
WML Encoder 
WMLScript 
Compiler 
Protocol Adapters 
Client 
WML 
WML-Script 
WTAI 
Etc. 
WSP/WTP
WWAAEE -- WWMMLL 
• Wireless Markup Language (WML) is a Tag-based browsing 
language: 
• Screen management (text, images) 
• Data input (text, selection lists, etc.) 
• Hyperlinks & navigation support 
• W3C XML-based language 
© 1999 NOKIA, ©1999 Wireless Application Forum, Ltd. WAPXML-99.ppt / 27 / 22-September 1999
WWAAEE -- WWMMLL 
• Card metaphor 
• User interactions are split into cards 
• Navigation occurs between cards 
• Explicit inter-card navigation model 
• Hyperlinks 
• UI Event handling 
• History 
• State management and variables 
• Reduce network traffic 
• Results in better caching 
© 1999 NOKIA, ©1999 Wireless Application Forum, Ltd. WAPXML-99.ppt / 28 / 22-September 1999
WWAAEE -- WWMMLL 
Navigation Card 
Input 
Elements 
© 1999 NOKIA, ©1999 Wireless Application Forum, Ltd. WAPXML-99.ppt / 29 / 22-September 1999 
Deck 
Variables 
<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>
WWAAEE -- WWMMLL SSccrriipptt 
• Scripting language: 
• Procedural logic, loops, conditionals, etc. 
• Optimized for small-memory, small-cpu devices 
• Derived from JavaScript™ 
• Integrated with WML 
• Powerful extension mechanism 
• Reduces overall network traffic 
• Bytecode-based virtual machine 
• Stack-oriented design 
• Designed for simple, low-impact implementation 
• Compiler in network 
• Better network bandwidth use 
• Better use of terminal memory/cpu. 
© 1999 NOKIA, ©1999 Wireless Application Forum, Ltd. WAPXML-99.ppt / 30 / 22-September 1999
WWAAEE -- WWMMLL SSccrriipptt 
• Reduces network round-trips and enhance functionality. 
• Example usages 
• Field validation 
• Check for formatting, input ranges, etc. 
• Device extensions 
• Access device or vendor-specific API 
• Conditional logic 
• Download intelligence into the device 
© 1999 NOKIA, ©1999 Wireless Application Forum, Ltd. WAPXML-99.ppt / 31 / 22-September 1999
WWAAEE -- WWMMLL SSccrriipptt 
Functions 
WMLScript is very similar to JavaScriptÔ 
Variables 
Programming 
Constructs 
function currencyConvertor(currency, exchRate) 
{ 
return currency*exchangeRate; 
} 
function myDay(sunShines) { 
var myDay; 
if (sunShines) { 
myDay = “Good”; 
} else { 
myDay = “Not so good”; 
}; 
return myDay; 
} 
© 1999 NOKIA, ©1999 Wireless Application Forum, Ltd. WAPXML-99.ppt / 32 / 22-September 1999
WWAAEE -- WWTTAA 
• WTA Browser 
• Extensions added to standard WML/WMLScript browser 
• Exposes additional API (WTAI) 
• WTAI includes: 
• Call control 
• Network text messaging 
• Phone book interface 
• Indicator control 
• Event processing 
• WTAI available in WML & WMLScript 
© 1999 NOKIA, ©1999 Wireless Application Forum, Ltd. WAPXML-99.ppt / 33 / 22-September 1999
WWAAEE -- WWTTAA 
• Placing an outgoing call with WTAI 
WTAI Call 
Input Element 
<WML> 
<CARD> 
<DO TYPE=“ACCEPT”> 
<GO URL=“wtai:cc/mc;$(N)”/> 
</DO> 
Enter phone number: 
<INPUT TYPE=“TEXT” KEY=“N”/> 
</CARD> 
</WML> 
© 1999 NOKIA, ©1999 Wireless Application Forum, Ltd. WAPXML-99.ppt / 34 / 22-September 1999
WWAAEE -- WWTTAA 
• Placing an outgoing call with WTAI 
WTAI Call 
function checkNumber(N) { 
if (Lang.isInt(N)) 
WTAI.makeCall(N); 
else 
Dialog.alert(“Bad phone number”); 
} 
© 1999 NOKIA, ©1999 Wireless Application Forum, Ltd. WAPXML-99.ppt / 35 / 22-September 1999
WWAAEE -- CCoonntteenntt FFoorrmmaattss 
• Common interchange formats 
• Promoting interoperability 
• Formats: 
• Business cards: IMC vCard standard 
• Calendar: IMC vCalendar standard 
• Images: WBMP (Wireless BitMaP) 
• Compiled WML, WMLScript 
• Service Indication ( Proposed ) 
• Service Loading ( Proposed ) 
• Cache Operation ( Proposed ) 
© 1999 NOKIA, ©1999 Wireless Application Forum, Ltd. WAPXML-99.ppt / 36 / 22-September 1999
WWAAEE -- CCoonntteenntt FFoorrmmaattss 
• Binary format for size reduction 
• Bytecodes/tokens for common values and operators 
• Compressed headers 
• Data compression (e.g. images) 
• Example use of image 
Image Element 
<WML> 
<CARD> 
Hello World!<BR/> 
<IMG SRC=“/world.wbmp” 
ALT=“[Globe]” /> 
</CARD> 
</WML> 
© 1999 NOKIA, ©1999 Wireless Application Forum, Ltd. WAPXML-99.ppt / 37 / 22-September 1999
WWAAEE -- PPuusshh 
• Server initiated content push 
• Provides end-to-end solution 
• Easy for developers 
• XML based Push Access Protocol layered on top of HTTP 
• Helpful push specific content types 
• Service Indication 
• Service Loading 
• Underlying wireless network complexity hidden 
• Push Specifications are currently on Proposed status 
© 1999 NOKIA, ©1999 Wireless Application Forum, Ltd. WAPXML-99.ppt / 38 / 22-September 1999
WWAAEE -- PPuusshh FFrraammeewwoorrkk 
CLIENT PUSH PROXY 
GATEWAY 
© 1999 NOKIA, ©1999 Wireless Application Forum, Ltd. WAPXML-99.ppt / 39 / 22-September 1999 
PUSH 
INITIATOR 
PUSH ACCESS 
PROTOCOL 
OVER-THE-AIR 
PROTOCOL 
PPG SERVICES 
PUSH MESSAGE
WWAAEE -- UUsseerr AAggeenntt PPrrooffiillee (UUAAPPRROOFF) 
• Assist in content personalization, based upon: 
• Device characteristics, user preferences 
• Other profile information 
• Working with W3C on CC/PP 
• RDF-based content format 
• Describes “capability and profile” info 
• Efficient transport over wireless links, caching, etc. 
• UAProf specification is currently on Proposed status 
© 1999 NOKIA, ©1999 Wireless Application Forum, Ltd. WAPXML-99.ppt / 40 / 22-September 1999
QQuueessttiioonnss ?? 
© 1999 NOKIA, ©1999 Wireless Application Forum, Ltd. WAPXML-99.ppt / 41 / 22-September 1999
TThhaannkk yyoouu!! 
More information: 
www.wapforum.org 
© 1999 NOKIA, ©1999 Wireless Application Forum, Ltd. WAPXML-99.ppt / 42 / 22-September 1999

Wireless Application Protocol WAP by Alvinen

  • 1.
    WWiirreelleessss AApppplliiccaattiioonn PPrroottooccooll OOvveerrvviieeww © 1999 NOKIA, ©1999 Wireless Application Forum, Ltd. WAPXML-99.ppt / 1 / 22-September 1999 Jari Alvinen Nokia
  • 2.
    BBuussiinneessss cchhaalllleennggee •There must be one global wireless network language and protocol stack • Internet developers will only write to one global wireless Internet. • carriers require multiple sources for compatible handsets. • handset vendors require common standards for economies of scale. © 1999 NOKIA, ©1999 Wireless Application Forum, Ltd. WAPXML-99.ppt / 2 / 22-September 1999
  • 3.
    WWhhyy iiss IInntteerrnneettnnoott eennoouugghh?? …… oorr aaccttuuaallllyy ...... ""ttoooo mmuucchh"" ...... • Big pipe - small pipe syndrome HTTP/HTML Internet 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 Intera ctive< /TITLE > <META HTTP-EQUIV= "Refre sh" CONTEN T="180 0, URL=/i ndex.h tml"> © 1999 NOKIA, ©1999 Wireless Application Forum, Ltd. WAPXML-99.ppt / 3 / 22-September 1999 <WML> <CARD> <DO TYPE="ACCEPT"> <GO URL="/submit?Name=$N"/> </DO> Enter name: <INPUT TYPE="TEXT" KEY="N"/> </CARD> </WML> 010011 010011 110110 010011 011011 011101 010010 011010 WAP Content encoding
  • 4.
    WWhhyy iiss IInntteerrnneettnnoott eennoouugghh?? …… oorr aaccttuuaallllyy …… ""ttoooo mmuucchh"" ...... © 1999 NOKIA, ©1999 Wireless Application Forum, Ltd. WAPXML-99.ppt / 4 / 22-September 1999 ? • Big screen - small screen syndrome
  • 5.
    WWhhyy WWAAPP?? •WAP is an open technology based on Internet technologies • Allows competition - lower cost • WAP is backed by major vendors • Nokia, Ericsson, Motorola, Microsoft, IBM • Future proof • WAP Forum is open for all • WAP is not “take it or leave it” • Over one hundred companies have joined the WAP Forum • WAP supports several wireless systems • GSM, IS-136, CDMA, PDC etc. • WAP has a layered architecture • The same application can be used via several systems © 1999 NOKIA, ©1999 Wireless Application Forum, Ltd. WAPXML-99.ppt / 5 / 22-September 1999
  • 6.
    WWAAPP FFoorruumm mmeemmbbeerrss © 1999 NOKIA, ©1999 Wireless Application Forum, Ltd. WAPXML-99.ppt / 6 / 22-September 1999 CCL
  • 7.
    WWhhaatt ccaann bbeeddoonnee wwiitthh WWAAPP?? • Information services • Similar to web browsing • Small downloadable programs • WAP script language is based on JavaScript™ • Telephony functionality combined with browser • Call the airline when your flight is delayed • Push • Server initated content push © 1999 NOKIA, ©1999 Wireless Application Forum, Ltd. WAPXML-99.ppt / 7 / 22-September 1999
  • 8.
    WWhhaatt iiss ddeeffiinneeddiinn WWAAPP?? • Layered telecommunication stack including • Datagrams and Transactions • Security • Session • Micro browser • Concept that is similar to the Internet browsing • XML based markup language ( WML ) • Scripting ( WMLS ) • WTA / WTAI • Access to telephone functionality • Content formats e.g. • Service Indication • Wireless Bitmap ( WBMP ) © 1999 NOKIA, ©1999 Wireless Application Forum, Ltd. WAPXML-99.ppt / 8 / 22-September 1999
  • 9.
    WWAAPP AArrcchhiitteeccttuurree ©1999 NOKIA, ©1999 Wireless Application Forum, Ltd. WAPXML-99.ppt / 9 / 22-September 1999 Web Server CGI Scripts etc. Content WML Decks with WML-Script WAP Gateway WML Encoder WMLScript Compiler Protocol Adapters Client WML WML-Script WTAI Etc. WSP/WTP HTTP
  • 10.
    Internet IInntteerrnneett aannddWWAAPP aarrcchhiitteeccttuurree HTML JavaScript™ HTTP TLS - SSL TCP/IP UDP/IP Wireless Application Protocol Wireless Application Environment (WAE) Wireless Transport Layer Security (WTLS) Bearers: Wireless Session Layer (WSP) Wireless Datagram Protocol (WDP) SMS USSD CSD R-Data Packet UDP PDC-P Etc... © 1999 NOKIA, ©1999 Wireless Application Forum, Ltd. WAPXML-99.ppt / 10 / 22-September 1999 Other Services and Applications Wireless Transaction Protocol (WTP)
  • 11.
    WWAAPP && SSttaannddaarrddss • Submit specifications for adoption by appropriate industry and standards bodies • Good relationships with standards bodies • Several Liaisons with ETSI • ETSI / WAP compliance profile for GSM and UMTS. • CTIA official Liaison Officer to the WAP Forum • WAP is actively working with the W3C and IETF © 1999 NOKIA, ©1999 Wireless Application Forum, Ltd. WAPXML-99.ppt / 11 / 22-September 1999
  • 12.
    WWAAPP PPrroottooccooll SSttaacckk Wireless Session Service Access Point Wireless Session Protocol Wireless Transaction Service Access Point Wireless Transaction Protocol Transport Service Access Point (TSAP) Wireless Datagram Protocol WCMP © 1999 NOKIA, ©1999 Wireless Application Forum, Ltd. WAPXML-99.ppt / 12 / 22-September 1999 Bearer Service D Bearer Service C Bearer Service B Bearer Service A Physical Layer Air Link Technology • Developed by • Wireless Protocols Group (WPG) • A WAP technical working group.
  • 13.
    WWAAPP PPrroottooccooll SSttaacckk-- WWSSPP • 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 • Enhancements beyond HTTP • Binary header encoding • Confirmed and non-confirmed data push • Capability negotiation • Suspend and resume • Connectionless service © 1999 NOKIA, ©1999 Wireless Application Forum, Ltd. WAPXML-99.ppt / 13 / 22-September 1999
  • 14.
    WWAAPP PPrroottooccooll SSttaacckk-- WWSSPP • Binary header encoding • Compact binary encoding of headers, content type identifiers and other well-known textual or structured values • Reduces the data actually sent over the network • Capabilities • Message Size, client and server • Protocol Options: Confirmed Push Facility, Push Facility, Session Suspend Facility, Acknowledgement headers • Maximum Outstanding Requests • Extended Methods • Header Code Pages • Suspend & Resume • Allows the release of underlying bearer resources © 1999 NOKIA, ©1999 Wireless Application Forum, Ltd. WAPXML-99.ppt / 14 / 22-September 1999
  • 15.
    WWAAPP PPrroottooccooll SSttaacckk-- WWSSPP • Connection & Connectionless service • Connection-mode • Long-lived communication • Benefits of the session state • Reliability • Connectionless • Stateless applications • No session creation overhead • No reliability overhead © 1999 NOKIA, ©1999 Wireless Application Forum, Ltd. WAPXML-99.ppt / 15 / 22-September 1999
  • 16.
    WWAAPP PPrroottooccooll SSttaacckk-- WWTTPP • Reliable data transfer based on request/reply paradigm • No explicit connection setup or tear down • Data carried in first packet of protocol exchange • Seeks to reduce 3-way handshake on initial request • Supports • retransmission of lost packets • selective-retransmission • segmentation / re-assembly • port number addressing (UDP ports numbers) • flow control • abort function for outstanding requests • concatenation of PDUs • Message oriented (not stream) © 1999 NOKIA, ©1999 Wireless Application Forum, Ltd. WAPXML-99.ppt / 16 / 22-September 1999
  • 17.
    WWAAPP PPrroottooccooll SSttaacckk-- WWTTPP • WTP Protocol Exchange CClliieenntt SSeerrvveerr (PDUs) Invoke Ack Result Ack T-TRInvoke.req T-TRInvoke.cnf T-TRResult.ind T-TRResult.res © 1999 NOKIA, ©1999 Wireless Application Forum, Ltd. WAPXML-99.ppt / 17 / 22-September 1999 T-TRInvoke.ind T-TRInvoke.res T-TRResult.req T-TRResult.cnf
  • 18.
    WWAAPP PPrroottooccooll SSttaacckk-- WWDDPP • WDP provides a connection-less, unreliable datagram service • WDP is adapted to each particular wireless network to provide the generic datagram transport. • The basic datagram service is fundamental to all wireless networks and makes it possible to utilize WAP everywhere • Replaced by UDP when used over an IP network layer. • WDP over IP is UDP/IP • Uses the Service Primitive • T-UnitData.req .ind © 1999 NOKIA, ©1999 Wireless Application Forum, Ltd. WAPXML-99.ppt / 18 / 22-September 1999
  • 19.
    WAP Protocol SSttaacckk-- BBeeaarreerr ssuuppppoorrtt • 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 © 1999 NOKIA, ©1999 Wireless Application Forum, Ltd. WAPXML-99.ppt / 19 / 22-September 1999
  • 20.
    WAP PPrroottooccooll SSttaacckk-- BBeeaarreerr EExxaammppllee • WAP over GSM Circuit Switched Mobile WAE WSP IP PPP RAS - Remote Access Server IWF - InterWorking Function PPP © 1999 NOKIA, ©1999 Wireless Application Forum, Ltd. WAPXML-99.ppt / 20 / 22-September 1999 WAP Proxy/Server WAE Apps on Other Servers WSP IP Subnetwork CSD-RF IWF PSTN Circuit CSD-RF ISP/RAS IP PSTN Subnetwork Circuit WTP UDP WTP UDP
  • 21.
    Sta WAP ProtocolStacckk -- BBeeaarreerr EExxaammppllee • WAP over GSM Short Message Service WAE WSP WTP WDP SMS SMS Subnetwork © 1999 NOKIA, ©1999 Wireless Application Forum, Ltd. WAPXML-99.ppt / 21 / 22-September 1999 WAE Apps on other servers WSP WTP WDP WDP Tunnel Protocol WDP Tunnel Protocol Subnetwork SMSC WAP Mobile Proxy/Server under development
  • 22.
    WWAAPP PPrroottooccooll SSttaacckk-- WWTTLLSS • Specifies a framework for secure connections, using protocol elements from common Internet security protocols like SSL and TLS. • Provides connection security for two communicating applications • Privacy (encryption) • Data integrity (MACs) • Authentication (public-key and symmetric) • 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 © 1999 NOKIA, ©1999 Wireless Application Forum, Ltd. WAPXML-99.ppt / 22 / 22-September 1999
  • 23.
    Wireless Application EEnnvviirroonnmmeenntt(( WWAAEE )) • WAP Application framework • Network-neutral application environment; • Suitable for narrowband wireless devices; • Follows the Internet/WWW programming model; • Ensures high degree of interoperability. • Leverages Internet standard technology • Device Independent • Network Independent • International Support • Developed by • Wireless Applications Group (WAG); • A WAP technical working group. © 1999 NOKIA, ©1999 Wireless Application Forum, Ltd. WAPXML-99.ppt / 23 / 22-September 1999
  • 24.
    WWAAEE ""CCoommppoonneennttss"" •WML • Display language • WMLScript • Scripting language • WTA • Telephony services API and architecture • Content Formats • Data exchange • User Agent Profiling • Content customized for device • Push • Server-initiated content delivery © 1999 NOKIA, ©1999 Wireless Application Forum, Ltd. WAPXML-99.ppt / 24 / 22-September 1999
  • 25.
    WWAAEE -- WWAAPPGGaatteewwaayy © 1999 NOKIA, ©1999 Wireless Application Forum, Ltd. WAPXML-99.ppt / 25 / 22-September 1999 Web Server CGI Scripts etc. Content WML Decks with WML-Script WAP Gateway WML Encoder WMLScript Compiler Protocol Adapters Client WML WML-Script WTAI Etc. WSP/WTP HTTP
  • 26.
    WWAAEE -- WWAAPPAApppplliiccaattiioonn SSeerrvveerr WAP Application Server © 1999 NOKIA, ©1999 Wireless Application Forum, Ltd. WAPXML-99.ppt / 26 / 22-September 1999 Application Logic Content WML Decks with WML-Script WML Encoder WMLScript Compiler Protocol Adapters Client WML WML-Script WTAI Etc. WSP/WTP
  • 27.
    WWAAEE -- WWMMLL • Wireless Markup Language (WML) is a Tag-based browsing language: • Screen management (text, images) • Data input (text, selection lists, etc.) • Hyperlinks & navigation support • W3C XML-based language © 1999 NOKIA, ©1999 Wireless Application Forum, Ltd. WAPXML-99.ppt / 27 / 22-September 1999
  • 28.
    WWAAEE -- WWMMLL • Card metaphor • User interactions are split into cards • Navigation occurs between cards • Explicit inter-card navigation model • Hyperlinks • UI Event handling • History • State management and variables • Reduce network traffic • Results in better caching © 1999 NOKIA, ©1999 Wireless Application Forum, Ltd. WAPXML-99.ppt / 28 / 22-September 1999
  • 29.
    WWAAEE -- WWMMLL Navigation Card Input Elements © 1999 NOKIA, ©1999 Wireless Application Forum, Ltd. WAPXML-99.ppt / 29 / 22-September 1999 Deck Variables <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>
  • 30.
    WWAAEE -- WWMMLLSSccrriipptt • Scripting language: • Procedural logic, loops, conditionals, etc. • Optimized for small-memory, small-cpu devices • Derived from JavaScript™ • Integrated with WML • Powerful extension mechanism • Reduces overall network traffic • Bytecode-based virtual machine • Stack-oriented design • Designed for simple, low-impact implementation • Compiler in network • Better network bandwidth use • Better use of terminal memory/cpu. © 1999 NOKIA, ©1999 Wireless Application Forum, Ltd. WAPXML-99.ppt / 30 / 22-September 1999
  • 31.
    WWAAEE -- WWMMLLSSccrriipptt • Reduces network round-trips and enhance functionality. • Example usages • Field validation • Check for formatting, input ranges, etc. • Device extensions • Access device or vendor-specific API • Conditional logic • Download intelligence into the device © 1999 NOKIA, ©1999 Wireless Application Forum, Ltd. WAPXML-99.ppt / 31 / 22-September 1999
  • 32.
    WWAAEE -- WWMMLLSSccrriipptt Functions WMLScript is very similar to JavaScriptÔ Variables Programming Constructs function currencyConvertor(currency, exchRate) { return currency*exchangeRate; } function myDay(sunShines) { var myDay; if (sunShines) { myDay = “Good”; } else { myDay = “Not so good”; }; return myDay; } © 1999 NOKIA, ©1999 Wireless Application Forum, Ltd. WAPXML-99.ppt / 32 / 22-September 1999
  • 33.
    WWAAEE -- WWTTAA • WTA Browser • Extensions added to standard WML/WMLScript browser • Exposes additional API (WTAI) • WTAI includes: • Call control • Network text messaging • Phone book interface • Indicator control • Event processing • WTAI available in WML & WMLScript © 1999 NOKIA, ©1999 Wireless Application Forum, Ltd. WAPXML-99.ppt / 33 / 22-September 1999
  • 34.
    WWAAEE -- WWTTAA • Placing an outgoing call with WTAI WTAI Call Input Element <WML> <CARD> <DO TYPE=“ACCEPT”> <GO URL=“wtai:cc/mc;$(N)”/> </DO> Enter phone number: <INPUT TYPE=“TEXT” KEY=“N”/> </CARD> </WML> © 1999 NOKIA, ©1999 Wireless Application Forum, Ltd. WAPXML-99.ppt / 34 / 22-September 1999
  • 35.
    WWAAEE -- WWTTAA • Placing an outgoing call with WTAI WTAI Call function checkNumber(N) { if (Lang.isInt(N)) WTAI.makeCall(N); else Dialog.alert(“Bad phone number”); } © 1999 NOKIA, ©1999 Wireless Application Forum, Ltd. WAPXML-99.ppt / 35 / 22-September 1999
  • 36.
    WWAAEE -- CCoonntteennttFFoorrmmaattss • Common interchange formats • Promoting interoperability • Formats: • Business cards: IMC vCard standard • Calendar: IMC vCalendar standard • Images: WBMP (Wireless BitMaP) • Compiled WML, WMLScript • Service Indication ( Proposed ) • Service Loading ( Proposed ) • Cache Operation ( Proposed ) © 1999 NOKIA, ©1999 Wireless Application Forum, Ltd. WAPXML-99.ppt / 36 / 22-September 1999
  • 37.
    WWAAEE -- CCoonntteennttFFoorrmmaattss • Binary format for size reduction • Bytecodes/tokens for common values and operators • Compressed headers • Data compression (e.g. images) • Example use of image Image Element <WML> <CARD> Hello World!<BR/> <IMG SRC=“/world.wbmp” ALT=“[Globe]” /> </CARD> </WML> © 1999 NOKIA, ©1999 Wireless Application Forum, Ltd. WAPXML-99.ppt / 37 / 22-September 1999
  • 38.
    WWAAEE -- PPuusshh • Server initiated content push • Provides end-to-end solution • Easy for developers • XML based Push Access Protocol layered on top of HTTP • Helpful push specific content types • Service Indication • Service Loading • Underlying wireless network complexity hidden • Push Specifications are currently on Proposed status © 1999 NOKIA, ©1999 Wireless Application Forum, Ltd. WAPXML-99.ppt / 38 / 22-September 1999
  • 39.
    WWAAEE -- PPuusshhFFrraammeewwoorrkk CLIENT PUSH PROXY GATEWAY © 1999 NOKIA, ©1999 Wireless Application Forum, Ltd. WAPXML-99.ppt / 39 / 22-September 1999 PUSH INITIATOR PUSH ACCESS PROTOCOL OVER-THE-AIR PROTOCOL PPG SERVICES PUSH MESSAGE
  • 40.
    WWAAEE -- UUsseerrAAggeenntt PPrrooffiillee (UUAAPPRROOFF) • Assist in content personalization, based upon: • Device characteristics, user preferences • Other profile information • Working with W3C on CC/PP • RDF-based content format • Describes “capability and profile” info • Efficient transport over wireless links, caching, etc. • UAProf specification is currently on Proposed status © 1999 NOKIA, ©1999 Wireless Application Forum, Ltd. WAPXML-99.ppt / 40 / 22-September 1999
  • 41.
    QQuueessttiioonnss ?? ©1999 NOKIA, ©1999 Wireless Application Forum, Ltd. WAPXML-99.ppt / 41 / 22-September 1999
  • 42.
    TThhaannkk yyoouu!! Moreinformation: www.wapforum.org © 1999 NOKIA, ©1999 Wireless Application Forum, Ltd. WAPXML-99.ppt / 42 / 22-September 1999

Editor's Notes

  • #4 Internet (IP-technology) is fast compared to today’s wireless networks No compression or content encoding is needed in Internet technology (HTML/HTTP) because it is fast enough Internet content is made for fast networks - a lot of graphics, animation, sounds etc. Do the following test: hook your computer to a GSM phone and browse World Wide Web using data call over GSM network. It is slow - several minutes to get a typical web page. Is it usable? WAP technology optimizes content (pages) for slower networks. Language does not have to support so many parameters or elements because the client is simpler (mobile phone) - a page does not have to contain so much “fuzz” (background images, animation, colors, i.e., noise) When this small content is delivered over wireless network it is even encoded (compressed) before it goes to wireless system Instead of several minutes now it only takes a few seconds to get information.
  • #5 Even if you were able to go to any existing World Wide Web page you could not use the content because it is made for a large graphical screen - computer display. You cannot automatically convert web pages for small devices It is same as if you gave a 500 pages thick novel to a machine and asked it to squeeze it to fit only one page without loosing any important information of the story. Machines (computers) cannot do it - they do not understand what is important information to human beings and what is not. Content (web pages) must be modified for small devices regardless of the wireless technology - existing web pages do not work properly with small devices
  • #8 These are the basic application types. I will explain them all in more detail during a few next slides.
  • #11 WAP architecture consists of several layers WEB model Different layers can be used independently Layered model is extensible Allows also other applications Allows various bearers