The growing popularity of Internet of Things (IoT) has opened opportunities for various new application areas. It is estimated that the number of IoT devices will reach 50 billion by 2025 . A definition of IoT is as follows: “Internet of Things envisions a self-configuring, adaptive, complex network that interconnects ‘things’ to the Internet using standard communication protocols. The things offer services, with or without human intervention, through the exploitation of unique identification, data capture and communication, and actuation capability. The service is exploited by intelligent interfaces and is made available anywhere, anytime, and for anything” . On the other hand, Cloud computing is crucial in enabling IoT scalability and agility. Cloud-based solutions are key reasons to the success of IoT.
Based on the definition and the growing trend of IoT and Cloud, the scope of IoT systems is becoming ubiquitous. Further, the data generated from IoT devices often demand fast or real-time processing and a device could be IoT-equipped Mobile Terminals (MTs). The MTs can range from vehicles on the road to ships on water to UAVs/drones in the air. Sensors equipped on these MTs can transmit data, e.g., tracking and monitoring, to the Cloud for further processing and services . As an MT travels, it may switch between different types of available heterogeneous wireless networks, while still need to satisfy the quality of service (QoS) requirements. On the other hand, IoT-equipped MTs may have constrained resources. Hence, intelligent, robust, and efficient handover techniques are essential to fulfill the requirements of diverse QoS demands. To achieve the seamless connectivity, it often is necessary to execute frequently both of handover techniques: vertical handoff decision (VHD) across heterogeneous networks and a horizontal handoff (HHO) method for handovers using the same network technique, e.g., cellular network.
In  , the authors proposed the architecture of a mobile IoT Edge Gateway that is capable of performing vertical handovers between Wi-Fi and Satellite networks based on Received Signal Strength (RSS) using Edge computing. Edge computing brings the datacenters (or mini-data centers) closer to the users or MTs to shorten the delay compared to Cloud computing. The concept of containerized microservices on mobile IoT Edge Gateway is presented in  , as a lightweight and efficient solution, which can be easily deployed and integrated with different development environments. In   , the authors have discussed the benefits, challenges and performance evaluation of deployment of IoT gateways as a middleware solution at the Edge Gateway. However, their proposed approaches do not have radio or satellite as a secondary way of transmitting the data from the Edge Gateway to the Cloud in case of a network failure or out of the coverage of a Wi-Fi network.
To overcome the potential problem in tracking and monitoring MTs seamlessly for wireless IoT services, the main objective of this paper is to build an efficient vertical handover algorithm for mobile IoT applications and integrate real hardware components and software techniques for a testbed. The contributions of the paper are: First, this paper extends our previous study  to cover the Radio network in addition to Wi-Fi and Satellite networks for decision making. Further, most of the previous research efforts concentrate either on the network level parameters or limited to two types of networks, i.e., cellular and Wi-Fi or Bluetooth technologies, and are often limited to a single or only a few decision criteria. We adapt the multi-criteria based VHD (MCVHD) algorithm for diverse parameters related to user’s satisfaction, network needs, and service requirements. We also apply fuzzy logic to the vertical handover scheme for heterogeneous networks for real time services.
The second contribution of the paper is the actual design, implementation, and evaluation using a real testbed. Moreover, the IoT system has been integrated with Edge/Cloud computing and advanced software techniques for the prototype. The software techniques adopted in the paper include microservices, containers, and middleware broker that are lightweight and suitable for IoT systems with limited resources. We have also evaluated the proposed approach through an extensive set of experiments for various scenarios using the testbed.
The rest of the paper is organized as follows: Secion 2 describes the background and related work. Section 3 presents the IoT mobility management. Section 4 describes the proposed system for IoT Edge Gateway. Section 5 describes the VHD mechanism. Section 6 presents the testbed designed for proof of concept. The performance evaluation of the proposed fuzzy logic based MCVHD algorithm is presented in Section 7. Finally, Section 8 presents the conclusion and future research.
2. Background and Related Work
This paper focuses on vertical handover management in heterogenous wireless networks. Various vertical handover schemes have been proposed in the literature. The approach in  compares vertical handover algorithms based on QoS. But the approach is limited to only two 3G and WLAN (wireless LAN) networks. The author in  presents a survey with a comparison of several vertical handover algorithms, but the research work is limited to only RSS Quality based function.
Approaches in  and  are based on RSS for VHD. The network with the highest RSS value is selected among available networks. Similarly, both  and  discuss various handover methods, but they also only consider RSS. The RSS value can fluctuate more and result in unnecessary handovers (UHs) or even handover failures . Thus, the approach based only on RSS value is not effective for vertical handovers. Another handover approach  only considers fixed bandwidth as a decision criterion, which is challenging during dynamic bandwidth decision scenarios. The approach presented in  considers other criteria like Signal to Interference plus Noise Ratio (SINR), mobile terminal speed, etc. However, the approach lacks in adaptive considerations based on user preferences. Other handover methods, e.g.,  , intend to minimize the cost function of multiple metrics, such as bandwidth, delay, jitter, etc. But they may limit to the user satisfaction level.
Both VHD and HHO are implemented in networks to enhance QoS, save energy, improve network throughput, fulfill user convenience and/or balance traffic load. To carry out such tasks, IoT-equipped MTs with constrained resources must be able to efficiently and seamlessly reconnect to the best access network among several candidates’ wireless networks, without interruption to existing connections . In the case of vertical handover between two different types of access networks, the main objective is to minimize data loss and interruption time during the handover period. Besides, the handover replacement of the access network should be transparent to the application and the end user. However, vertical handovers may affect QoS due to the different characteristics of various wireless access networks. Thus, the performance of VHD scheme has a direct impact on user requirements and on the overall network performance. VHD in heterogeneous wireless networks has recently received a great deal of attention       .
The handover decision based on the Multi-Attributed Decision Making (MADM) method  has been adopted by some researchers, as it considers multiple criteria for selecting the current best available network. A similar approach presented in  shows a comparison of Technique for Order Preference by Similarity to Ideal Solution (TOPSIS) methods  for VHD. It considers criteria such as RSS, round trip time, bandwidth, latency, jitter, range, etc. This method first eliminates the networks which do not meet the requirement and then calculates a score for each network to decide the best network. Though this approach is better than other VHD methods, it requires more resources, e.g., CPU, memory, power, due to heavy computations, which is not suitable for resource constrained IoT devices.
Another VHD method proposed in  is based on weighted product model. This method first calculates weights of each criterion and then it generates a decision matrix based on configuration values. After calculating the cross product of the weights and the decision matrix the result is normalized. Finally, the best available network is chosen. Though this approach generates good results, it is imbalanced with respect to the QoS of a network. One of the MADM based methods, called TOPSIS decision model, is a popular VHD method due to its simple calculations, less computation and higher efficiency. The approach reported in  is based on the TOPSIS technique. The authors in  enhanced the TOPSIS technique by combining two approaches, i.e., M-AHP and E-TOPSIS. The M-AHP has been used to assign weights to network criteria while E-TOPSIS has been used for ranking the network.
Some approaches make use of artificial intelligence algorithms , fuzzy logic, genetic algorithms and neural networks techniques to interpret imprecise information and convert imprecise data into crisp numbers. Research efforts in    focus on utility function models to describe the level of satisfaction of the MT according to different services offered by the network technology.
None of the abovementioned schemes supports vertical handovers in a generic scenario. In other words, using a scheme can be better in one particular scenario, but it may be not good in another scenario. We have reviewed those schemes from different perspectives and identified several issues, such as using imbalance parameters for network selection, inappropriate handover triggering, complex computation during handover, incorrect network selection, etc.
There have also been recent articles presenting different methods for VHD, e.g.,     . As presented in a survey , those approaches have only been experimented using simulation tools, e.g., NS-2, NS-3, or MATLAB, or investigated simply via theoretical analysis.
Based on this literature review, none of those approaches actually integrate a system using real hardware and software components and techniques, and those approaches are not specifically targeted for IoT systems which often have limited resources. Experimental design and evaluation play a crucial role in validating emerging ideas and advancing technologies.
Moreover, the MADM methods are largely used to optimize the vertical handover problem. Our objectives in this research paper are first to put forward a hybrid approach based on the TOPSIS  algorithm. The TOPSIS algorithm is used to calculate the performance concerning each of the candidate networks. Fuzzy logic is then applied to convert imprecise data into numerical values using conversion scales and the best network based on higher ranking calculated by TOPSIS is selected for handover. The second objective is to devise a lightweight system and integrate it with Edge/Cloud computing for resource-constrained IoT applications.
Fuzzy logic is a useful technique for measuring indeterministic data in form of linguistic term . There are many reasons to adopt fuzzy logic as a possible solution to the selection problem where the criteria are indeterministic. The aim of our approach is to design a scheme by leveraging the strength of MCVHD, which makes use of fuzzy logic to select the best available wireless network, while considering multiple criteria, such as user preference, cost, signal strength, and latency.
3. IoT Mobility Management
One of the major challenges faced by IoT-equipped MTs is the ability to gain continuous access to the heterogenous networks and to maintain a certain QoS level while traveling. The rest of this section describes critical issues related to IoT mobility management, including handovers, VHD criteria, and VHD algorithms.
A handover is the process of transferring a connection session without disconnection while MTs moves from one Base Station (BS) or access point to another. Handovers can be classified into two categories :
• Horizontal handover: When a handover takes place between the access points which support the same network technology, e.g., cellular technology, is referred to as a horizontal handover.
• Vertical handover: When a handover takes place between the access points which support different network technologies, cellular and Wi-Fi, is referred to as a vertical handover.
A handover decision depends on the type of the handover technique which could be based on various factors like RSS, QoS, data rate, network coverage, speed of MTs, latency, service cost, and power utilization. An important factor of the handover process in VHD is selecting best available network among the candidate networks. Contrary to the RSS-based handovers, the MCVHD algorithms consider other criteria to improve network selection and user satisfaction.
3.2. VHD Criteria
Multiple criteria need to be considered for VHD. The authors in  present a thorough discussion on VHD criteria. The following summaries the important criteria based on a survey of the literature.
Received signal strength (RSS): RSS is a commonly used factor for VHD because of easy measurement and it is directly related to the service quality of signal. RSS quality also depends on the distance from an MT to its point of attachment (POA) . Various horizontal handover algorithms use RSS as the main decision criterion for handover. Evidently, RSS is an important criterion for VHD algorithms as well.
Network connection time: The network connection time is referred to the connection time provided by a network’s POA to the MT. The variation of the RSS due to distance and speed of the MT from POA can affect the network connection time. Heterogeneous networks, e.g., satellite network and Wi-Fi, have different network coverage areas; hence the network connection time plays a vital role for VHD.
Available bandwidth: Available bandwidth is defined as the amount of data that can be transmitted during a fixed given time and expressed in bits per second (bps). It is an important criterion for VHD, especially for delay sensitive application.
Power consumption: Power consumption is crucial for resource constrained IoT MTs, as vertical handovers to a network POA is preferable which would support extending battery life of the MT.
Cost of Network Service: Cost of network service should be taken into consideration for VHD, as different network types may have different access cost. For example, service cost of data transmissions through the satellite network is typically higher than that through Wi-Fi or a cellular network.
Security: Security is important for VHD in applications where confidentiality of data is critical.
User priority: A user preference can prioritize the selection of the favorable access network among other available heterogeneous networks.
3.3. Classification of VHD Algorithms
VHD algorithms can be classified based on the handover decision criteria used. There are four types of VHD algorithms:
RSS based algorithms: RSS based VHD algorithms are the conventional in handovers. Many methods have been proposed and developed to select the best network among available alternatives based on highest RSS value. Since the heterogenous networks reveal disparity of the technologies involved  with different thresholds which makes comparison difficult. Consequently, other parameter(s) like quality factor and bandwidth are usually combined with RSS for the decision making.
Bandwidth based algorithm: This category of VHD algorithms is primarily based on available bandwidth for an MT . Both bandwidth and RSS are also used in some VHD algorithms .
Cost function-based algorithms: These VHD algorithms selects the best network based on a cost function. A cost function typically involves monetary cost, security, bandwidth and power consumption . These metrics are evaluated on the basis of user preferences and network conditions.
Combination algorithms: This type of algorithm involves a larger number of parameters which may make VHD difficult to evaluate. Hence, these algorithms use machine learning techniques to formulate the VHD process  . Artificial neural network is also used where a comprehensive set of input-desired output patterns are available  . A real-time learning processes may also be applied which can analyze and modify their own structure to improve the efficiency.
3.4. Performance Evaluation Metrics for VHD Algorithms
VHD algorithms can be quantitatively assessed under various usage scenarios. The following describes the commonly used metrics for evaluating VHD algorithms.
Handover time: The duration between the initiation and the completion time of the handover process is referred to as handover time. The initiation corresponds to the instant when the VHD algorithm selects the best network and successfully connects to it. The completion time refers to the time taken by the first acknowledgement packet to be received by the corresponding MT after handover. Reducing handover time is important for delay-sensitive applications.
Ratio of unnecessary handovers: Reducing the number of UHs is often preferred for constrained IoT devices, as frequent UHs will generate processing overhead and cause depletion of network resources. UHs can be defined as handovers initiated from MT’s communication link to another MT’s communication link then is initiated back to the first communication link within predefined duration of time . The ratio of UHs handovers can be defined as the number of unnecessary vertical handovers over the total number of vertical handovers occurred during a period of time.
Ratio of handover failure: A handover failure occurs when the handover request is initiated but is not successfully completed. There could be several reasons for this, e.g., insufficient resources to complete the handover to the target network or MT moves away from the coverage range of the target network before completion of handover. The ratio of handover failure is the ratio of the number of failures during handover to the total number of vertical handover occurred during a period of time.
Throughput: Throughput is defined as the rate of data transfer to the MT on a connected network. Higher throughput is desirable for VHD decision making.
4. Design and Implementation of the Proposed Approach for IoT Edge Gateway
This section discusses the conceptual design and implementation of the proposed IoT solution. We first present the system architecture and hardware components used in the proposed solution. Next, we describe the conventional RSS quality based VHD algorithm and introduce the proposed MCVHD algorithm. After that, we present data processing and transmissions through Wi-Fi, Radio and Satellite networks.
4.1. System Architecture and Configuration of IoT System
Figure 1 depicts the proposed system architecture consisting of four subsystems: Sensing, Processing, Communication and Power. The Sensing Subsystem is comprised of JY901  which has accelerometer, magnetometer and gyroscope sensors. The Processing Subsystem acts as a gateway using Raspberry Pi 3 . The Communication Subsystem contains Wi-Fi, Radio and Satellite modems for streaming data. And the Power Subsystem provides battery power to all Subsystems.
Figure 2 shows the design of the IoT system. The Sensor node streams sensor data to Raspberry Pi 3 which acts as an IoT Gateway node with a baud rate of 9600 bps. The Raspberry Pi 3 collects, filters and combines sensor data from multiple streams and then transmits data to the BS server using one of the communication techniques: Wi-Fi (embedded in Raspberry Pi), Radio, or Satellite communications. Each subsystem is further described as follows.
Figure 1. System architecture based on subsystems.
Figure 2. Design of the proposed IoT system.
Sensing Subsystem: This subsystem consists of JY901 as a sensor node which integrates high precision gyroscope, accelerometer and geomagnetic sensing capabilities. The sensing subsystem sends the data collected from different sensors to the Processing Subsystem. This type of sensor is suitable to track object movements.
Processing Subsystem: Its main tasks are to: 1) aggregate and process the data obtained from the Sensing Subsystem; 2) run the MCVHD algorithm (see Section IV); and finally 3) run the rate limiter algorithm (see Section V) and forward the processed data to the Communication Subsystem for transmissions to the BS server.
Raspberry Pi 3 is used as the IoT Gateway data processing node. The Raspberry Pi 3 microprocessor can perform complex tasks . The IoT Gateway node receives the sensor data coming from multiple sensors and stores the data in a local SQLite Database , which is a light server-less database for efficient processing.
Power Subsystem: The role of the power subsystem is to provide and distribute power to each component of system, and manage the energy in the attached radio modem, satellite modem and Gateway node (Raspberry Pi 3). An external portable Lithium ion battery has been used to support power requirements.
Communication Subsystem: The role of the Communication Subsystem is to support transmissions of sensor data to the BS. This system consists of various modes of communication, i.e., Wi-Fi, radio modem and satellite modem. The radio and the satellite modems are serially connected to the USB ports of Raspberry Pi 3 (Gateway). Figure 3 shows the proposed IoT system.
The MTs could be any vehicle, e.g., drones, ships, lorries, where the designed portable IoT system could be placed. The IoT testbed uses a Raspberry Pi 3 with
Figure 3. Communication in heterogenous network architecture.
built-in Wi-Fi, 9600 MHz radio modem, and RockBLOCK Mk2 9602 Iridium SBD modem for communications on the Wi-Fi link, radio link, satellite links, respectively. Each of the three wireless communication schemes is briefly described as follows.
1) Wi-Fi for Data Communications: Wi-Fi is a popular protocol and has a range of 30 - 50 meters and a high bit rate with bandwidth from 54 Mbps to maximum 600 Mbps . The Wi-Fi module is built into the Raspberry Pi 3.
2) Radio Modem for Data Communications: Radio modems can transfer data across a range of up to tens of kilometers. Radio modems enable user to be independent of telecommunication operators and can be either licensed or unlicensed.
For our design and investigation, XTend RF Modem  has been used; one used in the IoT subsystem and other one at the BS. The AT commands have been used to configure the modems to support additional functionalities.
3) Satellite Modem for Data Communications: The RockBLOCK Mk2  has been adopted for our testbed. It is for the Iridium satellite network. Although the satellite modem has a global coverage, compared to the XTend Radio modem, data cost is high as this device depends on the infrastructure, data plan, and subscription services for message transmissions. Another important downside for satellite communications is the high delay (up to 20 seconds to 1 minutes for a single message). Messages sent or received from the RockBLOCK Mk2 satellite modem are transmitted through the Internet, via an email address or HTTP. In our design, the RockBLOCK Mk2 satellite modem is connected to Raspberry Pi 3 .
4.2. Data Processing
The proposed IoT system is comprised of sensor nodes, energy-efficient communication networks, and the IoT Gateway that transmits data to the BS as shown in Figure 4. XTend RF modem, RockBolock Iridium SBD satellite modem, Wi-Fi, Raspberry Pi 3 and public Cloud services are used in the design for
Figure 4. Data flow processing in the proposed IoT system.
the proposed system. Dweet.io , an open source Cloud broker for prototyping an end-to-end solution, is used for visualizing IoT data on a Cloud application.
The hardware components as described so far are configured to form an IoT system. IoT system along with the software components is the base for the proposed IoT telemetry solution. The following explains data processing conducted at the Gateway, a key software component, in our design.
IoT Gateway Data Processing: The IoT Gateway, i.e., Raspberry Pi 3, has many functionalities. The first task is the transformation and normalization of the heterogeneous data coming from different sensors (data sources). The generated data sets can vary in structures and formats such as JSON, CSV, and XML. The Gateway accumulates heterogeneous nature of data coming from different types of sensors and converts them to a proper format required for the next step of data processing.
Protocol transformation is another important task of the IoT Gateway, since sensor nodes are low powered and constrained devices that cannot use the Wi-Fi or Ethernet to communicate with the IoT Gateway. Sensors use low-powered communication protocol for data transmissions. The IoT Gateway supports multi-protocol communications for accepting inbound communications, i.e., sensor data sent by sensor nodes and, outbound communications, i.e., Gateway connection to the Cloud through a remote API and using protocols, e.g., MQTT, CoAP, and REST .
4.3. Data Transmissions
1) Gateway Data Transmissions through Wi-Fi
The IoT Gateway receives a high volume of data from all sensors and performs filtering and aggregation as per pre-established rules. As Wi-Fi provides highest data rates with low cost, hence the data rate limiter algorithm (discussed in Section V) selects high volume of data to be transmitted through Wi-Fi. A Python-based program is developed to connect the IoT system with the remote BS server.
Sensor data are stored locally into SQLite database, which is a lightweight database suitable for IoT Gateway. The IoT Gateway performs SQL queries to select data from the SQlite DB installed onto Raspberry Pi 3 (Gateway) and transmits the outcome to the nearest BS server through Wi-Fi. The BS is further connected to the Cloud via the Internet. IoT Gateway publishes topic to dweet.io which is a Cloud broker. A freeboard dashboard application has been designed which subscribes to the topic published by IoT Gateway.
2) Data Transmission through XTend Radio
The selected radio modem has a communication range up to 40 miles outdoors line of sight and 3000 ft indoors. This 900-MHz radio link provides a cost-free solution for sending data to the BS with data throughput up to 115.2 kbps. The transmit power can be adjusted from 1mW to 1W as per the application requirement.
Figure 5 shows RF communications between the Gateway and the BS. The radio modem is serially connected at IoT Gateway and at BS. It is configured with source and destination address using XCTU software for data transmissions. The Python program running at IoT Gateway node transmits sensor data over the serial port. The Ubuntu server at the BS hosts an Apache webserver and makes requests to the IoT Gateway to send sensor data periodically. When a request is received by XTend RF Radio modem at the IoT Gateway, it transmits the sensor data to the BS.
3) Data Transmission through Satellite
The RockBLOCK Mk2 is an Iridium 9602 SBD satellite modem which can send and receive short messages from anywhere . The modem transmits data to the Iridium constellation which transmits to the Iridium Gateway Ground Station. RockBLOCK server receives data from the Iridium Servers and sends them to the application, e.g., web application, email, etc., as shown in Figure 6.
5. VHD Mechanism
The VHD algorithm continuously monitors the wireless interface of Raspberry Pi 3 and the serial interface of the RockBLOCK Mk2 satellite (SAT) modem. In the VHD process, various criteria are considered for selecting an available interface (Wi-Fi, Radio or SAT) based on network availability, signal strength, cost, network condition and system performance. The handover process consists of three main steps:
Figure 5. Data transmission between XTend radio modems at IoT gateway on mobile terminal and base station.
Figure 6. Working of RockBLOCK Mk2 Iridium SBD satellite modem .
• Network discovery: This step is to identify networks that are in the range of the MT. This step is usually done on the Gateway by scanning the different available interfaces of heterogeneous networks. If a network is not reachable then it is removed from the list of the active network interface for decision making.
• Network selection and handover decision: A decision is made by the MT to select the best available network to which the terminal can be connected to, which is dependent on multiple criteria (data rate, RSS, delay, cost, etc.).
• Handover: The actual process of switching the data session from one network to another network.
5.1. Handover Decision Module
This module consists of the main handover decision algorithm. Two methods for deciding the vertical handover are considered. Firstly, conventional RSS Quality based VHD method is described, which only considers RSS Quality. Secondly, the proposed MCVHD method is presented based on multi criteria for decision making.
5.1.1. Conventional RSS Quality Based VHD Method
The conventional VHD is mainly based on RSS. The procedure to calculate RSS for the radio link and the satellite link are different from that of Wi-Fi link. Therefore, separate methods are used for each of the three networks to measure the RSS Quality. For Wi-Fi and Radio networks, the RSS value in dBm is measured and then converted to RSS Quality percentage at a scale of 0% to 100%. The satellite network provides the RSS Quality value in scale of 0 to 5; hence, the value is also converted to RSS Quality percentage from (scale 0 value) 0% to (scale 5 value) 100%. This Quality conversion makes Wi-Fi, Radio and Satellite networks to be evaluated on the basis of RSS Quality percentage (0% - 100%), where 50% of RSS Quality is considered medium quality ; hence 50% is taken as the threshold limit for handover decision. The RSS values for all the active network interfaces are calculated based on algorithms presented in Algorithms 1-3.
Algorithm 1. Calculate RSSWi-Fi quality of Wi-Fi network.
Algorithm 2. Calculate RSSSat quality of satellite network.
Algorithm 3. Calculate RSSRadio quality of radio network.
Algorithm 1 depicts how to calculate the RSS Quality of the Wi-Fi network. It is based on the RSSWi-Fi value measured with the Linux command iwconfig wlan0 periodically and coverts the received RSSWi-Fi (dBm) into RSSWi-Fi Quality (%) .
Algorithm 2 is used to calculate the RSSSat Quality of the satellite link. At first, the AT + CSQ command is sent periodically through the serial port of RockBLOCK Mk2 Iridium Satellite Modem. In response of the AT command, the Quality value in the range of 0 to 5 is received. After receiving the Quality value, it is then scaled in terms of percentage (0% - 100%). Algorithm 2 is performed when the satellite interface is selected as an active interface.
The RSSRadio Quality of the 900 MHz radio link is calculated using Algorithm 3. Initially, the AT + ATRS command is sent periodically through the serial port of XTend RF Modem (radio modem) to monitor the signal strength and connectivity of 900 MHz Radio link between the mobile IoT Gateway (Transmitter radio modem) and the BS (receiver radio modem). The received RSSRadio (dBm) is then compared with fade margin to convert in terms of percentage and stored in RSSRadio Quality.
After measuring the RSS Quality of the network, Algorithm 4 is used for vertical handover decision making and to select the best network among Wi-Fi, Radio and Satellite network, based on the RSS Quality. The threshold of each network is considered to be 50% of the RSS Quality (medium quality) and the vertical handover takes place if a network reaches below the threshold. When the RSS Quality of the current network is below the threshold value of RSS Quality, the other available heterogeneous networks are scanned by the MT. Any other network having the best RSS Quality is selected by VHD and finally the network connection is handed to the chosen best available network, thus the vertical handover completes.
Algorithm 4. Conventional handover decision basic of quality of received signal strength (RSS).
5.1.2. Multi-Criteria Based VHD Method
The proposed MCVHD is used to calculate the priority ranking of the available networks based on multiple criteria, such as link quality, price, bandwidth, battery consumption, etc. During the handover decision making process, the available networks are ranked based on multi-criteria and user preference weights. The network ranked with the highest priority is selected as a target network to handover.
MCVHD falls under the domain of MADM method . Currently, this paper considers three heterogenous networks for vertical handover, i.e., Wi-Fi, Radio and Satellite networks, denoted by N1, N2 and N3, respectively. The multi-criteria considered for vertical handover are RSS Quality, data service cost, data rate, latency, reliability, network coverage range, power consumption, mobile terminal speed which are denoted by P1, P2, P3, P4, P5, P6, P7 and P8, respectively as shown in Table 1.
The multi-criteria can be concisely expressed in the form of decision matrix D, where the capabilities of each network, N1 (Wi-Fi), N2 (Radio) and N3 (Satellite) are presented with criteria (P1, P2, ..., P8). The criterion like latency (P4) depends on the routing to the destination terminal and cannot be determined prior to evaluating the network. Hence, a linguistic term, e.g., Low, Medium, or High, could be used for such criterion. An average value of latency can also be used if prior knowledge of the received latency values are available. Those terms are also used for reliability (P5).
If any network is not reachable then it is excluded from the decision matrix D. The preference on handover criteria is modelled as weights assigned by the designer on the eight criteria as shown below by the weight vector W.
Table 1. Notation for multi-criteria parameters.
This type of imprecise data expressed in W cannot be efficiently handled by any of the MADM methods, hence our proposed MCVHD mehod enhances the MADM approach by using fuzzy logic to convert each linguistic term into crisp numbers as per fuzzy number conversion scale .
Hung and Chen  have proposed different conversion scales with different numbers of linguistic terms. The same linguistic term in different conversion scales can have different crisp values. For instance, when six linguistic terms, very low, low, fairly low, fairly high, high and very high are used, the term high will be converted to the crisp number 0.75. This paper uses one of the fuzzy number conversion scale in our MCVHD algorithm to calculate the priority ranking of Wi-Fi, Radio and Satellite networks, as shown in Figure 7, where µ(x) is the degree of membership and x axis represents the fuzzy number range of very low, low, medium, high and very high.
The proposed MCVHD uses the TOPSIS  technique as the MADM method for the IoT solution. The TOPSIS technique is enhanced with the fuzzy logic that converts linguistic terms to numerical values. The TOPSIS technique is based on the principle that the chosen alternative should have the shortest distance from the ideal solution and the farthest distance from the negative-ideal solution.
5.1.3. Converting Linguistic Terms Using Fuzzy Logic
The multi-criteria for Wi-Fi, Radio and Satellite networks are converted into decision matrix D, as presented in matrix (1), as an illustration for three networks (N1 - N3) and eight criteria (P1 - P8). Decision matrix D includes linguistic terms for criteria latency (P4) and reliability (P5):
Decision matrix D as presented in matrix (1) is then converted using fuzzy number conversion scale, see Figure 7. The resulting decision matrix D’ after converting linguistic terms is presented in matrix (2) as shown below.
Figure 7. Linguistic term to fuzzy number conversion scale .
The designer or operator defined weight vector W, as presented in weight (1), for multi-criteria are also converted to numbers and normalized so that the sum is equal to 1. After conversion, the normalized weight vector W’ represented as Weight (2) for multi-criteria parameters is presented in weight (2).
After the linguistic terms are converted into numeric values, the TOPSIS technique is used to calculate the ranking of the available networks.
5.1.4. Proposed MCVHD Method Based on Enhanced TOPSIS Technique Using Fuzzy Logic
Below is the procedure for the proposed MCVHD algorithm based on enhancing TOPSIS technique using fuzzy logic:
Step 1: Construct the decision matrix using the aforementioned fuzzy logic approach. The decision matrix D, as depicted in matrix (2), is composed of different available heterogeneous networks N1, N2 and N3 by using the different priority-based criteria (P1, P2, P3, …, P8).
Step 2: A normalized decision matrix D’ is constructed to transform dimensional attributes into normalized way by Euclidean normalization. Euclidean normalization converts all attributes into dimensionless units which makes easy comparison across multi-criteria, as presented in decision matrix (3). Other normalization technique like Linear Scale Transformation is inefficient as calculated scale transformation is not proportional to outcome .
Each element of the normalized decision matrix D’ is calculated as rij. The calculation of rij is based on Equation (1):
where, rij represents each element of the normalized decision matrix. pij is the value of the i-th network and j-th criteria in the decision matrix., and n represents the number of available networks and m represents the number of criteria used for our system. Hence, each element of the normalized decision matrix D’ is calculated as below presented in Equation (2).
where, rij represents the normalized priority decision matrix. pij represents the score of option i with respect to criterion j. n = 3, represents the alternatives (Wi-Fi, Radio and Satellite). m = 8 represents the criteria (RSS Quality, price, data rate, latency, reliability, network coverage range, power consumption, mobile termi-nal velocity). Constructing Normalized matrix for our Multi Criteria based VHD using equation. The final nor-malized decision matrix D" is shown in matrix (3).
Step 3: Construct the weighted normalized decision matrix U using cross product of normalized decision matrix D" as presented in matrix (3) and weight vector W’ as presented in weight (2). Each element uij of the weighted normalized decision matrix U can be calculated by multiplying the normalized decision matrix rij with its associated weight in normalized weight vector as presented below in Equation (3):
The calculated weighted normalized decision matrix U is depicted in matrix (4).
Step 4: Determine the positive ideal solution S+ and the negative ideal solution S− by using matrix (5) and matrix (7), where J is associated with the benefit criteria and is J*associated with the cost criteria.
RSS Quality, Data Rate, Reliability and Network Coverage are benefit criteria. For calculating positive ideal solution, the benefit criteria should be chosen using maximum values and the cost criteria should be selected with the minimum value from matrix (5). The calculated value is represented by matrix (6).
Similarly, Data Service Cost (Price), Latency and Power Requirement are cost criteria. MT Speed could be benefit or cost criteria, depending on how far the MT is from the BS and how fast it is moving. To calculate negative ideal solution, the benefit criteria should be chosen using the minimum values and the cost criteria should be selected with the maximum value from matrix (7). The calculated value is represented by matrix (8).
Step 5: Measure the distance from the ideal solution. The Euclidean alternative distances, in relation to the positive and negative ideal solutions are determined by using Equation (4) and Equation (5) for each alternative.
Calculate the separation of each alternative from the ideal solution, and the negative ideal solution, using the Equation (6) and Equation (7), and the result is presented as matrix in matrix (9) and matrix (10) respectively for Wi-Fi, Radio and Satellite.
The separation from the negative ideal alternative is given by:
Step 6: Calculate the relative closeness R(i) of each alternative, which is the relative closeness from the ideal solution and is determined using Equation (8):
The resulting matrix of relative closeness to the ideal solution for Wi-Fi, Radio and Satellite networks is [0.578 0.429 0.345].
Step 7: Rank the available networks. The best network with the highest value of Ri is selected as an optimal network for handoff among available networks.
5.2. Rate of Data Transmission
This section presents an algorithm for data transmission rate based on the selected interface among the available active heterogeneous networks. Algorithm 5 is used to limit the data rate as per the selected network interface.
Algorithm 5 updates data rate limit, which is periodically invoked when any new interface is selected. This algorithm invokes other functions such as SetWi-FiDataRate(), SetRadioDataRate() and SetSatDataRate() based on the selection of Wi-Fi, Radio or Satellite network, respectively. After calculating the data rate based on the selected interface then the new data rate is updated with for that selected new interface. Rate limiter function will minimize the data cost by limiting data rate, because the cost of sending the data through the satellite is much higher compared to that of Wi-Fi or Radio link. The second advantage is that this function is executed only when a new interface is selected during handover. Hence, this will reduce memory consumption and run time and its beneficial for small IoT devices which have less processing power as well as memory.
Algorithm 5. Calculate data rate based on network interface selection.
6. Experiment Testbed
The experiments are conducted outdoor on a moving vehicle. The vehicle is equipped with the developed IoT system comprising of 2 JY901 sensors, and mobile IoT Edge Gateway with on board Wi-Fi, Radio Modem and Satellite Modem. As depicted in Figure 8, the sensors are connected serially to Raspberry Pi 3 which acts as the mobile IoT Edge Gateway.
The mobile IoT Edge Gateway runs three applications: Firstly, data processing in which it filters, and aggregates data received from sensors, and stores into the SQLite database for local visualization using the Apache2 web server. Secondly, it performs VHD between the Wi-Fi, the Radio and the Satellite networks. Thirdly, it performs data transmissions according to the data rate limiter network function. For transmitting sensor data, the mobile IoT Edge Gateway is serially connected to the Radio Modem (transmitter) and the Satellite Modem using USB to Serial connection as shown in Figure 8.
The Satellite Modem transmits data to Satellite Iridium Server via Iridium Satellite Constellation. The Satellite Iridium Server sends data to the BS server. The BS is comprised of a Wi-Fi Modem and a Radio Modem as a receiver which are connected to a Server (Ubuntu 14.04). The BS server collects data received from the Wi-Fi, Radio and Satellite Iridium Server, then it sends the data to the Cloud via the Internet. A dashboard cloud application is developed for visualization using freeboard.io .
Table 2 exhibits the parameters and their permissible value range used for our proposed MCVHD algorithm. The handover multi-criteria considered here are RSS Quality, data service cost, data rate, network latency, reliability, network coverage, power requirement, mobile terminal speed which are denoted as P1, P2, P3, P4, P5, P6, P7, and P8, respectively.
Table 2. Parameters used for MCVHD algorithm.
Figure 8. Experimental setup for IoT MT and base station with Wi-Fi, radio and satellite communications.
The user defined weights are presented in Table 3 and the linguistic terms are converted to numeric values using the fuzzy logic conversion scale. User defined weights are then converted to numerical values, as described in Section 4.1.
7. Performance Evaluation of Proposed Fuzzy Logic Based MCVHD Algorithm
7.1. RSS Quality Measure for Wi-Fi, Radio and Satellite Networks
This section presents the experimental results of the network performance in terms of RSS Quality measured for the Wi-Fi, Radio and Satellite networks. The experiments have been conducted outdoor by moving within a range of 40 meters from the BS. The reason to choose 40 meters of range is to evaluate simultaneously the RSS Quality of the Wi-Fi, Radio and Satellite networks within the network range. As per the experiments conducted, though the Radio and Satellite network coverage is available beyond 40 meters, the RSS Quality of the Wi-Fi tends to decline after 40 meters. The reason for declining RSS Quality for Wi-Fi is due to more outdoor buildings and low power antenna of the Wi-Fi Modem used for experiments. An RSS Quality value of 50% has been selected as the threshold for all the three networks. A detailed analysis of the results obtained is presented in the following subsections.
7.1.1. Wi-Fi RSS Quality Measurement
The RSS Quality of the Wi-Fi network is measured between the IoT Gateway and the router providing the access point at the BS. A command line utility, iwconfig, is used at the IoT Gateway to measure the RSS Quality of the Wi-Fi network. Figure 9 shows the measurement during a period of 2 minutes when moving away from the BS and roaming within a range of 40 meters.
As shown in Figure 9, the RSS Quality for the Wi-Fi network reveals high fluctuations. The maximum RSS Quality is observed around 95% when the vehicle is near the Wi-Fi BS, while the RSS Quality drops to around 28% when the
Table 3. User defined weights for parameters used in MCVHD algorithm.
Figure 9. RSS quality of Wi-Fi network.
vehicle moves away from the BS. The mean value of RSS Quality is observed to be around 72%, which is considered fairly good quality. It can be also observed that the RSS Quality drops several times below the threshold limit, i.e., 50% of the RSS Quality, but again receives high RSS Quality when the signals are available. This signal strength variation in the Wi-Fi network could possibly affected by many factors , including:
1) The nature of physical obstructions and/or radio interference
2) The distance between the device and other Wi-Fi endpoints
3) The strength of the device’s Wi-Fi radio transmitter/receiver
4) The type of Wi-Fi Modem and ISP support
5) The number of wireless connections present at Wi-Fi Modem.
This experiment is repeated five times and during each test the result reveals similar pattern of high fluctuations in the RSS Quality. Hence, we can conclude that the nature of the signal quality of the Wi-Fi network is more fluctuating and this can be considered for the vertical handover decision policy.
7.1.2. Radio RSS Quality Measure
The RSS Quality of the Radio network is measured between the XTend Radio Transmitter Modem at MT transmitting data at 900 MHz to the XTend Radio Receiver Modem at the BS as shown in Figure 8. “AT RS” is an AT command used at the IoT Gateway to measure the RSS Quality of the Radio network. Figure 10 shows the variation of the RSS Quality for the Radio network experienced by the IoT Gateway versus time. The observation is taken for around 2 minutes within the range of 40 meters.
The RSS Quality of the Radio network shows a less fluctuating behavior as compared to that of the Wi-Fi network (see Figure 9). The maximum RSS Quality is observed around 96% when the vehicle is close to the BS, which is similar to the case for the Wi-Fi network. It also shows that the RSS Quality drops to around 31% when the vehicle moves away from the Radio BS. The mean value of
Figure 10. RSS quality of radio network.
the RSS Quality is around 70% which is close to the average value for the Wi-Fi network.
This experiment is repeated five times and the results show similar pattern in each run. From this experiment we can conclude that the highest and the mean RSS Quality value of Radio network is similar to that of the Wi-Fi network, which makes Wi-Fi and Radio as competitive candidates when the vehicle is close to the BS.
7.1.3. Satellite RSS Quality Measure
The RSS Quality of the Satellite network is measured using the AT command “CSQ” at the IoT Gateway. The signal strength is measured between the satellite Modem (transmitter) at the IoT Gateway MT and the Iridium Satellite constellation as shown in Figure 8. The antenna on the Satellite Modem must be positioned to capture as much of the sky as possible. Since Iridium satellites are not geostationary, they pass over the site at different longitudes. During one pass the Satellite Modem antenna may have a perfect view of the satellites, whereas during another pass, it may not be as good (if there are obstructions in between). This could result in some loss of data. For best signal reception, the Satellite Modem antenna is mounted on top of the vehicle, so that it has an unobstructed view of the sky.
As depicted in Figure 11, the RSS Quality of the Satellite network is observed to be least fluctuating and mainly varies mostly between 70% to 73%. It is interesting to note that the RSS Quality dropped once below the threshold limit down to 28%. The reason for this sharp drop is that during that time the vehicle passed through a densely planted area which restricted the clear view of the sky. During such a low RSS Quality, i.e., below 40%, the Satellite Modem does not transmit data but stores the data in the buffer to be transmitted once the value is achieved more than 40%.
We can conclude that though the RSS Quality of the Satellite is often lower than that of the Wi-Fi network and Radio network, it is least fluctuating and remains close to constant for a wide network coverage.
Figure 11. RSS quality of satellite network.
7.2. Performance Evaluation of the Proposed MCVHD versus Conventional RSS Quality Based VHD
The section presents the experimental results of the proposed MCVHD algorithm and the conventional RSS Quality based VHD algorithm. The results are the average values of ten experiments conducted to evaluate the performance of both algorithms. The experiments are conducted for scenarios where the vehicle is close to the BS, i.e., highest probability of availability of all three Wi-Fi, Radio, Satellite networks, and when the vehicle is moving away from the BS.
The performance of the proposed MCVHD algorithm is evaluated on the basis of four different experiments.
1) Priority ranking of the network.
2) Ratio of UHs occurred during a period of time.
3) Ratio of Vertical Handover Failure; and
4) Vertical handover frequency between Wi-Fi, Radio and Satellite networks.
The results for each of the four experiments are presented as follows.
Priority Ranking is used to select the best option among the available heterogeneous networks using either the RSS Quality or the MCVHD algorithm. The Priority Ranking shows the descending order of the relative closeness value of each network. Hence, the network with the highest value of relative closeness is selected as an optimal network for handoff. As described earlier, the traditional RSS Quality based VHD method only considers the best RSS Quality network, whereas the proposed MCVHD method evaluates the best network based on certain network parameters and given weights, as depicted in Table 2 and Table 3.
1) Network selection ranking when MT is close to BS
This experiment is conducted by running both VHD algorithms when the vehicle is stationary and is close to the BS. Figure 12 shows the network selection priority ranking for these three networks using both algorithms. It can be
Figure 12. Network selection priority ranking when MT is close to base station.
observed that by using the conventional RSS Quality based method, the ranking of Wi-Fi is 0.885, which is the highest. But the Radio network has a very close value of 0.862. This negligible difference between the Wi-Fi and the Radio networks makes either one an ideal candidate the best network. However, such a result can contribute to more frequent vertical handovers due to fluctuating nature of Wi-Fi.
However, using the proposed MCVHD method, the ranking is Wi-Fi first, followed by the Radio and then the Satellite network. Although both the algorithms generate similar results when the vehicle is close to the BS where all the three networks are available in the best capacity, a difference can be observed between the Wi-Fi and Radio networks using MCVHD. This is because MCVHD considers multiple criteria and the RSS Quality only contributes 22% of the weightage, adopted from . RSS Quality calculated weightage, P1 is mentioned in weight matrix W(2) of the experiment. Other important criteria like data rate is always high for Wi-Fi, which distinguishes Wi-Fi from the Radio network, even though the Wi-Fi’s RSS Quality value may be lower than that of the Radio network. Also, the ranking of Satellite is always low in both methods mainly due to higher cost of data transmissions.
2) Network selection ranking when MT is moving away from the BS
This experiment is conducted by running both the conventional and the proposed algorithms when the vehicle is moving away from the BS. Figure 13 shows the network selection priority ranking for three networks using both algorithms. The priority ranking of Wi-Fi is noticeably lower than that of Radio and Satellite networks, since the range of Wi-Fi network is low for strong RSS, i.e., 30 - 50 meters. As the vehicle moves away from the BS, the Wi-Fi RSS Quality decreases significantly.
The results show that the priority ranking of Radio is higher in both algorithms, but it must be noticed that the ranking values of Radio and Satellite networks (0.678 and 0.645, respectively) are close in the conventional RSS Quality based VHD method. In such a situation, any fluctuations in the Radio network could potentially cause UHs to the Satellite network. On the other hand, the
Figure 13. Network selection priority ranking when MT is moving away from base station.
MCVHD algorithm also considers the cost of data transmissions as an important factor in addition to the RSS Quality. Even though the RSS Quality of the Radio network could fluctuate, it will still select the Radio network unless the RSS Quality drops to a very low value.
3) Network selection priority ranking when MT is very far from the BS
This experiment is conducted when the vehicle is far, at around 6 km from the BS. Figure 14 shows the network selection priority ranking for the Wi-Fi, Radio and Satellite networks. It can be observed that the ranking of the Wi-Fi network is very low as compared to the Radio and Satellite networks. The reason for the low ranking is due to unavailability or limited availability of the Wi-Fi network as the vehicle is very far from the BS.
The ranking value of the Radio network is also low as compared to that of the Satellite network, since the vehicle is moving out of the range of the Radio network which is up to 5 km. The Satellite network shows the highest priority ranking for selection, since it has a higher network range of more than 1000 km and is the only available network when the distance is far.
4) Ratio of Unnecessary Vertical Handover
This experiment has been conducted with vehicle speed of 20 km/h moving away from the BS. As shown in Figure 15, the ratio of UHs is higher in the conventional RSS Quality based VHD method in comparison to the MCVHD method, because the conventional method considers only on the highest RSS Quality.
The proposed MCVHD algorithm is designed to minimize or lower the UHs instances, even though when the speed of the vehicle increases. As illustrated in Figure 16, the results of UHs remain almost at a stable state when the speed is 60 km/h, i.e., the proposed MCVHD algorithm yields much lower ratio of UHs than that of the RSS Quality based VHD method as time goes by.
5) Ratio of Handover Failures
Figure 17 shows that MCVHD outperforms the conventional RSS Quality
Figure 14. Network selection priority ranking when MT is at ~6 km from the base station.
Figure 15. Ratio of unnecessary vertical handover when MT speed is 20 km/h.
Figure 16. Ratio of unnecessary vertical handover when MT speed is 60 km/h.
Figure 17. Ratio of vertical handover failure when MT speed is 20 km/h.
based VHD algorithm by reducing or minimizing the failure in the handover process.
The ratio of Vertical Handover Failure in the conventional RSS Quality based VHD increases from 0.2 (20%) to 3.8 (38%) whereas the proposed MCVHD shows lowered failure ratio between 0.08 (8%) to 1.6 (16%). Depending solely on the RSS Quality and the fluctuating nature of the Wi-Fi network are the main reasons for the poor performance of the conventional RSS Quality based VHD. As the RSS Quality of Wi-Fi drops, the conventional RSS Quality based VHD algorithm initiates the process of Vertical Handover to next best network with higher RSS Quality. Even before the Vertical Handover process completes, the Wi-Fi network may receive again a higher RSS Quality, which results in Vertical Handover Failure.
Similar experiments have also been conducted with at speed of 60 km/h. As shown in Figure 18, the proposed MCVHD algorithm yields lower ratio of handover failure as compared to that of the RSS Quality based VHD method.
6) Handover Time
The duration between initiation and completion time of the handover process is referred to as handover time. The initiation corresponds to the instant when the VHD algorithm selects the highest ranked network option and successfully connects to it. The completion time refers to the time taken by the first acknowledgement packet to be received by the IoT Gateway after handover.
a) Handover Time Between Wi-Fi and Radio
The handover time is measured at the IoT Gateway on MT and an average of 20 diﬀerent runs is computed for the results, as depicted in Table 4. The handover time values are calculated between the Wi-Fi and Radio network transitions. Figure 19 shows the instantaneous values of the handover time as a function of the considered transitions.
Figure 19 exhibits that the Wi-Fi and Radio networks have very different behaviors. In particular, the handover from Wi-Fi to the Radio network shows an
Figure 18. Ratio of vertical handover failure when MT speed is 60 km/h.
Figure 19. Handover time between Wi-Fi and radio.
Table 4. Results of handover time between Wi-Fi and radio.
almost constant handover time, around its average of 3.89 s (see Table 4). On the other hand, the transition from the Radio network to Wi-Fi network shows lower performance with a higher average value of 4.76 s and a larger standard deviation.
It can be also noticed that the minimum handover time from Radio to Wi-Fi is very small (~1.8 sec). It is because usually MT logs out from a given network once the VHD application selects the other network for handover to save energy. But sometimes the logout fails, and the remote authentication server saves the authentication state for a certain timeout before automatic logout.
b) Handover Time Between Radio and Satellite
Similar experiment has been conducted on MT to measure the handover time between the Radio and the Satellite networks. This experiment is repeated 20 runs and the result is shown in Figure 20 and statistical information of the experiment in terms of standard deviation and confidence intervals are presented in Table 5.
The handover from Radio to Satellite shows a very high handover time in the range of 26 sec to 64 sec, as shown in Figure 20. The higher handover time accounts for activating the Satellite modem to send data and latency to receive acknowledgement back of the first data packet sent. The average time for handover to the Satellite network is recorded as 38.33 sec with standard deviation of 10.325, as presented in Table 5.
8. Conclusions and Future Research
This paper proposed a lightweight containerized solution for efficient vertical handover in mobile IoT using MCVHD. In addition, to deal with imprecise data, such as latency and reliability, the paper enhanced TOPSIS by adopting the fuzzy logic-based approach for multi-criteria VHD in IoT system.
We built a testbed for the IoT system using various real hardware devices and efficient software techniques like microservices and containers together with Edge/Cloud computing. Efficient solutions are critical to IoT systems where resources often are limited. A number of experiments were conducted with the testbed to evaluate the performance of the proposed MCVHD algorithm in comparison with the conventional approach. The experimental results showed
Figure 20. Handover time between radio and satellite.
Table 5. Results of handover time between radio and satellite.
that the proposed MCVHD algorithm outperformed the conventional RSS Quality based VHD in terms of reduced number of handovers, handover failures and handover delay. This paper also presented a mechanism to manage data flow at the IoT Gateway to limit the data rate according to the network chosen for transmissions.
The proposed MCVHD algorithm takes eight criteria into consideration. As a future work it can be extended for more criteria, e.g., packet loss, jitter, etc. This paper can also be extended by adding more communication links like cellular network capability and low-power wide area network (LPWAN); both have a wide coverage and thus can minimize the handover to costlier network like Satellite.
Other sophisticated or more complex handover schemes proposed in the literature, e.g.,     , could be evaluated and compared against our proposed approach using the testbed in the future, especially for those scenarios where the processing power is not a mainly concern.
This project is partially funded by Natural Sciences and Engineering Research Council of Canada (NSERC) and Ontario Centres of Excellence (OCE).
List of Abbreviations
BS: Base Station
HHO: Horizontal Handoff
IoT: Internet of Things
LPWAN: Low-Power Wide Area Network
MADM: Multi-Attributed Decision Making
MCVHD: Multi-Criteria Based VHD
MTs: Mobile Terminals
POA: Point of Attachment
QoS: Quality of Service
RSS: Received Signal Strength
SINR: Signal to Interference plus Noise Ratio
TOPSIS: Technique for Order Preference by Similarity to Ideal Solution
UAV: Unmanned Aerial Vehicle
UHs: Unnecessary Handovers
VHD: Vertical Handover Decision
WLAN: Wireless LAN
WPM: Weighted Product Model
 Zhang, D., Yang, L.T., Chen, M., Zhao, S., Guo, M. and Zhang, Y. (2016) Real-Time Locating Systems Using Active RFID for Internet of Things. IEEE Systems Journal, 10, 1226-1235.
 Gaur, A.S., Budakoti, J., Lung, C.-H. and Redmond, A. (2017) IoT-Equipped UAV Communications with Seamless Vertical Handover. Proceedings of IEEE Conference on Dependable and Secure Computing, 2017, 459-465.
 Gaur, A.S., Budakoti, J. and Lung, C.-H. (2018) Design and Performance Evaluation of Containerized Microservices on Edge Gateway in Mobile IoT. Proceedings of IEEE International Conference on iThings, 2018, 138-145.
 Morabito, R., Farris, I., Iera, A. and Taleb, T. (2017) Evaluating Performance of Containerized IoT Services for Clustered Devices at the Network Edge. IEEE Internet Things Journal, 4, 1019-1030.
 Zhang, Q., Yang, L.T., Chen, Z., Li, P. and Bu, F. (2019) An Adaptive Dropout Deep Computation Model for Industrial IoT Big Data Learning with Crowdsourcing to Cloud Computing. IEEE Transactions on Industrial Informatics, 15, 2330-2337.
 Zahran, A.H. and Liang, B. (2005) Performance Evaluation Framework for Vertical Handoff Algorithms in Heterogeneous Networks. Proceedings of IEEE International Conference on Communications, 1, 173-178.
 Stevens-Navarro, E. and Wong, V.W.S. (2006) Comparison between Vertical Handoff Decision Algorithms for Heterogeneous Wireless Networks. Proceedings of the 63rd Vehicular Technology Conference, 2006, 947-951.
 Yussuf, A.A., Hassan W.H. and Issa, S. (2012) A Review of VHD Approaches in Next Generation Wireless Networks. Proceedings of the 2nd International Conference on Digital Information and Communication Technology and Its Applications, 2012, 363-367.
 Ren, G., Zhao, J. and Qu, H. (2016) A User Mobility Pattern Based Vertical Handoff Decision Algorithm in Cellular-WLAN Integrated Networks. Proceedings of the 2nd IEEE International Conference on Computer and Communications, 2016, 1550- 1554.
 Tamijetchelvy, R. and Sivaradje, G. (2013) An Optimal Vertical Handover for Heterogeneous Networks Based on IEEE 802.21 MIH Standards. Proceedings of the 5th International Conference on Advanced Computing, 2013, 446-451.
 Agrawal, A., Jeyakumar, A. and Pareek, N. (2016) Comparison between Vertical Handoff Algorithms for Heterogeneous Wireless Networks. Proceedings of the International Conference on Communication and Signal Processing, 2016, 1370-1373.
 Baroudi, U. and Al-Nasser, F. (2011) Performance Evaluation Study on a Multiple-Parameter Handoff Algorithm. Proceedings of the International Conference on Information Networking, 2011, 273-277.
 Bathich, A.A., Baba, M.D. and Rahman, R.A. (2011) SINR Based Media Independent Handover in WiMAX and WLAN Networks. Proceedings of IEEE Conference on Computer Applications and Industrial Electronics, 2011, 331-334.
 He, Q. (2010) A Novel Vertical Handoff Decision Algorithm in Heterogeneous Wireless Networks. Proceedings of the IEEE International Conference on Wireless Communications, Networking and Information Security, 2010, 566-570.
 Tahir, H.M., Al-Ghushami, A.H. and Ridzuan Yahya, Z. (2014) Selection of Access Network Using Cost Function Method in Heterogeneous Wireless Network. Proceedings of the International Conference on Multimedia Computing and Systems, 2014, 789-793.
 Hung, C.-C. and Chen, L.-H. (2009) A Fuzzy TOPSIS Decision Making Model with Entropy Weight under Intuitionistic Fuzzy Environment. Proceedings of the International Multi Conference of Engineers and Computer Scientists, 2009, 1-4.
 Lahby, M., Cherkaoui, L. and Adib, A. (2013) An Enhanced-TOPSIS Based Network Selection Technique for Next Generation Wireless Networks. Proceedings of the 20th International Conference on Telecommunications, 2013, 1-5.
 Mouad, M. and Cherkaoui, L. (2017) A Comparison between Fuzzy TOPSIS and Fuzzy GRA for the Vertical Handover Decision Making. Proceedings of Intelligent Systems and Computer Vision Conference, 2017, 1-6.
 Semenova, A. and Semenov, O. (2017) The Neuro-Fuzzy Controller for Handover Operation in Mobile Networks. Proceedings of the 1st IEEE Ukraine Conference on Electrical and Computer Engineering, 2017, 806-812.
 Abid, M., Yahiya, T.A. and Pujolle, G. (2012) A Utility-Based Handover Decision Scheme for Heterogeneous Wireless Networks. Proceedings of IEEE Consumer Communications and Networking Conference, 2012, 650-654.
 Qiu, X., Jian, M., Wei, F. and Li, Y. (2013) A New Decision-Making Method based on a Typical Utility Function. Proceedings of International Conference on Machine Learning and Cybernetics, 2013, 1807-1811.
 Mohanty, S. and Akyildiz, I.F. (2006) A Cross-Layer (Layer 2 + 3) Handoff Management Protocol for Next-Generation Wireless Systems. IEEE Transactions Mobile Computing, 5, 1347-1360.
 Coqueiro, R., Jailton, T., Carvalho, J. and Francês, T. (2019) A Fuzzy Logic System for Vertical Handover and Maximizing Battery Lifetime in Heterogeneous Wireless Multimedia Networks, Hindawi Wireless. Commun. Mobile Computing, 2019, 1-13.
 Driouache, S., Naja, N. and Jamali, A. (2020) Fuzzy Logic Based Intelligent Vertical Handover Decision in Heterogeneous Networks. Artificial Intelligence and Industrial Applications, Lecture Notes in Networks and Systems, 144, 99-109.
 Duong, T.M. and Kwon, S. (2020) Vertical Handover Analysis for Randomly Deployed Small Cells in Heterogeneous Networks. IEEE Transactions on Wireless Com- munications, 19, 2282-2292.
 Nguyen, L. and Kwon, S. (2020) Enhanced ABSF Algorithm with a Relay Function in LTE Heterogeneous Networks. Electronics, 9, 1343.
 Kaur, R. and Mittal, S. (2020) SINR and Fuzzy Approach Based Enhanced Handoff Decision Making Algorithm. Proceedings of the International Conference on Innovative Computing & Communications, 2020, 1-6.
 Yan, X., Sekercioglu, Y.A. and Narayanan, S. (2010) A Survey of Vertical Handover Decision Algorithms in Fourth Generation Heterogeneous Wireless Networks. Computer Networks, 54, 1848-1863.
 Zahran, A., Liang, B. and Saleh, A. (2006) Signal Threshold Adaptation for Vertical Handoff in Heterogeneous Wireless Networks. Mobile Networks and Applications, 11, 625-640.
 Tawil, R., Pujolle, G. and Salazar, O. (2008) A Vertical Handoff Decision Scheme in Heterogeneous Wireless Yystems. Proceedings of IEEE International Vehicular Tech- nology Conference, 2008, 2626-2630.
 Hou, J. and O’Brien, D.C. (2006) Vertical Handover Decision-Making Algorithm Using Fuzzy Logic for the Integrated Radio-and-OW System. IEEE Transactions on Wireless Communincations, 5, 176-185.
 Liao, H., Tie, L. and Du, Z. (2006) A Vertical Handover Decision Algorithm Based on Fuzzy Control Theory. Proceedings of the 1st International Multi Symposiums on Computer and Computational Sciences, 2006, 309-313.
 Tutorial: Prototyping a Sensor Node and IoT Gateway with Arduino and Raspberry Pi—Part 1.
 Chakraborty, S. and Yeh, C.H. (2009) A Simulation Comparison of Normalization Procedures for TOPSIS. Proceedings of International Conference on Computers and Industrial Engineering, 2009, 1815-1820.
 Folea, S., Bordencea, D., Marcu, C. and Valean, H. (2013) Indoor Localization Based on Wi-Fi Parameters Influence. Proceedings of the 36th International Conference on Telecommunications and Signal Processing, 2013, 190-194.