CN114157671A - Method for distributing information carried by blockchain network to a plurality of client nodes - Google Patents

Method for distributing information carried by blockchain network to a plurality of client nodes Download PDF

Info

Publication number
CN114157671A
CN114157671A CN202111421228.4A CN202111421228A CN114157671A CN 114157671 A CN114157671 A CN 114157671A CN 202111421228 A CN202111421228 A CN 202111421228A CN 114157671 A CN114157671 A CN 114157671A
Authority
CN
China
Prior art keywords
node
configuration information
nodes
information
type
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202111421228.4A
Other languages
Chinese (zh)
Inventor
印明亮
魏亚文
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Alipay Hangzhou Information Technology Co Ltd
Original Assignee
Alipay Hangzhou Information Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Alipay Hangzhou Information Technology Co Ltd filed Critical Alipay Hangzhou Information Technology Co Ltd
Priority to CN202111421228.4A priority Critical patent/CN114157671A/en
Publication of CN114157671A publication Critical patent/CN114157671A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • H04L67/1059Inter-group management mechanisms, e.g. splitting, merging or interconnection of groups

Abstract

The present disclosure relates to a method of distributing information carried by a blockchain network to a plurality of client nodes, the blockchain network comprising first blockchain nodes, the plurality of client nodes comprising one or more first class nodes and one or more second class nodes, the method comprising: generating information for a target aspect of the plurality of client nodes outside the blockchain network by running an intelligent contract on the blockchain network; listening, by a first type node of the one or more first type nodes, for a receipt at the first block link point, and in response to a production of a subject associated with the target aspect in the receipt at the first block link point, obtaining, by the first type node, first data associated with the target aspect from the first block link point; obtaining and storing, by the first type node, information of the target aspect based on the first data; and obtaining, by a first second-class node of the one or more second-class nodes, information on the target aspect from the first-class node. The present disclosure also relates to a method and system for configuring a set of network nodes, and an electronic device.

Description

