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

Charles Krasic

dblp:28/4918 · DBLP profile ↗
← Back
12ranked-venue papers
4as first author
0since 2021 · last 2017
—ORCID · none

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

Graphics, computer vision, multimedia, augmented reality and games · 5 · 2 first-authorComputer networks · 4 · 1 first-authorSystems, architecture and hardware · 2 · 1 first-authorSoftware engineering, systems software and programming languages · 1Databases, data management, data science and information retrieval · 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
4 papers
Transport protocols and congestion control · 49% Content delivery and video streaming · 26% Internet architecture and protocols · 8%
Computer architecture, parallel and distributed computing, and storage systems
4 papers
Embedded and real-time systems · 42% Cloud and datacenter computing · 31% Parallel and multicore computing · 27%
Software engineering, system software, and programming languages
3 papers
Operating systems · 100%

Topics — the 12 heaviest of 16, each with the papers that count most for it

TopicWeightPapersLastEvidence papers
Transport protocols and congestion control
QUIC
0.312017
The QUIC Transport Protocol: Design and Internet-Scale Deployment · SIGCOMM 2017
Transport protocols and congestion control
transport protocol design
0.312017
The QUIC Transport Protocol: Design and Internet-Scale Deployment · SIGCOMM 2017
Parallel and multicore computing
parallel programming models
0.112012
DOHA: scalable real-time web applications through adaptive concurrent execution · WWW 2012
Embedded and real-time systems
real-time scheduling
0.122009
Fair and timely scheduling via cooperative polling · EuroSys 2009
Supporting Time-Sensitive Applications on a Commodity OS · OSDI 2002
Content delivery and video streaming
adaptive video streaming
0.122008
Interactivity and scalability enhancements for quality-adaptive streaming · ACM Multimedia 2008
Priority-progress streaming for quality-adaptive multimedia · ACM Multimedia 2001
Content delivery and video streaming › adaptive video streaming
quality-adaptive streaming
0.122008
Interactivity and scalability enhancements for quality-adaptive streaming · ACM Multimedia 2008
Priority-progress streaming for quality-adaptive multimedia · ACM Multimedia 2001
Network management and operations › fault management
fault diagnosis
0.112009
Non-intrusive, dynamic interference detection for 802.11 networks · Internet Measurement Conference 2009
Wireless networking
WLAN
0.112009
Non-intrusive, dynamic interference detection for 802.11 networks · Internet Measurement Conference 2009
Operating systems › resource management › process management
CPU scheduling
0.112009
Fair and timely scheduling via cooperative polling · EuroSys 2009
Operating systems › resource management › process management › CPU scheduling
hierarchical scheduling
0.112009
Fair and timely scheduling via cooperative polling · EuroSys 2009
Embedded and real-time systems › real-time scheduling
timing-constrained scheduling
0.112009
Fair and timely scheduling via cooperative polling · EuroSys 2009
Multimedia systems and quality of experience
interactive multimedia
0.012012
DOHA: scalable real-time web applications through adaptive concurrent execution · WWW 2012

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

