๐Ÿ“˜ [Computer Network] TCP segments & ACK

๊ณ ๋ฏผ์ •ยท2023๋…„ 11์›” 8์ผ
0

Computer Network

๋ชฉ๋ก ๋ณด๊ธฐ
9/12
post-thumbnail

์—…๋กœ๋“œ์ค‘..

03_1


๐Ÿ’ก TCP/IP datagram

๐Ÿ“Œ How much overhead?
20 bytes of TCP + 20 bytes if IP = 40 bytes + application layer overhead


๐Ÿ’ก TCP segment

MTU (Maximum Transmission Unit)
ํ•œ ๋ฒˆ์— ํ†ต๊ณผํ•  ์ˆ˜ ์žˆ๋Š” ๊ฐ€์žฅ ํฐ ๋ฐ์ดํ„ฐ์˜ ํฌ๊ธฐ
MSS (Maximum Segment Size)
MSS = MTU - (TCP header + IP header)

์ „์ฒด๋Š” IP packet ์ด๋‹ค.
๋งŒ์•ฝ MTU ๊ฐ€ 1500byte ๋ผ๋ฉด ์œ„ IP packet ์˜ ์ตœ๋Œ€ ํฌ๊ธฐ๋Š” 1500 byte์ด๋‹ค.
MSS๋Š” 1500 - (20 + 20) = 1460 byte ์ด๋‹ค.


๐Ÿ’ก TCP "Stream of Bytes"

TCP ๋Š” ๋ฐ์ดํ„ฐ๋ฅผ stream of bytes ํ˜•ํƒœ๋กœ host์— ์ „์†กํ•œ๋‹ค.

TCP segment MSS๋งŒํผ stream์„ ์ž˜๋ผ์„œ ์ „์†กํ•œ๋‹ค.

  • Segment sent when :
    • Max segment Size ; MSS
    • "Pushed" by application
      tesxt์˜ ๊ฒฝ์šฐ MSS ๋ฅผ ์ฑ„์šฐ๊ธฐ ์œ„ํ•ด์„œ๋Š” ์˜ค๋žœ ์‹œ๊ฐ„์ด ๊ฑธ๋ฆฌ๊ธฐ ๋•Œ๋ฌธ์— ์นด์นด์˜คํ†ก๊ณผ ๊ฐ™์€ ์–ดํ”Œ์—์„œ๋Š” MSS ๋ฅผ ์ฑ„์šฐ์ง€ ์•Š๊ณ  ๋ฐ”๋กœ push ํ•ด๋ฒ„๋ฆฐ๋‹ค.

๐Ÿ’ก Sequence Number

Sequence Number
byte stream ์˜ segment ์•ˆ, ์ฒซ๋ฒˆ์งธ byte์˜ byte number
segment๊ฐ€ ์ˆœ์„œ์— ๋งž๊ฒŒ ๋„์ฐฉํ–ˆ๋Š”์ง€ ์•Œ๊ธฐ ์œ„ํ•ด packet์— number๋ฅผ ๋ถ™์ธ๋‹ค.

ISN์€ ๋žœ๋คํ•˜๊ฒŒ ์ •ํ•ด์ง„๋‹ค.

๋งŒ์•ฝ TCP data๋ฅผ 80byte์”ฉ ๋Š๊ณ  (MSS is 80byte) ISN์ด 0 ๋ถ€ํ„ฐ๋ผ๋ฉด,
sequence number๋Š” 0~80, 81~160, 161~240 ์„ธ ๊ฐœ์˜ packet์— ๋Œ€ํ•ด์„œ
0, 81, 161 ์ด๋‹ค.

๐Ÿ“Œ ISN๋„ sequence number ์— ํฌํ•จ์ธ๊ฐ€?

๋งž๋‹ค. ISN๋„ sequence number์˜ ์ผ๋ถ€์ด๋‹ค.


๐Ÿ’ก ACK : acknowledgements

