TY - GEN
T1 - Q-Max
T2 - 19th ACM Internet Measurement Conference, IMC 2019
AU - Basat, Ran Ben
AU - Einziger, Gil
AU - Gong, Junzhi
AU - Moraney, Jalil
AU - Raz, Danny
N1 - Publisher Copyright:
© 2019 Association for Computing Machinery. ACM ISBN 978-1-4503-6948-0/19/10...$15.00
PY - 2019/10/21
Y1 - 2019/10/21
N2 - Network measurement is an essential building block for a variety of network applications such as traffic engineering, quality of service, load-balancing and intrusion detection. Maintaining a per-flow state is often impractical due to the large number of flows, and thus modern systems use complex data structures that are updated with each incoming packet. Therefore, designing measurement applications that operate at line speed is a significant challenge in this domain. In this work, we address this challenge by providing a unified mechanism that improves the update time of a variety of network algorithms. We do so by identifying, studying, and optimizing a common algorithmic pattern that we call q-MAX. The goal is to maintain the largest q values in a stream of packets. We formally analyze the problem and introduce interval and sliding window algorithms that have a worst-case constant update time. We show that our algorithms perform up to ×20 faster than library algorithms, and using these new algorithms for several popular measurement applications yields a throughput improvement of up to ×12 on real network traces. Finally, we implemented the scheme within Open vSwitch, a state of the art virtual switch. We show that q-MAX based monitoring runs in line speed while current monitoring techniques are significantly slower.
AB - Network measurement is an essential building block for a variety of network applications such as traffic engineering, quality of service, load-balancing and intrusion detection. Maintaining a per-flow state is often impractical due to the large number of flows, and thus modern systems use complex data structures that are updated with each incoming packet. Therefore, designing measurement applications that operate at line speed is a significant challenge in this domain. In this work, we address this challenge by providing a unified mechanism that improves the update time of a variety of network algorithms. We do so by identifying, studying, and optimizing a common algorithmic pattern that we call q-MAX. The goal is to maintain the largest q values in a stream of packets. We formally analyze the problem and introduce interval and sliding window algorithms that have a worst-case constant update time. We show that our algorithms perform up to ×20 faster than library algorithms, and using these new algorithms for several popular measurement applications yields a throughput improvement of up to ×12 on real network traces. Finally, we implemented the scheme within Open vSwitch, a state of the art virtual switch. We show that q-MAX based monitoring runs in line speed while current monitoring techniques are significantly slower.
UR - http://www.scopus.com/inward/record.url?scp=85074852945&partnerID=8YFLogxK
U2 - 10.1145/3355369.3355569
DO - 10.1145/3355369.3355569
M3 - Conference contribution
AN - SCOPUS:85074852945
T3 - Proceedings of the ACM SIGCOMM Internet Measurement Conference, IMC
SP - 322
EP - 336
BT - IMC 2019 - Proceedings of the 2019 ACM Internet Measurement Conference
PB - Association for Computing Machinery
Y2 - 21 October 2019 through 23 October 2019
ER -