Lecture Notes in Computer Science Edited by G. Goos, J. Hartmanis, and J. van Leeuwen
2311
3
Berlin Heidelberg New Y...
11 downloads
520 Views
5MB Size
Report
This content was uploaded by our users and we assume good faith they have the permission to share this book. If you own the copyright to this book and it is wrongfully on our website, we offer a simple DMCA procedure to remove your content from our site. Start by pressing the button below!
Report copyright / DMCA form
Lecture Notes in Computer Science Edited by G. Goos, J. Hartmanis, and J. van Leeuwen
2311
3
Berlin Heidelberg New York Barcelona Hong Kong London Milan Paris Tokyo
David Bustard Weiru Liu
Roy Sterritt (Eds.)
Soft-Ware 2002: Computing in an Imperfect World First International Conference, Soft-Ware 2002 Belfast, Northern Ireland, April 8-10, 2002 Proceedings
13
Series Editors Gerhard Goos, Karlsruhe University, Germany Juris Hartmanis, Cornell University, NY, USA Jan van Leeuwen, Utrecht University, The Netherlands Volume Editors David Bustard Weiru Liu Roy Sterritt University of Ulster Faculty of Informatics School of Information and Software Engineering Jordanstown Campus, Newtownabbey, BT37 0QB, Northern Ireland E-mail: {dw.bustard/w.liu/r.sterritt}@ulster.ac.uk
Cataloging-in-Publication Data applied for Die Deutsche Bibliothek - CIP-Einheitsaufnahme Computing in an imperfect world : first international conference, soft ware 2002, Belfast, Northern Ireland, April 8 - 10, 2002 ; proceedings / David Bustard ... (ed.). - Berlin ; Heidelberg ; New York ; Barcelona ; Hong Kong ; London ; Milan ; Paris ; Tokyo : Springer, 2002 (Lecture notes in computer science ; Vol. 2311) ISBN 3-540-43481-X
CR Subject Classification (1998): D.2, K.6, F.1, I.2, J.1, H.2.8, H.3, H.4 ISSN 0302-9743 ISBN 3-540-43481-X Springer-Verlag Berlin Heidelberg New York This work is subject to copyright. All rights are reserved, whether the whole or part of the material is concerned, specifically the rights of translation, reprinting, re-use of illustrations, recitation, broadcasting, reproduction on microfilms or in any other way, and storage in data banks. Duplication of this publication or parts thereof is permitted only under the provisions of the German Copyright Law of September 9, 1965, in its current version, and permission for use must always be obtained from Springer-Verlag. Violations are liable for prosecution under the German Copyright Law. Springer-Verlag Berlin Heidelberg New York a member of BertelsmannSpringer Science+Business Media GmbH http://www.springer.de © Springer-Verlag Berlin Heidelberg 2002 Printed in Germany Typesetting: Camera-ready by author, data conversion by PTP-Berlin, Stefan Sossna Printed on acid-free paper SPIN 10846571 06/3142 543210
Preface
This was the first conference of a new series devoted to the effective handling of soft issues in the design, development, and operation of computing systems. The conference brought together contributors from a range of relevant disciplines, including artificial intelligence, information systems, software engineering, and systems engineering. The keynote speakers, Piero Bonissone, Ray Paul, Sir Tony Hoare, Michael Jackson, and Derek McAuley have interests and experience that collectively span all of these fields. Soft issues involve information or knowledge that is uncertain, incomplete, or contradictory. Examples of where such issues arise include: – requirements management and software quality control in software engineering, – conflict or multiple sources information management in information systems, – decision making/prediction in business management systems, – quality control in networks and user services in telecommunications, – traditional human rationality modeling in artificial intelligence, – data analysis in machine learning and data mining, – control management in engineering. The concept of dealing with uncertainty became prominent in the artificial intelligence community nearly 20 years ago, when researchers realized that addressing uncertainty was an essential part of representing and reasoning about human knowledge in intelligent systems. The main methodologies that have emerged in this area are soft computing and computational intelligence. It was also about 20 years ago that the notion of hard and soft systems thinking emerged from the systems community, articulated by Checkland in his seminal work on Soft Systems Methodology1 . This work has influenced information system research and practice and is beginning to have an impact on systems and software engineering. The conference gave researchers and practitioners with an interest in soft issues an opportunity to learn from each other to identify ways of improving the development of complex computing systems. The conference had a strong industrial focus. In particular, all of the keynote speakers had both industrial and academic experience, and the conference concluded with a session taking an industrial perspective on soft issues. Also, the first day of the conference was integrated with the 2nd European Workshop on Computational Intelligence in Telecommunications and Multimedia, organized by the Technical Committee C of EUNITE, the European Network on Intelligent Technologies for Smart Adaptive Systems. This has a significant industrial membership. There were two EUNITE keynote speakers: Ben Azvine, chairman 1
Peter Checkland, Systems Thinking, Systems Practice, Wiley, 1981
VI
Preface
of the Technical Committee C, and John Bigham who has many years’ experience in applying computational intelligence in telecommunications. The SS Titanic was chosen as a visual image for the conference because it represents the uncertainty associated with any engineering endeavor and is a reminder that the Titanic was built in Belfast – indeed just beside the conference venue. Coincidentally, the conference took place between the date the Titanic first set sail, 2 April 1912, and its sinking on 15 April 1912. Fortunately, the organizing committee is not superstitious! A total of 24 papers were selected for presentation at the conference. We are very grateful to all authors who submitted papers and to the referees who assessed them. We also thank Philip Houston and Paul McMenamin of Nortel Networks (Northern Ireland) whose participation in a collaborative project with the University of Ulster provided initial support and encouragement for the conference. The project, Jigsaw, was funded by the Industrial Research and Technology Unit of the Northern Ireland Department of Enterprise, Trade, and Investment. Further support for the conference was provided by other industry and government collaborators and sponsors, especially Des Vincent (CITU-NI), Gordon Bell (Liberty Technology IT), Bob Barbour and Tim Brundle (Centre for Competitiveness), Dave Allen (Charteris), and Billy McClean (Momentum). Internally, the organization of the conference benefitted from contributions by Adrian Moore, Pat Lundy, David McSherry, Edwin Curran, Mary Shapcott, Alfons Schuster, and Kenny Adamson. Adrian Moore deserves particular mention for his imaginative design and implementation of the Web site, building on the Titanic theme. We are also very grateful to Sarah Dooley and Pauleen Marshall whose administrative support and cheery manner were invaluable throughout. Finally, we thank Rebecca Mowat and Alfred Hofmann of Springer-Verlag for their help and advice in arranging publication of the conference proceedings.
February 2002
Dave Bustard Weiru Liu Roy Sterritt
Organization
SOFT-WARE 2002, the 1st International Conference on Computing in an Imperfect World, was organized by the Faculty of Informatics, University of Ulster in cooperation with EUNITE IBA C: Telecommunication and Multimedia Committee.
Organizing Committee Dave Bustard Weiru Liu Philip Houston Des Vincent Billy McClean Ken Adamson Edwin Curran Pat Lundy David McSherry Adrian Moore Alfons Schuster Mary Shapcott Roy Sterritt
General Conference Chair EUNITE Workshop Chair Nortel Networks, Belfast Labs CITU (NI) Momentum Industry Applications and Finance Local Events Full Submissions Web Short Submissions Local Arrangements Publicity and Proceedings
Program Committee Behnam Azvine Salem Benferhat Keith Bennett Dan Berry Jean Bezivin Prabir Bhattacharya Danny Crookes Janusz Granat Rachel Harrison Janusz Kacprzyk Stefanos Kollias Rudolf Kruse Manny Lehman Paul Lewis Xiaohui Liu Abe Mamdani Trevor Martin
BT, Ipswich, UK IRIT, Universit´e Paul Sabatier, France Durham University, UK University of Waterloo, Canada University of Nantes, France Panasonic Technologies Inc., USA Queen’s University, UK National Institute of Telecoms, Poland University of Reading, UK Warsaw University of Technology, Poland National Technical Univ. of Athens, Greece Otto-von-Guericke-University of Magdeburg, Germany Imperial College, UK Lancaster University, UK Brunel University, UK Imperial College, UK University of Bristol, UK
VIII
Organization
Stephen McKearney Andreas Pitsillides Simon Parsons Henri Prade Marco Ramoni Alessandro Saffiotti Prakash Shenoy Philippe Smets Martin Spott Frank Stowell Jim Tomayko Athanasios Vasilakos Frans Voorbraak Didar Zowghi
University of Bournemouth, UK University of Cyprus, Cyprus University of Liverpool, UK IRIT, Universit´e Paul Sabatier, France Harvard Medical School, USA University of Orebro, Sweden University of Kansas, USA Universit´e Libre de Bruxelles, Belgium BT Ipswich, UK De Montfort University, UK Carnegie Mellon University, USA University of Crete, Greece University of Amsterdam, The Netherlands University of Technology, Sydney, Australia
Additional Reviewers Werner Dubitzky Sally McClean Mike McTear
Gerard Parr William Scanlon
Bryan Scotney George Wilkie
Sponsoring Institutions – University of Ulster – EUNITE - EUropean Network on Intelligent TEchnologies for Smart Adaptive Systems – Nortel Networks, Belfast Labs. – IRTU - Industrial Research and Technology Unit – Liberty IT – INCOSE – British Computer Society – Momentum – Centre for Competitiveness – Charteris – CSPT - Centre for Software Process Technologies
Table of Contents
Technical Session 1 Overview of Fuzzy-RED in Diff-Serv Networks . . . . . . . . . . . . . . . . . . . . . . . . . L. Rossides, C. Chrysostomou, A. Pitsillides (University of Cyprus), A. Sekercioglu (Monash University, Australia)
1
An Architecture for Agent-Enhanced Network Service Provisioning through SLA Negotiation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 David Chieng (Queen’s University of Belfast), Ivan Ho (University of Ulster), Alan Marshall (Queen’s University of Belfast), Gerard Parr (University of Ulster) Facing Fault Management as It Is, Aiming for What You Would Like It to Be . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 Roy Sterritt (University of Ulster) Enabling Multimedia QoS Control with Black-Box Modelling . . . . . . . . . . . . 46 Gianluca Bontempi, Gauthier Lafruit, (IMEC Belgium)
Technical Session 2 Using Markov Chains for Link Prediction in Adaptive Web Sites . . . . . . . . . 60 Jianhan Zhu, Jun Hong, John G. Hughes (University of Ulster) Classification of Customer Call Data in the Presence of Concept Drift and Noise . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74 Michaela Black, Ray Hickey (University of Ulster) A Learning System for Decision Support in Telecommunications . . . . . . . . . 88 ˇ Filip Zelezn´ y (Czech Technical University), Jiˇr´ı Z´ıdgek (Atlantis ˇ ep´ Telecom), Olga Stˇ ankov´ a (Czech Technical University) Adaptive User Modelling in an Intelligent Telephone Assistant . . . . . . . . . . . 102 Trevor P. Martin, Benham Azvine (BTexact Technologies)
Technical Session 3 A Query-Driven Anytime Algorithm for Argumentative and Abductive Reasoning . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114 Rolf Haenni (University of California, Los Angeles) Proof Length as an Uncertainty Factor in ILP . . . . . . . . . . . . . . . . . . . . . . . . . 128 Gilles Richard, Fatima Zohra Kettaf (IRIT, Universit´e Paul Sabatier, France)
X
Table of Contents
Paraconsistency in Object-Oriented Databases . . . . . . . . . . . . . . . . . . . . . . . . 141 Rajiv Bagai (Wichita State University, US), Shellene J. Kelley (Austin College, US) Decision Support with Imprecise Data for Consumers . . . . . . . . . . . . . . . . . . . 151 Gergely Luk´ acs (University of Karlsruhe, Germany) Genetic Programming: A Parallel Approach . . . . . . . . . . . . . . . . . . . . . . . . . . . 166 Wolfgang Golubski (University of Siegen, Germany) Software Uncertainty . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 174 Manny M. Lehman (Imperial College, University of London, UK), J.F. Ramil (The Open University, UK)
Technical Session 4 Temporal Probabilistic Concepts from Heterogeneous Data Sequences . . . . 191 Sally McClean, Bryan Scotney, Fiona Palmer (University of Ulster) Handling Uncertainty in a Medical Study of Dietary Intake during Pregnancy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 206 Adele Marshall (Queen’s University, Belfast), David Bell, Roy Sterritt (University of Ulster) Sequential Diagnosis in the Independence Bayesian Framework . . . . . . . . . . 217 David McSherry (University of Ulster) Static Field Approach for Pattern Classification . . . . . . . . . . . . . . . . . . . . . . . . 232 Dymitr Ruta, Bogdan Gabrys (University of Paisley) Inferring Knowledge from Frequent Patterns . . . . . . . . . . . . . . . . . . . . . . . . . . . 247 Marzena Kryszkiewicz (Warsaw University of Technology, Poland) Anytime Possibilistic Propagation Algorithm . . . . . . . . . . . . . . . . . . . . . . . . . . 263 Nahla Ben Amor (Institut Sup´erieur de Gestion, Tunis), Salem Benferhat (IRIT, Universit´e Paul Sabatier, France), Khaled Mellouli (Institut Sup´erieur de Gestion, Tunis)
Technical Session 5 Macro Analysis of Techniques to Deal with Uncertainty in Information Systems Development: Mapping Representational Framing Influences . . . . . 280 Carl Adams (University of Portsmouth, UK), David E. Avison (ESSEC Business School, France)
Table of Contents
XI
The Role of Emotion, Values, and Beliefs in the Construction of Innovative Work Realities . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 300 Isabel Ramos (Escola Superior de Tecnologia e Gest˜ ao, Portugal), ´ Carvalho Daniel M. Berry (University of Waterloo, Canada), Jo˜ ao A. (Universidade do Minho, Portugal) Managing Evolving Requirements Using eXtreme Programming . . . . . . . . . . 315 Jim Tomayko (Carnegie Mellon University, US) Text Summarization in Data Mining . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 332 Colleen E. Crangle (ConverSpeech, California)
Invited Speakers Industrial Applications of Intelligent Systems at BTexact . . . . . . . . . . . . . . . 348 Benham Azvine (BTexact Technologies, UK) Intelligent Control of Wireless and Fixed Telecom Networks . . . . . . . . . . . . . 349 John Bigham (University of London, UK) Assertions in Programming: From Scientific Theory to Engineering Practice . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 350 Tony Hoare (Microsoft Research, Cambridge, UK) Hybrid Soft Computing for Classification and Prediction Applications . . . . 352 Piero Bonissone, (General Electric Corp., Schenectady, NY, US) Why Users Cannot ‘Get What They Want’ . . . . . . . . . . . . . . . . . . . . . . . . . . . . 354 Ray Paul (Brunel University, UK) Systems Design with the Reverend Bayes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 355 Derek McAuley (Marconi Labs, Cambridge, UK) Formalism and Informality in Software Development . . . . . . . . . . . . . . . . . . . 356 Michael Jackson (Consultant, UK)
Industrial Panel An Industrial Perspective on Soft Issues: Successes, Opportunities, and Challenges . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 357 Industrial Panel
Author Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 359
Overview of Fuzzy-RED in Diff-Serv Networks 1
1
1
2
L. Rossides , C. Chrysostomou , A. Pitsillides , and A. Sekercioglu 1
Department of Computer Science University of Cyprus, 75 Kallipoleos Street, P.O. Box 20537, 1678 Nicosia, Cyprus, Phone: +357 2 892230, Fax: +357 2 892240. 2 Centre for Telecommunications and Information Engineering, Monash University, Melbourne, Australia, Phone: +61 3 9905 3503, Fax: +61 3 9905 3454.
Abstract. The rapid growth of the Internet and increased demand to use the Internet for time-sensitive voice and video applications necessitate the design and utilization of new Internet architectures with effective congestion control algorithms. As a result the Diff-Serv architectures was proposed to deliver (aggregated) QoS in TCP/IP networks. Network congestion control remains a critical and high priority issue, even for the present Internet architecture. In this paper we present Fuzzy-RED, a novel approach to Diff-Serv congestion control, and compare it with a classical RIO implementation. We believe that with the support of fuzzy logic, we are able to achieve better differentiation for packet discarding behaviors for individual flows, and so provide better quality of service to different kinds of traffic, such as TCP/FTP traffic and TCP/Weblike traffic, whilst maintaining high utilization (goodput).
1 Introduction The rapid growth of the Internet and increased demand to use the Internet for timesensitive voice and video applications necessitate the design and utilization of new Internet architectures with effective congestion control algorithms. As a result the Diff-Serv architecture was proposed [1] to deliver (aggregated) QoS in TCP/IP networks. Network congestion control remains a critical and high priority issue, even for the present Internet architecture. In this paper, we aim to use the reported strength of fuzzy logic (a Computational Intelligence technique) in controlling complex and highly nonlinear systems to address congestion control problems in Diff-Serv. We draw upon the vast experience, in both theoretical as well as practical terms, of Computational Intelligence Control (Fuzzy Control) in the design of the control algorithm [2]. Nowadays, we are faced with increasingly complex control problems, for which different (mathematical) modeling representations may be difficult to obtain. This difficulty has stimulated the development of alternative modeling and control techniques which include fuzzy logic based ones. Therefore, we aim to exploit the well known advantages of fuzzy logic control [2]: • Ability to quickly express the control structure of a system using a priori knowledge. • Less dependence on the availability of a precise mathematical model. D. Bustard, W. Liu, and R. Sterritt (Eds.): Soft-Ware 2002, LNCS 2311, pp. 1–13, 2002. © Springer-Verlag Berlin Heidelberg 2002
2
L. Rossides et al.
• Easy handling of the inherent nonlinearities. • Easy handling of multiple input signals. Our approach will be to adopt the basic concepts of RED [14], which was proposed to alleviate a number of problems with the current Internet congestion control algorithms, has been widely studied, and has been adapted, in many variants, for use in the Diff Serv architecture. Despite the good characteristics shown by RED and its variants in many situations, and the clear improvement it presents against classical droptail queue management, it has a number of drawbacks, including problems with performance of RED under different scenarios of operation, parameter tuning, linearity of the dropping function, and need for other input signals. We expect that Fuzzy-RED, the proposed strategy, will be robust with respect to traffic modeling uncertainties and system nonlinearities, yet provide tight control (and as a result offer good service). It is worth pointing out that there is increasing empirical knowledge gathered about RED and its variants, and several ‘rules of thumb’ have appeared in many papers. It will be beneficial to build the Fuzzy Control rule base using this knowledge. However, in this paper we only attempt to highlight the potential of the methodology, and choose a simple Rule Base and simulation examples, but with realistic scenarios.
2 Issues on TCP/IP Congestion Control As the growth of the Internet increases it becomes clear that the existing congestion control solutions deployed in the Internet Transport Control Protocol (TCP) [3], [4] are increasingly becoming ineffective. It is also generally accepted that these solutions cannot easily scale up even with various proposed “fixes” [5], [6]. Also, it is worth pointing out that the User Datagram Protocol (UDP), the other transport service offered by IP Internet, offers no congestion control. However, more and more users employ UDP for the delivery of real time video and voice services. The newly developed (also largely ad-hoc) strategies [7], [8] are also not proven to be robust and effective. Since these schemes are designed with significant non-linearities (e.g. twophase—slow start and congestion avoidance—dynamic windows, binary feedback, additive-increase multiplicative-decrease flow control etc), and they are based mostly on intuition, the analysis of their closed loop behaviour is difficult if at all possible, even for single control loop networks. Even worse, the interaction of additional non-linear feedback loops can produce unexpected and erratic behavior [9]. Empirical evidence demonstrates the poor performance and cyclic behavior of the TCP/IP Internet [10] (also confirmed analytically [11]). This is exacerbated as the link speed increases to satisfy demand (hence the bandwidth-delay product, and thus feedback delay, increases), and also as the demand on the network for better quality of service increases. Note that for wide area networks a multifractal behavior has been observed [12], and it is suggested that this behavior—cascade effect—may be related to existing network controls [13]. Based on all these facts it is becoming clear that new approaches for congestion control must be investigated.
Overview of Fuzzy-RED in Diff-Serv Networks
3
3 The Inadequacy of RED The most popular algorithm used for Diff-Serv implementation is RED (Random Early Discard) [14]. RED simply sets some min and max dropping thresholds for a number of predefined classes in the router queues. In case the buffer queue size exceeds the min threshold, RED starts randomly dropping packets based on a probability depending on the queue length. If the buffer queue size exceeds the max threshold then every packet is dropped, (i.e., drop probability is set to 1) or ECN (Explicit Congestion Notification) marked. The RED implementation for Diff-Serv defines that we have different thresholds for each class. Best effort packets have the lowest min and max thresholds and therefore they are dropped with greater probability than packets of AF (Assured Forwarding) or EF (Expedited Forwarding) class. Also, there is the option that if an AF class packet does not comply with the rate specified then it would be reclassified as a best-effort class packet. Apart from RED, many other mechanisms such as n-RED, adaptive RED [15], BLUE [16], [17] and Three Color marking schemes were proposed for Diff-Serv queue control. In Figure 1 we can see a simple Diff-Serv scenario where RED is used for queue control. A leaky bucket traffic shaper is used to check if the packets comply with the SLA (Service Level Agreement). If EF packets do not comply with the SLA then they are dropped. For AF class packets, if they do not comply then they are remapped into Best Effort Class packets. Both AF and Best Effort packets share a RIO [18] Queue. RIO stands for RED In/Out queue, where “In” and “Out” means packets are in or out of the connection conformance agreement. For AF and Best Effort class we have different min and max thresholds. EF packets use a separate high priority FIFO queue. EF
AF Class
Best Effort
Ye Check and traffic shaping
Priority Queue
No
Discard
RIO Queue
Max
Min
Fig. 1. Diff-Serv scenario with RED queue for control
Despite the good characteristics shown by RED in many situations and the clear improvement it presents against classical droptail queue management, it has a number of drawbacks. In cases with extremely bursty traffic sources, the active queue management techniques used by RED, unfortunately, are often defeated since queue lengths grow and shrink rapidly well before RED can react.
4
L. Rossides et al.
The inadequacy of RED can be understood more clearly by considering the operation of an ideal queue management algorithm. Consider an ideal traffic source sending packets to a sink through two routers connected via a link of capacity of L Mbps (see Figure 2). A
L Mbps
B
Source Sink Sending rate L Mbps
Queue
Fig. 2. Ideal Scenario
An ideal queue management algorithm should try to maintain the correct amount of packets in the queue to keep a sending rate of sources at L Mbps thus having a full 100% throughput utilization. While RED can achieve performance very close to this ideal scenario, it needs a large amount of buffer and, most importantly, correct parameterization to achieve it. The correct tuning of RED implies a “global” parameterization that is very difficult, if not impossible to achieve as it is shown in [16]. The results presented later in this article show that Fuzzy-RED can provide such desirable performance and queue management characteristics without any special parameterization or tuning.
4 Fuzzy Logic Controlled RED A novel approach to the RED Diff-Serv implementation is Fuzzy-RED, a fuzzy logic controlled RED queue. To implement it, we removed the fixed max, min queue thresholds from the RED queue for each class, and replaced them with dynamic network state dependant thresholds calculated using a fuzzy inference engine (FIE) which can be considered as a lightweight expert system. As reported in [16], classical RED implementations with fixed thresholds cannot provide good results in the presence of dynamic network state changes, for example, the number of active sources. The FIE dynamically calculates the drop probability behavior based on two network-queue state inputs: the instantaneous queue size and the queue rate of change. In implementation we add an FIE for each Diff-Serv class of service. The FIE uses separate linguistic rules for each class to calculate the drop probability based on the input from the queue length and queue length growth rate. Usually two input FIEs can offer better ability to linguistically describe the system dynamics. Therefore, we can expect that we can tune the system better, and improve the behavior of the RED queue according to our class of service policy. The dynamic way of calculating the drop probability by the FIE comes from the fact that according to the rate of change of the queue length, the current buffer size, and the class the packet belongs, a different set of fuzzy rules, and so inference apply. Based on these rules and inferences, the drop probability is calculated more dynamically than the classical
Overview of Fuzzy-RED in Diff-Serv Networks
5
RED approach. This point can be illustrated through a visualization of the decision surfaces of the FIEs used in the Fuzzy-RED scheme. An inspection of these surfaces and the associated linguistic rules provides hints on the operation of Fuzzy-RED. The rules for the “assured” class are more aggressive about decreasing the probability of packet drop than increasing it sharply. There is only one rule that results in increasing drop probability, whereas two rules set the drop probability to zero. If we contrast this with the linguistic rules of the “best effort” class packets, we see that more rules lead to an increase in drop probability, and so more packet drops than the assured traffic class. These rules reflect the particular views and experiences of the designer, and are easy to relate to human reasoning processes. We expect the whole procedure to be independent of the number of active sources and thus avoid the problems of fixed thresholds employed by other RED schemes [16]. With Fuzzy-RED, not only do we expect to avoid such situations but also to generally provide better congestion control and better utilization of the network.
5 Simulation Results In this section we evaluate using simulation the performance of Fuzzy-RED and compare with other published results. The implementation of the traffic sources is based on the most recent version of ns simulator (Version 2.1b8a). Three simulation scenarios are presented. Scenario 1 was a simple scenario used to make an initial evaluation and test of Fuzzy-RED. Scenario 2 compares the behavior of RED and Fuzzy-RED using only TCP/FTP traffic, and finally in Scenario 3 we introduce web traffic, reported to test the ability of RED [19] to evaluate a simple Diff-Serv implementation using RIO and Fuzzy-RED. 5.1 Scenario 1 We have done an initial testing of the performance of the fuzzy-RED queue management using the ns simulation tool with the simple network topology shown in Figure 3 (also used by other researchers for RED performance and evaluation [14]). The buffer size was set to 70 packets (max packet size 1000 bytes), the min threshold (minth) for RED was 23 packets and the max threshold was 69 packets. The link between the two routers was set to 40 Mbps and the simulation lasted for 100 seconds. The scripts used for simulation Scenario 1 (and in all other simulation scenarios presented here) were based on the original scripts written in [14]. The rule files used for Scenario 1 were written without any previous study on how they can affect the performance of Fuzzy-RED, so they can been seen as a random pickup of sets and rules for evaluating Fuzzy-RED. After an extensive series of simulations based on Scenario 2 topology, and analysis of their results a new set of rule base files was created. This set of files was used in all the rest simulation scenarios (Scenarios 2 and 3) without any change in order to show the capabilities of Fuzzy-RED in various scenarios using different parameters.
6
L. Rossides et al.
* Router 0
*
Router 1 40 Mb/s 20ms delay link
* All access connections are 100 Mb/s
Fig. 3. Simple network topology used for the initial simulations
From the simulation results shown in Figure 4 and Figure 5 Fuzzy-RED achieves more than 99% utilization while RED and droptail fail to achieve more than 90%. As one can see from Figure 4 and Figure 5, Fuzzy-RED presents results very close to the ideal (as presented in Figure 2). 45 40
Throughput
35 30 25 20 15 10 5 0 0
Fuzzy RED RED
20
40
60
80
100
Time
Droptail
Fig. 4. Throughput vs. Time
The throughput goes up to the 99.7% of the total link capacity (40 Mbps link) and the average queue size is around half the capacity of the buffer while maintaining a sufficient amount of packets in the queue for achieving this high throughput. While these are results from a very basic scenario (see Fig. 3) they demonstrate the dynamic abilities and capabilities of an FIE RED queue compared to a simple RED queue or a classical droptail queue. The results presented in the following simulation scenarios shows that these characteristics and abilities are maintained under all conditions without changing any parameters of Fuzzy-RED.
near 100% throughput (99.57%), see Figure 8, while packet drops are kept at very low levels (Figure 10) compared to the number of packets sent (Figure 9). 120.00
--
,
100.00
VI
%
&
80.00
1 --RED
60.00
-Fuzzy
a
=a
z
40.00
RED
20.00 0.00 0.00
7 - - - - 7
20.00
40.00
60.00
80.00
100.00
Time (sec)
Fig. 7. Scenario 2 - Buffer size vs, t h e
These results show clearly that Fuzzy-RED manages to adequately control the queue size while keeping a higher than RED throughput (97.1 1% compared with 99.57% of Fuzzy-RED).
.c
0 1 0 2 3 ? 0 4 0 5 3 ~ 7 0 f f l 9 3 1 O l
lime (sec) Fig. 8. Scenario 2 - Throughput vs, t h e
5.3 Scenario 3
In Scenario 3 we introduce a new network topology used in [19]. The purpose of this scenario is to investigate how Fuzzy-RED and RIO perform under a Diff-Serv scenario. To simulate a basic Diff-Serv environment we introduce a combination of web-like traffic sources and TCPFTP sources. Half of the sources are TCPFTP and the other half TCPlVeb-like Traffic. Traffic from the Web-like sources is tagged as assured class traffic and the FTP traffic as best effort. We run the simulation three times for 5000 seconds each in order to enhance the validity of the results. The network topology is presented in Figure 11. We use TCPISACK with a TCP window
Ovemiew of FUZZY-RED h~Diff-Sem Networks
9
of 100 packets. Each packet has a size of 1514 bytes. For the Droptail queue we define a buffer size of 226 packets. We use AQM (Fuzzy RED or RIO) in the queues of the bottleneck link between router 1 and router 2. All other links have a simple droptail queue. The importance of this scenario is that it compares and evaluates not simply the performance of an algorithm but the performance in implementing a new IP network architecture, Diff-Sew. This means that we want to check whether FuzzyRED can provide the necessary congestion control and differentiation and ensure acceptable QoS in a Diff-Sew network. We also attempt to compare Fuzzy-RED with RIO (a RED based implementation of Diff-Sew).
Fig. 9. Scenario 2 P a c k e t s transmitted
The choice of distributions and parameters is based on [I91 and is summarized in Table 1. The implementation of the traffic sources is based on the most recent version of ns simulator (version 2.1.8b). All results presented for this scenario were extracted from the ns simulation trace file. Table 1. Distributions and Parameters
Distribution Mean Shape
Inter-page Time Pareto 50ms 2
Objects per page Pareto 4m 1.2
Interobject Time Pareto 0.5ms 1.5
Object Size Pareto 12KB 1.2
z
10000
-Best
6
EffOll Class
6000
4" 0"
4
000 000
L 20.00
40.00
60 00
80.00
100 00
Time (set)
Fig. 10. Scenario 2 P a c k e t Drops
500 Mbps I Ilnks N1"Ps 130 ms
'IU
100 Mbps I dest2
Fig. 11. Scenario 3 N e t w o r k Topology
Although this scenario is a simple and basic one it can be the starting point for investigating the abilities of Fuzzy-RED in a Diff-Sen, network. The results presented here are limited to just two graphs since the purpose of this paper is to present the prospective of Fuzzy-RED in providing a comparable to RIO congestion control in Diff-Serv networks and not a detailed description of its performance.
Overview of Fuzzy-RED hDiff-Sem Networks
11
From the results we see that although Fuzzy-RED and N O show similar behaviour, Fuzzy-RED appears to control better the flow rate across the network. From Figure 12 we see the throughput behaviour. With throughput here we mean the rate at which traffic is coming to a link (in this case the link connecting routerl with router2) before entering any queue. So it is the total traffic arriving at routerl (both Rp and web traffic). From the graph N O seems to stabilise its throughput around 10.25 Mbps (note that the link speed is limited to 10 Mbitlsec). This means that it can't effectively control the rate at which the sources are sending traffic (according to the ideal scenario shown in Figure 3). Around t=2500sec we see a small ascending step. At that point the traffic increases further from 10.1 Mbps to a 10.25 Mbps. This means that we have an increase of drops and therefore a decrease of goodput. We define goodput as the traffic rate traversing a link minus all dropped packets and all retransmitted packets.
-FUZZY
RW
-RED
I
,"
2
7.0
' 0
1000
2000
3000
4000
5000
Time (sec)
Fig. 12. Scenario 3 Throughput vs, t h e
From Figure 13 we see that Fuzzy-RED delivers a steady goodput around 9.9 Mbps while RIO has a decrease from 9.9 to 9.8 due to dropped packets that create retransmissions. The difference is not as important as the fact that Fuzzy-RED seems to provide a more stable behaviour. This result along with the previous encourages us to proceed with further testing in the future.
6 Conclusions Current TCPIIP congestion control algorithms cannot efficiently support new and emerging services needed by the Internet community. RED propose a solution, however in cases with extreme bursty sources (such a case is Internet) it fails to effectively control congestion. Diff-Serv using N O (RED In-Out) was proposed to offer differentiation of services and control congestion. Our proposal in implementing Diff-Serv using a fuzzy logic controlled queue is a novel, effective, robust and
flexible approach and avoids the necessity of any special parameterization or tuning, apart from linguistic interpretation of the system behavior.
-
10 0
.m
n
Furry FED n
=
A
RED
90
8.5
, 0
1000
2000
3000
4000
5000
Time (sec)
Fig. 13. Scenario 3 - Goodput vs, t h e
It can provide similar or better performance compared to RIO without any retuning or parameterization. Specifically in scenario 3 we see that Fuzzy-RED, using the same rules and values in the fuzzy sets (i.e. no finer tuning), has achieved equal or better performance than N O , in which we use the optimal parameterization discussed in paper [19]. From this scenario we see that Fuzzy-RED can perform equally well using homogeneous or heterogeneous traffic sources (in this case TCPFTP traffic and TCPAVeb-like traffic) without any change in the way we define it or any special tuning. We believe that with further refinement of the rule base through mathematical analysis, or self-tuning, our algorithm can achieve even better results. In future work we will investigate further performance issues such as fairness among traffic classes, packet drops per class (a QoS parameter), utilization and goodput under more complex scenarios. We expect to see whether Fuzzy-RED can be used to provide the necessary QoS needed in a Diff-Sen, network. From these results and based on our past experience with successful implementations of fuzzy logic control [20], 1211, we are very optimistic that this proposal will offer significant improvements on controlling congestion in TCPIIP Diff-Sen, networks.
References 1. S.Blake et al. "An architecture for Differentiated Services", RFC 2475, December 1998. 2 W. Pedrycz, A. V. Vasilakos (Ed.), Computatzonal Intellzgence zn Telecommunicatzons Network, CRC Press, ISBN: 0-8493-1075-X, September 2000. 3. V. Jacobson, Congestion Avoidance and Control, ACM SIGCOMM88,1988. 4. W. Stevens, "TCP Slow Start, Congestion Avoidance, Fast Retransmit, and Fast Recovery Algorithms", RFC2001, January 1997. 5. W. Stevens, TCPIIP Illustrated, Volume 1 The Protocols', Addison-Wesley, 1994. 6 . V. Jacobson, R. Braden, D. Borman, TCP Extensions for High Performance, RFC 1323, May 1992. 7. K.K. Ramakrishnan, and S. Floyd A proposal to add explicit congestionnotification (ECN) to IP, drafi-kksjf-ecn-03.txt, October 1998. (RFC2481, January 1999).
Overview of Fuzzy-RED in Diff-Serv Networks
13
8. Braden et al, Recommendations on Queue Management and Congestion Avoidance in the Internet, RFC2309, April 1998. 9. C.E. Rohrs and R. A. Berry and S. J.O’Halek, A Control Engineer’s Look at ATM Congestion Avoidance, IEEE Global Telecommunications Conference GLOBECOM’95, Singapore, 1995. 10. J. Martin, A. Nilsson, The evolution of congestion control in TCP/IP: from reactive windows to preventive flow control, CACC Technical Report TR-97/11, North Carolina State University, August 1997. 11. T.V. Lakshman and U. Madhow, The Performance of TCP/IP for Networks with High Bandwidth Delay Products and Random Loss, IEEE/ACM Transactions on Networking, vol. 5, pp. 336-350, June 1997. 12. A.Feldmann, A.C. Gilbert, W. Willinger, “Data Networks as cascades: Investigating the multifractal nature of the Internet WAN traffic”, SIGCOMM 98, Vancouver, 1998. 13. A. Feldmann, A. C. Gilbert, P. Huang, W. Willinger, “Dynamics of IP Traffic: A study of the role of variability and the impact of control”, Proceedings of ACM, SIGCOMM 2000. 14. S. Floyd and V. Jacobson, “Random Early Detection Gateways for Congestion Avoidance”, ACM/IEEE Transaction on Networking, 1(4): pgs 397-413, August 1993. 15. W. Feng, D. Kandlur, D. Saha, and K. Shin, “A self-configuring RED gateway,” IEEE INFOCOM’99, New York, Mar. 1999. 16. Wu-chang Feng, “Improving Internet Congestion Control and Queue Management Algorithms”, PhD Dissertation, University of Michigan, 1999 . 17. W. Feng, D. Kandlur, D. Saha, and K. Shin, “Blue: A New Class of Active Queue Management Algorithms,” tech. rep., UM CSE-TR-387-99, 1999. 18. Clark D. and Fang W. (1998), Explicit allocation of best effort packet delivery service, IEEE/ACM Transactions on Networking, Volume 6, No. 4, pp. 362 – 373, August 1998. 19. G. Iannaccone, C. Brandauer, T. Ziegler, C. Diot, S. Fdida, M. May, Comparison of Tail Drop and Active Queue Management Performance for Bulk-data and Web-like Internet Traffic, 6th IEEE symposium and Computers and Communications. Hammamet. July 2001. 20. A. Pitsillides, A. Sekercioglu, G. Ramamurthy, “Effective Control of Traffic Flow in ATM Networks using Fuzzy Explicit Rate Marking (FERM)”, IEEE JSAC, Vol. 15, Issue 2, Feb 1997, pp.209-225. 21. A. Pitsillides, A. Sekercioglu, ‘Congestion Control’, in Computational Intelligence in Telecommunications Networks, (Ed. W. Pedrycz, A. V. Vasilakos), CRC Press, ISBN: 08493-1075-X, September 2000.
An Architecture for Agent-Enhanced Network Service Provisioning through SLA Negotiation 1
2
1
David Chieng , Ivan Ho , Alan Marshall , and Gerard Parr
2
1
The Advanced Telecommunication Research Laboratory School of Electrical and Electronic Engineering, Queen’s University of Belfast Ashby Building, Stranmillis Road, Belfast, BT9 5AH, UK {d.chieng, a.marshall}@ee.qub.ac.uk 2 Internet Research Group, School of Information and Software Engineering University of Ulster, Coleraine, BT52 1SA, UK {wk.ho, gp.parr}@ulst.ac.uk
Abstract. This paper focuses on two main areas. We first investigate various aspects of subscription and session Service Level Agreement (SLA) issues such as negotiating and setting up network services with Quality of Service (QoS) and pricing preferences. We then introduce an agent-enhanced service architecture that facilitates these services. A prototype system consisting of real-time agents that represent various network stakeholders was developed. A novel approach is presented where the agent system is allowed to communicate with a simulated network. This allows functional and dynamic behaviour of the network to be investigated under various agent-supported scenarios. This paper also highlights the effects of SLA negotiation and dynamic pricing in a competitive multi-operator networks environment.
1 Introduction The increasing demand to provide Quality of Service (QoS) over Internet type networks, which are essentially best effort in nature, has led to the emergence of various architectures and signalling schemes such as Differentiated Services (DiffServ) [1], Multi Protocol Label Switching (MPLS) [2], IntServ’s Resource Reservation Protocol (RSVP) [3] and Subnet Bandwidth Management [4]. For example Microsoft has introduced Winsock2 GQoS (Generic QoS) APIs in their Window OS that provides RSVP signalling, QoS policy support, and invocation of traffic control [5]. CISCO and other vendors have also built routers and switches that support RSVP, DiffServ and MPLS capabilities [6]. Over the next few years we are going to witness rapid transformation in the functions provided by network infrastructures, from providing mere connectivity, to a wider range of tangible and flexible services involving QoS. However, in today’s already complex network environment, creating, provisioning and managing such services is a great challenge. First, service and network providers have to deal with a myriad of user requests that come with diverse Service Level Agreements (SLAs) or QoS requirements. These SLAs then need to be mapped to respective policy and QoS schemes, traffic engineering protocols, and so on, in D. Bustard, W. Liu, and R. Sterritt (Eds.): Soft-Ware 2002, LNCS 2311, pp. 14–30, 2002. © Springer-Verlag Berlin Heidelberg 2002
An Architecture for Agent-Enhanced Network Service Provisioning
15
accordance with the underlying technologies. This further involves dynamic control and reconfiguration management, monitoring, as well as other higher-level issues such as service management, accounting and billing. Matching these service requirements to a set of control mechanisms in a consistent manner remains an area of weakness within the existing IP QoS architectures. These processes rely on the underlying network technologies and involve the cooperation of all network layers from top-to-bottom, as well as every network elements from end-to-end. Issues regarding SLA arise due to the need to maximize customer satisfaction and service reliability. According to [7], many end users and providers in general are still unable to specify SLAs in a way that benefits both parties. Very often, the service or network providers will overprovision their networks which leads to service degradation or alternatively they may fail to provide services to the best of their networks capabilities. Shortcomings cover a wide range of issues such as content queries, QoS preferences, session preferences, pricing and billing preferences, security options, and so on. To set up a desired service from end-to-end, seamless SLA transactions need to be carried out between users, network providers and other service providers. We propose an agent-enhanced framework that facilitates these services. Autonomous agents offer an attractive alternative approach for handling these tasks. For example a service provider agent can play a major role in guiding and deciphering users’ requests, and is also able to respond quickly and effectively. These issues are critical, as the competitiveness of future providers relies not only on the diversity of the services they can offer, but also their ability to meet customers’ requirements. This rest of the paper is organized as follows: Section 2 discusses related research in this area. Section 3 investigates various aspects of subscription and session SLA issues for a VLL service such as guaranteed bandwidth, service start time, session time, and pricing. A generic SLA utility model for multimedia services is also explained. Section 4 describes the architecture and the agent system implementation. Section 5 provides a brief service brokering demonstration using an industrial agent platform. In section 6 a number of case studies on bandwidth negotiation and dynamic pricing are described.
2 Related Work Our work is motivated by a number of research themes, especially the Open Signalling community (OPENSIG)’s standard development project, IEEE P1520 [8], and Telecommunications Information Networking Architecture Consortium (TINAC) [9] initiatives. IEEE P1520 is driving the concept of open signalling and network programmability. The idea is to establish an open architecture between network control and management functions. This enhances programmability for diverse kinds of networks with diverse kinds of functional requirements, interoperability and integration with legacy systems. TINA-C promotes interoperability, portability and reusability of software components so that it is independent from specific underlying technologies. The aim is to share the burden of creating and managing a complex system among different business stakeholders, such as consumers, service providers, and connectivity providers. The authors in [11] proposed a QoS management architecture that employs distributed agents to establish and maintain the QoS
16
D. Chieng et al.
requirements for various multimedia applications. Here, QoS specification is categorized into two main abstraction levels: application and system. The authors in [10] introduced Virtual Network Service (VNS) that uses a virtualisation technique to customize and support individual Virtual Private Network (VPN)’s QoS levels. While this work concentrates on the underlying resource provisioning management and mechanisms, our work focuses on the aspects of service provisioning using agents on top of it, which is complementary. The capability of current RSVP signalling is extended in [12] where users are allowed to reserve bandwidth or connections in advance so that blocking probability can de reduced. Authors in [13] offered a similar idea but use reservation agents to help clients to reserve end-to-end network resources. The Resource Negotiation and Pricing Protocol (RNAP) proposed by [14] enables network service providers and users to negotiate service availability, price quotation and charging information by application. This work generally supports the use of agents and demonstrats how agents can enhance flexibility in provisioning network services. In our work we extended the research by looking at the effects of allowing SLA negotiation and the results of dynamic pricing in a competitive multioperator networks environment.
3 Service Level Agreement The definition of SLAs or SLSs is the first step towards QoS provisioning. It is essential to specify the SLAs and SLSs between ISPs and their customers, and between their peers with assurance that these agreements can be met. A Service Level Agreement (SLA) provides a means of quantifying service definitions. In the networking environment, it specifies what an end user wants and what a provider is committing to provide. The definitions of an SLA differ at the business, application and network level [15]. Business level SLAs involve issues such as pricing schemes and contract. Application level SLAs are concerned with the issues of server availability (e.g., 99.9% during normal hours and 99.7% during other hours), response time, service session duration, and so on. Network level SLAs (or also often referred as Service Level Specifications (SLSs)) involve packet level flow parameters such as throughput requirements or bandwidth, end-to-end latency, packet loss ratio/percentage, error rate, and jitter. In this work, we concentrate on the SLA issues involved in establishing a Virtual Leased Line (VLL) type of services over IP networks. The following describes some basic SLA parameters considered in our framework during a service request [16]. Guaranteed Bandwidth (bi) for request i is the amount of guaranteed bandwidth desired by this service. b may be the min or mean guaranteed bandwidth depending on the user’s application requirement and network provider’s policy. This parameter is considered due to the ease of its configuration and also because it is the single most important factor that affects other lower level QoS issues such as delay and jitter. For our prototype system, the guaranteed bandwidth can be quantified in units of 1kb, 10kb, and so on. Reservation Start Time (Tsi) is the time when this service needs to be activated. If a user requires an instant reservation, this parameter is simply assigned to the current time. A user can also schedule the service in advance. Any user who accesses the
An Architecture for Agent-Enhanced Network Service Provisioning
17
network before his or her reservation start time may only be given the best effort service. Non-preemptable Session (Ti) is the duration required for this guaranteed service. When this duration expires, the connection will automatically go into preemtable mode where the bandwidth can no longer be guaranteed. The user needs to renegotiate if he or she wishes to extend the reservation session. This parameter is typically used for Video on Demand (VoD) and news broadcast type services where service session is known a priori. Price (Pi). It is believed that value-added services and applications are best delivered and billed on individual or per-transaction basis. Pi can be the maximum price a user is willing to pay for this service which may represent the aggregated cost quoted by various parties involved in setting up this service. For example, the total charge for a VoD service can be the sum of connection charge imposed by the network provider, content provider’s video delivery charge and service provider value added charge, etc. Alternatively the service can also be charged on a usage basis such as cost per kbps per min. Rules ( i) contain a user’s specified preferences and priorities. This is useful at times when not all the required SLA parameters can be granted. User can specify which parameter is the priority or which parameter is tolerable. 3.1 SLA Utility Model The SLA Management utility model proposed by [17] is adopted in this work (Fig. 1). Utility
Resource Profile
u1
r1 Service Provider
u2
r2
ri ui Sum of each service utility ∑iu i (q i )
SLA Management Objectives Maximize user satisfaction, resource usage, profit
Resource with Constraint
∑ r (q ) ≤ C i i
i
Fig. 1. General Utility Model
This is a mathematical model for describing the management and control aspects of SLAs for multimedia services. The utility model formulates the adaptive SLA management problem as integer programming. It provides a unified and
18
D. Chieng et al.
computationally feasible approach to make session request/admission control, quality selection/adaptation, and resource request/allocation decisions. For a user i, a service utility can be defined as ui(qi), where qi is the service quality requested by this session. This utility then needs to be mapped to the amount of resource usage, ri(qi). The service quality represents the QoS level requested by a user, which then needs to be mapped to bandwidth, CPU or buffering usage. In this work however, only the bandwidth resource is considered. The scope of total utility U, is infinite but the total amount of resource available, i.e. link capacity C is finite. The objective of a service provider is to maximize the service utility objective function U: U =max
∑
∑
m
x j =1 ij
∑ ∑ n
n u (q ) =max i =1 i i
i =1
m
x u j =1 ij ij
= 1 and x ij ∈ {0, 1}
(1) (2)
Where n = total number of service sessions and m = total number of service quality options. The total resource usage can be represented by: R=
∑
n r (q ) = i =1 i i
∑ ∑ n
i =1
m
x r j =1 ij ij
≤ C,
(3)
Equation (2) means that a user can only choose one service quality at one time. Equation (1) & (3) mean that the problem of SLA management of a multimedia service provider is to allocate the resource required by each customer, while maximizing the service utility under the resource constraint. From the SLA parameters described in the previous section, a user request i for a VLL service can be represented by the extended utility function [16]: ui (bi, Tsi, Ti, Pi,
i)
(4)
After mapped to resource usage, the utility is: ri (bi, Tsi, Ti,)
(5)
From [12], pre-emption priority, p(t) is introduced. When p(t)=1, the session bandwidth is guaranteed when p(t)=0, the session bandwidth is not guaranteed. This can be illustrated by: pi(t) =
0 , t < Ts i , t > Ts i + Ti 1 , Ts i < t < Ts i + Ti
(6)
If we consider the case of a single link, where C = total link capacity, the total reserved bandwidth resource at time t, R(t) can be represented as: R(t) = r1 + r2 + r3 + r4 + ....rn = b1 . p1 (t ) + b2 . p 2 (t ) + b3 . p (t ) + b4 . p 4 (t ) + ....bn . p n
= ∑i =1 bi . pi (t ) & n
(7)
Where n = number of active VLLs at time t. This allows network provider to know the reserved bandwidth load at present and in advance. In order to provide end-to-end bandwidth reservation facility (immediate or future), three sets of databases are required. User Service Database (USD) stores individual customer profiles and information particularly the agreed SLAs on per service session basis. This information is essential for resource manager to manage individual user sessions such as when to
An Architecture for Agent-Enhanced Network Service Provisioning
19
guarantee and when to preempt resources. This database can also be utilized for billing purposes. Resource Reservation Table (RRT) provides a form of lookup table for network provider to allocating network resources (bandwidth) for new requests. It tells the network provider regarding the current or future available resources in any link at DQ\WLPH $ PLQLPXP XQLW RI VHVVLRQ WLPH PXVW EH GHILQHG 7KLV FDQ EH minutes, 1 minutes or one second depending on the network provider’s policy. Similarly, the minimum amount of guaranteed bandwidth can be defined in a PLQLPXPXQLWRI WKDWFDQEHTXDQWLILHGLQWKHXQLWVRINENEHWF Path Table (PT) store the distinct hop-by-hop information from an ingress point to an egress point and vice versa. If there is an alternative path, another set of path table should be created. These tables are linked to RRTs. Reserved BW, R(t) Fail Available BW
Rx
C bx
Tx
Success Ry
Reserved BW Time
t Tsx Fig. 2. RRT and Reservation Processes
Figure 2 illustrates the reservation table and how do reservation processes take place at a link for requests x and y. It can be observed that requested ux‘s guaranteed bandwidth request couldn’t be honoured throughout the requested time period Tx. In this case the requester has a number of options. They can either reduce the amount of bandwidth requested, postpone the reservation start time, decrease the nonpreemptable session duration, or accept the compromise that for the short period their bandwidth will drop off. This system offers a greater flexibility on resource reservation compared to conventional RSVP requests. In RSVP, reservation process will fail even if only a single criterion such as the required bandwidth is not available. In addition, the proposed mechanism does not pose scalability problems as experienced in RSVP as the reservation states and SLAs are stored in a centralized domain server (network/resource manager server) and not in the routers. Unlike the existing resource reservation procedures, which are static and normally lack of quantitative knowledge of traffic statistics, this approach provides a more accountable resource management scheme. Furthermore, the resource allocated in existing system is based on initial availability and does not take into account changes in future resource availability.
20
D. Chieng et al.
4 Agent-Enhanced Service Provisioning Architecture Software agents offer many advantages in this kind of environment. Agents can carry out expertise brokering tasks on behalf of the end users, the service and network providers. Agents can negotiate services at service start-up or even when service is in progress. Agents are particularly suited for those tasks where fast decision-making is critical. These satisfy the two most important aspects of performance in an SLA; availability and responsiveness [15]. The following attributes highlight the capabilities of agents [18]. Autonomy. Agents can be both responsive and proactive. It is able to carry out tasks autonomously on their owners’ behalf under pre-defined rules or tasks. The level of their intelligence depends on the given roles or tasks. Communication. With this ability, negotiations can be established between two agents. FIPA’s [19] Agent Communication Language (ACL) has become the standard communication language for agents. An ACL ontology for VPN has also been defined within FIPA. Cooperation. Agents can cooperate to achieve a single task. Hence, agents representing end users, service providers and network providers are able to cooperate to set-up an end-to-end service e.g. VPN that spans across multi domains. Within a domain, agents also enhance coordination between nodes, which is lacking in most current systems. Mobility. Java-based agents can migrate across heterogeneous networks and platforms. This attribute differentiates mobile agents from the other forms of static agents. Mobile agents can migrate their executions and computation processes to remote hosts. This saves shared and local resources such as bandwidth and CPU usage compared to conventional client/server systems. Thus, intensive SLA negotiation processes can be migrated to the service provider or network provider’s domain. The value-added services provided by the agent system have been developed using Phoenix v1.3 APIs [20]. Phoenix is a framework for developing, integrating and deploying distributed, multi-platform, and highly scalable Web/Java-based applications. Being 100% Java-based, Phoenix is object-oriented in nature and platform independent. The Phoenix Core Services offers various functions required in our framework i.e. service/user administration, session management, resource management, event management, service routing, logging, billing, template expansion, and customization. The Phoenix Engine is basically a threaded control program that provides the runtime environment for our servlet-based agents. The simplicity of the Phoenix framework allows fast prototyping and development of multi-tiered, highly customisable applications or services. Figure 3 shows our overall prototype system architecture. This represents a simplified network marketplace consisting of user, network and content provider domains. For our prototype system, the agents are built using Java 2 (JDK 1.2.2) and J2EE Servlet API [21]. These agents communicate via HTTP v1.1 [22] between different Phoenix Engines/virtual machines (JVMs), and via local Java method calls within the same Phoenix Engine/VM. Port 8888 is reserved as the Agents’ Communication Channel (ACC). HTTP is preferred due to its accessibility in current web environment. The prototype system also incorporated some components from Open Agent Middleware (OAM) [23] developed by Fujitsu Laboratories Ltd. that allows a
An Architecture for Agent-Enhanced Network Service Provisioning
21
dynamic, flexible and robust operation and management of distributed service components via mediator agents. This realizes services plug-and-play, component repository management, service access brokering, dynamic customization according to user preferences, and so on.
Telecom Lab LAN User Domain
UA
Network Domain
Content Provider Domain
CPA
ASPA
User GUI
Agent Communication Interface
Simulation Environment
RM TA
TA RA
User Terminal
Stream Flow
Stream Interface
NA SM
Agent Communication Channel (Http)
RA
Network Provider
Content Server
Fig. 3. Agent-Enhanced Architecture.
In operation, the UA (User Agent) first receives requests from users to establish a service. ASPA (Access Service Provider Agent) acts as the central contact point for all the authorized UA, CPA (Content Provider Agent) and NA (Network Agent). The tasks undertaken by the ASPA include brokering, scheduling and pricing content delivery with the CPA. It also facilitates connection configuration, reconfiguration and teardown processes with the NA. OAM Mediator components are incorporated within ASPA to provide the brokering facility. The NA is responsible for mapping user level SLAs into network level SLAs. The SM (Service Manager) manages individual user sessions i.e. the USD and the RM (Resource Manager) manages the network resources that include the collection of PTs and RRTs (Resource Reservation Tables) within its domain. At the element layer, we introduce a RA (Router Agent) that performs router configurations, flow management and control functions such as packets classification, shaping, policing, buffering, scheduling and performance monitoring according to the required SLA. The TA (Terminal Agent) manages local hardware and software components at the end system such as display property, RAM, resources, drivers, MAC/IP Addresses, applications library, etc. In the current prototype, most of the functions residing within the network layer and below are implemented in simulation environment.
22
D. Chieng et al.
5 Service Brokering Demonstration Figure 4 illustrates various stakeholders involved in our prototype system scenario. In this framework, a novel approach is taken where the real-time agents are allowed to communicate with a simulated network model via TCP/IP socket interfaces.
Phoenix Engine
UA Servlet
VoD1 Agent Servlet
ASP Agent Servlet Mediator
Web Browser Manager/ Monitoring Agent Servlet
Network Agent Servlet
Simulator
BONeS Interface Module
VoD2 Agent Servlet
Music Agent Servlet
Dbase Agent Servlet
TCP/IP
BONeS Network Manager Module
BONeS Network Elements
Fig. 4. Service Brokering Scenario
Video on Demand (VoD), Music, and Database Agents have earlier registered their services with the ASP agent. When first contacted by the UA, the ASPA offers users a range of services to which they can subscribe. For example, if a VoD service is chosen, the ASPA will first lookup its database for registered content providers that match the user’s preferences. If a use chooses to ‘subscribe’, ASPA will propagate the request to the target agent, which then take the user through a VoD subscription process. The experimental VoD demonstration system allows users to select a movie title, desired quality, desired movie start time, maximum price they are willing to pay, tolerances, and so on. Here, the service quality, qi of a video session can be classified in terms of high, medium and low. The chosen service quality will then be mapped to the amount of resource, ri(qi) required. The UA then encodes these preferences and sends it to ASPA. The process is summarised in Figure 5.
An Architecture for Agent-Enhanced Network Service Provisioning 2: Submit Request /Re-Negotiate
1: Submit Request /Negotiate
UA
23
ASPA
VOD1 3: Request Accepted /Request Denied
6: Ack User 5: Connection Granted /Connection Failed
4: Request/ Re-Negotiate Connection
NA
Fig. 5. Negotiation and Configuration
5.1 Bandwidth Negotiation Evaluation For this scenario, we assume there is only one link and only bandwidth is negotiable. The following simulation parameters were applied: Link capacity, C = 100Mbps User requests, u(t) arrived according to Poisson distribution with mean request arrival rate, and all requested for immediate connections. Exponential mean session duration, T or -1=300s Users’ VLL requested bandwidth unit, Br are according to exponential random distribution, with minimum requirement, B rmin =1unit and with a max cut-off limit,
B rmax . The request that exceed B rmax will be put back to the loop until it satisfies the limit. If 1 unit is assumed 64kbps, hence the bandwidth requested, Br ranges between {64..10000}kbps. This emulates the demand for different qualities of voice, hi-fi music, and video telephony up to high quality video conferencing or VoD sessions. Users’ bandwidth tolerance is varied from 0% (not negotiable) up to 100% (accept any bandwidth or simply best effort). Arrival rates, requested bandwidth and session duration are mutually independent. The data was collected over a period of 120000s or 33.3 hours simulation time. Here bandwidth negotiations only occurred at resource limit. When the requested bandwidth exceeds the available bandwidth, ri(t) + R(t) ≥ C, for the whole requested session, Tsi< t < Tsi + Ti, the ASPA will have to negotiate the guaranteed bandwidth with the UA. For the following experiments, different levels of mean percentage offered load (requested bandwidth) were applied. These loads are defined in the percentage of link capacity where 120% Mean Offered Load means the demand for bandwidth is exceeding the available capacity. Figure 6 shows the request blocking or rejection probability when bandwidth negotiation at different tolerance levels was applied. It is obvious that if bandwidth request is tolerable, the rejection probability can be reduced. Here, 100% toleration is equivalent to best effort request. Figure 7 shows that the effect on the mean percentage reservation load or mean R is almost negligible at 60% mean offered load or lower. This is because only those users whose requested bandwidth is not available are subjected to negotiation.
24
D. Chieng et al. 0.3000
Mean % Reserved Load vs. Offered Load 0% Tol 20% Tol 40% Tol 60% Tol 80% Tol 100% Tol
0.2000 0.1500 0.1000 0.0500 0.0000
0
20
40
0% BW Tol 20% BW Tol 40% BW Tol 60% BW Tol 100% BW Tol
88.00 Mean % Reservation Load
Blocking Probability
0.2500
60
80
100
83.00 78.00 73.00 68.00 63.00 58.00
120
60
70
% Offered Load (Requested BW)
Fig. 6. Request Rejection Probability
BWI vs Mean % Offered Load
0.95 0% BW Tol 20% BW Tol 40% BW Tol 60% BW Tol 100% BW Tol
1.20 BWI
Improvement (Mean % Load)
1.40
120
1
20%Tol 40%Tol 60%Tol 100%Tol
1.60
110
Fig. 7. Mean % Reservation Load(R)
Improvement on Mean % Reservation Load 1.80
80 90 100 Mean % Offered Load
1.00
0.9
0.80 0.85
0.60 0.40
0.8
0.20 0.00
0.75
60
70
80
90
100
110
120
40
Mean % Offered Load
Fig. 8. Improvement on Mean %R
60
80
100
120
Mean % Offered Load
Fig. 9. Bandwidth Index (BWI)
In Figure 8, we observe a significant improvement on mean R when the bandwidth required is tolerable. An improvement 1% R means an extra 1 Mbps of bandwidth on average was reserved/sold over 33.3 hours. If 1 Mbps was priced at £2 per hour, this would generate the provider an extra revenue of £66.60. The Bandwidth Index (BWI) is introduced in Figure 9. It corresponds to the amount of bandwidth granted over the amount of bandwidth originally requested or bg/br. We can see that at low load, most users get what they want (BWI ~ 1). However at high load, those users who can tolerate their bandwidth requirements will have to accept lower bandwidth if they need the service.
6 Dynamic Bandwidth Pricing Evaluation A demonstration on dynamic bandwidth pricing was carried out during the technical visit session at Fujitsu Telecommunications Europe Ltd. headquater in Birmingham in conjuction with World Telecommuncation Congress (WTC2000). In each session, three volunteers were invited from the audience to assume the role of the future network operators. Their common goal was basically to maximize their network revenue by dynamically pricing bandwidth within the agent-brokering environment. The scenario presents three competing network providers with identical network topology and resources. Each network consisted of 4 routers with 2x2 links and all provide connections to a multimedia server.
An Architecture for Agent-Enhanced Network Service Provisioning
25
All the possible paths from one ingress point to another egress point were precomputed and stored in the PTs (path tables). The Network Provider Agent (NPA) always offers the shortest available path to the ASPA. The access service provider agent (ASPA) acts as the mediator who aggregates resource requirements by various user requests and search for the best possible deals in order to satisfy customers’ requirements. A simple LAN was set-up for this game/demo. The multi-operator network model coupled with internal agent brokering mechanisms was run on the Sun Ultra 10 workstation. A few PCs were set up for the competing network operators and a separate monitoring screen was provided for other audience’s viewing. In this game we considered some universal customer SLA preferences such as best QoS (guaranteed bandwidth) and cheapest price. We assumed most users prefer QoS as their first priority and the cheapest offering price as the second priority. Hence the User’s SLA preferences are: bi, Tsi, Ti = Not negotiable (priority) AND Pi < 21 (maximum acceptable price) Then ACCEPT (min NetA||NetB||NetC) Therefore if the cheapest network provider could not provide the required guaranteed flow bandwidth, the service provider would opt for the second cheapest one. During the game, ASPA continually negotiated with NPAs to obtain the required number of VLLs to a multimedia server that offered voice, audio, VoD and data services. In order to show the effects of dynamic pricing, we allowed the invited audience/acting network operator to manually change the bandwidth price. For this demo we did not provide different pricing scheme for different user classes (voice, video, etc.), although this is also possible. We also did not provide bandwidth negotiation facility in this game, as we only want to focus on dynamic pricing competition between the operators. Table 1 describes the billing parameters associated with this demonstrator. Table 1. Billing Parameters
Items
Description
Our Price,
pi
The selling price for a bandwidth unit per min.for VLL i.
Cost Price,
θi
The cost price for a bandwidth unit per minute for VLL i. This value changes according to link’s reservation load and can loosely represent the management overhead. This represents the overall maintenance cost, hardware cost, labour cost, etc per minute.
Operation Cost, s Guaranteed bandwidth, No. of links, Session,
Ti
li
bi
This is the amount of guaranteed/reserved bandwidth unit allocated to VLL i. The number of links used by VLL i. Since no. of links is considered in the charging equation, the shortest available path is therefore preferred. The session length in minute subscribed by VLL i.
26
D. Chieng et al.
In this game, each user was billed at the end of their service session. Therefore the calculation for gross revenue earned from each VLL i is based on the following equations: Revi = ( p i
− θ i ) ⋅ bi ⋅ l i ⋅ Ti = Pi , total charge imposed to user i
(8)
Total the gross revenue earned by a network operator, Revgross after period t hence: Revgross(t) =
∑
n (t )
i =1
Rev i
(9)
Where t = simulation time elapsed (0 ≤ t ≤ Tstop ) in minute and n(t) = total number of VLL counts after t. The total net revenue Revnet after t is then: Revnet(t) =
∑
n (t )
i =1
Rev i – s.t
(10)
Each player or acting network operator could monitor his/her competitors’ offered bandwidth prices from the console. The instantaneous reservation load for a network’s links, and the network topology showing current network utilisation, were displayed. The reservation load R(t) is the sum of all the independent active VLLs’ reserved bandwidth. The number of active users, and network rejection statistics were also reported. For this game, the operators’ revenues were solely generated from VLL sales. A monitoring window displayed the total revenues (profit/lost) generated by each network operator. We associated the link QoS level in terms of Gold, Silver and Bronze by referring to link’s reservation load where 0