๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
ComputerScience ๐Ÿ“š/์ปดํ“จํ„ฐ๋„คํŠธ์›Œํฌ

[๋„คํŠธ์›Œํฌ] ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ณ„์ธต(1) - ํด๋ผ์ด์–ธํŠธ&์„œ๋ฒ„์™€ p2p

by dkswnkk 2022. 4. 13.

 

์„œ๋ก 

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ตฌ์กฐ(application architecture)๋Š” ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ฐœ๋ฐœ์ž์— ์˜ํ•ด ์„ค๊ณ„ ๋˜๊ณ  ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ๋‹ค์–‘ํ•œ ์ข…๋‹จ ์‹œ์Šคํ…œ์—์„œ ์–ด๋–ป๊ฒŒ ์กฐ์ง๋˜์–ด์•ผ ํ•˜๋Š”์ง€๋ฅผ ์ง€์‹œํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ตฌ์กฐ ์„ ํƒ์— ์žˆ์–ด์„œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ฐœ๋ฐœ์ž๋Š” ํ˜„๋Œ€ ๋„คํŠธ์›Œํฌ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์— ์‚ฌ์šฉ๋˜๋Š” ์•„๋ž˜์˜ ๋‘ ๊ฐ€์ง€ ์šฐ์ˆ˜ํ•œ ๊ตฌ์กฐ๋ฅผ ์„ ์ •ํ•˜์—ฌ ์ž‘์„ฑํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

  • ํด๋ผ์ด์–ธํŠธ - ์„œ๋ฒ„ ๊ตฌ์กฐ(client-server architecture)
  • P2P(peer-to-peer)๊ตฌ์กฐ

์ด๋ฒˆ ๊ฒŒ์‹œ๊ธ€์—์„œ๋Š” ํด๋ผ์ด์–ธํŠธ - ์„œ๋ฒ„ ๊ตฌ์กฐ์™€ P2P๊ตฌ์กฐ์— ๋Œ€ํ•ด ํ•œ๋ฒˆ ์ •๋ฆฌํ•ด ๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.

 

ํด๋ผ์ด์–ธํŠธ - ์„œ๋ฒ„ ๊ตฌ์กฐ(client - server architecture)

์šฐ๋ฆฌ๊ฐ€ ํ”ํžˆ ์•„๋Š” ๊ตฌ์กฐ๊ฐ€  ํด๋ผ์ด์–ธํŠธ - ์„œ๋ฒ„ ๊ตฌ์กฐ ์ž…๋‹ˆ๋‹ค. ํ•ญ์ƒ ์ผœ์ ธ ์žˆ๋Š” ํ˜ธ์ŠคํŠธ๋ฅผ ์„œ๋ฒ„(server)๋ผ๊ณ  ๋ถ€๋ฅด๋ฉฐ, ์ด ์„œ๋ฒ„๋Š” ํด๋ผ์ด์–ธํŠธ(client)๋ผ๋Š” ๋‹ค๋ฅธ ๋งŽ์€ ํ˜ธ์ŠคํŠธ์˜ ์š”์ฒญ์„ ๋ฐ›์Šต๋‹ˆ๋‹ค.

  • ํด๋ผ์ด์–ธํŠธ - ์„œ๋ฒ„ ๊ตฌ์กฐ์—์„œ ํด๋ผ์ด์–ธํŠธ๋Š” ์„œ๋กœ ์ง์ ‘์ ์œผ๋กœ ํ†ต์‹ ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.
  • ์˜ˆ๋ฅผ ๋“ค์–ด, ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์—์„œ๋Š” 2๊ฐœ์˜ ๋ธŒ๋ผ์šฐ์ €๊ฐ€ ์ง์ ‘์ ์œผ๋กœ ํ†ต์‹ ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.
  • ๋˜ํ•œ ํด๋ผ์ด์–ธํŠธ - ์„œ๋ฒ„ ๊ตฌ์กฐ์˜ ํŠน์ง•์€ ์„œ๋ฒ„๊ฐ€ ๊ณ ์ • IP ์ฃผ์†Œ๋ผ๋Š” ์ž˜ ์•Œ๋ ค์ง„ ์ฃผ์†Œ๋ฅผ ๊ฐ–๋Š”๋‹ค๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.
  • ์„œ๋ฒ„๋Š” ํ•ญ์ƒ ๋™์ž‘ํ•˜๋ฏ€๋กœ ํด๋ผ์ด์–ธํŠธ๋Š” ์„œ๋ฒ„ ์ฃผ์†Œ๋กœ ํŒจํ‚ท์„ ๋ณด๋‚ด์„œ ํ•ญ์ƒ ์„œ๋ฒ„์— ์—ฐ๊ฒฐํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ํด๋ผ์ด์–ธํŠธ - ์„œ๋ฒ„ ๊ตฌ์กฐ์˜ ์ž˜ ์•Œ๋ ค์ง„ ์˜ˆ๋Š” ์›น, ํŒŒ์ผ ์ „์†ก, ์›๊ฒฉ ๋กœ๊ทธ์ธ, ์ „์ž๋ฉ”์ผ ๋“ฑ์ด ์žˆ์Šต๋‹ˆ๋‹ค.

