์ฃผ์์ฐฝ์ URL (www.google.co.kr) ์ ์ ๋ ฅํ๋ฉด ๋ฌด์จ ์ผ์ด ๋ฒ์ด์ง๋์ ?
๐ ๋ธ๋ผ์ฐ์ ์ฃผ์์ฐฝ์ www.google.co.kr์ ์ ๋ ฅํ๋ฉด ๋ฌด์จ ์ผ์ด ๋ฒ์ด์ง๊น ?
1. ๋ธ๋ผ์ฐ์ ์ฃผ์์ฐฝ์ www.google.co.kr์ ์ ๋ ฅ.
2. ๋ธ๋ผ์ฐ์ ๋ ์ด 4๊ฐ์ cache์์ DNS๊ธฐ๋ก ํ์ธ.
3. ์์ฒญํ URL์ด cache์ ์์ผ๋ฉด ISP์ DNS server๋ ์ฌ๊ท์ ์ผ๋ก ๋๋ฉ์ธ ์ด๋ฆ์ ์ฐพ์.
4. ์๋ง์ IP์ฃผ์๋ฅผ ์ฐพ์ผ๋ฉด, ๋ธ๋ผ์ฐ์ ๋ ํด๋น ์๋ฒ์ TCP์ฐ๊ฒฐ์ ์๋.
5. TCP์ฐ๊ฒฐ์ ์ฑ๊ณตํ๋ฉด, ๋ธ๋ผ์ฐ์ ๊ฐ ์น ์๋ฒ์ HTTP์์ฒญ ๋ณด๋.
6. ์น ์๋ฒ๋ ์ฒ๋ฆฌํ HTTP์๋ต์ ๋ธ๋ผ์ฐ์ ์๊ฒ ๋ณด๋.
7. ๋ธ๋ผ์ฐ์ ๋ ์๋ต์ ๊ธฐ๋ฐ, HTML ์ปจํ ์ธ ๋ฅผ ๋๋๋งํด์ ์ฐ๋ฆฌ ๋์ ๋ณด์ฌ์ค.
๐ ๋ธ๋ผ์ฐ์ ์ฃผ์์ฐฝ์ www.google.co.kr ์ด๋ผ๋ ๋๋ฉ์ธ ์ด๋ฆ์ ๊ฒ์ํ๋ค.
๐ ํด๋น ๋๋ฉ์ธ ์ฃผ์์ IP์ฃผ์๋ฅผ ์ฐพ๊ธฐ ์ํด 4๊ฐ์ ์บ์์์ DNS๊ธฐ๋ก์ ํ์ธํ๋ค.
๐ DNS (Domain Name System) ?
์น์ฌ์ดํธ(URL)์ ์ด๋ฆ(๋๋ฉ์ธ ์ฃผ์)๊ณผ IP์ฃผ์๋ฅผ ์ฐ๊ฒฐํด์ฃผ๋ DB ์์คํ ์ด๋ค.
'์ธํฐ๋ท์ ์ ํ๋ฒํธ๋ถ' ๋ผ๊ณ ์๊ฐํ๋ฉด ํธํ๋ค.
DNS๋ ์ฌ์ฉ์๊ฐ ์น ์ฌ์ดํธ์ ํธํ๊ฒ ์ ์ํ ์ ์๊ฒ ๋์์ค๋ค.
๋ง์น ์ฐ๋ฆฌ๊ฐ 101011 ์ ์น์ง ์๊ณ ํค๋ณด๋๋ฅผ ๋๋ค๊ฒจ ํ๋ฉด์ ๋ฌธ์๋ฅผ ์ฝ๊ฒ ์ถ๋ ฅํ๋ ๊ฒ์ฒ๋ผ,
์ซ์๋ก๋ IP์ฃผ์๋ฅผ ์ ๋ ฅํ๋ ๊ฒ๋ณด๋ค ํ ์คํธ์ ๋๋ฉ์ธ ์ด๋ฆ์ ์ ๋ ฅํ๋ ๊ฒ ๋ ํธ๋ฆฌํ๊ธฐ ๋๋ฌธ์ด๋ค.
• 1. ๋ธ๋ผ์ฐ์ ์บ์ ํ์ธ
๋ธ๋ผ์ฐ์ ๋ ๋ด๊ฐ ๋ฐฉ๋ฌธํ ์น์ฌ์ดํธ์ DNS๊ธฐ๋ก์ ์ผ์ ๊ธฐ๊ฐ๋์ ์บ์์ ๋ณด๊ดํ๋ค.
• 2. OS ์บ์ ํ์ธ
(๋ธ๋ผ์ฐ์ ์บ์์ ์ผ์นํ๋ DNS๊ธฐ๋ก์ด ์๋ค๋ฉด)
OS์๋ DNS๊ธฐ๋ก์ ์ผ์์ ์ผ๋ก ์ ์ฅํ๋ ๊ณณ์ด ์กด์ฌํ๋ค.
• 3. ๋ผ์ฐํฐ ์บ์ ํ์ธ
(OS ์บ์์ ์ผ์นํ๋ DNS๊ธฐ๋ก์ด ์๋ค๋ฉด)
๋ผ์ฐํฐ๋ DNS๊ธฐ๋ก์ ์ผ์์ ์ผ๋ก ๋ณด๊ดํ๋ค.
• 4. ISP ์บ์ ํ์ธ
ISP๋ DNS server๋ฅผ ๊ฐ์ง๊ณ ์๋ค.
ํด๋น ์๋ฒ์์ DNS๊ธฐ๋ก ์บ์๋ฅผ ๊ฒ์ํ ์ ์๋ค.
๐ ISP (Internet Service Provider) ?
์ธํฐ๋ท ์๋น์ค ์ ๊ณต์, ์ฆ ์ธํฐ๋ท ์๋น์ค๋ฅผ ์ ๊ณตํ๋ ์ฃผ์ฒด๋ฅผ ๋งํ๋ค. ex. KT, LG U+ (Tier 3) etc.
ISP๋ 3๊ฐ์ ๊ณ์ธต์ผ๋ก ๋๋ ๋ณผ ์ ์๋ค.
• 3๋จ๊ณ ISP (๊ณ์ธต3 ์ธํฐ๋ท ๊ณต๊ธ์ : Tier-3)
3๋จ๊ณ ISP๋ ์ธํฐ๋ท ์ ์ก์ ๊ตฌ๋งคํ๋ ์ ๊ณต ์ ์ฒด์ด๋ค.
์ฐ๋ฆฌ๊ฐ ํํ ์๊ณ ์๋, ์ธํฐ๋ท์ ์ ๊ณตํด์ฃผ๋ ISP์ด๋ฉฐ, ์ ์ ISP ๋ผ๊ณ ๋ ํ๋ค. ex. KT, LG U+ ...
• 2๋จ๊ณ ISP (๊ณ์ธต2 ์ธํฐ๋ท ๊ณต๊ธ์ : Tier-2)
1๋จ๊ณ ISP์ 3๋จ๊ณ ISP๋ฅผ ์ฐ๊ฒฐํ๋ ๊ณต๊ธ์์ด๋ค.
์ธํฐ๋ท ์ ์ก์ ๊ตฌ๋งคํ๊ธฐ๋ ํ๊ณ , ํผ์ด๋ง ๊ณ์ฝ์ ํตํด ์ธํฐ๋ท ํธ๋ํฝ์ ๊ตํํ๋ค.
• 1๋จ๊ณ ISP (๊ณ์ธต1 ์ธํฐ๋ท ๊ณต๊ธ์ : Tier-1)
๋ค๋ฅธ 1๋จ๊ณ ISP์ ์ธํฐ๋ท ํธ๋ํฝ์ ๊ตํํ๋ ์ธํฐ๋ท ์ ๊ณต ์ ์ฒด๋ค์ ๋งํ๋ค. ๋ฐฑ๋ณธ ์ธํฐ๋ท ๊ณต๊ธ์๋ผ๊ณ ๋ ๋ถ๋ฅธ๋ค.
์ด ์ ์ฒด๋ค์ ๋์์ ์ธํฐ๋ท, ํด์ ์ผ์ด๋ธ๊ณผ ๊ฐ์ ์ธํ๋ผ๋ฅผ ๊ตฌ์ถํ๊ณ ,
์ต์ข ์ฌ์ฉ์๊ฐ ์๋ '๋ชจ๋ ์ธํฐ๋ท ๊ณต๊ธ์'์๊ฒ ํธ๋ํฝ์ ์ ๊ณตํ๋ค.
๊ณ์ธต1 ์ธํฐ๋ท ๊ณต๊ธ์๊ฐ ์์ผ๋ฉด ๋๋ฅ๊ณผ ๊ตญ๊ฐ ๊ฐ์ ์ธํฐ๋ท ํธ๋ํฝ์ ๊ตํํ ์ ์๋ค.
๐ ์์ฒญํ URL์ด cache์ ์์ผ๋ฉด ISP์ DNS server๋ ์ฌ๊ท์ ์ผ๋ก ๋๋ฉ์ธ ์ด๋ฆ์ ์ฐพ๋๋ค.
๐ DNS server (Domain Name System Server) ?
ํ ๋น๋ ๋๋ฉ์ธ ์์ญ์ ๋ํ ์ ๋ณด๋ฅผ ๊ฐ์ง๊ณ ์๋ ์๋ฒ๋ก, ์ฃผ๋ก ๋๋ฉ์ธ์ IP์ฃผ์๋ก ๋ณํํ๋ ์ญํ ์ ํ๋ค.
DNS server๋ DNS Recursor๋ผ๊ณ ๋ถ๋ฅด๊ธฐ๋ ํ๋ค.
๐ DNS Recursor ?
์ฌ๋ฌ ๋ค๋ฅธ DNS server์ ์์ฒญ์ ๋ณด๋ด ์ง์ ๋ ๋๋ฉ์ธ์ ์ ์ ํ IP์ฃผ์๋ฅผ ์ฐพ๋ ์ผ์ ๋ด๋นํ๋ค. (DNS lookup ๋ด๋น)
recursor(์ฌ๊ท)์ด๋ฆ์ด ๋ถ๊ฒ ๋ ์ด์ ๋, ์๋ง๋ IP์ฃผ์๋ฅผ ์ฐพ์ ๋๊น์ง ์์ฒญ์ ๋ณด๋ด๋ ๋ฐ๋ณต์ ์ธ ํน์ฑ๋๋ฌธ์ด๋ค.
๋ค๋ฅธ DNS server๋ Name server๋ผ๊ณ ๋ถ๋ฅธ๋ค.
์? ๋๋ฉ์ธ ์ด๋ฆ์ ๋๋ฉ์ธ ์ํคํ ์ฒ๋ฅผ ๊ธฐ๋ฐ์ผ๋ก DNS ๊ฒ์์ ์ํํ๊ธฐ ๋๋ฌธ์ด๋ค.
๐ ๋๋ฉ์ธ ์ํคํ ์ณ (Domain Architecture)
• ๋ฃจํธ ๋๋ฉ์ธ (Root Domain) ex. "."
• ์ต์์ ๋๋ฉ์ธ (TLD : Top Level Domain) ex. "edu", "org", "gov", "com", "au"
• 2์ฐจ ๋๋ฉ์ธ (Second Level Domain) ex. "openoffice.org", "expedia.gov", "microsoft.com"
• 3์ฐจ ๋๋ฉ์ธ (Third Level Domain) ex. "www.openoffice.org", "download.microsoft.com"
๊ฐ ๋จ๊ณ์๋ DNS lookup ๋์ค์ ์ฟผ๋ฆฌ๋๋ ๊ณ ์ ํ Name server๊ฐ ์๋ค.
** ๋์๊ณผ์ ์์ [www.google.co.kr]
DNS Recursor๋ ๋ฃจํธ ๋ค์ ์๋ฒ์ ์ฐ๊ฒฐํ๋ค.
๋ฃจํธ ๋ค์ ์๋ฒ๋ .kr (์ต์์) ๋ค์ ์๋ฒ๋ก redirectionํ๋ค.
.kr ๋ค์ ์๋ฒ๋ .co.kr (2์ฐจ) ๋ค์ ์๋ฒ๋ก redirectionํ๋ค.
.co.kr ๋ค์ ์๋ฒ๋ www.google.co.kr (3์ฐจ) ๋ค์ ์๋ฒ๋ก redirectionํ๋ค.
์ผ์นํ๋ ๋๋ฉ์ธ ์ฃผ์๋ฅผ ์ฐพ์ผ๋ฉด, ํด๋น IP์ฃผ์๋ฅผ DNS Recursor๋ก ๋ฐํํ๋ค.
DNS Recursor๋ ์ด๋ฅผ ๋ธ๋ผ์ฐ์ ๋ก ๋ค์ ๋ณด๋ธ๋ค.
๐ ์ผ์นํ๋ IP์ฃผ์๋ฅผ ์ฐพ์ผ๋ฉด, ๋ธ๋ผ์ฐ์ ๋ ํด๋น ์๋ฒ์ TCP์ฐ๊ฒฐ์ ์์ํ๋ค.
HTTP ์์ฒญ์๋ TCP(Transmission Control Protocol)์ด๋ผ๋ ์ ์ก ์ ์ด ํ๋กํ ์ฝ์ ์ฌ์ฉํ๋ค.
โ๐ป TCP/IP 3-way handshake ์ฐ๊ฒฐ ๋ฐฉ๋ฒ
: client์ server๊ฐ SYN(SYNchronize : ์ฐ๊ฒฐ ์์ฒญ) ๋ฐ ACK(ACKnowledgement : ์น์ธ) ๋ฉ์ธ์ง๋ฅผ ๊ตํํ๋ฉฐ
์ฐ๊ฒฐ์ ์ค์ ํ๋ 3๋จ๊ณ์ ํ๋ก์ธ์ค.
1. client๋ server์ SYN ํจํท์ ๋ณด๋ด ์๋ก์ด ์ฐ๊ฒฐ์ด ๊ฐ๋ฅํ์ง ์ฌ๋ถ๋ฅผ ๋ฌป๋๋ค.
2. server์ ์ ์ฐ๊ฒฐ์ ๋ฐ์ ์ ์๋ ์ด๋ฆฐ ํฌํธ๊ฐ ์๋ ๊ฒฝ์ฐ, SYN/ACK ํจํท์ ๋ณด๋ด ACK(์น์ธ)๋ก ์๋ตํ๋ค.
3. client๋ server๋ก ๋ถํฐ SYN/ACK ํจํท์ ์์ ํ๊ณ ACK ํจํท์ ์ ์กํ์ฌ ์น์ธํ๋ค.
๐ TCP์ฐ๊ฒฐ์ ์ฑ๊ณตํ๋ฉด, ๋ธ๋ผ์ฐ์ ๊ฐ ์น ์๋ฒ์ HTTP ์์ฒญ์ ๋ณด๋ธ๋ค.
๐ ์น ์๋ฒ๋ ์์ฒญ์ ์ฒ๋ฆฌํ ๊ฒฐ๊ณผ๋ฅผ HTTP์๋ต์ผ๋ก ๋ธ๋ผ์ฐ์ ์ ์ ์กํ๋ค.
๐ ๋ธ๋ผ์ฐ์ ๋ HTML์ ๋ ๋๋งํ ํํ๋ฅผ ํ๋ฉด์ ๋ณด์ฌ์ค๋ค.
• ์ฐธ๊ณ ์๋ฃ