Patent ID: 9137158
Filing Date: 2015-09-15
Classification: H04L

Abstract:
1. A communication apparatus connected with a network, the communication apparatus comprising: an input interface for receiving packets sent from the network; a plurality of parallel processing modules for executing processing for the packets; a parallel processing assignment module for assigning the processing for the packets to the parallel processing modules on a packet-by-packet basis; and a computation table including values indicating results of execution of the processing for the packets and flow IDs assigned to the packets, wherein the plurality of parallel processing modules access the computation table after executing processing for the packets, wherein each of the parallel processing modules holds a result of execution of processing for a packet performed by the parallel processing module for a successive processing, wherein the parallel processing assignment module holds a used flow management list including the flow IDs assigned to the packets for which the parallel processing modules execute processing and values indicating statuses of the processing for the packets in the parallel processing modules, wherein, upon receipt of a first packet, the parallel processing assignment module determines whether processing for a second packet assigned the flow ID associated with the first packet is being executed based on the used flow management list and a flow ID assigned to the first packet, wherein, in a case where a result of the determination indicates that the processing for the second packet is being executed, the parallel processing assignment module determines that the parallel processing module executing the processing for the second packet is a parallel processing module to execute the processing for the first packet and further determines a parameter to be included in a notice of assignment to be sent to the determined parallel processing module in accordance with the result of the determination, wherein the parallel processing assignment module includes information about the first packet in the notice of assignment to send the notice of assignment to the determined parallel processing module, wherein the determined parallel processing module acquires, upon receipt of the notice of assignment, a result of execution of the processing for the second packet from the result of execution of the processing held in the parallel processing module in accordance with the received notice of assignment, wherein the determined parallel processing module executes the processing for the first packet using the acquired result of execution of the processing for the second packet and the information included in the notice of assignment, and wherein the determined parallel processing module updates the computation table with a result of execution of the processing for the first packet.