P2P architecture: 두 판 사이의 차이

youngwiki
새 문서: 상위 문서: Application Layer ==개요== ==각주== 분류:컴퓨터 네트워크
 
편집 요약 없음
2번째 줄: 2번째 줄:


==개요==
==개요==
많은 애플리케이션들은 항상 켜져 있는 인프라 서버에 크게 의존하는 클라이언트-서버(client-server) 구조를 사용한다. 하지만, P2P 구조에서는 항상 켜져 있는 인프라 서버에 거의 (또는 전혀) 의존하지 않는다. 대신 간헐적으로, 임의로 연결되는 호스트 쌍, 즉 피어(peer)들이 서로 직접 통신한다. 이 피어들은 서비스 제공자가 소유한 것이 아니라, 사용자들이 제어하는 데스크탑과 노트북이다.
해당 문서에서는 P2P 애플리케이션이 하나의 파일을 단일 서버로부터 다수의 호스트(피어)에게 배포하는 것을 살펴본다.
==Scalability of P2P Architectures==
클라이언트-서버 아키텍처와 P2P 아키텍처를 비교하고, P2P의 scalability을 설명하기 위해, 고정된 수의 피어에게 파일을 배포하는 경우를 살펴보자.
[[파일:An illustrative file distribution problem.png|프레임없음|500x500픽셀]]
서버와 피어들은 인터넷에 접속 링크로 연결되어 있다. 서버의 업로드 속도를 u<sub>s</sub>, i번째 피어의 업로드 속도를 u<sub>i</sub>, 다운로드 속도를 d<sub>i</sub>라고 하자. 또한 배포될 파일의 크기를 F(비트 단위), 파일을 받고자 하는 피어의 수를 N이라고 하자. 배포 시간은 N개의 피어가 모두 파일을 받을 때까지 걸리는 시간이다. 이떄 core network는 충분한 대역폭을 가지고 있고, bottleneck link는 access network에만 존재한다고 가정하자.
===Server-Client 구조의 배포시간===
서버-클라이언트 구조에서는 오직 서버 혼자서 모든 파일을 배포한다. 이때 서버는 각 피어에게 파일 사본을 하나씩 보내므로, 총 NF bit를 u<sub>s</sub>의 업로드 속도로 배포한다. 따라서 배포시간은 약 NF/us이다. 또한, d<sub>min</sub>을 모든 피어의 가장 낮은 다운로드 속도라고 하면, 해당 피어는 F bit를 다운로드하는데 약 F/d<sub>min</sub>초가 걸린다. 이를 통해 서버-클라이언트 구조의 배포시간은 다음과 같이 나타내어질 수 있다.
<math>D_{c~s}\,\ge\,max\{NF/u_s,\,F/d_{min}\} </math>
===P2P 구조의 배포시간===


==각주==
==각주==
[[분류:컴퓨터 네트워크]]
[[분류:컴퓨터 네트워크]]

2025년 3월 30일 (일) 16:03 판

상위 문서: Application Layer

개요

많은 애플리케이션들은 항상 켜져 있는 인프라 서버에 크게 의존하는 클라이언트-서버(client-server) 구조를 사용한다. 하지만, P2P 구조에서는 항상 켜져 있는 인프라 서버에 거의 (또는 전혀) 의존하지 않는다. 대신 간헐적으로, 임의로 연결되는 호스트 쌍, 즉 피어(peer)들이 서로 직접 통신한다. 이 피어들은 서비스 제공자가 소유한 것이 아니라, 사용자들이 제어하는 데스크탑과 노트북이다.

해당 문서에서는 P2P 애플리케이션이 하나의 파일을 단일 서버로부터 다수의 호스트(피어)에게 배포하는 것을 살펴본다.

Scalability of P2P Architectures

클라이언트-서버 아키텍처와 P2P 아키텍처를 비교하고, P2P의 scalability을 설명하기 위해, 고정된 수의 피어에게 파일을 배포하는 경우를 살펴보자.

서버와 피어들은 인터넷에 접속 링크로 연결되어 있다. 서버의 업로드 속도를 us, i번째 피어의 업로드 속도를 ui, 다운로드 속도를 di라고 하자. 또한 배포될 파일의 크기를 F(비트 단위), 파일을 받고자 하는 피어의 수를 N이라고 하자. 배포 시간은 N개의 피어가 모두 파일을 받을 때까지 걸리는 시간이다. 이떄 core network는 충분한 대역폭을 가지고 있고, bottleneck link는 access network에만 존재한다고 가정하자.

Server-Client 구조의 배포시간

서버-클라이언트 구조에서는 오직 서버 혼자서 모든 파일을 배포한다. 이때 서버는 각 피어에게 파일 사본을 하나씩 보내므로, 총 NF bit를 us의 업로드 속도로 배포한다. 따라서 배포시간은 약 NF/us이다. 또한, dmin을 모든 피어의 가장 낮은 다운로드 속도라고 하면, 해당 피어는 F bit를 다운로드하는데 약 F/dmin초가 걸린다. 이를 통해 서버-클라이언트 구조의 배포시간은 다음과 같이 나타내어질 수 있다.

Dcsmax{NF/us,F/dmin}

P2P 구조의 배포시간

각주