ํด๋ผ์ด์–ธํŠธ - ์„œ๋ฒ„ ๊ตฌ์กฐ

 

P2P(peer-to-peer) ๊ตฌ์กฐ

P2P ๊ตฌ์กฐ์—์„œ๋Š” ํ•ญ์ƒ ์ผœ์ ธ ์žˆ๋Š” ์„œ๋ฒ„์— ์ตœ์†Œ๋กœ ์˜์กดํ•ฉ๋‹ˆ๋‹ค(๋˜๋Š” ์•„์˜ˆ ์˜์กดํ•˜์ง€ ์•Š์Œ). ๋Œ€์‹ ์— ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ํ”ผ์–ด(peer)๋ผ๋Š” ๊ฐ„ํ—์ ์œผ๋กœ ์—ฐ๊ฒฐ๋œ ํ˜ธ์ŠคํŠธ ์Œ์ด ์„œ๋กœ ์ง์ ‘ ํ†ต์‹ ํ•˜๋„๋ก ํ•ฉ๋‹ˆ๋‹ค. ์—ฌ๊ธฐ์„œ ํ”ผ์–ด๋Š” ์„œ๋น„์Šค ์ œ๊ณต์ž(service provoder)๊ฐ€ ์†Œ์œ ํ•˜์ง€ ์•Š๊ณ , ์‚ฌ์šฉ์ž๋“ค์ด ์ œ์–ดํ•˜๋Š” ๋ฐ์Šคํฌํ†ฑ๊ณผ ๋žฉํ†ฑ์ž…๋‹ˆ๋‹ค. ํŠน์ • ์„œ๋ฒ„๋ฅผ ํ†ตํ•˜์ง€ ์•Š๊ณ  ํ”ผ์–ด๊ฐ€ ํ†ต์‹ ํ•˜๋ฏ€๋กœ ์ด ๊ตฌ์กฐ๋ฅผ peer-to-peer ๊ตฌ์กฐ๋ผ๊ณ  ํ•ฉ๋‹ˆ๋‹ค. ํ”ํžˆ ์šฐ๋ฆฌ๊ฐ€ ์•Œ๊ณ  ์žˆ๋Š” ํ† ๋ ŒํŠธ(torrent)์™€ ์Šค์นด์ดํ”„๊ฐ€ ์ด๋Ÿฌํ•œ P2P ๊ตฌ์กฐ์˜ ๋Œ€ํ‘œ์ ์ธ ์˜ˆ๋ผ๊ณ  ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. 

