Mobility is all about Internet access from mobile devices. No doubt Internet has grown fast, well really fast! But mobile Internet is poised to grow even faster. The distinction between the wireless, wire-line and the Internet service providers is beginning to blur.
The issue is that with a range of mobile devices and underlying mobile wireless technologies, developing services specific to each type of equipment and specific to a particular technology is troublesome. This calls for a standardization, which provides a generic model where applications can be written without keeping in mind the equipment and the technology. On the equipment & network side, the wireless devices represent the ultimate constrained computing device – Less powerful CPUs, Less memory (ROM and RAM), Restricted power consumption, smaller display, Different input devices (e.g., a phone keypad, voice input, etc.), Less bandwidth, More latency and Less connection stability.
Wireless Application Protocol
Developed by the WAP Forum [a group founded by Nokia, Ericsson, Phone.com (formerly Unwired Planet), and Motorola], the Wireless Application Protocol (WAP) is the de-facto set of communication protocols for the presentation and delivery of wireless information and telephony services on mobile phones and other wireless terminals. WAP is a technical standard for accessing information over a mobile wireless network, very similar to the Internet’s combination of Hypertext Markup Language (HTML) and Hypertext Transfer Protocol (HTTP). By linking the two ‘hot-topics’ in communication – the internet and mobile technology – WAP provides a very valuable service.
By addressing the constraints of a wireless environment, and adapt existing Internet technology to meet these constraints, WAP scales across a wide range of wireless devices and network types. WAP utilizes Internet standards such as XML, user datagram protocol (UDP), and IP. The WAP protocol is designed with the network, device and user interface limitations in mind. This means that WAP is optimized for mobile networks with narrow bandwidths, mobile devices with small screens and limited keys for user entry, little memory storage, and limited processing and battery power. This makes WAP an ideal choice for developing an application for the mobile network.
To browse a standard internet site you need a web browser. Similar way to browse a WAP enables website, you would need a micro browser. A Micro Browser is a small piece of software that makes minimal demands on hardware, memory and CPU. It can display information written in a restricted mark-up language called WML. Although, tiny in memory footprint it supports many features and is even scriptable.
The WAP specifications define a set of protocols which enable operators, manufacturers, and applications providers to meet the challenges in advanced wireless service differentiation and fast/flexible service creation. Because of the different levels – or stacks – this is called the “WAP Stack”, which is divided into 5 different levels.
- Wireless Application Environment (WAE) – defines application-specific markup languages, enables third-party developers to develop more advanced services and applications
- Wireless Session Protocol (WSP) – a compressed version of HTTP, allows efficient data exchange between applications
- Wireless Transaction Protocol (WTP) – provides transaction support (reliable request/response) adapted to the wireless world
- Wireless Transport Layer Security (WTLS) – an optional layer, provides a public-key cryptography-based security mechanism similar to TLS that enable secure transactions. WTLS aims to provide privacy, data integrity and authentication between two communication applications.
- Wireless Datagram Protocol (WDP) – a variation of the internet standard transmission protocol, HTTP (Hypertext Transport Protocol), but redesigned for wireless network characteristics by replacing text with more efficient binary information for the low-bandwidth connection. It functions as an adaptation layer that makes every data network look a bit like UDP to the upper layers.
This protocol suite allows a terminal to transmit requests that have an HTTP or HTTPS equivalent to a WAP gateway; the gateway translates requests into plain HTTP. Here’s what happens when you access a Web site using a WAP-enabled device:
- You turn on the device and open the mini browser.
- The device sends out a radio signal, searching for service.
- A connection is made with your service provider.
- You select a Web site that you wish to view.
- A request is sent to a gateway server using WAP.
- The gateway server retrieves the information via HTTP from the Web site.
- The gateway server encodes the HTTP data as WML.
- The WML-encoded data is sent to your device.
- You see the wireless Internet version of the Web page you selected.
Wireless Markup Language & WMLScript
The original WAP model served pages in Wireless Markup Language (WML), formerly called HDML (Handheld Devices Markup Languages). It is based on HTML, but is optimized for mobile networks and small handheld devices. WML, like HTML is a tagged based browsing language. Although WAP supports HTML and XML, the WML language (an XML application) is specifically devised for small screens and one-hand navigation without a keyboard. WML files have the extension ‘.wml’ and MIME type as “text/vnd.wap.wml“.
The first company to launch a WAP site was Dutch mobile phone operator Telfort BV in October 1999. In 2002 the WAP Forum was consolidated (along with many other forums of the industry) into Open Mobile Alliance (OMA). As for the pros, there was criticism as well – like WML cut users off from the conventional HTML Web, leaving only native WAP content and Web-to-WAP proxy-content available to WAP users. Therefore industry designed some alternatives to WAP – like i-Mode and LEAP. Most modern handset internet browsers now fully support HTML, so do not need to use WAP markup for webpage compatibility.
A re-engineered 2.0 version was released in 2002. It uses a cut-down version of XHTML with end-to-end HTTP. Mobile devices process XHTML Mobile Profile (XHTML MP), the markup language defined in WAP 2.0. It is a subset of XHTML and a super-set of XHTML Basic. A version of cascading style sheets (CSS) called WAP CSS is supported by XHTML MP.