IP Library Granted Patent US 10,924,346
Granted Patent B1
US 10,924,346 · App. 16/591,647 · Granted Feb 16, 2021

System and method for migrating network policies of software-defined network components

Inventors: Sujeet Banerjee (Bangalore, IN); Umar Shaikh (Bangalore, IN); Amarjeet Singh (Bangalore, IN); Sureshbabu Koyadan Chathoth (Bangalore, IN); Sachin Thakkar (Palo Alto, CA)
Assignee: VMware, Inc.
H04L41/0846H04L41/0803H04L41/0893
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 10,924,346
App. No.
16/591,647
Granted
Feb 16, 2021
Kind
B1
Abstract

A system and method for migrating configurations of a software-defined network (SDN) component from a source computing environment to a destination computing environment uses a configuration export file that includes a metadata section and a templates section. The metadata section includes correlation keys for dependencies found in fetched configurations of the SDN component that correspond to dependency keywords in a configurable dictionary. The templates section includes reframed configurations of the dependencies with at least one reference to the correlation keys in the metadata section. At least some correlation-key references within reframed configurations in the templates section of the configuration export file are substituted with correlation-key replacements for the destination computing environment, which are then applied to a target SDN component in the destination computing environment.

Claims (37)

1. A computer-implemented method for migrating configurations of a software-defined network (SDN) component from a source computing environment to a destination computing environment, the method comprising:

fetching configurations of the SDN component at the source computing environment;

finding dependencies of the SDN component in the configurations of the SDN component that correspond to dependency keywords in a configurable dictionary, the configurable dictionary including the dependency keywords and paths to find dependencies corresponding to the dependency keywords;

for each dependency found in the configurations of the SDN component, calculating a correlation key for the dependency, adding the correlation key for the dependency to a metadata section of a configuration export file, and adding a reframed configuration of the dependency with at least one reference to the correlation key in the metadata section to a templates section of the configuration export file;

substituting at least some correlation-key references within reframed configurations in the templates section of the configuration export file with correlation-key replacements for the destination computing environment; and

applying the reframed configurations with the correlation-key replacements to a target SDN component in the destination computing environment.

2. The method of claim 1 , wherein the configuration export file includes a user-provided correlation-key replacement for a particular correlation key in the templates section of the configuration export file.

3. The method of claim 2 , wherein the user-provided correlation-key replacement is located in the metadata section of the configuration export file.

4. The method of claim 1 , wherein the paths in the metadata section are XPaths.

5. The method of claim 1 , wherein the configuration export file is a Java Script Object Notification (JSON) file.

6. The method of claim 5 , wherein the metadata section occupies at most ten percent of the total space of the JSON file.

7. The method of claim 1 , further comprising generating a user prompt when one of the correlation keys in the configuration export file does not correspond to any subject in the destination computing environment, wherein the user prompt allows a user to ignore, fix or supply a replacement for that correlation key.

8. A non-transitory computer-readable storage medium containing program instructions for method for migrating configurations of a software-defined network (SDN) component from a source computing environment to a destination computing environment, wherein execution of the program instructions by one or more processors of a computer system causes the one or more processors to perform steps comprising:

fetching configurations of the SDN component at the source computing environment;

finding dependencies of the SDN component in the configurations of the SDN component that correspond to dependency keywords in a configurable dictionary, the configurable dictionary including the dependency keywords and paths to find dependencies corresponding to the dependency keywords;

for each dependency found in the configurations of the SDN component, calculating a correlation key for the dependency, adding the correlation key for the dependency to a metadata section of a configuration export file, and adding a reframed configuration of the dependency with at least one reference to the correlation key in the metadata section to a templates section of the configuration export file;

substituting at least some correlation-key references within reframed configurations in the templates section of the configuration export file with correlation-key replacements for the destination computing environment; and

applying the reframed configurations with the correlation-key replacements to a target SDN component in the destination computing environment.

9. The computer-readable storage medium of claim 8 , wherein the configuration export file includes a user-provided correlation-key replacement for a particular correlation key in the templates section of the configuration export file.

10. The computer-readable storage medium of claim 9 , wherein the user-provided correlation-key replacement is located in the metadata section of the configuration export file.

11. The computer-readable storage medium of claim 8 , wherein the paths in the metadata section are XPaths.

12. The computer-readable storage medium of claim 8 , wherein the configuration export file is a Java Script Object Notification (JSON) file.

13. The computer-readable storage medium of claim 12 , wherein the metadata section occupies at most ten percent of the total space of the JSON file.

14. The computer-readable storage medium of claim 8 , wherein the steps further comprise generating a user prompt when one of the correlation keys in the configuration export file does not correspond to any subject in the destination computing environment, wherein the user prompt allows a user to ignore, fix or supply a replacement for that correlation key.

15. A system comprising:

memory; and

at least one processor configured to:

fetch configurations of the SDN component at a source computing environment;

find dependencies of the SDN component in the configurations of the SDN component that correspond to dependency keywords in a configurable dictionary, the configurable dictionary including the dependency keywords and paths to find dependencies corresponding to the dependency keywords;

for each dependency found in the configurations of the SDN component, calculate a correlation key for the dependency, add the correlation key for the dependency to a metadata section of a configuration export file, and add a reframed configuration of the dependency with at least one reference to the correlation key in the metadata section to a templates section of the configuration export file;

substitute at least some correlation-key references within reframed configurations in the templates section of the configuration export file with correlation-key replacements for a destination computing environment; and

apply the reframed configurations with the correlation-key replacements to a target SDN component in the destination computing environment.

16. The system of claim 15 , wherein the configuration export file includes a user-provided correlation-key replacement for a particular correlation key in the templates section of the configuration export file.

17. The system of claim 16 , wherein the user-provided correlation-key replacement is located in the metadata section of the configuration export file.

18. The system of claim 15 , wherein the paths in the metadata section are XPaths.

19. The system of claim 15 , wherein the configuration export file is a Java Script Object Notification (JSON) file.

20. The system of claim 19 , wherein the at least one processor is configured to generate a user prompt when one of the correlation keys in the configuration export file does not correspond to any subject in the destination computing environment, wherein the user prompt allows a user to ignore, fix or supply a replacement for that correlation key.

Assignments (2)
CHANGE OF NAME Recorded Apr 15, 2024
From: VMWARE, INC.
To: VMWARE LLC
Reel/Frame 067103/0030 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 3, 2019
From: BANERJEE, SUJEET; SHAIKH, UMAR; SINGH, AMARJEET; CHATHOTH, SURESHBABU KOYADAN; THAKKAR, SACHIN
To: VMWARE, INC.
Reel/Frame 050610/0566 →
Priority Claims (1)
IN 201941029990 · Jul 24, 2019 · national
Cited By (1)
US 12,675,287