Electronic device for providing automatic standardization function and update function, and operating method thereof
An electronic device automates the generation of standardized templates and updates across data centers by comparing setting information, addressing inefficiencies and errors in manual configuration processes, thereby enhancing management efficiency and consistency.
Patent Information
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- SAMSUNG ELECTRONICS CO LTD
- Filing Date
- 2025-11-26
- Publication Date
- 2026-06-18
AI Technical Summary
Manually configuring and updating settings across multiple data centers is cumbersome and prone to errors, especially for data centers with similar functions, as administrators must create templates and apply them individually, leading to inefficiencies and inconsistencies.
An electronic device with a processor, memory, and communication module that automatically generates standardized templates by comparing setting information from multiple data centers, extracts common items, and maps setting values to generate new configuration information, enabling automated and consistent updates across network equipment.
This approach enhances efficiency and consistency in data center management by reducing manual effort, minimizing configuration errors, and ensuring uniformity across similar data centers.
Smart Images

Figure KR2025019771_18062026_PF_FP_ABST
Abstract
Description
Electronic device providing automatic standardization and update functions and method of operation thereof
[0001] The present disclosure relates to an electronic device that provides automatic standardization and update functions and a method of operation thereof.
[0002] Cloud computing services provide various IT resources over the Internet, allowing businesses and developers to flexibly utilize diverse cloud-based services such as servers, storage, databases, networks, software, and analytics tools. Cloud computing services offer a model where services and resources can be rented and used whenever needed, instead of purchasing and managing on-premises hardware.
[0003] Cloud computing services are built upon data centers, which are physical infrastructure. Data centers can form a network infrastructure where servers, storage, and network equipment are interconnected to transmit and receive data.
[0004] Meanwhile, data centers require continuous configuration changes and updates, and consistent configuration changes or updates are necessary even for data centers with identical or similar functions. To collectively change or update settings for multiple commercially available data centers, administrators must manually create templates, match configuration values, and apply them to each center. This manual process is cumbersome and can lead to various problems, such as configuration errors.
[0005] The information described above may be provided as related art for the purpose of aiding understanding of the present disclosure. No claim or determination is made as to whether any of the foregoing may be applied as prior art related to the present disclosure.
[0006] An electronic device according to one embodiment may include a communication module that transmits and receives data through a plurality of data centers and a network, a memory that stores instructions, and at least one processor. Instructions according to one embodiment may be executed by at least one processor so that the electronic device receives first setting information and second setting information from a plurality of data centers, generates a template including at least one common item through comparison between the first setting information and the second setting information, obtains a setting value corresponding to the item through comparison between either the first setting information or the second setting information and the template, and generates new setting information by mapping the template and the setting value.
[0007] A method of operation of an electronic device according to one embodiment may include: receiving first setting information and second setting information from a plurality of data centers; generating a template including at least one common item through comparison between the first setting information and the second setting information; obtaining a setting value corresponding to the item through comparison between either the first setting information or the second setting information and the template; and generating new setting information by mapping the template and the setting value.
[0008] FIG. 1 shows a system between an electronic device and a data center in a network environment according to one embodiment.
[0009] FIG. 2 is a hierarchical configuration diagram of a data center in one embodiment.
[0010] FIG. 3 is a configuration diagram showing the physical and / or logical classification of data centers in one embodiment.
[0011] FIG. 4 is a flowchart of an operation method of an electronic device according to one embodiment.
[0012] Figure 5 is a diagram illustrating an example of collecting setting information.
[0013] Figure 6 is a diagram comparing configuration information between network devices for the same purpose.
[0014] Figure 7 is a diagram illustrating the preprocessing process before the template is generated.
[0015] Figure 8 is a diagram illustrating a generated template.
[0016] Figure 9 is a diagram illustrating the process of extracting setting values.
[0017] Figure 10 is a diagram illustrating the process of generating new setting information.
[0018] FIG. 11 is a flowchart of an operation method for a manual update process of an electronic device according to one embodiment.
[0019] FIG. 12 is a flowchart of an operation method for an automatic update process of an electronic device according to one embodiment.
[0020] FIG. 13 is a flowchart of an operation method in which an electronic device according to one embodiment distributes new configuration information to other network equipment.
[0021] Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the accompanying drawings. The advantages and features of the present invention and the methods for achieving them will become clear by referring to the embodiments described below in detail together with the accompanying drawings. However, the present invention is not limited to the embodiments disclosed below but may be implemented in various different forms. These embodiments are provided merely to ensure that the disclosure of the present invention is complete and to fully inform those skilled in the art of the scope of the invention, and the present invention is defined only by the scope of the claims. Throughout the specification, the same reference numerals refer to the same components.
[0022] Unless otherwise defined, all terms used herein (including technical and scientific terms) may be used in a meaning commonly understood by those skilled in the art to which the present invention pertains. Furthermore, terms defined in commonly used dictionaries are not to be interpreted ideally or excessively unless explicitly and specifically defined otherwise. The terms used herein are for describing embodiments and are not intended to limit the present invention. In this specification, the singular form includes the plural form unless specifically stated otherwise in the text.
[0023] As used in the specification, "comprises" and / or "comprising" do not exclude the presence or addition of one or more other components, steps, actions, and / or elements to the mentioned components, steps, actions, and / or elements.
[0024] FIG. 1 shows a system (1000) between an electronic device and a data center in a network environment according to one embodiment.
[0025] A system (1000) according to one embodiment may have servers within a plurality of data centers (10, 20, 30, 40) interconnected via a network to provide cloud computing services. The connection between each server may support fast and stable data transmission using high-speed network technology such as high-speed Ethernet or InfiniBand.
[0026] An electronic device (1) according to one embodiment may be connected to or included in any one of a data center (10, 20, 30, 40, hereinafter omitted) and may also be connected to a target switch (not shown) of the data center to manage connections with a server, a storage system, and other network equipment through a network connection.
[0027] An electronic device (1) according to one embodiment may include a processor (100), memory (200), and a communication module (300). An electronic device (1) according to one embodiment may be a server and may be composed of a combination of server hardware and software including a processor (100), memory (200), and a communication module (300).
[0028] A processor (100) according to one embodiment can generate a standardized template by analyzing the purpose settings of network equipment belonging to a system (1000). A template refers to a basic configuration file or configuration model used to automate and standardize server environments, network configurations, application deployments, or virtualization settings. The template serves to increase the efficiency of the data center, simplify management tasks, and maintain system consistency. For example, VLAN settings, IP address assignments, routing policies, etc., may be configured in the template. Additionally, the template can store predefined settings and apply them to new network equipment or network equipment that is to be updated.
[0029] A processor (100) according to one embodiment can extract a setting value by matching an existing setting for at least one network device with a template. The setting value refers to a value or data used for configuring at least one network device (configuration of a data center). The setting value may be information necessary to control a specific operation in a system, server, network, etc. For example, the setting value may include an IP address, the number of CPU cores, RAM capacity, and port number. The setting value may be divided into at least one item.
[0030] A processor (100) according to one embodiment may generate configuration information by combining a template and a configuration value. The configuration information may include detailed configurations and parameters for a system, application, network equipment, etc. The configuration information may include values that define the operation and rules of the network equipment.
[0031] A processor (100) according to one embodiment may, for example, execute software (e.g., a program) to control at least one other component (e.g., a hardware or software component) of an electronic device (1) connected to the processor (100) and may perform various data processing or operations. According to one embodiment, as at least part of the data processing or operations, the processor (100) may store commands or data received from another component (e.g., a communication module (300)) in memory (200), process the commands or data stored in memory (200), and store result data in memory (200). According to one embodiment, the processor (100) may include a main processor (e.g., a central processing unit or an application processor) or an auxiliary processor (e.g., a graphics processing unit, a neural processing unit (NPU), an image signal processor, a sensor hub processor, or a communication processor) that can be operated independently or together with it. For example, if the electronic device (1) includes a main processor and an auxiliary processor, the auxiliary processor may be configured to use less power than the main processor or to be specialized for a designated function. The auxiliary processor may be implemented separately from the main processor or as part thereof.
[0032] An auxiliary processor can control at least some of the functions or states associated with at least one component (e.g., a communication module (300)) of the components of the electronic device (1), for example, on behalf of the main processor while the main processor is in an inactive (e.g., sleep) state, or together with the main processor while the main processor is in an active (e.g., application execution) state. According to one embodiment, the auxiliary processor may be implemented as part of another functionally related component (e.g., a communication module (300)). According to one embodiment, the auxiliary processor (e.g., a neural network processing unit) may include a hardware structure specialized for processing an artificial intelligence model. The artificial intelligence model may be generated through machine learning. Such learning may be performed, for example, on the electronic device (1) itself where the artificial intelligence model is executed, or through a separate server. The learning algorithm may include, for example, supervised learning, unsupervised learning, semi-supervised learning, or reinforcement learning, but is not limited to the examples described above. The artificial intelligence model may include multiple artificial neural network layers. The artificial neural network may be a deep neural network (DNN), a convolutional neural network (CNN), a recurrent neural network (RNN), a restricted Boltzmann machine (RBM), a deep belief network (DBN), a bidirectional recurrent deep neural network (BRDNN), deep Q-networks, or a combination of two or more of the above, but is not limited to the examples described above.Artificial intelligence models may include software structures, either additionally or as a substitute, in addition to hardware structures.
[0033] A memory (200) according to one embodiment can store various information regarding data centers (10 to 40). For example, the memory (200) can store the type and purpose of network equipment, etc. Additionally, the memory (200) can store information regarding the type and version of a template. Additionally, the memory (200) can store various setting values that can be designed in the template.
[0034] A memory (200) according to one embodiment can record the type, purpose, content, and version of a template. Additionally, a memory (200) according to one embodiment can record settings different from the standard settings of a template.
[0035] A memory (200) according to one embodiment can record a history of applying settings to network equipment, changing templates, etc.
[0036] A memory (200) according to one embodiment can store standard setting information. The standard setting information is a template in which standard setting values suitable for the purpose of network equipment are reflected.
[0037] A memory (200) according to one embodiment can collect configuration information that is actually applied from other data centers (20 to 40). Although the number of data centers in FIG. 1 is shown as limited, the number may not be limited according to the management policy of the cloud computing service.
[0038] A memory (200) according to one embodiment may store various data used by at least one component of an electronic device (1) (e.g., a processor (100) or a communication module (300)). The data may include, for example, software (e.g., a program) and input data or output data for related instructions. The memory (200) may include volatile memory or non-volatile memory.
[0039] A communication module (300) according to one embodiment can provide a data center (10 to 40) with a deployment API (Application Programming Interface) provided by vendors to automatically deploy, manage, and configure IT infrastructure equipment such as network equipment or servers.
[0040] A communication module (300) according to one embodiment may provide a backup API to a data center (10 to 40) to automate the task of backing up and restoring the settings of network equipment, a server, or data center equipment.
[0041] A communication module (300) according to one embodiment can collect configuration information for at least one network device using a backup API when a configuration change of at least one network device belonging to a data center is detected.
[0042] A communication module (300) according to one embodiment can obtain different configuration information by using a backup API to compare standard settings with settings actually applied to network equipment. When a processor (100) according to one embodiment obtains different configuration information through the communication module (300), it can distinguish whether the different configuration information is an update of a standard version or an update of a different type. If it is an update of a standard version, the processor (100) according to one embodiment can generate configuration information reflecting the update and distribute the generated configuration information to multiple network equipment through the communication module (300).
[0043] The communication module (300) can support the establishment of a direct (e.g., wired) communication channel or a wireless communication channel between the electronic device (1) and the data sensors (10 to 40), and the performance of communication through the established communication channel. The communication module (300) may include one or more communication processors that operate independently of the processor (100) (e.g., application processor) and support direct (e.g., wired) communication or wireless communication. According to one embodiment, the communication module (300) may include a wireless communication module (e.g., cellular communication module, short-range wireless communication module, or GNSS (global navigation satellite system) communication module) or a wired communication module (e.g., LAN (local area network) communication module, or power line communication module). Among these communication modules, the corresponding communication module can communicate with an external electronic device through a first network (e.g., a short-range communication network such as Bluetooth, WiFi (wireless fidelity) direct, or IrDA (infrared data association)) or a second network (e.g., a legacy cellular network, a 5G network, a next-generation communication network, the Internet, or a long-range communication network such as a computer network (e.g., LAN or WAN). These various types of communication modules may be integrated into a single component (e.g., a single chip) or implemented as multiple separate components (e.g., multiple chips). The wireless communication module can identify or authenticate an electronic device (1) within a communication network, such as the first network or the second network, using subscriber information (e.g., International Mobile Subscriber Identifier (IMSI)) stored in a subscriber identification module.
[0044] The wireless communication module can support 5G networks following 4G networks and next-generation communication technologies, such as new radio access technology (NR access technology). NR access technology can support high-speed transmission of high-capacity data (enhanced mobile broadband (eMBB)), minimization of terminal power and connection of multiple terminals (massive machine type communications (mMTC)), or high reliability and low latency (ultra-reliable and low-latency communications (URLLC)). The wireless communication module can support high-frequency bands (e.g., mmWave band) to achieve high data transmission rates, for example. The wireless communication module can support various technologies to secure performance in high-frequency bands, such as beamforming, massive MIMO (multiple-input and multiple-output), full-dimensional MIMO (FD-MIMO), array antenna, analog beamforming, or large-scale antenna. The wireless communication module can support various requirements specified in the electronic device (1) or network system (e.g., second network). According to one embodiment, the wireless communication module can support a Peak data rate (e.g., 20 Gbps or more) for eMBB realization, loss coverage (e.g., 164 dB or less) for mMTC realization, or U-plane latency (e.g., downlink (DL) and uplink (UL) each 0.5 ms or less, or round trip 1 ms or less) for URLLC realization.
[0045] An antenna module can transmit a signal or power to an external source (e.g., an external electronic device) or receive it from an external source. According to one embodiment, the antenna module may include an antenna comprising a radiator made of a conductor or a conductive pattern formed on a substrate (e.g., a PCB). According to one embodiment, the antenna module may include a plurality of antennas (e.g., an array antenna). In this case, at least one antenna suitable for a communication method used in a communication network, such as a first network or a second network, may be selected from the plurality of antennas, for example, by a communication module (300). The signal or power may be transmitted or received between the communication module (300) and an external electronic device through the selected at least one antenna. According to some embodiments, in addition to the radiator, other components (e.g., a radio frequency integrated circuit (RFIC)) may be additionally formed as part of the antenna module.
[0046] According to various embodiments, the antenna module may form a mmWave antenna module. According to one embodiment, the mmWave antenna module may include a printed circuit board, an RFIC disposed on or adjacent to a first surface (e.g., bottom surface) of the printed circuit board and capable of supporting a specified high frequency band (e.g., mmWave band), and a plurality of antennas (e.g., array antennas) disposed on or adjacent to a second surface (e.g., top surface or side surface) of the printed circuit board and capable of transmitting or receiving a signal of the specified high frequency band.
[0047] At least some of the above components can be connected to each other via a communication method between peripheral devices (e.g., bus, GPIO (general purpose input and output), SPI (serial peripheral interface), or MIPI (mobile industry processor interface)) and exchange signals (e.g., commands or data) with each other.
[0048] According to one embodiment, commands or data may be transmitted or received between an electronic device (1) and external data centers (20 to 40) through a server connected to a second network. Each of the external data centers (20 to 40) may be the same or different type of device as the electronic device (1). For example, if the electronic device (1) needs to perform a function or service automatically or in response to a request from a user or another device, the electronic device (1) may request one or more external electronic devices to perform at least a part of the function or service instead of performing the function or service itself or additionally. Upon receiving the request, one or more external electronic devices may perform at least a part of the requested function or service, or additional functions or services related to the request, and transmit the result of the execution to the electronic device (1). The electronic device (1) may provide the result as is or additionally processed as at least part of the response to the request. For this purpose, for example, cloud computing, distributed computing, mobile edge computing (MEC), or client-server computing technology may be used. The electronic device (1) can provide ultra-low latency services using, for example, distributed computing or mobile edge computing.
[0049] FIG. 2 is a hierarchical configuration diagram (2000) of a data center in one embodiment.
[0050] The architecture of network equipment included in the data center (10 to 40) described with reference to FIG. 1 can be configured through an edge (2100, Edge), a spine (2200, Spine), a leaf (2300, Leaf), and a Top of Rack (2400, ToR).
[0051] The edge (2100) is a point that connects to the external network of the data center. In other words, the edge (2100) refers to equipment or layers located at the edge of the network and can serve as a connection between client equipment (servers or workstations) and the center of the network (spine or core level). The edge can handle initial traffic processing before user or server traffic goes up to the spine or core level.
[0052] A spine (2200) is a high-performance switch that serves as the backbone of a network. The spine (2200) is a high-speed switch responsible for the core of a data center network and can manage connections with leaf switches (not shown). The spine (2200) handles all traffic within the network and can be the primary path for transmitting data between leaf switches. The spine (2200) can be connected to multiple leaf switches. A spine switch (not shown) can interconnect multiple leaf switches to form a high-speed backbone. The spine switch handles a large volume of traffic between leaves and can receive traffic from each leaf switch and forward it to an appropriate destination. The spine switch can provide high bandwidth and low latency.
[0053] A leaf (2300) is a switch that is directly connected to a server and can be connected to any spine switch. A leaf (2300) can be connected to a spine (2200) and can be connected to a server or storage device to transmit and receive traffic. A leaf switch can be connected to a server, storage, or edge device to transmit data. A leaf switch can be connected to a spine switch to handle traffic between leaves and can be responsible for connections with an external network. A leaf can primarily receive data from a server or client and transmit it to another server or device through the spine (2200).
[0054] The ToR (2400, Top of Rack) may be a leaf switch located in each server rack. The ToR (2400) may be directly connected to the servers in the rack and be responsible for communication. The ToR (2400) may be a switch located at the top of the server rack within the data center. The ToR switch is responsible for the connection between the server and the switch and can be used to connect each server. The ToR (2400) is installed in each rack, so that the servers in the rack can be connected to a single switch.
[0055] Edge (2100), Spine (2200), Leaf (2300), and Top of Rack (2400) may be distinguished by network layer. In this case, network equipment belonging to the same layer may have the same purpose and can be updated or configured using the same template (or configuration information).
[0056] FIG. 3 is a configuration diagram showing the physical and / or logical classification of data centers in one embodiment.
[0057] The system (1000) according to FIG. 1 can host resources in countries around the world to provide cloud services. The system (1000) according to one embodiment provides various IT resources (servers, storage, databases, networks, etc.) via the Internet and can support companies and individuals in using necessary infrastructure and services in the cloud without purchasing or managing their own physical hardware. Server and network equipment can be classified according to the following units.
[0058] A system (3000, 1000) according to one embodiment may be divided into a plurality of regions (3100, 3200). A region (3100, 3200) is a unit larger than an Availability Zone (AZ) and is a geographical division of areas where cloud computing resources are hosted. In a system (3000) according to one embodiment, a region may consist of at least two Availability Zones. For example, an area hosted in Seoul, Korea may be the Seoul Region, and an area hosted in Northern Virginia, USA may be the Northern Virginia Region. A user of the cloud service may select a country where the service is provided or a nearby region.
[0059] A region (3100 or 3200) according to one embodiment may include a plurality of availability zones (3110, 3120, 3210, 3220). An availability zone may be a space where clusters of data centers are gathered, that is, at least one data center is clustered. In a system (3000) according to one embodiment, independent resources can be created and managed through the distinction between the region and the availability zone.
[0060] An available area (3110, 3120, 3210, or 3220) according to one embodiment may include a plurality of data centers (3111, 3112, 3121, 3122, 3211, 3212, 3221, 3222). A data center refers to a physical space where servers for actual cloud services are gathered. It is a place designed by stacking (mounting) physical servers on racks, which are steel structures, and various digital data can be stored therein.
[0061] The system (3000) can select a region and an availability zone, which is a unit smaller than a region, to create resources. Since each region is independent, resources created in, for example, the Seoul region cannot be used in other regions such as the Tokyo or Singapore regions. Therefore, when configuring the architecture, the system (3000) must ensure fault tolerance through multiple availability zones and multiple regions.
[0062] FIG. 4 is a flowchart (400) of an operation method of an electronic device according to one embodiment. FIG. 5 is a diagram for explaining an example of collecting configuration information, FIG. 6 is a diagram for comparing configuration information between network devices of the same purpose, FIG. 7 is a diagram for explaining a preprocessing process before a template is generated, FIG. 8 is a diagram for explaining a generated template, FIG. 9 is a diagram for explaining a process of extracting configuration values, and FIG. 10 is a diagram for explaining a process of generating new configuration information. The flowchart (400) of FIG. 4 is described with reference to FIG. 5 to FIG. 10.
[0063] An electronic device (1) according to one embodiment may receive first configuration information and second configuration information from a plurality of data centers (410). Each of the first configuration information and second configuration information may correspond to different network equipment belonging to the same network layer. For example, referring to FIG. 2, it may correspond to configuration information of network equipment that belongs to the same spine (2200) layer but is physically separated. According to one embodiment, the electronic device (1) may receive a plurality of configuration information in addition to the first configuration information and second configuration information from a plurality of data centers.
[0064] Meanwhile, the electronic device (1) aims to receive multiple configuration information and generate templates and / or new configuration information through comparison between multiple configuration information, but may collect only a minimum amount of configuration information considering the computational load of the electronic device (1). For example, referring to FIG. 5, when collecting only two sets of configuration information to minimize the collection of configuration information, configuration information with different regions, availability zones, and rack numbers can be collected. As seen through FIG. 2 and FIG. 3, due to the hierarchical nature of the architecture of the system (1000), accurate comparison between configuration information can be made when the regions, availability zones, and rack numbers are all different. At this time, accurate comparison can be made while simultaneously reducing the computational load caused by an increase in the number of configuration information.
[0065] According to one embodiment, the first configuration information may be obtained from a first region (A, Region) - a first availability zone (1, Availability Zone) - a first rack (R1, Rack) among a plurality of data centers, and the second configuration information may be obtained from a second region (B or C Region) - a second availability zone (2 or 3, Availability Zone) - a second rack (R2 or R3, Rack) among a plurality of data centers.
[0066] According to one embodiment, the first setting information and the second setting information may be information regarding network equipment belonging to the same network layer, obtained from each of different data centers among a plurality of data centers.
[0067] An electronic device (1) according to one embodiment can generate a template including at least one common item through comparison between first setting information and second setting information (420).
[0068] For example, referring to FIG. 6, an electronic device (1) may obtain first setting information (610) and second setting information (620). Items of the first setting information (610) may include lab 101, which is an identification number (6101) representing a physical area; tor01, which is a Tor switch identification number (6103); and 1234, which is a unique identification number (6105) of a Rack. Items of the second setting information (620) may include lab 101, which is an identification number (6201) representing a physical area; tor02, which is a Tor switch identification number (6203); and 1234, which is a unique identification number (6205) of a Rack. If it is determined that the equipment corresponding to the first setting information and the equipment corresponding to the second setting information are equipment for the same purpose, a template (630) may be generated by comparing the first setting information and the second setting information.
[0069] For example, lab 101-tor 01-1234 and lab 101-tor 02-1234 refer to tor 01 and tor 02 in the same 1234 rack of the same lab101 region. An example where a different region, different rack, and different tor order are intended as the optimal comparison targets could be lab 101-tor 01-1234 and lab 202-tor 02-5678.
[0070] According to one embodiment, the electronic device (1) may determine that the same setting content in the first setting information (610) and the second setting information (620) is fixed setting information in the template (630). For example, in FIG. 6, it may be an identification number indicating a physical area and a unique identification number of the device. According to one embodiment, the electronic device (1) may determine that different setting content in the first setting information (610) and the second setting information (620) is a variable or additional setting information in the template (630). For example, in FIG. 6, the Tor switch identification number may be set as a variable. At this time, sentences that differ from the result of comparison between the setting information are designated as unnecessary setting values or saved as missing setting values, and are allowed to be managed separately by an administrator.
[0071] According to one embodiment, the electronic device (1) can set a word included in the setting information as a variable among the setting values that do not match between the first setting information and the second setting information. Additionally, according to one embodiment, the electronic device (1) can store a sentence included in the setting information among the setting values that do not match between the first setting information and the second setting information as additional setting information other than a template.
[0072] According to one embodiment, the electronic device (1) can set a setting value that matches between the first setting information and the second setting information as a fixed value in the template.
[0073] An electronic device (1) according to one embodiment can obtain a setting value corresponding to an item through a comparison between either the first setting information or the second setting information and a template (430).
[0074] According to one embodiment, an electronic device (1) can perform deduplication using a hash map on a plurality of setting values (710, FIG. 7) collected from a first setting information and the second setting information. According to one embodiment, the electronic device (1) can assign an order to a portion of the plurality of setting values from which deduplication has been removed in the hash map using sorting. Referring to FIG. 7, an electronic device (1) according to one embodiment can obtain a plurality of setting values (720) having 40 variables by deduplication from 70 different values.
[0075] An electronic device (1) according to one embodiment can generate new setting information by mapping a template of second setting information and a setting value (440). Referring to FIG. 8, an electronic device (1) according to one embodiment can generate an equipment template (830) containing new setting information by mapping a second setting information (810, or first setting information) and a plurality of setting values (820).
[0076] Meanwhile, the extraction of setting values and the generation of new setting information will be explained in more detail with reference to FIGS. 9 and FIGS. 10.
[0077] Referring to FIG. 9, an electronic device (1) according to one embodiment can compare a second setting information (910, or a first setting information) with a template (920) to extract values that match each variable name as setting values (930). An electronic device (1) according to one embodiment can design variable values corresponding to the setting values and store them in memory (200).
[0078] Referring to FIG. 10, an electronic device (1) according to one embodiment can generate new setting information (1030) by mapping a template (1010) and setting values (1020). A memory (200) according to one embodiment stores all values that a network device may have, and the electronic device (1) can map setting values only to items in the template (1010).
[0079] Meanwhile, the electronic device (1) can be operated by an administrator (or user) and can obtain template and / or new configuration information for network equipment belonging to a plurality of data centers according to the operations of the electronic device (1) described above. The electronic device (1) according to one embodiment can manually or automatically update or change the configuration of network equipment according to the administrator's control or configuration status. In this regard, this will be explained with reference to FIGS. 11 to 13.
[0080] FIG. 11 is a flowchart (1100) of an operation method for a manual update process of an electronic device according to one embodiment.
[0081] According to one embodiment, the electronic device (1) may receive a manual update command from a user (1101). According to one embodiment, the electronic device (1) may receive a user command related to changing or updating settings for network equipment through an interface device. For example, the user may provide the electronic device (1) with update information through the interface device to apply new setting values to a template for network equipment (or network equipment of the same layer) having the same purpose, or to add new items, and may cause the electronic device (1) to distribute to other data centers (20 to 40) through the system (1000 in FIG. 1). Distribution may be performed automatically by the operations shown in FIG. 13.
[0082] An electronic device (1) according to one embodiment may receive a user's manual update command for a first network device. The first network device may be a device directly connected to the electronic device (1) and may correspond to a network device that can have its settings changed and updated without undergoing a separate verification procedure. According to one embodiment, the electronic device (1) may extract a list of network devices having the same template as the first network device in response to the manual update command. That is, data distribution for the update may be performed for at least one network device in the list of network devices. According to one embodiment, the electronic device (1) may generate configuration information targeting at least one network device included in the network device based on new configuration information and distribute it to at least one network device.
[0083] FIG. 12 is a flowchart of an operation method for an automatic update process of an electronic device according to one embodiment.
[0084] According to one embodiment, the electronic device (1) can detect a change in the settings of network equipment (1201). For example, referring to FIG. 1, the electronic device (1) can detect whether there is a change in the settings of network equipment belonging to a plurality of data centers (10 to 40) through a network in real time or at a regular interval.
[0085] According to one embodiment, the electronic device (1) can collect configuration information of network equipment (1203). The electronic device (1) can collect configuration information of network equipment for which a configuration change has been detected. For example, the electronic device (1) can collect configuration information for network equipment belonging to a plurality of data centers (10 to 40) through a network and store it in memory (200). At this time, the collected configuration information may include configuration information reflecting a configuration change and configuration information prior to the configuration change.
[0086] According to one embodiment, the electronic device (1) can compare collected configuration information with standard configuration information (1205). Here, the configuration information reflects a configuration change for any one of the network equipment belonging to a plurality of data centers (10 to 40), and the standard configuration information corresponds to standard configuration information of network equipment having the same purpose (same layer) as the network equipment whose configuration has been changed. The standard configuration information may be stored in the memory (200) of the electronic device (1).
[0087] According to one embodiment, the electronic device (1) can obtain different setting information (1207). The electronic device (1) can obtain different setting information based on the result of comparison in the operation 1205. For example, if there is a change in the setting of any one of the various items included in the setting information, the electronic device (1) can temporarily store the changed setting value for each item in the memory (200). Specifically, the electronic device (1) can obtain a changed value among the various settings of any one of the network equipment belonging to the data center.
[0088] According to one embodiment, the electronic device (1) can check whether the syntax of different configuration information is included in the automatic update list (1209). The automatic update list is stored in memory (200) and indicates information regarding items that require periodic updates among the items of the configuration information of network equipment. Items included in the automatic update list may correspond to configuration values that require periodic updates.
[0089] According to one embodiment, if the electronic device (1) has a Syntax of different configuration information included in the automatic update list (Y of operation 1209), it can generate configuration information targeting at least one network device included in the network device based on the new configuration information and distribute it to at least one network device.
[0090] According to one embodiment, if the Syntax of different configuration information is not included in the automatic update list (N of operation 1209), the electronic device (1) can determine whether the Syntax of different configuration information is an update to a standard template (1211). At this time, if the Syntax of different configuration information corresponds to an update to a standard template (Y of operation 1211), the electronic device (1) can generate configuration information targeting at least one network device included in the network equipment based on the new configuration information and distribute it to at least one network device.
[0091] If the syntax of different configuration information corresponds to an update to a standard template (N of operation 1211), the electronic device (1) can generate a new template based on the different configuration information (1213).
[0092] FIG. 13 is a flowchart (1300) of an operation method in which an electronic device according to one embodiment distributes new configuration information to other network equipment.
[0093] The flowchart (1300) of the operation method according to FIG. 13 can be applied to both the flowchart (1100) of FIG. 11 for manually updating network equipment and the flowchart (1200) of FIG. 12 for automatically updating network equipment.
[0094] An electronic device (1) according to one embodiment can extract a list of network equipment having the same template (1301). A memory (200) according to one embodiment can store a list of network equipment by layer. An electronic device (1) according to one embodiment can extract a list of network equipment belonging to a plurality of data centers (10 to 40) through a network and obtain a list of equipment having the same purpose (same layer) as the network equipment for which a setting change was detected.
[0095] An electronic device (1) according to one embodiment can generate configuration information targeting at least one network device (1303). The electronic device (1) can generate new configuration information to change the configuration value for at least one network device included in the list obtained in operation 1301. At this time, the generation of configuration information is as described in the flowchart (400) of FIG. 4.
[0096] An electronic device (1) according to one embodiment can distribute configuration information generated to at least one network device (1305). Once the distribution of configuration information is complete, updates can be performed automatically according to network devices belonging to data centers (10 to 40) or according to the selection of an administrator for the network device.
[0097] An electronic device (1) according to one embodiment may include a communication module (300) that transmits and receives data through a network with a plurality of data centers (10, 20, 30, 40 of FIG. 1), a memory (200) that stores instructions, and at least one processor. According to one embodiment, the instructions are executed by at least one processor so that the electronic device: receives first setting information and second setting information from a plurality of data centers, generates a template including at least one common item through comparison between the first setting information and the second setting information, obtains a setting value corresponding to the item through comparison between either the first setting information or the second setting information and the template, and generates new setting information by mapping the template and the setting value.
[0098] According to one embodiment, the first setting information and the second setting information may be information regarding network equipment belonging to the same network layer, obtained from each of different data centers among a plurality of data centers.
[0099] Instructions according to one embodiment can set a setting value that matches between the first setting information and the second setting information as a fixed value in the template.
[0100] Instructions according to one embodiment, among the setting values that do not match between the first setting information and the second setting information: words can be set as variables, and sentences can be stored as additional setting information other than the template.
[0101] Instructions according to one embodiment can perform duplicate removal on a plurality of setting values collected from first setting information and second setting information using a hash map, assign an order to a portion of the plurality of setting values from which duplicates have been removed in the hash map using sorting, and generate a template by mapping the order to a variable name.
[0102] According to one embodiment, the first configuration information may be obtained from a first region, a first availability zone, and a first rack among a plurality of data centers, and the second configuration information may be obtained from a second region, a second availability zone, and a second rack among a plurality of data centers.
[0103] Instructions according to one embodiment receive a user's manual update command for a first network device, extract a list of network devices having the same template as the first network device in response to the manual update command, generate configuration information targeting at least one network device included in the list of network devices based on the generated new configuration information, and distribute the generated configuration information to at least one network device.
[0104] Instructions according to one embodiment can detect a change in the setting of a second network device among a plurality of network devices, collect setting information of the second network device, and obtain different setting information based on a comparison of the collected setting information and standard setting information stored in memory.
[0105] Instructions according to one embodiment can, when the syntax of different configuration information is included in the automatic update list, extract a list of network equipment having the same template as the second network equipment, generate configuration information targeting a plurality of network equipment included in the list of network equipment based on the generated new configuration information, and distribute the generated configuration information to the plurality of network equipment.
[0106] Instructions according to one embodiment can check whether a configuration change for a second network device is an update to a standard template if the syntax of different configuration information is not included in the automatic update list, and if the configuration change does not correspond to a standard template, a new template can be created.
[0107] A method of operation of an electronic device according to one embodiment may include receiving first setting information and second setting information from a plurality of data centers, generating a template including at least one common item through comparison between the first setting information and the second setting information, obtaining a setting value corresponding to the item through comparison between either the first setting information or the second setting information and the template, and generating new setting information by mapping the template and the setting value.
[0108] According to one embodiment, the first setting information and the second setting information may be information regarding network equipment belonging to the same network layer, obtained from each of different data centers among a plurality of data centers.
[0109] A method of operation of an electronic device according to one embodiment may further include an operation of setting a setting value that matches between first setting information and second setting information as a fixed value in a template.
[0110] A method of operation of an electronic device according to one embodiment may further include, among the setting values that do not match between the first setting information and the second setting information: setting a word included in the information as a variable and storing a sentence included in the setting information as additional setting information other than a template.
[0111] A method of operation of an electronic device according to one embodiment may further include an operation of removing duplicates using a hash map for a plurality of setting values collected from first setting information and second setting information, an operation of assigning an order using sorting to a portion of the plurality of setting values from which duplicates have been removed in the hash map, and an operation of generating the template by mapping the order to a variable name.
[0112] According to one embodiment, the first configuration information may be obtained from a first region, a first availability zone, and a first rack among a plurality of data centers, and the second configuration information may be obtained from a second region, a second availability zone, and a second rack among a plurality of data centers.
[0113] A method of operation of an electronic device according to one embodiment may further include receiving a user’s manual update command for a first network device, extracting a list of network devices having the same template as the first network device in response to the manual update command, generating configuration information targeting at least one network device included in the list of network devices based on newly generated configuration information, and distributing the generated configuration information to at least one network device.
[0114] A method of operation of an electronic device according to one embodiment may further include an operation of detecting a change in settings for a second network device among a plurality of network devices, an operation of collecting setting information of the second network device, and an operation of obtaining different setting information based on a comparison of the collected setting information and standard setting information stored in memory.
[0115] A method of operation of an electronic device according to one embodiment may further include, when the syntax of different configuration information is included in an automatic update list, extracting a list of network equipment having the same template as a second network equipment, generating configuration information targeting a plurality of network equipment included in the list of network equipment based on the generated new configuration information, and distributing the generated configuration information to a plurality of network equipment.
[0116] A method of operation of an electronic device according to one embodiment may further include, if the Syntax of different setting information is not included in the automatic update list, checking whether a setting change for a second network device is an update to a standard template, and if the setting change does not correspond to a standard template, creating a new template.
[0117] The electronic device according to the various embodiments disclosed in this document may be of various forms. The electronic device may include, for example, a portable communication device (e.g., a smartphone), a computer device, a portable multimedia device, a portable medical device, a camera, a wearable device, or a consumer electronics device. The electronic device according to the embodiments of this document is not limited to the devices described above.
[0118] The various embodiments of this document and the terms used therein are not intended to limit the technical features described in this document to specific embodiments, and should be understood to include various modifications, equivalents, or substitutions of said embodiments. In connection with the description of the drawings, similar reference numerals may be used for similar or related components. The singular form of a noun corresponding to an item may include one or more of said items unless the relevant context clearly indicates otherwise. In this document, phrases such as "A or B," "at least one of A and B," "at least one of A or B," "A, B or C," "at least one of A, B and C," and "at least one of A, B, or C" may each include any one of the items listed together in the corresponding phrase, or all possible combinations thereof. Terms such as "first," "second," or "first" or "second" may be used simply to distinguish said components from other said components and do not limit said components in any other aspect (e.g., importance or order). Where any (e.g., 1st) component is referred to as “coupled” or “connected” to another (e.g., 2nd) component, with or without the terms “functionally” or “communicationly,” it means that said any component may be connected to said other component directly (e.g., via a wire), wirelessly, or through a third component.
[0119] The term “module” as used in the various embodiments of this document may include a unit implemented in hardware, software, or firmware, and may be used interchangeably with terms such as logic, logic block, component, or circuit, for example. A module may be a component formed integrally, or a minimum unit of said component or a part thereof that performs one or more functions. For example, according to one embodiment, a module may be implemented in the form of an application-specific integrated circuit (ASIC).
[0120] Various embodiments of the present document may be implemented as software (e.g., program (140)) comprising one or more instructions stored in a storage medium (e.g., internal memory (136) or external memory (138)) readable by a machine (e.g., electronic device (101)). For example, a processor (e.g., processor (100)) of the machine (e.g., electronic device (101)) may call at least one of the one or more instructions stored in the storage medium and execute it. This enables the machine to be operated to perform at least one function according to the at least one called instruction. The one or more instructions may include code generated by a compiler or code that can be executed by an interpreter. The storage medium readable by the machine may be provided in the form of a non-transitory storage medium. Here, 'non-temporary' simply means that the storage medium is a tangible device and does not contain a signal (e.g., electromagnetic waves), and the term does not distinguish between cases where data is stored semi-permanently and cases where it is stored temporarily.
[0121] According to one embodiment, the method according to the various embodiments disclosed herein may be provided by being included in a computer program product. The computer program product may be traded between a seller and a buyer as a product. The computer program product may be distributed in the form of a device-readable storage medium (e.g., compact disc read-only memory (CD-ROM)), or distributed online (e.g., download or upload) through an application store (e.g., Play Store™) or directly between two user devices (e.g., smartphones). In the case of online distribution, at least a portion of the computer program product may be temporarily stored or temporarily created on a device-readable storage medium, such as the memory of a manufacturer's server, an application store's server, or a relay server.
[0122] According to various embodiments, each component (e.g., module or program) of the components described above may include a singular or multiple entities, and some of the multiple entities may be separated and placed in other components. According to various embodiments, one or more of the components or operations of the aforementioned components may be omitted, or one or more other components or operations may be added. Generally or additionally, multiple components (e.g., module or program) may be integrated into a single component. In this case, the integrated component may perform one or more functions of each of the multiple components in the same or similar manner as those performed by the corresponding component among the multiple components prior to integration. According to various embodiments, operations performed by the module, program, or other components may be executed sequentially, in parallel, iteratively, or heuristically, or one or more of the operations may be executed in a different order, omitted, or one or more other operations may be added.
[0123] The technical problems to be solved in this disclosure are not limited to those mentioned above, and other technical problems not mentioned will be clearly understood by those skilled in the art to which this disclosure pertains.
[0124] The effects obtainable from the present disclosure are not limited to those mentioned above, and other unmentioned effects will be clearly understood by those skilled in the art to which the present disclosure belongs.
Claims
1. In an electronic device, A communication module that transmits and receives data through multiple data centers and networks; Memory for storing instructions; and It includes at least one processor, The above instructions are executed by the above at least one processor, and the electronic device: Receives first configuration information and second configuration information from the above plurality of data centers, and A template including at least one common item is generated by comparing the first setting information and the second setting information, and A setting value corresponding to the item is obtained through a comparison between either the first setting information or the second setting information and the template, and An electronic device that generates new setting information by mapping the above template and the above setting value.
2. In Paragraph 1, The above first setting information and the above second setting information are, An electronic device that is information regarding network equipment belonging to the same network layer, obtained from each of the different data centers among the plurality of data centers mentioned above.
3. In Paragraph 2, The above instructions are executed by the at least one processor, causing the electronic device: An electronic device that sets a setting value matching the first setting information and the second setting information as a fixed value in the template.
4. In Paragraph 3, The above instructions are executed by the at least one processor, causing the electronic device: Among the setting values that do not match between the first setting information and the second setting information: Set the word as a variable, An electronic device that stores sentences as additional setting information other than the above template.
5. In Paragraph 2, The above instructions are executed by the at least one processor, causing the electronic device: Duplicate removal is performed on a plurality of setting values collected from the first setting information and the second setting information using a hash map, and For some of the multiple configuration values from which duplicates have been removed in the above hash map, sorting is used to assign an order, and An electronic device that generates the above template by mapping the above sequence and variable names.
6. In Paragraph 5, The above first setting information is, Among the plurality of data centers mentioned above, it is obtained from the first Region - first Availability Zone - first Rack, and The above second setting information is, An electronic device obtained from the second region, second availability zone, second rack among the plurality of data centers above.
7. In Paragraph 2, The above instructions are executed by the at least one processor, causing the electronic device: Receives a user's manual update command for the first network equipment, and In response to the above manual update command, a list of network equipment having the same template as the first network equipment is extracted, and Based on the newly generated configuration information above, configuration information targeting at least one network device included in the network device list above is generated, and An electronic device that distributes the generated configuration information to at least one network device.
8. In Paragraph 2, The above instructions are executed by the at least one processor, causing the electronic device: Detecting a change in settings for a second network device among multiple network devices, and Collecting configuration information of the above-mentioned second network equipment, and An electronic device that obtains different setting information based on a comparison of the above-mentioned collected setting information and the above-mentioned standard setting information stored in the memory.
9. In Paragraph 8, The above instructions are executed by the at least one processor, causing the electronic device: If the syntax of the above different configuration information is included in the automatic update list, a list of network equipment having the same template as the above second network equipment is extracted, and Based on the newly generated configuration information above, configuration information targeting a plurality of network devices included in the network device list above is generated, and An electronic device that distributes the above-generated configuration information to the above-mentioned plurality of network devices.
10. In Paragraph 9, The above instructions are executed by the at least one processor, causing the electronic device: If the syntax of the above different configuration information is not included in the automatic update list, check whether the configuration change for the above second network equipment is an update to the standard template, and An electronic device that generates a new template when the above setting change does not correspond to a standard template.
11. In a method of operating an electronic device, The operation of receiving first configuration information and second configuration information from multiple data centers; The operation of generating a template including at least one common item through comparison between the first setting information and the second setting information; An operation of obtaining a setting value corresponding to the item through a comparison between either the first setting information or the second setting information and the template; and A method of operation of an electronic device comprising: an operation of generating new setting information by mapping the above template and the above setting value.
12. In Paragraph 11, The above first setting information and the above second setting information are, A method of operation of an electronic device, wherein the information regarding network equipment belonging to the same network layer is obtained from each of the different data centers among the plurality of data centers mentioned above.
13. In Paragraph 12, A method of operation of an electronic device further comprising the operation of setting a setting value that matches between the first setting information and the second setting information as a fixed value in the template.
14. In Paragraph 13, Among the setting values that do not match between the first setting information and the second setting information: The action of setting a word included in the setting information as a variable; and A method of operation of an electronic device further comprising the operation of storing a sentence included in the above-mentioned setting information as additional setting information other than the above-mentioned template.
15. In Paragraph 12, An operation to perform duplicate removal using a hash map for a plurality of setting values collected from the first setting information and the second setting information; An operation to assign order to a portion of multiple setting values from which duplicates have been removed in the above hash map using sorting; and A method of operation of an electronic device further comprising the operation of generating the above template by mapping the above sequence and variable names.