Brevet FR2893472A1 — publié le 20070518

Arrière-plan de l'invention Le domaine de l'invention est celui des réseaux de télécommunication et plus précisément celui de la diffusion simultanée de messages par une source en direction d'une pluralité de terminaux. 10 L'invention s'applique en particulier dans le domaine de la diffusion des messages en mode "broadcast" et "multicast", ces modes étant différenciés par le fait que dans le mode multicast, seuls les terminaux concernés reçoivent le message diffusé par la source. L'invention se place plus précisément dans le contexte dans 15 lequel des données doivent être remontées par les terminaux sur réception du message diffusé, en direction de la source de façon, par exemple, que celle-ci puisse s'assurer de la bonne réception de son message. L'invention pourra en particulier être utilisée pour permettre une 20 réception centralisée : - d'acquittements de bonne réception d'informations en vue de leurs facturations aux usagers ; - d'acquittements de mises à jour de logiciels dans des terminaux ; 25 -des réponses à un jeu télévisé. Dans ce type d'applications ou de services, lorsque les terminaux destinataires du message diffusé sont trop nombreux, la quantité de message remontés des terminaux vers la source risque de provoquer des congestions aussi bien dans le réseau de 30 télécommunication que dans les serveurs gérés par cette source. Différentes solutions ont été développées pour garantir un fonctionnement correct d'un tel service quand les terminaux récepteurs du message de diffusion deviennent très nombreux, par exemple de l'ordre d'un million. 35 Les solutions pour faire remonter les données vers la source les plus répandues aujourd'hui reposent sur des sessions point à point entre 1 les terminaux et les serveurs gérés par la source en utilisant le protocole de communication TCP. Malheureusement, les serveurs connus à ce jour sont incapables de gérer plus de quelques milliers de sessions simultanées et ces solutions ne peuvent être utilisées pour des services à très large diffusion. Une solution pour pallier ce problème consiste à répartir la remontée des données dans le temps pour limiter la charge des réseaux et des serveurs. Une temporisation pseudo-aléatoire avec une loi uniforme permet notamment de répartir de nombreuses requêtes dans une fenêtre de temps. Malheureusement, cette temporisation induit un retard dans la remontée des données des terminaux, et un temps de collecte exagérément long, notamment si le groupe de terminaux s'avère finalement de taille relativement réduite. D'autres solutions connues utilisent des noeuds intermédiaires de collecte structurés sous forme d'un arbre hiérarchique prédéfini. Ces solutions sont complexes à mettre en oeuvre car elles nécessitent de nombreux messages périodiques pour maintenir la cohérence de l'arbre et détecter l'apparition éventuelle de pannes. Objet et résumé de l'invention La présente invention a donc pour but principal de pallier de tels inconvénients. Selon un premier aspect, l'invention concerne un procédé pour, sur requête d'une source, collecter des données auprès d'une pluralité de noeuds dans un réseau de télécommunications, ces données ayant été obtenues par les noeuds à partir de données reçues en provenance d'une pluralité de terminaux en réponse à un même message diffusé par la source à destination des terminaux. Ce procédé comporte, préalablement à la diffusion : - une étape de détermination des noeuds permettant de réaliser la collecte dans des conditions définies par au moins un paramètre de la requête ; et - une étape d'envoi, à la source, des identifiants des noeuds, ces identifiants étant transmis aux terminaux par la source dans le message de diffusion. Corrélativement, l'invention concerne un dispositif de collecte de données au profit d'une source dans un réseau de télécommunications, ce dispositif comportant : - des moyens de réception d'une requête en provenance de la source ; - des moyens pour collecter les données auprès d'une pluralité de noeuds dans le réseau, les données ayant été obtenues par les noeuds à partir de données reçues en provenance d'une pluralité de terminaux en réponse à un même message diffusé par la source à destination des terminaux ; - des moyens pour déterminer des noeuds permettant de réaliser la collecte dans des conditions définies par au moins un paramètre de la requête ; et - des moyens d'envoi, à la source et préalablement à la diffusion des identifiants des noeuds, ces identifiants étant transmis aux terminaux par la source dans le message de diffusion. Ainsi, conformément à l'invention, le procédé de collecte repose sur l'allocation dynamique d'un certain nombre de noeuds intermédiaires pour effectuer la collecte des données destinées à la source, cette allocation dynamique étant effectuée en fonction de paramètres contenus dans la requête. Ces paramètres peuvent notamment porter sur le nombre de noeuds de collecte, sur la durée préférée de la collecte ou sur le type de données à collecter. Dans un mode de réalisation, le procédé de collecte selon l'invention comporte - une étape de détermination du nombre de noeuds suffisant pour effectuer la collecte dans les conditions précitées ; - une étape de détermination du nombre de noeuds disponibles dans le réseau ; et - une étape au cours de laquelle la requête est mise en attente, de sorte 30 que la diffusion est suspendue, tant que le nombre de noeuds disponibles est inférieur au nombre de noeuds suffisants. Cette caractéristique permet de garantir que la remontée des informations en provenance des terminaux sera effectuée dans des conditions acceptables par la source pour le bon fonctionnement du 35 service. Dans un mode de réalisation, le nombre suffisant de noeuds pour réaliser la collecte est compris entre deux valeurs extrêmes contenues dans la requête. Dans ce mode de réalisation, c'est donc la source qui détermine le dimensionnement des noeuds pour effectuer la collecte à son profit. Dans ce mode de réalisation, le nombre de noeuds disponibles conditionne la durée de la collecte. Dans un autre mode de réalisation, le nombre de noeuds suffisant est déterminé en prenant au moins en compte la durée souhaitée pour réaliser la collecte, et le nombre des terminaux, ces paramètres étant contenus dans la requête. Dans ce mode de réalisation, le dimensionnement est préférentiellement réalisé par le dispositif de collecte selon l'invention. Un autre paramètre de la requête peut aussi être utilisé pour évaluer le nombre de noeuds suffisant pour la collecte, compte tenu d'une contrainte de délai exprimée par la source. Dans un mode particulier de réalisation, chaque requête est associée à une priorité de traitement et le procédé de collecte selon l'invention comporte une étape de classement de ladite requête dans une file d'attente lorsque ladite requête ne peut être servie, cette étape de classement prenant en compte la priorité précitée. Dans ce mode particulier de réalisation de l'invention, le procédé de collecte selon l'invention comporte une étape prenant en compte cette priorité pour sélectionner, le cas échéant, une requête à servir parmi toutes les requêtes en attente. Dans un mode de réalisation particulièrement avantageux, le procédé de collecte comporte une étape de réservation de noeuds au fur et à mesure qu'ils deviennent disponibles pour servir la requête la plus prioritaire et nécessitant le plus de noeuds. Dans un mode de réalisation, on réserve plus précisément un nombre prédéterminé de noeuds pour la requête la plus prioritaire, les autres noeuds étant utilisés pour servir les autres requêtes selon leur priorité. Cette caractéristique permet avantageusement d'éviter toute situation de blocage dans le traitement des requêtes en attente en privilégiant les sessions prioritaires, sans pour autant bloquer les autres sessions quel que soit le nombre de noeuds nécessaires leurs collectes. Dans un autre mode de réalisation, les noeuds disponibles sont systématiquement alloués aux requêtes les plus prioritaires. L'invention concerne également un système de diffusion de message dans un réseau de télécommunications, ce système comportant : - une source adaptée à diffuser un message à une pluralité de terminaux ; - un dispositif de collecte adapté à déterminer des noeuds du réseau nécessaires pour réaliser la collecte dans des conditions définies par au moins un paramètre d'une requête reçue de la source, ce dispositif étant adapté à envoyer à la source, et préalablement à la diffusion, des identifiants de ces noeuds, ces identifiants étant transmis aux terminaux par la source dans le message de diffusion, - les terminaux étant adaptés à recevoir le message diffusé par la source, 15 à sélectionner un noeud à partir du message de diffusion et à envoyer à ce noeud une donnée en réponse au message de diffusion ; - les noeuds étant adaptés à obtenir, à partir des données reçues des terminaux, des données destinées à être collectées par le dispositif de collecte. 20 Dans un mode particulier de réalisation, le dispositif de collecte selon l'invention est apte à gérer des requêtes reçues de plusieurs sources. Dans un mode de réalisation, on définit une session de collecte pour chaque requête reçue d'une source et on garantit que chacun des 25 noeuds participe, à un instant donné, à au plus une session de collecte. Cette caractéristique permet avantageusement de garantir les performances de la collecte des données remontant des terminaux. Dans un mode de réalisation, les données collectées par le dispositif de collecte selon l'invention correspondent aux données 30 transmises par les terminaux aux noeuds. Dans un autre mode de réalisation, les noeuds sont adaptés à réaliser une agrégation de données reçues en provenance des terminaux, les données agrégées étant celles collectées par le dispositif de collecte. Les données agrégées peuvent par exemple être constituées par 35 le nombre de terminaux ayant répondu au message diffusé par la source. Dans un mode de réalisation de l'invention, chaque terminal est adapté à sélectionner aléatoirement le noeud auquel il envoie sa donnée en réponse au message de diffusion parmi tous les noeuds identifiés dans ce message. Cette caractéristique permet avantageusement de répartir la charge sur tous les noeuds. En variante, chaque terminal peut choisir le noeud auquel il envoie sa donnée en réponse au message de diffusion, par exemple sur un critère géographique. Dans un mode de réalisation, chaque terminal est adapté à déterminer aléatoirement un instant pour envoyer à son noeud la donnée en réponse au message de diffusion. Cette caractéristique permet avantageusement de réduire la congestion au niveau des noeuds. Dans un mode de réalisation les différentes étapes du procédé de collecte sont déterminées par des instructions de programmes d'ordinateurs. En conséquence, l'invention vise aussi un programme d'ordinateur sur un support d'informations, ce programme étant susceptible d'être mis en oeuvre dans un ordinateur, ce programme comportant des instructions adaptées à la mise en oeuvre des étapes d'un procédé de collecte tel que décrit ci-dessus. Ce programme peut utiliser n'importe quel langage de programmation, et être sous la forme de code source, code objet, ou de code intermédiaire entre code source et code objet, tel que dans une forme partiellement compilée, ou dans n'importe quelle autre forme souhaitable. L'invention vise aussi un support d'informations lisible par un ordinateur, et comportant des instructions d'un programme d'ordinateur tel que mentionné ci-dessus. Le support d'informations peut être n'importe quelle entité ou dispositif capable de stocker le programme. Par exemple, le support peut comporter un moyen de stockage, tel qu'une mémoire statique de type SRAM, une ROM, par exemple un CD ROM ou une ROM de circuit microélectronique, ou encore un moyen d'enregistrement magnétique, par exemple une disquette (floppy disc) ou un disque dur. D'autre part, le support d'informations peut être un support transmissible tel qu'un signal électrique ou optique, qui peut être acheminé via un câble électrique ou optique, par radio ou par d'autres moyens. Le programme selon l'invention peut être en particulier téléchargé sur un réseau de type Internet. Alternativement, le support d'informations peut être un circuit intégré dans lequel le programme est incorporé, le circuit étant adapté pour exécuter ou pour être utilisé dans l'exécution du procédé en question. Brève description des dessins D'autres caractéristiques et avantages de la présente invention ressortiront de la description faite ci-dessous, en référence aux dessins annexés qui en illustrent un exemple de réalisation dépourvu de tout 15 caractère limitatif. Sur les figures : - la figure 1 représente un système de diffusion conforme à l'invention dans un mode préféré de réalisation ; - la figure 2 représente, de façon schématique, un dispositif de collecte conforme à l'invention dans un mode préféré de réalisation ; 20 - la figure 3 représente, sous forme d'organigramme, les principales étapes d'un procédé de collecte conforme à l'invention dans un mode de réalisation de l'invention ; - la figure 4 représente, sous forme d'organigramme, une méthode de gestion des requêtes en attente dans un procédé de collecte 25 conforme à l'invention ; et - la figure 5 représente, sous forme de diagramme, un échange de messages pouvant être mis en oeuvre dans un procédé de collecte conforme à l'invention. 30 Description détaillée d'un mode de réalisation La figure 1 représente un système 1 de diffusion de message conforme à l'invention. Ce système comporte une source 10 adaptée à diffuser un message M à une pluralité de terminaux 20 à 24, dans un réseau non 35 représenté. Ce système 1 de diffusion comporte un dispositif 30 de collecte conforme à l'invention. Avant la diffusion du message M, la source 10 envoie une requête R1 au dispositif de collecte 30, cette requête comportant des paramètres définissant les conditions pour collecter des données D2 obtenues à partir des données D1 envoyées par les terminaux 20 à 24 sur réception du message M diffusé par la source 10. Dans le mode de réalisation décrit ici, les paramètres contenus dans la requête sont constitués par le nombre de terminaux 20 à 24 destinataires du message de diffusion et une durée de collecte souhaitée par la source 10. Sur réception de cette requête, le dispositif de collecte 30 détermine, comme décrit ultérieurement en détail, une liste LN d'identifiants de noeuds 40 du réseau adaptés à collecter chacun une partie des données envoyées par les terminaux 20 à 23. Ces noeuds 40 sont choisis de sorte que la collecte réponde aux conditions de la requête R1. Le dispositif de collecte 30 envoie ensuite cette liste d'identifiants LN à la source 10 en réponse à la requête R1. Sur réception de cette liste d'identifiants LN, la source 10 diffuse le message M accompagné de la liste d'identifiants LN. Ce message diffusé est reçu par les terminaux 20 à 23. Nous supposerons dans cet exemple que le terminal 24 ne reçoit pas correctement le message diffusé par la source 10. Pour éviter un tel inconvénient, le message M(LN) est diffusé plusieurs fois par la source 10. Sur réception correcte du message, les terminaux 20 à 23 déterminent, à partir de ce message, un noeud 40 auquel ils doivent envoyer une donnée Dl en réponse au message de diffusion M. Dans le mode de réalisation décrit ici, chaque terminal 20 à 23 sélectionne aléatoirement un des noeuds 40 parmi l'ensemble des noeuds dont les identifiants sont contenus dans la liste LN diffusée avec le message M. Dans le mode de réalisation décrit ici, chaque terminal 20 à 23 détermine également aléatoirement un instant auquel la réponse Dl doit être envoyée au noeud mentionné ci-dessus. Dans l'exemple de réalisation décrit ici, on supposera que les noeuds 40 sont adaptés à réaliser une agrégation des données Dl, pour générer des données D2 destinées à être collectées par le dispositif de collecte 30. Conformément à l'invention, chaque noeud 40 ne peut être utilisé, à un instant donné, que pour une seule session de collecte, une telle session étant définie par message de diffusion M. Lorsque le temps de collecte est écoulé, en prenant soin de garder une marge supplémentaire pour intégrer des risques de latence du réseau, la source 10 envoie au dispositif de collecte 30 une deuxième requête R2 pour que celui-ci obtienne et lui remonte les données D2 agrégées par les différents noeuds 40. Cette requête R2 est transmise par le dispositif 30 de collecte à chacun des noeuds 40 qui participent à la collecte. Sur réception de cette requête R2, chaque noeud 40 envoie les données agrégées D2 au dispositif de collecte 30. Sur réception de ces données, le dispositif de collecte 30 considère que les noeuds 40 sont libérés et disponibles pour une autre session. Enfin, le dispositif de collecte 30 remonte les données D2 à la source 10. La figure 2 représente un dispositif 30 de collecte conforme à l'invention. Ce dispositif peut être constitué par un ordinateur. Dans le mode préféré de réalisation décrit ici, ce dispositif 30 de collecte comporte un processeur 31, une mémoire vive 32, une mémoire morte 33 et des moyens 34 de communication avec la source 10 et les noeuds 40. Dans la mémoire morte 33 est enregistré un programme d'ordinateur comprenant des instructions pour l'exécution des étapes du procédé de collecte qui sera décrit ultérieurement en référence aux figures 3 et 4. Le dispositif 30 de collecte décrit ici comporte une mémoire non volatile réinscriptible 35 de type flash qui mémorise une liste 36 des noeuds du réseau connus du dispositif de collecte 30 et une table 37 des requêtes R en attente d'être servies. Dans l'exemple de réalisation décrit ici, la liste 36 des noeuds contient, pour chacun des noeuds, une information selon laquelle le noeud est disponible ou en train de participer à une session de collecte en cours, ou indisponible. Des messages additionnels, connus de l'homme du métier et non décrits ici, permettent de vérifier périodiquement l'état des noeuds 40. Nous allons maintenant décrire, en référence à la figure 3, les principales étapes d'un procédé de collecte conforme à l'invention dans un mode préféré de réalisation. Ce procédé de collecte peut être mis en oeuvre par le dispositif 30 de collecte décrit précédemment. Au cours d'une première étape E10, le dispositif 30 de collecte reçoit une requête R1 en provenance de la source 10. Cette étape E10 est suivie par une étape E20 au cours de laquelle le dispositif 30 de collecte détermine le nombre de noeuds suffisant pour servir la requête R1 conformément aux conditions contenues dans des paramètres de cette requête. Cette étape est suivie par une étape E30 au cours de laquelle le dispositif 30 de collecte détermine, à partir de la liste 36, le nombre de noeuds disponibles pour servir cette requête. L'étape E30 de détermination est suivie par un test E40 au cours duquel le serveur 30 de collecte détermine si le nombre de noeuds disponibles est supérieur ou égal au nombre de noeuds suffisant pour répondre à la requête. Si tel est le cas, le résultat du test E40 est positif. Ce test est alors suivi par une étape E50 au cours de laquelle le dispositif 30 de collecte envoie à la source 10 la liste LN des identifiants des noeuds 40 disponibles. Comme décrit précédemment, cette liste est incorporée dans le message M diffusé par la source 10 vers les terminaux 20 à 24. Si le nombre de noeuds disponibles est strictement inférieur au nombre de noeuds suffisants pour répondre à la requête dans les conditions demandées par la source 10, le résultat du test E40 est négatif. Ce test est alors suivi par une étape de classement E60 au cours de laquelle le dispositif de collecte 30 place la requête dans la file d'attente matérialisée par la table des requêtes en attente 37. Dans l'exemple de réalisation décrit ici, chaque requête est associée à une priorité PO à P2, les requêtes de priorité PO étant prioritaires par rapport aux requêtes de priorité P1 et P2. Nous allons maintenant décrire en référence aux figures 4 aux tableaux 5A à 5E une méthode de gestion de cette file d'attente. Le tableau 5A représente l'état de la table 37 lorsque le dispositif 30 de collecte vient de recevoir, en provenance de la source 10, une requête de priorité maximale PO nécessitant 15 noeuds. PO P1 P2 Libres Réserve 1 1 1 4 1 1 6 8 1 7 15 4 12 0 0 Tableau 5A Ce tableau se lit comme suit : 15 - cinq requêtes de priorité PO sont en attente, ces requêtes nécessitant respectivement 1, 1, 1, 8 et 15 noeuds ; - trois requêtes de priorité P1 sont en attente, ces requêtes nécessitant 1, 1 et 4 noeuds ; - cinq requêtes de priorité P2 sont en attente, ces requêtes 20 nécessitant 1, 4, 6, 7 et 12 noeuds ; - aucun noeud 40 n'est disponible ; et - aucun noeud 40 n'a été réservé pour servir la requête la plus prioritaire. Dans chaque colonne du tableau 5A, les requêtes sont classées 25 par nombre de noeuds demandés, puis par ordre d'arrivée pour un nombre de noeuds demandés identique. On suppose maintenant que 10 noeuds 40 deviennent disponibles. Ces noeuds sont ajoutés, au cours d'une étape F10, à la liste des noeuds disponibles.10 Cette étape F10 d'ajout est suivie par une étape F20 au cours de laquelle le dispositif 30 de collecte détermine si des requêtes sont en attente. Si tel n'est pas le cas, le procédé de gestion des files d'attente se termine. Si tel est le cas, le test F20 est suivi par un test F30 au cours duquel le dispositif 30 de collecte détermine si le nombre de noeuds libres et le nombre de noeuds réservés est suffisant pour servir la requête de priorité maximum PO nécessitant le plus de noeuds (15). Dans l'exemple décrit, ce n'est pas le cas, puisque les 10 noeuds libérés ne permettent pas de servir la requête de priorité maximale nécessitant 15 noeuds. Dans ce cas, le test F30 est suivi par une étape F40 au cours de laquelle un nombre de noeuds prédéterminé, à savoir 3 dans l'exemple décrit ici, est réservé pour servir la requête la plus prioritaire nécessitant le plus de noeuds. Cette étape F40 de réserve est suivie par une étape F50 au cours de laquelle les noeuds libérés et non réservés (7 en l'espèce) sont utilisés jusqu'à épuisement pour servir les requêtes à partir de la requête de plus grande taille dans la plus grande priorité. Ces 7 noeuds permettent donc de servir les trois requêtes de priorité PO nécessitant 1 noeud et la requête de priorité P1 nécessitant 4 noeuds. L'état de la table 37 des requêtes en attente est alors donné par le tableau 5B. PO P1 P2 Libres Réserve 1 4 6 8 1 7 15 1 12 0 3 Tableau 5B On suppose maintenant qu'une requête de priorité P1 nécessitant 3 noeuds est reçue par le dispositif de collecte 30 en provenance de la source 10. L'état de la table 37 des requêtes en attente est alors donné par 5 le tableau 5C. PO P1 P2 Libres Réserve 1 4 1 6 8 1 7 15 3 12 0 3 Tableau 5C 10 On suppose maintenant que 4 noeuds sont rendus disponibles. Le dispositif 30 de collecte met alors en oeuvre les étapes F10, F20, F30, F40 et F50 déjà décrites. Plus précisément, 3 noeuds (étape F40) sont ajoutés aux noeuds déjà en réserve, ce qui porte ce nombre de 15 noeuds à 6, le noeud restant étant utilisé (étape F50) pour servir une requête de priorité P1 nécessitant un seul noeud. L'état de la table 37 des requêtes en attente est alors donné par le tableau 5D. PO P1 P2 Libres Réserve 1 4 6 8 1 7 15 3 12 0 6 Tableau 5D 20 On suppose maintenant que 11 noeuds sont libérés. Le dispositif de collecte selon l'invention met alors en oeuvre les étapes F10, F20 et F30. Mais au cours du test F30, le dispositif de collecte selon l'invention détermine cette fois que le nombre de noeuds disponibles et le nombre de noeuds en réserve, à savoir ici 17, suffit pour servir la demande de priorité maximale PO nécessitant le nombre maximal de noeuds, à savoir 15. Dans ce cas, le résultat du test F30 est positif et ce test est suivi par une étape F60 au cours de laquelle le dispositif 30 de collecte sert la requête de priorité maximale nécessitant le plus grand nombre de noeuds, à savoir ici 15. Cette étape F60 est suivie par une étape F70 au cours de laquelle les requêtes de plus grande taille dans la plus grande priorité sont servies jusqu'à épuisement des noeuds restés disponibles. En l'espèce, les deux noeuds restant disponibles permettent ici 15 de servir : - la requête de priorité P1 nécessitant 1 noeud et la requête de priorité P2 nécessitant 1 noeud. Le tableau 5E donne l'état de la table 37 des requêtes en attente après que ces deux requêtes ont été servies. PO P1 P2 Libres Réserve 4 6 7 8 3 12 0 0 Tableau 5E Dans le mode de réalisation décrit ici, le dispositif de collecte 30 25 est distinct de chacun des noeuds 40. En variante, le dispositif de collecte 30 peut intégrer les fonctions d'un noeud 40. La figure 5 représente, sous forme de diagramme, un échange de messages pouvant être mis en oeuvre dans un procédé de collecte 30 conforme à l'invention. 20 Un tableau explicitant en détail la signification de ces messages et leurs paramètres est donné à la fin de la description. Tout d'abord, malgré sa connaissance a priori de l'état de chacun des noeuds 40, le dispositif de collecte 30 envoie un message ND_init vers les noeuds 40 pressentis afin de vérifier le bon état de fonctionnement de chacun d'eux. La réponse des noeuds 40 à ce message ND_init permet de tester périodiquement l'état des noeuds et éventuellement de signaler tout problème à une fonction d'administration du service, celle-ci étant hors du contexte de l'invention. Dans un mode particulier de réalisation, si un noeud 40 n'est pas en état de participer à la collecte, il répond au dispositif de collecte 30 par un message ND_confirm avec un paramètre représentatif de cet état. En l'absence de réponse d'un noeud 40 après un délai prédéterminé, le dispositif 30 de collecte considère également que le noeud 40 en question n'est pas disponible. Si un nombre suffisant de noeuds 40 est disponible, le dispositif 30 de collecte envoie un message de confirmation ND_confirm à la source 10, ce message contenant le nombre et les adresses IP des noeuds attribués. A partir de cette information, la source 10 calcule le délai de collecte et envoie une demande de collecte vers les terminaux 20 à 24. Si le nombre de noeuds disponibles est insuffisant, la requête est mise en attente comme décrit précédemment dans un système de file d'attente. Les noeuds libres 40 ne sont pas alloués à cette session. De façon optionnelle, quand une requête de la source 10 ne peut être servie, le dispositif 30 de collecte envoie, à la source 10 concernée, un message ND_wait, ce message pouvant optionnellement contenir le nombre de noeuds 40 disponibles pour que la source 10 puisse modifier sa requête. Quand le temps de collecte est écoulé, préférentiellement avec une marge supplémentaire pour intégrer les risques de latence du réseau, la source 10 envoie une demande d'agrégation au dispositif de collecte 30, cette demande d'agrégation étant retransmise à chacun des noeuds 40. La réponse des noeuds 40 termine cette phase d'agrégation. Ces noeuds sont alors libérés pour une autre session. A la réception des messages, le dispositif de collecte 30 déclare les noeuds 40 disponibles dans sa table 36 avant de remonter un rapport uniquevers la source 10. Dans un mode préféré de réalisation, un noeud 40 répond systématiquement au dispositif de collecte 30 même si il n'a reçu aucun message en provenance des terminaux 20 à 24. Si un noeud 40 n'a pas répondu au dispositif de collecte 30 dans le temps imparti, celui-ci le ré-initialise par l'envoi d'un message ND_init. En effet, le dispositif 30 de collecte ne peut conclure sur la validité de l'opération en cours car il n'a aucune assurance que la collecte est conforme à l'état du parc des terminaux 20 à 24. Le message Retour_collecte contient alors une information indiquant cette anomalie. A tout moment, un message ND_abort reçu par le dispositif 30 de collecte est transmis au noeud 40. La session est alors immédiatement interrompue. Tous les messages parvenant ensuite au noeud 40 pour cette session sont ignorés. Le numéro de session permet au dispositif de collecte 30 de sélectionner les noeuds 40 concernés. Le tableau suivant donne le détail des messages ainsi que leurs 20 paramètres. Message Paramètres ND_init Nombre de terminaux (1) ND_min, ND_max (nombre de noeuds (2) souhaités) (3) ND_unity_time (coefficient à appliquer (4) sur la durée unitaire de traitement) (5) ND_delay (délai de collecte) (6) ND_type (type de collecte, instancié selon les demandes des applications) ND_session ND_confirm ND_session (identifiant de la session (7) de collecte) (8) ND_nbre (nombre de noeuds alloués) (9) { IP} (liste des adresses IP des noeuds attribués) ND_wait ND_session (10) ND_nbre ND_rq ND_session ND_rsp ND_session (11) (liste noeuds collectés) ND_abort ND_session (1) Le nombre d'usagers supposés répondre à la collecte. (2) ND_min et ND_max sont les nombres de noeuds minimum et maximum requis par la source pour qu'elle puisse exécuter une collecte dans des conditions normales. (3) ND_unity_time : temps connu par la source 10 pour qu'un noeud 40 traite un message "Retour-Collecte" envoyé par un terminal 20-24. (4) ND_delay est le temps de collecte exigé par la source 10 pour une session de collecte. Le dispositif de collecte 30 peut alors calculer, à partir de nombre_usagers et ND_unity_time le nombre de noeuds 40 indispensables pour réaliser la collecte. (5) La source 10 précise le type de collecte qu'elle s'apprête à demander. Les noeuds 40 possèdent le thread ou le code adapté aux traitements requis, et l'activent pour la durée de la collecte (jusqu'à la réception d'un message "demande_agrégation". (6) ND_session est fourni par le dispositif de collecte 30 aux noeuds 40 et à la source 10 pour la cohérence des messages échangés dans la session. (7) (8) Le nombre de noeuds 40 alloués par le dispositif de collecte 30 à la source 10 pour une session de collecte. (9) Le dispositif 30 de collecte fournit à la source 10 la liste des adresses IP qui lui sont attribuées. (10) Dans ce message optionnel, quand une requête d'une source 10 ne peut être servie, le dispositif de collecte 30 envoie à la source 10 concernée le nombre de noeuds 40 disponibles pour lui permettre éventuellement de modifier sa requête. (11) La réponse d'une collecte peut prendre plusieurs formes, selon le type de collecte. Par exemple, il s'agit d'un nombre de noeuds 40 ayant répondu, de la liste des terminaux 20-24 ayant répondu, ou un classement des noeuds 40 ayant répondu selon leur état interne. Comme décrit précédemment, une source 10 peut demander un nombre de noeuds 40 ou préciser les conditions de la collecte, et le dispositif de collecte 30 calcule le nombre de noeuds 40 adaptés par la formule : nombre_noeuds = (nombre_de_terminaux *ND_unity_delay)/ND_delay. REVENDICATIONS 1. Procédé pour, sur requête (R1) d'une source (10), collecter des données (D2) auprès d'une pluralité de noeuds dans un réseau de télécommunications, lesdites données (D2) ayant été obtenues par lesdits noeuds (40) à partir de données (Dl) reçues en provenance d'une pluralité de terminaux (20-24) en réponse à un même message (M) diffusé par ladite source (10) à destination desdits terminaux (20-24), ledit procédé étant caractérisé en ce qu'il comporte, préalablement à ladite diffusion : - une étape (E20, E30) de détermination desdits noeuds permettant de réaliser ladite collecte dans des conditions définies par au moins un paramètre de ladite requête (R1) ; et - une étape d'envoi (E50), à ladite source (10), des identifiants desdits 15 noeuds (40), ces identifiants étant transmis auxdits terminaux (20-24) par ladite source (10) dans ledit message (M) de diffusion. 2. Procédé de collecte selon la revendication 1, caractérisé en ce qu'il comporte : 20 - une étape (E20) de détermination du nombre de noeuds (40) suffisant pour effectuer ladite collecte dans lesdites conditions ; - une étape (E30) de détermination du nombre de noeuds disponibles dans ledit réseau ; et - une étape (E60) au cours de laquelle ladite requête (R1) est mise en 25 attente, de sorte que ladite diffusion est suspendue, tant que (E40) ledit nombre de noeuds disponibles est inférieur audit nombre de noeuds suffisants. 3. Procédé de collecte selon la revendication 2, caractérisé en ce 30 que ledit nombre de noeuds suffisant est compris entre deux valeurs (ND_MIN, ND_MAX) contenues dans ladite requête (R1). 4. Procédé de collecte selon la revendication 2 ou 3, caractérisé en ce que ledit nombre de noeuds suffisant est déterminé en prenant au 35 moins en compte la durée souhaitée pour réaliser ladite collecte, et lenombre desdits terminaux (20-24), ces paramètres étant contenus dans ladite requête(R). 5. Procédé de collecte selon l'une quelconque des revendications 2 à 4, dans lequel chaque requête (R1) est associée à une priorité (P0-P2) de traitement, caractérisé en ce qu'il comporte une étape (E60) de classement de ladite requête dans une file d'attente lorsque ladite requête ne peut être servie, ladite étape de classement (E60) prenant en compte ladite priorité. 6. Procédé de collecte selon la revendication 5, dans lequel chaque requête (R1) est associée à une priorité (P0-P2) de traitement, caractérisé en ce qu'il comporte une étape (F50, F60) prenant en compte ladite priorité pour sélectionner, le cas échéant, une requête à servir, parmi toutes lesdites requêtes en attente. 7. Procédé de collecte selon la revendication 6, caractérisé en ce qu'il comporte une étape (F40) de réservation de noeuds du réseau au fur et à mesure qu'ils deviennent disponibles pour traiter la requête en attente la plus prioritaire et nécessitant le plus de noeuds. 8. Procédé de collecte selon la revendication 7, caractérisé en ce qu'on réserve un nombre prédéterminé de noeuds devenus disponibles pour la requête la plus prioritaire, les autres noeuds étant utilisés pour servir les autres requêtes selon leurs priorités. 9. Dispositif (30) de collecte de données (D2) au profit d'une source (10) dans un réseau de télécommunications comportant : - des moyens (34) de réception d'une requête (R1) en provenance de ladite source (10) ; et -des moyens pour collecter lesdites données (D2) auprès d'une pluralité de noeuds (40) dans ledit réseau, lesdites données (D2) ayant été obtenues par lesdits noeuds (40) à partir de données (Dl) reçues en provenance d'une pluralité de terminaux (20-24) en réponse à un même message (M) diffusé par ladite source (10) à destination desdits terminaux (20-24) ; ledit dispositif étant caractérisé en ce qu'il comporte :- des moyens pour déterminer desdits noeuds (40) permettant de réaliser ladite collecte dans des conditions définies par au moins un paramètre de ladite requête (R1) ; et - des moyens (34) d'envoi, à ladite source (10) et préalablement à ladite diffusion, des identifiants desdits noeuds (40), ces identifiants étant transmis, auxdits terminaux (20ù24) par ladite source (10) dans ledit message (M) de diffusion. 10. Programme d'ordinateur comportant des instructions pour l'exécution des étapes du procédé de collecte selon au moins l'une des revendications 1 à 8 lorsque ledit programme est exécuté par un ordinateur. 11. Support d'enregistrement (33) lisible par un ordinateur sur lequel est enregistré un programme d'ordinateur comprenant des instructions pour l'exécution des étapes du procédé de collecte selon au moins l'une des revendications 1 à 8. 12. Système de diffusion de message dans un réseau de 20 télécommunications comportant : - une source (10) adaptée à diffuser un message (M) à une pluralité de terminaux (20-24) ; - un dispositif (30) de collecte adapté à déterminer des noeuds dudit réseau nécessaires pour réaliser ladite collecte dans des conditions 25 définies par au moins un paramètre d'une requête (R1) reçue de ladite source (10), le dispositif (30) étant adapté à envoyer, à ladite source (S) et préalablement à ladite diffusion, des identifiants de ces noeuds (40), ces identifiants étant transmis, auxdits terminaux (20-24) par ladite source (10) dans ledit message (M) de diffusion, 30 - lesdits terminaux (20-24) étant adaptés à recevoir ledit message (M) diffusé par la source (10), à sélectionner un noeud (40) à partir dudit message (M) de diffusion et à envoyer à ce noeud (40) une donnée (Dl) en réponse audit message (M) de diffusion ; - lesdits noeuds (40) étant adaptés à obtenir, à partir desdites données 35 (D1), des données (D2) destinées à être collectées par ledit dispositif (30) de collecte. 13. Système de diffusion selon la revendication 12, dans lequel on définit une session de collecte par requête (R1) reçue de ladite source (10), et dans lequel chacun desdits noeuds (40) participe, à un instant donné, à au plus une session de collecte. 14. Système de diffusion selon la revendication 12 ou 13, caractérisé en ce qu'il comporte au moins un noeud (40) adapté à réaliser une agrégation des données (D1) reçues en provenance desdits terminaux, lesdites données agrégées (D2) étant celles collectées par ledit dispositif (30) de collecte. 15. Système de diffusion selon l'une quelconque des revendications 12 à 14, caractérisé en ce qu'il comporte au moins un terminal (20-23) adapté à sélectionner aléatoirement ledit noeud (40) auquel il envoie ladite donnée (Dl) en réponse audit message (M) de diffusion parmi tous les noeuds (40) identifiés dans ledit message (M). 16. Système de diffusion selon l'une quelconque des revendications 12 à 15, caractérisé en ce qu'il comporte au moins un terminal (20-23) adapté à déterminer aléatoirement un instant pour envoyer audit noeud (20) ladite donnée (D1) en réponse audit message (M) de diffusion.