Brevet FR2841713A1 — publié le 20040102

SYSTEME D'ACCES A UN RESEAU D'INFORMATIONS OFFRANT DES SERVICES PERSONNALISES L'invention concerne le domaine des services offerts aux abonnés de réseaux de type Internet. Afin de rendre leurs offres d'abonnement attractives, certains fournisseurs d'accès à Internet proposent des services à leurs clients. Ils proposent par exemple des services de compression des données, de contrôle parental, d'antivirus, etc. Les services proposés sont mis en oeuvre par des applications spécifiques installées sur les plates-formes d'accès des opérateurs, ce qui présente l'avantage de fournir un service transparent à l'utilisateur. Dans la plupart des systèmes actuels, le flux des données circulant entre un terminal client et le réseau est filtré par chaque application. La figure 1 illustre un exemple de système permettant la mise en oeuvre de ces services. Sur cette figure, un terminal client 10 est connecté à un serveur d'accès 20 lui donnant accès à la plate-forme 30 d'un fournisseur. La plate-forme 30 inclut une pluralité de serveurs 1, 2, 3, chaque serveur étant destiné à fournir un service donné. Les flux de données transitant entre le terminal client 10 et le réseau 50 passent successivement par chacun des serveurs 1, 2, 3. Chaque serveur détermine si le client a ou non souscrit au service qu'il fournit et dans l'affirmative traite en conséquence les données qu'il reçoit. Puis il transmet ces données au serveur suivant. L'inconvénient d'un tel système est que l'ensemble des flux échangés entre le client 10 et le réseau 50 passe par tous les serveurs 1, 2, 3, même si le client n'a souscrit à aucun service ou a souscrit uniquement à certains services. Il en résulte que les serveurs 1, 2, 3 doivent pouvoir supporter une charge de traitement importante. En outre, les délais de transfert des données à travers l'ensemble des serveurs 1, 2, 3 peuvent s'avérer relativement longs, ces délais étant liés en particulier au fait que chaque serveur doit déterminer si le client a ou non souscrit à un service. Un autre type de système existant consiste à classer les clients dans des sous-ensembles d'adresses IP (Internet Protocole), chaque sousensemble étant associé à une combinaison de services. Dans ce système, les données sont transmises aux serveurs fournissant des services en fonction de l'adresse IP qu'elles contiennent. Ainsi qu'illustré sur la figure 2, un tel système comprend un serveur d'authentification 60 permettant d'affecter à chaque client 10 une adresse IP lorsque celui-ci se connecte au réseau Internet, cette adresse IP étant choisie dans le sous-groupe correspondant aux services auxquels il a souscrit. Le terminal client 10 est connecté à un serveur d'accès 20 lui donnant accès à la plate-forme 30 d'un opérateur. Cette plate-forme 30 inclut un routeur de coeur de plate-forme 70 et une pluralité de serveurs 1, 2, 3, chaque serveur étant destiné à fournir un service donné. Le routeur de coeur 70 détecte l'adresse IP du client et transmet les flux de données uniquement aux serveurs 1, 2 ou 3 correspondants aux services auxquels le client a souscrit. Ce système garantit de meilleures performances que le système de la figure 1 dans la mesure o les flux de données ne transitent que par les serveurs concernés et que ces serveurs n'ont pas à déterminer si un client a ou non souscrit à un service. Ce système présente néanmoins certains inconvénients. En particulier, les sous-groupes des adresses IP ne peuvent pas être facilement modifiés. Ces sous-groupes doivent par conséquent être dimensionnés pour contenir un grand nombre d'adresses de manière à pouvoir s'adapter aux fluctuations du nombre de connexions. En outre, le nombre des sous-ensembles d'adresses IP nécessaires augmente de façon croissante avec le nombre de services proposés. En effet, l'ajout d'un service double le nombre de sous-groupes d'adresses IP nécessaires. De plus, les adresses IP des clients étant figées durant la durée de la connexion, ceux-ci ne peuvent modifier les services auxquels ils ont souscrit en cours de connexion. Enfin, dans le cas de location de liaisons Internet ou autres services destinés aux professionnels, il n'est généralement pas possible de modifier les adresses IP attribuées, donc de modifier les services offerts. Un but de l'invention est de proposer un système plus souple que les systèmes de l'art antérieur. En particulier, ce système devrait pouvoir s'adapter à un nombre important de connexions et permettre de modifier facilement les services auxquels ont souscrit les abonnés. A cet effet, l'invention propose un système d'accès à un réseau offrant des services personnalisés comprenant une plate-forme d'accès au réseau, la plate-forme d'accès incluant un ensemble de serveurs, chaque serveur étant destiné à traiter des données qu'il reçoit pour fournir un service donné, caractérisé en ce que la plate-forme d'accès comprend: - une base de données contenant des informations relatives à un ensemble de clients, chaque client étant associé à un ensemble de services auxquels il a souscrit, - un module de marquage apte à insérer dans un paquet de données en provenance d'un terminal client une information de marquage relative au(x) service(s) associé(s) au client dans la base de données, - un module de routage apte à diriger le paquet de données en provenance du terminal client vers un ou des serveur(s) en fonction de l'information de marquage insérée dans le paquet de données par le module de marquage. Le système d'accès de l'invention réalise un aiguillage des données au coeur du réseau. Le système d'accès de l'invention permet avantageusement de router les flux de données en fonction d'une information relative aux services auxquels le client a souscrit. Par conséquent, dans ce système, le routage des flux de données ne dépend pas de l'adresse IP des clients. Ce système permet donc de supprimer les contraintes sur le choix des adresses IP des clients. Ce système permet en outre de modifier facilement les services associés à un client en cours de connexion. Il suffit pour cela de modifier ces services dans la base de données. Dans une mise en oeuvre de l'invention, le système comprend en outre un serveur d'authentification apte à attribuer au terminal client une adresse IP lorsque celui-ci se connecte à un serveur d'accès à la plateforme, ledit serveur d'authentification étant apte à transmettre à la base de données des informations associant l'adresse IP et l'identité du client, et la base de données étant apte à recevoir lesdites informations et à transmettre au module de marquage des informations associant l'adresse IP du client et les services souscrits par ce client, le module de marquage étant apte à lire l'adresse IP du paquet de données qu'il reçoit et en fonction de cette adresse, à insérer dans ce paquet de données une information de marquage. De manière avantageuse, l'information de marquage est inscrite par le module de marquage dans un champ prédéfini du paquet de données. Dans une mise en oeuvre de l'invention, le module de marquage est apte à enregistrer la valeur initiale du champ du paquet de données qu'il reçoit et à remplacer cette valeur par une information de marquage et après traitement du paquet de données par le ou les serveur(s) de service, le module de marquage est apte à rétablir la valeur initiale du champ. Dans cette mise en oeuvre, le module de marquage réalise également une fonction de démarquage des données transitant des serveurs de service vers les clients de sorte que ce marquage soit totalement transparent pour les clients. Par exemple, l'information de marquage est inscrite par le module de marquage dans un champ TOS (Type de service) du paquet de données. Alternativement, l'information de marquage est inscrite par le module de marquage dans un champ OPTIONS du paquet de données. Selon une mise en oeuvre possible de l'invention, l'information de marquage est codée par une séquence de bits, chaque bit étant associé à un service. Selon une autre mise en oeuvre possible de l'invention, l'information de marquage est codée par une séquence de bits, chaque séquence étant associée à un bouquet de services. L'invention concerne également un procédé d'accès à un réseau offrant des services personnalisés selon lequel: - un client souscrit à un ensemble de services proposés par un fournisseur d'accès, - le terminal client se connecte à une plate-forme d'accès au réseau du fournisseur d'accès et transmet des données à la plate-forme, - la plate-forme d'accès répartit lesdites données vers des serveurs de service en fonction des services auxquels le client a souscrit, - les serveurs de service traitent les données et les transmettent au réseau, caractérisé en ce que la répartition des données vers des serveurs de service comprend les étapes selon lesquelles: - un module de marquage insère dans un paquet de données en provenance du terminal client une information de marquage relative au(x) service(s) associé(s) au client, - un module de routage dirige le paquet de données en provenance du terminal client vers un ou des serveur(s) en fonction de l'information de marquage insérée dans le paquet de données par le module de marquage. Le procédé de l'invention peut comprendre les étapes selon lesquelles: lorsque le client souscrit à un ou des service(s) proposés par le fournisseur d'accès, des informations relatives au client et au(x) service(s) au(x)quel(s) il a souscrit sont enregistrées dans une base de données, - lorsque le terminal client se connecte à un serveur d'accès à la plateforme, un serveur d'authentification attribue audit terminal client une adresse IP, - ledit serveur d'authentification transmet à la base de données des informations associant l'adresse IP et l'identité du client, - la base de données transmet au module de marquage des informations associant l'adresse IP du client et les services souscrits par ce client, - le module de marquage lit l'adresse IP du paquet de données qu'il reçoit et en fonction de cette adresse, insère dans ce paquet de données une information de marquage. D'autres caractéristiques et avantages ressortiront encore de la description qui suit laquelle est purement illustrative et non limitative et doit être lue en regard des figures annexées parmi lesquelles: - la figure 1 est une représentation schématique d'un premier type de système de d'accès à un réseau de l'art antérieur, - la figure 2 est une représentation schématique d'un deuxième type de système d'accès à un réseau de l'art antérieur, - la figure 3 est une représentation schématique d'un système d'accès conforme à un mode de réalisation de l'invention, - la figure 4 est une représentation schématique de la structure d'un paquet de données IP, - les figures 5 et 6 donnent des exemples de codage de l'information insérée par le module de marquage en fonction des services associés au client. Sur la figure 3, le système d'accès comprend un serveur d'accès 20 et une plate-forme d'accès 30 en communication avec un réseau 50. La plate-forme d'accès 30 comprend une base de données LDAP (Lightweight Directory Access Protocol) 80 recensant des informations relatives à un ensemble de clients, chaque client étant associé à un ensemble de services auxquels il a souscrit. La plate-forme 30 comprend en outre un module de marquage/démarquage 100 et un module de routage 90 apte à diriger les flux d'information vers des serveurs 1, 2, 3,... n destinés à fournir des services. Les terminaux clients pouvant se connecter au réseau peuvent être par exemple des ordinateurs 10, des assistants personnels 11 ou des téléphones mobiles 12 par l'intermédiaire d'un réseau de téléphonie mobile 15. De manière classique, lorsque un terminal client 10 se connecte au serveur d'accès 20, un serveur d'authentification 60 affecte au terminal client 10 une adresse IP qui lui permettra d'échanger des informations avec le réseau 50. Le serveur d'authentification 60 transmet à la base de données LDAP 80 des informations associant l'adresse IP et l'identité du client 10. La base de données 80 retrouve les services associés à l'identité du client et transmet au module de marquage/démarquage 100 des informations associant l'adresse IP du client et les services souscrits par ce client. En fonction de ces informations, le module de marquage/démarquage 100 insère dans les paquets de données qu'il reçoit en provenance du terminal client 10 une information relative aux services souscrits par le client. Il transmet ensuite les paquets de données marquées au module de routage 90. Le module de routage 90 détecte l'information de marquage et en fonction de cette information transmet le paquet de données au(x) serveur(s) 1, 2, 3...ou n concerné(s). Le(s) serveur(s) 1, 2, 3,...ou n traite(nt) le paquet de données et le renvoie(ent) vers le module de routage 90 qui le transmet au module de marquage/démarquage 100. Le module de marquage/démarquage 100 supprime l'information de marquage du paquet de données et le transmet au réseau 50. La figure 4 représente un exemple de structure d'un paquet IP de données. De manière connue, le paquet de données comprend des champs prédéfinis codés sur un certain nombre de bits. Selon une mise en oeuvre de l'invention, l'information de marquage du paquet de données est inscrite dans le champ TOS (Type de service) du paquet de données. Ce champ se compose de 8 bits et contient initialement des informations relatives à l'ordre de priorité du paquet de données. Le module de marquage/démarquage 100 enregistre la valeur du champ TOS et la remplace par des informations relatives aux services souscrits par le client avant de l'envoyer vers le module de routage 90. Le module de routage 90 lit les informations contenues dans le champ TOS et en déduit les serveurs de service auxquels il doit transmettre le paquet pour traitement. Dans le cas o le client n'a souscrit à aucun service, le module de routage 90 retransmet directement le paquet de données au module de marquage/démarquage 100. Lorsque le paquet de données a été traité par les différents serveurs de services 1, 2, 3...ou n, le module de marquage/démarquage supprime l'information de marquage contenue dans le champ TOS et rétablit les informations qui étaient initialement contenues dans ce champ. Dans une autre mise en oeuvre de l'invention, l'information de marquage peut être inscrite dans un champ OPTIONS du paquet de données. L'avantage du champ OPTIONS est qu'il est codé sur 20 bits, il peut donc contenir plus d'informations que le champ TOS. La figure 5 représente un exemple de codage possible des informations de marquage des données. Dans le cas o l'information de marquage est inscrite dans le champ TOS, chaque bit de ce champ peut être associée à un service donné. Le bit vaut 0 lorsque le client n'a pas souscrit au service associé et vaut 1 lorsque le client y a souscrit. Ainsi que représenté à la figure 6, on peut également définir des " bouquets " de services, c'est à dire à une combinaison de services. Dans ce cas, chaque code inscrit dans le champ TOS est associé à un bouquet. Cette seconde possibilité, plus conforme aux offres commerciales, permet d'étendre les offres de services à 254 bouquets de service dans le cas de l'utilisation du champ TOS et plusieurs milliers dans le cas de l'utilisation du champ OPTIONS. REVENDICATIONS 1. Système d'accès à un réseau offrant des services personnalisés comprenant une plate-forme d'accès (30) au réseau (50), la plate-forme d'accès (30) incluant un ensemble de serveurs (1, 2, 3,...n), chaque serveur étant destiné à traiter des données qu'il reçoit pour fournir un service donné, caractérisé en ce que la plate-forme d'accès (30) comprend: - une base de données (80) contenant des informations relatives à un ensemble de clients, chaque client étant associé à un ensemble de services auxquels il a souscrit, - un module de marquage (100) apte à insérer dans un paquet de données en provenance d'un terminal client (10) une information de marquage relative au(x) service(s) associé(s) au client dans la base de données (80), - un module de routage (90) apte à diriger le paquet de données en provenance du terminal client (10) vers un ou des serveur(s) (1, 2, 3,...n) en fonction de l'information de marquage insérée dans le paquet de données par le module de marquage (100). 2. Système selon la revendication 1, caractérisé en ce qu'il comprend en outre un serveur d'authentification (60) apte à attribuer au terminal client (10) une adresse IP lorsque celui-ci se connecte à un serveur d'accès (20) à la plate-forme (30), ledit serveur d'authentification (60) étant apte à transmettre à la base de données (80) des informations associant l'adresse IP et l'identité du client, et la base de données étant apte à recevoir lesdites informations et à transmettre au module de marquage (100) des informations associant l'adresse IP du client et les services souscrits par ce client, le module de marquage (100) étant apte à lire l'adresse IP du paquet de données qu'il reçoit et en fonction de cette adresse, à insérer dans ce paquet de données une information de marquage. 3. Système selon l'une des revendications 1 ou 2, caractérisé en ce que l'information de marquage est inscrite par le module de marquage (100) dans un champ prédéfini du paquet de données. 4. Système selon la revendication 3, caractérisé en ce que le module de marquage (100) est apte à enregistrer la valeur initiale du champ dans le paquet de données qu'il reçoit et à remplacer cette valeur par une information de marquage et en ce que après traitement du paquet de données par le ou les serveur(s) de service (1, 2, 3,...n), le module de marquage (100) est apte à rétablir la valeur initiale du champ. 5. Système selon l'une des revendications 3 ou 4, caractérisé en ce que l'information de marquage est inscrite par le module de marquage (100) dans un champ TOS (Type de service) du paquet de données. 6. Système selon l'une des revendications 3 ou 4, caractérisé en ce que l'information de marquage est inscrite par le module de marquage (100) dans un champ OPTIONS du paquet de données. 7. Système selon l'une des revendications 1 à 6, caractérisé en ce que l'information de marquage est codée par une séquence de bits, chaque bit étant associé à un service. 8. Système selon l'une des revendications 1 à 6, caractérisé en ce que l'information de marquage est codée par une séquence de bits, chaque séquence étant associée à un bouquet de services. 9. Procédé d'accès à un réseau offrant des services personnalisés selon lequel: - un client souscrit à un ensemble de services proposés par un fournisseur d'accès, - le terminal client (10) se connecte à une plateforme d'accès (30) au réseau (50) du fournisseur d'accès et transmet des données à la plate25 forme (30), - la plate-forme d'accès (30) répartit lesdites données vers des serveurs (1, 2, 3,... n) de service en fonction des services auxquels le client a souscrit, - les serveurs de service (1, 2, 3,...n) traitent les données et les transmettent au réseau (50), caractérisé en ce que la répartition des données vers des serveurs (1, 2, 3, n) de service comprend les étapes selon lesquelles: il - un module de marquage (100) insère dans un paquet de données en provenance du terminal client (10) une information de marquage relative au(x) service(s) associé(s) au client, - un module de routage (90) dirige le paquet de données en provenance du terminal client (10) vers un ou des service(s) (1, 2, 3,...n) en fonction de l'information de marquage insérée dans le paquet de données par le module de marquage (100). 10. Procédé selon la revendication 9, caractérisé en ce qu'il comprend les étapes selon lesquelles: - lorsque le client souscrit à un ou des service(s) proposés par le fournisseur d'accès, des informations relatives au client et au(x) service(s) au(x)quel(s) il a souscrit sont enregistrées dans une base de données (80), - lorsque le terminal client (10) se connecte à un serveur d'accès (20) à la plate-forme (30), un serveur d'authentification (60) attribue audit terminal client (10) une adresse IP, - ledit serveur d'authentification (60) transmet à la base de données (80) des informations associant l'adresse IP et l'identité du client, - la base de données (80) transmet au module de marquage (100) des informations associant l'adresse IP du client et les services souscrits par ce client, - le module de marquage (100) lit l'adresse IP du paquet de données qu'il reçoit et en fonction de cette adresse, insère dans ce paquet de données une information de marquage. 11. Procédé selon l'une des revendications 9 ou 10, caractérisé en ce que le module de marquage (100) inscrit l'information de marquage dans un champ prédèfini du paquet de données. 12. Procédé selon la revendication 11, caractérisé en ce que le module de marquage (100) enregistre la valeur initiale du champ dans le paquet de données qu'il reçoit et remplace cette valeur par une information de marquage et en ce que après traitement du paquet de données par le ou les serveur(s) de service (1, 2, 3,...n), le module de marquage (100) rétablit la valeur initiale du champ. 13. Procédé selon l'une des revendications 11 ou 12, caractérisé en ce que le module de marquage (100) inscrit l'information de marquage dans un champ TOS (Type de service) du paquet de données. 14. Procédé selon l'une des revendications 11 ou 12, caractérisé en ce que le module de marquage (100) inscrit l'information de marquage dans un champ OPTIONS du paquet de données. 15. Procédé selon l'une des revendications 9 à 14, caractérisé en ce que l'information de marquage est codée par une séquence de bits, chaque bit étant associé à un service. 16. Procédé selon l'une des revendications 9 à 14, caractérisé en ce que l'information de marquage est codée par une séquence de bits, chaque séquence étant associée à un bouquet de services.