Brevet FR2857191A1 — publié le 20050107

La présente invention concerne un système de transmission dynamique, vers au moins un serveur distant, de paramètres caractérisant une session de communication entre un ou plusieurs terminaux et le(s) serveur(s) distant(s). Un tel système a notamment pour but de permettre aux fournisseurs de services sur Internet de délivrer un contenu personnalisé à un utilisateur, c'est-à-dire un contenu adapté aux paramètres de son terminal, du réseau d'accès et à ses exigences. L'invention se situe dans le domaine des réseaux de communication auxquels accèdent des terminaux hétérogènes, c'est à dire des terminaux de types différents. Elle trouve typiquement une application dans la diffusion et la fourniture d'informations disponibles sur le réseau Internet, ou sur tout autre réseau du même type, ou encore sur des bases de données, des fichiers etc..., vers des terminaux hétérogènes tels que des terminaux de type ordinateur personnel PC, des terminaux de type WAP (de l'anglais "Wireless Application Protocol"), des terminaux de type PDA (de l'anglais "Personal Digital Assistant") etc... La diffusion de mêmes informations, représentées sous le même format, vers des terminaux de types différents est rendue difficile du fait de la diversité des terminaux et des réseaux d'accès utilisés. Les terminaux diffèrent notamment les uns des autres de par leurs caractéristiques physiques telles que la taille d'écran, la capacité de mémoire, les caractéristiques matérielles etc... Ainsi, par exemple, les téléphones mobiles de type WAP utilisent le langage WML (de l'anglais "Wireless Markup Langage"), tandis que les terminaux de type ordinateur personnel 2857191 2 mettent en oeuvre un langage de type html (de l'anglais "Hypertext Markup Langage"). De la même manière, des terminaux de type PDA, bien que pouvant utiliser aussi le langage HTML, n'ont pas les mêmes caractéristiques qu'un ordinateur personnel PC. En effet la taille de leur écran est plus petite que celle d'un terminal de type PC, leurs capacités de traitement sont inférieures, les logiciels et matériels sont différents etc.... Les réseaux d'accès, quant à eux, diffèrent les uns des autres de par leur nature, telle que par exemple le haut-débit, le bas-débit, le sans fil etc.... A ce jour, plusieurs solutions ont déjà été proposées à ce problème d'adaptabilité de l'information disponible. Pour toute la suite de la description, on définit par adaptabilité, les moyens, automatiques ou non, qui permettent aux contenus circulant sur un réseau de type Internet par exemple, d'être utilisables sur des terminaux hétérogènes, ayant des caractéristiques et des ressources très variées. Une première solution permettant de diffuser un contenu multimédia sous différents formats, de façon à le rendre consultable à partir de n'importe quel type de terminal de communication, consiste à développer autant de versions de ce contenu qu'il existe de terminaux pouvant y accéder. Cependant cette technique, entièrement manuelle, nécessite un temps de développement important et les travaux de maintenance sont rendus très difficiles par le nombre élevé de versions du contenu, qui s'accroît avec le nombre de terminaux cibles. Une autre solution apparue depuis quelques années et décrite dans la demande de brevet FR 2 809 844, consiste à gérer l'adaptation de contenu du côté du serveur web. Cette technique consiste à décrire le contenu à diffuser une seule fois dans un fichier de type XML puis à faire l'adaptation à l'aide de feuilles de styles, ou de 2857191 3 feuilles de transformation, stockées dans le serveur. Les feuilles de styles se présentent par exemple sous forme de fichiers de type XSL et les feuilles de transformation se présentent par exemple sous forme de fichiers de type XSLT. Les adaptations faites selon cette technique restent cependant encore très limitées en fonctionnalités d'adaptation car elles se basent uniquement sur le type de navigateur du terminal cible. Cette technique ne permet en effet de différencier que les différents types de navigateurs, tels que les navigateurs classiques pour PC, ou des navigateurs WAP de téléphones portables etc... L'adaptation de contenu se limite donc dans ce cas à décharger des pages html vers des ordinateurs de type PC, des pages WML vers des assistants personnels de type PDA ou des téléphones portables équipés de navigateurs WAP, etc... sans tenir compte des caractéristiques physiques détaillées du terminal, ni des préférences de l'utilisateur. De plus, il est judicieux parfois de ne pas envoyer d'images animées ou de vidéo lorsque le débit de la ligne notamment, n'est pas suffisant. Dans ce cas, il faut adapter les informations plus finement de manière à rendre la diffusion de données compatible également avec la nature du réseau d'accès. Un groupe de travail ICAP (de l'anglais "Internet Content Adaptation Protocol") à l'IETF a défini une architecture client-serveur et un protocole de communication ICAP permettant à un périphérique tel qu'un cache de transmettre des messages http à un serveur d'application ICAP pour effectuer des traitements. Les traitements réalisés par le serveur d'application ICAP peuvent consister en des ajouts dynamiques de bandeaux publicitaires, des traductions de pages web, des filtrages d'information, des refus de se connecter à des sites web etc... Cependant, ces traitements ne concernent pas 2857191 4 l'adaptation de contenu en fonction de paramètres du terminal, des informations utilisateur ou des caractéristiques du réseau d'accès. Au W3C (de l'anglais "World Wide Web Consortium"), un groupe de travail a par ailleurs défini une recommandation CC/PP (de l'anglais "Composite Capabilities/ Preference Profile") pour mieux définir les informations concernant le terminal utilisé et les préférences de l'utilisateur. Cette recommandation ouvre la voie à des adaptations de contenus personnalisés. Les capacités d'un composant (CC) peuvent être perçues comme un ensemble de méta-données ou de propriétés et descriptions sur le matériel ainsi que le logiciel utilisé. Actuellement, il n'existe pas de navigateurs clients suivant cette norme alors que des produits côté serveurs existent. Il faut donc définir un moyen de fournir aux serveurs web distants les informations caractéristiques du terminal, du réseau d'accès et des préférences de l'utilisateur. Aussi, le problème technique objet de la présente invention, consiste à proposer un système de transmission dynamique, vers au moins un serveur distant, de paramètres caractéristiques d'une session de communication entre au moins un terminal et ledit serveur distant, à travers un réseau du type à commutation de paquets, qui permettrait de se substituer au navigateur du terminal de manière à transmettre au serveur distant des informations sur les caractéristiques physiques du terminal, sur la nature du réseaux d'accès ainsi que sur les préférences de l'utilisateur du terminal, afin que le serveur puisse ensuite adapter et personnaliser le contenu à délivrer sur le terminal. La solution au problème technique est obtenue, selon la présente invention, par le fait que le système 35 comprend: un moyen de stockage desdits paramètres 2857191 5 caractéristiques, et un module de transfert desdits paramètres caractéristiques à partir dudit moyen de stockage vers ledit serveur distant, ledit module de transfert étant disposé entre le terminal et le serveur distant et agencé de manière à intercepter une requête en provenance du terminal et à destination du serveur distant, à récupérer les paramètres caractéristiques de ladite session de communication, puis à insérer dynamiquement lesdits paramètres dans ladite requête et à transmettre ladite requête ainsi transformée vers ledit serveur distant. Ainsi, le module de transfert permet de chercher, dans le moyen de stockage, les paramètres caractéristiques de la session à établir, c'est à dire notamment les caractéristiques du terminal, du réseau d'accès et/ou des préférences de l'utilisateur, et de les transférer dynamiquement au serveur distant à chaque requête, au cours d'une session de communication, de sorte que le serveur distant puisse personnaliser le contenu à délivrer sur le terminal en fonction des paramètres lui ayant été communiqués. L'invention se rapporte en outre à un procédé de transmission dynamique, vers au moins un serveur distant, de paramètres caractéristiques d'une session de communication entre au moins un terminal et ledit serveur distant à travers un réseau du type à commutation de paquets. Ce procédé est remarquable en ce qu'il comprend les étapes consistant à : -intercepter une requête émanant dudit terminal et à 30 destination dudit serveur distant, -récupérer les paramètres caractéristiques de la session de communication, -insérer lesdits paramètres caractéristiques dans ladite requête et transmettre cette-dernière au 35 serveur distant, de manière à ce qu'il puisse tenir 2857191 6 compte de ces paramètres lorsqu'il décharge une page vers le terminal. Un autre objet de l'invention concerne un module de transfert vers au moins un serveur distant de paramètres caractéristiques d'une session de communication entre au moins un terminal et ledit serveur distant. Ce module de transfert est remarquable en ce qu'il comprend un code objet destiné à analyser une requête lui parvenant, puis à effectuer un traitement sur les paramètres caractéristiques avant de les insérer dans ladite requête. D'autres particularités et avantages de l'invention apparaîtront à la lecture de la description suivante faite à titre d'exemple illustratif et non limitatif en référence aux figures annexées qui représentent: - la figure 1, un schéma illustrant le principe de fonctionnement d'un système de transmission de paramètres caractéristiques d'une session de communication selon une première implémentation, - la figure 2, un schéma illustrant le principe de fonctionnement d'un système de transmission de paramètres caractéristiques d'une session de communication selon une deuxième implémentation. Le principe de fonctionnement d'un système de transmission automatique, vers un serveur distant, de paramètres caractéristiques d'une session de communication sera mieux compris au regard de la figure 1. Ce système a pour principal objectif de permettre de fournir à un serveur distant SW un certain nombre d'informations précises, notamment sur les caractéristiques du terminal T, sur les caractéristiques du réseau d'accès utilisé, et sur les préférences de l'utilisateur. Ces informations sont ensuite utilisées par le serveur SW distant pour adapter le service, c'est-à-dire par exemple la fourniture de contenus, à ces paramètres caractéristiques du terminal T, sur lequel sera 2857191 7 déchargé le contenu demandé, du réseau d'accès et des préférences de l'utilisateur. Le serveur distant SW est par exemple géré par un fournisseur d'accès à Internet ou, plus généralement, par un fournisseur de service. Dans la suite de la description, le terme "gestionnaire" est utilisé pour faire référence indifféremment à un fournisseur d'accès à Internet ou à un fournisseur de services gérant le serveur distant SW. Le système comprend d'une part un moyen de stockage 20 des paramètres caractéristiques et un moyen 30 permettant à l'utilisateur de renseigner ces paramètres et de les adresser au moyen de stockage 20, et d'autre part un mécanisme 10, ou module de transfert, pour la fourniture de ces informations au serveur distant SW. Deux types d'acteurs peuvent implémenter cette architecture. Ce peut par exemple être un fournisseur d'accès à Internet, qui offre ensuite le service attaché à cette architecture à des fournisseurs de services. Ce peut aussi être un opérateur de réseau d'accès qui offre le service attaché à cette architecture à des fournisseurs d'accès à Internet. Dans la suite de la description, par souci de simplification, il n'est fait référence qu'à un seul terminal T, un seul module de transfert 10 et un seul serveur distant SW. Cependant l'architecture de ce système ne se limite pas à la gestion d'un seul terminal T ni d'un seul serveur distant SW. Elle permet la prise en compte de plusieurs modules de transfert 10 et de plusieurs terminaux T, se connectant à plusieurs serveurs distants SW, via un ou plusieurs fournisseurs d'accès à Internet; un module de transfert 10 pouvant gérer un ou plusieurs serveurs distants SW. Dans la suite de la description, on désigne par 35 "paramètres caractéristiques d'une session" les 2857191 8 informations caractérisant le terminal T, le réseau d'accès utilisé et les préférences de l'utilisateur, pour une session de communication particulière entre ce terminal T et le serveur distant SW. Le système, tel qu'illustré sur la figure 1, permet dans une première étape, identifiée par le chiffre 1, de renseigner le moyen de stockage 20 sur les paramètres caractéristiques de la session à établir. Ces paramètres sont renseignés par l'utilisateur et modifiés par ce- dernier lorsqu'il le souhaite. Il n'est pas nécessaire de spécifier ces paramètres à chaque session, les données déjà renseignées étant sauvegardées dans le moyen de stockage 20. Dans une deuxième étape, identifiée par le chiffre 2 et les flèches en traits pointillés, il permet le transfert de ces informations vers le serveur distant SW. Pour stocker les paramètres caractéristiques de la session à établir, plusieurs solutions peuvent être envisagées. Dans un premier cas, une application, tournant sur le terminal T, permet à l'utilisateur de ce terminal de renseigner les caractéristiques du terminal et ses préférences et de les stocker sur le terminal, par exemple dans un fichier ou une base de données locale. Une autre solution consiste à utiliser un serveur Web pour renseigner les informations et utiliser un cookie pour stocker ces informations sur le terminal. Encore une autre solution consiste à utiliser un serveur Web pour renseigner ces informations et une passerelle d'accès pour y stocker les informations. Dans ce cas, la passerelle est gérée soit par l'utilisateur du terminal, soit par le fournisseur de la passerelle, soit par l'opérateur du réseau d'accès. Enfin, une autre solution consiste à utiliser un serveur Web, pour renseigner les informations, et une base de données globale, centralisée ou non, pour stocker les informations. 2857191 9 Toutes ces solutions présentent des avantages et des inconvénients. En effet, si les caractéristiques sont stockées dans le terminal, il n'est pas besoin de préciser le terminal utilisé. Cependant, dès que l'utilisateur change de terminal, il faut alors re-déclarer les caractéristiques sur ce dernier terminal, même si celui-ci a les mêmes caractéristiques que le premier terminal utilisé. Par contre, lorsque les paramètres caractéristiques sont stockés dans le réseau, même si on change de terminal, ces informations prédéfinies sont disponibles pour n'importe quel autre terminal de l'utilisateur. Dans ce cas, la gestion du nomadisme de l'utilisateur, tant du point de vue mobilité que du point de vue terminal, peut être prise en compte. Plusieurs solutions sont donc possibles. Dans la suite de la description, la solution retenue pour le renseignement (étape 1) du moyen de stockage 20 correspond au cas où les informations sont renseignées via un formulaire de déclaration disponible sur un serveur web dédié, référencé 30 sur la figure 1, et stockées dans une base de données 20 de ce serveur. Cette solution préférée permet d'englober le plus de cas d'utilisation possibles et de gérer le nomadisme. Pour ce faire, l'utilisateur doit connecter son terminal T sur un site Web prédéfini 30 destiné à gérer les formulaires de déclaration, et connecté à la base de données 20. L'utilisateur doit ensuite renseigner le formulaire de déclaration, par exemple au format PHP (de l'anglais "Personal Hypertext Preprocessor"), en donnant des informations notamment sur le type de terminal, la taille de l'écran, le nombre de couleurs, le son, le processeur etc.... Le serveur 30 étant relié à la base de données 20, il est capable de la mettre à jour en fonction des valeurs 35 définies par l'utilisateur. Le serveur 30 peut communiquer 2857191 10 avec la base de données 20 par exemple selon des requêtes SQL. Cette mise à jour étant faite, si l'utilisateur modifie les paramètres pendant la connexion, cette modification pourra être prise en compte immédiatement. Il est à noter que certains paramètres peuvent être prédéfinis par défaut dans les formulaires, et peuvent être modifiés par sélection d'un autre paramètre dans une liste déroulante par exemple. Les informations stockées dans la base de données 20 10 peuvent être de différentes nature et sont très variées. A titre d'exemple non exhaustif, on peut citer les caractéristiques suivantes: Pour le matériel: - type de terminal (PC, PDA, téléphone portable,...) 15 -marque - modèle - mémoire vive - caractéristique audio (stéréo, pas de son,...) -type d'écran -taille de l'écran -résolution écran - processeur Pour le logiciel: - nom du système d'exploitation -version du système d'exploitation applications (identifiant, nom, version, marque) - format audio (nom, format, standard, version) - format vidéo (nom, format, standard, version) - format images (nom, format, standard, version -types de protocoles supportés (nom, format, standard, version) Pour les interfaces d'accès dans le domaine privé: -Wifi, Ethernet 100BT etc... Pour le type de réseau d'accès utilisé: - ADSL, GPRS, UMTS, Wifi etc... 2857191 11 Il est préférable que la base 20 contienne le type de réseau d'accès utilisé par l'utilisateur (ADSL, UMTS, Wifi...) ainsi que la liste des interfaces utilisées dans le domaine privé car cela peut influer fortement le contenu à délivré sur le terminal. En effet, suivant le débit de la ligne de l'utilisateur, le fournisseur de service pourra choisir d'envoyer ou non une vidéo, des images ou même d'adapter des informations plus finement. En plus de ces paramètres caractéristiques, on retrouve également, dans la base de données 20, un index d'entrée dans la base, c'est-à-dire une clé constituée par exemple d'un "login", c'est-à-dire d'un identifiant attaché au terminal T utilisateur; par exemple d'un nom de "domaine" du fournisseur d'accès à Internet, tel que par exemple wanadoo (marque déposée) etc... ; de l'adresse IP du terminal utilisateur valable l'instant de la session; de l'adresse IP du module de transfert 10 en charge du terminal utilisateur; et éventuellement d'un champ Clients indiquant si gestionnaire du serveur distant SW, avec lequel la session de communication doit être établie, a souscrit ou pas au service attaché à l'architecture et consistant à prendre en compte les caractéristiques du terminal et du réseau d'accès ainsi que les préférences de l'utilisateur avant de décharger une page sur l'écran du terminal. L'index d'entrée dans la base, encore dénommé "clé", qui est par exemple constituée du couple "login/domaine" mais qui peut être constituée d'autres paramètres, permet au serveur distant SW ou au terminal T de renseigner l'adresse IP allouée au terminal T pour la session en cours. Cette clé est le seul moyen d'accéder aux informations d'un utilisateur. L'adresse IP sert ensuite de deuxième clé pour accéder aux informations relatives à cette session. L'adresse IP est renseignée soit directement par le fournisseur d'accès à Internet, si la 2857191 12 base 20 est hébergée chez lui, soit par le terminal, ce qui nécessite dans ce cas une modification du kit de connexion, ou par un élément intermédiaire appartenant à l'opérateur de réseau d'accès et localisé entre le terminal et le fournisseur d'accès à Internet, si la base 20 est hébergée chez l'opérateur de réseau d'accès. La base de données 20 contient l'adresse IP utilisée par le terminal T lors de la session en cours. Or, dans le mode actuel de connexion en IPv4, cette adresse est susceptible d'être différente à chaque nouvelle connexion: les adresses sont attribuées aux terminaux T par les fournisseurs d'accès à Internet lors de la connexion. L'adresse IP n'étant pas fixe, il est nécessaire de mettre à jour la base 20 avec cette adresse à chaque connexion du terminal T. Si la base 20 est gérée par une entité tierce, par exemple par un opérateur de réseau d'accès, cela nécessite une modification du kit de connexion du fournisseur d'accès à Internet. En effet, dans ce cas le fournisseur d'accès à Internet doit renseigner la base de données 20 sur l'adresse IP attribuée au terminal T pendant la session en cours, par exemple grâce à la clé commune constituée par le couple "login/domaine". Si la base 20 est gérée par le fournisseur d'accès à Internet, alors dans ce cas, aucune modification du kit de connexion n'est nécessaire puisqu'il gère lui-même les attributions d'adresses IP et la base de données. Il est donc en mesure d'harmoniser les données sur les deux entités. En ce qui concerne le transfert des paramètres caractéristiques de la session à établir entre un terminal T et le serveur distant SW (étape 2), le mode de réalisation envisagé consiste à insérer dynamiquement les paramètres caractéristiques de la session de communication dans chaque requête, de type "http/get" par exemple, à destination d'un serveur distant SW au cours de cette 2857191 13 session de communication. Pour cela, le module de transfert 10 est disposé entre le terminal T et le serveur distant SW et permet d'intercepter une requête de type http par exemple, de récupérer dans un moyen de stockage 20 les paramètres caractéristiques de la session de communication, puis d'insérer dynamiquement les paramètres dans cette requête http et de transmettre la requête ainsi transformée vers le serveur distant SW. Pour cela, le module de transfert comprend un code objet destiné à analyser la requête lui parvenant, puis à effectuer un traitement sur les paramètres caractéristiques avant de les insérer dans ladite requête. Le moyen de stockage dans lequel les paramètres sont récupérés est constitué soit par la base de données 20 du réseau, soit par un autre moyen de stockage de type table, base, fichier ou cookie par exemple, situé en local dans le module de transfert 10, dans le cas où ces paramètres ont déjà été récupérés une première fois au cours de la session et qu'ils ont été enregistrés en local. Le système comprend en outre une interface 12 disposée entre le module de transfert 10 et le moyen de stockage 20 pour rendre compatible les protocoles de communication entre ces deux entités et gérer ainsi le dialogue entre elles. Les protocoles de communication entre ces différentes entités peuvent être variés. A titre d'exemple, le protocole de communication à distance SOAP (de l'anglais "Simple Object Access Protocol") sur HTTP (de l'anglais "HyperText Transfer Protocol") et une description des données en XML (de l'anglais "eXtended Markup Language") peut être utilisé entre le module de transfert 10 et l'interface 12. L'interrogation de la base de données 20 par l'interface peut être réalisée selon le protocole SQL. Les paramètres caractéristiques sont remontés au serveur distant SW suivant une certaine structure, par 2857191 14 exemple sous la forme d'un document XML avec des étiquettes XML définies. Ceci implique que le serveur distant SW connaisse cette structure et notamment les noms des étiquettes XML représentant les caractéristiques. Le module de transfert 10 peut être géré par l'opérateur de réseau d'accès ou par le fournisseur d'accès à Internet selon les cas. Pour mettre en place la relation entre la base 20 et le module de transfert 10, plusieurs implémentations sont possibles. Deux de ces implémentations sont illustrées sur les figures 1 et 2. Une première implémentation, illustrée sur la figure 1, consiste à intégrer dans l'architecture un serveur mandataire, plus couramment appelé serveur proxy, de type CC/PP, en tant que module de transfert. Ce serveur proxy CC/PP, référencé 10, permet alors d'insérer, dans les requêtes émanant du terminal T en direction du serveur distant SW, les paramètres caractéristiques de la session au format CC/PP. Comme mentionné ci-dessus, les navigateurs Internet conformes à la recommandation CC/PP sont actuellement peu nombreux, alors qu'il existe plusieurs produits serveurs respectant cette conformité. Cette implémentation permet donc d'insérer dans le flux de données, les paramètres caractéristiques de la session au format CC/PP. Dans ce cas, un utilisateur configure le navigateur de son terminal T en utilisant un proxy CC/PP (adresse IP + Port du proxy) pour faire transiter des requêtes par ce proxy CC/PP 10. Dans le cas où l'utilisateur utilise déjà un proxy http pour se connecter à Internet, c'est le cas par exemple des proxy pour une entreprise, des proxy mis en oeuvre par un fournisseur d'accès à Internet ou des proxy installés chez un particulier ayant plusieurs terminaux, le rôle premier des proxy http étant de cacher l'adresse IP du terminal en la remplaçant par la sienne, 2857191 15 il est clair que si le proxy http est situé entre le terminal utilisateur et le proxy CC/PP 10, l'insertion des paramètres caractéristiques du terminal au format CC/PP ne peut se faire puisque ce sont les caractéristiques du proxy http qui seront insérées et non les caractéristiques du terminal utilisateur. Pour que l'invention puisse être mise en uvre, elle impose donc que le proxy CC/PP 10 soit localisé entre le terminal T utilisateur et un éventuel proxy http. Eventuellement, le proxy CC/PP peut être colocalisé avec le proxy http à condition que les opérations entre les composants se déroulent dans le bon ordre. proxy CC/PP avant Proxy http. Lorsque l'utilisateur établi une connexion à Internet via un fournisseur d'accès à Internet, ce-dernier renseigne la base de données 20 sur l'adresse IP allouée soit par le serveur distant SW soit par le terminal T, à l'utilisateur pour cette session. Dans cette implémentation, les requêtes sont transmises au proxy CC/PP 10 puisque l'utilisateur du terminal T a configuré l'adresse IP et le port du proxy CC/PP 10 dans le navigateur de son terminal T. Sur réception d'un paquet IP, le proxy CC/PP 10 détecte l'adresse IP du terminal T émetteur. Si cette adresse est inconnue alors le proxy CC/PP 10 interroge la base de données 20, via l'interface 12, pour détecter si le gestionnaire du serveur distant SW destinataire a souscrit au service attaché à l'architecture de ce système. S'il a souscrit au service, les informations (paramètres caractéristiques de la session de communication) correspondant à l'adresse IP du terminal T sont renvoyées au proxy CC/PP 10. A la réception de cette adresse, le proxy CC/PP 10 stocke en mémoire ces informations associées à l'adresse IP de l'utilisateur. De plus, un module de la base de données 20, un frontal d'écriture par exemple, enregistre pour 2857191 16 cette session et ce terminal T, l'adresse IP du proxy CC/PP 10 en charge du terminal utilisateur T et du serveur distant SW. Ainsi, en cas de modification des informations en cours de session, le module de la base 20 peut émettre une notification au proxy CC/PP 10 pour lui indiquer que les informations de la session, correspondant à cette adresse IP, ont changé. Dans le cas contraire, si le gestionnaire du serveur distant SW n'a pas demandé à recevoir les paramètres caractéristiques de la session, alors le proxy CC/PP 10 stocke l'adresse IP de l'utilisateur et celle du serveurdistant SW dans une table indiquant qu'aucune insertion de paramètres caractéristiques de session n'est à faire pour cette paire d'adresses. D'autre part, si l'adresse IP du terminal T émetteur est déjà connue, c'est-à-dire si des paquets sont déjà passés, alors le proxy CC/PP 10, par l'intermédiaire de son code objet associé, recherche cette adresse dans ses tables en mémoire et vérifie s'il faut insérer dans la requête les paramètres caractéristiques de la session ou non. Selon les cas, le proxy CC/PP 10 ajoute ou non les paramètres caractéristiques de la session dans la requête et retransmets cettedernière au serveur distant SW. Ainsi, le code objet destiné à faire fonctionner le proxy CC/PP 10 permet de récupérer les paramètres caractéristiques de la session de communication, soit dans une mémoire en local soit dans le moyen de stockage 20, et de les insérer dans la requête au format CC/PP. En fin de session, le fournisseur d'accès à Internet indique à la base 20 que la connexion est terminée. L'adresse IP du terminal T émetteur est supprimée de la base 20 et une notification est émise au proxy CC/PP 10 pour lui indiquer de supprimer les paramètres et l'adresse IP du terminal T de ses tables et ses mémoires. Enfin 2857191 17 l'adresse IP du proxy CC/PP 10 en charge du terminal T est supprimée de la base 20 pour cette session. Cette implémentation repose sur le fait que le proxy CC/PP 10 est capable de formater les informations utilisateur au format CC/PP pour les serveurs conformes CC/PP. Une deuxième implémentation, illustrée sur la figure 2, consiste à intégrer dans l'architecture une plate-forme de réseau actif en tant que module de transfert. De manière connue, les noeuds actifs permettent d'effectuer des traitements sur les données contenues dans des paquets actifs qu'ils retransmettent, ce que les routeurs classiques ne peuvent pas faire. Ces traitements ne sont plus localisés en un seul endroit, c'est à dire sur le serveur et le terminal usager comme dans l'architecture client-serveur classique, mais ils sont délocalisés dans les différents n uds actifs du réseau actif. Les n uds actifs sont donc bien plus évolués que les routeurs traditionnels, car ils doivent pouvoir interpréter des programmes, être extensibles, et bien sûr savoir gérer le réseau. Dans cette implémentation, un serveur mandataire, plus couramment appelé serveur proxy, de type CC/PP 13, similaire au proxy CC/PP 10 de la figure 1, est déployé dans un n ud actif 11. Ce proxy n'est alors plus un composant unique fonctionnant sur une machine quelconque comme dans l'implémentation illustrée sur la figure 1, mais un composant actif fonctionnant sur une plate-forme de réseau actif. Tout comme dans le cas de l'implémentation précédente illustrée sur la figure 1, lorsque l'utilisateur utilise déjà un proxy http pour se connecter à Internet, le noeud actif 11 contenant le proxy CC/PP 13 doit être localisé entre le terminal T utilisateur et cet éventuel proxy http. Eventuellement, le noeud actif 11, dans lequel le 2857191 18 proxy CC/PP 13 est déployé, peut être co-localisé avec le proxy http à condition que les opérations entre les composants se déroulent dans le bon ordre: proxy CC/PP avant proxy http. Lorsque le terminal T utilisateur établi une connexion à Internet via un fournisseur d'accès à Internet, le serveur distant SW ou le terminal T renseigne la base de données 20 sur l'adresse IP qui lui est allouée pour cette session. Dans cette implémentation, les requêtes circulent forcément par le n ud actif 11, du fait de la configuration propre aux réseaux. Par conséquent, aucune configuration n'est nécessaire sur le terminal T. Ce mode d'implémentation présente donc l'avantage que l'insertion des paramètres caractéristiques de la session de communication dans les requêtes est transparente pour l'utilisateur du terminal T et pour le gestionnaire du serveur distant. Cependant, puisque les données originales des requêtes de l'utilisateur sont modifiées, cela implique qu'un module du n ud actif 11, identifié par la référence 15 sur la figure 2, gère les connexions TCP (de l'anglais "Transmission Control Protocol") et notamment les valeurs des attributs "Seq" (pour "Sequence number" en anglais, attribut permettant d'indiquer le nombre d'octets émis dans une transmission) et "Ack" (pour "Acknowledgement number" en anglais, attribut accusant réception des octets reçus dans une transmission) entre les terminaux utilisateur T et le serveur distant SW. La suite des opérations est quasiment la même que le proxy CC/PP fonctionne de manière autonome (proxy CC/PP 10 de la figure 1) ou déployée sur un noeud actif 11 (proxy CC/PP 13 de la figure 2). La gestion des adresses, nécessitant ou non une modification des requêtes, est différente. De plus, la gestion des connexions TCP à réaliser est effectuée par le module 15 du noeud actif 11 2857191 19 dans le cas de la deuxième implémentation (figure 2), alors qu'elle est effectuée automatiquement par la pile de protocole TCP lors de l'utilisation du proxy CC/PP 10 configuré en proxy autonome dans le cas de la première implémentation (figure 1). Une différence dans le traitement des informations, réside dans le fait que lorsque le gestionnaire du serveur distant SW n'a pas demandé à recevoir les paramètres caractéristiques de la session, le noeud actif 11 hébergeant le proxy CC/PP 13 et/ou tout autre code spécifique 16, stocke l'adresse IP du terminal T et celle du serveur distant SW dans une table indiquant qu'aucune insertion de paramètres caractéristiques de session n'est à faire pour cette paire d'adresses. Dans ce cas, les requêtes suivantes seront transmises immédiatement par le noeud actif 11 sans avoir à remonter jusqu'au code objet associé au proxy CC/PP 13 ou au code objet spécifique 16. De plus, dans ce cas, en fin de session, une notification est émise au proxy CC/PP 13 pour lui indiquer de supprimer non seulement les paramètres caractéristiques et l'adresse IP de ses tables et mémoires, mais aussi les informations stockées dans le noeud actif 11 qui l'héberge. Le fait d'utiliser une plate-forme de réseau actif comme module de transfert présente plusieurs avantages. Il est concevable d'imaginer qu'un ou plusieurs gestionnaire(s) de serveur(s) distant(s) SW souhaitent utiliser un ou plusieurs format (s) spécifique (s) d'autres standards ou éventuellement propriétaire(s), pour la gestion de ces informations, par exemple s'il(s) ne souhaite(nt) que quelques attributs et pas tous, ou alors selon un format bien défini et différent de la structure XML/RDF défini pour CC/PP. Dans ce cas, grâce à l'utilisation d'un noeud actif 11, ce(s) gestionnaire(s) sera(ont) en mesure de déployer, en dynamique, leur(s) 2857191 20 propre (s) code (s) objet (s) 16 dans le noeud actif 11 pour effectuer le (s) traitement (s) qu'il (s) souhaite(nt). En effet, CC/PP est un standard défini au W3C, mais d'autres standards existent tels que UAProf défini à l'OMA (de l'anglais "Open Mobile Alliance"), Conneg défini à l'IETF ("Internet Engineering Task Force) pour la négociation etc... De plus, certains standards émergeants, relatifs aux applications multimédia, tels que MPEG21, utilisent des caractéristiques utilisateurs pour réaliser l'adaptation de contenu multimédia. Le protocole CC/PP peut être utilisé conjointement avec MPEG21 mais aussi UAProf. De ce fait, le module 16 déployé peut donc être un module en relation avec ces standards pour insérer les informations caractéristiques de la session de communication. La présente invention s'applique donc pour un proxy CC/PP comme défini cidessus mais aussi pour un proxy d'un autre format. L'utilisation d'un noeud actif permet donc d'imaginer de multiples et différentes utilisations de ces paramètres caractéristiques de la session et apporte ainsi évolutivité, souplesse et flexibilité. Aussi, de par sa fonctionnalité, le déploiement 25 dynamique et automatique d'un code spécifique 16 ainsi que la gestion de composant (proxy CC/PP 13) sera simplifiée, et les mises à jour seront automatisées. Bien sûr, les deux implémentations ci-dessus présentées ne sont pas les seuls exemples de mise en uvre du système selon l'invention. D'autres implémentations peuvent être envisagées, telles que, par exemple, l'utilisation d'un proxy CC/PP sur architecture ICAP en tant que module de transfert. Le système qui vient d'être décrit est destiné à être 35 intégré dans un système plus général de télécommunication 2857191 21 quelconque comprenant au moins un terminal (T) destiné à communiquer avec au moins un serveur distant (SW) à travers un réseau de communication de type Internet par exemple. Ce système permet de délivrer un service, auprès des fournisseurs de services ou des fournisseurs d'accès à Internet, qui peut être mis en oeuvre gratuitement ou bien faire l'objet d'un service à valeur ajoutée payant auquel les acteurs concernés (fournisseurs de services ou fournisseurs d'accès à Internet) doivent s'abonner. Dans ce dernier ças, le mode d'implémentation est un peu plus compliqué puisqu'il impose de gérer des tables de gestionnaires ayant souscrit au service. De plus, dans ce cas, il est préférable de songer à des mécanismes de cryptages des informations. Cependant, même si ce choix impose des contraintes technologiques supplémentaires, il n'affecte en rien le principe de l'invention et ne modifie que très peu les mécanismes décrits. 2857191 22 REVENDICATIONS 1. Système de transmission dynamique, vers au moins un serveur distant (SW), de paramètres caractéristiques d'une session de communication entre au moins un terminal (T) et ledit serveur distant (SW), à travers un réseau du type à commutation de paquets, caractérisé en ce qu'il comprend: un moyen de stockage (20) desdits paramètres caractéristiques, et un module de transfert (10) desdits paramètres caractéristiques à partir dudit moyen de stockage (20) vers ledit serveur distant (SW), ledit module de transfert (10) étant disposé entre ledit terminal (T) et ledit serveur distant (SW), et agencé de manière à intercepter une requête en provenance du terminal (T) et à destination du serveur distant (SW), à récupérer les paramètres caractéristiques de ladite session de communication, puis à insérer dynamiquement lesdits paramètres dans ladite requête et à transmettre ladite requête ainsi transformée vers ledit serveur distant (SW). 2. Système selon la revendication 1, caractérisé en ce qu'il comprend en outre une interface (12) disposée entre le module de transfert (10) et le moyen de stockage (20) pour leur permettre de dialoguer selon des protocoles différents. 2857191 23 3. Système selon la revendication 1 ou 2, caractérisé en ce que le module de transfert (10) se présente sous la forme d'un serveur proxy de type CC/PP. 4. Système selon la revendication 1 ou 2, caractérisé en ce que le module de transfert (10) se présente sous la forme d'un noeud actif (11). 5. Système selon la revendication 4, caractérisé en ce que le noeud actif (11) intègre un serveur proxy de type CC/PP (13). 6. Système selon l'une des revendications précédentes, caractérisé en ce que le moyen de stockage (20) est constitué par une base de données d'un serveur (30) dédié. 7. Système selon l'une des revendications précédentes, caractérisé en ce que les paramètres caractéristiques de la session regroupent les caractéristiques physiques du terminal (T), et/ou le type de réseau d'accès et/ou les préférences de l'utilisateur. 8. Système selon l'une quelconque des revendications précédentes, caractérisé en ce que les paramètres caractéristiques d'une session sont repérés par une clé unique construite sur la base d'au moins un identifiant et un nom de domaine. 9. Procédé de transmission dynamique, vers au moins un serveur distant (SW), de paramètres caractéristiques d'une session de communication entre au moins un terminal (T) et ledit serveur distant (SW) à travers un réseau du type à 15 20 2857191 24 commutation de paquets, caractérisé en ce qu'il comprend les étapes consistant à : - intercepter une requête émanant dudit terminal (T) et à destination dudit serveur distant (SW), - récupérer les paramètres caractéristiques de la session de communication, - insérer lesdits paramètres caractéristiques dans ladite requête et transmettre cette-dernière au serveur distant (SW), de manière à ce qu'il puisse tenir compte de ces paramètres lorsqu'il décharge une page vers le terminal (T). 1O.Procédé selon la revendication 9, caractérisé en ce qu'une étape préalable consiste à stocker les paramètres caractéristiques de la session de communication dans un moyen de stockage (20). 11.Système de télécommunication comprenant au moins un terminal (T) destiné à communiquer avec au moins un serveur distant (SW) à travers un réseau à commutation de paquets de type Internet, caractérisé en ce qu'il comporte un système de transmission dynamique des paramètres caractéristiques de la session de communication selon l'une des revendications 1 à 8. 12.Module de transfert (10), vers au moins un serveur distant (SW), de paramètres caractéristiques d'une session de communication entre au moins un terminal (T) et ledit serveur distant (SW), caractérisé en ce qu'il comprend un code objet (10; 13, 16) destiné à analyser une requête lui parvenant, puis à effectuer un traitement sur les 10 2857191 25 paramètres caractéristiques avant de les insérer dans ladite requête. 13.Module de transfert selon la revendication 12 ou 13, caractérisé en ce que le code objet est associé à un serveur proxy de type CC/PP (10; 13) permettant d'insérer lesdits paramètres caractéristiques au format CC/PP dans ladite requête. 14.Module de transfert selon la revendication 12 ou 13, caractérisé en ce qu'il comporte en outre un ou plusieurs autre(s) code(s) spécifique(s) (16), qui est (sont) déployé(s) dynamiquement, pour permettre de faire un ou plusieurs autre(s) traitement(s) spécifique(s) sur lesdits paramètres caractéristiques.