๐Ÿง‘๐Ÿปโ€๐Ÿ’ปTCP/UDP ํ”„๋กœํ† ์ฝœโšก๏ธ

DEVJUNยท2022๋…„ 1์›” 3์ผ
0

HTTPํ”„๋กœํ† ์ฝœ

๋ชฉ๋ก ๋ณด๊ธฐ
2/2

TCP์™€ UDP๋Š” ์ „์†ก๊ณ„์ธต(OSI 4๊ณ„์ธต)ํ”„๋กœํ† ์ฝœ์ด๋‹ค. ์•ž์— ์ฑ•ํ„ฐ์—์„œ IPํ”„๋กœํ† ์ฝœ๊ณผ ๊ทธ ํ•œ๊ณ„์— ๋Œ€ํ•ด์„œ ์ด์•ผ๊ธฐ ํ–ˆ๋‹ค. TCP๋Š” IPํ”„๋กœํ† ์ฝœ์˜ ํ•œ๊ณ„๋ฅผ ๋ณด์™„ํ•ด์ค„ ์ˆ˜ ์žˆ๋‹ค.

TCP/IP์˜ ํŒจํ‚ท์€ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๊ตฌ์กฐ๋ฅผ ๋ˆ๋‹ค. ๋ญ”๊ฐ€ IP๋งŒ ์žˆ์—ˆ์„ ๋•Œ๋ณด๋‹ค ๋” ์„ธ๋ถ€์ ์ธ ์ •๋ณด๋“ค์ด ์ถ”๊ฐ€๋˜์–ด ์žˆ๋Š” ๊ฒƒ์„ ๋ณผ ์ˆ˜ ์žˆ๋‹ค.


๐Ÿ‘‰๐ŸปTCP/UDP์˜ ํŠน์ง•์— ๋Œ€ํ•ด ์•Œ์•„๋ณด์ž!

TCP

์ „์†ก ์ œ์–ด ํ”„๋กœํ† ์ฝœ(Transmission Control Protocol)


TCP ํ”„๋กœํ† ์ฝœ์€ ์šฐ์„  ์‹ ๋ขฐ์„ฑ์ด ์žˆ๋Š” ํ”„๋กœํ† ์ฝœ์ด๋ผ๋Š” ์ ์ด ํ•ต์‹ฌ์ด๋‹ค.

ํŠน์ง• 1. 3-way-handshake

์œ„ ์ด๋ฏธ์ง€์™€ ๊ฐ™์ด TCPํ”„๋กœํ† ์ฝœ์€ 3way-handshake์ด๋ผ๋Š” ๊ณผ์ •์„ ํ†ตํ•ด ํด๋ผ์ด์–ธํŠธ์™€ ์„œ๋ฒ„๊ฐ€ ์—ฐ๊ฒฐ์ด ๋œ๋‹ค.

ํด๋ผ์ด์–ธํŠธ๊ฐ€ ๋จผ์ € ์„œ๋ฒ„์— SYN(์ ‘์† ์š”์ฒญ)์„ ๋ณด๋‚ด๋ฉด ์„œ๋ฒ„์—์„œ๋Š” SYN+ACK (์š”์ฒญ ์ˆ˜๋ฝ + ์ ‘์† ์š”์ฒญ)์„ ๋ณด๋‚ด๊ณ ๋งˆ์ง€๋ง‰์œผ๋กœ ํด๋ผ์ด์–ธํŠธ์—์„œ ACK(์š”์ฒญ ์ˆ˜๋ฝ)์„ ๋ณด๋‚ด๋ฉด ๋น„๋กœ์†Œ ํด๋ผ์ด์–ธํŠธ์™€ ์„œ๋ฒ„๊ฐ€ ์—ฐ๊ฒฐ์ด ๋˜๋Š” ๊ฒƒ์ด๋‹ค. ์—ฐ๊ฒฐ์ด ๋˜๊ณ  ๋‚˜์„œ์•ผ ๋ฐ์ดํ„ฐ๋ฅผ ์ฃผ๊ณ  ๋ฐ›์„ ์ˆ˜ ์žˆ๋‹ค.(์—ฐ๊ฒฐ์ง€ํ–ฅ)!!