๋˜ํ•œ ์–ด๋–ค ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜๋“ค์€ ํด๋ผ์ด์–ธํŠธ-์„œ๋ฒ„์™€ P2P ์š”์†Œ๋“ค์„ ๊ฒฐํ•ฉํ•œ ํ•˜์ด๋ธŒ๋ฆฌ๋“œ ๊ตฌ์กฐ๋ฅผ ๊ฐ–๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, ๋งŽ์€ ์ธ์Šคํ„ดํŠธ ๋ฉ”์‹œ์ง• ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ๊ฒฝ์šฐ, ์„œ๋ฒ„๋Š” ์‚ฌ์šฉ์ž์˜ IP ์ฃผ์†Œ๋ฅผ ์ถ”์ ํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋˜๋ฉฐ ์‚ฌ์šฉ์ž ๊ฐ„ ๋ฉ”์‹œ์ง€๋Š” ์‚ฌ์šฉ์ž ํ˜ธ์ŠคํŠธ ์‚ฌ์ด์— ์ค‘๊ฐ„ ์„œ๋ฒ„๋ฅผ ํ†ตํ•˜์ง€ ์•Š๊ณ  ์ง์ ‘ ์ „๋‹ฌ๋ฉ๋‹ˆ๋‹ค.

 P2P๊ตฌ์กฐ์˜ ๊ฐ€์žฅ ํฐ ํŠน์„ฑ ์ค‘ ํ•˜๋‚˜๋Š” ์ž๊ฐ€ ํ™•์žฅ์„ฑ(self-scalability)์ž…๋‹ˆ๋‹ค. P2P ํŒŒ์ผ ๊ณต์œ ์—์„œ๋Š” ํŒŒ์ผ์„ ๋‚ด๋ ค๋ฐ›๋Š” ํ”ผ์–ด๋ฅผ ํด๋ผ์ด์–ธํŠธ๋ผ ํ•˜๊ณ  ํŒŒ์ผ์„ ์˜ฌ๋ฆฌ๋Š” ํ”ผ์–ด๋ฅผ ์„œ๋ฒ„๋ผ๊ณ  ํ•ฉ๋‹ˆ๋‹ค. ํ† ๋ ŒํŠธ๋ฅผ ์‚ฌ์šฉํ•ด๋ณด์…จ๋‹ค๋ฉด ์‰ฝ๊ฒŒ ์™€๋‹ฟ์„ ์‹ค ํ…๋ฐ ํ•œ ์‚ฌ์šฉ์ž๊ฐ€ A๋ผ๋Š” ํŒŒ์ผ์„ ๋‹ค ๋‚ด๋ ค๋ฐ›์œผ๋ฉด ๊ทธ ์ˆœ๊ฐ„ ๋ณธ์ธ์˜ ์ปดํ“จํ„ฐ๋Š” ์„œ๋ฒ„๊ฐ€ ๋˜๊ณ , ๋‹ค๋ฅธ ์‚ฌ์šฉ์ž๊ฐ€ A ํŒŒ์ผ์„ ๋‹ค์šด๋กœ๋“œํ•  ์ˆ˜ ์žˆ๊ฒŒ ๋˜๊ณ  ๊ทธ ๋‹ค๋ฅธ ์‚ฌ์šฉ์ž์˜ ์ปดํ“จํ„ฐ ๋˜ํ•œ ์„œ๋ฒ„๊ฐ€ ๋ฉ๋‹ˆ๋‹ค.  ๋”ฐ๋ผ์„œ ์ž‘์—…์˜ ๋ถ€ํ•˜๋ฅผ ๋‹ค๋ฅธ ํ”ผ์–ด๋“ค์—๊ฒŒ ๋ถ„๋ฐฐํ•จ์œผ๋กœ์จ ๋น„์šฉ์— ๋งค์šฐ ํšจ์œจ์ ์ž…๋‹ˆ๋‹ค.

P2P ๊ตฌ์กฐ

 

์ •๋ฆฌ

