Számítógépes Hálózatok 2013

Hasonló dokumentumok
Adatkapcsolati réteg (Data Link Layer) Számítógépes Hálózatok Az adatkapcsolati réteg lehetséges szolgáltatásai

Számítógépes Hálózatok ősz Adatkapcsolati réteg Hibafelismerés és javítás, Hamming távolság, blokk kódok

Frekvencia tartományok. Számítógépes Hálózatok és Internet Eszközök. Frekvencia tartományok rádió kommunikációhoz

Hibafelismerés: CRC. Számítógépes Hálózatok Polinóm aritmetika modulo 2. Számolás Z 2 -ben

Számítógépes Hálózatok 2008

Számítógépes Hálózatok 2012

Számítógépes Hálózatok

Hibafelismerés: CRC. Számítógépes Hálózatok Polinóm aritmetika modulo 2. Számolás Z 2 -ben

Az adatkapcsolati réteg

Hibadetektáló és javító kódolások

Számítógépes Hálózatok. 4. gyakorlat

10. fejezet Az adatkapcsolati réteg

Számítógépes Hálózatok

Számítógépes Hálózatok

7. Adatkapcsolati réteg

Egyszerű simplex protokoll nyugtákkal

A továbbiakban Y = {0, 1}, azaz minden szóhoz egy bináris sorozatot rendelünk

Számítógépes Hálózatok. 5. gyakorlat

* Rendelje a PPP protokollt az TCP/IP rétegmodell megfelelő rétegéhez. Kapcsolati réteg

Hibajavító kódok május 31. Hibajavító kódok 1. 1

Hibajavítás, -jelzés. Informatikai rendszerek alapjai. Horváth Árpád november 24.

Hálózatok Rétegei. Számítógépes Hálózatok és Internet Eszközök. TCP/IP-Rétegmodell. Az Internet rétegei - TCP/IP-rétegek

Diszkrét matematika 2.C szakirány

Az adatkapcsolati réteg

Számítógépes Hálózatok 2010

Számítógépes hálózatok

AST_v3\

Nagy Gábor compalg.inf.elte.hu/ nagy

Számítógépes Hálózatok. 5. gyakorlat

Számítógépes Hálózatok

XII. PÁRHUZAMOS ÉS A SOROS ADATÁTVITEL

Dr. Oniga István DIGITÁLIS TECHNIKA 2

3. gyakorlat. Kettes számrendszer: {0, 1} Tízes számrendszer: {0, 1, 2,..., 9} 16-os (hexadecimális számrendszer): {0, 1, 2,..., 9, A, B, C, D, E, F}

Számítógépes Hálózatok. 7. gyakorlat

Számítógépes Hálózatok és Internet Eszközök

Diszkrét matematika 2.

Hamming-kód. Definíció. Az 1-hibajavító, perfekt lineáris kódot Hamming-kódnak nevezzük. F 2 fölötti vektorokkal foglalkozunk.

Autóipari beágyazott rendszerek. Local Interconnection Network

Megoldás. Feladat 1. Statikus teszt Specifikáció felülvizsgálat

Számítógépes Hálózatok

Számítógépes Hálózatok 2008

Diszkrét matematika 2.C szakirány

Diszkrét matematika 2.C szakirány

Programozható vezérlő rendszerek KOMMUNIKÁCIÓS HÁLÓZATOK 2.

Jel, adat, információ

Az Ethernet példája. Számítógépes Hálózatok Az Ethernet fizikai rétege. Ethernet Vezetékek

13. Egy x és egy y hosszúságú sorozat konvolúciójának hossza a. x-y-1 b. x-y c. x+y d. x+y+1 e. egyik sem

Hibajavító kódolás (előadásvázlat, november 14.) Maróti Miklós

Véges állapotú gépek (FSM) tervezése

DIGITAL TECHNICS I. Dr. Bálint Pődör. Óbuda University, Microelectronics and Technology Institute 12. LECTURE: FUNCTIONAL BUILDING BLOCKS III

Hálózati protokoll tervezése

A 2017/2018 tanévi Országos Középiskolai Tanulmányi Verseny első fordulójának feladatai. INFORMATIKA II. (programozás) kategória

KÓDOLÁSTECHNIKA PZH december 18.

