Zhang 2021

Download as pdf or txt
Download as pdf or txt
You are on page 1of 8

This article has been accepted for publication in a future issue of this journal, but has not been

fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/JIOT.2021.3051742, IEEE Internet of
Things Journal
1

High-performance Isolation Computing Technology


for Smart IoT Healthcare in Cloud Environments
Yin ZHANG Senior Member, IEEE1 , Yi SUN Member, IEEE 2,3
, Renchao JIN4 , Kaixiang LIN2,3 , and Wei LIU2,3
1
School of Information and Communication Engineering,
University of Electronic Science and Technology of China, Chengdu, China
2
School of Computer Science(National Pilot Software Engineering School),
Beijing University of Posts and Telecommunications, Beijing, China
3
National Engineering Laboratory for Mobile Network Security[No. [2013] 2685]
4
School of Computer Science and Technology,
Huazhong University of Science and Technology, Wuhan, China

Abstract—The development of the smart medical industry and and anywhere, especially with the popular of IoT health-
equipment has made great progress due to the fusion of the care [6], [7]. Smart IoT healthcare in cloud environments [8] is
IoT, cloud computing, and big data. In smart IoT healthcare, an irresistible and promising future trend in the medical field.
patients can collect vital parameters from various medical sensors
attached to them to detect diseases and make initial diagnoses by Traditionally, IoT application providers usually adopt cus-
themselves. With the powerful storage and computing functions tomized development mode to meet customers’ specific busi-
of cloud computing, medical sensor devices deployed in a cloud ness requirements. Although this service delivery mode has
environment can effectively solve the problems that the devices promoted the rapid growth of the IoT business in the past few
are highly dispersed, heterogeneous, and have limited processing years, its cost-effectiveness and scalability are very limited.
capabilities. As a result, this method can effectively provide
customized and scalable smart medical services for patients. The emergence of IoT cloud applications brings new solutions
However, because these medical resources share computing re- for the development and delivery of IoT applications [9]. IoT
sources on the cloud platform, changes in equipment workloads cloud applications support the virtualized vertical solution by
will lead to service performance competition among tenants. inheriting the multitenant feature of cloud computing, which
Therefore, determining how to achieve performance isolation means that each tenant can share the computing resources with
between tenants and guarantee the service level agreements
(SLAs) of the tenants has become the most concerning issue other tenants and customize their applications according to
for cloud service providers. In this article, we propose a per- their own business scenarios.
formance isolation algorithm for multi-tenant IoT clouds, which The IoT cloud makes it possible to access and analyze
can effectively provide performance isolation between tenants. the data flows of massive numbers of IoT devices [10] and
Experiments show that the message processing delay of tenants greatly improves the cost-effectiveness and scalability of IoT
working within the allocated quota can be reduced by 82%.
services [11]. However, the responsibility of software system
Keywords: High-performance Isolation Technology, Smart maintenance is handed over to the cloud provider, which brings
IoT Healthcare, Cloud Computing, Intelligent Medical Diag- many new technical challenges. In addition, the multitenant
nosis performance isolation problem, which is how to ensure that
all tenants’ devices working within assigned quotas are not
interfered by the other tenants devices that have exceeded their
I. I NTRODUCTION quotas in a multitenant scenario, has become a research focus
With the rapid development of Internet of Things healthcare, in this area [12].
multiple home medical equipment such as infrared thermome- In seeking to achieve multitenant performance isolation,
ter, blood pressure monitors, and heart rate monitor are already most existing research focuses on SaaS application in Web
quite common in people’s daily lives [1], [2]. Therefore, scenarios, which are mainly divided into two types: virtual
patients can obtain personal medical diagnoses by uploading machine-based tenant performance isolation and application-
their physical health data obtained from IoT medical devices level middleware-based composite performance isolation.
[3]to obtain professional healthcare advice from the cloud. In 2011, L. Wu et al. [13] implemented the resource
Furthermore, these types of personal service medical devices allocation of tenants with different SLA levels through virtual
are becoming more portable, accurate and specialized with the machines. In 2012, Takeshi et al. [12] proposed a scheme
rapid development of information technology [4], [5]. Like to allocate independent virtual machines to each tenant for
e-commerce, it will be extremely convenient for patients to isolation. The deployment of virtual machine will bring high
obtain personalized and professional diagnostic report anytime additional costs. Although the above patterns achieve effective
performance isolation, they sacrifice cost-effectiveness.
Corresponding Author: Yin ZHANG, [email protected]; Yi SUN, In 2012, David Shue et al. [14] proposed a Pisces sys-
[email protected] tem that can achieve effective performance isolation in Web

