Language-directed hardware design for network performance monitoring

Srinivas Narayana, Anirudh Sivaraman, Vikram Nathan, Prateesh Goyal, Venkat Arun, Mohammad Alizadeh, Vimalkumar Jeyakumar, Changhoon Kim

Research output: Chapter in Book/Report/Conference proceedingConference contribution

Abstract

Network performance monitoring today is restricted by existing switch support for measurement, forcing operators to rely heavily on endpoints with poor visibility into the network core. Switch vendors have added progressively more monitoring features to switches, but the current trajectory of adding specific features is unsustainable given the ever-changing demands of network operators. Instead, we ask what switch hardware primitives are required to support an expressive language of network performance questions. We believe that the resulting switch hardware design could address a wide variety of current and future performance monitoring needs. We present a performance query language, Marple, modeled on familiar functional constructs like map, filter, groupby, and zip. Marple is backed by a new programmable key-value store primitive on switch hardware. The key-value store performs flexible aggregations at line rate (e.g., a moving average of queueing latencies per flow), and scales to millions of keys. We present a Marple compiler that targets a P4-programmable software switch and a simulator for highspeed programmable switches. Marple can express switch queries that could previously run only on end hosts, while Marple queries only occupy a modest fraction of a switch's hardware resources.

Original languageEnglish (US)
Title of host publicationSIGCOMM 2017 - Proceedings of the 2017 Conference of the ACM Special Interest Group on Data Communication
PublisherAssociation for Computing Machinery, Inc
Pages85-98
Number of pages14
ISBN (Electronic)9781450346535
DOIs
StatePublished - Aug 7 2017
Event2017 Conference of the ACM Special Interest Group on Data Communication, SIGCOMM 2017 - Los Angeles, United States
Duration: Aug 21 2017Aug 25 2017

Other

Other2017 Conference of the ACM Special Interest Group on Data Communication, SIGCOMM 2017
CountryUnited States
CityLos Angeles
Period8/21/178/25/17

Fingerprint

performance monitoring
Network performance
hardware
Switches
Hardware
Monitoring
language
aggregation
performance
Values
monitoring
resources
Query languages
Visibility
Agglomeration
Simulators
Trajectories

Keywords

  • Network hardware
  • Network measurement
  • Network programming

ASJC Scopus subject areas

  • Computer Networks and Communications
  • Signal Processing
  • Electrical and Electronic Engineering
  • Communication

Cite this

Narayana, S., Sivaraman, A., Nathan, V., Goyal, P., Arun, V., Alizadeh, M., ... Kim, C. (2017). Language-directed hardware design for network performance monitoring. In SIGCOMM 2017 - Proceedings of the 2017 Conference of the ACM Special Interest Group on Data Communication (pp. 85-98). Association for Computing Machinery, Inc. https://doi.org/10.1145/3098822.3098829

Language-directed hardware design for network performance monitoring. / Narayana, Srinivas; Sivaraman, Anirudh; Nathan, Vikram; Goyal, Prateesh; Arun, Venkat; Alizadeh, Mohammad; Jeyakumar, Vimalkumar; Kim, Changhoon.

SIGCOMM 2017 - Proceedings of the 2017 Conference of the ACM Special Interest Group on Data Communication. Association for Computing Machinery, Inc, 2017. p. 85-98.

Research output: Chapter in Book/Report/Conference proceedingConference contribution