ACK (acknowledgements)
sender ์—๊ฒŒ receiver๊ฐ€ data๋ฅผ ์ž˜ ๋ฐ›์•˜๋‹ค๊ณ  ๋ณด๋‚ด๋Š” ๋ฉ”์„ธ์ง€
ack์—๋Š” ๋‹ค์Œ์— ๋ณด๋‚ผ packet์˜ sequence number ๊ฐ€ ์‹ค๋ ค์žˆ๋‹ค.

  • no loss
    first ack number will be 1000.
    second ack number will be 2000.
    third ack number will be 3000. (because next sequence number is 3000)

  • There is loss
    ๋‘๋ฒˆ์งธ segment์—์„œ receiver์—๊ฒŒ ๋ณด๋‚ผ๋•Œ loss๊ฐ€ ์ผ์–ด๋‚˜๊ณ , ์„ธ๋ฒˆ์งธ segment๋Š” ์ž˜ ์ „๋‹ฌ์ด ๋œ ์ƒํƒœ๋ผ๋ฉด?
    ์„ธ๋ฒˆ์งธ segment์˜ ack์ด 3000์ด ์•„๋‹ˆ๋ผ loss๊ฐ€ ๋‚œ 1000 ์ด ๋œ๋‹ค.
    ๊ทธ๋ฆฌ๊ณ  ์„ธ๋ฒˆ์งธ segment๋Š” ์ •์ƒ์ ์œผ๋กœ loss๊ฐ€ ์ผ์–ด๋‚˜์ง€ ์•Š์•˜๊ธฐ ๋•Œ๋ฌธ์—
    ๋‘๋ฒˆ์งธ segment๋ฅผ retransmit ํ•ด์ฃผ๋ฉด ๋‘ ๋ฒˆ์งธ segment์˜ ack์€ 3000์ด ๋œ๋‹ค.

    (์„ธ๋ฒˆ์งธ segment๋Š” ์ž˜ ๋ฐ›์•˜๊ธฐ ๋•Œ๋ฌธ์— ack 2000์„ ํ•ด ๋ฒ„๋ฆฌ๋ฉด ์ด๋ฏธ ๋ฐ›์€ segment๋ฅผ ์ค‘๋ณต์œผ๋กœ ๋ฐ›๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค.)


๐Ÿ’ก Piggybacked

Piggybacked
ACK๊ฐ€ sender์—๊ฒŒ ๋‹ค์‹œ ๋ณด๋‚ด๋Š” data header์— ๋ถ™์–ด๊ฐ€๋Š” ๊ฒƒ์„ ๋งํ•จ

ACK information is included in the TCP header.
ACK๋Š” TCP header ์— ํฌํ•จ๋˜์–ด ์žˆ๋‹ค.

๋ฐ์ดํ„ฐ๋Š” ๋Œ€๋ถ€๋ถ„ ์–‘๋ฐฉํ–ฅ์œผ๋กœ ํ๋ฅธ๋‹ค.
A๊ฐ€ B์—๊ฒŒ ๋ฐ์ดํ„ฐ๋ฅผ ๋ณด๋‚ด๊ณ  ๊ทธ ์‘๋‹ต์œผ๋กœ B๊ฐ€ A์—๊ฒŒ ๋‹ค์‹œ ๋ฐ์ดํ„ฐ๋ฅผ ๋ณด๋‚ด๋Š” ๊ฒฝ์šฐ๊ฐ€ ์žˆ๋‹ค.
ACK๋Š” ์ด ๊ฒฝ์šฐ ๋ฐ์ดํ„ฐ์˜ header์— ์—…ํ˜€์„œ A์—๊ฒŒ ๋ณด๋‚ด์ง„๋‹ค.
์ด๋ฅผ Piggybacked ๋ผ๊ณ  ํ•œ๋‹ค.

ํ•˜์ง€๋งŒ B๊ฐ€ A์—๊ฒŒ ๋ณด๋‚ผ ์‘๋‹ต (๋ฐ์ดํ„ฐ)๊ฐ€ ์—†๋Š” ๊ฒฝ์šฐ์—๋Š” ACK ๋‹จ๋…์œผ๋กœ ๋ณด๋‚ด๊ธฐ๋„ ํ•œ๋‹ค.


๐Ÿ’ก Example for TCP seq.number and ACK


์•ž์„œ ๋งํ–ˆ๋“ฏ์ด ๋ฐ์ดํ„ฐ๋Š” ์–‘๋ฐฉํ–ฅ ํ†ต์‹ ์ด๋‹ค.
์œ„ ๊ทธ๋ฆผ์ฒ˜๋Ÿผ ํ•œ ์ชฝ๋งŒ ์ •๋ณด๋ฅผ ์ฃผ๋Š”๊ฒƒ์ด ์•„๋‹Œ ์„œ๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ์ฃผ๊ณ ๋ฐ›๋Š”๋‹ค.

