클레이튼의 노드인 컨센서스노드, 프록시노드, 엔드포인트노드는 각각 어떤 역할을 하나요?
클레이튼은 다양한 종류의 노드가 있는 것으로 아는데요.
컨센서스노드(CN), 프록시노드(PN), 엔드포인트노드(EN) 등이 있다고 들었습니다.
클레이튼의 노드인 이들 컨센서스노드, 프록시노드, 엔드포인트노드는 블록체인 내에서 각각 어떤 역할을 하나요?
클레이튼 블록체인의 합의 알고리즘은 비잔틴 장애 허용 알고리즘이라고 할 수 있으며 이를 통해 블록의 생성과 검증에 참여하는 거버넌스 카운실 멤버들이 운영하는 노드가 컨센서스 노드라고 할 수 있습니다.
이러한 컨센서스(Consensus Node) 노드는 합의 노드로서 클레이튼 블록체인 상에서 블록을 생성하고 거래 내역을 기록하는 역할을 하게 됩니다. 즉, BFT 합의 알고리즘에 따라 1/3 이상의 비잔틴 노드가 없다면 2/3 이상의 노드들의 합의 만으로 빠르게 합의에 도달하여 블록을 생성할 수 있습니다.
다음으로 엔드포인트 노드(Endpoint Node)의 경우 클레이튼 블록체인의 블록 데이터베이스를 다운로드 받아 블록을 검증하고 감사하는 역할을 하는 노드이며 또한 합의 과정이 필요 없는 블록체인 데이터에 대한 정보 제공 요청에 대해 응답하는 역할을 하게 됩니다. 그리고 컨센서스 노드들이 컨소시엄 블록체인으로서 허가를 받아야만 참여할 수 있는 반면에 레인저 노드의 경우 누구나 참여할 수 있다는 점에서 차이가 있습니다.
끝으로 프록시 노드(Proxy Node)는 앞서 살펴본 엔드포인트 노드에서 수신한 트랜젝션을 컨센서스 노드에게 전달하며, 컨센서스 노드에서 합의를 통해 생성한 블록을 엔드포인트 노드로 전파하는 역할을 합니다. 즉, 컨센서스 노드와 엔드포인트 노드 사이의 정보 전달을 대리하는 역할을 한다고 보시면 좋겠습니다.
답변이 도움이 되길 바랍니다.