a multi-agent system for managing the quality of service in telecommunications networks

30
ISSN 1004-3756/05/1402/129 JOURNAL OF SYSTEMS SCIENCE AND SYSTEMS ENGINEERING CN11- 2983/N ©JSSSE 2005 Vol. 14, No. 2, pp129-158, June 30, 2005 A MULTI-AGENT SYSTEM FOR MANAGING THE QUALITY OF SERVICE IN TELECOMMUNICATIONS NETWORKS Pasquale DE MEO 1 Antonio IERA 1 Giorgio TERRACINA 2 Domenico URSINO 1 1 Università ''Mediterranea'' di Reggio Calabria Via Graziella, Località Feo di Vito, 89060 Reggio Calabria, Italy 2 Dipartimento di Matematica, Università della Calabria Via Pietro Bucci, 87036 Rende (CS), Italy [email protected], [email protected], [email protected], [email protected] Abstract In this paper we propose X-MAQoS, a novel XML-based multi-agent system for the QoS management in telecommunications networks. This system is characterized by the following features: (i) it handles a user profile and exploits it jointly with suitable network resource management techniques to maximize user satisfaction; (ii) it is capable of operating in a large variety of telecommunications networks; (iii) it is semi-automatic; (iv) it exploits XML for guaranteeing a light, versatile and standard mechanism for information representation, storing and exchange. In this paper the basic features of the system are discussed in details. Furthermore, the main results of a performance evaluation study in UMTS environment, aiming at comparing X-MAQoS with alternative agent-based approaches for handling user access to telecommunications networks, are reported. Keywords: Intelligent agents, XML, QoS management in telecommunications Networks 1. Introduction In this paper we propose X-MAQoS, a novel XML-based multi-agent system for the QoS management in telecommunications networks. The motivations underlying our system and its general characteristics are illustrated in this section. Specifically, the motivations are presented in Section 1.1, whereas the general characteristics are described in Section 1.2. 1.1 Motivations The last few years are witnessing a fast evolution of the telecommunications systems towards the full deployment of platforms for Universal Personal Communications. The idea of telecommunications systems specifically tailored for supporting a given set of services by means of particular technological solutions and ad-hoc protocols is dramatically falling into decline. The recent advances in the com- munications technology and the strict integration of Computers and Telecommunications worlds are fuelling the proliferation of “hybrid''

Upload: wwwunical

Post on 21-Nov-2023

0 views

Category:

Documents


0 download

TRANSCRIPT

ISSN 1004-3756/05/1402/129 JOURNAL OF SYSTEMS SCIENCE AND SYSTEMS ENGINEERING CN11- 2983/N ©JSSSE 2005 Vol. 14, No. 2, pp129-158, June 30, 2005

A MULTI-AGENT SYSTEM FOR MANAGING THE QUALITY

OF SERVICE IN TELECOMMUNICATIONS NETWORKS

Pasquale DE MEO1 Antonio IERA1

Giorgio TERRACINA2 Domenico URSINO1

1Università ''Mediterranea'' di Reggio Calabria Via Graziella, Località Feo di Vito, 89060 Reggio Calabria, Italy

2Dipartimento di Matematica, Università della Calabria Via Pietro Bucci, 87036 Rende (CS), Italy

[email protected], [email protected], [email protected], [email protected]

Abstract

In this paper we propose X-MAQoS, a novel XML-based multi-agent system for the QoS management in telecommunications networks. This system is characterized by the following features: (i) it handles a user profile and exploits it jointly with suitable network resource management techniques to maximize user satisfaction; (ii) it is capable of operating in a large variety of telecommunications networks; (iii) it is semi-automatic; (iv) it exploits XML for guaranteeing a light, versatile and standard mechanism for information representation, storing and exchange. In this paper the basic features of the system are discussed in details. Furthermore, the main results of a performance evaluation study in UMTS environment, aiming at comparing X-MAQoS with alternative agent-based approaches for handling user access to telecommunications networks, are reported.

Keywords: Intelligent agents, XML, QoS management in telecommunications Networks

1. Introduction In this paper we propose X-MAQoS, a novel

XML-based multi-agent system for the QoS management in telecommunications networks. The motivations underlying our system and its general characteristics are illustrated in this section. Specifically, the motivations are presented in Section 1.1, whereas the general characteristics are described in Section 1.2. 1.1 Motivations

The last few years are witnessing a fast

evolution of the telecommunications systems towards the full deployment of platforms for Universal Personal Communications. The idea of telecommunications systems specifically tailored for supporting a given set of services by means of particular technological solutions and ad-hoc protocols is dramatically falling into decline. The recent advances in the com- munications technology and the strict integration of Computers and Telecommunications worlds are fuelling the proliferation of “hybrid''

A Multi-Agent System for Managing the Quality of Service in Telecommunications Networks

130 JOURNAL OF SYSTEMS SCIENCE AND SYSTEMS ENGINEERING / Vol. 14, No. 2, June, 2005

communications network solutions characterized by heterogeneous wired, wireless and mobile segments. In such a kind of platform the main objective is to allow subscribers to access new conception wide-band multimedia services at a controlled QoS level, whatever the equipment being used (fixed terminal or mobile handset) and the environment in which it is located (indoor or outdoor). “Global connectivity” and “mobile data service provisioning” represent two features that 3G systems are going to deliver to the users. This trend will come to a complete availability within the envisaged beyond-3G and 4G platforms. These aim at implementing the idea of a Virtual Home Environment (VHE) in which the user will handle several multimedia traffic flows, without any service interruption, while roaming across different segments, by choosing always the “best”, currently available, access technology (ad-hoc, personal, wired and wireless LAN, cellular, and satellite technologies) (Marques et al., 2003) even in “hostile conditions” (e.g., users traveling on board fast transportation means operating in locations where the development and the exploitation of wired network backbones is difficult and/or expensive).

On the user application side, the widespread diffusion of services characterized by a strong multimedia connotation creates new scenarios and opportunities in Artificial Intelligence, Information Systems, and Telecommunications; however, it also amplifies some, already existing, problems. In the heterogeneous environment foreseen for 4G platforms, system and application functionalities need to be dynamically adapted to the constantly changing

context (Houssos et al., 2003). In other words, in future multimedia scenarios in which the access points of the customers vary from one session to another and where even the network conditions might change during the same communication session, a basic feature is the presence of mechanisms, technologies and protocols for the differentiation, management and continuous provision of the Quality of Service (hereafter QoS) for different traffic categories.

In the cited “hybrid” communication networks characterized by quick and sudden fluctuations of the transmission parameters, adaptive and dynamic protocols for handling QoS appear to be mandatory. We say that a QoS management policy is dynamic and adaptive if mechanisms exist capable of reacting to variations of the environment parameters (dynamicity) and re-distributing the available resources in order to adapt the offered service to the network constraint modifications (adaptivity).

A further feature to highlight is the assumption, we start from in our study, that, eventually, what matters in a service provision is the QoS perceived by the end user (Prasad et al. 2001), and this is what is often referred to in the literature as Perceptive QoS (P-QoS). Approaching the QoS management problem by introducing application-level control schemes to account for the QoS perceived by the user is not new in the literature and its interest is rising fast.

1.2 General Characteristics of the Approach

Our approach takes into account the

DE MEO, IERA, TERRACINA, and URSINO

JOURNAL OF SYSTEMS SCIENCE AND SYSTEMS ENGINEERING / Vol. 14, No. 2, June, 2005 131

reasoning presented in the previous section and aims at managing the Quality of Service in a telecommunications network at both the application and the network layers. In order to carry out such a task, it tries to guarantee that some high-level specific parameters, “measuring” the satisfaction degree of a user, are always kept at values ranging within an interval that he specifies. Therefore, it operates at the application layer. However, it operates also at the network layer because it specifies a mapping between the high-level parameters and the classical “objective QoS parameters'” typical of this last layer.

A dynamic, adaptive, and user-oriented QoS management activity can be effectively handled by means of Intelligent Agent technologies. Presently, the term “Intelligent Agent” has a very generic meaning; it is exploited to indicate both intelligent interfaces adapting themselves to the behavior of the associated user and complex software entities which cooperate to perform complex tasks (Reicken, 1994). For its intrinsic characteristics, the agent technology is well suited to be applied in various research fields in telecommunications.

To our aims, an agent-based system for dynamically and adaptively managing QoS in heterogeneous networks should be characterized by the following features:

It should be provided with a functionality for handling user profiles. These should be quite rich and detailed, should record user preferences and past behavior, and,

above all, should play a key role in the management of allocations, de-allocations and reservations of the network resources. It should be generic, i.e., capable of

operating in a large variety of telecommunications environments as well as in platforms made up of several heterogeneous segments. Since the number of users and the

dynamic nature presently characterizing the telecom- munications networks are particularly high, it should operate automatically as much as possible. However, the user should be provided with the possibility of modifying its decisions and/or negotiating them. It should be provided with an

efficient mechanism for managing the information exchange, especial- ly when it has a multi-agent nature. In particular, a standard and light formalism should be adopted for this purpose in such a way that, even if agents reside on heterogene- ous platforms, their communication can be easily guaranteed. It should be provided with

mechanisms for managing greedy connections, i.e., connections that monopolize the network bandwidth. It should be provided with

