block syncronization : 리액트가 초기화되고, peer로부터 block 다운로드 시작
빠진 block을 peer로부터 받아 검증 후 체인에 추가
peer management : 데이터 요청과 응답 수혈, 에러 처리를 포함한 peer와의 상호작용 관리
fast sync : bc reactor는 fast sync mode를 사용해 다른 네트워크를 catch up할 수 있다.
해당 모드에서 노드는 header를 다운로드, 검증과 여러 peer로부터 블록을 받아오는걸 병렬적으로 처리
state verification : 동기화 과정에서 bc reactor는 받은 block data (block header, commit sig, evidence …) 를 검증
dir : node/node.go
config에서 fastSync의 버전 확인 후, 대응하는 버전의 인스턴스를 생성해 리턴
switch config.FastSync.Version {
case "v0":
bc.Reactor = bcv0.NewBlockchainReactor(state.Copy(), blockExec, blockStore, fastSync)
// ...
}
return bcReactor, nil