33.4 WIRELESS APPLICATION PROTOCOL

 < Day Day Up > 



33.4 WIRELESS APPLICATION PROTOCOL

To provide wireless access to the Internet via 2G wireless networks, the WAP Forum was launched in December 1997 by Ericsson, Motorola, Nokia, and Phone.com. The WAP Forum defined the wireless application protocol (WAP) specifications. WAP specifies the protocol conversion between IP and cellular networks. The WAP protocols are lightweight; that is, the protocol overhead is reduced for wireless networks with low bandwidths and high delays. WAP 1.1 was released in June 1999, Version 1.2 in November 1999, and Version 2.0 in August 2001.

start example

Wireless application protocol (WAP) specifies the protocol conversion between an IP network and a cellular network. WAP works efficiently on second generation wireless networks, which are characterized by low data rates.

end example

33.4.1 WAP Overview

WAP bridges the wireless network and the Internet by providing the necessary protocol conversions between the mobile network and the IP network. The need for a new protocol arose because of the limitations of the mobile networks-low data rates and high delay of course, the TCP/IP protocol is a heavyweight protocol that cannot run on small mobile devices. As shown in Figure 33.2, there will be a WAP gateway that bridges the wireless network and the Internet. The Internet runs the TCP/IP protocol stack (and HTTP for the Web). The mobile device runs the WAP protocol stack and communicates to the WAP gateway. The WAP gateway does the necessary protocol conversion. From the handset, a Web page is requested by giving a URL. The WAP gateway gets the URL and talks to an origin server where the resource corresponding to the URL is located. The content of the URL is transferred to the WAP gateway, which in turn transfers it to the mobile device.

click to expand
Figure 33.2: WAP architecture.

To access Internet content through a mobile device using WAP, the mobile device should be WAP enabled; that is, the mobile device should have the WAP protocol stack and a microbrowser.

Note 

The microbrowser that runs on the WAP-enabled mobile device is similar to the browsers that run on the desktop. However, the microbrowser interprets only Wireless Markup Language (WML) content.

The WAP programming model is shown in Figure 33.3. A WAP-enabled mobile device (a mobile phone or a PDA for instance) sends a URL request. This request is binary encoded and sent over the mobile network to a WAP gateway. The WAP gateway decodes the request and converts it to an HTTP request and sends it to the Web server. The Web server sends the response (either in WML content or HTML content) to the WAP gateway. The WAP gateway encodes the content and sends it over the mobile network to the user agent. If the content is in WML format, it is encoded and sent to the mobile device. If the content is in HTML format, it is converted into WML format and then encoded and sent. The mobile device runs a microbrowser, which interprets the content and displays it to the user. In this model, there is a WAP gateway that has mainly two functions: (a) protocol conversion between WAP and HTTP; and (b) encoding/decoding. Content is encoded to make it compact for sending on a low bandwidth mobile network. The separation between the WAP gateway and Web server is only logical. The functionality of the WAP gateway also can be built into the Web server. The WAP content can be developed in WML and can reside in the Web server itself or it can reside in a separate machine-the WAP gateway. Because the WAP gateway acts as a proxy server to the Web server, it is also referred to as WAP proxy.

click to expand
Figure 33.3: WAP programming model.

start example

The WAP gateway acts as the interface between the wireless network and the Internet. The WAP gateway runs the WAP protocol stack as well the as TCP/IP protocol stack and does the protocol conversion.

end example

Most of the present Web content is written in HTML, but WAP requires that the content be in WML. For WAP applications, content needs to be rewritten. Though HTML to WML conversion utilities are available, they are not efficient because WML does not have equivalents for all the tags supported by HTML.

WAP supports both pull and push models. In the pull model, the client sends a URL request and receives the content. In the push model, the content is sent automatically by the server. For obtaining the push service, the user has to register with the push server-this involves giving information on the push service to be requested (for example, the names of the companies for which stock quotes are to be obtained), the mobile number, the frequency of the push service, and the time of the day when the content has to be pushed.

start example

Wireless Markup Language (WML) has been specially designed to develop content for access by mobile devices. WML is similar to HTML except that it has very few tags and does not support full-fledged graphics and animation.

end example

Note 

WAP did not become a great success mainly because rewriting the content in WML is a gigantic task, and very few Internet sites have WML content.

33.4.2 Wireless Application Environment

