METHOD AND APPARATUS FOR PROCESSING PROTOCOL MESSAGES FOR MULTIPLE PROTOCOL INSTANCES
First Claim
1. A method for controlling processing of messages for a plurality of protocol instances, comprising:
- receiving a plurality of messages for a plurality of processors, wherein each message is associated with one of the protocol instances;
generating, for each message, a processing request identifying the one of the protocol instances with which the message is associated;
queuing the processing requests using a respective plurality of queues associated with the protocol instances, wherein each processing request is queued in the queue associated with the one of the protocol instances with which the processing request is associated; and
servicing the queues in a manner for arbitrating access by the queues to the processors for processing the messages, wherein each of the queues having at least one processing request queued therein is serviced by reading a processing request from the queue and causing the one of the processors with which the retrieved processing request is associated to process one of the messages associated with the protocol instance identified by the processing request.
5 Assignments
0 Petitions
Accused Products
Abstract
The invention includes a method and apparatus for processing protocol messages for multiple protocol instances. In one embodiment, a method for processing protocol messages includes receiving a plurality of messages for a plurality of processors where each received message is associated with one of the protocol instances, generating a processing request for each message, queuing the processing requests, and servicing the queues in a manner for arbitrating access by the queues to the processors for processing the messages. A processing request generated for a received message identifies one of the protocol instances with which the message is associated. The processing requests are queued using a plurality of queues associated with the respective plurality of protocol instances, where each processing request is queued in one of the queues associated with the one of the protocol instances with which the processing request is associated. The servicing of each queue includes reading a processing request from the queue, if the queue has at least one processing request queued therein, and causing the one of the processors with which the processing request is associated to process one of the messages associated with the protocol instance identified by the processing request. The queues may be serviced in a round-robin manner for arbitrating access by the queues to the processors, thereby enabling atomic processing of the messages.
-
Citations
21 Claims
-
1. A method for controlling processing of messages for a plurality of protocol instances, comprising:
-
receiving a plurality of messages for a plurality of processors, wherein each message is associated with one of the protocol instances; generating, for each message, a processing request identifying the one of the protocol instances with which the message is associated; queuing the processing requests using a respective plurality of queues associated with the protocol instances, wherein each processing request is queued in the queue associated with the one of the protocol instances with which the processing request is associated; and servicing the queues in a manner for arbitrating access by the queues to the processors for processing the messages, wherein each of the queues having at least one processing request queued therein is serviced by reading a processing request from the queue and causing the one of the processors with which the retrieved processing request is associated to process one of the messages associated with the protocol instance identified by the processing request. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. An apparatus for controlling processing of messages for a plurality of protocol instances, comprising:
-
a plurality of processors, each processor adapted for processing messages associated with the protocol instances, each processor adapted for generating a processing request for each message received by the processor where each processing request identifies one of the protocol instances with which the message is associated; and an arbiter module in communication with said processors, the arbiter module comprising a respective plurality of queues associated with the protocol instances, the arbiter module adapted for; queuing the processing requests in respective ones of the queues based on the protocol instances with which the respective processing requests are associated; and servicing the queues in a manner for arbitrating access by the queues to the processors for processing the messages, wherein each queue having at least one processing request queued therein is serviced by reading a processing request from the queue and causing the one of the processors with which the retrieved processing request is associated to process one of the messages associated with the protocol instance identified by the processing request. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18, 19, 20)
-
-
21. A computer readable storage medium storing a software program which, when executed by a computer, causes the computer to perform a method for controlling processing of messages for a plurality of protocol instances, the method comprising:
-
receiving a plurality of messages for a plurality of processors, wherein each message is associated with one of the protocol instances; generating, for each message, a processing request identifying the one of the protocol instances with which the message is associated; queuing the processing requests using a respective plurality of queues associated with the protocol instances, wherein each processing request is queued in the queue associated with the one of the protocol instances with which the processing request is associated; and servicing the queues in a manner for arbitrating access by the queues to the processors for processing the messages, wherein each of the queues having at least one processing request queued therein is serviced by reading a processing request from the queue and causing the one of the processors with which the retrieved processing request is associated to process one of the messages associated with the protocol instance identified by the processing request.
-
Specification