What is WAP?
WAP stands for Wireless Application Protocol. The idea came from the wireless industry, from companies such as Openwave.com, Nokia and Ericsson. The goal of this standard is to serve internet content and internet services to wireless clients, WAP devices, such as mobile phones and terminals. In 1997, these companies formed the WAP Forum and released the first WAP versions. In 2002, the WAP Forum has merged - together with other forums, into OMA, the Open Mobile Alliance which is now the authoritative source for WAP.
The definition 'the mobile web' - as used in this FAQ, is the collection of websites that is specifically designed for devices that are usually carried, or at the very least limited in features compared to the average PC. Of course, the 'average PC' is as loose a term as is 'mobile', but in general, we are speaking about devices that at least have one of the following feature limitations:
- Incomplete keyboard (either just numeric keys, or a very small keyboard)
Additionally, devices for the hearing- or sight-impaired often gratefully use mobile content since if the content is simple, it is usually easier to present to those with disabilities. The question if people using braille readers should be included in 'the mobile web' is perhaps a question of definitions.
Catering to such limitations falls beyond the scope of this specific page, suffice to say that a page has to be kept very simple.
|How does a WAP device connect to the internet?|
In the figure above, starting from the left, you'll find the mobile WAP device attached to the mobile network (GSM, CDDA, etc) which dials the modem attached to a dial-in server (RAS, or Remote Access Service). This server gives the WAP device access to the protocols it needs. These are the same lower level protocols as a normal Internet Service Provider will give you. This is known as PPP or Point-to-Point Protocol.
These protocols are used to access the next step in the chain, the WAP gateway, in this figure hosted by the mobile operator. The WAP gateway is the link between the wireless and the "web" world, basically giving the WAP device access to the common internet.
Another way of explaining it, and in a bit more detail would be to say that when you type in the URL for a site on your WAP device, for instance http://t.wurfl.com/ the WAP device first checks if it already has an open connection, if not it dials up the PPP provider as described above. After the PPP provider has given the WAP device the required protocols and assigned it an IP address, the request for the URL is sent to the gateway. The WAP gateway, now under "control" of the WAP device requests the URL with a normal HTTP request, such as GET HTTP://WAP.COLORLINE.NO/.
On the internet, there is a normal "web" server which in this case holds both WAP and "web" contents, which now receives the request to send out the contents located at the HTTP://WAP.COLORLINE.NO/ URL. Also note the normal "web" browser at the lower part of the figure. The web server, depending on which type of browser it is talking to (WAP or "web"), sends out WAP, represented by the blue line, or "web" content represented by the green line.
Following the requested content back to the WAP device, the contents, if they are in so called textual WML code (the human readable type), the WAP gateway compiles the textual WML into so called tokenized WML, or WMLC, where basically the code is "compressed" down into binary data (the machine readable type). This tokenized WML is then passed back to the WAP device. If the contents from the web server is already in tokenized WML format, the WAP gateway skips this operation. The reason for the conversion from textual WML to tokenized WML is to reduce bandwidth usage. A WAP device's WML browser can only read tokenized WML.
Finally, back at the WAP device that requested the URL, the WML browser, when receiving the tokenized WML code renders the contents on the WAP device's display to present a card for the user.
This is how the majority of WAP devices is connected to the Internet, and if you're completely new to WAP, you might want to get back to the more complex configurations below a bit later.
When the WAP device is configured to use a public WAP gateway, and not one that is hosted by the mobile operator, we basically move the WAP gateway out on to the Internet. I repeat that this is not the normal way WAP devices are configured, but during development you might come across this. The figure then looks something like this:
The WAP device now requests another WAP gateway, located on the Internet. There's really not much more to say about this configuration other than that this is the typical configuration for developer who want to test a specific WAP gateway.
All the communication between the WAP device and the gateway is UDP and not TCP. Between the gateway and the HTTP server, the standard TCP connection is used.