1 A Computational Economy for IN Load Control Using a Multi-agent ...

7 downloads 0 Views 354KB Size Report
A Computational Economy for IN Load Control Using a Multi-agent System. A.Patel ..... exchange commodities, using the price value, until the level of supply and ...
A Computational Economy for IN Load Control Using a Multi-agent System A.Patel, K.Prouskas, J.Barria, J.Pitt {a.patel1, k.prouskas, j.barria, j.pitt}@ic.ac.uk Department of Electrical and Electronic Engineering, Imperial College of Science, Technology and Medicine, Exhibition Road, London SW7 2BT, UK

Abstract Intelligent Networks (IN) are used in telecommunication networks to provide services that require a decision-making network element. The Service Control Point (SCP) can be overloaded when the number of service requests exceeds the SCPs designed capacity. Traditional IN load control algorithms assume a single service network model or use a centralised controller to find a solution. In this paper we propose and investigate a market-based model, in the form of a computational economy, for solving the distributed IN load control problem for a multi-service network. We investigate two algorithms, one price-oriented and the other resource-oriented, for finding the competitive equilibrium for this economy. We conclude that the price-oriented approach generally performs better and allows a greater level of distributed-decision making. Furthermore, we study a realisation of this model as a multi-agent system (MAS) and investigate the communication overhead associated with running auctions for services. Keywords: Intelligent Network, Load Control, Market-oriented Programming, Multi-agent Systems

1. Introduction Technological advances have lead to the increased usage of telecommunication networks which has been driven in part by the use of Intelligent Networks (IN). An IN is an overlay 1

network to telecommunication systems that facilitates greater service sophistication and complexity. An example of an IN configuration can be seen in Figure 1. Users access IN services through the Service Switching Point (SSP). The SSP establishes which Service Control Point (SCP) is capable of providing the service requested and then determine if it has the right to access that SCP. Once a link has been established, the SCP runs the Service Logic (SL) program code that represents the service requested. The SL code may use of other IN resources, such as Service Data Points (SDP) and Intelligent Peripherals (IP). A Service Management System (SMS) is introduced to manage the IN services. SM S

SD P

SD P SCPI

SCP1 IP

SSP1 U sers

SM S= Se rv ic e M a nag em e nt Sy ste m SD P = Se rv ic e D ata P oin t SS P = S ervice S w itch ing P o int SC P = Service C ontrol P o in t IP = In telligent P eriph eral = D a ta chan nel = S ign allin g = M anag em ent, P ro visioning & c ontrol

SS PK

SS Pk

U sers

U sers

Figure 1. An example IN configuration The increasing number and variety of services being offered has fuelled the demand for greater network capacity. During peak periods of resource usage, an IN can become overloaded with service requests which leads to a degradation in the Quality of Service (QoS) provided by the IN. For example, user calls may be dropped due to buffer overruns, thus significantly reducing network throughput, and consequently increasing the call processing delay. An IN must use a load control algorithm to provide a high level of QoS and protect the network from instability. Current IN load control algorithms can be categorised in a number of ways. For example, algorithms can be categorised by the throttling mechanism they use. A throttling 2

mechanism determines which calls the SSP should accept or reject. Potential throttling mechanisms include a window-based or a rate-based mechanisms. For window-based mechanism, a limit is set on the maximum number of calls that can be simultaneously accepted. Pham and Betts [1] define an algorithm where the SSPs monitor time-outs from the SCP to set the window size. For a rate-based mechanism, a limit is set on the number of new calls in some other time period. Smith [2] investigates a rate-based algorithm known as Automatic Call Gapping (ACG). This algorithm forces a minimum time separation between call requests. Load control algorithms may also be categorised by their triggering mechanism. Bedoy et al. [3] suggest that the SSP can monitor the time interval between sending a service request and an acknowledgement from the SCP. Hac and Gao [4] use a mechanism that is always-on. An always-on algorithm requires continuous periodic updates from the SCP specifying which throttling parameters to use which means that it may be able to respond to sudden overloads quicker. The ACG algorithm monitors the SCP processor utilisation or dropped messages before activating the throttling mechanism. This mechanism requires less processing time than the others but may be slower to respond to a sudden overloads. Algorithms may also be categorised by the way the parameters required by the throttling mechanism are obtained. Pham and Betts [1] and Smith [2] suggest using a dynamic search in which the parameters are adjusted incrementally until an appropriate value is found. Kihl and Nyberg [6] and Lodge et al [5] use optimisation techniques to find the solution to the problems that require more complex information exchange between SSPs and SCPs. Further comparison of these algorithms may be found in [1] and [6]. Many of these algorithms are limited to an architecture where a single service can only be provided by a single SCP. During overload periods this architecture limits the availability 3

