charging and accounting item in a grid computing system, and propose a ... communication, security mechanism, resource management and information .... ï½ï½ï½ï½
ï½ï½. ï¼°ï½ï½ï½ï½ï½ï½. ï½ï½ï½ï½ï½ï½ï½ï½ï½ï½. DATA GATHER. ï¼³ï½ï½ï½ï½ï½ï½ï½
. ï½ï½ï½ï¼ Aï½ï½ï½ï½ï½ï½ï½ï½ï½. ï¼´ï½ï½ï½ï½
.
Charging and Accounting for Grid Computing System Zhengyou LIANG1 2 Ling ZHANG1 Shoubin DONG1 Wengou WEI 1 1
GuangDong Key Laboratory of Computer Network , South China University of Technology, GuangZhou, 510641, P.R.China {zhyliang, ling, sbdong, wgwei}@scut.edu.cn 2 College of Computer and Information Engineering, GuangXi University, NanNing, 530004, P.R.China
Abstract. Grid computing is the key technology of next generation Internet. Today grid research is mostly focus on the communication, security, resource manangement and information management. Charging and accounting is a base activity in a economy society, so that it should become a part of grid computing system in computational economy environment. In this paper, we introduce charging and accounting item in a grid computing system, and propose a method for calculating the cost of a grid usage. This method gives out how to calculate the standardization technology cost of the usage of a job and how to translate the standardization technology cost into currency cost. Further more, we analyse the demands of a charging and accounting system in a computional economy based grid. A architecture of charging and accounting system and its support system is designed in this paper.
1 Introduction With the popularization of the Internet and obtaining of powerfull computer and high speed network, these low cost commerce component are changing our method of using computer. It is possible for us to use the computer network as a simple uniform computing resource. And it is possible to connect the geographic distributed all kinds of computing resources and aggregate them into a simple uniform resource. This form of resource is usually called “computational grid”[1]. The solution framework of 21th century scientific problem will base on the heterogeneous complicated “grid”. The applications based on grid include today security mechanism, web browse, remote collaboration engineering, distributed petabyte data analyse and alive equipment control system[1,2,3]. Grid computing is the key technology of the next generation Internet. The key conception of grid is coordinated resource sharing and solves problem in the dynamic multi institutional virtual organizations[2]. In the world wild, a lot of ambitious projects are using the grid computing conception to deal with some challenging problems, such as distributed analyse of experiment physics data, together access earthquake engineering equipment, create the “science portals” for thin client to access all kinds of remote data and system and transaction processing of extra large data[1,4].
In a grid system, the resource provider and the resource consumer are away not the same person, and often do not belong to the same organization. So when one uses the resources of grid, a economy active takes place between the resource provider and the resource consumer. From the view of economy, the resource provider should obtain suitable benefit from providing the service, and the resource consumer should pay for the service. The grid system can be maintained by paying for service. Today the research of grid is mainly focus on the communication, security mechanism, resource management and information management. They lack the base service that support the economic activity in a grid system. So it is necessary to develop a charging and accounting service for the grid, which will manage the cost of usage of grid and support the economic activity according to the computational economy. In this paper, We introduce charging and accounting item in a grid computing system, and propose a method for calculating the cost of a grid usage. Further more, we propose a charging and accounting system for grid.
2 Related Work Charging and accounting for grid has been taken into account for some grid projects and researchers. [5] discusses what kinds of resource to be charged and accounted in DataGrid project, and proposes a calculating cost method, which translates the cost into the credit. A working scheme of their accounting model also presented.This scheme monitors and controls the job executing in real time. It may be too complicated in many cases. [6] introduces which resource needs to be accounted and charged in a computational economic -based grid. And which element affects the resource value is discussed. But how to implement the accounting and charging is not included in it. [7] proposes a Charging distributed services of a computational grid architecture. It thinks that a computation grid consists of four layers— — communication service layer,computation service layer, information service layer, and knowledge layer. The three former layers of them provide QoS service by using the CPS[8] pricing scheme. CPS[8] pricing scheme is first used to deal with the congest in the TCP/IP based network for QoS. A charging system for grid was designed in [7]. But how to deal with “computing power” which is the computational grid’s main issue is not discussed in it. In this paper, we propose a calculating cost method that translate the standardization technology cost into the currency cost, and propose a scheme for grid charging and accounting system, which deal with the “computing power” metering and cost calculation.
3 Charging, Accounting and Calculating Cost
3.1 What Should Be Charged and Accounted in Computational Grid It is necessary to decide for what kinds of resource elements should pay in a grid system. User applications require different resource. The requirement depends on computations performed and algorithms used in solving problems. The demanding resource of different applications is usually different. Some applications can be CPU intensive while others can be I/O intensive or a combination. Therefore, the consumption of the following resources may be accounted and charged[6]: ·CPU - User time (consumed by user App.) and System time (consumed while serving user App.) ·Memory ·Maximum resident set size - page size ·Amount of memory used ·Page faults ·Storage used ·Network bandwidth consumption ·Signals received, context switches ·Software and Libraries accessed . It is obvious that no every resource will bill the cost of every chargeable element. In a specific application , only the resources used by it will be billed. 3.2 Cost Calculation It is important to determine the value for every resource element and consequently, the price. The price togtheter with the amount of usage of the resource determines the cost. It's important to note that the value and the price of a resource are conceptually different. The value of a resource should be essentially the way to quantify the real capabilities of the resource itself. [5] assumes that the price of a resource should be related to the value of that resource and that two resources with the same value should have comparable prices. But in fact, the Price is different according to different economic model, and a resource has different price at different condition. In this paper, we calculate the standardization technology cost of a application by charging and accounting system, and then transform the standardization technology cost into currency cost according to pricing policy. Pricing policy is determined by economic model. It is beyond of discussion in this paper. The following is the detail of cost calculation. We define computing usage as the product p・u. where p is a performance factor and u is the amount of usage of that resource element. For example if p
refers to the CPU power, u should be the amount of CPU time used by the job. This product is called technology cost in this paper, and it is nearly constant for a given job executed on processors with varying CPU Power in ideal. Furthermore, we define standardization technology cost as the product k・(p・u). Where p・u is the technology cost, and k is the normalization coefficient that use to image the value of specific resource. When we concerns the standardization technology cost for the whole job, it could be obtained from the standardization technology cost ki ・(pi ・ui ) of every resource component by computing: N
P = ∑ ki ⋅ ( pi ⋅ ui) . i =1
(1)
Where ki , pi and ui are defined above. The i index runs over the resource elements (i.e. CPU, RAM, Disk, etc. . . ). The price of a standardization technology cost unit is gived by a pricing algorithm, which is determined by the economy model used by the grid system. According economy rule, price is usually related with the user demands, the user’ s wish, the relation of the demand and supply in the market, the provider’s currently load, the provider’s wish. So the price is a func tion of the elements mentioned above. We can use a function to express it as follow: Price=f(D,PU,R,L,PP).
(2)
Where Price is the price of a standardization technology cost unit. D is the demand of usage of resource; usually it is a assessed value. PU si the user’ s pricing policy, which images the user’ s wish. R is the relation of demand and supply in the market. L is the currently load of the provider. And the PP is the provider’s pricing policy, which images the provider’s wish. The currency cost of the whole job is computed by: C=P・Price
(3)
Where P is the standardization technology cost calculated by (1), and Price is Calculated by (2), C is the currency cost of a job.
4 A Charging and Accounting System for Grid In this section, we suppose a trade scene in a computational economy based grid system and subsequently, educe the demands of the charging and the other related item. Then we design the charging and accounting system for the grid, with the support modules.
4.1 The Trade in A Grid and Its Demands (2)
Application
(3) (1) (7)
Information Service
Market Service
Grid Resource broker
Grid middleware
Grid Service Provider
(4) (5) (6)
Fig. 1. process of a application in a computationnal economy based Grid
In order to understand running scene of the charging and accounting system, we introduce how a comsumer submits a application to the grid and how the grid handles the job in a computational economy based grid system. Fig .1. shows the process: (1) The consumer(Application) submits his job with some parameters to the Grid Resource Broker. The parameters include consumer’ s pricing policy and deadline. (2) The Grid Resource broker inquires of the Information Service about which Grid Service Provider is available. (3) The Information Service returns a set of available Grid Service Providers to the Grid Resource Broker. (4) If no availabled Grid Resource Provider, the Grid Resource notices the costumer that no available Grid Resource and the process is end. Or the Grid Resource Broker submits the job to one of the Grid Service Provider. (5) The Grid Service Provider evaluates the job technology cost and gives a price of the job to the Grid Resource Broker according to the technology cost , the demand and supply state in the maket, the provider’ s pricing policy and its current loading. The Grid Resource Broker decides whether accept that price according to the cosumer’s pricing policy. If accept that price, continue to the step (6). Or it negotiates about the price with the provider. If they come to a price that accepted by both of them, continue to the step (6). Or the Grid Resoure broker chooses another available Grid Service Provider, go to step (4). (6) The Grid Service Provider signs a contract with the broker. Then the provider allocates resource for the job and executes the job. A component name “Data gather” meters and samples the usage of the job, seeing fig .2.. It sends the data to the Charging and Accounting System(CAS). After the job finish, the CAS calculates the currency cost and sends the
currency cost data to the Billing System. Then the provider returns the job results to the broker. (7) The broker returns the results to the cosumer. All of the interaction between the Broker and Provider are supported by the Grid middleware. We don’t discuss the Grid middleware in detail for simplify the describe the process of handle the job. From the describing above, we get the demands of the provider. In computational economy environment, a provider should include the follow demands for computational economy: (1) Evaluate a job technology cost. (2) Evaluate the Supply and demand in a computinal power maket. (3) Give a price for job based on the technology cost evaluated, supply and demand state evaluate, the provider pricing policy and its current loading. (4) Meter and sample the usage of a job. (5) Calculate the currency cost of a job. (6) Billing system. Besides mention above, it must support the usually demands, such as resource reservation, resource allocation and trade server, etc. We don’t discuss them because they have often been discussed in the articles about grid resource management. Resource reservation Resource Allocation Supply& demand assess Consumer’
s job assess
Billing System
Trade server
CAS
Pricing algorithms
Charge Calculation
Accounting
DATA GATHER Software lab.
CPU
Memory Data Flow
I/O
Storage
Other device
Meter and sample
Fig. 2. Grid Service Provider and Charging & Accounting System
4.2 The Architecture of Grid Service Provider and Its Charging and Accounting System We maps the demand into our design, showing as fig.2.. The important components relating to the cost calculation are introduced in follow. The Supply and demand assess module is used to evaluate the supply and demand state in the computional power market. According economy theory, the relationship of supply and demand is an important element in deciding the price of a goods. The price is low When supply is more than the demand, and the price is high when supply is less than the demand. The Consumer’s job assess module is used to evaluate how much technology cost that a job will spend in the provider’s machine. The broker need to know the machine performance, but it is not only decided by the hardware of the machine, it also depends on the algorithms that the job use to solve a problem. So if different providers use different algorithms, the same job may spend different technology cost even in the same type machine and subsequently, spend different currency cost. A broker need to know how many technology cost it will spend before it accept a price. It can compare the cost among the providers and choose the suitable one. The provider also needs the technology cost evaluated to help calculate a price in order to give a competing price to the consumer. The Data gather module is the process that provides general ways to meter and sample the usage of the grid resources for a job, such as the usage of cpu, memory, storage, etc. When a job is dispatched in the grid resources, it will be metered and sampled by the Data gather module. After the job finished, the data of its usage of the grid resources will be sent to the Accounting module, Pricing algorithms module and the Consumer’s job accsess modules. The Pricing algorithms module is use to calculates optimal prices given current loading, Consumer job technology cost evaluated, supply and demand state evaluated, and the provider’s pricing policy. This prices was sent to the consumer for negotiate about the acceptable price for both provider and consumer. If they come to a acceptable price, it was sent to the charge calculation module. A pricing algorithms module may has more than one algorithms. The Accounting module collects data about the task or bulk usage of each customer that is provided by the Data gather module. The Charge calculation module receives the price that are sent from the pricing algorithms module and the data from the accounting module. It calculates the charges for the finished computing task and its output is again the input for the billing mechanisms of the provider .
5 Conclusion In this paper, what kinds of resource is charged and counted is introduced in the grid. A cost calculation method was proposed, which transforms the
standardization technology cost of a job into curruency cost. And a architecture of charging, accounting and its support module is proposed. The shceme we discuss in this paper will apply to our campus grid.The further research is the pricing scheme and the related economic model that suitable for our grid.
Acknowledgements This work has been supported by GuangDong Key Laboratory of Computer Network (Grant No. 2002B60113) and GuangXi University Science Research Foundation (Grant No. CC1407).
Reference 1. A Natrajan, M A.Humphrey, A S.Grimshaw: Grids: Harnessing Geographically-Separated Resources in a Multi-Organisational Context. In Proceedings of the 15th Annual Symposium on High Performance Computing Systems and Applications(HPCS 2001) , Ontario, Canada, June 18-20, 2001. Available:http://legion.virginia.edu/papers/HPCS01.pdf 2. I. Foster, C. Kesselman, S. Tuecke: The Anatomy of the Grid: Enabling Scalable Virtual Organizations . International J. Supercomputer Applications, 15(3), 2001. Available: http://www.globus.org/research/papers/anatomy.pdf. 3. Mark Baker, Rajkumar Buyya and Domenico Laforenza: The Grid: International Efforts in Global Computing. International Conference on Advances in Infrastructure for Electronic Business, Science,and Education on the Internet (SSGRR'2000), IAquila, Rome, Italy, July 31 - August 6. Available: http://www.cs.mu.oz.au/~raj/papers/TheGrid.pdf. 4. A. Iamnitchi,I. Foster: On Fully Decentralized Resource Discovery in Grid Environments. International Workshop on Grid Computing, Denver, Colorado, November 2001. Available:http://citeseer.nj.nec.com/cache/papers/cs/25088/http:zSzzSzpeople.cs.uchicago.e duzSz~andazSzpaperszSzGC2001.pdf/iamnitchi01fully.pdf 5. C.Anglano, S.Barale, L.Gaido, A.Guarise, S.Lusso, A.Werbrouck: An accounting system for the DataGrid project -Preliminary proposal. draft in discussion at Global Grid Forum 3, Frascati, Italy, October, 2001. Available: http://server11.infn.it/workload-grid/docs/DataGrid-01-TED-0115-3_0.pdf 6. Rajkumar Buyya: Economic-based Distributed Resource Management and Scheduling for Grid Computing. A thesis submitted in fulfillment of the requirements for the Degree of Doctor of Philosophy, School of Computer Science and Software Engineering Monash University, Melbourne, Australia. April 12, 2002. 7. Stiller, B., Gerke, J., Flury, P., Reichl, P.: Charging distributed services of a computational grid architecture. Cluster Computing and the Grid, 2001. Proceedings. First IEEE/ACM International Symposium on , 15-18 May 2001 Page(s): 596 –601 8. B. Stiller, J. Gerke, P. Reichl, P. Flury: The Cumulus Pricing Scheme and its Integration into a Generic and Modular Internet Charging and Accounting System for Differentiated Services, TIK Report No. 96, Computer Engineering and Networks Laboratory TIK, ETH Zürich, Switzerland, September 2000. Available: http://anaisoft.unige.ch/public-documents/deliverables/TIK-Report96.pdf.