2327-4662 (c) 2020 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. See http://www.ieee.org/publications_standards/publications/rights/index.html for more information.
Authorized licensed use limited to: University of Prince Edward Island. Downloaded on May 30,2021 at 16:27:41 UTC from IEEE Xplore. Restrictions apply.
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/JIOT.2021.3051742, IEEE Internet of
Things Journal
2

applications. Although there are many differences between II. PRELIMINARIES


databases and IoT clouds, the architecture of Pisces systems
A. Subscription/publishing communication model in the IoT
still has great significance to the design of isolation archi-
cloud
tectures in IoT clouds. In 2014, Krebs et al. [15] analyzed
and compared the existing request resource consumption esti- How to construct the messaging layer of a cloud platform in
mation algorithm and proposed an algorithm for performance order to efficiently handle the data stream generated by mas-
isolation in a single-instance SaaS application. sive numbers of IoT devices is the core problem to be solved
In order to organize and manage massive numbers of devices when constructing an IoT cloud. The subscription/publication
in the IoT scenario, it is necessary to adopt a highly decoupled mode makes the selective distribution of messages possi-
communication model between the devices and the cloud ble [19]. The publication/subscription system is a message-
platform. As a result, the subscription/publishing communi- oriented middleware that provides distributed, asynchronous
cation model is widely adopted by IoT cloud providers. Since and loosely coupled communication between message produc-
devices and servers transmit data asynchronously through ers and message consumers. This mode provides three main
message brokers in this communication mode, the existing types of decoupling:
performance isolation algorithm based on Web middleware 1) Message producers and consumers are decoupled in time
cannot be directly applied to the Internet of Things platform. and do not need to connect at the same time.
In order to resolve this problem, it is necessary to implement 2) Messages are not explicitly sent to specific users but
an algorithm that can control the data flows of tenants’ devices rather are sent to specific addresses (channels and topics).
to achieve performance isolation. 3) Message delivery is asynchronous and nonblocking.
At present, research on multitenant performance isolation These three types of decoupling make the IoT cloud have
in the IoT scenario is still in the initial stage. In 2016, Cai H. good scalability and are especially suitable for large-scale IoT
et al. analyzed the prospects and challenges of IoT big data deployment. Figure 1 shows the general architecture of the
platforms based on cloud computing [16]. Their research pro- IoT cloud based on the subscription/publishing model.
vided an application framework of the IoT cloud and analyzed
the framework layer by layer. Furthermore, they proposed the
existing challenges of IoT clouds, and multitenant performance
isolation is one of them.
In 2016, Caglar F. et al. proposed intelligent performance
interference-aware resource management for IoT cloud back-
ends [17]. They implemented a dynamic load prediction mech-
anism for a VM based on machine learning. However, their
research result is still a common cloud computing technology
failing to consider the characteristics of the IoT cloud platform
to achieve performance isolation. Fig. 1: Publication/Subscription
In 2020, Ali S. A. et al. conducted a comprehensive study on
the resource management technology of the Internet of Things Due to the extremely limited resources, IoT devices need to
cloud platform [18]. Based on the analysis and comparison transmit data through efficient and energy-saving application
of existing resource allocation algorithms of the IoT cloud, protocols. The MQTT (message queuing telemetry transport)
their study determined the parameters that must be considered protocol is widely used in IoT scenarios [20]. As a com-
to improve the resource allocation of the IoT cloud, which munication protocol under the ISO standard, it works using
has guiding significance for multitenant performance isolation. the TCP/IP protocol. It is often used in remote hardware
However, they did not propose an innovative algorithm for the equipment with low performance or in low bandwidth, high
resource allocation and scheduling of the IoT cloud. delay and unreliable networks. Considering the complex and
Aiming at the multitenant performance isolation of IoT changeable network environment of the IoT, MQTT provides
clouds, this paper proposes a comprehensive MQTT data flow three QoS levels for developers to customize according to
scheduling algorithm. The main contributions of this paper are business scenarios.
as follows.
1) An MQTT data flow scheduling algorithm combining the
priority scheduling algorithm with the improved distributed B. Asynchronous Communication Algorithm
token bucket algorithm is proposed. This algorithm can effec- The subscription/publication model is an asynchronous
tively balance the resource occupation of tenant devices on the communication model. The message broker only needs to
cloud platform and achieve performance isolation. be responsible for continuously forwarding messages to con-
2) The algorithm proposed in this paper is applied to sumers without waiting for a response. In this mode, in order
an IoT application in cloud environments for experimental to achieve multitenant performance isolation, it is necessary to
verification. The results show that compared with the scenario traffic device messages from different tenants. Common cur-
without the performance isolation algorithm, the algorithm rent limiting algorithms, such as the sliding window algorithm
proposed in this paper can reduce the device message delay and token bucket algorithm, control the flow of the message
of an observant tenant by 82%. forwarding. The core idea of these algorithms is to control the

