Middleware
The middleware developed under this project supports the goals of demonstrating applications with self-scaling and self-optimizing behaviors that support the end-to-end performance experience of the learner. The middleware builds upon work done under a prior project (the Next Generation Internet), by specifically extending the InformationChannels framework and the network monitoring WeatherStations. On top of these systems we have implemented a mechanism for correlating application performance experience to measured network metrics and using this correlated data to provide performance advice to applications. We have fully integrated this system for the Remote Stereo Viewer (RSV) application and partially integrated it into several other applications.
The middleware provides mechanisms for logging performance from two sources. First, the WeatherStations installations and software provide the ability to periodically run network tests to measure key metrics. Second, applications log their actual performance experience as they operate. Both sources are placed into a common SQL database. These sources of data are then correlated to provide information on an application's performance experience when certain network conditions prevail. Applications can use this information to both adapt their behavior and provide learners with an expectation of performance as compared to previous experience.
A registration server (possibly multiple instances for redundancy) listens to the multicast address and maintains a list of all active channels. The registration server responds to queries about currently active channels. Application components can use this capability to discover the availability of remote services. A web based query page also allows users to discover the existence of channels.


