IBM Research Report. A Negotiation Protocol Framework for WS-Agreement

Similar documents
IBM Research Report. Model-Driven Business Transformation and Semantic Web

IBM Research Report. A Web-Services-Based Deployment Framework in Grid Computing Environment

IBM Research Report. How to Enable Policy-based Interactions in Dynamic Wireless Networks?

Research Report. Developing Highly-Responsive User Interfaces with DHTML and Servlets. Katherine Betz, Avraham Leff, James T.

IBM Research Report. Inter Mode Selection for H.264/AVC Using Time-Efficient Learning-Theoretic Algorithms

Dagstuhl Seminar on Service-Oriented Computing Session Summary Cross Cutting Concerns. Heiko Ludwig, Charles Petrie

IBM Research Report. WebRB: A Different Way to Write Web-Applications

IBM Research Report. Why PBD Systems Fail: Lessons Learned for Usable AI

IBM Research Report. Meeting Service Level Agreements In a Commercial Grid

Trademark OGSA is a registered trademark and service mark of the Open Grid Forum.

Web Services QoS: External SLAs and Internal Policies Or: How do we deliver what we promise?

IBM Research Report. Joefon Jann, Niteesh Dubey IBM Research Division Thomas J. Watson Research Center P.O. Box 218 Yorktown Heights, NY 10598

IBM Research Report. Web Services QoS: External SLAs and Internal Policies Or: How Do We Deliver What We Promise?

FlexFlow: Workflow for Interactive Internet Applications

IBM Research Report. VESA Digital Packet Video Link (DPVL) Standard and Its Applications

Code Administration Code of Practice

Sourcing-Awarding- Best and Final Offer (BAFO)

IBM Research Report. A Framework for E-Services: A Three-Level Approach towards Process and Data Management

IBM Research Report. Service-Oriented Workflow for Digital Media Broadcasting. Ubiquitous Computing Lab IBM Korea

Service-oriented Assurance

IBM Research Report. Sysman: A Virtual File System for Cluster System Management

Implementation Issues in the ebxml CPA formation process - the Referencing Problem

ECONOMIC OPERATOR USER MANUAL EUROPEAN DYNAMICS S.A.

IBM Research Report. The Semantics of Multiple Annotations

This instruction will guide you through all the procedures and activities, necessary for your participation in the trading.

IBM Research Report. Transforming Contact Center Processes to Facilitate Agent Efficiency and End-User Enablement

IBM Research Report. The Semantic Analysis Workbench (SAW): Towards a Framework for Knowledge Gathering and Synthesis

CCGT Grant Application System User Guide for Applicants, Reviewers and Co-Signatories

Code of Ethics Certification 2018 CHECKLIST

DAML: ATLAS Project Carnegie Mellon University

Use of Mobile Agents for IPR Management and Negotiation

2010 IEEE. Personal use of this material is permitted. Permission from IEEE must be obtained for all other uses, in any current or future media,

WHY WE NEED AN XML STANDARD FOR REPRESENTING BUSINESS RULES. Introduction. Production rules. Christian de Sainte Marie ILOG

Case 1:98-cv CKK Document Filed 06/15/2006 Page 1 of 7 IN THE UNITED STATES DISTRICT COURT FOR THE DISTRICT OF COLUMBIA

Lesson 5 Web Service Interface Definition (Part II)

IBM Research Report. Quantifying the Complexity of IT Service Management Processes

3. What is the name of the organisation that runs your business registry?

GC0102 Mod Title: EU Connection Codes GB Implementation Mod 3

Open Cloud Computing Interface Service Level Agreements

LOUGHBOROUGH UNIVERSITY RESEARCH OFFICE STANDARD OPERATING PROCEDURE. Loughborough University (LU) Research Office SOP 1027 LU

DON XML Achieving Enterprise Interoperability

IBM Research Report. Virtual Machines with Sharable Operating System

IBM Research Report. Overview of Component Services for Knowledge Integration in UIMA (a.k.a. SUKI)

