NETWORK PROCESSORS OF THE PAST, PRESENT AND FUTURE

Page 20

NETWORK PROCESSORS OF THE PAST, PRESENT AND FUTURE

FUNCTIONAL COMPONENTS To examine how the applications outlined in the previous section map to network processors, we can make some generalizations about what type of processing is done on a PDU between the time it is received and when it is retransmitted. The applications decompose into their computational kernels, which broadly fall into six different categories: data parsing, classification, lookup, computation, data manipulation, traffic management and control processing. Based on the application requirements, they can be mapped onto the various functional components.

Data Parsing Data parsing includes parsing cell or packet headers that contain addresses, protocol information, etc. In the past, parsing functions were fixed based on the type of device being constructed. For example, LAN bridges by definition only needed to look at the Layer 2 Ethernet header. Today, switching devices need the flexibility to examine and gain access to a wide variety of information at all layers of the ISO model, both in real‐ time and on a conditional packet‐by‐packet basis.

Classification Classification refers to identifying a packet or cell against a set of criteria defined at Layers 2, 3, 4 or higher of the ISO model. Once data is parsed, it must be classified in order to determine the required action. This examination consists of looking at the PDU content to see which patterns of interest it contains. This process is referred to as “classification,” and it is used in routing, fire walling, QoS implementation and policy enforcement. Following a data classification action such as a filtering/forwarding decision, advanced QoS and accounting functions that are based on a specific end‐to‐ end traffic flow may be taken. This is an area of rapidly changing requirements.

Because of high packet volume and the need to classify and process packets at wire speed, hardware acceleration has become the industry standard method. In one implementation, hardware acceleration is provided for Layer 2/3 classification, while flexible software provides for processing at higher layers. For example, a network processor may enforce a policy that prioritizes an enterprise's internal communications over external web traffic. The first step in this process is to distinguish between the two traffic types. The first trade‐off between hardware and software involves packet classification. Although software can be used to compare and analyze a number of different fields, these functions are more suited to hardware acceleration since Layer 2 Ethernet and Layer 3 IP classification are well defined.

Lookup The lookup kernel is the actual action of looking up data based on a key. It is mostly used in conjunction with pattern matching (classification) to find a specific entry in a table. The data structures and algorithms used are dependent on the type of lookup

Copyright © 2010 GlobalLogic, Inc.

[20]


Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.