Sunteți pe pagina 1din 23

Partea I.

Modele, componente i mecanisme specifice comunicaiilor n sisteme de conducere

Capitolul 6
Protocoale standard la nivelul legturii de date
Protocoale DLC - Data Link Control dou subniveluri: Controlului accesului la mediu (MAC Medium Access Control) asigur condiiile n care se poate iniia transmisia unui mesaj Controlul legturii de date (LLC - Logical Link Control). stabilete regulile de adresare i formatul mesajului verificare primar a corectitudinii acestuia. 6.1. Tehnici de acces la mediul de comunicaie Comunicaiile multipunct alocarea unei resurse unice mediul de comunicaie la mai muli utilizatori nodurile reelei. Majoritatea nodurilor nu au nimic de transmis cea mai mare parte a timpului Doar o mic parte dintre acestea au n mod curent ceva de transmis.

Cap.6. Protocoale standard la nivelul legturii de date

Problem de competiie, determinat de: caracterul asincron al cererilor de transmisie; imposibilitatea de a se observa reciproc. Informaia de control pentru organizarea i coordonarea nodurilor trebuie transferat pe acelai canal de comunicaie cu informaia propriu-zis. Soluie: interferena distructiv: cnd dou sau mai multe noduri ncearc s transmit simultan, va apare o interferen distructiv ntre transmisiile lor i nici unul nu va avea acces la mediu. 6.1.1. Clasificarea strategiilor de control al accesului Criteriu prezena sau absena unor informaii pentru cooperarea dintre noduri: neefectuarea nici unui control al accesului; efectuarea unui control static; efectuarea unui control dinamic.

Partea I. Modele, componente i mecanisme specifice comunicaiilor n sisteme de conducere

Strategie fr control - nu exist nici o restricie asupra accesului la mediu Orice nod poate ncerca s transmit atunci cnd are nevoie, fr ateptare i ignornd ceilali utilizatori. Vor apare interferene distructive (coliziuni) - o fraciune din capacitatea canalului de comunicaie se irosete. Strategiile cu control static - utilizarea unui sistem rigid de controale fixe. Fiecrui nod i este permanent alocat o poriune din capacitatea total a canalului pentru utilizare exclusiv. Se evit coliziunile, dar apar numeroase deficiene: nodurile tind s aib cereri de transmisie n avalan - o mare parte a capacitii canalului se pierde datorit raportului real vrf/medie al cererilor de acces. apar timpi mori - perioade n care canalul ar fi putut fi utilizat de alte noduri, care au date de transmis, dar care se irosesc din cauza alocrii lor permanente la un nod care momentan nu are date de transmis. Strategiile cu control dinamic o parte din capacitatea canalului este destinat exclusiv controlului se identific acele noduri care au n mod curent date de transmis rezult o mai bun utilizare pe ansamblu a canalului

Cap.6. Protocoale standard la nivelul legturii de date

rmne o penalizare cauzat de strngerea informaiilor de control. Dou categorii de tehnici de acces la mediu: tehnici de acces aleator pot s apar coliziuni caracter nedeterminist; tehnici fr coliziuni caracter determinist. Caracterul determinist - un nod care dorete s transmit poate s o fac ntrun interval de timp finit; creeaz posibilitatea de control strict al timpilor de livrare a datelor. Criteriu - gradul de implicare al nodului surs n realizarea controlului Strategiile de control al accesului se pot baza pe una din urmtoarele decizii fundamentale: transmisie controlat de nodul surs transmisie necontrolat de nodul surs Strategiile controlate de nodul surs - tehnici de arbitrare. Arbitrarea - determinarea nodului care poate transmite - realizat naintea transmisiei propriu-zise.

Partea I. Modele, componente i mecanisme specifice comunicaiilor n sisteme de conducere

Exist dou tehnici de arbitrare: Rezervarea Selecia. Tehnicile de rezervare - tehnici de arbitrare implicite Rezervarea n avans de cuante de timp (time slots) pentru alocarea canalului. Cerere de rezervare transmis: pe un canal specializat pe acelai canal - o gestiune particular a cererilor. Dac exist mai multe cereri de rezervare, conflictele trebuie rezolvate prin arbitrare, conform unui anumit algoritm. Odat rezervarea fcut, nodul trebuie s respecte planificarea pn cnd rezervarea va fi modificat. Astfel, fiecare nod va ti dinainte cnd poate s transmit i nu va fi nevoie de nici un stimul extern pentru aceasta. Tehnicile de rezervare - necesit o sincronizare strict a nodurilor, pentru a se asigura c fiecare nod cunoate exact cnd este planificat cuanta sa de utilizare a canalului.

Cap.6. Protocoale standard la nivelul legturii de date

Exist dou tipuri de rezervare: Rezervare static Rezervare dinamic. Tehnicile statice - prealocarea cuantelor de timp Exemplu: tehnica TDMA (Time Division Multiplexing Access). Dezavantaj: dac un nod nu are nimic de transmis n cuanta care i este alocat, aceasta va rmne neutilizat Tehnicile dinamice - permit modificarea alocrii cuantelor de timp Utilizare mai eficient a canalului. Tehnicile de selecie - tehnici de arbitrare explicite Se bazeaz pe realizarea unei tranzacii ntre: nodul surs i un anumit nod din sistem, denumit arbitru de canal (sau master) Arbitrul - este capabil s determine, dupa un algoritm de arbitrare specific, cnd anume celelalte noduri pot s utilizeze canalul.

Partea I. Modele, componente i mecanisme specifice comunicaiilor n sisteme de conducere

Arbitrarea - se realizeaz nainte ca nodul surs s fie efectiv conectat la canal. Timpul n care un nod are acces la canal ar putea deveni arbitrar de mare i diferit de la un nod la altul. n particular, acesta ar putea avea o valoare fix, egal de exemplu cu o cuant de timp de la tehnicile de rezervare. Tehnicile de rezervare - cazuri particulare ale tehnicilor de selecie. Tehnicile de selecie: tehnici centralizate dispozitivul hardware utilizat pentru transferul controlului este concentrat la nivelul unei singure locaii unul dintre nodurile conectate la canalul de comunicaie sau o unitate separat. tehnici descentralizate. Logica de control al accesului la canal este distribuit la nivelul nodurilor din reea. Strategiile cu transmisie necontrolat de ctre nodul surs: cu acces aleator cu control prin competiie.

Cap.6. Protocoale standard la nivelul legturii de date

6.1.1. Tehnici de acces fr coliziuni Asigur transmisia fr conflicte. Utilizeaz protocoale de acces centralizate sau distribuite cu funcii de planificare ciclic, care conduc la ntrzieri de acces limitate. Nodurile se consult ntre ele prin mijloace speciale, nainte de a se decide care dintre ele va obine accesul la mediu. Definiie - inel logic (sau virtual) al unui protocol cu consultare ordinea ciclic n conformitate cu care nodurilor conectate n reea li se d dreptul de a se conecta la mediul de comunicaie. 6.1.1.1. Tehnica master/slave Tehnic centralizat de gestionare a accesului la mediu; Un nod special (master) iniiaz i intermediaz toate comunicaiile din reea. Celelalte noduri (slave) ateapt cereri de la master i furnizeaz rspunsuri specifice. Masterul - un rol activ. Nodurile slave - pasive. cerere transmis de ctre master - este precedat de adresa nodului slave Nodul slave adresat va recepiona mesajul.

Partea I. Modele, componente i mecanisme specifice comunicaiilor n sisteme de conducere

Celelalte noduri slave vor ignora mesajul. Un nod slave nu transmite dect mesaje (de rspuns) solicitate de ctre master. Pentru operaii speciale de sincronizare care nu necesit confirmri sau rspunsuri din partea nodurilor slave, este posibil i implementarea unei comunicaii de grup, folosind tehnici de difuzare de grup sau total. n acest caz adresa nodului slave se nlocuiete cu adresa de grup sau adresa global. Aceast tehnic garanteaz accesul egal al nodurilor slave la reea ntr-un interval de timp limit - un caracter puternic determinist. Interogarea periodic a nodurilor slave permite detectarea nodurilor defecte i limitarea fluxului de date adresat acestora. Dezavantajul principal - existena punctului de cdere catastrofal care este nodul master rezervarea nodului master alegerea unui nou master (multimaster). Eficien sczut a comunicaiei ntre nodurile slave: Pentru ca o informaie s ajung de la un nod slave la altul trebuie s fie prezent de dou ori n reea, trecnd pe la nodul master.

Cap.6. Protocoale standard la nivelul legturii de date

