소프트웨어 아키텍처 - 21(P2P Architecture Style)

박승현·2023년 10월 15일
0

아키텍처

목록 보기
21/30
post-thumbnail

P2P Architecture Style

  • 개요
    • 작업을 피어 간에 분할하는 분산 아키텍처
    • 피어는 분산 어플리케이션에서 동등한 권한을 가진 참가자들
    • 피어는 자신의 일부 자원을 다른 피어 참가자에게 제공
    • 이러한 공유자원은 P2P 네트워크의 서비스, 콘텐츠를 위해 필수적
    • 참가자들은 자원을 제공하는 제공자이면서 자원을 요청하는 요청자이다
    • 서로 연결하기 위해 유사한 네트워크 프로그램을 사용
    • Pure P2P system with no central service

P2P 컴퓨팅의 장, 단점

  • 장점
    • 중앙 단일 장애점이 없음
      • 대표적으로 클라이언트-서버 모델은 특정 서비스가 중앙 단일 장애점을 가질 수 있음
    • 확장성
      • 모든 피어가 동등하기 때문에 시스템에 피어를 추가하는것이 자유로움
      • 모든 사용자에게 부하를 분산
      • 사용자는 리소스를 소비하고 제공
    • 전용 응용 프로그램 및 데이터베이스 서버가 필요없음
  • 단점
    • 분산된 조정
      • 전역 상태를 일관되게 유지하기 어려움
      • 분산된 일관성 프로토콜이 필요
    • 모든 노드가 동등하지 않음
      • 계산 능력과 대역폭이 전체 성능에 영향을 미침
    • 보안이 부족함

P2P 리소스 공유 예시

  • 공유 가능한 관련 컴퓨터 리소스
    • CPU 사이클(GIMPS)
    • 대역폭(PPStram)
    • 저장 공간(OceanStore, Murex)
    • 데이터(Torrent)
    • 사람(친구 찾기)
    • 카메라, 마이크 센서 등

Classification of P2P systems(분류)

  • 순수 P2P 시스템
    • 중앙 서비스를 가지지 않는 시스템
    • 연결된 피어들 간의 모든 통신이 어떠한 서버의 도움 없이 발생
    • 순수 P2P 시스템은 주로 작은 규모의 환경에서 잘 작동
  • 혼합형 P2P 시스템
    • 중앙서버에 부분적으로 의존하거나 특정 기능을 일부 특별한 피어의 하위 집합에 할당
  • P2P 시스템의 분류
    • 혼합형 P2P시스템
      • 일부 전통적인 클라이언트-서버 아키텍처를 보존 : 중앙 서버가 클라이언트 간의 연결에 관여(Napster)
    • 비구조화 P2P 시스템(Unstructured)
      • 위상 및 파일 배치에 대한 제어가 없음
    • 구조화 P2P 시스템(Structured)
      • 위상이 엄격하게 제어되며 파일 배치가 무작위가 아님

BitTorrent

  • 대용량 파일을 전송하는데 사용
  • 트래커가 전송할 수 있는 파일 목록을 제공, 클라이언트가 파일을 전송할 수 있는 시드라고 알려진 피어 사용자를 찾을 수 있게 함

Blockchain


P2P 장,단점

  • 장점
    • 기능 리소스의 확장성
    • 서버 이식성
    • 리소스 활용
  • 단점
    • 보안 문제
    • 익명 연결의 위험
    • 서비스 중복
    • 테스트의 어려움
profile
KMU SW

0개의 댓글