Mobile Proxy-based Middlewares for Continuous Service Provisioning

Wireless Internet service provisioning calls for dynamically personalizing service fruition to suit the specific (often limited) characteristics of wireless clients. For instance, dynamic content negotiation and tailoring, e.g., animation dropping or frame resolution/color-depth downscaling, are crucial for multi-modal Web pages including resource-consuming continuous multimedia services. Moreover, provision-time device mobility requires additional support operations that are too expensive to be performed by severely limited terminals, e.g., location-dependent resource retrieval and rebinding. For instance, after cell handover, the possible requalification of client bindings to resources and service components, depending on the new wireless access locality, may consume non-negligible client resources to explore the provisioning environment and to negotiate with locally available resources.

We claim the need for distributed and active infrastructures of mobile middleware proxies working in the fixed network on behalf of portable devices to mediate their personalized access to wireless Internet services. In particular, in continuous services, mobile proxies should negotiate the proper stream quality level depending on terminal characteristics and user preferences, should choose the most suitable streaming server also depending on client location, and should monitor, control, and possibly downscale the quality of the received stream in the case of wireless network congestion. In the wireless Internet all these management operations should be performed over the fixed network at the wired-wireless network edges where resource discontinuities are sharper and more frequent. In addition, when clients roam at provision time, their associated proxies should be able to follow them by migrating to the newly visited wireless localities, to maintain colocation with their served access terminals.

According to the above guidelines, we have designed and implemented a SOMA-based middleware for continuous services over the wireless Internet. Our middleware provides any wireless device with one SOMA-based companion entity, called shadow proxy, which runs in a wired node (place) in the same wireless locality that currently provides connectivity to the device. Wired/wireless hosts in a locality can be grouped into logical domains, as depicted in Figure 1; domains are disjointed, even if they include wireless APs with partially overlapping coverage areas.

In this context, handover prediction is crucial to avoid service interruptions when providing audio/video streaming to client devices that roam during service provisioning. Handover prediction permits to perform the needed service management operations in advance with regards to the actual communication-level client handover.


Figure 1. Portable devices roaming among SOMA wireless access localities.

In particular, on the one hand, it enables the anticipated migration of mobile proxies to the next domain of attachment of their associated clients; on the other hand, it makes possible to pre-fetch client-side buffers with streaming data before client handover, i.e., only when strictly needed to have stream chunks to play until the communication/middleware-level handover phase is completed. A detailed description of the implementation of both SOMA middleware components for continuous services and our prediction-based solution for anticipated proxy migration is out of the scope of the paper, and can be found elsewhere. In the following, we specifically focus on how to exploit handover prediction to optimize the utilization of client-side pre-fetching buffers for streaming data.

To better understand the need for handover prediction, let us consider an actual deployment case and rapidly overview the service management operations that the SOMA-based middleware performs in response to a client change of locality. Let us suppose a user roams from DomainA to DomainB in Figure 1 while she is receiving her personalized multimedia flow. Depending on the handover strategy of the underlying communication layer, the user device is transparently deassociated from the origin wireless cell and associated to the destination one when either it completely loses the origin signal or it is still in the overlapping coverage area between the two cells. In any case, before the communication-level handover completes, our middleware should migrate the shadow proxy to the destination domain, and there the proxy should instantiate/configure the needed local middleware components and should reconnect to the server (or to an equivalent local replica of it), before being capable of serving its client again. Also in presence of a correctly anticipated proxy migration, the above operations can produce a temporary streaming suspension if not integrated with a pre-fetched streaming buffer of suitable size at the client side. Our solution for predictive RSSI-based management of client-side buffers has the two-fold goal of minimizing the buffer size requirements and of performing buffer pre-fetch operations only when strictly needed, i.e., before an actual client handover.