Exploiting Multihoming Capabilities in 5G-Enabled IoT Nodes

5G communications allow the integration of different wireless technologies to exploit the added value of multihoming scenarios. Furthermore, in connection with the Internet of Things (IoT), multi-homed nodes are very interesting, since it allows one to address new challenges and adapt the usage of communication technologies to new requirements imposed by the location of each deployment, the available energy resources on each node, and the IoT application itself. There are available commercial wireless nodes that embed and handle multiple interfaces. Terms such as seamless and transparent communications as well as technology integration fit well within the 5G standards. However, in practice, these wireless nodes are basically relayed in one of these wireless technologies when connected, and in the case of using other interfaces, their usage is not coordinated. In this context, we propose and implement a novel and efficient heterogeneous interface selection algorithm for multihoming and integrative communications using commercial products by performing local decisions on a per-packet basis, analysing different issues and approaches from a practical point of view, both hardware and software. We compare our proposal with other alternatives, highlighting the opportunities by exploiting these multihoming features in 5G-enabled IoT nodes.


I. INTRODUCTION
5G performance targets high data rate, reduced latency, energy savings, cost reduction, higher system capacity, and massive device connectivity [1].These 5G communications allow the integration of different wireless technologies with the goal of supporting massive machine-type services, enhanced mobile broadband for multimedia distribution, and ultra-reliable low latency for emergency cases.
The associate editor coordinating the review of this manuscript and approving it for publication was Hosam El-Ocla .
5G is highly integrative, as one of its priorities is to provide a deep level of integration between cellular and short-range communications, tying any new 5G air interface and spectrum to provide universal high-rate coverage, seamless and transparent communications across radio access technologies.Thus, short-and long-range technologies would complement each other by using virtualization technologies and softwarization of the network and radio functions.
With regard to the Internet of Things (IoT), these multi-technology features provided by 5G technologies can add extremely new and interesting opportunities, since we can address new challenges and adapt to new requirements imposed by the location of each deployment, the available energy resources on each node as well as the IoT application itself.Notice that the proliferation of wireless sensor networks requires a vast number of wireless nodes, where costs are a key factor, constraining drastically in general the performance of these deployed nodes, in terms of computation and communications capabilities.This limitation opens the doors to solutions based on fog and edge computing for smart distribution of computing load using 5G Mobile/ Multi-access Edge Computing (MEC) architecture [2] to mitigate and overcome these issues.An overview of these challenges and enabling technologies for IoT within a 5G context are shown in [3], where it is discussed physically, MAC (medium access control), and network layers of wireless IoT networks, which all have significant impacts on latency and reliability.
In this context, several commercial products are embedding multiple wireless interfaces under the 5G paradigm within the same device.Anexample is the so-called FiPy module [4], [5] by Pycom Ltd, 1 that includes onboard technologies such as Low-Power Wide-Area Network (LPWAN) with LoRa/Sigfox,2 short-range communications with WiFi and Bluetooth, classified as Low-power Wireless Personal Area Networks (LoWPAN) and cellular communications-based technologies, such as Long Term Evolution (LTE) for machines (LTE-M) and Narrow Band IoT (NB-IoT).In Figure 1, above it is shown this module with LTE-M communication and below, our own prototype for air quality IoT monitoring node.
Although these wireless technologies are rather different, under an abstraction layer these technologies could cooperate and work together, building scenarios known as heterogeneous networks.Nevertheless, in practice in most cases, as shown in the state-of-the-art section, these wireless nodes only use one of these wireless technologies at a time, and in the case of using other interfaces, their use is not coordinated.
In this paper, we focus on heterogeneous networks and multihomed 5G-enabled IoT nodes to exploit these features by using commercial products (in particular the FiPy module) in real scenarios, by analyzing different issues from a practical point of view, both hardware and software.For the interface selection, we propose and implement a novel algorithm by performing local decisions on a per-packet basis.We will compare our proposal with other alternatives, highlighting the opportunities by exploiting the multi-homing features.
The rest of the paper is structured as follows.Section II introduces the related work, highlighting the opportunities of our proposal.Section III describes the main features of commercial nodes with support for 5G communications on IoT missions, exploring the potential for multi-homing applications and their requirements.In Section IV, we propose an optimization algorithm to handle these requirements.In Section V, we present the experimental evaluation and discuss the results.Finally, in Section VI, we conclude the paper and show the future work.

