On Telemetry and Classifiers
Author(s)
Gorinsky, SergeyDate
2021-07-27Abstract
This presentation consists of two recent pieces inspired by Kirill. One is our last joint work submitted this January and accepted for publication already after Kirill's death. The other is an invited paper that we intended to write together. When I reached out to Kirill about writing it, he was already in the coma. Instead, I wrote and published the paper with Pavel and Vitalii, the only two PhD students whom Kirill graduated.
The first part deals with in-band real-time telemetry, which is a promising direction for management of modern programmable networks. While network noise in the form of packet reordering and loss affects in-band 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. We give real-world examples of such functions, elaborate on the role of TeleNoise in a modular in-band telemetry architecture, and present 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.
The second part is on the topic of semantically equivalent transformation of packet classifiers, which Kirill pioneered in his SIGCOMM 2014 article. We explore transformation of ternary classifiers to equivalent prefix representations so that classification can benefit from efficient Longest Prefix Match solutions. We propose the property of prefix disjointness and design PREDICAT, a method that leverages this new property in combination with a variety of existing techniques to convert an arbitrary ternary classifier to an equivalent prefix representation. The paper analyzes prefix disjointness and evaluates PREDICAT against state-of-the-art transformation alternatives on a packet classification benchmark in regard to the number of lookups. The evaluation shows that PREDICAT outperforms a ternary-to-binary method by up to an order of magnitude, improves on another ternary-to-prefix solution by up to a factor of 5, and performs similarly to a ternary-to-ternary approach that requires costly power-hungry Ternary Content-Addressable Memories to efficiently handle the resulting ternary representation.