The wireless application environment (WAE) consists of:

  • Wireless Markup Language (WML), a page description language that describes the content presented to the user. WML is similar to HTML and is based on XML.

  • WMLScript, a scripting language similar to JavaScript.

  • Content formats to describe the data, images, and other content.

  • A microbrowser that runs on the mobile devices. The microbrowser occupies little system resources and provides functionality similar to a normal browser such as Internet Explorer or Netscape Navigator, though the (toolkit) functionality is limited.

start example

The wireless application environment consists of Wireless Markup Language, WMLScript, content formats to describe the data and images, and micro-browser that runs on the mobile devices.

end example

To create WAP applications-to develop the content using WML and WMLScript and test it in a laboratory environment before actually deploying the applications on the network-WAP toolkits are available from major vendors. These tool kits provide an environment to create, test, and demonstrate WAP applications. Both service providers and developers can use the toolkit to evaluate the usability of the wireless applications. The toolkit contains the applications to create, edit, and debug the WML and WMLScript programs, a microbrowser, simulators for WAP phones, and the WAP protocol stack. Some WAP tool kits are freely downloadable (a list of URLs is given in the References at the end of this chapter).

The content is divided into cards and decks. The basic unit of WML is a card. A card specifies the single interaction between the user agent and the user. Cards are grouped into decks. The mobile device receives a deck, and the first card is presented to the user. The user can navigate to the other cards or to a card in another deck.

WMLScript, which is similar to JavaScript, can be used for calculations, user input validation, to generate error messages locally, and for passing parameters to the server. Using the servlet APIs available on the server, complex applications can be developed using database access and processing.

Note 

A number of WAP toolkits are available that can be used to develop content using WML and WMLScript, and the content can be tested on the desktop before deploying on the wireless network.

33.4.3 WAP Architecture

The protocol stack of WAP (along with TCP/IP protocol suite for comparison) is shown in Figure 33.4. Below the wireless application environment (WAE), will be wireless session protocol (WSP), wireless transaction protocol (WTP), an optional wireless transport layer security (WTLS), and wireless datagram protocol (WDP). WSP and WTP together provide the functionality of HTTP; the optional WTLS is equivalent to TLS, and WDP provides the functionality of the transport layer.

click to expand
Figure 33.4: Internet and WAP protocol stacks.

Wireless session protocol (WSP): This is the application layer of WAP. It supports two types of services-connection-oriented service over WTP and connectionless service (secure or nonsecure) over WDP. The WSP provides the complete HTTP Version 1.1 functionality with provision for session suspension and resumption and facility for unreliable and reliable data push. WSP in its present form is suited for browsing applications only.

start example

The WAP protocol stack consists of wireless application environment, wireless session protocol, wireless transaction protocol, wireless transport layer security, and wireless datagram protocol. WTLS is an optional layer.

end example

The procedure for data transfer is:

  • Establish a session

  • Negotiate the capabilities of the mobile device

  • Exchange content

  • Suspend/resume session

Connectionless service is used to send/receive data without establishing a session. The core of WSP is a binary form of HTTP; all methods defined in HTTP are supported. Instead of sending the content in ASCII text format, the content is binary encoded.

Wireless transaction protocol (WTP): WTP runs on top of the datagram protocol. It provides a lightweight transaction-oriented protocol. Because the security layer is optional in WAP, WTP operates over secure or nonsecure wireless datagram networks.

Wireless transport layer security (WTLS): This is an optional layer in WAP. It is based on transport layer security (TLS). It ensures data integrity (no corruption of data), privacy (through encryption), authentication, and denial of service protection (against attacks). It is an optional layer, so it is possible to enable or disable WTLS. WTLS parameters are source address, destination address, proposed key exchange suite, session Id, and selected cipher suite.

Wireless datagram protocol (WDP): WDP is the transport layer equivalent in the TCP/IP protocol suite. WDP makes the upper layers transparent to the type of wireless network. Adaptation sublayer of WDP is different for different bearers (GSM, CDMA, and such). The WDP services are application addressing by port number, which identifies the higher layer entity above the WDP, optional segmentation and reassembly, and optional error detection.

Note 

WAP was designed initially only to support access to Web services. Hence, only HTTP-equivalent protocol is supported at the application layer.

Since the WAP gateway has to bridge the wireless network and the Internet, it has to do the protocol conversion-it has to run both protocol suites as shown in Figure 33.5. The functions of the WAP gateway are:

  • Protocol conversion.

  • Subscriber data management.

  • Compiling the WML code into compact form and corresponding decoding.

  • Content management. If the origin server gives HTML code to the WAP gateway, it has to be converted into WML format using HTML-to-WML conversion software. If the origin server gives the WML code, it has to be encoded and sent over the wireless network.

