# Protocolo de aplicaciones inalámbricas

El protocolo de aplicaciones inalámbricas, en inglés: Wireless Application Protocol (WAP), es un estándar abierto internacional para aplicaciones que utilizan las comunicaciones inalámbricas, por ejemplo: acceso a servicios de Internet desde un teléfono móvil.
Se trata de la especificación de un entorno de aplicación y de un conjunto de protocolos de comunicaciones para normalizar el modo en que los dispositivos inalámbricos, se pueden utilizar para acceder al correo electrónico, grupo de noticias y otros.
El organismo que se encargaba de desarrollar el estándar WAP fue originalmente el WAP Forum, fundado por cuatro empresas del sector de las comunicaciones móviles: Sony Mobile Communications (anteriormente llamada Sony Ericsson Communications AB), Nokia, Motorola y Openwave (originalmente Unwired Planet). Desde 2002 el WAP Forum es parte de la Open Mobile Alliance (OMA), consorcio que se ocupa de la definición de diversas normas relacionadas con las comunicaciones móviles, entre ellas las normas WAP.

## Especificaciones técnicas
### Pila de protocolos WAP

El estándar WAP define una pila de protocolos para aplicaciones y servicios accesibles a través de terminales móviles que permiten la interoperabilidad de los dispositivos y software WAP con distintas tecnologías de red, como GSM e IS-95 (también conocida como CDMA). Las especificaciones, definidas por la Open Mobile Alliance/WAP Forum, permiten que los desarrolladores diseñen aplicaciones de interconexión para terminales móviles, entre los que destacan los teléfonos.
| Pila de protocolos WAP | Entorno inalámbrico de aplicación (Wireless Application Environment, WAE) |
| Pila de protocolos WAP | Protocolo inalámbrico de sesión (Wireless Session Protocol, WSP) |
| Pila de protocolos WAP | Protocolo inalámbrico de transporte (Wireless Transaction Protocol, WTP) |
| Pila de protocolos WAP | Seguridad de capa de transporte inalámbrica (Wireless Transport Layer Security, WTLS) |
| Pila de protocolos WAP | Protocolo inalámbrico de datagramas (Wireless Datagram Protocol, WDP) |
| Pila de protocolos WAP | *** Cualquier red inalámbrica de datos *** |
* El protocolo inferior de la pila, el WDP, funciona como una capa de adaptación que hace que cualquier red de datos se asemeje al UDP al proveer al poco fiable transporte de datos con dos números de puerto de 16 bits (origen y destino).
* WTLS es una capa opcional que proporciona un mecanismo de seguridad basado en la criptografía de clave pública similar a TLS.
* WTP proporciona soporte de transacciones (gestión fiable de peticiones y respuestas) adaptada al entorno inalámbrico. Aborda de forma más efectiva que TCP la pérdida de paquetes, un problema que se produce a menudo en las tecnologías inalámbricas 2G, pero que TCP interpreta erróneamente como una congestión de red.
* Esta pila de protocolos permite a una terminal transmitir peticiones con el equivalente a HTTP o HTTPS a una puerta de enlace WAP, que traduce estas peticiones a HTTP simple.
* El entorno inalámbrico de aplicación (WAE) define lenguajes de marcado específicos de aplicación. Para WAP versión 1.x, el lenguaje predeterminado es Wireless Markup Language (WML). En WAP 2.0, se trata de XHTML Mobile Profile.

### WAP Push

WAP Push fue incorporado a la especificación para permitir que se empujase el contenido WAP al dispositivo móvil con intervención mínima por parte del usuario. Un mensaje WAP Push es básicamente un mensaje especialmente codificado que incluye un enlace a una dirección WAP.
WAP Push fue definido encima de WDP. Como tal, se puede transmitir sobre cualquier red compatible con WDP, como GPRS y SMS. Esta segunda fue la más utilizada.
Mediante esta tecnología, el usuario podía acceder mediante uno o varios SMS a la descarga de contenido alojado en un servidor WAP: aplicaciones Java, imágenes, melodías polifónicas, videos, etc. El funcionamiento se basa en una estructura XML que contiene la dirección o URL del contenido, la cual es compilada y enviada como un SMS binario. Este mensaje es interpretado como una página WAP que es abierta por el navegador del teléfono móvil, permitiendo descargar el contenido enlazado.

## Historia
### Versión 1.x

