๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
โญ Group_Study/Networking

[2์ฃผ์ฐจ] Principles of Reliable Data Transfer

by ํฌ์ŠคํŠธ์‰์ดํฌ 2022. 9. 27.

Principles of Reliable Data Transfer

image


โœ” reliable ํ•˜๋‹ค๊ณ  ํ•˜์ง€๋งŒ...
- ์‹ค์งˆ์ ์œผ๋กœ ๋ฐ์ดํ„ฐ ์ „๋‹ฌ๋˜๋Š” underlying network๋Š” reliable ํ•˜์ง€ ์•Š๋‹ค!.
โœ” Unreliable Channel์—์„œ๋Š”?
- Message error
- Message loss

Simple Reliable Data Transfer Protocol์„ ๊ฐ€์ •ํ•˜์ž

1. Perfect Channel์ด๋ผ๋ฉด?

โœ” No packet errors
โœ” No packet loss

2. Packet error๊ฐ€ ์กด์žฌํ•˜๋Š” Channel์ด๋ผ๋ฉด?

์—๋Ÿฌ๋ฅผ ์ฒ˜๋ฆฌํ•˜๊ธฐ ์œ„ํ•ด ๋ฌด์—‡์ด ํ•„์š”ํ• ๊นŒ?

1. Error detection
- Checksum
2. Feedback (reciever)
- Acknowledgements (ACKs): ์ž˜ ๋ฐ›์•˜์Œ (์—๋Ÿฌx)
- Negative Acknowlegements (NAKs): ์ž˜ ๋ชป ๋ฐ›์•˜์Œ (์—๋Ÿฌ o)
3. Retransmission
- NAK์ผ ๊ฒฝ์šฐ ์žฌ์ „์†ก

image

However...

์œ„์™€ ๊ฐ™์€ ์ ˆ์ฐจ๋“ค๋กœ ์—๋Ÿฌ๋ฅผ ์™„์ „ํžˆ ๋ง‰์„ ์ˆ˜ ์žˆ์„๊นŒ?

image


โœ” ํ”ผ๋“œ๋ฐฑ(ACK / NAK) ์ž์ฒด์— ์—๋Ÿฌ๊ฐ€ ์žˆ๋‹ค๋ฉด?
-> ํ”ผ๋“œ๋ฐฑ์—๋„ checksum ์ ์šฉ
โœ” ํ”ผ๋“œ๋ฐฑ์— ์—๋Ÿฌ๊ฐ€ ์žˆ์„ ๊ฒฝ์šฐ ์ผ๋‹จ ์žฌ์ „์†ก์„ ํ•ด๋ณด์ž...
-> reciever ์ž…์žฅ์—์„œ ์ƒˆ๋กœ์šด ํŒจํ‚ท์ธ์ง€ ์ค‘๋ณต์ธ์ง€ ์•Œ ์ˆ˜ ์—†๋‹ค๋Š” ๋ฌธ์ œ ๋ฐœ์ƒ!

Handling Duplicate Packets

โœ” Sender๋Š” ๊ฐ ํŒจํ‚ท์— Sequence number๋ฅผ ๋ถ€์ฐฉํ•œ๋‹ค.
โœ” reviever๋Š” seq#๋กœ ์ค‘๋ณต ํŒจํ‚ท์„ ๊ฑธ๋Ÿฌ๋‚ธ๋‹ค.
โœ” ํ—ค๋”์˜ ํ•„๋“œ ํฌ๊ธฐ๋ฅผ ์ตœ์†Œํ™” ํ•˜๊ธฐ ์œ„ํ•ด์„œ seq#๋Š” 0/1 ๋‘ ๊ฐœ๋งŒ ์‚ฌ์šฉ

image

์š”์•ฝ ์ •๋ฆฌ ๊ทธ๋ฆผ

image

3. Packet error & Packet loss๊ฐ€ ์กด์žฌํ•˜๋Š” Channel์ด๋ผ๋ฉด?

packet error๋Š” ์œ„์—์„œ ์ด๋ฏธ ์ฒ˜๋ฆฌ ํ–ˆ์œผ๋‹ˆ packet loss๋งŒ ์ฒ˜๋ฆฌ ํ•˜๋ฉด ๋œ๋‹ค!

์œ ์‹ค์„ ์ฒ˜๋ฆฌํ•˜๊ธฐ ์œ„ํ•ด ํ•„์š”ํ•œ ๋ฉ”์ปค๋‹ˆ์ฆ˜

โœ” ํƒ€์ด๋จธ!
-> ํƒ€์ž„์•„์›ƒ ๋ฐœ์ƒ ์‹œ ์žฌ์ „์†ก
-> ํƒ€์ด๋จธ์˜ ๊ธฐํ•œ์€ 'reasonable'ํ•œ ์‹œ๊ฐ„ (์ •๋‹ต x)
โœ” ์งง์„ ๊ฒฝ์šฐ
- ์‹ค์ œ๋กœ ์œ ์‹ค ๋˜์—ˆ์„ ๊ฒฝ์šฐ ๋Œ€์ฒ˜๊ฐ€ ๋น ๋ฅด๋‹ค.
- ๊ทธ๋Ÿฌ๋‚˜ ๋„คํŠธ์›Œํฌ ์˜ค๋ฒ„ํ—ค๋“œ ๋ฐœ์ƒ ๊ฐ€๋Šฅ์„ฑ up
โœ” ๊ธธ ๊ฒฝ์šฐ
- ๊ทธ๋Ÿฌ๋‚˜ ๋„คํŠธ์›Œํฌ ์˜ค๋ฒ„ํ—ค๋“œ ๋ฐœ์ƒ ๊ฐ€๋Šฅ์„ฑ down
- ์‹ค์ œ๋กœ ์œ ์‹ค ๋˜์—ˆ์„ ๊ฒฝ์šฐ ๋Œ€์ฒ˜๊ฐ€ ๋Š๋ฆด ์ˆ˜ ์žˆ๋‹ค.

rdt 3.0์˜ ์ž‘๋™ ๋ชจ์Šต

image

 

image

๋Œ“๊ธ€