Application- and Network-Cognizant
Proxies
Project Homepage
Project Summary:
Current networks show increasing heterogeneity both in
terms of their bandwidths/delays and the applications they are required
to support. This is a trend that is likely to intensify in the future,
as real-time services, such as video, become more widely available and
networking access over wireless links becomes more widespread. For
this reason we propose that application-specific proxies, intermediate
network nodes that broker the interactions between server and client, will
become an increasingly important network element. These proxies will allow
adaptation to changes in network characteristics without requiring a direct
intervention of either server or client. Moreover, it will be possible
to locate these proxies strategically at those points where a mismatch
occurs between subdomains (for example, a proxy could be placed so as to
act as a bridge between a reliable network domain and an unreliable one.)
This design philosophy favors scalability in the sense that the basic network
infrastructure can remain unchanged while new functionality can be added
to proxies, as required by the applications. While proxies can perform
numerous "generic'' functions, such as caching or security, we concentrate
here on media-specific, and in particular video-specific, tasks. Our goal
is to demonstrate that application- and network-specific knowledge at a
proxy can improve overall performance especially under changing network
conditions. We consider four major scenarios, each concentrating
on specific mismatches between the network functions available at either
side of the proxy (i.e. in its connection with server and client, respectively).
These deal with mismatches in service provisioning capabilities, in bandwidth,
in reliability and in application level features. We then outline a series
of tools that will be useful in improving performance under these mismatches.
These include networking tools such as models to extract relevant information
from the observed environment at a proxy, or service selection strategies
that will allow mapping of the streams into different classes of service.
From the perspective of the source we will establish another set of tools,
including transcoding, rate control algorithms, caching and error protection
techniques based on multiple description coding, that will enable an application-cognizant
proxy to perform some of the tasks required under mismatch situations.
Principal Investigators:
Graduate Students: