Today’s powerful telecommunications and data communications networks require an expected level of performance to manage demanding network bandwidth needs. Although legacy single-core-based network architectures can no longer keep up, recent technology improvements brought on by multicore CPUs can achieve the performance required.
The main concepts of efficient network equipment architectures were defined several years ago to address demand for high-speed router designs facing a new explosion of Internet traffic. This architecture has been extended to new services such as L2 protocols, Security, mobility, multicast, and similar packet-based operations. IP-based equipment can be partitioned into three basic packet processing elements (shown in Figure 1): Data Plane, Control Plane, and Management Plane.
|
|
|
Figure 1: A typical network equipment architecture is partitioned in Data Plane, Control Plane, and Management Plane elements. (click graphic to zoom by 1.9x) |
Different processors must manage the Data Plane and Control Plane for equipment that deeply inspects incoming packets to analyze different layers of protocols and differentiate services. Functions implemented at the Data Plane level are performance-oriented; algorithms are simple, but must be efficient.
Paths to better performance
To optimize performance, the Data Plane can be subdivided into two parts: Fast Path and Slow Path.
The Fast Path (Figure 2) handles all mechanisms that require per-packet processing. For instance, it determines which port a packet should be forwarded to and encrypts/decrypts packets if an IPsec security association is defined. However, some complex packets cannot be processed at this level and are redirected to the Slow Path through exceptions.
|
|
|
Figure 2: While the Fast Path handles per-packet processing, the Slow Path handles exception packets that are too complex for the Fast Path. (click graphic to zoom by 1.9x) |
The Slow Path handles the few packets that are too complex for the Fast Path to process. In general, the Slow Path implements a complete IP stack and handles most of the Fast Path’s exceptions. The Slow Path, which corresponds to the Operating System (OS) networking stack, and Control Plane can be colocalized on the same processor.
If this architecture is applied to a multicore-based platform, a large number of cores can be allocated to the Fast Path to process the largest part of traffic at the highest level of performance. Using a low-level executive such as a multicore execution environment or lightweight runtime environment outside the OS is recommended to implement lock-free packet processing and optimize memory bandwidth contention. This leads to unrivaled performance compared to a standard OS. The Slow Path and Control Plane use the remaining cores under a standard OS such as Linux.
Progressive migration of services to multicore
The Fast Path architecture provides the best performance for multicore-based architectures. It also offers a progressive and transparent migration path that makes it possible to reuse existing software and add new services to optimize return on development investment.
Some network services can be managed at the Fast Path level, while others are handled at the Slow Path level. Once the Fast Path part for a new service is ready, packets for this service are no longer considered exceptions. Only complex packets are forwarded to the Slow Path; thus, processing loads significantly decrease. Without changing applications, the equipment benefits from the highest performance delivered by the Fast Path for the new service.
This approach is particularly effective in implementing incremental cost-effective development steps for networking/telecommunications equipment, which is typically delivered following a roadmap of services. It is common to first deliver trial versions of equipment to demonstrate a service and then, if the equipment is proven, as a valuable performance enhancer.
IPv6 example
An illustration depicted in Figure 3 shows how a complete high-performance IPv6 solution can be introduced on IPv4-only equipment. On the left side of Figure 3, the Fast Path processes IPv4 traffic only. In this case, all IPv6 packets are considered exceptions, and the Slow Path performs IPv6 forwarding. IPv6 forwarding performance is low, but a complete IPv6 routing solution (including Control Plane protocols) is provided.
|
|
|
Figure 3: IPv6 services can be progressively introduced on IPv4 equipment by having the Fast Path process IPv6 packets. (click graphic to zoom by 1.9x) |
On the right side, the Fast Path processes IPv6. Only IPv6 packets that are too complex for the Fast Path are forwarded to the Slow Path. The Fast Path handles the majority of IPv6 traffic, and IPv6 forwarding performance is now similar to IPv4. Moreover, OSPF routing version for IPv6 (OSPFv3) is unchanged.
This progressive approach makes sense as the introduction of IPv6 services is still ramping up. Adding new services such as IPsec and multicast later on when the IPv6 protocol is widely deployed can progressively achieve a complete IPv6 solution. This example can be extended to all protocols at all layers. For instance, multicast or a specific encapsulation protocol on top of IPv4 that is not available at the first step in the Fast Path can be progressively introduced thereafter.
Growing with the need
It is possible to develop a Fast Path-based architecture that benefits from multicore technology performance while avoiding the need to completely redesign Control Plane applications. If the architecture is carefully designed, advanced network services can be initially implemented without any Fast Path and progressively introduced at the Fast Path level as bandwidth and performance increases. This approach is particularly effective in implementing incremental cost-effective development steps for network and telecommunications equipment.
6WIND 33-(0)1-39-30-92-10 eric.carmes@6wind.com www.6wind.com









