• No results found

Auction for License Management in Cloud Computing Environment

N/A
N/A
Protected

Academic year: 2020

Share "Auction for License Management in Cloud Computing Environment"

Copied!
6
0
0

Loading.... (view fulltext now)

Full text

(1)

Auction for License Management in Cloud Computing

Environment

Tejprakash Singh

Dept. of Electronics & Computer Engineering Indian Institute of Technology, Roorkee,

Roorkee, India

Saurabh Kumar

Dept. of Electronics & Computer Engineering Indian Institute of Technology, Roorkee

Roorkee, India

ABSTRACT

Cloud computing is a recent technology for computing through a virtual environment. In cloud computing resources are provided virtually for computation, storage and developing application. To access these resources user will have to take an authentication from the cloud service provider. To get authentication user will have to provide some specification for its request i.e. Time for which service is requires, its own details, QoS required. Authentication to the user is provided in the form of license. License is a legal authorization to access the resources. Any user using a service must be licensed for using the resources which it is using during it computation. These resources may be provided by the cloud service provider on demand over the internet or can be installed on the infrastructure provided by the cloud service provider, after having license for using these services. License in cloud computing environment is issued by auctioning. User makes a request for any resource then user is given resources with license and to get license user will have to participate in auction made by the service provider.

General Terms

License Management in Cloud Computing Environment.

Keywords

Auction, cloud computing, cloud service provider, independent software vendor (ISV), license.

1.

INTRODUCTION

So far resources or software are issued for a definite time after paying advance payment and controlled by ISVs. Cloud service provider provides services to the user on demand over the internet. User asks for the resources required in computation, from cloud service provider. Cloud service provider may have legal authorization to provide these resources or may not have because software is developed by independent software vendor (ISV) [1] and ISV has the rights to sell it. So to provide these types of software which are not developed by cloud service provider, cloud service provider must be authenticated by ISV to provide these software’s over its cloud environment. After having authentication cloud service provider issue license to user for these resources/software. To issue the license and make more profit cloud service provider make auction. In auction bidding is held by users and license is issued to the user who has made highest bid. According to [2] the main participants in any auction are the seller, buyers or bidders and auctioneers. In grid or cloud environment user works as bidders, broker plays the role of auctioneers and ISV’s are sellers. In GridSim four types of auctions are implemented [3].

• First Price Auction sealed bid

• English auction

• Dutch auction

• Continuous double Auction

1.1

First Price Sealed Bid Auction

In first auction users only know about the price offered by service provider. This offer may be provided more than one user at the same time and different user may give value it differently. No user knows about the other users and also does not know what the other users have given value to the resource. So the cloud service provider gives the license to the user who has valued more to the resource

1.2

English Auction [4]

This is an ascending bidding. In this cloud service provider offers the resource at a low price i.e. price below than the current market price. Now it raise the price in each auction and it increase the price until a single user shows interest in the bidding. Now bidder chooses the best bidding and gives the license to the user who has make best bid in auction.

1.3

Dutch Auction [5]

It is reversed the English auction. In this a bidder provides the resource at a high value i.e. price more than the current market price. Now it decreases the price in each bidding until any user shows the interest in resource. As soon as a user shows interest in the resource at the announced price it gives the license to that user.

1.4

Continuous Double Auction

Continuous double auction is based upon matching. In this bidder provides a price to sell its resource and user ask for resource at a price. As soon as a matching occurs in the prices asked by user and provided by user, license is issued to the user.

As the one motive of cloud environment is to provide resources to the user or enterprises which are not able to buy the resources on yearly basis or are not interested to buy the resource permanently.

In all above auction policy bidding takes place all the user make bidding and the resource is issued to the user which makes highest bid. In this scenario a user may go in starvation because every time he/she bids another user makes a higher bid and resource is allocated to that user. So, a user may stick in starvation.

(2)
[image:2.595.136.463.76.406.2]

Fig 1: A general model of auction [2]

2.

RELATED WORK