A โ†’ B
A๋Š” B์—๊ฒŒ 42๋ฒˆ๋ถ€ํ„ฐ ์‹œ์ž‘ํ•˜๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ๋ณด๋‚ธ๋‹ค. (seq=42)
์ด๋•Œ header์— ACK์ •๋ณด๋ฅผ ๊ฐ™์ด๋ณด๋‚ธ๋‹ค. โ†’ Piggybacking

์™œ๋ƒํ•˜๋ฉด A๊ฐ€ B์—๊ฒŒ 78๋ฒˆ๊นŒ์ง€์˜ ์–ด๋– ํ•œ ๋ฐ์ดํ„ฐ๋ฅผ ๋ฐ›์•˜๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค.
๋ฐ์ดํ„ฐ๋ฅผ ์ž˜ ๋ฐ›์•˜์Œ์„ ์•Œ๋ฆฌ๊ธฐ ์œ„ํ•ด A๋Š” B์—๊ฒŒ ACK์„ ๋ณด๋‚ธ๋‹ค. (79๋ฒˆ๋ถ€ํ„ฐ B๊ฐ€ A์—๊ฒŒ ์ฃผ๋ฉด ๋ผ.)


B โ†’ A
B๋Š” A๋กœ๋ถ€ํ„ฐ 42๋ฒˆ๋ถ€ํ„ฐ ์‹œ์ž‘ํ•˜๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ๋ฐ›์•˜๋‹ค.
A๊ฐ€ ์š”์ฒญํ•œ ๋ฐ์ดํ„ฐ์ธ 79๋ฒˆ์œผ๋กœ ์‹œ์ž‘ํ•˜๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ๋ณด๋‚ด์ค€๋‹ค. (seq=79)
์ด๋ฅผ ๋ณด๋‚ด๋ฉด์„œ A์—๊ฒŒ ๋ฐ์ดํ„ฐ๋ฅผ ๋ฐ›์•˜๊ธฐ์— B๋Š” A์—๊ฒŒ ACK์„ ๋ณด๋‚ด์ค˜์•ผํ•œ๋‹ค.
์œ„์—์„œ ๋ฐ์ดํ„ฐ์˜ ํฌ๊ธฐ๊ฐ€ 1byte๋ผ๊ณ  ๋ช…์‹œ๋˜์–ด์žˆ๊ธฐ ๋•Œ๋ฌธ์— ๋‹ค์Œ์— A๊ฐ€ ๋ณด๋‚ผ ๋ฐ์ดํ„ฐ๋Š” ACK=43์ด๋‹ค.


A โ†’ B
A๋Š” B์—๊ฒŒ 79๋ฒˆ์œผ๋กœ ์‹œ์ž‘ํ•˜๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ๋ฐ›์•˜๋‹ค.
B๊ฐ€ ACK์œผ๋กœ "42๋ฒˆ๊นŒ์ง€ ๋ฐ์ดํ„ฐ๋Š” ์ž˜ ๋ฐ›์•˜๊ณ  43๋ฒˆ์„ ์ค˜" ๋ผ๊ณ  ํ–ˆ์œผ๋‹ˆ
A๋Š” 43๋ฒˆ์œผ๋กœ ์‹œ์ž‘ํ•˜๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ๋ณด๋‚ธ๋‹ค. (seq=43)
๋ณด๋‚ผ ๋•Œ, B์—๊ฒŒ 79๋ฒˆ ๋ฐ์ดํ„ฐ๋ฅผ ์ž˜ ๋ฐ›์•˜์œผ๋‹ˆ ๋‹ค์Œ ๋ฐ์ดํ„ฐ์ธ (์œ„์— ๋งํ–ˆ๋“ฏ์ด ๋ฐ์ดํ„ฐ ํฌ๊ธฐ๋Š” 1byte๋กœ ๋ช…์‹œ) 80๋ฒˆ์„ ๋‹ฌ๋ผ๊ณ  ํ•œ๋‹ค. (ACK=80)



์œ„ ๊ทธ๋ฆผ์€ A๊ฐ€ 'HI!' ๋ผ๊ณ  ๋ณด๋‚ด๋ฉด B๊ฐ€ ๋‹ค์‹œ 'HI!'๋ผ๊ณ  ๋ณด๋‚ด์ค€๋‹ค. ( HI! = 3byte )

