Keywords

1 Introduction

With the advent of the digital economy era, the rapid promotion of industrial applications, the huge data industry market development potential, rapid growth, rapid promotion of digital industrialization and industrial digital integration, promotion of the construction of a new generation of information infrastructure, the formation of a new industry, new format, new mode, and promote the deep integration of the Internet, big data, artificial intelligence and real economy. Data, as an important component, needs to be shared and aggregated by many parties to support situation analysis. The need for effective utilization of data value urgently requires the interaction and sharing of data inside and outside the power grid. However, in this process, whether the data is trustworthy has become a focus issue for many parties to assemble and share data.

In the process of trusted computing for power data, computing nodes are generally deployed near wireless access points with limited capacity, and nodes have limited computing power. Therefore, for an efficient resource allocation framework, integrated management of both resources must be considered. The lack of either resource may result in the over-allocation of another resource, which reduces the overall effectiveness of the system, for example, if a node is allocated a large amount of wireless communication resources without sufficient computing resources, jobs uploaded over this wireless access network will encounter significant delays.

Based on these issues, a large number of computing management models have been proposed. The authors of [1] propose a budget-free market for a single wireless communication resource whose price is calculated based on some functions of the unit load, and propose an auction model for resource allocation in [2]. [3] presents a market-based resource allocation model based on two-way auction. [4] proposed a market model with limited budget (and extended to [5] entry control). [6] and [7] both use game theory tools to solve the problem of computing resource allocation, and propose a MEC resource management model based on Fisher market.

Through the analysis of the existing research, we know that more achievements have been made in trusted computing management, but there are few effective models to achieve the joint management of computing and wireless communication resources so as to optimize the overall effectiveness of the system. At the same time, previous studies have not considered the application of these resource management modes in trusted computing. To solve the above two problems, this paper presents a trusted computing management model based on Federation chain, which uses market balancing method to optimize computing and wireless communication resource allocation efficiently, stores node resource information and trust in distributed accounts, and uses the consensus mechanism of block chain to ensure the reliability of nodes participating in the resource market. Even in the scenario of cross-domain resource allocation, the information cannot be tampered with. In the performance analysis section, this model is compared with the traditional resource allocation model to verify that this model effectively improves system performance and resource utilization.

2 System Model

2.1 Management Model

The proposed trusted computing management model for power data based on Consortium Blockchain is shown in Fig. 1. The model mainly includes user, trusted computing node, computing resource node, wireless communication base station, consortium blockchain platform.

Fig. 1.
figure 1

Power data trusted computing and management model based on consortium blockchain

Consider a trusted computing scenario where multiple computing nodes form a MEC cluster, making M the edge node set in this cluster, and R the set of different computing resource types (such as CPU resources, MEM resources), using \(D_{m,r}^{MEC}\) represents the available capacity of resources of type r ∈ R in edge node m ∈ M. Since we are simulating a heterogeneous cluster, in principle \(D_{m,r}^{MEC}\) are different.

Consider a wireless access network where users in an edge computing system can upload their work to an edge node through a wireless access network. Make C a collection of wireless communication base stations that can be used to access MEC clusters, using \(D_c^{RAN}\) represents the capacity of base station c ∈ C available wireless communication resources.

Service Providers (SPs) own virtual bundles of computing and wireless communication resources as network slices that service providers use to provide specific MEC services to end users. The services requested from the same service provider, independent of the domains in the network, tend to exhibit the same resource requirements because of their similar work content, so the work of end users subscribing to the same service provider may require similar resources. Make S a collection of service providers, and for a particular service provider s ∈ S, we will \(d_{s,r}^{MEC}\) defines the minimum number of R-type MEC resources required to complete a task for service providers in a timely manner. Similarly, \(d_{s,c}^{RAN}\) indicates the minimum network resources required for service provider s to successfully upload through cell C. We use these to describe specific service types. It is worth noting that due to the wide variety of MEC applications, services can present different demand descriptions: there may be CPU-intensive services whose CPU requirements may be relatively higher than their memory requirements, or network-intensive services whose work payload is larger than other payloads, thus requiring higher bandwidth allocation, i.e., bandwidth-intensive services. In the experiment in Sect. 5 of this article, we will configure different resource requirements to simulate multiple service types in reality.