IBM Research Report. DBC-JS: Middleware for Secure Web-Client Access to Relational Data

A Reflective Database-Oriented Framework for Autonomic Managers

Data Quality Assessment Tool for health and social care. October 2018

China Code of Ethics Certification 2018 CHECKLIST

Implementation of Article 6 of the Paris Agreement status and pathways to COP24

Final Project Report

Dynamic Dependencies in Application Service Management

IBM Research Report. Semantic Annotation of Multimedia Using Maximum Entropy Models

The Center for Internet Security

Considerations for negotiation and monitoring of Service Level Agreements

echemportal: the Global Portal to Information on Chemical Substances Bob Diderich OECD

BENCHMARKING PPP PROCUREMENT 2017 IN GABON

Building Information Modeling and Digital Data Exhibit

IBM Research Report. An Introduction to SPARQL Optionals

Accelerated Library Framework for Hybrid-x86

IBM Research Report. SPU Based Network Module for Software Radio System on Cell Multicore Platform

IBM Research Report. Using XSLT to Detect Cycles in a Directed Graph

2016 New Zealand Spatial Excellence Awards: Category: Award for Technical Excellence - Award Application

Guideline Supplier Processes

Stylus Studio Case Study: FIXML Working with Complex Message Sets Defined Using XML Schema

U.S. Japan Internet Economy Industry Forum Joint Statement October 2013 Keidanren The American Chamber of Commerce in Japan

Grid Computing Systems: A Survey and Taxonomy

Working towards a Metadata Federation of CLARIN and DARIAH-DE

Basic Profile 1.0. Promoting Web Services Interoperability Across Platforms, Applications and Programming Languages

Standardization mandate addressed to CEN, CENELEC and ETSI in the field of Information Society Standardization

HOW ARE ELECTRONIC JOURNALS COOKED?

The Design of The Integration System for OTOP Products Data Using Web Services Technology, Thailand

Active Adaptation in QoS Architecture Model

IBM Research Report. Avoiding Disruptive Failovers in Transaction Processing Systems with Multiple Active Nodes

ONLINE SPACE APPLICATION GUIDE Part I: Individual application Part II: Group application

Presented by Wolfgang Ziegler, Open Grid Forum

Managed Security Services - Event Collector Implementation, Configuration and Management

Consolidation Team INSPIRE Annex I data specifications testing Call for Participation

IBM Research Report. Breaking Out of Eclipse: Developing an ActiveX Host for SWT

ICENI: An Open Grid Service Architecture Implemented with Jini Nathalie Furmento, William Lee, Anthony Mayer, Steven Newhouse, and John Darlington

A SEMANTIC MATCHMAKER SERVICE ON THE GRID

SECRETARIAT OF SHANGHAI COOPERATION ORGANISATION. Beijing 2015г.

B. Assets are shared-by-copy by default; convert the library into *.jar and configure it as a shared library on the server runtime.

Distributed Computing Building Blocks for Rational Agents

Cybersecurity-Related Information Sharing Guidelines Draft Document Request For Comment

Village Software. Security Assessment Report

CGI Deliverables Approval and Maintenance Process

GRIDS INTRODUCTION TO GRID INFRASTRUCTURES. Fabrizio Gagliardi

Unifier Project Controls User Guide

JISC PALS2 PROJECT: ONIX FOR LICENSING TERMS PHASE 2 (OLT2)

IBM Research Report. CFE - A System for Testing, Evaluation and Machine Learning of UIMA Based Applications

Draft Applicant Guidebook, v3

Motivation and Intro. Vadim Ermolayev. MIT2: Agent Technologies on the Semantic Web

People. Processes. Integrating Globally.

Response to the. ESMA Consultation Paper:

IN THE UNITED STATES DISTRICT COURT FOR THE DISTRICT OF COLUMBIA

2.0 02/10/2013 Updates following the CACoP review December /11/2014 Proposed updates following the CACoP review October 2014

Data Curation Handbook Steps

IBM Research Report. Compatibility Analysis of WSLA Service Level Objectives

