IC2 - The Instant Communication Cloud

The goal of the IC2 project is to design a middleware that eases application development by automatically adapting and optimizing complex communication structures according to network conditions. A video conferencing application, e.g., can specify an abstract communication model, which conveys information about the communication structure and application specific constraints, like delay and bandwidth requirements. Our middleware adapts this model to current network conditions by inserting infrastructure nodes, like proxys e.g., to avoid or reduce load on bottleneck locations in the topology. The nodes that need to be acquired can by supplied by network providers as well as participating endusers. Authorization of deployment is enabled by a transitive trust-delegation model.

Current Subprojects

Direction-aware Embedding (DAE)

An increasing number of networked applications, like video conference and video-on-demand, benefit from knowledge about Internet path measures like available bandwidth. Server selection and placement of infrastructure nodes based on accurate information about network conditions help to improve the quality-of-service of these systems. Acquiring this knowledge usually requires fully-meshed ad-hoc measurements. These, however, introduce a large overhead and a possible delay in communication establishment. Thus, prediction-based approaches like Sequoia have been proposed, which treat path properties as a semimetric and embed them onto trees, leveraging labelling schemes to predict distances between hosts not measured before. In this paper, we identify asymmetry as a cause of serious distortion in these systems causing inaccurate prediction. We study the impact of asymmetric network conditions on the accuracy of existing tree-embedding approaches, and present \emph{direction-aware embedding}, a novel scheme that separates upstream from downstream properties of hosts and significantly improves the prediction accuracy for highly asymmetric datasets. This is achieved by embedding nodes for each direction separately and constraining the distance calculation to inversely labelled nodes. We evaluate the effectiveness and trade-offs of our approach using synthetic as well as real-world datasets.