Practical Multi-Interface Network Access for Mobile Devices
Schmidtke, Jakub Krzysztof
MetadataShow full item record
Despite the growing number of mobile devices equipped with multiple networking interfaces, they are not using multiple available networks in parallel. The simple network selection techniques only allow for single network to be used at a time and switching between different networks interrupts all existing connections. This work presents system that improves network connectivity in presence of multiple network adapters, not only through better network handovers, smarter network selection and failure detection, but also through increased bandwidth offered to the device over aggregated channels. The biggest challenge such a system has to face is the heterogeneity of networks in mobile environment. Different wireless technologies, and even different networks of the same type offer inconsistent link parameters like available bandwidth, latency or packet loss. The wireless nature of these networks also means, that most of the parameters fluctuate in unpredictable way. Given the intended practicality of designed system, all that complexity has to be hidden from both client-side applications and from the remote servers. These factors combined make the task of designing and implementing an efficient solution difficult. The system incorporates client-side software, as well as network proxy that assists in splitting data traffic, tunnelling it over a number of available network interfaces, and reassembling it on the remote side. These operations are transparent to both applications running on the client, as well as any network servers those applications communicate with. This property allows the system to meet one of the most important requirements, which is the practicality of the solution, and being able to deploy it in real life scenarios, using network protocols available today and on existing devices. This work also studies the most critical cost associated with increased data processing and parallel interface usage - the increase in energy usage, which needs to remain within reasonable values for this kind of solution being usable on mobile devices with limited battery life. The properties of designed and deployed system are evaluated using multiple experiments in different scenarios. Collected results confirm that our approach can provide applications with increased bandwidth when multiple networks are available. We also discover that even though per-second energy usage increases when multiple interfaces are used in parallel, the use of multi-interface connectivity can actually reduce the total energy cost associated with performing specific tasks - effectively saving energy.