Metering and Licensing of Resources: Kala ’ s General Purpose Approach by Sergiu S. Simmel and Ivan Godard Review by Seung Jun Lee ABSTRACT “ This paper.

Slides:



Advertisements
Similar presentations
Distributed Data Processing
Advertisements

Database System Concepts and Architecture
ATTENTION This presentation breaks down the purchasing process into 6 steps, which are then detailed in the subsequent slides. While responding from either.
28.2 Functionality Application Software Provides Applications supply the high-level services that user access, and determine how users perceive the capabilities.
Introduction to Database Management  Department of Computer Science Northern Illinois University January 2001.
Semantics of the Password-Capability System Dan Mossop and Ronald Pose School of Computer Science & Software Engineering Monash University, Australia.
Network Management Overview IACT 918 July 2004 Gene Awyzio SITACS University of Wollongong.
SWE Introduction to Software Engineering
Software Frameworks for Acquisition and Control European PhD – 2009 Horácio Fernandes.
Introduction to Databases Transparencies
Copyright © 2002 Pearson Education, Inc.
Overview of Software Requirements
Ch 12 Distributed Systems Architectures
1 IS112 – Chapter 1 Notes Computer Organization and Programming Professor Catherine Dwyer Fall 2005.
Dr. Kalpakis CMSC 461, Database Management Systems Introduction.
Digital Payment Systems
COMPUTER TERMS PART 1. COOKIE A cookie is a small amount of data generated by a website and saved by your web browser. Its purpose is to remember information.
Software Development, Programming, Testing & Implementation.
Database Administration Chapter 16. Need for Databases  Data is used by different people, in different departments, for different reasons  Interpretation.
COMP 6005 An Introduction To Computing Session Two: Computer Software Acquiring Software.
DATABASE SECURITY By Oscar Suciadi CS 157B Prof. Sin-Min Lee.
Internet GIS. A vast network connecting computers throughout the world Computers on the Internet are physically connected Computers on the Internet use.
Objectives Design Class Diagrams Issues in system design Generalization Review UML papers.
This chapter is extracted from Sommerville’s slides. Text book chapter
Copyright © 2002 Pearson Education, Inc. Slide 6-1.
Copyright © cs-tutorial.com. Introduction to Web Development In 1990 and 1991,Tim Berners-Lee created the World Wide Web at the European Laboratory for.
WEB ENGINEERING LECTURE 4 BY Kiramat Rahman. outline  In this Lecture you will learn about:  Term “Software” and its relationship with “Hardware” 
Electronic Payment Systems. How do we make an electronic payment? Credit and debit cards Smart cards Electronic cash (digital cash) Electronic wallets.
Cloud Computing. What is Cloud Computing? Cloud computing is a model for enabling convenient, on-demand network access to a shared pool of configurable.
Jaeki Song ISQS6337 JAVA Lecture 16 Other Issues in Java.
Functions of a Database Management System
AL-MAAREFA COLLEGE FOR SCIENCE AND TECHNOLOGY INFO 232: DATABASE SYSTEMS CHAPTER 1 DATABASE SYSTEMS (Cont’d) Instructor Ms. Arwa Binsaleh.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 6 Slide 1 Software Requirements.
Introduction: Databases and Database Users
2 Systems Architecture, Fifth Edition Chapter Goals Describe the activities of information systems professionals Describe the technical knowledge of computer.
SCSC 311 Information Systems: hardware and software.
Lecture 15 Introduction to Web Services Web Service Applications.
Configuration Management (CM)
Unit – I CLIENT / SERVER ARCHITECTURE. Unit Structure  Evolution of Client/Server Architecture  Client/Server Model  Characteristics of Client/Server.
1 Introduction to Middleware. 2 Outline What is middleware? Purpose and origin Why use it? What Middleware does? Technical details Middleware services.
Information: Policy, Strategy and Systems Module Overview
XML Web Services Architecture Siddharth Ruchandani CS 6362 – SW Architecture & Design Summer /11/05.
Lecture # 3 & 4 Chapter # 2 Database System Concepts and Architecture Muhammad Emran Database Systems 1.
Lesson Overview 3.1 Components of the DBMS 3.1 Components of the DBMS 3.2 Components of The Database Application 3.2 Components of The Database Application.
1 15 quality goals for requirements  Justified  Correct  Complete  Consistent  Unambiguous  Feasible  Abstract  Traceable  Delimited  Interfaced.
9 Systems Analysis and Design in a Changing World, Fourth Edition.
Distribution and components. 2 What is the problem? Enterprise computing is Large scale & complex: It supports large scale and complex organisations Spanning.
Introduction to database system What is a Database system? What is a Database system? Data System Components Data System ComponentsDataHardwareSoftwareUser.
INTRODUCTION TO DBS Database: a collection of data describing the activities of one or more related organizations DBMS: software designed to assist in.
1 Chapter 1 Introduction to Databases Transparencies.
Database Administration
Configuration Management CSCI 5801: Software Engineering.
Slide 1 Service-centric Software Engineering. Slide 2 Objectives To explain the notion of a reusable service, based on web service standards, that provides.
1 Chapter 12 Configuration management This chapter is extracted from Sommerville’s slides. Text book chapter 29 1.
Providing web services to mobile users: The architecture design of an m-service portal Minder Chen - Dongsong Zhang - Lina Zhou Presented by: Juan M. Cubillos.
The overview How the open market works. Players and Bodies  The main players are –The component supplier  Document  Binary –The authorized supplier.
Copyright 2007, Information Builders. Slide 1 iWay Web Services and WebFOCUS Consumption Michael Florkowski Information Builders.
Active Directory Domain Services (AD DS). Identity and Access (IDA) – An IDA infrastructure should: Store information about users, groups, computers and.
IT 5433 LM1. Learning Objectives Understand key terms in database Explain file processing systems List parts of a database environment Explain types of.
Computer Systems Architecture Edited by Original lecture by Ian Sunley Areas: Computer users Basic topics What is a computer?
©2008 Woodcock Washburn LLP Basic Claim Drafting in Computer Systems Lance D. Reich Partner Woodcock Washburn LLP Seattle, Washington.
Database Systems: Design, Implementation, and Management Tenth Edition
(ITI310) SESSIONS 6-7-8: Active Directory.
Distribution and components
Chapter 25: Architecture and Product Lines
Service-centric Software Engineering
Metadata The metadata contains
SOFTWARE DEVELOPMENT LIFE CYCLE
Web Application Development Using PHP
Presentation transcript:

Metering and Licensing of Resources: Kala ’ s General Purpose Approach by Sergiu S. Simmel and Ivan Godard Review by Seung Jun Lee ABSTRACT “ This paper describes the licensing and metering capabilities of Kala, a persistent data server. Kala offers a suite of low-level primitives for constructing both simple and sophisticated licensing and metering models. Kala allows the licensing and/or metering of access to any software facilities, both data and executable code and associated services. ”

Outline  Kala Technical Brief  Definitions  Acquiring a Resource – The Basic Algorithm  The Architecture of main activities of the resource model  The Definition Activity  The Cookie Exchange Protocol  Conclusions  Questions

Kala Technical Brief  Persistent Data Server managing distributed, shared, arbitrarily complex and evolving persistent data  Highly efficient and secure  Manages the visibility of persistent data elements to its clients, Supporting any types of transactions, versions, access control, security, configurations  Not restrict to any particular model  Usable as either a link library communicating to a server or as a standalone. Compact and simple  Used for application such as: kernel of DBMS products, substrate for extended file systems, implementation of language persistence, data manager for groupware applications, text databases, financial distributed transaction systems etc

Definitions  Metering ( “ Pay-per-use ” ) An arrangement whereby the consumer pays the producer for as much of the producer ’ s software as the consumer ’ s software actually uses  Licensing ( “ Pay-per-user ” ) An arrangement whereby the consumer ’ s software is permitted to use the producer ’ s software for a period of time in return for a fixed fee, independent of whether or how much the consumer ’ s software actually uses the producer ’ s software  Resource An abstraction representing access to a software component

Acquiring a Resource: The Basic Algorithm  Step1: For each of X ’ s sub-resources Y; 1.a Attempt to acquire Y. 1.b If successful, then go to next sub-resource, if any. 1.c If Y requests a charge, and there is a license from Y to X or any parent of X, then acquire Y with license. 1.d If Y requests a charge, and there is no license for Y, then accumulate charge.  Step2: Add local added value to a accumulated charge.

Acquiring a Resource: The Basic Algorithm  Step3: If X ’ s parent has a license for X, then 3.a Accept provisional charges from all X ’ s sub-resources, and remember to pay all charges to X ’ sub-resources from X ’ s account. 3.b Return success.  Step4: If X ’ s parent has no license for X, then propose to charge accumulated charge to parent.

Acquiring a Resource: The Basic Algorithm  Step5: If X ’ s parent accepts provisional charge, then 5.a Accept provisional charges from all X ’ s sub-resources, and remember to pay all charges to X ’ s sub-resources from the actual charge received from X ’ s parent. 5.b Return success.  Step6: If X ’ s parent refuses the provisional charge, then return failure.

The Architecture The resource management model involves three distinct activities and related sets of objects:  The Definition Activity  The Resource Acquisition and Charging Activity  The Accounting Activity

The Definition Activity “ Definition ” – the activity by which resources are defined, licenses are installed, and meters are filled with meter currency. Common properties:  All involve interactions between a customer and vendor.  All reflect cash transactions between the customer and the vendor.  All must be totally safe – “ Cookie exchange protocol ”

The Cookie Exchange Protocol  A mechanism designed to insure the safe and unforgeable definition of resources, installation of licenses and filling of meters at the customer sites  The mechanism is based on the exchange of “ magic numbers ” between vendors and customers. –” Cookies ” For each definition action, two cookies are involved:  The Customer Cookie  The Vendor Cookie

The Cookie Exchange Protocol  The Customer Cookie - generated by the customer on the customer computer and transmitted to the vendor. - encodes information that makes it unique, reflecting this particular customer site - identifies the customer uniquely throughout the subsequent activity.  The Vendor Cookie - generated by the vendor in response to a customer cookies and to information the vendor has about the associated cash transaction. - encode the originating customer cookie, the vendor ’ s identity, and action performed on the basis of customer payment. - generated by vendor, using a unique per-vendor copy of the NewCookie program.

The Cookie Exchange Protocol The cookie exchange protocol is safe against fraud as long as:  The vendor ’ s NewCookie program is safeguarded by the vendor.  The customer ’ s site is able to generate customer cookies that uniquely identify the site.  Valid cookies from NewCookie only work on sites which generated the original customer cookie.  Invalid cookies don ’ t work at all

Conclusions For Kala ’ s resource management functionality, Kala meets some requirements. – “ Be Safe ”  The resource model requires components to be accessible only via their resource objects  Kala provides a secure storage of data, whereby applications have full control over who can see what and when, via the data visibility primitives  The dual cookie device permits rights to be communicated between vendors and customers without the need for expensive or cumbersome communication safety provisions.

Question & Answer  Which is better? Pay-per-use ( “ metering ” ) or Pay-per-user ( “ licensing ” )  Does this license administration mechanism perfectly display efficiently for both customer and vendor?