II. RELATED WORK
In the context of heterogeneous networks within the 5G paradigm, we can find interesting contributions.In [6], it is proposed in a theoretical way a self-optimizing technique based on vertical handover (among different wireless technologies) for load balancing in heterogeneous wireless networks (2G/3G/4G/5G/Wi-Fi) where User Equipment's (UE) collect several Quality of Service (QoS) metrics and send them to the core (big-data repository) for further processing.These metrics are extended by the network provider's information under the perspective of a global environment as a global heterogeneous mobile network.The authors formalize the problem of access network selection to improve the quality of mobile services through the efficient use of heterogeneous wireless network resources and optimal horizontal-vertical handover procedures, proposing a method for adaptive selection of wireless access based on big-data analysis over the centralized information gathered and shared.With their proposal, it is achieved a 16% increase in performance of the heterogeneous network using the statistical network resource reservation method, compared to homogeneous networks.In [7], the authors formulate the problem of distributed Radio Access Technologies (RAT) selection by considering multiple traffic classes over different heterogeneous technologies for serving the different applications running at the UEs, by applying a set of policies for ordering the preferences and the resource allocation of the network.Their framework is evaluated by simulation for a variety of traffic classes in terms of QoS requirements and provides results on capacity utilization and load distribution over available RATs.
With regard to seamless and transparent communications, we have found as well interesting initiatives.In [8], small cells are used to improve the performance in 5G networks.They increase the number of cell changes, handovers, and losses.Using distributed mobility-aware solutions in this scenario, as an alternative to a centralized mobility solution, scales better and is more efficient in terms of routing.However, there is a limitation in performance.Their results show 30% reduction in signaling, 53% in packet loss, and 90% reduced load on the core compared to the existing Locator and Identity Split Protocol (LISP) mobile node protocol.Other approaches based on device-to-device cooperation are shown in [9], [10], and [11].In particular, in [9] it is shown, in a theoretical way, how a heterogeneous cellular network can provide traffic offloading that can be exploited to effectively improve network capacity by utilizing complementary network communication techniques (device-to-device) with a focus on massive connections for machine-type communications, determining network access, in order to improve overall network capacity and mitigate traffic congestion.In [10], in the same line, it is proposed theoretically an optimized caching strategy to share content distribution on top of device-to-device technology, based on information-centric networking principles in order to improve also network efficiency.In [11], we can find other alternatives to improve network performance in 5G, using overlay networks combined with device-to-device cooperation.In this case, it is proposed a smart base stationassisted partial-flow device-to-device offloading system that provides seamless video streaming services to clients by effectively offloading parts of the video traffic.
In [12], a novel paradigm for wireless network access is proposed in a 5G wireless Dynamic Network Architecture (5G-DNA), where certain classes of smart devices act as an Access Point (AP) temporarily, while connected to the Internet on 5G wireless DNA.Since these AP's are not stable, users need a seamless, efficient, and reliable schedule for switching between available AP's.The authors propose two different switching policies (taking into account preemptive issues) to improve network performance, concluding that in the low mobility scenarios, preemptive switching is preferred because it has acceptable signaling overhead and provides higher capacity, and brings higher profit for AP's.In the high mobility scenarios, non-preemptive switching is a better option because it incurs fewer switching and higher profit for AP's.
Also, we can find different applications where communications in this context are a key point and where the simultaneous use of different interfaces is extremely important.In [13], a use case for an ambulance service with medical video streaming to the hospital based on 5G small cell-based is shown.Using small cell networks, it can enhance the medical QoS.Besides, it studied the impact of small-cell heterogeneous networks on medical video streaming along with the system modeling and technical requirements, including the performance analysis for medical video sequences affected by packet losses.The results of the proposed scenario show through a simulation that in a mobile small cell-based ambulance scenario, outperforms the traditional macrocell network scenario.In [14], this critical application is better shown with a real deployment and a specific network slicing for this video streaming priorization.
About commercial 5G-enabled IoT platforms, in [15], using the mentioned FiPy module, it proposed a comparison between WiFi and LoRa technologies taking into account the constraints of each technology.The comparison done in a factory, includes transmission time, energy consumption, and coverage, highlighting that LoRa has better coverage but less Throughput.In a similar way, in [16] it was tested the same module for IoT monitoring using both LoRa and Sigfox technologies, but independently, achieving distances of 1.17 and 10 km respectively.It is worth mentioning other similar and interesting commercial products based on ESP32 system-on-chip [17] that could be used under certain 5G paradigms, such as LILYGO TTGO T-SIM7000G Module ESP32 [18], but their characteristics, functionality, and design do not fit in the same way as the FiPy module does.
The concept of multihoming is also linked to routing protocols.From this approach, different authors have proposed routing protocols for multi-homing nodes in an IoT context.In [19], the authors propose the Ant Colony Optimization On-demand Multi-path Distance Vector (ACO-MDV) routing algorithm to enhance power efficiency, considering multi-homing options on IoT.In [20], it is shown an energy-aware heuristic routing and resource allocation for a multi-hop network via smart edge device-to-device communications.
In terms of transport layer protocols, traditional Transmission Control Protocol (TCP) and User Datagram Protocol (UDP) as well as Stream Control Transmission Protocol (SCTP) are still used in this context.In particular, SCTP manages several logic interfaces with the goal to use all of them to improve fault tolerance.Extensions to these established transport protocols are receiving considerable attention from Internet Engineering Task Force (IETF).In [21] two main extensions for concurrent transmissions, the Multipath TCP (MP-TCP) extension for TCP and the Concurrent Multipath Transfer extension for SCTP (CMT-SCTP) are analyzed and compared.The authors highlight that the different path management strategies of both protocols have a significant impact on their performance in real scenarios.MP-TCP creates a full mesh of paths among the available interfaces that perform significantly better than CMT-SCTP, which only uses an alternative path for robustness.Nevertheless, the MP-TCP strategy suffers from scalability problems due to the full mesh among the multiple interfaces.Other solutions based on overlay networks, tunneling techniques, and Software Defined Networks (SDN) are also relevant.In [22], it is analyzed the switching time (handoff time) among heterogeneous interfaces (Ethernet, WiFi, Bluetooth) using an Open Virtual Switch (OvS) managed by an RYU SDN controller on a Raspberry Pi.In conclusion, the authors show that the handoff time varies greatly depending on the interface type and the switching direction.But notice that the switching decision is done manually for the experiments and benchmarking, not decided based on other external or internal requirements, such as application, battery status, etc.
Finally, in [23] are depicted the open challenges and a survey of the potentials of 5G technologies in terms of multihoming options considering QoS and Quality of Experience (QoE) issues.Besides, in [24], is done a review of the related work taking into account the utilization of 5G technologies in IoT applications, considering the limitations due to network optimization and interferences.In this line, in [25], it is proposed a multihomed network model for coexistence and diverse IoT applications in smart cities from a theoretical point of view.Also in [26], the use of machine learning techniques has been applied for traffic steering in scenarios with heterogeneous ultra dense 5G networks.
In summary, we see from this review that on one hand there are many theoretical approaches that can help us to analyze and to define different strategies, most of them based on offloading techniques based on device-to-device communications and using vertical handovers.However, although these scenarios are interesting for certain 5G applications, they do not fit well with our approach from a practical point of view.On the other hand, we have seen practical implementations using different wireless technologies on heterogeneous networks, but without a global vision of cooperation.Thus, based on this, we see that there is a need to coordinate and manage the different wireless technologies in the context of heterogeneous networks, focusing on 5G-enabled IoT nodes, in particular, based on Fipy modules.In this case, some constraints are internal to the nodes, given by the Fipy module itself and its implementation, the available energy resources on each node and other constraints are external to the nodes, given by the wireless technologies and the location of each deployment and of course by the IoT application.All these issues are discussed and explained in the following sections.Notice that at the end, in Section V, we have introduced Table 4, where we compare our proposal with the references from the related work with higher similarity, analyzing the pros and cons of each, along with some comments.

