다양한 기록

P2P 아키텍처 File Distribution 본문

네트워크

P2P 아키텍처 File Distribution

라구넹 2024. 4. 8. 19:05

임의의 엔드 시스템이 직접 소통

피어는 간헐적으로 연결되고 IP가 바뀜

 

클라이언트 / 서버 아키텍처의 파일 분배 시간

서버의 업로드 속도 Us

파일 크기 F, 클라이언트 수 N

클라이언트들의 파일 다운로드 속도 중 최소 Dmin

 

클라이언트-서버 간 파일 전송 시간 >= max{ NF/Us, F/Dmin }

 

P2P 파일 분배 시간

NF/(업로드 속도 총합): P2P는 여러 피어에서 파일을 받을 수 있어서 평균내기

P2P 파일 전송 시간 >= max{ F/Us, F/Dmin, NF/(업로드 속도 총합) }

 

P2P의 장점: 클라이언트의 수가 늘어도 감당이 가능. 확장성이 좋다


BitTorrent

파일을 256키로바이트 단위로 청크로 분리

트래커 / 토렌트

트래커는 관리자, 토렌트는 청크를 교환하는 피어 그룹


피어가 처음 토렌트에 들어온 경우

- 청크 없음, 시간이 지나며 피어로부터 받아 축적될 것

- 트래커가 피어를 묶어서 등록해줌

 

문제: Churn. 받기만 하고 주기는 싫어하는 피어

해결책

1. 가장 귀한 청크부터 받음

2. 나한테 많이 주는 피어한테 우선적으로 줌

 

다시 문제: 처음 온 피어는 소외 -> P2P의 장점, 취지가 희미해짐

-> 트래커의 관리가 필요

 

받지 못하는 피어는 질식 상태(choke)

10초마다 탑 4 피어 밸류 재평가,

30초마다 랜덤으로 다른 피어를 고르고 통신이 잘 되면 그 피어가 새로 탑 4가 될 수도 있을 것 (optimistically unchoke)

 

 

 

'네트워크' 카테고리의 다른 글

FTP  (0) 2024.04.08
비디오 스트리밍과 CDNs  (0) 2024.04.08
DNS  (0) 2024.04.07
SMTP, MIME  (0) 2024.04.06
쿠키, 웹 캐시(프록시)  (0) 2024.04.06