En la versión 1 de WAP, el lenguaje de presentación de contenidos es el WML (Wireless Markup Language). La pila de protocolos de WAP 1 no es compatible directamente con la de Internet: WSP (Wireless Session Protocol), WTP (Wireless Transaction Protocol), WTLS (Wireless Transport Layer Security), y WDP (Wireless Datagram Protocol). WDP corresponde a la capa de transporte, con funcionalidad equivalente al protocolo User Datagram Protocol (UDP) de Internet, y se apoya en los servicios de la "portadora" WAP, que depende de la red móvil que esté usando el terminal. WAP 1 además define la interfaz de acceso de las aplicaciones a las funciones de telefonía del terminal con WTAI (Wireless Telephony Application Interface), y también un sencillo lenguaje de "scripting", WMLScript, basado en ECMAscript/JavaScript.
La incompatibilidad de la pila de protocolos WAP 1 con la de Internet exige la presencia de un nodo pasarela para hacer de intermediario en la comunicación entre un terminal WAP y un servidor de contenidos WAP residente en Internet. WAP 1 ha sido objeto de fuertes críticas por diversos motivos, que incluyen la pobreza del soporte gráfico (gráficos monocromos WBMP, Wireless Bitmap), las diferencias en las implantaciones de WAP en los terminales de distintos fabricantes, y un potencial problema de seguridad debido a que WTLS no es muy robusto y además, por no ser compatible con las capas de seguridad usadas en Internet, en la pasarela WAP los contenidos deben estar en claro.

### Versión 2.0

Una versión rediseñada 2.0 salió en 2002. Utiliza XHTML-MP (XHTML Mobile Profile), un subconjunto de XHTML que incluye el XHTML básico, y WCSS (WAP CSS), un subconjunto de CSS2 más ciertas extensiones específicas para móviles, como lenguajes para la presentación de contenidos mejorando por ejemplo el soporte de los gráficos (incluye color). De esta forma se consigue que el diseño de contenidos con WAP 2.0 sea muy similar a diseño de contenidos para la WWW para navegadores en dispositivos no móviles. En cuanto a los protocolos usados, en la capa de transporte se usa Transmission Control Protocol (TCP) y en la de aplicación, HTTP. Así pues, WAP 2.0 ha adoptado los protocolos de Internet. WAP 2.0 además especifica opciones tanto en TCP como en HTTP para mejorar las prestaciones de dichos protocolos sobre redes de comunicaciones móviles. Los mecanismos de seguridad usados ya son compatibles con los de Internet por lo que los problemas de seguridad de WAP 1 se resuelven. La pasarela WAP no es estrictamente necesaria en WAP 2.0, pero su presencia puede tener funciones útiles, como caché web y para dar soporte a las opciones de TCP y HTTP antes mencionadas.

## Navegación y servicios

La tecnología WAP permite que los usuarios de estos dispositivos puedan acceder a servicios disponibles en Internet. Sin embargo, existen algunas consideraciones a tener en cuenta al diseñar estos servicios para usuarios móviles, fundamentalmente debidas a las características de los terminales: pantalla significativamente más pequeña que la de un ordenador personal, teclados más limitados que los de un ordenador, limitaciones en la memoria disponible, tanto memoria RAM como memoria para almacenamiento persistente, y limitaciones en la capacidad del procesador, en comparación con la memoria y procesador de un ordenador personal típico. Las redes de telefonía móvil ofrecen también unas prestaciones por lo general menores que los accesos a Internet, si bien mejoran con las redes de tercera generación como UMTS.
La Navegación WAP generalmente en muchos terminales o celulares es activado por el proveedor del servicio de telefonía móvil de cada país, el costo por navegación varía algunos por volumen de datos usado y otros casos por hora aire (el tiempo de navegación), la oferta de información vía WAP es preparada y exclusivamente para aquellos que deseen navegar por medio del celular, son versiones especiales de sitios en algunos casos que ya existen y en otros casos solo son creados para navegantes wap.

## Otras tecnologías relacionadas

I-mode es un entorno de aplicaciones con objetivos similares a WAP, y que ha tenido un gran éxito en su país de origen, Japón.
Una tecnología complementaria es J2ME (Java2 MicroEdition). J2ME es una plataforma Java especialmente orientada a dispositivos con capacidades más reducidas que las de un ordenador personal. Dispone de varios perfiles; uno de ellos, el perfil MIDP (Mobile Information Device Profile), es especialmente adecuado para teléfonos móviles. J2ME es una plataforma orientada a la ejecución de aplicaciones en el terminal móvil (aunque pueden trabajar en modo cliente-servidor interactuando con servidores en red), mientras que WAP está orientada fundamentalmente a la presentación de contenidos en el terminal (las aplicaciones se ejecutan en el servidor, y en el terminal se presenta la información y se introducen datos por parte del usuario, dado el caso).