A few research works have focused on incorporating license in Cloud and grid infrastructure. In [6] a pay per use license management infrastructure has been presented. This infrastructure can be deployed in on-demand computing scenario. The architecture enables authenticated access to a remote license server. In [1] GenLM a license manager for Grid and cloud environment has been presented. This manager provides secure and robust solutions for ISVs for extending their software to Grid and cloud environment. In [7] a semantic resource allocation approach for job scheduling in cloud has been presented. This approach takes into account software licenses, enabling ISVs to distribute their products in cloud environment. In [8] concurrent licenses (which mean the owner can run a specified number of application instances at the same time) are considered as a soft constraint. In [3] elasticLM is based upon a layered architecture comprising 6 layers: Co-allocation, Authentication, Administration, Management, Business, and Persistency.

It is implemented using web services. It provides mainly two services license service and billing and accounting service. All the above license management mechanism used an auction policy to provide license to the user.

3.

PROPOSED MODEL AND DESIGN

Auction is used when a resource is asked by more than one user. A service provider wants to get maximum profit [9] so it makes auction to get maximum profit and sell its resource to the user who pays more.

In this an auction takes place when a resource is asked by user. It announces a base price for the software and the user

(bidder) make a bid for the service in which they value the resource at more price that of announced by the user. No user knows about the price which others have offered to the auctioneer. Only auctioneer knows the price offered by all the users. It allocates the resource which has offered the maximum value. Here value is in terms of price. But in this way a user which is not able to make highest bid will not get resource. This process may go for a long time and user will get stuck in starvation. So to eliminate this problem auctioneer will maintain a field for each user in which it will keep the count of the no of time a user has participated in auction and was not allocated resources due to lower bid. Now as auctioneer announces an auction first it will check the count field for the user. If any user which has stuck in starvation participate in this auction and make a bid more than the announce price then resource will be offered to the user which is in starvation. To check whether a user is in starvation or not a threshold value is set for number of consecutive rejected request. If for any user number of continuous rejected request is more than threshold value then the user is in starvation. If more than one user is in starvation then tie is broken on the basis of first come first serve i.e. which has made current auction first. Fig 2 represent algorithm of FirstPriceSealedBidAuction and fig 3 represent an algorithm to prevent starvation in auction due to lower bidding.

Transition from classical license management mechanisms to license management solutions that work in distributed environments needs to be as smooth as possible. Hence the following classes are integrated in CloudSim

 First Auction

 Double Authenticated Access

User Broker

(Auctioneer)

Resource Provider 1 (Bidder)

Resource Provider 1 (Bidder)

Creates Auction and posts it to itself

Informs that suction is about to start

Broadcasts first call for Proposals (CFP)

Increases the price

Broadcasts second call for Proposals (CFP)

Bids for selling the service for the current

price

Informs the outcome of the auction Submits Job

(3)

 Accounting and Billing

 Easy access and job submission

 License monitoring

3.1

First Auction

This method is integrated with DatacenterBroker. In this a auction takes place when a resources is asked by user. It announces a base price for the software and the user (bidder) make a bid for the service in which they value the resource at more price that of announced by the user. No user knows about the price which others have offered to the auctioneer. Only auctioneer knows the price offered by all the users. It allocates the resource which has offered the maximum value. Here value is in terms of price. But in this way a user which is not able to make highest bid will not get resource. This

process may go for a long time and user will get stuck in starvation. So to eliminate this problem auctioneer will maintain a field for each user in which it will keep the count of the number of time a user has participated in auction continuously and was not allocated resources due to lower bid. Now as auctioneer announces an auction first it will check the count field for the user. If any user which has stuck in starvation participate in this auction and make a bid more than the announce price then resource will be offered to the user which is in starvation. To check whether a user is in starvation or not a threshold value is set for number of consecutive rejected request. If for any user number of continuous rejected request is more than threshold value then the user is in starvation. If more than one user is in starvation then tie is broken on the basis of first come first serve i.e. which has made current auction first.

Algorithm : FirstPriceSealedBidAuction

Var double Min_Price, Current_Price, Reserve_Price, Final_Price;

/*ReservePrice is the maximum price at which a seller is willing to sell a Data center*/

/*CurrentPrice is the price of asker*/ MessageCallForBids Msg ;

MessageBid best

