Design of a Dynamic SLA Negotiation Protocol for Grids - CiteSeerX

3 downloads 4120 Views 613KB Size Report
market for Grid services. We have explained the consolidated protocol for Intra-domain and Inter-domain cases using specific scenarios that involve bi-lateral ...
Design of a Dynamic SLA Negotiation Protocol for Grids Les Green, Vinod Mirchandani, Igor C ergol

Dominique Verchere

Faculty of Information Technology The University of Technology, Sydney NSW 2007, Australia +61-2-9514-1281

Alcatel-Lucent Research & Innovation Route de Villejust F-91620 Nozay - France +33-1-3077-2668

[email protected]

[email protected]

ABSTRACT Services delivered within a Grid environment are influenced by dynamic factors such as terminal capabilities, time of day and resource demand variation. There is thus a need for a dynamic negotiation protocol for the efficient support of heterogeneous services and pricing strategies that will exist in the Grid. We have proposed novel augmentations to existing service negotiation protocols in the areas of scalability, flexibility, support for distinct services and negotiation with several service providers simultaneously. The proposed autonomous negotiation protocol is based on a distributed multiagent framework creating an open market for Grid services. We have explained the consolidated protocol for Intra-domain and Inter-domain cases using specific scenarios that involve bi-lateral bargaining. Furthermore, the usefulness of our algorithm is exhibited by a categorical comparison made between the attributes of our protocol with the corresponding attributes of other key protocols in literature. In addition, our work is aligned with the FIPA and OGSA initiative.

useful for solving problems in diverse areas such as: pharmaceuticals, nuclear physics, life sciences, financial services industry and other mission-critical data environments. It is envisaged that a Grid can exist in three dimensions IntraGrid, InterGrid and Internet Grid.



IntraGrid- Mechanisms that operate within a Grid. A typical IntraGrid topology exists within a single organization (company, research, public institution). This organization may be composed of many resources, which are connected by a private network ensuring the quality of service (QoS) guarantee of the connectivity services.



InterGrid - The emergence of Grids will result in forests of interconnected Grids in different parts of the world. The InterGrid is a wide area Grid, consisting of multiple IntraGrids connected by wide area networks (WAN). Due to WAN connectivity the communication speed between IntraGrids are usually comparatively slower. The internetworking of IntraGrids at the middleware level is considered crucial in this step in the evolution of Grid computing services.



Internet Grid – An internet grid will be formed around Internet Service Providers and interconnected by the Internet to form an on demand Global Grid. It will enable grid service availability to a customer-anytime and anywhere. Providing the economic viability and financial functions is an important aspect of the Internet Grid.

Categories and Subject Descriptors C.2.2 [Computer Communication Networks ]: Protocols – applications

Network

C.2.4 [Computer Communication Networks]: Distributed Systems – Distributed applications

General Terms Design, Reliability, Economics.

Keywords Grid computing, SLA, Negotiation protocols, FIPA, OGSA

1. INTRODUCTION Grid computing enables a user to share resources of heterogenous computer systems that need not be located at the same place geographically. Such a coordinated access to vast resources is

Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. GridNets 2007,October 17-19, 2007, Lyon, France.

Grid computing is expected to cater to resource consumers that may have heterogeneous service needs depending on dynamic factors such as: the type of end devices they use, time of day, network connectivity, mobile or fixed access, applications and the price that they can afford to pay for a particular grade of service. This means that there is a need for a dynamic service negotiation mechanism to exist in the grid to enable a consumer/subscriber to better adapt their needs as well as for the service provide r to utilize the transport network more efficiently. The evolution in policy-based networking has given rise to several different yet complimentary negotiation protocols such as COPS-SLS, DSNP, SrNP, RNAP and QoS-NSIS. FIPA Contract net [9] is a generic i nteraction protocol popular within the multiagent community. From these several proposals published in the literature, we have identified scope for improvement on the individual mechanisms by means of consolidation; addressing the

