×

Multi-dimensional computation distribution in a packet processing device having multiple processing architecture

  • US 7,610,330 B1
  • Filed: 03/30/2006
  • Issued: 10/27/2009
  • Est. Priority Date: 03/30/2006
  • Status: Expired due to Fees
First Claim
Patent Images

1. An apparatus, comprisingone or more network interfaces;

  • a memory;

    a plurality of processing units, each processing unit comprising;

    one or more processors;

    one or more processing queues;

    a framework array, stored in the memory, comprising a plurality of hook points, each hook point corresponding to a framework functional module;

    a framework processor module, stored in the memory, comprising instructions operative to cause the one or more processors and the processing unit toread a packet from the one or more processing queues;

    starting with the framework functional module corresponding to the hook point identifier associated with the packet, successively invoke the framework functional modules in the framework array to operate on the packet until an invoked framework functional module abducts the packet;

    a message router operative totransmit processing of packets to selected processing units;

    place packets received from message routers of the plurality of processing units in a processing queue of the one or more processing queues; and

    a plurality of framework functional modules, wherein, for at least one of the processing units, at least one framework functional module of the plurality of framework functional modules, comprises a flow distributor module, wherein the flow distributor module is operative towhen invoked by the framework processor module, abduct packets from the framework processor module;

    select processing units to process packets based on data flows the packets belong, wherein two packets belong to the same data flow when the two packets have at least the same source network address, destination network address, and port number, and packets belonging to the same data flow are processed by the same processing unit,identify, for packets associated with existing data flows, previously selected processing units, andpass packets to the message router for routing to selected processing units.

View all claims
  • 12 Assignments
Timeline View
Assignment View
    ×
    ×