1. An apparatus configured to support a data plane portion of a processing function supported by a forwarding element and a control element in a communication network, the apparatus comprising: a first storage element configured to maintain a packet buffer data structure configured to store packet data for a set of data packets, wherein the packet buffer data structure comprises a packet queue configured to store packet data and a packet aggregation buffer configured to store packet data on a per-flow basis; a second storage element configured to store flow data for a set of data flows for which the forwarding element supports packet forwarding; and a processor element, communicatively connected to the first storage element and the second storage element, configured to: receive, from a hardware element of the forwarding element, a first packet header of a first packet and a second packet header of a second packet; determine first packet data associated with the first packet; store the first packet data in the packet queue of the packet buffer data structure, as individual packet data for the first packet, based on a determination that the packet queue is below a threshold; determine second packet data associated with the second packet; and store the second packet data in the packet aggregation buffer of the packet buffer data structure based on a determination that the packet queue exceeds the threshold.