Académique Documents
Professionnel Documents
Culture Documents
Industriels.
IUT de CACHAN
Version 2004.
Toute reproduction, même partielle, ne peut être réalisée qu'avec un accord écrit de l'auteur.
hugues.angelis@iut-cachan.u-psud.fr
Les Réseaux Locaux Industriels Page 2 / 186
IUT de CACHAN
Page 3 / 186 Les Réseaux Locaux Industriels
Hugues ANGELIS
BIBLIOGRAPHIE.
Ce document a été réalisé grâce aux documents suivants :
M. GUIRAUDIE M. DELAPLACE
IUT de CACHAN IUT de VELIZY.
1
Les iconographies empruntées à ce document sont repérées par un astérisque (*).
2
Les iconographies empruntées à ce document sont repérées par deux astérisques (**).
3
Les iconographies empruntées à ce document sont repérées par trois astérisques (***).
4
Les iconographies empruntées à ce document sont repérées par quatre astérisques (****).
Les Réseaux Locaux Industriels Page 4 / 186
IUT de CACHAN
Moi les dingues j'les soigne, j'm'en vais lui faire une ordonnance, et une sévère !
J'vais lui montrer qui c'est Raoul, aux quat' coins d'Paris qu'on va l'retrouver éparpillé
par petits bouts façon puzzle !
Moi quand on m'en fait trop j'correctionne plus, j'dynamite... j'disperse... et j'ventile...
Michel Audiard.
Page 5 / 186 Les Réseaux Locaux Industriels
Hugues ANGELIS
Avant-propos.
Le Multiplexage ___________________________________________________________ 48
Le multiplexage fréquentiel. ___________________________________________________________ 48
Le multiplexage temporel._____________________________________________________________ 50
Le vocabulaire des transmissions. _____________________________________________ 52
Les premiers réseaux informatiques.___________________________________________ 54
La norme RS232 ______________________________________________________________ 54
Présentation. _______________________________________________________________________ 54
Contrôle de flux_____________________________________________________________________ 55
Le contrôle de flux matériel._________________________________________________________ 55
Le contrôle de flux logiciel. _________________________________________________________ 56
Application. ________________________________________________________________________ 58
Le bus IEEE 488.______________________________________________________________ 59
Etudes des signaux de contrôle des machines : _____________________________________________ 59
Le signal REN (Remote ENable)._____________________________________________________ 59
Le signal IFC (InterFace Clear). ______________________________________________________ 60
Le signal ATN (ATtentioN). ________________________________________________________ 60
Le signal SRQ (Service ReQuest). ____________________________________________________ 60
Le signal EOI (End Or Identify). _____________________________________________________ 60
Etude du HAND-SHAKE (contrôle du flux) : _____________________________________________ 60
Le signal DAV (DAta Valid).________________________________________________________ 60
Le signal NRFD (Not Ready For Data). ________________________________________________ 61
Le signal NDAC (No Data ACepted). _________________________________________________ 61
Chronogramme d'une transmission. ___________________________________________________ 61
L'organisation des réseaux. __________________________________________________ 62
La norme OSI. ________________________________________________________________ 63
Les 7 couches de la norme OSI. ________________________________________________________ 63
La couche Physique (couche 1). ______________________________________________________ 64
La couche de liaison (couche 2). _____________________________________________________ 64
La couche réseau (couche 3). ________________________________________________________ 64
La couche de transport (couche 4).____________________________________________________ 64
La couche de session (couche 5). _____________________________________________________ 64
La couche de présentation (couche 6). _________________________________________________ 64
La couche d'application (couche 7). ___________________________________________________ 65
L'encapsulation des données. __________________________________________________________ 66
Trames et paquets. ___________________________________________________________________ 66
Principe de la trame élémentaire. _____________________________________________________ 66
Principe du paquet. ________________________________________________________________ 67
La couche physique. ________________________________________________________ 68
La topologie d'un réseau. _______________________________________________________ 68
L'anneau. __________________________________________________________________________ 68
L'étoile. ___________________________________________________________________________ 68
Le bus. ____________________________________________________________________________ 69
Le Back-Bone ______________________________________________________________________ 69
L'arborescence. _____________________________________________________________________ 70
Le réseau maillé. ____________________________________________________________________ 70
Le médium. __________________________________________________________________ 72
Remarque sur les vitesses de propagation _________________________________________________ 72
Les paires Torsadées. ________________________________________________________________ 73
La norme pour les fréquences. _______________________________________________________ 73
La norme par section de conducteur. __________________________________________________ 73
Les fibres optiques. __________________________________________________________________ 75
Les éléments de la couche physique._____________________________________________________ 77
Les Réseaux Locaux Industriels Page 8 / 186
IUT de CACHAN
Historique :
O
n peut considérer que les réseaux locaux sont apparus il y a une quarantaine
d’années, ils servaient au transfert de données entre machines. Leurs
utilisations répondaient à la nécessité de transférer des données (souvent
élémentaire) entre un calculateur et des automates ou entre un calculateur et
des instruments de mesure.
Il n'en reste pas moins que l'avenir n'est pas clair. On peut donc
espérer qu'à l'instar de l'informatique, les prochaines années verront apparaître, non
un, mais un ensemble de réseaux normalisés, standardisés et accessible par tous
les fabricants.
Les Réseaux Locaux Industriels Page 12 / 186
IUT de CACHAN
(*)
On nomme DEVICEBUS, les réseaux locaux qui font transiter des flots
peu importants de données sur de faibles distances (100m) en temps réel.
A
vant d'aborder les réseaux, nous allons voir certains points essentiels sans
lesquels, il est impossible de comprendre ce qui se passe et quelles sont les
raisons qui poussent à tant d'ingéniosité.
Les transmissions.
La vitesse de propagation.
Il existe une théorie, établie par MAXWELL, qui en défini clairement les
règles. Je ne vais pas présenter ici les équations (assez compliquées) de ce génie, je
vais me contenter de vous présenter ce qui se passe intuitivement.
1 c
Vϕ = =
εµ ε r µr
Vϕ
λ=
f
Page 15 / 186 Les Réseaux Locaux Industriels
Hugues ANGELIS
Cette résistivité des milieux est liée, elle aussi, aux équations de
MAXWELL (encore lui). Il a définit qu'une ligne électrique peut se modéliser grâce à
un schéma simple (ce modèle tenant compte du phénomène de déphasage et du
phénomène d'atténuation) :
Modèle du télégraphe.
Les Réseaux Locaux Industriels Page 16 / 186
IUT de CACHAN
Dans une ligne, on définit un élément très important qui va imposer bien
des choix, ce paramètre est la bande passante. Elle définit la largeur du spectre que
l'on peut faire transiter dans un canal sans que l'atténuation n'atteigne un niveau
limite. On dispose selon les types de liaison de valeur allant de quelques Kbit/s à
quelques Gbit/s.
Les lignes ont une impédance caractéristique définie par leur modèle
équivalent. Ce n'est pas la résistance linéique qui influence le plus, mais plutôt les
composants réactifs (capacité et inductance). En effet, la formule de cette impédance
L0
est la suivante : Z 0 = . Cette impédance caractéristique ne dépend donc pas de
C0
la fréquence et est généralement purement résistive, par exemple, vous devez
connaître l'impédance caractéristique des câbles coaxiaux électroniques (50Ω) ou
des câbles coaxiaux de télévision (75Ω).
Dans le premier cas, la ligne est en l'air, l'onde incidente (émise par le
GBF) se réfléchie complètement sur la ligne. Elle se superpose à l'onde incidente et
donne donc l'impression que l'amplitude de l'onde incidente est le double de celle
émise (on envoie V/2 et on a réellement V volts). Avec une résistance de 50Ω, il n'y a
pas de réflexion, on visualise donc la tension réellement envoyée c'est à dire V/2, la
moitié de la tension relevée avec l'extrémité en l'air…
Les Réseaux Locaux Industriels Page 18 / 186
IUT de CACHAN
Exemples.
V V
Ve
sens de
propagation 0 L
t t
0 L sens de
propagation
-Ve
Dans ce cas, l'onde revient avec une amplitude plus faible, mais de même signe.
Page 19 / 186 Les Réseaux Locaux Industriels
Hugues ANGELIS
Dans ce cas, l'onde revient avec une amplitude plus faible, mais de signe opposé.
Cas d'adaptation.
Comme vous le constatez, sur une ligne, les effets des désadaptations
sont parfois catastrophiques, non pas qu'ils soient destructifs mais à cause de leurs
résultats sur la lisibilité des messages lors d'une superposition des ondes incidentes
et réfléchies.
τ = 1 + ρ d'où VT = (1 + ρ ) ⋅ VI
Méthode du tableau.
• Le blindage des lignes, c'est à dire leur protection contre les atteintes extérieures
(solution utilisée en dernier recours, car problème de coût).
• Une autre solution consiste à améliorer l'immunité au bruit en augmentant la
puissance nécessaire à la détection des états logiques, par exemple en passant
les signaux en ±12V (c'est la méthode la plus utilisée).
• Une solution très industrielle, qui est très souvent utilisée dans les réseaux locaux,
consiste à ne plus coder les informations sous forme de tensions mais sous forme
de courants (en utilisant des boucles de courant). En effet, la tension liée au bruit
peut être très forte, mais le courant lui est généralement très faible
• La dernière solution consistant à transmettre sur deux fils le signal de façon
flottante. A l'arrivée, il suffit de mesurer la différence des tensions sur les 2 voies
pour récupérer le signal d'origine.
Ces méthodes sont cumulables les unes avec les autres (sauf
l'utilisation commune des boucles de courant et l'augmentation des tensions).
F F
Bruit Blanc Bruit en 1/F ou bruit de grenaille
C
omme on l'a vu, pour transmettre une information, les problèmes sont
nombreux. Donc on a tendance à utiliser les méthodes éprouvées, héritées
des télécommunications. Mais l’évolution technologique a sévèrement remis
en cause cette vision peu innovatrice des choses.
Interconnexions
Liaison monofilaire
Dans le cas d'une transmission à un seul fil, on joue sur le fait que la
masse est la même pour les deux machines, ce qui ne peut être vrai que pour des
distances extrêmement courtes (sur une même carte électronique par exemple).
S = ( A + B) − (− A + B) = A + B + A − B = 2 ⋅ A
Les polarités :
Exemples.
1 0 0 1 1 0 1 1 1 1 1
0 0 0
Le retour à zéro.
Exemple.
1 0 0 1 1 0 1
1 0 0 1 1 0 1
Ce sont les fronts sur le signal de données qui sont utilisés pour recaler
l'horloge du récepteur sur celle de l'émetteur.
Horloge
Unipolaire
Biphasé ou
Manchester II
Ce code est assez utilisé dans les réseaux, c'est un code biphasé et
bipolaire. Le principe du codage Manchester consiste à traduire le '1' comme un front
descendant et le '0' comme un front montant. Pour ce faire, on utilise une fonction
logique NON OU EXCLUSIF entre l'horloge et le signal de données.
Le code Miller.
Horloge
Binaire
Biphasé
Miller
Bien entendu, cette fois ci, le décodage est beaucoup plus compliqué.
Page 29 / 186 Les Réseaux Locaux Industriels
Hugues ANGELIS
Le code HDB3.
Horloge
Unipolaire
Biphasé
HDB3
Bourrage Viol
Représentation fréquentielle.
(***)
Page 31 / 186 Les Réseaux Locaux Industriels
Hugues ANGELIS
Bien que relativement peu utilisée dans le monde des réseaux câblés,
les modulations ont fait récemment une entrée remarquable, dans le monde des
réseaux, avec l'apparition des technologies sans fil (WIRELESS).
Expressions mathématiques.
p(t ) = A cos(ω 0 t)
f (t ) = B cos(ω ' t)
s(t ) = AB cos(ω 0 t) * cos(ω ' t)
s(t) =
AB
[cos(ω0 + ω ' )t + cos(ω0 − ω ' )t ]
2
AB
s (t ) = [δ (ω 0 + ω ' ) + δ (ω0 − ω ' ) + δ (−ω 0 + ω ' ) + δ (−ω 0 − ω ' )]
4
Cela se traduit par une représentation en fréquence :
Page 33 / 186 Les Réseaux Locaux Industriels
Hugues ANGELIS
s (t ) = f (t ) * p (t )
p (t ) = A cos(ω 0 t)
A jω 0 t
⇔ s (t ) = f (t ) * (e + e − jω0t )
2
A A
⇔ s (t ) = f (t ) * e jω0t + f (t ) * e − jω0t
2 2
s (t ) ⎯⎯→ S (ω )
TF
A
⇔ S (ω ) = [ F (ω + ω 0 ) + F (ω − ω 0 )]
2
f(ω) p(ω)
s(ω)
La FSK.
f 2 − f1
On définit l'indice de modulation d'une FSK par : X = . Où R est
R
la fréquence maximum du signal de données et f1 et f2, les fréquences de la porteuse
pour respectivement un '0' logique et un '1' logique.
Il faut là encore distinguer deux famille de FSK, d'une part les FSK à
phase continue, c'est à dire sans saut de phase lors du passage de f1 à f2 (et
inversement), ou les FSK à phase discontinue où des saut de phase peuvent avoir
lieu.
Les Réseaux Locaux Industriels Page 40 / 186
IUT de CACHAN
La PSK.
Certaines PSK standard code le '1' logique comme un signal avec une
phase de 180° et le '0' comme un signal avec une phase nulle. Il s'agit ici de valeurs
de phase absolues.
Il existe aussi des PSK qui codent, en même temps, plusieurs bits. Par
exemple avec deux bits, on va établir quatre déphasages en fonction de la valeur des
deux bits. Par exemple le "00" correspond à un déphasage nul, le "01" comme un
déphasage de 90°, etc.
Code binaire
Alimentation
Signal binaire
Horloge
PWM
Porteuse
AM avec
porteuse
FSK
PSK
(***)
Les Réseaux Locaux Industriels Page 42 / 186
IUT de CACHAN
D
ans ce chapitre, nous allons étudier toujours de le cadre de la transmission
des données, comment on prépare ces données en vue d’une transmission
où l'on peut grâce à un codage approprié améliorer la qualité, la vitesse ou la
quantité des données transmises.
Le codage de la parité.
1 0 0 1 1 1 1 0 0 1 1 1 0
1 1 0 0 0 0 1 1 0 0 0 0 0
1 0 1 0 0 0 1 0 1 1 0 0 1
0 1 0 1 1 1 0 1 0 1 1 1 0
1 0 0 0 1 0 1 0 0 0 1 0 0
0 0 1 0 1 0 0 0 1 0 1 0 0
Emis 0 0 0 1 0 0 1
Reçu
Les signaux émis sont : 100111 110000 101000 010111 100010 001010
Les signaux reçus sont : 100111 110000 101100 010111 100010 001010
Exemple.
Erreur sur le e3 e2 e1
bit
aucun 0 0 0
er
1 bit (m1) 0 0 1
2ème bit (m2) 0 1 0
3ème bit (m3) 0 1 1
4ème bit (m4) 1 0 0
5ème bit (m5) 1 0 1
6ème bit (m6) 1 1 0
7ème bit (m7) 1 1 1
m7 m6 m5 m4 m3 m2 m1
n4 n3 n2 k3 n1 k2 k1
k1 = m1 = e1 ⊕ m3 ⊕ m5 ⊕ m7
k2 = m2 = e2 ⊕ m3 ⊕ m6 ⊕ m7
k3 = m4 = e3 ⊕ m5 ⊕ m6 ⊕ m7
k1 = m3 ⊕ m5 ⊕ m7
k2 = m3 ⊕ m6 ⊕ m7
k3 = m5 ⊕ m6 ⊕ m7
m7 m6 m5 m4 m3 m2 m1
n4 n3 n2 k3 n1 k2 k1 n= k=
0 0 0 0 0 0 0 0 0
0 0 0 0 1 1 1 1 3
0 0 1 1 0 0 1 2 5
0 0 1 1 1 1 0 3 6
0 1 0 1 0 1 0 4 6
0 1 0 1 1 0 1 5 5
0 1 1 0 0 1 1 6 3
0 1 1 0 1 0 0 7 0
1 0 0 1 0 1 1 8 7
1 0 0 1 1 0 0 9 4
1 0 1 0 0 1 0 10 2
1 0 1 0 1 0 1 11 1
1 1 0 0 0 0 1 12 1
1 1 0 0 1 1 0 13 2
1 1 1 1 0 0 0 14 4
1 1 1 1 1 1 1 15 7
e1=m1⊕m3⊕m5⊕m7=1⊕1⊕0⊕1=1 e3 e2 e1 décimal
e2=m2⊕m3⊕m6⊕m7=0⊕1⊕1⊕1=1 0 1 1 3
e3=m4⊕m5⊕m6⊕m7=0⊕0⊕1⊕1=0
On trouve alors
On sait donc où l’erreur se situe car e1, e2 et e3 indiquent une erreur sur
le 3ème bit. On peut donc corriger le code reçu et écrire que le code sans erreur est
1100001 donc que le message est 1100.
Avec ce code de Hamming, on sait donc corriger une erreur sur un bit
mais on est capable, sans les corriger, de détecter jusqu'à trois erreurs.
Puisque G(x) est de degré v, R(x) est forcément d'un degré inférieur ou
égal à v. C'est ce reste R(x) qui va être transmis en plus de P(x) au récepteur.
Page 47 / 186 Les Réseaux Locaux Industriels
Hugues ANGELIS
S’il y a une différence entre les deux restes, on est sûr alors qu'une
erreur s'est glissée dans la transmission.
C'est ce qui fait que le codage CRC est très utilisé pour les supports
peu fiables, mais aussi dans la majeure partie des réseaux.
Plus généralement, les codes CRC sur 64 bits sont utilisés par les
logiciels de compression de données (ZIP ou RAR) pour valider des fichiers pouvant
atteindre plusieurs dizaine de Méga octets.
Il faut toutefois se rendre compte que les codes CRC que nous vous
avons présentés ne permettent pas de corriger les erreurs, de même, ils n'assurent
aucune confidentialité aux communications malgré leur grande similarité avec les
codes de cryptage, militaires ou civil. Il existe tout de même des codes CRC
correcteurs d'erreurs, mais nous ne les étudieront pas.
Dans le monde des réseaux, les codes ne sont là que pour détecter les
erreurs de transmission, même si ils sont capables de les corriger. La capacité de
transfert des réseaux moderne, et la sensibilité des données, sont telles que l'on
préfère retransmettre un paquet si il est susceptible de contenir des erreurs plutôt
que d'en commettre de nouvelles par des corrections hasardeuses.
Les Réseaux Locaux Industriels Page 48 / 186
IUT de CACHAN
Le Multiplexage
Depuis toujours, l'objectif des transmissions est de transmettre plus de
données dans un minimum d'espace. Actuellement, avec la multiplication des
réseaux hertziens, avec l'essor de la téléphonie, le manque de place est cruel. Or le
monde des transmissions est régit par une loi intangible :
Pour transmettre plusieurs signaux sur un même canal, il faut être capable de
tous les extraire.
Cela imposait donc de décaler soit dans le temps, soit en fréquence les
signaux à transmettre. Cette technique appelée multiplexage, se conjugue donc
selon 2 axes : d'un coté l'axe temporel, de l'autre, l'axe fréquentiel. Dans les 2 cas,
cela revient à découper la bande autorisée en petits intervalles qui seront autant de
voies de communication.
Le multiplexage fréquentiel.
Spectre de
la parole
f
300 3400
1 12
f
4KHz Multiplexage de 108KHz
plusieurs voies de
60KHz communication.
Exemple de multiplexage fréquentiel à 12 voies
1728 voies
multiplexées de
612 à 3100KHz
144 voies
multiplexées de
312 à 552KHz
12 voies
multiplexées de
60 à 108KHz
Les Réseaux Locaux Industriels Page 50 / 186
IUT de CACHAN
Le multiplexage temporel.
Cette technique est aussi utilisée (mais cette fois ci à des fins de
protection) dans le concept du GPS.
Les Réseaux Locaux Industriels Page 52 / 186
IUT de CACHAN
C
e paragraphe est un petit lexique de certains termes dont l'usage est courant
dans les transmissions.
SIMPLEX : Méthode de transmission imposant sur une ligne une machine qui
parle et une seule, sans possibilité pour qu'une autre machine ne parle.
Machine n°3
Interconnexion Machine n°5
point à point.
Interconnexion
répartie.
Page 53 / 186 Les Réseaux Locaux Industriels
Hugues ANGELIS
LE TEMPS REEL : Cette notion, que vous allez étudier dans d'autres cours,
est un élément très important dans les réseaux locaux. La notion de temps réel, c'est
en fait la capacité qu'à un système pour répondre en un temps donné.
Le temps réel veut dire qu'au pire, n µs après l'envoie d'un ordre, il doit
être arrivé à l'ordinateur traitant ce problème et que p µs après, ces données doivent
être traitées et revenir aux différents actionneurs.
BIG ENDIAN : Le bit de poids fort est transmis en premier, le bit de poids
faible à la fin.
A
vant d'essayer d'analyser les réseaux modernes, nous allons "continuer"
l'historique en étudiant certaines vieilleries. Elles furent à l'origine de toutes
améliorations et de tous les éléments actuels (les réseaux en particulier).
La norme RS232
Les puristes pourraient vous le dire, RS 232 est une façon de faire
communiquer 2 machines entre elles, mais en aucun cas le terme réseau ne peut lui
être appliqué. Ceci est une pure vérité, mais, comme il faut bien commencer quelque
part, commençons donc par ce système puisque je suis sûr que vous en avez
entendu parlé (peut être sous le nom de liaison série).
TD Transmission Sortie
RD Réception Entrée
RTS Ready To Send (demande d'émission) Sortie
CTS Clear To Send (prêt à émettre) Entrée
DSR Data Set Ready (données prêtes) Entrée
DCD Data Carrier Detect (détection de porteuse) Entrée
DTR Data Terminal Ready (terminal prêt) Sortie
RI Ring Indicator (détection de sonnerie) Entrée
Présentation.
♦ Le débit : Il peut être choisi, selon les versions de la norme entre 75 bauds
et plusieurs centaines de kilo-bauds (valeur typique 9600 bauds).
♦ Le nombre de bits de données : Il peut varier de 4 à 8 bits.
♦ Le nombre de bits d'arrêts : Il peut être 1, 1,5 ou 2.
♦ Le type de contrôle de la parité. Il peut être choisi parmi trois possibilités :
• pas de contrôle de parité;
• parité paire (le message contient un nombre pair de '1');
• parité impaire (le message contient un nombre impair de '1').
Page 55 / 186 Les Réseaux Locaux Industriels
Hugues ANGELIS
En outre, une fois les paramètres matériels définis à l'identique sur les
deux machines, pour quelles communiquent, on doit choisir un mode de
transmission, c'est à dire définir le processus de contrôle de flux utilisé pour la liaison
série.
Contrôle de flux
Les codes ASCII utilisés pour contrôler les échanges sont Xon, qui est
le code ASCII 17 (0x11) ou Ctrl Q, et Xoff qui est le code ASCII 19 (0x13) ou Ctrl S.
Une fois atteint un second seuil (50% en général), elle envoie alors à
l'émetteur le caractère Xon pour que le transfert de données puisse reprendre.
Page 57 / 186 Les Réseaux Locaux Industriels
Hugues ANGELIS
Application.
Une fois ces points définis, on peut transmettre les données en utilisant
un UART. La forme des trames est alors la suivante :
Trame RS 232
0 1 1 0 0 1 0 1 0 1
La réception des données est réalisée par l’horloge interne d’un UART,
multiple de la fréquence de transmission (horloge interne = N * horloge transmission)
pour lui permettre de se synchroniser avec le signal transmis.
Le bus IEEE 488 est le premier bus d'instrumentation qui a connu une
normalisation, né du bus HPIB (HEWLETT PACKARD INSTRUMENTATION BUS),
ce bus est exclusivement dédié à l'automatisation de chaînes de mesures.
Les signaux qui transitent sur les lignes sont de 3 types (les nombres
entre parenthèse représentent le numéro de broche sur le connecteur IEC) :
1 13
14 25
Connecteur IEEE 488 (modèle IEC)
REN permet une prise en main d'une machine par le bus. Dans le cas
où le signal REN est à "0", les instruments (de mesure ou de visualisation) sont
accessibles par leurs faces avant. Si REN est à 1, les instruments sont pilotés par le
bus et leur face avant est désactivée.
Ces signaux sont transmis avec une masse pour améliorer l'immunité
aux bruits. Les masses sont placées sur les broches 13 et de 18 à 25
Données
DAV Ta Tb
NRFD
NDAC
T0 T1 T2 T3 T4 T5
♦ Avant T0, le récepteur signale qu'il n'est pas en mesure de recevoir des données.
♦ A T0, le récepteur signale qu'il est prêt à recevoir.
♦ A T1, les données sont présentes depuis un temps Ta sur la ligne. L'émetteur
signale alors au(x) récepteur(s) que les données sont valables.
♦ De T2 à T3, le récepteur réalise l'acquisition des données.
♦ A T3, les données ont été saisies et le récepteur le signale à l'émetteur.
♦ A T4, l'émetteur annonce que les données ne sont plus valables (bien qu'elles
restent encore valides pendant un temps Tb).
♦ A T5, le cycle peut recommencer.
Les Réseaux Locaux Industriels Page 62 / 186
IUT de CACHAN
C
omme vous pouvez le constater, les réseaux sont des éléments complexes,
faisant appel à une technique importante, souvenons nous qu'il n'y a pas 2
réseaux identiques, on en trouve donc une quantité impressionnante, avec
chacun un domaine de prédilection, d'où la définition de plusieurs niveaux de
spécification sous forme d’une pyramide nommé CIM.
Pyramide CIM(*)
La norme OSI.
• Une couche assure une base stable, elle permet une communication correcte
entre le niveau inférieur et le niveau supérieur (un peu comme les briques dans un
mur, où il faut pouvoir s'appuyer sur les briques déjà posées). On trouve alors
comme règle de dialogue, la possibilité de communiquer avec les niveaux
adjacents (dialogue vertical). On nomme cette fonction le service.
• L'autre notion est liée à l'utilisation de la couche, c'est à dire la cohérence avec la
couche de même niveau de la machine avec laquelle on communique. Pour
reprendre nos analogies maçonnes, c'est la cohérence entre 2 briques côte à côte
sur une même rangée. Si l'une est plus grande que l'autre, on risque des
surprises. On trouve alors comme règle de dialogue la possibilité de communiquer
avec une couche de même niveau (dialogue horizontal). On nomme cette fonction
le protocole.
Les Réseaux Locaux Industriels Page 64 / 186
IUT de CACHAN
Représentation OSI.
Application Couche 7
P Présentation Couche 6
A
S Session Couche 5
S
E Transport Couche 4
R
E
R Réseau Couche 3
O
L U P
L
Liaison Couche 2
T O
E E N médium
Physique Couche 1
U T
R
La définition des couches OSI d'un réseau au sens global, nous amène
à étudier l'influence de ces couches dans nos applications. Par exemple, l'utilisation
du bus IEEE 488 sous-entend que les couches 1, 2 et 7 sont utilisées. Ce qui veut
dire que les couches 3, 4, 5 et 6 sont inexistantes.
Données à transmettre.
Code ajouté.
Couche 7
Couche 6
Couche 5 Transaction
Couche 4 Message
Décomposition
en paquets.
Couche 3 Paquet
Bits Couche 1
Trames et paquets.
Principe du paquet.
La couche physique.
L
a couche physique permet de définir l'ensemble des caractéristiques physiques
(d'où son nom) du réseau. Elle permet en fait de réaliser l'adaptation au
médium utilisé pour la transmission en fixant les limites de son utilisation (débit,
longueur, etc.).
L'anneau.
Les machines sont placées pour former une boucle fermée, réalisée
avec des liaisons point à point. Sur ce type de structure, chaque machine étant un
élément de la transmission, la défaillance d'une machine peut provoquer la
défaillance du réseau. Pour éviter cela, un dispositif court-circuite la connexion à la
machine ce qui permet aussi l'installation d'une nouvelle machine ou son retrait de
l'anneau sans provoquer l'arrêt complet de toutes les autres.
(*)
L'étoile.
(*)
Le bus.
(*)
Le Back-Bone
L'arborescence.
(****)
Le réseau maillé.
Il n'est pas rare de voir des entreprises (IBM, HP, etc.) utiliser un
réseau en étoile comme structure de l'immeuble et de créer de petits îlots avec des
réseaux en anneau. A ce sujet, cassons le cou à quelques idées reçues :
• Les réseaux en anneau sont souvent beaucoup plus rapides que les réseaux en
étoile ou en bus. En effet, ces derniers sont "saturables", c'est à dire qu'ils ont une
capacité au dialogue qui diminue avec le nombre de machines en communication,
tandis qu'un réseau en anneau offre toujours les mêmes performances. Voir le
paragraphe sur la sous-couche MAC.
• Les réseaux en étoile ou les bus utilisent parfois des ressources partagées
(réparties sur plusieurs machines) ce qui les rendent aussi sensibles que les
anneaux vis à vis de la défaillance d'une machine.
• Aucun réseau n'est d'avance conseillé pour une application et seul une étude
permet de dire que l'un est meilleur que l'autre.
Les Réseaux Locaux Industriels Page 72 / 186
IUT de CACHAN
Le médium.
Il n'y a de nos jours plus que 2 types de liaison filaire, d'une part, les
paires torsadées, d'autre part, les fibres optiques.
c
C'est cette même formule, transformée en Vϕ = qui permet d'obtenir
n
la vitesse de propagation d'une onde lumineuse dans une fibre optique. On définit n
comme l'indice du milieu. Dans les fibres optiques, l'indice du milieu est de l'ordre de
1,5, cela donne une vitesse de propagation de l’ordre de 200 000 Km/s. On peut
aussi noter que dans l'eau, la lumière atteint 75% de c et qu'elle est comprise entre
50 et 60% de c dans le verre.
Fréquence
Catégorie Débit Domaine d'utilisation
Maximum
Cat. 1 Câble téléphonique Abandonné
Cat. 2
Cat. 3 16MHz 10Mbits/s 10BASE-T
Cat. 4 20MHz 16Mbits/s Token Ring ou 100BASE-T4
Cat. 5 100MHz 100Mbits/s 100BASE-TX ou ATM
Cat. 5e 100MHz 1Gbit/s
Cat. 6 200MHz 1Gbit/s et + Ethernet Gigabit ou plus
Cat. 7 600MHz 1Gbit/s et +
Les catégories 3 à 6 valent aussi pour la connectique utilisée.
Cette norme est plus connue sous le nom de AWG (American Wire
Gauge), elle donne à partir d'un nombre le diamètre du conducteur mais aussi sa
résistance linéique. Tout du moins c'est ce qui était à l'origine prévu,
malheureusement il semble qu'il y ai eu quelques divergences. Toutefois, on peut
donner à partir de la référence AWG la section et la résistivité d'une ligne :
AWG
−
diamètre = 0,32"⋅2 6
AWG
r = µ ⋅2 3
avec µ = 3,06824 10 -4 Ω/m
Cette norme qui, à l'origine était utilisée pour les cordes de guitare
(monter d'un ton revient à prendre une corde en AWG+1), est désormais dédiée aux
câbles électrique. Il existe de très nombreux tableaux (pas tous très cohérents) pour
éviter de fastidieux calculs…
Bien que dans la très grande majorité des cas, le simple fait d'utiliser un
système de transmission différentiel soit amplement suffisant pour protéger les
informations qui circulent dans une paire torsadée, il existe une norme décrivant la
protection apportée à une ligne. Ce classement se fait par indice de protection.
Shielded-Foiled
Câble écranté-blindé S-FTP
Twisted Pair
Shielded-Shielded
Câble double blindage S-STP
Twisted Pair
Enfin S-STP est le nec plus ultra des liaisons en paire torsadée, chaque
paire est individuellement blindée et l'ensemble est blindé lui aussi. Ces lignes de
transmission sont virtuellement parfaitement isolées de tous les parasitages,
précisons qu'elles coûtent horriblement cher…
Pour toutes les paires torsadées de type UTP, FTP ou S-FTP, il existe une forme
sournoise de parasitage, la diaphonie, c'est à dire l'effet d'une paire sur une autre.
Page 75 / 186 Les Réseaux Locaux Industriels
Hugues ANGELIS
Multimode
à saut
d’indice
Multimode à
gradient
d’indice
Monomode
Les Réseaux Locaux Industriels Page 76 / 186
IUT de CACHAN
Les fibres optiques sont apparues au début des années 60, mais ce
n'est qu'au cours des années 70 qu'elles sont entrées dans le domaine des réseaux,
grâce à une meilleur maîtrise du silicium et de ses dopants qui a permis d'obtenir des
atténuations de l'ordre de 20dB/Km (au lieu de 1000dB/Km à l'origine).
Les fibres optiques travaillent dans le proche infrarouge (de 800 à 1600
nm de longueur d'onde). Elles sont réalisées en oxyde de silicium (SiO2) avec une
très faible densité d'ions OH- (ces ions ayant la fâcheuse tendance à absorber le
rayonnement en proche infrarouge). On dope en suite le cœur de la fibre à l'aide de
Germanium ou de phosphore, ce qui permet d'augmenter légèrement l'indice du
cœur. On dope aussi la gaine à l'aide de bore ou de fluor pour diminuer légèrement
son indice.
n2
= 0,99 ),
La gaine elle à un indice (n2) très proche de celui du cœur (
n1
pour un diamètre extérieur de fibre de 380µm pour les fibres à saut d'indice et de
125µm pour les fibres à gradient d'indice ou monomodes.
Fibres optiques
Paire torsadée
Toutes les illustration de cette page sont issues des cours en ligne de Intel(****)
Les Réseaux Locaux Industriels Page 78 / 186
IUT de CACHAN
La couche de Liaison.
L
a couche de liaison est l'une des couches les plus importantes des réseaux,
puisque c'est elle qui définit les trames à transmettre et qu'elle gère l'accès à la
ligne de communication. Ces 2 éléments étant extrêmement différents et
extrêmement importants, on a scindé, en 2 la couche de liaison, pour former la
sous-couche d'accès au médium (MAC qui en anglais veut dire MEDIUM ACCES
CONTROL), et la sous-couche de contrôle logique de la liaison (LLC qui en anglais
veut dire LOGICAL LINK CONTROL).
La sous-couche MAC.
Le protocole CSMA/CD.
La machine qui souhaite parler scrute la ligne, lorsque celle-ci est "à son avis"
libre, elle prend la parole et émet son message. Se faisant, elle continue de scruter
l'état de la ligne.
Exemple de collision.
T=t0.
A commence à
B C A émettre.
T=t1.
C détecte une
B C A occupation de la
ligne.
T=t2.
B commence à
B C A émettre.
T=t3.
On a une
B C A collision sur la
ligne.
T=t4.
B détecte la
B C A collision.
T=t5.
JAM A détecte la
B C A collision.
Les Réseaux Locaux Industriels Page 80 / 186
IUT de CACHAN
L
Ts = 2 ⋅
v
Donc si l’on connaît le time-slot, il faut maintenant que l’on ait une
conformité entre la durée du message et le time-slot, en effet, il faut que A puisse
comparer ce qu’il émet et ce qu’il reçoit, donc le message expédié doit être plus long
que le time-slot d’où une autre règle importante :
M MIN
Ts ≤
D
Où Mmin est la longueur minimale en bit du message et D le débit du réseau.
Cette phase d'attente est réalisée grâce à un facteur de collision (N) et par un
compteur de collision (k). Le temps d'attente après une collision est donc :
Tc = k ⋅ N ⋅ Ts
Eff =
∑ TI
∑ TI + ∑ TC
Où TI est le temps de transmission et TC le temps de contention.
Bien entendu, cette formule n'est valable que pour l'analyse pratique
d'un certain nombre de transmission.
Cette illustration est la copie de celle présentée par P Millet dans son ouvrage
"transmission et réseaux locaux", édité par MASSON.
Les Réseaux Locaux Industriels Page 84 / 186
IUT de CACHAN
Le protocole CSMA/NBA
Emetteur A R R R D R D R D R D
Emetteur B R R R R
Emetteur C R R R D R R
état du bus R R R D R D R D R D
Dans cet exemple, je ne présente que la notion d'état récessif, en aucun cas, cela ne
veut dire quelque chose pour le protocole.
Le protocole CSMA/DCR.
Cette méthode fait appel à une résolution déterministe des conflits, elle
permet donc de s'affranchir des calculs de Back-Off qui engendrent des
effondrements de réseau. L'autre avantage des méthodes déterministes, c'est l'accès
aux notions de temps réel, puisqu'on peut prédire le temps maximum de réponse à
une requête, qu'il y ait conflit ou pas.
Circulation du jeton
Une fois que les machines prioritaires ont transmis leurs données, le
niveau de priorité directement inférieur prend la parole, la machine disposant du jeton
vérifie que TREJ<OTR, si tel est le cas, le niveau de priorité a le droit au dialogue.
Lorsqu'il aura terminé son tour, la même opération se répétera pour les niveaux
inférieurs. Lorsque TREJ devient supérieur à OTR, on rend à nouveau la main au
niveau le plus prioritaire.
Bien entendu, ce n'est qu'une vision exhaustive des erreurs qui peuvent
se présenter, mais elle permet de comprendre un peu les techniques que l'on
retrouve sur la majeure partie des réseaux en anneau ou à boucle logique.
Outils indispensables.
Pourcentage d'occupation.
Efficacité du codage.
La grande différence entre les bus à jeton et les anneaux à jeton vient
essentiellement de la non-distribution des fonctions entre les machines puisque la
machine génératrice du jeton est aussi la machine chargée du contrôle de l'anneau, il
y a donc une machine prépondérante, on l'appelle le moniteur. Ce dernier est élu et
est chargé de détecter les pannes d'autres machines (ou leur déconnexion) en
contrôlant le nombre de fois où il va voir passer une même trame devant lui, au
moyen d'un FLAG nommé M pour moniteur.
A A
D B D B
1 2
J
C C
A A
D B D B
3 4
J
J
C C
Page 91 / 186 Les Réseaux Locaux Industriels
Hugues ANGELIS
A A
D B D B
5 6
J J
C C
A A
D B D B
7 8
J
C C
A A
J J
D B D B
9 10
C C
Légende :
Lorsque la machine qui disposait du jeton, fini sa tâche, elle place alors la valeur de
PR dans PJ puis libère le jeton. La machine qui a placé la valeur de PR pourra alors
récupérer le jeton.
Exemple :
Sur un anneau de 3 machines : M1, PT=1 ; M2, PT=3 ; M3, moniteur, PT=4.
Toutes les machines veulent parler. M3 crée le jeton, sans l'utiliser.
Contrôle d'accès de la trame : PJ.T.M.PR (T=0 : jeton libre, T=1 : jeton occupé)
avant M1 avant M2 avant M3
0.0.0.0 → 1.1.0.0 → 1.1.0.3
1.1.1.4 → 4.0.0.0 → 4.0.0.3
4.1.0.3 → 4.1.0.3 → 4.1.0.3
3.0.0.0 → 3.0.0.0 → 3.1.0.0
3.1.1.0 → 3.1.1.0 → 0.0.0.0
Il faut aussi chercher à analyser comment le réseau gère la
déconnexion des machines ou des problèmes de circulation. Sur détection d'une
erreur de transmission, le moniteur envoie une trame spéciale RING PURGE (purge
de l'anneau) pour réinitialiser l'interface réseau de toutes les machines de l'anneau.
Si l'erreur persiste, on effectue une nouvelle élection du moniteur, et si l'erreur
persiste encore, la trame BEACON est émise commandant à toutes les machines de
se placer en auto test.
Après l'auto test, les machines n'ayant pas détecter d'anomalie se reconnectent et
élisent un nouveau moniteur.
Eff =
∑T I
∑TI + délai
anneau de 10Km
Cette illustration est la copie de celle présentée par P Millet dans son ouvrage
"transmission et réseaux locaux", édité par MASSON.
On définit dans cette entité des fonctions permettant de créer des accès
vis à vis des couches supérieures, en particulier de la couche réseau, ou dans les
réseaux locaux, de la couche d'application. Ces points d'entrée sont nommés SAP
pour SERVICE ACCES POINT ou point d'accès pour le service.
Chaque SAP est repéré par une adresse codée sur 8 bits. Les 7 bits de
poids faible repèrent l'adresse individuelle, tandis que le 8ème bit définit le groupe
dont fait partie le SAP pour des accès groupés.
Couche réseau
SAP 2 SAP 2
SAP 2
Gestion
LLC
PDU
Sous-couche
MAC
Mais les SAP ne sont que des points d'accès, le corps du service LLC
est défini par 2 types de fonctions normalisées. Le type 1 ou service minimal, et le
type 2 où la sous-couche LLC prend en charge une grande partie des fonctions
indispensables au maintien des connexions.
Page 97 / 186 Les Réseaux Locaux Industriels
Hugues ANGELIS
Fonctionnement type 1.
Fonctionnement type 2.
Vers un type 3.
Les PDU utilisent les paramètres transmis aux primitives SAP pour
définir le paquet à transmettre. Le format de ce paquet est strictement défini et
normé ce qui le rend totalement compatible pour toutes les machines d'un réseau.
SSAP).
DSAP SSAP
76 54 3 21 0 76 543 21 0
D D D D D D D I/G S S S S S S S C/R
D : définition de l'adresse de destination.
S : définition de l'adresse de source.
I/G : individuel / groupé (1 si groupé, 0 si individuel)
C/R : commande / réponse (1 si réponse, 0 si commande).
Mais l'élément le plus important des PDU reste le (ou les) octet(s) de
contrôle. Ces éléments ont une signification qui permet de définir comment sont
réalisées les commandes, à qui elles s'adressent, ce qu'elles représentent. Pour
reprendre une analogie simple, on peut les considérer un peu comme le codage des
mnémoniques de l'assembleur, d'un coté, on présente un texte, de l'autre, on
récupère du "code machine".
Format I.
Format S.
Format U.
Type 1.
Attention, il ne faut pas croire qu'il n'y a aucun contrôle de réalisé lors
de la circulation des données, simplement, ils ne se situent pas à ce niveau.
Type 2.
Vers un type 3.
Les formats des mots de contrôle ne sont pas incompatibles entre eux,
on peut par exemple expliciter par des commandes de format U, l'établissement
d'une communication, puis utiliser un format I pour transmettre des données. Il n'y a
pas d'incompatibilité à ce niveau. Il est par contre totalement interdit de changer de
type de fonctionnement pendant une transmission.
Page 103 / 186 Les Réseaux Locaux Industriels
Hugues ANGELIS
Les couches 3, 4, 5 et 6.
R
espectivement les couches de réseau, transport, session et présentation. Les
quatre couches que nous allons "étudier" ici sont souvent absentes des
réseaux locaux industriels. Elles sont généralement utilisées pour les très
gros réseaux ou pour des systèmes multi-réseaux à architecture maillée, ce
qui me permet de les passer en grande partie sous silence. Je conseillerai donc à
ceux qui sont intéressés par une analyse plus fine de leur fonctionnement de se
reporter aux ouvrages que je site au début de ce document ou à l'étude de TCP-IP
en fin de document. Ceci dit, nous aborderons ici un point précis : comment rendre
inter opérable 2 réseaux.
Réseau ETHERNET
100Mbit/s
Serveur Stations
routeur de Terminaux
de base
travail
de Terminaux
données
La couche de réseau.
L
a couche de réseau a pour objectif d'amener le plus rapidement possible et par
le chemin " le plus court" les données de l'émetteur vers le récepteur en gérant
éventuellement les problèmes liés aux passage d'un réseau à un autre.
Cet exemple trouve son explication dans le fait que le secteur des
télécommunications publiques utilise le protocole X25 qui utilise le mode connecté
pour l'authentification des utilisateurs tandis qu'internet utilise le protocole TCP/IP qui
lui par contre utilise le mode non-connecté.
Les Réseaux Locaux Industriels Page 106 / 186
IUT de CACHAN
La couche d'application.
L
a couche d'application, c'est vous, mais pas seulement vous, c'est aussi
l'interface (graphique ou pas), la façon dont le logiciel présente ses données
(qui se caractérise en général par une incompatibilité des systèmes), et plein
d'autres petites choses. Cette couche n'est donc pas grande mais immense,
alors on va s'intéresser à certains points, typiques d'Ethernet .
Couche d'application.
APPLICATION ENTITY
ASE1 ASE2
CASE SASE
APPLICATION PROCESS
ASE3 ASE4
S’il n'existe qu'un seul format pour le CASE, il existe bien des versions
des SASE (exception faite d'un SASE spécial nommé ACSE que nous verrons plus
loin). Il est impossible de parler des SASE puisque cette application n'est pas un
standard unique, et qu'en général, elle n'est adaptée que pour des réseaux
spécifiques. Toutefois, les fonctions ACSE et CASE étant des standards, je vous
propose un petit lexique.
REQUEST
L'ensemble de ces primitives permet d'établir
A_ASSOCIATE INDICATION une association entre 2 machines.
RESPONSE
CONFIRM
REQUEST L'ensemble de ces primitives permet
A_RELEASE
INDICATION d'interrompre l'association de 2 machines
RESPONSE
CONFIRM
Fonction permettant d'interrompre l'association
A_ABORT REQUEST à la suite d'une erreur détectée par l'utilisateur
INDICATION
A_P_ABORT INDICATION Même chose mais détection du fournisseur
D
ans ce chapitre, on va (enfin) étudier le fonctionnement de quelques réseaux.
En particulier, il me semble logique de vous parler d'ETHERNET + TCP-IP, de
CAN et de I2C. Bien entendu, ce chapitre n'est pas exhaustif, et ne pourrait
pas l'être. En effet, le renouvellement quasi permanent des technologies ne le
permettrait pas.
Il faut noter que bon nombre de réseaux ne sont que des variantes des
réseaux les plus connus (ce qui à tendance à rendre l'offre encore plus difficile à
analyser), on retiendra pour l'exemple FIPIO qui est une version SENSOR BUS de
FIP et FIPWAY la version DEVICE BUS. Mais les exemples ne s'arrêtent pas là
puisque certains réseaux (comme CAN ou FIP, considérés comme des
technologies), sont utilisés comme des "supports" pour des applications, ce qui fait
qu'entre 2 réseaux basés sur CAN, il n'y a souvent que la couche 7 (couche
d'application) qui les rend incompatible (par exemple SDS, DEVICENET, VAN et
CAL ne sont que des applications spécifiques de CAN pour un type de
fonctionnement précis).
Le bus CAN.
L
e bus CAN est né en 1984 dans les ateliers BOSCH, initialement prévu pour
des applications automobiles, il s'est au fur et à mesure étendu pour former une
gamme industrielle complète. Les composants spécifiques CAN sont fabriqués
par les plus grands manufacturiers (PHILIPS, INTEL, MOTOROLA, SIEMENS,
NEC, THOMSON, NATIONAL SEMICONDUCTOR, etc.) et on considère que CAN
représente désormais un standard international.
Ainsi, une trame de donnée est obligatoirement suivie soit d'une trame
d'erreur, soit d'une trame de surcharge, soit d'un intertrame. Dans ce dernier cas, il
peut apparaître, après l'intertrame, à nouveau une intertrame, une trame de requête
ou de données.
Après une trame d'erreur, on peut voir soit un intertrame, soit une trame
de surcharge. Après une trame de surcharge, on peut voir apparaître une nouvelle
trame de surcharge ou un intertrame.
Les Réseaux Locaux Industriels Page 110 / 186
IUT de CACHAN
Le protocole CSMA/NBA
Le protocole CSMA/NBA est un protocole sans contention, en cas de
conflit, les machines s'arbitrent grâce aux valeurs "d'index" qu'elles envoient.
Emetteur A R R R D R D R D R D
Emetteur B R R R R
Emetteur C R R R D R R
état du bus R R R D R D R D R D
Trame de données
Le délimiteur de début.
Le délimiteur de début permet de définir le début de la trame. Il est
constitué d'un simple bit dominant ("0") qui permet de lancer une resynchronisation
des machines du réseau. La transmission du délimiteur n'est autorisée que lorsque le
code IDLE (prêt à transmettre) est détecté (intertrame).
Le champ d'arbitrage.
Le champ d'arbitrage est composé de 12 bits, 11 bits d'identification et
1 bit spécial nommé RTR ou REMOTE TRANSMISSION REQUEST (demande de
transmission à distance). Les 11 bits d'identification servent à définir le ou les
destinataires (on ne transmet pas une adresse mais un "descriptif" du message). Ils
servent aussi à définir le niveau de priorité des messages. C'est sur ce champ, qui
est définit lors de la mise en œuvre du réseau, que l'on réalise l'arbitrage du bus
(d'où son nom).
Il faut noter que toutes les machines lisent le message mais seules
celles destinataires du message sont susceptibles de l'utiliser. Les 11 bits sont
transmis dans l'ordre ID10 (MSB) à ID0 (LSB).
Le champ de contrôle.
Le champ de contrôle est composé de 6 bits, 4 permettent le codage de
la longueur du message et les 2 autres servent à définir la version du protocole
réseau utilisé.
Le champ de données.
Le champ de données est composé de 0 à 8 octets de données. La
taille de ce message est définie par 4 bits du champ de contrôle.
Le champ de CRC.
Le champ de CRC est composé de 16 bits. On a d'abord la séquence
CRC (15 bits), représentant le reste de la division des bits des champs précédents
de la trame par le polynôme suivant :
G ( x) = x15 + x14 + x10 + x 8 + x 7 + x 4 + x 3 + 1
Le code CRC du message est calculé sur tous les champs précédents
(début de trame, arbitrage, contrôle et données). Il ne tient pas compte du BIT-
STUFFING du message mais est lui-même soumis à cette règle.
Le champ d'acquittement.
Le champ d'acquittement est composé de 2 bits, d'un coté, le bit
d'acquittement (ACK SLOT), mis à 1 (récessif) par l'émetteur et mis à 0 (dominant)
par les machines réceptrices (il faut noter que toutes les machines doivent répondre,
y compris celles qui ne sont pas concernées par le message). De l'autre, le bit de
délimitation (ACK DEL) qui est un bit récessif.
La règle du BIT-STUFFING.
Champ d'arbitrage
Début de trame
Champ de contrôle
Longueur du
Bits réservés champ de
données
Champ Champ de
d'arbitrage données
IDE DLC0
R DLC3
Champ de Champ
données Champ de CRC d'acquittement
Séquence CRC
Délimiteur de CRC
Champ de Champ de
CRC Intertrame CRC Intertrame
Champ Champ
d'acquittement d'acquittement
émis renvoyé
Format des différents champs.
Page 115 / 186 Les Réseaux Locaux Industriels
Hugues ANGELIS
ERROR FLAG
Chaque fois qu'une erreur est détectée, les machines émettent une
trame d'erreur (active ou passive) et incrémente leur compteur d'erreur concerné de
8 unités. Tout message transmis avec succès permet de décrémenter le compteur
concerné d'une unité.
Page 117 / 186 Les Réseaux Locaux Industriels
Hugues ANGELIS
Dans notre premier exemple, La machine C est la seule qui souhaite parler, les
machines A et B n'ayant rien à transmettre durant toute la phase présentée.
Segment de Point
synchronisation d'échantillonage
On peut donc en déduire que la transmission d'un bit est la somme d'un
nombre de périodes de l'horloge système. Ce nombre est nommé NNBT (pour
Nominal Bit Time) et se décompose de la façon suivante :
NNBT = 1 + NSEG1 + NSEG2
2 ⋅ NNBT 3 ⋅ NNBT
≤ (NSEG1 + NSYNC ) ≤
3 4
Toutefois, dans certains cas, ces règles ne peuvent être atteinte, dans
ce cas, il existe des limites qui sont simplement liées à la cohérence du système ou à
une vision moins restrictive de la norme :
3+SA ≤ NNBT ≤ 25
M
1 ≤ NSEG1 ≤ 16
2+SA ≤ NSEG2 ≤ 8
M
1 ≤ NSJW < NSEG2
Exemple de calcul.
On souhaite transmettre à l'aide d'un composant CAN doté d'une
horloge à 16MHz des signaux à un débit de 100Kbit/s en ne prenant qu'un seul
échantillon, sur une ligne de 50m.
1
Un bit doit durer : 10µs = avec une période d'horloge
100Kbit/s
1
de 62,5ns = , d'où :
16MHz
10µs
NBRP ⋅ NNBT ⋅ 2 = ⇔ NBRP ⋅ NNBT ⋅ 2 = 160
62,5ns
Les Réseaux Locaux Industriels Page 122 / 186
IUT de CACHAN
On en déduit :
TSCL = 2 · NBRP · TOSC
TSCL = 2 · 5 · 62,5ns = 625ns
Selon le critère qui impose le rapport entre NNBT et NSEG1 + NSYNC, on a
2 limites qui sont :
16 ⋅ 2 16 ⋅ 3
≤ 1+ NSEG1 ≤
3 4
10,66 ≤ 1 + NSEG1 ≤ 12
On choisira donc NSEG1 le plus grand possible d'où :
NSEG1 = 11
NSEG2 = 16 - NSYNC - NSEG1 = 4
On reprendra ce calcul un peu plus loin pour prendre en compte la
longueur souhaitée de la ligne, lors du paragraphe sur les temps de propagation et
sur la tolérance de l'horloge.
Noeud 1 Noeud 30
CAN_H
120Ω 120Ω
CAN_L
D'où les niveaux de tension :
5V
4V CAN_H
3,5V
3V
2,5V
2V
1,5V
1V CAN_L
Noeud 1 Noeud 20
2,2kΩ
CAN_H
3,25 V
1,75 V
CAN_L
2,2kΩ
5V
4V
CAN_H
3,25V
3V
2V
1,75V
CAN_L
1V
tRX ou tTX
Adaptateur CAN Adaptateur CAN
tCBL
Adaptateur CAN
Contrôleur CAN
Pour TTX = TRX = 40ns et TSD = TOSC = 62,5ns, si l'on souhaite une
longueur de ligne d'au moins 40m, on trouve :
L 40
TCBLMIN = MIN = = 182ns
vϕ 2,2 ⋅ 10 8
( )
t PROP = 2 ⋅ TTX + TRX + TSD + TCBLMIN = 2 ⋅ (40 + 40 + 62,5 + 182) ⋅ 10 −9 = 649ns
Comme on a la formule suivante :
t t
t PROP < (N SEG1 − N SJW + 1) ⋅ TSCL ⇔ N SEG1 − N SJW + 1 > PROP ⇔ N SJW < N SEG1 + 1 − PROP
TSCL TSCL
⎛ 649 ⎞
N SJW ≤ 11 + 1 − ⎜ ⎟ ⇔ N SJW ≤ 11 + 1 − 2 ⇔ N SJW ≤ 10
⎝ 625 ⎠ entier
Alors NSJW = 3.
Le bus I2C
L
e bus I2C est né en 1992 quand sa première version fut normalisée par l’IEEE.
Ce bus, à l’origine conçu pour l’interfaçage des périphériques d’un calculateur,
est une "évolution" du bus parallèle IEEE 488 précédemment étudié. Son
principe repose sur l'utilisation d'un bus d'instrumentation série (donc mieux
protégé et moins coûteux que le bus parallèle HPIB).
Le bus I2C est une liaison synchrone, trifilaire, d'un débit variant entre 0
et 100Kbaud, multimaître et basé sur un double mode de transfert de données
(maître/esclave ou producteur/consommateur). Nous verrons plus loin la différence
entre ces 2 modes de fonctionnement, mais pour commencer intéressons-nous aux
échanges sur le bus.
Les 3 lignes utilisées par le bus I2C sont SCL (pour System CLock),
SDA (pour Serial DAta) et enfin un fil de masse pour identifier les niveaux logiques
transmis. La ligne SCL est la propriété du maître de l'échange, elle définie l'horloge
qui rythme la fréquence des échanges entre les 2 machines en communication et
avec laquelle on doit être synchronisée , tandis que la ligne SDA sert à l'échange des
données du producteur vers le consommateur. Les données présentes sur le bus
sont valide uniquement quand la ligne SCL est à l'état haut.
Fonctionnement.
Trame fondamentale.
Le principe du bus I2C est de transmettre via une liaison trifilaire des
informations numériques sur des distances de quelques mètres, il est donc
volontairement très limité dans ses capacités de transfert. Ainsi, une trame I2C
élémentaire est composée des champs suivants :
SDA 1 2 3 4 5 6 7 8
Acquittement.
Le bus I2C n'est pas à proprement parler un bus conçu pour des
transmissions à grande distance. En effet, comme il utilise des circuits électriques à
collecteur (ou à drain) ouvert, il convient d'utiliser des résistances de "Pull-up" pour
définir le niveau de tension sur la ligne lorsque les transistors sont bloqués. Ces
résistances doivent avoir un valeur précise de façon à ne pas risquer d'endommager
les composants permettant l'accès au médium. Or le simple fait d'utiliser des
résistances impose une définition de la capacité parasite maximum tolérée par le bus
pour atteindre le débit recherché. Cette capacité est la somme des capacités de
couplage (capacités internes des composants branchés sur la ligne) et de la capacité
linéique du canal. Globalement, cette impédance ne peut pas dépasser 400pF (soit
pour un bus à 4 machines, une ligne de l'ordre de 2 mètres).
Il convient de noter que l'utilisation du bus I2C, soit en mode Fast (400Kbaud), ou en
mode High Speed (3,4Mbaud), implique que la charge capacitive tolérée soit réduite
à 200pF et on doit utiliser des composants actifs pour établir les niveaux de tension,
de façon à engendrer la circulation d'un courant de 3mA sur la ligne.
Les Réseaux Locaux Industriels Page 132 / 186
IUT de CACHAN
Adressage.
Arbitrage.
Encore une fois, du fait de la liaison avec les lignes du réseau, les états
récessifs sont écrasés par les états dominants. Ainsi le message contenant le plus
de bits dominants est aussi le plus prioritaire.
Modes de transmissions.
Dans tous les cas, après avoir envoyé son dernier octet ou en l'absence
d'un acquittement, le maître émet une commande de Stop.
Mode combiné.
Evolution.
Fast Mode.
Ethernet.
E
thernet est le standard le plus connu dans le monde des réseau, bien qu'étant
parmi les moins performant sur le marché, son utilisation mondiale en a fait
l'outil par excellence de toutes les entreprises. Conçu en 1980 par Bob Metcalf
(le fondateur de 3Com) financé par Intel, DEC et Xerox dans leurs laboratoires de
Palo-Alto (Silicon Valley), il est une interface peu onéreuse permettant de connecter
des machines via une topologie de bus (et par la suite étoile) en vue de partager des
ressources.
Bien que ne faisant pas réellement partie du monde des réseaux locaux
industriels au sens strict, Ethernet n'en reste pas moins un réseaux local d'entreprise.
Le fait est qu'il n'est plus rare du tout de voir des automates connectés à Ethernet
sinon à Internet via Ethernet.
Nous allons donc étudier tout d'abord la trame standard d'Ethernet puis
les connexions utilisées. Enfin nous nous intéresserons au chapitre suivant au
réseau TCP-IP.
Trame fondamentale.
Le préambule.
Le type.
Le champ de donnée.
Le FCS.
(****)
Ce gros câble doit avoir une longueur qui est un multiple impaire de
23,4m (23,4m, 70,2m, 117m, 163,8, etc.) sans pour autant dépasser 500m soit au
plus 491m soit 21 segments de câble coaxial. Son atténuation ne doit pas dépasser
8,5dB pour 500m à 10MHz et sa résistivité doit être inférieure à 10mΩ/m.
Ce câblage est dénommé câblage coaxial fin (ou yellow cable), son
atténuation grimpe en flèche à 4,6dB pour 100m à 10MHz, il est aussi plus lent à
propager l'onde électromagnétique que le gros câble coaxial.
L'utilisation d'un câblage plus évolutif devint vite une nécessité, d'où
l'implémentation par le Comité IEEE de câblages en paire torsadées. Cette
technologie permet d'utiliser des fils torsadés non blindés donc un type de câblage
extrêmement économique. En utilisant une topologie non plus en bus mais en étoile,
en utilisant la désormais célèbre prise RJ45.
(****)
(****) Trame Ethernet incluant une encapsulation LLC normalisée IEEE 802.2
Mais même si l'adresse est paire, il circule sur le réseau (on peut le
constater avec un espion) des trames dont les adresses sont impaires. Ce sont des
trames à destination de groupes de cartes (MULTICAST) voir même de toutes les
cartes (BROADCAST).
TCP/IP.
C
'est en 1957 que le "Department Of Defence" (le ministère de la défense
américain) en réponse au vol du premier Sputnik soviétique, initie le projet
DARPA (Defence Advanced Research Project Agency) pour permettre aux
USA de reprendre le leadership dans les domaines technologiques
(accessoirement), mais surtout militaire.
C'est aussi en 1969 que Steve Crocker publie la première RFC (Request For
Comment). Les RFC sont les moyens d'échanger des informations ou de décrire des
procédés, voir de résumer des connaissances. Il arrivera que l'usage dévie (voir la
RFC 527).
En 1981, le CSNET est créé pour les universitaires non reliés à ARPANET, il
est financé par la NSF. En France on voit apparaître le Minitel.
En 1985, le 1er mars la racine .com est créée vont suivre : .edu, .gov et .org en
juin et .uk en juillet.
En 1987, plus de 10 000 nœuds sont connectés aux réseaux mondiaux. Plus
de 1 000 RFC ont été créées.
En 1994, Le trafic mensuel sur Internet dépasse les 1013 octets (dix mille
milliards d'octet). Premier spam (envoi de courrier en masse) par une société
d'avocat de l'Arizona. 22 pays rejoignent NSFNET (dont la Chine). Apparition des
premières publicités sur internet. AOL et Compuserve sont les principaux FAI
(Fournisseur d'Accès à Internet).
En 1996, les backbone ont des débits variant entre 155 et 622 Mbit/s.
29 nouveaux pays rejoignent internet (on peut noter que la Guadeloupe est dans
cette liste avec l'extension .gp). Les piratages se multiplient (NASA, CIA, Air
Force,…).
Présentation
Le protocole IP.
L
e protocole IP a pour rôle de router l'information, c'est à dire de permettre le
transport des informations d'un réseau vers un autre à travers plusieurs
routeurs, donc dépasser la couche 2 pour franchir le mur du routeur, et atteindre
sa cible en prenant le plus court chemin. Pour cela on utilise un nouveau format
d'adressage, l'adresse IP.
Entête IP
IP 192 10 15 20 IP 192 10 15 20
& Masque 255 255 255 0 + Masque 255 255 255 0
= Réseau 192 10 15 0 =Machine 255 255 255 20
IP C0 A F 15 IP C0 A F 15
& Masque FF FF FF 0 + Masque FF FF FF 0
= Réseau C0 A F 0 =Machine FF FF FF 15
Les Réseaux Locaux Industriels Page 154 / 186
IUT de CACHAN
Un paquet IP de 1496 octets (la taille doit être divisible par 8) est
envoyé par la machine A, à destination de la machine B. Il contient 20 octets d'entête
et 1476 octets de données.
Page 157 / 186 Les Réseaux Locaux Industriels
Hugues ANGELIS
Dans certain cas, il peut arriver que le datagramme IP soit plus petit
que le format minimum du champ de donnée du réseau qui encapsule, on utilise
alors les 2 champs de l'entête IP (IHL et TLF) pour définir le format réel du
datagramme, et on accole au datagramme des bits de remplissage pour compléter la
trame.
Les options n'utilisant qu'un seul octet pour leur définition, on ajoute
systématiquement des octets de remplissage pour compléter le paquet de 4 octets
commencé par la définition de l'option. On parle alors de PADDING.
Les Réseaux Locaux Industriels Page 160 / 186
IUT de CACHAN
IP et Ethernet.
Les 3 paramètres qui doivent être définis pour toutes les machines
utilisant IP sont respectivement : l'adresses IP, le masque de sous réseau et
l'adresse IP de sa passerelle (qui doit être sur le même réseau physique que la
machine).
Si elle ne reconnaît pas alors l'adresse de son propre réseau, elle sait
que seule la passerelle est à même de faire transiter son message sur le Web, elle
va donc essayer de contacter sa passerelle. Pour se faire, elle va utiliser la même
procédure que celle lui permettant de contacter une machine sur le même sous
réseau.
Entête ARP.
Ces données sont alors stockées dans une table dynamique (qui
s'efface si on ne la rafraîchit pas au bout de 30 secondes). Ainsi, on efface
automatiquement les données entrées dans la table si elles ne sont plus utilisées.
Les Réseaux Locaux Industriels Page 162 / 186
IUT de CACHAN
Entête ICMP
La commande PING.
Le message renvoyé par la cible est lui aussi composé d'un entête IP et
d'un entête ICMP où le type vaut 8 et le code vaut 0, le champ d'identification et le
numéro de séquence sont ceux de la requête d'écho (le message émis).
La commande TRACEROUTE.
Fonctionnement de IP.
Réseau Ethernet
IP : 192.0.1.0 Autre réseau
(ATM ou
FDDI ou
Ethernet)
Réseau Ethernet
IP : 192.0.2.0
192 0 1 2
255 255 255 0
192 0 1 0
192 0 1 3
255 255 255 0
192 0 1 0
192 0 1 3
255 255 255 0
192 0 1 0
192 0 2 3
255 255 255 0
192 0 2 0
Les réseaux étant différents, la machine source sait qu'elle ne peut pas
discuter directement avec sa cible, elle doit donc impérativement dialoguer avec son
routeur pour obtenir le transfert des informations vers la cible.
Le protocole RIP
Le principal protocole utilisé par les routeurs est le protocole RIP (pour
Routing Information Protocol). Celui ci permet à un routeur de définir
automatiquement et dynamiquement (c'est à dire sans intervention extérieure) le plus
court chemin à suivre pour atteindre une cible.
2 A B 1
192.0.4.0
192.1.0.0 1
E 3 3 F
1 10.1.0.0
192.0.2.0
1 C D 2
2 192.0.3.0 1
Dans ce réseau, toutes les boîtes sont des routeurs. Ainsi par exemple,
si on analyse le routeur A, on a la table RIP suivante :
Avant Après
A ce point les 4 réseaux 192.0.X.0 sont tous connus, pour mieux comprendre le
cheminement utilisé, on va synthétiser ces résultats sous la forme d'un tableau.
La trame RIP
La trame RIP est encapsulée dans une trame IP. Elle se compose d'un
nombre variable de champs. Toutefois, au minimum, la trame RIP est composée de
24 octets. La trame suivante est en octets.
1 1 2 2 2 4 8 4
C V ZERO AFI ZERO ADDRESS ZERO METRIC
Relativisons bien les choses, RIP n'est pas un protocole de routage très
performant à grande échelle. Pour des applications "locales", il est simple et facile à
utiliser, par contre à grande échelle il n'est pas du tout adapté (limitation à 15 HOP
du routage, trame trop longue pour peu d'informations). On utilise donc d'autres
protocoles.
Il existe une évolution du protocole RIP qui est RIP2, cette nouvelle
version est plus puissante que RIP, mais somme toute assez peu différente de son
aïeul. Nous n'étudierons donc pas ce protocole.
Page 173 / 186 Les Réseaux Locaux Industriels
Hugues ANGELIS
Pour les zones intra-domaine, RIP est encore le plus employé, mais le
protocole OSPF (Open Shortest Path First) est en passe de le détrôner. OSPF
permet de contrôler l'état des liens, il est aussi plus rapide à se stabiliser que RIP.
On trouve aussi les protocoles IGRP (Interior Gateway Routing Protocol) et E-IGRP
(Enhanced IGRP).
Pour les zones Inter-domaine, on trouve des protocoles tels que BGP
(Border Gateway Protocol), IS-IS (Intermediate System to Intermetiate System),
OSPF, etc…
TCP et UDP
L
e protocole IP permet, comme on l'a vu dans le chapitre précédent, de
transférer une information vers une machine cible, de façon non connecté, c'est
à dire en ne s'occupant ni de la façon dont les données sont transmise, ni de
l'ordre dans lequel elles arrivent, ni même en se posant la question de la capacité de
la machine cible à les recevoir. Il manque donc un élément très important dans le
dialogue sur les réseaux, le contrôle du flux. C'est le rôle de la couche de transport
autrement dit de TCP ou de UDP.
Avant de détailler ces deux protocoles, il existe une notion importante liée aux
protocoles de transport, c'est la notion de port.
Les numéros de port sont codés sur 16 bits (de 0 à 65 535) et ils sont classés
selon 3 catégories.
Le client utilise donc un de ses ports (un ephemeral port) non utilisé par une
de ses application pour initier le dialogue avec un Well Known Port du serveur.
Prenons l'exemple d'une communication HTTP entre un client et un serveur, le client
utilisera un port quelconque (X) pour parler au port 80 du serveur. Celui ci lui
répondra depuis le port 80 vers le port X du client.
Une Socket doit toujours être unique c'est à dire qu'il ne doit jamais il y
avoir deux socket utilisant en même temps un même port source de la machine
source et un même port de destination de la machine de destination.
UDP.
Le pseudo entête UDP n'est pas transmis, mais il est utilisé pour
calculer le checksum. Il est composé de 5 champs.
TCP
De plus, tous les messages n'ont pas une taille leur permettant de tenir
en une seule trame. Ils sont donc découpés (à l'origine par paquets de 536 octets
mais depuis qu'Ethernet s'est généralisé, on utilise des paquets de 1460 octets). Ce
principe, aussi appelé segmentation, transforme les messages en petits paquets,
émis par la suite dans des trames IP.
Entête TCP
Fonctionnement de TCP.
Initialisation de la connexion
La machine à l'origine
de la requête SYN reçoit la trame
SYN + ACK. Elle répond en
retournant une trame ACK avec un numéro de séquence qui vaut x+1 et un numéro
d'acquittement qui vaut y+1.
Dialogue
La machine réceptrice
va attendre de récupérer les 3
segments et va envoyer une trame
d'acquittement avec un numéro
valant x+4381 (3x1460+1). Elle
valide ainsi la réception des 3
segments.
Perte de segment.
Toutefois dans certains cas, il se peut qu'un segment soit perdu. Dans
ce cas, la machine réceptrice va elle même signaler cette perte à l'émetteur qui en
réaction va renvoyer le segment perdu.
Fermeture de la connexion
Définition du MSS
Le MTU (Maximum Tranfert Unit) est une valeur implantée dans chaque
équipement réseau, il définit en fonction du matériel mis en œuvre, la taille maximale
du champ de données. Le MSS (Maximum Segment Size) est obtenu en retirant 40
octets au plus petit MTU des réseaux traversés.
Une fois cette valeur définie, elle est utilisée pour tous les envois. Si un
routeur intermédiaire utilise un MTU inférieur à celui défini lors de l'initialisation, lors
de la transmission du premier segment, le routeur retournera une trame ICMP
d'erreur (type 3, code 4) à l'expéditeur du segment puisque le bit DF (Don't
Fragment) est actif.
L'automate TCP
Dans le premier cas, notre machine envoie un segment FIN, qui nous
fait passer à l'état FIN wait-1. En réponse, la machine distante retourne un ACK, qui
fait passer la machine à l'état FIN wait-2. Puis la machine distante envoie un
segment FIN et notre machine lui retourne un ACK. Cela fait passer la machine en
mode Time-Wait où elle va attendre la durée de vie de 2 segments avant de fermer
définitivement la connexion.
Le DNS.
Les tables DNS sont des tables statiques souvent couplées à des
caches qui eux sont gérés dynamiquement (l'absence de sollicitation vers un
domaine entraîne son élimination du cache, au contraire, des sollicitations répétées
vers une machine la rendent quasi permanente).
Formalisme DNS.
Comme il est assez rare de donner pour nom à une machine "www", il
s'agit en fait d'un surnom qu'une machine s'est vue attribuée. On parle alors d'alias.
Mieux encore, 2 machines peuvent avoir le même nom (et même dans
certains cas, la même adresse IP) si elles ne fournissent pas les même services, par
exemple, un serveur de courrier peut avoir le même nom qu'un serveur www si tous
Les Réseaux Locaux Industriels Page 186 / 186
IUT de CACHAN
Approche itérative
Approche récursive.