ํ˜„์žฌ์˜ ์ธํ„ฐ๋„ท์€ ํŒจํ‚ท ์Šค์œ„์นญ ๋ฐฉ์‹์˜ ๋„คํŠธ์›Œํฌ์ด๋‹ค. ๋”ฐ๋ผ์„œ ์‚ฌ์šฉ์ž๋“ค์ด ์ž์‹ ์ด ๋ณด๋‚ธ ๋ฐ์ดํ„ฐ๋ฅผ ํŒจํ‚ท์ด๋ผ๋Š” ๋‹จ์œ„๋กœ์จ ์ „์†ก์„ ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ๋„คํŠธ์›Œํฌ ์ž์›๋“ค (๋ผ์šฐํ„ฐ ๋“ฑ) ์ด ํŒจํ‚ท ๋‹จ์œ„๋กœ ์ฒ˜๋ฆฌํ•˜๊ธฐ ๋•Œ๋ฌธ์— time sharing ๋ฐฉ์‹์œผ๋กœ ๊ณต์œ ํ•œ๋‹ค. ๋”ฐ๋ผ์„œ ๋„คํŠธ์›Œํฌ๋Š” Circuit switching ์„ ์‚ฌ์šฉํ•˜์ง€ ์•Š๊ธฐ ๋•Œ๋ฌธ์— ์ƒ๊ธฐ๋Š” ๋ฌธ์ œ๋“ค์ด ์žˆ์—ˆ๋‹ค. 


๋ผ์šฐํ„ฐ์—์„œ ๋ฐœ์ƒํ•˜๋Š” ๋”œ๋ ˆ์ด์™€ ํŒจํ‚ท ๋กœ์Šค๊ฐ€ ์žˆ๋‹ค. ๋”œ๋ ˆ์ด๋Š” ๋ผ์šฐํ„ฐ ์•ˆ์— ๋“ค์–ด๊ฐ”๋‹ค๊ฐ€ ํŒจํ‚ท์ด ๋น ์ ธ๋‚˜์˜ค๋Š” ๊ฒฝ์šฐ ํ์— ๊ฑธ๋ ค์„œ ๋Œ€๊ธฐํ•˜๋Š” ์‹œ๊ฐ„์ด์—ˆ๊ณ  ํŒจํ‚ท ๋กœ์Šค ๊ฐ™์€ ๊ฒฝ์šฐ๋Š” ํ์ž‰ ๋”œ๋ ˆ์ด๊ฐ€ ์•„๋‹Œ ํ ์ž์ฒด๊ฐ€ ๊ฐ€๋“ ์ฐผ๊ธฐ ๋•Œ๋ฌธ์— ํŒจํ‚ท ์œ ์‹ค์ด ๋ฐœ์ƒํ•˜๋Š” ๊ฒƒ์ด๋‹ค. ๊ทธ๋ฆฌ๊ณ  ๋ผ์šฐํ„ฐ์—์„œ ์ง€์—ฐ์ด ๋ฐœ์ƒํ•˜๋Š” ๊ฒฝ์šฐ, ์ด๋Ÿฌํ•œ ๊ฒฝ์šฐ๋Š” ํ•„์—ฐ์ ์ด๋‹ค. 

  • processing delay : ๋ผ์šฐํ„ฐ์— ํŒจํ‚ท์ด ๋“ค์–ด๊ฐ€์„œ ์–ด๋Š ๋ฐฉํ–ฅ์œผ๋กœ ๋‚˜๊ฐˆ์ง€ ๊ฒ€์‚ฌํ•˜๋Š” ์‹œ๊ฐ„ 

  • queueing delay : ๋ฐฉํ–ฅ์„ ๊ฒฐ์ •ํ•˜๊ณ  ํ์— ๋„ฃ๊ณ  ํ์—์„œ ๋Œ€๊ธฐํ•˜๋Š” ์‹œ๊ฐ„

  • transmisstion dalay : ํ์˜ ๊ฐ€์žฅ ์•ž์— ๋‚˜๊ฐ€์„œ ๋งํฌ ๋„˜์–ด๋กœ ๋‚˜๊ฐ€๋Š” ์‹œ๊ฐ„

  • propagation delay : ๋งํฌ๋ฅผ ํƒ€๊ณ  ๋‹ค์Œ ๋ชฉ์ ์ง€, ๋ผ์šฐํ„ฐ๋กœ ๋„๋‹ฌํ•˜๋Š” ์‹œ๊ฐ„ 