2327-4662 (c) 2020 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. See http://www.ieee.org/publications_standards/publications/rights/index.html for more information.
Authorized licensed use limited to: University of Prince Edward Island. Downloaded on May 30,2021 at 16:27:41 UTC from IEEE Xplore. Restrictions apply.
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/JIOT.2021.3051742, IEEE Internet of
Things Journal
3

Fig. 2: System Architcture

requested amount of the interface and realize resource control


in turn. The two algorithms are introduced below.
1) Sliding Window Algorithm
Wang X et al. used the sliding window algorithm to deter-
mine the fair distribution of server resources in the message
queue of the subscription/publication mode [21]. The sliding
window divides the window into smaller grids for flow control
based on the fixed window of the counter. As shown in
Figure 3, the entire dotted rectangle represents an overall time
window. Each grid maintains a counter independently. After
the time reaches the next small interval, the overall window
slides forward by one grid, and only the requested amount of
the earliest grid is reset. It is not difficult to see that the more
grid divisions of the sliding window there are, the smoother
the effect of current limiting. Considering that service interface
functions are usually different and their resource consumption
is also different, the use of a window mechanism for current
Fig. 3: Sliding Window Algorithm
limiting can only control the number of access requests, and
it cannot judge the resource consumption according to the
interface type; therefore, the effect of resource control is not
the best. the token is obtained. Requests that do not obtain a token wait
2) Token Bucket Algorithm or are rejected. The system continuously adds new tokens to
Caldas F. et al. used the token bucket algorithm in their the bucket at a set rate. There is an upper limit on the number
research to ensure that devices connected to the IoT gateway of tokens. When the bucket is full, the newly added tokens
obtain fair and effective services [22]. The token bucket will be discarded. Developers can set the number of tokens
algorithm can be considered to be an improved version of the required for each request according to the request type. In this
sliding window algorithm. All requests can be processed after way, more fine-grained resource control can be achieved. The

2327-4662 (c) 2020 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. See http://www.ieee.org/publications_standards/publications/rights/index.html for more information.
Authorized licensed use limited to: University of Prince Edward Island. Downloaded on May 30,2021 at 16:27:41 UTC from IEEE Xplore. Restrictions apply.
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/JIOT.2021.3051742, IEEE Internet of
Things Journal
4

workflow of the token bucket algorithm is shown in Figure 4


below. Ti · λi
Ci = U · ∑I (1)
r=1 Tr · λr
where I indicates the number of request types, Ti is the
average delay of the request, and λi is the throughput rate.
The overall resource usage U of the applications is:

