Transport Layer
๐์ปดํจํฐ ๋คํธ์ํฌ
Transport service
- ๋ค๋ฅธ ํธ์คํธ์์ ์คํ๋๋ ์ ํ๋ฆฌ์ผ์ด์
ํ๋ก์ธ์ค ๊ฐ์ ๋
ผ๋ฆฌ์ ์ธ ํต์ ์ ์ ๊ณต
-ํธ๋์คํฌํธ ํ๋กํ ์ฝ์ ์ข
๋จ์์คํ
์์ ์คํ
- ์ก์ ์ธก : ์ ํ๋ฆฌ์ผ์ด์
๋ฉ์์ง๋ ์ธ๊ทธ๋จผํธ๋ก ๋ถํ ๋์ด ๋คํธ์ํฌ ๊ณ์ธต์ ์ ๋ฌ
- ์ธ๊ทธ๋จผํธ ํค๋ ๊ฐ ๊ฒฐ์
- ์ธ๊ทธ๋จผํธ ์์ฑ
- ์์ฑ๋ ์ธ๊ทธ๋จผํธ๋ฅผ ip๊ณ์ธต์ ์ ๋ฌ
- ์์ ์ธก : ์ธ๊ทธ๋จผํธ๋ฅผ ๋ฉ์์ง๋ก ์ฌ๊ฒฐํฉํ๊ณ ์ ํ๋ฆฌ์ผ์ด์
๊ณ์ธต์ ์ ๋ฌ
- ip๊ณ์ธต์์ ์ธ๊ทธ๋จผํธ ์์
- ํค๋ ๊ฐ ์ ๊ฒ
- ์์ฉ๊ณ์ธต์ ์ ๋ฌํ ๋ฉ์์ง ์ถ์ถ
- ์์ผ ๊ฒฝ์ ํ์ฌ ์์ฉ ๊ณ์ธต์ผ๋ก ๋ฉ์์ง ์ญ๋ค์คํ ์ ์ก
- ์ก์ ์ธก : ์ ํ๋ฆฌ์ผ์ด์
๋ฉ์์ง๋ ์ธ๊ทธ๋จผํธ๋ก ๋ถํ ๋์ด ๋คํธ์ํฌ ๊ณ์ธต์ ์ ๋ฌ
- ์ธํฐ๋ท ์์ฉ ํ๋ก๊ทธ๋จ์์ ์ ํ ๊ฐ๋ฅํ 2๊ฐ์ง ํธ๋์คํฌํธ ํ๋กํ ์ฝ : TCP,UDP
๋ค์คํ
- ์ก์ ์ธก ๋ค์คํ : ์์ฉ ๊ณ์ธต์ ๋ค์ ์์ผ์ผ๋ก๋ถํฐ ๋ฐ์ดํฐ๋ฅผ ๋ฐ์ ์ถํ ์ญ๋ค์คํ์ ๋๋นํ์ฌ ํธ๋์คํฌํธ ํค๋ ์ถ๊ฐ
์ญ๋ค์คํ
- ์์ ์ธก ์ญ๋ค์คํ : ๋คํธ์ํฌ ๊ณ์ธต์์ ํค๋ ์ ๋ณด๊ธฐ๋ฐ์ผ๋ก ์์ ๋ ์ธ๊ทธ๋จผํธ๋ฅผ ์ ํฉํ ์์ผ์ผ๋ก ์ ๋ฌ
- ํธ์คํธ๋ ip๋ฐ์ดํฐ๊ทธ๋จ ์์
- ๊ฐ ๋ฐ์ดํฐ๊ทธ๋จ์๋ ์ก์ ์ง ip์ฃผ์์ ๋ชฉ์ ์ง ip์ฃผ์ ํฌํจ
- ๊ฐ ๋ฐ์ดํฐ๊ทธ๋จ์ ํ๊ฐ์ ํธ๋์คํฌํธ ๊ณ์ธต ์ธ๊ทธ๋จผํธ ํฌํจ์์ผ ์ ์ก
- ๊ฐ ์ธ๊ทธ๋จผํธ๋ ์ก์ ์ง์ ๋ชฉ์ ์ง ํฌํธ๋ฒํธ ํฌํจ
- ํธ์คํธ๋ ์์ ํ ์ธ๊ทธ๋จผํธ์ ํฌํจ๋ ip์ฃผ์์ ํฌํธ๋ฒํธ ์ด์ฉํ์ฌ ์ ์ ํ ์์ผ์ผ๋ก ์ ๋ฌ
UDP
- ๋น์ฐ๊ฒฐํ ํธ๋์คํฌํธ ํ๋ก ํ ์ฝ
- UDP ์ก์์ ์ ๊ฐ ํธ๋์์ดํน ์์
- ๊ฐ UDP์ธ๊ทธ๋จผํธ๋ ๋ ๋ฆฝ์ ์ผ๋ก ์ฒ๋ฆฌ
- RTT์ง์ฐ์ ์ ๋ฐํ๋ ์ฐ๊ฒฐ ์ค์ ๋ถํ์
- ์ก์์ ์๊ฐ์ ์ฐ๊ฒฐ ์ํ ๊ด๋ฆฌ ๋ถํ์
- ์์ ํค๋ ํฌ๊ธฐ
- ํผ์ก ์ ์ด ์์
UDP ์ก์ ์ ๋์ ์ ์ฐจ
- ์์ฉ ๊ณ์ธต์ ๋ฉ์์ง ์ ๋ฌ๋ฐ์
- UDP์ธ๊ทธ๋จผํธ ํค๋ ๊ฐ ๊ฒฐ์
- UDP ์ธ๊ทธ๋จผํธ ์์ฑ
- ์์ฑ๋ ์ธ๊ทธ๋จผํธ๋ฅผ ip๊ณ์ธต์ผ๋ก ์ ๋ฌ
UDP์์ ์ ๋์ ์ ์ฐจ
- ip๊ณ์ธต์์ ์ธ๊ทธ๋จผํธ ์์
- UDP ํค๋ ๊ฐ ์ค ์ฒดํฌ์ฌ ๊ฐ ์ ๊ฒ
- ์์ฉ ๊ณ์ธต์ ๋ฉ์์ง ์ถ์ถ
- ์์ผ ๊ฒฝ์ ํ์ฌ ์์ฉ ๊ณ์ธต์ผ๋ก ๋ฉ์์ง ์ญ ๋ค์คํ
์ฒดํฌ์ฌ
- ์์ ๋ ์ธ๊ทธ๋จผํธ์ ํฌํจ๋์ด ์ ์ก ์ค ์๋ฌ ํ์ง ์ฉ๋
- ๋๊ฐ์ 16๋นํธ ์ ์ ๋ํ๊ณ sum์ ๋ณด์ checksum ๊ถ๊ธฐ
์ ๋ขฐ๊ธฐ๋ฐ ํต์ ๊ด๋ จ ์ฉ์ด
- ARQ ๋ฐฉ์ : ์ฌ์ ์ก์ ๊ธฐ๋ฐ์ผ๋ก ๋งํฌ์ ์ ๋ขฐ์ฑ์ ํ๋ณดํ๋ ๊ธฐ๋ฒ
- ์์ ์๊ฐ ์ก์ ์์ ์ฌ์ ์ก์ ์๊ตฌ
- ์์ ํจํท์ ํฌํจ๋ ์ค๋ฅ ๊ฒ์ถ ์ ๋ณด๋ก๋ถํฐ ์๋ฌ ํฌํจ ์ฌ๋ถ ์ ๊ฒํ๊ณ ,ํด๋น ํจํท์ ์ฌ์ ์ก ์์ฒญ
- ์ ์ ์์ ํจํท์ ๋ํ ์ ์ ํ์ธ(ACK)๊ณผ ๋น์ ์ ์์ ํจํท์ ๋ํ ๋ถ์ ํ์ธ(NAK) ์ฌ์ฉ
- ์ก์ ์๋ ํ์ด๋จธ์ ๋๊ธฐ ์๊ฐ ์ค์ ํ ํจํท ์ก์ ํ๊ณ ์ค์ ์๊ฐ ๋ด ํ์ ์์ ๊ฒฝ์ฐ ์ฌ์ ์ก
- ์ค๋ฅ ์ ์ ์ฒด๊ณ๊ฐ ์๋ ์ค๋ฅ ๊ฒ์ถ ๋ง์ผ๋ก๋ ํต์ ํ์ ์ ์ ๋ขฐ์ฑ ํ๋ณด ๊ฐ๋ฅ
- ๊ธฐ๋ฅ : ์ค๋ฅ ๊ฒ์ถ, ์ก์ ์์ ์ํ ์์ ์์ ์์ ์ฌ๋ถ ํ์ธ
- ์์ ์๊ฐ ์ก์ ์์ ์ฌ์ ์ก์ ์๊ตฌ
- ์ ์ง ๋๊ธฐ ๋ฐฉ์
- ์ก์ ์๊ฐ ์์ ์์ ํ๊ฐ์ ํจํท์ ์ ์กํ๊ณ ๋๊ธฐ ์ํ์์ ๊ธ์ ํ์ธ ์๋ต์์์ ํ๋ฉด,ํ์ ํจํท์ ์ ์ก
- GoBackn ARQ๋ฐฉ์
- ์ก์ ์๊ฐ ์์ ์์ ํ๋ฒ์ ์ฌ๋ฌ๊ฐ์ ํจํท์ ๋ณด๋ธ ํ ํ๋์ ์ต์ข ๊ธ์ ํ์ธ ์๋ต์ ์์ ํ๋ฉด ๋ค์์์์ ์ฌ๋ฌ ํจํท์ ์์ฐจ์ ์ก
- Selective Repeat ARQ
- ์ก์ ์๊ฐ ์์ ์์ ํ๋ฒ์ ์ฌ๋ฌ๊ฐ์ ํจํท์ ๋ณด๋ธํ ์์ ์๋ก๋ถํฐ NAK๋ฅผ ์์ ํ๋ฉด, NAK์์ ์ง์ ํ ํจํท ๋๋ ์ง์ ํ ์ดํ ํจํท์ ์์ฐจ ์ฌ์ ์ก
rdt
- ๋จ๋ฐํฅ ๋ฐ์ดํฐ ์ ์ก๋ง ๊ณ ๋ ค
- ์ก์ ์์ ์์ ์ ๊ฐ ๋์ ์ ์์ ์ ํ ์ํ ๋จธ์ (FSM)์ฌ์ฉ
rdt1.0
- ์ก์ ์์ ์์ ์ ๊ฐ์ ๋ถ๋ฆฌ๋ FSM
- ์ก์ ์๋ ํ์ ์ฑ๋์ ๋ฐ์ดํฐ ์ ์ก
- ์์ ์๋ ํ์ ์ฑ๋๋ก๋ถํฐ ๋ฐ์ดํฐ ์์
rdt2.0
- ํ์ ์ฑ๋์์ ๋นํธ ์ค๋ฅ ๋ฐ์ ๊ฐ๋ฅ (์ฒดํฌ์ฌ ์ด์ฉํ์ฌ ๋นํธ ์ค๋ฅ ๊ฒ์ถ)
- ์์ ์๋ NAK์์ ๋๋ฉด ํจํท ์ฌ์ ์ก
- stop and wait(์ ์ก ํ ๋๊ธฐ)
์ค๋ฅ ACK/NAK ์์ฒด์ ๋นํธ ์ ์ก ์ค๋ฅ๊ฐ ๋ฐ์ํ ๊ฒฝ์ฐ : ์ด ๊ฒฝ์ฐ ์ก์ ์๋ ์์ ์์ ์ํฉ์ ์ ์ ์์ ๋จ์ํ๊ฒ ์ฌ์ ์กํ ์๋์์:์ค๋ณตํจํท๋ฐ์
์ค๋ณต ํจํท ์ฒ๋ฆฌ : ์ก์ ์๋ NAKํจํท ์์ ํ๋ฉด ํ์ฌ ํจํท์ ์ฌ์ ์ก ์ก์ ์๋ ๊ฐ ํจํท์ ์์ ๋ฒํธ ์ถ๊ฐ โ> rdt2.1 ์์ ์๋ ์ค๋ณต ํจํท ๋ฒ๋ฆผ
์ฌ๊ธฐ์ NAK๋ง ์๊ณ ACK์ ๋ฒํธ๊ฐ ์๋๊ฒ์ด โ> rdt2.2
rdt 3.0
- ํ์ ์ฑ๋์ ๋ฐ์ดํฐ ๋๋ ACK๋ฅผ ์์คํ ์ ์์
- ์ก์ ์๋ ์์ ์์ ACK๊ฐ ํ์ ๋๊ธฐ๊น์ง ํฉ๋ฆฌ์ ์ธ ์๊ฐ ๋์ ๋๊ธฐ
GO-BACK-N
- ์ก์ ์ : ACK ์์ ๋์ง ์์ ํจํท ํฌํจํด์ โ์๋์ฐโ ํฌ๊ธฐ N๊น์ง ๋์ ์ ์ก
- ์์ ์ : ํ์ฌ๊น์ง ์ ์ ์์ ๋ ํจํท๋ค์ ๋ํ ์ค๋ฆ์ฐจ์์ ์์๋ฒํธ๋ก ACK์ก์
- ์ค๋ฆ์ฐจ์์ผ๋ก ๊ฐ์ฅ ๋์ ์์ ํจํท์ ๋ํ ACK ์ฌ์ ์ก(๋ฌถ์์ผ๋ก ์ ์ก)
- ๋ฌถ์์ผ๋ก ์ ์กํ๋ฉด ๋ญ๋น๋๊น ์ ํ์ ๋ฐ๋ณต์ฌ์ฉ
์ ํ์ ๋ฐ๋ณต : ์์ ์๋ ์ ์ ์์ ๋ ํจํท์ ๋ํ ๊ฐ๋ณ ํ์ธ ์๋ต
- ์ก์ ์๋ ACK ์๋ต์ ๋ฐ์ง ๋ชปํ ํจํท๋ง์ ์ฌ์ ์ก
- ์ ํ์ ๋ฐ๋ณต์ ํ๊ณ(์๋์ฐ ํฌ๊ธฐ๊ฐ ํด ๊ฒฝ์ฐ) : ์์ ์๊ฐ ํ๋ ์์ด ์ค๋ณต์ธ์ง ์๋ก์ด ๋ฐ์ดํฐ์ธ์ง ํ์
ํ๊ธฐ ํ๋ค์ด ํ๋ณด๋ ๊ณต๊ฐ์ ์ ์ฅํด๋ฒ๋ฆผ
- ์๋์ฐ ํฌ๊ธฐ <= ์ก์ ๋ฒํธ ๊ณต๊ฐํฌ๊ธฐ/2
- ์ ํ์ ๋ฐ๋ณต์ ํ๊ณ(์๋์ฐ ํฌ๊ธฐ๊ฐ ํด ๊ฒฝ์ฐ) : ์์ ์๊ฐ ํ๋ ์์ด ์ค๋ณต์ธ์ง ์๋ก์ด ๋ฐ์ดํฐ์ธ์ง ํ์
ํ๊ธฐ ํ๋ค์ด ํ๋ณด๋ ๊ณต๊ฐ์ ์ ์ฅํด๋ฒ๋ฆผ
TCP
- 1๋1 : ์ก์ ์์ค ์์ ์ ๊ฐ๊ฐ ํ๊ฐ
- ์ ๋ขฐ ๊ธฐ๋ฐ, ์์ ๊ธฐ๋ฐ ์ฐ์ ์คํธ๋ฆผ
- ๋์ ACK
์์ ๋ฒํธ
- ์ก์ ์์ ์ก์ ์ธ๊ทธ๋จผํธ์์ ์ ์ก๋๋ ๋ฐ์ดํฐ์ ์์ ์์ ๋ฒํธ ACK ๋ฒํธ
- ์์ ์๋ก๋ถํฐ ์ก์ ์๊ฐ ์ง์ ์ ์ ์ ์์ ํ ์ธ๊ทธ๋จผํธ์ ๋ฐ์ดํฐ์ ๋ง์ง๋ง ๋ฒํธ ๋ค์ ๋ฒํธ
์์๋ฒํธ 42 ack 79 -> <- ์์๋ฒํธ 79 ack 43 ์์๋ฒํธ 43 ack 80->
- TCP ํ์์์ ๊ฐ์ ์ด๋ป๊ฒ ์ค์ ํ๋๊ฐ
- RTT๋ณด๋ค ์ปค์ผํ์ง๋ง RTT๋ ๊ณ ์ ์๋ ๊ฐ๋ณ
- ๋๋ฌด ์งง๋ค๋ฉด : ์ฆ์ ํ์์์๊ณผ ๋ถํ์ํ ์ฌ์ ์ก
- ๋๋ฌด ๊ธธ๋ค๋ฉด : ์ธ๊ทธ๋จผํธ ์์ค ๋์ ์ง์ฐ
TCP ACK ์์ฑ ๊ถ๊ณ
- ๊ธฐ๋ค๋ฆฌ๋ ์์๋ฒํธ๋ฅผ ๊ฐ์ง ์์์ ๋ง๋ ์ธ๊ทธ๋จผํธ์ ๋์ฐฉ ๊ธฐ๋ค๋ฆฌ๋ ์์๋ฒํธ๊น์ง์ ๋ชจ๋ ๋ฐ์ดํฐ๋ ์ด๋ฏธ ์์
- ์ง์ฐ๋ ACK. ๋ค์ ์ธ๊ทธ๋จผํธ๊ฐ ๋์ฐฉํ ๋๊น์ง ์ต๋ 500ms๋ฅผ ๊ธฐ๋ค๋ฆผ ๋ง์ฝ์ ๊ทธ๋๊น์ง ๋ค์ ์ธ๊ทธ๋จผํธ๊ฐ ๋์ฐฉํ์ง ์์ผ๋ฉด ACK๋ฅผ ๋ณด๋
- ๊ธฐ๋ค๋ฆฌ๋ ์์๋ฒํธ๋ฅผ ๊ฐ์ง ์์์ ๋ง๋ ์ธ๊ทธ๋จผํธ๊ฐ ๋์ฐฉ ACK์ ์ก์ ๊ธฐ๋ค๋ฆฌ๋ ๋ ๋ค๋ฅธ ์ธ๊ทธ๋จผํธ๊ฐ ์กด์ฌ
- ์ฆ์ ๋๊ฐ์ ์์์ ๋ง๋ ์ธ๊ทธ๋จผํธ์ ๋ํด์ ํ๋์ ๋์ ๋ ACK๋ฅผ ๋ณด๋
- ๊ธฐ๋ค๋ฆฌ๋ ๊ฒ๋ณด๋ค ๋์ ์์๋ฒํธ๋ฅผ ๊ฐ์ง ์์๊ฐ ํ๋ฆฐ ์ธ๊ทธ๋จผํธ๊ฐ ๋์ฐฉํ์ฌ ๊ฐ๊ฒฉ์ด ๋ฐ๊ฒฌ๋จ(์ค๊ฐ์ ํ ์ธ๊ทธ๋จผํธ๊ฐ ์์ด)
- ๊ธฐ๋ค๋ฆฌ๋ ๋ฐ์ดํธ ์์๋ฒํธ๋ฅผ ํฌํจํ ์ค๋ณต ํ์ธ ์๋ต์ ๋ณด๋
- ์์ ๋ ๋ฐ์ดํฐ๊ฐ ๊ฐ๊ฒฉ์ ๋ถ๋ถ์ ๋๋ ๋ชจ๋ ์ฑ์ฐ๋ ๊ฒฝ์ฐ
- ์์ ๋ ์ธ๊ทธ๋จผํธ๊ฐ ๊ฐ์ฅ ๋ฎ์ ์์๋ฒํธ๋ฅผ ๊ฐ์ง๊ฐ๊ฒฉ์ ์ฑ์ฐ๋ ๊ฒฝ์ฐ , ์ฆ์ ACK๋ฅผ ๋ณด๋
ํ๋ฆ์ ์ด(flow control)
- TCP ์ฐ๊ฒฐ์ ์์ ์๋ ์์ ๋ฒํผ๋ฅผ ๊ฐ์ง๊ณ ์์
- ํ๋ฆ์ ์ด : ์ก์ ์๋ ๋ฐ์ดํฐ๋ฅผ ๋๋ฌด ๋ง์ด, ๋๋ฌด ๋นจ๋ฆฌ ๋ณด๋ด์ ์์ ์์ ๋ฒํผ๋ฅผ ๋์น๊ฒ ํ์ง ์์
- ์์ ์๊ฐ ์ก์ ์์ ์ ์ก์ ์ ์ดํ์ฌ , ์์ ์ ์์ ๋ฒํผ์ ์ฌ์ ๊ณต๊ฐ ์ด์์ผ๋ก ๊ณผ๋ํ๊ฑฐ๋ ๋น ๋ฅด๊ฒ ๋ฐ์ดํฐ๋ฅผ ์ ์กํ์ง ๋ชปํ๋๋ก ์ ์ดํ๋๊ฒ
- ์๋ ์ผ์น ์๋น์ค : ๋ณด๋ด๋ ์๋๋ฅผ ์ ํ๋ฆฌ์ผ์ด์ ์ด ์ฝ๋ ์๋์ ๊ฐ๊ฒ ํด์ค
- ์ ํ๋ฆฌ์ผ์ด์ ํ๋ก์ธ์ค๊ฐ ๋ฒํผ๋ก๋ถํฐ ๋ฐ์ดํฐ๋ฅผ ์ฝ๋ ๊ฒ์ด ๋ง์ด ๋๋ฆด ์ ์์
- ์์ ์๊ฐ ์ธ๊ทธ๋จผํธ์ RcvWindow ์ ๊ฐ์ ํฌํจํ๋ ๋ฐฉ๋ฒ์ผ๋ก ์ฌ์ฉ ๊ฐ๋ฅํ ๋ฒํผ ๊ณต๊ฐ์ ์๋ ค์ค
- ์ก์ ์๊ฐ ํ์ธ ์๋ต ๋์ง ์์ ๋ฐ์ดํธ์ ํฌ๊ธฐ๋ฅผ RcvWindow๋ก ์ ํ
TCP ์ฐ๊ฒฐ , ์ฐ๊ฒฐ ์ข ๋ฃ
- ์ฐ๊ฒฐ๊ด๋ฆฌ : ํธ๋ ์์ดํน์ ํตํด ์ฐ๊ฒฐ ๊ด๋ฆฌ (2,3way handshake๊ฐ์๋ค)
- 3๋ฐฉํฅ handshake
-
- ํด์์ด์ธํธ๊ฐ TCPSYN์ธ๊ทธ๋จผํธ๋ฅผ ์๋ฒ๋ก ๋ณด๋(์ต์ด์ ์์๋ฒํธ ์ ํ, ๋ฐ์ดํฐ ์์)
-
- ์๋ฒ๊ฐ SYN์ ๋ฐ๊ณ SYNACK์ธ๊ทธ๋จผํธ๋ก ์๋ต(์๋ฒ๊ฐ ๋ฒํผ๋ฅผ ํ ๋น, ์๋ฒ์ ์ต์ด ์์๋ฒํธ๋ฅผ ์ ํ)
-
- ํด๋ผ์ด์ธํธ๊ฐ SYNACK๋ฅผ ๋ฐ์ ACK์ธ๊ทธ๋จผํธ๋ก ์๋ต
-
- ์ฐ๊ฒฐ ์ข
๋ฃ : ํด๋ผ์ด์ธํธ์ ์๋ฒ๋ ํ์์ ์ฃผ๋์ ์ผ๋ก ์ฐ๊ฒฐ์ ์ข
๋ฃ
- Fin ๋นํธ = 1๋กํ์ฌ ์๋๋ฐฉ์ผ๋ก TCP์ธ๊ทธ๋จผํธ ์ ์ก
ํผ์ก์ ์ด์ ์์น
- ๋คํธ์ํฌ๊ฐ ์ฒ๋ฆฌํ์ง ๋ชป ํ ์์ค์ผ๋ก ์ฌ๋ฌ ๋ฐ์ ์ง์์ ๋ง์ ๋ฐ์ดํฐ๋ฅผ ๋น ๋ฅด๊ฒ ์ ์กํ๋๊ฒ
-
ํ์ : ํจํท์ง์ฐ(๋ผ์ฐํฐ๋ฒํผ์์ ํ์) ํจํท ์์ค(๋ผ์ฐํฐ์์ ๋ฒํผ ์ค๋ฒ ํ๋ก์ฐ)
- ํํท์ ๋ผ์ฐํฐ์ ๋ฒํผ๊ฐ ๊ฐ๋์ฐจ๋ฉด ์์ค๋๊ฑฐ๋ ๋ฒ๋ ค์ง ์ ์์ - ์ฌ์ ์ก ํ์ํจ
- ํ์ง๋ง ์ก์ ์๋ ํ์์์์ ์ํด ์ด๋ฏธ ์ ์ ๋ ๋ ํจํท์ ์ฌ ์ ์กํ ์๋ ์์