This document discusses network topology offloading using intelligent network interface cards (NICs). It proposes using a programmable network processor like the Netronome NFP3200 to implement complex network topologies in software and offload the data and control planes for network functions like switching, firewalls, and load balancing. Example topologies are presented to demonstrate how virtual machines could be connected using common network elements like switches implemented entirely in the network processor.