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

[3์ฃผ์ฐจ] TCP: Reliable Data Transfer

by ํฌ์ŠคํŠธ์‰์ดํฌ 2022. 10. 6.

TCP: Reliable Data Transfer

TCP RDT์˜ ํŠน์ง•

โœ” Piplined
โœ” Cumulative Acks
โœ” Single Timer (GBN๊ณผ์˜ ์ฐจ์ด์ : ํ•ด๋‹น ์„ธ๊ทธ๋จผํŠธ๋งŒ ์žฌ์ „์†ก)
โœ” ...

Retransmisson scenarios

imageimage

1๋ฒˆ ์‚ฌ๋ก€

โœ” Sender: 92 - 99 ๋ฐ์ดํ„ฐ ์ „์†ก, Receiver: ack(100) loss
โœ” timeout ๋ฐœ์ƒ
โœ” Sender: 92 -99 ๋ฐ์ดํ„ฐ ์žฌ์ „์†ก, Receiver: ack(100) ์žฌ์ „์†ก
โœ” Sender: sendbase = 100

2๋ฒˆ ์‚ฌ๋ก€

โœ” Sender: 92 - 99 ๋ฐ์ดํ„ฐ ์ „์†ก, 100 - 119 ๋ฐ์ดํ„ฐ ์ „์†ก, Receiver: ack(100), ack(120) delayed
โœ” timeout ๋ฐœ์ƒ
โœ” Sender: 92 - 99 ์žฌ์ „์†ก Receiver: ์ด๋ฏธ ์žˆ๋Š” 92-99๋Š” ๋ฒ„๋ฆฌ๊ณ  ack(120) ์ „์†ก
โœ” Sender: sendbase = 120

3๋ฒˆ ์‚ฌ๋ก€

โœ” Sender: 92 - 99 ๋ฐ์ดํ„ฐ ์ „์†ก, 100 - 119 ๋ฐ์ดํ„ฐ ์ „์†ก, Receiver: ack(100) loss, ack(120) ์ „์†ก
โœ” timeout ๋ฐœ์ƒ
โœ” sender: ack(120):cumulatice ack ๋ฐ›์•˜์œผ๋ฏ€๋กœ sendbase = 120

Fast retransmit

Timeout ์ด์ „์— packet loss ํŒ๋‹จ์„ ํ•  ์ˆ˜ ์žˆ์„๊นŒ?

โœ” timeout ์ด์ „์— ํŠน์ • #์˜ ACK๊ฐ€ ๊ณ„์† ์˜จ๋‹ค๋ฉด loss๋กœ ํŒ๋‹จ -> ๋ฏธ๋ฆฌ ์žฌ์ „์†ก ๊ถŒ๊ณ 

๋Œ“๊ธ€