HTTP Overview

  • Http ๋Š” request & response ๋‘ ๊ฐœ์˜ ๋ฉ”์„ธ์ง€๊ฐ€ ์กด์žฌํ•˜๋ฉฐ command GET/POST ๋ฐฉ์‹์ด ์กด์žฌํ•œ๋‹ค. ๋˜ํ•œ http ์˜ ํ…Œํฌ๋‹‰์ด๋ผ ๋ถˆ๋ฆฌ์šฐ๋Š” ์›น ์บ์‹œ(์›น ํ”„๋ก์‹œ) ๊ฐ€ ์žˆ๋‹ค. ์›น ์บ์‹œ ํ˜น์€ ์›น ํ”„๋ก์‹œ๊ฐ€ ํด๋ผ์ด์–ธํŠธ์˜ ๊ฐ™์€ ๋„คํŠธ์›Œํฌ ๋กœ์ปฌ์— ์กด์žฌํ•˜์—ฌ ์„œ๋ฒ„๋กœ๋ถ€ํ„ฐ ๋ฆฌ์†Œ์Šค๋ฅผ ์นดํ”ผํ•˜๊ณ  ์žˆ๋‹ค๊ฐ€ ํ•ด๋‹น ์„œ๋ฒ„๋กœ ๋ฆฌ์†Œ์Šค ์š”์ฒญ์„ ํ•˜์ง€ ์•Š๊ธฐ ๋•Œ๋ฌธ์— ์กฐ๊ธˆ ๋” ํšจ์œจ์ ์ด๋‹ค. ํ•˜์ง€๋งŒ ์บ์‹œ๋ฅผ ์‚ฌ์šฉํ•จ์œผ๋กœ์จ ๋ฐœ์ƒํ•˜๋Š” ์ผ๊ด€์„ฑ ๋ฌธ์ œ๊ฐ€ ์กด์žฌํ•˜๊ณ  ์žˆ๋‹ค

์™œ ์›น์บ์‹œ๊ฐ€ ์ข‹์€๊ฒƒ์ธ๊ฐ€?


DNS

  • ๋ธŒ๋ผ์šฐ์ € ์ฐฝ์—์„œ ํ˜ธ์ŠคํŠธ ๋„ค์ž„์„ ์ž…๋ ฅํ–ˆ์„ ๋•Œ ํ•ด๋‹น ํ˜ธ์ŠคํŠธ ๋„ค์ž„๊ณผ ๋งคํ•‘๋˜๋Š” IP ์ฃผ์†Œ๋ฅผ ๋ฐ˜ํ™˜ํ•˜๋Š” ์‹œ์Šคํ…œ์„ ์˜๋ฏธํ•œ๋‹ค.  ๊ณ„์ธตํ™” ๊ทธ๋ฆฌ๊ณ  ๋ถ„์‚ฐํ™” ์‹œ์ผœ๋†“์€ ๊ฒƒ์ด ํ˜„์žฌ์˜ DNS ์‹œ์Šคํ…œ์ด๋‹ค.

UDP & TCP


TCP ํ—ค๋”์˜ ๊ตฌ์กฐ

- ํฌํŠธ ๋ฒˆํ˜ธ๋ฅผ ํ†ตํ•ด์„œ ๋ฉ€ํ‹ฐํ”Œ๋ ‰์‹ฑ & ๋””๋ฉ€ํ‹ฐํ”Œ๋ ‰์‹ฑ

