๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
  • Dev Blog
CS/Network

[HTTP] - ์ธํ„ฐ๋„ท ๋„คํŠธ์›Œํฌ

by ์œ ์ง„์˜ 2022. 7. 21.
์ธํ”„๋Ÿฐ ๊ฐ•์˜ ์ค‘ ๋ชจ๋“  ๊ฐœ๋ฐœ์ž๋ฅผ ์œ„ํ•œ HTTP ์›น ๊ธฐ๋ณธ ์ง€์‹์ด๋ผ๋Š” ๊ฐ•์˜์— ๋Œ€ํ•œ TIL์ž…๋‹ˆ๋‹ค.

 

์ธํ„ฐ๋„ท ๋„คํŠธ์›Œํฌ

  • ์ธํ„ฐ๋„ท ํ†ต์‹ 
  • IP (Internet Protocol)
  • TCP, UDP
  • PORT
  • DNS

 

1 . ์ธํ„ฐ๋„ท ํ†ต์‹ 

๋งŒ์•ฝ ํด๋ผ์ด์–ธํŠธ์™€ ์„œ๋ฒ„๊ฐ€ ๋ฐ”๋กœ ์˜†์— ๋ถ™์–ด์žˆ๋‹ค๋ฉด ์ผ€์ด๋ธ”๋กœ ์—ฐ๊ฒฐํ•ด์„œ ์š”์ฒญ๊ณผ ์‘๋‹ต์„ ๋ฐ”๋กœ ํ•  ์ˆ˜ ์žˆ๋‹ค. ํ•˜์ง€๋งŒ ๋งŒ์•ฝ ํด๋ผ์ด์–ธํŠธ์™€ ์„œ๋ฒ„์˜ ๋ฌผ๋ฆฌ์  ๊ฑฐ๋ฆฌ๊ฐ€ ๋ฉ€๊ณ  ํด๋ผ์ด์–ธํŠธ์™€ ์„œ๋ฒ„ ์‚ฌ์ด์— ์ธํ„ฐ๋„ท์ด๋ผ๋Š” ๊ฒƒ์ด ์กด์žฌํ•˜๋ฉด ํด๋ผ์ด์–ธํŠธ์™€ ์„œ๋ฒ„๋Š” ์–ด๋–ป๊ฒŒ ํ†ต์‹ ํ• ๊นŒ? ๋ณต์žกํ•œ ์ธํ„ฐ๋„ท์„ ์‚ฌ์ด์— ๋ผ๊ณ  ์•ˆ์ „ํ•˜๊ฒŒ ํ†ต์‹ ํ•˜๋ ค๋ฉด ์ผ๋ จ์˜ ๊ทœ์•ฝ, ์ฆ‰ ํ”„๋กœํ† ์ฝœ์ด ํ•„์š”ํ•˜๋‹ค. ์ด๋Ÿฌํ•œ ํ”„๋กœํ† ์ฝœ์ด ๋ฐ”๋กœ IP, ์ฆ‰ Internet Protocol์ด๋‹ค.

 

2.  IP(Internet Protocol)

ํ†ต์‹ ์„ ํ•˜๋ ค๊ณ  ํ•˜๋Š” ๋ชจ๋“  ๋…ธ๋“œ๋“ค์€ IP ์ฃผ์†Œ๋ฅผ ํ• ๋‹น๋ฐ›๋Š”๋‹ค. ์ด๋Ÿฌํ•œ ์ฃผ์†Œ๋ฅผ ๋ฐ”ํƒ•์œผ๋กœ IP ํ”„๋กœํ† ์ฝœ์— ์˜ํ•ด์„œ ํ†ต์‹ ์„ ํ•˜๊ฒŒ ๋œ๋‹ค. IP ํ”„๋กœํ† ์ฝœ์˜ ์—ญํ• ์€ ์ง€์ •ํ•œ IP ์ฃผ์†Œ์— 'ํŒจํ‚ท'์ด๋ผ๋Š” ํ†ต์‹  ๋‹จ์œ„๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ์ „๋‹ฌํ•˜๋Š” ๊ฒƒ์ด๋‹ค. IP ํŒจํ‚ท์—๋Š” ์ถœ๋ฐœ์ง€ IP์ฃผ์†Œ, ๋„์ฐฉ์ง€ IP์ฃผ์†Œ, ๊ธฐํƒ€ ๋“ฑ๋“ฑ์ด ๋“ค์–ด์žˆ๋‹ค. 

