WAP and wireless WWW Christopher Hoffman Anuradha Rangineni Changju Lee Contents Introduction WAP Objectives WAP Programming Model WAP Protocol Stacks WAE (Wireless Application Environment) WSP (Wireless Session Protocol) WTP (Wireless Transaction Protocol) WTLS (Wireless Transaction Layer Security) WDP (Wireless Datagram Protocol) Wireless WWW Introduction Wireless Application Protocol Standard for wireless application to provide data and voice services to wireless handheld devices WAP application is enable to access WAP sites using WAP browser (Micro-browser) WAP sites (Mobile internet sites) are websites written in, or dynamically converted to, WML XHTML MP(Mobile Profile) is defined as a standard WML in WAP 2.0 Examples of WAP application Email by mobile phone Tracking of stock market prices Sports results News headlines Music downloads Objectives of WAP Supporting the standard Internet protocols Interoperability among service providers Overcoming shortfalls of the wireless medium Overcoming drawbacks of handheld devices Increasing efficiency and reliability Providing security, scalibility and extensibility WAP Programming Model WAP Optional Proxy Model WML Content HTML Content Filter WAP protocol stack WAP protocol stack Scalable environment for application development Well defined interfaces to other services WAP protocol stack Wireless Application Environment (WAE) Provides model for accessing WWW URLs Uses uniform resource identifiers (URIs) Uses WML standard markup language, an efficient binary encoded form of HTML Provides a scripting language analogous to JavaScript Provides a set of telephony applications WAP protocol stack Wireless Session Protocol (WSP) Push mechanism reduces number of requests made by client Push to all registered clients useful in multicast or broadcast applications Binary equvalent to HTTP Sessions can be suspended and reestablished to save power and avoid overhead WAP protocol stack Wireless Transaction Protocol (WTP) Lightweight version of TCP Low overhead: no setup or teardown 3 classes of service: Class 0: unreliable send with no ACK Class 1: reliable push Class 2: classical request-data-ACK cycle WAP protocol stack Wireless Transport Layer Security (WTLS) Security between WAP client and WAP server Features: datagram support, optimized handshake, dynamic key refeshing Goals: data integrity, privacy, authentication, and DoS protection WAP protocol stack Wireless Datagram Protocol (WDP) Defines transport layer Contains bearer-specific layer that optimizes data transfer to SMS, USSD, CSD, or CDMA Wireless control message protocol (WCMP) is responsible for error-handling WAP 2.0 and i-mode i-mode Packet switched network built on circuit switched mobile phone network Billed by the packet Uses cHTML (compact HTML) WAP 2.0 Packet switched Interoperable with WAP 1.0 Billed by connection time Pull and Push models Optimizing Web Over Wireless Limitations of wireless networks Low bandwidth Low reliability High latency High cost per byte transferred Drawbacks of HTTP High connection overhead- a new TCP socket is opened for every new HTML object Redundant capabilities transmission - information regarding browser capabilities is included in every HTTP request Verbosity – HTTP is ASCII encoded WebExpress suggests an Intercept model to be applied In this model two entities are introduced CSI – client side interface - resides with the browser on the device - communication takes place through the loopback feature of TCP/IP SSI- server side interface -resides at network gateway or FA in MobileIP -communicates with server over wired network Intercept model lindquist Optimizations Caching - objects are purged after sessions or may persist between them - persisting objects increase cache hit ratios - appropriate cache coherency methods are added Differencing - different replies to same application server are often different but tend to be similar - base object carries fundamental features which do not change across transactions - only difference stream computed by server is transmitted for any new transaction Optimizations Protocol reduction - aims at reducing overhead of repeated set up and tear down of TCP/IP connections - a single TCP/IP connection is established between CSI and SSI for entire session Header reduction -HTTP requests have prefixes like capabilities of browser and various content formats handled by it - instead, CSI sends this information in first request and SSI records this information -for all other requests sent by CSI, SSI automatically inserts this capability into each packet meant for origin server