loop() Referencia:

Véges állapotú gépek (FSM) tervezése

I+K technológiák. Beágyazott rendszerek 3. előadás Dr. Aradi Szilárd

Tartalom. Az adatkapcsolati réteg, Ethernet, ARP. Fogalma és feladatai. Adatkapcsolati réteg. A hálókártya képe

Kódolás, hibajavítás. Tervezte és készítette Géczy LászlL. szló 2002

Számítógépes Hálózatok és Internet Eszközök

Számítógép-hálózatok zárthelyi feladat. Mik az ISO-OSI hálózati referenciamodell hálózati rétegének főbb feladatai? (1 pont)

Kvantum-hibajavítás I.

I+K technológiák. Buszrendszerek Dr. Aradi Szilárd

OSI-ISO modell. Az OSI rétegek feladatai: Adatkapcsolati réteg (data link layer) Hálózati réteg (network layer)

A CAN hálózat alapjai

Diszkrét matematika 2.C szakirány

Miller-Rabin prímteszt

A kódok típusai Kódolás: adatok megváltoztatása. Dekódolás: a megváltoztatott adatból az eredeti visszanyerése.

Járműinformatika Multimédiás buszrendszerek (MOST, D2B és Bluetooth) 4. Óra

Számítógép hálózatok gyakorlat

Az Informatika Elméleti Alapjai

2016/11/29 11:13 1/6 Digitális átvitel

Járműfedélzeti rendszerek II. 6. előadás Dr. Bécsi Tamás

MAC alréteg. Számítógépes Hálózatok Protokollok korlátozott versennyel. Adaptív fa bejárás protokoll

Járműfedélzeti rendszerek II. 8. előadás Dr. Bécsi Tamás

PMU Kezdı lépések. 6-0 Csatlakozás LG GLOFA-GM és SAMSUNG PLC-hez. 6-1 Kommunikáció LG PMU és LG GLOFA-GM7 / GM6 / GM4 között

Kódelméleti és kriptográai alkalmazások

H=0 H=1. Legyen m pozitív egészre {a 1, a 2,, a m } különböző üzenetek halmaza. Ha az a i üzenetet k i -szer fordul elő az adásban,

4. Hivatkozási modellek

Számítógépes Hálózatok 2013

Az Internet működésének alapjai

Számítógépes Hálózatok 2008

Szignálok, Adatok, Információ. Számítógépes Hálózatok Unicast, Multicast, Broadcast. Hálózatok mérete

Járműfedélzeti kommunikáció. Dr. Aradi Szilárd

Számítógépes Hálózatok GY 6.hét

Informatikai Rendszerek Alapjai

8. Szállítói réteg TCP Tahoe, Reno, AIMD, hatékonyság, fairness. HálózatokII, 2007

Számítógép-hálózatok Az adatkapcsolati réteg

Számítógépes hálózatok GY

Szállítási réteg (L4)

Számítógépes Hálózatok 2008

Számítógépes Hálózatok. 6. gyakorlat

Alapfogalmak a Diszkrét matematika II. tárgyból

Kombinációs hálózatok Számok és kódok

Yottacontrol I/O modulok beállítási segédlet

Gigabit Ethernet, 10 Gigabit Ethernet. Jákó András BME EISzK

Számítógépes Hálózatok 2012

Tartalom. Hálózati kapcsolatok felépítése és tesztelése. Rétegek használata az adatok továbbításának leírására. OSI modell. Az OSI modell rétegei

Aritmetikai utasítások I.

Dr. Wührl Tibor Ph.D. MsC 05 Ea. Szállítási protokollok - Bevezetés

Kvantum-hibajavítás II.

Átírás:

Számítógépes Hálózatok 2013 3. Adatkapcsolati réteg Hibafelismerés és javítás, Hamming távolság, blokk kódok 1 Adatkapcsolati réteg (Data Link Layer) Az adatkapcsolati réteg feladatai: Szolgáltatásokat rendelkezésre bocsátani a hálózati rétegnek Keretek (frames) Hibafelügyelet Folyamfelügyelet Hibafelismerés és javítás Hibajavító kódok Hibafelismerő kódok Elemi adatkapcsolati protokollok Simplex Stop-and-Wait Noisy Channel Csúszó ablak (sliding window) 1-Bit-Sliding Window Go Back N Selective Repeat Protokoll-verifikáció Véges automaták Petri hálók 2

