[가상화폐] 이더리움 프로토콜 매니져로부터 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
이 글을 페이스북으로 퍼가기 이 글을 트위터로 퍼가기 이 글을 카카오스토리로 퍼가기 이 글을 밴드로 퍼가기

블록체인 기술

번호 제목 글쓴이 날짜 조회수
36 정보 비트코인의 원리 PART 5-1: 블록체인 원리 icon Work4Block 06-07 4,661
35 정보 게임계 암호화폐 유나의 옷장과 제도권심사 소식 icon Work4Block 06-07 4,359
34 정보 스마트 컨트랙트의 활용을 알아보자 icon Work4Block 06-07 4,895
33 정보 암호화폐 공공의 적, 51% 공격에 대해 알아볼까? icon Work4Block 05-30 4,860
32 정보 EOS 기반 방치형 RPG게임 제작 #1 icon Work4Block 05-27 4,687
31 정보 나만 몰랐던 블록체인 상식) 스팀잇 데이터는 어디에 저장될까? icon Work4Block 05-26 4,159
30 정보 KEEP!T History: 오스트리아 학파, 탈 중앙화(decentralization)를 선언하다. icon Work4Block 05-24 4,511
29 정보 KEEP!T History: EOS의 경제학적 기반을 세운 학파. icon Work4Block 05-18 3,667
28 정보 EOS(2): 채굴자원 확장문제 icon Work4Block 05-17 3,885
27 정보 EOS(1): 스팸 공격 방어방법 icon Work4Block 05-17 4,102
26 정보 쉽게 이해하는 블록체인 기술(3): 합의 알고리즘 icon Work4Block 05-17 4,448
25 정보 쉽게 이해하는 블록체인 기술(2) icon Work4Block 05-17 4,212
24 정보 쉽게 이해하는 블록체인 기술(1) icon Work4Block 05-17 4,899
23 정보 KEEP!T History: 장기적으로 볼 때 우리는 모두 죽는다 icon Work4Block 05-17 4,574
22 정보 토큰 이코노미 설계의 빅 픽쳐와 행위자(Actor)에 대해 icon Work4Block 05-16 4,279
21 정보 PoW를 다시 생각한다 icon Work4Block 05-09 4,277
20 정보 Modified Merkle Patricia Trie - ethereum이 상태를 저장하는 방법 icon Work4Block 05-08 5,336
19 정보 '스마트 계약'의 의미이론에 대해 icon Work4Block 05-08 4,722
18 정보 블록체인 진화의 방향으로서의 Blockchain inter-connection 이슈들 icon Work4Block 05-07 3,616
17 정보 KEEP!T Column: 아나키, 국가, 그리고 블록체인. icon Work4Block 05-04 3,986