of bandwidth and can lead to loss of revenue for the network. Future INs may use a multiservice architecture to offer greater bandwidth availability and flexibility. Kawamura and Sano [7] and Arvidsson et al [8] investigate advanced INs with this feature. However, these algorithms use a centralised controller which reduces the reliability and limits the scope for distributed decision making. Contemporary increases in IN network complexity and information volumes suggest that approaches to the management of telecommunications systems, services and networks will need to be more responsive, adaptive, proactive, and less centralised [14]. These are properties of agents and multi-agent systems; many in the telecommunications research community have recognised that agent-based technology appears to offer a timely solution to the growing problem of designing efficient and flexible network management strategies. Agents have been shown to be an effective tool in the field of distributed resource allocation in general and network traffic control in particular in numerous instances [14][17][18][16]. In this paper we develop a resouce allocation framework that represents the IN load control problem and describe a competitive market-based model for solving this problem. The solution to this model may be found using many different algorithms. We investigate and compare the use of a price-oriented and a resource-oriented algorithm for finding the solution to the market model, in terms of their performance, overhead and other issues related to the practical realisation of market-based schemes. In Section 2 we present the problem of IN load control. In Section 3 we discuss agents and their applicability to real-time IN load control. In Section 4 we present some background on market-based systems and present the computational economy to be investigated. Following this we present the agent architecture in Section 5. In Section 6

4

we discuss issues related to the realisation of the system. In Section 7 we present results and evaluation of the algorithms investigated. Finally, we conclude in Section 8.

2. Load Control of an Intelligent Network The QoS provided by an IN is affected by the utilisation of the SCP processors. Queuing theory shows that, as the SCP processor utilisation approaches its capacity, processing delays increase significantly and buffer overruns are inevitable. An IN load control algorithm tries to limit SCP processor utilisation below a desirable maximum, ! . In our problem formulation, each service type is defined by a single parameter



which

represents the average processing requirement for the service. This simplification may lead any load control algorithm to believe that processor utilisation will change faster than would actually be the case. However, this simplification allows us to minimise the information required to define a service. We can control the processor utilisation by using an input rate selection throttling mechanism. This is a rate-based mechanism that uses a parameter % , which specifies the maximum number of call requests of SL type  that SSP  is allowed send to SCP . The SSPs decide exactly which calls to accept or throttle. We can then estimate the SCP processor utilisation as the total expected use of the SCP divided its capacity, * :

:  1

 ~

2

~ ~

 %

;

(2.1)

*

We can then formalise the problem as the maximisation of the expected revenue generated by the network per second: 1

2

max , *   9 A + %

(2..2)

~ ~

5

1

Such that

2

   %  ! * % ‚ 

Where

D Á Á 

~ ~

D Á Á 

0Á 1 Á 2 ~ The number of SCPs, SL types and SSPs respectively. 9 ~ This is the revenue generated by a call of service  at SSP . A ~ The total number of accepted calls of SL type  at SSP  .

We assume that the values of % are divisible such that an allocation of 1.5 means that the SSP is allowed to send 3 call requests every 2 seconds.

3. Agents in Intelligent Network Load Control Although it is a well-known fact within the agent research community that there is no single-valued, clear-cut definition of an agent, the intersection of every mainstream definition is generally accepted to contain the following characteristics of an agent: (i) autonomy, (ii) communication (with other software, agents, people), and (iii) social behaviour in a community setting. In context, these apply as: Î Autonomy: Each agent acts on behalf of its associated owner (network element) in a self-interested manner. The agent effectively represents and protects the interests of its owner, albeit without continuous monitoring and direction. Each agent may be initially given a set of goals, which will typically mirror the owner's own goals and interests. The agent is then able to intelligently make decisions which will bring it a step closer to realising those goals. Î Communication: Communication is essential in a system such as the one we are considering. Each agent has partial local information at its disposal. To solve the problem, it has to communicate with other agents and combine information to build a (whole or partial) view of the overall system. In fact, communication and, more 6

specifically, the communication language comprises a significant aspect of a multiagent system, because it represents a limiting factor to the agents' expressive abilities. Î Social behaviour: Individual agents in a multi-agent system rarely function independently and ad-hoc. It is typical for an underlying societal structure to be present, which defines agent roles, tasks and responsibilities. Each agent has a certain role in the society and interacts with other agents with the aim of maximising a combination of its own and the society's benefit. In context, this can be derived directly from the market analogy which the system is mirroring. Agents have been successfully applied to the field of distributed resource allocation in general and network traffic control in particular in numerous instances [14][17][18][16]. The main advantages they offer include: Î Agents conceptually provide a higher-level entity which can take the overload control algorithm out of the switching architecture. In this way, the SSPs, SCPs and all other components can be developed independent of the overload protection mechanism to be used. Î Agents can make use of network-level information in making their decisions. A traditional limitation of IN load control strategies is the limited scope of the information available for decision making. Agent informational views of the network, however, do not have this limitation and can range from local to partial global to fully global. Hence, agents are capable of introducing intelligence into the IN far beyond that of traditional IN load control techniques. Î Agents allow different algorithms to be quickly applied as different architectures are introduced without interfering with the lower network layers.

