Brevet FR2932636A1 — publié le 20091218

La présente invention concerne le domaine de la mesure de l'efficacité de transmission lors d'une diffusion de services multimédia à destination de terminaux de restitution de ces services. Plus particulièrement, on s'intéresse à la diffusion de services en mode salve (burst en anglais) à destination de terminaux mobiles comme c'est le cas, par exemple, dans la norme de diffusion DVB-H (Digital Video Broadcasting û Handheld en anglais) définie dans le document "ETSI EN 302 304, DVB-H Transmission System for Handheld Terminals". Un ensemble de services numériques à destination de terminaux mobiles est généralement diffusé sous la forme d'un flux de données numériques. Chaque service est divisé en paquets de données appelées sections. Ces sections constituant les différents services sont alors multiplexées, c'est-à-dire mélangées, au sein du flux. Dans le cas de terminaux mobiles, il est courant de rassembler des sections d'un même service au sein de salves. Dans ce cas, la diffusion comporte l'émission successive de salves constituées de sections d'un même service. De cette manière, le terminal de réception peut stopper sa partie radio entre les salves du service qu'il écoute. Il est nécessaire d'indiquer dans une salve le moment d'émission de la salve suivante du même service pour que le terminal puisse rallumer sa partie radio pour la réception de la salve suivante. Lors de la constitution du flux, il est donc nécessaire de construire celui-ci précisément en incluant dans une salve d'un service, une information sur le moment d'émission de la salve suivante du même service. Cette politique de construction du flux est régulière et périodique dans le cas d'un flux constitué de services codés selon un procédé de codage à débit constant (CBR pour Constant Bit Rate en anglais). On qualifie cette façon de construire les salves dans le flux de statique. L'adoption d'un schéma de construction du flux basé sur des salves régulières et périodiques dans le cas de services encodés selon un procédé de codage à débit variable (VBR pour Variable Bit Rate en anglais) conduit à une perte de bande passante disponible, voire même à des pertes de données. On peut alors adopter une construction dite dynamique de la construction des salves. Dans cette construction, la longueur des salves est variable pour pouvoir s'adapter à la quantité de données à transmettre. Mais même dans le cas d'une construction dynamique des salves, au moins du fait de l'adaptation nécessaire en fin de période de salves, il arrive que l'introduction de paquets de bourrage soit nécessaire. On voit que quel que soit le procédé adopté pour la construction des salves de données dans le flux, leur constitution en vue de limiter la place perdue nécessitant l'introduction de données de bourrage est une opération délicate. Il est avantageux de disposer d'un outil de mesure permettant de donner une indication fiable et précise de l'efficacité de la construction du flux selon les politiques adoptées pour la construction des salves. Avantageusement, cet outil donne des indications au niveau de l'efficacité du transport de chaque service. L'invention vise à résoudre les problèmes précédents par un procédé de mesure de l'efficacité de transmission d'un flux transportant des services constitués en salve. Cette mesure est effectuée pour chaque service transmis. Elle se base sur un comptage au niveau de chaque salve des sections de données et de bourrage contenues dans la salve. De cette manière, on obtient des indications précises au niveau de la salve de l'efficacité de la transmission des services. On peut alors optimiser la génération du flux pour éventuellement améliorer cette efficacité. L'invention concerne un procédé de mesure de l'efficacité de transmission d'un flux de données numériques, ledit flux comprenant une pluralité de services, chaque service étant transmis au moyen de sections de données, au moins certains de ces services étant transmis dans un mode de diffusion en salve, qui comprend une étape de détection de la première section d'une salve ; une étape d'initialisation de deux compteurs lorsque cette première section est détectée ; une étape de comptage de sections de données au sein de la salve par le premier compteur ; une étape de comptage des sections de bourrage ; une étape d'arrêt des compteurs en fonction de la détection de la dernière section de la salve et une étape d'établissement d'un critère d'efficacité pour la salve correspondant au ratio des deux compteurs. Selon un mode particulier de réalisation de l'invention, l'arrêt des compteurs correspond à la dernière section de la salve. Selon un mode particulier de réalisation de l'invention, l'arrêt des compteurs se fait lors de la première section de données suivant la dernière section de la salve. Selon un mode particulier de réalisation de l'invention, le premier compteur compte tous les paquets de données autres que les sections de bourrage. Selon un mode particulier de réalisation de l'invention, le premier compteur compte uniquement les sections de données d'un service donné. Selon un mode particulier de réalisation de l'invention, le flux contenant des chevauchements de salves correspondant à des services différents, les compteurs sont également réinitialisés en début et en fin de chevauchement. L'invention concerne également un dispositif de mesure de l'efficacité de transmission d'un flux de données numériques, ledit flux comprenant une pluralité de services, chaque service étant transmis au moyen de sections de données, au moins certains de ces services étant transmis dans un mode de diffusion en salves, qui comprend des moyens de détection de la première section d'une salve ; des moyens d'initialisation de deux compteurs lorsque cette première section est détectée ; des moyens de comptage de sections de données au sein de la salve par le premier compteur ; des moyens de comptage des sections de bourrage ; des moyens d'arrêt des compteurs en fonction de la détection de la dernière section de la salve et des moyens d'établissement d'un critère d'efficacité pour la salve correspondant au ratio des deux compteurs. Les caractéristiques de l'invention mentionnées ci-dessus, ainsi que d'autres, apparaîtront plus clairement à la lecture de la description suivante d'un exemple de réalisation, ladite description étant faite en relation avec les dessins joints, parmi lesquels : La Fig. 1 illustre un flux de diffusion de services par salves. La Fig. 2 illustre la diffusion par salve. La Fig. 3 illustre une salve 3.1 dans le système DVB-H. La Fig. 4 illustre la construction d'un flux conformé en salves. La Fig. 5 illustre un exemple de flux où les salves se chevauchent. La Fig. 6 illustre l'organigramme d'un exemple de réalisation de l'invention. La norme DVB-H est destinée à une diffusion pour des terminaux mobiles. La communication à destination de terminaux mobiles est caractérisée par un canal radio bruité et variable. D'autre part, les terminaux mobiles fonctionnent généralement sur batterie et leur autonomie est un critère important. Pour ces raisons, DVB-H a standardisé un mode de diffusion par salve et une forte protection contre les erreurs de transmission sous la forme d'un code correcteur d'erreurs FEC (Forward Error Correction en anglais). La Fig. 1 illustre un flux de diffusion de services par salves. La constitution des salves respecte une période T au cours de laquelle est émise une salve de données pour chaque service, cette période est appelée période de salve (burst period en anglais). Le flux ayant un débit constant D, on calcule la quantité de données à émettre par service en fonction du débit constant de chaque service. On alloue alors à chaque service un intervalle de temps (time slot en anglais) au cours de la période. Cet intervalle de temps correspond au temps nécessaire pour émettre les données du service à émettre au cours de la période T au débit du flux D. La période T est donc une succession de salves de données correspondant aux services, ici S1, S2, S3, S4 et S5. La durée de chaque salve dépend du débit du service émis. Ces périodes se répètent à l'identique, les salves contenant la même quantité de données émises sur un même intervalle de temps. Le flux est alors généré en groupant les sections de données de chaque service au sein d'une succession de sections appelée salve et contenant toutes les sections du service destinées à être émises pendant la même période de salve. Le flux est organisé sous la forme d'une succession de salves, une salve par service diffusé, pour chaque période de salve. Dans le cas des flux codés selon un procédé de codage à débit constant, les salves ont la même durée pour un même service d'une période de salve à une autre. Dans le cas où le service n'est pas encodé à débit constant, la quantité de données à transmettre pour un service donné peut varier d'une salve à une autre. Face à ce problème, deux méthodes sont principalement utilisées : une construction de salves statiques et une construction de salves dynamiques. Le mode salve consiste à grouper les sections contenant les données d'un service par salve dans le flux de données. De cette façon, un terminal désirant recevoir un service peut alors débrancher son récepteur radio entre deux salves pour des raisons d'économie d'énergie. La Fig. 2 illustre la diffusion par salve. Un service est constitué de sections de données MPE (Multi Protocol Encapsulation en anglais) rassemblées par salve. Une première salve est référencée 2.1. Chaque section de la première salve 2.1 contient dans son en-tête une information sur le temps séparant à l'émission cette section du début de l'émission de la salve suivante référencée 2.2. Cette information est appelée le delta-t, référencé 2.3, entre la section et la première salve suivante. Un flux de données est dit formé en salves, lorsque les données sont regroupées au sein du flux, par exemple les services, en entités en vue de leur émission en salves. Pour pouvoir calculer précisément le delta-t pour chaque section de la salve, il faut et il suffit de connaître le delta-t de la première section. Le delta-t des sections suivantes de la salve s'obtient alors en déduisant de ce premier delta-t la durée d'émission d'une section pour chaque section précédente dans la salve. Par commodité, on parlera du delta-t de la salve pour parler du delta-t de la première section de la salve. Le delta-t de la salve est donc défini comme l'intervalle de temps entre le moment d'émission de la première section de la salve et le moment d'émission de la première section de la salve suivante. La construction de ces flux de diffusion de données se fait typiquement au sein d'un équipement appelé encapsulateur IP ou IPE (IP Encapsulator en anglais). Cet IPE reçoit les différents services sous la forme de flux de données indépendants. Ces flux peuvent être reçus, par exemple, sous la forme de paquets IP (Internet Protocol en anglais). Il construit alors les sections MPE contenant les données des différents services. Ces sections MPE sont alors regroupées par service pour constituer les salves tel que décrit Fig. 2. En plus des sections contenant les données des services diffusés en mode salve, le flux contient des sections supplémentaires qui sont insérées dans les salves et qui correspondent à des données non transmises en mode salve. On peut citer comme exemple de telles données, d'une part d'éventuels services non diffusés en mode salve et les données de signalisation transmises sous forme de tables appelée tables SI/PSI (Service Information/Program Specific Information en anglais). La Fig. 3 illustre une fenêtre de temps dans le système DVB-H au cours de laquelle une salve 3.1 est transmise. Une salve est définie comme l'ensemble des sections, données, signalisation et bourrage, transmises entre la première et la dernière section de données du service ainsi transmis en mode salves. Elle comprend des sections 3.2 illustrées avec un fond blanc correspondant aux données du service diffusé par la salve en question. Elle contient également des sections 3.3 illustrées hachurées correspondant à des données non transmises en mode salve et insérées entre les sections 3.1 de la salve. La salve est également éventuellement complétée par des données de bourrage, les sections 3.4 illustrées par un quadrillé oblique. Généralement les flux de services conformés en salves sont constitués de salves successives. Cette construction est illustrée par la Fig. 4. On y voit deux services 4.1 et 4.3 représentés l'un au-dessous de l'autre pour des raisons de clarté. Une première salve 4.2 du premier service 4.1 commence au temps t0 et finit au temps tl. La salve suivante dans le flux correspond au service 4.3 et est à la suite de la salve 4.2 du service 4.1. Elle commence donc en un temps t2 qui correspond à tl. Certains IPE génèrent des flux où les salves de deux services différents peuvent se chevaucher. Un exemple est illustré Fig. 5. Sur cet exemple une première salve correspondant à un premier service démarre au temps t0 et finit au temps t2. Une seconde salve correspondant à un second service démarre au temps tl compris entre t0 et t2 et fini au temps t3 situé après t2. Les sections appartenant à la première salve sont illustrées sous forme de hachures et celles appartenant à la seconde salve sous forme de quadrillage oblique. On voit qu'entre le début de la première salve en t0 et le début de la seconde salve en tl, toutes les sections 5.1 appartiennent à la première salve. Entre le temps tl marquant le début de la seconde salve et le temps t2 marquant la fin de la première salve, les deux salves se chevauchent entraînant un enchevêtrement des sections de la première salve et celle 5.2 de la seconde. Entre le temps t2 marquant la fin de la première salve et le temps t3 marquant la fin de la seconde salve, le chevauchement cesse et seules des sections 5.3 de la seconde salve sont présentes. Il est important de construire soigneusement ces flux et d'utiliser au mieux la bande passante disponible. Il est donc avantageux d'identifier la place perdue, c'est-à-dire occupée par des sections de bourrage. En effet, il est possible alors de chercher si l'on peut insérer un service supplémentaire dans le flux dans ces espaces perdus. D'autre part, si l'on identifie un service pour lequel les salves générées possèdent de tels espaces perdus, on peut envisager de modifier l'encodage du service pour gagner en qualité. Généralement, on augmente la qualité en diminuant le taux de compression et donc en transmettant une plus importante quantité de données. On voit donc qu'il est avantageux d'analyser le flux service par service pour obtenir des informations sur l'efficacité de la transmission de chaque service. L'invention propose de définir un critère d'efficacité par service pour la transmission du flux. Ce critère est mesuré en comptant les sections contenues dans les salves d'un service. Pour ce faire, deux compteurs sont utilisés. Un premier compteur permet de compter les sections correspondant à des données utiles contenues dans la salve. Tandis que le second compteur sert à compter les sections de bourrage. Le critère d'efficacité est alors obtenu en faisant le ratio entre ces deux données. La mesure est faite pour chaque salve, avantageusement le ratio obtenu est moyenné pour obtenir une mesure d'efficacité de transmission pour le service. Alternativement les données mesurées peuvent être cumulées entre les salves. La mesure est effectuée selon l'organigramme de la Fig. 6. Lors d'une première étape 6.1, les sections reçues sont analysées pour détecter le début d'une salve pour le service mesuré. Lorsqu'une telle section est détectée, les compteurs sont initialisés lors d'une étape 6.2, cette étape pouvant être faite avant l'étape 6.1. Les compteurs sont alors incrémentés en fonction du type des sections reçues lors de l'étape 6.3. Le type est analysé par lecture du PID (Program ID en anglais) des sections, le PID OxlFFF étant réservé pour le bourrage. Pour chaque section dont le PID est différent de OxlFFF le compteur de données est incrémenté et pour chaque section dont le PID est égal à OxlFFF le compteur de bourrage est incrémenté. Lorsque la section finale de la salve est détectée lors de l'étape 6.4, on arrête les compteurs lors de l'étape 6.5. Les informations de début et de fin de salve sont présentes dans les entêtes des sections. De cette manière, on obtient un critère de l'efficacité de la transmission pour une salve donnée. On peut accumuler ces données pour mesurer l'efficacité pour la transmission du service. Ces données peuvent être utilisées pour détecter les services dont la transmission provoque l'insertion d'une quantité significative de sections de bourrage. Cette information peut être utilisée pour modifier le procédé de construction du flux pour ce service, pour permettre de transmettre un ou des services supplémentaires ou améliorer la qualité du service en diminuant le taux de compression des données par exemple. Cela peut également permettre de réduire la durée des salves et donc de réduire le temps de fonctionnement du récepteur radio et donc la consommation électrique du terminal. Ce premier mode de réalisation ne permet pas de distinguer les données réellement appartenant au service des sections de données autres insérées dans le flux et transmises en mode continu, c'est-à-dire pas en mode salve. De même en cas de flux comprenant des chevauchements, on ne distingue pas les données des deux services se chevauchant. Alternativement, le premier compteur ne compte que les données appartenant au service en filtrant sur le PID attribué à ce service. On obtient alors un ratio entre les données du service et les données du bourrage en ignorant les données autres pouvant être insérées dans la salve. Ce mode peut être particulièrement intéressant dans le cas de flux où les salves peuvent se chevaucher. Les sections de bourrage incluses dans les chevauchements sont alors comptabilisées dans les ratios de bourrages des deux services se chevauchant. Alternativement, les compteurs peuvent être réinitialisés en début de chevauchement pour permettre la mise en évidence spécifique du bourrage inclus dans ces chevauchements. Alternativement, le premier compteur compte l'intégralité des sections de la 30 salve tandis que le second mesure toujours les sections de bourrage. Dans le cas d'un flux construit sans chevauchement, on peut imaginer que des sections de bourrage sont introduites entre les salves. Un autre mode de réalisation consiste à arrêter les compteurs lors de la première section de la salve suivante au lieu de la fin de la salve courante. Cette première section est alors détectée comme étant la première section de PID différent de OxlFFF suivant la dernière section de la salve courante. De cette façon, on prend en compte d'éventuelles sections de bourrage insérées entre les salves. Avantageusement, le fait que le flux est avec ou sans chevauchement est détecté 5 lorsque l'on trouve deux débuts de salve ou deux fins de salves successives dans le flux. REVENDICATIONS1/ Procédé de mesure de l'efficacité de transmission d'un flux de données numériques, ledit flux comprenant une pluralité de services, chaque service étant transmis au moyen de sections de données, au moins certains de ces services étant transmis dans un mode de diffusion en salve, caractérisé en ce qu'il comprend les étapes suivantes : - une étape de détection de la première section d'une salve ; - une étape d'initialisation de deux compteurs lorsque cette première section est détectée ; - une étape de comptage de sections de données au sein de la salve par le premier compteur ; - une étape de comptage des sections de bourrage ; - une étape d'arrêt des compteurs en fonction de la détection de la dernière section de la salve ; - une étape d'établissement d'un critère d'efficacité pour la salve correspondant au ratio des deux compteurs. 2/ Procédé selon la revendication 1, caractérisé en ce que l'arrêt des compteurs correspond à la dernière section de la salve. 3/ Procédé selon la revendication 1, caractérisé en ce que l'arrêt des compteurs se fait lors de la première section de données suivant la dernière section de la salve. 4/ Procédé selon l'une des revendications 1 à 3, caractérisé en ce que le premier compteur compte tous les paquets de données autres que les sections de bourrage. 5/ Procédé selon l'une des revendications 1 à 3, caractérisé en ce que le premier 30 compteur compte uniquement la section de données d'un service donné. 6/ Procédé selon l'une des revendications 1 à 5, caractérisé en ce que le flux contenant des chevauchements de salves correspondant à des services différents, les compteurs sont également réinitialisés en début et en fin de chevauchement.257/ Dispositif de mesure de l'efficacité de transmission d'un flux de données numériques, ledit flux comprenant une pluralité de services, chaque service étant transmis au moyen de sections de données, au moins certains de ces services étant transmis dans un mode de diffusion en salves, caractérisé en ce qu'il comprend : - des moyens de détection de la première section d'une salve ; - des moyens d'initialisation de deux compteurs lorsque cette première section est détectée ; - des moyens de comptage de sections de données au sein de la salve par le 10 premier compteur ; - des moyens de comptage des sections de bourrage ; - des moyens d'arrêt des compteurs en fonction de la détection de la dernière section de la salve ; - des moyens d'établissement d'un critère d'efficacité pour la salve 15 correspondant au ratio des deux compteurs.