Patent ID: 9621471
Date: 2017-04-11
CPC Classifications: H04L

Claim:
1. A method of reducing congestion in a network stack of a host machine having a virtual switch with a plurality of downlink ports each connected to a virtual network interface (VNIC) and at least one uplink port connected to a physical network interface (PNIC), the network stack comprising a series of components that send data packets through the network stack to a network, the method comprising: receiving, by a lower-level component of the network stack, data packets at an initial rate, the lower-level component of the network stack having a packet queue that temporarily stores data packets to be sent to the network; determining, by the lower-level component, that the packet queue has filled up to a threshold level; in response to the determining that the packet queue has filled up to the threshold level, sending a congestion notification message from the lower-level component of the network stack to a message bus managed by the host machine, the congestion notification message indicating that the queue has reached the threshold level, the message bus being subscribed to by higher-level components of the network stack for receiving the congestion notification message, the lower-level component being closer to the network than the higher-level components; as a result of the congestion message indicating that the queue has reached the threshold level, causing a reduction in the initial rate of sending data packets to the lower-level component of the network stack; and receiving, by the lower-level component, data packets at the reduced initial rate.