ํ•˜์ง€๋งŒ, IP ํ”„๋กœํ† ์ฝœ์—๋„ ํ•œ๊ณ„๊ฐ€ ์žˆ๋‹ค. ์ฒซ ๋ฒˆ์งธ ํ•œ๊ณ„๋Š” ํŒจํ‚ท์„ ๋ฐ›์„ ๋Œ€์ƒ์ด ์—†๊ฑฐ๋‚˜ ์„œ๋น„์Šค ๋ถˆ๋Šฅ ์ƒํƒœ์—ฌ๋„ ํŒจํ‚ท์„ ์ „์†กํ•˜๋Š” ๋น„์—ฐ๊ฒฐ์„ฑ์ด๋‹ค. ๋‘ ๋ฒˆ์งธ๋Š” ๋ณด๋‚ผ ๋ฐ์ดํ„ฐ์˜ ํฌ๊ธฐ๊ฐ€ ํด ๋•Œ๋Š” ์ชผ๊ฐœ์„œ ๋ณด๋‚ด๋Š” ๋ฐ ์ด๋•Œ ์ชผ๊ฐœ์ง„ ๋ฐ์ดํ„ฐ๊ฐ€ ์ˆœ์„œ๋Œ€๋กœ ์˜ค์ง€ ์•Š์„ ๊ฒฝ์šฐ, ๋˜๋Š” ์ค‘๊ฐ„์— ๋…ธ๋“œ๊ฐ€ ์‚ฌ๋ผ์ง€๋Š” ๋น„์‹ ๋ขฐ์„ฑ์ด๋‹ค. ์„ธ ๋ฒˆ์งธ๋Š” ๊ฐ™์€ IP ์ฃผ์†Œ๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ์„œ๋ฒ„์—์„œ ํ†ต์‹ ํ•˜๋Š” ๊ธฐ๊ธฐ์˜ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜(ํ”„๋กœ๊ทธ๋žจ)์ด ์—ฌ๋Ÿฌ ๊ฐœ์ผ ๊ฒฝ์šฐ์—๋Š” ๊ตฌ๋ถ„์ด ์–ด๋ ต๋‹ค๋Š” ์ ์ด๋‹ค. ์ด๋Ÿฌํ•œ ํ•œ๊ณ„๋ฅผ ๊ทน๋ณตํ•œ ํ”„๋กœํ† ์ฝœ์ด TCP ํ”„๋กœํ† ์ฝœ์ด๋‹ค.

 

3. TCP/UDP ํ”„๋กœํ† ์ฝœ

โ€ป ์ธํ„ฐ๋„ท ํ”„๋กœํ† ์ฝœ ์Šคํƒ 4 ๊ณ„์ธต โ€ป 

- ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ณ„์ธต : HTTP, FTP
- ์ „์†ก ๊ณ„์ธต : TCP, UDP
- ์ธํ„ฐ๋„ท ๊ณ„์ธต : IP
- ๋„คํŠธ์›Œํฌ ์•ก์„ธ์Šค ๊ณ„์ธต

 

๋ฐ์ดํ„ฐ๋ฅผ ์ „์†กํ•˜๋ ค๊ณ  ํ•  ๋•Œ ๊ฐ ํ”„๋กœํ† ์ฝœ ๊ณ„์ธต์—์„œ ๋ฐ์ดํ„ฐ ํŒจํ‚ท์„ ์•„๋ž˜ ๊ทธ๋ฆผ๊ณผ ๊ฐ™์€ ๋ฐฉ์‹์œผ๋กœ ๊ฐ€๊ณตํ•œ๋‹ค.

 

์ถœ์ฒ˜) https://dreamcoding.tistory.com/37?category=1037312

 

