본 글은 학교 네트워크 수업을 들으며, "Computer Networking: A Top-Down Approach 8ed(컴퓨터 네트워킹: 하향식 접근 제8판)"을 기반으로 공부한 내용을 정리한 글입니다.
Ch3.4 BitTorrent P2P Systems
P2P Systems(Protocols)
- P2P 프로토콜들은 위와 같이, 크게 `중앙화된 것`과 `분산된 것`으로 나뉨.
- Kademila가 요즘에 좀 많이 쓰이는데, 쿼리를 3~4단계에 다 끝나게 만들어서 되게 안정적임.
- 또한, BitTorrent처럼 `섞인 것`도 존재.
- `중앙화된 P2P 시스템`은 왼쪽과 같이, (key, value) pair를 서버에 저장해, 파일 등록 및 쿼리 시 서버의 도움을 받음. 그러나 파일 공유는 여전히 P2P의 방식대로 peer한테서 가져오고.
- `분산된 P2P 시스템`은 우측과 같이, 서버가 아예 없고 완전히 pure하게 P2P로 작동함.
P2P Applications(사용 사례들)
File Sharing
ex. BitTorrent, Kademilla
P2P Communications
ex. Skype
P2P Multimedia streaming
- 동영상을 보낼 때 P2P 사용
ex. Africa(SOOP), CHZZK
P2P Multiplayer Games
ex. Unreal TOurnament, DOOM
P2P Collaborative Applications
ex. ICQ, Shared Whiteboard
P2P/Grid Distributed processing
- 전 세계에 놀고 있는 PC들이 많으니, 그걸 모아서 슈퍼컴퓨터처럼 써보자!
- 노는 컴퓨터들에 분산해서 연산을 처리하자.
ex. SETI@home
And so on...
BitTorrent
- (북미 기준) 20~50%, 전 세계 기준 10% 미만 사용됨. (kademila 기반 P2P traffic이 20% 정도)
=> 전 세계에서 30~40%의 트래픽이 P2P 기반.
- `BitTorrent`, `uTorrent`와 같은 client software을 필요로 함.
Hybrid architecture
tracker-based centralized architecture
- tracker라는 서버가 존재함.
- BitTorrent는 주로 이 구조를 사용.
trackerless decentralized architecture
- 사실상 Kademila와 거의 유사한 방식.
BitTorrent
- `Tracker` : swarm을 관리하는 서버
- `Seeder` : 목표로 하는 content를 전부 타 가지고 있는 peer
- `Leecher` : 목표로 하는 content를 일부 또는 안 가지고 있는 peer
- `Swarm` : peer들의 그룹. swarm 내에서 content 공유가 일어남.
'CS > Computer Network' 카테고리의 다른 글
[네트워크] Ch3.3 Circular DHT (0) | 2025.01.14 |
---|---|
[네트워크] Ch3.2 DHT(Distributed Hash Table) (0) | 2025.01.14 |
[네트워크] Ch3.1 P2P 구조(P2P Architecture) (0) | 2025.01.14 |
[네트워크] Ch3 Application Layer - Peer-to-Peer Model (0) | 2025.01.14 |
[네트워크] Ch2.x 와이어샤크를 이용한 패킷 분석 실습 (0) | 2025.01.14 |