Comunicația orientată pe transmisia de pachete prin punte de rețea a devenit un standard global. Este utilizată, în prezent, în sisteme de diferite dimensiuni și complexitate, de exemplu în servere și aeronave, dar și în dispozitive mici controlate de la distanță, în senzori la distanță și în multe aplicații IoT (Internet of Things).
Cadrele Ethernet sau pachetele IP pot fi transmise transparent prin diferite medii fizice, deoarece rețeaua Ethernet este decuplată de stratul fizic. Astfel, dispozitivele conectate prin diferite tipuri de rețele pot comunica fără probleme între ele, de exemplu, un telefon mobil cu o conexiune celulară și o unitate de control conectată în rețea INICnet™ (ISO21806) într-o mașină (prin intermediul unității telematice sau al gateway-ului vehiculului). Pachetele IP sunt direcționate de la expeditor la receptor.
Până aici totul este bine, dar cum rămâne cu timpii de transmisie, latența, jitterul și pachetele pierdute? Din nefericire, Ethernet-ul original nu este determinist, adică nu există niciun control asupra momentului și a cantității de date pe care dispozitivele au voie să le trimită și nici asupra rutei prin care sunt transmise pachetele. Timpii de transmisie între două dispozitive variază constant, iar pachetele pot fi pierdute dacă rețeaua este congestionată. Acest comportament este incompatibil cu aplicațiile critice, în cazul cărora trebuie să se asigure o livrare cu latență redusă.
Tehnologiile proprietare de bus și de rețea care prezintă latență redusă și determinism reprezintă doar o soluție limitată. Tendința pe toate piețele se îndreaptă către tehnologii standardizate și deschise, independente de orice producător particular. În plus, tehnologiile standard nu necesită nici cunoștințe speciale, nici gateway-uri complexe și costisitoare.
Prin urmare, comunitatea a studiat punctele slabe ale Ethernet-ului pe parcursul mai multor ani. De-a lungul timpului, au apărut diverse soluții pentru a îmbunătăți comportamentul în timp real al Ethernet, inclusiv AVB/TSN.
Audio Video Bridging (AVB) a fost inițiat în 2008 de un grup de lucru al IEEE. Obiectivul de atunci era îmbunătățirea transmiterii de date audio și video critice din punct de vedere al timpului prin Ethernet. Termenul AVB include nu numai standardul IEEE 802.1BA, ci și următoarele standarde:
- IEEE 802.1AS: sincronizare în timp
- IEEE 802.1Qav: reglementarea transmiterii și a stocării intermediare a cadrelor în switch-uri
- IEEE 802.1Qat: alocarea dinamică a lățimii de bandă pentru fluxurile audio și video
- IEEE 1722: protocol de transport
- IEEE 1722.1: configurarea dinamică a rețelelor și dispozitivelor compatibile AVB
Standardul a fost finalizat și publicat în 2011. Acesta a început să fie utilizat pentru prima dată într-o mare varietate de aplicații multimedia, iar mai târziu, în aplicații industriale, în special pentru transmiterea comenzilor critice din punct de vedere al timpului sau a datelor de la senzori. Pe măsură ce interesul pentru AVB în cazul aplicațiilor non-multimedia a crescut, a fost creat un nou grup de lucru numit Time Sensitive Networking (TSN) în cadrul IEEE. Grupul TSN a adoptat standardele grupului AVB și se adresează unei game mult mai largi de aplicații în domeniile audio-video profesional, industrial, auto și aerospațial.
În domeniul industriei auto, standardele AVB originale sunt încă folosite, dar, în unele cazuri, versiunile revizuite ale grupului TSN sunt deja în uz. Acest articol tratează în principal standardele AVB, care pot fi considerate echivalente cu TSN.
Sincronizare în timp utilizând gPTP
Generalized Precision Time Protocol (gPTP – IEEE 802.1AS) reprezintă baza comună a tuturor sistemelor compatibile cu AVB. Scopul său se aseamănă cu cel al protocolului Network Time Protocol (NTP), bine cunoscut în lumea calculatoarelor. NTP asigură sincronizarea ceasurilor calculatoarelor în cadrul unei rețele locale la un timp de referință cu o precizie de câteva milisecunde în cele mai bune condiții. Această precizie este absolut suficientă pentru computere și servere, dar este puțin precisă pentru aplicațiile sincrone sau pentru cele în care timpul este critic.
gPTP asigură o bază de timp mult mai precisă în dispozitivele Ethernet, de obicei la nivel de microsecunde sau, în cel mai bun caz, chiar de nanosecunde. În esență, gPTP constă din două mecanisme: distribuția timpului de referință și calcularea timpului de transmisie.
Timpul este distribuit de la unul sau mai multe noduri de referință temporală (“master gPTP”, conform standardului IEEE) către unul sau mai mulți clienți (“slaves gPTP”, conform standardului IEEE). Prin analogie cu procedura IEEE 1588 în 2 pași, gPTP trimite întotdeauna două cadre succesive: “Sync” și “Sync Follow-Up”. Clienții utilizează marcajele de timp incluse pentru a-și reseta ceasurile locale la timpul de referință, asigurându-se că toate dispozitivele din rețea utilizează exact aceeași bază de timp.
Cu toate acestea, o bază de timp foarte precisă poate fi asigurată numai dacă se ia în considerare și timpul de transmisie necesar în rețea. Acest lucru se realizează prin efectuarea în permanență a așa-numitelor măsurători ale întârzierilor în pereche (peer-delay) între noduri direct vecine. Totalul timpilor de transmisie măsurați pentru fiecare nod dă valoarea întârzierii în pereche, în funcție de care se corectează ulterior timpul gPTP.
Protocoale de transport
IEEE 1722 – AVTP
Protocolul de transport audio-video este protocolul de transport standard pentru transmiterea de date audio/video, precum și de date critice din punct de vedere al timpului prin Ethernet AVB. Este un protocol ISO/OSI Layer2 simplu, care este utilizat pentru a accesa dispozitivele prin intermediul adreselor MAC. Prin urmare, nu este necesară integrarea unei stive IP complete, ceea ce contribuie la reducerea la minimum a dimensiunii, costurilor și complexității proiectelor.
IEEE 1733 – RTP/RTCP
RTP și RTCP (IETF RFC 3550) sunt protocoale de rețea bazate pe IP pentru transmiterea de date audio și video prin Ethernet. Acestea sunt utilizate deja de mulți ani în toate tipurile de dispozitive industriale și de consum, inclusiv în camerele de supraveghere video și în dispozitivele de interfonie. IEEE 1733 este o adaptare a RTP/RTCP pentru transmiterea sincronă prin AVB și, prin urmare, o alternativă bazată pe IP la IEEE 1722.
Adaptarea traficului
O rețea Ethernet este formată, de regulă, dintr-un număr mare de puncte finale (calculatoare, dispozitive electronice) și punți (switch-uri, gateway-uri etc.). Indiferent de protocolul de transport selectat, datele sunt încapsulate în cadre Ethernet, care sunt rutate de la expeditor prin mai multe punți (hopuri) până la receptor. Modul și momentul în care sunt transmise cadrele nu sunt deterministe. Punțile de pe traseu vor transmite cadrele mai repede sau mai încet (store-forward, cut-through). În caz de congestie a rețelei, cadrele sunt, uneori, puse în buffer pentru o anumită perioadă de timp și, în cel mai rău caz, pot fi chiar pierdute.
Sistemele industriale și auto necesită o latență scăzută, deterministă și, mai presus de toate, o transmisie fiabilă, fără riscul de a pierde cadre. Modelarea traficului (parte din IEEE 802.1Q – Quality of Service) răspunde acestei nevoi. ‘Traffic shaping’ definește strategiile de tratare a cadrelor de către punți în funcție de prioritatea lor. Există mai multe standarde pentru Traffic Shaping, cum ar fi:
- IEEE 802.1Qav: Forwarding and Queuing Enhancements for Time-Sensitive Streams (FQTSS), denumit uneori Credit Base Shaper (CBS).
- IEEE 802.1Qbv: Enhancements for Scheduled Traffic, denumit în general Time Aware Shaper (TAS).
- IEEE 802.1Qch: Coadă ciclică și redirecționare
- IEEE 802.1Qcr: Adaptarea traficului asincron
Sectorul auto utilizează în principal CBS și TAS.
CBS – Credit Based Shaper (802.1Qav)
Atunci când se utilizează Credit Based Shaper, fiecare dispozitiv Ethernet primește un credit care este utilizat pentru a trimite cadre. Atât timp cât valoarea creditului rămâne pozitivă, dispozitivul poate continua să trimită cadre. Odată ce creditul este epuizat, dispozitivul nu mai poate trimite cadre. Atunci trebuie să aștepte până când creditul este reînnoit.
Această strategie asigură o utilizare eficientă a lățimii de bandă. Nu există sloturi predefinite. Punctele finale care au nevoie să trimită date intermitent își pot acumula creditul și îl pot utiliza dintr-o dată. Configurarea unei rețele AVB utilizând CBS este relativ simplă.
TAS – Time Aware Shaper (802.1Qbv)
Spre deosebire de Qav, strategia IEEE 802.1Qbv se bazează pe un model de sloturi temporale. În loc să se bazeze pe cantitatea de date care urmează să fie trimisă, se concentrează pe frecvența transmisiunilor. Nodurile nu mai pot trimite pentru perioade de timp arbitrare, dar este garantat că li se permite să transmită cu regularitate. Acest lucru înseamnă că se obține o latență mult mai mică și mai deterministă.
Totuși, dezavantajul Qbv este că lățimea de bandă a rețelei nu este întotdeauna utilizată eficient. Dacă punctele finale nu își folosesc sloturile, acestea se pierd și, prin urmare, se pierde și lățimea de bandă. Dar acest efect poate fi compensat prin utilizarea preempțiunii cadrelor (IEEE 802.1Qbu).
Interoperabilitate cu AVNU
Arhitecții de sisteme pot utiliza o mare varietate de componente disponibile pentru a implementa AVB. În funcție de cerințele sistemului, pot fi implementate diferite subseturi AVB. Deși acest lucru este util pentru a reduce numărul componentelor hardware – implementând doar ceea ce este efectiv necesar – ar putea cauza probleme de interoperabilitate, deoarece dispozitivele de la diferiți furnizori pot să nu suporte exact aceleași caracteristici AVB. Acest lucru este agravat de faptul că, uneori, inginerii pot interpreta standardele IEEE în diferite feluri.
Pentru a asigura interoperabilitatea între furnizori, așa-numita “Specificație funcțională și de interoperabilitate Ethernet AVB” a Alianței AVNU în domeniul automobilelor definește o referință pentru subseturile AVB și parametrii asociați care ar trebui implementați în fiecare dispozitiv. Dispozitivele compatibile cu AVB pot fi testate pentru compatibilitatea AVNU extern, de către casele de testare sau intern, utilizând echipamente de testare dedicate.
Implementare practică
În aplicațiile din lumea reală, rețelele compatibile AVB cuprind mai multe componente: switch-uri, PHY-uri și puncte finale. Toate switch-urile și punctele finale trebuie să suporte AVB pentru a obține performanța dorită.
Datorită standardelor IEEE, specificațiilor AVNU și OpenAlliance (NOTĂ: verificați marca R/TM), componentele de la diferiți furnizori, cum ar fi PHY-urile și switch-urile, sunt, astăzi, perfect interoperabile.
Totuși, implementarea AVB în punctele finale rămâne o sarcină complexă și anevoioasă. Aceste sisteme sunt, deseori, dezvoltate pe baza unor SoC-uri sau a unor microcontrolere ‘high-end’, în care trebuie integrate foarte mult software: un sistem de operare în timp real, Autosar și o stivă AVB care, adesea, trebuie să fie licențiată de la o terță parte. Așa-numitele puncte finale AVB, cum ar fi LAN9360 de la Microchip, reprezintă o alternativă interesantă. Aceste puncte finale constau într-un tip de controler Ethernet inteligent cu protocoale AVB integrate. Prin urmare, AVB poate fi implementat imediat ca o soluție bazată pe hardware, eliminând necesitatea dezvoltării de software.
Concluzie
AVB/TSN a atins un grad ridicat de maturitate de la înființarea grupului AVB în cadrul IEEE. “Automobilele AVB” sunt deja pe șosele și tot mai mulți producători de echipamente originale se implică. Datorită tehnologiei sale deschise și standardizate, o mulțime de echipamente hardware și software interoperabile sunt deja disponibile sub formă de COTS optimizate. Viziunea așa-numitei “All-Ethernet Car”, care a fost pusă sub semnul întrebării în trecut, nu mai este o utopie.
Autor: Francis Ielsch, AIS Product Marketing Manager
Microchip Technology | https://www.microchip.com