FR 2806860 A1 20010928 FR 0003015 A 20000309 1. Etat de l'Art pour l'envoi de messages courts Terminés Mobile L'envoi de messages courts Termines Mobile (SMS-MT) est décrit dans le document de référence GSM (Global System Mobile). I1 met en oeuvre un processus en 3 phases a) A partir de l'Adresse Destination du mobile, une table de recherche (appelée Niveaux HLR ) utilisée pour trouver l'adresse de la Base de Données (Home Location Register(HLR)) de cet abonné, qui est par exemple Min Max adresse HLR Nom du réseau +85288800000 +85288899999 +85288700001 A +85288700099 +85288799999 +85288700002 A +85298800100 +85298899999 +85298800000 B +85293300010 +85293399999 +85293300001 C +85293500000 +85293599999 +85293300002 C Dans l'exemple ci-dessus, l'adresse HLR de l'abonné du réseau A +85288712345 est immédiatement trouvée etre +85288700001. b) Envoi d'une requête ( Send Routing In- fo(SRI) ) à ce HLR pour obtenir l'adresse du MSC ( Mobile Switching Center ), le commutateur visité par ce mobile. c) Envoi d'un message court Forward Short Mes sage Mobile Terminated (SMSMT) au MSC visité qui relaie vers le mobile destinataire. En cas d'échec, différentes mé thodes de reprises classiques peuvent être utilisées. Cependant, cette méthode doit être adaptée, après l'invention, pour certains cas. Cas de la Portabilité du Numéro Plusieurs pays comme les Pays-Bas, Hong-Kong, le Royaume Uni et de nombreux autres dans le futur ont mis en place la Portabilité du Numéro (MNP en anglais). Ceci afin de développer la compétition entre opérateurs de réseaux mobi les, la MNP permet à un abonné de garder le même numéro même s'il change d'opérateur mobile dans le même pays (pays MNP). En conséquence, il n'est pas possible de détermi- à partir du numéro de mobile, à quel réseau il appar- tient et quel HLR précisément interroger. Dans l'exemple dessus, un mobile +85288712345 pourrait appartenir au réseau C, s'il a changé son abonnement de A vers le réseau C. Cas de plans de numérotation HLR incomplets avec de 1'interfonctionnement de messages courts (SMS) Pour de grands réseaux, il peut y avoir plusieurs centaines d'intervalles de numéro (environ 1000 pour les plus grands, comme France Telecom), dans la table ci-dessus, parce que le nombre de HLR et les nouveaux numéros sont évolutifs quand le nombre d'abonnés augmente. Au cas où plusieurs seaux se sont mis d'accord pour envoyer les messages courts (SMS) d'un reseau à l'autre, chacun devrait envoyer les mise à jour à tous ses partenaires d'interfonctionnement quand il ajoute des lignes dans ses tables de HLR, sinon ses partenai res ne pourraient pas envoyer de SMS à ses nouveaux abonnés. réseaux GSM sont accédés depuis l'International, à travers un IGP (International Gateway Point), suivi éventuellement d'une NGP (National Gateway Point), puis du (des) GMSC (Gateway Message Switching Center) du destinataire où est effectué la traduction numéro d'abonné -> Appellation Globale (GT) du HLR de façon à ce que les réseaux étrangers n'aient pas à gérer un Plan de numéro tation du réseau destinataire d'un appel téléphonique ou d' SMS. Suivant les réalisations, cette traduction peut être faite dans l'IGP, un NGP éventuel où dans le (s) GMSC(s) du réseau destinataire Dans le cas d'un SMS, le réseau étranger adresse le SEND ROUTING INFO REQ au HLR dont la Called Party Adress SCCP est égale à l'adresse du mobile destinataire ce qui est très simple. Cependant, la mise en place et la tenue à jour du plan de numérotation dans l'IGP, le NGP et dans une moindre mesure dans le (s) GMSC est une opération qui nécessite la connaissance précise simultanée des plans de numérotation et une administration correspondante avec des personnels nom breux. Dans tous les cas, la mise en place initiale des tables de HLR dans l' IGP, le NGP et leur maintenance néces- site une large organisation s'il y a beaucoup d'opérateurs dans le pays, si ce n'est pas fait automatiquement comme le permet la présente invention. Cas de A envoyant à un abonné B avec lequel i1 a un accord d'itinérance, mais le mobile destinataire visite lui-même un opérateur C qui n'a pas d'accord itinérance avec A. Ce cas est illustré par la figure 3. Comme l'opérateur A a un accord d'itinérance avec B( et qu'ils s'autorisent l'inter fonctionnement des SMS), A peut interro ger les HLR de B et obtenir l'adresse (Appellation Globale (GT)) du MSC visité par le mobile destinataire qui est dans le réseau . Si A n'a pas d'accord d'itinérance avec C, il ne peut envoyer de SMS vers le réseau C. 2. Description de l'implémentation de Portabi- lité du Numéro pour les SMS Composants de l'invention L'invention consiste en - Un ordinateur (MNP-SMSC) connecté au réseau SS7 (Réseau de signalisation SS7 qui peut connecter tous les opérateurs GSM et CDMA) et capable d'envoyer des requêtes et recevoir réponses de tous les HLR du pays MNP) (Fig 1.a) Cette fonction MNP-SMSC est unique pour le pays MNP. Elle peut être localisée chez un opérateur d'un autre pays, qui a des accords d'itinérance avec tous les opérateurs du pays MNP ou bien situé chez l'administration qui fournit la fonction de Passerelle Internationale, de façon à ce que le MNP-SMSC puisse adresser tous les HLRs. - Une table fixe de toutes les adresses de HLR des différents opérateurs, cette table peut être construite par un moteur de recherche (Fig 1.b) - Une table de niveaux HLR qui est vide à l'origine car on ne sait pas forcément au début l'intervalle des numéros destinataires correspondant à quel HLR (Fig 1.c) - Une mémoire cache importante, qui est aussi vide au début, et qui permet par une recherche en mémoire ra pide de trouver, avec le numéro de mobile comme argument, l'adresse du HLR correspondant, si elle existe dans la table (que le destinataire soit resté dans son réseau d'origine ou non) sans avoir à avoir à chercher le HLR. Cette mémoire ca che est nécessaire de façon à ne pas nécessiter d'interrogation des différents HLRs (Fig 1.d). - Un programme d'ordinateur capable d'envoyer un Send Routing Info à un HLR donné avec une adresse qu'il choisit, et principalement capable de réessayer un autre HLR si le destinataire n'est pas trouvé, ou bien de ' envoyer le SMS-MT s'il est trouvé. Auquel cas, il est nécessaire de refaire une re cherche HLR. Ainsi les cas où une recherche est nécessaire sont seulement au début (une fois) et chaque fois que le des tinataire change son abonnement de réseau. Ce n'est pas fré quent. - De plus, l'invention peut consister d'une "Unité de Conversion" installée chez chaque opérateur qui veut la fonctionnalité MNP pour envoyer des SMS ' tous ses abonnés (avec des numéros normaux ou "importés" d'autres ré seaux). L'Unité de Conversion" est essentiellement un MNP-MSC mais ne nécessite pas une grande mémoire cache. Description du fonctionnement Il faut considérer l'envoi d'un SMS-MT de l'opérateur A vers l'opérateur B. L' opérateur A (qu'il soit ou non dans le même pays) doit d'abord envoyer le SMS au MNP- SMSC comme expliqué en détail dans la figure 1. - Le MNP-SMSC regarde d'abord(1) dans sa mémoire cache pour trouver l'adresse du destinataire. S'il ne la trouve pas, il va rechercher le HLR en commençant par le "nominal" (2) à partir des "niveaux HLR" correspondant aux abonnés de son réseau qui ne son pas partis (ceci correspond à la probabilité maximale pl). S'il ne le trouve pas, il re cherche les HLR(3) dans l'ordre pl/cl > p2/c2 > .... > pn/cn où pi désigne la probabilité de trouver l'adresse destination dans le HLRi et ci est le coût de la recherche pour ce HLR. On démontre que c'est l'ordre de recherche qui minimise le coût parmi tous les n! (factoriel n) ordres pos- sibles. Voir "Recherche Opérationnelle", 1995, Presse des Ponts et Chaussées, page 102, par A.Henry-Labordère. Le SMS-MT est alors envoyé classiquement avec le message MAP "Forward Short Message MT" et une nouvelle entrée est faite (4) dans le cache qui est ainsi mis à jour. Les niveaux HLR au début sont vides et cons truits à partir de la liste de HLR(1) - La recherche dans la mémoire cache peut utili ser une méthode de recherche optimisée telle la dichotomie binaire. Le nombre moyen de recherches en mémoire pour 3,000,000 abonnés est de moins de 20 si les numéros sont gar dés en ordre séquentiel à chaque fois qu'un numéro est ajou- Dans notre réalisation, nous utilisons 8 octets pour chaque numéro et 8 octets pour l'adresse (Appellation glo bale) du HLR, avec une représentation en virgule flottante, ainsi le total n'est que de 48 M octets qui est aisément - lisable avec un serveur informatique de taille moyenne sans Base de Données compliquée. Au cas où la mémoire cache serait détruite accidentellement, elle se reconstruit par auto- apprentissage. - S'il trouve l'adresse de destination dans la memoire cache, mais le HLR répond "abonné inconnu", cela si gnifie que le destinataire a changé de réseau et une recher che de HLR est faite. On a mesuré qu'une recherche complète de 15 HLRs prend environ 12 secs. Ceci est du au temps de ré ponse des HLRs et au temps de transmission SS7. Ainsi une re cherche de HLR n'est requise qu'initialement et si un abonné change de réseau. Pour améliorer les choses, comme expliqué sur la Figure 2, mais ce n'est pas obligatoire, chaque opérateur peut avoir sa propre "Unité de Conversion" (CU), qui est vue comme un de ses HLR, de façon que le message qu'il envoie à un de ses propres abonnés ne passe pas par le MNP-SMSC com mun. Leur SMSC interroge(1) cette "CU" qui, à son tour, in terroge les HLRs de ce réseau (2) de façon à déterminer si c'est un de ses propres abonnés. Sinon la CU envoie le SMSC au MNP-SMSC commun(3). 3 Auto-apprentissage des niveaux HLR Même sans Portabilité des numéros, la maintenance des niveaux HLR doit être faite automatiquement pour fournir une qualité de service et minimiser les coûts, d'après l'invention. A cette fin, un SMSC avec le même logiciel qu'un MNP-SMSC est utilisé quand c'est nécessaire d'envoyer des SMS à un réseau dont les niveaux HLR sont inconnus, incomplète ment connus ou changeant fréquemment d'opérateur. I1 est nécessaire d'avoir une liste de HLRs(4 ci- dessous) mais les "niveaux HLR" peuvent être vides (un seul intervalle au début, le même pour tous les HLRs), par exem- Min Max adresse HLR +886935000010 +886935999999 +886935000001 +886935000010 +886935999999 +886935000002 +886935000010 +886935999999 +886935000003 +886939000000 +886939999999 +886935000001 Nous recherchons toujours dans le niveau donné par la table, mais il est probable que +886935000001 qui a été mis au hasard n'est pas le HLR pour +886935032000, donc recherche de HLR est faite qui indique que l'abonné ap partient au HLR +886935000003. Les intervalles sont alors organisés en en coupant un en 2. Min Max adresse HLR +886935000010 +886935434000 +886935000003 +886935434001 +886935999999 +886935000001 +886935000010 +886935999999 +886935000002 +886935000010 +886935999999 +886935000003 +886939000000 +886939999999 +886935000001 de façon à ce que la prochaine fois, le numéro sera trouvé directement, de même que ses voisins, sinon le processus de séparation en deux va continuer jusqu'à ce que les niveaux HLR convergent (au sens qu'ils n'évoluent plus), ce qui ne nécessite que quelques centaines d'envoi de SMS pour un opé rateur de taille moyenne Au cas où un nouveau HLR serait ajouté, le nouvel abonné sera trouvé après une recherche et un nouveau niveau HLR ajouté. Le procédé est donc à auto-apprentissage et ne requiert des entrées manuelles que quand des HLRs sont ajou tés. 4 Envoi d'un opérateur A vers un opérateur visi- té C avec lequel il n'a pas d'accord d'itinérance direct Le MNP-SMSC sert de relais ou de "proxy SMSC" en tre le réseau A le réseau C. A peut envoyer un SMS au MNP- SMSC car le MNP SMSC appartient au réseau B qui a un accord d'itinérance avec A. Le -SMSC interroge(1) le (s) HLR(s) de B pour obtenir l'appellation globale du MSC visité. Il exécute alors son algorithme routage qui indique si le MSC peut être at teint indirectement (dans le réseau C qui a des accords d'itinérance avec B) ou dans un autre. Dans le dernier cas, le MNP-MSC envoie le mes- sage(2) à un MNP SMSC compagnon" qui est dans un réseau qui a des accords d'itinérance avec C, les données du message in cluant l'Appellation globale(GT) du MSC visité. Le "MNP-SMSC compagnon" aura juste à envoyer(3) le message MAP ordinaire FORWARD SHORT MESSAGE MT au mobile destinataire à travers le MSC visité avec lequel il a un ac cord d'itinérance. Ainsi le réseau A a été capable d'envoyer un SMS au réseau visité C avec lequel il n'a pas d'accord d'itinérance direct, grâce à l'utilisation d'un "proxy SMSC". R E V E N D I C A T I O N S 1 ) Procédé d'envoi de messages courts SMS à des réseaux de mobiles avec portabilité du numéro dans le même pays caractérise en ce qu'on met en oeuvre un ordinateur avec des connexions SS7 capable d'interroger tous les HLR pays où la portabilité du numéro est réalisée, l'ordinateur comprenant une mémoire cashe pour tous abon nés mobiles du pays où la portabilité est réalisée, pour sa voir quel HLR interroger, sans recherche, lorsqu' a été trouvé une première fois. 2 ) Procédé selon la revendication 1, caractérisé ce qu'à partir de la mémoire cashe initialement vide, on construit progressivement par des recherches de HLR quand abonné n'est pas encore inscrit dans la mémoire cashe, ou quand il change de réseau d'abonnement. 3 ) Procédé selon la revendication 2, caractérisé en ce qu'on construit plan de numérotation (niveaux HLR) par auto- apprentissage et interrogation séquentielle des HLR, chaque fois qu'un abonné n'est pas trouvé dans le plan existant. 4 ) Procédé selon la revendication 1, caractérisé en ce qu'on construit la liste des HLR d'un opérateur par une recherche parallèle systématique effectuée par un ordinateur. 5 ) Procédé selon la revendication 1, caractérisé en ce qu'on utilise l'ordinateur avec les connexions SS7 comme relais SMSC pour relayer les messages courts envoyés par un opéra teur A vers un abonné d'un réseau B visitant un autre réseau C, ce dernier n'ayant pas d'accord d'itinérance avec le ré seau A, en envoyant le message court SMS avec l'appellation globale GT du MSC visité à un SMSC compagnon dans un réseau ayant un accord d'itinérance avec le réseau C. 6 ) Procédé selon la revendication 1, caractérisé en ce qu'on intègre l'ordinateur à une passerelle internationale IGP, une passerelle nationale NGP ou dans le ou les GMSC d'un opé rateur.