1. A method of managing network processing on a processing unit including multiple cores, the method comprising; determining whether a processing core handling interrupts associated with network IO is overloaded; upon determining the processing core is overloaded, determining a bottleneck for the processing core; and steering an interrupt associated with network IO to at least a second processing core of the processing unit based at least in part on a determined bottleneck.