-
[클레이튼 개념 잡기 1] 네트워크 구성Blockchain/Klaytn 2019. 8. 5. 20:40
Core Cell Network (CCN)
: Core Cell Network 는 Core Cells 로 구성되어 있으며 Endpoint Nodes 에서 보내는 Transaction 을 검증하고 실행한다. 또한 블록체인 네트워크에 블록을 생성하고 전파하는 역할을 담당한다. CN 은 BTF 합의 알고리즘을 실행하기 위해 충분한 네트워크 리소스와 하드웨어 퍼포먼스를 요구한다.
Endpoint Node Network (ENN)
: Endpoint Node Network는 Endpoint Nodes 로 구성되어 있으며 Transaction을 생성, RPC API 핸들링, Service chain으로 부터 오는 데이터를 처리한다.
Service Chain Network (SCN)
: Service Chain Network는 BApp 에 의해 실행되는 블록체인으로 구성된 Klaytn 의 독립적인 하위 네트워크이다. Service chain은 ENN을 통해 Klaytn network에 data를 처리한다.
네트워크 세부 구성
Core Cell (CC)
: Core Cell 은 1개의 Consensus Node(CN) 와 2개의 Proxy Node(PN) 로 구성되어있다.
Proxy Node Network (PNN)
: Proxy Node 는 서로 다른 PN과 연결하며 PNN을 이룬다. 이때 같은 CC 내에서는 연결하지 않는다. 전형적으로 PN 은 다른 PN 과 하나의 연결만 유지하지만 이 갯수는 network 설정에 따라 유동적이다.
Bootnode
: Bootnode는 네트워크에 새롭게 참여하는 노드의 등록을 도와주고 다른 노드와 연결을 도와주는 Klaytn 에서 제공하는 특별한 node 이다. CN bootnode는 CNN 내부에 자리하며 외부에 노출되지 않지만 PN bootnode 와 EN bootnode 는 외부에 노출되어 node가 네트워크에 참여하도록 돕는다.
Block 생성과 전파
블록 생성 Cycle
: Klaytn 은 'round' 라고 칭하는 블록 생성 cycle을 가진다. 각 'round' 는 약 1초 간의 시간내에 완료되는것을 목표로한다.
- Klaytn 은 블록을 생성하기 위해 랜덤하지만 분명하게(deterministically) 하나의 제안자(proposer) CN node 를 선택한다. 그리고 현 round 의 위원회(committee) 가 될 CN 그룹을 선출한다. (Klaytn 은 직접적으로 proposer 이나 committee 를 선출하는것이 아니라 가장 최근의 블록 헤더에서 파생된 숫자를 통해 해당 CN 이 최근에 선출되었는지 여부를 따져본 후 선출한다.)
- 선출 작업이 끝나면 proposer 는 자신이 현 round 의 proposer 임을 모든 CN 에게 알린다.
- 이후 committee 로 선출된 CN 들은 proposer 에게 블록 생성 준비가 완료 되었음을 응답한다.
- proposer은 Transaction pool 에서 Transaction set 을 선택하여 블록을 생성한다.
- 마지막으로 proposer 과 committee 는 블록을 생성하기 위한 합의를 진행하고 블록 생성을 확정 짓는다.
제안된 블록을 확정 짓고 CN에 전파하기 위해서는 적어도 두 세 명의 committee 위원의 서명(signatures) 가 필요하다.
출처 : https://docs.klaytn.com/ (Klaytn 공식 Document)
'Blockchain > Klaytn' 카테고리의 다른 글
Klaytn 대납 기능 활용하기 (Fee Delegate) (0) 2019.09.30 [클레이튼 개념 잡기 2] Account & Transaction (0) 2019.08.05