- ์‹œํ€€์Šค ๋ฒˆํ˜ธ๋ฅผ ํ†ตํ•ด์„œ ๋‚ด๊ฐ€ ๋ณด๋‚ด๋Š” ์„ธ๊ทธ๋จผํŠธ์˜ ์ˆœ์„œ๋ฅผ ํŠธ๋ž™ํ‚นํ•˜๋„๋ก

- ACKs ๋ฒˆํ˜ธ๋ฅผ ๋‚ด๊ฐ€ ๋ฐ›๋Š” ์„ธ๊ทธ๋จผํŠธ์˜ ๋ฐ์ดํ„ฐ๋ฅผ ์•Œ์ˆ˜ ์žˆ๋„๋ก

- ๋ฐ์ดํ„ฐ ์†ก์ˆ˜์‹ ์—์„œ ์„ธ๊ทธ๋จผํŠธ ๋ฒˆํ˜ธ๋ฅผ ์•ˆ๋‹ค๋Š” ๊ฒƒ์€ In-Order Delivery ๋ฅผ ๊ฐ€๋Šฅํ•˜๋„๋ก ํ•ด์ค€๋‹ค.

- receive window ๋Š” ๋‚ด ๋ฆฌ์‹œ๋ธŒ ๋ฒ„ํผ๊ฐ€ ์–ด๋Š์ •๋„์˜ ๊ณต๊ฐ„์ด ์žˆ๋Š”์ง€๋ฅผ ์œ„ํ•จ flow - control ์„ ์œ„ํ•จ

- checksum ์€ ์—๋Ÿฌ ๋””ํ…์…˜์„ ์œ„ํ•จ

- ์ค‘๊ฐ„์˜ ํ•œ ๋น„ํŠธ์งœ๋ฆฌ ํ”Œ๋ž˜๊ทธ๊ฐ€ ์กด์žฌํ•œ๋‹ค. ( SYN, FIN, ACK )

- TCP ๋Š” byte ๋‹จ์œ„๋กœ ์‹œํ€€์Šค ๋ฒˆํ˜ธ๊ฐ€ ๋ถ™๋Š”๋‹ค.

- TCP ์˜ ACKs ๋ฒˆํ˜ธ๋Š” Cumulative ACKs ๋กœ์จ ๋‚ด๊ฐ€ ์ž˜ ๋ฐ›์€ ์‹œํ€€์Šค ๋ฒˆํ˜ธ์˜ ๋‹ค์Œ๋ฒˆํ˜ธ๋ฅผ ๋ถ™์ธ๋‹ค.

- ์—ฐ์†ํ•ด์„œ TCP ํŒจํ‚ท์ด ์œ ์‹ค๋œ ๊ฒฝ์šฐ, ํƒ€์ด๋จธ ์‹œ๊ฐ„์ด ๋งŒ๋ฃŒ๋˜๊ณ  

- ๋™์ผํ•œ ACKs์€ ์—ฐ์†ํ•ด์„œ 3๋ฒˆ ๋ฐ›์œผ๋ฉด duplicate ACKs ๋ผ๊ณ  ํ•œ๋‹ค.


TCP ์—์„œ ํŒจํ‚ท์ด ์žฌ์ „์†กํ•˜๋Š” ๊ฒฝ์šฐ,

1) timeout

2) 3 duplicate ACKs


์œˆ๋„์šฐ ๋‚ด๋ถ€์— ์žˆ๋Š” ํŒจํ‚ท๋“ค์€ ๋‹จ์ˆœํžˆ ๋ณด๋‚ธ๋‹ค. ํ•˜์ง€๋งŒ ์žฌ์ „์†กํ•˜๋Š” ๊ฒฝ์šฐ๋Š” ์ •์˜๊ฐ€ ๋˜์–ด์žˆ๊ธฐ ๋•Œ๋ฌธ์— ํ•จ๋ถ€๋กœ ์žฌ์ „์†ก๋˜๋Š” ๊ฒƒ์ด ์•„๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ํŒจํ‚ท์ด ์žฌ์ „์†ก๋˜๋Š” ํƒ€๋‹นํ•œ ๊ทผ๊ฑฐ(timeout / 3 duplicate ACKs)๊ฐ€ ๋งˆ๋ จ๋˜๊ณ  ์žฌ์ „์†กํ•˜๊ณ  ์„ผ๋” ์ธก์—์„œ In-Order Delivery ์— ๋”ฐ๋ผ ์ˆœ์„œ์— ๋งž๊ฒŒ ๋ฐ›์€ ํŒจํ‚ท๋“ค์„ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ณ„์ธต์œผ๋กœ ์˜ฌ๋ฆฐ๋‹ค. 


