VLDB 2026 Research / reviewers in the wild / expert
Dejan Kostic
dblp:03/3188
· DBLP profile ↗
55ranked-venue papers
4as first author
9since 2021 · last 2026
0000-0002-1256-1070ORCID · verified
Domains — the database's venue-derived domains; a paper can count in several
Computer networks · 26 · 6 since 2021Systems, architecture and hardware · 16 · 3 first-author · 1 since 2021Software engineering, systems software and programming languages · 11 · 1 first-author · 2 since 2021Security and privacy · 3 · 1 since 2021
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2026 | Queue-Mem: Energy-Efficient Hardware Storage for Advanced Network Function Acceleration
Mariano Scazzariello, Tommaso Caiazzi, Hamid Ghasemirahni, Dejan Kostic, Marco Chiesa |
NSDI | 4 |
| 2023 | DeepGANTT: A Scalable Deep Learning Scheduler for Backscatter NetworksabstractNovel backscatter communication techniques enable battery-free sensor tags to interoperate with unmodified standard IoT devices, extending a sensor network’s capabilities in a scalable manner. Without requiring additional dedicated infrastructure, the battery-free tags harvest energy from the environment, while the IoT devices provide them with the unmodulated carrier they need to communicate. A schedule coordinates the provision of carriers for the communications of battery-free devices with IoT nodes. Optimal carrier scheduling is an NP-hard problem that limits the scalability of network deployments. Thus, existing solutions waste energy and other valuable resources by scheduling the carriers suboptimally. We present DeepGANTT, a deep learning scheduler that leverages graph neural networks to efficiently provide near-optimal carrier scheduling. We train our scheduler with optimal schedules of relatively small networks obtained from a constraint optimization solver, achieving a performance within 3% of the optimum. Without the need to retrain, our scheduler generalizes to networks 6 × larger in the number of nodes and 10 × larger in the number of tags than those used for training. DeepGANTT breaks the scalability limitations of the optimal scheduler and reduces carrier utilization by up to compared to the state-of-the-art heuristic. As a consequence, our scheduler efficiently reduces energy and spectrum utilization in backscatter networks. Daniel F. Perez-Ramirez, Carlos M. Pérez-Penichet, Nicolas Tsiftes, Thiemo Voigt, Dejan Kostic, Magnus Boman |
IPSN | 5 |
| 2023 | A High-Speed Stateful Packet Processing Approach for Tbps Programmable Switches
Mariano Scazzariello, Tommaso Caiazzi, Hamid Ghasemirahni, Tom Barbette, Dejan Kostic, Marco Chiesa |
NSDI | 5 |
| 2022 | Packet Order Matters! Improving Application Performance by Deliberately Delaying Packets
Hamid Ghasemirahni, Tom Barbette, George P. Katsikas, Alireza Farshin, Amir Roozbeh, Massimo Girondi, Marco Chiesa, Gerald Q. Maguire Jr., Dejan Kostic |
NSDI | 9 |
| 2022 | RDMA is Turing complete, we just did not know it yet!
Waleed Reda, Marco Canini, Dejan Kostic, Simon Peter 0001 |
NSDI | 3 |
| 2022 | Cheetah: A High-Speed Programmable Load-Balancer Framework With Guaranteed Per-Connection-ConsistencyabstractLarge service providers use load balancers to dispatch millions of incoming connections per second towards thousands of servers. There are two basic yet critical requirements for a load balancer:uniform load distributionof the incoming connections across the servers, which requires to support advanced load balancing mechanisms, andper-connection-consistency(PCC), i.e, the ability to map packets belonging to the same connection to the same server even in the presence of changes in the number of active servers and load balancers. Yet, simultaneously meeting these requirements has been an elusive goal. Today’s load balancers minimize PCC violations at the price of non-uniform load distribution. This paper presents Cheetah, a load balancer that supports advanced load balancing mechanismsandPCC while being scalable, memory efficient, fast at processing packets, and offers comparable resilience to clogging attacks as with today’s load balancers. The Cheetah LB design guarantees PCC foranyrealizable server selection load balancing mechanism and can be deployed in both stateless and stateful manners, depending on operational needs. We implemented Cheetah on both a software and a Tofino-based hardware switch. Our evaluation shows that a stateless version of Cheetah guarantees PCC, has negligible packet processing overheads, and can support load balancing mechanisms that reduce the flow completion time by a factor of$2-3 \times $. Tom Barbette, Erfan Wu, Dejan Kostic, Gerald Q. Maguire Jr., Panagiotis Papadimitratos, Marco Chiesa |
IEEE/ACM Trans. Netw. | 3 |
| 2021 | PacketMill: toward per-Core 100-Gbps networkingabstractWe present PacketMill, a system for optimizing software packet processing, which (i) introduces a new model to efficiently manage packet metadata and (ii) employs code-optimization techniques to better utilize commodity hardware. PacketMill grinds the whole packet processing stack, from the high-level network function configuration file to the low-level userspace network (specifically DPDK) drivers, to mitigate inefficiencies and produce a customized binary for a given network function. Our evaluation results show that PacketMill increases throughput (up to 36.4 Gbps -- 70%) & reduces latency (up to 101 us -- 28%) and enables nontrivial packet processing (e.g., router) at ~100 Gbps, when new packets arrive >10× faster than main memory access times, while using only one processing core. Alireza Farshin, Tom Barbette, Amir Roozbeh, Gerald Q. Maguire Jr., Dejan Kostic |
ASPLOS | 5 |
| 2021 | What You Need to Know About (Smart) Network Interface Cards
George P. Katsikas, Tom Barbette, Marco Chiesa, Dejan Kostic, Gerald Q. Maguire Jr. |
PAM | 4 |
| 2021 | LineFS: Efficient SmartNIC Offload of a Distributed File System with Pipeline ParallelismabstractIn multi-tenant systems, the CPU overhead of distributed file systems (DFSes) is increasingly a burden to application performance. CPU and memory interference cause degraded and unstable application and storage performance, in particular for operation latency. Recent client-local DFSes for persistent memory (PM) accelerate this trend. DFS offload to SmartNICs is a promising solution to these problems, but it is challenging to fit the complex demands of a DFS onto simple SmartNIC processors located across PCIe. Jongyul Kim 0001, Insu Jang, Waleed Reda, Jaeseong Im, Marco Canini, Dejan Kostic, Youngjin Kwon, Simon Peter 0001, Emmett Witchel |
SOSP | 6 |
| 2020 | Stateless CPU-aware datacenter load-balancingabstractToday, datacenter operators deploy Load-balancers (LBs) to efficiently utilize server resources, but must over-provision server resources (by up to 30%) because of load imbalances and the desire to bound tail service latency. We posit one of the reasons for these imbalances is the lack of per-core load statistics in existing LBs. As a first step, we designed CrossRSS, a CPU core-aware LB that dynamically assigns incoming connections to the least loaded cores in the server pool. CrossRSS leverages knowledge of the dispatching by each server's Network Interface Card (NIC) to specific cores to reduce imbalances by more than an order of magnitude compared to existing LBs in a proof-of-concept datacenter environment, processing 12% more packets with the same number of cores. Tom Barbette, Marco Chiesa, Gerald Q. Maguire Jr., Dejan Kostic |
CoNEXT | 4 |
| 2020 | A High-Speed Load-Balancer Design with Guaranteed Per-Connection-Consistency
Tom Barbette, Haoran Yao, Dejan Kostic, Gerald Q. Maguire Jr., Panagiotis Papadimitratos, Marco Chiesa |
NSDI | 4 |
| 2020 | Assise: Performance and Availability via Client-local NVM in a Distributed File System
Thomas E. Anderson, Marco Canini, Jongyul Kim 0001, Dejan Kostic, Youngjin Kwon, Simon Peter 0001, Waleed Reda, Henry Schuh, Emmett Witchel |
OSDI | 4 |
| 2020 | Reexamining Direct Cache Access to Optimize I/O Intensive Applications for Multi-hundred-gigabit Networks
Alireza Farshin, Amir Roozbeh, Gerald Q. Maguire Jr., Dejan Kostic |
USENIX ATC | 4 |
| 2020 | Metron: High-performance NFV Service Chaining Even in the Presence of BlackboxesabstractDeployment of 100Gigabit Ethernet (GbE) links challenges the packet processing limits of commodity hardware used for Network Functions Virtualization (NFV). Moreover, realizing chained network functions (i.e., service chains) necessitates the use of multiple CPU cores, or even multiple servers, to process packets from such high speed links. Our system Metron jointly exploits the underlying network and commodity servers’ resources: ( i ) to offload part of the packet processing logic to the network, ( ii ) by using smart tagging to setup and exploit the affinity of traffic classes, and ( iii ) by using tag-based hardware dispatching to carry out the remaining packet processing at the speed of the servers’ cores, with zero inter-core communication. Moreover, Metron transparently integrates, manages, and load balances proprietary “blackboxes” together with Metron service chains. Metron realizes stateful network functions at the speed of 100GbE network cards on a single server, while elastically and rapidly adapting to changing workload volumes. Our experiments demonstrate that Metron service chains can coexist with heterogeneous blackboxes, while still leveraging Metron’s accurate dispatching and load balancing. In summary, Metron has ( i ) 2.75–8× better efficiency, up to ( ii ) 4.7× lower latency, and ( iii ) 7.8× higher throughput than OpenBox, a state-of-the-art NFV system. George P. Katsikas, Tom Barbette, Dejan Kostic, Gerald Q. Maguire Jr., Rebecca Steinert |
ACM Trans. Comput. Syst. | 3 |
| 2019 | RSS++: load and state-aware receive side scalingabstractWhile the current literature typically focuses on load-balancing among multiple servers, in this paper, we demonstrate the importance of load-balancing within a single machine (potentially with hundreds of CPU cores). In this context, we propose a new load-balancing technique (RSS++) that dynamically modifies the receive side scaling (RSS) indirection table to spread the load across the CPU cores in a more optimal way. RSS++ incurs up to 14x lower 95th percentile tail latency and orders of magnitude fewer packet drops compared to RSS under high CPU utilization. RSS++ allows higher CPU utilization and dynamic scaling of the number of allocated CPU cores to accommodate the input load while avoiding the typical 25% over-provisioning. Tom Barbette, George P. Katsikas, Gerald Q. Maguire Jr., Dejan Kostic |
CoNEXT | 4 |
| 2019 | Make the Most out of Last Level Cache in Intel ProcessorsabstractIn modern (Intel) processors, Last Level Cache (LLC) is divided into multiple slices and an undocumented hashing algorithm (aka Complex Addressing) maps different parts of memory address space among these slices to increase the effective memory bandwidth. After a careful study of Intel's Complex Addressing, we introduce a slice-aware memory management scheme, wherein frequently used data can be accessed faster via the LLC. Using our proposed scheme, we show that a key-value store can potentially improve its average performance ~12.2% and ~11.4% for 100% & 95% GET workloads, respectively. Furthermore, we propose CacheDirector, a network I/O solution which extends Direct Data I/O (DDIO) and places the packet's header in the slice of the LLC that is closest to the relevant processing core. We implemented CacheDirector as an extension to DPDK and evaluated our proposed solution for latency-critical applications in Network Function Virtualization (NFV) systems. Evaluation results show that CacheDirector makes packet processing faster by reducing tail latencies (90-99th percentiles) by up to 119 μs (~21.5%) for optimized NFV service chains that are running at 100 Gbps. Finally, we analyze the effectiveness of slice-aware memory management to realize cache isolation. Alireza Farshin, Amir Roozbeh, Gerald Q. Maguire Jr., Dejan Kostic |
EuroSys | 4 |
| 2018 | Fast and Accurate Load Balancing for Geo-Distributed Storage SystemsabstractThe increasing density of globally distributed datacenters reduces the network latency between neighboring datacenters and allows replicated services deployed across neighboring locations to share workload when necessary, without violating strict Service Level Objectives (SLOs). Kirill Bogdanov 0001, Waleed Reda, Gerald Q. Maguire Jr., Dejan Kostic, Marco Canini |
SoCC | 4 |
| 2018 | Control under Intermittent Network PartitionsabstractWe propose a novel distributed leader election algorithm to deal with the controller and control service availability issues in programmable networks, such as Software Defined Networks (SDN) or programmable Radio Access Network (RAN). Our approach can deal with a wide range of network failures, especially intermittent network partitions, where splitting and merging of a network repeatedly occur. In contrast to traditional leader election algorithms that mainly focus on the (eventual) consensus on one leader, the proposed algorithm aims at optimizing control service availability, stability and reducing the controller state synchronization effort during intermittent network partitioning situations. To this end, we design a new framework that enables dynamic leader election based on real-time estimates acquired from statistical monitoring. With this framework, the proposed leader election algorithm has the capability of being flexibly configured to achieve different optimization objectives, while adapting to various failure patterns. Compared with two existing algorithms, our approach can significantly reduce the synchronization overhead (up to 12x) due to controller state updates, and maintain up to twice more nodes under a controller. Shaoteng Liu, Rebecca Steinert, Dejan Kostic |
ICC | 3 |
| 2018 | Flexible distributed control plane deploymentabstractFor large-scale programmable networks, flexible deployment of distributed control planes is essential for service availability and performance. However, existing approaches only focus on placing controllers whereas the consequent control traffic is often ignored. In this paper, we propose a black-box optimization framework offering the additional steps for quanti-fying the effect of the consequent control traffic when deploying a distributed control plane. Evaluating different implementations of the framework over real-world topologies shows that close to optimal solutions can be achieved. Moreover, experiments indicate that running a method for controller placement without considering the control traffic, cause excessive bandwidth usage (worst cases varying between 20.1%-50.1% more) and congestion, compared to our approach. Shaoteng Liu, Rebecca Steinert, Dejan Kostic |
NOMS | 3 |
| 2018 | Metron: NFV Service Chains at the True Speed of the Underlying Hardware
George P. Katsikas, Tom Barbette, Dejan Kostic, Rebecca Steinert, Gerald Q. Maguire Jr. |
NSDI | 3 |
| 2018 | Methodology, measurement and analysis of flow table update characteristics in hardware openflow switches
Maciej Kuzniar, Peter Peresíni, Dejan Kostic, Marco Canini |
Comput. Networks | 3 |
| 2018 | Dynamic, Fine-Grained Data Plane Monitoring With MonocleabstractEnsuring network reliability is important for satisfying service-level objectives. However, diagnosing network anomalies in a timely fashion is difficult due to the complex nature of network configurations. We present Monocle - a system that uncovers forwarding problems due to hardware or software failures in switches, by verifying that the data plane corresponds to the view that an SDN controller installs via the control plane. Monocle works by systematically probing the switch data plane; the probes are constructed by formulating the switch forwarding table logic as a Boolean satisfiability (SAT) problem. Our SAT formulation quickly generates probe packets targeting a particular rule considering both existing and new rules. Monocle can monitor not only static flow tables (as is currently typically the case), but also dynamic networks with frequent flow table changes. Our evaluation shows that Monocle is capable of fine-grained monitoring for the majority of rules, and it can identify a rule suddenly missing from the data plane or misbehaving in a matter of seconds. In fact, during our evaluation Monocle uncovered problems with two hardware switches that we were using in our evaluation. Finally, during network updates Monocle helps controllers cope with switches that exhibit transient inconsistencies between their control and data plane states. Peter Peresíni, Maciej Kuzniar, Dejan Kostic |
IEEE/ACM Trans. Netw. | 3 |
| 2017 | Rein: Taming Tail Latency in Key-Value Stores via Multiget SchedulingabstractWe tackle the problem of reducing tail latencies in distributed key-value stores, such as the popular Cassandra database. We focus on workloads of multiget requests, which batch together access to several data elements and parallelize read operations across the data store machines. We first analyze a production trace of a real system and quantify the skew due to multiget sizes, key popularity, and other factors. We then proceed to identify opportunities for reduction of tail latencies by recognizing the composition of aggregate requests and by carefully scheduling bottleneck operations that can otherwise create excessive queues. We design and implement a system called Rein, which reduces latency via inter-multiget scheduling using low overhead techniques. We extensively evaluate Rein via experiments in Amazon Web Services (AWS) and simulations. Our scheduling algorithms reduce the median, 95th, and 99th percentile latencies by factors of 1.5, 1.5, and 1.9, respectively. Waleed Reda, Marco Canini, Lalith Suresh 0001, Dejan Kostic, Sean Braithwaite |
EuroSys | 4 |
| 2017 | Profiling and accelerating commodity NFV service chains with SCCabstractRecent approaches to network functions virtualization (NFV) have shown that commodity network stacks and drivers struggle to keep up with increasing hardware speed. Despite this, popular cloud networking services still rely on commodity operating systems (OSs) and device drivers. Taking into account the hardware underlying of commodity servers, we built an NFV profiler that tracks the movement of packets across the system’s memory hierarchy by collecting key hardware and OS-level performance counters. Leveraging the profiler’s data, our Service Chain Coordinator’s (SCC) run-time accelerates user-space NFV service chains, based on commodity drivers. To do so, SCC combines multiplexing of system calls with scheduling strategies, taking time, priority, and processing load into account. By granting longer time quanta to chained network functions (NFs), combined with I/O multiplexing, SCC reduces unnecessary scheduling and I/O overheads, resulting in three-fold latency reduction due to cache and main memory utilization improvements. More importantly, SCC reduces the latency variance of NFV service chains by up to 40x compared to standard FastClick chains by making the average case for an NFV chain to perform as well as the best case. These improvements are possible because of our profiler’s accuracy. George P. Katsikas, Gerald Q. Maguire Jr., Dejan Kostic |
J. Syst. Softw. | 3 |
| 2015 | The nearest replica can be farther than you thinkabstractModern distributed systems are geo-distributed for reasons of increased performance, reliability, and survivability. At the heart of many such systems, e.g., the widely used Cassandra and MongoDB data stores, is an algorithm for choosing a closest set of replicas to service a client request. Suboptimal replica choices due to dynamically changing network conditions result in reduced performance as a result of increased response latency. We present GeoPerf, a tool that tries to automate the process of systematically testing the performance of replica selection algorithms for geo-distributed storage systems. Our key idea is to combine symbolic execution and lightweight modeling to generate a set of inputs that can expose weaknesses in replica selection. As part of our evaluation, we analyzed network round trip times between geographically distributed Amazon EC2 regions, and showed a significant number of daily changes in nearest-K replica orders. We tested Cassandra and MongoDB using our tool, and found bugs in each of these systems. Finally, we use our collected Amazon EC2 latency traces to quantify the time lost due to these bugs. For example due to the bug in Cassandra, the median wasted time for 10% of all requests is above 50 ms. Kirill Bogdanov 0001, Miguel Peón-Quirós, Gerald Q. Maguire Jr., Dejan Kostic |
SoCC | 4 |
| 2015 | Monocle: dynamic, fine-grained data plane monitoringabstractEnsuring network reliability is important for satisfying service-level objectives. However, diagnosing network anomalies in a timely fashion is difficult due to the complex nature of network configurations. We present Monocle --- a system that uncovers forwarding problems due to hardware or software failures in switches, by verifying that the data plane corresponds to the view that an SDN controller installs via the control plane. Monocle works by systematically probing the switch data plane; the probes are constructed by formulating the switch forwarding table logic as a Boolean satisfiability (SAT) problem. Our SAT formulation quickly generates probe packets targeting a particular rule considering both existing and new rules. Monocle can monitor not only static flow tables (as is currently typically the case), but also dynamic networks with frequent flow table changes. Our evaluation shows that Monocle is capable of finegrained monitoring for the majority of rules, and it can identify a rule suddenly missing from the data plane or misbehaving in a matter of seconds. Also, during network updates Monocle helps controllers cope with switches that exhibit transient inconsistencies between their control and data plane states. Peter Peresíni, Maciej Kuzniar, Dejan Kostic |
CoNEXT | 3 |
| 2015 | What You Need to Know About SDN Flow Tables
Maciej Kuzniar, Peter Peresíni, Dejan Kostic |
PAM | 3 |
| 2015 | Toward Automated Testing of Geo-Distributed Replica Selection AlgorithmsabstractMany geo-distributed systems rely on a replica selection algorithms to communicate with the closest set of replicas. Unfortunately, the bursty nature of the Internet traffic and ever changing network conditions present a problem in identifying the best choices of replicas. Suboptimal replica choices result in increased response latency and reduced system performance. In this work we present GeoPerf, a tool that tries to automate testing of geo-distributed replica selection algorithms. We used GeoPerf to test Cassandra and MongoDB, two popular data stores, and found bugs in each of these systems. Kirill Bogdanov 0001, Miguel Peón-Quirós, Gerald Q. Maguire Jr., Dejan Kostic |
SIGCOMM | 4 |
| 2015 | Rule-level Data Plane Monitoring With MonocleabstractWe present Monocle, a system that systematically monitors the network data plane, and verifies that it corresponds to the view that the SDN controller builds and tries to enforce in the switches. Our evaluation shows that Monocle is capable of fine-grained per-rule monitoring for the majority of rules. In addition, it can help controllers to cope with switches that exhibit transient inconsistencies between their control plane and data plane states. Peter Peresíni, Maciej Kuzniar, Dejan Kostic |
SIGCOMM | 3 |
| 2015 | Systematically testing OpenFlow controller applications
Peter Peresíni, Maciej Kuzniar, Marco Canini, Daniele Venzano, Dejan Kostic, Jennifer Rexford |
Comput. Networks | 5 |
| 2014 | Providing Reliable FIB Update Acknowledgments in SDNabstractIn this paper, we first show that transient, but grave problems such as violations of security policies can occur with real switches even when using consistent updates to Software Defined Networks. Next, we present techniques that are effective in ameliorating this problem. Our key insight is in creating a transparent layer that relies on control and data plane measurements to confirm rule updates only when the rule is visible in the data plane. Maciej Kuzniar, Peter Peresíni, Dejan Kostic |
CoNEXT | 3 |
| 2013 | Is the network capable of computation?abstractEnsuring correct network behavior is hard. Previous state of the art has demonstrated that analyzing a network containing middleboxes is hard. In this paper, we show that even using only statically configured switches, and asking the simplest possible question - “Will this concrete packet reach the destination?” - can make the problem intractable. Moreover, we demonstrate that this is a fundamental property because a network can perform arbitrary computations. Namely, we show how to emulate the Rule 110 cellular automaton using only basic network switches with simple features such as packet matching, header rewriting and round-robin loadbalancing. This ultimately means that analyzing dynamic network behavior can be as hard as analyzing an arbitrary program. Peter Peresíni, Dejan Kostic |
ICNP | 2 |
| 2013 | DeepDive: Transparently Identifying and Managing Performance Interference in Virtualized Environments
Dejan M. Novakovic, Nedeljko Vasic, Stanko Novakovic, Dejan Kostic, Ricardo Bianchini |
USENIX ATC | 4 |
| 2012 | DejaVu: accelerating resource allocation in virtualized environmentsabstractEffective resource management of virtualized environments is a challenging task. State-of-the-art management systems either rely on analytical models or evaluate resource allocations by running actual experiments. However, both approaches incur a significant overhead once the workload changes. The former needs to re-calibrate and re-validate models, whereas the latter has to run a new set of experiments to select a new resource allocation. During the adaptation period, the system may run with an inefficient configuration. In this paper, we propose DejaVu - a framework that (1) minimizes the resource management overhead by identifying a small set of workload classes for which it needs to evaluate resource allocation decisions, (2) quickly adapts to workload changes by classifying workloads using signatures and caching their preferred resource allocations at runtime, and (3) deals with interference by estimating an "interference index". We evaluate DejaVu by running representative network services on Amazon EC2. DejaVu achieves more than 10x speedup in adaptation time for each workload change relative to the state-of-the-art. By enabling quick adaptation, DejaVu saves up to 60% of the service provisioning cost. Finally, DejaVu is easily deployable as it does not require any extensive instrumentation or human intervention. Nedeljko Vasic, Dejan M. Novakovic, Svetozar Miucin, Dejan Kostic, Ricardo Bianchini |
ASPLOS | 4 |
| 2012 | A SOFT way for openflow switch interoperability testingabstractThe increasing adoption of Software Defined Networking, and OpenFlow in particular, brings great hope for increasing extensibility and lowering costs of deploying new network functionality. A key component in these networks is the OpenFlow agent, a piece of software that a switch runs to enable remote programmatic access to its forwarding tables. While testing high-level network functionality, the correct behavior and interoperability of any OpenFlow agent are taken for granted. However, existing tools for testing agents are not exhaustive nor systematic, and only check that the agent's basic functionality works. In addition, the rapidly changing and sometimes vague OpenFlow specifications can result in multiple implementations that behave differently. Maciej Kuzniar, Peter Peresíni, Marco Canini, Daniele Venzano, Dejan Kostic |
CoNEXT | 5 |
| 2012 | A NICE Way to Test OpenFlow Applications
Marco Canini, Daniele Venzano, Peter Peresíni, Dejan Kostic, Jennifer Rexford |
NSDI | 4 |
| 2011 | Identifying and using energy-critical pathsabstractThe power consumption of the Internet and datacenter networks is already significant, and threatens to shortly hit the power delivery limits while the hardware is trying to sustain ever-increasing traffic requirements. Existing energy-reduction approaches in this domain advocate recomputing network configuration with each substantial change in demand. Unfortunately, computing the minimum network subset is computationally hard and does not scale. Thus, the network is forced to operate with diminished performance during the recomputation periods. In this paper, we propose REsPoNse, a framework which overcomes the optimality-scalability trade-off. The insight in REsPoNse is to identify a few energy-critical paths off-line, install them into network elements, and use a simple online element to redirect the traffic in a way that enables large parts of the network to enter a low-power state. We evaluate REsPoNse with real network data and demonstrate that it achieves the same energy savings as the existing approaches, with marginal impact on network scalability and application performance. Nedeljko Vasic, Prateek Bhurat, Dejan M. Novakovic, Marco Canini, Satyam Shekhar, Dejan Kostic |
CoNEXT | 6 |
| 2011 | Sahara: Guiding the debugging of failed software upgradesabstractToday, debugging failed software upgrades is a long and tedious activity, as developers may have to consider large sections of code to locate the bug. We argue that failed upgrade debugging can be simplified by exploiting the characteristics of upgrade problems to prioritize the set of routines to consider. In particular, previous work has shown that differences between the computing environment in the developer's and users' sites cause most upgrade problems. Based on this observation, we design and implement Sahara, a system that identifies the aspects of the environment that are most likely the culprits of the misbehavior, finds the subset of routines that relate to those aspects, and selects an even smaller subset of routines to debug first. We evaluate Sahara for three real upgrade problems with the OpenSSH suite, one synthetic problem with the SQLite database, and one synthetic problem with the uServer Web server. Our results show that the system produces accurate recommendations comprising only a small number of routines. Rekha Bachwani, Olivier Crameri, Ricardo Bianchini, Dejan Kostic, Willy Zwaenepoel |
ICSM | 4 |
| 2011 | Online testing of federated and heterogeneous distributed systemsabstractDiCE is a system for online testing of federated and heterogeneous distributed systems. We have built a prototype of DiCE and integrated it with an open-source BGP router. DiCE quickly detects three important classes of faults, resulting from configuration mistakes, policy conflicts and programming errors. Marco Canini, Vojin Jovanovic, Daniele Venzano, Dejan M. Novakovic, Dejan Kostic |
SIGCOMM | 5 |
| 2011 | Insomnia in the access: or how to curb access network related energy consumptionabstractAccess networks include modems, home gateways, and DSL Access Multiplexers (DSLAMs), and are responsible for 70-80% of total network-based energy consumption. In this paper, we take an in-depth look at the problem of greening access networks, identify root problems, and propose practical solutions for their user- and ISP-parts. On the user side, the combination of continuous light traffic and lack of alternative paths condemns gateways to being powered most of the time despite having Sleep-on-Idle (SoI) capabilities. To address this, we introduce Broadband Hitch-Hiking (BH2), that takes advantage of the overlap of wireless networks to aggregate user traffic in as few gateways as possible. In current urban settings BH2 can power off 65-90% of gateways. Powering off gateways permits the remaining ones to synchronize at higher speeds due to reduced crosstalk from having fewer active lines. Our tests reveal speedup up to 25%. On the ISP side, we propose introducing simple inexpensive switches at the distribution frame for batching active lines to a subset of cards letting the remaining ones sleep. Overall, our results show an 80% energy savings margin in access networks. The combination of B2 and switching gets close to this margin, saving 66% on average. Eduard Goma Llairo, Marco Canini, Alberto López Toledo, Nikolaos Laoutaris, Dejan Kostic, Pablo Rodriguez 0001, Rade Stanojevic, Pablo Yagüe Valentin |
SIGCOMM | 5 |
| 2011 | Finding Almost-Invariants in Distributed SystemsabstractIt is notoriously hard to develop dependable distributed systems. This is partly due to the difficulties in foreseeing various corner cases and failure scenarios while implementing a system that will be deployed over an asynchronous network. In contrast, reasoning about the desired distributed system behavior and the corresponding invariants is easier than reasoning about the code itself. Further, the invariants can be used for testing, theorem proving, and runtime enforcement. In this paper, we propose an approach to observe the system behavior and automatically infer invariants which reveal implementation bugs. Using our tool, Avenger, we automatically generate a large number of potentially relevant properties, check them within the time and spatial domains using traces of system executions, and filter out all but a few properties before reporting them to the developer. Our key insight in filtering is that a good candidate for an invariant is the one that holds in all but a few cases, i.e., an "almost-invariant". Our experimental results with the XORP BGP implementation demonstrate Avenger's ability to identify the almost-invariants that lead the developer to programming errors. Maysam Yabandeh, Abhishek Anand, Marco Canini, Dejan Kostic |
SRDS | 4 |
| 2011 | Toward Online Testing of Federated and Heterogeneous Distributed Systems
Marco Canini, Vojin Jovanovic, Daniele Venzano, Boris Spasojevic, Olivier Crameri, Dejan Kostic |
USENIX ATC | 6 |
| 2010 | Predicting and preventing inconsistencies in deployed distributed systemsabstractWe propose a new approach for developing and deploying distributed systems, in which nodes predict distributed consequences of their actions and use this information to detect and avoid errors. Each node continuously runs a state exploration algorithm on a recent consistent snapshot of its neighborhood and predicts possible future violations of specified safety properties. We describe a new state exploration algorithm, consequence prediction, which explores causally related chains of events that lead to property violation. This article describes the design and implementation of this approach, termed CrystalBall. We evaluate CrystalBall on RandTree, BulletPrime, Paxos, and Chord distributed system implementations. We identified new bugs in mature Mace implementations of three systems. Furthermore, we show that if the bug is not corrected during system development, CrystalBall is effective in steering the execution away from inconsistent states at runtime. Maysam Yabandeh, Nikola Knezevic, Dejan Kostic, Viktor Kuncak |
ACM Trans. Comput. Syst. | 3 |
| 2009 | Introduction
Dejan Kostic, Guillaume Pierre, Flavio Paiva Junqueira, Peter R. Pietzuch |
Euro-Par | 1 |
| 2009 | Simplifying Distributed System Development
Maysam Yabandeh, Nedeljko Vasic, Dejan Kostic, Viktor Kuncak |
HotOS | 3 |
| 2009 | CrystalBall: Predicting and Preventing Inconsistencies in Deployed Distributed Systems
Maysam Yabandeh, Nikola Knezevic, Dejan Kostic, Viktor Kuncak |
NSDI | 3 |
| 2008 | High-bandwidth data dissemination for large-scale distributed systemsabstractThis article focuses on the multireceiver data dissemination problem. Initially, IP multicast formed the basis for efficiently supporting such distribution. More recently, overlay networks have emerged to support point-to-multipoint communication. Both techniques focus on constructing trees rooted at the source to distribute content among all interested receivers. We argue, however, that trees have two fundamental limitations for data dissemination. First, since all data comes from a single parent, participants must often continuously probe in search of a parent with an acceptable level of bandwidth. Second, due to packet losses and failures, available bandwidth is monotonically decreasing down the tree. To address these limitations, we present Bullet, a data dissemination mesh that takes advantage of the computational and storage capabilities of end hosts to create a distribution structure where a node receives data in parallel from multiple peers. For the mesh to deliver improved bandwidth and reliability, we need to solve several key problems: (i) disseminating disjoint data over the mesh, (ii) locating missing content, (iii) finding who to peer with (peering strategy), (iv) retrieving data at the right rate from all peers (flow control), and (v) recovering from failures and adapting to dynamically changing network conditions. Additionally, the system should be self-adjusting and should have few user-adjustable parameter settings. We describe our approach to addressing all of these problems in a working, deployed system across the Internet. Bullet outperforms state-of-the-art systems, including BitTorrent, by 25-70% and exhibits strong performance and reliability in a range of deployment settings. In addition, we find that, relative to tree-based solutions, Bullet reduces the need to perform expensive bandwidth probing. Dejan Kostic, Alex C. Snoeren, Amin Vahdat, Ryan Braud, Chip Killian, James W. Anderson, Jeannie R. Albrecht, Adolfo Rodriguez, Erik Vandekieft |
ACM Trans. Comput. Syst. | 1 |
| 2007 | A High Throughput Atomic Storage AlgorithmabstractThis paper presents an algorithm to ensure the atomicity of a distributed storage that can be read and written by any number of clients. In failure-free and synchronous situations, and even if there is contention, our algorithm has a high write throughput and a read throughput that grows linearly with the number of available servers. The algorithm is devised with a homogeneous cluster of servers in mind. It organizes servers around a ring and assumes point-to-point communication. It is resilient to the crash failure of any number of readers and writers as well as to the crash failure of all but one server. We evaluated our algorithm on a cluster of 24 nodes with dual fast ethernet network interfaces (100 Mbps). We achieve 81 Mbps of write throughput and 8×90 Mbps of read throughput (with up to 8 servers) which conveys the linear scalability with the number of servers. Rachid Guerraoui, Dejan Kostic, Ron R. Levy, Vivien Quéma |
ICDCS | 2 |
| 2007 | Staged deployment in mirage, an integrated software upgrade testing and distribution systemabstractDespite major advances in the engineering of maintainable and robust software over the years, upgrading software remains a primitive and error-prone activity. In this paper, we argue that several problems with upgrading software are caused by a poor integration between upgrade deployment, user-machine testing, and problem reporting. To support this argument, we present a characterization of softwareupgrades resulting from a survey we conducted of 50 system administrators. Motivated by the survey results, we present Mirage, a distributed framework for integrating upgrade deployment, user-machine testing, and problem reporting into the overall upgrade development process. Our evaluation focuses on the most novel aspect of Mirage, namely its staged upgrade deployment based on the clustering of usermachines according to their environments and configurations. Our results suggest that Mirage's staged deployment is effective for real upgrade problems. Olivier Crameri, Nikola Knezevic, Dejan Kostic, Ricardo Bianchini, Willy Zwaenepoel |
SOSP | 3 |
| 2005 | Maintaining High-Bandwidth Under Dynamic Network Conditions
Dejan Kostic, Ryan Braud, Chip Killian, Erik Vandekieft, James W. Anderson, Alex C. Snoeren, Amin Vahdat |
USENIX ATC, General Track | 1 |
| 2004 | Scalability in Adaptive Multi-Metric OverlaysabstractIncreasing application requirements have placed heavy emphasis on building overlay networks to efficiently deliver data to multiple receivers. A key performance challenge is simultaneously achieving adaptivity to changing network conditions and scalability to large numbers of users. In addition, most current algorithms focus on a single performance metric, such as delay or bandwidth, particular to individual application requirements. We introduce a two-fold approach for creating robust, high-performance overlays called adaptive multimetric overlays (AMMO). First, AMMO uses an adaptive, highly-parallel, and metric-independent protocol, TreeMaint, to build and maintain overlay trees. Second, AMMO provides a mechanism for comparing overlay edges along specified application performance goals to guide TreeMaint transformations. We have used AMMO to implement and evaluate a single-metric (bandwidth-optimized) tree similar to Overcast and a two-metric (delay-constrained, cost-optimized) overlay. Adolfo Rodriguez, Dejan Kostic, Amin Vahdat |
ICDCS | 2 |
| 2004 | MACEDON: Methodology for Automatically Creating, Evaluating, and Designing Overlay Networks
Adolfo Rodriguez, Chip Killian, Sooraj Bhat, Dejan Kostic, Amin Vahdat |
NSDI | 4 |
| 2004 | FUSE: Lightweight Guaranteed Distributed Failure Notification
John Dunagan, Nicholas J. A. Harvey, Michael B. Jones, Dejan Kostic, Marvin Theimer, Alec Wolman |
OSDI | 4 |
| 2003 | Bullet: high bandwidth data dissemination using an overlay meshabstractIn recent years, overlay networks have become an effective alternative to IP multicast for efficient point to multipoint communication across the Internet. Typically, nodes self-organize with the goal of forming an efficient overlay tree, one that meets performance targets without placing undue burden on the underlying network. In this paper, we target high-bandwidth data distribution from a single source to a large number of receivers. Applications include large-file transfers and real-time multimedia streaming. For these applications, we argue that an overlay mesh, rather than a tree, can deliver fundamentally higher bandwidth and reliability relative to typical tree structures. This paper presents Bullet, a scalable and distributed algorithm that enables nodes spread across the Internet to self-organize into a high bandwidth overlay mesh. We construct Bullet around the insight that data should be distributed in a disjoint manner to strategic points in the network. Individual Bullet receivers are then responsible for locating and retrieving the data from multiple points in parallel.Key contributions of this work include: i) an algorithm that sends data to different points in the overlay such that any data object is equally likely to appear at any node, ii) a scalable and decentralized algorithm that allows nodes to locate and recover missing data items, and iii) a complete implementation and evaluation of Bullet running across the Internet and in a large-scale emulation environment reveals up to a factor two bandwidth improvements under a variety of circumstances. In addition, we find that, relative to tree-based solutions, Bullet reduces the need to perform expensive bandwidth probing. In a tree, it is critical that a node's parent delivers a high rate of application data to each child. In Bullet however, nodes simultaneously receive data from multiple sources in parallel, making it less important to locate any single source capable of sustaining a high transmission rate. Dejan Kostic, Adolfo Rodriguez, Jeannie R. Albrecht, Amin Vahdat |
SOSP | 1 |
| 2002 | Scalability and Accuracy in a Large-Scale Network Emulator
Amin Vahdat, Ken Yocum, Kevin Walsh 0001, Priya Mahadevan, Dejan Kostic, Jeffrey S. Chase |
OSDI | 5 |