Kompiuterių sistemos

Preview:

DESCRIPTION

Kompiuterių sistemos. 2 paskaita lekt. dr. A.Slotkienė. Srauto valdymas. Paketų praradimas ir vėlinimas įtakoja persiunčiamo duomenų srauto valdymą Apie prarastus paketus informuoja patvirtinimai, o apie išgadintus paketus sužinome taikydami klaidų kontrolės metodus - PowerPoint PPT Presentation

Citation preview

Kompiuterių sistemos

2 paskaitalekt. dr. A.Slotkienė

• Paketų praradimas ir vėlinimas įtakoja persiunčiamo duomenų srauto valdymą

• Apie prarastus paketus informuoja patvirtinimai, o apie išgadintus paketus sužinome taikydami klaidų kontrolės metodus

• Vienas iš sprendimo būdų praradus duomenis ar jų patvirtinimus yra automatizuotas patvirtinimo užklausimas (Automatic Repeat Request (ARQ)).

• ARQ taikomi trijų tipų protokolai:– Sustok ir palauk (stop-and-wait)– Grįžti N žingsnių (Go-back-N)– Selektyvus kartojimas (Selective-repeat)

Srauto valdymas

Srauto valdymas

Patvirtinimas

• Patvirtinimai gali būti:• Teigiami, pranešantys, kad paketas

sėkmingai priimtas (ACK) • Neigiami, informuojantys kad paketas

gautas su klaidomis (NAK)

Sustok ir palauk protokolas

(a) Prarandamas 1 paketas

A

B

frame 0

frame1

ACK

frame1

ACK

timeTime-out

frame2

(b) Prarandamas ACK

A

B

frame 0

frame1

ACK

frame1

ACK

timeTime-out

frame2

ACK

Gavėjo lango dydis = 1Siuntėjo lango dydis = 1

Sustok ir palauk protokolas

Jei neatsiunčiamas ACK, paketai dubliuojasi Sprendimas: panaudoti paketo antraštėje numeracija. Numeracijai taikomas vienas bitas: 0 ir 1

Vieno bito paketų numeracija

(a) Normalus. (b)Su pakartotiniais siuntimais

(seq, ack, pkt)

Pavyzdys 1

Pavyzdys 2

S-W protokolo efektyvumo skaičiavimas

• Procesas: • Suskaidomi į labai nedidelius paketus • Laukiama ACK• Siunčiamas kitas paketas

• Šis protokolas pasižymi paprastumu, tačiau netenkina šiuolaikinių ryšių reikalavimų

• Labai neefektyvus kai kuriuose fizinėse terpėse, kur a > 1

.

;21

1

1

1

t

s

ts

t

t

ttU

21

1

fPU

Slenkantysis langas

• Įgalina iš karto perduoti kelis paketus • Siunčiantysis mazgas turi buferį (W-lango dydžio),

kuriame laikinai saugo persiunčiamus paketus• Priimantysis mazgas gali išsiųsti iki W paketų

nesulaukęs• ACK

Slenkantysis langas

• Grįžti N žingsnių• Gavėjo lango dydis =1• Jie paketas prarandamas persiunčiamas

prarastasis ir tik tuomet kiti • Selektyvus kartojimas

• Gavėjo lango dydis > 1• Jie paketas pararandamas persiunčiamas tik

prarastasis • Slenkančiojo lango paketai numeruojami moduliu

2k

• Efektyvumas apskaičiuojamas:

21,21

,21,1

KkaiK

U

KkaiU

Slenkančiojo lango protokolai

Grįžti N žingsnių

Selektyvus kartojimas

Grįžti-N-žingsnių

A

B

fr0

timefr1

fr2

fr3

fr4

fr5

fr6

fr3

ACK1 error

Out-of-sequence frames

Go-Back-4: 4 frames are outstanding; so go back 4

fr5

fr6

fr4

fr7

fr8

fr9

ACK2

ACK3

ACK4

ACK5

ACK6

ACK7

ACK8

ACK9

ACKing next frame expected

Gavėjo lango dydis = 1Siuntėjo lango dydis = > 1

Grįžti-4-žingsnius pavyzdys

0 0 m0

1 1 m1

2 2 m2

3 3 m3

0 0 m0

1 1 m1

2 2 m2

3 3 m3

ack 15, win 4

A B

seq. data seq. data

Grįžti-4-žingsnius pavyzdys

0 0 m0

1 1 m1

2 2 m2

3 3 m3

0 0 m0

1 1 m1

2 2 m2

3 3 m3

0 m0

A B

seq. data seq. data

Grįžti-4-žingsnius pavyzdys

0 0 m0

1 1 m1

2 2 m2

3 3 m3

0 0 m0

1 1 m1

2 2 m2

3 3 m3

1 m1

A B

seq. data seq. data

Grįžti-4-žingsnius pavyzdys

