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.