You are on page 1of 23

Computer Communications 34 (2011) 898920

Contents lists available at ScienceDirect

Computer Communications
journal homepage: www.elsevier.com/locate/comcom

A simple distributed mechanism for accounting system self-conguration


in next-generation charging and billing
Ralph Khne a,, George Huitema b, Georg Carle c
a

University of Tbingen, Germany


University of Groningen/ TNO Information and Communication Technology, Groningen, The Netherlands
c
Technical University of Munich, Germany
b

a r t i c l e

i n f o

Article history:
Received 24 July 2010
Received in revised form 16 October 2010
Accepted 22 October 2010
Available online 11 November 2010
Keywords:
Charging
Billing
Accounting
Self-conguration
Communication systems

a b s t r a c t
Modern communication systems are becoming increasingly dynamic and complex. In this article a novel
mechanism for next generation charging and billing is presented that enables self-congurability for
accounting systems consisting of heterogeneous components. The mechanism is required to be simple,
effective, efcient, scalable and fault-tolerant. Based on simulation results it is shown that the proposed
simple distributed mechanism is competitive with usual cost-based or random mechanisms under realistic assumptions and up to non-extreme workload situations as well as fullling the posed requirements.
2010 Elsevier B.V. All rights reserved.

1. Introduction
The charging of customers is an essential aspect of any commercially successful network operation and service provisioning.
Charging and billing systems in use today serve up to millions of
pre-paid and post-paid customers employing mainly time-based
and volume-based tariffs as well as at rate pricing to name the
most prominent examples. Their functioning, however, depends
on the accurate, complete and timely collection of relevant
resource consumption data caused by user activities in the
network. This latter process is called accounting and is brought
about by an accounting system normally being comprised of a
large number of heterogeneous accounting resources (meters,
charging trigger functions) distributed in the network and on service-level elements (e.g. gateways, application servers).
In this article we will address accounting systems for use in
next-generation charging and billing. In particular how to achieve
congurability is considered since conguring and administering
the resources of accounting (and charging) systems has always
been a work-intensive task. In order to face the ever-increasing
complexity we foresee that in the years to come accounting systems require more autonomy and intelligence than the congura Corresponding author. Address: Chair of Enterprise Platform and Integration
Concepts, Hasso Plattner Institute, University of Potsdam, August-Bebel-Str. 88,
14482 Potsdam, Germany. Tel.: +49 0 33197 992 567; fax: +49 0 33197 992 579.
E-mail address: ralph.kuehne@computer.org (R. Khne).
0140-3664/$ - see front matter 2010 Elsevier B.V. All rights reserved.
doi:10.1016/j.comcom.2010.10.012

bility approaches followed so far can provide (cf. [1]). Some


examples for such necessitating developments are the xedmobile convergence efforts, the advent of a wide range of new
value-added end-user services enabled by the deployment of the
IP Multimedia Subsystem (IMS) as standardised service control
platform combined with the introduction of service creation
frameworks, as well as ubiquitous computing endeavours. Nextgeneration network and service environments therefore add a high
level of heterogeneity and dynamicity to the accounting processes.
Besides this increase in system complexity, market saturation is
another development in telecommunications networks that is a
pressing issue today. Because of erce competition mostly based
on price, operators are facing decreasing average revenues per user.
As it is not easy to increase customer bases in saturated market
environments, telecommunications companies need to nd other
means to stay protable. Common measures are a cut in operational
and capital expenditures in particular of network management and
operations to which accounting for charging and billing belongs.
For both described developments, adding self-congurability to
accounting systems, i.e. the capability to automatically and
dynamically adapt its conguration to changes in the system itself
or its environment, seems a promising approach to handle increasing complexity and to keep costs under control. This autonomic
property is an aspiration that is often named today with the aim
to ease the burdens of administration and maintenance, to cut
accompanying costs and to guarantee a more efcient and reliable
operation.

R. Khne et al. / Computer Communications 34 (2011) 898920

In the following, we will introduce a novel mechanism for nextgeneration charging and billing that enables self-congurability for
accounting systems (Section 4). After a short overview of related
work (Section 2), we will present requirements towards such a
mechanism and that we claim our mechanism fulls in Section 3.
Based on a simulation study that we describe in Section 5 and
whose results we show in Section 5, we will show that our proposed
mechanism is competitive with usual cost-based or with a random
mechanism under realistic assumptions and up to non-extreme
workload situations as well as fullling the posed requirements.

2. Related work
The adoption and implementation of a new system or mechanism is normally a question of balancing the costs and the benets
of doing so. Additionally, external factors like complying with legal
requirements or meeting customer wishes and demands can also
be important drivers for the introduction of new systems, protocols
or applications. In absence of such factors, replacing an existing
system by a new one will in general be decided by answering the
question whether the new system can provide the same services
or functions at a considerably lower cost or allow for relevant
new or higher quality of the services or functions at the same cost.
In these cases, the existing system is the reference system against
which the new system is compared.
However, for the problem that we address, i.e. the enabling of
self-congurable accounting systems, neither existing nor proposed
solutions exist. In practice, static accounting congurations are still
prevalent that are often implemented as part of the respective services introduction project and are seldom changed afterwards.
Additionally, such changes often encompass a larger modication
and subsequent testing effort. Research projects that have often
built on standardised architectures or solutions of the 3GPP (3rd
Generation Partnership Project, c.f. [2]) or the IETF/IRTF (Internet
Engineering Task Force/Internet Research Task Force, c.f. [35]) with
the aim of further development were directed at congurability of
accounting and charging solutions but did not go beyond that.
Examples with respect to the 3GPP are the CAB (charging,
Accounting, Billing) service [6,7] of the MOBIVAS project (Downloadable Mobile Value-Added-Services through Software Radio
and Switching Integrated Platforms), which implements congurability of both accounting and billing components regarding given
tariffs as well as the service-oriented and convergent charging
architecture [8,9] of the 3GET (3G Evolving Technologies) project
which was developed from scratch to reduce the complexity of
charging in current mobile telecommunication systems by applying policy-based networking methods to congure all aspects of
the system based on tariffs. Regarding IETF/IRTFs AAA (Authentication, Authorisation, Accounting) architecture, we can name as
examples the generic AAAC architecture [1012] of the MobyDick
(Mobility and Differentiated Services in a Future IP Network) project, which resulted in a congurable architecture focussing on offline charging and laying emphasis on the transport level and the
congurability of the corresponding accounting infrastructure, as
well as Daidalos (Designing Advanced network Interfaces for the
Delivery and Administration of Location independent, Optimised
personal Services) whose A4C (Authentication, Authorization,
Accounting, Auditing, and Charging) system [13] builds on the results of Moby Dick by now also addressing service-level charging
and by integrating the online charging mechanism.
Because of this lack of a suitable reference system or more precisely of a reference mechanism from our own problem domain
that could serve as basis for a performance analysis and comparison, we have decided to take a suitable mechanism from a corresponding area of research and apply it to our accounting

899

problem. This decision is based on the fact that extensive related


work that addresses approaches and methods for achieving the
self-conguration or self-management of a target system in dynamic and heterogeneous environments can be found in many different areas, for instance in software engineering (adaptive
applications, e.g. [1416]; service-oriented architectures, e.g.
[1719]), in multi-agent systems (e.g. [20,21]), and in resilient networking (e.g. [22]).
As this related work shows, a wide variety of possibilities exists
to tackle the problem of conguration or self-conguration of a target system. Regarding the mechanism underlying these solutions,
solving an optimisation problem based on the accompanying costs
(or benets) is the technique that we most often found during our
review of potential candidates for a reference system. It also represents one starting point of our investigations into charging and
accounting system self-conguration that we presented in [23].
We did however not follow it up any further as one of our main
objectives was the development of a simple and straightforward
way of accounting system self-conguration not requiring an
extensive pre-conguration.

3. Mechanism requirements and claims


To allow for a commercially successful operation of networks
and provisioning of services in the future, charging and billing solutions will have to be feature-rich. Such a solution allows for a much
better addressing of market needs. In particular, individual demand
can be met with tting customer-specic product offers and loyalty
programmes, thus preventing customer churn as well as preserving
potential revenues by offering a wide variety of services. Note that if
too simplied approaches to this topic are chosen, this may lead to
bit pipe degradation, customer dissatisfaction and problems with
customer protection legislation such as mandatory cost indications.
It also becomes clear nowadays that due to nite supply networks,
the often advocated at pricing approach for reducing charging and
billing complexities is not the ultimate solution but instead operators look for more differentiated pricing.
Therefore we assume that a feature-rich charging and billing
solution will most likely comprise the capability to provide cost
transparency, the capability to allow for online charging as part
of an online-ofine-converged solution, the possibility for an easy
introduction of new, differentiated services, functions that provide
a synchronisation of different charging processes, as well as the
capacity of overall self-congurability.
These features directly impact the requirements of the underlying accounting processes, i.e. the capturing of data about consumption of network and service resources by user activities and its
collection, formatting and transfer. Besides the classical functional requirements as described in [2,24] or [4] such as correctness,
completeness, security, real-timeliness and accountability that are
and will remain absolute necessities for using accounting data for
charging and billing, also a series of non-functional accounting
requirements will be have to fullled in order to realise the
above-mentioned features of future charging and billing systems.
We therefore arrive at a set of (non-functional) requirements
for an accounting system self-conguration mechanism. First, it
should be simple, i.e. the administrative overhead required to
set-up and operate the mechanism shall be as low as possible
without jeopardising the fullment of the other requirements towards the mechanism. Consequently, simplicity leads to inexpensiveness regarding the mechanisms administration. Especially,
complex parameterisations or the input of detailed knowledge
about the accounting domain shall not be required.
Secondly, it should be fault-tolerant, i.e. it should be able to
maintain correct service in the presence of faults. As faults, we will

900

R. Khne et al. / Computer Communications 34 (2011) 898920

consider cases in which the communication between the parts of


the accounting system (accounting resources) is impeded or disrupted. An accounting system self-conguration mechanism
should be able to tolerate such faults to a certain degree. Also failures of parts of the accounting system either by complete breakdown or incorrect behaviour are conceivable but are considered
out of scope of the current discussion.
It should also be scalable, i.e. it should be able to acceptably
retain certain measured system qualities (here: correct and complete accounting data generation, mechanism overhead, system
throughput) as environmental/load or design/structural aspects
that have an impact on these qualities are varied in scale within
expected operational boundaries [25]. In our case, we require load
scalability regarding the number of charged objects and the tariff
complexity, respectively, as well as structural scalability regarding
the number of accounting resources that the accounting system
comprises.
Fourthly, it should be efcient, i.e. it should economically handle the input required or consumed to produce its output and
therefore it should aim at optimising the effort to achieve its objective. This input is in our case the resources that the self-conguration mechanism consumes in order to generate an effective
conguration of the accounting system, or in other words, a conguration that meet the objective of bringing about a continuously
well-functioning and efcient accounting system. As resources
consumed by the self-conguration mechanism we will primarily
consider network bandwidth for communication between the different parts of the accounting system and require it to remain
within acceptable limits.
And nally, it should be effective, i.e. it should produce an output that achieves its given objective (or produces the desired effect). In our case, this means that it should produce
congurations that bring about a continuously well-functioning
and efcient accounting system. The self-conguration mechanism
in this sense congures the accounting system in such a way that it
correctly and completely generates all accounting data required by
the given tariff for charging and billing of subscribers while at the
same time preventing unnecessary generation of data and thereby
optimising system throughput from an accounting point of view.
This latter aspect also relates to charging and billing as unnecessarily or multiply capturing of accounting data would mean a correlation overhead to prevent incorrect debiting of subscribers (c.f.
synchronisation of charging processes above).
Based on these requirements, we have devised and implemented a self-conguration mechanism that we will describe
and evaluate in the subsequent sections. For this mechanism we
will prove the following claims:
(C1) Effectiveness. The distributed self-conguration mechanism
is able to signicantly out-perform an accounting system
with only static/initial conguration, if re-conguration
alternatives exist.
(C2) Efciency. The benets of conducting re-congurations with
the help of a simple distributed mechanism far exceed their
downside. This downside mainly relates to the coordination
overhead that re-congurations require and to erroneous
behaviour of the accounting and charging system (by overbilling or by not billing at all) cause by re-conguration
activities, if the accounting system maintains state and no
specic re-conguration coordination measures are in place.
(C3) Scalability. The distributed self-conguration mechanism
does not forfeit its efciency or its effectiveness, if the size of
the accounting system (number of managed elements) or the
complexity of the tariff (number of charged objects) grows.
(C4) Simplicity. The distributed self-conguration mechanism
does not require administrative parameterisation and main-