Az adatkapcsolati réteg szolgáltatásai Az adatátkapcsolati réteg szituációja a fizikai réteg biteket visz át struktúra nélkül és esetleg hibásan A hálózati réteg az adatkapcsolati rétegtől a következőket várja el: hibamentes átvitel strukturált adatok átvitele adatcsomagok vagy adatáram zavarmentes adatfolyam Csomagok Hálózati réteg Adatkapcsolati réteg Hálózati réteg Adatkapcsolati réteg Bitek Fizikai réteg 3 Az adatkapcsolati réteg lehetséges szolgáltatásai Megbízható szolgáltatás? A küldött és a fogadott csomagnak egyformának kell lenni Minden elküldött csomagnak meg kell érkezni (valamikor) A csomagoknak a megfelelő sorrendben kell megérkezni Hibafelügyelet szükséges lehet Kapcsolat-orientált? A pont-pont kapcsolat egy nagyobb összefüggésben van? Kapcsolatnak foglalás szükséges? Csomagok vagy adatáram (bitáram)? 4

Megkülönböztetés: szolgáltatás és implementáció Példa A hálózati réteg kapcsolatmentes és megbízható szolgáltatást követel Az adatkapcsolati réteg intern kapcsolatorientált szolgáltatást használ hibakontrollal Más kombinációk lehetségesek 5 Keretek (frames) A fizikai réteg bitáramát darabokra, u.n. keretekre (frames) osztjuk Szükséges a hibafelügyelethez A keretek az adatkapcsolati réteg csomagjai Keretekre-osztás (fragmentálás és a fogadó oldalon defragmentálás) szükséges, ha a hálózati réteg csomagjai nagyobbak, mint a keretek Csomagok Keretek Bitek Hálózati réteg Adatkapcsolati réteg Framing Hálózati réteg Adatkapcsolati réteg Framing Fizikai réteg 6

Hibafelügyelet Minimálisan megkövetelt szolgáltatás az adatkapcsolati rétegtől Keretek segítségével Hibafelismerés: van-e hibásan átvitt bit Hibajavítás: bithibák megtisztítása Előre-hibajavítás (Forward Error Correction) Redundáns kód használata, amely újraátvitel nélkül lehetővé teszi a hiba kijavítását Útólagos-hibajavítás (Backward Error Correction) A hiba felismerése után a hiba utólagos kommunikációval kerül kijavításra Hibafelügyelet Hibafelismerés Hibajavítás Előre-hibajavítás Utólagos-hibajavítás 7 Kapcsolat felépítés Kapcsolatok használata A kapcsolat állapotának felügyelete Protokollok helyessége Hibafelügyelet Különböző hibafelügyeleti módszerek megbíznak a küldő és a fogadó közös kontextusában Kapcsolatok felépítése és befejezése Virtuális kapcsolatok A bit-áram interpretációja Keretek által Különösen fontos vezeték nélküli médiumok esetén A problémát a szállítói rétegnél átfogóan tárgyaljuk L. OSI-modell ülés réteg 8

Folyamfelügyelet Probléma: gyors küldő és lassú fogadó A küldő túlárasztja a fogadó pufferét Az átvitel sávszélességét elpazarolják az értelmetlen újraküldések (a hibafelismerés után) Lassú fogadó Gyors küldő Szükséges a keretküldési ráta hozzáigazítása a fogadóhoz 9 Keretek (frames) Hol kezdődik egy keret és hol ér véget? Átvitt bit-áram: 0110010101110101110010100010101010101010101100010 keret kezdete? keret vége? Figyelem: A fizikai réteg akkor is küldhet biteket, ha a küldő valójában semmit se küld A fogadó interpretálhatná a médium zaját adhatná a 00000000... sorozatot adat vagy kontroll információ? 10

Kerethatárok hosszinformációval? Ötlet: A keret fejlécében jelezni a bitek számát Probléma: Mi történik, ha a keret hossza hibásan kerül átvitelre? A fogadó elveszti az ütemet és új értelmetlen kereteket interpretál Változó keretméret hosszinformációval így nem jó koncepció 11 Fejléc és lezáró (header and trailer) Header és Trailer legtöbbször a keret kezdetén használnak egy Header-t a végén pedig egy Trailer-t jelzik a keret kezdetét és végét kontrollinformációt hordoznak Pl. küldő, fogadó, kerettipus, hibafelügyeleti információ 12