Reele care folosesc aceast tehnic de acces la mediu: AS Interface Profibus DP 6.1.1.2. Tehnica jetonului Topologiile de tip magistral - dreptul circulant de acces sau jetonul. Numai un singur nod, cel care deine jetonul, are dreptul de a transmite date Celelalte noduri pot doar s primeasc date sau s atepte primirea jetonului pentru a transmite propriile date n reea. Jetonul un mesaj specific circul n reea de la un nod la altul pn cnd un nod dorete s transmit date. Aceasta: pstreaz jetonul; transmite datele; ateapt confirmarea recepionrii acestora paseaz jetonul urmtorului nod din lista circular (token passing). Numeroase reele industriale care folosesc tehnica jetonului: ARCNet Interbus-S Sercos, Seriplex.

Partea I. Modele, componente i mecanisme specifice comunicaiilor n sisteme de conducere

6.1.2. Tehnici de acces aleator Dac nici un alt nod din reea nu transmite n acelai moment cu nodul curent, sau dac transmisia acestuia nu este nsoit de erori, aceasta este considerat reuit. n caz contrar, fie c a aprut o coliziune, fie au aprut erori de transmisie pe canal. Problema erorilor aprute pe canal nu constituie n mod direct obiectul unei strategii de control al accesului, ci doar indirect. Ca i erorile, coliziunile au un efect distructiv asupra informaiei vehiculate. Orice strategie de acces aleator depinde de posibilitatea de detectare a coliziunilor. Este necesar o reacie invers din partea canalului de comunicaie, prin care transmitorul s fie ntiinat de apariia unei coliziuni i, deci, de necesitatea retransmisiei mesajului. Dar i retransmisia poate conduce la o nou coliziune. Nodurile ale cror transmisii au euat vor trebui ca, printr-un algoritm specific de rezolvare a conflictelor, s-i poat planifica n timp retransmisiile, astfel nct s ajung, pe ct posibil, la minimizarea sau chiar eliminarea riscului de coliziune.

Cap.6. Protocoale standard la nivelul legturii de date

6.1.2.1. Tehnica CSMA/CD Carrier Sense Multiple Access / Collision Detection detectare a coliziunilor la nivelul mesajului. Toate nodurile sunt echivalente logic, ascult linia i transmit mesaje n reea numai dac nu detecteaz activitate pe linie. Chiar i n timpul propriilor transmisii, nodurile continu s asculte linia i dac detecteaz o distorsiune a acestora (datorit unei coliziuni), atunci renun (toate) i planific o nou ncercare la intervale de timp aleatoare. Se ncearc astfel s se minimizeze posibilitatea apariiei unei noi coliziuni, fr ns a o exclude total. Nu se poate determina cu precizie timpul de acces. Acesta depinde de intensitatea traficului i de perioadele de ateptare nainte de retransmisii. Utilizrile industriale ale acestei tehnici sunt eficiente doar la niveluri coborte ale traficului n reea. 6.1.2.2 Tehnica CSMA/BA Collision Sense Multiple Access / Bitwise Arbitration difer de CSMA/CD prin modul de detectare a coliziunilor la nivel de bit.

Partea I. Modele, componente i mecanisme specifice comunicaiilor n sisteme de conducere

Nodurile - au asignate prioriti unice (adrese) i dac apare o coliziune atunci ctig nodul care are prioritate mai mare (adresa mai mic). Acesta i continu transmisia, celelalte renun i vor rencerca de ndat ce linia redevine liber. Prin asignarea sistemului de prioriti - se poate asigura o tratare difereniat a nodurilor Nodurile de prioritate ridicat obin accesul n defavoarea celor mai puin prioritare. Accesul continu s rmn nedeterminist. Depinde de intensitatea traficului i de numrul de coliziuni. Reele industriale care utilizeaz tehnica CSMA/BA: DeviceNET SDS Lonworks. 6.2. Protocoale de control a legturii de date Protocoale orientate pe caracter (Byte Control Protocols - BCP) - funcia de control a legturii de date este ndeplinit de un set de caractere speciale, numite caractere de control.

Cap.6. Protocoale standard la nivelul legturii de date

Protocoale orientate pe bit (Bit Oriented Protocols - BOP) - controlul legturii de date se face prin utilizarea uneia sau a cel mult dou secvene de bii. Comunicaia sincron, dar i asincron. 6.2.1. Protocoale de comunicaie orientate pe caracter (BCP) Un mesaj - se transmite sub form de blocuri de date - blocuri BCP.
Caractere de control S Numr de S O Adres ordine al Comand Confirmare T H blocului X E T X LRC sau CRC Cmp de verificare erori

Date

Cmp de comand (antet)

Cmp de text

