Ethernet Basics Rev. 02 · 2019-04-05 · Ethernet 2.1 Inleiding Ethernet is de basis van LAN...

117
Ethernet Basics Rev. 02

Transcript of Ethernet Basics Rev. 02 · 2019-04-05 · Ethernet 2.1 Inleiding Ethernet is de basis van LAN...

Ethernet Basics Rev. 02

Inhoudsopgave

1 Inleiding 11.1 Het OSI model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11.2 LAN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

2 Ethernet 52.1 Inleiding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52.2 De fysische implementaties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6

2.2.1 Implementaties op basis van coax . . . . . . . . . . . . . . . . . . . . . . . 72.2.2 Implementaties op basis van twisted pair . . . . . . . . . . . . . . . . . . . 72.2.3 Implementaties op basis van fiber . . . . . . . . . . . . . . . . . . . . . . . 112.2.4 Wireless LAN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112.2.5 Bluetooth . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14

2.3 De datalinklaag . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 162.3.1 Inleiding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 162.3.2 MAC adres . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 162.3.3 De Ethernet dataframe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 172.3.4 CSMA/CD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 182.3.5 CSMA/CA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20

2.4 Structuurelementen voor Ethernet . . . . . . . . . . . . . . . . . . . . . . . . . . 212.4.1 De hub . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 212.4.2 De switch . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

2.5 IEEE802.1Q tagged frame . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 242.6 Power over Ethernet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24

2.6.1 PSE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 252.6.2 PD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 262.6.3 Alternatief A . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 272.6.4 Alternatief B . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27

2.7 VLAN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 282.7.1 Voordelen van VLANs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 282.7.2 Trunking . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 282.7.3 Soorten VLANs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

2.8 Netwerkredundantie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 302.8.1 Inleiding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 302.8.2 Het Spanning Tree Protocol . . . . . . . . . . . . . . . . . . . . . . . . . . . 302.8.3 Het Rapid Spanning Tree Protocol . . . . . . . . . . . . . . . . . . . . . . . 302.8.4 Bridge Protocol Data Units (BPDUs) . . . . . . . . . . . . . . . . . . . . . . 312.8.5 Multiple Spanning Tree Protocol (MSTP) . . . . . . . . . . . . . . . . . . . . 322.8.6 Media Redundancy Protocol . . . . . . . . . . . . . . . . . . . . . . . . . . . 32

Inhoudsopgave ii

2.8.7 Parallel Redundancy Protocol . . . . . . . . . . . . . . . . . . . . . . . . . . 322.9 Belangrijke aanvullingen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33

2.9.1 LLDP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 332.9.2 IEEE 802.1x . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 332.9.3 Link aggregation with LACP naar IEEE 802.3ad . . . . . . . . . . . . . . . . 34

2.10Industrial Ethernet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35

3 TCP/IP 373.1 Inleiding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 373.2 Het Internet Protocol (IP) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38

3.2.1 Inleiding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 383.2.2 Het IP adres . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 393.2.3 Routers en subnetmasking . . . . . . . . . . . . . . . . . . . . . . . . . . . 423.2.4 Subnetten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 433.2.5 Classless Inter-Domain Routing . . . . . . . . . . . . . . . . . . . . . . . . 443.2.6 Voorbeelden . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 453.2.7 Het IP pakket . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 463.2.8 IPv6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48

3.3 Transmission Control Protocol (TCP) . . . . . . . . . . . . . . . . . . . . . . . . . . 493.3.1 Inleiding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 493.3.2 End-to-end transportdienst . . . . . . . . . . . . . . . . . . . . . . . . . . . 493.3.3 Hoe betrouwbaarheid wordt bereikt . . . . . . . . . . . . . . . . . . . . . . 503.3.4 Het TCP segment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51

3.4 UDP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 533.5 TCP en UDP poorten binnen de automatisering . . . . . . . . . . . . . . . . . . . . 553.6 Communicatie over TCP(UDP)/IP . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56

3.6.1 Client Server model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 563.6.2 Endpoint en Internetsocket . . . . . . . . . . . . . . . . . . . . . . . . . . . 573.6.3 Dynamische Servers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 583.6.4 Ondubbelzinnige communicatie . . . . . . . . . . . . . . . . . . . . . . . . 583.6.5 Status van een socket . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 603.6.6 Verbindingsgerichte en verbindingsloze communicatie . . . . . . . . . . . 60

4 Uitbreidingsprotocollen en netwerkapplicaties 614.1 ARP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61

4.1.1 Inleiding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 614.1.2 Address Resolution Protocol (ARP) . . . . . . . . . . . . . . . . . . . . . . . 61

4.2 BOOTP en DHCP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 624.2.1 Inleiding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 624.2.2 BOOTP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 624.2.3 DHCP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 634.2.4 DHCP Relay agent - DHCP option 82 . . . . . . . . . . . . . . . . . . . . . . 63

4.3 ICMP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 644.3.1 Inleiding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 644.3.2 Internet Control Message Protocol . . . . . . . . . . . . . . . . . . . . . . . 644.3.3 ICMP bericht . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 654.3.4 Bereikbaarheid van een host controleren . . . . . . . . . . . . . . . . . . . 664.3.5 Een route traceren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66

4.4 IGMP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67

Inhoudsopgave iii

4.4.1 Inleiding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 674.4.2 IGMP berichten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 684.4.3 IGMP snooping . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 684.4.4 Multicast adressen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69

4.5 GMRP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 694.5.1 IEEE 802.1p . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 694.5.2 Werking GMRP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70

4.6 DNS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 704.6.1 Inleiding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 704.6.2 De structuur van een hostnaam . . . . . . . . . . . . . . . . . . . . . . . . 714.6.3 Werking van het DNS protocol . . . . . . . . . . . . . . . . . . . . . . . . . 71

4.7 SNMP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 734.7.1 Inleiding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 734.7.2 SNMP structuur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 744.7.3 De MIB en SMI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 754.7.4 SNMP protocol . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77

4.8 HTTP en HTTPS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 774.8.1 TLS/SSL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 774.8.2 HTTP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 794.8.3 HTTPS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79

4.9 Overzicht van enkele andere belangrijke applicaties . . . . . . . . . . . . . . . . 794.9.1 FTP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 794.9.2 TFTP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 794.9.3 NTP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 794.9.4 SSH . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 804.9.5 CLI (Command Line Interface) . . . . . . . . . . . . . . . . . . . . . . . . . 80

5 De switch 815.1 Algemeen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 815.2 Industriële switches . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82

5.2.1 Algemeen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 825.2.2 Technische beschrijving van een industriële switch . . . . . . . . . . . . . . 83

6 De router 886.1 Inleiding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 886.2 Het routen van berichten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 886.3 Soorten routers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 906.4 Laag 3 switch . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 906.5 Koppeling van een privé netwerk aan het Internet . . . . . . . . . . . . . . . . . . 906.6 IP NAT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92

6.6.1 NAT: IP masquerading . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 926.6.2 Port Forwarding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92

6.7 1:1 NAT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94

7 De firewall 977.1 Inleiding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 977.2 Soorten firewalls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97

Inhoudsopgave iv

8 VPN 998.1 Inleiding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 998.2 Internet Protocol Security, IPsec . . . . . . . . . . . . . . . . . . . . . . . . . . . . 998.3 VPN implementaties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101

9 Automatiseringsnetwerken & Security 1039.1 Bedrijfsnetwerk . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1039.2 Automatiseringsnetwerk . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104

9.2.1 Automatiseringscel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1049.2.2 Automatiseringsnetwerk . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1049.2.3 Koppeling van een automatiseringsnetwerk aan een bedrijfsnetwerk . . . 106

9.3 Noodzaak aan beveiliging . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1069.3.1 Inleiding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1069.3.2 Bewustwording . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1069.3.3 Doelstelling van security . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1079.3.4 Security in de kantoorwereld versus security in de automatiseringswereld 1079.3.5 Standaardisatie omtrent security in automatiseringsnetwerken . . . . . . . 1099.3.6 Een veiligheidsprogramma . . . . . . . . . . . . . . . . . . . . . . . . . . . 110

9.4 Security in de praktijk . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1119.4.1 Laag 1 security . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1119.4.2 Laag 2 security . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1119.4.3 Laag 3 security . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112

Hoofdstuk 1

Inleiding

1.1 Het OSI model

De International Organization for Standardization (ISO) heeft in 1979 een model ontwikkeldom structuur en standaardisatie in de wereld van de datacommunicatie en netwerken aan tebrengen. De ISO is de commissie die het Open Systems Interconnection (OSI) referentiemo-del heeft ontwikkeld. Doelstelling van de ISO was een referentiemodel te ontwerpen waarbijonderlinge communicatie tussen twee systemen , bijv. twee computers, kon plaatsvinden.

Volgens het ISO/OSI model (ook wel het 7-lagenmodel genoemd) kan een systeem A commu-niceren met een systeem B (2 systemen van 2 verschillende leveranciers). Tussen deze sys-temen kunnen verschillende netwerken aanwezig zijn, zowel openbare netwerken als privénetwerken.

Een openbaar netwerk is een netwerk dat voor iedereen toegankelijk is, mits wordt voldaanaan de op dit netwerk geldende voorwaarden. Een privé-netwerk is veelal bedrijfsgebonden.

Figuur 1.1: Het OSI model

Inleiding 2

Het OSI model bestaat uit zeven functionele lagen. Elke laag bezit een aantal gedefinieerdefuncties. Hieronder volgt een beperkte opsomming van de verschillende lagen:

FYSIEKE LAAG (laag 1)Deze laag verzorgt de koppeling met het medium waarover de informatie tussen twee puntenin het netwerk wordt verstuurd: dit betekent dat deze laag voorziet in de mechanische,elektrische of optische entiteiten die nodig zijn om de fysieke verbinding tot stand te brengen,te onderhouden en te verbreken.

DATALINKLAAG (laag 2)De protocollen van laag 2 geven aan hoe de frames uiteindelijk over het netwerk moetenverstuurd worden. Laag 2 handhaaft een foutdetectie- en correctiemechanisme om er zekervan te zijn, dat transmissiefouten worden afgehandeld en dat de gegevens aan de anderezijde juist ontvangen worden.

NETWERKLAAG (laag 3)Op dit niveau wordt de adressering, dat wil zeggen het vinden van een route door het netwerken het voorkomen van opstoppingen binnen het netwerk geregeld. De netwerklaag zorgtvoor het transport van berichten van het ene knooppunt naar het andere op de weg van dezender naar de uiteindelijke ontvanger.

TRANSPORTLAAG(laag 4)De transportlaag is verantwoordelijk voor een betrouwbare overdracht van de gegevens.De transportlaag zorgt voor een logische verbinding tussen de beide eindsystemen van hetnetwerk (een logische punt tot punt verbinding). Hierdoor wordt een foutloos datatransportgerealiseerd, waarbij de gegevens in de goede volgorde aankomen bij de ontvanger.

SESSIELAAG (laag 5)Hier wordt voorzien in de controlestructuur van de dialoog (sessie) tussen twee applicatiesover het netwerk, alsmede in het opzetten en verbreken van een dergelijke sessie.

PRESENTATIELAAG (laag 6)De protocollen in laag 6 bepalen hoe data wordt weergegeven: dit is nodig omdat verschil-lende computersystemen getallen en tekens verschillend representeren. Deze laag verzorgtdus onder andere de vertaling van codes, bv. van ASCII naar EBCDIC.

APPLICATIELAAG (laag 7)Deze laag levert diensten aan de toepassingen die draaien ten behoeve van de gebruikersop de systemen van het netwerk.

De afspraak bij het referentiemodel is dat het te versturen bericht van de zender deze zevenlagen doorloopt. Iedere laag van het model voorziet het bericht van een header, startendvanaf laag 7 en vervolgens afdalend naar laag 1, zie figuur 1.2. In de header staat aangege-ven welke datacommunicatiefuncties moeten worden uitgevoerd.Voor het functioneren van de communicatieprotocollen wisselt iedere laag informatie uit metde corresponderende laag aan de andere kant van de verbinding, los van de applicatiedatadie de uiteindelijke gebruikers van de verbinding naar elkaar toesturen. In het OSI modelvoegt elke laag een stukje informatie toe (header) aan de gebruikersdata van de verzen-dende kant, die er vervolgens aan de ontvangende kant weer door de corresponderendelaag wordt afgepeld. De datalinklaag plaatst meestal niet alleen extra informatie voor de

Inleiding 3

Figuur 1.2: Protocoloverhead in het OSI model

doorgegeven data maar ook erachter. Dat staartstuk bevat een checkcode ten behoeve vande detectie van mogelijke transportfouten. Alleen de fysieke laag voegt er niets meer aantoe.

1.2 LAN

Een lokaal netwerk, Local Area Network (LAN), is ontwikkeld om de communicatie tussencomputers, werkstations en randapparatuur in een gebied met zeer beperkte geografischeomvang te verzorgen.In een LAN zijn de aangesloten stations autonoom, dat wil zeggen dat er geen primaire ensecundaire stations bestaan. Elk station kan een verbinding tot stand brengen, onderhoudenen afbreken met een ander station. De vier onderste lagen van het OSI model vragen vooreen LAN een iets andere benadering ten opzichte van publieke netwerken.De commissie 802 van het Institute for Electrical and Electronic Engineers heeft voor LAN’seen aantal standaards vastgelegd.

Figuur 1.3: Situering LAN binnen het OSI model

Inleiding 4

Figuur 1.3 toont de invulling van de lagen 1 en 2 in het OSI model door de IEEE802 standaard.Voor het algemene concept voor LAN’s kan de standaard IEEE802.1 worden geraadpleegd.Binnen de IEEE802 commissie zijn momenteel volgende werkgroepen aktief:

• IEEE802.1 Bridging (networking) and Network Management

• IEEE802.2 Logical Link Control

• IEEE802.3 CSMA/CD (Ethernet)

• IEEE802.5 Token Ring

• IEEE802.11 Wireless LAN & Mesh (Wi-Fi certification)

• IEEE802.15 Wireless PAN

– IEEE802.15.1 (Bluetooth certification)

– IEEE802.15.4 (ZigBee certification)

• IEEE802.16 Broadband Wireless Access (WiMAX certification)

• IEEE802.16e (Mobile) Broadband Wireless Access

• IEEE802.16.1 Local Multipoint Distribution Service

• IEEE802.17 Resilient packet ring

• IEEE802.18 Radio Regulatory TAG

• IEEE802.19 Coexistence TAG

• IEEE802.20 Mobile Broadband Wireless Access

• IEEE802.21 Media Independent Handoff

• IEEE802.22 Wireless Regional Area Network

Hoofdstuk 2

Ethernet

2.1 Inleiding

Ethernet is de basis van LAN netwerken. De huidige LAN markt kenmerkt zich door een totnog toe ongekende mate van standaardisatie op Ethernet. Door zijn enorm marktaandeelverbant Ethernet, ondanks enkele nadelen, alle alternatieve technologieën naar de niche.

Een kort historisch overzicht:

• 1980: Digital Equipment Corporation, Intel en Xerox zorgen voor de release van deeerste Ethernet specificatie, version 1.0, onder de naam Ethernet Blue Book of DIXstandaard. Het definieert Thick Ethernet bij 10Mbps CSMA/CD. De eerste Ethernet con-trollers gebaseerd op de DIX standaard waren beschikbaar vanaf 1982. De tweede enfinale versie van de DIX standaard, versie 2.0, werd gereleased in november 1982:Ethernet II.

• 1983: The Institute of Electrical and Electronic Engineers (IEEE) brengt de eerste IEEEstandaard voor Ethernettechnologie. Het werd ontwikkeld door de 802.3 groep van deIEEE802 commissie en dit onder de naam IEEE802.3 Carrier Sense Multiple Acces withCollision Detection Acces Method and Physical Layer Specifications. IEEE herwerktesommige delen van de DIX-standaard vooral wat betreft de definiëring van de frame-bepaling.

• 1985: IEEE802.3a; definiëring van thin Ethernet, cheapernet of 10Base2

• 1987: IEEE802.3d; Fiber Optic Inter Repeater Link (FOIRL) Gebruik van twee fiber optickabels om de afstand tussen 10 Mbps repeaters te verlengen tot 1000m.

• 1987: IEEE802.3e; 1Mbps over twisted pair

• 1990: IEEE802.3i; release van de populaire 10Base-T; 10Mbps over UTP categorie 3

• 1993: IEEE802.3j; 10Base-F: afstanden groter dan 2 km over fiber optic

• 1995: IEEE802.3u; 100Base-T en 100Base-F

• 1997: IEEE802.3x: full-duplex Ethernet

• 1997: IEEE802.3y; 100Base-T2

Ethernet 6

• 1998: IEEE802.3z; 1000Base-X standaard; algemeen bekend onder de naam GigabitEthernet

• 1999: IEEE802.3ab; Gigabit Ethernet over twisted pair

• 1999: IEEE802.3ac; 802.1Q: definiëring van de Q-tag met VLAN en prioriteitsinformatie.

• 2003: IEEE802.3af; Power over Ethernet

• 2006: IEEE802.3an; 10GBase-T

• 2006: IEEE802.3aq; 10GBase-LRM, Ethernet over multimode fiber

Ethernet is alleen een specificatie van lagen 1 en 2 in het OSI-model. Het is geen volledignetwerkprotocol maar een subnet waarop andere protocollen kunnen werken zoals bijv. deTCP/IP suite.

De belangrijkste functies van ETHERNET zijn:

• Invulling van de fysische laag

– het verzenden en ontvangen van seriële bitstromen over het medium.

– het detecteren van botsingen (collisions).

• Invulling van de datalinklaag

– MAC sublayer:

∗ toegangsmechanisme tot het netwerk (CSMA/CD).

∗ opbouw van de dataframes.

– LLC sublayer:

∗ databetrouwbaarheid.

∗ voorzien van datakanalen voor bovenliggende applicaties.

2.2 De fysische implementaties

De belangrijkste implementaties door de jaren heen zijn:

• Thick Ethernet (10Base5)

• Thin Ethernet (10Base2)

• Broadband Ethernet (10Broad36)

• Ethernet over twisted pair (10Base-T)

• Ethernet over Fiber (10Base-F)

• Fast Ethernet (100Base-T / 100Base-F)

• Gigabit Ethernet (1000Base-T)

• Wireless Ethernet

Ethernet 7

2.2.1 Implementaties op basis van coax

Het oorspronkelijke Ethernet was ontworpen rond het concept van een bustopologie. Deeerste implementaties van Ethernet waren gebaseerd op een dikke gele coaxkabel, thickEthernet ook 10Base5 genaamd.

Kenmerken van het oorspronkelijke Ethernet:

• 10Mbps

• Baseband (basisband transmissie)

• max. 5 x 100 = 500 meter

• max. 100 transceivers per segment

Thick Ethernet coaxiale kabels hebben een markering iedere 2.5m om een goede plaatsingvan de 10Base5 transceivers (of MAU’s) te verzekeren. Deze transceivers worden gebruiktom stations aan het netwerk te koppelen. De transceivers mogen iedere 2.5m geplaatst wor-den, dit voorkomt reflecties van de signalen, wat zorgt voor een slechte transmissiekwaliteit.

Deze vorm van implementatie is voorbijgestreefd. Al snel werd de stugge dikke gele coaxvervangen door de zwarte soepeler coax wat leidde tot de implementatie van thin Ethernet,10Base2. De aansluiting van de verschillende stations wordt gerealiseerd door T-vormigeBNC aansluitstukjes waarbij een maximale segmentlengte van ongeveer 200 meter kan toe-gepast worden.

Belangrijk bekabelingsdetail dat in veel bustechnologieën vereist is: de afsluitweerstand (ter-minator) - een klein, goedkoop apparaatje dat op alle uiteinden van de coax-kabels die eenEthernet vormen, gemonteerd moet worden. Een afsluitweerstand bestaat uit een weerstanddie de centrale ader van de kabel met de afscherming verbindt: als een elektrisch signaal deafsluitweerstand bereikt, wordt het weggegooid. Voor de correcte werking van een netwerkis de afsluitweerstand onontbeerlijk omdat het uiteinde van een niet-afgesloten kabel elek-trische signalen reflecteert zoals een spiegel licht terugkaatst. Als een station probeert eensignaal over een niet-afgesloten kabel te versturen, wordt dit signaal door het kabeleindeteruggekaatst. Wanneer de reflectie het zendende station bereikt, treedt interferentie op.

2.2.2 Implementaties op basis van twisted pair

Het grote probleem bij coax is dat enkel half duplex communicatie kan toegepast worden.Ook de toegepaste busstructuur is niet ideaal indien bepaalde problemen optreden. Omde bustopologie te doorbreken is Ethernet overgestapt op een topologie waar ook twistedpair kan gebruikt worden: alle stations zijn verbonden met één of meerdere centrale hubs.Op deze manier kan een stertopologie uitgewerkt worden. Het netwerk is op deze maniergemakkelijker uit te breiden, te controleren en is het eenvoudiger om fouten op te sporen.De maximale segmentlengte tussen een deelnemer en een hub is 100 meter.

De varianten op basis van twisted pair zijn geëvolueerd van 10Base-T (10Mbps) over 100Base-T (100Mbps) tot 1000Base-T (1000Mbps).

Ethernet 8

Figuur 2.1: De MAU voor 10/100Base-T

De MAU, ontwikkeld voor twisted pair, is voorzien van 4 datapinnen: 2 voor te zenden, 2 voorte ontvangen. Dit is de basis voor full duplex Ethernet. In principe is enkel punt tot puntcommunicatie mogelijk. Vandaar dat ieder host rechtstreeks moet verbonden worden meteen structuurelement: een hub of een switch.

Fast Ethernet

De UTP kabel, bv. CAT5 (Category 5) UTP (Unshielded Twisted Pair), ondersteunt snelhedentot 100Mbps. De kabel bestaat uit 8 draden, geordend in 4 paar. De 4 paren zijn herkenbaardoordat er steeds 1 volledig gekleurd is en het andere met witte onderbrekingen in dezelfdekleur. Van de 4 paren worden er in 10/100Base-T slechts 2 gebruikt (paar 2: oranje/wit enoranje en paar 3: groen/wit en groen).

De IEEE specificatie voor Ethernet 10/100Base-T vereist dat het ene gebruikte paar aan pin1 en pin 2 van de connector wordt aangesloten terwijl het tweede paar aan pin 3 en pin 6wordt aangesloten. De andere twee niet gebruikte paren zullen aangesloten worden op pin4 en 5 en op pin 7 en 8.

Tabel 2.1: Pinconfiguratie voor Fast Ethernet

Pin Kleur Functie

1 groen met wit +TD2 groen -TD3 oranje met wit +RD4 blauw niet gebruikt5 blauw met wit niet gebruikt6 oranje -RD7 bruin met wit niet gebruikt8 bruin niet gebruikt

Tabel 2.1 toont de pinconfiguratie voor 10/100Base-T. TD staat voor Transmitted Data, RDstaat voor Received Data. Het plus- en minteken geven aan dat het signaal gespiegeld ver-stuurd wordt langs twee datalijnen, zie ook figuur 2.2.

Ethernet 9

Figuur 2.2: Transmissietechnolgoie voor 10/100Base-T

De straight-through kabel, de rechtdoor kabel ook wel de patchkabel genoemd, is de kabeldie we bekomen als we langs beide zijden van de kabel paar 2 met pin 1 en pin 2 verbinden,terwijl paar 3 met pin 3 en pin 6 verbonden wordt. Deze kabel kan gebruikt worden voorverbindingen tussen het patchpanel en de hub/switch, de PC en de hub/switch of de PC ende muur. Algemeen wordt deze kabel gebruikt voor de verbinding van een structuurelementen een eindelement.

Een cross-over kabel is nodig om de PC-PC verbindingen tot stand te brengen (verbindingvan twee eindelementen) en om verbindingen tussen hub/switch en een andere hub/switchte bekomen (verbinding van twee structuur elementen). Om een cross-over kabel te makenmoeten we de gebruikte paren omwisselen. Langs één zijde moet paar 2 met pin 3 en pin 6verbonden worden terwijl paar 3 met pin 1 en pin 2 moet verbonden worden.

Figuur 2.3: Twisted pair bekabeling, 10/100Base-T

Huidige Ethernetpoorten ondersteunen autocrossing. Hierdoor wordt automatisch gedetec-teerd welke kabel er gebruikt wordt en zal indien nodig de crossing intern gecorrigeerd wor-den.

Als uitbreiding op de 10Base-T heeft de IEEE Fast Ethernet, 100Base-T gedefinieerd.

Ethernet 10

Fast Ethernet wordt gekenmerkt door:

• Datatransmissie op een snelheid van 100Mbps

• Full Duplex communicatie

• Switched Ethernet

In Fast Ethernet is er een mechanisme voorzien voor autonegotiation: dit maakt het mogelijkEthernet interfaces te bouwen welke automatisch omschakelen tussen 10Mbps en 100Mbps.

Bij de 10Base-T standaard wordt iedere databit gecodeerd in één fysische bit. M.a.w. vooreen groep van acht databits worden acht signalen gegenereerd op de kabel. De 10Mbpsdatarate betekent een kloksnelheid van 10MHz. Bij iedere klokpuls wordt één enkele bitverstuurd.

100Base-T gebruikt het zogenaamde 4B/5B schema waarbij elke groep van vier bits geco-deerd wordt in een 5 bit signaal. Eén enkele bit wordt dus niet exact vertaald in één enkelsignaal op de kabel.

Datastroom: 01110100001000004 bitpatroon: 0111 0100 0010 00005 bitcode: 01111 01010 10100 11110

De toegepaste kloksnelheid is 125MHz (5/4 x 100). Cat5 kabels zijn gecertificeerd voor eentransmissiesnelheid tot 125 MHz.

Gigabit Ethernet

Gigabit Ethernet streeft een datarate van 1000Mbps na. Indien hiervoor bv. de CAT5 Ethernetkabels moeten gebruikt worden is er een probleem gezien deze enkel een kloksnelheid tot125MHz ondersteunen. Om dit te realiseren moet de technologie aangepast worden.

Vooreerst codeert 1000Base-T twee bits per kloksignaal (00, 01, 10 en 11) en gebruikt hier-voor vier spanningsniveaus.

Verder gebruikt 1000Base-T alle vier de dataparen van een Ethernetkabel. De vier dataparenworden hierbij bidirectioneel toegepast. Langs alle vier de dataparen wordt data verzondenof wordt data ontvangen.

Gigabit Ethernet gebruikt dus nog steeds de 100Base-T/Cat 5 kloksnelheid van 125MHz. Ge-zien bij iedere klokpuls 2 bits verwerkt worden en dit langs vier dataparen wordt een dataratevan 1000Mbps bereikt. Deze modulatietechnologie wordt 4D-PAM5 genoemd en gebruikt ac-tueel vijf verschillende spanningsniveaus. Het vijfde spanningsniveau wordt gebruikt voorhet errormechanisme. Tabel2.2 toont de Gigabit Ethernet pinconfiguratie. BI staat voor bidi-rectioneel terwijl DA, DB, DC en DD staan voor data A, data B, data C en data D.

Ethernet 11

Tabel 2.2: Pinconfiguratie voor Gigabit Ethernet

Pin Kleur Functie

