Edge Network Model Based on Double Dimension - IEEE Xplore

5 downloads 0 Views 2MB Size Report
3School of Software Engineering, Shanghai Jiao Tong University, Shanghai, ... of Mathematics and Computer Science, Nanjing Medical University, Nanjing, ...
Edge Network Model Based on Double Dimension Jun Yin1, Riaz Ali2, Li Li3, Weiyin Ma4, Ahmad Ali5 Department of Computer Science and Engineering, Shanghai Jiao Tong University, Shanghai, China 3 School of Software Engineering, Shanghai Jiao Tong University, Shanghai, China 4 Department of Mathematics and Computer Science, Nanjing Medical University, Nanjing, China {yj520czh, riazbabuzai}@sjtu.edu.cn, [email protected], [email protected], [email protected] 1, 2,5

Abstract— A great many new technologies has emerged in the big data era, and more "big" applications are coming out progressively. Traditional computing models has touched its bottleneck, while the cloud-computing paradigm is one of the solution to resolve the capacity of the bottleneck under big data. Could-computing primarily applies to the off-line batch processing applications. However, it is a bit of overload for small real-time applications. Fortunately, with the fast development of container technology, real-time applications are no longer independent to any further extent. In edge network, the computing model consisting of the devices close to the data source is known as the edge device. The edge network device has a certain storage and computing power. The leading purpose of this device is not only to carry out some preliminary processing and data analysis but also to handle real-time applications in the cloud. We design a novel technique, which aim to combine container technology and micro services application models. Finally, we set up the edge network architecture of load balancing, which use the scheduling strategy based on double degree of domain and significantly improve the ability of real-time processing. Keywords—Cloud computing; Margin calculation; Container technology; Load balancing;

I.

INTRODUCTION

Recently, Mobile Internet have gained considerable attention, progressively mobile internet users are more in numbers and enjoying benefits from their services as well. However, at the same time it seems that the traditional computing and storage architecture of the Internet system can no longer satisfy the end user requirements. The cloud computing [1] is running in the cluster consisting of a large number of physical machines, whose operation mode of the data center is similar to the Internet. Efficiently improving the computing and storage capabilities of single point, and then solve the problem of single point collapsing in the previous situations of high concurrency. Meanwhile it largely increases the speed and significantly improves the user’s experience. On the one hand, with the rapid development of the global digital revolution, the Internet of Things (IoTs) is generally regarded as another wave of promoting the transformation of traditional industries and global economic development. According to statistics, there will be more than 100 billion terminals and devices interconnected by 2020, which will result in an exponential growth of data volume. Although cloud computing can bring about a linear increase in computing power and solve the computational bottleneck caused by the current massive data growth. Considering the cost and security, the cloud computing is generally deployed in the area far from data generator and collector. For a large number of real-time applications, the run time delay is not determined by the task operation time. However, delay of data transmission between the nodes and the cloud and the sensitivity to the network bandwidth is greatly increased. Additionally, the massive data transmission is very easy to cause network congestion or even collapse. Therefore, the demand for resources is far less than the resources owned by a cloud-computing data center [2] and cloud computing is not

978-1-5386-4649-6/18/$31.00 ©2018 IEEE

suitable for executing a large number of relatively small real-time applications, not only undesirable but also not efficient. on the other hand, the dynamic nature of IoT environments and their associated realtime requirements have directed to some addition of processing power and storage capacity to traditional edge devices [3] (such as gateways), promoting the evolution of edge computation. Moreover, both of them can be perfectly complementary, that is edge computing can be used as a timely and effective supplement of cloud computing in this big data age. The main contributions of our work are the following: • We propose the multi-level distributed network model, according to the function of the edge devices, the distance between the edge of the device and the distribution of edge devices. It can make the edge of the dispersion devices to work like distributed cluster. • We design a scheduling strategy based on dual-domain, it allows the edge network to load balancing. • We implement and evaluate our design using the iFogSim. We show that our design yields notable Real-time response in data intensive applications.

