Procédé d'établissement d'une session applicative, dispositif et notification
correspondante
La présente invention concerne le domaine de la téléphonie mobile et plus particulièrement le domaine des modules de communication dits de machine à machine. Toutefois, elle peut s'appliquer à tout dispositif de communication téléphonique sans-fil.
À l'origine, les dispositifs de communication téléphonique sans-fil consistaient en de simples combinés permettant de transmettre de la voix par l'intermédiaire d'un réseau radio cellulaire. Très vite, le simple transport de la voix s'est révélé insuffisant, et les terminaux ont été dotés de moyens de communication de données selon des protocoles de communication par paquet comme le protocole IP {Internet Protocol en anglais défini par la RFC 791). Ces développements ont donné lieu à différentes générations de normes de communication telles que GPRS {General Packet Radio Service en anglais), EDGE {Enhanced Data Rates for GPRS Evolution en anglais), UMTS {Universal Mobile Télécommunications System en anglais), HSUPA {High Speed Uplink Packet Access ou accès paquet montant haute vitesse en anglais).
D'un point de vue très schématique, on peut décrire le schéma de connexion au réseau de communication de données d'un dispositif de téléphonie mobile selon la Fig. 1. Selon une première étape 1.1, le dispositif se connecte à un APN (Access Point Name en anglais), le nom de la passerelle d'interconnexion entre le réseau paquet mobile (GPRS ou UMTS) et les réseaux IP externes. Il doit donc pour cela disposer de ce nom ou APN de la passerelle. Ensuite, il s'identifie auprès de cette passerelle à l'aide d'un nom de connexion (login en anglais) et d'un mot de passe lors d'une étape d'authentification 1.2. Il reçoit alors, lors d'une étape 1 .3, un contexte appelé généralement contexte PDP, un ensemble de paramètres pour l'établissement de la session IP. Cette session est alors établie lors de l'étape 1.4.
Ce processus d'établissement de session est prévu pour être initié par le terminal mobile. Il n'existe pas de moyen simple pour un serveur connecté à un réseau IP d'initier une session de données pour communiquer selon le protocole de communication de données avec un dispositif distant. De plus, le réseau déconnecte rapidement la session d'un terminal qui n'émet plus de données.
Pour pallier ce problème et permettre à un serveur de communiquer avec un dispositif de téléphonie mobile, plusieurs solutions ont été décrites. Une première solution permet de garder une connexion déjà établie vivante par un système dit de keep-alive consistant dans l'envoi périodique de données dans le seul but d'éviter les déconnexions. On peut également implémenter un mécanisme de rendez-vous. Selon ce mécanisme, le terminal se connecte périodiquement à un serveur pour permettre à celui-ci de lui transmettre d'éventuelles données. Selon un autre mécanisme, le serveur émet un appel voix à partir d'un numéro bien connu vers le terminal. Celui-ci reçoit l'appel, reconnaît le numéro, ne décroche pas, mais établit une session en réponse à cet appel. Enfin, une dernière solution, sans doute la plus simple à mettre en œuvre, consiste à envoyer un SMS (Short Message Service en anglais) vers le dispositif pour lui demander d'établir une connexion ou session.
Un document normalise cette dernière solution selon l'alliance OMA (Open Mobile Alliance en anglais) c'est le document « OMA-TS-DM_Notification-Vl_2_l- 20080617-A» intitulé « OMA Device Management Notification Initiated Session ». Selon ce document, il est décrit de transmettre une notification sous la forme d'un SMS vers le terminal. A réception de ce SMS, le terminal initie une connexion sur le serveur à l'origine de la notification. Cette connexion va, dans notre cas, utiliser la connexion GPRS établie à l'aide de ses paramètres de connexion mémorisés tels que
le nom de la passerelle et les identifiants de connexion associés. Malheureusement, dans le cas d'une connexion machine à machine, ces informations ne sont généralement pas mémorisées par le terminal. En effet, ces terminaux sont typiquement configurés avant que le choix de l'opérateur ne soit fait. Le choix de cet opérateur peut être remis en cause au cours de l'exploitation.
D'autre part, il pourrait être utile de permettre une connexion à un service donné en utilisant un opérateur choisi pour le service en lieu et place de l'opérateur par défaut configuré dans l'appareil.
L'invention vise à résoudre les problèmes précédents par la définition d'un format de notification pour l'établissement d'une session applicative intégrant les paramètres de connexion opérateur. En l'occurrence, dans le cas du GPRS, il s'agit du nom de la passerelle et des identifiants de connexion.
L'invention concerne un procédé d'établissement d'une session applicative par un dispositif de traitement de l'information appelé client disposant de moyens de communiquer avec un réseau de communication de données au travers d'un réseau de téléphonie mobile, caractérisé en ce qu'il comprend une étape de réception d'une notification selon un premier mode de communication asynchrone ; une étape d'extraction de ladite notification, d'une part les informations pour l'établissement d'une session applicative et d'autre part les informations de connexion relatives à l'opérateur gérant une passerelle d'interconnexion entre le réseau de téléphonie mobile et le réseau de communication de données ; une étape d'initiation d'une connexion synchrone à ladite passerelle à l'aide des informations de connexion relatives à l'opérateur extraites et une étape d'initiation d'une session applicative à l'aide des informations relatives à la session applicative extraite.
L'invention concerne également un dispositif de traitement de l'information comprenant des moyens de communiquer avec un réseau de communication de données au travers d'un réseau de téléphonie mobile ; des moyens de recevoir des notifications selon un premier mode de communication asynchrone ; des moyens d'établir une connexion selon un second mode de communication synchrone avec une passerelle d'interconnexion entre le réseau de téléphonie mobile et le réseau de communication de données, ladite passerelle étant gérée par un opérateur ; des moyens d'établir avec un serveur une session applicative au travers du réseau de communication et des moyens d'extraire de ladite notification, d'une part des informations de connexion relative à l'opérateur utilisé pour permettre l'établissement
d'une connexion au réseau de communication de données, et d'autre part les informations relatives à l'établissement d'une session applicative.
L'invention concerne également une notification pour l'établissement d'une session applicative par un dispositif de traitement de l'information appelé client disposant de moyens de communiquer avec un réseau de communication de données au travers d'un réseau de téléphonie mobile qui comprend les informations pour l'établissement d'une session applicative et les informations de connexion relatives à l'opérateur gérant une passerelle d'interconnexion entre le réseau de téléphonie mobile et le réseau de communication de données.
Selon un mode particulier de réalisation de l'invention, la notification prend la forme d'un message court.
Selon un mode particulier de réalisation de l'invention, lesdites informations de connexion relatives à l'opérateur comprennent le nom de la passerelle, un identifiant de connexion et un mot de passe.
Les caractéristiques de l'invention mentionnées ci-dessus, ainsi que d'autres, apparaîtront plus clairement à la lecture de la description suivante d'un exemple de réalisation, ladite description étant faite en relation avec les dessins joints, parmi lesquels :
La Fig. 1 illustre le procédé de connexion d'un module de téléphonie mobile à un réseau de communication de données,
La Fig. 2 illustre la structure d'une notification dans le système OMA,
La Fig. 3 illustre la structure d'un SMS selon un exemple de réalisation de l'invention,
La Fig. 4 illustre le fonctionnement d'un exemple de réalisation de l'invention. L'invention se place dans le cadre où au moins deux modes de communication, ou couches de transport, permettent la communication entre un client et un serveur. On entend ici par client un dispositif de traitement de l'information disposant de moyens de communiquer avec un réseau de communication de données au travers d'un réseau de téléphonie mobile. Le serveur s'entend d'un dispositif de traitement de l'information disposant de moyens de communiquer avec un réseau de communication et offrant un service à des clients au travers de ce réseau de communication. Un premier mode est asynchrone et peut permettre l'envoi de messages entre le client et le serveur. Un second mode est synchrone, il permet d'établir une connexion entre le client et le réseau de communication. Cette connexion s'établit entre le client et une
passerelle d'interconnexion entre le réseau de téléphonie mobile et le réseau de communication de données. Cette connexion en mode synchrone permet au client d'établir des sessions de communication avec le serveur au niveau applicatif. On se place dans le cas où le serveur n'est pas en mesure d'établir une telle session de communication avec le client. Dans l'exemple de réalisation, le système est le système OMA. Le mode de communication asynchrone est la couche de transport utilisée pour l'envoi de messages asynchrones, nommé WAP-push, utilisant typiquement l'infrastructure d'envoi de messages courts SMS. Le mode de communication synchrone est typiquement une connexion TCP/IP établie selon la norme GPRS. Les sessions applicatives sont typiquement des sessions de gestion OMA (management session en anglais). Dans un tel système, un serveur désirant entrer en communication au niveau applicatif avec un client et ne pouvant pas établir lui-même une session applicative envoie une notification en mode asynchrone au client contenant les informations permettant à ce client d'établir la session applicative avec le serveur en utilisant le mode de communication synchrone. Toutefois, l'invention, bien que décrite dans le cadre d'un système OMA peut être implémentée dans tout système obéissant aux mêmes contraintes. En particulier, il peut être appliqué à tout type de session au niveau applicatif, ainsi qu'à des couches de transport diverses.
La Fig. 2 illustre la structure d'une notification dans le système OMA. Cette notification est constituée d'un premier champ « digest » 2.1 qui contient une clé MD5 permettant de garantir l'intégrité du message et d'authentifier son émetteur. Ensuite vient un en-tête 2.2 appelé « trigger-hdr » qui contient un ensemble de données permettant au receveur de la notification d'établir une session de gestion (Management Session en anglais) avec le serveur émetteur. Une telle session de gestion est une session telle que définie par la norme OMA, il ne s'agit pas ici d'une session TCP/IP. Cette session de gestion se situe au niveau de la couche applicative au-dessus du protocole TCP/IP et présuppose que le client et le serveur sont configurés de manière appropriée pour permettre la communication. Après le champ d'en-tête, vient un champ de données (payload en anglais) 2.3 appelé « trigger-body » qui contient des données spécifiques au vendeur, c'est-à-dire à l'opérateur du système.
Le champ d'en-tête se décompose lui-même en un premier champ de version 2.4 qui spécifie la version de la spécification OMA à laquelle la notification est conforme. S'ensuit un champ 2.5 indiquant si la notification doit être signalée à l'utilisateur ou traitée par le système, puis un champ 2.6 « initiator » qui signale quelle est l'origine
de la notification, s'il s'agit d'une demande de l'utilisateur ou du serveur. Un espace 2.7 est réservé pour un usage futur. Ensuite on trouve un identifiant de session 2.8 qui doit être utilisé par le client lorsqu'il initie la session vers le serveur. Ainsi, on établit le lien entre l'initiation de la session par le client et la notification qui la provoque. Ensuite, on trouve un champ 2.9 qui donne la longueur de l'identifiant du serveur émetteur de la notification et le champ 2.10 qui contient cet identificateur.
On peut constater que les informations dont on dispose dans la structure de la notification telle que formalisée dans le système OMA sont toutes relatives à l'établissement d'une session de gestion OMA. Ces sessions sont des sessions au niveau applicatif. Aucune information n'est relative aux couches protocolaires de transport sous-jacentes. Il est supposé dans le système que le client et le serveur sont connectés et en capacité de communiquer.
Or, dans le cas où le client utilise un réseau de communication de données par mobile tel que le GPRS, par exemple, la connexion à ce réseau n'est pas forcément établie. Lorsque le client possède les paramètres de connexion, il peut les utiliser pour établir cette communication en réponse à la réception de la notification. Il faut noter ici que cette notification est soumise par WAP push, c'est-à-dire sous la forme d'un message court envoyé de manière asynchrone ne nécessitant pas l'utilisation du réseau de communication. Dans certains cas, ces informations ne sont pas mémorisées dans le client. Ce peut être le cas, par exemple, dans une application machine à machine comme un automate de paiement où la carte SIM utilisée est configurée et insérée à l'appareil avant que ne soit négocié le contrat opérateur gérant l'accès. Dans certaines applications, il peut aussi être utile d'envoyer une notification pour l'accès à un serveur lié à un opérateur différent de l'opérateur par défaut utilisé par le client.
Pour permettre la connexion dans ces cas-là, il faut communiquer les informations de connexion relatives à l'opérateur utilisé pour permettre l'établissement d'une connexion au réseau de communication de données. Typiquement, ces informations comprennent le nom de la passerelle d'accès (APN en anglais) gérée par l'opérateur, un identifiant de connexion (login en anglais) et un mot de passe. C'est, par exemple le cas, lors d'un accès utilisant une connexion GPRS.
Selon l'invention, ces informations de connexion relatives à l'opérateur sont transmises dans le message court servant au transport de la notification. De cette façon, on transporte dans un même message, les informations de connexion relatives à l'opérateur et les informations relatives à l'établissement d'une session applicative.
Avantageusement, elles sont intégrées dans la notification elle-même. L'exemple de réalisation de l'invention insère une structure de données en début du corps de la notification. Ce mode de réalisation est illustré Fig. 3. Les champs 3.1 , 3.2 et 3.3 représentent la structure de la notification telle que décrite précédemment, respectivement le champ digest, le champ trigger-hdr et le champ trigger-body. Le champ trigger-body 3.3 est réservé aux données spécifiques à la notification, c'est le corps de la notification. Ce champ est alors divisé en deux parties. Une première partie 3.4 héberge la structure de données contenant les informations de connexion relatives à l'opérateur selon l'invention. La seconde partie 3.5 est disponible pour d'éventuelles données complémentaires et est équivalente au champ trigger-body de l'art antérieur.
Selon l'exemple de réalisation, la structure de données 3.4 peut être la suivante : un premier champ 3.6 contient la longueur du nom de la passerelle, suivie par un champ 3.7 contenant ce nom. Le champ 3.8 contient la longueur de l'identifiant de connexion suivie par le champ 3.9 contenant cet identifiant. Le champ 3.10 contient la longueur du mot de passe suivie du champ 3.1 1 contenant ce mot de passe. Il est évident pour l'homme du métier que cette structure n'est qu'un exemple de réalisation et peut être adaptée. En particulier, elle est adaptée à une connexion à un réseau GPRS et devra être adaptée à tout autre type de réseau de communication de données utilisé en fonction des informations de connexion alors requises. Cette notification est alors transportée au sein d'un SMS de la même manière que la notification selon l'art antérieur. Elle peut alternativement être transmise par tout moyen approprié autre que le SMS et s'adapter à toute couche de transport pouvant être utilisée pour transmettre les notifications en mode asynchrone.
Alternativement, ces informations de connexions peuvent être insérées directement dans le message court ou SMS servant à transporter la notification sans être inclues dans celle-ci. Par exemple, il est possible de définir un nouvel élément d'information dans l'en-tête de données utilisateur {User Data Header en anglais) du SMS dédié au transport de cette structure de données. Il faut alors définir un identifiant d'élément d'information (IEI pour Information Elément Identifier en anglais) correspondant.
Une autre alternative consiste à insérer ces informations dans la partie de données du message court.
La Fig. 4 illustre le fonctionnement d'un exemple de réalisation de l'invention. Elle décrit un procédé d'établissement d'une session applicative par le client. Lors
d'une première étape 4.1, le serveur désirant communiquer avec le client lui envoie une notification selon l'invention en mode asynchrone. Lors d'une étape 4.2, le client analyse cette notification et extrait d'une part les informations pour l'établissement d'une session applicative et d'autre part les informations de connexion relatives à l'opérateur. On intègre ici l'ensemble du message reçu sous la dénomination notification. En particulier, si les informations relatives à l'opérateur sont insérées dans le message court transportant la notification proprement dite et non dans celle-ci, l'ensemble du message court est considéré comme une notification. Avantageusement, il teste alors s'il est déjà connecté au réseau de données via l'opérateur dont les informations de connexion lui sont communiquées. S'il ne l'est pas, il initie cette connexion synchrone à l'aide des informations de connexion relatives à l'opérateur extraites, c'est l'étape 4.3. Lors de l'étape 4.4 cette connexion est établie, le client est maintenant connecté au réseau de données qui lui permet de communiquer avec le serveur. Il utilise alors les informations relatives à la session applicative qu'il a reçues dans la notification pour initier la session applicative lors de l'étape 4.5. Lors de l'étape 4.6, la session applicative entre le client et le serveur est établie. Le serveur peut alors communiquer avec le client en utilisant cette session applicative.