key areas of efficiency, reliability, flexibility and completeness. An extension and improvement of these negotiation protocols for appropriate use in Grid computing will enable negotiation of a broad range of services targeted towards diverse subscriber needs. In this paper, our contributions are two fold s. First we examine some of the important works accomplished in the area of service negotiation protocols and draw out the key differentiators of our contributions by categorically comparing the attributes of our proposed dynamic negotiation method with the corresponding attributes of the other methods. Second, we propose and discuss our generic protocol for autonomous dynamic negotiation in a generic QoS framework that uses distributed multiagents to create an open market of a Grid. By generic we mean that our protocol may operate on any underlying network technology and is suitable for any negotiated service s. This paper is organized as follows: Section 2 gives an outline of the distributed multiagent framework used to create an open market for negotiating grid services. Section 3 reviews some of the important references in the literature for the dynamic negotiation protocol in Grid environment. In this section a table is also provided that compares the attributes of our protocol with the corresponding attributes of the key protocols in the literature. Section 4 presents and explains stepwise our negotiation protocol for single service as well as for a bundle of heterogeneous services from different service providers. The concl usions that can be drawn from this paper are stated in section 5.

addition to norms, a role defines a set of expected capabilities of an agent when acting in that role, and a set of rights that it may grant to other roles in the market. A capability defines some actions that an agent acting in the role may perform. Within QDINE, agent roles are self assigned. An agent can indicate its adoption of a role to one or more other agents by sending an “Indication Message” defined for that role. An “Indication Mes sage” informs all recipients that the sender intends to adopt the associated role. The use of self assigned roles allows a distributed, open approach to role assignment. Every QDINE market has exactly one market agent acting in the market agent role and multiple service providers wishing to participate in that market. Each market may have multiple subscribers receiving information about services in the market and multiple consumers requesting services from that market. Each consumer may nominate a billing provider to manage service billing and verify its identity to other players as a basis for trust and to establish accountability within untrusted networks.

2. NEGOTIATION FRAMEWORK OVERVIEW The proposed framework for managing Service Level Agreements (SLAs) negotiation has been developed in previous work [1] within a research project titled “Quality of experience Delivery In New generation telecommunication networks with Enegotiation” (QDINE). The QDINE framework (Figure 1) is a natural candidate for managing resource negotiation for all three grid dimensions – IntraGrid, InterGrid and Internet Grid. QDINE adopts a distributed, open market approach to service management, logically dividing the service delivery universe into multiple individual service markets. Each entity involved in the service delivery chain is represented in a QDINE market by an electronic agent that is responsible for managing interactions with other agents. A QDINE market is a multiagent system (i.e. it can be composed with multiple agents); each agent adopts one or more market roles. A role is a set of behaviors, rights an d obligations [2] as conceptualized by an actor in an interactive environment. There are five roles in a QDINE service market: 1. 2. 3. 4. 5.

Consumer Service Provider Market Agent Subscriber and Billing Provider

Roles are adopted by agents, and any agent may adopt one or more roles provided it maintains the norms of each role. In

Figure 1: The QDINE Negotiation Framework Market size for a QDINE market is the number of consumers accessing services from registered providers in that market. The QDINE framework does not place a limit on market size, which is determined by a combination of the accessible user base, constraints enforced by the market agent and constraints or incentives placed by the service providers. For network connectivity services, the market size will likely be determined by a combination of the technology domain size, administrative domain size, geographic scope and political boundaries among other factors. The framework is designed so that each player has autonomous authorisation for the distribution of resources controlled by that player. That is, every player has ultimate responsibility for its own resources. A consumer's resources are its funds, for a service provider, it is the resources committed within provided services, and a billing provider's, resources are its reputation and the provided proxy financial responsibility on behalf of a contracted user. Agents acting in the market agent or subscriber roles possess no resources of concern to the QDINE framework.

Agents within the QDINE framework are assumed to be selfinterested; that is, they act to maximise their own utility and goals and so this is a competitive multiagent system. Further, agents are autonomous and as such can not be enforced to act in a particular way, however their actions may be guided by

incentives and permissions granted by others. Any agent may participate in one or more markets. Fig 2 shows the overall position of the QDINE framework in the current Grid architecture.

QDINE Service Provider

CPE

Customer Premises Equipment

S

QDINE Subscriber

GUNI

Grid User Network Interface

C

QDINE Consumer

GRNI

Grid Resource Network Interface

LRM

Local Resources Manager

L. Sch.

Local Scheduler

SP

MA

ODINE Market agent

Figure 2: A Single Grid Market The QDINE framework uses the FIPA -MTS (message transport system) for the control of the message transport and the FIPA Agent Communication Language (FIPA-ACL) to describe the message payload. These were chosen as they are a standardized, agent-based communication mechanism designed to promote

interoperability between agent platforms. Content within ACL messages is described using a knowledge-based communication language that natively supports the inclusion of content expressed using the Web Ontology Language (OWL).

In Fig. 2 the QDINE based grid is split into four functional tiers. The figure illustrates the interoperation of the different tiers and the i nteraction of the different stakeholders in a Grid environment. The vertical planes describe the administrative control for the stakeholders in a grid service market. The horizontal planes describe the functional layers for those stakeholders in the grid: •

The QDINE negotiation layer depicts the organization of a QDINE market and indicates the roles that may be adopted by the respective stakeholder – the market agent (MA), the service provider (SP), the subscriber (S) and the consumer (C) role. The QDINE ne gotiation framework was developed in alignment with the open grid services architecture (OGSA), defined by the open grid forum (OGF), embracing the standards-based approach to service-oriented grid computing by envisaging a broadly applicable framework for distributed system integration, virtualization and management [3].



The OGSA Web Services Layer indicates the OGSA Execution Management Services likely to be operated by the corresponding stakeholder.



The Network interface layer describes the involved network components and interfaces. Within a QDINE grid, the network operator is a service provider, however it is in the unique position of offering the network connectivity services required to be combined with all other Grid services [4].



The Resources layer comprises the physical based resources (other than network resources) needed for the service. These resources are typically locally managed and owned.

To comply with the OGSA requirements for Web services interoperability, the service negotiation protocol used within the QDINE negotiation framework was designed to support negotiation of i) single services, ii) interacting group of services and iii) group of dependent services. Furthermore, many services are expected to be invoked by other, higher level services, using standard composition mechanisms and execution management like choreography , orchestration and workflow , envisioned by OGSA [3]. All this will put additional functionality and security requirements on the negotiation framework and protocol. Agents within a QDINE market are involved with five main processes to manage the life-cycle of service level agreements between consumer and provider: Service Publication, Service Discovery, Consumer Authorisation, SLA Negotiation, Service Handover, and SLA Termination. Agent dialogues required to support the service publication, service discovery, consumer authorization, and the final stage of SLA negotiation have been defined by the QDINE framework. Service handover and SLA termination are performed after an SLA has been created. The dialogues for these processes can therefore be indicated on the SLA.

2.1 Service Publication Service publication is concerned with the creation of a distributed directory of available services, from which the consumers can then choose for their individual requirements. The QDINE framework includes mechanisms allowing service providers to publish their available services to a local repository, along with an accompanying list of negotiation models that are used to distribute SLAs for the services. For example, a negotiation model such as Request-for-Quote may be appropriate when the goods are configurable and there are multiple providers. Alternatively, a posted price mechanism may be appropriate for fixed goods with a well-known value. A bilateral bargaining, argumentation-based model may be appropriate with multiple attribute goods and a single provider, when convergence time for negotiation is not important.

2.2 Service Discovery When registering as a subscriber with the market agent, an agent is informed of the services available in a market, and is kept informed of long term changes to service availability, whenever they are published to the market by a service provider.

2.3 Consumer Authorization Prior to negotiating an SLA, the consumer must be authenticated by to the market agent attached tothe service provider as a possible customer of the considered service. The billing provider is authenticated, and possibly authorised by the market agent to participate in the negotiation be tween the consumer and the service providers. SLAs can then be negotiated, and the service provider can be confident the agreements will be honored by the consumer. The QDINE framework provides a mechanism allowing a consumer to authorize itself with a market agent and service provider when the former is required.

2.4 SLA Negotiation Within QDINE, the goal of negotiation is to create a mutually accepted valid instance of an SLA, based on a formal knowledge description that is shared between parties. Depending on the type of service provided and market properties, such as service configurability or level of competition, different negotiation models may be appropriate to the service in its current context. SLA Negotiation within the QDINE framework is therefore not limited to a single mechanism. Appropriate mechanisms are indicated on the service publication, and the mechanism chosen for a particular negotiation session is indicated by the protocol identifier specified in the initial negotiation utterance as part of the FIPA message. A service negotiation mechanism may include one or more consumers, one or more providers and potentially the market agent. Every negotiation process must include a final binding stage whereby a valid SLA instance is formally agreed to by the consumer and all the involved service providers. It is assumed that by the time the SLA binding process is performed, the consumer and provider(s) have agreed on the SLA to be committed.

SLA negotiation is an important stage in an SLA lifecycle. Section 4 discusses a novel negotiation mechanism for negotiating grid services.

3. REVIEW OF RELATED WORK AND COMPARISON TO OUR PROPOSAL There has lately been a substantial commercial and academia interest in Grid computing, which has spurred a lot of research in this topic. Consequently a variety of service negotiation protocols have been developed. A good comparative study of these protocols can be found in [5]. Much existing work in the negotiation literature is in the area of policy based networking, with entities such as policy decision point (PDP) and policy enforcement point (PEP) playing a key role in resource management. We have carried out an extensive literature review in the area of service negotiation protocols with a focus on the attributes of scalability, flexibility, support for mobile and fixed end users, and support for multiple service negotiations with different service providers simultaneously. We discuss below some of the key aspects of the literature that we have reviewed. The work on service negotiation in the intra-domain and interdomain has been carried out in [6] by extension of the IETF’s common open policy service (COPS) protocol for policy specification. This work uses a client-server approach in which the PDP is the server and the client is the PEP. The PDP entity is used in a centralized manner to communicate with the PEPs about policy decisions and it thus suffers from the inherent drawbacks of a centralized decision architecture – single point of failure and a decision mak ing bottleneck as the system scales. Additionally, the protocol is not lightweight to support mobile clients because negotiation is involved with the centralized PDP. Identification of neighboring PDPs for inter-domain negotiation and the statistics on the current usage of the network are some of the other points that have not been explained in [6]. Reference [7] explains dynamic service negotiation protocol (DSNP) for inter and intra-domain service level negotiation by using a client–server architecture an d service level specification (SLS) negotiation at the IP layer. The protocol can support end users in wireline as well as wireless networks. Wireless end user support is facilitated due to the lightweight nature of the protocol - as the mobile needs to ne gotiate with the PDP only once within the domain. The PDP then passes the negotiated QoS profile to the PEPs so as to condition the traffic from the mobile as per the agreed SLSs. DSNP is also based on a centralized PDP and thus suffers from the drawbacks of centralized architecture mentioned above. Furthermore, DSNP does not present an efficient mechanism to select the PEPs to which the negotiated QoS profile of the mobile should be sent. Resource negotiation and pricing protocol (RNAP) [8] protocol for service negotiation in addition allows negotiation of prices for the contracted services. The scalability of RNAP is limited because it relies on continuous periodic signaling from the subscriber for the negotiated services. QoS-NSIS [5] also uses periodic signaling and hence has the same drawback as RNAP. QoS-GSLP [5] seems to be more suited for mobile clients as it

uses apriori knowledge of mobility and traffic patterns to set up the QoS profile of the end user in the end routers. FIPA contract net inter action protocol [9] uses an agent based approach for service negotiation. The manager plays a role similar to the PDP and the clients are participants. Unlike the protocols mentioned previously, FIPA contract net can also place conditions/constraints on the task (services) that needs to be carried out by the end users. Furthermore, the protocol increases reliability by using a reply-by parameter which specifies the deadline by which the participant should respond to the manager (initiators) message. However, like all the previously mentioned protocols, it does not propose the method for negotiating distinct services from multiple service providers simultaneously. Table 1 summarizes the comparison between the various attributes of the key proposals in the lit erature and our work. Note: The attributes that we have considered gain further significance as they augment the ones in the study carried out by Venkatesh et. al [5]. Table I: A comparative study between our and other key proposals. Literature

COPS-SLS [6]

DSNP [7]

Centralized only

Centralized only

Distributed and Centralized

One

One

Several specified through Protocol identifier

Support for Multiple Services from service providers simultaneously

NO

NO

YES

Mobile terminal support

NO

YES

YES

Scalability

PDP is centralized (Not readily scalable) Not specified

Not readily scalable

Easily scalableDistributed agents Will be specified

Attribute s Type of architecture Supported No. of negotiation mechanisms supported

Capacity analysis

Not specified

Our work

4. OUR PROPOSED SERVICE NEGOTIATION PROTOCOL 4.1 Intra-domain Protocol Our proposed negotiation protocol is a session-oriented, clientinitiated protocol that can be used for intra- as well as interdomain negotiation in a Grid environment. A key distinguishing feature of our protocol is that it enables the negotiation of a single service as well as diverse services from multiple service providers simultaneously.

The negotiation protocol draws significant advantage s from the information that is distributed proactively between the agents in the QDINE market. This occurs by means of publication of each of the service provider’s services at the market agent (MA) and the advertisement of the published services to the subscriber/consumer during its registration (refer Fig. 1). Upon registration the MA also provides the consumer with configuration information such as: (i) supported negotiation mechanisms (ii) service provider (SP) selection functions that includes the default selection function that will be used by MA in absence of any service selection specified by the consumer (iii) the maximum number of services that can be requested in one negotiation instance. A consumer in a QDINE market can choose to negotiate the provision of services either directly with the SP or indirectly via the MA. Prior to the negotiation of services via the MA, the consumer must acquire an up-to-date configuration information from the MA (i.e. carry out configuration phase). This information also contains the conversation identifier to be used for the upcoming negotiation and any changes in the configuration information that was obtained at the time of consumer registration. This process is an augmentation of the configuration phase of COPS-SLS protocol [6]. Below, we first examine t he negotiation mechanisms for a single services and for multiple services in the intra-domain following which we describe inter-domain negotiation.

4.1.1 Negotiation of a single service The protocol message exchanges for the negotiation of a single service is explained with the help of Fig. 3, where there is a direct negotiation between the SP and the consumer. The numbers in the parenthesis that precede the messages are used to assist in improving the clarity of explanation. Following the configuration phase (n ot shown in Fig. 3) to initiate the negotiation, the consumer agent (C) (initiator) sends a Request for provision of services (indicated by 1) to the SP. This message carries the SLA under negotiation and its conditions and/or constraints for an acceptable agreement. The deadline time by which the SP should send a reply is also included in the Request act message and is specified by using the reply-by parameter of the FIPA-ACL message. C

SP (1) Request (2a) Agree (2b) Refuse (2c) Propose (3) Request (4) Propose (5a) Reject-proposal (5b) Accept-proposal (6) Acknowledge (SLA binding)

Figure 3: Direct negotiation of a single service

This approa ch is based on the FIPA Contract Net Interaction Protocol [9]. Upon receiving the Request message, the SP has several options: • It can immediately agree to provide the service by sending an Agree message (2a). This forms the beginning of the SLA binding pr ocess, described later in this section. • If the SP chooses to end the negotiation, it may reply with a Refuse message (2b), stating the reason for refusal. • The SP may choose to continue the negotiation by offering an alternative SLA proposal, in which case it responds with a Propose message (2c), containing the modified SLA and any additional constraints for an acceptable agreement. The consumer may reply to the new proposal with another Request message (3), or accept the proposal (5b). Several Request and Propose messages (3)...(4) may be exchanged between the consumer and the SP, respectively. If the consumer chooses to end the negotiation, it can reply with a Reject-proposal message (5a). Alternatively, if the consumer accepts a proposal, it responds with an Accept-proposal message (5b) indicating the accepted SLA. After receiving the Acceptproposal message the SP can bind the SLA by sending an Acknowledge message (6). At any time, the SLA under negotiation can be validated against the appropriate servi ce specification(s) and current negotiation constraints. Invalid requests or proposals may result in a Refuse message (2a) or Reject-proposal message (5a) sent by the provider or consumer, respectively. Any time during the negotiation, either party can use a Cancel message (not shown in Fig. 3) to end the interaction. In accordance with FIPA, a Not-understood message (not shown in Fig. 3) can also be sent at any time, with a reason. The QDINE framework's use of OWL to express SLA individuals means that the every negotiation message sent within the protocol need not include the entire SLA under negotiation. The final SLA can be built over time during the negotiation by exchanging additions or modifications to a base SLA instance. Typically the elements of an SLA sent during negotiation will be the dynamic parameters such as the service specification(s) and pricing parameters.

4.1.2 Negotiation of multiple services In our proposal, a request by the consumer for a simultaneous negotiation of multiple services from different SPs is sent by means of a proxy message sent to the market agent. A proxy message must include the service requested, the mechanism to choose appropriate providers (provider selection function, or psf), the mechanism to select appropriate offers (offer selection function, or osf) and a service dependency graph describing the fulfillment requirements of requested services. The use of a bulk proxy message, that is; multiple services request in one message transfer, is dual purpose. First, it is proven to be bandwidth efficient as is seen by the GetBulkRequest message in the simple network management protocol (SNMPv2). Second, it allows an end user to delegate negotiation decision making to the market agent, who may be

