Wide application of the Internet of Things (IoT) system has been increasingly demanding more hardware facilities for processing various resources including data, information, and knowledge. With the rapid growth of generated resource quantity, it is difficult to adapt to this situation by using traditional cloud computing models. Fog computing enables storage and computing services to perform at the edge of the network to extend cloud computing. However, there are some problems such as restricted computation, limited storage, and expensive network bandwidth in Fog computing applications. It is a challenge to balance the distribution of network resources. We propose a processing optimization mechanism of typed resources with synchronized storage and computation adaptation in Fog computing. In this mechanism, we process typed resources in a wireless-network-based three-tier architecture consisting of Data Graph, Information Graph, and Knowledge Graph. The proposed mechanism aims to minimize processing cost over network, computation, and storage while maximizing the performance of processing in a business value driven manner. Simulation results show that the proposed approach improves the ratio of performance over user investment. Meanwhile, conversions between resource types deliver support for dynamically allocating network resources.
Hainan Key Development ProgramZDYF2017128National Natural Science Foundation of China616620216136300761502294IIOT Innovation and Development Special Foundation of Shanghai2017-GYHLW-010371. Introduction
With the extensive development of IoT applications, it is necessary to promote storage, computing, and communication capability of IoT devices, such as efficient storage, semantic integration, and parallel processing. Due to powerful computing capability compared with edge devices, cloud computing puts all the computing tasks on the cloud to process data efficiently and provides highly vitalized storage and computing services on top of massively parallel distributed systems [1–3]. However, with the growing quantity of data generated at the edge, the speed is becoming the bottleneck for the cloud-based computing paradigm [4]. Also, future wireless access networks will face the challenge of transporting the ever-increasing volume of data centric traffic with ever tighter timing and quality of service (QoS) requirements [5]. In order to reduce the communication bandwidth needed between edge devices and the central data centre, nascent technologies and applications for mobile computing and IoT are driving computing towards dispersion [6]. Conventional methods, which are based on bandwidth allocation scheme, improve effectively bandwidth utilization efficiency [7, 8]. Some methods [9–11] achieve real-time data analysis, but they have not considered user investment [12, 13], processing cost [14], and the efficient utilization of IoT resources with reduced risks [15, 16] of security and robustness [17] issues.
Fog computing stresses the proximity to terminal users and client objectives, dense geographical distribution and local resource pools, latency reduction, and backbone bandwidth savings to achieve better quality of service (QoS) [18]. Meanwhile, the computing paradigm pushes data analytic and knowledge generation power away from centralized nodes to the logical extremes of a network near the source of the data. Therefore, a large number of heterogeneous, complexity, and hierarchy resources can be processed effectively in fog computing systems. However, storage and computation power in fog computing systems are not balanced. We argue that it is a challenge to provide better load balancing of resources in the Internet of Things. From the perspective of resource owners, obtaining cost-effective resources processing services remains the primary concern for adoption of fog computing services. In [19], the authors not only studied the tradeoff between network performance improvement and the communication overhead of transmitting network information but also proposed to optimize resource allocation in wireless networks.
Fog devices have increasingly generated a large amount of resources including data, information, and knowledge. In [20], Chaim illustrated the concepts of defining data, information, and knowledge. We use Knowledge Graph to solve the problem of extracting relationships from sources of knowledge [21, 22]. Knowledge Graph has become a powerful tool for representing knowledge in the form of labelled digraphs and gives textual information semantics. Knowledge base contains a set of concepts, examples, and relationships [23]. In [24], Duan et al. clarified the architecture of Knowledge Graph in terms of data, information, knowledge, and wisdom. In [25], the authors proposed to designate the form of Knowledge Graph as four basic forms: Data Graph, Information Graph, Knowledge Graph, and Wisdom Graph. In [26], the authors proposed to answer five Ws questions through constructing the architecture composed of Data Graph, Information Graph, Knowledge Graph, and Wisdom Graph. The development of software service system can be divided into data sharing, information transmission, and knowledge creation stages in terms of data, information, and knowledge [27]. In fog computing systems, the computing resources for providing device services are highly limited such as storage capacity, computing power, and network bandwidth. The demand for huge search space and computation power has become a big challenge. We propose a mechanism to improve the ratio of performance over investment when providing resources processing services. The proposed approach minimizes processing cost over network, computation, and storage while maximizing the performance of processing in a business value driven manner. Multitypes users’ investment and corresponding benefit rate decide final resource combination cases, which makes the system have a relatively stable state. Furthermore, we design several simulations to verify the feasibility and evaluate the performance of the proposed approach. Currently we did not consider negative situations of which improper arrangement of resources might lead to penalties [28] instead of rewards.
The rest of this paper is organized as follows. In Section 2, we define typed resources and explain the proposed system model. Section 3 provides a running example. Section 4 presents practice of storage and computing collaborative adaptation towards typed IoT resources. Section 5 reports the simulation and summarizes the simulation results. Section 6 reports related work. Finally, we draw conclusions and outline aspects of future work in Section 7.
2. Definitions and System Model
In this section, we propose the definition of typed resources. Furthermore, we design the processing architecture of typed resources in the Internet of Things. In order to satisfy the transmission demands of nodes in a given wireless network, we construct the system model through restricting network resources.
2.1. Definitions of Typed Resources
Wide application of the Internet of Things has been acquiring a huge amount of typed resources. We classify resources into three types: data, information, and knowledge [27]. Data is not specified for stakeholder or machine. Data is the collection of discrete elements and concepts. Information is not specified for stakeholder or machine. Information is conveyed through conceptual mapping and combination of data and is used for interaction. Knowledge is used to reason and predict unknown resources such as data, information, and knowledge. Table 1 provides an explanation of typed resources of data, information, and knowledge. Definitions of resource elements and graphs are as follows.
An explanation of three types of resources.
DDIK
IDIK
KDIK
Semantic load
Not specified for stakeholder/machine
Specified for stakeholder/machine
Abstracting unknown resources
Form
Discrete elements
Related elements
Probabilistic or categorization
Usage
Identification of existence after conceptualization
Communication
Reasoning and predicting
Graph
DGDIK
IGDIK
KGDIK
Definition 1 (resource element (REDIK)).
We define resource element as(1)REDIK≔DDIK,IDIK,KDIK.DDIK, IDIK, and KDIK represent data, information, and knowledge in DIK hierarchy, respectively, where DIK is an abbreviation of DDIK, IDIK, and KDIK.
Definition 2 (graphs).
In our previous work [25], we specified Knowledge Graph in a progressive manner as four basic forms: Data Graph, Information Graph, Knowledge Graph, and Wisdom Graph. In this work, we propose to specify the existing concept of Knowledge Graph in three layers. We define graphs as (2)GraphDIK≔DGDIK,IGDIK,KGDIK.DGDIK, IGDIK, and KGDIK represent Data Graph, Information Graph, and Knowledge Graph, respectively. DGDIK is used to model the temporal and spatial features of DDIK. IGDIK is a combination of related DDIK. IGDIK expresses the interaction and transformation of IDIK between entities in the form of a directed graph. KGDIK is a collection of statistical rules summarized from known resources.
In order to optimize resources processing, it is important to convert the types of resources in the Internet of Things. We give the explanations of the type conversion mechanism as follows.
(a) For conversion from DDIK to IDIK, in the absence of context, DDIK is meaningless. We convert DDIK to IDIK through reorganizing DDIK. The new collection of DDIK corresponds to a different class or concept, which is IDIK.
(b) For conversion from DDIK to KDIK, DDIK inherits semantic relationships from standard mode and is effectively integrated and reused by other applications. In the conversion process from DDIK to KDIK, we use knowledge validation technology to eliminate redundancy and inconsistency of DDIK through linking DDIK sources and semantic constraints. Then, we identify the most reliable DDIK to form KDIK.
(c) For conversion from IDIK to KDIK, IDIK is used to express the interaction and collaboration between entities. Through the classifying and abstracting interactive records or behaviour records related to the dynamic behaviour of entities, we obtain KDIK in the form of statistical rules. We infer KDIK from known resources and collect necessary IDIK in the process of inference through appropriate research techniques such as experiments and surveys.
(d) Regarding conversion from IDIK to DDIK, we know that conversion from IDIK to DDIK is the transition from concept set to resource instances. IDIK expresses the dynamic interaction and collaboration between entities; we obtain DDIK through observing an object at a certain time in a static state.
(e) For conversion from KDIK to DDIK, according to knowledge reasoning, we establish relevant examples for extracted collection of KDIK. Relationships between KDIK nodes are associated with instances in the form of attributes.
(f) For conversion from KDIK to IDIK, the schema-less feature of KGDIK makes it possible to link and utilize a richer knowledge base to help users make decisions, from KDIK retrieval to IDIK creation.
2.2. Processing Architecture of Typed Resources in the Internet of Things
Generally, we obtain IDIK through mining DDIK and KDIK through deducting IDIK and intelligence from KDIK. Therefore, DDIK, IDIK, KDIK, and wisdom are the layers of a gradual relationship. The Knowledge Graph is divided into four levels: DGDIK, IGDIK, KGDIK, and Wisdom Graph. Figure 1 shows the processing architecture of typed resources in IoT on the basis of DGDIK, IGDIK, and KGDIK. In this architecture, graph types are allowed to convert between each other. We provide the definitions of DGDIK, IGDIK, and KGDIK as follows.
The processing architecture of typed resources in IoT.
Definition 3 (DGDIK).
We define DGDIK as(3)DGDIK≔collectionarray,list,stack,queue,tree,graph.DGDIK is a collection of discrete elements expressed in the form of various data structures including arrays, lists, stacks, trees, and graphs. DGDIK featuring a static state is more about expressing a structural relationship. DGDIK is used to model the temporal and spatial features of DGDIK.
Definition 4 (IGDIK).
We define IGDIK as(4)IGDIK≔combinationrelatedDDIK.IGDIK is a combination of related DDIK. IGDIK expresses the interaction and transformation of IDIK between entities in the form of a directed graph. IGDIK records the interaction between entities including both direct interaction and indirect interaction. Also, IGDIK can be expressed using multiple tuples.
Definition 5 (KGDIK).
We define KGDIK as(5)KGDIK≔collectionStatisticRules.KGDIK is of free schema and expresses rich semantic relationships, which is conductive to have a completing mapping towards user requirements described through natural language. KGDIK is a collection of statistical rules summarized from known resources. KGDIK further improves and perfects the semantic relations between the entities on the basis of DGDIK and IGDIK and then forms a semantic network connected by a large number of interactive relationships.
2.3. System Model
We propose a transmission optimization model of typed resources in the Internet of Things, which is called IoT_TOM. Figure 2 shows a network composed of multiple wireless nodes. In this given network, A-B is a communication link between fog nodes A and B. We denote buffer size of each node as Hi. We denote the number of DIK packets to be forwarded as Ni. A DIK packet is a unit of resource made into a single package in forms of a resource combination in our proposed IoT_TOM. We denote the average length of DIK packets as l. We denote bandwidth between A and B as BAB. We denote resource flow capacity on this link as FAB. In practice, the distribution of network resources is not balanced in fog computing applications. The proposed mechanism of converting resource types achieves global optimization to deal with this problem. We use resources forwarding-waiting equilibrium and bandwidth utilization equilibrium to evaluate the performance of the proposed mechanism.
The transmission optimization model of typed resources in IoT (IoT_TOM).
2.3.1. Bandwidth Utilization Equilibrium
Given a wireless network, we consider utilizing bandwidth efficiently. It is necessary to dynamically allocate bandwidth. Therefore, we consider transmitting DIK resource packets between IoT nodes, which aims to obtain enough storage and computing resources through consuming bandwidth. BEbuse denotes bandwidth utilization equilibrium. BEbuse is related to the network parameters such as bandwidth between IoT nodes and resource flow. Let IRban denote the bandwidth idle rate; then BEbuse is the variance of IRban. IRban and BEbuse can be illustrated as(6)IRban=Bij-Fij∗lBij,i,j=1,2,…,n(7)BEbuse=EIRban2-EIRban2In (6), Bij denotes bandwidth between IoT nodes. Fij represents resource flow on the link.
2.3.2. Forwarding-Waiting Equilibrium
Resources forwarding-waiting time reflects the performance of the proposed IoT_TOM, which includes two parameters, forwarding-waiting rate (FRwait) and forwarding-waiting equilibrium (BEwequ). It is important to reduce the traffic load and congestion in the network in the absence of packet loss to balance resource flow. Let Ni∗l be the size of resources to be forwarded at node i; then BEwequ is a variance of FRwait. BEwequ and FRwait can be illustrated as(8)FRwait=Ni∗lHi,i=1,2,…,n(9)BEwequ=EFRwait2-EFRwait2The cooperation between forwarding-waiting equilibrium and bandwidth utilization equilibrium enables users to utilize IoT resources more efficiently. We denote the objective function for defining utilization of typed resources in the Internet of Things as F, which can be illustrated as(10)F=αBEbuse+βBEwequ,α+β=1In (10), α and β, which can be obtained through data training, are parameters that contribute to BEbuse and BEwequ, respectively. The smaller F is, the better resource flow capacity distribution performs.
3. Running Example to Provide UAVs Courier Service
Today’s unmanned aerial vehicles (UAVs) courier service is a typical IoT application in fog computing. However, it is difficult to address bandwidth bottlenecks and management complexity of a UAV dispatch centre. For example, Figure 3 shows the geographical location distribution of UAVs providing courier services over the air. Dotted directional lines represent resources transmission directions using conventional methods, which may require expensive satellite navigation. The black directional lines display resource transmission directions of providing courier service using a fog computing system.
A UAVs courier service example in fog computing.
In an ideal situation, IoT resources without redundancy and inconsistency are transmitted in low user investments. The actual situation may not follow the ideal situation. For example, DDIK resources of (longitude and latitude) featuring redundancy and inconsistency make the scale of DDIK collection large. Therefore, if storage capacity at node UAV-A is not enough, we need to consume corresponding bandwidth to transmit these DDIK resources to other nodes, which aims to obtain storage resources. We consider converting the resource type to IDIK or KDIK when transmitting these DDIK resources, which aims to change the scale of initial DDIK collection. Table 2 shows partial DDIK resources generated by UAV-A. And Table 3 shows partial IDIK resources generated by UAV-B.
Partial DDIK resources generated by UAV-A.
UAV
Unit DDIK (8 bit)
Time range
Times
Space
UAV-A
(longitude, latitude)
2018.1.1, 9:00–12:00
5000
39.1 Kbit
Partial IDIK resources generated by UAV-B.
UAV
Unit IDIK (8 bit)
Time range
Times
Space
UAV-B
Path 1 (sky, has, rain)
2018.1.1,
800
6.3 Kbit
Path 2 (rain, damage, UAV-B)
9:00–12:00
For UAV-A, according to DDIK resources generated from time t1 (2018.1.1, 9:00) to t2 (2018.1.1, 9:20), we sum up that two relationships between longitude, latitude and time are longitude = k1∗time+b1 and latitude = k2∗time+b2. In fact, we sum up 400 linear relationships between longitude, latitude and time roughly. Conversion from DDIK to IDIK is illustrated as(11)RDDIKlongitude,latitude⟶IDIKk1∗time+b1,k2∗time+b2We store these IDIK resources converted from DDIK resources in form of IDIKk1∗time+b1, k2∗time+b2), (k1, b1, k2, b2, time (t1, t2)), which requires storage space of 32 bits. Then total storage space to store these IDIK resources is 32 ∗ 400 = 12.5 Kbit.
Table 3 shows IDIK resources generated by UAV-B. Through counting and summarizing these rules, we obtain 100 KDIK resources roughly. Conversion from IDIK to KDIK is illustrated as(12)RIDIKPath1,Path2⟶KDIKrain,down,UAV-BWe store these KDIK resources in form of KDIK (rain, down, UAV-B), which requires storage space of 4 bits. Then total storage space to store these KDIK resources is 4 ∗ 250 = 0.97 Kbit.
Hence, these conversions between resource types reduce the scale of collected resources. In our proposed resource type conversion mechanism, there are at most 27 ∗ 27 kinds of resource combinations in each node over the network. As shown in Figure 4, we take one resource combination case {(D,D,I),(DG,IG,IG)} as an example. Conversion from {D,D,I} into {I,I,K} aims to obtain storage resources through consuming computing capability. In general, we keep the system in a relatively stable state with storage and computing collaborative adaptation.
Storing resources according to the resource combination {(D,D,I),(DG,IG,IG)} which is one of the 27∗27 resource combinations.
Because of complex courier tasks and geographic environment conditions of UAVs, resources distribution is unbalanced. Global optimization of the UAVs wireless network can solve this problem to a large extent. We design a mechanism that minimizes processing cost over network, computation, and storage while maximizing the performance of processing in a business value driven manner, which is illustrated in Section 4. Figure 5 displays resources allocation results in region 1 of the wireless network by using the proposed mechanism. Initial resource combinations on UAV-A and UAV-B are as follows:
Resource allocation results over region 1 of the UAVs wireless network through using the proposed mechanism.
Combination (UAV-A) = DDIK, DDIK, IDIK), (DGDIK, IGDIK, IGDIK. And the resource scale on UAV-A is 12 Kbit, bandwidth (A → a) is 6 Kpbs, and buffer size (A) is 2 Kbit.
Combination (UAV-B) = DDIK, DDIK, DDIK), (KGDIK, IGDIK, IGDIK. And the resource scale on UAV-A is 26 Kbit, bandwidth (B → a) is 6 Kpbs, and buffer size (B) is 2 Kbit.
Total storage spaces at node UAV-B and node UAV-B are 5 Kbit and 10 Kbit, respectively. Thus, we convert resource types and transmit these resources to node a, which is illustrated as follows:
Combination (UAV-A)’ = DDIK, IDIK, KDIK), (DGDIK, IGDIK, KGDIK. As shown in Figure 5(a), the resource scale on UAV-A is 24 Kbit and bandwidth (A → a) = 4 Kpbs and buffer size (A) = 3 Kbit.
Combination (UAV-B)’ = IDIK, IDIK, KDIK), (DGDIK, KGDIK, IGDIK. As shown in Figure 5(b), the resource scale on UAV-B is 23 Kbit and bandwidth (B → a) = 3 Kpbs and buffer size (B) = 2 Kbit.
However, there are two problems in implementing this idea. First, storage and computation capabilities of IoT devices in fog computing systems are different. Thus, it is necessary to obtain storage capacity by transferring typed resources. Second, both the performance of processing resources and user investments should be considered to improve user investment benefit.
4. Storage and Computing Collaborative Adaptation towards IoT Resources
In fog computing systems, there may be insufficient storage and computation capability at some nodes. We consider transmitting IoT resources to other nodes, aiming to obtain storage and computation resources through consuming bandwidth. Given a wireless network, some nodes consume storage capacity to obtain enough computing resources. Some nodes consume computing capability to obtain enough storage resources. In general, conversion between resource types provides a support for balancing the distribution of network resources in the Internet of Things.
In this section, we describe optimizing processing mechanism of typed resources with collaborative storage and computation adaptation. We define IoT resources and resources on GrpahDIK as follows.
Definition 6 (IoT resources).
We define IoT resources as a tuple IR = < IRT, IRS >. IRT is the type set of IoT resources represented by a triad < irtD, irtI, irtK >. IRS is the scale of different kinds of IoT resources represented by a triad < irsD, irsI, irsK >. Each irs denotes the scale of resource in the form of irt.
Definition 7 (resources on GrpahDIK).
We define resources on GrpahDIK as a tuple RoG = <RGT, RGS>. RGT is the type set of resources on GrpahDIK represented by a triad < rgtD, rgtI, rgtK >. RGS is the scale of different kinds of resources on GrpahDIK represented by a triad < rgsD, rgsI, rgsK >. Each rgs denotes the scale of resources in the form of rgt.
4.1. Computation of Resource Type Conversion Cost
Considering the disadvantages of conventional resources processing methods, we propose to convert both types of resources in IR and RoG. First, we would like to convert the types of resources in IR, which needs to invest corresponding cost. Specifically, we assign values from REDIK to each element of the type set IRT. Then we use these values to form the combination case IRT’ = < irtD’, irtI’, irtK’ >, where irtD’, irtI’, and irtK’ belong to DDIK, IDIK, KDIK. As shown in Table 4, we denote costCUnitIRi→j as the atomic conversion cost per unit resource in IR. Conversion cost of resource types from IR to IRT’ can be illustrated as(13)CIR=∑costCUnitIRi→j∗irsi,i,j∈D,I,KSecond, we convert the types of resources in RoG. Specifically, we assign values from REDIK to each resource of the type set RGT of RG. Then we use these values to form the combination case RGT’= < rgtD, rgtI, rgtK >, where rgtD, rgtI, and rgtK belong to DDIK, IDIK, KDIK. As shown in Table 5, we denote costCUnitRGi→j as the atomic type conversion cost per unit resource in RoG. Conversion cost of resource types from RGT’ to RoG can be illustrated as(14)CRG=∑costCUnitRGi→j∗rgsi,i,j∈D,I,K
Atomic conversion cost per unit resource in IR.
DDIK
IDIK
KDIK
DDIK
costCUnitIRD→D
costCUnitIRD→I
costCUnitIRD→K
IDIK
costCUnitIRI→D
costCUnitIRI→I
costCUnitIRI→K
KDIK
costCUnitIRK→D
costCUnitIRK→I
costCUnitIRK→K
Atomic conversion cost per unit resource in ROG.
DDIK
IDIK
KDIK
DDIK
costCUnitRGD→D
costCUnitRGD→I
costCUnitRGD→K
IDIK
costCUnitRGI→D
costCUnitRGI→I
costCUnitRGI→K
KDIK
costCUnitRGK→D
costCUnitRGK→I
costCUnitRGK→K
4.2. Computation of Cost of Processing IR in RoG
The proposed processing architecture of typed resources is adopted to process IoT resources. Cost of processing IR in RoG is related to the resource scale. As shown in Table 6, we denote costPUnitIRi→j as the atomic cost of processing unit DDIK, IDIK, or KDIK resource in corresponding graph resources. Then cost of processing IR in RoG can be illustrated as(15)Cpro=∑rgsj+costPUnitIRi→j∗rgsi′∗irs,i,j∈D,I,KWe convert the resource types in hopes of reducing the scale of resources when transferring IR in fog computing systems, aiming to balance resources load in a given wireless network. We assume that bandwidth of some nodes is enough in a period of time. We transmit IR to obtain storage and computation resources of other nodes through consuming bandwidth, aiming to satisfy users’ general requirements. As shown in Table 7, let CtransD, CtransI, and CtransK indicate the atomic cost of transmitting unit DDIK, IDIK, or KDIK, respectively. Cost of transmitting IR can be illustrated as (16)Ctrans=∑Ctransi∗irsi,i∈D,I,K
Atomic type conversion cost of REDIK.
DDIK
IDIK
KDIK
DDIK
costPUnitIRD→D
costPUnitIRD→I
costPUnitIRD→K
IDIK
costPUnitIRI→D
costPUnitIRI→I
costPUnitIRI→K
KDIK
costPUnitIRK→D
costPUnitIRK→I
costPUnitIRK→K
Atomic cost of transmitting unit DDIK, IDIK, or KDIK resource.
DDIK
IDIK
KDIK
Ctransi
CtransD
CtransI
CtransK
4.3. Calculation of Users’ Investment Benefit
We optimize the performance of processing resources through converting the type of resources and rational allocations of infrastructures in Internet of Things. According to previous subsections, we calculate the total cost of processing IR in fog computing applications by using our proposed mechanism. Total_Cost denotes the total cost of this resources processing service, which can be illustrated as (17)Total_Cost=CIR+CRG+Cpro+CtransLet IVuser denote inquired user investment; then IVuser corresponding to each resource combination can be illustrated as(18)IVuser=ϕ∗Total_Costwhere ϕ represents the atomic investment that can be obtained through data training. Different investment programs correspond to different benefit ratios (Re). Re is used to measure the ratio of performance over investment, which is illustrated as (19)Re=Ctrans+CproIVuserThen we compare Re and IVuser of each program with Re0 and IVuser0 to determine whether the condition “Re> Re0&IVuser<IVuser0” is satisfied. Let Re0 be equal to the current Re when Re is greater than Re0. Algorithm 1 describes the specific process of investment driven resource processing approach.
Algorithm 1: Calculating Re of each resource combination at all fog nodes.
Input: IR, RoG, IVuser0, Re0
Output: The minimum Re0.
For: each IRT Do
Assign value from REDIK;
Compute CIR;
Compute CRG; Compute Cpro;
Compute Ctrans; Compute Total_Cost;
Compute IVuser; Compute Re;
If (Re < Re0 & IVuseri < IVuser0)
Re0= Re;
Return Re0
5. Experiment
The goal of our experiments is to evaluate the proposed processing optimization approach towards typed resources. We first established a small wireless network as our simulation environment with discrete illustration [29]. We observed and analysed user investment benefit (Re) of six nodes in this system. Then, we measured some necessary network indicators to illustrate effects of using the proposed mechanism to optimize resources processing. Finally, we compared our proposed IoT_TOM with a conventional mechanism.
5.1. Experiment Setup
As shown in Figure 6, we first established a small real wireless network with fourteen nodes. These nodes consisted of different kinds of Arduino MCUs. Six nodes of them were equipped with ESP8266 WI-FI modules and some sensors for collecting environment resources. As shown in Table 8, we set up some necessary input parameters that include senor nodes and energy model [30]. We deployed these nodes in four subareas in an area of 500 m ∗ 400 m.
Simulation setup.
No.
Input parameters
Setup
1
Number of sensor nodes
10
2
Number of fog nodes
4
3
Area of the wireless network field
500 m ∗ 400 m
4
Frequency band
2.4 GHz
5
Storage capability of each node (bit)
A, B, C, D, E, F→128M, 8M, 256M, 8M, 16M, 4M
6
Data width of CPU of each node
A, B, C, D, E, F→8 bits, 16 bits, 16 bits, 8 bits, 32 bits, 8bits
7
Energy model
Battery
8
Sensors
A, B, C, D, E, F→Temperature, Humidity, GPS, Temperature, Photosensitive, GPS sensors
9
Simulation time
10 minutes
The established simulation environment.
5.1.1. Experiment Procedure
We aimed to illustrate the feasibility of our approach through providing users resources processing services. The proposed mechanism allowed each node to finish storage, computation, and transmission tasks. We assumed that a user demanded to observe environmental resources of this real wireless network anywhere. For convenience, we assigned values to some necessary parameters in the equations, such as costCUnitIRi→j, costPUnitIRi→j, and costCUnitRGi→j. We evaluated the performance of the proposed mechanism in terms of investment benefit and F value. The running time is ten minutes. In our experiment, we used some rules to process collected data into three resource collections of DDIK, IDIK, and KDIK. For example, photosensitive sensors collected DDIK resources of light intensity, which were 2, 4, 8, 16… 1024. We processed these DDIK resources into IDIK resources in forms of 2x(x=[1,10]). Table 9 shows an example for classifying typed resources in a practical environment.
An example for classifying typed resources in a practical environment.
DDIK
IDIK
KDIK
Light intensity 2, 4, 8, 16 …1024
2x(x = [1,10])
Dim light (<2048)
Temperature 25, 25, 25,…, 25
25 (n = 100 s)
Constant temperature (100 s)
5.1.2. Statistics Analysis
For convenience, we only considered six resource combinations to illustrate the feasibility of the proposed mechanism. We estimated IVuser and Re after calculating CIR, CRG, Ctrans, and Cpro. As shown in Figure 7, points surrounded by the red box on the Re curves indicate our recommended resource combinations. In these resource combinations, users are able to acquire resource services of maximum processing performance with minimum investment. In our experiments, the proposed mechanism dynamically recommended different resource combinations for different network environments to meet user demands better. Figure 7 shows that No. 6 of node A, No. 4 of node B, No. 5 of node C, No. 2 of node D, No. 4 of node E, and No. 2 of node F are final recommended resource combinations.
Estimating IVuser and Re values of considered six nodes.
Furthermore, we measured some necessary parameters of the proposed IoT_TOM including Fij, l, and Ni in order to observe the state of this wireless network. As shown in Table 10, FRwait of link A-F is greater than that of other nodes. Storage capacity of node F is 4 Mbit, which is insufficient to store 7 Mbit IoT resources. Therefore node F consumed more bandwidths to obtain enough storage resources compared with other nodes. On the whole, some nodes consumed computing capability to obtain enough storage resources. Some nodes consumed storage capacity to obtain computing resources. Some nodes consumed bandwidth to obtain storage resources. In order to evaluate the performance of IoT_TOM, we estimated BEbuse and BEwait which are 0.36 and 0.28, respectively. F value reflects resource flow capacity distribution. In this experiment, we calculated F value according to (10). The calculated F value is 0.34, which means that the proposed mechanism effectively allocated network resources through converting resource types. Table 10 shows that IRban and FRwait of most nodes are smaller than 0.5, which is not the best result in terms of network parameters intuitively. In order to illustrate advantages of our proposed approach, in next subsection, we compared our proposed mechanism with a conventional mechanism under the same resources scale.
Some network parameters of six links on the wireless network.
Links
A-B
B-C
C-D
D-E
D-F
A-F
Bij
2.5
0.8
3.2
0.9
0.7
1.2
Hi
1.4
3.5
1.1
1.0
0.4
2.3
Fij
1.0
5.0
6.0
2.0
4.0
7.0
l
1.0
2.0
3.0
1.0
2.0
3.0
N
2.0
4.0
1.0
3.0
2.0
1.0
IRban
0.36
0.46
0.40
0.58
0.51
0.32
FRwait
0.47
0.19
0.31
0.28
0.08
0.61
5.2. Comparison with Other Methods
We compared the proposed mechanism with a conventional bandwidth-allocation-based mechanism. We used the performance of traditional bandwidth-allocation-based mechanism as the baseline for comparison. We modelled this simulation on the basis of NSGA-II which is a modified version of NSGA (Nondominated Sorting Genetic Algorithm) released in 1994 used to optimize multiobjectives [31]. The objective function is illustrated as(20)f=F+∑wDi+wIi+wKi,i∈1,2,3,4,5,6In (20), wDi is a parameter that contributes to the scale of irsD. And six restrictive functions are as follows:(21)∑i=16wDi=1(22)∑i=16wIi=1(23)∑i=16wKi=1(24)10≤∑i=16wDi∗irsD+∑i=16wKi∗irsI+∑i=16wKi∗irsK≤30(25)α+β=1(26)irsD+irsI+irsK=30We calculated user investment benefits of these two mechanisms. Figure 8 shows the Re values per node at corresponding investment to illustrate benefit difference between these two methods. In the simulation, we assigned values to parameters in the equations, such as α and β. But the actual value of each parameter should be obtained through data learning. According to previous experiment results, we find that investment benefit of our proposed method is smaller compared to conventional method under the same investment. The results show that the proposed method performs better when providing resources processing services.
Re values generated by different methods corresponding to user investment.
In order to reflect the performance of processing resources in this fog computing application compared with the conventional method, we analysed F value of a given wireless network. Figure 9 shows F value of two mechanisms under different investments. The simulation results indicate that the bandwidth-allocation-based method demands fourteen units cost to achieve objective F value. F value of the proposed method is smaller compared with the conventional method.
F value of two mechanisms under different investments.
We used a social network to illustrate the impact of network size on performance of IoT_TOM. The network contains 1133 nodes and 10903 edges, which is from Datatang [32]. We used a sample set of 862 nodes and 1932 edges including five given areas. This simulation was conducted on a Lenovo ThinkPad E431 desktop with a 2.50 GHz Intel core i5 CPU and 8G RAM, running the pycharm Edit on Windows 10 operating system. As shown in Figure 10, (6, 12) represents that the number of nodes is 6 and the number of edges is 12. The results show that the bigger the scale of a given wireless network is, the better the distribution of network resources performs in a certain range.
F values of different network scales.
6. Related Work
The dynamic reconstruction of computation and storage resources not only improves the utilization of resources but also simplifies management. Some of the workloads that use common resource computing and storage technologies can handle the current cloud system to avoid saturated clouds [33]. However, the cloud computing paradigm is not suitable to solve the problem of unbalanced distributions of network resources in the Internet of Things. We argue that it is necessary to consume bandwidth to transmit resources between IoT nodes, aiming to obtain storage and computation resources of other nodes in order to satisfy user demands. In [34], the authors proposed a distributed multilevel storage (DMLS) model to solve the problems of restricted computation, limited storage, and unstable network. A wireless-based Software Defined Mobile Edge Computing (SDMEC) provided support for autoscaling network storage resource based on the network demand [35]. It is important to dynamically allocate bandwidth in fog computing application. In [36], the authors proposed a bandwidth allocation scheme based on collectable information. An integrated resource allocation method shared the limited bandwidth among multiple wireless body area networks (WBANs) [37]. In [38], the authors studied the tradeoff between the latency and reliability in task offloading to mobile edge computing (MEC). We argue that it is important to achieve global optimization over a wireless network in forms of converting the resource types. The bandwidths of a given wireless network are expensive in fog computing, which makes it a challenge to reduce latency of accessing resources. In [39], the authors proposed an efficient software defined data transmission scheme (ESD-DTS) to maximize data transmission throughput and consistently maintain a flow’s latency. T. Taleb et al.’s proposed scheme enforces an autonomic creation of MEC services to allow anywhere-anytime data access with optimum Quality of Experience (QoE) and reduced latency [40]. A hierarchical model composing data, information, knowledge, and wisdom is usually represented in the form of a pyramid [41]. We divide resources in the Internet of Things into data, information, and knowledge. We consider converting resource types to improve user investment benefit in a business value driven manner. We proposed a three-tier resource processing architecture based on Data Graph, Information Graph, and Knowledge Graph, aiming at optimizing storage, transfer, and processing typed resources.
7. Conclusions and Future Work
Physical services in the Internet of Things are heterogeneous, large-scale, and resource-constrained. Fog computing makes IoT devices more intelligent and saves communication bandwidth. But distributions of network resources in fog computing applications are not balanced. We proposed to convert resource types to deal with this problem. Based on different resource combinations that feature a better user investment benefit, conversions between resource types change the resource scale. In order to satisfy users’ general requirements, we consider transmitting typed resources to obtain enough storage and computing resources of other nodes through consuming bandwidth. On the whole, optimized processing of typed resources with storage and computing collaborative adaptation effectively improves the ratio of performance over investment. Meanwhile, processing resources in our proposed three-tier architecture of Data Graph, Information Graph, and Knowledge Graph optimizes spatial and temporal efficiency. The proposed mechanism achieves global optimization over a wireless network to provide cost-effective resource processing services. According to simulation results, users invest minimum costs to obtain maximum performances of processing IoT resources. Generally, our proposed mechanism keeps most fog computing systems in a stable state, which is important for improving the user experience.
In the future, we will continue our study of resources management to improve performance of processing in a business value driven manner and conduct further experiments. We will also explore machine learning approach to optimize processing of resources including data, information, and knowledge.
Data Availability
The data used to support the findings of this study are available from the corresponding author upon request.
Conflicts of Interest
The authors declare that they have no conflicts of interest.
Acknowledgments
This paper is supported by Hainan Key Development Program (no. ZDYF2017128), NSFC (no. 61662021, no. 61363007, and no. 61502294), and the IIOT Innovation and Development Special Foundation of Shanghai (no. 2017-GYHLW-01037).
BuyyaR.YeoC. S.VenugopalS.BrobergJ.BrandicI.Cloud computing and emerging IT platforms: vision, hype, and reality for delivering computing as the 5th utility200925659961610.1016/j.future.2008.12.0012-s2.0-63649117166RehmanM. H. U.ChangV.BatoolA.WahT. Y.Big data reduction framework for value creation in sustainable enterprises20163669179282-s2.0-8497507000510.1016/j.ijinfomgt.2016.05.013Ur RehmanM. H.JayaramanP. P.Ur Rehman MalikS.Ur Rehman KhanA.GaberM. M.RedEdge: A novel architecture for big data processing in mobile edge computing environments201763, article no. 172-s2.0-8502953036410.3390/jsan6030017ShiW.CaoJ.ZhangQ.LiY.XuL.Edge Computing: Vision and Challenges2016356376462-s2.0-8498784218310.1109/JIOT.2016.2579198TomkosI.KazovskyL.KitayamaK.-I.Next-generation optical access networks: Dynamic bandwidth allocation, resource use optimization, and QoS improvements2012262462-s2.0-8485917922410.1109/MNET.2012.6172268SatyanarayananM.The emergence of edge computing2017501303910.1109/MC.2017.92-s2.0-85009446769MaZ.ZhaoQ.HuangJ.Optimizing bandwidth allocation for heterogeneous traffic in IoT20171036106212-s2.0-8500395529910.1007/s12083-016-0535-3ItoY.KogaH.IidaK.A bandwidth reallocation scheme to improve fairness and link utilization in data center networksProceedings of the 13th IEEE International Conference on Pervasive Computing and Communication Workshops, PerCom Workshops 2016March 201614SharmaS. K.WangX.Live Data Analytics with Collaborative Edge and Cloud Processing in Wireless IoT Networks20175462146352-s2.0-8501913990010.1109/ACCESS.2017.2682640StaniecK.HabrychM.Telecommunication platforms for transmitting sensor data over communication networks—state of the art and challenges2016167, article no. 11132-s2.0-8497865347210.3390/s16071113WuX.ZhangS.OzgurA.STAC: Simultaneous Transmitting and Air Computing in Wireless Data Center Networks20163412402440342-s2.0-8500977289010.1109/JSAC.2016.2611838YinC.WangC.The perturbed compound Poisson risk process with investment and debit interest201012339141310.1007/s11009-008-9109-zMR2665267Zbl1231.912552-s2.0-77954425586YinC.WenY.An extension of Paulsen-Gjessing's risk model with stochastic return on investments20135234694762-s2.0-8487579050410.1016/j.insmatheco.2013.02.014Zbl1284.91281LiP.ZhouM.YinC.Optimal reinsurance with both proportional and fixed costs201510613414110.1016/j.spl.2015.06.024MR3389983Zbl06523425HuaD.ZaimingL.Optimal reinsurance with both proportional and fixed costs2012272150158WangY.YinC.Approximation for the ruin probabilities in a discrete time risk model with dependent risks20108017-18133513422-s2.0-7795452114610.1016/j.spl.2010.04.014Zbl1201.62119SunW.PengL.Observer-based robust adaptive control for uncertain stochastic Hamiltonian systems with state and input delays201419462664510.15388/NA.2014.4.8MR32553062-s2.0-84906769905BrogiA.FortiS.QoS-aware deployment of IoT applications through the fog20174511851192HongJ.LiV. O.Optimal resource allocation for transmitting network information and data in wireless networksProceedings of the IEEE International Conference on Communications, ICC '10201015ZinsC.Conceptual approaches for defining data, information, and knowledge20075844794932-s2.0-3394737938810.1002/asi.20508LinY.LiuZ.SunM.LiuY.ZhuX.Learning entity and relation embeddings for knowledge graph completionProceedings of the in Proceedings of the Twenty-Ninth AAAI Conference on Artificial Intelligence2015Austin , Texas, USA21812187PujaraJ.MiaoH.GetoorL.CohenW.Knowledge Graph Identification8218Proceedings of the 12th International Semantic Web Conference, The Semantic Web - ISWC '132013542557DeshpandeO.LambaD. S.TournM.DasS.SubramaniamS.RajaramanA.HarinarayanV.DoanA.Building, maintaining, and using knowledge bases: A report from the trenchesProceedings of the 2013 ACM SIGMOD Conference on Management of Data, SIGMOD '1320131209122010.1145/2463676.24652972-s2.0-84880524830DuanY.ShaoL.HuG.ZhouZ.ZouQ.LinZ.Specifying architecture of knowledge graph with data graph, information graph, knowledge graph and wisdom graphProceedings of the 15th IEEE/ACIS International Conference on Software Engineering Research, Management and Applications, SERA 2017June 2017gbr3273322-s2.0-8502665801710.1109/SERA.2017.7965747ShaoL.DuanY.SunX.ZouQ.JingR.LinJ.Bidirectional value driven design between economical planning and technical im-plementation based on data graph, information graph and knowledge graphProceedings of the IEEE International Conference on Software Engineering Research, Management and Applications2017339344ShaoL.DuanY.SunX.GaoH.ZhuD.MiaoW.Answering Who/When, What, How, Why through Constructing Data Graph, Information Graph, Knowledge Graph and Wisdom GraphProceedings of the The 29th International Conference on Software Engineering and Knowledge Engineering1610.18293/SEKE2017-079ShaoL.DuanY.SunX.ZouQ.JingR.LinJ.Bidirectional value driven design between economical planning and technical implementation based on data graph, information graph and knowledge graphProceedings of the 15th IEEE/ACIS International Conference on Software Engineering Research, Management and Applications, SERA 2017June 2017gbr3393442-s2.0-8502665559410.1109/SERA.2017.7965749KongD.LiuL.WuY.Best approximation and fixed-point theorems for discontinuous increasing maps in Banach lattices20142014111010.1186/1687-1812-2014-182-s2.0-84899834601DongY.SongL.WangM.XuY.Combined-penalized likelihood estimations with a diverging number of parameters20144161274128510.1080/02664763.2013.868415MR3268894Zbl1352.621152-s2.0-84898005753SunW.WangK.NieC.XieX.Energy-based controller design of stochastic magnetic levitation system20172017316DebK.AgrawalS.PratapA.MeyarivanT.A fast elitist non-dominated sorting genetic algorithm for multi-objective optimization: NSGA-II20001917Berlin, GermanySpringer849858Lecture Notes in Computer Science10.1007/3-540-45356-3_83Datatanghttp://www.datatang.com/data/796Alonso-MonsalveS.Garcia-CarballeiraF.CalderonA.Fog computing through public-resource computing and storageProceedings of the 2nd International Conference on Fog and Mobile Edge Computing, FMEC 2017May 2017818710.1109/FMEC.2017.79464122-s2.0-85028555752XingJ.DaiH.YuZ.A distributed multi-level model with dynamic replacement for the storage of smart edge computing2018831112-s2.0-8503466104710.1016/j.sysarc.2017.11.002Al-BadarnehJ.JararwehY.Al-AyyoubM.Al-SmadiM.FontesR.Software Defined Storage for cooperative Mobile Edge Computing systemsProceedings of the 4th International Conference on Software Defined Systems, SDS 2017May 2017esp1741792-s2.0-8502170254410.1109/SDS.2017.7939160ItoY.KogaH.IidaK.A bandwidth allocation scheme to meet flow requirements in mobile edge computingProceedings of the 2017 IEEE 6th International Conference on Cloud Networking (CloudNet)September 20171145118ChenD.-R.A QoS Bandwidth Allocation Method for Coexistence of Wireless Body Area NetworksProceedings of the 25th Euromicro International Conference on Parallel, Distributed and Network-Based Processing, PDP 2017March 2017rus2512542-s2.0-8501964239910.1109/PDP.2017.43LiuJ.ZhangQ.Offloading Schemes in Mobile Edge Computing for Ultra-Reliable Low Latency Communications20186128251283710.1109/ACCESS.2018.2800032KimE.KimS.An Efficient Software Defined Data Transmission Scheme based on Mobile Edge Computing for the Massive IoT Environment2018122974987TalebT.DuttaS.KsentiniA.IqbalM.FlinckH.Mobile edge computing potential in making cities smarter201755338432-s2.0-8501544960610.1109/MCOM.2017.1600249CMRowleyJ.The wisdom hierarchy: Representations of the DIKW hierarchy20073321631802-s2.0-3394717362810.1177/0165551506070706