II. RELATED WORK With the explosive growth of Internet information, the existing large-scale data centers may experience high latency in the face of large amounts of data. In this case, we can transfer this data from largescale data centers to micro-data centers close to the users’ sides. Thus to reduce the latency and increase the speed of client-side as well as to minimize the pressure on a back-end cellular network for a large number of data requests. Currently, with the development of the Internet of Things, many application scenarios requesting timeliness are also not appropriate for the cloud-computing data center to process. Therefore, a lot of applied research on edge computation has been produced. Authors in [4] presented a Cloudlet infrastructure using virtual machine technology. Cloudlet locating on the edge of cellular networks scalable data center of high mobility with the primary goal of supporting resource-intensive and interactive mobile applications, by providing powerful computing resources for mobile terminals with low latency. It is an extension of the cloud computing data center that migrates cloud computing resources to the edge of cellular networks to serve low-latency and real-time tasks. Chen [5] proposed a distributed computing model for mobile edge computing. The model uses game theory to achieve Nash equilibrium for multiple user computing tasks. This model has the advantage of solving the NP-hard problem of multi-user computing. Gabriel [6] proposed Cloud-Aware, a programming model for mobile edge computing to develop flexible and scalable mobile edge computing applications. The Cloud-Aware framework is an abstract programming model that is transparent and contextually aware. However, the framework has not yet been implemented to understand the performance and reliability of the model. Nunna [7] proposed 5G-based mobile edge computing architecture for context-aware real-time applications. The architecture

341

is low-latency and suitable for collaborative computing. Delay and synchronization are important factors in the performance of collaborative computing model. The above research shows that in the background of 5G development in which the information data increases at a large scale. If the data is transmitted to the cloud computing data center, the delay will be caused due to the network jitters and the uncontrollable distance. Thus by putting data on the edge to process, we can effectively reduce network latency and improve application responsiveness. Although there are many advantages such as edge computing, we cannot reject that the greater computing power of cloud computing is the lack of edge computing, and the disadvantage of cloud computing is the advantage of edge computing. Hence, edge computing is not completely contrasting to the cloud computing architecture. Faced with a variety of real-time monitoring applications on the terminal, under the premise of ensuring timeliness. According to the current load situation of the edge node and the network transmission, this strategy can decide a single edge node, multiple edge nodes balanced Processing, a number of edge nodes and cloud computing data center of a combination of equalization, completely by the cloud computing center, etc., in order to achieve real-time return and load balancing goals.



• : The sending and forwarding time of the task result data in the edge device and the routing device. • : It refers to the link propagation time of mission result data between the edge device and the routing device and between the routing device and the cloud computing center. : It refers to the cloud-computing center to • spend time processing tasks. The performance analysis of Cloud networ: • In the above, is the bottleneck of the task running delay when the network bandwidth is poor. : due to the powerful parallel computing power • of cloud computing center, the delay of "large" task processing is obviously improved, but the processing delay of some "small" tasks is not obviously improved. • : when the result of the return is not a large amount of data, the impact on the total delay is also "limited."



In summary, for real-time applications with small data volumes, is a major bottleneck in the cloud network's inability to process real-time applications in a timely manner.

III. LOAD BALANCING EDGE NETWORK BASED ON CONTAINER A. Docker and Virtual Machines

Figure 3: Edge Network

α: The ratio of the edge node to the total task. 1 Figure 1: Docker and Virtual Machines

• • •

Docker has advantages in CPU and memory utilization. It only takes a few seconds to create a new Docker container. A physical machine can build hundreds of Dockers, but only establish a few virtual machines.

B. Edge Network and Cloud Network

Figure 2: Cloud Network

• The processing task latency of Cloud network abstracted into the following formulas:

(1)

2