resource-aware scheduling · 0.3concurrent execution · 0.3iterative experimentation · 0.3cooperative polling · 0.2application-level event scheduling · 0.2storage adaptation · 0.2processor adaptation · 0.2network adaptation · 0.2passive monitoring · 0.1specialization · 0.0quality-resource trade-off · 0.0manual code modification · 0.0graceful degradation · 0.0
YearPublicationVenuePosition
2017 The QUIC Transport Protocol: Design and Internet-Scale Deployment
abstract
We present our experience with QUIC, an encrypted, multiplexed, and low-latency transport protocol designed from the ground up to improve transport performance for HTTPS traffic and to enable rapid deployment and continued evolution of transport mechanisms. QUIC has been globally deployed at Google on thousands of servers and is used to serve traffic to a range of clients including a widely-used web browser (Chrome) and a popular mobile video streaming app (YouTube). We estimate that 7% of Internet traffic is now QUIC. We describe our motivations for developing a new transport, the principles that guided our design, the Internet-scale process that we used to perform iterative experiments on QUIC, performance improvements seen by our various services, and our experience deploying QUIC globally. We also share lessons about transport design and the Internet ecosystem that we learned from our deployment.
Adam Langley, Alistair Riddoch, Alyssa Wilk, Antonio Vicente, Charles Krasic, Fedor Kouranov, Ian Swett, Janardhan R. Iyengar, Jeff Bailey, Jeremy Dorfman, Jim Roskind, Joanna Kulik, Patrik Westin, Raman Tenneti, Robbie Shade, Ryan Hamilton, Victor Vasiliev, Wan-Teh Chang, Zhongyi Shi
SIGCOMM5
2012 DOHA: scalable real-time web applications through adaptive concurrent execution
abstract
Browsers have become mature execution platforms enabling web applications to rival their desktop counterparts. An important class of such applications is interactive multimedia: games, animations, and interactive visualizations. Unlike many early web applications, these applications are latency sensitive and processing (CPU and graphics) intensive. When demands exceed available resources, application quality (e.g., frame rate) diminishes because it is hard to balance timeliness and utilization. The quality of ambitious web applications is also limited by single-threaded execution prevalent in the Web. Applications need to scale their quality, and thereby scale processing load, based on the resources that are available. We refer to this as scalable quality.
Aiman Erbad, Norman C. Hutchinson, Charles Krasic
WWW3
2010 Paceline: latency management through adaptive output
abstract
Increasingly, multimedia applications need higher bandwidth to provide better quality, for example in multi-party HD video conferencing. This demanding class of interactive applications simultaneously require high bandwidth and low end-to-end latency, a conflicting combination that is poorly supported in existing transports. Conventional wisdom dictates that network applications have a choice of transport protocols between TCP, if a reliable service model is desired, or UDP, if control over timing is required. In this paper we present Paceline, an enhanced transport we have devised to support interactive, high-bandwidth applications. Paceline enhances the transport service model to support application adaptation, through prioritization to provide timely delivery of important data, and cancellation to adapt the application rate to match available bandwidth. However, contrary to conventional wisdom, Paceline has not been implemented over UDP, nor does Paceline propose changes to TCP. We believe that the deployment obstacles and duplication of effort faced by solutions that alter or replace TCP entirely outweigh the challenges of mitigating its impairments. Instead, Paceline employs several mechanisms to support timely priority order delivery and cancellation above TCP: an application-level rate controller to reduce queueing delay due to excessive socket buffering, failover among connections to handle extreme cases of congestion, and message fragmentation to reduce the granularity of preemption. Our evaluation shows that Paceline improves upon conventional end-to-end latency shortcomings of using TCP, by factor of 3 in median latency and a factor of 4 in worst case latency. Meanwhile, Paceline is able to preserve TCP's performance in terms of fairness and utilization. Finally, we compare application performance with Paceline to a representative TCP alternative, Structured Stream Transport (SST), showing Paceline to be highly competitive.
Aiman Erbad, Mahdi Tayarani Najaran, Charles Krasic
MMSys3
2009 Fair and timely scheduling via cooperative polling
abstract
Advances in hardware capacity, especially I/O devices such as cameras and displays, are driving the development of applications like high-definition video conferencing that have tight timing and CPU requirements. Unfortunately, current operating systems do not adequately provide the timing response needed by these applications. In this paper, we present a hierarchical scheduling model that aims to provide these applications with tight timing response, while at the same time preserve the strengths of current schedulers, namely fairness and efficiency. Our approach, called cooperative polling, consists of an application-level event scheduler and a kernel thread scheduler that cooperate to dispatch time-constrained application events accurately and with minimal kernel preemption, while still ensuring rigorously that all applications share resources fairly. Fairness is enforced in a flexible manner, allowing sharing according to a mixture of both traditional resource-centric metrics and new application-centric metrics, the latter being critical to support graceful application-level adaptation in overload. Unlike traditional real-time systems, our model does not require specification or estimation of resource requirements, simplifying its usage dramatically. Our evaluation, using an adaptive video application and a graphics server, shows that our system has event dispatch accuracies that are one to two orders of magnitude smaller than are achieved by existing schedulers. At the same time, our scheduler still maintains fairness and has low overhead.
Charles Krasic, Mayukh Saubhasik, Anirban Sinha, Ashvin Goel
EuroSys1
2009 Non-intrusive, dynamic interference detection for 802.11 networks
abstract
In densely packed 802.11 environments, access-point domains significantly overlap and wireless hosts interfere with each other in complex ways. Knowing which devices interfere is an essential first step to minimizing this interference, improving efficiency and delivering quality connectivity throughout the network. This knowledge, however, is extremely difficult to obtain without either taking a running network offline for measurements or having client hosts monitor and report airspace anomalies, something typically outside the control of network administrators.
Kan Cai, Michael Blackstock, Michael J. Feeley, Charles Krasic
Internet Measurement Conference4
2008 Interactivity and scalability enhancements for quality-adaptive streaming
abstract
In this paper we describe the design and implementation of our adaptive media streaming system and its support for fully interactive video navigation. The system builds upon and extends previous work on adaptive streaming, to encompass coordinated adaptation of network, processor, and storage resources. The adaptation methods we describe allow our application to provide robust and responsive streaming, that supports a wider set of video navigation modes unseen before in any previous streaming application.
Charles Krasic, Jean-Sébastien Légaré
ACM Multimedia1
2008 Low-latency adaptive streaming over tcp
abstract
Media streaming over TCP has become increasingly popular because TCP's congestion control provides remarkable stability to the Internet. Streaming over TCP requires adapting to bandwidth availability, but unforunately, TCP can introduce significant latency at the application level, which causes unresponsive and poor adaptation. This article shows that this latency is not inherent in TCP but occurs as a result of throughput-optimized TCP implementations. We show that this latency can be minimized by dynamically tuning TCP's send buffer. Our evaluation shows that this approach leads to better application-level adaptation and it allows supporting interactive and other low-latency applications over TCP.
Ashvin Goel, Charles Krasic, Jonathan Walpole
ACM Trans. Multim. Comput. Commun. Appl.2
2003 Adaptive Live Video Streaming by Priority Drop
abstract
In this paper we explore the use of priority progress streaming (PPS) for video surveillance applications. PPS is an adaptive streaming technique for the delivery of continuous media over variable bit-rate channels. It is based on the simple idea of reordering media components within a time window into priority order before transmission. The main concern when using PPS for live video streaming is the time delay introduced by reordering. In this paper we describe how PPS can be extended to support live streaming and show that the delay inherent in the approach can be tuned to satisfy a wide range of latency constraints while supporting fine-grain adaptation.
Jie Huang 0040, Charles Krasic, Jonathan Walpole, Wu-chi Feng
AVSS2
2003 Quality-adaptive media streaming by priority drop
abstract
This paper presents a general design strategy for streaming media applications in best effort computing and networking environments. Our target application is video on demand using personal computers and the Internet. In this scenario, where resource reservations and admission control mechanisms are not generally available, effective streaming must be able to adapt in a responsive and graceful manner. The design strategy we propose is based on a single simple idea, priority data dropping, or priority drop for short. We evaluate the efficacy of priority drop as an adaptation tool in the video and networking domains. Our technical contribution with respect to video is to show how to express adaptation policies and how to do priority-mapping, an automatic translation from adaptation policies to priority assignments on the basic units of video. For the networking domain, we present priority-progress streaming, a real-time best-effort streaming protocol. We have implemented and released a prototype video streaming system that incorporates priority-drop video, priority mapping, and priority-progress streaming. Our system demonstrates a simple encode once, stream anywhere model where a single video source can be streamed across a wide range of network bandwidths, on networks saturated with competing traffic, all the while maintaining real-time performance and gracefully adapting quality.
Charles Krasic, Jonathan Walpole, Wu-chi Feng
NOSSDAV1
2002 Supporting Time-Sensitive Applications on a Commodity OS
Ashvin Goel, Luca Abeni, Charles Krasic, Jim Snow, Jonathan Walpole
OSDI3
2001 Priority-progress streaming for quality-adaptive multimedia
abstract
The Internet's ubiquity amply motivates us to harness it for video distribution, however, its best-effort service model is in direct conflict with video's inherent timeliness requirements. Today, the Internet is unrivaled in its rich composition, consisting of an unparalleled assortment of networks and hosts. This richness is the result of an architecture that emphasizes interoperability over predictable performance. From the lowest levels, the Internet architecture prefers the best effort service model. We feel current solutions for media-streaming have yet to adequately address this conflict between timeliness and best-effort service.We propose that streaming-media solutions targetted at the Internet must fully embrace the notion of graceful degradation, they must be architected with the expectation that they operate within a continuum of service levels, adjusting quality-resource trade-offs as necessary to achieve timeliness requirements. In the context of the Internet, the continuum of service levels spans across a number oftime scales, ranging from sub-second timescales to timescales as long as months and years. We say sub-second timescales in relation to short-term dynamics such as network traffic and host workloads, while timescales of months and years relate to the continuous deployment of improving network, compute and storage infrastructure.We support our thesis with a proposal for a streaming model which we claim is simple enough to use end-to-end, yet expressive enough to tame the conflict between real-time and best-effort personalities of Internet streaming. The model is called Priority-Progress streaming. In this proposal, we will describe the main features of Priority-Progress streaming, which we have been implemented in a software-based streaming video system, called the Quasar pipeline.Our work is primarily concerned with the class of streaming applications. To prevent confusion, we now clarify the important distinction between streaming and other forms of distribution, namely download. For a video, we assume download is defined so that the transfer of the video must complete before the video is viewed. Transfer and viewing are temporally sequential. With this definition, it is a simple matter to employ Quality-adaptive video. One algorithm would be to deliver the entire video in the order from low to high quality components. The user may terminate the download early, and the incomplete video will automatically have as high quality as was possible. Thus, Quality-adaptive download can be implemented in an entirely best-effort, time-insensitive, fashion. On the other hand, we assume streaming means that the user views the video at the same time that the transfer occurs. Transfer and viewing are concurrent. There are timeliness requirements inherent in this definition, which can only be reconciled with best-effort delivery through a time-sensitive adaptive approach.
Charles Krasic, Jonathan Walpole
ACM Multimedia1
2001 Specialization tools and techniques for systematic optimization of system software
abstract
Specialization has been recognized as a powerful technique for optimizing operating systems. However, specialization has not been broadly applied beyond the research community because current techniques based on manual specialization, are time-consuming and error-prone. The goal of the work described in this paper is to help operating system tuners perform specialization more easily. We have built a specialization toolkit that assists the major tasks of specializing operating systems. We demonstrate the effectiveness of the toolkit by applying it to three diverse operating system components. We show that using tools to assist specialization enables significant performance optimizations without error-prone manual modifications. Our experience with the toolkit suggests new ways of designing systems that combine high performance and clean structure.
Dylan McNamee, Jonathan Walpole, Calton Pu, Crispin Cowan, Charles Krasic, Ashvin Goel, Perry Wagle, Charles Consel, Gilles Muller, Renaud Marlet
ACM Trans. Comput. Syst.5