Method for distributing information carried by blockchain network to a plurality of client nodes
Technical Field
One or more embodiments of the present disclosure relate to methods of distributing information carried by a blockchain network to a plurality of client nodes, methods and systems for configuring a set of network nodes, and electronic devices.
Background
Herein, for convenience and ease of reference, the term "blockchain" is used. A block chain is a chain database composed of a series of blocks, and each block records a Hash value of the previous block in addition to the data of the block. What is meant when this term is used herein may include, in addition to the blockchain described above, alternate chain, side chain and trade chain techniques, licensed and unlicensed ledgers, shared ledgers and variations thereof, and the like.
In recent years, services using block-chain technology have been actively developed. Blockchain techniques can prevent tampering with enrollment data and store such enrollment data with high reliability through mutual supervision by multiple participants. For this reason, there is a need for new technologies.
Disclosure of Invention
It is an object of one or more embodiments of the present disclosure to provide a method, a system and an electronic device for configuring a set of network nodes for distributing information carried by a blockchain network to a plurality of client nodes.
In accordance with an aspect of one or more embodiments of the present disclosure, there is provided a method of distributing information carried by a blockchain network to a plurality of client nodes, the blockchain network comprising first blockchain nodes, the plurality of client nodes comprising one or more first class nodes and one or more second class nodes, the method comprising: generating information for a target aspect of the plurality of client nodes outside the blockchain network by running an intelligent contract on the blockchain network; listening, by a first type node of the one or more first type nodes, for a receipt at the first block link point, and in response to generating a receipt containing a subject matter associated with the target aspect at the first block link point, obtaining, by the first type node, first data associated with the target aspect from the first block link point; obtaining and storing, by the first type node, information of the target aspect based on the first data; and obtaining, by a first second-class node of the one or more second-class nodes, information on the target aspect from the first-class node.
In accordance with yet another aspect of one or more embodiments of the present disclosure, there is provided a method for configuring a set of network nodes, comprising: generating configuration information for a set of network nodes outside of a blockchain network by running intelligent contracts on the blockchain network; monitoring receipts at block chain nodes in the block chain network by a first type node in the network node set, generating a receipt containing a theme associated with the configuration information in response to the block chain nodes, acquiring the configuration information from the block chain nodes by the first type node, storing the configuration information, and configuring the self node according to the configuration information; and acquiring the configuration information from the first type node by a second type node in the network node set, and configuring the node according to the configuration information.
In accordance with yet another aspect of one or more embodiments of the present disclosure, there is provided a system for configuring a set of network nodes, comprising: a blockchain network configured to run intelligent contracts to generate configuration information for a set of network nodes outside of the blockchain network; a first class of node comprising one or more nodes in the network node set, the first class of node configured to listen for receipts at tile link points in the blockchain network and, in response to generating a receipt containing a topic associated with the configuration information at the tile link point, obtain the configuration information from the tile link point, store the configuration information, and perform configuration of its own node according to the configuration information; and a second type node including one or more nodes in the network node set except the first type node, the second type node being configured to acquire the configuration information from the first type node and perform configuration of its own node according to the configuration information.
In accordance with yet another aspect of one or more embodiments of the present disclosure, there is provided an electronic device including: a first communication module configured to listen for receipts at least one blockchain node in a blockchain network and to retrieve data associated with a target aspect from the at least one blockchain node in response to the at least one blockchain node generating a receipt containing a subject associated with the target aspect, wherein the blockchain network generates information for the target aspect for a plurality of client nodes including the electronic device outside of the blockchain network by running a smart contract, the first communication module establishing encrypted communication with the at least one blockchain node via an SDK of the blockchain network to retrieve data associated with the target aspect from the at least one blockchain node; a data processing module configured to derive information on the target aspect based on the data; a storage module configured to store information of the target aspect; and a service providing module configured to provide the information of the target aspect stored in the storage module to other devices in response to a query request of the other devices.
Other features of the present disclosure and advantages thereof will become apparent from the following detailed description of exemplary embodiments thereof, which proceeds with reference to the accompanying drawings.
Drawings
The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate one or more embodiments of the disclosure and together with the description, serve to explain the principles of one or more embodiments of the disclosure.
One or more embodiments of the disclosure may be more clearly understood from the following detailed description, taken with reference to the accompanying drawings, in which:
fig. 1 is a schematic structural diagram of a communication system in which one or more exemplary embodiments according to the present disclosure can be applied.
Fig. 2 is a schematic structural diagram of a system to which a method of distributing information carried by a blockchain network to a plurality of client nodes according to one or more exemplary embodiments of the present disclosure is applied.
Fig. 3 is a schematic structural diagram of a system to which a method of distributing information carried by a blockchain network to a plurality of client nodes according to one or more exemplary embodiments of the present disclosure is applied.
Fig. 4 is a schematic block diagram of a system for configuring a set of network nodes according to one or more exemplary embodiments of the present disclosure.
Fig. 5 is a schematic block diagram of a system for configuring a set of network nodes according to one or more exemplary embodiments of the present disclosure.
Fig. 6 is a schematic block diagram of a system for configuring a set of network nodes according to one or more exemplary embodiments of the present disclosure.
Fig. 7 is a schematic structural diagram of an electronic device according to one or more exemplary embodiments of the present disclosure.
FIG. 8 is an exemplary block diagram of a general purpose hardware system that may be applied in accordance with one or more exemplary embodiments of the present disclosure.
Detailed Description
In order to make those skilled in the art better understand the technical solutions in the present specification, the technical solutions in the embodiments of the present specification will be clearly and completely described below with reference to the drawings in the embodiments of the present specification, and it is obvious that the described embodiments are only a part of the embodiments of the present specification, and not all of the embodiments. It should be understood, however, that one or more embodiments of the present disclosure may be presented in a number of different ways and are not limited to the embodiments described below. It is also to be understood that one or more embodiments of the present disclosure can be combined in various ways to provide further additional embodiments. All other embodiments obtained by a person skilled in the art based on the embodiments in the present specification without any inventive step should fall within the scope of protection of the present specification.
It should be understood that like reference numerals refer to like elements throughout the several views. In the drawings, the size of some of the features may be varied for clarity.
It is to be understood that the terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting. All terms (including technical and scientific terms) used herein have the meaning commonly understood by one of ordinary skill in the art unless otherwise defined. Well-known functions or constructions may not be described in detail for brevity and/or clarity.
In this document, the term "coupled" is intended to encompass a physical, electrical, and/or communicative coupling of one feature to another, and may or may not have intervening features between the one feature and the other feature. When the connection is a communication connection, even though reference is made to a and B as being "directly connected," it is intended to emphasize that there is no feature or features emphasized by one or more embodiments of the present disclosure between the connection of a and B, but does not represent a limitation that the connection between a and B is not through any element, and those skilled in the art will understand that the connection between a and B may be through a cable, a router, a gateway, a channel, a link, a network, and the like. It should be noted that in the drawings of one or more embodiments of the present disclosure, a direct connection or an indirect connection between a and B is represented by a straight line or other graphic element connected between a and B.
Herein, the term "a or B" includes "a and B" and "a or B" rather than exclusively including only "a" or only "B" unless otherwise specifically stated.
In this document, the term "exemplary" means "serving as an example, instance, or illustration," and not as a "model" that is to be reproduced exactly. Any implementation exemplarily described herein is not necessarily to be construed as preferred or advantageous over other implementations. Furthermore, there is no intention to be bound by any expressed or implied theory presented in the preceding technical field, background, brief summary or the detailed description.
In this document, the term "substantially" is intended to encompass any minor variations due to design or manufacturing imperfections, tolerances of the devices or components, environmental influences and/or other factors. The term "substantially" also allows for differences from a perfect or ideal situation due to parasitics, noise, and other practical considerations that may exist in a practical implementation.
In addition, "first," "second," and like terms may also be used herein for reference purposes only, and thus are not intended to be limiting. For example, the terms "first," "second," and other such numerical terms referring to structures or elements do not imply a sequence or order unless clearly indicated by the context.
It will be further understood that the terms "comprises/comprising," "includes" and/or "including," when used herein, specify the presence of stated features, integers, steps, operations, elements, and/or components, but do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and/or groups thereof.
It should be noted that herein, when a plurality of identical or similar elements are provided, they may be labeled in the figures using two-part reference numerals (e.g., first-type node 206-1). These elements may be referred to herein individually by their full reference number (e.g., first-type node 206-1) or collectively by a first portion of their reference number (e.g., first-type node 206).
For ease of understanding, the following description refers to terms that are involved in one or more embodiments of the present disclosure.
Node/network node: participants in the network. Each participant in the network is a node that participates in network set-up and data exchange.
Block chain network: a system for commonly maintaining chained data based on blockchain techniques through consensus rules by multiple participants on a distributed network.
Block chain node: a network node in a blockchain network. Each blockchain node has a complete copy of the ledger, and has the ability to participate in blockchain network consensus and ledger maintenance.
A client node: to distinguish from "blockchain nodes," network nodes that are served by (e.g., provided with information about one or more aspects carried by) a blockchain network are referred to herein as "client nodes.
Intelligent contract: a computer executable program that can process input to produce a result such that contractual or agreement terms that can be automatically executed using a blockchain network.
Event: unless otherwise indicated, this is referred to herein as a specific event occurring in the blockchain network or a specific notification of an intelligent contract setting. For example, the event may include the creation of a new tile, the user initiating a new transaction, a smart contract-specific method being invoked, etc.
Internet of things (Internet of things, IoT): a system of interconnected and/or interconnected devices. In the system, devices acquire, collect, and/or transfer content or data (such as, for example, text files, images, audio files, video files, web pages, measurements of physical phenomena, etc.) over one or more communication networks.
An IoT device: a node in the Internet of things can be a physical object or a virtual object. IoT devices generally refer to devices such as sensors embedded in the physical world and connected to computing resources over a network, which may be used to collect data or perform actions, etc.
In an IoT or IoT-like (e.g., distributed system) scenario, each device in an IoT or IoT-like network needs initial configuration information after startup. The administrator may generate or alter the configuration information through the services of the configuration center. These configuration information may be carried over a blockchain network to ensure the reliability of the stored configuration information. In this case, the services of the configuration center may be implemented by intelligent contracts that can be run in the blockchain network. Each participant of the blockchain network modifies the configuration information by voting, etc., on the configuration information in the intelligent contract.
The information carried over the blockchain network needs to be sent down to each device in the IoT or IoT-like network. One way to implement this is that each device in the IoT or IoT-like network subscribes to a specific event from each tile chain node in the tile chain network (e.g., by listening to a specific topic (topic) in a receipt at the corresponding tile chain node), so that each device can obtain information for the device in the IoT or IoT-like network from the tile chain node after the information is generated, and use this information, for example, to configure its own device. In such implementations, there is a potential for multiple devices (e.g., IoT devices or various components of a distributed system) to subscribe to on-chain events simultaneously. And the number of the event subscription connections of the block chain nodes has an upper limit, and if more equipment exists, the block chain nodes need capacity expansion, so that the cost is increased. Furthermore, if an event subscription connection between a device and a blockchain node is broken, the device cannot obtain information generated in the blockchain network during the event subscription connection break. In addition, when a new device accesses the network, configuration information for initializing the device cannot be obtained in time.
According to one or more embodiments of the present disclosure, information carried by a blockchain network may be conveniently distributed to a plurality of client nodes. In some embodiments, the information carried by the blockchain network (including, for example, storage and maintenance, etc.) may be, for example, configuration information, action/action notifications, action logs, etc. for the various client nodes. In accordance with one or more embodiments of the present disclosure, configuration information for a set of network nodes may be carried over a blockchain network and nodes in the set of network nodes are configured with such configuration information. In some embodiments, the client nodes or nodes in the network node set described above may be IoT devices.
Fig. 1 is a schematic block diagram of a communication system 100 in which one or more exemplary embodiments according to the present disclosure can be applied. The communication system 100 includes a blockchain network 102 and a plurality of client nodes 108 that are serviced by the blockchain network 102. The plurality of client nodes 108 form a network node set. In the communication system 100, one or more aspects of information carried by the blockchain network 102, such as configuration information, action/action notifications, action logs, etc. for various client nodes 108, may be distributed to a plurality of client nodes 108.
Blockchain network 102 includes a plurality of participants, i.e., a plurality of blockchain nodes 104. Each blockchain node 104 collectively maintains the blockchain network 102 based on blockchain techniques through consensus rules. Each blockchain node 104 has a complete copy of the ledger with the ability to participate in blockchain network 102 consensus and ledger maintenance. In each tile generated at each blockchain node 104, there may be stored a respective transaction to which the tile relates, a corresponding receipt recording the results of the respective transaction, etc., and the status of the respective account maintained by the blockchain network 102. Information, such as configuration information, action/operation notifications, operation logs, etc., for various aspects of the plurality of client nodes 108 in the network node set may be generated (including creation, update, and deletion) by initiating the running of intelligent contracts on the blockchain network 102 by accounts having authority to manage the plurality of client nodes 108 in the network node set.
Herein, the blockchain network 102 may be a federated network operated by multiple organizations or a private network operated by a single organization. However, there is no particular limitation on the type of the blockchain network 102. For example, the blockchain network 102 may be a public network that does not specifically restrict participants.
There is no particular limitation on the type of communication method or line used in the block chain network 102. For example, blockchain network 102 may be implemented by a leased line network such as an internet protocol-virtual private network (IP-VPN). Further, the blockchain network 102 may be implemented by a public line network such as the internet, a telephone line network, or a satellite communication network. Further, the blockchain network 102 may be implemented by various Local Area Networks (LANs), Wide Area Networks (WANs), and the like including ethernet (registered trademark). Further, the block chain network 102 may be implemented by a wireless communication network such as Wi-Fi (registered trademark) or bluetooth (registered trademark).
Each client node 108 may be any participant in one or more networks 116. The one or more networks 116 may include a communication network made up of some of the various client nodes 108, e.g., a machine-to-machine (M2M) network, an IoT network, etc. Any of the one or more networks 116 can be a fixed network (e.g., ethernet, fiber, ISDN, PLC, etc.) or a wireless network (e.g., WLAN, cellular, etc.) or a network of heterogeneous networks. For example, any of the one or more networks 116 may include multiple access networks that provide content, such as voice, data, video, messaging, broadcast, etc., to multiple users. For example, any of the one or more networks 116 can employ one or more channel access methods, such as Code Division Multiple Access (CDMA), Time Division Multiple Access (TDMA), Frequency Division Multiple Access (FDMA), orthogonal FDMA (ofdma), single carrier FDMA (SC-FDMA), and the like. Further, any of the one or more networks 116 can include other networks, such as a core network, the internet, a sensor network, an industrial control network, a personal area network, a converged personal network, a satellite network, a home network, or an enterprise network.
The client nodes 108 may communicate with each other via a carrier network or the like or via direct radio links and/or wireline. For example, one client node 108 may collect data and send the data to another client node 108 over the carrier network or a direct radio link. Examples of client nodes 108 include, but are not limited to, tablets, smart phones, medical devices, temperature and weather monitors, networked automobiles, smart meters, game consoles, personal digital assistants, health and fitness monitors, lights, thermostats, appliances, garage doors, and other actuator-based devices, security devices, smart sockets, and the like.
In some embodiments, some of the client nodes 108 may be components of a distributed system, such as components nodes of a distributed storage system, a distributed computing system, a distributed streaming computing system, a distributed search system, a distributed publish-subscribe message system, a distributed business system, and so forth.
In some embodiments, some of the client nodes 108 may be IoT devices in an IoT network. In these embodiments, IoT devices are often limited in memory, size, functionality, or performance, such that a large number of devices may be deployed to achieve similar performance as high performance devices. However, the IoT device may be a smartphone, laptop, tablet, or PC, or other larger device. Also, the IoT devices may be virtual devices, such as applications on smartphones or other computing devices. The IoT devices may include IoT gateways to connect the IoT devices to other IoT devices and/or to cloud applications for data storage, process control, and the like. The IoT network in which the IoT devices reside may include commercial and home automation devices such as water supply systems, power distribution systems, pipeline control systems, plant control systems, light switches, thermostats, locks, cameras, alarms, motion sensors, and the like.
In one aspect of the disclosure, a method of distributing information carried by a blockchain network to a plurality of client nodes is provided. Fig. 2 and 3 are structural schematic diagrams of a system 200 employing a method of distributing information carried by a blockchain network to a plurality of client nodes according to one or more exemplary embodiments of the present disclosure. The system 200 includes a blockchain network 202 and a plurality of client nodes 206, 208. Blockchain network 202 includes a plurality of blockchain nodes 204. The plurality of client nodes 206, 208 form one or more networks 216. All or a portion of the functionality and/or operation of the blockchain network 202, the blockchain nodes 204, and the one or more networks 216 may be similar to all or a portion of the functionality and/or operation of the blockchain network 102, the blockchain nodes 104, and the one or more networks 116, respectively, as described above, and a detailed description of the overlapping portions is omitted herein.
The plurality of client nodes 206, 208 includes one or more first class nodes 206 and one or more second class nodes 208. The first type of node 206 may be communicatively connected to at least one blockchain node 204 in the blockchain network 202 to obtain data associated with the target aspect from the blockchain node 204. The blockchain network 202 may carry information regarding one or more aspects of the plurality of client nodes 206, 208, such as configuration information, action/operation notifications, operation logs, etc. for the respective client nodes 206, 208. The first type of node 206 may only obtain data associated with the desired target aspect from the tile chain node 204, e.g., data associated with configuration information for the respective client node 206, 208.
In some embodiments, the first type of node 206 may establish encrypted communications with at least one blockchain node 204 through a Software Development Kit (SDK) of the blockchain network 202 to obtain data associated with the target aspect from the blockchain node 204. The first type node 206 may apply for the SDK of the blockchain network 202 from the blockchain network 202 before establishing communication with the blockchain network 202. The first type of node 206 that has the SDK installed can learn information about the IP addresses of the nodes in the blockchain network 202, the public keys of the nodes (or node IDs associated therewith), and how to establish encrypted communications. As such, the first type node 206 may communicate with the blockchain node 204 in the blockchain network 202 via the SDK of the blockchain network 202 to obtain data from the blockchain node 204.
In some embodiments, the first type node 206 may periodically obtain data associated with the target aspect from the blockchain node 204. The acquisition period of the first type node 206 acquiring data from the block link point 204 can be set as required. In some cases, the acquisition period may be set according to the frequency of change in the aspect of the target. For example, a shorter acquisition period may be set for data associated with aspects that change more frequently, such as data associated with action/operation notifications; a longer acquisition period may be set for data associated with aspects that change less frequently, such as data associated with configuration information. In some cases, the acquisition period may be set according to the speed at which the blockchain network 202 generates new tiles. For example, the acquisition period may be set to be approximately equal to the tile generation interval time of the tile chain network 202.
The first type node 206 may periodically acquire data from the block-linked points 204 through a communication connection with the block-linked points 204 according to a set acquisition period. It should be noted that in the drawings of the present application, a connection (e.g., a communication connection) between two entities is represented by a straight line (or other graphical element) connecting the two entities, and such a connection may be established only when needed and not always exist for a long period of time. It should be understood, however, that such a connection may also be present over a longer period of time, and that the first type node 206 may periodically obtain data from the block link point 204 via the connection without having to re-establish such a connection each time data needs to be obtained.
In some cases, the data acquired by the first type node 206 from the block link point 204 may be part or all of the data of one block. In addition to data associated with the target aspect, the acquired data includes other data that is not required. In these cases, the first type node 206 filters the data obtained from the block link points 204 to filter out data associated with the target aspect.
In some embodiments, the first type node 206 may obtain data associated with the target aspect from the block-link point 204 in response to the target aspect at the block-link point 204 being changed. Blockchain nodes 204 may provide event subscription services and subscribers may subscribe to one or more events from blockchain nodes 204. When a subscribed event occurs, blockchain node 204 may output data related to the occurred event to the subscriber. The first class of nodes 206 may use the event subscription service of the blockchain node 204 as a subscriber to obtain data associated with the target aspect. For example, where the information on the target is changed (including created, deleted, modified, etc.) by running a particular intelligent contract on the blockchain network 202, the first-type node 206 may subscribe to the blockchain node 204 for an event in which the particular intelligent contract is invoked. When a subscribed event occurs, i.e., the particular smart contract is invoked, block chain node 204 may output data related to the event to first type node 206. In this example, since the blockchain node 204 only provides the first type node 206 with data related to the events to which it is subscribed, in this case, the first type node 206 does not need to perform data screening to obtain data associated with the target aspect. However, it should be understood that in other examples, first type nodes 206 may subscribe to block link points 204 for events that result in new blocks, events that a user initiates a new transaction, and so on. In these examples, first type node 206 may filter the data obtained from block link point 204 to filter out data associated with the target aspect, as desired.
In these embodiments, the first type node 206 may listen to whether a receipt containing a subject matter associated with the target aspect is generated at the blockchain node 204. As described above, in each tile generated at each blockchain node 204, there may be stored a respective transaction to which the tile relates, a corresponding receipt recording information such as the results of the respective transaction, and the status of the respective account maintained by the blockchain network 202. The format (e.g., several messages per receipt, several topics per message) and content (e.g., the meaning of each topic in each message) of the receipts may be collectively defined by the participants of the blockchain network 202. For example, a particular message in a receipt regarding the execution of a particular intelligent contract may include topics to record, respectively, the address of the intelligent contract, the account that invoked the intelligent contract, which function/functions in the intelligent contract were executed, and the results of the execution of the intelligent contract. As described above, the first type of node 206 may connect to a particular tile-linked point 204 via SDK communication and listen for a topic or combination of topics of interest (hereinafter "target topics") contained in a receipt generated at the tile-linked point 204. If a receipt containing the target topic is snooped, the data for the receipt is output from the tile chain node 204 through the SDK. The format and content of the receipt may be defined as desired to output the desired information from the block link point 204 package.
Since the blockchain node 204 typically stores data in a specific data structure (e.g., a Merkle tree, a Merkle Patricia tree, etc.), the data obtained by the first type node 206 directly from the blockchain node 204 may not be in the data format required by the client nodes 206, 208. In these cases, the first type of node 206 also parses and maps the data associated with the target aspect into the data format required by the client nodes 206, 208, thereby obtaining information about the target aspect based on the data associated with the target aspect. In addition, the first-type node 206 stores the obtained information on the target aspect, so that the second-type node 208 can obtain the information from the first-type node 206. The information on the target may be stored in a local memory of the first type node 206 or in a remote memory accessible by the first type node 206. The access mode between the first-type node 206 and the second-type node 208 may be P2P communication using MQTT protocol, HTTP protocol, etc., or may be communication using an own protocol.
In some embodiments, the second type node 208 may periodically obtain information on the target aspect from the first type node 206. The acquisition period for the second-type node 208 to acquire the information on the target from the first-type node 206 may be set as needed. For example, similar to the acquisition period for the first type node 206 to acquire data from the tile link points 204, the acquisition period may be set according to the frequency of changes in the target aspect and/or according to the speed at which the tile chain network 202 generates new tiles. In some embodiments, the second type node 208 may obtain the information on the target aspect from the first type node 206 in response to the information on the target aspect being stored by the first type node 206, e.g., including created, deleted, modified, etc. In these embodiments, the second type node 208 may obtain the target aspect information from the first type node 206 only when there is a change in the target aspect information. In some embodiments, the second type of node 208 may obtain information regarding the destination from the first type of node 206 in response to the second type of node 208 booting, including initial joining of one or more networks 216, and re-bringing online after going offline, and so on. For example, the second type of node 208 may need to be configured after startup, and thus may obtain targeted information from the first type of node 206 after startup.
In any one or more of the above embodiments, the second-type node 208 may obtain the target-related information from the first-type node 206 by querying the first-type node 206 communicatively connected to the second-type node 208, or by performing unicast, broadcast, multicast (or multicast) on the first-type node 206. In other words, whether obtained by way of a query or by way of unicast, broadcast, multicast (or multicast), may be periodically, in response to information on the target aspect being stored by the first-type node 206, and/or in response to being initiated by the second-type node 208.
As described above, according to one or more exemplary embodiments of the present disclosure, the plurality of client nodes 206 and 208 are divided into the first type of node 206 and the second type of node 208, wherein the first type of node 206 directly obtains and stores the information about the target from the blockchain network 202, and the second type of node 208 only needs to obtain the information about the target from the first type of node 206 without directly obtaining the information from the blockchain network 202, so as to distribute the information carried by the blockchain network 202 to the plurality of client nodes 206 and 208. As such, there is no need for each of the plurality of client nodes 206, 208 to query data or subscribe to events directly from one or more blockchain nodes 204 in the blockchain network 202, thus enabling the load of the blockchain nodes 204 to be reduced, which has significant advantages when the number of client nodes 206, 208 is large. Furthermore, the second type of node 208 does not need to directly obtain data from the blockchain network 202, and therefore, such nodes do not need to have functions of directly reading data from the blockchain nodes 204 and/or subscribing to events from the blockchain nodes 204, and do not need to have the functions of data screening, parsing and mapping described above, which is beneficial to simplification of functions and structures of the second type of node 208, and is suitable for IoT devices with limited functions.
It is necessary to determine which of the plurality of client nodes 206, 208 are to be considered as first class nodes 206 and which are to be considered as second class nodes 208. In some embodiments, each client node may be predetermined as to which type of node, and the predetermined results may be recorded in the respective hard-coded logic of each client node. Each client node, after being started, performs a respective action according to respective hard-coded logic, wherein the client node performing all or part of the actions of the first type of node 206 may be a predetermined first type of node 206, and the client node performing all or part of the actions of the second type of node 208 may be a predetermined second type of node 208. In addition, the second type of node 208 needs to obtain information about the first type of node 206, such as a list of the first type of nodes 206 in one or more networks 216, or a list of a subset of the first type of nodes 206 applicable to the second type of node 208, in order to communicatively couple to the first type of node 206 to obtain information about the target aspect. In these embodiments, the information for the first type of node 206 is also recorded in the hard-coded logic for the second type of node 208. After the second type of node 208 is booted, information for one or more of the first type of nodes 206 may be obtained from its hard-coded logic.
In some embodiments, which nodes are the first class of nodes 206 may be dynamically determined through an election process engaged in by at least some of the plurality of client nodes 206, 208. In some cases, at least some of the plurality of client nodes 206, 208 may participate in elections, using a known election protocol (e.g., the Raft election protocol) to generate an election, which may be the first type of node 206. The nodes participating in the election know the election result, that is, know the information of the first-type node 206, and the nodes not participating in the election can know the information of the first-type node 206 by communicating with the nodes participating in the election. In some cases, one node may be set as an election assisting node in a set of multiple client nodes 206, 208 or a subset thereof, the election assisting node determining the identity of the other nodes in the set or subset thereof (i.e., whether the first class of nodes 206 or the second class of nodes 208). Other nodes may communicate with the election assistance node, which informs the node of its identity. The election assisting node may determine the identity of the other nodes randomly or with any suitable rule. The election assistance node may also notify other nodes when there is a change in the information of the first type node 206. Such notification may be implemented by drivers between nodes, or by other nodes querying election assistance nodes. In these cases, the client node may first connect to the election assisting node after booting to determine the identity of its own node and obtain information of the first type node 206 from the election assisting node. In these embodiments, the nodes of the first type of node 206 need to keep a heartbeat in order to let other nodes know the state of the node. If the heartbeat is lost, the election process described above is triggered.
In any one or more of the above embodiments, determining which nodes to be the first type of node 206 may consider the stability of the operation of the node, the performance of the arithmetic processing, the capability and reliability of the network connection, and the like, so as to select nodes that can maintain stable communication connection with the block-linked node 204 during a longer period of time, can be accessed by multiple other nodes at the same time, and/or can process data obtained from the block-linked node 204. Furthermore, the ratio of the number of the first type nodes 206 to the number of the plurality of client nodes 206, 208 may be considered, for example, 5%, 10%, etc., in order to ensure that there are enough first type nodes 206 for the second type nodes 208 to connect. In any one or more of the above embodiments, if the information of the first type node 206 obtained by the second type node 208 includes more than one first type node 206, the second type node 208 may attempt to connect to other first type nodes 206 after the failure to connect to one of the first type nodes 206.
In some cases, the block-linked point 204, the first type of node 206, and/or the communication link between the two may fail, resulting in a disconnection of the communication connection between the first type of node 206 and the block-linked point 204. In one or more embodiments in which the first-type node 206 acquires data associated with the target aspect from the block-link point 204 in response to the target aspect at the block-link point 204 being changed, the first-type node 206 cannot acquire data associated with the target aspect from the block-link point 204 if the target aspect at the block-link node 204 is changed during a disconnection of the communication connection between the first-type node 206 and the block-link point 204. In these cases, the first-type nodes 206 may obtain data associated with the target aspect from other first-type nodes 206, or may obtain information of the target aspect directly from other first-type nodes 206.
In some embodiments, the other first-type nodes 206 may be first-type nodes 206 that are communicatively coupled to the same blockchain node 204 as the present first-type node 206. This applies to the case where the disconnection of the communication connection between the first type of node 206 and the block-link point 204 is caused by a failure of the first type of node 206 and/or a failure of the communication link between the first type of node 206 and the block-link point 204.
As shown in fig. 2, first type nodes 206-1 and 206-2 in one or more networks 216 are each communicatively coupled to a blockchain node 204 in the blockchain network 202 to obtain data associated with the target aspect from the blockchain node 204, respectively. Each of the first type nodes 206-1 and 206-2 obtains and stores information on the target aspect based on the acquired data associated with the target aspect. In response to the communication connection between the first type node 206-1 and the block link point 204 being broken, the target-side information is obtained by the first type node 206-1 from the first type node 206-2 via the communication connection with the first type node 206-2. It should be appreciated that the first type node 206-1 may maintain such a communication connection with the first type node 206-2 for an extended period of time to obtain information regarding the destination when needed; such a communication connection may also be established with the first type node 206-2 only when information on the target needs to be obtained. The first-type node 206-1 compares the information on the target aspect stored therein with the information on the target aspect acquired from the first-type node 206-2 to determine whether the information on the target aspect acquired from the first-type node 206-2 is newer than the information on the target aspect stored in the first-type node 206-1. This determination may be made based on a timestamp in the information of the target aspect or based on a notification of a storage time of the first type node 206-2 regarding the information of the target aspect. In response to the information on the target aspect obtained from the first-type node 206-2 being newer than the information on the target aspect stored by the first-type node 206-1, the information on the target aspect stored by the first-type node 206-1 itself is updated by the first-type node 206-1 based on the information on the target aspect obtained from the first-type node 206-2.
In some embodiments, the other first-type nodes 206 may be first-type nodes 206 that are communicatively coupled to different blockchain nodes 204 than the present first-type nodes 206. This applies to the case where the disconnection of the communication connection between the first type of node 206 and the block-link point 204 is caused by a failure of the first type of node 206, a failure of the block-link point 204, and/or a failure of the communication link between the first type of node 206 and the block-link point 204.
As shown in fig. 3, first type nodes 206-1 and 206-2 in one or more networks 216 are each communicatively coupled to a blockchain node 204-1 in blockchain network 202 to obtain data associated with a target aspect from blockchain link points 204-1, respectively; the first type node 206-3 is communicatively connected to the blockchain node 204-2 to obtain data associated with the target aspect from the blockchain node 204-2. Each of the first type nodes 206-1 to 206-3 obtains and stores information on the target aspect based on the acquired data associated with the target aspect. In response to the disconnection of the communication connection between the first-type node 206-1 and the blockchain node 204-1, the information on the target aspect is obtained by the first-type node 206-1 from the first-type node 206-3 via the communication connection with the first-type node 206-3. It should be appreciated that the first type node 206-1 may maintain such a communication connection with the first type node 206-3 for an extended period of time to obtain information about the destination when needed; it is also possible to establish such a communication connection with the first type node 206-3 only when it is necessary to obtain information about the object. The first-type node 206-1 compares the information on the target aspect stored therein with the information on the target aspect acquired from the first-type node 206-3 to determine whether the information on the target aspect acquired from the first-type node 206-3 is newer than the information on the target aspect stored in the first-type node 206-1. In response to the information on the target aspect obtained from the first-type node 206-3 being newer than the information on the target aspect stored by the first-type node 206-1, the information on the target aspect stored by the first-type node 206-1 itself is updated by the first-type node 206-1 based on the information on the target aspect obtained from the first-type node 206-3.
In one aspect of the disclosure, a method and system for configuring a set of network nodes is provided. Fig. 4 is a block diagram of a system 300 for configuring a set of network nodes 316 in accordance with one or more exemplary embodiments of the present disclosure. System 300 includes a blockchain network 302, a set of network nodes 316, and a configuration management entity 312. Blockchain network 302 includes a plurality of blockchain nodes 304 (e.g., 304-1 and 304-2). The set of network nodes 316 is a collection comprising a plurality of client nodes 306, 308. One or more nodes in the set of network nodes 316 are first-type nodes 306 (e.g., 306-1 to 304-3) and one or more nodes in the set of network nodes other than the first-type nodes 306 are second-type nodes 308. All or part of the functions and/or operations of the blockchain network 302, the blockchain link points 304, the first type nodes 306 and the second type nodes 308 may be similar to all or part of the functions and/or operations of the blockchain network 102, the blockchain link points 104, the first type nodes 206 and the second type nodes 208, respectively, and detailed descriptions of the repeated parts are omitted.
Blockchain network 302 may carry configuration information for configuring network node set 316. The configuration information may be used to configure one or more aspects of each of all or a portion of the client nodes 306, 308 in the network node set 316, such as parameters used to configure the client nodes' network connections, operating power, travel speed, sensing range, etc. Such configuration information may be maintained by running a particular intelligent contract, including creation, deletion, modification, and the like. The configuration management entity 312 may be an entity having authority to manage multiple client nodes 306, 308 in a set of network nodes 316 (referred to herein simply as "administrator authority"). Configuration management entity 312 may create an account with administrator privileges by communicatively connecting to blockchain network 302 and initiate execution of the intelligent contract with the account, i.e., initiate invocation of the intelligent contract. Although represented as a block in the figure, the configuration management entity 312 may be one or more entity devices. The configuration management entity 312 may be any form of general or special purpose electronic device, such as one or more servers, one or more user terminals, etc. The first type node 306 obtains configuration information from the blockchain network 302, stores the configuration information, and configures itself according to the configuration information. The second type node 308 acquires the configuration information from the first type node 306 and performs configuration of its own node according to the configuration information.
In some embodiments, the same configuration information may be used for each client node 306, 308 in the set of network nodes 316. This comparison applies to the case where each client node 306, 308 in the set of network nodes 316 has one or more of the same or similar attributes or application purposes. In some embodiments, each client node 306, 308 in the network node set 316 is divided into multiple node groups, e.g., node groups S1, S2, S3, and respective configuration information may be used for each node group. This is more applicable where each client node 306, 308 in the set of network nodes 316 is grouped based on its geographic area, manufacturer, applicable network access technology, etc. In these embodiments, the configuration information carried by the blockchain network 302 for configuring the set of network nodes 316 may include multiple sets of sub-information, each set of sub-information for configuring a client node 306, 308 in a respective node group. Each set of sub information may include group identification information for identifying the corresponding node group and group configuration information for configuring nodes in the corresponding node group. Each group of sub-information can be maintained by running respective corresponding intelligent contracts, and also multiple groups of sub-information can be maintained by running the same intelligent contract. The same intelligent contract or multiple different intelligent contracts may each be invoked by the same or multiple different entity devices as configuration management entity 312.
The first type node 306 may store one or more of the sets of sub-information of the configuration information. In general, the sub information stored by the first-type node 306 includes a set of sub information corresponding to a node group in which the node itself is located. In one particular example, the first type node 306-1 may store multiple sets of sub information for node groups S1, S2, and S3, the first type node 306-2 may store one set of sub information for node group S2, and the first type node 306-3 may store multiple sets of sub information for node groups S1 and S3.
Fig. 5 and 6 are schematic structural diagrams of a system 600 for configuring a set of network nodes 618, according to an example embodiment of the present disclosure. System 600 includes a blockchain network 602, a data export module 610, a message queue 612, and a set of network nodes 618. Blockchain network 602 includes a plurality of blockchain nodes 604 (e.g., 604-1 and 604-2). The set of network nodes 618 is a collection comprising a plurality of client nodes 606, 608. One or more of the nodes in network node set 618 are first class nodes 606 (e.g., 606-1 to 606-2) and one or more of the nodes in the network node set other than first class nodes 606 are second class nodes 608. All or part of the functions and/or operations of the blockchain network 602, the blockchain link points 604, the first type nodes 606 and the second type nodes 608 may be similar to all or part of the functions and/or operations of the blockchain network 102, the blockchain link points 104, the first type nodes 206 and the second type nodes 208, respectively, and detailed descriptions of the repeated parts are omitted.
The data derivation module 610 can be communicatively connected to at least one blockchain node 604 in the blockchain network 602 to obtain data associated with configuration information for a set of network nodes 618 from the blockchain node 604. Similar to the first type nodes 206, 306 in the embodiments described above, the data export module 610 may establish encrypted communication with at least one blockchain node 604 via the SDK of the blockchain network 602 to obtain data associated with configuration information for the set of network nodes 618 from the blockchain node 604. The data export module 610 may connect to a particular block link point 604 via SDK communications and listen for a topic or combination of topics associated with configuration confidence in the receipt generated at that block link point 604. If a receipt containing the target topic is snooped, the data for the receipt is output from the tile chain node 604 via the SDK.
Since the blockchain nodes 604 typically store data in a particular data structure (e.g., a Merkle tree, a Merkle Patricia tree, etc.), the data retrieved by the data derivation module 610 directly from the blockchain nodes 604 may not be in the data format required by the client nodes 606, 608. In these cases, the data export module 610 also parses and maps the data associated with the configuration information into the data format required by the client node 606, 608, resulting in configuration information for the client node 606, 608 based on the data associated with the configuration information.
The data export module 610 may publish the configuration information to one or more topics configured by the message queue 612. The data export module 610 may publish different types of configuration information, e.g., configuration information for client nodes 606, 608, action/action notifications, action logs, etc., to the same topic, or to different multiple topics. The message queue 612 stores the retrieved configuration information for distribution to one or more client nodes that subscribe to the relevant topic. The first type nodes 606 in the network node set 618 subscribe to the message queue 612 as needed, so that the message queue 612 pushes the configuration information of the topic subscribed by the first type nodes 606 published by the data export module 610 to the corresponding first type nodes 606. The first type node 606 receives and stores the configuration information distributed by the message queue 612, and the second type node 608 obtains the configuration information from the first type node 606. The message queue 612 may be any message queue having a publish/subscribe pattern, such as an MQTT queue that may be suitable for providing a publish/subscribe pattern based message queue service for remote devices with poor hardware performance (e.g., when the first class of nodes 606 are certain lower performance IoT devices) and in situations where network conditions are not ideal.
In some embodiments, the storage of the configuration information by the message queue 612 may be configured to store the configuration information for a predetermined time. Since there is usually an upper limit on the size of the message queue, a cleaning period may be set for the message queue, for example, N days, and the message queue will clean up the expired data periodically, so that the message queue 612 stores the configuration information for a predetermined time. In one particular example, the cleaning period N may be the same as the number N of active nodes in network node set 618, an active node referring to a node that has come online within a predetermined number of recent days. In some embodiments, the storage of configuration information by the message queue 612 may be configured to store newly acquired configuration information, e.g., for each topic. With this configuration, even if the configuration information is not updated for a long time, it is not cleaned up as stale data, and therefore it is possible to ensure that nodes in the network node set 618 that are online and newly online can acquire the latest configuration information.
In some embodiments, the configuration information includes a first type of configuration information and a second type of configuration information, wherein the first type of configuration information may be more static than the second type of configuration information. Since more static information is updated less frequently, for example, it may be updated only once a few months, if the message queue 612 is used to store such static information, it may be cleared as expired data when the clearing time limit of the message queue 612 comes, which may result in that a newly started (first brought on line or brought on line again) node may not obtain such static configuration information, thereby being unfavorable for the management of the network node set 618. Thus, for the more static first type configuration information, it may be stored in the first type node 606 for the second type node 608 to obtain; while other more dynamic information may be stored in the message queue 612 for retrieval by the client nodes 606, 608.
The system 600 shown in fig. 6 is a variation of the system 600 in fig. 5. In addition to having the full functionality of the system 600 shown in fig. 5, in the system 600 shown in fig. 6, one or more first type nodes 606 (e.g., first type node 606-1) in the network node set 618 subscribe to the message queue 612 for configuration information, and another one or more first type nodes 606 (e.g., first type node 606-2) subscribe to the configuration information directly to the block link node 604 (e.g., block chain node 604-1 or 604-2), which may be applicable where the distributed configuration information includes multiple categories. In some embodiments, the configuration information includes a first type of configuration information and a second type of configuration information. Data derivation module 610 can subscribe to and publish first type configuration information to message queue 612 to block link points 604 (e.g., block chain nodes 604-1) for distribution to a first set of first type nodes 606-1 in network node set 618. A first group of second class nodes 608 in network node set 618 may query a first group of first class nodes 606-1 to obtain first class configuration information. Further, the second set of first type nodes 606-2 may subscribe to the second type of configuration information not through the message queue 612, but directly to the block chain link point 604 (e.g., block chain node 604-1 or 604-2). A second group of second class nodes 608 in network node set 618 may query a second group of first class nodes 606-2 for second class configuration information. It should be understood that the first group of first type nodes and the second group of first type nodes may comprise the same or different client nodes, and the first group of second type nodes and the second group of second type nodes may comprise the same or different client nodes.
In one aspect of the present disclosure, an electronic device is provided. Fig. 7 is a schematic structural diagram of an electronic device 400 according to one or more exemplary embodiments of the present disclosure. Any of the first type nodes 206, 306 in the above embodiments may comprise all or part of the electronic device 400. The electronic device 400 includes a first communication module 402, a second communication module 404, a data processing module 406, a storage module 408, and a service providing module 410.
The first communication module 402 is communicatively connected to at least one blockchain node in the blockchain network and acquires data associated with a target aspect from the at least one blockchain node periodically and/or in response to the target aspect at the at least one blockchain node being changed. The data processing module 406 derives information on the target based on the data obtained from the block link points. The storage module 408 stores information on the target. The service providing module 410 provides the target aspect information stored in the storage module 408 to the other device in response to a query request by the other device (e.g., the second type node 208, 308).
The second communication module 404 is responsive to the first communication module 402 being disconnected from the at least one blockchain node, the second communication module 404 communicatively connecting to a peer device (e.g., another first type node 206, 306) and obtaining target-wise information from the peer device. The data processing module 406 determines whether the target aspect information obtained from the peer device is newer than the target aspect information stored in the storage module 408. In response to the data processing module 406 determining that the target aspect information obtained from the peer is newer than the target aspect information stored in the storage module 408, the storage module 408 updates the target aspect information stored in the storage module 408 based on the target aspect information obtained from the peer.
All or part of the electronic device 400 described above may be implemented by one or more processors executing computer-executable instructions stored in one or more memories, or by circuitry having a particular configuration.
Fig. 8 is an exemplary block diagram of a generic hardware system 500 that may be applied in accordance with one or more exemplary embodiments of the present disclosure. A system 500, which is an example of a hardware device that may be applied to aspects of the present disclosure, will now be described with reference to fig. 8. Any of the block link points 104, 204, 304, client nodes 108, 206, 208, 306, 308, configuration management entity 312, electronic device 400 in the various embodiments described above may comprise all or part of system 500. System 500 may be any machine configured to perform processing and/or computing, and may be, but is not limited to, a workstation, a server, a desktop computer, a laptop computer, a tablet computer, a personal data assistant, a smart phone, a vehicle computer, or any combination thereof.
System 500 may include components connected to bus 502 or in communication with bus 502, possibly via one or more interfaces. For example, the system 500 may include a bus 502, as well as one or more processors 504, one or more input devices 506, and one or more output devices 508. The one or more processors 504 may be any type of processor and may include, but are not limited to, one or more general purpose processors and/or one or more special purpose processors (e.g., special purpose processing chips). Each of the steps of the methods described above may be implemented by one or more processors 504 executing instructions.
Input device 506 may be any type of device that can input information to a computing device, which may include, but is not limited to, a mouse, a keyboard, a touch screen, a microphone, and/or a remote control. Output device 508 can be any type of device that can present information, and can include, but is not limited to, a display, speakers, a video/audio output terminal, a vibrator, and/or a printer.
The system 500 may also include a non-transitory storage device 510 or be connected to a non-transitory storage device 510. The non-transitory storage device 510 may be any storage device that is non-transitory and that may enable data storage, and may include, but is not limited to, a magnetic disk drive, an optical storage device, a solid state memory, a floppy disk, a hard disk, a magnetic tape, or any other magnetic medium, an optical disk, or any other optical medium, a ROM (read only memory), a RAM (random access memory), a cache memory, and/or any other memory chip/chip set, and/or any other medium from which a computer may read data, instructions, and/or code. The non-transitory storage device 510 may be removable from the interface. The non-transitory storage device 510 may have data/instructions/code for implementing the methods, steps, and processes described above. For example, the data stored by the block link points 104, 204, 304, described above, and the information about the goals stored by the first type nodes 206, 306 may be stored, at least in part, in the non-transitory storage device 510.
The system 500 may also include a communication device 512. The communication device 512 may be any type of device or system capable of communicating with external devices and/or with a network and may include, but is not limited to, a modem, a network card, an infrared communication device, a wireless communication device, and/or a chipset, such as a bluetooth device, 1402.11 device, WiFi device, WiMax device, cellular communication device, satellite communication device, and/or the like.
When the system 500 is used as an on-board device, it may also be connected to external devices, such as a GPS receiver, sensors for sensing different environmental data, such as acceleration sensors, wheel speed sensors, gyroscopes, and so on. In this manner, the system 500 may, for example, receive location data and sensor data indicative of a driving condition of the vehicle. When the system 500 is used as an on-board device, it may also be connected to other equipment of the vehicle (e.g., an engine system, wipers, anti-lock brake system, etc.) to control operation and handling of the vehicle. In addition, the non-transitory storage device 510 may have map information and software elements so that the processor 504 may perform route guidance processing. In addition, the output device 508 may include a display for displaying a map, a position marker of the vehicle, and an image indicating the running condition of the vehicle. The output device 508 may also include a speaker or an interface with headphones for audio guidance.
The bus 502 may include, but is not limited to, an Industry Standard Architecture (ISA) bus, a Micro Channel Architecture (MCA) bus, an enhanced ISA (eisa) bus, a Video Electronics Standards Association (VESA) local bus, and a Peripheral Component Interconnect (PCI) bus. In particular, for on-board devices, bus 502 may also include a Controller Area Network (CAN) bus or other architecture designed for application on a vehicle.
System 500 may also include a working memory 514, which may be any type of working memory that can store instructions and/or data useful for the operation of processor 504, which may include, but is not limited to, a random access memory and/or a read-only memory device.
Software elements may be located in working memory 514 including, but not limited to, an operating system 516, one or more application programs 518, drivers, and/or other data and code. Instructions for performing the methods and steps described above may be included in one or more application programs 518. Executable code or source code for the instructions of the software elements may be stored in a non-transitory computer-readable storage medium, such as storage device 510 described above, and may be read into working memory 514 by compilation and/or installation. Executable or source code for the instructions of the software elements may also be downloaded from a remote location.
It is also to be understood that variations may be made in accordance with specific requirements. For example, customized hardware might also be used and/or particular elements might be implemented in hardware, software, firmware, middleware, microcode, hardware description languages, or any combination thereof. In addition, connections to other computing devices, such as network input/output devices, may be employed. For example, some or all of the methods or apparatus according to embodiments of the present disclosure may be implemented by programming hardware (e.g., programmable logic circuitry including Field Programmable Gate Arrays (FPGAs) and/or Programmable Logic Arrays (PLAs)) in assembly or hardware programming languages (e.g., VERILOG, VHDL, C + +) using logic and algorithms according to the present disclosure.
It should also be understood that the components of system 500 may be distributed across a network. For example, some processes may be performed using one processor, while other processes may be performed by another processor that is remote from the one processor. Other components of the system 500 may also be similarly distributed. As such, system 500 can be construed as a distributed computing system that performs processing at multiple locations.
One or more exemplary embodiments of the present disclosure are described above. Other embodiments are within the scope of the following claims. In some cases, the actions or steps recited in the claims may be performed in a different order than in the embodiments and still achieve desirable results. In addition, the processes depicted in the accompanying figures do not necessarily require the particular order shown, or sequential order, to achieve desirable results. In some embodiments, multitasking and parallel processing may also be possible or may be advantageous.
In the 90 s of the 20 th century, improvements in a technology could clearly distinguish between improvements in hardware (e.g., improvements in circuit structures such as diodes, transistors, switches, etc.) and improvements in software (improvements in process flow). However, as technology advances, many of today's process flow improvements have been seen as direct improvements in hardware circuit architecture. Designers almost always obtain the corresponding hardware circuit structure by programming an improved method flow into the hardware circuit. Thus, it cannot be said that an improvement in the process flow cannot be realized by hardware physical modules. For example, a Programmable Logic Device (PLD), such as a Field Programmable Gate Array (FPGA), is an integrated circuit whose Logic functions are determined by programming the Device by a user. A digital system is "integrated" on a PLD by the designer's own programming without requiring the chip manufacturer to design and fabricate application-specific integrated circuit chips. Furthermore, nowadays, instead of manually making an Integrated Circuit chip, such Programming is often implemented by "logic compiler" software, which is similar to a software compiler used in program development and writing, but the original code before compiling is also written by a specific Programming Language, which is called Hardware Description Language (HDL), and HDL is not only one but many, such as abel (advanced Boolean Expression Language), ahdl (alternate Hardware Description Language), traffic, pl (core universal Programming Language), HDCal (jhdware Description Language), lang, Lola, HDL, laspam, hardward Description Language (vhr Description Language), vhal (Hardware Description Language), and vhigh-Language, which are currently used in most common. It will also be apparent to those skilled in the art that hardware circuitry that implements the logical method flows can be readily obtained by merely slightly programming the method flows into an integrated circuit using the hardware description languages described above.
The controller may be implemented in any suitable manner, for example, the controller may take the form of, for example, a microprocessor or processor and a computer-readable medium storing computer-readable program code (e.g., software or firmware) executable by the (micro) processor, logic gates, switches, an Application Specific Integrated Circuit (ASIC), a programmable logic controller, and an embedded microcontroller, examples of which include, but are not limited to, the following microcontrollers: ARC 625D, Atmel AT91SAM, Microchip PIC18F26K20, and Silicone Labs C8051F320, the memory controller may also be implemented as part of the control logic for the memory. Those skilled in the art will also appreciate that, in addition to implementing the controller as pure computer readable program code, the same functionality can be implemented by logically programming method steps such that the controller is in the form of logic gates, switches, application specific integrated circuits, programmable logic controllers, embedded microcontrollers and the like. Such a controller may thus be considered a hardware component, and the means included therein for performing the various functions may also be considered as a structure within the hardware component. Or even means for performing the functions may be regarded as being both a software module for performing the method and a structure within a hardware component.
The systems, devices, modules or units illustrated in the above embodiments may be implemented by a computer chip or an entity, or by a product with certain functions. One typical implementation device is a server system. Of course, this application does not exclude that with future developments in computer technology, the computer implementing the functionality of the above described embodiments may be, for example, a personal computer, a laptop computer, a vehicle-mounted human-computer interaction device, a cellular phone, a camera phone, a smart phone, a personal digital assistant, a media player, a navigation device, an email device, a game console, a tablet computer, a wearable device or a combination of any of these devices.
Although one or more embodiments of the present description provide method operational steps as described in the embodiments or flowcharts, more or fewer operational steps may be included based on conventional or non-inventive approaches. The order of steps recited in the embodiments is merely one manner of performing the steps in a multitude of orders and does not represent the only order of execution. When an actual apparatus or end product executes, it may execute sequentially or in parallel (e.g., parallel processors or multi-threaded environments, or even distributed data processing environments) according to the method shown in the embodiment or the figures. The terms "comprises," "comprising," or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements does not include only those elements but may include other elements not expressly listed or inherent to such process, method, article, or apparatus. Without further limitation, the presence of additional identical or equivalent elements in a process, method, article, or apparatus that comprises the recited elements is not excluded. For example, if the terms first, second, etc. are used to denote names, they do not denote any particular order.
For convenience of description, the above devices are described as being divided into various modules by functions, and are described separately. Of course, when implementing one or more of the present description, the functions of each module may be implemented in one or more software and/or hardware, or a module implementing the same function may be implemented by a combination of multiple sub-modules or sub-units, etc. The above-described embodiments of the apparatus are merely illustrative, and for example, the division of the units is only one logical division, and other divisions may be realized in practice, for example, a plurality of units or components may be combined or integrated into another system, or some features may be omitted, or not executed. In addition, the shown or discussed mutual coupling or direct coupling or communication connection may be an indirect coupling or communication connection through some interfaces, devices or units, and may be in an electrical, mechanical or other form.
The present invention is described with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of the invention. It will be understood that each flow and/or block of the flow diagrams and/or block diagrams, and combinations of flows and/or blocks in the flow diagrams and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including instruction means which implement the function specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
In a typical configuration, a computing device includes one or more processors (CPUs), input/output interfaces, network interfaces, and memory.
The memory may include forms of volatile memory in a computer readable medium, Random Access Memory (RAM) and/or non-volatile memory, such as Read Only Memory (ROM) or flash memory (flash RAM). Memory is an example of a computer-readable medium.
Computer-readable media, including both non-transitory and non-transitory, removable and non-removable media, may implement information storage by any method or technology. The information may be computer readable instructions, data structures, modules of a program, or other data. Examples of computer storage media include, but are not limited to, phase change memory (PRAM), Static Random Access Memory (SRAM), Dynamic Random Access Memory (DRAM), other types of Random Access Memory (RAM), Read Only Memory (ROM), Electrically Erasable Programmable Read Only Memory (EEPROM), flash memory or other memory technology, compact disc read only memory (CD-ROM), Digital Versatile Discs (DVD) or other optical storage, magnetic cassettes, magnetic tape magnetic disk storage, graphene storage or other magnetic storage devices, or any other non-transmission medium that can be used to store information that can be accessed by a computing device. As defined herein, a computer readable medium does not include a transitory computer readable medium such as a modulated data signal and a carrier wave.
As will be appreciated by one skilled in the art, one or more embodiments of the present description may be provided as a method, system, or computer program product. Accordingly, one or more embodiments of the present description may take the form of an entirely hardware embodiment, an entirely software embodiment or an embodiment combining software and hardware aspects. Furthermore, one or more embodiments of the present description may take the form of a computer program product embodied on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROM, optical storage, and the like) having computer-usable program code embodied therein.
One or more embodiments of the present description may be described in the general context of computer-executable instructions, such as program modules, being executed by a computer. Generally, program modules include routines, programs, objects, components, data structures, etc. that perform particular tasks or implement particular abstract data types. One or more embodiments of the present specification can also be practiced in distributed computing environments where tasks are performed by remote processing devices that are linked through a communications network. In a distributed computing environment, program modules may be located in both local and remote computer storage media including memory storage devices.
The embodiments in the present specification are described in a progressive manner, and the same and similar parts among the embodiments are referred to each other, and each embodiment focuses on the differences from the other embodiments. In particular, for the system embodiment, since it is substantially similar to the method embodiment, the description is simple, and for the relevant points, reference may be made to the partial description of the method embodiment. In the description of the specification, reference to the description of the term "one embodiment," "some embodiments," "an example," "a specific example," or "some examples," etc., means that a particular feature, structure, material, or characteristic described in connection with the embodiment or example is included in at least one embodiment or example of the specification. In this specification, the schematic representations of the terms used above are not necessarily intended to refer to the same embodiment or example. Furthermore, the particular features, structures, materials, or characteristics described may be combined in any suitable manner in any one or more embodiments or examples. Furthermore, various embodiments or examples and features of different embodiments or examples described in this specification can be combined and combined by one skilled in the art without contradiction.
The above description is merely exemplary of one or more embodiments of the present disclosure and is not intended to limit the scope of one or more embodiments of the present disclosure. Various modifications and alterations to one or more embodiments described herein will be apparent to those skilled in the art. Any modification, equivalent replacement, improvement or the like made within the spirit and principle of the present specification should be included in the scope of the claims.

