2.1 DATALINK-NÄTVERK Fysisk koppling av värdar Hårdvarubyggklossar Ett nätverk uppbyggs av noder och länkar Noder: CPU Cache nätverks adaptor Minne I/O buss Nätverks adaptorn överför data mellan nätets länk och nodens minne. Styrs av en device driver Minnets hastighet, ej processorns bestämmer systemets hastighet. vid processering av meddelanden bör minnesaccesserna minimersas
2.2 Länkar: Implementeras med olika medier Tvinnade par Koaxialkabel Optisk fiber Luft Typisk bandbredd och används för att transportera signaler - elektromagnetiska vågor som rör sig med ljusets hastighet - där data inkodats. Avstånd Tvinnade par, kategori 5 10-100 Mbps 100 m Koaxial kabel, thin-net 10-100 Mbps 200 m Koaxial kabel, thick-net 10-100 Mbps 500 m optisk fiber, multimode 100 Mbps 2 km optisk fiber, singel-mode 0.1-10 Gbps 40 km Trådade länkar Antalet bitströmmar som samtidigt kan kodas på en länk är för en multipel-accesslänk ett alla noder som är kopplade till länken måste dela den i tid dvs. använda den turvis. För en punkt-till-punkt-länk är antalet vanligen två, en ledning i vardera riktningen (full duplex). Är antalet bara ett (half duplex) använder de två noderna länken turvis. Trådlösa länkar Alla trådlösa länkar delar på en ledning - etern: frekvens rum - en länk utnyttjar ett bestämt frekvensband - hur långt en signal bär är beroende av strömstyrkan i sändningen - genom att begränsa denna begränsas det området signalen täcker. Problem: Avlyssning, interferens Lösning: Spread spectrum teknik, kräver ett bredare frekvensband än vad som eljest skulle behövas, t.ex. Frequency hopping Direct sequence
2.3 Frequency hopping spread spectrum (frekvenshoppning) Frekvensbandet för sändningen byts med jämna mellanrum. Ändast sändare och mottagare känner till vilket frekvensband som utnytjas i vilket skede: Sändare och mottagare använder samma slumptalsgenerator för att generera sekvensen av frekvensband (inom ett visst område) som används Sändare och mottagare måste först komma överens om ett tal (seed) för att starta slumtalsgenereringen samt synkronisera starten (sker på en fördefinierad frekvens) Löses problemet? Direct sequence spread spectrum För varje bit sänds n bitar. Dessa (n -bit chiping code) fås genom att utföra xor-operationen på biten som skall överföras och en n bitar lång sekvens 1:or och 0:or genererade av en slumptalsgenerator. Sändaren och mottagaren använders samma slumptalsgenerator och kommer överäns om ett startvärde såsom vid frekvenshoppning. Databitar skadade av interferens kan ofta rekonstrueras m.h.a. den redundanta informationen som ingår i den sända chiping coden. sända databitar: 111111 000000 000000 111111 111111 000000 000000 111111 6 bitars slumpsekvens: 101101 001001 111010 101100 xor sända bitar: 010010 001001 111010 010011 störning mottagna bitar: 010010 001111 111010 010011 samma slumpsekvens: 101101 001001 111010 101100 xor 111111 000110 000000 111111 rekonstruktion motagna databitar: 111111 000110 000000 111111
2.4 Fysisk koppling av värdar 1. Kodning Överföring av en bitström över en länk (funktion på nivå 1 i OSI) Elektromagnetiska vågor används för att transportera alla typer av information, också binära data. Ljusets hastighet är beroende av mediet: vacum 3. 10 8 m/s koppar optisk fiber 2.3. 10 8 m/s 2. 10 8 m/s Frekvensen [Hertz] för en elektromagnetisk våg anger med vilken hastighet vågen oscillerar. ljusets hastighet i mediet frekvens = våglängd amplitud tid Att koda binära data i signalen kan ses som skeende i två nivåer: Modulering: genom att variera frekvensen, amplituden eller fasen för vågen åstadkoms transport av information Ignorera moduleringen, antag att vi har två signaler - hög och låg - kunde t.ex. på en kopparkabel vara två olika strömstyrkor (volt)
2.5 Kodning av binära data på överföringssignalen Utförs av en signaleringskomponent som kodar bitar till de signaler som transporteras över länken i sändaren och avkodar signalerna till bitar i mottagaren signaleringskomponent Både sändaren och mottagaren styrs av en klocka nod adaptor 110010 adaptor 110010 nod signaler bitar I enklaste fall kodas en bit genom att sändaren sätter den strömstyrka på länken som representerar biten under en klockcykel. Bitarna avkodas genom att mottagaren samplar (avläser strömstyrkan) länken under varje clockcykel. Problem: Två klockor går aldrig exakt lika synkroniseras: klockorna måste Varje gång signalen ändrar (från hög till låg eller tvärtom) sker klockcykelbyte i sändaren. Dvs. mottagaren synkroniserar sin klocka då signalen ändrar. För att avgöra om en mottagen bit är en 0:a eller 1:a jämför mottagaren strömstyrkan på länken med ett medeltal under den senaste tiden. Om strömstyrkan på länken är betydligt lägre/högre än medeltalet tolkas biten som 0/1. Problem: baseline wander: Medeltalet är beroende av de bitar som har sänts. långa sekvenser av hög/låg signal bör förhindras.
2.6 Kodnings metoder NRZ non-return to zero kodning: Tilldelar 1 den höga signalen och 0 den låga. problem: långa sekvenser av 0:or eller 1:or leder till: feltolkning av en mottagen bit pga. baseline wander feltolkning av antalet mottagna bitar pga. sändarens och mottagarens klockor ej synkroniseras tillräckligt ofta NRZI = non-return to zero inverted kodning: En 1:a kodas av en transition (från nuvarande signal till den andra) och en 0:a av att nuvarande signal ej förändras. Löser problemet med långa sekvenser av 1:or. Manchester-kodning: bitar klocka NRZ bitar klocka NRZI Sänder exklusiv-or av bitarnas NRZ-kod och klockan. 01000110000011010 01000110000011010 Differential Manchester-kodning: En 1:a kodas med en transition i början och mitten av klockcykeln och en 0:a med en transition i mitten av klockcyceln. Manchester-kodningarna löser problemet med långa sekvenser av både 1:or och 0:or men kräver dubbelt mera bandbred än NRZ- och NRZI-kodning bitar klocka NRZ Manch. Dif.man 01000110000011010
2.7 4B / 5B-kodning: Extra bitar insätts i bitströmmen så att långa sekvenser av 0:or ej förekommer: Bitarna grupperas i grupper på fyra bitar som konverteras till fem bitar på följande sätt Dvs. i den sända bitströmmen finns högst tre 0:or i följd. NRZI-kodning används. Löser problemet med långa sekvenser av både 1:or och 0:or och bara 20% av bandbredden går förlorad. 4-bits 5-bits kod kod 0000 11110 0001 01001 0010 10100 0011 10101 0100 01010 0101 01011 0110 01110 0111 01111 1000 10010 1001 10011 1010 10110 1011 10111 1100 11010 1101 11011 1110 11100 1111 11101 baud = signaler per sekund bps = bitar per sekund
2.8 2. Inramning (framing) Indelning av en bitström i ramar (funktion på nivå 2 i OSI) 110101000101111011010 nod adaptor adaptor nod 10101 10101 10101 10101 10101 10101 bitar ramar Noderna utbyter ramar, inte bitströmmar: Adaptorn i sändaren läser den ram (meddelande) som skall sändas ur sändarens minne. Mottagarens adaptor samlar ihop bitarna för en ram och lagrar ramen i mottagarens minne. Problemet är att veta var en ram slutar och nästa börjar i bitströmmen.
2.9 Inramnings metoder: Teckenorienterade inramnings protokoll (BISYNC, PPP, DDCMP) Bitströmmen tolkas som bestående av en sekvens tecken. Specialtecken används för att utmärka en rams början. För att utmärka data används speciella tecken (BISYNC) eller så anges antalet datatecken som ramen innehåller (DDCMP). 8 8 8 8 8 16 SYN SYN SOH Header STX Body ETX CRC SYN = Synchronization DLE = Data-Link-Escape SOH = Start Of Header STX = Start of TeXt ETX = End of TeXt CRC = Cyclic Redundancy Check BISYNC = Binary Synchronous Communication 8 8 8 16 16 8 flag Adr Cont Prot. Payload CRC flag PPP = Point-to-Point Protocol 8 8 8 14 42 16 SYN SYN clas Count Header Body CRC DDCMP = Digital Data Communication Protocol Problem: Datafält kan innehålla specialtecken. Lösning: character stuffing: Ett specialtecken (DLE) används framför ett specialtecken i datafältet
2.10 Bitorienterade inramnings protokoll (HDCL) Ett speciellt bitmönster används för att utmärka en rams början och slut (sänds även då linjen är ledig). 8 16 16 8 01111110 CRC Header Body 01111110 HDCL = High-Level Data Link Control Protocol Problem: datafältet kan innehålla bitmönstret ifråga. Lösning: bit stuffing: Sändaren lägger till en 0:a efter fem 1:or i följd. Mottagaren avlägsnar en 0-bit efter fem 1:or i följd. Sex 1:or i följd, följda av en 0:a tolkas av mottagaren som bitmönstret, medan sju 1:or i följd tolkas som bitfel. Obs! Både tecken och bit stuffing medför att ramarna varierar i storlek ty storleken är beroende av innehållet.
2.11 Klockbaserad inramning (SONET) Omfattar kodning, inramning och multiplexering Vad medför skilnaden? Kodning: Overhead-bitarna kodas i NRZ. Payload-bitarna scramblas (för att tillräckligt många transitioner 1/0 skall ingå):exclusiveor-operationenutförspå databitarna och ett speciellt 127 bitar långt bitmönster. Kodas i NRZ. Inramning: De första två bytarna i en ram innehåller ett speciellt bitmönster. Ram storleken är fast (9 90=810 B för en STS-1 länk, N 810 B för en STS-N). Länkhastigheterna är multipler av STS-1-länkens hastighet, dvs. en STS-N-länk har hastigheten N 51.84 Mbps 9 90 8 Varje ram är 125 µs lång, dvs. en STS-N-ram innehåller N 810 bytar. Multiplexering: overhead payload Flera låghastighets länkar kan interfolieras på en höghastighets länk. I en STS-N eller STS-Nc ram kan t.ex. N st STS-1-ramar interfolieras: En STS-1-ram bildas av vart N:te tecken i STS-N-ramen. I en STS-Nc ram länkas overhead / data fälten ur N st STS-1- ramar till en STS-N-rams overhead / data fält. 9 90B ram för en STS-1 länk (51.84 Mbps) SONET = Synchronous Optical Network -------------------------- 51.84 10 6 b -------- = 125µs b s