Skip to Main Content
Recent years have witnessed growing interest in using mobile devices to host services. The move from service consumer to service provider has been enabled by advances in mobile device hardware. Many contemporary devices also come equipped with multihoming, which allows a device to connect to heterogeneous networks, such as GPRS, WiFi and Bluetooth. To help leverage these new capabilities, we have developed middleware infrastructure that allows clients to consume services hosted on mobile devices. In this paper, we describe key functions of the middleware, namely ensuring reachability of roaming services and managing device connectivity in the presence of multihoming. Novel contributions of our work include session-preserving connectivity, proactive and reactive switching between network interfaces, and independence of network technologies and communication protocols. Proactive switching allows a device to initiate a switch from one network interface to another. Reactive switching responds to the loss of connectivity on one interface by changing to another. In both cases the logical connection, including any state, is preserved. Furthermore, logical connectivity is preserved when switching between heterogeneous networks and protocols. Our current implementation includes support for Bluetooth and HTTP/WiFi connectivity. Preliminary performance evaluation reveals that the middleware imposes little and acceptable overhead at run-time.