int AuctionID, currentRound;

/* This method is called when a round is started*/

void onStart(int round)

if (round == 1) then

Min_Price:=Reserve_Price; Current_Price:=Reserve_Price;

end if

/* Creates a call for proposal that is broadcast to all bidders*/

Msg = new

MessageCallForBids(AuctionID,AuctionProtocol,Mi n_Price,currentRound);

broadcastMessage(Msg);

end;

/* This method is invoked when a round finishes*/

void onClose(int round) best = getFirstBid();

if (best != null) then

double price = best.getPrice();

if (price >=Reserve_Price)

then

FinalPrice:=price;

Winner_Id:=best.getBidder()

else

Final_Price:=Current_Price;

end if

else Final_Price:=C;

[image:3.595.116.478.254.743.2]

end if end;

(4)

Algorithm: preventing_starvation double License_Price

License_price = Reserve_Price; /*check starvation for users*/

int threshold, rejection_count

If(threshold < rejection_count) {

If(Current_Price >= License_price) {

/* Allocate the license to the starved user */ Winner_Id= Starved.getBidder()

/* set no. of rejected request for the user who got the resource to zero*/ Winner_Id. rejection _count=0;

} } else {

/*find the user who made the highest bid*/ Winner_Id:=best.getBidder()

If(Winner_Id.Current_price>= License_price) {

Allocate the resource to max_user.

Increment the count in rejection_count for all users who have participated continuously. }

else {

Reject the request of all users.

Increment the count in rejection_count for all the user who have participated continuously. }

[image:4.595.115.476.72.482.2]

}

Fig 3: Preventing_starvation algorithm

3.2

Double Authenticated Access

User using cloud services must have privileged to use the cloud service. i.e. user, may be in a company which is using cloud services provided by an organization (i.e. Amazon, IBM) on pay per-use- basis, must have privileges to use that service and he/she must be authorized by the company which is using cloud services. User in an organization is authorized for using cloud services or not is decided by that company not by the cloud service provider. Hence organization using cloud services must have some accounts for its users. Service provider only issue a single license for an organization and maintain account only for the organization not for the employer working in organization using cloud services and how that organization is using that license in its internal level depends on that organization. Double Authentication Process is shown in Fig. 4.

3.3

Accounting and Billing

There are some side-implications with respect to accounting and billing associated. In the non-distributed scenario the bill already has been paid for in advance and therefore accounting plays a minor role. The pay-per-use model needs to support a flexible cost unit based accounting rather than an identity bound accounting: The reason is that usually institutions or

research groups own the licenses, licenses are not owned by their individual members.

3.4

Easy access and Job Submission

The licensing mechanism has to be transparent for the user. It should not introduce significant overhead. If a user has enough privileges to submit a job then he/she should allowed access the cloud services easily and no more overhead should be provided to submit the job

3.5

License Monitor

The assumption is that such a component is essential once the license management architecture is deployed in production. It is necessary to have an efficient supervised scheduling of licenses (as is the case for other resources) and to provide the user with information on how many licenses are available on a given site before he submits his job. The monitoring component covers the ability to co-schedule licenses and resources such that jobs are not started before a required license is available.

(5)

to check the availability of the needed licenses. If the answer of the License Monitor is positive then the cloudlet is

[image:5.595.146.438.88.712.2]

submitted to Virtual machine for execution, otherwise it will not be executed.

[image:5.595.172.406.98.426.2]

Fig 4: Double Authentication

Fig 5: overviews of license monitor [1]

Request license Check License availability

Data Centre Broker Data Centre Broker

Job Scheduler License Monitor

(6)

4.

CONCLUSION AND FUTURE WORK

This paper discussed an approach to provide license in cloud environment in such a way that starvation does not occur. This work implemented FirstPriceSealedBid auction with a modification where every time when a license is issued a condition is checked to get the information whether a starved user exist or not. If starved user exist and making a bid more than reserve price then auctioneer issue the license to that user.

This work uses FirstPriceSealedBid because in this auction technology user only knows the price reserved by auctioneer and price he/she announced in the bidding. If user also knows the price offered by other users then this may lead some negative result. To get a resource at low price user may start bidding at low price than the other and make itself in starved condition. In other auction technique user knows the price offered by other users.

In future, other auction policies such as double auction, English auction and Dutch auction can be modified with support for elimination of starvation. Also a comparison between all modified auction policies is to be carried out.

5.

REFERENCES

[1] Bowman, Raekow, Y.; Simmendinger, C.; Grabowski, P.; Jenz, D.; , "License Management in Grid and Cloud Computing," P2P, Parallel, Grid, Cloud and Internet Computing (3PGCIC), 2010 international Conference on, vol., no., pp.9-15, 4-6 Nov. 2010.

[2] R. Buyya, and M. Murshed, “GridSim: A Toolkit for the Modeling and Simulation of Distributed Resource Management and Scheduling for Grid Computing”, The Journal of Concurrency and Computation: Practice and Experience (CCPE), vol. 14, no. 13-15, pp. 1175-1220, Wiley Press, Nov.-Dec., 2002..

[3] Claudio Cacciari, Francesco D’Andria, Miriam Gozalo, Bj¨orn Hagemeier, Daniel Mallmann, Josep

Martrat,David Garc´ıa Per´ez, Angela Rumpl, Wolfgang Ziegler, Csilla Zsigri “elasticLM: A novel approach for software licensing in distributed computing infrastructures” IEEE 2010.

[4] Fipa english auction interaction protocol specification. FIPA - Foundation for Intelligent Physical Agents (http://www.fipa.org/), August (2001)..

[5] Fipa dutch auction interaction protocol specification. FIPA - Foundation for Intelligent Physical Agents (http://www.fipa.org/), August (2001).

[6] Dikaiakos, M.D.; Katsaros, D.; Mehra, P.; Pallis, G.; Vakali, A.; , "Cloud Computing: Distributed Internet Computing for IT and Scientific Research," Internet Computing, IEEE , vol.13, no.5, pp.10-13, Sept.-Oct.2009

[7] Ejarque, J.; Micsik, A.; Sirvent, R.; Pallinger, P.; Kovacs, L.; Badia, R.M.; , "Job Scheduling with License Reservation: A Semantic Approach," Parallel, Distributed and Network-Based Processing (PDP), 2011 19th Euromicro International Conference on , vol., no., pp.47-54, 9-11 Feb. 2011

[8] Jim (Zhanwen) Li, John Chinneck, Murray Woodside, Marin Litoiu “Deployment of Services in a Cloud Subject to Memory and License Constraints”IEEE 2009

[9] M. D. D. Assuncao, and R Buyya, “An Evaluation of Communication Demand of Auction Protocols in Grid Environments”, In Proceedings of the 3rd International Workshop on Grids Economics & Business (GECON 2006), pp. 24-33, Singapore, May 2006.

Figure

Fig 1: A general model of auction [2]
Fig 2: Algorithm for FirstPriceSealedBid Auction [10]
Fig 3: Preventing_starvation algorithm
Fig 4:  Double Authentication

References

Related documents

In the event of any failure of User to pay or perform any of the terms, conditions or covenants of this License to be observed or performed by User, or if User shall

Until December 31, 2012, if the contractor can prove to the developer's satisfaction that a piece of nonroad construction equipment planned for use on site had been retrofitted

This License will become effective on receipt by WEF of the License signed by an authorized agent of the Subscriber and the License fee, and, subject to the terms and conditions

- 1 user Maximum of 6 watched extensions DCC Professional License Key - 1 user Maximum of 30 watched extensions DCC Basic License Key - 1 user DCC Basic License Key - 1 user Maximum

When analyzing the range of motion (difference between minimum and maximum F/E) of each joint, significant differences were observed at 3 months between the two ARAT groups in

LiveHelpNow reserves the right to (i) modify or discontinue, temporarily or permanently, the Services (or any part thereof) and (ii) refuse any and all current and

If necessary, advise area commander to prepare for a high order detonation, and ensure that all personnel are properly protected.. Initiate igniters (ID Smoke) and return to the

The research have accomplished following objectives: To perform a literature review to analyze the contribution and responsibility of small scale industries