Datorteknik Protokoll och fältbussar

Download Report

Transcript Datorteknik Protokoll och fältbussar

Varför protokoll?
•
•
•
När datorer ska kommunicera uppstår en rad liknande frågeställningar för att
de ska kunna förstå varandra. Eftersom datorer dessutom inte kan tolka
sådant som de inte är instruerade att tolka så är det ändå viktigare att de
kommunicerande datorerna är överens om hur det ska gå till.
Ett kommunikationsprotokoll bestämmer en samling regler för hur en viss typ
av kommunikation ska gå till.
Dessa regler innefattar typiskt sådana saker som:
–
–
–
–
–
–
–
–
–
–
vilken typ av kontakt som ska användas
vilken typ av kabel
vilka spänningsnivåer
hastigheten på överföringen
synkronisering
vilken ordning saker ska sändas
hur mottagaren ska vara säker på att det inte blivit något fel
vad som ska hända om det blir fel
vad som ska hända om trafiken avbryts
hur informationen ska kodas
Vi vet att ALLA kan!
LearnWARE Datorteknik
1
Simplex
• I de fall kommunikationen
endast går i ena riktningen
kallas detta för simplex.
• Några vanliga exempel på
kommunikation som sker med
simplex är:
• Radio- och TV-utsändningar
(även om det idag i och för
sig går att ringa/sms:a etc till
många radio- och TV-program
så räknas det ändå dit).
• Fjärrkontroller.
Vi vet att ALLA kan!
LearnWARE Datorteknik
2
Halv duplex
•
•
•
I de fall kommunikationen går i båda
riktningarna, men inte kan göra det
samtidigt, kallas detta för halv duplex.
Detta är vanligt för all kommunikation där
det fysiska kommunikationsmediet inte
fungerar att använda i båda riktningarna
samtidigt och där det inte går att ha ett
exemplar för varje riktning. Många typer
av radiobaserad kommunikation såsom
WLAN eller kommunikationsradio är sådan
och det är även vanligt för fältbussar.
Kabelbaserad Ethernet kan också vara halv
duplex även om det numera är ganska
ovanligt.
Vid halv duplex är det viktigt att alla
inblandade enheter är överens om vilken
enhet som får sända när.
Vi vet att ALLA kan!
LearnWARE Datorteknik
3
Full duplex
•
•
•
I de fall kommunikationen går i båda
riktningarna och kan göra det
samtidigt kallas detta för full duplex.
Detta kräver att det fysiska
kommunikationsmediet antingen går
att utnyttja i båda riktningarna
samtidigt, eller att man har minst
ett exemplar för varje riktning.
För kabel och fiber går det
exempelvis att ha en kabel eller
fiber för varje riktning, eller så kan
man för fiber använda ljus med olika
våglängd i de båda riktningarna. Om
radiobaserad kommunikation ska
vara i full duplex behöver de båda
riktningarna använda olika
frekvenser.
Vi vet att ALLA kan!
LearnWARE Datorteknik
4
OSI-modellen
•
•
•
•
Detta är en samling riktlinjer för hur man skall dela in problemet i mindre
delar. Det är inte meningen att följa dessa riktlinjer slaviskt i varje
sammanhang utan en rekommendation.
I OSI-modellen delas problemet upp i 7 delar.
Det är inte nödvändigt att använda alla delar i en viss situation, exempelvis
använder de flesta fältbussar bara nivå 1, 2 och 7.
En del protokoll använder inte denna modell som mall överhuvudtaget, det
går dock oftast att hitta likheter med denna modell i alla fall.
Vi vet att ALLA kan!
LearnWARE Datorteknik
5
OSI-modellen nivå 1
•
Nivå 1 har hand om den fysiska kommunikationen, här beskrivs
hårdvaran.
–
–
–
–
–
Seriell/parallell, synkron/asynkron etc.
Kontaktdon och stiftplacering.
Kabeltyp och terminering.
Spänningsnivåer.
Överföringshastighet.
Vi vet att ALLA kan!
LearnWARE Datorteknik
6
OSI-modellen nivå 1
•
Det finns ett flertal protokoll som beskriver olika typer av
kommunikation på nivå 1.
–
–
–
–
–
RS232 (vanlig serieport i datorn)
RS485 (används i många fältbussar)
Ethernet 10base2 (10Mbit, koax RG58)
Ethernet 100T (100Mbit, partvinnad kabel)
Ethernet 1000F (1Gbit, fiber)
Vi vet att ALLA kan!
LearnWARE Datorteknik
7
OSI-modellen nivå 2
•
•
Denna nivå, länknivån, beskriver hur hårdvaran skall utnyttjas, av
vem och när.
Här beskrivs flödeskontroll och accessmetod, vid halv duplex är det
denna nivå som håller reda på vem som sänder för närvarande.
– CSMA/CD
– Token buss
•
•
Om det är fler än två enheter kopplade tillsammans behövs det
någon form av adressering och då definieras detta på nivå 2.
En mycket viktig nivå i fältbussar.
Vi vet att ALLA kan!
LearnWARE Datorteknik
8
OSI-modellen nivå 3
•
•
Nivå tre beskriver vad som skall hända om flera nätverk skall kopplas ihop
och trafiken kunna flyta mellan dessa nätverk.
Ett välkänt protokoll på denna nivå är IP (Internet Protokoll) och är det som
får kommunikationen över internet att fungera. Internet består av många
hopkopplade nätverk spridda över hela jorden.
Vi vet att ALLA kan!
LearnWARE Datorteknik
9
OSI-modellen nivå 4
•
•
•
Denna nivå definierar transporten från ändpunkt till ändpunkt, genom alla
nätverk det skall passera.
Här kan kontrolleras sådana saker som att allt kommer fram, felfritt och i rätt
ordning.
Kända protokoll på denna nivå är TCP och UDP.
Vi vet att ALLA kan!
LearnWARE Datorteknik
10
OSI-modellen nivå 5
•
•
Här hanteras sessioner, dvs. allt som har med att koppla upp, hålla reda på
och sedan slutligen koppla ner en förbindelse.
Exempelvis om du kör två webbläsare i din dator öppnas det två sessioner, en
för varje läsare. Varje sådan session håller sedan reda på vad som är hämtat
och inte och nivå 5 är det som dirigerar rätt paket data till rätt webbläsare.
Vi vet att ALLA kan!
LearnWARE Datorteknik
11
OSI-modellen nivå 6
•
•
•
Här formas informationen om ifall detta behövs så att den presenteras på
rätt sätt.
Eventuell kryptering och annan översättning sker på denna nivå.
Många protokoll har inget behov av att översätta något och då behövs inte
heller denna nivå.
Vi vet att ALLA kan!
LearnWARE Datorteknik
12
OSI-modellen nivå 7
•
•
•
Applikationsskiktet slutligen beskriver vilka tjänster som finns att tillgå för
programmeraren.
Typiska protokoll på denna nivå är HTTP, FTP, POP3, SMTP.
Denna nivå finns nästan alltid i en eller annan form i alla protokoll.
Vi vet att ALLA kan!
LearnWARE Datorteknik
13
Checksumma
•
•
•
Precis som en paritetsbit används för att kontrollera att ett enskilt tecken
förs över korrekt så används checksumma för att kontrollera en större mängd
tecken, ett helt paket.
– Checksumman består av ett eller flera tecken som räknas ut av värdet på
de tecken som ingår i paketet med någon formel.
– Checksumman skickas sedan över till mottagaren som gör samma
beräkning och jämför sitt uträknade värde med det skickade.
– Om resultatet av uträkningen stämmer överens med det skickade värdet
antar man att allt är korrekt överfört.
Det är både möjligt, och i vissa fall smart, att använda både paritet och
checksumma samtidigt.
Det finns alltid en viss liten risk att ett fel inte upptäcks.
Vi vet att ALLA kan!
LearnWARE Datorteknik
14
Checksumma
•
•
Det finns många olika formler man kan använda för att beräkna en
checksumma.
– Enkel summering, när summan överstiger 255 (maxvärdet för ett tecken)
så låter man summeringen slå runt och börja om på noll.
– XOR – funktion. En beräkning som går till på samma sätt som för
paritetsbit, fast åt ”andra hållet”.
– CRC (Cyclic Redundance Check), en mer avancerad metod som skapar
ganska bra checksummor med liten risk för fel.
Ju fler bitar en checksumma har desto bättre är den oftast på att upptäcka
fel, men det har en del med själva formeln att göra också.
Vi vet att ALLA kan!
LearnWARE Datorteknik
15
Overhead
•
•
•
För att överföra en viss mängd data måste man i regel skicka lite till.
– Vi måste berätta vad det är som kommer, någon slags inledning.
– Vi måste oftast berätta hur mycket vi tänker skicka, alternativt berätta
när vi är klara.
– Vi måste normalt kontrollera att det blev rätt.
– Vi måste eventuellt hålla reda på ordningen på det som skickas.
– Vi måste eventuellt ha med adresser på mottagare och avsändare i
meddelandet.
Allt detta gör att det skickas mer än det rena nyttodatat, det som kommer
utöver kallas för overhead.
Mängden overhead i ett protokoll måste tas med i beräkningarna när man
avgör hur snabbt det är på att skicka information.
Vi vet att ALLA kan!
LearnWARE Datorteknik
16
Ethernet
•
•
•
•
•
Äldre tiders nätverk baserades på att koppla alla datorer i nätverket till en
lång koaxialkabel. Då kunde alla datorer skicka till varandra.
För att en dator skulle veta att ett meddelande var till just den datorn så
förses alla nätverkskort med var sin adress kallad MAC-adress (Medium Access
Control).
Denna adress är 6 byte (48 bitar) lång och det skall bara finnas ett
nätverkskort i världen med en viss MAC-adress.
MAC-adressen programmeras in i nätverkskortet vid tillverkningen.
Adressen FF-FF-FF-FF-FF-FF används för broadcast, dvs. alla datorer i
nätverket skall ta emot meddelandet.
Vi vet att ALLA kan!
LearnWARE Datorteknik
17
IP
•
•
•
•
•
IP (Internet Protocol) är speciellt framtaget med tanke på att kunna ta sig
mellan många hopkopplade nätverk via ett antal routrar.
Grundtanken är att varje router skall kunna räkna ut nästa steg längs vägen
och skicka ett paket vidare, men måste inte ha en helhetskontroll på var den
slutliga destinationen finns.
Det skall även hantera om en förbindelse slutar fungera och då kunna ta en
annan väg i stället.
IPv4, den just nu rådande standarden har adresser som är 4 byte (32 bitar)
långa, detta räcker till max ca 4300000000 datorer, i praktiken färre eftersom
det inte går att utnyttja alla dessa fullt ut och routrarna måste ha en adress
för varje när de sitter i.
Den kommande standarden IPv6 har adresser som är 128 bitar långa och det
lär då räcka ett bra tag framöver.
Vi vet att ALLA kan!
LearnWARE Datorteknik
18
IP-Adresser
•
•
•
•
•
•
IPv4 adresser skrivs normalt som fyra tal mellan 0 och 255 åtskilda med
punkter, exempel: 192.168.0.17
Varje IP-adress är delad i två delar, en nätadress (network adress) och en
värdadress (host adress).
Alla enheter i samma nät skall ha samma värde på den del som utgör
nätadressen och olika värde på den del som utgör värdadressen.
Det som avgör vad som tillhör nät- och vad som tillhör värd-delen av adressen
är nätmasken.
Nätmasken är lika lång som adressen, men börjar med ett antal ettor och
övergår sedan i ett antal nollor (endast en övergång). Den del som är ettor i
nätmasken är nätdelen av adressen, den del som är nollor i nätmasken är
värddelen av adressen.
Exempel på en nätmask är 255.255.255.0.
Vi vet att ALLA kan!
LearnWARE Datorteknik
19
TCP
•
•
•
•
På nivån över IP finns ett antal andra protokoll, ett av dessa är TCP.
Detta protokoll tar ett övergripande ansvar för att allt kommer fram rätt och
i rätt ordning.
TCP kan hantera omsändningar om ett paket kom fram fel eller inte alls.
Paketen numreras för att hålla reda på om de kommer fram dubbelt eller i fel
ordning.
Numreringen är också en hjälp vid omsändningar eftersom många paket kan
vara på väg samtidigt.
Vi vet att ALLA kan!
LearnWARE Datorteknik
20
UDP
•
•
•
UDP (User Datagram Protocol) är ett protokoll på OSI modellens nivå 4 precis
som TCP. Protokollet är till för applikationer som behöver kommunicera över
internet men där funktionerna i TCP att upprätta en förbindelse och
hantering av felaktig eller utebliven överföring inte behövs.
UDP skickar i princip bara vidare paketen till/från IP, med det tillägget att
det har portar på samma sätt som TCP och att det finns en enkel
kontrollsumma för felhantering.
Fördelen med UDP är att det är betydligt snabbare än TCP och det används
därför ofta till applikationer där tiden är en viktigare parameter än att exakt
allt måste överföras korrekt.
Vi vet att ALLA kan!
LearnWARE Datorteknik
21
HTTP
•
•
•
•
HTTP (HyperText Transfer Protocol) är ett protokoll i huvudsak på OSImodellens nivå 7. Protokollet utvecklades ursprungligen för att hämta
webbsidor från en server (därav början på namnet, HTML=HyperText Markup
Language, dvs det var filer av denna typ som skulle hämtas).
Protokollet bygger på att klienten (vanligtvis en webbläsare) skickar en
begäran till servern som sedan denna svarar på. Efter att begäran är besvarad
stängs förbindelsen.
Centralt i varje begäran är ett verb, de två vanligaste verben är GET och
POST, men det finns ytterligare några definierade.
HTTP använder normalt TCP port 80 på serversidan.
Vi vet att ALLA kan!
LearnWARE Datorteknik
22
HTTPS
•
•
•
•
HTTPS (HyperText Transfer Protocol Secure) är en krypterad variant av HTTP.
HTTPS är egentligen inte ett eget protokoll utan det är HTTP som i stället för att ansluta
direkt till TCP ansluter till något av protokollen SSL (Secure Socket Layer) eller TLS
(Transport Layer Security). Båda dessa är protokoll som arbetar på OSI-modellens nivå 6
och som sedan i sin tur ansluter till TCP.
På serversidan använder oftast HTTPS TCP port 443.
För sidor som använder HTTPS är trafiken skyddad genom kryptering, det går därför inte
att se innehållet som skickas med avlyssning, däremot går det att se att en användare på
en viss dator kontaktat en viss server.
Vi vet att ALLA kan!
LearnWARE Datorteknik
23
FTP
•
•
•
•
•
FTP (File Transfer Protocol) är ett protokoll på OSI-modellens nivå 6 och 7
vars syfte är att föra över filer mellan två datorer.
Protokollet är utformat så att stor vikt har lagts på att översätta filer mellan
olika sätt att lagra dessa, framför allt för filer innehållande text, något som i
dagsläget är av mindre betydelse än det var när protokollet skapades.
För att ansluta till en server måste man logga in med användarnamn och
lösenord, de flesta servrar accepterar dock anonym inloggning där
användarnamnet är ”anonymous” och som lösenord är det vanligt att skicka
sin epostadress (det görs normalt dock ingen kontroll att det verkligen är en
epostadress
Protokollet är lite speciellt genom att det för varje session öppnas två TCP
förbindelser, en för att skicka kommandon om vad som ska göras och en för
att skicka själva filinnehållet. Normalt används TCP port 21 för kontroll och
TCP port 20 för data och det "normala" för FTP är att datakanalen öppnas från
servern. Detta ställer till det när kommunikationen ska ta sig igenom
brandväggar, och framför allt när NAT används.
Ett sätt att hantera problemet är att öppna även datakanalen från klienten,
detta kallas för passivt läge och är något man kan välja på de flesta FTPklienter för att lättare ta sig igenom brandväggar. som används).
Vi vet att ALLA kan!
LearnWARE Datorteknik
24
Industriell IT
•
•
•
•
Förr var alla datorer, både på
kontoret och i industrin, fristående
dvs inte anslutna till något nätverk.
Idag hör det till ovanligheterna om
man hittar en dator som inte är
ansluten i ett nätverk.
Via nätverket har man möjlighet att
utbyta information med alla andra
som är anslutna till samma nätverk
och har man en router kan man
kommunicera med andra nätverk
genom denna enhet.
Oftast delar man data med hjälp av
någon server (filserver, e-post server,
web-server etc).
Vi vet att ALLA kan!
LearnWARE Datorteknik
25
Kommunikation i fabriken
•
•
•
•
I en fabrik har man många enheter
som ska kommunicera med varandra
och det är oftast så att man blandar
olika tekniker beroende på vad det
är för något som man ska skicka
alternativt vilken typ av enheter som
ska kommunicera med varandra.
Kontoret skickar vad som ska
produceras och vill ha information
tillbaka om hur det går för
maskinerna på fabriksgolvet.
Styrsystemen pratar med sina
moduler och enheter som sitter ute i
fält.
De här båda exemplen har olika
angelägenheter som är viktiga för
just deras typ av kommunikation.
Vi vet att ALLA kan!
LearnWARE Datorteknik
26
Fältbussar fördelar
•
•
•
Huvudanledningen till att man
började utveckla fältbussar var att
man ville spara kabel.
I en konventionell anläggning så har
varje signal en egen kabel och när
man på en modern maskin talar om
tusentals signaler som ska hämtas in
eller skickas. Förstår man att det är
intressant om man kunde skicka alla
signaler på samma tråd.
Har man mindre mängd kabel i en
installation, leder det till flera
fördelar.
1. Det går fortare att bygga anläggningen.
2. Det blir mindre dokumentation att
rita/framställa.
3. Mindre felkällor, eftersom det blir mindre
plintar och kablar som kan gå sönder.
Vi vet att ALLA kan!
LearnWARE Datorteknik
27
Fältbussar - diagnostik
•
•
•
Eftersom det är en digital
kommunikation vi pratar om så kan
varje enhet skicka ytterligare
information som kan underlätta
skötsel och felsökning av
anläggningen.
En ventil kan rapportera in att den
börjar få glapp och att det är dags
för service. En I/O enhet kan
rapportera att den har fått
kortslutning på en ingång eller
utgång.
Den här typen av information kallas
diagnostik. När utvecklingen går
framåt blir det mer information som
enheterna klarar av att skicka.
Vi vet att ALLA kan!
LearnWARE Datorteknik
28