tenance but acts based on a simple interaction scheme


between the distributed managers, which returns working
congurations.
(C5) Fault-tolerance.The distributed self-conguration mechanism
is fault-tolerant against message loss affecting the simple
interaction scheme up to high loss ratios without producing
unacceptably ineffective or inefcient congurations.

4. Overview of the simple distributed accounting selfconguration mechanism


In order to become self-conguring an accounting system has to
be extended by functions that can bring about this wanted behaviour. In this article we call these functions conguration managers
and have them control and manage the congurations of the various accounting resources (the entities that actually capture and report user activity) that comprise the accounting system.
Depending on the system design, there may be one or more
conguration managers in the self-conguration system. In a centralised system design, we will nd only one conguration manager, which has global knowledge and authority and decides
about the employment of the available resources in order to serve
the tariffs accounting requirements and the accounting resources
carry out these decisions. The conguration derivation algorithm
that is used for this decision-making will therefore be executed
by the conguration manager by using the available global knowledge about the accounting resources and the interdependencies.
In contrast, a fully distributed system design will comprise one
local conguration manager for each accounting resource. It decides locally and autonomously for its accounting resource. In this
second design approach the different local managers are in a peer
relationship with each other and the overall conguration of the
accounting system is the result of their individual decisions and
their interaction. Consequently, the methods for coordinating
these local decisions must ensure that the overall objective of the
accounting system, i.e. satisfying the requirements of the given tariff, is achieved. The conguration derivation algorithm is therefore
not only an internal execution of a conguration manager as in the
centralised case, but is also based on the interactions of the involved conguration managers as part of a coordination process.
Of course, besides these pure approaches also intermediate
forms are conceivable, in which one conguration manager is
responsible for more than one accounting resource or in which
hierarchies of conguration managers are formed. In any case,
the conguration managers always take the role of managing element, while the accounting resources act as managed elements.

4.1. Mechanism overview


Since simplicity was one of our ve requirements, one important aspect for devising our mechanism was to achieve accounting
system self-congurability without the need for complex parameterisations of the conguration derivation algorithm or of detailed
knowledge about the accounting process and its interdependencies. The mechanism should become as simple as possible without
jeopardising the fullment of the other chosen requirements: efciency, effectiveness, fault-tolerance and scalability.
This rationale lead us to apply a fully distributed mechanism
design and the resulting mechanism which we will call simple
distributed self-conguration mechanism in this article is, in this
sense, the last step of simplication that we were able to make before the mechanism began to exhibit unwanted behaviour, such as
high management overheads or intolerable levels of falsely captured chargeable events.

R. Khne et al. / Computer Communications 34 (2011) 898920

With chargeable event we mean any activity within the communications network that utilises network or service resources
and that an operator may want to charge for [2].
As an illustrative example Fig. 4-1 shows for a simplied 3GPP
Accounting and Charging Architecture for a mobile telecommunications network what is needed for our accounting mechanism (c.f.
[2]). Here the 3GPP architecture is depicted as white background
boxes and the extensions as grey boxes. To each accounting resource (charging trigger function in 3GPP terminology) an already
mentioned Conguration Manager is added. The Tariff Management allows the network operator or provider to specify the pricing
and tarifng that shall be employed, which is then communicated
to the Conguration Managers. The dotted lines show that Conguration Managers are capable to communicate with each other.
Simplicity also becomes apparent in the information that needs
to be externally specied for our mechanism to work. This is on the
one hand the tariff, i.e. the set of chargeable events that need to be
captured and reported by the accounting system in order to charge
and bill subscribers according to this tariff, and on the other hand
the accounting capabilities of the accounting resources comprising
the accounting system. With accounting capabilities we mean the
set of different chargeable events that an accounting resource is
capable of capturing and reporting. Above that, no further information is required and consequently no further information needs to
be dened, for example by a human administrator.
The functionality of our mechanism is realised by a decisionmaking algorithm locally executed by each conguration manager
for its accounting resource and by the exchange of management
messages by which the conguration managers make their local
decisions known. Local decision-making is mainly about accepting
and releasing accounting assignments, i.e. of starting to, continuing
with or stopping with capturing and reporting the occurrence of
chargeable events of a special type that pass the respective
accounting resource. Beside, the algorithm also determines when
management messages are sent.
4.2. Management messages
There are two types of management messages: requirement
messages and conguration messages. While requirement messages are only sent by external entities like a tariff console or other
software that an operator uses to dene tariffs in order to an-

Operators Post
Processing System /
Billing Domain

Charging Gateway
Function

Charging Data
Function

Tariff
Management

Online
Charging
System

Configuration Manager
Accounting Data Forwarding
Accounting Metrics Collection

Charging Trigger Function

Fig. 4-1. Example Simplied 3GPP Accounting and Charging Architecture and its
extensions by the proposed mechanism (adapted from [2]).

901

nounce this new tariff to the self-conguring accounting system,


congurations message are the means of communication and coordination between the conguration managers. In our proposed
mechanism all management messages are always broadcasted
using unreliable communication protocols (e.g. User Datagram
Protocol UDP) in order to keep things simple.
Requirement messages are relatively simple-built as shown in
Fig. 4-2 and comprise only (1) a requirement identier (req-id in
Fig. 4-2) and (2) a list of different chargeable events (c.f. e1  en
in Fig. 4-2) being required for charging and billing subscribers
according to the selected tariff. This comprised set of chargeable
events we therefore call the accounting requirements of the selected tariff. The requirement identier uniquely denotes this tariff
and allows distinguishing between different tariffs if the operator
conducts changes (e.g. adding a new service, changing the charging
model of an existing service from time-based to a volume-based
rate, etc.) and a new requirement message is broadcasted. The sequence of chargeable events in the list following the requirements
identier is never changed for this requirements identier and
each entry in the list completely describes the respective chargeable event such that assignments and a subsequent capturing
and reporting is possible.
Conguration messages in contrast comprise two additional
elds: The resource identier and a condition indicator. As can
be seen from Fig. 4-2, the resource identier eld comes rst comprising the respective accounting resources identier (res-id in
Fig. 4-2). It is followed by the requirement identier which denotes
the requirement message and consequently the tariff to which this
conguration message relates to. This is important as the third
eld is an assignment list that refers entry-wise to the list of required chargeable events contained in the requirement message.
Each entry in the assignment list contains the resource identiers
of those accounting resources to which capturing and reporting
of the respective chargeable event listed in the matching entry of
the requirement message is assigned. Each such entry can contain
no, one or more accounting resource identiers. No contained
identier means that the respective chargeable event is still unassigned, and more than one means that the chargeable event is multiply assigned. Both situations are unwanted, as in the rst case
information required for the charging and billing of subscribers
according to the tariff will not be captured and in the second case,
information will be multiply captured such that an accounting data
correlation is required in order to prevent over-billing subscribers.
The last eld in the conguration message is the condition indicator (ci in Fig. 4-2) which describes the accounting resources current status that generated this conguration message. The
condition indicator represents an abstract description of the
respective accounting resources well-being which can, for instance, be dependent on the status of its constituent hardware
components or on the current load induced by user activities. In
our case, the latter has been chosen.
4.3. Decision-making algorithm
The algorithm of the simple distributed self-conguration
mechanism mainly determines the behaviour of the conguration
managers in two ways:
(1) it determines their reaction on incoming management messages (both requirement and conguration messages) which
is mainly a decision-making regarding the assignment of
chargeable events, and
(2) it determines the sending frequency of conguration messages, i.e. the interval between sending two subsequent
conguration messages by the conguration manager itself
(re-send interval)

902

R. Khne et al. / Computer Communications 34 (2011) 898920

res-id

req-id

assignment list
1

list entries

ci

res1, res4,

e1

req-id

e2

e3

entry i containing 0..*


assigned accounting
resources to e i

en

Fig. 4-2. Management message types of the simple distributed self-conguration mechanism.

For each chargeable event ei in the assignment list that its


accounting resource supports, the conguration manager A checks
whether the current assignment of the chargeable event ei corresponds to the result of the precedence relation regarding conguration manager B and sets the assignments in its conguration
message MCONF,A as described above. If all chargeable events have
been processed, the potentially changed conguration message
MCONF,A is saved and the received conguration message MCONF,A
is discarded.
Depending on whether this checking has lead to relevant changes
i.e. assignments or de-assignments that directly inuence its
accounting resource in the assignment list of conguration message MCONF,A, another algorithm parameter is adapted that inuences the re-sending (re-send interval) of the conguration
message MCONF,A, namely the attenuation factor x. However, the conguration message MCONF,A will not be directly broadcasted but
when the current re-send interval has expired. This is why the actual
re-sending of messages is not included in the gure as this action is
time-driven and takes place when the current re-send interval expires. Also only at this point the new re-send interval is calculated.
Besides, emergency situations may override these calculations.

The mechanism is initiated when a requirement message is


broadcasted in the network, i.e. the operator has dened a new tariff and requests the conguration of the accounting system
accordingly.
4.3.1. Conguration decision-making
Whenever a conguration manager receives a new requirement
message (i.e. having a new requirement identier), it generates an
initial conguration message and sets the resource identier and
requirement identier elds. Additionally, the accounting resource
must add its resource identier to the assignment lists entries for
each chargeable event for which it has respective accounting capabilities. Consequently, for each supported chargeable event, the
assignment list in the initial conguration message contains the
identier of the generating accounting resource. The condition
indicator eld is left empty for now and its generation has been
completed, this initial conguration message is directly broadcasted. The sending conguration manager also retains the information of the sent conguration massage.
When a conguration manager A (having itself generated a conguration message MCONF,A upon receiving the currently valid
requirement message) now or at any later point in time receives
a conguration message MCONF,B from another conguration manager B, it carries out the principal part of our decision-making algorithm which we have depicted in Fig. 4-3.
A central role for this algorithm plays a precedence relation. The
actual form of this preference relation depends on the mechanism
phase that we will discuss in the next section. For now, let the preference relation be the conguration managers means to determine
whether it shall take the responsibility for capturing and reporting
a chargeable event ei (i.e. it will congure the accounting resource,
which it manages, to capturing and reporting the occurrence of this
chargeable event) or not. In the latter case, the conguration manager will relinquish the responsibility for the respective chargeable
event, if this chargeable event is currently assigned to itself. Of
course, assignment is only possible if the corresponding accounting
resource has accounting capabilities for the respective chargeable
event ei.

