John R. Douceur

dblp:87/1231 · DBLP profile ↗
← Back
34ranked-venue papers
17as first author
0since 2021 · last 2017
—ORCID · none

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

Systems, architecture and hardware · 15 · 6 first-authorSoftware engineering, systems software and programming languages · 8 · 5 first-authorComputer networks · 7 · 4 first-authorSecurity and privacy · 4 · 2 first-authorDatabases, data management, data science and information retrieval · 2Theory of computation · 1 · 1 first-author

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

Computer architecture, parallel and distributed computing, and storage systems
18 papers
Distributed systems · 37% Storage systems · 31% Performance modeling and evaluation · 12%
Computer networks
6 papers
Network measurement and analytics · 39% Internet architecture and protocols · 34% Network optimization and economics · 20%
Network and information security
6 papers
Web and mobile security · 28% Hardware security and side channels · 26% Systems and software security · 21%
Software engineering, system software, and programming languages
5 papers
Operating systems · 87% Concurrent programming · 11% Programming languages and type systems · 2%
Databases, data mining, and information retrieval
1 paper
Distributed and cloud data management · 77% Database system architecture and tuning · 23%

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

TopicWeightPapersLastEvidence papers
Network measurement and analytics
bandwidth estimation
0.332010
Collaborative Measurements of Upload Speeds in P2P Systems · INFOCOM 2010
Brief announcement: collaborative measurement of upload speeds in P2P systems · PODC 2009
ThunderDome: discovering upload constraints using decentralized bandwidth tournaments · CoNEXT 2009
Distributed and cloud data management › distributed data store
distributed file system
0.312017
Azure Data Lake Store: A Hyperscale Distributed File Service for Big Data Analytics · SIGMOD Conference 2017
Performance modeling and evaluation
workload characterization
0.242011
A five-year study of file-system metadata · ACM Trans. Storage 2007
A Five-Year Study of File-System Metadata · FAST 2007
Cycles, cells and platters: an empirical analysisof hardware failures on a million consumer PCs · EuroSys 2011
Distributed systems
peer-to-peer systems
0.232009
ThunderDome: discovering upload constraints using decentralized bandwidth tournaments · CoNEXT 2009
Donnybrook: enabling large-scale, high-speed, peer-to-peer games · SIGCOMM 2008
Lottery trees: motivational deployment of networked systems · SIGCOMM 2007
Operating systems › resource management › process management
application launch
0.212014
Missive: Fast Application Launch From an Untrusted Buffer Cache · USENIX ATC 2014
Storage systems
file systems
0.242007
A five-year study of file-system metadata · ACM Trans. Storage 2007
A Five-Year Study of File-System Metadata · FAST 2007
A Large-Scale Study of File-System Contents · SIGMETRICS 1999
Distributed systems
fault tolerance
0.252009
StrobeLight: Lightweight Availability Mapping and Anomaly Detection · USENIX ATC 2009
FARSITE: Federated, Available, and Reliable Storage for an Incompletely Trusted Environment · OSDI 2002
Feasibility of a serverless distributed file system deployed on an existing set of desktop PCs · SIGMETRICS 2000
Internet architecture and protocols › world wide web
web architecture
0.212013
Embassies: Radically Refactoring the Web · NSDI 2013
Web and mobile security
web security
0.212013
Embassies: Radically Refactoring the Web · NSDI 2013
Operating systems › system security › operating system security › protection mechanism › isolation
process isolation
0.212013
How to Run POSIX Apps in a Minimal Picoprocess · USENIX ATC 2013
Hardware security and side channels
trusted execution environments
0.222011
Memoir: Practical State Continuity for Protected Modules · IEEE Symposium on Security and Privacy 2011
TrInc: Small Trusted Hardware for Large Distributed Systems · NSDI 2009
Storage systems › file systems
file-system metadata
0.122007
A five-year study of file-system metadata · ACM Trans. Storage 2007
A Five-Year Study of File-System Metadata · FAST 2007
Storage systems › file systems
file system workload
0.122007
A five-year study of file-system metadata · ACM Trans. Storage 2007
A Five-Year Study of File-System Metadata · FAST 2007
Hardware reliability and fault tolerance
soft errors
0.112011
Cycles, cells and platters: an empirical analysisof hardware failures on a million consumer PCs · EuroSys 2011
Parallel and multicore computing › parallel computation models
massively parallel computation
0.112010
The Utility Coprocessor: Massively Parallel Computation from the Coffee Shop · USENIX ATC 2010
Distributed computing theory
distributed algorithms
0.112010
Collaborative Measurements of Upload Speeds in P2P Systems · INFOCOM 2010
Distributed systems
anomaly detection
0.112009
StrobeLight: Lightweight Availability Mapping and Anomaly Detection · USENIX ATC 2009
Distributed systems
trusted hardware
0.112009
TrInc: Small Trusted Hardware for Large Distributed Systems · NSDI 2009
Storage systems › file systems
distributed file system
0.122006
Distributed Directory Service in the Farsite File System · OSDI 2006
Feasibility of a serverless distributed file system deployed on an existing set of desktop PCs · SIGMETRICS 2000
Network optimization and economics › mechanism design
incentive mechanism
0.112007
Lottery trees: motivational deployment of networked systems · SIGCOMM 2007
Internet architecture and protocols
peer-to-peer networks
0.112007
Lottery trees: motivational deployment of networked systems · SIGCOMM 2007
Authentication and access control › human interactive proofs
CAPTCHA
0.112007
Asirra: a CAPTCHA that exploits interest-aligned manual image categorization · CCS 2007
Embedded and real-time systems
temporal analysis
0.112007
A five-year study of file-system metadata · ACM Trans. Storage 2007
Distributed systems › middleware
distributed directory service
0.112006
Distributed Directory Service in the Farsite File System · OSDI 2006
Distributed systems › service-oriented architecture › service management
service migration
0.112006
The SMART way to migrate replicated stateful services · EuroSys 2006
Distributed systems › replication
state machine replication
0.112006
The SMART way to migrate replicated stateful services · EuroSys 2006
Storage systems › buffer management
buffer cache management
0.112014
Missive: Fast Application Launch From an Untrusted Buffer Cache · USENIX ATC 2014
Systems and software security › operating system security
sandboxing
0.012013
How to Run POSIX Apps in a Minimal Picoprocess · USENIX ATC 2013
Systems and software security
untrusted platform
0.012002
FARSITE: Federated, Available, and Reliable Storage for an Incompletely Trusted Environment · OSDI 2002
Storage systems
distributed storage
0.012002
FARSITE: Federated, Available, and Reliable Storage for an Incompletely Trusted Environment · OSDI 2002

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

