Electronics Information Home arrow Electronics Information arrow Network processor
Network processor
Friday, 10 November 2006

Network processors are designed for efficient implementation of switching and routing functions. Network switches and routers, or network switch elements, form the backbone of digital networks, such as the Internet. Network switch elements connect network segments by receiving network data from ingress network segments and transferring the network data to egress network segments. A typical computer network is collection of interconnected computers. LANs and WANs are interconnected by telecommunications infrastructure devices such as hubs, bridges, and routers. A network hub is a device providing physical link layer (Layer 1) interconnection among network nodes, while bridges utilize the data link layer (Layer 2), and routers operate within the network layer (Layer 3). The physical and data link connectivity provided by hubs and bridges are confined within a particular data transport "network" type (Ethernet, for example). The network layer connectivity provided by routers requires higher-level functionality for providing internetwork communication and also for selecting optimal routes for data packets or cells individually. Because hubs and bridges operate on data units formatted in a single protocol, routers can identity and process data which may be in one of several possible protocols. Network processors provide wirespeed frame processing and forwarding capability with function flexibility through a set of embedded, programmable protocol processors and complementary system coprocessors. A network device, such as a switch or router, may include a network processor that facilitates transmission of data, such as cells or frames, into and out of the network device. Such a network processor may store information in memory, in one or more control structures, corresponding to data transmitted to the network processor.

A network processor generally controls the flow of packets between a physical transmission medium. The Internet is a global network of computers wherein data is transmitted from a source to a destination as a series of individually addressed packets. Data, such as text, images, sounds and videos, are typically communicated over the network from a source computer to a destination computer in pieces referred to as "packets." Network processors read the addresses of the packets, translate the addresses based on protocol and route the packets to their correct destination. In most networks, packets usually are not sent directly from the source to the destination, but rather are routed by intermediate nodes known as "routers." Internet networking hardware involves processing of packets of information for many purposes and at many stages in a network. Routers, firewalls, gateways, load balancers and servers all process packets of information in some way. To improve the speed of packet forwarding, many routers employ network processors, which are specialized hardware devices designed to perform certain networking operations quickly. A network processor operates separately from the router's general-purpose processor and usually isolates the operating system on the general-purpose processor from the forwarding operations. Typically packets or cells are transmitted and received over networks that connect the computer systems. To determine the appropriate destination of each packet, processors such as microprocessors, central processing units (CPU), and the like access header data stored in each packet to identify the appropriate destination. As the packets are transmitted and received the header data no longer needed is often removed. Alternatively, additional header data may be inserted into the packets to direct the packets to other appropriate destinations. In performing packet processing operations such as routing or switching, the network processor typically examines at least a portion of the beginning or head of each packet. The amount of each packet that must be examined is dependent upon its associated network communication protocols, enabled options, and other similar factors. For Internet applications, a network processor determines the IP address of a destination server to which the packet is to be ultimately delivered by decoding a URL address. Network processors handle millions of packets per second, and thus must be capable of processing the URL strings very efficiently.

Network processors are the fundamental network building block for networks in the manner that microprocessors are for today's personal computers. Network processors provide a highly customizable, scalable technology for the development of interconnect solutions for Internet or enterprise network providers. A network processor provides the basis for a wide range of solutions from a low-end, stand-alone device to a large multirack solution. Network processors offer real-time processing of multiple data streams, providing enhanced security and IP packet handling and forwarding capabilities. They provide speed improvements through advanced architectures, such as parallel distributed processing and pipeline processing designs. These capabilities can enable efficient search engines, increased data handling throughput, and provide rapid execution of complex tasks. The programmable features of network processors provide network product developers an easier migration path to implement new protocols and technologies without requiring new custom application specific integrated circuit (ASIC) designs. As a programmable communications integrated circuit, the network processor provides very efficient packet classification, multi-table lookups per frame, packet modification, queue/policy management, and other packet processing capabilities. Programmable network processors provide system flexibility while delivering the high-performance hardware functions required to process packets at wire speed. The network processor integrates a switching engine, search engine, frame processors and Ethernet MACs on one device to support the needs of customers who require high capacity, media weight switching frames based on frame content at any protocol layer. Programmable network processors process network data according to program instructions, or software, stored in a memory. With programmable network processors, manufacturers and users can change the software to respond to new services quickly, without costly system upgrades, as well as implement new designs quickly.

Network processors are designed to optimize network-specific tasks and provide exceptional bandwidth, throughput and distributed processing capabilities, while reducing latency. Network processor receives frames, modifies them, and provides media interface for transmitting the frames out to switch fabric or to control processor. Network processors receive and forward packets during network communication. The packets are routed via the network processor on layers 2, 3, and 4 of network protocols. The critical performance measurement for network processors is the number of machine cycles required to process a typical packet or data frame. Pipeline network processors are designed to forward Internet Protocol (IP) packets at an extremely high data rate. Pipeline network processors typically have a limited number of instruction cycles and memory to perform the applicable task. Network processors are specialized processor chips designed to process networking applications in real time. These processor chips are initialized and configured by the general purpose processors or control processor. A network processor typically includes a scheduler circuit which determines an order in which frames are transmitted by the network processor. A network processor typically utilizes a dynamic random access memory (DRAM) to store the linked list data structure. DRAMs are a preferred storage technology for use in conjunction with such network processors, in that DRAMs can provide a large storage capacity at a limited power consumption.

 
Related Information about Network processor