IP ํ”„๋กœํ† ์ฝœ์˜ ํ•œ๊ณ„๋ฅผ ๊ทน๋ณตํ•˜๊ธฐ ์œ„ํ•ด ๋ฐ์ดํ„ฐ ํŒจํ‚ท์— TCP ์ •๋ณด๋ฅผ ์ƒ์„ฑํ•˜๋Š” ๋ฐ ์ด๋ฅผ TCP ์„ธ๊ทธ๋จผํŠธ๋ผ๊ณ  ๋ถ€๋ฅธ๋‹ค. TCP ์„ธ๊ทธ๋จผํŠธ์—๋Š” ์ถœ๋ฐœ์ง€ ํฌํŠธ, ๋ชฉ์ ์ง€ ํฌํŠธ, ์ „์†ก ์ œ์–ด, ์ˆœ์„œ, ๊ฒ€์ฆ ์ •๋ณด ๋“ฑ์ด ๋‹ด๊ฒจ ์žˆ๋‹ค.

 

 

TCP(Transmission Control Protocol), ์ฆ‰ ์ „์†ก ์ œ์–ด ํ”„๋กœํ† ์ฝœ์˜ ํŠน์ง•์€ ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค

 

TCP 3 way Handshake

์ถœ์ฒ˜) https://dreamcoding.tistory.com/37?category=1037312

 

์ด๋ ‡๊ฒŒ 3๋ฒˆ์˜ ์—ฐ๊ฒฐ ๊ณผ์ •์„ ํ†ตํ•ด์„œ ์„œ๋กœ๋ฅผ ์ธ์‹ํ•˜๊ฒŒ ๋˜๋ฉด ๊ทธ๋‹ค์Œ์— ๋ฐ์ดํ„ฐ๋ฅผ ์ „์†กํ•œ๋‹ค. ๋งŒ์•ฝ ์ค‘๊ฐ„์— ์„œ๋ฒ„์—์„œ ์‘๋‹ต์ด ์—†๊ฒŒ ๋œ๋‹ค๋ฉด ์—ฐ๊ฒฐ์ด ๋˜์ง€ ์•Š๊ฒŒ ๋˜๋ฉด์„œ ๋ฐ์ดํ„ฐ๋ฅผ ๋ณด๋‚ด์ง€ ์•Š๊ฒŒ ๋˜๋ฏ€๋กœ IP ํ”„๋กœํ† ์ฝœ์˜ ๋น„์—ฐ๊ฒฐ์„ฑ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ๋‹ค.

 

๋ฐ์ดํ„ฐ ์ „๋‹ฌ ๋ณด์ฆ

TCP ํ”„๋กœํ† ์ฝœ์€ ํด๋ผ์ด์–ธํŠธ์—์„œ ๋ฐ์ดํ„ฐ๋ฅผ ์ „์†กํ•˜๋ฉด ์„œ๋ฒ„์—์„œ ๋ฐ์ดํ„ฐ๋ฅผ ์ž˜ ๋ฐ›์•˜๋‹ค๋Š” ์‘๋‹ต์„ ํ•œ๋‹ค. ๋งŒ์•ฝ ์‘๋‹ต์ด ์˜ค์ง€ ์•Š๋Š”๋‹ค๋ฉด ์„œ๋ฒ„์— ๋ฌธ์ œ๊ฐ€ ์žˆ์Œ์„ ์˜๋ฏธํ•œ๋‹ค.

 

์ˆœ์„œ ๋ณด์ฆ

TCP ํ”„๋กœํ† ์ฝœ์€ ๋งŒ์•ฝ ํŒจํ‚ท์˜ ์ˆœ์„œ๊ฐ€ 1,2,3 ์ˆœ์„œ๋กœ ๋ณด๋ƒˆ๋Š”๋ฐ ๋ฐ›์•˜์„ ๋•Œ 1,3,2 ์ˆœ์„œ๋กœ ๋„์ฐฉํ–ˆ๋‹ค๋ฉด ์ž˜๋ชป ๋ณด๋‚ด์ง„ 2๋ฒˆ ํŒจํ‚ท๋ถ€ํ„ฐ ๋‹ค์‹œ ๋ณด๋‚ด๋ผ๊ณ  ์š”์ฒญ ํ•œ๋‹ค.

 

 

UDP(User Datagram Protocol)์˜ ํŠน์ง•์€ ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค.

 

  • TCP ํ”„๋กœํ† ์ฝœ ๊ฐ™์ด ์—ฐ๊ฒฐ ์ง€ํ–ฅ์ ์ด๊ณ  ๋ฐ์ดํ„ฐ์˜ ์ „๋‹ฌ, ์ˆœ์„œ๋ฅผ ๋ณด์žฅํ•˜์ง€๋Š” ์•Š๋Š”๋‹ค.
  • ๋Œ€์‹  ๋‹จ์ˆœํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์ƒ๋Œ€์ ์œผ๋กœ ๋น ๋ฅด๋‹ค.
  • IP ํ”„๋กœํ† ์ฝœ์— ํฌํŠธ์™€ ์ฒดํฌ์„ฌ ์ •๋„๋งŒ ์ถ”๊ฐ€๋œ ํ”„๋กœํ† ์ฝœ์ด๋ผ๊ณ  ์ƒ๊ฐํ•˜๋ฉด ๋œ๋‹ค.

 

โ€ป ํฌํŠธ

IP ํ”„๋กœํ† ์ฝœ์˜ ํ•œ๊ณ„์ ์ธ ๊ฐ™์€ IP ์ฃผ์†Œ๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ์„œ๋ฒ„์—์„œ ํ†ต์‹ ํ•˜๋Š” ๊ธฐ๊ธฐ์˜ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜(ํ”„๋กœ๊ทธ๋žจ)์ด ์—ฌ๋Ÿฌ ๊ฐœ์ผ ๊ฒฝ์šฐ์— ๊ตฌ๋ถ„ํ•˜๊ธฐ ์–ด๋ ต๋‹ค๋Š” ์ ์„ ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ๋Š” ๋ฐฉ์•ˆ์ด๋‹ค.

 

โ€ป ์ฒดํฌ์„ฌ

ํ†ต์‹ ํ•˜๊ณ  ์žˆ๋Š” ๋ฐ์ดํ„ฐ๊ฐ€ ์˜ฌ๋ฐ”๋ฅธ ๋ฐ์ดํ„ฐ์ธ์ง€ ๊ฒ€์ฆํ•ด์ฃผ๋Š” ๋ฐ์ดํ„ฐ์ด๋‹ค.

 

4. Port

ํ•œ ๋Œ€์˜ ํด๋ผ์ด์–ธํŠธ PC์—์„œ ์—ฌ๋Ÿฌ ๊ฐœ์˜ IP๋ฅผ ์—ฐ๊ฒฐํ•˜๋ ค๋ฉด ์–ด๋–กํ•ด์•ผ ํ• ๊นŒ? IP๋Š” ํ•ด๋‹น ๊ธฐ๊ธฐ์˜ ๊ณ ์œ ํ•œ ์ฃผ์†Œ๊ฐ’์ด๋ฏ€๋กœ IP๋งŒ์œผ๋กœ๋Š” ๊ตฌ๋ถ„ํ•˜๊ธฐ ์–ด๋ ต๋‹ค. ๋”ฐ๋ผ์„œ, ๊ฐ™์€ IP์—์„œ ๋ชฉ์ (ํ”„๋กœ์„ธ์Šค)์— ๋”ฐ๋ผ ๋ถ„๋ฅ˜ํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” ํฌํŠธ๋ผ๋Š” ๊ฒƒ์„ ์‚ฌ์šฉํ•œ๋‹ค.

TCP/IP ํŒจํ‚ท์—๋Š” ์ถœ๋ฐœ์ง€ ํฌํŠธ, ๋„์ฐฉ์ง€ ํฌํŠธ์— ๋Œ€ํ•œ ์ •๋ณด๊ฐ€ ๋‹ด๊ฒจ ์žˆ๋‹ค. ๋”ฐ๋ผ์„œ ์•„๋ž˜ ๊ทธ๋ฆผ๊ณผ ๊ฐ™์ด ํ”„๋กœ์„ธ์Šค์— ๋”ฐ๋ฅธ ํ†ต์‹ ์ด ๊ฐ€๋Šฅํ•˜๋‹ค.

์ถœ์ฒ˜)https://dreamcoding.tistory.com/52?category=1037312

5. DNS

IP ์ฃผ์†Œ๋ฅผ ํ•ญ์ƒ ๊ธฐ์–ตํ•ด๋‘๊ธฐ ์–ด๋ ต๊ธฐ ๋•Œ๋ฌธ์— ๋„๋ฉ”์ธ๋ช…์„ IP ์ฃผ์†Œ๋กœ ๋ฐ”๊ฟ”์„œ ์“ธ ์ˆ˜ ์žˆ๊ฒŒ ํ•˜๋Š” ์‹œ์Šคํ…œ์ด๋‹ค.

๋Œ“๊ธ€