Elsevier

Computer Communications

Volume 161, 1 September 2020, Pages 99-108
Computer Communications

ProgLab: Programmable labels for QoS provisioning on software defined networks

https://doi.org/10.1016/j.comcom.2020.07.026Get rights and content

Abstract

To ensure the quality of service of an end-to-end connection, current network solutions are mostly dependable on the differentiation between different classes of traffic. The Software-defined networking (SDN) architecture has emerged to offer network programmability, giving to network operators a programmatic control over their network. In SDN, network devices are programmed in many ways, having a standard, open, and vendor-agnostic interface, e.g., OpenFlow, enabling the control plane to instruct the forwarding behavior of network devices from different vendors. In this paper, we introduce the Programmable Labels (ProgLab) approach to support traffic differentiation with QoS guarantees as a low-cost alternative built over an SDN architecture. The idea relies on the simplification of a packet-forwarding operation which relies on the remainder of a division, instead of classical table lookup method. ProgLab computes programmable label at the control plane by solving a congruence system from Residue Number System and the co-prime numbers assigned to the switches in the path of an end-to-end connection. Such label has a meaning within this network that expresses the entire route, addressing the respective traffic class at each switch’s logical queue along the path. ProgLab approach has been implemented through the P4 language and evaluated through an emulation-based evaluation. The experiments demonstrated the feasibility of ProgLab and showed its ability in providing QoS differentiation on demand.

Introduction

Recently, a research challenge has risen by the need of dealing with flows that are emerging from next generation mobile 5G networks and Industry 4.0 applications. New services will redefine the networking ecosystem that is expected to support Ultra High Definition (UHD) 4K, Augmented Reality (AR), and the Internet of Things (IoT). In particular, latency should be reduced 30–50 times, for meeting the Ultra-Reliable and Low-Latency Communication (URLLC) requirements [1].

Meeting URLLC requirements implies that end-to-end delay needs a near-deterministic guarantee and it will indeed require us to rethink the current network infrastructure. Traditionally hardware-based networking solutions such as Multi-Protocol Label Switching (MPLS) have been proposed to deliver a cost-efficient way of routing traffic in high-performance connectionless IP networks. In MPLS, Label Switch Routers (LSRs) make forwarding decisions at each hop based on label. These decisions rely on pre-established connection-oriented paths or tunnels, called Label Switch Paths (LSPs). MPLS has offered virtual circuits which enable network operators to assign a higher priority to network traffic classes. Such benefits bring a sense of traffic predictability within the network since network paths are predetermined. However, the core of its operation has remained static at the heart of service providers and data center networks, operating with opaque label-based forwarding tables.

The rise of Software-Defined Networking (SDN) [2] opens the door to the design of new network architectures and protocols. This network paradigm enables different mechanisms for routing and forwarding [3], [4], [5], both simplifying manageability and improving delay guarantees [6], [7]. However, they usually require to rewrite the packet header in every hop, (i.e., swap and pop operations) which may lead to high variability on packet forwarding latency. This growth on packet forwarding latency occurs quite often. In particular, when the number of entries in the flow tables, i.e., network states, is higher than TCAM switch storage capacity [8], [9].

Our recent proposal for SDN architecture, named RDNA [10], has advanced on the canonical SDN approach [11]. We have argued that the decoupling between edge and core tableless switches are two building blocks towards a more programmatic QoS within SDN design. OpenFlow can be seen only as an intermediate solution between these two design extremes, neither general enough for the edge and nor simple enough for the core.

In this paper, we explore the minimalist forwarding model introduced by RDNA as a fundamental concept to enhance network programmability. Instead of forwarding packets based on traditional table lookup operations, the core nodes are tableless switches that forward packets using merely remainder of the division (modulo) operations. ProgLab approach starts by solving a congruence system from Residue Number System [10] to get a label embedded into the packet header by the edge switch. The modulo of the label with a co-prime number (assigned to the switch) gives the respective traffic class at each switch’s logical queue. The ProgLab’s merit is the ability to define the switches logical queues explicitly along the path. They express the flow class at each switch and offer a new degree of control for QoS fine-grained traffic engineering. We designed ProgLab to support virtual circuits with traffic differentiation, not supported in the original RDNA architecture.

