Network


Latest external collaboration on country level. Dive into details by clicking on the dots.

Hotspot


Dive into the research topics where Jim Pruyne is active.

Publication


Featured researches published by Jim Pruyne.


Archive | 2010

Peer-to-Peer Computing

Dejan S. Milojicic; Vana Kalogeraki; Rajan Lukose; Kiran Nagaraja; Jim Pruyne; Bruno Richard; Sami Rollins; Zhichen Xu

The term “peer-to-peer” (P2P) refers to a class of systems and applications that employ distributed resources to perform a critical function in a decentralized manner. With the pervasive deployment of computers, P2P is increasingly receiving attention in research, product development, and investment circles. This interest ranges from enthusiasm, through hype, to disbelief in its potential. Some of the benefits of a P2P approach include: improving scalability by avoiding dependency on centralized points; eliminating the need for costly infrastructure by enabling direct communication among clients; and enabling resource aggregation. This survey reviews the field of P2P systems and applications by summarizing the key concepts and giving an overview of the most important systems. Design and implementation issues of P2P systems are analyzed in general, and then revisited for each of the case studies described in Section 6. This survey will help people understand the potential benefits of P2P in the research community and industry. For people unfamiliar with the field it provides a general overview, as well as detailed case studies. It is also intended for users, developers, and information technologies maintaining systems, in particular comparison of P2P solutions with alternative architectures andPeer-to-peer (P2P) technology, or peer computing, is a paradigm that is viewed as a potential technology for redesigning distributed architectures and, consequently, distributed processing. Yet the scale and dynamism that characterize P2P systems demand that we reexamine traditional distributed technologies. A paradigm shift that includes self-reorganization, adaptation and resilience is called for. On the other hand, the increased computational power of such networks opens up completely new applications, such as in digital content sharing, scientific computation, gaming, or collaborative work environments. In this book, Vu, Lupu and Ooi present the technical challenges offered by P2P systems, and the means that have been proposed to address them. They provide a thorough and comprehensive review of recent advances on routing and discovery methods; load balancing and replication techniques; security, accountability and anonymity, as well as trust and reputation schemes; programming models and P2P systems and projects. Besides surveying existing methods and systems, they also compare and evaluate some of the more promising schemes. The need for such a book is evident. It provides a single source for practitioners, researchers and students on the state of the art. For practitioners, this book explains best practice, guiding selection of appropriate techniques for each application. For researchers, this book provides a foundation for the development of new and more effective methods. For students, it is an overview of the wide range of advanced techniques for realizing effective P2P systems, and it can easily be used as a text for an advanced course on Peer-to-Peer Computing and Technologies, or as a companion text for courses on various subjects, such as distributed systems, and grid and cluster computing.


international conference on web services | 2008

Automatically Determining Compatibility of Evolving Services

Karin Becker; Andre Lopes; Dejan S. Milojicic; Jim Pruyne; Sharad Singhal

A major advantage of Service-Oriented Architectures (SOA) is composition and coordination of loosely coupled services. Because the development lifecycles of services and clients are decoupled, multiple service versions have to be maintained to continue supporting older clients. Typically versions are managed within the SOA by updating service descriptions using conventions on version numbers and namespaces. In all cases, the compatibility among services description must be evaluated, which can be hard, error-prone and costly if performed manually, particularly for complex descriptions. In this paper, we describe a method to automatically determine when two service descriptions are backward compatible. We then describe a case study to illustrate how we leveraged version compatibility information in a SOA environment and present initial performance overheads of doing so. By automatically exploring compatibility information, a) service developers can assess the impact of proposed changes; b) proper versioning requirements can be put in client implementations guaranteeing that incompatibilities will not occur during run-time; and c) messages exchanged in the SOA can be validated to ensure that only expected messages or compatible ones are exchanged.


integrated network management | 2005

Quartermaster - a resource utility system

Sharad Singhal; Martin F. Arlitt; Dirk Beyer; Sven Graupner; Vijay Machiraju; Jim Pruyne; Jerry Rolia; Akhil Sahai; Cipriano A. Santos; Julie Ward; Xiaoyun Zhu

Utility computing is envisioned as the future of enterprise IT environments. Achieving utility computing is a daunting task, because enterprise users have diverse and complex needs. In this paper we describe quartermaster, an integrated set of tools that addresses some of these needs. Quartermaster supports the entire lifecycle of computing tasks - including design, deployment, operation, and decommissioning of each task. Although individual components of this lifecycle have been addressed in earlier work, quartermaster integrates them in a unified framework using model-based automation. All tools within quartermaster are integrated using models based on the common information model (CIM), an industry-standard model from the distributed management task force (DMTF). The paper discusses the quartermaster implementation, and describes two case studies using quartermaster.


IEEE Computer | 2012

Fusion: Managing Healthcare Records at Cloud Scale

Sujoy Basu; Alan H. Karp; Jun Li; Jim Pruyne; Jerry Rolia; Sharad Singhal; Jaap Suermondt; Ram Swaminathan

An experimental open, cloud-based platform for large-scale, low-cost delivery of healthcare applications enables broader use of patient-centric management of electronic health records and facilitates the secure and seamless sharing of EHRs among stakeholders within a healthcare system.


Architecting Dependable Systems III | 2005

The role of agreements in IT management software

