E2E Delay Estimation System and Method between Blockchain Nodes in a P2P Network
The system constructs multi-dimensional coordinate systems to estimate E2E delays between blockchain nodes, reducing overhead and enhancing scalability and security in P2P networks.
Patent Information
- Application Number
- JP2023195725
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Priority Date
- 2023-09-21
- Filing Date
- 2023-11-17
- Publication Date
- 2025-07-22
- Estimated Expiration
- 2043-11-17
AI Technical Summary
Existing methods for estimating end-to-end (E2E) delays between blockchain nodes in a peer-to-peer (P2P) network require significant control message overhead and struggle to adapt to the dynamic nature of P2P networks, impacting scalability and security.
A system and method that constructs multi-dimensional coordinate systems using control messages to estimate E2E delays, allowing for accurate delay calculations with reduced overhead and adaptive maintenance to network changes.
Enables efficient E2E delay estimation with O(N) control message overhead, improving scalability and security in both permissioned and permissionless blockchains by accurately maintaining coordinate systems in time-varying P2P networks.
Smart Images

Figure 0007710750000015 
Figure 0007710750000016 
Figure 0007710750000017
Abstract
Description
Technical Field
[0001] The present disclosure relates to network delay estimation technology, and more particularly, to a system and method for estimating highly scalable and accurate end-to-end (E2E) delays between large-scale blockchain nodes in a peer-to-peer (P2P) network.
Background Art
[0002] A blockchain system is a decentralized and distributed ledger that makes it almost impossible to tamper with the stored data. The blockchain system has received considerable attention in recent years due to its security, transparency, and potential to provide a decentralized system that can revolutionize various industries. Cryptocurrency is one of the most popular blockchain applications.
[0003] Recently, non-fungible tokens (NFTs) based on the blockchain infrastructure have emerged rapidly in online marketplaces, creating a new value paradigm. Blockchain applications for various services pose high-level scalability requirements. However, in a decentralized environment known as the blockchain trilemma, it is very difficult to implement a secure and highly scalable blockchain. Therefore, blockchain systems are designed according to the purpose while sacrificing some of their attributes.
[0004] For example, blockchain systems are divided into two types: permissionless blockchains that focus on decentralization while sacrificing scalability to some extent, and permissioned blockchains that enhance scalability while sacrificing decentralization to some extent. A permissionless blockchain is a completely decentralized blockchain where anyone can join the blockchain and generate new blocks. Bitcoin and Ethereum are commonly used permissionless blockchains.
[0005] However, in such blockchains, scalability is sacrificed and 51% attacks can occur. In particular, the performance of the blockchain can be limited in a large-scale network environment. Therefore, considerable research efforts are underway to improve the scalability of permissionless blockchains.
[0006] For example, the Byzantine contract protocol that uses a pure proof-of-stake approach to quickly and securely confirm transactions, an extensible off-chain framework for Ethereum that aims to increase the transaction throughput and reduce the fees, and independently processes transactions and periodically settles the processing results of the main chain, such as child chains, have been proposed. In addition, protocols that integrate the advantages of the directed acyclic graph structure and the existing blockchain to achieve high scalability and fast transaction processing have been proposed.
[0007] Also, in permissioned blockchains such as Hyperledger Fabric, Corda, and Quorum, only authenticated nodes can participate in the blockchain network. Different from permissionless blockchains, in permissioned blockchains, 51% attacks are considered that all nodes are trustworthy and the administrator controls the access, so 51% attacks do not pose a major threat. Therefore, the consensus process of permissioned blockchains can be simplified compared to permissionless blockchains, and thus their transactions can be quickly committed to the distributed ledger without computationally intensive mining operations.
[0008] However, the decentralization problem can still occur in permissioned blockchains. To solve the decentralization problem of permissioned blockchains, the prior art has proposed an executor architecture for reliable BaaS (Blockchain as a Service) to mitigate the threat to system security that depends on a centralized service provider, or introduced a blockchain-assisted audit framework to solve the on-chain personal information protection problem. In the blockchain-assisted audit framework, smart contracts are modeled for secure storage auditing.
[0009] In addition, the Hyperledger Fabric Working Group is trying to standardize by specifying an interoperability workflow that allows service providers hosted on different clouds to build and join a business network independently of the infrastructure.
[0010] Thus, in all of the permissionless and permissioned blockchains, the performance of the blockchain is highly related to network latency, especially block broadcast and consensus. For example, a large block propagation delay seriously affects the consistency of the blockchain network, which increases the ratio of stale blocks and blockchain forks (forks). This not only reduces the number of transactions per second (TPS) but also may cause security and fairness problems.
[0011] A P2P (peer-to-peer) network can operate as the blockchain backbone network. However, in a P2P network, any pair of nodes can be logically connected through the P2P network. Therefore, theoretically, O(N) is required to measure the end-to-end (E2E) delay value between blockchain nodes. 2Control messages may be necessary. And it is widely known that these E2E delay values vary within a relatively wide range, and the connection may be vulnerable due to the conditions of the P2P network itself.
[0012] This indicates that measuring all E2E delays between blockchain nodes is a heavy burden on network management. Therefore, accurately estimating network delay with a small amount of control message overhead in a time-varying P2P network environment is an important element in effectively solving blockchain problems.
[0013] Some research efforts have been made to estimate E2E delay through P2P networks so far. For example, GNP (Global Network Positioning), a coordinate-based network distance estimation method through the Internet that models the Internet in geometric space, has been proposed. However, it is difficult to select an optimal reference node without geographical information in this method, and it is difficult to effectively respond to changes in the network state of nodes in a time-varying P2P network environment.
[0014] Also, for example, the Vivaldi algorithm that assigns synthetic coordinates to Internet hosts in a distributed manner without a fixed network infrastructure has been proposed. However, the difference between the measured delay and the estimated delay is still very large in this method, and a large amount of control message overhead is required because each node independently constructs its own coordinate system, and the convergence is very slow compared to the conditions of a time-varying P2P network.
[0015] Also, for example, a method of introducing Pharos control that improves the accuracy of the Vivaldi algorithm by assigning multiple coordinates to each node according to the scale of the network distance range has been proposed. However, this method still requires a large amount of control message overhead to construct a coordinate system.
[0016] In addition, for example, a method has been proposed in which the entire space is divided into three clusters to form a lower space and the existing algorithm is used to process triangle inequality violations (TIV). However, this method has the disadvantage that the node must know the cluster to which it belongs and requires a large amount of control message overhead.
[0017] In this way, network delay not only affects the transactions per second and scalability of the blockchain, but still remains a major obstacle to the performance of the blockchain due to the high risk of security problems. Therefore, there is a need for a new solution to estimate the end-to-end (E2E) delay between a large number of blockchain nodes with O(N) level control message overhead in a P2P network.
Summary of the Invention
Problems to be Solved by the Invention
[0018] The present disclosure has been derived to meet the requirements of the above-described prior art. The object of the present disclosure is to provide a method and system capable of accurately estimating the end-to-end (E2E) delay between all blockchain nodes with O(N) control message overhead.
[0019] Another object of the present disclosure is to provide an E2E delay estimation system and method capable of effectively managing the coordinates applied to each blockchain node by sensing changes in the state of the network in a P2P network environment that changes over time.
Means for Solving the Problems
[0020] A delay estimation system according to one aspect of the present disclosure for solving the above technical problems is an E2E (edge to edge) delay estimation system between blockchain nodes of a P2P (peer to peer) network, which designates an origin node among participating nodes having a distributed ledger of the P2P network, designates an anchor node, and constructs a first coordinate system of a predetermined dimension through control message exchange between the origin node, the anchor node, and the participating nodes, and constructs a second coordinate system of still other predetermined dimensions; and a dimension determination unit that compares the delays for each dimension of the first coordinate system and the second coordinate system and determines a dimension to be applied to the current P2P network.
[0021] The control message exchange between the verification node including the coordinate system construction unit and the dimension determination unit and the origin node is performed through a first control message, the control message exchange between the verification node and the anchor node is performed through the first control message, and the control message exchange between the anchor node and the participating nodes may be performed through a second control message.
[0022] The first control message may include information indicating a dimension, information indicating a node identifier, information indicating an event type, and information indicating the number of reference nodes.
[0023] The event type can be used to distinguish between a control message for coordinate system construction and a control message for coordinate system management.
[0024] The second control message may include information indicating a message type and information indicating a dimension.
[0025] The E2E delay estimation system may further include a coordinate system management unit that, after the coordinate system is constructed, requests the origin node for its own coordinate value in the current P2P network, and updates the coordinate value of the origin node when the new coordinate value received from the origin node has a difference greater than or equal to a reference value from the previous coordinate value.
[0026] The delay estimation method according to another aspect of the present disclosure for solving the above technical problem is an E2E (edge to edge) delay estimation method between blockchain nodes in a P2P (peer to peer) network, and includes steps of: setting, by a verification node, a first participating node among a plurality of participating nodes that are blockchain nodes as an orderer or an origin node; transmitting first reference node information to a plurality of anchor nodes selected from among the plurality of participating nodes; receiving reports of coordinate values and E2E delay measurement values from the plurality of anchor nodes; transmitting second reference node information to a third participating node that does not belong to the origin node and the plurality of anchor nodes among the plurality of participating nodes; receiving reports of coordinate values and E2E delay measurement values from the third participating node; calculating a first control message overhead for a preset first-dimensional coordinate system constructed based on the coordinate values and E2E delay measurement values from the plurality of anchor nodes and the third participating node; calculating a second control message overhead for a second-dimensional coordinate system different from the preset first dimension constructed based on the coordinate values and E2E delay measurement values from the plurality of anchor nodes and the third participating node; and comparing the first control message overhead and the second control message overhead to determine a dimension of an E2E delay estimation coordinate system to be applied to the current P2P network.
[0027] After the coordinate system is constructed, the delay estimation method may further include steps of requesting the origin node for its own coordinate value in the current P2P network, and managing to update the coordinate value of the origin node when the new coordinate value received from the origin node has a difference greater than or equal to a reference value from the previous coordinate value.
[0028] The delay estimation system according to still another aspect of the present disclosure for solving the above technical problems is an E2E (edge to edge) delay estimation system between blockchain nodes in a P2P (peer to peer) network, including a memory that stores at least one instruction; and a processor coupled to the memory that executes the at least one instruction.
[0029] Here, by the at least one instruction, the processor sets one node (for example, "the first participating node") among a plurality of participating nodes that are blockchain nodes as an orderer or an origin node; transmits first reference node information to a plurality of anchor nodes selected from among the plurality of participating nodes; receives reports of coordinate values and E2E delay measurement values from the plurality of anchor nodes; transmits second reference node information to a third participating node that does not belong to the origin node and the plurality of anchor nodes among the plurality of participating nodes; receives reports of coordinate values and E2E delay measurement values from the third participating node; calculates a first control message overhead for a preset first-dimensional coordinate system constructed based on the coordinate values and E2E delay measurement values from the plurality of anchor nodes and the third participating node; calculates a second control message overhead for a second-dimensional coordinate system different from the preset first dimension constructed based on the coordinate values and E2E delay measurement values from the plurality of anchor nodes and the third participating node; and compares the first control message overhead and the second control message overhead to determine the dimension of the E2E delay estimation coordinate system to be applied to the current P2P network.
[0030] The processor can perform control message exchange between the verification node and the origin node through a first control message, and can perform control message exchange between the verification node and the anchor node through the first control message. Here, the control message exchange between the anchor node and the participating node can be performed through a second control message having a format different from that of the first control message.
[0031] After the coordinate system is constructed, the processor requests the origin node for its own coordinate value in the current P2P network, and when the new coordinate value received from the origin node has a difference greater than or equal to a reference value from the previous coordinate value, the processor can further perform a step of managing to update the coordinate value of the origin node.
Advantages of the Invention
[0032] According to the present disclosure, by defining that the Euclidean distance between two blockchain nodes in a P2P (peer to peer) network represents the corresponding edge-to-edge (E2E) delay, all blockchain nodes can be arranged in a high-dimensional (4D or higher) vector space based on the E2E delay value, and the transmission delay of the actual network can be quickly calculated through a multi-dimensional coordinate system, thereby greatly reducing the control message overhead for corresponding to large-scale blockchain nodes and providing a highly scalable and accurate E2E delay estimation solution.
[0033] Also, according to the present disclosure, an E2E delay estimation system can be provided that incorporates a coordinate maintenance process so as to accurately maintain a coordinate system that supports the coordinate values assigned to each blockchain node in a P2P network environment that changes over time, i.e., a P2P network environment that changes over time. According to such a new E2E delay estimation system, a coordinate maintenance management process can be introduced to effectively maintain the coordinate system, thereby effectively grasping and maintaining the inter-node transmission delay required to construct a blockchain P2P network.
[0034] In addition, according to the present disclosure, not only block transmission but also estimated E2E delay information between blockchain nodes can be provided to the consensus committee configuration within the blockchain platform. Such E2E delay estimation information can be used not only in permissioned blockchains but also in permissionless blockchains to improve the stability and reliability of the blockchain system. Moreover, an E2E delay estimation system can be easily implemented using widely known open source, and through this, the performance of the implemented system can be effectively verified.
Brief Description of the Drawings
[0035]
Figure 1
Figure 2
Figure 3
Figure 4
Figure 5
Figure 6
Figure 7
Figure 8
Figure 9
Figure 10
Figure 11
Figure 12
Figure 13
Embodiments for Carrying Out the Invention
[0036] The present invention can be subjected to various modifications and can have various embodiments. Specific embodiments will be illustrated in the drawings and described in detail. However, this is not intended to limit the present invention to specific embodiments, and it should be understood to include all modifications, equivalents, and alternatives included in the spirit and technical scope of the present invention.
[0037] Terms such as first, second, etc. can be used to describe various components, but the components should not be limited by these terms. These terms are only used for the purpose of distinguishing one component from another. For example, without departing from the scope of the rights of the present invention, the first component can be named the second component, and similarly, the second component can also be named the first component. The term "and / or" includes a combination of a plurality of related described items or any one of the plurality of related described items.
[0038] In the embodiments of this application, "at least one of A and B" may mean "at least one of A or B" or "at least one of one or more combinations of A and B". Also, in the embodiments of this application, "one or more of A and B" may mean "one or more of A or B" or "one or more of one or more combinations of A and B".
[0039] When a component is referred to as being "coupled" or "connected" to another component, it should be understood that it may be directly coupled or connected to the other component, or there may be other components in between. On the contrary, when a component is referred to as being "directly coupled" or "directly connected" to another component, it should be understood that there are no other components in between.
[0040] The terms used in this application are only used to describe specific embodiments and are not intended to limit the present invention. Singular expressions include plural expressions unless the context clearly dictates otherwise. In this application, terms such as "comprising" or "having" are intended to specify the presence of the features, numbers, steps, operations, components, parts, or combinations thereof described in the specification, and should not be construed as precluding the possibility of the presence or addition of one or more other features, numbers, steps, operations, components, parts, or combinations thereof.
[0041] Unless otherwise defined, all terms used herein, including technical and scientific terms, have the same meaning as commonly understood by one of ordinary skill in the technical field to which this invention belongs. Terms defined as in a commonly used dictionary should be interpreted as having a meaning consistent with the meaning in the context of the related art, and should not be interpreted in an idealized or overly formal sense unless clearly defined in this application.
[0042] Hereinafter, with reference to the accompanying drawings, preferred embodiments of the present invention will be described in more detail. In describing the present invention, for the sake of easy overall understanding, the same reference numerals are used for the same components in the drawings, and duplicate descriptions of the same components are omitted.
[0043] FIG. 1 is an exemplary diagram of a P2P (peer to peer) network topology that can adopt an E2E (edge to edge) delay estimation method according to an embodiment of the present disclosure.
[0044] As illustrated in FIG. 1, the P2P network topology can be configured in consideration of actual network delay values from South Korea to the western United States and the eastern United States. In the P2P network topology, the network delay value can be set based on the delay value measured through the actual Internet. For example, the delay value is displayed numerically at each communication node. Among the nodes in each region in the P2P network topology, the three maximum E2E delays are approximately 46 ms, approximately 37 ms, and approximately 36 ms. Such delay values can be measured under the assumption that there is one origin node and one verification node for simplification, and that 80 nodes are evenly distributed among the edge routers. And considering the time-varying P2P network, the critical value for coordinate maintenance can be set to 10 ms.
[0045] The performance of the blockchain nodes can be examined by estimating the end-to-end E2E delay between the blockchain nodes in the P2P network in a realistic router-level network connected to the edge routers or a realistic router-level network emulation environment corresponding thereto. The blockchain nodes are verification nodes and can be any one of the communication nodes including the edges and routers on the P2P network.
[0046] To realistically emulate a network environment, Mininet, Containernet, etc. can be used. The E2E delay estimation system of this embodiment can be implemented in containers on blockchain nodes and can be easily integrated with other containers of an existing blockchain platform.
[0047] In this embodiment, all blockchain nodes in the P2P network can be participating nodes having a distributed ledger. Also, among the blockchain nodes, the verification nodes can be designated by the participating nodes that are spontaneously responsible for the configuration and management of the coordinate system. The verification nodes can be replaced at any time according to the mutual agreement depending on the node state and the network state.
[0048] FIG. 2 is a block diagram of a blockchain platform architecture that can employ the E2E delay estimation system according to an embodiment of the present disclosure.
[0049] Referring to FIG. 2, a blockchain platform for the E2E delay estimation system includes a blockchain module 900 responsible for consensus and a network module 1000 that processes block data and consensus message transmission. The blockchain module 900 and the network module 1000 can cooperate closely with each other to improve the quality of service (QoS) of the blockchain service.
[0050] The blockchain module 900 can include a committee management module 200, a blockchain interface (I / F) client module 400, and an audit chain module 600. And the network module 1000 can include a network monitoring & management module 100, a BD / CM transmission module 500 for transmitting blockchain data (BD) and / or consensus messages (CM), and a consensus network module 700.
[0051] The E2E delay estimation system of this embodiment can include an E2E delay estimation unit 300 included in the network monitoring and management module 100 of the network module 1000. The E2E delay estimation unit 300 has an O(N) control message overhead. Thus, the E2E delay estimation unit 300 has excellent performance compared with the existing delay estimation technologies having an existing O(N 2 ) control message overhead.
[0052] In the following description, for the sake of convenience of explanation, the E2E delay estimation unit 300 will be referred to as the E2E delay estimation system.
[0053] FIG. 3 is a schematic block diagram of the configuration of an E2E delay estimation system applicable to the blockchain platform architecture of FIG. 2.
[0054] Referring to FIG. 3, the E2E delay estimation system 300 includes a coordinate system configuration unit 310, a dimension determination unit 330, and a coordinate system management unit 350. The E2E delay estimation system 300 can be installed on a verification node designated by a participating node that is spontaneously responsible for the configuration and management of the coordinate system.
[0055] The coordinate system configuration unit 310 can perform an E2E delay-based coordinate system constructing process. In other words, the coordinate system configuration unit 310 can perform a scalable E2E delay estimation process that can be extended in a high-dimensional vector space.
[0056] For this purpose, the coordinate system configuration unit 310 can specify an origin node among the participating nodes having the distributed ledger of the P2P network, specify an anchor node, and configure a coordinate system through control message exchange with the origin node, the anchor node, and the remaining participating nodes. In particular, the coordinate system configuration unit 310 can configure a coordinate system for a predetermined dimension and can configure a coordinate system for other predetermined dimensions. That is, the coordinate system configuration unit 310 can configure each coordinate system in substantially the same manner for a plurality of preset dimensions.
[0057] The dimension determination unit 330 includes, as functional elements, a dimension-specific delay estimation unit module 332, a comparison unit 334, and a determination unit 336. Through these functional elements, in a dimension determination process, it estimates the dimension-specific delays in multi-dimensional coordinate systems such as two-dimensional, three-dimensional, four-dimensional, five-dimensional, six-dimensional, etc., compares the estimated dimension-specific delay values, and can determine to use, as the coordinate system of the P2P network, any one of the dimension with the smallest overall delay estimation error value, the dimension with the least control message cost required for coordinate system construction, and the dimension selected according to a preset dimension determination policy.
[0058] The coordinate system management unit 350 can perform a coordinate maintenance process. The coordinate system management unit 350 manages, through the coordinate maintenance process, the coordinates of the origin node, anchor nodes, and the remaining participating nodes in a P2P network that changes over time, and can update them as needed.
[0059] According to the E2E delay estimation system of this embodiment, it is possible to estimate the E2E delay among many blockchain nodes with an O(N) control message overhead through the P2P network. In particular, in order to support large-scale blockchain nodes, it is possible to provide an E2E delay estimation system with low control message overhead, scalability, and accuracy. Also, regardless of the P2P network conditions that change over time, the coordinate system can be accurately maintained.
[0060] Also, according to the E2E delay estimation system of this embodiment, the estimated E2E delay information among blockchain nodes can be utilized not only for block transmission but also for the composition of the consensus committee within the blockchain platform. Therefore, the E2E delay estimation system can be effectively applied not only to permissioned blockchains but also to permissionless blockchains.
[0061] On the one hand, in order to actually improve the performance of the blockchain platform, it is necessary to estimate the end-to-end (E2E) delay between distributed blockchain nodes with low control message overhead. To achieve such a goal, blockchain nodes are represented as points, and the Euclidean distance between two points represents the E2E delay between the corresponding nodes in an n-dimensional N dim An E2E delay-based coordinate system can be constructed in the vector space.
[0062] Figure 4 is a flowchart for explaining the main operating principle of the coordinate system configuration unit in Figure 3.
[0063] Referring to Figure 4, the E2E delay estimation system corresponding to the verification node 410 including the coordinate system configuration unit can first set one of the participating nodes, which are blockchain nodes, as the origin node 420 of the coordinate system for a predetermined dimension (S41). The origin node 420 can be one of the Ethereum validators or an orderer of the Hyperledger Fabric.
[0064] Next, the verification node 410 can transmit referencing nodes information to a first anchor node 430 selected from among the participating nodes using a first control message (S42). The first anchor node 430 can request coordinate values from the origin node 420 based on the referencing nodes information and using a second control message, and receive a response of the coordinate values from the origin node 420 (S43a, S43b). At the same time, the first anchor node 430 measures the E2E delay with the origin node 420 (S44). The first anchor node 430 can calculate its own coordinate values through the coordinate values of the origin node 420 received from the origin node 420 and the measured E2E delay. Then, the first anchor node 430 can report the coordinate values of the anchor nodes including the first anchor node 430 and a second anchor node to the verification node 410 (S45).
[0065] Also, the first anchor node 430 can request coordinate values from at least one second anchor node (not shown) based on the referencing nodes information and using a second control message, and receive a response of the coordinate values from the second anchor node.
[0066] Next, the verification node 410 can transmit referencing nodes information to at least one second anchor node based on the coordinate value report of the first anchor node 430, and receive a coordinate value report from the at least one second anchor node. At this time, before transmitting a control message for coordinate value reporting to the verification node 410, the second anchor node requests coordinate values from the origin node 420 based on the referencing nodes information of the verification node 410, receives a response to the coordinate values from the origin node 420, requests coordinate values from other anchor nodes and receives responses of the coordinate values from the other anchor nodes, and can measure the E2E delay with the origin node 420 and the E2E delay with the other anchor nodes, respectively.
[0067] In this way, the verification node 410 can obtain the coordinate values of all the anchor nodes. Also, the verification node 410 can obtain the E2E delay values measured at each anchor node.
[0068] Next, the verification node 410 can transmit a first control message to the origin node 420 and the participating nodes 440 other than the anchor nodes (S46). The first control message can include reference node information. The participating node 440 that has received the first control message from the verification node 410 requests the coordinate values from the anchor nodes including the first anchor node 430 and the origin node 420 through a second control message (S47a, S47b), and can receive responses to the coordinate values from each node through the second control message (S48a, S48b). At this time, the participating node 440 can measure the E2E delay with the origin node 420 and the E2E delay with each anchor node respectively (S49). Then, the participating node 440 can report the coordinate values and the measured E2E delay values to the verification node 410 (S50).
[0069] In this way, the verification node 410 can obtain the coordinate values of the origin node 420 and all the participating nodes 440 other than the anchor nodes. Also, the verification node 410 can obtain the E2E delay values measured at each of all the participating nodes.
[0070] According to the configuration described above, the coordinate system configuration unit or the E2E delay estimation system including the same can configure a coordinate system of a specific dimension. Also, the coordinate system configuration unit or the E2E delay estimation system including the same can configure a coordinate system for still another dimension by repeatedly performing the above process substantially identically for still another dimension. For example, a three-dimensional coordinate system includes at least three anchor nodes to form a coordinate axis starting from the origin node, a four-dimensional coordinate system includes at least four anchor nodes, a five-dimensional coordinate system includes at least five anchor nodes, and a six-dimensional coordinate system can include at least six anchor nodes.
[0071] FIG. 5 is a flowchart for explaining the main operating principle of the coordinate system management unit of FIG. 3.
[0072] Referring to FIG. 5, an E2E delay estimation system including a coordinate system management unit and corresponding to a verification node 410 can transmit reference node information to an origin node 420 which is an orderer of a P2P network (S51). Here, the origin node 420 operates as an origin node of a coordinate system for a specific dimension determined by a dimension determination unit among the dimensions in which the E2E delay is respectively estimated by a coordinate system configuration unit. That is, the origin node 420 can receive reference node information from the verification node 410 through a first control message (S51).
[0073] The origin node 420 requests coordinate values from each anchor node including a first anchor node 430 and each participating node 440 using a second control message (S52a, S52b), and can receive responses to the coordinate values from each anchor node and each participating node respectively (S53a, 53b). At this time, the origin node 420 can measure the E2E delay with each anchor node and the E2E delay with each participating node 440 through the transmission and reception of the second control message (S54).
[0074] Thereafter, the origin node 420 can calculate new coordinate values based on the measured E2E delay values and the coordinate values received from each anchor node and each participating node (S54). Then, the origin node 420 can generate relative position variation information based on the calculated new coordinate values and the existing coordinate values.
[0075] Next, the origin node 420 can report the new coordinate values and the relative position variation information to the verification node 410 (S56). That is, the verification node 410 can receive the report of the new coordinate values and the relative position variation information from the origin node 420. The new coordinate values can follow the variation of the P2P network itself that changes over time.
[0076] Next, the verification node 410 can determine whether coordinate update is necessary based on the new coordinate values (S57). If coordinate update is necessary, the verification node 410 can transmit a first control message for coordinate value update to the origin node 420 (S58). That is, the origin node 420 can receive the first control message for coordinate value update from the verification node 410.
[0077] When the first control message for coordinate value update is received, the origin node 420 can update its own coordinates and the coordinate system including the same based on the coordinate value update information.
[0078] According to the above-described configuration, the verification node 410 can construct an E2E delay-based coordinate system through the anchor nodes, construct control messages with all participating nodes, construct a coordinate system for each dimension, and estimate the E2E delay of each coordinate system. According to such a configuration, the verification node 410, that is, the E2E delay estimation system, can select and manage a coordinate system of a specific dimension that exhibits optimal performance in the current P2P network based on the E2E delay states estimated for each dimension of the coordinate system for each dimension.
[0079] Also, a specific control message format can be designed and used to efficiently obtain the coordinate values of each node in the P2P network.
[0080] FIG. 6 is a drawing showing a first control message format for transmitting referencing nodes information that can be adopted in the E2E delay estimation method of the present embodiment.
[0081] Referring to FIG. 6, the first control message 610 can include information indicating N dimensions (Ndim), information indicating a node identifier (NodeIdx), information indicating an event type (EventType), and information indicating the number of reference nodes (NumRef). Here, N can be a natural number from 2 or more to 10 or less.
[0082] The event type (EventType) can be used to distinguish whether it is a control message for coordinate system configuration or a control message for coordinate system management. For example, when the event type is 0, it indicates that it is a control message for coordinate system configuration, and when the event type is 1, it can indicate that it is a control message for coordinate system management. The event type can be configured in various forms with at least two different values, numbers, characters, symbols, or combinations thereof, in addition to the forms of 0 and 1.
[0083] Also, the first control message 610 can include reference node information such as the first reference node IP (internet protocol) (Ref Node IP #1), the second reference node IP (Ref Node IP #2), etc. Such a first control message 610 is transmitted from the verification node to the participating nodes. The participating nodes can include the origin node and the anchor node.
[0084] FIG. 7 is a drawing showing a second control message format for transmitting and receiving coordinate values that can be adopted in the E2E delay estimation method of this embodiment.
[0085] Referring to FIG. 7, the second control message 710 can include information indicating the message type (MsgType) and information indicating the corresponding dimension (Ndim). The message type is for indicating whether the corresponding control message is a request message or a response message. The message type can be displayed as "A" when the corresponding control message is a request message, and can be displayed as "B" when the corresponding control message is a response message, but is not limited thereto. The message type can be configured in various forms with at least two different values, numbers, characters, symbols, or combinations thereof.
[0086] In addition, the second control message 710 can include coordinate values such as a first coordinate value (coordinate value x_1), a second coordinate value (coordinate value x_2), and an Nth coordinate value (coordinate value x_Ndim).
[0087] The second control message 710 is exchanged among the participating nodes. The participating nodes can include an origin node and an anchor node.
[0088] According to the control message formats of FIGS. 6 and 7 described above, each participating node can measure the E2E delay value while exchanging the second control message with other reference nodes, that is, the participating nodes that already identify the coordinate values, in order to obtain the coordinate values.
[0089] After the E2E delay-based coordinate system is constructed, the verification node can periodically or on-demand when there is a request from at least one of the participating nodes, execute a coordinate maintenance process to detect network state changes and manage the coordinate system.
[0090] As described above, since any two nodes can be logically connected to each other through the P2P network, theoretically O(N peer ) control message overhead can occur to measure all E2E delay values among a plurality (N peer 2 ) of participating nodes. Such overhead can impose a large burden on the P2P network as the number of participating nodes increases. Therefore, the E2E delay estimation system of this embodiment provides an efficient E2E delay estimation process with O(N peer ) message overhead.
[0091] FIGS. 8 to 11 are exemplary diagrams for more specifically explaining the multi-dimensional coordinate system construction procedure that can be adopted in the E2E delay estimation method of this embodiment.
[0092] Referring to FIGS. 8 to 11, the E2E delay estimation system is a pre-selected verification node with a minimum dimension D min to a maximum dimension D max selects a specific dimension n within the range dim A coordinate system can be constructed between the origin node and a randomly selected anchor node through control message exchange for the specific dimension n
[0093] Here, the specific dimension n dim can be a natural number between 1 and 10, and the number of anchor nodes selected by the verification node can be n dim pieces.
[0094] Below, (x i 1, x i 2, ···, x i Ndim ) represents the coordinate values of node i in the n dim dimensional vector space, and t ij represents the E2E delay measured between node i and node j. Here, the origin node can be represented as Node#0. And the anchor nodes can be located as far as possible from the origin node to reduce the influence of the E2E delay that changes over time and improve the accuracy of the coordinate system.
[0095] Specifically, as shown in FIG. 8, the E2E delay estimation system (hereinafter, also simply referred to as the "delay estimation system") can set one of the Ethereum validators or the orderer of the hyperledger fabric as the origin node (Node#0) of the coordinate system. The coordinates of the origin can be set as (0, 0, ···, 0). That is, the coordinates of the origin node (x 0 1, x 0 2, ···, x 0 Ndim ) in the N-dimension can be set as (0, 0, ···, 0).
[0096] Next, the delay estimation system can select any one of the participating nodes as the first node (Node#1) and define the straight line between the orderer and the first node (Node#1) as the first axis (x1). Then, the delay between the orderer and the first node (Node#1) can be measured through the orderer. Thereafter, the x1 coordinate of the first node (Node#1) can be defined as the delay measured above or a value corresponding to the delay.
[0097] When the x1 coordinate of the first node (Node#1) is (x 1 1, 0, ···, 0), the first node (Node#1) is the first anchor node and can be set as (t 0,1 1, 0, ···, 0). t 0,1 represents the delay time (time, t) between the origin node (Node#0) and the first anchor node (Node#1).
[0098] Next, as shown in FIG. 9, the delay estimation system selects any one of the participating nodes as the second node (Node#2). That is, the delay estimation system selects a second node (Node#2) that is not located on the straight line connecting the origin node (Node#0) and the first node (Node#1) as the second anchor node. Thereafter, the delay estimation system constructs the x1 - x2 plane using the origin node, the first anchor node, and the second anchor node.
[0099] Thereafter, the delay estimation system obtains the delay value between the second node (Node#2) and the orderer and the delay value between the second node (Node#2) and the first node (Node#1), and can calculate the delay between the origin node and the delay between the first anchor node based on the obtained E2E delay values and the coordinate values received from the origin node and the first anchor node as shown in the following formulas (1) and (2) respectively.
Equation
Equation
[0100] Here, the second node (Node#2) is the second anchor node, and its coordinate values can be represented as (x 2 1, x 2 2, ···, 0).
[0101] Therefore, among the candidate coordinate values of the second node (Node#2) which is the second anchor node, the x 2 1 coordinate value and the x 2 2 coordinate value are as shown in Equation 3 and Equation 4 respectively. [Number] [Number]
[0102] Actually, the two coordinate values x 2 1 and x 2 2 satisfy Equation 1 and Equation 2.
[0103] Next, as shown in FIG. 10, the delay estimation system can select a third anchor node (Node#3) that is not arranged on the x1 - x2 plane set above. That is, the delay estimation system can construct an x1 - x2 - x3 space with the origin node (Node#0) as the origin using the origin node, the first anchor node (Node#1), the second anchor node (Node#2), and the third anchor node (Node#3).
[0104] After that, the delay estimation system can obtain the E2E delay between the origin node, the first anchor node, and the second anchor node respectively through the third anchor node (Node#3), and can also obtain the candidate coordinate values of the third anchor node calculated at the third anchor node. Of course, the candidate coordinate values of the third anchor node can be calculated and obtained based on the E2E delay value received by the delay estimation system which is the verification node from the third anchor node.
[0105] When the coordinate values of the third anchor node are represented as (x 3 1, x 3 2, x 3 3, ···, 0), the candidate coordinate values x 3 1, x 3 2, x 3 3 of the third anchor node can be expressed as in the following equations 5, 6, and 7.
Equation
Equation
Equation
[0106] Thus, equations for the remaining anchor nodes, i.e., the anchor nodes from the fourth anchor node to the n dim -th anchor node, can be generalized.
[0107] Among the number of anchor nodes determined in advance according to a preset dimension, the randomly selected i-th (1 ≤ i ≤ n dim ) anchor node measures the E2E delay value with the origin node and the E2E delay value with the previous anchor node respectively. After measuring the E2E delay value and receiving the coordinate values of the previous anchor node, the candidate coordinate values of the i-th anchor node can be determined by the generalized equation.
[0108] As shown in Fig. 11, when the coordinates of the i-th anchor node are (x i 1, x i 2, ··· x i i , 0, ···, 0), the candidate coordinate values of the i-th anchor node can be generalized as in equations 8 and 9.
Equation
Equation
[0109] Based on the above equations (8) and (9), the delay estimation system can repeatedly perform the same procedure until finding the candidate coordinate values of the anchor nodes of (n dim ) th . On the other hand, since it is limited to explain the coordinate system construction process from the fourth anchor node in a figure, the pseudo code mentioned in the inventor's paper can be referred to.
[0110] To measure the E2E delay between the origin node and all anchor nodes, any (n dim + 1) th nodes can be selected. By using the (n dim + 1) th nodes, the coordinates of the previous anchor nodes can be finally determined, and the existence of the coordinate values of the current node can be guaranteed as shown in Equation (10).
Number
[0111] Here, (x ndim+1 1, x ndim+1 2, ···, x ndim+1 ndim ) can be the coordinate values of the participating nodes of (n dim + 1) th .
[0112] When a coordinate system in a specific dimension is constructed, after a new participating node transmits a request message to the origin node, many anchor nodes, and many reference nodes, it can measure the E2E delay value until receiving the corresponding response message containing the coordinate values, and then find its own coordinate values. The coordinate values of the new participating node can be obtained through the same process as described above.
[0113] In a distributed network environment, it can sometimes be more difficult to obtain sufficient information about nodes than to identify their coordinate values. That is, in the coordinate system construction process described above, for example, when the inverse matrix does not exist in matrix form, it may be difficult to determine the coordinates or additional delays may occur while changing the reference nodes. Therefore, in the delay estimation system of this embodiment, in order to solve such problems without additional delay, the coordinate values can be obtained by having a newly joined node contact a sufficient number of randomly selected nodes including anchor nodes.
[0114] In the above-described case, for example, when using only the origin node (Node#0) and three reference nodes, the inverse matrix of Equation 6 may not exist. To prepare for such a case, the delay estimation system can be configured to measure the transmission delay by exchanging control messages with four or more nodes in an overdetermined system operation mode and request coordinate values to obtain an approximated solution.
[0115] When the process of obtaining the approximated solution is expressed by an equation, it is as shown in Equation 11 below.
Equation
[0116] In Equation 11, N ref is the number of referencing nodes.
[0117] According to Equation 11, as shown in Equation 12, an approximated solution (vector ω app ) can be obtained and the error expressed by the norm of (vector ω app - vector b) can be minimized.
Equation
[0118] On the one hand, the delay estimation system can stably maintain the coordinate system by executing a coordinate maintenance process for the accuracy of coordinates in a time-varying P2P network. That is, the coordinate values of the participating nodes change according to the time-varying P2P network conditions. Therefore, the delay estimation system can operate a coordinate maintenance process to efficiently maintain the accuracy of the coordinate system despite changes in network conditions.
[0119] That is, at the origin node (Node#0), the coordinates of itself can be calculated periodically using the coordinate values of other nodes and the newly measured delay. At this time, if the calculated coordinate value of the origin node (Node#0) deviates significantly from the origin as a reference value, the coordinate system can be newly constructed.
[0120] For this purpose, in the coordinate maintenance process, the origin node (Node#0) selects dim n or more arbitrary nodes (Node#1,..., Node#N ref ), measures the transmission delay between each node through control message exchange, and can calculate the coordinate value of the origin node (Node#0) by performing an inverse matrix operation on Equation 13.
[0121] In this way, in the coordinate maintenance process, the delay estimation system allows the origin node to transmit a request message to the N ref reference nodes. After the current coordinate system is constructed, the origin node performs the same procedure as the process by which a new participating node obtains its coordinates, and can calculate its approximated coordinate value as in Equation 13 based on the response message thereby obtained.
Equation
[0122] Also, to illustrate a coordinate maintenance process applicable in a three-dimensional coordinate system, it is as shown in FIG. 12.
[0123] FIG. 12 is an exemplary diagram for explaining a three-dimensional coordinate management process that can be adopted in the E2E delay estimation method of this embodiment.
[0124] Referring to FIG. 12, in the coordinate management process of the delay estimation system, the origin node (Node#0) can select a plurality of nodes selected from any anchor node or participating node, for example, at least the first node (Node#1), the second node (Node#2), the third node (Node#3), and the k-th node (Node#k).
[0125] After that, the origin node (Node#0) can measure the transmission delays (d 0,1 , d 0,2 , ···, d 0,k ) between each pair of nodes through control message exchange with each of the selected nodes.
[0126] Next, the origin node can calculate the coordinate values (x0, y0, z0) of the origin node (Node#0) through the inverse matrix operation of a matrix as shown in Equation 14.
Equation
[0127] If the calculated coordinate values of the origin node (Node#0) deviate from the origin (0, 0, 0), which is the existing coordinate value of the previous origin node (Node#0), by more than a predetermined reference value, the delay estimation system can operate to reconstruct the coordinate system.
[0128] On the other hand, in the above-described embodiment, the origin node (Node #0) which is the orderer is illustrated as being located at the reference coordinates (0, 0, 0), but this embodiment is described assuming that the origin node has been moved to arbitrary coordinates (x0, y0, z0).
[0129] Thus, according to this embodiment, even when the end-to-end (E2E) delay between nodes changes due to the P2P network state change that varies over time, the network state change can be monitored to effectively manage the coordinate system centered on a specific reference node and update it as needed.
[0130] As described above, non-zero coordinates of the origin node indicate that the network state between blockchain nodes in the P2P network has changed. Therefore, the coordinate system needs to be updated immediately. To reduce the overhead for coordinate system updates, the delay estimation system can be set to update the coordinate system only when the difference between the origin node and the newly calculated coordinates of the origin is greater than a threshold value. The threshold value can follow the degree of change over time in the network environment. Therefore, in the E2E delay estimation between blockchain nodes in the P2P network, the control message complexity is O(N peer ).
[0131] FIG. 13 is a schematic block diagram for explaining the configuration of an E2E delay estimation system according to still another embodiment of the present disclosure.
[0132] Referring to FIG. 13, the delay estimation system 1300 can include at least one processor 1310. The delay estimation system 1300 can further include a transceiver 1330 connected to a memory 1320 or a network to perform communication. Also, the delay estimation system 1300 can further include at least one or more of an input interface device 1340, an output interface device 1350, and a storage device 1360. Each component included in the delay estimation system 1300 can be connected by a bus 1370 to perform communication.
[0133] The processor 1310 may mean a central processing unit (CPU), a graphics processing unit (GPU), or a dedicated processor on which the method according to an embodiment of the present invention is performed.
[0134] Each of the memory 1320 and the storage device 1360 may be composed of at least one of a volatile storage medium and a non-volatile storage medium. For example, the memory 1320 may be composed of at least one of a read only memory (ROM) and a random access memory (RAM).
[0135] Also, the processor 1310 can execute program commands stored in at least one of the memory 1320 and the storage device 1360. The program commands can include at least one command for a coordinate system configuration process, at least one command for a dimension determination process, at least one command for a coordinate management process, and the like.
[0136] The transceiver 1330 can include a communication interface or a sub-communication system for a short-range wireless network, a cable connection, communication with a satellite, wired or wireless communication with a general base station, an ideal backhaul link or a non-ideal backhaul link connection with a mobile edge core network or a core network.
[0137] The input interface device 1340 can include an input signal processing unit that maps or processes a signal input through at least one input means selected from at least one of input means such as a keyboard, a microphone, a touch pad, and a touch screen with a pre-stored command.
[0138] The output interface device 1350 includes an output signal processing unit that maps or processes the signals output under the control of the processor 1310 in a pre-stored signal form or level, and at least one output means for outputting signals or information in the form of vibration, light, etc. according to the signals of the output signal processing unit. The at least one output means can include at least one selected from output means such as speakers, display devices, printers, optical output devices, vibration output devices, etc.
[0139] Also, the method according to the present invention can be embodied in a program instruction form that can be executed through various computer means and recorded on a computer-readable medium. The computer-readable medium can include program instructions, data files, data structures, etc. alone or in combination. The program instructions recorded on the computer-readable medium may be those specially designed and configured for the present invention or those available and known to those skilled in computer software.
[0140] Examples of computer-readable media include hardware devices specially configured to store and execute program instructions such as ROM (read-only memory), RAM (random access memory), flash memory, etc. Examples of program instructions include not only machine language code generated by a compiler but also high-level language code that can be executed by a computer using an interpreter, etc. The above-described hardware devices can be configured to operate with at least one software module to perform the operation of the present invention, and vice versa.
[0141] Although some aspects of the present invention have been described in the context of apparatus, it can also represent corresponding method descriptions, where a block or apparatus corresponds to a method step or a feature of a method step. Similarly, aspects described in the context of a method can also be represented by corresponding blocks or items or features of a corresponding apparatus. Some or all of the method steps can be performed (or utilized) by a hardware device such as, for example, a microprocessor, a programmable computer, or an electronic circuit. In some embodiments, at least one or more of the most important method steps can be performed by such a device.
[0142] In an embodiment, a programmable logic device, for example, a field-programmable gate array can be used to perform some or all of the functions of the method described herein. In an embodiment, a field-programmable gate array can operate with a microprocessor to perform one of the methods described herein. Generally, it is preferred that the method be performed by some hardware device.
[0143] As described above with reference to the embodiments, those skilled in the relevant art will understand that the present invention can be variously modified and changed without departing from the spirit and scope of the present invention described in the following claims.
Claims
1. An E2E (edge to edge) delay estimation system between blockchain nodes in a P2P (peer to peer) network, comprising: A coordinate system construction unit that designates an origin node among participating nodes having a distributed ledger of the P2P network, designates an anchor node, and constructs a first coordinate system of a predetermined dimension through control message exchange between the origin node, the anchor node, and the participating nodes, and constructs a second coordinate system of still other predetermined dimensions; and A dimension determination unit; The dimension determination unit requests coordinate values from the anchor node and the participating nodes by the origin node respectively, and when receiving responses to the coordinate values from each anchor node and each participating node, estimates the per-dimension delays of the first coordinate system and the second coordinate system based on the E2E delays with each anchor node and the E2E delays with each participating node measured through the transmission and reception of control messages between each anchor node and each participating node, compares the estimated per-dimension delay values, and determines, as the coordinate system of the P2P network, any one of the dimension with the smallest delay estimation error value, the dimension with the least control message cost required for coordinate system construction, and the dimension selected according to a preset dimension determination policy. An E2E delay estimation system.
2. The control message exchange between the verification node including the coordinate system construction unit and the dimension determination unit and the origin node is performed through a first control message, the control message exchange between the verification node and the anchor node is performed through the first control message, and the control message exchange between the anchor node and the participating nodes is performed through a second control message. The E2E delay estimation system according to Claim 1.
3. The first control message includes information indicating a dimension, information indicating a node identifier, information indicating an event type, and information indicating the number of reference nodes. The E2E delay estimation system according to Claim 2.
4. The event type is used to distinguish between a control message for coordinate system construction and a control message for coordinate system management. The E2E delay estimation system according to claim 3, as a verification node, constructs a coordinate system between the origin node and a randomly selected anchor node through control message exchange for a specific dimension selected from a range of a preset minimum dimension to a maximum dimension, and selects a coordinate system of a specific dimension that exhibits optimal performance in the current P2P network based on the E2E delay states estimated for each dimension-based coordinate system.
5. The E2E delay estimation system according to claim 2, wherein the second control message includes information indicating a message type and information indicating a dimension.
6. After the first coordinate system and the second coordinate system are constructed, a coordinate system management unit is further included that requests the origin node for its own coordinate value in the current P2P network, and updates the coordinate value of the origin node when the new coordinate value received from the origin node has a difference greater than or equal to a reference value from the previous coordinate value. The E2E delay estimation system according to claim 1.
7. An E2E (edge to edge) delay estimation method between blockchain nodes in a P2P (peer to peer) network, comprising: setting, by a verification node, a first participating node among a plurality of participating nodes that are blockchain nodes as an orderer or an origin node; transmitting first reference node information to a plurality of anchor nodes selected from among the plurality of participating nodes; receiving reports of coordinate values and E2E delay measurement values from the plurality of anchor nodes; transmitting second reference node information to a third participating node that does not belong to the origin node and the plurality of anchor nodes among the plurality of participating nodes; receiving reports of coordinate values and E2E delay measurement values from the third participating node; calculating a first control message overhead for a preset first-dimensional coordinate system constructed based on the coordinate values and E2E delay measurement values from the plurality of anchor nodes and the third participating node; calculating a second control message overhead for a second dimension coordinate system different from the preset first dimension constructed based on the coordinate values and E2E delay measurement values from the plurality of anchor nodes and the third participating node; comparing the first control message overhead and the second control message overhead; and Determining the dimension of the E2E delay estimation coordinate system that applies any one of the dimension with the smallest delay estimation error value, the dimension with the least control message cost required for coordinate system construction, and the dimension selected by a preset dimension determination policy to the current P2P network; An E2E delay estimation method including.
8. The control message exchange between the verification node and the origin node is performed through a first control message, the control message exchange between the verification node and the anchor node is performed through the first control message, and the control message exchange between the anchor node and the participating node is performed through a second control message. The E2E delay estimation method according to claim 7.
9. The first control message includes information indicating a dimension, information indicating a node identifier, information indicating an event type, and information indicating the number of reference nodes. The E2E delay estimation method according to claim 8.
10. The event type is used to distinguish between a control message for coordinate system configuration and a control message for coordinate system management. The E2E delay estimation system, as a verification node, constructs a coordinate system between the origin node and a randomly selected anchor node through control message exchange for a specific dimension selected from a range of a preset minimum dimension to a maximum dimension, and based on the E2E delay states respectively estimated for the coordinate systems of different dimensions, selects a coordinate system of a specific dimension that exhibits optimal performance in the current P2P network. The E2E delay estimation method according to claim 9.
11. The second control message includes information indicating a message type and information indicating a dimension. The E2E delay estimation method according to claim 8.
12. After the coordinate systems of the first dimension and the second dimension are constructed, requesting the origin node for its own coordinate value in the current P2P network, and when the new coordinate value received from the origin node has a difference greater than or equal to a reference value from the previous coordinate value, further including the step of managing to update the coordinate value of the origin node. The E2E delay estimation method according to claim 7.
13. An E2E (edge to edge) delay estimation system between blockchain nodes of a P2P (peer to peer) network, Including a processor connected to a memory storing at least one instruction to execute the at least one instruction. By the at least one instruction, the processor sets a first participating node among a plurality of participating nodes that are blockchain nodes as an orderer or an origin node; transmits first reference node information to a plurality of anchor nodes selected from among the plurality of participating nodes; receives reports of coordinate values and E2E delay measurement values from the plurality of anchor nodes; transmits second reference node information to a third participating node that does not belong to the origin node and the plurality of anchor nodes among the plurality of participating nodes; receives reports of coordinate values and E2E delay measurement values from the third participating node; calculating a first control message overhead for a preset first-dimensional coordinate system constructed based on the coordinate values and E2E delay measurement values from the plurality of anchor nodes and the third participating node; calculating a second control message overhead for a second-dimensional coordinate system different from the preset first dimension constructed based on the coordinate values and E2E delay measurement values from the plurality of anchor nodes and the third participating node; comparing the first control message overhead and the second control message overhead; and determining a dimension of an E2E delay estimation coordinate system to be applied to the current P2P network from among a dimension with the smallest delay estimation error value, a dimension with the lowest control message cost required for coordinate system construction, and any one of the dimensions selected according to a preset dimension determination policy; An E2E delay estimation system that performs
14. The processor performs control message exchange between the verification node and the origin node through a first control message, and performs control message exchange between the verification node and the anchor node through the first control message. The E2E delay estimation system according to claim 13, wherein control message exchange between the anchor node and the participating node is performed through a second control message having a format different from that of the first control message.
15. The E2E delay estimation system according to claim 14, wherein the first control message includes information indicating a dimension, information indicating a node identifier, information indicating an event type, and information indicating the number of reference nodes.
16. The event type is used to distinguish between a control message for coordinate system configuration and a control message for coordinate system management. The E2E delay estimation system, as a verification node, constructs a coordinate system between the origin node and a randomly selected anchor node through control message exchange for a specific dimension selected from a range of a preset minimum dimension to a maximum dimension, and selects a coordinate system of a specific dimension that exhibits optimal performance in the current P2P network based on the E2E delay states estimated for each dimension-specific coordinate system. The E2E delay estimation system according to claim 15.
17. The E2E delay estimation system according to claim 14, wherein the second control message includes information indicating a message type and information indicating a dimension.
18. After the coordinate systems of the first dimension and the second dimension are constructed, the processor further performs a step of requesting the origin node for its own coordinate value in the current P2P network, and when the new coordinate value received from the origin node has a difference greater than or equal to a reference value from the previous coordinate value, manages to update the coordinate value of the origin node. The E2E delay estimation system according to claim 13.
Citation Information
Patent Citations
Priori clustering network coordinate system optimization method and device and computer storage medium
CN116781595A
A server, method, and system for providing node information in a P2P network.
JP2012531765A
Method for generating and managing three-dimensional coordinate system based on transmission delay having O(N) overhead
US11665231B1