VLDB 2026 Research / reviewers in the wild / expert
Thomas E. Anderson
dblp:a/ThomasEAnderson · also Tom Anderson 0003
· DBLP profile ↗
134ranked-venue papers
14as first author
16since 2021 · last 2026
0009-0004-2951-0343ORCID · conflict
Domains — the database's venue-derived domains; a paper can count in several
Computer networks · 59 · 1 first-author · 7 since 2021Software engineering, systems software and programming languages · 42 · 7 first-author · 3 since 2021Systems, architecture and hardware · 41 · 10 first-author · 6 since 2021Security and privacy · 4Databases, data management, data science and information retrieval · 1 · 1 since 2021Human-computer interaction and ubiquitous computing · 1Theory of computation · 1
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2026 | Prediction-Informed Power Management for General-Purpose Compute ServersabstractThis paper presents PIP (Prediction-Informed Power), a power control framework for general-purpose compute servers. PIP introduces two key innovations: (1) a machine learning-based power model that predicts the impact of hypothetical CPU throttling actions before execution, and (2) a prediction-informed control loop that selects CPU configurations to maximize performance and power utilization based on these predictions. By leveraging finegrained runtime CPU metrics, PIP can accurately estimate counterfactual power usage, allowing the control system to align power demand with the budget more quickly. Unlike traditional reactive approaches, PIP maintains effective control under frequent budget fluctuations, achieving safe oversubscription by up to 70%. Our evaluation on diverse application workloads, none of which are included in the model's training set, shows that PIP yields up to a 3.2× speedup over a state-of-the-art feedback-based system for single-application runs, and up to a 3.4× speedup for multi-application scenarios under power constraints. Jonggyu Park, Simon Peter 0001, Thomas E. Anderson |
EuroSys | 3 |
| 2026 | PASS: A Power Adaptive Storage ServerabstractPower management has become important in data centers. Since data center workloads are often dynamic, it is common practice to conserve energy by scaling resources up or down to match the workload. And since data centers often oversubscribe the power delivery infrastructure, operators can add power capping on top of these workload-proportional systems to adjust to available power. We find that this combination leaves performance on the table and provides only a limited power control range. Instead, we argue for power-adaptive systems that attempt to make the best use of the available power budget. To illustrate this approach, we built PASS, a power-adaptive storage system. PASS considers the interactions between different system components, including software and hardware, when making its power management decisions. For example, when under the same power constraint, PASS achieves 3–25× better throughput on filebench workloads than Intel's SPDK storage stack with Google Thunderbolt, a state of the art power capping system. Dedong Xie, Theano Stavrinos, Jonggyu Park, Simon Peter 0001, Baris Kasikci, Thomas E. Anderson |
EuroSys | 6 |
| 2025 | Apiary: An OS for the Modern FPGAabstractMany datacenter operators have deployed FPGAs as hardware accelerators because their reconfigurability allows them to be repurposed as the application mix changes. Directly attaching the FPGA to the network further reduces latency, improves cost-performance, and reduces energy use relative to mediating network communications with CPUs. However, building accelerated applications or services for direct-attached FPGAs is challenging, especially with the complex I/O and multi-accelerator capacity of modern FPGAs. To address this, we propose Apiary, a microkernel operating system for direct-attached FPGA accelerators. The key idea in Apiary is to raise the level of abstraction for accelerated application code, with security, virtualization, threaded execution, and interprocess communication provided by the hardware OS layer. Katie Lim, Matthew Giordano, Irene Zhang, Baris Kasikci, Thomas E. Anderson |
HotOS | 5 |
| 2024 | Enoki: High Velocity Linux Kernel Scheduler DevelopmentabstractKernel task scheduling is important for application performance, adaptability to new hardware, and complex user requirements. However, developing, testing, and debugging new scheduling algorithms in Linux, the most widely used cloud operating system, is slow and difficult. We developed Enoki, a framework for high velocity development of Linux kernel schedulers. Enoki schedulers are written in safe Rust, and the system supports live upgrade of new scheduling policies into the kernel, userspace debugging, and bidirectional communication with applications. A scheduler implemented with Enoki achieved near identical performance (within 1% on average) to the default Linux scheduler CFS on a wide range of benchmarks. Enoki is also able to support a range of research schedulers, specifically the Shinjuku scheduler, a locality aware scheduler, and the Arachne core arbiter, with good performance. Samantha Miller, Anirudh Kumar, Tanay Vakharia, Ang Chen 0001, Danyang Zhuo, Thomas E. Anderson |
EuroSys | 6 |
| 2024 | Can Storage Devices be Power Adaptive?abstractPower is becoming a scarce resource for data centers, raising the need for power adaptive system design---the ability to dynamically change power consumption---to match available power. Storage makes up an increasing fraction of total data center power consumption. As such, it holds great potential to contribute to data center power adaptivity. Dedong Xie, Theano Stavrinos, Kan Zhu, Simon Peter 0001, Baris Kasikci, Thomas E. Anderson |
HotStorage | 6 |
| 2024 | Beehive: A Flexible Network Stack for Direct-Attached AcceleratorsabstractDirect-attached accelerators, where application accelerators are directly connected to the datacenter network via a hardware network stack, offer substantial benefits in terms of reduced latency, CPU overhead, and energy use. However, a key challenge is that modern datacenter network stacks are complex, with interleaved protocol layers, network management functions, and virtualization support. To operators, network feature agility, diagnostics, and manageability are often considered just as important as raw performance. By contrast, existing hardware network stacks only support basic protocols and are often difficult to extend since they use fixed processing pipelines. We propose Beehive, a new, open-source FPGA network stack for direct-attached accelerators designed to enable flexible and adaptive construction of complex network functionality in hardware. Application and network protocol elements are modularized as tiles over a network-on-chip substrate. Elements can be added or scaled up/down to match workload characteristics with minimal effort or changes to other elements. Flexible diagnostics and control are integral, with tooling to ensure deadlock safety. Our implementation interoperates with standard Linux TCP and UDP clients, with a 4x improvement in end-to-end RPC tail latency for Linux UDP clients versus a CPU-attached accelerator. Beehive is available at https://github:com/beehive-fpga/beehive Katie Lim, Matthew Giordano, Theano Stavrinos, Irene Zhang, Jacob Nelson 0001, Baris Kasikci, Thomas E. Anderson |
MICRO | 7 |
| 2024 | m3: Accurate Flow-Level Performance Estimation using Machine LearningabstractData center network operators often need accurate estimates of aggregate network performance. Unfortunately, existing methods for estimating aggregate network statistics are either inaccurate or too slow to be practical at the data center scale. Chenning Li, Arash Nasr-Esfahany, Kevin Zhao, Kimia Noorbakhsh, Prateesh Goyal, Mohammad Alizadeh, Thomas E. Anderson |
SIGCOMM | 7 |
| 2023 | Application Defined NetworksabstractWith the rise of microservices, the execution environment of many cloud applications has become a set of virtual machines or containers connected by a flexible and feature-rich virtual network. We argue that the implementation of such virtual networks should be completely application-specific and not layered on top of general-purpose network abstractions from the Internet age. Such layering tends to more than double the latency and CPU usage of applications. We propose application-defined networks in which developers specify network functionality in a high-level language and a controller generates a custom distributed implementation that runs across available hardware and software resources. Experiments with a preliminary prototype suggest that, compared to the state of the art, ADN reduces latency by up to 20x and increases the throughput by up to 6x. Xiangfeng Zhu, Weixin Deng, Banruo Liu, Jingrong Chen 0002, Thomas E. Anderson, Arvind Krishnamurthy, Ratul Mahajan, Danyang Zhuo |
HotNets | 6 |
| 2023 | Minimizing a Smartphone's TCB for Security-Critical Programs with Exclusively-Used, Physically-Isolated, Statically-Partitioned HardwareabstractSmartphone owners often need to run security-critical programs on the same device as other untrusted and potentially malicious programs. This requires users to trust hardware and system software to correctly sandbox malicious programs, trust that is often misplaced. Our goal is to minimize the number and complexity of hardware and software components that a smartphone owner needs to trust. We present a split-trust hardware design composed of statically-partitioned, physically-isolated trust domains. We introduce a few simple, formally-verified hardware components to enable a program to gain provably exclusive and simultaneous access to both computation and I/O on a temporary basis. To manage this hardware, we present OctopOS, an OS composed of mutually distrustful subsystems. We present a prototype of this machine (hardware and OS) on a CPU-FPGA board and show that it incurs a small hardware cost compared to modern smartphone SoCs. For security-critical programs, we show that this machine significantly reduces the required trust compared to mainstream TEEs while achieving usable performance. For normal programs, performance is similar to a legacy machine. Zhihao Yao 0001, Seyed Mohammadjavad Seyed Talebi, Ardalan Amiri Sani, Thomas E. Anderson |
MobiSys | 5 |
| 2023 | Remote Procedure Call as a Managed System Service
Jingrong Chen 0002, Shihan Lin, Yechen Xu, Xinhao Kong, Thomas E. Anderson, Matthew Lentz, Xiaowei Yang 0001, Danyang Zhuo |
NSDI | 6 |
| 2023 | Scalable Tail Latency Estimation for Data Center Networks
Kevin Zhao, Prateesh Goyal, Mohammad Alizadeh, Thomas E. Anderson |
NSDI | 4 |
| 2022 | Backpressure Flow Control
Prateesh Goyal, Preey Shah, Kevin Zhao, Georgios Nikolaidis, Mohammad Alizadeh, Thomas E. Anderson |
NSDI | 6 |
| 2021 | High Velocity Kernel File Systems with Bento
Samantha Miller, Kaiyuan Zhang 0001, Ryan Jennings, Ang Chen 0001, Danyang Zhuo, Thomas E. Anderson |
FAST | 7 |
| 2021 | A Vision for Runtime Programmable NetworksabstractOur community has made significant progress in developing programmable network infrastructure, starting from the control plane and expanding to the data plane. As a latest trend, network devices are becoming runtime programmable while serving live traffic. This allows for reprogramming of individual device programs at fine-grained timescales to add or remove network functions. Many applications and services, however, need control over a combination of devices, including end host stacks, NICs, and switches, to accomplish their goals. We lay out our vision for runtime programmable networks, building upon device-level features to provide live, network-wide, runtime reprogramming. A whole-stack approach is needed with new programming models, compiler support, and network management abstractions. We outline a research agenda as a call to arms to the community. Jiarong Xing, Yiming Qiu 0001, Kuo-Feng Hsu, Matty Kadosh, Alan Lo, Aditya Akella, Thomas E. Anderson, Arvind Krishnamurthy, T. S. Eugene Ng, Ang Chen 0001 |
HotNets | 8 |
| 2021 | An incremental path towards a safer OS kernelabstractLinux has become the de-facto operating system of our age, but its vulnerabilities are a constant threat to service availability, user privacy, and data integrity. While one might scrap Linux and start over, the cost of that would be prohibitive due to Linux's ubiquitous deployment. In this paper, we propose an alternative, incremental route to a safer Linux through proper modularization and gradual replacement module by module. We lay out the research challenges and potential solutions for this route, and discuss the open questions ahead. Jialin Li 0001, Samantha Miller, Danyang Zhuo, Ang Chen 0001, Jon Howell, Thomas E. Anderson |
HotOS | 6 |
| 2021 | Toward reconfigurable kernel datapaths with learned optimizationsabstractToday's computing systems pay a heavy "OS tax", as kernel execution accounts for a significant amount of resource footprint. This is not least because today's kernels abound with hardcoded heuristics that are designed with unstated assumptions, which rarely generalize well for diversifying applications and device technologies. Yiming Qiu 0001, Thomas E. Anderson, Yingyan (Celine) Lin, Ang Chen 0001 |
HotOS | 3 |
| 2020 | Talek: Private Group Messaging with Hidden Access PatternsabstractTalek is a private group messaging system that sends messages through potentially untrustworthy servers, while hiding both data content and the communication patterns among its users. Talek explores a new point in the design space of private messaging; it guarantees access sequence indistinguishability, which is among the strongest guarantees in the space, while assuming an anytrust threat model, which is only slightly weaker than the strongest threat model currently found in related work. Our results suggest that this is a pragmatic point in the design space, since it supports strong privacy and good performance: we demonstrate a 3-server Talek cluster that achieves throughput of 9,433 messages/second for 32,000 active users with 1.7-second end-to-end latency. To achieve its security goals without coordination between clients, Talek relies on information-theoretic private information retrieval. To achieve good performance and minimize server-side storage, Talek introduces new techniques and optimizations that may be of independent interest, e.g., a novel use of blocked cuckoo hashing and support for private notifications. The latter provide a private, efficient mechanism for users to learn, without polling, which logs have new messages. Raymond Cheng 0001, William Scott 0002, Elisaweta Masserova, Irene Zhang, Vipul Goyal, Thomas E. Anderson, Arvind Krishnamurthy, Bryan Parno |
ACSAC | 6 |
| 2020 | Assise: Performance and Availability via Client-local NVM in a Distributed File System
Thomas E. Anderson, Marco Canini, Jongyul Kim 0001, Dejan Kostic, Youngjin Kwon, Simon Peter 0001, Waleed Reda, Henry Schuh, Emmett Witchel |
OSDI | 1 |
| 2019 | TAS: TCP Acceleration as an OS ServiceabstractAs datacenter network speeds rise, an increasing fraction of server CPU cycles is consumed by TCP packet processing, in particular for remote procedure calls (RPCs). To free server CPUs from this burden, various existing approaches have attempted to mitigate these overheads, by bypassing the OS kernel, customizing the TCP stack for an application, or by offloading packet processing to dedicated hardware. In doing so, these approaches trade security, agility, or generality for efficiency. Neither trade-off is fully desirable in the fast-evolving commodity cloud. Antoine Kaufmann, Tim Stamler, Simon Peter 0001, Naveen Kr. Sharma, Arvind Krishnamurthy, Thomas E. Anderson |
EuroSys | 6 |
| 2019 | Teaching Rigorous Distributed Systems With Efficient Model CheckingabstractWriting correct distributed systems code is difficult, especially for novice programmers. The inherent asynchrony and need for fault-tolerance make errors almost inevitable. Industrial-strength testing and model checking have been shown to be effective at uncovering bugs, but they come at a cost --- in both time and effort --- that is far beyond what students can afford. To address this, we have developed an efficient model checking framework and visual debugger for distributed systems, with the goal of helping students find and fix bugs in near real-time. We identify two novel techniques for reducing the search state space to more efficiently find bugs in student implementations. We report our experiences using these tools to help over two hundred students build a correct, linearizable, fault-tolerant, dynamically-sharded key--value store. Ellis Michael, Doug Woos, Thomas E. Anderson, Michael D. Ernst, Zachary Tatlock |
EuroSys | 3 |
| 2019 | Practical Safe Linux Kernel ExtensibilityabstractThe ability to extend kernel functionality safely has long been a design goal for operating systems. Modern operating systems, such as Linux, are structured for extensibility to enable sharing a single code base among many environments. Unfortunately, safety has lagged behind, and bugs in kernel extensions continue to cause problems. We study three recent kernel extensions critical to Docker containers (Overlay File System, Open vSwitch Datapath, and AppArmor) to guide further research in extension safety. We find that all the studied kernel extensions suffer from the same set of low-level memory, concurrency, and type errors. Though safe kernel extensibility is a well-studied area, existing solutions are heavyweight, requiring extensive changes to the kernel and/or expensive runtime checks. We then explore the feasibility of writing kernel extensions in a high-level, type safe language (i.e., Rust) while preserving compatibility with Linux and find this to be an appealing approach. We show that there are key challenges to implementing this approach and propose potential solutions. Samantha Miller, Kaiyuan Zhang 0001, Danyang Zhuo, Shibin Xu, Arvind Krishnamurthy, Thomas E. Anderson |
HotOS | 6 |
| 2019 | The Case for I/O-Device-as-a-ServiceabstractMany computer systems, especially mobile and IoT systems, use a large number of I/O devices. A contemporary OS acts as a security guard for these devices, which trust the OS to correctly implement the "perimeter defense." Moreover, the OS also trusts these devices and their drivers to be well-behaved and bug-free. This interwoven trust model complicates the security of the system as a single vulnerable component can undermine all security guarantees. Not surprising, this architecture has failed to achieve strong security as evident by attacks that have targeted I/O devices or their drivers. In this paper, we call for a radically new approach, called I/O-Device-as-a-Service (IDaaS), where each I/O device acts a separate service and is responsible for its own security. Inspired by Service-Oriented Architecture (SOA), IDaaS requires every device to be equipped with its own software stack and provide an externalizable API that can be safely exposed to untrusted software. We discuss the design decisions in IDaaS, highlight its security benefits and research challenges, and present a case study. Ardalan Amiri Sani, Thomas E. Anderson |
HotOS | 2 |
| 2019 | Slim: OS Kernel Support for a Low-Overhead Container Overlay Network
Danyang Zhuo, Kaiyuan Zhang 0001, Yibo Zhu 0001, Hongqiang Harry Liu, Matthew Rockett, Arvind Krishnamurthy, Thomas E. Anderson |
NSDI | 7 |
| 2018 | Deepview: Virtual Disk Failure Diagnosis and Pattern Detection for Azure
Qiao Zhang 0001, Chuanxiong Guo, Yingnong Dang, Nick Swanson, Xinsheng Yang, Randolph Yao, Murali Chintalapati, Arvind Krishnamurthy, Thomas E. Anderson |
NSDI | 10 |
| 2018 | Floem: A Programming System for NIC-Accelerated Network Applications
Phitchaya Mangpo Phothilimthana, Ming Liu 0027, Antoine Kaufmann, Simon Peter 0001, Rastislav Bodík, Thomas E. Anderson |
OSDI | 6 |
| 2017 | Evaluating the Power of Flexible Packet Processing for Network Resource Allocation
Naveen Kr. Sharma, Antoine Kaufmann, Thomas E. Anderson, Arvind Krishnamurthy, Jacob Nelson 0001, Simon Peter 0001 |
NSDI | 3 |
| 2017 | RAIL: A Case for Redundant Arrays of Inexpensive Links in Data Center Networks
Danyang Zhuo, Manya Ghobadi, Ratul Mahajan, Amar Phanishayee, Xuan Kelvin Zou, Hang Guan, Arvind Krishnamurthy, Thomas E. Anderson |
NSDI | 8 |
| 2017 | Understanding and Mitigating Packet Corruption in Data Center NetworksabstractWe take a comprehensive look at packet corruption in data center networks, which leads to packet losses and application performance degradation. By studying 350K links across 15 production data centers, we find that the extent of corruption losses is significant and that its characteristics differ markedly from congestion losses. Corruption impacts fewer links than congestion, but imposes a heavier loss rate; and unlike congestion, corruption rate on a link is stable over time and is not correlated with its utilization. Danyang Zhuo, Manya Ghobadi, Ratul Mahajan, Klaus-Tycho Förster, Arvind Krishnamurthy, Thomas E. Anderson |
SIGCOMM | 6 |
| 2017 | Strata: A Cross Media File SystemabstractCurrent hardware and application storage trends put immense pressure on the operating system's storage subsystem. On the hardware side, the market for storage devices has diversified to a multi-layer storage topology spanning multiple orders of magnitude in cost and performance. Above the file system, applications increasingly need to process small, random IO on vast data sets with low latency, high throughput, and simple crash consistency. File systems designed for a single storage layer cannot support all of these demands together. Youngjin Kwon, Henrique Fingler, Tyler Hunt, Simon Peter 0001, Emmett Witchel, Thomas E. Anderson |
SOSP | 6 |
| 2016 | High Performance Packet Processing with FlexNICabstractThe recent surge of network I/O performance has put enormous pressure on memory and software I/O processing sub systems. We argue that the primary reason for high memory and processing overheads is the inefficient use of these resources by current commodity network interface cards (NICs). We propose FlexNIC, a flexible network DMA interface that can be used by operating systems and applications alike to reduce packet processing overheads. FlexNIC allows services to install packet processing rules into the NIC, which then executes simple operations on packets while exchanging them with host memory. Thus, our proposal moves some of the packet processing traditionally done in software to the NIC, where it can be done flexibly and at high speed. Antoine Kaufmann, Simon Peter 0001, Naveen Kr. Sharma, Thomas E. Anderson, Arvind Krishnamurthy |
ASPLOS | 4 |
| 2016 | Radiatus: a Shared-Nothing Server-Side Web ArchitectureabstractWeb applications are a frequent target of successful attacks. In most web frameworks, the damage is amplified by the fact that application code is responsible for security enforcement. In this paper, we design and evaluate Radiatus, a shared-nothing web framework where application-specific computation and storage on the server is contained within a sandbox with the privileges of the end-user. By strongly isolating users, user data and service availability can be protected from application vulnerabilities. Raymond Cheng 0001, William Scott 0002, Paul M. Ellenbogen, Jon Howell, Franziska Roesner, Arvind Krishnamurthy, Thomas E. Anderson |
SoCC | 7 |
| 2016 | Planning for change in a formal verification of the raft consensus protocolabstractWe present the first formal verification of state machine safety for the Raft consensus protocol, a critical component of many distributed systems. We connected our proof to previous work to establish an end-to-end guarantee that our implementation provides linearizable state machine replication. This proof required iteratively discovering and proving 90 system invariants. Our verified implementation is extracted to OCaml and runs on real networks. The primary challenge we faced during the verification process was proof maintenance, since proving one invariant often required strengthening and updating other parts of our proof. To address this challenge, we propose a methodology of planning for change during verification. Our methodology adapts classical information hiding techniques to the context of proof assistants, factors out common invariant-strengthening patterns into custom induction principles, proves higher-order lemmas that show any property proved about a particular component implies analogous properties about related components, and makes proofs robust to change using structural tactics. We also discuss how our methodology may be applied to systems verification more broadly. Doug Woos, James R. Wilcox, Steve Anton, Zachary Tatlock, Michael D. Ernst, Thomas E. Anderson |
CPP | 6 |
| 2016 | Rack-level Congestion ControlabstractMany data center traffic patterns exhibit abundant concurrent connections and high churn. In the face of these characteristics, server-centric congestion control is a poor fit—each connection, no matter how small, must start from scratch when testing when and how much to send along a given path. This is despite the fact that there are a large number of flows that may have already probed the same exact path, not just at a server level, but also at a rack level. Thus, we argue for rack-level congestion control in which all connections are tunneled through rack-to-rack JumboFlows. This design allows an entire rack’s connections to cooperate with one another for better fairness and performance, particularly for short flows. In this paper, we examine situations in which JumboFlows might be useful and present a preliminary design of a system (RackCC) that implements JumboFlows. Danyang Zhuo, Qiao Zhang 0001, Vincent Liu 0001, Arvind Krishnamurthy, Thomas E. Anderson |
HotNets | 5 |
| 2016 | Satellite: Joint Analysis of CDNs and Network-Level Interference
Will Scott, Thomas E. Anderson, Tadayoshi Kohno, Arvind Krishnamurthy |
USENIX ATC | 2 |
| 2016 | Arrakis: The Operating System Is the Control PlaneabstractRecent device hardware trends enable a new approach to the design of network server operating systems. In a traditional operating system, the kernel mediates access to device hardware by server applications to enforce process isolation as well as network and disk security. We have designed and implemented a new operating system, Arrakis, that splits the traditional role of the kernel in two. Applications have direct access to virtualized I/O devices, allowing most I/O operations to skip the kernel entirely, while the kernel is re-engineered to provide network and disk protection without kernel mediation of every operation. We describe the hardware and software changes needed to take advantage of this new abstraction, and we illustrate its power by showing improvements of 2 to 5 × in latency and 9 × throughput for a popular persistent NoSQL store relative to a well-tuned Linux implementation. Simon Peter 0001, Jialin Li 0001, Irene Zhang, Dan R. K. Ports, Doug Woos, Arvind Krishnamurthy, Thomas E. Anderson, Timothy Roscoe |
ACM Trans. Comput. Syst. | 7 |
| 2015 | Subways: a case for redundant, inexpensive data center edge linksabstractAs network demand increases, data center network operators face a number of challenges including the need to add capacity to the network. Unfortunately, network upgrades can be an expensive proposition, particularly at the edge of the network where most of the network's cost lies. Vincent Liu 0001, Danyang Zhuo, Simon Peter 0001, Arvind Krishnamurthy, Thomas E. Anderson |
CoNEXT | 5 |
| 2015 | FlexNIC: Rethinking Network DMA
Antoine Kaufmann, Simon Peter 0001, Thomas E. Anderson, Arvind Krishnamurthy |
HotOS | 3 |
| 2015 | Verdi: a framework for implementing and formally verifying distributed systemsabstractDistributed systems are difficult to implement correctly because they must handle both concurrency and failures: machines may crash at arbitrary points and networks may reorder, drop, or duplicate packets. Further, their behavior is often too complex to permit exhaustive testing. Bugs in these systems have led to the loss of critical data and unacceptable service outages. We present Verdi, a framework for implementing and formally verifying distributed systems in Coq. Verdi formalizes various network semantics with different faults, and the developer chooses the most appropriate fault model when verifying their implementation. Furthermore, Verdi eases the verification burden by enabling the developer to first verify their system under an idealized fault model, then transfer the resulting correctness guarantees to a more realistic fault model without any additional proof burden. To demonstrate Verdi's utility, we present the first mechanically checked proof of linearizability of the Raft state machine replication algorithm, as well as verified implementations of a primary-backup replication system and a key-value store. These verified systems provide similar performance to unverified equivalents. James R. Wilcox, Doug Woos, Pavel Panchekha, Zachary Tatlock, Xi Wang 0005, Michael D. Ernst, Thomas E. Anderson |
PLDI | 7 |
| 2015 | MetaSync: File Synchronization Across Multiple Untrusted Storage Services
Seungyeop Han, Haichen Shen, Taesoo Kim, Arvind Krishnamurthy, Thomas E. Anderson, David Wetherall |
USENIX ATC | 5 |
| 2014 | Towards High-Performance Application-Level Storage Management
Simon Peter 0001, Jialin Li 0001, Irene Zhang, Dan R. K. Ports, Thomas E. Anderson, Arvind Krishnamurthy, Mark Zbikowski, Doug Woos |
HotStorage | 5 |
| 2014 | Arrakis: The Operating System is the Control Plane
Simon Peter 0001, Jialin Li 0001, Irene Zhang, Dan R. K. Ports, Doug Woos, Arvind Krishnamurthy, Thomas E. Anderson, Timothy Roscoe |
OSDI | 7 |
| 2014 | One tunnel is (often) enoughabstractA longstanding problem with the Internet is that it is vulnerable to outages, black holes, hijacking and denial of service. Although architectural solutions have been proposed to address many of these issues, they have had difficulty being adopted due to the need for widespread adoption before most users would see any benefit. This is especially relevant as the Internet is increasingly used for applications where correct and continuous operation is essential. Simon Peter 0001, Umar Javed, Qiao Zhang 0001, Doug Woos, Thomas E. Anderson, Arvind Krishnamurthy |
SIGCOMM | 5 |
| 2013 | Arrakis: A Case for the End of the Empire
Simon Peter 0001, Thomas E. Anderson |
HotOS | 2 |
| 2013 | F10: A Fault-Tolerant Engineered Network
Vincent Liu 0001, Daniel Halperin, Arvind Krishnamurthy, Thomas E. Anderson |
NSDI | 4 |
| 2013 | Expressive privacy control with pseudonymsabstractAs personal information increases in value, the incentives for remote services to collect as much of it as possible increase as well. In the current Internet, the default assumption is that all behavior can be correlated using a variety of identifying information, not the least of which is a user's IP address. Tools like Tor, Privoxy, and even NATs, are located at the opposite end of the spectrum and prevent any behavior from being linked. Instead, our goal is to provide users with more control over linkability---which activites of the user can be correlated at the remote services---not necessarily more anonymity. Seungyeop Han, Vincent Liu 0001, Qifan Pu, Simon Peter 0001, Thomas E. Anderson, Arvind Krishnamurthy, David Wetherall |
SIGCOMM | 5 |
| 2013 | PoiRoot: investigating the root cause of interdomain path changesabstractInterdomain path changes occur frequently. Because routing protocols expose insufficient information to reason about all changes, the general problem of identifying the root cause remains unsolved. In this work, we design and evaluate PoiRoot, a real-time system that allows a provider to accurately isolate the root cause (the network responsible) of path changes affecting its prefixes. First, we develop a new model describing path changes and use it to provably identify the set of all potentially responsible networks. Next, we develop a recursive algorithm that accurately isolates the root cause of any path change. We observe that the algorithm requires monitoring paths that are generally not visible using standard measurement tools. To address this limitation, we combine existing measurement tools in new ways to acquire path information required for isolating the root cause of a path change. We evaluate PoiRoot on path changes obtained through controlled Internet experiments, simulations, and "in-the-wild" measurements. We demonstrate that PoiRoot is highly accurate, works well even with partial information, and generally narrows down the root cause to a single network or two neighboring ones. On controlled experiments PoiRoot is 100% accurate, as opposed to prior work which is accurate only 61.7% of the time. Umar Javed, Ítalo S. Cunha, David R. Choffnes, Ethan Katz-Bassett, Thomas E. Anderson, Arvind Krishnamurthy |
SIGCOMM | 5 |
| 2012 | FreeDOM: a new baseline for the webabstractFree web services often face growing pains. In the current client-server access model, the cost of providing a service increases with its popularity. This leads organizations that want to provide services free-of-charge to rely to donations, advertisements, or mergers with larger companies to cope with operational costs. Raymond Cheng 0001, William Scott 0002, Arvind Krishnamurthy, Thomas E. Anderson |
HotNets | 4 |
| 2012 | LIFEGUARD: practical repair of persistent route failuresabstractThe Internet was designed to always find a route if there is a policy-compliant path. However, in many cases, connectivity is disrupted despite the existence of an underlying valid path. The research community has focused on short-term outages that occur during route convergence. There has been less progress on addressing avoidable long-lasting outages. Our measurements show that long-lasting events contribute significantly to overall unavailability. Ethan Katz-Bassett, Colin Scott, David R. Choffnes, Ítalo S. Cunha, Vytautas Valancius, Nick Feamster, Harsha V. Madhyastha, Thomas E. Anderson, Arvind Krishnamurthy |
SIGCOMM | 8 |
| 2011 | Machiavellian routing: improving internet availability with BGP poisoningabstractWe propose a new approach to mitigate disruptions of Internet connectivity. The Internet was designed to always find a route if there is a policy-compliant path; however, in many cases, connectivity is disrupted despite the existence of an underlying valid path. The research community has done considerable work on this problem, much of it focused on short-term outages that occur during route convergence. There has been less progress on addressing avoidable long-lasting outages. Our measurements show that long-lasting events contribute significantly to overall unavailability. Ethan Katz-Bassett, David R. Choffnes, Ítalo S. Cunha, Colin Scott, Thomas E. Anderson, Arvind Krishnamurthy |
HotNets | 5 |
| 2011 | Tor instead of IPabstractAs the Internet has become more popular, it has increasingly been a target and medium for monitoring, censorship, content discrimination, and denial of service. Although anonymizing overlays such as Tor [2] provide some help to end users in combating these trends, the overlays themselves have become targets in turn. In this paper, we take a fresh approach: instead of running Tor on top of IP, we propose to run Tor instead of IP. We ask: what might the Internet look like if privacy and censorship resistance had been designed in from scratch? To be practical, any proposal also needs to be robust to failures, achieve reasonable efficiency compared to today's Internet, and be consistent with ISP economic concerns. Although preliminary, we argue that our design achieves these goals. Vincent Liu 0001, Seungyeop Han, Arvind Krishnamurthy, Thomas E. Anderson |
HotNets | 4 |
| 2011 | ETTM: A Scalable Fault Tolerant Network Manager
Colin Dixon, Hardeep Uppal, Vjekoslav Brajkovic, Dane Brandon, Thomas E. Anderson, Arvind Krishnamurthy |
NSDI | 5 |
| 2011 | Scalable consistency in ScatterabstractDistributed storage systems often trade off strong semantics for improved scalability. This paper describes the design, implementation, and evaluation of Scatter, a scalable and consistent distributed key-value storage system. Scatter adopts the highly decentralized and self-organizing structure of scalable peer-to-peer systems, while preserving linearizable consistency even under adverse circumstances. Our prototype implementation demonstrates that even with very short node lifetimes, it is possible to build a scalable and consistent system with practical performance. Lisa Glendenning, Ivan Beschastnikh, Arvind Krishnamurthy, Thomas E. Anderson |
SOSP | 4 |
| 2010 | Retaining sandbox containment despite bugs in privileged memory-safe codeabstractFlaws in the standard libraries of secure sandboxes represent a major security threat to billions of devices worldwide. The standard libraries are hard to secure because they frequently need to perform low-level operations that are forbidden in untrusted application code. Existing designs have a single, large trusted computing base that contains security checks at the boundaries between trusted and untrusted code. Unfortunately, flaws in the standard library often allow an attacker to escape the security protections of the sandbox. Justin Cappos, Armon Dadgar, Jeff Rasley, Justin Samuel, Ivan Beschastnikh, Cosmin Barsan, Arvind Krishnamurthy, Thomas E. Anderson |
CCS | 8 |
| 2010 | Resolving IP aliases with prespecified timestampsabstractOperators and researchers want accurate router-level views of the Internet for purposes including troubleshooting and modeling. However, tools such as traceroute return IP addresses. Because routers may have dozens of IP addresses, or aliases, multiple measurements may return different addresses, obscuring whether they represent the same machine. While many techniques exist to address this issue by identifying some IP aliases, these techniques, even in combination, find only a subset of alias pairs. To improve this state, we design and evaluate a new alias resolution technique using the IP prespecified timestamp option. This option allows a sender to request timestamp val- ues from multiple IP addresses in the same probe. By careful arrangement of these IP addresses, we show that we can infer aliases in many cases. In this paper, we conduct a measurement study of how many routers support IP timestamps, demonstrating that enough honor the option to base our technique on it. Using our technique, and compared to the most accurate alias information available, we find that 94.7% of the aliases identified by our technique are true positives. Further, we show that our IP timestamp-based technique complements existing alias resolution techniques, providing significant gains by discovering previously unidentifiable aliases. Justine Sherry, Ethan Katz-Bassett, Mary Pimenova, Harsha V. Madhyastha, Thomas E. Anderson, Arvind Krishnamurthy |
Internet Measurement Conference | 5 |
| 2010 | Reverse traceroute
Ethan Katz-Bassett, Harsha V. Madhyastha, Vijay Kumar Adhikari, Colin Scott, Justine Sherry, Peter van Wesep, Thomas E. Anderson, Arvind Krishnamurthy |
NSDI | 7 |
| 2010 | Privacy-preserving P2P data sharing with OneSwarmabstractPrivacy -- the protection of information from unauthorized disclosure -- is increasingly scarce on the Internet. The lack of privacy is particularly true for popular peer-to-peer data sharing applications such as BitTorrent where user behavior is easily monitored by third parties. Anonymizing overlays such as Tor and Freenet can improve user privacy, but only at a cost of substantially reduced performance. Most users are caught in the middle, unwilling to sacrifice either privacy or performance. Tomas Isdal, Michael Piatek, Arvind Krishnamurthy, Thomas E. Anderson |
SIGCOMM | 4 |
| 2009 | Pitfalls for ISP-friendly P2P design
Michael Piatek, Harsha V. Madhyastha, John P. John, Arvind Krishnamurthy, Thomas E. Anderson |
HotNets | 5 |
| 2009 | An End to the Middle
Colin Dixon, Arvind Krishnamurthy, Thomas E. Anderson |
HotOS | 3 |
| 2009 | Moving beyond end-to-end path information to optimize CDN performanceabstractReplicating content across a geographically distributed set of servers and redirecting clients to the closest server in terms of latency has emerged as a common paradigm for improving client performance. In this paper, we analyze latencies measured from servers in Google's content distribution network (CDN) to clients all across the Internet to study the effectiveness of latency-based server selection. Our main result is that redirecting every client to the server with least latency does not suffice to optimize client latencies. First, even though most clients are served by a geographically nearby CDN node, a sizeable fraction of experience latencies several tens of milliseconds higher than other in the same region. Second, we find that queueing delays often override the benefits of a client interacting with a nearby server. Rupa Krishnan, Harsha V. Madhyastha, Sridhar Srinivasan, Sushant Jain, Arvind Krishnamurthy, Thomas E. Anderson, Jie Gao 0001 |
Internet Measurement Conference | 6 |
| 2009 | iPlane Nano: Path Prediction for Peer-to-Peer Applications
Harsha V. Madhyastha, Ethan Katz-Bassett, Thomas E. Anderson, Arvind Krishnamurthy, Arun Venkataramani |
NSDI | 3 |
| 2009 | Seattle: a platform for educational cloud computingabstractCloud computing is rapidly increasing in popularity. Companies such as RedHat, Microsoft, Amazon, Google, and IBM are increasingly funding cloud computing infrastructure and research, making it important for students to gain the necessary skills to work with cloud-based resources. This paper presents a free, educational research platform called Seattle that is community-driven, a common denominator for diverse platform types, and is broadly deployed. Justin Cappos, Ivan Beschastnikh, Arvind Krishnamurthy, Thomas E. Anderson |
SIGCSE | 4 |
| 2008 | Taking the sting out of carrier sense: interference cancellation for wireless LANsabstractA fundamental problem with unmanaged wireless networks is high packet loss rates and poor spatial reuse, especially with bursty traffic typical of normal use. To address these limitations, we explore the notion of interference cancellation for unmanaged networks - the ability for a single receiver to disambiguate and successfully receive simultaneous overlapping transmissions from multiple unsynchronized sources. We describe a practical algorithm for interference cancellation, and implement it for ZigBee using software radios. In this setting, we find that our techniques can reduce packet loss rate and substantially increase spatial reuse. With carrier sense set to prevent concurrent sends, our approach reduces the packet loss rate during collisions from 14% to 8% due to improved handling of hidden terminals. Conversely, disabling carrier sense reduces performance for only 7% of all pairs of links and increases the delivery rate for the median pair of links in our testbed by a factor of 1.8 due to improved spatial reuse. Daniel Halperin, Thomas E. Anderson, David Wetherall |
MobiCom | 2 |
| 2008 | Phalanx: Withstanding Multimillion-Node Botnets
Colin Dixon, Thomas E. Anderson, Arvind Krishnamurthy |
NSDI | 2 |
| 2008 | Consensus Routing: The Internet as a Distributed System. (Best Paper)
John P. John, Ethan Katz-Bassett, Arvind Krishnamurthy, Thomas E. Anderson, Arun Venkataramani |
NSDI | 4 |
| 2008 | Studying Black Holes in the Internet with Hubble
Ethan Katz-Bassett, Harsha V. Madhyastha, John P. John, Arvind Krishnamurthy, David Wetherall, Thomas E. Anderson |
NSDI | 6 |
| 2008 | One Hop Reputations for Peer to Peer File Sharing Workloads
Michael Piatek, Tomas Isdal, Arvind Krishnamurthy, Thomas E. Anderson |
NSDI | 4 |
| 2008 | TVA: a DoS-limiting network architecture
Xiaowei Yang 0001, David Wetherall, Thomas E. Anderson |
IEEE/ACM Trans. Netw. | 3 |
| 2007 | Interference Cancellation: Better Receivers for a New Wireless MAC
Daniel Halperin, M. Josie Ammer, Thomas E. Anderson, David Wetherall |
HotNets | 3 |
| 2007 | Profiling a million user dhtabstractDistributed hash tables (DHTs) provide scalable, key-based lookup of objects in dynamic network environments. Although DHTs have been studied extensively from an analytical perspective, only recently have wide deployments enabled empirical examination. This paper reports measurements of the Azureus BitTorrent client's DHT, which is in active use by more than 1 million nodes on a daily basis. The Azureus DHT operates on untrusted, unreliable end-hosts, offering a glimpse into the implementation challenges associated with making structured overlays work in practice. Our measurements provide characterizations of churn, overhead, and performance in this environment. We leverage these measurements to drive the design of a modified DHT lookup algorithm that reduces median DHT lookup time by an order of magnitude for a nominal increase in overhead. Jarret Falkner, Michael Piatek, John P. John, Arvind Krishnamurthy, Thomas E. Anderson |
Internet Measurement Conference | 5 |
| 2007 | Mutually Controlled Routing with Independent ISPs
Ratul Mahajan, David Wetherall, Thomas E. Anderson |
NSDI | 3 |
| 2007 | Do Incentives Build Robustness in BitTorrent? (Awarded Best Student Paper)
Michael Piatek, Tomas Isdal, Thomas E. Anderson, Arvind Krishnamurthy, Arun Venkataramani |
NSDI | 3 |
| 2007 | Leveraging BitTorrent for End Host Measurements
Tomas Isdal, Michael Piatek, Arvind Krishnamurthy, Thomas E. Anderson |
PAM | 4 |
| 2007 | Achieving convergence-free routing using failure-carrying packetsabstractCurrent distributed routing paradigms (such as link-state, distance-vector, and path-vector) involve a convergence process consisting of an iterative exploration of intermediate routes triggered by certain events such as link failures. The convergence process increases router load, introduces outages and transient loops, and slows reaction to failures. We propose a new routing paradigm where the goal is not to reduce the convergence times but rather to eliminate the convergence process completely. To this end, we propose a technique called Failure-Carrying Packets (FCP) that allows data packets to autonomously discover a working path without requiring completely up-to-date state in routers. Our simulations, performed using real-world failure traces and Rocketfuel topologies, show that: (a) the overhead of FCP is very low, (b) unlike traditional link-state routing (such as OSPF), FCP can provide both low loss-rate as well as low control overhead, (c) compared to prior work in backup path pre-computations, FCP provides better routing guarantees under failures despite maintaining lesser state at the routers. Karthik Lakshminarayanan, Matthew Caesar 0001, Murali Rangan, Thomas E. Anderson, Scott Shenker, Ion Stoica |
SIGCOMM | 4 |
| 2006 | Towards IP geolocation using delay and topology measurementsabstractWe present Topology-based Geolocation (TBG), a novel approach to estimating the geographic location of arbitrary Internet hosts. We motivate our work by showing that 1) existing approaches, based on end-to-end delay measurements from a set of landmarks, fail to outperform much simpler techniques, and 2) the error of these approaches is strongly determined by the distance to the nearest landmark, even when triangulation is used to combine estimates from different landmarks. Our approach improves on these earlier techniques by leveraging network topology, along with measurements of network delay, to constrain host position. We convert topology and delay data into a set of constraints, then solve for router and host locations simultaneously. This approach improves the consistency of location estimates, reducing the error substantially for structured networks in our experiments on Abilene and Sprint. For networks with insufficient structural constraints, our techniques integrate external hints that are validated using measurements before being trusted. Together, these techniques lower the median estimation error for our university-based dataset to 67 km vs. 228 km for the best previous approach. Ethan Katz-Bassett, John P. John, Arvind Krishnamurthy, David Wetherall, Thomas E. Anderson, Yatin Chawathe |
Internet Measurement Conference | 5 |
| 2006 | A structural approach to latency predictionabstractSeveral models have been recently proposed for predicting the latency of end to end Internet paths. These models treat the Internet as a black-box, ignoring its internal structure. While these models are simple, they can often fail systematically; for example, the most widely used models use metric embeddings that predict no benefit to detour routes even though half of all Internet routes can benefit from detours.In this paper, we adopt a structural approach that predicts path latency based on measurements of the Internet's routing topology, PoP connectivity, and routing policy. We find that our approach outperforms Vivaldi, the most widely used black-box model. Furthermore, unlike metric embeddings, our approach successfully predicts 65% of detour routes in the Internet. The number of measurements used in our approach is comparable with that required by black box techniques, but using traceroutes instead of pings. Harsha V. Madhyastha, Thomas E. Anderson, Arvind Krishnamurthy, Neil Spring, Arun Venkataramani |
Internet Measurement Conference | 2 |
| 2006 | PCP: Efficient Endpoint Congestion Control
Thomas E. Anderson, Andy Collins, Arvind Krishnamurthy, John Zahorjan |
NSDI | 1 |
| 2006 | iPlane: An Information Plane for Distributed Services
Harsha V. Madhyastha, Tomas Isdal, Michael Piatek, Colin Dixon, Thomas E. Anderson, Arvind Krishnamurthy, Arun Venkataramani |
OSDI | 5 |
| 2005 | Negotiation-Based Routing Between Neighboring ISPs
Ratul Mahajan, David Wetherall, Thomas E. Anderson |
NSDI | 3 |
| 2005 | A DoS-limiting network architectureabstractWe present the design and evaluation of TVA, a network architecture that limits the impact of Denial of Service (DoS) floods from the outset. Our work builds on earlier work on capabilities in which senders obtain short-term authorizations from receivers that they stamp on their packets. We address the full range of possible attacks against communication between pairs of hosts, including spoofed packet floods, network and host bottlenecks, and router state exhaustion. We use simulation to show that attack traffic can only degrade legitimate traffic to a limited extent, significantly outperforming previously proposed DoS solutions. We use a modified Linux kernel implementation to argue that our design can run on gigabit links using only inexpensive off-the-shelf hardware. Our design is also suitable for transition into practice, providing incremental benefit for incremental deployment. Xiaowei Yang 0001, David Wetherall, Thomas E. Anderson |
SIGCOMM | 3 |
| 2004 | System support for pervasive applicationsabstractPervasive computing provides an attractive vision for the future of computing. Computational power will be available everywhere. Mobile and stationary devices will dynamically connect and coordinate to seamlessly help people in accomplishing their tasks. For this vision to become a reality, developers must build applications that constantly adapt to a highly dynamic computing environment. To make the developers' task feasible, we present a system architecture for pervasive computing, called one.world. Our architecture provides an integrated and comprehensive framework for building pervasive applications. It includes services, such as discovery and migration, that help to build applications and directly simplify the task of coping with constant change. We describe our architecture and its programming model and reflect on our own and others' experiences with using it. Robert Grimm 0001, Janet Davis, Eric Lemar, Adam MacBeth, Steven Swanson, Thomas E. Anderson, Brian N. Bershad, Gaetano Borriello, Steve D. Gribble, David Wetherall |
ACM Trans. Comput. Syst. | 6 |
| 2004 | Measuring ISP topologies with rocketfuelabstractTo date, realistic ISP topologies have not been accessible to the research community, leaving work that depends on topology on an uncertain footing. In this paper, we present new Internet mapping techniques that have enabled us to measure router-level ISP topologies. Our techniques reduce the number of required traces compared to a brute-force, all-to-all approach by three orders of magnitude without a significant loss in accuracy. They include the use of BGP routing tables to focus the measurements, the elimination of redundant measurements by exploiting properties of IP routing, better alias resolution, and the use of DNS to divide each map into POPs and backbone. We collect maps from ten diverse ISPs using our techniques, and find that our maps are substantially more complete than those of earlier Internet mapping efforts. We also report on properties of these maps, including the size of POPs, distribution of router outdegree, and the interdomain peering structure. As part of this work, we release our maps to the community. Neil Spring, Ratul Mahajan, David Wetherall, Thomas E. Anderson |
IEEE/ACM Trans. Netw. | 4 |
| 2003 | On the Stability of Adaptive Routing in the Presence of Congestion ControlabstractEfficient use of network resources has long been an important problem for large-scale network operators. To this end, several recent research efforts have proposed automated methods for optimizing routes based on traffic measurements. However, these efforts have not considered the stability of the dual feedback control mechanisms of adaptive routing and congestion control, when operating together. In this paper, we demonstrate that an important class of adaptive routing algorithms can yield stable optimal routes in the presence of congestion control, provided that either the congestion control mechanism is fair or the network workload behaves under reasonable constraints. We further show that one or the other of these assumptions is necessary for this class of adaptive routing algorithms -otherwise, unstable, sub-optimal routes may result in some pathological cases. Eric J. Anderson, Thomas E. Anderson |
INFOCOM | 2 |
| 2003 | The causes of path inflationabstractResearchers have shown that the Internet exhibits path inflation -- end-to-end paths can be significantly longer than necessary. We present a trace-driven study of 65 ISPs that characterizes the root causes of path inflation, namely topology and routing policy choices within an ISP, between pairs of ISPs, and across the global Internet. To do so, we develop and validate novel techniques to infer intra-domain and peering policies from end-to-end measurements. We provide the first measured characterization of ISP peering policies. In addition to "early-exit," we observe a significant degree of helpful non-early-exit, load-balancing, and other policies in use between peers. We find that traffic engineering (the explicit addition of policy constraints on top of topology constraints) is widespread in both intra- and inter-domain routing. However, intra-domain traffic engineering has minimal impact on path inflation, while peering policies and inter-domain routing lead to significant inflation. We argue that the underlying cause of inter-domain path inflation is the lack of BGP policy controls to provide convenient engineering of good paths across ISPs. Neil Spring, Ratul Mahajan, Thomas E. Anderson |
SIGCOMM | 3 |
| 2003 | User-level internet path diagnosisabstractDiagnosing faults in the Internet is arduous and time-consuming, in part because the network is composed of diverse components spread across many administrative domains. We consider an extreme form of this problem: can end users, with no special privileges, identify and pinpoint faults inside the network that degrade the performance of their applications? To answer this question, we present both an architecture for user-level Internet path diagnosis and a practical tool to diagnose paths in the current Internet. Our architecture requires only a small amount of network support, yet it is nearly as complete as analyzing a packet trace collected at all routers along the path. Our tool, tulip, diagnoses reordering, loss and significant queuing events by leveraging well deployed but little exploited router features that approximate our architecture. Tulip can locate points of reordering and loss to within three hops and queuing to within four hops on most paths that we measured. This granularity is comparable to that of a hypothetical network tomography tool that uses 65 diverse hosts to localize faults on a given path. We conclude by proposing several simple changes to the Internet to further improve its diagnostic capabilities. Ratul Mahajan, Neil Spring, David Wetherall, Thomas E. Anderson |
SOSP | 4 |
| 2002 | Inferring link weights using end-to-end measurementsabstractWe describe a novel constraint-based approach to approximate ISP link weights using only end-to-end measurements. Common routing protocols such as OSPF and IS-IS choose least-cost paths using link weights, so inferred weights provide a simple, concise, and useful model of intradomain routing. Our approach extends router-level ISP maps, which include only connectivity, with link weights that are consistent with routing. Our inferred weights agree well with observed routing: while our inferred weights fully characterize the set of shortest paths between 84--99% of the router-pairs, alternative models based on hop count and latency do so for only 47--81% of the pairs. Ratul Mahajan, Neil Spring, David Wetherall, Thomas E. Anderson |
Internet Measurement Workshop | 4 |
| 2002 | Understanding BGP misconfigurationabstractIt is well-known that simple, accidental BGP configuration errors can disrupt Internet connectivity. Yet little is known about the frequency of misconfiguration or its causes, except for the few spectacular incidents of widespread outages. In this paper, we present the first quantitative study of BGP misconfiguration. Over a three week period, we analyzed routing table advertisements from 23 vantage points across the Internet backbone to detect incidents of misconfiguration. For each incident we polled the ISP operators involved to verify whether it was a misconfiguration, and to learn the cause of the incident. We also actively probed the Internet to determine the impact of misconfiguration on connectivity.Surprisingly, we find that configuration errors are pervasive, with 200-1200 prefixes (0.2-1.0% of the BGP table size) suffering from misconfiguration each day. Close to 3 in 4 of all new prefix advertisements were results of misconfiguration. Fortunately, the connectivity seen by end users is surprisingly robust to misconfigurations. While misconfigurations can substantially increase the update load on routers, only one in twenty five affects connectivity. While the causes of misconfiguration are diverse, we argue that most could be prevented through better router design. Ratul Mahajan, David Wetherall, Thomas E. Anderson |
SIGCOMM | 3 |
| 2001 | Systems Directions for Pervasive ComputingabstractPervasive computing, with its focus on users and their tasks rather than on computing devices and technology, provides an attractive vision for the future of computing. But, while hardware and networking infrastructure to realize this vision are becoming a reality, precious few applications run in this infrastructure. We believe that this lack of applications stems largely from the fact that it is currently too hard to design, build, and deploy applications in the pervasive computing space. In this paper, we argue that existing approaches to distributed computing are flawed along three axes when applied to pervasive computing; we sketch out alternatives that are better suited for this space. First, application data and functionality need to be kept separate, so that they can evolve gracefully, in a global computing infrastructure. Second, applications need to be able to acquire any resource they need at any time, so that they can continuously provide their services in a highly dynamic environment. Third, pervasive computing requires a common system platform, allowing applications to be run across the range of devices and to be automatically distributed and installed. Robert Grimm 0001, Janet Davis, Ben Hendrickson, Eric Lemar, Adam MacBeth, Steven Swanson, Thomas E. Anderson, Brian N. Bershad, Gaetano Borriello, Steve D. Gribble, David Wetherall |
HotOS | 7 |
| 2001 | Robust Congestion SignalingabstractWe present an improved explicit congestion notification (ECN) mechanism that enables a router to signal congestion to the sender without trusting the receiver or other network devices along the signaling path. Without our mechanism, ECN-based transports can be manipulated to undermine congestion control. Web clients seeking faster downloads, for example, can trivially conceal congestion signals from Web servers. A misbehaving connection would exceed its fair bandwidth share at the expense of competing traffic by as much as an order of magnitude in our simulations. Our improved mechanism is robust because it does not depend on correct implementation at locations other than the sender and marking router, and it is practical because it admits an efficient implementation that is backwards-compatible with prior ECN and TCP/IP mechanisms. David Ely, Neil Spring, David Wetherall, Stefan Savage, Thomas E. Anderson |
ICNP | 5 |
| 2001 | Network support for IP tracebackabstractThis paper describes a technique for tracing anonymous packet flooding attacks in the Internet back toward their source. This work is motivated by the increased frequency and sophistication of denial-of-service attacks and by the difficulty in tracing packets with incorrect, or "spoofed," source addresses. We describe a general purpose traceback mechanism based on probabilistic packet marking in the network. Our approach allows a victim to identify the network path(s) traversed by attack traffic without requiring interactive operational support from Internet service providers (ISPs). Moreover, this traceback can be performed "post mortem"-after an attack has completed. We present an implementation of this technology that is incrementally deployable, (mostly) backward compatible, and can be efficiently implemented using conventional technology. Stefan Savage, David Wetherall, Anna R. Karlin, Thomas E. Anderson |
IEEE/ACM Trans. Netw. | 4 |
| 2000 | Understanding the Performance of TCP PacingabstractMany researchers have observed that TCP's congestion control mechanisms can lead to bursty traffic flows on modern high-speed networks, with a negative impact on overall network efficiency. A proposed solution to this problem is to evenly space, or "pace", data sent into the network over an entire round-trip time, so that data is not sent in a burst. In this paper, we quantitatively evaluate this approach. Pacing offers better fairness, throughput, and lower drop rates in some situations. However, we show that contrary to intuition, pacing often has significantly worse throughput than regular TCP because it is susceptible to synchronized losses and it delays congestion signals. We propose and evaluate approaches for eliminating this effect. Amit Aggarwal, Stefan Savage, Thomas E. Anderson |
INFOCOM | 3 |
| 2000 | Modeling TCP LatencyabstractSeveral analytic models describe the steady-state throughput of bulk transfer TCP flows as a function of round trip time and packet loss rate. These models describe flows based on the assumption that they are long enough to sustain many packet losses. However, most TCP transfers across today's Internet are short enough to see few, if any, losses and consequently their performance is dominated by startup effects such as connection establishment and slow start. This paper extends the steady-state model proposed in Padhye et al. (1998), in order to capture these startup effects. The extended model characterizes the expected value and distribution of TCP connection establishment and data transfer latency as a function of transfer size, round trip time, and packet loss rate. Using simulations, controlled measurements of TCP transfers, and live Web measurements we show that, unlike earlier steady-state models for TCP performance, our extended model describes connection establishment and data transfer latency under a range of packet loss conditions, including no loss. Neal Cardwell, Stefan Savage, Thomas E. Anderson |
INFOCOM | 3 |
| 2000 | Receiver Based Management of Low Bandwidth Access LinksabstractIn this paper, we describe a receiver-based congestion control policy that leverages TCP flow control mechanisms to prioritize mixed traffic loads across access links. We manage queueing at the access link to: (1) improve the response time of interactive network applications; (2) reduce congestion-related packet losses; while (3) maintaining high throughput for bulk-transfer applications. Our policy controls queue length by manipulating receive socket buffer sizes. We have implemented this solution in a dynamically loadable Linux kernel module, and tested it over low-bandwidth links. Our approach yields a 7-fold improvement in packet latency over an unmodified system while maintaining 94% link utilization. In the common case, congestion-related packet losses at the access link can be eliminated. Finally, by prioritizing short flows, we show that our system reduces the time to download a complex Web page during a large background transfer by a factor of two. Neil Spring, Maureen Chesire, Mark Berryman, Vivek Sahasranaman, Thomas E. Anderson, Brian N. Bershad |
INFOCOM | 5 |
| 2000 | Trading Capacity for Performance in a Disk Array
Benjamin Gum, Yuqun Chen, Randolph Y. Wang, Kai Li 0001, Arvind Krishnamurthy, Thomas E. Anderson |
OSDI | 7 |
| 2000 | Practical network support for IP tracebackabstractThis paper describes a technique for tracing anonymous packet flooding attacks in the Internet back towards their source. This work is motivated by the increased frequency and sophistication of denial-of-service attacks and by the difficulty in tracing packets with incorrect, or ``spoofed'', source addresses. In this paper we describe a general purpose traceback mechanism based on probabilistic packet marking in the network. Our approach allows a victim to identify the network path(s) traversed by attack traffic without requiring interactive operational support from Internet Service Providers (ISPs). Moreover, this traceback can be performed ``post-mortem'' -- after an attack has completed. We present an implementation of this technology that is incrementally deployable, (mostly) backwards compatible and can be efficiently implemented using conventional technology. Stefan Savage, David Wetherall, Anna R. Karlin, Thomas E. Anderson |
SIGCOMM | 4 |
| 2000 | A Comparison of File System Workloads
Drew S. Roselli, Jacob R. Lorch, Thomas E. Anderson |
USENIX ATC, General Track | 3 |
| 1999 | Next Century Challenges: Data-Centric Networking for Invisible ComputingabstractArticle Next century challenges: data-centric networking for invisible computing: the Portolano project at the University of Washington Share on Authors: Mike Esler Department of Computer Science and Engineering, University of Washington, Seattle Department of Computer Science and Engineering, University of Washington, SeattleView Profile , Jeffrey Hightower Department of Computer Science and Engineering, University of Washington, Seattle Department of Computer Science and Engineering, University of Washington, SeattleView Profile , Tom Anderson Department of Computer Science and Engineering, University of Washington, Seattle Department of Computer Science and Engineering, University of Washington, SeattleView Profile , Gaetano Borriello Department of Computer Science and Engineering, University of Washington, Seattle Department of Computer Science and Engineering, University of Washington, SeattleView Profile Authors Info & Claims MobiCom '99: Proceedings of the 5th annual ACM/IEEE international conference on Mobile computing and networkingAugust 1999 Pages 256–262https://doi.org/10.1145/313451.313553Online:01 August 1999Publication History 85citation1,248DownloadsMetricsTotal Citations85Total Downloads1,248Last 12 Months16Last 6 weeks3 Get Citation AlertsNew Citation Alert added!This alert has been successfully added and will be sent to:You will be notified whenever a record that you have chosen has been cited.To manage your alert preferences, click on the button below.Manage my AlertsNew Citation Alert!Please log in to your account Save to BinderSave to BinderCreate a New BinderNameCancelCreateExport CitationPublisher SiteGet Access Mike Esler, Jeffrey Hightower, Thomas E. Anderson, Gaetano Borriello |
MobiCom | 3 |
| 1999 | Virtual Log Based File Systems for a Programmable Disk
Randolph Y. Wang, Thomas E. Anderson, David A. Patterson 0001 |
OSDI | 2 |
| 1999 | The End-to-End Effects of Internet Path SelectionabstractThe path taken by a packet traveling across the Internet depends on a large number of factors, including routing protocols and per-network routing policies. The impact of these factors on the end-to-end performance experienced by users is poorly understood. In this paper, we conduct a measurement-based study comparing the performance seen using the "default" path taken in the Internet with the potential performance available using some alternate path. Our study uses five distinct datasets containing measurements of "path quality", such as round-trip time, loss rate, and bandwidth, taken between pairs of geographically diverse Internet hosts. We construct the set of potential alternate paths by composing these measurements to form new synthetic paths. We find that in 30-80% of the cases, there is an alternate path with significantly superior quality. We argue that the overall result is robust and we explore two hypotheses for explaining it. Stefan Savage, Andy Collins, Eric Hoffman, John Snell, Thomas E. Anderson |
SIGCOMM | 5 |
| 1998 | WebOS: Operating System Services for Wide Area ApplicationsabstractDemonstrates the power of providing a common set of operating system services to wide-area applications, including mechanisms for naming, persistent storage, remote process execution, resource management, authentication and security. On a single machine, application developers can rely on the local operating system to provide these abstractions. In the wide area, however, application developers are forced to build these abstractions themselves or to do without. This ad-hoc approach often results in individual programmers implementing non-optimal solutions, wasting both programmer effort and system resources. To address these problems, we are building a system, WebOS, that provides the basic operating systems services needed to build applications that are geographically distributed, highly available, incrementally scalable and dynamically reconfigurable. Experience with a number of applications developed under WebOS indicates that it simplifies system development and improves resource utilization. In particular, we use WebOS to implement Rent-A-Server to provide dynamic replication of overloaded Web services across the wide area in response to client demands. Amin Vahdat, Thomas E. Anderson, Michael Dahlin, Eshwar Belani, David E. Culler, Paul Eastham, Chad Yoshikawa |
HPDC | 2 |
| 1998 | Execution Characteristics of Desktop Applications on Windows NTabstractThis paper examines the performance of desktop applications running on the Microsoft Windows NT operating system on Intel x86 processors, and contrasts these applications to the programs in the integer SPEC95 benchmark suite. We present measurements of basic instruction set and program characteristics, and detailed simulation results of the way these programs use the memory system and processor branch architecture. We show that the desktop applications have similar characteristics to the integer SPEC95 benchmarks for many of these metrics, However compared to the integer SPEC95 applications, desktop applications have larger instruction working sets, execute instructions in a greater number of unique functions, cross DLL boundaries frequently, and execute a greater number of indirect calls. Dennis C. Lee, Patrick Crowley, Jean-Loup Baer, Thomas E. Anderson, Brian N. Bershad |
ISCA | 4 |
| 1998 | Modeling Communication Pipeline LatencyabstractIn this paper, we study how to minimize the latency of a message through a network that consists of a number of store-and-forward stages. This research is especially relevant for today's low overhead communication systems that employ dedicated processing elements for protocol processing. We develop an abstract pipeline model that reveals a crucial performance tradeoff involving the effects of the overhead of the bottleneck stage and the bandwidth of the remaining stages. We exploit this tradeoff to develop a suite of fragmentation algorithms designed to minimize message latency. We also provide an experimental methodology that enables the construction of customized pipeline algorithms that can adapt to the specific system characteristics and application workloads. By applying this methodology to the Myrinet-GAM system, we have improved its latency by up to 51%. Our theoretical framework is also applicable to pipelined systems beyond the context of high speed networks. Randolph Y. Wang, Arvind Krishnamurthy, Richard P. Martin, Thomas E. Anderson, David E. Culler |
SIGMETRICS | 4 |
| 1998 | SLIC: An Extensibility System for Commodity Operating Systems
Douglas P. Ghormley, Steven H. Rodrigues, David Petrou, Thomas E. Anderson |
USENIX ATC | 4 |
| 1998 | Transparent Result Caching
Amin Vahdat, Thomas E. Anderson |
USENIX ATC | 2 |
| 1998 | The CRISIS Wide Area Security Architecture
Eshwar Belani, Amin Vahdat, Thomas E. Anderson, Michael Dahlin |
USENIX Security Symposium | 3 |
| 1998 | A Quantitative Comparison of Iterative Scheduling Algorithms for Input-Queued SwitchesabstractIn this paper we quantitatively evaluate three iterative algorithms for scheduling cells in a high-bandwidth input-queued ATM switch. In particular, we compare the performance of an algorithm described previously – parallel iterative matching (PIM) – with two new algorithms: iterative round-robin matching with slip (iSLIP) and iterative least-recently used (iLRU). We also compare each algorithm against FIFO input-queueing and perfect output-queueing. For the synthetic workloads we consider, including uniform and bursty traffic, iSLIP performs almost identically to the other algorithms. Cases for which PIM and iSLIP perform poorly are presented, indicating that care should be taken when using these algorithms. But, we show that the implementation complexity of iSLIP is an order of magnitude less than for PIM, making it feasible to implement a 32×32 switch scheduler for iSLIP on a single chip. Nick McKeown, Thomas E. Anderson |
Comput. Networks | 2 |
| 1998 | GLUnix: A Global Layer Unix for a Network of WorkstationsabstractRecent improvements in network and workstation performance have made workstation clusters an attractive architecture for diverse workloads, including interactive sequential and parallel applications. Although viable hardware solutions are available today, the largest challenge in making such a cluster usable lies in the system software. This paper describes the design and implementation of GLUnix, operating system middleware for a cluster of workstations. GLUnix was designed to provide transparent remote execution, support for interactive parallel and sequential jobs, load ballancing, and backward compatibility for existing application binaries. GLUnix was constructed to be easily portable to a number of platforms. GLUnix has been in daily use for over two and a half years and is currently running on a 100-node cluster of Sun UltraSPARCs. This paper relates our experiences with designing, building, and operating GLUnix. We discuss three important design tradeoffs faced by any cluster system, and present the reasons for our choices. Each of these design decisions is then re-evaluated in light of both our experience and recent technological advancements. We then describe the user-level, centralized, event-driven architecture of GLUnix and highlight a number of aspects of the implementation. Performance and scalability measurements of the system indicate that a centralized, user-level design can scale gracefully to significant cluster sizes, incurring only an additional 220 μs of overhead per node for remote execution. The discussion focuses on the successes and failures we encountered while building and maintaining the system, including a characterization of the limitations of a user-level implementation and various features that were added to satisfy the user community. © 1998 John Wiley & Sons, Ltd. David Petrou, Steven H. Rodrigues, Amin Vahdat, Thomas E. Anderson |
Softw. Pract. Exp. | 4 |
| 1997 | The Energy Efficiency of IRAM ArchitecturesabstractPortable systems demand energy efficiency in order to maximize battery life. IRAM architectures, which combine DRAM and a processor on the same chip in a DRAM process, are more energy efficient than conventional systems. The high density of DRAM permits a much larger amount of memory on-chip than a traditional SRAM cache design in a logic process. This allows most or all IRAM memory accesses to be satisfied on-chip. Thus there is much less need to drive high-capacitance off-chip buses, which contribute significantly to the energy consumption of a system. To quantify this advantage we apply models of energy consumption in DRAM and SRAM memories to results from cache simulations of applications reflective of personal productivity tasks on low power systems. We find that IRAM memory hierarchies consume as little as 22% of the energy consumed by a conventional memory hierarchy for memory-intensive applications, while delivering comparable performance. Furthermore, the energy consumed by a system consisting of an IRAM memory hierarchy combined with an energy efficient CPU core is as little as 40% of that of the same CPU core with a traditional memory hierarchy. Richard Fromm, Stylianos Perissakis, Neal Cardwell, Christoforos E. Kozyrakis, Bruce McGaughy, David A. Patterson 0001, Thomas E. Anderson, Katherine A. Yelick |
ISCA | 7 |
| 1997 | Effects of Communication Latency, Overhead, and Bandwidth in a Cluster ArchitectureabstractThis work provides a systematic study of the impact of communication performance on parallel applications in a high performance network of workstations. We develop an experimental system in which the communication latency, overhead, and bandwidth can be independently varied to observe the effects on a wide range of applications. Our results indicate that current efforts to improve cluster communication performance to that of tightly integrated parallel machines results in significantly improved application performance. We show that applications demonstrate strong sensitivity to overhead, slowing down by a factor of 60 on 32 processors when overhead is increased from 3 to 103 µs. Applications in this study are also sensitive to per-message bandwidth, but are surprisingly tolerant of increased latency and lower per-byte bandwidth. Finally, most applications demonstrate a highly linear dependence to both overhead and per-message bandwidth, indicating that further improvements in communication performance will continue to improve application performance. Richard P. Martin, Amin Vahdat, David E. Culler, Thomas E. Anderson |
ISCA | 4 |
| 1997 | Improving the Performance of Log-Structured File Systems with Adaptive MethodsabstractArticle Free Access Share on Improving the performance of log-structured file systems with adaptive methods Authors: Jeanna Neefe Matthews Computer Science Division, University of California, Berkeley Computer Science Division, University of California, BerkeleyView Profile , Drew Roselli Computer Science Division, University of California, Berkeley Computer Science Division, University of California, BerkeleyView Profile , Adam M. Costello Computer Science Division, University of California, Berkeley Computer Science Division, University of California, BerkeleyView Profile , Randolph Y. Wang Computer Science Division, University of California, Berkeley Computer Science Division, University of California, BerkeleyView Profile , Thomas E. Anderson Computer Science Division, University of California, Berkeley Computer Science Division, University of California, BerkeleyView Profile Authors Info & Claims SOSP '97: Proceedings of the sixteenth ACM symposium on Operating systems principlesOctober 1997Pages 238–251https://doi.org/10.1145/268998.266700Published:01 October 1997Publication History 102citation1,857DownloadsMetricsTotal Citations102Total Downloads1,857Last 12 Months115Last 6 weeks19 Get Citation AlertsNew Citation Alert added!This alert has been successfully added and will be sent to:You will be notified whenever a record that you have chosen has been cited.To manage your alert preferences, click on the button below.Manage my AlertsNew Citation Alert!Please log in to your account Publisher SiteeReaderPDF Jeanna Matthews, Drew S. Roselli, Adam M. Costello, Randolph Y. Wang, Thomas E. Anderson |
SOSP | 5 |
| 1997 | Eraser: A Dynamic Data Race Detector for Multi-Threaded ProgramsabstractArticle Eraser: a dynamic data race detector for multi-threaded programs Share on Authors: Stefan Savage Department of Computer Science and Engineering, University of Washington, Seattle Department of Computer Science and Engineering, University of Washington, SeattleView Profile , Michael Burrows Digital Equipment Corporation, Systems Research Center Digital Equipment Corporation, Systems Research CenterView Profile , Greg Nelson Digital Equipment Corporation, Systems Research Center Digital Equipment Corporation, Systems Research CenterView Profile , Patrick Sobalvarro Digital Equipment Corporation, Systems Research Center Digital Equipment Corporation, Systems Research CenterView Profile , Thomas Anderson Computer Science Division, University of California, Berkeley Computer Science Division, University of California, BerkeleyView Profile Authors Info & Claims SOSP '97: Proceedings of the sixteenth ACM symposium on Operating systems principlesOctober 1997 Pages 27–37https://doi.org/10.1145/268998.266641Published:01 October 1997 218citation1,521DownloadsMetricsTotal Citations218Total Downloads1,521Last 12 Months6Last 6 weeks0 Get Citation AlertsNew Citation Alert added!This alert has been successfully added and will be sent to:You will be notified whenever a record that you have chosen has been cited.To manage your alert preferences, click on the button below.Manage my AlertsNew Citation Alert!Please log in to your account Save to BinderSave to BinderCreate a New BinderNameCancelCreateExport CitationPublisher SiteGet Access Stefan Savage, Michael Burrows, Greg Nelson, Patrick Sobalvarro, Thomas E. Anderson |
SOSP | 5 |
| 1997 | Eraser: A Dynamic Data Race Detector for Multithreaded ProgramsabstractMultithreaded programming is difficult and error prone. It is easy to make a mistake in synchronization that produces a data race, yet it can be extremely hard to locate this mistake during debugging. This article describes a new tool, called Eraser, for dynamically detecting data races in lock-based multithreaded programs. Eraser uses binary rewriting techniques to monitor every shared-monory reference and verify that consistent locking behavior is observed. We present several case studies, including undergraduate coursework and a multithreaded Web search engine, that demonstrate the effectiveness of this approach. Stefan Savage, Michael Burrows, Greg Nelson, Patrick Sobalvarro, Thomas E. Anderson |
ACM Trans. Comput. Syst. | 5 |
| 1996 | Serverless Network File SystemsabstractWe propose a new paradigm for network file system design:serverless network file systems. While traditional network file systems rely on a central server machine, a serverless system utilizes workstations cooperating as peers to provide all file system services. Any machine in the system can store, cache, or control any block of data. Our approach uses this location independence, in combination with fast local area networks, to provide better performance and scalability than traditional file systems. Furthermore, because any machine in the system can assume the responsibilities of a failed component, our serverless design also provides high availability via redundatn data storage. To demonstrate our approach, we have implemented a prototype serverless network file system called xFS. Preliminary performance measurements suggest that our architecture achieves its goal of scalability. For instance, in a 32-node xFS system with 32 active clients, each client receives nearly as much read or write throughput as it would see if it were the only active client. Thomas E. Anderson, Michael Dahlin, Jeanna Matthews, David A. Patterson 0001, Drew S. Roselli, Randolph Y. Wang |
ACM Trans. Comput. Syst. | 1 |
| 1995 | A Case for NOW (Networks of Workstations) - AbstractabstractNo abstract available. David A. Patterson 0001, David E. Culler, Thomas E. Anderson |
PODC | 3 |
| 1995 | The Interaction of Parallel and Sequential Workloads on a Network of WorkstationsabstractThis paper examines the plausibility of using a network of workstations (NOW) for a mixture of parallel and sequential jobs. Through simulations, our study examines issues that arise when combining these two workloads on a single platform. Starting from a dedicated NOW just for parallel programs, we incrementally relax uniprogramming restrictions until we have a multi-programmed, multi-user NOW for both interactive sequential users and parallel programs. We show that a number of issues associated with the distributed NOW environment (e.g., daemon activity, coscheduling skew) can have a small but noticeable effect on parallel program performance. We also find that efficient migration to idle workstations is necessary to maintain acceptable parallel application performance. Furthermore, we present a methodology for deriving an optimal delay time for recruiting idle machines for use by parallel programs; this recruitment threshold was just 3 minutes for the research cluster we measured. Finally, we quantify the effects of the additional parallel load upon interactive users by keeping track of the potential number of user delays in our simulations. When we limit the maximum number of delays per user, we can still maintain acceptable parallel program performance. In summary, we find that for our workloads a 2:1 rule applies: a NOW cluster of approximately 60 machines can sustain a 32-node parallel workload in addition to the sequential load placed upon it by interactive users. Remzi H. Arpaci-Dusseau, Andrea C. Arpaci-Dusseau, Amin Vahdat, Lok T. Liu, Thomas E. Anderson, David A. Patterson 0001 |
SIGMETRICS | 5 |
| 1995 | Serverless Network File SystemsabstractArticle Serverless network file systems Share on Authors: T. E. Anderson Computer Science Division, University of California at Berkeley Computer Science Division, University of California at BerkeleyView Profile , M. D. Dahlin Computer Science Division, University of California at Berkeley Computer Science Division, University of California at BerkeleyView Profile , J. M. Neefe Computer Science Division, University of California at Berkeley Computer Science Division, University of California at BerkeleyView Profile , D. A. Patterson Computer Science Division, University of California at Berkeley Computer Science Division, University of California at BerkeleyView Profile , D. S. Roselli Computer Science Division, University of California at Berkeley Computer Science Division, University of California at BerkeleyView Profile , R. Y. Wang Computer Science Division, University of California at Berkeley Computer Science Division, University of California at BerkeleyView Profile Authors Info & Claims SOSP '95: Proceedings of the fifteenth ACM symposium on Operating systems principlesDecember 1995 Pages 109–126https://doi.org/10.1145/224056.224066Online:03 December 1995Publication History 255citation3,156DownloadsMetricsTotal Citations255Total Downloads3,156Last 12 Months71Last 6 weeks6 Get Citation AlertsNew Citation Alert added!This alert has been successfully added and will be sent to:You will be notified whenever a record that you have chosen has been cited.To manage your alert preferences, click on the button below.Manage my AlertsNew Citation Alert!Please log in to your account Save to BinderSave to BinderCreate a New BinderNameCancelCreateExport CitationPublisher SiteGet Access Thomas E. Anderson, Michael Dahlin, Jeanna Matthews, David A. Patterson 0001, Drew S. Roselli, Randolph Y. Wang |
SOSP | 1 |
| 1994 | Cooperative Caching: Using Remote Client Memory to Improve File System Performance
Michael Dahlin, Randolph Y. Wang, Thomas E. Anderson, David A. Patterson 0001 |
OSDI | 3 |
| 1994 | A Quantitative Analysis of Cache Policies for Scalable Network File SystemsabstractCurrent network file system protocols rely heavily on a central server to coordinate file activity among client workstations. This central server can become a bottleneck that limits scalability for environments with large numbers of clients. In central server systems such as NFS and AFS, all client writes, cache misses, and coherence messages are handled by the server. To keep up with this workload, expensive server machines are needed, configured with high-performance CPUs, memory systems, and I/O channels. Since the server stores all data, it must be physically capable of connecting to many disks. This reliance on a central server also makes current systems inappropriate for wide area network use where the network bandwidth to the server may be limited. Michael Dahlin, Clifford Mather, Randolph Y. Wang, Thomas E. Anderson, David A. Patterson 0001 |
SIGMETRICS | 4 |
| 1993 | Tools for the Development of Application-Specific Virtual Memory ManagementabstractThe operating system's virtual memory management policy is increasingly important to application performance because gains in processing speed are far outstripping improvements in disk latency. Indeed, large applications can gain large performance benefits from using a virtual memory policy tuned to their specific memory access patterns rather than a general policy provided by the operating system. As a result, a number of schemes have been proposed to allow for application-specific extensions to virtual memory management. These schemes have the potential to improve performance; however, to realize this performance gain, application developers must implement their own virtual memory module, a non-trivial programming task. Current operating systems and programming tools are inadequate for developing application-specific policies. Our work combines (i) an extensible user-level virtual memory system based on a metaobject protocol with (ii) an innovative graphical performance monitor to make the task of implementing a new application-specific page replacement policy considerably simpler. The techniques presented for opening up operating system virtual memory policy to user control are general; they could be used to build application-specific implementations of other operating system policies Keith Krueger, David Loftesness, Amin Vahdat, Thomas E. Anderson |
OOPSLA | 4 |
| 1993 | Effectiveness of Trace Sampling for Performance Debugging ToolsabstractRecently there has been a surge of interest in developing performance debugging tools to help programmers tune their applications for better memory performance [2, 4, 10]. These tools vary both in the detail of feedback provided to the user, and in the run-time overbead of using them. MemSpy [10] is a simulation-based tool which gives programmers detailed statistics on the memory system behavior of applications. It provides information on the frequency and causes of cache misses, and presents it in terms of source-level data and code objects with which the programmer is familiar. However, using MemSpy increases a program's execution time by roughly 10 to 40 fold. This overhead is generally acceptable for applications with execution times of several minutes or less, but it can be inconvenient when tuning applications with very long execution times.This paper examines the use of trace sampling techniques to reduce the execution time overhead of tools like MemSpy. When simulating one tenth of the references, we find that MemSpy's execution time overhead is improved by a factor of 4 to 6. That is, the execution time when using MemSpy is generally within a factor of 3 to 8 times the normal exwution time. With this improved performance, we observe only small errors in the performance statistics reported by MemSpy. On moderate sized caches of 16KB to 128KB, simulating as few as one tenth of the references (in samples of 0.5M references each) allows us to estimate the program's actual cache miss rate with an absolute error no greater than 0.3% on our five benchmarks. These errors are quite tolerable within the context of performance bugging. With larger caches we can also obtain good accuracy by using longer sample lengths. We conclude that, used with care, trace sampling is a powerful technique that makes possible performance debugging tools which provide both detailed memory statistics and low execution time overheads. Margaret Martonosi, Anoop Gupta, Thomas E. Anderson |
SIGMETRICS | 3 |
| 1993 | Efficient Software-Based Fault IsolationabstractOne way to provide fault isolation among cooperating software modules is to place each in its own address space. However, for tightly-coupled modules, this solution incurs prohibitive context switch overhead. In this paper, we present a software approach to implementing fault isolation within a single address space.Our approach has two parts. First, we load the code and data for a distrusted module into its own fault do main, a logically separate portion of the application's address space. Second, we modify the object code of a distrusted module to prevent it from writing or jumping to an address outside its fault domain. Both these software operations are portable and programming language independent.Our approach poses a tradeoff relative to hardware fault isolation: substantially faster communication between fault domains, at a cost of slightly increased execution time for distrusted modules. We demonstrate that for frequently communicating modules, implementing fault isolation in software rather than hardware can substantially improve end-to-end application performance. Robert Wahbe, Steven Lucco, Thomas E. Anderson, Susan L. Graham |
SOSP | 3 |
| 1993 | High Speed Switch Scheduling for Local Area NetworksabstractCurrent technology trends make it possible to build communication networks that can support high-performance distributed computing. This paper describes issues in the design of a prototype switch for an arbitrary topology point-to-point network with link speeds of up to 1 Gbit/s. The switch deals in fixed-length ATM-style cells, which it can process at a rate of 37 million cells per second. It provides high bandwidth and low latency for datagram traffic. In addition, it supports real-time traffic by providing bandwidth reservations with guaranteed latency bounds. The key to the switch's operation is a technique called parallel iterative matching , which can quickly identify a set of conflict-free cells for transmission in a time slot. Bandwidth reservations are accommodated in the switch by building a fixed schedule for transporting cells from reserved flows across the switch; parallel iterative matching can fill unused slots with datagram traffic. Finally, we note that parallel iterative matching may not allocate bandwidth fairly among flows of datagram traffic. We describe a technique called statistical matching , which can be used to ensure fairness at the switch and to support applications with rapidly changing needs for guaranteed bandwidth. Thomas E. Anderson, Susan S. Owicki, James B. Saxe, Charles P. Thacker |
ACM Trans. Comput. Syst. | 1 |
| 1992 | High Speed Switch Scheduling for Local Area NetworksabstractCurrent technology trends make it possible to build communication networks that can support high performance distributed computing. This paper describes issues in the design of a prototype switch for an arbitrary topology point-to-point network with link speeds of up to one gigabit per second. The switch deals in fixed-length ATM-style cells, which it can process at a rate of 37 million cells per second. It provides high bandwidth and low latency for datagram traffic. In addition, it supports real-time traffic by providing bandwidth reservations with guaranteed latency bounds. The key to the switch''s operation is a technique called iterative matching, which can quickly identify a set of conflict-free cells for transmission in a time slot. Bandwidth reservations are accommodated in the switch by building a fixed schedule for transporting cells from reserved flows across the switch; parallel iterative matching can fill unused slots with datagram traffic. Finally, we note that parallel iterative matching may not allocate bandwidth fairly among flows of datagram traffic. We describe a technique called statistical matching, which can be used to ensure fairness at the switch and to support applications with rapidly changing needs for guaranteed bandwidth. Thomas E. Anderson, Susan S. Owicki, James B. Saxe, Charles P. Thacker |
ASPLOS | 1 |
| 1992 | MemSpy: Analyzing Memory System Bottlenecks in ProgramsabstractTo cope with the increasing difference between processor and main memory speeds, modern computer systems use deep memory hierarchies. In the presence of such hierarchies, the performance attained by an application is largely determined by its memory reference behavior—if most references hit in the cache, the performance is significantly higher than if most references have to go to main memory. Frequently, it is possible for the programmer to restructure the data or code to achieve better memory reference behavior. Unfortunately, most existing performance debugging tools do not assist the programmer in this component of the overall performance tuning task. Margaret Martonosi, Anoop Gupta, Thomas E. Anderson |
SIGMETRICS | 3 |
| 1992 | Scheduler Activations: Effective Kernel Support for the User-Level Management of ParallelismabstractThreadsare the vehicle for concurrency in many approaches to parallel programming. Threads can be supported either by the operating system kernel or by user-level library code in the application address space, but neither approach has been fully satisfactory. This paper addresses this dilemma. First, we argue that the performance of kernel threads isinherentlyworse than that of user-level threads, rather than this being an artifact of existing implementations; managing parallelism at the user level is essential to high-performance parallel computing. Next, we argue that the problems encountered in integrating user-level threads with other system services is a consequence of the lack of kernel support for user-level threads provided by contemporary multiprocessor operating systems; kernel threads are thewrong abstractionon which to support user-level management of parallelism. Finally, we describe the design, implementation, and performance of a new kernel interface and user-level thread package that together provide the same functionality as kernel threads without compromising the performance and flexibility advantages of user-level management of parallelism. Thomas E. Anderson, Brian N. Bershad, Edward D. Lazowska, Henry M. Levy |
ACM Trans. Comput. Syst. | 1 |
| 1991 | The Interaction of Architecture and Operating System DesignabstractToday's high-performance RISC microprocessors have been highly tuned for integer and floating point application performance.These architectures have paid less attention to operating system requirements.At the same time, new operating system designs often have overlooked modern archi- Thomas E. Anderson, Henry M. Levy, Brian N. Bershad, Edward D. Lazowska |
ASPLOS | 1 |
| 1991 | Scheduler Activations: Effective Kernel Support for the User-Level Management of ParallelismabstractThreads are the vehicle for concurrency in many approaches to parallel programming. Threads separate the notion of a sequential execution stream from the other aspects of traditional UNIX-like processes, such as address spaces and I/O descriptors. The objective of this separation is to make the expression and control of parallelism sufficiently cheap that the programmer or compiler can exploit even fine-grained parallelism with acceptable overhead.Threads can be supported either by the operating system kernel or by user-level library code in the application address space, but neither approach has been fully satisfactory. This paper addresses this dilemma. First, we argue that the performance of kernel threads is inherently worse than that of user-level threads, rather than this being an artifact of existing implementations; we thus argue that managing parallelism at the user level is essential to high-performance parallel computing. Next, we argue that the lack of system integration exhibited by user-level threads is a consequence of the lack of kernel support for user-level threads provided by contemporary multiprocessor operating systems; we thus argue that kernel threads or processes, as currently conceived, are the wrong abstraction on which to support user-level management of parallelism. Finally, we describe the design, implementation, and performance of a new kernel interface and user-level thread package that together provide the same functionality as kernel threads without compromising the performance and flexibility advantages of user-level management of parallelism. Thomas E. Anderson, Brian N. Bershad, Edward D. Lazowska, Henry M. Levy |
SOSP | 1 |
| 1991 | User-Level Interprocess Communication for Shared Memory Multiprocessorsabstractthis paper, provides safe and efficient communication between address spaces on the same machine without kernel mediation. URPC isolates from one other the three components of interprocess communication: processor reallocation, thread management, and data transfer. Control transfer between address spaces, which is the communication abstraction presented to the programmer, is implemented through a combination of thread management and processor reallocation. Only processor reallocation requires kernel volvement; thread management and data transfer do not. Thread management and interprocess communication are done by application~level libraries, rather than by the kernel Brian N. Bershad, Thomas E. Anderson, Edward D. Lazowska, Henry M. Levy |
ACM Trans. Comput. Syst. | 2 |
| 1990 | Quartz: A Tool for Tuning Parallel Program PerformanceabstractInitial implementations of parallel programs typically yield disappointing performance. Tuning to improve performance is thus a significant part of the parallel programming process. The effort required to tune a parallel program, and the level of performance that eventually is achieved, both depend heavily on the quality of the instrumentation that is available to the programmer. Thomas E. Anderson, Edward D. Lazowska |
SIGMETRICS | 1 |
| 1990 | Lightweight Remote Procedure CallabstractLightweight Remote Procedure Call (LRPC) is a communication facility designed and optimized for communication between protection domains on the same machine. In contemporary small-kernel operating systems, existing RPC systems incur an unnecessarily high cost when used for the type of communication that predominates—between protection domains on the same machine. This cost leads system designers to coalesce weakly related subsystems into the same protection domain, trading safety for performance. By reducing the overhead of same-machine communication, LRPC encourages both safety and performance. LRPC combines the control transfer and communication model of capability systems with the programming semantics and large-grained protection model of RPC. LRPC achieves a factor-of-three performance improvement over more traditional approaches based on independent threads exchanging messages, reducing the cost of same-machine communication to nearly the lower bound imposed by conventional hardware. LRPC has been integrated into the Taos operating system of the DEC SRC Firefly multiprocessor workstation. Brian N. Bershad, Thomas E. Anderson, Edward D. Lazowska, Henry M. Levy |
ACM Trans. Comput. Syst. | 2 |
| 1990 | The Performance of Spin Lock Alternatives for Shared-Memory MultiprocessorsabstractThe author examines the questions of whether there are efficient algorithms for software spin-waiting given hardware support for atomic instructions, or whether more complex kinds of hardware support are needed for performance. He considers the performance of a number of software spin-waiting algorithms. Arbitration for control of a lock is in many ways similar to arbitration for control of a network connecting a distributed system. He applies several of the static and dynamic arbitration methods originally developed for networks to spin locks. A novel method is proposed for explicitly queueing spinning processors in software by assigning each a unique number when it arrives at the lock. Control of the lock can then be passed to the next processor in line with minimal effect on other processors.> Thomas E. Anderson |
IEEE Trans. Parallel Distributed Syst. | 1 |
| 1989 | The Performance Implications of Spin-Waiting Alternatives for Shared-Memory Multiprocessors
Thomas E. Anderson |
ICPP (2) | 1 |
| 1989 | The Performance Implications of Thread Management Alternatives for Shared-Memory MultiprocessorsabstractThreads (“lightweight” processes) have become a common element of new languages and operating systems. This paper examines the performance implications of several data structure and algorithm alternatives for thread management in shared-memory multiprocessors. Both experimental measurements and analytical model projections are presented. Thomas E. Anderson, Edward D. Lazowska, Henry M. Levy |
SIGMETRICS | 1 |
| 1989 | Lightweight Remote Procedure CallabstractLightweight Remote Procedure Call (LRPC) is a communication facility designed and optimized for communication between protection domains on the same machine. Brian N. Bershad, Thomas E. Anderson, Edward D. Lazowska, Henry M. Levy |
SOSP | 2 |
| 1989 | The Performance Implications of Thread Management Alternatives for Shared-Memory MultiprocessorsabstractAn examination is made of the performance implications of several data structure and algorithm alternatives for thread management in shared-memory multiprocessors. Both experimental measurements and analytical model projections are presented. For applications with fine-grained parallelism, small differences in thread management are shown to have significant performance impact, often posing a tradeoff between throughput and latency. Per-processor data structures can be used to to improve throughput, and in some circumstances to avoid locking, improving latency as well. The method used by processors to queue for locks is also shown to affect performance significantly. Normal methods of critical resource waiting can substantially degrade performance with moderate numbers of waiting processors. The authors present an Ethernet-style backoff algorithm that largely eliminates this effect.> Thomas E. Anderson, Edward D. Lazowska, Henry M. Levy |
IEEE Trans. Computers | 1 |