Claims (49)

1. A method of distributing information carried by a blockchain network to a plurality of client nodes, the blockchain network comprising first blockchain nodes, the plurality of client nodes comprising one or more first class nodes and one or more second class nodes, the method comprising:
generating information for a target aspect of the plurality of client nodes outside the blockchain network by running an intelligent contract on the blockchain network;
listening, by a first type node of the one or more first type nodes, for a receipt at the first block link point, and in response to generating a receipt containing a subject matter associated with the target aspect at the first block link point, obtaining, by the first type node, first data associated with the target aspect from the first block link point;
obtaining and storing, by the first type node, information of the target aspect based on the first data; and
obtaining, by a first second-class node of the one or more second-class nodes, information on the target aspect from the first-class node.
2. The method of claim 1, wherein the first type of node establishes encrypted communication with the first block-linked point via an SDK of the blockchain network to obtain first data associated with the target aspect from the first block-linked point.
3. The method of claim 1, further comprising, by the first second type node:
periodically obtaining information on the target aspect from the first type of node;
in response to the information on the target aspect being stored by the first type node, obtaining the information on the target aspect from the first type node; and/or
And responding to the starting of the first and second type nodes, and acquiring the information of the target aspect from the first type node.
4. The method of claim 1, wherein the blockchain network further comprises a second blockchain node, the method further comprising:
listening, by a second first class node of the one or more first class nodes, for a receipt at the first blockchain node or the second blockchain node, and in response to generating the receipt containing the subject matter associated with the target aspect at the first blockchain node or the second blockchain node, obtaining, by the second first class node, second data associated with the target aspect from the first blockchain node or the second blockchain node;
obtaining and storing, by the second first class node, information of the target aspect based on the second data;
acquiring, by the first-type node, the information on the target aspect from the second first-type node in response to a disconnection of communication between the first-type node and the first block link point; and
in response to the information on the target aspect obtained from the second node of the first class being newer than the information on the target aspect stored by the first node of the first class, updating, by the first node of the first class, the information on the target aspect stored by the first node of the first class based on the information on the target aspect obtained from the second node of the first class.
5. The method of claim 1, further comprising:
in response to the first class-II node booting, obtaining, by the first class-II node, information of the one or more first class nodes from hard-coded logic of the first class-II node or from nodes other than the first class-II node of the plurality of client nodes for communicative connection to the first class-I node to obtain the target aspect of information.
6. The method of claim 1, wherein the one or more first class nodes are determined by hard-coded logic of each of the one or more first class nodes or an election process participated by at least some of the plurality of client nodes.
7. The method of claim 1, wherein the first type of node listens for receipts at the first tile link point through a message queue, the method further comprising:
subscribing, by the first type node, to the message queue for information on the target aspect; and
distributing, by the message queue, the information on the target aspect to the first class of nodes.
8. The method of claim 1, wherein the target aspect is a first target aspect, the method further comprising:
listening, by a message queue, for a receipt at a second block chain node in the blockchain network, and in response to generating a receipt containing a topic associated with a second target aspect at the second block chain node, obtaining, by the message queue, information of the second target aspect from the second block chain node; and
distributing, by the message queue, the second target aspect of information to one or more of the plurality of client nodes that subscribe to the message queue for the second target aspect of information.
9. The method of claim 8, wherein the first target aspect of information is more static than the second target aspect of information.
10. The method of claim 7 or 8, further comprising, by the message queue:
storing information on the aspect of the target for a predetermined time; and/or
The newly acquired information on the target is stored.
11. The method of claim 7 or 8, further comprising, by the message queue:
in response to obtaining the information on the target aspect, distributing the information on the target aspect to the one or more nodes; and/or
In response to a first node of the one or more nodes booting up, target aspect information is distributed to the first node.
12. The method of claim 7 or 8, further comprising:
the message queue listens for receipts at a blockchain node via a data export module;
in response to generating a receipt containing a topic associated with the target aspect at the block chain node, obtaining, by the data derivation module, data associated with information of the target aspect from the block chain node;
obtaining, by the data derivation module, target aspect information based on the obtained data associated with the target aspect information; and
publishing, by the data export module, the target aspect information to the message queue, thereby causing the message queue to obtain the target aspect information.
13. The method of claim 1, wherein the client node comprises an IoT device.
14. The method of claim 1, further comprising generating, by an account having authority to manage the plurality of client nodes, the target aspect of information by initiating running the smart contract on the blockchain network.
15. A method for configuring a set of network nodes, comprising:
generating configuration information for a set of network nodes outside of a blockchain network by running intelligent contracts on the blockchain network;
monitoring receipts at block chain nodes in the block chain network by a first type node in the network node set, generating a receipt containing a theme associated with the configuration information in response to the block chain nodes, acquiring the configuration information from the block chain nodes by the first type node, storing the configuration information, and configuring the self node according to the configuration information; and
and acquiring the configuration information from the first type node by a second type node in the network node set, and configuring the node according to the configuration information.
16. The method of claim 15, wherein the set of network nodes comprises a plurality of IoT devices that comprise an IoT network.
17. The method of claim 15, wherein the nodes in the network node set are divided into a plurality of node groups, the configuration information comprises a plurality of sets of sub-information, each set of sub-information comprising group identification information for identifying a corresponding node group and group configuration information for the corresponding node group.
18. The method of claim 17, wherein the first class node comprises a plurality of first class nodes, each first class node storing one or more of the sets of sub-information of the configuration information.
19. The method of claim 15, wherein the first type node obtains the configuration information from the blockchain node by establishing encrypted communication with the blockchain node through an SDK of the blockchain network.
20. The method of claim 15, wherein the first class of nodes comprises a first class of nodes communicatively connected to a first blockchain node in the blockchain network and a second first class of nodes communicatively connected to either the first blockchain node or a second blockchain node in the blockchain network, the method further comprising:
in response to the communication connection between the first type node and the first block chain link point being disconnected, the first type node acquires configuration information stored by the second first type node from the second first type node; and
updating, by the first type node, the configuration information stored by the first type node based on the configuration information obtained from the second first type node, in response to the configuration information obtained from the second first type node being newer than the configuration information stored by the first type node.
21. The method of claim 15, further comprising, by the second type node:
periodically acquiring the configuration information from the first type node;
in response to the configuration information being stored by the first type node, obtaining the configuration information from the first type node; and/or
And responding to the starting of the second type node, and acquiring the configuration information from the first type node.
22. The method of claim 15, further comprising, by the second type node:
in response to the second class node booting, obtaining information of the first class node from hard-coded logic of the second class node or from other nodes in the network node set for communicative connection to the first class node to obtain the configuration information.
23. The method of claim 15, wherein the first type of node is determined by hard-coded logic of the first type of node or an election process participated by at least some of the set of network nodes.
24. The method of claim 15, wherein the first class node listens for receipts at the block chain node through a message queue, the method further comprising:
subscribing, by the first class node, to the message queue for the configuration information; and
distributing, by the message queue, the configuration information to the first class of nodes.
25. The method of claim 15, wherein the configuration information is first configuration information and the blockchain node is a first blockchain node, the method further comprising:
listening, by a message queue, for a receipt at a second block chain node in the blockchain network, and in response to generating a receipt containing a subject associated with second configuration information at the second block chain node, obtaining, by the message queue, the second configuration information from the second block chain node; and
distributing, by the message queue, the second configuration information to one or more nodes of the set of network nodes that subscribe to the second configuration information from the message queue.
26. The method of claim 25, wherein the first configuration information is more static than the second configuration information.
27. The method of claim 24 or 25, further comprising, by the message queue:
storing the configuration information for a predetermined time; and/or
The newly acquired configuration information is stored.
28. The method of claim 24 or 25, further comprising, by the message queue:
distributing the configuration information to the one or more nodes in response to acquiring the configuration information; and/or
In response to a first node of the one or more nodes booting up, distributing configuration information to the first node.
29. The method of claim 24 or 25, further comprising:
the message queue listens for receipts at a blockchain node via a data export module;
obtaining, by the data derivation module, data associated with the configuration information from the block chain node in response to generating a receipt containing the subject matter associated with the configuration information at the block chain node;
obtaining, by the data derivation module, configuration information based on the obtained data associated with the configuration information; and
and issuing configuration information to the message queue by the data derivation module, so that the message queue acquires the configuration information.
30. The method of claim 15, further comprising generating the configuration information by an account with authority to manage the set of network nodes by initiating running the smart contract on the blockchain network.
31. A system for configuring a set of network nodes, comprising:
a blockchain network configured to run intelligent contracts to generate configuration information for a set of network nodes outside of the blockchain network;
a first class of node comprising one or more nodes in the network node set, the first class of node configured to listen for receipts at tile link points in the blockchain network and, in response to generating a receipt containing a topic associated with the configuration information at the tile link point, obtain the configuration information from the tile link point, store the configuration information, and perform configuration of its own node according to the configuration information; and
and the second type node comprises one or more nodes except the first type node in the network node set, and is configured to acquire the configuration information from the first type node and configure the node according to the configuration information.
32. The system of claim 31, wherein the set of network nodes comprises a plurality of IoT devices that comprise an IoT network.
33. The system of claim 31, wherein the nodes in the network node set are divided into a plurality of node groups, the configuration information comprises a plurality of sets of sub-information, each set of sub-information comprising group identification information identifying a corresponding node group and group configuration information for the corresponding node group.
34. The system of claim 33, wherein the first type node is further configured to store one or more of the sets of sub-information of the configuration information.
35. The system of claim 31, wherein the first type node is further configured to obtain the configuration information from the blockchain node by establishing encrypted communication with the blockchain node through an SDK of the blockchain network.
36. The system of claim 31, wherein the first class of nodes comprises a first class of nodes communicatively connected to a first blockchain node in the blockchain network and a second first class of nodes communicatively connected to either the first blockchain node or a second blockchain node in the blockchain network, the first class of nodes further configured to:
in response to the communication connection between the first type node and the first block chain link point being disconnected, the first type node acquires configuration information stored by the second first type node from the second first type node; and
updating, by the first type node, the configuration information stored by the first type node based on the configuration information obtained from the second first type node, in response to the configuration information obtained from the second first type node being newer than the configuration information stored by the first type node.
37. The system of claim 31, wherein the second class node is further configured to:
periodically acquiring the configuration information from the first type node;
in response to the configuration information being stored by the first type node, obtaining the configuration information from the first type node; and/or
And responding to the starting of the second type node, and acquiring the configuration information from the first type node.
38. The system of claim 31, wherein the second class node is further configured to:
in response to the second class node booting, obtaining information of the first class node from hard-coded logic of the second class node or from other nodes in the network node set for communicative connection to the first class node to obtain the configuration information.
39. The system of claim 31, wherein the first type of node is determined by hard-coded logic of the first type of node or an election process participated by at least some of the set of network nodes.
40. The system of claim 31, further comprising a message queue, wherein,
the first class node is further configured to: monitoring receipts at the block link point through the message queue and subscribing the configuration information to the message queue; and
the message queue is configured to: and distributing the configuration information to the first type nodes.
41. The system of claim 31, further comprising a message queue, wherein the configuration information is first configuration information, the blockchain node is a first blockchain node, the message queue further configured to:
listening for a receipt at a second block link point in the blockchain network and, in response to generating a receipt containing a topic associated with second configuration information at the second block link point, obtaining the second configuration information from the second block link point; and
distributing the second configuration information to one or more nodes of the set of network nodes that have subscribed to the second configuration information from the message queue.
42. The system of claim 41, wherein the first configuration information is more static than the second configuration information.
43. The system of claim 40 or 41, wherein the message queue is further configured to:
storing the configuration information for a predetermined time; and/or
The newly acquired configuration information is stored.
44. The system of claim 40 or 41, wherein the message queue is further configured to:
distributing the configuration information to the one or more nodes in response to acquiring the configuration information; and/or
In response to a first node of the one or more nodes booting up, distributing configuration information to the first node.
45. The system of claim 40 or 41, further comprising a data export module, wherein,
the message queue is further configured to: listening for a receipt at a blockchain node via the data export module; and
the data export module is configured to:
in response to generating a receipt containing a topic associated with the configuration information at a block link point, obtaining data associated with the configuration information from the block link point;
obtaining configuration information based on the obtained data associated with the configuration information; and
and issuing configuration information to the message queue, so that the message queue acquires the configuration information.
46. The system of claim 31, wherein the configuration information is generated by an account with authority to manage the set of network nodes by initiating running the smart contract on the blockchain network.
47. An electronic device, comprising:
a first communication module configured to listen for receipts at least one blockchain node in a blockchain network and to retrieve data associated with a target aspect from the at least one blockchain node in response to the at least one blockchain node generating a receipt containing a subject associated with the target aspect, wherein the blockchain network generates information for the target aspect for a plurality of client nodes including the electronic device outside of the blockchain network by running a smart contract, the first communication module establishing encrypted communication with the at least one blockchain node via an SDK of the blockchain network to retrieve data associated with the target aspect from the at least one blockchain node;
a data processing module configured to derive information on the target aspect based on the data;
a storage module configured to store information of the target aspect; and
a service providing module configured to provide the information of the target aspect stored in the storage module to other devices in response to a query request of the other devices.
48. The electronic device of claim 47, wherein the electronic device comprises an IoT device.
49. The electronic device of claim 47, further comprising:
a second communication module configured to: in response to a communication connection between the first communication module and the at least one blockchain node being disconnected, communicatively connecting to a peer device, and obtaining information on the target from the peer device, wherein,
the data processing module is further configured to: determining whether the target aspect information obtained from the peer device is newer than the target aspect information stored in the storage module;
the storage module is further configured to: in response to the data processing module determining that the target aspect information obtained from the peer device is newer than the target aspect information stored in the storage module, updating the target aspect information stored in the storage module based on the target aspect information obtained from the peer device.
CN202111421228.4A 2021-11-26 2021-11-26 Method for distributing information carried by blockchain network to a plurality of client nodes Pending CN114157671A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111421228.4A CN114157671A (en) 2021-11-26 2021-11-26 Method for distributing information carried by blockchain network to a plurality of client nodes

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111421228.4A CN114157671A (en) 2021-11-26 2021-11-26 Method for distributing information carried by blockchain network to a plurality of client nodes