As proof-of-the-concept, we implemented and validated a ProgLab prototype over the P4 language [12]. Besides that, we conducted the emulation tests by evaluating some QoS metrics, showing the agility of programmable labels to offer QoS differentiation on-demand. Consequently, we demonstrate the feasibility of our approach. To summarize, this work has three folds bringing the following contributions:

  • The proposal of a new L2 forwarding protocol that supports the processing of ProgLab packets and legacy protocols in both core and edge switches;

  • The introduction of a simple and expressive routing approach which takes advantage of SDN architecture to provide QoS differentiation for networking applications;

  • The implementation of ProgLab core and edge switches enabled by P4 data plane programming language. We evaluated them in a mininet-based emulation environment.

The rest of the paper is organized as follows. In Section 2, we present the ProgLab concept discussing its design, a protocol implemented in P4 with its scalability analysis. Section 3 presents ProgLab experimental implementation in emulated environment with QoS results. In Section 5 we discuss the main contributions of this work and provides some final remarks about ProgLab. Section 6 summarizes the paper and point future research directions.

Section snippets

ProgLab design and architecture

Programmable Labels (ProgLab) approach has been designed upon the principles of SDN and to be directly implemented in the switch’s hardware through L2 network programming. ProgLab architecture is composed of the elements depicted in Fig. 1. They are: (i) the ProgLab Controller, a logically-centralized controller which defines the network nodes configuration, e.g., setting the co-prime numbers, and setting the traffic queuing classes; (ii) the Edge switch, after receiving the label from the

ProgLab implementation

A ProgLab prototype is implemented via Mininet-based emulation. For this, Mininet’s simple_switch behavior is used. This environment is implemented on an Ubuntu 16.04 virtual machine operating on the VirtualBox 5.1 platform. The ProgLab protocol was implemented by using the P4 language and BMv21 software-based switch from Barefoot Networks which enables the processing of the ProgLab labels.

The tools used to implement

Validation methodology

The validation methodology is structured in two parts. The first part consists of an analytical evaluation of ProgLab scalability. This study investigates two important issues for the deployment of Proglab networks:

  • The evaluation of how many bits would be required in the Proglab header as the number of hops in the path increases.

  • The data volume reduction and time for path configuration that can be achieved by Proglab approach versus MPLS-like approach.

The second part is devoted to experimental

Final remarks

As previously discussed, new applications from the next generation mobile 5G networks, Industry 4.0, and the Internet of Things are bringing new challenges to network management and traffic engineering. When these different applications coexist in the network, operators must provide simultaneously different service level requirements, such as high throughput, low latency, and high reliability. This challenging scenario brings the discussion of how to enable QoS for different flows and how to

Conclusion and future work

In this paper, we introduce the Programmable Labels (ProgLab) approach to support virtual circuits with QoS guarantees as a low-cost alternative built over an SDN architecture. A proof-of-concept was implemented using P4 language and evaluated in Mininet-P4 emulator using the BMv2 software switch. As an open solution, it can be potentially deployed over any white box programmable switch supporting P4 language. Besides that, we conducted extensive experimentation by evaluating some performance

CRediT authorship contribution statement

Wallas Froes: Conceptualization, Visualization, Investigation, Software, Writing - original draft, Writing - review & editing. Lucas Santos: Conceptualization, Investigation, Software, Writing - original draft, Writing - review & editing. Leobino N. Sampaio: Conceptualization, Supervision, Investigation, Writing - original draft, Writing - review & editing, Project administration. Magnos Martinello: Conceptualization, Investigation, Writing - original draft, Writing - review & editing, Project

Declaration of Competing Interest

The authors declare that they have no known competing financial interests or personal relationships that could have appeared to influence the work reported in this paper.

Acknowledgments

This work was partly supported by the National Council for the Improvement of Higher Education (CAPES) under Grant 1808428; the National Council for Scientific and Technological Development (CNPq) under Grant 166981/2017-6 and 428311/2018-0; FAPESB through Grant BOL 0630/2016. This study was partially funded by the Espírito Santo Research and Innovation Support Foundation (FAPES) under grants 21/2018 e 18/2018

Wallas Froes is a Master Degree Student at Federal University of Bahia. He holds a Graduate in Computing Engineer from Faculdade Independente do Nordeste (FAINOR) in 2014. His current research interests include Future Internet Architectures, Software-Defined Networks, and Data Plane Programming.