์ด ๋ถ€๋ถ„์— ๋Œ€ํ•ด์„œ ์—ฌ๋Ÿฌ ์‹œ๋‚˜๋ฆฌ์˜ค๋ฅผ ๊ฐ€์ •ํ•˜์—ฌ์„œ ๊ณต๋ถ€ํ•ด์•ผํ•œ๋‹ค.


new transmission : ์œˆ๋„์šฐ ๊ณต๊ฐ„์ด ๋ฐ€๋ ค์„œ ์ƒˆ๋กœ์šด ๋ฐ์ดํ„ฐ๊ฐ€ ๋ฐ”๋กœ ์ „์†กํ•˜๋Š” ๊ฒฝ์šฐ

re transmisstion : ํƒ€๋‹นํ•œ ๊ทผ๊ฑฐ์— ๋”ฐ๋ผ์„œ ์žฌ ์ „์†ก๋˜๋Š” ๊ฒฝ์šฐ๋ฅผ ์˜๋ฏธํ•œ๋‹ค. 

๋‘ ๊ฐœ๋Š” ์ „ํ˜€ ๋‹ค๋ฅธ ์˜๋ฏธ๋ฅผ ์ง€๋‹ˆ๊ณ  ์žˆ๋‹ค.


๋ฆฌ์‹œ๋ฒ„์˜ ์•ก์…˜ ์ค‘์—์„œ Delayed ACKs

์›๋ž˜ ๋ฆฌ์‹œ๋ฒ„๋Š” ์„ธ๊ทธ๋จผํŠธ๋ฅผ ๋ฐ›๊ณ  ํ•ด๋‹น ์„ธ๊ทธ๋จผํŠธ์— ์ดํ›„์˜ ACKs ๋ฅผ ๋ณด๋‚ด์•ผ ํ•œ๋‹ค. ํ•˜์ง€๋งŒ ACKs ์ž์ฒด๋ฅผ ๋ฐ”๋กœ ๋ณด๋‚ด์ง€ ์•Š๊ณ  ์ž ์‹œ ๊ธฐ๋‹ค๋ ธ๋‹ค๊ฐ€ Delayed ACKs๋ฅผ ๋ณด๋‚ธ๋‹ค.


์œˆ๋„์šฐ ์ด๋™ํ•˜๋Š” ๊ฒƒ์— ๋Œ€ํ•œ ๊ฐœ๋…

์œˆ๋„์šฐ ์ด๋™ํ•œ ์ดํ›„์— ์ผ์–ด๋‚˜๋Š” ๊ฒƒ

ACKs ๊ฐ€ ๋“ค์–ด์™”๊ณ  ํ•ด๋‹น ACKs ๋Š” ์ƒˆ๋กœ์šด ACKs ์ด๋‹ค. ๊ทธ๋Ÿผ ์œˆ๋„์šฐ ์‚ฌ์ด์ฆˆ๋ฅผ ํ•ด๋‹น ACKs ๋งŒํผ ์˜ฎ๊ธด๋‹ค.

(1) ํƒ€์ด๋จธ๋ฅผ ๋„๊ณ  ์ƒˆ๋กญ๊ฒŒ ์„ธํŒ…

(2) new transmission ์„ ์‹ค์‹œํ•œ๋‹ค.


flow control

congestion control


[ ์ฐธ๊ณ ๋™์˜์ƒ ]


[ ์ปดํ“จํ„ฐ ๋„คํŠธ์›Œํฌ ]

Posted by doubler
,