A โ†’ B
A๋Š” B์—๊ฒŒ 42๋ฒˆ๋ถ€ํ„ฐ (seq=42) ๋ฐ์ดํ„ฐ๋ฅผ ๋ณด๋‚ด๋ ค๊ณ ํ•œ๋‹ค.
๋˜ํ•œ A๋Š” B์—๊ฒŒ 78๋ฒˆ๊นŒ์ง€ ๋ฐ์ดํ„ฐ๋ฅผ ๋ฐ›์•˜๋‹ค.
๋ฐ์ดํ„ฐ๋ฅผ ์ž˜ ๋ฐ›์•˜๋‹ค๊ณ  B์—๊ฒŒ ์•Œ๋ ค์ค˜์•ผํ•˜๊ธฐ ๋•Œ๋ฌธ์— A๋Š” ACK๋ฅผ ๋ณด๋‚ธ๋‹ค.

์ฆ‰, A๋Š” B์—๊ฒŒ ์ด๋ ‡๊ฒŒ ๋ณด๋‚ธ๋‹ค.
seq=42 (42๋ฒˆ ๋ถ€ํ„ฐ์˜ ๋ฐ์ดํ„ฐ์•ผ!),
ACK=79 (78๋ฒˆ๊นŒ์ง€ ๋ฐ์ดํ„ฐ๋ฅผ ์ž˜ ๋ฐ›์•˜์œผ๋‹ˆ 79๋ฒˆ๋ถ€ํ„ฐ์˜ ๋ฐ์ดํ„ฐ๋ฅผ ๋ณด๋‚ด์ค˜.)


B โ†’ A
B๋Š” A์—๊ฒŒ ์š”์ฒญ๋ฐ›์€ 79๋ฒˆ๋ถ€ํ„ฐ์˜ ๋ฐ์ดํ„ฐ๋ฅผ ๋ณด๋‚ด๊ฒŒ๋œ๋‹ค. (seq=79)
A์—๊ฒŒ 42๋ฒˆ๋ถ€ํ„ฐ์˜ ๋ฐ์ดํ„ฐ๋ฅผ ๋ฐ›์•˜๊ธฐ ๋•Œ๋ฌธ์— ์ž˜ ๋ฐ›์•˜๋‹ค๊ณ  ACK๋ฅผ ๋ณด๋‚ด์ค˜์•ผํ•œ๋‹ค. (๋ฐ์ดํ„ฐ์˜ ํฌ๊ธฐ๋Š” 3byte๋กœ ๋ช…์‹œ)

์ฆ‰, B๋Š” A์—๊ฒŒ ์ด๋ ‡๊ฒŒ ๋ณด๋‚ธ๋‹ค.
seq=79 (๋„ˆ๊ฐ€ ์š”์ฒญํ•œ 79๋ฒˆ๋ถ€ํ„ฐ ๋ฐ์ดํ„ฐ์•ผ.)
ACK=45 (A๊ฐ€ 42๋ฒˆ๋ถ€ํ„ฐ ์‹œ์ž‘ํ•˜๋Š” HI! ๋ผ๋Š” 3byte๋ฅผ ๋ณด๋ƒˆ๊ธฐ ๋•Œ๋ฌธ์— B๋Š” 42-44๋ฒˆ๊นŒ์ง€์˜ ๋ฐ์ดํ„ฐ๋ฅผ ๋ฐ›์€๊ฒƒ์ด๋‹ค. ๊ทธ๋ ‡๊ธฐ ๋•Œ๋ฌธ์— ๋‹ค์Œ ๋ฐ์ดํ„ฐ์ธ 45๋ฒˆ์„ ์š”์ฒญํ•œ๋‹ค.)


A โ†’ B
A๋Š” B๊ฐ€ ์š”์ฒญํ•˜๋Š” 45๋ฒˆ๋ถ€ํ„ฐ์˜ ๋ฐ์ดํ„ฐ๋ฅผ ๋ณด๋‚ด์ค˜์•ผํ•œ๋‹ค. (seq=45)
B์—๊ฒŒ ๋ฐ์ดํ„ฐ๋ฅผ ๋ฐ›์•˜๊ธฐ ๋•Œ๋ฌธ์— ์ž˜ ๋ฐ›์•˜๋‹ค๊ณ  ACK๋ฅผ ๋ณด๋‚ด์ค˜์•ผํ•œ๋‹ค.

