VLDB 2026 Research / reviewers in the wild / expert
Steven McCanne
dblp:47/2953
· DBLP profile ↗
35ranked-venue papers
4as first author
1since 2021 · last 2023
—ORCID · none
Domains — the database's venue-derived domains; a paper can count in several
Computer networks · 17 · 2 first-authorGraphics, computer vision, multimedia, augmented reality and games · 15 · 2 first-authorDatabases, data management, data science and information retrieval · 2 · 1 since 2021Systems, architecture and hardware · 1Software engineering, systems software and programming languages · 1Applied, interdisciplinary, general and emerging computing · 1
Expertise — from the expertise taxonomy: the topics of the expert's papers under the CCF categories. A weight counts papers with recency: 1 for a paper about the topic, 0.3 when the topic is its context, halved every five years.
| Computer networks
25 papers |
Internet architecture and protocols · 55% Content delivery and video streaming · 13% Transport protocols and congestion control · 11% | |
| Computer architecture, parallel and distributed computing, and storage systems
5 papers |
Memory systems · 54% Performance modeling and evaluation · 25% Distributed systems · 11% | |
| Software engineering, system software, and programming languages
1 paper |
Compilers and program optimization · 100% |
Topics — the 30 heaviest of 52, each with the papers that count most for it
| Topic | Weight | Papers | Last | Evidence papers |
|---|---|---|---|---|
Internet architecture and protocols › multicast
reliable multicast |
0.2 | 9 | 2000 | A window-based congestion control for reliable multicast based on TCP dynamics · ACM Multimedia 2000 RMX: Reliable Multicast for Heterogeneous Networks · INFOCOM 2000 Search Party: Using Randomcast for Reliable Multicast with Local Recovery · INFOCOM 1999 |
Internet architecture and protocols
multicast |
0.2 | 8 | 2000 | An Evaluation on Using Preference Clustering in Large-Scale Multicast Applications · INFOCOM 2000 RMX: Reliable Multicast for Heterogeneous Networks · INFOCOM 2000 Search Party: Using Randomcast for Reliable Multicast with Local Recovery · INFOCOM 1999 |
Routing and switching
IP lookup |
0.0 | 2 | 1999 | Optimal Routing Table Design for IP Address Lookups Under Memory Constraints · INFOCOM 1999 Dynamic Memory Model Based Framework for Optimization of IP Address Lookup Algorithms · ICNP 1999 |
Transport protocols and congestion control
loss recovery |
0.0 | 3 | 1998 | Asymptotic Behavior of Global Recovery in SRM · SIGMETRICS 1998 A reliable multicast framework for light-weight sessions and application level framing · IEEE/ACM Trans. Netw. 1997 A Reliable Multicast Framework for Light-Weight Sessions and Application Level Framing · SIGCOMM 1995 |
Memory systems
computation-storage trade-off |
0.0 | 1 | 2003 | A framework for computation-memory algorithmic optimization for signal processing · IEEE Trans. Multim. 2003 |
Memory systems › memory hierarchy
memory hierarchy optimization |
0.0 | 1 | 2003 | A framework for computation-memory algorithmic optimization for signal processing · IEEE Trans. Multim. 2003 |
Internet architecture and protocols › multicast
layered multicast |
0.0 | 2 | 1998 | Layered Transmission and Caching for the Multicast Session Directory service · ACM Multimedia 1998 Low-Complexity Video Coding for Receiver-Driven Layered Multicast · IEEE J. Sel. Areas Commun. 1997 |
Content delivery and video streaming › multirate multicast
receiver-driven layered multicast |
0.0 | 2 | 1997 | Low-Complexity Video Coding for Receiver-Driven Layered Multicast · IEEE J. Sel. Areas Commun. 1997 Receiver-Driven Layered Multicast · SIGCOMM 1996 |
Internet architecture and protocols › multicast › reliable multicast
scalable reliable multicast |
0.0 | 2 | 1997 | A reliable multicast framework for light-weight sessions and application level framing · IEEE/ACM Trans. Netw. 1997 A Reliable Multicast Framework for Light-Weight Sessions and Application Level Framing · SIGCOMM 1995 |
Internet architecture and protocols › protocol design
application level framing |
0.0 | 3 | 1998 | Scalable Data Naming for Application Level Framing in Reliable Multicast · ACM Multimedia 1998 A reliable multicast framework for light-weight sessions and application level framing · IEEE/ACM Trans. Netw. 1997 A Reliable Multicast Framework for Light-Weight Sessions and Application Level Framing · SIGCOMM 1995 |
Cellular and mobile networks
heterogeneous networks |
0.0 | 1 | 2000 | RMX: Reliable Multicast for Heterogeneous Networks · INFOCOM 2000 |
Transport protocols and congestion control › congestion management
multicast congestion control |
0.0 | 1 | 2000 | A window-based congestion control for reliable multicast based on TCP dynamics · ACM Multimedia 2000 |
Internet architecture and protocols › multicast
multicast group management |
0.0 | 1 | 2000 | An Evaluation on Using Preference Clustering in Large-Scale Multicast Applications · INFOCOM 2000 |
Content delivery and video streaming
overlay multicast |
0.0 | 1 | 2000 | RMX: Reliable Multicast for Heterogeneous Networks · INFOCOM 2000 |
Transport protocols and congestion control
window-based congestion control |
0.0 | 1 | 2000 | A window-based congestion control for reliable multicast based on TCP dynamics · ACM Multimedia 2000 |
Network measurement and analytics
bandwidth estimation |
0.0 | 1 | 1999 | Inference of Multicast Routing Trees and Bottleneck Bandwidths Using End-to-end Measurements · INFOCOM 1999 |
Internet architecture and protocols › multicast › reliable multicast
local recovery |
0.0 | 1 | 1999 | Search Party: Using Randomcast for Reliable Multicast with Local Recovery · INFOCOM 1999 |
Network measurement and analytics › network tomography › topology inference
multicast tree inference |
0.0 | 1 | 1999 | Inference of Multicast Routing Trees and Bottleneck Bandwidths Using End-to-end Measurements · INFOCOM 1999 |
Network measurement and analytics
network tomography |
0.0 | 1 | 1999 | Inference of Multicast Routing Trees and Bottleneck Bandwidths Using End-to-end Measurements · INFOCOM 1999 |
Software-defined and programmable networks
programmable data plane |
0.0 | 1 | 1999 | BPF+: Exploiting Global Data-Flow Optimization in a Generalized Packet Filter Architecture · SIGCOMM 1999 |
Compilers and program optimization › compiler optimization
dataflow optimization |
0.0 | 1 | 1999 | BPF+: Exploiting Global Data-Flow Optimization in a Generalized Packet Filter Architecture · SIGCOMM 1999 |
Compilers and program optimization › compiler optimization › redundancy elimination
partial redundancy elimination |
0.0 | 1 | 1999 | BPF+: Exploiting Global Data-Flow Optimization in a Generalized Packet Filter Architecture · SIGCOMM 1999 |
Internet architecture and protocols › future internet architecture
active networks |
0.0 | 1 | 1998 | An Active Service Framework and Its Application to Real-Time Multimedia Transcoding · SIGCOMM 1998 |
Internet architecture and protocols › future internet architecture
active services |
0.0 | 1 | 1998 | An Active Service Framework and Its Application to Real-Time Multimedia Transcoding · SIGCOMM 1998 |
Distributed systems
fault tolerance |
0.0 | 1 | 1998 | A Proxy Architecture for Reliable Multicast in Heterogeneous Environments · ACM Multimedia 1998 |
Image and video coding › scalable video coding
layered video coding |
0.0 | 1 | 1997 | Low-Complexity Video Coding for Receiver-Driven Layered Multicast · IEEE J. Sel. Areas Commun. 1997 |
Wireless networking › link adaptation
rate adaptation |
0.0 | 1 | 1996 | Receiver-Driven Layered Multicast · SIGCOMM 1996 |
Multimedia systems and quality of experience › multimedia communication
packet video |
0.0 | 1 | 1995 | vic: A Flexible Framework for Packet Video · ACM Multimedia 1995 |
Multimedia systems and quality of experience
video transmission |
0.0 | 1 | 1995 | vic: A Flexible Framework for Packet Video · ACM Multimedia 1995 |
Network performance modeling
network resource utilization |
0.0 | 1 | 2000 | An Evaluation on Using Preference Clustering in Large-Scale Multicast Applications · INFOCOM 2000 |
Methods — techniques the papers use, named apart from their topics
simulation · 0.2lagrange multiplier · 0.1dynamic memory model · 0.1redundant predicate elimination · 0.0just-in-time compilation · 0.0edge dominators · 0.0NP-hardness analysis · 0.0computation-memory tradeoff optimization · 0.0analysis · 0.0spanning tree · 0.0overlay network · 0.0clustering · 0.0TCP · 0.0queueing analysis · 0.0dynamic programming · 0.0divide-and-conquer · 0.0application-aware adaptation · 0.0wavelet transform · 0.0
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2023 | Zed: Leveraging Data Types to Process Eclectic Data
Amy Ousterhout, Steven McCanne, Henri Dubois-Ferrière, Silvery D. Fu, Sylvia Ratnasamy, Noah Treuhaft |
CIDR | 2 |
| 2016 | A case study in open source innovation: developing the Tidepool Platform for interoperability in type 1 diabetes managementabstractOBJECTIVE: Develop a device-agnostic cloud platform to host diabetes device data and catalyze an ecosystem of software innovation for type 1 diabetes (T1D) management. MATERIALS AND METHODS: An interdisciplinary team decided to establish a nonprofit company, Tidepool, and build open-source software. RESULTS: Through a user-centered design process, the authors created a software platform, the Tidepool Platform, to upload and host T1D device data in an integrated, device-agnostic fashion, as well as an application ("app"), Blip, to visualize the data. Tidepool's software utilizes the principles of modular components, modern web design including REST APIs and JavaScript, cloud computing, agile development methodology, and robust privacy and security. DISCUSSION: By consolidating the currently scattered and siloed T1D device data ecosystem into one open platform, Tidepool can improve access to the data and enable new possibilities and efficiencies in T1D clinical care and research. The Tidepool Platform decouples diabetes apps from diabetes devices, allowing software developers to build innovative apps without requiring them to design a unique back-end (e.g., database and security) or unique ways of ingesting device data. It allows people with T1D to choose to use any preferred app regardless of which device(s) they use. CONCLUSION: The authors believe that the Tidepool Platform can solve two current problems in the T1D device landscape: 1) limited access to T1D device data and 2) poor interoperability of data from different devices. If proven effective, Tidepool's open source, cloud model for health data interoperability is applicable to other healthcare use cases. Aaron B. Neinstein, Jenise Wong, Howard Look, Brandon Arbiter, Kent Quirk, Steven McCanne, Michael Blum, Saleh Adi |
J. Am. Medical Informatics Assoc. | 6 |
| 2005 | Towards an evolvable internet architectureabstractThere is widespread agreement on the need for architectural change in the Internet, but very few believe that current ISPs will ever effect such changes. In this paper we ask what makes an architecture evolvable, by which we mean capable of gradual change led by the incumbent providers. This involves both technical and economic issues, since ISPs have to be able, and incented, to offer new architectures. Our study suggests that, with very minor modifications, the current Internet architecture could be evolvable. Sylvia Ratnasamy, Scott Shenker, Steven McCanne |
SIGCOMM | 3 |
| 2003 | A framework for computation-memory algorithmic optimization for signal processingabstractThe heterogeneity of today's computing environment means computation-intensive signal processing algorithms must be optimized for performance in a machine dependent fashion. In this paper, we present a dynamic memory model and associated optimization framework that finds a machine-dependent, near-optimal implementation of an algorithm by exploiting the computation-memory tradeoff. By optimal, we mean an implementation that has the fastest running time given the specification of the machine memory hierarchy. We discuss two instantiations of the framework: fast IP address lookup, and fast nonuniform scalar quantizer and unstructured vector quantizer encoding. Experiments show that both instantiations outperform techniques that ignore this computation-memory tradeoff. Gene Cheung, Steven McCanne |
IEEE Trans. Multim. | 2 |
| 2000 | Dynamic Memory Model Based Optimization of Scalar and Vector Quantizer for Fast Image EncodingabstractThe rapid progress of computers and today's heterogeneous computing environment means computation-intensive signal processing algorithms must be optimized for performance in a machine dependent fashion. We present formal machine-dependent optimizations of scalar and vector quantizer encoders. Using a dynamic memory model, the optimal computation-memory tradeoff is exploited to minimize the encoding time. Experiments show marked improvements over existing techniques. Gene Cheung, Steven McCanne |
ICIP | 2 |
| 2000 | RMX: Reliable Multicast for Heterogeneous NetworksabstractAlthough IP multicast is an effective network primitive for best-effort, large-scale, multi-point communication, many multicast applications such as shared whiteboards, multi-player games and software distribution require reliable data delivery. Building services like reliable sequenced delivery on top of IP multicast has proven to be a hard problem. The enormous extent of network and end-system heterogeneity in multipoint communication exacerbates the design of scalable end-to-end reliable multicast protocols. In this paper, we propose a radical departure from the traditional end-to-end model for reliable multicast and instead propose a hybrid approach that leverages the successes of unicast reliability protocols such as TCP while retaining the efficiency of IP multicast for multi-point data delivery. Our approach splits a large heterogeneous reliable multicast session into a number of multicast data groups of co-located homogeneous participants. A collection of application-aware agents-reliable multicast proxies (RMX)-organizes these data groups into a spanning tree using an overlay network of TCP connections. Sources transmit data to their local group, and the RMX in that group forwards the data towards the rest of the data groups. RMX use detailed knowledge of application semantics to adapt to the effects of heterogeneity in the environment. To demonstrate the efficacy of our architecture, we have built a prototype implementation that can be customized for different kinds of applications. Yatin Chawathe, Steven McCanne, Eric A. Brewer |
INFOCOM | 2 |
| 2000 | An Evaluation on Using Preference Clustering in Large-Scale Multicast ApplicationsabstractThe efficiency of using multicast in multi-party applications is constrained by preference heterogeneity, where receivers range in their preferences for application data. We examine an approach in which approximately similar sources and receivers are clustered into multicast groups. The goal is to maximize preference overlap within each group while satisfying the constraint of limited network resources. This allows an application to control the number of multicast groups it uses and thus the number of connections it maintains. We present a clustering framework with a two-phase algorithm: a bootstrapping phase that groups new sources and receivers together, and an adaptation phase that re-groups them in reaction to changes. The framework is generic in that an application can customize the algorithm according to its requirements and data characteristics. We conducted detail simulation experiments to study various issues and tradeoffs in applying clustering to different preference patterns and application classes. We found that clustering successfully exploits preference similarity and utilizes network resources more efficiently than when it is not used. Also, application-level hints can be incorporated in our algorithm, which are instrumental in the creation of an effective grouping of sources and receivers. Our algorithm handles changes dynamically, and also limits multicast "join" and "leave" disruption to the application. Tina Wong, Randy H. Katz, Steven McCanne |
INFOCOM | 3 |
| 2000 | A reliable multicast webcast protocol for multimedia collaboration and cachingabstractLarge-scale, multi-point, multimedia conferencing applications designed to facilitate long-distance collaboration are enjoying growing popularity. Usually composed of real-time audio, video and shared-drawing applications, these collaborative environments help render the geographical location of collaborators irrelevant. To complement these existing collaborative applications, it would be useful to have the ability to distribute documents synchronously over the World Wide Web (WWW). One model for synchronized information dissemination within the Web is webcasting in which data are simultaneously distributed to multiple destinations. The WWW's traditional unicast client/server communication model suffers, however, when applied to webcasting; solutions which require many clients to simultaneously fetch data from the origin server using the client/server model will likely cause server and link overload. L. Kristin Wright, Steven McCanne, Jay Lepreau |
ACM Multimedia | 2 |
| 2000 | A window-based congestion control for reliable multicast based on TCP dynamicsabstractThe limitation of the current multicast model led to the development of embedded network assist and new service models for reliable transport. We show a viable solution for one of the hardest problems in reliable multicast — congestion control — through the deployment of a new forwarding service model, “Breadcrumb forwarding service” (BCFS). Our proposed reliable multicast transport, “Rainbow”, is built on top of this model. In our approach, each receiver maintains its own congestion window and individually runs window control modeled after TCP. To enhance Rainbow's scalability and support asynchronous receiver subscriptions, Rainbow utilizes Digital Fountain at the source. This allows receivers to exercise asynchronous and autonomous behavior while simultaneously enjoying the performance benefit of synchronous multicast communication with fast group establishment of BCFS. In this paper, we detail the congestion control of Rainbow and demonstrate its efficiency and scalability through simulation and analysis. According to simulation results, Rainbow shows more TCP-fair behavior than RLC, which is a TCP friendly congestion control scheme based on layered multicast. Koichi Yano, Steven McCanne |
ACM Multimedia | 2 |
| 1999 | Software Synthesis of Variable-length Code Decoder Using a Mixture of Programmed Logic and Table LookupsabstractImplementation of variable-length code (VLC) decoders can involve a tradeoff between the number of decoding steps and memory usage. In this paper, we proposed a novel scheme for optimizing this tradeoff using a machine model abstracted from general purpose processors with hierarchical memories. We formulate the VLC decode problem as an optimization problem where the objective is to minimize the average decoding time. After showing that the problem is NP-complete, we present a Lagrangian algorithm that finds an approximate solution with bounded error. An implementation is automatically synthesized by a code generator. To demonstrate the efficacy of our approach, we conducted experiments of decoding codebooks for a pruned tree-structured vector quantizer and H.263 motion vector that show a performance gain of our proposed algorithm over single table lookup implementation and logic implementation. Gene Cheung, Steven McCanne, Christos H. Papadimitriou |
Data Compression Conference | 2 |
| 1999 | An Attribute Grammar Based Framework for Machine Dependent Computational Optimizations of Media Processing AlgorithmsabstractMedia processing algorithms are typically computationally intensive, and in complexity constrained environments, finding the most computationally efficient algorithm is critical. In this paper, we present an attribute grammar based framework which captures the computational complexity of an algorithm in a machine-dependent manner. Using this formalism, a media processing algorithm can be optimally and automatically tuned to a particular machine by a problem specific optimizer. Moreover, the tradeoff between performance and execution time on a specific machine can be controlled and thus exploited to optimize overall performance. To illustrate the viability of our approach, we applied it to the variable-length code (VLC) decoding problem and show that the optimal VLC decoding algorithm can be found using the framework. Tradeoff between coding efficiency and decoding speed of Huffman code can be exploited by employing length-limited code. Gene Cheung, Steven McCanne |
ICIP (2) | 2 |
| 1999 | Dynamic Memory Model Based Framework for Optimization of IP Address Lookup AlgorithmsabstractThe design of software-based algorithms for fast IP address lookup targeted for general purpose processors has received tremendous attention in recent years due to its low cost implementation and flexibility. However, all work to date fails to account for the hierarchical memory structure of the processor when designing algorithms. In this work, we propose a dynamic memory model that captures data movement between hierarchical memories and the memory access cost. Using the model, we formulate the design of IP address lookup algorithms as a well-defined optimization problem that minimizes an algorithm's average lookup time. We first show the problem is NP-hard. We then present an optimization framework and associated algorithm based on Lagrange multipliers that terminates in a bounded-error solution. Simulation shows the synthesized algorithm has noticeable performance gain over existing techniques. Gene Cheung, Steven McCanne |
ICNP | 2 |
| 1999 | Scaling End-to-End Multicast Transports with a Topologically-Sensitive Group Formation ProtocolabstractWhile the IP unicast service has proven successful, extending end-to-end adaptation to multicast has been a difficult problem. Unlike the unicast case, multicast protocols must support large and heterogeneous receiver sets. While proposed approaches to scaling multicast transports attempt to localize problems and/or organize receivers into a hierarchy through a divide-and-conquer approach, this approach succeeds only if the resulting hierarchy is congruent with the underlying routing tree topology. This implies the need for some level of topological information at the end systems which the IP multicast service deliberately hides. In this paper we present a group formation protocol (GFP) whereby receivers dynamically organize themselves into a multilevel hierarchy of multicast groups that corresponds to the underlying routing tree. GFP can serve as a core component across a wide range of multicast applications and protocols such as local recovery for reliable multicast, self organized transcoding, self-organizing web caches, the optimal and dynamic placement of proxies, repeaters, designated receivers, recorders and so forth. Sylvia Ratnasamy, Steven McCanne |
ICNP | 2 |
| 1999 | Optimal Routing Table Design for IP Address Lookups Under Memory ConstraintsabstractThe design of lookup tables for fast IP address lookup algorithms using a general processor is formalized as an optimization problem. A cost model that models the access times and sizes of the hierarchical memory structure of the processor is formulated. Two algorithms, using dynamic programming and Lagrange multipliers, solve the optimization problem optimally and approximately respectively. Experimental results show our algorithms have visible improvements over existing ones in the literature. Gene Cheung, Steven McCanne |
INFOCOM | 2 |
| 1999 | Search Party: Using Randomcast for Reliable Multicast with Local RecoveryabstractIP multicast is an efficient means of sending to a group, but the packets are sent unreliably. Some applications, like distributed whiteboard and news articles, require detection and retransmission of lost packets. In order to scale to large groups, local recovery is necessary to avoid involving the entire group in the repair process for packet losses affecting small regions of the distribution tree. While many current research efforts have attempted to devise local recovery schemes that rely only on the existing service model, we believe that extending the multicast forwarding service could enable viable and highly scalable local recovery mechanisms. To investigate this open issue, we propose a new randomized forwarding service called randomcast, and build upon it a loss recovery protocol called search party. Starting with the local recovery structure of the very scalable lightweight multicast services (LMS) scheme, we use randomized forwarding to greatly improve robustness at a modest cost in overhead and/or retransmission delay (the trade off between the two costs is fine-tunable). Analysis predicts that as the group size N increases, overhead will increase by at most log N and retransmission delay will be unaffected. Simulation experiments show that both increase very little as N grows from 8 to 64, and confirm the tunability of the trade-off. Adam M. Costello, Steven McCanne |
INFOCOM | 2 |
| 1999 | Inference of Multicast Routing Trees and Bottleneck Bandwidths Using End-to-end MeasurementsabstractThe efficacy of end-to-end multicast transport protocols depends critically upon their ability to scale efficiently to a large number of receivers. Several research multicast protocols attempt to achieve this high scalability by identifying sets of co-located receivers in order to enhance loss recovery, congestion control and so forth. A number of these schemes could be enhanced and simplified by some level of explicit knowledge of the topology of the multicast distribution tree, the value of the bottleneck bandwidth along the path between the source and each individual receiver and the approximate location of the bottlenecks in the tree. In this paper, we explore the problem of inferring the internal structure of a multicast distribution tree using only observations made at the end hosts. By noting correlations of loss patterns across the receiver set and by measuring how the network perturbs the fine-grained timing structure of the packets sent from the source, we can determine both the underlying multicast tree structure as well as the bottleneck bandwidths. The simulations show that the algorithm is robust and appears to converge to the correct tree with high probability. Sylvia Ratnasamy, Steven McCanne |
INFOCOM | 2 |
| 1999 | BPF+: Exploiting Global Data-Flow Optimization in a Generalized Packet Filter ArchitectureabstractA packet filter is a programmable selection criterion for classifying or selecting packets from a packet stream in a generic, reusable fashion. Previous work on packet filters falls roughly into two categories, namely those efforts that investigate flexible and extensible filter abstractions but sacrifice performance, and those that focus on low-level, optimized filtering representations but sacrifice flexibility. Applications like network monitoring and intrusion detection, however, require both high-level expressiveness and raw performance. In this paper, we propose a fully general packet filter framework that affords both a high degree of flexibility and good performance. In our framework, a packet filter is expressed in a high-level language that is compiled into a highly efficient native implementation. The optimization phase of the compiler uses a flowgraph set relation called edge dominators and the novel application of an optimization technique that we call "redundant predicate elimination," in which we interleave partial redundancy elimination, predicate assertion propagation, and flowgraph edge elimination to carry out the filter predicate optimization. Our resulting packet-filtering framework, which we call BPF+, derives from the BSD packet filter (BPF), and includes a filter program translator, a byte code optimizer, a byte code safety verifier to allow code to migrate across protection boundaries, and a just-in-time assembler to convert byte codes to efficient native code. Despite the high degree of flexibility afforded by our generalized framework, our performance measurements show that our system achieves performance comparable to state-of-the-art packet filter architectures and better than hand-coded filters written in C. Andrew Begel, Steven McCanne, Susan L. Graham |
SIGCOMM | 2 |
| 1999 | A Model, Analysis, and Protocol Framework for Soft State-Based Communicationabstract"Soft state" is an often cited yet vague concept in network protocol design in which two or more network entities intercommunicate in a loosely coupled, often anonymous fashion. Researchers often define this concept operationally (if at all) rather than analytically: a source of soft state transmits periodic "refresh messages" over a (lossy) communication channel to one or more receivers that maintain a copy of that state, which in turn "expires" if the periodic updates cease. Though a number of crucial Internet protocol building blocks are rooted in soft state-based designs --- e.g., RSVP refresh messages, PIM membership updates, various routing protocol updates, RTCP control messages, directory services like SAP, and so forth --- controversy is building as to whether the performance overhead of soft state refresh messages justify their qualitative benefit of enhanced system "robustness". We believe that this controversy has risen not from fundamental performance tradeoffs but rather from our lack of a comprehensive understanding of soft state. To better understand these tradeoffs, we propose herein a formal model for soft state communication based on a probabilistic delivery model with relaxed reliability. Using this model, we conduct queueing analysis and simulation to characterize the data consistency and performance tradeoffs under a range of workloads and network loss rates. We then extend our model with feedback and show, through simulation, that adding feedback dramatically improves data consistency (by up to 55%) without increasing network resource consumption. Our model not only provides a foundation for understanding soft state, but also induces a new fundamental transport protocol based on probabilistic delivery. Toward this end, we sketch our design of the "Soft State Transport Protocol" (SSTP), which enjoys the robustness of soft state while retaining the performance benefit of hard state protocols like TCP through its judicious use of feedback. Suchitra Raman, Steven McCanne |
SIGCOMM | 2 |
| 1998 | Simulation of FEC-Based Error Control for Packet Audio on the InternetabstractReal-time audio over a best-effort network, such as the Internet, frequently suffers from packet loss. To mitigate the impact of such packet loss, several research efforts and implementation studies advocate the use of forward error correction (FEC) coding. Although these prior works have pioneered promising and novel applications of FEC to Internet audio, they do not definitively demonstrate the advantages of FEC because they do not evaluate aggregate performance that results from multiplexing many like flows. We build on previous landmark works with a systematic study of FEC for packet audio that characterizes the aggregate performance across all audio sources in the network. We refine the novel but ad hoc coding techniques proposed by Hardman, Sasse, Handley and Watson (see Proc. INET, 1995) into a formal framework that we call "signal processing-based FEC" (SFEC) and use our framework to more rigorously evaluate the relative merits of this approach. Through extensive simulation, we evaluate the "scalability" of SFEC for packet audio-i.e., the ability for a coding algorithm to improve aggregate performance when used by all sources in the network-and find that optimal signal quality is achieved when sources react to network congestion not by blindly adding FEC, but rather by adding FEC in a controlled fashion that simultaneously constrains the source-coding rate. As a result, packet loss is mitigated without introducing more congestion, thus admitting a more scalable and effective approach than successively adding redundancy to a constant bit-rate source. While this result may seem intuitive, it has not been previously suggested in the context of Internet audio, and until now, has not been systematically studied. Matthew Podolsky, Cynthia Romer, Steven McCanne |
INFOCOM | 3 |
| 1998 | A Proxy Architecture for Reliable Multicast in Heterogeneous EnvironmentsabstractIP Multicast has proven to be an effective communication primitive for best effort, large-scale, multi-point audio/video conferencing applications. While the best-effort transport of real-time digital audio/video is a relatively straightforward and well understood problem, many other applications like multicast-based shared whiteboards and shared text editors are more challenging to design because their underlying media require reliable transport, i.e., a "reliable multicast" protocol. The design of scalable end-to-end reliable multicast protocols has unfortunately proven to be an especially hard problem, exacerbated by the enormous degree of network and system heterogeneity present in the Internet. In this paper, we propose to tackle the heterogeneity problem with a hybrid model for reliable multicast that relies in part on end-to-end loss recovery mechanisms and in part on intelligent and application-aware adaptation carried out within the network. In our framework, application-aware agents -- or proxies -- use detailed knowledge of application semantics to hide the effects of heterogeneity from the rest of the system. We present a general architecture for proxy-based reliable multicast called the Reliable Multicast proXy (RMX) model and describe a prototype implementation of an RMX for a shared whiteboard application for hand-held PDAs. Yatin Chawathe, Steve A. Fink, Steven McCanne, Eric A. Brewer |
ACM Multimedia | 3 |
| 1998 | Scalable Data Naming for Application Level Framing in Reliable MulticastabstractThe Application Level Framing (ALF) protocol architecture [2] encourages application control over mechanisms that traditionally fall within the "transport layer", e.g., loss detection and recovery. Traditional ARQ-based reliable protocols for unicast (e.g., TCP) as well as multicast (e.g., Horus [30], RMTP [15], etc.) number data units sequentially to detect losses. Unfortunately, these transport-level sequence numbers do not permit receivers to flexibly tailor their reliability semantics. Achieving receiver-driven reliability is cumbersome in the existing "layered" architecture of the network protocol stack where the receiving application has no knowledge of how application-level objects map onto transport level sequence numbers. In this paper, we propose a new data naming scheme that exposes the structure of application data to the transport layer, thereby enhancing the expressibility of an applications' reliability and ordering semantics. We apply this data naming scheme to a reliab... Suchitra Raman, Steven McCanne |
ACM Multimedia | 2 |
| 1998 | Layered Transmission and Caching for the Multicast Session Directory serviceabstractThe recent advent of the Internet hfulticast service has enabled a number of .mccessfulreal-time multimedia applications, yet the scalabii@ of these applications remains challenged by the inherent heterogeneity of the underlying Internet.One promisiig approach for taming this heterogene ity is to encode each media flow as a layered signal that is striped across multiple.multicast groups, thereby allowing a receiver to tune its individual reception rate by modulating its subscription to multicast groups.Though significant progress had been made on media transport protocols and congestion control strategies for adjusting multicast groups in this fashio~comparatively little work has been devoted to extending the session directory service and address allocation architecture to meet the needs and requirements of layered media.Moreover, the large-scale deployment of layered media formats is hindered by the lack of support for layered formats in existing session directory tools.To overcome these limitations, we propose a new architecture for session advertisement and caching that exploits multicast "admbistrative scope" through protocol proxies to admit layered media formats and reduce the start-up latency of a directory-stice client by an order of magnitude or more.Our architecture is fully compatible with the existing directory service allowing our implementation, -which is split acro.w a new session directory tool and network proxy, to be incrementally deployed within the current Internet multimedia conferencing architecture. Andrew Swan, Steven McCanne, Lawrence A. Rowe |
ACM Multimedia | 2 |
| 1998 | Limited retransmission of real-time layered multimediaabstractIn contrast to multimedia applications that involve human-to-human communication, streaming media over the Internet enjoys relaxed delay constraints. Thus, streaming media servers are at liberty to retransmit missing packets to avoid unnecessary signal corruption. While state-of-the-art media servers employ such strategies, no work to date has proposed an optimal strategy for delay-constrained retransmissions of streaming media. In this paper, we propose a framework for streaming media retransmission based on layered media representations and explore the performance advantage of integrating layered signal structure into the retransmission strategy. In our approach, the source must choose between transmitting an older layer that expires sooner and a newer layer that expires later but is more important. To arrive at the proper mix of these two extreme strategies, we derive an optimal strategy for transmitting layered data over a binary erasure channel with instantaneous feedback. To provide a quantitative performance comparison of different transmission policies, we conduct a Markov-chain analysis, which shows that the best transmission policy is time-invariant and thus does not change as the layers approach their expiration times. Matthew Podolsky, Martin Vetterli, Steven McCanne |
MMSP | 3 |
| 1998 | An Active Service Framework and Its Application to Real-Time Multimedia TranscodingabstractSeveral recent proposals for an "active networks" architecture advocate the placement of user-defined computation within the network as a key mechanism to enable a wide range of new applications and protocols, including reliable multicast transports, mechanisms to foil denial of service attacks, intra-network real-time signal transcoding, and so forth. This laudable goal, however, creates a number of very difficult research problems, and although a number of pioneering research efforts in active networks have solved some of the preliminary small-scale problems, a large number of wide open problems remain. In this paper, we propose an alternative to active networks that addresses a restricted and more tractable subset of the active-networks design space. Our approach, which we (and others) call "active services", advocates the placement of user-defined computation within the network as with active networks, but unlike active networks preserves all of the routing and forwarding semantics of current Internet architecture by restricting the computation environment to the application layer. Because active services do not require changes to the Internet architecture, they can be deployed incrementally in today's Internet.We believe that many of the applications and protocols targeted by the active networks initiative can be solved with active services and, toward this end, we propose herein a specific architecture for an active service and develop one such service in detail --- the Media Gateway (MeGa) service --- that exploits this architecture. In defining our active service, we encountered six key problems --- service location, service control, service management, service attachment, service composition, and the definition of the service environment --- and have crafted solutions for these problems in the context of the MeGa service. To verify our design, we implemented and fielded MeGa on the UC Berkeley campus, where it has been used regularly for several months by real users who connect via ISDN to an "on-line classroom". Our initial experience indicates that our active services prototype provides a very flexible and programmable platform for intra-network computation that strikes a good balance between the flexibility of the active networks architecture and the practical constraints of incremental deployment in the current Internet. Elan Amir, Steven McCanne, Randy H. Katz |
SIGCOMM | 2 |
| 1998 | Asymptotic Behavior of Global Recovery in SRMabstractThe development and deployment of a large-scale, wide-area multicast infrastructure in the Internet has enabled a new family of multi-party, collaborative applications. Several of these applications, such as multimedia slide shows, shared whiteboards, and large-scale multi-player games, require reliable multicast transport, yet the underlying multicast infrastructure provides only a best-effort delivery service. A difficult challenge in the design of efficient protocols that provide reliable service on top of the best-effort multicast service is to maintain acceptable performance as the protocol scales to very large session sizes distributed across the wide area. The Scalable, Reliable Multicast (SRM) protocol [6] is a receiver-driven scheme based on negative acknowledgments (NACKs) reliable multicast protocol that uses randomized timers to limit the amount of protocol overhead in the face of large multicast groups, but the behavior of SRM at extremely large scales is not well-understood.In this paper, we use analysis and simulation to investigate the scaling behavior of global loss recovery in SRM. We study the protocol's control-traffic overhead as a function of group size for various topologies and protocol parameters, on a set of simple, representative topologies --- the cone (a variant of a clique), the linear chain, and the binary tree. We find that this overhead, as a function of group size, depends strongly on the topology: for the cone, it is always linear; for the chain, it is between constant and logarithmic; and for the tree, it is between constant and linear. Suchitra Raman, Steven McCanne, Scott Shenker |
SIGMETRICS | 2 |
| 1997 | Receiver-Driven Bandwidth Adaptation for Light-Weight SessionsabstractCurrent Internet multicast conferencing tools treat all sources with equal importance in that they either statically allocate a fixed bandwidth to each source in a session, or they automatically adapt each source's transmission rate independently of all other sources.But not all sources are of equal interest to all receivers.We believe that to effectively support human to human communication, this disparity in receiver interest should be reflected in the rate-adaptation process.To this end, we propose a protocol called "SCUBA" that enables media sources to intelligently account for receiver interest in their rate-adjustment algorithms.SCUBA is orthogonal to and complements existing rate-adaptation schemes and can interoperate with either sender-or receiverdirected control systems.To scale the SCUBA protocol with multicast session size, we decouple the receiver-feedback process from the session size through sampling.This approach introduces a "tunable" tradeoff between convergence time and sampling accuracy that for large sessions is solely dependent on the control traffic bandwidth.In addition to its applicability in video conferencing, our control scheme can be combined with media transcoders to intelligently manage a bottleneck link at a well-known and fixed location in the network.We implemented SCUBA within our video conferencing tool vie and our media gateway rtpgw and feedback from their preliminary deployment indicates that the efficacy of the overall multimedia communication system has been greatly enhanced. Elan Amir, Steven McCanne, Randy H. Katz |
ACM Multimedia | 2 |
| 1997 | Low-Complexity Video Coding for Receiver-Driven Layered MulticastabstractThe "Internet Multicast Backbone," or MBone, has risen from a small, research curiosity to a large-scale and widely used communications infrastructure. A driving force behind this growth was the development of multipoint audio, video, and shared whiteboard conferencing applications. Because these real-time media are transmitted at a uniform rate to all of the receivers in the network, a source must either run at the bottleneck rate or overload portions of its multicast distribution tree. We overcome this limitation by moving the burden of rate adaptation from the source to the receivers with a scheme we call receiver-driven layered multicast, or RLM. In RLM, a source distributes a hierarchical signal by striping the different layers across multiple multicast groups, and receivers adjust their reception rate by simply joining and leaving multicast groups. We describe a layered video compression algorithm which, when combined with RLM, provides a comprehensive solution for scalable multicast video transmission in heterogeneous networks. In addition to a layered representation, our coder has low complexity (admitting an efficient software implementation) and high loss resilience (admitting robust operation in loosely controlled environments like the Internet). Even with these constraints, our hybrid DCT/wavelet-based coder exhibits good compression performance. It outperforms all publicly available Internet video codecs while maintaining comparable run-time performance. We have implemented our coder in a "real" application-the UCB/LBL videoconferencing tool vic. Unlike previous work on layered video compression and transmission, we have built a fully operational system that is currently being deployed on a very large scale over the MBone. Steven McCanne, Martin Vetterli, Van Jacobson |
IEEE J. Sel. Areas Commun. | 1 |
| 1997 | A reliable multicast framework for light-weight sessions and application level framingabstractThis paper describes scalable reliable multicast (SRM), a reliable multicast framework for light-weight sessions and application level framing. The algorithms of this framework are efficient, robust, and scale well to both very large networks and very large sessions. The SRM framework has been prototyped in wb, a distributed whiteboard application, which has been used on a global scale with sessions ranging from a few to a few hundred participants. The paper describes the principles that have guided the SRM design, including the IP multicast group delivery model, an end-to-end, receiver-based model of reliability, and the application level framing protocol model. As with unicast communications, the performance of a reliable multicast delivery algorithm depends on the underlying topology and operational environment. We investigate that dependence via analysis and simulation, and demonstrate an adaptive algorithm that uses the results of previous loss recovery events to adapt the control parameters used for future loss recovery. With the adaptive algorithm, our reliable multicast delivery algorithm provides good performance over a wide range of underlying topologies. Sally Floyd, Van Jacobson, Ching-Gung Liu, Steven McCanne, Lixia Zhang 0001 |
IEEE/ACM Trans. Netw. | 4 |
| 1996 | A layered DCT coder for Internet videoabstractSeveral compression schemes for Internet video utilize block-based conditional replenishment (CR) where block updates are coded independently of the past. In the current Internet video tools, blocks are compressed with a single-layer representation. We propose a new approach that compresses image blocks using a layered representation. Our layered-DCT (LDCT) compression algorithm, derived from progressive JPEG, has been combined with CR and optimized for efficient software implementation to provide an improved solution for Internet packet video. Although LDCT is constrained to a layered representation, its compression performance is as good or better than the single layer Intra-H.261 and baseline JPEG coding schemes. Elan Amir, Steven McCanne, Martin Vetterli |
ICIP (1) | 2 |
| 1996 | Receiver-Driven Layered MulticastabstractState of the art, real-time, rate-adaptive, multimedia applications adjust their transmission rate to match the available network capacity. Unfortunately, this source-based rate-adaptation performs poorly in a heterogeneous multicast environment because there is no single target rate --- the conflicting bandwidth requirements of all receivers cannot be simultaneously satisfied with one transmission rate. If the burden of rate-adaption is moved from the source to the receivers, heterogeneity is accommodated. One approach to receiver-driven adaptation is to combine a layered source coding algorithm with a layered transmission system. By selectively forwarding subsets of layers at constrained network links, each user receives the best quality signal that the network can deliver. We and others have proposed that selective-forwarding be carried out using multiple IP-Multicast groups where each receiver specifies its level of subscription by joining a subset of the groups. In this paper, we extend the multiple group framework with a rate-adaptation protocol called Receiver-driven Layered Multicast, or RLM. Under RLM, multicast receivers adapt to both the static heterogeneity of link bandwidths as well as dynamic variations in network capacity (i.e., congestion). We describe the RLM protocol and evaluate its performance with a preliminary simulation study that characterizes user-perceived quality by assessing loss rates over multiple time scales. For the configurations we simulated, RLM results in good throughput with transient short-term loss rates on the order of a few percent and long-term loss rates on the order of one percent. Finally, we discuss our implementation of a software-based Internet video codec and its integration with RLM. Steven McCanne, Van Jacobson, Martin Vetterli |
SIGCOMM | 1 |
| 1995 | Joint source/channel coding for multicast packet videoabstractCurrent schemes for multicast packet video cope with congestion by adapting the transmission rate of a variable rate codec at the source. We propose a new approach, based on receiver- rather than source-adaptation, where a video source is encoded hierarchically with each layer of hierarchy distributed on a separate network channel. Each receiver can then dynamically adapt to local network capacity by adjusting the number of layers it receives. In order to deploy such a system, we must at the same time develop a layered codec tailored for this model. We present a prototype coder that has been designed specifically for our receiver-based congestion avoidance scheme. In order to evaluate the efficacy of our approach, we have implemented it in an existing Internet remote conferencing application and constrained the complexity of our design to run in real-time on standard workstations. Even with this constraint, our codec can generate a flexible range of layers while exhibiting reasonable compression performance. Steven McCanne, Martin Vetterli |
ICIP | 1 |
| 1995 | An Application Level Video GatewayabstractThe current model for multicast transmission of video over the Internet assumes that a fixed average bandwidth is uniformly present throughout the network. Consequently, sources limit their transmission rates to accommodate the lowest bandwidth links, even though high-bandwidth connectivity might be available to many of the participants. We propose an architecture where a video transmission can be decomposed into multiple sessions with different bandwidth requirements using an application-level gateway. Our video gateway transparently connects pairs of sessions into a single logical conference by manipulating the data and control information of the video streams. In particular, the gateway performs bandwidth adaptation through transcoding and rate-control. We describe an efficient algorithm for transcoding Motion-JPEG to H.261 that runs in real-time on standard workstations. By making the Real-time Transport Protocol (RTP) an integral component of our architecture, the video gateway in... Elan Amir, Steven McCanne, Hui Zhang 0001 |
ACM Multimedia | 2 |
| 1995 | vic: A Flexible Framework for Packet VideoabstractNo abstract available. Steven McCanne, Van Jacobson |
ACM Multimedia | 1 |
| 1995 | Workstation Video Playback Performance with Competitive Process Load
Kevin R. Fall, Joseph Pasquale, Steven McCanne |
NOSSDAV | 3 |
| 1995 | A Reliable Multicast Framework for Light-Weight Sessions and Application Level FramingabstractThis paper describes SRM (Scalable Reliable Multicast), a reliable multicast framework for application level framing and light-weight sessions. The algorithms of this framework are efficient, robust, and scale well to both very large networks and very large sessions. The framework has been prototyped in wb, a distributed whiteboard application, and has been extensively tested on a global scale with sessions ranging from a few to more than 1000 participants. The paper describes the principles that have guided our design, including the IP multicast group delivery model, an end-to-end, receiver-based model of reliability, and the application level framing protocol model. As with unicast communications, the performance of a reliable multicast delivery algorithm depends on the underlying topology and operational environment. We investigate that dependence via analysis and simulation, and demonstrate an adaptive algorithm that uses the results of previous loss recovery events to adapt the control parameters used for future loss recovery. With the adaptive algorithm, our reliable multicast delivery algorithm provides good performance over a wide range of underlying topologies. Sally Floyd, Van Jacobson, Steven McCanne, Ching-Gung Liu, Lixia Zhang 0001 |
SIGCOMM | 3 |