Publications (1)

Publication Number Publication Date
CN114157671A true CN114157671A (en) 2022-03-08

Family

ID=80458253

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111421228.4A Pending CN114157671A (en) 2021-11-26 2021-11-26 Method for distributing information carried by blockchain network to a plurality of client nodes

Country Status (1)

Country Link
CN (1) CN114157671A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114257487A (en) * 2021-11-26 2022-03-29 蚂蚁区块链科技(上海)有限公司 System and method for managing a set of network nodes
WO2023231343A1 (en) * 2022-06-01 2023-12-07 蚂蚁区块链科技(上海)有限公司 Method for running consortium chain network, and consortium chain network and node device for consortium chain network

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108833081A (en) * 2018-06-22 2018-11-16 中国人民解放军国防科技大学 Block chain-based equipment networking authentication method
CN108848119A (en) * 2018-04-03 2018-11-20 阿里巴巴集团控股有限公司 The exchange method and device, system, electronic equipment of transregional piece of chain
CN110708347A (en) * 2018-07-10 2020-01-17 福建省天奕网络科技有限公司 Block chain-based big data transmission method and storage medium
CN111182009A (en) * 2018-11-09 2020-05-19 北京天德科技有限公司 Method for multi-sink distribution of block chain transaction message
CN111211958A (en) * 2019-12-26 2020-05-29 达闼科技成都有限公司 Method and device for providing VPN (virtual private network) service, block chain network and node equipment
US20200195645A1 (en) * 2019-07-24 2020-06-18 Alibaba Group Holding Limited Blockchain-based account management
US20200296152A1 (en) * 2019-06-11 2020-09-17 Alibaba Group Holding Limited Blockchain-based file processing method, apparatus, and device, and storage medium
US20200320488A1 (en) * 2019-04-08 2020-10-08 Alibaba Group Holding Limited Transferring digital tickets based on blockchain networks
CN112994892A (en) * 2020-12-17 2021-06-18 中国工商银行股份有限公司 Cross-chain interaction method, device and system and electronic equipment
CN113542405A (en) * 2021-07-14 2021-10-22 广东卓启云链科技有限公司 Block chain-based network communication system, method, device and storage medium
US20210344519A1 (en) * 2020-08-28 2021-11-04 Alipay (Hangzhou) Information Technology Co., Ltd. Communication optimization systems of blockchain network, registration methods and message forwarding methods

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108848119A (en) * 2018-04-03 2018-11-20 阿里巴巴集团控股有限公司 The exchange method and device, system, electronic equipment of transregional piece of chain
CN108833081A (en) * 2018-06-22 2018-11-16 中国人民解放军国防科技大学 Block chain-based equipment networking authentication method
CN110708347A (en) * 2018-07-10 2020-01-17 福建省天奕网络科技有限公司 Block chain-based big data transmission method and storage medium
CN111182009A (en) * 2018-11-09 2020-05-19 北京天德科技有限公司 Method for multi-sink distribution of block chain transaction message
US20200320488A1 (en) * 2019-04-08 2020-10-08 Alibaba Group Holding Limited Transferring digital tickets based on blockchain networks
US20200296152A1 (en) * 2019-06-11 2020-09-17 Alibaba Group Holding Limited Blockchain-based file processing method, apparatus, and device, and storage medium
US20200195645A1 (en) * 2019-07-24 2020-06-18 Alibaba Group Holding Limited Blockchain-based account management
CN111211958A (en) * 2019-12-26 2020-05-29 达闼科技成都有限公司 Method and device for providing VPN (virtual private network) service, block chain network and node equipment
US20210344519A1 (en) * 2020-08-28 2021-11-04 Alipay (Hangzhou) Information Technology Co., Ltd. Communication optimization systems of blockchain network, registration methods and message forwarding methods
CN112994892A (en) * 2020-12-17 2021-06-18 中国工商银行股份有限公司 Cross-chain interaction method, device and system and electronic equipment
CN113542405A (en) * 2021-07-14 2021-10-22 广东卓启云链科技有限公司 Block chain-based network communication system, method, device and storage medium

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
YUAN LU, QIANG TANG, GUILING WANG: "Generic Superlight Client for Permissionless Blockchains", IN THE 25TH EUROPEAN SYMPOSIUM ON RESEARCH IN COMPUTER SECURITY (ESORICS) 2020., pages 1 - 36 *
刘沆, 曹雨微, 任泳洁等: "区块链技术在分布式能源交易体系中的应用研究", 价格理论与实践, no. 08, pages 154 - 158 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114257487A (en) * 2021-11-26 2022-03-29 蚂蚁区块链科技(上海)有限公司 System and method for managing a set of network nodes
WO2023231343A1 (en) * 2022-06-01 2023-12-07 蚂蚁区块链科技(上海)有限公司 Method for running consortium chain network, and consortium chain network and node device for consortium chain network

