A selective, flow-based datapath architecture is described. A Flow Control
Block Manager (FCBM) is located in a flow-based datapath for selectively
and intelligently processing packets in the Flow Path. If, according to
the FCBM, efficiency gains can be achieved by creating a flow control
block and employing flow-based processing on a packet stream, the packets
are processed accordingly. If, however, insufficient gains are
anticipated the packets are processed in a flow-unaware manner. The FCBM
determines the manner in which to process packets based on a set of
criteria.