네트워크
Last updated
Last updated
디카르고 2.0 네트워크는 Arbitrum Nitro Stack을 사용하여 개발된 Optimistic Rollup 기반 레이어3 솔루션입니다. 레이어3 구조를 통해 디카르고는 높은 트랜잭션 처리량과 빠른 속도 및 저렴한 수수료를 제공하여 물류 데이터를 효과적으로 관리하고 교환할 수 있습니다. 레이어3 네트워크는 레이어1의 블록체인의 보안성과 투명성을 유지하면서도, 데이터 탈중앙화와 효율적인 데이터 관리를 지원합니다. Arbitrum Nitro에 대한 소스 코드 및 기술 문서는 Arbitrum Docs(https://docs.arbitrum.io/welcome/get-started)에서 확인 가능합니다.
1) 레이어3 - 디카르고
물류 서비스의 요구에 맞춰 최적화된 환경을 제공하는 레이어로, 아비트럼 레이어2 위에서 구현되었습니다. 저렴한 네트워크 수수료와 빠른 처리 속도 지원을 기반으로 다양한 트랜잭션을 처리할 수 있습니다.
2) 레이어2 - 아비트럼
레이어1의 확장성 문제를 해결하기 위해 설계된 레이어로, 레이어3에서 제출된 트랜잭션을 포함하여 레이어2에서 발생한 트랜잭션들을 처리하고 압축하여 레이어1에 제출합니다. 이 과정에서 속도와 비용 효율성을 크게 향상시킬 수 있습니다.
3) 레이어1 - 이더리움
전세계 수천개의 노드로 구성되어 높은 수준의 보안을 제공하는 레이어로, 아비트럼 레이어2에서 제출된 트랜잭션을 합의하고 검증해 최종적으로 데이터와 상태를 기록합니다. 이를 통해 발생한 트랜잭션의 무결성과 최종성을 보장합니다.
디카르고 네트워크 효율성의 핵심은 롤업 프로세스에 있습니다. 롤업 프로세스는 다음과 같이 진행됩니다:
1) 트랜잭션 정렬
Sequencer는 사용자들이 발생시킨 트랜잭션들을 수신하여 처리 순서를 결정하고, 트랜잭션들을 시간 단위로 묶어 레이어3 블록을 생성합니다.
2) 상태 동기화
생성된 레이어3 블록은 네트워크의 모든 노드들에게 전파됩니다. 각 노드들은 상태 천이 함수(State Transition Function, STF)에 레이어3 블록에 담긴 트랜잭션을 실행시켜 네트워크 전체의 데이터 동기화를 유지합니다. 처리 순서가 정렬된 트랜잭션들을 동일한 STF를 통해 수행하므로 모든 노드들이 동일한 상태를 유지하게 됩니다.
3) 롤업 처리
Sequencer는 레이어3 블록을 주기적으로 배치로 묶어 Arbitrum-One에 기록하는 롤업 프로세스를 수행해 해당 트랜잭션들의 누적 해시값 및 레이어3 블록 정보를 구조화한 정보(Rblock)를 Arbitrum-One에 기록합니다.
1) Service Provider
Service Provider는 레이어3에서 발생한 트랜잭션을 수집해 Sequencer로 전달하는 역할을 수행합니다. 또한 네트워크의 안정성을 유지하기 위해 지속적인 모니터링과 관리 작업을 수행합니다. Service Provider는 디카르고 생태계 참여자 누구나 참여할 수 있습니다.
2) Sequencer
Sequencer는 레이어3에서 발생한 트랜잭션들을 하나로 묶어 압축하고, 레이어2 블록체인에 기록하는 역할을 수행합니다. 트랜잭션의 처리 순서를 최적화하고, 트랜잭션들을 하나의 데이터 블록으로 묶는 일련의 과정은 처리 속도를 높이고 수수료를 절감해 효율성을 증진시킵니다. 현재 처리 효율성을 위해 단일 Sequencer로 운영되고 있지만 서비스 운영이 중단되는 문제를 방지하기 위해 Sequencer Coordination Manager를 운용하고 있습니다.
3) Relayer
Relayer는 네트워크 상태를 모니터링하고 부하를 조절해 효율적인 데이터 흐름을 유지하는 관리 노드입니다. 레이어3에서 발생한 트랜잭션을 수집해 Sequencer로 전달하며, 생성된 블록 정보를 각 노드들에게 전달해 네트워크 전체의 데이터 동기화를 유지합니다. 또한 사용자가 블록체인 네트워크에 쉽게 접근하고 상호작용할 수 있도록 지원하는 진입점 역할을 수행합니다. 해당 노드는 디카르고에서 운영합니다.
4) Validator
Validator는 레이어2에 기록된 디카르고 네트워크 상태를 모니터링하여 데이터가 정확하게 기록되었는지 검증하는 노드입니다. 만일 잘못된 정보가 기록되었음을 감지할 경우, 이의 제기 및 사기 증명 프로세스를 통해 진위 여부를 가리고 바로잡는 역할을 수행합니다. Validator는 현재 화이트리스트로 운영되고 있으며 승인된 사용자들만 Validator 노드를 구축해 검증에 참여할 수 있습니다.