Computation Offloading and Resource Allocation For Low-Power IoT Edge Devices
Computation Offloading and Resource Allocation For Low-Power IoT Edge Devices
Clouds
smart devices. To avoid Big Data issues (e.g. high latency of
y
cloud based IoT), the processing of the captured data is starting
ilit
n)
ab
from the IoT edge node. However, the available processing
tio
Pr
ap
uta
capabilities and energy resources are still limited and do not
ed
gC
cloudlets
Fogs &
mp
allow to fully process the data on-board. It calls for offloading
ict
sin
n+ y
a
co
Qu
some portions of computation to the gateway or servers. Due
tio nc
bil
es
an
e
ity
to the limited bandwidth of the IoT gateways, choosing the
oc
ica Lat
tity
Pr
gateways
offloading levels of connected devices and allocating bandwidth
to them is a challenging problem.
un
This paper proposes a technique for managing computation
offloading in a local IoT network under bandwidth constraints. mm
(co
Low power wireless connections (e.g. Bluetooth Low Energy, LPWAN, ZigBee, HaLow)
The existing bandwidth allocation and computation offloading
Authorized licensed use limited to: Thapar Institute of Engineering & Technology. Downloaded on June 24,2025 at 11:10:45 UTC from IEEE Xplore. Restrictions apply.
7
we envision that the edge of the network is moving to the bandwidth demand of IoT edge nodes can be reduced by
gateways and smart devices [11, 12]. We are witnessing a novel compression techniques [14, 21] or service quality
trend towards processing the captured data at the IoT edge adaptation [22]. However, the most effective approach would
nodes, even when data acquisition rate is relatively high, be processing the data partially on the IoT devices and
such as in healthcare monitoring applications which involve offload the rest of computation to the gateway or a more
biomedical signals [13, 14], or structural health monitoring resourceful device (e.g. Fogs, cloudlets, could servers).
applications [15]. Although there are several approaches for computation
Many IoT devices are battery-operated or have limited offloading and bandwidth allocation on the gateway in the
energy sources due to either their portability requirements, or domain of IoT and MEC [22, 23], they have not addressed
the lower cost of installation, deployment and maintenance. the fragmentation issue: Since the offloading levels on
This limitation imposes the following two constraints on the the IoT edge nodes are discrete and coarse-grained, the
edge devices: 1) processing capability, 2) communication resources on the gateway (e.g. bandwidth) will be underuti-
bandwidth. Due to the first constraint, some of the IoT lized. The reason is that the remaining amount of resources
applications are not able to autonomously process the whole may not be enough for the IoT devices to change their
collected data at the edge devices. Hence, a portion of the offloading level, which would result in unused resources on
processing task must be offloaded to the more powerful lay- the gateway. We refer to this phenomena as fragmentation
ers (e.g. gateways, Fogs or cloudlets) [14, 13]. However, to issue.
offload the computation, the raw data or partially-processed In this paper we study the problem of computation
data must be transmitted to the gateway, and this is where offloading (as an essential part of edge computing) from
the bandwidth constraint comes into play. IoT edge nodes under communication bandwidth constraints.
Bandwidth Constraint: Limited energy resources on IoT We address the fragmentation issue by presenting a tech-
edge nodes mandate low-power wireless technologies. One nique that allows IoT edge nodes to utilize the available
of the main limitations of low power wireless technologies resources on the gateway to their full potential, even if
is their low data rate and throughput. Despite the recent the offloading levels are coarse-grained. Depending on the
and rapid enhancements in these wireless technologies and desired optimization goal, this technique makes the system
protocols, the throughput is still low. Table I summarizes more efficient.
the throughput of the most popular low-power IoT wireless Paper structure: in Section II, we briefly review related
technologies including Bluetooth low energy (BLE), ANT+, work and background. Section III presents the problem
ZigBee, low power WiFi (also known as HaLow), Low formulation. After that, we provide a detailed presentation
Power Wide Area (LPWAN) technologies which include of our novel solution in Section IV. Experimental results
LoRa, SigFox, etc. [16]. It is worth mentioning that the and evaluations are presented and discussed in Section V ,
throughput may decrease further in case of interference with while we conclude the paper in Section VI.
other surrounding wireless radios [1].
II. R ELATED W ORK
Table I: Throughput of IoT wireless technologies [17, 18]
In [23], a decentralized game theoretic approach for
Wireless BLE ANT+ ZigBee HaLow LoRa SigFox computation offloading is presented. The wireless channel
Throughput
[Kbps]
270 20 120 150 50 <10 is considered as the scarce and shared resource. In this
approach the decision is between fully offloading the compu-
IoT envisions a model in which IoT edge nodes are tation or fully processing on-board. The proposed approach
connected to the Internet through gateways, as illustrated cannot address the fragmentation issue.
in Figure 1. A gateway (i) enables seamless integration of Samie et al. [22] have proposed a service quality and
low-power wireless networks of IoT edge nodes with other computation offloading technique for the resource-constraint
networks (e.g. cellular network, LAN, etc. [19]) and (ii) IoT edge nodes and gateways. However, in their proposed
provides local data processing service at the edge of the solution, the gateway might be underutilized due to frag-
network [20] in the EC paradigm. Although the gateway mentation.
might exploit a high-bandwidth connection to the Internet A joint optimization of bandwidth and computational
(i.e. cellular or WiFi), its interface with IoT edge nodes is resources for computation offloading in a dense deployment
still a low-power wireless connection such as LoRa, BLE scenario is presented in [24], which considers the presence
or ZigBee, which have a low bandwidth (see Figure 1 and of radio interference. The proposed solution is however
Table I). unaware of fragmentation issues.
The limited bandwidth of the gateway is usually shared Several other research works have been conducted to
among multiple IoT edge nodes, which introduces the band- address the problems of edge computing [25], but none
width allocation as a challenge in IoT, especially when of them has addressed the fragmentation issue in shared
video, sound, or some bio-medical signals are involved. The resources.
Authorized licensed use limited to: Thapar Institute of Engineering & Technology. Downloaded on June 24,2025 at 11:10:45 UTC from IEEE Xplore. Restrictions apply.
8
III. S YSTEM M ODEL
We consider a local network of N IoT edge nodes maximize (objective)
I = {I1 , · · · , IN } connected to a gateway. IoT device Id Optimization goal: or (3)
is described by several parameters including: minimize (objective)
I d = Q d , Rd , d = 1, · · · , N (1) Constraints: ∀d rdi ≤ RG (4)
other contraints (if any)
• Qd denotes the number of different computation off- These problems belong to the class of generalized as-
loading levels that the IoT device offers. Some of the ap- signment problems. Particularly, they can be formulated as
plications can be partitioned into several pipeline stages, a multiple choice knapsack problem (MCKP), where the
each of which processes the data received from the gateway corresponds to the ‘knapsack’, the bandwidth or
previous stage and feeds the results to the next stage other constraints correspond to the ‘weight’ or ‘volume’, and
(if any). As an example, consider an IoT-based heart the offloading levels of each IoT edge node correspond to
monitoring device. In its first stage, it can perform some the class of items from which one and only one item must
pre-processing on the data, e.g. applying a filter on it. In be picked. Even though MCKP is known to be NP-hard,
the second stage, it can apply a transform operation, e.g. pseudo-polynomial solutions exist. One of the shortcomings
Digital Wavelet Transform (DWT). And in the last stage, of the solutions to the current setup is the underutilized
it extracts the crucial complexes and features [22]. resources of the gateway due to the fragmentation issue (see
Even if the application does not support such a pipeline Section I).
structure, it has at least two computation offloading levels: For the proof-of-concept, we consider a problem in this
(i) Level 1 submits the raw data without on-board process- work with the optimization goal to maximize the battery
ing, (ii) Level 2 indicates ‘no computation offloading’, life among devices (Eq. (5)), and its constraint is the
thus fully processes the data and only transmits the gateway’s bandwidth (Eq. (6)). It should be emphasized
results. that our proposed solution is not restricted to this problem
• Rd denotes the set of possible transmission data rates of formulation, and it is applicable to any problem that can be
device d for the offloading levels. They depend on the modeled as Eq. (3) and (4). For our considered problem, we
input data rate and data resolution of fixed value, as well need to use these parameters on the IoT edge nodes:
as the computation offloading strategy of the device. • Ed is the remaining energy in the battery of device d.
The transmission data rate rdi , which is associated with • pdi is the overall power consumption of device d operat-
the offloading level i, corresponds to the share of captured ing at offloading level i. It includes the power consump-
data that is offloaded plus the (intermediate) results from tion for on-board processing as well as data transmission
the partial on-board processed data. (at the rate rdi ).
Rd = rdi | i ∈ [1, Qd ] (2) • bdi denotes the estimated battery lifetime of IoT device
d at offloading level i. This parameter depends on (i)
The gateway connects these devices to the Internet. It
its remaining energy in battery and (ii) its total power
receives data from IoT edge devices, then either processes
consumption: bdi = pEdd .
it and transmits the final results to the Internet or directly i
relays the data to another processing unit (e.g. cloudlets, Optimization goal: maximize(min bdi ) (5)
∀d
Fogs, cloud servers [20, 1, 6]). RG is the total available
bandwidth of the gateway to receive data from IoT devices. Bandwidth constraint: ∀d rdi ≤ RG (6)
The effect of environment and surrounding devices (e.g. By selecting the computation offloading level on each IoT
external interference) on the transmission can be modeled edge node, not only its bandwidth demand but also its power
in RG , Rd and other parameters (e.g. energy consumption). consumption is changed and consequently, its expected
However, this is beyond the scope of this work. battery life will change. Figure 2 shows the problem model
Generally, the IoT local network (i.e. gateway and edge that we consider in this work. Figure 2a shows different
nodes) has an objective and optimization goal depending on offloading levels of one IoT edge node (level 1 being to
the application. It introduces an optimization problem such offload all data, level Qd being to process all data on-
as minimizing the overall energy consumption, maximizing board), while Figure 2b illustrates the bandwidth allocation
the overall service quality [22], maximizing the battery life and offloading management with respect to the gateway’s
of edge nodes, etc. subject to resource constraints such as constraint.
bandwidth, processing power, etc. [22]. IV. O UR P ROPOSED S OLUTION
These problems can be formulated as Eq. (3) to (4). The To address the fragmentation problem and under-utiliza-
offloading level i for each IoT device d must be determined tion of gateway’s resources, we suggest a solution to extend
at run-time, such that the constraints are fulfilled (Eq. (4)) the on-board processing model. It’s worth to note that this
and the desired objective is maximized/minimized (Eq. (3)). solution does not need any modification or extension in the
Authorized licensed use limited to: Thapar Institute of Engineering & Technology. Downloaded on June 24,2025 at 11:10:45 UTC from IEEE Xplore. Restrictions apply.
9
Selected Gateway
level
data r13 r22 rN1 d RG Selected
rate level
Raw r13
1 transmission
r22 ... rN1
Offloading levels
2
1 1 1
3
2 2 2
...
...
...
... Complete 3 3 3
processing
...
...
...
Qd
Total power
Q1 Q2 QN
Power for Power for
transmission processing ...
Device 1 Device 2 Device N
(a) Offloading levels of an IoT device (b) Problem model: choosing offloading level for each device, meeting the bandwidth
and their power consumption constraint of the gateway
Figure 2: The offloading levels of a device, and the problem model of the local network
pipeline structure of the software application. As mentioned, newly generated data. Therefore, while the device is only
the fragmentation issue stems from the discreteness of operating on i-th and j-th offloading levels, the gateway
choices. This issue is more severe when the number of sees the device operating at an intermediate configuration
offloading levels is small and the difference between data mode with (rd , pd ).
transmission rate of offloading levels is high (e.g. when the
IoT application only supports two offloading levels: raw data T
t1
time
transmission and fully process the data).
Input data/signal
...
Stage P Stage P Lj Chosen
(practically not existing) offloading level. Fully LQdd LQd level
processed
Property 1: Let us consider two offloading levels i and j
with data transmission rates of rdi and rdj where rdi ≤ rdj . Figure 3: Switching between offloading levels 2 and 3
For any rd , rdi ≤ rd ≤ rdj , the device d can operate in Example 1: Figure 3 illustrates an example for our
a way such that its data transmission rate equals rd from proposed mechanism. Let us assume the IoT device is
gateway’s and high-level (e.g. cloud) perspective. switching between these two offloading levels: (i) Level 2
Proof: Consider a time frame of T . If the device oper- indicates data transmission at the rate of 0.8 Kbps, (ii) Level
ates at the offloading level j for t1 time, then changes the 3 indicates data transmission at the rate of 0.3 Kbps. By
level and operates at the offloading level i for (T − t1 ) time, spending 0.6 s at level 2 and 0.4 s at level 3, the device
then the average transmission rate, and power consumption can deliver data rate at (0.8 [Kbps] × 0.6 + 0.3 [Kbps] ×
are respectively: 0.4)/(0.6 + 0.4) = 0.6 [Kbps].
t1 ×rdj + (T −t1 )×rdi t1 ×pdj + (T −t1 )×pdi Given rd as the desired data transmission rate of device
rd = pd =
T T d, the device calculates the proportion of t1 and (T −t1 ) as
(7) follows:
By choosing the proportion of t1 and (T −t1 ), the IoT device t1 r − rd i
can imitate any intermediate data rate rd , or intermediate = d (8)
T − t1 rdj − rd
offloading level with (rd , pd ).
The detailed scheme for the IoT device is as follows: It where rdi and rdj are the closest data transmission rates
starts operating at j-th level (which has higher transmission among offloading levels such that rdi < rd < rdj .
rate compared to i-th level). It keeps working at this con- Buffer Size: The size of required memory to buffer the
figuration for t1 time. However, it transmits its data to the data depends on 1) the time spent in higher offloading level
gateway at the rate of rd (rd ≤ rdj ). It buffers the rest of (i.e. t1 ), and 2) its surpassed data. It can be calculated as
produced data (i.e. rdj − rd ) on the memory. Then after t1 , follows by substituting the value of rd from Eq. (7):
it switches to the i-th level whose data-generation rate is rdi t1 .(T − t1 )
F = t1 ×(rdj − rd ) = × (rdj − rdi ) (9)
(rdi ≤ rd ). It still transmits the data to the gateway at the T
rate of rd , which consists of previously buffered data and Given a fixed time interval T , the maximum size of buffer
Authorized licensed use limited to: Thapar Institute of Engineering & Technology. Downloaded on June 24,2025 at 11:10:45 UTC from IEEE Xplore. Restrictions apply.
10
pQd Algorithm 1: Iterative BW Allocation on the Gateway
Device’s Power
data rate
p2 Optimal end
for device Procedure Iterate()
4 while R > 0 do // gateway still has BW to allocate
rQd ... r3 r2 r1 5 d∗ ← device with minimum battery
6 d+ ← device with second minimum battery
Figure 4: Piecewise-linear function to select the contin- 7 if d∗ benefits from more BW then
uous allocated bandwidth of an IoT edge node 8 if batt. life of d∗ != batt. life of d+ then
∗
9 p∗ = E b+
happens when the desired data transmission rate is rd = 10 rd ← corresponding BW to p∗
1 R ← R − rd
2 (rdi + rdj ) which corresponds to t1 = 2 . In this case, the
T 11
12
buffer size equals F = 4 × (rdj − rdi ).
T else
13 Increase allocated BW of d∗ by Δ
B. Bandwidth Allocation & Offloading Management 14 R ← R − Δ
end
Although the required information about offloading op- else
15 exclude it in the next iteration
tions, power consumption and remaining energy is dis- end
tributed across the IoT devices, the final decision on band- end
end
width allocation is made on the gateway. Each device sends
the following parameter values to the gateway and updates excludes this device at next iterations (Line 15). Otherwise,
them once they are changed: Ed and {(rdi , pdi )}1≤i≤Qd . it calculates the power consumption for d∗ which makes its
In most application scenarios (if not all of them), the rdi battery life equal to battery life of d+ (i.e. p∗ = E ∗ /b+ , see
parameter is a fixed value as it depends on the application’s Line 9). It allocates the bandwidth which would result to
pipeline structure, which is also fixed. However pdi may closest power consumption to p∗ (Line 10). In cases that b∗
change over time due to several reasons: the effect of and b+ are close, the gateway increases the allocated band-
interference on data transmission cost is one of them. Finally, width of d∗ by Δ, which represents the minimum amount
Ed changes due to energy consumption or battery recharge. of bandwidth that can be given to or taken away from
Once the gateway receives these parameters from the an IoT device (Lines 13-14). It iteratively keeps repeating
devices, it forms a piecewise-linear continuous function this procedure until the remaining bandwidth, R , is totally
using (r, p) pairs for each device, as shown in Figure 4. For consumed.
each device, d, the gateway selects a transmission rate rd in
the range [rQd r1 ]. It corresponds to a power consumption V. E VALUATION AND R ESULTS
pd , which is found using the piecewise-linear function (see To demonstrate the effectiveness of our proposed tech-
Figure 4). The selection of rd is toward maximizing the nique, we conducted some experiments based on a personal
battery lifetime. A simple implementation for finding the health monitoring case-study. It includes real world mea-
optimal allocation is inspired by the gradient projection surements on an actual IoT node and trace driven network
method, used in optimization algorithms. It starts from an simulation to investigate the behavior of the whole system.
initial solution and converges to the optimum solution after Setup: We consider the Intel Quark SoC as the core
a limited number of iterations. of our IoT devices. The gateway is assumed to exploit an
The iterative bandwidth allocation algorithm, executed on ARM Cortex-M3 processor. We assume BLE as the wire-
the gateway, is presented in Algorithm 1. In the initial solu- less connection between gateway and IoT devices. Power
tion, the gateway gives each device its minimum bandwidth consumption and throughput values of data transmission are
demand (i.e. min(rdi ), 1 ≤ i ≤ Qd ), as shown in Line 1. according to [17]. We choose a coin cell battery for IoT
Then it calculates the battery life of each device under this devices with nominal capacity of 420 mAh. Moreover, we
configuration (i.e. bdi = Ei /pdi in Line 2). The gateway
also
consider a realistic discharge model for the battery as [26]
calculates its remaining bandwidth, R = RG − ∀d (rdi ) to evaluate the remaining energy at runtime (i.e. Ed ).
(Line 3). The remaining bandwidth must be allocated to the Application Scenario: We consider a health monitoring
devices, step by step, while prioritizing the devices with application for Electrocardiogram (ECG) analysis to detect
lower battery life. abnormality or arrhythmia in heart activity [22]. The analysis
At each iteration, the gateway finds the devices with the flow contains four main stages: (i) Filtering, (ii) Segmen-
lowest and the second lowest battery life (let us denote tation & heart beat detection, (iii) Feature extraction, and
them respectively by d∗ , d+ , as shown in Lines 5-6). Then (iv) Diagnosis & classification. We use real-world ECG data
gateway checks if the battery life of d∗ can be extended by recordings from MIT-BIH Arrhythmia Database [27] which
allocating more bandwidth to it (Line 7). If not, gateway also provides annotations for the signals.
Authorized licensed use limited to: Thapar Institute of Engineering & Technology. Downloaded on June 24,2025 at 11:10:45 UTC from IEEE Xplore. Restrictions apply.
11
30
Min. Battery [hour] Ours [4] B. Zhang, N. Mor, J. Kolb, et al. The cloud is not enough: saving
27 discrete IoT from the cloud. In USENIX Conference on Hot Topics in Cloud
24 Computing, pp. 21–21, 2015.
[5] R. Want and B. N. Schilit and S. Jenson. Enabling the internet of
21 things. IEEE Computer, 48(1):28–35, 2015.
[6] O. Salman and I. Elhajj and A. Kayssi et al. Edge computing enabling
18
the Internet of Things. In WF-IoT, pp. 603–608, 2015.
15 [7] A. Ahmed and E. Ahmed. A survey on mobile edge computing. In
2 3 4 5 6 7 8 9 10 Int’l Conference on Intelligent Systems and Control (ISCO), 2016.
#devices [8] N. Fernando and S. W. Loke and W. Rahayu. Mobile cloud comput-
ing: A survey. Future Generation Computer Systems, 29(1):84–106,
Figure 5: Minimum battery life of IoT edge nodes with 2013.
our technique compared to the discrete configurations [9] W. Shi, J. Cao, and Q. Zhang, et al. Edge computing: Vision and
challenges. IEEE Internet of Things Journal, 2016.
Ours discrete
100% [10] C. Raphael. Why edge computing is crucial
for the IoT. Online: http://www.rtinsights.com/
80%
Utilization of BW
why-edge-computing-and-analytics-is-crucial-for-the-iot/, 2016.
on Gateway
Authorized licensed use limited to: Thapar Institute of Engineering & Technology. Downloaded on June 24,2025 at 11:10:45 UTC from IEEE Xplore. Restrictions apply.
12