U = α · Uc + β · UM + γ · UB (2)
where Uc is the CPU usage rate, UM is the memory usage
rate, and UB is the bandwidth usage rate. Considering that in
the IoT cloud scenario, the consumption of messages sent by
devices is also handled by the cloud server, which is identical
to processing of Web service requests, the same resource
estimation algorithm can be used to estimate the message
resource consumption.
Fig. 4: Token Bucket Algorithm
III. H IGH - PERFORMANCE I SOLATION FOR S MART I OT
In multitenant applications in asynchronous communication H EALTHCARE IN THE CLOUD
mode, by assigning a token bucket to each tenant, it is possible The architecture of the multitenant performance isolation
to limit the resources consumed by each tenant, thereby technology in this study is shown in Figure 2.
achieving a certain degree of performance isolation. However, Device layer. The device layer consists of IoT devices and
this solution has the following problems in the IoT scenario: the MQTT clients of the IoT cloud.
1) The replenishment rate of tokens is constant. The system Access layer. The network layer consists of an MQTT
lacks an effective negative feedback mechanism to more broker and a processor pool. The MQTT broker, as a message
accurately control the resource consumption of tenants. agent of the IoT, is responsible for forwarding messages
When many system resources are occupied by the job between devices and application services. Its processor thread
tasks of a certain batch of equipment, the token issuer group is the actual execution unit for the decoding, tenant au-
lacks an effective mechanism to dynamically reduce the thentication, and topic resolution of each producer’s messages.
token issuance rate, resulting in high system resource The processor pool maintains a FIFO processor queue for each
occupation. tenant, and the processor thread will join the corresponding
2) Considering the complexity and variability of the IoT queue according to the tenant ID after tenant authentication.
environment, it is difficult to determine how many tokens Control layer. The control layer is composed of a priority
are the most appropriate for each tenant. Once the token scheduler and distributed token bucket. The priority scheduler
rate of the tenant is set too high, it will cause some tenants maintains a tenant priority queue and a resource counter.
to encroach on the resources of other tenants; otherwise The token bucket is implemented using a distributed blocking
system resources cannot be fully exploited. queue, which applies a token for the scheduler and return token
3) When the equipment of some tenants is idle, to maximize for the consumer.
resource utilization, other tenants should be allowed to Service layer. The service layer is responsible for processing
use the remaining system resources, but the token bucket device messages. The service provider will offer customized
severely restricts the resource quota, resulting in idle re- and scalable software services according to different vertical
sources that cannot be allocated to the remaining tenants. businesses of the IoT.

A. MQTT data flow scheduling algorithm


C. Resource Demand Estimation Algorithm
The MQTT data flow scheduling algorithm proposed in
In order to quantify tenants’ resource usage, we need to this paper consists of the priority scheduling algorithm and
adopt effective algorithms to estimate the resource consump- improved distributed token bucket algorithm. The priority
tion of various request types. Brosig et al. proposed a request scheduling algorithm is used to schedule the data flows of
resource estimation algorithm based on request latency for the IoT devices. The priority of the tenants is determined by
Java Web applications [23]. For each type of request i, the dynamically counting the resource consumption of the tenants
estimated resource consumption is Ci . Since the monitoring in the cloud. The higher the resource consumption of the tenant
tool can only obtain the total resource occupation U of the in a unit of time is, the lower the priority of their devices
application, it is assumed that the response time of the request to be scheduled. Due to the asynchronous communication
is approximately proportional to its resource demand. As a adopted by MQTT, it is difficult to know the specific number
result, we can estimate the resource consumption of each of messages being processed in the consumer cluster, which
request by the following formula. will make it difficult for brokers to decide when to trigger data

2327-4662 (c) 2020 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. See http://www.ieee.org/publications_standards/publications/rights/index.html for more information.
Authorized licensed use limited to: University of Prince Edward Island. Downloaded on May 30,2021 at 16:27:41 UTC from IEEE Xplore. Restrictions apply.
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/JIOT.2021.3051742, IEEE Internet of
Things Journal
5

