Sei sulla pagina 1di 304

Alma Mater Studiorum - Universit di Bologna

Facolt di Ingegneria Dipartimento di Elettronica, Informatica e Sistemistica Corso di Laurea in Ingegneria Elettronica Ingegneria e tecnologie dei Sistemi di Controllo

PROSPETTIVE DI ETHERNET COME BUS DI CAMPO NELLAUTOMAZIONE INDUSTRIALE

Tesi di Laurea di: Gianluca Casadio

Relatore: Prof. Ing. Andrea Tilli Correlatori: Prog. Ing. Alberto Tonielli Prof. Ing. Carlo Rossi

Anno Accademico 2005 2006 Sessione seconda

Le TESI di Laurea, possono essere pi o meno originali, possono richiedere pi o meno tempo, possono essere pi o meno interessanti per chi le legge e per chi le scrive Ringrazio i miei genitori per la pazienza avuta e per avermi dato questa opportunit.

INDICE INTRODUZIONE.......1 Capitolo 1 RETI LAN E WAN 1.1 Introduzione...5 1.2 Tipi di topologie di rete.....8 1.3 Cablaggi.......11 1.4 Modi di accesso al mezzo trasmissivo della rete.....14 1.5 Wide Area Network (WAN)...16 1.6 Reti Wireless...19 1.7 Bibliografia..21 Capitolo 2 ARCHITETTURA ISO/OSI 2.1 Descrizione architettura.......23 2.2 Pila e protocolli....25 2.3 Livello 1: Strato fisico.....27 2.4 Livello 2: Data link layer.........................................28 2.5 Livello 3: Network layer..........................................29 2.6 Livello 4: Transport layer............................................30 2.7 Livello 6: Session layer...........31 2.8 Livello 6: Presentation layer........32 2.9 Livello 7: Application layer.........33 2.10 Bibliografia..34 Capitolo 3 ETHERNET 3.1 Introduzione.................35 3.2 Codifica Manchester........39 3.3 Lo strato di collegamento di Ethernet......41 3.4 Sottostrato MAC......42 3.5 Protocollo CSMA/CD......43
I

3.6 Sottostrato LLC...47 3.7 Frame Ethernet............49 3.8 Algoritmo di backoff esponenziale binario.........53 3.9 Ethernet classica..........................................55 3.10 Fast Ethernet............................................63 3.11 Gigabit Ethernet...........................................68 3.12 Bibliografia..72 Capitolo 4 DISPOSITIVI DI RETE E VLAN 4.1 Introduzione.............73 4.2 Ripetitore.................77 4.3 HUB.............78 4.4 BRIDGE..............79 4.5 SWITCH..............84 4.6 Reti locali virtuali (VLAN).....88 4.7 Bibliografia..94 Capitolo 5 INTERNET PROTOCOL SUITE 5.1 Introduzione.....95 5.2 Modello TCP/IP e Modello ISO/OSI.........98 5.3 Incapsulamento..........101 5.4 Protocollo IP..104 5.5 Indirizzi IP.109 5.6 I protocolli dello strato Trasporto......113 5.7 Protocollo UDP......116 5.8 Protocollo TCP......119 5.9 Traduzione indirizzi IP in indirizzi locali..126 5.10 Router........132 5.11 Instradamento (Routing IP).......................................134 5.12 Tabella di instradamento.......137 5.13 Routing..139 5.14 Criteri di ottimalit per algoritmi di routing......144
II

5.15 Bibliografia146 Capitolo 6 BUS DI CAMPO 6.1 Introduzione...147 6.2 Evoluzione della comunicazione nellindustria.....149 6.3 Sistemi di comunicazione nellindustria....154 6.4 Bus di campo.....157 6.5 Requisiti di un bus di campo.........161 6.6 Criteri di selezione di un bus di campo.........163 6.7 Vantaggi introdotti dai bus di campo........165 6.8 AS-I (Actuator Sensor Interface)...........................................167 6.9 Sercos Interface.....................................168 6.10 Foundation Fieldbus (FF)......................................170 6.11 Interbus-S...................................172 6.12 Modbus..........................................174 6.13 CANbus (Controller Area Network).........................................176 6.14 Profibus (Process Fieldbus)...................................181 6.15 Tabelle comparative sui bus di campo......193 6.16 Bibliografia197 Capitolo 7 ETHERNET INDUSTRIALE 7.1 Introduzione...199 7.2 Esempio di confronto tra soluzioni diverse.......205 7.3 Real-Time (RT).....207 7.4 Ethernet e il determinismo.............................................211 7.5 Ethernet e la ridondanza................................................218 7.6 Protocollo IEEE 1588 (PTP).............221 7.7 Lhardware in Ethernet Industriale........228 7.8 Foundation Fieldbus HSE......237 7.9 Sercos III....240 7.10 Modbus TCP..........246 7.11 Ethernet/IP.................................................250
III

7.12 Ethernet Powerlink (EPL).................................................255 7.13 EtherCAT.......................................................263 7.14 PROFINET....................269 7.15 Tabelle comparative sui bus di campo Ethernet........288 7.16 Bibliografia291 OSSERVAZIONI CONCLUSIVE.........293 _______

IV

INTRODUZIONE Automazione deriva dal termine inglese automation, forma contratta del vocabolo automatization. Questo termine stato coniato durante gli anni 40 per descrivere quei procedimenti in cui vengono utilizzati meccanismi per sostituire lintervento intellettuale e/o manuale delluomo nellesecuzione di determinate operazioni. Queste operazioni possono consistere in funzioni di servizio, comando e controllo di una macchina e/o di un procedimento industriale. Il concetto di automazione si evoluto nel tempo con linvenzione degli elaboratori elettronici e lo sviluppo di concetti di logica-macchina e logica-controllo. Oggi la si pu definire come la realizzazione di operazioni automatiche dirette da comandi programmati, in combinazione con misurazioni di controlli di azione, retroazione e decisione. Fino agli anni 70 lautomazione ed il controllo di processo erano attuati tramite sistemi a logica cablata con numerevoli inconvenienti tipo: la grande complessit e lenorme ingombro dei quadri elettrici che in caso di guasti o malfunzionamenti richiedevano molto tempo per raggiungere la causa ed la successiva riparazione con la conseguente lunga durata del fermo impianto e perdita di produzione. Intorno alla fine degli anni 70 le aziende che producevano sistemi elettrici ed elettronici per lindustria, hanno cominciato a indirizzare i loro laboratori di ricerca, nello sviluppo ed utilizzo dei sistemi a microprocessore per realizzare automazioni e controlli di processo, in quel momento attuate tramite sistemi di logica cablata. Cos questo nuovo prodotto basato su microprocessore che poteva essere unico per tutte le applicazioni, e personalizzabile per ogni impianto a seconda delle esigenze del cliente, avrebbe costituito unaltra piccola rivoluzione industriale. Lo sviluppo di questa tecnologia per diverse richieste del mercato industriale, si divise in due macro categorie: sistemi a controllo distribuito (DCS) o a reti di controllori programmabili (PLC) che interagiscono con il processo tramite la strumentazione di campo. Lapplicazione di una o dellaltra soluzione dipende largamente dalla natura del processo o del sottoprocesso controllato (continuo, a lotti, discreto, ibrido), dalla sua dimensione ed in ultima analisi dal rapporto tra prestazioni richieste allautomazione e il budget a disposizione dellazienda acquirente. I DCS furono concepiti per elaborare grandi quantit di dati e sviluppi matematici complessi, con la possibilit di essere collegati tra loro in rete. Essi rispondevano alle esigenze dell'industria chimica,
1

farmaceutica, petrolchimica che aveva bisogno di elaborare segnali analogici per il controllo di processo (molto costosi). I PLC furono concepiti per elaborare piccole quantit di dati prevalentemente di tipo digitale, con il chiaro scopo di sostituire la logica cablata. Essi rispondevano alle esigenze dei costruttori di quadri elettrici per il controllo di macchine, e sostituivano rel, contaimpulsi, temporizzatori (poco costosi). Allinizio lautomazione era appannaggio di pochi grandi utenti industriali in settori specifici: chimica, petrolchimica, produzione di energia, ma lintroduzione dei microcontrollori e dei microprocessori che hanno portato alla realizzazione dei PLC, ed in ragione della loro semplicit e costo contenuto, hanno reso possibile lautomazione industriale anche ad utenti prima esclusi. Com facile comprendere, la diffusione del PLC stata enorme grazie allampio parco utenti a cui si rivolgeva. Questa enorme diffusione e la continua innovazione industriale hanno permesso al PLC uno sviluppo tecnologico notevole, dotandolo in maniera modulare di funzioni sempre pi complesse che lo hanno avvicinato al fratello maggiore DCS anche lui evolutosi in maniera sempre pi mirata ai settori di sua competenza. Per questa ragione da tempo in corso una convergenza architetturale tra DCS e PLC di alto livello infatti oggi opinione comune parlare di PAS (Process Automation System), sistemi ibridi adatti per operare con qualsiasi tipologia di processo da controllare. Con linformatizzazione dellautomazione, stiamo assistendo al graduale realizzo di sistemi di controllo ed automazione di processi industriali per mezzo di macchine ed apparati general purpose, principalmente mediante reti di PC o comunque con tecnologie standard. Da diversi anni gli operatori dellautomazione industriale si chiedono qual il modo migliore di far comunicare tra loro i dispositivi che fanno parte di un impianto, ma finora hanno sempre trovato risposte discordanti: chi sostiene che i tradizionali metodi di cablaggio punto-punto sono ancora oggi i pi validi, c chi sostiene che la soluzione ottima sia quella di usare un bus di campo (di solito quello proposto dalla propria azienda). Mentre il mondo industriale dibatteva sulla soluzione migliore, qualcun altro lha trovata per lui. Il fenomeno Ethernet, trainato dalle applicazioni dellinformatica, sta travolgendo tutti, dal settore delle telecomunicazioni classiche, dove numerosi standard alternativi, anche se pi efficienti, sono stati abbandonati in favore della tecnologia di rete pi diffusa al mondo, fino al mondo industriale, che pur con tutta la cautela del caso sta cominciando a prendere in seria considerazione lutilizzo di reti Ethernet. Sono ormai
2

diversi gli esempi dove si usato Ethernet non pi solamente per collegare gli impianti a qualche PC situato negli uffici, ma per entrare addirittura nel cuore di alcuni sistemi, per collegare gli I/O distribuiti ai PLC, per collegare azionamenti a PC industriali e via di questo passo. Ethernet ha la sua naturale intregrazione in Internet, che consente una diagnostica decentrata di semplice implementazione. E per questo motivo che anche a livello industriale vanno affermandosi protocolli standard, quali quelli utilizzati dai comuni browser, come Internet Explorer o Netscape Navigator (IP, TCP, UDP, HTTP) e cominciano a comparire sul mercato i primi web-sensors, ossia sensori direttamente interfacciati su Internet consultabili e controllabili mediante un comune browser. I paladini dei bus di campo inorridiscono. Dopo aver predicato per anni, facendosi la guerra tra di loro, che il proprio bus di campo era stato studiato per risolvere esattamente le esigenze della comunicazione in ambito industriale, si vedono oggi spuntare una tecnologia concorrente snobbata in quanto storicamente ritenuta tecnicamente inferiore. Oggi, con gli opportuni accorgimenti, tutto o quasi, pu essere connesso per mezzo di reti Ethernet. In azienda Ethernet pu essere utilizzata non solo a livello di supervisione e controllo, ma anche per le comunicazioni con gli I/O, infatti, la tecnologia Ethernet ormai entrata prepotentemente nel mondo dei bus di campo e sia sensori che attuatori hanno ormai un posto in prima fila anche nellarena di Ethernet e, di riflesso, nellIntranet aziendale. Allinizio, a causa del grande utilizzo gi consolidato di trasmissioni seriali di dati tramite i bus di campo che sono riusciti ad imporsi come standard de-facto, ma in particolar modo per le caratteristiche intrinseche stesse di Ethernet (protocollo non deterministico), esso non veniva preso in considerazione per lo scambio di dati in campo e per applicazioni remote. Linizio e lutilizzo di Ethernet nellambito dellindustria era legato quasi esclusivamente a scambi di dati dal quadro elettrico verso i livelli superiori, cio dai sistemi a logica programmabile verso i sistemi di supervisione e poi da questi sistemi verso i livelli di fabbrica e/o impianto legati alla produzione e allapprovvigionamento fino alla parte finanziaria dellazienda. Negli ultimi anni, si per assistito ad unevoluzione di Ethernet, attraverso lutilizzo di particolari protocolli studiati appositamente per sopperire alle mancanze dei requisiti strettamente necessari per la comunicazione di campo e si arrivati alla risoluzione dei problemi di determinismo e di Real-Time delle reti.

Questa Tesi di Laurea, senza pretendere di essere esaustiva, ha lo scopo di dare una panoramica sulle caratteristiche di Ethernet, su alcuni bus di campo diffusi nellindustria, su vantaggi e problematiche introdotte dallintroduzione nellindustria di Ethernet e la descrizione di alcuni protocolli industriali basati su Ethernet che secondo le previsioni deterranno nellimmediato futuro una significativa quota di mercato a livello mondiale e rimpiazzeranno i vecchi bus di campo. Questa Tesi di Laurea composta da 7 capitoli e, nella parte finale, da personali conclusioni sugli argomenti trattati da parte dellautore. Sono elencati qui di seguito i titoli e il contenuto degli argomenti di ogni capitolo. Capitolo 1: RETI LAN E WAN. Descrive cosa una LAN, le diverse metodologie di collegamento dei dispositivi inseriti in rete, i mezzi fisici che normalmente sono impiegati in una rete e i possibili servizi che pu offrire ai suoi utenti. Cenni sulle reti WAN e Wireless; Capitolo 2: ARCHITETTURA ISO/OSI. Descrive il modello ISO/OSI sul quale basata la comunicazione tra dispositivi in una rete e la funzione svolta dai 7 strati da cui composto il modello; Capitolo 3: ETHERNET. Descrive la tecnologia Ethernet; Capitolo 4: DISPOSITIVI DI RETE E VLAN. Descrive i dispositivi utilizzati per il collegamento degli elementi presenti in una rete e il concetto di rete locale virtuale (VLAN); Capitolo 5: INTERNET PROTOCOL SUITE. Descrive i procolli su cui basato il funzionamento di Internet, cos un indirizzo IP e in cosa consiste il routing; Capitolo 6: BUS DI CAMPO. Descrive levoluzione della comunicazione industriale, cos un bus di campo e le caratteristiche di alcuni bus di campo diffusi nellautomazione industriale; Capitolo 7: ETHERNET INDUSTRIALE. Descrive come Ethernet introdotta nellautomazione industriale come bus di campo, le problematiche e le soluzioni nellimpiego di Ethernet a livello di campo e le caratteristiche di alcuni bus di campo industriali basati sulla tecnologia Ethernet; OSSERVAZIONI CONCLUSIVE. Sono riportate conclusioni personali dellautore di questa Tesi di Laurea in relazione agli argomenti trattati.

Capitolo 1 RETI LAN E WAN 1.1 Introduzione Una rete un complesso insieme di sistemi di elaborazione connessi tra loro attraverso dei collegamenti fisici (linee telefoniche, cavi dedicati, ecc.) al fine di utilizzare nel miglior modo possibile le risorse disponibili e di offrire vari servizi di comunicazione. Il progetto di una rete copre ampie problematiche che vanno della sua architettura fisica alla codifica dei dati per facilitare la trasmissione, fino alla costruzione del software applicativo che mette a disposizione degli utenti i servizi di rete. I primi tentativi di trasmissione dati fra due elaboratori risalgono agli anni 40 (collegamento fra elaboratore centrale e terminali remoti); le reti come le concepiamo oggi e i servizi ad esse legati, invece, hanno fatto la loro comparsa negli anni 70, dapprima in ambito militare e poi negli ambienti universitari per lo scambio di informazioni scientifiche. Solo nell'ultimo decennio, per, grazie alla rapida evoluzione delle tecnologie telematiche, abbiamo assistito all'espandersi frenetico delle reti sia a livello locale (nelle aziende e negli uffici), sia a livello mondiale (Internet). Di pari passo sono aumentati i servizi messi a disposizione dalle reti che vanno dalla posta elettronica al trasferimento di file, senza dimenticare la condivisione di risorse fisiche. Laffermarsi delle reti sta ristrutturando il mondo informatico attraverso un processo, detto downsizing, che spinge le aziende all'eliminazione dei grossi mainframe con le loro decine di terminali, per sostituirli con reti di calcolatori indipendenti, ma fra loro interagenti e cooperanti. Una rete locale o LAN (Local Area Network) una rete di telecomunicazione pensata e ottimizzata per interconnettere un gruppo di elaboratori e di altri dispositivi elettronici che si trovano all'interno di unarea geografica limitata (un edificio, una fabbrica, un campus) utilizzando mezzi trasmissivi dedicati e privati. Una normale LAN quindi una piccola rete, che comunque non attraversa il suolo pubblico con i propri mezzi trasmissivi; ci esonera il sistema dal puntuale rispetto degli standard della telefonia e della trasmissione dati pubbliche.

Le prime LAN (fine anni 70) avevano topologia a bus o ad anello e utilizzavano cavi coassiali per realizzare le connessioni; attualmente le reti sono strutturate secondo lo schema a stella sfruttando gli economici doppini in rame o le veloci fibre ottiche. Le reti locali stanno diventando cos comuni che nella costruzione o ristrutturazione di edifici si effettua normalmente quello che si chiama cablaggio strutturato delledificio, la predisposizione cio di tutti i collegamenti di cui potrebbero avere bisogno gli utenti che andranno ad occupare gli uffici; linserimento di un nuovo nodo nella rete si risolve semplicemente collegando il cavo di rete dellelaboratore alla presa predisposta, in modo analogo al collegamento di una apparecchiatura telefonica o elettrica. Quando la rete locale diventa fisicamente molto grande e le distanze fra gli elaboratori aumentano considerevolmente, vengono inseriti nella struttura della rete dei dispositivi (quali HUB, BRIDGE o SWITCH) che consentono di potenziare il segnale che fluisce attraverso i cavi in modo che raggiunga in maniera comprensibile il destinatario. I principali parametri che caratterizzano una rete locale sono: Compatibilit: La rete deve essere in grado di supportare dispositivi di diversi produttori ed eventualmente collegarsi ad altre reti locali e geografiche; Espandibilit: La rete deve essere facilmente espandibile e riconfigurabile a costi contenuti; Affidabilit: Alla rete sono connessi molti dispositivi che devono essere progettati in modo che un guasto ad un componente agisca solo sul corrispondente nodo senza bloccare lintera rete; Prestazioni: Per esempio la velocit di trasmissione dati, il numero di utenze, la lunghezza massima del mezzo fisico, eccetera. I servizi che le reti locali possono offrire sono elencati qui di seguito: Codivisione di risorse: Il servizio principale, che le reti hanno reso possibile fino dalla loro prima apparizione, la condivisione di risorse; il collegamento fisico fra gli elaboratori, infatti, consente ad ogni elaboratore di poter raggiungere le risorse private di ogni altro sistema della rete. Lutente di ogni singolo nodo della rete ha quindi il possesso virtuale di tutta una serie di risorse messe a disposizione dal complesso degli elaboratori componenti la rete. La condivisione delle unit disco (memoria secondaria) presenta, ad esempio, un duplice vantaggio: viene limitata la duplicazione dei dati e dei programmi presenti nella rete e si ottimizza lutilizzo della memoria secondaria a disposizione. Lelaboratore che mette a disposizione i propri dischi viene detto file server e, se consente anche di

condividere lesecuzione dei programmi presenti, prende il nome di application server; Comunicazioni fra utenti: Un secondo servizio storico offerto dalle reti di elaboratori la comunicazione interattiva fra vari utenti; i ricercatori universitari che per primi cominciarono ad utilizzare efficacemente le reti, avevano infatti bisogno di confrontarsi, a distanza, discutendo sugli argomenti legati ai loro studi; File transfer: Il trasferimento di file consente la copia di file tra due elaboratori collegati in rete. Il servizio estremamente semplice e richiede unicamente, oltre alla connessione fisica, un programma di file transfer che sappia gestire il protocollo di trasferimento (FTP, File Transfer Protocol). Gli elaboratori che offrono i file, richiedono un username ed una password per poter effettuare il trasferimento dei file prescelti; nel caso in cui i proprietari dei file decidano di rendere disponibili le loro risorse software anche ad utenti non registrati si parla di trasferimento anonimo: lutente infatti usa la parola anonymous come username e, a volte, il suo indirizzo di posta elettronica come password; Posta elettronica: La posta elettronica (electronic mail o, semplicemente, e-mail) sicuramente il servizio di rete pi conosciuto e pi usato attualmente; tramite di essa vengono resi possibili gli scambi di corrispondenza fra utenti residenti anche in zone del mondo lontanissime, ma collegati alla medesima rete; Internet: Internet una rete di calcolatori che collega elaboratori situati in ogni parte del mondo; attualmente consente a centinaia di milioni di utenti di collegarsi gli uni agli altri per scambiare documenti, immagini o semplici messaggi. In realt Internet una rete di reti e, cio, collega fisicamente tra loro centinaia di migliaia di reti locali di elaboratori.

1.2 Tipi di topologie di rete Il metodo con cui la rete rende possibile il collegamento fisico tra i vari elaboratori influenza notevolmente le caratteristiche della rete stessa soprattutto relativamente alla tolleranza ai guasti ed ai costi. Le principali topologie utilizzate sono le seguenti: Collegamento punto-punto: due elaboratori (nodi) vengono collegati direttamente per formare una piccola rete; questo tipo di collegamento alla base di topologie pi complesse quali il collegamento a stella o a maglia;

Collegamento punto-multipunto: un singolo canale trasmissivo collega pi di due nodi che lo utilizzano in condivisione, un elaboratore (master) coordina il traffico su tale canale e lattivit degli altri elaboratori (slave); una topologia a modello gerarchico con un elemento principale che controlla gli altri ad esso connessi. Veniva usato per collegare terminali ad un mainframe, attualmente non viene pi utilizzato; Topologia a bus: simile alla precedente, non gerarchica, un unico canale collega tutti i nodi della rete; in questo caso, per, lutilizzo concorrente del bus viene gestito tramite particolari protocolli. Le estremit del bus sono connesse ad appositi terminatori. Molto diffusa nelle piccole reti perch molto economica, non risulta tollerante ai guasti: linterruzione del bus in un punto qualsiasi pregiudica il funzionamento di tutta la rete;

Topologia a stella: gli elaboratori della rete sono collegati mediante canali punto-punto ad un elaboratore centrale (HUB) che funge da controllore della rete e del traffico su di essa; questa struttura garantisce una facile individuazione dei guasti e permette la continuazione del lavoro sui nodi non interessati dalla interruzione del collegamento; lelemento centrale diventa per punto critico e deve essere sovradimensionato per dare garanzie di funzionamento. E attualmente la principale topologia per reti locali;

Topologia ad anello: i nodi della rete sono uniti tramite collegamenti punto-punto in modo da formare un anello chiuso; i messaggi viaggiano nellanello in un solo senso attraverso i nodi fino a giungere alla stazione di ricevimento. Un nodo che riceve un dato dal nodo precedente dellanello, se non destinato a s lo ignora e lo trasmette al nodo successivo. In caso di interruzione di un collegamento la rete bloccata; per ovviare a tale problematica, lanello viene normalmente raddoppiato per consentire il trasferimento dei messaggi in entrambi i sensi di rotazione ed ovviare, cos, ad eventuali interruzioni;

Topologia a maglia: una configurazione che sfrutta i collegamenti punto-punto, consentendo, per ogni elaboratore, anche pi di due connessioni con altri nodi della rete. Si parla di maglia completa quando tutti i nodi sono collegati con ogni altro nodo della rete: una soluzione estremamente efficace perch molto tollerante ai guasti grazie allesistenza di pi percorsi alternativi per raggiungere lelaboratore selezionato; per contro, la realizzazione particolarmente costosa. Le reti geografiche, come Internet, utilizzano la topologia a maglia incompleta, dove, pur essendoci percorsi alternativi, non tutti i collegamenti possibili sono realizzati;

Topologia ad albero : nasce dalla combinazione di topologie a stella e a bus.

10

1.3 Cablaggi Ogni rete di calcolatori necessita di un supporto fisico di collegamento (cavi o similari) per scambiare i dati fra i vari utenti; il mezzo trasmissivo utilizzato incide notevolmente sulle caratteristiche della rete in termini di prestazioni e di costo. Attualmente esistono tre grandi categorie di mezzi trasmissivi che si differenziano per il fenomeno fisico utilizzato: mezzi elettrici (dove viene sfruttata la capacit dei metalli di condurre energia elettrica), onde radio (dove si sfrutta la possibilit di trasferire variazioni di corrente elettrica a distanza tramite onde elettromagnetiche) e mezzi ottici (che utilizzano la luce per trasferire le informazioni). Tutti i mezzi utilizzati hanno la caratteristica di trasportare una qualche forma di energia e quindi sono soggetti a due fenomeni che ne limitano le prestazioni: lattenuazione (dovuta alla resistenza opposta dal mezzo fisico attraversato) ed il rumore (la sovrapposizione alle informazioni di segnali provenienti da altri dispositivi vicini). I mezzi trasmissivi attualmente usati nelle normali reti sono i seguenti: Doppino intrecciato: formato da una coppia di fili di rame, permette trasmissioni di dati fino a 100 Mbps ed una bassa sensibilit ai disturbi esterni. Di semplice uso (vengono usati i cavi gi posati che consentono le conversazioni telefoniche) ed economico, il mezzo trasmissivo attualmente pi utilizzato sia per le reti locali e per alcuni tratti delle reti pi grandi. Si hanno due varianti: UTP, cio non schermato e STP, cio schermato. Nelle LAN sono utilizzati in prevalenza i doppini in categoria 3 (CAT3-banda massima 16 MHz) e in categoria 5 (CAT5-banda massima 100 MHz);

Cavo coassiale: formato da una coppia di cavi coassiali (e non affiancati come per il doppino) particolarmente insensibile alle interferenze elettromagnetiche. Per trasmissioni digitali sono utilizzati cavi coassiali da 50 Ohm. La banda

11

disponibile di un cavo coassiale dipende dalla qualit del cavo, dalla sua lunghezza e dal rapporto segnale-rumore del segnale dati. Un volta usato largamente, oggi in progressivo disuso sostituito dal doppino nelle reti locali e dalle fibre ottiche sulle distanze maggiori;

Fibre ottiche: il supporto fisico dove viaggia la luce vetro filato in diametri molto piccoli e ricoperto di materiale opaco; con lattuale tecnologia possibile ottenere fili di vetro del diametro di poche decine di micron (millesimo di millimetro) robusti e flessibili, di una purezza tale da consentire trasmissioni a centinaia di chilometri alla velocit di Gbps. Grazie al fatto che il segnale portato da impulsi di luce, le fibre ottiche sono immuni dai disturbi elettromagnetici; inoltre le ridotte dimensioni permettono di inserire in un unico cavo centinaia di fibre. Altri vantaggi sono la banda teoricamente illimitata e la bassa attenuazione che consente lunghe distanze di interconnessione. Gi attualmente molto usate, saranno il mezzo del futuro dopo labbattimento dei loro alti costi (unico difetto delle fibre ottiche). Si hanno due varianti: fibre monomodali che hanno prestazioni inferiori, costo maggiore e interfacce di connessione economiche e fibre multimodali che possiedono prestazioni pi elevate, il costo della fibra minore, ma interfacce pi costose. Possono essere utilizzate due diverse sorgenti luminose: leconomico diodo LED o la pi costosa luce laser a semiconduttore. Con la luce laser a semiconduttore possibile ottenere velocit di trasmissione dati e distanze molto maggiori del diodo LED;

12

Ponti radio o satellitari: le onde elettromagnetiche sono inviate da un trasmettitore e viaggiando ad una velocit prossima a quella della luce, raggiungono lantenna del ricevente (eventualmente utilizzando uno o pi satelliti). Sono usati per collegamenti a grandi distanze visto che, quasi indipendentemente dalle posizioni del trasmettitore e del ricevitore, il ritardo nelle comunicazioni dell'ordine delle centinaia di millisecondi. Lostacolo maggiore alla diffusione di tali tecniche lelevato costo.

13

1.4 Modi di accesso al mezzo trasmissivo della rete Laccesso alla rete, le priorit dei dispositivi e le tecniche di distribuzione delle informazioni sono descritte da alcune modalit di cui si presentano qui di seguito le principali, ricordando che sono spesso presenti varianti che le possono alterare o modificare in diversi modi. Master/Slave: Il controllo della rete centralizzato e concentrato nellunit master (mastro) che ne concede ai vari dispositivi slave (schiavi) laccesso per inviare o richiedere segnali; il master provvede anche a mandare i segnali alla corretta destinazione. Laccesso alla rete viene dato ai nodi secondo priorit e tempistiche stabilite da una lista di interrogazione (polling) prestabilita. Questa tecnica consente una rigorosa temporizzazione delle operazioni e si presta in particolare alla rilevazione periodica delle variabili e allimplementazione a cicli costanti degli algoritmi di regolazione. Tale soluzione si dice deterministica perch possibile calcolare un tempo massimo entro il quale linformazione di qualsiasi utente verr trasmessa. Ogni ampliamento della rete richiede una ridefinizione dei programmi di gestione e della lista di interrogazione del master. Questa tipologia si evoluta verso larchitettura multimaster per cui viene a cadere la distinzione tra utente master e utente slave, mantenendo sempre la caratteristica di rete deterministica in quanto i vari master sono autorizzati alla trasmissione per un tempo prestabilito (tecnica del gettone analizzata in seguito). CSMA/CD (Carrier Sense Multiple Access / Collision Detection): In questo caso ogni nodo pu accedere alla rete in ogni momento inviando il suo segnale e rileggendolo successivamente. Se il confronto negativo, significa che la linea era occupata e si verificata una collisione (presenza contemporanea di due segnali). In questo caso il dispositivo rimanda lo stesso segnale dopo avere atteso per un periodo di tempo di lunghezza casuale. Questo metodo richiede una gestione ridotta dei segnali e consente lampliamento della rete senza necessit di riconfigurazione dei programmi. Esso tuttavia non si presta alle applicazioni in cui il traffico intenso e inoltre, data la natura probabilistica dellistante di accesso alla rete, non adatto quando richiesta una gestione ciclica e deterministica dei nodi, come avviene ad esempio per la regolazione di azionamenti. Token Bus (Bus a Gettone): Il gettone una sequenza riconoscibile di bit che d il diritto di accedere alla rete solo al nodo che in un dato momento ne in possesso. Ogni

14

nodo abilitato, al termine della sua operazione, consegna il gettone ad una stazione successiva, secondo uno schema fisso definito preliminarmente dal gestore della rete. Si determina in questo modo una sequenza logica di accesso dei diversi nodi, che si ripete ciclicamente ed assicura la ripetibilit e una temporizzazione certa alla sequenza dei segnali, pur in assenza di una gestione centralizzata della comunicazione. Token Ring (Gettone circolante): In questo caso, nella rete ad anello, la sequenza di possesso del gettone determinata dalla connessione fisica delle varie stazioni allanello: la circolazione avviene in un unico senso da una stazione a quella adiacente, senza necessit di indicare lindirizzo. Si semplifica in questo modo la gestione, a costo tuttavia di una struttura pi rigida e fragile, poich non possibile cambiare la sequenza di intervento dei nodi senza un intervento fisico sulla rete; inoltre un guasto su un nodo interrompe la circolazione dei segnali.

15

1.5 Wide Area Network (WAN) Una Wide Area Network (WAN) una rete che copre unarea geograficamente estesa, spesso una nazione o un continente. Racchiude una raccolta di macchine destinate a eseguire programmi utente (applicazioni). Seguendo le consuetudini, queste macchine vengono chiamate host. Gli host sono collegati da una communication subnet, per brevit chiamata semplicemente subnet (sottorete). Gli host sono di propriet dei clienti (per esempio i personal computer degli utenti), mentre la communication subnet generalmente posseduta e gestita da una compagnia telefonica o da un Internet Service Provider (ISP). Il compito della subnet quello di trasportare i messaggi da un host allaltro, come la rete telefonica trasporta le parole da chi parla a chi ascolta. La separazione dellaspetto di pura comunicazione della rete (la subnet) dagli aspetti applicativi (gli host) semplifica notevolmente il progetto dellintera rete. Nella maggior parte delle WAN, la subnet formata da due componenti: linee di trasmissione ed elementi di commutazione. Le linee di trasmissione spostano i bit tra le macchine. Possono essere realizzate con cavo in rame, fibra ottica, o anche collegamenti radio. Gli elementi di commutazione sono computer specializzati che collegano tre o pi linee di trasmissione. Quando i dati arrivano da una linea ricevente, lelemento di commutazione deve scegliere una linea di uscita su cui inoltrarlo. In passato questi computer che commutano i dati sono stati chiamati in molti modi; oggi il pi diffuso il termine ROUTER. Come mostrato nella seguente Figura, ogni host solitamente collegato a una LAN su cui presente un ROUTER, anche se in alcuni casi un host pu essere collegato direttamente a un ROUTER. Linsieme di linee di comunicazione e ROUTER (ma non gli host) forma la subnet.

16

E necessario un breve chiarimento sul termine subnet. In origine il solo significato era quello che indicava linsieme di ROUTER e linee di comunicazione che spostano i dati dall'host sorgente a quello destinatario. Tuttavia alcuni anni dopo ha acquisito un secondo significato in abbinamento allindirizzamento di rete. Nella maggior parte delle WAN la rete contiene molte linee di trasmissione, ciascuna delle quali collega una coppia di ROUTER. Se due ROUTER che non condividono la stessa linea di trasmissione vogliono comunicare, lo devono fare indirettamente attraverso altri ROUTER. Quando un pacchetto viene inviato da un ROUTER verso un altro, attraverso ROUTER intermedi, il pacchetto viene ricevuto integralmente da ciascun ROUTER intermedio, memorizzato finch non si libera la linea di uscita necessaria, e poi inoltrato. Una subnet organizzata secondo questo principio si chiama store-and-forward o packet-switched (a commutazione di pacchetto). Praticamente tutte le WAN (con leccezione di quelle che usano i satelliti) hanno subnet di tipo store-and-forward. Quando i pacchetti sono piccoli e hanno la stessa dimensione, vengono spesso chiamati celle. I1 principio di funzionamento di una WAN a commutazione di pacchetto cos importante che vale la pena spendervi qualche parola in pi. Di solito, quando un processo di qualche host ha un messaggio da mandare a un processo di qualche altro host, quello che trasmette inizia lattivit dividendo il messaggio in pacchetti, ciascuno dei quali porta un corrispondente numero di sequenza. Questi pacchetti vengono poi inseriti nella rete uno alla volta in rapida successione.

17

I pacchetti sono trasportati individualmente sulla rete e depositati nellhost ricevente, dove sono riassemblati nel messaggio originale e inoltrati al processo ricevente. Il flusso di pacchetti che risulta da un messaggio iniziale illustrato seguente nella Figura.

Come si pu notare nella Figura tutti i pacchetti seguono la regola ACE, invece che ABDE o ACDE. In alcune reti tutti i pacchetti di un dato messaggio devono seguire lo stesso percorso; in altri ogni pacchetto instradato separatamente. Naturalmente se ACE il percorso migliore tutti i pacchetti possono esservi inoltrati, anche se ciascuno instradato separatamente. La decisione per linstradamento presa localmente. Quando un pacchetto arriva al ROUTER A, dipende da A decidere se va inoltrato alla linea B o alla linea C. Il modo in cui A prende la decisione chiamato algoritmo di routing. Non tutte le WAN sono a commutazione di pacchetto. Una seconda possibilit per una WAN il sistema satellitare. Ogni ROUTER ha unantenna attraverso la quale pu trasmettere e ricevere. Tutti i ROUTER possono ascoltare luscita dal satellite, e in alcuni casi anche le trasmissioni dei ROUTER paritetici verso il satellite. A volte i ROUTER sono collegati a una subnet cablata punto-punto, e solo alcuni hanno unantenna per il satellite. Le reti satellitari sono intrinsecamente di tipo broadcast e sono particolarmente utili quando la propriet broadcast importante.

18

1.6 Reti Wireless La comunicazione digitale senza fili (Wireless) non unidea nuova. Nel 1901 il fisico Guglielmo Marconi dimostr la telegrafia senza fili da una nave usando il codice Morse (punti e linee sono binari, dopotutto). I sistemi digitali Wireless moderni hanno prestazioni migliori, ma lidea di base la stessa. In prima approssimazione le reti Wireless si possono classificare in tre categorie principali: Connessioni allinterno di un sistema; LAN Wireless; WAN Wireless. La connessione allinterno di un sistema coinvolge il collegamento delle perifenche di un computer tramite segnali radio a portata ridotta. Quasi tutti i computer hanno monitor, tastiera, mouse e stampante collegate allunit centrale tramite cavi. Anche se di solito sono marchiati da colori differenti, il numero di principianti che incontra difficolt nel collegare correttamente tutti i cavi nei piccoli connettori cos grande che la maggior parte dei produttori di computer offre la possibilit di mandare un tecnico a domicilio per farlo. Di conseguenza, alcuni costruttori si sono accordati per progettare una rete Wireless a portata ridotta chiamata Bluetooth, per abolire i cavi di collegamento di questi componenti. Bluetooh permette inoltre di collegare al computer macchine fotografiche digitali, cuffie senza fili, scanner e altri dispositivi semplicemente portandoli nella zona di copertura. Niente cavi e niente installazione di driver: solo avvicinare, accendere e usare. Per molti questa semplicit duso un grande vantaggio. Nella loro forma pi semplice, le reti di collegamento interne al sistema usano il paradigma master-slave. Lunit centrale normalmente il master, che dialoga con mouse, tastiera e gli altri componenti configurati come slave. Il master dice agli slave che indirizzi usare, quando possono trasmettere e per quanto tempo, che frequenze possono usare e cos via. Il passo successivo nelle reti Wireless sono le LAN. Si tratta di sistemi dove ogni computer ha un modem radio e unantenna con cui pu comunicare con altri sistemi. Spesso c unantenna con cui i computer dialogano. Tuttavia, quando i computer sono abbastanza vicini, possono comunicare direttamente tra loro in una configurazione peer-to-peer. Le LAN wireless stanno diventando sempre pi comuni nei piccoli uffici e nelle abitazioni, negli edifici per uffici pi vecchi, nelle sale riunioni e in altri posti.

19

Esiste uno standard per LAN Wireless, chiamato IEEE 802.11, che implementato dalla maggioranza dei sistemi e che sta diventando estremamente diffuso. I1 terzo tipo di reti Wireless usato nei sistemi su area estesa. La rete radio usata dai telefoni cellulari un esempio di sistema Wireless a banda ridotta. I1 sistema gi arrivato alla terza generazione. La prima generazione era analogica e solo per la voce. La seconda generazione digitale e solo per la voce. La terza generazione digitale e trasporta voce dati. In un certo senso, le reti Wireless cellulari assomigliano a LAN Wireless, eccetto che le distanze sono molto superiori e i bitrate molto pi bassi. Le LAN Wireless possono funzionare a cadenze che si spingono a 50 Mbps su distanze di decine di metri. I sistemi cellulari lavorano sotto a 1 Mbps, ma la distanza tra la stazione base e il computer o telefono si misura in chilometri invece che metri. A complemento di queste reti a bassa velocit, sono in sviluppo anche reti Wireless a larga banda e copertura estesa. I1 focus iniziale laccesso a Internet ad alta velocit da abitazioni e uffici, scavalcando il sistema telefonico. Questo servizio spesso chiamato local multipoint distribution service. Per esso stato sviluppato uno standard, chiamato IEEE 802.16. Quasi tutte le reti Wireless prima o poi si collegano alla rete fissa per consentire laccesso a file, database e Internet. Questi collegamenti si possono realizzare in molti modi a seconda delle circostanze. Per esempio, come mostrato nella seguente Figura, illustrato un aeroplano con un certo numero di persone che usano modem e telefoni applicati ai sedili per chiamare lufficio. Ogni telefonata indipendente dalle altre.

20

Una soluzione molto pi efficiente tuttavia, la LAN volante della seguente Figura:

Qui ogni sedile munito di connettore Ethernet a cui i passeggeri possono collegare i loro computer. Un singolo ROUTER installato sullaereo mantiene un collegamento radio con qualche ROUTER a terra, cambiandolo man mano che il velivolo avanza. Questa configurazione solo una LAN tradizionale, eccetto che la sua connessione con il mondo esterno un collegamento radio invece di un filo. Molti ritengono che la tecnologia Wireless sia il futuro. 1.7 Bibliografia 1) Andrew S. Tanenbaum: Reti di calcolatori, Quarta edizione, 2004. 2) Antonio Pannaggio: Misure su reti di calcolatori, Universit degli studi del Sannio. 3) Domenico Prattic: Levoluzione dei sistemi di comunicazione nellautomazione e nella gestione di processi industriali, Universit degli studi di Genova, 2006. 4) Wikipedia, Lencicopledia libera, www.wikipedia.org.

21

22

Capitolo 2 ARCHITETTURA ISO/OSI 2.1 Descrizione architettura Gestire le comunicazioni tra i dispositivi di una rete di per se un problema complesso e le differenze di hardware e software hanno creato, in passato, incompatibilit fra sistemi e difficolt di interazione tra i servizi. Nei primi anni 80 la rapida evoluzione delle reti cominci a creare grossi problemi alla interconnessione fra le stesse tanto da costringere le grandi multinazionali dellInformation Technology (IT) ad abbandonare i sistemi proprietari e muovere verso un sistema di integrazione basato su uno standard. Il modello di riferimento OSI (Open System Interconnection) diventato parte dello standard ISO (International Organization for Standardization) nel 1984 divide la gestione di una qualunque rete in blocchi funzionali. Il modello non definisce uno standard tecnologico, ma un modello di riferimento comune per le tecnologie ed i servizi che gestiscono le reti. Esso assicura compatibilit e interoperabilit anche fra diversi tipi di tecnologie. Il modello ISO/OSI caratterizzato da sette strati che furono stabiliti in base ai seguenti principi: Deve essere creato uno strato laddove richiesto un differente livello di astrazione; Ciascun strato deve svolgere una funzione ben definita; La funzione di ciascun strato deve essere scelta tenendo conto della definizione dei protocolli standard internazionali; I confini tra gli strati devono essere scelti in modo da minimizzare il flusso di informazioni attraverso le interfacce; Il numero di strati deve essere abbastanza grande, da non permettere il raggruppamento di funzioni distinte nel medesimo strato se non in caso di necessit, e abbastanza piccolo da non appesantire larchitettura. Per capire il concetto di strutturazione per livelli necessario comprendere come il flusso dei dati viene gestito e regolato; un buon esempio il sistema postale. Ogni passaggio di consegna di una lettera avviene per livello di competenza e per regole di smistamento. La lettera viene imbucata in una cassetta postale dal mittente, prelevata

23

dal postino e portata al centro di smistamento dove lindirizzo sulla busta viene interpretato e la lettera viene veicolata verso un altro centro pi vicino alla destinazione finale dove seguir il percorso analogo (a ritroso) fino ad arrivare nelle mani del destinatario. I livelli del modello ISO/OSI sono sette, ci dovuto ad aderenza sostanziale ed ad una compatibilit inevitabile con il modello di comunicazione pi in voga in quegli anni, il System Network Architecture (SNA) di IBM. Il problema della comunicazione viene suddiviso in blocchi funzionali ognuno dei quali dedicato ad un problema specifico. Ogni blocco riceve informazioni dallo strato inferiore e comunica la propria elaborazione al blocco successivo. I blocchi, denominati tecnicamente layer o livelli, formano una struttura a pila (stack ), come mostrato nella seguente Figura, in quanto la comunicazione fluisce dal livello pi alto verso gli strati bassi del sistema trasmittente (dal mittente al centro smistamento postale) e percorre invece la strada opposta sul sistema ricevente (dal centro di smistamento al destinatario).

Se consideriamo i livelli nel modo indicato nella figura, il livello pi basso quello connesso con il mezzo fisico di trasmissione, mentre quello pi in alto si interfaccia direttamente con le applicazioni. Mentre i protocolli dei tre livelli inferiori del modello ISO/OSI sono legati al tipo di infrastruttura trasmissiva usata e hanno lo scopo di ottenere da essa il servizio desiderato, quelli dei quattro livelli superiori sono orientati esclusivamente ad aspetti elaborativi e non sono legati a problematiche di telecomunicazione.

24

2.2 Pila e protocolli Consideriamo due sistemi collegati tramite un mezzo fisico, ossia un canale di comunicazione come nella seguente Figura:

Le funzioni che i sistemi devono svolgere per potere comunicare vengono divise fra i vari layer ottenendo le suddivisioni come nella seguente Figura:

I layer di uguale livello sono a comune fra tutti i sistemi connessi alla rete e costituiscono uno strato; i sistemi interagiscono tra di loro unicamente attraverso questo strato tramite strutture denominate entity secondo certe regole che costituiscono il protocollo di quel livello. Ogni strato attraverso le sue entity fornisce servizio a quello di livello superiore attraverso uninterfaccia (SAP-Service Access Point) tra cui gli strati comunicano. In ogni strato quindi attivo un protocollo

25

definito dallente di standardizzazione che ne definisce le caratteristiche ed attraverso cui i sistemi della rete interagiscono scambiandosi messaggi (nome dato dal modello ISO/OSI ai dati organizzati in blocchi che vengono trasferiti). Al Livello 2 i messaggi vengono denominati frame. Le specifiche del protocollo di uno strato sono indipendenti da quelle degli altri, quindi possibile sostituire il protocollo di uno strato senza dover modificare quello degli altri adiacenti (naturalmente il servizio fornito al livello superiore deve rimanere lo stesso). In conclusione internamente ad ogni sistema i vari layer interagiscono fornendo e sfruttando servizi; sistemi differenti interagiscono facendo richiesta e fornendo servizi tramite un protocollo di comunicazione. I protocolli attuali sono generalmente modulari, ma questo non significa che aderiscano completamente alle specifiche dellISO. Il modello ISO/OSI di per se non unarchitettura di rete perch non specifica esattamente i servizi ed i protocolli da utilizzare in ciascun strato, ma si limita a definire ci che ciascuno strato dovrebbe fare. La funzione di modello, serve quindi come semplice punto di riferimento e confronto, ma soprattutto non rappresenta una norma alla quale ogni sistema deve assolutamente aderire. In generale non indispensabile disporre di tutti e sette i livelli; a seconda delle funzionalit necessarie qualche livello intermedio spesso omesso. Il modello ISO/OSI solo una raccomandazione ed il risultato di ci, che i protocolli sono scritti a blocchi, ma non si conformano in maniera completamente fedele ai sette livelli ed ad esempio i Livelli 5 e 6 non sono sempre implementati. Spesso si cerca di concentrare le funzionalit dove possibile anche perch la visione a blocchi introdotta dallo standard comporta un certo overhead dovuto alle interfacce tra i diversi livelli.

26

2.3 Livello 1: Strato fisico

Lo strato fisico (Livello 1 del modello ISO/OSI mostrato nella Figura soprastante) riguarda la trasmissione di bit lungo un canale di comunicazione. Gli aspetti del progetto riguardano il meccanismo per garantire che un bit 1 trasmesso da unestremit venga ricevuto come tale (e non come 0) allaltra estremit. Le problematiche tipiche da affrontare in questo contesto riguardano i livelli di tensione o di corrente usati per rappresentare il bit 1 o il bit 0, la durata in microsecondi di un bit, la possibilit di trasmettere simultaneamente in entrambi le direzioni, il modo in cui viene stabilita la connessione iniziale ed il modo in cui viene disattivata quando entrambe le estremit hanno terminato, il numero di piedini che deve avere il connettore di rete, la funzione di ciascun piedino, la distanza massima di trasmissione. Qui gli aspetti di progetto hanno a che fare in gran parte con le interfacce meccaniche, elettriche e procedurali, e col mezzo fisico di trasmissione, situato al di sotto dello strato fisico.Offre al livello superiore un servizio di trasporto di simboli. Questo lunico livello della gerarchia che riguarda direttamente lhardware, tutti i blocchi funzionali superiori lavorano ad un livello logico operando su flussi di bit anzich su segnali elettrici. I servizi forniti sono ad esempio: Gestione delle connessioni fisiche; Identificazione della connessione fisica; Trasmissione delle unit dati; Notifica delle condizioni di malfunzionamento; Sincronizzazione.

27

2.4 Livello 2: Data link layer

Il compito principale dello strato di collegamento dati (Data Link Layer, Livello 2 del modello ISO/OSI mostrato nella Figura soprastante) quello di prendere un mezzo fisico rudimentale e di trasformarlo in una linea esente, per quanto possibile, da errori di trasmissione per lo strato di rete. Esso svolge questo compito facendo si che il trasmettitore organizzi i dati di input in frame, li trasmetta sequenzialmente ed elabori i frame di riconoscimento inviati in risposta dal ricevitore. Poich lo strato fisico si limita ad accettare e trasmettere una serie di bit senza interessarsi del loro significato o della loro struttura, sar lo strato di collegamento dati a dover creare e riconoscere i confini dei frame, il che pu essere fatto aggiungendo speciali configurazioni di bit allinizio ed alla fine di ogni frame. Lo strato di collegamento dati pu essere ulteriormente suddiviso in due sottostrati; quello inferiore che si interfaccia allo strato fisico e chiamato MAC (Media Access Control), quello superiore che si interfaccia allo strato di rete e chiamato LLC (Logical Link Control). Un impulso di rumore sulla linea pu distruggere completamente un frame. In questo caso il software dello strato di collegamento dati sulla macchina di provenienza dovr ritrasmettere il frame. E questo strato che ha il compito di risolvere problemi causati da messaggi danneggiati, persi o duplicati. Unaltra questione che si presenta allo strato di collegamento dati (come pure nella maggior parte degli altri strati) il modo in cui impedire ad un trasmettitore veloce di sommergere di dati un ricevitore lento. I servizi forniti sono: Apertura e il rilascio di una connessione di collegamento; Trasferimento trasparente dei dati; Controllo di flusso, rilevamento e recupero degli errori; Controllo della sequenza dei dati e accesso a mezzo condiviso.

28

2.5 Livello 3: Network layer

Lo strato di rete (Network Layer, Livello 3 del modello ISO/OSI mostrato nella Figura soprastante) riguarda il controllo del funzionamento della sottorete. Una questione fondamentale di progetto la determinazione del modo in cui i pacchetti sono instradati dallestremit di provenienza a quella di destinazione. Se troppi pacchetti sono presenti contemporaneamente nella sottorete, essi si intralceranno a vicenda, formando un collo di bottiglia. Anche il controllo di una congestione sotto la responsabilit dello strato di rete. Quando un pacchetto deve viaggiare da una rete allaltra per raggiungere la sua destinazione, possono sorgere molti problemi: lindirizzamento usato dalla seconda rete pu differire da quello della prima, la seconda rete potrebbe addirittura non accettare il pacchetto perch troppo grande, i protocolli potrebbero essere diversi, e cos via. E lo strato di rete che ha il compito di risolvere questi problemi per consentire linterconnessione di reti omogenee. E anche responsabile della traduzione di indirizzi e nomi logici in indirizzi fisici. I servizi forniti sono: Apertura e il rilascio di una connessione di rete; Gestire la qualit del servizio (ad esempio il tempo di attraversamento della rete); Indirizzamento e trasferimento dei dati end-to-end; Controllo della congestione; Internetworking.

29

2.6 Livello 4: Transport layer

La funzione fondamentale dello strato di trasporto (Tansport Layer, Livello 4 del modello ISO/OSI mostrato nella Figura soprastante ) consiste nellaccettare i dati dallo strato di sessione, nel suddividerli in unit pi piccole (se necessario), nel passare queste allo strato di rete e nel garantire che i pezzi arrivino tutti correttamente allaltra estremit. Inoltre il tutto deve essere svolto efficientemente ed in modo da isolare lo strato di sessione dalle inevitabili modifiche nella tecnologia dellhardware. Lo strato di trasporto determina anche il tipo di servizio da fornire allo strato di sessione e, in definitiva, agli utenti della rete. Il tipo pi diffuso di connessione di trasporto un canale da punto a punto, esente da errori, che fornisce i messaggi nellordine in cui sono stati inviati. Comunque altri tipi di servizio sono rappresentati dal trasporto di messaggi isolati senza garanzia sullordine di consegna e dal broadcasting di messaggi a pi destinatari. Lo strato di trasporto ha anche il compito di stabilire e cancellare le connessioni attraverso la rete. Ci richiede un meccanismo di denominazione, affinch il processo presente su una macchina abbia il modo per descrivere il destinatario con cui deve conversare. I servizi offerti sono: Apertura e il rilascio di una connessione di trasporto; Controllo di flusso end to end; Concatenazione, separazione, segmentazione, ricomposizione; Rilevazione e recupero errori end to end.

30

2.7 Livello 5: Session layer

Lo strato di sessione (Session Layer, Livello 5 del modello ISO/OSI mostrato nella Figura soprastante) permette agli utenti su macchine differenti di stabilire tra loro delle sessioni. Una sessione consente lordinario trasporto dei dati, come fa lo strato di trasporto, ma fornisce anche dei servizi potenziati utili in certe applicazioni. Una sessione potrebbe servire ad un utente per connettersi ad un sistema remoto in timesharing, o per trasferire un file tra pi macchine. Uno dei servizi dello strato di sessione la gestione del controllo del dialogo. Le sessioni possono permettere che il traffico si svolga contemporaneamente nelle due direzioni (full-duplex), oppure in una sola direzione alla volta (half-duplex). Se il traffico unidirezionale lo strato di sessione pu servire a tenere nota dei turni. Servizi di sessione attinenti sono la gestione del token, per evitare che diversi nodi eseguano operazioni nello stesso istante, e la sincronizzazione tra i processi, ad esempio inserendo punti di controllo durante il trasferimento di dati, per evitare, in caso di errori, di ritrasmettere tutto il messaggio. I servizi forniti sono: Apertura e il rilascio di una connessione di sessione; Sincronizzazione (definizione e identificazione di check points per fault tolerance); Registrazione delle anomalie di funzionamento.

31

2.8 Livello 6: Presentation layer

Lo strato di presentazione (Presentation Layer, Livello 6 del modello ISO/OSI mostrato nella Figura soprastante) esegue certe funzioni che sono richieste cos spesso da rendere opportuna per esse una soluzione generale. In particolare, diversamente da tutti gli strati inferiori che sono interessati soltanto al trasferimento affidabile di bit da un punto allaltro, lo strato di presentazione ha a che fare con la sintesi e la semantica delle informazioni trasmesse. Al fine di rendere possibile la comunicazione tra computer con rappresentazioni simboliche differenti, le strutture dati da scambiare possono essere definite in modo astratto, insieme con una codifica standard da utilizzare sulla linea di comunicazione. Il compito di gestire queste strutture dati astratte e di effettuare la conversione dalla rappresentazione usata allinterno del computer alla rappresentazione standard della rete gestito dallo strato di presentazione. Questo strato ha a che fare con altri aspetti della rappresentazione delle informazioni come ad esempio la compressione/decompressione dei dati e la crittografia. Concludendo il Livello 6 si prende carico di tutti i problemi di presentazione dei dati e fornisce i meccanismi per una conversione trasparente. I servizi forniti sono: Selezione della sintassi di trasferimento; Trasformazione della sintassi di rappresentazione.

32

2.9 Livello 7: Application layer

Lo strato applicazione (Application Layer, Livello 7 del modello ISO/OSI mostrato nella Figura soprastante) contiene vari protocolli che sono necessari per offrire vari servizi agli utenti, quali ad esempio: terminale virtuale (TELNET), trasferimento file (FTP), posta elettronica (SMTP), web (HTTP). In generale il settimo livello concerne la descrizione dellinterfaccia verso lapplicazione; tuttavia questo strato non comprende lapplicazione stessa, in quanto essa non fa parte del sistema di comunicazione. Si deve prestare attenzione a non confondere il termine applicativo di questo strato con laccezione comune di programma. Il programma sfrutta gli strumenti della pila ISO/OSI a livello applicativo per svolgere funzionalit di rete. I servizi forniti ai processi applicativi sono: Trasferimento delle informazioni; Predisposizione di meccanismi quali autenticazione e segretezza; Determinazione del grado di servizio accettabile; Sincronizzazione delle applicazioni cooperanti; Accordo sulle responsabilit di error recovery e sulle procedure di controllo della correttezza delle informazioni.

33

2.10 Bibliografia 1. Andrew S. Tanenbaum: Reti di calcolatori, Quarta edizione, 2004. 2. Domenico Prattic: Levoluzione dei sistemi di comunicazione nellautomazione e nella gestione di processi industriali, Universit degli studi di Genova, 2006. 3. Francesco Venturini: I bus di campo isocroni Profibus DP V2 e Profinet I/O, Universit degli studi di Brescia. 4. Giuseppe Tognini: Studio, progetto e realizzazione di un analizzatore di traffico su rete CAN, Universit degli studi di Pisa, 2003. 5. Stefano Panzieri: Le reti informatiche Reti locali e modelli di interconnessione Bus di campo, Universit degli studi di Roma. 6. Vittorio Trecordi: Introduzione alle reti di telecomunicazione, 2001. 7. Wikipedia, Lencicopledia libera, www.wikipedia.org.

34

Capitolo 3 ETHERNET 3.1 Introduzione Ethernet il tipo pi diffuso di rete locale che esista al mondo. Con rete locale sintende un sistema di collegamento tra diversi computer, tutti collocati allinterno del medesimo edificio, entro edifici contigui oppure nellarco di pochi chilometri nel caso in cui non esistano confini di riferimento precisi. Tale sistema consente lo scambio diretto di dati in formato elettronico tra pi di due computer, senza ricorrere al passaggio di dischetti. Il numero di stazioni deve essere per lo meno tre perch se i computer fossero soltanto due non si potrebbe pi parlare di rete, ma bens di collegamento diretto, da punto a punto, come quello che si crea quando si usano particolari tipi di cavo seriale o parallelo per trasferire dati da un portatile a un desktop. La natura generale di qualsiasi LAN (Local Area Network - rete locale) e quella di Ethernet in particolare, di consentire il libero colloquio con qualsiasi macchina collegata e di trasmettere la stessa informazione contemporaneamente a tutte le macchine in ascolto (broadcasting). Ethernet non necessariamente la migliore delle tecnologie possibili, ma si dimostrata la pi economica e la pi facile da utilizzare il che ne ha decretato un enorme successo a tutti i livelli dimpiego e in qualsiasi area geografica del mondo. La sua storia ha inizio nei primi anni 70 presso il Palo Alto Research Center (PARC), il laboratorio di ricerca di Xerox, per opera di Robert Metcalfe e David Bloggs. Il lavoro inizi intorno al 1972, ma la sua prima definizione pubblica risale a un articolo pubblicato nel 1976 con la firma dei due inventori. Il nome, ideato e registrato da Xerox, suggerisce lidea delletere, cio di quella sostanza incorporea che in passato si supponeva pervadesse tutta laria e consentisse il propagarsi della luce. Cos intesa, verrebbe la tentazione di pensare a una rete che usa onde radioelettromagnetiche per la distribuzione delle informazioni, quando invece sempre necessario un cavo in rame oppure in fibra ottica per convogliare i segnali. Xerox, come accaduto successivamente per altre invenzioni sviluppate nei suoi laboratori californiani, non ebbe lintraprendenza di trasformarla immediatamente in un prodotto commerciale e dobbiamo aspettare il dicembre del 1980 per averne la

35

prima versione utilizzabile, dovuta all'iniziativa congiunta di Xerox, Digital Equipment e Intel. Nel 1982 lo standard iniziale fu sostituito dalla versione 2.0, detta anche Ethernet II oppure DIX (Digital, Intel, Xerox) che costituisce ancora oggi uno standard di riferimento per numerosi impianti. Il passaggio finale fu affidarne la standardizzazione a un ente al di sopra delle parti. Considerando le potenzialit di diffusione mondiale, Ethernet non poteva restare affidata nelle mani di tre societ private. Tutti gli altri produttori non avrebbero investito in una tecnologia che sfuggisse al loro controllo. Il ruolo di arbitro fu affidato allInstitute of Electrical and Electronics Engineers (IEEE), un ente statunitense con sede a New York che riunisce scienziati, ingegneri e studenti e che nella prima met degli anni Ottanta cre un comitato, identificato dal numero 802, il cui compito di codificare tutti i tipi primari di rete locale, incluso naturalmente Ethernet. La sua prima formulazione ufficiale risale al 1983 con la pubblicazione del documento IEEE 802.3 in cui si definiscono le specifiche elettriche e fisiche per una rete Ethernet a 10 Mbit per secondo su cavo coassiale. Successivamente il documento stato perfezionato a pi riprese, cominciando dal 1985 con la definizione del metodo di accesso e proseguendo poi con laggiunta di versioni capaci di funzionare anche su cavi di tipo differente e a velocit diverse (100 Mbit/s, 1 Gbit/s, 10 Gbit/s). Il sistema di trasmissione Ethernet usa un solo cavo per collegare decine di stazioni di lavoro, ciascuna delle quali riceve contemporaneamente tutto quel che passa sulla rete, mentre solo una stazione alla volta ha la facolt di trasmettere. Ogni stazione indipendente e non esiste una singola entit che funzioni da arbitro. In Ethernet, vediamo che le informazioni sono trasmesse nella forma dimpulsi che si propagano a partire dalla stazione emittente verso i due estremi della rete (a destra e a sinistra) fino a raggiungere il punto in cui il cavo termina ai due estremi. In questo percorso incontrano altri nodi che sono collegati lungo il cavo e che ascoltano tutto quello che passa cercando di scoprire se indirizzato a loro. Ogni messaggio in transito sulla rete (detto anche trama o frame, allinglese, perch composto da una sequenza di bit tra loro combinati) reca al proprio interno lindirizzo di origine (Indirizzo MAC) e quello di destinazione, perci ogni macchina lo copia in una piccola porzione di memoria (buffer) di cui dispone nella scheda dinterfaccia, legge lindirizzo di destinazione e, se non coincide con il proprio, lo scarta. Con questo meccanismo, assicurandosi che una sola macchina alla volta abbia la possibilit di trasmettere, mentre tutte le altre sono in ascolto, si costruisce in modo

36

semplice una rete a cui facile aggiungere nodi, visto che ogni nuovo nodo riceve automaticamente tutto quel che transita sul cavo e diventa immediatamente parte del gruppo di lavoro, acquistando anche la facolt di trasmettere ogni volta che la linea libera. Questo sistema vale per qualsiasi genere di rete Ethernet, indipendentemente dalla sua velocit di funzionamento o dal tipo di cavo utilizzato. Ogni scheda di rete disponibile in commercio dispone di un proprio indirizzo permanente (Indirizzo MAC), unico al mondo, espresso in numeri esadecimali e lungo 48 bit. I primi 24 bit di questo indirizzo indicano il costruttore e vengono conservati in un registro mondiale cos da evitare duplicazioni. Gli altri 24 bit vengono assegnati dal costruttore medesimo, scheda per scheda, cos da creare una combinazione univoca per ciascun pezzo. Grazie a questo metodo, possibile risalire in ogni momento a chi ha fabbricato la scheda e non esiste la bench minima possibilit che sulla stessa rete esistano due nodi con il medesimo indirizzo fisico. La connessione di varie macchine sullo stesso cavo prende il nome di topologia elettrica a bus. Con topologia elettrica si indica la disposizione delle connessioni elettriche che uniscono i diversi nodi di una LAN o, pi in generale, il percorso logico che le informazioni seguono per arrivare a destinazione. Il termine bus identifica, come nel caso dellomnibus da cui la parola deriva, il fatto che tutti ricevono contemporaneamente lo stesso segnale e sono collegati al medesimo percorso trasmissivo. Nelle prime reti Ethernet la topologia elettrica corrispondeva anche alla topologia fisica, cio al modo in cui fisicamente le varie stazioni venivano collegate tra loro. Successivamente, con ladozione del doppino, si mantenuto una topolgia elettrica a bus (elemento invariabile nella natura di Ethernet), ma la topologia fisica, cio il modo in cui i cavi vengono distribuiti, diventata una stella: tutte le macchine si collegano a un punto centrale, come vedremo pi avanti. Dal punto di vista tecnico Ethernet non altro che una raccolta di specifiche relative al tipo di cablaggio, alla codifica dei segnali e alla gestione dei messaggi allinterno di una rete locale LAN. Prima di tutto bisogna ricordare che nel modello ISO/OSI, che descrive larchitettura di qualsiasi rete di telecomunicazione, la parola Ethernet indica solamente i primi due livelli (il Mezzo Fisico trasmissivo e il Data Link Layer) ed aggiungendo il protocollo TCP/IP si arriva fino a livello 4 (Trasporto Dati).

37

Questo quello che viene generalmente utilizzato nelle familiari architetture tradizionali, basate cio su IEEE 802.3 per il livello fisico e la parte del meccanismo di controllo di accesso (Medium Access Control - MAC) del livello scambio dati, IEEE 802.2 per la parte LLC (Logical Link Control) del livello scambio dati, IEEE 802.1 per la parte di bridging del livello scambio dati e sui protocolli TCP/UDP/IP. Una parte della standardizzazione del livello fisico delegata ai diversi enti che regolano le caratteristiche dei cavi e dei connettori (EIA, TIA, ecc. ).

Ethernet la LAN pi diffusa al mondo per diverse ragioni:

E nata molto presto e si diffusa velocemente per cui luscita di nuove tecnologie come FDDI e ATM hanno trovato gi il campo occupato; Rispetto ai sistemi concorrenti pi economica e facile da usare e la diffusione delle componenti hardware ne facilitano ladozione; Vasta documentazione disponibile, funziona bene e genera pochi problemi (cosa rara nel campo informatico); E adeguata allutilizzo con TCP/UDP/IP; Nonostante i suoi concorrenti fossero pi veloci nella trasmissione dati, Ethernet si sempre adeguata; Grazie al fatto che una tecnologia di basso livello, in grado di adattarsi a qualunque protocollo di comunicazione garantendo una certa flessibilit.

38

3.2 Codifica Manchester Nessuna delle versioni di Ethernet utilizza la codifica binaria semplice con 0 Volt associati al bit 0 e 5 Volt associati al bit 1, perch questo sistema crea ambiguit. Se una stazione invia la sequenza 0001000, altre stazioni potrebbero interpretare erroneamente questa stringa di bit come 10000000 o 01000000 perch non possibile distinguere tra il segnale nullo (0 Volt) della linea libera dal segnale nullo (0 Volt) associato al bit 0. Questo problema pu essere risolto associando +1 Volt al bit 1 e -1 Volt al bit 0, ma rimane ancora il problema dei ricevitori che possono campionare il segnale a una frequenza leggermente diversa da quella che il trasmettitore ha utilizzato per generarlo. Velocit di clock diverse possono mandare il ricevitore e il trasmettitore fuori sincronia facendo perdere 1informazione del punto in cui iniziano i bit, specialmente dopo una lunga serie di 0 oppure di 1 consecutivi. Ci che serve un sistema che consenta ai ricevitori di determinare senza ambiguit il punto iniziale, il punto finale o il punto centrale di ogni bit senza fare riferimento a impulsi esterni. Per risolvere il problema sono state inventate due tecniche chiamate codifica Manchester e codifica Manchester differenziale. Con la codifica Manchester, ogni periodo di bit diviso in due intervalli uguali. L 1 binario inviato scegliendo un livello di tensione alto durante il primo intervallo e un livello basso durante il secondo. Lo schema contrario utilizzato per trasmettere uno 0 binario: prima un livello di tensione basso e poi uno alto. Con questo schema si ha la certezza che ogni periodo di bit ha una transizione nel punto centrale, caratteristica che aiuta il ricevitore a sincronizzarsi con il trasmettitore. La sincronizzazione tra stazione ricevente e quella trasmittente avviene grazie a una semplice sequenza di 1 iniziali. Lo svantaggio della codifica Manchester che occupa il doppio della banda della codifica binaria elementare, perch gli impulsi sono larghi la met. Per esempio, per inviare dati a 10 Mbps il segnale deve cambiare 20 milioni di volte al secondo. La Figura seguente mostra la codifica Manchester. La codifica Manchester differenziale, mostrata nella Figura seguente, una variante della codifica Manchester elementare. Il bit 1 indicato dallassenza di una transizione allinizio dell'intervallo; il bit 0 indicato dalla presenza di una transizione allinizio dellintervallo. In entrambi i casi, c una transizione

39

nel punto centrale. Lo schema differenziale richiede dispositivi pi complessi , ma offre una maggiore immunit ai rumori . Tutti i sistemi Ethernet (nelle versioni fino a 10 Mbit per secondo eccetto quelle su fibra ottica), adottano la codifica Manchester perch pi semplice. Il segnale alto ha una tensione di +0,85 Volt e il segnale basso ha una tensione di 0,85 Volt, con il valore DC pari a 0 Volt. Ethernet non utilizza la codifica Manchester differenziale, altre LAN invece s (per esempio la IEEE 802.5 Token Ring). La Figura seguente, mostra graficamente la codifica Manchester dei dati.

40

3.3 Lo strato di collegamento di Ethernet Lo strato di collegamento dati di Ethernet (Livello 2 - Data Link Layer del modello ISO/OSI mostrato nella Figura seguente) sdoppiato in due sottostrati: il sottostrato di controllo del collegamento logico (Logical Link Control - LLC) ed il sottostrato di controllo dellaccesso al mezzo (Medium Access Control - MAC). Nel seguito, questi due sottostrati saranno indicati come sottostrato LLC e sottostrato MAC.

Il sottostrato LLC ha il compito di controllare lo scambio delle unit di dati (Protocol Data Unit - PDU) tra i terminali connessi alla LAN. In particolare, esso tratta le unit di dati del protocollo di sottostrato LLC allo scopo di rendere lo scambio informativo efficiente ed esente da errori. Il sottostrato MAC ha invece la funzione di regolare laccesso al mezzo, regolando eventuali contese tra le stazioni. Il particolare protocollo daccesso MAC (Medium Access Control - MAC) uno degli elementi caratteristici di una LAN. La seguente Figura mostra le funzioni dei sottostrati.

41

3.4 Sottostrato MAC I protocolli MAC possono essere raggruppati i due categorie: Ad accesso casuale; Ad accesso controllato. Nel primo caso, un terminale pu iniziare il trasferimento di ununit di dati in qualsiasi istante, previa leventuale esecuzione di opportune procedure di ascolto del canale. Invece, nel secondo caso, il terminale vincolato all'emissione solo in opportuni istanti, determinati dall'esecuzione della procedura di accesso. Per le sue modalit di funzionamento, un protocollo ad accesso casuale non evita che accadano conflitti di accesso al mezzo (collisioni). Per tale motivo occorre prevedere opportuni meccanismi, che garantiscano il corretto trasferimento delle informazioni anche se tali conflitti accadono. Un esempio di protocollo ad accesso casuale il CSMA/CD, utilizzato nella rete Ethernet. Una collisione avviene quando due o pi terminali emettono contemporaneamente una unit informativa sul canale trasmissivo. In questo caso, per effetto della mutua interferenza tra i segnali, il contenuto informativo delle unit informative viene corrotto. Un protocollo ad accesso casuale deve quindi essere in grado di attivare opportune procedure di ritrasmissione in modo da garantire laffidabilit del trasferimento informativo. Invece, nel caso di protocolli ad accesso controllato, uno specifico segnale autorizza un terminale ad inviare i propri dati, evitando cos laccesso contemporaneo sul canale trasmissivo e quindi le collisioni. Per tale ragione questa classe di protocolli anche detta senza collisioni. La gestione del segnale di controllo pu essere demandata ad una stazione speciale (controllo centralizzato), oppure pu essere condivisa fra tutti i terminali del sistema (controllo distribuito). Un esempio di protocollo ad accesso controllato con controllo centralizzato il protocollo ad interrogazione (polling), mentre esempi di analoghi protocolli a controllo distribuito sono il protocollo a testimone (token) e il protocollo a coda distribuita.

42

3.5 Protocollo CSMA/CD I protocolli daccesso di tipo casuale sono a controllo completamente distribuito e caratterizzati dal fatto che lemissione delle unit di dati da parte delle stazioni connesse alla rete avviene in modo non coordinato: una stazione pu emettere, infatti, le proprie unit di dati in qualsiasi istante. Tale modo di operare non evita il presentarsi di eventi di collisione, che accadono quando due o pi unit di dati sono emesse simultaneamente da due o pi stazioni. Una collisione determina la completa inintelligibilit delle unit di dati in essa coinvolte e quindi la necessit, da parte delle stazioni emittenti, di provvedere alla loro ritrasmissione. Quando il traffico offerto alla rete cresce, anche la probabilit di collisione aumenta; le collisioni sono quindi una potenziale causa di instabilit nel funzionamento della rete. A causa della semplicit delle loro procedure, i protocolli ad accesso casuale sono facilmente realizzabili e relativamente poco costosi ed hanno avuto una larga applicazione in LAN di tipo commerciale. In particolare, essi si adattano ad ambienti caratterizzati da un elevato numero di terminali, ognuno dei quali offre un traffico di tipo interattivo, altamente intermittente. Esistono numerosi schemi di protocolli ad accesso casuale, che si differenziano principalmente per le strategie seguite per ridurre il numero di collisioni, o, comunque, per limitarne leffetto sulle prestazioni della rete. Il protocollo CSMA/CD (Carrier Sense Multiple Access/Collision Detection) descritto nello standard IEEE 802.3 ed utilizzato in LAN con topologia a bus bidirezionale. Adotta la strategia ascolta prima di parlare. Secondo questo schema, un terminale che deve emettere deve preventivamente ascoltare il canale. Se il canale libero, la emissione pu iniziare immediatamente; altrimenti sar ritardata ad un successivo istante di tempo, la cui occorrenza viene stabilita attraverso lesecuzione di una procedura di persistenza. A tale proposito, esistono tre distinte possibilit: 1-persistente; 0-persistente; p-persistente. Il comportamento mostrato nella Figura seguente:

43

La procedura 1-persistente prevede che, se al momento dellascolto, il canale occupato, il terminale continui lascolto del canale ed esegua la sua emissione non appena il canale diventi libero. La procedura 0-persistente differisce completamente dalla precedente; infatti, se il canale occupato, il terminale ritarda la emissione di un intervallo determinato attraverso lesecuzione di un algoritmo di subentro (backoff). Questo ha lo scopo di casualizzare il nuovo accesso al canale e quindi di ridurre la probabilit di collisione. Un comportamento intermedio fornito dalla procedura p-persistente. In questultimo caso, se il canale occupato, il terminale attende che ritorni nello stato di libero. A questo punto la emissione avviene con probabilit p, mentre con probabilit 1-p il terminale attende ulteriormente un intervallo la cui durata si calcola con lalgoritmo di subentro. In Ethernet utilizzata la procedura 1-persistente. Limportanza dellalgoritmo di subentro dimostrata dal seguente esempio. Durante la trasmissione di una PDU pi di un terminale pu effettuare lascolto del canale ottenendo lo stesso risultato di canale occupato. Se il nuovo tentativo di trasmissione avvenisse dopo un intervallo di tempo fisso, tutti i terminali eseguirebbero le

44

operazioni di ascolto del canale alle stesse distanze temporali reciproche in cui hanno effettuato la medesima operazione la prima volta. Ci causerebbe un ulteriore ritardo nella trasmissione per effetto dell'occupazione del canale. Il protocollo CSMA/CD caratterizzato dal fatto che i terminali oltre alla strategia di ascoltare prima di parlare, utilizzano anche quella di ascolta mentre parli per tutta la durata della trasmissione. In questo modo tutte i terminali sono in grado di rivelare le collisioni confrontando la sequenza di bit trasmessa con quella ricevuta. Tale accorgimento ha il vantaggio di consentire linterruzione della trsmissione di una unit informativa nellistante in cui viene la collisione viene rivelata e quindi di ridurre il tempo di occupazione non utile del canale. Quando viene rivelata una collisione, la trasmissione , come detto, interrotta. Listante in cui sar effettuato il tentativo successivo determinato utilizzando lalgoritmo di subentro. Il problema pi importante che occorre considerare nelluso del protocollo CSMA/CD, ed in generale in tutti i protocolli ad accesso casuale, riguarda la degradazione delle prestazioni ad alto traffico. In particolare, questa si verifica poich, quando il traffico offerto al bus cresce, il numero delle collisioni tende ad aumentare e quindi aumenta il tempo in cui il canale non disponibile per le trsmissioni. Se il traffico supera un determinato valore di soglia, la durata di occupazione del canale per le collisioni diviene via via preponderante rispetto a quella spesa in trasmissioni utili, fino ad impedire le trasmissioni stesse. Con riferimento allo standard IEEE 802.3, le funzioni principali del livello MAC-CSMA/CD, per quanto riguarda la trsmissione e la ricezione delle MAC-PDU, sono le seguenti. Nella trasmissione delle MAC-PDU: accettare i dati dallo strato LLC e costruire la PDU; presentare un flusso di dati seriale allo Strato Fisico per la codifica e per la successiva trasmissione; ritardare la trasmissione se il canale occupato; se rivelata una collisione, interrompere la trasmissione, svolgere una procedura di imposizione di collisione (collision enforcement) per segnalare levento agli altri terminali ed eseguire lalgoritmo di subentro per decidere quando dovr essere ritrasmessa la PDU;

45

assicurare che due PDU consecutive siano separate da un intervallo di durata non inferiore ad un valore specificato (tempo di intertrama) e che le PDU abbiano lunghezza non inferiore ad un valore opportuno, in modo che ogni terminale possa rivelare eventuali collisioni. Nella ricezione delle MAC-PDU: ricevere un flusso seriale di dati dallo strato fisico; presentare allo strato LLC le PDU indirizzate al terminale locale (direttamente o in modo diffusivo). Lalgoritmo di subentro definito nello standard IEEE 802.3 di tipo esponenziale binario troncato (truncated binary exponential backoff) ed ha lo scopo di determinare lintervallo di tempo al termine del quale avviene un nuovo tentativo di trsmissione dopo una collisione.

46

3.6 Sottostrato LLC I vari standard differiscono a livello fisico e nel sottostrato MAC, ma sono compatibili a Livello Data Link. Ci ottenuto tramite il sottostrato LLC, che offre una interfaccia uniforme verso lo strato di rete (Livello 3 - Network Layer). Il protocollo di controllo del collegamento logico LLC, definito nello standard IEEE 802.2, ha il compito di: realizzare lo scambio delle unit informative tra i terminali connessi alla LAN; organizzare il flusso delle LLC-PDU; gestire e interpretare i comandi e le risposte; eseguire le funzioni di rivelazione e di recupero degli errori. Lo strato LLC stato definito in modo indipendente rispetto alle diverse alternative di protocolli daccesso della serie IEEE 802 e pu essere quindi applicato a qualsiasi tipo di rete locale. Per soddisfare i requisiti di un ampia gamma di applicazioni sono stati definiti due tipi di servizio di trasferimento tra le entit dello strato LLC: il servizio senza connessione (connectionless); il servizio con connessione (connection-oriented). Il servizio senza connessione, utilizzato da Ethernet, utilizza un sottoinsieme delle funzionalit del servizio dello strato LLC ed impiegato quando i protocolli di pi alto livello dispongono delle funzionalit necessarie per il controllo degli errori e della sequenzialit delle unit informative scambiate. Questo tipo di servizio non garantisce la consegna delle LLC-PDU. In breve, il servizio senza connessione del sottostrato LLC: La sorgente invia direttamente i messaggi al destinatario senza stabilire a priori nessuna forma di connessione; Il destinatario non invia nessun tipo di acknowledge (ACK); Se il messaggio perso o rovinato dai disturbi non viene fatto nessun tentativo a questo livello di recuperare lerrore; Nessuna procedura di controllo di flusso e le trame non sono numerate; La trasmissione pu essere punto-punto, multipunto o broadcast.

47

Il servizio con connessione garantisce il trasferimento affidabile ed in sequenza delle LLC-PDU su di una connessione logica denominata connessione di strato LLC (Data Link Connection). E possibile che un terminale gestisca contemporaneamente varie connessioni logiche con terminali diversi. Ogni connessione logica instaurata e gestita indipendentemente dalle altre, sia per quanto riguarda la definizione dei suoi parametri, sia dal punto di vista dello scambio informativo. In breve, il servizio con connessione del sottostrato LLC: Sorgente e destinazione aprono una connessione prima di trasferire i dati e la chiudono al termine; I frame sono numerati; Il livello 2 garantisce che ogni frame inviato sia ricevuto correttamente; Il livello 2 garantisce che ogni frame sia ricevuto esattamente solo una volta; Il livello 2 garantisce che tutti i frame siano ricevuti nellordine corretto. La possibilit per un terminale di gestire una pluralit di connessioni di strato LLC con terminali diversi una diretta conseguenza dellambiente multiaccesso tipico delle LAN. Nel caso delle LAN, un unico mezzo trasmissivo collega una molteplicit di terminali e quindi possono coesistere sulla stessa connessione fisica pi connessioni logiche distinte con origine e destinazione diverse. E quindi necessario prevedere i mezzi per distinguere tali connessioni.

48

3.7 Frame Ethernet Nonostante Ethernet abbia diverse topologie, lelemento comune nella struttura del frame che viene definito DIX (DEC, Intel, Xerox) ed rimasto fedele alla versione originale. La struttura del frame mostrata nella seguente Figura:

Ogni frame comincia con un campo preamble (preambolo) di 7 byte, ognuno contenente lo schema di bit 10101010. La codifica Manchester di questo schema produce unonda quadra di 10 MHz per 6,4 usec che permette al clock del ricevitore di sincronizzarsi con quello del trasmettitore. Devono rimanere sincronizzati per il resto del frame, usando la codifica Manchester per tenere sotto controllo i limiti dei bit. Il campo SOF (Start of Frame) contiene lo schema di bit 10101011 ed utilizzato come delimitatore di inizio trame. Il frame contiene due indirizzi: uno rappresenta la destinazione e laltro la sorgente. Lo standard consente indirizzi da 2 e da 6 byte, ma i parametri definiti per la banda base 10 Mbps utilizzano solo indirizzi da 6 byte. Il bit di ordine pi elevato nel campo destination MAC address (indirizzo di destinazione) 0 per gli indirizzi ordinari oppure 1 per gli indirizzi di gruppo. Gli indirizzi di gruppo permettono a molte stazioni di rimanere in ascolto di un singolo indirizzo. Quando un frame viene inviato a un indirizzo di gruppo, tutte le stazioni di quel gruppo lo ricevono. La trasmissione diretta a un gruppo di stazioni definita multicast. Lindirizzo composto da tutti bit 1 riservato per la trasmissione broadcast.

49

Un frame che contiene tutti 1 nel campo destination MAC address accettato da tutte le stazioni della rete. La differenza tra multicast e broadcast abbastanza importante, perci utile ricordarla: un frame multicast inviato a un gruppo selezionato di stazioni su Ethernet; un frame broadcast inviato a tutte le stazioni su Ethernet. La trasmissione multicast pi selettiva, ma richiede una gestione del gruppo. La trasmissione broadcast pi rozza, ma non richiede alcuna gestione. Unaltra caratteristica interessante dellindirizzamento legata al bit 46 (adiacente al bit di ordine pi elevato), usato per distinguere gli indirizzi locali da quelli globali. Gli indirizzi locali sono assegnati da ogni amministratore di rete locale; gli indirizzi globali, invece, sono assegnati centralmente da IEEE per garantire che nessuna stazione nel mondo utilizzi lo stesso indirizzo globale di unaltra stazione. In pratica ogni stazione dovrebbe poter comunicare in modo univoco con qualunque altra stazione semplicemente adoperando il corretto numero di 48 bit. Spetta allo strato di rete capire come individuare la destinazione. Il campo successivo, type (tipo), indica al ricevitore che cosa deve fare del frame. Sullo stesso computer si possono usare simultaneamente pi protocolli dello strato di rete, perci quando arriva un frame Ethernet il kernel deve sapere quale protocollo dovr gestire il pacchetto. Il campo type indica il processo a cui passare il frame. Dopo questo campo arriva il campo data (dati), lungo fino a 1500 byte. Il frame non ha solo una lunghezza massima, ma anche una lunghezza minima; anche se qualche volta pu tornare utile, un campo data lungo 0 byte causa un problema. Quando rileva una collisione, il ricetrasmettitore tronca il frame corrente e ci significa che sul cavo compaiono continuamente bit sparsi e pezzi di frame. Per aiutare a distinguere i frame validi dalla spazzatura, Ethernet richiede che i frame validi siano lunghi almeno 64 byte dal destination address al checksum inclusi. Se la parte occupata dai dati lunga meno di 46 byte, il campo pad (riempimento) viene utilizzato per riempire il frame. Imporre una lunghezza minima serve anche per un altro (e pi importante) motivo: per impedire a una stazione di completare la trasmissione di un frame breve prima che il primo bit abbia raggiunto la fine del cavo, dove potrebbe collidere con un altro frame. Questo problema rappresentato graficamente nella seguente Figura:

50

Al tempo 0, la stazione A che si trova a unestremit della rete invia un frame. Sia il tempo di propagazione impiegato dal frame per raggiungere laltra estremit della rete. Appena prima che il frame raggiunga laltra estremit (al tempo -), la stazione pi distante B inizia a trasmettere. Quando si accorge di ricevere pi potenza di quella emessa, B capisce che avvenuta una collisione perci interrompe la sua trasmissione e genera un burst di rumore a 32 bit (Sequenza Jamming) per avvisare tutte le altre stazioni. In altre parole, ostruisce il mezzo di trasmissione per essere sicura che il trasmettitore rilevi la collisione. Allistante 2 anche il trasmettitore vede il burst di rumore e interrompe la sua trasmissione, aspetta quindi per un periodo di tempo casuale prima di ritentare. Se una stazione tenta di trasmettere un frame molto corto, potrebbe succedere che avvenga una collisione, ma la trasmissione si concluda prima che il burst di rumore torni indietro (ossia prima dellistante 2). In questo caso il trasmettitore concluder erroneamente che il frame stato inviato con successo. Per evitare che si presenti una situazione di questo tipo, tutti i frame devono impiegare pi di 2 per arrivare a destinazione; in tal modo la trasmissione ancora in esecuzione quando il burst di rumore torna al trasmettitore. Per una LAN a 10 Mbps che pu essere lunga al massimo 2500 metri e pu contenere non pi di 4 ripetitori (secondo le specifiche IEEE 802.3), il viaggio di andata e ritorno (round trip delay) dura circa 50 usec nel peggiore dei casi. A 10 Mbps, un bit impiega 100 nsec, perci 500 bit la dimensione che garantisce che tutto funzioni. Per aggiungere un margine di sicurezza, questo numero stato arrotondato a 512 bit, ossia 64 byte (si assume che il Time Slot 2 sia di

51

51,2 usec). I frame con meno di 64 byte sono riempiti automaticamente dal campo pad fino a raggiungere la dimensione minima richiesta. Al crescere della velocit della rete, la lunghezza minima delle trame deve aumentare o, proporzionalmente, deve diminuire la lunghezza massima del cavo. Per una LAN lunga 2500 metri che opera a 1 Gbps, la dimensione delle trame dovrebbe essere 6400 byte; in alternativa la dimensione minima potrebbe essere 640 bye se la distanza massima tra le due stazioni fosse 250 metri. Spostandosi verso le reti multigigabit, queste restrizioni diventano sempre pi dolorose. Lultimo campo Ethernet il checksum (codice di controllo), un codice hash dei dati di 32 bit. Se alcuni bit di dati sono interpretati in modo errato (a causa del rumore lungo il cavo), il checksum risulter certamente sbagliato e lerrore verr rivelato. Il checksum un CRC (Cyclic Redundancy Check) che esegue solo il rilevamento degli errori e non si preoccupa della correzione. Quando IEEE cre lo standard Ethernet, il comitato modific il formato DIX sostituendo il campo type col campo lenght (lunghezza del frame) per mantenere la compatibilit con gli standard IEEE 802.4 e IEEE 802.5. La nuova struttura non permetteva al ricevitore di capire che cosa si sarebbe dovuto fare con il frame in arrivo; il problema stato risolto aggiungendo alla parte dei dati una piccola intestazione che fornisce questa informazione. Sfortunatamente, quando venne pubblicato lo standard IEEE 802.3, cera cos tanto hardware e software per Ethernet DIX gi in uso che pochi produttori e utenti furono entusiasti della conversione del campo type in campo lenght. Nel 1997, IEEE gett la spugna e disse che entrambi i formati andavano bene. Per fortuna tutti i campi type in uso prima del 1997 erano pi grandi di 1500 byte, di conseguenza, qualunque numero minore o uguale a 1500 pu essere interpretato come lenght e qualunque numero maggiore di 1500 pu essere interpretato come type.

52

3.8 Algoritmo di backoff esponenziale binario Il protocollo di comunicazione MAC di Ethernet si basa sul CSMA/CD (Carrier Sense Multiple Access Collision Detection). Utilizzando il CSMA/CD ogni nodo pu rilevare se un altro nodo sta trasmettendo sulla rete (Carrier Sense). Quando un nodo individua una portante si pone in attesa fino a quando la rete non stata rilasciata. Se due nodi si trovano a trasmettere contemporaneamente (Multiple Access), si verificher una collisione e tutte le informazioni andranno perdute. I nodi sono quindi in grado di rilevare anche le collisioni monitorando il relativo segnale fornito dalla livello fisico (Collision Detection). Quando un nodo inizia una trasmissione ci sar un intervallo di tempo, chiamato collision window, durante il quale possibile che si verifichi una collisione. Quando tale intervallo terminato tutti i nodi dovranno avere la loro rilevazione di portante attivata in modo da non effettuare una comunicazione mentre la rete occupata. Vediamo ora in che modo viene gestita lattesa casuale dopo una collisione. Dopo una collisione, il tempo diviso in intervalli discreti la cui lunghezza uguale al tempo di propagazione di andata e ritorno del caso peggiore sul mezzo di trasmissione (2). Per contenere il percorso pi lungo supportato da Ethernet, lintervallo temporale stato impostato a intervalli di 512 bit, o di 51,2 usec (Time Slot pari 2) come stato spiegato precedentemente. Dopo la prima collisione, ogni stazione aspetta 0 o 1 intervalli temporali prima di ritentare. Se due stazioni collidono e ognuna sceglie lo stesso numero casuale, la collisione si ripeter. Dopo la seconda collisione, ogni stazione sceglie 0, 1, 2 o 3 a caso e rimane in attesa per quel numero di intervalli temporali. Se avviene una terza collisione la volta successiva il numero dintervalli di attesa scelto a caso tra 0 e 2^3 -1. In generale, dopo n collisioni, viene scelto un numero intero casuale r compreso tra 0 e 2^n - 1 e si salta quel numero di intervalli; dopo 10 collisioni il tetto massimo dellintervallo di scelta rimane bloccato a 1023 intervalli (2^10 1). Dopo 16 collisioni il chip di controllo rinuncia e comunica alla stazione un errore. Ulteriori operazioni di ripristino sono demandate agli strati pi alti. Questo algoritmo, chiamato backoff esponenziale binario, stato scelto perch si adatta dinamicamente al numero di stazioni che tentano di trasmettere. Se lintervallo casuale per tutte le collisioni fosse 1023, la possibilit che due stazioni collidano una

53

seconda volta sarebbe trascurabile, ma lattesa media dopo una collisione durerebbe centinaia di intervalli temporali e il ritardo introdotto sarebbe pesante. Poich lintervallo di scelta casuale cresce esponenzialmente con il numero di collisioni avvenute, lalgoritmo assicura un basso ritardo quando poche stazioni collidono e garantisce la risoluzione della collisione in un intervallo di tempo ragionevole quando la collisione coinvolge molte stazioni. Troncando il backoff a 1023 si impedisce al confine di crescere troppo. Lalgoritmo controlla quindi il carico della rete e nel caso in cui risulti pesantemente caricata e quindi di pari passo aumenti la possibilit di collisioni, esso aumenter lintervallo di ritardo. In questo modo sar alleggerita la rete e quindi diminuita la possibilit di future collisioni. Il ritardo introdotto dallInterframe Gap Period (IPG) per Ethernet a 10 Mbps pari a 9,6 usec. Tale algoritmo descritto dalla flowchart mostrata nella seguente Figura:

54

3.9 Ethernet classica Esistono molte versioni di Ethernet nelle quali si hanno diverse velocit di trasmissione e diversi mezzi fisici trasmissivi utilizzati. La Ethernet classica consente una velocit di trasmissione fino a 10 Mbps ed standardizzata con la sigla IEEE 802.3. Verranno descritte qui di seguito le versioni pi comuni. La prima versione di rete Ethernet usava un cavo coassiale del diametro di circa un centimetro che si snodava lungo ledificio, portandosi in vicinanza delle diverse stazioni da collegare. Ecodificata dallIEEE con il nome di 10BASE5. La sigla significa: 10 indica la velocit di trasmissione massima prevista, cio 10 milioni di bit per secondo, BASE labbreviazione di baseband, che si traduce in banda base. Il termine indica che il segnale trasmissivo viaggia sulla rete usando unonda portante (a codifica Manchester) che ha una sola frequenza di 20 MHz, sulla quale vengono convogliate le informazioni binarie che devono passare da un nodo allaltro. La cifra 5 si riferisce alla lunghezza massima del singolo segmento, vale a dire 500 metri. Il cavo coassiale (RG213) deve essere ininterrotto dallinizio alla fine. Il collegamento delle singole stazioni avviene per mezzo di speciali connettori che si fissano sul cavo coassiale e lo perforano creando un contatto con i fili allinterno (si chiamano connettori a vampiro proprio perch la loro punta perfora il cavo coassiale succhiandone i dati). Questo sistema conferisce notevole robustezza al canale di collegamento visto che lintero tratto di coassiale non ha giunture e anche dove ne avesse si userebbero connettori a vite che resistono anche agli strappi violenti. La debolezza sta nei connettori a vampiro che, se male inseriti oppure forzati nella loro sede, possono mettere in cortocircuito il coassiale visto che la punta del vampiro deve superare la calza esterna (il primo polo del coassiale) senza toccarla prima di arrivare al filo di rame interno (il secondo polo, detto anche anima). Questi connettori sono tra laltro molto costosi perch incorporano tutta la circuiteria elettronica per trasmettere e ricevere i segnali sul cavo e, nel loro insieme (presa vampiro pi ricetrasmettitore) prendono il nome di transceiver (transmitter-receiver). La connessione fra transceiver e stazione di lavoro avviene per mezzo di un cavo a 8 coppie di fili (drop-cable) che si allaccia da una parte alla presa sul retro della scheda (per mezzo di un sistema di fissaggio a slitta) e dallaltra a unanaloga presa

55

alla base del transceiver. La sua lunghezza massima di 50 metri, anche se solitamente i tagli vanno da 3 metri a 15metri, e fornisce al transceiver anche lalimentazione di cui ha bisogno. Il motivo per cui serve questo ulteriore cavo di derivazione viene dal fatto che il cavo coassiale rigido usato nelle reti 10BASE5 pu compiere solo curve molto larghe e difficilmente pu essere sagomato in modo da avvicinarsi a tutti i nodi presenti. Tuttal pi si riesce a fargli compiere un percorso mediano tra i vari punti, usando il drop-cable per arrivare alle singole stazioni. Inoltre, anche se il cavo coassiale passasse, per coincidenza, molto vicino a un gruppo di workstation, sarebbe comunque necessario usare il drop-cable perch i transceiver montati in groppa al coassiale devono distare per lo meno 2,5 metri luno dallaltro, anzi dovrebbero comunque essere posizionati a distanze, uno dallaltro, che siano multiple di 2,5 metri, perci serve comunque un cavo per ritornare al punto in cui la connessione serve davvero. Per facilitare il posizionamento del transceiver, il cavo coassiale reca stampigliate bande nere ogni 2,5 metri. Questa limitazione serve a ridurre al minimo i disturbi che una stazione pu provocare sulla vicina. Il cavo impiegato pu avere un rivestimento in pvc oppure in teflon. A entrambi gli estremi di questo segmento deve essere montato un terminatore, detto anche tappo di terminazione. Si tratta di un particolare tipo di connettore che chiude il percorso del cavo collegando un polo allaltro mediante un resistore da 50 Ohm che scarica qualsiasi segnale in arrivo affinch non si rifletta allindietro e non vada a collidere con altri impulsi trasmessi. Uno dei due terminatori dovrebbe essere possibilmente collegato a terra per evitare laccumularsi di cariche elettriche sul cavo. Nel caso in cui la rete dovesse estendersi oltre i 500 metri consentiti, bisognerebbe ricorrere a un ripetitore che amplifichi e ritemporizzi il segnale. Il ripetitore fa parte delle 100 stazioni che possono essere ospitate nel segmento. Dallaltra parte del ripetitore pu naturalmente esserci un secondo segmento, anchesso con 100 stazioni. Una regola delle reti Ethernet dice che si possono collegare fino a 5 segmenti con 4 ripetitori tra loro (in questo caso per una lunghezza massima di 2460 metri). La rete 10BASE5 viene anche chiamata Thick Ethernet e pu essere utilizzata come dorsale per altre reti Ethernet, su coassiale sottile oppure su doppino, in tal caso la lunghezza massima della rete (diametro) va calcolata sommando i diversi segmenti con le lunghezze previste dai singoli standard. La seguente Figura mostra un tipico collegamento con 10BASE5.

56

Altra versione di Ethernet chiamata 10BASE2. Il nome ci dice che funziona anchessa a 10 Mbps, con una trasmissione di tipo baseband (un solo canale trasmissivo comune a tutti) e su una distanza massima di 200 metri. Usa un cavo coassiale (RG58) sottile di diametro 5 millimetri dotato di connettore BNC. Rispetto alla versione su coassiale grosso, questa rete estremamente maneggevole. Un connettore a T serve a collegare due tratte di cavo coassiale alla scheda di rete. La parte che vediamo davanti sinserisce nello spinotto che spunta da dietro la scheda. Sui due attacchi maschio sinseriscono invece gli spinotti del cavo entrante e del cavo uscente. Tutte le schede devono collegarsi alla rete attraverso un connettore a T. Questo vale anche per lultima scheda del segmento. In questo caso a un estremo del connettore a T entra il cavo che va alla prossima stazione, mentre allaltro estremo c un terminatore di chiusura (tappo). Alla pari dellEthernet 10BASE5, anche qui la rete ha una topologia elettrica a bus che coincide con una topologia fisica sempre a bus, perci il cavo di collegamento uno solo e deve snodarsi come un serpentone lungo lufficio passando da una stazione di lavoro allaltra. A differenza del coassiale grosso, non necessario disporre di transceiver (che sono gi integrati nella scheda) e il cavo molto flessibile (ha un diametro di circa 5 millimetri); perci pu essere portato fin sul retro del PC e collegato direttamente al connettore dinterfaccia. Il cavo deve avere un inizio e una fine, quindi deve trattarsi di un segmento, e ai due estremi vanno montati i tappi di terminazione, simili a quelli usati nelle reti 10BASE5, ma pi piccoli e con lattacco a baionetta (BNC) che tipico delle reti 10BASE2 su coassiale sottile. Anche qui,

57

uno dei due terminatori, possibilmente, dovrebbe essere collegato a terra. La rete non composta da un singolo spezzone di cavo, ma da tanti cavi concatenati. Il punto in cui lo spezzone incontra il successivo coincide con il punto in cui un nodo si collega alla rete. Il cavo viene venduto in spezzoni gi pronti di lunghezza variabile (da 1 metro a 5 metri, di solito). A entrambe le estremit dello spezzone troviamo uno connettore a baionetta BNC. Il rovescio della medaglia di questa rete estremamente economica e versatile la vulnerabilit. Il cavo coassiale non ha la robustezza di quello usato per le reti 10BASE5 e soprattutto in prossimit dei connettori tende a staccarsi. Qualunque interruzione o cortocircuito provocato su un tratto del coassiale provoca la caduta dellintera rete e non possibile ripristinare la connessione fino a che il pezzo difettoso non viene rimpiazzato. Anche il guasto di una delle schede collegate in rete pu provocare larresto del sistema. Spesso difficile localizzare esattamente dove il guasto si verificato e, se la rete fosse particolarmente estesa, diventa poco pratico passare da una macchina allaltra per controllare tutti i connettori e tutte le schede, staccandoli uno per uno. Quindi 10BASE2 diventa sconveniente quando il numero di stazioni in gioco supera le poche decine, proprio per i limiti di manutenzione che presenta in caso di guasto. Il vero pregio consiste nella facilit di montaggio e di espansione della rete. La distanza minima tra una macchina e laltra di 50 centimetri (lunghezza minima di un tratto di cavo) e non 2,5 metri come nel cavo coassiale grosso usato per lEthernet 10BASE5, perci abbastanza agevole cablare anche macchine tra loro affiancate. Una rete di questo genere pu essere facilmente integrata con una rete 10BASE5, basta usare connettori BNC che abbiano unestremit sagomata per accettare i connettori Serie N per il coassiale grosso. Si collega anche molto facilmente a una rete 10BASET perch ci sono in commercio dei concentratori (HUB) per reti su doppino che hanno anche una presa BNC. In questo caso le due reti rimangono separate in termini di segmento, perci si pu raggiungere su entrambi i lati la massima distanza consentita dai rispettivi standard. Le reti 10BASE2 sono conosciute col nome Thin Ethernet. La seguente Figura mostra un tipico collegamento con 10BASE2.

58

Una versione poco diffusa di Ethernet, chiamata 10BASE-F, realizzata con cablaggi in fibra ottica. La trasmissione del segnale nei sistemi in fibra ottica ovviamente basata sulla luce (tipicamente con lunghezza donda pari a 850 nm), invece che sulla tensione. La topologia utilizzata in questo caso quella a stella, ma le singole schede Ethernet sono ora collegate, tramite un cavo AUI munito di connettore DB-15, con un ricetrasmettitore esterno (FOMAU-Fiber Optics MAU) che a sua volta connesso, tramite fibra ottica (in realt sono necessarie due linee, una per la trasmissione e una per la ricezione) a un ripetitore. Esistono ovviamente diversi tipi di cavi disponibili, da quelli che racchiudono in un rivestimento in PVC una sola coppia di cavi a quelli utilizzati per il collegamento, per esempio, di due palazzi diversi, che invece racchiudono un fascio di fibre molto pi consistente. I connettori terminali necessari per i cavi a fibra ottica son noti come connettori ST. La lunghezza massima di ogni tratto in fibra pu arrivare fino a 2000 m. Il pi grande vantaggio di questo tipo di supporto ovviamente legato allinsensibilit del fascio luminoso rispetto alle interferenze elettromagnetiche di fondo, aspetto che diventa essenziale quando il cavo deve uscire dallambiente direttamente controllabile e collegare, per esempio, pi edifici tra loro. Ogni segmento in fibra ottica, inoltre, pu essere connesso solamente a due dispositivi (connessione punto-punto) e non sono permesse diramazioni, con un conseguente aumento della sicurezza; la velocit concessa infine, superiore rispetto a quella caratteristica dei cavi coassiali ed quindi possibile progettare una rete basata su fibra che oggi funzioni a 10 Mbps e la cui struttura portante possa essere

59

utilizzata anche nel caso in cui, nel futuro, si voglia incrementare la velocit a 100 Mbps. La seguente Figura mostra la connessione con Ethernet con 10BASE-F.

Lampiamente diffusa versione di Ethernet a 10 Mbps, chiamata 10BASE-T, cablata sul doppino telefonico. Limpianto elettrico di una rete 10BASE-T identico a quello di qualsiasi altra rete Ethernet su rame: esiste un solo percorso comune a tutte le stazioni di lavoro e tutto quello che viene trasmesso da una di queste viene automaticamente ascoltato da tutte le altre. La topologia elettrica a bus, mentre la topologia fisica a stella. Questo significa che nel deporre i cavi all'interno delledificio si segue un impianto stellare: tutte le connessioni di un certo gruppo confluiscono in un singolo punto dove vengono collegate a un concentratore (HUB). Il concentratore funziona da ripetitore, tuttavia fa in modo che un raggio di questa stella sia elettricamente il prolungamento dellaltro e quindi operi come se fosse un troncone di coassiale ininterrotto. Il vantaggio di portare tutte le connessioni verso un singolo punto, oltre alleconomicit del doppino, comporta due vantaggi importanti: possibile allestire in anticipo diverse prese in punti uniformemente distribuiti nel locale, senza doverle attivare tutte immediatamente (basta non collegare al concentratore quei rami che sono temporaneamente inattivi); inoltre qualsiasi ramo difettoso viene automaticamente escluso senza influire sul funzionamento del resto della rete. Perci eventuali interruzioni di cavo o guasti della scheda vengono risolti automaticamente

60

dal concentratore che isola la macchina interessata e segnala con una luce gialla che esiste un problema su quella presa. Per inserire una macchina in rete sufficiente disporre di una porta libera nel concentratore e tirare un cavo che unisca questultimo alla workstation. Il cavo in questo caso un doppino intrecciato non schermato (UTP - Unshielded Twisted Pair) dello stesso tipo usato negli impianti telefonici americani. Per le reti 10BASE-T basta che il doppino abbia due coppie: una per trasmettere e una per ricevere. Di solito, per, il cablaggio viene realizzato con un doppino a otto fili (quattro coppie) cos da poterlo usare per qualsiasi genere di applicazione: collegamento di linea seriale per un terminale (servono otto fili), presa per rete Ethernet (bastano 4 fili), presa per rete Token Ring (bastano 4 fili, ma sono diversi dai 4 usati per Ethernet) e via di questo passo. Ne esistono di due tipi. Il doppino di categoria 3 il pi economico e consente di trasportare fino a 16 Mbps. Va benissimo per una rete 10BASE-T ed stato utilizzato ampiamente, soprattutto nei primi anni Novanta. Il doppino di categoria 5 regge velocit fino a 100 Mbps (Fast Ethernet e altre reti di pari velocit) e costa ormai quasi quanto il cavo di categoria 3, perci viene usato in tutti i nuovi cablaggi. Naturalmente lintero percorso che va dalla scheda di rete allHUB deve essere di categoria 5 e questo include anche le prese a muro e qualsiasi pannello intermedio di cablaggio. Un particolare spinotto in plastica (RJ45) viene usato come connettore in tutte le reti che funzionano su doppino. Assomiglia allo spinotto usato nei telefoni, ma pi grande perch deve contenere otto fili. Uno spinotto viene inserito direttamente nella scheda di rete e laltro finisce direttamente nell'HUB. Lunico vincolo che il tratto di cavo non superi i 100 metri. Lunica deroga a questa regola vale per l'impiego del doppino ritorto schermato (STP - Shielded Twisted Pair), molto pi protetto dai disturbi rispetto allUTP utilizzato comunemente. Usando lSTP su una rete 10BASE-T si arriva a una tratta massima di 200 metri. Il segnale parte dalla stazione di lavoro e viaggia sul doppino non schermato perdendo intensit ad ogni metro che passa. Arriva allHUB che, grazie alle funzioni interne di ripetitore, lo riamplifica e lo ritrasmette a tutte le altre stazioni di lavoro usando segmenti di doppino dello stesso tipo. In ragione della presenza dellHUB, la rete 10BASE-T un po pi costosa di una rete 10BASE2, ma la differenza si va sempre pi assottigliando e tende a scomparire su reti di grandi dimensioni dove i benefici che il doppino offre superano di gran lunga le differenze di prezzo.

61

La rete 10BASE-T mantiene valida la regola che possono esistere fino a 5 segmenti con 4 ripetitori. Qui un segmento contiene solo 2 nodi: la stazione di lavoro e la porta dellHUB a cui collegato, che funge da ripetitore. La seguente Figura mostra un tipico collegamento con 10BASE-T.

62

3.10 Fast Ethernet Una prima evoluzione, in termini di velocit, della Ethernet classica a 10 Mbps chiamata Fast Ethernet (IEEE 802.3U) e consente velocit di trasmissione fino a 100 Mbps. Parametri principali di Fast Ethernet sono: data rate di 100 Mbps, bit time pari a 10 nsec, Interfame Gap Period (IPG) pari 0,96 usec e Slot Time pari a 5,12 usec (512 bit). La topologia delle reti Fast Ethernet ancora quella a stella e gli elementi principali sono ancora le schede di rete, i ripetitori e gli SWITCH. E abbandonato luso del cavo coassiale come mezzo trasmissivo e sostituito con il doppino intrecciato o la fibra ottica. Il meccanismo di controllo di accesso al supporto fisico (MAC) utilizzato nella versione classica di Ethernet era basato sulle collisioni: una singola stazione non era quindi in grado di ricevere e trasmettere nello stesso momento. Questo tipo di funzionamento, definito half-duplex, era dovuto al fatto che lalgoritmo CSMA/CD era nato nellambito di una topologia a bus con un unico canale condiviso da tutte le stazioni. Con lintroduzione della topologia a stella e degli SWITCH che instradano il segnale in ricezione solo nella direzione della stazione destinataria del messaggio invece che a tutte le stazioni che si trovano a valle del nodo, si riesce, praticamente, a realizzare delle connessioni punto a punto. In questa configurazione, allora, nella quale non c pi un canale condiviso, non pi necessaria la gestione half-duplex e diventa quindi possibile che un transceiver riceva e trasmetta contemporaneamente: si parla in questo caso di funzionamento in full-duplex. Nelle reti Fast Ethernet possibile avere un meccanismo di accesso al supporto fisico per ognuno dei centri stella, che possono o meno individuare un dominio di collisione a seconda che si tratti di semplici ripetitori o di SWITCH. Fast Ethernet utilizza la medesima struttura dei pacchetti, la stessa quantit di dati che ogni singolo pacchetto pu trasportare, lo stesso protocollo CSMA/CD e lo stesso algoritmo di backoff esponenziale binario della Ethernet classica. Le schede Fast Ethernet sono in grado di funzionare anche alle velocit previste dalle versioni precedenti di Ethernet, ovvero possono funzionare sia a 10 Mbps sia a 100 Mbps. Ovviamente necessario che i nodi della rete, in particolare i ripetitori e gli SWITCH, siano in grado di conoscere le potenzialit delle singole stazioni, per poterle poi utilizzare al massimo delle loro capacit (si parler allora di HUB multispeed). Secondo le specifiche relative allo standard 10BASE-T, il transceiver di

63

ogni stazione invia, anche quando non in corso alcuna trasmissione dati, dei segnali noti come Normal Link Pulse (NLP) che hanno lo scopo di testare in maniera continuativa lintegrit del collegamento. Modificando opportunamente questi segnali, per ottenere quelli che sono denominati Fast Link Pulse (FLP), possibile far coesistere la loro semplice funzione di test con la trasmissione di un messaggio, indirizzato allHUB pi vicino, che contiene informazioni sulle caratteristiche della scheda di rete. Il transceiver, quindi, comunica allo SWITCH la sua velocit di funzionamento, e la sua capacit o meno di funzionare in modalit full-duplex; tutte informazioni che lo SWITCH Fast Ethernet utilizzer in modo tale da ottimizzare il traffico dei segnali sulla rete. Questa caratteristica detta autonegoziazione. La seguente Figura mostra un sistema in cui sono presenti reti sia 10 Mbit/s e sia a 100 Mbit/s.

Verranno descritte qui di seguito alcune versioni di Fast Ethernet. La 100BASE-T4 la versione Fast Ethernet funzionante su doppini UTP almeno di classe 3 usando quattro coppie di doppini. Il collegamento tra stazione e HUB utilizza due doppini in modalit half-duplex, cio alternativamente in trasmissione o in ricezione, uno sempre in trasmissione ed un sempre in ricezione. La trasmissione avviene quindi su tre coppie di doppini contemporaneamente, mentre il quarto doppino, in ricezione, serve per permettere all'interfaccia fisica di rilevare la presenza di collisioni. Per ottenere la banda necessaria necessario abbandonare la codifica Manchester.

64

Il flusso binario a 100 Mbps viene suddiviso in tre flussi da 25 Mbaud (simboli, in questo caso ternari, al secondo). Infatti, trasmettere 100 Mbps divisi su tre canali significa trasmettere 100/3 = 33,3 Mbps su ogni canale e trasformare ogni ottetto in sei simboli ternari significa associare ad ogni simbolo uninformazione pari ad 8/6 di bit; quindi su ogni canale necessario trasmettere 33,3: (8/6) = 25 Mbaud. Con questo schema trasmissivo partendo da 8 bit, che consentono 256 possibili combinazioni diverse di valori, si codificano 6 simboli ternari, che consentono di rappresentare 729 valori e questo permette lintroduzione di informazioni aggiuntive per la sincronizzazione del flusso trasmissivo e per il controllo degli errori. Questa codifica che traduce 8 simboli binari in 6 simboli ternari chiamata 8B/6T. Con 100BASE-T4 non possibile la trasmissione full-duplex, ma solo in half-duplex e la distanza massima tra stazione e HUB 100 metri. La versione su fibra ottica delle reti Fast Ethernet prende il nome di 100BASE-FX e presenta una lieve differenza nella struttura rispetto alla sorella pi lenta 10BASE-F: in questo caso, infatti, la fibra ottica viene collegata direttamente alla scheda di rete, senza la necessit di passare tramite il cavo AUI munito di connettore DB-15 che, nella versione 10BASE-F, collegava la scheda con il ricetrasmettitore FOMAU esterno. Le fibre ottiche impiegate per questo tipo di sistemi sono solitamente multimodali di 62.5/125 micron oppure 50/125 micron quale mezzo trasmissivo e sono utilizzate in coppia: una per il canale di trasmissione e una per il canale di ricezione. Con 100BASE-FX sono consentiti solo SWITCH e non HUB e la modalit di funzionamento full-duplex. E utilizzata la stessa codifica di Ethernet 100BASE-TX, cio la 4B/5B. La lunghezza massima di un segmento in fibra ottica per reti Fast Ethernet che collega una stazione ad uno SWITCH 2000 metri. La seguente Figura mostra come collegare un scheda 100BASE-FX.

65

La versione pi diffusa di Fast Ethernet la 100BASE-TX. Il doppino telefonico con impedenza caratteristica di 100 Ohm, di categoria 5, protagonista della versione 10BASE-T, torna anche nella versione evoluta, ancora con unestensione massima di 100 metri. Lutilizzo dei singoli cavi identico al caso della tecnologia pi lenta, cos come sono identici i connettori, questo significa che un cablaggio di buona qualit (cavi di categoria 5) realizzato per supportare una rete 10BASE-T pu essere utilizzato anche per la versione pi veloce. La topologia della rete a stella nella quale le varie stazioni, equipaggiate con apposite schede Fast Ethernet, sono collegate a SWITCH o HUB. Viene utilizzata un coppia di doppini UTP-CAT5, uno per la trasmissione e uno per la ricezione. Le modalit di funzionamento possono essere sia half-duplex che full-duplex. Nel caso di funzionamento full-duplex le stazioni possono trasmettere ricevere contemporaneamente a 100 Mbps. Anche in questo caso non utilizzata la codifica di trasmissione Manchester, ma una codifica chiamata 4B/5B nella quale un simbolo di 4 bit viene codificato in un simbolo di 5 bit. La frequenza di clock del segnale utilizzata sul doppino in trasmissione 125 MHz. Ogni gruppo di cinque periodi di clock, ognuno contenente uno dei due valori di segnale, permette di ottenere 32 combinazioni di simboli. Sedici di queste combinazioni sono utilizzate per trasmettere i quattro gruppi di bit 0000, 0001, 0010... 1111; alcune delle rimanenti 16 sono utilizzate per funzioni di controllo.

66

Le combinazioni utilizzate sono state scelte per fornire transizioni sufficienti al mantenimento della sincronizzazione di clock. Quindi 4 bit ogni 5 periodi di clock a 125 MHz forniscono i 100 Mbps desiderati per ogni doppino.

67

3.11 Gigabit Ethernet Dallo sviluppo dello standard Fast Ethernet si arrivati solo qualche anno fa ad una versione 10 volte pi veloce, subito soprannominata Gigabit Ethernet. Lo standard stato ratificato col nome di IEEE 802.3Z. Lobiettivo era rendere Ethernet pi veloce mantenendo la compatibilit con tutti gli standard Ethernet esistenti. In particolare Gigabit Ethernet doveva offrire servizi datagram senza acknowledge di tipo multicast e unicast, adottare lo stesso schema di indirizzamento a 48 bit gi in uso e mantenere lo stesso formato dei frame, incluse le dimensioni massima e minima. Lo standard risponde a tutti questi requisiti. Tutte le configurazioni Gigabit Ethernet sono punto-punto. Nella pi semplice configurazione di Gigabit Ethernet due computer sono collegati direttamente tra loro. Il caso pi comune quello dove uno SWITCH o un HUB si collega a pi computer e ad altri SWITCH o HUB (topologia a stella). In entrambe le configurazioni ogni singolo cavo Ethernet collegato a due soli dispositivi. Gigabit Ethernet supporta due modalit operative: full-duplex e half-duplex. La modalit normale quella full-duplex, che permette al traffico di viaggiare contemporaneamente in entrambe le direzioni. Questa modalit utilizzata quando c uno SWITCH centrale collegato ai computer (o ad altri SWITCH) del perimetro. In questa configurazione tutte le linee hanno buffer, perci ogni computer o SWITCH libero di inviare frame quando vuole. Il trasmittente non deve esaminare il canale per vedere se qualcun altro lo sta gi utilizzando, perch la contesa impossibile. Sulla linea che collega un computer allo SWITCH, il computer lunico che pu trasmettere e la trasmissione ha successo anche se lo SWITCH sta contemporaneamente trasmettendo un frame a un altro computer, perch la linea full-duplex. Poich non si verifica contesa non si utilizza il protocollo CSMA/CD, perci la lunghezza massima del cavo dipende dalla forza del segnale e non dal tempo che un burst di rumore impiega per propagarsi fino al trasmittente nel peggiore dei casi. Gli SWITCH sono possono gestire pi velocit e lautonegoziazione supportata come in Fast Ethernet. Laltra modalit operativa, half-duplex, utilizzata quando i computer sono collegati ad un HUB e non ad uno SWITCH. LHUB non ha un buffer dove memorizzare i frame in arrivo; il dispositivo al suo interno collega elettricamente tutte le linee per simulare il cavo multidrop utilizzato nella Ethernet classica. In questa modalit le

68

collisioni sono ancora possibili, perci richiesto lutilizzo del protocollo CSMA/CD standard. Poich il frame minimo (di 64 byte) pu essere trasmesso 100 volte pi velocemente rispetto alla Ethernet classica, la distanza massima risulta 100 volte pi corta: 25 metri. Ci consente di preservare la propriet essenziale per cui il trasmittente sta ancora trasmettendo quando il burst di rumore torna indietro, anche nel peggiore dei casi. Con un cavo lungo 2500 metri, la trasmissione di un frame da 64 byte a 1 Gbps di velocit si concluderebbe quando il frame ha percorso appena un centesimo della distanza massima. Non accettabile una distanza di 25 metri, quindi allo standard sono state aggiunte due funzionalit che aumentano la portata. La prima funzionalit, chiamata carrier extension, dice allhardware di aggiungere dei dati di riempimento dopo il frame normale in modo da estendere la dimensione del pacchetto fino a 512 byte. Poich questo riempimento aggiunto dallhardware trasmittente ed rimosso dallhardware che riceve i dati, il software ignaro della sua esistenza e non necessario apportare alcuna modifica ai programmi esistenti. Naturalmente, utilizzare 512 byte di banda per trasmettere 46 byte di dati utente (il carico utile di un frame da 64 byte) comporta unefficienza del 9%. La seconda funzionalit, chiamata frame bursting, permette al trasmittente di inviare una sequenza concatenata di pi frame in una singola trasmissione (il burst-limit pari a 65536 bit). Se il burst totale minore di 512 byte, lhardware aggiunge ancora i dati riempitivi. Se un numero sufficiente di frame in attesa di trasmissione, questo schema assai efficiente e preferibile alla carrier extension. Le nuove funzionalit estendono il diametro della rete a 200 metri. La velocit di 1 Gbps decisamente alta. Per esempio, se un ricevitore occupato in qualche altra operazione anche per 1 msec e non svuota il buffer di input su qualche linea, in quellintervallo di 1 msec possono accumularsi fino a 1.953 frame. Il buffer si sovraccarica anche quando un computer su una Gigabit Ethernet scambia dati con un computer collegato a una Ethernet classica. La conseguenza di queste due osservazioni che Gigabit Ethernet supporta il controllo di flusso detto XON/XOFF: lapparato su un estremo della connessione trasmette un frame di controllo speciale allaltro, dicendo di sospendere la trasmissione per un certo

69

periodo di tempo. Per il controllo di flusso si utilizzano frame PAUSE, con un parametro che indica la durata della pausa. I parametri principali di Gigabit Ethernet: data rate di 1000 Mbps, bit time pari a 1 nsec, Interframe Gap Period (IPG) pari a 96 nsec e Slot Time pari a 512 nsec (4096 usec con carrier extension). Da pochissimo tempo stato approvato il nuovo standard che consente una velocit di trasmissione a 10 Gbps (IEEE 802.3AE). Gigabit Ethernet supporta cavi in rame e in fibra ottica. Verranno descritte qui di seguito le varie versioni. Gigabit Ethernet che utilizza la fibra ottica si suddive in due sottocategorie denominate 1000BASE-SX e 1000BASE-LX. Con segnali che viaggiano a 1 Gbps attraverso le fibre, la sorgente luminosa deve essere accesa e spenta in meno di 1 nsec. I LED non sono in grado di operare cos velocemente, perci necessario utilizzare laser. Sono ammesse due lunghezze donda: 0,85 micron per 1000BASE-SX e 1,3 micron per 1000BASE-LX. I laser a 0,85 micron sono pi economici, ma non funzionano su una fibra monomodale. Le fibre ottiche possono avere diametro 9, 50 e 62,5 micron. Il primo per la modalit monomodale e gli ultimi due sono per le fibre multimodali; tuttavia non tutte e sei le combinazioni sono possibili e la distanza massima dipende dalla combinazione scelta. Le caratteristiche sono mostrate nella seguente Tabella:

Gigabit Ethernet utilizza nuove regole di codifica sulle fibre ottiche. Il sistema di codifica scelto chiamato 8B/10B. Ogni byte da 8 bit codificato sulla fibra usando 10 bit, da qui il nome 8B/10B. Poich ci sono 1024 possibili codeword per ogni byte in input, c un po di margine nella scelta dei codeword consentiti, che sono selezionati seguendo due regole: nessun codeword pu avere pi di quattro bit identici consecutivi;

70

nessun codeword pu avere pi di sei 0 o sei 1. Queste scelte sono state fatte per ottenere nel flusso un numero sufficiente di transizioni, che garantiscono che il ricevitore rimanga sincronizzato con il trasmettitore, e per tenere il numero di 0 nella fibra il pi vicino possibile a quello degli 1 . Inoltre, a molti byte in input sono assegnati due diversi codeword. Quando ha la possibilit di farlo, il codificatore sceglie sempre il codeword che aiuta a bilanciare il numero di 0 e di 1 trasmessi. Lattenzione al bilanciamento di 0 e 1 necessaria per minimizzare la componente DC del segnale, e quindi permettere il passaggio senza modifiche attraverso i trasformatori. Gigabit Ethernet che impiega i cablaggi in rame, utilizza 4 doppini UTP di categoria 5. E nota col nome 1000BASE-TX. La lunghezza massima dei doppini che collegano un computer ad un HUB o SWITCH 100 metri. Per poter garantire un bit rate di 1000 Mbps utilizzando il doppino come mezzo fisico necessario utilizzare quattro coppie di conduttori che comporta una complicazione nella struttura dei circuiti posti al termine di ogni coppia di conduttori perch, per garantire la contemporanea trasmissione e ricezione di segnale necessaria per il funzionamento in full-duplex necessario riuscire a separare il segnale in ingresso da quello in uscita. Il sistema di codifica utilizzato per linvio dei simboli sui 4 doppini chiamato PAM-5. La frequenza del clock del segnale che viaggia sui conduttori di 125 MHz. Ogni simbolo codificato usando uno dei cinque livelli di tensione disponibili. Questo schema permette a un singolo simbolo di codificare 00, 01, 10, 11 o uno speciale valore di controllo, pertanto sono inviati 2 bit di dati per doppino o 8 bit di dati per ciclo di clock. In totale si ha: 2 bit * 4 doppini * 125 MHz = 1 Gbps. Sono consentiti cinque livelli di tensione invece di quattro per poter disporre di combinazioni per la gestione dei frame e le operazioni di controllo.

71

3.12 Bibliografia Andrew S. Tanenbaum: Reti di calcolatori, Quarta edizione, 2004. Industrial Ethernet University: Introduction to Ethernet. Industrial Ethernet University: Introduction to Fast Ethernet. Industrial Ethernet University: Multi-segment Ethernet networks. Industrial Ethernet University: Using Ethernet with fiber optics. N.Blefari-Melazzi, M.Listanti, A.Roveri: Reti per applicazioni telematiche, 1998. 7. P. Desnoyers: Chapter 5: The data link layer, University of Massachusetts. 8. Pietro Nicoletti: La rete locale Ethernet, Politecnico di Torino. 9. Prof. Dr. Ing. Birgit Vogel Heuser: Introduction of Real-Time solutions, University of Wuppertal, 2005. 10.Prof. A. Capone: Reti locali parte A, Politecnico di Milano. 11.Silvano Gai: LAN Local Area Networks, Politecnico di Torino. 12.Stefano Cazzani: Industrial Ethernet, Le Monografie. 13.Stefano Panzieri: Le reti informatiche - Reti locali e modelli di interconnessione Bus di campo, Universit degli studi di Roma. 14.Vittorio Trecordi: Introduzione alle reti di telecomunicazione, 2001. 15.Wikipedia, Lencicopledia libera, www.wikipedia.org. 1. 2. 3. 4. 5. 6.

72

Capitolo 4 DISPOSITIVI DI RETE E VLAN 4.1 Introduzione Una singola rete locale soggetta a limiti che riguardano la sua estensione, il numero di sistemi di elaborazione che possono essere connessi sulla LAN, la velocit con cui i dati possono essere trasmessi tra i computer e la quantit di traffico che pu sostenere. Se si vogliono superare questi limiti, ad esempio collegare alla LAN pi computer rispetto a quelli che pu supportare, occorre installare unaltra LAN e collegare le due reti. Quando si collegano due o pi reti si parla di Internetworking. Le ragioni che spingono ad installare pi LAN e ad interconnetterle tra loro sono principalmente due: la prima quella di coprire unarea geografica maggiore a quella che pu supportare una singola rete locale, la seconda quella di ripartire il traffico su pi LAN. Infatti, se su una LAN il traffico aumenta sensibilmente gli utenti possono risentire della lentezza che ne deriva; un modo per superare il problema proprio quello di ripartire il traffico su pi reti tra loro interconnesse. Le prime reti Ethernet funzionavano su cavo coassiale (10BASE5 e 10BASE2) e identificavano nel segmento la tratta di coassiale che costituiva un singolo percorso elettrico non interrotto, un singolo lungo cavo, chiuso alle due estremit dai terminatori. Quando si aggiungeva un ripetitore, si allargava la rete creando un secondo segmento, fino a un massimo di cinque segmenti, di cui due riservati unicamente allinterconnessione di ripetitori (segmenti di collegamento) e tre capaci di ospitare nodi (stazioni di lavoro, server, eccetera) al loro interno. Spesso, soprattutto con le reti su coassiale sottile, esisteva un solo segmento e questo veniva di fatto identificato con lintera rete e con il traffico che vi circolava. Perci il concetto si estese allinsieme delle stazioni collegate tra loro da un percorso elettrico ininterrotto con tutto il traffico relativo. Con lavvento delle reti su doppino, il segmento, nella definizione originale, finisce per essere composto solo da due nodi: da una parte la stazione di lavoro, server o stampante e dallaltra la porta del concentratore. In particolare ogni concentratore funziona da ripetitore nei confronti di ciascuna porta. Bench nelle reti che impiegano il doppino sia sempre necessario usare la

73

definizione originale di segmento, cio il tratto di cavo elettricamente ininterrotto che collega i nodi, labitudine del recente passato ci porta ad associare al segmento lidea di numerosi nodi e quindi ad estenderne il significato fino a coprire lintero dominio di collisione. Ogni singola macchina collegata alla rete costituisce un segmento elettrico a s stante, ma fa parte di un singolo dominio di collisione che unisce tutte le altre macchine collegate allo stesso HUB. Il dominio di collisione unifica tutti i segmenti della rete e tutti i ripetitori per il fatto che questi ultimi si limitano ad amplificare il segnale di modo che possa proseguire nel segmento successivo, amplificando allo stesso modo anche le collisioni. Quindi, tutte le macchine collegate allo stesso dominio di collisione condividono non solo il medesimo traffico, ma anche le stesse collisioni, indipendentemente da quale sia il concentratore a cui sono collegate. Chiunque colleghi almeno due macchine a un HUB ha creato un dominio di collisione composto da due segmenti, e le sue dimensioni aumentano con laggiunta di altre connessioni. Con la crescita delle dimensioni delle reti, le collisioni hanno raggiunto livelli vertiginosi da comprometterne il funzionamento. Si deciso di segmentarle, vale a dire di suddividerle in diversi domini di collisione usando un altro oggetto, pi sofisticato del ripetitore, che funge da ponte tra i due domini, lasciando passare solo il traffico incrociato e filtrando tutte le collisioni e tutto il traffico che deve rimanere allinterno di un solo dominio di collisione, alias segmento. Questo genere di apparecchiatura prende il nome di BRIDGE e non solo svolge le funzioni di ripetitore, ma memorizza e filtra tutti i messaggi in transito facendo passare solo quelli che sono effettivamente diretti al segmento dallaltra parte. Il BRIDGE, un vero e proprio computer che svolge il lavoro di filtro via software. Col progresso tecnologico le funzioni software sono state integrate permanentemente in circuiti hardware dedicati a svolgere questa funzione e perci molto pi veloci. Sono nati cos gli SWITCH che altro non sono che tanti BRIDGE miniaturizzati e completamente integrati in hardware, ciascuno assegnato a una porta individuale dello SWITCH. A questa porta si pu collegare un intero segmento Ethernet (dominio di collisione) oppure una singola stazione. In questultimo caso la singola stazione pu usare tutta la linea per s senza il rischio dincorrere in collisioni, salvo quelle dovute accidentalmente a disturbi incontrati sulla linea.

74

In tal modo lefficienza si spinge fino alla quasi totalit della capacit trasmissiva teorica della rete Ethernet. I BRIDGE e gli SWITCH regolano il traffico unicamente sulla base dellindirizzo di destinazione e lasciano passare quelle trame che non hanno un destinatario conosciuto oppure sono destinate a pi nodi contemporaneamente: multicast e broadcast. Finch la rete ha dimensioni contenute questo pi che sufficiente, ma in LAN di grandi dimensioni serve un controllo pi severo sul broadcasting e anche sulla diffusione indiscriminata di trame a stazioni non conosciute. Molti SWITCH moderni riescono a costruire LAN virtuali VLAN, cio insiemi di macchine che si comportano come se fossero reti separate (quindi non condividono il broadcast) e che possono essere composte da macchine collegate a uno o pi SWITCH, comunque distribuite. Riunire questi utenti in gruppi di lavoro presenta il vantaggio di confinare il flusso dei dati cos che non esca dalla cerchia di coloro che ne hanno effettivamente bisogno, facilita la gestione del traffico e della rete, e permette in ogni caso di avere risorse condivise tra due o pi VLAN, evitando gli inconvenienti di uneffettiva separazione fisica tra le LAN: rigidit di riconfigurazione e difficolt a condividere risorse comuni. Una rete Ethernet rappresenta al proprio interno un singolo dominio di collisione, cio qualsiasi pacchetto trasmesso viene ricevuto da tutti e chiunque trasmetta in contemporanea a un altro genera una collisione che viene propagata a tutti i nodi del segmento. Luso di HUB consente di ampliare le dimensioni fisiche della rete, aggiungendo altri segmenti che tuttavia rimangono un singolo dominio di collisione e perci arrivano rapidamente a saturare la propria capacit trasmissiva. Linserimento di un BRIDGE o di uno SWITCH tra due segmenti permette di creare diversi domini di collisione, riducendo il traffico spurio e aumentando lefficienza dellimpianto nel suo complesso. Un ulteriore aumento di efficienza possibile suddividendo i domini di broadcasting. E questo ha efficacia su qualsiasi tipo di LAN, poich laddove le collisioni sono unicamente una prerogativa delle reti Ethernet, leccesso di broadcasting affligge allo stesso modo anche le reti Token Ring e qualsiasi altra tecnologia. La costruzione di una VLAN passa per lassegnazione delle porte di uno SWITCH. Ad esempio le porte 2, 4 e 6 potrebbero far parte della VLAN numero uno e le porte 3, 4 e 8 appartenere alla VLAN numero due. La porta 4, comune a entrambe, potrebbe essere magari quella di un server condiviso.

75

Il gruppo di lavoro pu essere liberamente disperso allinterno della rete, ma ci nonostante conservare la propria identit. Inoltre i singoli membri manterranno laffiliazione alla VLAN indipendentemente dai propri spostamenti fisici. Il primo elemento centrale di nuovo lo SWITCH, senza di esso il concetto di VLAN non potrebbe nemmeno esistere. Il raggruppamento non avviene a livello fisico, poich la struttura interna dello SWITCH non viene modificata e non viene nemmeno cambiata la disposizione delle connessioni fisiche (il doppino) sulle sue porte. Quel che cambia il modo il cui le trame sono inoltrate sulla rete e il modo in cui queste sono filtrate cos che non si propaghino allesterno del gruppo di lavoro. Le due tecniche primarie in questo ambito sono il packet filtering (filtraggio dei pacchetti) e la packet identification (idendificazione del pacchetto). Nel primo caso si esamina ciascun pacchetto in arrivo per vedere se possiede le caratteristiche idonee per essere spedito su una data porta. I parametri di filtro vengono definiti in una tabella allinterno dello SWITCH e possono agire sia sullindirizzo fisico contenuto nella trama (bloccando broadcast e multicast e qualsiasi pacchetto indirizzato a una macchina non elencata nel gruppo) sia sul contenuto interno di questa, cio riconoscendo un tipo di traffico da un altro. Lo svantaggio del filtro che rallenta le operazioni di switching, infatti bisogna soffermarsi a esaminare la trama. La tecnica didentificazione del pacchetto consiste nell'aggiungere una speciale etichetta allinizio della trama prima di farla proseguire allinterno del tessuto di commutazione che compone la VLAN. Qualsiasi SWITCH che la riceve deve semplicemente leggerne lidentificatore e decidere come comportarsi. Prima che la trama esca dallultimo SWITCH e venga consegnata al destinatario, letichetta viene rimossa cos da ricostruire il formato originale. Le reti locali forniscono il servizio di comunicazione a calcolatori distribuiti allinterno di un edificio. Le estensioni coperte si aggirano normalmente attorno a qualche centinaio di metri. Non conveniente inserire in rete di un numero elevato di elementi di elaborazione preposti al controllo del trasferimento di informazione (aumentano i costi di impianto e di manutenzione). Alla rete si richiede esclusivamente di fornire il mezzo trasmissivo in grado di porre in comunicazione tutti i sistemi ad essa collegati.

76

4.2 Ripetitore Il Ripetitore un dispositivo hardware usato per aumentare la lunghezza di una rete locale o di una qualsiasi linea di trasmissione oltre il limite imposto dal cablaggio in uso amplificando il segnale che arriva da una tratta e che deve essere fatto proseguire sulla tratta successiva. Nel caso di segnale digitale, il ripetitore provvede anche a rigenerare e risincronizzare il segnale restituendogli la sua forma squadrata originale che tende a smussarsi con la distanza. Limpiego di questo oggetto necessario perch oltre un certo limite il segnale tende a indebolirsi (a causa dellattenuazione) e diventa irriconoscibile e non pi interpretabile dalle stazioni che lo ricevono. Il ripetitore non modifica il segnale in alcun modo, salvo filtrare gli eventuali disturbi. La velocit di trasmissione la stessa della rete su cui viene impiegato. In una rete Ethernet, il ripetitore ritrasmette anche qualsiasi collisione che si verificata su uno dei due segmenti a cui collegato. In questo modo i due segmenti diventano come uno solo. Il Ripetitore opera al Livello 1 (strato fisico) del modello ISO/OSI come mostrato nella seguente Figura.

77

4.3 HUB Un HUB rappresenta un concentratore, cio un dispositivo di rete che funge da nodo di smistamento di una rete di comunicazione dati organizzata a stella. LHUB un dispositivo che inoltra i dati in arrivo da una qualsiasi delle sue porte su tutte le altre. Pu quindi essere definito anche come un ripetitore multiporta. Questo permette a due dispositivi di comunicare attraverso lHUB come se questo non ci fosse, a parte un piccolo ritardo nella trasmissione. La conseguenza del comportamento dellHUB che la banda totale disponibile viene ridotta ad una frazione di quella originaria, a causa del moltiplicarsi dei dati inviati. Un HUB non ha bisogno di riconoscere i confini dei dati che lo attraversano, quindi considerato un dispositivo di Livello 1 (Strato fisico) nel modello ISO/OSI in quanto ritrasmette e rigenera semplicemente i segnali elettrici e non i dati. Un HUB crea un unico dominio di collisione unendo tutti i calcolatori o le reti connessi alle sue porte, ovvero se due calcolatori collegati a porte diverse trasmettono insieme, si verifica una collisione, e la trasmissione deve essere ripetuta. Infatti lHUB non distingue i segmenti di LAN e ritrasmette tutti i segnali che riceve. Ci crea anche delle limitazioni al numero di nodi che si possono connettere nella LAN. Inoltre, non possibile connettere segmenti Ethernet di tipologia e di velocit diversa in quanto lHUB non ne fornito di buffer. Nella seguente Figura mostrata una tipica connessione tra HUB.

78

4.4 BRIDGE Diverse LAN che devono essere interconnesse; possono essere collegate da dispositivi chiamati BRIDGE, che operano nello strato Data Link (Livello 2) del modello ISO/OSI. Le LAN da unire possono essere omogenee, ossia hanno lo stesso formato MAC, o eterogenee con formati MAC differenti, ad esempio Token Ring e Ethernet. I BRIDGE esaminano gli indirizzi dello strato Data Link per eseguire linstradamento. Lutilizzo di BRIDGE porta ad un aumento della banda complessiva, grazie alla segmentazione della LAN, inoltre aumenta anche la portata geografica della LAN stessa e pu migliorare laspetto della sicurezza grazie alla separazione del traffico in rete. Il BRIDGE ha quattro funzioni principali: la ricezione dei pacchetti; leventuale traduzione da un formato di sottolivello MAC ad un altro; il filtraggio dei pacchetti sulla base dell'indirizzo tenendo conto sia della posizione della destinazione sia delle indicazione del gestore, che possono anche riguardare lindirizzo della sorgente ed il tipo di protocollo; la ritrasmissione dei pacchetti. La seguente Figura mostra come opera un BRIDGE nel modello ISO/OSI.

79

Si consideri la configurazione rappresentata nella seguente Figura:

Il BRIDGE B1 collegato alle LAN 1 e 2, e il BRIDGE B2 collegato alle LAN 2, 3 e 4. Un frame della LAN 1 in arrivo sul BRIDGE B1 e destinato alla stazione A viene scartato immediatamente perch si trova gi sulla LAN giusta, ma un frame della LAN l indirizzato a C o F deve essere instradato correttamente. Quando arriva un frame, il BRIDGE deve decidere se scartare i dati o inoltrarli; nel secondo caso deve stabilire su quale LAN immettere il frame. La decisione fatta confrontando lindirizzo di destinazione con le informazioni riportate in una tabella locale memorizzata nel BRIDGE. La tabella pu elencare ogni possibile destinazione e dire a quale linea di output (LAN) appartiene. Per esempio, la tabella di B2 elencher A come appartenente a LAN 2, poich tutto quello che B2 deve sapere su quale LAN immettere i frame per A. Appena i BRIDGE sono collegati alla rete per la prima volta, tutte le tabelle sono vuote. Poich non sanno dove si trovano le varie destinazioni, i BRIDGE utilizzano un algoritmo di allagamento (flooding): ogni frame proveniente da una destinazione sconosciuta inviato a tutte le LAN connesse al BRIDGE, tranne a quella di input. Col tempo i BRIDGE imparano dove si trovano le destinazioni. Una volta scoperte, i frame destinati a una destinazione saranno inviati solo alla LAN contenente la stazione di arrivo. Lalgoritmo utilizzato dai BRIDGE chiamato di apprendimento all'indietro. I BRIDGE operano in modalit promiscua, perci vedono ogni frame inviato su qualunque delle loro LAN e lesame dellindirizzo sorgente fa scoprire le macchine collegate alle varie LAN.

80

Per esempio, riferendosi alla precedente Figura, il BRIDGE B1 rileva sulla LAN 2 un frame proveniente da C, il dispositivo capisce che la stazione C pu essere raggiunta attraverso la LAN 2, e crea una voce nella sua tabella che prende nota del fatto che i frame diretti a C dovrebbero essere trasmessi alla LAN 2. I successivi frame indirizzati a C e provenienti dalla LAN 1 saranno inoltrati, ma i frame per C provenienti da LAN 2 saranno scartati. La topologia pu cambiare quando le macchine e i BRIDGE vengono accesi, spenti o spostati. Per gestire le topologie dinamiche, ogni volta che crea una voce della tabella, il BRIDGE annota anche il tempo di arrivo del frame. Ogni volta che riceve un frame la cui origine gi stata registrata nella tabella, il BRIDGE aggiorna la voce associata prendendo nota del tempo corrente: di conseguenza, il tempo associato a ogni voce indica quando stato rilevato per lultima volta un frame proveniente da quella macchina. Periodicamente, un processo nel BRIDGE esamina la tabella e cancella le voci che hanno pi di qualche minuto. In questo modo un computer scollegato dalla sua LAN, spostato in un altro punto delledificio e collegato a unaltra LAN torna operativo in pochi minuti senza necessit dintervento manuale (BRIDGE trasparente). A causa di questo algoritmo, se una macchina rimane silenziosa per alcuni minuti tutto il traffico che le viene inviato dovr essere trasmesso attraverso tutte le reti fino a quando la stazione non invier un suo frame. La procedura dinstradamento di un frame in arrivo dipende dalla LAN sorgente e dalla LAN di destinazione seguendo il seguente algoritmo: se la LAN di destinazione e la LAN sorgente coincidono, il frame scartato; se la LAN di destinazione e la LAN sorgente sono diverse, il frame inoltrato; se la LAN di destinazione sconosciuta, si utilizza la trasmissione su tutte le LAN escludendo la LAN dalla quale arrivato il frame da ritrasmettere. Per aumentare l'affidabilit, alcuni siti installano pi BRIDGE in parallelo tra coppie di LAN, come mostrato nella seguente Figura:

81

Questa soluzione introduce per nuovi problemi, poich crea anelli nella topologia. Un semplice esempio di questi problemi evidente osservando come viene gestito nella Figura precedente un frame F la cui destinazione sconosciuta. Ogni BRIDGE, seguendo le normali regole di gestione delle destinazioni sconosciute, trasmette il frame su tutte le altre reti di output, in questo caso solo sulla LAN 2. Poco dopo, il BRIDGE B1 riceve F2, un frame con destinazione sconosciuta; questi dati, immessi sulla LAN l, danno origine al frame F3, (non rappresentato nella Figura). In modo analogo, il BRIDGE B2 copia F1, sulla LAN 1 generando F4, in un ciclo che continua allinfinito. Per risolvere questo problema necessario che i BRIDGE comunichino tra loro e coprano la topologia reale con una struttura spanning tree che raggiunga ogni LAN: in realt alcune connessioni potenziali tra LAN vengono ignorate, nellinteresse della costruzione di una topologia fittizia priva di anelli. Si consideri per esempio, la seguente Figura (a), si osservano nove LAN interconnesse da dieci BRIDGE; questa configurazione pu essere descritta con un grafico dove ogni LAN rappresentata da un nodo e un arco collega ogni coppia di LAN collegate da un BRIDGE.

82

I1 grafico pu essere ridotto a una struttura ad albero sostituendo gli archi con linee tratteggiate come stato fatto nella Figura (b). Nella struttura ad albero un solo percorso collega ogni LAN a ogni altra LAN. Una volta che i BRIDGE hanno concordato lo spanning tree, tutti gli inoltri tra LAN seguono la struttura. Poich esiste un unico percorso che collega ogni sorgente a ogni destinazione, gli anelli sono impossibili. Per costruire uno spanning tree, i BRIDGE devono prima di tutto scegliere tra loro quello che dovr fungere da nodo principale della struttura. Per fare questa scelta, ogni BRIDGE trasmette a tutti il proprio numero di serie, installato dal produttore dellhardware e garantito come univoco in tutto il mondo. Il BRIDGE con il numero di serie pi basso diventa il nodo principale. Quindi viene costruita una struttura ad albero, basata sui percorsi pi brevi che uniscono il nodo principale a ogni BRIDGE e LAN; questa struttura lo spanning tree. Se viene meno un BRIDGE o una LAN si elabora una nuova struttura. Il risultato di questo algoritmo la definizione di un percorso unico da ogni LAN verso il nodo principale, e di conseguenza verso ogni altra LAN. Sebbene la struttura copra tutte le LAN, non tutti i BRIDGE sono per forza presenti nell'albero (questo per prevenire i cicli). Lalgoritmo distribuito utilizzato per costruire la struttura spanning tree stato stato standardizzato dalla IEEE con la sigla IEEE 802.1D. Anche dopo aver stabilito lo spanning tree, durante le normali operazioni lalgoritmo continua a funzionare per rilevare le modifiche della topologia e aggiornare automaticamente la struttura.

83

4.5 SWITCH Lo SWITCH unevoluzione del BRIDGE, che collega tra loro diversi segmenti logici di una rete (diversi domini di collisione) e che consente il passaggio dinformazioni dalluno allaltro, impedendo tuttavia che l'intero traffico presente su uno di essi si riversi negli altri e viceversa, come invece accadrebbe se la LAN Ethernet non disponesse di alcun filtro al proprio interno. Analogamente al BRIDGE, lo SWITCH opera al Livello 2 del modello ISO/OSI (Data Link Layer). Diversamente dal BRIDGE, lo SWITCH ha un numero di porte maggiore ed utilizzato prevalentemente per collegare singoli computer in una topologia a stella, come mostrato nella seguente Figura (b).

Di conseguenza, quando lhost A nella Figura (a) vuole inviare un frame allhost B, il BRIDGE riceve il frame e lo scarta, mentre lo SWITCH nella Figura (b) deve inoltrare attivamente il frame da A a B, perch i dati non possono raggiungere la destinazione in nessun altro modo. Poich ogni porta un dominio di collisione indipendente, gli SWITCH non perdono mai i frame a causa delle collisioni. Rispetto al BRIDGE, lo SWITCH esegue tutte le proprie elaborazioni in hardware e non via software, perci non rallenta il fluire del traffico tra i segmenti. In gergo tecnico si dice che la connessione wire-speed, cio lascia transitare i pacchetti alla velocit massima consentita dal tipo di conduttore usato per il cablaggio.

84

Nella realt, un rallentamento esiste sempre, anche se marginale, e la sua entit dipende dal modo in cui lo SWITCH funziona. Una possibile modalit di funzionamento di uno SWITCH chiamata store-and-forward. Ogni trama che arriva su una delle porte dello SWITCH viene incamerata per intero in una speciale porzione di memoria (buffer) e quindi scartata o trasferita a un altro segmento a seconda dellindirizzo di destinazione (indirizzo MAC) indicato al suo interno. Loperazione velocissima, ma comporta in ogni caso un certo rallentamento perch la trama deve arrivare per intero nel buffer dello SWITCH prima di cominciare a essere ritrasmessa su unaltra porta (a cui corrisponde un altro segmento, appunto). la tecnica di commutazione pi affidabile, poich prima di rispedire il pacchetto ci si accerta di averlo per intero e se ne verifica la correttezza attraverso il calcolo del CRC (Cyclic Redundancy Check), ed lunica utilizzabile quando si collegano segmenti funzionanti a velocit diverse, come Ethernet e Fast Ethernet, per esempio. Tuttavia su impianti molto veloci, come nel caso di una dorsale che funziona tutta a 100 Mbps o pi, il numero di trame in circolazione molto elevato e il ritardo che si accumula per la registrazione di ciascuna si fa sentire. Lalternativa ideata per eliminare questultimo inconveniente si chiama commutazione cut-through. Non appena lo SWITCH comincia a ricevere una trama su una qualsiasi delle sue porte, ne legge lindirizzo di destinazione e, se questo corrisponde a un segmento collegato a unaltra porta, inizia immediatamente a trasmettere la trama senza aspettare che questa sia arrivata per intero. In questo modo, dopo aver letto lindirizzo, la trasmissione in uscita avviene quasi in contemporanea con la ricezione, e il ritardo minimo (fino a 20 volte inferiore a quello della tecnica store-and-forward). Bench molto efficace sotto il profilo della velocit, questa tecnica presenta il difetto di far passare anche le trame spurie. Infatti vengono ritrasmesse anche le trame difettose (troppo corte) risultanti da collisioni o da altri problemi nel segmento di provenienza. Lo SWITCH si limita a controllare lindirizzo e quindi fa passare tutto quel che segue senza controllo alcuno. Inoltre il beneficio del sistema cut-through diminuisce quando il traffico diventa molto intenso e continuo. In questa circostanza facile che una trama trovi la porta di uscita ancora occupata a trasmettere la trama precedente e perci deve comunque essere memorizzata per intero nellattesa di essere trasmessa (si torna quindi alla modalit store-and-forward).

85

Tale fenomeno ancora pi visibile con SWITCH dotati di numerose porte visto che la quantit di traffico complessiva che si genera al loro interno sempre elevata. Una terza possibile modalit di funzionamento di uno SWITCH chiamata commutazione fragment-free. Alla pari della modalit store-and-forward, anche qui si aspetta di ricevere lintera trama prima di iniziare a trasmetterla, per ci si assicura che questa sia almeno lunga 64 byte (il minimo consentito dallo standard Ethernet) e si scarta qualsiasi frammento di trama che abbia dimensioni inferiori. In una rete Ethernet progettata con cura, gli unici errori ricorrenti sono le trame corte provocate da collisioni e per definizione queste hanno una dimensione inferiore ai 64 byte. Uno SWITCH fragment-free pi veloce di uno store-and-forward e al contempo non inonda il segmento di destinazione con frammenti di trama inutilizzabili. Il controllo, tuttavia, non completo visto che continuano in ogni caso a passare le trame troppo lunghe (che sono peraltro il prodotto di malfunzionamenti sulla rete). Per filtrare queste ultime non esiste alternativa se non quella di utilizzare il sistema store-and-forward: si aspetta che la trama arrivi per intero, la si misura e la si fa proseguire solo se va tutto bene. Ciascuna di queste tre modalit offre vantaggi specifici e limpiego delluna piuttosto che dell'altra anche determinato dallo stato contingente in cui si trova la rete: unalta percentuale di collisioni, di errori oppure un traffico normale. Di conseguenza gli SWITCH pi moderni ed evoluti offrono una funzione chiamata switching adattativo e che consiste nel monitorare costantemente lo stato della LAN e nel passare in modo dinamico a una delle tre modalit di commutazione viste prima. Questo genere di SWITCH consente allamministratore di rete di regolare le soglie di errore oltre le quali lapparato abbandona la modalit cut-through per passare al sistema fragment-free oppure eventualmente al sistema store-and-forward. Diventa cos possibile definire un modello di comportamento che si adatta perfettamente al proprio impianto. Le modalit di funzionamento cut-through e fragment-free possono essere utilizzate solo se su tutte le porte presente lo stesso tipo di formato MAC, se tutte le porte hanno la stessa velocit trasmissiva, se la porta di destinazione libera e infine se il pacchetto non broadcast o multicast, altrimenti si ricorre allo store-and-forward. Il modo di funzionamento store-and-forward opera come se fosse un bridge multiporta ad alte prestazioni. Pu interconnettere MAC diversi e pu operare a velocit diverse.

86

Gli SWITCH sono usati per aumentare le prestazioni di una rete segmentando reti grandi in reti locali pi piccole e meno congestionate, fornendo ovviamente la necessaria interconnetivit tra di loro. Avere segmenti pi piccoli significa che poche stazioni competono per avere laccesso al mezzo trasmissivo; ci diminuisce la congestione della rete e conseguentemente aumentano le prestazioni, fornendo ad ogni porta una larghezza di banda dedicata, senza richiedere agli utenti di cambiare nessuna delle apparecchiature esistenti. Lo SWITCH, contrariamente allHUB, pu consentire la comunicazione full-duplex: un nodo connesso ad uno SWITCH pu contemporaneamente trasmettere e ricevere trame diverse su due canali fisici separati (doppini o fibre ottiche) evitando quindi la possibilit di collisioni. La distanza tra due stazioni full-duplex viene a dipendere solo dalle caratteristiche del mezzo trasmissivo ed indipendente dal diametro del dominio di collisione. La seguente Figura mostra un confronto tra un HUB ed uno SWITCH.

87

4.6 Reti locali virtuali (VLAN) La tecnologia delle reti locali virtuali (VLAN) fa riferimento alla capacit offerta dagli SWITCH e dai ROUTER di configurare pi reti logiche sopra ununica rete locale fisica. Ogni VLAN costituita da un insieme di segmenti di rete locale che possono comprendere una singola stazione (segmenti punto-punto) o un gruppo di stazioni (segmenti condivisi). Le stazioni appartenenti ad una VLAN sono logicamente interconnesse a livello Data Link, anche se fisicamente sono collegate su segmenti diversi. Operando unicamente a livello di centro di gestione della rete possibile creare pi domini, cio pi reti locali virtuali, su una infrastruttura trasmissiva comune senza alcun intervento a livello fisico e configurando gli SWITCH via software da postazione remota. La possibilit di creare reti locali virtuali da assegnare ai vari gruppi di lavoro permette unelevata flessibilit in quanto non necessario che i componenti di un gruppo occupino spazi fisicamente contigui. I vantaggi principali che si ottengono da tale assegnazione derivano dallisolamento del traffico dei vari gruppi di lavoro al livello Data Link. Questo non solo importante per ragioni di sicurezza e riservatezza dei dati, ma anche perch consente di mantenere separato il traffico di multicast e broadcast delle diverse reti virtuali. Altro vantaggio che deriva dallintroduzione delle VLAN rappresentato dalla riduzione di costi e ingombri: invece di diversi SWITCH, possibile utilizzare un solo SWITCH con molte porte, risparmiando in costi di acquisizione e manutenzione, spazio occupato, prese di alimentazione elettrica. Linteroperabilit tra le reti virtuali garantita da una unit di internetworking esterna, normalmente un ROUTER. Le VLAN si basano su SWITCH VLAN compatibili progettati in modo speciale, ma possono avere anche HUB lungo il perimetro esterno, come mostrato nella seguente Figura:

88

Per impostare una rete basata su VLAN, lamministratore di rete decide quante VLAN creare, quali computer collegare e quale nome assegnare a ogni VLAN. Spesso le VLAN vengono battezzate con nomi di colori. In tal modo, con un solo schema possibile rappresentare sia la disposizione fisica sia la disposizione logica della rete. Come esempio, si considerino le quattro LAN della seguente Figura (a):

89

Otto macchine appartengono alla VLAN G (grigia) e sette appartengono alla VLAN W (bianca). Le quattro LAN fisiche sono collegate mediante due BRIDGE, Bl e B2. Usando un cablaggio a doppini centralizzato ci potrebbero anche essere quattro HUB (non mostrati nella Figura), ma dal punto di vista logico un cavo multidrop e un HUB sono la stessa cosa. La Figura (b) mostra le stesse VLAN e le stesse macchine collegate tramite SWITCH dove a ogni porta connesso un solo computer. Per far funzionare correttamente le VLAN, nei BRIDGE o negli SWITCH devono essere impostate delle tabelle di configurazione. Queste tabelle indicano quali VLAN sono accessibili attraverso le varie porte (linee). Quando arriva un frame, per esempio dalla VLAN grigia, i dati devono essere inoltrati su tutte le porte contrassegnate dalla lettera G. Questo vale per il traffico ordinario (unicast) e per quello multicast o broadcast. Si pu notare osservando la Figura (a), che una porta pu essere etichettata con pi colori VLAN. Si supponga che la macchina A stia trasmettendo un frame in modalit broadcast. Il BRIDGE B1 riceve il frame e scopre che proviene da una macchina della VLAN grigia, perci inoltra i dati su tutte le porte etichettate con la lettera G (tranne la porta di input). Poich B1 ha solo altre due porte ed entrambe sono contrassegnate dalla lettera G, il frame trasmesso a entrambe. Con B2 la storia diversa: in questo caso il BRIDGE sa che non ci sono macchine grigie sulla LAN 4, perci non inoltra il frame in quella direzione; i dati arrivano solo alla LAN 2. Se uno degli utenti della LAN 4 cambia reparto e si sposta sulla VLAN grigia, bisogna aggiornare le tabelle dentro B2 sostituendo la lettera W con le lettere GW. Se la macchina F diventa grigia, allora la porta diretta alla LAN 2 deve passare da GW a G. Ora si supponga che tutte le macchine di LAN 2 e di LAN 4 diventino grigie. In questo caso, non soltanto le porte di B2 dirette alle LAN 2 e 4 verrebbero contrassegnate con la lettera G, ma anche la porta di B1 diretta a B2 passerebbe da GW a G poich i frame bianchi che entrano in B1 dalle LAN 1 e 3 non dovranno pi essere inoltrati a B2. Nella Figura (b) accade la stessa situazione, solo che qui tutte le porte che vanno a un dato computer sono etichettate con un solo colore perch ogni porta conduce a una sola VLAN. BRIDGE e SWITCH per distinguere il colore dei frame in arrivo e le VLAN di destinazione possono utilizzare i seguenti tre metodi:

90

a ogni porta assegnato un colore VLAN; a ogni indirizzo MAC assegnato un colore VLAN; a ogni protocollo di strato 3, oppure a ogni indirizzo IP assegnato un colore VLAN. Nel primo metodo ogni porta ha unetichetta che rappresenta un colore VLAN, ma funziona solo se tutti i computer collegati a una porta appartengono alla stessa VLAN. Nella Figura (a), in B1 questa propriet vale per la porta diretta alla LAN 3, ma non per la porta diretta alla LAN 1. Nel secondo metodo, il BRIDGE o lo SWITCH ha una tabella che elenca lindirizzo MAC a 48 bit di ogni computer collegato al dispositivo, abbinato alla indicazione della VLAN di appartenenza di quel computer. In queste condizioni possibile mischiare le VLAN su una LAN fisica, come accade nella LAN 1 in Figura (a). Quando arriva un frame, per scoprire la VLAN di provenienza il BRIDGE o lo SWITCH non deve far altro che estrarre lindirizzo MAC e cercarlo nella tabella interna. Il terzo metodo permette al BRIDGE o allo SWITCH di esaminare il carico utile del frame, per esempio per classificare tutte le macchine IP come appartenenti a una VLAN e tutte le macchine AppleTalk come appartenenti a unaltra VLAN. Per consentire la creazione di una VLAN necessario modificare il formato del frame Ethernet standard. Lo standard VLAN stato approvato dalla IEEE con la sigla IEEE 802.1Q. Il nuovo formato contiene, in particolare, unetichetta VLAN. Se una scheda Ethernet VLAN compatibile, genera direttamente frame etichettati secondo lo standard IEEE 802.1Q e nella commutazione sono utilizzate queste etichette. I campi VLAN sono effettivamente utilizzati solo dai BRIDGE e dagli SWITCH, non dalle macchine degli utenti. Perci, per utilizzare le VLAN devono essere presenti nella rete BRIDGE e SWITCH VLAN compatibili con lo standard IEEE 802.1Q. Per stabilire la VLAN di appartenenza di un frame, un BRIDGE o uno SWITCH potrebbe assegnare un numero VLAN a una porta, osservare lindirizzo MAC o addirittura esaminare il carico utile. Se un computer trasmittente non genera i campi VLAN, il primo BRIDGE o SWITCH compatibile VLAN che riceve il frame aggiunge i campi, e lultimo dispositivo sul percorso del frame li rimuove. Se il computer invia un frame a uno SWITCH VLAN compatibile, lo SWITCH costruisce un nuovo frame dotato di

91

etichette basandosi sulla sua conoscenza della VLAN del mittente (usando la porta, lindirizzo MAC o l'indirizzo IP). Da quel punto in poi, non ha pi importanza la compatibilit della macchina trasmittente. In modo analogo, uno SWITCH che deve inviare un frame etichettato a un computer che non prevede i campi VLAN, deve riportare il frame al suo formato originale prima di trasmettere i dati. Lo SWITCH necessita di avere al suo interno una tabella indicizzata in base alle VLAN che indichi le porte da utilizzare e se sono oppure no compatibili con VLAN. E utile dare uno sguardo al formato del frame IEEE 802.1Q confrontandolo col formato IEEE 802.3 come mostrato nella seguente Figura:

La modifica rappresentata dallaggiunta di un due campi lunghi 2 byte ciascuno. A causa di questa aggiunta deve essere ricalcolato il valore del campo Checksum. Il primo campo il VLAN protocol ID; il suo valore sempre 0x8100 che evidenzia il nuovo formato del frame. Poich questo numero maggiore di 1500, tutte le schede Ethernet lo interpretano come un tipo e non come una lunghezza. Il secondo campo di 2 byte (TAG) contiene tre sottocampi. Il principale il VLAN Identifier che occupa i 12 bit di ordine pi basso. Questa linformazione pi importante che permette di identificare la VLAN di appartenenza del frame. Con 12 bit possibile identificare fino a 4096 VLAN diverse. I1 campo di 3 bit Priority permette di distinguere il traffico pesante trasmesso in tempo reale, quello leggero trasmesso in tempo reale e quello insensibile al tempo per migliorare la qualit del servizio (QoS) su Ethernet. Con 3 bit disponibili possibile distinguere fino a 8 livelli di priorit diversi. Ogni porta dello SWITCH pu essere configurata con valore di priorit da 0 a 7. In base al valore di priorit, la trama

92

allinterno dello SWITCH viene inserita in una coda a diversa priorit per essere poi inviata sulla porta di uscita. Il modo di utilizzo del campo Priority stabilito dal protocollo standardizzato dalla IEEE con la sigla IEEE 802.1P. Lultimo bit si chiama CFI (Canonical Format Indicator). La sua presenza indica che il carico utile contiene, per esempio, un frame IEEE 802.5 (Token Ring) che deve raggiungere unaltra LAN IEEE 802.5 passando attraverso una Ethernet. In sostanza indica se gli indirizzi MAC del frame sono in forma canonica oppure no. Come stato detto precedentemente, quando un frame etichettato raggiunge uno SWITCH VLAN compatibile, lo SWITCH utilizza lID della VLAN come indice per trovare nella tabella la porta da utilizzare per la trasmissione. Lo standard IEEE 802.1Q descrive come costruire dinamicamente la tabella. Una porta di uno SWITCH su cui viaggiano pacchetti con il VLAN TAG detta trunk port. Viceversa, una su cui viaggiano pacchetti senza VLAN TAG detta access port. Lappartenenza di un host ad una VLAN pu essere definita secondo diversi criteri: porte: ciascuna porta di uno SWITCH configurata per appartenere ad una data VLAN. Tutti i pacchetti provenienti da quella porta saranno taggati con lID della sua VLAN, e su questa porta verranno inviati solo pacchetti provenienti dalla sua VLAN. Questo il metodo pi diffuso e pi semplice da implementare, in quanto lo SWITCH deve guardare solo da quale porta viene un pacchetto per attribuirgli un VLAN Identifier; analisi del pacchetto: lo SWITCH che riceve il pacchetto lo esamina in dettaglio, e decide a quale VLAN attribuirlo sulla base del suo contenuto. Lattribuzione pu avvenire in base aprotocollo incapsulato nel frame, oppure i pacchetti vengono attribuiti ad una VLAN sulla base dellindirizzo MAC o IP dellhost da cui provengono. In questo modo, ad una porta di uno SWITCH possono essere collegati diversi host, che per appartengono a VLAN diverse.

93

4.7 Bibliografia 1. Andrew S. Tanenbaum: Reti di calcolatori, Quarta edizione, 2004. 2. Contemporary Controls: The ABCs of selecting the proper Industrial Ethernet switch. 3. Fulvio Risso: LAN Aspetti avanzati, Politecnico di Torino. 4. Intelligent Ethernet and EtherNet/IP Deployments, Cysco System, 2003. 5. Industrial Ethernet University: Choosing the right Industrial Ethernet switch. 6. Industrial Ethernet University: Introduction to Spanning Tree Protocol. 7. Industrial Ethernet University: Introduction to Switch technology. 8. Industrial Ethernet University: Introduction to Virtual LANs. 9. Industrial Ethernet University: Hubs versus switches. 10.Industrial Ethernet University: Multi-segment Ethernet networks. 11.Industrial Ethernet University: Using trunking to increase backbone performance. 12.N-TRON: Industrial Ethernet in industrial environment, 2004. 13.Paolo Ferrari: Comunicazioni industriali su Ethernet, switch sincronizzazione e norme, Universit degli studi di Brescia. 14.Peter Desnoyers: Chapter 5: The data link layer,University of Massachusetts. 15.Pietro Nicoletti: La rete locale Ethernet, Politecnico di Torino. 16.Prof. A. Capone: Reti locali parte A, Politecnico di Milano. 17.Prof. Dr. Ing. Birgit Vogel Heuser: Introduction of Real-Time solutions, University of Wuppertal, 2005. 18.Prof. J.D. Decotignie: Real-Time systems 2-Real-Time networking Ethernet, CSEM Centre Suisse dElectronique et de Microtechnique SA. 19.Rivista: Brescia Ricerche n.52, INN.TEC, 2005. 20.Stefano Cazzani: Industrial Ethernet, Le Monografie. 21.Vittorio Trecordi: Introduzione alle reti di telecomunicazione, 2001. 22.Wikipedia, Lencicopledia libera, www.wikipedia.org.

94

Capitolo 5 INTERNET PROTOCOL SUITE 5.1 Introduzione Il futuro della tecnologia dellautomazione orientato sempre pi verso sistemi distribuiti con intelligenza locale. I sistemi, collegati tra loro con tecnologie di comunicazione standard, eseguono in maniera completamente indipendente i propri compiti. In aggiunta viene richiesto un continuo accesso ai dati dal livello di gestione al livello di campo. Con lutilizzo delle tecnologie IT (Information Technology) e di Internet, si in grado di compiere queste attivit in tutto il mondo su interfacce aperte con strumenti comuni: Ethernet con TCP/IP e browser come Internet Explorer, per citarne alcuni. Contemporaneamente la pi che collaudata tecnologia fieldbus (bus di campo) rimarr sul mercato ancora per diversi anni. Se da un lato lattuale tecnologia fieldbus opera con velocit di trasferimento che raggiungono i 12 Mbit/sec e le quantit di dati di non pi di poche centinaia di byte, dallaltro la trasmissione via Ethernet avviene a 100 Mbit/sec (e anche oltre) e, con protocolli di trasmissione come FTP, le quantit di dati trasferibili sono praticamente illimitate. Tutti gli utilizzatori dei bus di campo pensano alle possibilit offerte da Internet come a un sogno: telediagnostica, taratura e configurazione remota, allarmi, supervisione intelligente da siti remoti e accesso ai dati pienamente libero mediante strumenti che siamo abituati a utilizzare tutti i giorni. Un ulteriore vantaggio costituito dalla possibilit di dialogare con la macchina (e con tutti i suoi componenti) via Internet tramite appositi moduli di teleassistenza. Questa forma di comunicazione, di recente sviluppo nel mondo industriale, consente allutilizzatore del parco macchine di tenere sotto controllo tutti i parametri di processo dello stabilimento e al costruttore del macchinario di intervenire tempestivamente alla risoluzione degli eventuali problemi legati al processo in esecuzione. Con la teleassistenza infine possibile riversare gli aggiornamenti software, senza la necessit che il personale tecnico debba fisicamente recarsi sulla macchina, che molto spesso posta in luoghi che richiedono anche pi giorni per essere raggiunti.

95

Subito dopo per, gli utenti sono tuttavia spaventati da eventuali attacchi di pirati informatici che potrebbero entrare nel processo e alterarlo, infrangendo quindi il loro sogno. Tutto questo perch si portati a pensare che Internet equivalga al solo World Wide Web. Ma questo non assolutamente vero. Lintroduzione di Internet nellautomazione industriale deve essere vista come la possibilit di utilizzare le tecniche e gli standard di Internet sul processo, sullimpianto e a livello di campo. Di particolare interesse il protocollo TCP/IP, nel quale i dati vengono suddivisi in tanti pacchetti e trasmessi uno per volta. Ci assicura una maggiore sicurezza di comunicazione (eventuali errori hanno un effetto limitato al singolo pacchetto, che quindi potr essere ritrasmesso) e la possibilit di fare trasmettere enti diversi sulla stessa linea fisica: un concetto totalmente diverso dalle vecchie reti commutate. Lo svantaggio che le prestazioni del protocollo TCP/IP sono molto sensibili al traffico in rete: pi sono gli utenti che vogliono parlare contemporaneamente, minori diventano le prestazioni. E questo inaccettabile quando si deve fare un controllo di processo: in nessuna condizione deve esserci una perdita di prestazioni. Integrare un fieldbus con Internet significa quindi fare s che i messaggi trasmessi dal fieldbus siano strutturati secondo TCP/IP. A sua volta, Ethernet sta diventando unalternativa ai bus di campo sempre pi interessante. Oggi esistono numerosi gateway che permettono di collegare il mondo dei fieldbus al mondo Ethernet. Ma proprio la necessit dei gateway dimostra che i due mondi sono ancora distinti. Pur rimanendo ancora qualche dubbio sulluso di Ethernet come bus di controllo, Ethernet fondamentale per trasferire grosse quantit di dati verso lalto. Infatti, chi costruisce macchine trova sempre pi richieste da parte dellutente di poterle avere in rete, poterle monitorare, controllare, eccetera. Qualcosa che in passato si era tentato di fare eseguire ai sistemi informativi. Ma noto che i fornitori di sistemi informativi fanno una grande fatica a scendere verso il basso e andare a leggere i dati sulle macchine. Viceversa, abbastanza semplice per il costruttore di macchine rendere disponibili dati puliti verso lalto. Per gli operatori ormai abbastanza chiaro il confine esistente fra la piattaforma Ethernet e i bus di campo tradizionali.

96

Con lavvento delle tecnologie dellinformazione e della telecomunicazione si sta verificando una svolta epocale nel panorama dei sistemi dautomazione industriale. In passato, il cablaggio di sensori e attuatori veniva realizzato in modo dedicato. Negli ultimi 10 anni, con lavvento di una miriade di sistemi standardizzati e proprietari, si passati alla connessione mediante bus di campo allinterno delle singole celle automatizzate. Ora nasce lesigenza di coordinare varie le celle tra loro e di collegarle con le reti Ethernet e Internet dellazienda per gestire i processi di produzione e garantire il servizio e la manutenzione in remoto. Internet una realt nellautomazione industriale gi da diversi anni. Concretamente attraverso un connubio con Ethernet. Normalmente ai giorni nostri, quando nel linguaggio comune ci si riferisce ad Ethernet (che definisce solo i Livelli 1 e 2 del modello ISO/OSI), in realt si considera per scontato che il Livello 3 (Rete) e il Livello 4 (Trasporto) del modello ISO/OSI siano occupati dallinsieme dei protocolli che consentono il funzionamento di Internet. Pi propriamente, la definizione pi corretta dovrebbe essere Ethernet-TCP/IP (nella quale sono definiti i Livelli 1, 2, 3, 4 del modello ISO/OSI) piuttosto che solo Ethernet (nella quale sono definiti solo i Livelli 1, 2 del modello ISO/OSI). Concretamente, Ethernet-TCP/IP la rete che collega computer, stampanti, degli uffici di una industria, delle banche, degli uffici pubblici, abitazioni private, eccetera. Non la rete impiegata per il collegamento di controllori, sensori, attuatori a livello di campo di un impianto industriale a causa della mancanza di determinismo (vedere al Capitolo 7). In tale ambito sono presenti i deterministici bus di campo. Grazie ad opportuni accorgimenti (vedere al Capitolo 7), possibile ottenere da una rete Ethernet-TCP/IP il determinismo, impiegarla di conseguenza come bus di campo ed avvantaggiarsi, inoltre, delle nuove possibilit offerte da Internet nellautomazione industriale descritte in precedenza in questo Paragrafo. In base a quanto detto sopra, considerando la diffusione di Internet a livello mondiale, linteresse e le opportunit che pu offrire anche nel settore dellautomazione industriale, vale la pena di dare una descrizione dellinsieme dei protocolli su cui basato il suo funzionamento, noti come Internet Protocol Suite o pi semplicemente Protocollo TCP/IP dal nome dei due principali protocolli da cui costituto, il TCP e lIP.

97

5.2 Modello TCP/IP e Modello ISO/OSI Il nome completo del modello TCP/IP TCP/IP Internet Protocol Suite ed un insieme di protocolli di trasmissione, i cui due principali sono appunto il TCP (Transmission Control Protocol) e lIP (Internet Protocol). Tra il modello di riferimento ISO/OSI a sette strati ed il modello TCP/IP a quattro strati, si possono fare i seguenti confronti: Il modello stratificato TCP/IP unifica lo strato Fisico a quello del Collegamento Dati del modello ISO/OSI, nello strato della Rete TCP/IP. Larchitettura TCP/IP non d nessuna specifica in questo livello e richiede solo la garanzia che il calcolatore possa trasmettere i pacchetti di dati provenienti dallo strato sovrastante Internet sulla rete. Non fa distinzione tra le schede di rete in senso fisico ed i loro driver e questo permette di implementare il TCP/IP in qualunque topologia di rete; Lo strato Internet del modello TCP/IP corrisponde allo strato della Rete del modello di riferimento ISO/OSI. Entrambi si occupano dei servizi di indirizzamento ed instradamento; Lo strato del Trasporto in tutti e due i modelli permette che si stabiliscano sessioni di comunicazione da un capo allaltro tra due host; Lo strato dellApplicazione del modello TCP/IP combina gli strati della Sessione, della Presentazione e dellApplicazione del modello ISO/OSI. Il modello TCP/IP comprende tutte le questioni che riguardano la rappresentazione dei dati e il mantenimento delle sessioni nellambito delle definizioni di una applicazione. La pila dei protocolli che costituiscono il modello ISO/OSI e il modello TCP/IP sono rappresentati nella seguente Figura:

98

Nello strato Applicazione del modello TCP/IP si trovano protocolli di livello superiore come il TELNET per la gestione dei terminali virtuali, lFTP per lo scambio dei file, lSMTP e il POP3 per la gestione della posta elettronica, lHTTP per lesplorazione del World Wide Web, il DNS per la mappatura degli indirizzi IP in indirizzi simbolici ed altri. Nello strato Trasporto del modello TCP/IP sono presenti due protocolli: il TCP (Transmission Control Protocol) e lUDP (User Datagram Protocol). Il protocollo TCP un protocollo affidabile orientato alla connessione che permette a un flusso di dati emessi da un host di raggiungere senza errori qualsiasi altro host della rete Internet. Il flusso di dati entrante viene suddiviso in pacchetti discreti e ogni pacchetto viene passato allo strato Internet sottostante. Nellhost di destinazione il processo TCP ricompone i pacchetti ricevuti per formare il flusso dati di uscita. In caso che dei pacchetti di dati vengano persi, provvede alla loro ritrasmissione. Il protocollo TCP gestisce anche il controllo di flusso, per garantire che una sorgente veloce non sommerga un ricevitore lento con una quantit di pacchetti maggiore di quella che in grado di gestire. Esempi di applicazioni che utilizzano il protocollo TCP sono lHTTP, lFTP, il TELNET e lSMTP.

99

UDP invece un protocollo non affidabile e non orientato alla connessione che viene utilizzato da applicazioni che non richiedono il controllo di flusso e la garanzia di ordinamento offerta dal TCP, ma preferiscono gestire queste funzioni autonomamente. E impiegato diffusamente nei casi in cui la consegna rapida dei pacchetti di dati pi importante dellaccuratezza. Esempi di applicazioni che utilizzano il protocollo UDP sono il DNS, il Voice over IP e la trasmissione audio-video in streaming. Lo strato Internet svolge tre funzioni principali: lindirizzamento, la suddivisione e linstradamento dei pacchetti di dati. LInternet Protocol (IP) risiede in questo strato dellinsieme stratificato di protocolli TCP/IP. Il protocollo IP offre la consegna di informazioni senza connessione e non garantita. Questo significa che il protocollo IP non svolge alcun controllo o misurazione per assicurarsi che lhost destinatario abbia ricevuto con successo le informazioni. I pacchetti di dati IP possono essere persi a causa di interferenza sul canale di trasmissione o per il sovraccarico della rete, possono arrivare parecchie volte o in un ordine differente rispetto a quello in cui sono stati trasmessi. Il protocollo IP supportato da quasi tutte le reti, ad esempio Ethernet, Token Ring, reti di accesso PPP, reti ATM e altre ancora.

100

5.3 Incapsulamento Il modello di riferimento TCP/IP descrive il modo in cui le informazioni si fanno strada da unapplicazione su di un sistema host ad unapplicazione su di un altro sistema host. Le informazioni discendono attraverso gli strati della rete sullhost mittente e cambiano il proprio formato in ciascuno strato. I dati che provengono dagli strati superiori sono incapsulati con informazioni di intestazione dallo strato immediatamente inferiore come si pu vedere nella seguente Figura:

Nella Figura si adottato un modello ibrido tra ISO/OSI e TCP/IP in cui lo strato di Rete del modello TCP/IP stato suddiviso negli strati Collegamento e Fisico gi visti nel modello ISO/OSI. Mentre i dati discendono attraverso gli strati, lintestazione ed i dati provenienti dal livello superiore diventano la sezione dei dati del livello immediatamente inferiore. I dati non possono saltare uno strato mentre scendono attraverso il modello TCP/IP. Questo semplifica il processo della trasmissione e consente lo sviluppo di nuovi protocolli, poich questi devono semplicemente interagire con gli strati sopra e sotto a quello in cui sono implementati.

101

La Figura mostra che, come i dati discendono attraverso lhost a sinistra, la combinazione tra lintestazione dello strato precedente ed i dati incapsulata con lintestazione dello strato successivo. Questo assicura che gli host coinvolti nella trasmissione di messaggio siano in grado di comunicare in modo attendibile luno con laltro. Nella Figura mostrato che ai dati aggiunta unintestazione al Livello Trasporto, per esempio unintestazione TCP o UDP. Allo strato Internet, i dati (che ora comprendono lintestazione dello strato Trasporto ed i dati originali ricevuti dagli strati superiori) si sistemano in un pacchetto che contiene unintestazione Internet (intestazione IP). Questa intestazione Internet comprende gli indirizzi logici dellorigine e della destinazione degli host (indirizzi IP). In una rete interconnessa con TCP/IP, sono gli indirizzi IP degli host mittente e destinatario che consentono poi linstradamento dei pacchetti tra i due host attraverso la rete. Allo strato del Collegamento, lintestazione Internet, lintestazione Trasporto e i dati sono incapsulati con unintestazione del Collegamento (ad esempio il frame Ethernet visto nel Capitolo 3) che definisce il modo in cui le informazioni saranno trasportate attraverso linterfaccia della rete sulla rete fisica. Ciascun dispositivo sulla rete richiede linclusione di una intestazione per connettersi con il dispositivo successivo della rete. Lintestazione del Collegamento include anche gli indirizzi fisici degli host mittente e destinatario (per esempio gli indirizzi MAC Ethernet). Infine, allo strato Fisico, il flusso di bit associato allintestazione del Collegamento ed i suoi dati si convertono in un formato che consente la trasmissione delle informazioni su di un mezzo fisico (doppino, coassiale, fibra ottica o altro). Quando i dati arrivano allhost destinatario, i bit sono nuovamente convertiti in unintestazione del Collegamento con i suoi dati. Quando le informazioni si spostano verso lalto attraverso gli strati della rete, ciascuna intestazione serve a determinare in che modo spostare i dati verso gli strati superiori. A ciascuno strato si staccano le informazioni di intestazione dello strato precedente, in modo tale che i dati abbiano di nuovo lo stesso formato che avevano al momento della trasmissione dallo strato corrispondente dellhost mittente. Quindi nellhost destinatario avviene lesatto contrario di ci che accade nellhost mittente: ad un pacchetto dati in arrivo viene rimossa lintestazione di uno strato prima di essere passato allo strato superiore, mentre nellhost mittente ad un

102

pacchetto dati che deve essere spedito viene aggiunta unintestazione nel passaggio da uno strato a quello immediatamente inferiore. Il pacchetto di dati costituito dai dati utili e dalle intestazioni Internet e Trasporto chiamato datagramma IP.

103

5.4 Protocollo IP Il protocollo IP risiede nello strato Internet del modello TCP/IP. Quando le informazioni arrivano a questo livello dallo strato del Trasporto, il protocollo IP vi aggiunge unintestazione IP. La dimensione massima di un datagramma IP di 64 Kbyte. Normalmente la dimensione massima utilizzata per un datagramma IP (comprendente anche lintestazione) minore di quella massima (64 Kbyte), ed detta MTU (Maximum Transfer Unit). Nel caso di Ethernet la MTU uguale a 1500 Byte. Lo strato Internet determina anche come instradare un datagramma verso un host destinatario. Se si suppone che lhost dellIP destinatario si trovi sullo stesso segmento di rete, il datagramma viene inviato direttamente allhost bersaglio. Se invece determina che lhost destinatario si trova su un segmento di rete remoto, IP usa la tabella di instradamento dellhost mittente per individuare la strada migliore per raggiungere la rete su cui si trova lhost remoto. Se nella tabella di instradamento non esiste un percorso esplicito, lhost allorigine impiega il suo gateway predefinito (il ROUTER preferito che un host utilizza per instradare il traffico verso segmenti di rete remoti) per inviare il diagramma IP allhost remoto. Altri processi che avvengono nello strato Internet sono la frammentazione ed il riassemblaggio. A volte, quando le informazioni sono trasferite tra i segmenti di rete, questi possono non servirsi della stessa topologia di rete. La topologia di rete del ricevente pu non lavorare con la medesima dimensione del datagramma IP che usa la rete dellhost mittente. In questo caso, IP scompone i dati in pezzi pi piccoli. Quando i dati arrivano allhost destinatario, i pezzi pi piccoli vengono riassemblati nel pacchetto dati originale. LInternet Protocol fornisce tutti gli indirizzi logici degli host. Ciascun host ha in dotazione un indirizzo IP univoco per la rete sulla quale sta lavorando. Il protocollo IP funziona in modalit senza connessione (connectionless). Affinch due host comunichino utilizzando il protocollo IP, non necessario che prima stabiliscano una sessione di comunicazione. I due sistemi si scambiano i dati per mezzo di un sistema di consegna ottimizzato (Best Effort). Come accade per qualsiasi protocollo che fornisce lindirizzamento in rete, lInternet Protocol include sia i componenti della rete sia quelli dellhost. Confrontando lindirizzo IP di un computer destinatario con lindirizzo IP della

104

propria origine, lIP pu determinare se il pacchetto deve essere instradato verso lhost destinatario o se possibile mandarglielo direttamente. Il formato di un pacchetto IP riportato nella seguente Figura:

Il campo Version indica quale versione del protocollo IP utilizzata per formattare il datagramma IP. La versione corrente del protocollo la numero 4 (IPv4), ma si sta lavorando sul protocollo IPv6. Se il computer ricevente non pu gestire la versione del protocollo IP specificata nel campo Version, semplicemente scarta il pacchetto. La lunghezza del campo di bit 4. Il campo Length, di lunghezza 4 bit, indica la lunghezza dellintestazione di IP. Tutti i campi in un pacchetto IP sono infatti di lunghezza fissa, eccetto i campi Options e Padding. Questo campo determina la linea divisoria tra lintestazione e la porzione dei dati del pacchetto. Il campo Length viene sottratto dal campo Packet Length per determinare dove cominciano i dati. Il campo Service Type, di lunghezza 8 bit, comunica al protocollo IP come occorre gestire il pacchetto IP. Include al suo interno i sottocampi Precedence, Delay, Throughput e Reliability. Il sottocampo Precedence stabilisce limportanza di un datagramma. Questo sottocampo di tre bit pu variare da un valore zero (normale) ad un valore 7 (controllo di rete). Pi il numero alto e pi il pacchetto importante. Teoricamente, i pacchetti a priorit pi alta dovrebbero essere instradati verso lindirizzo di destinazione pi velocemente rispetto a quelli con priorit inferiore. I sottocampi

105

Delay, Throughput e Reliability specificano tutti il trasporto desiderato per il pacchetto. Questi tre sottocampi sono in genere tutti impostati su 0. Se sono impostati ad 1, indicano che si desidera un basso ritardo, un alto throughput ed unalta attendibilit. Quando sono disponibili pi percorsi per raggiungere una rete remota, questi campi possono servire a determinare il percorso da intraprendere. Il campo Packet Length, di lunghezza 16 bit, contiene la lunghezza totale del pacchetto IP, intendendo con questo linsieme dei dati e lintestazione IP. I campi Packet Fragmentation ricoprono un ruolo nei processi di frammentazione e riassemblaggio. In una inter-rete IP, le informazioni possono viaggiare fra differenti topologie di rete che comprendono Ethernet, Token Ring e FDDI per esempio. Ciascuna topologia vincolata dalla quantit di dati che pu inserire in una singola trama sulla rete. Quando i dati passano tra le diverse topologie, a volte occorre suddividerli in frammenti pi piccoli, che possano essere trasportati attraverso le altre topologie di rete. Le dimensioni di questi frammenti si basano sul formato massimo che pu gestire la topologia di rete attraverso la quale il datagramma sta viaggiando. Quando un pacchetto frammentato, occorre fornire anche un meccanismo che consenta il riassemblaggio del pacchetto originale una volta giunto allhost di destinazione. Il campo Identification contiene un identificatore univoco, che contrassegna il datagramma originale. Se un pacchetto originale suddiviso in tre frammenti, ciascuno dei tre ha un identico campo Identification. Il campo Flags, che di 3 bit, controlla la frammentazione. Il primo di questi bit attualmente inutilizzato. Il secondo il bit Dont Fragment (DF) e il terzo il bit More Fragments (MF). Se il bit DF impostato su 1, il datagramma non pu essere frammentato. Se i dati giungono ad una rete che non pu gestire cornici di queste dimensioni, il datagramma viene scartato (dal momento che non possibile frammentarlo). Questo meccanismo si rivela particolarmente utile in quelle circostanze in cui in corso un test sulle dimensioni dei pacchetti e quindi non bisogna suddividerli in frammenti pi piccoli. Il bit MF indica che il pacchetto corrente seguito da altri pacchetti: nellultimo pacchetto di un frammento, infatti, il bit MF impostato a 0. Ci significa che a seguire non vi sono ulteriori pacchetti.

106

Il campo Fragment Offset utilizzato in associazione con il bit MF durante il riassemblaggio del pacchetto frammentato. Molte volte, lhost destinatario riceve i pacchetti frammentati non in sequenza. Il bit MF, il campo Identification ed il campo Fragment Offset aiutano proprio a determinare come ricomporre questi pacchetti frammentati nel pacchetto originale. Il valore Offset si basa sempre sullinizio del messaggio. Per esempio, se un pacchetto da 1500 byte deve essere suddiviso in frammenti non pi grandi di 700 byte, accadr quanto segue: il primo frammento ricever in assegnazione lo stesso ID del pacchetto originale da 1500 byte. Il bit MF sar impostato su 1 ed il campo Fragment Offset sar impostato su 0. Il secondo frammento avr lo stesso ID del pacchetto originale ed avr ancora il bit MF impostato su 1. Il campo Fragment Offset per il secondo frammento sar invece impostato su 700. Il frammento conclusivo avr sempre lo stesso ID del pacchetto originale. In quanto ultimo pacchetto, il bit MF sar impostato su 0, poich non seguiranno altri frammenti. Il valore Fragment Offset per questo pacchetto, sar impostato su 1400 per questo pacchetto. Il campo Time to Live (TTL), di lunghezza 8 bit, indica quanto a lungo un datagramma pu esistere su di una rete. Ogni volta che il pacchetto attraversa un ROUTER, il suo valore diminuisce di uno. Quando il campo TTL raggiunge il valore zero, il datagramma viene scartato dal ROUTER in cui si trova attualmente. Allhost mittente, giunge un messaggio che informa che il pacchetto stato scartato, pertanto necessario inviarlo una seconda volta. Il campo Protocol, di lunghezza 8 bit, indica quale protocollo di alto livello stato usato per creare le informazioni immagazzinate nella porzione dei dati del pacchetto. Questo campo aiuta nello spostamento del pacchetto in alto fino al protocollo corretto nel modello a strati TCP/IP. Definisce inoltre il formato della porzione dei dati del pacchetto. Un numero di identificazione del protocollo (Protocol Indentification Number, PIN) assegnato dal Network Information Center (NIC, la scheda di rete) rappresenta ciascun protocollo. Il numero protocollo di TCP 6, quello di UDP 17. Il campo Header Checksum, di lunghezza 16 bit, serve ad assicurare che le informazioni dellintestazione non si siano rovinate durante il transito. Questa somma di controllo vale soltanto per la porzione dellintestazione del pacchetto. Da ci ne deriva una ridotta elaborazione a ciascun ROUTER, perch la somma di controllo

107

non calcolata sullintero pacchetto. A ciascun ROUTER che il pacchetto attraversa, il valore Header Checksum deve essere calcolato di nuovo, perch il campo TTL decresce per ciascun ROUTER, obbligando quindi a svolgere un nuovo calcolo. I campi IP Address Source e Destination contengono gli indirizzi IP a 32 bit degli host mittente e destinatario. Questi due valori non mutano durante il transito. Il campo Options pu essere costituito da parecchi codici di lunghezza variabile. In un pacchetto IP si pu utilizzare pi di una opzione. In tale caso, i campi appaiono in sequenza nellintestazione IP. Ciascuna opzione lunga 8 bit e consiste in tre sottocampi. Il primo bit rappresenta il copy flag, che determina il modo in cui questa opzione deve essere trattata quando un pacchetto origine frammentato. Se il copy flag impostato su 0, lopzione deve essere solo copiata sul primo frammento. Se il copy flag impostato su 1, lopzione deve essere copiata su tutti i frammenti del pacchetto originale. La option class rappresentata da 2 bit e le pu essere assegnato uno tra quattro valori. Il valore 0 significa che lopzione ha a che fare con un controllo del datagramma o della rete. Il valore 2 significa che lopzione serve a scopo di debug o di misurazione. I valori 1 e 3 sono riservati per usi futuri e non sono ancora stati definiti. I 5 bit finali, rappresentano lo option number, che assume significati diversi in base al valore della option class. I contenuti del campo Padding si basano sulle opzioni selezionate per un pacchetto IP. Il riempitivo assicura che lintestazione del datagramma sia arrotondata su di un numero pari di byte. Nello strato Internet del modello TCP/IP sono presenti altri due protocolli: il protocollo ICMP (Internet Control Message Protocol) utilizzato per il monitoraggio degli errori degli altri protocolli e il protocollo IGMP (Internet Group Management Protocol) che si occupa di spedire pacchetti in broadcast e multicast.

108

5.5 Indirizzi IP Per consentire a tutti i sistemi connessi ad Internet di comunicare tra loro, necessario stabilire un metodo globalmente accettato per identificare ed indirizzare in modo univoco tutti i sistemi. Gli indirizzi dei sistemi connessi ad Internet devono essere unici. Ci ha implicato la necessit di definire un nuovo schema di indirizzamento, poich le sotto-reti preesistenti avevano schemi di indirizzi, in generale, diversi tra loro e globalmente non univoci (ad es. indirizzi Ethernet, indirizzi X.25, numeri telefonici etc.). Lo schema di indirizzamento di Internet definito allinterno degli strati IP e TCP (o UDP). Un indirizzo IP identifica solo un sistema e non uno specifico utente (si ricorda che un generico sistema pu essere utilizzato da pi utenti o processi). Lidentificazione di un utente allinterno di un sistema affidata ai protocolli di strato superiore (TCP o UDP). Un indirizzo completo quindi costituito da due parti, una definita allinterno di IP ed unaltra definita allinterno di TCP (o UDP). Lo schema di indirizzamento di IP si sovrappone a quello delle sotto-reti che interconnette. Gli indirizzi IP devono essere unici in tutta la inter-rete. Lo schema di indirizzamento di IP ha una struttura gerarchica, per facilitare loperazione di instradamento. Un indirizzo IP identifica prima una porzione di inter-rete a cui un sistema connesso e poi il sistema allinterno di quella porzione; ci facilit la scelta di una strada per raggiungere un dato sistema. Un indirizzo IP costituito da una stringa di 32 bit: possono quindi teoricamente esistere 2^32 (=4.294.967.296) possibili indirizzi. Ogni indirizzo IP consta di due parti: Net_Id e Host_Id. I 32 bit totali sono divisi tra Net_Id e Host_Id. Lindirizzo IP completo pu quindi essere scritto come: IP_Address = Net_Id.Host_Id E importante sottolineare che la componente Net_Id di un indirizzo IP non necessariamente in corrispondenza con una data sotto-rete fisica. La componente Net_Id in corrispondenza con quella che si prima definita genericamente come una porzione dellinter-rete. Tale porzione pu coincidere con una data sotto-rete fisica, ma pu anche comprendere pi sotto-reti fisiche o essere un sottoinsieme di

109

una data sotto-rete fisica. Nel seguito, si far riferimento ad una porzione di inter-rete, caratterizzata da una comune componente Net_Id degli indirizzi IP in essa contenuti, con il termine rete logica. La suddivisione di un indirizzo IP nelle sue due componenti non fissa. In particolare sono state definite cinque classi, in ognuna delle quali si assegna una frazione diversa dei 32 bit totali alla Net_Id e conseguentemente alla Host_Id. Il motivo dellintroduzione di queste classi da ricercarsi nel fatto che Internet si propone di interconnettere diversi tipi di sotto-rete; si possono perci avere diverse necessit, circa la definizione delle reti logiche. Le cinque classi sono contraddistinte da una lettera. Le classi A, B e C sono destinate allutenza normale; la lettera D destinata a comunicazioni di tipo multipunto (multicast); la lettera E riservata per usi futuri. Grazie alla distinzione in classi, possono esistere: per la classe A: un numero ristretto di reti logiche (=128), ognuna delle quali pu contenere milioni di possibili diversi indirizzi (fino a 16,777,216); il numero totale di indirizzi di classe A (2^32)/2, il Net_Id di 7 bit e lHost_Id di 24 bit; per la classe B: un discreto numero di reti logiche (=16,384), ognuna delle quali pu contenere diverse migliaia di possibili diversi indirizzi (fino a 65,536); il numero totale di indirizzi di classe B (2^32)/4, il Net_Id di 14 bit e lHost_Id di 16 bit; per la classe C: un elevato numero di reti logiche (=2,097,152), ognuna delle quali pu contenere solo un ristretto numero di possibili diversi indirizzi (fino a 256), il numero totale di indirizzi di classe C (2^32)/8, il Net_Id di 21 bit e lHost_Id di 8 bit; Un indirizzo IP di classe D invece utilizzato per comunicazioni di tipo multipunto. Ovvero, se si vuole inviare un messaggio non ad un solo destinatario, ma ad un predefinito gruppo di destinatari, si pu usare un apposito indirizzo di tipo multipunto, che corrisponde ad una pluralit di host (tale insieme di host denominato gruppo multicast). A tal fine si usa anche il protocollo IGMP. Si noti che una trasmissione di tipo multipunto diversa da una di tipo diffusiva (broadcast); la prima fa riferimento ad uno specifico gruppo di destinatari, mentre la seconda fa riferimento a tutti gli utenti allinterno di una specificata sotto-rete (o perfino a tutti gli utenti di Internet). Il numero totale di indirizzi di classe D (2^32)/16;

110

Infine il numero totale di indirizzi di classe E (2^32)/32. Al fine di assicurare che ogni indirizzo di Internet sia unico stata costituita unautorit centrale con il compito di assegnare gli indirizzi, la Internet Network Information Center (INTER-NIC). LINTER-NIC controllato a sua volta da una autorit amministrativa denominata Internet Assigned Number Authority (IANA). INTER-NIC assegna per solo la parte Net_Id e quindi una rete logica, delegando poi lorganizzazione richiedente per lassegnazione della restante parte dellindirizzo 1Host_Id; ovviamente una rete logica di classe A concessa in uso solo ad organizzazioni molto grandi (o ad intere nazioni); una rete logica di classe B concessa solo ad organizzazioni che dimostrino di aver bisogno di connettere ad Internet almeno qualche migliaia di host e cos via. Lorganizzazione che si vede assegnare una Net_Id potr poi suddividere la parte di Host_Id per creare, allinterno della sua rete logica, delle sotto-reti logiche, ognuna delle quali avr la stessa Net_Id. In tal modo, un utente che ha bisogno di un singolo indirizzo IP non deve rivolgersi direttamente allINTER-NIC, ma pu fare riferimento ad unautorit locale. Si noti che la scelta di uno schema di indirizzamento gerarchico pu portare ad indirizzi non utilizzati e quindi in sprechi. Gli indirizzi corrispondenti alla parte Host_Id di una data rete logica, non usati dallorganizzazione responsabile della corrispondente Net_Id, non possono essere usati da nessun altro; ci spiega lattuale relativa penuria di indirizzi IP, a fronte dei 3,758,096,384 indirizzi teoricamente disponibili per le prime tre classi. Come gi detto, un indirizzo IP costituito da una stringa di 32 bit; per le comunicazioni tra persone, di documenti tecnici ed anche di programmi applicativi si preferisce invece usare unaltra notazione. La notazione in questione si ottiene separando i 32 bit in 4 campi di 8 bit ciascuno; questi campi si esprimono poi in decimale invece che in binario, separandoli con un punto; questa notazione nota come dotted (puntata) o decimale. Ad esempio lindirizzo IP di un particolare sistema, espresso in una stringa di 32 bit, nella relativa notazione dotted :

111

E utile sottolineare che lindirizzo effettivamente utilizzato da IP sempre una stringa di 32 bit e la rappresentazione dotted deve essere preventivamente tradotta da un opportuno software prima di essere utilizzata da IP per leffettivo scambio di informazione. In aggiunta alle classi, sono stati definiti alcuni indirizzi speciali. Con riferimento alla notazione binaria si stabilito che un campo costituito da zeri (0 nella notazione dotted) significa questo ed un campo costituito da uni (255 nella notazione dotted) significa tutti. Infine un indirizzo che inizia con 01111111 (127 nella notazione dotted) un indirizzo di rinvio a se stesso (loopback), cio il messaggio inviato ritorna al mittente (usato per prove, verifiche e per comunicazioni tra processi che operano nello stesso sistema). Gli indirizzi con campi uguale ad 1 sono utilizzati per comunicazioni diffusive (broadcast) ovvero per comunicare con una pluralit indifferenziata di sistemi. Con riferimento alla notazione dotted, inviando un messaggio allindirizzo 255.255.255.255 si indirizzano tutti i sistemi di Internet (il che in generale non permesso). Lindirizzo 151.100.255.255 si riferisce a tutti i sistemi della rete logica 151.100. I1 campo composto da 0 invece importante quando si vuole comunicare con un host collegato alla stessa rete logica a cui si collegati e non si conosce lindirizzo della rete logica stessa ( un problema che sorge per alcune applicazioni). Ad esempio, 0.0.0.0 si riferisce allhost che origina la richiesta; 0.0.0.23 si riferisce alla rete logica a cui connesso lhost 23. Per concludere bisogna precisare che un ROUTER che collegato direttamente a due o pi sotto-reti e quindi, in generale, a due o pi reti logiche, deve avere due o pi indirizzi IP (oltre ai corrispondenti indirizzi locali).

112

5.6 I protocolli dello strato Trasporto Lindirizzo di destinazione IP fa riferimento in modo generico ad un sistema, ma non distingue a quale utente o a quale applicazione diretto un datagramma. In Internet, uno dei compiti dei protocolli dello strato Trasporto, ovvero UDP (User Datagram Protocol) e TCP (Transmission Contro1 Protocol), quindi quello di distinguere tra i diversi programmi applicativi ed i diversi utenti che fanno uso di un sistema, consentendogli di inviare e ricevere datagrammi, indipendentemente luno dallaltro. Molti dei sistemi connessi ad Internet usano sistemi operativi multi-utente e multi-tasking; ovvero consentono a pi utenti e a pi applicazioni di utilizzare il calcolatore simultaneamente (secondo il principio del time-sharing). Pi in generale si parla di processi, ed i sistemi di calcolo che consentono di eseguire pi processi contemporaneamente sono detti multi-processing. Il termine processo comprende sia programmi applicativi di sistema che programmi applicativi direttamente usati dagli utenti. Un processo eseguito da una o pi entit e offre il risultato delle operazioni che svolge a quello che, in terminologia TCP/IP, definito utente. Un processo di strato Applicativo il destinatario finale di un datagramma e quindi un protocollo di strato Trasporto deve poter indirizzare i datagrammi consegnatigli dallo strato IP ad uno specifico processo applicativo. A tal fine occorre stabilire delle opportune procedure. I processi sono creati e distrutti dinamicamente ed un mittente non sa, in generale, a quale processo di un sistema remoto riferirsi. Vi inoltre lesigenza di poter modificare un processo senza dover poi rendere noto a tutti i possibili mittenti questo cambiamento. Le destinazioni finali dovrebbero quindi essere identificate in base alle funzioni che eseguono e non in base allo specifico processo che le implementa. Infine, in un sistema che consente ad un unico processo di gestire pi funzioni, necessario decidere a quale di queste funzioni il mittente fa riferimento. Per queste ragioni, invece di pensare ad un processo come alla destinazione finale, si stabilito che ogni sistema contenga un insieme di punti di destinazione chiamati porte. Ogni porta identificata da un intero positivo (il valore massimo 65535) e sar poi il sistema operativo del sistema a mettere in corrispondenza ogni porta con un relativo processo.

113

In terminologia TCP/IP, una porta non altro che il Service Access Point (SAP) dello strato Trasporto, ovvero un punto, situato alla frontiera tra strato TCP (o UDP) e strato dei servizi applicativi, che identifica in modo univoco una specifica entit di destinazione, responsabile del processo di destinazione. Per poter inviare un datagramma al processo voluto, un mittente deve quindi conoscere sia lindirizzo IP che la porta di destinazione (o SAP di strato Trasporto). Si pone perci il problema di come assegnare i numeri di porta. Sono state definite due possibili tecniche per assegnare i numeri di porta, ambedue usate contemporaneamente in Internet: assegnazione universale: la Internet Assigned Number Authority (IANA) ha definito un insieme di numeri di porta in modo che ad un dato processo applicativo associato uno specifico numero di porta; ad esempio in UDP la porta numero 53 associata al processo che implementa il DNS; i numeri di porta cos predefiniti sono denominati Well Known Ports e tutti coloro che implementano software applicativo per Internet tengono conto di queste assegnazioni; in tal modo, quando si vuole indirizzare una unit di dati ad uno specifico processo si sa quale numero di porta usare; le Well Known Ports sono definite in modo specifico nellambito dei protocolli UDP e TCP; assegnazione dinamica: alcuni indirizzi di porta, ovvero alcuni interi positivi non sono stati assegnati a nessun specifico processo; quando un processo applicativo ha bisogno di inviare dei dati ad un altro processo applicativo, negozia con questultimo uno specifico indirizzo di porta, tra quelli non gi assegnati. Lindirizzo di porta prescelto viene usato solo durante il trasferimento di dati in questione e quindi rilasciato al termine della sessione di trasferimento. Tale indirizzo di porta potr quindi, in seguito, essere usato da altri processi. La coppia costituita dallindirizzo IP e dalla porta detta socket. Spesso una porta dispone anche di una memoria, che realizza una fila di attesa per tutti i datagrammi inviati a quella porta (qualora siano possibili situazioni di congestione). I processi applicativi possono specificare, ed in seguito modificare, la dimensione della fila di attesa. Quando la fila piena, eventuali unit di dati entranti saranno scartate. In conclusione, ogni unit di dati di strato Trasporto deve contenere delle informazioni atte ad identificare sia la porta di destinazione che quella di origine.

114

Questultima informazione necessaria per consentire al processo di destinazione di rispondere a quello mittente. Nella seguente Tabella sono mostrate alcune Well Known Ports.

115

5.7 Protocollo UDP La funzione principale de1 protocollo UDP (User Datagram Protocol) quella di indirizzare una porta specifica; la modalit di trasferimento senza connessione e non fornisce alcuna garanzia sulla qualit di servizio. Non esegue recupero di errore, controllo di flusso e riordinamento delle unit informative. Esso si rivela molto utile per la sua leggerezza, la capacit di operare trasmissioni di tipo unicast, broadcast e multicast in pi non richiede particolari risorse per implementare le sue funzionalit. I messaggi UDP sono di dimensioni contenute e presentano un overhead minimo il che li rende idonei al trasferimento di informazioni di controllo che devono rispettare dei tempi molto stretti. Proprio per queste qualit viene usato da diverse varianti di Ethernet Industriale nello scambio dei dati di processo di sensori o attuatori. Dal punto di vista dellaffidabilit delle trasmissioni necessario appoggiarsi a un protocollo superiore. Le unit di dati di UDP sono di lunghezza variabile e sono denominate datagrammi utente. Lintestazione di 8 byte del datagramma utente riportato nella seguente Figura:

Lintestazione contiene i seguenti campi: gli indirizzi delle porte di origine e di destinazione (la lunghezza di 16 bit); la lunghezza del datagramma utente che comprende lintestazione UDP e i dati (la lunghezza di 16 bit); una checksum di controllo dellintero datagramma utente il cui uso opzionale (la lunghezza di 16 bit). Allintestazione segue un campo contenente i dati di utente, ovvero i dati generati da un processo applicativo. UDP accetta dal livello superiore dati senza vincoli sulla

116

loro lunghezza, eventualmente li frammenta e li invia in datagrammi IP distinti come si pu vedere nella seguente Figura:

La checksum del datagramma utente opzionale; in tal modo si pu fare a meno di usarla, quando non necessario, e ridurre quindi il carico elaborativo per la trasmissione e la ricezione di un datagramma utente UDP. Infatti se si usano reti altamente affidabili, la verifica di errori non strettamente necessaria. E necessario per osservare che IP non effettua alcun controllo di errore sul campo informativo del datagramma IP, per cui, quando si usa UDP come protocollo di strato Trasporto, la checksum di UDP costituisce lunico strumento per verificare che i dati siano giunti a destinazione correttamente. Qualora tale controllo venga impiegato, esso riguarda non solo tutto il datagramma utente UDP, ma anche un cosiddetto pseudo-header, aggiuntivo a quello di UDP e mostrato nella seguente Figura:

Lo pseudo-header viene considerato al solo fine del calcolo della checksum (non viene trasmesso alla destinazione) e risulta costituito da: gli indirizzi IP della sorgente e della destinazione (contenuti nellintestazione del datagramma IP ); il codice IP che identifica il protocollo UDP (uguale a 17); la lunghezza del datagramma utente UDP;

117

un byte di padding per fare in modo che la lunghezza complessiva sia multipla di 16 bit. In altri termini, la checksum di cui sopra controlla non solo lintero datagramma utente UDP, ma anche gli indirizzi IP contenuti nel datagramma IP che ha trasportato il datagramma utente in questione. Il motivo per cui viene considerato tale pseudo-header quello di verificare che il datagramma utente UDP abbia raggiunto la destinazione corretta, ossia un dato utente di destinazione in un dato sistema di destinazione. Il solo esame del datagramma utente UDP non fornirebbe tale garanzia in quanto non contiene lindirizzo del sistema di destinazione. Unapplicazione dello strato Applicazione del modello TCP/IP che utilizza UDP il DNS (Domain Name System). La porta UDP utilizzata da DNS la 53. Un programma che necessita di un indirizzo IP associato al nome di un host, invia un pacchetto UDP ad un server DNS contenente il nome dellhost. Il server risponde con un pacchetto UDP contenente lindirizzo IP dellhost. Altri casi in cui utilizzato il protocollo UDP sono le trasmissioni in streaming di dati multimediali (audio e video) e la telefonia vocale su Internet (Voice over IP).

118

5.8 Protocollo TCP TCP (Transmission Control Protocol) un protocollo con connessione che svolge le funzioni di controllo e recupero di errore, controllo di congestione, controllo di flusso, riordinamento delle unit informative e indirizzamento di uno specifico utente allinterno di un host. Trasferisce un flusso informativo continuo e bidirezionale, ma non strutturato ed effettua operazioni di multiplazione e de-multiplazione. Sebbene la sua notoriet derivi principalmente dal suo uso in Internet, TCP sufficientemente generale da poter essere usato anche in altri ambienti (rete telefonica commutata, LAN, MAN, X.25, eccetera). Come gi detto, un indirizzo IP identifica solo un sistema e non gli utenti o i processi residenti in un sistema. Compito di TCP quindi anche quello di distinguere tra i diversi programmi applicativi ed i diversi utenti che fanno uso di uno stesso sistema. Le connessioni TCP sono di tipo full-duplex, quindi il traffico dati pu procedere in entrambe le direzioni contemporaneamente. TCP non supporta la modalit multicasting e quella broadcasting. Come avviene per UDP, si stabilito che ogni sistema contenga un insieme di punti di destinazione chiamati porte. Anche in TCP, ogni porta identificata da un intero positivo. Lindirizzo di un utente di strato TCP denominato port, mentre lindirizzo completo nellinsieme dei protocolli TCP e IP denominato socket ed costituito da: port@IP_Address = port@Host_Id.Net_Id La componente port contenuta nellintestazione dellunit di dati di TCP, mentre la componente IP Address contenuta nellintestazione dellunit dati di IP. Questo significa che tutte le sessioni di comunicazione in atto tra due specifici sistemi useranno lo stesso indirizzo IP di sorgente e lo stesso indirizzo IP di destinazione; saranno perci distinte solo a strato TCP. Ne segue che queste sessioni possono essere viste come multiplate su di un unico indirizzo IP ovvero su di un unico canale IP di comunicazione (non su una connessione IP). Anche in TCP, come in UDP, gli indirizzi delle porte possono essere fissati a priori per uno specifico processo, ovvero essere decisi dinamicamente. In altri termini si possono usare sia lassegnazione universale che quella dinamica.

119

La gestione delle porte in TCP per pi complessa di quella in UDP poich alla stessa porta pu corrispondere pi di un processo. TCP un protocollo con connessione, a differenza di UDP, e quindi ci che ha maggiore significato la definizione di una connessione. In TCP una connessione identificata da una coppia di socket, relativa ai due processi che hanno stabilito la connessione. Ad esempio una connessione tra la porta 1069 dellhost 151.100.8.18 e la porta 25 dellhost 160.80.4.1 sar identificata dalla coppia 1069@151.100.8.18, 25@160.80.4.1. Grazie a tale meccanismo, un indirizzo di porta di un sistema pu supportare connessioni multiple; la porta 1069 dellhost 151.100.8.18 potrebbe gestire contemporaneamente le seguenti connessioni (ed anche altre): 1069@151.100.8.18, 25@160.80.4.1 1069@151.100.8.18, 25@128.10.2.3 Questo avviene perch ogni connessione identificata dalla coppia socket indirizzo e socket destinazione e non solo dal socket di destinazione. A conclusione della descrizione del meccanismo di indirizzamento delle porte si aggiunge che tipicamente responsabilit dei processi applicativi presentare agli utenti uninterfaccia che faciliti tale operazione. Si vuole cio evitare che gli utenti debbano conoscere ed usare direttamente gli indirizzi di porta. Internet vuole essere un ambiente in cui le operazioni che gli utenti devono eseguire per comunicare tra loro siano le pi semplici possibili (user friendly). TCP accetta dal livello superiore dati senza vincoli sulla loro lunghezza, li frammenta e li invia in datagrammi IP distinti come mostrato nella seguente Figura:

Poich IP offre un servizio di consegna non garantito, TCP deve verificare la corretta ricezione dei datagrammi ed, eventualmente, attuare le procedure necessarie per la

120

ritrasmissione. Inoltre compito di TCP verificare che i datagrammi giungano a destinazione nella stessa sequenza con cui sono stati trasmessi, che non vi siano duplicati o datagrammi mancanti. Queste funzionalit vengono garantite mediante la numerazione delle unit dati e mediante linvio di messaggi di conferma (acknowledgement) da parte della destinazione. TCP offre anche meccanismi di controllo di flusso in grado di impedire il sovraccarico della rete e quindi situazioni di congestione. Evidentemente tutte le funzionalit fornite da TCP hanno un costo in termini di aumento del ritardo di trasmissione e di aumento della quantit di informazioni che devono essere trasferite nella rete (overhead); ciononostante TCP pu essere impiegato anche in reti ad alta velocit. Infine si ricorda che, essendo TCP un protocollo con connessione, saranno presenti le fasi di instaurazione, trasferimento dati e rilascio. Le unit di dati dello strato TCP sono dette segmenti. Il segmento composto da una intestazione (di dimensione minima di 20 byte) e da un campo informativo, che contiene i dati di utente. Il formato del segmento TCP mostrato nella seguente Figura:

Ogni riga contiene 32 bit. I campi definiti hanno i seguenti significati e funzioni: Source Port (Porta di Origine) (16 bit): definisce lindirizzo logico del processo sorgente dei dati;

121

Destination Port (Porta di Destinazione) (16 bit): definisce lindirizzo logico del processo destinatario dei dati; Sequence Number (SN - Numero di Sequenza) (32 bit): numero di sequenza in trasmissione; contiene il numero di sequenza del primo byte di dati contenuti nel segmento a partire dallinizio della sessione TCP (se SN = m ed il segmento contiene n bytes il prossimo SN sar pari a m + n); la numerazione dei segmenti quindi effettuata non numerando i segmenti stessi, ma i byte in essi contenuti; Acknowledgement Number (Numero di Riscontro) (32 bit): numero di sequenza in ricezione; nei segmenti in cui il bit ACK posto al valore binario l, questo campo contiene il numero di sequenza del prossimo byte che il sistema che emette tale segmento si aspetta di ricevere; nel caso di connessioni interattive bidirezionali si usa quindi il meccanismo denominato addossamento (piggybacking) dei riscontri; ovvero si utilizzano segmenti contenenti dati di utente per inviare i riscontri al trasmettitore senza dover, a tal fine, inviare dei segmenti appositi; Offset (4 bit): contiene il numero di parole di 32 bit contenute nellintestazione di TCP; lintestazione di TCP sempre costituita da un numero di bit multiplo di 32 (questo campo necessario poich il campo Options di dimensioni variabili); Reserved (6 bit): riservato a usi futuri, impostato a tutti 0; Control bit (6 bit): i bit di controllo sono: 1. URG: viene posto uguale al valore binario l quando il campo Urgent Pointer contiene un valore significativo; 2. ACK: viene posto uguale al valore binario l quando il campo Acknowledgement Number contiene un valore significativo; 3. PSH: viene posto uguale al valore binario 1 quando lapplicazione esige che i dati forniti vengano trasmessi e consegnati allapplicazione ricevente prescindendo dal riempimento delle memorie allocate fra applicazione e TCP e viceversa (solitamente infatti il riempimento delle suddette memorie che scandisce la trasmissione e la consegna dei dati); 4. RST: viene posto uguale al valore binario 1 quando un malfunzionamento impone il reset della connessione;

122

5. SYN: viene posto uguale al valore binario l solo nel primo segmento inviato durante il three way handshaking (stretta di mano a tre fasi, una fase di sincronizzazione fra le entit TCP); 6. FIN: viene posto uguale al valore binario 1 quando la sorgente ha esaurito i dati da trasmettere. Window (16 bit): dimensione della finestra; contiene il numero di byte che, a cominciare dal numero contenuto nel campo Acknowledgement Number, il destinatario del segmento pu inviare al mittente del segmento stesso senza ricevere riscontri; Checksum (16 bit): contiene linformazione di controllo che permette allentit TCP ricevente di verificare la correttezza del segmento ricevuto; Urgent Pointer (Puntatore Urgente) (16 bit): contiene il numero di sequenza del byte che delimita superiormente i dati che devono essere consegnati urgentemente al processo ricevente. Tipicamente sono messaggi di controllo che esulano dalla comunicazione in senso stretto. A tale traffico ci si riferisce di solito con il nome di out of band; Options (Opzioni) (di lunghezza variabile): sono presenti solo raramente: le pi note sono End of Option List, Maximum Segment Size, No-Operation; Padding (Riempitivo) (di lunghezza variabile): contiene sempre degli zeri. Serve come riempitivo aggiunto per far s che lintestazione abbia una lunghezza multipla di 32 bit. Si noti che le unit di dati di TCP possono trasportare solo messaggi di controllo (ad esempio per instaurare o rilasciare una connessione) o solo dati di utente o entrambi. TCP usa il campo Control per specificare la funzione ed il contenuto di un segmento. Ci consente il piggybacking delle informazioni di controllo, ovvero le informazioni di controllo (per esempio i riscontri) possono essere trasportate da segmenti che contengono anche informazione di utente. Come avviene in UDP, la checksum di TCP controlla non solo lintero segmento TCP, ma anche gli indirizzi IP contenuti nel datagramma IP che ha trasportato il segmento in questione. Il controllo riguarda quindi anche uno pseudo-header, che viene considerato al solo fine del calcolo della checksum e che risulta costituito dagli indirizzi IP della sorgente e della destinazione (contenuti nellintestazione del datagramma IP), dal codice IP che identifica il protocollo TCP (uguale a 6), dalla lunghezza del segmento

123

TCP e da un byte di padding per fare in modo che la lunghezza complessiva sia multipla di 16 bit. Il motivo per cui viene considerato tale pseudo-header , come nel caso di UDP, quello di verificare che il segmento TCP abbia raggiunto la destinazione corretta, ossia un dato utente di destinazione in un dato sistema di destinazione. Il solo esame del segmento TCP non fornirebbe tale garanzia in quanto non contiene lindirizzo del sistema di destinazione. Il formato del pseudo-header di TCP mostrato nella seguente Figura:

Per concludere, il protocollo TCP ha la responsabilit della trasmissione affidabile di dati tra un nodo e laltro di una rete. Esso crea una sessione orientata alla connessione tra le due macchine, ovvero dando origine ad un circuito virtuale. Affinch possa stabilire una connessione, il TCP crea ed invia un pacchetto che richiede una connessione alla macchina di destinazione. In seguito attende, per vedere se lhost contattato a sua volta disponibile alla comunicazione. Nel caso ci si verifichi, la macchina di destinazione risponde con un proprio pacchetto che significa letteralmente sono disponibile per una conversazione e voglio ulteriori notizie da te. La prima macchina risponde dunque con un bene, eccoti il resto dellinformazione. Questo processo, attraverso il quale si stabilisce una sessione di comunicazione tra due macchine, chiamato three way handshaking (letteralmente stretta di mano a tre fasi). E detto a tre fasi perch nel processo sono necessari tre passi: il client richiedente invia al server un segmento (pacchetto) e specifica il numero di porta che vuole usare ed il suo numero di sequenza iniziale (ISN); il server risponde con un segmento contente il suo ISN ed un acknowledgement distinto dellISN client, a cui sommato il valore 1; il client riconosce lISN del server, dando inizio alla sessione.

124

Il processo di three way handshaking stabilisce dunque il numero di porta che dovr essere usato ed i numeri di sequenza iniziali di ambedue le parti. Affinch le macchine possano stabilire e mantenere una connessione, esse debbono scambiarsi determinate informazioni. Ogni pacchetto TCP inviato, contiene un numero di porta sorgente e destinazione, un numero di sequenza per i messaggi che debbono essere suddivisi in brani pi piccoli ed un valore di controllo per garantire linvio delle informazioni senza errori. Inoltre, ogni pacchetto contiene anche un numero di riconoscimento che dice alla macchina mittente quali pezzi del messaggio siano effettivamente arrivati a destinazione. Tutti questi accorgimenti, sono necessari per realizzare una trasmissione realmente affidabile.

125

5.9 Traduzione indirizzi IP in indirizzi locali Ad ogni sistema connesso ad Internet assegnato un unico indirizzo IP di 32 bit che lo identifica nellambito dellintera inter-rete (indirizzo globale). Quando un datagramma arriva alla sotto-rete di destinazione, lultimo ROUTER attraversato ha il compito di rilanciare il datagramma verso lhost di destinazione (prendendo in considerazione anche la componente Host_Id dellindirizzo e sfruttando i meccanismi protocollari propri della sotto-rete di destinazione). Lindirizzo IP non per sufficiente per far arrivare il datagramma allhost in questione. Infatti, la sotto-rete di destinazione ha un suo schema di indirizzamento locale e linterfaccia di rete di un host indirizzata, nellambito della sotto-rete di appartenenza, da un indirizzo locale MAC di 48 bit. Lultimo ROUTER deve quindi compiere delle operazioni di ricerca per determinare lindirizzo locale MAC di sotto-rete dellhost di destinazione che corrisponde allindirizzo globale IP contenuto nel datagramma in arrivo. La traduzione di un indirizzo globale in uno locale interessa per anche gli host e non solo i ROUTER; infatti ogni sistema (host o ROUTER) quando invia un datagramma ad un altro sistema connesso alla stessa sotto-rete ha bisogno delle funzionalit di traduzione; ci accade quando: un host invia un datagramma IP direttamente ad un altro host, senza passare attraverso un ROUTER (cosa possibile quando sia lhost mittente che quello di destinazione sono connessi alla stessa sotto-rete); un host invia un datagramma ad un ROUTER affinch questi lo rilanci poi verso la destinazione finale (in tal caso sicuramente lhost mittente ed il ROUTER apparterranno alla stessa sotto-rete). Il problema di tradurre indirizzi globali IP in indirizzi locali MAC risolto mediante protocolli ARP (Address Resolution Protocol). I protocolli ARP risiedono nello strato Internet del modello TCP/IP. Tale procedura di traduzione nota con il termine risoluzione di un indirizzo. La risoluzione di un indirizzo avviene secondo diverse modalit, ognuna specifica di una data tipologia di sotto-rete. Le modalit pi usate sono le seguenti: Alcuni protocolli ARP utilizzano delle tabelle, che contengono coppie di indirizzi IP e dei corrispondenti indirizzi locali; tali tabelle, predisposte dallamministratore della sotto-rete in questione, sono contenute in un

126

opportuno server (o in pi di un server); quando un host (o un ROUTER) ha bisogno di una corrispondenza tra un dato indirizzo IP ed un indirizzo locale, interroga tali server (denominati server ARP). In tal caso lhost deve conoscere lindirizzo locale di almeno un server ARP, per potergli inviare una richiesta di risoluzione. (Si noti che nulla vieta che un server ARP sia fisicamente implementato in un calcolatore che svolge anche funzioni di ROUTER); Altri protocolli ARP utilizzano un opportuno algoritmo. Ci possibile quando lo schema di indirizzamento della sotto-rete in questione gode di opportune propriet e gli indirizzi IP sono assegnati agli host secondo opportune modalit, in funzione dei rispettivi indirizzi locali; Altri protocolli ARP ottengono dinamicamente questa corrispondenza usando degli opportuni messaggi di interrogazione: quando un host (o un ROUTER) ha bisogno di risolvere un dato indirizzo IP, interroga tutti gli host della sotto-rete a cui collegato (in modalit broadcast con indirizzo MAC di destinazione uguale a FF.FF.FF.FF.FF), chiedendo a quale host corrisponde quellindirizzo IP (ARP Request). Questultima modalit vantaggiosa quando usata in sotto-reti caratterizzate da capacit di trasmissioni diffusive (broadcast) intrinseche come, ad esempio, una LAN Ethernet. Vista la diffusione di tali sotto-reti in Internet, i corrispondenti protocolli ARP sono tra i pi usati. In tal caso, un messaggio inviato sul mezzo fisico relativo ad una data sotto-rete perviene sempre a tutti gli host collegati a quel mezzo fisico. Nel messaggio di domanda si chieder quindi: quale host ha lindirizzo IP X.X.X.X ?; tale messaggio perverr a tutti gli host della sotto-rete e solo lhost con tale indirizzo IP risponder alla domanda con un messaggio in cui comunicher: lindirizzo IP X.X.X.X corrisponde al mio indirizzo locale Y.Y.Y.Y.Y.Y (ARP Reply). Quando il protocollo ARP ha risolto un dato indirizzo IP, memorizza la corrispondenza indirizzo IP,indirizzo locale MAC in unapposita tabella. Questa tabella svolge una funzione di cache, cio permette di ottenere rapidamente quelle corrispondenze che vengano richieste ripetutamente in brevi intervalli di tempo, senza bisogno di invocare ogni volta il protocollo ARP. Periodicamente le informazioni contenute nella cache vengono cancellate in modo da garantire la consistenza con le (eventualmente) mutate condizioni della topologia di rete

127

(tipicamente ogni 20 minuti). In tal modo, un ROUTER (o un host) deve emettere un di messaggio ARP Request solo quando deve trattare un datagramma il cui indirizzo di destinazione non sia contenuto nella sua tabella di corrispondenze. Si noti che risulta molto complesso implementare un protocollo ARP di questo tipo in una sotto-rete priva di capacit di trasmissioni diffusive intrinseche e legate alla sua topologia fisica. In tal caso, il ROUTER dovrebbe (se ad esempio la sotto-rete adottasse una modalit di trasferimento con connessione) instaurare delle connessioni verso tutti gli host della sotto-rete ed inviare ad ognuno di essi il messaggio ARP Request. Si pensi a cosa ci significherebbe in una sotto-rete di rilevanti dimensioni. Per tali tipi di sotto-rete (denominate Non Broadcast Multiaccess Network - NBMA), il problema della risoluzione degli indirizzi risulta essere una delle tematiche pi complesse, quando si vuole interconnettere una di tali sotto-reti ad Internet. In questi casi si preferisce adottare la prima delle soluzioni proposte in questo paragrafo e cio luso di server ARP. Anche questa soluzione presenta per degli aspetti critici. Infatti, se si usa un solo server ARP, questultimo dovr gestire numerose richieste ed in caso di un suo guasto, lintera sotto-rete non sarebbe in condizioni di operare. Se si usano pi server ARP sorge il problema di coordinarne il funzionamento e di comunicare ad ogni host a quale (o a quali) server ARP rivolgere le proprie richieste. La seguente Figura mostra un esempio di ARP Request.

128

Si consideri ora il caso mostrato nella seguente Figura:

Sono presenti due LAN Ethernet, LAN 1 e LAN 2, con indirizzi IP 192.31.65.0 e 192.31.63.0 rispettivamente. Queste due LAN sono collegate ad un anello principale FDDI con indirizzo IP 192.31.60.0. Gli host sulle due LAN Ethernet hanno indirizzi MAC unici indicati con E1, E2, E3, E4, E5, E6, mentre quelli sullanello principale FDDI sono indicati con F1, F2, F3. Sono poi presenti due ROUTER, Router 1 e Router 2, a ciascuno dei quali sono assegnati due indirizzi IP. Si supponga che lhost A voglia inviare un pacchetto allhost D (con IP uguale a 192.31.63.8). Il protocollo ARP non funziona perch lhost D non riceve la trasmissione broadcast (i ROUTER non inoltrano i pacchetti broadcast a livello Ethernet). Il problema pu essere risolto in due modi qui di seguito descritti: Il Router 1 potrebbe essere configurato per rispondere alle richieste ARP della rete 192.31.63.0 (la LAN 2, e possibilmente delle altre reti locali); se si adotta questa soluzione, lhost A crea nella sua cache ARP una voce contenente la coppia di valori (192.31.63.8, E3) e trasmette al Router 1 tutto il traffico diretto allhost D. Questa soluzione chiamata ARP proxy. Unaltra soluzione consiste nel fare modo che lhost A si accorga immediatamente che la destinazione si trova su una rete remota: in questo caso

129

tutto il traffico viene trasmesso a un indirizzo Ethernet predefinito (E3 nella Figura) in grado di gestire il traffico remoto. Questa soluzione non richiede che il Router 1 sappia quali sono le reti remote che sta servendo. In entrambi i casi, ci che accade che lhost A impacchetta il pacchetto IP nel campo carico utile di un frame Ethernet indirizzato a E3. Quando riceve il frame Ethernet, il Router 1 rimuove il pacchetto IP dal carico utile e cerca lindirizzo IP nelle sue tabelle di routing, scoprendo che i pacchetti per la rete 192.31.63.0 (LAN 2) devono essere inviati al Router 2 con IP uguale a 192.31.60.7. Se non conosce gi lindirizzo FDDI di 192.31.60.7, il Router trasmette in modalit broadcast un pacchetto ARP nellanello e scopre che il suo indirizzo F3. Quindi inserisce il pacchetto nel campo carico utile di un frame FDDI indirizzato a F3 e immette i dati nellanello. Sul Router 2, il driver FDDI rimuove il pacchetto dal carico utile e lo passa al software IP, che scopre di dover inviare il pacchetto allindirizzo 192.31.63.8 (host D). Se questo indirizzo non si trova nella sua cache ARP, il dispositivo trasmette in modalit broadcast una richiesta ARP attraverso la LAN 1 e scopre che lindirizzo di destinazione E6, perci costruisce un frame Ethernet indirizzato a E6, inserisce il pacchetto nel campo carico utile e invia i dati attraverso la Ethernet. Quando il frame Ethernet raggiunge lhost D, il pacchetto viene estratto dal frame e passato al software IP per lelaborazione finale. La trasmissione dallhost A verso una rete distante WAN (Wide Area Network) funziona essenzialmente nello stesso modo, tranne che questa volta le tabelle del Router 1 gli dicono di utilizzare il ROUTER WAN il cui indirizzo FDDI F2. Il caso di risoluzione di indirizzi inverso quello in cui noto un indirizzo locale fisico, ma non il corrispondente indirizzo IP. Tale caso si presenta quando un sistema, allaccensione, pur conoscendo il proprio indirizzo locale, non conosce il proprio indirizzo IP. Per risolvere questo problema si usa un protocollo di tipo Reverse Address Resolution Protocol (RARP), presente nello strato Internet del modello TCP/IP. Il sistema emette un messaggio, in modalit broadcast (lindirizzo MAC di destinazione FF.FF.FF.FF.FF), in cui chiede qual il mio indirizzo IP ?, comunicando il proprio indirizzo locale; un server RARP, residente nella stessa sotto-rete ed opportunamente configurato dallamministratore di rete, risponde alla richiesta comunicandogli il relativo indirizzo IP.

130

Questa situazione tipica per sistemi privi di dispositivi di memorizzazione di massa, che non possono quindi ricordare il proprio indirizzo IP o per sistemi a cui non stato assegnato un indirizzo IP e che si connettono ad Internet per il tramite di un fornitore di servizi (provider). In questultima eventualit il fornitore di servizi dispone di un insieme limitato di indirizzi IP che assegna dinamicamente a quegli host che in un dato momento gli richiedono di connettersi ad Internet. Ognuno di questi host caratterizzato da un dato indirizzo IP solo per il tempo durante il quale connesso ad Internet; quando lhost termina di usufruire dei servizi Internet, quellindirizzo IP sar assegnato ad un altro host che, in un tempo successivo, chieder di connettersi ad Internet. Questo modo di operare molto usato per host che accedono ad Internet tramite la rete telefonica e consente sia un risparmio di indirizzi IP, essendo questi condivisi tra pi utenti, sia una semplificazione duso per gli utenti, i quali non devono richiedere un proprio personale indirizzo IP e configurare conseguentemente il proprio calcolatore. Quando un host si connette ad Internet secondo questa modalit necessario usare anche un ulteriore protocollo che governa lo scambio di informazioni e di comandi tra utente e fornitore di servizi (per esempio il protocollo PPP - Point to Point Protocol). La seguente Figura mostra un esempio di RARP Request.

131

5.10 ROUTER Un ROUTER un dispositivo di rete che si occupa di instradare pacchetti di dati tra reti diverse ed eterogenee. Un ROUTER lavora al Livello 3 del modello ISO/OSI (Strato Network). La funzione di instradamento basata sugli indirizzi di Livello 3 (Strato Network) del modello ISO/OSI, a differenza dello SWITCH che instrada sulla base degli indirizzi di Livello 2 (strato Data Link Layer). Gli elementi della tabella di instradamento di un ROUTER non sono singoli calcolatori, ma le reti locali. Rispetto ai BRIDGE infatti, i ROUTER operando a Livello 3 non utilizzano lindirizzo MAC dei pacchetti di dati in transito, ma lindirizzo IP per cui vanno configurati e non sono Plug and Play. Per garantire la massima affidabilit e lo sfruttamento ottimale dei collegamenti in caso di reti complesse costituite da molte sottoreti diverse e variamente interconnesse, i ROUTER si scambiano periodicamente fra loro informazioni su come raggiungere le varie reti che collegano luna allaltra, che poi usano per ricavare ed aggiornare delle tabelle di instradamento interne da consultare ogni volta che devono smistare i pacchetti di dati in arrivo. Per fare questo sono stati messi a punto dei protocolli di routing appositi attraverso i quali i ROUTER si scambiano informazioni sulle reti raggiungibili. Alcuni ROUTER possiedono anche un firewall incorporato, poich il punto di ingresso/uscita di una rete verso lesterno ovviamente il luogo migliore dove effettuare controlli sui pacchetti in transito. I ROUTER possono essere normali computer che fanno girare un software apposito (GATEWAY), o sempre pi spesso apparati specializzati, dedicati a questo solo scopo. I ROUTER di fascia pi alta sono basati su architetture hardware specializzate per ottenere prestazioni wire-speed, letteralmente alla velocit della linea. Questo significa che un ROUTER wire-speed pu inoltrare pacchetti alla massima velocit delle linee a cui collegato. La seguente Figura mostra il modo di operare di un ROUTER nel modello ISO/OSI.

132

133

5.11 Instradamento (Routing IP) La funzione fondamentale dellinstradamento (routing) consiste nellinoltro (Forwarding) di pacchetti IP ed avviene generalmente in modalit store-and-forward (memorizza ed inoltra). La necessit di ricevere completamente il pacchetto prima di ritrasmetterlo introduce un tempo di latenza pari al tempo di trasmissione. Le tecniche fondamentali di inoltro, che differiscono per il metodo di analisi del problema instradamento, sono le seguenti: Routing by network address: lindirizzo di un sistema, che deve essere univoco sulla rete, scritto direttamente nel pacchetto. Gli IS (Intermediate System) usano tale indirizzo come chiave di ricerca nella loro tabella di instradamento e determinano lungo quale cammino il pacchetto debba essere ritrasmesso; Label swapping: generalmente usata nei protocolli connessi. Ogni pacchetto marcato con una label che serve come chiave in una tabella di instradamento sullIS. LIS, prima di ritrasmettere il pacchetto, sostituisce la label con una nuova label. Le label devono quindi essere univoche solo allinterno di un dato link. Se il protocollo connesso, le label altro non sono che gli identificativi delle connessioni; Source routing: una tecnica usata tramite una opzione del protocollo IP (per esempio, dai BRIDGE Token Ring). Nel source routing la lista degli IS da attraversare, scritta nel pacchetto dal nodo mittente, che lo chiede ad un IS o lo scopre con meccanismi di route location. Sar esaminata la prima tecnica, poich quella adottata negli schemi di instradamento IP, e quindi integrata nei protocolli e nei ROUTER IP. Con la dicitura rete fisica si indica un insieme di calcolatori aventi le interfacce di rete attestate su una stessa sotto-rete, in cui una particolare tecnologia di trasporto assicura la connessione. Una rete logica linsieme delle interfacce, a cui stato assegnato lo stesso indirizzo di sotto-rete, che possono comunicare senza dover passare attraverso un ROUTER. Tale condizione viene detta di routing implicito. IP assumeva originariamente una corrispondenza biunivoca tra reti fisiche e logiche; realizzazioni pi moderne ammettono anche pi reti logiche nella stessa rete fisica.

134

Il routing tra reti logiche diverse esplicito ed gestito dai ROUTER tramite tabelle di instradamento. IP adotta i concetti di destinazioni dirette e indirette nella sua logica di routing. Un host diretto una stazione collegata direttamente alla rete ed al ROUTER della rete, mentre un host indiretto un host di destinazione situato su una rete diversa da quella dellhost di origine; questo significa che il datagramma deve essere inviato ad un ROUTER intermedio prima di essere consegnato allhost di destinazione. Il modo in cui IP gestisce gli indirizzi e decide i percorsi di routing, richiede che una macchina esamini solo la parte di indirizzo di rete dedicata allindirizzo di destinazione, per determinare se lhost di destinazione collegato direttamente o indirettamente alla rete dellhost di origine: in altri termini, la macchina verifica la corrispondenza della parte rete dellindirizzo di destinazione e sceglie come effettuare linoltro. Forwarding diretto: la trasmissione di un datagramma IP tra due host connessi su una singola rete logica IP (stesso Net_Id) non coinvolge i ROUTER intermedi. Lhost di destinazione connesso alla stessa sotto-rete dellhost sorgente o del ROUTER che emette il datagramma. Il trasmettitore incapsula il datagramma nel frame fisico e lo invia direttamente allhost destinatario. E necessaria la traduzione dellindirizzo IP dellhost di destinazione nel suo indirizzo fisico (es. indirizzo MAC). Forwarding indiretto: si applica quando il pacchetto deve essere instradato in sotto-reti diverse da quella di destinazione. Quando lhost di destinazione connesso ad una sotto-rete diversa da quella dellhost sorgente o del ROUTER che emette il datagramma, lhost mittente identifica il ROUTER a cui inviare il datagramma IP ed individua il suo indirizzo fisico. Il ROUTER esamina il datagramma IP ricevuto e decide il ROUTER successivo verso cui instradarlo. Linstradamento attraverso la sotto-rete che connette i due ROUTER avviene secondo i meccanismi della sotto-rete. Il processo si ripete di ROUTER in ROUTER sino alla sotto-rete di destinazione. Nella sotto-rete di destinazione utilizzato linstradamento diretto. I ROUTER realizzano quindi linterconnessione tra le diverse reti. Gli algoritmi di routing possono essere classificati per tipo: Statici o dinamici: negli algoritmi statici, le tabelle di routing che vengono memorizzate sono compilate da una persona (amministratore di rete) e i valori di tali tabelle non cambiano per nessun motivo fino a quando lamministratore di rete non li cambia, mentre negli algoritmi dinamici le tabelle vengono

135

continuamente aggiornate e cambiate a seconda dei cambiamenti della rete (caduta di una rete, inserimento di una rete, ecc.); Gerarchici: i ROUTER gerarchici hanno funzioni diverse da quelli che non lo sono, in quanto vengono suddivisi pi nodi in gruppi logici chiamati domini di routing, (Autonomous System) o aree. Solo alcuni di questi ROUTER possono interagire con ulteriori ROUTER di altri domini di routing, mentre altri possono interagire con ROUTER appartenenti allo stesso dominio; Link State o Distance Vector: Link State trasferisce tutte le informazioni di routing a tutti i nodi: ogni ROUTER invia solo la porzione di tabella che descrive lo stato dei suoi link. Gli algoritmi del tipo Distance Vector inviano tutta o parte della tabella ai soli ROUTER vicini. Quindi Link State spedisce piccoli aggiornamenti a tutti, Distance Vector spedisce grossi aggiornamenti ai ROUTER vicini: i Link State richiedono pi risorse hardware (CPU e memoria) rispetto ai Distance Vector, ma sono meno propensi ai routing loop.

136

5.12 Tabella di instradamento Ogni ROUTER contiene una tabella di instradamento (Routing Table), visto che se un pacchetto viene destinato al ROUTER questo deve essere instradato. Ogni riga nella tabella deve contenere almeno i seguenti tre elementi: un indirizzo di destinazione: il ROUTER pu avere pi di un percorso per la stessa destinazione; linterfaccia fisica su cui inoltrare i pacchetti; il costo per raggiungere la destinazione sul percorso, che inizia con linterfaccia indicata nella riga. Il costo consentir allIS di scegliere tra eventuali percorsi alternativi; lunit di misura di questo costo dipende dal protocollo utilizzato. Si indicano genericamente con il termine route le informazioni presettate su una riga della tabella di routing.

Quando il ROUTER deve inoltrare un pacchetto, scorre la tabella per individuare la riga corrispondente al destinatario del pacchetto stesso. Mediamente il tempo di ricerca (lookup table) pari alla met del numero di righe. Considerando che tale operazione viene eseguita ogni volta che si deve inoltrare un pacchetto, diventa molto critica la complessit della tabella ai fini delle prestazioni dellapparato. La Routing Table dinamica e ogni ROUTER aggiorna nel tempo le informazioni di instradamento in suo possesso tramite protocolli di colloquio con altri ROUTER

137

(Routing Protocol). La scelta del percorso e quindi del ROUTER successivo dipende da un fissato criterio di ottimalit. E necessario allora che un ROUTER conosca lo stato della rete, quindi la topologia e il costo di attraversamento dei singoli rami. Ad ogni ramo della rete associato un costo che pu essere: inversamente proporzionale alla banda del ramo; proporzionale al carico istantaneo sul ramo; proporzionale al costo duso del ramo; qualsiasi combinazione tra i precedenti criteri. Laggiornamento delle Routing Table necessario perch: Internet non pu essere considerata stabile; in caso di guasti alcuni cammini non sono utilizzabili; consigliabile scegliere il cammino in base allo stato di occupazione delle risorse di rete. La seguente Figura mostra un esempio di Routing.

138

5.13 Routing Nel Routing by network address, la ricerca non verr basata sullintero indirizzo del destinatario, ma su un prefisso, molto spesso di lunghezza variabile. La ricerca dovr essere eseguita nei confronti di quella riga che specifica il route con pi lungo prefisso comune allindirizzo del destinatario (longest prefix matching). Affinch i pacchetti arrivino a destinazione indispensabile che le tabelle nei vari IS siano coerenti tra di loro al fine di evitare linvio di pacchetti in percorsi ciclici (routing loop). In tal caso i pacchetti girerebbero a vuoto, consumando inutilmente risorse computazionali e trasmissive dei vari ROUTER.

Dal percorso, lungo il quale un pacchetto viene inoltrato, dipendono il ritardo che esso subir, la probabilit che venga scartato a causa di eventuali congestioni degli IS e il fatto che esso raggiunga o no la destinazione. Inoltre se la rete contiene maglie, una destinazione potr essere raggiunta attraverso una o pi percorsi alternativi; in presenza di guasti, la scelta di un percorso che eviti nodi o collegamenti non funzionanti consentir alla rete di continuare a recapitare dati. La scelta del percorso, cio il routing, sar quindi importante per il buon funzionamento della rete e per la sua robustezza. Il routing statico prevede che i percorsi di inoltro dei pacchetti siano determinati ed eventualmente cambiati dallamministratore della rete tramite la configurazione degli apparati di internetworking. Quindi la tabella di routing sotto la responsabilit dellamministratore che deve gestire linserimento, la modifica e leliminazione delle

139

righe. Principalmente si ha lo svantaggio della mancanza di reattivit ai cambiamenti topologici della rete, ed i percorsi non saranno automaticamente adattati alle variazioni dello stato di funzionamento di nodi e collegamenti. Esempi di routing statico sono il fixed directory routing e il flooding. Il fixed directory routing prevede che ogni nodo abbia una tabella di instradamento che metta in corrispondenza il nodo da raggiungere con la linea da usare, e che tale tabella sia scritta manualmente dal gestore della rete nel ROUTER tramite unoperazione di management. Il gestore ha il totale controllo dei flussi di traffico sulla rete, ma necessario un suo intervento manuale per il reinstradamento di detti flussi in presenza di guasti. Questo approccio spesso utilizzato in TCP/IP per le parti non magliate della rete e le regole di instradamento specificate su ogni singolo router prendono il nome di route statiche. Esiste una variante, detta quasi-statica, che adotta tabelle con pi alternative da scegliere secondo un certo ordine di priorit, in funzione dello stato della rete. Occorre comunque evidenziare che la gestione manuale delle tabelle risulta molto complessa e difficoltosa, soprattutto per reti di grandi dimensioni. Il flooding un altro algoritmo non adattativo, in cui ciascun pacchetto in arrivo viene ritrasmesso su tutte le linee, eccetto quella su cui stato ricevuto. Concepito per reti militari a prova di sabotaggio, se realizzato nel modo sopra descritto massimizza la probabilit che il pacchetto arrivi a destinazione, ma induce un carico elevatissimo sulla rete. Si pu cercare di ridurre il carico utilizzando tecniche di flooding selettive, in cui i pacchetti vengono ritrasmessi solo su linee selezionate. Un primo esempio, senza applicazioni pratiche, lalgoritmo random walk che sceglie in modo pseudo-casuale su quali linee ritrasmettere il pacchetto. Una miglioria pi efficace si ha scartando i pacchetti troppo vecchi, cio quelli che hanno attraversato molti ROUTER: a tal scopo nellheader del pacchetto viene inserito un age-counter. Unultima miglioria, ancora pi significativa, consiste nello scartare un pacchetto la seconda volta che passa in un nodo: in tal modo si realizza una tecnica per trasmettere efficientemente la stessa informazione a tutti i nodi, qualsiasi sia la topologia. Lo svantaggio che bisogna memorizzare tutti i pacchetti su ogni nodo per poter verificare se sono gi passati. Negli algoritmi di routing dinamico (adattativo) le tabelle dipendono dalle informazioni raccolte sulla topologia della rete, sul costo dei cammini e sullo stato

140

degli elementi che la compongono. Gli algoritmi adattativi possono essere centralizzati, isolati o distribuiti. Il routing centralizzato quello che pi si avvicina al fixed directory routing. Presuppone lesistenza di un RCC (Routing Control Center) che conosce la topologia della rete, riceve da tutti i nodi informazione sul loro stato e su quello dei collegamenti, calcola le tabelle di instradamento e le distribuisce. un metodo che consente una gestione della rete molto accurata, in quanto permette di calcolare le tabelle anche con algoritmi molto sofisticati, ma implica lesistenza di un unico gestore, ipotesi questa oggi molto spesso non realistica. Il RCC, per ragioni di affidabilit, deve essere duplicato e la porzione di rete intorno ad esso soggetta ad un elevato volume di traffico di servizio: informazioni di stato che arrivano al RCC e tabelle di instradamento che escono dal RCC. In caso di guasti gravi possono verificarsi situazioni in cui il RCC perde il contatto con una parte periferica della rete e si verificano quindi degli aggiornamenti parziali di tabelle che possono determinare situazioni di loop. Nel caso di routing dinamico isolato, ogni IS calcola in modo indipendente le tabelle di instradamento senza scambiare informazioni con gli altri IS. Esistono due algoritmi di routing isolato riportati in letteratura: hot potato e backward learning. Con hot potato, ogni IS considera un pacchetto ricevuto come una patata bollente e cerca di liberarsene nel minor tempo possibile, ritrasmettendo il pacchetto sulla linea con la coda di trasmissione pi breve. Con backward learning, lIS acquisisce una conoscenza indiretta della rete analizzando il traffico che lo attraversa: con riferimento alla Figura seguente, il ROUTER che riceve un pacchetto proveniente dal nodo A sulla linea L3, col backward learning impara che A raggiungibile attraverso la linea L3. possibile migliorare il backward learning inserendo nellheader del pacchetto un campo di costo inizializzato a zero dalla stazione mittente ed incrementato ad ogni attraversamento di un IS. In tale modo gli IS possono mantenere pi alternative per ogni destinazione, ordinate per costo crescente.

141

Il limite di questo metodo consiste nel fatto che gli IS imparano solo le migliorie e non i peggioramenti nello stato della rete: infatti se cade un link e si interrompe un cammino, semplicemente non arrivano pi pacchetti da quel cammino, ma non giunge allIS nessuna informazione che il cammino non pi disponibile. Per tale ragione occorre limitare temporalmente la validit delle informazioni presenti nelle tabelle di instradamento: ad ogni entry viene associata una validit temporale che viene inizializzata ad un dato valore ogni volta che un pacchetto in transito conferma lentry, e decrementata automaticamente con il passare del tempo. Quando la validit temporale di una entry giunge a zero, questa viene invalidata ed eliminata dalla tabella di instradamento. Qualora ad un IS giunga un pacchetto per una destinazione ignota, lIS ne fa il flooding. Il backward learning pu generare loop su topologie magliate, per cui, ad esempio nei BRIDGE, lo si integra con lalgoritmo di spanning tree per ridurre la topologia magliata ad un albero. Questo metodo utilizzato per calcolare le tabelle di instradamento nei BRIDGE conformi allo standard IEEE 802.1D. Il routing dinamico distribuito si pone come una scelta di compromesso tra i due precedenti: non esiste un RCC, ma le sue funzionalit sono realizzate in modo distribuito da tutti gli IS della rete, che a tal scopo usano protocolli di servizio per scambiare informazioni tra loro. Tali protocolli vengono detti di servizio in quanto non veicolano dati di utente, che sono gestiti da altri protocolli, ma solo informazioni utili al calcolo delle tabelle di instradamento. Le tabelle di instradamento vengono calcolate a partire dai due parametri di ottimalit (costo e hop). Il costo di ciascuna linea di ciascun ROUTER un parametro che viene impostato dal network manager tramite il software di gestione dei ROUTER stessi. Gli algoritmi di routing dinamico

142

distribuito si suddividono in due famiglie: algoritmi Distance Vector e algoritmi Link State Packet. Concludendo, il routing statico meglio si adatta a situazioni periferiche di dimensione ridotta; dove cio sia semplice gestire lintera rete. Al contrario dove siano possibili frequenti cambi di topologia, variazioni di prestazioni in dipendenza dal carico di lavoro del ROUTER e dei link, guasti, percorsi magliati, eccetera, allora sar bene utilizzare il routing dinamico.

143

5.14 Criteri di ottimalit per algoritmi di routing Per la scelta di un algoritmo di instradamento esistono pi criteri di ottimalit spesso contrastanti, ad esempio minimizzare il ritardo medio di ogni pacchetto o massimizzare lutilizzo delle linee. A tal fine si dovr disporre di una serie di parametri misurabili in base ai quali le caratteristiche di un percorso possano essere confrontate, per scegliere il migliore tra due cammini alternativi. Gli unici due parametri universalmente accettati sono: il numero di salti effettuati (hop), cio il numero di IS attraversati lungo un percorso; il costo, cio la somma dei costi di tutte le linee attraversate lungo un percorso. Entrambi questi parametri sono di demerito, in quanto il costo di una linea assegnato in modo inversamente proporzionale alla velocit della linea stessa, e gli hop indicano ROUTER attraversati e quindi ritardi introdotti. Il metodo appena introdotto, non tiene conto dei problemi di carico dinamico della rete. Le tecniche pi moderne consentono di operare un bilanciamento del traffico (load splitting) tra cammini paralleli, eventualmente attivando circuiti commutati, quali quelli forniti da una rete alternativa in presenza di un guasto o per gestire un eccesso di traffico su di un link. La scelta dellalgoritmo di instradamento ottimale anche complicata dalle limitate risorse di memoria e CPU disponibili oggi sui ROUTER, specialmente se confrontate con la complessit delle reti ed in particolare con lelevato numero di nodi collegabili con una topologia qualsiasi. Algoritmi troppo complessi, operanti su reti molto grandi, potrebbero richiedere tempi di calcolo inaccettabili. Per concludere, le caratteristiche che in generale si richiedono ad un algoritmo di routing sono: Semplicit: lalgoritmo deve essere funzionalmente efficiente con un minimo software e una bassa utilizzazione delle risorse hardware, poich i ROUTER hanno CPU e memoria finite e devono impiegare la maggior parte del loro tempo a instradare pacchetti, e non a calcolare nuove tabelle di instradamento; Robustezza/adattabilit: di fronte a guasti hardware, variazioni di topologia, alto traffico, lalgoritmo deve continuare a lavorare;

144

Ottimizzazione: labilit dellalgoritmo a scegliere la strada migliore. La strada dipende dalla metrica (unit di misura per calcolare la lunghezza del percorso); Stabilit: quando ad esempio una rete diviene irraggiungibile, i ROUTER distribuiscono messaggi di aggiornamento di tale cambiamento a tutta la rete nel pi breve tempo possibile, perch in caso contrario si potrebbero verificare dei routing loop. Inoltre lalgoritmo deve sempre convergere velocemente ad un instradamento stabile, cio non deve modificare le tabelle di instradamento se non a fronte di una variazione di topologia; Equit: nessun nodo deve essere privilegiato o danneggiato. Gli algoritmi di routing non adattativi (statici e deterministici) utilizzano criteri fissi di instradamento, mentre gli algoritmi adattativi (dinamici e non deterministici) calcolano le tabelle di instradamento in funzione della topologia della rete e dello stato dei link.

145

5.15 Bibliografia 1. Andrew S. Tanenbaum: Reti di calcolatori, Quarta edizione, 2004. 2. Domenico Prattic: Levoluzione dei sistemi di comunicazione nellautomazione e nella gestione di processi industriali, Universit degli studi di Genova, 2006. 3. Giovanni Vigna: TCP/IP Networks, University of California - Santa Barbara. 4. Giuseppe Bianchi: Address Resolution Protocol (ARP). 5. Industrial Ethernet University: Introduction to the Internet Protocol. 6. Industrial Ethernet University: Introduction to Subnetting. 7. Industrial Ethernet University: Introduction to the Transmission Control Protocol. 8. IP: The Internet Protocol Lecture 12, 2002. 9. N.Blefari-Melazzi, M.Listanti, A.Roveri: Reti per applicazioni telematiche, 1998. 10.Nicola Blefari Melazzi: Internet: Architettura, Principali e Linee Evolutive, Universit degli studi di Roma. 11.Peter Desnoyers: Chapter 5: The data link layer, University of Massachusetts. 12.R.Soderberg: TCP/IP, Control Technology, 2005. 13.Silvano Gai, Mario Baldi, Fulvio Risso: I protocolli ARP, RARP, Politecnico di Torino. 14.Stefano Cazzani: Industrial Ethernet, Le Monografie. 15.Surasak Sanguanpong: ARP: Address Resolution Protocol, Department of Computer Engineering - Kasetsart University, 2002. 16.Telecommunication Protocols Laboratory Course - Lecture 3, 2006. 17.Valerio Alessandroni: La tecnologia dei fieldbus, Fieldbus & Networks, 2005. 18.Wikipedia, Lencicopledia libera, www.wikipedia.org.

146

Capitolo 6 BUS DI CAMPO 6.1 Introduzione Lautomazione dei processi industriali tende a strutture impiantistiche decentrate; ci significa che un complesso sistema di controllo centrale pu essere suddiviso in pi parti di piccole dimensioni, il che permette di elaborare le informazioni in modo pi veloce direttamente laddove siano necessarie, oltre a consentire una maggiore disponibilit degli impianti, poich in caso di fuori servizio di una parte del sistema tutto il resto continua a funzionare. Negli anni 90 avvenuta una svolta, le applicazioni industriali sono progressivamente passate da una situazione di sistemi centralizzati, in cui le periferiche di I/O erano collegate a PLC e DCS tramite un numero elevato di connessioni distinte (collegamento punto-punto), ad un contesto in cui i dispositivi di controllo e le periferiche sono distribuiti sul campo e collegati tra loro tramite una rete ad alta velocit, che svolge le stesse funzioni di comunicazione delle connessioni preesistenti (sistemi distribuiti). Il fatto che sia possibile costruire sistemi distribuiti porta a vantaggi e a svantaggi; tra i vantaggi si possono enumerare: la distribuzione intrinseca di alcune applicazioni che richiedono macchine separate e distanti, affidabilit, scalabilit, modularit, la crescita incrementale, la condivisione dei dati, la comunicazione in tempo reale. Sebbene i sistemi distribuiti abbiano i loro punti di forza, essi hanno anche i loro punti deboli, il principale dei quali il software, molto pi complesso che non quello dei sistemi centralizzati, e la dipendenza da un efficiente sistema di comunicazione in tempo reale. Il vantaggio dellautomazione e della gestione computerizzata dei reparti strettamente legato al concetto di integrazione e cio una struttura aziendale viene snellita e resa pi efficiente se i computer relativi ad una funzione possono comunicare in tempo reale con i computer relativi ad altre funzioni e magari dislocati in aree differenti. Ad esempio, i computer addetti allinterfaccia uomo macchina (HMI) devono poter accedere a dati di tipo e provenienza diversa e tale accesso deve avvenire in tempo reale o perlomeno deve essere scandito da tag temporali; infatti per poter intervenire o anche solo analizzare un processo necessario disporre dei dati in tempo in modo da poterli correlare correttamente. Nellambito industriale, e in particolar modo nei sistemi di automazione, sta diventando sempre pi importante lesigenza di poter trattare in tempo reale una

147

crescente quantit di informazioni digitali. Inoltre, laumento di unit intelligenti (quali PC, PLC nonch di sensori ed attuatori) allinterno dei cicli produttivi impone che vi sia un sistema di comunicazione aperto, cio in grado di collegare tra loro pi dispositivi prodotti da costruttori diversi, affidabile ed economico. La risposta a queste problematiche arrivata, oltre una decina danni fa, con la comparsa nel mercato dei bus di campo. Questa soluzione tecnologica, prevede la presenza di un unico fascio di conduttori (appunto, il bus di campo) al quale sono collegate tutte le apparecchiature. In genere la comunicazione tra i dispositivi di tipo seriale e quindi un bus costituito da soli due fili risulta sufficiente allo scopo. La conseguenza immediata di questo tipo di struttura la riduzione drastica dei cavi presenti, dei costi, dei tempi (rispetto al cablaggio punto-punto), aumentando quindi la facilit di cablaggio dei sistemi complessi, quali ad esempio, quelli di macchine utensili di grosse dimensioni. La seguente Figura mostra la differenza tra collegamenti punto-punto e dispositivi collegati tramite un bus di campo.

148

6.2 Evoluzione della comunicazione nellindustria Negli anni 60, il costo dellelettronica caduto ad un livello abbastanza basso in modo che potesse sostituire vantaggiosamente la logica legata ai rel. Sono emersi quindi, moduli logici discreti basati sul transistore. Molto semplici montare, hanno subito sedotto gli operatori dell automatizione. Nel 1968, la Modicon ha inventato il Programmable Logic Controller (PLC). Un singolo dispositivo in grado di soddisfare la molteplicit dei bisogni garantendo inoltre un grande risparmio. Grazie alla sua grande flessibilit, porta numerosi vantaggi nelle fasi dellinstallazione. Da questo momento fanno la loro comparsa le reti e i protocolli per lo scambio dei dati. Nel 1979 nasce Modbus (contrazione di bus e di Modicon), che diventa uno standard de-facto come bus di campo. Tuttavia, le sue applicazioni sono limitate ai casi dove non basta il collegamento parallelo: collegamenti tra PLC; collegamenti tra calcolatori; collegamento tra console di comando, eccetera. La continua riduzione dei costi nel campo dellelettronica e nelle tecnologie di rete diventano convenienti rispetto ai collegamenti punto-punto per collegare i dispositivi di I/O con i PLC. Entra nellautomazione industriale il bus del campo. Le due seguenti Figure mostrano la differenza di due impianti industriali basati su collegamenti punto-punto e collegamenti basati su un bus di campo.

149

Negli ultimi anni, il bus di campo entrato in tantissime applicazioni industriali. Questo modo di comunicazione nellautomazione industriale si dimostrato essere estremamente valido e flessibile. Il bus di campo ha portato molti vantaggi ed ad una graduale evoluzione delle architetture: eliminazione dei cavi di ingreso e uscita; la scomparsa delle interfacce di ingreso e uscita; la scomparsa dei collegamenti seriali dedicati. Oltre a questi aspetti architetturali, altri due punti devono essere evidenziati: la decentralizzazione e la distribuzione di intelligenza; lingresso di nuove tecnologie (Internet, Ethernet, Wireless, ecc.). Si avuta una riduzione di costi per il cablaggio e la possibilit di disporre le interfacce di ingresso/uscita esterne ai PLC in modo da averle pi vicino ai sensori ed agli attuatori. Nonostante tutto questo, gli operatori del settore dellautomazione ha poi capito rapidamente il beneficio di avere i sensori e gli attuatori direttamente collegati sul bus. Ci particolarmente vero vista la diversit dei dispositivi e dallattivit da loro svolta, per esempio: distributori pneumatici; azionamenti di velocit; dispositivi per il controllo assi; saldatrici e avvitatrici; dispositivi per lidentificazione;

150

interfacce uomo/macchina (HMI); apparecchiature per attivit specifiche; apparecchiature per la pesatura; apparecchiature per la visualizzazione, eccetera. Questa forma di connettivit giustifica persino luso di un bus del campo per distanze piccole grazie al contributo che porta in termini di flessibilit e di possibilit di espansione dellimpianto.

In effetti: alcuni di questi dispositivi (azionamenti di velocit, avvitatrici, eccetera) necessitano simultaneamente di un collegamento di ingresso/uscita digitale e di un collegamento seriale al PLC: il bus del campo li sostituisce entrambi; negli ambienti in cui la sicurezza dei dispositivi molto importante, il ricorso al cablaggio tradizionale risulta essere particolarmente costoso; bus di campo come AS-I, offrono soluzioni pi economiche rispetto al cablaggio tradizionale per connessioni a semplici sensori, attuatori, pulsanti, dispositivi davviamento del motore, encoder, eccetera. Linstallazione si trasforma in in una specie di gioco di costruzione incentrato attorno al cavo di rete, che ora assume il ruolo di cablaggio standard in sostituzione dei tradizionali cablaggi punto-punto con le codifiche 0/24 V o 4/20 mA. Inoltre, moltissime informazioni di diagnostica sui sensori e sugli attuatori, sono ora accessibili su tutti i punti dellinstallazione grazie a questa nuova tecnologia di collegamento.

151

Con questa nuova forma di comunicazione in ambito industriale, le quantit di informazioni che possono essere trasportate sono molto maggiori. Ci consente gli operatori di impiegarla per le attivit nelle quali, in precedenza, utilizzavano una comunicazione dedicata: configurazione parametri; tool diagnostici; caricamento programmi; interfaccia operatore, eccetera. Per esempio, il collegamento seriale dedicato usato nel passato per linterfaccia operatore, elimitato e sostituito dal bus di campo. Ora possibile accedere da qualsiasi punto dellinstallazione, non solo ai dati dei PLC, ma anche ai dati di tutti i dispositivi a loro connessi (per esempio micro-PLC). Tutto ci naturalmente limitato dalle prestazioni del bus: una singola rete non pu soddisfare tutti i bisogni. La seguente Figura mostra un impianto industriale basato su bus di campo dove i dispositivi presenti sul campo hanno linterfaccia di rete integrata.

Oltre ai vantaggi introdotti in aspetti architetturali, altre opportunit offerte dal bus di campo sono la decentralizzazione e la distribuzione di intelligenza. Ci comporta: Modularit: un operatore pu trattare solo il suo campo specifico di competenza ed offrire uninterfaccia al progettista dellintero sistema. Questa modularit un vantaggio per la qualit del sistema e cos per il controllo del costo di sviluppo; Reattivit: migliora la reattivit sistema automatizzato grazie alluso di nano e pico PLC pi vicini ai processi;

152

Affidabilit: migliora laffidabilit rispetto ai guasti. La decentralizzazione consente una pi veloce individuazione dei guasti ed una pi semplice attivit di manutenzione; Prestazioni: la distribuzione di intelligenza migliora le prestazioni complessive dellintero impianto, permettendo che ogni dispositivo automatizzato tratti la parte del processo per il quale risulta essere il pi ideneo; Riutilizzo: favorisce le possibilit di riutilizzo di moduli software e di dispositivi con ovvia riduzione dei costi.

153

6.3 Sistemi di comunicazione nellindustria Un sistema di comunicazione nellambito dellautomazione industriale viene solitamente organizzato e suddiviso in quattro livelli gerarchici. Ogni livello manipola e trasferisce informazioni ed elabora strategie impartendo comandi ai livelli inferiori. Tale suddivisione detta CIM (Computer Integrated Manufacturing, Fabbrica completamente automatizzata) ed mostrata nella seguente Figura:

Obbiettivo dellorganizzazione CIM : ridurre i magazzini, migliorare il controllo di qualit, massimizzare la flessibilit di produzione (facile riconfigurabilit), identificare, conservare e riutilizzare le informazioni relative a i prodotti. I livelli sono spesso indicati come: Azienda: differenti fabbriche che possono trovarsi in localit diverse, pur nellambito della stessa organizzazione aziendale, devono essere tra loro interconnesse; Fabbrica: tutti i minicomputer di ogni reparto devono essere tra loro collegati per consentire un efficiente scambio di dati; Reparto: il minicomputer di ciascun reparto o ufficio deve coordinare le attivit complessive di tutti i sistemi computerizzati presenti nel reparto stesso; Isole: ogni parte delle attrezzature controllate da computer, macchine utensili, robot, terminali CAD, elaboratori testi, unit di programmazione, deve poter comunicare in modo efficiente e rapido a seconda del settore applicativo.

154

A livello di comunicazione tra azienda, fabbrica e reparto operano i sistemi informativi aziendali che in genere si appoggiano a Intranet, ossia una sottorete locale di Internet. Il principale requisito la sicurezza, non nel senso della sicurezza rispetto alla propagazione del guasto o della salvaguardia o diagnostica dellintegrit dei dati rispetto a cause accidentali (disturbi), ma nel senso di sicurezza rispetto alle violazioni, cio ad accessi non autorizzati. A livello di comunicazione tra isole operano le reti locali LAN, il cui principale requisito la compatibilit e lespandibilit dato che connettono sistemi standard e proprietari. Con lavvento di Internet spesso i sistemi informativi poggiano direttamente sulle LAN che sono di fatto delle Intranet, per cui si tende a parlare di LAN in senso lato. Nel caso si analizzi lorganizzazione CIM del solo reparto di produzione di una azienda manifatturiera, possibile individuare la tipica struttura, detta piramide CIM, visibile nella seguente Figura:

Tipicamente in questo ambito il Livello 1 costituito dai trasduttori (finecorsa, sensori, encoder,) e attuatori (rel, motori, elettrovalvole, spie di segnalazione,) posti sullimpianto di produzione; a Livello 2 ci sono i controllori di cella (PLC, DCS, PC) che controllano sensori e trasduttori ai quali sono collegati direttamente o tramite bus di campo. Tutti i PLC che coordinano le varie celle di un reparto di produzione sono collegati fra loro tramite rete locale alla quale si connette anche un sistema SCADA (Supervisory Control and Data Acquisition, Sistema centralizzato di supervisione e controllo di sistemi distribuiti) di supervisione al Livello 3. SCADA un sistema che supporta le funzioni di acquisizione ed archiviazione dati, interfaccia uomo-macchina, grafici, monitoraggio e gestione di allarmi, scambio dati con i pacchetti software commerciali pi diffusi sui PC, come i fogli elettronici.

155

Il Livello 3 viene anche detto livello di sistema e/o celle e i sistemi di comunicazione vengono detti bus di processo o di cella. Al Livello 4, detto anche livello di controllo e di servizio, si hanno in generale i sistemi CAD/CAM e, utilizzando una terminologia pi moderna, i sistemi ERP/MES (Enterprise Resource Planning / Manufactoring Execution System). Tali sistemi elaborano i dati di produzione e li presentano in una forma adeguata al management, prelevandoli da tutti i sistemi SCADA della fabbrica ai quali sono connessi, sempre tramite LAN. Salendo nella piramide aumenta la quantit di dati trasferiti e diminuiscono i requisiti in termini di aderenza stretta al tempo reale.

156

6.4 Bus di campo Bus di campo unespressione generica che descrive la forma di comunicazione digitale dedicata ai sistemi a basso livello quali sensori, attuatori, PLC la quale si prevede sostituir nellindustria la tecnologia analogica per collegamenti punto-punto basata su segnali a 4/20 mA o 0/24 V. La modalit di trasmissione numerica presenta notevoli vantaggi in termini di possibilit di trasmettere pi informazione e migliori potenzialit di interfacciamento. Tali reti sono caratterizzate da notevoli esigenze in termini di determinismo, ossia ridotto tempo di latenza della risposta, tuttavia la messaggistica in genere semplice, il numero di utenti limitato e tali reti poggiano lo strato Applicazione (Livello 7) direttamente sullo strato Data Link Layer (Livello 2) del modello ISO/OSI. Supportano semplici algoritmi di autodignostica, autoconfigurazione e controllo (PID). Gi dai primi anni 80 i costruttori di sensori o attuatori di una certa complessit, come ad esempio telecamere o azionamenti, avevano fornito i propri sistemi di interfaccia numerica, seriale o parallela, per consentire una connessione punto-punto con i sistemi a pi alto livello, quali PLC, PC e DCS. Tuttavia tale modalit di connessione, tipicamente una RS232 con un semplice protocollo ASCII, sebbene adatta per la fase di configurazione e predisposizione del trasduttore, durante la fase operativa nella quale il flusso informativo pi ridotto, comporta un numero di cavi confrontabile con la modalit analogica tradizionale. Larchitettura a bus, nella quale un unico conduttore viene utilizzato per connettere pi sistemi, consente invece una notevole riduzione dei cablaggi. Il bus rappresenta il mezzo fisico utilizzato per trasportare i dati. Tipicamente si tratta di un fascio comune di fili conduttori collegante assieme pi dispositivi per permettere loro di comunicare scambiandosi dati. Contrariamente ad una connessione punto-punto, dove solo due circuiti si scambiano informazioni, un bus conta generalmente un numero di utenti superiore. Esistono molteplici modi per collegare insieme i vari elementi e, a seconda dellapplicazione, consigliabile scegliere una topologia piuttosto che unaltra. Le pi comuni sono quelle ad anello, a stella e a bus. Mentre una comunicazione punto-punto limitata a due circuiti collegati ai due estremi del cavo, nel caso di un bus la flessibilit di estensione aumenta. In effetti, laggiunta di un nuovo trasduttore da collegare al bus esistente costituisce raramente un problema: la maggior parte dei bus di campo sono infatti in grado di rilevare autonomamente la lista degli utenti presenti.

157

A livello di comunicazione, rispetto a connessioni tra soli due nodi, il modo di scambiare dati attraverso un bus di campo richiede regole pi severe. Infatti, ad esempio, bisogna prevedere laccesso contemporaneo al mezzo da parte di pi elementi e regolamentare nel modo pi rigoroso possibile tutto ci che serve per poter trasmettere i dati in maniera rapida ed affidabile. Tali regole di convivenza vengono chiamate protocollo. Un aspetto di rilevante importanza nel protocollo di tutti i bus di campo lo riveste la sicurezza dei dati trasmessi e ricevuti. Spesso sono previsti pi meccanismi che agiscono in contemporanea e a volte, specialmente negli ambienti pi critici, tale aspetto diventa un fattore discriminante nella scelta del protocollo da usare. I primi bus di campo legati al mondo dei trasduttori sono stati sviluppati direttamente dai costruttori dei trasduttori stessi: si trattava in genere di reti master-slave basate sul livello fisico RS485. Lo standard RS485, nato nel 1983 come raccomandazione tecnica dellElectronic Industries Association (EIA), consente ad una stessa linea, tipicamente costituita da un doppino, di ospitare fino a 32 ricevitori e fino a 32 trasmettitori con frequenze di trasmissione fino a 10 Mbit/s e lunghezze del collegamento fino a 10 km. Larchitettura master-slave, dove un solo master interroga ciclicamente gli slave (Polling) ossia i trasduttori, la pi semplice ed quella che previene da situazioni di conflitto, ossia di accesso contemporaneo al bus da parte di pi utenti. Ipotizzando comunicazioni bidirezionali, si possono avere due tipi di connessione: Utilizzo di driver e receiver; Utilizzo di transceiver. Nel primo caso (nella Figura sotto a sinistra), il master trasmette sulla linea Tx e riceve sulla linea Rx, mentre lo slave trasmette sulla linea Rx e riceve sulla linea Tx (full-duplex), proprio come avviene nei collegamenti RS232; nel secondo caso (nella Figura sotto a destra) vi ununica linea per cui viene a cadere la distinzione hardware tra master e slave (half-duplex), tuttavia vi un decremento delle prestazioni in quanto non vi pu essere trasmissione e ricezione simultanea.

158

La presenza di tanti protocolli diversi tra loro costringeva ad un notevole lavoro di implementazione sul sistema a pi alto livello (PLC, PC, DCS) impedendo di fatto lintercambiabilit tra componenti di differenti costruttori. Per evitare di dover ogni volta implementare i vari protocolli proprietari sul PLC, spesso si ricorreva a dei convertitori di protocollo (Gateway), ossia dei sistemi che agivano come master della rete proprietaria dei trasduttori e come slave della rete nota al PLC. Alcune di queste reti proprietarie master-slave sono evolute verso architetture multimaster, altre hanno modificato la strategia di accesso al bus per cui viene a cadere la distinzione tra utente master e utente slave. Nel primo caso (accesso al bus di tipo deterministico) i master sono autorizzati alla trasmissione per un tempo prestabilito (tempo di mantenimento del token), scambiandosi lautorizzazione a trasmettere (token) secondo una sequenza prestabilita. Tale soluzione si dice deterministica perch possibile calcolare un tempo massimo entro il quale linformazione di qualsiasi utente verr trasmessa: infatti il master avr il token tipicamente ogni N*T (allocazione round robin del token), dove N il numero dei master e T il tempo di mantenimento del token per ogni master. Lo svantaggio di una simile configurazione che manca una logica di priorit e cio le segnalazioni urgenti possono essere inoltrate solo previo ottenimento del token. Laffidabilit di una simile rete ottima, purch si preveda un meccanismo di sorveglianza del token e di eventuale reinizializzazione della rete. Nel secondo caso (accesso al bus di tipo casuale) ogni utente verifica se la rete libera quindi accede alla rete e, in caso di collisione, tipicamente interrompe la trasmissione e attende nuovamente la condizione di rete libera (retry). Tale strategia di accesso non deterministica in quanto il tempo che intercorre tra lesigenza di inoltrare un messaggio e leffettiva presenza del messaggio in rete non nota a priori, ma dipende dal traffico su rete. A livello normativo nel 2000 stato emesso lo standard IEC 61158 sui bus di campo (Fieldbus standard for use in industrial control system). Inizialmente, nel 1993, ci si proposto di regolamentare il livello Fisico del modello ISO/OSI (IEC61158-2) e attualmente diversi bus sono conformi a tale normativa, mentre la regolamentazione del livello Data Link Layer del modello ISO/OSI descritta in IEC61158-3 avvenuta nel 1998, ed stata molto pi sofferta. I bus proprietari di grandi costruttori sono diventati standard de-facto, mentre altri costruttori si sono consorziati per stabilire delle modalit di trasmissione dellinformazione che fossero convenienti per pi utenti. Molti costruttori di trasduttori

159

hanno quindi abbandonato i bus proprietari per rivolgersi verso bus di campo pi diffusi. Molti bus di campo non sono cos aperti per cui il costruttore di sensori che vuole dotare il suo trasduttore di uninterfaccia verso bus di campo, spesso si vede costretto a consorziarsi per poter accedere ai dispositivi periferici inoltre a volte deve supportare i costi di certificazione dellinterfaccia sviluppata. Per questo ed altri motivi di tipo commerciale, i bus di campo stentano a entrare massicciamente nel mercato dei sensori economici e taluni ritengono che i bus di campo passeranno rapidamente dallalba verso il tramonto a favore di soluzioni basate su Ethernet/Internet, che peraltro gi presente in ambiente industriale a livello di cella e di area. Ethernet/Internet sta diventando la soluzione unificata per gestire le comunicazioni di unazienda, e viene gi proposta in alternativa ai bus di campo. Contrariamente alla maggior parte dei bus di campo, generalmente definiti solo ai Livelli 1,2,7 del modello ISO/OSI, per Ethernet (Livello 1 e Livello 2 del modello ISO/OSI) sono disponibili anche altri livelli standard, come per esempio tutti quelli di Internet (TCP/IP). Rispetto ai bus di campo, Ethernet risulta penalizzata perch non deterministica e a bassa efficienza (il numero di byte trasmessi elevato rispetto al numero di byte che contengono effettivamente informazione) e pertanto per lungo tempo ne hanno escluso luso come bus di campo. Oggi le nuove tecnologie (SWITCH, Fast Ethernet) riducono notevolmente la probabilit di collisione, e la bassa efficienza viene compensata dalla possibilit di interfaccia diretta verso i livelli superiori e utenti remoti (Internet), per cui molti bus di campo si stanno preoccupando della compatibilit verso Ethernet/Internet. Si assiste cos al proliferare di studi per la gestione combinata dei bus di campo con le nuove tecnologie (Ethernet, Wireless, Internet). Anche dal punto di vista normativo, si sta facendo molto per regolamentare il settore noto come Real-Time Ethernet (RTE), ossia le reti basate su Ethernet a 100 Mbit/s per applicazioni in tempo reale in ambito industriale.

160

6.5 Requisiti di un bus di campo Unaccettabile definizione di bus di campo : un bus di campo un sistema di comunicazione digitale, seriale e bidirezionale, che collega con una rete locale gli apparati in campo nelle applicazioni di automazione dei processi continui e di fabbrica. I principali requisiti di un bus di campo sono i seguenti: Gestione messaggi: capacit di trasmissione adeguata (numero dati per messaggio), garanzia dei tempi massimi di trasmissione (quindi il determinismo); Sicurezza del sistema: protezione rispetto alla propagazione del guasto, protezione dellintegrit dellinformazione (codici di controllo e/o correzione); Requisiti tecnologici: compatibilit verso altri sistemi di comunicazione e/o infrastrutture. Di fatto un bus di campo rappresenta la spina dorsale di un sistema di automazione sul quale viaggiano le informazioni utili per il controllo del processo produttivo e la gestione delle risorse. Le informazioni che devono essere trasportate da un bus di campo si possono dividere sostanzialmente in tre categorie: Misure: sono variabili di tipo analogico e rappresentano i dati su cui si basa la supervisione ed il controllo del processo. Devono essere trasmesse quindi con continuit, grande affidabilit, determinismo temporale indipendentemente dal traffico sulla rete; Eventi: sono variabili di tipo digitale on/off, legate ai sensori, elementi di scatto, indicatori di posizione, comandi. Tipicamente sono codificati con pochi bit, ma devono essere processati con molta rapidit in quanto sono spesso correlati a funzioni di allarme o blocco, per cui indispensabile garantire velocit e correttezza durante la trasmissione; Messaggi: si tratta di tutto linsieme di informazioni connesse alla identificazione, configurazione, diagnostica degli apparati intelligenti. I messaggi non hanno vincoli temporali e sovente possono avere dimensioni rilevanti fino a varie decine di Kbit. Per avere un quadro di insieme del bus di campo bisogna ancora spiegare il significato tecnico di due parole chiave come: Interoperabilit: capacit di apparati diversi di funzionare in modo corretto scambiandosi informazioni e dati attraverso un bus di campo, con una sola

161

operazione di configurazione, ma senza lesigenza di realizzare driver o interfaccia specifici per lapplicazione; Intercambiabilit: la possibilit di sostituire un apparato di un costruttore con uno analogo di un altro costruttore in modo trasparente, senza lesigenza di dover riconfigurare il sistema di controllo. Proprio per questi ultimi due vocaboli, sono numerosi gli sforzi che le maggiori istituzioni (IEC, ISA, IEEE) stanno apportando nella ricerca per riuscire ad arrivare ad uno ed unico bus di campo standard.

162

6.6 Criteri di selezione di un bus di campo Il mercato dei bus di campo per gli impianti di processo sempre pi vasto, tanto da poter generare imbarazzo a chi per la prima volta si avvicina a questo tipo di soluzione in sostituzione ai sistemi convenzionali. Interrogativi inerenti laspetto tecnico dei bus di campo, le prestazioni delle reti, i costi delle applicazioni, la flessibilit, lelasticit dei sistemi in caso di espansione degli impianti, la modularit degli stessi, la disponibilit alla verticalizzazione verso gli apparati di controllo e verso la progettazione, eccetera, pongono in evidenza come la scelta di un adeguato supporto per la trasmissione dei dati allinterno delle industrie di processo sia particolarmente onerosa. Si pu individuare il bus di campo che risponde meglio alle proprie esigenze applicative seguendo i principali criteri di selezione qui di seguito riportati: Ambiente di lavoro: bus di campo che possono operare in luoghi con pericolo di esplosione (industria chimica) perch operanti a sicurezza intrinseca (EX-i) cio non sono in grado di generare scintille in grado di innescare incendi; presenza di temperature elevate; ambiente con forti disturbi di natura elettromagnetica (stazioni di saldatura, ...); Topologia del bus: i bus ad anello potrebbero essere scomodi da installare in certe applicazioni in cui i dispositivi sono fisicamente disposti in modo lineare; Lunghezza del bus: si va dal bus che collega i dispositivi di una singola macchina (< 100 m), al bus che collega unintera linea di produzione (<1000 m), ai bus usati per lautomazione di edifici (>> 1000 m). Esiste sempre un legame fra lunghezza e velocit di trasmissione. Esistono dispositivi di amplificazione (ripetitori) in grado di estendere la lunghezza del bus, ma occupano spazio e devono essere alimentati; Numero di dispositivi collegabili: si va da pochi elementi di I/O a migliaia, quello che interessa il numero di dispositivi direttamente connessi al bus (esiste sempre un limite fisico o di indirizzamento); Facilit di cablaggio: importante se vi sono molti dispositivi collegati al bus. Per alcuni bus di campo vi sono particolari cavi a perforazione di isolante molto comodi anche se costosi. Vi sono bus di campo in cui lalimentazione dei dispositivi viene prelevata direttamente dal bus;

163

Possibilit di avere pi master sul bus: si hanno bus in cui vi uno e un solo master, bus in cui vi sono un numero limitato di master e bus in cui tutti i dispositivi connessi possono essere master (peer to peer); Velocit di trasmissione: importante non tanto la velocit di picco, ma il tempo di ritardo massimo (detto anche tempo di risposta) fra il verificarsi di un evento in campo e lacquisizione dellevento da parte del controllore. E difficile da calcolare perch dipende da tanti fattori. Si va da tempi molto minori di 1 ms per cicli di regolazione assi, a tempi minori di 10 ms per dispositivi di I/O digitali su macchine o per messaggi di allarme, a tempi minori di 200 ms per linterfaccia con loperatore ed a tempi anche nellordine dei secondi per la regolazione di temperature in forni industriali. La velocit di trasmissione dichiarata pu ingannare: si presti attenzione alle tecniche di accesso al bus (Token Ring logico) e alloverhead; Modalit di interrogazione degli slave: time driven, time triggered o event-driven. In alcune applicazione (cicli di regolazione veloci, ...) necessario ottenere le informazioni con scadenze temporali fisse, determinabili a priori e con Jitter limitato. In altre (gestione veloce di allarmi, ...) necessario ottenere linformazione non appena possibile senza attendere il relativo slot temporale; Dimensione massima del blocco dati: si va da pochi byte per i dispositivi di I/O a molti Kbyte per i dati di produzione.

164

6.7 Vantaggi introdotti dai bus di campo I moderni sistemi di automazione industriale, in seguito allintegrazione di numerosi sensori e attuatori intelligenti, hanno la necessit di trasmettere oltre ai dati anche una serie di informazioni atte al controllo e supervisione della rete stessa. Tali informazioni devono essere disponibili in tempi brevissimi e in grado di viaggiare in entrambe le direzioni (full-duplex). Risulta evidente che la tecnologia analogica tradizionale insufficiente a tali scopi, tanto pi che gi con sistemi di medie dimensioni il problema del cablaggio rappresenta uno scoglio non indifferente, facendone lievitare i costi. I vantaggi offerti da un sistema di bus di campo sono molteplici: La minore spesa per il cablaggio consente di risparmiare tempo per progettazione e installazione. Le distanze coperte dal bus sono superiori a quelle raggiunte mediante il cablaggio tradizionale. Inoltre si riduce la presenza di cavi, ripartitori nonch le dimensioni dei quadri elettrici e degli spazi occupati a vantaggio della diminuzione dei costi; I tempi di intervento in caso di guasto e per la manutenzione sono velocizzati grazie a sistemi di autodiagnostica con messaggi di testo semplificando la messa in servizio; La brevit del percorso del segnale aumenta laffidabilit e migliora la fruibilit del sistema, svolgendo un ruolo particolarmente importante nel caso di segnali critici. E con segnali digitali la protezione dai guasti pi elevata; I sistemi aperti di bus di campo uniformano le modalit di trasmissione dei dati e di connessione degli apparecchi offerte dai vari produttori. Lutente si svincola dalla dipendenza dallo standard del singolo produttore. Eventuali modifiche o ampliamenti sono facili da eseguire e con spese minime, allinsegna della massima flessibilit e della sicurezza dellinvestimento per il futuro; Altro vantaggio consiste nel decentramento del software di controllo finale, che viene installato allinterno dei singoli blocchi funzionali, mentre quello di supervisione risiede nellunit di controllo; Migliorano ed aumentano i servizi che il sistema in grado di fornire al suo utente estendendo quindi i campi di applicazione; Riduzione, in generale, dei costi globali e dei costi di engineering (una volta acquisita lesperienza necessaria).

165

Comunque, esistono anche degli svantaggi che corretto segnalare in contrapposizione ai vantaggi appena menzionati: Necessit di conoscenze superiori; Investimento in strumenti e accessori (sistemi di sviluppo, tool di monitoraggio e diagnosi, ecc.) abbastanza onerosi. In realt non si tratta di veri e propri svantaggi, in quanto essi rappresentano solo ci che necessario possedere per poter accedere a questa nuova tecnologia. Se da un lato, il ricorso al bus di campo obbliga ad utilizzare molta intelligenza distribuita, altres vero che il prezzo di questultima basso ed il tempo risparmiato nello sviluppo del software risulta tanto grande da rendere antieconomiche scelte diverse.

166

6.8 AS-I (Actuator Sensor Interface) Nato nel 1994, AS-I (Actuator Sensor Interface) si basa su una topologia lineare, un bus deterministico a singolo master dedicato alla connessione tra PLC (master) e al massimo 31 slaves (4 sensori e/o attuatori per ogni slave) a informazione molto limitata (4 bit per slave). Ad ogni slave possono essere connessi dispositivi di I/O digitali e analogici. E possibile connettere fino al massimo 124 dispositivi analogici e 124 dispositivi digitali. Tutto passa attraverso il master, non sono possibili comunicazioni dirette fra gli slave; dal punto di vista logico, la topologia di collegamento quella a stella come mostrato nella seguente Figura.

Un ciclo di interrogazione composto da uno fino a 31 messaggi, uno per ogni slave, se al bus sono collegati 31 slave il tempo di ciclo o tempo di risposta di 5 ms. Viene utilizzato un doppino non schermato, la velocit di trasmissione di 167 kbit/s e raggiunge lunghezze di collegamento di 100 m (aumentabile ricorrendo a ripetitori). Sul singolo cavo giallo, vengono trasmesse in parallelo e separatamente, la tensione di alimentazione (24 Volt DC) e le informazioni (con codifica Manchester) e, pur nella sua semplicit, un bus a sicurezza intrinseca che supporta lautoconfigurazione. E diffuso prevalentemente in Europa ed supportato da oltre 100 membri a livello mondiale.

www.as-interface.com

167

6.9 Sercos Interface La tradizionale interfaccia analogica utilizzata per pilotare gli assi in velocit per mezzo di un segnale di tensione compreso tra -10 e +10 V pu essere adattata agli azionamenti di ultima generazione grazie a una conversione analogico-digitale con risoluzioni di 12 bit o 16 bit. Ma anche quando viene inserita in un sistema di controllo digitale, questa interfaccia non fa che vanificare tutti i vantaggi offerti dallintelligenza integrata sullazionamento. Limpiego di interfacce completamente digitali, che mettono direttamente in comunicazione il controllore e lazionamento, permette invece di sfruttare appieno le potenzialit delle linee pi moderne. Sercos (Serial Real-Time Communication System) uno standard internazionale che realizza uninterfaccia aperta per il controllo digitale degli azionamenti. Nellambito di un sistema di controllo industriale si posiziona al livello pi vicino alla macchina da controllare, al di sotto dei bus di campo e dei bus per la supervisione dei processi e per la comunicazione con il sistema informatico gestionale. Lo standard Sercos, introdotto allinizio degli anni 80 e successivamente standardizzato nel 1995 prevede una comunicazione digitale sincrona di tipo master-slave su reti ad anello in fibra ottica che comprendano un dispositivo master e fino a 254 slave. La seguente Figura mostra lanello di Sercos Interface.

Nella fase di inizializzazione a ciascuno slave viene comunicato lo slot temporale in cui pu trasmettere i propri dati. Per la protezione dei dati esiste un CRC a 16 bit e alcuni vincoli sui messaggi e sui tempi di risposta. Gli slot temporali con dati contenenti errori non vengono ripetuti nel traffico ciclico dei dati. Se per 2 volte consecutive uno slot contiene dati non validi, gli azionamenti si bloccano automaticamente. Le distanze tra un nodo e laltro con una fibra plastica di costo contenuto possono raggiungere i 40 m (200 m nel caso di fibra in vetro da 200 m), mentre la lunghezza

168

totale dellanello deve rimanere al di sotto dei 10 km (50 km per la fibra in vetro). Garantisce la totale immunit ai disturbi causati campi elettromagnetici. Il numero effettivo di azionamenti che possono essere presenti in un singolo anello limitato in pratica dalla quantit di informazioni da trasmettere per ciascuno di essi e dai tempi massimi consentiti dallapplicazione. I servoazionamenti digitali sono infatti aggiornati ciclicamente con i comandi provenienti dal sistema di controllo dai segnali di retroazione e di sincronizzazione provenienti dalla macchina. I tempi di ciclo possono essere di 62,5 s, 125 s, 250 s e multipli interi di 250 s fino a 65 ms; linterfaccia Sercos fa in modo che tutte le misure degli azionamenti nel sistema siano sincronizzate tra loro con una precisione dellordine del microsecondo, caratteristica fondamentale per la sincronizzazione degli assi multipli di una macchina a controllo numerico. Con una banda disponibile di 2, 4, 8 o 16 Mbit/s, un sistema Sercos pu ospitare su uno stesso anello un controllore master e fino a 32 azionamenti ed essere impiegato in macchine ad alte prestazioni. Sercos scalabile verso lalto, in quanto il controllore digitale pu pilotare tanti anelli quanti gliene permettono le sue capacit. Sebbene sulla carta la velocit di un sistema Sercos possa essere inferiore a quella di altri bus di campo orientati alle comunicazioni con gli azionamenti, nella pratica il decentramento del controllo e la distribuzione degli anelli di retroazione fa s che la quantit dinformazione che necessario trasmettere sia limitata e la banda disponibile sia pi che sufficiente per la maggior parte delle applicazioni. I parametri e i dati relativi allo stato interno degli azionamenti possono essere visualizzati, modificati e salvati tanto dai terminali del controllo numerico, quanto in modo automatico da unapposita routine di servizio. Questo consente di operare linizializzazione del sistema e la diagnosi in caso di malfunzionamento, nonch la manutenzione preventiva per ridurre i tempi di fermo macchina. Linterfaccia Sercos provvede a standardizzare il formato dei dati scambiati, definendo quanti pi tipi di dati possibile. Applicazioni industriali di impiego di Sercos sono il controllo assi, il controllo di velocit e il controllo di coppia.

www.sercos.de

www.sercos.org

www.sercos.com

169

6.10 Foundation Fieldbus (FF) Foundation Fieldbus (FF), un bus di campo sviluppato nella prima met degli anni 90 dalla Fieldbus Foundation org. (consorzio di pi aziende tra le quali National Instruments, ABB,..). E un bus che connette fino a 32 utenti su distanze fino a 1900 m con basse velocit di trasmissione (31.25 kbit/s) e impiegando un cavo economico (doppino telefonico). Pu raggiungere anche velocit di trasmissione maggiori (1 Mbit/s), ma su distanze inferiori (750 m). La topologia di collegamento pu essere quella a bus lineare o a stella con possibilit di trasmissione bidirezionale full-duplex. Le comunicazioni tra i dispositivi sul bus pu avvenire in 3 modi: client/server, publisher/subscriber, event notification. Il tempo di ciclo inferiore a 500 ms, la dimensione di un pacchetto di dati di 128 byte con controllo di errore CRC a 16 bit. Come avviene nei bus a sicurezza intrinseca, lalimentazione fornita dal bus stesso. Oltre ad assicurare le funzionalit dei classici sistemi di collegamento analogico 4-20 mA, FF garantisce anche un incremento nellinteroperabilit con dispositivi di differenti costruttori e riduzione dei sistemi di controllo grazie alla compatibilit con i dispositivi a intelligenza distribuita. Infatti, le funzioni impiegate solitamente dai sistemi di controllo come AI (analog input), AO (analog output) e PID (proportional, integral, derivative) possono essere utilizzate dai dispositivi in campo mediante le Function Block standardizzate che FF sfrutta per la gestione e supervisione dei sistemi. Le specifiche di comunicazione di Fieldbus Foundation rispettano il modello ISO/OSI e consistono in tre principali componenti funzionali rispettivamente dedicati al livello fisico, allo stack di comunicazione e al livello utente. Il Data Link Layer, inoltre, contribuisce alla gestione dellaccesso al bus di campo attraverso il sistema deterministico di schedulazione centralizzato chiamato LAS (Link Active Scheduler). LAS utilizzato per il sequenziamento dei messaggi deterministici e per lo scambio dei dati tra i dispositivi in campo. Foundation Fieldbus non utilizza i livelli compresi tra il Livello 3 e il Livello 6 del modello ISO/OSI; lo stack di comunicazione e il livello utente, infatti, racchiudono lo

170

strato Data Link Layer, il sottostrato FAS (Fieldbus Access Sublayer) e le norme FMS (Fieldbus Message Specification). Larchitettura del Foundation Fieldbus fornita di un robusto controllo di tipo sincrono supportando, inoltre, comunicazioni asincrone rivolte ad attivit di diagnostica, di reporting e manutenzione. Campi di applicazione di Foundation Fieldbus sono per esempio il controllo di flusso, di temperatura e di livello nellindustria chimica e petrolchimica. E diffuso prevalentemente negli Stati Uniti ed supportato da oltre 200 membri nel mondo.

www.fieldbus.org

171

6.11 Interbus-S Interbus-S stato sviluppato nel 1984 dalla Phoenix Contact per il campo dei trasduttori-attuatori e noto come DIN 19258, consente la connessione a 500 kbit/s ad un massimo di 256 utenti per lunghezze di collegamento fino a 400 m per stazione (con estensione massima di 13 Km tramite limpiego di ripetitori). La struttura del collegamento ad anello anzich a stella con frame di somma e il protocollo autoconfigurante. La trasmissione avviene in modalit full-duplex. I dati vengono gestiti come in un registro a scorrimento: il frame somma inizia e finisce sul master. Tutti i dati di uscita vengono inseriti dal master quando genera il frame somma. Tutti i dati in ingresso vengono inseriti dagli slave in un punto ben preciso del frame. I dati vengono suddivisi in blocchi da 16 bit. Dal punto di vista logico il protocollo costituito da una stringa frame di somma che viene trasmessa una sola volta per ciclo, e contiene: loop back word (LB), i dati di processo per i dispositivi (16 bit), la frame check sequence (FSC) e la word finale (E). Per la protezione esiste un CRC a 16 bit (i resti del polinomio calcolato dal generatore CRC di un nodo viene trasferito al tester CRC del nodo successivo) e alcuni vincoli sui messaggi. Il tempo di trasmissione pu essere calcolato a priori con una semplice formula. Per esempio, per 64 byte di dati vale 3.7 ms (a 500 Kbps). Il tempo di ritardo introdotto da ciascun componente molto basso (1.5 bit, cio 3 s a 500 Kbps). E largamente impiegato nel settore automobilistico e diffuso prevalentemente solo in Europa.

172

Nella seguente Figura mostrato un esempio di modo di impiego di Interbus-S:

Caratteristiche: Bus remoto: doppino twistato e schermato (ma anche possibile luso di cavi in fibra ottica), la trasmissione avviene con protocollo RS485; Bus delle periferiche: 4 coppie di conduttori twistate e schermate, la trasmissione fatta con impulsi CMOS; Lalimentazione arriva dalla morsettiera del bus; la distanza massima fra 2 componenti di 1.5 m, si possono collegare al massimo 8 componenti; La velocit di trasmissione pari a 300 Kbps. Sensor loop: doppino twistato non schermato; porta i dati e la tensione di alimentazione (24 V, 40 mA max), la distanza massima fra 2 sensori 10 m, lestensione massima 100 m.

www.interbusclub.org

www.interbus.com

www.ibsclub.com

173

6.12 Modbus Modbus, sviluppato nel 1979 dalla Modicon una societ del gruppo Schneider Electric costruttrice di PLC, un bus ad architettura master-slave a singolo master che permette di collegare fino a 247 utenti (slave) su distanze fino a 1900 m con basse velocit di trasmissione (da 1200 bit/s a 19200 bit/s) e RS232 o RS485 su doppino schermato (half-duplex a due fili oppure full-duplex a quattro fili). Non un protocollo deterministico. Le specifiche rilasciate fanno s che Modbus possa essere utilizzato come un protocollo per lintegrazione dei sistemi basati su PC e PLC con regolatori, sensori ed attuatori tramite ununica linea di comunicazione. La seguente Figura mostra un esempio di bus. Grazie ad un protocollo molto semplice, viene largamente utilizzato per terminali, drivers,

Modbus non un vero e proprio bus di campo, sia per quanto riguarda larchitettura master/slave che, soprattutto, per quanto riguarda la velocit di trasferimento dei dati. Un utilizzo standard di Modbus il collegamento di vari dispositivi come termoregolatori, oppure sensori od attuatori (gli slave del sistema), direttamente ad un terminale SCADA (il master del sistema). Lo standard Modbus non definisce rigorosamente il livello fisico della rete, ma si concentra solo sui protocolli al livello di trasferimento dati, al livello di rete ed al livello applicazione. Il protocollo fa riferimento comunque ad un mezzo trasmissivo seriale asincrono e definisce alcune caratteristiche. Il costruttore, infatti, pu scegliere a suo piacimento il mezzo trasmissivo, la velocit di trasmissione, se inserire o meno il bit di parit, il numero di bit di stop ed il modo di trasmissione, ASCII (American Standard Code for Information Interchange) oppure RTU (Remote Terminal Unit).

174

Bisogna ricordare che i caratteri vengono inviati partendo dal bit meno significativo sino ad arrivare al bit pi significativo. In particolare il modo di trasmissione RTU consente di inviare un byte cos come si trova, utilizzando gli 8 bit a disposizione per la trasmissione del carattere. Nel modo ASCII invece, il byte da trasmettere viene diviso in due parti: il nibble pi significativo ed il nibble meno significativo. Ogni nibble quindi rappresentabile tramite un numero esadecimale compreso tra 0 e F. Il modo di trasmissione ASCII invia due caratteri a 7 bit che non sono altro che la rappresentazione, secondo il codice ASCII a 7 bit, dei due numeri esadecimali che formano il byte. Il numero degli slave pu essere inferiore a 247 e dettato da motivazioni di carattere tecnico dovute alla scelta del mezzo trasmissivo. Ad esempio, se viene utilizzata RS232, il numero di dispositivi slave sar pari ad uno. Questo perch RS232 un collegamento punto-punto e quindi un collegamento tra un master ed uno slave. Ad ogni slave associato un indirizzo che lo individua in maniera univoca. Solo il master pu iniziare la comunicazione. La trasmissione avviene secondo lo schema di domanda/risposta in cui solo un singolo slave risponde, oppure broadcast/nessuna risposta, dove il master ha inviato un messaggio broadcast a tutti gli slave, i quali per non devono rispondere. In pratica una singola comunicazione fatta o da una sola domanda alla quale segue una sola risposta, oppure da un messaggio broadcast. Grazie a queste possibili modalit di operare, possibile leggere, tramite una sola interrogazione, lo stato di pi bit. In particolare la risposta data dallo slave nel campo dati conterr le seguenti informazioni: numero di byte inviati e il numero di byte contenenti il valore dei bit raggruppati in byte. Il numero massimo di word che pu essere letto con un singolo messaggio pari a 125. Ci implica che il pi lungo messaggio Modbus avr una lunghezza pari a 250 byte pi il byte relativo allindirizzo, quello relativo alla funzione, quello relativo al numero di byte restituiti dallo slave ed i due byte che compongono il controllo errore CRC a 16 bit. E ampiamente diffuso nellindustria e in tutto il mondo ed un bus di campo di basso costo e facilit di implementazione.

www.modbus-ida.org

175

6.13 CANbus (Controller Area Network) CANbus (Controller Area Network) un bus sviluppato dalla Bosch nel 1985 per il collegamento in rete di dispositivi di comando, sensori e attuatori del settore automobilistico, poi approdato al pi classico ambiente industriale. Si tratta di un bus semplice ed economico multi-master a rilevazione di collisione che consente la connessione a un massimo di 64 utenti per segmento (50 m a 1 Mbit/s, 100 m a 500 kbit/s). CANbus definisce solo il livello Fisico (Livello 1) e il Data Link Layer (Livello 2) del modello ISO/OSI. La topologia del bus lineare e la trasmissione pu essere iniziata da qualunque dispositivo sul bus in un qualsiasi istante. Un doppino intrecciato porta la linea differenziale dei dati e la tensione di alimentazione. E terminato da impedenze da 120 Ohm. Il livello Applicazione (Livello 7 del modello ISO/OSI) pi utilizzato in Europa CANopen. DeviceNet una variante del protocollo CANbus, stato sviluppato dalla Rockwell Automation ed diffuso negli Stati Uniti e in Asia. La seguente Figura mostra limpiego di un bus di campo come CAN su di una automobile.

Sulla linea i dati vengono rappresentati con il formato NRZ (Non Return to Zero) codificati a campi di bit, con un campo dati di massimo 8 bytes e la sincronizzazione assicurata dal meccanismo di bit-stuffing mostrato nella seguente Figura.

176

Tale meccanismo prevede linserzione automatica di un bit di polarit opposta (bit di stuffing) dopo 5 bit uguali. Il bit rate viene quindi ridotto di un fattore che dipende dalla stringa di dati e che, nel peggiore dei casi, pu essere pari a 4/5. La tecnica adottata da CANbus, detta CSMA/CR (Carrier Sense Multiple Access/Collision Resolution), ad accesso casuale, ossia ogni utente pu inoltrare un messaggio quando lo ritiene opportuno (contrariamente ai sistemi master-slave): secondo questa logica tutti gli utenti si comportano da master, anche se CAN prevede comunque degli slave, SLIO, con funzionalit ridotte che possono comunicare in seguito a richiesta o ad un particolare evento (event-driven). CSMA/CR prevede che in caso di collisione un solo messaggio a bassa priorit venga interrotto (stato recessivo), mentre il messaggio ad alta priorit (stato dominante) possa proseguire. Ne consegue che un messaggio a bassissima priorit non pu sapere a priori dopo quanto tempo arriver a destinazione (protocollo non deterministico). La seguente Figura mostra il funzionamento di CSMA/CR.

CANbus supporta 4 tipi di frame: Data Frame; Remote Frame (richiesta di invio); Error Frame (segnalazione errori di trasmissione); Overload Frame (segnalazione di impossibilit temporanea a ricevere messaggi). Il data frame permette la trasmissione di un numero di byte dati variabile tra 0 e 8 e, nel caso peggiore ha lunghezza pari a 154 bit, compresi i bit di stuffing e i bit che devono trascorrere tra un frame e il successivo (Interframe Gap). Lo scambio dei dati avviene secondo il modello del produttore e del consumatore, in cui ogni partecipante alla comunicazione conosce a priori lutilizzo dei dati che vengono trasmessi. Il protocollo supporta caratteristiche interessanti quali una struttura a oggetti, lallocazione fissa o dinamica degli identificatori, diversi meccanismi di controllo e diagnostica della rete e modelli e/o profili per la caratterizzazione del nodo.

177

CANopen prevede un insieme di identificatori disponibili a tutti i nodi della rete e un DBT (Distributor), elemento implementato secondo la struttura master-slave (ovvero presente un solo DBT master che gestisce le richieste di tutta la rete), che provvede ad allocare dinamicamente gli identificatori a disposizione a seconda delle richieste dei dispositivi. Questa modalit permette lutilizzo pi efficiente possibile degli identificatori, visto che questi ultimi sono tutti a disposizione dei vari dispositivi. CANopen mette a disposizione 1760 identificatori per usi generali mentre i rimanenti sono utilizzati per la gestione della rete (in particolare 128 identificatori servono per gestire i 128 nodi che possono essere indirizzati in una rete CANopen). Questa per non lunico tipo di allocazione degli identificatori prevista da CANopen. Infatti prevista dalle specifiche anche una configurazione minima del sistema (adatta ad un sistema caratterizzato dal rapporto master-slaves); in questo caso lidentificatore del messaggio diviso in due parti: una composta da 4 bit che specifica il codice della funzione, laltra di 7 bit (questo schema adatto alla connessione tra un master e 126 slave, lindirizzo 0 riservato). Le 16 funzioni identificate dal codice comprendono la ricezione e la trasmissione dei dati, la gestione del canale peer-to-peer, il controllo dello stato del nodo, la gestione del nodo, gli avvisi di errore, la ricezione delle sincronizzazioni e dei messaggi per la temporizzazione. Visto che la priorit dipende dal tipo di funzione, tale codice sta nei bit pi significativi. La seguente Figura mostra il formato dellidentificatore di CAN.

In CANopen la trasmissione dei dati avviene attraverso i PDO (Process Data Objects), ovvero pacchetti caratterizzati da una ben preciso identificatore. CANopen prevede le seguenti modalit per lacquisizione dei messaggi: sullevento; su richiesta dellapplicazione; con ricezione di un messaggio di sincronizzazione specifico. La prima modalit viene eseguita quando si rileva un particolare evento, relativo al profilo oppure allapplicazione (quale la ricezione di un PDO asincrono).

178

La trasmissione di un PDO pu essere anche dovuta alla ricezione di una richiesta di messaggio remota. I PDO sincroni invece sono inviati ciclicamente in seguito alla ricezione di un certo numero di messaggi di sincronizzazione (il tutto stabilito nella fase iniziale di configurazione della rete da parte del master). Inoltre i messaggi di sincronizzazione possono essere usati per la sincronizzazione nellacquisizione dei dati da tutti i nodi della rete, ovvero i diversi nodi della rete sincronizzano il momento in cui campionano i dati con il messaggio inviato in broadcast. I nodi della rete di solito sono costituiti da pi di un oggetto applicazione e spesso pi di uno di essi viene associato ad un oggetto comunicazione (PDO o messaggi I/O). Per poter associare gli oggetti applicazione ai relativi oggetti di comunicazione, i protocolli ad alto livello seguono strade diverse. CANopen specifica gli oggetti applicazione mappati in un PDO attraverso una struttura chiamata PDO-Mapping-Record contenuta nellOD (Object Dictionary), un raggruppamento di oggetti indirizzati attraverso un indirizzo a 16 bit che caratterizza ogni nodo CANopen. Questa struttura specifica i dati degli oggetti applicazione in forma di una lista che contiene gli identificatori di ogni oggetto, il tipo e la lunghezza dei dati scambiati. Nella gestione di una rete che comprende numerosi dispositivi digitali necessario poter disporre di un canale di comunicazione che permetta la configurazione dei nodi per stabilire una connessione efficace. CANopen fornisce un canale di servizio (Service Channels) attraverso cui gli SDO (Service Data Objects) possono essere scambiati tra due qualsiasi dispositivi attraverso un protocollo che prevede la risposta ad ogni pacchetto trasmesso. Ogni oggetto CANopen deve implementare almeno una connessione SDO con due identificatori di messaggi (uno per la richiesta ed uno per la risposta) per permettere la configurazione del dispositivo. Per le applicazioni che necessitano di una gestione dinamica della connessione SDO, le specifiche prevedono un gestore SDO, che si occupa di stabilire, su richiesta di altri dispositivi, la relativa connessione necessaria per la comunicazione. Linterfaccia CANbus uninterfaccia a basso costo e grazie alla sua semplicit e alla sua effettiva apertura come standard, si andato molto affermando nel tempo. Oggi esistono molteplici possibilit di accesso da PLC o PC per mezzo di schede dedicate.

www.canopen.org

www.can.bosch.com

www.can-cia.de

179

180

6.14 Profibus (Process Fieldbus) Profibus uno bus di campo voluto da Siemens che oggi copre il maggior numero di applicazioni industriali in Europa e si sta diffondendo anche nel resto del mondo. La sigla Profibus comprende tre diversi protocolli compatibili tra loro. Profibus FMS (Fieldbus Message Specification), introdotto nel 1989, implementato nei Livelli 1,2,7 del modello ISO/OSI e consente la comunicazione tra i processi a livello di cella. E orientato alla comunicazione multi-master (token-passing); versatile e consente una grande variet di applicazioni. Il livello Applicazione costituito dal Fieldbus Message Specification (FMS) e dal Lower Layer Interface (LLI). FMS contiene il protocollo verso lapplicazione e le fornisce una vasta gamma di servizi potenti. LLI comunica sopra con FMS e sotto con lo strato di collegamento dati (Livello 2), implementa relazioni di comunicazione che permettono a FMS di accedere al Livello 2 indipendentemente dal tipo di dispositivo. Il Livello 2, FDL, implementa il controllo per lacceso al bus e garantisce la sicurezza dei dati. Per la trasmissione fisica, il protocollo FMS permette di utilizzare la tecnologia basata su RS485 (codifica del bit tramite segnale su tensione differenziale) e le fibre ottiche. Profibus DP (Device Peripheral), introdotto nel 1994, implementato nei Livelli 1,2 del modello ISO/OSI ed dedicato alla comunicazione tra i processi veloci a livello di campo (sensori, attuatori,..). Veloce (fino a 12 Mbit/s), efficiente ed economico (RS485, fibra ottica), supporta un numero di utenti fino a 126 di tipo master o slave, distanze di 100 m e dispone di funzioni diagnostiche e di autoconfigurazione. E Plug and Play. La versione base la DP-V0, esistono poi altre due versioni evolute e migliorate (DP-V1 e DP-V2), con nuove funzionalit. Questa versione Profibus, che la pi utilizzata, rivolta soprattutto alla comunicazione tra sistemi di controllo e dispositivi distribuiti di I/O. Profibus DP utilizza gli strati 1 (PHY) e 2 (FDL) del modello ISO/OSI. Gli strati dal 3 al 7 non sono definiti per motivi di efficienza e le funzioni di comunicazione, previste dal protocollo e messe a disposizione dellutente attraverso linterfaccia utente, vengono mappate sul Livello 2 da un applicativo denominato DDLM (Direct Data Link Mapper). Questa architettura razionalizzata assicura una trasmissione veloce ed efficiente. Per la trasmissione fisica, vale lo stesso discorso fatto con FMS. DP e FMS, utilizzando la stessa tecnologia

181

trasmissiva e lo stesso protocollo di accesso al bus, possono operare simultaneamente sullo stesso cavo, anche se alle prestazioni del protocollo pi lento (FMS). Profibus PA (Process Automation), introdotto nel 1995 implementato nei Livelli 1,2 del modello ISO/OSI. Utilizza la tecnologia trasmissiva IEC 1158-2 (31.25 kbit/s, 10 utenti, 1900 m) e la codifica Manchester dei dati con protocollo di tipo sincrono. Con il protocollo PA possibile trasmettere dati e alimentazione su un bus a due conduttori, che consente di operare in condizioni di sicurezza intrinseca permettendo ai dispositivi di essere alimentati direttamente dal bus e la sostituzione in linea. A livello Fisico, Profibus PA pu essere interfacciato con DP per mezzo di un BRIDGE. PA utilizza per la trasmissione dei dati un protocollo DP esteso oltre ad un Profilo PA nel quale viene definito il comportamento dei dispositivi di campo. Profibus un bus di campo che consente di collegare i tipici utenti di cella (partner) anche se di differenti case costruttrici: computer industriali, PLC, controlli per robot e macchine utensili, sensori, attuatori, azionamenti,... Si tratta di un bus ad accesso deterministico. Il successo di Profibus, che pu vantare attualmente pi di un milione di nodi installati ed una crescita vertiginosa in pochi anni, dovuto al suo ampio spettro di applicabilit; dalla semplice connessione di attuatori e sensori fino al livello di cella, dallindustria manifatturiera al settore macchine utensili, dal settore del building al processo fino allindustria chimica e petrolchimica. E un bus di campo in grado di utilizzare, con lo stesso mezzo fisico, servizi per connessioni semplici orientate al byte e servizi per connessioni complesse (frame di configurazione, di parametrizzazione, di diagnostica ecc.) in modalit ciclica ed aciclica. Tutte le versioni di Profibus utilizzano un protocollo uniforme di accesso al bus implementato al Livello 2 del modello ISO/OSI. Per quanto riguarda i dispositivi, Profibus distingue tra: Dispositivi MASTER: controllano la comunicazione sul bus. Un master pu spedire messaggi senza richiesta esterna quando detiene il controllo della linea di comunicazione (possesso del token). Vengono anche chiamati stazioni attive; Dispositivi SLAVE: sono unit periferiche che non possono accedere al bus direttamente, se non per divulgare informazioni diagnostiche che lo riguardano. Possono solamente riconoscere messaggi ricevuti o spedire messaggi al master se richiesto. Dal momento che richiedono piccole porzioni di protocollo, la loro implementazione particolarmente economica. Sono chiamate stazioni passive.

182

La gestione dellaccesso al bus viene implementata nel protocollo Profibus secondo la filosofia mater/slave, mentre per quanto riguarda laccesso al bus tra master, si utilizza una procedura basata su token passing. La procedura token passing garantisce che il permesso di accesso al bus, concesso al master che possiede il token, sia definito per un intervallo di tempo preciso e costante; quindi il tempo che ogni master dovr attendere per accedere al bus dipender dal numero di dispositivi attivi presenti nella rete e dal massimo tempo di utilizzo del bus permesso (token hold time). Il token viene passato da un master allaltro secondo un ordine prefissato (anello logico). La procedura master/slave consente alla stazione attiva che in un preciso momento possiede il token di accedere alle stazioni passive a lui assegnate. Il master pu spedire messaggi agli slave o messaggi dagli slave. Durante la fase di inizializzazione del sistema, il compito del sottostrato MAC (Medium Access Control, sottolivello del Livello 2) di ogni dispositivo master di definire il proprio indirizzo allinterno dellanello logico costituito da tutti i dispositivi attivi. Durante la fase operativa, i master malfunzionanti o spenti devono essere tolti dallanello logico, mentre quelli attivati successivamente devono essere inseriti nellanello logico. Un altro compito importante del Livello 2 (FDL) riguarda la sicurezza dei dati. Il formato delle trame utilizzato nel protocollo Profibus assicura elevata integrit dei dati grazie a telegrammi caratterizzati da distanza di Hamming uguale a 4. Lo strato di collegamento dati (DDLM) permette il trasferimento delle informazioni anche in modalit broadcasting, se utilizzata per linvio di trame a tutte le stazioni attestate sul bus, e multicasting per linvio di dati ad un gruppo di stazioni. La seguente Figura mostra il tipico anello di Profibus.

183

Il protocollo Profibus, al fine di soddisfare diverse esigenze, in termini di velocit di trasmissione, distanza raggiungibile, sicurezza e possibilit di alimentazione lungo il bus, pu supportare diverse soluzioni tecnologiche: Trasmissione con RS485 per DP e FMS; Trasmissione con fibre ottiche per DP e FMS; Trasmissione IEC1158-2 per PA. RS485 la tecnologia trasmissiva pi utilizzata nelle applicazioni Profibus e il suo impiego include tutti quei casi in cui si rende necessaria una trasmissione ad alta velocit implementabile in maniera semplice. Utilizza come mezzo trasmissivo una coppia di conduttori attorcigliati e, se necessario, schermati. Si tratta quindi di una modalit di trasmissione molto economica e adatta a operare anche in ambienti sfavorevoli. La trasmissione del segnale avviene in corrente su tensione differenziale di 5V. Il transceiver di interfaccia viene protetto da eventuali situazioni di accesso simultaneo al segmento. Tutti i dispositivi sono connessi ad una struttura lineare e il medesimo segmento conduttore pu ospitare fino a 32 unit. La modalit di connessione di Profibus half-duplex e cio ciascuna unit, master o slave, trasmette e riceve sulla stessa coppia di conduttori. Il bus terminato allinizio ed alla fine di ogni segmento da terminazioni attive. Quando si utilizzano pi di 32 stazioni su pi segmenti, si ricorre allimpiego di ripetitori per raccordare le varie sottoparti. La seguente Tabella mostra le relazioni tra prestazioni e lunghezza segmento con RS485:

184

Anche se, come RS485, Profibus non specifica il connettore da utilizzare, ma si limita a descrivere i poli da usare, tradizionale limpiego di connettori 9 Pin D-SUB. Il segnale individuato da una tensione differenziale tra i due conduttori e la codifica del tipo Non Return to Zero (NRZ) mostrato nella seguente Figura. Trattandosi di trasmissione asincrona, il clock non viene trasmesso e i messaggi vengono inviati a byte, preceduti dal bit di start (0) e seguiti da parit e stop (1) con efficienza pari a 8/11.

Limpiego di conduttori a fibra ottica pu essere utile in ambienti ad alta interferenza elettromagnetica oppure per aumentare la distanza massima raggiungibile o la velocit massima impiegabile. Ulteriori vantaggi in questo tipo di supporto riguardano la leggerezza, la resistenza meccanica, la larghezza di banda e quindi la velocit di trasmissione. Lo standard IEC 1158-2 risponde alle esigenze dellindustria chimica e petrolchimica che richiedono comunicazioni sicure; si tratta di un protocollo basato sulla codifica dei bit per mezzo di segnali di corrente ed spesso individuato con la sigla H1. La trasmissione basata sui seguenti principi: ogni segmento ha una sola fonte di alimentazione; non si riversa potenza sul bus quando una stazione invia dati; ogni dispositivo consuma una corrente di base nel suo stato di attesa tipicamente di 10 mA; ogni dispositivo si comporta come un pozzo passivo di corrente; ad entrambi i capi del bus sono presenti terminazioni passive; sono permesse reti lineari, ad albero o a stella; possibile aggiungere tratti ridondanti di bus per aumentare laffidabilit.

185

I dispositivi devono essere alimentati con una corrente continua di almeno 10 mA, mentre il segnale trasmesso deve essere caratterizzato da una modulazione di 9 mA sulla componente continua. Il numero massimo di unit collegabili 32, anche se il numero in realt limitato dal tipo di protezione contro le esplosioni scelta. La seguente Tabella riassume le caratteristiche dello standard IEC 1158-2:

Profibus PA molto interessante e va diffondendosi soprattutto negli ambienti dove la sicurezza importante. PA prevede una topologia lineare con alimentazione autonoma del bus. PA utilizza una codifica Manchester con protocollo di tipo sincrono. PA prevede dei profili che usano uninterfaccia verso blocchi funzionali: il comportamento del dispositivo viene descritto mediante delle variabili. PA viene utilizzato per i campi a rischio di esplosione dellindustria di processo. Per ampliare Profibus di un segmento PA nelle applicazioni a rischio di esplosione, si rende necessario un accoppiatore di segmenti con sezionatore dellalimentazione (PNC-Process Near Component). Questo dispositivo provvede alla conversione delle PDU (Protocol Data Unit). I dispositivi connessi a Profibus PA possono essere sostituiti durante il servizio. La versione DP del protocollo Profibus stata pensata per la comunicazione tra sistemi di controllo dellautomazione (PC e PLC) e dispositivi di ingresso/uscita distribuiti (sensori/attuatori) ed ottimizzata per comunicazioni ad alte velocit e per connessioni poco costose. La maggior parte dello scambio di dati in questo contesto avviene in modo ciclico, tuttavia per permettere lo svolgimento di procedure di configurazione, di diagnostica o di gestione degli allarmi, il protocollo supporta anche funzioni di comunicazione aciclica. Laumento significativo di velocit rispetto al protocollo FMS deriva sostanzialmente dellutilizzo del servizio SRD (Send and Receive Data) del Livello 2 del protocollo,

186

che consente la trasmissione di dati di ingresso e di uscita in un singolo ciclo di messaggio. Profibus DP prevede due tipologie di master: DPM1 per la gestione degli slave; DPM2 per lo svolgimento delle funzioni di gestione (diagnostica e programmazione). Vi possono essere pi DPM1 ciascuno con il suo gruppo di slaves anche se tra loro i DPM1 non comunicano; possibile invece la comunicazione tra un DPM1 e un DPM2. Comunque, la velocit elevata di trasmissione non rappresenta lunico elemento che ha determinato il successo della versione DP del protocollo Profibus; procedure di installazione e servizi semplici, potenzialit diagnostiche e trasmissioni senza errori sono caratteristiche altrettanto importanti per gli utilizzatori. La seguente Tabella illustra gli aspetti pi salienti di Profibus DP:

187

188

Profibus DP riconosce tre differenti tipi di dispositivi: DP Master Class 1 (DPM1): un controllore centrale che scambia informazioni con le stazioni decentralizzate a lui assegnate (DP slave) allinterno di un ben definito ciclo di messaggio. Gestisce la trasmissione dei dati utente e pu comunicare con i dispositivi DP Master Class 2. Tipicamente appartengono a questa classe PLC e PC; DP Master Class 2 (DPM2): sono utilizzati nella fase di configurazione o nelle necessarie operazioni di monitoraggio e diagnostiche. Appartengono a questa classe i dispositivi di programmazione, di configurazione e pannelli di controllo; DP Slave: sono stazioni periferiche (dispositivi di I/O, trasmettitori, Human Machine Interface HMI, valvole ecc.) che ricevono dati in input (richieste) e/o spediscono in output informazioni al controller (risposte). Sono indirizzabili da entrambi i tipi di master. Profibus DP gestisce sistemi mono-master/slave o multi-master/slave e implementa la comunicazione punto-punto, broadcast e multicast. Pu essere utilizzata una modalit di comunicazione multicast, solo per diffondere comandi di controllo globali da parte di entrambi i tipi di master verso un gruppo di slave DP, o da parte di un dispositivo DPM2 verso un gruppo di DPM1. Profibus DP opera senza connessione, tuttavia a livello sorgente e a livello destinazione, possibile accedere a dei servizi specificando nel telegramma i Service Access Point (SSAP, DSAP). Su un unico bus possono essere connessi fino a 126 dispositivi (master e/o slave) e, dato che vi deve essere almeno un master di tipo DPM1, in una rete possono essere collegati fino a 125 slave. In una comunicazione di tipo master/slave il master (DPM1 o DPM2) a possedere il controllo, mentre in una comunicazione master/master il dispositivo DPM2 e gestire linterazione. Non definita nessuna forma di comunicazione tra dispositivi della stessa categoria (esempio la comunicazione tra DPM1 e DPM1). La quantit di informazione scambiata tra stazioni dipende dai tipi di dispositivi in comunicazione; al massimo si possono trasferire 246 byte di dati sia in input che in output. Nei sistemi mono-master un solo master attivo durante la fase operativa. Solo in questo tipo di configurazione possibile ottenere i pi corti cicli di bus permessi dal protocollo Profibus DP, quindi le prestazioni migliori in termini di velocit di

189

trasferimento dati. La struttura di un sistema mono-master mostrato nella seguente Figura.

Nei sistemi multi-master pi stazioni attive sono collegate al bus in fase operativa. Laccesso al mezzo consentito alla sola stazione attiva che possiede il token, il quale viene trasmesso tra i master presenti in rete lungo un anello logico, definito in fase di inizializzazione del sistema. Ciascun master, insieme agli slave che pu indirizzare, rappresenta un sottosistema indipendente. C da precisare che gli ingressi e le uscite degli slave possono essere lette da qualsiasi master. Le restrizioni esistono solo in fase di scrittura, operazione permessa al solo master (DPM1) a cui uno specifico slave stato assegnato durante la configurazione di sistema. Le comunicazioni tra master di Classe 1 sono limitate ai messaggi di scambio del token. Ogni master possiede una lista dei master attivi nella quale compare lui stesso, il master che gestisce il token prima e dopo di lui. Tale lista dinamica. Il master che ha il token pu scambiare dati con gli slave per met del tempo di mantenimento del token. Il tempo di ciclo definito dal tempo di rotazione del token. Le prestazioni non eguagliano quelle ottenibili con una configurazione mono-master, soprattutto se il numero di master supera le tre unit. La struttura di un sistema multi-master mostrato nella seguente Figura.

190

E importante sottolineare che possibile connettere/sconnettere in linea un nuovo utente (attivo o passivo) e la configurazione di rete vi si adatta; in particolare ogni nodo attivo ha la responsabilit di rilevare eventuali nodi aggiunti tra il proprio indirizzo e il successivo. Tutte le stazioni di un sistema Profibus DP devono aver assegnato un indirizzo sul bus. Per gli slave DP tale indirizzo potr essere definito anche via bus dai soli dispositivi DPM2. La configurazione di sistema consiste nel definire il numero di stazioni, assegnare gli indirizzi delle stazioni e quelli di I/O, il formato dei dati di I/O, il formato dei messaggi diagnostici ed i parametri del bus utilizzati. Un DPM1 pu essere configurato localmente o attraverso il bus da un DPM2. Un DPM1 pu trovarsi in 3 stati: Stop (non comunica dati con gli slave); Clear (legge dati dagli slaves, ma ne mantiene le uscite in uno stato di sicurezza); Operate (comunica ciclicamente con gli slave scambiando ingressi e uscite). Un DPM2 pu comunicare con un DPM1 leggendo o scrivendo i dati, abilitando o disabilitando la comunicazione con uno slave o forzando il suo stato. Uno slave pu trovarsi in 3 stati: Parametrizzazione: lo slave riceve alcune informazioni fondamentali riguardo il suo pieno o parziale supporto delle funzionalit previste, nonch il numero di identificazione, e verifica tali informazioni con quelle in suo possesso dando eventuali segnalazioni di difformit; Configurazione: vengono specificati il numero dei byte di ingresso e uscita;

191

Trasferimento dati: avviene lo scambio dati con il master selezionato. Quindi, ricapitolando, se una stazione master DP vuole comunicare con un dispositivo slave DP, deve innanzitutto verificarne lo stato attuale (es. se il dispositivo collegato in rete, o se occupato da un DPM2) attraverso la richiesta delle informazioni diagnostiche. Se non emerge alcun problema, si passa alle successive fasi di parametrizzazione e di verifica dei dati di configurazione, al termine delle quali dovranno essere richieste nuovamente le informazioni diagnostiche per verificare se sono presenti errori di parametrizzazione e/o configurazione o se lo slave DP gi occupato con un altro master DP oppure se lo slave DP non ancora pronto per comunicare. Per quanto concerne la diagnostica, ogni slave provvisto di watchdog, che deve essere sovradimensionato rispetto al tempo di ciclo, mentre il master gestisce un timer per ogni slave a garanzia che almeno una trasmissione valida venga effettuata entro un certo tempo. Lintegrit dei messaggi o telegrammi assicurata da un penultimo byte di Frame Chech Sequenze e dal bit di parit per ogni byte che, grazie ad unopportuna scelta dei codici funzionali o alla ridondanza di informazioni, garantisce distanza di Hamming pari a 4. Per quanto riguarda la segnalazione di anomalie e guasti di una stazione, si distinguono guasti a livello di stazione, modulo e canale. Nel complesso Profibus DP pu essere considerato pi come un bus di cella che come un bus specificatamente dedicato ai sensori e attuatori di tipo semplice; inoltre qualsiasi costruttore che fornisca il proprio sensore di interfaccia Profibus slave, deve subire un costoso processo di certificazione. Questo rappresenta uno dei vincoli che limita la comparsa sul mercato di sensori con interfaccia Profibus. Profibus DP si rivela uninterfaccia piuttosto gravosa, tanto che ad oggi non vi sono microcontrollori di uso comune che lo integrano a bordo come periferica. Linterfaccia di sensori economici verso Profibus DP viene oggi realizzata o indirettamente attraverso i PLC, o mediante appositi moduli concentratori, che sono moduli di ingresso e uscita, logica e analogica, con interfaccia Profibus gestita mediante firmware residente.

www.profibus.com

192

6.15 Tabelle comparative sui bus di campo Tabella 1

Tabella 2

193

Tabella 3

194

Tabella 4

195

Tabella 5

196

6.16 Bibliografia 1. Article 268 Tables, www.controldesign.com. 2. Automation, www.epanorama.net/links. 3. Domenico Prattic: Levoluzione dei sistemi di comunicazione nellautomazione e nella gestione di processi industriali, Universit degli studi di Genova, 2006. 4. Fieldbus Specialist: Technical Information, 1997. 5. Fieldbus Technology, Burkert - Fluid Control System 6. Francesco Venturini: I bus di campo isocroni Profibus DP V2 e Profinet I/O, Universit degli studi di Brescia. 7. Giuseppe Tognini: Studio, progetto e realizzazione di un analizzatore di traffico su rete CAN, Universit degli studi di Pisa, 2003. 8. Control Engineering Fellowship of the Fieldbuses?, http://www.manufacturing.net. 9. Control Techniques: Fieldbus Guide. 10.Ilaria De Poli-Paolo Pinceti: Sogno o son desto?, Fieldbus & Networks, 2006. 11. J.C. Orsini: Fieldbus: a user approach, Schneider Electric. 12.John S. Rinaldi: Industrial Automation Networking 2004 & beyond, www.rtaautomation.com, 2004. 13.Jim Montague: Fellowship of the fieldbus, Control Engineering, 2004. 14. Massimo Giussani: Controllo con Sercos, Fieldbus & Networks, 2004. 15.Massimo Giussani: Il protocollo Modbus, Fielbus & Networks, 2005. 16.Paolo Pinceti: Piattaforme integrate per sistemi di automazione: dal fieldbus al software, Fieldbus & Networks, 2005. 17.Prof. Alessandra Flamini: Sistemi centralizzati e distribuiti, Universit di Brescia. 18.Prof. Alessandra Flammini: Sistemi logico programmabili Cap. 3 I sistemi distribuiti, Universit degli studi di Brescia. 19.Prof. Dr. Hubert Kirrmann: Industrial Communication Systems - Field bus: standards, ABB Research Center - Baden - Switzerland, 2005. 20.Reti di fabbrica e impianti aziendali, Universit degli studi di Brescia, 2003. 21.Sang Geon Park: Fieldbus in IEC61158 Standard, 2002. 22.Simone Stocco: I bus di campo Capitolo 5, Universit degli studi di Padova. 23.The Grid Connect Fieldbuss Comparison Chart, www.gridconnect.com, 2006.

197

24.Valerio Alessandroni: Due temi caldi, Fieldbus & Networks, 2006. 25.Valerio Alessandroni: La tecnologia dei fieldbus, Fieldbus & Networks, 2005.

198

Capitolo 7 ETHERNET INDUSTRIALE 7.1 Introduzione La storia di Ethernet nellautomazione industriale ha avuto un inizio non proprio felice. Anzi, dopo la sua nascita negli anni 70, Ethernet viene bandita dallautomazione per pi di quindici anni perch tacciata di non determinismo. Solo sul finire degli anni 90, grazie allevoluzione tecnologica, che ha portato da un lato allintroduzione delle LAN commutate e dallaltro ad un aumento sostanziale delle velocit di trasmissione, con connessioni a 100 Mbps prima e 1 Gbps poi, ci si decisi a considerare Ethernet come una tecnologia di riferimento anche per le comunicazioni allinterno della fabbrica. Di conseguenza, numerosi produttori hanno iniziato ad affiancare alle proprie soluzioni per la connessione di dispositivi basate su bus di campo, altre soluzioni basate su rete Ethernet con lo scopo di ottenere una rete Ethernet Industriale deterministica; ad esempio Ethernet/IP, Profinet, Ethernet Powerlink, EtherCAT, Modbus TCP, Sercos-III. Il problema che ora si sta assistendo a una proliferazione di soluzioni diverse e fra loro incompatibili: ci positivo, perch stimola i costruttori di soluzioni basate su reti Industrial Ethernet a cercare di migliorare la propria tecnologia di comunicazione per renderla pi performante; ma potrebbe in qualche modo spiazzare gli utenti e potrebbe preludere a una situazione simile a quella che negli anni 90 ha determinato la guerra dei bus di campo. Dopo aver dominato le reti al livello gestionale e conquistato una parte delle reti a livello di supervisione e controllo di processo, Ethernet comincia a insinuarsi anche sul piano di fabbrica a livello di I/O come sostituto dei tradizionali bus di campo. Questa ulteriore espansione accompagnata da una comprensibile resistenza sia sul fronte degli utilizzatori, restii ad abbandonare una tecnologia matura, robusta e consolidata quale quella dei bus di campo, sia su quello dei produttori che temono la concorrenza associata allapertura caratteristica della connettivit Ethernet. Un tempo, a legare a doppio filo utilizzatore e produttore erano i diversi tipi di bus di campo; oggi, nonostante la tanto decantata (e in larga parte giustificata) interoperabilit di Ethernet, sono i protocolli di livello superiore a svolgere una simile funzione. Ecco allora un panorama dove una sola Ethernet Industriale, standard nel
199

cablaggio strutturato e negli strati pi bassi della pila ISO/OSI, si concretizza per mezzo di diversi dialetti negli strati pi alti, i quali richiamano i bus di campo dai quali si invocava laffrancamento. I vantaggi per gli utilizzatori industriali che scelgono di passare a Ethernet sono, nonostante questo, ben tangibili. La Figura seguente mostra un rete industriale Ethernet.

La progressiva migrazione di Industrial Ethernet fino alla fabbrica ha posto le basi per la maturazione del processo di standardizzazione anche per tale ambito industriale. Lo spostamento verso una singola tecnologia standard favorisce il progresso delle architetture aperte incoraggiando ovviamente i produttori a perseguire tale strada. La convergenza tra la richiesta e lofferta produce effetti sinergici sia sotto il profilo economico sia dal punto di vista tecnico. Lutilizzazione anche a livello di fabbrica di Industrial Ethernet, garantisce un elevato livello di funzionalit e flessibilit per unampia gamma di applicazioni elevando la produttivit e lefficienza dei reparti attraverso un efficace flusso trasversale e verticale delle informazioni.

200

La dimostrazione della maturit delle reti convergenti basate su Ethernet fornita anche dalle applicazioni basate sulle transazioni in Real-Time (RT) per ci che attiene alle operazioni, alle prestazioni, allarchitettura, alla disponibilit e conformit agli standard riconosciuti. La maggior parte delle aziende manifatturiere mantiene ancora oggi una separazione netta tra le reti di fabbrica rispetto ai restanti sistemi di comunicazione aziendali creando settori dedicati alle differenti esigenze aziendali. In funzione degli specifici requisiti possibile esercitare una suddivisione macroscopica di tali aree suddividendo limpianto di comunicazione aziendale in sistema di rete direzionale, di controllo e dei dispositivi. Il primo ambito di rete supporta tradizionalmente le funzioni amministrativocontabile, di gestione del personale, degli acquisti, ecc., attraverso la tecnologia Ethernet standard. Il secondo livello ha lo scopo di interconnettere i sistemi di controllo e di monitoraggio della fabbrica come i PLC, i controllori basati su tecnologia PC, i rack di I/O oltre ai sistemi HMI. Tale ambito applicativo , solitamente, occupato da sistemi di rete con tecnologie e standard che necessitano di apparecchiature idonee (gateway, ROUTER) per tradurre e trasmettere i contenuti informativi verso le reti Ethernet. Tale passaggio e transcodifica unisce due ambiti aziendali altrimenti distinti permettendo il colloquio tra il livello di controllo di fabbrica e linfrastruttura del vertice aziendale. Lultimo livello, comunemente utilizzato nellautomazione di fabbrica, costituito dallinfrastruttura di rete tra i dispositivi. Tale impianto ha il compito di collegare gli I/O della fabbrica (per esempio sensori, ecc.) agli apparati di automazione (attuatori, sistemi robotizzati, ecc.). I protocolli utilizzati per tale tipo di interconnessione sono tradizionalmente a elevata affidabilit anche se carenti dal punto di vista dei volumi di scambio dei dati e della connettivit con i livelli di rete superiori. Tale infrastruttura si evoluta per supportare trasmissioni in qualsiasi condizione ambientale compresa quella con elevati livelli di rumore. Dal punto di vista sistemico offrono, per, il fianco alla reale e persistente necessit del mercato di disporre di mezzi di comunicazione evoluti, flessibili, economici, ma soprattutto standardizzati per tutti i livelli della piramide aziendale.

201

Il principale svantaggio della gestione di settori di interconnessione distinti costituito dal livello basso di efficienza e produttivit delle comunicazioni, determinato dalle evidenti difficolt di trasmissione dei dati tra la fabbrica e lo strato dei software gestionali come ERP (Enterprise Resource Planning), EPM (Enterprise Project Management), MES (Manufacturing Execution System), ecc. In caso di difformit dei protocolli di trasmissione, la comunicazione verticale pu essere esercitata, infatti, solo mediante idonei strumenti di decodifica delle informazioni con evidenti limiti nellimplementazione di sistemi RT di monitoraggio, manutenzione e pianificazione. Il livello fisico, del modello ISO/OSI dei sistemi di trasmissione di fabbrica , inoltre, tradizionalmente di tipo proprietario. Tale aspetto porta spesso a un aggravio dei costi di progettazione, installazione e manutenzione delle architetture trasmissive. Ulteriori svantaggi della eterogeneit delle piattaforme sono la mancata ottimizzazione e condivisione delle conoscenze inerenti alle tecniche applicative delle reti oltre a un incremento progressivo della complessit dellinfrastruttura di interconnessione durante le fasi di sviluppo e crescita della fabbrica. Non da dimenticare, altres, la limitazione determinata dalla larghezza di banda. I sistemi tradizionali di controllo si basano su larghezze di banda non sufficienti per lestensione delle applicazioni di automazione e controllo dei sistemi. Una banda ridotta limita, infatti, le potenzialit di trasmissione di tipo RT impedendo luso di
202

strumenti e dispositivi a elevati volumi di scambio (trasmissione vocale, immagini, ecc.). La penetrazione nel mercato della fabbrica di Industrial Ethernet conseguente alla sua struttura basata sul Data Link Layer standard anche se laffermazione degli ultimi anni dovuta maggiormente alla sua crescente affidabilit. Le reti dedicate al controllo e alla gestione dei dispositivi del campo sono ottimizzate per fornire prestazioni deterministiche con limitati livelli di latenza. Tali intervalli (100 Mbit/s, full duplex, switched network) sono ora dellordine di grandezza dei millisecondi, che soddisfa ampiamente la maggior parte delle applicazioni tipiche di fabbrica. La comunicazione orizzontale tra i reparti e verticale nelle funzioni riveste notevole importanza allinterno delle logiche di ottimizzazione di impresa. Le logiche di comunicazione estesa portano a livelli di efficienza e produttivit maggiori grazie a trasmissioni RT configurate ed estese a favore di partner aziendali. Tali caratteristiche permettono la collaborazione elettronica con fornitori, clienti o appaltatori tramite un idoneo indirizzamento IP (Internet Protocol) ottenendo informazioni dedicate negli istanti di interesse. Lapplicazione di una tecnologia standard rende, inoltre, il mercato sempre pi competitivo inducendo i produttori a concorrere per la riduzione dei prezzi.

203

Per concludere, si possono elencare alcuni vantaggi derivanti dallintroduzione di Ethernet nellautomazione industriale: Molte opzioni di connettivit tra molteplici dispositivi, integrazione con i livelli applicativi superiori (es. supporto al traffico TCP/IP), connessione diretta a Internet e diagnostica in remoto tramite comuni browser (es. Internet Explorer); Ethernet una tecnologia ben conosciuta e ben collaudata, ovunque, lo standard de-facto per il networking ed supportata dal mondo dei PC; Basso costo hardware e disponibilit di processori con interfaccia Ethernet integrata (come in CAN per esempio); Banda elevata (anche 1 Gbit/s), molto maggiore di quella offerta dai bus di campo (12 Mbit/s per Profibus-DP); Facilit di installazione, utilizzo, manutenzione; Mezzo di comunicazione ideale per i nuovi tipi di nodo a livello di campo (es. soft-PLC, web sensor,); Integrazione con nuove tecnologie (es. fibra ottica, Wireless-WiFi,), di nodi e/o sottoreti; Disponibilit di strumenti ICT (Information Communication Technology), ad esempio strumenti basati su PC (es. Ethereal), simulatori, analizzatori di rete; Integrazione verticale delle comunicazioni sul campo con i livelli superiori dellimpresa. La Figura seguente mostra la distribuzione nel mercato industriale di protocolli Industrial Ethernet nel 2010 (Fonte: Arc-Advisory Group del 2004).

204

7.2 Esempio di confronto tra soluzioni diverse Come differiscono le prestazioni, in termini di Real-Time, di diverse soluzioni basate su Industrial Ethernet ? Il punto fondamentale che le prestazioni in termini di Real-Time non sono assolute, ma dipendono sempre dal contesto. A titolo esemplificativo possibile confrontare il comportamento di cinque diverse soluzioni in un caso applicativo Real-Time di controllo multi-asse per cui 100 assi devono essere controllati contemporaneamente. Il criterio di valutazione delle misure, riportate nella seguente Tabella, basato sulle prestazioni in termini tempo di risposta (Response Time) e distorsione (Jitter, ovvero, la variazione del tempo di risposta).

Dal confronto evidente come nel complesso tutte hanno tempi di variazione della risposta inferiori al millisecondo con prestazioni di un ordine di grandezza superiori per Sercos-III ed EtherCAT rispetto Ethernet Powerlink, Profinet-IRT ed Ethernet/IP. Da tale confronto sembrerebbe che tale criterio determini le prestazioni migliori, anche se, dal punto di vista dellutente finale, la valutazione non pu basarsi soltanto su valori puntuali delle prestazioni, ma bens sulla capacit della soluzione di adattarsi
205

al meglio a tutti i requisiti applicativi. Esistono, infatti, controlli multi-asse che non richiedono prestazioni superiori a quelle fornite da Ethernet/IP. Bus di campo specializzati per il controllo multi-asse come Sercos-II o Profibus-DP non sono necessariamente migliori dei nuovi sistemi basati su Industrial Ethernet. Infine, tempi di risposta di alcuni millisecondi in applicazioni di controllo multi-asse sono per la maggior parte delle volte adeguati. Nella seguente Tabella si confronta il comportamento di bus di campo come Sercos-II e Profibus-DP con Industrial Ethernet in funzione del numero di pacchetti di dati inviati per millisecondo.

Come evidente, il volume di scambio per Ethernet pressoch uguale a Sercos-II (con Sercos-II un pacchetto passa attraverso tutte le stazioni e il suo vantaggio relativo aumenta pi stazioni sono connesse) e doppio rispetto a Profibus-DP.

206

7.3 Real-Time (RT) I sistemi Real-Time (RT) non implicano automaticamente unesecuzione pi rapida dei processi che devono svolgere, ma legano lavanzamento dei processi in modo che rispettino una ben precisa esecuzione temporale. Tali sistemi sono quelli in cui il corretto funzionamento non dipende solamente dalla validit dei dati forniti (corretti oppure no), ma anche dal momento della loro disponibilit temporale. Un sistema Real-Time deve garantire il successo nellesecuzione del processo entro certi tempi noti senza che non vengano oltrepassati. Se il sistema non soddisfa questi requisiti detto sistema Non Real-Time (NRT). La seguente Figura mostra un semplice esempio di rete non Real-Time.

I sistemi Real-Time si suddividono in due categorie: HARD Real-Time (HRT); SOFT Real-Time (SRT). I sistemi HRT sono quelli per i quali non in nessun caso permesso il superamento della timeline (linea temporale), pena eventi irrecuperabili per il sistema di automazione come il danneggiamento dello stesso. Tali sistemi sono presenti, per esempio, nei sistemi di controllo degli aerei e dei treni dove un errore pu avere conseguenze disastrose. I sistemi SRT, non sono cos fragili come quelli HRT e tollerano il superamento della timeline. Un errore in un sistema di questo tipo non causa la perdita del controllo del sistema o eventi disastrosi, anche se preferibile che non avvenga. Esempio di sistemi SRT sono le applicazioni multimediali in streaming.
207

Un Job (un qualunque processo che il sistema deve eseguire) in un sistema RT, costituito da pi blocchi temporali, ogni Job ha a disposizione un determinata quantit di tempo per essere portato a termine. Il significato dei tempi della seguente Figura :

Release Time: definisce listante in cui il Job diventa disponibile per il sistema; Ready Time: listante in cui un nuovo Job pu andare in esecuzione (maggiore o uguale al Release Time); Execution Time: tempo necessario al completamento del Job da parte del sistema; Response Time: intervallo di tempo tra listante di Release Time e quello di completamento dellesecuzione, Deadline: tempo entro il quale lesecuzione deve essere terminata, in caso di superamento si ha un ritardo nellesecuzione del Job;
208

Latency: la latenza lintervallo temporale tra il tempo in cui disponibile il Job (Release Time) e il tempo in cui inizia la sua esecuzione (Ready Time). Anche le Deadline possono essere di tipo HARD o SOFT, indicando cos il tipo di dipendenza temporale del relativo Job. Come detto prima, un superamento di una HARD Deadline pu avere serie conseguenze per il funzionamento correto del sistema. Il Jitter lintervallo di variazione temporale dei tempi visti sopra. Tutti i sistemi RT hanno un determinato livello di Jitter per quanto riguarda la temporizzazione. In un sistema RT il Jitter deve essere conosciuto e limitato ad un piccolo intervallo di tempo in modo da potere garantire le prestazione del sistema. Per realizzare un sistema RT distribuito in cui sono presenti pi computer connessi in rete fondamentale implementare una comunicazione affidabile e tempestiva. I processori distribuiti che eseguono applicazioni Real-Time, devono poter contare sulla possibilit di comunicare tra di loro tramite un protocollo RT (Real-Time Communication). Tale comunicazione su rete RT pu essere HARD o SOFT in dipendenza dai requisiti del sistema e dai Job in esecuzione che comprendono la trasmissione e la ricezione dei loro messaggi. Realizzare una comunicazione Real-Time basandosi sullarchitettura Ethernet garantisce grossi benefici rispetto alle altre tecnologie. Utilizzando una rete di controllo basata su Ethernet a 1 Gbps si ha a disposizione una larghezza di banda 100 volte maggiore rispetto agli attuali bus di campo (ad esempio 12 Mbps con Profibus). Le applicazioni di tipo distribuito impiegate nellautomazione richiedono una precisa sincronizzazione in modo tale da garantire che i tempi di consegna delle informazioni siano garantiti. Normalmente sia la tecnologia Ethernet che quella dei bus di campo tradizionali non possono garantire il rispetto di tempi di ciclo inferiori ad alcuni millisecondi, ma lo sviluppo di nuove tecniche basate sullutilizzo di Ethernet sono arrivate a garantire tempi di risposta dellordine dei microsecondi. Con laumentare della sincronizzazione e della larghezza di banda a disposizione, le reti Real-Time Ethernet sono state standardizzate sia a livello IEEE che ISO, dando cos la possibilit ai produttori di utilizzare questo nuovo standard sia per quanto riguarda il livello Fisico sia quello del Data Link Layer.

209

Nellautomazione industriale sono impiegati vari tipi di reti Real-Time (Profibus, CANopen, eccetera), ma nessuna di queste ha la diffusione e la larghezza di banda offerta da Ethernet.

210

7.4 Ethernet e il determinismo Il determinismo di un sistema legato alla sua capacit di rispondere alle sollecitazioni entro un intervallo di tempo prestabilito e noto, quindi appunto determinato ( nota la latenza massima). Una rete basata sul protocollo CSMA/CD, come quella di Ethernet, intrinsecamente non deterministica per il semplice fatto che a prescindere dalla velocit a cui opera, i ritardi che si possono verificare a seguito del ripetersi di collisioni tra i pacchetti di dati non sono prevedibili a priori e pertanto non permettono di garantire che un dato messaggio giunga a destinazione entro un determinato numero di millisecondi (problema che diventa tanto pi grave quanto pi la rete Ethernet soggetta ad un alto traffico dati). La Figura seguente mostra il funzionamento di CSMA/CD.

Una rete Ethernet quindi non in grado di garantire una comunicazione di tipo Real-Time, aspetto non accettabile nelle applicazioni di controllo nellautomazione industriale. La seguente Figura riporta lordine di grandezza dei tempi di ciclo di comuni applicazioni di controllo nellautomazione industriale.

211

Tuttavia, se si progetta oculatamente la rete possibile fare in modo che le collisioni e i ritardi siano talmente limitati da non incidere sul determinismo. Da un lato il ricorso a reti commutate full-duplex (con full-duplex, al contrario di half-duplex, un nodo pu trasmettere e ricevere i pacchetti di dati contemporaneamente) permette di considerare le connessioni tra i nodi alla stregua di connessioni punto-punto dove il rischio di collisione con i messaggi provenienti da altri nodi limitato ai soli dispositivi che cercano di comunicare simultaneamente con lo stesso nodo. Gli stessi SWITCH, dal canto loro, aggiungono una latenza che deriva dalla necessit di leggere i pacchetti almeno quel tanto che basta per identificarne la destinazione, ma in genere il ricorso alla tecnologia Ethernet ad alta velocit (Fast Ethernet e Giga Ethernet) permette di rendere minima lincidenza sul comportamento della rete. La creazione di domini di collisione separati (segmentazione della rete), ad esempio tramite limpiego di SWITCH, permette inoltre di eliminare dalle porzioni di rete pi sensibili al problema del determinismo tutto quel traffico che andrebbe inutilmente a incidere sugli SWITCH, come nel caso delle trasmissioni di tipo broadcast che verrebbero altrimenti inviate su tutti i segmenti. In linea di massima la creazione di domini di collisione limitati tramite SWITCH e il mantenimento del traffico di rete al di sotto di una determinata soglia permette di risolvere unampia fetta delle esigenze di determinismo nel mondo dellautomazione industriale. La seguente Figura mostra limpiego di uno SWITCH in una rete.

212

Una modalit di trasmissione che ben si presta allimpiego nei sistemi di controllo industriali quella di tipo editore-abbonato (publisher-subscriber). A differenza della modalit punto-punto che richiede una connessione diretta tra i due nodi, e quella di tipo client-server che necessita di un server centrale che potrebbe rallentare le comunicazioni, la modalit editore-abbonato prevede linvio dei dati opportunamente contrassegnati a tutti i terminali simultaneamente e senza richiesta preventiva. Un breve richiamo sulle modalit di trasmissione: Client/Server (Cliente/Fornitore): Lo scambio di dati avviene fra due dispositivi. Il cliente richiede un dato a uno specifico fornitore (es. la lettura di un trasduttore) che immette il dato sulla rete con lindicazione dellindirizzo del nodo richiedente. Producer/Consumer (Produttore/Consumatore): Lo scambio di dati avviene con lintermediazione di un distributore. Il produttore fornisce periodicamente al distributore il dato di sua pertinenza (ad es. laggiornamento del valore di una grandezza misurata, o di una variabile di comando per un azionamento), ma il dato messo a disposizione di tutti i consumatori che lo richiedano ed valido fino alla emissione di un nuovo valore aggiornato da parte del produttore. Il consumatore trova quindi sempre a sua disposizione un dato aggiornato.
213

Peer to Peer: Un nodo connesso alla rete pu essere in ogni istante client e server per lo stesso servizio.

Un ulteriore passo nella direzione di un maggior determinismo stato fatto dallIEEE con la specifica IEEE 802.1P che si occupa della Qualit del Servizio (QoS, Quality of Service) e che copre laspetto della prioritizzazione dei messaggi. La specifica contempla la marcatura delle trame Ethernet con un livello di priorit compreso tra 0 e 7 che viene utilizzato dagli SWITCH per stabilire in che ordine smistare i messaggi memorizzati nel loro buffer. In questo modo si riduce ulteriormente lincidenza del traffico non critico sui dati di maggior importanza ai quali verr assegnata la priorit pi alta. E bene notare, comunque, che non ci sono garanzie circa la banda disponibile e la massima latenza, e che i messaggi a bassa priorit potrebbero subire ritardi consistenti se il traffico ad alta priorit elevato. Tuttavia, sebbene il determinismo vero e proprio non possa essere raggiunto, una rete Ethernet opportunamente progettata pu fornire prestazioni conformi a quanto ci si aspetterebbe da un tradizionale e deterministico bus di campo. Ovviamente per poter sfruttare il meccanismo di prioritizzazione dei messaggi necessario dotarsi di
214

SWITCH compatibili con la specifica IEEE 802.1P e prevedere un traffico ad alta priorit tale da non saturare a propria volta la rete. La definizione dei livelli di priorit viene realizzata utilizzando tre bit di una estensione da 4 byte prevista dagli standard IEEE 802.1P e IEEE 802.1Q: la trama originaria Ethernet viene difatti aumentata di quattro byte, passando da 1518 a 1522 byte, preambolo e delimitatore di trama esclusi. Una parte di questi quattro ottetti (esattamente dodici bit) viene impiegata per specificare lidentificativo di VLAN o LAN virtuale. La seguente Figura mostra come funziona la priorit in uno SWITCH.

Lintroduzione del concetto di VLAN (IEEE 802.1Q), nelle reti Ethernet industriali permette di operare unulteriore separazione del traffico in modo da limitare ulteriormente il propagarsi di pacchetti estranei sulle porzioni di rete che devono esibire un comportamento deterministico. La seguente Figura mostra come opera una VLAN.

Ladozione di protocolli di livello superiore che impacchettino in maniera efficiente i dati da comunicare, spesso di pochi byte se non addirittura costituiti da singoli bit
215

provenienti dai sensori, aiuta inoltre a rendere pi veloce il trasferimento delle informazioni utili da un punto allaltro della rete riducendo sensibilmente il traffico totale. La seguente Figura mostra alcuni protocolli di livello superiore di Industrial Ethernet nel modello ISO/OSI.

Grazie a tutti gli accorgimenti sopra descritti, possibile quindi ottenere una comunicazione Real-Time da una rete Ethernet anche a livello di campo nellautomazione industriale. Si pu quindi sicuramente parlare di Real-Time Ethernet (RTE). La seguente Tabella pu dare unidea delle capacit Real-Time di una rete Ethernet ben progettata in diverse situazioni di traffico.

216

Si consideri una rete Ethernet con una certa larghezza di banda (Bandwidth), nella quale vengono trasmessi un certo numero di messaggi di dati ogni secondo costante (Message Rate), di una dimensione fissa di byte (Packet Size). Con Tmax (in millisecondi), indicata la Deadline imposta da rispettare. La colonna Time (in anni, giorni od ore) riporta, con una probabilit del 99%, il lasso di tempo minimo certo affinch la Deadline imposta non sia oltrepassata di oltre 1 millisecondo a causa di ritardi dovuti a collisioni sulla rete. Ad esempio, per una rete a 100 Mbit/s sulla quale imposta una Deadline di 1 millisecondo, nella quale sono inviati 1000 messaggi di dati ogni secondo, dove ogni messaggio ha dimensione di 128 byte, la probabilit al 99% di un ritardo maggiore di 1 millisecondo (a causa di possibili collisioni) rispetto la Deadline imposta, ha un orizzonte temporale di almeno 1140 anni. Se per la larghezza di banda si riduce a solo 10 Mbit/s e la Deadline pari a 2 millisecondi, tale lasso di tempo si riduce a solamente unora.

217

7.5 Ethernet e la ridondanza Un aspetto di grande interesse per gli utilizzatori in ambito industriale senza dubbio quello della ridondanza. Ad oggi sono disponibili diverse soluzioni, alcune delle quali proprietarie, che si occupano di accrescere la robustezza di una rete Ethernet industriale offrendo strutture duplicate in grado di resistere alla messa fuori servizio di una parte dei componenti senza per questo richiedere la duplicazione dellintera rete. Le soluzioni approntate dalla standardizzazione da parte dellIEEE si incentrano sul concetto di Spanning Tree Protocol (lattraversamento delle strutture ad albero) che rientra nelle specifiche IEEE 802.1D: la rete Ethernet viene realizzata con una struttura ad albero i cui collegamenti ridondanti vengono automaticamente disattivati durante il funzionamento (anche per evitare la creazione di anelli) fino a quando un guasto non rende necessaria la riattivazione. Il problema di questo approccio che il rilevamento dei guasti, la scansione della rete e la sua riconfigurazione presentano tempi (Recovery Time) che sono in generale troppo lunghi per limpiego in una tipica applicazione industriale (da 30 a 60 secondi). Esiste una versione recente e pi veloce chiamata Rapid Spanning Tree Protocol (IEEE 802.1W) nella quale i tempi di ferma del sistema si riducono a pochi secondi.

Una soluzione pi diffusa consiste nellaggregare i collegamenti: invece di disabilitare i percorsi ridondanti, li si aggrega tra loro considerandoli alla stregua di
218

ununica tratta come mostrato nella seguente Figura. Alle diverse soluzioni proprietarie di aggregazione dei link viene affiancata la specifica aperta IEEE 802.3AD. I diversi collegamenti fisici da raggruppare devono avere le medesime caratteristiche di velocit ed essere full-duplex; una volta aggregati vanno a realizzare un unico collegamento logico tra due elementi attivi dellinfrastruttura di rete (SWITCH o server) caratterizzati ciascuno da un solo indirizzo MAC. Tutti i frame inviati da un DTE (Data Terminal Equipment) o da un server vengono instradati su uno dei collegamenti del gruppo aggregato per essere poi gestiti e smistati dallelemento attivo allaltro capo. Il vantaggio, oltre a una forma di ridondanza con tempi di riconfigurazione brevi, che quando si hanno pi DTE in trasmissione vengono utilizzati pi collegamenti simultaneamente, con conseguente accrescimento della banda. In caso di guasto non si perde la funzionalit della rete, ma si verifica solo un rallentamento di una sua tratta.

219

Unulteriore alternativa aperta pu essere rappresentata dal ricorso allo standard IEEE 802.12D che unisce la tecnologia Ethernet alle reti di tipo Token Ring e, in particolare, permette di aggiungere collegamenti ridondanti alla rete. Come si pu osservare nella seguente Figura, gli SWITCH sono connessi tra loro in una topologia ad anello dove un suo ramo normalmente attivo (Active Bus), mentre laltro ramo dellanello (Backup) entra in funzione solo in caso di guasto del ramo principale. Con una soluzione di questo tipo, i tempi di ferma del sistema sono limitati solo a centinaia di millisecondi.

220

7.6 Protocollo IEEE 1588 (PTP) Nel settore dellautomazione industriale moderna si pu affermare che la produttivit di una macchina legata in modo diretto alla velocit di funzionamento dei suoi sensori e attuatori. Le architetture pi comuni per la realizzazione di un sistema altamente ripetitivo si basano su sistemi centralizzati, dove una sola unit centrale di elaborazione (CPU) comanda localmente tutti i punti di ingresso e uscita. semplice, infatti, associare un interrupt a un evento in ingresso in modo che sia riferibile al sistema di temporizzazione centrale; la CPU quindi pu elaborare e programmare lattuazione delluscita con uno sfasamento temporale ben preciso e ripetitivo rispetto allistante dellevento dingresso. Diverso il caso dei sistemi distribuiti, dove CPU, sistema di attuazione delle uscite e sistema di acquisizione degli ingressi sono solo dei nodi allinterno di una rete di comunicazione industriale. In questa situazione i tre nodi potrebbero avere riferimenti temporali sfasati tra loro e oscillatori locali la cui frequenza nominale soggetta a una certa tolleranza, cambiando al variare della temperatura (da 10 a 100 ppm/C) e di molti altri fattori (vibrazioni, rumore elettrico, eccetera). Ultimamente, le reti Ethernet per applicazioni industriali in tempo reale, dette Real-Time Ethernet (RTE), si stanno diffondendo nellambito dei collegamenti a livello di sensori e attuatori, grazie alle ottime prestazioni (100 Mbit/s) e al limitato costo dei dispositivi di interfaccia. Queste nuove tecnologie si stanno proponendo come soluzioni standard: il caso di Ethernet Powerlink, Profinet, EtherCAT, Ethernet/IP, ciascuna in grado di soddisfare in particolare un sottoinsieme delle esigenze delle applicazioni in tempo reale (Real-Time). In questo contesto diventa importante la sincronizzazione accurata di tutti i nodi che partecipano a una rete industriale per lautomazione distribuita, specialmente se in tempo reale. Esiste un approccio semplice ai problemi introdotti, che pu essere applicato se le distanze tra i nodi consentono di trascurare il ritardo di propagazione del segnale sul mezzo, come molto spesso avviene nei collegamenti industriali in tempo reale. Si pu infatti pensare che la CPU sincronizzi i nodi mediante linvio di messaggi di sincronizzazione di tipo broadcast, ossia diretti contemporaneamente a tutti i nodi della rete, come mostrato nella seguente Figura:

221

Ci non per facilmente applicabile ad una rete industriale basata su Ethernet, poich la presenza di SWITCH rende non trascurabili i ritardi di trasmissione. Se si mira solamente a ridurre (e poi a trascurare) i ritardi di trasmissione, gli HUB Ethernet sembrerebbero la soluzione ideale (ritardi introdotti sono dellordine del microsecondo), ma nellambiente industriale e pi in generale nelle applicazioni dove sentita lesigenza di determinismo, anche la probabilit di collisione deve essere ridotta al minimo. Agli HUB vengono perci preferiti gli SWITCH, che inoltrano i pacchetti Ethernet solo ai rispettivi destinatari, ma che aggiungono dei ritardi la cui entit dipende dallarchitettura e dalla tecnologia dello SWITCH stesso. Nelle Real-Time Ethernet, i messaggi Real-Time con esigenze di determinismo condividono il mezzo trasmissivo con il traffico TCP/IP a bassa priorit (supervisione di processo, diagnostica, funzioni dintegrazione). Il meccanismo di buffering di uno SWITCH tradizionale potrebbe quindi far aumentare il Jitter di ogni pacchetto fino ad oltre 100 us. Si fa notare che neppure le priorit e le VLAN definite dalle specifiche Ethernet (IEEE 802.1P, IEEE 802.1Q) possono ridurre questo tipo di Jitter. Molti dei protocolli Real-Time Ethernet si basano su uno standard internazionale unico per sviluppare le loro soluzioni di sincronizzazione: lo standard IEEE 1588. Esso definisce il Precision Time Protocol (PTP), il protocollo per scambiare le informazioni relative al tempo e la sincronizzazione temporale degli oggetti distribuiti su una rete. Questo protocollo pu essere usato per sincronizzare i clock di sistemi di misura o di sistemi di controllo. Molti protocolli per Real-Time Ethernet, supportano IEEE 1588 come metodo per la distribuzione di un riferimento di tempo unico per tutta la rete (per esempio Profinet, Ethernet Powerlink, e altri).

222

In questo modo possibile eseguire delle operazioni distribuite (campionamento, attuazione) svincolandosi dai ritardi introdotti dal mezzo trasmissivo. Secondo lo standard, gli oggetti (o nodi) di una rete sincronizzata tramite PTP possono essere: Ordinary clock: sono i componenti che possono comunicare con gli altri tramite un singolo percorso (fanno parte di una sola rete); Boundary clock: sono i componenti che possono comunicare con pi reti diverse (sono lequivalente dei gateway, ossia sono il punto di unione di due sottoreti diverse). Ogni oggetto che dispone di un clock ha anche un grado di qualit del proprio clock. Se il clock deriva da un orologio atomico o da un ricevitore GPS si ha la qualit massima in termini di stabilit, accuratezza e risoluzione; quindi si parla di GrandMaster Clock (GMC). In base alla qualit del clock, nella rete viene scelto il clock di rifererimento (il migliore tra quelli presenti nella rete) detto master clock, cio il componente che poi distribuisce il proprio clock agli altri, chiamati slave clock. In un sistema nel quale sono presenti diverse sottoreti, i relativi master clock dovranno sincronizzarsi con il GMC (se possibile). Lo scambio di un riferimento temporale allinterno di una rete a commutazione di pacchetto nato molto tempo fa nel settore delle telecomunicazioni e ha portato alla creazione dello standard NTP (Network Time Protocol). IEEE 1588-PTP levoluzione dello standard NTP (considerato non abbastanza affidabile per le applicazioni dell automazione industriale), ne migliora laccuratezza di sincronizzazione riducendone per lapplicabilit a poche sottoreti. La Tabella che segue, riassume le caratteristiche dei due protocolli raffrontate con le prestazioni relative alla sincronizzazione di elementi distribuiti nel caso si adotti una strategia basata su ricevitori GPS (Global Positioning System).

223

Si nota come la sincronizzazione tramite GPS risulti essere la migliore, ma per applicarla occorre dotare tutti i nodi di unantenna esterna e di un ricevitore dedicato, rendendone nettamente problematico lutilizzo in campo industriale. Sicuramente pi economico utilizzare una soluzione dove i dati di processo e quelli relativi alla sincronizzazione passano sullo stesso cavo. Lo standard IEEE 1588 non stato creato appositamente per le Real-Time Ethernet, ma affronta il problema in modo pi generale, definendo le modalit per descrivere la qualit dei clock in sistemi connessi da una rete generica. Nello specifico vengono descritti il modo di rappresentare il tempo, le operazioni a livello di protocollo di rete (PTP), la scelta del riferimento temporale e lo scambio di tali informazioni. Data la sua completezza, lo standard IEEE 1588 al momento sembra molto promettente come metodo di sincronizzazione essendo indipendente dalla tecnologia utilizzata e consentendo implementazioni scalabili da quella full-software, che soffre di forte interazione con il livello Applicazione, fino alla soluzione hardware. Nello standard prevista una negoziazione per lindividuazione della migliore sorgente di clock (master clock) tramite un algoritmo detto Best Master Clock (BMC). La sincronizzazione in PTP si basa sullo scambio di 4 tipi di messaggi come mostrato nella seguente Figura: Sync, Follow_Up, Delay_Request, Delay_Response.

224

Il master clock e lo slave clock possono essere sfasati di un certo offset temporale chiamato Off. Ossia si ha: Ts = Tm + Off. Con one_way_delay indicato il ritardo di trasmissione tra master e slave, assunto come identico in entrambe le direzioni. Quando il master clock invia il messaggio di Sync a uno slave rileva listante esatto di spedizione Tm1. Questo tempo (timestamp di trasmissione) pu essere messo nello stesso messaggio Sync oppure in un messaggio di tipo Follow-Up spedito successivamente. I messaggi di Sync si succedono a intervalli regolari (normalmente qualche secondo). Quando lo slave clock riceve il Sync rileva listante di ricezione Ts1 e cos pu impostare la prima equazione:

In seguito lo slave clock spedisce un messaggio di Delay_Request al tempo Ts2 che arriva al master nellistante Tm2. Listante di ricezione Tm2 viene anche comunicato allo slave per mezzo del messaggio Delay_Response.
225

Si pu quindi impostare unaltra equazione:

A questo punto lo slave clock ha tutti i tempi necessari e calcola:

Come detto si assumono i ritardi di trasmissione da master a slave e da slave a master identici. Quindi si ha:

Lo slave clock pu ora calcolare Off e one_way_delay:

Naturalmente questi calcoli sono validi solo se il ritardo introdotto sulla linea di comunicazione da e verso il master costante. Off continuamente aggiornato perch pu variare in seguito alla variazione del riferimento locale, mentre one_way_delay si pu considerare un valore statico in assenza di particolari condizioni di traffico (per esempio congestioni). Questa considerazione permette di aggiornare Off mediante linvio da parte del master di un messaggio di sincronizzazione seguito eventualmente dal messaggio di Follow-Up. Si ricorda che per laggiornamento della stima di Off devono essere applicati particolari algoritmi per filtrarne le brusche variazioni. Quando il protocollo PTP dello standard IEEE 1588 viene implementato su Ethernet si usa solitamente il protocollo UDP/IP e i suoi timestamp dovrebbero riferirsi al bit meno significativo del byte SFD (Start of Frame Delimiter) del frame Ethernet. Se la generazione dei timestamp data da una stima software dellistante in cui i pacchetti transitano sul cavo, si avranno dei problemi di Jitter, direttamente legati sia al software che implementa gli strati superiori dello stack sia al dispositivo periferico che implementa il MAC Ethernet. Lunico modo per sincronizzare due sistemi a meno di un microsecondo quello di utilizzare un hardware realizzato appositamente
226

che rilevi i tempi Tm1, Tm2, Ts1 e Ts2 a livello di MII (Media Independent Interface), ossia allinterfaccia tra il livello fisico e il sottostrato MAC. Agendo in questo modo si elimina il contributo di Jitter dovuto alle variazioni del tempo di esecuzione delle routine dello stack e al MAC, ma rimane il Jitter associato agli SWITCH. Infatti, nel caso di una rete Ethernet, one_way_delay dipende sicuramente dal numero e dalla tipologia di SWITCH che separano il master dallo slave. Per ovviare anche a questo problema lo standard prevede che gli SWITCH possano disporre di un proprio clock e che agiscano verso lesterno come boundary-clock. In pratica ci consiste nel non propagare i messaggi PTP (Sync, Delay_Request, ecc.), ma agire analogamente a uno slave clock rispetto ai messaggi provenienti dal master clock ed apparire come master clock per gli slave clock a valle. Anche ricorrendo a unimplementazione hardware ed alluso di SWITCH aderenti allo standard, possono permanere delle fluttuazioni sulla stima di one_way_delay e di Off per effetto della quantizzazione dei timestamp, del Jitter presente a livello Fisico e delle implementazioni degli SWITCH. Per ottenere sincronizzazioni nellordine di 100 nanosecondi, bisogna filtrare in modo statistico; ci pu rallentare la convergenza e richiedere un pi frequente invio del messaggio di sincronizzazione Sync da parte del master. In conclusione, tra tutte le metodologie di sincronizzazione si pu affermare che il recente standard IEEE 1588-PTP gi considerato un riferimento comune per la sincronizzazione dei nodi distribuiti su reti Ethernet, necessario in tipiche applicazioni come il controllo del movimento e la robotica. Tuttavia, IEEE 1588-PTP non modifica Ethernet rendendolo pi sicuro o deterministico, ma fornisce un metodo che permette ad altri protocolli di farlo. Un sistema costituito da pi nodi tra loro sincronizzati che sfrutti delle applicazioni per il controllo del traffico in grado di garantire una comunicazione in Hard Real-Time (HRT) con Ethernet. Unico punto da esplorare luso di IEEE 1588-PTP nelle applicazioni Wireless (WiFi), dove problemi legati alla comunicazione del segnale in presenza di interferenze distruttive o eventi eccezionali (ElectroMagnetic Interference-EMI), potrebbero influire pesantemente sugli algoritmi di sincronizzazione.

227

7.7 Lhardware in Ethernet Industriale Lhardware utilizzato per realizzare reti Ethernet non stato concepito per poter lavorare in condizioni estreme di temperatura, vibrazioni meccaniche, interferenze elettriche e magnetiche, la possibilit di portare lalimentazione a sensori e trasduttori con il medesimo cavo utilizzato per trasferire le informazioni o caratterizzate dallesposizione a solventi o altri agenti chimici corrosivi (situazioni che sono normali negli ambienti industriali). La seguente Tabella mostra le differenze di impiego di Ethernet in area ufficio e in area industriale.

228

I cavi e i connettori utilizzati dalle schede di rete dei PC da ufficio difficilmente resisterebbero a lungo se impiegati in una tipica applicazione industriale, ad esempio su un robot per le saldature allinterno di una catena di montaggio. Una delle possibili soluzioni a questo tipo di problemi pu essere quello di tenere lhardware ordinario, per quanto possibile, al riparo dalle sollecitazioni esterne, ricorrendo ad appositi mobiletti e a gusci protettivi per i connettori. Unaltra soluzione consiste nellutilizzare hardware appositamente progettato per sopravvivere negli ambienti severi (ad esempio utilizzando connettori industriali e circuiti stampati multistrato per aumentare la reiezione ai disturbi); il problema di questo approccio che la eterogeneit degli ambienti industriali tale da portare alla creazione di soluzioni multiple e questo rende difficile lemergere un singolo standard.

I CONNETTORI. Gran parte delle reti Ethernet tradizionali si appoggia ai connettori plastici di tipo RJ-45, visibile nella seguente Figura, che non sono in grado di sopportare le sollecitazioni termiche e meccaniche di un ambiente industriale.

229

I problemi sono infatti molteplici, dallintervallo di temperature limitato, alla scarsa resistenza agli agenti chimici, alla fragilit meccanica e agli effetti deleteri delle vibrazioni sulle placcature dorate dei contatti. Alcuni produttori hanno optato per connettori pi resistenti che comportano per la rinuncia ai bassi costi derivanti dallimpiego di componenti standard per i nodi e per linfrastruttura di rete. Limpiego di connettori circolari a 8 pin di tipo M12 (gli stessi utilizzati dai bus di campo DeviceNET e Foundation Fieldbus) e dei connettori di tipo DB-9 (quelli utilizzati per le porte seriali dei Personal Computer) rappresenta uno sforzo in questo senso. Esempi di connettori sono visibili nella seguente Figura.

Tuttavia il primo tipo non si presta allimpiego ad alte velocit, mentre il secondo non offre grandi possibilit di protezione dalle infiltrazioni. Altri produttori, proprio per preservare la compatibilit con lo standard su doppino, hanno deciso di racchiudere i connettori RJ-45 allinterno di gusci in grado di offrire il livello di protezione cercato: sono stati creati diversi consorzi che hanno portato a soluzioni indipendenti comunque riconducibili a copriconnettori ermetici, in grado di resistere alle sollecitazioni tipiche e dotati di serracavo incorporato per ovviare alla bassa resistenza allo strappo. Esempio di protezioni per connettori sono visibile nella seguente Figura.

230

Il ricorso a un copriconnetore di tipo M18, in grado di inglobare il jack RJ-45 e di garantire un livello di protezione IP67 rappresenta una delle soluzioni pi quotate al momento. Esempi di connettori RJ45 sono visibili nella seguente Figura.

Sul fronte delle fibre ottiche, i connettori LC e MT-RJ si offrono come soluzioni adatte per essere racchiuse in gusci protettivi alla stessa stregua dei connettori per doppino intrecciato. Esempi di connettori industriali per fibra ottica sono visibili nella seguente Figura

231

La connessione con apparecchiature racchiuse allinterno di contenitori protettivi, in grado di resistere allumidit e alla polvere, pu essere realizzata ricorrendo a dei passanti che presentano connettori industriali allesterno, ad esempio di tipo M12, e connettori tradizionali di tipo RJ-45 allinterno. I CAVI. Le fibre ottiche rappresentano una soluzione ideale al problema delle interferenze elettromagnetiche che si riscontrano in un ambiente di fabbrica, essendo totalmente immuni a ogni tipo di problema elettrico causato dalle apparecchiature che si trovano nelle vicinanze dei cavi. Altrettanto importante far notare che si tratta di componenti considerevolmente pi robusti dei cavi coassiali e dei doppini intrecciati, pur richiedendo unattenzione particolare nel non piegarle al di sotto di un determinato raggio di curvatura. Il principale svantaggio delle fibre ottiche rappresentato dal costo che implicano per la rete. Tuttavia questa pu essere lunica scelta possibile in certi tipi di ambiente; inoltre la loro crescente diffusione sta portando a una riduzione della differenza di costo rispetto alla controparte su doppino. Esempio di cavi in fibra ottica industriali sono visibili nella seguente Figura.

232

Il doppino, rispetto alle fibre ottiche, presenta anche lo svantaggio di potersi estendere su tratte di lunghezza considerevolmente inferiore, o di richiedere ripetitori per poter superare tali limiti. Questo comunque un problema secondario rispetto alla possibile vulnerabilit nei confronti dei disturbi di tipo elettromagnetico, alla scarsa resistenza alla trazione e allattaccabilit da parte di composti chimici. Limpiego di canaline o di cavi speciali rivestiti da guaine rinforzate pu risolvere una parte di questi problemi, e se si sceglie di utilizzare cavo non schermato UTP lo sceglierle in materiale plastico permette di eliminare gli effetti deleteri sulla qualit del segnale dellaccoppiamento capacitivo con le canaline metalliche. In linea di massima, le interferenze elettromagnetiche possono essere tenute sotto controllo facendo passare i cavi Ethernet il pi lontano possibile dalle sorgenti di interferenza e utilizzando protezioni di tipo meccanico laddove si possa andare incontro a lesioni del cavo. Per quanto riguarda lassenza di schermatura dei cavi UTP si osservato che non costituisce un impedimento eccessivo, ma anzi evita le problematiche inerenti alla messa a terra delle maglie del cavo schermato STP. Le prestazioni dei cavi non schermati di categoria 5 (CAT5), pur essendo inferiori a quelle dei cavi schermati, non influenzano le comunicazioni Ethernet in maniera significativa. Questo abbastanza comprensibile considerando che i segnali utilizzati sono di tipo differenziale e i doppini sono intrecciati, una classica soluzione per evitare di captare interferenze lungo il percorso. Una possibile evoluzione dei cavi per Ethernet destinati allimpiego sul campo pu essere
233

rappresentata dallimpiego di una guaina pi spessa e resistente agli agenti chimici e alle alte temperature. La seguente Figura mostra doppini per impiego industriale.

I CONTENITORI. Una volta che connettori e cavi sono stati scelti e posizionati in modo da resistere alle sollecitazioni dellambiente di lavoro necessario operare delle scelte relativamente ai nodi e agli elementi attivi dellinfrastruttura di rete. Anche in questo caso, come per i connettori, si aprono due strade: il ricorso a dispositivi di tipo industriale oppure limpiego di componenti commerciali protetti da appositi contenitori. La prima soluzione pi costosa ed caratterizzata da componenti, tipicamente da pannello o da montaggio si binari DIN, che offrono prestazioni che possono anche rivelarsi inferiori a quelle dei pi comuni dispositivi commerciali di ultima generazione: per poter garantire un adeguato livello di protezione dei connettori pu ad esempio essere necessario ridurre il numero massimo di porte di uno SWITCH, e comunque il tempo necessario alla progettazione del modello industriale comporta ladozione di tecnologie che nel mondo consumer erano allo stato dellarte settimane o mesi prima. Dato che in genere dispositivi di questo tipo adottano soluzioni di connettivit di grado industriale precedentemente citate, c da aspettarsi una spesa aggiuntiva anche per quanto riguarda il cablaggio. Il ricorso a componenti espressamente pensati per il mondo dellindustria solitamente delegato al livello pi basso della rete Ethernet, quello di interfacciamento verso il campo, e solo nel caso in cui non sia possibile o conveniente
234

racchiudere lelemento in un cabinet apposito. Sensori e attuatori direttamente connessi alla rete Ethernet, richiedono questo tipo di misura. I controllori e gli elementi attivi dellinfrastruttura di rete, anche a questo livello, possono per puntare sulla soluzione alternativa: il ricorso a un contenitore certificato per limpiego in ambiente industriale permette infatti di ignorare quasi tutte le problematiche connesse ala robustezza dei dispositivi e allimpiego di connettori a prova di vibrazioni e di liquidi per sfruttare appieno i vantaggi del basso costo delle apparecchiature commerciali. Un numero limitato di cabinet che portano anche le linee di alimentazione necessarie, pu configurarsi come la scelta pi economica e flessibile in una rete di controllo e pu andare a complemento dei dispositivi industriali in una rete di interfacciamento verso il campo. LALIMENTAZIONE. Uno dei punti di forza dei bus di campo la possibilit di alimentare i dispositivi ricorrendo allo stesso cavo che trasporta i segnali. Questa soluzione semplifica notevolmente il cablaggio dei dispositivi ed oramai quanto gli operatori di sistema si aspettano da un bus che operi sul livello di fabbrica. Ethernet nella sua versione originale non contemplava una simile opportunit, e un eventuale sistema di controllo con sensori e attuatori in tecnologia Ethernet tradizionale richiederebbe il cablaggio di una linea di alimentazione dedicata che si affianchi a quella di comunicazione. Fortunatamente il cavo utilizzato per le reti Ethernet su doppino, UTP di categoria 5, comprende al suo interno ben quattro coppie di doppini intrecciati: le reti 10BASE-T, 100BASE-TX ne sfruttano due sole coppie per trasmettere le informazioni e questo lascia libere quattro linee per trasferire potenza ai dispositivi; le reti 1000BASE-T e 100BASE-T4, che li impiegano tutti e otto possono invece sovrapporre lalimentazione a una delle linee usate. Lo standard IEEE 802.3AF (Power on Ethernet - PoE) nato per rispondere alle esigenze di alimentare i dispositivi di telefonia, basati su Ethernet, si occupa di definire in che modo lalimentazione deve essere portata ai dispositivi a partire dagli elementi attivi dellinfrastruttura di rete e facendo in modo da preservare la compatibilit con le versioni non alimentate di Ethernet. Dal punto di vista della potenza trasferibile, con la tensione nominale di 48 Volt prevista dallo standard, si possono convogliare oltre 10 Watt allestremo di una tratta di 100 metri di una rete 100BASE-TX. In una topologia a stella questo comporta la possibilit di alimentare

235

sensori e attuatori di diverso tipo, videocamere, pannelli operatore (HMI), punti di accesso Wireless, dispositivi di telefonia e anche computer industriali. Sul mercato hanno gi fatto la loro comparsa dispositivi attivi conformi a questo standard e che permettono di connettere sensori e altri dispositivi senza preoccuparsi di disporre di una linea di alimentazione. La seguente Figura mostra un esempio di impiego.

236

7.8 Foundation Fieldbus HSE Foundation Fieldbus HSE (High Speed Ethernet), rappresenta la soluzione che la Foundation Fieldbus affianca al suo bus di campo FF, espressamente progettato per applicazioni di controllo di processo tradizionale. HSE non solamente un bus di campo, ma piuttosto unarchitettura ottimizzata per i processi di automazione nei sistemi distributi. HSE permette alte velocit di trasferimento dati tra I/O remoti, PLC e PC. Appoggiandosi ai protocolli IP, UDP, TCP e SNTP (Simple Network Transfer Protocol), larchitettura HSE consente di collegare tra loro segmenti di rete FF, che viaggiano alla velocit di 31,25 kbit/s, con tratte di rete Ethernet che impiegano componenti commerciali per raggiungere velocit fino a 1000 Mbit/s. I messaggi del bus di campo FF vengono trasferiti su una dorsale Ethernet ad alte prestazioni, e larchitettura di rete si presta alla realizzazione di sistemi ridondanti e robusti. Lintegrazione tra HSE e FF permette di ottenere il meglio dai due mondi: il bus di campo ottimizzato per linterfacciamento con sensori e trasduttori al livello di fabbrica, mentre i collegamenti Ethernet di HSE vengono utilizzati per le operazioni di controllo e di trasferimento delle informazioni al livello di impresa. Lintegrazione che ne deriva consente di implementare funzioni di diagnostica e manutenzione predittiva che contribuiscono a ridurre le probabilit di fermi macchina migliorando le comunicazioni della rete di controllo e supervisione a costi contenuti, grazie alla semplificazione dellarchitettura di rete. La soluzione proposta da Foundation Fieldbus, si presta inoltre alla realizzazione di sistemi di controllo distribuito, con i componenti che ai tradizionali blocchi funzionali affiancano il supporto di nuovi blocchi funzionali e flessibili chiamati FFB (Flexible Function Blocks) che aprono ai PLC, ai multiplexer e gateway laccesso diretto alla rete HSE, e contemplano inoltre le funzioni di interfacciamento verso il campo, lacquisizione dei dati con supervisione e gestione delle successioni di eventi, il controllo del pilotaggio delle interfacce e il controllo dei processi discontinui. Aggiungendosi alla tecnologia HSE, essi consentono a Foundation Fieldbus di coprire tutte le applicazioni di unazienda, dal controllo di processo di base a quello complesso discreto, permettendo la riduzione del numero dei sistemi di automazione presenti in fabbrica ed una pi facile gestione della rete. Gli FFB sono disponibili in
237

versione preconfigurata o interamente configurabile. I primi sono dotati di un numero predefinito di tipologie di parametri degli I/O come i blocchi funzionali standard, ma lalgoritmo configurabile. Poich lI/O predefinito, anche i DD (Device Description) sono prestabiliti. Gli FFB iniziali di questo tipo, blocchi MIO (Multiple Input/Output), dispongono di 8 parametri analogici o discreti per blocco (MAI, MAO, MDI, MDO). I blocchi MIO sono utilizzati per interfacciare I/O remoti e per semplici gateway. Gli FFB completamente configurabili, invece, sono impiegati in applicazioni complesse; consentono la configurazione del numero e del tipo di parametri degli I/O e dellalgoritmo. In questo caso, il DD viene generato automaticamente dal tool di configurazione. Gli FFB sono creati tramite un tool di programmazione basato su standard quali IEC 61131-3 e una volta generati vengono installati e connessi ad altri blocchi come si trattasse di un elemento standard. Oltre a questo, Foundation Fieldbus ha aggiunto al proprio bus di campo, il concetto di sicurezza intrinseca FISCO (Fieldbus Intrinsically Safe Concept), quindi potr essere utilizzato in aree a rischio di esplosione. Per concludere, si riportano le caratteristiche fondamentali del protocollo Foundation Fieldbus HSE: Supportato dalla Foundation Fieldbus; Installato in oltre 5,000 sistemi e 300,000 nodi, diffuso prevalentemente negli Stati Uniti; Topologia di rete a stella; Mezzi fisici impiegabili: doppino e fibra ottica (con la possibilit di includere nello stesso cavo lalimentazione); Massimo numero di dispositivi per segmento: in teoria quasi illimitato grazie allindirizzamento tramite protocollo IP; Massima lunghezza di un segmento: 100 metri con doppino e 2000 metri con fibra ottica (larghezza banda a 100 Mbit/s); Metodi di comunicazione: client/server, publisher/subscriber e notifica eventi; La dimensione di un pacchetto dati variabile ed previsto il controllo di errore CRC; Laccesso al bus avviene tramite protocollo CSMA/CD con codifica dei segnali Manchester; Possibilit di connessione con altri bus di campo attraverso gateway;
238

Tempo di ciclo inferiore a 100 millisecondi. La seguente Figura mostra una possibile architettura di rete.

www.fieldbus.org

239

7.9 Sercos III Sercos III, rappresenta levoluzione su base Ethernet di Sercos Interface, giunta ormai alla sua terza generazione. Integrato nei componenti dellautomation house Bosch-Rexroth, rappresenta un passo avanti nellevoluzione dei sistemi di automazione, consentendo di ridurre la complessit di progettazione, programmazione e messa in funzione. Lidea semplice e convincente: sostituire moduli di automazione decentralizzata ai complessi sistemi centralizzati. In tal modo, i costruttori di macchine potranno ridurre i costi di produzione e, mediante i sistemi di concezione modulare, assemblare le macchine in modo flessibile per ogni cliente. E proprio con questo obiettivo che sono nati i nuovi sistemi Motion Logic della famiglia IndraMotion Rexroth: i controlli IndraMotion MLD su base azionamento e lIndraMotion MLC su base controller. Entrambi puntano sullo standard aperto e non proprietario. Sercos III diffuso in circa ottanta Paesi sparsi in tutto il mondo, i meccanismi di Sercos Interface, dei quali sono stati venduti oltre 1,5 milioni di nodi in oltre 300,000 applicazioni, sono stati mantenuti e ulteriormente ampliati. In questo modo, il profilo Motion Control conforme alle specifiche IEC EN 61491, la struttura dei telegrammi e la sincronizzazione hardware sono stati implementati al mezzo fisico di trasmissione Ethernet da 100 Mbit/s. Per lutente questo significa che la compatibilit del software con le soluzioni di applicazione preesistenti resta fondamentalmente invariata. Sercos III offre inoltre nuove possibilit per lautomazione, che assicurano il futuro di Sercos Interface. In questo modo i costruttori di macchine possono approfittare delle funzionalit aggiuntive, della maggiore convenienza dei cablaggi CAT5 e della maggiore sicurezza implementata. La possibilit di realizzare una struttura fisica ad anello consente una ridondanza dellhardware contro leventuale rottura dei cavi, che si traduce in una maggiore sicurezza. La seguente Figura mostra la ridondanza in Sercos III.

240

La risposta degli azionamenti, ad esempio, avviene mediante indirizzi logici (IP), in modo indipendente dalla disposizione, o dalla sequenza allinterno della rete. Grazie alla funzionalit Hot-Plug, mostrato nella seguente Figura, inoltre possibile inserire altri nodi slave durante il funzionamento senza interrompere lanello di comunicazione: un ulteriore passo in avanti verso la flessibilit delle macchine di produzione.

Le elevate prestazioni di Ethernet a 100 Mbit/s, in combinazione con i tempi di ciclo impostabili in modo flessibile con valore minimo di 31,25 us, aprono enormi risorse allintegrazione su base Sercos III di nuove caratteristiche di sistema.

241

Tutto ci consente ora la comunicazione trasversale tra utenti slave allinterno dellanello logico Sercos che, rispetto ad altre soluzioni analoghe, non deve essere elaborata dal controllo master. La sincronizzazione di un massimo di 254 utenti per ciascun anello Sercos apre la strada alle unit di controllo multiasse ad elevate prestazioni. Sercos III consente di sfruttare i vantaggi di Ethernet in modo ottimale: in questo modo, oltre al canale di trasmissione in tempo reale esente da collisioni, stato implementato un altro canale separato per il trasferimento di protocolli IP standard, il che consente di integrare senza problemi terminali Ethernet standard e quelli dotati di protocolli IP standardizzati o proprietari. Le seguenti due Figure mostrano la comunicazione IP in Sercos III.

Per agevolare la messa in funzione, inoltre possibile collegare un notebook direttamente come utente IP agli azionamenti IndraDrive per effettuarne la parametrizzazione, senza la necessit di un componente gateway specifico.

242

Poich Sercos III concepito come sistema di comunicazione generale per lintera rete di controllo nellautomazione di fabbrica per la connessione alle periferiche, ad esempio di postazioni I/O, stato definito un apposito profilo di terminale. Inoltre, per la comunicazione trasversale, Sercos III specifica il cosiddetto profilo di comunicazione C2C (Control-to-Control), come mostrato nella seguente Figura, al fine di realizzare una comunicazione in tempo reale tra controlli master. In questo modo, i segmenti di macchina autonomi possono essere accoppiati e sincronizzati con le massime prestazioni in tempo reale: un ulteriore passo avanti per la modularizzazione delle macchine e degli impianti di produzione di grandi dimensioni, sulla base degli standard Ethernet.

243

Ecco le nuove soluzioni presentate da Bosch-Rexroth con Sercos III. La soluzione Motion Logic IndraMotion MLD, basata sulla famiglia di azionamenti IndraDrive, viene presentata come estensione in versione multiasse della soluzione monoasse, gi introdotta con successo sul mercato. IndraMotion MLD combina funzioni di azionamento molto avanzate con un controllo Motion Control e PLC flessibile che utilizza anche moduli software tecnologici ottimizzati per vari processi. La sincronizzazione di un numero massimo di 8 assi avviene tramite Sercos III. A tale scopo, un azionamento assume la funzione di master, configurando lanello e gli altri azionamenti slave ad esso connessi e comunicando con gli azionamenti collegati a valle (slave appunto) mediante parametri Sercos estesi, per effettuare il comando Motion. Al contempo, IndraMotion MLD pu comunicare con i controlli macchine eventualmente a monte mediante le interfacce di bus di campo, ad esempio Profibus e DeviceNet. Nella cosiddetta modalit CCD (Cross Communication Drive), lazionamento master di IndraMotion MLD rende disponibile agli azionamenti slave un gateway di comunicazione per i dati di processo. Il sistema Motion Logic, sviluppato a partire dallunit di controllo su base controllore IndraControl L40, stato esteso mediante un modulo funzionale hardware con funzionalit master Sercos III, mediante il quale avviene la comunicazione in tempo reale con un massimo di 16 azionamenti IndraDrive, con interfaccia slave Sercos III. Il controllo MLC, oltre a un gran numero di funzioni monoasse e multiasse, offre una completa biblioteca, contenuta gi nel pacchetto base, dotata di funzioni tecnologiche per diversi processi, quali ad esempio quelli utilizzati nelle macchine per imballaggio. Entrambi i sistemi, IndraMotion MLC e IndraMotion MLD, integrano lo stesso nucleo PLC multitasking IndraLogic, conforme allo standard IEC 61131-3. In combinazione con una biblioteca di moduli funzionali Motion Control PLCopen, la programmabilit delle soluzioni Motion Logic cos assicurata. Il modulo framework IndraWorks consente di unificare lintero engineering, dalla progettazione alla programmazione, fino alla parametrizzazione e alla diagnostica. Le caratteristiche principali del protocollo Sercos III sono qui di seguito elencate: Massimo numero di nodi per segmento 254; Larghezza di banda 100 Mbit/s; Distanza massima tra due dispositivi 100 metri; Comunicazione Master/Slave, ciclica e aciclica;
244

Tempi di ciclo: 31.25 us, 62.5 us, 125 us, 250 us con Jitter inferiore a 1 us; Topologia di rete in linea o ad anello; Mezzi fisici utilizzabili: doppino intrecciato e fibra ottica; Integrazione con Sercos Interface e con componenti di terze parti; Possibilit di una comunicazione Real-Time tra nodi; Supporto IP, TCP, UDP per la parametrizzazione ed altro tipo di traffico dati; Estese funzioni di diagnosi. La seguente Figura mostra il modello ISO/OSI per Sercos Interface e Sercos III.

www.sercos.de

www.sercos.org

www.sercos.com

245

7.10 Modbus TCP Modbus TCP una specifica aperta che trasporta di fatto il protocollo Modbus, basato su una messaggistica di tipo client-server, al mondo di Ethernet. La variante TCP aggiunge lincapsulamento dei dati Modbus in un frame conforme alle specifiche TCP/IP, aprendo in questo modo la strada a tutti i dispositivi dotati di connettivit Ethernet. La trama Modbus, composta secondo le regole del protocollo, viene incapsulata allinterno di una trama TCP, come mostrato nella seguente Figura, lasciando non usato il solo campo di controllo (Checksum) le cui funzioni sono svolte dalla struttura dati esterna.

Ogni dispositivo individuato da un indirizzo o Identificatore di Unit (UI) e la comunicazione avviene in modalit client-server con la richiesta di una risposta da parte del destinatario. Il messaggio pu essere di tipo esplicito se inviato attraverso caratteri ASCII, oppure implicito nel qual caso costituito da sequenze binarie di quattro bit che rappresentano cifre esadecimali. La seconda modalit (messaggio implicito), maggiormente efficiente dal punto di vista della banda occupata e della velocit di trasmissione. Un client invia una trama che comprende lindirizzo del server, un campo funzione che specifica il tipo di azione che si attende il server intraprenda, e un campo dati che pu anche essere omesso (ad esempio nel caso di messaggi di controllo). Il server che risponde ad un client, lascia il proprio indirizzo nel corrispondente campo per consentire al client di identificare quale particolare server sta comunicando con lui in quel momento.
246

Un qualunque computer connesso in rete pu agire da client o server Modbus scambiando messaggi tramite la porta riservata 502 dello stack TCP/IP. Il principale vantaggio di questo approccio risiede nella modalit di interazione tra i vari nodi della rete: essendo di tipo client-server, ogni dispositivo server in grado di scambiare dati in maniera simultanea con pi dispositivi client.

Una tipica comunicazione via Modbus comprende essenzialmente tre stadi: la formulazione di una richiesta da parte di un dispositivo ad un altro, lesecuzione delle azioni necessarie a soddisfare la richiesta, e la restituzione al dispositivo iniziale delle informazioni risultanti, siano esse leffettivo risultato dellelaborazione o un codice di errore derivante dallimpossibilit di portare a termine il compito. Le informazioni vengono scambiate sotto forma di unit dati indipendenti dai livelli sottostanti nella pila ISO/OSI. Il mattone portante delle comunicazioni il Protocol Data Unit (PDU), costituito da un campo che contiene il codice funzione (codificato con un solo byte) ed un campo dati di lunghezza variabile, eventualmente nullo, che contiene il corpo del messaggio. Lintegrazione allinterno di altre reti pu richiedere dei campi aggiuntivi che sono raccolti in quella che viene definita Application Data Unit (ADU); tipicamente presente un campo indirizzi che consente di tracciare il dispositivo che ha effettuato la richiesta e un campo con i codici per la correzione degli errori. La versione di Modbus su linea seriale pu contare su una dimensione massima del frame ADU di 256 byte; di questi, 1 byte utilizzato per lindirizzo del server, 2 per il controllo ciclico di ridondanza (CRC) e i restanti 253 vanno a costituire lunit dati del protocollo. Tolto 1 byte per il codice funzione/eccezione, rimangono 252 byte da
247

occupare per la trasmissione effettiva dei dati veri e propri. La versione per TCP/IP richiede 7 byte aggiuntivi alla PDU, andando a occupare un totale di 260 byte. La codifica utilizzata per la trasmissione di numeri che richiedono pi byte di tipo big-endian, ossia i byte pi significativi sono inviati per primi. I dati passati nel messaggio possono essere di diverso tipo e sono organizzati in tabelle. Le tabelle principali sono: Ingressi discreti e registri di ingresso (rispettivamente da 1 o 16 bit, in sola lettura); Registri per la memorizzazione (16 bit, in lettura e scrittura) e avvolgimenti (un bit in lettura e scrittura). Lindirizzamento dei dati limitato a 16 bit, cosa che comporta un range di valori per gli indirizzi compreso tra 0 e 65535 per ciascun blocco. I produttori di dispositivi Modbus devono dotare il proprio prodotto di un mezzo per tradurre (rimappare) i valori impiegati nelle effettive locazioni di memoria utilizzate per memorizzare i dati di funzionamento. In questo modo si crea un livello di astrazione che permette agli utilizzatori Modbus di accedere ai parametri di funzionamento del dispositivo in maniera trasparente e indipendente dai dettagli della particolare implementazione. Le caratteristiche principali del protocollo Modbus TCP sono qui di seguito elencate: E un protocollo oramai collaudato, diffuso in ambito mondiale, disponibile in pratica per tutte le apparecchiature in commercio; La velocit di trasmissione passa dai tipici 19,200 bit/s a 100 Mbit/s con tempi di ciclo compresi tra 20 ms e 100 ms; E un protocollo non deterministico. Con UPD/IP, piuttosto che TCP/IP, le prestazioni possono essere migliorate senza che per possa essere garantito, in ogni caso, il Real-Time; Al contrario del protocollo Modbus, con il protocollo Modbus TCP si pu gestire una rete di strumenti con pi master che colloquiano contemporaneamente con pi slave; E estremamente semplice inserire strumenti Modbus tradizionali direttamente su rete Ethernet TCP/IP con semplici convertitori di segnale; La rete Ethernet TCP/IP pu diventare fisicamente illimitata (ad esempio coprire lintero pianeta grazie a Internet);

248

Alla rete TCP/IP si possono collegare decine di migliaia di dispositivi Modbus TCP e non solo 255 come in quella seriale, portando il numero degli I/O ad un valore praticamente illimitato.

www.modbus-ida.org

249

7.11 Ethernet/IP Ethernet/IP (IP - Industrial Protocol) ha le sue radici nei bus di campo DeviceNET e ControlNET. Nel 1998 un gruppo di lavoro di ControlNET International (CI) svilupp un metodo che permettesse di utilizzare il livello di Applicazione, condiviso dai bus di campo ControlNET e DeviceNET, anche alle reti realizzate in tecnologia Ethernet. Tale standard stato battezzato con il nome di Ethernet/IP e, oltre a quello di CI, gode del supporto di organizzazioni internazionali quali ODVA (Open DeviceNET Vendor Association), IEA (Industrial Ethernet Association) e di IAONA. Il sistema utilizza un modello a oggetti per distinguere i dati provenienti da questi due bus (ControlNET e DeviceNET) da quelli giunti direttamente da reti Ethernet. La seguente Figura confronta Ethernet/IP con ControlNET e DeviceNET.

Ethernet/IP stato il primo standard aperto basato su Ethernet e TCP/UDP/IP a fornire una soluzione di controllo a livello di interfacciamento con il campo, che
250

risponde ai seguenti requisiti applicativi: interfaccia fra PLC e/o verso sistemi HMI, configurazione e programmazione dei nodi, interblocchi di tipo Peer to Peer fra PLC, controllo di dispositivi remoti, web, E-mail, Wireless, eccetera. Il livello di rete affidato al classico protocollo IP (Internet Protocol), mentre il trasporto suddiviso tra i protocolli TCP e UDP. Questa una situazione comune alla quasi totalit di sistemi che utilizzano Ethernet e che intendono sfruttare la compatibilit con i protocolli utilizzati dalla rete Internet; tipicamente la combinazione di Ethernet e dei livelli di rete e di trasporto summenzionati viene indicata con il termine Ethernet TCP/IP. Ethernet/IP utilizza il protocollo TCP per la trasmissione di messaggi espliciti, ossia contenenti sia le informazioni pertinenti al protocollo, sia le istruzioni per la realizzazione del servizio e per veicolare le informazioni di tipo non deterministico. Questo tipo di informazioni vengono ricevute dai nodi che le interpretano sulla base del protocollo, agiscono di conseguenza e generano informazioni che vengono poi reimmesse in rete. I messaggi di questo tipo sono utilizzati per la raccolta dei dati e per le operazioni di configurazione e hanno dimensioni variabili che possono divenire anche considerevoli. La seguente Figura mosta la comunicazione con messaggi espliciti in Ethernet/IP.

251

Per i messaggi critici che devono essere resi disponibili in tempo reale o quasi, ci si appoggia al pi leggero protocollo UDP che viene utilizzato per i messaggi impliciti, ovvero messaggi molto corti, anche di un solo bit, privi di informazioni relative al protocollo di informazione, ma contenenti solamente i dati necessari al controllo di processo. La seguente Figura mosta la comunicazione con messaggi impliciti in Ethernet/IP.

Il protocollo del livello di Applicazione gestisce i messaggi veicolati dalle suite di protocolli TCP/IP e UDP/IP e fa in modo che i diversi dispositivi connessi in rete siano in grado di capirsi tra loro. Ethernet/IP utilizza a questo proposito lo stesso protocollo di DeviceNET e di ControlNET, ossia il Control and Information Protocol (CIP). Appoggiandosi ai servizi offerti dal livello di trasporto, il CIP in grado di espletare le funzioni di messaggistica sia esplicita (informazione, tramite gli strutturati pacchetti TCP) che implicita (controllo, tramite i pi semplici e leggeri pacchetti UDP) e offre grande flessibilit nella scelta della modalit di comunicazione. E infatti supportata la tipica modalit di tipo client-server, dove la sorgente comunica con tutti i destinatari dellinformazione uno per volta, cui per possibile affiancare la pi efficiente modalit di tipo produttore-consumatore, con
252

linformazione inviata simultaneamente a tutti i nodi che decideranno poi se interessati a usufruirne o meno. Nella modalit ciclica, invece, i nodi inviano i messaggi a intervalli predefiniti nel tempo, mentre nella modalit per cambio di stato, il trasferimento dei dati ha luogo solo quando il nodo subisce una mutazione in una delle variabili che deve controllare. Uno dei maggiori vantaggi offerti dal CIP appunto la possibilit di adottare il metodo di scambio dati che pi si addice allapplicazione dellutilizzatore in modo da proteggersi dal rischio di obsolescenza. Trattandosi poi di un protocollo di alto livello, il CIP in grado di adattarsi anche alle future evoluzioni della tecnologia e oltre a Ethernet, a DeviceNET e a ControlNET, pu evolvere in modo da posizionarsi in cima ad altri standard quali, potrebbero essere ATM, Firewire o Bluetooth. La struttura dati del CIP si basa su un approccio definito Object Oriented. Un Object (Oggetto) un modello astratto che definisce attributi, comandi e modi operativi per ciascuna funzione di un dispositivo. Per realizzare funzioni di I/O Control, EtherNet/IP utilizza la tecnologia Ethernet standard disponibile sul mercato, quindi SWITCH e ROUTER con topologia a stella e modalit di trasmissione full-duplex. La larghezza di banda pari a 100 Mbit/s. La gestione di messaggi impliciti che avviene in modalit multicast e richiede sempre di utilizzare SWITCH che supportino il protocollo IGMP (Internet Group Management Protocol). Il protocollo IGMP identifica i nodi attivi per gruppo IP multicast ed instrada i dati solo ai nodi associati ai singoli gruppi multicast. Gli SWITCH che non supportano questo protocollo gestiscono i messaggi multicast come se fossero messaggi broadcast, intasando di conseguenza la rete. Il traffico multicast pu venire ulteriormente segregato dalla funzione VLAN degli SWITCH che, quando presente, permette la configurazione per gestire differenti LAN virtuali. I messaggi multicast utilizzano il protocollo UDP che non permette il routing fra pi LAN. Applicazioni per Motion-Control (CIPmotion) e per Sincronizzazione-Azionamenti (CIPsync) con EtherNet-IP, si basano sullo standard IEEE 1588 mantenendo il sincronismo del clock di ciascun nodo con un Jitter di pochi microsecondi. Applicazioni per Safety-Bus con EtherNet-IP si basano su CIPsafety, che

253

rispondendo alla norma IEC 61508, permettono la connessione di dispositivi di sicurezza e standard sulla stessa rete Ethernet. Ethernet/IP diffuso in tutto il mondo, ma prevalentemente negli Stati Uniti ed in Asia. La seguente Figura mostra il modello ISO/OSI per Ethernet/IP, ControlNET e DeviceNET.

www.odva.org

254

7.12 Ethernet Powerlink (EPL) Da quando la Commissione Elettrotecnica Internazionale (IEC) ha accettato Ethernet Powerlink (EPL) tra i profili di comunicazione Real-Time (RT) Industrial Ethernet, le installazioni EPL sono cresciute esponenzialmente riuscendo a soddisfare la maggior parte dei requisiti tipici dellindustria dellautomazione industriale. Alle spalle di questo nuovo robusto profilo esiste EPSG (Ethernet Powerlink Standardization Group), unassociazione indipendente con sede in Svizzera nata nel 2003 e fondata da un gruppo di importanti aziende di automazione industriale come B&R, Lenze, Hirschmann, Kuka e dallIstituto dei Sistemi Integrati dellUniversit delle Scienze Applicate di Winterthur. Il Gruppo ha lobiettivo di sviluppare e diffondere Ethernet Powerlink mettendone in evidenza i vantaggi offerti dal suo protocollo RT introdotto sul mercato da B&R (Bernecker & Rainer) gi alla fine del 2001. Il lavoro dellAssociazione condotto da alcuni gruppi dedicati ai differenti aspetti del protocollo come la tecnologia, la sicurezza, le certificazioni, il marketing, eccetera, al fine di mantenere un adeguato equilibrio tra lo sviluppo delle nuove conoscenze tecnologiche e la domanda del mercato mondiale in continua e progressiva evoluzione. Le prestazioni di EPL sono di tutto rispetto tanto che le sue attuali applicazioni sono in grado di eguagliare i risultati degli omologhi sistemi dedicati al controllo del moto. Inoltre, laderenza agli standard Fast Ethernet (IEEE 802.3U), IEEE 1588, ai protocolli basati su IP (UDP, TCP, ecc.) e ai protocolli CANopen ne estendono enormemente le potenzialit. Se fino a qualche anno fa i dubbi degli esperti di reti industriali sul successo della discesa in campo di Ethernet erano significativi e fondati, ora pi nessuno pu probabilmente sollevare perplessit sulle potenzialit del protocollo. Ethernet ha raggiunto e si posizionato a livello dello strato pi basso dei sistemi industriali grazie alla sua favorevole infrastruttura oltre che allefficace velocit di trasmissione, lasciando per ancora qualche aspettativa fra gli addetti che si occupano di RT. Ethernet non in grado di garantire trasmissioni di questo tipo (Real-Time) come i trasferimenti deterministici dei dati, a causa del meccanismo di accesso utilizzato (MAC - Media Access Control) di tipo CSMA/CD (Carrier Sense Multiple Access/Collision Detect). Tale MAC non permette, infatti, di predire quando un nodo

255

della rete sar in grado di disporre i dati sulla rete stessa e quanto sar il tempo di occupazione del bus. Attraverso Ethernet Powerlink anche queste barriere tecnologiche sono crollate sotto i colpi della ricerca e sviluppo che ha reso disponibile un protocollo in grado di assecondare anche requisiti di determinismo e di precisione nel timing. Ethernet Powerlink un protocollo ISO/OSI basato sulla tecnologia Fast Ethernet (IEEE 802.3U) che determina il trasferimento dei dati critici mediante cicli isocroni brevi ed estremamente precisi. Le attuali implementazioni sono in grado, infatti, di produrre tempi di ciclo al di sotto dei 100 us con Jitter inferiori al microsecondo, con configurazioni a stella, albero e in linea. Il Jitter di rete consiste nella deviazione temporale degli eventi ciclici rispetto allintervallo previsto in EPL. La deviazione pu essere causata dai componenti della rete per cui il limitato Jitter del protocollo determina una fluttuazione di trasmissione massima tra i dispositivi connessi estremamente limitata. Lintervallo di Jitter costituisce la misura della qualit del tempo di ciclo soprattutto per applicazioni di automazione industriale spinta e nei processi di controllo del moto. Il tempo di ciclo del protocollo EPL pu, inoltre, essere impostato in funzione delle specifiche caratteristiche della rete. Nonostante la maggior parte delle applicazioni non richieda la condivisione delle informazioni dai nodi del network a ogni tempo di ciclo, EPL garantisce il trasferimento isocrono pesato secondo multipli di ciclo per un adeguato caricamento dei dati sulla rete. Per evitare collisioni ottenendo il massimo della larghezza della banda, la trasmissione dei dati basata sul tempo. Il determinismo ottenuto, infatti, mediante una schedulazione ciclica che permette a tutti i nodi collegati di accedere agevolmente allo strato Fisico del modello. La schedulazione del ciclo EPL gestita dai nodi di tipo manager (MN - Manager Node), che controllano le comunicazioni e definiscono il tempo di sincronizzazione tra i nodi assegnandone il relativo accesso. Come evidenziato nella seguente Figura, il ciclo EPL suddiviso in quattro periodi definiti rispettivamente Start, Cyclic, Asycronous e Idle period preceduti da una fase di configurazione in cui il sistema determina una riduzione del carico sulla rete attraverso una serie di soli segnali asincroni.

256

Durante la prima fase, la funzione di controllo dei nodi manager trasmette uno specifico segnale (SoC, Start of Cyclic Frame) a tutti gli elementi controllati seguito dalla fase di sincronizzazione dei dispositivi che popolano il network secondo il clock dei nodi manager. La successiva sequenza consiste in una trasmissione di ciclo sincrono (Isochronous period). In accordo con specifiche impostazioni preconfigurabili, il sistema manager di rete invia successivamente il segnale di PollReq (Polling Request Frame) in sequenza a tutti i nodi controllati sotto forma di messaggio univoco mentre i controllori, in risposta al segnale, trasmettono il PollRes (Polling Response Frame). Tale sequenza ha il compito di assegnare ad ogni nodo una finestra temporale specifica di trasmissione per il trasferimento dei dati critici di processo o di controllo del moto. Il terzo stadio di trasmissione del ciclo EPL asincrono (Asynchronous period) e consiste in una fase trasmissiva dei dati di tipo non critico determinata dallinvio di segnali specifici dal controllore (Invite Frame), mentre il quarto e ultimo stadio un intervallo di riposo (Idle period) prima del successivo ciclo EPL. Il modello EPL permette lo sfruttamento di ogni tipologia di network. Tale privilegio determinato dal timing privo di collisioni per cui, attraverso luso di HUB EPL a pi porte, possibile gestire diverse linee e diramazioni per la costruzione di configurazioni in linea, a stella o a struttura mista. La struttura Powerlink necessita, inoltre, di un solo HUB ripetitore per far fluire i dati riducendo la presenza di dispositivi dedicati esterni di commutazione. Lutilizzazione di SWITCH sui segmenti EPL non proibita anche se generalmente non raccomandata a causa dei caratteristici tempi di latenza che li contraddistinguono. Luso di un ROUTER EPL, inoltre, rende possibile laccesso dallesterno del bus mediante sistemi basati su tecnologia Ethernet con protocollo IP.
257

Il protocollo Ethernet Powerlink possiede una struttura a strati secondo lo standard IEEE 802.3 in accordo con il classico modello ISO/OSI mostrato nella seguente Figura. Il livello Fisico, sebbene di tipo 100BASE-X, in grado di sfruttare anche potenzialit pi elevate raggiungendo prestazioni fino al Gbit/s.

Affinch tutti i nodi disposti sulla rete siano in grado di accedere al livello Fisico, il Data Link Layer organizzato in modo che una schedulazione di timing ciclica generi un processo deterministico. Come visto in precedenza, il ciclo EPL gestito in due fasi (sincrona/asincrona), mentre i nodi di tipo manager garantiscono laccesso al mezzo fisico mediante un messaggio esplicito. Il risultato di tale organizzazione trasmissiva garantisce lunivocit dellaccesso alla rete nel medesimo istante da parte di ciascun nodo evitando conseguentemente le collisioni tipiche dello standard Ethernet. Oltre a inviare dati asincroni per ogni ciclo di base, alcuni nodi sono in grado di condividere intervalli temporali per intraprendere una pi efficace utilizzazione della banda. Durante la trasmissione asincrona, ogni nodo trasmette le proprie informazioni (EPL-broadcast) che saranno ricevute dai restanti nodi senza impegnarne alcuno in

258

processi di supervisione e di risposta. Tale configurazione garantisce cos comunicazioni Peer to Peer veloci e flessibili di tipo publisher/subscriber tra i nodi. La fase asincrona utilizza frame IP totalmente trasparenti a comunicazioni standard come TCP/IP o UDP/IP. La seguente Figura mostra una tipica architettura EPL.

La modalit di destinazione degli indirizzi di Ethernet Powerlink determina lassegnazione di un solo indirizzo MAC per ogni dispositivo sulla rete, mentre ai nodi nel dominio RT assegnato un EPL Node ID. In alternativa, il modello in grado di assegnare un indirizzamento standard IP affinch i dispositivi RT possano essere raggiunti dallesterno attraverso Internet mediante transizioni di tipo NAT (Network Address Translation). Grazie alla sua efficace compatibilit con ambienti differenti, il protocollo EPL pu essere utilizzato anche sullo standard Ethernet a patto che non sia necessario ottenere prestazioni deterministiche. Tale scelta acquista significato in tutte le occasioni in cui necessitino veloci connessioni attraverso PC per una semplice e immediata programmazione. La versatilit di EPL confermata anche dalla sua disponibilit a effettuare implementazioni via software senza ridurre le prestazioni RT evitando lutilizzazione di dispositivi hardware dedicati. Di seguito sono illustrati tre differenti approcci di implementazione di Ethernet Powerlink, rispettivamente a singola e a doppia CPU e con soluzione FPGA (Field Programmable Gate Arrays). La soluzione a singola CPU costituisce lapproccio pi veloce per implementare EPL allinterno di un sistema integrato.
259

Mentre, infatti, il controllore gestisce lapplicazione, EPL si occupa della comunicazione attraverso una semplice configurazione priva di interfacce tra i componenti hardware. Una soluzione pi complessa, mostrata nella seguente Figura, caratterizzata dallaggiunta di un microcontrollore in grado di occuparsi della gestione della comunicazione di Ethernet Powerlink per soddisfare requisiti di estensibilit dellapplicazione. Il controllore aggiunto pu essere costituito da un generico dispositivo di tipo on chip Ethernet port o da un FPGA con microcontrollore integrato che pu, inoltre, comprendere un controllore o un HUB Ethernet. In tale configurazione il protocollo EPL eseguito completamente attraverso il controllore aggiuntivo affinch le trasmissioni EPL non influenzino il controllore principale nellesecuzione delle applicazioni.

La terza soluzione consiste in un sistema basato su FPGA sul quale risiedono uninterfaccia Ethernet Powerlink, un HUB logico e il nucleo del processore. Attraverso tale soluzione, i costi per nodo possono essere ridotti sensibilmente rispettando comunque luniversalit dellinterfaccia EPL, le funzioni e le logiche riprogrammabili, i meccanismi Frame Filter, la flessibilit delle applicazioni basate su Core Processor e la configurabilit delle periferiche e delle interfacce. Tra gli aspetti maggiormente apprezzati di Industrial Ethernet ci sono la trasparenza fornita durante i trasferimenti di dati verso le applicazioni e laccessibilit, in grado di favorire la gestione dei servizi e della manutenzione ai bus.
260

Tali caratteristiche facilitano, per, laccesso alle reti per cui levoluzione intrapresa da Ethernet Powerlink consiste proprio in un controllo degli accessi pi robusto. Tale approccio ha lobiettivo di salvaguardare i cicli di tempo dei processi RT dai sempre pi frequenti attacchi provenienti dallesterno. La sicurezza di EPL garantita, infatti, da una netta separazione tra i domini RT e non RT, come mostrato nella seguente Figura.

La realt attuale delle macchine e degli impianti caratterizzata da funzioni di sicurezza basate su strutture di tipo hardware soggette a dispendiosi cablaggi e a una limitata capacit diagnostica. Il gruppo di lavoro dedicato alla sicurezza di EPSG ha generato EPLsafety, uno protocollo di sicurezza per applicazioni RT. EPLsafety supporta le relazioni di comunicazione di tipo client/server e publisher/subscriber e i dati relativi alla sicurezza sono trasmessi attraverso un frame di dati integrato nel messaggio standard di comunicazione. Il protocollo EPLsafety conforme allo standard IEC 61508 ed in grado di rispondere ai requisiti della categoria SIL4 (Safety Integrity Level). Ethernet Powerlink diffuso in tutto il mondo, ma in prevalenza in Europa, attualmente utilizzato da oltre 300 aziende con pi di 100,000 nodi installati in diverse applicazioni. Le caratteristiche principali di Ethernet Powerlink sono elencate qui di seguito: Massimo numero di dispositivi: 239 slave (CN - Controlled Node);
261

Massimo baudrate: 100 Mbit/s half-duplex; Tempo di ciclo minimo di 100 us e Jitter di 1 us; Estensione: 100 m tra 2 nodi con doppino incrociato; Possibilit di integrazione con CANopen e supporto per i protocolli basati su IP (TCP, UDP,); Accesso al bus: Master (MN - Managing Node) polling su slave (CN - Controlled Node); Massima dimensione dei dati I/O Input: 1490 Byte per slave (CN) per Frame Ethernet; Massima dimensione dei dati I/O Output: 1490 Byte per slave (CN) per Frame Ethernet; Connessione I/O: ciclica, aciclica, broadcast, multicast, incrociata, publisher/subscriber; Comunicazione: master/master, master/slave, slave/slave.

www.ethernet-powerlink.org

262

7.13 EtherCAT EtherCAT (Ethernet for Control Automation Technology) la soluzione Real-Time per il controllo del movimento realizzata da Beckoff basata su Ethernet. Le caratteristiche di determinismo di EtherCAT si riassumono nei 30 microsecondi sufficienti a elaborare 1000 punti di I/O. Il segreto di queste prestazioni risiede nella realizzazione di una sottorete dedicata che provvede a raccogliere i dati da tutti i dispositivi sul campo e a creare un unico messaggio con le informazioni collettive. Gli I/O sono connessi in una configurazione ad anello aperto ad una stazione host per mezzo di un bus proprietario (E-bus), come mostrato nella seguente Figura. Il pacchetto Ethernet viene convertito nel formato E-bus, viaggia nella sottorete, passa per tutti i dispositivi e ritorna, opportunamente aggiornato, allhost.

EtherCAT sfrutta i meccanismi di sincronizzazione per gli slave (metodologia Distributed-Clocks) con Jitter inferiore a 1 us prescritti nelle norme di IEEE 1588, ma richiede forzatamente una comunicazione full-duplex. La tecnologia EtherCAT permette la realizzazione di sistemi di controllo che non sarebbero possibili con luso dei bus di campo tradizionali.
263

EtherCAT sfrutta le prestazioni degli attuali PC industriali e pu utilizzare sia collegamenti in rame (doppino), ma anche collegamenti in fibra ottica. EtherCAT sostituisce la classica topologia a stella di Ethernet con una topologia lineare pi facile da realizzare. La seguente figura mostra le possibili topologie con EtherCAT.

EtherCAT si basa sul principio del master/slave e pu interoperare con reti basate sul TCP/IP ed in generale con reti Ethernet (Ethernet over EtherCAT EoE). EtherCAT elabora i processi Real-Time tramite un hardware ed un software dedicato (Beckoff attualmente usa il suo sistema operativo dedicato TwinCAT OS che si appoggia su normali PC). Lincapsulamento dei dati quello standard di Ethernet. Ogni comando contiene una intestazione e un campo WC (Working Counter), come mostrato nella seguente Figura. Ogni messaggio Ethernet pu contenere pi comandi EtherCAT, implementando in questo modo una maggiore banda e una maggiore efficienza nellutilizzo di Ethernet.

264

Il CRC standard di Ethernet utilizzato per controllare la correttezza dei dati. In tale sistema il master controlla completamente gli slaves che non inizializzano la trasmissione.

I due metodi utilizzati per la comunicazione sono Ether-Type e lincapsulamento UDP/IP. LEther-Type, mostrato nella seguente Figura, utilizza un organizzazione dei dati di tipo Lenght-Field come in IEEE 802.3. LEther-Type non sfrutta il protocollo IP e quindi risulta limitato nella gestione delle sottoreti. Lincapsulamento utilizzato dal protocollo UDP/IP permette ai frame di EtherCAT di attraversare le sottoreti, ma con uno svantaggio; lutilizzo di UDP/IP aggiunge 28 bytes (20 per IP e 8 per UDP) al frame e fa degradare la prestazioni Real-Time a causa del suo stack di tipo non deterministico. Gli slave in questo tipo di standard vanno dai nodi intelligenti ai moduli a 2 bit per lI/O e sono collegati tramite una rete 100BASE-TX di tipo a fibra ottica oppure E-bus. E-bus un livello Fisico EtherCAT per Ethernet che offre un segnale in tensione differenziale a basso voltaggio (LVDS Low Voltage Differential Signal).

265

Gli slave possono essere collegati a caldo in qualsiasi punto della rete e possono coesistere anelli secondari se collegati tramite degli SWITCH.

Gli slave ricevono i dati, li processano e poi li passano allo slave successivo appartenente al medesimo anello. Questo tipo di struttura fa si che si introduca un ritardo nella trasmissione dei dati dellordine di qualche nanosecondo (elaborazione dei frame al volo On the Fly). Lultimo slave restituir quindi i dati processati al master attraverso il percorso inverso sullanello. Quindi, ogni volta che il frame Ethernet arriva in un nodo, il dispositivo hardware presente ne estrae le informazioni che gli servono per aggiornare i suoi dati.
266

Durante il percorso di ritorno ogni slave amplificher e rigenerer linformazione. Ogni slaves ha due interfacce di tipo Tx e Rx in modo che la comunicazione bidirezionale possa avvenire senza alcun problema. La seguente Figura mostra lelaborazione dei frame al volo di EtherCAT

In ogni comando dello standard EtherCAT, quando uno slave processa un comando ad esso destinato, il contatore WC viene incrementato, in questo modo il master pu determinare se gli slave indirizzati stanno scambiando dati. Lunit per la gestione della memoria (FMMU - Fieldbus Memory Management Unit), mostrata nella seguente Figura, presente in ogni slave, converte gli indirizzi logici in fisici e tale informazione disponibile per il master allatto dellinizializazzione. Di conseguenza ogni slave necessita di uno speciale ASIC (Application Specific Integrated Circuit). Allarrivo di un messaggio, lo slave verifica se ad esso indirizzato e quindi inserisce le informazioni nel messaggio stesso (con un ritardo di alcuni nanosecondi).

267

EtherCAT una soluzione Real-Time Ethernet deterministica se non utilizzata con UDP/IP e con SWITCH e ROUTER tra il master e gli slave. E diffuso prevalentemente in Europa. Le caratteristiche principali di EtherCAT sono: Massimo numero di dispositivi: 65535 slave; Massimo baudrate: 2 x 100 Mbit/s full-duplex, il tempo di ciclo minimo pari a 100 us con Jitter di 1 us; Topologie possibili: lineare, stella, albero; Possibilit di utilizzo di SWITCH e di HUB (non indispensabili); Massima estensione della rete: anche maggiore di 500 Km, la distanza massima tra 2 nodi pari a 100 m; Accesso al bus avviato dal master; Connessione I/O: ciclica, aciclica, broadcast, multicast, incrociata; Comunicazione: master/master, master/slave, slave/slave; Canale messaggi: massimo 1484 byte di dati utente per frame Ethernet; Possibilit di integrazione con altri bus di campo come CANopen, Profibus, DeviceNET; Supporto per protocolli e applicazioni basati su IP (TCP, UDP, FTP, WWW, eccetera).

www.ethercat.org
268

7.14 PROFINET PROFINET la soluzione Industrial Ethernet offerta dal PROFIBUS International User Group. Diventato standard internazionale con la normativa IEC 61158, supporta attraverso la comunicazione Ethernet lintegrazione di dispositivi di campo per automazione e applicazioni critiche dal punto delle temporizzazioni. Oggettivamente, PROFINET pi di un protocollo, un nuovo modo di concepire larchitettura di un sistema di automazione industriale: esso si appoggia pesantemente sul concetto di oggetto dellautomazione da usare e riusare in modo intelligente diminuendo drasticamente il tempo e il costo dedicato allengineering. I suoi obiettivi principali sono quindi la drastica riduzione dei costi di progetto e messa in servizio di un impianto, e lintegrazione tra la nuova automazione di dispositivi basati su Ethernet e quelli tradizionali basati sui bus di campo. Uno dei vantaggi di PROFINET sul mercato dipende, tra laltro, dal fatto che le installazioni attuali di bus di campo possono essere espanse con PROFINET senza richiedere uno sforzo troppo grande. Ci significa che risulta possibile sviluppare un sistema che consiste di una miscela casuale di bus di campo (ad esempio Profibus, Interbus-S e AS-Interface) e di sottosistemi basati su Ethernet. E cos possibile un trasferimento continuo di tecnologia dai sistemi basati sui bus di campo verso PROFINET. In considerazione del gran numero di sistemi di PROFIBUS in uso, assolutamente essenziale, nellinteresse di proteggere gli investimenti, permettere a questi sistemi di essere conglobati in PROFINET facilmente e senza necessit di essere adattati. Anche se PROFINET differisce concettualmente dai sistemi di bus di campo come PROFIBUS, esso riuscito a definire delle strategie di transizione dalla rete Ethernet ad un bus di campo completamente trasparenti. Come protocollo di comunicazione PROFINET presenta due diverse tipologie di prodotto per coprire le molteplici esigenze: un protocollo, PROFINET CBA, poco adatto al tempo reale, ma basato su standard di accesso molto diffusi quali RPC/DCOM/OPC, e PROFINET IO, un protocollo pensato per il campo e il tempo reale. A livello applicativo PROFINET CBA introduce il concetto di modulo tecnologico, mostrato nella seguente Figura. La funzione di un impianto automatico o di una macchina in un processo di manufacturing effettuato con linterazione tra la meccanica, la parte elettrico/elettronica e la parte di controllo logico/software.
269

Lavorando a questo principio, PROFINET CBA definisce le parti meccaniche, elettriche/elettronica e logica di controllo/software in termini funzionali per formare un unico modulo tecnologico. Un modulo tecnologico permette quindi di fornire al progettista esattamente lhardware e il software del quale ha bisogno, visto come un singolo oggetto, il Componente per lAutomazione PROFINET.

I componenti vengono descritti con file XML che hanno la stessa funzione dei file GSD di PROFIBUS che permettono lintegrazione di dispositivi di diversi produttori. Creare una descrizione standard di un componente secondo delle regole comuni svincola il progettista dalla conoscenza di tool di programmazione, configurazione e parametrizzazione che possono essere diversi per ogni componente. Tutti i componenti sono utilizzabili in modo identico senza bisogno di conoscenze a priori. Al progettista non resta che collegare tra di loro i vari componenti per mezzo di tool grafici per ottenere il progetto completo. Da notare, che praticamente non richiesta nessuna conoscenza del mezzo Fisico su cui viaggiano le informazioni, per cui PROFINET CBA virtualmente aperto a ogni tipo di protocollo a patto che i componenti siano rappresentati secondo le specifiche PROFINET. Per esempio, grazie a degli accoppiatori attivi detti proxy, come visibile nella seguente Figura, PROFINET CBA integra PROFIBUS. Il proxy il rappresentante di ciascuno dei dispositivi collegati al bus di campo per quanto riguarda il mondo PROFINET. Il proxy si deve occupare di gestire la comunicazione verso Ethernet e verso il bus di campo, cio si comporta da gateway per quanto riguarda la comunicazione fisica. Inoltre il proxy un oggetto che sostituisce i dispositivi, nel

270

senso che esso realizza la vista PROFINET CBA (ad alto livello) del dispositivo di campo rendendola disponibile al mondo esterno. Rispetto al bus di campo, il proxy svolge le funzioni di un master. Come conseguenza dellintroduzione del proxy, tutti i dispositivi del bus di campo organizzati dietro esso sono presentati come nodi indipendenti di PROFINET (oggetti) e tali componenti risultano indistinguibili dai componenti posti direttamente su Ethernet. Importante sottolineare che tutte le configurazioni impostate a livello PROFINET CBA per gli oggetti su bus di campo sono salvate nel proxy e non nei dispositivi di campo.

Si parler ora dei protocolli di rete usati da PROFINET CBA e da PROFINET IO. Le esigenze dei due protocolli sono differenti e quindi ovvio che lo stack di comunicazione sia complesso. In generale PROFINET definisce tre tipi di modalit di comunicazione: TCP, UDP e IP: per dati non critici rispetto al tempo, come lassegnamento di parametri e la configurazione (Non Real-Time - NRT); Soft Real-Time (SRT): per dati di processo critici rispetto al tempo; utilizzata nel campo dellautomazione aziendale; Isochronous Real-Time (IRT): per particolari applicazioni, come per le applicazioni di Motion Control. La seguente Figura mostra il modello ISO/OSI per Profinet.

271

In generale PROFINET CBA utilizzer il primo modo di comunicazione, mentre PROFINET IO usa le due classi di comunicazione Real-Time. Il canale Real-Time permette la trasmissione di dati ciclici ed aciclici. Il grafico sottostante evidenzia la distribuzione dei tempi di risposta dei tre diversi approcci PROFINET alla comunicazione.

272

La comunicazione standard attraverso il protocollo TCP/IP fornisce tempi di risposta medi attorno ai 100 ms. SRT evidenzia un miglioramento dei tempi di trasmissione di un fattore almeno 10 e i tempi di risposta si attestano infatti tra gli 1 e i 10 ms. Nel caso della comunicazione mediante IRT si ottengono addirittura tempi di risposta costantemente attestati attorno a 1 ms. Anche la varianza subisce una riduzione progressiva il che si traduce ovviamente in una minor oscillazione dei tempi di risposta (Jitter) attorno al valore medio della distribuzione. Per potere raggiungere il risultato dichiarato dai dispositivi che usano RT, si assegna ai pacchetti in PROFINET IO una priorit alta in conformit con gli standard IEEE802.1P e IEEE802.1Q: i dati che fluiscono fra i dispositivi sono controllati dai componenti della rete (SWITCH con capacit VLAN) in base a questo concetto di priorit. Per quanto riguarda il secondo approccio in tempo reale, con IRT si tratta in questo caso di una soluzione hardware, che prevede luso di particolari ASIC, con funzionalit di SWITCH, che permettono di operare separando nel tempo la comunicazione RT e Non RT da quella IRT.

Ogni partecipante alla comunicazione sincronizzato con tutti gli altri tramite IEEE1588 e laccesso al mezzo fisico fatto in divisione di tempo. In questo modo come se si avessero a disposizione dei canali separati, uno per il traffico non critico e uno per IRT. Da notare che non ci sono messaggi di sincronizzazione espliciti perch listante di inizio ciclo conosciuto da tutti, visto che i componenti sono sincronizzati. Tutto questo possibile in PROFINET IO perch anche la trasmissione dei dati nella rete ottimizzata. Le misure indicano infatti che i tempi di trasmissione fra due stazioni su Ethernet possono ammontare fino a 20 ms nelle reti commutate
273

tramite SWITCH normali; se si verifica un carico molto alto della rete occorre usare degli SWITCH differenti. Se ci si trova nella fase Real-Time i pacchetti IRT hanno la precedenza, mentre i pacchetti Non IRT vengono bufferizzati. Siccome anche questi SWITCH sono sincronizzati, durante la fase IRT si effettua un inoltro dei pacchetti su base temporale e non sulla base dellindirizzo MAC eliminando quindi ogni minimo tempo di ritardo. Questo mostrato nella seguente Figura.

PROFINET usa Ethernet e TCP/IP come base per la comunicazione. Con Ethernet, non possibile definire un tempo allinterno del quale i dati devono essere trasmessi attendibilmente. Lutilizzo del protocollo TCP/IP ha rivelato che sono necessari tempi considerevoli utilizzando questo stack di comunicazione, oltre a questo lelaborazione dello stack TCP/IP produce un ritardo non costante. Lesperienza indica inoltre che la velocit della trasmissione seguendo la linea in Ethernet di 100 Mbit/s trascurabile rispetto allelaborazione nei dispositivi. Ci significa che tutti i miglioramenti nel tasso daggiornamento e quindi nella risposta in tempo reale devono essere realizzati soprattutto attraverso ottimizzazioni dello stack di comunicazione nel Provider e nel Consumer. Si definisce tempo di aggiornamento il tempo che passa da quando una variabile generata in unapplicazione del dispositivo a quando trasmessa ad un altro dispositivo attraverso i sistemi di comunicazione e successivamente messa a disposizione dellapplicazione.
274

Nella Figura soprastante, il tempo T1 determinato dallarchitettura hardware del dispositivo e difficilmente dipende dal protocollo. Il tempo T3 dipende dal sistema di trasmissione. Il tempo T2 dovuto allo stack di comunicazione. In PROFINET i dispositivi con funzionalit altamente tempo-critiche possono, quando stabiliscono il collegamento, negoziare protocolli di comunicazione con capacit Real-Time che riducono il tempo T2. In questo modo, PROFINET soddisfa le elevate richieste Real-Time disposte sul sistema di comunicazione. La soluzione proposta minimizza notevolmente i tempi dello stack di comunicazione e i risultati nelle prestazioni aumentano in termini di tasso daggiornamento dei dati di automazione. Leliminazione di parecchi livelli di protocollo riduce la lunghezza di messaggio, e meno tempo richiesto prima che i dati da trasmettere siano pronti per la trasmissione e lapplicazione sia pronta per procedere. Unulteriore beneficio si ha considerando che la potenza del processore necessario nel dispositivo per la comunicazione notevolmente ridotto.

275

Con PROFINET IO, lintegrazione di dispositivi di campo decentralizzati implementata direttamente su Ethernet. Per questo scopo, la metodologia di accesso master/slave di PROFIBUS DP convertita al modello produttore/consumatore. PROFINET prevede tre tipi di dispositivi: IO-Controller: dispositivo controllore (PLC) sul quale gira il programma di automazione; IO-Device: dispositivo di bus di campo remoto, che viene assegnato a un IO-Controller; IO-Supervisor: dispositivo/PC di programmazione con funzioni di configurazione e di diagnostica. Dal punto di vista della comunicazione, tutti i dispositivi su Ethernet sono trattati allo stesso modo. Tuttavia, durante il processo di configurazione i vari dispositivi sono assegnati ad un controllore centralizzato (IO-Controller). Per la configurazione viene utilizzata la stessa interfaccia di PROFIBUS. Durante il funzionamento, i dispositivi periferici (IO-Device) trasferiscono le informazioni di input al controller; il controller elabora le informazioni e trasferisce loutput ai dispositivi periferici. Le varie informazioni possono essere trasferite tra gli IO-Controller e gli IO-Device attraverso i seguenti canali: Dati ciclici di I/O: Questi dati sono trasferiti sul canale Real-Time; Allarmi: Sono trasferiti sul canale Real-Time;

276

Parametrizzazione, configurazione, lettura informazioni diagnostiche: Questi dati sono trasferiti attraverso canali standard sulla base di UDP/IP. Alla partenza, vengono stabilite le istanze di relazione (IO-AR) tra gli IO-Controller e gli IO-Device attraverso in canale UDP/IP. Listanza di relazione IO-AR contiene diverse relazioni di comunicazione (CR) attraverso le quali sono trasferite la configurazione, i dati di processo e gli allarmi. Il dispositivo IO-Controller trasferisce i dati di parametrizzazione e di configurazione del dispositivo IO-Device assegnato sulla Record data CR. La trasmissione ciclica dei dati di ingresso e di uscita implementata sulla IO-CR . Gli eventi aciclici sono trasmessi sulla Alarm-CR al IO-Controller. In PROFINET esistono diversi tipi di allarme: unplug, plug in, diagnostici, di stato e allarmi di aggiornamento, inoltre sono comunque possibili allarmi specifici inseriti dal produttore del dispositivo. E possibile assegnare una priorit alta o bassa agli allarmi.

Lo scambio dati ciclico implementato attraverso la relazione di comunicazione IO-CR. I dati di I/O sono trasmessi a cicli di tempo prefissati la cui frequenza di aggiornamento pu essere diversificata per ciascun dispositivo. Inoltre lintervallo di invio pu essere diverso dallintervallo di ricezione. Per la descrizione di uno scambio di dati ciclico, mostrato nella seguente Figura, PROFINET IO definisce: Ciclo di bus: La base tempi del clock 31.25 us. Un valore tipico 32 per avere un ciclo di bus di 1 ms;

277

Reduction Ratio: Il rapporto di riduzione indica ogni quanti cicli di bus viene spedito un frame. Il ciclo di invio calcolato moltiplicando il rapporto di riduzione per la durata del ciclo di bus; Frame Offset: Il Frame Offset indica loffset relativo (in incrementi di 250 ns) dallinizio del ciclo di bus. Indica quando un determinato frame verr spedito allinterno del ciclo di bus; Fase: La fase indica in quale ciclo di bus il frame corrispondente verr spedito. Valori tipici sono 1 o 4.

Non tutti i dati devono essere trasmessi con la stessa frequenza, se ci avvenisse, la stazione pi lenta determinerebbe la velocit di spedizione dei dati. Per esempio, i valori di temperatura non devono essere spediti durante ogni ciclo di bus. La soluzione a questo problema fornita dal Reduction Ratio che deve essere considerato come un fattore moltiplicatore del ciclo di invio o di ricezione e determina in quale ciclo di quelli successivi verranno trasmessi i dati. Il rapporto di riduzione specificato, durante la configurazione, per ogni relazione di comunicazione IO-CR. Ad ogni dispositivo deve essere assegnato un numero di identificazione, Device Ident Number (ID), univoco. Questo numero a 32 bit diviso in due parti: i primi 16 bit rappresentano il numero identificativo del produttore, i rimanenti 16 bit il numero identificativo del dispositivo. E stato specificato un modello uniforme per i dispositivi IO-Device PROFINET, che permette una configurazione dei singoli moduli del dispositivo. Questo modello simile alle caratteristiche del modello PROFIBUS DP. Un dispositivo di campo pu
278

essere modulare, cio includere slot fisici per linserzione dei moduli, oppure non espandibile e allora gli slot possono essere considerati virtuali. In ogni caso questo tipo di modellizzazione permette di indirizzare i canali di I/O presenti nel sistema con indice univoco. Tra laltro questo progetto modulare fa si che eventuali moduli I/O esistenti su PROFIBUS DP possano essere incorporati in PROFINET senza restrizioni e modifiche. Tutto questo assicura una protezione degli investimenti per i produttori di dispositivi e per gli utenti finali.

PROFINET IO supporta un concetto di diagnostica multi-layer, mostrato nella seguente Figura, che rende possibile unefficace metodo di rilevamento degli errori e la conseguente risoluzione di problemi. Quando si verifica un errore, lIO-Device interessato invia un allarme diagnostico allIO-Controller. Questo allarme richiama una corrispondente routine allinterno del programma del PLC che gestisce il guasto. Dopo aver eseguito la routine lIO-Controller conferma il riconoscimento dellerrore tramite un telegramma allIO-Device. Se un difetto in un dispositivo o in un modulo implica la necessit di rimpiazzarlo completamente, lIO-Controller automaticamente effettua la parametrizzazione e la configurazione del nuovo dispositivo o modulo. Le informazioni diagnostiche sono strutturate in modo gerarchico.

279

Il cosiddetto Soft Real-time Channel (SRT Channel) un primo approccio al problema della gestione della comunicazione Real-Time e in grado di soddisfare processi nei quali: Risultano accettabili ritardi contenuti entro determinati limiti (circa 10 msec); Le condizioni imposte sui limiti accettabili per i ritardi debbano essere mantenuti non rigidamente, ma attorno a un valore medio. Si tratta di una soluzione completamente software in grado di soddisfare, per le caratteristiche che presenta, le applicazioni tipiche dellarea della factory-automation ove i tempi di risposta del sistema si devono attestare attorno alla decina di millisecondi. In questo caso in PROFINET c soltanto uno stack di comunicazione minimizzato e ottimizzato che sostituisce i livelli TCP/IP e UDP/IP. PROFINET usa pacchetti Ethernet che sono identificati attraverso lEtherType, mostrato nella seguente Figura. Gli EtherType sono assegnati da IEEE e quindi sono univoci al fine di poter distinguere i vari protocolli.

280

Il FrameID utilizzato per indirizzare un canale di comunicazione specifico tra due dispositivi. EtherType e FrameID fanno parte dellheader del protocollo RT e favoriscono una classificazione veloce dei pacchetti. Questo permette al dispositivo ricevente di classificare un pacchetto ricevuto velocemente per mezzo di un efficiente algoritmo. I 6 byte dellindirizzo MAC selezionano il dispositivo. Il dispositivo Real-Time deve valutare solo lEtherType e il FrameID per trovare il canale di comunicazione corretto. Nel pacchetto viene anche inserito un contatore di ciclo Cycle Counter da parte del Provider. Il Provider incrementa il contatore di ciclo ad ogni ciclo e lo inserisce nel pacchetto. Ogni bit di incremento corrisponde ad un intervallo di tempo di 31,25 us. Il Consumer, quando riceve il pacchetto, controlla il valore contenuto nel campo Cycle Counter. Attraverso questo valore pu controllare se i dati di processo trasmessi sono quelli attuali. Per potere raggiungere un risultato ottimale, i pacchetti in PROFINET possono avvantaggiarsi delle priorit in conformit con IEEE 802.1Q. Se i pacchetti sono
281

dotati di un VLAN Tag, mostrato nella seguente Figura, trasportano anche un valore di priorit codificato in un numero da 0 (senza priorit) a 7 (massima priorit).

I pacchetti che fluiscono fra i dispositivi sono gestiti dagli SWITCH in base a questo concetto di priorit. Un pacchetto a pi alta probabilit ha la precedenza durante la fase di accodamento allinterno dello SWITCH sul pacchetto con priorit pi bassa. Luso della priorit basata su VLAN assicura che i pacchetti Real-Time siano preferiti, durante linstradamento tramite SWITCH, ai pacchetti standard del normale traffico IP. Ai pacchetti PROFINET Real-Time viene assegnato il valore 6. Lo scopo delle suddivisone del ciclo di comunicazione RT quello di dividere la banda allinterno del sistema. Per questo motivo non vengono definiti dei parametri di tolleranza per il Jitter, parametri invece definiti nella comunicazione IRT. I dispositivi PROFINET utilizzano una velocit di trasmissione di 100 Mbit/s in full-duplex e sono collegati tramite SWITCH. In teoria, ciascun dispositivo potrebbe trasmettere i pacchetti usando tutta la banda massima, ma questa caratteristica porterebbe in breve tempo ad un cattivo funzionamento del sistema, infatti non sarebbe possibile che verso un singolo nodo siano diretti pi flussi contemporanei tutti alla banda massima (overload) e neppure la trasmissione di pacchetti Non RT (NRT). Gli SWITCH interessati devono gestire le situazioni di sovraccarico attraverso delle code, oppure in ultima ipotesi gettare via i pacchetti. Per questo motivo PROFINET prevede un meccanismo per gestire e limitare linvio dei pacchetti. Per aumentare luso della banda e per prevenire sovraccarichi temporanei dovuti a connessioni multiple, un PROFINET IO-Controller pu essere
282

collegato allo stesso tempo con diversi IO-Device, e sincronizzare il ciclo di invio del provider con quello del consumer. Questa sincronizzazione basata sul valore del contatore di ciclo Cycle Counter con una accuratezza stimata di un ciclo di clock. Come mostrato nella seguente Figura, il ciclo di comunicazione suddiviso in parti differenti. Ogni ciclo definito da Tsendclock che compreso tra 31,25 us e 4 ms.

Allinizio del ciclo vengono spediti i pacchetti RT relativi al dispositivo. Il tempo destinato ai pacchetti RT non deve superare una certo ammontare (es. 50%) per ciascun ciclo. Successivamente possono essere spediti pacchetti Real-Time aciclici (aRT). Anche il tempo destinato per questi pacchetti non deve superare un certo ammontare (es. 10%). Infine, per il resto del tempo disponibile, verranno spediti i pacchetti Non Real-Time (NRT), ad esempio i pacchetti UDP/TCP. Attraverso il rapporto di riduzione Reduction Ratio e la Fase possiamo distribuire i pacchetti RT nel tempo. Il traffico di rete viene cos controllato e limitato attraverso questi meccanismi. Questi meccanismi di gestione seguono le seguenti regole: il processo che si occupa dellinvio dei pacchetti non deve spedire alcun pacchetto RT se allinizio del nuovo ciclo esiste una situazione di sovraccarico per linterfaccia locale; in media, non pu essere usato pi di un certo ammontare di banda per evitare il sovraccarico del sistema. Uso di applicazioni di Motion Control richiede la sincronizzazione dei cicli di applicazione. Tramite IRT possibile controllare cicli di bus di durata minore di 1 ms e con Jitter inferiore ad 1 us.
283

Si tratta in questo caso di una soluzione hardware. In questo caso in PROFINET non c soltanto uno stack di comunicazione minimizzato, anche la trasmissione dei dati nella rete viene gestita attraverso particolari SWITCH.

In un sistema IRT il ciclo di bus deve essere diviso in una parte IRT e una parte non IRT durante la configurazione. PROFINET IRT usa gli stessi protocolli visti precedentemente; in aggiunta ha un protocollo di comunicazione per la sincronizzazione e un gestore della comunicazione temporale. Lo scopo principale di IRT la sincronizzazione della comunicazione attraverso un controllo preciso della comunicazione. Questo pu essere implementato attraverso una programmazione della tempistica specifica per ogni singolo nodo inserito nella comunicazione. La programmazione della tempistica di comunicazione definisce esattamente quando un singolo pacchetto arriver a destinazione e quando dovr essere di nuovo instradato. Dovranno essere prese anche delle contromisure al fine di evitare che le stazioni senza comunicazioni IRT non interferiscano sul sistema. La sincronizzazione del clock disaccoppiata dai meccanismi IRT. La sincronizzazione usa le sequenze di protocollo secondo la normativa IEEE 1588 (PTP - Precision Time Protocol). I pacchetti IRT sono soggetti ad una comunicazione guidata dal tempo. Una programmazione delle tempistiche nel dispositivo di campo IRT definisce il tempo esatto di trasferimento dei dati Real-Time. Gli altri pacchetti possono essere trasferiti solo dopo aver trasmesso i dati Real-Time. Il pacchetto IRT, la cui struttura mostrata nella seguente Figura, specificato dalla sua posizione temporale, dal FrameID e dallEtherType (0x8892). Il campo VLAN per la priorit non necessario e quindi non viene inserito nel pacchetto.

284

Utilizzando una rete Ethernet standard dotata di SWITCH, i differenti pacchetti che sono stati spediti sulla stessa porta vengono processati secondo la strategia il primo arrivato, il primo servito. Con il campo VLAN possibile diminuire il ritardo di alcuni speciali pacchetti, ma laccodamento pu ancora sommare dei ritardi non prevedibili al tempo di trasferimento. Per ottenere il determinismo nel trasferimento di pacchetti Ethernet si deve riservare esplicitamente per i pacchetti IRT una percentuale della banda disponibile, non solo nei dispositivi, ma anche negli SWITCH.

La banda disponibile divisa in due sezioni, banda per la comunicazione IRT e banda per le altre comunicazioni. Allinizio del ciclo inserita la comunicazione IRT. Allinterno del tempo destinato allIRT possono essere trasmessi solo pacchetti IRT. I pacchetti IRT sono identificati dal loro FrameID. Nel frattempo gli altri pacchetti sono inseriti in un buffer fino allinizio della parte Non IRT. Nella parte Non IRT i pacchetti sono spediti in base alle regole definite nella IEEE 802.1D. Come descritto in precedenza, per linvio dei pacchetti vengono valutate le rispettive priorit. Il Jitter di sincronizzazione di un ciclo IRT deve essere inferiore ad 1 microsecondo. Per ottenere un trasferimento di dati Real-Time deterministico allinterno di un ciclo IRT, il tempo di invio di ogni pacchetto calcolato esplicitamente ed fisso per ogni
285

pacchetto. Parimenti vengono definiti i limiti del ciclo IRT. I limiti degli altri pacchetti (RT, aRT, NRT), per la parte del ciclo Non IRT, dipendono dal numero di pacchetti da spedire e possono variare nel tempo. I limiti del ciclo IRT (inizio e fine) possono essere utilizzati come indicatori per linizio di una applicazione (ad esempio per la Motion Control) Per il trasferimento dei dati attraverso i protocolli TCP/IP o UDP/IP sufficiente configurare i dispositivi che devono comunicare (producer, consumer). Tutti gli altri componenti come gli SWITCH che si trovano fra i dispositivi hanno delle tabelle di indirizzi che vengono aggiornate durante la comunicazione. Diversamente, IRT ha bisogno non solo di conoscere i dispositivi che devono comunicare, ma anche tutti i nodi che si trovano sul tragitto. La conoscenza dellesatta topologia porta i seguenti vantaggi: Garanzia del determinismo: Per ogni pacchetto il tempo di invio ad un dispositivo definito esattamente e il tempo di invio di un pacchetto diverso da quello degli altri pacchetti dello stesso nodo. Inoltre pacchetti spediti su porte diverse possono essere spediti allo stesso istante di tempo. Sono definiti anche i tempi di spedizione di tutti i nodi con switch che si trovano tra il producer e il consumer. Non avviene laccodamento dei pacchetti IRT e cos il trasferimento dei dati allinterno dello switch pu essere ridotto al minimo. Ottimizzazione delluso della banda: Pacchetti destinati a parti differenti del sistema possono essere trasferiti allo stesso istante di tempo. Lalgoritmo che pianifica le temporizzazioni pu suggerire topologie alternative per lottimizzazione. Per sfruttare al massimo le prestazioni di IRT sono stati progettati degli ASIC (Application Specific Integrated Circuit) con controllore Ethernet con funzionalit di SWITCH e funzionalit IRT integrate. Questi nuovi ASIC permettono diverse opzioni di cablaggio per interfacciare dispositivi di campo con Ethernet tra cui leconomica struttura a linea tipica degli impianti PROFIBUS. Questo permette una riduzione dei costi considerevole, perch in molti casi non necessario lutilizzo di SWITCH esterni, e il cablaggio di un sistema di automazione in una struttura a linea permette una notevole riduzione dei costi dei cavi e del loro posizionamento. PROFINET diffuso prevalentemente in Europa.

286

www.profibus.com/pn

287

7.15 Tabelle comparative sui bus di campo Ethernet Tabella 1

Tabella 2

288

Tabella 3

289

Tabella 4

290

7.16 Bibliografia Alessandro Robertini: Profinet nellindustria Fieldbus & Networks, 2003. Anthony Keane: Real-Time networks using Ethernet?. Article 269 Ethernet, www.controldesign.com. Cavagnari: Beckhoff EtherCAT Ethernet fon control and automation technology. 5. Cisco Systems: Intelligent Ethernet and Ethernet/IP deployments, Rockwell Automation, 2003. 6. Contemporary Controls: The ABCs of selecting the proper Industrial Ethernet switch, 2005. 7. Control Techniques: Fieldbus Guide. 8. Erik Didley: Sercos III La nuova generazione, Bosch-Rexroth, 2006. 9. Fieldbus Technology, Burkert - Fluid Control System. 10. Francesco Venturini: I bus di campo isocroni - Profibus DP V2 e Profinet I/O, Universit degli studi di Brescia. 11.Hilscher Italia: EtherCAT. 12.Hilscher Italia: Ethernet Powerlink. 13.Industrial Ethernet solutions under the spotlight, www.ferret.com.au, 2005. 14.Industrial Ethernet University: Choosing the right industrial Ethernet switch. 15.Industrial Ethernet University: Power over Ethernet. 16.Industrial Ethernet University: Real-Time Ethernet 1. 17.Industrial Ethernet University: Real-Time Ethernet 2. 18.Ing. Marzio Mascellani: Competence in communication, Hilscher, 2006. 19.Jim Montague: Fellowship of the fieldbus, Control Engineering, 2004. 20.John S. Rinaldi: Industrial Automation Networking 2004 Beyond, 2004. 21. Jonas Berge: HSE installation - Building industrial strenght Ethernet. 22. Kevin Bothamley and Jim Rodgerson: Emerging Ethernet Protocols, Department of Electrical and Electronic Engineering Manukau Institute of Technology Auckland. 23.Luca Garzone: Ethernet/IP ControlNET over Ethernet TCP/IP, Netlinx Rockwell Automation. 24. Massimo Giussani: Controllo con Sercos, Fieldbus & Networks, 2004. 25.Massimo Giussani: Ethernet Industriale, Fieldbus & Networks, 2004.
291

1. 2. 3. 4.

26.Massimo Giussani: Il protocollo Modbus, Fieldbus & Networks, 2005. 27.Matteo Marino: Ethernet verticale anche Real-Time, Fieldbus & Networks, 2006. 28.Matteo Marino: Giovane, ma gi Real-Time, Fieldbus & Networks, 2005. 29. Matteo Marino: In campo senza freni Fieldbus & Networks, 2005. 30. Max Felser: Real-Time Ethernet - Industry prospective, Member IEEE, 2005. 31. Michael Flur: Real-Time Ethernet standards, Smart Nertworks Devices, 2005. 32.Michele Orioli La concezione aperta di Sercos III, Fieldbus & Networks, 2006 33.N-TRON: Industrial Ethernet in industrial environment, 2004. 34.Paolo Ferrari, Alessandra Flammini, Daniele Marioli, Andrea Taroni: Sincronizzazione in reti RTE tramite Ieee 1588, Fieldbus & Networks, 2006. 35.Paolo Ferrari: Comunicazioni industriali su Ethernet, switch sincronizzazione e norme, Universit degli studi di Brescia. 36. Peter Highton: Freescale technology forum, 2005. 37.Prof. Dr. Ing. Birgit Vogel Heuser: Introduction of Real-Time solutions , University of Wuppertal, 2005. 38.Prof J.D. Decotignie: Real-Time Networking Ethernet,CSEM - Centre Suisse dElectronique et de Microtechnique SA. 39. Rivista: Brescia Ricerche n52 , INN-TEC, 2005. 40.Roberto Motta: Ethernet/IP ControlNet over Ethernet TCP/IP, Assoautomazione. 41.Sang Geon Park: Fieldbus in IEC61158 Standard, 2002. 42. Stefano Cazzani: Industrial Ethernet , Le Monografie. 43.Stefano Panzieri: Profinet , Universit degli studi di Roma. 44. Technical article: Standards based Real-Time Ethernet now off the self, Theonline Industrial Ethernet Book, 2006. 45. The Grid Connect: Fieldbuss Comparison Chart , www.gridconnect.com, 2006. 46. Valerio Alessandroni: Due temi caldi , Fieldbus & Networks, 2006. 47.Valerio Alessandroni: FF colpisce dritto al cuore, Fieldbus & Networks, 2002. 48. V. Alessandroni: La tecnologia dei fieldbus , Fieldbus & Networks, 2005.
292

OSSERVAZIONI CONCLUSIVE Lo standard di comunicazione dati Ethernet di comune impiego gi da molti anni, e la maggior parte delle reti aziendali esistenti in tutto il mondo si basa su di esso. Nonostante pi volte sia stato detto che questa tecnologia sarebbe stata superata, continua ad evolversi e offre tutte le caratteristiche richieste dagli utenti, da cui si pu arguire che verr utilizzata ancora per molti anni. Negli ultimi anni, Ethernet ha iniziato a farsi spazio anche nel mercato industriale. A dire il vero, Ethernet esisteva gi a livello industriale, ma solo fino a pochi anni fa era concentrata solo a livello amministrativo. Era la rete che collegava i vari uffici dellamministrazione oppure collegava gli impianti di produzione a livello di area, non era la rete su cui viaggiavano i dati critici dellautomazione, con cui vengono, ad esempio, controllati gli azionamenti. Da pi di 10 anni, nellindustria e nelle fabbriche il bus di campo (fieldbus) stato il mezzo scelto tradizionalmente per la comunicazione dati affidabile e deterministica. Esistono molti standard e tipi diversi, di conseguenza per, linteroperativit costosa e difficoltosa. I tradizionali bus di campo mostrano poi, anche i propri limiti nella velocit di trasmissione, di integrazione e di diagnostica. Per questi ed altri motivi di tipo commerciale, taluni ritengono che i bus di campo passeranno rapidamente dallalba verso il tramonto a favore di soluzioni basate su Ethernet/Internet, che peraltro gi presente in ambiente industriale a livello di cella e di area. Ethernet/Internet sta diventando la soluzione unificata per gestire le comunicazioni di unazienda, e viene gi proposta in alternativa ai bus di campo. Rispetto ai bus di campo sopra citati, Ethernet risulta essere penalizzata perch non deterministica e a bassa efficienza (il numero di byte trasmessi elevato rispetto al numero di byte che contengono effettivamente linformazione) e questi sono i motivi che per lungo tempo ne hanno escluso luso come bus di campo. Oggi le nuove tecnologie (ad esempio, SWITCH, Fast e Giga Ethernet) riducono notevolmente la probabilit di collisione, e la bassa efficienza viene compensata dalla possibilit di interfaccia diretta verso i livelli superiori e utenti remoti (Internet) ed dallelevata velocit di trasmissione, per cui molti bus di campo si stanno preoccupando della compatibilit verso Internet. Si assiste cos al proliferare di studi per la gestione combinata dei bus di campo con le nuove tecnologie (Ethernet, Wireless-WiFi, Internet).
293

Sono queste le ragioni principali per cui Ethernet ha incominciato ad essere presa seriamente in considerazione in ambito industriale anche a livello di campo. Fra gli altri vantaggi si ricordano: Affidabilit: Ethernet uno standard aperto ben definito per cui linteroperativit pi semplice e i componenti sono reperibili presso molti produttori a basso costo. Ethernet trasparente, flessibile e garantisce la protezione degli investimenti per il futuro. Sulla stessa rete possono coesistere molti protocolli diversi; Integrazione: Una rete Ethernet, diversamente da un bus di campo, in grado di integrarsi facilmente con diverse e nuove tecnologie (ad esempio Internet, Wireless-WiFi, Bluetooth, Fibra Ottica) e nuovi tipi di dispositivi a livello di campo (ad esempio Soft-PLC e Web-Sensor); Velocit: Le velocit di trasmissione dei dati a 10/100 Mbit/s sono ormai la normalit con Ethernet ed oggi sono disponibili anche soluzioni Gigabit; il protocollo pi veloce su bus di campo arriva a 12 Mbit/s come massima velocit di trasmissione, ma la maggior parte raggiunge al massimo i 2 Mbit/s; Determinismo: Esistono gi i protocolli Industrial Ethernet per dare priorit ai dati, e soluzioni per evitare il non determinismo dovuto al protocollo CSMA/CD di Ethernet (VLAN, priorit, SWITCH, eccetera), di conseguenza si pu dire che attualmente Ethernet sia praticamente deterministica, che poi lobiettivo finale dellutente industriale. Ethernet oggi, con oltre l80% di quota di mercato, il numero uno nel panorama delle reti LAN. Questa rete stata concepita appositamente per limpiego in ambiente ufficio e offre una comunicazione dati assai performante. Inoltre, Ethernet costituisce la tecnologia di base per lIntranet e Internet, e offre molteplici possibilit di interconnessione con la rete mondiale. Le svariate possibilit di Ethernet che oggi sono gi disponibili nellambiente dufficio, possono quindi essere trasportate e sfruttate vantaggiosamente anche nellautomazione dellindustria manufatturiera e di processo.

294

Per concludere, possibile fare altre brevi considerazioni sulle prospettive di Ethernet come bus di campo nellautomazione industriale. Dal punto di vista dei produttori di dispositivi Industrial Ethernet, quelli che desiderano avere buone prospettive di vendita sui mercati internazionali dovranno implementare tutti i vari differenti standard Industrial Etnernet nei loro dispositivi. Implementare standard differenti in tutti i dispositivi, richieder una quantit enorme di risorse per lo sviluppo. Inoltre, quali protocolli per Ethernet Industriale meritano di essere sviluppati? Una domanda analoga, la ci si posta oltre 10 anni fa quando hanno fatto la loro comparsa nel mercato industriale i bus di campo. La risposta non solo basata su una questione di prestazioni del protocollo stesso, ma anche basata su aspetti riguardanti la domanda a livello mondiale. Dove desidero vendere il mio prodotto? Modbus TCP ha nodi installati in tutto il mondo ed stato uno dei primi protocolli Industrial Ethernet introdotti sul mercato. Negli Stati Uniti, EtherNet/IP gi affermato, sostenuto pesantemente da Rockwell Automation e sta incalzando Modbus TCP. Per lEuropa, il protocollo emergente PROFINET. Sostenuto da Siemens, sar probabilmente il protocollo Ethernet pi importante e diffuso nel mercato europeo nel prossimo futuro.
295

Per quanto riguarda lAsia, al momento non c nessuna risposta certa e ancora ci si interroga su quali protocolli Ethernet diventeranno pi popolari in tale mercato. Dal un punto di vista degli utenti finali, valutando la situazione attuale dei sistemi basati sui convenzionali bus di campo (molti e non integrabili fra di loro), hanno buoni motivi di essere ottimisti circa il futuro di Ethernet Industriale. Il fatto che le nuove reti industriali siano tutte basate sulla stessa tecnologia (Ethernet) per la trasmissione di dati, semplicemente un vantaggio considerevole rispetto al grande numero di tecnologie basate sui diversi bus di campo. A livello Applicazione del modello ISO/OSI, saranno per presenti vari protocolli non interoperabili tra di loro e pertanto, al momento, ci sono scarse probabilit di arrivare ad un unico standard per Ethernet Industriale. Ethernet (col connubio TCP/IP), nel futuro, sicuramente non sostituir mai i tradizionali bus di campo nellautomazione industriale, in quanto non in grado di garantire le prestazioni deterministiche richieste nellautomazione industriale, possibili attraverso i tradizionali bus di campo. Viceversa, levoluzione di Ethernet nel campo dellautomazione industriale, definita comunemente come Industrial Ethernet, consentir nello stesso tempo la possibilit di poter sfruttare le potenzialit di Ethernet e di Internet (TCP/IP) per alcune aree applicative nellautomazione industriale quando non fondamentale il requisito di determinismo (ad esempio per la configurazione e la diagnostica di un impianto industriale), e le potenzialit offerte dai tradizionali bus di campo quando vincolante il requisito di determinismo (per esempio un controllo assi dellimpianto industriale).

296

Bibliografia 1. Michael Flur: Real-Time Ethernet standards, Smart Nertworks Devices, 2005. 2. Harry Forbes: Industrial Ethernet: Enabling Collaborative Manufactoring, ARC-Advisory Group, 2005.

297

298

Potrebbero piacerti anche