4.3.2. Sending intervals of conguration messages


In general, re-send intervals in our simple distributed self-conguration mechanism dene the time span between sending two
subsequent conguration messages MCONF,A by a conguration
manager A by which it announces its accounting resources current
conguration and status.
The actual re-send intervals of the conguration managers depend in all on three parameters:
 the initial re-send interval Dtinitial that is set in each accounting
resource at start-up time and that is never changed afterwards.
It denotes the shortest interval between the sending of two subsequent conguration messages and is a compromise between
faster reactions for a shorter minimal interval and less message
overhead for longer minimal intervals (in the current implementation Dtinitial = 2 s),

A receives MCONF, B from B.


For all e i in assignment list of MCONF,B for which B responsible
A supports ei ?

yes

A takes precedence over B?


no

yes

A responsible for e i in MCONF,A ?


yes

no

B takes precedence over A?


no

yes

Set responsibles for e i in


assignment list of MCONF,A
to that of MCONF,B .

Set A and B as
responsible for e i in
assignment list of
MCONF,A if not already set.

Set responsibles
for e i in assignment
list of MCONF,A to
that of MCONF,B .

Add A as
responsible for e i in
assignment list of
MCONF,A and remove
B if contained.

(in the used implementation,


equality is not possible)

If configuration of A did not undergo relevant changes, doubl e attenuation factor x. Otherwise reset x to 1.
Save MCONF, A . Discard M CONF, B .
Fig. 4-3. Decision-making algorithm.

no

Set responsibles
for e i in assignment
list of MCONF,A to
that of MCONF,B .

R. Khne et al. / Computer Communications 34 (2011) 898920

 the condition indicator (ci) that describes an accounting


resources current status taking values from 0 (very bad) to 10
(very good) and which thereby introduces a status-dependent
factor to the re-send interval calculation, and
 the already mentioned attenuation factor x that reects the idea
that announcing ones conguration i.e. re-sending the conguration message MCONF only serves its purpose, if this conguration has changed. Otherwise the recipients do not gain new
information by a re-sending; rather, only network resources
are wasted.
Based on the values of these parameters, conguration managers calculate their current re-send interval for sending conguration messages that have been generated as described above
when conguration messages from other accounting resources
arrive.
The calculation formula is as follows:

Dt resend Dt initial 3  ci x
The resulting re-send behaviour of a conguration manager is
therefore in principle characterised by the managers sending more
conguration messages when its accounting resources condition
indicator gets lower, i.e. the status of the accounting resource is
deteriorating, and sending less conguration messages when the
condition indicator is higher, i.e. the status is better. The rationale
behind this is that a resource, having a low condition indicator
which means a high load, for instance, should actively try to change
its bad situation by announcing its conguration such that suitable other accounting resources with a better status and hence a
higher condition indicator can take over parts or all the accounting
load that the rst accounting resource cannot handle. If, in contrast,
an accounting resource has a better condition, rapid action is not required, such that sending in longer intervals is not a problem.
In order to achieve a greater weight for the accounting resources current condition, the multiplier for the condition indicator ci was introduced. When we ignore the attenuation factor for
the moment by assuming x = 0, this results in re-send intervals always taking values from two to 32 seconds. If the resources situation is really bad, it will announce this every two seconds. In the
other extreme, when its status is excellent, the accounting resource
will do so every 32 seconds.
Announcing a negative state however only makes sense, if it can
be remedied, i.e. if there are other accounting resources in a better
load situation (condition) to which chargeable events can be reassigned. If, on the other hand, all suitable accounting resources
have a similar status (i.e. equal condition indicator), re-sending
conguration messages has no effect since according to our algorithm re-assignments will not take place.
When the accounting system is under considerable stress such a
behaviour may even exacerbates the situation further by having
conguration messages sent which have to be generated, sent, received and processed but which will have no effect. To prevent
such inefciencies or even a counterproductive behaviour, we have
additionally introduced the already mentioned attenuation factor
x, which has a mediating inuence on this condition-driven resending behaviour.
Initially, the attenuation factor x is set to zero, i.e. the re-send
interval only depends on the accounting resources current condition indicator ci. However, whenever a conguration manager
broadcasts its conguration message without having conducted
relevant changes in its assignment list during the re-send interval
below, it doubles the current value of the attenuation factor (when
x = 0, x is set to 1). This increases the re-send interval.
Each time a conguration manager sends a conguration message, it sets tsend,last to the current point in time, re-calculates the

903

re-send interval and sets tsend,next, i.e. the point in time when resending will take place next, according to the following formula:

tsend;next t send;last Dt resend


As the attenuation factor x signicantly dominates the re-send
behaviour of a conguration manager if no relevant changes occur
for some time, situations may arise in which the next re-sending
time points to a distant future while current developments require
immediate action. An example for such a development is a sudden
drop of the accounting resources status, i.e. of its condition indicator. This may, for instance, be caused by a dramatic load increase in
the network or because of device faults in the accounting resource
itself. In such cases, an emergency reset of the attenuation factor x
back to zero will take place, which includes a re-calculation of the
next re-sending time. If this calculation returns a past point in time,
the accounting resource immediately sends its conguration message announcing the emergency situation. Such an emergency situation handling is implemented by the actual accounting resources
issuing a warning to its conguration manager.
4.4. Mechanism phases
The self-conguration mechanism distinguishes two phases
that are represented in the conguration messages and impact
the way in which the preference relation is applied. These two
phases are the start-up phase and the operation phase:
(1) the start-up phase primarily tries to nd a feasible conguration of the accounting system as fast as possible;
(2) the operation phase aims at permanently adapting the congurations to changing load situations and resource
availability.
Despite this differentiation, both phases use in principle the
same algorithm and calculate the re-send intervals in the same
way. As just mentioned, the differences rather lie in the preference
relation that is applied in the decision-making algorithm and in the
role that the condition indicator plays for it.
During the start-up phase, precedence of chargeable event
assignment is determined in a straight-forward way without taking any status-related information into account. Only the resource
identier, which is contained in any conguration message, is considered. The higher the resource identier the higher is the precedence of the respective accounting resource. As resource identiers
are unique, simply comparing them and deciding on this basis
which accounting resource is initially responsible for capturing
and reporting a chargeable event can swiftly be accomplished
and by this way, a feasible conguration can be derived without
much effort. Consequently, the initial conguration that results
from the start-up phase is characterised by each required chargeable event being assigned to that accounting resource that has
the highest identier of all accounting resources that support this
chargeable event. During the start-up phase, a conguration manager does not add its accounting resources current condition indicator to the conguration messages it broadcasts.
After switching to the operation phase, this very simple realisation of a precedence relation is replaced by a status-driven one.
From this point on, an accounting resource determines precedence
when receiving a conguration message by comparing on its own
current condition indicator and the one of the one contained in the
received message. Consequently, the condition indicator is added
to any broadcasted conguration message.
Precedence of an arbitrary accounting resource A above another
accounting resource B is then given, if As current condition indicator is higher than Bs. This can nevertheless be determined by a
simple numeric comparison. In case that both resources have the

904

R. Khne et al. / Computer Communications 34 (2011) 898920

same condition indicator, the resource identiers are again drawn


onto in order to guarantee an unambiguous result and thereby that
each chargeable event is assigned exactly once.
The second major difference between start-up and operation
phase is the re-assignment behaviour of the conguration managers. While a conguration manager whose accounting resource
takes precedence over another will take over all chargeable events
currently being assigned to this other accounting resource, the reassignment behaviour during the operation phase is much less
greedy. Rather, it will only take over one of the affected chargeable
events, which is furthermore randomly selected. This reects the
different aims of the mechanism phases, namely quick realisation
of a feasible conguration versus the permanent adaptation of congurations to changing conditions.
Initially, i.e. whenever a new requirement message was processed, an accounting resource and its conguration manager,
respectively, are in the start-up phase. Subsequently sent conguration messages contain no condition indicator which signies
being in the start-up phase to other conguration managers. Precedence is determined based on resource identiers and the reassignment behaviour is greedy.
If the conguration manager then receives a conguration message from another conguration manager that has all chargeable
events required for the currently given tariff assigned to arbitrary
accounting resources and for which the conguration manager
does not need to conduct relevant changes to its assignment list
(i.e. it does not assign or de-assign a chargeable event to or from
itself), it switches to the operation phase. This means, precedence
determination is now based on status (the condition indicator)
and the re-assignment behaviour is not greedy anymore.
As this switching takes place on a per-conguration manager
basis, not all managers will switch at the same time. It is therefore
possible that a conguration manager, which is already in the
operation phase, will receive a conguration message from another
manager that is still in the start-up phase (no condition indicator
set). In this case, the receiving conguration manager acts as if
the sending conguration manager were also already in the operation phase, i.e. according to the phase in which it is actually in.
The same holds for managers in start-up phase that receive conguration messages with set condition indicator. In both cases, however, the sending conguration manager will always take
precedence over the receiving. After switching to the operation
phase, a conguration manager cannot switch back to the startup phase on its own accord or because of incoming conguration
messages.

5. Set-up of the performance evaluation


In order to investigate whether the described accounting system self-conguration mechanism works and also fulls the stated
requirements, we have implemented it using the Java programming language and then conducted a simulation study. The simulation environment is also Java-based and allows executing trafc
models on communication networks. These networks consist of
accounting resources and the trafc is abstracted to chargeable
events that pass the network (the workload). Chargeable events
consequently represent user activities in the network that need
to be charged and billed.
Thus these chargeable events are processed and forwarded by
the accounting processes. If an accounting resource is busy, the
arriving chargeable event is added to the accounting resources
waiting queue (buffer). For the capacity of these waiting queues,
we assumed a typical operator/provider that wants to avoid dropping of chargeable events up to very high load levels. Therefore the
capacity of each queue is dimensioned to the theoretic steady state

queue length behaviour (c.f. [26], for instance) at 99.75% load, the
latters depending on the workload model (exponentially distributed arrival rates of chargeable events) and the network model
(mean and standard deviation of the normally distributed processing times of the different accounting resources). If the waiting
queue of an accounting resource is already full, the arriving chargeable event is marked as dropped and removed from the network.
When an accounting resource processes a chargeable event, this
processing incurs a certain delay in forwarding this event (service
rate/processing time). This delay depends on the number of assigned chargeable events to this accounting resource. Each assignment adds a certain additional delay to the base delay that the
accounting resource incurs on a passing chargeable event. The base
delay itself is however independent of the number of chargeable
events that are assigned to the respective accounting resource.
The dimensioning of the accounting resources regarding this base
delay and the additional delays is selected in such a way that the
arrival rates of the chargeable events given by the respective workload scenario can be handled as long as certain load levels are not
exceeded (c.f. Section 5.1 for details about the employed workload
scenarios).
If the currently processed chargeable event matches one of the
assigned accounting tasks, capturing and reporting takes place.
After processing is completed, the respective accounting resource
forwards the chargeable event to the next accounting resource
on its path where this procedure is repeated. If, however, the path
is empty, the current accounting resource was the nal processor
of the event and the chargeable event leaves the system.
Besides, the simulation environment comprises an API (Application Programming Interface) via which conguration managers can
interact with and control their corresponding accounting resources
as well as interact with each other while simulation time
progresses.

5.1. Network models and workload scenarios


In general the workload consists of a list or description of service requests to the system under consideration[27] In our case,
these service requests are modelled as chargeable events representing user activities and arriving at accounting resources. The
accounting resources need to process these chargeable events in
order to determine whether they need to be captured and reported.
Capturing and reporting a set of chargeable events according to
their conguration is the service they provide. As we employ simulation as evaluation technique, we will only use synthetic workloads in our performance analysis, i.e. a model representation of
a real workload.
For our performance analysis to have a broader scope and to
gain a deeper insight into the workings of the self-conguration
mechanisms under consideration, we have designed four synthetic
workload scenarios and called them the Flat, the Normal Day,
the Public Event and the Synthetic scenario. All are characterised by a basic overall arrival rate of chargeable events that is
superimposed by activity peaks for a restricted set or all types of
chargeable events in the latter two workload scenarios.
Fig. 5-1 shows the daily development of the arrival rates including the peaks. The shown values are normalised with 1.0 being the
maximum normal load, i.e. the load that is maximally to be expected when the accounting systems resources are dimensioned
(i.e. when the service rates of the accounting resource types are
established) in the network models.
The Flat scenario is the simplest of the employed scenarios as
it imposes a constant average load on the accounting system. As
this load is at 80% of the dimensioned capacity of the accounting
system, no re-congurations should normally be necessary.

R. Khne et al. / Computer Communications 34 (2011) 898920

905

Fig. 5-1. Workload scenario overview.

The Normal Day scenario resembles average usage characteristics of an actual mobile telecommunications network with minimal load during the early morning hours and highest load in the
late afternoon and early evening. It is therefore the most realistic
of the employed scenarios. Obviously, slightly different shapes
are conceivable for this curve, but experiments did not lead to signicantly different results as long as the load factors over the day
remained within the shown range.
The Public Event and Synthetic scenarios check the respective mechanisms ability to handle load peaks. The former, which
may represent an event of public interest such as a soccer or football nal, comprises a considerable peak (160% of dimensioned
capacity) of long duration (two hours), while the Synthetic scenario consists of frequent peaks (every hour) with lesser amplitude
(130% of dimensioned load) and shorter duration (15 min) in order
to constantly stress the evaluated mechanisms.
We used two different network models for our performance
evaluation. The rst one, we called the mobile telecommunications network (see Fig. 5-2) which resembles a third generation
mobile telecommunication network in use today. It comprises in
all ten end-user services and ten corresponding types of network
elements. For each network element type an accounting resource
is present.
One accounting resource type belongs to the bearer/network level (Gateway GW), two types to the subsystem/control level
(Serving-Call Session Control Function S-CSCF, Media Resource
Function ControllerMRFC) and eight types to the service/application level (Multimedia Messaging Server MMS, File, E-Mail, In-

stant Messaging IM, Video, Push-to-Talk over Cellular PoC,


Games). Since the latter ve types of the service-level resources
are IMS (IP Multimedia Subsystem) services, the S-CSCF is involved
in the provisioning of their respective services, i.e. chargeable
events belonging to these services pass both the S-CSCF and the
respective servers. The bearer level resource is of course involved
in the rendering of all services as it is responsible for making the
required bearer resources and characteristics available, i.e. all
chargeable events pass such elements and the corresponding
accounting resources, respectively. All accounting resources have
been dimensioned not to experience utilisation levels greater than
80% while load (i.e. the arrival rate of chargeable events) remains
within normal, expected limits (c.f. maximum normal load above).
The GWs accounting resource has gotten an additional capacity reserve to take over roughly either ten service-level or 20 subsystemlevel chargeable events and the S-CSCFs accounting resource 10
service-level events without running the risk of exceeding a utilisation level of 80%.
In all 28 different types of chargeable events were dened for
the mobile telecommunications network model and its ten services. Examples are Message Sent and Message received for
the Instant Messaging Service, MMS Sent and MMS Received
for the Multimedia Messaging Service or Call Session Established,
Call Session Modied and Call Session Terminated for IP Telephony (connecting to the Public Switched Telephone Network
PSTN or within the mobile network).
The second communication network model, which we called on
in our performance analysis, we named generic network (see

906

R. Khne et al. / Computer Communications 34 (2011) 898920

IM

Video

PoC

Games

IP Telephony

PSTN
S-CSCF

GW

MMS

File

MRFC

Multimedia
Teleconferencing

Internet

Internet Access

E-Mail

Fig. 5-2. Mobile telecommunications network model.

R9

R10

R11

R12

R13

R14

R15
R16
R17

R4

R18
R19

R5

R20
R1

R2

R3

R21

R6

R22
R23

R7

R24
R25

R8

R26
R27

R33

R32

R31

R30

R29

R28

Fig. 5-3. Generic network model.

Fig. 5-3). It is much larger than the mobile telecommunications


network model with its 33 accounting resources of different type
(R1R33) and in all 120 chargeable event of different type (E1
E120). The various accounting resources in the model are grouped
into bearer/network-level (R1R3), subsystem/control-level (R4
R8) and service/application-level types (R9R33) again.
The 120 different types of chargeable events are not grouped
into services but each is generically assigned to one of the account-

ing resources corresponding network elements. This leads to 25


bearer-level, 23 subsystem-level and 72 service-level different
chargeable events for this network model.
The dimensioning of the accounting system resembles the one
of the mobile telecommunications network model with the exception that the bearer-and subsystem-level accounting resources
may take over about half of all chargeable events, which they supports with corresponding capabilities.

907

R. Khne et al. / Computer Communications 34 (2011) 898920

5.2. Reference mechanisms


As the rst reference mechanism we opted for an cost optimisation-based approach and as the work of Poladian et al. [14] is directed at a quite similar problem (cf. Section 2), we chose their
approach to lend its principles for this rst reference mechanism.
As second reference mechanism we selected a very simple approach, namely that of random assignment of accounting tasks to
accounting resources. It serves as cross-check for the other mechanisms, since if randomly assigning chargeable events returns better results than the directed and assumedly more intelligent
activities of a (self-) conguration mechanism, the latter needs to
be subjected to close scrutiny and its real-life applicability needs
to be severely questioned.
As we did not only want to compare random and directed approaches, but also investigate the benets and downsides of automatic re-congurations during system run-time in order to adapt
to changing situations, we also included static variants of the
two reference mechanisms. This means that only initial congurations are derived at the beginning (when the tariff is dened and
made known to the accounting system) and not changed afterwards no matter what the situation in the accounting system
may be.
This lead us to in all four reference mechanisms against which
we compared our simple distributed self-conguration approach
during the performance analysis. Table 5-1 wraps up the similarity
and differences of all considered mechanisms. Before we continue
with the actual performance analysis we will shortly describe the
reference mechanisms in more detail.
5.2.1. Cost-based mechanisms
In their work Poladian et al. (c.f. [28,14] and [29]) address the
problem of adapting computing systems in dynamic environments
in order to carry out user-dened tasks. Their problem domain is
characterised by applications running on hardware resources that
are capable of providing services on different quality levels and
by user-dened tasks that require the execution of certain services
on a task-dependent quality level. The problem to be solved is
therefore the selection of suitable applications to provide the service required to complete the user-dened task (e.g. playing a video in a certain codec, allow for cooperative work including
interactivity such as chat) and the assignment of computing or networking resources to these applications (e.g. CPU, network bandwidth) in order to ensure the required quality level (e.g. frame
rate, audio quality, quickness of propagation of changes on a document). A resulting selection, i.e. assigning applications to the services required for a user-dened task including their quality level,
is called a conguration. To guide the selection process of a cong-

uration or of sequence of congurations in case that the situation


changes and a re-conguration becomes necessary or reasonable,
a utility function is dened and the objective of the derived optimisation problem is to maximise the utility over the duration of the
user-dened tasks execution.
By now transferring and adapting this original problem to our
problem domain, we arrive at one of the aimed at reference systems. The place of the original applications is taken by the different
types of accounting resources that are capable of providing a specic service. The service in our sense is the capturing and reporting
of chargeable events that are required to charge and bill customers
according to a given operator tariff. Consequently, the original
user-dened tasks become the accounting tasks of capturing and
reporting certain chargeable events derived from the operator tariff. As equivalent for the utility function applied by Poladian et al.
to reach conguration decisions we introduce a cost function that
represents the consumption of computing resources for capturing
and reporting chargeable events on the different types of accounting resources. These costs are based on the notion that capturing
chargeable events requires a different effort depending on the
charging levels (bearer/network, subsystem/control, or service/
application) on which the accounting resource operates in relation
to the charging level on which the chargeable event occurs. For
instance, capturing a service-level event, like clicking a specic
hyperlink, on the bearer/network level (e.g. on a GGSN Gateway
GPRS Support Node) by means of deep packet inspection requires
more effort than capturing the same event on the service level
(e.g. on the Web server) directly where accounting subroutines
are called when the respective service logic is executed.
The objective of conguration decision-making, i.e. for the costbased mechanism of solving an cost-optimisation problem, is to
assign chargeable events to accounting resource types in such a
way that the overall resulting cost of capturing and reporting the
chargeable events required for the given operator tariff is minimised.
In the cost-based reference mechanism we have thereby replaced
Poladian et al.s utility maximisation by a cost minimisation. This
is respectively done by a centralised entitiy. In our case, we again call
it conguration manager.
A difference between the original solution of Poladian et al. and
our derived reference system is the pre-knowledge about the
amount of resources that the execution of an application will consume on a resource. This amount is exactly known in the original
solution such that conguration decisions can ensure that additionally assigned application executions to carry out user-dened
tasks do not exceed the respective resources capacity. A resulting
conguration will therefore always be feasible regarding the resource capacity and resource overload will not occur (assuming
no partial failures of resources occur). This is however not the case

Table 5-1
Overview of conguration mechanisms used in the performance analysis.
Criterion

Mechanism
Random initial

How is conguration
logic realised?
How are decisions about
(re-) assignments made?
When will re-congurations
take place?

Random re-conguring Cost-based initial

Cost-based re-conguring Simple distributed

Centralised manager Centralised manager

Centralised manager Centralised manager

Randomly, but
capability aware
Never, only
initial conguration

Randomly, but
capability aware
When resources
report overload

Optimised based
on accounting costs
Never, only initial
conguration

Optimised based
on accounting costs
When resources
report overload

None

Costs need to
be pre-dened
No re-conguration

costs need to
be pre-dened
The event per
overload resource
type that incurs
the highest cost

What is the administration


None
effort of the mechanism?
During re-conguration
No re-conguration
what is re-assigned?

One randomly selected


event per overload
resource type

Distributed on accounting resources,


by resource interaction
Based on resource condition
exchanged during interaction
During regular interactions
between resources as well as
in case of overload
None
During initialisation phase all
events, during operation phase
only one randomly selected
per interaction

908

R. Khne et al. / Computer Communications 34 (2011) 898920

for our cost-based reference mechanism. Here, the actual load of an


accounting resource (i.e. the number of chargeable events that arrive during a certain time span) induced by subscriber activity is
not exactly known as it might unforeseeably change over time.
The ability to revise former decisions is therefore an important aspect in the cost-based reference system and is realised by re-conguration capabilities. In the following, we will call this reference
mechanism cost-based re-conguring.
The variant of this mechanism with this re-conguration capabilities we will call the cost-based initial mechanism. It comprises the same cost-minimising problem-solving but without
the ability to later revise its initial conguration decision. Both variant behave the same until the point where the re-conguring one
decides to conduct changes in the conguration by deriving a new
cost-minimal conguration taking the changed situation in the
accounting system into account.
Re-congurations in this sense are always initiated by accounting resources that contact their conguration manager to issue
overload warning reports that indicate a potential need of re-conguration. As both cost-based approaches are centralised ones, all
accounting resources have the same centralised conguration
manager.
Whenever this conguration manager decides to conduct a reconguration of its accounting resources for instance, when
one or more accounting resources issue overload warnings and
the centralised manager is not within a re-conguration hysteresis
phase or when the operator conducts tariff changes or adds new
accounting resources to the accounting system its solves the
cost-minimising optimisation problem. An overloaded accounting
resource type is thereby always relieved of one accounting task,
namely the one that incurs the highest accounting costs and for
which an alternative accounting resource type exists that can take
over this accounting task. If no alternatives exist, the current conguration remains unchanged despite the overload situation. In
case that a new conguration is found, it is enforced, i.e. the conguration manager assigns the accounting tasks to the newly selected accounting resource types and relieves the formerly
responsible accounting resource types. After conducting such a
re-assignment, the accounting task, of which the overloaded
accounting resource type is relieved, is not to be re-assigned to this
accounting resource for a pre-dened time span (currently
30 min). Additionally, the centralised conguration manager will
enter into a hysteresis phase (currently 10 min) during which all
incoming warning reports are ignored. This gives the new conguration time to take effect.
5.2.2. Random mechanisms
As two more reference mechanisms, we also added mechanisms
with random decision-making to our performance analysis and
mechanism comparison. Both are centralised mechanisms that
conduct random assignments of chargeable events to accounting
resources. The rst variant that we will call random initial mechanism in the following, has the centralised conguration manager
only congure the accounting system once at system start-up and
this conguration is maintained until the operator tariff changes.
The second variant has re-conguration capabilities and we therefore will call it random re-conguring mechanism in the subsequent sections.
In both cases, conguration means a random selection of
accounting resource type to capture and report the required
chargeable events without considering any further event-or resource-related aspects. Respective accounting capabilities for the
corresponding chargeable events are however taken into consideration. Random does consequently not mean assigning accounting
tasks to accounting resources that cannot capture and report the
respective chargeable events.

Again, both the random initial and the random re-conguring


mechanism behave exactly the same until the latter one decides
to conduct re-congurations. While the random initial approach
sticks by its initially selected conguration, the random re-conguring mechanism will potentially react to overload warnings received from the accounting system and start a re-conguration.
During this re-conguration each overloaded resource will be relieved of one of the chargeable events currently assigned to. In contrast to the cost-based re-conguring mechanism where the
chargeable event that incurs the highest costs will be released,
the random re-conguring mechanism will randomly select one.
During a re-conguration run, no chargeable events will be newly
assigned to overloaded accounting resources. If, however, no alternative accounting resource is found to take the chargeable event,
the original accounting resource that is now in overload will have
to stick to its original obligations of capturing and reporting the
respective chargeable event even if this is not possible to the full
extent anymore. In this last aspect, all conguration mechanisms
considered in this work resemble each other.
6. Performance evaluation results
Based on the described network and workload models we conducted a performance evaluation to compare our proposed simple
distributed self-conguration mechanisms with the four previously introduced reference mechanisms. To this end each of the
mechanisms was applied in a simulation study to congure and
control the accounting systems of the two network models (mobile
telecommunications network and generic network) while these
network models were consecutively subjected to the four described workload scenarios (at, normal day, public event,
synthetic).
The simulation study was conducted applying the method of
independent replications (for each simulation run a different set
of independent random numbers is used) in order to avoid overoptimistic condence intervals and thereby a reduced validity of
conclusions gained from a simulation study; intelligent initialisation (each simulation run is split into two phases: an initialisation
phase and a data-collection phase. The rst phase only serves the
purpose to reach a state that represents long-term conditions; in
our case both phases comprised one whole day in simulation time)
to circumvent articial or un-realistic initial conditions that may
also distort gained results; as well as correlated sampling (when
conducting the same simulation run for each simulation model
the same random numbers are used for each mechanism) to reduce
the required number of runs in a simulation experiment before signicant condence intervals are obtained (c.f. [26]).
Before beginning with the actual simulation study we also
cross-checked our simulation environment by comparing results
for a number of network and workload layouts with respective results when applying analytical modelling (c.f. queuing theory) and
thereby veried its implementation by not nding statistically signicant differences.
In the following, we now present the actual results of our performance evaluation and comparison organised based on our
requirements introduced in Section 3, respectively.
6.1. Effectiveness
A considered mechanism is effective if it is able to produce and
maintain congurations that bring about a continuously well-functioning and efcient accounting system. With this we mean that it
correctly and completely captures and reports all occurring chargeable events required for the given operator tariff while this tariff is
in effect and without producing surplus data that is not required by

R. Khne et al. / Computer Communications 34 (2011) 898920

it or even makes a correlation necessary in order to prevent overbilling subscribers. This represents the desired effect of the mechanisms application.
As performance metrics to measure the effectiveness of the considered ve mechanisms, we selected the number of dropped
chargeable events, the number of incorrectly handled chargeable
events during the simulation runs.
Chargeable events dropped by the accounting system because
the number of incoming chargeable events could not be handled
and buffer overow occurred are recorded by the dropped chargeable events metric. With respect to interpreting this metric we have
however to differentiate between cases where the number of generated chargeable events so much exceeded the capacities of the
accounting system that there existed no alternative conguration
that could have produced less dropped chargeable event and cases
where the dropping was a result of badly conguring the
accounting system. The idea behind this differentiation is that
the conguration mechanism should be able to derive good congurations that prevent the dropping of chargeable events as long
as possible by intelligently and efciently distributing accounting
tasks on capable accounting resources. Only in this second case,
the dropped events metric is an indicator for mechanism effectiveness. As the number of incoming chargeable events is however the
same for all ve considered mechanisms with respect to a workload scenario applied to a network model, this metric (and the
other two as well) allows comparing the effectiveness of the
respective mechanism in the simulated situation.
The incorrectly handled chargeable events metric covers the
chargeable events that successfully passed the accounting system
(i.e. without being dropped) but were not correctly captured and
reported by accounting resources, i.e. they have either been captured and reported more once or nor not at all. In the rst case,
the danger of over-billing the subscriber exists if no countermeasures are taken, for instance by accounting data correlation. In
the latter case, revenue gets lost for the service provider as the service has been rendered to a user but no accounting data is available
for charging and billing it. Reasons for incorrectly handling chargeable events can be derived congurations that are incomplete or
incorrect but also the re-conguration process itself. In the latter
case, the actual conguration of the system does temporarily not

909

represent the conguration that the conguration manager(s)


determined, because changes do not take effect instantaneously
but take a certain time before all involved accounting resources
are informed and the changes are implemented. This is one of
the downsides of dynamic re-congurations regarding effectiveness when no additional coordination measures are employed. Its
actual impact on effectiveness will become visible in the incorrectly handled chargeable events metric.
During our simulation study, we consequently collected data for
these two performance metrics in order to judge the effectiveness
of the considered mechanisms. For the dropped chargeable events
metric we came to the general conclusion that the re-conguring
mechanisms have the potential to clearly outperform their initial/static counterparts and that our proposed mechanism fared
well in most workload scenarios irrespective of network size.
Two examples where it left behind its competitors in particular
were the public event scenario applied to the mobile telecommunications network model (Fig. 6-1) and the synthetic scenario applied to the generic network model (Fig. 6-2).
In the other simulation experiments, our simple distributed
mechanism did out outshine the other mechanism to that extent
for the dropped event metrics, but could always return results
comparable to the best other mechanisms.
Another major nding of this investigation was that there are
factors that can impede or even nullify the advantages of re-congurability. In the simulation study we have seen that these impeding factors can be ascribed to mainly two reasons: namely (1)
lack of alternatives and (2) mechanism insufciencies.
With lack of alternatives we mean any situation in which a dynamic mechanism is prevented from conducting re-congurations
by having no alternative accounting resources available that could
currently take over accounting tasks. Besides the actual absence of
an alternative accounting resource, another aspect that can make
a re-conguration infeasible or questionable is the current load situation. If in an overload situation there exists no supporting
accounting resource that itself is not equally overloaded as the
original accounting resource, a dynamic mechanism also lacks
re-conguration alternatives and has to stick to its initial conguration as a static mechanism always has to. This situation is however
restricted to higher load scenarios and leads to smaller or even

Fig. 6-1. Dropped chargeable events for Scenario 3 Public Event in Mobile Telecom. Network.

910

R. Khne et al. / Computer Communications 34 (2011) 898920

Fig. 6-2. Dropped chargeable events for Scenario 4 Synthetic in generic network.

statistically insignicant differences between re-conguring and


initial mechanisms.
The second reason mechanism insufciencies relates to the
functioning of the mechanisms themselves. The primary example
where this reason became apparent in our simulation study is
the inability of the cost-based re-conguring mechanism to properly handle the higher workload scenarios (public event, synthetic)
in the generic network model (Figs. 6-3 and 6-2) becoming clear by
its falling behind the random initial managers results. The insufciency here is that the mechanism design or more precisely the
cost denition does not reect the dimensioning of the accounting
system. Thereby, the cost-based mechanisms re-congurations
become counterproductive with the result that can be seen in
the above-mentioned experiments.
A third reason for a re-conguring mechanism mechanisms not
being able to out-perform a static approach is a trivial one, namely

that there was just no necessity to re-congure during the sample


period. This is the reason that dominates the results of the at scenario for both network models where all mechanisms returned the
same results for both effectiveness metrics.
As already pointed out incorrectly handled chargeable events represent a direct result of re-conguration that can be observed in
every simulation experiment for dynamic mechanisms conducting
re-congurations during the sample period. The question however
is, if and how much this downside of re-congurability undoes its
advantages when employing our simple distributed mechanism
with respect to effectiveness as we did not add an additional coordination measure to our mechanism for simplicitys sake. To go
into more detail, the lack of coordination measures lead to incorrectly handled chargeable events for each re-conguration in
which the accounting system between two accounting resources
involved in the re-conguration i.e. between (and including)

Fig. 6-3. Dropped chargeable events for Scenario 3 Public Event in generic network.

R. Khne et al. / Computer Communications 34 (2011) 898920

the accounting resource that relinquishes an accounting task and


