Communication Processors: A Buyers Guide
In their broadest definition, communication processors perform the basic tasks of classifying network traffic and enforcing policy functions. The details of how different manufacturers approach these apparently simple duties, however, make all the difference for communication equipment designers.
By Patrick Walsh
View the Vendors List
View the
Products List
Increasing demand for high-speed, high-bandwidth Internet access and faster, more complex intranets is driving silicon vendors to produce a wide variety of new chips that implement packet-processing functions in networking equipment. Attacking the challenges of providing increased bandwidth and speedy network traffic processing from a variety of different core competencies, the vendors who are creating these new products (collectively known as communication processors) each seem to
have a unique approach to the market.
The need for a new breed of products to address the demands of cutting-edge applications is centered on two main developments in the network arena. The first of these is the tremendously increased demand for the fast identification and routing of packets (such as table look-up and security) that were previously handled by software.
The second trend that is accelerating the use of communication processors is the growing complexity of network infrastructure.
As communication equipment is increasingly called upon to handle multiple protocols and various levels of service, while at the same time accommodating new kinds of traffic such as voice over Internet protocol (VoIP), the need for specialized processors that can handle these advanced tasks increases as well.
One of the first issues that arises in any discussion of communication processors, however, is the problem of how wide a net to cast when defining the category. Communication processors are
broadly defined as chips designed to speed up data traveling into and out of routers, switches, concentrators, and other networking equipment. Its tempting to define these devices as those that follow the microprocessor-based approach typified by so-called network processors, but a broader definition more clearly reflects the ways in which designers are implementing these functions in real-world communication systems.
For this update, I spoke with Jeremey Donovan, an analyst at the market
research firm Dataquest, and I surveyed manufacturers of communication processors in a number of general product categories, each representing a different way of implementing communication functions.
In this buyers guide, our working definition of what constitutes a communication processor focuses on two crucial functions: a devices ability to classify traffic, and its ability to enforce policy. Based on this definition, we have included manufacturers whose products are microprocessors that
have been enhanced for communication applications. These devices have a digital signal processor (DSP) as their core technology but are optimized for specific networking tasks, and have content-addressable memories (CAMs), which can accelerate packet-routing functions by speeding table look-ups.
Like a tiny silicon traffic cop, a communication processor performs traffic classification by simply identifying the data that passes through a given router or switch. The job can end there or, as the policy
enforcement kicks in, the processor can perform an operation on the data packet, perhaps rerouting it, or taking some action based on the priority and class of service assigned to that packet.
Obviously, the range of potential operations that a particular communication processor is required to perform makes programmability a key attribute. Programmability is an advantage that is giving communication processors an edge over traditional means of implementing traffic classification and policy
enforcement (such as using an ASIC).
Communication equipment designers generally combine ASICs that they develop in-house with RISC microprocessors to speed up the packet-processing functions of their systems and to execute decisions about how the packets security will be maintained, what priority the packet will have in the traffic stream, and by which route the packet will be sent.
Microprocessors
Often, the type of device that first comes to mind when someone mentions
communication processors is a product that is, essentially, an embedded microprocessor that has been combined with an ASIC (which provides classification and policy enforcement functions).
While the ASICs implement the communication functions related to data routing, traffic classification, and policy enforcement, the RISC-based host performs functions related to the hardware in which the chips reside. In a router, for example, one of the functions of the host microprocessor is to route the data according
to the information in the routers address look-up table.
Depending on their performance and structure, however, some microprocessor-based communication processors are designed to replace a host microprocessor entirely. The Motorola MPC860 PowerQUICC family, for example, consists of a number of devices, that include a PowerPC core and a communication processing module (CPM) and can function as the main processor in a typical piece of networking equipment. According to Mike Shoemake, program
manager for Motorolas MPC8xx product line, the CPM performs Layer 1 and 2 networking tasks and supports multiple communication protocols (including ATM, HDLC, Fast Ethernet, and multichannel HDLC) via a user-accessible register set. The work of Layer 3 through Layer 7 (usually implemented by software) is handled by the PowerPC core.
At its low end, the microprocessor approach targets applications like cable modems and ADSL modems. Higher-performance implementations are aimed at networking
devices (such as multiprotocol routers, LAN switch controllers, and access concentrators) and telecommunication equipment (including CO switches, PBXs, remote access routers, and high-end line cards).
The easy programmability of an integrated device like the MPC860 adds a decided advantage over custom-designed ASICs in a multi-protocol environment, where networks are passing data from an Ethernet-based LAN to a fractional T1 link, or from ATM to Ethernet. By comparison, if the same protocols are
implemented in an ASIC, they cannot be changed as the networking environment evolves, forcing the design and production of an entirely new ASIC.
CAMs
Another way to implement the primary communication functions of routing packets quickly, and perform packet classification or policy enforcement in a router or other communication equipment, is to use a CAM. CAMs are available from manufacturers like Netlogic Microsystems, Motorola, Music Semiconductor, Kawasaki LSI, and Lara Technology.
According to T.J. Mueller, director of marketing at NetLogic Microsystems, the key advantage that CAMs offer over traditional communication processor solutions is their fast, comprehensive approach to look-up functions, packet classification, and policy enforcement. A CAM (a sort of inverse RAM) provides powerful table search capability with ample memory, while software hashing or RISC/ASIC solutions require the addition of memory (frequently of the expensive, fast SRAM variety).
Ternary CAMs are
attracting a great deal of interest from networking equipment manufacturers, according to Mueller, because they allow differentiated services such as QoS.
The particular type of CAM that fuels a given application largely depends on the need for differentiated services. While a 64-bit binary CAM can handle most applications whose main requirement is the implementation of multiple protocols, a ternary CAM is necessary for the advanced classification and policy enforcement needed to supply differentiated
services.
CAMs are a popular solution for look-up functions because of their speed. For packets passed over ATM at OC-192 speed, a router needs to process 23.5 million ATM cells per second, which could require that many table look-ups per second. A ternary CAM such as Netlogics 8k x 128 device is capable of performing 66 million searches per second, or more than twice as many as necessary. Put another way, the CAM is more than twice as fast as it needs to be to handle ATM.
Alternatively, Gigabit Ethernet requires a router to process 1.95 million packets per second. Because a ternary CAM can perform 66 million look-ups per second, an equipment manufacturer can aggregate 10 Ethernet ports in a single product and still be operating at only about a third of the CAMs speed.
Packet classification and policy enforcement information are stored in a CAMs look-up table, which tends to be a large collection of addresses, destinations, and other data. A typical look-up table
might have 30,000 to 50,000 entries that determine the priority that a specific data packet will be given, the security level it will be assigned, and its destination port.
When a packet passes through, a CAMs traffic classification function identifies the packet, and then searches through the look-up table to find a matching set of instructions. For example, a packet may be identified as containing VoIP data. The CAM then searches the look-up table to find instructions on handling that type of
traffic, and arriving at the proper match, may find that the systems designer has designated voice traffic as having a greater priority than e-mail traffic. As a result, the voice packet is assigned top priority, and is routed accordingly, with any e-mail packets temporarily pushed aside.
CAMs perform these look-ups quickly because they are deterministic in nature, searching all entries in the look-up table in the same amount of time during each search. Software hashing algorithms search
through the look-up table until they come upon a match, so the length of each search depends on where a particular entry is located in the table. Thus, the worst-case scenario in a hashing solution might take longer than the same search in a CAM, while a best-case search might be shorter.
As the need for high-speed networking solutions becomes more important for increased Internet traffic, electronic commerce, and other high-end communication services, communication equipment manufacturers are becoming
concerned with worst-case access times as a means for gauging the minimum performance of their end products. This concern is giving CAMs an edge over hashing solutions because the deterministic look-up function of a CAM ensures a consistent access time, as opposed to the average access time of the hashing approach.
Convergence
Despite the diverse range of approaches vendors take to communication processors, the end result is still aimed at providing a few basic functions at a higher
speed and in a more complex environment than ever before.
The rapid growth of virtually all segments of the communication market over the past few years has led to a confusing array of new products that, in one way or another, perform the basic tasks of classifying data packets and enforcing policy functions.
As new applications emerge and the growing pool of users increases, the various approaches to communication processors will no doubt mature, and the best aspects of each will be adapted by
equipment makers to the appropriate applications. While they will still be difficult to define as a group, the use of individual devices for specific applications will become a much clearer, easier decision.
Patrick Walsh is a freelance writer based in Peekskill, NY. He received his BA in litera
ture and communications from Pace University and his MAin humanities from
Manhattanville College. He can be reached at
PatJWalsh@aol.com
.
Return to the
Table of Contents