0 0 m0

1 1 m1

2 2 m2

3 3 m3

0 0 m0

1 1 m1

2 2 m2

3 3 m3

A B

seq. data seq. data

Grįžti-4-žingsnius pavyzdys

0 0 m0

1 1 m1

2 2 m2

3 3 m3

4 4 m4

0 0 m0

1 1 m1

2 2 m2

3 3 m3

4 4 m4

ack 1, win 30 m0

1 m1

A B

seq. data seq. data

Grįžti-4-žingsnius pavyzdys

0 0 m0

1 1 m1

2 2 m2

3 3 m3

4 4 m4

0 0 m0

1 1 m1

2 2 m2

3 3 m3

4 4 m4

3 m3

A B

seq. data seq. data

m3

Grįžti-4-žingsnius pavyzdys

0 0 m0

1 1 m1

2 m4

3

3

m3

4 4 m4

0 0 m0

1 1 m1

2 2 m2

3 3 m3

4 4 m4

4

A B

seq. data seq. data

4

Grįžti-4-žingsnius pavyzdys

0 0 m0

1 1 m1

2

3

4

0 0 m0

1 1 m1

2 2 m2

3 3 m3

4 4 m4

A B

seq. data seq. data

2 m2

Grįžti-4-žingsnius pavyzdys

0 0 m0

1 1 m1

2 2 m2

3

4

0 0 m0

1 1 m1

2 2 m2

3 3 m3

4 4 m4

A B

seq. data seq. data

3 m3

Grįžti-4-žingsnius pavyzdys

0 0 m0

1 1 m1

2 2 m2

3

4

0 0 m0

1 1 m1

2 2 m2

3 3 m3

4 4 m4

A B

seq. data seq. data

3 m3

4 m4

Grįžti-4-žingsnius pavyzdys

0 0 m0

1 1 m1

2 2 m2

3 3 m3

4 4 m4

0 0 m0

1 1 m1

2 2 m2

3 3 m3

4 4 m4

ack 4, win 0

2 m2

3 m3

4 m4

A B

seq. data seq. data

Grįžti-4-žingsnius pavyzdys

0 0 m0

1 1 m1

2 2 m2

3 3 m3

4 4 m4

5 5 m5

0 0 m0

1 1 m1

2 2 m2

3 3 m3

4 4 m4

5 5 m5

ack 4, win 1

A B

seq. data seq. data

Grįžti-4-žingsnius pavyzdys

0 0 m0

1 1 m1

2 2 m2

3 3 m3

4 4 m4

5 5 m5

6 6 m6

0 0 m0

1 1 m1

2 2 m2

3 3 m3

4 4 m4

5 5 m5

6 6 m6

ack 4, win 2

A B

seq. data seq. data

Grįžti-4-žingsnius pavyzdys

0 0 m0

1 1 m1

2 2 m2

3 3 m3

4 4 m4

5 5 m5

6 6 m6

0 0 m0

1 1 m1

2 2 m2

3 3 m3

4 4 m4

5 5 m5

6 6 m6

5 m5

A B

seq. data seq. data

Grįžti-4-žingsnius pavyzdys

0 0 m0

1 1 m1

2 2 m2

3 3 m3

4 4 m4

5 5 m5

6 6 m6

0 0 m0

1 1 m1

2 2 m2

3 3 m3

4 4 m4

5 5 m5

6 6 m6 6 m6

A B

seq. data seq. data

Grįžti-4-žingsnius pavyzdys

0 0 m0

1 1 m1

2 2 m2

3 3 m3

4 4 m4

5 5 m5

6 6 m6

7 7 m7

8 8 m8

9 9 m9

10 10 m10

0 0 m0

1 1 m1

2 2 m2

3 3 m3

4 4 m4

5 5 m5

6 6 m6

7 7 m7

8 8 m8

9 9 m9

10 10 m10

A B

seq. data seq. data

ack 6, win 05 m5

6 m6

Grįžti-4-žingsnius pavyzdys

0 0 m0

1 1 m1

2 2 m2

3 3 m3

4 4 m4

5 5 m5

6 6 m6

7 7 m7

8 8 m8

9 9 m9

10 10 m10

0 0 m0

1 1 m1

2 2 m2

3 3 m3

4 4 m4

5

6

7 7 m7

8 8 m8

9 9 m9

10 10 m10

A B

seq. data seq. data

ack 6, win 45 m5

6 m6

Grįžti-N-žingsnių efektyvumas

• Kai yra klaidų tikimybė:

12

