Kirill Kogan

dblp:93/1311 · DBLP profile ↗
← Back
49ranked-venue papers
11as first author
9since 2021 · last 2021
0000-0001-5384-1899ORCID · verified

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

Computer networks · 36 · 9 first-author · 9 since 2021Theory of computation · 9 · 2 first-authorSystems, architecture and hardware · 4
YearPublicationVenuePosition
2021 PCL: Packet Classification with Limited Knowledge
abstract
We introduce a novel representation of packet classifiers allowing to operate on partially available input data varying dynamically. For a given packet classifier, availability of fields or complexity of field computations, and free target specific resources, the proposed infrastructure computes a classifier representation satisfying performance and robustness requirements. We show the feasibility to reconstruct a classification result in this noisy environment, allowing for the improvement of performance and the achievement of additional robustness levels of network infrastructure. Our results are supported by extensive evaluations in various settings where only a partial input is available.
Vitalii Demianiuk, Chen Hajaj, Kirill Kogan
INFOCOM3
2021 How to Network Delay-Sensitive Applications
Pavel Chuprikov, Kirill Kogan
Networking2
2021 SRPT-based Congestion Control for Flows with Unknown Sizes
abstract
Modern datacenter transports are required to support latency constraints, usually represented by various forms of flow completion time (FCT). Most implemented congestion control mechanisms that minimize FCT are based on SRPT priorities (e.g., pFabric and Homa). However, SRPT-based scheduling requires prior knowledge of flow sizes, making this discipline problematic in general. Non-SRPT-based alternatives such as LAS and PIAS are able to cope with this level of uncertainty but suffer from their own limitations: LAS can lead to significant starvation of concurrent elephant flows, while PIAS requires a centralized entity for correct settings. In this work, we generalize SRPT-based scheduling to allow flows with known and unknown sizes to sojourn at the same time. We not only show analytic properties of this generalization but rigorously prove important properties of non-SRPT alternatives with competitive analysis. Based on the proposed SRPT generalization, we introduce a new ASCC congestion control. Our main goal is not to propose yet another congestion control but to identify preferable and pathological traffic patterns with unknown flow sizes for various scheduling disciplines. Our observations are validated by an extensive evaluation study.
Alex Davydow, Sergey I. Nikolenko, Vitalii Demianiuk, Pavel Chuprikov, Kirill Kogan
Networking5
2021 TeleNoise: A Network-Noise Module for In-Band Real-Time Telemetry
abstract
In-band real-time telemetry is a promising direction for management of modern programmable networks. While network noise in the form of packet reordering and loss affects inband collection of distributed state, there is a need to compute telemetry functions on the collected state correctly despite the network noise. To address this common need, we propose TeleNoise that equips each packet with few sync bits and offers primitives of group affiliation and group completion to support noise-resilient computation of per-group telemetry functions. This paper gives real-world examples of such functions, elaborates on the role of TeleNoise in a modular in-band telemetry architecture, and presents algorithms for the two TeleNoise primitives. We derive analytical guarantees on correctness and performance of the algorithms and report a trace-driven evaluation that corroborates the effective low-overhead profile of TeleNoise, e.g., the assuredly correct operation and at most 1.6 packets of the average measurement lag for 12-packet groups and 3 sync bits.
Vitalii Demianiuk, Sergey Gorinsky, Kirill Kogan
Networking3
2021 Abstracting Networks with Measurable Guarantees
abstract
To simplify definitions of network-wide behaviors (e.g., in datacenter transports), networks are often represented by virtual switches. In most cases, the buffering architecture of a representing virtual switch is inherited from analytic models implementing the desired properties, and is completely decoupled from the represented network topology. Thus, it is unclear how well the network infrastructure is exploited. This paper makes the first attempt in understanding which buffering architectures can best represent a given network, and how buffer management decisions can be mapped back to a represented network.
Vitalii Demianiuk, Kirill Kogan, Antonio Fernández 0001
Networking2
2021 Formalization and taxonomy of compute-aggregate problems for cloud computing applications
Pavel Chuprikov, Alex Davydow, Kirill Kogan, Sergey I. Nikolenko, Alexander Sirotkin 0001
Comput. Networks3
2021 Competitive buffer management for packets with latency constraints
Alex Davydow, Pavel Chuprikov, Sergey I. Nikolenko, Kirill Kogan
Comput. Networks4
2021 Robust Distributed Monitoring of Traffic Flows
abstract
Unrelenting traffic growth, device heterogeneity, and load unevenness create scalability challenges for traffic monitoring. In this paper, we propose Robust Distributed Computation (RoDiC), a new approach that addresses these challenges by shifting a portion of the monitoring-task execution from an overloaded network element to another element that has spare resources. Moving the entire execution of the task away from the overloaded element might be infeasible because execution on multiple elements is inherent in the task or requires at least partial participation by the designated overloaded element. Furthermore, distributed execution of a stateful task has to be resilient to network noise in the form of packet reordering and loss. The RoDiC approach relies on two main principles of packet grouping and state overlap to support exact robust distributed monitoring of traffic flows under network noise. RoDiC uses an open-loop paradigm that does not add any control packets, communicates flow state in-band by appending few control bits to packets of monitored flows, and keeps measurement latency low. We apply RoDiC to the problem of flow-size computation and discuss how to instantiate our general technique for real-time packet-loss telemetry. The paper develops robust algorithms, proves their correctness and performance properties, and reports an evaluation driven by realistic traffic traces. The RoDiC algorithms successfully distribute the monitoring-task load while keeping the memory and computation overhead low.
Vitalii Demianiuk, Sergey Gorinsky, Sergey I. Nikolenko, Kirill Kogan
IEEE/ACM Trans. Netw.4
2021 Approximate Packet Classifiers With Controlled Accuracy
abstract
Performing exact computations can require significant resources. Approximate computing allows to alleviate resource constraints, sacrificing the accuracy of results. In this work, we consider a generalization of the classical packet classification problem. Our major contribution is to introduce representations of approximate packet classifiers with controlled accuracy and optimization techniques to reduce classifier sizes exploiting this new level of flexibility. In this work, we propose methods constructing efficient approximate representations for both LPM (longest prefix match) classifiers and classifiers with general ternary-bit filters. We validate our theoretical results with a comprehensive evaluation study showing that a small error in the actions of a classifier can lead to significant memory reductions, often comparable to the best possible theoretical reduction in the trivial case when all rules have the same action.
Vitalii Demianiuk, Kirill Kogan, Sergey I. Nikolenko
IEEE/ACM Trans. Netw.2
2020 Poster: Novel Opportunities in Design of Efficient Deep Packet Inspection Engines
abstract
Deep Packet Inspection (DPI) is an essential building block implementing various services on data plane [5]. Usually, DPI engines are centered around efficient implementation of regular expressions both from the required memory and lookup time perspectives. In this paper, we explore and generalize original approaches used for packet classifiers [7] to regular expressions. Our preliminary results establish a promising direction for the efficient implementation of DPI engines.
Anton Chekashev, Vitalii Demianiuk, Kirill Kogan
ICNP3
2020 New Alternatives to Optimize Policy Classifiers
abstract
Growing expressiveness of services increases the size of a manageable state at the network data plane. A service policy is an ordered set of classification patterns (classes) with actions; the same class can appear in multiple policies. Previous studies mostly concentrated on efficient representations of a single policy instance. In this work, we study space efficiency of multiple policies, cutting down a classifier size by sharing instances of classes between policies that contain them. In this paper we identify conditions for such sharing, propose efficient algorithms and analyze them analytically. The proposed representations can be deployed transparently on existing packet processing engines. Our results are supported by extensive evaluations.
Vitalii Demianiuk, Sergey I. Nikolenko, Pavel Chuprikov, Kirill Kogan
IEEE/ACM Trans. Netw.4
2020 Towards Software-Defined Buffer Management
abstract
Buffering architectures and policies for their efficient management are core ingredients of a network architecture. However, despite strong incentives to experiment with and deploy new policies, opportunities for changing anything beyond minor elements are limited. We introduce a new specification language, OpenQueue, that allows to express virtual buffering architectures and management policies representing a wide variety of economic models. OpenQueue allows users to specify entire buffering architectures and policies conveniently through several comparators and simple functions. We show examples of buffer management policies in OpenQueue and empirically demonstrate its impact on performance in various settings.
Kirill Kogan, Danushka Menikkumbura, Gustavo Petri, Youngtae Noh, Sergey I. Nikolenko, Alexander Sirotkin 0001, Patrick Eugster
IEEE/ACM Trans. Netw.1
2019 Robust Distributed Monitoring of Traffic Flows
abstract
Scalable monitoring of traffic flows faces challenges posed by unrelenting traffic growth, device heterogeneity, and load unevenness. We explore an approach that tackles these challenges by shifting a portion of the monitoring-task execution from an overloaded network element to another element that has spare resources. Moving the entire execution of the task to a lightly loaded element might be infeasible because execution on multiple elements is inherent in the task or requires at least partial participation by the particular overloaded element (e.g., flow-size computation at the ingress element for billing purposes). Distributed execution of a stateful traffic-monitoring task has to be robust against packet reordering or loss, i.e., network noise. This paper designs robust traffic monitoring where the goal is to determine a flow metric for each flow exactly in spite of network noise. We follow the open-loop paradigm that does not add any control packets, communicates flow state in-band by appending few (on the order of 2 or 4) control bits to packets of the monitored flows, and keeps latency low. We consider the task of flow-size computation, analytically derive conditions assuring correct operation of the designed algorithms, and evaluate the algorithms on realistic traffic traces. The algorithms successfully distribute the monitoring-task load without imposing significant computation or storage overhead.
Vitalii Demianiuk, Sergey Gorinsky, Sergey I. Nikolenko, Kirill Kogan
ICNP4
2019 Approximate Classifiers with Controlled Accuracy
abstract
Performing exact computations can require significant resources. Approximate computing allows to alleviate resource constraints, sacrificing the accuracy of results. In this work, we consider a generalization of the classical packet classification problem. Our major contribution is to introduce various representations for approximate packet classifiers with controlled accuracy and optimization techniques to reduce classifier sizes exploiting this new level of flexibility. We validate our theoretical results with a comprehensive evaluation study.
Vitalii Demianiuk, Kirill Kogan, Sergey I. Nikolenko
INFOCOM2
2018 New Alternatives to Optimize Policy Classifiers
abstract
Growing expressiveness of services increases the size of a manageable state at the network data plane. A service policy is an ordered set of classification patterns (classes) with actions; the same class can appear in multiple policies. Previous studies mostly concentrated on efficient representations of a single policy instance. In this work, we study space efficiency of multiple policies, cutting down a classifier size by sharing instances of classes between policies that contain them. In this paper we identify conditions for such sharing, propose efficient algorithms and analyze them analytically. The proposed representations can be deployed transparently on existing packet processing engines. Our results are supported by extensive evaluations.
Vitalii Demianiuk, Sergey I. Nikolenko, Pavel Chuprikov, Kirill Kogan
ICNP4
2018 Formalizing Compute-Aggregate Problems in Cloud Computing
Pavel Chuprikov, Alex Davydow, Kirill Kogan, Sergey I. Nikolenko, Alexander Sirotkin 0001
SIROCCO3
2018 Distributed Counting Along Lossy Paths Without Feedback
Vitalii Demianiuk, Sergey Gorinsky, Sergey I. Nikolenko, Kirill Kogan
SIROCCO4
2018 Priority Queueing for Packets With Two Characteristics
abstract
Modern network elements are increasingly required to deal with heterogeneous traffic. Recent works consider processing policies for buffers that hold packets with different processing requirements (number of processing cycles needed before a packet can be transmitted out) but uniform value, aiming to maximize the throughput, i.e., the number of transmitted packets. Other developments deal with packets of varying value but uniform processing requirement (each packet requires one processing cycle); the objective here is to maximize the total transmitted value. In this paper, we consider a more general problem, combining packets with both nonuniform processing and nonuniform values in the same queue. We study the properties of various processing orders in this setting. We show that in the general case, natural processing policies have poor performance guarantees, with linear lower bounds on their competitive ratio. Moreover, we show several adversarial lower bounds for every priority queue and even for every online policy. On the positive side, in the special case when only two different values are allowed, 1 and V , we present a policy that achieves competitive ratio (1 + (W + 2/V )), where W is the maximal number of required processing cycles. We also consider copying costs during admission.
Pavel Chuprikov, Sergey I. Nikolenko, Alex Davydow, Kirill Kogan
IEEE/ACM Trans. Netw.4
2017 Planning in compute-aggregate problems as optimization problems on graphs
abstract
Efficient representation of data aggregations is a fundamental problem in modern big data applications. We present a formalization of compute-aggregate planning parameterized by the aggregation function.
Pavel Chuprikov, Alex Davydow, Kirill Kogan, Sergey I. Nikolenko, Alexander Sirotkin 0001
ICNP3
2017 General ternary bit strings on commodity longest-prefix-match infrastructures
abstract
Ternary Content-Addressable Memory (TCAM) is a powerful tool to represent network services with line-rate lookup time. There are various software-based approaches to represent multi-field packet classifiers. Unfortunately, all of them either require exponential memory or apply additional constraints on field representations (e.g, prefixes or exact values) to have line-rate lookup time. In this work, we propose alternatives to tcam and introduce a novel approach to represent packet classifiers based on ternary bit strings (without constraining field representation) on commodity longest-prefix-match (LPM) infrastructures. These representations are built on a novel property, prefix reorderability, that defines how to transform an ordered set of ternary bit strings to prefixes with lpm priorities in linear memory. Our results are supported by evaluations on large-scale packet classifiers with real parameters from ClassBench; moreover, we have developed a prototype in P4 to support these types of transformations.
Pavel Chuprikov, Kirill Kogan, Sergey I. Nikolenko
ICNP2
2017 A programmable buffer management platform
abstract
Buffering architectures and policies for their efficient management constitute one of the core ingredients of a network architecture. However, despite strong incentives to experiment with, and deploy, new policies, the opportunities for alterating anything beyond minor elements of such policies are limited. In this work we introduce a new specification language, OpenQueue, that allows users to specify entire buffering architectures and policies conveniently through several comparators and simple functions. We show examples of buffer management policies in OpenQueue and empirically demonstrate its direct impact on performance in various settings.
Kirill Kogan, Danushka Menikkumbura, Gustavo Petri, Yangtae Noh, Sergey I. Nikolenko, Alexander Sirotkin 0001, Patrick Eugster
ICNP1
2017 Throughput optimization with latency constraints
abstract
Modern datacenters are increasingly required to deal with latency-sensitive applications. A major question here is how to represent latency in desired objectives. Incorporation of multiple traffic characteristics (e.g., packet values and required processing requirements) significantly increases the complexity of buffer management policies. In this work, we consider weighted throughput optimization (total transmitted value) in the setting where every incoming packet is branded with intrinsic value, required processing, and slack (an offset from the arrival time when a packet should be transmitted), and the buffer is unbounded but effectively bounded by slacks. The main result is a 3-competitive algorithm as the slack-to-work ratio increases. Our results supported by a comprehensive evaluation study on CAIDA network traces.
Alex Davydow, Pavel Chuprikov, Sergey I. Nikolenko, Kirill Kogan
INFOCOM4
2017 Network simplification preserving bandwidth and routing capabilities
abstract
We introduce structural transformations that allow simplifying a given network while preserving its original “bandwidth” and “routing” capabilities, transparently to specific allocations. We minimize a certain objective such as the aggregate capacity of network links, number of nodes, or number of links, in such a way that all the bandwidth that could be routed in the original network can also be routed in the reduced one. This improves cost-efficiency for both inter- and intra-datacenter connections and simplifies network management. We also identify a fundamental tradeoff between extra added capacity and simplicity of representation for a given network. Our analytic results are supported by extensive simulation results on hundreds of real network topologies. One result is that by adding 10-30% extra capacity to evaluated real-world networks one can simplify them down to a star topology with a single switch, while all routing and bandwidth allocation decisions on the simplified topology can be mapped back to the original network. This is an important step towards simplifying network management via a reduced virtualized network infrastructure.
Sergey I. Nikolenko, Kirill Kogan, Antonio Fernández 0001
INFOCOM2
2017 The impact of processing order on performance: A taxonomy of semi-FIFO policies
Kirill Kogan, Alejandro López-Ortiz, Sergey I. Nikolenko, Alexander Sirotkin 0001
J. Comput. Syst. Sci.1
2017 Heterogeneous packet processing in shared memory buffers
Patrick Eugster, Kirill Kogan, Sergey I. Nikolenko, Alexander Sirotkin 0001
J. Parallel Distributed Comput.2
2017 Efficient FIB Representations on Distributed Platforms
abstract
The Internet routing ecosystem is facing substantial scalability challenges due to continuous, significant growth of the state represented in the data plane. Distributed switch architectures introduce additional constraints on efficiency of implementations from both lookup time and memory footprint perspectives. In this paper we explore efficient forwarding information base (FIB) representations in common distributed switch architectures. Our approach introduces substantial savings in memory footprint transparently for existing hardware. Our results are supported by an extensive simulation study on real IPv4 and IPv6 FIBs.
Kirill Kogan, Sergey I. Nikolenko, Patrick Eugster, Alexander Shalimov, Ori Rottenstreich
IEEE/ACM Trans. Netw.1
2016 BASEL (Buffer mAnagement SpEcification Language)
abstract
Buffering architectures and policies for their efficient management constitute one of the core ingredients of a network architecture. In this work we introduce a new specification language, BASEL, that allows to express virtual buffering architectures and management policies representing a variety of economic models. BASEL does not require the user to implement policies in a high-level language; rather, the entire buffering architecture and its policy are reduced to several comparators and simple functions. We show examples of buffer management policies in BASEL and demonstrate empirically the impact of various settings on performance.
Kirill Kogan, Danushka Menikkumbura, Gustavo Petri, Youngtae Noh, Sergey I. Nikolenko, Patrick Eugster
ANCS1
2016 FIB efficiency in distributed platforms
abstract
The Internet routing ecosystem is facing substantial scalability challenges due to continuous, significant growth of the state represented in the data plane. Distributed switch architectures introduce additional constraints on efficient implementations from both lookup time and memory footprint perspectives. In this work we explore efficient FIB representations in common distributed switch architectures. Our approach introduces substantial savings in memory footprint transparently for existing hardware. Our results are supported by an extensive simulation study on real IPv4 and IPv6 FIBs.
Kirill Kogan, Sergey I. Nikolenko, Patrick Eugster, Alexander Shalimov, Ori Rottenstreich
ICNP1
2016 On demand elastic capacity planning for service auto-scaling
abstract
Cloud computing allows on demand elastic service scaling. The capability of a service to predict resource requirements for the next operational period defines how well it will exploit the elasticity of cloud computing in order to reduce operational costs. In this work, we consider a capacity planning process for service scale-out as an online pricing model. In particular, we study the impact of buffering service requests on revenues in various settings with allocation and maintenance costs. In addition, we analyze the incurred latency implied by buffering service requests. We believe that our insights will allow to significantly simplify predictions and mitigate the unknowns of future demands on resources.
Pavel Chuprikov, Sergey I. Nikolenko, Kirill Kogan
INFOCOM3
2016 Large profits or fast gains: A dilemma in maximizing throughput with applications to network processors
Kirill Kogan, Alejandro López-Ortiz, Sergey I. Nikolenko, Gabriel Scalosub, Michael Segal 0001
J. Netw. Comput. Appl.1
2016 Online Scheduling FIFO Policies with Admission and Push-Out
Kirill Kogan, Alejandro López-Ortiz, Sergey I. Nikolenko, Alexander Sirotkin 0001
Theory Comput. Syst.1
2016 Exploiting Order Independence for Scalable and Expressive Packet Classification
abstract
Efficient packet classification is a core concern for network services. Traditional multi-field classification approaches, in both software and ternary content-addressable memory (TCAMs), entail tradeoffs between (memory) space and (lookup) time. TCAMs cannot efficiently represent range rules, a common class of classification rules confining values of packet fields to given ranges. The exponential space growth of TCAM entries relative to the number of fields is exacerbated when multiple fields contain ranges. In this work, we present a novel approach which identifies properties of many classifiers which can be implemented in linear space and with worst-case guaranteed logarithmic time and allows the addition of more fields including range constraints without impacting space and time complexities. On real-life classifiers from Cisco Systems and additional classifiers from ClassBench (with real parameters), 90-95% of rules are thus handled, and the other 5-10% of rules can be stored in TCAM to be processed in parallel.
Kirill Kogan, Sergey I. Nikolenko, Ori Rottenstreich, William Culhane, Patrick Eugster
IEEE/ACM Trans. Netw.1
2015 Priority queueing with multiple packet characteristics
abstract
Modern network elements are increasingly required to deal with heterogeneous traffic. Recent works consider processing policies for buffers that hold packets with different processing requirement (number of processing cycles needed before a packet can be transmitted out) but uniform value, aiming to maximize the throughput, i.e., the number of transmitted packets. Other developments deal with packets of varying value but uniform processing requirement (each packet requires one processing cycle); the objective here is to maximize the total transmitted value. In this work, we consider a more general problem, combining packets with both nonuniform processing and nonuniform values in the same queue. We study the properties of various processing orders in this setting. We show that in the general case natural processing policies have poor performance guarantees, with linear lower bounds on their competitive ratio. Moreover, we show an adversarial lower bound that holds for every online policy. On the positive side, in the special case when only two different values are allowed, 1 and V, we present a policy that achieves competitive ratio (1 + W+2/V), where W is the maximal number of required processing cycles. We also consider copying costs during admission.
Pavel Chuprikov, Sergey I. Nikolenko, Kirill Kogan
INFOCOM3
2015 Optimal communication structures for big data aggregation
abstract
Aggregation of computed sets of results fundamentally underlies the distillation of information in many of today's big data applications. To this end there are many systems which have been introduced which allow users to obtain aggregate results by aggregating along communication structures such as trees, but they do not focus on optimizing performance by optimizing the underlying structure to perform the aggregation. We consider two cases of the problem - aggregation of (1) single blocks of data, and of (2) streaming input. For each case we determine which metric of “fast” completion is the most relevant and mathematically model resulting systems based on aggregation trees to optimize that metric. Our assumptions and model are laid out in depth. From our model we determine how to create a provably ideal aggregation tree (i.e., with optimal fanin) using only limited information about the aggregation function being applied. Experiments in the Amazon Elastic Compute Cloud (EC2) confirm the validatity of our models in practice.
William Culhane, Kirill Kogan, Chamikara Jayalath, Patrick Eugster
INFOCOM2
2015 Essential Traffic Parameters for Shared Memory Switch Performance
Patrick Eugster, Alexander Kesselman, Kirill Kogan, Sergey I. Nikolenko, Alexander Sirotkin 0001
SIROCCO3
2014 Shared Memory Buffer Management for Heterogeneous Packet Processing
abstract
Packet processing increasingly involves heterogeneous requirements. We consider the well-known model of a shared memory switch with bounded-size buffer and generalize it in two directions. First, we consider unit-sized packets labeled with an output port and a processing requirement (i.e., packets with heterogeneous processing), maximizing the number of transmitted packets. We analyze the performance of buffer management policies under various characteristics via competitive analysis that provides uniform guarantees across traffic patterns (Borodin and El-Yaniv, 1998). We propose the Longest-Work-Drop policy and show that it is at most 2-competitive and at least sqrt 2}-competitive. Second, we consider another generalization, posed as an open problem in [10], where each unit-sized packet is labeled with an output port and intrinsic value, and the goal is to maximize the total value of transmitted packets. We show first results in this direction and define a scheduling policy that, as we conjecture, may achieve constant competitive ratio. We also present a comprehensive simulation study that validates our results.
Patrick Eugster, Kirill Kogan, Sergey I. Nikolenko, Alexander Sirotkin 0001
ICDCS2
2014 Composing Heterogeneous SDN Controllers with Flowbricks
abstract
The software-defined networking (SDN) paradigm allows network operators to conveniently deploy network services through a centralized controller. Recent interest in SDNs has fueled the implementation of a variety of network services on controllers written in different languages and supported by different organizations. Given the large number of network services and their increasing complexity, no single controller can provide all network services. Even if a controller provides all the desired services, it is unlikely to have the best-in-class implementation of all those services. To address this problem, we propose a framework for composing a control plane using controllers from different vendors. The framework applies services implemented on heterogeneous controllers to the same network traffic. Allowing network operators to deploy services implemented on heterogeneous controllers prevents vendor lock-in at the control plane. Furthermore, network operators can quickly deploy a new service by integrating a controller (possibly supplied by a different vendor) into the framework. Our framework is designed to operate in a way that is transparent to the controllers and does not require additional standardization.
Advait Dixit, Kirill Kogan, Patrick Eugster
ICNP2
2014 SAX-PAC (Scalable And eXpressive PAcket Classification)
abstract
Efficient packet classification is a core concern for network services. Traditional multi-field classification approaches, in both software and ternary content-addressable memory (TCAMs), entail tradeoffs between (memory) space and (lookup) time. TCAMs cannot efficiently represent range rules, a common class of classification rules confining values of packet fields to given ranges. The exponential space growth of TCAM entries relative to the number of fields is exacerbated when multiple fields contain ranges. In this work, we present a novel approach which identifies properties of many classifiers which can be implemented in linear space and with worst-case guaranteed logarithmic time \emph{and} allows the addition of more fields including range constraints without impacting space and time complexities. On real-life classifiers from Cisco Systems and additional classifiers from ClassBench (with real parameters), 90-95% of rules are thus handled, and the other 5-10% of rules can be stored in TCAM to be processed in parallel.
Kirill Kogan, Sergey I. Nikolenko, Ori Rottenstreich, William Culhane, Patrick Eugster
SIGCOMM1
2013 Space and speed tradeoffs in TCAM hierarchical packet classification
Alexander Kesselman, Kirill Kogan, Sergey Nemzer, Michael Segal 0001
J. Comput. Syst. Sci.2
2012 A taxonomy of Semi-FIFO policies
abstract
Modern network processors (NPs) increasingly deal with packets that require heterogeneous processing. We consider the problem of managing a bounded size input queue buffer where each packet requires several rounds of processing before it can be transmitted out. The goal of admission control policies is to maximize the total number of successfully transmitted packets. Usually the transmission order of the packets is induced by the processing order. However, processing order can have a significant impact on the performance of buffer management policies even if the order of transmission is fixed. For this reason we decouple processing order from transmission order and restrict our transmission order to First-In-First-Out (FIFO) but allow for different orders of packet processing, introducing the class of such policies as Semi-FIFO. In this work, we build a taxonomy of Semi-FIFO policies and provide worst case guarantees for different processing orders. We consider various special cases and properties of Semi-FIFO policies, e.g., greedy, work-conserving, lazy, and push-out policies, and show how these properties affect performance. Further, we conduct a comprehensive simulation study that validates our results.
Kirill Kogan, Alejandro López-Ortiz, Sergey I. Nikolenko, Alexander Sirotkin 0001
IPCCC1
2012 Improved Competitive Performance Bounds for CIOQ Switches
Alexander Kesselman, Kirill Kogan, Michael Segal 0001
Algorithmica2
2012 Providing performance guarantees in multipass network processors
abstract
Current network processors (NPs) increasingly deal with packets with heterogeneous processing times. In such an environment, packets that require many processing cycles delay low-latency traffic because the common approach in today's NPs is to employ run-to-completion processing. These difficulties have led to the emergence of the Multipass NP architecture, where after a processing cycle ends, all processed packets are recycled into the buffer and recompete for processing resources. In this paper, we provide a model that captures many of the characteristics of this architecture, and we consider several scheduling and buffer management algorithms that are specially designed to optimize the performance of multipass network processors. In particular, we provide analytical guarantees for the throughput performance of our algorithms. We further conduct a comprehensive simulation study, which validates our results.
Isaac Keslassy, Kirill Kogan, Gabriel Scalosub, Michael Segal 0001
IEEE/ACM Trans. Netw.2
2011 Providing performance guarantees in multipass network processors
abstract
Current network processors (NPs) increasingly deal with packets with heterogeneous processing times. As a consequence, packets that require many processing cycles can significantly delay low-latency traffic, because the common approach in today's NPs is to employ run-to-completion processing. These difficulties have led to the emergence of the Multipass NP architecture, where after a processing cycle ends, all processed packets are recycled into the buffer and re-compete for processing resources. In this work we provide a model that captures many of the characteristics of this architecture, and consider several scheduling and buffer management algorithms that are specially designed to optimize the performance of multipass network processors. In particular, we provide analytical guarantees for the throughput performance of our algorithms. We further conduct a comprehensive simulation study that validates our results.
Isaac Keslassy, Kirill Kogan, Gabriel Scalosub, Michael Segal 0001
INFOCOM2
2010 Packet mode and QoS algorithms for buffered crossbar switches with FIFO queuing
Alexander Kesselman, Kirill Kogan, Michael Segal 0001
Distributed Comput.2
2008 Improved Competitive Performance Bounds for CIOQ Switches
Alexander Kesselman, Kirill Kogan, Michael Segal 0001
ESA2
2008 Packet mode and QoS algorithms for buffered crossbar switches with FIFO queuing
abstract
The buffered crossbar switch architecture has recently gained considerable research attention. In such a switch, besides normal input and output queues, a small buffer is associated with each crosspoint. Due to the introduction of crossbar buffers, output and input contention is eliminated, and the scheduling process is greatly simplified. We analyze the performance of switch policies by means of competitive analysis, where a uniform guarantee is provided for all traffic patterns. We assume that each packet has an intrinsic value designating its priority and the goal of the switch policy is to maximize the weighted throughput of the switch. We consider FIFO queueing buffering policies, which are deployed by the majority of today's Internet routers. In packet-mode scheduling, a packet is divided into a number of unit length cells and the scheduling policy is constrained to schedule all the cells contiguously, which removes reassembly overhead and improves Quality-of-Service (QoS). For the case of variable length packets with uniform value density (Best Effort model), where the packet value is proportional to its size, we present a packet-mode greedy switch policy that is 7-competitive. For the case of unit size packets with variable values (Differentiated Services model), we propose a preemptive greedy switch policy that achieves a competitive ratio of 21. As far as we know, this is the first constant-competitive FIFO policy for this architecture in the case of variable value packets. The presented policies are simple and thus can be efficiently implemented at high speeds. Moreover, our results hold for any value of the internal switch fabric speedup.
Alexander Kesselman, Kirill Kogan, Michael Segal 0001
PODC2
2008 Best Effort and Priority Queuing Policies for Buffered Crossbar Switches
Alexander Kesselman, Kirill Kogan, Michael Segal 0001
SIROCCO2
2007 Nonpreemptive Scheduling of Optical Switches
abstract
Many high-speed routers today use input-queuing (IQ) architectures with a crossbar switching fabric based on optical technology. Packets in the input queues are divided into cells of unit length, and the goal is to find a schedule of minimum makespan that forwards all packets to the output ports. The problem is complicated since, in optical switches, so-called configuration delay, that is the time required to reconfigure the switching fabric, is non-negligible with respect to the cell transmission time. We aim to design a scheduler whose complexity does not depend on the number of packets in the input queues. Thus, we focus on the nonpreemptive bipartite scheduling (NPBS) problem, where each input queue is connected to each output port in at most one configuration. We demonstrate that the NPBS problem is NP-hard for any value of the configuration delay, and approximation within a ratio smaller than 7/6 is NP-hard as well. For the offline version of the NPBS problem, we show that a simple greedy algorithm achieves an approximation factor of 2 for arbitrary configuration delay. Then, we consider the online version of the NPBS problem, where the switch gathers the incoming traffic periodically and then schedules the accumulated batches. We propose a scheduling algorithm that guarantees strict delay for any admissible traffic, provided that the switch has a moderate speed-up of two. Finally, we extend our results to the nonbipartite scheduling problem.
Alexander Kesselman, Kirill Kogan
IEEE Trans. Commun.2
2004 Non-preemptive scheduling of optical switches
abstract
Many high-speed routers today use input-queued (IQ) architectures with a crossbar switching fabric based on optical technology. Packets in the input queues are divided into cells of unit length and the goal is to find a schedule of minimum makespan that forwards all packets to the output ports. The problem is complicated since in optical switches so called configuration delay, that is the time required to reconfigure the switching fabric, is non-negligible with respect to the cell transmission time. We aim to design a scheduler whose complexity does not depend on the number of packets in the input queues. Thus, we focus on the non-preemptive bipartite scheduling (NPBS) problem, where each input queue is connected to each output port in at most one configuration. We demonstrate that the NPBS problem is NP-hard for any value of the configuration delay and approximation within a ratio smaller than 7/6 is NP-hard as well. For the offline version of the NPBS problem, we show that a simple greedy algorithm achieves an approximation factor of 2 for arbitrary configuration delay. Then we consider the online version of the NPBS problem, where the switch gathers the incoming traffic periodically and then schedules the accumulated batches (batch scheduling). We propose a scheduling algorithm which guarantees strict delay for any admissible traffic provided that the switch has a moderate speedup of two.
Alexander Kesselman, Kirill Kogan
GLOBECOM2