simulation · 0.3capability-based security · 0.3lower bound analysis · 0.2distributed algorithm · 0.2bandwidth tournaments · 0.2state update estimation · 0.2interest management · 0.2mechanism design · 0.1manual image categorization · 0.1longitudinal study · 0.1large-scale empirical analysis · 0.1formal verification · 0.1deterministic replay · 0.1upper and lower bounds · 0.1bandwidth probing · 0.1generative model · 0.1pipelining · 0.1migration protocol · 0.1
YearPublicationVenuePosition
2017 Azure Data Lake Store: A Hyperscale Distributed File Service for Big Data Analytics
abstract
Azure Data Lake Store (ADLS) is a fully-managed, elastic, scalable, and secure file system that supports Hadoop distributed file system (HDFS) and Cosmos semantics. It is specifically designed and optimized for a broad spectrum of Big Data analytics that depend on a very high degree of parallel reads and writes, as well as collocation of compute and data for high bandwidth and low-latency access. It brings together key components and features of Microsoft?s Cosmos file system-long used by internal customers at Microsoft and HDFS, and is a unified file storage solution for analytics on Azure. Internal and external workloads run on this unified platform. Distinguishing aspects of ADLS include its design for handling multiple storage tiers, exabyte scale, and comprehensive security and data sharing features. We present an overview of ADLS architecture, design points, and performance.
Raghu Ramakrishnan 0001, Baskar Sridharan, John R. Douceur, Pavan Kasturi, Balaji Krishnamachari-Sampath, Karthick Krishnamoorthy, Mitica Manu, Spiro Michaylov, Rogério Ramos, Neil Sharman, Zee Xu, Youssef Barakat, Chris Douglas, Richard Draves, Shrikant S. Naidu, Shankar Shastry, Atul Sikaria, Simon Sun, Ramarathnam Venkatesan
SIGMOD Conference3
2014 Missive: Fast Application Launch From an Untrusted Buffer Cache
Jon Howell, Jeremy Elson, Bryan Parno, John R. Douceur
USENIX ATC4
2013 Embassies: Radically Refactoring the Web
Jon Howell, Bryan Parno, John R. Douceur
NSDI3
2013 How to Run POSIX Apps in a Minimal Picoprocess
Jon Howell, Bryan Parno, John R. Douceur
USENIX ATC3
2011 Cycles, cells and platters: an empirical analysisof hardware failures on a million consumer PCs
abstract
We present the first large-scale analysis of hardware failure rates on a million consumer PCs. We find that many failures are neither transient nor independent. Instead, a large portion of hardware induced failures are recurrent: a machine that crashes from a fault in hardware is up to two orders of magnitude more likely to crash a second time. For example, machines with at least 30 days of accumulated CPU time over an 8 month period had a 1 in 190 chance of crashing due to a CPU subsystem fault. Further, machines that crashed once had a probability of 1 in 3.3 of crashing a second time. Our study examines failures due to faults within the CPU, DRAM and disk subsystems. Our analysis spans desktops and laptops, CPU vendor, overclocking, underclocking, generic vs. brand name, and characteristics such as machine speed and calendar age. Among our many results, we find that CPU fault rates are correlated with the number of cycles executed, underclocked machines are significantly more reliable than machines running at their rated speed, and laptops are more reliable than desktops.
Ed Nightingale, John R. Douceur, Vince R. Orgovan
EuroSys2
2011 The web interface should be radically refactored
abstract
The Web API conflates two conflicting goals: serving developers by supporting a wide and growing suite of functionality, and providing applications with an isolated execution environment. We propose to split the API into two levels of interface: a low-level interface that governs the relationship between the application and the browser, and a set of high-level interfaces that govern the relationship between the application and its developer. We delineate a tiny set of properties needed by the low-level interface. We argue that this restructuring provides significant benefit to both developers and users.
John R. Douceur, Jon Howell, Bryan Parno, Michael Walfish
HotNets1
2011 Memoir: Practical State Continuity for Protected Modules
abstract
To protect computation, a security architecture must safeguard not only the software that performs it but also the state on which the software operates. This requires more than just preserving state confidentiality and integrity, since, e.g., software may err if its state is rolled back to a correct but stale version. For this reason, we present Memoir, the first system that fully ensures the continuity of a protected software module's state. In other words, it ensures that a module's state remains persistently and completely inviolate. A key contribution of Memoir is a technique to ensure rollback resistance without making the system vulnerable to system crashes. It does this by using a deterministic module, storing a concise summary of the module's request history in protected NVRAM, and allowing only safe request replays after crashes. Since frequent NVRAM writes are impractical on modern hardware, we present a novel way to leverage limited trusted hardware to minimize such writes. To ensure the correctness of our design, we develop formal, machine-verified proofs of safety. To demonstrate Memoir's practicality, we have built it and conducted evaluations demonstrating that it achieves reasonable performance on real hardware. Furthermore, by building three useful Memoir-protected modules that rely critically on state continuity, we demonstrate Memoir's versatility.
Bryan Parno, Jacob R. Lorch, John R. Douceur, James W. Mickens, Jonathan M. McCune
IEEE Symposium on Security and Privacy3
2010 Collaborative Measurements of Upload Speeds in P2P Systems
abstract
In this paper, we study the theory of collaborative upload bandwidth measurement in peer-to-peer environments. A host can use a bandwidth estimation probe to determine the bandwidth between itself and any other host in the system. The problem is that the result of such a measurement may not necessarily be the sender's upload bandwidth, since the most bandwidth restricted link on the path could also be the receiver's download bandwidth. In this paper, we formally define the bandwidth determination problem and devise efficient distributed algorithms. We consider two models, the free-departure and no-departure model, depending on whether hosts keep participating in the algorithm even after their bandwidth has been determined. We present lower bounds on the time-complexity of any collaborative bandwidth measurement algorithm in both models. We then show how, for realistic bandwidth distributions, the lower bounds can be overcome. Specifically, we present O(1) and O(log log n)-time algorithms for the two models. We corroborate these theoretical findings with practical measurements on a implementation on PlanetLab.
John R. Douceur, James W. Mickens, Thomas Moscibroda, Debmalya Panigrahi
INFOCOM1
2010 The Utility Coprocessor: Massively Parallel Computation from the Coffee Shop
John R. Douceur, Jeremy Elson, Jon Howell, Jacob R. Lorch
USENIX ATC1
2009 ThunderDome: discovering upload constraints using decentralized bandwidth tournaments
abstract
ThunderDome is a system for collaboratively measuring upload bandwidths in ad-hoc peer-to-peer systems. It works by scheduling bandwidth probes between pairs of hosts, wherein each pairwise exchange reveals the upload constraint of one participant. Using the abstraction of bandwidth tournaments, unresolved hosts are successively paired with each other until every peer knows its upload bandwidth. To recover from measurement errors that corrupt its tournament schedule, ThunderDome aggregates multiple probe results for each host, avoiding pathological bandwidth estimations that would otherwise occur in systems with heterogeneous bandwidth distributions. For scalability, the coordination of probes is distributed across the hosts. Simulations on empirical and analytic bandwidth distributions--validated with wide-area PlanetLab experiments--show that ThunderDome efficiently yields upload bandwidth estimates that are robust to measurement error.
John R. Douceur, James W. Mickens, Thomas Moscibroda, Debmalya Panigrahi
CoNEXT1
2009 TrInc: Small Trusted Hardware for Large Distributed Systems
Dave Levin, John R. Douceur, Jacob R. Lorch, Thomas Moscibroda
NSDI2
2009 Brief announcement: collaborative measurement of upload speeds in P2P systems
abstract
We define and study the bandwidth determination problem in ad-hoc P2P environments. Using point-to-point bandwidth probes, the goal is to quickly determine each host's upload and download bandwidth. We present matching upper and lower bounds on the number of probing rounds required by any algorithm. We also devise algorithms which, for realistic bandwidth distributions, beat the lower bounds.
John R. Douceur, James W. Mickens, Thomas Moscibroda, Debmalya Panigrahi
PODC1
2009 StrobeLight: Lightweight Availability Mapping and Anomaly Detection
James W. Mickens, John R. Douceur, William J. Bolosky, Brian D. Noble
USENIX ATC2
2008 Leveraging Legacy Code to Deploy Desktop Applications on the Web
John R. Douceur, Jeremy Elson, Jon Howell, Jacob R. Lorch
OSDI1
2008 Donnybrook: enabling large-scale, high-speed, peer-to-peer games
abstract
Without well-provisioned dedicated servers, modern fast-paced action games limit the number of players who can interact simultaneously to 16-32. This is because interacting players must frequently exchange state updates, and high player counts would exceed the bandwidth available to participating machines. In this paper, we describe Donnybrook, a system that enables epic-scale battles without dedicated server resources, even in a fast-paced game with tight latency bounds. It achieves this scalability through two novel components. First, it reduces bandwidth demand by estimating what players are paying attention to, thereby enabling it to reduce the frequency of sending less important state updates. Second, it overcomes resource and interest heterogeneity by disseminating updates via a multicast system designed for the special requirements of games: that they have multiple sources, are latency-sensitive, and have frequent group membership changes. We present user study results using a prototype implementation based on Quake III that show our approach provides a desirable user experience. We also present simulation results that demonstrate Donnybrook's efficacy in enabling battles of up to 900 players.
Ashwin R. Bharambe, John R. Douceur, Jacob R. Lorch, Thomas Moscibroda, Jeffrey Pang, Srinivasan Seshan, Xinyu Zhuang
SIGCOMM2
2008 Performance analysis in the real world
abstract
What issues are on the minds of industrial performance analysts? Four representatives of world-class product organizations will describe their work at the front lines of measurement, modeling, and performance tuning. Topics will include performance engineering of middleware at IBM, tools for detecting false sharing in large-scale multiprocessors at Hewlett-Packard, kernel thread-scheduling performance in multiprocessors at Microsoft, and low-overhead instrumentation for profiling large-scale services at Google. Plenty of time will be available to ask questions about how to direct our research to have the greatest impact on industrial practice.
John R. Douceur
SIGMETRICS1
2007 Asirra: a CAPTCHA that exploits interest-aligned manual image categorization
abstract
Article Share on Asirra: a CAPTCHA that exploits interest-aligned manual image categorizationCCS '07: Proceedings of the 14th ACM conference on Computer and communications securityOctober 2007 Pages 366–374https://doi.org/10.1145/1315245.1315291Online:28 October 2007Publication History 51citation868DownloadsMetricsTotal Citations51Total Downloads868Last 12 Months74Last 6 weeks8 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
Jeremy Elson, John R. Douceur, Jon Howell, Jared Saul
CCS2
2007 A Five-Year Study of File-System Metadata
Nitin Agrawal 0001, William J. Bolosky, John R. Douceur, Jacob R. Lorch
FAST3
2007 Lottery trees: motivational deployment of networked systems
abstract
We address a critical deployment issue for network systems, namely motivating people to install and run a distributed service. This work is aimed primarily at peer-to-peer systems, in which the decision and effort to install a service falls to individuals rather than to a central planner. This problem is relevant for bootstrapping systems that rely on the network effect, wherein the benefits are not felt until deployment reaches a significant scale, and also for deploying asymmetric systems, wherein the set of contributors is different than the set of beneficiaries. Our solution is the lottery tree (lottree), a mechanism that probabilistically encourages both participation in the system and also solicitation of new participants. We define the lottree mechanism and normally state seven properties that encourage contribution, solicitation, and fair play. We then present the Pachira lottree scheme, which satisfies five of these seven properties, and we prove this to be a maximal satisfiable subset. Using simulation, we determine optimal parameters for the Pachira lottree scheme, and we determine how to configure a lottree system for achieving various deployment scales based on expected installation effort. We also present extensive sensitivity analyses, which bolster the generality of our conclusions.
John R. Douceur, Thomas Moscibroda
SIGCOMM1
2007 Maximizing total upload in latency-sensitive P2P applications
abstract
Motivated by an application in distributed gaming, we define and study the latency-constrained total upload maximization problem. In this problem, a peer-to-peer overlay network is modeled as a complete graph and each node vi has an upload bandwidth capacity ci and a set of receivers R(i). Each sender-receiver pair (vi,vj), where vj ∈ R(i),isarequest that should be satisfied, i.e., vi should send a data packet to each vj ∈ R(i). The goal is to find a set of at most n multicast-trees Ti of depth at most 2, such that each node can be part of multiple trees, all capacity constraints are met, and the number of satisfied requests is maximized. In this paper, we prove that the problem is NP-complete, and we present an algorithm with approximation ratio 1 − 2 / √ cmin, wherecmin is the minimum upload capacity. Finally, we also study the impact of network coding on the quality and approximability of the solution. Categories and Subject Descriptors
John R. Douceur, Jacob R. Lorch, Thomas Moscibroda
SPAA1
2007 A five-year study of file-system metadata
abstract
For five years, we collected annual snapshots of file-system metadata from over 60,000 Windows PC file systems in a large corporation. In this article, we use these snapshots to study temporal changes in file size, file age, file-type frequency, directory size, namespace structure, file-system population, storage capacity and consumption, and degree of file modification. We present a generative model that explains the namespace structure and the distribution of directory sizes. We find significant temporal trends relating to the popularity of certain file types, the origin of file content, the way the namespace is used, and the degree of variation among file systems, as well as more pedestrian changes in size and capacities. We give examples of consequent lessons for designers of file systems and related software.
Nitin Agrawal 0001, William J. Bolosky, John R. Douceur, Jacob R. Lorch
ACM Trans. Storage3
2006 The SMART way to migrate replicated stateful services
abstract
Many stateful services use the replicated state machine approach for high availability. In this approach, a service runs on multiple machines to survive machine failures. This paper describes SMART, a new technique for changing the set of machines where such a service runs, i.e., migrating the service. SMART improves upon existing techniques in three important ways. First, SMART allows migrations that replace non-failed machines. Thus, SMART enables load balancing and lets an automated system replace failed machines. Such autonomic migration is an important step toward full autonomic operation, in which administrators play a minor role and need not be available twenty-four hours a day, seven days a week. Second, SMART can pipeline concurrent requests, a useful performance optimization. Third, prior published migration techniques are described in insufficient detail to admit implementation, whereas our description of SMART is complete. In addition to describing SMART, we also demonstrate its practicality by implementing it, evaluating our implementation’s performance, and using it to build a consistent, replicated, migratable file system. Our experiments demonstrate the performance advantage of pipelining concurrent requests, and show that migration has only a minor and temporary effect on performance.
Jacob R. Lorch, Atul Adya, William J. Bolosky, Ronnie Chaiken, John R. Douceur, Jon Howell
EuroSys5
2006 Distributed Directory Service in the Farsite File System
John R. Douceur, Jon Howell
OSDI1
2002 A Secure Directory Service based on Exclusive Encryption
abstract
We describe the design of a Windows file-system directory service that ensures the persistence, integrity, privacy, syntactic legality, and case-insensitive uniqueness of the names it indexes. Byzantine state replication provides persistence and integrity, and encryption imparts privacy. To enforce Windows' baroque name syntax - including restrictions on allowable characters, on the terminal character, and on several specific names - we develop a cryptographic process, called "exclusive encryption," that inherently excludes syntactically illegal names and that enables the exclusion of case-insensitively duplicate names without access to their plaintext. This process excludes entire names by mapping the set of allowed strings to the set of all strings, excludes certain characters through an amended prefix encoding, excludes terminal characters through varying the prefix coding by character index, and supports case-insensitive comparison of names by extracting and encrypting case information separately. We also address the issues of hiding name-length information and access-authorization information, and we report a newly discovered problem with enforcing case-insensitive uniqueness for Unicode names.
John R. Douceur, Atul Adya, Josh Benaloh, William J. Bolosky, Gideon Yuval
ACSAC1
2002 Reclaiming Space from Duplicate Files in a Serverless Distributed File System
abstract
The Farsite distributed file system provides availability by replicating each file onto multiple desktop computers. Since this replication consumes significant storage space, it is important to reclaim used space where possible. Measurement of over 500 desktop file systems shows that nearly half of all consumed space is occupied by duplicate files. We present a mechanism to reclaim space from this incidental duplication to make it available for controlled file replication. Our mechanism includes: (1) convergent encryption, which enables duplicate files to be coalesced into the space of a single file, even if the files are encrypted with different users' keys; and (2) SALAD, a Self-Arranging Lossy Associative Database for aggregating file content and location information in a decentralized, scalable, fault-tolerant manner. Large-scale simulation experiments show that the duplicate-file coalescing system is scalable, highly effective, and fault-tolerant.
John R. Douceur, Atul Adya, William J. Bolosky, Dan Simon, Marvin Theimer
ICDCS1
2002 FARSITE: Federated, Available, and Reliable Storage for an Incompletely Trusted Environment
Atul Adya, William J. Bolosky, Miguel Castro 0001, Gerald Cermak, Ronnie Chaiken, John R. Douceur, Jon Howell, Jacob R. Lorch, Marvin Theimer, Roger Wattenhofer
OSDI6
2002 Cooperative Task Management Without Manual Stack Management
Atul Adya, Jon Howell, Marvin Theimer, William J. Bolosky, John R. Douceur
USENIX ATC, General Track5
2001 Modeling Replica Placement in a Distributed File System: Narrowing the Gap between Analysis and Simulation
John R. Douceur, Roger Wattenhofer
ESA1
2001 Optimizing File Availability in a Secure Serverless Distributed File System
abstract
Farsite is a secure, scalable, distributed file system that logically functions as a centralized file server but that is physically realized on a set of client desktop computers. Farsite provides security, reliability and availability by storing replicas of each file on multiple machines. It continuously monitors machine availability and relocates replicas as necessary to maximize the effective availability of the system. We evaluate several replica placement methods using large-scale simulation with machine availability data from over 50,000 desktop computers. We find that initially placing replicas in an availability-sensitive fashion yields pathological results, whereas very good results are obtained by random initial placement followed by incremental improvement using a scalable, distributed, fault-tolerant and attack-resistant hill-climbing algorithm. The algorithm is resilient to severe restrictions on communication and replica placement, and it does not excessively co-locate replicas of different files on the same set of machines.
John R. Douceur, Roger Wattenhofer
SRDS1
2001 Competitive Hill-Climbing Strategies for Replica Placement in a Distributed File System
John R. Douceur, Roger Wattenhofer
DISC1
2000 Feasibility of a serverless distributed file system deployed on an existing set of desktop PCs
abstract
We consider an architecture for a serverless distributed file system that does not assume mutual trust among the client computers. The system provides security, availability, and reliability by distributing multiple encrypted replicas of each file among the client machines. To assess the feasibility of deploying this system on an existing desktop infrastructure, we measure and analyze a large set of client machines in a commercial environment. In particular, we measure and report results on disk usage and content; file activity; and machine uptimes, lifetimes, and loads. We conclude that the measured desktop infrastructure would passably support our proposed system, providing availability on the order of one unfilled file request per user per thousand days.
William J. Bolosky, John R. Douceur, David Ely, Marvin Theimer
SIGMETRICS2
1999 A Large-Scale Study of File-System Contents
abstract
We collect and analyze a snapshot of data from 10,568 file systems of 4801 Windows personal computers in a commercial environment.The tile systems contain 140 million files totaling 10.5 TB of data.We develop analytical approximations for distributions of file size, file age, file functional lifetime, directory size, and directory depth, and we compare them to previously derived distributions.We find that tile and directory sizes are fairly consistent across file systems, but file lifetimes vary widely and are significantly affected by the job function of the user.Larger tiles tend to be composed of blocks sized in powers of two, which noticeably affects their size distribution.File-name extensions are strongly correlated with file sizes, and extension popularity varies with user job function.On average, file systems are only half full.
John R. Douceur, William J. Bolosky
SIGMETRICS1
1999 Progress-based regulation of low-importance processes
abstract
MS Manners is a mechanism that employs progress-based regulation to prevent resource contention with low-importance processes from degrading the performance of high-importance processes. The mechanism assumes that resource contention that degrades the performance of a high-importance process will also retard the progress of the low-importance process. MS Manners detects this contention by monitoring the progress of the low-importance process and inferring resource contention from a drop in the progress rate. This technique recognizes contention over any system resource, as long as the performance impact on contending processes is roughly symmetric. MS Manners employs statistical mechanisms to deal with stochastic progress measurements; it automatically calibrates a target progress rate, so no manual tuning is required; it supports multiple progress metrics from applications that perform several distinct tasks; and it orchestrates multiple low-importance processes to prevent measurement interference. Experiments with two low-importance applications show that MS Manners can reduce the degradation of high-importance processes by up to an order of magnitude.
John R. Douceur, William J. Bolosky
SOSP1
1997 Distributed Schedule Management in the Tiger Video Fileserver
abstract
Tiger is a scalable, fault-tolerant video file server constructed from a collection of computers connected by a switclied network.,All content files are striped across all of the computers and disks in a Tiger system.In order to prevent conflicts for a particular resource between two viewers, Tiger schedules viewers so that ihey do not require access to the same resource at the same time.In the abstract, there is a single, global schedule that describes all of the viewers in the system.In practice, the schedule is distrib&d among all of the computers in the system, each of which has a possibly partially inconsistent view of a subset of the schedule.By using such a relaxed consistency model for the schedule, Tiger achieves scalability and fault tolerance while still providing $e consistent, coordinated service required by viewers.
William J. Bolosky, Robert P. Fitzgerald, John R. Douceur
SOSP3