click to expand
Figure 33.5: WAP gateway.

start example

The functions of a WAP gateway are protocol conversion between WAP and TCP/IP, obtaining the content from the origin server and converting it into WML if required, converting the WML code into binary form to compress the data, and subscriber data management.

end example

33.4.4 Evolution of WAP

WAP gave us a look at the possibilities of wireless Internet access. However, the initial versions (1.x) provided limited capability, mainly to access textual content. Due to lack of support for graphics and animation, WAP services did not become very popular. Moreover, Internet content is written mostly in HTML; to provide wireless access, it needs to be rewritten in WML. Conversion of the content from HTML to WML is a gigantic task, and very few organizations cared to write WML content for their Web sites.

In recent years, the capabilities of mobile devices increased significantly-powerful processors, higher memory capacities, increased battery life, and so on. Also, wireless network speeds are increasing with the advent of 2.5G and 3G networks. To meet the increased demand for richer content and powerful applications, WAP Version 2.0 was released in August 2001. Using WAP 2.0, we can develop services supporting various media such as text, graphics and animation, voice, and video. These services are referred to as multimedia messaging services (MMS). The WAP 2.0 protocol is shown in Figure 33.6.

click to expand
Figure 33.6: WAP 2.0 Protocol Architecture.

start example

WAP Version 2.0, released in August 2001, supports TCP/IP suitably modified to work in a wireless network environment. High-speed data services such as multimedia messaging service (MMS) can be offered using WAP 2.0.

end example

The protocol stack running on the mobile device consists of:

  • Wireless Profiled HTTP (WP-HTTP), which supports all the functionality of HTTP and compresses the message body of the response from the server.

  • Wireless Profiled WTLS (WP-TLS), which is an optional layer that defines the cipher suites, signing algorithms, and certificate formats.

  • Wireless Profiled TCP (WP-TCP), which provides connection-oriented TCP service and provides less overhead as compared to normal TCP.

  • IP, which provides standard IP service.

  • Wireless bearer, which can be any wireless network, including 2.5G and 3G networks.

The WAP proxy runs the protocol stack as shown in Figure 33.6-it does the necessary protocol translation between the mobile client and the Internet server. In WAP 2.0, there is no real need for a gateway because the mobile device can communicate directly with the server using HTTP. However, if push functionality is required and additional services such as location-based services are to be provided, a WAP gateway is required.

start example

WAP 2.0 uses WML2 for developing content. WML2 is based on eXtensible HyperText Markup Language (XHTML), which in turn is derived from XML.

end example

To overcome the problem of developing new content for wireless environments, WAP2.0 uses WML2, which is based on eXtensible Hypertext Markup Language (XHTML), also derived from XML. The WAP 2.0 browser interprets the XHTML content and presents it to the user.

WAP 2.0 supports the following additional features:

  • User agent profile (UAProfile) allows the mobile device to send its capabilities to the server. Based on the capabilities of the mobile device, such as display size, support for multimedia, and so on, the server can send the content to the mobile device.

  • Wireless telephony application (WTA) facilitates accessing the voice application from the data application. For instance, the mobile device can receive the information about a telephone number of a hotel through the URL request, and then the user can call that number without cutting and pasting that number to make a call.

  • Data synchronization synchronizes the data between two devices. For instance, the mobile device may contain an address book, if the address book has to be updated on to the desktop, it can be done easily using data synchronization. To achieve this, Synchronization Markup Language (SyncML) is defined, using which the data can be transferred between two devices.

  • An external functionality interface provides support for external interfaces such as a GPS receiver, smart cards, digital cameras, and medical devices such as blood pressure measuring devices.

To facilitate accessing services from servers that support both WAP1.x and WAP2.x, the mobile device can support protocol stacks WAP1.x and WAP2.x. These devices are known as dual-WAP stack devices.

Note 

When two devices need to synchronize data (for example, address books in the mobile phone and the PDA), the data transfer is done using a standard markup language called Synchronization Markup Language (SyncML), which is an industry standard.



 < Day Day Up > 



Principles of Digital Communication Systems and Computer Networks
Principles Digital Communication System & Computer Networks (Charles River Media Computer Engineering)
ISBN: 1584503297
EAN: 2147483647
Year: 2003
Pages: 313
Authors: K V Prasad

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net