1. A method of providing a shared network interface, comprising: generating, by a computer processor, a distribution data structure that maps a plurality of network traffic flows to a set of compute units that share a shared network interface, wherein each packet of each of the network traffic flows has an original header containing information that associates the packet with a particular network traffic flow, and wherein the distribution data structure is modified in response to a compute unit being added to or removed from the set of compute units; generating, by the processor, history information that includes predecessor mappings of network traffic flows to compute units that preceded the current distribution data structure such that, for each network traffic flow whose assigned compute unit has changed over time, the history information provides a sequential chain of compute units from a currently assigned compute unit specified by the current distribution data structure to an original compute unit responsible for managing the network traffic flow; encapsulating, by the processor, an incoming packet received at the shared network interface with a first header that indicates the currently assigned compute unit to which the incoming packet is to be initially distributed, the currently assigned compute unit being selected based on the distribution data structure's mapping of the particular network traffic flow indicated by the incoming packet's original header to the currently assigned compute unit; and subsequently encapsulating the incoming packet with a second header that enables the incoming packet to be punted through the chain of compute units from the currently assigned compute unit to the original compute unit responsible for managing the particular network traffic flow with which the incoming packet is associated based on the history information.