US2015172106A1PendingUtilityA1

Virtualization of groups of devices

Assignee: MICROSOFT TECHNOLOGY LICENSING LLCPriority: Mar 17, 2008Filed: Feb 9, 2015Published: Jun 18, 2015
Est. expiryMar 17, 2028(~1.6 yrs left)· nominal 20-yr term from priority
Inventors:Sergey Royt
G06F 3/0635H04L 41/0893H04L 41/122H04L 41/0895H04L 41/08G06F 3/067G06F 2206/1012G06F 3/0613H04L 67/1097H04L 43/00H04L 67/51
43
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

A virtialization mechanism may create a virtual representation of a group of physical computers and the physical connections between the computers. The mechanism may comprise a discovery tool for determining a topology of connected physical computers and selecting the elements to virtualize, a device virtualization tool that may create virtual versions of the physical computers, and a connection virtualization tool that may create virtual connections between the virtual computers. The virtual devices and virtual connections may then be operated virtually. In many cases, optimized versions of the virtual devices and virtual connections may be performed.

Claims

exact text as granted — not AI-modified
What is claimed is: 
     
         1 . A method comprising:
 optimizing an arrangement of one or more devices and one or more physical connection paths between the one or more devices for virtualization;   creating one or more virtual devices to represent the one or more devices based on collected device data about the one or more devices;   creating one or more virtual connections to represent the one or more physical connection paths based on collected connection data about the one or more physical connection paths;   forming a group of virtual devices from the created one or more virtual devices and the created one or more virtual connections; and   optimizing the group of virtual devices in accordance with one or more optimization templates for operation in a virtual environment.   
     
     
         2 . The method of  claim 1 , further comprising prior to optimizing the arrangement for virtualization:
 collecting the collected device data about the one or more devices; and   collecting the collected connection data about the one or more physical connection paths.   
     
     
         3 . The method of  claim 2 , wherein collecting the collected device data and collecting the collected connection data comprising crawling a portion of a network. 
     
     
         4 . The method of  claim 2 , further comprising determining a device function for each of the one more devices from the collected device data. 
     
     
         5 . The method of  claim 2 , wherein collecting the collected connection data comprises collecting one or more of: performance parameters, protocol parameters, and protocol parameters, for each of the physical connection paths. 
     
     
         6 . The method of  claim 1 , wherein the one or more devices comprise a plurality of devices, and wherein creating one or more virtual devices comprises consolidating at least two of the plurality of devices into a single virtual device. 
     
     
         7 . The method of  claim 6 , wherein at least two of the plurality of devices are configured in a load balancing arrangement. 
     
     
         8 . The method of  claim 1 , wherein the one or more physical connection paths comprise a plurality of physical connection paths, and wherein creating one or more virtual connections comprises consolidating at least two of the plurality of physical connection paths into a single virtual connection. 
     
     
         9 . The method of  claim 1 , further comprising instrumenting one of said one or more devices with instrumentation to identify other of the one or more devices and to identify the one or more physical connection paths. 
     
     
         10 . A computer program product for implementing a method for virtualizing a group of devices, the computer program product comprising one or more computer storage devices having stored thereon computer-executable instructions that, when executed, at processor cause the computer system to perform the method, including the following:
 optimize an arrangement of one or more devices and one or more physical connection paths between the one or more devices for virtualization;   create one or more virtual devices to represent the one or more devices based on collected device data about the one or more devices;   create one or more virtual connections to represent the one or more physical connection paths based on collected connection data about the one or more physical connection paths;   form a group of virtual devices from the created one or more virtual devices and the created one or more virtual connections; and   optimize the group of virtual devices in accordance with one or more optimization templates for operation in a virtual environment.   
     
     
         11 . The computer program product of  claim 10 , further comprising computer-executable instructions that, when executed, cause the computer system to determine a device function for each of the one more devices from the collected device data; and
 wherein computer-executable instructions that, when executed, cause the computer system to create one or more virtual devices based on the determined device function for each of the one or more devices.   
     
     
         12 . The computer program product of  claim 10 , wherein the one or more devices comprise a plurality of devices, and wherein computer-executable instructions that, when executed, cause the computer system to create one or more virtual devices comprise computer-executable instructions that, when executed, cause the computer system to consolidate at least two of the plurality of devices into a single virtual device. 
     
     
         13 . The computer program product of  claim 12 , wherein at least two of the plurality of devices are configured in a load balancing arrangement. 
     
     
         14 . The computer program product of  claim 10 , wherein the one or more physical connection paths comprise a plurality of physical connection paths, and wherein computer-executable instructions that, when executed, cause the computer system to create one or more virtual connections comprise computer-executable instructions that, when executed, cause the computer system to consolidating at least two of the plurality of physical connection paths into a single virtual connection. 
     
     
         15 . The computer program product of  claim 10 , further comprising computer-executable instructions that, when executed, cause the computer system to instrument one of said one or more devices with instrumentation to identify other of the one or more devices and to identify the one or more physical connection paths. 
     
     
         16 . A computer system, the computer system comprising:
 one or more processors;   system memory; and   one or more computer storage devices having stored thereon computer-executable instructions representing a device optimizer, the device optimizer configured to:
 optimizing an arrangement of one or more devices and one or more physical connection paths between the one or more devices for virtualization; 
 creating one or more virtual devices to represent the one or more devices based on collected device data about the one or more devices; 
 creating one or more virtual connections to represent the one or more physical connection paths based on collected connection data about the one or more physical connection paths; 
 forming a group of virtual devices from the created one or more virtual devices and the created one or more virtual connections; and 
 optimizing the group of virtual devices in accordance with one or more optimization templates for operation in a virtual environment. 
   
     
     
         17 . The system of  claim 16 , wherein the device optimizer being configured to optimize an arrangement of one or more devices and one or more physical connection paths comprises the device optimizer being configured to optimize an arrangement of one or more of: a storage server, a web server, a network hub, a gateway server, a load balancing server, a network router, and a network switch for virtualization. 
     
     
         18 . The system of  claim 16 , wherein the one or more devices comprise a plurality of devices, and wherein the device optimizer being configured to create one or more virtual devices comprises the device optimizer being configured to consolidate at least two of the plurality of devices into a single virtual device. 
     
     
         19 . The system of  claim 16 , wherein the one or more physical connection paths comprise a plurality of physical connection paths, and wherein the device optimizer being configured to create one or more virtual connections comprises the device optimizer being configured to consolidate at least two of the plurality of physical connection paths into a single virtual connection. 
     
     
         20 . The system of  claim 16 , further comprising the device optimizer being configured to apply at least one of a protocol or a filter to a virtual connection from among the one or more virtual connections.

Join the waitlist — get patent alerts

Track US2015172106A1 — get alerts on status changes and closely related new filings.

We store only your email — no account needed. See our privacy policy.