Browsing by Author "Tripathi, Anand"
Now showing 1 - 20 of 26
Results Per Page
Sort Options
Item A Transaction Model for Management for Replicated Data with Multiple Consistency Levels(2014-08-28) Tripathi, AnandWe present here a transaction model for managing replicated data with different consistency guarantees to make suitable trade-offs between data availability, scalability, and consistency for different data items. Data is organized in a hierarchy which is based on consistency levels and the associated transaction management protocols. The model presented here is based on imposing certain constraints on information flow across data layers in this hierarchy to ensure the desired consistency guarantees for data items at different levels. The transaction model proposed here simultaneously supports transactions with different consistency levels, which include ACID transactions for strong consistency, and weaker consistency models such as snapshot isolation (SI), causal snapshot isolation (CSI), CSI with commutative updates, and CSI with unsynchronized concurrent updates. The building block for this transaction model is the snapshot isolation model.Item Beehive: A Framework for Graph Data Analytics on Cloud Computing Platforms(2013-07-24) Tripathi, Anand; Padhye, Vinit; Sunkara, Tara SasankWe describe here our current work on the development of a programming framework called Beehive for graph data analysis on cloud computing environments. This framework is based on the speculative computing approach using transactional task executions for harnessing amorphous parallelism in graph data analysis problems. We describe here the architecture and the programming abstractions provided by this framework. We present here the results of programming several graph problems using this framework.Item Design and Evaluation of a Transaction Model with Multiple Consistency Levels for Replicated Data(2015-05-20) Tripathi, Anand; Thirunavukarasu, BhagavathiDhassWe present here a transaction model which simultaneously supports different consistency levels, which include serializable transactions for strong consistency, and weaker consistency models such as causal snapshot isolation (CSI), CSI with commutative updates, and CSI with asynchronous concurrent updates. This model can be useful in managing replicated data with different consistency guarantees to make suitable tradeoffs between data availability, performance, and consistency of different data items. Data and the associated transactions are organized in a hierarchy which is based on consistency levels. Certain rules are imposed on transactions to constrain information flow across data at different levels in this hierarchy to ensure the required consistency guarantees. The building block for this transaction model is the snapshot isolation model. We present an example of an e-commerce application structured with data items and transactions defined at different consistency levels. We have implemented a testbed system for replicated data management based on the proposed multilevel consistency model. We present here the results of our experiments with this ecommerce application to demonstrate the benefits of this model.Item Design Issues in Mobile Agent Programming Systems(1997) Karnik, Neeran; Tripathi, AnandWe describe the mobile agent paradigm which is becoming increasingly popular for network-centric programming, and compare it with earlier paradigms for distributed computing from which it has evolved. The design of mobile agent systems requires the resolution of several system-level issues, such as the provision of code mobility, portability and scalability on wide-area heterogeneous networks, and a host of security-related problems that go hand-in-hand with mobile code. Agent programming requires suitable languages and programming models that can support code mobility, and runtime systems that provide some fundamental primitives for the creation, migration and management of agents. We discuss these requirements and then describe six mobile agent systems which illustrate different approaches taken by designers to address the problems.Item Design of a Dynamically Extensible System for Network Monitoring using Mobile Agents(2001-11-20) Tripathi, Anand; Ahmed, Tanvir; Pathak, Sumedh; Carney, MeganWe present here a framework together with a set of paradigms for mobile agent based active monitoring of network systems. In our framework mobile agents are used to perform remote information filtering and control functions. Such agents can detect basic events or correlate existing events that are stored in a database to enforce system policies. A system administrator can securely modify the monitoring policies and information filtering functions of its agents, or install new agents at a node. The framework presented here includes monitor, subscriber, auditor and inspector agents. The policies and itineraries of these agents can be modified dynamically. In response to certain trigger events agents may change their itineraries to correlate event data. We present here a set of experiments that we have conducted using the Ajanta mobile agent system to evaluate and demonstrate the capabilities of our mobile agent framework.Item Design of a Location-based Publish/Subscribe Service using a Graph-based Computing Model(2017-11-21) Tripathi, Anand; Hoang, HenryWe present here the initial results of our investigation of a system architecture for location-based publish/subscribe services utilizing a graph-based model for managing data and computations. This architecture is implemented on a cluster computer using the facilities and the computation model provided by the Beehive framework which supports a transactional model of parallel computing on dynamic graph data structures. We implemented a {em Museum Visitor Service} as an example of a location-based publish/subscribe system to study and evaluate the performance this approach. This service includes features utilizing location-based publish/subscribe functions for supporting coordination and collaboration among members in a social group visiting the museum. We implemented a testbed system for this service and evaluated its performance on a cluster computer. Our work also illustrates that weaker consistency models for transactions can be utilized in such services to achieve higher performance and scalability.Item Design of a Location-based Publish/Subscribe Service using a Graph-based Computing Model(IEEE, 2017) Tripathi, Anand; Hoang, HenryWe present here the initial results of our investigation of a system architecture for location-based publish/subscribe services utilizing a graph-based model for managing data and computations. This architecture is implemented on a cluster computer using the facilities and the computation model provided by the Beehive framework which supports a transactional model of parallel computing on dynamic graph data structures. We implemented a Museum Visitor Service as an example of a location-based publish/subscribe system to study and evaluate the performance this approach. This service includes features utilizing location-based publish/subscribe functions for supporting coordination and collaboration among members in a social group visiting the museum. We implemented a testbed system for this service and evaluated its performance on a cluster computer. Our work also illustrates that weaker consistency models for transactions can be utilized in such services to achieve higher performance and scalability.Item Design of a Policy-Driven Middleware for Secure Distributed Collaboration(2001-11-20) Tripathi, Anand; Ahmed, Tanvir; Kumar, Richa; Jaman, ShremattieWe present here the execution model of a policy-drivenmiddleware for building secure distributed collaboration systems from their high level specifications. Our specification model supports nested collaboration activities and uses role based security policies and event count based coordination specification. From the specifications of a collaboration environment, appropriate policy modules are derived for enforcing security and coordination requirements. A policy-driven distributed middleware provides services to the users to join roles in an activity, perform role specific operations, or create new activities. We describe here the design challenges for the middleware and present the runtime structures and protocols supported by it for creating activities, roles, and objects. Our design takes into consideration that only some designated nodes can be trusted to enforce the required security policies for an activity.Item Design of Ajanta System for Mobile Agent Programming(2001-11-20) Tripathi, Anand; Karnik, Neeran M.; Ahmed, Tanvir; Vora, Manish K.; Pathak, Mukta; Prakash, Arvid; Kakani, VineetWe describe the architecture and programming environment of Ajanta, a Java-based system for programming applications using mobile agents over the Internet. Agents are mobile objects which are hosted by servers on the network. Ajanta provides primitives for creating and dispatching agents, securely controlling agents at remote sites, and transferring agents from one server to another. For secureaccess to server resources by visiting agents, a proxy-based access control mechanism is used. The Ajanta design includes mechanisms to protect an agent's state and prevent misuse of its credentials. We describe in this paper migration patterns for programming an agent's travel path. A pattern encapsulates the abstract notion of agent mobility. Pattern composition allows one to build complextravel plans using some basic migration patterns. Finally,we present three agent-based distributed applications implemented using the Ajanta system. These include a middleware for sharing files over the Internet, a distributed calendar management system, and an agent-based middleware for distributed collaborations.Item Efficient Object Caching for Distributed Java RMI Applications(2001-11-20) Eberhard, John; Tripathi, AnandJava-based distributed applications generally use RMI(Remote Method Invocation)for accessing remote objects. When used in a wide-area environment, the performance of such applications can be poor because of the high latency of RMI. This latency can be reduced by caching objects at the client node. However, the use of caching introduces other issues, including the expense of caching the object as well as the expense of managing the consistency of the object. This paper presents a middleware for object caching in Java RMI-based distributed applications. The mechanisms used by the middleware are fully compatible with Java RMI and are transparent to the clients. Using this middleware, the system designer can select the caching strategy and consistency protocol most appropriate for theaplication. The paper illustrates the benefits of using these mechanisms to improve the performance of RMI applications.Item Fighting Freeloaders in Decentralized P2P File Sharing Systems(2004-01-14) Osipkov, Ivan; Kim, Yongdae; Tripathi, AnandCurrently used P2P file-sharing systems such as Gnutella suffer from a freeloading problem due to absence of enforcible decentralized mechanism to motivate peers to provide services to others. Freeloading leads to a defacto centralized system that is susceptible to DoS attacks and provides poor service to its participants. In this paper, we propose a decentralized mechanism that avoids on-line polling and forces peers to contribute their bandwidth to the system. We discuss additional positive properties of the model and, finally, discuss how to deal with collusion and Sybil attacks.Item Investigation of a Transactional Model for Incremental Parallel Computing in Dynamic Graphs(2017-05-25) Tripathi, Anand; Sharma, Rahul R.; Khandelwal, Manu; Mehta, Tanmay; Pandey, Varun; Parisineti, CharandeepIn many applications involving dynamic graph structures one may be interested in continuously observing certain properties of interest. We present here the result of our investigation of utilizing a transactional model of parallel programming for supporting continuous queries on dynamic and evolving graph structures. The goal of our work is to continuously monitor a graph data structure as it is updated to check for the properties of interest. One approach for continuous monitoring is to re-execute the graph analytics program on the entire graph structure after it is updated. However, this approach can lead to high computation cost and latency in case of large graphs. An alternate approach is to execute the analytics program only initially, and then perform incremental computations for supporting continuous queries as the graph data is modified. In our model, the graph updates are performed as transactions, which trigger execution of a set of transactional tasks to perform computations for a continuous query. In our testbed system, the graph data is stored in the RAM of cluster nodes, and continuous queries involve parallel execution of transactional tasks on cluster nodes. Using a set of graph problems we illustrate this approach and its performance benefits for supporting continuous queries in dynamic graph data structure.Item Monitoring of Wireless Networks for Intrusions and Attacks(2004-02-24) Karanth, Sandeep; Tripathi, AnandWireless networks based on IEEE 802.11 are becoming integral parts of any enterprise network. The inherent openness of these networks makes them a target for attackers. The coverage of wireless networks cannot be confined by walls or obstacles. The task of an enterprise network administrator is thus compounded by the introduction of wireless technology. Most of the attacks on wireless networks are due to vulnerabilities in the Medium Access Control (MAC) Layer. This fact drives the need for a MAC layer network monitoring system. As part of the Konark project we have developed a mobile-agent based network monitoring system for the wired network. This system facilitates centralized viewing of network alerts through cooperating agents. The main contribution of this project is the development and deployment of an analysis and attack detection tool for 802.11 wireless networks. Events generated by this toolare correlated using Konark monitoring agents and the administrator is alerted. We focus on detection of MAC address spoofing, Denial of Service attacks and network misconfigurations. We also provide services to users and applications. This report describes the different modes in which network monitoring could be done in an enterprise network using such a tool. The trade-offs involved with each mode of operation is also described.Item Paradigms for Mobile Agent-Based Active Monitoring of Network Systems(2001-11-20) Tripathi, Anand; Ahmed, Tanvir; Pathak, Sumedh; Carney, Megan; Dokas, PaulWe present here the design of a framework for building future generation network monitoring systems using mobile agents. It is designed to support dynamic configurability, extensibility, active monitoring, and secure operations.The policies for monitoring and information filtering implemented by agents can be modified remotely and dynamically. New event types and their detection procedures can be inclemently added in this system, and any desired event data aggregation policies can be defined using the publisher-subscriber model. The use of Prolog-based logic databases provides high level and easy-to-use abstractions for defining and detecting new events based on correlation of lower level events. Active monitoring in this system is supported by the incorporation of trigger rules that cause detection of an event to be initiated when certain other events are observed. The use of Ajanta, a secure mobile agent programming platform, provides the necessary infrastructure for protecting the monitoring system from attacks. We present here a set of experiments that we conducted using this system to evaluate and demonstrate its capabilities.Item Proceedings of the ECOOP 2003 Workshop on Exception Handling in Object-Oriented Systems: Towards Emerging Application Areas and New Programmi(2003-07-01) Romanovsky, Alexander; Dony, Christophe; Lindskov, Jorgen Knudsen; Tripathi, AnandModern object-oriented systems are getting more complex and they have to deal with an increasing number of exception conditions. In the recent years many exception handling techniques have been proposed and developed for object-oriented systems, but there are many challenging problems that still exist. These are caused by complexity of design and analysis of exception handling code, not addressing exception handling at appropriate levels of system development, and lack of appropriate mechanismssuitable for specific application domains and design paradigms. This report contains a collection of papers addressing these problems. These papers were selected for presentation and discussion at the ECOOP 2003 Workshop on Exception Handling in Object Oriented Systems, with specificfocus on the challenging problems in this field in the context of emerging applications and technologies.Item Robustness and Security in a Mobile-Agent based Network Monitoring System(2004-01-13) Tripathi, Anand; Koka, Muralidhar; Karanth, Sandeep; Osipkov, Ivan; Talkad, Harsha; Ahmed, Tanvir; Johnson, David; Dier, ScottIn Konark, a network monitoring system based on mobile-agents,agents can communicate witheach other to perform system-wide correlation of data.To minimize management efforts, our system incorporatesmechanisms to detect and self-recover frominternal failures in a decentralized and scalable fashion.In this paper, we discuss the mechanisms for self-recoveryachievedby using the same mechanisms as those used for monitoringcomputing resources in thenetwork.Self-monitoring of Konark also provides all the features ofnetwork monitoring,such as dynamic extensibility, active monitoring, andonline-correlation of data.The security mechanisms of Konark are also discussed.This work demonstrates that mobile-agent based approach is aviable alternative forbuilding robust and secure network monitoring systems. Keywords: Self-Monitoring and Recovery, Network monitoring,Mobile agents, Multi-agent systems, Mobile code,Monitoring system security, Distributed Event CommunicationItem Scalable Transaction Management for Partially Replicated Data in Cloud Computing Environments(IEEE, 2016) Tripathi, Anand; Rajappan, GowthamWe present here a scalable protocol for transaction management in key-value based multi-version data storage systems supporting partial replication of data in cloud and cluster computing environments. We consider here systems in which the database is sharded into partitions, a partition is replicated only at a subset of the nodes in the system, and no node contains all partitions. The protocol presented here is based on the Partitioned Causal Snapshot Isolation (PCSI) model and it enhances the scalability of that model. The PCSI protocol is scalable for update transactions which involve updating of only local partitions. However, it faces scalability limitations when transactions update non-local partitions. This limitation stems from the scheme used for obtaining update timestamps for remote partitions, causing vector clocks to grow with the system configuration size. We present here a new protocol based on the notion of sequence number escrow and address the underlying technical problems. Our experimental evaluations show that this protocol scales out almost linearly when workloads involve transactions with remote partition updates. We present here the performance of this protocol for three different workloads with varying mix of transaction characteristics.Item Scalable Transaction Management with Serializable Snapshot Isolation on HBase(2012-02-16) Padhye, Vinit; Tripathi, AnandKey-value based data storage systems such as HBase and Bigtable provide high scalability and availability compared to traditional relational databases. However, unlike relational databases, the existing key-value stores provide only limited transactional functionality, such as single-row transactions. In this paper, we address the problem of building scalable transaction management mechanisms for multi-row ACID transactions on data storage systems such as HBase. To support scalability and availability, the transaction management functions are decoupled from the data storage system. Furthermore, our design does not depend on any central transaction management layer, instead these functions and the related recovery actions are performed in a decentralized and cooperative manner by the application level processes executing the transactions. Our protocol uses snapshot-isolation model as it provides more concurrency. Since the basic snapshot isolation model does not guarantee serializability, our protocol uses a technique based on identifying dependency cycles amongst transactions to avoid serialization anomalies. The protocol for supporting serializability is also performed in a decentralized manner. We demonstrate the scalability and robustness of our approach as well as the correctness of the protocol in ensuring serializable executions of transactions on HBase. We also present and evaluate an alternative approach based on a hybrid model where certain functions, such as conflict detection, are performed by a dedicated service.Item Scalable Transactions in Partially Replicated Data Systems with Causal Snapshot Isolation(2015-07-14) Tripathi, Anand; Rajappan, Gowtham; Padhye, VinitWe present here a transaction management protocol, which enhances the Partitioned Causal Snapshot Isolation (PCSI) pro- tocol, to support scalable transactions with non-local partition writes in a partially replicated multi-version database. The PCSI protocol is scalable for update transactions that involve local read and writes. However, it faces scalability limitations with non-local partition writes, when partitions are updated from any of the sites. In PCSI, to support non-local partition writes, a ghost replica of that partition is created at the transaction execution site. It is used primarily for assigning update sequence numbers to the local transactions and does not store any data. We present here an alternate approach for supporting non-local partition writes. The update sequence number for a non-local partition update is obtained from one of the remote sites that stores a replica of that partition. This approach raises several problems in regard to stalling of transactions at the remote replica’s site. We develop here a protocol based on the notion of sequence number escrow to address these problems. Through experimental evaluations, we show that this approach for supporting non-local partition updates scales almost linearly.Item Semantics Based Commutativity Analysis of Object Methods(2005-03-04) Eberhard, John; Tripathi, AnandTraditional analysis and usage of operation commutativity relies on pairwise commutativity relationships. In contrast, this paper presents method group commutativity, which specifies the conditions under which operations in a method group will commute. Method group commutativity can be practically applied to efficiently support distributed object caching and concurrency control. A formal definition of commutativity, in terms of Hoare logic expressions, guides the development of a methodology to create a method commutativity specification from an object's semantic specification. This methodology uses the PVS theorem prover for analysis and validation of commutativity properties. The use of formal methods, together with suitable tools, provides a more complete understanding of method commutativity relationships as compared to existing approaches. Our approach also provides a unified representation of both forward and backward commutativity properties. The methodology is also expanded to express weakened semantics in the method commutativity specification to enable greater commutativity.