Multi-entity management
In embodiments of multi-entity management, a multi-entity system can include an infrastructure service (DHCP) that services client devices configured for network connectivity on a network. The multi-entity system also includes server devices configured for network configuration settings control and management of the client devices on the network. A multi-entity manager instantiates a configuration dialog for display with user-selectable controls that are selectable to initiate a single-step configuration operation of one or more of the network configuration settings at the server devices.
Latest Microsoft Patents:
- SYSTEMS AND METHODS FOR IMMERSION-COOLED DATACENTERS
- HARDWARE-AWARE GENERATION OF MACHINE LEARNING MODELS
- HANDOFF OF EXECUTING APPLICATION BETWEEN LOCAL AND CLOUD-BASED COMPUTING DEVICES
- Automatic Text Legibility Improvement within Graphic Designs
- BLOCK VECTOR PREDICTION IN VIDEO AND IMAGE CODING/DECODING
Large corporate entities, such as enterprises and cloud-computing providers, typically include a significant number of server devices and managed client devices on a computer network. The infrastructure required to service these devices on the network has various complex settings that need to be configured, and the infrastructure services provision the devices on the network with IP addresses and other network configuration settings. A typical enterprise generally includes a large number of these infrastructure services distributed throughout the network, and for configuration or troubleshooting scenarios, a network and/or system administrator needs to update various entities that have single or multiple infrastructure services. The entity management of a typical multi-entity management system is a multi-step process for actions such as to configure, overwrite, append, delete, and find-and-replace. All of the many processes for management operation by a network and/or system administrator is all the more complex for the large number of entities of infrastructure services that are servicing the thousands of client devices in the network with the network configuration settings, such as for example, DHCP (dynamic host configuration protocol) scope options and scope properties, as well as DHCP server options and server properties. Maintaining, troubleshooting, and repairing a large network is manually intensive and time consuming for an administrator.
A network and/or system administrator can utilize a typical multi-management framework to facilitate managing a large network that may include servicing of thousands of client devices with network configuration settings. However, a conventional multi-management framework only provides for single-entity operations, such as to overwrite or set a configuration setting of a configuration object (e.g., DHCP scope option) of an entity (e.g., DHCP scope), or to append an array of settings with a value for a single entity. The conventional multi-management framework does not provide for multi-entity configuration setting changes. For example, updating a network configuration setting on multiple client devices throughout a large network involves updating the configuration objects of the infrastructure services that are servicing the many client devices. Updates, such as to find a value from a collection of values for an object across the multiple entities and replace the value with a new value, is not supported. Rather, the typical multi-management framework technique to update, append, or find-and-replace a value for an object across multiple entities is to delete the object and then create a new object with the updated, appended, or replaced value.
SUMMARYThis Summary introduces simplified concepts of multi-entity management, and the concepts are further described below in the Detailed Description and/or shown in the Figures. This Summary should not be considered to describe essential features of the claimed subject matter, nor used to determine or limit the scope of the claimed subject matter.
Multi-entity management is described. In embodiments, a multi-entity system can include an infrastructure service (e.g., DHCP) that services client devices configured for network connectivity on a network. A multi-entity manager instantiates a configuration dialog for display with user-selectable controls that are selectable to initiate a single-step configuration operation of one or more of the network configuration settings for the DHCP entities, such as scope properties, scope options, classes, server properties, and server options.
In embodiments, the single-step configuration operation can be one of: an overwrite operation to change a value of a network configuration setting; an append operation to append a value to an array of values of a network configuration setting; a find-and-replace operation to find a value and replace the value of a network configuration setting; or a delete operation to delete a value of a network configuration setting. The configuration dialog is implemented for selection of multiple network entities having multiple configured objects, and for selection of the single-step configuration operation to edit selected ones of the multiple configured objects.
Embodiments of multi-entity management are described with reference to the following Figures. The same numbers may be used throughout to reference like features and components that are shown in the Figures:
Embodiments of multi-entity management are described. A network and/or system administrator (also referred to as an IT administrator) can select multiple entities with multiple configured objects that have a single setting or a collection of settings to perform an overwrite, append, delete, or find-and-replace operation in a single-step configuration operation. The single-step configuration operations can each be executed on a list of managed entities in a large network, such as on a resultant filtered set of network configuration settings at multiple client devices that are connected in the network. The single-step configuration operations can be conditional within a configuration dialog that is displayable in a user interface, from which the network administrator can initiate a single-step configuration operation.
The configuration dialog is flexible and the network and/or system administrator can easily change and configure network configuration settings for quick and efficient administrative response. Embodiments of multi-entity management provide a mechanism by which the administrator can manage the multi-entity system and implement the single-step configuration operations, such as an overwrite, append, delete, or find-and-replace operation performed in a single-step configuration. Embodiments of multi-entity management also improve the management operation for a large number of complex managed entities in a network with multiple configuration settings like DHCP scope options and scope properties, and DHCP server options and server properties.
While features and concepts of multi-entity management can be implemented in any number of different devices, systems, network, environments, and/or configurations, embodiments of multi-entity management are described in the context of the following example devices, systems, and methods.
In this example, the multi-entity system 100 includes multiple DHCP (dynamic host configuration protocol) servers 104, DNS (domain name system) servers 106, multiple client devices 108, and a management server 110. The multi-entity system also includes the network extended at 112, such as a datacenter or an extension of an enterprise, that includes other DNS servers 114, DHCP servers 116, application servers 118, and another management server 120. The multi-entity system may also include any other type of networked computing devices, server devices, and services implemented by devices. The client devices 108 can include any wired and/or wireless devices, and may be implemented as user devices, portable devices, computer devices, and/or networked devices. Any of the servers and/or client devices can be implemented with various components, such as one or more processors and memory devices, as well as any number and combination of differing components as further described with reference to the example device shown in
The server device 122 is an example implementation of any one of the DHCP servers 104 and 116. A server device in the multi-entity system may have four or more levels of dimensions, and the network of the multi-entity system can include a large number of servers and its entities. A system may include multiple DHCP servers, where each server includes multiple DHCP scopes, each server scope includes multiple scope options, and each server scope option includes an array of values. DHCP options can be configured for specific values and enabled for assignment and distribution to DHCP clients based on either server, scope, class or client-specific levels.
In the example multi-entity system 100, the example server device 122 includes DHCP server scopes 124, which each include multiple scope options 126, and each server scope option may include multiple option values 128. The server scope options 126 and option values 128 are pushed out to the network client devices 108 as network configuration settings and information, such as a default gateway identifier, software configuration information, a proxy server address, a time server address, an IP address, a MAC address, a list of DNS servers, etc. For example, a computer client device has configuration information such as an IP address, a MAC address, a list of DNS servers the device is configured with, other network configuration settings, and other properties that are serviced by a DHCP scope from a DHCP server.
In implementations, the management servers 110, 120 are IP address management (IPAM) servers implemented as multi-entity managers. For example, the management server 110 communicates with the DHCP servers 104 and the DNS servers 106, as well as with domain controllers (DC) and network policy servers (NPS) (not shown), to manage network configuration settings on the DHCP and DNS servers. Similarly, the management server 120 communicates with the DNS servers 114 and the DHCP servers 116 to manage network configuration settings on the DHCP and DNS servers. Network configuration settings of the client devices 108 are stored on the DHCP servers 104 and the DNS servers 106. Configurations of the servers, as well as the network configurations of the client devices, can be updated on the DHCP and DNS servers, and the servers then propagate the changes to the client devices as defined by respective DHCP and DNS roles.
In this example, the management server 110 includes a multi-entity manager 130 that instantiates a configuration dialog 132 for display with user-selectable controls that are selectable to initiate a single-step configuration operation of one or more of the server configurations and network configuration settings for the client devices 108 that are updated on the DHCP servers 104 and the DNS servers 106. In implementations, the multi-entity manager 130 and the configuration dialog 132 can be implemented as computer-executable instructions, such as software applications, and executed by one or more processors to implement the various embodiments described herein. Further, although the multi-entity manager 130 is shown as a component of the management server 110 in the example system, the multi-entity manager may be implemented as a separate entity, or as a component of any one of the servers and/or devices.
A network and/or system administrator may use a computing device 134 to display a configuration dialog user interface 136 that is run from the management server 110. From the configuration dialog user interface, the administrator can initiate a single-step configuration operation, such as an overwrite operation to change an option value of a network configuration setting; an append operation to append a value to an option value of a network configuration setting; a find-and-replace operation to replace an option value of a network configuration setting; or a delete operation to delete an option value of a network configuration setting. For example, a DNS server in the multi-entity system may fail, in which case all of the entities are updated with new configuration information to update the address for a new DNS server replacement. For example, in the dialog user interface, the network administrator can select a set of DHCP scopes or DHCP servers, set the fields, and apply the configuration to seamlessly update all of the entities in the multi-entity system.
In embodiments, a network and/or system administrator can select multiple entities with multiple configured objects that that have single settings or a collection of settings and perform an overwrite, append, delete, or find-and-replace operation in a single step. For an overwrite operation, an object is selected in the dialog user interface to be overwritten and in the empty set of fields, the values to be overwritten are provided. The same can be repeated for multiple objects in the same dialog and apply the configuration. For an append operation, an object is selected in the dialog user interface to append a particular value and in the empty set of fields, the values to be appended are provided. The same can be repeated for multiple objects in the same dialog and apply the configuration. For a find-and-replace operation, the value to find and the value to replace is provided in the empty set of fields in the dialog user interface. The same can be repeated for multiple objects in the same dialog and apply the configuration. For a delete operation, an object is selected to be deleted in the dialog user interface. The same can be repeated for multiple objects in the same dialog and apply the configuration. All of the described operations can be executed on the list of managed entities, such as on a filtered resultant set or otherwise.
The administrator can also select configuration options at 306 to configure the selected DHCP scopes. For example, a find-and-replace configuration operation can be applied to multiple scopes on multiple servers for multiple options having multiple values, of which only one option value is being selectively replaced. Two of the configured options are shown at 308, such for a DNS server option value 10.10.10.1 being replaced by option value 10.10.10.2 for the 006 DNS server in a multi-entity system. Similarly, a router option value 10.2.3.4 is being replaced by option value 10.2.3.40 for the 003 router in the multi-entity system.
Example method 400 is described with reference to
At block 402, one or more objects (e.g., DHCP scope and/or DHCP servers) are selected to edit. For example, the objects are selected from within the multi-entity manager 130 at the management server 110 (
At block 406, a configuration dialog is displayed with user-selectable controls that are selectable to initiate a single-step configuration operation of one or more network configuration settings at server devices in a network. For example, the multi-entity manager 130 at the management server 110 initiates a configuration dialog 132 that is displayed as a configuration dialog user interface 136. Examples of the configuration dialog user interface are shown in
At block 408, a selection of a configuration operation is received to one of overwrite, append, delete, or find-and-replace a network configuration setting value. For example, the multi-entity manager 130 at the management server 110 receives a selection of a configuration operation in the configuration dialog user interface 136 to one of overwrite, append, delete, or find-and-replace a network configuration setting value.
At block 410, a selection of server scopes to configure is received and, at block 412, an input of values to configure the network configuration settings is received. For example, the multi-entity manager 130 at the management server 110 receives a selection of server scopes to configure, as well as a selection of scope values to configure in the configuration dialog user interface 136. At block 414, the selected configuration operation is applied to configure the selected network configuration settings and/or server scope values at the server devices. For example, the multi-entity manager 130 at the management server 110 applies the selected configuration operation to configure the selected server scope values at the server devices in the network 102.
The device includes one or more data inputs 506 via which any type of data, media content, and/or inputs can be received, such as user-selectable inputs and any other type of audio, video, and/or image data received from any content and/or data source. The device 500 also includes communication interfaces 508, such as any one or more of a serial, parallel, network, or wireless interface. The communication interfaces provide a connection and/or communication links between the device and a communication network by which other electronic, computing, and communication devices communicate data with the device.
The device 500 includes one or more processors 510 (e.g., any of microprocessors, controllers, and the like) which process various computer-executable instructions to control the operation of the device. Alternatively or in addition, the device can be implemented with any one or combination of software, hardware, firmware, or fixed logic circuitry that is implemented in connection with processing and control circuits which are generally identified at 512. Although not shown, the device can include a system bus or data transfer system that couples the various components within the device. A system bus can include any one or combination of different bus structures, such as a memory bus or memory controller, a peripheral bus, a universal serial bus, and/or a processor or local bus that utilizes any of a variety of bus architectures.
The device 500 also includes one or more memory devices 514 (e.g., computer-readable storage media) that enable data storage, such as random access memory (RAM), non-volatile memory (e.g., read-only memory (ROM), flash memory, etc.), and a disk storage device. A disk storage device may be implemented as any type of magnetic or optical storage device, such as a hard disk drive, a recordable and/or rewriteable disc, and the like. The device may also include a mass storage media device.
Computer readable media can be any available medium or media that is accessed by a computing device. By way of example, and not limitation, computer readable media may comprise storage media and communication media. Storage media include volatile and non-volatile, removable and non-removable media implemented in any method or technology for storage of information, such as computer-readable instructions, data structures, program modules, or other data. Storage media include, but are not limited to, RAM, ROM, EEPROM, flash memory or other memory technology, CD-ROM, digital versatile disks (DVD) or other optical storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other medium which can be used to store information and which can be accessed by a computer.
Communication media typically embody computer-readable instructions, data structures, program modules, or other data in a modulated data signal, such as carrier wave or other transport mechanism. Communication media also include any information delivery media. A modulated data signal has one or more of its characteristics set or changed in such a manner as to encode information in the signal. By way of example, and not limitation, communication media include wired media such as a wired network or direct-wired connection, and wireless media such as acoustic, RF, infrared, and other wireless media.
A memory device 514 provides data storage mechanisms to store the device data 504, other types of information and/or data, and various device applications 516. For example, an operating system 518 can be maintained as a software application with the memory device and executed on the processors. The device applications may also include a device manager, such as any form of a control application, software application, signal processing and control module, code that is native to a particular device, a hardware abstraction layer for a particular device, and so on. In this example, the device applications 516 include a multi-entity manager 520 and a configuration dialog 522 that implements embodiments of multi-entity management as described herein.
The device 500 also includes an audio and/or video processing system 524 that generates audio data for an audio system 526 and/or generates display data for a display system 528. The audio system and/or the display system may include any devices that process, display, and/or otherwise render audio, video, display, and/or image data. Display data and audio signals can be communicated to an audio device and/or to a display device via an RF (radio frequency) link, S-video link, composite video link, component video link, DVI (digital video interface), analog audio connection, or other similar communication link. In implementations, the audio system and/or the display system are external components to the device. Alternatively, the audio system and/or the display system are integrated components of the example device, such as an integrated touch-screen display.
Although embodiments of multi-entity management have been described in language specific to features and/or methods, the appended claims are not necessarily limited to the specific features or methods described. Rather, the specific features and methods are disclosed as example implementations of multi-entity management.
Claims
1. A multi-entity system, comprising:
- a plurality of server devices configured for control and management of network configuration settings for a plurality of client devices on a network; and
- a multi-entity manager configured to instantiate a configuration dialog for display with user-selectable controls for: selecting a single-step configuration operation, wherein the single-step configuration operation comprises at least one of: an overwrite operation to change a value of a DHCP server scope at the plurality of the server devices, an append operation to append a value to an array of values of a DHCP server scope at the plurality of the server devices, and a find-and-replace operation to find a value and replace the value of a DHCP server scope at the plurality of the server devices; and editing one or more of the DHCP server scopes, wherein the selected single-step configuration operation is executed at each of the plurality of the server devices to configure the one or more DHCP server scopes at the plurality of the server devices.
2. A multi-entity system as recited in claim 1, wherein the single-step configuration operation comprises a delete operation to delete a value of a network configuration setting at the server devices.
3. A multi-entity system as recited in claim 1, wherein the configuration dialog is configured for selection of multiple network entities having multiple configured objects, and selection of the single-step configuration operation to one of overwrite, append, delete, or find-and-replace a value of the multiple configured objects.
4. A multi-entity system as recited in claim 1, wherein the configuration dialog is configured for: selection of the single-step configuration operation to one of overwrite, append, delete, or find-and-replace an option value of a network configuration setting; selection of a server device scope; selection of a scope option; and selection of the option value to configure the network configuration setting at the server devices.
5. A method, comprising:
- displaying a configuration dialog user interface with user-selectable controls that are selectable to edit one or more DHCP server scopes for a plurality of server devices in a network;
- receiving a selection of a single-step configuration operation, wherein the single-step configuration operation comprises at least one of: an overwrite operation to change a value of a DHCP server scope at the plurality of the server devices, an append operation to append a value to an array of values of a DHCP server scope at the plurality of the server devices, and a find-and-replace operation to find a value and replace the value of a DHCP server scope at the plurality of the server devices;
- receiving a selection of one of the one or more DHCP server scopes;
- receiving an input value to configure one of the one or more DHCP server scopes; and
- applying the selected single-step configuration operation, wherein, upon applying the single-step configuration operation, the input value is applied at each of the plurality of server devices.
6. A method as recited in claim 5, wherein the single-step configuration operation comprises a delete operation to delete the selected values of the one or more network configuration settings at the server devices.
7. A multi-entity manager for multi-entity management, the multi-entity manager comprising:
- a user-selectable scope control configured for selection of one or more server scopes to be edited; and
- a configuration dialog user interface comprising: a user-selectable operation control configured for selection of a single-step configuration operation for one or more network configuration settings at a plurality of DHCP server devices in a network, wherein the single-step configuration operation comprises at least one of: an overwrite operation to change a value of a network configuration setting at the plurality of the server devices, an append operation to append a value to an array of values of a network configuration setting at the plurality of the server devices, and a find-and-replace operation to find a value and replace the value of a network setting at the plurality of the server devices; a user-selectable option control configured for receiving a selection of one or more scope options of the one or more server scopes; and a value input field configured for receiving one or more option value inputs of the one or more scope options, wherein, upon receiving a selection of a scope option and an option value, the option value is applied to each of the plurality of DHCP server devices.
8. A multi-entity manager as recited in claim 7, wherein the single-step configuration operation is applied to the selected one or more server scopes.
9. A multi-entity manager as recited in claim 7, wherein the user-selectable operation control is configured for selection of a delete configuration operation to delete the one or more selected option values of the one or more selected option values of the one or more selected scope options of the one or more selected server scopes.
10. A multi-entity system as recited in claim 1, wherein selecting the overwrite single-step configuration operation further comprises receiving, by the multi-entity manager, a customized value for changing a value of a network configuration setting at the plurality of server devices.
11. A multi-entity system as recited in claim 1, wherein selecting the append single-step configuration operation further comprises receiving, by the multi-entity manager, a customized value for appending to an array of values of a network configuration setting at the plurality of server devices.
12. A multi-entity system as recited in claim 1, wherein selecting the find-and-replace configuration operation further comprises receiving, by the multi-entity manager, a customized value for finding and replacing the value of a network setting at the plurality of the server devices.
13. A method as recited in claim 5, wherein receiving the selection of the overwrite single-step configuration operation further comprises receiving a customized value for changing a value of a network configuration setting at the plurality of server devices.
14. A method as recited in claim 5, wherein receiving the selection of the append single-step configuration operation further comprises receiving a customized value for appending to an array of values of a network configuration setting at the plurality of server devices.
15. A method as recited in claim 5, wherein receiving the selection of the find-and-replace single-step configuration operation further comprises receiving a customized value for finding and replacing the value of a network setting at the plurality of the server devices.
16. A multi-entity manager as recited in claim 7, wherein the user-selectable operation control is configured for receiving a customized value for changing a value of a network configuration setting at the plurality of server devices.
17. A multi-entity manager as recited in claim 7, wherein the user-selectable operation control is configured for receiving a customized value for appending to an array of values of a network configuration setting at the plurality of server devices.
18. A multi-entity manager as recited in claim 7, wherein the user-selectable operation control is configured for receiving a customized value for finding and replacing the value of a network setting at the plurality of server devices.
6098098 | August 1, 2000 | Sandahl et al. |
6219715 | April 17, 2001 | Ohno et al. |
6553568 | April 22, 2003 | Fijolek et al. |
6643694 | November 4, 2003 | Chernin |
6823454 | November 23, 2004 | Hind et al. |
7051089 | May 23, 2006 | Johnson et al. |
7068597 | June 27, 2006 | Fijolek et al. |
7107326 | September 12, 2006 | Fijolek et al. |
7185079 | February 27, 2007 | Bainbridge et al. |
7409709 | August 5, 2008 | Smith et al. |
7529818 | May 5, 2009 | Halpern et al. |
7587493 | September 8, 2009 | Sheth |
7698394 | April 13, 2010 | Helmerich |
7882169 | February 1, 2011 | Droms et al. |
7916748 | March 29, 2011 | Ma |
20020082819 | June 27, 2002 | Ferguson et al. |
20020133573 | September 19, 2002 | Matsuda et al. |
20020143949 | October 3, 2002 | Rajarajan et al. |
20020158900 | October 31, 2002 | Hsieh et al. |
20020178380 | November 28, 2002 | Wolf et al. |
20030009540 | January 9, 2003 | Benfield et al. |
20030147395 | August 7, 2003 | Gutknecht et al. |
20030177218 | September 18, 2003 | Poirot et al. |
20030229686 | December 11, 2003 | Kortright |
20040261116 | December 23, 2004 | Mckeown et al. |
20050044265 | February 24, 2005 | Vinel et al. |
20050055575 | March 10, 2005 | Evans et al. |
20050097610 | May 5, 2005 | Pedlow et al. |
20050198215 | September 8, 2005 | Helmerich |
20050253722 | November 17, 2005 | Droms et al. |
20060050862 | March 9, 2006 | Shen et al. |
20060079999 | April 13, 2006 | Husein |
20060091999 | May 4, 2006 | Howarth |
20060106585 | May 18, 2006 | Brown et al. |
20060236095 | October 19, 2006 | Smith et al. |
20060248229 | November 2, 2006 | Saunderson et al. |
20070061458 | March 15, 2007 | Lum |
20070253344 | November 1, 2007 | Frost et al. |
20070253377 | November 1, 2007 | Janneteau et al. |
20070268516 | November 22, 2007 | Bugwadia et al. |
20080025299 | January 31, 2008 | Agarwal et al. |
20080172476 | July 17, 2008 | Daniel et al. |
20080222275 | September 11, 2008 | Yumoto |
20080282325 | November 13, 2008 | Oyama et al. |
20090106404 | April 23, 2009 | Christenson |
20090217346 | August 27, 2009 | Manring et al. |
20090279454 | November 12, 2009 | Wacker et al. |
20100180016 | July 15, 2010 | Bugwadia et al. |
20100191839 | July 29, 2010 | Gandhewar et al. |
20100328132 | December 30, 2010 | Reams et al. |
20110010463 | January 13, 2011 | Christenson et al. |
20110238793 | September 29, 2011 | Bedare et al. |
20130326014 | December 5, 2013 | Niu et al. |
101232395 | July 2008 | CN |
9107719 | May 1991 | WO |
- “Managing DHCP Superscopes”, Retrieved at <<http://technet.microsoft.com/en-us/library/dd183662(WS.10).aspx>>, Oct. 16, 2008, p. 1.
- “Ridgeline Network and Service Management”, Retrieved at <<http://extremenetworks.com/products/Ridgeline.aspx>>, Retrieved Date: Jul. 28, 2011, p. 1.
- “VitalQIP DNS/DHCP IP Management Software & Appliance”, Retrieved at <<http://enterprise.alcatel-lucent.com/? product=VitalQIP&page=overview, Retrieved Date: Jul. 28, 2011, pp. 2.
- “Proteus IP Address Management Solution (IPAM)”, Retrieved at <<http://www.bluecatnetworks.com/products/proteus-ip-address-management/overview Manage Core Services>>, Retrieved Date: Jul. 28, 2011, p. 1.
- “Office Action Issued In Chinese Patent Application No. 201210335704.5” Mailed Date: Dec. 1, 2014, 12 Pages.
- “Second Office Action Issued in Chinese Patent Application No. 201210335704.5”, Mailed Date: Jun. 24, 2015, 7 Pages.
- Third Office Action Issued in Chinese Patent Application No. 201210335704.5, mailed Jan. 13, 2016, 10 Pages.
Type: Grant
Filed: Sep 12, 2011
Date of Patent: Aug 2, 2016
Patent Publication Number: 20130067048
Assignee: Microsoft Technology Licensing, LLC (Redmond, WA)
Inventors: Nitin Narang (Hyderabad), Mahesh Narayanan (Hyderabad)
Primary Examiner: Ario Etienne
Assistant Examiner: Blake Rubin
Application Number: 13/230,529
International Classification: G06F 15/177 (20060101); H04L 12/24 (20060101); H04L 29/12 (20060101);