flow scheduling. In order to solve this problem, the distributed Algorithm 1 MQTT Data Flow Scheduling Algorithm
token bucket algorithm is introduced to the scheduling process. Input:
The token is stored through the distributed blocking queue.
inputBuffer: input buffer of consumer
The scheduler will not schedule until the token is obtained
from the token bucket. Variable:
In contrast to the traditional token bucket algorithm, the
timeInterval: time interval of resource consumption update
system no longer replenishes new tokens at a constant rate,
processorMap: map of processor queue
and the tokens will not be discarded after message forwarding;
priorityQueue: priority queue of tenants
instead, but the tokens will be returned to the queue by
currentProcessor: current processor
the consumer after message processing. Through this dis-
tributed token bucket algorithm, the distributed system using Function: handleMessage
the asynchronous communication mode can accurately control
message = inputBuffer.PeekMessage()
the number of messages consumed. As a result, the system
if message.type == PubilshMessage:
will have an effective negative feedback mechanism, and the
tenantId = ParseTenantID(message.topic)
speed of message sending is dynamically determined by the
processorQueue = processorMap.Get(tenantId)
message processing speed of microservices. Figure 5 shows
processorQueue.Add(currentProcessor)
the principle of the MQTT data flow scheduling algorithm.
currentProcessor.Wait()
Due to different business scales, tenants often have different tenant = getTenantInfo(tenantId)
equipment scales, so they will sign different SLA agreements processIncoming(msg)
with an IOT cloud platform. At present, the cloud platform of tenant.resource += getMessageWeight(message.topic)
the Internet of Things often focuses on the traffic demand [24]. tenant.weight = tenant.maxMessages/tenant.resource
Generally, the message traffic (the maximum number of
messages received from all devices in each service cycle) Functino: SchedulerLoop
is specified in an SLA [22]. The priority of tenants should while true :
consider the resource occupation and the maximum message token = blockingQueue.Acquire()
volume at the same time. In a normal scenario, the maximum tenant = priorityQueue.Get(1)
message traffic of a tenant should be proportional to their processor_queue = processorMap.Get(tenantId)
resource usage; therefore, the priority calculation formula of processor = processorQueue.Pop()
the tenant can be obtained as follows. processor.Notify()
if curruntTime lastTime > timeInterval :
Mi for tenant in tenantQueue
Pi = (3) tenant. resource = 0
Ri
lastTime = currentTime
where Pi is the priority of tenant i, Ri is the resource end while
consumption over a period of time, and Mi is the maximum
message traffic specified in an SLA. According to the above
formula, under the same resource consumption, the larger the
maximum message traffic ordered by a tenant is, the higher B. Results and Analysis
the priority of the tenant. The scheduling algorithm proposed
in this study is shown in algorithm 1. TABLE I: Performance without the isolation algorithm
Average Latency Latency Standard Deviation Throughput
Tenant
IV. E XPERIMENTS A ND A NALYSIS (ms) (ms) (sec−1 )
1 10897 8761.13 119.7
A. Computing Environment Setup 2 14470 8690.41 313.4
The hosts used in this section are configured using a Sum 13464 8845.14 433.1
computer with an Intel Core i7-9750H 6-core, 12-thread 2.60
GHz CPU; 16 GB of memory; and the 64-bit Ubuntu 16.04 The experiment tests the multitenant application in an IoT
operating system. Golang 1.12 and JAVA 1.8 are used as the scenario. A parking lock service is selected as the consumer.
development languages. MySQL 5.7 is used to simulate the The initial number of clients of two tenants is set to 100,
tenant data. Docker is used as Container. Spring Cloud Dalston and then 60 clients are added to tenant 2 every 5 seconds to
is used as the microservice framework. SurgeMQ is used as simulate the scenario of the increasing communication load
the MQTT broker. of tenant 2s devices. The messages sent by the device include
The IoT cloud platform used in experiments is an IoT the heartbeat frame and parking space status change message.
healthcare cloud in the smart IoT healthcare field. The plat- First, we tested the scenario without the tenant performance
form is developed based on the microservice framework spring isolation algorithm. The results of the related experiments are
cloud and the Web framework spring boot. It is a cloud shown in Table 1, Figure 6 and Figure 7.
service platform based on the multitenant mode that provides Message processing latency: The request latencies of the
intelligent IoT healthcare services. two tenants are almost the same throughout the whole process.

2327-4662 (c) 2020 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. See http://www.ieee.org/publications_standards/publications/rights/index.html for more information.
Authorized licensed use limited to: University of Prince Edward Island. Downloaded on May 30,2021 at 16:27:41 UTC from IEEE Xplore. Restrictions apply.
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/JIOT.2021.3051742, IEEE Internet of
Things Journal
6

Fig. 5: MQTT Data Flow Scheduling Algorithm

Due to the lack of an effective isolation mechanism, the


latency time of both tenants increases as the number of
client connections of tenant 2 increases, resulting in a serious
backlog of device messages that cannot be processed.

Fig. 7: Throughput without the performance isolation

IoT devices, the devices can continue generating messages