Similar Documents

Publication Publication Date Title
US10484190B2 (en) Managing channels in an open data ecosystem
EP3861706B1 (en) Framework for dynamic brokerage and management of topics and data at the service layer
US11540201B2 (en) Network awareness of device location
WO2016115735A1 (en) Processing high volume network data
CN114157671A (en) Method for distributing information carried by blockchain network to a plurality of client nodes
EP3248340A1 (en) Processing high volume network data
EP3738036A1 (en) Distributed processing system and method for the provision of location based services
US20090083210A1 (en) Exchange of syncronization data and metadata
O'HARE et al. Sensor web interaction
US20210409346A1 (en) Metadata driven static determination of controller availability
WO2019109923A1 (en) Message processing method and system, storage medium and electronic device
US8751711B2 (en) Storage topology manager
US20160094485A1 (en) Open m2m system and method
CN114090388A (en) Information acquisition method, server cluster, server and equipment
US20190182356A1 (en) Data networking method in data-centric network system and apparatus implementing same
CN113452600A (en) Cross-region message communication method and device, electronic equipment and storage medium
CN114257487B (en) System and method for managing a set of network nodes
US20160013966A1 (en) Device Circles
KR20120112523A (en) Electronic device and operating method of the same
US10334025B2 (en) Adaptive query targeting in a dynamic distributed environment
Sbeyti et al. Scalable extensible middleware framework for context-aware mobile applications (SCAMMP).
Chihani et al. Programmable context awareness framework
JP6752944B2 (en) Devices and methods for sharing images received from user terminals with other user terminals
Milenkovic Internet of things: System reference architecture
WO2021134252A1 (en) Inter-device communication method and apparatus, and storage medium

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination