IP Library Granted Patent US 11,743,328
Granted Patent B2
US 11,743,328 · App. 17/592,387 · Granted Aug 29, 2023

Computer-implemented system and method for propagation and communication of data in a network such as a blockchain network

Inventors: Silvia Bartolucci (London, GB); Daniel Joseph (London, GB); Simone Madeo (London, GB)
Assignee: nChain Licensing AG
H04L67/108G06Q20/065H04L45/16H04L63/1441
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,743,328
App. No.
17/592,387
Granted
Aug 29, 2023
Kind
B2
Abstract

A method of propagating data packets in a network of nodes is disclosed. The method, implemented at one of the nodes, includes: generating at least one data packet of a first type; collecting a set of data packets of the first type during a first time period, the set including the at least one generated data packet and at least one data packet of the first type received from one or more first nodes in the network; and for each data packet in the set: randomly select two or more neighbouring nodes connected to said one of the nodes; transmit, to each of the two or more selected neighbouring nodes: the data packet, wherein the two or more selected neighbouring nodes are configured to relay the data packet to one or more second nodes in the network using a mode of data propagation that is arbitrarily selected for that neighbouring node. The invention is particularly suited for implementation on a blockchain network such as, for example, the Bitcoin blockchain.

Claims (31)

1. A node to propagate data packets in a network of nodes, each node in the network having one or more connections to other nodes, the node comprising:

a processor;

a network interface to provide network connectivity; and

memory including processor-executable instructions that, when executed by the processor, cause the processor to:

generate at least one data packet of a first type;

collect a set of data packets of the first type during a first time period, the set including the at least one generated data packet and at least one data packet of the first type received from one or more first nodes in the network;

arbitrarily select two or more neighbouring nodes connected to the node for each data packet in the set; and

transmit each data packet in the set to the selected two or more neighbouring nodes in response to a triggering condition being met.

2. The node claimed in claim 1 , wherein the triggering condition is based collection of a sufficient number of incoming data packets and/or collection of incoming data packets for a sufficient amount of time.

3. The node claimed in claim 2 , wherein the triggering condition comprises expiry of a predetermined duration since a time of generation of the at least one data packet of the first type by the node.

4. The node claimed in claim 2 , wherein the triggering condition comprises expiry of a predetermined duration since a time of receipt of a first of the at least one data packet of the first type from the one or more first nodes.

5. The node claimed in claim 2 , wherein the triggering condition comprises a number of data packets collected during the first time period reaching a threshold number.

6. The node claimed in claim 1 , wherein the first time period has a predefined length.

7. The node claimed in claim 1 , wherein the instructions, when executed, prevent the processor from transmitting any data packets of the first type during the first time period.

8. The node claimed in claim 1 , wherein the node is further configured to transmit a command to the receiving node to forward the data packet using a randomly selected mode of propagation.

9. The node claimed in claim 8 , wherein the command is transmitted with the data packet.

10. The method claimed in claim 9 , wherein the first time period has a predefined length.

11. The method claimed in claim 9 , wherein the instructions, when executed, prevent the processor from transmitting any data packets of the first type during the first time period.

12. The method claimed in claim 9 , further comprising the step of:

transmitting a command to the receiving node to forward the data packet using a randomly selected mode of propagation.

13. The method according to claim 12 , wherein the command is transmitted with the data packet.

14. A non-transitory processor-readable medium storing processor-executable instructions to participate in a process for propagating data packets in a network of nodes, wherein the processor-executable instructions, when executed by a processor in one of the participating nodes, cause the processor to carry out the method claimed in claim 1 .

15. A computer-implemented method of propagating data packets in a network of nodes, each node in the network having one or more connections to other nodes, the method, implemented at one of the nodes, comprising:

generating at least one data packet of a first type;

collecting a set of data packets of the first type during a first time period, the set including the at least one generated data packet and at least one data packet of the first type received from one or more first nodes in the network;

arbitrarily selecting two or more neighbouring nodes connected to the node for each data packet in the set; and

transmitting each data packet in the set to the selected two or more neighbouring nodes in response to a triggering condition being met.

16. The method claimed in claim 15 , wherein the triggering condition is based collection of a sufficient number of incoming data packets and/or collection of incoming data packets for a sufficient amount of time.

17. The method claimed in claim 16 , wherein the triggering condition comprises expiry of a predetermined duration since a time of generation of the at least one data packet of the first type by the node.

18. The method claimed in claim 15 , wherein the triggering condition comprises expiry of a predetermined duration since a time of receipt of a first of the at least one data packet of the first type from the one or more first nodes.

19. The method claimed in claim 15 , wherein the triggering condition comprises a number of data packets collected during the first time period reaching a threshold number.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 5, 2022
From: BARTOLUCCI, SILVIA; JOSEPH, DANIEL; MADEO, SIMONE
To: NCHAIN HOLDINGS LTD.
Reel/Frame 058900/0531 →
CHANGE OF NAME Recorded Feb 5, 2022
From: NCHAIN HOLDINGS LTD
To: NCHAIN LICENSING AG
Reel/Frame 058960/0636 →
Priority Claims (1)
GB 1719654 · Nov 27, 2017 · national
Continuity (2)
Continuation 16767559
Related Publication 20220232068A1 · Jul 21, 2022
Cited By (1)
US 12,445,930