๋คํธ์ํฌ์ ๊ธฐ์
์ฐ๋ฆฌ๊ฐ ์ง๊ธ ์ฌ์ฉํ๋ ์ธํฐ๋ท ํ๋กํ ์ฝ(IP) ๊ธฐ๋ฐ์ ๋คํธ์ํฌ๋ ๋์ ์๋ ๋น์ ํต์ ์์ ๋๋นํ๊ธฐ ์ํ ํต์ ๋ง ๊ตฌ์ถ์ ์ํด ๋ฏธ ๊ตญ๋ฐฉ์ฑ์์ ์งํํ ์๋ฅดํ๋ท(ARPANET) ํ๋ก์ ํธ์์ ์์๋์๋ค. ์ด๋ ๊ธฐ์กด ์ฌ์ฉ๋๋ ํ์ ๊ตํ ๋ฐฉ์์ด ์๋ ํจํท๊ตํ ๋ฐฉ์์ผ๋ก ๋คํธ์ํฌ๋ฅผ ๊ตฌ์ถํ๊ณ ์ด๋ฅผ ํ ๋๋ก ํ์ฌ์ ์ธํฐ๋ท ํต์ ๋ฐฉ์์ ๊ธฐ๋ฐ์ด ์ธ์์ก๋ค.
๊ณผ๊ฑฐ์ ์ฌ์ฉํ ํ์ ๊ตํ ๋ฐฉ์
ํ์ ๊ตํ ๋ฐฉ์์ ๋ง์น ํตํํ๋ ๊ฒ ์ฒ๋ผ ๋ฐ์ ์์ ์์ ์ ๊ฐ์ ๋ฐ์ดํฐ๋ฅผ ์ ์กํ ์ ์ฉ์ ์ ๋ฏธ๋ฆฌ ํ ๋นํ๊ณ ๋์ ์ฐ๊ฒฐํ๋ค. ๋ง์ฝ ๋ด๊ฐ ์ฐ๊ฒฐํ๊ณ ์ถ์ ์๋๊ฐ ๋ค๋ฅธ ์๋์ ์ฐ๊ฒฐ์ค์ด๋ผ๋ฉด ์๋๋ฐฉ์ ๊ธฐ์กด ์ฐ๊ฒฐ์ด ๋์ด์ง๊ณ ๋์์ผ ์๋๋ฐฉ๊ณผ ์ฐ๊ฒฐํ ์ ์๋ค. ๋ํ ํน์ ํ์ ์ด ๋์ด์ง๋ ๊ฒฝ์ฐ์๋ ์ฒ์๋ถํฐ ๋ค์ ์ฐ๊ฒฐ์ ์ฑ๋ฆฝํด์ผ ํด์ ๋ฐ์ดํฐ ์ ์ก ์์ฒญ์ด ๋ง์์ง๋ฉด ๋ง์์ง ์๋ก ํจ์จ์ด ๋จ์ด์ก๋ค.
ํจํท๊ตํ ๋ฐฉ์
์๋ฅดํ๋ท ํ๋ก์ ํธ๋ ํ์ ์ด ์ฌ์ฉ์ค์ด๋ฉด ๋๊ธฐ๋ฅผ ํด์ผํ๋ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด ํจํท๊ตํ ๋ฐฉ์์ ๋คํธ์ํฌ๋ฅผ ๊ณ ์ํ๊ฒ ๋๋ค. ํจํท๊ตํ ๋ฐฉ์์ ํจํท์ด๋ผ๋ ๋จ์๋ก ๋ฐ์ดํฐ๋ฅผ ์๊ฒ ๋๋์ด ์ ์กํ๋ ๋ฐฉ์์ด๋ค. ๊ฐ ํจํท์๋ ์ถ๋ฐ์ง์ ๋ชฉ์ ์ง ์ ๋ณด๊ฐ ์๊ณ ์ด์ ๋ฐ๋ผ ํจํท์ด ๋ชฉ์ ์ง๋ฅผ ํฅํด ๊ฐ์ฅ ํจ์จ์ ์ธ ๋ฐฉ์์ผ๋ก ์ด๋ํ ์ ์์ด ์ด๋ฅผ ์ด์ฉํ๋ฉด ํน์ ํ์ ์ ์ ์ฉ์ ์ผ๋ก ํ ๋นํ์ง ์๊ณ ๋น ๋ฅด๊ณ ํจ์จ์ ์ผ๋ก ๋ฐ์ดํฐ ์ ์ก์ด ๊ฐ๋ฅํ๋ค.
IP (์ธํฐ๋ท ํ๋กํ ์ฝ)
๋ณต์กํ ์ธํฐ๋ท ๋ง ์ ์๋ง์ ๋ ธ๋(ํ๋์ ์๋ฒ ์ปดํจํฐ)๋ฅผ ์ง๋ ์ด๋ป๊ฒ ์๋ฒ์ ํด๋ผ์ด์ธํธ๊ฐ ํต์ ์ ํ ๊น? ์ธํฐ๋ท ํ๋กํ ์ฝ์ ์ถ๋ฐ์ง์ ๋ชฉ์ ์ง์ ์ ๋ณด๋ฅผ IP์ฃผ์๋ผ๋ ํน์ ํ ์ซ์๊ฐ์ผ๋ก ํ๊ธฐํ๊ณ ํจํท๋จ์๋ก ๋ฐ์ดํฐ๋ฅผ ์ ์กํ๋ค. ์ด ๋ ์ธํฐ๋ท ํ๋กํ ์ฝ ์์์ ์ฃผ๊ณ ๋ฐ๋ IP ํจํท์ ํ๋ฐฐ ์ก์ฅ์ฒ๋ผ ์ ์ก๋ฐ์ดํฐ๋ฅผ ๋ฌด์ฌํ ์ ์กํ๊ธฐ ์ํด ์ถ๋ฐ์ง IP, ๋ชฉ์ ์ง IP์ ๊ฐ์ ์ ๋ณด๋ฅผ ํฌํจํ๋ค.
ํจํท ๋จ์๋ก ์ ์กํ๋ฉด ๋ ธ๋๋ค์ ๋ชฉ์ ์ง IP์ ๋๋ฌํ๊ธฐ ์ํด ์๋ก ๋ฐ์ดํฐ๋ฅผ ์ ๋ฌํ๊ณ , ์ด๋ฅผ ํตํด ๋ณต์กํ ์ธํฐ๋ท ๋ง ์ฌ์ด์์๋ ์ ํํ ๋ชฉ์ ์ง๋ก ํจํท์ ์ ์กํ ์ ์๋ค. ์๋ฒ์์ ๋ฌด์ฌํ ๋ฐ์ดํฐ๋ฅผ ์ ์ก๋ฐ๋๋ค๋ฉด ์๋ฒ๋ ์ด์ ๋ํ ์๋ต์ IP ํจํท์ ์ด์ฉํด ํด๋ผ์ด์ธํธ์ ์ ๋ฌํ๋ค.
IP ํ๋กํ ์ฝ์ ํ๊ณ
- ๋น์ฐ๊ฒฐ์ฑ
๋ง์ฝ ํจํท์ ๋ฐ์ ๋์์ด ์๊ฑฐ๋ ์๋น์ค ๋ถ๋ฅ ์ํ์ฌ๋ ํด๋ผ์ด์ธํธ๋ ์๋ฒ์ ์ํ๋ฅผ ํ์ ํ ๋ฐฉ๋ฒ์ด ์์ด ํจํท์ ๊ทธ๋๋ก ์ ์กํ๊ฒ ๋๋ค.
- ๋น์ ๋ขฐ์ฑ
์ค๊ฐ์ ์๋ ์๋ฒ๊ฐ ๋ฐ์ดํฐ๋ฅผ ์ ๋ฌํ๋ ์ค ์ฅ์ ๊ฐ ์๊ฒจ ํจํท์ด ์ค๊ฐ์ ์์ค๋๋๋ผ๋ ํด๋ผ์ด์ธํธ๋ ์ด๋ฅผ ํ์ ํ ๋ฐฉ๋ฒ์ด ์๋ค. ๋ํ ์ ๋ฌ ๋ฐ์ดํฐ ์ฉ๋์ด ํด ๊ฒฝ์ฐ ์ด๋ฅผ ํจํท ๋จ์๋ก ๋๋ ๋ฐ์ดํฐ๋ฅผ ์ ๋ฌํ๊ฒ ๋๋๋ฐ, ํจํท๋ค์ ์ค๊ฐ์ ์๋ก ๋ค๋ฅธ ๋ ธ๋๋ฅผ ํตํด ์ ๋ฌ๋ ์ ์์ด ํด๋ผ์ด์ธํธ๊ฐ ์๋ํ์ง ์์ ์์๋ก ์๋ฒ์ ํจํท์ด ๋์ฐฉํ ์ ์๋ค.
TCP / UDP
์์ ๋ค๋ฃฌ IP ํจํท์๋ ๋น์ฐ๊ฒฐ์ฑ, ๋น์ ๋ขฐ์ฑ๊ณผ ๊ฐ์ ํ๊ณ๋ค์ด ์กด์ฌํ๋๋ฐ, ๋คํธ์ํฌ ๊ณ์ธต ๊ตฌ์กฐ๋ฅผ ํตํด ์ด๋ฐ ํ๊ณ๋ฅผ ๋ณด์ํ ์ ์๋ค.
์ค์ ๋ก ์ปดํจํฐ๊ฐ ๋คํธ์ํฌ๋ฅผ ํตํด ๋ฐ์ดํฐ๋ฅผ ์ ์กํ๋ ์ ์ฐจ๋ ๋ค์๊ณผ ๊ฐ๋ค.
- HTTP ๋ฉ์ธ์ง๊ฐ ์์ฑ๋๋ฉด ํ๋ก๊ทธ๋จ์ด ๋คํธ์ํฌ์์ ๋ฐ์ดํฐ๋ฅผ ์ก์์ ํ ์ ์๋๋ก ๋คํธ์ํฌ ํ๊ฒฝ์ ์ฐ๊ฒฐํ ์ ์๊ฒ ๋ง๋ค์ด์ง ์ฐ๊ฒฐ๋ถ์ธ ๋คํธ์ํฌ ์์ผ(Socket)์ ํตํด ์ ๋ฌ๋๋ค.
- ๋ฐ์ดํฐ๋ฅผ ํฌํจํ TCP ์ธ๊ทธ๋จผํธ๋ฅผ ๋จผ์ ์์ฑํ๋ค.
- TCP ์ธ๊ทธ๋จผํธ๋ฅผ ํฌํจํ๋ IP ํจํท์ ์์ฑํ๋ค. (TCP/IP ํจํท)
- ๋ง๋ค์ด์ง TCP/IP ํจํท์ LAN ์นด๋์ ๊ฐ์ ๋ฌผ๋ฆฌ์ ๊ณ์ธต์ ์ง๋๊ธฐ ์ํด ์ด๋๋ท ํ๋ ์ ์ํฌ์ ํฌํจํ์ฌ ์๋ฒ๋ก ์ ์ก๋๋ค.
TCP/IP ํจํท
TCP ์ธ๊ทธ๋จผํธ์๋ IP ํจํท์ ์ถ๋ฐ์ง IP์ IP ์ ๋ณด๋ฅผ ๋ณด์ํ ์ ์๋ ์ถ๋ฐ์ง PORT, ๋ชฉ์ ์ง PORT, ์ ์ก ์ ์ด, ์์, ๊ฒ์ฆ ์ ๋ณด ๋ฑ์ ํฌํจํ๋ค.
TCP์ ํน์ง
TCP๋ ๊ฐ์ ๊ณ์ธต์ ์ํ UDP์ ๋นํด ์๋์ ์ผ๋ก ์ ๋ขฐํ ์ ์๋ ํ๋กํ ์ฝ์ด๋ฉฐ, ๋ค์๊ณผ ๊ฐ์ ํน์ง์ด ์๋ค.
- ์ฐ๊ฒฐ ์งํฅ - TCP 3 Way Handshake (๊ฐ์์ฐ๊ฒฐ)
TCP๋ ์ฅ์น๋ค ์ฌ์ด์ ๋ ผ๋ฆฌ์ ์ธ ์ ์์ ์ฑ๋ฆฝํ๊ธฐ ์ํด 3 Way Handshake๋ฅผ ์ฌ์ฉํ๋ ์ฐ๊ฒฐ์งํฅํ ํ๋กํ ์ฝ์ด๋ค.
- 3 Way Handshake
- ํด๋ผ์ด์ธํธ๋ ์๋ฒ์ ์ ์์ ์์ฒญํ๋ SYN(Synchronize, ๋๊ธฐํ) ํจํท์ ๋ณด๋ธ๋ค.
- ์๋ฒ๋ SYN์์ฒญ์ ๋ฐ๊ณ ํด๋ผ์ด์ธํธ์๊ฒ ์์ฒญ์ ์๋ฝํ๋ค๋ ACK(Acknowledgment, ์น์ธ)์ SYN๊ฐ ์ค์ ๋ ํจํท์ ๋ฐ์กํ๊ณ , ํด๋ผ์ด์ธํธ๊ฐ ๋ค์ ACK๋ก ์๋ตํ๊ธฐ๋ฅผ ๊ธฐ๋ค๋ฆฐ๋ค.
- ํด๋ผ์ด์ธํธ๊ฐ ์๋ฒ์๊ฒ ACK์ ๋ณด๋ด๋ฉด ์ด ์ดํ๋ถํฐ ์ฐ๊ฒฐ์ด ์ฑ๋ฆฝ๋์ด ๋ฐ์ดํฐ๋ฅผ ์ ์กํ ์ ์๋ค. (ํ์ฌ๋ ์ต์ ํ๊ฐ ์ด๋ฃจ์ด์ ธ ์ด ๋ ๋ฐ์ดํฐ๋ฅผ ํจ๊ป ๋ณด๋ด๊ธฐ๋ ํ๋ค.)
- ๋ง์ฝ ์๋ฒ๊ฐ ๊บผ์ ธ์๋ค๋ฉด ํด๋ผ์ด์ธํธ๊ฐ SYN์ ๋ณด๋ด๊ณ ์๋ฒ์์ ์๋ต์ด ์๊ธฐ ๋๋ฌธ์ ๋ฐ์ดํฐ๋ฅผ ๋ณด๋ด์ง ์๋๋ค.
- 3 Way Handshake
- ๋ฐ์ดํฐ ์ ๋ฌ ๋ณด์ฆ
TCP๋ ๋ฐ์ดํฐ ์ ์ก์ด ์ฑ๊ณต์ ์ผ๋ก ์ด๋ฃจ์ด์ง๋ค๋ฉด ์ด์ ๋ํ ์๋ต์ ๋๋ ค์ฃผ๊ธฐ ๋๋ฌธ์ IP ํจํท์ ํ๊ณ์ธ ๋น์ฐ๊ฒฐ์ฑ์ ๋ณด์ํ ์ ์๋ค.
- ์์ ๋ณด์ฅ
๋ง์ฝ ํจํท์ด ์์๋๋ก ๋์ฐฉํ์ง ์๋๋ค๋ฉด TCP ์ธ๊ทธ๋จผํธ์ ์๋ ์ ๋ณด๋ฅผ ํ ๋๋ก ๋ค์ ํจํท ์ ์ก์ ์์ฒญํด ์ด๋ฅผ ํตํด IP ํจํท์ ํ๊ณ์ธ ๋น์ ๋ขฐ์ฑ(์์๊ฐ ๋ณด์ฅ์๋จ)์ ๋ณด์ํ ์ ์๋ค.
- ์ ๋ขฐํ ์ ์๋ ํ๋กํ ์ฝ
UDP
UDP๋ IP ํ๋กํ ์ฝ์ PORT, ์ฒดํฌ์ฌ(์ค๋ณต ๊ฒ์ฌ์ ํ ํํ) ํ๋ ์ ๋ณด๋ง ์ถ๊ฐ๋ ๋จ์ํ ํ๋กํ ์ฝ์ด๋ค. ์์ TCP ํน์ง๊ณผ ๋น๊ตํด ๋ณด๋ฉด ์ ๋ขฐ์ฑ์ ๋ฎ์ง๋ง 3 Way Handshake ๋ฐฉ์์ ์ฌ์ฉํ์ง ์์ TCP์ ๋น๊ตํด ๋น ๋ฅธ ์๋๋ฅผ ๋ณด์ฅํ๋ค.
HTTP3๋ UDP๋ฅผ ์ฌ์ฉํ๋ฉฐ ์ด๋ฏธ ์ฌ๋ฌ ๊ธฐ๋ฅ์ด ๊ตฌํ๋ TCP๋ณด๋ค๋ ํ์ ๋ํ์ง์ฒ๋ผ ์ปค์คํฐ๋ง์ด์ง์ด ๊ฐ๋ฅํ๊ณ , ์ ๋ขฐ์ฑ๋ณด๋ค๋ ์ฐ์์ฑ์ด ์ค์ํ ์๋น์ค(ex. ์ค์๊ฐ ์คํธ๋ฆฌ๋ฐ)์ ์์ฃผ ์ฌ์ฉ๋๋ค.
TCP vs. UDP
TCP | UDP |
---|---|
์ฐ๊ฒฐ์งํฅํ ํ๋กํ ์ฝ | ๋น ์ฐ๊ฒฐ์งํฅํ ํ๋กํ ์ฝ |
์ ์ก ์์ ๋ณด์ฅ | ์ ์ก ์์ ๋ณด์ฅ X |
๋ฐ์ดํฐ ์์ ์ฌ๋ถ ํ์ธํจ | ๋ฐ์ดํฐ ์์ ์ฌ๋ถ ํ์ธํ์ง ์์ |
์ ๋ขฐ์ฑ ๋์ง๋ง ์๋ ๋๋ฆผ | ์ ๋ขฐ์ฑ ๋ฎ์ง๋ง ์๋ ๋น ๋ฆ |
๋คํธ์ํฌ ๊ณ์ธต ๋ชจ๋ธ
๋คํธ์ํฌ ๊ณ์ธต ๋ชจ๋ธ์ ๋ค์๊ณผ ๊ฐ์ด ํฌ๊ฒ OSI 7๊ณ์ธต๊ณผ TCP/IP 4๊ณ์ธต์ผ๋ก ๋๋๋ค. IP ํ๋กํ ์ฝ๋ณด๋ค ๋ ๋์ ๊ณ์ธต์ TCP ํ๋กํ ์ฝ์ด ์กด์ฌํ๊ธฐ ๋๋ฌธ์ ์์ ๋ค๋ฃฌ IP ํ๋กํ ์ฝ์ ํ๊ณ๋ฅผ ๋ณด์ํ ์ ์๋ค.
OSI 7๊ณ์ธต ๋ชจ๋ธ
OSI 7๊ณ์ธต ๋ชจ๋ธ์ ISO(International Organization for Standardization)๋ผ๊ณ ํ๋ ๊ตญ์ ํ์คํ๊ธฐ๊ตฌ์์ 1984๋ ์ ์ ์ ํ ํ์ค ๊ท๊ฒฉ์ด๋ค. ๊ณผ๊ฑฐ์๋ ๊ฐ์ ํ์ฌ์์ ๋ง๋ ์ปดํจํฐ๋ผ๋ฆฌ๋ง ํต์ ์ด ๊ฐ๋ฅํ๊ณ ๋ค๋ฅธ ํ์ฌ์ ์์คํ ์ด๋ผ๋ ๋คํธ์ํฌ ์ ํ์ ๊ด๊ณ ์์ด ์ํธ ํต์ ์ด ๊ฐ๋ฅํ ๊ท์ฝ, ์ฆ ํ๋กํ ์ฝ(Protocol)์ด ํ์ํ๋ค. ์ด๋ฅผ ์ํด ISO์์ ์ ์กฐ์ฌ์ ์๊ด ์์ด ๊ณตํต์ผ๋ก ์ฌ์ฉํ ์ ์๋ ๋คํธ์ํฌ ํ์ค ๊ท๊ฒฉ์ ์ ์ํ ๊ฒ์ด๋ค. OSI 7๊ณ์ธต ๋ชจ๋ธ์ ํ๋์จ์ด ๋ฐ ์ํํธ์จ์ด๊ฐ ์ํํ๋ ๊ธฐ๋ฅ์ ๋ฐ๋ผ ๋คํธ์ํฌ๋ฅผ ์ด๋ฃจ๊ณ ์๋ ๊ตฌ์ฑ์์๋ค์ 7๋จ๊ณ๋ก ๋๋๊ณ , ๊ฐ ๊ณ์ธต์ ํ์ค์ ์ ํ๋ค.
OSI 7๊ณ์ธต ๋ชจ๋ธ์ ํ์คํ๋ฅผ ํตํด ํฌํธ, ํ๋กํ ์ฝ ํธํ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ณ ๋คํธ์ํฌ ์์คํ ์์ ์ผ์ด๋๋ ์ผ์ ํด๋น ๊ณ์ธต ๋ชจ๋ธ์ ์ด์ฉํด ์ฝ๊ฒ ์ค๋ช ํ ์ ์๊ฒ ํจ์ ๋ชฉ์ ์ผ๋ก ํ๋ค. ๋ํ ๋คํธ์ํฌ ๊ด๋ฆฌ์๊ฐ ๋ฌธ์ ๊ฐ ๋ฐ์ํ์ ๋ ์ด๊ฒ์ด ๋ฌผ๋ฆฌ์ ์ธ ๋ฌธ์ ์ธ์ง, ์์ฉ ํ๋ก๊ทธ๋จ๊ณผ ๊ด๋ จ์ด ์๋์ง ์์ธ์ ๋ฒ์๋ฅผ ์ขํ ๋ฌธ์ ๋ฅผ ์ฝ๊ฒ ํ์ ํ ์ ์๊ฒ ํ๋ค.
๊ฐ ๊ณ์ธต์ ๊ตฌ๋ถ
- 1๊ณ์ธต : ๋ฌผ๋ฆฌ๊ณ์ธต
์์คํ ๊ฐ์ ๋ฌผ๋ฆฌ์ ์ธ ์ฐ๊ฒฐ๊ณผ ์ ๊ธฐ ์ ํธ๋ฅผ ๋ณํ ๋ฐ ์ ์ดํ๋ ๊ณ์ธต์ด๋ค. ์ฃผ๋ก ๋ฌผ๋ฆฌ์ ์ฐ๊ฒฐ๊ณผ ๊ด๋ จ๋ ์ ๋ณด๋ฅผ ์ ์ํ๋ฉฐ, ์ฃผ๋ก ์ ๊ธฐ ์ ํธ๋ฅผ ์ ๋ฌํ๋๋ฐ ์ด์ ์ ๋๊ณ ๋ค์ด์จ ์ ๊ธฐ ์ ํธ๋ฅผ ๊ทธ๋๋ก ์ ์ ๋ฌํ๋ ๊ฒ์ด ๋ชฉ์ ์ด๋ค.
- ex. ๋์งํธ ๋๋ ์๋ ๋ก๊ทธ๋ก ์ ํธ ๋ณ๊ฒฝ
- 2๊ณ์ธต : ๋ฐ์ดํฐ๋งํฌ ๊ณ์ธต
๋คํธ์ํฌ ๊ธฐ๊ธฐ ๊ฐ์ ๋ฐ์ดํฐ ์ ์ก ๋ฐ ๋ฌผ๋ฆฌ์ฃผ์(ex. MAC ์ฃผ์)๋ฅผ ๊ฒฐ์ ํ๋ ๊ณ์ธต์ด๋ค. ๋ฌผ๋ฆฌ ๊ณ์ธต์์ ๋ค์ด์จ ์ ๊ธฐ ์ ํธ๋ฅผ ๋ชจ์ ์ธ์ ๊ฐ๋ฅํ ๋ฐ์ดํฐ ํํ๋ก ์ฒ๋ฆฌํ๋ฉฐ, ์ฃผ์ ์ ๋ณด๋ฅผ ์ ์ํ๊ณ ์ถ๋ฐ์ง์ ๋์ฐฉ์ง ์ฃผ์๋ฅผ ํ์ธํ ํ ๋ฐ์ดํฐ ์ฒ๋ฆฌ๋ฅผ ์ํํ๋ค.
- ex. ๋ธ๋ฆฌ์ง ๋ฐ ์ค์์น, MAC ์ฃผ์
- 3๊ณ์ธต : ๋คํธ์ํฌ ๊ณ์ธต
์ฌ๋ฌ ๊ณ์ธต ์ค ๊ฐ์ฅ ๋ณต์กํ ๊ณ์ธต์ผ๋ก ์ค์ ๋คํธ์ํฌ ๊ฐ์ ๋ฐ์ดํฐ ๋ผ์ฐํ (๋คํธ์ํฌ ๋ด์์ ์ง์ฌ์ง ์๊ณ ๋ฆฌ์ฆ์ ์ํด ํต์ ๋ฐ์ดํฐ๋ฅผ ์ต๋ํ ๋น ๋ฅด๊ฒ ๋ณด๋ผ ์ต์ ์ ๊ฒฝ๋ก๋ฅผ ์ ํํ๋ ๊ณผ์ )์ ๋ด๋นํ๋ค.
- ex. IP ํจํท ์ ์ก
- 4๊ณ์ธต : ์ ์ก ๊ณ์ธต
์ปดํจํฐ๊ฐ ์ ๋ขฐ์ฑ ์๋ ๋ฐ์ดํฐ๋ฅผ ์๋ก ์ฃผ๊ณ ๋ฐ์ ์ ์๋๋ก ํ๋ ์๋น์ค๋ฅผ ์ ๊ณตํ๋ ๊ณ์ธต์ด๋ค. ํ์ ๊ณ์ธต์์ ์ ํธ์ ๋ฐ์ดํฐ๋ฅผ ์ฌ๋ฐ๋ฅธ ์์น๋ก ๋ณด๋ด๊ณ ์ ํธ๋ฅผ ๋ง๋๋๋ฐ ์ง์คํ๋ค๋ฉด ์ ์ก ๊ณ์ธต์ ํด๋น ๋ฐ์ดํฐ๋ค์ด ์ค์ ๋ก ์ ์์ ์ผ๋ก ๋ณด๋ด์ง๋์ง ํ์ธํ๋ ์ญํ ์ ํ๋ฉฐ, ๋คํธ์ํฌ ๊ณ์ธต์์ ํจํท์ด ์ ์ค๋๊ฑฐ๋ ์์๊ฐ ๋ฐ๋๋ ๊ฒฝ์ฐ ์ด๋ฅผ ๋ฐ๋ก ์ก๋ ์ญํ ๋ ๋ด๋นํ๋ค.
- ex. TCP/UDP ์ฐ๊ฒฐ
- 5๊ณ์ธต : ์ธ์
๊ณ์ธต
์ธ์ ์ฐ๊ฒฐ์ ์ค์ ๊ณผ ํด์ , ์ธ์ ๋ฉ์ธ์ง ์ ์ก ๋ฑ์ ๊ธฐ๋ฅ์ ์ํํ๋ค. ์ฆ, ์ปดํจํฐ๊ฐ์ ํต์ ๋ฐฉ์์ ๋ํด ๊ฒฐ์ ํ๋ฉฐ, ์ ๋ ๋จ์ ํ๋ก์ธ์ค๊ฐ ์ฐ๊ฒฐ์ ์ฑ๋ฆฝํ๋๋ก ๋์์ฃผ๊ณ ์์ ์ ๋ง์น ํ์ ์ฐ๊ฒฐ์ ๋๋ ์ญํ ์ ํ๋ค.
- 6๊ณ์ธต : ํํ ๊ณ์ธต
์์ฉ ๊ณ์ธต์ผ๋ก ์ ๋ฌํ๊ฑฐ๋ ์ ๋ฌ ๋ฐ๋ ๋ฐ์ดํฐ๋ฅผ ์ธ์ฝ๋ฉ/๋์ฝ๋ฉ ํ๋ ๊ณ์ธต์ด๋ค. ์ผ์ข ์ ๋ฒ์ญ๊ธฐ์ ๊ฐ์ ์ญํ ์ ์ํํ๋ค๊ณ ๋ณผ ์ ์๋ค.
- ex. ๋ฌธ์ ์ฝ๋, ์์ถ, ์ํธํ ๋ฑ์ ๋ฐ์ดํฐ ๋ณํ
- 7๊ณ์ธต : ์์ฉ ๊ณ์ธต
์ต์ข ์ ์ผ๋ก ์ฌ์ฉ์์์ ์ธํฐํ์ด์ค๋ฅผ ์ ๊ณตํ๋ ๊ณ์ธต์ผ๋ก ์ฌ์ฉ์๊ฐ ์คํํ๋ ์์ฉํ๋ก๊ทธ๋จ๋ค์ด ํด๋น ๊ณ์ธต์ ์ํ๋ค.
- ex. ์ด๋ฉ์ผ ๋ฐ ํ์ผ ์ ์ก, ์น ์ฌ์ดํธ ์กฐํ
๋ฐ์ดํฐ ์บก์ํ
OSI 7๊ณ์ธต ๋ชจ๋ธ์ ์ก์ ์ธก์ 7๊ณ์ธต๊ณผ ์์ ์ธก์ 7๊ณ์ธต์ ํตํด ๋ฐ์ดํฐ๋ฅผ ์ฃผ๊ณ ๋ฐ๊ณ , ๊ฐ ๊ณ์ธต์ ๋ ๋ฆฝ์ ์ด๊ธฐ ๋๋ฌธ์ ๋ฐ์ดํฐ๊ฐ ์ ๋ฌ๋๋ ๋์ ๋ค๋ฅธ ๊ณ์ธต์ ์ํฅ์ ๋ฐ์ง ์๋๋ค.
๋ฐ์ดํฐ๋ฅผ ์ ์กํ๋ ์ธก์ ์์๊ณ์ธต(7๊ณ์ธต)์์ ํ์ ๊ณ์ธต(1๊ณ์ธต)์ผ๋ก ๋ฐ์ดํฐ๋ฅผ ์ ๋ฌํ๋ค. ์ด ๋ ๊ฐ ๊ณ์ธต์์ ํ์ํ ์ ๋ณด๋ฅผ ๋ฐ์ดํฐ์ ์ถ๊ฐํ๋๋ฐ ์ด ์ ๋ณด๋ฅผ ํค๋(๋ฐ์ดํฐ๋งํฌ ๊ณ์ธต์์๋ ํธ๋ ์ผ๋ฌ)๋ผ๊ณ ๋ถ๋ฅธ๋ค. ๊ทธ๋ฆฌ๊ณ ์ด๋ ๊ฒ ํค๋๋ฅผ ๋ถ์ฌ๋๊ฐ๋ ๊ฒ์ ์บก์ํ๋ผ ํ๋ค.
๋ง์ง๋ง ๋ฌผ๋ฆฌ ๊ณ์ธต์ ๋๋ฌํ๋ฉด ์ก์ ์ธก์ ๋ฐ์ดํฐ๋งํฌ ๊ณ์ธต์์ ๋ง๋ค์ด์ง ๋ฐ์ดํฐ๊ฐ ์ ๊ธฐ ์ ํธ๋ก ๋ณํ๋์ด ์์ ์ธก์ ์ ์ก๋๊ณ , ๋ฐ์ดํฐ๋ฅผ ๋ฐ๋ ์ชฝ์ ํ์ ๊ณ์ธต(1๊ณ์ธต)์์ ์์ ๊ณ์ธต(7๊ณ์ธต)์ผ๋ก ๊ฐ ๊ณ์ธต์ ํตํด ์ ๋ฌ๋ ๋ฐ์ดํฐ๋ฅผ ๋ฐ๊ฒ ๋๋ค. ์ด ๋ ์์ ๊ณ์ธต์ผ๋ก ๋ฐ์ดํฐ๋ฅผ ์ ๋ฌํ๋ฉฐ ๊ฐ ๊ณ์ธต์์ ํค๋๋ฅผ ์ ๊ฑฐํด ๋๊ฐ๋ ๊ฒ์ ์ญ์บก์ํ๋ผ ํ๊ณ , ์ญ์บก์ํ๋ฅผ ๊ฑฐ์ณ ๋ง์ง๋ง ์์ฉ ๊ณ์ธต์ ๋๋ฌํ๋ฉด ์ ๋ฌํ๊ณ ์ ํ๋ ์๋ณธ ๋ฐ์ดํฐ๋ง ๋จ๊ฒ ๋๋ค.
TCP/IP 4๊ณ์ธต ๋ชจ๋ธ
TCP/IP 4๊ณ์ธต ๋ชจ๋ธ์ OSI ๋ชจ๋ธ์ ๊ธฐ๋ฐ์ผ๋ก ์ค๋ฌด์ ์ผ๋ก ์ด์ฉํ ์ ์๋๋ก ํ์ค์ ๋ง์ถฐ ๋จ์ํ๋ ๋ชจ๋ธ์ด๋ค. ์ฆ, OSI 7๊ณ์ธต ์ด๋ก ์ ์ค์ ์ฌ์ฉํ๋ ์ค์ฉ์ฑ์ ๊ธฐ๋ฐ์ ๋ ํ๋์ ์ธํฐ๋ท ํ์ค์ด๋ผ ํ ์ ์๋ค.
๊ฐ ๊ณ์ธต์ ๊ตฌ๋ถ
- 4๊ณ์ธต : ์ดํ๋ฆฌ์ผ์ด์
๊ณ์ธต โ OSI ๊ณ์ธต์ ์ธ์
, ํํ, ์์ฉ ๊ณ์ธต(5~7๊ณ์ธต)์ ํด๋น
TCP/UDP ๊ธฐ๋ฐ์ ์์ฉ ํ๋ก๊ทธ๋จ์ ๊ตฌํํ ๋ ์ฌ์ฉํ๋ค.
- ex. FTP, HTTP, SSH
- 3๊ณ์ธต : ์ ์ก ๊ณ์ธต โ OSI ๊ณ์ธต์ ์ ์ก ๊ณ์ธต(4๊ณ์ธต)์ ํด๋น
ํต์ ๋ ธ๋๊ฐ์ ์ฐ๊ฒฐ์ ์ ์ดํ๊ณ , ์ ๋ขฐ์ฑ ์๋ ๋ฐ์ดํฐ ์ ์ก์ ๋ด๋นํ๋ค.
- ex. TCP/UDP
- 2๊ณ์ธต : ์ธํฐ๋ท ๊ณ์ธต โ OSI ๊ณ์ธต์ ๋คํธ์ํฌ ๊ณ์ธต(3๊ณ์ธต)์ ํด๋น
ํต์ ๋ ธ๋ ๊ฐ์ IP ํจํท์ ์ ์กํ๋ ๊ธฐ๋ฅ ๋ฐ ๋ผ์ฐํ ์ ๋ด๋นํ๋ค.
- ex. IP, ARP, RARP
- 1๊ณ์ธต : ๋คํธ์ํฌ ์ธํฐํ์ด์ค ๊ณ์ธต โ OSI ๊ณ์ธต์ ๋ฌผ๋ฆฌ, ๋ฐ์ดํฐ ๋งํฌ ๊ณ์ธต(1~2๊ณ์ธต)์ ํด๋น
๋ฌผ๋ฆฌ์ ์ธ ์ฃผ์๋ก MAC์ ์ฌ์ฉํ๋ค.
- ex. LAN, ํจํท๋ง ๋ฑ์ ์ฌ์ฉ๋จ
์์ฉ ๊ณ์ธต
์์ฉ ๊ณ์ธต์ ์์ ๋งํ๋ฏ ๋คํธ์ํฌ ๋ชจ๋ธ์ ์ต์์ ๊ณ์ธต์ผ๋ก ์ต์ข ์ ์ผ๋ก ์ฌ์ฉ์์์ ์ธํฐํ์ด์ค๋ฅผ ์ ๊ณตํ๋ ๊ณ์ธต์ด๋ค. ์ค์ ๋คํธ์ํฌ๋ ์ ์ก๋๋ ์ฌ๋ฌ ๊ณผ์ ์ ๊ฑฐ์น์ง๋ง ์ค์ ๋ก ์ฌ์ฉ์๊ฐ ์กฐ์ํ๊ณ ์ฌ์ฉํ๋ ๊ฒ์ ๋ชจ๋ ์์ฉ ๊ณ์ธต์์ ์ผ์ด๋๋ ๊ฒ์ด๋ฉฐ, ์ด๋ ์๋ฒ์ ํด๋ผ์ด์ธํธ ๋ชจ๋ ๋์ผํ๋ค.
HTTP
HTTP๋ ์์ฉ ๊ณ์ธต์ ๋ํ์ ์ธ ํ๋กํ ์ฝ๋ก ์น ์ฌ์ดํธ๋ฅผ ์ด์ฉํ๊ธฐ ์ํด ์ฌ์ฉํฉ๋๋ค. ์น ๊ฐ๋ฐ์ ๋ชจ๋ HTTP๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ํ๊ธฐ์ ์ค์ํ ํน์ง๋ค์ ์์๋๋ ๊ฒ์ด ์ค์ํ๋ค.
HTTP์ ์ญ์ฌ
HTTP์ ํน์ง
ํด๋ผ์ด์ธํธ-์๋ฒ ๊ตฌ์กฐ
ํด๋ผ์ด์ธํธ๊ฐ ์๋ฒ์ ์์ฒญ(Request)์ ๋ณด๋ด๋ฉด ์๋ฒ๋ ๊ทธ์ ๋ํ ์๋ต(Response)์ ๋ณด๋ด๋ ํด๋ผ์ด์ธํธ-์๋ฒ ๋ชจ๋ธ(2-Tier ์ํคํ ์ณ) ๊ตฌ์กฐ๋ก ์ด๋ฃจ์ด์ ธ ์๋ค.
๋ฌด์ํ(Stateless) ํ๋กํ ์ฝ
HTTP๋ ์๋ฒ๊ฐ ํด๋ผ์ด์ธํธ์ ์ํ๋ฅผ ๋ณด์กดํ์ง ์๋ ๋ฌด์ํ ํ๋กํ ์ฝ์ด๋ค. ํด๋ผ์ด์ธํธ์ ์ํ๋ฅผ ๊ธฐ์ตํ์ง ์์๋ ๋๊ธฐ ๋๋ฌธ์ ์๋ฒ ํ์ฅ์ฑ์ด ๋๋ค๋ ์ฅ์ (์ค์ผ์ผ ์์)์ด ์์ง๋ง, ํด๋ผ์ด์ธํธ๊ฐ ์ถ๊ฐ๋ก ๋ฐ์ดํฐ๋ฅผ ์ ์กํด์ผ ํ๋ค๋ ๋จ์ ์ด ์กด์ฌํ๋ค.
- ์ค๋ฌด์์์ ํ๊ณ์
๋ชจ๋ ๊ฒ์ ๋ฌด์ํ๋ก ์ค๊ณํ ์ ์๋ ๊ฒฝ์ฐ๋ ์์ง๋ง ๊ทธ๋ ์ง ์์ ๊ฒฝ์ฐ๋ ์กด์ฌํ๋ค. ๋ก๊ทธ์ธ์ด ํ์ ์๋ ๋จ์ ์๋น์ค ์๊ฐ ํ๋ฉด๊ณผ ๊ฐ์ ๊ฒฝ์ฐ์๋ ๋ฌด์ํ๋ก ์ค๊ณ๊ฐ ๊ฐ๋ฅํ์ง๋ง, ๋ก๊ทธ์ธ์ด ํ์ํ ์๋น์ค๋ผ๋ฉด ์ ์ ์ ์ํ๋ฅผ ์๋ฒ์ ์ ์งํด์ผ ํ๊ธฐ ๋๋ฌธ์ ๋ธ๋ผ์ฐ์ ์ฟ ํค, ์๋ฒ ์ธ์ , ํ ํฐ ๋ฑ์ ์ด์ฉํด ์ํ๋ฅผ ์ ์งํ์ฌ์ผ ํ๋ค. ๋ํ ์ํ ์ ์ง๋ ์ต์ํ๋ง ์ฌ์ฉํ์ฌ์ผ ํ๋ค.
๋น์ฐ๊ฒฐ์ฑ(Connectionless) ๋ชจ๋ธ
TCP/IP๋ ์ฐ๊ฒฐ์ ์ ์งํ๋ ๋ชจ๋ธ์ ์ฌ์ฉํ์ง๋ง, HTTP๋ ๊ธฐ๋ณธ์ ์ผ๋ก ์ฐ๊ฒฐ์ ์ ์งํ์ง ์๋ ๋ชจ๋ธ์ด๋ค. ์ด๊ธฐ์๋ ํธ๋ํฝ์ด ๋ง์ง ์์๊ธฐ ๋๋ฌธ์ ๋น ๋ฅธ ์๋ต์ ์ ๊ณตํ ์ ์์ด ์ด ํน์ง์ด ํจ์จ์ ์ผ๋ก ์๋ํ๋ค.
ํ์ง๋ง ํธ๋ํฝ์ด ๋ง๊ณ ํฐ ๊ท๋ชจ์ ์๋น์ค๊ฐ ์๊ฒจ๋๋ฉด์ ๋น์ฐ๊ฒฐ์ฑ์ ์ฌ๋ฌ ๋ฆฌ์์ค๋ฅผ ์์ฒญํ ๋๋ง๋ค ์ฐ๊ฒฐ์ ๋ฐ๋ณตํ๋ ํ๊ณ๊ฐ ์กด์ฌํ๋ฉฐ, ์ด๋ฅผ ์ํด ์ง๊ธ์ HTTP๋ ์ฐ๊ฒฐ์ด ์ด๋ฃจ์ด์ง๊ณ ๋ ๋ค ๊ฐ๊ฐ์ ์์๋ค์ ์์ฒญํ๊ณ ๋ชจ๋ ์์์ ๋ํ ์๋ต์ด ๋์์จ ํ์ ์ผ์ ์๊ฐ๋์ ์ถ๊ฐ ์์ฒญ์ด ์์ผ๋ฉด ๊ทธ๋ ์ฐ๊ฒฐ์ ์ข ๋ฃํ๋ HTTP ์ง์ ์ฐ๊ฒฐ(Persistent Connections)๋ฅผ ์ฌ์ฉํ๋ค.
HTTP Header
HTTP Message๋ Header์ Body๋ก ๊ตฌ๋ถํ๋ฉฐ, Body์์๋ ๋ฐ์ดํฐ ๋ณธ๋ฌธ(payload)์ ํตํด ํํ(Representation) ๋ฐ์ดํฐ๋ฅผ ์ ๋ฌํ๋ค. ์ฌ๊ธฐ์์ ํํ์ ์์ฒญ๊ณผ ์๋ต์์ ์ ๋ฌํ ์ค์ ๋ฐ์ดํฐ๋ฅผ ๋ปํ๋ฉฐ ํํ ํค๋๋ ํํ ๋ฐ์ดํฐ๋ฅผ ํด์ํ ์ ์๋ ์ ๋ณด๋ฅผ ์ ๊ณตํ๋ค.
HTTP Header๋ <field-name(๋์๋ฌธ์ ๊ตฌ๋ถ ์์)>:<field-value>
ํ์์ ๋ฐ๋ฅด๋ฉฐ, HTTP ์ ์ก์ ํ์ํ ๋ชจ๋ ๋ถ๊ฐ์ ๋ณด๋ฅผ ๋ด๊ธฐ ์ํด ์ฌ์ฉํ๋ค. ์ด ์ค์๋ ํํ ๋ฐ์ดํฐ๋ฅผ ํด์ํ ์ ์๋ ํํ ํค๋๋ ํฌํจ๋๋ค.
HTTP ์์ฒญ/์๋ต ์ฃผ์ ํค๋
- ์์ฒญ(Request)์์ ์ฌ์ฉ๋๋ ํค๋
- From : ์ ์ ์์ด์ ํธ์ ์ด๋ฉ์ผ ์ ๋ณด. ์ผ๋ฐ์ ์ผ๋ก ์ ์ฌ์ฉํ์ง ์์ผ๋ฉฐ ๊ฒ์ ์์ง์์ ์ฃผ๋ก ์ฌ์ฉ
- Referer : ์ด์ ์น ํ์ด์ง ์ฃผ์. ํ์ฌ ์์ฒญ ๋ ํ์ด์ง์ ์ด์ ์น ํ์ด์ง ์ฃผ์์ด๋ฉฐ Referer ์ฌ์ฉ ์ ์ ์ ๊ฒฝ๋ก ์์ง ๊ฐ๋ฅ
- User-Agent : ์ ์ ์์ด์ ํธ ์ดํ๋ฆฌ์ผ์ด์ ์ ๋ณด. ํด๋ผ์ด์ธํธ์ ์ดํ๋ฆฌ์ผ์ด์ ์ ๋ณด(์น ๋ธ๋ผ์ฐ์ ์ ๋ณด ๋ฑ)์ ๋ด๊ณ ์์ผ๋ฉฐ ํต๊ณ ์ ๋ณด ์ค ํ๋๋ก ์ด๋ค ์ข ๋ฅ์ ๋ธ๋ผ์ฐ์ ์์ ์ฅ์ ๊ฐ ๋ฐ์ํ๋์ง ํ์ ํ๋ ์ฉ๋๋ก ์ฌ์ฉ ๊ฐ๋ฅ
- Host : ์์ฒญํ ํธ์คํธ ์ ๋ณด(๋๋ฉ์ธ). ํ์ ํค๋์ด๋ฉฐ ํ๋์ ์๋ฒ๊ฐ ์ฌ๋ฌ ๋๋ฉ์ธ์ ์ฒ๋ฆฌํด์ผ ํ ๋๋ ํ๋์ IP ์ฃผ์์ ์ฌ๋ฌ ๋๋ฉ์ธ์ด ์ ์ฉ๋์ด ์์ ๋ ํธ์คํธ ์ ๋ณด๋ฅผ ๋ช ์ํ๊ธฐ ์ํด ์ฌ์ฉ
- Origin : ์๋ฒ๋ก POST ์์ฒญ์ ๋ณด๋ผ ๋ ์์ฒญ์ ์์ํ ์ฃผ์. ์ฌ๊ธฐ์ ์์ฒญ์ ๋ณด๋ธ ์ฃผ์์ ๋ฐ๋ ์ฃผ์๊ฐ ๋ค๋ฅด๋ฉด CORS ์๋ฌ๊ฐ ๋ฐ์ํ๋ฉฐ ์๋ต ํค๋์ Access-Control-Allow-Origin์ ๊ด๋ จ๋จ
- Authorization : ์ธ์ฆ ํ ํฐ(ex. JWT)์ ์๋ฒ๋ก ๋ณด๋ผ ๋ ์ฌ์ฉ. ํ ํฐ์ ์ข
๋ฅ์ ์ค์ ํ ํฐ ๋ฌธ์๋ฅผ ์ ์กํ๋ค. (ex.
Authorization: Basic YWxhZGRpbjpvcGVuc2VzYW1l
)
- ์๋ต(Response)์์ ์ฌ์ฉ๋๋ ํค๋
- Server : ์์ฒญ์ ์ฒ๋ฆฌํ๋ ORIGIN ์๋ฒ์ ์ํํธ์จ์ด ์ ๋ณด.
- ex.
Server: Apache/2.2.22 (Debian)
- ex.
- Date : ๋ฉ์ธ์ง๊ฐ ๋ฐ์ํ ๋ ์ง์ ์๊ฐ.
- ex.
Date: Tue, 15 Nov 1994 08:12:31 GMT
- ex.
- Location : ํ์ด์ง ๋ฆฌ๋๋ ์
. ์์ฒญ์ ์ํด ์์ฑ๋ ๋ฆฌ์์ค์ URI(์๋ต์ฝ๋
201
๋ฑ)๋ ์์ฒญ์ ์๋์ผ๋ก ๋ฆฌ๋๋ ์ (์๋ต์ฝ๋3XX
๋ฑ) ํ๊ธฐ ์ํ ๋์ ๋ฆฌ์์ค๋ฅผ ๊ฐ๋ฆฌํด
- Allow : ํ์ฉ ๊ฐ๋ฅํ HTTP ๋ฉ์๋. ์๋ต์ฝ๋
405
(Method Not Allowed)์ผ ๋ ํฌํจ๋จ- ex.
Allow: GET, HEAD, PUT
- ex.
- Retry-After: ์ ์ ์์ด์ ํธ๊ฐ ๋ค์ ์์ฒญ์ ํ๊ธฐ๊น์ง ๊ธฐ๋ค๋ ค์ผ ํ๋ ์๊ฐ. ์๋น์ค๊ฐ ๋ถ๋ฅ(
503 : Service Unavailable
)์ผ ๋ ์ธ์ ๊น์ง ๋ถ๋ฅ์ธ์ง ์๋ ค์ค ์ ์์- ex.
Retry-After: Fri, 31 Dec 2020 23:59:59 GMT
(๋ ์ง ํ๊ธฐ)
- ex.
Retry-After: 120
(์ด ๋จ์ ํ๊ธฐ)
- ex.
- Server : ์์ฒญ์ ์ฒ๋ฆฌํ๋ ORIGIN ์๋ฒ์ ์ํํธ์จ์ด ์ ๋ณด.
ํํ ํค๋
ํํ ํค๋๋ ์์ฒญ, ์๋ต ์์ชฝ ๋ชจ๋ ์ฌ์ฉํ๋ค.
- Content-Type : ํํ ๋ฐ์ดํฐ์ ํ์
๋ฏธ๋์ด ํ์ ๊ณผ ๋ฌธ์ ์ธ์ฝ๋ฉ ํ์์ด ๊ฐ์ผ๋ก ๋ค์ด๊ฐ๋ค.
- ex.
Text/html;charset=UTF-8
,application/json
,Image/png
๋ฑ
- ex.
- Content-Encoding : ํํ ๋ฐ์ดํฐ์ ์์ถ ๋ฐฉ์
ํํ ๋ฐ์ดํฐ๋ฅผ ์์ถํ๊ธฐ ์ํด ์ฌ์ฉํ๋ฉฐ, ๋ฐ์ดํฐ๋ฅผ ์ ๋ฌํ๋ ์ชฝ์์ ์์ถ ํ ์ธ์ฝ๋ฉ ํค๋๋ฅผ ์ถ๊ฐํ๊ณ ๋ฐ์ดํฐ๋ฅผ ์ฝ๋ ์ชฝ์์๋ ์ธ์ฝ๋ฉ ํค๋์ ์ ๋ณด๋ก ์์ถ์ ํด์ ํ๋ค.
- ex.
gzip
,deflate
,identity
๋ฑ
- ex.
- Content-Language : ํํ ๋ฐ์ดํฐ์ ์์ฐ ์ธ์ด
ํํ ๋ฐ์ดํฐ์ ์์ฐ ์ธ์ด๊ฐ ๊ฐ์ผ๋ก ๋ค์ด๊ฐ๋ค.
- ex.
ko
,en
,en-US
๋ฑ
- ex.
- Content-Length : ํํ ๋ฐ์ดํฐ์ ๊ธธ์ด
๋ฐ์ดํธ ๋จ์๋ก ํํํ๋ฉฐ, Transfer-Encoding(์ ์ก ์ฝ๋ฉ) ์ฌ์ฉ ์์๋ ์์ฑํ๋ฉด ์๋๋ค.
์ปจํ ์ธ ํ์ ํค๋
์์ฒญ ์์๋ง ์ฌ์ฉํ๋ฉฐ, ํด๋ผ์ด์ธํธ ์ธก์์ ์ ํธํ๋ ํํ์ ๋ํ ๋ด์ฉ์ ๋ด๋๋ค. ์๋ฒ ์ธก์์๋ ํด๋น ์์ฒญ์ ํค๋ ๋ด์ฉ์ด ์ง์ ๊ฐ๋ฅํ ์ปจํ ์ธ ๋ผ๋ฉด ๊ทธ์ ๋ง์ถฐ ์๋ตํ๊ฒ ๋๋ค. ์๋ฒ ์ธก์์ ์ง์ํ์ง ์๋ ๊ฒฝ์ฐ๋ฅผ ๋๋นํด ์ํ๋ ์ปจํ ์ธ ์ ๋ํ ์ฐ์ ์์๋ฅผ ์ง์ ํ ์ ์๋ค.
- Accept : ํด๋ผ์ด์ธํธ๊ฐ ์ ์ธํ๋ ๋ฏธ๋์ด ํ์ ์ ๋ฌ
- Accept-Charset : ํด๋ผ์ด์ธํธ๊ฐ ์ ํธํ๋ ๋ฌธ์ ์ธ์ฝ๋ฉ
- Accept-Encoding : ํด๋ผ์ด์ธํธ๊ฐ ์ ํธํ๋ ์์ถ ์ธ์ฝ๋ฉ
- Accept-Language : ํด๋ผ์ด์ธํธ๊ฐ ์ ํธํ๋ ์์ฐ ์ธ์ด
HTTPS
HTTPS๋ HTTP Secure์ ์ฝ์๋ก, ๋จ์ด ๋ป ๊ทธ๋๋ก ๊ธฐ์กด์ HTTP ํ๋กํ ์ฝ์์ ์์ฒญ๊ณผ ์๋ต์ผ๋ก ์ค๊ฐ๋ ๋ด์ฉ์ ์ํธํํ์ฌ ๋ ์์ ํ๊ฒ(Secure) ์ฌ์ฉํ ์ ์์์ ์๋ฏธํ๋ค.
์ํธํ ๋ฐฉ์
๋ฐ์ดํฐ๋ฅผ ์ํธํ ํ ๋๋ ์ํธํ ์ ์ฌ์ฉํ ํค, ์ํธํํ ๋ฐ์ดํฐ๋ฅผ ๋ณตํธํํ ๋ ์ฌ์ฉํ ํค๊ฐ ํ์ํ๋ค. ์ด ๋ ์ํธํ/๋ณตํธํํ ๋ ์ฌ์ฉํ๋ ํค๊ฐ ๋์ผํ๋ฉด ๋์นญ ํค ์ํธํ ๋ฐฉ์, ๋ค๋ฅด๋ค๋ฉด ๊ณต๊ฐ ํค(๋น๋์นญ ํค)์ํธํ ๋ฐฉ์์ด๋ผ๊ณ ํ๋ค.
1. ๋์นญ ํค ์ํธํ ๋ฐฉ์
๋์นญ ํค ์ํธํ ๋ฐฉ์์ ํ๋์ ํค๋ง ์ฌ์ฉํ๋ค. ์ํธํํ ๋ ์ฌ์ฉํ ํค๋ก๋ง ๋ณตํธํ๊ฐ ๊ฐ๋ฅํด ๋ ๊ฐ์ ํค๋ฅผ ์ฌ์ฉํ๋ ๊ณต๊ฐ ํค ๋ฐฉ์์ ๋นํด ์ฐ์ฐ ์๋๊ฐ ๋น ๋ฅด๋ค๋ ์ฅ์ ์ด ์์ผ๋ ํค๋ฅผ ์ฃผ๊ณ ๋ฐ๋ ๊ณผ์ ์์ ํ์ทจ๋นํ ๊ฒฝ์ฐ ์ํธํ๊ฐ ์์ฉ์์ด์ง๊ธฐ ๋๋ฌธ์ ํค๋ฅผ ๊ด๋ฆฌํ๋๋ฐ ์ ๊ฒฝ์ ๋ง์ด ์จ์ผํ๋ค.
2. ๊ณต๊ฐ ํค(๋น๋์นญ ํค) ์ํธํ ๋ฐฉ์
๊ณต๊ฐ ํค ์ํธํ ๋ฐฉ์์ ๋๊ฐ์ ํค๋ฅผ ์ฌ์ฉํ๋ค. ์ํธํํ ๋ ์ฌ์ฉํ ํค์ ๋ค๋ฅธ ํค๋ก๋ง ๋ณตํธํ๊ฐ ๊ฐ๋ฅํ๊ณ ์ด ๋ ๋ ๊ฐ์ ํค๋ฅผ ๊ฐ๊ฐ ๊ณต๊ฐ ํค, ๋น๋ฐ ํค๋ผ ๋ถ๋ฅธ๋ค. ์ฌ๊ธฐ์ ๊ณต๊ฐ ํค๋ ์ด๋ฆ ๊ทธ๋๋ก ๊ณต๊ฐ๋์ด ์์ด ๋๊ตฌ๋ ์ง ์ ๊ทผ ๊ฐ๋ฅํ๋ฉฐ, ๋๊ตฌ๋ ์ด ๊ณต๊ฐ ํค๋ฅผ ์ฌ์ฉํด ์ํธํํ ๋ฐ์ดํฐ๋ฅผ ๋ณด๋ด๋ฉด ๋น๋ฐ ํค๋ฅผ ๊ฐ์ง ์ฌ๋๋ง ๊ทธ ๋ด์ฉ์ ๋ณตํธํ ํ ์ ์๋ค. ๋ณดํต ์์ฒญ์ ๋ณด๋ด๋ ํด๋ผ์ด์ธํธ๊ฐ ๊ณต๊ฐ ํค๋ฅผ, ์์ฒญ์ ๋ฐ๋ ์๋ฒ๊ฐ ๋น๋ฐ ํค๋ฅผ ๊ฐ์ง๋ฉฐ ๋น๋ฐ ํค๋ ์๋ฒ๊ฐ ํดํน๋นํ์ง ์๋ ์ด์ ํ์ทจ๋์ง ์๋๋ค.
๊ณต๊ฐ ํค๋ฅผ ์ฌ์ฉํด ์ํธํ ํ ๋ฐ์ดํฐ๊ฐ ํ์ทจ๋นํ๋๋ผ๋ ๋น๋ฐ ํค๊ฐ ์๋ค๋ฉด ๋ณตํธํ ํ ์ ์์ผ๋ฉฐ, ๋ฐ๋์ ๊ฒฝ์ฐ์ธ ๋น๋ฐ ํค๋ก ์ํธํ ํ ๋ฐ์ดํฐ๋ ๊ณต๊ฐ ํค๋ก๋ง ๋ณตํธํ ํ ์ ์๋ค. ์ด๋ฐ ๋ฐฉ์์ ๋์นญ ํค ๋ฐฉ์๋ณด๋ค ๋ณด์์ฑ์ด ๋ ์ข์ง๋ง, ๋ ๋ณต์กํ ์ฐ์ฐ์ ํ์๋ก ํ์ฌ ๋ ๋ง์ ์๊ฐ์ ์๋ชจํ๋ค๋ ๋จ์ ์ด ์๋ค.
SSL/TLS ํ๋กํ ์ฝ
HTTPS๋ HTTP ํต์ ์ ํ๋ ์์ผ ๋ถ๋ถ์์ SSL ํน์ TLS๋ผ๋ ํ๋กํ ์ฝ์ ์ฌ์ฉํด ์๋ฒ ์ธ์ฆ๊ณผ ๋ฐ์ดํฐ ์ํธํ๋ฅผ ์งํํ๋ค. SSL์ด ํ์คํ ๋๋ฉฐ ๋ฐ๋ ์ด๋ฆ์ด TLS์ด๋ฏ๋ก ์ฌ์ค์ ๊ฐ์ ํ๋กํ ์ฝ๋ก ์ดํดํ๋ฉด ๋๋ค. SSL/TLS์ ํน์ง์ ๋ค์๊ณผ ๊ฐ๋ค.
- CA๋ฅผ ํตํ ์ธ์ฆ์ ์ฌ์ฉ
- ๋์นญํค, ๊ณต๊ฐ ํค ์ํธํ ๋ฐฉ์์ ๋ชจ๋ ์ฌ์ฉ
SSL/TLS ํ๋กํ ์ฝ์ ์๋์ ๊ฐ์ ๊ณผ์ ์ ํตํด ์๋ฒ๋ฅผ ์ธ์ฆํ๊ณ ๋ฐ์ดํฐ๋ฅผ ์ํธํํ๊ฒ ๋๋ฉฐ, HTTP์ SSL/TLS ํ๋กํ ์ฝ์ ๋ํ ๊ฒ์ HTTPS๋ผ ๋ถ๋ฅธ๋ค.
SSL/TLS ํ๋กํ ์ฝ ์ํธํ ๊ณผ์
- ์ธ์ฆ์์ CA(Certificate Authority)
HTTPS๋ฅผ ์ฌ์ฉํ๋ฉด ๋ธ๋ผ์ฐ์ ๊ฐ ์๋ฒ์ ์๋ต๊ณผ ํจ๊ป ์ ๋ฌ๋ ์ธ์ฆ์๋ฅผ ํ์ธํ ์ ์๋ค. ์ด๋ฐ ์ธ์ฆ์๋ ์๋ฒ์ ์ ์์ ๋ณด์ฆํด์ฃผ๋ฉฐ, ์ด ๋ ์ธ์ฆ์๋ฅผ ๋ฐ๊ธํด์ฃผ๋ ๊ณต์ธ๋ ๊ธฐ๊ด๋ค์ Certificate Authority, CA๋ผ๊ณ ๋ถ๋ฅธ๋ค.
์๋ฒ๋ ์ธ์ฆ์๋ฅผ ๋ฐ๊ธ๋ฐ๊ธฐ ์ํด CA๋ก ์๋ฒ์ ์ ๋ณด์ ๊ณต๊ฐ ํค๋ฅผ ์ ๋ฌํ๋ค. CA๋ ์๋ฒ์ ๊ณต๊ฐ ํค์ ์ ๋ณด๋ฅผ CA์ ๋น๋ฐ ํค๋ก ์ํธํ ํ์ฌ ์ธ์ฆ์๋ฅผ ๋ฐ๊ธํ๋ค.
์๋ฒ๋ ํด๋ผ์ด์ธํธ์๊ฒ ์์ฒญ์ ๋ฐ์ผ๋ฉด CA์๊ฒ ๋ฐ๊ธ๋ฐ์ ์ธ์ฆ์๋ฅผ ๋ณด๋ด์ค๋ค. ์ด ๋, ์ฌ์ฉ์๊ฐ ์ฌ์ฉํ๋ ๋ธ๋ผ์ฐ์ ์๋ CA๋ค์ ๋ฆฌ์คํธ์ ๊ณต๊ฐ ํค๋ฅผ ๋ด์ฅํ๊ณ ์์ด ํด๋น ์ธ์ฆ์๊ฐ ๋ฆฌ์คํธ์ ์๋ CA๊ฐ ๋ฐ๊ธํ ์ธ์ฆ์์ธ์ง ํ์ธํ๊ณ , ๋ฆฌ์คํธ์ ์๋ CA๋ผ๋ฉด ํด๋น๋๋ CA์ ๊ณต๊ฐ ํค๋ฅผ ์ฌ์ฉํด ์ธ์ฆ์์ ๋ณตํธํ๋ฅผ ์๋ํ๋ค. CA์ ๋น๋ฐ ํค๋ก ์ํธํ๋ ๋ฐ์ดํฐ(์ธ์ฆ์)๋ CA์ ๊ณต๊ฐ ํค๋ก๋ง ๋ณตํธํ๊ฐ ๊ฐ๋ฅํ๊ธฐ ๋๋ฌธ์, CA์์ ๋ฐ๊ธํ ์ธ์ฆ์๊ฐ ๋ง๋ค๋ฉด ๋ณตํธํ๊ฐ ์ฑ๊ณต์ ์ผ๋ก ์งํ๋์ด์ผ ํ๋ค.
๋ณตํธํ๊ฐ ์ฑ๊ณต์ ์ผ๋ก ์งํ ๋์๋ค๋ฉด ํด๋ผ์ด์ธํธ๋ ์๋ฒ์ ์ ๋ณด์ ๊ณต๊ฐ ํค๋ฅผ ์ป๊ฒ ๋จ๊ณผ ๋์์ ํด๋น ์๋ฒ๊ฐ ์ ๋ขฐํ ์ ์๋ ์๋ฒ์์ ์ ์ ์๊ฒ ๋๊ณ , ๋ณตํธํ๊ฐ ์คํจ๋๋ค๋ฉด ์๋ฒ๊ฐ ๋ณด๋ด์ค ์ธ์ฆ์๊ฐ ์ ๋ขฐํ ์ ์๋ ์ธ์ฆ์์์ ํ์ธํ๊ฒ ๋๋ค.
- ๋์นญ ํค ์ ๋ฌ
ํด๋ผ์ด์ธํธ๊ฐ ์๋ฒ์ ์ธ์ฆ์๋ฅผ ์ฑ๊ณต์ ์ผ๋ก ๋ณตํธํํ์ฌ ์๋ฒ์ ๊ณต๊ฐ ํค๋ฅผ ํ๋ณดํ๋ค๋ฉด ์๋ฒ์ ๊ณต๊ฐ ํค์ ๋น๋ฐ ํค๋ฅผ ์ด์ฉํด ํต์ ํ๋ ๊ฒ์ด ์๋ ํด๋ผ์ด์ธํธ์ ์๋ฒ๊ฐ ํจ๊ป ์ฌ์ฉํ ๋์นญ ํค๋ฅผ ์ฃผ๊ณ ๋ฐ๋๋ฐ ์ฌ์ฉ๋๋ค. ๊ณต๊ฐ ํค ์ํธํ ๋ฐฉ์์ ๋ณด์์ ํ์คํ์ง๋ง ๋ณต์กํ ์ฐ์ฐ์ด ํ์ํด ๋ ๋ง์ ์๊ฐ์ ์๋ชจํ๊ธฐ ๋๋ฌธ์ด๋ค.
ํด๋ผ์ด์ธํธ๋ ๋ฐ์ดํฐ๋ฅผ ์ํธํํ์ฌ ์ฃผ๊ณ ๋ฐ์ ๋ ์ฌ์ฉํ ๋์นญ ํค๋ฅผ ์์ฑํ์ฌ ์๋ฒ์ ๊ณต๊ฐ ํค๋ก ์ํธํํ์ฌ ์ ๋ฌํ๋ค. ์๋ฒ๋ ์ ๋ฌ๋ฐ์ ๋ฐ์ดํฐ๋ฅผ ๋น๋ฐ ํค๋ก ๋ณตํธํ ํ์ฌ ๋์นญ ํค๋ฅผ ํ๋ณดํ๊ณ , ๋์ผํ๊ฒ ๊ฐ์ง๊ณ ์๋ ๋์นญ ํค๋ฅผ ์ด์ฉํด ๋ฐ์ดํฐ๋ฅผ ์ํธํํ์ฌ ์ ๋ฌํ๋ค. ๋์นญ ํค ์์ฒด๋ ์ค๊ณ ๊ฐ์ง ์๊ธฐ ๋๋ฌธ์ ํค๊ฐ ์ ์ถ ๋ ์ํ์ด ์์ด์ง๊ณ , ์์ฒญ์ด ์ค๊ฐ์ ํ์ทจ๋์ด๋ ์ 3์๊ฐ ์ํธํ๋ ๋ฐ์ดํฐ๋ฅผ ๋ณตํธํ ํ ์ ์๊ฒ ๋์ด HTTP๋ณด๋ค ์์ ํ๊ฒ ์์ฒญ๊ณผ ์๋ต์ ์ฃผ๊ณ ๋ฐ๊ฒ ๋๋ค.
Uploaded by N2T