확장 솔루션
Kaia는 네트워크 부하가 많은 상황에서도 높은 처리량과 응답성을 보장하는 강력한 확장 솔루션을 제공합니다. 이러한 솔루션에는 서비스 체인과 새로운 멀티채널 통신 아키텍처가 포함됩니다.
서비스 체인
카이아의 서비스체인은 카이아 메인체인과는 독립적인 보조 블록체인으로, 특별한 노드 구성, 맞춤형 보안 수준 또는 메인체인에 dApp을 배포하는 것이 불편하거나 경제적으로 실현 불가능할 정도로 높은 처리량을 필요로 하는 개별 디앱을 위해 맞춤화되었습니다.
완전히 탈중앙화된 확장 솔루션이 있지만, 챌린지나 퇴장과 같은 어려운 인터페이스와 즉각적인 완결성이 없다는 단점이 있지만, 카이아 서비스체인에서는 더 나은 사용성, 즉각적인 완결성, 고성능, 고가용성을 위해 완전한 탈중앙화를 희생하는 다른 접근 방식을 취하고 있습니다.
카이아 서비스체인은 다양한 서비스별 목적으로 사용될 수 있으며, 데이터 앵커링(노드 수가 적어 서비스체인의 보안성이 떨어지는 것을 보완하기 위해 주기적으로 서비스체인의 블록 해시를 메인체인에 저장) 또는 밸류 전송(카이아의 기본 가치 단위인 KAIA와 dApp이 발행한 토큰의 체인 간 전송) 등 여러 이유로 메인체인에 연결할 수 있습니다.
네트워크
카이아 메인체인에 연결된 서비스체인을 통칭하여 서비스체인 네트워크라고 합니다. 서비스체인과 메인체인 간의 연결 방식은 Klaytn의 향후 반복 작업에서 변경될 수 있습니다.
그림 1은 다양한 비즈니스 요구를 충족하기 위해 사용되는 서비스 체인의 네트워크 토폴로지를 보여줍니다.
그림 2는 카이아 메인체인의 EN(엔드포인트 노드)과 직접 연결된 SCN(서비스체인 컨센서스 노드)의 예시입니다.
기능
서비스체인은 데이터 무결성 메커니즘을 제공하고 서로 다른 체인 간의 토큰 전송을 지원함으로써 Kaia를 확장하고 강화합니다.
데이터 앵커링
데이터 무결성을 위해 서비스체인은 모든 서비스체인 블록 해시를 특수 트랜잭션으로 메인 체인에 자동으로 앵커링할 수 있습니다. 이 데이터 앵커링은 서비스 체인의 데이터가 생성된 후에는 변경할 수 없음을 서비스 사용자에게 보장할 수 있습니다.
밸류 전송
서비스 공급자(SP)가 서비스 사용자와 가치를 체인 간에 쉽게 마이그레이션할 수 있도록 지원합니다. 사용자는 브릿지 컨트랙트라고 하는 특별한 컨트랙트에 트랜잭션을 전송하여 다른 체인으로 토큰 전송을 쉽게 요청할 수 있습니다.
멀티채널 커뮤니케이션
Kaia는 특히 거래량이 많은 기간 동안 네트워크 성능과 복원력을 향상시키기 위해 다중 채널 통신 아키텍처를 사용합니다. 다양한 메시지 유형을 전용 통신 채널로 분리함으로써 Kaia는 네트워크 혼잡이 심한 상황에서도 효율적인 블록 전파 및 합의를 유지할 수 있습니다.
아키텍처
멀티 채널 연결
단일 채널 연결
구성 모드
- 멀티채널: 두 개의 포트를 사용합니다. kend.conf
의
멀티채널=1로 인해
kend에서 기본적으로 활성화됩니다. '멀티채널=0'을 설정하여 비활성화합니다. 포트
및--서브포트
플래그를 사용하여 포트를 사용자 지정합니다. - 단일 채널: 하나의 포트를 사용합니다(기본값 32323). 멀티채널
이 설정되어 있지 않거나
0`으로 설정되어 있을 때 활성화됩니다.
멀티 채널 작동 방식
멀티채널은 다양한 메시지 유형을 전용 포트로 분리합니다:
- **메인 포트: **블록 관련 메시지(해시, 헤더, 본문, 영수증에 대한 요청/응답) 및 합의 메시지(요청, 준비, 준비, 커밋, 라운드체인지)를 처리합니다. 메시지의 의미는 PBFT에서 확인할 수 있습니다.
- 서브포트: 트랜잭션 메시지를 처리합니다.
이렇게 분리하면 한 포트에 장애가 발생해도 다른 포트는 계속 작동하므로 네트워크 안정성이 향상됩니다. 예를 들어, 서브포트(일반적으로 트래픽이 많을 때 혼잡함)에 장애가 발생하면 메인 포트가 필수적인 블록 및 합의 작업을 유지합니다.
연결 설정
- 멀티 채널에서 멀티 채널로: 두 포트가 모두 사용됩니다.
- 기타 경우(다중 채널에서 단일 채널로 또는 단일 채널에서 단일 채널로): 단일 포트가 사용됩니다.
노드가 하위 포트를 지정하지 않고 연결을 시도하면 처음에는 단일 포트를 사용하여 연결합니다. 핸드셰이크 중에 상대방이 멀티채널인 경우 두 포트를 모두 사용하여 연결이 다시 설정됩니다.
포트 구성(KNI)
자세한 내용은 KNI 제도를 참조하세요. 기본 포트는 32323(메인) 및 32324(서브)입니다.
KNI와 통합
멀티채널은 노드 검색 및 연결을 위해 KNI와 통합됩니다. KNI URL을 사용하면 메인 포트와 서브 포트를 모두 지정할 수 있습니다.
구현 참고 사항
Kaia의 멀티채널 구현은 원래 사양에서 약간 벗어납니다. 이러한 편차에 대한 자세한 내용은 이 문서의 범위를 벗어나지만, 향상된 네트워크 통신과 견고성이라는 핵심 원칙은 여전히 카이아 운영의 핵심입니다. 이 정보는 주로 노드 운영자 및 개발자와 관련이 있습니다.
요약하면, 멀티채널은 메시지 트래픽을 분리하고 효율성과 복원력을 개선하여 Kaia의 네트워크를 향상시킵니다. 노드 운영자에게는 고급 구성 옵션을 제공하면서도 일반 사용자에게는 시스템을 투명하게 유지합니다.