III. A COMMERCIAL 5G-ENABLED IOT NODE
One of the most relevant low-cost commercial platforms for the 5G paradigm is the FiPy module.The design of this module consists of an integration of different elements on a board with the goal to build a generic 5G-enabled IoT node with a set of heterogeneous wireless interfaces.This module is based on the Tensilica LX6 CPU Xtensa®dual-core 32-bit LX6 microprocessor(s) (the same as the ESP32 system-on-chip [17]), that allows up to 600 Dhrystone Million Instructions per Second (DMIPS), with an extra ultra-low power coprocessor that can monitor General Purpose Input/Outputs (GPIO), the ADC channels and controls most of the internal peripherals during deepsleep mode, consuming only 25uA.The module is equipped with 520KB and 4MB RAM and 8MB flash memory.
Table 1 summarizes the main features of the different interfaces and technologies embedded in the FiPy module, highlighting consumption, coverage, and bit rate.Among these technologies, we must stress that Sigfox, LoRa and Bluetooth technologies work in Layers 1 and 2 and the other ones in Layer 3 of the Open System Interconnection (OSI) model.For Layer 1 and 2 technologies, we should add externally a gateway to include Layer 3 connectivity through a gateway, in the same way as LoRa and LoRaWAN specification do [27].

B. SOFTWARE ISSUES
In our case, the main program is running the IoT application, reading from sensors and writing to actuators, as it is shown in Figure 2. When it is necessary to send or receive information, the module will run locally a decision algorithm, explained in the next section, to choose at the time of transmission the most appropriate wireless interface.
The FiPy module by default runs a MicroPython interpreter (multi-threading enabled).MicroPython is a programming language designed specifically for constrained environments such as microcontrollers and embedded systems.It is a subset of the Python 3 programming language that has been heavily optimized for these specific platforms.MicroPython does not support some of the advanced features found in Python 3 such as meta-classes (at least yet) and dynamic typing.Additionally, the libraries and functions available in MicroPython are limited due to the constrained environment and the need for minimal memory and processor utilization.
Thus, the access to the wireless interfaces must take into account a set of rules and policies given by each wireless technology and others imposed by the FiPy module itself.Notice that FiPy modules have some limitations given by the quality of the built-in modems, as we will show in Section V.
We conclude that based on these constraints, the FiPy module fits well in a scenario with heterogeneous networks.However, for the IoT application, it is challenging to optimize the communication process.The IoT application will send and receive packets and when this is done, the wireless technology should be selected according to local criteria.This decision should be based on the location of each deployment, the available energy resources on each node as well as the IoT application itself.With regard to the transport protocols to manage the communication process, we discard heavy and standardized multihoming and multipath transport protocols, such as MP-TCP and CMT-SCTP, since they exceed the resources on these modules.In addition, for simplicity and to provide verifiable results, our approach to the communication process is based on the analysis of independent packets.

