๐ง ์์ ์ฃผ๊ด์ ๋ฌธ์ & ๋ชจ๋ฒ ๋ต์
โ Q1. TCP์ UDP์ ์ฐจ์ด์ ์ 2๊ฐ์ง ์ด์ ์ค๋ช
ํ์์ค.
โ
๋ชจ๋ฒ ๋ต์:
- TCP๋ ์ฐ๊ฒฐ ์งํฅ(์ฐ๊ฒฐํ) ํ๋กํ ์ฝ์ด๋ฉฐ, ๋ฐ์ดํฐ ์ ์ก์ ์ ๋ขฐ์ฑ์ ๋ณด์ฅํ์ง๋ง UDP๋ ๋น์ฐ๊ฒฐํ์ผ๋ก ์ ๋ขฐ์ฑ์ ๋ณด์ฅํ์ง ์์ต๋๋ค.
- TCP๋ ์ ์ก ์์๋ฅผ ๋ณด์ฅํ๊ณ ์์ค ์ ์ฌ์ ์กํ์ง๋ง, UDP๋ ์์ ๋ณด์ฅ๊ณผ ์ฌ์ ์ก ๊ธฐ๋ฅ์ด ์์ต๋๋ค.
- TCP๋ ๋๋ฆฌ์ง๋ง ์์ ์ ์ด๋ฉฐ, UDP๋ ๋น ๋ฅด์ง๋ง ์ ๋ขฐ์ฑ์ด ๋ฎ์ต๋๋ค.
โ Q2. HTTP๋ ์ด๋ค ์ ์ก ํ๋กํ ์ฝ์ ๊ธฐ๋ฐ์ผ๋ก ๋์ํ๋๊ฐ? ๊ทธ ์ด์ ๋ ๊ฐ๋จํ ์ค๋ช
ํ์์ค.
โ
๋ชจ๋ฒ ๋ต์:
HTTP๋ TCP ๊ธฐ๋ฐ์ผ๋ก ๋์ํฉ๋๋ค.
TCP๋ ๋ฐ์ดํฐ ์ ์ก์ ์์์ ์ ๋ขฐ์ฑ์ ๋ณด์ฅํ๊ธฐ ๋๋ฌธ์, ์์ฒญํ ๋ฆฌ์์ค๋ฅผ ์ ํํ๊ฒ ์ ๋ฌ๋ฐ์์ผ ํ๋ HTTP์ ์ ๋ง์ต๋๋ค.
โ Q3. UDP๊ฐ TCP๋ณด๋ค ์ ํฉํ ์ํฉ์ 2๊ฐ์ง ์ด์ ์์๋ก ๋ค๊ณ ์ด์ ๋ฅผ ์ค๋ช
ํ์์ค.
โ
๋ชจ๋ฒ ๋ต์:
- ์ค์๊ฐ ์์ ์คํธ๋ฆฌ๋ฐ โ ์ฝ๊ฐ์ ์์ค์ด ์์ด๋ ๋๊ธฐ์ง ์๊ณ ๋น ๋ฅด๊ฒ ์ฌ์๋๋ ๊ฒ์ด ์ค์ํ๊ธฐ ๋๋ฌธ์
๋๋ค.
- ์จ๋ผ์ธ ๊ฒ์ โ ๋น ๋ฅธ ์๋ต์ด ์ค์ํ๋ฉฐ, ์ผ๋ถ ํจํท ์์ค์ ๋ฌด์ํด๋ ๊ฒ์ ์งํ์ด ๊ฐ๋ฅํ๊ธฐ ๋๋ฌธ์
๋๋ค.
- DNS ์์ฒญ โ ์งง๊ณ ๋น ๋ฅธ ์์ฒญ/์๋ต์ด๊ธฐ ๋๋ฌธ์ ์ฐ๊ฒฐ์ ๋งบ๋ TCP๋ณด๋ค UDP๊ฐ ํจ์จ์ ์
๋๋ค.
โ Q4. TCP๊ฐ โ์ ๋ขฐ์ฑ ์๋ ํ๋กํ ์ฝโ์ด๋ผ๊ณ ๋ถ๋ฆฌ๋ ์ด์ ๋ฅผ ์ค๋ช
ํ์์ค.
โ
๋ชจ๋ฒ ๋ต์:
TCP๋ ๋ฐ์ดํฐ ์ ์ก ์ค ํจํท์ ์์๋ฅผ ๋ณด์ฅํ๊ณ , ์์ค๋ ํจํท์ด ์์ ๊ฒฝ์ฐ ์ฌ์ ์กํ๋ฉฐ, ์์ ํ์ธ(ACK)์ ํตํด ๋ชจ๋ ๋ฐ์ดํฐ๊ฐ ์ ํํ๊ฒ ๋๋ฌํ๋์ง๋ฅผ ํ์ธํ๊ธฐ ๋๋ฌธ์ ์ ๋ขฐ์ฑ ์๋ ํ๋กํ ์ฝ์ด๋ผ ๋ถ๋ฆฝ๋๋ค.
โ Q5. HTTP ์์ฒญ ๋ฉ์์ง๋ ์ด๋ค ๊ตฌ์กฐ๋ก ์ด๋ฃจ์ด์ ธ ์๋๊ฐ?
โ
๋ชจ๋ฒ ๋ต์:
HTTP ์์ฒญ ๋ฉ์์ง๋ ๋ค์๊ณผ ๊ฐ์ ๊ตฌ์กฐ๋ก ์ด๋ฃจ์ด์ ธ ์์ต๋๋ค:
- ์์ฒญ ๋ผ์ธ (์:
GET /index.html HTTP/1.1)
- ์์ฒญ ํค๋๋ค (์:
Host: example.com, User-Agent: ...)
- ๋น ์ค
- ๋ฉ์์ง ๋ณธ๋ฌธ(Body) โ ์ฃผ๋ก
POST ์์ฒญ์์ ์ฌ์ฉ๋จ
โ Q6. TCP ํต์ ์์ 3-way handshake ๊ณผ์ ์ ๋ํด ์ค๋ช
ํ์์ค.
โ
๋ชจ๋ฒ ๋ต์:
- ํด๋ผ์ด์ธํธ๊ฐ ์๋ฒ์ ์ฐ๊ฒฐ ์์ฒญ(SYN)
- ์๋ฒ๊ฐ ์์ฒญ ์๋ฝ ๋ฐ ์๋ต(SYN+ACK)
- ํด๋ผ์ด์ธํธ๊ฐ ํ์ธ ์๋ต(ACK)
โ ์ด 3๋ฒ์ ํจํท ๊ตํ์ ํตํด ์ฐ๊ฒฐ์ ์๋ฆฝํ๋ฉฐ, ์ด๋ฅผ "3-way handshake"๋ผ ํฉ๋๋ค.
โ Q7. UDP๊ฐ ์ฐ๊ฒฐ ์์ด ํต์ ๊ฐ๋ฅํ ์ด์ ๋ฅผ ์ค๋ช
ํ์์ค.
โ
๋ชจ๋ฒ ๋ต์:
UDP๋ ๋ฐ์ดํฐ๋ฅผ ๋ณด๋ผ ๋ ์ฐ๊ฒฐ์ ๋งบ์ง ์๊ณ ๋ชฉ์ ์ง ์ฃผ์๋ง ์๊ณ ์์ผ๋ฉด ๋ฐ๋ก ์ ์กํ๊ธฐ ๋๋ฌธ์ ๋น์ฐ๊ฒฐํ ํ๋กํ ์ฝ์
๋๋ค. ์์ ์ฌ๋ถ ํ์ธ์ด๋ ์ค๋ฅ ๊ฒ์ถ, ์์ ๋ณด์ฅ์ ํ์ง ์๊ธฐ ๋๋ฌธ์ ์๋๊ฐ ๋น ๋ฅด๊ณ ๊ฐ๋จํ ๊ตฌ์กฐ์
๋๋ค.
โ Q8. TCP ๊ธฐ๋ฐ์ HTTP ํต์ ์ ๋ฐ์ํ ์ ์๋ ๋ฌธ์ ๋ฅผ ํ๋ ์ ์ํ๊ณ , ํด๊ฒฐ ๋ฐฉ๋ฒ์ ์ค๋ช
ํ์์ค.
โ
๋ชจ๋ฒ ๋ต์:
๋ฌธ์ : **์ง์ฐ ์๊ฐ(Latency)**์ด ์ปค์ ํ์ด์ง ๋ก๋ฉ ์๋๊ฐ ๋๋ ค์ง ์ ์์.
ํด๊ฒฐ: HTTP/2๋ HTTP keep-alive๋ฅผ ์ฌ์ฉํด ๋ค์ค ์์ฒญ์ ํ ์ปค๋ฅ์
์ผ๋ก ์ฒ๋ฆฌํ๊ฑฐ๋ ์ฐ๊ฒฐ์ ์ฌ์ฌ์ฉํจ์ผ๋ก์จ ํจ์จ์ ๋์ผ ์ ์์.
โ Q9. TCP๊ฐ ๋ฐ์ดํฐ๋ฅผ ์ ํํ ์ ์กํ๊ธฐ ์ํด ์ฌ์ฉํ๋ ๋ ๊ฐ์ง ์ฃผ์ ๋ฉ์ปค๋์ฆ์ ์ค๋ช
ํ์์ค.
โ
๋ชจ๋ฒ ๋ต์:
- ACK(ํ์ธ ์๋ต) โ ๋ฐ์ดํฐ๊ฐ ๋์ฐฉํ์์ ์๋ฆฌ๋ ์๋ต์ ๋ฐ์์ผ ๋ค์ ๋ฐ์ดํฐ ์ ์ก
- ์ฌ์ ์ก(Retransmission) โ ํจํท ์์ค ๋ฐ์ ์ ํ์ด๋จธ๋ฅผ ํตํด ์ฌ์ ์กํจ
โ Q10. HTTP์์ ์ํ์ฝ๋ 404์ 500์ ์๋ฏธ๋ฅผ ์ค๋ช
ํ์์ค.
โ
๋ชจ๋ฒ ๋ต์:
- 404 Not Found: ์์ฒญํ ๋ฆฌ์์ค๋ฅผ ์๋ฒ์์ ์ฐพ์ ์ ์์์ ์๋ฏธ
- 500 Internal Server Error: ์๋ฒ ๋ด๋ถ์์ ์ ์ ์๋ ์ค๋ฅ๊ฐ ๋ฐ์ํ์์ ์๋ฏธ
โ Q11. TCP์ ํ๋ฆ ์ ์ด์ ํผ์ก ์ ์ด์ ์ฐจ์ด๋ฅผ ๊ฐ๋จํ ์ค๋ช
ํ์์ค.
โ
๋ชจ๋ฒ ๋ต์:
- ํ๋ฆ ์ ์ด: ์์ ์๊ฐ ๊ฐ๋นํ ์ ์๋ ์๋๋ก ๋ฐ์ดํฐ๋ฅผ ๋ณด๋ด๋๋ก ์กฐ์
- ํผ์ก ์ ์ด: ๋คํธ์ํฌ ์ ์ฒด๊ฐ ๊ณผ๋ถํ๋์ง ์๋๋ก ์ ์ก ์๋๋ฅผ ์กฐ์
โ Q12. HTTP๋ ์ํ๋ฅผ ์ ์ฅํ์ง ์๋ ํ๋กํ ์ฝ์
๋๋ค. ์ด๊ฒ์ ์๋ฏธ๋ฅผ ์ค๋ช
ํ์์ค.
โ
๋ชจ๋ฒ ๋ต์:
HTTP๋ Stateless Protocol๋ก, ๊ฐ ์์ฒญ์ ๋
๋ฆฝ์ ์ด๋ฉฐ ์๋ฒ๋ ์ด์ ์์ฒญ์ ์ํ๋ ์ ๋ณด๋ฅผ ๊ธฐ์ตํ์ง ์์ต๋๋ค.
์ฆ, ์ฌ์ฉ์๊ฐ ๋ก๊ทธ์ธํ๋์ง ์ฌ๋ถ ๋ฑ์ ๋ณ๋์ ๋ฐฉ๋ฒ(cookie, session, token ๋ฑ)์ ํตํด ์ฒ๋ฆฌํด์ผ ํฉ๋๋ค.
โ Q13. HTTP์์ GET๊ณผ POST ์์ฒญ์ ์ฐจ์ด๋ฅผ ์ค๋ช
ํ์์ค.
โ
๋ชจ๋ฒ ๋ต์:
GET: ์์ฒญ ๋ฐ์ดํฐ๋ฅผ URL์ ํฌํจํ์ฌ ์ ์กํ๋ฉฐ, ์ฃผ๋ก ๋ฆฌ์์ค ์กฐํ์ ์ฌ์ฉ
POST: ์์ฒญ ๋ฐ์ดํฐ๋ฅผ **๋ณธ๋ฌธ(Body)**์ ๋ด์ ์ ์กํ๋ฉฐ, ์ฃผ๋ก ๋ฐ์ดํฐ ์ ์ถ์ด๋ ๋ฑ๋ก์ ์ฌ์ฉ
โ Q14. DNS๊ฐ ์๋ค๋ฉด ์น ๋ธ๋ผ์ฐ์ ๋ ์ด๋ป๊ฒ ๋์ํ ์ ์์์ง ์ค๋ช
ํ์์ค.
โ
๋ชจ๋ฒ ๋ต์:
DNS๊ฐ ์์ผ๋ฉด ๋ธ๋ผ์ฐ์ ๋ ์ฌ์ฉ์๊ฐ ์
๋ ฅํ ๋๋ฉ์ธ(ex: www.google.com)์ IP ์ฃผ์๋ก ๋ณํํ ์ ์์ด์ ์๋ฒ์ ์ฐ๊ฒฐํ ์ ์์ต๋๋ค. IP ์ฃผ์๋ฅผ ์๋์ผ๋ก ์
๋ ฅํด์ผ ํ๋ฏ๋ก ๋งค์ฐ ๋ถํธํ๊ณ ๋นํจ์จ์ ์
๋๋ค.
๐ ์์ฝ
์ด ๋ฌธ์ ๋ค์ ๋ชจ๋ ๋ด์ผ ํด์ฆ ์ถ์ ๋ฒ์์ธ HTTP / TCP / UDP์ ๊ฐ๋
๊ณผ ๋น๊ต, ๊ตฌ์กฐ, ํ์ฉ ์์ ์ค์ฌ์ผ๋ก ์ถ์ ๋ ๊ฐ๋ฅ์ฑ์ด ๋งค์ฐ ๋๋ค.
์๊ธฐ๋ณด๋จ ์ดํด ๊ธฐ๋ฐ์ ์์ฝ์ผ๋ก ์ ๋ฆฌํ๊ณ , ๊ฐ ๊ฐ๋
๊ฐ ์ฐจ์ด์ ๋น๊ต ์ค์ฌ์ผ๋ก ๋ณต์ตํ๋ฉด ์ข๋ค.
ํผ๊ฐ์~โค๏ธ