Présentation du WAP
Le protocole WAP standardise l'échange d'information entre le terminal mobile et une passerelle qui assure la liaison avec l'Internet. Cette passerelle assure la conversion des protocoles de transfert de données entre le monde Internet et le monde du GSM. Certains constructeurs incorporent également un serveur applicatif dans la passerelle afin d'offrir des services complémentaires. Dans ce cas, on parle de serveur WAP et celui-ci est en mesure de produire lui-même les documents qui seront transmis au terminal mobile.
Il est basé sur :
Un protocole de transport spécifique orienté téléphone mobile inspiré de HTTP.
Un langage spécifique d'écriture des document, le WML (Wireless Markup Language), sous-ensemble de XML, associé à un langage de script : le WMLScript. Le WML est donc une version très allégée du XML. Attention donc au code très strict, sensible à la casse (majuscules - minuscules), balise fermante obligatoire, attributs à ne pas oublier. Comme le HTML avec JavaScript, le WML possède son propre langage de script : WMLScript, qui même s'il est moins puissant que JavaScript reste suffisant pour le WML.
Architecture matérielle générale
Les architectures WAP reposent sur 4 briques technologiques, chacune étant nécesaire pour garantir l'acheminement d'un message par le protocole WAP :
La mise en place d'un serveur Web et applicatif disposant de contenu au format WAP (ou plus précisément WML)
L'intégration d'une passerelle ou d'un serveur WAP
Le réseau de l'opérateur
L'utilisation par le client d'un terminal WAP c'est-à-dire qui héberge un navigateur WAP
Les similitudes avec les architectures Web s'expliquent facilement. En effet, ces 2 architectures remplissent la même mission, celle de générer des documents à partir de différentes sources de données et de les transmettre à un navigateur dédié.
Le protocole WAP est indépendant des architectures matérielles utilisées par l'opérateur, ce qui lui permet de circuler sur des réseaux au format aussi divers que GSM, CDMA,...
Structure du protocole WAP
Le WAP est construit autour d'une architecture similaire et donc de protocoles spécifiques, adpatés et optimisés pour les liaisons sans fil. La structure du protocole WAP a été décomposée en 5 couches.
Voici les différents protocoles utilisés par le WAP :
- WAE (Wireless Application environment) :
Fournit un environnement de travail (WML, WMLScript, URI). WAE est la couche application du WAP. Il donne les moyens aux développeurs de créer de nouvelles applications.
- WSP (Wireless Session Protocol) :
Fournit l'interface qui gère les sessions. WSP fournit un moyen d'organiser les échanges entre un client et un serveur. Il fournit les applications permettant : d'établir la connexion entre le client et le serveur ; de se mettre d'accord sur la qualité de service ; d'échanger du contenu entre le client et le serveur en utilisant un encodage compact ; de suspendre et finir la session.
- WTP (Wireless Transport Protocol)
Transporte l'information (identique au protocole HTTP sur Internet). Un protocole de transaction fournit les services permettant de naviguer (requêtes et réponses). Durant une session, le client demande des informations au serveur et le serveur répond aux questions. WTP est conçu pour les applications mobiles.
- WDP (Wireless Datagram Protocol)
Fiabilise les différentes transactions (identique au protocole TCP/IP sur Internet). Il fait le lien entre les couches hautes du protocole (sécurité, transport et session) et la couche physique.
- WTLS (Wireless Transport Layer Protocol)
Gère les standards industriels de sécurité (identique à SSL sur Internet). La spécification WTLS a été définie en adaptant le protocole SSL aux contraintes du réseau de communication utilisé par le WAP. La bande passante utilisée pour l'échange des données est faible et la robustesse de connexion n'est pas toujours assurée. Les principales différences entre ces protocoles est un nombre d'en-têtes protocolaires plus réduit pour le WTLS que pour SSL ainsi qu'un taux de compression de données plus élevée pour le WTLS. WTLS autorise au cours de la transaction un rafraîchissement dynamique de la clef secrète sans passer par la phase de renégociation pénalisante en terme de débit.