IV. PROPOSED MULTIHOMING OPTIMIZATION ALGORITHM
In this section, we propose the multihoming optimization algorithm and its implementation to select the appropriate wireless interface, according to a set of policies and preferences given at the transmission time, on a per-packet basis as discussed before.It must be stressed that the proposed algorithm can be easily generalized and adapted to any other similar multihoming node.

A. ALGORITHM DESIGN
Figure 3 shows the flow chart of the proposed algorithm.This algorithm is running on each FiPy module, and it selects locally the best technology (or interface) by weighting different metrics and parameters as it is explained next, according heuristically to the performance benchmarking of this module.As depicted in this figure, the selection is based on the calculation of the different impacts, by analyzing the status of the node, the user preferences, and the network parameters per technology.
Thus, this selection is performed using an optimization logic by processing parameters, values, and their relation (by given equations), defined in Tables 2 and 3.In particular, Table 2 defines the different parameters, metrics, and impacts, given by the communication requirements and the IoT application's needs.In this table, we distinguish three types of metrics: a) measured metrics, directly measured from the module, such as measured throughput, consumption in miliwatts per byte sent (mW/B), and price or monetary costs, b) user-defined metrics, that can be set as predefined user influences or imposed by the standards (for instance, in case of LoRa and Sigfox) for the selection criteria, determined by priority, time limit and impacts given by throughput, data limit, consumption, battery and price and c) automatically detected metrics, that depend on the hardware, such as the technology availability, battery levels, data to send or the required time for the transmission.
In Table 3, we define the proposed and underlying equations that determine the selection of the communication technology.To carry out the comparison, we normalize these values among the technologies, such as throughput, data limit, consumption, and price, denoted as NTp x , NDl x , NCo x and NPr x .Additionally, users can influence the result through personal preferences by defining the impact of each parameter defined, setting influence indexes 134944 VOLUME 11, 2023 Authorized licensed use limited to the terms of the applicable license agreement with IEEE.Restrictions apply.from 0 (no impact) to 1 (full impact) and are calculated automatically based on measures, user preferences and status of different parameters.The data limit and remaining data expressions are related to the measured throughput (Tp x ) and the time limit (Tl x ).As a consequence, data limit impact is related to the data limit influence (I dl ) and the normalized data limit (NDl x ).Notice that these expressions will allow us to fulfill the LoRa and Sigfox standards.In relation to energy consumption, the consumption impact is proportional to the inverse normalized consumption (INCo x ) and the consumption influence (I Co ), together with the battery level impact (IBl x ) that depends on normalized consumption (NCo x ), the battery level (Bl) and the battery influence (I bl ).The price impact is related to the inverse normalized price (INPr x ) and the price influence (I Pr ).Finally, the impact of the time limit (ITl x ) is a binary function that considers eight times the data to send (D s ) as a threshold for the remaining data (Rd x ).
Then, given these parameters, the algorithm calculates a Final Score (Fs) for each technology (x) as follows: Thus, from these scores, the selected interface to transmit the packet is given by the one with the highest Fs x .

