1. A method of offloading a network protocol processing task for a message, comprising: receiving, at a virtual switch from a virtual source node, the message destined for a virtual receiver node; deferring the network protocol processing task when the virtual receiver node is safe for network protocol offloading and a path between the virtual switch and the virtual receiver node does not include a physical network interface that is safe for network protocol offloading; executing, within the virtual switch, the network protocol processing task when the virtual receiver node is unsafe for network protocol offloading; and executing the network protocol processing task using the physical network interface when the virtual receiver node is safe for network protocol offloading and the path between the virtual switch and the virtual receiver node includes the physical network interface.