The performance analyzsis of Edge network: 1) Due to the huge computing power and storage capacity between the cloud computing center and the edge devices, 2) The propagation delay is obviously increased when the data amount of the completion result of the edge node task is larger. 3) To summarize, conventional edge networks may not necessarily meet the needs of real-time processing when dealing with real-time applications. • Based on the above situation, we assume that the optimized edge network has such characteristics as follows: 1) The resource utilization and throughput capacity of a single edge node need to be improved. 2) The distributed multi-edge nodes organized into multilevel clusters, that is, to improve the parallelization of the task module to reduce the processing delay of the edge node. 3) With schedulability of load balancing to ensure the timely completion of the task and at the same time the maximum utilization of edge network resources. 4) The fault tolerance of the edge nodes and task modules has monitored the fault tolerance of the components; The consistency of task execution data;

342

C. Dual-domain load balancing edge network

Figure 5: Double Dimension Scheduling

E: Edge network’s processing application procedure

Figure 4: Multi-level Edge Network Architecture • Edge Device: it’s a computing and storage device; • Monitoring Device: consists of monitoring component, execution prediction component and zookeeper. Mainly tracks resource utilization, availability of data collectors, edge devices and tracks the applications and services on the edge device by monitoring their performance and status. The basic components provide management of the entire edge of the network node management, data consistency, monitoring node fault tolerance; • Application models: The Distributed Data Stream (DDF) model [8]. • Sensing Process Driven Model: Information collected by sensors is sent as a data stream and executed by an application running on the edge device. • Stream processing module: continuously process data sent from the sensor flow. Mainly for large-scale and long-term analysis.

1) The edge node first accepts the task request submitted by the user and the module information about the task, and sends the package information to the monitor. 2) Monitor nodes receive the task information, and determine whether all upload cloud processing according to the type of task that is real-time or non-real-time and the size of the data. 3) Monitor analyzes the composition of task modules and resource requirements and selects a single edge node or multiple edge nodes to execute a single or multiple task modules according to the task module loads and available resources about the surviving edge nodes obtained at the previous timing. According to the available node load and network bandwidth, etc., select the best node processing. 4) Monitor periodically acquires the implementation of the task, for the case of an edge node error, and starts the standby edge node to continue the outstanding task module according to the principles of the same rack, the same center, and the same region. 5) Edge nodes will be executed after the results returned to the monitor node and it’s the monitor node that according to the task execution logic continues to execute and parallel process the parallelizable task modules to improve the efficiency of the entire task execution; and protect the monitoring Fault tolerance of node and management edge node through zookeeper cluster.

D. Load balancing scheduling strategy 1) single-edge node processing strategy Single-edge nodes can handle the case directly. 2) Multi-edge node equilibrium strategy According to the information of the task module requested by the user, the "optimal" node corresponding to each module is selected to perform the task. 3) Fully balanced edge nodes, part of the cloud upload When the edge node cannot complete all the task modules, the task modules that cannot be completed by the edge nodes are transmitted to the cloud for processing, and the other tasks have the strategy 2 implementation. 4) Upload all parts of the cloud When the edge of the network is not available or cannot complete any task module, directly send it to the cloud for processing.

Figure 6: Load Balancing Workflow

343

F: The Load balancing scheduling algorithm Table1: KEY NOTATIONS AND DESCRIPTIONS