B. ALGORITHM IMPLEMENTATION
The implementation of the algorithm in the FiPy module is as follows.The file structure of the MicroPython application is led by the main and the boot files.Initially, the boot file disables all the interfaces, in order to avoid energy consumption.Then, in the same folder where these two files are located, we add a file containing a class with the implementation of the selection algorithm, as described before.Thus, we call this class from the main file every time we want to send a packet through the selected interface.Besides, the parameters in Tables 2 and 3 are automatically updated internally to the module every time a packet is sent, except Ax that it should be updated periodically (in our case, every day), as a kind of self-auto calibration, to check if there are changes in availability for the onboard wireless technologies.

V. EVALUATION AND RESULTS
As was explained in the previous section, the selection algorithm relies on the evaluation and estimation of the parameters and metrics depicted in Tables 2 and 3 for each technology.Due to the limitations of the FiPy module in each of its interfaces, a prior benchmarking and profiling process is necessary to adjust the selection algorithm.For example,  it is not the same case if it is transmitted from one module to another directly than to an access point, as the performance depends on the hardware used in each case, affecting the throughput and the transmission distance.Besides, to ensure reliable performance measurements in the communication process, for these tests in particular, Fresnel zones were taken into account according to the carrier frequency used in each technology, the line of sight, and avoiding external interference zones.Thus, tripods over 4 m high were used when the distance did not exceed 300 m, as in the case of WiFi and Bluetooth, and for longer distances, a drone was used instead.Figure 4 shows the testbed for LoRa technology using this drone (as a client) and the server.
The tests carried out to estimate the parameters shown in Table 2, were as follows.For throughput analysis two FiPy modules were used, one as a server and the other as a client, and the transmission was done at different distances, using different packet sizes to determine the optimal for each distance.
For consumption analysis, both voltage and current were monitored all the time.The nodes were programmed to   deactivate all interfaces and only activate the one to be tested.Initially, to measure the base consumption the nodes were inactive (idle) for a few seconds, and after that, started transmitting a total of 10MB in the case of WiFi and 1MB otherwise, to measure the transmission consumption.Notice that since the heterogeneous interfaces in the same module have different nominal throughputs, and because we are also measuring power consumption, we have analysed each interface under a similar time window, that is the reason we use different data sizes.With these results, it was possible to determine the base consumption of the FiPy module, the consumption when the interface is active, and when the data is being transmitted.Figures 5-8 show the consumption for the interfaces tested at these three different steps: base (idle), active, and transmitting.With these results, we are able to calculate and estimate the consumption per byte, by taking as a reference the consumption while sending data, subtracting   the base consumption, and dividing by the total number of bytes sent.
Finally, the results of this technology benchmarking and profiling process are shown in Figures 11-14.In this case, the Throughput vs. Received Signal Strength Indicator (RSSI) is shown for each technology.We must stress that due to the limitations of the modems embedded in the FiPy module, the throughput seems to be unaffected by RSSI (it does not depend on the distance) and only slightly when the connection is going to be lost.Thus, according to this, RSSI is not relevant to this algorithm for these modules.It may seem that in the case of LTE-M the RSSI affects the throughput but in fact, measurements taken below −75dBm are very unstable and have continuous connection losses and are therefore not taken into account.Figure 9 shows an example of these calculations and trade-off analysis based on Equation 1 to select the best interface.In this case, the parameters have been introduced as an example to simulate that the WiFi and Bluetooth interfaces were not available and only LoRa and LTE-M were available.In this example, LoRa was better in terms of price and had the same throughput score.However, LTE-M was better in consumption and data limit, and it was finally the interface selected by the algorithm.But, if we increase the price of LTE-M, the result changes to LoRa, as well as if we make available WiFi and Bluetooth, then the algorithm would choose WiFi.Another example can be seen in Figure 10, but reducing the influence of the data limit, where in this case, we can see that the algorithm selects LoRa as the interface to send data.
As a conclusion of these exhaustive tests, it is clear that the WiFi interface outperforms the others in all terms analysed (throughput, consumption, price and time limits).Thus, if this interface is available, the algorithm always selects WiFi as the transmission interface, but this may change at other nodes, with the availability of new transmission technologies, or if the user sets the WiFi Priority very low.
In Table 4, we compare our proposal with the state-of-theart.In particular, we analysed and showed similar alternatives considered in Section II, the pros and cons of each, along with some relevant comments.As we can see, most of them are theoretical, except two ( [15] and [16]), that have a practical approach using the same FiPy module, although considering each wireless technology independently and not concurrently.