1 groen met wit +BI_DA2 groen -BI_DA3 oranje met wit +BI_DB4 blauw -BI_DB5 blauw met wit +BI_DC6 oranje -BI_DC7 bruin met wit +BI_DD8 bruin -BI_DD

2.2.3 Implementaties op basis van fiber

Om langere segmentafstanden mogelijk te maken werd de glasvezelkabel geïntegreerd alsmogelijke interface. De eerste glasvezelvarianten staan bekend onder de naam 10Base-F en100Base-F. Er worden telkens gescheiden fibers gebruikt voor het verzenden van data en hetontvangen van data.

Gigabit Ethernet over fiber is ontwikkeld voor de full-duplex mode bij een datarate van1000Mbps. Er zijn twee verschillende varianten voor Gigabit Ethernet: 1000Base-SX en1000Base-LX.

1000Base-SX gebruikt lichtpulsen met korte golflengte over multimode fiber. 1000Base-LXgebruikt lichtpulsen met lange golflengte over multimode of single-mode fiber.Recentelijk is er ook 10Gigabit Ethernet over fiber met verschillende varianten.

2.2.4 Wireless LAN

IEEE802.11

Verschillende standaarden voor wireless LAN zijn gedefinieerd door de IEEE in hun beschrij-ving IEEE802.11. De radioverbindingen van een Wireless LAN vinden plaats in de 2,4 GHzfrequentieband, de zogenaamde ISM-band (Industrial, Scientific and Medical) of in de 5 GHzband. Hiervoor zijn geen licenties nodig. Een Wireless LAN gebruikt de zogenaamde spreadspectrum technologie. Deze technologie is specifiek bedoeld voor storingsgevoelige trans-missiekanalen. Dit is belangrijk omdat deze frequentiebanden (vooral de 2,4 GHz) ook doorveel andere apparatuur worden gebruikt waaronder bijv. Bluetooth.

Een draadloos netwerk is over het algemeen een stuk minder snel dan een vast bedraadnetwerk. Een groot voordeel is de flexibiliteit.

Wat de fysische implementatie betreft voorziet de IEEE802.11 de infrastructuurconfiguratieof de Ad Hoc configuratie.

Ethernet 12

Figuur 2.4: Fysische implementatie van WLAN

Infrastructuurconfiguratie is de configuratie waarbij gebruik gemaakt wordt van een wire-less access-point om een draadloos LAN te verbinden met een bekabeld LAN. Het wirelessaccess-point fungeert als centraal punt voor het routeren van al het draadloze dataverkeer.Draadloos werkende computers die worden opgenomen in een infrastructuurmodus vormeneen groep die een Basic Service Set (BSS) wordt genoemd. Op een bepaald ogenblik kunnenmaximaal 64 individuele computers in een BSS worden opgenomen. Dit komt doordat decapaciteit van het wireless access-point beperkt is tot 64 clients. Het hele draadloze netwerkheeft een unieke SSID (Service Set Identifier), en wordt ook wel gewoon een netwerknaamgenoemd. Deze naam slaat enkel op het draadloze netwerk.

Ad hoc of peer-to-peer heeft betrekking op een draadloze configuratie waarin elke deelnemerrechtstreeks met de andere communiceert. Een echte organisatie van het netwerk is hier dusniet mogelijk. Een ad hoc draadloos LAN bestaat uit een groep toestellen, elkeen uitgerustmet een draadloze adapter, die via radiosignalen rechtstreeks met elkaar zijn verbonden enzo een onafhankelijk draadloos LAN vormen.

WLAN standaarden

Binnen de IEEE802.11 zijn verschillende standaarden gedefinieerd. Deze standaarden ge-bruiken verschillende modulatietechnologieën om zo tot verbeterde transmissiesnelhedente komen. Tabel 2.3 toont een overzicht van de verschillende standaarden.

Tabel 2.3: WLAN standaarden binnen de IEEE802.11

Standaard Frequentieband Datatransmissie

IEEE802.11b 2.4GHz 11MbpsIEEE802.11g 2.4GHz 54MbpsIEEE802.11a 5GHz 54MbpsIEEE802.11h 5GHz 54MbpsIEEE802.11n 5GHz en/of 2.4GHz 600Mbps

Ethernet 13

IEEE802.11b/g

IEEE802.11b/g maakt gebruik van het 72 MHz breed gedeelte van de 2.4 GHz band. Onderde regels van de FCC worden hierin 11 kanalen van 22MHz breed gedefinieerd. Theoretischzou dit betekenen dat de bandbreedte voor deze 11 kanalen 242 Mbps (11x22Mbps) zoubedragen. In de praktijk moet dit zeer sterk genuanceerd worden aangezien deze kanalenelkaar grotendeels overlappen. Figuur 2.5 toont dat er slechts drie niet overlappende kanalenzijn: kanaal 1, kanaal 6 en kanaal 11.

Figuur 2.5: De 2.4GHz band voor WLAN

Voor Europa definieert de ETSI een ietwat ruimere frequentieband met daarin 13 kanalen van22MHz breed. Daardoor kunnen we in Europa in principe 4 nauwelijks overlappende kanalengebruiken, zijnde kanaal 1, 5, 9 en 13.

De IEEE802.11b ondersteunt een maximale snelheid tot 11Mbps. De IEEE802.11g onder-steunt een maximale snelheid tot 54Mbps. Bij een slechte verbinding of grote afstand tot hetAccess Point wordt de snelheid dynamisch teruggeschakeld.

IEEE802.11a/h

IEEE802.11a maakt gebruik van de volledige 5GHz band. Door het toepassen van OFDM(Orthogonal Frequency Division Multiplexing) worden met de IEEE802.11a maximale (theo-retische) snelheden tot 54Mbps bereikt. Figuur 2.6 toont de verschillende kanalen binnen de5GHz band. Voor Europa betekent dit dat er over de twee laagste banden van de 5GHZ UNIIband 8 niet-overlappende kanalen van 20MHz breed te gebruiken zijn.

Ethernet 14

Figuur 2.6: De 2.4GHz band voor WLAN

Het gebruik van de 5GHz band in Europa kent heel wat beperkingen t.o.v. de VS. Daaromwerd de IEEE802.11a aangepast tot de IEEE802.11h. Twee belangrijke protocollen werdentoegevoegd om uiteindelijk te voldoen aan de Europese regelgeving:

• DCS (Dynamic Channel Selection):het AP gaat automatisch op zoek naar een ander ka-naal indien blijkt dat het kanaal in gebruik genomen wordt door een andere applicatie.

• TPC (Transmit Power Control): er wordt niet meer vermogen uitgestuurd dan nodig,als twee deelnemers elkaar zien, dan zal het AP het vermogen aanpassen naar hetbenodigde niveau

IEEE802.11n

Deze recente standaard maakt gebruik van MIMO (multiple input - multiple output), eentechniek om met behulp van meerdere ontvangst- en zendantennes, data draadloos overte dragen waarbij een transmissiesnelheid van maximaal 600Mbps bekomen wordt indien 4kanalen van elk 40MHz gebruikt worden.

2.2.5 Bluetooth

De basistechnologie (twee onderste lagen van het OSI model) is gestandaardiseerd in deIEEE802.15.1. Aanvullend definieert de Bluetooth SIG (Special Interest Group) verschillendeapplicatieprofielen voor ondermeer seriële communicatie en overdracht van Ethernet dataf-rames.

Bluetooth maakt gebruik van de 2,4 GHz licentievrije ISM band. In tegenstelling tot WLANwordt de te verzenden data niet gespreid over een bredere frequentieband maar wordt erFHSS (Frequency Hopping Spread Spectrum) toegepast. Hierbij wordt de 2,4 GHz band opge-deeld in 79 kanalen van 1 MHz. Figuur 2.7 toont de werking van FHSS. Er worden 1600 hopsper seconde uitgevoerd. Ieder dataframe wordt telkens op een andere frequentie verstuurd.Zo kunnen verschillende logische kanalen naast elkaar actief zijn.

Ethernet 15

Figuur 2.7: FHHS technologie

Een groot voordeel voor het gebruik van Bluetooth in de industrie is de perfecte coexcisten-tie met WLAN. Indien er interferentie is op een Bluetooth frequentie omdat een WLAN kanaalop dezelfde frequentie actief is kan Bluetooth deze frequentie(’s) vermijden. Omdat dit eenveelvoorkomend fenomeen is heeft Bluetooth een automatisch coexistentie mechanimse ge-ïntegreerd: Adaptive Frequyency Hopping (AFH).

Dit mechnaisme maakt het mogelijk dat Bluetooth bepaalde ’slechte’ frequenties tijdelijk uitde hopping lijst schrapt. Figuur 2.8 toont hoe er voldoende ruimte is bij een volzette 2,4GHzband waar drie gescheiden WLAN kanalen actief zijn. Het WLAN kanaal gebruikt een statischefrequentieband, Bluetooth kan zich aanpassen en heeft keuze uit voldoende frequenties ominterferentie te vermijden.

Figuur 2.8: Coëxcistentie van Bluetooth en WLAN

Ethernet 16

2.3 De datalinklaag

2.3.1 Inleiding

Voor het verzenden van berichten wordt gebruik gemaakt van packet switching. Packet swit-ching wordt vooral toegepast bij computer tot computer communicatie. In computernetwer-ken wordt niet ononderbroken een willekeurige hoeveelheid data getransporteerd. In plaatsdaarvan deelt het netwerksysteem data op in kleine blokken, pakketten, die afzonderlijkverstuurd worden. Computernetwerken worden om die redenen ook wel packet switchingnetworks genoemd.

Figuur 2.9: Packet switching

Er zijn twee redenen om voor het gebruik van pakketten te kiezen:

• Zender en ontvanger moeten de transmissie coördineren. In geval van transmissiefou-ten kan veel data verloren gaan. Als de data in kleinere blokken is opgedeeld, kunnende zender en ontvanger gemakkelijker bepalen welke blokken bij aankomst intact zijnen welke niet.

• Meerdere computers maken gemeenschappelijk gebruik van onderliggende verbindin-gen en hardware. Een netwerk moet ervoor zorgen dat alle computers gelijkwaardigedirecte toegang tot een gedeelde communicatiefaciliteit hebben. Een computer kaneen gedeelde resource niet langer in beslag nemen dan voor het versturen van éénpakket nodig is.

2.3.2 MAC adres

Op een gemeenschappelijk overdrachtsmedium van een LAN moet ieder station een uniekadres hebben. Iedere deelnemer heeft een Ethernet adres, een fysiek adres dat eigen isaan de netwerkkaart: het MAC adres (Medium Acces Control Adress). Iedere fabrikant vannetwerkkaarten geeft iedere kaart een uniek adresnummer mee welke in de ROM van dekaart opgeslagen wordt.

Ethernet 17

Figuur 2.10: Het MAC adres

Het MAC adres bestaat uit 48 bits (6 bytes) en is in twee groepen van drie bytes opgedeeld.De hoogste 24 bits vormen een fabrikantnummer uitgedeeld door XEROC. Er zijn 4194302mogelijke fabrikantnummers. Zo krijgt Phoenix Contact het fabrikantnummer 00A045h.

De laagste 24 bits vormen een serienummer. Ieder MAC adres moet uniek zijn.

2.3.3 De Ethernet dataframe

Een Ethernet frame bestaat uit minimaal 46 effectieve databytes en een constant aantal van26 protocolbytes (overhead). Dit minimum aantal databytes is noodzakelijk omwille van dedefiniëring van de slottime.

Figuur 2.11: Opbouw van een Ethernet dataframe

In een Ethernet dataframe worden volgende velden gedefinieerd:

• Preamble: is een opeenvolging van 56 bits alternerend 1 en 0. Deze bits worden ge-bruikt voor synchronisatie en geven iedere deelnemer de tijd om activiteit op de buswaar te nemen vooraleer de effectieve data eraan komt.

• SFD: de start of frame delimiter (10101011) is de laatste byte van de preamble maaktde ontvanger duidelijk dat de effectieve data op komst is.

• DA: het destination adres. Het destination MAC adres veld identificeert het station ofde stations welke het bericht moeten ontvangen. Dit veld neemt 6 bytes in beslag. Hetdestination adres kan een individueel, een multicast of een broadcast adres zijn. HetMAC broadcast adres is FF FF FF FF FF FF.

• SA: het source adres. Het source MAC adres veld identificeert het station van welke hetbericht afkomstig is. Dit veld is 6 bytes lang.

Ethernet 18

• TYPE: voor het type veld is er een onderscheid tussen Ethernet II (DIX standaard) en deIEEE802.3Bij Ethernet II verwijst het type veld naar het bovenliggend protocol dat gebruik maaktvan een Ethernet frame om data te versturen. Xerox kent aan ieder protocol welke voorEthernet ontwikkeld wordt een code toe van 2 bytes lang. Enkele voorbeelden zijn:

0600h XNS0800h IP (Internet Protocol)0806h ARP protocol0835h Reverse ARP protocol8100h IEEE802 1.q tag frame (VLAN)

De IEEE802.3 definieert het TYPE veld als LENGHT veld om op deze manier het effectiefaantal databytes te mee te sturen.

Xerox gebruikt geen typenummers beneden de 1500 en gezien de maximale lengte vaneen dataframe op 1500 ligt is er geen overlapping mogelijk en kunnen beide definitiesdoor elkaar gebruikt worden.

• DATA: het dataveld bevat de te versturen data. Dit dataveld is transparant, wat bete-kent dat de inhoud van dit veld volledig vrij is voor Ethernet. Alleen de lengte moetliggen tussen minimum 46 bytes en maximum 1500 bytes.

• PAD: de padding bits zijn willekeurige databits die, indien nodig, extra toegevoegd wor-den aan de data om het minimum vereiste aantal van 46 bytes te bereiken.

• FCS: de checksum is een 4-byte CRC waarde gecreëerd en meegestuurd door de zender.Aan de hand van deze code kan de ontvanger de integriteit van de data nagaan.

2.3.4 CSMA/CD

Ethernet gebruikt het CSMA/CD (Carrier Sense Multiple Acces / Collision Detect) protocol.Met CSMA/CD kunnen twee of meerdere stations een gemeenschappelijk transmissiemediumgebruiken.Om een dataframe te versturen moet een station wachten voor een ’idle-period’,het niet actief zijn van de bus waarbij geen enkele deelnemer data aan het versturen is.Hierbij zal het dan een boodschap versturen dat door alle andere deelnemers gehoord wordt.Indien een tweede deelnemer terzelfder tijd een bericht zal versturen zal er een botsinggedetecteerd worden. De deelnemer welke als eerste een botsing detecteert verstuurt eenerror frame.

Figuur 2.12: Collisions op een Ethernetsegment

Ethernet 19

Een collision domein is een multisegment configuratie volgens het CSMA/CD protocol waarbijeen collision zal ontstaan wanneer 2 deelnemers op het segment een dataframe op hetzelfdetijdstip versturen.

Figuur 2.13: CSMA/CD flow

Figuur 2.13 toont de CSMA/CD flow. Een deelnemer welke data wil verzenden zal eerst hetnetwerk controleren op een carrier, of de aanwezigheid van een station welke data aan hetversturen is. Indien een actieve carrier gedetecteerd wordt dan wordt het versturen uitge-steld.

Wordt er geen actieve carrier gedetecteerd voor een periode die gelijk of groter is dan deinterframe gap dan kan dit station starten met het verzenden van het bericht. Tijdens hetversturen van het bericht zal de deelnemer het medium blijven controleren of er geen bot-sing, collision optreedt. Een netwerkinterface moet dus tegelijkertijd data verzenden en hetmedium beluisteren. Indien een collision gedetecteerd wordt dan stopt de deelnemer ogen-blikkelijk met zenden en wordt er een 32-bit jam sequentie verstuurd. Indien de botsing zeervroeg gedetecteerd wordt dan zal de frame preamble eerst verder verstuurd worden vooral-eer de jamsequentie verstuurd wordt. Deze jamsequentie is noodzakelijk om er zeker van tezijn dat de lengte van de botsing voldoende groot is zodat alle deelnemers de botsing kon-den waarnemen. Na het versturen van de jamsequentie zal de deelnemer een randomtijdwachten vooraleer een nieuwe poging te ondernemen: dit proces wordt Backoff genoemd.

Enkele belangrijke aanvullende definities:

• Interframe gap: Ethernet deelnemers moeten een minimum periode van geen activiteit’idle-period’ voorzien tussen de versturing van twee frames. De minimum interframegap is 96 bittijden (9,6µs voor de 10Mbps versie, 960ns voor 100Mbps Ethernet en 96nsvoor Gigabit Ethernet.

• Slottime: deze parameter is gedefinieerd als 512 bittijden voor de 10Mbps en de 100Mbpsversies, en 4096 bittijden voor Gigabit Ethernet. De minimum transmissietijd voor een

Ethernet 20

volledig dataframe moet minstens één slottijd bedragen. De tijd nodig opdat een bot-sing door alle deelnemers wordt waargenomen mag maximaal één slottijd bedragen.

De slottijd is een belangrijke parameter:

– het bepaalt de minimum lengte van een dataframe (64 bytes voor 10Mbps en100Mbps). Ieder frame korter dan 64 bytes wordt als een collision fragment be-schouwd.

– het bepaalt de maximum lengte van een collision domein om op die manier latecollisions te voorkomen.

– het verzekert dat indien een botsing zal plaatsvinden dat het dan binnen de 512bittijden van de frame transmissietijd zal gebeuren.

2.3.5 CSMA/CA

De CSMA/CD technologie van bedraad Ethernet kan niet toegepast worden bij draadloosEthernet. De standaard beschrijft half-duplex radios, tijdens het zenden van data kan erniet gecontroleerd worden op eventuele botsingen. Om dit te verhelpen wordt een anderetechnologie toegepast namelijk CSMA/CA. In plaats van het detecteren van botsingen zullenbotsingen vermeden worden, CA: collision advoidence.

De kans op botsingen is het grootst juist na een bezet medium. Daarom worden er wacht-tijden en een veroveringsfase gedefinieerd. Figuur 2.14 toont enkele belangrijke parametersomtrent de wachttijden voor de toegang tot het medium. Alle parameters worden gerela-teerd t.o.v. de slottijd (afgeleid van de door het medium veroorzaakte voortplantingsvertra-ging. Deze parameters zijn:

• SIFS (Short Interframe Spacing): kortste wachttijd voor mediumtoegang (dus hoogsteprioriteit). Het Acces Point gebruikt voor het versturen van ACK-berichten deze wacht-tijd.

• PIFS (PCF Interframe Spacing): middelmatige prioriteit, deze tijd wordt gebruikt voor depollingacties van een Acces Point.

• DIFS (DCF Interframe Spacing): laagste prioriteit voor mediumtoegang, van toepassingop normale deelnemers op het draadloos segment.

Ethernet 21

Figuur 2.14: CSMA/CA

Indien een host een bericht wenst te versturen moet eerst het medium beluisterd worden.Indien het medium langer dan een tijd DIFS vrij is kan deze deelnemer het initatief nemenom een bericht te versturen.

Indien blijkt dat het medium bezet is wordt er gewacht tot de zendende deelnemer klaar ismet zenden. Dan moet er een tijd DIFS gewacht worden. Het Acces Point heeft een hogereprioriteit en hoeft slecht een tijd SIFS te wachten. Indien na de DIFS tijd het medium nogsteeds vrij is, start de veroveringsfase waarbij bij elke host, welke data wenst te versturen,een random backoff timer gestart wordt. De deelnemer welke als eerste uitgeteld is, kan hetinitiatief nemen om het medium te gebruiken en data te verzenden.

2.4 Structuurelementen voor Ethernet

2.4.1 De hub

De maximale segmentlengte van een LAN wordt bepaald door het gebruikte medium en hettoegepaste toegangsmechanisme. Om de beperking van de lengte op te heffen werd alsnel gezocht naar methoden om meerdere segmenten na elkaar te koppelen. De eerste enmeest eenvoudige methode hiervoor is het inzetten van een repeater. Een repeater is eensignaalversterker die pakketten transparant doorgeeft, onafhankelijk van de inhoud van hetpakket. Een repeater wordt gebruikt om twee of meer Ethernet segmenten onderling metelkaar te verbinden. Zoals te zien is op de slight vindt een repeater-koppeling volgens deISO-OSI-definities plaats op de fysieke laag.

Ethernet 22

Figuur 2.15: De repeater volgens het OSI model

Beide segmenten kunnen verschillend van medium zijn. Een segment op basis van 10Base-Tkan met een repeater bijvoorbeeld worden gekoppeld aan een glasvezelsegment. Een an-dere belangrijke eigenschap van een koppeling op basis van een repeater is dat niet alleen dedatabits worden doorgegeven, maar ook eventuele botsingen en signaalfouten. Netwerkseg-menten die onderling zijn verbonden via een repeater zijn daarom gevoelig voor foutsitua-ties; een probleem op één segment plant zich voort over alle andere segmenten. In modernelokale netwerken op basis van Ethernet worden repeaters hoofdzakelijk gebruikt om seg-menten van verschillende media met elkaar te verbinden. Zo worden backbone-segmentenuit glasvezelbekabeling altijd via optische repeaters gekoppeld aan afdelingssegmenten vantwisted-pair-bekabeling.

Figuur 2.16: De hub

Een hub is eigenlijk een multiport repeater: het regenereert een inkomend signalen naar alleandere poorten zoals blijkt uit figuur 2.16. Alle segmenten welke via een hub met elkaarverbonden zijn een collision domein.

Een hub is verkrijgbaar in veel verschillende uitvoeringen. Deze uitvoeringen verschillen inhet aantal poorten, de typen media die worden ondersteund en de uitbreidbaarheid.

Een belangrijke functionaliteit van de moderne hub wordt gevormd door de mogelijkhedenvoor netwerkmanagement. Minimaal is het mogelijk om poorten aan of uit te schakelen en

Ethernet 23

te detecteren of er storingen zijn opgetreden. Om deze mogelijkheid beschikbaar te krij-gen is een moderne hub uitgerust met een SNMP agent die wordt aangestuurd vanuit eenmanagementstation.

2.4.2 De switch

Eén van de mogelijkheden om LAN segmenten met meer intelligentie onderling te koppelenis het gebruik van een bridge. Een bridge is meer dan alleen een medium voor het doorgevenvan data zoals de repeater. Voordat een pakket via een bridge wordt doorgegeven van hetene segment naar het andere segment onderzoekt een bridge het MAC-adres en op basishiervan vindt al dan niet transport naar het andere segment plaats.

Figuur 2.17: De bridge volgens het OSI model

Een bridge kan zijn uitgerust met meer dan twee netwerkpoorten. In dit geval wordt de termswitch gebruikt. Voor iedere poort wordt softwarematig een MAC adrestabel bijgehouden.Deze tabel wordt gevuld door op het desbetreffende segment van het netwerk te luisterenen alle MAC-adressen die op dit segment voorkomen, te kopiëren naar de tabel. Ieder adreswordt gedurende een beperkte tijd vastgehouden en het wordt weer gewist zodra een be-paalde tijd, de holdtime, is verstreken. Door deze techniek wordt voorkomen dat niet-actievestations worden geadresseerd of dat stations juist niet meer worden herkend.

Figuur 2.18: De switch

Ethernet 24

Het koppelen van segmenten van een lokaal netwerk via een switch heeft een aantal voorde-len boven de koppeling met een repeater of hub. Zo wordt bij het gebruik van een switch hetene segment niet belast met de frames van het andere segment die daar wat betreft adres-sering niet thuishoren. De belasting per segment wordt door deze functie van de bridgegereduceerd. Tevens worden foutsituaties niet door gegeven omdat de switch ook contro-leert op een correcte opbouw van het frame. Tot slot wordt door de bridge ook vermeden dater botsingen tussen frames worden doorgegeven van het ene segment naar het andere seg-ment. Iedere poort van een switch sluit dus een collision domein af. Indien iedere deelnemerrechstreeks op de poort van een switch gekoppeld wordt onstaan er veel collision domeinen,maar bevat ieder domein slechts één deelnemer en kunnen er geen botsingen ontstaan. Ineen verder deel wordt nog dieper ingegaan op de switch.

2.5 IEEE802.1Q tagged frame

De IEEE802.1Q beschrijft 4 extra bytes, opgedeeld in twee extra velden in het Ethernet frameom nieuwe toepassingen mogelijk te maken. Eén van deze toepassingen is VLAN (zie verderin dit hoofdstuk).

Figuur 2.19: Opbouw van een tagged frame

Beschrijving van de extra velden:

• TYPE(TAG), 2 bytes: krijgt de waarde 8100h om aan te geven dat dit frame een taggedframe is en dus een extra informatieveld bevat

• VLAN TPID, 2 bytes: VLAN Tag Protocol Identifier

– User priority, 3 bits: de prioriteit van het frame wordt meegegeven, de prioriteits-code (een getal tussen 0 en 7) staat beschreven in IEEE802.1p.

– CFI: Cononical Format Indicator. De IEEE802.1Q is enkel voor Ethernet of TokenRing ontwikkeld. Deze bit is 0 voor Ethernet en 1 voor Token Ring.

– VLAN ID: Identificatie van het VLAN, 4094 mogelijkheden.

FFFFh gereserveerd0000h geen VLAN, frames met prioriteit (Profinet IO)

2.6 Power over Ethernet

De IEEE802.3af Power over Ethernet voorziet sinds juni 2003 de mogelijkheid voor gemeen-schappelijke transmissie van data en voeding over dezelfde Ethernet kabel.

Ethernet 25

PoE werd ontwikkeld voor WLAN access points, Bluetooth access points, IP telefoons (voiceover IP), IP camera’s, RFID reading units, touch panels, ... . Vroeger werd dit reeds toege-past via niet genormeerde systemen, de niet gebruikte lijnen van een Ethernet kabel werdengebruikt om 24V of 48V over te brengen.

Via de IEEE802.3af standaard kan de stroom naar devices beperkt en gecontroleerd wor-den. Het gebruik van PoE maakt een extra voedingsadapter overbodig. Dit is vooral handigals het netwerktoestel ingezet moet worden op een plaats waar stroomvoorziening via hetstopcontact moeilijk haalbaar is.

Het protocol definieert twee basiscomponenten. De PSE (Power Sourcing Equipment) en dePD (Powered Device)

2.6.1 PSE

Het toestel welke voeding voorziet voor PoE wordt een PSE, Power Sourcing Equipment, ge-noemd. De spanning voorzien door de PSE is nominaal 48V (tussen de 44V en 57V). Elkepoort van een PSE moet in staat zijn om 350mA te leveren bij 44V (15.4 Watt).

Figuur 2.20: Opbouw van een PSE

Er wordt onderscheid gemaakt tussen 2 types.

• End point PSE: de standaard Ethernet switch wordt vervangen door een PoE switch.

• Mid span PSE: dit toestel wordt geplaatst tussen de conventionele switch en de net-werkdeelnemer. Werkt enkel op alternatief B.

Ethernet 26

Figuur 2.21: Gebruik van een Mid span PSE

Figuur 2.21 toont de integratie van een mid span PSE. Er is dus telkens een extra modulenodig om PoE mogelijk te maken.

2.6.2 PD

De netwerkwerkdeelnemer welke zijn voeding krijgt over de Ethernet kabel wordt een PD, Po-wered Device, genoemd. Om fouten tegen de polariteit tegen te gaan is er een auto-polariteitcircuit ingebouwd in een PD. Een PD moet volgens de norm Alternatief A en Alternatief B on-dersteunen.

Volgens de norm moet een PSE minimum 15.4W kunnen leveren en mag een PD maximaal12.95W verbruiken. Dit verschil wordt gebruikt om de verliezen in de twisted pair kabel teoverbruggen. Een kabel van 100m heeft een weerstand die voor verlies zorgt.Om toestellen te beschermen tegen onverwachte spanning wordt er tijdens het verbindeneen identificatieproces uitgevoerd:

• Als er niks verbonden is met de PSE is de poort spanningloos

• Een toestel meldt zich aan met een weerstand van 25kΩ.

• De PSE legt een spanning van 10.1 V aan de belasting en meet de stroom. Indiende gevraagde stroom minder is dan de minimum stroom, dan wordt er geen stroomgeleverd.

• Om de specifieke klasse van 1 tot 3 te bepalen legt de PSE een spanning van 20.5 Vaan de belasting. Na het bepalen van de klasse legt de PSE een spanning van 48V aande belasting. Er wordt onderscheid gemaakt tussen de volgende vermogenklassen:

Klasse 0 0,44W tot 12,95WKlasse 1 0,44W tot 3,84WKlasse 2 3,84W tot 6,49WKlasse 3 6,49W tot 12,95W

Ethernet 27

2.6.3 Alternatief A

De voeding wordt via de datalijnen overgebracht. De voeding wordt door middel van trans-formatoren met middenaftakking aangesloten op de pinnen 1-2 en 3-6 zodat die voor dedatastroom onzichtbaar is. Kan gebruikt worden voor 10/100/1000Base-T.

Figuur 2.22: PoE, alternatief A

2.6.4 Alternatief B

De energie wordt overgedragen via de aders in een UTP kabel die niet gebruikt worden voordata. De paren 4-5 en 7-8 worden parallel gebruikt, zo kan er meer stroom vloeien.De posi-tieve kant van de 48 V is aangesloten op pin 4 en 5, de negatieve kant is aangesloten op pin7 en 8.

Figuur 2.23: PoE, alternatief B

Kan enkel gebruikt worden indien paar 1 en paar 4 ter beschikking zijn (bepaalde industriëleEthternet kabels bevatten alleen paar 2 en 3) of indien paar 1 en 4 niet gebruikt worden (dus1000Base-T is niet mogelijk).

Ethernet 28

2.7 VLAN

Een VLAN of Virtual Local Area Network is een groep deelnemers in een groter netwerk welkeop een logische manier een apart netwerk vormen. Hierdoor kan op een groter fysisch net-werk meerdere logische groepen gecreëerd worden. Een VLAN heeft een eigen broadcastdomein. Datapakketten worden enkel binnen een VLAN doorgestuurd. De deelnemers kun-nen fysich ver uit elkaar liggen maar ze moeten zich wel op één en hetzelfde fysisch netwerkbevinden. Enkele voorbeelden van het indelen van een netwerk:

• Volgens departementen: één VLAN voor Sales, een ander VLAN voor Engineering ennog een andere VLAN voor Automation.

• Volgens hiërarchie: één VLAN voor directie, een ander VLAN voor managers en nog eenander voor werknemers

• Volgens gebruik: één VLAN voor gebruikers die e-mail nodig hebben en een ander voorgebruikers van multimedia

2.7.1 Voordelen van VLANs

Het grootste voordeel van VLANs is de segmentatie van het netwerk. Hierdoor wordt hetnetwerk flexibeler dan een traditioneel netwerk. Deze flexibiliteit vertaalt zich in het mak-kelijk verplaatsbaar zijn van netwerkdeelnemers. Andere voordelen zijn extra veiligheid enbeperking van de netwerkbelasting.

• Verplaatsbaarheid van apparaten: apparaten kunnen gemakkelijker verplaatst wordenin het netwerk. In een traditioneel netwerk moet bekabeling aangepast worden alseen gebruiker van het ene subnet naar het andere verhuist. Het verhuizen van hetene VLAN naar het andere brengt geen veranderingen aan de bekabeling met zichmee. Alleen een instelling op de switch moet gebeuren. Zo kan een station van Salesverplaatst worden naar aan netwerkaansluiting die toebehoort aan Engineering. Depoort moet ingesteld worden als een lid van de VLAN Engineering maar er moet nietopnieuw bekabeld worden.

• Extra veiligheid: toestellen van een VLAN kunnen alleen communiceren met toestellenin hetzelfde VLAN. Als een toestel van VLAN Sales wil communiceren met de VLANAutomation dan moet deze verbinding ingesteld worden in een router.

• Beperking netwerktraffiek: bij een traditioneel netwerk kunnen broadcasts zorgen vooreen overbelast netwerk. Broadcast berichten komen vaak toe bij apparaten die dezeberichten niet nodig hebben. VLANs beperken deze problematiek omdat een broadcastberichten uit de ene VLAN niet toekomt in de andere VLAN.

2.7.2 Trunking

Trunking is methode om data van verschillende VLANs tussen twee switches te versturen.Hiervoor is slechts één poort nodig per apparaat. Er zijn verschillende manieren om aantrunking te doen.

• ISL: InterSwitch Link, dit is een veel gebruikt propriëtair protocol van Cisco

• IEEE802.1Q: dit is een standaard die ondersteund is door veel fabrikanten van switches.

Ethernet 29

Bij trunking wordt er een stukje code toegevoegd (een tag) waarin staat van welke VLAN hetverzonden pakket afkomstig is. Dankzij dit systeem blijven de voordelen van VLANs bewaard.De VLANs blijven gescheiden zelf als ze zich uitspreiden over verschillende switches. Om tochdataverkeer tussen de verschillende VLANs te voorzien is er een router nodig.

2.7.3 Soorten VLANs

De verschillende soorten VLANs kunnen ingedeeld worden in twee types: de statische en dedynamische VLANs.

• Statische VLANs, deze zijn port-based. Afhankelijk van de poort van een switch waaropeen gebruiker zich aansluit behoort hij tot de ene of de andere VLAN.

Voordelen:

– Makkelijk te configureren

– Alles gebeurt in de switch. De gebruiker merkt er weinig van

Nadelen:

– Als een gebruiker zijn PC op de verkeerde poort aansluit is er een herconfiguratienodig door de administrator.

– Als een tweede switch aangesloten wordt op een poort die tot een bepaalde VLANbehoort, dan horen alle computers die men op deze switch aansluit automatischtot deze VLAN.

• Dynamische VLANs: zijn niet gebaseerd op de poorten van een switch maar wel op hetadres van de gebruiker of op het gebruikte protocol.

Voordeel: iedereen kan zijn computer op eender welke poort aansluiten en toch tot decorrecte VLAN behoren.

Nadeel: de kostprijs van dit type VLAN ligt hoger omdat er speciale hardware vereist is.

Ethernet 30

2.8 Netwerkredundantie

2.8.1 Inleiding

Netwerkredundantie betekent het integreren van hardware en software welke er voor zorgendat bij een Single Point of Failure de beschikbaarheid van het netwerk optimaal blijft. Hetcommunicatiesysteem, het netwerk, is het hart van ieder modern automatiseringsproject.Om netwerkfouten op te vangen kunnen verschillende protocollen geïntegreerd worden inde structuur elementen. Er kunnen drie belangrijke groepen onderscheiden worden:

• STP/RSTP: (Rapid) Spanning Tree Protocol. Kan toegepast worden in mesh topologiën,wordt verder in dit hoofdstuk besproken.

• MRP: Media Redundancy Protocol, enkel voor ringtopologieën.

• PRP: Parallel Redundancy Protocol

2.8.2 Het Spanning Tree Protocol

Het Spanning Tree Protocol (STP) is een open protocol dat beschreven staat in de IEEE802.1d.Het is een OSI laag-2 protocol dat een gesloten lusvrij LAN garandeert. Het is gebaseerd opeen algoritme ontwikkeld door Radia Perlman (personeelslid van Digital Equipment Corpora-tion). Spanning tree maakt het mogelijk om een netwerk uit te bouwen waarbij redundantelinks geïntegreerd worden. Op deze manier kan een automatisch back-up pad voorzien wor-den indien een actieve link om één of andere reden wegvalt zonder gesloten lussen in hetnetwerk te creëren.

Om dit protocol toe te passen moeten de gebruikte switches het protocol ondersteunen. Deomschakeltijd van dit protocol is niet echt voldoende voor de industrie. Na een onderbrekingvan een segment kan het al gauw 30 tot 50 seconden duren voor het alternatieve pad be-schikbaar komt. Voor sturingen is deze delay onaanvaardbaar en zelfs voor monitoringstoe-passingen is 30 seconden al erg lang. Een voordeel van het STP is dat het niet uitsluitendgebruikt kan worden voor redundante ringstructuren.

2.8.3 Het Rapid Spanning Tree Protocol

Als antwoord op de tekortkomingen van het spanning tree protocol formuleerde de IEEE in2001 het rapid spanning tree protocol (RSTP). Het protocol staat beschreven in de IEEE802.1wstandaard. Sinds 2004 is het spanning tree protocol als overbodig beschreven in de IEEE802.1den wordt er aangeraden om het RSTP te gebruiken i.p.v. het STP. De IEEE802.1w is dan ookopgenomen in de 802.1d norm.

De omschakeltijd van het RSTP is lager dan deze van het STP (vandaar de naam), namelijk1 tot 10 seconden in plaats van 30 tot 50 seconden. Afhankelijk van de toepassing kan dezeomschakeltijd al voldoende snel zijn.

Ethernet 31

Figuur 2.24: Mogelijke boomtopologie mbv (R)STP

Figuur 2.24 toont een netwerk met vijf verschillende structuurelementen. Er worden verschil-lende redundante verbindingen gecreëerd. Ten gevolge hiervan ontstaan er ontoelaatbareloops die het netwerk snel in verzadiging zullen brengen. Het RSTP protocol converteertdeze topologie naar een boomstructuur door een aantal poorten af te sluiten. Hierbij wordtéén structuurelement als root geconfigureerd. Vanuit deze root zijn alle andere switchesbereikbaar via één enkel pad. Indien een netwerkfout optreedt wordt een nieuw actief padgecreëerd.

Uitbreidingen op RSTP

Om tegemoet te komen aan de noden van de automatisering voorzien heel wat bedrijvenpropriëtaire uitbreidingen op het RSTP protocol om zo omschakeltijden beneden de secondete bekomen. Op deze manier wordt QoS bekomen voor de redundante opbouw van automa-tiseringsnetwerken.

Fast Ring Detection is een uitbreiding van Phoenix Contact op het RSTP. Bij het uitvallenvan een netwerkswitch worden omschakeltijden van 100 ... 500 ms bereikt. Omschakeltijdenvan max. 500 ms zijn beschikbaar voor omvangrijke automatiseringsnetwerken met 1000ingevoerde adrestabellen in de switches. Bij minder eindapparaten in het netwerk zijn dezetijden korter. Dit protocol is echter enkel te gebruiken bij 10 of 100Mbps

2.8.4 Bridge Protocol Data Units (BPDUs)

Aan de hand van een bepaald algoritme wordt de boomstructuur berekend waarbij er dus éénswitch als root wordt geconfigureerd. Iedere switch moet wel alle nodige info bezitten om dejuiste poortregels te kunnen definiëren. Om te verzekeren dat iedere switch voldoende ende juiste informatie bezit zullen switches onderling informatie uitwisselen. Hiervoor wordenspeciale frames gebruikt, de zogenaamde Bridge Protocol Data Units (BPDUs).

Een bridge verstuurt een BPDU waarbij het als SA het uniek MAC van de poort zelf gebruikten als DA het STP Multicast adres 01:80:C2:00:00:00.

Er zijn verschillende soorten BPDUs:

• Configuration BPDU (CBPDU), gebruikt voor de berekening van de spanning tree

Ethernet 32

• Topology Change Notification BPDU (TCN), gebruikt om veranderingen in het netwerkaan te kondigen

• Topology Change Notification Acknowledgement (TCA)

Om een network zonder lussen te creëren krijgt elke poort van een switch een bepaaldestatus toegewezen De verschillende statussen zijn:

• ROOT: poort die de link vormt naar de root switch

• DESIGNATED: een actieve poort welke een link vormt naar een onderliggende switch inde boomstructuur.

• ALTERNATE: een poort met een lagere prioriteit, een alternatieve link naar de root

2.8.5 Multiple Spanning Tree Protocol (MSTP)

In een Ethernet omgeving waar Virtual LANs toegepast worden kan ook gebruik gemaaktworden het van Spanning Tree Protocol.

MSTP, oorspronkelijk gedefinieerd in de IEEE 802.1s en later opgenomen in de IEEE 802.1qeditie 2003, definieert een uitbreiding op RSTP in combinatie met Virtual LANs. Het combi-neert het beste van PVST (Per-VLAN Spanning Tree) waarbij ieder VLAN zijn eigen spanningtree definieert en het oorspronkelijk IEEE 802.1q waarbij slechts één spanning tree gecreëerdwordt voor het volledige netwerk.

Met MSTP worden verschillende VLANs opgedeeld in logische instances (groepen VLANs metdezelfde spanning-tree topology).

MSTP bundelt alle spanning-tree informatie in één enkele BPDU om zo het aantal BPDU’s tebeperken en is volledig compatibel is met RSTP switches

2.8.6 Media Redundancy Protocol

MRP maakt deel uit van de PROFINET standaard. Bij MRP blokkeert een ringmanager éénpoort om zodoende een actieve lijn structuur te bekomen. Bij een netwerkfout valt het net-werk uiteen in twee geïsoleerde lijnen welke terug aan elkaar gekoppeld worden door degeblokkeerde poort vrij te geven. Omschakeltijden liggen in de range van 100ms.

2.8.7 Parallel Redundancy Protocol

In contrast met bovenstaande technologieën voorziet PRP bij een netwerkfout geen wijzigingvan de actieve topologie. Dit protocol werkt op twee parallele netwerken. Ieder dataframewordt over de twee netwerken verstuurt. De ontvangende node verwerkt het bericht dateerst aankomt en verwerpt het kopiebericht. PRP zorgt voor het kopiëren en verwerpen vande berichten. PRP maakt ook het dubbele netwerk onzichtbaar voor de hogere lagen in decommunicatie stack.

Ethernet 33

2.9 Belangrijke aanvullingen

2.9.1 LLDP

Het protocol IEEE802.1ab, link layer discovery protocol, is een standaard welke een oplos-sing voorziet voor de configuaratieproblemen bij uitgebreide LAN structuren. Het definieerteen standaardmethode voor switches, routers, WLAN Acces Points,... om informatie overzichzelf te verspreiden naar andere netwerkdeelnemers en om informatie van omliggendedeelnemers te bewaren. LLDP is mogelijke met alle 802 media. Het maakt gebruik van dedatalinklaag.

Een switch welke LLDP ondersteunt kan topologiedetectie uitvoeren via andere deelnemerswelke ook LLDP ondersteunen.

Voordelen:

• Verbeterde detectie van netwerkfouten

• Hulpmiddel bij het vervangen van modules

• Betere netwerkconfiguratie en netwerkmanagement

LDDP informatie wordt gebruikt binnen engineeringstools om een netwerktopologie op eengrafische manier te visualiseren.

2.9.2 IEEE 802.1x

IEEE802.1X is een beveiligingsstandaard voor authenticatie op iedere individuele poort vaneen switch. De authenticatie vindt plaats nog voor de gebruiker toegang krijgt tot het net-werk. Het herkenen van een rechthebbende gebruiker gebeurt dus op laag 2 van het OSI-model. Dit alles kan - afhankelijk van de gebruikte hardware - zowel draadloos als bedraad.

IEEE802.1x maakt gebruik van een protocol om informatie uit te wisselen met een toe-stel/gebruiker welke een verzoek tot toegang richt tot een poort. De berichten bevatteneen gebruikersnaam en een paswoord. De switch zal de identificatie niet zelf uitvoeren maarzal het verzoek op zijn beurt richten tot een RADIUS authentication server op het netwerk.De server zal het verzoek afhandelen, zal feedback geven aan de switch welke dan de poortzal openen voor de gebruiker.

Bij de werking van het protocol zijn er drie belangrijke spelers:

• De gebruiker, de client, wordt in het protocol de supplicant genoemd.

• Het access apparaat, de switch of het access-point, is de authenticator.

• Het controlerende toestel, de RADIUS infrastructuur, is een authentication server.

Ethernet 34

Figuur 2.25: Drie belangrijke spelers bij de werking van het protocol

De authenticatie voor 802.1X geschiedt met een flexibel authenticatie-mechanisme genaamdhet Extensible Authentication Protocol (EAP), waardoor diverse vormen van authenticatie mo-gelijk zijn. Dit maakt het mogelijk door op basis van het type gebruiker een andere vorm vanauthenticatie af te dwingen: zowel sterke als zwakke authenticatie. Het is bijvoorbeeld mo-gelijk om voor studenten een gebruikersnaam en wachtwoord verplicht te stellen, en voormedewerkers een certificaat te gebruiken. In de hoofdstukken betreffende security wordt erdieper ingegaan op dit item.

2.9.3 Link aggregation with LACP naar IEEE 802.3ad

Link aggregation (ook wel trunking genoemd) is een manier om fysieke netwerkverbindingenis de Engelse benaming voor het samenvoegen van meerdere netwerkverbindingen met hetdoel een hogere doorvoersnelheid te behalen. Link aggregatie kan tevens voor een redun-dante verbinding zorgen hetgeen fouttolerantie toevoegt aan bedrijfskritische systemen. Detechniek is van toepassing op switches als op netwerkkaarten (NICs).

Link aggregatie is momenteel gestandaardiseerd door in de IEEE 802.3ad standaard. Hetbiedt volgende voordelen:

• Hogere beschikbaarheid van de verbindingen

• Capaciteit van een verbinding verhogen

• Betere performantie met de beschikbare hardware

De huidige LAN technologieën voorzien datarates van 10Mbps, 100Mbps en 1000Mbps. LinkAggregation kan waarden tussenin creëren waar nodig of indien een datarate groter dan1000Mbps vereist is kan met het groeperen van verschillende 1000Mbps verbindingen eenhigh-speed verbinding voorzien worden.

Ethernet 35

Figuur 2.26: Link aggregatie

Link Aggregation kan op verschillende manieren toegepast worden:

• Verbinding tussen twee switches

• Verbinding tussen switch en eindstation

• Verbinding tussen twee eindstations

Figuur 2.26 toont hoe switches met elkaar verbonden zijn via twee 100 Mbps links. Alséén link wegvalt tussen die twee switches zal de andere link in de link aggregation Groupovernemen.??ink Aggregation is momenteel opgenomen in de IEEE 802.3ad standaard: ’LinkAggregation allows one or more links to be aggrgated together to form a Link AggregationGroup, such that a MAC client can treat the Link Aggregation Group as i fit were a single link(IEEE Standard 802.3, 2000 Edition).??e IEEE802.3ad standaard beschrijft ook het gebruikvan het LACP (Link Aggregation Control Protocol) om op een eenvoudige manier configura-tie informatie uit te wisselen tussen de verschillende systemen. Dit moet een automatischeconfiguratie alsook een opvolging van alle link aggration groups mogelijk maken. Het uit-wisselen van deze informatie gebeurt aan de hand van LACP frames zoals beschreven in destandaard.

2.10 Industrial Ethernet

De laatste jaren wordt Ethernet meer en meer gebruikt in een industriële omgeving. Er zijngrote verschillen tussen de kantooromgeving en de industriële omgeving. Industrieel Ether-net verwijst naar het gebruik van industriële producten om te voldoen aan de meer speci-fieke eisen van de industriële wereld. In onderstaande tabellen worden enkele belangrijkeaandachtspunten weergegeven.

Ethernet 36

Tabel 2.4: Aandachtpunten voor de installatie van Ethernet

Kantooromgeving Industriële omgeving

Vaste basisinstallatie in het gebouw Systeem-specifieke toepassingenVariabele netwerkverbinding voor werksta-tions

Verbindingspunten met het netwerk wor-den zelden tot nooit gewijzigd

Kabels liggen in valse vloerenVoorgemaakte kabels Connectoren die op de werkvloer geassem-

bleerd kunnen wordenStandaard werkstations op RJ45 RJ45 in de kasten, M12 in het veld

Regelmatig gebruik van fiber opticsBekabeling bestemd voor gebruik in eenbeweegbare kabelgeleidersZorgvuldig geïmplementeerde aardingen

Voeding van 230V AC Voeding met 24V DC of Power over EthernetStertopologie Regelmatig gebruik van lijntopologie of

ringtopologieRedundantie is vaak een vereiste

19"schakelkasten (afmetingen van stan-daard office serverkasten)Levensduur van ongeveer 5 jaar Levensduur van ongeveer 10 jaar

Terminals geschikt voor montage op eenDIN rail

Toestellen met actieve koeling (ventilato-ren)

Passieve koeling (geen bewegende onder-delen)Alarm contact voor error indicatieZorgvuldig geïmplementeerde aardingen

Tabel 2.5: Omgevingsinvloeden

Kantooromgeving Industriële omgeving

Gematigde temperaturen met lage fluctua-ties

Extreme temperaturen met hoge fluctua-ties

Bijna geen stof Hoge hoeveelheden stofGeen vochtigheid of water Vochtigheid of water kan aanwezig zijnBijna geen schokken of trillingen Vibraties of schokken zijn mogelijkLaag niveau van EMC Hoog niveau van EMCLage mechanische belasting of gevaar Hoge mechanische belasting of gevaarGeen chemische gevaren Chemische belasting door olie-achtige om-

gevingen of agressieve atmosferenGeen stralingsgevaren Hoge blootstelling aan UV stralingen in out-

door omgevingen

Hoofdstuk 3

TCP/IP

3.1 Inleiding

Transmission Control Protocol / Internet Protocol (TCP/IP) is een verzameling van industri-ële standaardprotocollen ontworpen voor communicatie over grote netwerken bestaande uitverschillende netwerksegmenten die gekoppeld worden door routers.

TCP/IP is een protocol gebruikt op Internet, welke de verzameling is van duizenden netwer-ken, wereldwijd verspreid, die onderzoekscentra, universiteiten, bibliotheken, bedrijven, in-dividuen, ... met elkaar verbinden.

Internetwerken is echter een heel algemeen begrip. Een internet is niet in grootte beperkt: erbestaan internetten die een paar netwerken omvatten, maar ook internetten die honderdennetwerken bevatten. Internet met hoofdletter I heeft betrekking tot het wereldwijde Internet,ook wel het publieke Internet genoemd.

Figuur 3.1: Hoe communiceren over een internet?

De vraag welke dient gesteld te worden is hoe twee verschillende hosts, gekoppeld aan eenverschillend netwerk, op ruime afstand, met elkaar kunnen communiceren? Het antwoord opdeze vraag is tweeledig.

Het eerste deel van het antwoord is een hardware aspect: een internet bestaat uit verschil-lende netwerken welke met elkaar verbonden zijn door routers. Een router is een structuur-element die het verbinden van netwerken als speciale taak heeft. Elke router bezit een pro-cessor, een hoeveelheid geheugen en een afzonderlijke interface voor elk netwerk waarmeehet verbonden is.

TCP/IP 38

Het tweede deel van het antwoord is een software aspect: op iedere host moet een univer-sele communicatiedienst actief zijn. Hoewel veel softwareprotocollen aangepast zijn voorinternetwerken springt er maar één suite uit, die voor internetwerken verreweg het meestwordt gebruikt. Deze suite heet kortweg de TCP/IP suite.

De TCP/IP suite kan perfect gesitueerd worden in het OSI model. Om de TCP/IP suite voorte stellen wordt echter meestal een vereenvoudigd model gebruikt. Een vierlagenmodel, hetDoD (Departement of Defence) model, het ARPANET Reference model of meestal gewoon hetTCP/IP model genoemd.

Figuur 3.2: De TCP/IP suite

Centraal in dit model zijn de internet layer en de transport layer welke verder in dit hoofdstukuitgebreid besproken worden. De application layer verzamelt en beschrijft alle protocollenwelke gebruik maken van het TCP/IP protocol. Daaronder behoort bv. het HTTP protocol, hetprotocol dat surfen naar een bepaalde webapplicatie mogelijk maakt. Het TCP/IP protocol zaldan een universele communicatiedienst mogelijk maken opdat de surfopdracht mogelijk zouzijn over het ganse Internet. De network layer voorziet dan in de communicatie op het lokalenetwerk tussen de host en de router of tussen twee routers onderling.

3.2 Het Internet Protocol (IP)

3.2.1 Inleiding

De belangrijkste kenmerken van het IP protocol zijn:

• Een datapakket routen doorheen het Internet. Iedere host wordt geïdentificeerd dooreen 32-bit IP adres.

• Het is een verbindingsloos protocol. Voor het verzenden van verschillende IP pakkettennaar een zelfde doelhost kan ieder pakket een andere route volgen. Er wordt geenvaste fysische verbinding gecreëerd.

TCP/IP 39

• Er wordt een universeel datapakket opgebouwd bestaande uit een header en een da-taveld. De header bevat ondermeer het adres van de zender en van de bestemming.Het datapakket is hardware onafhankelijk en wordt op het lokale netwerk nogmaalsingekapseld vooraleer het kan getranspoteerd worden.

• Het IP protocol controleert niet of de data correct verstuurd is en het voorziet ook geenbevestigings- of correctiemechanismen: send-it and pray.

• De IP header heeft een lengte van minstens 20 bytes. Bij gebruik van het options-veldkan de header maximaal 60 bytes zijn. Het creëert een header checksum.

Het Internet Protocol (IP) is van toepassing op het netwerkniveau (laag 3 van het OSI-model).Deze laag is verantwoordelijk voor het aanbieden en transporteren van informatie over ver-schillende netwerken. Om dit te kunnen realiseren is er een uniforme adressering nodig: hetIP adres.

Zolang de informatieoverdracht zich binnen hetzelfde netwerk afspeelt, kan deze functiona-liteit achterwege blijven. De verbinding van verschillende netwerken gebeurt door middelvan routers. Wanneer verschillende netwerken tot een groter geheel gebundeld worden danmoet ook ieder netwerk herkenbaar zijn door een adres. Ieder netwerk zal dus een unieknetwerkadres krijgen. Vertrekkend van dit netwerkadres krijgt iedere deelnemer dan ooknog eens een uniek adresnummer binnen dit netwerkadres. Op dit principe is de uniformeadressering gebaseerd. Dit adres wordt gedefinieerd op de IP laag, en wordt het IP adresgenoemd.

3.2.2 Het IP adres

Algemeen

Een IP adres bestaat uit 32 bits, 4 bytes, voorgesteld door 4 decimale cijfers gescheiden dooreen punt.

Figuur 3.3: Het IP adres

Ieder netwerk wordt voorzien van een naam (Net ID), en iedere netwerkdeelnemer krijgtbinnen dit netwerk een uniek nummer (Host ID). Net ID en Host ID vormen samen het IPadres. De netwerknaam is dan het IP adres waarbij het Host ID gelijkgesteld wordt aan nul.

TCP/IP 40

Figuur 3.4: Opbouw van het IP adres

Klasse-indeling van IP adressen

IP adressen worden opgesplitst in verschillende klassen. Figuur 3.5 toont een overzicht.

Figuur 3.5: De verschillende klassen binnen IP adressering

Tabel 3.1 toont de kenmerken van de klasse A, B en C. Klasse D is toegevoegd om op eeneenvoudige manier multicast berichten te kunnen versturen. klasse E heeft op dit momentnog geen functie.

Het onderscheid tussen de klassen A,B en C wordt bepaald door het aantal bytes die deeluitmaken van het Net ID enderzijds en het aantal bytes die deel uitmaken van de Host IDanderzijds. De meest beduidende bits in het IP adres bepalen tot welke klasse een IP adreszal behoren. Tabel 3.1 resumeert alle kenmerken van de drie verschillende klaasen.

TCP/IP 41

Tabel 3.1: Kenmerken van de verschillende klassen

Klasse A Net ID byte 1, eerste bit is altijd 0, (0 x x x x x x x)126 mogelijke netwerkadressen

Host ID byte 2 + byte 3 + byte 416777214 mogelijke hosts per netwerk

Range 1 . n . n . n→ 126 . n . n . n

Voorbeeld 90.15.167.2 (netwerknaam 90.0.0.0)

Klasse B Net ID byte 1, eerste bits zijn altijd 1 0, (1 0 x x x x x x) + byte 216383 mogelijke netwerkadressen

Host ID byte 3 + byte 465534 mogelijke hosts per netwerk

Range 128 . 0 . n . n→ 191 . 255 . n . n

Voorbeeld 128.19.205.132 (netwerknaam 128.19.0.0)

Klasse C Net ID byte 1, eerste bits zijn altijd 1 1 0, (1 1 0 x x x x x) + byte 2 + byte 32097152 mogelijke netwerkadressen

Host ID byte 4254 mogelijke hosts per netwerk

Range 192 . 0 . 0 . n→ 223 . 255 . 255 . n

Voorbeeld 192.147.25.112 (netwerknaam 192.147.25.0)

Het gebruik van IP adressen wordt door de Internet Assigned Number Authority (IANA) be-heerd.

IP adressen voor privé netwerken

Er wordt onderscheid gemaakt tussen publieke netwerken en privé netwerken (bedrijfsnet-werken). Op het Internet (het geheel van publieke netwerken) moet ieder IP adres uniek zijn.Bedrijfsnetwerken worden aan het Internet gekoppeld via een router. Om conflicten tussenprivé-netwerken en publieke netwerken te vermijden worden binnen iedere klasse een reeksIP adressen gedefinieerd welke niet op het Internet gebruikt worden. Deze worden beschre-ven in RFC 1597, Reserved Address Space. Een bedrijfsnetwerk krijgt als naam bijvoorkeureen waarde uit die reeks, zie tabel 3.2 .

TCP/IP 42

Tabel 3.2: IP adressen voor privé netwerken

Klasse A netwerken 10.0.0.0→ 10.255.255.255Klasse B netwerken 172.16.0.0→ 172.31.255.255Klasse C netwerken 192.168.0.0→ 192.168.255.255

Speciale IP adressen

Tabel 3.3 geeft een overzicht van de speciale IP adressen

Tabel 3.3: Enkele belangrijke speciale IP adressen

Net ID Host ID Beschrijving

allemaal nullen allemaal nullen IP adres van deze computer, wordt gebruikttijdens de opstart

Net ID allemaal nullen Het netwerkadres, identificeert een volle-dig netwerk

Net ID allemaal enen Broadcastadres op het netwerk127 willekeurig IP adres voor het testen van netwerkappli-

caties

Er wordt de mogelijkheid voorzien om broadcast berichten te versturen op een netwerk. EenIP broadcast adres voor een bepaald segment wordt bekomen door alle bits van de host ID op1 te plaatsen. Het IP adres 131.107.255.255 is een netwerk broadcastadres van het subnetmet als netwerkadres 131.107.0.0 .

3.2.3 Routers en subnetmasking

Figuur 3.6: Werking router

TCP/IP 43

Ondanks het feit dat het Internet in het enkelvoud aangeduid wordt, bestaat het uit eengroot aantal IP netwerken. Iedere ISP (Internet Service Provider) hangt zijn netwerk aanminimaal één ander netwerk. Doordat ieder netwerk zijn unieke identificatie heeft kan deinformatie van het ene station naar het andere gestuurd worden. Routers zorgen ervoordat informatie op de juiste wijze door het Internet gerouteerd wordt. Deze routers houdenzogenaamde routeringstabellen waarin staat waar bepaalde IP adressen zich bevinden. Zo-dra een IP pakket binnenkomt, vergelijkt de router het doeladres met zijn routeringstabellen.Als een overeenkomst gevonden wordt, weet de router op welke poort het desbetreffendepakket doorgestuurd kan worden.

Om het routeren te vergemakkelijken en om de bestaande klassen nog beter te benuttenwerd in 1985 met de RFC 950 de mogelijkheid gegeven om groepen adressen te creërenbinnen een klasse A, B of C. Om binnen een klasse een aantal subnetten te creëren wordt deprefix (NetID) met enkele bits uitgebreid (een extended network prefix). Met het gebruik vansubnetten verandert er op zich niets aan het IP adres. Voor de routers is het wel belangrijkom te weten welke bits nu de NetID vormen. De router maakt daarom gebruik van eensubnetmasker. Met dit masker filtert de router het netwerkdeel uit het IP adres.

Hoe wordt het subnetmask opgesteld?De bits die het netwerkgedeelte voorstellen krijgen de waarde 1De bits die het hostgedeelte voorstellen krijgen de waarde 0Daarna volgt de decimale omrekening.

Voorbeeld: een klasse C adres wordt uitgebreid met vier netwerkbits, het subnetmask wordtdan:

11111111 . 11111111 . 11111111 . 11110000255 . 255 . 255 . 240

3.2.4 Subnetten

Subnetting is van een gegeven IP adres, meerdere subnetten genereren.Voorbeeld: een bedrijf werkt met IP adres 172.23.0.0 (klasse B).Subnetmask is 255.255.0.0 of 1111 1111 1111 1111 0000 0000 0000 0000

Het volledig bedrijf moet opgesplitst worden in 10 verschillende subnetten. Alle subnettenkunnen via een router aan elkaar gelinkt worden.

Met 4 bits kunnen 16 verschillende combinaties gemaakt worden.Met 4 bits toe te voegen aan de Net ID kunnen dus de gewenste 10 subnetten gecreëerdworden.Subnetmask 1111 1111 1111 1111 1111 0000 0000 0000 of 255 . 255 . 240 . 0

Op die manier kunnen volgende 10 subnetten aangemaakt worden. Tabel 3.4 toont de ver-schillende subnetten.

TCP/IP 44

Tabel 3.4: Subnetting en subnetmaskers

BYTE 3 BYTE 3 Subnet Subnetmask(binaire code) (decimale waarde)

0000 0000 0 172.23.0.0 255.255.240.00001 0000 16 172.23.16.0 255.255.240.00010 0000 32 172.23.32.0 255.255.240.00011 0000 48 172.23.48.0 255.255.240.00100 0000 64 172.23.64.0 255.255.240.00101 0000 80 172.23.80.0 255.255.240.00110 0000 96 172.23.96.0 255.255.240.00111 0000 112 172.23.112.0 255.255.240.01000 0000 128 172.23.128.0 255.255.240.01001 0000 144 172.23.144.0 255.255.240.0

3.2.5 Classless Inter-Domain Routing

Door het succes van Internet dreigt er een tekort aan IP adressen. Het aantal toenemendenetwerken zorgt ook voor een sterk stijgend aantal routes waardoor er ook een probleemkomt voor de globale routeringstabellen.

De oplossing voor dit probleem bestaat uit twee stappen:

• Herstructurering van de IP adressen

• Hiërarchische routestructuur om het routeren efficiënter te maken

CIDR, Classless Inter-Domain Routing is een nieuwe vorm van adressering voor het Inter-net welke een efficiënter gebruik van de IP adressen moet opleveren in vergelijking met deklassen A,B en C. Het volgt rechtstreeks uit het begrip subnetten.

Het Net ID wordt niet meer beperkt tot 8, 16 of 24 bits. Een CIDR adres bevat het 32-bit IPadres en informatie over het aantal bits welke deel uit maken van het Net ID. In het adres206.13.01.48/25 betekent het achtervoegsel ’/25’ dat de eerste 25 bits de netwerknaambepalen en dat de resterende bits dienen om een bepaalde deelnemer te identificeren ophet netwerk.

TCP/IP 45

Tabel 3.5: Classless Inter-Domain Routing

CIDR code subnetmask binair aantal hosts

/28 255.255.255.240 11111111 11111111 11111111 11110000 16/27 255.255.255.224 11111111 11111111 11111111 11100000 32/26 255.255.255.192 11111111 11111111 11111111 11000000 64/25 255.255.255.128 11111111 11111111 11111111 10000000 128/24 255.255.255.0 11111111 11111111 11111111 00000000 256/23 255.255.254.0 11111111 11111111 11111110 00000000 512/22 255.255.252.0 11111111 11111111 11111100 00000000 1024/21 255.255.248.0 11111111 11111111 11111000 00000000 2048/20 255.255.240.0 11111111 11111111 11110000 00000000 4096/19 255.255.224.0 11111111 11111111 11100000 00000000 8192/18 255.255.192.0 11111111 11111111 11000000 00000000 16384/17 255.255.128.0 11111111 11111111 10000000 00000000 32768/16 255.255.0.0 11111111 11111111 00000000 00000000 65536/15 255.254.0.0 11111111 11111110 00000000 00000000 131072/14 255.252.0.0 11111111 11111100 00000000 00000000 262144/13 255.248.0.0 11111111 11111000 00000000 00000000 524288

De CIDR adressering maakt ook ’route aggregation’ mogelijk. Eén high-level route verwijzingkan veel lower-level routes in een globale routeringstabel vertegenwoordigen. Op deze ma-nier kan een volledige hiêrarchische structuur uitgewerkt worden welke te vergelijken is metde zonale opdeling van de telefoonnummers.

3.2.6 Voorbeelden

• Toon aan dat de server met IP adres 203.125.72.28/28 en de server met IP adres203.125.72.34/28 niet tot hetzelfde netwerk behoren.

• Het gegeven IP adres van een host is 192.168.100.102/27.

– Toon aan dat deze host behoort tot het netwerk: 192.168.100.96/27.

– Toon aan dat het broadcastadres van dit netwerk 192.168.100.127 is.

– Toon aan dat alle deelnemers op dit netwerk een IP adres hebben welke gelegenis tussen 192.168.100.97 en 192.168.100.126.

• Een bedrijfsnetwerk is opgebouwd uit verschillende subnetten.De deelnemers met volgende IP adressen behoren alledrie tot een verschillend subnet:172.23.136.45, 172.23.139.78 en 172.23.140.197.De deelnemers met IP adres 172.23.126.120 en 172.23.127.92 behoren wel tot het-zelfde subnet.

Toon aan dat het CIDR achtervoegsel /23 zal zijn binnen het bedrijfsnetwerk.

TCP/IP 46

3.2.7 Het IP pakket

De te verzenden gegevens worden door de transportlaag aan de internetlaag doorgegeven.De internetlaag pakt de informatie in het dataveld in en voegt er vervolgens een IP headeraan toe. Het geheel wordt vervolgens aan de netwerklaag doorgegeven voor verdere afhan-deling. Het verzenden van informatie door middel van het IP protocol gebeurt op basis vanIP pakketten.

Figuur 3.7: Het IP pakket

Wanneer een router een IPv4 pakket ontvangt dat te groot is voor het subnet waarop ditpakket moet verder gestuurd worden dan zal IPv4 op de router dit pakket opsplitsen in klei-nere pakketten welke fitten in de dataframes van het desbetreffende subnet. Wanneer dezepakketten de finale bestemmeling bereiken zal de IPv4 op de doelhost deze pakketten terugin de originele volgorde plaatsen. Wanneer een pakket moet opgeslitst worden gebeurt hetvolgende;

• Elk pakket krijgt zijn eigen IP header

• Alle opgesplitste berichten welke behoren tot hetzelfde originele bericht krijgen hetoriginele identification field. De more fragments flag toont aan dat andere fragmentenvolgen. De more fragments flag wordt niet gezet bij het laatste fragment.

• De fragment offset field geeft aan welke de positie is van dit fragment in het totalebericht.

Om een goed idee te krijgen van de functies van het IP protocol wordt de IP header verdertoegelicht. Figuur 3.8 toont de verschillende velden binnen de IP header. De header bestaatuit minstens 20 bytes.

TCP/IP 47

Figuur 3.8: De IP header

• Versie (V): veld van 4 bits welke de IP versie weergeeft.

• IHL: veld van 4 bits welke de lengte weergeeft van de header (in bytes)

• Type of service: gereserveerd / prioriteit van de gewenste dienst

• Totale lengte: de totale lengte in bytes van het volledige IP pakket

• Identification: als een IP pakket moet opgedeeld worden dan krijgt ieder pakket eenunieke identificatie zodat aan de ontvangende zijde alle pakketten terug op de juistemanier kunnen samengevoegd worden.

• Flags: de vlaggen worden gebruikt om de fragmentatie van de pakketten op te volgen

• Fragment offset : wanneer een datapakket opgesplitst wordt dan wordt de positie vanhet fragment in het gehele pakket hier in een 8-bit unit.

• Time to live (TTL): telkens als een IP pakket een router passeert wordt deze waardeverminderd met 1. Indien dit getal nul wordt dan zal de betreffende router dit berichtverwerpen. Zo wordt voorkomen dat een bericht oneindig lang kan blijven bestaan.

• Protocol: het hoger gelegen protocol wordt hier weergegeven

01h ICMP06h TCP11h UDP

• Header Checksum: een controlewaarde voor de IP header. Iedere router zal deze hea-der checksum herbereken.

• Source IP address: IP adres van de zendende deelnemer

• Destination IP address: IP adres van de ontvangende deelnemer

• Options : andere netwerk informatie kan in de IP header opgenomen worden. Indien deoptions data niet eindigt als een 32-bit woord dan wordt de rest opgevuld met paddingzeros.

TCP/IP 48

3.2.8 IPv6

Algemeen

Het meest actuele IP protocol welke in dit hoofdstuk besproken werd heeft versienummer 4(IPv4). Door het grote succes van het IP protocol dringt zich een nieuwe versie op. Er is eennakend tekort aan IP-adressen en verder is het ook belangrijk dat nieuwe functionaliteiteneenvoudig kunnen geïntegreerd worden. Verder moet een nieuwe versie van het IP protocoleen hogere performantie kunnen garanderen

Met de komst van IPv6 is er ook een praktisch probleem: hoe zal het publieke toegankelijkeInternet dat werkt op basis van IPv4, omschakelen naar IPv6? De eenvoudigste manier isde zogenaamde dual-stack benadering. Daarbij wordt op nodes zowel IPv6 als IPv4 geïmple-menteerd. Deze nodes kunnen zowel IPv4 als IPv6 datagrammen verwerken.

Momenteel toont de automatiseringswereld totaal geen interesse voor de integratie van IPv6.

In wat volgt worden kort enkele voorzieningen van IPv6 aangehaald. Er werden echter zoveelmogelijk ontwerpvoorzieningen die IPv4 zo succesvol hebben gemaakt gehandhaafd.

IP adres

IPv6 maakt gebruik van IP adressen van 128 bits. Hierdoor ontstaan uitgebreide adresse-ringsmogelijkheden. Hexadecimale notatie met dubbele punten, adressen worden 128 bitlang: 8 groepen van 4 hexadecimale digits

2000:0000:0000:0FED:CBA9:8765:43212000::FED:CBA9:8765:4321

IPv4 adressen ::192.32.20.46

De nieuwe adressering moet zorgen voor kleinere routetabellen.

IPv6 header

Figuur 3.9: IPv6 header

De IP header is grondig gewijzigd. Een eenvoudiger basisheader in combinatie met de moge-lijkheid tot integratie van optionele headers moet ervoor zorgen dat de header-processing-tijd voor de router sterk gereduceerd wordt. Een aantal IPv4 velden worden geschrapt of zijnalleen nog als optie beschikbaar. De velden in de IPv6 header:

TCP/IP 49

• Flow label: een 20-bit identificatienummer om een pakket te onderscheiden in eendatastream

• Hop limit: aantal routers dat een bepaalde pakket kan processen is beperkt

• Next header: definieert het type van de eerste optionele header

• Versieveld: Dit 4-bit veld geeft het IP versienummer aan. Voor IPv6 is dit de waarde 6.

• Payloadlengteveld: dit 16-bit getal is een unsigned integer waarmee het aantal bytesin het IPv6-datagram wordt aangeduid dat volgt na de standaardheader met een lengtevan 40 bytes.

Omdat de transportlaag (TCP en UDP) en de datalinklaag (vb Ethernet) protocollen op hetInternet checksums berekenen, hebben de ontwerpers van IPv6 gemeend dat het berekenenvan checksums op de internetlaag niet langer noodzakelijk is.

3.3 Transmission Control Protocol (TCP)

3.3.1 Inleiding

IP is een verbindingsloos pakketbezorgingsdienst. TCP krijgt dus een moeilijke taak. Gebruikmakend van de onbetrouwbare pakkettendienst van IP moet het aan verschillende toepas-singsprogramma’s een betrouwbare data-afleveringsdienst bieden. Voor veel toepassingenis het essentieel dat een transportsysteem betrouwbaarheid kan bieden: het systeem moetgaranderen dat data niet verloren gaat, geduplicerd wordt of niet in de juiste volgorde aan-komt.

3.3.2 End-to-end transportdienst

Het TCP protocol is er verantwoordelijk voor dat informatie correct over één of meerdere net-werken wordt verstuurd. De uitwisselingsvorm van TCP staat bekend als connection oriented:een logische verbinding wordt opgebouwd, gebruikt en daarna terug stopgezet. TCP is duseen end-to-end protocol. Figuur 3.10 laat zien waarom TCP een end-to-end protocol is. TCPziet IP als een mechanisme waarmee TCP op een bepaalde host data kan uitwisselen met TCPop een host op afstand.

TCP/IP 50

Figuur 3.10: TCP als end-to-end transportprotocol

Vanuit het gezichtspunt van TCP is het hele Internet een communicatiesysteem dat berichtenkan accepteren en afleveren zonder de inhoud ervan te veranderen of te interpreteren.

3.3.3 Hoe betrouwbaarheid wordt bereikt

TCP is dus een bibliotheek van routines welke door applicaties kunnen gebruikt worden wan-neer deze een betrouwbare communicatie met een andere deelnemer, host willen opstarten.TCP hanteert verschillende technieken om volledige betrouwbaarheid te garanderen.

Herversturen dan datagrammen: als TCP data ontvangt, stuurt het een acknowledge-ment naar de zender terug. Telkens wanneer TCP data verstuurt, start het een timer. Indiende timer afloopt voordat de bevestiging ontvangen werd, verstuurt de zender de data op-nieuw, zie ook figuur 3.11.

Windowmechanisme om de datastroom te regelen. Als een verbinding tot stand is ge-bracht, reserveert elk einde van de verbinding een buffer voor de inkomende en uitgaandedata en stuurt de grootte van de buffer naar het andere einde. De beschikbare bufferruimteop een willekeurig moment wordt window genoemd en de mededeling voor het opgeven vande grootte wordt window advertisement genoemd. Een ontvanger stuurt bij elke ontvangst-bevestiging een window advertisement. Als de ontvangende toepassing de data zo snel kanlezen als deze aankomt stuurt de ontvanger met elke bevestiging een positieve window ad-vertisement mee. Als de zendende kant echter sneller werkt dan de ontvangende kant zalde binnenkomende data uiteindelijk de buffer van de ontvanger vullen, waardoor op eenbepaald moment de ontvanger een zero window adverteert. Een zender die een zero win-dow advertisement ontvangt moet het zenden stoppen tot de ontvanger weer een positievewindow advertisement doorstuurt.

Three-way handshake: Om te garanderen dat verbindingen op betrouwbare wijze tot standgebracht en beëindigd worden, gebruikt TCP een three-way handshake waarin drie berich-ten worden uitgewisseld. TCP gebruikt de term synchronisatiesegment (SYN-segment) voorberichten in een drievoudige handdruk die voor het opzetten van een verbinding wordengebruikt, en de term FIN-segment voor het beschrijven van berichten in een drievoudigehanddruk waarmee een verbinding wordt gesloten.

TCP/IP 51

Figuur 3.11: Three-way handshake

3.3.4 Het TCP segment

De te verzenden gegevens worden door de applicatielaag aan de transportlaag doorgege-ven. De transportlaag pakt de informatie in het dataveld in en voegt er vervolgens een TCPheader aan toe. Het geheel wordt vervolgens aan de internetlaag doorgegeven voor verdereafhandeling. Het verzenden van informatie door middel van het TCP protocol gebeurt opbasis van TCP segmenten.

Figuur 3.12: Three-way handshake

TCP/IP 52

Om een goed idee te krijgen van de functies van het TCP protocol wordt de TCP header verdertoegelicht. Figuur 3.12 toont de verschillende velden binnen de TCP header. De headerbestaat uit 20 bytes.

• Source, Destination Port: voor de verschillende upper-layer applicaties is TCP toegan-kelijk via verschillende poortnummers. Ports zijn een uniek 16-bit adres. De combinatievan een port en een internetadres wordt een socket genoemd, conform de originele de-finitie van een socket gedefinieerd door ARPA (1971). Het gebruik van poortnummersis essentieel bij opbouwen van een communicatie tussen verschillende applicaties. Ditwordt verder in de hoofdtuk uitgebreider besproken. Verder in deze cursus geeft tabel3.6 een overzicht van veel gebruikte poorten binnen de automatisering.

• Sequence number: in TCP krijgt iedere byte een nummer. Het sequentienummer is hetnummer van de eerste data-byte in het TCP-segment na de TCP-header.

• Acknowledgement nummer: dit veld bevat het volgende sequentienummer dat ver-wacht wordt van de partner.

• Header Length: lengte van de TCP-header in 32-bit woorden

• Code bits: verschillende bits waarmee een aantal statussen kunnen meegegeven wor-den.

– de RST-bit om de communicatie opnieuw te initialiseren.

– de SYN-bit welke gebruikt wordt om een communicatie te starten

– de FIN-bit welke gebruikt wordt om aan te geven dat een communicatie kan be-ëindigd worden.

• Window: het window veld geeft de maximale hoeveelheid databytes aan die verstuurdkan worden alvorens een bevestiging verstuurd en ontvangen dient te worden.

• Checksum: is een controle waarde van het TCP-pakket

• Urgent Pointer: de waarde geeft aan waar in het dataveld de urgente informatie begint.Om urgente informatie met een TCP-pakket mee te sturen dient de URG-codebit gezette worden.

TCP/IP 53

3.4 UDP

De protocol-suite van het Internet kent ook een verbindingsloos transportprotocol, name-lijk UDP (User Data Protocol). Met UDP kunnen applicaties IP pakketten zenden zonder eenverbinding tot stand te brengen. Veel Client Server applicaties die één aanvraag en één ant-woord hebben gebruiken UDP in plaats van een verbinding te moeten maken en later weerop te heffen. UDP wordt in RFC 768 beschreven.UDP is bijna een nul-protocol: de enige diensten die het voorziet is een checksum voor dedata en het multiplexen van applicaties via poortnummers. De UDP header is dan ook eenstuk eenvoudiger dan deze van TCP.

Figuur 3.13: Het UDP segment

Een UDP-segment bestaat uit een header van acht bytes gevolgd door de data.De header bestaat uit:

• Source port (2 bytes): poortnummer van de zender, is gelijk aan nul indien geen poortgebruikt wordt.

• Destination port (2 bytes): poort van de applicatie aan welke dit bericht gericht is.

• Lenght (2 bytes): de lengte in bytes van de UDP header en de ingekapselde data.

• Checksum (2 bytes)

Een typisch voorbeeld van UDP is real time audio. Het verloren gaan van datapakketten isjammer maar heeft geen invloed op het verder functioneren van de applicatie.

TCP/IP 54

Figuur 3.14: Real time audio als toepassing van UDP

TCP/IP 55

3.5 TCP en UDP poorten binnen de automatisering

In deze lijst wordt een overzicht gegeven van enkele veel gebruikte poortnummer binnen deindustriële automatisering.

Tabel 3.6: Veel gebruikte TCP en UDP poortnummers

Applicatie Poortnummer / Protocol

FTP-data (File Transfer Protocol) 20 / TCPFTP-control (File Transfer Protocol) 21 / TCPSSH (Secure Shell) 22 / TCP,UDPTelnet protocol 23 / TCPBOOTP Server 67 / UDPDHCP Server 67 / UDPBOOTP Client 68 / UDPDHCP Client 68 / UDPTFTP (Trivial File Transfer Protocol) 69 / UDPHTTP (Hypertext Transfer Protocol) 80 / TCPNTP (Network Time Protocol) 123 / UDPSNMP (Simple Network Management Proto-col)

161 / TCP,UDP

SNMPTRAP (Simple Network ManagementProtocol Trap)

162 / TCP,UDP

HTTPS (Hypertext Transfer Protocol overTLS/SSH)

443 / TCP

ISAKMP (Internet Security Association AndKey Management Protocol

500 / UDP

MODBUS 502 / TCP; UDPIPsec NAT traversal 4500 / UDPEtherNetIP 2222 / TCP; UDPROFINET such as connection establishment 0x8892 (34962) / UDP

0x8893 (34963) / UDP0x8894 (34964) / UDP

IANA free ports reserved for dynamicand/or private port (profinet service)

0xC000 - 0xFFFF

DDI Device Driver Interface (special proto-col used for diagnostic functionality)

1962 / TCP

SOCOMM Interface (Engineering Channelused for control communication)

20547 /TCP

TCP/IP 56

3.6 Communicatie over TCP(UDP)/IP

3.6.1 Client Server model

Een internet (TCP/IP) zorgt voor een algemene communicatie infrastructuur zonder op tegeven welke diensten allemaal kunnen gebruikt worden. TCP/IP verschaft een basiscommu-nicatiedienst maar deze protocolsoftware is niet in staat om contact te maken met of contactte accepteren van een deelnemer op afstand. Daarom moeten bij elke communicatie tweetoepassingsprogramma’s worden gebruikt: de ene toepassing start de communicatie en deandere accepteert deze.

Eén belangrijk probleem: de protocolsoftware kan op geen enkele manier aan een toepas-singsprogramma vertellen dat er een verzoek tot communicatie is aangekomen. Daarom zalde communicatie tussen twee deelnemers gebaseerd zijn op een model waarbij de ene toe-passing actief is (interactie aanvragen) terwijl de andere passief is (luisteren en eventueelaccepteren). Dergelijk model wordt momenteel algemeen toegepast bij communicatie tus-sen twee verschillende hosts over TCP/IP en wordt het Client Server model genoemd: eenServer applicatie wacht passief op contact terwijl de Client toepassing de communicatie ac-tief start.

Kenmerken van Client software:

• Is een toepassingsprogramma dat tijdelijk een Client wordt wanneer toegang tot eencomputer op afstand nodig is, maar dat ook lokaal berekeningen en bewerkingen uit-voert.

• Wordt direct door de gebruiker gestart en voor slechts één sessie uitgevoerd.

• Draait lokaal op de PC van een gebruiker

• Maakt actief contact met een Server

• Kan indien nodig tot meerdere Servers toegang krijgen, maar maakt actief contact metéén Server tegelijk

• Vereist geen speciale hardware of een geavanceerd besturingssysteem

Kenmerken van Server software:

• Is een speciaal ontworpen toepassingsprogramma, dat één bepaalde dienst levert,maar verschillende Clients tegelijkertijd kan afhandelen.

• Wordt automatisch geactiveerd wanneer een systeem opstart en blijft actief tijdens velesessies

• Draait op een gedeelde computer

• Wacht passief tot willekeurige Clients op afstand contact zoeken

• Vereist soms krachtige hardware en een geavanceerd besturingssysteem (afhankelijkvan de soort toepassing)

TCP/IP 57

Figuur 3.15: Client Server model over TCP/IP

3.6.2 Endpoint en Internetsocket

Figuur 3.15 toont een Client Server communicatie over de TCP/IP stack. Op computersyste-men kunnen tegelijkertijd meerdere Clients en Servers actief zijn. Belangrijk hierbij wordtdat iedere applicatie eenduidig moet geïdentificeerd worden en dat terwijl de computer waarmeerdere applicaties op draaien slechts één fysieke verbinding heeft met het Internet.

Hiervoor geven transportprotocollen elke communicatiedienst een unieke naam. TCP ge-bruikt hiervoor protocolpoortnummers. Aan elke Server wordt een specifiek protocolpoort-nummer toegekend. Via dit poortnummer wacht de Server passief op communicatie. Bij hetversturen van een aanvraag vermeldt de Client het poortnummer van de gewenste dienst.De TCP software op de computer van de Server gebruikt het destination poortnummer in eeninkomend bericht om te bepalen welke Server de aanvraag moet afhandelen.

Figuur 3.16: Begrippen endpoint en socket

endpoint

Het begrip endpoint kan soms tot verwarring leiden met het begrip socket. De oorspron-kelijke definitie van een socket volgens ARPANET is de combinatie van het IP adres met het

TCP/IP 58

poortnummer. Deze combinatie wordt heden een endpoint genoemd. Een endpoint beschrijftvia welke logische weg een applicatie bereikbaar is via een internet.

Internetsocket

De term socket is heden louter een software term. Een socket zorgt voor het mappen, hetlinken van een applicatie aan een endpoint. Zo ontstaat het begrip Internetsocket, ook net-werksocket genoemd. Een Internetsocket, kortweg socket genoemd, is een bidirectioneelcommunicatie endpoint van een proces tot proces verbinding en wordt bepaald door:

• Het protocol

– UDP protocol: datagramsockets of connectionless sockets

– TCP protocol: streamsockets of connection-oriented sockets

– ruw IP pakket (bv ICMP): rawsockets

• Lokaal IP adres

• Lokaal protocolpoortnummer

• Remote IP adres

• Remote protocolpoortnummer

3.6.3 Dynamische Servers

Van een computersysteem waarop meerdere toepassingsprogramma’s tegelijkertijd kunnendraaien wordt gezegd dat het systeem concurrency ondersteunt. Een programma dat meerdan één besturingsthread, of kortweg thread, proces of task heeft wordt een concurrentprogramma genoemd.

Concurrency is essentieel voor het Client Server interactie model omdat een concurrent Ser-ver tegelijkertijd meerdere Clients van dienst kan zijn zonder dat elke Client moet wachtentot voorgaande Clients klaar zijn.

De meeste concurrent Servers werken dynamisch. De server creëert voor elke aanvraagdie aankomt een nieuwe thread, een nieuw proces. In principe bestaat een Server uit tweedelen. Een eerste deel dat de aanvragen aanneemt en een nieuwe thread start voor dezeaanvraag. Dit eerste deel wordt de hoofdthread genoemd. Het tweede deel bestaat uit decode die elke afzonderlijke aanvraag kan afhandelen.

Als een concurrent Server opstart draait alleen de hoofdthread. Komt er een aanvraag binnendan produceert de hoofdthread een nieuwe thread die de aanvraag afhandelt. Ondertussenhoudt de hoofdthread de Server actief en wacht op een volgende binnenkomende aanvraag.

3.6.4 Ondubbelzinnige communicatie

Indien van een Server meerdere threads actief zijn is het belangrijk dat de inkomende be-richten van een Client gekoppeld worden aan de juiste thread van de Server.

TCP/IP 59

TCP eist van elke Client dat deze een lokaal protocolnummer kiest dat nog niet aan een dienstis toegewezen. Elke Client welke een TCP segment verstuurt zal dit lokaal poortnummer inhet source port veld plaatsen. Het protocolpoortnummer van de Server wordt in het destina-tion port veld geplaatst.

Op de computer van de Server gebruikt TCP de combinatie van de protocolpoortnummersen de IP adressen om een bepaalde communicatie te identificeren. Op deze manier kunnener berichten van meerdere Clients voor dezelfde Server aankomen zonder een probleem teveroorzaken. Samengevat moet iedere (Internet) socket uniek zijn.

Figuur 3.17: Client Server model over TCP/IP

Figuur 3.17 toont hoe een ondubbelzinnige communicatie tot stand komt wanneer tweeClients op eenzelfde PC een remote verbinding aangaan met dezelfde Server.

De communicatie tussen Client 1 en de Server wordt gekenmerkt door volgende socket:

• Protocol: TCP

• SP: 4400

• DP: 80

• SA: 172.23.1.101

• DA: 172.23.2.51

De communicatie tussen Client 2 en de Server wordt gekenmerkt door volgende socket:

• Protocol: TCP

• SP: 4444

• DP: 80

• SA: 172.23.1.101

• DA: 172.23.2.51

Het volstaat dat één van de parameters verschillend is om beide verbindingen een uniekeidentificatie toe te kennen.

TCP/IP 60

3.6.5 Status van een socket

Een TCP socket kan zich in de status listening bevinden. Wanneer een Server wacht opeen remote Client om een communicatie aan te vragen dan zijn de socketgegevens voor deServer

• Protocol: TCP

• SP: 80

• DP: 0

• SA: 172.23.1.51

• DA: 0.0.0.0

Een TCP socket kan zich in volgende statussen bevinden

• listening

• established

• Syn-sent

• Syn-Recv

• Fin-wait1

• Fin-wait2

• Time-wait

• Close-wait

• Closed

Een UDP socket kan zich niet in een status established bevinden. Een UDP Server maaktgeen nieuwe threads aan voor iedere andere CLient. Het hoofdproces verwerkt inkomendedatapakketten opeenvolgend via dezelfde lokale UDP socket.

3.6.6 Verbindingsgerichte en verbindingsloze communicatie

Transportprotocollen ondersteunen twee basisvormen van communicatie: verbindingsge-richt (TCP) en verbindingsloos (UDP). Clients en Servers kunnen voor hun communicatie beidebasisvormen gebruiken.

Indien een Client TCP gebruikt voor een verbindingsgerichte communicatie dan moet dezeClient TCP eerst verzoeken om een verbinding met een andere toepassing op te starten. Isde verbinding tot stand gebracht dan kunnen de twee toepassingen data uitwisselen. Als detwee toepassingen de communicatie hebben beëindigd, dan wordt de verbinding afgeslotendoor TCP.

Het alternatief is een verbindingsloze communicatie waarbij een toepassing op elk momenteen bericht kan versturen naar elke willekeurige bestemming. Een toepassing welke UDPgebruikt kan een serie berichten versturen waarbij elk bericht naar een andere bestemmingwordt gezonden.

Hoofdstuk 4

Uitbreidingsprotocollen ennetwerkapplicaties

4.1 ARP

4.1.1 Inleiding

Het IP adres is een virtueel adres, het wordt verwerkt door software. Geen enkele LAN hard-ware of WAN hardware kan de relatie leggen tussen het NetID van een IP adres en een net-werk of tussen de HostID van een IP adres en een host. Om een IP pakket te transporterenmoet deze data ingepakt worden in een frame dat door de lokale hardware bij de juiste deel-nemer kan afgeleverd worden. Dit frame moet dan ook de hardware adressen van de zenderen de ontvanger bevatten.

4.1.2 Address Resolution Protocol (ARP)

Wanneer het IP protocol een bericht wenst te versturen over Ethernet dan moet naast hetIP adres van de bestemming ook het MAC adres van de bestemming gekend zijn. Hiervoorbevat de TCP/IP protocol suite een Adress Resolution Protocol (ARP). Het ARP definieert tweebasis berichttypen: een aanvraag en een antwoord. Een aanvraagbericht bevat een IP adresen verzoekt om het corresponderende hardware adres, het MAC adres. Het antwoord bevateen IP adres dat met de aanvraag werd meegestuurd en het hardware adres.

Het is natuurlijk hopeloos inefficiënt om voor elk te versturen IP pakket eerst een ARP aan-vraag te sturen. Hiervoor zal het ARP protocol alle bekomen informatie tijdelijk op slaan ineen tabel.

Figuur 4.1: De ARP cache

Uitbreidingsprotocollen en netwerkapplicaties 62

ARP beheert deze tabel als een cache: een kleine tabel met een beperkt aantal bindingendie telkens overschreven worden of na een periode (enkele minuten) weer gewist worden.Figuur 4.1 toont hoe met het DOS commando arp -a een actueel overzicht bekomen wordtvan de ARP cache.

Figuur 4.2: ARP respons in Wireshark

Figuur4.2 toont het gebruik van ARP in Wireshark (Wireshark is een packet sniffer en protocolanalyzer, een programma dat gebruikt wordt om gegevens op een computernetwerk op tevangen en te analyseren).Het RARP protocol doet net andersom. Het stuurt een request, een aanvraag met een hard-ware adres. Hierop komt een reply, een antwoord met het gezochte IP adres.

4.2 BOOTP en DHCP

4.2.1 Inleiding

Tijdens de opstart van een host moeten een aantal zaken geconfigureerd worden vooraleerdeze host aktief kan deelnemen aan het netwerkverkeer. Iedere host moet een IP adres be-komen, het toegepaste subnetmask, het IP adrers van de defaultgateway (dit is de routerdie het lokale netwerk koppelt aan andere netwerken, aan het Internet, ... ) en eventueelgegevens omtrent de DNS server (zie verder in dit hoofdstuk). Deze gegevens kunnen sta-tisch vastgelegd worden in een host of deze kunnen dynamisch toegekend worden aan eenhost. In dit onderdeel wordt besproken hoe bepaalde gegevens automatisch kunnen gecon-figureerd worden tijdens het opstarten. Het opstartproces staat ook bekend onder de naambootstrapping.

4.2.2 BOOTP

Het Bootstrap protocol is toegevoegd aan de TCP/IP suite om een aantal dynamsiche configu-ratiestappen tot één stap te combineren. Om configuratieinformatie te bekomen stuurt hetBOOTP protocol een request broadcast bericht uit. Een BOOTP server herkent dit bericht enretourneert een BOOTP reply bericht met alle nodige informatie naar de aanvragende deel-nemer. BOOTP gebruikt een IP pakket zonder dat de deelnemer reeds een IP adres bevat. Alsdoeladres wordt een broadcast adres verstuurd bestaande uit enkel maar ’1’-en en een bronadres bestaande uit enkel maar ’0’-en. De BOOTP server kan het hardeware adres gebruikenom een antwoord te versturen.

Uitbreidingsprotocollen en netwerkapplicaties 63

BOOTP vereenvoudigt de configuratie maar blijft het probleem dat een BOOTP server zijninformatie ophaalt uit een database welke door een beheerder met de hand moet aangepastworden.

4.2.3 DHCP

Om de configuratie nog meer te automatiseren heeft de IEFT het Dynamic Host ConfiguratinProtocol (DHCP) ontwikkeld. DHCP is een protocol welke een host kan bijtreden tot een nieuwnetwerk zonder handmatige inmenging van een beheerder. Figuur 4.3 toont de verschillendestappen tijdens de automatische configuratie van een host. Het is een Client server protocol.De client is een nieuwe host welke zal verzoeken om IP gegevens. Per netwerk kunnen éénof meerdere DHCP servers aanwezig zijn welke deze gegevens kunnen toekennen.

Figuur 4.3: Ping commando

Voor een nieuwe host bestaat het DHCP protocol uit vier stappen:

• DHCP discoverbericht: een Client stuurt een UDP bericht via poort 67, verpakt in een IPpakket om een DHCP server op te sporen. Er wordt een broadcast bestemmingsadresgebruikt, 255.255.255.255 en als bronadres wordt 0.0.0.0 toegekend.

• DHCP offerbedricht: een DHCP server antwoordt naar de Client. Dit antwoord bevateen IP adres, een subnetmask en een leasetijd voor het IP adres.

• DHCP requestbericht: de host maakt een keuze uit de verschillende aanbiedingen enantwoordt naar de gekozen server met een requestbericht welke de configuratiepara-meters bevat.

• DHCP ACKbericht: de server antwoordt met een bevestiging.

4.2.4 DHCP Relay agent - DHCP option 82

DHCP Relay agent is een Bootstrap Protocol dat DHCP berichten tussen clients en serversvoor DHCP op verschillende IP netwerken kan doorsturen. M.a.w via een DHCP Relay agentkan een DHCP server ook een netwerk dienen waar het niet rechtstreeks mee verbonden is.

Uitbreidingsprotocollen en netwerkapplicaties 64

Een DHCP Relay agent luistert via de gekende client poort bootpc (67) naar broadcastberich-ten van DHCP clients op het netwerk. Deze berichten worden geconverteerd naar unicastbe-richten en worden dan doorgestuurd naar de geconfigureerde DHCP server. Hiervoor zal deDHCP Relay agent een invulling doen van het giaddr field in deze berichten met zijn eigen IPadres. De DHCP server kan de reply zodoende sturen als een unicastbericht naar de Relayagent. De Relay agent zal de replay of via een broadcast bericht of via een unicastberichtversturen op het netwerk van de client.

DHCP option 82 is een DHCP Relay agent Information optie. Deze optie is ontwikkeld zodateen DHCP Relay agent netwerk specifieke informatie kan toevoegen aan een bericht welkehij forward naar een DHCP server. De optie gebruikt hierbij twee bijkomende gegevens:Circuit ID en Remote ID. Deze informatie moet de DHSP server informatie bezorgen over delocatie van de host welke de request verstuurt. De info is zeer sterk afhankelijk van de DHSPRelay agent en zal voor Ethernet gebaseerde netwerken bestaan uit MAC adressen van depoorten op de Relay agent die de link vormen naar de eindhost. Deze informatie kan gebruiktworden om aan te geven waar een toegekend IP adres zich fysisch in het netwerk bevindt.Deze informatie kan door de DHSP server ook gebruikt worden bij beslissingen omtrent hettoekennen van een bepaald IP adres.

4.3 ICMP

4.3.1 Inleiding

Bij de IP communicatiedienst kunnen datapakketten verloren gaan, de aflevering ervan sterkvertraagd worden, of in een verkeerde volgorde worden afgeleverd. IP is geen betrouwbarecommunicatiedienst maar probeert fouten te voorkomen en eventuele problemen te rappor-teren wanneer ze optreden. Een eerste voorbeeld van foutdetectie is de header checksum.Telkens een datapakket wordt ontvangen, wordt de checksum gecontroleerd om er zeker vante zijn dat de header onbeschadigd is. Indien een controlesomfout wordt vastgesteld wordtdit bericht onmiddellijk weggegooid. Hierover kan geen melding gebeuren omdat samen methet bericht ook het bronadres verwijderd is. Andere minder ernstige problemen kunnen welgerapporteerd worden.

4.3.2 Internet Control Message Protocol

De TCP/IP protocol suite bevat een protocol, het Internet Control Message Protocol (ICMP),omfoutberichten te verzenden. Op deze manier kan gemeld worden indien een bepaalde net-werkvoorziening niet beschikbaar is, of dat een bepaalde host of router niet bereikbaar is.Soms komt een computergebruiker ook direct met het protocol ICMP in aanraking, voorna-melijk bij gebruik van de netwerkdiagnosecommando’s ping en traceroute.

ICMP kent vijf foutberichten en vier informatieve berichten. De vijf ICMP foutberichten zijn:

• Source quench (bron doven), wordt verstuurd door een router indien deze tijdelijk buf-ferruimte tekort komt waardoor hij binnenkomende IP pakketten moet weggooien. Ditbericht wordt verstuurd naar de host die het IP pakket heeft aangemaakt. De zendendehost zal de transmissiesnelheid moeten aanpassen.

• Time exceeded, wordt verstuurd door een router nadat het Time to live veld tot nulwerd verlaagd.

Uitbreidingsprotocollen en netwerkapplicaties 65

• Destination unreachable, wordt verstuurd door een router indien die merkt dat een IPpakket de bestemming niet kan bereiken. Het foutbericht maakt onderscheid tusseneen situatie waarbij een heel netwerk tijdelijk van het Internet losgekoppeld is (omdateen bepaalde router niet naar behoren functioneert) en het geval waarin een bepaaldehost tijdelijk offline is.

• Redirect, wordt verstuurd door een router indien die merkt dat het IP pakket eigen-lijk naar een andere router moet verstuurd worden om de uiteindelijke bestemming tekunnen bereiken.

• Fragmentation required, wordt verstuurd door een router indien deze merkt dat een IPpakket groter is dan de MTU (Maximum Transmission Unit) van het netwerk waaroverhet IP pakket moet verstuurd worden.

ICMP definieert ook vier informatieve berichten:

• Echo request/reply, een echo request kan verstuurd worden naar elke willekeurige host.Als antwoord wordt een echo reply verstuurd, het antwoord bevat dezelfde adat als hetverzoek.

• Address mask request/reply, een host vertuurt een address mask request wanneer hijwordt opgestart. Een router antwoord met een bericht dat het juiste subnetmaskerbevat dat op het netwerk gebruikt wordt.

4.3.3 ICMP bericht

Het ICMP protocol is een ondersteunend protocol aan het IP protocol. Het gebruikt dan ookIP pakketten om de berichten te versturen. Figuur 4.4 toont hoe een ICMP bericht wordtingekapseld in een dataframe.Een ICMP foutbericht wordt altijd geproduceerd als antwoord op een bepaald IP pakket. Hetwordt altijd teruggestuurd naar de bron van het IP pakket.

Figuur 4.4: Inkapseling van een ICMP bericht

De verschillende velden in de ICMP header zijn:

• TYPE:

• Code:

• Checksum:

Uitbreidingsprotocollen en netwerkapplicaties 66

• Identifier:

• Sequence number:

4.3.4 Bereikbaarheid van een host controleren

Veel tools halen informatie over een netwerk op door testberichten te sturen en op ICMPantwoorden te wachten. Eén van de belangrijkste diagnosetools is het ping programma. Hetping programma, als DOS commando in te voeren, zendt via ICMP IP pakketten naar eenandere deelnemer om te controleren of deze host via het netwerk bereikbaar is. Het is debedoeling dat de doelhost deze pakketjes meteen (als een echo) terugstuurt. Daarnaasttoont het een statische samenvatting van het percentage pakketjes waarop niet gereageerdis en de reactiesnelheid. Zowel het IP adres of de hostname kunnen gebruik worden.

ping www.google.beping 134.16.85.9

Er zijn heel wat opties mogelijk. Een overzicht van alle opties wordt bekomen indien het pingcommando zonder meer wordt ingegeven.

Figuur 4.5: Ping commando

4.3.5 Een route traceren

Is het programma ping alleen bedoeld om na te gaan of een bepaalde host bereikbaar is, danzal het commando tracert de route tot een bepaalde host zichtbaar maken. Figuur 4.6 toontop welke manier een tracert commando alle IP adressen weergeeft van de routers die hettestpakket ontvangen en weer doorsturen.

Uitbreidingsprotocollen en netwerkapplicaties 67

Figuur 4.6: Ping commando

Tracert stuurt eerst een testpakket met een time to live waarde van 1. De eerste routerverlaagt deze waarde tot 0, gooit het bericht weg en stuurt een ICMP Time Exceeded berichtterug. Hierdoor kan het IP adres van de eerste router weergegeven worden. Vervolgenswordt een testbericht verstuurd met een time to live waarde van 2. De eerste router verlaagtdeze waarde en stuurt het bericht verder. De tweede router zal de time to live waarde op0 plaatsen, het bericht weggooien en een ICMP foutbericht terug sturen. Hierdoor is het IPadres bekend van de tweede router. Deze procedure wordt verder gezet tot de uiteindelijkehost bereikt werd.

4.4 IGMP

4.4.1 Inleiding

IGMP (Internet Group Management Protocol) is het protocol voor IP multicast toepassingenop TCP/IP netwerken. Deze standaard is gedefinieerd in RFC 1112. Naast een definitie vanadres- en hostuitbreidingen voor de ondersteuning van multicasting door IP hosts, bevat dezeRFC ook een definitie van versie 1 van IGMP. IGMP versie 2 wordt gedefinieerd in RFC 2236.Beide versies van IGMP bieden een protocol waarmee informatie over het lidmaatschap vaneen host van specifieke multicast groepen kan worden uitgewisseld en bijgewerkt.

Multicast berichten worden naar één adres verstuurd (multicast IP adres) maar worden doormeerdere hosts verwerkt. De verzameling van deelnemers die luisteren naar één bepaaldmulticast IP adres wordt een multicast groep genoemd. Enkele belangrijke aspecten vanmulticasting:

• Het lidmaatschap van een groep is dynamisch: hosts kunnen op elk moment toetredentot een groep of een groep verlaten.

• Hosts kunnen zich aansluiten bij multicast groepen door IGMP berichten te versturen

• Er is geen beperking omtrent de grootte van groepen. De verschillende deelnemerskunnen over meerdere netwerken verspreid zijn op voorwaarde dat de tussenliggenderouters IGMP ondersteunen.

Uitbreidingsprotocollen en netwerkapplicaties 68

• Hosts die niet tot een bepaalde groep behoren kunnen wel IP berichten versturen naardie groep.

4.4.2 IGMP berichten

IGMP beschrijft hoe de informatie over de lidmaatschapstatus uitgewisseld wordt tussen rou-ters en de verschillende deelnemers van multicast groepen. Enkele IGMP berichten:

• Hostlidmaatschapsrapport: wordt verzonden als een host lid wordt van een multicastgroep en informeert hiermee alle andere leden van de groep. Een router bewaart dezerapporten en staat zo in voor het onderhoud van de multicast groep.

• Hostlidmaatschsquery: wordt verstuurd door routers om periodiek te informeren naargroepsleden in een netwerk. Alle leden van een groep antwoorden opnieuw met eenlidmaatschapsrapport. Routers houden alle informatie bij en zorgen ervoor dat er geenmulticast berichten verstuurd worden op netwerken waar geen leden van de groep zijn.

• Groep verlaten: dit bericht wordt verzonden door een host die als laatste lid van eengroep binnen een bepaald netwerksegment een groep verlaat.

Het IGMP protocol is een ondersteunend protocol aan het IP protocol. Het gebruikt dan ookIP pakketten om de berichten te versturen. Figuur 4.7 toont hoe een IGMP bericht wordtingekapseld in een dataframe.

Figuur 4.7: Inkapseling van een IGMP bericht

4.4.3 IGMP snooping

Een switch welke een lid uit een multicast groep verbindt met een router kan IGMP berichtenlezen en evalueren met behulp van IGMP snooping. IGMP snooping vertaalt multicast IPadressen in multicast MAC adressen. Een switch kan op deze manier multicast MAC adressenbewaren in zijn multicast filter tabel. Een switch kan op deze manier multicast berichtendadelijk naar de juiste poorten versturen en verhinderen dat multicast berichten een netwerknodeloos gaan belasten. Dit staat bij switches ook gekend als het dynamische gebruik vanmulticasting. Dit in tegenstelling to het statisch gebruik van multicasting waarbij manueelde groepen in alle switches en voor alle poorten geconfigureerd moeten worden.

Uitbreidingsprotocollen en netwerkapplicaties 69

4.4.4 Multicast adressen

Multicast IP adressen zijn klasse D adressen welke in het bereik 224.0.0.0 tot en met 239.255.255.255gelegen zijn. Voor privé netwerken wordt het aangeraden om multicast IP adressen in het be-reik 239.x.x.x te gebruiken.

De adressen binnen het bereik 224.0.0.1 tot en met 224.0.0.255 worden gereserveerd voormulticast toepassingen binnen één netwerk. De time to live waarde van dergelijke IP pakket-ten wordt op 1 geplaatst zodat dergelijke berichten het netwerk niet kunnen verlaten.

Er worden ook multicast MAC adressen gereserveerd. Alle adressen waarvan de eerste bytegelijk is aan 01h zijn besschikbaar voor mulitcasting. Adressen welke beginnen met dewaarde 01:00:5E:0 zijn multicast MAC adressen welke gebruikt worden voor IP multicasting.

Figuur 4.8: Omzetting van multicast IP adres naar multicast MAC adres

Deze omzetting vraagt enige aandacht. De meest beduidende bit van de tweede byte be-hoort tot de herkenningscode van een multicast adres en wordt zodoende niet meegemapt.Zo wordt het multicast IP adres 228.30.117.216 omgezet naar het multicast MAC adres01:00:5E:1E:75:D8. Het multicast IP adres 228.158.117.216 wordt echter ook omgezet naarhet multicast MAC adres 01:00:5E:1E:75:D8.

4.5 GMRP

4.5.1 IEEE 802.1p

Bedrijfsnetwerken worden steeds groter en complexer. Het is essentieel dat het groeiendenetwerkverkeer op een efficiënte manier kan gemanaged worden. Quality of Service is hierbijeen belangrijke tool om te verzekeren dat de meest kritische data op een voorspelbare ma-nier wordt afgeleverd. Door middel van het IEEE 802.1p protocol kunnen switches netwerk-verkeer prioritair verwerken. Voorspelbaarheid en betrouwbaarheid van het netwerkverkeerworden hierdoor verbeterd.

IEEE 802.1p definieert een 3 bit-veld binnen een tagged Ethernet frame. Het definieert eenprioriteitswaarde tussen 0 en 7 om op deze manier het netwerkverkeer te differentiëren.

De IEEE 802.1P standaard voorziet ook in maatregelen om multicastberichten te filteren op-dat deze zich niet nodeloos zouden verspreiden over laag 2 gebaseerde netwerken. Hieron-

Uitbreidingsprotocollen en netwerkapplicaties 70

der bevindt zich GMRP (GARP Multicast Registration Protocol). GMRP and GARP zijn industri-ële protocollen gedefinieerd door de IEEE 802.1P.

4.5.2 Werking GMRP

GMRP verwerkt multicast groepsadressen op laag 2 (MAC layer). GMRP draait zowel op deswitch als bij de hosts. Op de host, GMRP wordt er samen gebruikt met IGMP, worden doorGMRP laag 2 dataframes gecreëerd van de layer 3 IGMP berichten.

Een switch ontvangt zowel de laag 2 GMRP en de laag 3 IGMP berichten. Met de GMRPberichten zal de switch het dataverkeer beperken in de VLAN groep tot welke de zendendehost zich bevindt. Wanneer de switch de GMRP join message ontvangt zal het de poortwaarop het dit bericht ontvangen heeft toevoegen aan de betreffende multicastgroep. Deswitch zal het aanvraagbericht tot lidmaatschap doorsturen naar alle andere deelnemersin de VLAN, waaronder zich uiteraard ook de multicastbron bevindt. Wanneer de bron eenmulticastbericht stuurt naar de groep zal de switch dit bericht enkele doorsturen naar deleden van deze groep.

De switch zendt periodiek GMRP queries. Indien een deelnemer lid wenst te blijven van eengroep zal hij een antwoord versturen naar de switch. Een deelnemer welke niet langer totde groep wil blijven kan een leave bericht versturen of totaal niet antwoorden. Indien deswitch geen antwoordt krijgt of een leave bericht ontvangt van een bepaalde host zal hetdeze deelnemer uit de lijst schrappen.

4.6 DNS

4.6.1 Inleiding

Er zijn twee belangrijke manieren om een host op het Internet aan te duiden. Naast hetreeds besproken IP adres is er ook de mogelijkheid om voor een deelnemer een hostnaam,een symbolische naam, te voorzien die algemeen eenvoudiger te gebruiken is.Hostnamen, zoals www.google.be (zoekmachine), gaia.cs.umass.edu (computer networks re-search Group van de university of Massachusetts, Amherst) zijn beter te onthouden en dusgebruiksvriendelijker. Een hostnaam geeft echter niet genoeg informatie over de plaats vandie host binnen het Internet. Omdat gebruikers liever de hostnaan toepassen maar TCP/IPprotocollen gebaseerd zijn op IP adressering moet er een koppeling gebeuren tussen hostna-men en IP adressen. Domain Name System (DNS) zal hier de oplossing bieden. Dr. Paul V.Mockapetris en Jon Postel zijn de uitvinders van het Domain Name System. In 1983, steldenzij een DNS achitectuur voor in RFC882 en RFC883.

Samenvattend staat DNS voor:

• Een gedistribueerde database welke geïmplementeerd is in een hiërarchie van DNSservers

• Een applicatielaagprotocol waarmee hosts en DNS servers kunnen communiceren omde vertaalslag (het omzetten van een IP adres in een hostnaam en omgekeerd) te ma-ken.

Uitbreidingsprotocollen en netwerkapplicaties 71

De DNS servers zijn vaak Unix machines waarop de Berkeley Internet Name Domain (BIND)-software of Microsoft DNS software wordt uitgevoerd. Het DNS protocol werkt met UDP engebruikt poort 53.

4.6.2 De structuur van een hostnaam

Qua syntaxis bestaat elke hostnaam uit een reeks alfanumerieke segmenten die door puntengescheiden worden. Domeinnamen hebben een hiërarchische structuur waarbij het meestsignificante deel van de naam rechts staat. Het meest links segment is de naam van deindividuele host. Andere segmenten in een domeinnaam identificeren de groep die eigenaarvan de naam is. DNS legt niet vast uit hoeveel segmenten een domeinnaam moet bestaan,Het DNS geeft waarden voor het meest significante segment. Tabel 4.1 geeft een overzichtvan alle namen

Tabel 4.1: Namen voor het meest significante deel van een domeinnaam

Domeinnaam Toegewezen aancom commerciële organisatieedu opleidingsinstituutgov overheidsorgaanmil militaire groepnet netwerkondersteuningscentrumorg andere organisatiesint internationale organisatielandcode een land, be voor België

4.6.3 Werking van het DNS protocol

Inleiding

Wanneer een toepassing (bv. een webbrowser) op de host van een gebruiker een hostnaammoet vertalen in een IP adres zal deze toepassing de clientcomponent van de DNS aanroe-pen met de hostnaam welke vertaald moet worden. De DNS clientcomponent op de host vande gebruiker neemt het dan over en verzendt een verzoekbericht het netwerk in. Alle DNSvezoek- en antwoordberichten worden in UDP segmenten naar poort 53 verzonden.Na een vertraging, die kan variëren van enkele milliseconden tot enkele seconden, ontvangtde DNS clientcomponent op de host van de gebruiker een DNS antwoordbericht met de ge-zochte verwijzing. Deze verwijzing wordt vervolgens doorgegeven aan de toepassing. Op diemanier is DNS, gezien vanuit het perspectief van de toepassing op de host van de gebruiker,een blackbox die een eenvoudige, ongecompliceerde vertaaldienst levert.In feite is de dienst die de zwarte doos levert echter erg complex en bestaat uit een grootaantal DNS servers, verspreid over de wereld, en een applicatielaagprotocol dat bepaalt hoede DNS servers en de verzoekende hosts met elkaar communiceren.Een eenvoudig ontwerp voor DNS zou bestaan uit één DNS server die alle verwijzingen be-vat. In dit gecentraliseerde ontwerp zouden alle clients hun verzoeken slechts naar die eneDNS server hoeven te verzenden die op zijn beurt alle verzoeken zou behandelen. Hoewelde eenvoud van dit ontwerp aantrekkelijk is, is deze oplossing ongeschikt voor het huidigeInternet met het enorme (en snel toenemende) aantal hosts.

Uitbreidingsprotocollen en netwerkapplicaties 72

DNS maakt gebruik van een groot aantal, over de hele wereld verspreide, DNS servers in eenhiërarchische structuur. Er is geen enkele DNS server die alle verwijzingen voor alle hosts ophet Internet bevat. De verwijzingen zijn verdeeld over de DNS servers.In eerste instantie zijn er drie klassen DNS servers:

• Root DNS servers;

• Topleveldomein (TLD) DNS servers;

• Verifiërende DNS servers.

Een gedistribueerde, hiërarchische database

Een DNS client neemt eerst contact op met een van de rootservers, die IP adressen voorTLD servers voor het Topleveldomein com retourneert. De client neemt vervolgens contactop met een van deze TLD servers, die het IP adres van een verifiërende server retourneert.Tenslotte neemt de client contact op met een van de verifiërende servers, die het IP adresvan de hostnaam zal terugsturen.

Root DNS serverOp het Internet zijn er slechts 13 root DNS servers (die aangeduid worden door de letters Atot en met M), waarvan de meeste in Noord-Amerika zijn opgesteld. Hoewel de 13 root DNSservers aangeduid worden als één server, bestaat elke server in werkelijkheid uit een clustergerepliceerde servers (om redenen van beveiliging en betrouwbaarheid).

Topleveldomein (TLD) serverDeze servers zijn verantwoordelijk voor topleveldomeinen zoals com, org, net, edu en allelanden topleveldomeinen zoals bijvoorbeeld be, nl, fr, jp,...

Verifiërende DNS serverElke organisatie met hosts op het Internet die door het publiek benaderbaar zijn (zoals web-server en Mailserver) is verplicht om DNS gegevens te leveren waarin de namen van dezehosts aan IP adressen worden gekoppeld. Deze DNS gegevens worden opgeslagen op de ve-rifiërende DNS server. Een organisatie kan ervoor kiezen om zelf een verifiërende DNS servermet deze gegevens te implementeren; ook kan de organisatie een serviceprovider (Telenetbijvoorbeeld) inschakelen om deze gegevens tegen betaling op diens verifiërende DNS ser-ver op te slaan. De meeste universiteiten en grote bedrijven implementeren en beheren huneigen primaire en secundaire (als back-up) verifiërende DNS server.

De root, TLD-, en verifiërende DNS servers behoren allemaal tot de hiërarchie van DNS ser-vers. Er is nog een ander belangrijk type DNS servers, die lokale DNS servers worden ge-noemd. Een lokale DNS server hoort strikt genomen niet thuis in de hiërarchie van serversmaar is desondanks van vitaal belang voor de DNS structuur. Elke ISP (Internet Service Pro-vider) heeft een lokale DNS server (ook wel standaard DNS server (default name server)genoemd). Wanneer een host een verbinding tot stand wil brengen met een ISP, geeft deISP aan die host de IP adressen van een of meer van diens lokale DNS server (meestal metbehulp van DHCP).

Uitbreidingsprotocollen en netwerkapplicaties 73

4.7 SNMP

4.7.1 Inleiding

SNMPv1: In 1990 werd in RFC 1157 het SNMP protocol gedefinieerd. SNMP staat voor Sim-ple Network Management Protocol. Dit protocol beschrijft een gestructureerde manier voorhet bewaken en beheren van een bepaalde netwerkinfrastructuur. Al snel werd dit protocolop grote schaal geïmplementeerd in commerciële producten en werd dit protocol de factostandaard voor netwerkbeheer. SNMP is ontworpen om een eenvoudig protocol te zijn.

SNMPv2: Naarmate de ervaringen werd in 1993 een verbeterde versie van SNMP beschre-ven in RFC 1441 en RFC 1452 (coëxcistentie tussen v1 en v2) om uiteindelijk de Internetstandaard te worden.

SNMPv3: In 1999 wordt in v3 security toegevoegd aan de vorige versies. De derde versievan Internet Standard Management Framework (SNMPv3) is afgeleid van en gebaseerd op devoorgaande versies SNMPv1 en SNMPv2.SNMPv3 is dus SNMPv2 aangevuld met security enadministratie. De belangrijkste eigenschappen van SNMPv3 omvatten:

• security

– authenticatie en privacy

– toegangscontrole

• administratie

– gebruikersnamen en sleutelmanagement

– benamingen van deelnemers

– policies

Op een netwerk zijn heel wat interessante deelnemers aktief welke belangrijke statusinfor-matie kunnen bevatten voor het beheer van een netwerk. Dergelijke deelnemers kunnenhubs, switches, routers, printers of PC’s zijn. Om rechtstreeks door SNMP te worden beheerdmoet een node in staat zijn een SNMP managementproces -een SNMP agent- te draaien. Allecomputers voldoen aan deze eis, evenals veel hubs, switches, routers en randapparaten dievoor netwerkgebruik ontworpen zijn. Elke agent houdt een lokale database bij met variabelendie zijn toestand en geschiedenis weerspiegelen en zijn werking beïnvloeden.

Uitbreidingsprotocollen en netwerkapplicaties 74

Figuur 4.9: Managers en agents op een netwerk

Het netwerkmanagement wordt gedaan vanuit managementstations: in feite gewone com-puters waarop speciale management software loopt. Deze stations bevatten een of meerprocessen die via het netwerk met agents communiceren, waarbij ze opdrachten geven enantwoorden krijgen. In dit opzet bevindt alle intelligentie zich in de managementstations omde agents zo eenvoudig mogelijk te houden en hun invloed op de apparaten waarop ze lo-pen te minimaliseren. Veel managementstations hebben een grafische gebruikersinterface,zodat de netwerkbeheerder de toestand van het netwerk kan inspecteren en zo nodig actiekan ondernemen.

4.7.2 SNMP structuur

Het raamwerk van SNMP bestaat uit drie essentiële onderdelen:

• de MIB (Management Information Base (RFC1213)) is de omschrijving van alle varaibe-len een bepaald netwerkelement bevat.

• SMI (Structure of Management Information (RFC 1155)) is de structuur voor het opslaanvan de netwerkinformatie.

• SNMP is het communicatieprotocol tussen de manager en een netwerkdeelnemer (RFC1157).

De meeste bestaande netwerken zijn van gemengd fabrikaat - met hosts van een of meerfabrikanten, hubs, switches en routers van andere firma’ s en printers van weer andere. Omhet mogelijk te maken dat een management station (eventueel van weer een andere leve-rancier) met al deze uiteenlopende componenten praat, moet de aard van de informatie,die door al deze apparaten wordt bijgehouden strikt gespecificeerd worden. Het heeft geenzin dat het management station een router vraagt wat zijn frequentie van verloren geganepakketten is als de router deze frequentie niet bijhoudt. Daarom beschrijft SNMP de exacteinformatie die elk soort agent moet bijhouden en het formaat waarin de agent deze informa-tie moet leveren. Het grootste deel van het SNMP model is de definitie van wie wat moetbijhouden en hoe deze informatie wordt doorgegeven. In het kort komt het erop neer datelk apparaat een of meer variabelen (objecten) bijhoudt die de toestand van het apparaat

Uitbreidingsprotocollen en netwerkapplicaties 75

beschrijven. De verzameling van alle mogelijke objecten in een netwerk staat in een data-structuur die de MIB (Management Information Base) wordt genoemd.Het SNMP protocol zelf beschrijft dan hoe de interactie tussen het managementstation en deagents tot stand komt. Hierbij worden vijf verschillende berichtypen gedefinieerd.

4.7.3 De MIB en SMI

Figuur 4.10: MIB is een database welke alle variabelen bevat voor netwerkmanagement

De verzameling objecten die door SNMP worden beheerd, wordt gedefinieerd in de MIB enwordt weergegeven in figuur 4.10. Voor het gemak worden deze objecten ingedeeld in ver-schillende groepen. Het is de bedoeling dat deze categorieën een basis leveren voor wat eenmanagementstation moet begrijpen.

• De groep System geeft de manager de gelegenheid erachter te komen hoe het apparaatheet, wie het heeft gemaakt, welke hardware en software het bevat, waar het zichbevindt en wat het moet doen. Het tijdstip van de laatste boot wordt ook aangegeven.

• De groep Interfaces gaat over de netwerkadapters. Deze houdt bij hoeveel pakket-ten en bytes er door het netwerk worden gezonden en ontvangen, hoeveel er wordenweggegooid, hoeveel broadcasts er zijn en hoe groot de bestaande uitvoer-wachtrij is.

• De groep lP gaat over lP verkeer naar en vanuit de node. Hierin komen vooral veeltellers voor die bijhouden hoeveel pakketten er om verschillende redenen worden weg-gegooid. Er zijn ook statistische gegevens beschikbaar over het fragmenteren en weerin elkaar zetten van datagrammen. Al deze items zijn vooral voor het beheer van rou-ters van belang.

• De groep ICMP heeft betrekking op IP foutmeldingen. Er is een teller voor elke ICMPmelding, waarin wordt bijgehouden hoeveel er van dat type zijn gezien.

• De groep TCP registreert het huidige aantal geopende verbindingen, gezonden en ont-vangen segmenten en diverse statistische gegevens over fouten.

Uitbreidingsprotocollen en netwerkapplicaties 76

Figuur 4.11: MIB boomstructuur

• De groep UDP telt het aantal gezonden en ontvangen UDP datagrammen en houdt bijhoeveel van de ontvangen datagrammen onbestelbaar waren wegens een onbekendepoort of een andere reden.

• De laatste groep is bedoeld om statistische gegevens te verzamelen over de werkingvan SNMP zelf: hoeveel berichten er worden gezonden, wat voor berichten het zijn, endergelijke.

Iedere variabele, ieder object uit de MIB wordt gekenmerkt door een object identifier (OID)en zijn type:

• De OID beschrijft een pad in de MIB boomstructuur. Figuur 4.11 laat de structuur zienvan de MIB zoals gebruikt voor SNMP. Het object sysObjectID, welke deel uit maakt vande groep system is bereikbaar via OID 1.3.6.1.2.1.1.2.0

• Object typen worden opgebouwd mbv de fundamentele typen welke gedefinieerd wor-den in de SMI.

Er zijn verschillende MIB’s beschikbaar. Vooreerst zijn er de globale MIB’s beschreven inRFC’s. Zo is er MIB2 beschreven in RFC1213. Dergelijke MIB’s moeten ondersteund wordendoor alle SNMP compatibele toestellen. Anderzijds zijn er ook de fabrikant specifieke MIBobjecten.

Uitbreidingsprotocollen en netwerkapplicaties 77

4.7.4 SNMP protocol

Het normale gebruik van SNMP is dat het managementstation een aanvraag naar een agentzendt met de vraag om informatie of met de opdracht zijn toestand op een bepaalde manierbij te werken. In het ideale geval antwoordt de agent alleen met de gevraagde informatieof bevestigt dat hij zijn toestand heeft bijgewerkt zoals aangevraagd is. SNMP definieert deverschillende berichten die verstuurd kunnen worden.

Tabel 4.2: SNMP berichten van manager naar agent

Bericht BeschrijvingGet request Vraagt de waarde van één of meer variabelen opGet next request Vraagt de variabele na de huidige opGet bulk request Haalt een grote groep informatie opSet request Werkt één of meer varaibelen bijInform request Bericht tussen managers dat lokale MIB beschrijft

In één bepaald geval kan de agent zelf het initiatief nemen om een bericht te versturen endit op het moment dat een agent een bepaald kritisch event opmerkt. Managed nodes kun-nen uitvallen en rebooten, netwerksegmenten kunnen uitvallen en weer in bedrijf komen,enzovoort. Elke relevant event wordt in een MIB module gedefinieerd. Wanneer een agentmerkt dat er een relevant event is geweest, meldt hij dit event onmiddellijk aan alle mana-gementstations in zijn configuratielijst. Deze melding wordt een SNMP trap genoemd. Demelding zegt meestal alleen dat er één of ander event is opgetreden. Het is dan de taak vanhet managementstation requests uit te voeren om de details te achterhalen

Tabel 4.3: SNMP berichten van agent naar manager

Bericht BeschrijvingSNMP trap Melding event van agent naar manager

Figuur 4.12 toont dat SNMP berichten gebruik maken van het UDP protocol en welke poortenhiervoor gebruikt worden;

4.8 HTTP en HTTPS

4.8.1 TLS/SSL

Transport Layer Security (TLS) , de opvolger van Secure Sockets Layer (SSL), is een encryptieprotocol om een veilig datakanaal te creëren op een onbeveiligd netwerk zoals het Internet.

Beide protocollen draaien op een laag onder de applicatieprotocollen zoals http, SMYP, FTP,en boven het transportprotocol TCP. Ze maken deel uit van de protocolsuite TCP/IP. Een be-langrijke doelstelling is het beveiligen van client/server applicaties.

Langs de verzendende kant zal de TLS laag gegevens van de applicatie versleutelen en door-geven aan de juiste TCP poort. Aan de ontvangende zijde leest TLS de gegevens uit de juiste

Uitbreidingsprotocollen en netwerkapplicaties 78

Figuur 4.12: SNMP communicatie

TCP poort, ontsleutelt de gegevens en stuurt deze door naar de toepassing. Het doorsluizenvan de gegevens is de taak van de recordlaag.

Figuur 4.13: SSL TLS laag

TLS voorziet de volgende veiligheden voor client/server applicaties over TCP/IP:

• Authenticatie: een applicatie toestaan om de identiteit van een andere applicatie waar-mee deze communiceert te verifiëren.

• Privacy: gegevens die tussen applicaties worden overgebracht, kunnen niet wordenmisbruikt of bekeken.

• Integriteit: applicaties detecteren wanneer gegevens zijn gewijzigd tijdens de transmis-sie.

De gebruikte technieken zijn gebaseerd op concepten zoals public-key en certificaten (zieonderdeel security). Indien een applicatie gebruikt maakt van SSL/TLS wordt er eerst eenhandshakingprocedure gestart waarbij het versleutelalgoritme en de te gebruiken sleutelsworden afgesproken en waarbij de client de server verifieert. Eens deze procedure voltooidis zullen alle toepassingsgegevens versleuteld worden. De uitvoering en opvolging van dezehandshakingsprocedure gebeurt door de bovenste deellagen van het protocol. Zie figuur4.13.

Uitbreidingsprotocollen en netwerkapplicaties 79

4.8.2 HTTP

HTTP, HyperText Transfer Protocol, is het protocol voor de communicatie tussen een web-client (een webbrowser) en een webserver. Dit protocol wordt niet alleen veel op het WorldWide Web gebruikt, maar ook op lokale netwerken. Het protocol definieert het exacte for-maat van de aanvragen, de requests van een webbrowser aan de server en het formaat vande antwoorden, responses een webserver daarop kan teruggeven. Elke vraag bevat een URLdie naar een webcomponent of een statisch object zoals een webpagina verwijst.Het http protocol maakt gebruik van poort 80.

Elke http url begint met ’http://’.

HTTP is onveilig en wordt blootgesteld aan man-in-the-middle aanvallen en afluisterpraktij-ken.

4.8.3 HTTPS

HTTPS, Hypertext Transfer Protocol Secure, is een uitbreiding op het HTTP protocol met alsdoel een veilige uitwisseling van gegevens. Bij gebruik van HTTPS wordt de data versleuteld,waardoor het voor een buitenstaander moeilijk wordt om de gegevens op te vangen. HTTPS isdus in principe HTTP waarbij gebruik gemaakt wordt van SSL/TLS om de data te versleutelenen de server te verifiëren.

Elke url begint met ’https://’.

Hiervoor wordt volgens afspraak poort 443 gebruikt.

4.9 Overzicht van enkele andere belangrijke applicaties

4.9.1 FTP

FTP, File Transfer Protocol is een protocol dat uitwisseling van bestanden tussen verschill-lende hosts vergemakkelijkt. Het staat de overdracht van een willekeurig bestand toe en be-vat een mechanisme waarmee aan bestanden beperkingen ten aanzien van eigenaarschapen toegangsrechten kunnen verbonden worden. Het protocol verbergt de details van een in-dividueel computersysteem voor de gebruiker en is dus geschikt voor heterogene situaties.Het protocol kan een bestand transporteren tussen twee totaal willekeurige systemen.

4.9.2 TFTP

TFTP, Trivial File Transfer Protocol, is een vereenvoudigde versie van FTP die veel gebruiktwordt om apparatuur zoals routers, switches, ... van firmware en configuraties te voorzien.

4.9.3 NTP

NTP, Network Time Protocol, is een protocol waarmee computers op een netwerk hun interneklok kunnen gelijkzetten aan die van andere computer. NTP is gebaseerd op de voorspel-baarheid van de netwerkvertraging. Het computernetwerk wordt hiërarchisch ingedeeld,waarbij de computer met de nauwkeurigste tijdbron wordt aangeduid met ’stratum 0’. De

Uitbreidingsprotocollen en netwerkapplicaties 80

computersystemen die via NTP daar de tijd van afhalen, zijn per definitie ’stratum 1’. Hetprotocol beschikt over enkele intelligente functies. Zo kan een een NTP Client van meerdereNTP servers gebruik maken, waarbij de NTP Client zelf uitzoekt welke server het beste werkt.Aan de hand van een aantal beslissingscriteria kiest een NTP Client een server en synchro-niseert zich daar aan. Kleine verschillen in tijd tussen server en client worden door de clientbijgewerkt door de tijdsverwerking op de client computer iets sneller of langzamer te latenwerken. Daardoor kan zonder sprongen in tijd het verschil worden weggewerkt.

4.9.4 SSH

Secure Shell situeert zich in de applicatie laag van het TCP/IP protocol. SSH vervangt oudereprotocollen zoals telnet en rlogin door een beveiligde variant daarvan. Het protocol maaktgebruik van TCP-poort 22.

SSH maakt het mogelijk om op een veilige manier in te loggen op een andere computer, enop afstand commando’s op de andere computer uit te voeren via een Shell. De toegepasteencryptie maakt het voor vreemden moeilijk om de originele commando’s te achterhalen.

Een groot voordeel van SSH is dat ook authenticatie met behulp van een private / public keymogelijk is. Hierdoor kunnen SSH toepassingen geautomatiseerd gebruikt worden zonder dater een wachtwoord in de code hoeft te staan. Ook kan op elk systeem dat de publieke sleutelkent, aangemeld worden door het gebruik van de geheime sleutel.

4.9.5 CLI (Command Line Interface)

Wanneer een besturingssyteem een Command Line Interface voorziet, dan kan de gebruikeraan de hand van een regel tekst het systeem één of meerdere opdrachten laten uitvoeren.Eens de opdracht uitgevoerd krijgt de gebruiker opnieuw de kans om een volgende comman-doregel in te geven. Een commando wordt meestal afgesloten met de <enter>-toets.

Gekende CLIs zijn de command.com (DOS) of bash (UNIX). Naast besturingssystemen zijn erook andere programma’s die met een CLI kunnen werken. De FTP-client en de Telnet-clientvan Microsoft bijvoorbeeld gebruiken een opdrachtregel.

Industriële switches zijn meestal ook configureerbaar via een CLI.

Hoofdstuk 5

De switch

5.1 Algemeen

De switch is de basiscomponent voor de opbouw van een lokaal, op Ethernet gebaseerd net-werk. Met behulp van switches worden de verschillende deelnemers van een LAN op eenintelligente manier met elkaar gekoppeld. Een switch heeft meerdere poorten. Op iederpoort van een switch kan een host (netwerkdeelnemer) aangesloten worden, of kan de ver-binding gemaakt worden met een andere switch. Op die manier kan een netwerk op eenstervormige manier uitgebouwd worden. Vanaf iedere poort start een netwerksegment, eencollision domein.

Figuur 5.1: De switch is zelflerend uit de inkomende berichten

Voor iedere poort wordt softwarematig een MAC adrestabel bijgehouden. De switch is zelfle-rend, deze MAC adrestabel wordt gevuld door op het desbetreffende segment alle inkomendeberichten te bestuderen. Het bronadres van ieder inkomend bericht op een bepaalde poortwordt gekopieerd naar de tabel. Ieder adres wordt gedurende een beperkte tijd vastgehou-den en het wordt weer gewist zodra een bepaalde tijd, de holdtime, is verstreken. Door deze

De switch 82

techniek wordt voorkomen dat niet-actieve stations worden geadresseerd of dat stations juistniet meer worden herkend.

Voordat een datapakket via een switch wordt doorgegeven van het ene segment naar hetandere segment onderzoekt een switch het MAC adres en op basis hiervan vindt al dan niettransport naar het andere segment plaats. Switches werken volgens het store-and-forwardprincipe.

Een store-and-forward switch zal eerst de volledige dataframe binnennemen, controleren opfouten en dan via de juiste poort doorsturen. De latency is dus afhankelijk van de bericht-grootte.Voorafgaand aan een bericht is er de preamble. Tussen de preamble en het Ethernet frameis er een intervaltijd, een interframe gap. Deze tijd is gelijk aan de tijd nodig om 96 bits ophet netwerk te plaatsen. Deze tijd bedraagt voor 100Mbps dus 0,960µs.De theoretische latency voor een store-and-forward switch om een breicht met minimum-lengte (64 bytes) door te sturen wordt bepaald volgens de formule: TL = TIG (tijd voor inter-frame gap) + (64 ∗ 8 ∗ TBT) [µs]TL = 0,960 + (64 ∗ 8 ∗ 0,01) = 6,08 µs.De maximum berichtgrootte is 1518 bytes. Dit komt overeen met volgende latency:TL = 0,960 + (1518 ∗ 8 ∗ 0,01) = 122,4 µs

5.2 Industriële switches

5.2.1 Algemeen

Bij de industriële switches kan een eerste onderscheid gemaakt worden tussen twee verschil-lende categorieën:

• non-managed switches

• web-based managed switches

Bij de eerste groep switches kan niets geconfigureerd worden. Voor de algemene werkingvan een switch dient ook niets geconfigureerd te worden.

De tweede groep switches kunnen via een webserver geconfigureerd worden. Dergelijkebenadering is ook interessant voor diagnose mogelijkheden van het netwerk.

Figuur 5.2: De MCS 16 TX

De switch 83

Figuur 5.2 toont de industriële switch FL SFN 8TX Gigabit switch van Phoenix Contact. Enkeletypisch technische kenmerken van dergelijke switches zijn:

• 10/100/1000 TX, auto negotiation, auto crossing

• Non-managed, geen software configuratie

• montage op DIN-rail, alarm contact, redundante power supply,

• Temperatuursbereik: -25C to +60C

5.2.2 Technische beschrijving van een industriële switch

Aan de hand van een technische beschrijving van de uit de Factory Line van Phoenix Contactworden alle mogelijke eigenschappen van een switch besproken.

Figuur 5.3: De SMCS 8GT

SMCS staat voor Smart Managed Compact Switch. Deze switch is conform de IEEE802.3 stan-daard opgebouwd en is gemaakt om beheerbare automatiseringsnetwerken op te bouwengebaseerd op Ethernet. Deze switch is het type met 8 RJ45 poorten om twisted pair kabelop aan te sluiten. Alle poorten ondersteunen 10/100/1000 Mbps. Alle poorten ondersteunenautonegotiation en autocrossing.

De switch is naast het gebruik als normale standaard Ethernetswitch, uitermate geschiktvoor Profinet RT en Ethernet/IP toepassingen en ondersteunt de management functies diehiervoor nodig zijn. De switch ondersteunt IGMP Snooping voor Ethernet/IP.

Redundante netwerkstructuren kunnen opgebouwd worden volgens het (Rapid) SpanningTree Protocol of volgens Media Redundancy Protocol. Hierdoor wordt een optimale werkingvan het netwerk gegarandeerd onafhankelijk van de gebruikte topologie.

Binnen complete netwerksystemen kan informatie uit de switch opgevraagd worden viaSNMP. De configuratie en diagnose kan via een web server en een V.24 (RS232) interfacegebeuren.

De SWITCH SMCS is van het type store-and-forward. Alle datagrammen welke op een poortde switch bereiken worden eerst opgeslagen in een buffer en gecontroleerd op geldigheid.Corrupte datapakketten, m.a.w. pakketten welke groter zijn dan 1522 bytes, welke kleiner

De switch 84

zijn dan 64 bytes of pakketten waarbij CRC fouten optreden moeten verwijderd worden. Gel-dige datapakketten worden dan ogenblikkelijk doorgestuurd via de juiste poort. De transmis-siesnelheid wordt per poort bepaald door het aangekoppelde netwerksegment.

De switch leert dynamisch alle adressen van de verschillende netwerkdeelnemers door iederbinnenkomend bericht te evalueren op het source adres. De switch moet tot 8000 adressenkunnen opslaan in zijn MAC adrestabel met een aging time van 40 seconden (default settingbij levering). Deze tijd is instelbaar van 10 tot 825 seconden via SNMP of Webbased man-gement. Dit betekent dat alle adressen welke langer dan deze tijd niet meer gebruikt zijn,automatisch gewist worden uit de MAC-adrestabel.

De switch is voorzien van een alarmcontact. Het alarmcontact is floating en gesloten bij eencorrecte werking van de switch. Dit contact volgt de werking van switch en moet geopendworden bij de hierna beschreven omstandigheden. Bij een heropstart zal de switch een hard-ware zelftest uitvoeren. Wanneer een fout gedetecteerd wordt tijdens deze zelftest wordt hetalarmcontact geopend. Tijdens de normale werking zal een watchdog de cyclische uitvoeringvan het softwareprogramma opvolgen. Indien deze watchdog niet cyclisch getriggerd wordtdoor de software zal het alarmcontact geopend worden.

Verschillende statusleds moeten de gebruiker informeren over de status van de switch. Opdeze manier is een lokale diagnose mogelijk zonder gebruik te moeten maken van bijbeho-rende tools.

De SMCS switch ondersteunt autocrossing. Hierdoor moet niet langer meer onderscheidgemaakt worden tussen een rechtdoorkabel of een gecroste Ethernet twisted-pair kabel.

De SMCS ondersteunt autonegotation. Hierdoor moet de switch automatisch de parametersvan een bepaald subnet op iedere poort kunnen detecteren en deze parameters toepassenop deze RJ45 poort. Deze parameters zijn de toegepaste transmissiesnelheid (10, 100 of1000 Mbps) en de transmissiemode (half duplex of full duplex). Deze automatische detectiemaakt manuele interventies door de gebruiker overbodig. De functie autonegotation kan viawebbased management geactiveerd of gedeactiveerd worden.

Bij gebruik van twisted pair kabels waar een polariteit verkeerdelijk aangesloten is, meerbepaald het omwisselen van RD+ en RD-, zal de switch automatisch de polariteit omwisselen.Deze eigenschap staat bekend onder auto polarity exchange.

De switch controleert op geregelde tijdstippen de aangesloten subnetten op iedere poort.Het gebruikt hiervoor linktestpulsen zoals beschreven in de IEEE 802.3 standaard om degeconnecteerde TP/TX kabels te controleren op kortsluiting of onderbreking.

De switch kan op twee verschillende manieren een IP adres bekomen. Via het BootP proto-col of via de seriële V.24 interface. Bij levering is de toekenning van het IP adres ingesteldop BootP. Configuratiesoftware is beschikbaar om zodoende de switch op een eenvoudigemanier een IP adres te geven. Het mechanisme om een IP adres toe te kennen kan gemani-puleerd worden via webbased management of de V.24 interface.

Via een MODE knop vooraan op de module kan de switch in smart mode geplaatst wroden.In smart mode kan de switch in een andere gebruikersmode geplaatst worden zonder de

De switch 85

management interface te moeten gebruiken. Verder is het mogelijk om in smart mode deswitch te resetten naar default settings.De switch kan als Profinet IO device geconfigureerd worden. Via wabbased management ofin smart mode kan de operating mode op default (normale Ethernet switch) of op Profinet IOgeplaatst worden. Wordt de switch als Profinet IO device geconfigureerd, dan kan de switchopgenomen worden als Profinet IO device in de Profinet engineeringsoftware. Op die manieris er in de engineeringsoftware per ingang van de switch een byte aan diagnose-informatieter beschikking.

De SMCS switch ondersteunt het LLDP-protocol conform de IEEE802.1ab. De switch verstuurten ontvangt management- en verbindingsinformatie van naburige toestellen. Op die manierkunnen netwerkarchitecturen visueel voorgesteld of opgevolgd worden via beschikbare soft-ware tools. Profinet engineeringsoftware maakt hiervan gebruik om netwerkdiagnose visueelin kaart te brengen.

De switch ondersteunt twee wachtrijen voor prioriteit (traffic classes volgens de IEEE802.1D).Ontvangen datapakketten worden toegekend aan deze wachtrijen afhankelijk van hun prio-riteit. De prioriteit is aangegeven in de VLAN tag van het Ethernet frame. Dit zorgt ervoordat data met een hoge prioriteit geen vertraging ondervindt door grote hoeveelheden lageprioriteitsdata. In geval van een overload wordt data met een lage prioriteit niet meer bin-nengelezen. Dit principe wordt gebruikt door o.a. Profinet RT en heet Quality of Service.

Een VLAN tag conform de IEEE802.1Q kan verwerkt worden door de switch. Deze tag bestaatuit 4 bytes en staat in het Ethernet frame tussen het source address en het type veld. In die4 bytes staan er 3 bits die de prioriteit aangeven. Via de web-interface kunnen verschillendeVLANs per poort op de switch ingesteld worden. Op deze manier kunnen verschillende VLANsopgebouwd worden binnen een netwerkarchitectuur met dergelijke switches. Binnen éénfysisch netwerk kunnen zodoende verschillende logische netwerken gecreëerd worden.

De switch ondersteunt Spanning Tree Protocol (STP) en Rapid Spanning Tree protocol (RSTP).STP is beschreven in de IEEE802.1d norm en laat toe om ringstructuren of mesh structurente vormen in de topologie van het netwerk. Door de mesh structuren kunnen er meerdereverbindingspaden bestaan tussen twee toestellen. Om oneindige loops en broadcast stormstegen te gaan worden enkele verbindingen onderbroken door de switch. In het geval van eenkabelbreuk zal het netwerk na een zekere tijd (20..50s) herstellen door de uitgeschakeldepoorten terug in te schakelen. Uitgeschakdelde poorten kunnen wel nog data ontvangenmaar geen meer verzenden. Alleen ingeschakelde poorten zullen data verzenden.

Het RSTP is een vernieuwde versie van het STP en kan zorgen voor omschakeltijden van 1 tot10s. Ook het RSTP ondersteunt mesh en ringstructuren. Bij de RSTP configuratie kan RSTPFast Ring Detection functie geactiveerd worden. De functie is enkel mogelijk bij 10 of 100Mbps. Met de Fast Ring Detection funcite kan snellere omschakeltijden bekomen worden.

De SMCS ondersteunt het Media Redundancy Protocol (MRP). Bij een ringtopology wordt bijeen fout een hersteltijd van 200 tot 500ms verzekerd.

Via SNMP (Simple Network Management Protocol) kan het toestel gemonitord worden viahet netwerk. Een SNMP management systeem heeft de mogelijkheid om configuratiedatavan het toestel te lezen en aan te passen en om aan diagnose te doen. Versies 1 en 2c

De switch 86

van SNMP worden ondersteund. De volgende MIBs worden ondersteund: RFC1213, RMONMIB, bridge MIB, If MIB, Etherlike MIB, Iana-address-family MIB, IANAifType MIB, SNMPv2 MIB,SNMP-FRAMEWORK MIB, P bridge MIB, Q bridge MIB en de eigen SNMP objecten van PhoenixContact (FL-SWITCH-M MIB).

Een lokale verbinding met de switch kan gebeuren via een V.24 interface (RS232). De kabelwordt bij de PC aangesloten op de COM poort en bij de switch op een mini-DIN socket. Bijdeze lokale verbinding gebeurt de communicatie via een programma zoals HyperTerminal.Via deze interface kan het IP adres en subnetmask samen met de standaard gateway inge-steld worden. BootP, gebruikt voor het automatisch toekennen van een IP adres kan in-ofuitgeschakeld worden. De parameters kunnen via deze interface opgeslagen worden, enhet toestel kan opnieuw opgestart worden. Ook het herstellen van de parameters naar hunstandaard defaultinstellingen is mogelijk.

Een volgende interface is de webinterface. Deze interface laat diagnose en configuratie toetijdens de opstart, het gebruik, en in het geval van een fout. De webinterface geeft ooknetwerk- en toestelinformatie. Webbased management laat toe op een zeer gekende ma-nier, op basis van een Internet Explorer, alle informatie van het toestel op te vragen. Techni-sche data, installatiegegevens, locale diagnosegegevens en alle commando’s voor de seriëleinterface zijn op te vragen. Verder kunnen alle configuratieparameters gecontroleerd en aan-gepast worden. Hieronder worden IP configuratie, SNMP configuratie, software updates enpaswoorden verstaan. Onder een item ’Switch Station’ kan allerlei diagnose-informatie overde verschillende poorten en het alarmcontact opgevolgd worden. Iedere poort kan indivi-dueel geactiveerd of gedeactiveerd worden. Per poort kunnen alle transmissieparametersaangepast worden en kan via webbased management statistische informatie over de datazelf bevraagd worden. Ook de functie ’Port Mirroring’ kan geactiveerd worden. Met dezefunctie is het mogelijk om alle data welke via een bepaalde poort verstuurd moet worden,ook te versturen via een andere poort. Dit is belangrijk om op deze manier via een netwerk-sniffer fouten op te sporen.

De SMCS switch is voorzien van een memory plug, FL MEM PLUG.Enkele algemene technische en mechanische gegevens:

• De montage van het toestel gebeurt op een DIN rail.

• De isolatieklasse is IP20 (beschermd tegen vaste objecten groter dan 12mm, geen be-scherming tegen water) DIN40050, IEC60529.

• De beschermingsklasse is klasse 3 VDE 0106, IEC60536.

• De voeding gebeurt op 24V DC (18.5V - 30.5V) en kan gebeuren met een sectie vanmaximaal 2,5 mm2.

• Het is mogelijk om een redundante voeding te voorzien op het toestel.

• De aarding gebeurt via de DIN rail waarop het toestel gemonteerd is.

• Het stroomverbruik bedraagt 600mA (15W).

• Het toestel is 128mm breed, 110mm hoog en 69 mm diep en weegt 650g.

• De werkingstemperatuur gaat van 0C tot 55C en de opslagtemperatuur (buiten wer-king) bedraagt -40C tot 85C.

De switch 87

• De switch moet kunnen werken en opgeslagen worden in ruimtes met een vochtigheids-graad tussen de 10% tot 95% zonder condensatie.

• De luchtdruk zou bij werking 80k Pa tot 108 kPa op 2000m hoogte mogen bedragen enbij opslag 70 kPa tot 108 kPa op een hoogte van 3000m boven het zeeniveau.

Hoofdstuk 6

De router

6.1 Inleiding

Een router is een apparaat (dat kan een computer zijn), dat twee of meer verschillende com-puternetwerken aan elkaar verbindt, bijvoorbeeld internet en een bedrijfsnetwerk. Figuur6.1 toont dat een router kan gezien worden als een schakelapparaat voor datapakketten datactief is op laag 3 van het OSI model.

Figuur 6.1: De router en het OSI model

6.2 Het routen van berichten

Een bericht dat van de ene computer naar een andere computer over een internet moetverstuurd worden moet door verschillende routers verwerkt worden. Een zender zal het IPpakket eerst doorsturen naar een eerste router. Hiervoor kapselt de zender het IP pakketin een frame met een header conform het fysieke netwerk waarop de zender en de routergekoppeld zijn.

De router 89

Figuur 6.2: Een IP pakket bij de verschillende stappen tijdens de route over een internet

Als het frame de router bereikt zal deze het frame ontmantelen en het IP pakket bestuderen.De router moet nu weten via welke poort hij het bericht moet verder sturen. Om de juisteuitgaande poort te kiezen, zoekt de router het bestemmingsadres van het te routeren pakketop in de routeringstabel. Bij het TCP/IP-protocol bestaat een routeringstabel uit een tabel metIP-adressen of gegroepeerde IP-adressen (subnet), en het bijbehorende volgende knooppunt(next-hop). Het volgende knooppunt is doorgaans een andere router, die gekoppeld is viaeen van de poorten van de router.

Wanneer het bestemmingsadres routeerbaar is, en dus bestaat in de routeringstabel, zal derouter het bijbehorende volgende knooppunt gebruiken om de uitgaande poort te bepalen.Het binnenkomende IP-pakket wordt naar de uitgaande poort gestuurd. De router zal het IPpakket nu opnieuw inkapselen met een header eigen aan het fysieke netwerk waarop beiderouters gekoppeld zijn. Zo toont figuur 6.2 dat een IP pakket telkens wordt ingekapseld ineen frame dat bij het fysieke netwerk past.

Het is duidelijk dat een router voor elke poort een IP adres heeft welke behoort tot de rangevan het Net ID waarop de router gekoppeld is. Maar elke poort heeft ook een fysiek hardwareadres overeenstemmend met het protocol van het subnet waarop deze poort van de routergekoppeld is.

De router bouwt een routeringstabel op door route informatie uit te wisselen met buurrou-ters. Zo ontstaat een volledig beeld van alle routes in het IP netwerk. De router zal op basisvan het kortste pad algoritme (Edsger Dijkstra), een routeringstabel opbouwen waarbij hetkortste pad wordt gekozen naar de eindbestemming. In andere bewoording: het knooppuntdat gekozen wordt, maakt deel uit van het kortste pad. Hiervoor bestaan verschillende rou-teringsprotocollen.Een router wordt beschouwd als een uitvoerapparaat. Een datapakket mag normaal maardoor een bepaald aantal routers heen gaan voor het op zijn eindbestemming aankomt, be-paald door de TTL-waarde (Time to Live) van het pakketje.

De router 90

6.3 Soorten routers

Er bestaan veel verschillende soorten routers. Ze kunnen van elkaar worden onderscheidendoor de vorm die ze hebben, de aansluitingen van de router en allerlei extra functies die inde router zijn ingebouwd, zoals een modem, firewall of een switch.

Er kan onderscheid gemaakt worden tussen software routers en hardware routers. Met be-hulp van software kan een eenvoudige PC, uitgerust met twee netwerkinterfaces als routerfunctioneren. Een hardware router is een apart toestel. Eigenlijk is het toestel een kleine,eenvoudige computer welke speciaal is ontwikkeld voor het routeren.

Commerciële routers voor thuisgebruik zijn vaak gecombineerd met een switch, voorzien vaneen modem en een wireless AP zodat er maar één toestel nodig is om een privé netwerkje tekoppelen aan het Internet.

Ook zijn er switches met routerfunctionaliteiten op de markt. Vaak wordt voor deze toestellende naam laag-3-switch gehanteerd.

Verder in dit hoofdstuk ligt de nadruk op industriële routers. In zijn eenvoudigste vorm isdergelijke router voorzien van een LAN en een WAN interface. Hiermee kan een industrieelnetwerk gekoppeld worden aan een bedrijfsnetwerk of aan het Internet. De industriële rou-ters hebben ook allerlei extra functionaliteiten opdat ze als een volwaardige security modulekunnen ingezet worden voor een veilige koppeling van industriële netwerken aan bedrijfsnet-werken.

6.4 Laag 3 switch

Zoals beschreven operen netwerk switches op laag 2 van het OSI model en netwerk routersop laag 3 van het OSI model. Een laag 3 switch is een performant toestel voor netwerkrouting.

Laag 3 switches verschillen in weinig van standaard netwerk routers. Beide verwerken inko-mende berichten en aan de hand van de adressen opgegeven inde berichten worden dyna-mische beslissingen genomen omtrent het verder doorsturen van deze berichten (routeren).Ze zijn ontstaan in de nood naar routers welke gemakkelijk kunnen ingezet worden in uitge-breide LAN netwerken zoals bedrijfsintranetten.

Het belangrijkste verschil tussen laag 3 switches en standaard routers is de hardware op-bouw. Bij een laag 3 switch wordt de hardware van een switch gecombineerd met deze vaneen router om dus een betere perfomantie te kunnen garanderen bij het routeren in grotereLAN infrastructuren. Typisch gebruikt voor intranetten zal een laag 3 switch geen WAN poortbezitten en meestal ook geen typische WAN applicaties ondersteunen.

6.5 Koppeling van een privé netwerk aan het Internet

Een industriële router zal gebruikt worden om een automatiseringsnetwerk te koppelen aaneen bedrijfsnetwerk of aan het Internet. Voor het op Ethernet gebaseerde automatiserings-netwerk zal een Net ID moeten gekozen worden. Bij voorkeur een Net ID dat voldoet aan deRFC 1597.

De router 91

Figuur 6.3 toont een voorbeeld. De router zal langs LAN zijde een IP adres bekomen welkebehoort tot de range van het gekozen Net ID. Meestal wordt dit het eerste of het laatste vrijeIP adres van het netwerk. Anderzijds heeft de netwerkinterface langs LAN zijde ook een MACadres. De router zal op het netwerk fungeren als default gateway.

Figuur 6.3: Koppeling van een privé netwerk aan het Internet via een router

Via de WAN interface van de router kan het netwerk gekoppeld worden aan het Internet.Hiervoor krijgt de router, meestal via DHCP, van een ISP (Internet Service Provider) een uniekIP adres op het Internet.

Ieder toestel op het netwerk kan nu als volgt geconfigureerd worden.

IP adres 172.23.22.14Subnetmask 255.255.0.0Default gateway 172.23.0.1

Hierbij krijgt ieder deelnemer een IP adres waarbij de Net ID voor iedere deelnemer gelijk is,maar het Host ID voor iedere deelnemer uniek is.

Indien een applicatie vanop een PC op het netwerk een communicatie wil opstarten meteen Server op het Internet moet de PC een eerste IP pakket opmaken om verbinding aante vragen. Dit IP pakket wordt op het Internet verstuurd via de default gateway. Hiervoorkapselt de PC het IP pakket in een Ethernetframe. Figuur 6.4 toont de gegevens welke nodigzijn om het Ethernetframe op te maken. Het MAC adres van de router wordt via het ARPprotocol bekomen.

Eens het bericht aangekomen bij de router zal deze het IP pakket via de WAN interface door-sturen naar een andere router op het Internet. Omdat het privé netwerk gescheiden is vanhet Internet zal de router het source IP adres van de PC vervangen via door zijn IP adres langsWAN zijde. Het privé netwerk is enkel via dit externe IP adres van de router bereikbaar viahet Internet.

De server kan nu een antwoord versturen en zal dit antwoord richten aan het externe IP adresvan de router. Er ontstaat nu een probleem want de router moet nu beslissen naar welke PC

De router 92

Figuur 6.4: Koppeling van een privé netwerk aan het Internet via een router

dit bericht moet verstuurd worden. In het antwoord van de Server staan geen gegevens meeromtrent de orignele zender. Om dit probleem op te lossen werd IP NAT ontwikkeld.

6.6 IP NAT

6.6.1 NAT: IP masquerading

Network Address Translation (NAT) is een protocol dat toelaat om een netwerk met niet ge-registreerde IP adressen (een privé netwerk dat voldoet aan RFC 1597) te koppelen aan hetInternet. Zoals in de vorige paragraaf beschreven, plaatst de router telkens zijn extern IPadres als source IP adres in elk bericht dat vanuit het privé netwerk op Internet verstuurdwordt. Alle antwoorden zullen nu gericht zijn aan het externe IP adres van de router.

Het NAT protocol laat toe dat een router het TCP source port veld wijzigt. In een NAT tabelworden alle nieuwe poortnummers gelinkt aan een intern endpoint. Ieder antwoord vanophet Internet naar een PC op het privé netwerk zal gericht zijn aan het externe IP adres vande router maar zal als TCP destination port een poortnummer uit de NAT tabel van de routerbevatten. Op die manier weet de router voor welk endpoint dit bericht bestemd is.

Praktisch gezien is NAT een protocol welke een IP adres van het ene netwerk vertaalt in eenIP adres gekend in een ander netwerk. Het ene netwerk wordt the inside genoemd, het an-dere netwerk the outside. Typisch zal een bedrijf zijn locale inside IP adressen vertalen naaréén of meerdere globale outside IP adressen en zal het globale IP adressen van inkomendeberichten terug vertalen naar inside IP adressen. NAT laat dus toe dat een bedrijf slechtséén globaal IP adres gebruikt voor zijn communicatie met de buitenwereld, het Internet. Ditdraagt bij tot het security concept omdat alle uitgaande en inkomende berichten onderwor-pen worden aan een vertaling van adressen.

Figuur 6.5 toont de werking van het NAT protocol. Dit is het dynamisch gebruik van het NATprotocol, wordt daarom soms ook wel dynamisch NAT genoemd.

6.6.2 Port Forwarding

Port forwarding is het statisch gebruik van het NAT protocol. Indien er op het privé netwerkServers aanwezig zijn welke rechtstreeks via het Internet bereikbaar moeten zijn kunnen deendpoints van deze Servers op een statische manier gekoppeld worden aan poortnummers

De router 93

Figuur 6.5: Werking van het NAT protocol: op een PC met IP adres 172.23.22.14 wordt hethttp://166.68.45.159: 80 commando gegeven

in de NAT tabel van de router. Om deze server van op het Internet te bereiken moet alsendpoint het externe IP adres van de router gekoppeld worden aan het poortnummer uit deNAT tabel. De router zal in een inkomend bericht bestemd voor die specifieke Server hetendpoint vertalen naar het correcte endpoint van de Server. Dit is reeds een extra vormvan security. De excate IP gegevens van de Server moeten niet bekendgemaakt wordenen eventuele hackers hebben ook geen idee over de archtectuur van het netwerk waar dieServers zich op bevinden. Figuur 6.6 toont welke configuratie er moet gebeuren voor portforwarding of statisch NAT.

De router 94

Figuur 6.6: Port forwarding

6.7 1:1 NAT

1:1 NAT is protocol waarbij een IP adres vertaald wordt in een ander IP adres zonder degebruikte TCP/UDP poorten te wijzigen.

Indien een router langs LAN zijde verbonden is met het netwerk 192.168.1.0/24 en via deWAN poort verbonden is met het netwerk 10.1.0.0/16 en als extern IP adres 10.1.1.0/16heeft, dan is met behulp van 1:1 NAT de LAN deelnemer met IP adres 192.168.1.100 via deWAN zijde bereikbaar via het IP adres 10.1.1.100.

Figuur 6.7: Mapping van het IP adres bij 1:1 NAT

1:1 NAT biedt interessante mogelijkheden voor de automatiseringswereld:

• Verschillende subnetten kunnen aan elkaar gekoppeld worden waarbij op alle subnetteneenzelfde IP adressering gehanteerd wordt.

• Er hoeven geen bijkomende routes gedefinieerd te worden in het bedrijfsnetwerk.

• Een ARP demon op de mGuard verwerkt de ARP requests vanop het externe netwerk.

De router 95

• Systemen op subnetten kunnen dadelijk aangesproken worden vanuit het bedrijfsnet-werk door de IP mapping. Bij deze mapping wordt het HOST ID behouden en wordtenkel het NET ID aangepast.

Figuur 6.8 toont de werking van 1:1 NAT.

De router 96

Figuur 6.8: Principe van 1:1 NAT

Hoofdstuk 7

De firewall

7.1 Inleiding

Een firewall is een applicatie welke datagewijs de toegang regelt tot het netwerk. Een firewallis ontworpen om al het verkeer te weigeren, behalve het verkeer dat expliciet doorgelatenmag worden.

Soms bestaat er verwarring tussen een router en een firewall alhoewel er een fundamenteelverschil is. Een router is een netwerk structuurelement bedoeld om het dataverkeer zo snelen efficiënt mogelijk door te sturen en dus zeker niet bedoel om dat te blokkeren.

Het gebruik van firewalls moet zeker niet beperkt worden tot Internet verbindingen. Het kanook interessant zijn om firewalls in te zetten binnenin internet netwerken om verschillendedelen apart te beveiligen. Firewalls kunnen meestal ook geconfigureerd worden om al hetverkeer in een logboek te registreren en kunnen gecentraliseerde managementfuncties uitvoeren.

7.2 Soorten firewalls

Er zijn twee soorten firewals. Er zijn de software firewalls en de hardware firewalls. Eensoftware firewall is een firewall die als een programma op een computer geïnstalleerd wordt.Een hardware firewall is een afzonderlijk apparaat zoals de router met geïntegreerde firewall.Beide soorten firewalls (sofware- en hardware firewalls) hebben een gelijkaardige werking.De gebruikte terminologie is op beiden van toepassing.

Ook naar werking bestaan er verschillende soorten firewalls. Het onderscheid wordt gemaaktop basis van de manier waarop een beslissing genomen wordt om data al dan niet door telaten.

• Pakket filter: aan de hand van een aantal regels bepaalt de firewall of een IP pakketwordt doorgelaten of tegengehouden. Dergelijke regels worden opgebouwd aan dehand van IP adressen, domeinnamen, protocollen (http, ftp, telnet, ...) en poortnum-mers. Dergelijke firewalls werken eenvoudig en snel. De pakket filter werkt eigenlijkals een portier: hij screent eerder oppervlakkig de voorbijkomende berichten. Zo wordtnagegaan of de berichten binnenkomend zijn (inbound), naar buiten gaan (outbound)

De firewall 98

of op doorreis zijn (route). De opgegeven, maar gemakkelijk te vervalsen (spoofen)herkomst en de eindbestemming (IP adres en poortnummer) worden gecontroleerd. Erwordt er in de transportlaag gekeken naar het opgeven type en de aard van het bericht.Maar wat er werkelijk in het bericht staat wordt niet doorgenomen.

Pakket filter zijn stateless. Ze controleren de herkomst en de bestemming maar kunnenniet evalueren op verdachte patronen in een bepaalde sessie. Zo kan niet opgemerktworden als er plots verdacht veel datapakketten tussen bepaalde applicaties uitgewis-seld worden.

• Stateful inspection: naast de verschillende regels conform een pakket filter kan derge-lijke firewall tussentijdse informatie bijhouden omtrent de toestand van alle connectiesdie over de firewall lopen. Stateful Packet Inspection (SPI) betekent dat ieder pakketvanaf de aanmelding en de daarop volgende handshaking tussen de communicerendehosts de context ervan onderzoekt. Statefull inspection zal op deze manier gedurendede volledige sessie nagaan wat er volgens het verbindingsverzoek toegestaan is. Eerstwordt net als bij een stateless pakket filter nagegaan of de verbinding tussen de bronen het doel op zich is toegestaan. Zo nee, dan wordt het synchronisatie verzoek verwor-pen. Is de verbinding toegestaan dan wordt de informatie uit het eerste datagram datde sessie opbouwt (SYN) gedurende de sessie in een state-table database in het geheu-gen bewaard. Als er binnen de context van die verbinding iets vreemds gebeurt (eenhost verandert plotseling zijn IP adres of onverwacht zijn doelpoort) wordt de sessieonderbroken.

De meest courante firewalls zijn stateful inspection firewalls.

Hoofdstuk 8

VPN

8.1 Inleiding

Datapakketten worden meestal volledig onbeschermd over het Internet verstuurd. Hierdooris er geen:

• geheimhouding van de data (encryptie)

• identiteitsgarantie van de afzender (authentication)

• controle of data al dan niet corrupt is (integriteit)

Een Virtual Private Network (VPN) is een privaat communicatiekanaal welke functioneert alseen koepel boven op een publieke infrastructuur, meestal het Internet. De te verzenden datavia deze dienst wordt zodanig beveiligd dat de integriteit, autorisatie en authenticiteit vande data gewaarborgd blijft. De eindgebruikers zullen in principe niet merken dat er een VPNgebruikt wordt. Er zijn verschillende protocollen die deze dienst beschikbaar maken.

8.2 Internet Protocol Security, IPsec

IPsec, Internet Protocol Security, is het meest geïmplementeerde VPN protocol. IPsec maaktencryptie van de data tussen twee communicatiepartners mogelijk. IPsec kan transparantgeïmplementeerd worden in een netwerkinfrastructuur. IPSec (een acroniem voor InternetProtocol Security) is een suite van protocollen die er samen voor zorgen dat IP-pakketten be-veiligd over een IP-netwerk verzonden kunnen worden. IP security biedt internetgebruikersdus de mogelijkheid om op een beveiligde manier data te verzenden. De suite van protocol-len verzorgt daarvoor de volgende diensten, die tijdens het verzenden van een IP datapakketactief zijn:

• Integriteit: het protocol biedt de garantie dat het verzonden pakket tijdens het trans-port niet door derden veranderd is.

• Authenticatie: het protocol legt de identiteit van de communicatiepartijen vast. Tijdenseen beveiligd transport van data moet gegarandeerd worden dat de beoogde partijvoor ontvangst van het datapakket ook daadwerkelijk de partij is, die het ontvangt.

• Ontvangstbevestiging: het protocol toont aan dat wanneer er een transport van gege-vens heeft plaatsgevonden de ontvangende partij dit niet kan ontkennen.

VPN 100

• Confidentialiteit: het protocol zorgt voor de daadwerkelijke beveiliging van de gegevensen garandeert de afzender dat alleen de ontvangende partij het bericht kan lezen.

Figuur 8.1: Internetwerken

Het protocol wordt vooral ingezet bij het verzenden van informatie via publieke verbindingenen voorkomt zogenaamde ’Man in the middle attacks’ en ’Spoofing’. Het maakt daarbij ge-bruik van het zogenaamde IKE-protocol (Internet Key-Exchange) waarmee de partijen wordengeïdentificeerd die een verbinding tot stand willen brengen. Vervolgens wordt een verbindingopgebouwd en wordt de te verzenden data door middel van encryptie beveiligd.

Encryptie wordt bij tal van protocollen gebruikt om geheimhouding van data te realiseren. Bijencryptie zal de data getransformeerd worden naar een onleesbare vorm, de zogenaamdecyphertekst. Door middel van een sleutel kan de ontvanger dan een omgekeerde transfor-matie uitvoeren (decryptie) waardoor de tekst terug leesbaar wordt. De meest performanteencryptietechnieken vandaag de dag zijn 3DES en AES. AES heeft altijd de voorkeur vanwegehaar sterkere crypto eigenschappen t.o.v. 3DES. 3DES is verouderd en mag alleen gebruiktworden als er geen mogelijkheden zijn om AES te gebruiken.

IPSec ondersteunt beveiliging vanaf de derde laag van het OSI-model, namelijk de netwerk-laag. Hierdoor kan het gebruikt worden door zowel TCP als UDP maar het levert wel overheadop ten opzichte van bijvoorbeeld SSL dat op hogere OSI-niveaus werkt (en geen UDP kan be-veiligen). De standaard is door het IETF vastgelegd in RFC’s 2401-2412, optioneel voor IPv4en verplicht bij IPv6.

Het protocol is als volgt opgebouwd:

• Authentication Header (AH): checksumcontrole over het gehele IP-pakket.

• Encapsulating Security Payload (ESP): waakt tegen Man-in-the-middle-aanval aanval-len.

• IP payload compression (IPcomp): compressie op de payload van het IP-pakket voordatde encryptie plaatsvindt.

• Internet Key Exchange (IKE): assisteert bij het opbouwen van de verbinding door veiligde sleutels/certificaten over te brengen.

VPN 101

IPsec bestaat in twee varianten:

• Transport: versleutelt de inhoud (payload) van het IP-pakket, maar niet de header. Indeze mode wordt er geen nieuw IP-pakket gemaakt, maar worden de headers (AH ofESP of allebei) in het IP-pakket gestopt. De bron- en doeladressen blijven ongewijzigd.

• Tunnel: versleutelt zowel de inhoud van het IP-pakket als de header.In deze mode wordthet complete IP-pakket in een compleet nieuw IP-pakket gestopt. Het IP-pakket heeftals bron- en doeladres het begin- en eindpunt van de tunnel.

8.3 VPN implementaties

VPN kan op drie verschillende manieren geïmplementeerd worden.1. Security gateway to Security gateway

Figuur 8.2: Internetwerken

2. Host to security gateway

Figuur 8.3: Internetwerken

3. Host to Host gateway

VPN 102

Figuur 8.4: Internetwerken

Hoofdstuk 9

Automatiseringsnetwerken &Security

9.1 Bedrijfsnetwerk

Een bedrijfsnetwerk is het geheel van servers, computers en systemen om de algemenewerking van het bedrijf op IT-niveau mogelijk te maken. Ethernet TCP/IP is al jarenlang destandaard voor het uitwerken van IT-netwerken in kantoren en bedrijven. Een bedrijfsnet-werk is in zijn eenvoudigste vorm aan het Internet gekoppeld via een router en een firewall.Grotere bedrijfsnetwerken voorzien aanvullend een DMZ, dit is een gedeelte van het netwerkwaarbinnen publieke servers staan (mailserver, webserver, DNS server, ...).

Figuur 9.1: Een bedrijfsnetwerk

Een router is in zijn eenvoudigste vorm een toestel dat communicatie tussen twee netwerkenmogelijk maakt. Hier concreet langs de ene kant het bedrijfsnetwerk (LAN), langs de anderezijde het Internet (WAN). Firewalls worden gebruikt om ongewenste communicatie te blok-keren, waarbij IP pakketten volgens door de gebruiker vastgelegde regels gefilterd worden.Zowel inkomende als uitgaande communicatie kan daarbij geblokkeerd worden. De filtercri-teria kunnen IP adressen, poortnummers of bepaalde protocollen zijn die naar keuze kunnengeblokkeerd of vrijgeven worden.

Automatiseringsnetwerken & Security 104

9.2 Automatiseringsnetwerk

9.2.1 Automatiseringscel

Een automatiseringscel is het geheel van PC’s, dataservers, controllers, IO devices, sensorenen actoren welke nodig zijn om de verschillende functionaliteiten van een automatiserings-concept uit te voeren.

Een automatiseringsproject is het geheel van

• Productielijnen en procesinstallaties

• PLC systemen (Progammeerbare Logic Controllers)

• ESD systemen (Emergency Shut Down and Safaty Controllers)

• DCS systemen (Process and distributed Control Systems)

• SCADA systemen (Supervisory Control and Data Acquisition)

Switches zijn de structuurelementen waarmee een volledige automatiseringscel verder op-gebouwd wordt. Door de combinatie van verschillende topologieën en media wordt een flexi-bel, veilig en beheersbaar netwerk op basis van Ethernet TCP/IP uitgebouwd op de industriëlewerkvloer.

Figuur 9.2: Verschillende topologieën in een automatiseringscel

Belangrijke segmenten worden via switches in een redundante ring met elkaar verbonden. Inbepaalde deelsegmenten worden netwerkdeelnemers in ster verbonden via switches (zoalsin normale IT-netwerken). Waar mogelijk wordt een lijnstructuur toegepast om deelnemersmet elkaar te verbinden. Om een lijnstructuur mogelijk te maken is het noodzakelijk dat alleIO-devices standaard voorzien zijn van een geïntegreerde switch.

9.2.2 Automatiseringsnetwerk

Een automatiseringsnetwerk bestaat uit één of meerdere automatiseringscellen. Hierbijwordt iedere cel gescheiden door een router.

Automatiseringsnetwerken & Security 105

Figuur 9.3: Automatiseringsnetwerk

Bekabeling en connectoren in een automatiseringsnetwerk

De uitbouw en de bekabeling gekend van de kantooromgeving kunnen niet onbeperkt in ruweindustriële omgevingen toegepast worden.

Kabels, connectoren en infrastructuurelementen moeten afgestemd zijn op de productieom-geving waar belastingen als vocht, grote temperatuursvariaties, schokken of trillingen kun-nen optreden. Deze onderdelen, connectoren en kabels, moeten voldoen aan de kwaliteits-eisen van de industrie. Dit is de eerste stap naar een betrouwbaar automatiseringsnetwerk.

Het is belangrijk dat alle Ethernetkabels op een eenvoudige manier op de werkvloer kunnengeconfigureerd worden. Het is aanbevolen om eerst de bekabeling uit te voeren en pasnadien de Ethernetconnectoren aan te brengen.

Gebruik van switches

Als structuurelementen worden uitsluitend switches gebruikt. De opbouw van het netwerk isbelangrijk om de netwerkbelasting te optimaliseren. Deze mag nooit hoger zijn dan 60% vande volledige netwerkcapaciteit.

Voor de opbouw van een redundante ringstructuur moeten de switches RSTP ondersteunen.Voor het beheer en diagnose van het netwerk moeten switches binnen de verschillende au-tomatiseringscellen volgende protocollen ondersteunen:

• Webbased management, voor een snelle en duidelijke configuratie

• SNMP, voor toesteldiagnose

• LLDP, voor controle en diagnose van de netwerktopologie

• VLAN, voor een gestructureerde opsplitsing van het netwerk

Automatiseringsnetwerken & Security 106

Switches moeten de mogelijkheid bieden om bij verschillende gebeurtenissen SNMP trapmeldingen te versturen of een alarm contact in te schakelen. Voor de eenvoudige configu-ratie van nieuwe toestellen wordt een smart memory plug gebruikt. Een andere belangrijkestap in een beveiligd netwerk is het gebruik van VLAN.

9.2.3 Koppeling van een automatiseringsnetwerk aan een bedrijfsnetwerk

De koppeling van een automatiseringsnetwerk met het bedrijfsnetwerk gebeurt door middelvan een router. Deze router zorgt voor een ideale scheiding tussen de twee netwerken welketotaal verschillende vereisten hebben. Deze router moet een open doch sterk beveiligdecommunicatiestructuur tussen het bedrijfsnetwerk en het automatiseringsnetwerk mogelijkmaken.

9.3 Noodzaak aan beveiliging

9.3.1 Inleiding

Automatiseringsnetwerken zijn tot op heden meestal geïsoleerde netwerken met controllersen netwerkprotocollen welke gebaseerd zijn op proprietaire protocollen. De productieafdelingis meestal zelf verantwoordelijk voor de industriële communicatie. Security is zelden eenaandachtspunt.

Moderne automatiseringsprojecten worden gekenmerkt door open systemen en communica-tienetwerken gebaseerd op Ethernet TCP/IP. Hierdoor wordt de IT-afdeling medeverantwoor-delijk voor de industriële communicatie. Security wordt een belangrijk aandachtspunt.

Dat Windows en Ethernet de productiehallen veroveren is een interessante ontwikkeling.Maar in toenemende mate wordt duidelijk dat ook virussen en hackers vat krijgen op machi-neparken en installaties. Het wordt dus belangrijk om de automatiseringswereld te bescher-men tegen de gevaren die al jaren gekend zijn in de IT-wereld.

9.3.2 Bewustwording

Het bewustzijn en de kennis om het kantoornetwerk te beveiligen is heden ten dage heelsterk aanwezig. Het is standaard geworden om een firewall te plaatsen tussen het kan-toornetwerk en het Internet aangevuld met een aantal bijkomende beveiligingsmaatregelen.Hiermee is het kantoornetwerk goed beveiligd.

Op productieniveau is dit bewustzijn en deze kennis nog niet zo sterk aanwezig. Volgendevragen zijn op de werkvloer dan ook voor de hand liggend:

• Is de productie IT wel zo kwetsbaar dat beveiliging zich opdringt?

• En als het bedrijfsnetwerk goed beveiligd is, kan er toch niets fout gaan?

• Welke niet-geautoriseerde persoon gaat zich nu bezighouden met het hacken van deproductieapparatuur en de fabriek stilleggen?

• Daarenboven draaien er toch binnen de industriële IT totaal andere protocollen op hetsysteem dan de gekende Microsoft-protocollen. Hierdoor zijn productienetwerken tochminder gevoelig voor aanvallen van de buitenwereld?

Automatiseringsnetwerken & Security 107

Dit laatste was vroeger correct, maar er is een evolutie naar het gebruik van open systemenzoals op Windows gebaseerde software-applicaties en protocollen zoals HTTP, FTP, of DCOM(gebruikt in OPC) tot op PLC niveau. Deze open systemen zijn virus gevoelig en kunnenzorgen voor het blokkeren van de PLC.

Enerzijds situeren de problemen op de industriële werkvloer zich zozeer rond het opzettelijkhacken maar eerder rond toevallige fouten binnen de productie. Bijvoorbeeld kabels dieuitgetrokken of verkeerd ingeplugd worden. Productiestilstand of erger kan het gevolg zijnvan het gebruik van een USB-stick die een virus bevat en welke ingeplugd wordt in een PCdie met een machine verbonden is. Dataverkeer vanuit het kantoornetwerk kan zorgen voordelays op het productienetwerk.

Anderzijds mag niet uitgesloten worden dat er misbruik kan gemaakt worden van de datadie gehackt wordt. Het bedrijf kan gechanteerd worden om het zo te treffen. Recente stu-dies tonen een evolutie aan op het gebied van industriële security incidenten. De meeraccidentele gebeurtenissen worden meer en meer aangevuld met externe incidenten zoalsvirussen, trojan horses, systeem hacking, sabotage,... . Hackers krijgen meer en meer kennisvan besturingssystemen en SCADA applicaties. Hackers doen het heden minder voor de funmaar meer en meer in het kader van de georganiseerde misdaad om een bepaald bedrijf techanteren.

Beveiligen wordt een must.

9.3.3 Doelstelling van security

De hoofddoelstellingen van security zijn drieledig:

• Betrouwbaarheid (confidentiality): zekerheid dat gegevens niet terecht komen bij der-den.

• Juistheid van de gegevens (Integrity): bescherming van de gegevens tegen ongewensteaanpassingen of tegen het vernietigen ervan.

• Beschikbaarheid (availability): resources zijn beschikbaar en functioneren correct ophet ogenblik dat ze dit moeten doen.

Veiligheid zal dus het voorkomen zijn dat iemand ongewenst in het systeem komt, dat hetsysteem ten aller tijden normaal blijft functioneren en dat alle gegevens in het systeem opeen betrouwbare manier kunnen verhandeld worden.

9.3.4 Security in de kantoorwereld versus security in de automatiserings-wereld

Inleiding

Door de integratie van open systemen kan de indruk ontstaan dat de security problemenbinnen de productiewereld op te lossen zijn door de aanpak binnen de kantoorwereld over tenemen. Er zijn echter belangrijke verschillen tussen beide domeinen. De kantoor IT is nietdezelfde als de productie IT. Er moet nagegaan worden wat er uit de kantoor IT al dan niet kangebruikt worden in de productie IT. Er is een standaard in ontwikkeling, de ANSI/ISA99, omhet wat, hoe en waarom van security in de automatiseringswereld volledig te beschrijven.

Automatiseringsnetwerken & Security 108

Hoofddoelstelling security

Vooreerst is er een belangrijk verschil in de hoofddoelstelling van security.In de kantoorwereld is het hoofddoel van security altijd het op een vertrouwelijke manierverhandelen van data en gegevens.In de automatiseringswereld zal het hoofddoel van security altijd de beschikbaarheid van hetproductiesysteem zijn.

Netwerkprestaties

Beide domeinen hebben totaal verschillende prestatievereisten.Een overzicht:

Automatiseringsnetwerk KantoornetwerkReal-time Niet real-timeRespons is tijdskritisch Respons moet betrouwbaar zijnMatige throughput aanvaardbaar Hoge throughput gewenstGrote vertraging is een probleem Grote vertraging en jitter mag

Hierdoor is het belangrijk om de impact van security technologieën op de performantie vanhet systeem goed te kunnen inschatten alvorens deze geïmplementeerd worden. Zo wordtin de kantoorwereld veel encryptie toegepast. Encryptie komt echter de real-time werkingniet ten goede.

Betrouwbaarheid van een netwerk

Ook de vereisten naar betrouwbaarheid zijn voor beide domeinen verschillend.Een overzicht:

Automatiseringsnetwerk KantoornetwerkContinue operaties Geplande operatiesStroomonderbrekingen niet toegelaten Onderbrekingen toegelatenVerondersteld getest voor de implementatie Beta testen ter plaatse toegelatenFormele certificatie is verplicht bij aanpassingen Weinig papierwerk bij aanpassingen

Het installeren van een nieuw service pack is hier een mooi voorbeeld van. In de kantoorwe-reld is dit een normale zaak, in de industriële wereld is de installatie van een service packzeker niet evident en in bepaalde industriële takken niet toegelaten.

Verschillende risico opvatting

Automatiseringsnetwerk KantoornetwerkMenselijke veiligheid Data integriteitRisico impact is verlies van leven, productof toestel

Risico impact is verlies van data, bedrijfs-operaties

Fout tolerantie is essentieel Heropstart via reboot

Verder zijn er in de automatiseringsnetwerken de kritische reactietijden op menselijke in-terventies. Het bedienen van een noodstop bijvoorbeeld kan niet belemmerd worden doorpaswoordbeveiligingen.

Automatiseringsnetwerken & Security 109

Verschillende security architectuur

In de kantoor IT zijn de centrale servers de meest kritische toestellen om te beveiligen.Bij de productie IT is het eindtoestel, zoals de PLC, het meest kritische toestel en niet decentrale dataserver met de historische data van het proces.

Besluit

De klassieke firewall beschermt tegen hackers, wormvirussen en spyware. Het zijn softwa-reprogramma’s die het netwerk of de specifieke computer beschermen tegen de buitenwe-reld en enkel vertrouwde boodschappen doorlaten. Eén van de doelen is alle verdachteprogramma’s die vanuit de eigen locatie verbinding zoeken met het Internet te blokkeren.Aanvullend in de kantoor IT zijn er de zogenaamde antivirusprogramma’s, anti-spyware enanti-adware-programma’s die elk binnenkomend bestand tegenhouden, controleren op deaanwezigheid van in databases opgeslagen bedreigingen en deze dan clean verklaren of inquarantaine plaatsen. Ook screenen ze alle opgeroepen files op de aanwezigheid van in dedatabase opgenomen virussen, spyware en adware. Het principe van deze IT-beschermingis dat de firewall al het inkomend en uitgaand dataverkeer, alle datafiles, programma’s,...bekijkt en analyseert. Dergelijke firewalls vertragen het systeem en indien nodig hinderenze de werking van het programma.

Om een meer industriële firewall te realiseren, zullen in de eerste plaats technieken gebruiktworden om geen vertraging op te lopen en toch de veiligheid en betrouwbaarheid van dedata te garanderen. Men kan daarbij gebruik maken van veilige communicatiekanalen tus-sen bijvoorbeeld PLC en de bedieningscomputer of dataservers. Om real-time werking teverzekeren mag er geen vertraging optreden bij het controleren van de data die de firewallpasseert.Er zullen andere technologieen moeten toegepast worden. Een mogelijkheid is omniet niet de eigenlijke data maar eeder de toegepaste protocollen te controleren.

9.3.5 Standaardisatie omtrent security in automatiseringsnetwerken

Inleiding

ANSI/ISA 99 geeft richtlijnen bij het uitvoeren van een risico-inventarisatie, het opstellenvan een zogenaamd cyber security beleid en het uitvoeren van dat beleid. De standaard isopgesteld in samenwerking met eindgebruikers, systeemintegratoren en leveranciers. DeANSI/ISA 99 norm is in volle ontwikkeling. Momenteel zijn er 2 delen beschikbaar.Figuur 9.4 toont een overzicht van de ISA 99 standaard. Bedoeling is dat deel 1 een raamwerkwordt rond alle andere delen. Momenteel zijn enkel deel 1 en deel 2.01 beschikbaar.

Deel 1 (ANSI/ISA report TR99.00.01- 2007)

Dit eerste deel heeft als title : ’Security for Industrial Automation and Control Systems’,de laatste versie dateert van 29 oktober 2007. Het Beschrijft security technologieën welkeheden beschikbaar zijn voor industriële productie en controle systemen. In dit deel wordentechnologieën zoals authenticatie en autorisatie, firewalls, VPN,... besproken.

Authenticatie is het proces om gebruikers, toestellen, applicaties, resources positief te kun-nen herkennen. Authenticatie kan gebeuren aan de hand van iets wat gekend is (pincode,

Automatiseringsnetwerken & Security 110

Figuur 9.4: De ANSI/ISA 99 standaard

paswoord,...) , iets wat in bezit is (sleutel, intelligente kaart, dongle,...) iets fysisch (vingeraf-druk,... ). Hierbij moet onderscheid gemaakt worden tussen 2 verschillende authenticaties:user authenticatie en netwerk service authenticatie.

Deel 2 (ANSI/ISA report TR99.00.02- 2004)

Oorspronkelijk had het tweede deel als titel : Integrating Electronic Security into the Manu-facturing and Control Systems Environment. Het oorspronkelijke deel 2 en deel 3 wordennu uiteindelijk samengebracht tot deel 2. Deel 2 zal dan uit twee onderdelen bestaan. Heteerste deel ISA 99 part 2.01, is klaar en krijgt als titel ’Establishing an Industrial Automationand Control Systems Security Program’. Bedoeling is de bedrijven te ondersteunen bij hetopstellen van een security management plan. De basis van dergelijk plan is om alle moge-lijke risico’s in kaart te brengen en vervolgens een aantal oplossingen te formuleren. ISA 99part 2.02 zal beschrijven hoe dergelijk security plan moet uitgevoerd worden.

Deel 4

In deel 4 zullen de eisen welke gesteld worden aan apparatuur en systemen beschrevenworden opdat deze zouden voldoen aan de ISA 99 standaard.

9.3.6 Een veiligheidsprogramma

Het uitwerken van een veiligheidsplan is meer dan alleen maar aandacht hebben voor tech-nische oplossingen zoals firewalls en encryptie van data. Verschillende menselijke factorenkunnen bijdragen tot een succesvolle implementatie van een CSMS (Cyber Security Mana-gement System). Verschillende aandachtspunten welke kunnen leiden tot een succesvolleintegratie:

• Een veiligheidsbeleid moet volledig passen in het bedrijfsbeleid

• Het veiligheidsprogramma moet passen in de bedrijfscultuur

Automatiseringsnetwerken & Security 111

• Ondersteuning en engagement van het bedrijfsmanagement

• Duidelijke budgettering van security management acties

• Scheiden van de functionaliteiten: indien een productieverantwoordelijke ook verant-woordelijk is voor security dan komt security vaak op de tweede plaats.

• Activiteiten en opleidingen organiseren voor alle werknemers

• Richtlijnen verspreiden onder alle werknemers

9.4 Security in de praktijk

Security betekent eigenlijk de machine, de productie of het proces beschermen tegen be-paalde menselijke activiteiten. Menselijke activiteiten kunnen onbewust of doelbewust er-voor zorgen dat er productiestilstand gecreëerd wordt.

Om security toe te passen is er niet één regel maar moeten verschillende concepten er toeleiden dat menselijke fouten geminimaliseerd worden of dat personen met slechte intentiesafgeschrikt worden om misbruik te maken van de beschikbare data.

Security op de werkvloer kan op verschillende niveaus geïntegreerd worden.

9.4.1 Laag 1 security

Een eerste stap in een goed beveiligd netwerk is de mechanische beveiliging van de net-werkkabels. Safe clips moeten vermijden dat netwerkkabels eenvoudig kunnen verwijderdworden uit een netwerkpoort. Ook de toegang tot vrije RJ45 poorten van de verschillendeswitches moet mechanisch bemoeilijkt worden om de toegang van ongewenste deelnemerste verhinderen.

Figuur 9.5 toont de mogelijkheid om ongebruikte poorten te blokkeren of om Ethernet con-nectoren vast te zetten.

Figuur 9.5: Laag 1 security

9.4.2 Laag 2 security

Een tweede stap bij het beveiligen van een netwerk is het gebruik van de beschikbare soft-ware voor het managen van switches.

Switches moeten de mogelijkheid bieden om enkele belangrijke beveiligingen in te stellen:

• Webbased management moet paswoord beveiligd zijn.

Automatiseringsnetwerken & Security 112

• Er moet de mogelijkheid zijn om op basis van IP-adressen verschillende rechten toe tekennen (read-only of read-write beveiliging).

• Switches moeten de mogelijkheid bieden om verschillende beveiligingen per poort inte stellen. Zo moet per poort een lijst van toegelaten MAC adressen ingesteld kunnenworden.

9.4.3 Laag 3 security

De belangrijkste stap bij het beveiligen van een automatiseringsnetwerk is het scheiden vanverschillende segmenten door een security module. Een security module is een router metvolgende mogelijkheden:

• NAT en 1:1 NAT: het toepassen van NAT zorgt reeds voor een vertaling van IP adressen.Hierdoor is het voor een buitenstaander al moeilijker om de toegepaste IP adresseringop het netwerk te achterhalen.

• Geïntegreerde stateful inspection firewall.

• User firewall: individuele rules voor verschillende gebruikers.

• Ondersteuning van VPN technologie.