the resource that takes it over contained chargeable events of
the type that is re-assigned. In these cases, the respective chargeable events are not captured (accounting task moving forward
on the chargeable events path) or multiply captured (accounting
task moving backward on the path) since they do not pass the
currently capturing resource in the rst case or pass one twice before leaving the accounting system in the second case.
In all cases where it conducted re-congurations during the sample period of the simulation experiment, our simple distributed
mechanism produced more incorrectly handled chargeable events
than its to centralised re-conguring counterparts. This can however be explained by the higher sensitivity of the mechanism to
overload situations or, more precisely put, to accounting load
differences between the various accounting resources involved in
capturing and reporting one type of chargeable event. While the
centralised managers are ignorant of changes in the accounting
system until the rst accounting resource reaches its warning
threshold and reports this to its conguration manager, the distributed conguration managers regularly sent conguration messages
including their current state such that a re-conguration is enacted
much earlier and even at lower load levels if imbalances become
apparent. This intensied re-conguration activity then leads to
the higher number of incorrectly handled events.
One example where this becomes clear, is the public event scenario applied to the mobile telecommunications network model
where the number of incorrectly handled chargeable events is
2.53.8 times higher (Fig. 6-4) when compared to the re-conguring centralised managers. However, this higher sensitivity leads to
better results when it comes to dropped chargeable events as we
have seen in Fig. 6-1 for the same network/workload scenario combination. In absolute numbers, 8001000 incorrectly handled
events face about 12,00015,000 events that were not dropped because of applying our mechanism. In the same example also the
difference to the initial mechanisms becomes apparent. While of
course producing no incorrectly handled chargeable events, they
fall behind even further when it comes to the dropped events by
a factor of 3.64.8.
In some experiments, our simple distributed mechanism even
managed to nd a feasible conguration during the initialisation
phase of the simulation runs that did not require changes during
the actual data-collection phase, i.e. no incorrectly handled charge-

911

able events were found. One example is the synthetic workload


scenario applied to the generic network model depicted in Fig. 65. Here, our mechanism also produced the best results when
comparing the dropped events metric with only dropping a tenth
of the second-best mechanisms result which was the random reconguring mechanism. The cost-based mechanisms here failed
completely because of the above described mechanism insufciencies leading to 6075 times more dropped events than our
mechanism.
If, on the other side, the workload completely exceeds levels for
which the network and accounting system were dimensioned, the
higher sensitivity of our mechanism turns against it and produces
an intolerably high number of incorrectly handled chargeable
events while not convincing with the dropped events metric when
compared to the other mechanisms. To show this more clearly, we
further increased the workload of the synthetic scenario and conducted additional simulation experiments with it. Fig. 6-6 depicts
such a case, where our simple distributed mechanism fails. The
reason is that such extreme load scenarios re-conguration just
leads to new overload situations as there is no alternative accounting resource that could take over accounting tasks without again
running into overload. Without working alternative, there is just
no sense in conducting re-congurations. This is conrmed by
the initial mechanisms being the clear winners when compared
to their re-conguring counterparts in such extreme situations.
Based on these ndings, we can conclude that our simple distributed self-conguration approach is effective according to our
requirements for both small and larger networks and for most
workload situations except extreme load situations. An essential
prerequisite is the presence of conguration alternatives of different quality. If such do not exist, however, as it is the case for
accounting systems permanently in an underload situation (c.f.
the at scenario) or in opposite cases where the accounting is under-dimensioned to a degree that changing the conguration does
only lead to other overloaded accounting resources. In all these
cases re-conguring mechanisms only mean cost without returning any benet and with the higher sensitivity of our mechanism
in particular this holds even more so. On the other hand, if conguration alternatives are present that lead to differing results with
respect to the effectiveness metrics and they can also be selected,
then our mechanism has conrmed our expectations. With this, we
prove our claim (C1).

Fig. 6-4. Incorrectly handled chargeable events for Scenario 3 Public Event in mobile telecommunications network.

912

R. Khne et al. / Computer Communications 34 (2011) 898920

Fig. 6-5. Incorrectly handled chargeable events for Scenario 4 Synthetic in generic network.

Fig. 6-6. Incorrectly handled chargeable events Synthetic with further increased workload in mobile telecommunications network.

6.2. Efciency
In contrast to effectiveness that only asks whether the desired
effect was achieved, efciency is directed at what effort this effect
was achieved. In this sense, a conguration mechanism should economically handle the input required or consumed to produce its
output. Input is in our case the resources that the mechanism consumes in order to generate an effective conguration of the
accounting system, or in other words, a conguration that meets
the objective of bringing about a continuously well-functioning
and efcient accounting system.
Our rst efciency metric is the management overhead of using a
self-conguration mechanism. We will measure it by means of the

management messages sent from a central manager to its accounting resources or between the different conguration managers in
case of our simple distributed mechanism. To have a complete picture of this overhead and since a signicant number of management messages are sent during mechanism initialisation, we also
considered the management messages being sent during the initialisation phase of the simulation runs.
The higher the number of exchanged management messages is,
the more resources of the communication network are consumed
for the conguration activities. Besides the number of management messages sent during a time interval also the size of these
messages is of importance for evaluating this overhead incurred
on the underlying communication network by the conguration

R. Khne et al. / Computer Communications 34 (2011) 898920

913

Fig. 6-7. Sent management messages for Scenario 1 Flat in generic network.

mechanism. For comparing two conguration mechanisms both


aspects have to be considered when the size of messages differs.
If not, the number of sent messages sufces.
By the very nature of our simple distributed self-conguration
mechanism we have to expect a signicantly higher number of
management messages (conguration messages) than for the centralised mechanisms. While the latter employ management messages only to enforce their decision that is centrally made and
needs to be communicated, our distributed conguration managers use them to derive the overall conguration by means of information and coordination. Additionally, as conguration messages
are sent on a regular basis to make the respective accounting resources condition known as we described in Section 4.3, management overhead is also incurred in low workload scenarios, for
instance in the at scenario applied to the generic network model
as depicted in Fig. 6-7. However, as the gure also shows, the
attenuation factor x consecutively increases the re-send interval
such that during the second simulation day conguration messages are exchanged. This interval further increases, as long as no

warning messages are issued by one or more accounting resources


which would reset the attenuation factor x.
Nevertheless, conguring and managing the accounting system
during the rst simulation day with our simple distributed approach comprised nearly 20,000 conguration messages as the results for this scenario/network combination also reveals. In the
smaller mobile telecommunications network model the number
is also smaller with only about 1650 conguration messages during the rst simulation day.
These numbers are further increased when re-congurations
during the second simulation day become necessary and consequently conguration messages are exchanged between the distributed conguration managers. A good example for this is the
synthetic scenario applied to the mobile telecommunications network model (Fig. 6-8). Here, already the rst activity peak causes
our simple distributed managers to start an intensive interaction
between each other in order to counteract the rising workload by
re-assigning accounting tasks. By the fourth activity peak at the
latest, our mechanism does not react to the peaks anymore. The

Fig. 6-8. Sent management messages for Scenario 4 Synthetic in Mobile Telecom. Network.

914

R. Khne et al. / Computer Communications 34 (2011) 898920

Fig. 6-9. Sent management messages for Scenario 4 Synthetic in generic network.

reason for this is not that a conguration was obtained that does
not lead to event dropping anymore but rather that no differences
exist between the accounting resources condition indicators that
decide about whether a re-assignment is to be conducted or not.
Therefore we nd a gradually increasing re-send interval which
can be seen by the development of the number of sent management messages.
The re-conguring centralised mechanisms of course send considerably less management messages since the decision-making
process for them is an internal computation and the messages only
serve to communicate the decisions and not to bring them about.
In contrast to their application to the mobile telecommunications network all three re-conguring mechanism show continuous activity in the generic network model (c.f. Fig. 6-9). However,
the initial reaction of our simple distributed mechanism is much
less pronounced but interaction rounds afterwards increase the
number of sent management messages during the second simulation day to about 32,000 while all centralised mechanism remain
well below 200.
As can be seen from the two representative examples above, the
management overhead is one inevitable drawback of our simple
distributed mechanism. As already pointed out, this is a direct
result of the distributed approach that we have selected and that
requires the distributed managers to exchange messages in order
to interact and derive their conguration. Depending on the overload situation these interactions can become quite frequent and
intensive in terms of sent conguration messages. For instance,
the user activity peaks in the synthetic scenario applied to the generic network model increases the management overhead that was
experienced in the preceding scenarios by about 50% to approximately to the already mentioned 32,000 messages (Fig. 6-9). But
even these relatively high numbers in comparison to the about
20,000 in the generic network model for the proceeding scenarios
do not really represent a signicant part in the overall amount of
transported data especially when we consider the number of generated chargeable events in the two synthetic scenarios, namely
about 11.6 and over 16 million events.
Additionally, the congurations messages remain relatively
small in the worst case and assuming 16 bit identiers a message
will not exceed about 600 bytes in the mobile telecommunications

network and about eight kilobytes in the generic network. For the
32,000 messages in the generic network model of the synthetic
scenario this would mean about 256 megabytes per day and
assuming that all 33 accounting resource types are assigned to
each of the 120 chargeable event types which is of course not
the case. When we assume in the best case which is more realistic than the impossible worst case as most accounting resource
types only support a very small part of the 120 chargeable event
types that there is always one resource type assigned to each
event type, then the message size shrinks to about 250 bytes, i.e.
to approximately 7.8 megabytes per day. We therefore come to
the conclusion that the overall management overhead incurred
by the distributed mechanism is negligible under realistic assumptions when compared to the transmission capacities of todays
communication networks. This proves our claim (C2).
6.3. Scalability
Our third requirement towards our simple distributed self-conguration mechanism is scalability, i.e. to acceptably retain for us
important system qualities as environmental or design aspects that
have an impact on these qualities are varied in scale within expected operational bounds. In our accounting context, especially
load scalability and structural scalability are of importance.
Load scalability in general asks whether a growing number of
incoming inputs (i.e. workload) which the investigated system
needs to process in order to function properly (e.g. returns results
with a certain accuracy and/or within a certain time span) may impede this proper functioning or result in inefcient resource usage.
What the term workload actually refers to depends again on the
system at hand. On the other hand structural scalability generally
asks whether the systems structure can grow (or shrink) without
causing problems with the systems performing properly. If the
number of objects constituting a system can grow without being
impeded by the systems implementation or by applied standards
(e.g. that cause address space limitations), the system can be described as structurally scalable. (c.f. [Bond00] for a more detailed
discussion).
Correspondingly applied to accounting systems, we require load
scalability regarding the number of active users, the number of

R. Khne et al. / Computer Communications 34 (2011) 898920

charged objects (services, service bundles) and the tariff complexity (number of different types of chargeable events resulting from
the tariff). All these aspects can be combined in the number of different types of chargeable events that a given operator tariff requires (i.e. the tariff size) and the number of actually incoming
chargeable events that need to handled by the accounting system
(i.e. the scenario workloads). Besides, our mechanism should exhibit structural scalability regarding the number of different types of
accounting resources that the accounting system comprises and
that need to be congured by assigning accounting tasks according
to the given operator tariff (10 accounting resource types in the
mobile telecommunications model compared to 33 in the generic
network model) as well as regarding their absolute number (i.e.
accounting system size).
Our performance evaluation considered both types of scalability
by the different workload scenarios and the two network models of
very different size. The two different network models also involved
different tariff sizes which lead to a larger number of different
types of chargeable events that need to be captured and reported
for generic network model (120 types of chargeable events) than
in the mobile telecommunications model (28 types of chargeable
events).
As we have already seen for the effectiveness metrics (Section 6.1), neither increasing the accounting system size nor the tariff size (i.e. the number of different types of chargeable to be
captured and reported) poses a problem for our simple distributed
mechanism.
In contrast, the efciency metric (Section 6.2) has shown that
the tariff size increases the size of the exchanged conguration
messages by resulting in a larger assignment list and the accounting system size may lead to a higher number of sent conguration
messages because more messages are exchanged per interaction
round. Consequently, increasing one or both parameters leads to
a higher management overhead and consequently could pose a
scalability problem. However, based on the results from the generic network, which already represents an operator network of considerable size, we cannot nd any indicators that the management
overhead does not remain negligible when compared to the overall
amount of data sent through the network during the same time