VI. CONCLUSION
In this work, we have focused on transparent and integrative communications in a 5G and IoT context.We have shown an implementation of a multi-homed 5G-enabled IoT node, based on a novel and efficient heterogeneous interface selection algorithm running in a commercial multi-homed product, the Fipy module, by performing local decisions on a per-packet basis at the transmission or reception time.The selection criteria depend on the location of the node and available technologies, the available energy resources as well as the IoT application itself.
On the one hand, with regard to the advantages of our proposal, we see the benefits of managing simultaneously several heterogeneous wireless interfaces, in terms of resilience and fault tolerance, efficient communication management, flexibility to adapt new scenarios in a proactive way, as well as to adapt easily to new application requirements.However, on the other hand, we add additional burden and processing, which is translated into an extra delay of 2 ms.Although this extra delay is very small and should have a nearly negligible impact on most IoT applications, it could have some impact on the performance in high-speed and real-time applications.But we must stress that these applications are not the most common in the context of IoT.
Also from our results and performance evaluation, we realize that there are some limitations on the Fipy module due to a combination of the hardware selection (mainly the ESP32 MCU selection) and the firmware implementation (we have used the latest published version: 1.20.2 release 6 of this firmware3 ).
As future work, we are currently working on a new design and enhanced version of this module to overcome these limitations, taking into account important factors such as energy and costs.Besides, we are porting the algorithm to other IoT devices and boards, such as Raspberry Pi or Nvidia Jetson.In addition, we are currently working on a new board that implements the same communication technologies as FiPy but without so many hardware and software limitations and we plan to test the algorithm on it and carry out specific tests to include parameters such as RSSI or packet size in order to improve the algorithm.Also, in order to increase the alternatives and communications paths, we will consider the option to forward packets using the cooperation of neighbouring nodes in a kind of fog collaboration process.

