摘要:
A method for developing portable network processor applications and/or managing heterogeneous network processors in a network is disclosed. The network includes host processor(s) utilizing system configuration application(s) that are network processor independent. In one aspect, the method and system include using standardized interface(s) for each network processor, using a standardized transport layer compatible with the interface(s), and providing a generic message application layer. The generic message application layer defines generic payload(s) and message type(s) for configuration communications between the network and host processors. In another aspect, the method and system include providing packet processing shell(s) and generic protocol software that is coupled with the packet processing shell(s) through standard interface(s), network processor independent, and performs operations for packet processing. The method also include providing a library that includes network processor specific information for performing the operations and providing block(s) for performing other network processor specific operations.
摘要:
A method for controlling congestion control and avoidance behavior of a plurality of heterogeneous network processors in a network is disclosed. The network also includes at least one host processor that utilizes at least one congestion control application. The method include providing a plurality of generic application program interfaces (APIs). The generic APIs communicate with the congestion control application(s) and the heterogeneous network processors. The generic APIs communicate with the congestion control application(s) in the host processor(s) in a network processor independent manner, but manage the congestion control and avoidance behavior of the heterogeneous network processors in a network processor specific manner. Thus, the generic APIs allow the control application(s) to be network processor independent and to manage the congestion control and avoidance behavior of the heterogeneous network processors in the network processor specific manner.
摘要:
An efficient method for performing state based ingress packet selection for a packet processing system in a network processor is disclosed. With this method, each set of message classes is associated with a state of an application, and each set of message classes is assigned to a semaphore. The application blocks one of the semaphores based on its current state. When a message is received, and the message belongs to a class assigned to the blocked semaphore, the blocked semaphore is signaled. The blocked semaphore then wakes the application. In this manner, when the application is awakened, it is guaranteed to find a message that it is interested in processing in its current state, resulting in greater efficiency in the processing of ingress messages.
摘要:
A method and system for controlling congestion control and avoidance behavior of a plurality of heterogeneous network processors in a network is disclosed. The network also includes at least one host processor that utilizes at least one congestion control application. The method and system include providing a plurality of generic application program interfaces (APIs). The generic APIs communicate with the congestion control application(s) and the heterogeneous network processors. The generic APIs communicate with the congestion control application(s) in the host processor(s) in a network processor independent manner, but manage the congestion control and avoidance behavior of the heterogeneous network processors in a network processor specific manner. Thus, the generic APIs allow the control application(s) to be network processor independent and to manage the congestion control and avoidance behavior of the heterogeneous network processors in the network processor specific manner.
摘要:
A method and system for downloading software managed trees (SMTs) in a network processing system provides dynamic update of frame classifiers while maintaining proper network protocol processing. The network processing system includes a general purpose processor acting as control point processor and a plurality of network processors. The new SMT is built by an application on the control point processor and downloaded to one or more of the network processors. The new SMT is placed in a separate memory location accessible to the network processors, rather then overwriting the existing SMT. The active tree pointers are then changed to transfer control to the new SMT.
摘要:
A method for managing tables that are used by network processors to control network traffic through a network. The method comprises including a first table management software application in a first network processor, in which the first table management software is dedicated to managing only tables associated with the first network processor; including a second table management software application in a second network processor, in which the second table management software application is dedicated to managing only tables associated with the second network processor; and including a table management control application in a host processor, in which the table management control application is configured to respectively manage the tables associated with the first network processor and the tables associated with the second network processor through the first table management software application and the second table management software application through a plurality of generic application programming interfaces (APIs).
摘要:
A method and system for developing portable network processor applications and/or managing heterogeneous network processors in a network is disclosed. The network includes host processor(s) utilizing system configuration application(s) that are network processor independent. In one aspect, the method and system include using standardized interface(s) for each network processor, using a standardized transport layer compatible with the interface(s), and providing a generic message application layer. The generic message application layer defines generic payload(s) and message type(s) for configuration communications between the network and host processors. In another aspect, the method and system include providing packet processing shell(s) and generic protocol software that is coupled with the packet processing shell(s) through standard interface(s), network processor independent, and performs operations for packet processing. The method and system also include providing a library that includes network processor specific information for performing the operations and providing block(s) for performing other network processor specific operations.
摘要:
An apparatus for developing portable packet processing applications on network processors includes a docking platform which provides a common interface for individual packet processing applications to be plugged into the network processing environment. Each application interacts with the docking platform through the common interfaces provided by the latter. The docking platform interacts with the other modules inside the system to accomplish the requests from the application. In this manner, the applications become “shielded” from the implementation details of the underlying hardware. The applications need not change when the network processor hardware features are changed. It therefore provides a universal packet processing programming environment in which applications can execute in a portable and flexible manner in various hardware architectures.
摘要:
A method and system for memory management in a network processing system provides for allocation of physical memory areas within network processors coupled to a control point processor by a bus. The allocation scheme provides a memory management layer without requiring a complete operating system interface and supports asynchronous completion of the allocation requests. Multicast allocation is supported allowing an allocation to be simultaneously requested on multiple network processors. The allocation mechanism returns a token, which may then be used to access the memory location via a protocol over the bus, and a single token may refer to an allocation made on several network processors where the actual physical addresses and memory configurations are different.
摘要:
A method and apparatus for developing portable packet processing applications on network processors includes a docking platform which provides a common interface for individual packet processing applications to be plugged into the network processing environment. Each application interacts with the docking platform through the common interfaces provided by the latter. The docking platform interacts with the other modules inside the system to accomplish the requests from the application. In this manner, the applications become “shielded” from the implementation details of the underlying hardware. The applications need not change when the network processor hardware features are changed. It therefore provides a universal packet processing programming environment in which applications can execute in a portable and flexible manner in various hardware architectures.