standardy, normalizace, legislativa
Průmyslový Ethernet II: Referenční model ISO/OSI Článek je prvním pokračováním seriálu o průmyslovém Ethernetu jako nastupujícím standardu komunikace v automatizaci. Je v něm zopakován referenční model otevřené komunikace ISO/OSI a vztah modelu Ethernet TCP/IP k tomuto referenčnímu modelu. Podrobně jsou probrány vrstvy referenčního modelu důležité k pochopení funkce sítě Ethernet TCP/IP, zejména fyzická vrstva s fyzickými rozhraními, dále spojová vrstva s problematikou přístupu k fyzickému přenosovému médiu, síťová vrstva s vysvětlením problematiky adres v protokolech IPv4 a IPv6 a transportní vrstva s protokolem TCP. Nad tímto základem, tvořícím přenosový systém Ethernet TCP/IP, jsou uvedeny přehled a stručná specifikace protokolů uživatelské vrstvy, které se používají v místních sítích a v internetu, a v závěru článku stručný přehled aplikačních protokolů používaných v průmyslové automatizaci.
ván referenční model otevřené komunikace OSI normotvorné organizace ISO (RM ISO/OSI) a jeho vztah k modelu Ethernet TCP/IP. Ethernet TCP/IP je jednak standard v sítích typu LAN, jednak z něj vycházejí všechny současné varianty průmyslového Ethernetu. Vzhledem k tomu, že komunikační model Ethernetu TCP/IP se zobrazuje (mapuje) jen do prvních čtyř vrstev modelu OSI, bude ze sedmi vrstev RM ISO/OSI pozornost věnována fyzické a spojové vrstvě, síťové vrstvě (protokolům IPv4 a IPv6) a transportní vrstvě
František Zezulka, Ondřej Hynčica
s protokolem TCP. V souvislosti s vysvětlením metody přístupu k médiu CSMA/CD, která je typická právě pro spojovou vrstvu sítě Ethernet, bude vysvětlena i funkce rozbočovačů (hub) a přepínačů (switch), bez nichž si současné topologie ethernetových sítí nelze představit. Článek vychází především z [1].
2. Referenční model otevřené komunikace – RM ISO/OSI
Vždy, když se hovoří o komunikaci v heterogenním prostředí, přijde odkaz na RM ISO/ /OSI, tedy na referenční model (RM) otevřené komunikace (OSI data – Open Systems Interconnection). aplikační program B aplikační program A Jde o referenční model vypracovadata ný v začátku 80. let minulého stoaplikační vrstva aplikační vrstva letí organizací ISO jako standard data ISO 7498 pro propojování heteprezentační vrstva prezentační vrstva rogenních počítačových systémů. data Model stanovuje podmínky, při relační vrstva relační vrstva jejichž dodržení mohou různí účastdata níci přenosu spolehlivě komunikotransportní vrstva transportní vrstva 1. Úvod vat po sériové sběrnici navzájem data Než dojde na výklad odlišností průmysmezi sebou. Jde o otevřený model, síťová vrstva síťová vrstva lových síti typu Ethernet od standardu IEEE tedy model, který není závislý na data 802.3, je vhodné nejprve se vydat na důkladžádném firemním řešení. Model spojová vrstva spojová vrstva je sedmivrstvový, přičemž každá nou exkurzi do tohoto standardu. V této drudata vrstva má jistou, přesně definovahé části seriálu o nejrozšířenějším prostředku fyzická vrstva fyzická vrstva nou funkci a služby. pro otevřenou sériovou komunikaci v místpřenosové médium Struktura vlastního RM ISO/ ních sítích (LAN) a jeho cestě k rozšíření v automatizaci je pro ty čtenáře, jimž je tato Obr. 1. Výměna dat mezi dvěma účastníky a referenční /OSI je patrná z obr. 1 [1]. Zde je problematika zatím spíše vzdálena, zopakoznázorněno, jak se tvoří zpráva, model ISO/OSI (RM ISO/OSI) kterou odesílá účastník A účastníkovi B, a zároveň jak účastník B tuto zprávu Názvosloví: paket, rámec, datagram, zpráva přijímá. Vlastní přenos se uskutečňuje prostřednictvím fyzického spoje mezi každými Výrazy paket, rámec, datagram a zpráva jsou často používány jako synonyma, přičemž nejobecdvěma účastníky přenosu (účastníků může něji lze používat označení paket. Nicméně přesněji se používají k označení různých logických být i větší počet). Důležité je, že oba účastníbloků předávaných dat v různých vrstvách referenčního modelu ISO/OSI, a to následovně. ci (peers) přenosu mezi sebou tvoří na každé Paket (packet) úrovni modelu virtuální spoje, zatímco k reálFormátovaný blok dat předávaný po komunikační síti. V modelu ISO/OSI patří k přenonému přenosu dat dochází pouze ve vrstvě 1 sům na úrovni transportní vrstvy. Paket se skládá z řídicích dat (hlavička a zakončení) a vo(fyzické), která obsahuje mj. rozhraní mezi litelně uživatelských dat. účastníkem a přenosovým médiem. VirtuálRámec (frame) ní spoj znamená, že účastníci komunikujíBlok dat posílaný po přenosovém médiu na úrovni spojové vrstvy. cí spolu na úrovni vrstvy 7, tj. např. elektronickou poštou, nemají zdání o funkcích vrsDatagram tev 1 až 6. Každá vrstva má definovány dvě Obecně označení paketu, který není posílán zabezpečeným spojením (tedy je odeslán bez základní skupiny funkcí. První jsou služby předchozího navázání spojení nebo potvrzení o příjmu). Zpravidla je spojován se síťovou dané vrstvy a druhou funkcí je protokol vrstvrstvou, popř. s transportní vrstvou u nespojovaných služeb. Datagramy IP tvoří základní vy jako soubor pravidel, kterými se komunidatové bloky internetu. Jeden datagram může být rozdělen a odeslán po částech. Tomuto kace mezi účastníky přenosu řídí (tj. určujímechanismu se říká fragmentace a používá se pro úpravu počtu bitů/bajtů (délky) odeslacích, jak lze zahájit přenos, jak ho provést ných dat tak, aby odpovídala maximální délce pro daný typ spojení. a jak ho ukončit). Zpráva (message) Dosah každé vrstvy modelu je minimaliData na úrovni aplikační vrstvy. zován na jednu nejblíže vyšší a jednu nejblíže
86
AUTOMA 3/2007
standardy, normalizace, legislativa nižší vrstvu vlastní entity (účastníka) a na hierarchicky stejnou vrstvu jiného nebo jiných účastníků přenosu. Každá vrstva poskytuje své služby přes softwarové rozhraní (realizované jako komunikační protokol, tj. soubor pravidel pro komunikaci) vrstvě nejblíže vyšší na základě jejího požadavku na tuto službu (volání funkce), jak je patrné z obr. 2. Vztah Ethernetu k RM ISO/OSI je ve stručnosti následující. Metoda označovaná jako Ethernet představuje jen první dvě vrstvy sedmivrstvého RM ISO/OSI. Tyto dvě vrstvy byly standardizovány organizací IEEE na začátku 80. let minulého století jako standard IEEE 802.3. Funkčně odpovídají vrstvám 1 a 2 podle RM ISO/OSI, nicméně spolu s protokoly vyšších vrstev IP (vrstva 3 referenčního modelu) a TCP (vrst va 4), s vynechanými vrstvami 5 a 6 a s vyjádřenou vrstvou 7 s aplikačními protokoly (FTP, Telnet, NFS atd.), tvoří velmi rozšířenou variantu komunikačního modelu otevřené komunikace k RM ISO/OSI v místních sítích a jsou svázány také se sítí Internet [6]. Je zřejmé, že dříve než data, např. vytvořená v internetovém aplikačním programu (textová zpráva, javový applet, obrazová informace apod.), mohou být přenesena prostřednictvím Ethernetu, je třeba je upravit, zabezpečit, zakódovat, modulovat a opatřit adresami. V případě komunikace v místních ethernetových sítích se na tom vedle fyzické vrstvy a protokolu spojové vrstvy (Ethernet) podílejí také protokoly IP (Internet Protocol) a TCP (Transmission Control Protocol). Objevuje se tak model (síť) Ethernet TCP/IP a uvedené tři protokoly se označují jako Ethernet Protocol Suite – soubor protokolů Ethernet [1]. Je třeba si uvědomit, že Ethernet nemusí být nutně svázán jen s protokoly TCP/IP, jak je tomu při kancelářském použití a v internetu. Podobně tyto vyšší protokoly nemusevirtuální spojení
vrstva n volání funkcí
vrstva n
volání funkcí
služby
služby fyzické spojení
vrstva 1
vrstva 1
Obr. 2. Přenos zpráv mezi vrstvami modelu OSI preambule
cíl
zdroj
6 B
6 B
8 B
typ
datové pole
2 B 46 až 1 500 B
kontrola 4B
Obr. 3. Formát rámce v síti Ethernet (B – bajty)
jí fungovat jen spolu s Ethernetem. Na tomto místě seriálu je však nutné zabývat se právě nejobvyklejší softwarovou architekturou sítě Ethernet, tj. tou, kterou definuje Ethernet Protocol Suite. V souvislosti s RM ISO/OSI je třeba se také zmínit o často používaném termínu protocol stack jako o obecném označení konkrétní softwarové implementace (tj. programové-
AUTOMA 3/2007
ho kódu, knihovny) komunikačního protokolu podle vícevrstvého komunikačního modelu ISO/OSI, pro nějž se v češtině ustálil výraz zásobník (protokolu, protokolový). Přistupme nyní k podrobnějšímu popisu Ethernetu, tj. k jeho fyzické a spojové vrstvě [1]. Jak již bylo uvedeno, Ethernet žádné další vrstvy ani nemá.
3. Fyzická vrstva Ethernetu Ethernet je logická sběrnice, tzn. že datové pakety (rámce, datagramy, zprávy – viz názvoslovnou poznámku v rámečku na str. 86) jsou směrovány ke všem účastníkům, avšak
tů (tzv. minimální délka). Jestliže je předáváno dat méně, než činí tato stanovená minimální délka, je datové pole doplněno na minimální délku výplní (padding). Následuje pauza před následujícím rámcem na Ethernetu. Příjemce kontroluje správnost přenosu rámce vlastním výpočtem kontrolního součtu. Když se vypočítaná hodnota součtu shoduje s hodnotou přijatou v rámci, jsou data předána vrstvě 2 komunikačního protokolu. Je-li detekována chyba, příslušný rámec je vyřazen, a to bez informování vysílače o tom, že nebyl doručen. Adresy vysílací a přijímacích stanic jsou definovány podvrstvou MAC (Medium Access Control) protokolu spojové vrstvy Ethernetu.
4. Spojová vrstva Ethernetu
bit: 0
4
8
verze
délka hlavičky
typ služby
16
24
31
Protože uvažovaná síť je důsledně heterogenní, tj. využívá životnost protokol kontrolní součet hlavičky se k propojování počítačů, perizdrojová adresa IP (4 bajty) ferií a dalších systémů od růzcílová adresa IP (4 bajty) ných výrobců, je každé ethernedata (maximálně 64 kB) … tové rozhraní v zařízení opatřeno Obr. 4. Struktura datagramu protokolu IPv4 [4] unikátní adresou, tzv. MAC ID. Ve standardu IP verze 4 (IPv4) bit: jde o 48bitovou adresu (šest baj0 4 8 12 16 20 24 28 31 tů), uváděnou v hexadecimálním verze priorita značka toku délka dat příští hlavička limit skoků tvaru (např. 00-C0-3D-AA-09zdrojová adresa IP (16 bajtů) -23). První tři bajty určují výrobcílová adresa IP (16 bajtů) ce (kód výrobce), následující tři data … udávají vlastní adresu rozhraní (výrobní číslo karty). SpojoObr. 5. Struktura datagramu protokolu IPv6 [4] vá vrstva zajišťuje transport dat bit: mezi komunikujícími stanicemi 0 4 8 12 16 20 24 28 31 nebo segmenty v mezích jedné zdrojový port cílový port sítě Ethernet podle adresy zaříčíslo sekvence zení (MAC). číslo potvrzení offset rezervováno příznaky okno Druhá – spojová vrstva plní kontrolní součet ukazatel urgentních dat funkci zabezpečení přenosu volby výplň a definuje přístupovou metodata du (podvrstva MAC). V případě Obr. 6. Struktura paketu protokolu TCP [4] Ethernetu jde o náhodnou decentjednotlivě určeny jen těm, jejichž adresy jsou ralizovanou metodu založenou na časovém principu CSMA/CD (Carrier Sense Multiple Access/ uvedeny v adresovém poli rámce (tvořeném poli cíl a zdroj – viz obr. 3). /Collision Detection), kdy každý z účastníků přiKaždý jednotlivý datový rámec podle obr. pojených k síti má v principu stejné právo použít 3 je bit po bitu přenášen fyzickým médiem. médium, jestliže ovšem v daném okamžiku již Tok bitů začíná startovací posloupností (prepo médiu nevysílá jiný účastník [3], [5]. Aby ambule), která se používá pro synchronizaci vysílací stanice mohla zjistit, zda nenastala kolivysílací stanice se všemi přijímacími staniceze vyslaného rámce, musí být maximální doba mi. Následuje adresa příjemce, adresa vysílací přenosu signálu od vysílací stanice po nejvzdástanice a pole typu zprávy používané k odlišelenější stanici domény a zpět kratší, než je doba ní protokolů vyšších vrstev. Následuje vlastní potřebná k vyslání rámce nejmenší povolené délky (Round Trip Delay – RTD). pole dat a rámec je zakončen kontrolním součtem (Cyclic Redundancy Check – CRC). Pro Ve standardu Ethernetu s přenosovou rychpole dat je stanoven minimální počet bitů/bajlostí 10 Mb/s je minimální délka rámce 64 bajidentifikace
celková délka
příznaky
číslo fragmentu
Názvosloví: vysílání (zprávy) typu unicast, anycast, multicast a broadcast zpráva jedinému příjemci (unikátní); jde o zprávy navržené pro směrovací algoritmus založený na porovnávání co možná nejdelších adres zpráva určená k doručení většímu počtu přijímacích stanic (výběrová); přijíanycast mají ji jen stanice nacházející se blízko vysílací stanice multicast zpráva určená většímu počtu příjemců (skupinová); přijímají ji i vzdálené stanice broadcast zpráva určená všem stanicím na síti (všesměrová) unicast
87
standardy, normalizace, legislativa tů, tj. 512 bitů. Zde tedy musí být zajištěno, že maximální doba přenosu signálu od vysílací stanice nepřekročí polovinu doby potřebné pro přenos 512 bitů. Při rychlosti 10 Mb/s je doba nutná pro přenos jednoho bitu právě 100 ns, takže RTD musí být kratší než 51,2 μs. Aby tedy vysílací stanice mohla rozpoznat případnou kolizi při vysílání rámce, musí jeho první bit dosáhnout konce fyzického segmentu sítě nejpozději za 25,6 μs. Vysílací stanice tudíž po dobu vysílání rámce čeká nejméně 51,2 μs, a pokud nedostane informaci o kolizi, má za to, že rámec nebyl porušen a mohl být potenciálními přijímacími stanicemi přijat. Z této doby (51,2 μs pro rychlost přenosu 10 Mb/s) se vypočítává přípustná délka segmentu (spoje). Ta je pro jednotlivá přenosová média různá v závislosti na rychlosti šíření signálu v daném médiu. Délka spoje, která odpovídá době průchodu ethernetového rámce nejmenší povolené délky, určuje tzv. kolizní doménu. Do celkové doby přenosu je však třeba započítat i zpoždění na přepínačích, což znamená zkrácení kolizní domény vypočítané již zmíněným způsobem. Jestliže však není dodržena délka segmentu rovná délce kolizní domény nebo kratší (a na segmentu se tudíž nacházejí stanice ve vzdálenosti větší než dél-
ka kolizní domény), metoda CSMA/CD neodhalí kolizi rámce. Tu mohou odhalit protokoly vyšších vrstev, to však vede k poklesu výkonu sítě. Při používaných větších rychlostech přenosu v síti Ethernet je minimální délka rámce zvětšena tak, aby kolizní doména měla potřebnou funkční velikost. Růst rychlosti přenosu v síti Ethernet je z velké části způsoben pokrokem v mikro elektronice, vliv na rychlost přenosu však mají i další skutečnosti. Významnou roli mezi nimi má požadavek na přenos v plném duplexním režimu. Ten přišel do Ethernetu s příchodem krouceného páru vodičů jako přenosového média. Současně byla změněna topologie sítě ze sběrnice na topologii strom/ /hvězda při použití nejprve ethernetových rozbočovačů a později přepínačů. V ethernetovém kabelu je několik kroucených párů vodičů, a proto není důvod používat jen jeden pár pro poloviční duplex, ale lze využít dva páry pro plný duplex. Jeden kanál se může použít pro vysílání zpráv (Tx), druhý kanál (druhý kroucený pár) pro přijímání zpráv (Rx). Průchodnost spoje se tak může až zdvojnásobit. Zatímco rozbočovač směruje všechny rámce do všech větví hvězdicové topologie, přepínač si všechny rámce
ukládá a postupně je směruje (store and forward) jen do toho segmentu sítě, pro který je daný rámec určen. Pravděpodobnost kolize se tím výrazně zmenší a efektivita přenosu výrazně vzrůstá. Přístupová metoda CSMA/CD je v každém případě sice přirozená a efektivní pro místní kancelářské sítě, avšak nedefinovaný okamžik přístupu k přenosovému médiu je největším omezením determinismu komunikace, a tím i role Ethernetu 802.3 pro komunikaci a řízení v reálném čase. V tomto ohledu mají všichni kritici Ethernetu 802.3 jako varianty průmyslové sběrnice pravdu. Až na to, že průmyslový Ethernet může být a také je navržen tak, aby metodu CSMA/CD využíval jen pro časově nekritické zprávy; pro přenosy v reálném čase se používají jiné metody, které nemají tu slabinu jako metoda CSMA/CD.
5. Síťová vrstva protokolu Ethernet TCP/IP Síťová vrstva v síti Ethernet TCP/IP je reprezentována protokolem IP, na rozdíl od protokolů spojové vrstvy umožňujícím přenášet data mezi sítěmi Ethernet (dvěma i více). V současnosti se používá protokol
Tab. 1. Přehled běžných protokolů pro Ethernet TCP/IP Název Address Resolution Protocol Asynchronous Transfer Mode Bootstrap Protocol Dynamic Host Configuration Protocol Domain Name Service Digital Subscriber Line Fibre Distributed Data Interface (Secure, Trivial) File Transfer Protocol HyperText Transfer Protocol Internet Control Message Protocol Internet Group Management Protocol Internet Protocol Integrated Services Digital Network Neibourgh Discovery Protocol Network File System Network Time Protocol Packet Internet Grouper Post Office Protocol Point-to-Point Protocol Simple Mail Transfer Protocol Simple Network Management Protocol Secure Shell Transmission Control Protocol Terminal over Network User Datagram Protocol
88
Zkratka ARP
Charakteristika dynamicky převádí adresy IP na hardwarové adresy (MAC), je postaven na množině předdefinovaných zpráv typu žádost a odpověď (vrstva 3) ATM spojově orientovaný způsob přenosu používaný především v rozsáhlých sítích (WAN) BootP umožňuje staticky konfigurovat adresy IP podle adres MAC zařízení (vrstva 5 až 7) DHCP dynamicky přiděluje adresy IP a síťové masky zařízení během jejich spouštění nebo daného časového intervalu DNS převádí názvy počítačů a domén na odpovídající adresy IP DSL skupina metod umožňujících přenášet digitální data po telefonních linkách FDDI standard pro geograficky rozlehlé sítě typu LAN založený na protokolu token ring s využitím techniky zdvojeného kruhu FTP, SFTP, běžně používaný k výměnám souborů mezi dvěma počítači (popř. se zabezpečením) TFTP HTTP původně určen k publikování stránek v HTML ICMP poskytuje informace o statutu jednotlivých účastníků přenosu a posílá chybové zprávy (vrstva 3) IGMP používá se k řízení zařízení připojených do skupiny multicast; stanice s IGMP se mohou připojit do skupiny a odpojit se od ní a mohou posílat informace o stavu (vrstva 3) IP nezabezpečená, nespojovaná služba přenosu datagramů založená na striktně datagramové struktuře (vrstva 3) ISDN telefonní síť umožňující digitální přenos dat i hlasu po telefonních linkách NDP poskytuje možnost řídit vlastnosti sítě a vztahů založených na IPv6; nahrazuje tak některé protokoly IPv4 jako protokol ARP (3. vrstva) NFS umožňuje sdílet systémy souborů a přistupovat k nim přes počítačovou síť NTP protokol pro přenos časových signálů přes počítačovou síť PING nástroj ověřující dostupnost určitého uzlu přes síť IP s využitím protokolu ICMP POP protokol aplikační vrstvy umožňující klientům elektronické pošty stáhnout zprávy ze vzdáleného serveru prostřednictvím TCP PPP protokol spojové vrstvy pro přímé propojení dvou uzlů (často používaný pro vytáčené připojení k internetu) SMTP poskytuje služby elektronické pošty SNMP zjišťuje stav a konfiguruje parametry prvků sítě SSH síťový protokol pro připojení terminálu zabezpečeným (šifrovaným) spojením TCP realizuje službu předávání zpráv na základě ustaveného a zabezpečeného spojení (connection-oriented) (4. vrstva ) Telnet protokol pro práci ze vzdáleného terminálu UDP poskytuje nespojovanou službu předávání datagramů (vrstva 4)
AUTOMA 3/2007
standardy, normalizace, legislativa
vrstva
čas
IPv4 s adresovacím prostorem 32 bitů [4]. Změněna byla také klasifikace sítí. ZpůDané čtyři bajty se využívají pro adresovásob adresování zpráv je přizpůsoben jejich ní jak sítě (Net ID), tak koncového zařízeklasifikaci na zprávy typu multicast, anyní (Host ID). Příslušná adresa, zvaná adresa cast a unicast. Adresování typu broadcast se IP, musí být v tak rozsáhlé síti, jakou je např. v IPv6 nepoužívá, protože je implementováno do zpráv typu multicast (viz názvoslovnou internet, jedinečná. Rezervace a přidělování řídí úřad IANA (Internet Assigned Numbers poznámku v rámečku na str. 87). Autority). Adresy IP jsou podle určení rozděStruktura datagramu protokolu IPv6 je leny do tří tříd: třída A pro rozsáhlé sítě, třída znázorněna na obr. 5. B pro organizace typu univerzit a třída C pro ostatní. Dále mohou ještě být použity třídy D 6. Transportní vrstva a E, určené pro výzkumné a další účely. Pro dosažení co nejlepší efektivity jsou Transportní vrstva využívá služby síťozmíněné čtyři bajty IP využity v různých třívé vrstvy a realizuje spojení pro uživatelské počítačové programy. Těchto programů může dách různě. Ve třídě A je první bajt využit být i několik, takže mezi dvěma stanicemi pro Net ID a zbylé tři bajty pro Host ID, třída B má první dva bajty vyhrazené pro Net (počítači apod.) může být současně navázáno ID a následující dva bajty pro Host ID a třída C využívá tři první bajstrana A strana B strana A strana B (klient) (server) (klient) (server) ty pro Net ID a poslední bajt pro Host ID. FIN SYN Některé adresové prostory i adresy jsou využity pro speciálACK SYN + ACK ní účely. Například nejvyšší adresy v síti třídy C jsou rezervovány FIN + ACK jako adresa příjemce indikující všeSYN směrově vysílané zprávy (broadcast, např. v síti třídy C s Net ID ACK 131.32.140 je pro broadcast využita adresa IP 131.32.140.255). Pro skua) b) pinové (multicast) zprávy je využit adresový prostor od 224.0.0.0 až po Obr. 7. Způsob (a) navázání a (b) ukončení spojení 239.255.255.255. Struktura dato- s protokolem TCP (SYN – synchronize: žádost o synchronizaci čísel sekvence; ACK – acknowledgment: vého datagramu protokolu IPv4 je potvrzení příjmu předchozí zprávy; FIN – final: ukonna obr. 4. čení vysílání, vysílač v rámci daného spojení již nebude Protože adresovací prostor pro- odesílat další data) tokolu IPv4 přestává být pro rozsáhněkolik různých spojení. V transportní vrstvě lou a stále se zvětšující síť Internet dostačujíje zaveden např. protokol TCP (Transmissicí, byl v roce 1998 standardizován protokol IPv6, který postupně nahrazuje dosavadní on Control Protocol), který podporuje spojoIPv4. vanou službu a je sestaven tak, aby umožňoProtokol IPv6 má větší adresovací prostor val zabezpečený (error free) přenos větších objemů dat. Bezchybný příjem dat je kontnež IPv4, a to celých 128 bitů. Na rozdíl od IPv4 pokryje IPv6 adresovací potřeby sítě rolován vysílací stanicí pomocí potvrzování Internet na velmi dlouhou dobu. Upravena aktivovaného přijímací stanicí. Není-li přijebyla také hlavička datagramu, která je zjednotí paketu potvrzeno do určité doby, vysílač pošle předmětný paket opakovaně. Tak lze dušena a přizpůsobena potřebám modularity chybu nejen detekovat, ale i odstranit. Uvea flexibility, aby ji bylo možné podle potřeby rozšiřovat. Dále je zavedena možnost přiřadený algoritmus (označovaný jako Nagelův) umožňuje také přizpůsobit rychlosti vysíladit zprávám prioritu a také nové dvacetibitové pole, tzv. značka toku (flow label), které spoče a přijímače prostřednictvím mechanismu upravujícího délku vysílacího „okna“. Zařílu s adresami zdroje a příjemce dat může být zení může současně ustavit několik spojení využito k jednoznačné identifikaci toku dat. V případě IPv4 byl datový tok identifikován pěticí bitových polí reprezentujících adresu zdroje, adresu příjemce, zdrojový port, cílový HTTP DNS … Telnet SMTP port a protokol transportní vrstvy (např. UDP 5–7 SNMP FTP … BootP DHCP nebo TCP). Při použití IPv6 mohou směrovače (router) rychleji směrovat pakety, neboť 4 TCP … UDP nemusejí analyzovat celou hlavičku. 3 ARP IP … ICMP NDP Dále je v IPv6, podobně jako v rozšířené verzi IPv4, zaveden také bezpečnostní meCSMA/CD 2 chanismus. Ve zkratce to znamená, že obsah Ethernet paketů může být na ochranu před nežádou1 cím čtením zašifrován a že ve vrstvě 3 modelu OSI lze autentizovat přijímací i vysílací Obr. 8. Protokoly nejčastěji používané v rámci stanice a obsah paketu. modelu OSI (viz text)
AUTOMA 3/2007
s druhými stanicemi. Protokolem TCP rovněž řídí navazování spojení. Po dobu trvání spojení mezi dvěma aplikačními programy TCP vytváří obousměrný duplexní virtuální přenosový kanál. Struktura paketu protokolu TCP je znázorněna na obr. 6. Způsob, jakým TCP navazuje a ukončuje spojení, je znázorněn na obr. 7. Postup při navazování spojení je následující [1]: 1. Zařízení, které spojení s použitím protokolu TCP (spojení TCP) inicializuje (klient), pošle zprávu SYN k zamýšlenému komunikačnímu partnerovi (serveru). Tato zpráva indikuje úmysl ustavit spojení TCP. Současně zařízení posílá číslo portu serveru, na které bude klient posléze připojen, a číslo sekvence (Initial Sequence Number – ISN) spojení. 2. Server odpoví na akci klienta svou vlastní zprávou SYN s vlastní ISN a současně pošle potvrzovací zprávu (ACK) s ISN klienta zvětšeným o 1. 3. Klient odpoví na SYN serveru potvrzovací zprávou s ISN serveru zvětšeným o 1. Po uvedené trojnásobné výměně potvrzení spojení (handshake) si obě stanice – klient a server – mohou začít vyměňovat data, přičemž každá zpráva je potvrzována (ACK). Spojení se ukončuje opět trojnásobným „handshake“ posíláním zprávy o ukončení spojení (FIN). Dojde-li k přerušení komunikace, vrstva TCP o tom uvědomí příslušnou vyšší vrstvu komunikačního modelu. Porty, jejichž čísla jsou integrována do zpráv, fungují jako rozhraní k aplikačním programům (úlohám). Pro některé úlohy jsou rezervovány určité porty (tzv. well-known ports – např. port 80 je rezervován pro HTTP). Pokud port pro navazované spojení není rezervován, port se rezervuje při navazování spojení. Kombinace adresy IP zařízení a čísla portu, která se nazývá socket, reprezentuje globálně unikátní koncový bod pro komunikaci. Funkci vrstvy 4 v RM ISO/OSI může realizovat také protokol UDP (User Datagram Protocol). Ten však je, na rozdíl od TCP, jednosměrný, což znamená, že vysílající stanice nedostává od přijímající stanice žádnou zpětnou informaci o korektnosti nebo ztrátě přenášených dat. Přenos prostřednictvím UDP je rychlejší a protokol je kratší než TCP, neumožňuje však zjistit chybu při přenosu. Detekce chyby při spojení zde musí být řešena v aplikační vrstvě, která je adresována přes porty podobně jako u TCP. Protokol UDP se používá tehdy, kdy je důležitější získat data z procesu v reálném čase než využít sice zabezpečený, ale pomalý přenos kompletním protokolem TCP. Tedy UDP je vhodný protokol pro cyklický a rychlý přenos dat.
7. Aplikační vrstva Aplikační vrstva tvoří rozhraní komunikačního a uživatelského procesu. Proto proto-
89
standardy, normalizace, legislativa
krátké zprávy
Představení procesních přístrojů pro vodárenství Pro pracovníky ve vodárenství připravila společnost Siemens letos v lednu tematické setkání TIA na dosah. Představila na něm svou nabídku procesních přístrojů vhodných pro dodávky vody a měření její spotřeby. Pro měření průtoku dominují tomuto oboru magnetické indukční průtokoměry; firma Siemens představila své přístroje Sitrans FM Magflow a bate-
90
NTP
SNMP
DNS
DHCP
TFTP
Telnet
FTP
POP3
SMTP
HTTP
PING
ARP
koly vrstvy 7 v síti Ethernet TCP/IP podporufer Protocol) nebo jeho zabezpečená varianjí obecné potřeby otevřené komunikace běžta SFTP (Secure FTP). Mezi nejznámější patří HTTP (HyperText né v oboru informatiky (IT). Zatímco skupina protokolů TCP/IP zajišťuje navázání, udržení Transfer Protocol) pro přenos webových stránek nebo SMTP (Simple Mail Transfer Protoa zabezpečení komunikace mezi účastníky, protokoly aplikační vrstvy 7 umožňují všem col), poskytující služby elektronické pošty. Množství aplikačních protokolů nad účastníkům navzájem si rozumět. K tomu Ethernet TCP/IP je díky internetu obrovské. je opět nutné použít jednotná pravidla, po dle nichž se jednotlivé zprávy od komunikujících účastníků vytvářejí, tedy příslušné protokoly aplikační vrstvy (aplikační protokoly). Na obr. 8 je přehled protokolů nejčastěji použíTCP UDP vaných v síti Ethernet TCP/IP ICMP IP pro účely internetu a IT obecně, včetně běžných aplikačních PPP, DSL, Ethernet FFDI ATM token ring ISDN, RS-232 protokolů. V následujícím textu je přiblíženo několik běžných Obr. 9. Úplný referenční model Ethernet TCP/IP pro oblast aplikačních protokolů známých IT s internetovými a intranetovými protokoly důležitými pro průmyslovou komunikaci (zkratky podle tab. 1) z IT. Zjistit adresu IP zařízení na základě adresy MAC umožňují např. apliPřitom vznikají stále nové protokoly, ať již kační protokoly BootP (Bootstrap Protocol) zcela, nebo jako náhrada dosavadních. Dosud nebo DHCP (Dynamic Host Configuration uvedené protokoly představují jen naprostý Protocol). V obou případech je v síti vyhrazáklad. Pro získání alespoň rámcového přezen počítač, který pracuje jako server vyřihledu je v tab. 1 uveden seznam názvů a zkrazující převod adres MAC zařízení na adretek běžných protokolů pro Ethernet TCP/IP, sy IP. Server BootP přiřazuje adresy IP na vždy s krátkou charakteristikou, a to včetně základě fixní tabulky adres, DHCP dovoaplikačních protokolů používaných v IT. luje přidělovat adresy dynamicky. Pro přeDále je na obr. 9 ukázán úplný referenční vod adres srozumitelných lidem, tedy jmen model Ethernet TCP/IP pro oblast IT, včetně v textové podobě (např. www.vutbr.cz), na internetových a intranetových protokolů, kteadresy IP je určen protokol DNS (Domain ré jsou důležité i pro průmyslovou komunikaName Service), který na principu stromoci vzhledem k tomu, že téměř všechny varianvé struktury databází vyhledává odpovídaty průmyslového Ethernetu ve větší či menší jící adresy. míře umožňují komunikaci v síti Internet. Pro správu zařízení v síti jsou potřebné Zatímco aplikační protokoly pro účely IT protokoly jako SNMP (Simple Network Majsou v celé své šíři jednotně používány abonagement Protocol), což je asynchronní pronenty sítě Internet i dalších sítí typu LAN, tokol umožňující číst a zapisovat data poskya umožňují tak tvorbu homogenních komutovaná zařízeními. nikačních struktur, existující aplikační protoDále se běžně používají protokoly poskykoly pro automatizaci nad systémem Ethernet tující možnost realizovat terminálové připoTCP/IP jsou vzájemně nekompatibilní. Napříjení ke vzdálenému systému, jako je Telnet klad organizace ODVA zavedla pro komuni(Terminal Over Network) nebo SSH (Secukaci po Ethernetu aplikační protokol Etherre Shell). net/IP, organizace IDA Group používá modiPro přenos dat mezi systémy se používafikaci aplikačního protokolu Modbus pod jí aplikační protokoly jako FTP (File Transnázvem Modbus/TCP, organizace uživate-
riově napájené průtokoměry MAG 8000. Jako novinka zde byl uveden ultrazvukový příložný průtokoměr Sitrans F US. Společnost Siemens dále vyvinula přístroj pro kontrolu průtokoměrů v místě instalace. Verifikátor Magflow otestuje celý elektronický systém od vstupu signálu po výstup, vyzkouší těsnost izolace a provede zkoušku magnetického chování snímače. Na semináři byly také představeny četné přístroje pro měření výšky hladiny: hydrostatické hladinoměry Sitrans MPS, ultrazvukové přístroje
lů sítě Profibus (PNO) využívá protokoly skupiny Profinet apod. O těchto aplikačních protokolech nad systémem Ethernet TCP/ /IP pro automatizaci budou pojednávat další díly seriálu.
8. Závěr Druhý díl seriálu článků o průmyslovém Ethernetu byl věnován referenčnímu modelu otevřené komunikace ISO/OSI, který před více než dvaceti lety definovala organizace ISO. Bylo ukázáno na souvislost tohoto referenčního modelu s komunikačním modelem Ethernet TCP/IP a vysvětleny funkce a protokoly jednotlivých vrstev, do kterých se uvedený model Ethernet TCP/IP zobrazuje. Článek poskytuje základní informace o fyzické, spojové, síťové a transportní vrstvě. V závěru je uveden přehled aplikačních protokolů nad standardem Ethernet TCP/IP pro IT a jsou nastíněny obtíže související se současnou nekompatibilitou již používaných aplikačních protokolů pro automatizaci. Literatura: [1] LÜDER, A. – LORENTZ, K.: IAONA Handbook – Industrial Ethernet. 2nd edition, IAONA, April 2005. [2] COOKSLEY, M.: SNMP – Einsatz eines Netzwerk – Management. SPS Magazin, Ausgabe 12+1/2002. [3] MARSHALL, P. S.: Industrial Ethernet. ISA, USA, 2002, ISBN 1-55617-774-7. [4] KABELOVÁ, A. – DOSTÁLEK, L.: Velký průvodce protokoly TCP/IP a systémem DNS. 3. vydání. Computer Press, Brno, 2002, ISBN: 80-7226-675-6. [5] BAUMANN, G.: Ethernet: Grundlagen – Technologie. SPS Magazin, Ausgabe 8/2002. [6] ZEZULKA, F. – HYNČICA, O.: Průmyslový Ethernet I: Historický úvod. Automa, 2007, roč. 13, č. 1, s. 41–43.
prof. Ing. František Zezulka, CSc. (
[email protected]), Ing. Ondřej Hynčica (
[email protected]), UAMT FEKT VUT v Brně
Probe LU, MultiRanger apod. Pro doplnění sortimentu Siemens spolupracuje se společností Hach Lange, která se specializuje na analýzu kapalin a plynů a dodává veškeré analyzátory používané ve vodárenství (kyslíku, pH, kalů, dusičnanů atd.). Seminář byl tentokrát obohacen o „živé“ předvedení procesních přístrojů. Přistavený kamion, tzv. PI truck, byl zařízen jako demonstrační místnost, v níž byly nainstalovány provozní přístroje pro měření tlaku, teploty, průtoku (ev) a výšky hladiny a dalších veličin.
AUTOMA 3/2007