본문으로 건너뛰기
This page uses machine translation from English, which may contain errors or unclear language. For the most accurate information, please see the original English version. Some content may be in the original English due to frequent updates. Help us improve this page's translation by joining our effort on Crowdin. (Crowdin translation page, Contributing guide)

형제 서비스 체인 간 밸류 전송

이 섹션에서는 서비스체인 네트워크 간에 밸류 전송을 활성화하는 방법을 설명합니다. ServiceChain에서 제공하는 주요 기능인 데이터 앵커링과 밸류 전송은 독립적으로 사용할 수 있습니다. 즉, 다른 기능의 사용 여부와 상관없이 데이터 앵커링만 사용하거나 밸류 전송만 사용할 수 있습니다.

아래 그림과 같이 Kairos에 연결된 두 개의 서비스체인(체인ID 1002, 1004)이 있는 경우, 각 서비스체인이 Kairos와 데이터 앵커링을 수행하기 때문에 서로 간에 데이터 앵커링이 필요하지 않고 밸류 전송만 필요합니다.

두 서비스체인 사이에 브리지가 없을 때 값을 전송하려면 먼저 서비스체인(chainID 1002)에서 Kairos(chainID 1001)로 값을 전송한 다음 Kairos(chainID 1001)에서 다시 서비스체인(chainID 1004)으로 값을 전송해야 합니다. 이는 서비스체인(체인ID 1002)에서 서비스체인(체인ID 1004)으로 한 번에 직접 밸류 전송을 제공하는 것보다 비효율적입니다. 따라서 서비스체인 사이에 직접 브리지를 생성하면 효율적으로 밸류를 전송할 수 있습니다.

전제 조건

  • 두 개의 서비스체인을 설치했다고 가정하고, 각 서비스체인은 Kairos EN에 연결되어 있다고 가정합니다. Kairos에 연결하기를 참조하세요.
  • 또한 크로스체인 밸류 전송을 통해 밸류 전송을 경험했다고 가정합니다.

위 그림과 같이 Kairos에 연결하기를 반복하여 ServiceChain(chianID 1004)을 추가로 설치합니다.

노드에는 메인 브리지와 서브 브리지가 각각 하나씩만 있을 수 있습니다. 이 예제에서는 설명의 편의를 위해 아직 메인 브리지와 서브 브리지가 모두 없는 노드인 SCN-L2-03과 SCN-L2-07에 브리지를 연결해 보겠습니다.

1단계: SCN-L2-03 노드의 KNI 확인

SCN 노드에서 연결할 때 사용되는 정보인 SCN-L2-03의 KNI를 기록해 두세요. 이 값은 다음 단계에서 main-bridges.json을 생성할 때 사용됩니다.


SCN-L2-03$ kscn attach --datadir ~/data
> mainbridge.nodeInfo.kni
"kni://...39047242eb86278689...@[::]:50505?discport=0"

2단계: 메인 브리지 생성

SCN-L2-07(참고: chianID 1004)에 로그온하고 ~/datamain-bridges.json을 생성합니다. @ 문자 뒤에 있는 [::]를 EN 노드의 IP 주소로 바꿉니다.


$ echo '["kni://...39047242eb86278689...@192.168.0.3:50505?discport=0"]' > ~/data/main-bridges.json

3단계: SCN 구성 후 재시작

SCN-L2-07 노드의 셸에서 kscn-XXXXX-amd64/conf/kscnd.conf를 편집합니다. 각 서비스체인은 이미 Kairos EN에 앵커링되어 있으므로 형제간 데이터 앵커링은 필요하지 않습니다. 따라서 SC_ANCHORING을 0으로 설정합니다.


...
SC_SUB_BRIDGE=1
...
SC_PARENT_CHAIN_ID=1002
...
SC_ANCHORING=0
...

SCN-L2-07 노드에서 kscnd 재시작


SCN-L2-07$ kscnd stop
Shutting down kscnd: Killed
SCN-L2-07$ kscnd start
Starting kscnd: OK

subbridge.peers.length를 확인하여 SCN-L2-07이 SCN-L2-03에 연결되어 있는지 확인합니다.


SCN-L2-07$ kscn attach --datadir ~/data
> subbridge.peers.length
1

밸류 전송의 경우, 체인ID 1002에 해당하는 정보를 메인 브리지 정보로 사용하고 체인ID 1004에 해당하는 정보를 서브 브리지로 설정하면 체인 간 밸류 전송에서와 같이 형제 체인 간 밸류 전송이 가능합니다.

페이지를 개선해 주세요