๊ตฌ์กฐ ํŠน์ง•
ํด๋ผ์ด์–ธํŠธ - ์„œ๋ฒ„  - ํด๋ผ์ด์–ธํŠธ๋Š” ์„œ๋กœ ์ง์ ‘์ ์œผ๋กœ ํ†ต์‹ ํ•˜์ง€ ์•Š๋Š”๋‹ค.
- ์„œ๋ฒ„๋Š” ๊ณ ์ • IP ์ฃผ์†Œ๋ผ๋Š” ์ž˜ ์•Œ๋ ค์ง„ ์ฃผ์†Œ๋ฅผ ๊ฐ–๋Š”๋‹ค.
-
์„œ๋ฒ„๋Š” ํ•ญ์ƒ ๋™์ž‘ํ•˜๋ฏ€๋กœ ํด๋ผ์ด์–ธํŠธ๋Š” ์„œ๋ฒ„ ์ฃผ์†Œ๋กœ ํŒจํ‚ท์„ ๋ณด๋‚ด์„œ ํ•ญ์ƒ ์„œ๋ฒ„์— ์—ฐ๊ฒฐํ•  ์ˆ˜ ์žˆ๋‹ค.
- ์„œ๋ฒ„๊ฐ€ ๋ถ€์กฑํ•  ๊ฒฝ์šฐ ๋งŽ์€ ์ˆ˜์˜ ํ˜ธ์ŠคํŠธ๋ฅผ ๊ฐ–์ถ˜ ๋ฐ์ดํ„ฐ ์„ผํ„ฐ(data center)๋ฅผ ์šด์˜ํ•œ๋‹ค. - ๊ตฌ๊ธ€, ๋น™, ์•„๋งˆ์กด ๋“ฑ
- ์›น, ํŒŒ์ผ ์ „์†ก, ์›๊ฒฉ ๋กœ๊ทธ์ธ, ์ „์ž๋ฉ”์ผ ๋“ฑ์ด ์žˆ๋‹ค.
P2P - ํ•ญ์ƒ ์ผœ์ ธ ์žˆ๋Š” ์„œ๋ฒ„์— ์ตœ์†Œ๋กœ ์˜์กดํ•˜๊ฑฐ๋‚˜ ์•„์˜ˆ ์˜์กดํ•˜์ง€ ์•Š๋Š”๋‹ค.
- ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ํ”ผ์–ด(peer)๋ผ๋Š” ๊ฐ„ํ—์ ์œผ๋กœ ์—ฐ๊ฒฐ๋œ ํ˜ธ์ŠคํŠธ ์Œ์ด ์„œ๋กœ ์ง์ ‘ ํ†ต์‹ ํ•˜๋„๋ก ํ•œ๋‹ค.
- ํด๋ผ์ด์–ธํŠธ-์„œ๋ฒ„์™€ P2P ์š”์†Œ๋“ค์„ ๊ฒฐํ•ฉํ•œ ํ•˜์ด๋ธŒ๋ฆฌ๋“œ ๊ตฌ์กฐ๋ฅผ ๊ฐ€์งˆ ์ˆ˜๋„ ์žˆ๋‹ค.
- ์ž๊ฐ€ ํ™•์žฅ์„ฑ(self-scalability)์„ ๊ฐ€์ง€๊ณ  ์žˆ์–ด, ๋ถ€ํ•˜์˜ ๋ถ„๋ฐฐ๊ฐ€ ๊ฐ€๋Šฅํ•˜๋‹ค.
- ํ† ๋ ŒํŠธ, ์Šค์นด์ดํ”„ ๋“ฑ์ด ์žˆ๋‹ค.

 

๋‹ค์Œ ๊ธ€

 

[๋„คํŠธ์›Œํฌ] ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ณ„์ธต(2) - ํ”„๋กœ์„ธ์Šค ๊ฐ„ ํ†ต์‹ (์†Œ์ผ“)

์„œ๋ก  ๋Œ€๋ถ€๋ถ„์˜ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ๋‘ ํ”„๋กœ์„ธ์Šค๊ฐ€ ๋ฉ”์‹œ์ง€๋ฅผ ์„œ๋กœ์—๊ฒŒ ๋ณด๋‚ด๋Š” ํ†ต์‹  ํ”„๋กœ์„ธ์Šค ์Œ์œผ๋กœ ๊ตฌ์„ฑ๋ฉ๋‹ˆ๋‹ค. ํ•˜๋‚˜์˜ ํ”„๋กœ์„ธ์Šค๋กœ๋ถ€ํ„ฐ ๋‹ค๋ฅธ ํ”„๋กœ์„ธ์Šค๋กœ ๋ณด๋‚ด๋Š” ๋ฉ”์‹œ์ง€๋Š” ๋„คํŠธ์›Œํฌ๋ฅผ ํ†ตํ•ด ์›€์ง์ž…

dkswnkk.tistory.com

๋Œ“๊ธ€