Brevet FR3095094A1 — publié le 20201016

Description Titre de l'invention : PROCEDES DE MULTI-DIFFUSION ET D'OBTENTION DE CONTENUS NUMERIQUES DANS UN RESEAU, DISPOSITIF ET SYSTEME ASSOCIES Domaine technique de l'invention 100011 La présente invention se situe dans le domaine des communications numériques et concerne plus particulièrement une technique de codage et de décodage pour la transmission de données numériques à une pluralité de récepteurs dans un réseau de communication. 100021 Elle trouve une application privilégiée pour la multidiffusion (multicast en anglais) de contenus numériques, en particulier dans des réseaux radio-mobiles de type 4G ou 5G. 100031 Par la suite, on désignera de manière générale par contenu numérique toute séquence d'éléments binaires sélectionnés parmi l'ensemble (0, 1). Cette séquence est généralement structurée sous la forme de fichiers ou de fragments de fichiers selon un format donné (e.g. mpee, mp4, jpeg, etc). De préférence, la nature des contenus numériques est de type audio et/ou vidéo. 100041 Par la suite, on désignera de manière générale par récepteur tout type de noeud du réseau adapté à communiquer avec d'autres noeuds du réseau et destiné à recevoir des contenus numériques d'un ou plusieurs noeuds du réseau (i.e. noeud source ou serveur). Un récepteur peut être constitué par un terminal d'un utilisateur, tel qu'une tablette, un téléphone portable, un ordinateur ou tout autre objet connecté au réseau de communication. Arrière-plan technique Stockage préalable (caching, prefetching) [0005] Pour diffuser efficacement des contenus numériques à une pluralité de récepteurs dans un réseau de communication, il est connu de stocker temporairement tout ou partie de ces contenus dans des mémoires temporaires dites mémoires caches des récepteurs. Cette opération de stockage est connue sous le nom de caching en anglais. [0006] Par la suite, on désignera par mémoire cache ou antémémoire, toute mémoire destinée à stocker temporairement tout type de données numériques, tels que des fichiers ou fragments de fichiers de données. [0007] De manière connue, les mémoires caches sont utilisées pour stocker préalablement, au plus près des utilisateurs, des fichiers populaires (i.e. susceptibles d'être demandés ultérieurement par ces utilisateurs). 100081 Par anticipation, les contenus numériques sont avantageusement stockés dans les 2 mémoires caches d'une pluralité de récepteurs, de préférence lorsque le trafic est minimal au sein du réseau, de manière à limiter les risques de saturation du réseau pendant des périodes de pointe (i.e. lorsque le réseau est fortement sollicité). [0009] Dans la mesure où une partie des contenus numériques a été préalablement stockée localement au niveau des récepteurs, il ne reste qu'à transmettre les contenus numériques manquants de chacun des fichiers requis par les utilisateurs au moment où ceux-ci souhaitent disposer de l'intégralité de ces fichiers. [0010] Par la suite, cette étape de transmission des contenus numériques manquants sera désignée par étape de livraison (i.e.delivery en anglais). Cette étape est exécutée en réponse à une requête d'un utilisateur émise à partir d'un terminal (e.g. téléphone portable) et à n'importe quel moment, par exemple pendant une période où le trafic est relativement élevé à travers le réseau. [0011] Cette étape de stockage préalable dite pré-stockage est mise en oeuvre au moyen d'algorithmes intelligents de pré-extraction de données connus adaptés à aller chercher par anticipation (prefetching en anglais) auprès d'un ou plusieurs noeuds sources, des fragments de fichiers à stocker dans les mémoires caches des récepteurs avant de recevoir une requête d'un utilisateur pour l'obtention des fragments manquants. [0012] Ces algorithmes, qualifiés de prefetching en anglais, sont tels que ceux décrits, par exemple, par M.A. Maddah-Ali et U. Nicsen dans un article intitulé "Fondamental litons of cachitzg", publié dans IEEETransactions on Information Theory, 2014. Ce type d'algorithme se distingue notamment en ce qu'il permet de diversifier les contenus numériques pré-stockés à travers les terminaux (e.g. tablettes, téléphones portables, ordinateurs) d'utilisateurs ou de groupes d'utilisateurs, tout en augmentant considérablement les gains en termes de débit ou de temps de transmission en comparaison avec les algorithmes de prefetching traditionnels, selon lesquels tous les récepteurs obtiennent dans leur mémoires caches un même contenu numérique. [0013] La présente invention concerne plus particulièrement la phase de livraison, lors de laquelle les utilisateurs des récepteurs Ri requièrent les fichiers Wi, en supposant que leurs mémoires caches respectives ont déjà été préalablement alimentées en fragments de fichiers par au moins un noeud source T, lors de l'étape de prefetching exécutée selon un algorithme connu. [0014] Autrement dit, dans le cadre de la présente invention, on fait l'hypothèse qu'il existe au sein du réseau plusieurs récepteurs Ri comprenant chacun une mémoire cache Mi, dans laquelle ont été préalablement stockés des fragments de fichiers Mrti. Combinaison de fragments de fichiers : X-OR [0015] Afin d'optimiser le nombre de paquets de données transmis dans le réseau, il est connu de combiner au sein d'un même paquet de données plusieurs fragments de fichiers destinés respectivement à différents récepteurs, ce même paquet étant transmis 3 à l'ensemble des récepteurs requérant les fragments manquants d'un même fichier. [0016] De manière classique, la combinaison des fragments de fichiers consiste en une addition binaire de l'ensemble des fragments à transmettre, en utilisant l'opérateur logique OU exclusif (X-OR : eXclusive OR en anglais) désigné par le symbole. L'application cet opérateur X-OR constitue une opération de codage. [0017] Selon le scénario de Part antérieur illustré à la figure 1, on suppose que, lors de l'étape préalable de caching ou prefetching, un émetteur T (ou noeud source), tel qu'une station de base radio-mobile 4G ou 5G, a découpé les fichiers W1, W2, W3 en une pluralité de p fragments (e.g. p=3) notés respectivement {W11, W12, W1"1, W 22, W23}, {w-31, w-32, Wy} et distribué certains de ces fragments de fichiers dans les mémoires caches MI, M,, M3 respectives de trois récepteurs RI, R2, R3. Chaque fragment de fichier est noté Wki, où le sous-indice k désigne le Vine récepteur Rk et le sur-indice 1 identifie un fragment parmi l'ensemble de p fragments du fichier % résultant du découpage de ce fichier. [0018] Par exemple, on suppose que les fragments de sur-indice 1=1 (Le. W,' W2 I ,W sont ) sont envoyés aux récepteurs RI et R2, que les fragments de sur-indice 1=2 (Le. W, 2, 2 2 , W3 ) sont envoyés aux récepteurs R2 et R2 et que les fragments de sur-indice 1=3 ( Le. W1 , W2 , W ) sont envoyés aux récepteurs R, et R2. [0019] A cet effet, chacun des trois récepteurs RI, R2, R3 émet préalablement une requête à destination du noeud source T pour requérir la connaissance complète d'un fichier particulier, e.g. W 1, W2, W3 respectivement. [0020] Par exemple, le premier récepteur R, requiert le fichier complet W1 (Le. le fragment manquant W12), le deuxième récepteur R2 requiert le fichier complet W2 (Le. le fragment manquant W28) et le troisième récepteur R3 requiert le fichier complet % (i.e. le fragment manquant W23). Ainsi, l'envoi, par le noeud source T, d'un unique paquet contenant la combinaison des fragments de fichiers manquants W12, W23, W2' notée W12 gi) W2311" W:2' permet simultanément : [0021] au premier récepteur RI disposant préalablement dans sa mémoire cache MI des fragments 1W 11 - W21, ; W i , W13, W18's d'obtenir, à partir de ces fragments et de ladite combinaison, le fragment manquant W 2 et ainsi reconstituer le ficher W1 dans son intégralité (W,' I W121 W13); [0022] au deuxième récepteur 122 disposant préalablement dans sa mémoire cache 1\42 des fragments {W1', W 2 1 , ; W12; w 2 , W32} d'obtenir, à partir de ces fragments et de ladite combinaison, le fragment manquant W 2 3 et ainsi reconstituer le ficher W, dans son intégralité (W2 I W22 I W23); et [0023] au troisième récepteur R3 disposant préalablement dans sa mémoire cache M3 des fragments 1W12,W22, W 3 2 ; W13, W23, W 3 is d'obtenir, à partir de ces fragments et de ladite combinaison, le fragment manquant W 3 1 et ainsi reconstituer le ficher W3 dans son intégralité (W3' I W32 I W33). [0024] Cette technique de multidiffusion codée, communément désignée coded nzulticasting en anglais, a été décrite, par exemple, par M. A. Maddah-Ali et U. Niesen, dans leur article intitulé "Puni-lamentai litnits of cachitzg" et publié dans la revue JEEP Transactions on Information Theory, vol. 60, no. 5, pp. 2856-2867, May 2014. Dans les prototypes actuels, l'application de l'opérateur X-OR permet, lors de l'étape de livraison, de combiner des fragments de contenus numériques pour offrir la possibilité de multidiffusion (i.e. envoi d'une même séquence de bits utiles à plusieurs récepteurs). Toutefois, les inventrices ont démontré, lors de leurs travaux, que ces prototypes présentent des limitations en termes de performances de transmission, (débits faibles ou temps de transmission relativement élevé). Les inventrices ont identifié que cet inconvénient est principalement dû au fait que la façon dont les fragments de fichiers sont combinés ne tient pas compte de la façon dont les fragments sont ensuite transmis sur le canal de propagation. Codage de canal [0025] Dans un réseau de communication radio-mobile, il est bien connu que tous les ré- cepteurs ne sont pas équivalents en termes de capacité de réception, étant donné notamment que les conditions de canal peuvent varier en fonction du récepteur considéré. De cc fait, il existe des récepteurs faibles, qui limitent naturellement le débit de réception de tous les autres récepteurs, créant ainsi un goulot d'étranglement pour des transmissions utilisant des techniques de codage/décodage de canal conventionnelles. [0026] En matière de communication sans fil, notamment radio-mobile selon le standard 4G ou 5G, le codage de canal est communément utilisé pour protéger les informations émises contre des erreurs de transmission pouvant être causées par la présence de bruit et/ou d'interférences sur le canal de transmission du récepteur concerné ou par une puissance du signal reçu insuffisante. [0027] De manière connue, un codeur de canal est mis en oeuvre par le noeud source ou émetteur (e.g. station de base 4G ou 5G) de manière à coder l'information à transmettre sur le canal de transmission. Un décodeur de canal est mis en oeuvre par le récepteur (e.g. terminal mobile) de manière à mitiger les erreurs de transmission et récupérer avec fiabilité l'information émise par l'émetteur après transmission sur le canal bruité. [0028] Au cours des dernières décennies, plusieurs codes de canal à haute performance ont été développés pour transmettre des données de manière fiable et à des débits approchant la limite théorique imposée par la capacité de transmission du canal selon le théorème de Shannon. En particulier, les turbo-codes ont été exploités dans les standards de communication radio-mobile de troisième et quatrième générations (3G, 4G) tandis que les codes LDPC (Low Density Parity Check) ont été adoptés dans le standard Wi-Fi (e.g. IEEE 802.11 a/b/g) et dans les standards de communication par satellite. [0029] Plus récemment sont apparus les codes polaires, dits Polar Codes en anglais, offrant de bonnes performances de correction d'erreurs pour la réception de messages courts. Les inventrices ont constaté, au cours de leurs travaux de recherche, que les codes polaires n'ont pas encore été appliqués spécifiquement dans le cadre de la phase de livraison de contenus numériques (e.g. fragments de fichiers manquants lors de la phase de livraison), notamment dans des réseaux radio-mobiles. Résumé de l'invention [0030] Un problème technique visé par la présente invention est de fournir un procédé de mu-hi-diffusion qui, lors de l'étape de livraison, permet de transmettre les fichiers ou les fragments de fichiers manquants à chacun des récepteurs, de manière à minimiser le temps de livraison à travers le réseau de communication ou de manière équivalente à maximiser le débit de transmission pour l'ensemble des récepteurs. [0031] En réponse à cc problème, les inventrices proposent un procédé de multi-diffusion et un procédé d'obtention de fragments de fichiers mettant en oeuvre une technique de codage/décodage améliorée qui tient compte des limitations liées aux différents récepteurs (e.g. conditions de canal de transmission), lors du codage du contenu numérique à transmettre aux récepteurs. [0032] Selon l'approche suivie par les inventrices, il s'agit d'envoyer un même paquet de données numériques (te. une même séquence de bits codés) simultanément à différents récepteurs, de sorte que ce paquet puisse être décodé sans erreur par les récepteurs plus faibles, sans provoquer de limitation en termes de débit ou temps de transmission auprès des autres récepteurs. [0033] La technique de codage proposée dans le cadre de la présente invention fait en sorte que les récepteurs les plus faibles ne créent pas de goulot d'étranglement en termes de débit binaire (Mbit/s) ou de manière équivalente ne créent pas des ralentissements de transmission, en particulier vis-à-vis des récepteurs les plus forts. Selon l'invention, chaque récepteur peut être servi à un débit adapté aux conditions de canal qui lui sont propres. [0034] De manière générale, le terme codage pourra se référer à la manière de combiner plusieurs fragments de fichiers destinés à des récepteurs différents et/ou au codage de canal tel que défini ci-avant. [0035] Ainsi, un objet de la présente invention est un procédé de multidiffusion de fragments manquants de fichiers numériques à un ensemble de récepteurs comprenant une pluralité de récepteurs faibles comprenant chacun une mémoire cache dans 6 laquelle sont stockés un ou plusieurs fragments de fichiers numériques pré-stockés, les fragments manquants de fichiers destinés à être diffusés n'étant pas préalablement stockés dans la mémoire cache des récepteurs respectifs (Le. de tous les récepteurs faibles) requérant ces fichiers. [0036] Le procédé comprenant les étapes suivantes : [0037] sélection d'un sous-ensemble de récepteurs faibles ; [0038] pour chaque récepteur dudit sous-ensemble, identification d'au moins un fragment d'un fichier requis par ledit chaque récepteur et tel que ledit au moins un fragment est présent dans la mémoire cache de tous les autres récepteurs faibles appartenant audit sous-ensemble ; [0039] pour chaque récepteur dudit sous-ensemble et pour chacun dudit au moins un fragment de fichier identifié lors de l'étape précédente, regroupement/répartition dudit au moins un fragment du fichier en une pluralité de blocs b de taille mi égale à la capacité dc décodage dudit récepteur ; [0040] combinaison des blocs issus de l'étape c) de manière à fournir une séquence de bits combinés Wro; [0041] codage d'une séquence de bits à transmettre comprenant la séquence dc bits combinés Wc,,b, par application d'une technique de codage, dc manière à fournir une séquence de bits codés W,; et [0042] envoi dc ladite séquence de bits codés W, à un ensemble dc récepteurs comprenant le sous-ensemble de récepteurs faibles. [0043] Ainsi, le regroupement ou la répartition des fragments de fichiers tient compte de la capacité de décodage mi de chaque récepteur R, cette capacité étant directement liée aux conditions de canal entre l'émetteur et le récepteur. Ceci permet avantageusement d'éviter aux récepteurs disposant des capacités de décodage les plus faibles de limiter le débit de transmission de tous les autres récepteurs, en évitant ainsi un goulot d'étranglement dans des réseaux de communication utilisant des techniques de codage/ décodage conventionnelles (e.g. réseaux radio-mobiles de type 4G). [0044] Par ailleurs, le procédé selon l'invention permet, pal- l'envoi d'une unique séquence de bits codée, de servir simultanément l'ensemble des récepteurs concernés évitant l'envoi de séquences multiples différentes propres à chaque récepteur. En réduisant le nombre de paquets transmis, le procédé selon l'invention contribue à optimiser les ressources du réseau (e.g. réduction de la signalisation, etc). [0045] Selon une caractéristique de l'invention, chacun desdits blocs obtenus lors de l'étape c) est rempli par des bits "0" lors d'une étape de remplissage de sorte que la taille du bloc soit égale à la capacité de décodage maximale inG des récepteurs faibles du sous-ensemble. [0046] Ainsi, les blocs dans lequels sont regroupés un ou plusieurs fragments de fichiers ont 7 tous la même taille et peuvent être facilement combinés entre eux lors de l'étape de combinaison d). [0047] Selon une autre caractéristique de l'invention, l'étape de combinaison est mise en oeuvre par application de l'opérateur logique OU exclusif (X-OR). [0048] De manière avantageuse, l'opérateur OU exclusif est relativement simple à mettre en oeuvre et nécessite une puissance de calcul modérée permettant ainsi d'optimiser l'architecture des émetteurs et des récepteurs associés. [0049] Selon une autre caractéristique de l'invention, la technique de codage utilisée lors de l'étape de codage est une technique de codage polaire configure° pour recevoir en entrée les bits de ladite séquence de bits à transmettre. [0050] A cet égard, les inventrices ont constaté que la sélection d'un code polaire parmi l'ensemble des codes utilisés pour mettre en oeuvre un codage de canal existants pour coder la séquence de bits à transmettre à travers le canal de transmission est particulièrement efficace en termes de débits, dès lors que la séquence de bits à transmettre tient compte de la capacité de décodage de chacun des récepteurs comme décrit ci-avant. L'utilisation de codes polaires facilite l'envoi simultané de bits destinés à un ensemble de récepteurs faibles et de bits destinés à des récepteurs plus forts. [0051] Ainsi, l'application d'un code polaire classique sur une séquence de bits construite de manière à prendre en compte la capacité de décodage de chaque récepteur du sous-ensemble comme décrit ci-avant est particulièrement avantageuse pour accroître les débits de transmission et par conséquent réduire le temps nécessaire pour permettre aux récepteurs de récupérer les fragments de fichiers manquants à travers le réseau. [0052] Selon une autre caractéristique de l'invention, l'étape de codage comprend une sous- étape d'ordonnancement, lors de laquelle les bits de la séquence de bits à transmettre sont agencés par ordre croissant de leur probabilité d'erreur avant l'application de la technique de codage. [0053] Ainsi, lors du codage de canal, le premier bit de la séquence de bits à transmettre est codé par le bit le plus fiable du code de canal, le deuxième bit de la séquence de bits à transmettre est codé par le deuxième bit le plus fiable du code de canal. Autrement dit, avant d'émettre, les bits du code de canal sont agencés pai- ordre croissant de leur paramètre Z (ou par probabilité d'erreur croissante) de manière à être envoyés dans cet ordre sur le canal de transmission. [0054] Cette caractéristique est particulièrement avantageuse lorsque la technique de codage est basée sur un code polaire pour tenir compte des propriétés du canal. De cette façon, les récepteurs les plus faibles pourront bien décoder les bits qui leur sont dédiés. [0055] Selon une autre caractéristique de l'invention, le procédé comprend en outre les étapes suivantes : [0056] - sélection d'au moins un récepteur fort parmi ledit ensemble de récepteurs, ledit au 8 moins un récepteur fort ne disposant pas de mémoire cache et requérant un fragment de fichier W,5(G) contenu dans les mémoires cache de récepteurs faibles du sous-ensemble G. de préférence, ledit récepteur fort ayant une capacité de décodage rn, supérieure à la capacité de décodage maximale mc des récepteurs faibles (mi>mc,); [0057] - concaténation de la séquence de bits combinés WG,E, avec le fragment de fichier Wi,E, (G)de manière à former la séquence de données à transmettre destinée à être codée lors de l'étape de codage. [0058] Selon cette particularité de l'invention, le procédé permet de servir également les ré- cepteurs forts (i.e. ne disposant pas de mémoire cache) en incluant dans la séquence de bits à coder des fragments de fichiers destinés à ces récepteurs. [0059] Un autre objet de l'invention est un procédé d'obtention (ou de lecture) d'au moins un fragment de fichier à partir d'une séquence de bits reçue Yk correspondant à la séquence de bits codés Wi. émise par un émetteur conformément au procédé de multidiffusion tel que décrit ci-dessus et transmise à travers un canal de transmission. [0060] Le procédé d'obtention comprend en outre, pour chaque récepteur faible Rk ap- partenant au sous-ensemble G, les étapes suivantes: [0061] réception de ladite séquence de bits reçue Yk; [0062] combinaison des fragments de fichiers destinés aux autres récepteurs faibles ap- partenant au sous-ensemble G, ces fragments étant stockés dans la mémoire cache du récepteur faible Rk de manière à obtenir une séquence combinée Wk.b.x0R(G); [0063] sélection des mis premiers bits de ladite séquence combinée W k.b.x0R(G), de manière à former une séquence combinée d'information Wk.b.X0Rslata; les bits restant de la séquence combinée formant une séquence de bits gelés Wk.b.X0R,f1 nicn ; [0064] décodage de canal des mi premiers bits de la séquence de bits reçue en utilisant la séquence de bits gelés Wk.b.X0R.frozen de manière à former une séquence de bits décodés X 1, le décodage étant basé sur un code utilisé par l'émetteur T lors de l'étape de codage ; [0065] combinaison de la séquence combinée d'information Wki,,x0R.da', et de la séquence de bits décodée XI de manière à obtenir les fragments de fichiers Wis,b(G\110) requis par le récepteur Rk. [0066] Un autre objet de l'invention est un procédé de communication mis en oeuvre dans un réseau comprenant une pluralité de noeuds de communication, le procédé comprenant les étapes du procédé de multidiffusion et les étapes du procédé d'obtention tels que décrits ci-dessus. [0067] Un autre objet de l'invention est un dispositif de traitement de l'information comprenant des moyens pour mettre en oeuvre les étapes du procédé de multidiffusion et/ou les étapes du procédé d'obtention tels que décrits ci-dessus. [0068] Un autre objet de l'invention est un système de multidiffusion comprenant au moins un serveur configuré pour mettre en oeuvre les étapes du procédé de multidiffusion tel 9 que décrit ci-dessus et une pluralité de dispositifs clients configurés pour mettre en oeuvre les étapes du procédé d'obtention tel que décrit ci-dessus. [0069] L'invention concerne également un programme d'ordinateur comprenant des ins- tructions adaptées à la mise en oeuvre de chacune des étapes du procédé de multidiffusion et/ou du procédé d'obtention selon l'invention tels que décrits ci-dessus, lorsque ledit programme est exécuté sur un ordinateur ou tout autre dispositif équivalent. [0070] L'invention concerne également un moyen de stockage d'informations, amovible ou non, partiellement ou totalement lisible par un ordinateur ou un microprocesseur comportant des instructions de code d'un programme d'ordinateur pour l'exécution de chacune des étapes du procédé de multidiffusion et/ou du procédé d'obtention selon l' invention. [0071] Dans un mode particulier de réalisation, des étapes du procédé de multidiffusion et/ ou du procédé d'obtention précité(s) sont déterminées par des instructions de programmes d'ordinateur. [0072] 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 par un microprocesseur, ce programme comprenant des instructions adaptées à la mise en oeuvre des étapes du procédé de multidiffusion et/ou du procédé d'obtention tels que mentionnés ci-dessus. [0073] 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. [0074] L'invention vise aussi un support d'informations ou moyen de stockage d'informations, amovible ou non, partiellement ou totalement lisible par un microprocesseur, et comprenant des instructions de code d'un programme d'ordinateur pour l'exécution de chacune des étapes du procédé multidiffusion et/ou des étapes du procédé d'obtention tels que décrits ci-dessus. [0075] Le support d'informations peut être n'importe quelle entité ou dispositif capable de stocker le programme. Par exemple, le support peut comprendre un moyen de stockage, tel qu'une ROM, par exemple une ROM de microcircuit, ou encore un moyen d'enregistrement magnétique, par exemple un disque dur, ou encore une mémoire flash. [0076] 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 pat- d'autres moyens. Le programme selon l'invention peut être en particulier téléchargé sur une platetbrme de stockage d'un réseau de type Internet. 100771 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é clans l'exécution du procédé en question. [0078] Le support d'informations et le programme d'ordinateur précités présentent des carac- téristiques et avantages analogues au procédé qu'ils mettent en oeuvre. Brève description des figures [0079] D'autres particularités et avantages de l'invention apparaîtront encore dans la des- cription ci-après, en relation avec les dessins annexés, donnés à titre d'exemples non limitatifs. [0080] [fie.11 La figure 1 illustre un scenario mettant en oeuvre un procédé de multidiffusion codée connu de l'art antérieur. [0081] [fig.2] La figure 2 illustre un sccnario de multidiffusion codée dans lequel est mise en oeuvre la présente invention. [0082] [fig.3] La figure 3 illustre un exemple de combinaison de fragments de fichiers à des- tination de deux récepteurs faibles selon un premier mode de réalisation du procédé de multidiffusion selon l'invention. [0083] [fig.4] La figure 4 illustre un exemple de combinaison de fragments de fichiers à des- tination de deux récepteurs faibles et d'un récepteur fort selon un deuxième mode de réalisation du procédé dc multidiffusion selon l'invention. [0084] [fig.51 La figure S illustre de manière schématique un exemple de mise en oeuvre du codage de canal par l'émetteur et du décodage de canal par le récepteur après transmission sur le canal de transmission selon un mode de réalisation de l'invention. [0085] [fig.6] La figure 6 illustre un mode de réalisation particulier du procédé de multi- diffusion de l'invention. [0086] [fig.7] La figure 7 illustre un exemple de mise en oeuvre du procédé de multidiffusion de l'invention dans un réseau comprenant une pluralité de récepteurs faibles et une pluralité de récepteurs forts. [0087] [fig.8] La figure 8 illustre un mode de réalisation particulier du procédé d'obtention de fragments de fichiers par un récepteur faible selon l'invention. [0088] [fig.9] La figure 9 illustre un exemple de mise en oeuvre du procédé d'obtention de fragments de fichiers par un récepteur faible selon l'invention, dans un réseau comprenant une pluralité de récepteurs faibles et une pluralité de récepteurs forts. [0089] [fig.10] La figure 10 illustre de manière schématique les séquences de bits obtenues lors de l'exécution du procédé d'obtention selon l'exemple illustré à la figure 9. [0090] [fig.11] La figure 11 illustre les résultats de performances obtenus grâce à l'invention en comparaison avec ceux obtenus par une technique de l'art antérieur. [0091] [fig.12] La figure 12 est un bloc-diagramme schématique d'un dispositif de traitement 11 de l'information pour la mise en oeuvre d'un ou plusieurs modes de réalisation de l'invention. Description détaillée de l'invention [0092] Selon un aspect de l'invention, il s'agit de regrouper (ou répartir) les fragments de fichiers manquants à transmettre à un ensemble de récepteurs, en tenant compte de la capacité de décodage propre à chacun de ces récepteurs, avant de les combiner, par exemple, par l'application de l'opérateur X-OR. [0093] Selon une particularité de l'invention, l'application d'une technique de codage de canal basée sur des codes polaires pour coder la séquence de bits préalablement combinés est particulièrement simple par rapport à d'autres techniques de codage de canal pour obtenir les meilleurs débits de transmission. [0094] L'invention va être maintenant décrite dans le cadre de la multidiffusion de fragments de fichiers à une pluralité dc récepteurs sur un réseau de communication de préférence radio-mobile, selon différents modes et variantes dc réalisation donnés à titre d'exemple dans le cadre du scénario illustré sur la figure 2. [0095] De manière générale, on considère une communication, selon laquelle un unique émetteur T envoie du contenu numérique à une pluralité dc récepteurs RI,...RK où K désigne un entier naturel tel que K>2. L'objectif de cette communication est de fournir les fragments de fichiers manquants aux différents récepteurs, dc sorte que les récepteurs R1,...,RK obtiennent la connaissance complète des fichiers W1,...,WK respectivement. [0096] Pour des raisons dc simplicité, l'invention est décrite uniquement pour un unique noeud source mais bien évidemment, l'invention s'applique également dans le cas où plusieurs noeuds sources sont destinés à diffuser des contenus numériques. Dans cc cas, un module de coordination pourra être fourni dc manière à coordonner les émissions simultanées des différents noeuds sources à destination des récepteurs. Parmi l'ensemble des K récepteurs, un sous-ensemble de L récepteurs désignés R, R,, disposent d'une mémoire cache MI M, dédiée à la communication, où L désigne un entier naturel te que L mi. La capacité maximale de décodage des récepteurs du sous-ensemble G est égale à m, ( Le. mg= Max { mi, m21). Dans cet exemple particulier, on considère que mg=rnn. [0122] Selon la représentation particulière de la figure 3, le fragment de fichier W12 ap- partenant à l'ensemble de fragments de fichiers W1(6111) destiné au premier récepteur R, est inclus intégralement dans l'un des trois blocs représentés, chacun de ces blocs étant destiné à recevoir un ou plusieurs fragments de fichiers dc l'ensemble W1(G\111). De même, le fragment de fichier W21 appartenant à l'ensemble de fragments de fichiers W4G\121) destinés au deuxième récepteur Rn est inclus intégralement dans un des deux blocs représentés, chacun de ces blocs étant destiné à recevoir un ou plusieurs fragments de fichiers de l'ensemble Wn(GM 21. [0123] Selon l'exemple ci-dessus, un bloc contient un fragment de fichier. Toutefois, on pourra considérer d'autres façons de répartir les fragments dc fichiers à travers les blocs, en particulier en faisant en sorte que les blocs comprennent une pluralité dc fragments de fichiers. [0124] Dans le scénario décrit en référence à la figure 2, seul un fichier manquant a été identifié pour chacun des récepteurs RI, Rn, pour des raisons de simplicité de des- cription. Toutefois en pratique, il est prévu de fournir simultanément plusieurs fragments de fichiers manquants à un récepteur respectif ou à plusieurs récepteurs ayant requis ces fragments. Dans cc cas (non illustré), on considérera que chacun des ensembles de fragments de fichiers WI(GM 11), W2(G \ {2}) et W3(6\121) et de manière générale, l'ensemble de fragments de fichiers W1(GMi1) destinés au récepteur Ri comprend une pluralité de fragments de fichiers, chacun de ces fragments de fichiers pouvant être regroupés (ou répartis) dans un ou plusieurs blocs b de taille mi lors de l'étape E5. [0125] La figure 4 illustre un premier mode de réalisation selon lequel les fragments de fichiers W12, W21 destinés respectivement aux deux récepteurs faibles RI et R2 sont combinés en tenant compte du récepteur fort Le récepteur fort R'3 dispose d'une capacité de décodage m, supérieure à la capacité de décodage maximale des récepteurs faibles (i.e. m,>Max(ml, m2)=m2, où Max() désigne la fonction qui fournit en sortie la valeur maximale de ses arguments d'entrée). [0126] De manière générale, lors de l'étape de regroupement (ou de répartition) E.5, l'ensemble de fragments de fichiers Wi(G\ sont regroupés (ou répartis) dans un ensemble de bi blocs de fragments de fichiers, chaque bloc b ayant pour représentation binaire W1.b(G\Ii1) tel que l mc). Par exemple, le récepteur Ri sélectionné est tel qu'il requiert des fragments d'un fichier Wi stockés dans les mémoires caches de tous les récepteurs faibles appartenant à l'ensemble G, ces fragments étant désignés par l'ensemble Wi(G). On suppore qu'au moins une partie de ces fragments n'a pas encore été envoyée audit récepteur R. [0133] Par exemple, pour chaque bloc b e [I bd, on désignera par Wi.h(G) tel que. Wi,b(CT) E r, XE [1, JANIX4 0, l'ensemble des fragments de fichiers (non vide) requis par le récepteur fort Ri et contenus dans les mémoires caches des récepteurs du sous-ensemble G. Si plus de mi-mo bits de Wi(G) n'ont pas encore été envoyés au récepteur Ri, le noeud source sélectionne les zb prochains fragments de Wb(G) tels que tbsAktni-mo. 101341 Lors d'une étape de concaténation E8.1, le noeud source T est adapté à concaténer, pour chaque bloc b e 11,...,b0I, la séquence binaire WG.b obtenue à l'issue de l'étape de combinaison E7 et la séquence binaire Wb(G) de taille mi-m0 sélectionnée parmi 17 l'ensemble W,(G) de manière à obtenir la séquence concaténée WG b fumi=[Wc,,b dans laquelle les séquences binaires W,5 et W,.,,(G) sont mises bout à bout. Par la suite, le symbole I désignera l'opération de concaténation de deux séquences binaires. [0135] Lors d'une étape de codage de canal E9, le noeud source T est adapté à appliquer une technique de codage de canal basée de préférence sur un code polaire (i.e.Polar Code en anglais). En effet, une particularité de l'invention réside précisément dans la sélection des codes polaires parmi l'ensemble des codes existants pour coder la séquence de bits combinés Wc,,b à l'issue de l'étape de combinaison E7 et en particulier pour coder la séquence concaténée Wc,,b,rmai à l'issue de l'étape de concaténation E8.1 dans le cas il est prévu de servir un ou plusieurs récepteurs forts. [0136] En effet, les inventrices ont constaté, lors de leurs travaux de recherche, d'une part que les solutions de l'art antérieur appliquent un codage de canal indépendamment de la manière dont les paquets envoyés sur le réseau ont été créés ou obtenus et d'autre part que les codes polaires n'ont pour l'instant pas encore été exploités dans le cadre de la multidiffusion de fragments de fichiers à travers un réseau, notamment un réseau radio-mobile. [0137] Selon une particularité de l'invention, un code polaire est appliqué à une séquence de bits finale contenant des blocs de fragments de fichiers destinés à être transmis à l'ensemble des récepteurs. Cette séquence de bits finale, désignée W, ou Wch,flal en fonction du cas de figure considéré, a été formée en tenant compte de la capacité de décodage mi de chacun des récepteurs R comme décrit ci-avant. Ainsi, le codage polaire est appliqué sur une séquence de bits particulière qui a été obtenue par combinaison des fragments de fichiers à destination des récepteurs faibles et éventuellement des récepteurs forts, cette séquence ayant la particularité de tenir compte des conditions de canal pour chacun des récepteurs de manière à optimiser les débits de réception des fragments de fichier. [0138] Selon le premier mode de réalisation tel que décrit en référence à la figure 3, la séquence finale Wcb,l correspond à la séquence de bits Weo,obtenue par regroupement (ou répartition), remplissage puis combinaison (X-OR) des fragments de fichiers incluant notamment W12, W.21 destinés respectivement aux premier RI et deuxième Rn récepteurs. [0139] Selon l'exemple détaillé de la figure 7, la séquence finale Wc,,,,', correspond à la séquence de bits obtenue par concaténation de la séquence de bits Wc,i, et de la séquence de bits Wii,(0), de sorte que WG.find=[WG,b Wi.b(G)]- [0140] Comme illustré sur la figure 5, le noeud source (ou émetteur) T est configuré pour mettre en oeuvre un dispositif de codage de canal 20 de manière à coder la séquence de bits à émettre telle que décrite ci-dessus. Chaque récepteur Ri est configuré pour mettre en oeuvre un dispositif de décodage de canal 40 de manière à décoder la séquences de 18 bits reçue de l'émetteur T après transmission à travers le canal. Par exemple, le dispositif de codage 20 et le dispositif de décodage 40 sont configurés pour appliquer une technique de codage et décodage basée sur le même code polaire, cc code pouvant être sélectionné parmi une liste de codes préinstallés. [0141] Selon une particularité de l'invention, le dispositif de codage de canal 20 est configure de telle sorte que le premier bit de la séquence finale Welland' est codé par le premier bit le plus fiable dans le code polaire ut tandis que le second bit de la séquence concaténée We b final est codé par le second bit le plus fiable dans le code polaire u2, et ainsi de suite pour les nz bits de la séquence fournis en entrée du codeur, où l'indice j indique le récepteur fort choisi lors de l'étape ES décrite auparavant. [0142] Si aucun récepteur fort n'a été choisi lors de l'étape ES, la séquence concaténée W Gb.fi,,j est de longueur mc bits. Pour déterminer la fiabilité des bits (ou bits variés) du codage de canal, on peut se baser sur des algorithmes standards, qui ordonnent les bits par exemple par ordre croissant de leur paramètre Z. Par exemple, l'ordonnancement des bits d'entrées du code polaire peut être stocké sous la forme d'une base de données 4 dans une mémoire du récepteur. [0143] Ainsi, selon l'exemple de la figure 5, les bits d'information de la séquence finale W sont agencés par ordre croissant de probabilités d'erreur au moyen d'un module d'ordonnancement 20.1 adapté à fournir en entrée du codeur de canal 20.3 une séquence de bits u1, no, th, u4, u, ordonnés par ordre croissant de leur erreur de probabilité. Par exemple, les probabilités d'erreur auxquelles le module d'ordonnancement a accès sont stockées sous la forme d'une base de données 2. [0144] De manière générale, le code utilisé pour le codage de canal a une taille optimale égale à n où n désigne un entier naturel non nul. Le codeur de canal 20.3 dispose au total de n entrées et par conséquent est capable de coder au plus n bits simultanément. [0145] Dans l'exemple de la figure 5, on suppose que le codeur de canal 20.3 est configuré avec un code de taille n=8 mais que seuls m3=5 bits d'informations sont codés, où 5=n x CI, selon le scénario de la figure 2. De manière générale, on rappelle qu'un récepteur RI peut décoder mis bits simultanément de façon fiable, Le. avec probabilité d'erreur très faible. [0146] Lors de l'étape de codage de canal E9, le codeur de canal 20.3 de l'émetteur T applique un code polaire à la séquence de bits ordonnés {u,, u4, u5.} de manière à obtenir une séquence de bits codés par codage polaire Ixl, xn, x3, x4, xs.x,,, x,, x51. Dans cet exemple, les trois derniers bits u6, u,, u8 de la séquence ordonnée fournie en entrée du codeur de canal 20.3 sont fixés à une valeur de référence, connue par tout le monde, en générale fixée à "0". Seuls les cinq premiers bits ut, al, u3, u4, u5 sont des bits d'information tandis que les trois derniers bits u6, th, u8 sont des bits gelés (dits, frozen bits en anglais), par exemple de valeur égale à "0". 19 [0147] Ainsi, pour communiquer avec un récepteur de capacité Ck, les bits sont répartis en deux groupes : i) un groupe de mk b, les indices {d i.1,41---Idiilkyi associés à ces récepteurs des blocs des fragments de fichiers codés dans le champ de données du paquet. L'entête comprend en outre les indices désignant les ré- cepteurs forts R, tel que L+lisK, ainsi que les indices {dot, di,,,,7b} associés à leurs blocs des fragments de fichiers codés dans le champ de données du paquet. [0151] Selon l'exemple de la figure?, l'émetteur T envoie, lors de l'étape d'émission E13, les fragments du fichier Wi restants à destination des récepteurs forts Ri où L-Fl REVENDICATIONSProcédé de multidiffusion de fragments manquants (WkP ; W12, WY, W3 2) de fichiers numériques (Wk ; W1, W2, W3) à un ensemble de récepteurs comprenant une pluralité de récepteurs faibles (121; R, .....R, ; R1, R2, R3) comprenant chacun une mémoire cache (M; M1, ,M,, ; M,, M2, M3) dans laquelle sont stockés un ou plusieurs fragments de fichiers numériques pré-stockés (WI', W21, W3' W13, W23, W33 ; W12, W22, W32, W13, W213, W32), les fragments manquants (WkP ; W12, W2' , W32) de fichiers destinés à être diffusés n'étant pas préalablement stockés dans la mémoire cache des récepteurs respectifs (121 ; R, R,, ; R,, R2) requérant ces fichiers, ledit procédé étant caractérisé en ce qu'il comprenant les étapes suivantes : a. sélection (El) d'un sous-ensemble (G) de récepteurs faibles ; b. pour chaque récepteur (121 ; R1, 122) dudit sous-ensemble (G), identification (E3) d'au moins un fragment (WP ; W12 ; W21) d'un fichier (W1 ; W1 ; W2) requis par ledit chaque récepteur et tel que ledit au moins un fragment (W12 ; W2') est présent dans la mémoire cache (M, ; M2) de tous les autres récepteurs faibles (R1, R2) appartenant audit sous-ensemble (G); c. pour chaque récepteur (121 ; R1, 122) dudit sous-ensemble (G) et pour chacun dudit au moins un fragment de fichier (WP ; W,2 ; W2') identifié lors de l'étape précédente, regroupement/répartition (E5) dudit au moins un fragment du fichier en une pluralité de blocs b de taille mi égale à la capacité de décodage dudit récepteur (121 ; 121, R,) ; d. combinaison (E7) des blocs issus de l'étape c) de manière à fournir une séquence de bits combinés WG,1); e. codage (E9) d'une séquence de bits à transmettre comprenant la séquence de bits combinés WG,b, par application d'une technique de codage, de manière à fournir une séquence de bits codés We; et envoi (El 1) de ladite séquence de bits codés W, à un ensemble de récepteurs comprenant le sous-ensemble (G) de récepteurs faibles. [Revendication 2] Procédé selon la revendication I. caractérisé en ce que chacun desdits 25 [Revendication 3] [Revendication 4] [Revendication 5] [Revendication 6] [Revendication 7] blocs obtenus lors de l'étape c) est rempli par des bits "0" lors d'une étape de remplissage (E4) de sorte que la taille du bloc soit égale à la capacité de décodage maximale mG des récepteurs faibles du sous-ensemble G. Procédé selon l'une quelconque des revendications 1 à 2, caractérisé en ce que l'étape de combinaison (E7) est mise en oeuvre par application de l'opérateur logique OU exclusif (X-OR). Procédé selon l'une quelconque des revendications 1 à 3, caractérisé en ce que la technique de codage utilisée lors de l'étape de codage (E9) est une technique de codage polaire configurée pour recevoir en entrée les bits de ladite séquence de bits à transmettre. Procédé selon la revendication 4, caractérisé en ce que l'étape de codage (E9) comprend une sous-étape d'ordonnancement (E9.1), lors de laquelle les bits de la séquence de bits à transmettre sont agencés par ordre croissant de leur probabilité d'erreur avant l'application de la technique de codage. Procédé selon l'une quelconque des revendications 1 à 5, caractérisé en ce qu'il comprend en outre les étapes suivantes : - sélection (E8) d'au moins un récepteur fort (Ri) parmi ledit ensemble de récepteurs (R, RO, ledit au moins un récepteur fort ne disposant pas de mémoire cache et requérant un fragment de fichier WiJ,(G) contenu dans les mémoires cache de récepteurs faibles (R1 .....R1.) du sous-ensemble G; - concaténation (E8.1) de la séquence de bits combinés W» avec le fragment de fichier Wil(G)de manière à former la séquence de données à transmettre destinée à être codée lors de l'étape de codage (E9). Procédé d'obtention d'au moins un fragment de fichier à partir d'une séquence de bits reçue (YI) correspondant à la séquence de bits codés (Wc) émise par un émetteur conformément au procédé de multidiffusion selon l'une quelconque des revendications 1 à 6 et transmise à travers un canal de transmission, ledit procédé d'obtention étant caractérisé en ce qu'il comprend, pour chaque récepteur faible Rk appartenant au sous-ensemble G, les étapes suivantes: réception (E20) de ladite séquence de bits reçue (Yk) ; combinaison (E24) des fragments de fichiers destinés aux autres récepteurs faibles appartenant au sous-ensemble G, ces fragments étant stockés dans la mémoire cache Mk du récepteur faible 12,,, de manière à obtenir une séquence combinée Wx,b.xoR(G); 26 sélection (E26) des mk premiers bits de ladite séquence combinée Wk .b.X0R(G), de manière à former une séquence combinée d'information W 1..b.X012,daLa, les bits restant de la séquence combinée formant une séquence de bits gelés WI.,b,X012,frozen décodage de canal (E28) des mk premiers bits de la séquence de bits reçue en utilisant la séquence de bits gelés Wk,5,X012,1-nven de manière à former une séquence de bits décodés Xk, le décodage étant basé sur un code utilisé par l'émetteur T lors de l'étape de codage (E9) ; combinaison (E30) de la séquence combinée d'information WIc.b.X012.data et de la séquence de bits décodée XJ, de manière à obtenir les fragments de fichiers Wk,b(GM Id) requis par le récepteur Rk. [Revendication 8] Procédé de communication mis en oeuvre dans un réseau comprenant une pluralité de noeuds de communication, ledit procédé étant caractérisé en ce qu'il comprend les étapes du procédé de multidiffusion selon l'une quelconque des revendications 1 à 6 et/ou les étapes du procédé d'obtention selon la revendication 7. [Revendication 9] Dispositif de traitement de l'information comprenant des moyens pour mettre en oeuvre les étapes du procédé de multidiffusion selon l'une quelconque des revendications 1 à 6 et/ou les étapes du procédé d'obtention selon la revendication 7. [Revendication 10] Système de multidiffusion caractérisé en ce qu'il comprend au moins un serveur configuré pour mettre en oeuvre les étapes du procédé de mufti-diffusion selon l'une quelconque des revendications 1 à 6 et une pluralité de dispositifs clients configurés pour mettre en oeuvre les étapes du procédé d'obtention selon la revendication 7. [Revendication 11] Programme d'ordinateur comprenant des instructions adaptées à mettre en oeuvre chacune des étapes du procédé de multidiffusion selon l'une quelconque des revendications 1 à 6 et/ou les étapes du procédé d'obtention selon la revendication 7, lorsque ledit programme est exécuté sur un ordinateur. [Revendication 12] Moyen de stockage d'informations, amovible ou non, partiellement ou totalement lisible par un ordinateur ou un microprocesseur comportant des instructions de code d'un programme d'ordinateur pour l'exécution de chacune des étapes du procédé de multidiffusion selon l'une quelconque des revendications 1 à 6 et/ou les étapes du procédé d'obtention selon la revendication 7.