Flag Get_resource(int i) Get_model_resource (int j) Add (int [] [] Z, int i, int j) AddCloud (int i) Get_best_edge(int[Y, int i]

Dec (int i, int j) Exec (int i, int j) Judge (int i) ExecCloud (int i [])

Resource requirements for each module of each task. Multilevel edge node list. List of executable edge nodes for each task module. The cloud needs to perform the task module. The type of edge nodes and available resources. Types and components of the task type and the number of modules. Task module load situation of edge node. Each edge node has the module type and number. Execution edge node of each task module. Judgment value that stores whether each module can be solved by the edge device. Get the availability of the edge node resource numbered i. Acquires the resource required by the module task whose module number is j. Adds the edge node numbered j to the list of available nodes with module number i, that is edge node j can fulfill the task of module i. Add module i to the module queue executed in the cloud. The "optimal" node of processing module i is selected from available node list Y, and the node with the smallest load is selected as the most node from the nodes of executable processing module i. Recalculate the available resources of the edge node numbered j according to the required resources of the execution module i. Assign task module i to node j and execute the module task. Determine whether all or a part of the task numbered i can be executed by the edge node, that is whether the task module stored by the edge node includes task i. Executes the task module i array by the cloud.

Note: The edge node number starts counting from 1, 0 stands for Cloud; Initialize X, Y, Z, W, M, N;

In this work, we design a scheduling strategy based on dualdomain, it allows the edge network to load balancing as shown following. Load Balancing Scheduling Algorithm 1: If Judge(i) == False 2: ExecCloud(i) 3: Else 4: For i ∈ X 5: For j ∈ 6: If Get_resource(j) Get_model_resource(i) 7: Then Add (Z, i, j) 8: Else 9: Then Zi, j ← 0; 10: End 11: End 12: End 13: For i ← 1 to N 14: Flag ← ; 15: For j ← 1 to M 16: If Zi, j 0 17: Then Flag ← ; 18: End 19: If Flag 20: Then Wi ← _best_edge (Zi, i); 21: Dec (i, Wi); 22: Else 23: Then Wi ← 0; 24: AddCloud(i); 25: End 26: End 27: End 28: For i ∈ 29: Do Exec (i, Wi); 30: End 31: IF E! =NULL 32: For i ∈ E 33: Do ExecCloud(i); 34: End 35: End

IV. EXPERIMENTS

A: Emulator iFogSim Due to the limitations of the experimental environment and equipment, we use the iFogSim emulator, which takes advantage of the basic event simulation features in CloudSim [9] to communicate via messaging operation, scheduling strategy and execution based on double degrees of the allocation of task. • FogDevice: Edge nodes with some computational and storage capabilities. • Sensor: Mainly used for data collection and user request to send. • Tuple: Tuples are the basic communication units between edge nodes. • Actuator: Edge Network Returns the result's execution entity. • Monitor: Mainly used to monitor resource utilization of edge devices and cloud data centers and the application's module composition, as well as the implementation of procedures. • Application: • AppModule: The AppModule instance processes it and generates the output tuple sent to the next module in the DAG. • AppEdge: The AppEdge instance represents the data dependencies between a pair of application modules and represents the directed edges in the application model. B: Experimental Test Our test application is an online real-time game [10], mainly including the Client, the Calculator, the Coordinator, the Display and so on. Multiple users through the client are constantly sending realtime request or batch request, the background server to accept the request and return the appropriate results. Time delay is more sensitive.

Figure 7: Game Flow Chart Table 2: Data Configuration

Eeg S

CpuLength(Mips) 1000

SendIntervalTime(mils) 15

Table 3: Tupls Information

Tupletype Concentration Globe_State Globe_Update State_Update Player_State Sensor Eeg

CpuLength(Mips) 5 500 500 500 500 4000 1000

NetWorkLength(KB) 250 500 250 250 500 250 250

344

Table 4: Machine Configuration Parameters

Devicetype WifiGateWay SmartPhone IspGateWay CloudVm

Nums 5 5 1 16

CpuGhz 4.0 2.0 4.0 4.0

Ram(GB) 5.0 1.0 5.0 5.0

Table 5: Network Topology Link Delay

Source Eeg SmartPhone WifiGateway IspGateway

Destination SmartPhone WifiGateway IspGateway Cloud

Latency(ms) 15 4 8 200

Figure 11: Average Delay From Figure 11, the load-balanced edge network model works well in a certain size of the edge network. Therefore, the next step of research can start from the angle of the edge network size and energy saving, to truly achieve the dual balance of energy consumption and load.

CONCLUSION

Figure 8: Average Delay

Edge computing, as an attractive computational model for data processing in the Internet of Things, it takes advantage of networkedge devices that have more processing power than that of terminal devices and is closer to data generators to reduce latency and network congestion. To meet real-time processing requirements. We abstract a multi-level edge network model, integrating the technology of container and distributed task flow, and use the dualdomain scheduling strategy to realize the real-time processing of load balancing. However, one of the biggest challenges is how to solve the heterogeneity among a large number of edge devices in order to achieve the real multilevel distributed cluster. In addition, how to effectively reduce the energy consumption of peripheral equipment is also an important challenge.

ACKNOWLEDGMENT

Figure 9: Execution Time

The authors would like to thank the anonymous reviewers for their valuable comments and constructive suggestions which helped to considerably improve the quality of the paper. We thank the laboratory members of the Embedded and Pervasive Computing Research Center (High Performance Computing Laboratory) for their support and encouragement.

REFERENCES [1] [2]

[3]

[4]

Figure 10: Network Traffic

[5]

As shown in Figures 8, 9 and 10, when the edge network is in a low-level cluster mode, the delay of the edge network is mainly hardware and task. When the edge network expands, the dual-domain scheduling strategy at the architecture level starts to play its role. Therefore, in the large-scale edge network, the scheduling optimization at the architectural level can improve the service quality of the edge network and reduce the delay of the task. However, at the same time, it should be noted that as the size of the edge network increases, the energy consumption will also increase.

[6]

[7]

[8]

[9]

[10]

Tianwei Zhang, Ruby B. Lee, "Monitoring and Attestation of Virtual Machine Security Health in Cloud Computing", Micro IEEE, vol. 36, pp. 28-37, 2016, ISSN 0272-1732. Chao Li, Yang Hu, Longjun Liu, Juncheng Gu, Mingcong Song, Xiaoyao Liang, Jingling Yuan, Tao Li, "Towards sustainable in-situ server systems in the big data era," 2015 ACM/IEEE 42nd Annual International Symposium on Computer Architecture (ISCA), Portland, OR, 2015, pp. 14-26. Chang C, Srirama SN, Mass J. A middleware for discovering proximity-based serviceoriented industrial internet of things. Services Computing (SCC), 2015 IEEE International Conference on, IEEE, 2015; 130–137. M Satyanarayanan, P Bahl, R Caceres, et al. The case for vm-based cloudlets in mobile computing[J]. Pervasive Computing, IEEE, 2009, 8(4): 14-23. X Chen, L Jiao, W Li, et al. Efficient multi-user computation offloading for mobile-edge cloud computing[J]. Networking, IEEE/ACM Transactions on, 2016, 24(5): 2795-2808. G Orsini, D Bade, W Lamersdorf, “Computing at the mobile edge: Designing elastic android applications for computation offloading” 2015 8th IFIP Wireless and Mobile Networking Conference (WMNC). 2015: 112-119. S Nunna, A Kousaridas, M Ibrahim, et al, “Enabling real-time context-aware collaboration through 5g and mobile edge computing”, 2015 12th International Conference on Information Technology New Generations (ITNG). 2015: 601–605. Giang NK, Blackstock M, Lea R, Leun V, “Developing iot applications in the fog: a distributed data flow approach. Internet of Things (IOT)”, 2015 5th International Conference on the, IEEE, 2015: 155–16. Gupta H, Dastjerdi A V, Ghosh S K, et al. iFogSim: A Toolkit for Modeling and Simulation of Resource Management Techniques in Internet of Things, Edge and Fog Computing Environments[J]. arXiv preprint arXiv:1606.02007, 2016. Zao JK, Gan TT, You CK, Rodriguez Mendez SJ, Chung CE, Te Wang Y, Mullen T, Jung TP, “Augmented brain computer interaction based on fog computing and linked data”, Intelligent Environments (IE), 2014 International Conference on, IEEE.2014:374-37.

345

346

Suggest Documents