Patent ID: 7733795

Claim:
A method for testing a network topology, comprising: obtaining the network topology, wherein the network topology comprises a plurality of nodes connected by at least one link; instantiating a plurality of containers, wherein each of the plurality of containers corresponds to one of the plurality of nodes, and wherein each of the plurality of containers shares a common kernel and executes within a common operating system; instantiating a plurality of virtual network stacks, wherein each of the plurality of virtual network stacks is associated with one of the plurality of containers, wherein each of the plurality of virtual network stacks is associated with a virtual network interface card (NIC), and wherein each of the plurality of virtual NICs shares the common kernel and executes within the common operating system; instantiating at least one virtual switch corresponding to the at least one link; connecting at least one of the plurality of virtual NICs associated with at least one of the plurality of virtual network stacks using the at least one virtual switch; configuring at least one of the plurality of virtual network stacks to send and receive packets; and testing the network topology by sending a packet through at least one of the plurality of virtual network stacks and the at least one virtual switch, wherein a result of the testing is used to validate the network topology.