[가상화폐] 이더리움 프로토콜 매니져로부터 insertChain함수 호출 까지(Fetcher)

이더리움 트렌젝션의 실행 (https://steemit.com/ethereum/@sigmoid/4mtmow) 을 통해
이더리움 트렌젝션이 insertChain이라는 함수에서 시작하며, 트렌젝션의 실행은
결국 어카운트의 잔고를 업데이트하는 것임을 확인하였습니다.

이번엔 insertChain함수는 언제 호출되는지를 분석해 보았습니다.
우선 이더리움 프로토콜 매니져의 생성과 실행은 간단하게 아래 그림에서 확인가능합니다.
geth가 실행되면 NewProtocolManager함수와 manager.Start함수가 실행됩니다

image.png

  1. NewProtocolManager함수에서 이더리움 프로토콜 매니져를 생성하면서 노드간의 데이터를 동기화 하기 위해 Fetcher를 생성하고 자신의 블록체인의 insertChain함수를 등록해둡니다.
  2. 프로토콜 매니져가 시작되면 아래의 그림처럼 총 4개의 go루틴이 시작됩니다 그중 syncer루틴에서 Fetcher를 실행하게 됩니다.
  3. fetcher의 loop루틴에서 priority queue로 부터 블록을 가지고와 등록된 insertChain함수를 호출합니다.

하나더, 그럼 큐에는 블록을 누가 넣지?? 라는 생각이 들어 찾아보니,
p2p 노드의 핸들러에서, 등록된 채널을 통해 큐로 블록을 넣어줍니다.

p2p 노드로 블록을 전달하는 것은 마이닝 - 트렌젝션이 풀에서 블록에 포함되기까지(https://steemit.com/ethereum/@sigmoid/2mnkfg) 에서 다룬적이 있었습니다.

이제 조금씩 글들이 연결고리를 가지게 되는것 같습니다.

image.png

지극히 개인적으로 이더리움 주석 한글화 프로젝트를 진행하고 있습니다.
https://github.com/NAKsir-melody/go-ethereum

0
0
이 글을 페이스북으로 퍼가기 이 글을 트위터로 퍼가기 이 글을 카카오스토리로 퍼가기 이 글을 밴드로 퍼가기

블록체인 기술

번호 제목 글쓴이 날짜 조회수
89 가상화폐 [Ethereum] Ethernaut 풀이 - 0.Hello Ethenaut icon Work4Block 06-21 2,497
88 가상화폐 [Ethereum] Ethernaut 소개 icon Work4Block 06-21 3,257
87 정보 [개념 정리] 온 체인(Onchain), 오프 체인(Offchain)이 무엇인가? icon Work4Block 06-21 3,615
86 가상화폐 나의 이더리움 분석기 - 중간정리 - 2 icon Work4Block 06-21 3,133
85 가상화폐 이더리움이 go를 사용하는 이유(개인적인 생각) icon Work4Block 06-21 2,332
84 가상화폐 [Ethereum] Smart Contract 개발을 위한 환경 세팅 (Remix, Ganache) icon Work4Block 06-19 7,636
83 가상화폐 나의 이더리움 분석기 - 중간정리 - 1 icon Work4Block 06-19 5,145
82 가상화폐 이더리움 프로토콜 매니져로부터 insertChain함수 호출 까지(Fetcher) icon Work4Block 06-18 2,461
81 가상화폐 이더리움 트렌젝션의 실행 icon Work4Block 06-18 2,430
80 가상화폐 나의 이더리움 분석기 - Light Ethereum Service icon Work4Block 06-18 3,680
79 가상화폐 Technical White Paper for QtumX icon Work4Block 06-09 3,377
78 가상화폐 Traceto(트레이스투) 코인 분석 icon Work4Block 06-09 2,516
77 가상화폐 엑심체인[Eximchain] 제대로 알기 2편 icon Work4Block 06-09 2,367
76 가상화폐 엑심체인[Eximchain] 제대로 알기 1편 icon Work4Block 06-09 2,625
75 가상화폐 Eximchain 미래의 무역과 상거래 플랫폼[백서포함] icon Work4Block 06-09 2,429
74 가상화폐 어거(Augur) 토큰 이코노미에 대한 이슈와 평가 icon Work4Block 06-08 2,541
73 가상화폐 어거(Augur)의 토큰이코노미 설명 icon Work4Block 06-08 2,425
72 가상화폐 팩텀(Factom)의 프로토콜 icon Work4Block 06-08 2,873
71 가상화폐 팩텀(Factom)의 토큰 공급 방식과 가치평가 방법 icon Work4Block 06-08 2,461
70 가상화폐 비트코인의 원리 PART 7: 비트코인의 원리와 인터넷의 원리를 마치며 (에필로그) icon Work4Block 06-07 4,861