5 research outputs found

    On Ranges and Partitions in Optimal TCAMs

    Full text link
    Traffic splitting is a required functionality in networks, for example for load balancing over paths or servers, or by the source's access restrictions. The capacities of the servers (or the number of users with particular access restrictions) determine the sizes of the parts into which traffic should be split. A recent approach implements traffic splitting within the ternary content addressable memory (TCAM), which is often available in switches. It is important to reduce the amount of memory allocated for this task since TCAMs are power consuming and are often also required for other tasks such as classification and routing. In the longest-prefix model (LPM), Draves et al. (INFOCOM 1999) find a minimal representation of a function, and Sadeh et al. (INFOCOM 2019) find a minimal representation of a partition. In certain situations, range-functions are of special interest, that is, all the addresses with the same target, or action, are consecutive. In this paper we show that minimizing the amount of TCAM entries to represent a partition comes at the cost of fragmentation, such that for some partitions some actions must have multiple ranges. Then, we also study the case where each target must have a single segment of addresses

    Codes for Load Balancing in TCAMs: Size Analysis

    Full text link
    Traffic splitting is a required functionality in networks, for example for load balancing over paths or servers, or by the source's access restrictions. The capacities of the servers (or the number of users with particular access restrictions) determine the sizes of the parts into which traffic should be split. A recent approach implements traffic splitting within the ternary content addressable memory (TCAM), which is often available in switches. It is important to reduce the amount of memory allocated for this task since TCAMs are power consuming and are often also required for other tasks such as classification and routing. Recent works suggested algorithms to compute a smallest implementation of a given partition in the longest prefix match (LPM) model. In this paper we analyze properties of such minimal representations and prove lower and upper bounds on their size. The upper bounds hold for general TCAMs, and we also prove an additional lower-bound for general TCAMs. We also analyze the expected size of a representation, for uniformly random ordered partitions. We show that the expected representation size of a random partition is at least half the size for the worst-case partition, and is linear in the number of parts and in the logarithm of the size of the address space

    Design, Analysis, and Optimization of Traffic Engineering for Software Defined Networks

    Get PDF
    Network traffic has been growing exponentially due to the rapid development of applications and communications technologies. Conventional routing protocols, such as Open-Shortest Path First (OSPF), do not provide optimal routing and result in weak network resources. Optimal traffic engineering (TE) is not applicable in practice due to operational constraints such as limited memory on the forwarding devices and routes oscillation. Recently, a new way of centralized management of networks enabled by Software-Defined Networking (SDN) made it easy to apply most traffic engineering ideas in practice. \par Toward creating an applicable traffic engineering system, we created a TE simulator for experimenting with TE and evaluating TE systems efficiently as this tool employs parallel processing to achieve high efficiency. The purpose of the simulator is two aspects: (1) We use it to understand traffic engineering, (2) we use it to formulate a new traffic engineering algorithm that is near-optimal and applicable in practice. We study the design of some important aspects of any TE system. In particular, the consequences of achieving optimal TE by solving the multi-commodity flow problem (MCF) and the consequences of choosing single-path routing over multi-path routing. With the help of the TE simulator, we compare many TE systems constructed by combining different paths selection techniques with two objective functions for rate adaptations: load balancing (LB) and average delay (AD). The results confirm that paths selected based on the theoretical approach known as Oblivious Routing combined with AD objective function can significantly increase the performance in terms of throughput, congestion, and delay.\par However, the new proposed system comes with a cost. The AD function has a higher complexity than the LB function. We show that this problem can be tackled by training deep learning models. We trained two models with two different neural network architectures: Multilayer Perceptron (MLP) and Long-Short Term Memory (LSTM), to get a responsive traffic engineering system. The input training data is based on synthetic data obtained from the simulator. The output of the two models is the split ratios that the SDN controller uses to instruct the switching devices about how to forward traffic in the network. The result confirms that both models are effective and can be used to forward traffic in an optimal or near-optimal way. The LSTM model has shown a slightly better result than MLP due to its ability to predict a longer output sequence

    A Survey on Data Plane Programming with P4: Fundamentals, Advances, and Applied Research

    Full text link
    With traditional networking, users can configure control plane protocols to match the specific network configuration, but without the ability to fundamentally change the underlying algorithms. With SDN, the users may provide their own control plane, that can control network devices through their data plane APIs. Programmable data planes allow users to define their own data plane algorithms for network devices including appropriate data plane APIs which may be leveraged by user-defined SDN control. Thus, programmable data planes and SDN offer great flexibility for network customization, be it for specialized, commercial appliances, e.g., in 5G or data center networks, or for rapid prototyping in industrial and academic research. Programming protocol-independent packet processors (P4) has emerged as the currently most widespread abstraction, programming language, and concept for data plane programming. It is developed and standardized by an open community and it is supported by various software and hardware platforms. In this paper, we survey the literature from 2015 to 2020 on data plane programming with P4. Our survey covers 497 references of which 367 are scientific publications. We organize our work into two parts. In the first part, we give an overview of data plane programming models, the programming language, architectures, compilers, targets, and data plane APIs. We also consider research efforts to advance P4 technology. In the second part, we analyze a large body of literature considering P4-based applied research. We categorize 241 research papers into different application domains, summarize their contributions, and extract prototypes, target platforms, and source code availability.Comment: Submitted to IEEE Communications Surveys and Tutorials (COMS) on 2021-01-2

    Resilient and Scalable Forwarding for Software-Defined Networks with P4-Programmable Switches

    Get PDF
    Traditional networking devices support only fixed features and limited configurability. Network softwarization leverages programmable software and hardware platforms to remove those limitations. In this context the concept of programmable data planes allows directly to program the packet processing pipeline of networking devices and create custom control plane algorithms. This flexibility enables the design of novel networking mechanisms where the status quo struggles to meet high demands of next-generation networks like 5G, Internet of Things, cloud computing, and industry 4.0. P4 is the most popular technology to implement programmable data planes. However, programmable data planes, and in particular, the P4 technology, emerged only recently. Thus, P4 support for some well-established networking concepts is still lacking and several issues remain unsolved due to the different characteristics of programmable data planes in comparison to traditional networking. The research of this thesis focuses on two open issues of programmable data planes. First, it develops resilient and efficient forwarding mechanisms for the P4 data plane as there are no satisfying state of the art best practices yet. Second, it enables BIER in high-performance P4 data planes. BIER is a novel, scalable, and efficient transport mechanism for IP multicast traffic which has only very limited support of high-performance forwarding platforms yet. The main results of this thesis are published as 8 peer-reviewed and one post-publication peer-reviewed publication. The results cover the development of suitable resilience mechanisms for P4 data planes, the development and implementation of resilient BIER forwarding in P4, and the extensive evaluations of all developed and implemented mechanisms. Furthermore, the results contain a comprehensive P4 literature study. Two more peer-reviewed papers contain additional content that is not directly related to the main results. They implement congestion avoidance mechanisms in P4 and develop a scheduling concept to find cost-optimized load schedules based on day-ahead forecasts
    corecore