without receiving the reply of the cloud server. This feature
Fig. 6: Message Latency without the performance insolation leads to the backlog of messages, which makes the service
unable to respond to the status changes of devices in time,
Throughput: The throughputs of the two tenants were ba- and seriously affects the work of IoT devices.
sically the same in the initial stage. When the concurrency Next, we test the scenario with the token bucket algorithm.
of tenant 2 started to increase, the throughput of tenant 1 The results of the related experiments are shown in Table 2,
decreased dramatically and began to jitter dramatically, which Figure 8 and Figure 9.
resulted in a large fluctuation in the performance perceived by Message processing latency: The message processing la-
users. tency of the two tenants is obviously divided into two curves.
Experiments show that there is a multitenant performance The latency of tenant 1 is significantly lower than that of tenant
interference problem in the context of the IoT cloud. In 2, which indicates that the token bucket algorithm can achieve
addition, because of the asynchronous communication of the tenant isolation to some extent. However, the latency of tenant

2327-4662 (c) 2020 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. See http://www.ieee.org/publications_standards/publications/rights/index.html for more information.
Authorized licensed use limited to: University of Prince Edward Island. Downloaded on May 30,2021 at 16:27:41 UTC from IEEE Xplore. Restrictions apply.
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/JIOT.2021.3051742, IEEE Internet of
Things Journal
7

TABLE II: Performance comparison of token bucket algorithm


Average Latency Latency Standard Deviation Throughput
Tenant
(ms) (ms) (sec−1 )
1 6342 2658.72 201.4
2 14105 9659.54 254.9
Sum 10678 8372.51 456.3

Fig. 10: Throughput with the MQTT data flow scheduling


algorithm

Fig. 8: Message Latency with the token bucket algorithm

1 still increased with the number of client connections of


tenant 2, which indicates that the scheduler still passes on
too many requests of tenant 2 and fails to achieve completely
fair scheduling.

Fig. 11: Throughput with the MQTT data flow scheduling


algorithm

of device connections for tenant 2. Compared with the token


bucket algorithm, the message latency of tenant 1 is much
lower. This shows that the algorithm proposed in this study
can effectively shield the performance interference caused by
the load increase of other tenants’ devices, and guarantee the
service performance of tenants within their normal quota.
Throughput: When the number of connections for tenant 2
Fig. 9: Throughput with the token bucket algorithm starts to increase, after a short period of jitter, the through-
put of the two tenants basically remains at the same level.
Throughput: Compared with the previous scenario, the Compared with the token bucket algorithm, the MQTT data
throughput of tenant1 is improved. The isolation of the token flow scheduling algorithm can better balance the throughput of
bucket algorithm is relatively limited, which cannot completely tenants. The results show that the algorithm proposed in this
ensure that the two tenants have the same throughput. study can achieve fair scheduling of tenants device packets in
Finally, we test the scenario with the MQTT data flow the IoT scenario and maintain the communication throughput
scheduling algorithm. The results of the related experiments of each tenant device at the same level.
are shown in Table 3, Figure 10 and Figure 11. Based on the above three experiments, it is obvious that
the data flow scheduling algorithm proposed in this study can
TABLE III: Performance with the MQTT data flow scheduling achieve multitenant performance isolation in the IoT cloud.
algorithm The average message processing time of tenant 1 is reduced
by 82%, and the standard deviation is reduced by 92.2%.
Average Latency Latency Standard Deviation Throughput
Tenant
(ms) (ms) (sec−1 ) Because the data flow scheduling algorithm combines the
token bucket mechanism, which determines the execution state
1 1973 685.98 233.3
2 12750 10565.81 232.5 of the scheduler through token acquisition, the whole perfor-
Sum 10678 8372.51 465.8 mance isolation algorithm has a stronger negative feedback
mechanism. As a result, the algorithm can schedule the data
Message processing latency: The message processing la- flows of different tenants more accurately in the asynchronous
tency of tenant 1 is not affected by the increase in the number communication scenario.

2327-4662 (c) 2020 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. See http://www.ieee.org/publications_standards/publications/rights/index.html for more information.
Authorized licensed use limited to: University of Prince Edward Island. Downloaded on May 30,2021 at 16:27:41 UTC from IEEE Xplore. Restrictions apply.
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/JIOT.2021.3051742, IEEE Internet of
Things Journal
8