Ele sunt compuse din: un cmp de comand (antet sau header) un cmp de text (datele propriu-zise) un cmp de verificare a erorilor sau terminator de bloc

Partea I. Modele, componente i mecanisme specifice comunicaiilor n sisteme de conducere

Drept delimitatori de cmp sau pentru comenzi i confirmri se folosesc caractere de control specifice codului utilizat pentru reprezentarea informaiei (ASCII, EBCDIC etc.).
Caracter de control SOH STX EOT ENQ ACK NACK SYN ETB CAN
Spre

Valoare (hexa) 01 02 03 04 05 06 16 17 18

Semnificaie Start Of Header Start Of Text End Of Transmission ENQuiry ACKnowledge Negative ACKnowledge SYNchronization End Transmit Block CANcel

Mod de utilizare marcheaz nceputul cmpului antet marcheaz nceputul cmpului text terminarea normal a legturii de date cere stabilirea unei legturi de date confirm recepia fr erori a unui bloc infirmare (au aprut erori) caracter de sincronizare (SYNC) indic terminarea transmisiei unui bloc indic abandonarea transmisiei mesajului curent

exemplu, n cadrul codului ASCII este prevzut un subset de caractere de control, din care o parte sunt destinate transmisiilor de date. La transmisie, un mesaj este mprit n mai multe blocuri numerotate.

Antetul unui bloc BCP conine informaii auxiliare: privind adresa sistemului surs sau destinaie;

Cap.6. Protocoale standard la nivelul legturii de date

tipul blocului (date, comand sau confirmare); numrul blocului n cadrul mesajului, dac este un bloc de date. Cmpul de text - apare numai n blocurile de date i poate s conin: caractere ale codului folosit sau caractere i secvene de caractere transparente fa de acest cod. Problema transparenei - se pune n cazul transmisiei de date binare. Caracterele de control utilizate de protocol nu trebuie s apar n cmpul de text. n caz contrar, ele vor fi interpretate la recepie implicit drept cuvinte de control i nu drept date. Implementarea unui mod de transmisie transparent este specific fiecrui protocol n parte. Asigurarea integritii unui mesaj - prin asigurarea integritii fiecrui bloc de date din care este compus. n acest scop, fiecare caracter din bloc poate s conin informaii de detectare a erorilor, aa cum este cazul bitului de paritate adugat la sfrit de caracter (VRC).

Partea I. Modele, componente i mecanisme specifice comunicaiilor n sisteme de conducere

n plus, fiecare bloc conine astfel de informaii n cmpul de verificare a erorilor. Ele pot fi de tip LRC - adic suma modulo 2 a tuturor caracterelor din bloc cu excepia celor de control i a informaiei transmis transparent; de tip CRC - dac se utilizeaz coduri cu redundan ciclic. 6.2.2. Protocoale de comunicaie orientate pe bit (BOP) Protocoalele de tip BOP - mesaje formate din cadre (frames). Cadrele - blocuri de date, deosebirea principal fa de blocurile BCP - ele pot asigura funcionarea corect a legturii de date cu numai unul sau dou caractere specifice de control. Delimitarea nceputului i sfritului unui cadru - cu ajutorul unui singur caracter, numit delimitator sau FLAG. Are practic un rol similar cu cel al caracterului de sincronizare, SYN, din protocoalele BCP. Cmpurile care urmeaz nu mai sunt separate de caractere de control, ca n protocoalele BCP, ci ele sunt uor de identificat datorit poziiei lor fa de nceputul cadrului.

Cap.6. Protocoale standard la nivelul legturii de date

Cmpurile de adres, de comand i de verificare a erorilor au fiecare o lungime fix, n timp ce cmpul de informaie are o lungime variabil. Aceste protocoale sunt adecvate multipunct de tip master/slave. implementrii comunicaiei de date

Delimitator

Adres

Comand

Informaie

Verificare erori

Delimitator

1 sau mai 1 sau 2 Rest CRC: 0 sau mai multe 01111110 multe caractere caractere (oricte pentru CRC-16 sau 01111110 caractere de 8 bii HDLC, multiplu de 8 bii CCITT de 8 bii pentru SDLC)
Sistemul coordonator (master) transmite un cadru ctre un sistem slave, dup ce n prealabil i-a precizat adresa n cmpul corespunztor. Sistemele subordonate (slaves) caut n permanen pe linie secvena delimitator-adres.

Partea I. Modele, componente i mecanisme specifice comunicaiilor n sisteme de conducere