mechanisms for managing security.

A Multi-Agent System for Managing the Quality of Service in Telecommunications Networks

132 JOURNAL OF SYSTEMS SCIENCE AND SYSTEMS ENGINEERING / Vol. 14, No. 2, June, 2005

Figure 1 Architecture of X-MAQoS

In the literature, several agent-based systems have been proposed for managing QoS in specific typologies of telecommunications networks. All of them are interesting attempts to exploit agents for supporting a user accessing

telecommunications networks. However, to the best of our knowledge, no proposed approach contemporarily presents the six features mentioned above.

In this paper we introduce X-MAQoS

DE MEO, IERA, TERRACINA, and URSINO

JOURNAL OF SYSTEMS SCIENCE AND SYSTEMS ENGINEERING / Vol. 14, No. 2, June, 2005 133

(XML-based Multi-Agent System for QoS Management), a system having all the six key features we have mentioned above. The most important feature for X-MAQoS is undoubtedly its “user-orientation” nature; indeed, its behavior is strongly guided by the user profiles. As a matter of fact, X-MAQoS dynamically translates the user preferences into the underlying network parameters, in order to properly define the best QoS degree the end-user can be provided with. As it will emerge in the remaining part of the paper, this latter objective is achieved by performing, for every change in the resource availability of the underlying system, an automatic re-distribution of the available resources among the different traffic components of a multimedia application. This latter process is driven by the information collected from the user profile; this guarantees that X-MAQoS acts like a substitute of the user, which dynamically tries to maximize the high-level user satisfaction, by reducing the human intervention to the minimum. Greedy connections are avoided by applying a suitable constrained optimization problem analogous to that illustrated in (Haque et al., 2005). Finally, security mechanisms specifically conceived for the agent-based environments can be easily integrated.

The rest of the paper is organized as follows: Section 2 provides a description of both the architecture and the behavior of X-MAQoS. Section 3 is devoted to present a subset of the experiments we have conducted to verify both the “intelligence” and the performing behaviour of our multi-agent system. In Section 4 we compare X-MAQoS with other related approaches already presented in the literature.

Finally, in Section 5, some conclusions are drawn.

2. The X-MAQoS Architecture In this section we describe the X-MAQoS

architecture; it is graphically illustrated in Figure 1.

From this figure it is possible to observe that X-MAQoS is characterized by four typologies of agents, namely:

User Agents (hereafter UA's), that monitor the behavior of a user, when he exploits network resources, in order to construct and maintain a profile of him; Resource Agents (hereafter RA's), that