better informed on the past pe rformance and reliability of providers. Additionally, one stage of data transfer is eliminated from most negotiation messages. The generic structure of the Proxy message is as follows and illustrated in Figure 4:

Request (Proxy {message, process [psf, osf, negotiation mechanism, content]...}) ... … ...

Figure 4: Layout of the Proxy message content The Proxy performative is used to instruct the MA to send the embedded FIPA message to the SP agents designated by the provider selection function (psf) and potentially act as an intermediary in the negotiation. The psf defines the mechanism by which the group of SPs to include in the negotiation are selected. Some example mechanisms here are: a pre-defined set, or a function such as “any appropriate”. The offer selection function (osf) defines the criteria for selecting the offers returned to the consumer from the proposals received during negotiation. The container has parameters that are common to all messages send to the required SPs. The container includes the “recipe” for constructing these messages, and the operations that the consumer would like the MA to perform during the negotiation. We illustrate the protocol message flow for a multi-service negotiation using the followin g scenario: A QDINE market consumer needs to perform a highly demanding computational fluid dynamics (CFD) simulation and store the results (in the form of rendered videos), which are to be displayed on a video wall at the consumer’s premises. The consumer therefore needs to obtain services from a high power computing (HPC) SP to run the simulation, a storage SP to store the results of the computation, and a network SP to provide the required network resources including the bandwidth (BW) for transmitting t he data. The service negotiation protocol flow for this particular scenario S1 S2 S3 is shown in Fig 5. C

MA

SP1 SP2 SP3

(1) Request(config) (2) Inform(config)

(HPC)

(4a) Refuse (4b) Agree (5) Cfp (s1) n=3 j=1

SP4

SP5

(BW)

Figure 5: Negotiation of multiple services In the configuration phase (mentioned previously) the consumer sends a Request message (1) to the MA, to acquire necessary configuration information. The MA responds with an Inform message (2), carrying any changed configuration information since consumer registration. In this example scenario, after obtaining the configuration information, the consumer agent sends a Proxy message (3) to the MA, requesting it to select the appropriate SPs and negotiate the three aforementioned services. All three services are required for a successful negotiation in this example: • a call-for-proposal (cfp ) for a service S1 (HPC) with three preferred providers (SP1, SP2 and SP3), returning the best offer. • a bilateral bargaining with any appropriate providers for service S2 (storage), returning the best offer • a bilateral bargaining with service provider SP5 for service S3 (bandwidth), returning the final offer. For lack of space, the SPs for common services are shown collocated in Fig. 5. Upon receiving the Proxy message, the market agent validates the request and replies with an Agree message (4b). According to the request for service S1, the MA issues a cfp (5) to service providers SP1, SP2 and SP3. One of them refuses to provide the service, sending a Refuse message (6a), the other two submit a proposal, using a Propose message (6b). The MA validates the proposals and uses the offer selection function (osf)

to pick the most appropriate service offer. The MA requests the chosen SP to wait (7b), as it doesn't want to bind the agreement for service S1 until it has collected acceptable proposals for all three services. The successful SP agrees to wait by sending an Agree message (8). This interaction approach for requesting an extension of the reply-by time i.e. wait action is similar to the one found in service negotiation protocol (SrNP) [10]. According to the “any appropriate” provider selection function submitted by the consumer agent for service S2, the MA then selects the only appropriate SP (SP4) for that service. The MA then sends a Request message (9) to SP4 to invoke the bilateral bargaining mech anism. For simplicity, we assume that the chosen SP immediately agrees to provide the requested service by replying with an Agree message (10). In reality, the negotiation flow could be similar to the one depicted in Fig. 3. When an agreement is formed, the MA requests SP4 to wait (11) while the other service negotiations are completed. SP4 replies with an Agree message (12). Negotiation of service S3 (13)-(14) is similar to that of service S2, with the difference that SP is pre-chosen by the consumer. SP5 does not need to wait on negotiation success, as it is the final provider and the SLA binding can begin immediately. The MA informs the consumer of the negotiation outcomes (15), at which point the consumer accepts the proposals (16). The Service providers bind the agreement by replying with an Acknowledgement (17).

