Time-Sensitive Networking è un set di standard IEEE 802 che estendono la funzionalità delle reti Ethernet con l’obiettivo di una comunicazione deterministica e a elevata disponibilità.
Le reti Ethernet nascono negli anni ’80 per applicazioni Office, diventando molto popolari anche per un throughput per quei tempi molto elevato, pari a 10 Mbps. Ma queste reti non erano utilizzabili in applicazioni dove era richiesto il realtime, in quanto basate sul protocollo CSMA/CD, Carrier Sense Multiple Access/Collision Detection, sviluppato a partire dalle specifiche della società Xerox che aveva a suo tempo ideato la rete locale denominata, appunto, Ethernet. Banalizzando, questo metodo di accesso di tipo distribuito e non deterministico può essere così schematizzato:in una riunione senza la presenza di un moderatore, quando un partecipante vuole prendere la parola semplicemente inizia a parlare, posto non vi sia già qualcuno che sta parlando ("mezzo" trasmissivo occupato). Se il "mezzo" è libero (nessuno stà parlando), potrebbe comunque verificarsi che due persone iniziano contemporaneamente a parlare. Allora, sentendo un'altra voce oltre alla propria, entrambi presumibilmente si fermano, ma poi uno dei due cerca subito di riprendere il suo discorso e, con ogni probabilità inizierà prima dell'altro, che attenderà pazientemente il proprio turno. Trasferendo questa narrazione a una rete locale reale, come risultato si avranno molteplici collisioni tra trasmissioni dati, e si è cercato di porvi rimedio con un approccio switched network, con suddivisione della rete in domini di collisione, e poi dando priorità ai frame Erhernet tramite un approccio QoS, Quality of Service. Ma anche così si potevano garantire latenze accettabili solo fino a un certo punto, senza dimenticare il meccanismo store-and-forward degli switch commerciali, meccanismo che consiste nell’attendere la completa ricezione di di un messaggio prima di inviarlo in rete, da cui problematiche varie; per esempio un messaggio è ritardato di un tempo che dipende dalla sua dimensione e se si supera la capacità di storage di uno switch, il messaggio viene rigettato, a inoltre messaggi lunghi possono bloccare una porta dello switch per un tempo altrettanto lungo. Successivamente, per ovviare al fatto che l’implementazione classica di Ethernet non aveva sufficienti capacità per un’auspicata “bandwidth reservation”, i produttori di automazione hanno iniziato a sviluppare le proprie estensioni Ethernet con approcci diversi, per esempio usando Ethernet come medium di trasporto per un certo bus di campo in “piggyback style”, come per Powerlink, o tramite procedure di time slicing come in Profinet IRT. Per farla breve, nel tempo sono apparse, consolidandosi, molteplici soluzioni deterministiche basate su Ethernet.
TSN non è uno standard
Per quanto si parli di standard TSN, in concreto il riferimento è un set di standard sviluppati dal Time-Sensitive Networking Task Group, dell’IEEE 802.1 Working Group, formatosi nel 2012 dalla ridenominazione dell’esistente Audio/Video Bridging Task Group, con l’obiettivo di definire meccanismi per trasmissione time-sensitive di dati su reti Ethernet, quindi si hanno multipli “elementi”. Tra i principali: IEEE 802.1AS-Revision-Timing & Synchronization for Time-Sensitive Applications (Timing & Synchronization); IEEE 802.1Qbv-Enhancements for Scheduled Traffic-Time Aware Shaper (Forwarding and Queuing); IEEE 802.1Qbu & IEEE 802.3br–Packet Pre-emption; IEEE 802.1CB–Frame Replication & Elimination; IEEE 802.1Qcc–Enhanced Stream Reservation Protocol (SRP); IEEE 802.1Qci-Per Stream Filtering & Policing; IEEE 802.1Qch-Cyclic Queuing & Forwarding; IEEE 802.1Qcr–Asynchronous Traffic Shaping. Altri sarebbero da citare tenendo conto delle continue evoluzioni e perfezionamenti di TSN, che viene anche considerata come una soluzione LAN-level che può lavorare con Ethernet non-TSN, ma dove la “tempestività” è garantita solo all’interno della TSN LAN. Da evidenziare inoltre che è possibile raggruppare standard TSN diversi a seconda della problematica di rete che si vuole risolvere. In sintesi, le key features della tecnologia Time Sensitive Networking possono essere così riassunte: Time Synchronization, Traffic Scheduling e System Configuration