230 likes | 392 Views
TŠC NOVA GORICA VIŠJA ŠOLA ZA INFORMATIKO PREDMET: RAČUNALNIŠKE KOMUNIKACIJE IN OMREŽJA. Principi komunikacijskih protokolov in protokoli povezovalne plasti Uporaba prosojnic je namenjena izključno za interno uporabo študentov Višje šole za informatiko na TŠC Nova Gorica.
E N D
TŠC NOVA GORICA VIŠJA ŠOLA ZA INFORMATIKO PREDMET: RAČUNALNIŠKE KOMUNIKACIJE IN OMREŽJA Principi komunikacijskih protokolov in protokoli povezovalne plastiUporaba prosojnic je namenjena izključno za interno uporabo študentov Višje šole za informatiko na TŠC Nova Gorica Nova Gorica, oktober 2004 SIMON ABOLNAR, univ. dipl. ing.
Povezovalna plast • Povezovalna plast zagotovi zanesljiv prenos okvirjev. Osnovna naloga je odkrivanje napak, ki nastanejo med prenosom po fizičnem prenosnem mediju. Pri okvirih z napakami se prenos ponovi. Okvirji so lahko prišli na cilj v napačnem vrstnem redu. Tudi to napako je potrebno na sprejemni strani odpraviti in okvirje pravilno razvrstiti
Glavne naloge povezovalne plasti • tvorjenje okvirjev, kjer je glavna težava sprejemnika, kako iz sekvence prihajajočih bitov odkriti začetek in konec okvira • odkrivanje napak pri prenosu okvirjev po prenosnem mediju. Podatke, ki so potrebni za odkrivanje napak, povezovalna plast doda paketu kot rep. Paket se uokviri med glavo in rep, odtod izraz okvir • odpravljanje napak z mehanizmi potrjevanja. Sprejemnik ob ugotovljeni napaki pošlje oddajniku negativno potrditev. Oddajnik nato sprejemniku ponovno pošlje omenjeni okvir • kontrola pretoka, kjer se mora zagotoviti usklajeno delovanje oddajnika in sprejemnika • pošiljanje okvirjev preko skupinskih prenosnih medijev
Tvorjenje okvirjev • Ločimo: - znakovno orientirane okvirje - bitno orientirane okvirje Pri znakovno orientiranih okvirjih je najmanjši informacijski delček znak. Informacijska enota pri bitno orientiranih okvirjih je bit.
Znakovno orientirani okvirji • Najbolj znani metodi tvorjenja znakovno orientiranih okvirjev sta: - tvorjenje na podlagi štetja znakov - tvorjenje na podlagi posebnih znakov, ki označujejo začetek in konec okvira (BiSync) Znakovno orientirani okvirji imajo med podatki relativno veliko kontrolnih znakov, zato je izkoriščenost prenosa relativno majhna.
Tvorjenje okvirjev na podlagi štetja znakov • Princip temelji na tem, da v glavi paketa označimo njegovo dolžino. Sprejemnik lahko s štetjem prejetih znakov ugotovi, kdaj je okvira konec
Napaka pri prenosu za metodo na podlagi štetja znakov Če pride do napake, ni mehanizma za rešitev situacije Sprejemnik ne more ugotoviti, kje je začetek naslednjega okvirja Metoda ni uporabna
Tvorjenje okvirjev na podlagi posebnih znakov, ki označujejo začetek in konec okvirja • Začetek paketa je označen z znakom DLE (00010000), ki mu sledi STX (00000010), konec paketa pa z DLE in ETX (00000011) • Če se v podatkovnem delu pojavi kombinacija DLE STX ali DLE ETX pride do težav • Težava se odpravi tako, da se na oddajni strani vrine dodaten znak DLE vsakič, ko se v podatkih pojavi DLE
Pravila sprejemnika • ko sprejemnik naleti na DLE, ga izbriše • če izbrisanemu znaku DLE sledi STX, gre za začetek okvira • če izbrisanemu znaku DLE sledi ETX, gre za konec okvira • če izbrisanemu znaku DLE sledi še en DLE, gre za DLE v okviru podatkov. Mehanizem deluje tudi pri sekvenci več znakov DLE
Bitno orientirani okvirji • V praksi se uporablja zelo veliko protokolov za tvorjenje bitno orientiranih okvirjev • Zelo znani so: - HDLC (High Level Data Link Control) - PPP (Point to Point Protocol), - Frame Relay, - LAPD (Link Access Protocol - D Channel). • Podpirajo dvotočkovne prenosne kanale • Podoben princip delovanja protokolov
Tvorjenje bitno orientiranih okvirjev • Princip temelji na tem, da označimo začetek in konec okvira. Za to se uporablja bitna sekvenca 01111110 • Med podatki se lahko pojavi bitni vzorec, ki pomeni konec okvira • Težava se reši tako, da oddajnik pri pošiljanju podatkov po vsaki peti zaporedni enici vrine dodatno ničlo. Če sprejemnik naleti na sekvenco petih enic in ničle (111110), zadnjo ničlo izloči iz podatkov
Odkrivanje napak pri prenosu • Pri prenosu okvirjev po prenosnem mediju se lahko pojavijo napake: - izguba okvira - enica se lahko spremeni v ničlo in obratno • Ob pojavu napake, moramo okvir poslati še enkrat • Dva tipična načina za odkrivanje napak: - odkrivanje napak s paritetnim bitom - odkrivanje napak s ciklično redundantno kontrolo (CRC) Metodi temeljita na tem, da se repu okvirja doda informacija, na podlagi katere lahko sprejemnik ugotavlja morebitno napako pri prenosu
Odkrivanje napak s paritetnim bitom • Najpreprostejši način odkrivanja napak v okvirjih • Oddajnik prešteje enice v okviru. Na osnovi tega določi paritetni bit in ga doda v rep okvira. Če je število enic liho, je paritetni bit nič, sicer pa ena (ali nasprotno) • Sprejemnik med sprejemanjem okvira šteje enice in glede na ugotovljeno število pričakuje določeno vrednost paritetnega bita. Če se ta ne ujema, je zagotovo prišlo do napake • Težava pri sodem številu spremenjenih bitov • Način primeren le za zelo zanesljive kanale ali kratka sporočila
Odkrivanje napak s ciklično redundantno metodo (CRC) • Uporablja se v praksi • Oddajnik na podlagi okvirja na oddajni strani v rep okvira doda določeno število bitov (16), ki jih generira na podlagi določenega algoritma • Sprejemnik na podlagi omenjenih sprejetih bitov odkrije: - vse enojne napake - vse dvojne napake - vse napake z lihim številom spremenjenih bitov - nekatere druge napake
Odpravljanje napak • Če se želi odpraviti odkrita napaka pri prenosu okvirjev, mora biti o tem obveščen tudi oddajnik • Sprejemnik pri sprejemu okvirja pošlje oddajniku pozitivno (ACK) ali negativno (NACK) potrditev • Če pride do oddajnika obvestilo, da sprejemnik ni sprejel okvirja brez napak (NACK), pošlje omenjeni okvir še enkrat • Komuniciranje med oddajnikom in sprejemnikom z namenom odpravljanja napak se imenuje mehanizem potrjevanja • Najbolj značilna mehanizma potrjevanja: - mehanizem sprotnega potrjevanja in - mehanizem tekočega pošiljanja
Mehanizem sprotnega potrjevanja • Pri mehanizmu sprotnega potrjevanja oddajnik odda naslednji okvir šele takrat, ko sprejme potrditev, da je bil predhodno poslan okvir sprejet brez napak (ACK) • Mehanizem ima tudi ime pošlji in počakaj (send and wait)
Mehanizem tekočega pošiljanja • Pri mehanizmu tekočega pošiljanja pošiljatelj odda okvirje, ne da bi čakal na potrditev predhodno oddanih okvirjev • Pravilo mehanizma tekočega pošiljanja: pošiljaj, kolikor hočeš in kakor hitro hočeš
Kontrola pretoka • Poleg odpravljanja napak je potrebno zagotoviti tudi kontrolo pretoka okvirjev • Potrebna iz dveh glavnih razlogov: - iz potrebe po sinhronizaciji med sprejemnikom in oddajnikom, ker sprejemnik ne more sprejeti in potrditi okvirjev tako hitro, kot mu jih pošilja oddajnik - sprejemnik in oddajnik imata omejene pomnilniške kapacitete. V tem primeru se mora prenos prekiniti, da ne pride do prelitja (overflow) • Kontrola pretoka je v tesni povezanosti z mehanizmi odpravljanja napak • Značilen protokol: protokol z drsečim oknom
Protokol z drsečim oknom • Podoben mehanizmu tekočega pošiljanja • Zagotavlja ustrezno kontrolo pretoka med oddajnikom in sprejemnikom • Nadzira število oddanih okvirjev, ki jih sprejemnik še ni potrdil • Maksimalno dovoljeno število nepotrjenih okvirjev, ki jih lahko oddajnik pošlje sprejemniku, je širina drsečega okna • Širina drsečega okna bistveno vpliva na hitrost prenosa okvirjev
Protokol z drsečim oknom Vsaka potrditev vsebuje sekvenčno številko, ki se ciklično ponavlja (po določenem številu okvirjev se številčenje spet začne od začetka)
Protokoli za skupinske prenosne medije • Namenjeni reševanju konfliktov, ko več oddajnikov pošilja bite skozi skupinski prenosni medij. Imenujemo jih pristopne metode • Delitev: - kolizijski protokoli - nekolizijski protokoli Značilnost kolizijskih protokolov so neprestani trki okvirjev, ki potujejo preko skupinskega prenosnega medija primer: CSMA/CD (Carrier Sense Multiple Access – Collision Detection) Pri nekolizijskih protokolih poteka komunikacija po skupinskem prenosnem mediju brez trkov. Ima fazo rezervacije primer: protokol z žetonom
Protokol CSMA/CD • Pred oddajo okvirja preveri, če je kanal prost • Če kanal ni prost, oddajnik počaka, da se kanal sprosti • Če dva oddajnika oddajata istočasno pride do kolizije (trka). V tem primeru se oddajanje obeh oddajnikov prekine. Ponovno oddajanje je možno po naključno določeni zakasnitvi. Možnost za ponoven trk je majhna • Najbolj razširjeno omrežje tega tipa je Ethernet
Protokol z žetonom • Po mreži kroži poseben vzorec bitov, ki se imenuje žeton (token) • Postaja, ki želi oddajati, pripne k žetonu podatke. Ko okvir prispe na cilj, mu sprejemnik doda oznako, da je sporočilo dobil. Ko žeton zopet prispe do oddajnika, mu ta odstrani podatke • Protokol je manj občutljiv na obremenitev • Najbolj razširjeno omrežje tega tipa je obroč z žetonom (token ring)