IP Library Granted Patent US 11,740,975
Granted Patent B2
US 11,740,975 · App. 17/363,276 · Granted Aug 29, 2023

System and method for managing blockchain nodes

Inventors: Eric Scrivner (San Francisco, CA); Maksym Naboka (San Francisco, CA); Ales Katona (San Francisco, CA)
Assignee: Coinbase, Inc.
G06F11/1451G06F16/2379G06F16/27G06F21/602G06F2201/80G06F2201/82G06F2201/84
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,740,975
App. No.
17/363,276
Granted
Aug 29, 2023
Kind
B2
Abstract

Systems and methods for managing blockchain nodes. Blockchain node clusters are created and used to process blockchain requests. Blockchain clusters are managed by adding nodes to a cluster, stopping nodes in the cluster, and generating snapshots of state. of one or more nodes.

Claims (39)

1. A system comprising a non-transitory computer readable medium having stored thereon software instructions that, when executed by a processing system, cause the processing system to perform operations comprising:

generating a snapshot of a blockchain chain state of a blockchain node;

identifying a new blockchain node; and

initializing the new blockchain node using the snapshot, wherein a full chain state is initialized for the new blockchain node, wherein the full chain state is determined from the snapshot, an initial snapshot, and a set of intervening snapshots between the initial snapshot and the snapshot.

2. The system of claim 1 , wherein the blockchain chain state captured by the snapshot comprises a change in the blockchain chain state over a prior snapshot.

3. The system of claim 1 , wherein generating the snapshot of the blockchain chain state comprises:

identifying a node configuration to snapshot;

identifying a node agent that manages the blockchain node having the identified node configuration; and

controlling the identified node agent to generate the snapshot of the blockchain chain state of the blockchain node.

4. The system of claim 1 , the operations further comprising verifying blocks in the snapshot based on a blockchain protocol associated with the blockchain chain state.

5. The system of claim 1 , wherein the snapshot comprises an incremental backup of the blockchain chain state over a prior snapshot of the blockchain chain state, and wherein the prior snapshot is generated from a secondary blockchain node, different from the blockchain node.

6. The system of claim 1 , wherein the snapshot is stored in a storage volume, wherein initializing the new blockchain node comprises mounting the storage volume to the new blockchain node.

7. The system of claim 1 , wherein the blockchain node is part of a blockchain node cluster for a blockchain network, wherein the blockchain node is selected for snapshot generation based on a set of health parameters, comprising at least one of a block height, latest block hash, total work on a blockchain synchronized with the blockchain node, or node telemetry.

8. A system comprising a non-transitory computer readable medium having stored thereon software instructions that, when executed by a processing system, cause the processing system to perform operations comprising:

generating a snapshot of a blockchain chain state of a blockchain node synchronized with a blockchain network, wherein generating the snapshot comprises stopping the blockchain node from synchronizing with the blockchain network during snapshot generation;

identifying a new blockchain node; and

initializing the new blockchain node using the snapshot.

9. The system of claim 8 , wherein the blockchain chain state captured by the snapshot comprises a change in the blockchain chain state over a prior snapshot.

10. The system of claim 8 , wherein generating the snapshot of the blockchain chain state comprises:

identifying a node configuration to snapshot;

identifying a node agent that manages the blockchain node having the identified node configuration; and

controlling the identified node agent to generate the snapshot of the blockchain chain state of the blockchain node.

11. The system of claim 8 , the operations further comprising verifying blocks in the snapshot based on a blockchain protocol associated with the blockchain chain state.

12. The system of claim 8 , wherein the snapshot comprises an incremental backup of the blockchain chain state over a prior snapshot of the blockchain chain state, and wherein the prior snapshot is generated from a secondary blockchain node, different from the blockchain node.

13. The system of claim 8 , wherein the blockchain node is part of a blockchain node cluster for the blockchain network, wherein the blockchain node is selected for snapshot generation based on a set of health parameters, comprising at least one of a block height, latest block hash, total work on a blockchain synchronized with the blockchain node, or node telemetry.

14. A system comprising a non-transitory computer readable medium having stored thereon software instructions that, when executed by a processing system, cause the processing system to perform operations comprising:

generating a snapshot of a blockchain chain state of a blockchain node;

identifying a new blockchain node;

initializing the new blockchain node using the snapshot, wherein the blockchain node and the new blockchain node are both part of a blockchain node cluster; and

receiving, from a client, a blockchain transaction and routing the blockchain transaction to at least one blockchain node within the blockchain node cluster.

15. The system of claim 14 , wherein the blockchain chain state captured by the snapshot comprises a change in the blockchain chain state over a prior snapshot.

16. The system of claim 14 , wherein generating the snapshot of the blockchain chain state comprises:

identifying a node configuration to snapshot;

identifying a node agent that manages the blockchain node having the identified node configuration; and

controlling the identified node agent to generate the snapshot of the blockchain chain state of the blockchain node.

17. The system of claim 14 , the operations further comprising verifying blocks in the snapshot based on a blockchain protocol associated with the blockchain chain state.

18. The system of claim 14 , wherein the snapshot comprises an incremental backup of the blockchain chain state over a prior snapshot of the blockchain chain state, and wherein the prior snapshot is generated from a secondary blockchain node, different from the blockchain node.

19. The system of claim 14 , wherein the snapshot is stored in a storage volume, wherein initializing the new blockchain node comprises mounting the storage volume to the new blockchain node.

20. The system of claim 14 , wherein the blockchain node is part of the blockchain node cluster for a blockchain network, wherein the blockchain node is selected for snapshot generation based on a set of health parameters, comprising at least one of a block height, latest block hash, total work on a blockchain synchronized with the blockchain node, or node telemetry.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 30, 2021
From: KATONA, ALES; SCRIVNER, ERIC; NABOKA, MAKSYM
To: COINBASE, INC.
Reel/Frame 056716/0766 →
Continuity (7)
Continuation 17023716 · Sep 17, 2020
Continuation In Part 16773149 · Jan 27, 2020
Provisional Application 62950252 · Dec 19, 2019
Provisional Application 62901705 · Sep 17, 2019
Provisional Application 62822574 · Mar 22, 2019
Provisional Application 62797026 · Jan 25, 2019
Related Publication 20210326212A1 · Oct 21, 2021