Dac adresa proprie coincide cu cmpul adres recepionat, sistemul slave valideaz recepia cadrului; Altfel, intr din nou n ateptarea secvenei delimitator-adres. Dup recepia complet a cadrului (detectarea delimitatorului de sfrit de cadru) se verific corectitudinea mesajului. Dac datele sunt eronate i cadrul trebuie retransmis, sistemul slave transmite un cadru de infirmare ctre master. Dac datele recepionate sunt corecte i necesit un rspuns din partea sistemului slave, acesta pregtete i transmite unul sau mai multe cadre de rspuns ctre master. Orice cadru transmis de un sistem slave poart, n cmpul special prevzut n acest scop, adresa sistemului slave respectiv. Cmpul de comand - determin tipul cadrului i numrul de ordine al acestuia n contextul mesajului. Sistemul master l folosete pentru a indica sistemului slave ce operaie trebuie s execute. Sistemul slave l folosete pentru a rspunde despre modul n care a realizat operaia solicitat de master.

Cap.6. Protocoale standard la nivelul legturii de date

Cmpul de informaie are o lungime variabil. Poate conine date n orice cod binar. Problema transparenei transmisiei - se reduce la faptul c ntre cei doi delimitatori ar putea s apar o succesiune de 6 bii de 1 ncadrai de bii de 0, care ar fi interpretat n mod eronat ca fiind un delimitator de cadru. Pentru a elimina aceast posibilitate, dup transmisia delimitatorului de nceput de cadru, sistemul transmitor numr biii succesivi de 1 i insereaz n mod automat, dup cel de-al 5-lea bit 1, un bit 0 (excepie face delimitatorul de sfrit de cadru).
1 2 3 4 5 6 Date Inserare bii 0 Cod NRZI 1 2 3 4 5 6 1 2 3 4 5 6 7 Bit 0 inserat 1 2 3 4 5 6 1 2 3 4 5 6 7 Bit 0 inserat 1 2 3 4 5 6 7

Partea I. Modele, componente i mecanisme specifice comunicaiilor n sisteme de conducere

n cazul n care receptorul primete 5 bii succesivi de 1: dac bitul imediat urmtor este 0, acesta se elimin n mod automat i se continu recepia dac este 1 atunci se consider c s-a detectat un delimitator de nceput sau de sfrit de cadru. Inserarea automat de zerouri n semnalul transmis pe linie rezolv parial i problema pstrrii sincronismului ntre transmitor i receptor, deoarece limiteaz lungimea irurilor de bii 1 la 5. Rmne de rezolvat: limitarea irurilor lungi de bii 0. O metod frecvent utilizat - NRZI (Non Return to Zero Inverted). Starea semnalului transmis pe linie nu se schimb fa de momentul anterior dac trebuie transmis un bit 1, dar se schimb dac trebuie transmis un bit 0. Se observ c semnalul transmis pe linie poate avea cel mult 6 bii 1, respectiv cel mult 6 bii 0 succesivi. La recepie - se realizeaz mai nti decodificarea NRZI i apoi eliminarea zerourilor inserate, pentru pstrarea transparenei.

Cap.6. Protocoale standard la nivelul legturii de date

excepie - transmisia unei secvene ABORT, care const dintr-un ir de cel puin 7 bii 1 consecutivi. Prezena unei astfel de secvene pe linie indic receptorului c trebuie s abandoneze recepia cadrului curent i s intre n ateptarea urmtorului cadru. Secvena delimitator i secvena ABORT sunt cele dou secvene care realizeaz sincronizarea n comunicaia sincron de tip BOP. Modul n care se aplic metodele de pstrare a transparenei i a sincronismului - mai important dect mprirea biilor pe caractere este ordinea de succesiune a biilor ntr-un cadru, indiferent de caracterele din care fac parte. Cmpul de verificare a erorilor - se completeaz cu restul mpririi polinomului asociat irului de bii ai unui cadru (cu excepia celor doi delimitatori i a biilor 0 inserai pentru pstrarea transparenei) la un polinom generator: CRC-16: (g(X)=X16 + X12 + X5 +1) CCITT: (g(X)=X16 + X15 + X2 +1). Toate operaiile suplimentare pe care le necesit funcionarea unui protocol BOP:

Partea I. Modele, componente i mecanisme specifice comunicaiilor n sisteme de conducere

codificare/decodificare pentru asigurarea transparenei; inserie/eliminare zerouri; generare/control CRC; cutare delimitator; recunoatere adres

- implementate n hardware de ctre controlere specializate (controlere de comunicaii).