์ฆ‰, A๋Š” B์—๊ฒŒ ์ด๋ ‡๊ฒŒ ๋ณด๋‚ธ๋‹ค.
seq=45 (B๊ฐ€ ์š”์ฒญํ•œ 45๋ฒˆ๋ถ€ํ„ฐ์˜ ๋ฐ์ดํ„ฐ์•ผ!)
ACK=82 (3byte์ธ HI!๋ฅผ 79๋ฒˆ๋ถ€ํ„ฐ ๋ฐ›์•˜์œผ๋‹ˆ A๋Š” B์—๊ฒŒ 79~81 ๋ฒˆ์˜ ๋ฐ์ดํ„ฐ๋ฅผ ๋ฐ›์€๊ฒƒ์ด๋‹ค. ๋”ฐ๋ผ์„œ ๋‹ค์Œ ๋ฐ์ดํ„ฐ์ธ 82๋ฒˆ์„ ์š”์ฒญํ•œ๋‹ค.)


๐Ÿ’ก Cumulative ACK

์—…๋กœ๋“œ์ค‘..

Cumulative ACK
๋ˆ„์  ACK
์•ž์˜ ACK์ด ์˜ค๋ฅ˜๊ฐ€ ๋‚ฌ์–ด๋„ ๋’ค์˜ ACK์ด ์ž˜ ๋„์ฐฉํ•˜๋ฉด sender๋Š” ์˜ค๋ฅ˜๋‚œ ACK๋„ ์ž˜ ๋„์ฐฉํ•œ ๊ฒƒ์œผ๋กœ ๊ฐ„์ฃผ

ACK=30 ์„ ๋ณด๋‚ด๋Š” ๋„์ค‘์— ACK์— loss๊ฐ€ ๋‚ฌ๋‹ค. (sender๋Š” ACK loss์ธ์ง€ data loss์ธ์ง€ ๋ชจ๋ฅธ๋‹ค.)
ํ•˜์ง€๋งŒ ACK=40์€ ์ •์ƒ์ ์œผ๋กœ sender์—๊ฒŒ ์ „๋‹ฌ์ด ๋˜์—ˆ๋‹ค.

๐Ÿ“Œ์ด๋•Œ sender๋Š” ACK=30์ด ์˜ค์ง€ ์•Š์•˜๊ธฐ ๋•Œ๋ฌธ์— seq=30์„ retransmit ํ•ด์ค„๊นŒ?
์•„๋‹ˆ๋‹ค.
์™œ๋ƒํ•˜๋ฉด ACK=40์ด sender์—๊ฒŒ ๋„์ฐฉํ–ˆ๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค.
ACK=40์ด๋ผ๋Š” ๋œป์€ 39๋ฒˆ๊นŒ์ง€์˜ ๋ฐ์ดํ„ฐ๋ฅผ ์ž˜ ๋ฐ›์•˜์Œ์„ ์˜๋ฏธํ•˜๊ธฐ ๋–„๋ฌธ์ด๋‹ค.

์ด๋ ‡๊ฒŒ ์ค‘๊ฐ„์˜ ACK์ด loss๊ฐ€ ๋‚˜๋„ ํ›„์˜ ACK์ด ์ž˜ ๋„์ฐฉํ•˜์—ฌ retransmit์„ ํ•˜์ง€ ์•Š๊ณ  ์ž˜ ๋ฐ›์•˜๋‹ค๊ณ  ์ƒ๊ฐํ•˜๋Š” ๊ฒƒ์„ Cumulative ACK ์ด๋ผ๊ณ  ํ•œ๋‹ค.

๐Ÿ“Œ๋งŒ์•ฝ seq=20 ์˜ data loss๋ผ๋ฉด?
B๋Š” A์—๊ฒŒ ACK=20์„ ๋ณด๋‚ด์„œ 20๋ถ€ํ„ฐ ์‹œ์ž‘ํ•˜๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ๋‹ค์‹œ ๋ฐ›์•„์•ผํ•œ๋‹ค.


๐Ÿ’ก Delayed ACK

Delayed ACK
์ฒ˜์Œ ACK์„ ๋ณด๋‚ด์ง€ ์•Š๊ณ  ๊ธฐ๋‹ค๋ฆฌ๋Š” ACK์ด ์žˆ์œผ๋ฉด ๊ทธ ๋•Œ ๋ฐ”๋กœ ๋ณด๋‚ธ๋‹ค.

