TCP & UDP(4 layer)
๐UDP
UDP(User Datagram Protocol)๋ ๋น์ฐ๊ฒฐํ ํ๋กํ ์ฝ์ด๋ค. ์ฆ, ๋ฐ์ดํฐ๋ฅผ ์ฃผ๊ณ ๋ฐ์ ๋ ์ฐ๊ฒฐ ์ ์ฐจ๋ฅผ ๊ฑฐ์น์ง ์๊ณ ๋ฐ์ ์๊ฐ ์ผ๋ฐฉ์ ์ผ๋ก ๋ฐ์ดํฐ๋ฅผ ๋ฐ์ ํ๋ค.
์ฐ๊ฒฐ ๊ณผ์ ์ด ์๊ธฐ ๋๋ฌธ์ TCP์ ๋นํด ์ ์์ฑ์ด ์์ง๋ง ์ ๋ขฐ์ฑ์ ๋จ์ด์ง๋ค.
UDP๋ ๋ฐ์ดํฐํจํท์ ์์ฐจ์ ์ผ๋ก ๋ณด๋ด๋๋ผ๋ ์ด ํจํท๋ค์ ์๋ก ๋ค๋ฅธ ํต์ ์ ๋ก๋ฅผ ํตํด ์ ๋ฌ๋ ์ ์์ด ๋์ฐฉ ์์ ๋ณด์ฅ์ด ์๋๋ค.
(๋จผ์ ๋ณด๋ธ ํจํท์ด ๋๋ฆฐ ์ ๋ก๋ฅผ ํตํด ์ ์ก๋ ๊ฒฝ์ฐ ๋์ค์ ๋ณด๋ธ ํจํท๋ณด๋ค ๋ฆ๊ฒ ๋์ฐฉํ ์ ์์ผ๋ฉฐ ์ต์
์ ๊ฒฝ์ฐ ์ ์ค ๋ฐ์ํจ. ์ด ๊ฒฝ์ฐ TCP์๋ ๋ค๋ฅด๊ฒ UDP๋ ์ค๊ฐ์ ํจํท์ด ์ ์ค์ด๋ ๋ณ์กฐ๋์ด๋ ์ฌ์ ์ก ํ์ง ์๋๋ค.)
UDP ํน์ง
- ๋ฐ์ดํฐ ๊ฒฝ๊ณ๋ฅผ ๊ตฌ๋ถํ๋ค.(๋ฐ์ดํฐ๊ทธ๋จ ์๋น์ค)
- ์ ๋ณด๋ฅผ ์ฃผ๊ณ ๋ฐ์ ๋ ์ ๋ณด๋ฅผ ๋ณด๋ด๊ฑฐ๋ ๋ฐ๋๋ค๋ ์ ํธ์ ์ฐจ๋ฅผ ๊ฑฐ์น์ง ์๋๋ค.
- ์๋ฏธ์๋ ์๋ฒ๋ฅผ ๊ตฌ์ถํ๊ธฐ ์ํด์๋ ์ผ์ผ์ด ํจํท์ ๊ด๋ฆฌํด์ค์ผ ํ๋ค.
- ํจํท ์ค๋ฒํค๋๊ฐ ์ ์ด ๋คํธ์ํฌ ๋ถํ๊ฐ ๊ฐ์๋๋ค.
- VoIP, DNS
UDP ํค๋ ์ ๋ณด
๐TCP
TCP(Transmission Control Protocol)๋ ์ฐ๊ฒฐ ์งํฅ์ ํ๋กํ ์ฝ์ด๋ค. ์ฆ, ํด๋ผ์ด์ธํธ์ ์๋ฒ๊ฐ ์ฐ๊ฒฐ๋ ์ํ์์ ๋ฐ์ดํฐ๋ฅผ ์ฃผ๊ณ ๋ฐ๋ ํ๋กํ ์ฝ์ ์๋ฏธํ๋ฉฐ ํด๋ผ์ด์ธํธ๊ฐ ์ฐ๊ฒฐ ์์ฒญ์ ํ๊ณ ์๋ฒ๊ฐ ์ฐ๊ฒฐ์ ์๋ฝํ๋ฉด ํต์ ์ ๋ก๊ฐ ๊ณ ์ ๋๊ณ , ๋ชจ๋ ๋ฐ์ดํฐ๋ ๊ณ ์ ๋ ํต์ ์ ๋ก๋ฅผ ํตํด ์์ฐจ์ ์ผ๋ก ์ ๋ฌ๋๋ค. ๋ฐ๋ผ์ ์์ ์ ์ด๋ฉฐ ์ ํํ๊ฒ ๋ฐ์ดํฐ๋ฅผ ์ ๋ฌํ ์ ์๋ค๋ ์ฅ์ ์ด ์๋ค.
=> TCP ์์ ์ฐ๊ฒฐ ์ค์ (connection establishment)๋ 3-way handshake๋ฅผ ํตํด ํํด์ง๋ค!!
์ฃผ๋ก client์ Server ๋๋ P2P Socket ํต์ ๋ฑ, ๋คํธ์ํฌ๋ฅผ ์ฌ์ฉํ ํต์ ์ ํ ๋ TCP ํต์ ์ ๋ง์ด ์ฌ์ฉํ๋ค.
TCP ํน์ง
- ์ฐ๊ฒฐํ (connnection-oriented) ์๋น์ค๋ก ์ฐ๊ฒฐ์ด ์ฑ๊ณตํด์ผ ํต์ ์ด ๊ฐ๋ฅํ๋ค. _ ์ ์ฐ๊ฒฐ ํ์ ์ก
- ๋ฐ์ดํฐ์ ๊ฒฝ๊ณ๋ฅผ ๊ตฌ๋ถํ์ง ์๋๋ค. (๋ฐ์ดํธ ์คํธ๋ฆผ ์๋น์ค)
- ๋ฐ์ดํฐ์ ์ ์ก ์์๋ฅผ ๋ณด์ฅํ๋ค. (๋ฐ์ดํฐ์ ์์ ์ ์ง๋ฅผ ์ํด ๊ฐ ๋ฐ์ดํธ๋ง๋ค ๋ฒํธ๋ฅผ ๋ถ์ฌ)
- ์ ๋ขฐ์ฑ์๋ ๋ฐ์ดํฐ๋ฅผ ์ ์กํ๋ค. (Sequence Number, Ack Number๋ฅผ ํตํ ์ ๋ขฐ์ฑ ๋ณด์ฅ)
- ๋ฐ์ดํฐ ํ๋ฆ ์ ์ด(์์ ์ ๋ฒํผ ์ค๋ฒํ๋ก์ฐ ๋ฐฉ์ง) ๋ฐ ํผ์ก ์ ์ด(ํจํท ์๊ฐ ๊ณผ๋ํ๊ฒ ์ฆ๊ฐํ๋ ํ์ ๋ฐฉ์ง)
- ์ฐ๊ฒฐ์ ์ค์ (3-way handshaking)๊ณผ ํด์ (4-way handshaking)
- ์ ์ด์ค(Full-Duplex)// ์ ์ก์ด ์๋ฐฉํฅ์ผ๋ก ๋์์ ์ผ์ด๋ ์ ์์, ์ ๋์ (Point to Point) ์๋น์ค// ๊ฐ ์ฐ๊ฒฐ์ด ์ ํํ 2 ๊ฐ์ ์ข
๋จ์ ์ ๊ฐ์ง๊ณ ์์ผ๋ฉฐ 1:1 ํต์ ๋ง ๊ฐ๋ฅํจ
- UDP๋ณด๋ค ์ ์ก์๋๊ฐ ๋๋ฆฌ๋ค.(ํนํ, ๊ณ ์ ํต์ ์ ๋ก๊ฐ ์ต๋จ์ ์ด ์๋๊ฒฝ์ฐ)
- TCP ๋ ๋ฉํฐ์บ์คํ
์ด๋ ๋ธ๋ก๋์บ์คํ
์ ์ง์ํ์ง ์๋๋ค.
TCP ํค๋ ์ ๋ณด
์ ์ด ๋นํธ ์ ๋ณด
[์ฐธ๊ณ ]
https://coding-factory.tistory.com/614