Srivatsan Ravi

dblp:17/9098 · DBLP profile ↗
← Back
46ranked-venue papers
0as first author
28since 2021 · last 2026
0000-0002-2965-3940ORCID · conflict

Domains — the database's venue-derived domains; a paper can count in several

Security and privacy · 11 · 9 since 2021Systems, architecture and hardware · 10 · 4 since 2021Software engineering, systems software and programming languages · 8 · 4 since 2021Computer networks · 7 · 6 since 2021Artificial intelligence and machine learning · 5 · 5 since 2021Databases, data management, data science and information retrieval · 2 · 2 since 2021Theory of computation · 2 · 1 since 2021Applied, interdisciplinary, general and emerging computing · 2 · 2 since 2021
YearPublicationVenuePosition
2026 Multiverse: Transactional Memory with Dynamic Multiversioning
abstract
Software transactional memory (STM) allows programmers to easily implement concurrent data structures. STMs simplify atomicity. Recent STMs can achieve good performance for some workloads but they have some limitations. In particular, STMs typically cannot support long-running reads which access a large number of addresses that are frequently updated. Multiversioning is a common approach used to support this type of workload. However, multiversioning is often expensive and can reduce the performance of transactions where versioning is not necessary.
Gaetano Coccimiglio, Trevor Brown 0001, Srivatsan Ravi
PPoPP3
2026 Symbolic Analysis for Repairing Bugs in Concurrent Persistent-Memory Programs
Tooba Khan, Srivatsan Ravi, Chao Wang 0001
SANER2
2026 Adapting the Conflict-Based Search Framework for the Virtual Network Embedding Problem
Yi Zheng 0010, Erik Kline, Lincoln Thurlow, Srivatsan Ravi, Sven Koenig, T. K. Satish Kumar
J. Artif. Intell. Res.4
2026 Programming Scalable Elastic Services with AEON
abstract
Implementing distributed cloud-based applications commonly at the basis of user-facing services goes through several challenges. In particular, such applications must be scalable to accommodate increasingly large user bases, providing consistency on accesses to shared data while executing on highly distributed concurrent commodity hardware. In addition, as these applications are subject to workload fluctuations, they must be elastic , i.e., able to scale out to accommodate workload increases as well as to scale back in to avoid over-provisioning and thus unnecessarily high costs in case of workload decreases. This article presents AEON , a programming framework that supports the development of scalable elastic cloud-based distributed applications. In short, AEON leverages two synergistic “levels” of programming: I. An application programming language (APL) allows programmers to conceive scalable applications using the popular actor paradigm, augmented with an intuitive notion of event to capture non-interleaved executions across multiple actors as needed for non-trivial shared data, all the while avoiding error-prone manual concurrency control. That is, based on a simple type-based ownership analysis asserting that references in AEON applications follow a DAG-based referencing structure, events are executed efficiently in a serializable fashion leveraging a lightweight synchronization protocol which is also exploited for creating consistent snapshots of the distributed application’s shared data. II. An elasticity programming language (EPL) allows application managers to define policies for guiding efficient fine-grained automated scaling—in and out—of applications at runtime. While these policies refer to applications written with I, they only refer to high-level abstractions in those (e.g., types of actors and methods), are inversely not referred to by them, and avoid side-effects to minimize effects on application performance. After presenting our programming framework with its language design choices and runtime system implementation, we present a study applying it to several use cases, and evaluate its performance. In short, our application programming language (APL)’s synchronization model scales better than manual locking or the use of automated traditional two-phase locking with existing actor languages, or the use of an external transactional store; under workload fluctuations our elasticity programming language (EPL) allows programs to be executed with significantly improved performance without increased resource usage, or with similar performance but significantly fewer resources.
Patrick Eugster, Srivatsan Ravi, Bo Sang
ACM Trans. Comput. Syst.2
2025 Efficient Parallel Execution of Blockchain Transactions Leveraging Conflict Specifications
Parwat Singh Anjana, Matin Amini, Rohit Kapoor, Rahul Parmar, Raghavendra Ramesh, Srivatsan Ravi, Joshua Tobkin
AFT6
2025 Feasibility of Privacy-Preserving Entity Resolution on Confidential Healthcare Datasets Using Homomorphic Encryption
Yixiang Yao, Joseph Cecil, Praveen Angyan, Neil Bahroos, Srivatsan Ravi
IEEE Big Data5
2025 Guiding Likely Invariant Synthesis on Distributed Systems with Large Language Models
Yuan Xia, Aabha Shailesh Pingle, Deepayan Sur, Srivatsan Ravi, Mukund Raghothaman, Jyotirmoy V. Deshmukh
FMCAD4
2025 Efficient Privacy-Preserving Network Path Validation
abstract
Path validation in computer networks is used to enforce and verify data forwarding rules across network slices and administrative domains to satisfy specific service level requirements. Deviating from pre-established paths has the potential to downgrade network service quality, increase attack surface area, and disrupt network orchestration capabilities. Network operators regard the network infrastructure and topology as sensitive. This necessitates the need for privacy-preserving path validation techniques that leak minimal information about the overall network path to individual infrastructure owners. We present the design of a decentralized privacy-preserving path validation protocol using Non-Interactive Zero-Knowledge (NIZK) proofs to provide provable path privacy guarantees. The NIZK-based pairwise validation design identifies individual slice nodes that deviate from the prescribed path. Deploying this lightweight protocol periodically enables individual nodes to enforce and validate the network control path. We have implemented and evaluated our system on a testbed simulating a multi-authority network. Our results demonstrate the feasibility of preserving path privacy as well as the practicality of our proposed protocols for next-generation multi-authority sliced networks.
Weizhao Jin, Erik Kline, T. K. Satish Kumar, Lincoln Thurlow, Srivatsan Ravi
ICCCN5
2025 ZENITH: Towards A Formally Verified Highly-Available Control Plane
abstract
Today, large-scale software-defined networks use microservice-based controllers. Bugs in these controllers can reduce network availability by making the data plane state inconsistent with the high-level intent. To recover from such inconsistencies, modern controllers periodically reconcile the state of all the switches with the desired intent. However, periodic reconciliation limits the availability and performance of the network at scale. We introduce Zenith, a microservice-based controller that avoids inconsistencies by design rather than always relying on recovery mechanisms. We have formally verified Zenith's specifications and have proved that it ensures the network state will eventually be consistent with intent. We automatically generate Zenith's code from its specification to minimize the likelihood of errors in the final implementation. Zenith's guarantees and abstractions also enable developers to independently verify SDN applications and ensure end-to-end safety and correctness. Zenith resolves inconsistencies 5× faster than today's designs and significantly improves availability.
Pooria Namyar, Arvin Ghavidel, Mingyang Zhang 0005, Harsha V. Madhyastha, Srivatsan Ravi, Chao Wang 0001, Ramesh Govindan
SIGCOMM5
2025 Persistent HyTM via Fast Path Fine-Grained Locking
abstract
Utilizing hardware transactional memory (HTM) in conjunction with non-volatile memory (NVM) to achieve persistence is quite difficult and somewhat awkward due to the fact that the primitives utilized to write data to NVM will abort HTM transactions. We present several persistent hybrid transactional memory (HyTM) that, perhaps counterintuitively, utilize an HTM fast path primarily to read or acquire fine-grained locks which protect data items. Our implementations guarantee durable linearizable transactions and the STM path satisfies either weak progressiveness or strong progressiveness. We discuss the design choices related to the differing progress guarantees and we examine how these design choices impact performance. We evaluate our persistent HyTM implementations using various microbenchmarks. Despite the challenges and apparent awkwardness of using current implementations of HTM to achieve persistence, our implementations achieve up to 10x improved performance compared to the existing state of the art persistent STMs and up to 2.6x improved performance compared to the existing state of the art persistent HyTMs.
Gaetano Coccimiglio, Trevor Brown 0001, Srivatsan Ravi
SPAA3
2025 Block Transactional Memory: A Complexity Study
Parwat Singh Anjana, Srivatsan Ravi
SSS2
2025 Discovering Likely Invariants for Distributed Systems Through Runtime Monitoring and Learning
Yuan Xia, Deepayan Sur, Aabha Shailesh Pingle, Jyotirmoy V. Deshmukh, Mukund Raghothaman, Srivatsan Ravi
VMCAI (1)6
2024 Poster: Security and Privacy Heterogeneous Environment for Reproducible Experimentation (SPHERE)
abstract
To transform cybersecurity and privacy research into a highly integrated, community-wide effort, researchers need a common, rich, representative research infrastructure that meets the needs across all members of the research community, and facilitates reproducible science. USC Information Sciences Institute and Northeastern University are meeting researcher needs, and have been funded by the NSF mid-scale research infrastructure program to build Security and Privacy Heterogeneous Environment for Reproducible Experimentation (SPHERE). SPHERE research infrastructure will offer access to an unprecedented variety of user-configurable hardware, software, and network resources, it will offer six user portals geared toward different populations of users, and it will support reproducible research via a combination of infrastructure services and community engagement activities.
Jelena Mirkovic, David M. Balenson, Brian Kocoloski, Geoff Lawler, Chris Tran, Joseph Barnes, Yuri Pradkin, Terry V. Benzel, Srivatsan Ravi, Ganesh Sankaran, Alba Regalado, David R. Choffnes, Daniel J. Dubois, Luis Garcia 0001
CCS9
2024 Discovering Likely Program Invariants for Persistent Memory
abstract
We propose a method for automatically discovering likely program invariants for persistent memory (PM), which is a type of fast and byte-addressable storage device that can retain data after power loss. The invariants, also called PM properties or PM requirements, specify which objects of the program should be made persistent and in what order. Our method relies on a combination of static and dynamic analysis techniques. Specifically, it relies on static analysis to compute dependence relations between LOAD/STORE instructions and instruments the information into the executable program. Then, it relies on dynamic analysis of the execution traces and counterfactual reasoning to infer PM properties. With precisely computed dependence relations, the inferred properties are necessary conditions for the program to behave correctly through power loss and recovery; with imprecise dependence relations, these are likely program invariants. We have evaluated our method on benchmark programs including eight persistent data structures and two distributed storage applications, Redis and Memcached. The results show that our method can infer PM properties quickly and these properties are of higher quality than those inferred by a state-of-the-art technique. We also demonstrate the usefulness of the inferred properties by leveraging them for PM bug detection, which significantly improves the performance of a state-of-the-art PM bug detection technique.
Zunchen Huang, Srivatsan Ravi, Chao Wang 0001
ASE2
2024 Revisiting Nakamoto Consensus in Asynchronous Networks: A Comprehensive Analysis of Bitcoin Safety and Chain Quality
abstract
The Bitcoin blockchain safety relies on strong network synchrony. Therefore, violating the blockchain safety requires strong adversaries that control a mining pool with ≈51% hash rate. In this paper, we show that the network synchrony does not hold in the real world Bitcoin network which can be exploited to feasibly violate the blockchain safety and chain quality. Towards that, first we construct the Bitcoin ideal functionality to formally specify its ideal execution model in a synchronous network. We then develop a large-scale data collection system through which we connect with more than 103K IP addresses of the Bitcoin nodes and identify 871 mining nodes. We contrast the ideal functionality against the real world measurements to expose the network anomalies that can be exploited to optimize the existing attacks. Particularly, we observe a non-uniform block propagation pattern among the mining nodes showing that the Bitcoin network is asynchronous in practice. To realize the threat of an asynchronous network, we present the HashSplit attack that allows an adversary to orchestrate concurrent mining on multiple branches of the blockchain to violate common prefix and chain quality properties. We also propose the attack countermeasures by tweaking Bitcoin Core to model the Bitcoin ideal functionality. Our measurements, theoretical modeling, proposed attack, and countermeasures open new directions in the security evaluation of Bitcoin and similar blockchain systems.
Muhammad Saad 0001, Afsah Anwar, Srivatsan Ravi, David Mohaisen
IEEE/ACM Trans. Netw.3
2023 Improved Conflict-Based Search for the Virtual Network Embedding Problem
abstract
Virtualization is the mechanism of creating virtual representations of physical resources. It is now integrated into almost every facet of computing and is pervasive on the Internet: ranging from data center services and cloud computing services to services on our phones. The common goal for virtualization providers is to ensure that the physical resources are managed efficiently and effectively. This goal induces the Virtual Network Embedding (VNE) problem: the task of properly allocating the physical resources of a network to satisfy virtual requests for resources under various constraints while ensuring the quality of service and maximizing resource utilization. The VNE problem captures many resource allocation tasks arising in computer systems and computer networks. In this paper, we present Improved VNE-CBS (iVNE-CBS) as an efficient and effective algorithm for solving the VNE problem. iVNE-CBS builds on Conflict-Based Search (CBS), a heuristic search framework borrowed from the Multi-Agent Path Finding literature. We show that iVNECBS significantly outperforms popular baseline VNE algorithms: it scales to networks with several hundreds of vertices and thousands of edges, while also producing better-quality solutions.
Yi Zheng 0010, Srivatsan Ravi, Erik Kline, Lincoln Thurlow, Sven Koenig, T. K. Satish Kumar
ICCCN2
2023 FedGCN: Convergence-Communication Tradeoffs in Federated Training of Graph Convolutional Networks
abstract
Methods for training models on graphs distributed across multiple clients have recently grown in popularity, due to the size of these graphs as well as regulations on keeping data where it is generated. However, the cross-client edges naturally exist among clients. Thus, distributed methods for training a model on a single graph incur either significant communication overhead between clients or a loss of available information to the training. We introduce the Federated Graph Convolutional Network (FedGCN) algorithm, which uses federated learning to train GCN models for semi-supervised node classification with fast convergence and little communication. Compared to prior methods that require extra communication among clients at each training round, FedGCN clients only communicate with the central server in one pre-training step, greatly reducing communication costs and allowing the use of homomorphic encryption to further enhance privacy. We theoretically analyze the tradeoff between FedGCN's convergence rate and communication cost under different data distributions. Experimental results show that our FedGCN algorithm achieves better model accuracy with 51.7\% faster convergence on average and at least 100$\times$ less communication compared to prior work.
Yuhang Yao 0003, Weizhao Jin, Srivatsan Ravi, Carlee Joe-Wong
NeurIPS3
2023 Street Rep: A Privacy-Preserving Reputation Aggregation System
Christophe Hauser, Shirin Nilizadeh, Yan Shoshitaishvili, Ni Trieu, Srivatsan Ravi, Christopher Krügel, Giovanni Vigna
SecureComm (2)5
2023 The Fence Complexity of Persistent Sets
Gaetano Coccimiglio, Trevor Brown 0001, Srivatsan Ravi
SSS3
2023 Secure and Reliable Network Updates
abstract
Software-defined wide area networking (SD-WAN) enables dynamic network policy control over a large distributed network via network updates . To be practical, network updates must be consistent (i.e., free of transient errors caused by updates to multiple switches), secure (i.e., only be executed when sent from valid controllers), and reliable (i.e., function despite the presence of faulty or malicious members in the control plane), while imposing only minimal overhead on controllers and switches. We present SERENE: a protocol for se cure and re liable ne twork updates for SD-WAN environments. In short: Consistency is provided through the combination of an update scheduler and a distributed transactional protocol. Security is preserved by authenticating network events and updates, the latter with an adaptive threshold cryptographic scheme. Reliability is provided by replicating the control plane and making it resilient to a dynamic adversary by using a distributed ledger as a controller failure detector. We ensure practicality by providing a mechanism for scalability through the definition of independent network domains and exploiting the parallelism of network updates both within and across domains. We formally define SERENE’s protocol and prove its safety with regards to event-linearizability. Extensive experiments show that SERENE imposes minimal switch burden and scales to large networks running multiple network applications all requiring concurrent network updates, imposing at worst a 16% overhead on short-lived flow completion and negligible overhead on anticipated normal workloads.
James Lembke, Srivatsan Ravi, Pierre-Louis Roman, Patrick Eugster
ACM Trans. Priv. Secur.2
2022 The FastMap Pipeline for Facility Location Problems
Omkar Thakoor, Sven Koenig, Srivatsan Ravi, Erik Kline, T. K. Satish Kumar
PRIMA4
2022 PREP-UC: A Practical Replicated Persistent Universal Construction
abstract
The process of designing and implementing correct concurrent data structures is non-trivial and often error prone. The recent commercial availability of non-volatile memory has prompted many researchers to also consider designing concurrent data structures that persist shared state allowing the data structure to be recovered following a power failure. These so called persistent concurrent data structures further complicate the process of achieving correct and efficient implementations. Universal constructions (UCs) which produce a concurrent object given a sequential object, have been studied extensively in the space of volatile shared memory as a means of more easily implementing correct concurrent data structures. In contrast, there are only a handful of persistent universal constructions (PUCs) which beyond producing a concurrent object from a sequential object, guarantees that the object can be recovered following a crash. Existing PUCs satisfy the correctness condition of durable linearizability which requires that operations are persisted before they complete. Satisfying the weaker correctness condition of buffered durable linearizability allows for improved performance at the cost of failing to recover some completed operations following a crash. In this work we design and implement both a buffered durable linearizable and a durable linearizable PUC based on the node replication UC. We demonstrate that we can achieve significantly better performance satisfying buffered durable linearizability while also restricting the maximum number of operations that can be lost after a crash.
Gaetano Coccimiglio, Trevor Brown 0001, Srivatsan Ravi
SPAA3
2022 Secure Publish-Process-Subscribe System for Dispersed Computing
abstract
Publish-subscribe protocols enable real-time multi-point-to-multi-point communications for many dispersed computing systems like Internet of Things (IoT) applications. Recent interest has focused on adding processing to such publish-subscribe protocols to enable computation over real-time streams such that the protocols can provide functionalities such as sensor fusion, compression, and other statistical analysis on raw sensor data. However, unlike pure publish-subscribe protocols, which can be easily deployed with end-to-end transport layer encryption, it is challenging to ensure security in such publish-process-subscribe protocols when the processing is carried out on an untrusted third party. In this work, we present$\mathcal{XYZ}$, a secure publish-process-subscribe system that can preserve the confidentiality of computations and support multi-publisher-multi-subscriber settings. Within$\mathcal{XYZ}$, we design two distinct schemes: the first using Yao's garbled circuits (the GC-Based Scheme) and the second using homomorphic encryption with proxy re-encryption (the Proxy-HE Scheme). We build implementations of the two schemes as an integrated publish-process-subscribe system. We evaluate our system on several functions and also demonstrate real-world applications. The evaluation shows that the GC-Based Scheme can finish most tasks two orders of magnitude times faster than the Proxy-HE Scheme while Proxy-HE can still securely complete tasks within an acceptable time for most functions but with a different security assumption and a simpler system structure.
Weizhao Jin, Bhaskar Krishnamachari, Muhammad Naveed 0001, Srivatsan Ravi, Eduard Sanou, Kwame-Lante Wright
SRDS4
2022 The Limits of Helping in Non-volatile Memory Data Structures
Ohad Ben-Baruch, Srivatsan Ravi
SSS2
2022 Decentralized Privacy-Preserving Path Validation for Multi-Slicing-Authority 5G Networks
abstract
Path validation assures operational integrity in 5G networks with various network infrastructures where nodes en route are operated by multiple untrusted network slicing authorities. However, in order to correctly validate a path, traditional solutions require the entire path to be revealed to all parties involved, which may potentially expose the network structure to malicious attackers. In this work, we propose a decentralized privacy-preserving path validation protocol utilizing XOR, hashing and Non-interactive zero-knowledge proof (NIZK) that guarantees security and privacy but circumvents performance compromise. We tested our protocols in a simulated multi-authority network to show how the privacy-preserving path validation can protect node privacy without significantly degrading performance.
Weizhao Jin, Srivatsan Ravi, Erik Kline
WCNC2
2022 Securing 5G Slices using Homomorphic Encryption
abstract
Network slicing is a powerful tool that provides 5G and future networks a robust means for managing cross-application QoS, dynamic traffic migration in response to network events, and in-network data aggregation and computation. Unfortunately, slicing inherits many of the security challenges of cloud and edge computing such as side-channel information leakage, while also encountering new challenges posed by multi-domain authorization and quantum computing. Many extant mechanisms, such as PKI, are insufficient in the face of quantum computers, and existing side-channel mitigations impose heavy overhead costs while only providing defense against known attacks. In this paper, we describe a novel approach to protecting slice control information through the use of Homomorphic Encryption (HE). HE allows quantum-resilient validation and distribution of critical information, while also enabling hierarchical control across multiple domains and providing encrypted computation. Further, threshold HE enables secure decryption and computation of control or measurement information, while protecting the entire slice against potential key-leakage by rendering any one key useless without the required quorum. The benchmark results shown demonstrate that the HE mechanisms used can be deployed in a practical manner, providing stalwart security guarantees against a variety of threats.
Erik Kline, Srivatsan Ravi, David Cousins, Sara Rv
WCNC2
2021 Revisiting Nakamoto Consensus in Asynchronous Networks: A Comprehensive Analysis of Bitcoin Safety and ChainQuality
abstract
The Bitcoin blockchain safety relies on strong network synchrony. Therefore, violating the blockchain safety requires strong adversaries that control a mining pool with 51% hash rate. In this paper, we show that the network synchrony does not hold in the real world Bitcoin network which can be exploited to lower the cost of various attacks that violate the blockchain safety and chain quality. Towards that, first we construct the Bitcoin ideal functionality to formally specify its ideal execution model in a synchronous network. We then develop a large-scale data collection system through which we connect with more than 36K IP addresses of the Bitcoin nodes and identify 359 mining nodes. We contrast the ideal functionality against the real world measurements to expose the network anomalies that can be exploited to optimize the existing attacks. Particularly, we observe a non-uniform block propagation pattern among the mining nodes showing that the Bitcoin network is asynchronous in practice.
Muhammad Saad 0001, Afsah Anwar, Srivatsan Ravi, David Mohaisen
CCS3
2021 AMPPERE: A Universal Abstract Machine for Privacy-Preserving Entity Resolution Evaluation
abstract
Entity resolution is the task of identifying records in different datasets that refer to the same entity in the real world. In sensitive domains (e.g. financial accounts, hospital health records), entity resolution must meet privacy requirements to avoid revealing sensitive information such as personal identifiable information to untrusted parties. Existing solutions are either too algorithmically-specific or come with an implicit trade-off between accuracy of the computation, privacy, and run-time efficiency. We propose AMMPERE, an abstract computation model for performing universal privacy-preserving entity resolution. AMMPERE offers abstractions that encapsulate multiple algorithmic and platform-agnostic approaches using variants of Jaccard similarity to perform private data matching and entity resolution. Specifically, we show that two parties can perform entity resolution over their data, without leaking sensitive information. We rigorously compare and analyze the feasibility, performance overhead and privacy-preserving properties of these approaches on the Sharemind multi-party computation (MPC) platform as well as on PALISADE, a lattice-based homomorphic encryption library. The AMMPERE system demonstrates the efficacy of privacy-preserving entity resolution for real-world data while providing a precise characterization of the induced cost of preventing information leakage.
Yixiang Yao, Tanmay Ghai, Srivatsan Ravi, Pedro A. Szekely
CIKM3
2020 PLASMA: programmable elasticity for stateful cloud computing applications
abstract
Developers are always on the lookout for simple solutions to manage their applications on cloud platforms. Major cloud providers have already been offering automatic elasticity management solutions (e.g., AWS Lambda, Azure durable function) to users. However, many cloud applications are stateful --- while executing, functions need to share their state with others. Providing elasticity for such stateful functions is much more challenging, as a deployment/elasticity decision for a stateful entity can strongly affect others in ways which are hard to predict without any application knowledge. Existing solutions either only support stateless applications (e.g., AWS Lambda) or only provide limited elasticity management (e.g., Azure durable function) to stateful applications.
Bo Sang, Pierre-Louis Roman, Patrick Eugster, Hui Lu 0001, Srivatsan Ravi, Gustavo Petri
EuroSys5
2020 Consistent and Secure Network Updates Made Practical
abstract
Software-defined wide area networking (SD-WAN) enables dynamic network policy control over a large distributed network via network updates. To be practical, network updates must be both consistent, i.e., free of transient errors caused by updates to multiple switches, and secure, i.e., free of errors caused by faulty or malicious members of the control plane. Besides, these properties must incur minimal overhead to controllers and switches.
James Lembke, Srivatsan Ravi, Pierre-Louis Roman, Patrick Eugster
Middleware2
2020 RoSCo: Robust Updates for Software-Defined Networks
abstract
In manySoftware-Defined Networking(SDN) deployments the control plane ends up beingactuallycentralized, yielding a single point of failure and attack. This paper models the interaction between the data plane and adistributedcontrol plane consisting of a set of failure-prone and potentially malicious (compromised) control devices, and implements a secure and robust controller platform that allows network administrators to integrate new network functionality as with a centralized approach. Concretely, the network administrator may program the data plane from the perspective of a centralized controller without worrying about distribution, asynchrony, failures, attacks, or coordination problems that any of these could cause. We introduce a formal SDN computation model for applying network policies and show that it isimpossibleto implementasynchronous non-blockingand strongly consistent SDN controller platforms in that model. We then present arobustSDNcontroller protocol (RoSCo) which implements (i) a protocol with provablylinearizable semanticsfor applying network policies that is resilient against faulty/malicious control devices as long as acorrect majorityexists, and (ii) a modification to the protocol that improves performance by relaxing the guarantees of linearizability to exploit commutativity among updates. Extensive experiments conducted with a functional prototype of RoSCo over a large networked infrastructure supporting Open vSwitch (OVS)-compatible Agilio CX™ SmartNIC hardware show that RoSCo induces bearable overhead. In fact, RoSCo achieves higher throughput in most cases investigated than the seminal Ravana platform which addresses only benign (crash) failures.
James Lembke, Srivatsan Ravi, Patrick Eugster, Stefan Schmid 0001
IEEE J. Sel. Areas Commun.2
2020 Scalable and serializable networked multi-actor programming
abstract
A major challenge in writing applications that execute across hosts, such as distributed online services, is to reconcile (a) parallelism (i.e., allowing components to execute independently on disjoint tasks), and (b)cooperation (i.e., allowing components to work together on common tasks). A good compromise between the two is vital to scalability, a core concern in distributed networked applications. The actor model of computation is a widely promoted programming model for distributed applications, as actors can execute in individual threads (parallelism) across different hosts and interact via asynchronous message passing (collaboration). However, this makes it hard for programmers to reason about combinations of messages as opposed to individual messages, which is essential in many scenarios. This paper presents a pragmatic variant of the actor model in which messages can be grouped into units that are executed in a serializable manner, whilst still retaining a high degree of parallelism. In short, our model is based on an orchestration of actors along a directed acyclic graph that supports efficient decentralized synchronization among actors based on their actual interaction. We present the implementation of this model, based on a dynamic DAG-inducing referencing discipline, in the actor-based programming language AEON. We argue serializability and the absence of deadlocks in our model, and demonstrate its scalability and usability through extensive evaluation and case studies of wide-ranging applications.
Bo Sang, Patrick Eugster, Gustavo Petri, Srivatsan Ravi, Pierre-Louis Roman
Proc. ACM Program. Lang.4
2018 Inherent limitations of hybrid transactional memory
Dan Alistarh, Justin Kopinsky, Petr Kuznetsov, Srivatsan Ravi, Nir Shavit
Distributed Comput.4
2017 Concurrency and Privacy with Payment-Channel Networks
abstract
Permissionless blockchains protocols such as Bitcoin are inherently limited in transaction throughput and latency. Current efforts to address this key issue focus on off-chain payment channels that can be combined in a Payment-Channel Network (PCN) to enable an unlimited number of payments without requiring to access the blockchain other than to register the initial and final capacity of each channel. While this approach paves the way for low latency and high throughput of payments, its deployment in practice raises several privacy concerns as well as technical challenges related to the inherently concurrent nature of payments that have not been sufficiently studied so far. In this work, we lay the foundations for privacy and concurrency in PCNs, presenting a formal definition in the Universal Composability framework as well as practical and provably secure solutions. In particular, we present Fulgor and Rayo. Fulgor is the first payment protocol for PCNs that provides provable privacy guarantees for PCNs and is fully compatible with the Bitcoin scripting system. However, Fulgor is a blocking protocol and therefore prone to deadlocks of concurrent payments as in currently available PCNs. Instead, Rayo is the first protocol for PCNs that enforces non-blocking progress (i.e., at least one of the concurrent payments terminates). We show through a new impossibility result that non-blocking progress necessarily comes at the cost of weaker privacy. At the core of Fulgor and Rayo is Multi-Hop HTLC, a new smart contract, compatible with the Bitcoin scripting system, that provides conditional payments while reducing running time and communication overhead with respect to previous approaches. Our performance evaluation of Fulgor and Rayo shows that a payment with 10 intermediate users takes as few as 5 seconds, thereby demonstrating their feasibility to be deployed in practice.
Giulio Malavolta, Pedro Moreno-Sanchez, Aniket Kate, Matteo Maffei, Srivatsan Ravi
CCS5
2017 A Concurrency-Optimal Binary Search Tree
Vitaly Aksenov, Vincent Gramoli, Petr Kuznetsov, Anna Malova, Srivatsan Ravi
Euro-Par5
2017 Programmable Elasticity for Actor-based Cloud Applications
abstract
The actor model is a popular paradigm for programming scalable cloud applications. Building elastic and scalable cloud applications requires application developers to carefully adjust the application scale (the required resources) and the placement of actors at the runtime. Unfortunately, there is no efficient solution which could manage application elasticity automatically during runtime without disrupting ongoing requests. This paper proposes the idea of programmable elasticity approach, which allows application developers to define a set of elasticity rules for different actors. The runtime service endeavors to apply the elasticity rules while relieving the application programmer from dealing with the management of distributed state and efficient utilization of cloud resources.
Bo Sang, Srivatsan Ravi, Gustavo Petri, Mahsa Najafzadeh, Masoud Saeida Ardekani, Patrick Eugster
PLOS@SOSP2
2017 Generalized Paxos Made Byzantine (and Less Complex)
Miguel Pires, Srivatsan Ravi, Rodrigo Rodrigues 0001
SSS2
2017 Cost of Concurrency in Hybrid Transactional Memory
Trevor Brown 0001, Srivatsan Ravi
DISC2
2017 Grasping the gap between blocking and non-blocking transactional memories
Petr Kuznetsov, Srivatsan Ravi
J. Parallel Distributed Comput.2
2016 Programming Scalable Cloud Services with AEON
Bo Sang, Gustavo Petri, Masoud Saeida Ardekani, Srivatsan Ravi, Patrick Eugster
Middleware4
2016 In the Search for Optimal Concurrency
Vincent Gramoli, Petr Kuznetsov, Srivatsan Ravi
SIROCCO3
2015 Inherent Limitations of Hybrid Transactional Memory
Dan Alistarh, Justin Kopinsky, Petr Kuznetsov, Srivatsan Ravi, Nir Shavit
DISC4
2015 Grasping the Gap Between Blocking and Non-Blocking Transactional Memories
Petr Kuznetsov, Srivatsan Ravi
DISC2
2013 Safety of Deferred Update in Transactional Memory
abstract
Transactional memory allows the user to declare sequences of instructions as speculative transactions that can either commit or abort. If a transaction commits, it appears to be executed sequentially, so that the committed transactions constitute a correct sequential execution. If a transaction aborts, none of its instructions can affect other transactions. The popular criterion of opacity requires that the views of aborted transactions must also be consistent with the global sequential order constituted by committed ones. This is believed to be important, since inconsistencies observed by an aborted transaction may cause a fatal irrecoverable error or waste of the system in an infinite loop. Intuitively, an opaque implementation must ensure that no intermediate view a transaction obtains before it commits or aborts can be affected by a transaction that has not started committing yet, so called deferred-update semantics. In this paper, we intend to grasp this intuition formally. We propose a variant of opacity that explicitly requires the sequential order to respect the deferred-update semantics. Unlike opacity, our property also ensures that a serialization of a history implies serializations of its prefixes. Finally, we show that our property is equivalent to opacity if we assume that no two transactions commit identical values on the same variable, and present a counter-example for scenarios when the “unique-write” assumption does not hold.
Hagit Attiya, Sandeep Hans, Petr Kuznetsov, Srivatsan Ravi
ICDCS4
2012 Brief announcement: From sequential to concurrent: correctness and relative efficiency
abstract
No abstract available.
Vincent Gramoli, Petr Kuznetsov, Srivatsan Ravi
PODC3
2011 On the Cost of Concurrency in Transactional Memory
Petr Kuznetsov, Srivatsan Ravi
OPODIS2