FIGURE 1 .
FIGURE 1. Above: a Pycom FiPy module.Below: an example of a 5G-enabled IoT node for air quality monitoring based on this module.

A
. HARDWARE ISSUES The FiPy module includes different wireless communication technologies, such as WiFi, Bluetooth, LoRa, Sigfox and dual LTE-M (CAT M1) and NB-IoT on one single tiny board.The main features of these onboard technologies are detailed next.Sigfox (as a class 0 device) and LORA (both class A and C device types) use 800/900 MHz band ISM.WiFi (IEEE 802.11b/g/n 16 Mbps) and Bluetooth (low energy and classic) use 2.4 GHZ band ISM.LTE-M/NB-IoT, based on 3GPP release 13 LTE Advanced Pro, supports narrow-band LTE UE categories M1/NB1 use 17 radio frequency bands supported from 699 MHz to 2170 MHz.In LTE-M/NB-IoT the transmission current is 420 mA peak at 1.5 W and a reception current of 330 mA peak at 1.2 W.

FIGURE 2 .
FIGURE 2. Scheme of a multi-homed IoT node based on the FiPy module with sensors and actuators.

FIGURE 3 .
FIGURE 3. Flow chart of the proposed multihoming optimization algorithm to select the best wireless interface.

FIGURE 4 .
FIGURE 4. Example of pictures for the technology benchmarking and profiling process of the FiPy module for LoRa, using a drone as support: a) client node and b) server node.

FIGURE 5 .
FIGURE 5. WiFi Consumption while transmitting a total of 10MB.

FIGURE 6 .
FIGURE 6. Bluetooth Consumption while transmitting a total of 1MB.

FIGURE 7 .
FIGURE 7. LoRa Consumption while transmitting a total of 1MB.

FIGURE 8 .
FIGURE 8. LTE-M Consumption while transmitting a total of 1MB.

FIGURE 9 .
FIGURE 9. Example of interface selection using the proposed algorithm on the FiPy module.

FIGURE 10 .
FIGURE 10.Another example of interface selection changing data limit influence.

TABLE 4 .
Comparison of the multi-homing proposal with the state-of-the-art alternatives with pros and cons.
RAFAEL FAYOS-JORDAN received the B.S. degree in telematics engineering from the University of Valencia, in 2018, where he is currently pursuing the Ph.D. degree.He is also a Researcher with the School of Computing Engineering and Physical Sciences, University of the West of Scotland.His research interests include the IoT platforms and node management, cloud computing, and network management.

TABLE 1 .
Comparison of the different wireless technologies embedded in a FiPy module.

TABLE 2 .
Parameters defined per technology x = [wifi , bt , lora, lte, nb] used in the proposed algorithm.

TABLE 3 .
Set of equations used by the proposed Algorithm per technology x = [wifi , bt , lora, lte, nb].