TCP delays transmission of ACKs for up to 500ms

ACK์€ cumulative ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์ฒ˜์Œ ACK์€ ๋ณด๋‚ด์ง€ ์•Š๊ณ  ๋‘๋ฒˆ์งธ ACK,
์ฆ‰ ๊ธฐ๋‹ค๋ฆฌ๋Š” ACK(์ฒซ๋ฒˆ์งธ ACK์„ ๋ณด๋‚ด์ง€ ์•Š์•˜๊ธฐ์— ์ฒซ๋ฒˆ์งธ ACK์ด ๊ธฐ๋‹ค๋ฆฌ๊ณ  ์žˆ์Œ)์ด ์žˆ์„ ์‹œ์— ๋ฐ”๋กœ ACK์„ ๋ณด๋‚ด์ค€๋‹ค.

์žฅ์ 

  • ACK ์ ˆ์•ฝ
  • bandwith, traffic ์ ˆ์•ฝ

ํ•˜์ง€๋งŒ ์ด ๊ฒฝ์šฐ๋Š” ACK ๋‹จ๋…์œผ๋กœ ๋ณด๋‚ผ๋•Œ์—๋งŒ ํ•ด๋‹น๋œ๋‹ค.
๋งŒ์•ฝ receiver๊ฐ€ sender์—๊ฒŒ ์š”์ฒญ์˜ ์‘๋‹ต์œผ๋กœ ๋ณด๋‚ด์ค„ ๋ฐ์ดํ„ฐ๊ฐ€ ์žˆ์œผ๋ฉด ๊ธฐ๋‹ค๋ฆฌ์ง€ ์•Š๊ณ  ๋ฐ”๋กœ ๋ฐ์ดํ„ฐ์˜ header๋กœ piggybacking ํ•ด์„œ ๋ณด๋‚ด๋ฉด ๋œ๋‹ค.

์ฒ˜์Œ receiver ์—๊ฒŒ ๋ฐ์ดํ„ฐ๊ฐ€ ๋„์ฐฉํ•˜๋ฉด 500MS ๊ธฐ๋‹ค๋ฆฌ๋‹ค๊ฐ€
sender์—๊ฒŒ ๋ณด๋‚ผ ๋ฐ์ดํ„ฐ๊ฐ€ ์žˆ์œผ๋ฉด piggybacking ํ•˜๊ณ ,
๋ณด๋‚ผ ๋ฐ์ดํ„ฐ๊ฐ€ ์—†์œผ๋ฉด ACK์„ ํ•œ ์ฐจ๋ก€ ์‰ฐ๋‹ค.

๊ทธ ๋’ค๋กœ sender๊ฐ€ ๋ณด๋‚ด๋Š” ๋‘ ๋ฒˆ์งธ ๋ฐ์ดํ„ฐ๋ฅผ ๋ฐ›๊ณ  ACK์„ ๋ณด๋‚ด์ค€๋‹ค.
sender์—๊ฒŒ ๋ฐ์ดํ„ฐ๊ฐ€ ์˜ค์ง€ ์•Š์œผ๋ฉด(receiver๊ฐ€ 500MS ๋ฅผ ๊ธฐ๋‹ค๋ ธ๋Š”๋ฐ๋„ ์˜ค์ง€ ์•Š์œผ๋ฉด) time out ์ด๋‹ค.

๐Ÿ“Œ Time out ๋˜๋ฉด ์–ด๋–ป๊ฒŒ ๋ ๊นŒ?
sender๋Š” receiver์—๊ฒŒ ACK์„ ๋ฐ›์ง€ ๋ชปํ•œ๊ฒƒ์ด๋ฏ€๋กœ ACK์„ ๊ธฐ๋‹ค๋ฆฌ์ง€ ์•Š๊ณ  ๋ณด๋ƒˆ๋˜ segment๋ฅผ retransmit ํ•ด์ค€๋‹ค.

receiver ๋Š” time out์ด ๋˜๋ฉด ACK์„ ๋ณด๋‚ด์ง€ ์•Š๊ณ  retransmit์„ ๊ธฐ๋‹ค๋ฆฐ๋‹ค.

0๊ฐœ์˜ ๋Œ“๊ธ€