Utveckling av FPGA-baserad lösning för PROFINET
SANNA ESKELINEN
TRITA-ICT-EX-2012:5
Företag: Motion Control i Västerås AB Handledare: Andreas Forsberg
Handledare: Christian Menne
Examinator: Ingo Sander
Sammanfattning
PROFINET är en öppen standard för industriellt Ethernet, som uppfyller alla behov inom automation. PROFINET gör det möjligt att koppla in det befintliga fältbussystemet, till exempel PROFIBUS utan att det behöver ändras, genom ett så kallat proxy. PROFINET finns i två utförande PROFINET IO och PROFINET CBA, där IO är en decentral lösning och CBA är en komponentbaserad lösning.
PROFINET använder sig av tre olika kommunikationskanaler för att skicka och ta emot data. Detta gör att företag successivt kan gå över till PROFINET utan större omkostnader som det skulle innebära om hela anläggningen skulle behöva byggas om. De flesta moduler som används för PROFINET-kommunikation har utöver grundfunktionaliteten även andra funktioner såsom FTP och webbserver.
Företaget Motion Control använder sig i dag av en färdig modul som inte uppfyller de krav som krävs och vad den använda modulen lovar, den har även flera funktioner som inte används i dagsläget. Därför har det funnits önskemål om att ta fram mjukvara till en egen modul som kan implementeras i en FPGA eller DSP. Detta för att få djupare kunskaper om hur PROFINET fungerar, samt vad som krävs för att ta fram en egen modul.
Detta dokument beskriver de olika undersökningar som utfördes för att få en grund
för själva utvecklingsarbetet. Därefter beskrivs de krav och den grundläggande
designspecifikationen som togs fram inför själva konstruktionen av mjukvaran. Även
beskrivning av den slutgiltiga konstruktionen tas upp, allt avslutas med resultat och
sammanfattning.
Abstract
PROFINET is an open standard for indrustial Ethernet that meets all needs in automation. PROFINET can be used together with existing fieldbus systems like PROFIBUS without changes by using a proxy. PROFINET is available in two versions:
PROFINET IO and PROFINET CBA. IO is a decentralized solution and the CBA is component based. They use three different communication channels for sending and receving data. The advantage with PROFINET is that companies gradually can transfer to PROFINET without extra costs as it would be if the entire facility was upgrated at once. A majority of the modules used for PROFINET-communication include functions such as FTP and Webserver.
Today the company Motion Control uses a module that does not meet the necessary requirements which the module promises, it also has several features that are not used today. Therefore, there is a desire to develop software for a custom module that can be implemented in an FPGA or DSP. That to gain a deeper understanding of how PROFINET works, and what it takes to develop a custom module.
This document describes the various studies that were performed to get a basis for the
development. Then it describes the requirements and the basic design specification
that was drawn up before the actual construction of the software. Also the description
of the final design is covered and everything ends with results and summary.
Förord
Först vill jag tacka Christer Gerdtman för att han har gett mig möjligheten att genomföra mitt examensarbete hos Motion Control i Västerås AB. Jag vill tacka även alla anställda vid Motion Control som har delat med sig av sina kunskaper och erfarenheter.
Ett stort tack går till min handledare Andreas Forsberg som alltid funnits tillhands under projektets gång och kommit med bra synpunkter och tips. Till sist vill jag även tacka Christian Selander som varit till stor hjälp när det gäller programmering.
Västerås 2012
Sanna Eskelinen
Innehåll
1 Inledning 1
1.1 Bakgrund . . . . 1
1.2 Syfte . . . . 2
1.3 Metod . . . . 2
1.4 Förutsättningar och avgränsningar . . . . 3
1.5 Struktur . . . . 3
I Förstudier 5 2 Ethernet 6 2.1 Standard Ethernet . . . . 6
2.2 Switched Ethernet - Fast Ethernet . . . . 8
2.3 Nätverkstopologi . . . . 9
2.4 Adresser . . . . 10
2.5 Protokoll . . . . 11
2.6 Sammanfattning . . . . 14
3 PROFINET 16 3.1 Realtidskommunikation . . . . 17
3.2 PROFINET IO . . . . 21
3.3 Integration av fältbussystem . . . . 32
3.4 Webbintegrering . . . . 34
3.5 PROFIsafe . . . . 35
3.6 Implementering av PROFINET IO . . . . 37
3.7 Sammanfattning . . . . 38
4 Seriell kommunikation 39 4.1 Synkron överföring . . . . 39
4.2 Asynkron överföring . . . . 40
4.3 UART . . . . 40
Innehåll Innehåll
4.4 SPI . . . . 43
4.5 I
2C . . . . 45
4.6 Sammanfattning . . . . 50
5 Marknadsundersökning 51 5.1 Förutsättningar och avgränsningar . . . . 51
5.2 Viktiga parametrar . . . . 52
5.3 Beskrivning av parametrar . . . . 52
5.4 Sammanställning . . . . 54
5.5 Slutsats . . . . 57
5.6 Rekommendation . . . . 57
6 Kravspecifikation 60 6.1 Funktionskrav . . . . 60
6.2 Mjukvarukrav . . . . 61
6.3 Kapacitetskrav . . . . 62
6.4 Miljöförhållanden . . . . 62
6.5 Testning . . . . 62
II Design och Implementering 63 7 Designspecifikation 64 7.1 Funktionalitet . . . . 65
7.2 Hårdvara . . . . 66
7.3 Mjukvara . . . . 68
7.4 Initialisering . . . . 69
7.5 Huvudflödet . . . . 70
7.6 MicroC/OS-II . . . . 71
7.7 NicheStack TCP/IP stack . . . . 72
7.8 Interrrupt . . . . 73
7.9 Felhantering . . . . 74
7.10 Saker att tänka på vid programmering . . . . 74
8 Konstruktionsbeskrivning 75 8.1 Systemöversikt . . . . 75
8.2 Hårdvara . . . . 76
8.3 Mjukvara . . . . 80
8.4 Resultat . . . . 86
9 Diskussion 88
9.1 Slutsats . . . . 88
Innehåll Innehåll
9.2 Framtida förbättringar . . . . 90
A Aktivitetslista 95
Figurer
2.1 Övre: Original standarden av DIX gruppen, Nedre: Standarden enligt
IEEE 802.3 . . . . 7
2.2 Stjärn- och ringtopologi . . . . 9
2.3 Utseende på MAC-adress . . . . 10
2.4 Överföring via TCP . . . . 13
3.1 Uppdelning av bandbredd . . . . 19
3.2 PROFINET IO anläggning . . . . 22
3.3 Relationer i PROFINET . . . . 26
3.4 LLDP används för granndetektion i PROFINET IO . . . . 27
3.5 Redundans i PROFINET . . . . 31
3.6 Integration av fältbussystem i PROFINET . . . . 33
4.1 UART paket . . . . 41
4.2 SPI med en master och slav . . . . 43
4.3 Överföring av data med SPI . . . . 44
4.4 START och STOPP . . . . 46
7.1 Hårdvara kort . . . . 66
7.2 Mjukvara . . . . 68
7.3 Huvudflöde . . . . 70
8.1 Slutgiltiga kommunikationen . . . . 76
8.2 Översikt hårdvara . . . . 77
8.3 Översikt mjukvara . . . . 80
Tabeller
2.1 Subnet mask . . . . 11
3.1 Typiska värden på fördröjning i överföringslänken . . . . 20
4.1 Reserverade adresser vid 7-bitars adressering . . . . 45
5.1 Sammanställning av PROFINET-moduler . . . . 54
5.2 Sammanställning kretsar för PROFINET . . . . 55
5.3 Sammanställning PROFINET-moduler med FPGA . . . . 56
5.4 Sammanställning FPGA-kretsar . . . . 56
8.1 Sammanställning av kraven . . . . 87
Förklaringar
Förkortning
Förklarande textAPI Application Programming Interface, regler och specifikationer för mjuk- varuprogram
AR Application Relation, logisk applikationsrelation mellan två deltagare ARP Address Resolution Protocol, är ett kommunikationsprotokoll som an-
vänds för att koppla samman en IP-adress med en MAC-adress ASIC Application Specifik Integreted Circuit, krets för ett specifikt ändamål BSP Board Support Package, särskilt stöd-kod som översstämmer med en
given operativsystem
CBA Component Based Automation, anpassat för komponentbaserad kom- munikation i PROFINET
CC Conformance Classes, applikationsklasser som har definierad minumum prestanda
CM Contex Management, upprättar kommunikations- och applikationsrela- tioner
CPU Central Processing Unit, central processor i enheten
CR Communication Relations, specificerar den egentliga kommunikationen mellan en konsument och en producent
CRC Cyclic Redundance Check, används för att upptäcka korrupta databitar CSMA/CD Carrier Sense Multiple Access/Collision Detection, process för access
till Ethernet samt kollisiondetektering
DCP Discovery and basic Configuration Protocol, dynamisk tilldelning av IP-adresser
DCS Distributed Control System, samlingsbegrepp för överordnad styrsystem DHCP Dynamic Host Configuration Protocol, dynamisk tilldelning av IP-
adresser
DIL Dual In Line-package, typ av kapsel för hålmonterade mikrochip DSP Digital Signal Processor, integrerad krets
Duplex Kommunikation kan ske i två riktningar
ERTEC Enhanced Real Time Ethernet Controller, ASIC från Siemens
Ethernet Arkitektur för datakommunikation
FDX Full Duplex, kommunikation kan ske i två riktningar samtidigt FIFO First in First out, först in först
Firmware Mjukvara som är inprogrammerad i hårdvara Flashminne Transistorbaserad minne
FPGA Field-programmable Gate Array, integrerad krets som består av ett antal logiska block som kan länkas ihop för att skapa önskade funktioner Gateway Utrustning som förmedlar data mellan nät med olika standarder eller
utrustningar
GSD General Station Description, innehåller en XML-baserad beskrivning av I/O-enheter egenskaper som kommunikationsparametrar och data för modulerna
GSDML General Station Desciption Markup Language, är det beskrivande språk som används för att skapa en GSD-fil för PROFINET IO-enheter HDX Half Duplex, kan ta emot och skicka data men inte samtidigt I
2C Inter-IC, seriell buss med två aktiva ledare
I/O Input/Output, in- och utsignaler IC Integrated Circuit, integrerad krets
IDE Integrated Development Environment, C/C++ kompilator för Nios II processorer.
IEEE Institute of Electrical and Electronics Engineers, standarder inom data- och elektroteknik
INTERBUS Fältbussystem
Interrupt En icke klockcykelberoende signal som avbryter processors pågående arbete
IOCR Input Output Configuration Register, sätts upp för ingångar/utgångar vid uppstart inom det AR som skall etableras
IP Internet Protocol, kommunikationsprotokoll för överföring
IRT Isochronous Real Time, isokron realtidskanal för speciellt krävande precisionsstyrning/reglering till exempel motion control
JTAG Joint Test Action Group, för att kunna koppla sig till FPGAn för bland annat felsökning och programmering
LAN Local Area Netwok, lokal nätverk
LLDP Link Layer Discovery Protocol, används för granndetekting MAC-adress Media Access Control, används för att identifiera en Ethernet-nod MCU Micro Control Unit, komplett enhet med processor samt tillhörande
minne, interface med mera.
MISO Master In Slave Out, signal från slaven till master MOSI Master Out Slave In, signal från mastern till slaven MSB Most Significant Bit, mest signifikanta biten
OUI Organizationally Unique Identifier, företagsnummer i MAC-adressen
PLC Programmable Logic Controller, styrenhet
PROFIBUS Process Field Bus, standard för fältbusskommunikation
PROFINET Process Field Net, Ethernet-baserad nätverkslösning för automation PTCP Precision Transparent Clock Protocol, används vid klocksynkronisering R/W Read/Write, läs/skriv operationer
RPC Remote Procedure Call, protokoll i applikationslagret
RT Real Time, realtidskanal för överföring av tidskritiska processdata SCL Seriel Clock Line, klocksignal inom I
2C
SCLK Seriel Clock, klocksignal SDA Seriel Data, data kanal för I
2C
SGDMA Scatter-Cather DMA, används för att flytta data till exempel från minne-till-minne
SOPC Builder Programvara från Altera som används för att generera systemfiler till FPGA
SPI Serial Peripheral Interface, synkroniserad seriell datalänk
SRAM Static Read Access Memory, en typ av minne där data stannar tills det skrivs över
SS Slave Select, signal för val av slavenhet
Subslot Grupp av en eller flera kanaler. Subslots kan vara reella eller virtuella TCP Transmission Control Protocol, vanligaste transportprotokoll
UART Universal Asynchrous Receiver Transmitter, omvandlar parallell data till seriell
UDP User Datagram Protocol, förbindelselöst kommunikationsprotokoll Watchdog Elektronisk funktion som räknar och måste återställas till sitt utgångs-
läge innan den har räknat ner WiFi Teknik för trådlösa nätverk
XML Extensible Markup Language, universalt märkspråk för att definiera
och struktuera data
Kapitel 1 Inledning
1.1 Bakgrund
Företaget Motion Control i Västerås AB arbetar huvudsakligen med elektronikutveck- ling. Företaget utvecklar produkter för bland annat industrin där kommunikationen skall kunna ske mellan olika enheter i systemet. Detta för att kontrollera att enheter- na fungerar som de ska men även för att upptäcka fel som inträffar i till exempel en tillverkning process.
Idag används fältbussystem såsom PROFIBUS i stor utsträckning inom automation men användningen av PROFINET ökar och allt fler företag förväntas övergå till användning av PROFINET.
Principen för PROFINET och PROFIBUS är den samma, en modul vars uppgift är att samla data kopplas till en enhet nära processen, modulen skickar sedan data till en styrenhet/masterenheten. Största skillnaden mellan PROFINET och PROFIBUS är sättet att kommunicera med masterenheten, där PROFIBUS använder sig av seriell kommunikation för datautbyte, medan PROFINET använder sig av Ethernet.
I dag använder sig företaget Motion Control av en färdig modul för PROFINET-
kommunikation som inte uppfyller de krav som ställs på den och vad modulen lovar,
den har även flera funktioner som inte används i dagsläget. Den har visat stora
brister när det gäller framför allt överföringshastigheten via UART. Därför har det
funnits önskemål om att mer utförligt undersöka egenskaperna hos PROFINET
och vilka typer av kretsar som kan användas för att ta fram en egen modul för
PROFINET-kommunikation som sedan skulle kunna användas i deras produkter.
1.2. Syfte Kapitel 1. Inledning
1.2 Syfte
Syftet med projektet är att göra en grundlig undersökning om PROFINETs funktioner och vilka typer av moduler och kretsar som finns tillgängliga på marknaden, för att på så sätt ta reda på vad som krävs för att ta fram en egen modul som kan användas för PROFINET-kommunikation.
Följande frågor bör besvaras:
• Vad är PROFINET?
• Vilka typer av moduler och kretsar finns idag? Prestanda?
• Vilken typ av krets kan användas om en egen modul skall tas fram?
1.3 Metod
Vid utförandet av examensarbetet används företagets projektmodell som används i utvecklingsprojekt.
Projektet kan delas upp i följande delar:
• Projektplanering
• Instudering och undersökningar
• Krav och testspecificering
• Designspecificering
• Utförande
• Testning
• Konstruktionsbeskrivning
I inledningen av projektet skapades projektplanering med tidsmål, denna planering finns dokumenterad i en aktivitetslista, se Bilaga A.
När den inledande planeringen av projektet var klar påbörjades undersökningar
angående nätverkskommunikation, då undersöktes bland annat TCP-, UDP- och
IP-protokollen, därefter studerades även PROFINET. Även en undersökning om
seriell kommunikation gjordes som omfattade UART, SPI samt I
2C. En marknadsun-
dersökning genomfördes i syfte att få reda på vilka typer av moduler och kretsar för
PROFINET som finns tillgängliga, detta för att studera prestanda och funktionalitet.
Kapitel 1. Inledning 1.4. Förutsättningar och avgränsningar
I samband med undersökningarna formades idéer om vilka funktioner som den planerade modulen skulle ha, dessa finns dokumenterade i kravspecifikationen. Utifrån kravspecifikation skrevs en testspecifikation och ett testprotokoll för att kunna testa om kraven som ställdes på modulen har uppfylls dessa finns dokumenterade i [PFB1-3111, PFB1-3131]. När kraven var fastställa påbörjades designarbetet med en designspecifikation. Slutligen gjordes en konstruktionsbeskrivning som förklarar den slutgiltiga implementationen.
1.4 Förutsättningar och avgränsningar
Då tiden för examensarbete är begränsad till 20 arbetsveckor är det viktigt att momenten i projektet inte överskrider sin tidsbudget. PROFINET är ett omfattande protokoll, det använder sig bland annat av Ethernet för kommunikation, därför kommer tid i första hand läggas på att få grundkommunikationen bestående av TCP/UDP/IP att fungera och i mån av tid kommer övriga funktioner att implemen- teras.
1.5 Struktur
Detta examensarbete har delats in i två delar, första delen består av en förstudie innehållande undersökningar och avslutas med en kravspecifikation, andra delen består av design och implementering samt diskussion.
Del I - Förstudier:
Kapitel 2 innehåller en undersökning om Ethernet, där vanligaste typerna av kommu- nikationsprotokoll tas upp, även begrepp som IP- och MAC-adress, nätverkstopologi och duplexitet behandlas.
Kapitel 3 innehåller en undersökning om PROFINET, där dess användsområden beskrivs, realtidskommunikation, integrering av fältbusssystem, granndetektering och PROFIsafe. Även en närmare titt tas på PROFINET IO. Kapitlet avslutas med beskriving hur PROFINET kan implementeras.
Kapitel 4 innehåller en undersökning om seriell kommunikation bestående av UART-,
SPI- och I
2C-överföring.
1.5. Struktur Kapitel 1. Inledning
Kapitel 5 innehåller en marknadsundersökning där färdiga moduler och kretsar som kan används för PROFINET-kommunikation har undersökt när det gäller prestanda och funktioner. Kapitlet avslutas med rekommendation av kretsar som är lämpliga för denna typ av implementering.
Kapitel 6 innehåller en kravspecifikation som tagits fram med hjälp av informationen som hämtats under förstudierna, här beskrivs bland annat krav på funktioner och prestanda.
Del II - Design och Implementering:
Kapitel 7 innehåller den designspecifikation som tagits fram genom studier av manualer till den valda kretsen, realtidsoperativsystemet och nätverkstacken. Här beskrivs den tänkta kommunikationen mellan olika delar i systemet, hur hårdvaran skall tas fram, interrupt hantering, och utformning av mjukvaran.
Kapitel 8 innehåller konstruktionsbeskrivning som beskriver i detalj den implemen- tering som gjordes under mjukvaruutvecklingen. Den omfattar beskrivning av den slutgiltiga kommunikationen, olika delarna i den framtagna hårdvaran och imple- menteringen av mjukvaran, kapitlet avslutas med resultat.
Kapitel 9 innehåller slutsatser och framtida förbättringar.
Del I
Förstudier
Kapitel 2 Ethernet
PROFINET är baserat på Ethernet-teknologi och använder sig av standarder såsom TCP/IP-protokoll för kommunikation. För att underlätta förståelse för PROFINET beskrivs de vanligast förekommande begreppen inom Ethernet.
Detta kapitel går i genom begrepp som normalt förekommer när det gäller nätverks- kommunikation, här tas bland annat begrepp som duplexitet, IP- och MAC-adress och nätverkstopologi upp. Kapitlet avslutas med de vanligaste kommunikationspro- tokoll som används vid datautbyte över Ethernet. Hela ursprungliga undersökningen finns beskriven i dokumentet [PFB1-2601].
2.1 Standard Ethernet
Standard Ethernet arbetar efter en icke-deterministisk princip, vilket ger alla enheter samma rättigheter till överföringskanalen. Alla enheter som är kopplade till nätverket kan skicka data till en annan enhet. Nätverket är designat som ett bussystem, detta gör att alla inkopplade enheter nås av den skickade informationen. Därför filtrerar enheterna de datapaket som skickas för att se om de är avsedda för dem, annars ignoreras de.
Accessen till nätverket kontrolleras av CSMA/CD (Carrier Sense Multiple Access /
Collision Detection) proceduren. Om en enhet vill använda sig av överföringskanalen
för dataöverföring, kontrollerar enheten först om den är ledig innan överföringen
börjar, annars väntar enheten tills den blir ledig. Ibland händer det att flera börjar
sin sändning samtidigt vilket leder till kollision, då stoppas all överföring och en
slumpmässig väntetid ges till enheterna, när tiden har passerat, kan enheten göra ett
nytt försök att påbörja överföringen.
Kapitel 2. Ethernet 2.1. Standard Ethernet
CSMA/CD är en accessmetod för att flera parter ska kunna sända information samtidigt på samma fysiska medium, till exempel en kanal. Om en kanal är ledig kan sändaren börja sända direkt, annars måste den vänta tills kanalen är ledig innan överföringen kan börja. Om någon enhet upptäcker kollision i nätverket skickas en felsignal till alla berörda enheter. När en kollision upptäckts stannar all överföring och alla enheter får en slumpmässigt utvald väntetid, därefter kan överföringen börja igen.
Standard Ethernet-nätverk är olämpliga för användning till realtidskommunikation, eftersom denna typ av kommunikation kräver exakt körtid.
2.1.1 Standard Ethernet paket
Data som skall överföras över nätverket delas upp i mindre delar, så kallade paket.
Varje paket innehåller information om: mottagarens adress, sändarens adress, data och information för felkontroll. Paketen är mellan 64 och 1526 bytes långa.
Det finns två olika typer av format på paket:
• Original standarden av DIX gruppen
• Standarden enligt IEEE 802.3
Skillnaderna mellan de två paketen är att DIX Ethernet använder ’typ’ block, medan IEEE 802.3 använder sig av ’längd’ block på samma position, som visas i Figur 2.1.
Figur 2.1: Övre: Original standarden av DIX gruppen, Nedre: Standarden enligt
IEEE 802.3
2.2. Switched Ethernet - Fast Ethernet Kapitel 2. Ethernet
2.2 Switched Ethernet - Fast Ethernet
Fast Ethernet-standard är baserad på den klassiska Ethernet-standarden med en ökad hastighet från 10Mbit/s till 100Mbit/s. Fast Ethernet använder sig av full duplex (FDX) vid kommunikation, detta gör det möjligt att både ta emot och skicka data utan risk för kollision.
Likheter mellan Standard och Fast Ethernet:
• Data format: paket längd mellan 64 till 1518 bytes
• Access procedur: CSMA/CD
• Samma kablar
Adresseringen, access procedur, installation och paketformat är identiskt till den tidigare Ethernet-standarden. Den linjära topologin är utbytt till en stjärntopologi med switchar, vilket ger en punkt-till-punkt-koppling till en central nod.
Fördelar: Det är möjligt att använda gamla investeringar utan begränsningar.
2.2.1 Full duplex
Den optimala överförings proceduren för switched Ethernet är full duplex (FDX), en annan som används är halv duplex (HDX). Stjärntopologi använder sig endast av full duplex, varje komponent är kopplad till en annan via en punkt-till-punkt-koppling.
Detta gör att varje enhet alltid är kopplad till en sändarlänk och en mottagarlänk, detta gör det möjligt att både skicka och ta emot information utan kollision.
Fördelar med full duplex:
• Enkel procedur, stabil och kollisionsfri
• 100 % belastning är möjligt
• Genomströmningen ökar till det dubbla
• Gör det möjligt att öka nätverkens storlek
Kapitel 2. Ethernet 2.3. Nätverkstopologi
2.3 Nätverkstopologi
Nätverkstopologin är mönster av sammankopplade enheter i ett nätverk, dessa kan vara både fysiska eller logiska, där den fysiska topologin omfattar enheter, placeringar och kabeldragningar. Topologin kan betraktas som en virtuell form eller struktur av ett nätverk. Nätverkstopologin måste anpassas till den anläggning eller maskin som den skall användas för.
De vanligaste topologierna:
• Stjärna: Stjärnstruktur är en central signalfördelning med individuella förbin- delser till alla terminaler i nätverket. Denna topologi lämpar sig bäst i områden med hög deltagartäthet och korta avstånd (se Figur 2.2).
• Träd: Trädstrukturen består av flera kombinerade stjärnnät som kopplats samman, ofta blandat fiberoptik med partvinnade kablar. Används när man delar upp ett komplext system i systemsegment.
• Linje: Linjestruktur kan åstadkommas med en switch i direkt anslutning till enheten eller med en i enheten inbyggd switch.
• Ring: Om början och slutet av en linjestruktur kopplas samman, får man en ringstruktur (redundans), se Figur 2.2. Den kan användas i system med höga krav på tillgänglighet, som skydd mot bland annat kabelbrott eller fel på en nätverkskomponent [1].
I praktiken är nätverken en blandning av dessa strukturer, de kan implementeras och användas med PROFINET antingen med fiberoptiska- eller kopparkablar.
Figur 2.2: Stjärn- och ringtopologi
2.4. Adresser Kapitel 2. Ethernet
2.4 Adresser
2.4.1 MAC-adresser
Varje enhet adresseras med en unik MAC-adress. MAC-adressen har en fast längd på 48 bitar (6 bytes), där de första 24 bitarna är ett OUI-nummer (Organizatio- nally Unique Identifier) och resterande 24 bitar är en tillverkarspecifik del, enligt Figur 2.3. Detta gör att på samma OUI-nummer kan man ha upp till 16777214 enheter/produkter. För att garantera att det inte finns fler än en enhet med en specifik MAC-adress, ligger adressen kodad i hårdvaran.
Figur 2.3: Utseende på MAC-adress
2.4.2 IP-adress
IP-adressen är en fix komponent av IP-protokollet och är oberoende av hårdvaran som används. IP-adressen används som mottagarens adress och sändarens adress i varje paket som skickas med IP-protokoll. För att försäkra sig om att varje paket har endast en mottagare, måste alla enheter ha en egen unik adress.
Format
IP-adressen består av fyra bytes, och varje byte separeras från den föregående med en punkt. Detta ger följande struktur där ett nummer mellan 0 och 255 representerar XXX: XXX.XXX.XXX.XXX. (Till exempel 192.168.147.112)
IP-adressen består av två dolda delar: en nätverks (network) ID och en värd (host)
ID, vilka tillsammans bildar IP-adressen. Nätverks-ID används för att adressera
nätverket och värd-ID för att adressera till en enhet i nätverket.
Kapitel 2. Ethernet 2.5. Protokoll
Subnet mask
Subnet masken introducerades för att dela IP-adresser till nätverks komponenter och enhets komponenter. Den har samma struktur som en IP-adress, men markerar endast delen av IP-adress som representerar nätverksnumret. Tabell 2.1 visar de vanligaste varianterna av subnet masken. Viktigt att komma ihåg är att alla enheter som är kopplade via en switch ingår i samma subnet.
Tabell 2.1: Subnet mask
Nätverks klass IP-adress Nätverk/Värd ID Subnet mask