Note: Descriptions are shown in the official language in which they were submitted.
CA 02708077 2010-06-03
WO 2009/074489 1 PCT/EP2008/066618
PROCEDE ET MODULE DE CORRECTION D! ERREURS
DE TRANSMISSION DANS UN FLUX DE DONNEES
L'invention concerne un procédé et un module de
correction d'erreurs de transmission dans un flux de données
transmis à travers un canal de communication. L'invention
s'applique à tout système de communications numériques.
L'invention s'applique aux communications par satellite et
aux liaisons ATM sur ADSL.
Les techniques les plus employées aujourd'hui pour
détecter et/ou corriger des erreurs de transmission dans les
systèmes de communications numériques sont les codes
correcteurs d'erreurs, la reprise d'erreurs sur
retransmission et les contrôles de redondance cyclique,
connus respectivement par les acronymes FEC (pour Forward
Error Correction), ARQ (pour Automatic Repeat Request) et
CRC (pour Cyclic Redundancy Check).
La technique FEC consiste pour l'émetteur à ajouter de
la redondance aux données utiles afin de permettre au
récepteur destinataire de détecter et de corriger une partie
des inévitables erreurs de transmission. Cette technique
constitue le seul moyen pour corriger des erreurs dans les
systèmes sans voie de retour. Dans les systèmes avec voie de
retour, cette technique diminue en outre le nombre de
retransmissions nécessaires pour assurer une qualité de
service donnée.
On a représenté sur la figure 1 le schéma d'un système
de communication mettant en uvre un procédé de correction
d'erreurs de transmission selon l'état de la technique. Le
système de communication comporte une chaîne de transmission
comprenant une source émettrice S, un canal de communication
C et un récepteur R. La source émettrice S est munie d'un
codeur FEC 10 pour coder le flux de données entrant FD suivi
CA 02708077 2010-06-03
WO 2009/074489 2 PCT/EP2008/066618
d'un modulateur 20. Le flux de sortie du modulateur 20 est
transmis par le canal de communication C. Le récepteur R
reçoit le flux entrant FE transmis par le canal de
communication C. Ce récepteur R comporte un démodulateur 40
suivi d'un décodeur FEC 60.
Les repères 50 et 70
correspondent à des points où le taux d'erreur bit BER
pourrait être mesuré.
La technique CRC permet de détecter certaines erreurs
par ajout de redondance, mais ne permet pas de les corriger.
La redondance est obtenue en calculant une fonction de
hachage sur un sous-ensemble logique des données à émettre,
par exemple un paquet, et envoyée avec celui-ci. En
réception cette valeur est comparée au calcul de la même
fonction de hachage sur les données reçues, afin de vérifier
l'intégrité du message. Les CRC les plus utilisés sont
construits de manière à détecter l'immense majorité des
erreurs non corrigées par le FEC, ou dues à un re-assemblage
défectueux de données fragmentées en émission.
Les schémas FEC de l'état de la technique tels que les
codes LDPC (Low Density Parity Check), les codes Reed-
Solomon et les Turbo codes sont utilisés dans les standards
européens de satellites les plus récents (par exemple DVB-S2
et DVB-SH) dans le but de détecter et de corriger des
erreurs sur le canal de transmission.
Les codes CRC sont classiquement utilisés pour la
vérification d'intégrité des données dans les couches
intermédiaires des piles protocolaires, permettant de
détecter des erreurs puis, éventuellement, d'écarter des
paquets re-assemblés défectueux.
Les techniques qui viennent d'être décrites sont basées
sur le rajout de données de contrôle ou de redondance dans
le flux utile. Malgré le gain en termes de contrôle
d'erreurs que représentent ces techniques, le rajout de
données de contrôle ou de redondance pénalisent les
performances de la transmission en termes de quantité
CA 02708077 2010-06-03
WO 2009/074489 3 PCT/EP2008/066618
d'information utile effectivement transmise, et par
conséquent en termes de coût de la transmission.
La présente invention a pour but de remédier à cet
inconvénient en proposant une solution qui améliore la
fiabilité de la transmission d'un flux de données sans
ajouter aucune donnée (i.e. ni de redondance, ni information
de contrôle) au flux utile transmis.
Le procédé de correction d'erreurs selon l'invention
permet de diminuer le taux d'erreur bit (BER : Bit Error
Rate) et le taux d'erreur paquet (PER : Packet Error Rate)
d'un système de communications numériques sans réduire les
ressources de ce système (bande passante, débit). Le procédé
peut être mis en place quel que soit le système de
communication, seul ou en combinaison avec des procédés de
correction d'erreurs connus.
La présente invention a pour objet un procédé de
correction d'erreurs de transmission dans un flux de données
appartenant à une pile protocolaire donnée en mettant en
uvre des techniques multicouche.
Dans les piles de protocoles, de nombreuses
informations de contrôle sont répliquées dans tous les
paquets appartenant aux mêmes flux logiques.
Selon l'invention, le procédé consiste à exploiter la
redondance naturelle de ces flux, dont la principale
manifestation est la répétition prévisible et récurrente de
séquences dont le contenu est fixe, ces séquences dites
connues SP étant construites à partir d'informations de
contrôle caractéristiques des différentes couches de la pile
protocolaire, cette redondance étant utilisée dans le but de
corriger des erreurs de transmission ; le procédé consistant
à cette fin à rechercher sur un flux de données reçu les
positions originales des séquences connues SP et cela par
détection de séquences similaires à cette séquence connue
SP, les séquences non similaires, c'est-à-dire différentes,
n'étant pas retenues ; le procédé consistant, en présence de
CA 02708077 2010-06-03
WO 2009/074489 4 PCT/EP2008/066618
séquences similaires, à détecter une ou plusieurs erreurs de
transmission produites sur une séquence connue SP, et à
modifier les séquences détectées similaires à l'aide de la
séquence connue SP.
Selon une autre caractéristique de l'invention, il est
possible d'utiliser ce mécanisme de correction d'erreurs à
tout niveau de la chaîne de réception.
Ainsi dans la suite, il faut entendre par séquence,
tout aussi bien une séquence discrète (c'est-à-dire une
suite de symboles binaires ou de symboles résultant
d'informations quantifiées), qu'une portion de signal
correspondant à une séquence discrète, selon que le flux
entrant est traité après démodulation ou avant.
En outre, on entend par symboles binaires un ou
plusieurs bits.
La présente invention a plus particulièrement pour
objet un procédé de correction d'erreurs de transmission en
réception dans un flux de données par un système de
communications utilisant une pile de protocoles quelconque,
ledit procédé étant principalement caractérisé en ce qu'il
comprend les étapes suivantes :
- Pour un flux de données entrant comportant une
séquence connue SP,
- - la recherche de séquences similaires à la séquence
connue SP, les séquences non similaires n'étant pas
retenues,
- - la détection de séquences connues erronées dans le
cas de présence de séquences similaires, et la
modification des séquences erronées détectées.
Selon le procédé de l'invention, les données du flux
peuvent être sous la forme de symboles binaires ou sous la
forme de données réelles ou quantifiées.
Dans le cas où les données sont sous la forme de
symboles binaires, la modification des séquences erronées
CA 02708077 2010-06-03
WO 2009/074489 5 PCT/EP2008/066618
consiste à remplacer la séquence binaire erronée par la
séquence binaire connue SP.
Dans le cas où les données sont sous la forme de
données réelles ou quantifiées, la modification des
séquences erronées consiste à remplacer la séquence de
signaux réels ou quantifiés par une séquence de signaux
représentative de la séquence connue SP.
La séquence connue SP n'est pas nécessairement composée
de symboles contigus dans le flux entrant.
La séquence connue SP est une séquence construite à
partir de champs d'information statiques c'est-à-dire des
champs protocolaires dont le contenu est constant pour tous
les paquets de données du flux entrant.
Un des champs pouvant faire partie de la séquence
connue SP est par exemple une adresse de destination ou une
adresse source, placée dans les entêtes des paquets du flux
de données.
Un des champs pouvant faire partie de la séquence
connue SP est par exemple une information de codage du type
d'entêtes suivantes.
La recherche d'une séquence connue SP est réalisée en
continu sur le flux de données entrant.
La recherche d'une séquence connue SP dans le flux
entrant comprend l'ouverture d'une fenêtre d'analyse W de
longueur égale à la longueur de la séquence connue SP, le
calcul d'un seuil de détection ri, le calcul d'une mesure de
similitude entre une séquence analysée et la séquence connue
SP, une détection d'une séquence similaire ayant lieu
lorsque la similitude mesurée est supérieure ou égale au
seuil ri.
Dans le cas de signaux binaires, cette mesure de
similitude correspond par exemple à un calcul de distance de
type distance de Hamming. Dans le cas des signaux réels ou
CA 02708077 2010-06-03
WO 2009/074489 6 PCT/EP2008/066618
quantifiés, cette mesure correspond par exemple à un calcul
de type corrélation.
Le seuil ri est choisi de manière à obtenir une
probabilité de récupération des séquences connues PSR
maximum, ce seuil ri correspondant alors à une estimation du
seuil optimum nopt.
La recherche d'une séquence connue est réalisée en
continu en faisant glisser la fenêtre d'analyse d'une
position à chaque déplacement.
Le déplacement d'une position correspond par exemple à
un déplacement octet par octet, ou bit par bit dans le flux
entrant.
L'invention concerne également un module de correction
d'erreurs de transmission dans un flux de données transmis
par un système de communications utilisant une pile de
protocoles, principalement caractérisé en ce qu'il comprend:
- une entrée pour recevoir un flux de données
comportant une séquence connue SP,
- des moyens pour rechercher des séquences similaires
à la séquence connue SP, les séquences non
similaires n'étant pas retenues,
- des moyens de détection de séquences connues
erronées dans le cas de présence de séquences
similaires et de modification des séquences erronées
détectées.
Les moyens pour rechercher des séquences correspondant
à la séquence connue et détecter des séquences similaires
comportent :
- une fenêtre W de longueur égale à la longueur de la
séquence connue SP, pour l'analyse dans le flux des
séquences circulant dans la fenêtre,
- des moyens de calcul d'un seuil de détection ri,
CA 02708077 2010-06-03
WO 2009/074489 7 PCT/EP2008/066618
- des moyens de calcul d'une mesure de similitude entre
une séquence analysée et la séquence connue SP et des moyens
de détection d'une séquence similaire, la détection ayant
lieu lorsque la similitude mesurée est supérieure ou égale
au seuil ri.
Les moyens de détection de séquences connues erronées
comportent des moyens pour modifier la séquence similaire
détectée lorsque la similitude mesurée est supérieure ou
égale au seuil de détection.
Dans le cas où les données sont sous la forme de
symboles binaires, la modification des séquences erronées
consiste à remplacer la séquence binaire erronée par la
séquence binaire connue SP.
Dans le cas où les données sont sous la forme de
données réelles ou quantifiées, la modification des
séquences erronées consiste à remplacer la séquence de
signaux réels ou quantifiés par une séquence de signaux
représentative de la séquence connue SP.
La fenêtre d'analyse est une fenêtre glissante se
déplaçant d'une position i à une position i+1 après chaque
analyse d'une séquence de longueur prédéterminée F, formée
des symboles reçus indexés de i à i+F-1.
L'invention concerne également un système de
communication de flux de données comprenant une chaîne de
réception principalement caractérisé en ce que ladite chaîne
de réception comprend un module de correction d'erreurs, tel
que décrit précédemment.
Dans de tels systèmes de communications, la chaîne de
réception comporte un démodulateur et un décodeur FEC. Le
module de correction d'erreurs peut tout aussi bien être
placé avant, à l'intérieur ou après le démodulateur.
L'invention s'applique par exemple aux systèmes de
communication par satellite.
CA 02708077 2012-01-04
8
L'invention s'applique par exemple aux liaisons
utilisant ATM sur ADSL.
Un aspect de l'invention concerne un procédé de
correction d'erreurs de transmission en réception dans un
flux de données transmis par un système de communication
utilisant une pile de protocoles multicouches, ledit
procédé comprenant les étapes suivantes:
la réception d'un flux de données entrant comportant
les données des paquets générées par les protocoles de la
pile, ces données comprenant des champs protocolaires dont
le contenu est constant pour tous les paquets de données,
la construction d'une séquence connue sans ajout
d'information au flux de données transmis, la séquence
connue étant constituée de symboles caractéristiques des
différentes couches de la pile de protocoles et appartenant
aux champs protocolaires de contenu constant,
la recherche au niveau du récepteur de séquences
similaires à la séquence connue, les séquences non
similaires n'étant pas retenues,
dans le cas de présence de séquences similaires, la
détection de séquences connues erronées à partir d'une
mesure de similitude entre les séquences similaires
retenues et la séquence connue construite, et la
modification des séquences erronées détectées.
Un autre aspect de l'invention concerne un module de
correction d'erreurs de transmission dans un flux de
données transmis par un système de communications utilisant
une pile de protocoles multicouches, la module comprenant:
une entrée pour recevoir un flux de données
comportant les données des paquets générées par les
protocoles de la pile, ces données comprenant des champs
protocolaires dont le contenu est constant pour tous les
paquets de données,
une séquence connue construite sans ajout
d'information au flux de données transmis, la séquence
connue étant constituée de symboles caractéristiques des
différentes couches de la pile de protocoles appartenant
aux champs protocolaires de contenu constant,
des moyens pour rechercher des séquences similaires à
la séquence connue, les séquences non similaires n'étant
pas retenues,
des moyens de détection de séquences connues erronées
dans le cas de présence de séquences similaires et pour
CA 02708077 2014-06-27
8a
modifier les séquences similaires, la détection de
séquences erronées étant réalisée à partir d'une mesure de
similitude entre les séquences similaires retenues et la
séquence connue construite.
Un autre aspect de l'invention concerne un système de
communication de flux de données comprenant une chaîne de
réception dans lequel ladite chaîne de réception comprend
un module de correction d'erreurs dans le flux de données
reçu selon le module tel que décrit ci-dessus.
Un autre aspect de l'invention concerne un procédé
pour corriger des erreurs de transmission à la reception
dans un flux de données transmis par un système de
communication utilisant une pile de protocoles
multicouches, ledit procédé comprenant:
la réception d'un flux de données entrant comprenant
des paquets de données générés par la pile de protocoles
multicouches, chacun des paquets de données comprenant des
champs protocolaires dont le contenu est constant pour tous
les paquets de données;
la construction d'une séquence connue sans ajout
d'informations au flux de données transmis, la séquence
connue comprenant des symboles caractéristiques de diverses
couches de la pile de protocoles multicouches et
appartenant aux champs protocolaires du contenu constant;
la recherche à un niveau d'un récepteur pour les
séquences similaires à la séquence connue, les séquences
non-similaires n'étant pas retenues;
dans le cas où des séquences similaires sont
présentes, la détection des séquences connues erronées
basée au moins en partie sur la mesure de similitude entre
les séquences similaires retenues et la séquence connue
construite; et
la modification des séquences connues erronées
détectées.
Un autre aspect de l'invention concerne un procédé
permettant de corriger des erreurs de transmission à la
reception dans un flux de données transmis par un système
de communication utilisant une pile de protocoles
multicouches, ledit procédé comprenant:
la réception d'un flux de données entrant comprenant
des paquets de données générés par la pile de protocoles
multicouches, chacun des paquets de données comprenant des
champs protocolaires dont le contenu est constant pour tous
les paquets de données;
CA 02708077 2014-06-27
8b
la construction d'une séquence connue sans ajout
d'informations au flux de données transmis, la séquence
connue comprenant des symboles caractéristiques de diverses
couches de la pile de protocoles multicouches et
appartenant aux champs de protocole du contenu constant;
la recherche à un niveau d'un récepteur des séquences
similaire à la séquence connue, comprenant:
l'ouverture d'une fenêtre d'analyse d'une
longueur égale à la longueur de la séquence connue;
le calcul du seuil de détection n;
la mesure de la similitude entre une séquence
analysée et la séquence connue;
la détection d'une séquence similaire lorsque
la similitude mesurée est supérieure ou égale au
seuil de détection n, les séquences non-similaires
n'étant pas retenues;
dans le cas où des séquences similaires sont
présentes, la détection des séquences connues erronées
basée au moins en partie sur la similitude mesurée entre
les séquences similaires retenues et la séquence connue
construite; et
la modification des séquences connues erronées
détectées.
Un autre aspect de l'invention concerne un module
pour la correction des erreurs de transmission dans un flux
de données transmis par un système de communications
utilisant une pile de protocoles multicouches, le module
comprenant:
une entrée pour la réception d'un flux de données
comprenant des paquets de données générés par la pile de
protocoles multicouches, chacun des paquets de données
comprenant des champs protocolaires dont le contenu est
constant pour tous les paquets de données; et
un processeur informatique configuré pour:
construire une séquence connue sans ajout
d'informations au flux de données transmis, la
séquence connue comprenant des
symboles
caractéristiques de diverses couches de la pile de
protocoles multicouches appartenant aux champs
protocolaires du contenu constant;
rechercher de séquences similaire à la séquence
connue, les séquences non-similaires n'étant pas
retenues; et
CA 02708077 2014-06-27
8c
détecter de séquences connues erronées dans un
cas où des séquences similaires sont présentes et
pour modifier des sequences similaires, la détection
des séquences connues similaires étant réalisée en
fonction, au moins en partie, d'une mesure de
similitude entre les séquences similaires retenues et
la séquence connue construite.
D'autres particularités et avantages de l'invention
apparaîtront clairement à la lecture de la description qui
est faite ci-après et qui est donnée à titre d'exemple
illustratif et non limitatif et en regard des figures sur
lesquelles :
La figure 1 représente le schéma d'un système de
communication d'un flux de données avec une chaîne de
transmission selon l'art antérieur,
La figure 2 représente le schéma d'un module de
correction d'erreurs placé sur une chaîne de transmission
selon l'invention,
La figure 3A représente le schéma d'un système de
communication d'un flux de données entre une source
émettrice S et une chaîne de réception R comprenant un
module de correction d'erreurs placé entre le démodulateur
et le décodeur,
La figure 3B représente le schéma d'un système de
communication d'un flux de données entre une source
émettrice S et une chaîne de réception R comprenant un
module de correction d'erreurs placé avant le démodulateur.
La figure 4 représente le schéma détaillé des étapes
mises en uvre par le module de correction d'erreurs selon
l' invention,
La figure 5 représente la courbe de variation de la
probabilité de récupération des séquences connues d'une
séquence connue dans la fenêtre d'analyse en fonction du
seuil de détection n, selon des conditions de bruit du canal
de transmission, traduites par une variable s et pour une
longueur F de séquence connue choisies,
La figure 6 représente la courbe de variation de la
probabilité de récupération des séquences connues d'une
CA 02708077 2010-06-03
WO 2009/074489 9 PCT/EP2008/066618
séquence connue dans la fenêtre d'analyse en fonction de la
taille F de la séquence connue, selon des conditions
choisies de bruit du canal traduites par une variable E et
un nombre de symboles L entre deux occurrences successives
dans le flux original de la séquence connue,
La figure 7 représente la courbe de variation de la
probabilité de récupération des séquences connues d'une
séquence connue dans la fenêtre d'analyse en fonction de la
taille F de la séquence connue selon des conditions de bruit
du canal traduites par une variable E différente de celle de
la figure 6 et le même nombre L de symboles entre deux
occurrences successives dans le flux original de la séquence
connue,
La figure 8 représente la courbe de variation de la
probabilité de récupération des séquences connues d'une
séquence connue dans la fenêtre d'analyse en fonction de la
taille F de la séquence connue selon un deuxième nombre L de
symboles entre deux occurrences successives de la séquence
connue et des conditions de bruit du canal traduites par une
variable E choisies,
La figure 9 représente la courbe de variation de la
probabilité de récupération des séquences connues d'une
séquence connue dans la fenêtre d'analyse en fonction de la
taille F de la séquence connue, selon des conditions de
bruit du canal traduites par une variable E différente de
celle de la figure 8 et le même nombre L de symboles entre
deux occurrences de la séquence connue,
La figure 10 illustre des courbes de variation du taux
d'erreur bit BER avec la mise en place d'un module
correcteur selon la présente invention et les procédés selon
l'art antérieur pour une longueur F de séquence connue
donnée (F= 20 octets),
La figure 11 illustre des courbes de variation du taux
d'erreur paquet PER avec la mise en place d'un module
correcteur selon la présente invention et les procédés selon
CA 02708077 2010-06-03
WO 2009/074489 1 0 PCT/EP2008/066618
l'art antérieur pour une longueur F de séquence connue
donnée (F= 20 octets),
La figure 12 illustre des courbes du taux d'erreur bit
BER avec la mise en place d'un module correcteur selon la
présente invention et les procédés selon l'art antérieur
pour une longueur F de séquence connue plus longue (F= 40
octets),
La figure 13 illustre des courbes de variation du taux
d'erreur paquet PER avec la mise en place d'un module
correcteur selon la présente invention et les procédés selon
l'art antérieur pour la même longueur F de séquence connue
qu'à la figure 12 (F= 40 octets).
La figure 14 est une représentation hexadécimale d' une
suite de paquets entrants dans le cas d'une pile
protocolaire FTP/TCP/IP/Ethernet, capturée au niveau
Ethernet, mettant en évidence l'existence de séquences
répétées dans les informations de contrôle de chaque paquet
et pouvant constituer la séquence connue SP.
Le procédé de correction d'erreurs de transmission
selon l'invention s'applique aux systèmes de communication
utilisant des piles de protocoles. Des exemples non
exhaustifs de piles protocolaires auxquelles s'applique ce
procédé sont TCP/IP ou UDP/IP. Il s'applique à tout système
de communications numériques et en particulier aux systèmes
de communication par satellite et aux liaisons ATM sur ADSL.
Dans un flux de données transmis par un pile
protocolaire, une ou plusieurs séquences connues SP sont
transmises.
Les séquences connues SP sont des séquences contenant
des champs d'informations statiques c'est-à-dire des
champs dont le contenu est constant et pouvant être connu du
récepteur pour tous les paquets du flux. Il peut s'agir de
sous-ensembles de bits appartenant à différents champs
d'entête comme par exemple les adresses des niveaux MAC ou
CA 02708077 2010-06-03
WO 2009/074489 1 1 PCT/EP2008/066618
IP de la source émettrice ou du récepteur, des ports TCP ou
UDP, le type de protocole ou sa version. Les bits du sous-
ensemble ne sont pas obligatoirement contigus mais leur
position relative dans l'entête est connue.
Selon le procédé de correction d'erreurs, le flux
transmis FE par le canal de communication C de la chaîne de
transmission et entrant coté récepteur R est analysé de
manière à rechercher les séquences connues SP du flux.
Les données du flux traitées selon le procédé peuvent
être sous la forme de symboles binaires ou sous la forme de
données réelles ou quantifiées.
Le procédé comporte la détermination d'un seuil de
détection ri de séquences connues SP. Le seuil de détection ri
est choisi à de manière à avoir une probabilité de
récupération des séquences connues PSR maximale. Le seuil
choisi est de préférence un seuil optimum nopt, qu'il est
possible d'estimer par analyse du flux reçu. Ce seuil
optimum nopt tient compte du nombre moyen L de symboles
entre deux occurrences de la séquence connue SP dans le flux
(la longueur moyenne des paquets) et de l'état du canal de
communication C. L'état du canal de communication se traduit
par une variable estimée E correspondant aux conditions de
bruit. La valeur de L et l'état du canal sont des valeurs
estimées obtenues par exemple par un estimateur classique ou
par d'autres méthodes.
Dans le cas d'erreurs introduites par la transmission,
le procédé permet de détecter dans le flux des séquences
similaires aux séquences connues SP attendues, c'est-à-dire
des séquences identiques ou très proches, cette proximité
étant établie à partir d'un critère de similarité
prédéterminé; les séquences non similaires, c'est-à-dire
différentes n'étant pas retenues.
Lorsqu'une séquence analysée répond au critère de
similarité une séquence dite similaire est détectée. Ce
critère de similarité est rempli lorsque la séquence
CA 02708077 2010-06-03
WO 2009/074489 12 PCT/EP2008/066618
analysée présente un degré de similitude avec la séquence
connue SP supérieur ou égal à la limite définie par
l'estimation du seuil de détection optimum nopt.
Le procédé comporte la détection de séquences connues
erronées, ce qui correspond à la détection de séquences
similaires.
Le procédé comporte la modification des séquences
erronées détectées.
Dans le cas où les données sont sous la forme de
symboles binaires, la modification des séquences erronées
consiste à remplacer la séquence binaire erronée par la
séquence binaire connue.
Dans le cas où les données sont sous la forme de
données réelles ou quantifiées, la modification des
séquences erronées consiste à remplacer la séquence de
signaux réels ou quantifiés par une séquence de signaux
réels représentative de la séquence connue.
L'analyse du flux entrant FE est réalisée au moyen
d'une fenêtre glissante W. La fenêtre W est une fenêtre
glissante se déplaçant d'une position i à une position i+1
après chaque analyse d'une séquence de longueur
prédéterminée F formée des symboles reçus indexés de i à
i+F-1.
La figure 2 représente le schéma d'un module de
correction d'erreurs 100 placé sur une chaîne de
transmission contenant un canal C de communication à piles
protocolaire. Le module 100 reçoit un flux FE de paquets de
données transmis par le canal C.
La longueur moyenne des paquets est L,
La longueur des séquences connues SP est F,
En sortie du canal les séquences connues SP peuvent
avoir été transmises avec des erreurs, tel que cela est
illustré par la séquence SPe.
CA 02708077 2010-06-03
WO 2009/074489 13 PCT/EP2008/066618
Le module 100 reçoit des couches supérieures 110 des
informations relatives aux champs constitutifs de la
séquence connue SP pour tous les paquets du flux. Ces
données servent à déterminer la séquence connue SP à
rechercher dans le flux par le module 100.
Le module 100 comporte une fenêtre W d'analyse des
données reçues. La fenêtre glissante W est une fenêtre se
déplaçant d'une position i à une position i+1 après chaque
analyse d'une séquence de longueur prédéterminée F formée
des symboles reçus indexés de i à i+F-1.
La figure 3A représente un système de communication tel
que représenté sur la figure 1 mais dans lequel un module de
correction d'erreurs 100 selon l'invention a été implanté.
Dans cet exemple de réalisation, le module 100 est implanté
entre le démodulateur 40 du récepteur R et le décodeur 60.
La détection d'erreurs est réalisée après démodulation du
signal. Les séquences connues SP recherchées sont des
séquences discrètes (suite de symboles binaires ou résultats
d'informations quantifiées).
La figure 3B représente un deuxième mode de réalisation
d'un système de communication selon l'invention. Dans ce
mode de réalisation, la correction d'erreurs de transmission
est réalisée avant démodulation. Les séquences connues SP
recherchées sont une portion de signal correspondant à une
séquence discrète.
La figure 4 illustre les étapes mises en uvre par le
module de correction d'erreurs 100.
110- Les couches supérieures au niveau du récepteur R
fournissent au module 100 des informations relatives à la
séquence connue SP du flux entrant FE afin que le module 100
procède à la recherche de ces séquences dans le flux FE.
CA 02708077 2010-06-03
WO 2009/074489 14 PCT/EP2008/066618
101, 102, 103, 104 - Le module 100 recherche sur le
flux FE les positions probables des séquences connues par
comparaison successive de séquences de symboles avec la
séquence connue SP suivant un critère prédéterminé. Les
étapes mises en uvre sont les suivantes :
101, 102- le module détermine le seuil de détection
d'une séquence connue, ce seuil correspondant à une
similitude satisfaisante permettant de rejeter des séquences
très différentes c'est-à-dire des séquences dont la
similitude est inférieure au seuil. De façon pratique, le
seuil de détection ri de séquences connues SP est choisi de
manière à maximiser la probabilité de récupération des
séquences PSR connues. Le seuil choisi est une estimation
d'un seuil optimum nopt. Ce seuil optimum nopt tient compte du
nombre moyen de symboles L entre deux occurrences de la
séquence connue (la longueur moyenne des paquets) et de
l'état du canal de communication C, traduit par la variable
c. La valeur de L et l'état du canal sont des valeurs
estimées obtenues par l'estimateur 102.
103- le module analyse la séquence présente dans la
fenêtre W, en mesurant sa similitude à la séquence connue
SP.
104- le module compare le seuil de détection ri à la
similitude mesurée.
Le module 100 effectue une détection 105 de séquences
connues erronées dans le cas de présence de séquences
similaires c'est-à-dire les séquences dont la similitude
mesurée avec la séquence connue SP est supérieure au seuil
ri, et modifie les séquences similaires à l'aide la séquence
connue.
Dans le cas où les données sont sous la forme de
symboles binaires, la modification des séquences erronées
consiste à remplacer la séquence binaire erronée par la
séquence binaire connue.
CA 02708077 2010-06-03
WO 2009/074489 15 PCT/EP2008/066618
Dans le cas où les données sont sous la forme de
données réelles ou quantifiées, la modification des
séquences erronées consiste à remplacer la séquence de
signaux réels ou quantifiés par une séquence de signaux
réels représentative de la séquence connue.
107- Le module contrôle la fin du flux et fait glisser
106 la fenêtre d'analyse W d'une position.
On a représenté sur la figure 5 la courbe de variation
de la probabilité de récupération des séquences connues en
fonction du seuil de détection ri pour une longueur F de
séquence connue SP égale à 16 octets, et des conditions de
bruit importantes traduites par la variable E, E= 10' (1
bit sur 10 erroné). La ligne en pointillés représente la
distance logarithmique entre la probabilité de récupération
des séquences connues et 1.
On a représenté sur les figures 6 et 7, les courbes de
variation de la probabilité de récupération des séquences
connues d'une séquence connue SP dans la fenêtre d'analyse
respectivement pour des conditions de bruit E= 10' et
E= 10 4 et un nombre de symboles L entre deux occurrences
successives de la séquence connue SP (taille moyenne des
paquets) de 100 octets.
On a représenté sur les figures 8 et 9, les courbes de
variation de la probabilité de récupération des séquences
connues d'une séquence connue dans la fenêtre d'analyse,
respectivement pour des conditions de bruit E= 10' et
E= 10 4 et un nombre de symboles L entre deux occurrences
successives de la séquence connue SP (taille moyenne des
paquets) de 1500 octets.
CA 02708077 2010-06-03
WO 2009/074489 16 PCT/EP2008/066618
Les figures 10 à 13 illustrent des courbes d'estimation
des performances obtenues par simulation d'un système de
communication mettant en uvre le procédé.
On a représenté sur la figure 10, des courbes de
variation du taux d'erreur bit BER dans le cas d'une
correction effectuée par le module 100 et d'un codage
Turbo : courbe avec des symboles carrés ; dans le cas de
l'art antérieur codage Turbo : courbe avec triangle ; et
sans correction : courbe avec points. Ces courbes ont été
obtenues pour une longueur F de séquence connue SP égale à
octets.
On a représenté sur la figure 11 des courbes de
variation du taux d'erreur paquet PER dans le cas d'une
correction effectuée par le module 100 et d'un codage
15 Turbo : courbe avec carrés ; dans le cas de l'art antérieur
codage Turbo : courbe avec triangle ; et sans correction :
courbe avec points. Ces courbes ont été obtenues pour une
longueur F de séquence connue SP égale à 20 octets.
On a représenté sur la figure 12 des courbes de
20 variation du taux d'erreur bit BER dans le cas d'une
correction effectuée par le module 100 et d'un codage
Turbo : courbe avec les carrés ; dans le cas de l'art
antérieur codage Turbo : courbe avec triangle ; et sans
correction : courbe avec points. Ces courbes ont été
obtenues pour une longueur F de séquence connue SP égale à
40 octets.
On a représenté sur la figure 13 des courbes de
variation du taux d'erreur paquet PER dans le cas d'une
correction effectuée par le module 100 et d'un codage
Turbo : courbe avec carrés ; dans le cas de l'art antérieur
codage Turbo : courbe avec triangle ; et sans correction :
courbe avec points. Ces courbes ont été obtenues pour une
longueur F de séquence connue SP égale à 40 octets.
La figure 14 illustre un exemple dans le cas d'un
transfert de fichiers utilisant la pile protocolaire
CA 02708077 2010-06-03
WO 2009/074489 17 PCT/EP2008/066618
FTP/TCP/IP/Ethernet. Cette figure représente une extraction
hexadécimale de la suite de paquets entrants capturés au
niveau Ethernet. Dans l'exemple de la pile protocolaire
choisie, chaque paquet comporte une entête Ethernet, une
entête IP, une entête TCP, et des données du protocole FTP.
Ces entêtes comportent comme on peut le voir des champs
d'information constants sur tous les paquets. Il s'agit de
séquences statiques, que l'on trouve réparties sur une ou
plusieurs couches d'une pile protocolaire.
Le procédé exploite cette caractéristique pour
rechercher des séquences connues à partir de la connaissance
de la pile protocolaire, afin de corriger les séquences
erronées détectées à partir de cette recherche.
Le procédé exploite la redondance naturelle des données
générées par une pile protocolaire. Il est non intrusif
comme peuvent l'être les procédés de correction d'erreurs de
transmission connus. Il peut être implémenté dans tout
système de communication y compris dans les systèmes de
communication par satellite et ceux utilisant des liaisons
ATM sur ADSL.
Les figures 10 à 13 illustrent l'amélioration de la
correction d'erreurs de transmission apportée par le procédé
selon l'invention, lorsqu'il est placé dans la chaîne de
transmission de la Figure 3A comprenant un décodeur FEC 60
adapté.