IP Library Granted Patent US 7,733,795
Granted Patent B2
US 7,733,795 · App. 11/605,114 · Granted Jun 8, 2010

Virtual network testing and deployment using network stack instances and containers

Assignee: Oracle America, Inc.
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,733,795
App. No.
11/605,114
Granted
Jun 8, 2010
Kind
B2
Abstract

A method for testing a network topology. The method includes obtaining the network topology, where the network topology includes a number of nodes connected by at least one link. The method further includes instantiating a number of containers corresponding to the nodes, instantiating a number of virtual network stacks, and instantiating at least one virtual switch corresponding to the at least one link. The containers are subsequently connected to the virtual network stacks using the at least one virtual switch. At least one of the virtual network stacks is then configured to send and receive packets. Finally, the network topology is tested 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.

Claims (45)

1. 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.

2. The method of claim 1 , further comprising:

connecting one of the plurality of virtual network stacks to a physical NIC, wherein the physical NIC is connected to a subnetwork.

3. The method of claim 2 , wherein the subnetwork comprises an external network.

4. The method of claim 2 , wherein the subnetwork comprises an internal network.

5. The method of claim 1 , wherein each of the plurality of virtual network stacks comprises a transport protocol.

6. The method of claim 1 , wherein at least one of the plurality of virtual network stacks comprises a security policy.

7. The method of claim 1 , wherein the network topology is implemented on a single host.

8. A system, comprising:

a host, comprising:

a plurality of containers, wherein each of the plurality of containers shares a common kernel and executes within a common operating system;

a plurality of virtual network stacks, wherein each of the plurality of virtual network stacks corresponds to one of the plurality of containers;

a plurality of virtual network interface cards (NICs), wherein each of the plurality of virtual network interface cards corresponds to one of the plurality of virtual network stacks, and wherein each of the plurality of virtual NICs shares the common kernel and executes within the common operating system; and

at least one virtual switch connecting at least one of the plurality of virtual NICs,

wherein each of the plurality of containers corresponds to one of a plurality of nodes in the virtual network, and

wherein the at least one virtual switch corresponds to at least one link in the virtual network.

9. The system of claim 8 , further comprising:

a physical NIC connected to a subnetwork,

wherein the physical NIC is connected to one of the plurality of virtual network stacks.

10. The system of claim 9 , wherein the subnetwork comprises an external network.

11. The system of claim 9 , wherein the subnetwork comprises an internal network.

12. The system of claim 9 , wherein each of the plurality of virtual network stacks comprises a transport protocol.

13. The system of claim 9 , wherein at least one of the plurality of virtual network stacks comprises a security policy.

14. A computer usable medium having computer readable program code embodied therein for causing a computer system to execute a method for testing a network topology, the method 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.

15. The computer usable medium of claim 14 , the method further comprising:

connecting one of the plurality of virtual network stacks to a physical NIC, wherein the physical NIC is connected to a subnetwork.

16. The computer usable medium of claim 15 , wherein the subnetwork comprises an external network.

17. The computer usable medium of claim 15 , wherein the subnetwork comprises an internal network.

18. The computer usable medium of claim 14 , wherein each of the plurality of virtual network stacks comprises a transport protocol.

19. The computer usable medium of claim 14 , wherein at least one of the plurality of virtual network stacks comprises a security policy.

20. The computer usable medium of claim 14 , wherein the network topology is implemented on a single host.

Assignments (2)
MERGER AND CHANGE OF NAME Recorded Dec 16, 2015
From: ORACLE USA, INC.; SUN MICROSYSTEMS, INC.; ORACLE AMERICA, INC.
To: ORACLE AMERICA, INC.
Reel/Frame 037306/0292 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 28, 2006
From: JOHNSON, DARRIN P.; NORDMARK, ERIK; BELGAIED, KAIS
To: SUN MICROSYSTEMS, INC.
Reel/Frame 018646/0906 →
Continuity (1)
Related Publication 20080123536A1 · May 29, 2008