References (23)

  • IMT Vision – Framework and Overall Objectives of the Future Development of IMT for 2020 and beyondTech. rep.

    (2015)
  • KreutzD. et al.

    Software-defined networking: A comprehensive survey

    Proc. IEEE

    (2014)
  • HariA. et al.

    Path switching: Reduced-state flow handling in sdn using path information

  • FilsfilsE.C. et al.

    Segment routing architecture

  • AraujoA.C.d.S. et al.

    Beep: Balancing energy redundancy and performance in fat-tree data center networks

    IEEE Internet Comput.

    (2017)
  • MartinelloM. et al.

    Keyflow: a prototype for evolving sdn toward core network fabrics

    Netw. IEEE

    (2014)
  • WangJ.M. et al.

    Sdn-based multi-class qos-guaranteed inter-data center traffic management

  • CurtisA.R. et al.

    Devoflow: Scaling flow management for high-performance networks

    SIGCOMM Comput. Commun. Rev.

    (2011)
  • S.S. Cercós, R.M. Ramos, A.C.E. Eller, M. Martinello, M.R.N. Ribeiro, A.M. Fagertun, I.T. Monroy, Design of a stateless...
  • LiberatoA. et al.

    Rdna: Residue-defined networking architecture enabling ultra-reliable low-latency datacenters

    IEEE Trans. Netw. Serv. Manag.

    (2018)
  • McKeownN. et al.

    Openflow: enabling innovation in campus networks

    ACM SIGCOMM Comput. Commun. Rev.

    (2008)
  • Cited by (7)

    • A survey on data plane programming with P4: Fundamentals, advances, and applied research

      2023, Journal of Network and Computer Applications
      Citation Excerpt :

      With this approach, the location of the service becomes less important since the controller simply updates the forwarding rules when a service is migrated or load balancing is desired. Froes et al. (2020) classify different traffic classes which are identified by a label. Packet forwarding is based on that controller-generated label instead of IP addresses.

    • Improved Multi-Granularity Cascade Forest Network Traffic Classification Optimization for SDN-Based Differentiated QoS Guarantees

      2023, 2023 3rd International Conference on Electronic Information Engineering and Computer Communication, EIECC 2023
    • Deploying PolKA Source Routing in P4 Switches: (Invited Paper)

      2021, 25th International Conference on Optical Network Design and Modelling, ONDM 2021
    View all citing articles on Scopus

    Wallas Froes is a Master Degree Student at Federal University of Bahia. He holds a Graduate in Computing Engineer from Faculdade Independente do Nordeste (FAINOR) in 2014. His current research interests include Future Internet Architectures, Software-Defined Networks, and Data Plane Programming.

    Lucas de Souza Santos is a Master Degree Student at Federal University of Bahia (UFBA). He holds a Graduation in Science and Tecnology from UFBA in 2017. His current research interests include Future Internet Architectures, Software-Defined Networks and Network monitoring with InBand Telemetry (INT)

    Leobino N. Sampaio is an Associate Professor of Computer Science at the Federal University of Bahia (UFBA). He holds a Ph.D. degree in Computer Science from the Federal Univer- sity of Pernambuco (UFPE), awarded in 2011, and B.Sc. and M.Sc. degrees in Computer Science, awarded by Salvador Uni- versity (UNIFACS) in 1996 and 2002, respectively. Currently, he is a visiting researcher at Computer Science Department of University of California, Los Angeles (UCLA) in United States, member of SBC (the Brazilian Computer Society), and mem- ber and assistant coordinator of the RNPs Technical Com- mittee on Network Monitoring (CT-Mon). His research in- terests include future Internet architectures, software-defined networks, information-centric networks, and network perfor- mance evaluation. Contact him at [email protected]

    Magnos Martinello is an Associate Professor at Informatics Department at Federal University of Esprito Santo (UFES). He holds a Ph.D. degree in Computer Science from the Institut National Politechnique de Toulouse (INPT) France in 2005. Also, he has worked as a visiting researcher at the University of Bristol in 2016-2017 within the High Performance Network group. His research interests include SDN, NFV, Cloud Computing and Network Performance Analysis.

    Alextian Liberato received the Ph.D. degree from the Federal University of Espirito Santo in 2018. He is a Lecturer with the Department of Informatics, Federal Institute of Esprito Santo. His research interests include network architecture, datacenter designs, routing, and SDN.

    Rodolfo S. Villaca is an Assistant Professor at the Federal University of Esprito Santo (Ufes). He holds a Ph.D. degree in Electrical Engineering from the State University of Campinas (Unicamp) in 2013 and B.Sc. degree in Computer Engineering also from Ufes in 2000. His current research interests include Software-Defined Networks, Network Measurement and Monitoring and Computer Systems Performance Evaluation.

    View full text