-
Notifications
You must be signed in to change notification settings - Fork 0
TCP, UDP
YoungMinKim edited this page Jul 17, 2021
·
2 revisions
- ์ธํฐ๋ท ํต์
- IP
- TCP, UDP
- PORT
- DNS
TCP/UDP๋ ์ด๋ ์ํฉ์ ์ฌ์ฉ์ด ๋๋๊ฒ์ด๊ณ , ์ด๋ค ํน์ง์ด ์๋์ง ์ ๋ฆฌ
-
์ ํ๋ฆฌ์ผ์ด์
๊ณ์ธต
- HTTP, FTP
-
์ ์ก ๊ณ์ธต
- TCP, UDP
-
์ธํฐ๋ท ๊ณ์ธต
- IP
-
๋คํธ์ํฌ ์ธํฐํ์ด์ค ๊ณ์ธต
- LAN Driver
- LAN ์ฅ๋น
์ฑํ
ํ๋ก๊ทธ๋จ์ ํตํด ๋ฉ์์ง ์ ์ก ๊ณผ์ :
1. ์น ๋ธ๋ผ์ฐ์ ์ ์ฑํ
ํ๋ก๊ทธ๋จ์ ํตํด Hello World๋ผ๋ ๋ฉ์์ง ์
๋ ฅ
2. ์์ผ ๋ผ์ด๋ธ๋ฌ๋ฆฌ(Socket Library)๋ฅผ ํตํด OS๊ณ์ธต(์ ์ก๊ณ์ธต)์ ํด๋น ๋ฉ์์ง ์ ๋ฌ
3. OS๊ณ์ธต(์ ์ก๊ณ์ธต)์์๋ TCP๋ฅผ ์ฌ์ฉํ์ฌ ํด๋น ๋ฉ์์ง๋ฅผ ํจํท์ ๋ด์ ์ธํฐ๋ท ๊ณ์ธต์ ์ ๋ฌ
4. OS๊ณ์ธต(์ธํฐ๋ท๊ณ์ธต)์์๋ IP ํจํท ์์ฑ ํ TCP ํจํท์ ์ ๋ณด๋ฅผ ๋ด๋๋ค
5. ๋ง์ง๋ง์ผ๋ก ๋คํธ์ํฌ ๊ณ์ธต์ IP ํจํท์ ์ ๋ฌ.
6. ์ด ๋ ๋คํธ์ํฌ ์ธํฐํ์ด์ค LAN์นด๋๋ฅผ ํตํด ๋๊ฐ๋ ์ด๋๋ท ํ๋ ์์ด ํฌํจ๋์ด ์๋ฒ์ ๋์ง๋ค
TCP/IP ํจํท์ ์ดํด:
์์์ ๋งํ๋ค์ํผ, TCP์ ๋ณด๋ฅผ IPํจํท์ผ๋ก ๊ฐ์ธ์ค๋ค.
์ด๋ TCP ์ ๋ณด์๋ ์ถ๋ฐ์ง PORT, ๋ชฉ์ ์ง PORT, ์ ์ก์ ์ด ์ ๋ณด, ์์, ๊ฒ์ฆ ์ ๋ณด, ์ ์ก๋ฐ์ดํฐ๋ฅผ ๋ด๊ณ ์๋ค.
์ ์ก ์ ์ด ํ๋กํ ์ฝ(Transmission Control Protocol)
-
์ฐ๊ฒฐ ์งํฅ (๊ณ์ํด์ ์ฐ๊ฒฐ์ ์ ์งํ๋ ํน์ง)
- TCP 3way handshake(๊ฐ์ ์ฐ๊ฒฐ : ์ค์ ๋ฌผ๋ฆฌ์ ์ฐ๊ฒฐ์ด ์๋, ๋ ผ๋ฆฌ์ ์ฐ๊ฒฐ)
-
๋ฐ์ดํฐ ์ ๋ฌ ๋ณด์ฆ
- ๋ฉ์์ง ์ ์ก ์ ํจํท์ด ์ค๊ฐ์ ๋๋ฝ๋๋ฉด ์ ์ ์๋ค
-
์์ ๋ณด์ฅ
- ๋ฐ์ดํฐ๊ฐ ์ ์ก๋๋ ์์๋ฅผ ๋ณด์ฅํ๋ค
- ์ฐ๊ฒฐ์งํฅ, ํจํท ์์ค ์ฌ๋ถ, ์์ ๋ณด์ฅ์ด๋ผ๋ ํน์ง์ ํตํด ์ ๋ขฐ์ฑ์ด ๋์ ํ๋กํ ์ฝ์ด๋ค
- ํ์ฌ๋ ๋๋ถ๋ถ TCP ์ฌ์ฉํ์ง๋ง UDP๋ฅผ ์ฌ์ฉํ๋ ์๋น์ค ์ญ์ ๋ง๋ค
-
SYN : ์ ์ ์์ฒญ
- Client์ธก์์ ์๋ฒ์ชฝ์ ์ฐ๊ฒฐ์ด ๊ฐ๋ฅํ์ง ์์ฒญ์ ๋ณด๋ธ๋ค.
-
ACK : ์์ฒญ ์๋ฝ
- ์ฐ๊ฒฐ์ด ๊ฐ๋ฅํ๋ฉด ํด๋น Client ์๋ฒ์ ์๋ต์ ๋ณด๋ธ๋ค.
- ์ฐธ๊ณ : 3. ACK์ ํจ๊ป ๋ฐ์ดํฐ ์ ์ก ๊ฐ๋ฅ
TCP ๋ฐ์ดํฐ ์ ๋ฌ ๋ณด์ฆ:
1. โ๏ธ๊ธฐ์กด IP(Interent Protocol)๋ง์ผ๋ก๋ ๋ฐ์ดํฐ ์ ๋ฌ ๋ณด์ฆ์ด ๋ถ๊ฐ๋ฅํ๋ค
ex) ์ฝ๊ฒ ๋งํด ๋ฐ์ดํฐ๊ฐ ์๋ฒ์ ์ ๋์ฐฉ์ ํ๋ ์ง ํ์ธํ ๋ฐฉ๋ฒ์ด ์์(IP๋ง์ผ๋ก)
2. TCP/IP์์ ๋ฐ์ดํฐ๋ฅผ ์ ์กํ๊ฒ๋๋ฉด ์๋ฒ์์ ๋ฐ์ดํฐ๋ฅผ ์ ๋ฐ์๋ค๋ ์๋ต์ ๋ณด๋ด์ค๋ค.
3. ์ฌ๊ธฐ์ ํ๋ฒ ๋ ๋ณต๊ธฐํด์ผ ํ๋ ๋ถ๋ถ์ TCP๋ IP์ ํ๊ณ์ฑ์ ๊ทน๋ณตํ๊ธฐ ์ํด ๋์จ ํ๋กํ ์ฝ
4. ์ด๋ค ๋ฌธ์ ๊ฐ ์์ผ๋ฉฐ, ํด๋น ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํ ๋ฐฉ๋ฒ์ ๋ชจ์ํ๋ ๊ฒ์ ํฌ์ปค์ค
TCP ๋ฐ์ดํฐ ์์ ๋ณด์ฆ:
1. ํจํท์์ ๋ฐ์ดํฐ๋ฅผ ๋ด๋๋ค.
2. ํจํท(1๋ฒ, 2๋ฒ, 3๋ฒ)์ด ์ธํฐ๋ท๋ง์ ๋์ ธ์ง๋ค, ์ด ๋ ์๋ง์ ์๋ฒ(๋
ธ๋)๋ฅผ ํตํด ๋ชฉ์ ์ง ์๋ฒ์ ๋์ฐฉ
3. ๊ทผ๋ฐ ํจํท์ด 2๋ฒ, 3๋ฒ, 1๋ฒ ์์ผ๋ก ๋์ฐฉ ํ์๋ค
4. ์ด ๋ ๋ชฉ์ ์ง ์๋ฒ๋ ํจํท์ ์์๊ฐ ์๋ชป ๋์์์ ํ๋จํ๊ณ , ํด๋น ํจํท์ ์ ๋ถ ๋ฒ๋ฆฐ๋ค
5. ํ์ ํด๋ผ์ด์ธํธ์ธก์ 1๋ฒ ํจํท๋ถํฐ ๋ค์ ๋ณด๋ด๋ผ๋ ์๋ต(ACK)์ ๋ณด๋ธ๋ค
6. ํด๋น ์์ฒญ์ ๋ฐ์ ํด๋ผ์ด์ธํธ๋ ํจํท์ ๋ฐ์ดํฐ๋ฅผ ์๋ก ๋ด์ ์์ฒญ(Request)์ ๋ณด๋ธ๋ค
์ฌ์ฉ์ ๋ฐ์ดํฐ๊ทธ๋จ ํ๋กํ ์ฝ(User Datagram Protocol)
- ํ์ ๋ํ์ง์ ๋น์ (๊ธฐ๋ฅ์ด ๊ฑฐ์ ์์)
-
๋น์ฐ๊ฒฐ์งํฅ
- TCP 3 way handshake๋ฅผ ์ง์ํ์ง ์๋๋ค
- ์ผ๋ฐฉ์ ์ผ๋ก ํด๋ผ์ด์ธํธ ์ธก์์ ์๋ฒ ์ธก์ผ๋ก ์ ์กํ๋ค ์๊ฐํ๋ฉด ๋จ
-
๋ฐ์ดํฐ ์ ๋ฌ ๋ณด์ฆ
- UDP๋ ๋ฐ์ดํฐ ์ ๋ฌ ๋ณด์ฆ์ ํ์ง ์๋๋ค, ๋ฐ์ดํฐ๊ฐ ์์ค๋๋ ์ฐพ์ ์ ์์
-
์์ ๋ณด์ฅ
- UDP๋ ๋ฐ์ดํฐ์ ์์ ์ญ์ ๋ณด์ฆ์ ํ์ง ์๋๋ค
-
์ฌ์ฉ ๋ชฉ์
- ๋ฐ์ดํฐ ์ ๋ฌ ๋ฐ ์์๊ฐ ๋ณด์ฅ๋์ง ์์ง๋ง, ๋จ์ํ๊ณ ๋น ๋ฆ
- ์ฆ, ์๋๊ฐ TCP์ ๋นํด ์๋นํ ๋น ๋ฅด๊ธฐ์ ์ฌ์ฉ์ด ๋๋ค.
-
์ ๋ฆฌ
- IP์ ๊ฑฐ์ ๊ฐ๋ค. +PORT +์ฒดํฌ์ฌ ์ ๋๋ง ์ถ๊ฐ
- ์ ํ๋ฆฌ์ผ์ด์ ์์ ์ถ๊ฐ ์์ ํ์
TCP?, UDP?:
ํ์ฌ ์ธํฐ๋ท๋ง์ ๋๋ถ๋ถ TCP ํ๋กํ ์ฝ์ ๊ธฐ๋ฐ์ผ๋ก ๊ตฌํ์ด ๋์ด์๋ค.
ํ์ง๋ง UDP๋ฅผ ํตํด ๋์ฑ ๋ ์ต์ ํ๋ฅผ ์ํํ ์ ์๋ค.