P2P 네트워크 아키텍쳐


P2P 기술을 가장 광범위하게 성공시킨 사례는 파일 공유의 선구자이자 비트토렌트(BitTorrent)의 전신인 냅스터(Napster) 이다.

비트코인의 P2P 네트워크 아키텍처는 토폴로지의 선택 그 이상을 의미한다. 설계적인 측면에서 P2P 체제의 전자화폐 시스템이며 아키텍쳐의 근간으로 삼고 있다. 스트라텀(Stratum) 등 다른 프로토콜도 사용되지만 라이트웨이트 지갑이나 모바일지갑, 채굴용으로 사용되어진다.

'확장 비트코인 네트워크'란 비트코인 P2P 프로토콜, 풀 채굴 프로토콜, 스트라텀 프로토콜 및 비트코인 시스템의 구성 요소를 연결하는 연관 프로토콜 등이 포함되어 있는 네트워크 전반을 나타낸다. 


노드의 유형 및 역할


풀노드라고 불리는 노드는 완전하고 가장 최신의 블록체인 복사본을 가지고 있고 외부 참조 없이 독자적으로 신뢰할 수 있는방법으로 검증 가능하며, 라이트웨이트 노드는 단순 지불 검증(SVP)라는 방법을 통해 부분 집합만으로 유지되기도 한다. 파란색 노드가 풀노드를 나타내며 없는 노드들은 복사본을 유지하지 않는 노드이다.


< 지갑, 채굴자, 풀 블록체인 DB, 네트워크 라우팅 등 4개의 기능에 따른 비트코인 네트워크 노드>


아래는 확장 비트코인 네트워크 내에 있는 노드 중 가장 일반적인 형태를 보여준다.


<확장 비트코인 네트워크상에 있는 다양한 유형의 노드들>




< 다양한 노드의 유형, 게이트웨이, 프로토콜을 보여주는 확장 비트코인 네트워크>


네트워크 검색

네트워크에 들어가기위해서는 검색을 해야 한다. 일반적으로 각 노드는 8333번(보통 비트코인이 사용하는 포트로 알려짐)으로 연결하고 Handshake를 시작한다. version을 보내면 verack로 응답한다. 양방향 연결을 원할경우 version을 보내 다시 연결한다. 


< 이웃 노드간의 초기 핸드쉐이크>

새로운 노드는 어떻게 검색할까? 비트코인에는 종자노드(seed node)가 기록되어 있는데 니는 오랜 기간동안 안정되게 동작하고 있는 노드들이다. 노드는 비트코인 네트워크로 들어가는 경로를 다양하게 만들어 놓기 위해서 여러 다른 노드와 접속해야 한다.


< 주소 전파 및 검색>


풀노드

풀 블럭체인 노드들은 모든 거래가 담겨있는 비트코인 블럭체인의 최신 완성본이다. 현재 20기가 정도의 저장 공간이 필요하다.

가장 흔하게 사용하는 것이 기본 클라이언트인 비크코인 코어이며 사토시 클라이언트로 알려져 있다.


'인벤토리' 교환하기







'디지털 양피지 > Blockchain' 카테고리의 다른 글

[Blockchain] 공개키와 개인키  (0) 2016.02.04
Posted by 빨간 양말