Story Transcript
ESCUELA POLITÉCNICA INGENIERÍA EN ELECTRÓNICA MODELOS DE ARQUITECTURAS TELEMÁTICAS 1999/2000
Prácticas de documentación: WAP Índice: 1 El Protocolo de Aplicaciones Inalámbricas • El Protocolo de Aplicaciones Inalámbricas • Introducción El Protocolo de Aplicaciones Inalámbricas surge como la combinación de dos tecnologías: Las Comunicaciones Inalámbricas e Internet. Mas allá de la posibilidad de acceder a los servicios de información contenidos en Internet, el protocolo pretende proveer de servicios avanzados adicionales como, por ejemplo, el desvío de llamadas inteligente, en el cual se proporcione una interfaz al usuario en el que se le pregunte la acción que desea realizar: aceptar la llamada, desviarla a otra persona, desviarla a un buzón vocal, etc. Para ello, se parte de una arquitectura basada en la arquitectura definida para el World Wide Web (WWW), pero adaptada a los nuevos requisitos del sistema. En la siguiente figura se muestra el esquema de la arquitectura WAP.
1
Figura 1: Modelo de funcionamiento del WAP En el terminal inalámbrico existiría un micro navegador encargado de la coordinación con la pasarela. Esta se encarga de realizar peticiones de información que son tratadas y redirigidas al servidor de información adecuado. Una vez procesada la petición de información en el servidor, se envía esta información a la pasarela que de nuevo la procesa para enviarla al terminal inalámbrico. Para conseguir consistencia en la comunicación entre el terminal móvil y los servidores de red que proporcionan la información, WAP define un conjunto de componentes estándar: • Un modelo de nombres estándar. Se utilizan las URIs definidas en WWW para identificar los recursos locales del dispositivo (tales como funciones de control de llamada) y las URLs (también definidas en el WWW) para identificar el contenido WAP en los servidores de información. • Un formato de contenido estándar, basado en la tecnología WWW. • Unos protocolos de comunicación estándares, que permitan la comunicación del micro navegador del terminal móvil con el servidor Web en red. En la siguiente figura se muestra un esquema de funcionamiento global:
2
Figura 2: Ejemplo de una red WAP En el ejemplo de la figura, nuestro terminal móvil tiene dos posibilidades de conexión: a un proxy WAP, o a un servidor WTA. El primero de ellos, el proxy WAP traduce las peticiones WAP a peticiones Web, de forma que el cliente WAP (el terminal inalámbrico) pueda realizar peticiones de información al servidor Web. Adicionalmente, este proxy codifica las respuestas del servidor Web en un formato binario compacto, que es interpretable por el cliente. Por otra parte, el segundo de ellos, el Servidor WTA está pensado para proporcionar acceso WAP a las facilidades proporcionadas por la infraestructura de telecomunicaciones del proveedor de conexiones de red. • Componentes de la Arquitectura WAP Una vez introducido el sistema, vamos a ver la arquitectura que le da consistencia. La arquitectura WAP está pensada para proporcionar un entorno escalable y extensible para el desarrollo de aplicaciones para dispositivos de comunicación móvil. Para ello, se define una estructura en capas, en la cual cada capa es accesible por la capa superior así como por otros servicios y aplicaciones a través de un conjunto de interfaces muy bien definidos y especificados. Este esquema de capas de la arquitectura WAP la podemos ver en la siguiente figura:
3
Figura 3: Arquitectura de WAP Hagamos un recorrido por estas capas de forma breve, antes de pasar a analizarlas con más profundidad. • Capa de Aplicación (WAE) El Entorno Inalámbrico de Aplicación (WAE) es un entorno de aplicación de propósito general basado en la combinación del World Wide Web y tecnologías de Comunicaciones Móviles. Este entorno incluye un micro navegador, del cual ya hemos hablado anteriormente, que posee las siguientes funcionalidades: • Un lenguaje denominado WML similar al HTML, pero optimizado para su uso en terminales móviles. • Un lenguaje denominado WMLScript, similar al JavaScript (esto es, un lenguaje para su uso en forma de Script) • Un conjunto de formatos de contenido, que son un conjunto de formatos de datos bien definidos entre los que se encuentran imágenes, entradas en la agenda de teléfonos e información de calendario. • Capa de Sesión (WSP) El Protocolo Inalámbrico de Sesión (WSP) proporciona a la Capa de Aplicación de WAP interfaz con dos servicios de sesión: Un servicio orientado a conexión que funciona por encima de la Capa de Transacciones y un servicio no orientado a conexión que funciona por encima de la Capa de Transporte (y que proporciona servicio de datagramas seguro o servicio de datagramas no seguro). Actualmente, esta capa consiste en servicios adaptados a aplicaciones basadas en la navegación Web, proporcionando las siguientes funcionalidades: • Semántica y funcionalidades del HTTP/1.1 en una codificación compacta. • Negociación de las características del Protocolo. 4
• Suspensión de la Sesión y reanudación de la misma con cambio de sesión. • Capa de Transacciones (WTP) El Protocolo Inalámbrico de Transacción (WTP) funciona por encima de un servicio de datagramas, tanto seguros como no seguros, proporcionando las siguientes funcionalidades: • Tres clases de servicio de transacciones: • Peticiones inseguras de un solo camino. • Peticiones seguras de un solo camino. • Transacciones seguras de dos caminos (petición−respuesta) • Seguridad usuario−a−usuario opcional. • Transacciones asíncronas. • Capa de Seguridad (WTLS) La Capa Inalámbrica de Seguridad de Transporte (WTLS) es un protocolo basado en el estándar SSL, utilizado en el entorno Web para la proporción de seguridad en la realización de transferencias de datos. Este protocolo ha sido especialmente diseñado para los protocolos de transporte de WAP y optimizado para ser utilizado en canales de comunicación de banda estrecha. Para este protocolo se han definido las siguientes características: • Integridad de los datos. Este protocolo asegura que los datos intercambiados entre el terminal y un servidor de aplicaciones no ha sido modificada y no es información corrupta. • Privacidad de los datos. Este protocolo asegura que la información intercambiada entre el terminal y un servidor de aplicaciones no puede ser entendida por terceras partes que puedan interceptar el flujo de datos. • Autentificación. Este protocolo contiene servicios para establecer la autenticidad del terminal y del servidor de aplicaciones. Adicionalmente, el WTLS puede ser utilizado para la realización de comunicación segura entre terminales, por ejemplo en el caso de operaciones de comercio electrónico entre terminales móviles. • Capa de Transporte (WDP) El Protocolo Inalámbrico de Datagramas (WDP) proporciona un servicio fiable a los protocolos de las capas superiores de WAP y permite la comunicación de forma transparente sobre los protocolos portadores válidos. Debido a que este protocolo proporciona un interfaz común a los protocolos de las capas superiores, las capas de Seguridad, Sesión y Aplicación pueden trabajar independientemente de la red inalámbrica que dé soporte al sistema. Antes de pasar a estudiar en más profundidad cada uno de estos protocolos, veamos tres ejemplos de interconexión de estas capas en la siguiente figura:
5
Figura 4: Ejemplo de capas en WAP Así pues, dependiendo de la aplicación en cuestión, la comunicación se realizará con una determinada capa de la estructura de WAP. • El Entorno Inalámbrico de Aplicaciones El objetivo del Entorno Inalámbrico de Aplicaciones es construir un entorno de aplicación de propósito general, basado fundamentalmente en la filosofía y tecnología del World Wide Web (WWW). Principalmente, se pretende establecer un entorno que permita a los operadores y proveedores de servicios construir aplicaciones y servicios que puedan utilizarse en una amplia variedad de plataformas inalámbricas de forma útil y eficiente. De esta forma, la arquitectura del Entorno Inalámbrico de Aplicaciones (en adelante WAE) está enfocado principalmente sobre los aspectos del cliente de la arquitectura del sistema de WAP, esto es, de los puntos relacionados con los agentes de usuario. Esto es debido a que la parte que más interesa de la arquitectura es aquella que afecta principalmente a los terminales móviles, esto es, a aquellos puntos en los cuales van a estar ejecutándose los diversos agentes de usuario. Si volvemos sobre la Figura 1, vemos que entre los agentes de usuario localizados en el cliente (en el terminal móvil) y los servidores de información se define un nuevo elemento: Las Pasarelas. Su función es codificar y decodificar la información intercambiada con el cliente, para así minimizar la cantidad de datos radiados, así como minimizar el proceso de la información por parte del cliente. Tal y como podemos observar en la siguiente figura, se divide en dos capas lógicas:
6
Figura 5: Componentes del Cliente de WAE • Los Agentes de Usuario, que incluye aquellos elementos como navegadores, agendas telefónicas, editores de mensajes, etc. • Los Servicios y Formatos, que incluyen todos aquellos elementos y formatos comunes, accesibles a los Agentes de Usuario, tales como WML, WMLScript, formatos de imagen, etc. Como se puede ver en la Figura, dentro de WAE se separan Servicios de Agentes de Usuario, lo que proporciona flexibilidad para combinar varios Servicios dentro de un único Agente de Usuario, o para distribuir los Servicios entre varios Agentes de Usuario. Los dos Agentes de Usuario más importantes son el Agente de Usuario para WML y el Agente de Usuario para WTA. El Agente de Usuario para WML es el Agente de Usuario fundamental en la arquitectura del Entorno Inalámbrico de Aplicación. A pesar de su importancia, este Agente de Usuario no está definido formalmente dentro de esta arquitectura, ya que sus características y capacidades se dejan en manos de los encargados de su implementación. El único requisito de funcionalidad que debe cumplir este Agente de Usuario, es el proporcionar un sistema intérprete a los lenguajes WML y WMLScript, de forma que se permita la navegación desde el terminal móvil. Por otra parte, el Agente de Usuario para WTA permite a los autores acceder e interactuar con las características de los teléfonos móviles (p. e. Control de Llamada), así como otras aplicaciones supuestas en los teléfonos, tales como agendas de teléfono y aplicaciones de calendario.
7
• El Protocolo Inalámbrico de Sesión El Protocolo Inalámbrico de Sesión constituye la capa que se sitúa por debajo de la capa de Aplicación, proporcionando la capacidad necesaria para: • Establecer una conexión fiable entre el cliente y el servidor, y liberar esta conexión de una forma ordenada. • Ponerse de acuerdo en un nivel común de funcionalidades del protocolo, a través de la negociación de las posibilidades. • Intercambiar contenido entre el cliente y el servidor utilizando codificación compacta. • Suspender y recuperar la sesión. Hoy por hoy, este protocolo ha sido definido únicamente para el caso de la navegación, definiéndose como WSP/B. Esta implementación está realizada para el establecimiento de una conexión sobre la base de un protocolo compatible con HTTP1.1. De esta forma, se han definido un conjunto de primitivas de servicio para permitir la comunicación entre la capa de sesión integrada dentro del equipo cliente y la capa de sesión integrada en el equipo servidor. Estas primitivas, junto con una pequeña descripción de las mismas, puede verse en la Tabla 1: Nombre S−Connect S−Disconnect S−Suspend S−Resume S−Exception S−MethodInvoke S−MethodResult S−MethodAbort S−Push S−ConfirmedPush S−PushAbort
Descripción Esta primitiva se utiliza para iniciar el establecimiento de la conexión, y para la notificación de su éxito Esta primitiva se utiliza para desconectar una sesión, y para notificar al usuario de una sesión que esa sesión no se puede establecer, que ha sido desconectada Esta primitiva se utiliza para solicitar la suspensión de la sesión Esta primitiva se utiliza para solicitar que se recupere la sesión utilizando para las direcciones el nuevo identificador de punto de acceso de servicio. Esta primitiva se utiliza para notificar aquellos eventos que no están asignados a una transacción en particular, ni provocan la desconexión o suspensión de la sesión. Esta primitiva se utiliza para solicitar una operación que deba ser ejecutada en el servidor. Esta primitiva se utiliza para devolver una respuesta a una petición de operación. Esta primitiva se utiliza para abortar una solicitud de ejecución de operación, que no haya sido aún completada. Esta primitiva se utiliza para enviar información no solicitada desde el servidor, dentro del contexto de una sesión de forma y sin confirmación. Esta primitiva realiza las mismas funciones que la anterior, pero con confirmación. Esta primitiva se utiliza para anular una primitiva anterior del tipo S−Push o S−ConfirmedPush.
Tabla 1: Primitivas de Servicio de Sesión Adicionalmente, existen cuatro tipos de cada una de estas primitivas, tal y como puede verse en la Tabla 2: Tipo
Abreviación
Descripción
8
Request
req
Indication
ind
Response
res
Confirm
cnf
Se utiliza cuando una capa superior solicita un servicio de la capa inmediatamente inferior Una capa que solicita un servicio utiliza este tipo de primitiva para notificar a la capa inmediatamente superior de las actividades relacionadas con su par, o con el proveedor del servicio Este tipo de primitiva se utiliza para reconocer la recepción de la primitiva de tipo Indication de la capa inmediatamente inferior La capa que proporciona el servicio requerido utiliza este tipo de primitiva para notificar que la actividad ha sido completada satisfactoriamente.
Tabla 2: Tipos de Primitivas de Servicio. Por último, reseñar que cada una de estas primitivas está perfectamente definida dentro de la especificación, tanto desde el punto de vista del diagrama de tiempos en el que se tienen que invocar las primitivas, como desde el punto de vista de los parámetros intercambiados. • El Protocolo Inalámbrico de Transacción El Protocolo Inalámbrico de Transacción se establece para proporcionar los servicios necesarios que soporten aplicaciones de navegación (del tipo petición/respuesta). Es a este dúo petición/respuesta, lo que vamos a denominar como transacción. Este protocolo se sitúa por encima del Protocolo Inalámbrico de Datagramas y, de forma opcional, de la Capa Inalámbrica de Seguridad de Transporte, que serán estudiados posteriormente. Las características de este protocolo son: • Proporciona tres clases de servicios de transacción: • Clase 0: mensaje de solicitud no seguro, sin mensaje de resultado. • Clase 1: mensaje de solicitud seguro, sin mensaje de resultado. • Clase 2: mensaje de solicitud seguro, con, exactamente, un mensaje de resultado seguro. • La seguridad se consigue a través del uso de identificadores únicos de transacción, asentimientos, eliminación de duplicados y retransmisiones. • Seguridad opcional usuario a usuario. • De forma opcional, el último asentimiento de la transacción puede contener algún tipo de información adicional relacionada con la transacción, como medidas de prestaciones, etc. • Se proporcionan mecanismos para minimizar el número de transacciones que se reenvían como resultado de paquetes duplicados. • Se permiten las transacciones asíncronas. Al igual que en el protocolo anterior (el protocolo inalámbrico de sección), en la Tabla 3 vamos a ver las primitivas de servicio que sustentan la comunicación entre dos capas de transacciones situadas en dos equipos distintos: Nombre TR−Invoke TR−Result TR−Abort
Descripción Esta primitiva se utiliza para iniciar una nueva transacción. Esta primitiva se utiliza para devolver el resultado de transacción iniciada anteriormente Esta primitiva se utiliza para abortar una transacción existente
Tabla 3: Primitivas de Servicio de Transacción
9
A modo de ejemplo, vamos a ver en la Figura 6 la concatenación de Primitivas de Servicio de Sesión y de Transacción para el caso de una petición−respuesta:
Figura 6: Ejemplo intercambio de primitivas entre capa Sesión y Transacción Para finalizar, vamos a detallar un poco más las principales características de este protocolo: • Transferencia de Mensajes.Dentro de este protocolo se distinguen dos tipos de mensajes: mensajes de datos y mensajes de control. Los mensajes de datos transportan únicamente datos de usuario, mientras que los mensajes de control se utilizan para los asentimientos, informes de error, etc. pero sin transportar datos de usuario. • Retransmisión hasta el asentimiento. Esta característica se utiliza para la transferencia fiable de datos desde un proveedor WTP a otro, en caso que haya pérdida de paquetes. A modo de comentario, dejar claro que para reducir lo máximo posible el número de paquetes que se transmiten, este protocolo utiliza asentimiento explícito siempre que sea posible. • Asentimiento de usuario. El Asentimiento de Usuario permite al usuario de este protocolo, confirmar cada mensaje recibido por el proveedor WTP. • Información en el Último Asentimiento. Se permite, así pues, enviar información en el último, y únicamente en el último, asentimiento de una transacción. De esta forma, se puede enviar, por ejemplo, información del rendimiento proporcionado por el sistema durante la transacción realizada, etc. • Concatenación y Separación. Podemos definir concatenación como el proceso de trasmitir múltiples Unidades de Datos del Protocolo (PDU) de WTP en una Unidad de Datos del Servicio (SDU) de la red portadora. Por el contrario, separación es el proceso de separar múltiples PDUs de un único SDU (esto es, el proceso inverso al anterior). El objetivo de estos sistemas es proveer eficiencia en la transmisión inalámbrica, al requerirse un menor número de transmisiones. • Transacciones Asíncronas. Para un correcto funcionamiento del protocolo, múltiples transacciones deben ser procesadas de forma asíncrona, debe ser capaz de iniciar múltiples transacciones antes que 10
reciba la respuesta a la primera transacción. • Identificador de la Transacción. Cada transacción está identificada de forma única por los pares de direcciones de los sockets (Dirección fuente, puerto fuente, dirección destino y puerto destino) y por el Identificador de Transacción (TID), el cual se incrementa para cada una de las transacciones iniciadas. Este número es de 16 bits, utilizándose el bit de mayor orden para indicar la dirección. • Segmentación y re−ensamblado. (opcional). Si la longitud del mensaje supera la Unidad Máxima de Transferencia (MTU), el mensaje puede ser segmentado por el WTP y enviado en múltiples paquetes. Cuando esta operación se realiza, estos paquetes pueden ser enviados y asentidos en grupos. De esta forma, el emisor puede realizar control de flujo cambiando el tamaño de los grupos de mensajes dependiendo de las características de la red. • La Capa Inalámbrica de Seguridad de Transporte La Capa Inalámbrica de Seguridad de Transporte (en adelante WTLS), constituye una capa modular, que depende del nivel de seguridad requerido por una determinada aplicación. Esta capa proporciona a las capas de nivel superior de WAP de una interfaz de servicio de transporte seguro, que lo resguarde de una interfaz de transporte inferior. El principal objetivo de esta capa es proporcionar privacidad, integridad de datos y autentificación entre dos aplicaciones que se comuniquen. Adicionalmente, la WTLS proporciona una interfaz para el manejo de conexiones seguras. Al igual que hemos hecho en los protocolos anteriores, en la Tabla 4 vamos a ver las primitivas de servicio que sustentan la comunicación entre dos capas situadas en dos equipos distintos: Nombre SEC−Unitdata SEC−Create SEC−Exchange SEC−Commit SEC−Terminate SEC−Exception SEC−Create−Request
Descripción Esta primitiva se utiliza para intercambiar datos de usuario entre los dos participantes. Sólo puede ser invocada cuando existe previamente una conexión segura entre las direcciones de transporte de los dos participantes. Esta primitiva se utiliza para iniciar el establecimiento de una conexión segura. Esta primitiva se utiliza en la creación de una conexión segura si el servidor desea utilizar autentificación de clave pública o intercambio de claves con el cliente. Esta primitiva se inicia cuando el handshake se completa y cualquiera de los equipos participantes solicita cambiar a un nuevo estado de conexión negociado. Esta primitiva se utiliza para finalizar la conexión. Esta primitiva se utiliza para informar al otro extremo sobre las alertas de nivel de aviso. Esta primitiva se utiliza por el servidor para solicitar al cliente que inicie un nuevo handshake.
Tabla 4: Primitivas de Servicio de Capa de Seguridad Hemos hablado anteriormente del proceso de establecimiento de una sesión segura o handshake. En la siguiente figura podemos ver este intercambio de primitivas:
11
Figura 7: Secuencia de Primitivas para el establecimiento de una sesión segura • El Protocolo Inalámbrico de Datagramas El Protocolo Inalámbrico de Datagramas (en adelante WDP) ofrece un servicio consistente al protocolo (Seguridad, Transacción y Sesión) de la capa superior de WAP, comunicándose de forma transparente sobre uno de los servicios portadores disponibles. Este protocolo ofrece servicios a los protocolos superiores del estilo a direccionamiento por numero de puerto, segmentación y re−ensamblado opcional y detección de errores opcional, de forma que se permite a las aplicaciones de usuario funcionar de forma transparente sobre distintos servicios portadores disponibles. Para ello, se plantea una arquitectura de protocolo como el que se muestra en la siguiente figura:
12
Figura 8: Arquitectura del Protocolo Inalámbrico de Datagramas Al igual que hemos hecho en los protocolos anteriores, en la Tabla 5 vamos a ver las primitivas de servicio que se utilizan en este protocolo: Nombre T−DUnitdata T−DError
Descripción Esta primitiva es la utilizada para transmitir datos como datagramas. No requiere que exista una conexión para establecerse. Esta primitiva se utiliza para proporcionar información a la capa superior cuando ocurre un error que pueda influenciar en el servicio requerido.
Tabla 5: Primitivas de Servicio de la Capa de Datagramas Por último, vamos a ver la arquitectura de este protocolo dentro de la arquitectura global de WAP, para el caso de utilizarse GSM como servicio portador, que es el protocolo que más nos puede interesar por su amplia implantación en los sistemas de comunicaciones móviles telefónicas existentes hoy en día.
13
Figura 9: WDP sobre GSM SMS
Figura 10: WDP sobre GSM Canal de Datos de Circuitos Conmutados
14
Figura 11: WDP sobre Servicios Portadores CDMA • Arquitectura de gateways. • Introducción El entramado Push de WAP introduce cierto significado en el esfuerzo de WAP por transmitir información a un dispositivo sin la acción previa del usuario. En el modelo normal de cliente/servidor, un cliente pide un servicio o información de un servidor, que responde transmitiendo información al cliente. Esto es conocido como la tecnología pull: El cliente recoge (pulls) información del servidor. La World Wide Web es un ejemplo típico de la tecnología pull, donde un usuario introduce un URL (la petición) que es enviada a un servidor, y el servidor responde enviando una página Web (la respuesta) al usuario. A diferencia de esto, existe también la tecnología push, que está basada en el modelo cliente/servidor, pero en la que no hay una petición explícita del cliente antes de que el servidor transmita su contenido.
Otra manera de decir esto es que, mientras las transacciones pull son iniciadas por el cliente, las push son iniciadas por el servidor. • El Entramado Push
15
Una operación Push en WAP ocurre cuando un Iniciador Push transmite el contenido a un cliente usando tanto el Protocolo Push Over−the−Air (Push Over−the−Air Protocol) como el Protocolo de Acceso Push (Push Access Protocol). En su forma más simple, la arquitectura sería de esta manera:
Sin embargo, el Iniciador Push (Push Initiator) no comparte el mismo protocolo de comunicaciones con el cliente WAP: El iniciador Push está en Internet, y el cliente WAP pertenece al dominio WAP. De esta manera, el Iniciador Push no puede contactar con el cliente WAP a menos que exista un intermediario, de manera que necesitaremos introducir una pasarela intermediaria.
El Iniciador Push contacta con la PPG desde Internet, enviando el contenido hacia el cliente destino utilizando los protocolos de Internet. La PPG hace lo necesario para dirigir el contenido al dominio WAP, dicho contenido es entonces transmitido sobre el aire en la red móvil hacia el cliente destino. Adicionalmente a proporcionar estos servicios simples, la PPG es capaz de notificar al Iniciador Push acerca del estado final de la operación, y podría esperar a que el cliente aceptase o rechazase el contenido en redes móviles con dos sentidos. Puede también proporcionar al Iniciador Push servicios de información de las capacidades del cliente, dejando al Iniciador Push la selección de un contenido particular para un cliente particular. El acceso a la PPG desde Internet se hace con el Protocolo de Acceso Push (PAP). La parte correspondiente a WAP (OTA) utiliza el Protocolo Push OTA. Un esquema sería el siguiente:
16
El Protocolo de Acceso Push utiliza mensajes XML que podrían encapsularse utilizando diversos protocolos de Internet, tales como HTTP. El Protocolo OTA está basado en servicios WSP. Todas estas entidades son discutidas en las siguientes secciones. • La Pasarela Intermediaria Push La pasarela intermediaria push (Push Proxy Gateway PPG) es la entidad que hace la mayoría del trabajo en la arquitectura push. Sus responsabilidades incluyen actuar como un punto de acceso para enviar contenido desde Internet a la red móvil, y todo aquello relativo a autenticación, seguridad, control de clientes, etc.
Como la PPG es el punto de acceso a la red móvil, el administrador de la plataforma es el que decide cuáles son las políticas por las que alguien puede ganar el acceso a la red WAP, enviar contenidos o no y bajo que circunstancias. Hay que indicar que toda la funcionalidad de la PPG puede ser integrada dentro de la propia pasarela WAP (ver Arquitectura WAP). De esta manera se compartirían recursos y sesiones con los clientes. • Revisión De Los Servicios Los sistemas PPG hospedan todo el entramado push utilizando diferentes servicios. El primero y principal es el punto de entrada del contenido push desde Internet con destino al dominio WAP. Esto significa que es capaz de hacer lo siguiente: • Selección y detección de errores en la información de control del contenido. • Descubrimiento de servicios de clientes. • Resolución de direcciones. • Codificación binaria y compilación de ciertos tipos de contenido con el objetivo de mejorar la eficiencia OTA. • Conversión de protocolos. • Acceso Desde Internet
17
La PPG acepta contenidos enviados desde Internet usando el Protocolo de Acceso Push: PAP (ver sección 8). El contenido es dividido entre distintas secciones usando un tipo de contenido multiparte, en el que la primera parte contiene información destinada a la PPG. Dicha información contiene datos del destinatario, tiempo límite, peticiones de retrollamada y piezas similares de información. La PPG reconocerá el parseo exitoso (o no) de esta información de control y puede adicionalmente reportar información de depuración del contenido en sí mismo. Puede incluso hacer una retrollamada al servidor que envió la información cuando el estado final del envío push haya sido alcanzado (enviado, cancelado, expirado, etc.), siempre según las indicaciones del Iniciador Push. • Manejo Del Servicio De Mensajes Una vez que el contenido ha sido aceptado para ser entregado, la PPG intenta encontrar el camino correcto hacia el dispositivo y entregar el contenido al cliente utilizando el Protocolo Push sobreelaire Push OTA. La PPG intentará entregar el contenido mientras no venza un temporizador. Dicho temporizador puede haber sido especificado por el Iniciador Push o por las políticas del operador. El resultado de esta función es una operación asíncrona desde el punto de vista del Iniciador Push, ya que el Iniciador no necesita esperar en línea a que la PPG haya completado la entrega. • Codificación Y Compilación La PPG puede codificar contenidos WAP tales como WML y SI utilizando equivalencias binarias si fuera factible. Esta traducción textual−a−binario tendría lugar antes de la entrega sobre−el −aire. Otros contenidos como aplicaciones, específicas o arbitrarias, serán enviados tal y como se han recibido. El Iniciador Push puede a su vez precompilar su contenido en formato binario, y de esta manera descargar a la PPG. Cuando la PPG recibe este tipo de contenidos en formato binario, los envía tal y como los recibió. • Envíos Múltiples, Por Difusión O Por Alias La PPG puede implementar alias para habilitar envíos múltiples o de difusión en las que direcciones especiales se utilizan como direcciones de difusión. Esta implementación se ha cedido a los desarrolladores de la PPG. • Petición De Información De Las Capacidades Del Cliente Un Iniciador Push puede preguntar a la PPG las capacidades y preferencias del cliente para así crear contenidos mejor formateados para un terminal particular. • El Protocolo De Acceso Push Es el protocolo por el que un Iniciador Push que opera en Internet envía un contenido a la red móvil utilizando ladirección de su PPG. Se ha tenido cuidado para que este protocolo pueda ser encapsuladoa través de cualquier protocolo futuro o existente en Internet. Actualmente se utiliza HTTP.
18
• Estructura General PAP porta una entidad del estilo XML que puede estar unida a otros componentes en un documento multiparte. • Operaciones Pap PAP soporta las siguientes operaciones: • Presentación Push (Del Iniciador a la PPG). • Notificación del Resultado (De la PPG al Iniciador). • Cancelación de la Operación Push (Del Iniciador a la PPG). • Consulta del Estado (Del Iniciador a la PPG). • Capacidades del Cliente (Del Iniciador a la PPG). • El Envío Push El mensaje push contiene tres entidades: una entidad de control, una de contenido y opcionalmente una de capacidades. Estas se unen en un mensaje multiparte, que envía el Iniciador Push a la PPG. La entidad de control es un documento XML que contiene instrucciones de entrega destinadas a la PPG, mientras que la entidad de contenido está destinada al terminal móvil. La PPG puede o no convertir este contenido a un formato más optimizado para su envío sobre−el−aire. WML puede ser codificado en WML−C; Otros tipos de contenido serán completamente desconocidos para la PPG, o incluso vendrán encriptados, de manera que sólo pueden ser usados por el terminal móvil. La entidad opcional de capacidades contiene las capacidades del cliente para las que el mensaje fue formateado, en formato UAPROF [UAPROF]. El Iniciador Push puede crear esta entidad para indicar cuáles son las capacidades que cree que tiene el cliente. • Confirmación De Notificación Si el Iniciador Push ha pedido confirmación de la entrega, este mensaje se transmite de la PPG al iniciador Push cuando el contenido ha sido entregado al terminal móvil (por una portadora de doble sentido) o transmitido al terminal (por una portadora de un sentido). Contiene una entidad XML. También se transmite en caso de detectar un fallo en la entrega, informando de ello al Iniciador. Un aspecto clave del entramado Push es la posibilidad que tiene el Iniciador Push de confiar en la respuesta de la PPG: un push confirmado es confirmado por el terminal WAP cuando (y no sólo cuando) la aplicación destino ha tomado el control del contenido enviado. Si no puede tomar este control, debe abortar la operación, y el Iniciador Push sabrá que el contenido nunca alcanzó su destino. No hay posibilidad dentro del entramado para falsas confirmaciones de entrega. • Ancelación De Push
19
Existe una entidad XML transmitida desde el Iniciador Push a la PPG, pidiendo la cancelación del contenido enviado previamente. La PPG responde con una entidad XML tanto si la cancelación fue satisfactoria, o no. • Consulta De Estado Existe una entidad XML transmitida del Iniciador Push a la PPG, pidiendo el estado del contenido enviado previamente. La PPG responde con una entidad XML. • Consulta De Capacidades Del Cliente Existe una entidad XML transmitida desde el Iniciador Push a la PPG pidiendo las capacidades de un terminal particular en la red (ver también Consulta de Capacidades del Cliente, sección 7.6). La PPG responde con un mensaje multiparte consistente en dos partes, la raíz multiparte, que es el resultado de la petición y una segunda parte, que son las capacidades del terminal definidas en formato UAPROF (Grupo de Perfiles deAgente de Usuario, User Agent Profiles Group). • Encapsulado Http PAP es transportado sobre HTTP/1.1, tal y como se ha definido en esta edición de Push en WAP. HTTP POST es usado para transmitir la información, y la transacción HTTP siempre devuelve el código 202 (aceptado para procesar) cuando la transacción HTTP es satisfactoria; El paquete de respuesta PAP puede contener, sin embargo, un error PAP. Hay que comparar cómo transporta SMTP las cabeceras de los mensajes. Versiones futuras pueden soportar otros protocolos portadores, como por ejemplo SMTP. La figura ilustra el modelo: el entramado ha sido construido para fácilmente incorporar otros protocolos, que PAP puede usar para encapsular en lugar de o en paralelo a HTTP. • La Indicación De Servicio La Indicación de Servicio (Service Indication SI) permite enviar notificaciones a los usuarios finales de manera asíncrona. Dichas notificaciones pueden ser, por ejemplo, avisos de nuevos correos, cambios en las cotizaciones de bolsa, indicaciones, recordatorios como por ejemplo bajo saldo del terminal prepago, etc. En la forma más básica, un SI contiene un pequeño mensaje y un URI indicando el servicio. El mensaje es presentado al usuario final nada más recibirse, y se le da al usuario la opción de empezar el servicio indicado en el URI inmediatamente, o posponer el SI para un tratamiento posterior. Si el SI se pospone, el cliente lo almacena y se le da la posibilidad al usuario de actuar sobre él posteriormente. • El Protocolo Push SobreElAire El protocolo Push sobreelaire (PushOTA) es un protocolo de arquitectura muy delgada por encima del WSP. Es esta parte del Entramado Push la que es responsable de transportar el contenido de la PPG al cliente y sus agentes de usuario.
20
El protocolo OTA puede usar sesiones WSP para entregar su contenido. Cada sesión push está asociada a una única dirección. Las conexiones push orientadas a conexión requieren que esté disponible una sesión WSP, pero esta sesión no puede ser creada por el servidor. Para resolver este caso donde no hay una sesión WSP activa, el Entramado Push introduce una Aplicación de Inicio de Sesión (SIA) en el cliente, que escucha las peticiones de los servidores OTA y responde creando una sesión de propósito push. El cliente puede verificar la identidad de la información en esta petición contra una lista de servidores OTA antes de intentar establecer ninguna sesión push. La entrega push puede también ser realizada sin el uso de sesiones, de manera no orientada a conexión. Esto es necesario en redes de un solo sentido. • La Infraestructura Del Cliente El Entramado Push requiere algunos mecanismos adicionales en el cliente. • La Aplicación De Inicio De Sesión (Sia) Una sesión push orientada a conexión requiere una sesión WSP activa. Sólo el cliente puede crear sesiones. Sin embargo, si el servidor hace una petición de una sesión push orientada a conexión al cliente, y no hay sesiones activas en el cliente, el servidor no podrá entregar el contenido push La acción del Entramado Push para resolver esta limitación es enviar una petición a una aplicación especial en el cliente conocida como la Aplicación de Inicio de Sesión (Session Initiation Application SIA). Esta petición contiene la información necesaria para que un cliente cree la sesión push. En cuanto la SIA del cliente recibe una petición de sesión, establece una sesión con la PPG, especificando qué aplicaciones aceptan contenido sobre la nueva sesión abierta. La SIA puede también ignorar la petición si no hay instalada una aplicación adecuada como la requerida en la petición de sesión. • El Distribuidor De Aplicaciones Cuando un cliente recibe un contenido push, un distribuidor busca en las cabeceras del mensaje push [PushMsg] para determinar la aplicación destino. Este distribuidor es responsable de rechazar el contenido que no tiene como destino una aplicación instalada, y de confirmar las operaciones push a la PPG cuando la aplicación apropiada ha tomado el control del contenido push. • Esquema de Direccionamiento Cuando de direcciona una transacción push, el direccionamiento puede hacerse en varios niveles. Para cualquier caso, la dirección push toma la forma:
21
WAPPUSH = Dirección /type=foo ppg.mobile.net (sin espacios en blanco). El conmutador de tipo (type) (siempre presente) indica el tipo de dirección. Para más información sobre los valores disponibles para tipo, ver la sección de direccionamiento de [PushPPG]. El direccionamiento puede hacerse al nivel de terminal, al nivel de usuario o al nivel de aplicación. De estos tres, los dos primeros utilizan la sintaxis direcciónconconmutación, mientras que el direccionamiento al nivel de aplicación es un poco más complicado. La parte correspondiente a ppg.mobile.net indica el nombre de la PPG en Internet. • Direccionamiento al Nivel de Aplicación Un Iniciador push puede direccionar el contenido a un agente de usuario específico en el terminal. Para identificar a este agente de usuario, se usa el identificador de aplicación (X−Wap−Application−Id) definido en [PushMsg]. Este identificador puede ser tanto un URI como un valor numérico. El identificador de aplicación es proporcionado por el Iniciador Push cuando el contenido push es enviado y eventualmente transmitido al cliente para que sea tratado por el agente de usuario apropiado. • Eficiencia OTA e Identificadores Numéricos Para mejorar la eficiencia sobreelaire, un identificador numérico puede ser usado en lugar de un URI. WINA [WINA] asignará números conocidos o especificado a los agentes de usuarios tales como WAE o WTA, y así evitar la sobrecarga de enviar un URI. El listado de identificadores numéricos asignados será publicado por WINA. Si se pide a la PPG enviar un contenido a una dirección de aplicación definida con un URI, en caso de tener un número WINA asignado, el URI será reemplazado por el identificador numérico. El iniciador push puede requerir como identificador numérico, un identificador que no esté registrado. No se recomienda utilizar este método con aplicaciones existentes debido a la posibilidad de colisiones. Principalmente está destinado a agentes de usuarios experimentales que todavía no han sido públicamente aceptados. • La lógica PPG La lógica en la PPG para determinar cuál es la identidad del agente de usuario es la siguiente: El Iniciador Push especifica un URI de aplicación, un código numérico de aplicación o ambos. Si se especifican ambos, el valor binario precede al URI; si un valor binario registrado para un URI específico existe, ese valor precede a ambos. El Iniciador Push puede especificar la identidad del agente de usuario en las cabeceras del contenido. • Push No Orientado a Conexión En el push no orientado a conexión, hay dos puertos en el cliente; uno seguro y otro inseguro, que aceptan envíos push y los reenvían al agente de usuario apropiado basándose en el identificador de aplicación. Todos los envíos push no orientados a conexión van dirigidos a uno de estos dos puertos del cliente. • Push Orientado a Conexión 22
El servidor OTA envía una petición de sesión que contiene los identificadores de aplicación para una Aplicación de Inicio de Sesión (SIA) en el cliente. El cliente responde tirando o estableciendo la sesión, indicando al servidor OTA para qué identificadores de aplicación acepta contenidos push. El cliente puede también establecer una sesión que acepte cualquier aplicación. Hay que indicar que las sesiones push pueden coincidir con las sesiones pull establecidas por el cliente; el cliente puede indicar capacidad push cuando se establezca una sesión pull. • Ejemplo Asumamos que la PPG tiene contenidos para una aplicación llamada Bar del cliente Foo Adicionalmente el Iniciador Push ha pedido confirmación del push. No hay sesión actualmente entre la PPG y el cliente Foo, de manera que la PPG necesita establecer una para usar los servicios de push confirmado WSP. La PPG construye una petición de sesión para Foo, indicando que quiere enviar aplicaciones Bar en una sesión push. La petición se envía a la Aplicación de Inicio de Sesión de Foo igual que cualquier otro contenido. El selector del cliente recibe la petición, toma nota del SIA y lo envía hacia delante. SIA al recibir la petición chequea si la aplicación destino está instalada en Foo y las preferencias del usuario. Detecta que la aplicación Bar está instalada en este cliente, de manera que el cliente establece la sesión para aceptar el push. Ahora, el dueño de este terminal particular no quiere exponer cuáles son las aplicaciones que tiene instaladas a nadie de la red. La SIA anota esto y comienza una sesión push con la PPG especificando que la sesión acepta contenidos para cualquier aplicación; si el usuario hubiera sido menos paranoico, todas las aplicaciones que puede utilizar esta sesión hubieran sido listadas. Una vez que la sesión se ha establecido, la PPG envía el push confirmado para esa sesión, y el selector del cliente observa que va dirigido a la aplicación Bar, pasándoselo a dicha aplicación. Cuando (y sólo cuando) la aplicación Bar toma el control del contenido del paquete (por ejemplo, cuando ha copiado satisfactoriamente el contenido del paquete en la memoria bajo el control de la aplicación), el push es confirmado en sentido contrario hacia el Iniciador Push. • Consideraciones de Seguridad Cuando se implementa push en WAP, la seguridad y los modelos de confianza entran en consideración en diferentes áreas. Estas son las preguntas que pueden aparecer: ♦ ¿Cómo se autentica un PI? ♦ ¿Qué papel juega la PPG en los modelos de confianza y seguridad? ♦ ¿Cuáles son las políticas de control de acceso para el Iniciador Push y el contenido? ♦ ¿Cómo puede un cliente autenticar algo si no tiene certificado? Prescindiendo de estos puntos, hay que tener en mente que el entramado push es capaz de proporcionar al cliente suficiente información para tener un modelo de confianza y una política de seguridad propia. • Autenticación del Iniciador Push Es importante autenticar a un Iniciador Push de una manera o de otra, dependiendo del entorno de seguridad en el que el Iniciador Push y la PPG están operando. Hay un listado de las posibles soluciones. 23
♦ Uso de Certificados al Nivel de Sesión (TLS, SSL). Si la red entre el PI y la PPG no es de confianza (p.e. Internet) TLS/SSL puede ser usado entre el PI y la PPG. ♦ Uso de Certificados al Nivel de Objetos (Contenido firmado y/o encriptado) Los certificados pueden usarse para firmar y/o encriptar el contenido push de extremo a extremo. Esto no envolvería a la PPG en el proceso de autenticación, y reforzaría la confidencialidad en la autenticidad del contenido en el cliente y el envío push. ♦ Autenticación HTTP Aunque el método más común de autenticación HTTP es el básico (usuario/password) otras maneras de autenticación HTTP (basado en digest) serían preferibles. Las mayores diferencias entre esta aproximación y el uso de certificados son que lo último es más fuerte en escalabilidad y confidencialidad, mientras que el indicado es más débil es estos aspectos. ♦ Combinación de Tecnologías Las tecnologías pueden ser combinadas. Por ejemplo el Iniciador Push puede establecer una conexión anónima TLS,SSL con la PPG, sobre la que se puedeautenticar al Iniciador Push utilizando la autenticación de HTTP . El contenido firmado y/o encriptado puede enviarse a través de esta sesión. ♦ Red de Confianza En muchas instalaciones del mundo real, la red entre el Iniciador Push y la PPG es privada. En estas instalaciones el Iniciador Push implícitamente es de confianza. • Delegación de Autenticación en el Cliente Esto se refiere al principio en el que la confianza puede ser transitiva. Si un cliente y una PPG establecen una confianza, la PPG puede autenticar a un Iniciador Push en cliente tiene una lista de PPG de confianza. Esta lista puede ser asumida a priori. Después que la PPG ha sido autenticada por un cliente, el cliente puede buscar en la lista de PPG's de confianza. Si la PPG está en esa lista, el cliente puede confiar en la PPG. Hay que indicar que WAP ha resuelto este punto de autenticación entre un cliente WAP y un servidor utilizando WTLS. Utilizando los métodos descritos en la sección previa, una PPG puede autenticar a un Iniciador Push con varios niveles de confidencialidad. Si lo hace, se puede indicar en las cabeceras push que el servidor de origen ha sido autenticado. El origen del contenido, puede ser indicado utilizando la cabecera Content−Location o cualquier otro elemento relacionado con la localización dentro del contenido push (p.e. URI contenido en el SI). Existe también un campo cabecera para que la PPG indique al cliente si el contenido ha de ser digno de confianza en su totalidad, incluso si no hay cabecera Content−Location o cualquier otro elemento relacionado con la localización dentro del contenido push.Es innecesario decir, que este modelo de delegación no excluye el uso del propio certificado o clave pública del Iniciador Push para autenticación extremo a extremo del servidor origen (el camino en su totalidad hasta el cliente). • Posible Filtrado y Control de Acceso PPG La PPG puede efectuar filtrados y control de acceso para descartar el contenido push que provenga de 24
servidores de origen no autorizados o no dignos de confianza. Dicha propiedad se deja a la discreción de aquel que implemente la PPG y a la relación de negocio entre el servicio subscriptor de WAP y el operador de la red móvil. ♦ Historia • Antecedentes Hace unos años, el empresario Alain Rossman conoció a un ejecutivo de la telefónica estadounidense GTE Corporation durante un evento comercial en Las Vegas, y le enseñó seis dibujos que mostraban cómo un teléfono celular podía exhibir en su pequeña pantalla la cotización de una acción, los últimos correos electrónicos y los itinerarios de vuelo, según informa The Wall Street Journal intertactivo, "Me tomó cerca de 30 segundos darme cuenta de por qué [la idea] era importante", afirma el ejecutivo de GTE, Chuck Parrish. Pocos meses después, Parrish dejó GTE y se unió a la compañía de Rossman, Unwired Planet, para perseguir el sueño compartido por ambos: un buscador de Internet, al estilo del de Netscape, que ofreciera los servicios de la Web por redes inalámbricas. A pesar de que el nombre de la compañía, Unwired Planet, podía sonar ambicioso, la naciente firma tenía sólo a tres ingenieros y menos de US$5 millones en capital de riesgo. Pero cuando Rossman y Parrish lanzaron por primera vez su concepto para expandir el alcance de Internet desde las pesadas computadoras de escritorio hasta los delgados teléfonos celulares, la respuesta no fue muy entusiasta. Los mayores operadores telefónicos, como Bell Atlantic Corporation, descartaron la idea por considerarla irrealizable. El desarrollo y comercialización de la tecnología resultaron ser inesperadamente complejos y, en determinados momentos, el proyecto parecía estancado. Más tarde, el esfuerzo representó un gran dilema para otros colosos de las telecomunicaciones como Nokia Corporation y Telefon AB L.M. Ericsson: ¿deberían éstas compañías defender sus tecnologías o romper con las prácticas del pasado y cobijar un nuevo estándar global? Entre tanto, a más de 4.800 kilómetros de distancia, en Suecia, los ingenieros de Ericsson estaban reunidos en sus laboratorios tratando de crear su propio software para teléfonos celulares. El proyecto produjo un debate interno: ¿tendría sentido para Ericsson, una empresa con el 45% del mercado de aparatos celulares basados en el predominante estándar europeo, utilizar su fuerza para promover su propia tecnología como una norma global? Ericsson invitó a Unwired Planet a realizar una visita y analizar el tema. El encuentro se produjo en la primavera boreal de 1997 y fue amistoso, aunque ocasionalmente tenso. Rossman, Parrish y varios gerentes de proyectos de Ericsson tomaron sus turnos frente al pizarrón blanco y dibujaron complejos esquemas de las respectivas aproximaciones que hacían sus compañías. Los suecos fueron los más impresionados. Después del almuerzo lanzaron una oferta: ¿estaría Unwired Planet dispuesta a trabajar con Ericsson para crear un estándar global de telecomunicaciones? Ericsson contribuiría con algunas de sus propiedades tecnológicas, al tiempo que trataría de persuadir a su rival finlandés Nokia y otros competidores para que se integraran al esfuerzo. Los esfuerzos para convencer a Nokia y a Microsoft de sumarse al proyecto no fueron nada fáciles. Motorola, la francesa Alcatel y la japonesa Matsushita Electric se integraron primero. Nokia lo hizo sólo minutos antes que se anunciara la formación de un club de empresas que adoptarían el nuevo estándar. Microsoft fue la última en saltar a bordo. La inusual naturaleza de la colaboración detrás de WAP ayudó a mantener sus costos de desarrollo en 25
los últimos dos años en la modesta cifra de US$30 millones. Sin embargo, la cifra es mayor si se incluyen otros esfuerzos de investigación y desarrollo por parte de otras compañías de WAP. El grupo de los cuatro fundadores, Ericsson, Nokia, Motorola y Phone.com, otrora Unwired Planet, comprometieron cerca de 100 empleados en el proyecto. Este grupo de largo alcance trabaja desde sus respectivos países y se comunican a través de la Web. Todo lo que hacen está disponible al público en Internet. • Actualidad Según diversas previsiones, en el 2005 habrá en el mundo más de 1.000 millones de móviles, lo que da una idea del mercado potencial que tienen ante sí las empresas que apuesten por el WAP. Aunque aún se están dando los primeros pasos, fabricantes y operadores están más que empeñados en que el WAP sea uno de los principales motores del mercado en los próximos años; no es de extrañar que, con las cifras que se manejan, el WAP haya saltado en los últimos meses a la más rabiosa actualidad: hay interés en que así sea para despertar la curiosidad del usuario y, por lo tanto, poner en marcha una demanda latente. Una encuesta realizada recientemente por el WAP Forum indicó que el 73% de las empresas europeas usa dispositivos móviles y que un 80% de los usuarios de un celular estaría interesado, en primer lugar, por la posibilidad de controlar su cuenta bancaria desde el teléfono. Con estas perspectivas, es lógico que los bancos y el comercio sean los primeros interesados en desarrollar soluciones para WAP. Sea como fuere, esta nueva tecnología sólo ahora empieza a gatear y no ofrecerá todo su potencial hasta que las redes inalámbricas no tengan el ancho de banda suficiente como para permitir una navegación equivalente a la que hoy disponemos en los ordenadores. A pesar de esto, el fuerte tirón de la Red está obligando a las grandes operadoras de telecomunicaciones a invertir cifras millonarias en la creación de nuevas redes capaces de desatascar la actual Internet y soportar el futuro multimedia que viene por ahí, lo que sin duda beneficiará también las comunicaciones inalámbricas. • El futuro del WAP El tremendo interés y el gran desarrollo que ha promovido el WAP en el mercado de la transmisión inalámbrica de datos está obligando a los operadores, los creadores de infraestructuras y los fabricantes de terminales a colaborar como nunca lo habían hecho anteriormente. La concordia que se vive en el WAP Forum ha permitido dejar atrás la diversidad de protocolos y plataformas para desarrollar un entorno común para el desarrollo de servicios avanzados de telefonía y acceso a Internet para el mercado inalámbrico.
Aunque el ancho de banda limita mucho las posibilidades de esta tecnología, todos los sectores de la industria −desde los desarrolladores de contenidos hasta los operadores− están trabajando más que nunca para explotar la amplia gama de oportunidades que les ofrece el WAP. Una de las tecnologías que más promete en combinación con el WAP es la General Packet Radio Services (GPRS), que gracias a un ancho de banda de 115kbps (como una RDSI con los dos canales activados) haría realidad la transmisión de contenidos multimedia. La GPRS es sólo una avanzadilla de lo que nos depara la tercera generación de telefonía móvil (3G), actualmente en proceso de estandarización; si hacemos caso a sus impulsores, la capacidad para transmitir datos de esta nueva tecnología es tal que, en combinación con el WAP, sería posible mantener una videoconferencia con total normalidad desde un simple teléfono celular. En el pasado Telecom 99, feria que cada cuatro años reúne las últimas novedades del mundo de las telecomunicaciones se pudieron ver los primeros prototipos de los que nos depara el futuro a 3 años vista. 26
De todas maneras, como el WAP no sólo se ciñe a los teléfonos, la mayor parte de los gigantes de la informática están trabajando para unirlo a nuevos dispositivos que, tomando el relevo de los actuales PDA (tipo Pilot), nos pondrán en la mano telefonía, Internet y multimedia. Si los protocolos WAP obtienen el mismo éxito que el TCP/IP, el boom de las comunicaciones móviles será fenomenal, permitiendo al WAP browser hacer por la Internet móvil lo que Netscape hizo por la WWW. Argumentos no le faltan. • El WAP en España El avance de las nuevas tecnologías parece imparable. La tecnología WAP, es ya una realidad en España. Últimamente han hecho aparición los primeros portales WAP españoles y otros webs que dedican secciones o apartados especiales a la cuestión. La previsión es que se multipliquen en un corto espacio de tiempo, al igual que ha sucedido en otros países, como en Estados Unidos, donde se asegura estar viviendo una verdadera «fiebre del móvil−WAP».
«Guay» (www.guay.com), por ejemplo, es uno de los portales que ha estrenado páginas sobre la «Internet sin hilos». En su primera fase de lanzamiento permite consultar las secciones de noticias y finanzas.
«Portalwap» (http://portalwap.com) es un completo web especializado en esta tecnología. Tal y como versa en su página principal: «Portalwap no existe ni existirá en HTML. Está creado sólo pensando en un nuevo medio: los teléfonos móviles». Como se explica en este sitio, si el usuario dispone de un teléfono que esté preparado para WAP, sólo tiene que introducir dicha dirección del web. Así, el servidor distingue que se está conectando desde un móvil, por lo que le ofrecerá diversos servicios que convierten al terminal telefónico en una fuente inestimable de información. De esta manera, el usuario podrá disponer del resumen de las principales noticias y los titulares de más de cien medios, con un total de 5.000 informaciones diarias. También se le ofrece un servicio de deportes (clasificaciones y resultados), guía de teléfono de taxis, hoteles, o urgencias; información de Bolsa, diccionario «on line»... ♦ Caracterísiticas • Ventajas del WAP Al ser un estándar que enlaza dos mundos que avanzan tan rápido como Internet y la transmisión inalámbrica, el WAP ha de presentar: −Independencia sobre los estándares para la creación de redes de telefonía. −Completamente abierto y escalable. −Independiente del sistema de transporte (GSM, IS−136, DECT, TDMA, etc.). −Independiente del tipo de terminal (teléfono celular, PDA, etc.). −Adaptable a nuevas tecnologías de transporte (GPRS, UMTS). Estos son los principales motivos porque está despertando tanto furor, ya que puede ser adoptado por cualquier dispositivo y aplicado sobre cualquier tecnología actual y futura.
27
Para los operadores de telecomunicaciones, la tecnología WAP promete disminuir el caos existente en materia de servicios inalámbricos e incrementar la base de clientes gracias a la mejora de los servicios existentes, como interfaces por voz para el envío de mensajes y sistemas prepago, y abriendo la puerta a un ilimitado abanico de servicios de valor añadido y nuevas aplicaciones (como la banca electrónica o el comercio a distancia). Gracias a la flexibilidad del WAP, estas nuevas aplicaciones pueden ser puestas en funcionamiento de manera rápida y sencilla sin modificar la infraestructura existente o la tecnología de comunicación aplicada a los teléfonos. Gracias a todo esto, el WAP ofrece a los operadores la posibilidad de diferenciarse de sus competidores ofreciendo una nueva y personalizada fuente de servicios e información. Al ser el Wireless Markup Language (WML) una reducción del Extensible Markup Language (XML), el WAP propone a los proveedores de contenidos un modelo muy similar al de Internet para dar salida a sus propuestas. Como la tecnología WAP es un estándar universal, se asegura la operatividad de sus aplicaciones y se les abre la puerta a un mercado potencial amplísimo −casi tanto como Internet en la actualidad− que demanda poder hacer muchas de las cosas que realiza hoy a través de su ordenador directamente desde el móvil. De cara al usuario final, el WAP aporta un acceso fácil y seguro a la información y a los servicios más relevantes de Internet, como mensajería, banca a distancia y entretenimiento, desde un simple y cotidiano móvil (o similar). Para los profesionales, la tecnologías WAP también permite la interacción con intranets corporativas y con sus bases de datos. Como un gran número de fabricantes de equipos de telefonía y proveedores de servicios soporta este nuevo estándar, el usuario gana en posibilidades de elección. Por otro lado, como el entorno WAP aporta la necesaria seguridad para efectuar hasta transacciones bancarias, los usuarios ganan en tranquilidad −uno de los principales escollos que ha impedido hasta hace poco que se cumplieran las perspectivas de crecimiento del comercio electrónico, por ejemplo−. • ¿Qué puedo hacer con WAP? Empresas: Envio de faxes y email al servidor de la intranet para una difusión de los mismos a menor coste o multienvio de email a los móviles de la compañía. Recordatorio, agenda, trabajo en grupo, programación de viajes. Acceso a las bases de datos de la compañía (Stocks, clientes, proveedores, catálogos) Personales: Las últimas noticias de actualidad al alcance de tu mano (política, sociedad, economía, cultura, etc.). Todas las noticias y novedades que se producen diariamente en el mundo del deporte. Una agenda deportiva para saber en todo momento cuándo se produce un determinado partido y estar permanentemente informado de fechas y horas. Programación diaria de todas las cadenas de TV con posibilidad de búsqueda por tipo de programas, por fraja horaria, etc. Cartelera de todos los cines de las capitales de provincia españolas, actualizado semanalmente, indicando salas, películas y horarios. Resultados y premios de todos los sorteos. Toda la información metereológica, con predicciones, estado actual del tiempo, imágenes vía satélite, previsiones para viajes de 24 y 48 horas, etc. Anuncios clasificados para comprar, vender, buscar y cambiar todo lo que se te ocurra. • Desventajas Los terminales móviles con soporte para WAP incorporan un micronavegador que sirve para acceder a la información deseada utilizando el lenguaje WML, de manera similar a como funcionan los navegadores convencionales en el ordenador leyendo páginas HTML. Por supuesto, dadas las limitaciones actuales en la velocidad de transmisión de datos a través de líneas GSM (típicamente 9600 bits/s para comunicaciones orientadas a conexión y una tasa de transferencia efectiva de 100 bits/s para SMS) y debido a las reducidas dimensiones de la pantalla de los móviles (dimensiones 28
habituales de 4x12 caracteres), todavía no resulta posible una experiencia de navegación con gráficos, animaciones, efectos multimedia y grandes volúmenes de datos. Una vez que la red esté preparada para soportar un volumen mayor de trafico de datos desde acceso móvil y que las aplicaciones y los servicios han encontrado un método idéntico de desarrollo al de Internet con los paradigmas propios de WWW, solo queda por superar la disponibilidad de los terminales WAP y GPRS y la interoperabilidad entre terminales y red. Este va a ser el factor crítico para el desarrollo de portales móviles con acceso WAP, los cuales están proliferando en la red sin que existan terminales en cantidades suficientes. • Seguridad Dado el carácter comprometido de las aplicaciones vía WAP (reserva y adquisición de entradas y billetes, operaciones bancarias, compra−venta de valores bursátiles), la seguridad es un prerrequisito fundamental que exigirán los usuarios y que los bancos y proveedores de contenidos se esforzarán por ofrecer. WTLS (seguridad en la capa de transporte sin hilos) proporciona los servicios básicos de seguridad, como confidencialidad, integridad, autenticación y protección contra denegación de servicio (DoS), constituyendo el equivalente inalámbrico del estándar TLS (seguridad de la capa de transporte), basado en el popular SSL v3.0, que sirve para establecer un canal de comunicaciones seguro entre el navegador del usuario y el servidor web y del que se ha hablado en repetidas ocasiones desde el Criptonomicón. WTLS incorpora nuevas características como soporte para datagramas, handshake optimizado frente a la fuerte sobrecarga de TLS o SSL y refresco dinámico de claves (las claves son invalidadas frecuentemente para frustrar el criptoanálisis). Además, este protocolo ha sido optimizado para redes portadoras con ancho de banda escaso y largos períodos de latencia. Desgraciadamente, los pequeños procesadores de estos dispositivos móviles carecen de la potencia de cálculo para realizar las operaciones criptográficas posibles en redes fijas con el PC como herramienta. Compárense los 64 MB de RAM de un ordenador de sobremesa convencional con los 32 a 64 KB de un teléfono móvil ¡de gran memoria! y con capacidad de cálculo igualmente reducida. Existen dos vías de salida: o reducir el tamaño de los procesadores manteniendo su potencia o explorar nuevas tecnologías criptográficas. En este sentido, la criptografía de curvas elípticas (ECC) está apuntando nuevas y prometedoras soluciones para los pequeños dispositivos, ya que requieren un quinto de la memoria de los criptosistemas convencionales, a la vez que conservan su seguridad (al menos, dado el estado actual de nuestro conocimiento de las curvas elípticas). Para que el móvil acceda a servidores de Internet, es necesaria la presencia de una pasarela WAP, perteneciente a la operadora de telecomunicaciones, que traduzca las peticiones en WAP originadas por el móvil a peticiones en HTTP que entienda el servidor web. Recíprocamente, las respuestas de los servidores web en HTTP (las páginas en HTML) deben a su vez traducirse al lenguaje WML para que se representen adecuadamente en el terminal móvil. La transmisión de datos entre el móvil y la pasarela se realiza utilizando los servicios de la capa WTLS, mientras que las comunicaciones entre la pasarela y los servidores web se aseguran mediante SSL o TLS. La transmisión segura extremo a extremo es gestionada de forma transparente y automática por la pasarela WAP. Ahora bien, este esquema ofrece un talón de Aquiles en la propia pasarela, ya que requiere descifrar la información de WTLS a SSL y viceversa. Durante ese breve instante en que los datos se encuentran en claro en la memoria de la pasarela de la operadora se podría producir el ataque. La posibilidad es remota, pero real. Empleados desleales de la compañía o un hábil hacker que comprometiera la seguridad de la pasarela podrían hacerse con las comunicaciones que pasan a través de ella.
29
Los problemas de exportación de la criptografía no harán sino agravar la situación, ya que en algunos lugares estará prohibido utilizar algoritmos con plena potencia. No será inusual encontrarse con que la legislación vigente permita la autenticación fuerte, mientras que prohibe el cifrado fuerte. ♦ Herramientas de desarrollo La mayoría del Marketing en nuevas tecnologías tiene sus fundamentos en el " Ciclo de Adopción de Nuevas Tecnologías ". Este modelo nació tras una investigación social sobre como las comunidades de usuarios responden ante innovaciones discontinuas. Las innovaciones discontinuas son nuevos productos o servicios que requieren del usuario final cambios en sus conductas anteriores si adoptan estas nuevas tecnologías. Lógicamente, el argumento para que los usuarios adopten la nueva tecnología es que los beneficios tras el cambio son mucho mayores que el esfuerzo en cambiar sus comportamientos. Un posible ejemplo de innovación discontinua seria si una compañía de automóviles lanzase un coche eléctrico, ya que provocaría en los usuarios un cambio de conducta a la hora de repostar combustible. En el caso de las aplicaciones sobre terminales inalámbricos estaríamos también ante un caso de innovación discontinua ya que permitiría, por ejemplo, el pago en un comercio, reserva de entradas de espectáculos, información on−line, etc. Y esto a su vez implicaría un cambio en la conducta de los usuarios finales en cuanto al uso del dinero, tarjetas de crédito, etc. Este es el motivo por el que un Centro de Demostraciones que permita evaluar el funcionamiento de las aplicaciones y las posibles dificultades que los usuarios puedan tener a la hora de adoptar estas tecnologías resulta estratégico antes de comercializar la solución. Estas dificultades vienen determinadas fundamentalmente desde el punto de vista de usuario por la facilidad de uso, la apariencia de la aplicación y la velocidad de respuesta. Para realizar diseños de aplicaciones WAP una vez se tienen claros los requerimientos se ejecutan dos pasos: • Diseño y prueba de la aplicación con un kit de herramientas de desarrollo. • Verificación de su funcionamiento en una red real utilizando distintas tecnologías. El kit de herramientas de desarrollo, basado en el estándar WAP añade las siguientes posibilidades: ♦ Diseño de aplicaciones WML incluyendo la presentación simulada en distintos terminales. ♦ Diseño de nuevos aparatos para comprobar en un entorno lo más real posible cual es el aspecto final de dichas aplicaciones. Por ejemplo si el tamaño de la pantalla posibilita una buena visión de la información ó si es fácil el sistema de menús. ♦ Desarrollo de servidores WAP donde la herramienta se encarga de la simulación del terminal en una red. Herramientas de programación de SIMs. Este kit de herramientas funciona sobre un PC y necesita un servidor web desde donde se accede a los contenidos. La verificación de su funcionamiento se realiza con una red real donde se comprueba fundamentalmente la velocidad y la funcionalidad de la aplicación dependiendo de la tecnología utilizada (WAP sobre GPRS, SMS, USSD, CSD, etc.). El esquema de dicha red es el de la figura.
30
Las aplicaciones son cargadas o bien en un servidor de contenidos existente o en uno especifico a tal efecto. La pasarela WAP se encarga de adaptar los contenidos en WML (Wireless Mark−up Language) a las distintas tecnologías de red (GSM, DECT, PDC, PHS), así como a los distintos portadores (GPRS, CSD, USSD, SMS). Una vez realizadas las pruebas se lleva a cabo una prospección del mercado para averiguar qué compañías pueden estar interesadas en estas tecnologías y cual es la aplicación que mejor se adapta a su modelo de negocio. Una vez establecido el plan se promueven experiencias piloto de dichas aplicaciones con distintas compañías, desde operadores de redes móviles pasando por proveedores de contenidos y servicios, pasando por empresas que quieren acceder a la información que ya poseen en su intranet o Internet a través de terminales inalámbricos. Por último, el Centro de Demostraciones cumple la faceta de crear competencia en nuevas tecnologías dentro de la compañía, a la vez que permite desarrollar la industria de aplicaciones inalámbricas de datos con sus aliados de la industria naturales. Consiguiendo en definitiva que la aceptación de las innovaciones tecnológicas discontinuas progrese a buen ritmo. • Un simulador WAP En España hay varias compañías telefónicas (Amena, Movistar, Airtel, Nokia, Ericsson, entre otras) que tienen estos servicios WAP en pruebas y pretenden ofertarlos desde este mismo mes de enero.
Sin embargo, apenas hay en nuestro país dispositivos que soporten esta tecnología. Por ello, «esGratis» ha creado un simulador WAP para navegadores con Javascript 1.2 y que es muy fácil de usar: se introduce la dirección de la página WAP y se despliega una ventana en la que aparece un Nokia 7110 desde el que se puede realizar un simulacro de navegación por la Red. También en castellano acaba de estrenarse la primera publicación de Internet en castellano con soporte WAP: http://wap.lasnoticias.org. Sin embargo, para recibir información por Internet podemos acceder por otro portal que también ofrece tecnología WAP: «esGratis». Para conocer más sobre este protocolo ha desarrollado «Recursos wap de esGratis» (http://wap.esgratis.net). Para quienes quieren profundizar en las nuevas posibilidades que traerá consigo la «Internet sin hilos» es posible visitar portales estadounidenses, que funcionan desde hace más tiempo y que ofrecen información detallada al respecto. Para despejar cualquier duda que se tenga e incluso intercambiarla con otros internautas, recomendamos: www.wapforum.org y www.wap.net. Aunque la mejor respuesta la tendremos, en breve, en nuestro móvil. ♦ Servicios WAP en España • Servicios WAP MoviStar
31
Ya se pueden pueden adquirir terminales de Movistar que incorporan la facilidad de navegación en Internet, y en los que está configurado el acceso automático a los servicios WAP. Los servicios WAP de Movistar integran ya en España una treintena de proveedores de aplicaciones de sectores tan diversos como la banca, los medios de comunicación, el ocio o los viajes.
Se podrá acceder a los servicios WAP de Movistar mediante un índice temático, de contenido especializado para móviles −diseñado conjuntamente con Terra Networks−, desde el que se puede acceder a cualquier sitio Web o portal WAP del mundo. Está estructurado en torno a secciones como Noticias, Economía, Deportes, Personal, Ocio, Viajes y Navegación.
Entre los proveedores con los que Telefónica Móviles tiene firmados acuerdos −que asumen el código de estilo de edición de Telefónica MoviStar− se encuentran Terra, ABC, Antena 3, Avis, DGT, Air Europa, La Vanguardia, LaNetro, NH Hoteles, Reuters, CNN, Spain On Line, BBVA, La Caixa, Uno−e, Banesto, Banco Popular, Ceca, BSCH y Caja de Arquitectos, a los que se irán sumando otros muchos. • Servicios WAP Amena De momento, Amena anuncia en su página web que ofrecerá a través de su portal "WAP Amena" los siguientes servicios: ♦ Amen@ Mail Cuenta de correo electrónico, que tendrá el formato @amena.com, de tal modo que desde un móvil WAP podrás: ♦ Leer tus correos (no importa el tamaño que estos tengan) ♦ Gestionar sus correos (almacenar, borrar, etc.), igual que lo haces en tu ordenador. ♦ Responder y enviar correos desde cualquier sitio con tu móvil. ♦ Portal "WAP Amena" En Wap Amena dispondrás de un menú de opciones con contenidos de Internet especialmente diseñados para los clientes. Amena puntualiza que su portal WAP ofrecerá contenidos y servicios actualizados continuamente. ♦ Amena en Línea Este servicio ogfrece la posibilidad de controlar las opiones de tu propio teléfono. En concreto, las opciones de que dispondrán los usuarios de terminales WAP serán: ♦ Servicios Amena ♦ Consulta de tarifa. Informa de tu tarifa actual. ♦ Cambio de tarifa. Podrás cambiar de tarifa sin tener que llamar al número gratuito de Atención al Cliente. ♦ Consulta de consumo. Podrás consultar tu saldo disponible (prepago) o tu consumo acumulado (postpago) ♦ Consulta de puntos de venta. Introduciendo un código postal, podrás ver los distribuidores Amena más cercanos. ♦ Novedades : información de las últimas novedades de Amena: nuevos servicios, tarifas, terminales, etc.. ♦ Ofertas : Todas las ofertas y campañas especiales de descuento en telefonía de Amena. • Servicios WAP Airtel
32
A este servicio, desarrollado en colaboración con Navegalia, portal en Internet de AIRTEL, se podrá acceder también sin terminal WAP. Se puede acceder a NOTICIAS (Nacional, Internacional, Deportes, Sociedad, Cultura, Economía, Tiempo, etc.), FINANZAS (Noticias, Valores e Índices de bolsas nacionales y extranjeras), EN TU CIUDAD (Ocio, Tráfico, Guías, Itinerarios, carteleras, compra de entradas, eventos, alojamientos, urgencias, dónde ir, etc.), DE VIAJE (En carretera, tráfico, mapas, alquiler de coches, alojamientos, etc.), OCIO (Sorteos, programación TV, horóscopo, juegos, chats, tablón de anuncios, etc.), PERSONAL (Banca móvil con Banesto, BSCH, CECA (Confederación Española de Cajas de Ahorro), Unicaja, La Caixa, Banco Popular).
La navegación se realizará por "menús". Necesitas conocer la función de las teclas de tu terminal, pudiendo también acceder a Webs diferentes a las del menú.
Tarifas: sólo pagas cuando lo usas y el precio de la llamada es de 16 Ptas./minuto, sin cuota de alta, cuota mensual, ni franjas horarias (Coste de establecimiento de llamada 20 Ptas.). ♦ Links de WAP http://www.angelica−wireless.dk/angelone Angelica's Wireless http://www.ericsson.se/wap/developer/ Ericsson − WAP Developers' Zone http://www.cellular.co.za Technology Web Site http://www.forum.nokia.com/developers/wap/wap.html Nokia WAP Developer Forum http://www.gelon.net/ Contiene un emulador online. http://www.gingco.de/wap/ Convertidor WBMP http://www.lpg.fi/lpg/WAPpage.html Servicios WAP de LPG http://www.mobic.com Mobic Web sobre Wireless Content. Hay direcciones de portales WAP. http://www.nokia.com/corporate/wap Nokia ofrece un emulador en Java. http://www.phone.com/ Plataforma tecnológica de acceso con su propio emulador y norma. http://www.telefonoswap.com/ Un nuevo concepto dentro de la telefonía móvil. http://www.teraflops.com/wbmp/ Convertidor Online WBMP http://www.wap.net WAP NET http://www.wapdevelopers.org Organización de WAP Developers http://wap.esgratis.net/ Emulador de Navegación WAP en la WEB. Este sitio permite visitar páginas con tecnología WAP como una página web normal con Internet Explorer o Netscape. http://www.wapforum.org WAP−Forum 33
http://www.wapgateway.org WAP Gateway Open Source Code http://www.wapservice.com WAP Service (publican WAP gratis) http://www.wmlclub.com El foro WAP en español. Modelos de Arquitecturas Telemáticas WAP 34
34