CPC H04L 41/0893 (2013.01) [H04L 41/0803 (2013.01); H04L 49/109 (2013.01)] | 20 Claims |
1. A method for configuring a plurality of programmable network interface devices in a virtualized computing system comprising a plurality of virtual machines hosted on a plurality of servers, the programmable network interface devices configured to provide network interfaces for the virtual machines to enable virtual network communications in accordance with policies associated with virtual networks implemented in the virtualized computing system, the method comprising:
generating, by a centralized controller executing on a computing device separate from and communicatively coupled to the plurality of servers, instructions for reprogramming packet processing information in the programmable network interface devices while the programmable network interface devices are in service, wherein the packet processing information is for a data flow having a source in the virtual network or a destination in the virtual network, the data flow associated with an application type for an application deployed in the virtual network, wherein the reprogramming comprises changes to initial configurations of the programmable network interface devices while the programmable network interface devices are in operation;
sending, by the controller, the instructions to a plurality of agents executing on the plurality of servers, wherein the plurality of servers are different from the computing device where the controller is executing and are associated with the programmable network interface devices and the agents are configured to communicate with the controller to configure the programmable network interface devices while the programmable network interface devices are in service; and
based on the instructions, reprogramming, by the agents, the packet processing information in the programmable network interface devices only for the programmable network interface devices that are currently processing the data flow associated with the application type for the application deployed in the virtual network.
|