Academic Editor Tutorial

Research Report. IBM Research. Trends in Access Control. RZ 3529 (# 99473) 01/19/04 Computer Science 4 pages. Thomas Groß

BEST PRACTICE GUIDE ON THE USE OF THE ELECTRONIC COMMON TECHNICAL DOCUMENT

Transcription:

RC24094 (W0610-165) October 31, 2006 Computer Science IBM Research Report A Negotiation Protocol Framework for WS-Agreement Sebastian Hudert Department of Information Systems University of Bayreuth 95440 Bayreuth Germany Heiko Ludwig IBM Research Division Thomas J. Watson Research Center P.O. Box 704 Yorktown Heights, NY 10598 Guido Wirtz Distributed and Mobile Systems Group Otto-Friedrich University Bamberg 96052 Bamberg Germany Research Division Almaden - Austin - Beijing - Haifa - India - T. J. Watson - Tokyo - Zurich LIMITED DISTRIBUTION NOTICE: This report has been submitted for publication outside of IBM and will probably be copyrighted if accepted for publication. It has been issued as a Research Report for early dissemination of its contents. In view of the transfer of copyright to the outside publisher, its distribution outside of IBM prior to publication should be limited to peer communications and specific requests. After outside publication, requests should be filled only by reprints or legally obtained copies of the article (e.g., payment of royalties). Copies may be requested from IBM T. J. Watson Research Center, P. O. Box 218, Yorktown Heights, NY 10598 USA (email: reports@us.ibm.com). Some reports are available on the internet at http://domino.watson.ibm.com/library/cyberdig.nsf/home.

A Negotiation Protocol Framework for WS-Agreement Sebastian Hudert 1, Heiko Ludwig 2, and Guido Wirtz 3 1 Department of Information Systems, University of Bayreuth, 95440 Bayreuth, Germany, sebastian.hudert@arcor.de 2 TJ Watson Research Center, IBM, 10532 Hawthorne, New York, hludwig@us.ibm.com 3 Distributed and Mobile Systems Group, Otto-Friedrich University Bamberg, 96052 Bamberg, Germany, guido.wirtz@wiai.uni-bamberg.de Abstract. The Web Services Agreement specification defines a format and an establishment protocol for Service Level Agreements for Service Oriented Architectures. The current draft s simple request-response protocol for agreement creation only addresses bilateral offer exchanges. This paper proposes a framework augmenting this WS-Agreement to enable negotiations according to a variety of - more advanced - negotiation protocols. A meta-protocol is presented to exchange information on supported negotiation protocols, agree on a protocol and then execute the negotition protocol itself. The meta-protocol is based on a comprehensive set of parameters describing the negotiation protocol to be conducted. With this framework a variety of bilateral and multilateral negotiation protocol definitions can be created, communicated to participating software agents and subsequently conducted, all resulting in valid Web Services Agreements. 1 Introduction Service Level Agreements (SLA) represent qualitative guarantees placed on service invocations within a service oriented environment. Service consumers benefit from these guarantees because they make non-functional properties of service predictability. On the other hand, SLAs enable service capacity management for service providers. By employing SLAs, a robust service oriented architectures can be realised, even across company boundaries. To support broad application, standards for the structure of agreement documents as well as a a standard process to establish and monitor them are required. Such protocols are particularly important if the agreement creation is to be executed automatically. The Web Services Agreement (WS-Agreement) specification is a standardization effort conducted by the Open Grid Forum (OGF) in order to facilitate creation and monitoring of SLAs [1]. This standard defines an XML-based structural definition of SLA documents, a simple request-response protocol for agreeement creation as well as corresponding interfaces for agreement creation and monitoring. A WS-Agreement specifies functional properties and qualitative service level guarantees in a detailed way in a set of terms.

However, the proposed agreement creation process is restricted to a simple request-response protocol: one party (agreement initiator) creates an agreement document, possibly based on an agreement template, and proposes it to the other party (agreement responder). The agreement responder evaluates the offered agreement and assesses its resource situation before accepting or rejecting the offer. This protocol does not enable advanded negotiations formats such as auction, involving numerous parties in different roles. Enabling a variety of negotiation protocols would result in wider applicability of WS-Agreement for more demanding allocation problems. The incorporation of different negotiation protocols into the agreement creation process of WS-Agreement poses several problems: First, such protocols must be integrated seamlessly in the overall WS-Agreement protocol to enable subsequent agreement monitoring, as defined in the WS-Agreement specification. Furthermore, in an automated negotiation, all participating components - hee referred to as agents - must be aware of all rules and constraints concerning the negotiation protocol. Finally, a corresponding infrastructure of role definitions, interfaces and methods has to be presented to facilitate the actual negotiations. To supply the negotiating agents with the necessary information to participate in the actual negotiation protocol a fixed, well known set of negotition protocol definitions could be specified. During the actual negotiation the corresponding protocol description is simply referenced. However, this limits the set of available negotiation protocols to a predefined, finite set. In the framework proposed in this paper, we define a meta-language for negotiation protocols. Using such a meta-language a multitude of specific negotiation protocols can be defined using a well-defined set of attributes and parameters. These protocol definitions have to be distributed to all prospective negotiators before the actual negotiation to inform them with protocol has been chosen. Furthermore, we propose a negotiation meta-protocol to distribute the negotiation definitions to all prospective negotiators and choose a negotiation protocol. Finally we define a generic negotiation protocol that is able to support all specific negotiation protocols that can be described with the presented negotiation attributes as extension to basic WS-Agreement offers. 2 Basic Definitions and Data Structures Before describing the exchange and negotiation protocols this section will give a short overview on the basic concepts and data structures used in the negotiation framework subsequently. 2.1 Negotiation Protocol Definition This framework supports a multitude of different negotiation protocols, like various auction types or one-on-one bargaining protocols. Each negotiation protocol that is to be conducted fully automated in multi-agent systems has to be exhaustively described. Only by providing a complete and machine-processable

process description its correct application in automated distributed systems can be guaranteed. In order to enable such an protocol description a set of negotiation attributes have been identified as a basis for this framework, as described in the next subsections. Theoretical Background To specify a comprehensive set of negotiation attributes this framework employs negotiation taxonomies originating in e-commerce research and economics. These taxonomies (e. g. [2], [3]) present a set of parameters that allow for detailed description of specific negotiation protocols. For this framework the existing taxonomies were integrated and consolidated in order to derive a set of attributes and corresponding domains suitable for definition of automated SLA negotiations among software agents. Negotiation Attributes For this framework the following attribute categories were identified: General Negotiation Process: Basic negotiation parameters like start, termination or negotiation rounds. Negotiation Context: Negotiation configuration in terms of involved roles and agents. Negotiated Issues: SLA terms to be negotiated in the corresponding negotiation. Offer Submission: Rules concerning the bidding process, like when an offer can be posed or what constraint it has to satisfy. Offer Allocation: Matchmaking rules for the neogtiation. Information Processing: Rules defining which information about the current negotiation and bidding history is available to which agent(s). With these attributes a multitude of 1:1 and 1:n negotiation protocols can be defined as detailed as is necessary for automated execution. For a more detailed description of the identified attributes, see [4]. Negotiation Types and Instances For the remaining paper negotiation types and instances will be distinguised. A negotiation type describes a general class of negotiations and defines their common attributes and elements. A negotiation instance, however, stands for one particular negotiation of some type. For example, a negotiation type can define, that there is one agent involved not allowed to post offers, whereas on the other side n agents can participate posting offers, in which every offer has to succeed the last posted offer by some amount and so on. This roughly describes the class of auctions. One particular negotiation instance of this negotiation type represents one particular auction conducted at some particular point in time. Hence, a negotiation instance defines only instance specific data, like an identifier, a reference to this negotiation s type or the involved agents, while a negotiation type specifies the remaining attributes of a negotiation as identified within the presented categories.

In order to supply the negotiating agents with the required information about negotiation types and instances two Extensible Markup Language (XML) document descriptions (formalised as XML-Schema documents) for each of these concepts were defined. These documents will be used within the actual negotiation protocols as described in the following sections. These XML-Schema documents are presented in [4]. 2.2 Negotiation Process Description This subsection will describe the abstract architecture of a negotiation process by relating the involved documents and roles. Abstract Architecture of Negotiation Documents The main negotiation object is a WS-Agreement template with its corresponding creation constraints as defined in the current WS-Agreement specification. Since this framework augments the current specification with possibilities to negotiate over a WS- Agreement this fundamental data structure is adopted for the (partial) definition of some service(s) to be negotiated. The creation constraints as part of this template are also used in this approach to give syntactical restrictions on the elements still to be filled out or altered during the negotiation. The negotiation type document as sketched in the previous section refers to the WS-Agreement template the negotiation is defined upon for specifying the negotiated issues. Given its content the Negotiation Type document defines which terms of a WS-Agreement can be negotiated and how to do so. A concrete negotiation is represented by a negotiation instance document as already hinted. This document refers to the negotiation s type, its participants and specifies a unique identifier. Finally, the result of the complete negotiation protocol is a valid WS-Agreement document satisfying the creation constraints as defined in the initial WS-Agreement referenced in the negotiation type document. Roles In order to describe the involved parties in a negotiation process three distinct roles are introduced for this framework: Negotiation Participant, Negotiation Coordinator and Information Service. Since this framework is employed in service oriented environments each of these roles offers some functionality as a service to the other agents involved in the negotiation, therefore providing a corresponding interface. In such a negotiation process the Negotiation Participants represent regular agents participating in the initial negotiation meta-protocol (used to distribute the negotiation documents to the prospective negotiators) and the negotiation process itself. Therefore the respective interface offers methods used in the exchange and the negotiation process. The Negotiation Coordinator is a logically centralised instance which handles admission of agents to a given negotiation as well as (re)distribution of the negotiation documents to the prospective negotiators. Hence, the coordinator

interface offers methods for querying instance and type documents or methods used for joining a concrete negotiation. The information distribution during the actual negotiation is administrated by the Information Service. This service offers information about the current status of a negotiation (for example the currently highest bid) or about the offer history to the negotiators. Employing the presented roles and data structures the next sections will introduce the negotiation meta-protocol for negotiation data and the negotiation protcol subsequently. 3 Negotiation Meta-Protocol This paper proposes a framework supporting the complete agreement creation process. As depicted in the following figure this creation process as defined in this work is divided into three distinct phases: first the negotiation protocol definition has to be distributed to all prospective negotiators as described in this section. Subsequently the actual negotiation process takes place, according to the rules defined and distributed in the previous phase. Finally in the agreement acceptance phase one offered agreement is accepted by one of the participants to terminate the negotiation. Fig. 1. Agreement Creation Process To enable automated SLA negotiations in service oriented environments the negotiation meta-protocol for the negotiation documents as well as the negotiation protocol will be defined in terms of method invocation sequences on the services offered by the three involved roles. The negotiation meta-protocol describes the process of distributing the necessary information about a negotiation protocol to the agents wanting to participate in it. This is done by distributing the already mentioned negotiation type and instance documents to the respective agents. 3.1 Involved Roles and Corresponding Interfaces In this subsection the roles and corresponding interfaces involved in the exchange process will shortly be described. For detailed method description and the corresponding WSDL documents see [4].

The central instance in such an exchange process represents the Negotiation Coordinator that provides these documents. The corresponding interface offers a set of query methods, used for requesting available negotiation type and instance documents, as well as a method for joining a particular negotiation. Also additional functionality for proposing or publishing negotiation documents is offered to the participants. The Negotiation Participant role is present in the exchange and the negotiation protocol. For the exchange process the corresponding interface offers methods to propose negotiation instances, to allow Negotiation Coordinators to actively distribute such documents, as well as functionality to update negotiation instance data. This is invoked by the Negotiation Coordinator to notify the participant of changed negotiation data, like newly joined agents. Using these methods some basic protocol components for the exchange process can be defined as described in the next subsection. 3.2 Protocol Components In order to define the negotiation meta-protocol for negotiation data only three basic protocol components have to be specified. More sophisticated negotiation meta-protocols can be defined by combining these basic elements. These three fundamental protocol compontents correspond to three scenarios possible within the negotiation meta-protocol: request for negotiation documents, proposal of negotation documents and mediated exchange process. Request for negotiation documents depicts the process of one agent requesting negotiation type or instance documents from the respective Negotiation Coordinator. An agent can query negotiation instances and subsequently join if desired or it can request negotiation types, create an instance document itself and propose it to the coordinator for further processing. Proposal of negotiation documents represents the process of actively proposing some instance document to a prosptective participant or coordinator. As just described this protocol component regularly follows a request for negotiation types in order to propose the newly created instance to the coordinating agent. Mediated exchange processes offer publish/subscribe functionality to the participants. Agents can publish negotiation instances at some Negotiation Coordinator (which does not have to act as coordinator for the remaining exchange process, but only as publication server) to make it available to a larger community of prospective negotiation participants. This way a distributed system of negotiation look-up servers can be created, as sketched in [4]. By combining these three basic protocol components a multitude of different exchange processes can be specified, all resulting in distributing the information, needed to participate in a particular negotiation, to all prospective participants.

4 Negotiation Protocol After supplying all negotiation participants with the negotiation type and instance documents the actual negotiation can start. The protocol governing this process is described in this section. In general, we describe every negotiation as a bidding process. Each party involved in a negotiation offers an agreement to the other party concerning the issues subject to the negotiation that is currently acceptable for them. Then the other party assesses the offered agreement and generates a counter-offer, accepts the offer of rejects it and terminates the negotiation. This way the two parties involved move from a conflict situation concerning some (logical) resource(s) to a consensus represented by the resulting agreement. Since SLA scenarios only exhibit two logical positions actively involved in a negotiation, the service providers and consumers, only such two-sided negotiation protocols are considered in this paper. Which agent involved in the bidding process can post offers and at which constraints are posted on the offer submission is defined within the negotiation type document, describing a distinct bidding process. The Negotiation Participant interface offers methods to place offers, accept and reject agreements in order to conduct WS-Agreement negotiations. These methods allow the three actions resulting from a received offer as already mentioned above: generating counter offers, accepting the offered SLA, or rejecting it and terminating the negotiation. The Information Service role provides access to information on the current negotiation status or past offers. The roles and interfaces presented for the negotiation protocol are capable of conducting any negotiation protocol describable with the attributes identified before. 5 Conclusion This paper proposes a comprehensive negotiation framework for WS-Agreement. Negotiation protocols can be specified in a description language and made available to parties interested in negotiations. Parties interested in negotiating an agreement first run the negotiation meta-protocol to establish which negotiation protocol is used. Subsequently, the protocol is executed, based on the WS- Agreement offer. Finally, after winner determination, acceptance and rejection is performed again according to the standard WS-Agreement protocol. With these two protocols fully automated WS-Agreement negotiations according to a variety of different negotiation protocols can be conducted in Web Service environments. In future work, we will continue implementing and testing a variety of negotiation protocols and thus verify the expressiveness of the negotiation description language and the capabilities of the negotiation meta-protocol.

6 References 1. Andrieux, A. et al.: Web Services Agreement Specification Draft, Version 09/2005 2. Stroebel, M. and Weinhardt, C.: The Montreal Taxonomy for Electronic Negotiations, Journal of Group Decision and Negotiation(12): 143-164, 2003 3. Bartolini, C. et al.: A Software Framework for Automated Negotiation, Software Engineering for Multi-Agent Systems III: 213-235, 2005 4. Hudert, S.: A Proposal for a Web Services Agreement Protocol Framework, Technical Report, Bamberg University, October 2006