Sändare Föreläsning 3 Länk Mottagare Mål Behandla procedurer som behövs för överföring på en länk Förstå linjekodningens grundprinciper Förstå hur modulering fungerar Förstå orsaken till inramning av information Känna till olika inramningsätt Förstå betydelsen och behovet av kontrolldata och nyttolast Mål (fortsättning) Adressering Förstå orsakerna till användning av felkontroll Förstå olika felkontrollssystem Förstå iden med flödeskontroll Känna till flödeskontrollförfaranden förstå grundprinciperna i token ring och CSMA/CD (Ethernet) Datakodning (Data encoding) analog ~ kontinuerlig diskret ~ digital data propageras med elektriska signaler analog signal: kontinuerlig variabel elektromagnetisk signal digital signal: en serie spänningspulser Fyra möjligheter: analog data, analog signal analog data, digital signal (digitalisering, codec) digital data, analog signal (modulering, modem) digital data, digital signal 1
Terminologi signalelement vågform som representerar ett visst bitvärde eller värdena på ett block av bitar bittakt antalet bitar som överförs per sekund b/s B/s = byte/s signaleringstakt signalelement per sekund, enheten kallas baud linjekodning processen att representera bitar med hjälp av amplituddiskreta pulser modulering kontinuerliga vågformer används för att representera bitarna Linjekodning (1/7) Enklaste sättet vore att repesentera en etta med en hög spänningspuls och en nolla med nollnivån? Aspekter att beakta: synkronisering (mottagaren måste veta när en bit börjar och slutar) representerar signalnivån en etta eller en nolla störningar: hur bestämma passliga signalnivåer på basis av känsligheten för störningar hur utnyttja signalens spektrum möjligast effektivt kostnad och kompexitet Linjekodning (2/7) RZ en etta representeras av en puls NRZ (NRZ-L) representera det ena binära värdet med en negativ puls, den andra med en positiv NRZ-I en etta representeras med en ändring i signalnivån (hög till låg eller låg till hög) 2
Linjekodning (3/7) Bipolar AMI ingen signal representerar 0 en alternerande negativ eller positiv puls representerar en 1 användning, t. ex telefoni Pseudoternary invers till Bipolar AMI Linjekodning (4/7) 0 1 0 0 1 1 0 0 0 0 1 1 RZ NRZ Bipolar AMI Linjekodning (5/7) Manchester en övergång i mitten av tidsintervallet låg till hög = 1 hög till låg = 0 förser samtidigt klockningsinformation Differential Manchester övergång i början av tidsintervallet = 0 avsaknad av övergång i början av tidsintervallet = 1 övergången i mitten av intervallet förser klockningsinformation 3
Linjekodning (6/7) 0 1 0 0 1 1 0 0 0 0 1 1 Manchester Differential Manchester Linjekodning (7/7) Övriga format B8ZS samma som bipolar AMI, utom att varje sträng av åtta nollor ersätts med en sträng innehållande två kodfel HDB3 samma som bipolar AMI, utom att varje sträng av fyra nollor ersätts av ett eller två kodfel Modulering (1/2) Bärvåg en kontinuerlig signal med konstant frekvens bärvågen moduleras för att representera data Amplitudmodulering två amplitudnivåer (en av amplituderna ofta 0) Frekvensmodulering två olika frekvenser används Fasmodulering ändra fasen då en etta skickas Om man har fasskiften med 90 grader varje signal representerar två bitar 4
Modulering (2/2) 0 1 0 0 1 1 0 0 0 0 1 1 Transmissionsinramning Visat hur bitar kan överföras när källan är på. Hur visar man att källan är av? RZ, NRZ och AMI använder avsaknad av signal för att representera bitvärdet 0. Lösning: rama in bitarna i meddelandet teckenbaserad inramning bitbaserad inramning En transmissionsram består av meddelande styrdata data för feldetektering Ramarna kan ha konstant eller variabel längd Teckenbaserad inramning Kräver specialtecken för överföringen SYN synkroniseringssymbol, skickas mellan meddelanden STX början på texten ETX slut på texten CRC cyklisk redundans check, för feldetektering SYN SYN STX Styrdata Meddelande ETX CRC Transmissionsram SYN 5
Bitbaserad inramning Början och slutet av ramen markeras med en sk flagga till exempel 01111110 (7E hexadecimalt) flaggan får ej förekomma inuti ramen: använd bitfyllnad efter fem 1:or i följd läggs en 0 in, 1111110111110 blir 111110101111100 mottagaren kan unikt detektera ramens två flaggor och sedan ta bort en 0:a efter varje sträng med fem 1:or i följd Ytterligare användningar 7E kan skickas oavbrutet då sändaren är inaktiv för att bibehålla synkronisering (klockning) på länken 01111111+ (7F) indikerar avbruten sändning 7FF+ visar att länken är inaktiv Asynkron transmission sändarens och mottagarens klockor är oberoende (asynkrona) samplingen sker alltså enligt mottagarens klocka en startbit, en fast antal bitar (oftast fem till åtta), möjligen en paritetsbit, och en stopbit mottagaren kan synkronisera till startbiten Synkron transmission sändarens och mottagarens klockor synkroniseras man bör kunna bestämma början och slutet på datablocket teckenbaserad och bitbaserad inramning jämförelse av synkron och asynkron transmission effektiviteten låg för asynkron (många kontrollbitar för varje överfört tecken) synkron transmission mera effektiv och därför mera attraktiv 6
Flödeskontroll Tekniker för att garantera att sändaren inte överväldigar mottagaren med information Olika metoder förekommer, men baserar sig på att sändaren måste få bekräftelse från mottagaren vänta på bekräftelse innan nästa ram sänds (stopand-wait ett visst antal ramar kan sändas utan att vänta på bekräftelse (sändarfönster) Felkontroll Det kan uppstå fel under överföringen pga av störningar Mekanismer för att detektera och korrigera fel behövs Om inte korrigering används, kombineras feldetektering med omsändning Omsändning (automatic repeat request, ARQ) sker vid negativ bekräftelse mottagaren begär omsändning av förlorade eller felaktiga paket avsaknad positiv bekräftelse paket som inte bekräftats före en given tidsfrist antas ha kommit bort Forward Error Correction Felkorrigering Backward Error Correction feldetektering och omsändning Felkorrigering (1/2) Inkludera tillräckligt med kontrollinformation för att kunna detektera och korrigera felen Hammingkodning t. ex (7,4): 4 bitar skyddas av tre bitars felkorrigeringskod korrigerings- och detekteringsförmågan beror på Hammingkodningens matematiska egenskaper 7
Felkorrigering (2/2) Andra korrigeringsmetoder Reed-Solomonkodning faltningskodning (convolutional codes) Problem: kontrollinformationen ökar den överförda informationen acceptabel korrigering reduserar den effektiva bittakten med ca 50 % feldetektering har ansetts vara mera effektivt Trådlös kommunikation inte motståndskraftig mot störningar Även sändning till många kräver FEC Nya effektivare felkorrigeringsmetoder har utvecklats T ex turbo coding Feldetektering När en ram tagits emot, brukar man verifiera att den är korrekt Enklaste kontrollen: en paritetsbit (jämnt antal 1:or i ramen) Cyklisk redundans check lägg L bitar till meddelandet så att det blir jämnt delbart med ett givet tal talet kallas generator och skrivs ofta som ett polynom med koefficienterna 0 och 1: g(x) = x L +g L-1 x L -1 + g 1 x +1 L:te och 0:te termerna finns alltid med (koefficienter 1) Feldetektering, exempel Exempel meddelande M = 0110100101010 m(x) = x 11 +x 10 +x 8 +x 5 +x 3 +x 1 = 0x 12 +1x 11 +1x 10 +0x 9 +1x 8 +0x 7 +0x 6 +1x 5 +0x 4 +1x 3 +0x 2 +1x 1 +0x 0 generator g(x)= x 3 + x 2 + 1 (3 bitar CRC) CRC = rest {m(x) x L / g(x) } = rest {x 14 +x 13 +x 11 +x 8 +x 6 +x 4 / x 3 + x 2 + 1} = x+1 011 skicka M 2 3 + CRC = 0110100101010 011 8
Datalänk Protokoll Exempel på datalänk protokoll: HDLC (High-level data link control) Q.921 ~ (LAP-D) Link Access Procedure, D channel del av ISDN Begrepp propageringstid, transmissionstid S: fysiskt avstånd V: fortskridningshastighet N: mängden bitar som skall sändas R: bittakten på länken S T = p V N T = x R Närnät Local Area Network (LAN) ett nätverk inom ett begränsat geografiskt område, t. ex. ett kontor administreras ofta av inom företaget ett nätverk där paket skickas broadcast alla stationer kopplade till överföringsmediet kan motta informationen som sänds 9
Tidsdelad länk Antag att ett paket är längre än vad länken är början kommer att nå mottagaren innan slutet skickats endast en sändare kan skicka paket åt gången två aktiva sändare ger en kollision: signalerna blandas och respektive mottagare kan inte urskilja något korrekt meddelande (CRC) hur bestämmer man vem som får skicka? förhindra kollision hantera kollision då den uppstår Två vanliga principer pollettring CSMA/CD buss 1 1 till 2 Pollettring (1/2) 3 2 Ta emot Sänd Princip en pollett ges från sändare till sändare polletten utgörs t.ex. av slutflaggan 01111110 om en sändare inte har paket att skicka vidarebefodras polletten annars tar sändaren polletten och skickar paketet en tagen pollett utgörs av flaggan 01111111 (sista biten inverterad) mottagaren kopierar in paketet, medan sändaren tar bort det från ringen en ledig pollett skickas när paketets sista bit är tillbaka Pollettring (2/2) Utvecklad hos IBM i Zürich, standardiserad som IEEE 802.5 IBM: produkter för 4 Mb/s och 16 Mb/s, kanske mer FDDI: ISO standard för 100 Mb/s optisk ring 10
Ethernet (1/4) Carrier sense, multiple access with collision detection (CSMA/CD, standard IEEE 802.3) lyssna på länken, om ingen signal detekteras är det klart att sända sänd paketet men lyssna samtidigt på länken sluta sända omedelbart om signalen är störd vänta en slumpmässigt vald tid i intervallet (0, T) pröva på nytt att sända, sluta vid kollision, fördubbla vänteintervallet 1 1 till 2 Ethernet (2/4) 2 3 3 till 2 1 Avstånd 1 upptäcker kollisionen TId 3 3 upptäcker kollisionen 3 sänder ånyo Ethernet (3/4) IEEE 802.3 många fysiska kabel- och bandbreddsoptioner ex 10BaseT och 100BaseT, noderna kopplas med en hub eller en switch nyare optioner erbjuder allt bättre kapacitet t ex Gigabit Ethernet 11
Ethernet (4/4) Addressering 48 bitar i princip unika addresser för varje nätverkskort (nätverkssgränssnitt) består av identifikation av framställare samt en del unik för kortet ifråga Ethernetpaketen har en CRC i slutet Maximum Transmission Unit (MTU) 1500 Punkt-till-punkt länkar (point-topoint) specifierade for Internet Serial Line IP (SLIP) för att koppla maskiner i hemmet till Internet över modem Point-to-Point Protocol (PPP) ett mer utvecklat protokoll än SLIP 12