Self-Adjusting Packet Classification

09/30/2021
by   Maciej Pacut, et al.
0

This paper is motivated by the vision of more efficient packet classification mechanisms that self-optimize in a demand-aware manner. At the heart of our approach lies a self-adjusting linear list data structure, where unlike in the classic data structure, there are dependencies, and some items must be in front of the others; for example, to correctly classify packets by rules arranged in a linked list, each rule must be in front of lower priority rules that overlap with it. After each access we can rearrange the list, similarly to Move-To-Front, but dependencies need to be respected. We present a 4-competitive online rearrangement algorithm, whose cost is at most four times worse than the optimal offline algorithm; no deterministic algorithm can be better than 3-competitive. The algorithm is simple and attractive, especially for memory-limited systems, as it does not require any additional memory (e.g., neither timestamps nor frequency statistics). Our approach can simply be deployed as a drop-in replacement for a static datastructure, potentially benefitting many existing networks. We evaluate our self-adjusting list packet classifier on realistic ruleset and traffic instances. We find that our classifier performs similarly to a static list for low-locality traffic, but significantly outperforms Efficuts (by a factor 7x), CutSplit (3.6x), and the static list (14x) for high locality and small rulesets. Memory consumption is 10x lower on average compared to Efficuts and CutSplit.

READ FULL TEXT
research
05/07/2019

Self-Adjusting Linear Networks

Emerging networked systems become increasingly flexible and reconfigurab...
research
04/18/2021

Online List Access with Precedence Constraints

This paper considers a natural generalization of the online list access ...
research
07/08/2022

Self-Adjusting Linear Networks with Ladder Demand Graph

This paper revisits the problem of designing online algorithms for self-...
research
01/26/2021

Routing Packet Traffic via Enhanced Access Control List for Network Congestion Avoidance

Filtering packet traffic and rules of permit/denial of data packets into...
research
02/25/2023

Toward Self-Adjusting k-ary Search Tree Networks

Datacenter networks are becoming increasingly flexible with the incorpor...
research
07/12/2018

Push-Down Trees: Optimal Self-Adjusting Complete Trees

Since Sleator and Tarjan's seminal work on self-adjusting lists, heaps a...
research
12/28/2018

Clippy(ing) Network Functions: Towards Better Abstractions for Checking and Designing Network Programs

When programming network functions, changes within a packet tend to have...

Please sign up or login with your details

Forgot password? Click here to reset