Make \(x_{s,m,r}\) is the number of calculated resource types r reserved for service providers in edge node M. Then, for any resource r, \(\frac{{x_{s,m,r} }}{{d_{s,r}^{MEC} }}\) represents the maximum number of concurrent businesses for s, and this allocation allows execution in edge node M. However, the actual number of jobs performed concurrently is limited by the primary resources, so we must consider the minimum of these numbers for all types of computing resources. By summing up the nodes in the system, we obtain the maximum number of jobs executed simultaneously by the service provider s in the MEC domain with acceptable per-job performance:

$$ J_s^{MEC} (X_s ) = \sum_{m \in M} {\min \{ \frac{{x_{s,m,r} }}{{d_{s,r}^{MEC} }}\} } $$
(1)

where \(X_s\) represents a specific computing resource allocation matrix.

Similarly, by adding \(y_{s,c}\) is set as the network resource assigned to service provider s in wireless communication base station c, and the ratio between \(y_{s,c}\) and \(d_{s,c}^{RAN}\) can be determined as the maximum number of workloads of services that can be sent simultaneously through base station C. Summarizing all the base stations in the system, we get the network resource allocation vector \(Y_s\) that can be given Maximum number of jobs uploaded to service provider s via RAN domain under s:

$$ J_s^{RAN} (Y_s ) = \sum_{{\text{c}} \in {\text{C}}} {\min \{ \frac{{y_{s,c} }}{{d_{s,c}^{RAN} }}\} } $$
(2)

Finally, since the number of jobs executed concurrently is limited by the domain with the lowest performance, we can express the utility of the service provider as follows.

$$ u_s (X_s ,Y_S ) = \min \{ J_s^{MEC} (X_s ),J_s^{RAN} (Y_s )\} $$
(3)

Therefore, system performance can be derived from the utility of each service provider, and the model optimization objective function can be derived from formula 4.

$$ \max \sum_{s \in S} {B_s u_s } $$
(4)

where \(B_s\) is the budget for service providers s to participate in transactions, which is determined by the budget received for service requests. The budget for a particular service is related to its imp ortance and determined beforehand, that is, the higher the importance of the service, the more resources can be purchased, which also reflects the criteria for social optimization.

In this framework, we want service providers to be rational agents, all aiming at purchasing resources constrained by their budgets while maximizing the bundle of resources for system effectiveness (that is, maximizing the amount of work that can be performed at the same time) in pursuit of their benefits. Each provider’s budget has additional capabilities to perform service priority. For example, suppose two service providers have the same demand characteristics but different budgets. In this case, service providers with higher budgets will be favored by the market model because they have the ability to purchase larger resource packages, which can contribute more to the overall utility of the system.

2.2 Network Architecture

The network architecture of the system is shown in Fig. 2:

Fig. 2.
figure 2

Network architecture

The network will deploy a block chain node near each resource domain where the network administrator manages the resource owners within the domain, edge nodes communicate with each other over the base station, and network administrators upload the resource owner information to the block chain nodes near the start of resource allocation. When a user’s service request is received, the service provider sends itself to the block chain.

3 Design and Implementation of Algorithm

3.1 Confidence Check

The resource allocation administrator confirms the trustworthiness of both parties mainly consists of two processes: the first step is to upload self-information to the block chain from the service demander (user) and the resource provider (edge node and wireless communication base station). The second step is to get the data from the distributed accounts and compare it with the information submitted by the agents (service providers and network administrators) of both parties. After verification, the resource allocation process begins.

Service demanders need to upload their own required service information, because the same service type has similar amount of resource requirements, so administrators can determine the total amount of resources required by resource requesters based on the queried service information, and ensure that resource requesters do not fake their own resource requirements to obtain more resource allocation. The resource provider provides both the network administrator and the resource allocation administrator with the resource information they can provide. The resource allocation administrator checks the information submitted by the network administrator and the resource provider.

As a distributed account, the data in the block chain is owned and maintained by all the nodes in the chain. At the same time, the consensus mechanism of the block chain makes it necessary for the nodes in the network to obtain the consent of other nodes to modify the information, which ensures the authenticity and reliability of the data and can not be tampered with. Therefore, using block chains can effectively ensure that administrators know the trustworthiness of each node accurately, exclude untrusted nodes, and ensure efficient resource allocation.

3.2 Joint Management Algorithm

Joint management algorithm mainly includes allocation preparation phase, quotation submission phase, node confidence check phase, and resource allocation phase.

