Pipelined Protocols: GBN & Selective repeat
RDT 3.0: stop and wait operation
![image](https://user-images.githubusercontent.com/109324637/193598638-61e69a01-1699-4da8-a45d-b49a6fac6009.png)
โ ์ ๋ขฐ์ฑ์ ์์ง๋ง ์๋๋ ๋งค์ฐ ๋๋ฆฌ๋ค...
โ U(utilazation): fraction of time sender busy sending
โ ํ ๋ฒ์ ํ๋์ฉ ๋ณด๋ด๊ณ ๋๊ธฐํ๋ ๊ณผ์ ์ด ๋งค์ฐ ๋นํจ์จ์
Piplelined protocols
![image](https://user-images.githubusercontent.com/109324637/193600144-db36fc6b-0f7b-4882-ab79-6fd1b3d3f15b.png)
![image](https://user-images.githubusercontent.com/109324637/193600397-d5c9622e-c60c-4713-aa23-2b907552076a.png)
โ Pipline Protocol : ํ ๋ฒ์ ์ฌ๋ฌ ๊ฐ๋ฅผ ๋ณด๋์ผ๋ก์จ ํจ์จ์ ๋์ธ๋ค!
โ Go-Back-N ๋ฐฉ์
โ Selective Repeat ๋ฐฉ์
Go - Back - N
![image](https://user-images.githubusercontent.com/109324637/193601272-18db95c9-30fd-4ecc-a6de-d146e6ce1c10.png)
โ window: ํ ๋ฒ์ ๋ณด๋ผ ํจํท์ ์
โ ACK๊ฐ cumulativeํ๋ค. -> ACK(n)
โ ๊ฐ๊ฐ์ ํจํท์ ํ์ด๋จธ๋ฅผ ๊ฐ์ง๊ณ ์๋ค.
โ n๋ฒ ํจํท์์ timeout ๋ฐ์ ์ window ๋ด์ ์๋ n๋ณด๋ค ํฐ ํจํท๋ฒํธ๋ฅผ ๊ฐ์ง ๋ชจ๋ ํจํท์ ์ฌ์ ์กํ๋ค.
Go - Back - N ๋ฐฉ์์์ reciever
โ reciever๋ ๋งค์ฐ ๋จ์ํ๋ค.
โ ๋ฌด์กฐ๊ฑด ๋ค์ ์์์ ํจํท๋ง ๊ธฐ๋ค๋ฆผ
โ ๋๋ถ๋ถ์ ์ผ๋ค์ sender๊ฐ ์ํ
๊ทธ๋ฆผ์ผ๋ก ๋ํ๋ธ GBN
![image](https://user-images.githubusercontent.com/109324637/193603023-13420b94-340a-471d-93f9-da0975ba1e60.png)
โ sender๋ ๋ฒํธ๊ฐ ์ ๋ง๋ ํจํท์ด ์์ ๋ ๊ทธ๋ฅ ๋ฒ๋ฆฐ๋ค!
โ ๊ทธ๋ฌ๋ค๊ฐ timeout ๋ฐ์์ reciever๊ฐ ํจํท ์ฌ์ ์ก -> window size์ธ N๋งํผ ๋ค์ ๋ณด๋ด๊ธฐ ๋๋ฌธ์ 'Go Back N'
However...
โ ํ๋์ ์๋ฌ ๋๋ฌธ์ ๋ชจ๋ ํจํท์ ์ฌ์ ์กํ๋ ๊ฑด ๋๋ฌด ๋นํจ์จ์
โ ์ด๋ฅผ ๊ฐ์ ํ ๊ฒ Selective Repeat!
Selective Repeat
![image](https://user-images.githubusercontent.com/109324637/193605441-40978a73-3fee-49a6-8311-5e6bbe12d398.png)
โ cumulatice ACK๊ฐ ์๋๋ผ ๊ฐ๋ณ ํจํท์ ๋ํ ACK!!
โ ์์๊ฐ ์ ๋ง๋๋ผ๋ ์ฌ๋ฐ๋ฅธ ํจํท์ด๋ฉด ์ ์ฅํ๋ค
๊ทธ๋ฆผ์ผ๋ก ๋ํ๋ธ selective repeat
![image](https://user-images.githubusercontent.com/109324637/193605714-c9c6e761-98b8-4d98-b999-bed7e2b238bb.png)
โ buffer(reciever window)๊ฐ ์์ฑ๋๋ฉด ํด๋น ํจํท๋ค์ application layer๋ก ์ฌ๋ ค์ค๋ค.
Selective Repeat์ ๋๋ ๋ง
![image](https://user-images.githubusercontent.com/109324637/193606918-c69f4fbc-bab4-457c-a9fc-72f0b288a76e.png)
โ ์๋ก ๋ค์ด์ค๋ ํจํท๊ณผ ๊ธฐ๋ค๋ฆฌ๋ ํจํท์ ๊ตฌ๋ณํ๊ธฐ ์ํ ์ต์์ seq#๋...?
โ window size๋ seq#์ ์ ๋ฐ ์ดํ์ฌ์ผ ํ๋ค.
ใใ-> window size <= seq# / 2
'โญ Group_Study > Networking' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[3์ฃผ์ฐจ] TCP: Reliable Data Transfer (0) | 2022.10.06 |
---|---|
[3์ฃผ์ฐจ] TCP์ Segment Structure (0) | 2022.10.05 |
[2์ฃผ์ฐจ] Principles of Reliable Data Transfer (0) | 2022.09.27 |
[2์ฃผ์ฐจ] Connectionless transport : UDP (0) | 2022.09.27 |
[2์ฃผ์ฐจ] Transport Layer- Multiplexing_Demultiplexing (0) | 2022.09.27 |
๋๊ธ