TY - GEN
T1 - Programming slick network functions
AU - Anwer, Bilal
AU - Benson, Theophilus
AU - Feamster, Nick
AU - Levin, Dave
N1 - Publisher Copyright:
Copyright 2015 ACM.
PY - 2015/6/17
Y1 - 2015/6/17
N2 - Current approaches to in-network traffic processing involve the deployment of monolithic middleboxes in virtual machines. These approaches make it difficult to reuse functionality across different packet processing elements and also do not use available in-network processing resources efficiently. We present Slick, a framework for programming network functions that allows a programmer to write a single high-level control program that specifies custom packet processing on precise subsets of traffic. The Slick runtime coordinates the placement of fine-grained packet processing elements (e.g., firewalls, load balancers) and steers traffic through sequences of these element instances. A Slick program merely dictates what processing should be performed on specific traffic flows, without requiring the programmer to specify where in the network specific processing elements are instantiated or how traffic should be routed through them. In contrast to previous work, Slick handles both the placement of fine-grained elements and the steering of traffic through specific sequences of element instances, allowing for more efficient use of network resources than solutions that solve each problem in isolation.
AB - Current approaches to in-network traffic processing involve the deployment of monolithic middleboxes in virtual machines. These approaches make it difficult to reuse functionality across different packet processing elements and also do not use available in-network processing resources efficiently. We present Slick, a framework for programming network functions that allows a programmer to write a single high-level control program that specifies custom packet processing on precise subsets of traffic. The Slick runtime coordinates the placement of fine-grained packet processing elements (e.g., firewalls, load balancers) and steers traffic through sequences of these element instances. A Slick program merely dictates what processing should be performed on specific traffic flows, without requiring the programmer to specify where in the network specific processing elements are instantiated or how traffic should be routed through them. In contrast to previous work, Slick handles both the placement of fine-grained elements and the steering of traffic through specific sequences of element instances, allowing for more efficient use of network resources than solutions that solve each problem in isolation.
KW - Network Functions Virtualization (NFV)
KW - Software-Defined Networking (SDN)
UR - http://www.scopus.com/inward/record.url?scp=84962074444&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=84962074444&partnerID=8YFLogxK
U2 - 10.1145/2774993.2774998
DO - 10.1145/2774993.2774998
M3 - Conference contribution
AN - SCOPUS:84962074444
T3 - Symposium on Software Defined Networking (SDN) Research, SOSR 2015
BT - Symposium on Software Defined Networking (SDN) Research, SOSR 2015
PB - Association for Computing Machinery, Inc
T2 - 1st ACM SIGCOMM Symposium on Software Defined Networking Research, SOSR 2015
Y2 - 17 June 2015 through 18 June 2015
ER -