When a consumer registers with a MA, any service providers also registered with that MA are considered local to the market – independent of their physical network domain. As such, negotiation for services within one market as described in section 4.1 may occur across multiple network domains. To clarify, we consider the scenario shown in Fig 6: SP B from Domain 1 registers as consumer with MA2. It then becomes a logical consumer of the QDINE market 2 and thus gets advertisements for services published by SP C in Domain 2. SP B can then negotiate as a consumer for services from SP C as indicated by dashed arrow (a), regardless of the domain boundaries. SP B may choose to encapsulate the resources from services available from SP C and publish them to MA1. Consumer A can purchase services for those resources locally as indicated by dashed arrow (b). Market agent MA1 can choose to register as a subscriber with its neighboring market agent MA2. This enables MA1 to receive services published at MA2 and advertise those services to consumers of its own market. To illustrate this, we consider the following scenario of Fig 6: MA1 registers as a subscriber with MA2. In doing so, it receives advertisements about the services of SP D from Domain 3 and may advertise them to subscriber A. The subscriber A can now negotiate services with SP D as indicated by dashed arrow (c). To prevent network traffic congestion, a possible way could be for the MA to only advertise services of SPs from its own and the neighboring QDINE markets.

4.2 Inter-domain negotiation

5. CONCLUSIONS

A QDINE market is a logical association of agents that is independent of the geographical bounds of the network - hence it can span over several network domains. An agent in QDINE framework can be a registered consumer of more than one market. The principle of inter-domain negotiation between QDINE market members (of the same or of different markets) is shown in Fig 6.

The Grid needs an efficient dynamic negotiation protocol that can support consumers with changing requirements. As such the major issues of scalability and complexity should be addressed. We have proposed a dynamic negotiation protoco l that augments the combination of the strong features of the key negotiation protocols in the literature to form a consolidated protocol. The operations of the protocol were shown in a generic QoS framework for realistic scenarios that involved intra-doma in as well as inter-domain negotiation s. Through these operations the key features of our protocol were also demonstrated namelyability to handle negotiation of multiple services simultaneously, scalability and light weight nature. These features make the proposed protocol relatively more suitable for the challenging Grid environment. Our ongoing work evaluates the performance of the proposed negotiation protocol under typical network conditions.

QDINE market 1

QDINE market 2

Domain 1 (a)

B

(b)

C MA1

MA2

Domain 2

A

6. ACKNOWLEDGMENTS

(c)

QDINE

D Register subscriber, consumer Publish services Advertise services Negotiation

Domain 3

Figure 6: Inter-domain negotiation

This research is performed as part of an Australian Research Council Linkage Grant, LP0560935 between Alcatel-Lucent and the University of Technology, Sydney.

7. REFERENCES [1] Green, L., Automated, Ubiquitous delivery of Generalised Services in an Open Market, PhD Thesis, University of Technology, Sydney, April 2007.

[2] Pacheco, O. and Carmo, J. A Role Based Model for the Normative Specification of Organized Collective Agency and Agents Interaction Autonomous Agents and Multi-Agent Systems, Kluwer Academic Publishers, 2003, 145-184

[7] Chen, J.-C., McAuley A., Sarangan, V., Baba S., and Ohba, Y., Dynamic Service Negotiation Protocol (DSNP) and Wireless Diffserv, In Proceedings of ICC, 2002, pp. 1033-1038.

[3] Foster, I., et al., The Open Grid Services Architecture, Version 1.5, Open Grid Forum , July 2006.

[8] Wang, X., and Schulzrinne, H., RNAP: A Resource Negotiation and Pricing Protocol, In Proceedings of NOSSDAV, NJ, USA, June 1999, 77-93.

[4] Simeonidou D., et al.: Optical Network Infrastructure for Grid, In GFD-I.036, GHPN-RG Open Grid Forum,2004

[9] FIPA Contract Net Interaction Protocol Specification, Dec 2003. http://www.fipa.org

[5] Sarangan, V., and Chen, J.-C., Comparative Study of Protocols for Dynamic Service Negotiation in the NextGeneration Internet, In IEEE Communications Magazine , March 2006, 151-156.

[10] Morand, P., et al . D1.3: Final specification of protocols and algorithms for inter-domain SLS management and traffic engineering for QoS-based IP service delivery, MESCAL project report , June 2005.

[6] Nguyen, T.M.T, Boukhatem, N., Doudane Y.G., and Pujolle, G., COPS-SLS: A Service Level Negotiation Protocol for the Internet, In IEEE Communications Magazine , May 2002.