V. Sivaraman, S. Madanapalli, Himal Kumar, H. Gharakheili
In the absence of network neutrality, consumers are vulnerable to arbitrary traffic discrimination policies applied by Internet Service Providers (ISPs). In this paper we propose a framework that gives ISPs flexibility to practice differentiation, while being open so consumers can make informed choices, and accountable so regulators can oversee adherence. We begin by outlining the SDN-based architecture of our solution, comprising the segregation of traffic into a chosen number of classes, and dynamic partitioning of bandwidth amongst classes based on utility functions. We then highlight the flexibility of our framework in accommodating a wide range of behaviors, from fully-neutral to per-application-type and per-subscriber-tier differentiation. We evaluate our scheme via simulations of real traffic mixes to show how ISP differentiation policies can be tuned to meet a range of user needs, and implement our scheme in a testbed network to demonstrate practical feasibility. We believe our proposal is a promising approach to keeping ISPs, consumers, and regulators happy in a post-neutral world.
{"title":"OpenTD","authors":"V. Sivaraman, S. Madanapalli, Himal Kumar, H. Gharakheili","doi":"10.1145/3314148.3314354","DOIUrl":"https://doi.org/10.1145/3314148.3314354","url":null,"abstract":"In the absence of network neutrality, consumers are vulnerable to arbitrary traffic discrimination policies applied by Internet Service Providers (ISPs). In this paper we propose a framework that gives ISPs flexibility to practice differentiation, while being open so consumers can make informed choices, and accountable so regulators can oversee adherence. We begin by outlining the SDN-based architecture of our solution, comprising the segregation of traffic into a chosen number of classes, and dynamic partitioning of bandwidth amongst classes based on utility functions. We then highlight the flexibility of our framework in accommodating a wide range of behaviors, from fully-neutral to per-application-type and per-subscriber-tier differentiation. We evaluate our scheme via simulations of real traffic mixes to show how ISP differentiation policies can be tuned to meet a range of user needs, and implement our scheme in a testbed network to demonstrate practical feasibility. We believe our proposal is a promising approach to keeping ISPs, consumers, and regulators happy in a post-neutral world.","PeriodicalId":346870,"journal":{"name":"Proceedings of the 2019 ACM Symposium on SDN Research","volume":"11 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2019-04-03","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"114469935","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Vasudevan Nagendra, A. Bhattacharya, Anshul Gandhi, Samir R Das
With increase in cellular-enabled IoT devices having diverse traffic characteristics and service level objectives (SLOs), handling the control traffic in a scalable and resource-efficient manner in the cellular packet core network is critical. The traditional monolithic design of the cellular core adopted by service-providers is inflexible with respect to the diverse requirements and bursty loads of IoT devices, specifically for properties such as elasticity, customizability, and scalability. To address this key challenge, we focus on the most critical control plane component of the cellular packet core network, the Mobility Management Entity (MME). We present MMLite, a functionally decomposed and stateless MME design wherein individual control procedures are implemented as microservices and states are decoupled from their processing, thus enabling elasticity and fault tolerance. For SLO compliance, we develop a multi-level load balancing approach based on skewed consistent hashing to efficiently distribute incoming connections. We evaluate the performance benefits of MMLite over existing approaches with respect to scaling, fault tolerance, SLO compliance and resource efficiency.
{"title":"MMLite: A Scalable and Resource Efficient Control Plane for Next Generation Cellular Packet Core","authors":"Vasudevan Nagendra, A. Bhattacharya, Anshul Gandhi, Samir R Das","doi":"10.1145/3314148.3314345","DOIUrl":"https://doi.org/10.1145/3314148.3314345","url":null,"abstract":"With increase in cellular-enabled IoT devices having diverse traffic characteristics and service level objectives (SLOs), handling the control traffic in a scalable and resource-efficient manner in the cellular packet core network is critical. The traditional monolithic design of the cellular core adopted by service-providers is inflexible with respect to the diverse requirements and bursty loads of IoT devices, specifically for properties such as elasticity, customizability, and scalability. To address this key challenge, we focus on the most critical control plane component of the cellular packet core network, the Mobility Management Entity (MME). We present MMLite, a functionally decomposed and stateless MME design wherein individual control procedures are implemented as microservices and states are decoupled from their processing, thus enabling elasticity and fault tolerance. For SLO compliance, we develop a multi-level load balancing approach based on skewed consistent hashing to efficiently distribute incoming connections. We evaluate the performance benefits of MMLite over existing approaches with respect to scaling, fault tolerance, SLO compliance and resource efficiency.","PeriodicalId":346870,"journal":{"name":"Proceedings of the 2019 ACM Symposium on SDN Research","volume":"2 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2019-04-03","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"114309737","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Theo Jepsen, Daniel Álvarez, Nate Foster, Changhoon Kim, Jeongkeun Lee, M. Moshref, R. Soulé
This paper presents PPS, a system for locating occurrences of string keywords stored in the payload of packets using a programmable network ASIC. The PPS compiler first converts keywords into Deterministic Finite Automata (DFA) representations, and then maps the DFA into a sequence of forwarding tables in the switch pipeline. Our design leverages several hardware primitives (e.g., TCAM, hashing, parallel tables) to achieve high throughput. Our evaluation shows that PPS demonstrates significantly higher throughput and lower latency than string searches running on CPUs, GPUs, or FPGAs.
{"title":"Fast String Searching on PISA","authors":"Theo Jepsen, Daniel Álvarez, Nate Foster, Changhoon Kim, Jeongkeun Lee, M. Moshref, R. Soulé","doi":"10.1145/3314148.3314356","DOIUrl":"https://doi.org/10.1145/3314148.3314356","url":null,"abstract":"This paper presents PPS, a system for locating occurrences of string keywords stored in the payload of packets using a programmable network ASIC. The PPS compiler first converts keywords into Deterministic Finite Automata (DFA) representations, and then maps the DFA into a sequence of forwarding tables in the switch pipeline. Our design leverages several hardware primitives (e.g., TCAM, hashing, parallel tables) to achieve high throughput. Our evaluation shows that PPS demonstrates significantly higher throughput and lower latency than string searches running on CPUs, GPUs, or FPGAs.","PeriodicalId":346870,"journal":{"name":"Proceedings of the 2019 ACM Symposium on SDN Research","volume":"35 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2019-04-03","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"125436784","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Pub Date : 2019-04-03DOI: 10.1007/978-1-4419-1428-6_3087
D. M. Rumbaugh, J. King, Michal Beran, David A. Washburn, K. Gould, Nate Kornell, D. J. Scaturo, Brian D. Haig, R. Schvaneveldt, Benjamin K. Barton, Thomas A. Ulrich, Peter Robinson, Matthew J. Schuelke, Eric Anthony Day, Henry W. Chase, E. G. Carayannis, Timothy M. Flemming, M. Mitchelmore, Paul White, Erin M. Brodhagen, M. Gettinger, E. Usher, David B. Morris, Janna Wardman, J. Nelson, R. Low, P. Jin, Betty K. Tuller, Noël Nguyen, Fons Wijnhoven, Gerhard Weber, C. Rigg, K. Trehan, M. L. Jones, Aytac Gogus, Norbert M. Seel, Som Naidu, Danny R. Bedgood, C. Steiner, Birgit Marte, Jürgen Heller, Dietrich Albert, A. Podolskiy, L. Uden, Andrew J. Martin, Christian Balkenius, Birger Johansson, Karen L. Hollis, David A. Cook, J. Bloomberg, Otmar Leo Bock, R. Clariana, Simon Hooper, Amy B. Adcock, R. Van Eck, Chin-Chung Tsai, C. Hsu, Mikhail S. Burtsev, J. S. Nairne, M. Vasconcelos, J. Pandeirada, Liu Yang, J. Carbonell, M. Dornisch, G. Manaster, Katie Davis, Marcia L. Conner, Dolores Fidishun, Mark Tennant, Joh
{"title":"ADD","authors":"D. M. Rumbaugh, J. King, Michal Beran, David A. Washburn, K. Gould, Nate Kornell, D. J. Scaturo, Brian D. Haig, R. Schvaneveldt, Benjamin K. Barton, Thomas A. Ulrich, Peter Robinson, Matthew J. Schuelke, Eric Anthony Day, Henry W. Chase, E. G. Carayannis, Timothy M. Flemming, M. Mitchelmore, Paul White, Erin M. Brodhagen, M. Gettinger, E. Usher, David B. Morris, Janna Wardman, J. Nelson, R. Low, P. Jin, Betty K. Tuller, Noël Nguyen, Fons Wijnhoven, Gerhard Weber, C. Rigg, K. Trehan, M. L. Jones, Aytac Gogus, Norbert M. Seel, Som Naidu, Danny R. Bedgood, C. Steiner, Birgit Marte, Jürgen Heller, Dietrich Albert, A. Podolskiy, L. Uden, Andrew J. Martin, Christian Balkenius, Birger Johansson, Karen L. Hollis, David A. Cook, J. Bloomberg, Otmar Leo Bock, R. Clariana, Simon Hooper, Amy B. Adcock, R. Van Eck, Chin-Chung Tsai, C. Hsu, Mikhail S. Burtsev, J. S. Nairne, M. Vasconcelos, J. Pandeirada, Liu Yang, J. Carbonell, M. Dornisch, G. Manaster, Katie Davis, Marcia L. Conner, Dolores Fidishun, Mark Tennant, Joh","doi":"10.1007/978-1-4419-1428-6_3087","DOIUrl":"https://doi.org/10.1007/978-1-4419-1428-6_3087","url":null,"abstract":"","PeriodicalId":346870,"journal":{"name":"Proceedings of the 2019 ACM Symposium on SDN Research","volume":"5 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2019-04-03","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"132909739","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"P4TrafficTool","authors":"Deepanshu Jindal, Raj Joshi, B. Leong","doi":"10.1145/3314148.3318047","DOIUrl":"https://doi.org/10.1145/3314148.3318047","url":null,"abstract":"CCS CONCEPTS • Networks→ Programmable networks.","PeriodicalId":346870,"journal":{"name":"Proceedings of the 2019 ACM Symposium on SDN Research","volume":"30 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2019-04-03","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"114802189","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Quan Chen, Hailong Yang, M. Guo, R. Kannan, Jason Mars, Lingjia Tang
{"title":"Prophet","authors":"Quan Chen, Hailong Yang, M. Guo, R. Kannan, Jason Mars, Lingjia Tang","doi":"10.1145/3093337.3037700","DOIUrl":"https://doi.org/10.1145/3093337.3037700","url":null,"abstract":"","PeriodicalId":346870,"journal":{"name":"Proceedings of the 2019 ACM Symposium on SDN Research","volume":"70 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2019-04-03","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"123639776","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Efficient representations of multi-field packet classifiers with fields represented by ranges is a core mechanism to express services on data plane. To implement classifiers in ternary-addressable memory (TCAM), each range should be encoded into multiple ternary bit strings whose number is at most linear to the width (in bits) of a represented field independently from range encoding method. In this paper we introduce a notion of a subrange allowing to represent a field range on any chosen subset of bit indices that significantly improve efficiency of classifier representations. Our analytic results are confirmed with a comprehensive evaluation study showing applicability of our approach to implement desired levels of expressiveness and scalability in packet classifiers.
{"title":"How to deal with range-based packet classifiers","authors":"Vitalii Demianiuk, Kirill Kogan","doi":"10.1145/3314148.3314346","DOIUrl":"https://doi.org/10.1145/3314148.3314346","url":null,"abstract":"Efficient representations of multi-field packet classifiers with fields represented by ranges is a core mechanism to express services on data plane. To implement classifiers in ternary-addressable memory (TCAM), each range should be encoded into multiple ternary bit strings whose number is at most linear to the width (in bits) of a represented field independently from range encoding method. In this paper we introduce a notion of a subrange allowing to represent a field range on any chosen subset of bit indices that significantly improve efficiency of classifier representations. Our analytic results are confirmed with a comprehensive evaluation study showing applicability of our approach to implement desired levels of expressiveness and scalability in packet classifiers.","PeriodicalId":346870,"journal":{"name":"Proceedings of the 2019 ACM Symposium on SDN Research","volume":"84 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2019-04-03","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"121852756","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
The rise of the programmable switching ASIC has allowed switches to handle the complexity and diversity of modern networking programs while meeting the performance demands of modern networks. Exploitation of the flexibility of these switches, however, has exploded routing program size: recently proposed programs contain more than 100 [11] or even 1000 [10] tables. Realizing these programs in a programmable switch requires finding layouts with minimal depth: if a layout has more match-action stages than a switch's pipeline provides, the switch must recirculate, cutting throughput. Even if a layout fits a switch's pipeline, since most commercial pipelines cannot allocate memory freely to stages, non-compact pipelines can result in underloaded stages and significant memory underutilization. While inter-table control and data dependencies critically limit the ability of compilers to lay out tables compactly, no switch architecture which can fully resolve dependencies has been proposed. To address this problem, we introduce precedence, an extension of the RMT switching ASIC, which enables tables linked by dependencies to be executed in parallel or even out-of-order. Precedence can resolve nearly 70% of switch.p4 [11]'s dependencies (a real-world routing program), reduce its pipeline depth by 48%, and only modestly increases silicon area.
{"title":"Precedence: Enabling Compact Program Layout By Table Dependency Resolution","authors":"C. Leet, Shenshen Chen, K. Gao, Y. Yang","doi":"10.1145/3314148.3314348","DOIUrl":"https://doi.org/10.1145/3314148.3314348","url":null,"abstract":"The rise of the programmable switching ASIC has allowed switches to handle the complexity and diversity of modern networking programs while meeting the performance demands of modern networks. Exploitation of the flexibility of these switches, however, has exploded routing program size: recently proposed programs contain more than 100 [11] or even 1000 [10] tables. Realizing these programs in a programmable switch requires finding layouts with minimal depth: if a layout has more match-action stages than a switch's pipeline provides, the switch must recirculate, cutting throughput. Even if a layout fits a switch's pipeline, since most commercial pipelines cannot allocate memory freely to stages, non-compact pipelines can result in underloaded stages and significant memory underutilization. While inter-table control and data dependencies critically limit the ability of compilers to lay out tables compactly, no switch architecture which can fully resolve dependencies has been proposed. To address this problem, we introduce precedence, an extension of the RMT switching ASIC, which enables tables linked by dependencies to be executed in parallel or even out-of-order. Precedence can resolve nearly 70% of switch.p4 [11]'s dependencies (a real-world routing program), reduce its pipeline depth by 48%, and only modestly increases silicon area.","PeriodicalId":346870,"journal":{"name":"Proceedings of the 2019 ACM Symposium on SDN Research","volume":"24 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2019-04-03","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"121211800","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Aisha Syed, Bilal Anwer, V. Gopalakrishnan, Jacobus Van Der Merwe
The emergence of network functions virtualization (NFV) and software defined networking (SDN) has resulted in networks being realized as software defined infrastructures (SDIs). The dynamicity and flexibility o ered by SDIs introduces new challenges in ensuring that policy changes do not result in unintended consequences. These can range from the breakdown of basic network invariants to degradation of network performance. We present the D framework that enables automated discovery and quantification of the potential impact of new orchestration and service level SDI policies. Our approach uses a combination of knowledge modeling, data analysis, machine learning, and emulation techniques in a sandbox SDI. We demonstrate our approach by evaluating it over a testbed SDI with a 4G LTE/EPC broadband service.
{"title":"DEPO","authors":"Aisha Syed, Bilal Anwer, V. Gopalakrishnan, Jacobus Van Der Merwe","doi":"10.1145/3314148.3314358","DOIUrl":"https://doi.org/10.1145/3314148.3314358","url":null,"abstract":"The emergence of network functions virtualization (NFV) and software defined networking (SDN) has resulted in networks being realized as software defined infrastructures (SDIs). The dynamicity and flexibility o ered by SDIs introduces new challenges in ensuring that policy changes do not result in unintended consequences. These can range from the breakdown of basic network invariants to degradation of network performance. We present the D framework that enables automated discovery and quantification of the potential impact of new orchestration and service level SDI policies. Our approach uses a combination of knowledge modeling, data analysis, machine learning, and emulation techniques in a sandbox SDI. We demonstrate our approach by evaluating it over a testbed SDI with a 4G LTE/EPC broadband service.","PeriodicalId":346870,"journal":{"name":"Proceedings of the 2019 ACM Symposium on SDN Research","volume":"19 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2019-04-03","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"116168548","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Software-Defined Networking (SDN) enables network operators the flexibility to program their own forwarding rules, providing more than one way to achieve the same behaviour. Verifying equivalence between rulesets is a fundamental analysis and verification building block for SDN as it can be used to: (1) confirm a ruleset optimised for power efficiency or table occupancy remains equivalent, (2) verify a ruleset modified for new hardware, (3) regression test an SDN application to detect bugs early. We present a practical and novel canonical Multi-Terminal Binary Decision Diagram (MTBDD) representation of OpenFlow 1.3 ruleset forwarding behaviour which can be trivially compared for equivalence. Basing our representation on an MTBDD provides a proven canonical form which is also compact. In this paper, we present the algorithms required to correctly flatten multi-table pipelines into an equivalent single-table, resolve equivalences in OpenFlow actions, and build the final MTBDD representation from a priority ordered ruleset. OpenFlow rulesets can typically be converted to an MTBDD within tens of seconds. We release our open-source implementation to the SDN community.
{"title":"Identifying Equivalent SDN Forwarding Behaviour","authors":"Richard Sanger, M. Luckie, R. Nelson","doi":"10.1145/3314148.3314347","DOIUrl":"https://doi.org/10.1145/3314148.3314347","url":null,"abstract":"Software-Defined Networking (SDN) enables network operators the flexibility to program their own forwarding rules, providing more than one way to achieve the same behaviour. Verifying equivalence between rulesets is a fundamental analysis and verification building block for SDN as it can be used to: (1) confirm a ruleset optimised for power efficiency or table occupancy remains equivalent, (2) verify a ruleset modified for new hardware, (3) regression test an SDN application to detect bugs early. We present a practical and novel canonical Multi-Terminal Binary Decision Diagram (MTBDD) representation of OpenFlow 1.3 ruleset forwarding behaviour which can be trivially compared for equivalence. Basing our representation on an MTBDD provides a proven canonical form which is also compact. In this paper, we present the algorithms required to correctly flatten multi-table pipelines into an equivalent single-table, resolve equivalences in OpenFlow actions, and build the final MTBDD representation from a priority ordered ruleset. OpenFlow rulesets can typically be converted to an MTBDD within tens of seconds. We release our open-source implementation to the SDN community.","PeriodicalId":346870,"journal":{"name":"Proceedings of the 2019 ACM Symposium on SDN Research","volume":"23 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2019-04-03","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"114992107","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}