블록체인
Peer-to-PeerP2P 네트워크
P2P(Peer-to-Peer, 피어 투 피어)는 중앙 서버 없이 참여 노드들이 직접 연결해 데이터를 주고받는 네트워크 구조다. 각 참여자(피어)가 클라이언트이자 서버 역할을 동시에 수행한다. Bitcoin과 Ethereum 등 블록체인은 P2P 네트워크 위에서 동작해 탈중앙화를 실현한다.
중앙화 vs P2P
블록체인 P2P 네트워크 특징
| 특징 | 설명 |
|---|---|
| 탈중앙화 | 단일 실패점(SPOF) 없음 |
| 검열 저항 | 어느 기관도 차단 불가 |
| 투명성 | 모든 노드가 동일한 데이터 보유 |
| 확장성 | 노드가 많을수록 네트워크 강화 |
블록체인에서의 역할
- •트랜잭션 전파: 새 트랜잭션이 네트워크 전체에 전파됨
- •블록 동기화: 새 블록이 모든 노드에 전달됨
- •합의: P2P로 연결된 노드들이 합의 메커니즘으로 동의
주요 P2P 프로토콜
| 프로토콜 | 사용처 |
|---|---|
| Bitcoin P2P | Bitcoin 네트워크 |
| devp2p | Ethereum 노드 통신 |
| libp2p | IPFS, Ethereum 2.0 |
| Gossip Protocol | 트랜잭션·블록 전파 |
가십 프로토콜 (Gossip Protocol)
블록체인 P2P 네트워크에서 정보 전파에 사용하는 핵심 메커니즘.
- 1.노드가 새 트랜잭션/블록 수신
- 2.무작위로 3~5개 인접 노드에 전파
- 3.수신 노드들이 다시 각자의 인접 노드에 전파
- 4.수 초 내에 전체 네트워크에 전달
특성: 노드 수가 2배 증가해도 전파 시간은 로그 스케일로 증가 → 확장성 우수. 일부 노드가 다운되어도 다른 경로로 우회 전파 가능.
관련 개념
- •Bitcoin — P2P 전자화폐 시스템
- •합의 메커니즘 — P2P 네트워크에서 합의 달성
- •블록체인 — P2P 위에 구축된 분산 원장
참고문헌
- •Nakamoto, S. (2008). Bitcoin: A Peer-to-Peer Electronic Cash System