익명 사용자
로그인하지 않음
계정 만들기
로그인
youngwiki
검색
P2P architecture 문서 원본 보기
youngwiki
이름공간
문서
토론
더 보기
더 보기
문서 행위
읽기
원본 보기
역사
←
P2P architecture
문서 편집 권한이 없습니다. 다음 이유를 확인해주세요:
요청한 명령은 다음 권한을 가진 사용자에게 제한됩니다:
사용자
.
문서의 원본을 보거나 복사할 수 있습니다.
상위 문서: [[Application Layer]] ==개요== 많은 애플리케이션들은 항상 켜져 있는 인프라 서버에 크게 의존하는 클라이언트-서버(client-server) 구조를 사용한다. 하지만, P2P 구조에서는 항상 켜져 있는 인프라 서버에 거의 (또는 전혀) 의존하지 않는다. 대신 간헐적으로, 임의로 연결되는 호스트 쌍, 즉 피어(peer)들이 서로 직접 통신한다. 이 피어들은 서비스 제공자가 소유한 것이 아니라, 사용자들이 제어하는 데스크탑과 노트북이다. 해당 문서에서는 P2P 애플리케이션이 하나의 파일을 단일 서버로부터 다수의 호스트(피어)에게 배포하는 것을 살펴본다. ==Scalability of P2P Architectures== 클라이언트-서버 아키텍처와 P2P 아키텍처를 비교하고, P2P의 scalability을 설명하기 위해, 고정된 수의 피어에게 파일을 배포하는 경우를 살펴보자. [[파일:An illustrative file distribution problem.png|프레임없음|500x500픽셀]] 서버와 피어들은 인터넷에 접속 링크로 연결되어 있다. 서버의 업로드 속도를 us, i번째 피어의 업로드 속도를 ui, 다운로드 속도를 di라고 하자. 또한 배포될 파일의 크기를 F(비트 단위), 파일을 받고자 하는 피어의 수를 N이라고 하자. 배포 시간은 N개의 피어가 모두 파일을 받을 때까지 걸리는 시간이다. 이떄 core network는 충분한 대역폭을 가지고 있고, bottleneck link는 access network에만 존재한다고 가정하자. ===Server-Client 구조의 배포시간=== 서버-클라이언트 구조에서는 오직 서버 혼자서 모든 파일을 배포한다. 이때 서버는 각 피어에게 파일 사본을 하나씩 보내므로, 총 NF bit를 us의 업로드 속도로 배포한다. 따라서 배포시간은 약 NF/us이다. 또한, d<sub>min</sub>을 모든 피어의 가장 낮은 다운로드 속도라고 하면, 해당 피어는 F bit를 다운로드하는데 약 F/d<sub>min</sub>초가 걸린다. 이를 통해 서버-클라이언트 구조의 배포시간은 다음과 같이 나타내어질 수 있다. D<sub>c-s</sub> <math>\ge</math> max{NF/us, F/d<sub>min</sub>} 위 식에서 알 수 있는 것은 NF/us가 F/d<sub>min</sub>을 압도할 정도로 커진다면, D<sub>c-s</sub>의 최솟값은 N이 증가함에 따라 선형적으로 증가한다. 즉, 피어의 수가 1,000명에서 100만 명으로 1,000배 증가하면, 파일을 모두에게 배포하는 데 걸리는 시간도 1,000배 증가한다. 위는 모든 피어의 업로드 속도가 u로 동일하다고 가정할 때, 클라이언트-서버와 P2P의 최소 배포 시간을 비교한 것이다.<ref>F/u = 1시간, us = 10u, 그리고 dmin ≥ us로 설정</ref> ===P2P 구조의 배포시간=== P2P 구조에서는 각 피어가 서버를 도와 파일을 배포한다. 피어가 일부 파일 데이터를 받으면, 자신의 업로드 대역폭을 이용해 다른 피어들에게 그 데이터를 재배포한다. 이 때문에 P2P 구조의 배포 시간을 계산하는 것은 클라이언트-서버 구조보다 더 복잡하다. 왜냐하면 피어들이 파일의 일부를 어떻게 배포하느냐에 따라 배포 시간이 달라지기 때문이다. 그럼에도 불구하고 최소 배포 시간에 대한 단순한 식을 도출할 수 있다. 이때 다음과 같은 관찰을 한다: * 배포 초기에 파일을 가진 건 오직 서버뿐이다. 따라서 파일의 모든 비트는 최소 한 번은 서버의 접속 링크를 통해 전송되어야 하므로, 최소 배포 시간은 F/us 이상이다. 하지만 한번 전송된 비트는 피어들이 재배포 하므로, 전송된 비트를 서버가 다시 전송할 필요는 없다. * 다운로드 속도가 가장 느린 피어는 파일을 최소 F/dmin 초 이상 걸려야 받을 수 있다. * 시스템 전체의 업로드 속도는 서버의 업로드 속도 us과 모든 피어의 업로드 속도 u1,..., uN의 합이다. 따라서 이 시스템은 NF 비트를 모든 피어에게 전송해야 하므로, 최소 NF / (us + u1 + ... + uN)의 시간이 소요된다. 위 세 가지를 종합하면 P2P 구조의 배포시간은 다음과 같이 나타내어진다. D<sub>P2P</sub> <math>\ge</math> max{F/us, F/d<sub>min</sub>, NF/(us + <math>\sum_{i=1}^{N}</math>ui)} ==각주== [[분류:컴퓨터 네트워크]]
P2P architecture
문서로 돌아갑니다.
둘러보기
둘러보기
대문
최근 바뀜
임의의 문서로
미디어위키 도움말
위키 도구
위키 도구
특수 문서 목록
문서 도구
문서 도구
사용자 문서 도구
더 보기
여기를 가리키는 문서
가리키는 글의 최근 바뀜
문서 정보
문서 기록