Patent ID: 8300526

Claim:
A network relay apparatus comprising a receive queue, a packet distribution processor for taking out packets from the receive queue, a plurality of processing waiting queues, a plurality of packet processors corresponding to the processing waiting queues, and a transmit queue, the network relay apparatus further comprising: a statistical information collector for regularly collecting load states of the plurality of packet processors; and a distribution information holder for holding the load states collected by the statistical information collector and a distribution information table in which hash values, packet processors and counters are associated with one another; wherein after the packet distribution processor has transmitted a packet to one of the processing waiting queues, the packet distribution processor increments a counter associated with a hash value corresponding to the packet transmitted by the packet distribution processor, in the distribution information table, wherein after each of the packet processors has transmitted a packet stored in one of the processing waiting queues to the transmit queue, the packet processor decrements a counter associated with a hash value corresponding to the packet transmitted by the packet processor, in the distribution information table, and wherein, when a packet is acquired from the receive queue, the packet distribution processor refers to a counter associated with a hash value corresponding to the acquired packet in the distribution information table, and when the value of the referred counter is 0, the packet distribution processor specifies a packet processor having a light load and switches a packet processor currently associated with the hash value corresponding to the acquired packet, in the distribution information table to the specified packet processor.