915

span. This especially become clear when opposing the recorded


about 20,000 conguration messages with considerably more than
10 million occurred chargeable events during the simulation
experiments for the synthetic workload/ generic network model
combination. Based on this we conclude that within practical size
limits our mechanisms exhibits structural scalability.
When considering load scalability by carrying out simulation
experiments for the different workload scenarios we however
found out that effectiveness may suffer in form of an intolerably
high number of incorrectly handled events. This was the case in
an intensied variant of the synthetic scenario applied to the generic network model which we depicted in Fig. 6-6. In other experiments such as shown in Fig. 6-10 (synthetic workload/ mobile
telecommunications network model) and Fig. 6-4 (public event
workload/mobile telecommunications network model), we also
found a higher number of incorrectly handled chargeable events
when compared to the results of the re-conguring reference
mechanisms. However, these numbers are far from the levels in
the intensied variant of the synthetic scenario. In the second case,
the better effectiveness with respect to the dropped events metric
(Fig. 6-2) can even more than compensate this.
Increasing workload, especially in form of peaks also leads to
more conguration messages since the load on the different
accounting resources in the network will differ and therefore
re-congurations will take place that again reset the attenuation
factor for the message re-send interval. But as we have already
discussed twice the observed increase in numbers has no practical
signicance when the overall load is considered.
Therefore, we come to the conclusion that our simple distributed mechanism is load scalable within practical bounds for which
the managed network and accounting system, respectively, was
designed and dimensioned. If, however, the workload is increased
signicantly beyond that point, effectiveness with respect to the
number of incorrectly handled messages and with it load scalability is lost. On the other hand, this also means that service provisioning will also come to a halt because of delay and request
loss, such that requiring a functioning charging and billing is questionable. Therefore and as overall conclusion we consider our proposed mechanism as scalable and thereby conrm claim (C3).

Fig. 6-10. Incorrectly handled chargeable events for Scenario 4 Synthetic in mobile telecommunications network.

916

R. Khne et al. / Computer Communications 34 (2011) 898920

6.4. Simplicity

6.5. Fault-tolerance

As can be seen from the mechanism description in Section 4, a


clear advantage of our simple distributed mechanism is that it does
not require administrative parameterisation since it acts based on
a simple interaction scheme between the distributed managers by
which working congurations are derived. That this idea is viable
and that a simple distributed self-conguration mechanism can
be implemented which is competitive in many cases with a costbased approach and also clearly outperforms a random assignment
in these cases, we could already see in the results presented in the
previous sections. The only parameterisation that is in effect required is providing the operator tariff. The only other variable
parameter, namely the initial re-send interval, is preset and needs
never to be changed. This already proves our claim (C4).
In contrast, the cost-based mechanism (c.f. Section 5.2.1) requires a cost denition on whose basis the conguration derivation
can take place. Here administrative and system expertise is required to formulate the cost denitions in a way that really represents the processing effort in the network. As applying the public
event and synthetic workload scenarios (c.f. Figs. 6-3 and 6-2) to
the generic network model has unmistakably shown, the costbased approach requires in order to be successful that not only
the costs reect the incurred effort and therefore the actual efciency of an assignment choice but also that the costs encompass
the consequences of this choice namely the increasing load on
the selected accounting resources as a function of subscriber activity in relation to its capacity. Representing such a function by
means of a scalar cost value bears the danger of wrongly selecting
resources which results in unnecessary overload situations. But
while determining scalar costs is already a difcult task, dening
functions not only makes the initialisation of the optimisation
problem highly complex and error-prone but will also easily result
in insolvability in reasonable time when the problems become
larger.
This discussion leads us to the conclusion that cost-based
mechanisms to derive accounting system congurations are nontrivial and require a lot of knowledge about the accounting system
and the effect of the workload on its performance. Just re-assigning
an accounting task to a currently non-overloaded accounting resource that is the most cost-effective choice at the moment without considering the impact of this decision on free capacity is not
a good strategy as we have seen in our simulation study. The
dimensioning of the accounting system has therefore to be reected in some way in the cost denitions, otherwise the results
of a cost-based approach can be worse than that of a random
assignment.
The second centralised approach in our simulation study, the
random re-conguring mechanism, is on the other hand much simpler than our simple distributed mechanism not requiring administrative parameterisation as well. But although returning quite
good results in some experiments of our simulation study, its variability and unreliability rather disqualies it for general use.
Of course, our mechanism has its limitations, namely in form of
such extreme load scenarios that uniformly overload all accounting
resources relevant to the respective re-conguration task and
therefore prevent the distributed managers from taking over and
relinquishing accounting tasks. A higher sensitivity with respect
to the accounting resources status represented by their respective
condition indicators could help in such situations, however at the
price of destabilisation, i.e. of more re-congurations, a higher
management overhead and more incorrectly handled events. In
this respect, the design of our simple distributed mechanism is a
compromise that trades in a decreased performance and applicability for extreme load scenarios for good performance and decent
stability in less extreme and more realistic scenarios.

In contrast to the previous simulation experiments where we


assumed that management messages are never lost, we will investigate in this section how robust our proposed simple distributed
self-conguration mechanism is against this kind of fault using
an unreliable communication protocol. Since our mechanisms assumes distributed conguration managers being co-located with
their respective accounting resource, only the conguration messages exchanged between managers can be affected. In the ideal
case and this was one of the design objectives the problem of
lost conguration messages is solved by the inner workings of
the mechanism itself.
To this end we conducted further simulation experiments
employing the two already known telecommunication networks
to which we again applied the previously used four workload scenarios. By now also including the management message loss probability as factor for our investigations, we were able to gain a
detailed insight into the impact of this loss probability on the overall performance of our self-conguration mechanism. By using the
two network models and the different workloads, also the inuence of the size of the accounting system, the tariff size and the
system workload became apparent.
The conguration message loss probability ploss that we used in
these experiments describes the likeliness that an individual conguration message sent by a conguration manager will not reach
its recipient. As a conguration message is always broadcasted, a
management message loss probability ploss means that on average
only (100%-ploss) of the other conguration managers in the
accounting system will receive this conguration message. The
levels that we used for ploss in our simulation experiments were
1, 1%, 5%, 10%, 20% and 50%. Our focus regarding performance
was one the effectiveness metrics, i.e. the number of dropped
events and on the number of incorrectly handled messages. Both
should not increase signicantly with rising management message
loss probability in order for the mechanism to be considered robust
with respect to this type of fault.
Additionally, it should be noted that losing a conguration message will only have an impact if these messages will actually effect
changes in the overall conguration of the accounting system. Losing a management message that is send by a conguration manager because its re-send interval expired but that would not have
caused another conguration manager to relinquish an accounting
task to the sending manager does not lead to a result that differs
from the one, which a successful transmission of this message
would have produced. This is for instance the case for the at scenario applied to both network models where no chargeable events
were lost and no re-conguration was necessary.
In contrast, the public event scenario should return more interesting results as it comprises a two-hour activity peak in the evening hours that could not be handled by any of the considered
mechanisms without the dropping of chargeable events in our previous simulation experiments. However, consecutively increasing
ploss for our simple distributed approach however produced only
very slight changes to the number of dropped chargeable events
metric as depicted in Fig. 6-11 for the mobile telecommunication
model and in Fig. 6-12 for the generic network model. A statistically signicant difference could not be observed, not even between ploss = 0% and ploss = 50%.
The results from the synthetic scenario give us the same picture
for both network models (c.f. for Fig. 6-13 for the mobile telecommunications network model). This means that neither for the longer-lasting single peak of the public event scenario nor for the
shorter activity pulses of the synthetic scenario, we could nd
any indicators for an inuence of ploss on the dropped chargeable
events metric for our simple distributed mechanism.

R. Khne et al. / Computer Communications 34 (2011) 898920

917

Fig. 6-11. Number of dropped events - Scenario 3 Public in mobile telecommunications network for different management message loss probabilities.

Fig. 6-12. Number of dropped events - Scenario 3 Public in generic network for different management message loss probabilities.

Fig. 6-13. Number of dropped events - Scenario 4 Synthetic in mobile telecommunications network for different management message loss probabilities.

This result can be explained by our mechanisms functioning


described in Section 4, namely that the frequency of management
message exchange between the distributed conguration managers is on the one hand inuenced by the respective accounting resources condition (represented by its condition indicator) and by
the resetting of the attenuation factor x when the accounting resources warning threshold load is exceeded. This re-send behav-

iour of an accounting resource (or more precisely of its


conguration manager) results in more messages being sent during peak phases, such that the overall probability that the required
messages for transferring an accounting task from an overloaded
accounting resource type to another resource type being in a better
condition is still high enough to maintain the accounting systems
proper functioning.

918

R. Khne et al. / Computer Communications 34 (2011) 898920

Fig. 6-14. Incorrectly handled chargeable events Scenario 3 Public in mobile telecommunications network for different management message loss probabilities.

For the incorrectly handled chargeable events metric the impact


of losing management messages becomes more visible. In the public event workload scenario (Fig. 6-14) applied to the mobile telecommunications network the differences are still not statistically
signicant but the width of the calculated condence intervals increase from 1361.8 167.75 for ploss = 1 to 1574.30 511.43 for
ploss = 50% by the factor of 2.5.
Finally, in the synthetic workload scenario (Fig. 6-15) increasing
management message loss probabilities result in a statistically signicant deterioration of the incorrectly handled chargeable events
metric. Up ploss = 5% the number of incorrectly handled events remains relatively close to the loss-less case, but at ploss = 50% the
numbers have again grown by the factor of 2.5.
The reason for the incorrectly handled chargeable events metric
being more sensitive to the loss of management messages is that a
correct handling of chargeable events always requires that both
conguration messages required for a re-assignment of an
accounting task are delivered, i.e. the conguration message of
the relinquishing conguration manager must be received by the
conguration manager that takes over (otherwise it will not be
able to take over) and the resulting conguration message after
the taking over of the accounting task must be received by the

relinquishing accounting resource, such that it can adapt its conguration accordingly and thereby complete the re-assignment process. If the rst message is lost, this has no impact on the
incorrectly handled chargeable events metric as no re-conguration will take place. However, if the second message is lost, two
(or more) accounting resource types will capture the same chargeable events and produce multiply captured chargeable events, i.e.
incorrectly handled events. With an increasing ploss this becomes
ever more likely, what the results of our simulation experiments
fully conrm.
Based on these ndings we come to the conclusion, that our
proposed simple distributed self-conguration mechanism is sensitive to losing management messages only with respect to correctly handling chargeable events. However, this sensitivity is so
low that we can consider it as fault-tolerant against this type of
fault. Even when 50% of all sent management messages do not
reach their destination, the resulting increases in incorrectly handled chargeable events remain insignicant when compared to
the overall number of handled chargeable events and mechanism
effectiveness is maintained. For instance, in the synthetic scenario
the percentage increased from 0.00020 for the loss-less case to
0.00076% for ploss = 50%. Secondly, we can conclude a decreasing

Fig. 6-15. Incorrectly handled chargeable events Scenario 4 Synthetic in mobile telecommunications network for different management message loss probabilities.

R. Khne et al. / Computer Communications 34 (2011) 898920

