Demonstration venue · read-only. Every page can be browsed; the buttons that would change it are switched off. Create an account to run TaxoReview on your own data. A simulation from public publication records: the people listed were not invited and did not agree to review.
? Tutorial for this page

Keith Marzullo

dblp:m/KMarzullo · DBLP profile ↗
← Back
63ranked-venue papers
6as first author
2since 2021 · last 2023
—ORCID · none

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

Systems, architecture and hardware · 36 · 5 first-authorSecurity and privacy · 11Software engineering, systems software and programming languages · 5Computer networks · 3Human-computer interaction and ubiquitous computing · 3 · 1 since 2021Artificial intelligence and machine learning · 1 · 1 since 2021Theory of computation · 1Applied, interdisciplinary, general and emerging computing · 1

Expertise — from the expertise taxonomy: the topics of the expert's papers under the CCF categories. A weight counts papers with recency: 1 for a paper about the topic, 0.3 when the topic is its context, halved every five years.

Human-computer interaction and pervasive computing
3 papers
Health and well-being technologies · 50% Human-robot interaction · 18% Accessibility and assistive technology · 18%
Computer architecture, parallel and distributed computing, and storage systems
16 papers
Distributed systems · 70% Cloud and datacenter computing · 23% High-performance computing · 3%
Computer networks
7 papers
Datacenter networks · 29% Network management and operations · 27% Network performance modeling · 14%
Network and information security
4 papers
Network security · 69% Digital forensics and information hiding · 15% Malware analysis · 15%

Topics — the 30 heaviest of 60, each with the papers that count most for it

TopicWeightPapersLastEvidence papers
Health and well-being technologies › mental health technology
emotion regulation
1.022022
FAR: End-to-End Vibrotactile Distributed System Designed to Facilitate Affect Regulation in Children Diagnosed with Autism Spectrum Disorder Through Slow Breathing · CHI 2022
Evaluating a Personalizable, Inconspicuous Vibrotactile(PIV) Breathing Pacer for In-the-Moment Affect Regulation · CHI 2020
Distributed systems
fault tolerance
0.6122017
Local Recovery for High Availability in Strongly Consistent Cloud Services · IEEE Trans. Dependable Secur. Comput. 2017
Practical and low-overhead masking of failures of TCP-based servers · ACM Trans. Comput. Syst. 2009
Mencius: Building Efficient Replicated State Machine for WANs · OSDI 2008
Accessibility and assistive technology
assistive technology
0.612022
FAR: End-to-End Vibrotactile Distributed System Designed to Facilitate Affect Regulation in Children Diagnosed with Autism Spectrum Disorder Through Slow Breathing · CHI 2022
Human-robot interaction › assistive robotics › socially assistive robotics
autism spectrum disorder
0.612022
FAR: End-to-End Vibrotactile Distributed System Designed to Facilitate Affect Regulation in Children Diagnosed with Autism Spectrum Disorder Through Slow Breathing · CHI 2022
Health and well-being technologies › mental health technology
anxiety regulation
0.622020
Evaluating a Personalizable, Inconspicuous Vibrotactile(PIV) Breathing Pacer for In-the-Moment Affect Regulation · CHI 2020
PIV: Placement, Pattern, and Personalization of an Inconspicuous Vibrotactile Breathing Pacer · ACM Trans. Comput. Hum. Interact. 2020
Distributed systems
replication
0.542017
Local Recovery for High Availability in Strongly Consistent Cloud Services · IEEE Trans. Dependable Secur. Comput. 2017
Practical and low-overhead masking of failures of TCP-based servers · ACM Trans. Comput. Syst. 2009
Replicating Nondeterministic Services on Grid Environments · HPDC 2006
Cloud and datacenter computing › quality of service
cloud service availability
0.312017
Local Recovery for High Availability in Strongly Consistent Cloud Services · IEEE Trans. Dependable Secur. Comput. 2017
Cloud and datacenter computing
cloud storage
0.312017
Local Recovery for High Availability in Strongly Consistent Cloud Services · IEEE Trans. Dependable Secur. Comput. 2017
Network security › intrusion detection and prevention
intrusion detection
0.222009
Detecting Malicious Packet Losses · IEEE Trans. Parallel Distributed Syst. 2009
Analysis of Computer Intrusions Using Sequences of Function Calls · IEEE Trans. Dependable Secur. Comput. 2007
Network performance modeling › stability analysis
convergence time
0.212013
Aspen trees: balancing data center fault tolerance, scalability and cost · CoNEXT 2013
Datacenter networks
data center network topology
0.212013
Aspen trees: balancing data center fault tolerance, scalability and cost · CoNEXT 2013
Network management and operations
failure recovery
0.212013
Aspen trees: balancing data center fault tolerance, scalability and cost · CoNEXT 2013
Datacenter networks › data center network topology
fat-tree
0.212013
Aspen trees: balancing data center fault tolerance, scalability and cost · CoNEXT 2013
Distributed systems
consensus
0.122008
Mencius: Building Efficient Replicated State Machine for WANs · OSDI 2008
Replicating Nondeterministic Services on Grid Environments · HPDC 2006
Distributed systems › fault tolerance
message logging
0.132009
Practical and low-overhead masking of failures of TCP-based servers · ACM Trans. Comput. Syst. 2009
Message Logging: Pessimistic, Optimistic, Causal, and Optimal · IEEE Trans. Software Eng. 1998
Trade-Offs in Implementing Optimal Message Logging Protocols · PODC 1996
Distributed systems › replication
primary-backup replication
0.122009
Practical and low-overhead masking of failures of TCP-based servers · ACM Trans. Comput. Syst. 2009
Comparing Primary-Backup and State Machines for Crash Failures (Abstract) · PODC 1996
Network security › routing security
malicious router detection
0.122006
Detecting and Isolating Malicious Routers · IEEE Trans. Dependable Secur. Comput. 2006
Brief announcement: detecting malicious routers · PODC 2004
Distributed systems › replication
state machine replication
0.122008
Mencius: Building Efficient Replicated State Machine for WANs · OSDI 2008
Comparing Primary-Backup and State Machines for Crash Failures (Abstract) · PODC 1996
Network management and operations › fault management
fault diagnosis
0.112009
Detecting Malicious Packet Losses · IEEE Trans. Parallel Distributed Syst. 2009
Distributed systems › fault tolerance
failure recovery
0.112017
Local Recovery for High Availability in Strongly Consistent Cloud Services · IEEE Trans. Dependable Secur. Comput. 2017
High-performance computing › fault tolerance at scale
local recovery
0.112017
Local Recovery for High Availability in Strongly Consistent Cloud Services · IEEE Trans. Dependable Secur. Comput. 2017
Routing and switching › multipath routing
path diversity
0.122003
Characterizing and measuring path diversity of internet topologies · SIGMETRICS 2003
In search of path diversity in ISP networks · Internet Measurement Conference 2003
Distributed systems › replication › geo-replication
wide-area replication
0.112008
Mencius: Building Efficient Replicated State Machine for WANs · OSDI 2008
Malware analysis › malware behavior analysis
API call sequence analysis
0.112007
Analysis of Computer Intrusions Using Sequences of Function Calls · IEEE Trans. Dependable Secur. Comput. 2007
Digital forensics and information hiding
digital forensics
0.112007
Analysis of Computer Intrusions Using Sequences of Function Calls · IEEE Trans. Dependable Secur. Comput. 2007
Cloud and datacenter computing
cluster resource management and scheduling
0.112006
Multiple Job Scheduling in a Connection-Limited Data Parallel System · IEEE Trans. Parallel Distributed Syst. 2006
Cloud and datacenter computing
job scheduling
0.112006
Multiple Job Scheduling in a Connection-Limited Data Parallel System · IEEE Trans. Parallel Distributed Syst. 2006
Distributed systems › distributed scheduling
master-worker paradigm
0.112006
Multiple Job Scheduling in a Connection-Limited Data Parallel System · IEEE Trans. Parallel Distributed Syst. 2006
Parallel and multicore computing
parallel programming models
0.112006
Multiple Job Scheduling in a Connection-Limited Data Parallel System · IEEE Trans. Parallel Distributed Syst. 2006
Distributed systems › consensus
paxos
0.112006
Replicating Nondeterministic Services on Grid Environments · HPDC 2006

Methods — techniques the papers use, named apart from their topics

usability testing · 0.6system design · 0.6skin conductance · 0.4psychophysiological measures · 0.4mixed-design study · 0.4prototype implementation · 0.4hierarchical architecture · 0.3simulation · 0.2traffic rate measurement · 0.2buffer size inference · 0.2topology design · 0.2primary-backup replication · 0.2protocol design · 0.1message logging · 0.1TCP connection migration · 0.1sequence analysis · 0.1anomaly detection · 0.1paxos protocol · 0.1
YearPublicationVenuePosition
2023 Challenges in Evaluating Technological Interventions for Affect Regulation
abstract
We evaluated whether a vibrotactile breathing pacer would influence two measures of affect during a cognitive stressor. In particular, we examined whether changes in breathing would be evident, and if so, whether these would mediate the effects of breathing pacer on self-report anxiety and skin conductance. Our results were surprising: although we observed the expected effects on breathing, we were unable to demonstrate that changes in breathing parameters were responsible for the observed changes in self-report anxiety. In addition, we failed to show that the pacer had an impact on skin conductance. In this paper, we investigate why we did not observe the expected effects. We believe our negative results have implications for evaluating technological interventions for affect regulation.
Pardis Miri, Horia Margarit, Andero Uusberg, Keith Marzullo, Tali M. Ball, Dan Yamins, Robert Flory, James J. Gross
IEEE Trans. Affect. Comput.4
2022 FAR: End-to-End Vibrotactile Distributed System Designed to Facilitate Affect Regulation in Children Diagnosed with Autism Spectrum Disorder Through Slow Breathing
abstract
To address difficulties with affect dysregulation in youth diagnosed with autism spectrum disorder (ASD), we designed and developed an end-to-end vibrotactile breathing pacer system and evaluated its usability. In this paper we describe the system architecture and the features we deployed for this system based on expert advice and reviews. Through piloting this system with one child diagnosed with ASD, we learned that our system was used in ways we did and did not anticipate. For example, the paced-breathing personalization procedure did not meet the attention span of the pilot participant but two instead of one pacer devices encouraged caregiver’s involvement. This paper details our learnings and concludes with a list of system design guidelines at the system architecture level. To the best of our knowledge, this is the first fully functional vibrotactile system designed for ASD children that withstood usability testing in vitro for two weeks.
Pardis Miri, Mehul Arora, Aman Malhotra, Robert Flory, Stephanie Hu, Ashley Lowber, Ishan Goyal, Jacqueline Nguyen, John P. Hegarty, Marlo D. Kohn, Heather Culbertson, Dan Yamins, Lawrence Fung, Antonio Hardan, James J. Gross, Keith Marzullo
CHI17
2020 Evaluating a Personalizable, Inconspicuous Vibrotactile(PIV) Breathing Pacer for In-the-Moment Affect Regulation
abstract
Given the prevalence and adverse impact of anxiety, there is considerable interest in using technology to regulate anxiety. Evaluating the efficacy of such technology in terms of both the average effect (the intervention efficacy) and the heterogeneous effect (for whom and in what context the intervention was effective) is of paramount importance. In this paper, we demonstrate the efficacy of PIV, a personalized breathing pacer, in reducing anxiety in the presence of a cognitive stressor. We also quantify the relation between our specific stressor and PIV-user engagement. To our knowledge, this is the first mixed-design study of a vibrotactile affect regulation technology which accounts for a specific stressor and for individual differences in relation to the technology's efficacy. Guidelines in this paper can be applied for designing and evaluating other affect regulation technologies.
Pardis Miri, Emily Jusuf, Andero Uusberg, Horia Margarit, Robert Flory, Katherine Isbister, Keith Marzullo, James J. Gross
CHI7
2020 PIV: Placement, Pattern, and Personalization of an Inconspicuous Vibrotactile Breathing Pacer
abstract
We describe the design and evaluation of PIV, a personalizable and inconspicuous vibrotactile breathing pacer. Given the prevalence and adverse impact of anxiety and anxiety disorders, our goal is to develop a technology that helps people regulate their anxiety through paced breathing. We examined two previously unstudied questions: What is an effective vibrotactile pattern for paced breathing, and where should the tactors be placed on the body to make the pacer most effective? We designed a series of personalized vibrotactile pacing patterns, and evaluated them on three body sites, in terms of self-reported and psychophysiological measures including skin conductance and breath wave parameters. The results show that personalization plays an important role in PIV’s pattern and placement design choices. We concluded that the choice of frequency based, strong-exhale-phased patterns and abdomen placement are appropriate for future studies.
Pardis Miri, Robert Flory, Andero Uusberg, Heather Culbertson, Richard H. Harvey, Agata Kelman, Davis Erik Peper, James J. Gross, Katherine Isbister, Keith Marzullo
ACM Trans. Comput. Hum. Interact.10
2017 Local Recovery for High Availability in Strongly Consistent Cloud Services
abstract
Emerging cloud-based network services must deliver both good performance and high availability. Achieving both of these goals requires content replication across multiple sites. Many cloud-based services either require or would benefit from the semantics and simplicity of strong consistency. However, replication techniques for strong consistency can severely limit the availability of replicated services when recovering large data objects over wide-area links. To address this problem, we present the design and implementation of ZORFU, a hierarchical system architecture for replication across data centers. The primary contribution of ZORFU is a local recovery technique that significantly increases availability of replicated strongly consistent services. Local recovery achieves this by reducing the recovery time by an order of magnitude, while imposing only a negligible latency overhead. Experimental results show that ZORFU can recover a 100 MB object in 4 ms.
James W. Anderson, Hein Meling, Alexander Rasmussen, Amin Vahdat, Keith Marzullo
IEEE Trans. Dependable Secur. Comput.5
2013 Aspen trees: balancing data center fault tolerance, scalability and cost
abstract
Fault recovery is a key issue in modern data centers. In a fat tree topology, a single link failure can disconnect a set of end hosts from the rest of the network until updated routing information is disseminated to every switch in the topology. The time for re-convergence can be substantial, leaving hosts disconnected for long periods of time and significantly reducing the overall availability of the data center. Moreover, the message overhead of sending updated routing information to the entire topology may be unacceptable at scale. We present techniques to modify hierarchical data center topologies to enable switches to react to failures locally, thus reducing both the convergence time and control overhead of failure recovery. We find that for a given network size, decreasing a topology's convergence time results in a proportional decrease to its scalability (e.g. the number of hosts supported). On the other hand, reducing convergence time without affecting scalability necessitates the introduction of additional switches and links. We explore the tradeoffs between fault tolerance, scalability and network size, and propose a range of modified multi-rooted tree topologies that provide significantly reduced convergence time while retaining most of the traditional fat tree's desirable properties.
Meg Walraed-Sullivan, Amin Vahdat, Keith Marzullo
CoNEXT3
2012 When You Don't Trust Clients: Byzantine Proposer Fast Paxos
abstract
We derive a consensus protocol for a hybrid failure model. In this model, clients are Byzantine faulty and servers are crash faulty. We argue that this model is well suited to environments where the servers run within one administrative domain, and the clients run outside of this domain. Our consensus protocol, which is derived from crash Paxos, provides low latency for client requests, tolerates any number of (Byzantine) faulty clients, up to 1/3 (crash) faulty servers, and does not rely on computing costly signatures in the common case. It can be used to build state machine replication that provides a highly available service.
Hein Meling, Keith Marzullo, Alessandro Mei
ICDCS2
2011 ALIAS: scalable, decentralized label assignment for data centers
abstract
Modern data centers can consist of hundreds of thousands of servers and millions of virtualized end hosts. Managing address assignment while simultaneously enabling scalable communication is a challenge in such an environment. We present ALIAS, an addressing and communication protocol that automates topology discovery and address assignment for the hierarchical topologies that underlie many data center network fabrics. Addresses assigned by ALIAS interoperate with a variety of scalable communication techniques. ALIAS is fully decentralized, scales to large network sizes, and dynamically recovers from arbitrary failures, without requiring modifications to hosts or to commodity switch hardware. We demonstrate through simulation that ALIAS quickly and correctly configures networks that support up to hundreds of thousands of hosts, even in the face of failures and erroneous cabling, and we show that ALIAS is a practical solution for auto-configuration with our NetFPGA testbed implementation.
Meg Walraed-Sullivan, Radhika Niranjan Mysore, Malveeka Tewari, Ying Zhang 0022, Keith Marzullo, Amin Vahdat
SoCC5
2011 Brief Announcement: When You Don't Trust Clients: Byzantine Proposer Fast Paxos
Keith Marzullo, Hein Meling, Alessandro Mei
DISC1
2011 Brief Announcement: A Randomized Algorithm for Label Assignment in Dynamic Networks
Meg Walraed-Sullivan, Radhika Niranjan Mysore, Keith Marzullo, Amin Vahdat
DISC3
2010 Threshold protocols in survivor set systems
Flavio Paiva Junqueira, Keith Marzullo, Maurice Herlihy, Lucia Draque Penso
Distributed Comput.2
2009 Practical and low-overhead masking of failures of TCP-based servers
abstract
This article describes an architecture that allows a replicated service to survive crashes without breaking its TCP connections. Our approach does not require modifications to the TCP protocol, to the operating system on the server, or to any of the software running on the clients. Furthermore, it runs on commodity hardware. We compare two implementations of this architecture (one based on primary/backup replication and another based on message logging) focusing on scalability, failover time, and application transparency. We evaluate three types of services: a file server, a Web server, and a multimedia streaming server. Our experiments suggest that the approach incurs low overhead on throughput, scales well as the number of clients increases, and allows recovery of the service in near-optimal time.
Dmitrii Zagorodnov, Keith Marzullo, Lorenzo Alvisi, Thomas C. Bressoud
ACM Trans. Comput. Syst.2
2009 Detecting Malicious Packet Losses
abstract
In this paper, we consider the problem of detecting whether a compromised router is maliciously manipulating its stream of packets. In particular, we are concerned with a simple yet effective attack in which a router selectively drops packets destined for some victim. Unfortunately, it is quite challenging to attribute a missing packet to a malicious action because normal network congestion can produce the same effect. Modern networks routinely drop packets when the load temporarily exceeds their buffering capacities. Previous detection protocols have tried to address this problem with a user-defined threshold: too many dropped packets imply malicious intent. However, this heuristic is fundamentally unsound; setting this threshold is, at best, an art and will certainly create unnecessary false positives or mask highly focused attacks. We have designed, developed, and implemented a compromised router detection protocol that dynamically infers, based on measured traffic rates and buffer sizes, the number of congestive packet losses that will occur. Once the ambiguity from congestion is removed, subsequent packet losses can be attributed to malicious actions. We have tested our protocol in Emulab and have studied its effectiveness in differentiating attacks from legitimate network behavior.
Alper Tugay Mizrak, Stefan Savage, Keith Marzullo
IEEE Trans. Parallel Distributed Syst.3
2008 Mencius: Building Efficient Replicated State Machine for WANs
Yanhua Mao, Flavio Paiva Junqueira, Keith Marzullo
OSDI3
2008 Optimizing Threshold Protocols in Adversarial Structures
Maurice Herlihy, Flavio Paiva Junqueira, Keith Marzullo, Lucia Draque Penso
DISC3
2007 A framework for the design of dependent-failure algorithms
abstract
Abstract Dependent failures constitute a real problem in distributed systems. In this paper, we present a framework for the design of distributed algorithms for systems in which failures of processes are not necessarily independent or identically distributed. To derive this framework, we revisit the traditional way of designing distributed algorithms: assuming a threshold t on the number of process failures and determining constraints on process replication of the form All mathematics should have $n > k\cdot t$ . Under this model, there are several important results in the literature, and we use observations from these results to derive a framework that enables more expressive characterizations of failures, but still captures the essence of previous results. Our framework then has two parts: a characterization of the subsets of processes that can fail in an execution and properties that express constraints on process replication, called replication predicates. After presenting our model to characterize failures, we first consider a class of replication predicates that represent most well‐known problems in distributed computing. Second, we extend this set to also include some predicates for problems that have unusual bounds. We argue that, although being unusual, they have important practical implications, such as using fewer replicas. Copyright © 2007 John Wiley & Sons, Ltd.
Flavio Paiva Junqueira, Keith Marzullo
Concurr. Comput. Pract. Exp.2
2007 Analysis of Computer Intrusions Using Sequences of Function Calls
abstract
This paper demonstrates the value of analyzing sequences of function calls for forensic analysis. Although this approach has been used for intrusion detection (that is, determining that a system has been attacked), its value in isolating the cause and effects of the attack has not previously been shown. We also look for not only the presence of unexpected events but also the absence of expected events. We tested these techniques using reconstructed exploits in su, ssh, and lpr, as well as proof-of-concept code, and, in all cases, were able to detect the anomaly and the nature of the vulnerability.
Sean Peisert, Matt Bishop, Sidney Karin, Keith Marzullo
IEEE Trans. Dependable Secur. Comput.4
2006 Replicating Nondeterministic Services on Grid Environments
abstract
Replication is a technique commonly used to increase the availability of services in distributed systems, including grid and Web services. While replication is relatively easy for services with fully deterministic behavior, grid and Web services often include nondeterministic operations. The traditional way to replicate such nondeterministic services is to use the primary-backup approach. While this is straightforward in synchronous systems with perfect failure detection, typical grid environments are not usually considered to be synchronous systems. This paper addresses the problem of replicating nondeterministic services by designing a protocol based on Paxos and proposing two performance optimizations suitable for replicated grid services. The first improves the performance in the case where some service operations do not change the service state, while the second optimizes grid service requests that use transactions. Evaluations done both on a local cluster and on Planet-Lab demonstrate that these optimizations significantly reduce the service response time and increase the throughput of replicated services
Xianan Zhang, Flavio Paiva Junqueira, Matti A. Hiltunen, Keith Marzullo, Richard D. Schlichting
HPDC4
2006 Detecting and Isolating Malicious Routers
abstract
Network routers occupy a unique role in modern distributed systems. They are responsible for cooperatively shuttling packets amongst themselves in order to provide the illusion of a network with universal point-to-point connectivity. However, this illusion is shattered—as are implicit assumptions of availability, confidentiality, or integrity—when network routers are subverted to act in a malicious fashion. By manipulating, diverting, or dropping packets arriving at a compromised router, an attacker can trivially mount denial-of-service, surveillance, or man-in-the-middle attacks on end host systems. Consequently, Internet routers have become a choice target for would-be attackers and thousands have been subverted to these ends. In this paper, we specify this problem of detecting routers with incorrect packet forwarding behavior and we explore the design space of protocols that implement such a detector. We further present a concrete protocol that is likely inexpensive enough for practical implementation at scale. Finally, we present a prototype system, called Fatih, that implements this approach on a PC router and describe our experiences with it. We show that Fatih is able to detect and isolate a range of malicious router actions with acceptable overhead and complexity. We believe our work is an important step in being able to tolerate attacks on key network infrastructure components.
Alper Tugay Mizrak, Yuchung Cheng, Keith Marzullo, Stefan Savage
IEEE Trans. Dependable Secur. Comput.3
2006 Multiple Job Scheduling in a Connection-Limited Data Parallel System
abstract
We present a hybrid approach to the scheduling of jobs in a distributed system where the critical response is the bandwidth to access stored data. Our approach supports the master-worker scheme, but could be applied to other cases of parallel computation over stored data. We tested our new approach under various circumstances and measured it performance by means of several metrics. We made comparisons of our approach with respect to other scheduling policies; it performed significantly better than the majority of cases, and in worst cases, it was as good as the best of the others.
Alessandro Amoroso, Keith Marzullo
IEEE Trans. Parallel Distributed Syst.2
2005 Fatih: Detecting and Isolating Malicious Routers
abstract
Network routers occupy a key role in modern data transport and consequently are attractive targets for attackers. By manipulating, diverting or dropping packets arriving at a compromised router, an attacker can trivially mount denial-of-service, surveillance or man-in-the-middle attacks on end host systems. In this paper, we specify the problem of detecting routers with incorrect packet forwarding behavior and we explore the design space of protocols that implement such a detector. We further present a concrete protocol that is inexpensive enough for practical implementation at scale.
Alper Tugay Mizrak, Yuchung Cheng, Keith Marzullo, Stefan Savage
DSN3
2005 Replication Predicates for Dependent-Failure Algorithms
Flavio Paiva Junqueira, Keith Marzullo
Euro-Par2
2005 Principles-driven forensic analysis
abstract
It is possible to enhance our understanding of what has happened on a computer system by using forensic techniques that do not require prediction of the nature of the attack, the skill of the attacker, or the details of the system resources or objects affected. These techniques address five fundamental principles of computer forensics. These principles include recording data about the entire operating system, particularly user space events and environments, and interpreting events at different layers of abstraction, aided by the context in which they occurred. They also deal with modeling the recorded data as a multi-resolution, finite state machine so that results can be established to a high degree of certainty rather than merely inferred.
Sean Peisert, Sidney Karin, Matt Bishop, Keith Marzullo
NSPW4
2005 Surviving Internet Catastrophes
Flavio Paiva Junqueira, Ranjita Bhagwan, Alejandro Hevia, Keith Marzullo, Geoffrey M. Voelker
USENIX ATC, General Track4
2005 Coterie Availability in Sites
Flavio Paiva Junqueira, Keith Marzullo
DISC2
2005 Introduction
Keith Marzullo
Distributed Comput.1
2004 Fault-tolerant grid services using primary-backup: feasibility and performance
abstract
The combination of grid technology and Web services has produced an attractive platform for deploying distributed applications: grid services, as represented by the Open Grid Services Infrastructure (OGSI) and its Globus toolkit implementation. As the use of grid services grows in popularity, tolerating failures becomes increasingly important. This work addresses the problem of building a reliable and highly-available grid service by replicating the service on two or more hosts using the primary-backup approach. The primary goal is to evaluate the ease and efficiency with which this can be done, by first designing a primary-backup protocol using OGSI, and then implementing it using Globus to evaluate performance implications and tradeoffs. We compared three implementations: one that makes heavy use of the notification interface defined in OGSI, one that uses standard grid service requests instead of notification, and one that uses low-level socket primitives. The overall conclusion is that, while the performance penalty of using Globus primitives - especially notification - for replica coordination can be significant, the OGSI model is suitable for building highly-available services and it makes the task of engineering such services easier.
Xianan Zhang, Dmitrii Zagorodnov, Matti A. Hiltunen, Keith Marzullo, Richard D. Schlichting
CLUSTER4
2004 Brief announcement: detecting malicious routers
abstract
No abstract available.
Alper Tugay Mizrak, Keith Marzullo, Stefan Savage
PODC2
2003 Engineering Fault-Tolerant TCP/IP Servers Using FT-TCP
abstract
In a recent paper we have proposed FT-TCP: an architecture that allows a replicated service to survive crashes without breaking its TCP connections. FT-TCP is attractive in principle because it does not require modifications to the TCP protocol and does not affect any of the software running on the clients; however, its practicality for real-world applications remains to be proven. In this paper, we report on our experience in engineering FT-TCP for two such applications---the Samba file server and a multimedia streaming server from Apple. We compare two implementations of FT-TCP, one based on primary-backup and another based on message logging, focusing on scalability, failover time, and application transparency. Our experiments suggest that FT-TCP is a practicable approach for replicating TCP/IP-based services that incurs low overhead on throughput, scales well as the number of clients increases, and allows recovery of the service in near-optimal time.
Dmitrii Zagorodnov, Keith Marzullo, Lorenzo Alvisi, Thomas C. Bressoud
DSN2
2003 The Phoenix Recovery System: Rebuilding from the Ashes of an Internet Catastrophe
Flavio Paiva Junqueira, Ranjita Bhagwan, Keith Marzullo, Stefan Savage, Geoffrey M. Voelker
HotOS3
2003 Group Membership and Wide-Area Master-Worker Computations
abstract
Group communications systems have been designed to provide an infrastructure for fault-tolerance in distributed systems, including wide-area systems. In our work on master-worker computation for GriPhyN, which is a large project in the area of the computational grid, we asked the question should we build our wide-area master-worker computation using wide-area group communications? This paper explains why we decided doing so was not a good idea.
Kjetil Jacobsen, Xianan Zhang, Keith Marzullo
ICDCS3
2003 Synchronous Consensus for Dependent Process Failure
abstract
We present a new abstraction to replace the t of n assumption used in designing fault-tolerant algorithms. This abstraction models dependent process failures yet it is as simple to use as the t of n assumption. To illustrate this abstraction, we consider Consensus for synchronous systems with both crash and arbitrary process failures. By considering failure correlations, we are able to reduce latency and enable the solution of Consensus for system configurations in which it is not possible when forced to use algorithms designed under the t of n assumption. We show that, in general, the number of rounds required in the worst case when assuming crash failures is different from the number of rounds required when assuming arbitrary failures. This is in contrast with the traditional result under the t of n assumption.
Flavio Paiva Junqueira, Keith Marzullo
ICDCS2
2003 In search of path diversity in ISP networks
abstract
Internet Service Providers (ISPs) can exploit path diversity to balance load and improve robustness. Unfortunately, it is difficult to evaluate the potential impact of these approaches without routing and topological data, which are confidential. In this paper, we characterize path diversity in the real Sprint network. We then characterize path diversity in ISP topologies inferred using the Rocketfuel tool. Comparing the real Sprint topology to the one inferred by Rocketfuel, we find that the Rocketfuel topology has significantly higher apparent path diversity.(As a metric, path diversity is particularly sensitive to the presence of false or missing links, both of which are artifacts of active measurement techniques.) We evaluate heuristics that improve the accuracy of the inferred Rocketfuel topologies. Finally, we discuss limitations of active measurements techniques to capture topological properties such as path diversity.
Renata Teixeira, Keith Marzullo, Stefan Savage, Geoffrey M. Voelker
Internet Measurement Conference2
2003 Characterizing and measuring path diversity of internet topologies
abstract
No abstract available.
Renata Teixeira, Keith Marzullo, Stefan Savage, Geoffrey M. Voelker
SIGMETRICS2
2003 Scalable causal message logging for wide-area environments
abstract
Abstract Wide‐area systems are gaining in popularity as an infrastructure for running scientific applications. From a fault tolerance perspective, these environments are challenging because of their scale and their variability. Causal message logging protocols have attractive properties that make them suitable for these environments. They spread fault tolerance information around in the system providing high availability. This information can also be used to replicate objects that are otherwise inaccessible because of network partitions. However, current causal message logging protocols do not scale to thousands or millions of processes. We describe the Hierarchical Causal Message Logging Protocol (HCML) that uses a hierarchy of shared logging sites, or proxies, to significantly reduce the space requirements as compared with existing protocols. These proxies also act as caches for fault tolerance information and reduce the overall message overhead by as much as 50%. HCML also leverages differences in bandwidth between processes that reduces overall message latency by as much as 97%. Copyright © 2003 John Wiley & Sons, Ltd.
Karan Bhatia, Keith Marzullo, Lorenzo Alvisi
Concurr. Comput. Pract. Exp.2
2003 The Bancomat problem: an example of resource allocation in a partitionable asynchronous system
Jeremy B. Sussman, Keith Marzullo
Theor. Comput. Sci.2
2002 Dependability and the Grid: Issues and Challenges
Richard D. Schlichting, Andrew A. Chien, Carl Kesselman, Keith Marzullo, James S. Plank, Santosh K. Shrivastava
DSN4
2002 Causality tracking in causal message-logging protocols
Lorenzo Alvisi, Karan Bhatia, Keith Marzullo
Distributed Comput.3
2002 Moshe: A group membership service for WANs
abstract
We present Moshe, a novel scalable group membership algorithm built specifically for use in wide area networks (WANs), which can suffer partitions. Moshe is designed with three new significant features that are important in this setting: it avoids delivering views that reflect out-of-date memberships; it requires a single round of messages in the common case; and it employs a client-server design for scalability. Furthermore, Moshe's interface supplies the hooks needed to provide clients with full virtual synchrony semantics. We have implemented Moshe on top of a network event mechanism also designed specifically for use in a WAN. In addition to specifying the properties of the algorithm and proving that this specification is met, we provide empirical results of an implementation of Moshe running over the Internet. The empirical results justify the assumptions made by our design and exhibit good performance. In particular, Moshe terminates within a single communication round over 98% of the time. The experimental results also lead to interesting observations regarding the performance of membership algorithms over the Internet.
Idit Keidar, Jeremy B. Sussman, Keith Marzullo, Danny Dolev
ACM Trans. Comput. Syst.3
2001 Scalable Causal Message Logging for Wide-Area Environments
Karan Bhatia, Keith Marzullo, Lorenzo Alvisi
Euro-Par2
2001 Separating Mobility from Mobile Agents
abstract
The reasons for using mobile agents are well-known: moving computation to data to avoid transferring large amounts of data; supporting disconnected operation by, for example, moving a computation to a network that has better connectivity; supporting autonomous distributed computation by, for example, deploying a personalized filter near a real-time data source. Many mobile agent systems have been constructed and are in the public domain. But, despite these well-known advantages and widely available software, mobile agents are not yet being used as a common programming abstraction. We have been working since 1993, under the name of TACOMA, on operating system support and application of mobile agents. We have addressed issues including fault-tolerance, security, efficiency, and runtime structures and services. We have built a series of mobile agent middleware systems and evaluated them by building realistic and deployed applications. We have found that mobile agents are especially useful for large-scale systems configuration and deployment, system and service extensibility, and distributed application self-management. The programming model TACOMA supports has changed over these years to reflect our experience with writing real applications. Like other mobile agent systems, TACOMA started with a programming model that resembled the characterization given above of mobile agents being processes with explicit control over where they execute. We call this the traditional model of mobile agents.
Kåre J. Lauvset, Kjetil Jacobsen, Dag Johansen, Keith Marzullo
HotOS4
2001 Wrapping Server-Side TCP to Mask Connection Failures
abstract
We present an implementation of a fault-tolerant TCP (FT-TCP) that allows a faulty server to keep its TCP connections open until it either recovers or it is failed over to a backup. The failure and recovery of the server process are completely transparent to client processes connected with it via TCP. FT-TCP does not affect the software running on a client, does not require to change the server's TCP implementation, and does not use a proxy.
Lorenzo Alvisi, Thomas C. Bressoud, Ayman El-Khashab, Keith Marzullo, Dmitrii Zagorodnov
INFOCOM4
2000 A Client-Server Oriented Algorithm for Virtually Synchronous Group Membership in WANs
abstract
We describe a novel scalable group membership service designed explicitly for wide area networks. Our membership service is scalable in the number of groups supported, in the number of members in each group, and in the topology each group spans. Our service also supplies the hooks needed to provide clients with full virtual synchrony semantics. Our service attains, on average, a low message overhead by agreeing on membership within a single message round. Furthermore, our service avoids notifying the application of obsolete membership views when the network is unstable, yet it converges when the network has stabilized.
Idit Keidar, Jeremy B. Sussman, Keith Marzullo, Danny Dolev
ICDCS3
2000 Optimistic Virtual Synchrony
abstract
We present Optimistic Virtual Synchrony (OVS), a new form of group communication which provides the same capabilities as Virtual Synchrony with better performance. It does so by allowing applications to send messages during periods in which services implementing Virtual Synchrony block. OVS also allows applications to determine the policy as to when messages sent optimistically should be delivered and when they should be discarded. Thus, OVS gives applications fine grain control over the specific semantics they require, and does not impose costs for enforcing any semantics that they do not require. At the same time, OVS provides a single easy-to-use interface for all applications.
Jeremy B. Sussman, Idit Keidar, Keith Marzullo
SRDS3
2000 Gossip versus Deterministically Constrained Flooding on Small Networks
Meng-Jang Lin, Keith Marzullo, Stefano Masini
DISC2
1999 NAP: Practical Fault-Tolerance for Itinerant Computations
abstract
One use of mobile agents is support for itinerant computation (D. Chess et al., 1995). An itinerant computation is a program that moves from host to host in a network. Which hosts the program visits is determined by the program. The program can have a pre-defined itinerary or can dynamically compute the next host to visit as it visits each successive host; it can visit the same host repeatedly or it can even create multiple concurrent copies of itself on a single host. Itinerant computations are susceptible to processor failures, communications failures, and crashes due to program bugs. NAP is a protocol for supporting fault tolerance in itinerant computations. It employs a form of failure detection and recovery, and it generalizes the primary backup approach to a new computational model. The guarantees offered by NAP as well as an implementation for NAP in TACOMA are discussed.
Dag Johansen, Keith Marzullo, Fred B. Schneider, Kjetil Jacobsen, Dmitrii Zagorodnov
ICDCS2
1998 Wide-Area Nile: A Case Study of a Wide-Area Data-Parallel Application
abstract
The Nile system is a distributed environment for running very large, data-intensive applications across a network of commodity workstations. These applications process data from elementary particle collisions, generated by the Cornell Electron Storage Ring, and are used by physicists of the CLEO experiment. The applications have a simple data-parallel structure, and so Nile executes them using as much parallelism as is available. Nile currently runs at any single site. It is being used by alpha testers and is scheduled for beta release in March 1998. We describe how we are adapting this local-area Nile system to allow for wide-area, multiple site interactions. In particular, we consider the two problems of scaling and of fault tolerance.
Alessandro Amoroso, Keith Marzullo, Aleta Ricciardi
ICDCS2
1998 The Relative Overhead of Piggybacking in Causal Message Logging Protocols
abstract
Message logging protocols ensure that crashed processes make the same choices when re-executing nondeterministic events during recovery. Causal message logging protocols achieve this by piggybacking the results of these choices (called determinants) on the ambient message traffic. By doing so, these protocols do not create orphan processes nor introduce blocking in failure-free executions. To survive f failures, they ensure that determinants are stored by at least f+1 processes. Causal logging protocols differ in the kind of information they piggyback to other processes. The more information they send, the better each process is able to estimate global properties of the determinants, which in turn results in fewer needless piggybacking of determinants. This paper quantifies the tradeoff between the cost of sending more information and the benefit of doing so.
Karan Bhatia, Keith Marzullo, Lorenzo Alvisi
SRDS2
1998 The Bancomat Problem: An Example of Resource Allocation in a Partitionable Asynchronous System
Jeremy B. Sussman, Keith Marzullo
DISC2
1998 Message Logging: Pessimistic, Optimistic, Causal, and Optimal
abstract
Message-logging protocols are an integral part of a popular technique for implementing processes that can recover from crash failures. All message-logging protocols require that, when recovery is complete, there be no orphan processes, which are surviving processes whose states are inconsistent with the recovered state of a crashed process. We give a precise specification of the consistency property "no orphan processes". From this specification, we describe how different existing classes of message-logging protocols (namely optimistic, pessimistic, and a class that we call causal) implement this property. We then propose a set of metrics to evaluate the performance of message-logging protocols, and characterize the protocols that are optimal with respect to these metrics. Finally, starting from a protocol that relies on causal delivery order, we show how to derive optimal causal protocols that tolerate f overlapping failures and recoveries for a parameter f (1/spl les/f/spl les/n).
Lorenzo Alvisi, Keith Marzullo
IEEE Trans. Software Eng.2
1997 A low-cost processor group membership protocol for a hard real-time distributed system
abstract
Processor group membership protocols implement a service that allow processors to agree on which processors are operational. Implementations of group membership for hard real-time systems have concentrated on either reducing failure detection latency or minimizing message complexity. Instead, we present a protocol that uses shared resources-processor time and network bandwidth-as a small, bounded tax imposed on existing broadcast message traffic. In doing so, the group membership protocol can easily be taken into account by any schedulability analysis.
Matthew Clegg, Keith Marzullo
RTSS2
1996 Trade-Offs in Implementing Optimal Message Logging Protocols
abstract
Casual message logging protocols[3] have several attractive properties: they introduce no blocking, send no additional messages over those sent by the application, and can never cause orphans to be created by crashes.Causal message logging, however, does require additional data to be piggybacked on application messages.The amount of such piggybacked data can become large.In this paper, we present five different implementations of casual message logging.All of the corresponding protocols are parameterized by ~, the maximum number of processes that can fail concurrently.We also explore how the application's communication structure can be exploited to limit the amount of piggybacked data.ing recorded that state.When a process crashes, a new process is created in its place: the new process is given
Lorenzo Alvisi, Keith Marzullo
PODC2
1996 Comparing Primary-Backup and State Machines for Crash Failures (Abstract)
abstract
No abstract available.
Jeremy B. Sussman, Keith Marzullo
PODC2
1995 Message Logging: Pessimistic, Optimistic, and Causal
abstract
Message logging protocols are an integral part of a technique for implementing processes that can recover from crash failures. All message logging protocols require that, when recovery is complete, there be no orphan processes, which are surviving processes whose states are inconsistent with the recovered state of a crashed process. We give a precise specification of the consistency property "no orphan processes". From this specification, we describe how different existing classes of message logging protocols (namely optimistic, pessimistic, and a class that we call causal) implement this property. We then propose a set of metrics to evaluate the performance of message logging protocols, and characterize the protocols that are optimal with respect to these metrics. Finally, starting from a protocol that relies on causal delivery order, we show how to derive optimal causal protocols that tolerate f overlapping failures and recoveries for a parameter f:1/spl les/f/spl les/n.
Lorenzo Alvisi, Keith Marzullo
ICDCS2
1995 Deriving Optimal Checkpoint Protocols for Distributed Shared Memory Architectures (Abstract)
abstract
No abstract available.
Lorenzo Alvisi, Keith Marzullo
PODC2
1994 Simulating Fail-Stop in Asynchronous Distributed Systems
abstract
No abstract available.
Laura S. Sabel, Keith Marzullo
PODC2
1994 Simulating Fail-Stop in Asynchronous Distributed Systems
abstract
The fail-stop failure model appears frequently in the distributed systems literature. However, in an asynchronous distributed system, the fail-stop model cannot be implemented. In particular, it is impossible to reliably detect crash failures in an asynchronous system. In this paper, we show that it is possible to specify and implement a failure model that is indistinguishable from the fail-stop model from the point of view of any process within an asynchronous system. We give necessary conditions for a failure model to be indistinguishable from the fail-stop model, and derive lower bounds on the amount of process replication needed to implement such a failure model. We present a simple one-round protocol for implementing one such failure model, which we call simulated fail-stop.>
Laura S. Sabel, Keith Marzullo
SRDS2
1994 Efficient Detection of a Class of Stable Properties
Keith Marzullo, Laura S. Sabel
Distributed Comput.1
1993 A Formalization of Priority Inversion
Özalp Babaoglu, Keith Marzullo, Fred B. Schneider
Real Time Syst.2
1991 Masking Failures of Multidimensional Sensors
abstract
A methodology for transforming a process control program that cannot tolerate sensor failure into one that can is presented. In this methodology, a reliable abstract sensor is created by combining information from several real sensors that measure the same physical value. To be useful, an abstract sensor must deliver reasonably accurate information at reasonable computational cost. The authors consider sensors that deliver multidimensional values (e.g. location or velocity in three dimensions). Geometric techniques are used to derive upper bounds on abstract sensor accuracy and to develop efficient algorithms for implementing abstract sensors.>
Paul Chew, Keith Marzullo
SRDS2
1990 Tolerating Failures of Continuous-Valued Sensors
abstract
One aspect of fault-tolerance in process control programs is the ability to tolerate sensor failure. This paper presents a methodology for transforming a process control program that cannot tolerate sensor failures into one that can. Issues addressed include modifying specifications in order to accommodate uncertainty in sensor values and averaging sensor values in a fault-tolerant manner. In addition, a hierarchy of sensor failure models is identified, and both the attainable accuracy and the run-time complexity of sensor averaging with respect to this hierarchy is discussed.
Keith Marzullo
ACM Trans. Comput. Syst.1
1988 Supplying High Availability with a Standard Network File System
abstract
The design of a network file service that is tolerant to fail-stop failures and that can be run on top of a standard network file service is described. The fault-tolerance is completely transparent, so the resulting file system supports the same set of heterogeneous workstations and applications as the chosen standard, To demonstrate that the design can provide the benefit of highly available files at a reasonable cost to the user, a prototype has been implemented using the Sun NFS protocol. The approach is not limited to being used with NFS and should apply to any network file service built along the client-server model.>
Keith Marzullo, Frank B. Schmuck
ICDCS1
1983 Maintaining the Time in a Distributed System
abstract
To a client of a loosely-coupled distributed system, one of the simplest services is a time service. Usually the client simply requests the time from any subset of the time servers making up the service, and uses the first reply. Issues that need to be considered in other services, such as connection establishment or client authentication, need not be considered in a time service. The simplicity of this instruction, however, misrepresents the complexity of implementing such a service.
Keith Marzullo, Susan S. Owicki
PODC1