V. C ONCLUSION AND F UTURE W ORK [4] N. Shi, L. Tan, W. Li, X. Qi, and K. Yu, “A blockchain-empowered
aaa scheme in the large-scale hetnet,” Digital Communications and
In smart medicine, an IoT cloud platform not only provides Networks, 2020.
cloud computing resources for medical sensor devices, but it [5] Z. Guo, Y. Shen, A. K. Bashir, M. Imran, N. Kumar, D. Zhang, and
also provides software services for tenants, controls equipment K. Yu, “Robust spammer detection using collaborative neural network
in internet of thing applications,” IEEE Internet of Things Journal, 2020.
and queries the status of equipment through network services. [6] F. Tao, Y. Cheng, L. Da Xu, L. Zhang, and B. H. Li, “Cciot-cmfg: cloud
In this situation, there will also be performance interference computing and internet of things-based cloud manufacturing service
between multiple tenants, and performance isolation on the system,” IEEE transactions on industrial informatics, vol. 10, no. 2,
pp. 1435–1442, 2014.
IoT device side alone cannot guarantee global fairness. We [7] M. Chen and Y. Hao, “Label-less learning for emotion cognition,” IEEE
implemented a unified tenant data flow scheduling scheme transactions on neural networks and learning systems, 2019.
for the IoT cloud to effectively ensure the fair distribution [8] M. Chen, Y. Jiang, N. Guizani, J. Zhou, G. Tao, J. Yin, and K. Hwang,
“Living with i-fabric: Smart living powered by intelligent fabric and
of cloud resources. In addition, the experiments show that deep analytics,” IEEE Network, 2020.
the algorithm proposed in this paper can effectively isolate [9] A. Botta, W. De Donato, V. Persico, and A. Pescapé, “Integration of
the performance of tenants’ equipment. Furthermore, the al- cloud computing and internet of things: a survey,” Future generation
computer systems, vol. 56, pp. 684–700, 2016.
gorithm ensure the service quality for each tenant. Besides, by [10] E. Truyen, D. Van Landuyt, V. Reniers, A. Rafique, B. Lagaisse, and
applying this scheme in smart IoT healthcare can effectively W. Joosen, “Towards a container-based architecture for multi-tenant saas
improve patients’ medical service experience. applications,” in Proceedings of the 15th international workshop on
adaptive and reflective middleware, 2016, pp. 1–6.
In the field of future medicine, first, since the populariza- [11] C. D. Weissman and S. Bobrowski, “The design of the force. com
tion of sensor technology and Internet of Things healthcare, multitenant internet application development platform,” in Proceedings
multiple home medical devices such as infrared thermometers of the 2009 ACM SIGMOD International Conference on Management
of data, 2009, pp. 889–896.
and heart rate monitors are already quite common in peoples [12] T. Takahashi, G. Blanc, Y. Kadobayashi, D. Fall, H. Hazeyama, and
daily lives and have been used to measure essential body S. Matsuo, “Enabling secure multitenancy in cloud computing: Chal-
parameters, such as heart rate, body temperature and others. lenges and approaches,” in 2012 2nd Baltic Congress on Future Internet
Communications. IEEE, 2012, pp. 72–79.
Therefore, in the IoT healthcare scenario, patients can obtain [13] L. Wu, S. K. Garg, and R. Buyya, “Sla-based resource allocation for
personal medical diagnoses by uploading physical health data software as a service provider (saas) in cloud computing environments,”
obtained from IoT medical devices to iDoctor, which is a in 2011 11th IEEE/ACM International Symposium on Cluster, Cloud
and Grid Computing. IEEE, 2011, pp. 195–204.
self-serve medical system, to obtain professional healthcare [14] D. Shue, M. J. Freedman, and A. Shaikh, “Performance isolation
advice. Second, previous patients’ cases are more important and fairness for multi-tenant cloud storage,” in Presented as part of
and valuable for personal disease diagnosis. Therefore, how to the 10th {USENIX} Symposium on Operating Systems Design and
Implementation ({OSDI} 12), 2012, pp. 349–362.
make full use of previous cases information while not leaking [15] R. Krebs, C. Momm, and S. Kounev, “Metrics and techniques for
patients’ private information is a leading and promising field quantifying performance isolation in cloud environments,” Science of
of research, especially in future privacy-preserving intelligent Computer Programming, vol. 90, pp. 116–134, 2014.
[16] H. Cai, B. Xu, L. Jiang, and A. V. Vasilakos, “Iot-based big data storage
medical applications. Thus, we will consider the problem of systems in cloud computing: perspectives and challenges,” IEEE Internet
how to securely obtain personal medical diagnoses in IoT of Things Journal, vol. 4, no. 1, pp. 75–87, 2016.
healthcare while preserving performance isolation and service [17] F. Caglar, S. Shekhar, A. Gokhale, and X. Koutsoukos, “Intelligent,
performance interference-aware resource management for iot cloud
quality in our future work. backends,” in 2016 IEEE First International Conference on Internet-of-
Things Design and Implementation (IoTDI). IEEE, 2016, pp. 95–105.
[18] S. A. Ali, M. Ansari, and M. Alam, “Resource management techniques
ACKNOWLEDGEMENT for cloud-based iot environment,” in Internet of Things (IoT). Springer,
This work was supported by the National Key R&D Pro- 2020, pp. 63–87.
[19] D. Happ, N. Karowski, T. Menzel, V. Handziski, and A. Wolisz, “Meet-
gram of China (No. 2020YFB1006002), the National Natural ing iot platform requirements with open pub/sub solutions,” Annals of
Science Foundation of China (Grant Nos. 81671768 and Telecommunications, vol. 72, no. 1-2, pp. 41–52, 2017.
61601041), the Fundamental Research Funds for the Central [20] D. Locke, “Mq telemetry transport (mqtt) v3. 1 protocol specification,”
IBM developerWorks Technical Library, vol. 15, 2010.
Universities(2019PTB-003), and the Key R&D Program of [21] X. Wang, V. Devadhar, and P. Murugesan, “Mechanism for facilitating
Hebei Province (Grant No. 20313701D). This work was also sliding window resource tracking in message queues for fair manage-
supported by the China NationalNatural Science Foundation ment of resources for application servers in an on-demand services
environment,” Feb. 23 2016, uS Patent 9,268,605.
No. 61802139,No. 61802139, No. L1924068 and The work [22] F. L. de Caldas Filho, R. L. Rocha, C. J. Abbas, L. M. E. Martins, E. D.
was supported by the Technology Innovation Project of Hubei Canedo, and R. T. de Sousa, “Qos scheduling algorithm for a fog iot
Province of China under Grant 2019AEA171. gateway,” in 2019 Workshop on Communication Networks and Power
Systems (WCNPS). IEEE, 2019, pp. 1–6.
[23] F. Brosig, S. Kounev, and K. Krogmann, “Automated extraction of
R EFERENCES palladio component models from running enterprise java applications,”
in Proceedings of the Fourth International ICST Conference on Perfor-
[1] A. Gatouillat, Y. Badr, B. Massot, and E. Sejdić, “Internet of medical mance Evaluation Methodologies and Tools, 2009, pp. 1–10.
things: A review of recent contributions dealing with cyber-physical [24] M. Chen, Y. Hao, K. Lin, Z. Yuan, and L. Hu, “Label-less learning for
systems in medicine,” IEEE internet of things journal, vol. 5, no. 5, pp. traffic control in an edge network,” IEEE Network, vol. 32, no. 6, pp.
3810–3822, 2018. 8–14, 2018.
[2] A. Limaye and T. Adegbija, “Hermit: A benchmark suite for the internet
of medical things,” IEEE Internet of Things Journal, vol. 5, no. 5, pp.
4212–4222, 2018.
[3] M. Chen, Y. Hao, C.-F. Lai, D. Wu, Y. Li, and K. Hwang, “Opportunistic
task scheduling over co-located clouds in mobile environment,” IEEE
Transactions on Services Computing, vol. 11, no. 3, pp. 549–561, 2016.

2327-4662 (c) 2020 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. See http://www.ieee.org/publications_standards/publications/rights/index.html for more information.
Authorized licensed use limited to: University of Prince Edward Island. Downloaded on May 30,2021 at 16:27:41 UTC from IEEE Xplore. Restrictions apply.

You might also like