inuence of increasing network sizes on the impact of the management loss probability on the mechanisms performance. In contrast, for the tariff size we could not nd interdependencies with
the management message loss probability. With this, we conrm
our last claim (C5).

7. Conclusion
In this article we have presented a novel mechanism that enables self-congurability for accounting systems consisting of heterogeneous components, which have special capabilities and
capacities in form of accounting resources. In our context, conguration and optimisation takes place automatically and dynamically
by assigning and re-assigning accounting tasks to accounting resources in order to provide the required data in order to charge
and bill according to a given tariff. This process can have different
high-level requirements beyond that of simply charging correctly
which also depend on the system owners (e.g. operator, provider,
etc.) preferences. In this work we focussed on simplicity, efciency,
effectiveness, scalability and fault tolerance and our goal was consequently to propose, implement and evaluate a mechanism to be
used in present and future accounting systems having these
characteristics.
The problem that a qualifying mechanism had to solve was consequently a two-fold one, namely (1) to derive and enforce an
accounting system conguration such that the available resources
are efciently employed and the required accounting data about
user activities for the given tariff is provided as well as (2) to reevaluate and potentially adapt previously made and enforced conguration decisions when changes in the system environment or in
the system itself occur such that efcient and effective operation is
maintained.
In a simulation study we evaluated our proposed distributed
mechanism and compared it to in all four centralised mechanisms
of which two were based on an accounting cost-optimisation
scheme and two others on random assignment each having
one static (only initial conguration) and one dynamic (adaptation
of congurations after initial conguration possible) variant.
Based on the simulation results, we could show that an
accounting system employing a self-conguration mechanism
can signicantly out-perform an accounting system based only
on static/initial congurations, if re-conguration alternatives are
present in the system. This especially holds for communications
networks in which the users activity is not a-priori known and is
not deterministic such that overload situations may arise. In such
scenarios the capability of the accounting system to adapt itself
to these changes by means of a self-conguration mechanism results in a better accounting system performance than could be
achieved by permanently maintaining only one initial conguration. On the other hand, conducting re-congurations may lead
to incorrectly charged user activities (over-billing or not charged
at all) if no coordinative measures between the affected accounting
resources are taken. However, we could show that the benets of
re-congurations clearly outweigh these drawbacks when looking
at overall accounting system performance except in cases where
no or very little conguration alternatives exist. Then applying a
static approach is normally a good choice, as it incurs less management overhead and does not run the risk of incorrectly billing the
subscriber as a result of re-conguration measures.
Another important factor of inuence on the performance of a
self-conguration mechanism that we found besides the availability of conguration alternatives is the (potentially varying) qualitative difference between these alternatives that can be observed
during every-day usage, i.e. the respective impact of their selection
on the accounting system performance. Consequently, if it makes

919

no difference whether one accounting resource captures user


activities, employing conguration mechanisms that uniformly
distribute accounting tasks at random over the available accounting resources is possible without risk of accounting information
loss. An intelligent/guided assignment would only incur overhead
in such cases without returning any benets. In all other cases
where it makes a difference whether one alternative is selected
or another random assignments however returns unreliable
and varying results. Because of this unreliability, we see its
employment restricted to only few scenarios.
Besides these general insights, we could also show that it is possible to devise a simple distributed self-conguration mechanism
that is competitive in many cases with an intelligent cost-based
approach and also clearly out-performs a random assignment in
these cases. Its main advantage is that it does not require administrative parameterisation, but rather acts based on a simple interaction scheme between the distributed conguration managers
based on conguration messages. Also the overhead incurred by
these interactions remains negligible under realistic assumptions
and up to non-extreme overload situations. Additionally, we could
also conrm that our simple distributed mechanism is tolerant
against the loss of the conguration messages exchanged between
the accounting resources up to very high loss probabilities.
The results for the compared cost-based mechanisms, in contrast, lead to the conclusion that their application is non-trivial
and requires a lot of knowledge about the system and its intricacies. Especially a mismatch between system dimensioning and
the employed cost denition partially resulted in an accounting
system performance that was worse than that of a random assignment. On the other hand, employing less simplied cost denitions
may lead to higher administrative complexities, are more susceptible to set-up errors (i.e. wrong cost specication) and may even become computationally infeasible.
Based on these ndings, we conclude that with our simple distributed approach we have presented a scalable, fault-tolerant and
efcient mechanism for accounting system self-conguration that
is novel, competitive with other possible approaches for this problem while still remaining simple, easy to implement and to administer characteristics that will prove important when considering
the always increasing dynamicity and complexity of modern communication systems. We therefore see it as a major contribution
for next-generation charging and billing.

References
[1] R. Khne, G. Huitema, G. Carle, Charging and Billing in Modern
Communications Networks-A Comprehensive Survey of the State of the Art
and Future Requirements, IEEE Communications Surveys and Tutorials,
Accepted for Publication, 2011.
[2] 3rd Generation Partnership Project, Charging architecture and principles
(Release 8), 3GPP TS 32.240, December 2008.
[3] C. de Laat, G. Gross, L. Gommans, J. Vollbrecht, D. Spence, Generic AAA
Architecture, RFC 2903 (2000).
[4] B. Aboba, J. Arkko, D. Harrington, Introduction to Accounting Management, RFC
2975 (2000).
[5] T. Zseby, S. Zander, G. Carle, Policy-based Accounting, RFC 3334 (2002).
[6] M. Koutsopoulou, A. Kaloxylos, A. Alonistioti, Charging, accounting and billing
as a sophisticated and recongurable discrete service for next generation
mobile networks, in: 56th IEEE Vehicular Technology Conference (VTC 2002Fall), 2002, pp. 23422345.
[7] M. Koutsopoulou, A. Kaloxylos, A. Alonistioti, L. Merakos, A platform for
charging, billing, and accounting in future mobile networks, Computer
Communications 30 (2007) 516526.
[8] U. Fll, C. Fan, G. Carle, F. Dressler, M. Roshandel, Service-Oriented Accounting
and Charging for 3G and B3G Mobile Environments, in: 9th IFIP/IEEE
International Symposium on Integrated Network Management Nice, France,
2005.
[9] R. Khne, U. Reimer, M. Schlger, F. Dressler, C. Fan, A. Fessi, A. Klenk, G. Carle,
Architecture for a service-oriented and convergent charging in 3G mobile
networks and beyond, in: 6th IEE International Conference on 3G and Beyond
London, UK, 2005, pp. 15.

920

R. Khne et al. / Computer Communications 34 (2011) 898920

[10] J. Jhnert, J. Zhou, R.L. Aguiar, V. Marques, M. Wetterwald, E. Melin, J.I. Moreno,
A. Cuevas, M. Liebsch, R. Schmitz, P. Pacyna, T. Melia, P. Kurtansky, Hasan, D.
Singh, S. Zander, H.J. Einsiedler, B. Stiller, The Pure-IP Moby Dick 4G
architecture, Computer Communications 28 (2005) 10141027.
[11] C. Rensing, Hasan, M. Karsten, B. Stiller, AAA: A Survey and a Policy-Based
Architecture and Framework, IEEE Network 16 (November/December) (2002)
2227.
[12] P. Kurtansky, Hasan, B. Stiller, D. Singh, S. Zander, A. Cuevas, J. Jhnert, J. Zhou,
Extensions of AAA for future IP networks, in: IEEE Wireless and
Communications Networking Conference 2004 (WCNC 2004) Atlanta, USA,
2004, pp. 15161521.
[13] P. Kurtansky, B. Stiller, Prepaid Charging for QoS-enabled IP Services based on
Time Intervals, Computer Engineering and Networks Laboratory TIK, ETH
Zrich, 2005.
[14] V. Poladian, J.P. Sousa, D. Garlan, M. Shaw, Dynamic conguration of resourceaware services, in: Proceedings of the 26th International Conference on
Software Engineering, IEEE Computer Society, 2004, pp. 604613.
[15] K. Geihs, M.U. Khan, R. Reichle, A. Solberg, S. Hallsteinsen, S. Merral, Modeling
of component-based adaptive distributed applications, in: Proceedings of the
2006 ACM symposium on Applied computing, ACM, Dijon, France, 2006, pp.
718722.
[16] H. Chen, S. Hariri, F. Rasul, An innovative self-conguration approach for
networked systems and applications, in: IEEE International Conference on
Computer Systems and Applications, 2006, pp. 537544.
[17] V. Cardellini, E. Casalicchio, V. Grassi, F. Lo Presti, Flow-based service selection
for Web service composition supporting multiple QoS classes, in: IEEE
International Conference on Web Services, 2007 (IWCS 2007), 2007, pp.
743750.
[18] C. Funk, A. Schultheis, C. Linnhoff-Popien, J. Mitic, C. Kuhmunch, Adaptation of
composite services in pervasive computing environments, in: IEEE
International Conference on Pervasive Services, 2007, pp. 242249.
[19] D. Chakraborty, A. Joshi, T. Finin, Y. Yesha, Service composition for mobile
environments, Journal on Mobile Networking and Applications 10 (2005) 435
451.

[20] F. Klein, M. Tichy, Building reliable systems based on self-organizing multiagent systems, in: 2006 International Workshop on Software Engineering for
Large-scale Multi-Agent Systems, ACM, Shanghai, China, 2006, pp. 5158.
[21] E.M. Maximilien, M.P. Singh, Toward autonomic web services trust and
selection, in: 2nd International Conference on Service Oriented Computing,
ACM, New York, NY, USA, 2004, pp. 212221.
[22] L. Xie, P. Smith, M. Baneld, H. Leopold, J.P.G. Sterbenz, D. Hutchison, Towards
resilient networks using programmable networking technologies, in: IFIP 7th
Annual International Working Conference on Active and Programmable
Networks (IWAN 2005), 2005.
[23] R. Khne, G. Grmer, M. Schlger, G. Carle, A mechanism for charging system
self-conguration in next generation mobile networks, in: 3rd EuroNGI
Conference on Next Generation Internet Networks Trondheim, Norway,
2007, pp. 198204.
[24] 3rd Generation Partnership Project, Service Aspects; Charging and Billing
(Release 8), 3GPP TS 22.115, March 2009.
[25] L. Duboc, D. Rosenblum, T. Wicks, A framework for characterization and
analysis of software system scalability, Proceedings of the 6th joint meeting of
the European Software Engineering Conference and the ACM SIGSOFT
Symposium on the Foundations of Software Engineering, ACM, Dubrovnik,
Croatia, 2007.
[26] J. Banks, J.S. Carson, B.L. Nelson, D.M. Nicol, Discrete-Event System Simulation,
Prentice Hall, Upper Saddle River, 2001.
[27] R. Jain, The Art of Computer System Performance Analysis, in: Techniques for
Experimental Design, Measurement, Simulation, and Modeling, John Wiley &
Son, New York, Chichester, Brisbane, Toronto, Singapore, 1991.
[28] V. Poladian, J. Sousa, F. Padberg, M. Shaw, Anticipatory conguration of
resource-aware applications, Proceedings of the Seventh International
Workshop on Economics-Driven Software Engineering Research, ACM, St.
Louis, Missouri, 2005.
[29] V. Poladian, A. Arlan, M. Shaw, M. Satyanarayanan, R. Schmerl, J. Sousat,
Leveraging resource prediction for anticipatory dynamic conguration, in:
First International Conference on Self-Adaptive and Self-Organizing Systems,
2007, SASO 07, 2007, pp. 214223.

You might also like