Open shpark0308 opened 2 years ago
โ ํน์ง : ์ ๋ขฐ์ฑ | ์ฐ๊ฒฐ์งํฅ์ฑ | ํ๋ฆ์ ์ด, ํผํฉ์ ์ด | UDP๋ณด๋ค ๋๋ฆฌ๋ค | ์ ์ด์ค, ์ ๋์
1๏ธโฃ ์ ๋ขฐ์ฑ / ์ ์ด์ค, ์ ๋์
2๏ธโฃ ์ฐ๊ฒฐ์ฑ โ 3-way handshake - ์ฐ๊ฒฐ์ ์ฑ๋ฆฝํ๋ ๊ณผ์ 1. ํด๋ผ์ด์ธํธ๊ฐ ์๋ฒ์๊ฒ Syn(x) ํจํท ์ ํตํด ์ฐ๊ฒฐ ์์ฒญ์ ํ๋ค 2. ์๋ฒ๋ Syn(x) ํจํท์ ๋ฐ์๋ค๋ Ack(x+1) ์ ํธ์ Syn(y) ํจํท์ ๋ณด๋ธ๋ค 3. ํด๋ผ์ด์ธํธ๋ ์๋ฒ๊ฐ ๋ณด๋ธ Syn(y) ๋ฅผ ๋ฐ์๋ค๋ Ack(y+1)์ ๋ค์ ๋ณด๋ธ๋ค โ ์ด๋ ๊ฒ 3๋ฒ์ ํต์ ์ผ๋ก ํด๋ผ์ด์ธํธ์ ์๋ฒ๋ ์ฐ๊ฒฐ์ด ์ฑ๋ฆฝ๋๋ค โ 4-way handshake - ์ฐ๊ฒฐ์ ํด์ ํ๋ ๊ณผ์ 1. ํด๋ผ์ด์ธํธ๊ฐ ์๋ฒ์๊ฒ Fin ํ๋๊ทธ๋ฅผ ํตํด ์ฐ๊ฒฐ ํด์ฒด ์์ฒญ์ ํ๋ค. 2. ์๋ฒ๋ Fin์ ๋ฐ๊ณ ์์๋ค๋ Ack ํ๋๊ทธ๋ฅผ ์ ๋ฌํ๋ค. 3. ์๋ฒ๋ ๋ฐ์ดํฐ๋ฅผ ๋ชจ๋ ๋ณด๋ด๋ฉด Fin ํ๋๊ทธ๋ฅผ ํด๋ผ์ด์ธํธ์๊ฒ ์ ๋ฌํ๋ค. 4. ํด๋ผ์ด์ธํธ๋ ์๋ฒ๊ฐ ๋ณด๋ธ Fin์ ๋ฐ๊ณ ํ์ธํ๋ค๋ Ack๋ฅผ ์๋ฒ์๊ฒ ์ ๊ณตํ๋ค. * ์ดํ, ํด๋ผ์ด์ธํธ์ ์๋ฒ๋ ์์ผ์ ๋ซ๋๋ค โ ์ด๋ ๊ฒ 4๋ฒ์ ํต์ ์ผ๋ก ํด๋ผ์ด์ธํธ์ ์๋ฒ๋ ์ฐ๊ฒฐ ํด์ ํ๋ค.
3๏ธโฃ ํ๋ฆ์ ์ด, ํผ์ก์ ์ด โ ํ๋ฆ ์ ์ด - ์ก์ ์ธก๊ณผ ์์ ์ธก์ ๋ฐ์ดํฐ ์ฒ๋ฆฌ ์๋ ์ฐจ์ด๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํ ๋ฐฉ๋ฒ 1. Flow control : receiver๊ฐ ํจํท์ ์ง๋์น๊ฒ ๋ง์ด ๋ฐ์ง ์๋๋ก ํจ 2. ๊ธฐ๋ณธ ๊ฐ๋ ์ receiver๊ฐ sender์๊ฒ ์์ ์ ํ์ฌ ์ํ๋ฅผ feedback ํจ โ ํผ์ก ์ ์ด - ์ก์ ์ธก์ ๋ฐ์ดํฐ ์ฒ๋ฆฌ์ ๋คํธ์ํฌ ๋ฐ์ดํฐ ์ฒ๋ฆฌ ์๋๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํ ๋ฐฉ๋ฒ
โ ํน์ง : ๋น์ ๋ขฐ์ฑ | ๋น์ฐ๊ฒฐ์ฑ | ์ค์๊ฐ, ์ ์์ฑ | DNS ์ฌ์ฉ
โถ ๋์นญํค
โถ ๋น๋์นญํค : ( ๊ณต๊ฐํค, ๋น๋ฐํค )
โ SSL ( ๋์นญํค + ๋น๋์นญํค ( ๊ณต๊ฐํค, ๋น๋ฐํค ) ์ ํผํฉ
โถHTTP
โถHTTPS ( Secure )
โ HTTPS ํต์ ํ๋ฆ
โพ1. ํด๋ผ์ด์ธํธ๋ ์๋ฒ์๊ฒ [ ๋ฉ์ธ์ง( client hello ) | ์ํธํ ๋ ์ ๋ณด( ํ๋กํ ์ฝ ๋ฒ์ , ์ํธ ์๊ณ ๋ฆฌ์ฆ, ์์ถ ๋ฐฉ์ ) ] ์ ๋ฌํ๋ค. โพ2. ์๋ฒ๋ ํด๋ผ์ด์ธํธ๋ก๋ถํฐ ์ํธํ ์๊ณ ๋ฆฌ์ฆ๊ณผ ์์ถ ๋ฐฉ์์ ๋ฐ๊ฒ ๋๋ค. ๊ทธ๋ฐ ํ ์๋ฒ๋ [ ๋ฉ์ธ์ง ( server hello ) | ์ธ์ ID | CA ๊ณต๊ฐ ์ธ์ฆ์ ]๋ฅผ ํด๋ผ์ด์ธํธ์๊ฒ ์ ๋ฌํ๋ค. CA ๊ณต๊ฐ ์ธ์ฆ์ : ์์ผ๋ก ํต์ ์ดํ ๋์นญํค ์์ฑ ์ด์ ๊น์ง, ํด๋ผ์ด์ธํธ์์ handshake ๊ณผ์ ์ ์ํธํ์ ์ฌ์ฉํ ๊ณต๊ฐํค๋ฅผ ๊ฐ์ง๊ณ ์๋ค. โพ3. ํด๋ผ์ด์ธํธ๋ ์๋ฒ๋ก๋ถํฐ ๋ฐ์ CA ๊ณต๊ฐ ์ธ์ฆ์์ ๋ํด ์ ํจํ์ง CA ๊ธฐ์ ๋ชฉ๋ก์์ ํ์ธํ๋ ๊ณผ์ ์ ์งํํ๋ค. โพ4. CA ๊ณต๊ฐ ์ธ์ฆ์์ ์ ๋ขฐ์ฑ์ ํ๋ณดํ์๋ค๋ฉด, ํด๋ผ์ด์ธํธ๋ ์๋ฒ์๊ฒ [ ๋์ ๋ฐ์ดํธ ]( ์๋ฒ ๊ณต๊ฐํค )๋ก ์ํธํ ํ์ฌ ์ ๋ฌํ๋ค. ๋์ ๋ฐ์ดํธ : (1). ๋์นญํค๋ฅผ ์ ํ๋๋ฐ ์ฌ์ฉํ๋ค. (2). ์์ผ๋ก ์๋ก ํต์ ํ ๋ ๋ฉ์ธ์ง๋ฅผ ์ํธํํ๋๋ฐ ์ฌ์ฉ๋๋ค. โพ5. 2๋ฒ ๊ณผ์ ์์ ์๋ฒ๊ฐ ํด๋ผ์ด์ธํธ์๊ฒ ์ธ์ฆ์๋ฅผ ์์ฒญํ ๊ฒฝ์ฐ, ํด๋ผ์ด์ธํธ๋ [ ์ธ์ฆ์ | ์์์ ๋ฐ์ดํธ ๋ฌธ์์ด ( ํด๋ผ์ด์ธํธ ๊ฐ์ธํค ) ]๋ก ์ํธํ ํ๊ฒ๊ณผ ํจ๊ป ๋ณด๋ธ๋ค โพ6. ์๋ฒ๋ ํด๋ผ์ด์ธํธ๊ฐ ๋ณด๋ธ ์ธ์ฆ์๋ฅผ ํ์ธํ๊ณ ( ๋์ ๋ฐ์ดํธ )๋ฅผ ์์ ์ ๊ฐ์ธํค๋ก ๋ณตํธํ ํ์ฌ ๋์นญ ๋ง์คํฐ ํค๋ฅผ ์์ฑํ๋ค. โพ7. ํด๋ผ์ด์ธํธ๋ handshake ๊ณผ์ ์ด ๋๋ฌ๋ค๋ [ finish ๋ฉ์ธ์ง | [( ํด์ฑ )(์์ ์ด ์ง๊ธ๊น์ง ๋ณด๋๋ ํจํท ๋ด์ญ )][ ๋์นญํค ] ]๋ก ์ํธํ ํ์ฌ ์๋ฒ์๊ฒ ์ ๋ฌํ๋ค. โพ8. ์๋ฒ๋ ๋์ผํ๊ฒ ์์ ์ด ์ง๊ธ๊น์ง ๋ณด๋ธ ํจํท ๋ด์ญ์ ํด์ฑํ์ฌ ํด๋ผ์ด์ธํธ๊ฐ ๋ณด๋ธ ๊ฐ๊ณผ ์ผ์นํ๋์ง ํ์ธํ๋ค. ์ผ์นํ๋ฉด ์๋ฒ๋ [ finish ๋ฉ์ธ์ง ]( ์์ ์ ๋ง๋ ๋์นญํค )๋ก ์ํธํ ํ์ฌ ํด๋ผ์ด์ธํธ์๊ฒ ์ ๋ฌํ๋ค. โพ9. ํด๋ผ์ด์ธํธ๋ ํด๋น ๋ฉ์ธ์ง๋ฅผ ๋์นญํค๋ก ๋ณตํธํํ์ฌ โ ์๋ก ํต์ ์ด ๊ฐ๋ฅํ ์ ๋ขฐํ ์ ์๋ ์๋๋ผ๋ ๊ฒ์ ์ธ์งํ๊ณ ์์ผ๋ก ( ํด๋ผ์ด์ธํธ์ ์๋ฒ )๋ ์ด ๋์นญํค๋ก ๋ฐ์ดํฐ๋ฅผ ์ํธํ ํ์ฌ ์๋ก ํต์ ํ๋ค.
0๏ธโฃ. Load Balancer ๊ฐ ํ์ํ ์ด์ โ ์ Load Balancer ?
โ Load Balancer๊ฐ Server๋ฅผ ์ ํํ๋ ๊ธฐ์ค
1๏ธโฃ. Blocing & Non-Blocking
2๏ธโฃ. Synchronous & Asynchronous
[3]. ๋คํธ์ํฌ
1. OSI 7 ๊ณ์ธต ( open system interconnection )
โ ๋ผ์ฐํฐ : ์ด๋ํ ๊ฒฝ๋ก๋ฅผ ์ ํํ์ฌ IP๋ฅผ ์ง์ ํ๊ณ ํด๋น ๊ฒฝ๋ก๋ก ํจํท์ ์ ๋ฌํด์ค๋ค.
โ ํจํท : ์ ๋ณด๋ฅผ ์ ๋ฌํ๋ ๋ผ์ฐํ ๊ณผ์ ์์ ๋ฐ์ดํฐ๋ฅผ ์กฐ๊ฐ์ผ๋ก ์ชผ๊ฐ์ ํจ์จ์ ์ผ๋ก ์ ๋ฌํ๋ ๊ณผ์ , ์ด ๊ณผ์ ์์ <์กฐ๊ฐ>์ด ํจํท์ ํด๋นํ๋ค.
โถ TCP : ์ ๋ขฐ์ฑ | ์ฐ๊ฒฐ์งํฅ์ฑ | ํผํฉ์ ์ด, ํ๋ฆ์ ์ด | UDP ๋ณด๋ค ๋๋ฆฌ๋ค | ์ ์ด์ค, ์ ๋์
โถ UDP : ๋น์ ๋ขฐ์ฑ | ๋น์ฐ๊ฒฐ์งํฅ์ฑ | ์ค์๊ฐ, ์ ์์ฑ | DNS ์ฌ์ฉ
2. TCP ( = Transmission control Protocl )
โ ํน์ง : ์ ๋ขฐ์ฑ | ์ฐ๊ฒฐ์งํฅ์ฑ | ํ๋ฆ์ ์ด, ํผํฉ์ ์ด | UDP๋ณด๋ค ๋๋ฆฌ๋ค | ์ ์ด์ค, ์ ๋์
1๏ธโฃ ์ ๋ขฐ์ฑ / ์ ์ด์ค, ์ ๋์
2๏ธโฃ ์ฐ๊ฒฐ์ฑ โ 3-way handshake
- ์ฐ๊ฒฐ์ ์ฑ๋ฆฝํ๋ ๊ณผ์ 1. ํด๋ผ์ด์ธํธ๊ฐ ์๋ฒ์๊ฒ Syn(x) ํจํท ์ ํตํด ์ฐ๊ฒฐ ์์ฒญ์ ํ๋ค 2. ์๋ฒ๋ Syn(x) ํจํท์ ๋ฐ์๋ค๋ Ack(x+1) ์ ํธ์ Syn(y) ํจํท์ ๋ณด๋ธ๋ค 3. ํด๋ผ์ด์ธํธ๋ ์๋ฒ๊ฐ ๋ณด๋ธ Syn(y) ๋ฅผ ๋ฐ์๋ค๋ Ack(y+1)์ ๋ค์ ๋ณด๋ธ๋ค
โ ์ด๋ ๊ฒ 3๋ฒ์ ํต์ ์ผ๋ก ํด๋ผ์ด์ธํธ์ ์๋ฒ๋ ์ฐ๊ฒฐ์ด ์ฑ๋ฆฝ๋๋ค
โ 4-way handshake
- ์ฐ๊ฒฐ์ ํด์ ํ๋ ๊ณผ์ 1. ํด๋ผ์ด์ธํธ๊ฐ ์๋ฒ์๊ฒ Fin ํ๋๊ทธ๋ฅผ ํตํด ์ฐ๊ฒฐ ํด์ฒด ์์ฒญ์ ํ๋ค. 2. ์๋ฒ๋ Fin์ ๋ฐ๊ณ ์์๋ค๋ Ack ํ๋๊ทธ๋ฅผ ์ ๋ฌํ๋ค. 3. ์๋ฒ๋ ๋ฐ์ดํฐ๋ฅผ ๋ชจ๋ ๋ณด๋ด๋ฉด Fin ํ๋๊ทธ๋ฅผ ํด๋ผ์ด์ธํธ์๊ฒ ์ ๋ฌํ๋ค. 4. ํด๋ผ์ด์ธํธ๋ ์๋ฒ๊ฐ ๋ณด๋ธ Fin์ ๋ฐ๊ณ ํ์ธํ๋ค๋ Ack๋ฅผ ์๋ฒ์๊ฒ ์ ๊ณตํ๋ค. * ์ดํ, ํด๋ผ์ด์ธํธ์ ์๋ฒ๋ ์์ผ์ ๋ซ๋๋ค
โ ์ด๋ ๊ฒ 4๋ฒ์ ํต์ ์ผ๋ก ํด๋ผ์ด์ธํธ์ ์๋ฒ๋ ์ฐ๊ฒฐ ํด์ ํ๋ค.
3๏ธโฃ ํ๋ฆ์ ์ด, ํผ์ก์ ์ด โ ํ๋ฆ ์ ์ด - ์ก์ ์ธก๊ณผ ์์ ์ธก์ ๋ฐ์ดํฐ ์ฒ๋ฆฌ ์๋ ์ฐจ์ด๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํ ๋ฐฉ๋ฒ 1. Flow control : receiver๊ฐ ํจํท์ ์ง๋์น๊ฒ ๋ง์ด ๋ฐ์ง ์๋๋ก ํจ 2. ๊ธฐ๋ณธ ๊ฐ๋ ์ receiver๊ฐ sender์๊ฒ ์์ ์ ํ์ฌ ์ํ๋ฅผ feedback ํจ โ ํผ์ก ์ ์ด - ์ก์ ์ธก์ ๋ฐ์ดํฐ ์ฒ๋ฆฌ์ ๋คํธ์ํฌ ๋ฐ์ดํฐ ์ฒ๋ฆฌ ์๋๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํ ๋ฐฉ๋ฒ
3. UDP ( user datagram protocal )
โ ํน์ง : ๋น์ ๋ขฐ์ฑ | ๋น์ฐ๊ฒฐ์ฑ | ์ค์๊ฐ, ์ ์์ฑ | DNS ์ฌ์ฉ
1๏ธโฃ DNS ( domain name server ) - UDP ์ฌ์ฉ - request ์์ด ์ ์ด UDP request์ ์ ๋ถ ๋ค ๋ด์ ์ ์๋ค. - request์ ๋ํ ์์ค์ application layer์์ ์ ์ด๊ฐ ๊ฐ๋ฅํ๋ค. - DNS ํฌํธ ๋ฒํธ : 53๋ฒ
๐TCP์ UDP ๋น๊ต
4. ๋์นญํค์ ๊ณต๊ฐํค
โถ ๋์นญํค
โถ ๋น๋์นญํค : ( ๊ณต๊ฐํค, ๋น๋ฐํค )
โ SSL ( ๋์นญํค + ๋น๋์นญํค ( ๊ณต๊ฐํค, ๋น๋ฐํค ) ์ ํผํฉ
5. HTTP / HTTPS
โถHTTP
โถHTTPS ( Secure )
โ HTTPS ํต์ ํ๋ฆ
์ํธํ ํ์ฌ A ์๋ฒ์๊ฒ ์ ๋ฌํ๋ค.
๋ค์ด์ค๋ฉด ์ด ์ธ์ฆ์๋ฅผ ํด๋ผ์ด์ธํธ์๊ฒ ์ ๋ฌํ๋ค.
[ A ์๋ฒ ์ ๋ณด ] ( CA ๊ธฐ์ ์ ๊ฐ์ธํค )๋ก ์ํธํ ํ ์ธ์ฆ์๋ฅผ ๋ฐ๋๋ค
5-1. CA ๊ธฐ์ ์ ๊ณต๊ฐํค๋ ๋ธ๋ผ์ฐ์ ์ ๊ณต๊ฐ๋์ด ์๊ธฐ ๋๋ฌธ์ ๋ธ๋ผ์ฐ์ ๋ ํด๋ ํํ A ์๋ฒ์ ๊ณต๊ฐํค๋ฅผ ์ป๊ฒ ๋๋ค.
6. TLS( Transport Layer Security ) / SSL( Secure Sockets Layer) Handshake
โถ TLS / SSL ํด๋ผ์ด์ธํธ์ ์๋ฒ๊ฐ ํต์ ํ๋ ๋จ๊ณ
- TLS ๋๋ SSL๋ ๊ณต์ ํค๋ฅผ ์ฌ์ฉํ์ฌ ๋ฉ์ธ์ง๋ฅผ ๋์นญํค ์ํธํ ๋ฐฉ์์ผ๋ก ์ํธํ ํ๋ค.
โถ TLS / SSL HandShake
โพ1. ํด๋ผ์ด์ธํธ๋ ์๋ฒ์๊ฒ [ ๋ฉ์ธ์ง( client hello ) | ์ํธํ ๋ ์ ๋ณด( ํ๋กํ ์ฝ ๋ฒ์ , ์ํธ ์๊ณ ๋ฆฌ์ฆ, ์์ถ ๋ฐฉ์ ) ] ์ ๋ฌํ๋ค. โพ2. ์๋ฒ๋ ํด๋ผ์ด์ธํธ๋ก๋ถํฐ ์ํธํ ์๊ณ ๋ฆฌ์ฆ๊ณผ ์์ถ ๋ฐฉ์์ ๋ฐ๊ฒ ๋๋ค. ๊ทธ๋ฐ ํ ์๋ฒ๋ [ ๋ฉ์ธ์ง ( server hello ) | ์ธ์ ID | CA ๊ณต๊ฐ ์ธ์ฆ์ ]๋ฅผ ํด๋ผ์ด์ธํธ์๊ฒ ์ ๋ฌํ๋ค.
CA ๊ณต๊ฐ ์ธ์ฆ์ : ์์ผ๋ก ํต์ ์ดํ ๋์นญํค ์์ฑ ์ด์ ๊น์ง, ํด๋ผ์ด์ธํธ์์ handshake ๊ณผ์ ์ ์ํธํ์ ์ฌ์ฉํ ๊ณต๊ฐํค๋ฅผ ๊ฐ์ง๊ณ ์๋ค.
โพ3. ํด๋ผ์ด์ธํธ๋ ์๋ฒ๋ก๋ถํฐ ๋ฐ์ CA ๊ณต๊ฐ ์ธ์ฆ์์ ๋ํด ์ ํจํ์ง CA ๊ธฐ์ ๋ชฉ๋ก์์ ํ์ธํ๋ ๊ณผ์ ์ ์งํํ๋ค.
โพ4. CA ๊ณต๊ฐ ์ธ์ฆ์์ ์ ๋ขฐ์ฑ์ ํ๋ณดํ์๋ค๋ฉด, ํด๋ผ์ด์ธํธ๋ ์๋ฒ์๊ฒ [ ๋์ ๋ฐ์ดํธ ]( ์๋ฒ ๊ณต๊ฐํค )๋ก ์ํธํ ํ์ฌ ์ ๋ฌํ๋ค.
๋์ ๋ฐ์ดํธ : (1). ๋์นญํค๋ฅผ ์ ํ๋๋ฐ ์ฌ์ฉํ๋ค. (2). ์์ผ๋ก ์๋ก ํต์ ํ ๋ ๋ฉ์ธ์ง๋ฅผ ์ํธํํ๋๋ฐ ์ฌ์ฉ๋๋ค.
โพ5. 2๋ฒ ๊ณผ์ ์์ ์๋ฒ๊ฐ ํด๋ผ์ด์ธํธ์๊ฒ ์ธ์ฆ์๋ฅผ ์์ฒญํ ๊ฒฝ์ฐ,
ํด๋ผ์ด์ธํธ๋ [ ์ธ์ฆ์ | ์์์ ๋ฐ์ดํธ ๋ฌธ์์ด ( ํด๋ผ์ด์ธํธ ๊ฐ์ธํค ) ]๋ก ์ํธํ ํ๊ฒ๊ณผ ํจ๊ป ๋ณด๋ธ๋ค
โพ6. ์๋ฒ๋ ํด๋ผ์ด์ธํธ๊ฐ ๋ณด๋ธ ์ธ์ฆ์๋ฅผ ํ์ธํ๊ณ ( ๋์ ๋ฐ์ดํธ )๋ฅผ ์์ ์ ๊ฐ์ธํค๋ก ๋ณตํธํ ํ์ฌ ๋์นญ ๋ง์คํฐ ํค๋ฅผ ์์ฑํ๋ค.
โพ7. ํด๋ผ์ด์ธํธ๋ handshake ๊ณผ์ ์ด ๋๋ฌ๋ค๋
[ finish ๋ฉ์ธ์ง | [( ํด์ฑ )(์์ ์ด ์ง๊ธ๊น์ง ๋ณด๋๋ ํจํท ๋ด์ญ )][ ๋์นญํค ] ]๋ก ์ํธํ ํ์ฌ ์๋ฒ์๊ฒ ์ ๋ฌํ๋ค.
โพ8. ์๋ฒ๋ ๋์ผํ๊ฒ ์์ ์ด ์ง๊ธ๊น์ง ๋ณด๋ธ ํจํท ๋ด์ญ์ ํด์ฑํ์ฌ ํด๋ผ์ด์ธํธ๊ฐ ๋ณด๋ธ ๊ฐ๊ณผ ์ผ์นํ๋์ง ํ์ธํ๋ค.
์ผ์นํ๋ฉด ์๋ฒ๋ [ finish ๋ฉ์ธ์ง ]( ์์ ์ ๋ง๋ ๋์นญํค )๋ก ์ํธํ ํ์ฌ ํด๋ผ์ด์ธํธ์๊ฒ ์ ๋ฌํ๋ค.
โพ9. ํด๋ผ์ด์ธํธ๋ ํด๋น ๋ฉ์ธ์ง๋ฅผ ๋์นญํค๋ก ๋ณตํธํํ์ฌ
โ ์๋ก ํต์ ์ด ๊ฐ๋ฅํ ์ ๋ขฐํ ์ ์๋ ์๋๋ผ๋ ๊ฒ์ ์ธ์งํ๊ณ ์์ผ๋ก ( ํด๋ผ์ด์ธํธ์ ์๋ฒ )๋ ์ด ๋์นญํค๋ก ๋ฐ์ดํฐ๋ฅผ ์ํธํ ํ์ฌ ์๋ก ํต์ ํ๋ค.
7. ๋ก๋ ๋ฐธ๋ฐ์ฑ ( Load Balancing )
0๏ธโฃ. Load Balancer ๊ฐ ํ์ํ ์ด์ โ ์ Load Balancer ?
โ ํด๊ฒฐ : Scale up / Scale out
โพ ์ฅ์ : ํ๋์จ์ด ์ฑ๋ฅ์ ํฅ์์ํค๋ ๋ฐฉ๋ฒ๋ณด๋ค ์๋ฒ 1๋๋ฅผ ์ถ๊ฐํ๋ ๋น์ฉ์ด ๋ ์ ๋ ดํ๋ค
์ฌ๋ฌ๋์ ์๋ฒ ๋๋ถ์ ๋ฌด์ค๋จ ์๋น์ค๋ฅผ ์ ๊ณตํ ์ ์๋ค.
1๏ธโฃ. Load Balancer
โ ์ฃผ์ ๊ธฐ๋ฅ
์ ๋ฌํ์ฌ ๋คํธ์ํฌ ์ค์์น๋ฅผ ๊ฑฐ์น์ง ์๊ณ ๋ฐ๋ก ํด๋ผ์ด์ธํธ๋ฅผ ์ฐพ์๊ฐ ์ ์๋๋ก ํ๋ ๊ฐ๋
โ ๊ตฌ์กฐ
โ Load Balancer๊ฐ Server๋ฅผ ์ ํํ๋ ๊ธฐ์ค
โ Load Balancer ์ฅ์ ๋๋น
8. Blocking & Non-Blocking ๊ทธ๋ฆฌ๊ณ Synchronous & Asynchronous
1๏ธโฃ. Blocing & Non-Blocking
โBlocking : ํจ์ B๋ ์์ ์ ํ ์ผ์ ๋ง์น ๋๊น์ง ์ ์ด๊ถ์ ๊ฐ์ง๊ณ ์๋๋ค. ํจ์ A๋ B๊ฐ ๋ค ๋ง์น ๋๊น์ง ๊ธฐ๋ค๋ฆฐ๋ค.
โNon - Blocking : ํจ์ B๋ ์์ ์ ํ ์ผ์ ๋ง์น์ง ์์๋ ํจ์ A์๊ฒ ๋ฐ๋ก ์ ์ด๊ถ์ ๋๊ฒจ์ค๋ค. ํจ์ A๋ ํจ์ B๋ฅผ ๊ธฐ๋ค๋ฆฌ๋ฉด์ ๋ค๋ฅธ์ผ์ ํ ์ ์๋ค.
2๏ธโฃ. Synchronous & Asynchronous
โ Synchronous : ํจ์ A๋ ํจ์ B๊ฐ ์ผ์ ํ๋ ์ค์ ๊ธฐ๋ค๋ฆฌ๋ฉด์, B์ ์ํ๋ฅผ ์ฒดํฌํ๋ค.