7

Î Agents are owned by the network players, and therefore they can reflect the real-life goals of their owners and hence provide a network solution which is more acceptable for all stakeholders. In an application such as the one we are considering, there are distinct advantages of a multi-agent system as opposed to a single agent solution. There is always a danger of using multi-agent systems as a fashionable substitute for traditional modularisation techniques; that is, to enhance encapsulation or reduce overall system complexity or to simply to take advantages of decentralisation (flexibility, redundancy, parallelism etc.) [13]. Nevertheless, the IN load control problem domain presents the following characteristics [12], which make a multi-agent solution to be an attractive and, indeed, a desirable alternative to traditional approaches: Î The problem is inherently geographically distributed. Î The existing infrastructure contains legacy components (SSPs, SCPs etc.), which must be made to behave or interact in new ways. Î The system can be easily thought of or can be naturally mapped into a society of autonomous, co-operating components. In our case, this mapping comes directly from the real-world market analogy (described in detail in the previous section) the system is modelling. In summary, agent technology presents an attractive vehicle with which to realise IN load control techniques.

4. Market-based Solution for Intelligent Networks 4.1 A comparison of price and resource oriented approachs 8

The problem defined by Equation (2.2) can be converted into a market problem using the market-oriented programming paradigm presented in [9]. A fictional or computational economy is created that represents the problem to be solved. This economy consists of commodities that represent real-life resources and agents that represent the individuals that trade these commodities. Within an economy each commodity is associated with an auctioneer. The objective of the auctioneer is to perform trading of commodities between agents until the preferences of the agents in the network have been satified, when this has occured then the economy is said to have reached a competitive equilibrium. Approaches to finding the equilibrium point of a computational economy can be divided into two broad categories, these are price-oriented and resource-oriented algorithms: Î In a price-oriented algorithm, commodities are associated with prices. Agents exchange commodities, using the price value, until the level of supply and demand is met each commodity. An auctioneer is used to adjust price of commodities. Î In a resource-oriented algorithm; hence individual agents know how much they are prepared to pay for an additional unit of allocation. All the agents send their bids to an auctioneer who adjusts the allocations to equalise the price paid by all agents. Some properties of price and resource-oriented alternatives are identified below: Î Allocations are iteratively adjusted; the allocations for price-oriented algorithms may not be feasible until an equilibrium is reached. For the resource-oriented case, it is possible to find a feasible at each iteration solution. Î Auctioneers, in a resource-oriented algorithm, adjust the allocations for agents. This reduces the scope for distributed decision making. In the price-oriented case, the auctioneer is very simple and the demand bids are generated by the agents.

9

Î Production is the process of converting one commodity into another. In a priceoriented approach, production is possible. For the resource-oriented case, ensuring feasibility at every iteration is more difficult than for a pure exchange economy. 4.2 The computational economy to solve the IN load control problem The computational economy that can be used to solve the problem given by Equation (2.2) is shown in Figure 2. SCP I

S C P1

S L 1 ,J

S L 1 ,1

S L I,1

SSP

S L I,J

M

0

SSP

Figure 2. Market model for IN load control algorithm In Figure 2, the circles represent agents and the rectangles represent markets where commodities may be traded. The directed edges show which agents are active in which markets and the flow of goods within the economy. There are two types of commodities in this economy: Î The first are the SL commodities. In the market labelled :3Á , the agents can buy or sell the right to access SL type  from SCP , i.e., whether they want to increase or decrease values of % . Î The second is the 4 commodity. This represents the total cost of buying an allocation of service logic. If an SSP wants to obtain more service logic it must do so at the expense of "borrowing" more from the 4 market. This is reflected in a lower 10

utility value. Using this economy, the unique pareto optimal solution is also the global system equilibrium [10]. The agents labelled ::7 represent the SSPs in the network. Their objective is to "buy" allocations of service logic from different SCPs given their incoming demand level and the price of the SL commodities. The behaviour of these agents is similar to a consumer in classical economic theory. Their preferences for a particular set of goods, %, is determined by a utility function, < %. The consumers try to maximise this utility given the prices of all of the commodities. The utility function that is used is in our algorithm is: 1

Suggest Documents