An Adaptive QoS Control Telecommunications Platform Based on Cooperation of Layered Multi-Agents




Introduction

Various distributed multimedia applications have grown through advances in terminal computers and high-speed networks. It is important for distributed multimedia applications to assure end-to-end QoS of media streams, considering both networks and terminals. Thus, various QoS architectures to assure end-to-end QoS have been proposed.1

At present, various kinds of networks and various kinds of terminals exist. Moreover, network QoS fluctuates in IP networks and wireless networks, and terminal QoS may vary according to the initiations of other applications on the terminal. Thus, multimedia applications need to adjust their QoS dynamically according to the kinds of systems and fluctuations of system states. The multimedia applications also need to adjust their QoS dynamically according to changes in user QoS requirements. However, equipment consisting of individual applications with such adaptive QoS control functions makes the multimedia applications considerably more complicated.

In consideration of the above reason, we have proposed an adaptive QoS control telecommunications platform as a common basis of various distributed multimedia applications.2,3 In this platform, adaptive QoS control is achieved using the direct and indirect cooperation of layered multi-agents. The proposed QoS control platform can at the same time flexibly adapt to user QoS requirements, different kinds of systems, and large variations in system states, and quickly adapt to small fluctuations of system states.


1. Framework of Adaptive QoS Control Telecommunications Platform

Figure 1 shows a model of a multimedia telecommunications system that considers QoS control. Several media streams from a sender application on a sender terminal are multicast to several receiver applications on receiver terminals through telecommunications networks. Several receiver applications and a sender application may run concurrently on a terminal. The configuration of telecommunications group members may change dynamically.

As shown in Figure 1, a different QoS can be defined at each level of the multimedia telecommunications system. User QoS corresponds to a user's QoS requirements. Each multimedia application is served with the application QoS of its media streams. For video streams, the application QoS can be defined as frame rate, frame size, quantization factor, and in some cases, latency and jitter. A telecommunications network provides media streams with network QoS. The network QoS can be defined as throughput, delay and its fluctuation, bit error rate and packet loss rate, and so on. Terminal QoS Iis the differentiation of the application QoS and the network QoS. Terminal resource QoS corresponds to CPU utilization, allocated memory size, and so on. Of course, terminal QoS includes the period and length of threads when media processing such as media decoding is executed on a periodical thread. Network resource QoS can be defined as the allocated bandwidth on each link, allocated buffer size at each node, and so on.

Media processing includes media encoding and decoding, media synchronization, etc. Flow control includes flow filtering, timing control of media processing, and so on. The flow control function in the receiver terminal protects media streams from shortages of the terminal resource QoS and from degradations in network QoS. This function avoids the loss of media information by appropriately controlling the media information by appropriately controlling the media information flow and by slightly degrading the application QoS. Network resources can also be efficiently utilized by adding a flow filtering function to the telecommunication networks.

Figure 2 shows the framework of an adaptive QoS control telecommunications platform based on the direct and indirect cooperation of layered multi-agents. Figure 2 also shows four kinds of agents, which have a mapping function between different levels of QoS as shown in Figure 3.4,5 Personal Agent (PA) supports users, and one of its functions is to map between the user QoS and the application QoS. PA executes this QoS mapping considering the user's character and preferences. As a result, PA generates the application's utility function that indicates the relationship between the application QoS and the corresponding user's utility. One Application Agent (AA) is created for each multimedia application. Many Network Agents (NAs) are distributed in the telecommunications network. Each NA locally manages network resources and executes QoS mapping from the network QoS to the network resource QoS.

In the proposed platform, adaptive QoS control is realized by utilizing two layers of a multi-agent system. The upper layer of the multi-agent system is composed of several AAs and many NAs. These agents are also called deliberative agents, and perform QoS negotiations by directly exchanging messages. By using the QoS negotiations in the upper layer of the multi-agent system, the platform can flexibly adapt to various kinds of systems, large variations in system states, and changes in user QoS requirements.

On the other hand, the lower layer of the multi-agent system is composed of Stream Agents (Sas). Sas are also called reactive agents and act autonomously. Each SA detects the fluctuation of system states by using the QoS monitor, and adjusts the application QoS through the flow control function. The Sas realize such QoS adaptation by cooperating indirectly through a common memory. The platform can quickly adapt to a small fluctuation of system states by utilizing the QoS adaptation in the lower layer of the multi-agent system.

The QoS adaptation is performed to adjust the application QoS within a predetermined range given by the PA in advance. The application QoS Iis adjusted with the best effort within this range. The QoS adaptation policy, such as the stream priority and QoS parameter priority, is also given by the PA in advance. When the fluctuation of system states is relatively large and the application QoS needs to be adjusted beyond the predetermined range, the SAs request QoS re-negotiation with the AAs.

2. QoS Negotiations


There are three kinds of QoS negotiations. The terminal resource QoS is allocated to receiver application, where corresponding receiver AAs participate. The terminal resource QoS on the sender side and on the receiver sides is adjusted through inter-terminal QoS negotiation, where corresponding sender AA and receiver AAs participage. The network QoS is determined through QoS negotiation between AAs and NAs. Inter-AA-NA QoS negotiation is performed based on the network QoS because the AAs cannot manage the widespread network resources and only the network QoS can be monitored in the terminal.

The above QoS negotiations are performed using utility functions for agents that participate in the QoS negotiations. For example, the application's utility functions given by the PA are utilized in the intra-terminal QoS negotiation. In the inter-terminal QoS negotiation, the terminal's utility functions are utilized. Here, the terminal's utility can be defined as the sum of the receiver application's utilities on that terminal. The inter-AA-NA QoS negotiation is performed using the network's utility defined by the network's revenue as an example.6

Flexible QoS negotiations can be realized by quantifying the request intensity of negotiation agents using the utility function and by selecting an appropriate criterion of negotiated QoS. Moreover, the number of exchanged messages in the QoS negotiation can be reduced by adopting an efficient negotiation protocol. Figure 4 shows an example of inter-terminal QoS negotiation where a receiver AA requests an upgrade of application QoS to a sender AA.


3. QoS Adaptation

Each SA performs QoS adaptation autonomously according to the fluctuation of monitored terminal resource QoS and monitored network QoS. When each SA detects the fluctuation, it refers to a threshold value stored in the common memory and compares that value with its stream priority. From the result of the comparison, it decides whether to adjust the application QoS or not. After it adjusts the application QoS, it updates the threshold value. Each SA repeats such actions during every monitoring period.

The mechanism described above can be used to achieve the QoS adjustment in several monitoring periods. Moreover, the QoS adjustment reflecting the user's QoS adaptation policy becomes possible with the indirect cooperation of SAs using the threshold value. The QoS adaptation speed can be increased according to a larger update size for the threshold value, even though the user's QoS adaptation policy may not be assured.


4. Conclusion

We have proposed an adaptive QoS control telecommunications platform as a common basis of various distributed multimedia applications. In this platform, adaptive QoS control is achieved by the direct and indirect cooperation of layered multi-agents. The proposed QoS control platform can flexibly adapt to users' QoS requirements, different kinds of systems, and large variations of system states through QoS negotiation it the upper layer of the multi-agent system, and can simultaneously and quickly adapt to small fluctuations of system states through QoS adaptation in the lower layer of the multi-agent system.


Reference