ํŠน์ง• 2. ๋ฐ์ดํ„ฐ ์ „๋‹ฌ ๋ณด์ฆ

TCP ํ”„๋กœํ† ์ฝœ์€ ์œ„์—์„œ ๋งํ–ˆ๋“ฏ์ด ์‹ ๋ขฐ์„ฑ์ด ํ•ต์‹ฌ์ด๋ผ๊ณ  ํ–ˆ๋‹ค. TCPํ”„๋กœํ† ์ฝœ์€ ๋ฐ์ดํ„ฐ ์ „๋‹ฌ์„ ๋ณด์ฆํ•ด์ค€๋‹ค.

ํŠน์ง• 3. ์ „๋‹ฌ ๋ฐ์ดํ„ฐ ์ˆœ์„œ ๋ณด์žฅ

TCP ํ”„๋กœํ† ์ฝœ์€ IPํ”„๋กœํ† ์ฝœ์—์„œ์˜ ํ•œ๊ณ„์ ์ธ ๋ฐ์ดํ„ฐ๊ฐ€ ์ˆœ์„œ๋Œ€๋กœ ์™”๋Š”์ง€์— ๋Œ€ํ•ด์„œ๋„ ๋ณด์žฅ์„ ํ•ด์ค€๋‹ค๐Ÿค“!!


๋‹ค์Œ์€ UDP์˜ ํŠน์ง•์— ๋Œ€ํ•ด ์•Œ์•„๋ณด์ž

๐Ÿ“ UDP

์‚ฌ์šฉ์ž ๋ฐ์ดํ„ฐ๊ทธ๋žจ ํ”„๋กœํ† ์ฝœ(UserDatagram Protocol)

UDP ํ”„๋กœํ† ์ฝœ์€ TCP์™€ ๊ฑฐ์˜ ์™„์ „ํžˆ ๋ฐ˜๋Œ€๋œ๋‹ค๊ณ  ๋ณด๋ฉด๋œ๋‹ค.

  • 3-way-handshake ๊ณผ์ •์ด ์—†๋‹ค. -> ์—ฐ๊ฒฐ์ง€ํ–ฅ x

  • ๋ฐ์ดํ„ฐ ์ „๋‹ฌ์„ ๋ณด์žฅํ•˜์ง€ ์•Š๋Š”๋‹ค. -> ๋น„์‹ ๋ขฐ์„ฑ

  • ์ˆœ์„œ ๋ณด์žฅ X

๋ญ”๊ฐ€ UDP๋Š” ๋‹จ์ ๋งŒ ๋งŽ์•„๋ณด์ด์ง€๋งŒ ์œ„ ํŠน์ง• ์ฒ˜๋Ÿผ ๊ธฐ๋Šฅ์ด ๊ฑฐ์˜ ์—†๊ธฐ์— TCP์— ๋น„ํ•ด ๋น ๋ฅด๋‹ค๋Š” ์žฅ์ ์ด ์žˆ๋‹ค.

๋ณดํ†ต ๋™์˜์ƒ์ด๋‚˜ ์˜จ๋ผ์ธ ๊ฒŒ์ž„๋“ฑ์—์„œ ์‚ฌ์šฉ๋˜๋Š” ํ”„๋กœํ† ์ฝœ๐Ÿง์ด๋‹ค.


์ถœ์ฒ˜

https://www.inflearn.com/course/http-%EC%9B%B9-%EB%84%A4%ED%8A%B8%EC%9B%8C%ED%81%AC/dashboard

profile
๐Ÿง‘๐Ÿปโ€๐Ÿ’ปiOS

0๊ฐœ์˜ ๋Œ“๊ธ€