Abstract:
PROBLEM TO BE SOLVED: To provide a method, an apparatus, and a computer program for adding a QOS level to a packet.SOLUTION: Syntax analysis of a multi layer network communication including a nest header by a continuous network layer is performed, and a value related to a priority or a quality of service requirement (a priority indicator value) for data of each individual layer distributed over a header group is extracted. Aggregated data (a composition aggregation priority value) is applied to a table where different possible composition aggregation priority values corresponding to a lower resolution quality level value are mapped. The priority indicator value or the composition aggregation priority value can be filtered, or masked, or compressed. In one embodiment, bit subsets different from each other for storing the priority indicator values are selected based on a logical port associated with a packet and the final priority indicator value applied to a discriminated sub-table having a mapping of quality level values suitable for the logical port.
Abstract:
PROBLEM TO BE SOLVED: To provide compacted binary identifier generation.SOLUTION: Compaction of large (16-byte) IPv6 addresses into regular (4-byte) address fields is performed while preserving the properties required for a hash key, based on cumulative XOR based prehashing of 4 bytes at a time.
Abstract:
THE ABILITY OF NETWORK PROCESSORS (50A, 50B, 50N) TO MOVE DATA TO AND FROM DYNAMIC RANDOM ACCESS MEMORY (DRAM) CHIPS (56, 58) USED COMPUTER SYSTEMS IS ENHANCED IN SEVERAL RESPECTS. IN ONE ASPECT OF THE INVENTION, TWO DOUBLE DATA RATE DRAMS ARE USED IN PARALLEL TO DOUBLE THE BANDWIDTH FOR INCREASED THROUGHPUT OF DATA. THE MOVEMENT OF DATA IS FURTHER IMPROVED BY SETTING 4 BANKS OF FULL 'READ' AND 4 BANKS OF FULL 'WRITE' BY THE NETWORK PROCESSOR FOR EVERY REPETITION OF THE DRAM TIME CLOCK. A SCHEME FOR RANDOMIZED 'READ' AND 'WRITE' ACCESS BY THE NETWORK PROCESSOR IS DISCLOSED. THIS SCHEME IS PARTICULARLY APPLICABLE TO NETWORKS SUCH AS ETHERNET THAT UTILIZE VARIABLE FRAME SIZES. (THE MOST ILLUSTRATIVE DRAWING IS FIGURE 2)
Abstract:
"método e sistema para classificação de quadro e protocolo". um sistema e método para classificação de protocolo de quadro e processamento em um sistema para processamento de dados (por exemplo, comutação ou roteamento de pacotes de dados ou quadros). a presente invenção inclui analisar uma porção do quadro de acordo com testes predeterminados, então armazenar características chave do pacote para uso em processamento subseqüente do quadro. as características chave para o quadro (ou unidade de informação de entrada) incluem o tipo de protocolo da camada 3 utilizado no quadro, a técnica de encapsulamento da camada 2, o endereço da instrução inicial, flags indicando se o quadro utiliza uma rede de área local virtual e a identidade do fluxo de dados ao qual o quadro pertence. muito da análise de preferência é feita utilizando hardware de modo que ela pode ser completada rapidamente e em um período de tempo uniforme. as características armazenadas do quadro são então utilizadas pelo complexo de processamento da rede em seu processamento do quadro. o processador é pré-condicionado com um endereço de instrução inicial e a localização do começo do cabeçalho da camada 3 bem como flags para o tipo de quadro. ou seja, o endereço da instrução ou ponto de entrada de código é utilizado pelo processador para começar o processamento para um quadro no local certo, baseado no tipo de quadro. endereços de instrução adicionais podem ser empilhados e utilizados seqüencialmente em ramificações para evitar testes e instruções de ramificação adicionais. adicionalmente, os quadros compreendendo um fluxo de dados podem ser processados e enviados na mesma ordem na qual eles são recebidos.
Abstract:
A host network controller for a network processor adapted to implement a Finite State Machine (FSM) for an operation adhering to a standardized communication protocol, wherein the finite state machine has fewer possible states than those defined for the operation in accordance with the standardized communication protocol. At least one register may be used to store the restricted set of state data. The network controller may also comprise a packet parser 207 adapted to parse a data packet and provide data to the at least one register based on the parsing result; and at least one action machine 208 adapted to implement one or more functions adhering to the standardized communication protocol based on the restricted set of state data stored in the at least one register. The at least one action machine may comprise a first action machine adapted to implement an operation state machine, a second action machine adapted to implement an instance identification parameter and a third action machine adapted to implement at least one channel filter each adhering to the standardized communication protocol. The states not included in the restricted set may include a transient state, a state that is not supported by the host network controller and a state wherein the host network controller is powered down. The standardized communication protocol may be the Network Controller-Sideband Interface (NC-SI) specification.
Abstract:
"método e sistema para classificação de quadro e protocolo". um sistema e método para classificação de protocolo de quadro e processamento em um sistema para processamento de dados (por exemplo, comutação ou roteamento de pacotes de dados ou quadros). a presente invenção inclui analisar uma porção do quadro de acordo com testes predeterminados, então armazenar características chave do pacote para uso em processamento subseqüente do quadro. as características chave para o quadro (ou unidade de informação de entrada) incluem o tipo de protocolo da camada 3 utilizado no quadro, a técnica de encapsulamento da camada 2, o endereço da instrução inicial, flags indicando se o quadro utiliza uma rede de área local virtual e a identidade do fluxo de dados ao qual o quadro pertence. muito da análise de preferência é feita utilizando hardware de modo que ela pode ser completada rapidamente e em um período de tempo uniforme. as características armazenadas do quadro são então utilizadas pelo complexo de processamento da rede em seu processamento do quadro. o processador é pré-condicionado com um endereço de instrução inicial e a localização do começo do cabeçalho da camada 3 bem como flags para o tipo de quadro. ou seja, o endereço da instrução ou ponto de entrada de código é utilizado pelo processador para começar o processamento para um quadro no local certo, baseado no tipo de quadro. endereços de instrução adicionais podem ser empilhados e utilizados seqüencialmente em ramificações para evitar testes e instruções de ramificação adicionais. adicionalmente, os quadros compreendendo um fluxo de dados podem ser processados e enviados na mesma ordem na qual eles são recebidos.
Abstract:
A packet parser has a set of marker elements each comprising a one bit latch and connected to store flag values from the results of the application of parser rules. Some marker elements are connected to provide the stored marker values as input to the parser rule logic to be taken into account in the processing of subsequent parser rules and some are connected to control external hardware. Some markers are reset at the end of each packet. A special toggle marker element toggles its value when its address is selected and other marker elements are connected to store, when its own address is selected, the value of the toggle element. Other markers toggle their own value when selected.
Abstract:
A NC-SI Port Controller (NPC) 23 of a Network Interface Controller (NIC) provides a sideband connection between the network 2 and a Baseboard Management Controller (BMC) 17. Pass-through traffic to and from the BMC are injected and extracted by the XBB 16 and RBB 6 units of the Host Ethernet Adapter 3 part of the NIC. Asynchronous event notification (AEN) pseudopackets giving status information about the NIC are compiled 28 and injected into the data route of the NPC that carries packets from the BMC. Both of those kinds of packet pass by a packet parser 30 with the AEN pseudo-packets being dropped but their content being assembled by the NPC into an AEN packet which is then injected into the data route of the NPC that carries packets bound for the BMC. The packet parser also identifies NC-SI requests from the BMC and provides response packets in the same way. The NPC may also comprise an arbiter 21, 22, to arbitrate traffic to or from the BMC.
Abstract:
An action machine (i.e. a hardware accelerator) 300 for processing packet data in a network processor (101, fig. 1) comprises first 310 and second 320 data storage units adapted to store packet data and a processing unit 330 adapted to process data from the first and second data storage units. The first and second data storage units may comprise an array of registers. The first storage unit is adapted to be accessed by the processing unit and a unit external to the action machine, i.e. a packet parser (207, fig. 2) such that the parser may load packet data to first storage unit 310 as if it was a set of Target Input Registers (TIRs). The second storage unit 320 is a private or restricted access storage unit adapted to be only accessed by the processing unit 330. The action machine is suitable for general purpose processing of packet data fields of packets adhering to the Network Controller Sideband Interface (NC-SI) protocol and may be used as a slave picoprocessor, relieving the parser (207) of data processing.