Narayana, S, Sivaraman, A, Nathan, V, Goyal, P, Arun, V, Alizadeh, M, Jeyakumar, V & Kim, C 2017, Language-directed hardware design for network performance monitoring. in SIGCOMM 2017 - Proceedings of the 2017 Conference of the ACM Special Interest Group on Data Communication. Association for Computing Machinery, Inc, pp. 85-98, 2017 Conference of the ACM Special Interest Group on Data Communication, SIGCOMM 2017, Los Angeles, United States, 8/21/17. https://doi.org/10.1145/3098822.3098829
Narayana S, Sivaraman A, Nathan V, Goyal P, Arun V, Alizadeh M et al. Language-directed hardware design for network performance monitoring. In SIGCOMM 2017 - Proceedings of the 2017 Conference of the ACM Special Interest Group on Data Communication. Association for Computing Machinery, Inc. 2017. p. 85-98 https://doi.org/10.1145/3098822.3098829
Narayana, Srinivas ; Sivaraman, Anirudh ; Nathan, Vikram ; Goyal, Prateesh ; Arun, Venkat ; Alizadeh, Mohammad ; Jeyakumar, Vimalkumar ; Kim, Changhoon. / Language-directed hardware design for network performance monitoring. SIGCOMM 2017 - Proceedings of the 2017 Conference of the ACM Special Interest Group on Data Communication. Association for Computing Machinery, Inc, 2017. pp. 85-98
@inproceedings{ab515f6fd62f425ba29051cb3a2e4c77,
title = "Language-directed hardware design for network performance monitoring",
abstract = "Network performance monitoring today is restricted by existing switch support for measurement, forcing operators to rely heavily on endpoints with poor visibility into the network core. Switch vendors have added progressively more monitoring features to switches, but the current trajectory of adding specific features is unsustainable given the ever-changing demands of network operators. Instead, we ask what switch hardware primitives are required to support an expressive language of network performance questions. We believe that the resulting switch hardware design could address a wide variety of current and future performance monitoring needs. We present a performance query language, Marple, modeled on familiar functional constructs like map, filter, groupby, and zip. Marple is backed by a new programmable key-value store primitive on switch hardware. The key-value store performs flexible aggregations at line rate (e.g., a moving average of queueing latencies per flow), and scales to millions of keys. We present a Marple compiler that targets a P4-programmable software switch and a simulator for highspeed programmable switches. Marple can express switch queries that could previously run only on end hosts, while Marple queries only occupy a modest fraction of a switch's hardware resources.",
keywords = "Network hardware, Network measurement, Network programming",
author = "Srinivas Narayana and Anirudh Sivaraman and Vikram Nathan and Prateesh Goyal and Venkat Arun and Mohammad Alizadeh and Vimalkumar Jeyakumar and Changhoon Kim",
year = "2017",
month = "8",
day = "7",
doi = "10.1145/3098822.3098829",
language = "English (US)",
pages = "85--98",
booktitle = "SIGCOMM 2017 - Proceedings of the 2017 Conference of the ACM Special Interest Group on Data Communication",
publisher = "Association for Computing Machinery, Inc",

}

TY - GEN

T1 - Language-directed hardware design for network performance monitoring

AU - Narayana, Srinivas

AU - Sivaraman, Anirudh

AU - Nathan, Vikram

AU - Goyal, Prateesh

AU - Arun, Venkat

AU - Alizadeh, Mohammad

AU - Jeyakumar, Vimalkumar

AU - Kim, Changhoon

PY - 2017/8/7

Y1 - 2017/8/7

N2 - Network performance monitoring today is restricted by existing switch support for measurement, forcing operators to rely heavily on endpoints with poor visibility into the network core. Switch vendors have added progressively more monitoring features to switches, but the current trajectory of adding specific features is unsustainable given the ever-changing demands of network operators. Instead, we ask what switch hardware primitives are required to support an expressive language of network performance questions. We believe that the resulting switch hardware design could address a wide variety of current and future performance monitoring needs. We present a performance query language, Marple, modeled on familiar functional constructs like map, filter, groupby, and zip. Marple is backed by a new programmable key-value store primitive on switch hardware. The key-value store performs flexible aggregations at line rate (e.g., a moving average of queueing latencies per flow), and scales to millions of keys. We present a Marple compiler that targets a P4-programmable software switch and a simulator for highspeed programmable switches. Marple can express switch queries that could previously run only on end hosts, while Marple queries only occupy a modest fraction of a switch's hardware resources.

AB - Network performance monitoring today is restricted by existing switch support for measurement, forcing operators to rely heavily on endpoints with poor visibility into the network core. Switch vendors have added progressively more monitoring features to switches, but the current trajectory of adding specific features is unsustainable given the ever-changing demands of network operators. Instead, we ask what switch hardware primitives are required to support an expressive language of network performance questions. We believe that the resulting switch hardware design could address a wide variety of current and future performance monitoring needs. We present a performance query language, Marple, modeled on familiar functional constructs like map, filter, groupby, and zip. Marple is backed by a new programmable key-value store primitive on switch hardware. The key-value store performs flexible aggregations at line rate (e.g., a moving average of queueing latencies per flow), and scales to millions of keys. We present a Marple compiler that targets a P4-programmable software switch and a simulator for highspeed programmable switches. Marple can express switch queries that could previously run only on end hosts, while Marple queries only occupy a modest fraction of a switch's hardware resources.

KW - Network hardware

KW - Network measurement

KW - Network programming

UR - http://www.scopus.com/inward/record.url?scp=85029441157&partnerID=8YFLogxK

UR - http://www.scopus.com/inward/citedby.url?scp=85029441157&partnerID=8YFLogxK

U2 - 10.1145/3098822.3098829

DO - 10.1145/3098822.3098829

M3 - Conference contribution

SP - 85

EP - 98

BT - SIGCOMM 2017 - Proceedings of the 2017 Conference of the ACM Special Interest Group on Data Communication

PB - Association for Computing Machinery, Inc

ER -