reserve, allocate and de-allocate the network resources according to user preferences and/or network availabilities; Fault Agents (hereafter FA's), that

monitor the network to detect the (possible) presence of faults; Optimizer Agents (hereafter OA's), that

distribute available network resources among the users in such a way to maximize their satisfaction according to bandwidth constraints.

It should be clear, from the description above, that information representation, storing and exchange plays a key role in X-MAQoS. Actually, the efficient management of information exchange has become a challenging issue in many areas of computer science research, particularly for network-based information systems. In this area, the most promising solution to this problem was the definition of XML, a language for representing and exchanging data over the Internet. XML

A Multi-Agent System for Managing the Quality of Service in Telecommunications Networks

134 JOURNAL OF SYSTEMS SCIENCE AND SYSTEMS ENGINEERING / Vol. 14, No. 2, June, 2005

embodies both representation capabilities, typical of HTML, and data management features, typical of DBMS's; it is presently considered as a standard for the Web. For this reason XML has been chosen as the mean for representing, storing and exchanging information in X-MAQoS. Specifically,

The agent ontologies are stored as XML documents; as a consequence, they are light, versatile, easy to be exchanged and can reside on different devices and software platforms. In spite of this simplicity, the information representation rules embodied in XML are powerful enough to allow a sophisticated information management. It is worth pointing out that, nowadays, we have a large number of XML-based formalisms for handling ontologies (e.g., SHOE, XOL, OML, RDF and RDF Schema, DAML+OIL and OWL). However, for our purpose, the expressiveness of the XML Schema formalism is enough; therefore, handling a pure XML document, validated against an XML Schema, is more convenient than handling a verbose RDF(S) or DAML+OIL document. The agent communication language is

ACML (Grosof and Labrou, 1999); this is the XML encoding of FIPA (Foundation for Intelligent Physical Agents - http://www.fipa.org) Agent Communication Language. The exploitation of ACML guarantees various benefits to X-MAQoS; two of

the most relevant ones are listed below: Developing and managing tools

capable of carrying out the ACML message parsing is extremely simple; indeed, these tools can be constructed by exploiting the numerous off-the-shelf XML parsers available over the Internet. On the contrary, the adoption of a not XML-based Agent Communication Language causes various problems; as an example, the construction of the associated parser is difficult, since it requires the exploitation of specific tools (such as Lisp-like encodings) that cannot be easily found over the Internet.

Integrating Agents with a large variety of Web technologies (such as Secure Socket Layer - SSL, for handling both the authentication of agents' identities and the encryption of ACL messages) is very simple to be realized. On the contrary, addressing the same issues with a not XML-based Agent Communi- cation Language would imply heavy constraints on the agent infrastructure (think, for example, to the great overload to be put in the ACL messages for handling these issues).

The extraction of information from the various data structures is carried out by means of XQuery. This is becoming the standard query language for the XML

DE MEO, IERA, TERRACINA, and URSINO

JOURNAL OF SYSTEMS SCIENCE AND SYSTEMS ENGINEERING / Vol. 14, No. 2, June, 2005 135

environment. Since it is based on the XML framework, XQuery can handle a large variety of data. It has capabilities typical of database query languages as well as features typical of document management systems. Finally, it is provided with various high-level constructs for simplifying querying over the Web; among them, we cite constructors, that allow the creation of XML structures within a query, and FLWR expressions, that support iteration and variable binding. The manipulation of agent ontologies is

performed by means of the Document Object Model (DOM). This is a platform- and language-neutral interface that allows programs and scripts to dynamically access and update the content, structure and style of XML documents. DOM makes it possible for programmers to write applications working properly on all browsers and servers as well as on a large variety of hardware and software platforms.

In the following, we shall illustrate each agent per subsection.

2.1 User Agent As previously pointed out, the User Agent

UA monitors the associated user accessing the network services and updates the corresponding profile accordingly.

2.1.1 Ontology The ontology of UA stores the profile of the

corresponding user; this is characterized by a list

of parameters modelling how the network resources have been accessed by him in the past. The parameters involved in the ontology of UA are: (i) Access Counter, denoting the number of times the user has accessed the network in the past; (ii) Video Access Counter, Audio Access Counter, Data Access Counter, indicating the number of times the network has been accessed by the user in the past for video, audio or data downloading; (iii) Video Degradation Counter, Audio Degradation Counter and Data Degradation Counter, representing the number of times that the user decided to degrade the video quality, the audio quality and the speed of data downloading, respectively; (iv) Average x-Resolution, Average y-Resolution, representing the average horizontal and vertical resolution the user required in the past; (v) Average Chrominance, Average Luminance, Average Frame Rate required by the user; (vi) Average Audio Channels, Average Audio Codex, Average Audio Frequency, representing the average number of channels, the average number of bits necessary for encoding the audio signal, and the average sampling frequency required in an audio transmission, respectively; (vii) Average Data Rate, denoting the average data rate the user required in the past; (viii) Average Video Bandwidth, Average Audio Bandwidth and Average Data Bandwidth, denoting the average video, audio and data bandwidth the user exploited in the past. Figure 2 illustrates the XML-Schema relative to the ontology of UA1.

1 Remember that all agents of X-MAQoS are

XML-based and, consequently, their ontology is

stored as an XML document.

A Multi-Agent System for Managing the Quality of Service in Telecommunications Networks

136 JOURNAL OF SYSTEMS SCIENCE AND SYSTEMS ENGINEERING / Vol. 14, No. 2, June, 2005

<xs:element name=“UA_Ontology”>

<xs:complexType>

<xs:attribute name=“Identifier” type=“xs:ID” use=“required”/>

<xs:attribute name=“Access_Counter” type=“xs:nonNegativeInteger”

use=“required”/>

<xs:attribute name=“Video_Access_Counter” type=“xs:nonNegativeInteger”

use=“required”/>

<xs:attribute name=“Audio_Access_Counter” type=“xs:nonNegativeInteger”

use=“required”/>

<xs:attribute name=“Data_Access_Counter” type=“xs:nonNegativeInteger”

use=“required”/>

<xs:attribute name=“Video_Degradation_Counter” type=“xs:nonNegativeInteger”

use=“optional”/>

<xs:attribute name=“Audio_Degradation_Counter” type=“xs:nonNegativeInteger”

use=“optional”/>

<xs:attribute name=“Data_Degradation_Counter” type=“xs:nonNegativeInteger”

use=“optional”/>

<xs:attribute name=“Average_x-Resolution” type=“xs:float” use=“optional”/>

<xs:attribute name=“Average_y-Resolution” type=“xs:float” use=“optional”/>

<xs:attribute name=“Average_Chrominance” type=“xs:float” use=“optional”/>

<xs:attribute name=“Average_Luminance” type=“xs:float” use=“optional”/>

<xs:attribute name=“Average_Frame_Rate'' type=“xs:float'' use=“optional''/>

<xs:attribute name=“Average_Audio_Channels'' type=“xs:float'' use=“optional''/>

<xs:attribute name=“Average_Audio_Codex'' type=“xs:float'' use=“optional''/>

<xs:attribute name=“Average_Audio_Frequency'' type=“xs:float''

use=“optional''/>

<xs:attribute name=“Average_Data_Rate” type=“xs:float” use=“optional”/>

<xs:attribute name=“Average_Video_Bandwidth” type=“xs:float”

use=“required”/>

<xs:attribute name=“Average_Audio_Bandwidth” type=“xs:float”

use=“required”/>

<xs:attribute name=“Average_Data_Bandwidth” type=“xs:float” use=“required”/>

</xs:complexType>

</xs:element>

Figure 2 The XML Schema corresponding to the User Agent Ontology

DE MEO, IERA, TERRACINA, and URSINO

JOURNAL OF SYSTEMS SCIENCE AND SYSTEMS ENGINEERING / Vol. 14, No. 2, June, 2005 137

<?xml version="1.0" encoding=”UTF-8"?>

<!DOCTYPE fipa_acl SYSTEM "fipa_acl.dtd">

<message>

<messagetype>

request

</messagetype>

<messageparameter>

<sender link="http://www.ing.unirc.it/OA">

Optimizer Agent

</sender>

</messageparameter>

<messageparameter>

<receiver link="http://www.mat.unical.it/UA">

User Agent

</receiver>

</messageparameter>

<messageparameter>

<ontology link="http://www.ing.unirc.it/UA/UAontology.xml">

User Agent Ontology

</ontology>

</messageparameter>

<messageparameter>

<content>

Request of User Profile

</content>

</messageparameter>

</message>

Figure 3 The ACML message that OA sends to UA

2.1.2 Behavior UA is activated whenever the corresponding

user requires a network service or when he desires to modify the usage condition of a service he is already accessing. This latter case could happen after any modification in the user preferences (caused, for example, by new budget

limitations) or in the physical network status (this situation occurs, for example, during handover when a mobile user crosses the border of a radio cell and enters a new cell which is more crowded than the old one).

In all these cases, UA activates RA in order to perform the necessary resource allocation,

A Multi-Agent System for Managing the Quality of Service in Telecommunications Networks

138 JOURNAL OF SYSTEMS SCIENCE AND SYSTEMS ENGINEERING / Vol. 14, No. 2, June, 2005

de-allocation or reservation. In addition, UA monitors the user during his activities and updates the corresponding profile (i.e., its ontology) accordingly. Finally, UA can be activated by both OA and RA whenever they need information about the user profile. In order to illustrate the exploitation of ACML, in Figure 3 we show the ACML message that OA sends to UA. In the following, due to space limitations, we cannot present the other ACML messages exchanged by the various agents; however, they are analogous to that shown in Figure 3.

The construction and the maintenance of a user profile is carried out according to classical User Modeling Techniques (Kobsa 2001). These can be classified in two main categories, namely (i) Collaborative Techniques, which are based on the assumption that people who belong to the same “group” (e.g., people of the same age or sex, living in the same town and belonging to the same social class) behave similarly and, thus, have similar profiles; (ii) Content-Based Techniques, which assume that if a user shows a particular behavior under a given set of circumstances, then this is repeated under similar circumstances.

In our opinion, the two categories are both valid: indeed they solve orthogonal problems. As a matter of fact, content based techniques are strongly based on the real “knowledge” of the user; therefore, they are very precise but require a long training phase. On the contrary, collaborative techniques are more immediate to be exploited and more “open” to changes in the user behavior since they do not strongly consider his past. However, they do not take into account the possible existence of differences in the behavior of a user w.r.t. the standard

characteristics of his group. In order to exploit the best features of each technique and to avoid their limitations, an “hybrid-strategy” is adopted by UA for building and maintaining the User Profile. Such a strategy combines the two approaches described previously and acts in two phases: (1) a new user is provided with a default user profile determined by means of a collaborative technique; (2) the default user profile is “improved” by means of content-based techniques.

The hybrid technique guarantees the immediate availability of a profile for each user; with the time flowing, the system collects a large set of information and provides a more accurate description of the user habits. Finally, the User Agent is also in charge of handling security. With regard to this, we point out that specific features to cope with security issues have been defined for the agent environment; as an example, an agent-based approach can easily implement some already existing security protocols, like SSL (Secure Socket Layer) for managing agent communication and authentication. In addition, ad-hoc protocols have been defined for facing security issues that might arise in a network environment where several agents continuously cooperate; some of these protocols allow: (i) the management of data confidentiality (Claessens et al., 2003); (ii) the protection against malicious attacks (Vuong and Fu, 2001); (iii) the preservation of user privacy/anonimity (Smith and Shao, 2003). These protocols can be easily integrated in our prototype.

2.2 The Resource Agent The Resource Agent RA acts as a “mediator”

DE MEO, IERA, TERRACINA, and URSINO

JOURNAL OF SYSTEMS SCIENCE AND SYSTEMS ENGINEERING / Vol. 14, No. 2, June, 2005 139

<AudioBandwidthAvailability>

let $d:=document("http://www.ing.unirc.it/RA/RAOntology.xml")

let $ch:=$d/*/@Min_Required_Audio_Channels

let $co:=$d/*/@Min_Required_Audio_Codex

let $fr:=$d/*/@Min_Required_Audio_Frequency

let $Ba_R-min=$ch*$co*$fr

let $availbdw:=$d/*/@Total_Audio_Bandwidth-$d/*/@Allocated_Audio_Bandwidth

if (Ba_R-min > availbdw) then

return

<response>

Audio Bandwidth Available: $availbdw

</response>

else

return

<response>

Audio Bandwidth Not Enough

</response>

</AudioBandwidthAvailability>

Figure 4 The query executed for verifying the availability of audio bandwidth

between users and network. It is responsible for the reservation, allocation and de-allocation of network resources according to user desires and profiles as well as network availabilities.

2.2.1 Ontology The ontology of RA consists of two different components managing user desires and network availabilities, respectively.

The User_Management component stores, for each user, the maximum, the minimum and the current values for each high-level parameter as well as for video, audio and data bandwidth.

The Network_Management component stores, for each media typology, the total bandwidth available in the network, the allocated and the

reserved bandwidth and, finally, the average

bandwidth allocated in the past. The XML Schema associated with the ontology of RA is analogous to that relative to the ontology of UA; therefore, due to space limitations, we do not show it.

2.2.2 Behaviour As previously pointed out, RA is in charge of

the reservation, allocation and de-allocation of network resources.

It can be activated by a user (via UA) whenever he wants to allocate network resources; in this case the user supplies information about his desires by means of some high-level QoS

A Multi-Agent System for Managing the Quality of Service in Telecommunications Networks

140 JOURNAL OF SYSTEMS SCIENCE AND SYSTEMS ENGINEERING / Vol. 14, No. 2, June, 2005

parameters which are exploited by RA for computing the video, audio and data bandwidth necessary for satisfying him. For the video component, high-level QoS parameters specified by the user are: (i) the current Video Image Horizontal Resolution Rx, (ii) the current Video Image Vertical Resolution Ry, (iii) the current Chrominance C, (iv) the current Luminance L and, finally, (v) the current Frame Rate F available for the user to receive video frames. By exploiting them, the low-level parameter, namely the bandwidth Bv the system requires for enabling the real time vision of a video sequence without the need of compressing it, can be computed (see (Steinmetz and Nahrstedt, 1995) for technical details). Actually, the user specifies the maximum and the minimum values for each of the above parameters and RA computes the maximum (Bv

R-max) and the minimum (BvR-min) video

bandwidth accordingly. Analogously, RA computes the required

bandwidth Ba necessary for supporting the audio component transmission; for this task it applies formulas described in (Steinmetz and Nahrstedt, 1995). Also for the audio bandwidth the user specifies the maximum and the minimum parameter values and Ba

R-max and BaR-min are

computed accordingly. Finally, the bandwidth Bd for supporting the

data component transmission is defined as the data rate. Analogously to the previous cases, Bd

R-max and BaR-min represent the maximum and

the minimum data rates requested by the user. After the maximum and the minimum

bandwidths have been specified for each kind of transmission, RA examines the available resources and verifies if it can allocate or reserve

video, audio, and data bandwidths greater than Bv

R-min, BaR-min and Bd

R-min respectively. In the affirmative case, RA allocates or reserves the bandwidth accordingly; in the negative case, RA informs the user (via UA) who decides if he can reduce his requirements or, alternatively, if it is better to renounce to the network access. The query for verifying the availability of Audio Bandwidth, expressed in XQuery, is shown in Figure 4. In the following, due to space limitations, we cannot present the other queries; however, they are analogous to that represented in Figure 4.

A user can activate RA (via UA) also for requiring a resource de-allocation. In this case RA carries out the required action and updates its ontology.

A user can, finally, activate RA (via UA) for modifying the quantity of network resources he is already exploiting or reserving. In this case RA verifies if the bandwidth necessary for satisfying user requirements is available. In the affirmative case, it allocates or reserves the required resources and updates its ontology accordingly. In the negative case, it determines how much bandwidth can be assigned to the user. If it is greater than or equal to the minimum value he specified, RA activates OA for determining the high-level QoS parameters that maximize user satisfaction, according to bandwidth constraints. When RA receives these values, it presents them to the user (via UA) who can decide to either accept or refuse them.

RA could be activated by FA when a network fault has been repaired. In this case it modifies its ontology for registering bandwidth augmentation and contacts OA in order to determine the high-level QoS parameter values

DE MEO, IERA, TERRACINA, and URSINO

JOURNAL OF SYSTEMS SCIENCE AND SYSTEMS ENGINEERING / Vol. 14, No. 2, June, 2005 141

that maximize the satisfaction of the various users according to the new bandwidth constraints.

Finally, RA could be activated by FA in case of a new fault occurrence. In this case, it first modifies its ontology accordingly. After this, it contacts OA in order to determine the high-level QoS parameters that maximize the satisfaction of the various users according to the new bandwidth constraints. When RA receives these values, it presents them to the various users (via the corresponding UA's) who can either accept them or renounce to the network access.

In order to avoid greedy connections, RA exploits an approach analogous to that illustrated in (Haque et al., 2005), where the problem of allocating and/or reserving the network bandwidth is solved by applying a suitable linear programming problem having some constraints specifying the maximum percentage of the total bandwidth that each user can allocate and/or reserve.

Optionally, RA can be provided with a module that estimates the end-to-end delay for the various requests and takes into account it when the allocation and/or the reservation of new bandwidth is required. In the literature, various techniques have been developed to estimate the end-to-end delay both in wired and in wireless systems. In our prototype we adopt the methodology illustrated in (Cherkasova et al., 2003); this methodology requires RA to create a list of request-response pairs, each storing the timestamp associated with the bandwidth request, as well as the timestamp relative to the corresponding allocation/reservation. This list is, then, analyzed by means of statistical tools, such as those illustrated in (Duffield and Lo Presti,

2004) to properly estimate the end-to-end delay.

2.3 Fault Agent The Fault Agent FA is a reactive agent which

continuously monitors the network to detect (possible) fault occurrences or repairs. Each time it identifies a change in the network status, FA activates RA and informs it about the new resource availabilities.

2.4 Optimizer Agent The optimization of the network resources is

one of the main aspects the present paper focuses on. Its intervention is necessary whenever the current resource allocation becomes incompatible with the network status. The optimization task is performed by the Optimizer Agent OA which distributes available network resources among the various users in such a way to maximize their satisfaction according to bandwidth constraints.

2.4.1 Ontology The ontology of OA stores the current and

the maximum bandwidth that the network supplies for video, audio and data transmission. It stores also the maximum values of high-level QoS parameters that the network can guarantee.

The XML Schema associated with the ontology of OA is analogous to that relative to the ontology of UA; due to space limitations we do not show it.

2.4.2 Behavior OA can be activated by RA when a user

requires an increase of the bandwidth assigned to him which can be only partially satisfied. In this case, it activates an optimization task (see

A Multi-Agent System for Managing the Quality of Service in Telecommunications Networks

142 JOURNAL OF SYSTEMS SCIENCE AND SYSTEMS ENGINEERING / Vol. 14, No. 2, June, 2005

below) for determining the high-level QoS parameters that maximize user satisfaction, according to the new bandwidth constraints. Derived parameters are, finally, sent to RA.

OA can be also activated by RA when a fault has occurred. In this case, it first “distributes” among all users the bandwidth reduction caused by the fault occurrence; then, after the new bandwidth has been determined for all users, it activates the optimization task (see below) and, for each of them, determines high-level QoS parameters maximizing his satisfaction according to bandwidth constraints. When these parameters have been computed, OA passes them, along with the new bandwidth assignments, to RA.

Finally, OA can be activated by RA when a network fault has been repaired. In this case, it “distributes” the bandwidth increase among the users and, then, activates the optimization task.

The optimization task performed by OA Let u be a user. First OA activates the UA

corresponding to u and requires information about his profile. Such an information, along with the maximum and the minimum bandwidth he required, the current bandwidth allocation and/or reservation relative to him and provided by RA, is exploited for determining the best proposal to present to him.

Such an activity is carried out as follows. Initially, OA determines the optimal distribution (Bv

*, Ba*, Bd

*) of video, audio and data bandwidth for maximizing user satisfaction degree, according to the new bandwidth constraints. Such a task is performed by solving a suitable Linear Programming Problem (Bertsimas and Tsitsiklis, 1997).

Once the optimal video, audio and data bandwidth distribution has been computed for u,

OA must determine the combination of high-level QoS parameters that fit the bandwidth constraints and maximize the QoS perceived by him2. As a matter of fact, various combinations of high-level QoS parameters are possible which require the same video (resp., audio, data) bandwidth; the various parameters presumably have different importance for u and, consequently, different QoS values could be obtained with the same video (resp., audio, data) bandwidth.

For this reason, OA considers the average values of the various parameters required by u in the past and, from these, derives some weights to be used in a second optimization problem. This latter aims at maximizing the value of an ad-hoc defined index DS measuring the satisfaction degree of the user.

DS takes into account how the values of the high-level QoS parameters (e.g., Rx, Ry, C, L, F, and the corresponding ones for the audio and the data bandwidth) are close to the corresponding maximum and minimum values indicated by the user.

The interested reader can find all the analytical details relevant to the definition of the two optimization problems, as well as the analytical procedures belonging to the optimal resource distribution and to the maximization of the user satisfaction in (Araniti et al. 2003); in the following we illustrate only their computational costs.

The first optimization problem exploited by OA is a Linear Programming (LP) problem; this can be solved by the well-known simplex method (Dantzig, 1951) whose worst case

2 Remember that video, audio and data bandwidths depend on the various high-level QoS parameters (see Section 2.2.2.)

DE MEO, IERA, TERRACINA, and URSINO

JOURNAL OF SYSTEMS SCIENCE AND SYSTEMS ENGINEERING / Vol. 14, No. 2, June, 2005 143

computational complexity is O(2n), where n denotes the number of variables associated with the function to optimize. Actually, a polynomial solution of the LP problem, known as the Karmarkar's method, is illustrated in (Karmarkar, 1984); such an approach requires O(n3.5 x L2) steps, where L is the number of bits required to represent each variable. Actually, as pointed out in (Spielman and Teng, 2004), the Karmarkar's method is only occasionally superior to the simplex method in real cases; therefore, we have exploited this latter method in the implementation of OA.

The second optimization problem activated by OA aims at optimizing a quadratic function defined on a compact set, i.e., on a closed and bounded set; this problem will be indicated as Quadratic Programming problem (hereafter, QP). Such a kind of problem is usually solved by means of iterative methods (Bertsekas, 1999). An iterative method, after k iterations, leads to an approximate solution DS

Appr,k; we say that an approximate solution DS

Appr,k is ε-precise if |DS

Appr,k − DSOpt|≤ ε , where DS

Opt is the optimal solution. As a consequence, the number of steps required for solving QP depends on the value of ε. In our prototype, we have implemented three iterative techniques for solving QP (Bertsekas, 1999), i.e., the Feasible Gradient Method (FGM), the Penalty Method (PM), the Gradient Projection Method (GPM).

In Section 3.4 we provide a detailed analysis of the performances relative to FGM, PM and GPM.

3. Experimental Results We have conducted various experiments for

testing X-MAQoS. These can be subdivided into

two main categories: the former one has been devoted to test its “intelligence”, i.e., its capability of simulating the user reasoning and behavior in exploiting the network resources; the latter one has been conceived to verify its performance in a given test environment (a complete UMTS simulation platform).

3.1 Prototype Description In order to carry out our experiments we

have constructed a prototype implementing our system. This prototype has been realized in JADE (Java Agent DEvelopment Framework), a FIPA compliant platform for developing intelligent agents. However, a pure JADE-based implementation requires a significant amount of memory and CPU, which are not usually available on small devices like PDAs or mobile phones; therefore, in order to construct intelligent agents running on small devices we have exploited JADE/LEAP (JADE Lightweight Extensible Agent Platform), a reduced version of JADE operating on small devices. As far as the simulation environment is concerned, we point out that the Resource Agent and the Optimizer Agent worked on a PC equipped with a CPU of 3 GHz and 512 Mbytes of RAM; some of the User Agents operated on a PC with a CPU of 2.6 GHz and 256 Mbytes of RAM, whereas other ones operated on a PDA with a CPU of 416 MHz and 16 Mbytes of RAM. The Fault Agent directly resided on the physical devices relative to the network layer, in a way similar to that adopted by the system of (Hood and Ji, 1998).

3.2 Analysis of X-MAQoS “intelligence” In this experiment we have measured the

capability of X-MAQoS of modifying the

A Multi-Agent System for Managing the Quality of Service in Telecommunications Networks

144 JOURNAL OF SYSTEMS SCIENCE AND SYSTEMS ENGINEERING / Vol. 14, No. 2, June, 2005

features of a complex multimedia stream in such a way to provide a user with a Quality of Service as closer as possible to his expectations.

To perform this evaluation, we focused our attention on a reference user u and we trained X-MAQoS in order to learn his profile. Following the X-MAQoS training phase we make u access a video-conference service at the maximum bandwidth offered by the system and at the maximum bandwidth requested by him (i.e. at the maximum requested QoS). The choice of such a service is justified since a video-conference typically integrates both a video and an audio component, and, as a consequence, it represents a “quite complex” and “realistic” multimedia flow. A sequence V of about 1000 s, representing a segment of the video-conference at the maximum user QoS level has been recorded.

Off-line, we re-played V in a test system in which X-MAQoS had been implemented by artificially varying the bandwidth availability in the system in order to simulate the case in which V is being received by the reference user u and the system bandwidth availabilities fluctuate over time. As previously pointed out, the knowledge of the profile of u, jointly with the knowledge of bandwidth fluctuations, allows X-MAQoS to solve a two-phase optimization problem and to automatically react to the resource fluctuations by always trying to maximize the user satisfaction. Due to this optimization activity we have that X-MAQoS modifies the high-level parameters associated with the video sequence V.

We call Vmod the modified sequence (i.e. the video sequence obtained from V by modifying the high level QoS parameters suggested by the optimization procedure) recorded as a result of

our off-line process. Besides Vmod, this phase returns the values assumed by the Satisfaction Degree DS during the different time instants; DS falls within the interval [0,1] and monitors how high the satisfaction of u is.

As a further step, u was requested to observe the play-back of the modified sequence Vmod and, at equally-spaced intervals of 30 s, to supply an integer value US specifying his judgment on the quality he perceived; US ranges from 0 (bad quality) to 1 (optimal quality). We have requested u to specify US on the basis of both his satisfaction about the quality of high-level parameters guaranteed by X-MAQoS, and the unsatisfaction degree he perceived owing to the end-to-end delay.

Finally, US (the actual quality perceived by u) and DS (the estimated quality perceived by u) have been compared to determine the capability of our system to reproduce the user behavior as well as the effectiveness of DS (exploited during the resource optimization problem) to describe the actual user QoS satisfaction degree. Specifically, let US(t) be the value of US specified by u at the time instant t and let DS(t) be the value of DS computed by X-MAQoS at the time instant t. Then, it is possible to compute:

Diff(t) = US(t) − DS(t)

Diff(t) represents the distance between the user and the X-MAQoS perception of QoS; as a consequence, the lower Diff is, the better X-MAQoS works. If Diff(t) > 0 then US(t) > DS(t); in such a case X-MAQoS underestimates user satisfaction; viceversa, if Diff(t) < 0 then US(t) < DS(t); in such a case X-MAQoS overestimates user satisfaction. The same experiment has been repeated under different

DE MEO, IERA, TERRACINA, and URSINO

JOURNAL OF SYSTEMS SCIENCE AND SYSTEMS ENGINEERING / Vol. 14, No. 2, June, 2005 145

Table 1 Characteristics of the video sequences exploited in our test

Video Sequence Horizontal

Resolution (Pixel)

Horizontal

Resolution (Pixel)

Chrominance (Bit)

Luminance (Bit)

Video Sequence 1 352 288 8 8

Video Sequence 2 720 288 8 16

Video Sequence 3 720 576 16 16

Video Sequence 4 720 576 8 8

Video Sequence 5 720 576 8 16

Video Sequence 6 1440 576 16 16

Video Sequence 7 1440 576 8 8

Video Sequence 8 352 288 8 8

Video Sequence 9 1440 1152 16 16

Video Sequence 10 1920 1152 8 8

Video Sequence 11 1920 1152 8 8

-0,015

-0,01

-0,005

0

0,005

0,01

0,015

0,02

0,025

30 60 90 120

150

180

210

240

270

300

330

360

390

420

450

480

510

540

570

600

630

660

690

720

750

780

810

840

870

900

930

960

990

Time(s)

Diff

Figure 5 Temporal variation of Diff under low load traffic conditions

conditions; in particular, we have considered: (i) a set of 30 users USet = {u1, …, u30} characterized by different profiles; (ii) a set of 11 video sequences VSet = {V1, … ,V11} characterized by different features (e.g. spatial

resolution, frame rate and so on); these features are reported in Table 1; (iii) a set of 6 bandwidth profiles BPSet = {BP1=180 Kbps, BP2=300 Kbps, BP3=600 Kbps, BP4=660 Kbps, BP5=1200 Kbps, BP6=2000 Kbps}. In

A Multi-Agent System for Managing the Quality of Service in Telecommunications Networks

146 JOURNAL OF SYSTEMS SCIENCE AND SYSTEMS ENGINEERING / Vol. 14, No. 2, June, 2005

addition, we have considered three different traffic load conditions. Specifically, we have assumed that the number nacc of users contemporarily accessing the network ranges from 1 to 21: when nacc is lesser than 7 we say that the traffic load is low, whereas when nacc ranges from 7 to 14 we say that the traffic load is medium. Finally, if nacc > 14 we say that the traffic load is high. Finally, for each triplet <ui, Vj, BPk >, such that ui∈USet, Vj∈VSet and BPk ∈ BPSet we have carried out the previously outlined experimental procedure and we have computed the Diff function on it. In Figures 5, 6 and 7 we plot the temporal variation of the Diff function averaged on all users. From the analysis of these figures we may observe that, in case of low load traffic conditions, Diff ranges from -0.011 to 0.019; in presence of medium load traffic conditions Diff varies from -0.016 to 0.035; a certain decay of performances is observed when high load traffic conditions occur; in this case Diff ranges from -0.05 to 0.051.

The differences on system performances in presence of low and medium traffic conditions, on the one hand, and of high traffic conditions, on the other hand, confirm the empirical studies provided in (Song et al., 2002) and indicates that, in real cases, there exists a bandwidth threshold beyond which human users do not perceive QoS improvements; as an example, as claimed in (Song et al., 2002) human users do not perceive the difference existing between a video sequence played with a frame-rate of 25 frames/sec and the same video sequence played with a frame-rate equal to 15 frames/sec.

3.3 Analysis of X-MAQoS Performance in a Wireless Environment

In this experiment we have considered a wireless environment, in particular a simulated UMTS platform. Such a choice is motivated by the following reasons: (i) in a wireless environment available resources are limited and rapidly fluctuating; as a consequence, the capability of efficiently, adaptively and semi-automatically managing the QoS is extremely important; (ii) the rapid diffusion of cellular technologies is stimulating the development of new multimedia services; in such a context UMTS is, today, de facto the reference platform. As a consequence, a new QoS management system should prove to be well suited for this application environment. In the simulated system couples of users exchange multimedia traffic from terminal equipments (TE) connected to the UMTS network through Mobile Terminals (MT) roaming at different speeds within the overall simulated mobile environment. For the sake of simplicity, in the present paper we have considered the case in which the system supports a single bearer to transport each component flow of a multimedia application. We are performing further research efforts for studying the interworking of X-MAQoS with a UMTS system. The results we show refer to a two-tier UMTS scenario (Iera et al., 2003) in which the coverage area of each macrocell (average radius 900m) overlaps four microcells (average radius 300m). Inter-layer interference is avoided by assigning different carrier frequencies to each coverage layer. A very easy mobility profile (optimizing this aspect is out of the scope of the present paper)

DE MEO, IERA, TERRACINA, and URSINO

JOURNAL OF SYSTEMS SCIENCE AND SYSTEMS ENGINEERING / Vol. 14, No. 2, June, 2005 147

-0,02

-0,01

0

0,01

0,02

0,03

0,04

30 60 90 120

150

180

210

240

270

300

330

360

390

420

450

480

510

540

570

600

630

660

690

720

750

780

810

840

870

900

930

960

990

Time(s)

Diff

Figure 6 Temporal variation of Diff under medium load traffic conditions

is chosen: the user mobility within a cell is not modelled (perfect power control is assumed) and the inter-cell roaming is simply modelled like a four-directional equally probable movement. Fast and slow users are foreseen (discriminated by means of the dwell time estimation). For the curves shown in the present paper the intentional velocities are assumed to be 30Km/h and 60Km/h, for slow and fast users respectively, and the dwell times within each cell are exponentially distributed with mean equal to the ratio of cell radius over intentional velocity. The multimedia call duration is assumed to be exponentially distributed with an average duration of 15 minutes.

The study of the particular resource allocation policy to both new originating and hand-off calls is not the focus of this paper, as we are proposing a functionality which is completely independent from the protocols and algorithms implemented within the underlying

multimedia wireless/mobile platform. Thus, for our test campaign, we have chosen a system in which a simple new/handoff call management algorithm is implemented. According to this algorithm, the layer chosen for the allocation of the multimedia connection is always the one that can guarantee the best level of QoS.

Different algorithms taking into account also the velocity of the mobile terminal could be conceived to enhance the overall UMTS system performance. Nevertheless, in this paper we do not implement them as the main focus is on the study of the performance achievable by our QoS control mechanism. As for the different X-MAQoS agents, we have decided to implement the User Agent within the simulated Mobile Terminal equipment; Optimizer Agent and Resource Agent are implemented within the RNC module of the simulated UMTS platform; Fault Agents can be implemented in the various network modules. In future UMTS releases, if

A Multi-Agent System for Managing the Quality of Service in Telecommunications Networks

148 JOURNAL OF SYSTEMS SCIENCE AND SYSTEMS ENGINEERING / Vol. 14, No. 2, June, 2005

-0,06

-0,04

-0,02

0

0,02

0,04

0,06

30 60 90 120

150

180

210

240

270

300

330

360

390

420

450

480

510

540

570

600

630

660

690

720

750

780

810

840

870

900

930

960

990

Time(s)

Diff

Figure 7 Temporal variation of Diff under high load traffic conditions

the 3GPP standardization body will decide to associate more “intelligence” to the NodeB, the Resource Agent could be also moved from RNC to NodeB. We have carried out a large variety of experiments by taking into consideration various user behaviors and QoS expectations. Here, we report the results of some of them. In particular, we consider the case in which the traffic distribution consists of 50% of video-conference connections (with average duration of 15 minutes), 25% of telephone calls (with average duration of 3 minutes), and 25% of Web-browsing activities. In the following we illustrate one of these experiments. Specifically, we have considered a user who shows a particular interest for video transmission, whereas his interest to both the audio and the data component is weaker. We assume also that the other user requirements are Bv

R-max= 400 Kbps, Ba

R-max= 57.6 Kbps, BdR-max= 409.6 Kbps,

BvR-min= 80 Kbps, Ba

R-min= 16 Kbps, and BdR-min=

76.8 Kbps.

Observe that, ideally, DS should be equal to 1 i.e., the user should be provided with all requested resources. Actually, DS might have many fluctuations, depending on the changes of the network status. A test campaign is required to observe the average achievable user Satisfaction Degree, under different traffic loading conditions. This will provide us with interesting indications on the actual effectiveness of X-MAQoS. In particular, we say that the user Satisfaction Degree is high if 0.66 < DS ≤ 1, medium if 0.33 < DS ≤ 0.66, and low when 0 ≤DS≤ 0.33. We then evaluate the average percentage of connection time during which the DS value associated with the user in the system is high, medium or low. The test campaign has been carried out under different traffic load conditions (i.e., low, medium, and high congestion conditions, corresponding to 1 call/s, 5 calls/s and 10 calls/s respectively).

In the first row of Table 2 we reported the results for low traffic load; in this case DS is

DE MEO, IERA, TERRACINA, and URSINO

JOURNAL OF SYSTEMS SCIENCE AND SYSTEMS ENGINEERING / Vol. 14, No. 2, June, 2005 149

Table 2 User satisfaction degree vs. congestion level

high DS medium DS low DS

Low congestion

100% 0% 0%

Medium Congestion

80% 4% 16%

High Congestion

76% 0% 24%

“high” for all the connection time. The second row of Table 2 reports the values of DS when we suppose medium traffic load conditions. In this case we can observe that DS is high for 80% of the connection time, DS is “medium” for the 4% of the time whereas DS is “low” for the remaining percentage of time. The most interesting case is represented in the third row of Table 2 where we have considered a very crowded network. From this table it is possible to observe that the percentage of connection time in which DS is high is equal to 76, whereas the percentage of connection time in which DS is low is equal to 24.

Such a result shows that X-MAQoS presents a high reaction capability to the case of congested network. The particularly high percentage of time the QoS remains at a highly acceptable level, even under high traffic load conditions, is a fact. This capability is obtained thanks to the possibility for our system of always performing an optimal or sub-optimal resource distribution within the multimedia flows, each time the allocated resources decrease due to the system congestion.

In other words, X-MAQoS always guarantees the possibility of privileging, during the resource re-assignment, the multimedia component being

more relevant for the user, as derived from his profile.

3.4 Performance Analysis of OA We have conducted an experimental study to

determine the performance of OA. As discussed in Section 2.4.2, OA performs two main activities: (a) it solves a linear programming problem and (b) it maximizes a quadratic function defined over a compact set. Both theoretical results and real tests confirm that the time required by step (a) is negligible w.r.t. that required by step (b); for this reason, in this section, we focus only on this latter step. In order to test it, we have considered the three algorithms mentioned in Section 2.4.2, namely, the Feasible Gradient Method (FGM), the Penalty Method (PM), and the Gradient Projection Method (GPM).

We have applied these algorithms on the same input and we have computed the minimum number of iterations and the time required to ensure that an approximate solution is ε- precise. The results of our tests are reported in Table 3 for different values of ε.

From the analysis of this table we may observe that, in GPM, the number of iterations required to achieve a good accuracy is lower than in FGM and in PM: as an example, in GPM, only 14 iterations are required to ensure a 0.01- precise solution, whereas FGM and PM require 25 and 23 iterations, respectively. However, the computational cost associated with the execution of a single iteration in GPM is not negligible w.r.t. FGM and PM. Specifically, if a user is willing to accept an approximate solution (e.g. ε ∈[0.05,0.1]), FGM and PM are “faster” than

A Multi-Agent System for Managing the Quality of Service in Telecommunications Networks

150 JOURNAL OF SYSTEMS SCIENCE AND SYSTEMS ENGINEERING / Vol. 14, No. 2, June, 2005

Table 3 Performance of FGM, PM and GPM.

FGM PM GPM Threshold Number of Iterations

Time(s) x10-4

Number of Iterations

Time(s) x10-4

Number of Iterations

Time(s) x10-4

ε = 0.1 15 45 12 60 7 85 ε= 0.05 18 95 18 85 12 100 ε = 0.01 25 198 23 160 14 135 ε = 10-3 95 360 52 250 27 180

GPM; this case might occur whenever the user does not provide stringent requirements on QoS. On the contrary, if a user needs a more precise solution (e.g. ε < 0.05), GPM is faster than FGM and PM; this case might occur in those application contexts requiring high-quality services.

4. Related Works Before drawing our conclusions about the

presented research, it seems to be interesting to recall some related works presented in literature and to make a comparison between the approaches followed in these studies and the one we are following in the present paper.

In (Laukkanen et al., 2002) a multi-agent system, capable of dynamically and adaptively managing the QoS in a radio-mobile environment, is proposed. The corresponding prototype, named Nomadic Agent System (NAS), uses an intelligent agent (called Control Agent (CA)) for controlling a wireless channel. In order to carry out its task, CA exploits a data structure storing the past user behavior; in this way, it can deduce if a certain typology of connection is preferable w.r.t. some other ones. X-MAQoS shares various similarities with NAS. Indeed: (i) both of them propose an

agent-based, dynamic and adaptive platform for the QoS management; (ii) both of them exploit a user profile for making decisions on resource allocation, de-allocation and reservation. However, X-MAQoS and NAS have also important differences. In particular, (i) NAS has been explicitly conceived for handling QoS in a wireless environment; on the contrary, X-MAQoS handles various typologies of network; (ii) X-MAQoS exploits both network and user information for constructing an optimization problem allowing to determine the optimal resource distribution (we have also proved that the optimization problem has always a solution (Araniti et al. 2003)). On the contrary, NAS improves the resource exploitation by means of an interesting communication protocol named MTP (MessageTransfer Protocol); this protocol guarantees a better performance w.r.t. a classical communication protocol specifically conceived for a wireless environment; however, it needs a significant amount of resources to ensure a reliable communication among its agents; therefore, it uses part of the available resources that, consequently, cannot be exploited for satisfying user requirements. (iii) NAS, unlike X-MAQoS, is not capable of

DE MEO, IERA, TERRACINA, and URSINO

JOURNAL OF SYSTEMS SCIENCE AND SYSTEMS ENGINEERING / Vol. 14, No. 2, June, 2005 151

separately handling video, audio and data bandwidths.

(Trzec and Huljenic, 2002) proposes a multi-agent system for the QoS Management. The authors describe a meta-modelling language, named MESSAGE, derived from UML, for describing both the structure and the behavior of the agents. The proposed system is multi-layer. The various layers monitor the actual QoS level associated with users, re-distribute available resources when the provided service is incompatible w.r.t. user specifications and, finally, define the mapping between the parameters describing the QoS at user level and those representing the QoS at network level.

It is possible to detect numerous similarities between this approach and X-MAQoS. In particular: (i) both of them define a dynamic and adaptive protocol for the QoS Management; (ii) both of them define a mapping between the user-level and the network-level parameters and exploit suitable user profiles; (iii) both of them are generic, i.e. can handle the QoS in various telecommunications networks.

The most important differences between the two approaches are the following: (i) X-MAQoS can separately handle video, audio and data bandwidths; such a feature is not present in the approach of (Trzec and Huljenic, 2002); (ii) the user profile construction, management and exploitation are very different in the two approaches. In particular, a simple user profile, recording the desired goals, is exploited in (Trzec and Huljenic, 2002) for defining a planning engine, i.e., a software component capable of planning a sequence of

actions allowing the desired QoS levels to be obtained. In order to carry out its tasks, the planning engine requires the intervention of the user which must specify his “user-level” QoS parameters by means of a suitable interface. The human intervention is also necessary when a change in user preferences/needs occurs, since the planning engine does not include any mechanism for unobtrusively revising user profiles.

In (Gurer et al., 1998) an adaptive and proactive technique for network management is proposed. The authors exploit various agents distributed on the nodes of a network, which cooperate for constructing a global view of the network status (e.g., for determining the present network performances, the existence of a fault, etc.). Extracted information is collected and elaborated by a specific agent named Control Agent (CA) which handles a strategy capable of maximizing network performance. Both the approach of (Gurer et al., 1998) and X-MAQoS are adaptive, dynamic and automatic; in addition, both of them are generic. The main differences between them are the following: (i) the architecture described in (Gurer et al., 1998) is highly distributed; indeed, at least one agent should be present in each node of the telecommunications network and all these agents should continuously exchange information and cooperate. Such an architecture allows to produce a precise description of the network evolution; however, it seems particularly expensive. (ii) The decisions of CA do not take the user behavior into account. As a matter of fact, CA exploits results produced by complex statistical models which, however, do not consider user profiles.

A Multi-Agent System for Managing the Quality of Service in Telecommunications Networks

152 JOURNAL OF SYSTEMS SCIENCE AND SYSTEMS ENGINEERING / Vol. 14, No. 2, June, 2005

(iii) The approach proposed in (Gurer et al., 1998) is not capable of separately managing video, audio and data bandwidths.

(Nygren et al., 1996) introduces a multi-agent system for managing “Media on Demand” services. The purposes of such a system are quite different from those relative to X-MAQoS. However, it is worth observing some similarities between these two approaches. In particular, the system of (Nygren et al., 1996) is capable of distinguishing between the video, audio and data components in information transmission; in addition, it exploits a sort of “adaptive profiles” for managing user preferences. Finally, both X-MAQoS and the system proposed in (Nygren et al., 1996) are generic.

(Misikangas et al., 2001) proposes a technique for predicting user QoS requirements in a cellular network. In particular, it illustrates a model for estimating the probability that a user, in a certain time interval, requires a certain rate for data transmission. Such a computation exploits some information about the past user behavior; in particular, the prediction of the future user behavior is defined as a knowledge discovery problem.

The approach of (Misikangas et al., 2001) and X-MAQoS share various similarities; indeed: (i) both of them exploit information about the past user behavior; (ii) both of them handle the QoS associated with a user by tuning the bandwidth available for him.

The most important differences between the approach of (Misikangas et al., 2001) and our own are the following: (i) X-MAQoS can separately handle video, audio and data

components; such a capability is not owned by the approach of (Misikangas et al., 2001); (ii) the approach described in (Misikangas et al., 2001) can operate only in a wireless environment; as a consequence, X-MAQoS is more generic even if the approach of (Misikangas et al., 2001) is more refined (as an example, it stores information about the routers preferred by users and exploits such an information for handling future user requests); (iii) the approach presented in

(Misikangas et al., 2001) is predictive, i.e., it aims at predicting future QoS desires; on the contrary, X-MAQoS is reactive, i.e., it aims at tuning resource distribution for maximizing the efficiency of the present network exploitation.

In (Bigham and Du, 2003) a multi-agent system capable of handling resources in a mobile network is proposed. There are some similarities between this system and X-MAQoS; specifically: (i) both of them apply a multi-agent architecture for handling telecommunications networks; (ii) both of them exploit optimization algorithms for distributing available resources. However, there are also important differences between them; indeed: (i) X-MAQoS is generic, i.e., it is capable of operating on various kinds of telecommunications networks; on the contrary, the system of (Bigham and Du, 2003) is specialized for cellular networks and implements ad-hoc algorithms for this application context; (ii) in X-MAQoS the Quality of Service is optimized by means of a user profile whereas, in the system of (Bigham and Du, 2003), QoS management is performed by means of an intelligent control technique that takes into account several (sophisticated)

DE MEO, IERA, TERRACINA, and URSINO

JOURNAL OF SYSTEMS SCIENCE AND SYSTEMS ENGINEERING / Vol. 14, No. 2, June, 2005 153

parameters (e.g., the size and the shape of a cell belonging to a cellular network, the number of users within each cell, and so on) but does not consider user preferences; such a choice is presumably motivated by the fact that handling both a user profile and the other sophisticated system parameters would lead to an excessive complexity of the resulting system. (iii) (Bigham and Du, 2003) does not separately handle video, audio and data flows.

In (Bodanese and Cuthbert, 2001) the INTERRAP system (INTEgration of Reactive behaviour and RAtional Planning) is proposed. INTERRAP is a multi-agent system for controlling channel allocationin mobile networks. Both INTERRAP and X-MAQoS exploit a multi-agent architecture for guaranteeing an optimal resource re-distribution in a telecommunications network; moreover, in both approaches, a negotiation activity is performed for increasing the QoS perceived by the users. As for differences, we observe that the approach described in (Bodanese and Cuthbert, 2001) has been conceived for operating on cellular networks, where it manages a great number of aspects; on the contrary, X-MAQoS is capable of handling a wide variety of telecommunications networks where, however, it controls a fewer number of aspects. In addition, (Bodanese and Cuthbert, 2001) neither exploits user profiles nor provides a mechanism for separately handling video, audio and data.

(Verscheure et al., 1998) presents a system capable of optimizing the quality perceived by a human user. The main similarities existing between X-MAQoS and this approach are the

following: (i) both of them aim at relating QoS parameters to human perception; (ii) both of them aim at maximizing the QoS perceived by the user; (iii) both of them dynamically manage video, audio and data flows; (iv) both of them are generic. The main differences existing between them are as follows: (i) in (Verscheure et al., 1998) the QoS optimization is achieved by means of sophisticated techniques (e.g. adaptive quantization algorithms, hierarchical encoding and so on). On the contrary, X-MAQoS exploits user profiles for QoS optimization. (ii) The architecture proposed in (Verscheure et al., 1998) is centralized, whereas X-MAQoS is a multi-agent system and, hence, it is distributed.

(Ghinea and Thomas, 1998) proposes an approach for defining and measuring the QoS from the user standpoint instead of “technical” QoS parameters (e.g. bandwidth or delay). The main similarities existing between X-MAQoS and (Ghinea and Thomas, 1998) are the following: (i) both of them emphasize the role of human judgement in the evaluation of QoS; (ii) both of them try to “link” technical parameters measuring the QoS with human perception of QoS; (iii) both of them separately handle video, audio and data; (iv) both of them are generic. The main differences existing between them are the following: (i) (Ghinea and Thomas, 1998) does not propose a mechanism for managing and optimizing the QoS in a telecommunication network; (ii) in (Ghinea and Thomas, 1998) the authors propose a very deep and refined analysis capable of pointing out the influence of QoS technical parameters on user perception; however, differently from our approach, they

A Multi-Agent System for Managing the Quality of Service in Telecommunications Networks

154 JOURNAL OF SYSTEMS SCIENCE AND SYSTEMS ENGINEERING / Vol. 14, No. 2, June, 2005

do not propose any function capable of mapping “user parameters” into the technical ones. (iii) The authors do not exploit user profiles.

In (Nakano et al., 2002) a multi-agent system for user-oriented information delivery on the Web is proposed; this system, in other words, provides a mechanism for selecting only those information contents appearing relevant for the user. This approach and our own are similar in that both of them: (i) are XML based; (ii) exploit user profiling techniques. As for differences between them, we have that: (i) X-MAQoS has been conceived for operating in a large variety of telecommunications contexts whereas the approach of (Nakano et al., 2002) works only on the Web; (ii) in X-MAQoS the agent communication is realized by XML whereas (Nakano et al., 2002) exploits an extension of the HTTP protocol. (iii) The approach of (Nakano et al., 2002) does not separately handle video, audio and data flows.

5. Conclusions In this paper we have presented X-MAQoS,

a multi-agent system for the QoS management in telecommunications networks. We have seen that this system is characterized by various interesting features such as: (i) management and exploitation of a user profile; (ii) capability of handling various network typologies; (iii) semi-automaticity; (iv) exploitation of XML for information storing and exchange.

In our opinion, X-MAQoS is an interesting attempt of creating a strict interaction among research efforts in Telecommunications,

Artificial Intelligence and Information Systems in order to solve complex problems involving aspects relative to each of these research fields.

In the future we plan to make such an interaction even stricter. Specifically, we plan to enrich the profile of a user in such a way to represent his interest degree for a specific information content. As an example, the profile of a user could specify that, in the past, in presence of bandwidth reductions, he preferred some information contents to others. If such an information is available, when a bandwidth reduction occurs, the system could propose to the user to choose if he wants: (i) to reduce the quality of transmitted information; (ii) to sacrifice a transmission medium and to maintain the other ones at the same transmission quality; (iii) to reduce the transmitted information contents, by eliminating those ones appearing less interesting to the user, and to maintain the same transmission media and quality.

References [1] Araniti, G., P. De Meo, A. Iera, D. Ursino,

“Adaptively controlling the QoS of multimedia wireless applications through user profiling techniques”, IEEE Journal on Selected Areas in Communications, Vol. 21, No. 12, pp1536-1546, 2003.

[2] Bertsekas, D., Nonlinear Programming, Belmont, Massachusets, USA: Athena Scientific, 1999.

[3] Bertsimas, D., J. N. Tsitsiklis, Introduction to Linear Optimization, Belmont, Massachusets, USA: Athena Scientific, 1997.

DE MEO, IERA, TERRACINA, and URSINO

JOURNAL OF SYSTEMS SCIENCE AND SYSTEMS ENGINEERING / Vol. 14, No. 2, June, 2005 155

[4] Bigham, J., L. Du, “Cooperative negotiation in a multi-agent system for real-time load balancing of a mobilecellular network”, In Proc. of the International Joint Conference on Autonomous Agents and Multiagent Systems (AAMAS ’03), pp568–575, Melbourne, Australia, 2003. ACM Press.

[5] Bodanese, E.L., L.G. Cuthbert, “An intelligent channel allocation scheme for mobile networks: an application of agent technology.” In Proc. of the Asia-Pacific Conference of Intelligent Agent Technology, (IAT 2001), pp322–333, Maebashi, Japan, 2001. World Scientific Press.

[6] Cherkasova, L., Y. Fu, W. Tang, A. Vahdat, “Measuring and characterizing end-to-end Internet service performance”, ACM Transactions on Internet Technology, Vol. 3, No. 4, pp347–391, 2003.

[7] Claessens, J., B. Preneel, J. Vandewalle, “(How) can mobile agents do secure electronic transactions on untrusted hosts? a survey of the security issues and the current solutions”, ACM Transactions on Internet Technology, Vol. 3, No. 1, pp28– 48, 2003.

[8] Dantzig, G.B., “Maximization of linear function of variables subject to linear inequalities”, Activity Analysis of Production and Allocation, pp339–347. 1951.

[9] Duffield, N.G., F. Lo Presti, “Network tomography from measured end-to-end

delay covariance”, IEEE/ACM Transactions on Networking, Vol. 12, No. 6, pp978–992, 2004.

[10] Ghinea, G., J.P. Thomas, “QoS impact on user perception and understanding of multimedia video clips”, In Proc. of the ACM International Conference on Multimedia (MULTIMEDIA’98), pp49–54, Bristol, United Kingdom, 1998. ACM Press.

[11] Grosof, B., Y. Labrou, “An approach to using XML and a rule-based content language with an agent communication language”, In Proc. of the IJCAI-99 Workshop on Agent Communication Language, pp96–117, Stockolm, Sweden, 1999.

[12] Gurer, D., V. Lakshminarayan, A. Sastry, “An intelligent agent-based architecture for the management of heterogeneous networks”, In Proc. of the IFIP/IEEE International Workshop on Distributed Systems: Operations & Management (DSOM’98) ,Newark, Delaware, USA, 1998.

[13] Haque, N., N.R. Jennings, L. Moreau, “Resource allocation in communication networks using market-based agents”, International Journal on Knowledge Based Systems, to Appear, 2005.

[14] Hood, C.S., C. Ji., “Intelligent agents for proactive fault detection”, IEEE Internet Computing, Vol. 2, No.2, pp65–72, 1998.

[15] Houssos, N., A. Alonistioti, L. Merakos, E. Mohyeldin, M. Dillinger, M. Fahrmair, M.

A Multi-Agent System for Managing the Quality of Service in Telecommunications Networks

156 JOURNAL OF SYSTEMS SCIENCE AND SYSTEMS ENGINEERING / Vol. 14, No. 2, June, 2005

Schoenmakers, “Advanced adaptability and profile management framework for the support of flexible mobile service provisioning”, IEEE Wireless Communications Magazine, Vol. 10, No. 4, pp52–53, 2003.

[16] Iera, A., A. Molinaro, S. Marano, “Introducing the adaptive-QoS idea into multi-tier UMTS systems: the lessons learned”, to appear in Wireless Personal Communications, 2005.

[17] Karmarkar, N., “A new polynomial time algorithm for linear programming”, Combinatorica, Vol 4, No.4, pp373–395, 1984.

[18] Kobsa, A., “Generic user modeling systems”, User Modeling and User-Adapted Interaction, Vol. 11, pp49–63, 2001.

[19] Laukkanen, M., H. Helin, H. Laamanen, “Supporting nomadic agent-based applications in FIPA agent architecture”, In Proc. of the ACM International Joint Conference on Autonomous Agents & Multiagent Systems (AAMAS’02), pp1348–1355, Bologna, Italy, 2002. ACM Press.

[20] Marques, V., R.L. Aguiar, C. Garcia, J.I. Moreno, C. Beaujean, E. Melin, M. Liebsch, “An IP-based QoS architecture for 4G operator scenarios”, IEEE Wireless Communications Magazine, Vol. 10, No. 3, pp54–62, 2003.

[21] Misikangas, P., M. Makela, K. Raatikainen, “Predicting QoS for nomadic applications

using intelligent agents”, In A.L.G. Hayzelden and R.A. Bourne, editors, Agent Technology for Communication Infrastructures, chapter 15, pp197–208. John Wiley & Sons, 2001.

[22] Nakano, T., K. Harumoto, S. Shimojo, S. Nishio, “User adaptive content delivery mechanism on the World Wide Web”, In Proc. of the ACM International Symposium on Applied Computing (SAC 2002), pp1140–1146. ACM Press, 2002.

[23] Nygren, K., I. Jonsson, O. Carlvik, “An agent system for media on demand services”, In Proc. of the International Conference on the Practical Application of Prolog/Constraints/Intelligent Agents and Multi-Agent Technology (PAAM’96), London, England (UK), 1996.

[24] Prasad, A.R., R. Esmailzadeh, S. Winkler, T. Ihara, B. Rohani, B. Pinguet, J.M.C. Lopez, “Perceptual quality measurement and control: Definitions, applications and performance”, In Proc. of the International Symposium on Wireless Personal Multimedia Communications (WPMC’01), pp547–552, Aalborg, Denmark, 2001.

[25] Reicken, Doug (Editor), “Intelligent Agents?”, Communications of the ACM, Vol. 37, No. 7, ACM, 1994.

[26] Smith, R., J. Shao, “Preserving privacy when preference searching in e-commerce”, In Proc. of the International Workshop on Privacy in the Electronic Society (WPES ’03), pp101–110, Washington, Washington DC, USA, 2003.

DE MEO, IERA, TERRACINA, and URSINO

JOURNAL OF SYSTEMS SCIENCE AND SYSTEMS ENGINEERING / Vol. 14, No. 2, June, 2005 157

ACM Press. [27] Song, S., Y. Won, I. Song, “Empirical

study of user perception behavior for mobile streaming”, In Proc. of the ACM International Conference on Multimedia (MULTIMEDIA ’02), pp327–330, Juan-les-Pins, France, 2002. ACM Press.

[28] Spielman, D.A., S. Teng, “Smoothed analysis of algorithms: Why the simplex algorithm usually takes polynomial time”, Journal of the ACM, Vol. 51, No. 3, pp385–463, 2004.

[29] Steinmetz, R., K. Nahrstedt, Multimedia: Computing, Communication and Applications, Upper Saddle River, New Jersey, USA: Prentice Hall, Inc., 1995.

[30] Trzec, K., D. Huljenic, “Intelligent agents for QoS management”, In Proc. of the ACM International Joint Conference on Autonomous Agents & Multiagent Systems (AAMAS’02), pp1405–1412, Bologna, Italy, 2002. ACM Press.

[31] Verscheure, O., X. Garcia, G. Karlsson, J.P. Hubaux, “User-oriented QoS in packet video delivery”, IEEE Network, Vol 12, No. 6, pp12–21, 1998.

[32] Vuong, S.T., P. Fu, “A security architecture and design for mobile intelligent agent systems”, SIGAPP Applied Computing Review, Vol. 9, No. 3, pp21–30, 2001.

Pasquale De Meo received the Laurea Degree in Electrical Engineering from the University of Reggio Calabria in May 2002. From June

2002 he is a PhD Student in System Engineering and Computer Science at the University of Reggio Calabria. His research interests include user modeling, intelligent agents, e-commerce, machine learning, knowledge extraction and representation, scheme integration, XML, Cooperative Information Systems. Antonio Iera received the Laurea Degree in Computer Engineering at the University of Calabria, Italy, in 1991 and received a Master Diploma in Information Technology from CEFRIEL, Italy, in 1992 and a Ph.D. degree from the University of Calabria, Italy, in 1996. From 1997 to 2000 he has been with the University of Reggio Calabria, Italy, as Assistant Professor. From 2000 to 2005 he has been an Associate Professor and currently he is a Full Professor at the same University. His research interests include Personal Communications Systems, Enhanced Wireless and Satellite Systems. Giorgio Terracina received the Laurea Degree in Computer Engineering from the University of Calabria in April 1999. From May 1999 to March 2000 he was a member of the Knowledge Engineering group at DEIS. From March 2000 to February 2003 he has been a PhD Student at the University of Reggio Calabria. Currently he is Assistant Professor at University of Calabria. His research interests include Knowledge extraction and representation, scheme integration and

A Multi-Agent System for Managing the Quality of Service in Telecommunications Networks

158 JOURNAL OF SYSTEMS SCIENCE AND SYSTEMS ENGINEERING / Vol. 14, No. 2, June, 2005

abstraction, Cooperative Information Systems, Data Warehouses and semi-structured data, Intelligent Agents, Bioinformatics. Domenico Ursino received the Laurea Degree in Computer Engineering from the University of Calabria in July 1995. He received the PhD in System Engineering and Computer Science from the University of Calabria in January 2000. From October 2000 to January 2005 he

was an Assistant Professor at University “Mediterranea” of Reggio Calabria. Currently he is an Associate Professor at the same University. His research interests include user modeling, intelligent agents, e-commerce, knowledge extraction and representation, scheme integration and abstraction, semi-structured data and XML, Cooperative Information Systems.