Wireless Application Protocol
“Wireless application protocol (WAP) is an application environment and set of communication protocols for wireless devices designed to enable access to the Internet and advanced telephony services to the wireless community. “ Definition of WAP
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)
Objectives of WAP Initial focus on wireless phones –Low bandwidth, high latency, low connection stability To provide Internet access for wireless devices Device & Network Independent To create Wireless Application Environment –Micro-browser, , www, mobile to fax access etc. –WML and WML script.
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
Current Constraints of Less Bandwidth High Latency Less Stable Connections Less Predictable Availability Diverse range of network standards Less CPU Power Less Memory and Storage Restricted Power Consumption Small / Variable Sized Displays Variable Input Types (Keypad, Pen, etc,) Wireless Interfaces: Mobile Devices :
WAP: Main Features Browser –“Micro browser”, similar to existing web browsers Markup language –Similar to HTML, adapted to mobile devices Script language –Similar to Javascript, adapted to mobile devices Gateway –Transition from wireless to wired world Server –“Wap/Origin server”, similar to existing web servers Protocol layers –Transport layer, security layer, session layer etc. Telephony application interface –Access to telephony functions
Internet Model HTML HTTP TLS/SSL TCP/IP TLS/SSL: Transport layer security Secure Sockets layer
World-Wide Web Model CGI, Scripts, Etc. Content Web Server Client Web Browser Request (URL) Response (Content)
WAP Programming Model CGI, Scripts, Etc. Content Web Server Client WAE User Agent Request (URL) Response (Content) Gateway Encoders And Decoders Encoded Request Encoded Response
WAP Concept Overview
August 2002 WAP Architecture/Protocol Stack
Web Server Content CGI Scripts etc. WML Decks with WML-Script WAP Gateway WML Encoder WMLScript Compiler Protocol Adapters Client WML WML- Script WTAI Etc. HTTPWSP/WTP WAP Architecture Source: WAP Forum
WAP Application Server Content Application Logic WML Decks with WML-Script WML Encoder WMLScript Compiler Protocol Adapters Client WML WML- Script WTAI Etc. WSP/WTP WAP Application Server Source: WAP Forum Wireless Telephony Application Interface
15 The WAP Model (cont) Based on Version 30-Apr-1998
WAP Device - Is used to access WAP applications and content. It might be a PDA, handheld computer. WAP Client - Entity that receives content from Internet via a WAP Gateway. This is usually the WAP Browser. WAP Content/Origin/Application Server - Element in the network where the information or web/WAP applications resides.
WAP Proxy - Acts both as a client and as a server in the network.Typically has –Protocol gateway : translates requests from the WAP protocol stack to WWW protocol stack –Content encoders and decoders : translate WAP content into compact encoded formats to reduce the size of data over the network It allows content and applications to be hosted on standard WWW servers and developed using proven WWW technologies such as CGI scripting
WAP Gateway - Intermediary element used to connect two different types of network. It receives request directly from the clients as if it actually were the origin server that clients want to receive the information form. The clients are usually unaware that they are speaking to the Gateway. WAP Browser –Software running on the WAP device that interprets the WAP content arriving from the internet and decides how to display it on WAP device.
WML WML – Wireless Markup Language formerly called HDML (Handheld Devices Markup Language) Is a tag language that allows the text portions of Web Pages to be presented on cellular phones and Personal Digital Assistants (PDAs) via wireless access. WML is used for delivering data to WAP devices, and is HTML- like in its appearance. An alternative to WML is I-Mode’s cHTML language.
WAP Network Example Web Server Wireless Network WAP Proxy HTML Filter WTA Server WAP Client WML HTML
WAP Architecture Another look Key Components Origin/Web Server WAP Gateway/Proxy WAP Protocol Stack Micro Browser WML/WML Script Transcoders WTA Source: WAP Forum
WWW Protocol Stack TCP/IP UDP/IP TLS - SSL HTTP HTML Java Script
Components of WAP Architecture Other Services And Applications Transport Layer (WDP) Security Layer (WTLS) Transaction Layer (WTP) Session Layer (WSP) Application Layer (WAE) GSMCDMAPHSIS-136CDPDPDC-PFLEXEtc… Bearers :
WAE Components Architecture –Application model, Microbrowser, Gateway, Server User Agents –WML/WTA/Others –content formats: vCard, vCalendar, Wireless Bitmap, WML,... WML –XML-Syntax, based on card stacks, variables,... WMLScript –procedural, loops, conditions,... (similar to JavaScript) WTA –telephone services, such as call control, text messages, phone book,... (accessible from WML/WMLScript) Proxy (Method/Push)
WAP - reference model and protocols Bearers (GSM, CDPD,...) Security Layer (WTLS) Session Layer (WSP) Application Layer (WAE) Transport Layer (WDP) TCP/IP, UDP/IP, media SSL/TLS HTML, Java HTTP InternetWAP WAE comprises WML (Wireless Markup Language), WML Script, WTAI etc. Transaction Layer (WTP) additional services and applications WCMP A-SAP S-SAP TR-SAP SEC-SAP T-SAP
T-SAP: Transport layer Service access point SEC-SAP: Security SAP TR-SAP: Transaction SAP S-SAP: Session SAP
Wireless Application Environment (WAE) General-purpose application environment based on a combination of WWW and mobile telephony technologies. It defines the user interface on the phone. It contains WML and WTA (Wireless Telephony Application). Primary objective – interoperable environment.
Wireless Application Environment (Contd.) WAE includes a micro-browser (Client software designed to overcome challenges of mobile handheld devices that enables wireless access to services such as Internet information in combination with a suitable network ) server environment which provides –WML –WML script –WTA –Content formats
Origin Servers WAE: Logical Model web server other content server Gateway Client other WAE user agents WML user agent WTA user agent Push proxy encoded request encoded response with content response with content push content encoded push content Method proxy encoders & decoders
Wireless Session Protocol (WSP) The WAP session protocol (WSP) layer provides a lightweight session layer to allow efficient exchange of data between applications. Application layer with a consistent interface for two session services –Connection-oriented service that operates above the transaction layer protocol (WTP) –Connectionless service that operates above a secure or non-secure datagram service (WDP) Optimized for low-bandwidth bearer networks with long latency
Wireless Transaction Protocol (WTP) The WAP transaction protocol (WTP) layer provides transaction support, adding reliability to the datagram service provided by WDP. Light weight transaction-oriented protocol Three classes of transaction services –Unreliable one-way requests –Reliable one-way requests –Reliable two-way request-reply transactions
Wireless Transport Layer Security (WTLS) Based on industry-standard Transport Layer Security (TLS) protocol Optimized for use over narrow-band communication channels Features: –Data integrity –Privacy –Authentication –Denial-of-service protection
Wireless Datagram Protocol (WDP) The WAP datagram protocol (WDP) is the Transport layer that sends and receives messages via any available bearer network, including SMS, USSD, CSD, packet data, and GPRS. Operates above the data capable bearer services supported by various network types. Provides a common interface to the upper layer protocols and hence they function independent of the underlying wireless network.
Bearers Differing levels of quality of service with respect to throughput, error rate, and delays WAP protocols are designed to compensate for or tolerate these varying levels of service WDP specification lists the bearers that are supported and techniques used to allow WAP protocols to run over each bearer
WAP: Network Elements wireless networkfixed network WAP proxy WTA server filter/ WAP proxy web server filter PSTN Internet Binary WML: binary file format for clients Binary WML HTML WML HTML Source: Schiller
Why is HTTP/HTML not enough? Big pipe - small pipe syndrome Wireless network NNN Interactive NNN Intera ctive Internet Enter name: Content encoding HTTP/HTML WAP Source: WAP Forum