Brevet FR2804266A1 — publié le 20010727

PROCEDE ET SYSTEME POUR LA DIFFUSION DE DONNEES EN BOUCLE DOMAINE GENERAL DE L'INVENTION ET ETAT DE LA TECHNIQUE La présente invention est relative à la diffusion de données en boucle. Plus particulièrement, l'invention trouve avantageusement application pour la radiodiffusion de données en boucle à destination d'une pluralité de terminaux portatifs équipant des utilisateurs se trouvant dans une zone donnée. La transmission de données en boucle est classiquement connue et a notamment été utilisée en France dans les systèmes de télétexte. Un problème généralement rencontré avec la diffusion de données en boucle est celui du temps d'accès. Un utilisateur, pour avoir accès à une page particulière, doit en effet attendre que la partie du fichier correspondant à ce qu'il recherche se présente et soit acquise par son récepteur. Des méthodes tendant à minimiser ce temps d'accès ont déjà été proposées. Notamment, le brevet US 5.842.010 propose une méthode pour la transmission en boucle de données - qui sont destinées à s'afficher sur des écrans de terminaux portables récepteurs - selon laquelle lesdites données sont diffusées dans un ordre qui est déterminé en fonction d'une analyse statistique sur les besoins des utilisateurs. L'analyse statistique peut être réalisée à partir des demandes d'informations renvoyées par les utilisateurs sur le système qui diffuse les données. Toutefois, cette méthode n'est pas optimale et n'a au demeurant d'intérêt que dans la mesure où le système de diffusion de données utilisé oblige systématiquement chaque utilisateur à prendre connaissance des données diffusées à partir d'une même première page d'écran diffusée dans la boucle de données. Par ailleurs, il est également connu, notamment pour les systèmes de télétexte précités, de répéter dans la boucle de diffusion ceux des blocs de données qui sont les plus fréquemment consultés. On notera toutefois que dans les systèmes de télétexte, la boucle de diffusion est généralement figée et ne connaît pas d'évolution dans le temps. PRESENTATION DE L'INVENTION L'invention propose quant à elle un procédé de diffusion de données en boucle avec lequel les temps d'accès des utilisateurs sont encore améliorés. A cet effet, l'invention concerne un procédé pour la diffusion en boucle d'une pluralité de blocs de données qui correspondent à des objets ou à des fragments ou agrégats d'objets tels que des messages alphanumériques et/ou des pages d'écran et/ou des objets graphiques s'intégrant dans des pages d'écrans et/ou des séquences sonores, destinés à être restitués par des moyens de restitution dont disposent des utilisateurs, caractérisé en ce qu'on répartit les blocs de données en les empilant selon plusieurs piles correspondant à des priorités de diffusion différentes et en ce qu'on répète l'opération consistant à prélever en sortie de chaque pile un nombre de blocs de données qui est fonction de la priorité de diffusion de ladite pile et à diffuser les blocs de données ainsi prélevés, les blocs de données prélevés en sortie de chaque pile étant, à chaque itération, ré-empilés en entrée de celle-ci. Un tel procédé est avantageusement complété par les différentes caractéristiques suivantes prises seules ou selon toutes leurs combinaisons techniquement possibles - on reçoit en temps réel des informations sur l'intérêt porté par les utilisateurs aux différents objets diffusés et on modifie les nombres de blocs de données prélevés dans une pile et/ou on change les blocs de données de pile en fonction de ces informations ; - les piles sont au nombre de 3 ou 4 ; - les blocs de données diffusés ont une taille inférieure à 400 octets utiles. - on classe les blocs de données à diffuser par ordre de priorité de consultation, on divise la liste ainsi constituée en K piles de nombre de blocs de données sensiblement égales et on diffuse les blocs de données de chaque pile avec une fréquence égale à ou voisine de où j désigne l'indice de la pile, B la capacité de diffusion, t la taille des piles et p; étant la probabilité de consultation d'un objet décrit en tout ou partie par le bloc de données i, M étant le nombre de blocs de données dans une pile. - les nombres aj de blocs de données prélevés à chaque itération sont tels qu'ils minimisent - le nombre M de blocs de données dans chaque pile est choisi multiple de chacun des nombres ap - on introduit au moins un bloc de données de bourrage dans au moins une pile. - le nombre aj est choisi inférieur ou égal à 9. - des objets communs à plusieurs écrans sont transmis une seule fois. - ces objets sont transmis avec un bloc de données de page d'accueil. L'invention propose également un système de diffusion de données en boucle comportant des moyens pour la radiodiffusion de blocs de données dans une zone donnée, une pluralité de terminaux portatifs aptes à recevoir les blocs de données ainsi radiodiffusés, des moyens de traitement qui gèrent la diffusion desdites données, caractérisé en ce que lesdits moyens de traitement mettent en oeuvre un procédé du type précité. PRESENTATION DES FIGURES D'autres caractéristiques et avantages de l'invention ressortiront encore de la description qui suit. Cette description est purement illustrative et non limitative. Elle doit être lue en regard des planches de dessins annexées sur lesquelles - la figure 1 est une représentation schématique d'un système conforme à un mode de réalisation possible de l'invention ; - la figure 2 illustre une architecture possible pour ce mode de réalisation ; - la figure 3 illustre le mécanisme d'optimisation de la diffusion des informations ; - la figure 4 est un graphe sur lequel on a porté un exemple de répartition de probabilités pour un certain nombre d'objets à diffuser. DESCRIPTION D'UN MODE DE REALISATION ET DE MISE EN CEUVRE Architecture générale Le système qui est représenté sur la figure 1 comporte une pluralité de terminaux récepteurs 1 et une infrastructure 2 pour la radio diffusion de données en boucle à destination de ces terminaux 1. Ces terminaux 1 sont par exemple des ordinateurs de poche du type de ceux commercialisés par la société 3COM sous la dénomination Palm ou du type de ceux utilisant le système d'exploitation Windows CE et commercialisés par les sociétés CASIO et COMPAQ sous les dénominations respectives Cassiopeia et Aero . Ils sont munis de moyens leur permettant la réception des données radio diffusées en boucle par l'infrastructure 2 et l'émission de données à destination de cette infrastructure. Ces moyens comportent notamment une antenne pour la réception de signaux radioélectriques, un modem correspondant à la norme 802,11 et un logiciel adapté au système et dont les fonctionnalités se comprendront à la lecture de ce qui suit. L'infrastructure 2 comprend une pluralité de bornes de diffusion 3 qui définissent ensemble, dans une zone où l'on souhaite que les services proposés par le système soient accessibles, une ou plusieurs cellules de couverture 4 qui se recouvrent éventuellement partiellement. Les différentes bornes de diffusion 3 sont reliées entre elles par un réseau filaire 5 (figure 2) de type Ethernet et sont équipées de moyens de diffusion radiofréquence, qui traitent les informations reçues du réseau par lesdites bornes pour les diffuser selon la norme 802.11 précitée. Les données destinées à être diffusées en boucle sont notamment transmises auxdites bornes 3 par l'intermédiaire d'un ou plusieurs serveurs de diffusion 6, connecté au réseau 5, qui transmet sur celui-ci en mode multicast les données destinées à être diffusées. Le système comporte en outre un ou plusieurs serveurs transactionnels 7 qui transmettent et reçoivent, par l'intermédiaire du réseau 5, des données en mode unicast qui correspondent à des transactions entre les terminaux 1 et le système, les bornes 3 comportant des moyens leur permettant de recevoir des données radiodiffusées par les terminaux 1 et de les retransmettre sur le réseau 5. Par ailleurs, le système comporte également un serveur d'administration 8 - également connecté au réseau 5 - qui supervise le fonctionnement des différentes bornes 3 et des serveurs 6 et 7 et les configure. Si un mode d'adressage IP dynamique est retenu, le système peut également comporter un serveur d'adressage complémentaire. Présentation du traitement mis en ouvre par le serveur de diffusion Le processus de diffusion mis en oeuvre par le ou les serveurs de diffusion 6 consiste en la transmission périodique par les bornes 3 vers les terminaux récepteurs 1 de blocs de données, qui correspondent à des objets qui doivent être restitués au niveau des terminaux 1 et qui sont par exemple des messages alphanumériques et/ou des pages d'écran et/ou des objets graphiques s'intégrant dans des pages d'écrans et/ou des séquences sonores. Les blocs de données diffusés ont une taille maximale de 400 octets utiles, ce qui limite les risques d'erreurs de transmission. Un processus de fragmentation/défragmentation peut le cas échéant être mis en oeuvre pour la transmission d'objets dont la description requiert un nombre d'octets supérieur. La succession de blocs de données diffusée est actualisée en temps réel sous le pilotage du serveur de diffusion 6 en tenant compte d'une statistique qui est par exemple une statistique sur la fréquence de consultation des différentes pages d'écran par les utilisateurs, l'objectif de ce pilotage étant de permettre de faire parvenir le plus rapidement possible aux utilisateurs les messages alphanumériques, pages d'écran, séquences sonores, etc., qui sont susceptibles de les intéresser. Cette statistique est établie à partir de rapports de consultation qui sont transmis périodiquement par le terminal aux serveurs de diffusion par l'intermédiaire des bornes 3. Ces rapports qui donnent la liste des écrans consultés par l'utilisateur du terminal depuis l'envoi du dernier rapport permettent aux serveurs de diffusion de connaître en temps réel la statistique de consultation des écrans. Chaque terminal portatif 1 stocke et met à jour les différents blocs de données au fur et à mesure qu'il les reçoit. II met en veille son modem radio dès que l'ensemble des blocs de données a été correctement reçu et stocké. Le serveur de diffusion 6 reçoit, de stations d'édition 9 (figure 1), auxquelles il est par exemple relié par le réseau 5, une série de blocs de données (fichiers) décrivant les objets à diffuser, ainsi qu'un fichier d'édition et de consignes. Le serveur 6 répartit ces blocs de données à diffuser selon plusieurs piles qui correspondent chacune à une classe de priorité différente. A chacune de ces classes de priorité correspond une fréquence nominale de diffusion. Des valeurs d'initialisation - qui sont par exemple fonctions de statistiques antérieures - sont attribuées par l'administrateur du service à ces fréquences de diffusion, puis ces fréquences de diffusion sont gérées de manière dynamique à partir des comptes rendus de consultation émis par les terminaux, si le mode dynamique a été sélectionné. Après avoir réparti les blocs de données par classes, le serveur procède, à l'intérieur de chaque classe à l'agrégation des blocs dont la taille est inférieure à 80% de la taille maximale afin de réduire le poids relatif de l'en-tête UDPIIP ou TCPIIP dans la transmission. Cette agrégation consiste à encapsuler deux ou plusieurs objets dans un même bloc de données (même trame UDP). Elle ne s'applique pas aux messages de contrôle et de management qui sont diffusés avec les blocs de données, par exemple sous forme d'un préfixe au début de chaque trame envoyée. Ainsi, dans chacune des piles qui correspondent aux différentes classes de priorité est stockée une succession de blocs de données, chacun de ces blocs correspondant à des objets ou à des fragments ou agrégats d'objets. Les différents blocs de données d'une même pile sont diffusés à la fréquence de la classe de priorité à laquelle ladite pile correspond. Pour constituer la pile de diffusion qui est vidée régulièrement à destination des bornes de diffusion 3, le serveur 6 prélève successivement dans chaque classe un certain nombre de blocs de données. Cette opération est itérée en permanence. Le nombre de prélèvement dans une classe est différent d'une classe à l'autre ; il est d'autant plus élevé que la priorité de la classe est élevée. La figure 3 résume ce mécanisme. Dans l'exemple choisi, les nombres de blocs de données choisis à chaque boucle sont les suivants Classe 0 Classe 1 Classe 2 Classe 3 5 3 2 1 Comme cela a été indiqué précédemment, à l'initialisation du système, les fréquences de diffusion cible des classes sont fixées par l'administrateur, selon un modèle prédéfini qui tient par exemple compte de statistiques antérieures. Au fur et à mesure que les comptes rendus de consultation parviennent au serveur, celui-ci peut, si le mode dynamique a été sélectionné - changer la classe de certains objets ou blocs de données si leur fréquence de consultation s'écarte trop de celle des autres blocs de données constituant la classe en question, - modifier la fréquence de diffusion des classes pour optimiser le temps d'accès. Ces modifications sont réalisées après un filtrage permettant de s'assurer que l'évolution des fréquences de consultation est bien un phénomène durable et non un aléa statistique. Un exemple détaillé de traitement d'optimisation possible va maintenant être décrit. Exemple détaillé de traitement d'optimisation Principe Les nombres de prélèvement des différentes classes de priorité sont obtenus en recherchant la solution en nombres entiers donnant des fréquences de diffusion des messages les plus proches des valeurs théoriques optimisant le temps moyen d'accès. Plus précisément, l'optimisation mise en oeuvre par le système proposé par l'invention consiste à diffuser chaque bloc de données i avec une fréquence aussi proche que possible d'une fréquence théorique f; qui vérifie où N est le nombre de messages du service t; la taille du bloc de données i en KO, p; la probabilité de consultation d'un objet décrit en tout ou partie par le bloc de données i, et où B est la capacité en KOIs de la portion du canal affectée à la diffusion (CFP). On démontre en effet que cette probabilité f; permet d'optimiser le temps moyen d'accès sur l'ensemble des écrans sous la contrainte de rester à l'intérieur de la capacité de diffusion disponible sur le réseau. Le temps moyen d'accès optimisé est alors Avec une répartition de probabilités de consultation typique comme celle du graphe de la figure 4 (répartition de probabilités par décile), une taille moyenne des données décrivant les écrans de 15 KO, l'amélioration du temps moyen d'accès par rapport à une diffusion uniforme est d'environ 25%, cette amélioration atteint 60% pour le premier décile des écrans les plus consultés. Le prix à payer lorsque cette stratégie d'optimisation est utilisée seule est l'accroissement du temps d'accès aux écrans les moins consultés. Le tableau suivant résume les résultats des simulations pour un service de cent écrans et pour un débit du réseau de 100 Khôls. Temps Temps Temps Temps moyen sans moyen moyen 1 moyen optimisation optimisé décile dernier décile Secondes 7,22 5,62 2,87 16,67 Rapport au temps moyen sans 1 0,78 0,40 2,31 optimisation Mise en oeuvre pratique Constitution des piles En pratique, les blocs de données à diffuser sont classés par ordre de priorité de consultation. La liste ainsi classée est ensuite divisée en K piles égales (ou de tailles aussi voisines que possible). Ainsi, si N est le nombre de blocs de données à diffuser, E la fonction partie entière, les E(NIK) premiers blocs de la liste sont regroupés dans une première pile, puis les E(NIK) blocs suivants sont regroupés dans une deuxième pile, etc.. Tous les blocs d'une même pile ainsi constituée sont ensuite diffusés avec une fréquence de répétition aussi voisine que possible de la fréquence théorique correspondant à la probabilité de consultation moyenne des objets de la pile. Pour la pile j, cette probabilité correspond à la probabilité de consultation d'un bloc quelconque, soit où p; est la probabilité de consultation du i-ème bloc de la pile et où M est le nombre de blocs dans une pile. La fréquence théorique de diffusion dont on veut se rapprocher pour la pile j est où t est la taille (en KO) de chacune des piles. Le temps moyen de consultation d'un bloc de la boucle de diffusion est alors donné par le temps Ts étant une approximation du temps Topt donné plus haut. Le tableau ci-dessous indique les écarts d'optimisation par rapport au temps moyen pour l'exemple donné plus haut (valeurs obtenues par simulation et rapportées au temps moyen sans optimisation). Temps moyen Temps moyen Temps moyen Temps moyen sans optimisé première pile dernière pile optimisation Fréquence 1 0,72 0,40 2,41 théorique ('l' décile) (dernier décile) 10 piles 1 0,78 0,50 1,85 5 piles 1 0,81 0,54 1,89 4 piles 1 0,82 0,57 1,93 3 piles 1 0,82 0,61 1,99 Ce tableau montre que la réduction de performance due au nombre limité de piles reste très modérée comparée à la simplification permise dans le serveur de diffusion dont on peut limiter le nombre de piles à trois ou quatre. Par ailleurs, cette répartition en piles limite les temps d'accès excessifs pour les objets ou écrans les moins consultés qui auront les temps d'accès de la dernière pile. Mise en ouvre des itérations A chaque itération, le serveur prélève a, blocs de données dans la pile 1, a2 blocs de données dans la pile 2, ...., aj blocs de données dans la pile j, ...., ak blocs de données dans la pile K. On démontre que la solution optimale serait obtenue avec équation qui n'a en général pas de solution exacte en nombres entiers. Toutefois, on choisit des nombres aj qui ne sont pas trop importants de façon - à ne pas trop disperser les blocs de données susceptibles de correspondre à un même objet (écran par exemple) ; - à permettre la création d'un script de diffusion d'une longueur acceptable sans bourrage excessif (voir plus loin). En pratique, on limitera à neuf le nombre de blocs de données prélevés à chaque cycle sur la pile la plus consultée. Pour parvenir à une résolution approchée, on teste une table de valeurs possibles de K-uplets donnant des valeurs approchées des probabilités icl et minimisant l'écart entre le temps moyen d'accès réellement obtenu et la valeur théorique, ce qui revient à minimiser Utilisation d'un script de diffusion La mise en oeuvre de l'algorithme de diffusion est considérablement simplifiée si l'on peut remplacer le mécanisme de prélèvement sur les piles par un script comportant la liste des blocs de données à diffuser de manière cyclique, les messages de contrôle généraux et urgents étant alors diffusés prioritairement par interruption temporaire du script. Pour cela, il est nécessaire que dans le cours de l'algorithme, toutes les piles reviennent périodiquement à la même position. Ceci n'est possible de manière simple que si le nombre m de chaque pile est un multiple de a,, a2, ...., aj, ...ak. Si cela n'est pas le cas, on ajoutera à chacune d'elles des messages de bourrage afin d'atteindre le nombre cherché. Bien entendu, il est souhaitable de retenir de préférence des combinaisons dont le plus petit commun multiple est aussi faible que possible car le bourrage conduit à une perte d'efficacité. Avec l'exemple de distribution de probabilités de la figure 4, les valeurs de nj pour trois et quatre piles (K=3,4) seraient les suivantes K = 3 7rj E{0,08 ; 0,18 ; 0,74} K = 4 nj E{0,04 ; 0,10 ; 0,24 ; 0,62} Le calcul de la fonction s pour ces valeurs donnent le triplet et le quadruplet à retenir pour l'établissement du script de diffusion soit K=3 {2;3;6} ppcm=6 K=4 {2;4;6;9} ppcm=36 Blocs de données communs à plusieurs écrans Certains objets graphiques comme des images ou des logos sont souvent présents dans plusieurs écrans. Une stratégie consiste à ne diffuser les blocs de données qui leurs correspondent, souvent de taille importante, qu'une seule fois. Si par exemple un bloc de taille t. est commun à deux écrans diffusés avec les fréquences fi f2 (fi >_ f2), on diffuse ce bloc commun avec la fréquence la plus grande fi économisant ainsi une capacité de diffusion de f2tc. On notera cependant que, sauf pour l'écran le plus consulté avec lequel l'objet commun serait diffusé, ceci conduit à une augmentation du temps d'accès pour les autres écrans utilisant ce bloc de données. L'utilisation de blocs de données communs est donc efficace pour des écrans de fréquence de diffusion différente mais elle reste pénalisante pour des écrans de même fréquence si aucune autre mesure n'est prise. Ceci peut toutefois être compensé en utilisant à bon escient la structure des successions de pages d'écrans proposées aux utilisateurs sur un site donné pour couvrir un ou plusieurs services auxquels l'utilisateur a accès. Lorsqu'il se connecte sur un site, tout utilisateur reçoit d'abord la page d'accueil du site, suivie du menu du site qui lui permet d'accéder aux pages d'accueil et menus des différents services présents sur le site. Pour éviter l'accroissement des temps d'accès dus aux blocs communs, on diffuse ceux-ci en même temps que les objets graphiques décrivant la page d'accueil du service concerné s'il s'agit (cas plus vraisemblable) d'objets liés à un seul service, en même temps que les objets de la page d'accueil du site s'il s'agit d'objets utilisés par plusieurs services. Le terminal stockera ces objets jusqu'à ce que l'utilisateur quitte le service dans le premier cas, le site dans l'autre cas. Lorsque le terminal dispose d'une mémoire suffisante, ce qui est généralement le cas pour les ordinateurs de poche du type du Palm ou Windows CE , on peut améliorer de manière importante la qualité du service à l'aide d'un cache. Lorsqu'un utilisateur consulte un écran, il peut, en général à l'aide de boutons ou de zones sensibles, naviguer vers d'autres écrans - l'écran précédemment consulté ; - le menu du service courant et du site ; - les écrans auxquels l'écran courant peut accéder au moyen des liens associés aux actions (boutons, etc.). II est facile de constituer un cache pour accéder instantanément aux écrans déjà consultés. Pour la dernière catégorie d'écrans, le terminal détermine, en exploitant les liens des actions, la liste des écrans contigus aval de l'écran courant. Grâce ensuite aux capacités multitâches du système d'exploitation, le terminal charge ces écrans pendant que l'utilisateur consulte l'écran courant. Dans la mesure où le temps de consultation (5 à 10 secondes au minimum) est du même ordre que le temps moyen d'accès aux écrans, ce qui est le cas avec des services d'une centaine d'écrans sur un réseau local, l'accès aux écrans contigus aval apparaîtra quasi instantané à l'utilisateur. Le terminal met en oeuvre parallèlement un processus de purge du cache pour éliminer les descriptions d'écrans qui n'appartiennent plus aux catégories ci-dessus lorsque la capacité attribuée au cache est dépassée. Echanges transactionnels Par ailleurs, le serveur de diffusion 6 ne doit pas alimenter les points d'accès que constituent les bornes 3 à un rythme supérieur à leur capacité de diffusion et doit laisser un temps suffisant au trafic occasionné par les services transactionnels, lesquels se traduisent par des échanges entre le serveur transactionnel 7 et les terminaux récepteurs 1. Le ratio d'accès entre services diffusés et services transactionnels est fixé par l'administrateur. On va maintenant décrire le service mis en pauvre par le serveur transactionnel. Dans ce service, un certain nombre d'écrans et de messages sont communs à l'ensemble des utilisateurs ; ces écrans et messages sont transmis en mode diffusé de la manière décrite aux paragraphes précédents. Les messages correspondant sont intégrés dans l'ensemble des messages diffusés. Une borne 3 entre en mode transactionnel lorsqu'elle détecte l'émission par un terminal 1 d'une séquence destinée au serveur de transaction 7 (envoi d'un formulaire de commande, achat, requête, etc.). Cet échange de données s'effectue en mode unicast avec le serveur 7 dont l'adresse IP est fournie. Il peut être précédé d'un échange de messages de contrôle et notamment de la fourniture par le terminal de son identifiant. Les services transactionnels utilisent le même protocole pour la description des écrans que les services diffusés et sa partie interactive pour les transactions. La structure des serveurs transactionnels est liée à la nature des services fournis. Le logiciel serveur fournit les interfaces de programmation nécessaires à la réalisation de la partie application du logiciel. Celle-ci peut être exécutée sur une machine distante tandis que la partie transactionnelle s'exécute sur une machine locale. Dans certains cas simples elle pourra cohabiter avec le serveur de diffusion sur la même machine. Un serveur transactionnel spécifique assure la gestion des services associés : mise à jour de la liste des utilisateurs et de leur adresse Internet, collecte sur le réseau de distribution (DS) des services effectivement diffusés, envoi par Internet des dernières versions des services aux utilisateurs avec une périodicité fixée. De nombreuses applications peuvent être envisagées pour le procédé et le système qui viennent d'être décrits. Le tableau suivant résume un certain nombre d'exemples d'applications avantageuses possibles REVENDICATION 1. Procédé pour la diffusion en boucle d'une pluralité de blocs de données qui correspondent à des objets ou à des fragments ou agrégats d'objets tels que des messages alphanumériques et/ou des pages d'écran et/ou des objets graphiques s'intégrant dans des pages d'écrans et/ou des séquences sonores, destinés à être restitués par des moyens de restitution dont disposent des utilisateurs, caractérisé en ce qu'on répartit les blocs de données en les empilant selon plusieurs piles correspondant à des priorités de diffusion différentes et en ce qu'on répète l'opération consistant à prélever en sortie de chaque pile un nombre de blocs de données qui est fonction de la priorité de diffusion de ladite pile et à diffuser les blocs de données ainsi prélevés, les blocs de données prélevés en sortie de chaque pile étant, à chaque itération, ré-empilés en entrée de celle-ci. 2. Procédé selon la revendication 1, caractérisé en ce qu'on reçoit en temps réel des informations sur l'intérêt porté par les utilisateurs aux différents objets diffusés et en ce qu'on modifie les nombres de blocs de données prélevés dans une pile et/ou on change de pile des blocs de données en fonction de ces informations. 3. Procédé selon l'une des revendications précédentes, caractérisé en ce que les piles sont au nombre de 3 ou 4. 4. Procédé selon l'une des revendications précédentes, caractérisé en ce que les blocs de données diffusés ont une taille inférieure à 400 octets utiles. 5. Procédé selon l'une des revendications précédentes, caractérisé en ce que l'on classe les blocs de données à diffuser par ordre de priorité de consultation, on divise la liste ainsi constituée en K piles de nombre de blocs données sensiblement égales et on diffuse les blocs de données de chaque pile avec une fréquence égale à ou voisine de où j désigne l'indice de la pile, B la capacité de diffusion, t la taille des piles et où p; étant la probabilité de consultation d'un objet décrit en tout ou partie par le bloc de données i, M étant le nombre de blocs de données dans une pile. 6. Procédé selon la revendication 5, caractérisé en ce que les nombres aj de blocs de données prélevés à chaque itération sont tels qu'ils minimisent 7. Procédé selon la revendication 6, caractérisé en ce que le nombre M de blocs de données dans chaque pile est choisi multiple de chacun des nombres aj. 8. Procédé selon la revendication 7, caractérisé en ce qu'on introduit au moins un bloc de données de bourrage dans au moins une pile. 9. Procédé selon l'une des revendications 6 à 8, caractérisé en ce que le nombre aj est choisi inférieur ou égal à 9. 10. Procédé selon l'une des revendications précédentes, caractérisé en ce que des objets communs à plusieurs écrans sont transmis une seule fois. 11. Procédé selon la revendication 10, caractérisé en ce que ces objets sont transmis avec un bloc de données de page d'accueil. 12. Système de diffusion de données en boucle comportant des moyens pour la radiodiffusion de blocs de données dans une zone donnée, une pluralité de terminaux portatifs aptes à recevoir les blocs de données ainsi radiodiffusés, des moyens de traitement qui gèrent la diffusion desdites données, caractérisé en ce que lesdits moyens de traitement mettent en oeuvre un procédé selon l'une des revendications précédentes.