112

)1(

1221

1

aW

WPPa

PW

aWaP

P

U

Selektyvus kartojimas

• Persiunčiamas tik sugadintas paketas

• Apie sugadintą paketą pranešama NAK

• Efektyviau išnaudoja kanalą

Gavėjo lango dydis = > 1Siuntėjo lango dydis = > 1

Selektyvus kartojimas (4) pavyzdys

0 0 m0

1 1 m1

2 2 m2

3 3 m3

0 0 m0

1 1 m1

2 2 m2

3 3 m3

ack 15, win 4

A B

seq. data seq. data

Selektyvus kartojimas (4) pavyzdys

0 0 m0

1 1 m1

2 2 m2

3 3 m3

0 0 m0

1 1 m1

2 2 m2

3 3 m3

0 m0

A B

seq. data seq. data

Selektyvus kartojimas (4) pavyzdys

0 0 m0

1 1 m1

2 2 m2

3 3 m3

0 0 m0

1 1 m1

2 2 m2

3 3 m3

1 m1

A B

seq. data seq. data

Selektyvus kartojimas (4) pavyzdys

0 0 m0

1 1 m1

2 2 m2

3 3 m3

0 0 m0

1 1 m1

2 2 m2

3 3 m3

A B

seq. data seq. data

Selektyvus kartojimas (4) pavyzdys

0 0 m0

1 1 m1

2 2 m2

3 3 m3

4 4 m4

0 0 m0

1 1 m1

2 2 m2

3 3 m3

4 4 m4

ack 1, win 30 m0

1 m1

A B

seq. data seq. data

Selektyvus kartojimas (4) pavyzdys

0 0 m0

1 1 m1

2 2 m2

3 3 m3

4 4 m4

0 0 m0

1 1 m1

2 2 m2

3 3 m3

4 4 m4

3 m3

A B

seq. data seq. data

Selektyvus kartojimas (4) pavyzdys

0 0 m0

1 1 m1

2 2 m2

3 3 m3

4 4 m4

0 0 m0

1 1 m1

2 2 m2

3 3 m3

4 4 m4

3 m3

A B

seq. data seq. data

nack 2

m3

Selektyvus kartojimas (4) pavyzdys

0 0 m0

1 1 m1

2 m2

3

3

m3

4 4 m4

0 0 m0

1 1 m1

2 2 m2

3 3 m3

4 4 m4

2

A B

seq. data seq. data

43 m3

m3

Selektyvus kartojimas (4) pavyzdys

0 0 m0

1 1 m1

2 m2

3

3

m3

4 4 m4

0 0 m0

1 1 m1

2 2 m2

3 3 m3

4 4 m4

2

A B

seq. data seq. data

43 m3

m44

Selektyvus kartojimas (4) pavyzdys

0 0 m0

1 1 m1

2 2 m2

3 3 m3

4 4 m4

0 0 m0

1 1 m1

2 2 m2

3 3 m3

4 4 m4

ack 4, win 0

2 m2

3 m3

4 m4

A B

seq. data seq. data

Selektyvus kartojimas (4) pavyzdys

0 0 m0

1 1 m1

2 2 m2

3 3 m3

4 4 m4

5 5 m5

0 0 m0

1 1 m1

2 2 m2

3 3 m3

4 4 m4

5 5 m5

ack 4, win 1

A B

seq. data seq. data

Selektyvus kartojimas - efektyvumas

• Kai yra klaidų tikimybė:

12

12

)1(

121

aW

a

PW

aWP

U

Slenkančiojo lango efektyvumas

ARQ efektyvumas (P = 10-3)

Slenkančiojo lango apskaičiavimo pavyzdys

• Tegu RTT=100 ms. • Visi tinklo segmentai nuo siuntėjo iki

gavėjo veikia 100 Mbps sparta. • Norime pasiekti 10 Mbps vidutinę

duomenų persiuntimo spartą TCP protokolu tarp siuntėjo ir gavėjo.

• Koks turėtų būti siuntimo lango dydis?

RTT apskaičiavimas

2K SEQ=0

ACK = 2048

ReceiverSender

RTT

0.9 sec

2.2 sec

RTT = 2.2 s - 0.9 s. = 1.3 s, kur tt=0.9s

Sprendimas

• 100 Mbps tinklo segmentų spartos fiziškai neriboja norimos 10 Mbps vidutinės persiuntimo spartos.

• Galimi tik atsitiktinės pavienių tinklo segmentų perkrovos, todėl skaičiuosime pagal formulę, kuri tą įvertina.

Animacijos

Slenkančiojo lango:http://www.islandman.org/umuc/ifsm450/anim20_3.htmhttp://www.islandman.org/umuc/ifsm450/anim20_4.htmhttp://www.cs.stir.ac.uk/~kjt/software/comms/jasper/SWP3.html

Visi slenkančio lango protokolai:http://www.cs.bham.ac.uk/~rzm/teaching/networks/dlsim/

Simulation.htmlGrįžti N žingsnių (Go-back-N)http://media.pearsoncmg.com/aw/aw_kurose_network_2/

applets/go-back-n/go-back-n.html

Recommended