Patent ID: 7653681
Filing Date: 2010-01-26
Classification: H04L

Abstract:
1. A method for generically communicating between a plurality of heterogeneous network processors in a network and at least one host processor, the method comprising: including at least one standardized interface in each of the plurality of heterogeneous network processors, each of the plurality of heterogeneous network processors further including a plurality of packet processing shells, wherein each one of the plurality of packet processing shells includes a generic protocol software block and a library, and wherein each generic protocol software block is network processor independent, and further wherein each one of the plurality of packet processing shells included in each one of the plurality of heterogeneous network processors performs a different function; including, in each one of the plurality of heterogeneous network processors, a packet dispatcher and a plurality of port proxies, wherein each one of the plurality of port proxies is associated with a corresponding one of a plurality of ports included in each one of the plurality of network processors; utilizing a standardized transport layer, the standardized transport layer compatible with the at least one standardized interface; providing a generic message application layer, the generic message application layer defining at least one generic payload and at least one generic message type for configuration communications between the plurality of heterogeneous network processors and the at least one host processor; providing a network processor independent system configuration application within the at least one host processor for configuring the plurality of heterogeneous network processors; receiving, at a particular port included in a particular one of the plurality of heterogeneous network processors, a packet; in response to receiving the packet, determining by a particular packet dispatcher included in the particular one of the plurality of heterogeneous network processors, the particular port; providing, by the particular packet dispatcher, the packet to a particular one of a plurality of port proxies included in the particular one of the plurality of heterogeneous network processors that corresponds with the particular port; determining, by the particular one of the plurality of port proxies, a classification of the packet; and using, by the particular one of the plurality of port proxies, the classification to determine to which one of the plurality of packet processing shells included in the particular one of the plurality of heterogeneous network processors to provide the packet.