Carlos Molina-Jiménez; Jim Pruyne; Aad P. A. van Moorsel

Various forms of agreements naturally arise in the service provider model as well as in multi-party computing models such as business-to-business, utility and grid computing. The role of these agreements is twofold: they stipulate obligations and expectations of the involved parties, and they represent the goals to be met by the infrastructure. As a consequence of this latter point, in order to automate run-time adaptation and management of systems and services, agreements should be encoded and integrated in management software platforms. In this paper, we review the state of the art in software support for various forms of agreements, for all stages of their life-cycle. We also review emerging platforms and technologies in standard bodies, industries and academia.


International Journal of Web Services Research | 2011

Automatic Determination of Compatibility in Evolving Services

Karin Becker; Jim Pruyne; Sharad Singhal; Andre Lopes; Dejan S. Milojicic

A major advantage of Service-Oriented Architectures SOA is composition and coordination of loosely coupled services. Because the development lifecycles of services and clients are de-coupled, multiple service versions must be maintained to support older clients. Typically versions are managed within the SOA by updating service descriptions using conventions on version numbers and namespaces. In all cases, the compatibility among services descriptions must be evaluated, which can be hard, error-prone and costly if performed manually, particularly for complex descriptions. In this paper, the authors describe a method to automatically determine when two service descriptions are backward compatible. The authors describe a case study to illustrate version compatibility information in a SOA environment and present initial performance overheads. By automatically exploring compatibility information, a service developers can assess the impact of proposed changes; b proper versioning requirements can be put in client implementations guaranteeing that incompatibilities will not occur during run-time; and c messages exchanged in the SOA can be validated to ensure that only expected messages or compatible ones are exchanged.


integrated network management | 1999

Solomon: monitoring end-user service levels

Svend Frolund; Mudita Jain; Jim Pruyne

To manage distributed applications, we need to accurately monitor end-user service levels. There are two key challenges in monitoring end-user service levels: expressiveness and scalability. There is a big semantic gap between the metrics that administrators want to monitor and the metrics offered by commercial measurement systems. Moreover, it is hard to apply the same kind of metrics to different applications because different applications are likely to offer different types of instrumentation points. We want to apply the same metrics to very large numbers of instrumentation points, which makes scalability a key issue. In this work we present the activity monitoring language (AML) for declaratively specifying metrics, and a run-time system, called Solomon (service level objective monitor), that implements the concepts in AML. Expressiveness is a result of AML, which allows the high-level specification of user-defined metrics in an application-neutral way. Solomons scalability is a result of reducing events and measurements as close to their physical source as is possible without the loss of accuracy.


job scheduling strategies for parallel processing | 2003

Grids for Enterprise Applications

Jerry Rolia; Jim Pruyne; Xiaoyun Zhu; Martin F. Arlitt

Enterprise applications implement business resource management systems, customer relationship management systems, and general systems for commerce. These applications rely on infrastructure that represents the vast majority of the world’s computing resources. Most of this infrastructure is lightly utilized and inflexible. This paper builds on the strength of Grid technologies for the scheduling and access control of resources with the goal of increasing the utilization and agility of enterprise resource infrastructures. Our use of these techniques is directed by our observation that enterprise applications have differing characteristics than those commonly found in scientific domains in which the Grid is widely used. These include: complex resource topology requirements, very long lifetimes, and time varying demand for resources. We take these differences into consideration in the design of a resource access management framework and a Grid-based protocol for accessing it. The resulting system is intended to support the new requirements of enterprise applications while continuing to be of value in the parallel job execution environment commonly found on today’s Grid.


integrated network management | 2007

A Model-based Simulation Approach to Error Analysis of IT Services

Long Wang; Akhil Sahai; Jim Pruyne

Utility computing environments provide on-demand IT services to customers. Such environments are dynamic in nature and continuously adapt to changes in requirements and system state. Errors are an important category of environment state changes as such environments consist of a large number of components, and hence, are subject to errors. In this paper, we design and implement a model-based simulation framework that leverages information about existing service components and their interactions, and provides concrete service behavior in presence of a variety of errors. To evaluate the framework, experiments are conducted on a virtualized blade-server based environment. Results show that the framework is effective and practical in analyzing error impacts on IT services.


international middleware conference | 2010

Control plane integration for cloud services

Sujoy Basu; Sven Graupner; Jim Pruyne; Sharad Singhal

This paper addresses the problem of control plane integration for management and control of cloud services. Unlike data plane integration, which ensures that services can exchange data during operation, control plane integration ensures proper configuration of services before their use. Examples of control plane integration include creating user accounts or establishing profiles in multiple services to allow them to work together during operation. The heterogeneity of service interfaces in the control plane arises from the different ways in which services are implemented and the different requirements they have for their use. Control plane integration is often needed for service bundling and ad-hoc compositions across services, such as for promotional campaigns that must be developed and deployed rapidly. In this paper, we propose a developer-centric approach to integration of services on the control plane. Our approach is based on using Java code annotation, which is introspected at runtime to create rich service models. A multi-layered architecture allows the rapid modeling, development and implementation of service integration scenarios. We demonstrate our approach with an example of a promotional campaign that uses two external service providers.

Collaboration


Dive into the Jim Pruyne's collaboration.

Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar

Vana Kalogeraki

Athens University of Economics and Business

View shared research outputs
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Researchain Logo
Decentralizing Knowledge