Flag byte és byte beszúrás (byte stuffing) Speciális Flag Byte -ok jelzik a keret kezdetét és végét Byte beszúrás (byte stuffing): Ha a flag-byte a küldendő adatok között előfordul, akkor mint adatbyte-ot egy másik speciális jellel (Escape) kell jelezni Ha a másik speciális jel (Escape) a küldendő adatok között előfordul, azt is. 13 Keretek bit beszúrással (bit stuffing) Byte beszúrás egy byte-ot vesz elemi egységnek. Hasonló módszer működik a bitekkel is Flag bits és bit beszúrás (bit stuffing) flag byte helyett egy bitsorozatot használunk, pl.: 01111110 bit beszúrás: Ha a küldő öt 1-esből álló sorozatot küld, automatikusan beszúr a bit-áramba egy 0-t a flag bit-ek kivételével A fogadó, ha öt 1-es után egy 0-t kap, törli a 0-t Eredeti adatbitek: Bit beszúrás után: A bit kiszúrás után: 14

Keretek kód megsértés által Lehetséges egy játéktér a bitek szignálokká kódolásával a fizikai rétegen ha nem használja fel az összes lehetséges kombinációt a kódoláshoz Pl.: a Manchester-kód csak a mély/magas és a magas/mély átmenetet használja A kódolási szabályok megsértésével lehet a keret kezdetét és végét jelezni Pl.: Manchester hozzáadjuk a magas/magas-t vagy a mély/mély-t A Manchester önütemezése veszélybe kerül? Egyszerű és robosztus módszer Például az Ethernet használja Költség? A sávszélesség hatékony felhasználása? 15 Hibafelügyelet Feladatok: Hibák felismerése (hibás bitek) egy keretben Hibák javítása egy keretben Ezen feladatok minden kombinációja előfordul Felismerés javítás nélkül Keret törlése további értesítés nélkül (drop a frame) Magasabb rétegeknek kell a problémát kezelni Javítás felismerés nélkül Lehető legjobban megtisztítja a bithibákat, de esetleg még maradnak bithibák Van értelme, ha a felhasználás a hibát tolerálni tudja Pl.: Hangátvitel Alapvetően létjogosult, mert mindig marad egy pozitív hiba valószínűség 16

Redundancia Redundancia előfeltétele a hibafelügyeletnek Redundancia nélkül egy m hosszúságú keret 2 m féle lehetséges adatot reprezentálhat, ezek mindegyike megengedett Egy hibás bit egy új adattartalmat eredményez Megengedett keretek halmaza Lehetséges keretek halmaza 000.001 000.000 111.111 111.110 17 Redundancia Alapötlet: Bizonyos lehetséges m bit hosszú adatok nem megengedettek Ekkor 2 m különböző adat ábrázolásához több mint 2 m lehetséges keret szükséges tehát több mint m bit szükséges egy keretben A keret hossza tehát n > m r=n-m redundáns bitek száma Pl. Header és/vagy Trailer Hibafelügyeletet csak azáltal lehetséges, hogy megkülönböztetünk megengedett és nem megengedett (legal/illegal) kereteket Lehetséges keretek halmaza 000.001010 000.000000 Megengedett keretek halmaza 111.111011 111.110110 000.000010 111.111111 000.000011 111.111101 18

Legegyszerűbb redundancia: paritás bit Egy egyszerű szabály egy redundáns bit hozzáadására (azaz, n=m+1): a paritás Odd parity 0-t fűzünk be, ha az 1-es bitek száma páratlan, egyébként 1-est Even parity 0-t fűzünk be, ha az 1-es bitek száma páros, egyébként 1-est Példa: Eredeti üzenet redundancia nélkül: 01101011001 Odd parity: 011010110011 Even parity: 011010110010 19 Nem megengedett keretek haszna A küldő csak megengedett kereteket küld A fizikai rétegben a bitek meghibásodhatnak Remény: Megengedett keretek meghibásodása mindig nem megengedett keret eredményez sohasem egy másik megengedett keretet Szükséges feltétel: A fizikai rétegben csak legfeljebb bizonyos számú bit változhat meg pl. k bit per keret A megengedett keretek elegendően különbözőek ahhoz, hogy ezt a keret-hiba rátát felismerje 20

A keret megváltozása bit hiba által Tegyük fel, hogy a következő keretek megengedettek: 0000, 0011, 1100, 1111 0001 0000 0011 1000 0100 0010 0101, 0110, 1001, 1010 0111 1011 Az élek olyan keret párokat kötnek össze, melyek csak egy bitben különböznek 1101 1100 1111 1110 uvxy megengedett abcd nem megengedett Egy egyszerű bithiba nem tud egy megengedett keretet egy másik megengedett keretté változtatni! 21 Hamming távolság Az előző példában két megengedett üzenet távolsága egymástól legalább két bit volt Definíció: Legyen x=x 1,, x n és y=y 1,, y n két üzenet A Hamming távolság d(x,y) = az 1-es bitek száma (x XOR y)-ban Intuitíven: azon pozíciók száma, amelyeken x és y különbözik A Hamming távolság egy metrika: Nem-negatív, idempotens, szimetrikus, háromszögegyenlőtlenség Példa: x=0011010111 y=0110100101 x XOR y=0101110010 d(x,y) = 5 22

Üzenethalmazok Hamming távolsága Legyen S (egyenlő hosszú) bit-sztringek halmaza. S Hamming távolsága: Azaz a legkisebb távolság két különböző S-beli bit-sztring között Példa: 0000 0011 001011 3 011101 1 101011 4 1100 1111 Minden távolság 2 Egy távolság 1! 23 Hibafelismerés és javítás Hamming távolsággal 1. eset d(s)=1 Nincs hibafelismerés Egy megengedett keretből 1 bit megváltozásával másik megengedett keret állhat elő 2. eset d(s) = 2 Ekkor minden x,y S: d(x,y) 2 Így minden u, melyre d(x,u) = 1, nem megengedett, mint ahogy minden u, melyre d(y,u)=1, se x 1 bit különbség 1 bit különbség u y 1-bit-hiba mindig felismerhető de nem javítható 24

Hibafelismerés és javítás Hamming távolsággal 3. eset d(s) = 3 Ekkor minden x,y S : d(x,y) 3 Minden u, melyre d(x,u) = 1, nem megengedett és d(y,u) > 1 x 1 bit különbség 1 bit különbség u v 1 bit különbség y Ha a fogadóhoz u érkezik, a következő esetek lehetségesek: x került átvitelre és 1 bit hibával érkezett y került átvitelre és 2 bit hibával érkezett valami más került átvitelre és legalább 2 bit hibával érkezett Tehát a valószínűbb, hogy x került átvitelre, mint az hogy y 25 Hibafelismerés és javítás Hamming távolsággal Ahhoz, hogy d bit hibát felismerjünk, a megengedett keretek halmazában legalább d+1 Hamming távolság szükséges Ahhoz, hogy d bit hibát javíthassunk, a megengedett keretek halmazában legalább 2d+1 Hamming távolság szükséges 26

Kód-könyvek, kódok A megengedett keretek S µ {0,1} n halmazát kód-könyvnek vagy egyszerűen kódnak nevezzük. Definíció: Egy S kód R S rátája: A ráta karakterizálja a kód hatékonyságát Definíció: Egy S kód δ S távolsága: A távolság karakterizálja a hibajavítási vagy hibafelismerési lehetőségeket Jó kódoknak a rátája és a távolsága is nagy trade-offs 27 Blokk kódok Blokk kódok k bites eredeti adatot n kódolt bitben kódolnak n-k bitet adunk hozzá Bináris blokk kódok legfeljebb t hibát tudnak felismerni egy n hosszú kód-szóban (keretben) k eredeti bittel, ahol (Gilbert-Varshamov-korlát): Ez egy elméleti felső korlát Nem minden t,k és n esetén ismert vagy lehetséges ilyen kód Példák Bose Chaudhuri Hocquenghem (BCH) kódok Véges testek (Galois-testek) polinomjain alapulnak Reed Solomon kódok Nem bináris BCH kódok speciális esete 28