Allocation preparation phase: users request services from specific service providers based on the required services, and service providers determine budgets to participate in resource allocation based on service requests received. Edge nodes and wireless communication base stations determine the resource information that participates in the allocation and submit it it to the network administrator, who participates in the resource allocation as an agent. At the same time, users store the required services and corresponding resource requirements information in the distributed accounts, edge nodes and wireless communication base stations store the resource stock in the distributed accounts, which facilitates the resource allocation administrators to check the reliability of both sides.

Quotation submission phase: resource requesters submit required resources and quotations for each resource.

Confidence check phase: Resource managers query the service information required by users from distributed accounts, and the resource information provided by edge nodes and wireless communication base stations to determine the reliability of both parties. Once the resource manager has determined that all nodes are trusted, he begins to determine the optimal allocation scheme according to the resource allocation algorithm based on the quotation from each party.

Resource allocation phase: broadcasting the results of resource allocation to the whole network, network administrators make specific allocation of network resources, resource providers provide corresponding resources to corresponding service providers, service providers provide the required services to end users after obtaining corresponding resources.

4 Simulations

The network built in this paper will use CPU resources and MEM resources to represent two different types of computing resources. To show the heterogeneity of demand and resources in different services in the network, we define four different service type templates, which represent four different service configurations that may occur in edge computing. Three of them are CPU-intensive, MEM-intensive, and bandwidth-intensive. In addition, there are integrated services with high demand for all kinds of resources.

For various resource providers, we build a MEC/RAN system consisting of heterogeneous network units and computing resource nodes. For the MEC domain, we identify two types of edge nodes, one with more CPU resources and the other with more MEM resources. For the RAN domain, we have identified large wireless communication units that can provide 40 MHz and small wireless communication units that can provide 20 MHz.

To see the overall performance of the system, we define the overall efficiency of the system η the ratio of the number of tasks successfully executed after a single resource allocation to the total number of tasks requested by the network. Different resource allocation strategies are adopted when the total number of resources available to the system is fixed. The more efficient the execution of the same series of tasks, the more efficient the system using this algorithm will be.

We will also use the traditional resource allocation algorithm, compared with the integrated management algorithm proposed in this paper, the overall efficiency of the system is compared as shown in the figure (Fig. 3):

Fig. 3.
figure 3

System efficiency

By comparing the two algorithms, we can see that with the increasing number of service requests, the overall efficiency of the system using traditional resource allocation algorithm is rapidly reduced due to resource bottlenecks, while the joint management algorithm can effectively avoid resource bottlenecks and maintain high efficiency, and then the efficiency will be reduced due to the total resource constraints of the system.

In addition, we will introduce malicious nodes to maliciously affect normal resource allocation by false quotation or false report of resource stock, in order to verify the stability of resource allocation in malicious node environment based on the block chain model proposed in this paper. In each round of resource allocation, we will add a malicious node, which will falsely report its own budget to obtain more resource allocation or its own resource stock. The misallocated resources that are affected by malicious nodes cannot be used effectively. We will use the system resource utilization rate to evaluate the impact of malicious nodes on the system, as shown in Fig. 4:

Fig. 4.
figure 4

System resource utilization

From the comparison of resource utilization, it can be seen that although the task pressure is increasing, traditional algorithms are affected by malicious nodes, a large number of resources are misallocated and wasted, and the resource utilization has been kept at a low level. The block chain-based resource allocation algorithm can effectively avoid the impact of malicious nodes and ensure efficient resource utilization.

5 Conclusion

In the process of power network data application, the need for effective utilization of data value urgently requires the interaction and sharing of data inside and outside the power network. Trusted calculation of data has become a focus issue. At the same time, the existence of resource bottlenecks in trusted computing leads to resource allocation schemes that can not only consider single resource allocation, but also need to integrate computing and wireless communication resources to ensure that there is no over-allocation of one resource and no under-allocation of another. To solve this problem, this paper presents a trusted computing management model for power data based on Consortium Blockchain, and proposes several joint resource management algorithms based on this model. The consensus mechanism of the Consortium Blockchain effectively guarantees the trustworthiness of the nodes in the calculation process. The performance analysis verifies that the algorithm can effectively improve the overall performance of the system and reduce the impact of malicious nodes. In the next step, we will further optimize the resource allocation algorithm to improve system performance.