kā protokoli darbojas un kā tos projektē?
DESCRIPTION
Kā protokoli darbojas un kā tos projektē?. Kas notiek protokola slānī?. Katrā datortīkla sistēmā (piem., datorā) katrā no slāņiem darbojas programmas modulis, ko sauc par protokola mašīnu (PM -protocol machine) (entītija, sadarbotne) - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: Kā protokoli darbojas un kā tos projektē?](https://reader035.vdocuments.pub/reader035/viewer/2022081419/568141d3550346895dadad07/html5/thumbnails/1.jpg)
1
![Page 2: Kā protokoli darbojas un kā tos projektē?](https://reader035.vdocuments.pub/reader035/viewer/2022081419/568141d3550346895dadad07/html5/thumbnails/2.jpg)
Katrā datortīkla sistēmā (piem., datorā) katrā no slāņiem darbojas programmas modulis, ko sauc par protokola mašīnu (PM -protocol machine) (entītija, sadarbotne)
Tas caur standartizētiem servisa pieejas punktiem (SAP) saņem no blakus slāņiem (t. i., no augšas un apakšas signālus un reaģē uz tiem.
2
![Page 3: Kā protokoli darbojas un kā tos projektē?](https://reader035.vdocuments.pub/reader035/viewer/2022081419/568141d3550346895dadad07/html5/thumbnails/3.jpg)
3
![Page 4: Kā protokoli darbojas un kā tos projektē?](https://reader035.vdocuments.pub/reader035/viewer/2022081419/568141d3550346895dadad07/html5/thumbnails/4.jpg)
Pirms sastādīt kāda slāņa protokola PM moduļa programmu ir jāizstrādā tās:◦ protokola mašīnas (PM) darbības kā arī◦ partneru PM moduļu sadarbības modelis.
Šeit lieto protokolu mašīnas koncepciju, kas tas ir?◦ PM ir galīgā automāta speciāls gadījums, ko
izmanto kā protokola matemātisku modeli.◦ Protokolautomāta stāvokļu kopu veido visu
protokola mainīgo parametru (arī skaitītāju un taimeru) stāvokļi.
◦ Protokolautomāta stāvokļu izmaiņa notiek datoru tīkla funkcionālo bloku mijiedarbības rezultātā.
4
![Page 5: Kā protokoli darbojas un kā tos projektē?](https://reader035.vdocuments.pub/reader035/viewer/2022081419/568141d3550346895dadad07/html5/thumbnails/5.jpg)
Protokola mašīna – mehānisms, kas nodrošina sadarbības procesu viena slāņa ietvaros
Protokola mašīnu iespējamo specifikāciju veidi ◦ Galīgie automāti (finite automata)◦ Paplašinātie galīgie automāti (extended finite
automata)◦ Agregāti (aggregate approach – H. Pranevicius)◦ Aģenti, piem., protokolā SNMP
5
![Page 6: Kā protokoli darbojas un kā tos projektē?](https://reader035.vdocuments.pub/reader035/viewer/2022081419/568141d3550346895dadad07/html5/thumbnails/6.jpg)
Ieejas X var izraisīt stāvokļu pārejas Rij(Si => Sj) stāvokļu pārejas var izraisīt darbības (Rij => Yo) {S1, S2,...,Sk} – automāta iespējamo stāvokļu kopa {X1, X2,...,Xm} - iespējamo ieeju kopa – iespējamo
ieeju alfabēts {Y1, Y2,...Yn} - automāta iespējamo izeju (darbību)
kopa – alfabēts Sākuma stāvoklis
6
automatsX Y
Vide
![Page 7: Kā protokoli darbojas un kā tos projektē?](https://reader035.vdocuments.pub/reader035/viewer/2022081419/568141d3550346895dadad07/html5/thumbnails/7.jpg)
Tāpēc, ka tā kopas X, S, Y matemātiski nevar būt bezgalīgas (tad automāta izstrāde nekad nebeigtos)
Vairums gadījumu tās nepārsniedz 10 vai dažus desmitus
7
![Page 8: Kā protokoli darbojas un kā tos projektē?](https://reader035.vdocuments.pub/reader035/viewer/2022081419/568141d3550346895dadad07/html5/thumbnails/8.jpg)
1. Biļešu automāts – atpazīst ieeju X un reaģē ar izeju Y
2. Kafijas automāts - atpazīst ieejas X, atceras tās un reaģē ar izejām Y
3. Starpsistēmu tilta automāts - atpazīst ieejas X, atceras tās, apmācās (maina reakcijas) un reaģē ar izejām Y
4. Programmatūras aģents - atpazīst ieejas X, atceras tās, apmācās (maina reakcijas, veidojot vides modeli) un reaģē ar izejām Y kā arī reaģē preventīvi (piem., šaha programma) izejot no vides modeļa stāvokļa, bet ne tikai no X.
X Y
8
![Page 9: Kā protokoli darbojas un kā tos projektē?](https://reader035.vdocuments.pub/reader035/viewer/2022081419/568141d3550346895dadad07/html5/thumbnails/9.jpg)
9
Si Si+1 Si+2
![Page 10: Kā protokoli darbojas un kā tos projektē?](https://reader035.vdocuments.pub/reader035/viewer/2022081419/568141d3550346895dadad07/html5/thumbnails/10.jpg)
Ieeja Xi var izraisīt stāvokļa maiņu, bet tā – darbību Yj
10
S’ S’’
Xi
Yj
![Page 11: Kā protokoli darbojas un kā tos projektē?](https://reader035.vdocuments.pub/reader035/viewer/2022081419/568141d3550346895dadad07/html5/thumbnails/11.jpg)
S1 S2
Galīgā automāta stāvokļu-pārejudiagramma
11
![Page 12: Kā protokoli darbojas un kā tos projektē?](https://reader035.vdocuments.pub/reader035/viewer/2022081419/568141d3550346895dadad07/html5/thumbnails/12.jpg)
12
![Page 13: Kā protokoli darbojas un kā tos projektē?](https://reader035.vdocuments.pub/reader035/viewer/2022081419/568141d3550346895dadad07/html5/thumbnails/13.jpg)
13
![Page 14: Kā protokoli darbojas un kā tos projektē?](https://reader035.vdocuments.pub/reader035/viewer/2022081419/568141d3550346895dadad07/html5/thumbnails/14.jpg)
Can you determine what the system is from the state transition diagram? What does this say about the abstractions used?
idle
ringing
connected
dia ling
ringsignal
dia ltone
linedead
busysignal
hang up
hang up
hang up
hang up
hang up
incomingcall
pick upreceiver
pick upreceiver dial
finishdialing &other partyidle
finishdialing &other partybusy
other partyanswers
hang upother partyhangs up
other partyhangs up
![Page 15: Kā protokoli darbojas un kā tos projektē?](https://reader035.vdocuments.pub/reader035/viewer/2022081419/568141d3550346895dadad07/html5/thumbnails/15.jpg)
Atšķirībā no iepriekš aplūkotiem, kad ieejas ierosina cilvēks, datortīklos FSM sadarbojas viena ar otru.
Tas nozīmē, ka starp to ieejas alfabētiem X un izejas alfabētiem Y jābūt pilnīgai atpazīstamībai
Tie ir determinēti automāti, kur reakcija uz ieejām ir viennozīmīga
Vienīgais izņēmums – pārraides vide, kur var notikt signālu izkropļojums – t.i., kļūda.
Parasti tas izsauc atkārtotu pārraidi.
15
![Page 16: Kā protokoli darbojas un kā tos projektē?](https://reader035.vdocuments.pub/reader035/viewer/2022081419/568141d3550346895dadad07/html5/thumbnails/16.jpg)
Kanāls – varbūtīgais automāts
16
PM1 Kanāls PM2
S1 S2
0.10.9
0.9
0.1
![Page 17: Kā protokoli darbojas un kā tos projektē?](https://reader035.vdocuments.pub/reader035/viewer/2022081419/568141d3550346895dadad07/html5/thumbnails/17.jpg)
17
![Page 18: Kā protokoli darbojas un kā tos projektē?](https://reader035.vdocuments.pub/reader035/viewer/2022081419/568141d3550346895dadad07/html5/thumbnails/18.jpg)
Nodibinot savienojumu partneru FSM kļūst aktivizēti uz visu savienojuma laiku
Tie gaida protokola bloku ar sekojošo kārtas numuru un, saņemot to, sūta apstiprinājumu
Ja ierodas bloks ārpus kārtas, tad tiek pieprasīts kārtējais
Nosūtot bloku tiek ieslēgts taimeris; to izslēdz, ja tiek saņemts apstiprinājums.
Ja apstiprinājumu nesaņem pirms taimera beigām, tad bloks tiek sūtīts atkārtoti.
18
![Page 19: Kā protokoli darbojas un kā tos projektē?](https://reader035.vdocuments.pub/reader035/viewer/2022081419/568141d3550346895dadad07/html5/thumbnails/19.jpg)
19
![Page 20: Kā protokoli darbojas un kā tos projektē?](https://reader035.vdocuments.pub/reader035/viewer/2022081419/568141d3550346895dadad07/html5/thumbnails/20.jpg)
Projektējot protokolu nepieciešams ne tikai pārbaudīt vienas FSM darbību, bet arī ◦ Sadarbības alfabētu savietojamību◦ sadarbību starp partneru FSM◦ reakciju uz iespējamām kļūdu situācijām
Tādēļ lieto programmatūras rīkus paralēlo procesu verifikācijai, piem., uz Petri tīklu bāzes.
20
![Page 21: Kā protokoli darbojas un kā tos projektē?](https://reader035.vdocuments.pub/reader035/viewer/2022081419/568141d3550346895dadad07/html5/thumbnails/21.jpg)
Protokolu darbību apraksta kā galīgo automātu paveida jeb protokolu mašīnu (PM) sadarbību.
To veic konstruējot stāvokļu/pārejas diagrammas, kas noteic, kā PM reaģē uz attiecīgām ieejām.
Nodibinot vairākus savienojumus katra savienojuma galā darbojas atsevišķa PM kopija, kas kontrolē savienojuma datu plūsmu.
21