MADAMA: QoS Adaptation Support (2)

Mobile Agent-based Distributed Architecture for Multimedia Applications

Figure 4 shows the infrastructure for tunneling, corouting and multicast in MADAMA.

Consider the case of a video stream addressed to one target only. The path between the source and the target is automatically determined at run-time, by tracing the route via one dummy packet sent from source to target (it can be also predetermined by the VoD source according to some previously collected routing information). QoSNs move to the selected hosts on the path and interrogate the AC database: if the resources available are not enough for the desired QoS, QoSNs can coordinate and reduce their requests by scaling the stream (at the moment, by dropping frames in Motion JPEG streams or by reducing resolution in MPEG-2 ones). Only if these also diminished reservation requests cannot be satisfied, the VoD service is denied.
After a successful negotiation phase, the multimedia stream starts to flow. During the video distribution, a link can fail or its quality can deteriorate, thus making impossible to a particular QoSN to maintain the negotiated quality. In that case, the interested QoSN can enhance the throughput of its link via stream striping on non-corouted paths. In this case, it sends back a message to temporarily stop the stream, and sends forward a message to suspend updates in AC tables on the path. Then, it sends its clones to handle new non-corouted paths and starts the negotiation phase with the clones. When negotiation completes, the QoSN sends back a message that restarts the stream: apart from a delay in receiving the stream, the VoD target goes on transparently.

In the case of multicast distribution of the same video stream (for N targets), the generated network traffic can be limited by exploiting location awareness of agents. While in traditional VoD systems the source generates N packet streams, one for each target, with the consequent overload, our approach can take advantage of locality. Our QoSNs can ascertain whether there are several targets within the same domain locality, and split packets only when it is necessary, in general only at the last hop. This is commanded by the QoSN at the gateway of the last domain.


Figure 4. Tunneling, Corouting and Multicast in MADAMA

(click here for a larger view of the picture)

The MADAMA VoD service requires the presence of the previously described infrastructure composed by distributed and coordinated agents. Therefore, before the multimedia stream can start to flow, users have to wait for the completion of a setup phase in which the service provider determines the path between the source and the target, and distributes all ACs and QoSNs needed on participating nodes. After the setup phase has negotiated the service levels, the stream can flow from source to target. During service provision, the flow can also be dynamically adapted, to adjust the required QoS level at runtime with a best-effort approach, or to dynamically organize corouted paths, with a further distribution of agents on new nodes.

The full code (java source included) of the MADAMA system has been written in collaboration with external partners and cannot be distributed freely. However, contact us, specifying your name and your affiliation, and we will try to provide you a copy only for non-commercial use.

 
Page updated on
In case of problems, or if you find any bug, please contact us.