๋คํธ์ํฌ OSI 7๊ณ์ธต, TCP/IP 4๊ณ์ธต
by JiwonDev
# ๋คํธ์ํฌ๋ Layerd Architecture๋ก ๊ตฌ์ฑ๋์ด ์๋ค.
๋คํธ์ํฌ๋ ๊ฒฐ๊ตญ ์ ๊ธฐ์ ํธ๋ฅผ ๋ค๋ฅธ ์ฅ์น, ์ปดํจํฐ๋ก ๋ณด๋ด๋ ์์ ์ด๋ค.
์ดํ๋ฆฌ์ผ์ด์ ์์ ๋ฌธ์ ,, ๋คํธ์ํฌ๋ฅผ ์ฐพ๋ ๊ณผ์ ์์ ๋ฌธ์ , ์ ๊ธฐ ์ ํธ์ ๋ฌธ์ ๊ฐ ํ๋๋ก ํตํฉ๋์ด ์๋ค๋ฉด ์ ์ง๋ณด์, ๊ฐ๋ฐ์ด ์๋นํ ๋ณต์กํ๊ณ ์ด๋ ค์์ง๋ค. ๋ํ ๋ฌธ์ ๊ฐ ํฐ์ก์ ๋ ํธ๋ฌ๋ธ์ํ ์ ํ๊ธฐ๋ ํ๋ค๋ค.
PC๋ฐฉ์์ ๊ฒ์์ ํ๋๋ฐ ์ฐ๊ฒฐ์ด ๋๊ฒผ๋ค. ์ด๋ป๊ฒ ํ์ธํด์ผ ํ ๊น?
- ๋ชจ๋ PC์์ ๋ฌธ์ ๊ฐ ์๋ค๋ฉด ๋คํธ์ํฌ ๋ผ์ฐํฐ(3-Network Layer) ๋๋ ๋คํธ์ํฌ ํ์ (1-Physical Layer)์ ๋ฌธ์ .
- PC์ ํน์ ๊ฒ์์๋ง ๋ฌธ์ ๊ฐ ์๋ค๋ฉด (7-Application Layer)์ ๋ฌธ์ ์ผ ๊ฐ๋ฅ์ฑ์ด ๋๋ค.
๊ทธ๋์ ์ฐ๋ฆฌ๊ฐ ์ฌ์ฉํ๋ ๋คํธ์ํฌ๋ OSI 7 ๊ณ์ธต๊ตฌ์กฐ๋ก ์ด๋ฃจ์ด์ ธ์๋ค.
TCP/IP 4๊ณ์ธต์ TCP/IP ํ๋กํ ์ฝ์ ์ด์ ์ ๋ง์ถฐ์ ๋ค์ ๊ตฌ๋ถ์ง์ ๊ณ์ธต์ด๋ค. ๋คํธ์ํฌ ํ๋กํ ์ฝ์์ [1,2๊ณ์ธต], [5,6,7๊ณ์ธต]์ ๊ตฌ๋ถํ๋๊ฑด ์๋ฏธ๊ฐ ์์ด์ ํ๋๋ก ๋ฌถ์ด์ ํํํ ๊ณ์ธต์ด๋ผ๊ณ ์๊ฐํ๋ฉด ๋๋ค.
@ 1. Physical, ๋ฌผ๋ฆฌ ๊ณ์ธต (๐TCP/IP - Network Interface ๊ณ์ธต)
์ ๊ธฐ์ ํธ, bit ์ ๋ฌ
์ ๊ธฐ์ ์ธ ๋นํธ๋จ์ [0,1]๊ฐ ์ ์์ ์ผ๋ก ์ ๋ฌ๋์๋์ง ํ์ธํ๋ ๊ณ์ธต์ด๋ฉฐ ๋ฐ์ดํฐ๊ฐ ๋ฌด์์ธ์ง, ์๋ฌ๊ฐ ๋ฐ์ํ๋์ง ์ฌ๋ถ๋ ์ ๊ฒฝ์ฐ์ง ์๋๋ค. โก ์ ๊ธฐ ์ผ์ด๋ธ, ๋ฆฌํผํฐ(์ ํธ ์ฆํญ๊ธฐ), ๋จ์ํ ํ๋ธ(์ ํธ ๋ถ๋ฐฐ๊ธฐ)
@ 2. DataLink, ๋ฐ์ดํฐ๋งํฌ ๊ณ์ธต (๐TCP/IP - Network Interface ๊ณ์ธต)
๊ธฐ๊ธฐ์ ๊ณ ์ ์ฃผ์(Mac ์ฃผ์) ๋ถ์ฌ, ์ค๋ฅ ๊ฒ์ถ, ํ๋ฆ์ ์ด ๋ฐ ์ฌ์ ์ก
๋ฌผ๋ฆฌ ๊ณ์ธต์ด ๋จ์ํ ์ ๊ธฐ์ ํธ๋ง ์ ๋ฌํ๋ค๋ฉด, DataLink ๊ณ์ธต์ ์ค๋ฅ์ ๋ฐ์ดํฐ ํ๋ฆ์ ๊ด๋ฆฌํ๋ค.
Mac ์ฃผ์๋ฅผ ์ฌ์ฉํ์ฌ [๋ฐ์ดํฐ๋ฅผ ๋ณด๋ผ ์ฃผ์]๋ฅผ ๊ตฌ๋ถํ๊ณ ํต์ ํ๊ณ , ์ค๋ฅ๊ฐ ๋ฐ์ํ๋ค๋ฉด ์ด ๊ณ์ธต์์ ์ฌ์ ์ก์ ๋ด๋นํ๋ค.
์ฐธ๊ณ ๋ก ์์ฆ์ ์ค์์น ๊ธฐ๋ฅ์ด ์๋ ํ๋ธ๋ ์์ด์, ์ฅ์น๋ก ๋ฌผ๋ฆฌ, ๋ฐ์ดํฐ๋งํฌ๋ฅผ ๊ตฌ๋ถํ๊ธฐ ์ ๋งคํ๊ธด ํ๋ค.
@ 3. Network, ๋คํธ์ํฌ ๊ณ์ธต(๐TCP/IP - IP, Internet ๊ณ์ธต)
์ฃผ์(IP)๋ฅผ ๋ถ์ฌํ๊ณ ์ต์ ์ ๊ฒฝ๋ก(Routing)๋ฅผ ์ค์
์ด ๊ณ์ธต์์๋ IP์ฃผ์๋ฅผ ์ฌ์ฉํ๋ฉฐ ๋ฐ์ดํฐ๋ฅผ ๋ชฉ์ ์ง๊น์ง ๋น ๋ฅด๊ฒ ์ ๋ฌํ๋ ๋ผ์ฐํ (Routing)๊ณผ ๊ด๋ จ์๋ค.
โก ์ฐธ๊ณ ๋ก ์ด ๊ณต๋ต ๋ฃจํธ๊ฐ ์ข์! ํ ๋ ์ฌ์ฉํ๋ Route์ ing๋ฅผ ๋ถ์ธ๊ฒ์ด Rounting์ด๋ค. ๋ชจ๋ฅด๋ ์ฌ๋์ด ๋ง๊ธธ๋..ใ ;
๊ฒฝ๋ก๋ฅผ ์ ํํ๊ณ , ๊ฒฝ๋ก์ ๋ฐ๋ผ ํจํท์ ์ ์กํด์ฃผ๋ ๊ฒ์ ๋ด๋นํ์ฌ ์ฌ๊ธฐ์๋ ๋ค์ํ ๋ผ์ฐํ ํ๋กํ ์ฝ์ด ์ฌ์ฉ๋๋ค.
์๋๋ ๋ผ์ฐํฐ์ฅ์น๋ง ์ด ๊ธฐ๋ฅ์ ๋ด๋นํ์ง๋ง, ์์ฆ์ 2๊ณ์ธต์ ์ค์์น์ ๋ผ์ฐํ ๊ธฐ๋ฅ์ด ํฌํจ๋ ๊ฒฝ์ฐ๋ ์๋ค.
@ 4. Transport, ์ ์ก ๊ณ์ธต(๐TCP/IP - IP, Internet ๊ณ์ธต)
์ ์ก ๊ณ์ธต์ด ๋ฐ๋ก ์กด์ฌํ๋ ์ด์ ๋, ๋จ์ํ ๋คํธ์ํฌ ๊ฒฝ๋ก์ง์ (3๊ณ์ธต)๋ง์ผ๋ก๋ ํ๊ณ์ ์ด ์๊ธฐ ๋๋ฌธ์ด๋ค.
๊ทธ๋์ ๋ ผ๋ฆฌ์ ์ธ ์ฐ๊ฒฐ ์ํ๋ผ๋ ๊ฐ๋ ์ ๋์ ํ TCP/UDP ํ๋กํ ์ฝ์ ์ฌ์ฉํ๋ค.
์ฆ ์ ๋๋จ์ ๊ธฐ๊ธฐ(End to End)์ ์ฌ์ฉ์๋ค์๊ฒ ๋ฐ์ดํฐ์ ๋ฌด๊ฒฐ์ฑ๊ณผ ์ ๋ขฐ์ฑ์ ๋ณด์ฅํด์ค๋ค.
๋ค๋ง ์ค์ ๋ก ์ค์๊ฐ ์ฐ๊ฒฐ์ ํ๋๊ฑด ์๋๊ณ , ์ผ์ข ์ ๊ฒ์ฆ๊ณผ์ ์ ๊ฑฐ์ณ ๋ง๋๋ ์ฐ๊ฒฐ์ํ์ด๋ค. ๊ฒฐ๊ตญ์๋ ๋ผ์ฐํฐ๋ฅผ ์ด์ฉํด์ IPํต์ ์ ํ๋๊ฑด ๋ณํจ์๋ค. ์ฐธ๊ณ ๋ก ํ ์ปดํจํฐ์์ ์ฌ๋ฌ ํ๋ก๊ทธ๋จ์ ๊ตฌ๋ถํ๋ Port ๋ํ 4๊ณ์ธต์ ์ํ๋ค.
@ 5. Session, ์ธ์ ๊ณ์ธต (๐TCP/IP - Application ๊ณ์ธต)
๋ฐ์ดํฐ๊ฐ ํต์ ํ๊ธฐ์ํ ๋ ผ๋ฆฌ์ ์ธ ์ฐ๊ฒฐ, ์ธ์ ์ ๋งํ๋ค.
์ ๋๋จ์ ํ๋ก์ธ์ค์์ '์ธ์ '์ด๋ผ๋ ๋ ผ๋ฆฌ์ ์ธ ์ฐ๊ฒฐ ์ํ๋ฅผ ๋ง๋ค๊ณ [TCP/IP ์ธ์ ]์ ๋ง๋ค๊ณ , ์์ ๋ ์ฑ ์์ ์ง๋ค.
โก ๋ณดํต ์ด ๊ณผ์ ์ ์ด์์ฒด์ ๊ฐ ๋ด๋นํ๋ค.
๋ค๋ง ์ธ์ ์ด๋ผ๋ ๊ฐ๋ ์ 4๊ณ์ธต์ ์ญํ ๊ณผ ๋น์ทํ๊ธฐ์, ์ด๋ ๊ณ์ธต์์ ๋ฐ์ํ ๋ฌธ์ ์ธ๊ฐ? ๊ตฌ๋ถํ๊ธฐ ์ ๋งคํ๊ธด ํ๋ค.
๊ทธ๋ผ์๋ ๋ถ๊ตฌํ๊ณ ์ธ์ ๊ณ์ธต์ ๋ ์ด์ ๋, ์์ฉํ๋ก๊ทธ๋จ(ํ๋ก์ธ์ค) ๊ด์ ์์ ์ฐ๊ฒฐ์ํ๊ฐ ํ์ํ๊ธฐ ๋๋ฌธ์ด๋ค.
โก ๊ทธ๋์ TCP/IP ๊ณ์ธต์์๋ 5,6,7์ ๋ฐ๋ก ๊ตฌ๋ถํ์ง์๊ณ App์ผ๋ก ํฉ์น ๊ฒ์ด๋ค.
Session ๊ณ์ธต์์๋ ์ ๋๋จ์ ์๋ ์ปดํจํฐ์ ์์ฉ ํ๋ก์ธ์ค๊ฐ ํต์ ์ ๊ด๋ฆฌํ๊ธฐ ์ํ ๋ฐฉ๋ฒ์ ์ ๊ณตํ๋ค.
๋์ ์ก์์ ๋ฐฉ์(duplex), ๋ฐ์ด์ค ๋ฐฉ์(half-duplex), ์ ์ด์ค ๋ฐฉ์(Full Duplex)์ ํต์ ๊ณผ ํจ๊ป, ์ฒดํฌ ํฌ์ธํ ๊ณผ ์ ํด, ์ข ๋ฃ, ๋ค์ ์์ ๊ณผ์ ๋ฑ์ ์ํํ๋ค.
@6. Presentation, ํํ๊ณ์ธต (๐TCP/IP - Application ๊ณ์ธต)
์ ๊ธฐ์ ํธ(1) โก Mac์ฃผ์, ์ค๋ฅ๊ฒ์ถ(2) โก IP์ง์ , ์ต์ ๊ฒฝ๋ก ์ค์ (3)
โก ์ ๋ขฐ์ฑ ๋ณด์ฅ, TCP/IP (4) โก ํ๋ก์ธ์ค์ [TCP/IP ์ธ์ ] ์์ฑ ๋ฐ ๊ด๋ฆฌ(5)
์ด์ ์ธ์ ๊น์ง ์์ฑ๋์๊ณ , ๋ฐ์ดํฐ๋ฅผ ์ ์ก๋ฐ์ผ๋ฉด ๋๋ค.
6๊ณ์ธต์ ์ ์ก๋ฐ์ ๋ฐ์ดํฐ์ ์ธ์ฝ๋ฉ ํ์์ ๋ง์ถ๋ ๊ณ์ธต์ด๋ผ๊ณ ์๊ฐํ๋ฉด ๋๋ค. ๋ฐ์ดํฐ๋ง๋ค ํ์(ํ ์คํธ, ์ด๋ฏธ์ง, ๋์์)์ด ๋ค๋ฅด๋ค. ๋ง์ฝ ํ์์ด ๊ฐ๋ค๊ณ ํด๋ MIME ์ธ์ฝ๋ฉ, ์ํธํ ๋ฐฉ์์ด ๋ค๋ฅด๊ธฐ ๋๋ฌธ์ ์ดํ๋ฆฌ์ผ์ด์ ์๊ฒ ๋ฐ์ดํฐ๊ฐ ์ ๋ฌ๋๊ธฐ ์ [6. Presentation] ๊ณ์ธต์ ๋ฒ์ญํด์ฃผ์ด์ผ ํ๋ค.
์ด๋ 7๊ณ์ธต์ ์ ๋ฌ๋๊ธฐ ์ ์ ์ฒ๋ฆฌํ๋ ๋ฐฉ๋ฒ๋ ์์ง๋ง, ์ฌ๊ธฐ์ ๋งํ๋ Presentation์ HTTP๋ฑ์ ํ๋กํ ์ฝ ์์์์ ๋์ํ๋ ์์ถ/ ์ํธํ๋ฑ์ ์๋ฏธํ๋ค.
@7. Application, ์์ฉ๊ณ์ธต (๐TCP/IP - Application ๊ณ์ธต)
์ต์ข ๋ชฉ์ ์ง์ด๋ค. ๋คํธ์ํฌ ์ /์ถ๋ ฅ์ ๋ด๋นํ๋ ๋ถ๋ถ์ด๋ฉฐ HTTP, FTP, SMTP, POP3 ๊ฐ์ ํ๋กํ ์ฝ๋ค์ด ํฌํจ๋๋ค.
๊ฒฐ๊ตญ์๋ ํ๋ก๊ทธ๋จ๋ค์ด [HTTP ๋ฑ์ ํ๋กํ ์ฝ]์ ํตํด ๋ฐ์ดํฐ๋ฅผ ๋ฐ์์ ์ฌ์ฉํ๋๊ฑฐ๋ผ, ๋คํธ์ํฌ ๊ณ์ธต์ ๋์ HTTP ๊ฐ์ ํ๋กํ ์ฝ์ด์ง ํ๋ก๊ทธ๋จ์ด ์๋๋ค.
๋ฌผ๋ก ๋ด๊ฐ ์ง์ ๋คํธ์ํฌ ํ๋กํ ์ฝ์ ์ค๊ณํด์ ๋ฐ์ดํฐ๋ฅผ ์์ผ์ ๋ด์ ์ ์กํ๋ฉด, ๊ทธ๊ฑด 7๊ณ์ธต์ด๋ผ๊ณ ๋ณผ ์ ์๋ค.
'๐๊ธฐ๋ณธ ์ง์ > ์น ๊ธฐ๋ณธ์ง์' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
๊ทธ๋์ Rest API๊ฐ ๋์ฒด ๋ญ๋ฐ (์ญ์ฌ์ด์ผ๊ธฐ) (0) | 2022.02.26 |
---|---|
HTTP #9 ์ธ์ -์ฟ ํค, JWTํ ํฐ (0) | 2021.09.06 |
HTTP #8 ํค๋ (์์ฒญํค๋, ์๋ตํค๋, ์ฟ ํค, ์บ์, ํ๋ก์) (0) | 2021.09.06 |
HTTP #7 ์ํ์ฝ๋ (200,300,400,500) (1) | 2021.09.06 |
HTTP #6 ๊ธฐ๋ณธ์ ์ธ API ์ค๊ณ (0) | 2021.09.06 |
๋ธ๋ก๊ทธ์ ์ ๋ณด
JiwonDev
JiwonDev