Transmission Frequency Management for Edge Devices in Interconnected Distributed Networks
Patent Information
- Application Number
- JP2022528726
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Priority Date
- 2019-11-20
- Filing Date
- 2020-11-12
- Publication Date
- 2025-02-20
- Estimated Expiration
- 2040-11-12
Smart Images

Figure 0007633755000007 
Figure 0007633755000008 
Figure 0007633755000009
Abstract
Description
[Technical field]
[0001] The present invention relates generally to the field of distributed networks, and more particularly to a method for managing transmission frequencies for multiple edge devices of an interconnected distributed network. [Background technology]
[0002] An edge device is a device that provides an entry point into an enterprise or service provider's core network. Examples include routers, routing switches, integrated access devices (IADs), multiplexers, and various metropolitan area network (MAN) and wide area network (WAN) access devices. Edge devices also provide connectivity to carrier and service provider networks. Edge devices that connect local area networks to high-speed switches or backbones may be called edge concentrators. In general, edge devices are usually routers that provide authenticated access (most commonly PPPoA and PPPoE) to faster and more efficient backbone and core networks. Therefore, core networks are often designed with switches that use routing protocols such as Open Shortest Path First (OSPF) or Multiprotocol Label Switching (MPLS) for reliability and scalability, allowing edge routers to have redundant links to the core network. The links between the core networks are different; for example, Border Gateway Protocol (BGP) routers are often used for peering exchanges.
[0003] In a typical interconnected distributed network, data from various sensors and edge devices are collected, transmitted through gateways and clouds, and stored in a database for analysis. However, the data flow write frequency (DFWF) at which all devices in the interconnected distributed network can actually write to the database is typically limited by the maximum write frequency (MWF). For example, an edge device may be configured to allow 10 writes / second for basic / standard users and 50 writes / second for advanced / power users in some commercial applications. Thus, the performance of devices in an interconnected distributed network may be limited by write rate constraints if the MWF is not properly managed. Summary of the Invention
[0004] An embodiment of the present invention discloses a computer-implemented method, computer program product, and system for managing transmission frequencies for a plurality of edge devices of an interconnected distributed network. The computer-implemented method includes one or more computer processors determining a maximum write frequency (MWF) for the interconnected distributed network. The one or more computer processors iteratively process values of a data flow write frequency (DFWF) for the plurality of edge devices of the interconnected distributed network according to an optimization algorithm based on the MWF to identify convergence of values of the DFWF, each iteration of the processing of values including, at each edge device in the plurality of edge devices, determining a value of the DFWF based on an associated utility function of the respective edge device, the utility function being a measure of the utility of the device as a function of the DFWF. In response to identifying the convergence, the one or more computer processors determine a converged value of the DFWF that results in an optimal value of the DFWF for the plurality of edge devices.
[0005] According to one aspect, a computer-implemented method is provided that includes one or more computer processors determining a maximum write frequency (MWF) for an interconnected distributed network; and one or more computer processors iterating values of a data flow write frequency (DFWF) for a plurality of edge devices of the interconnected distributed network, the method following an optimization algorithm based on the MWF to identify convergence in values of the DFWF, each iteration of the processing of the values including, at each edge device in the plurality of edge devices, determining a value of the DFWF based on an associated utility function of the respective edge device, the utility function being a measure of the device's utility as a function of the DFWF; and in response to identifying convergence, the one or more computer processors determining a converged value of the DFWF that results in an optimal value of the DFWF for the plurality of edge devices.
[0006] According to another aspect, a computer program product is provided that includes one or more computer-readable storage media and program instructions stored on the one or more computer-readable storage media, the stored program instructions including: program instructions for determining a maximum write frequency (MWF) for the distributed network; program instructions for iteratively processing values of a data flow write frequency (DFWF) for a plurality of edge devices of the interconnected distributed network according to an optimization algorithm based on the MWF to identify convergence in values of the DFWF, each iteration of processing the values including, at each edge device, determining a value of the DFWF based on an associated utility function of the edge device, the utility function defining a measure of device utility as a function of the DFWF; and program instructions for determining a convergence value of the DFWF in response to identifying the convergence, the convergence value being an optimal value of the DFWF for the edge device.
[0007] According to another aspect, a system is provided that includes a processing component configured to determine a maximum write frequency (MWF) for a distributed network; a plurality of edge devices of the interconnected distributed network, each edge device in the plurality of edge devices configured to determine a data flow write frequency (DFWF) value based on an associated utility function of the respective edge device, the utility function defining a measure of the device's utility as a function of the DFWF; and an optimization arrangement configured to iterate through values of the DFWF for the plurality of edge devices according to an optimization algorithm based on the MWF to identify convergence in values of the DFWF, and in response to identifying the convergence, determine a convergence value of the DFWF that results in an optimal value of the DFWF for the edge device.
[0008] Embodiments of the present invention will now be described, by way of example only, with reference to the accompanying drawings in which: [Brief description of the drawings]
[0009] [Figure 1] 1 is a pictorial representation of an exemplary distributed system in accordance with one embodiment of the present invention. [Diagram 2] 1 is a block diagram of an exemplary system according to one embodiment of the present invention. [Figure 3A] 1 is a schematic diagram of a proposed distributed communication system according to an embodiment of the present invention; [Figure 3B] FIG. 2 is a schematic diagram illustrating an algorithm iteration according to an embodiment of the present invention. [Figure 4] 1 is a simplified flow diagram of a method according to one embodiment of the present invention. [Diagram 5] FIG. 1 illustrates a system according to one embodiment of the present invention. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0010] The present invention relates generally to the field of distributed networks, and more particularly to a method for managing transmission frequencies for a plurality of edge devices of an interconnected distributed network. The present invention also relates to a computer program product comprising computer readable program code enabling a processor of the system, or several processors of the network, to implement such a method. The present invention also relates to a system for managing transmission frequencies for a plurality of edge devices of an interconnected distributed network. The present invention seeks to provide a method for managing transmission frequencies for a plurality of edge devices of an interconnected distributed network. Such a method may be computer implemented.
[0011] The invention further provides a computer program product comprising a computer program code which, when executed by a processing unit, implements the proposed method. The invention also provides a processing system adapted to execute the computer program code. The invention also provides a system for managing transmission frequencies for a plurality of edge devices of an interconnected distributed network. According to one embodiment of the invention, a computer-implemented method for managing transmission frequencies for a plurality of edge devices of an interconnected distributed network is provided. The method includes determining a maximum write frequency (MWF) for the distributed network. The method also includes iteratively processing values of the DFWF for the edge devices according to an optimization algorithm based on the MWF to identify convergence of values of the Data Flow Write Frequency (DFWF). Each iteration of processing the values includes, at each edge device, determining a value of the DFWF based on an associated utility function of the edge device, the utility function defining a measure of the utility of the device as a function of the DFWF. In response to identifying the convergence, the method determines a convergence value of the DFWF that results in an optimal value of the DFWF for the edge device.
[0012] A concept is proposed for transmission frequency management for edge devices in a decentralized architecture (i.e., an interconnected distributed network). In such a concept, the MWF can be optimized with respect to a plurality (e.g., a group) of IoT devices. For such optimization, each edge device can have an associated utility function. The utility function can represent how much a user actually benefits from the device for a given DFWF. In other words, the associated utility function of a device can define a measure of the device's utility as a function of the DFWF. As an example, in a machine learning application, the utility function can model the accuracy of a trained model with respect to the device's DFWF.
[0013] An embodiment of the present invention may attempt to maximize the overall utility of multiple edge devices given the MWF of the distributed network to which the edge devices are connected. In particular, the proposed embodiment may employ an optimization algorithm that is distributed across the gateway device and multiple edge devices such that the privacy of the edge devices is preserved. For example, the utility function may be defined locally at each edge device and may not be revealed to any other third party devices or management platforms, including the gateway device that implements part of the optimization algorithm used by an embodiment.
[0014] Embodiments of the present invention are directed to the concept of using a decentralized optimization algorithm that preserves the privacy of utility functions associated with multiple edge devices. In this manner, embodiments can provide optimized management of transmission frequencies while maintaining the privacy of sensitive / confidential utility information for edge devices in a distributed network. In particular, it is proposed to leverage a decentralized privacy-respecting algorithm with respect to existing distributed communication architectures (e.g., IoT architectures).
[0015] In embodiments of the present invention, the workload scheduling problem can be modeled as a constrained convex / concave optimization problem. Instead of looking at the privacy of the workload, the main focus of the proposed embodiments can be to protect user-defined edge device (e.g., IoT) sensitive information (e.g., utility functions), which can capture / describe, for example, the importance of a particular device in a distributed network. As an example, in some embodiments, the transmission frequency can be optimally calculated depending on external system resources as well as addressing user-customizable preferences.
[0016] Some embodiments of the present invention use a collaborative distributed algorithm to optimally calculate the transmission frequency of the edge devices in a plug-and-play and privacy-respecting manner. As a result of such a distributed approach, the edge devices, e.g., higher-level nodes relative to the gateway, need only collect limited information of the edge devices for computation purposes and therefore do not require full access to the utility functions of the edge devices. In some embodiments, the associated utility functions of the devices may be generated or defined in advance (e.g., based on user input signals and / or control signals), while other embodiments may be configured to generate such utility functions (e.g., based on user input signals). Thus, some embodiments may further include, at each edge device, determining a utility function for the device and associating the determined utility function with the device. In this way, improved flexibility may be provided. Also, dynamic updating or recalculation of the utility functions may be facilitated.
[0017] The iterative process may be partially undertaken by non-edge devices of the interconnected distributed network. For example, a gateway may undertake part of the optimization process. In this manner, a decentralized optimization approach may be used that prevents the local utility functions of the edge devices from being revealed or exposed. Thus, embodiments may involve a gateway as part of the iterative process. In other words, a gateway may undertake part of the optimization process and a non-edge device may undertake part of the optimization process to implement a decentralized / distributed optimization process configuration.
[0018] A first edge device of the plurality of edge devices may have an associated utility function that includes a continuously differentiable, non-decreasing, concave function. For example, the associated utility function of the first edge device may be modeled as a family of weighted logarithmic functions. Other convex / concave functions may also be used for the utility function. Also, a logarithmic function, e.g., y=log(x), is a continuously differentiable and non-decreasing concave function. However, according to the proposed embodiment, the utility function need not be continuously non-decreasing. For example, a concave function may be non-decreasing in some intervals and decreasing in other intervals. Thus, according to the embodiment, the utility function associated with the first edge device may be continuously differentiable and may have a decreasing first derivative. The optimization algorithm may include an Alternating Direction Method of Multipliers (ADMM) algorithm. This is just one example of a distributed algorithm that may be used. Other different distributed algorithms may be used, including the well-known dual split method. Thus, the proposed embodiments may leverage well-known and established distributed algorithms, thereby reducing the cost and / or complexity associated with implementing the proposed embodiments.
[0019] Some embodiments may further include communicating the optimal value of the DFWF to their respective edge devices. In this manner, an optimal DFWF value may be set for each edge device, and the edge devices may then begin to push data to the distributed network. Note that the data passed through the distributed network may also be stored in an off-premises database (e.g., cloud) for further data analysis and / or visualization. This embodiment may further include iterating the values of the DFWF for the edge devices according to the MWF-based optimization algorithm to identify a new convergence of the values of the DFWF in response to changes in the operating parameters of the interconnected distributed network, and in response to identifying the new convergence, determining a new convergence value of the DFWF that becomes the new optimal value of the DFWF for the edge devices.
[0020] Compared to conventional approaches, the proposed embodiments may provide one or more of the following advantages: (i) the utility function may be customizable in any practical scenario (with some concavity assumptions); (ii) there is no direct control of the sampling rate of the edge devices, which is usually complicated; instead, the embodiments may calculate the optimal write frequency for each device subject to the MWF constraints; (iii) the decentralized architecture has high scalability for various device accesses; (iv) the optimal solution may be calculated without revealing any information about the utility function; (v) the optimal solution may be adaptively recalculated when external configurations change, e.g., when the MWF, the number of edge devices (as a result of edge devices being disconnected / connected), etc.; and (vi) the proposed embodiments may be used, among others, in security-related applications, e.g., in financial systems, to prevent critical edge devices from being exposed to external malicious attackers.
[0021] According to another embodiment of the present invention, there is a computer program product. The computer program product comprises a computer readable storage medium having program instructions embodied therein, the program instructions being executable by a processing unit to cause the processing unit to perform a method according to the proposed embodiment. According to another embodiment of the present invention, there is provided a computer system comprising at least one processor and a computer program product. The at least one processor is adapted to execute the computer program code of the computer program product. According to yet another embodiment of the present invention, there is provided a system for managing transmission frequencies for a plurality of edge devices of an interconnected distributed network. The system comprises a processing component configured to determine a maximum write frequency (MWF) for the distributed network. The system also comprises a plurality of edge devices. Each edge device is configured to determine a data flow write frequency (DFWF) value based on an associated utility function of the edge device, the utility function defining a measure of the device's utility as a function of the DFWF. The system also includes an optimization component configured to iteratively process values of the DFWF for the edge device according to an optimization algorithm based on the MWF to identify convergence in a value of the DFWF, and in response to identifying the convergence, determine a converged value of the DFWF that results in an optimal value of the DFWF for the edge device.
[0022] In the context of the present application, where an embodiment of the invention constitutes a method, it will be understood that such a method may be a process for execution by a computer, i.e. a computer-implementable method, and thus the various steps of the method may reflect various portions of a computer program, e.g. various portions of one or more algorithms.
[0023] Also, in the context of this application, a system may be a single device or a group of distributed devices adapted to perform one or more embodiments of the method of the present invention. For example, a system may be a personal computer (PC), a server, or a group of PCs and / or servers connected via a network, such as a local area network, the Internet, etc., to cooperatively perform at least one embodiment of the method of the present invention. Furthermore, an edge device may be an Internet of Things (IoT) device configured to be communicatively coupled to the edge of an interconnected distributed network.
[0024] A concept is proposed for transmission frequency management for edge devices in a decentralized architecture (i.e., an interconnected distributed network). In such a concept, the MWF can be optimized with respect to a plurality (e.g., a group) of IoT devices. Such optimization can use optimization algorithms that are distributed across non-edge devices and edge devices such that the privacy of the edge devices is preserved. For example, the utility function may be defined locally at each edge device and may not be revealed to any other third party devices or management platforms, including non-edge devices that implement parts of the optimization algorithm.
[0025] The concept of using a decentralized optimization algorithm that preserves the privacy of utility functions associated with multiple edge devices is proposed. As a result of such a decentralized approach, a node superior to the edge devices (e.g., a gateway) only needs to collect limited information of the edge devices for computational purposes and therefore does not need full access to the edge devices' utility functions. In this manner, embodiments can provide optimized management of transmission frequencies while maintaining privacy of sensitive / confidential utility information for edge devices in a distributed network. In particular, embodiments can leverage decentralized privacy-respecting algorithms in the context of existing distributed communication architectures (e.g., IoT architectures).
[0026] Implementation of embodiments of the invention may take various forms, and details of exemplary implementations are subsequently described with reference to the figures. It should be understood that the figures are only schematic and not to scale. It should also be understood that the same reference numbers are used throughout the figures to designate the same or similar parts.
[0027] Next, preferred embodiments of the present invention will be described in detail with reference to the drawings.
[0028] 1 illustrates a diagrammatic representation of an exemplary distributed system in which aspects of the exemplary embodiments may be implemented. Distributed system 100 may include a network of computers in which aspects of the exemplary embodiments may be implemented. Distributed system 100 includes at least one network 102, which is the medium used to provide communications links between various devices and computers connected together in distributed data processing system 100. Network 102 may include connections such as wires, wireless communication links, or fiber optic cables.
[0029] In the illustrated example, a first server 104 and a second server 106 are connected to the network 102 along with a storage unit 108. In addition, clients 110, 112, and 114 are also connected to the network 102. The clients 110, 112, and 114 may be edge devices, such as personal computers, network computers, IoT devices, and the like. In the illustrated example, the first server 104 provides data, such as boot files, operating system images, and applications, to the clients 110, 112, and 114. The clients 110, 112, and 114 are clients to the first server 104 in the illustrated example. The distributed processing system 100 may include additional servers, clients, and other devices not shown.
[0030] In the illustrated example, distributed system 100 is the Internet with network 102 representing a worldwide collection of networks and gateways that use the Transmission Control Protocol / Internet Protocol (TCP / IP) suite of protocols to communicate with one another. At the heart of the Internet is a backbone of high-speed data communication lines between major nodes or host computers consisting of thousands of commercial, government, educational, and other computer systems that route data and messages. Of course, distributed system 100 may be implemented to include several different types of networks, such as, for example, intranets, local area networks (LANs), wide area networks (WANs), and the like. As noted above, FIG. 1 is intended as an example and not as architectural information for different embodiments of the present invention, and thus the particular elements illustrated in FIG. 1 should not be considered as limitations with respect to the environments in which the illustrated embodiments of the present invention may be implemented.
[0031] 2 shows a block diagram of an example system 200 in which aspects of the example embodiments may be implemented. System 200 is an example of a computer, such as client 110 of FIG. 1, in which computer usable code or instructions implementing processes for the example embodiments of the present invention may be located. For example, the proposed embodiments may be implemented in part in processing unit 206 of system 200.
[0032] In the illustrated example, system 200 employs a hub architecture including a north bridge and memory controller hub (NB / MCH) 202 and a south bridge and input / output (I / O) controller hub (SB / ICH) 204. Accordingly, another proposed embodiment may be implemented in memory controller hub 202 of system 200. A processing unit 206, a main memory 208, and a graphics processor 210 are connected to NB / MCH 202. Graphics processor 210 may be connected to NB / MCH 202 through an accelerated graphics port (AGP).
[0033] In the illustrated example, a local area network (LAN) adapter 212 connects to the SB / ICH 204. An audio adapter 216, a keyboard and mouse adapter 220, a modem 222, a read-only memory (ROM) 224, a hard disk drive (HDD) 226, a CD-ROM drive 230, a universal serial bus (USB) port and other communication ports 232, and a PCI / PCIe device 234 connect to the SB / ICH 204 through a first bus 238 and a second bus 240. The PCI / PCIe devices may include, for example, an Ethernet adapter, an add-in card, and a PC card for a notebook computer. PCI uses a card bus controller while PCIe does not. The ROM 224 may be, for example, a flash basic input / output system (BIOS).
[0034] The HDD 226 and CD-ROM drive 230 connect to the SB / ICH 204 through a second bus 240. The HDD 226 and CD-ROM drive 230 may use, for example, an Integrated Drive Electronics (IDE) or Serial ATA (SATA) interface. A Super I / O (SIO) device 236 may connect to the SB / ICH 204.
[0035] An operating system executes on the processing unit 206. The operating system coordinates and controls the control of various components within the system 200 of FIG. 2. As a client, the operating system may be a commercially available operating system. An object oriented programming system may execute in conjunction with the operating system and make calls to the operating system from multiple programs or applications executing on the system 200.
[0036] As a server, system 200 may be, for example, a computer system running an open source operating system. System 200 may be a symmetric multi-processor (SMP) system that includes multiple processors within processing unit 206.
[0037] Alternatively, a single processor system may be used. Instructions for the operating system, programming system, and applications or programs may be located in a storage device, such as HDD 226, and loaded into main memory 208 for execution by processing unit 206. Similarly, one or more programs according to an embodiment may be stored by a storage device or main memory 208, or both.
[0038] The processes for the exemplary embodiments of the present invention may be performed by the processing unit 206 using computer usable program code, which may be located, for example, in a memory such as main memory 208, ROM 224, or in one or more peripheral devices 226 and 230.
[0039] A bus system, such as first bus 238 or second bus 240 as shown in FIG. 2, may comprise one or more buses. In an embodiment, the bus system may be implemented using any type of communications fabric or architecture that provides for a transfer of data between different components or devices connected to the fabric or architecture. A communications unit, such as modem 222 or network adapter 212 of FIG. 2, may include one or more devices used to transmit and receive data. A memory may be, for example, main memory 208, ROM 224, or a cache, such as found in NB / MCH 202 of FIG. 2.
[0040] Those skilled in the art will appreciate that the hardware in Figures 1 and 2 may vary depending on the implementation. Other internal hardware or peripheral devices, such as flash memory, equivalent non-volatile memory, or optical disk drives, etc., may be used in addition to or in place of the hardware depicted in Figures 1 and 2. Additionally, the processes of the illustrative embodiments may be applied to multiprocessor data processing systems other than those previously described without departing from the scope of the present invention.
[0041] Moreover, system 200 can take the form of any of a number of different data processing systems, including a client computing device, a server computing device, a tablet computer, a laptop computer, a telephone or other communications device, a personal digital assistant (PDA), etc. In some illustrative examples, system 200 can be a portable computing device configured with, for example, flash memory to provide non-volatile memory for storing operating system files and / or user-generated data. Thus, system 200 can be essentially any known or later developed data processing system having no architectural limitations.
[0042] As discussed above, the proposed embodiments provide a method and system for privacy-respecting transmission frequency management that optimizes edge devices in a distributed communication network. For further explanation, the proposed embodiments will now be described in conjunction with an IoT edge device.
[0043] 3A shows a schematic diagram of the proposed distributed communication system according to one embodiment. The system 300 comprises four main components: IoT devices 310, gateways 320, a cloud network platform 330, and users 340. The exemplary system also comprises a data storage system 350 that is accessible via the cloud network platform 330 and also directly by the users 340. The system 300 also includes a data visualization component to facilitate data analysis.
[0044] The main functionality of each of the four main components is summarized as follows: IoT Device 310: An edge device such as a sensor or device connected to the Gateway 320 that has the ability to define a utility function to solve the optimization problem of interest in a decentralized manner; Gateway 320: Collects data from the IoT devices / sensors and sends the data to the Cloud Network Platform 330, which performs basic data processing tasks; Cloud Network Platform 330: A central hub for data analysis, monitoring, and storage; User 340: An owner of the IoT Device 310 who wants to facilitate the device within a certain area for some application.
[0045] Consider an example with N IoT devices 310 connected to a gateway 320. The utility function associated with the i-th device is f i (x i ) with the maximum write frequency (MWF) per time slot. Then, with the maximum write frequency (MWF) per time slot, a user U may wish to determine the optimal data flow write frequency (DFWF) of the transmission rate for all IoT devices 310 such that the overall utility of the entire group of IoT devices 310 is maximized. Mathematically, this optimization problem can be expressed using the following equations (Equation 1 and Equation 2), where x i If ≧0,
number
[0046] In this example, each utility function f i We assume that the utility function f can be modeled as a continuously differentiable, non-decreasing, strictly concave function. This is a common assumption found in modeling Internet traffic behavior. As an example, let us assume that the utility function f i can be modeled as a set of weighted logarithmic functions that represent the proportional fairness pattern of optimal resource allocation for user U. To solve the above optimization problem, it is proposed to employ a distributed algorithm iteratively on each IoT edge device 310 such that the optimal DFWF can be determined when the algorithm converges. A schematic diagram of the algorithm iteration is shown in Fig. 3B.
[0047] 3B, each IoT device 310 can be interpreted as either a physical entity, e.g., a Raspberry Pi device, or a “virtual device”, i.e., any other type of sensor or device that will be available for interaction with the system. The gateway 320 also includes a processing component 370 configured to determine a MWF for the distributed network, and an optimization component 380 configured to iterate through values of the DFWF for the edge devices according to an optimization algorithm based on the MWF to identify convergence of values of the DFWF.
[0048] To solve the optimization problem, for completeness, the steps for an exemplary implementation of the algorithm are: (3) Initialization: k=0, x i (k) = 0, y(k) = y0, α(k) = α0 It can be expressed as
number
number
number
number
number
[0049] FIG. 4 shows a simplified flow diagram of an exemplary embodiment.
[0050] Step 410 - Initialization: During the initialization phase, the user specifies several parameters before executing the algorithm, including, for example, the number of IoT devices, the available MWF, and the utility function associated with each device.
[0051] Step 420 - Calculate optimal DFWF: After the initialization is completed, the ADMM algorithm is implemented to find the optimal DFWF for each device.
[0052] Step 430 - Check for convergence: The algorithm is performed in an iterative manner to check if the algorithm has converged to an optimum. If convergence is not determined, the method returns to step 420. If convergence is determined, the method proceeds to step 430.
[0053] Step 440 - Push data to network: When the algorithm converges, the optimal DFWF is set for each device, and then the devices can start pushing data to the cloud. Note that the data that passes through the cloud may eventually be stored in a cloud database for further data analysis and visualization.
[0054] Step 450 - Check for parameter changes: If there are any parameters that have changed during runtime, the system stops pushing data to the cloud and the algorithm dynamically incorporates the changes to return to step 420 and recalculate the optimal solution given the new set of parameters.
[0055] 5 illustrates a block diagram of components of a computer system 70 that may form part of a networked system 7 in accordance with an example embodiment of the invention. It should be understood that FIG. 5 is intended to provide an example of one implementation and is not intended to imply any limitations with respect to the environments in which different embodiments may be implemented. Many modifications to the depicted environment may be made.
[0056] In one example, a processing component configured to determine a MWF for a distributed network according to an embodiment may be implemented in a computer system 70 (e.g., as a processing unit 71). The components of the computer system / server 70 may include, but are not limited to, one or more processing configurations, such as a processor or processing unit 71, a system memory 74, and a bus 90 coupling various system components including the system memory 74 to the processing unit 71. The system memory 74 may include computer system readable media in the form of volatile memory, such as random access memory (RAM) 75 and / or cache memory 76. The computer system / server 70 may further include other removable / non-removable volatile / non-volatile computer system storage media. In such an example, each may be connected to the bus 90 by one or more data media interfaces. The memory 74 may include at least one program product having a set (e.g., at least one) program module configured to perform the functions of the proposed embodiment. For example, the memory 74 may include a computer program product having a program executable by the processing unit 71 to cause the input / output (I / O) interface 72 to perform a method according to the proposed embodiments. A program / utility 78 having a set (at least one) program module 79 may be stored in the memory 74. The program module 79 generally performs the functionality and / or methodology of the proposed embodiments for a partial write operation to memory.
[0057] The computer system / server 70 may also communicate with one or more external devices 80, such as a keyboard, a pointing device, a display 85, or the like, one or more devices that allow a user to interact with the computer system / server 70, or any device (e.g., a network card, a modem, etc.) that allows the computer system / server 70 to communicate with one or more other computing devices, or a combination thereof. Such communication may occur via an input / output (I / O) interface 72. Furthermore, the computer system / server 70 may communicate with one or more networks, such as a local area network (LAN), a general wide area network (WAN), or a public network (e.g., the Internet), or a combination thereof, via a network adapter 73 (e.g., to communicate the determined optimal value of the DFWF to edge devices of the distributed network).
[0058] In the context of this application, where an embodiment of the invention constitutes a method, it will be understood that such method is a process for computer execution, i.e. a computer implementable method, and thus the steps of the method reflect various portions of a computer program, e.g. portions of one or more algorithms.
[0059] The programs described herein are identified based on the application in which the programs are implemented in a particular embodiment of the invention. However, it should be understood that any particular program nomenclature herein is used merely for convenience, and thus the invention should not be limited to use in only any particular application identified and / or implied by such nomenclature. The invention may be a system, a method, or a computer program product, or a combination thereof. The computer program product may include a computer-readable storage medium (or media) having computer-readable program instructions thereon for causing a processor to perform aspects of the invention.
[0060] A computer readable storage medium may be a tangible device capable of holding and storing instructions for use by an instruction execution device. A computer readable storage medium may be, for example, but not limited to, an electronic storage device, a magnetic storage device, an optical storage device, an electromagnetic storage device, a semiconductor storage device, or any suitable combination of the above. A non-exhaustive list of more specific examples of computer readable storage media includes portable computer diskettes, hard disks, random access memory (RAM), read only memory (ROM), erasable programmable read only memory (EPROM or flash memory), static random access memory (SRAM), portable compact disk read only memory (CD-ROM), digital versatile disk (DVD), memory sticks, floppy disks, mechanically encoded devices such as punch cards or ridge structures in grooves with instructions recorded on them, and any suitable combination of the above. As used herein, a computer-readable storage medium should not be construed as a transitory signal per se, such as electric waves or other freely propagating electromagnetic waves, electromagnetic waves propagating through a waveguide or other transmission medium (e.g., light pulses passing through a fiber optic cable), or electrical signals transmitted over electrical wires.
[0061] The computer readable program instructions described herein may be downloaded from a computer readable storage medium to the respective computing / processing device or to an external computer or storage device via a network, such as the Internet, a local area network, a wide area network, or a wireless network, or a combination thereof. The network may include copper transmission cables, optical transmission fiber, wireless transmission, routers, firewalls, switches, gateway computers, or edge servers, or a combination thereof. A network adapter card or network interface in each computing / processing device receives the computer readable program instructions from the network and routes the computer readable program instructions for storage in a computer readable storage medium within the respective computing / processing device.
[0062] The computer readable program instructions for carrying out the operations of the present invention may be source code or object code written in any combination of one or more programming languages, including assembler instructions, instruction set architecture (ISA) instructions, machine instructions, machine dependent instructions, microcode, firmware instructions, state setting data, or object oriented programming languages such as Smalltalk®, C++, etc., and conventional procedural programming languages such as the “C” programming language or similar programming languages, as well as low level programming languages such as quantum programming languages, assembly languages, or similar programming languages, such as the “Q” programming language (Q#), Quantum Computing Language (QCL), or similar programming languages. The computer readable program instructions may be executed exclusively on the user's computer, partially on the user's computer as a standalone software package, partially on the user's computer and partially on a remote computer, or exclusively on a remote computer or server. In the latter scenario, the remote computer may be connected to the user's computer through any type of network, including a local area network (LAN) or wide area network (WAN), or a connection to an external computer may be made (e.g., through the Internet using an Internet Service Provider). In some embodiments, electronic circuitry, including, for example, programmable logic circuitry, field programmable gate arrays (FPGAs), or programmable logic arrays (PLAs), may execute computer readable program instructions to personalize the electronic circuitry by utilizing state information of the computer readable program instructions to perform aspects of the invention.
[0063] Aspects of the present invention are described herein with reference to flowchart illustrations and / or block diagrams of methods, apparatus (systems) and computer program products according to embodiments of the invention. It will be understood that each block of the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer readable program instructions.
[0064] These computer readable program instructions may be provided to a processor of a general purpose computer, special purpose computer, or other programmable data processing apparatus to produce a machine, such that the instructions, executed by the processor of the computer or other programmable data processing apparatus, produce means for implementing the functions / operations specified in one or more blocks of the flowcharts and / or block diagrams. These computer readable program instructions may also be stored in a computer readable storage medium, capable of directing a computer, programmable data processing apparatus, or other device, or combination thereof, to function in a particular manner, such that the computer readable storage medium having the instructions stored therein comprises an article of manufacture containing instructions implementing aspects of the functions / operations specified in one or more blocks of the flowcharts and / or block diagrams.
[0065] The computer readable program instructions may also be loaded onto a computer, other programmable data processing apparatus, or other device such that the instructions, which execute on a computer, other programmable apparatus, or other device, implement the functions / operations specified in one or more blocks of the flowcharts and / or block diagrams, causing a series of operational steps to be performed on the computer, other programmable apparatus, or other device to result in a computer-implemented process.
[0066] The flowcharts and block diagrams in the figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments of the present invention. In this regard, each block in the flowcharts or block diagrams may represent a module, segment, or part of instructions comprising one or more executable instructions for implementing a specified logical function. In some alternative implementations, the functions shown in the blocks may be performed out of the order shown in the figures. For example, two blocks shown in succession may in fact be executed substantially simultaneously, or the blocks may possibly be executed in reverse order depending on the functionality involved. It should also be noted that each block in the block diagrams and / or flowchart illustrations, and combinations of blocks in the block diagrams and / or flowchart illustrations, may be implemented by a dedicated hardware-based system that performs the specified functions or operations, or executes a combination of dedicated hardware and computer instructions. The description of various embodiments of the present invention is provided for illustrative purposes, but is not intended to be exhaustive or limited to the disclosed embodiments. Many modifications and variations will be apparent to those skilled in the art without departing from the scope and spirit of the present invention. The terminology used in this specification is selected to best explain the principles of the embodiments, practical applications, or technical improvements over the art found in the market, or to enable those skilled in the art to understand the embodiments disclosed herein.
Claims
1. 1. A computer-implemented method comprising: determining, by one or more computer processors, a maximum write frequency (MWF) by a plurality of edge devices of a user of an interconnected distributed network based on information of the user; one or more computer processors iteratively processing values of a database data flow write frequency (DFWF) for each of the plurality of edge devices of the interconnected distributed network, the method following an optimization algorithm based on the MWF to identify convergence of the values of the DFWF, each iteration of processing the values including, at each edge device in the plurality of edge devices, determining a value of DFWF based on an associated utility function of the respective edge device, the utility function being a measure of the utility of the device as a function of DFWF; In response to identifying the convergence, one or more computer processors determine a convergence value of the DFWF that results in an optimal value of the DFWF for the plurality of edge devices.
4. A computer-implemented method comprising:
2. Each iteration of the processing of the values comprises: transmitting parameters to the plurality of edge devices; updating, at each edge device in the plurality of edge devices, a value of the DFWF using the parameter in addition to the utility function; updating the parameters based on the DFWF values and the MWF of the edge devices; The method of claim 1 , comprising:
3. At each edge device in the plurality of edge devices, one or more computer processors determine a utility function for the device and associate the determined utility function with the respective edge device. The method of claim 1 or claim 2, further comprising:
4. 4. The method of claim 1, wherein the iterative processing step is undertaken partially at non-edge devices of the interconnected distributed network and partially at each edge device within the plurality of edge devices of the interconnected distributed network.
5. 5. The method of claim 1, wherein a first edge device in the plurality of edge devices has an associated utility function that comprises a continuously differentiable, non-decreasing, concave function.
6. The method of claim 5 , wherein the associated utility function of the first edge device is modeled as a family of weighted logarithmic functions.
7. one or more computer processors communicating the optimal value of the DFWF to each edge device. The method of any one of claims 1 to 6, further comprising:
8. one or more computer processors iterating through values of the DFWF for the plurality of edge devices according to an optimization algorithm based on the MWF to identify a new convergence in a value of the DFWF in response to changes in operating parameters of an interconnected distributed network, and determining a new convergence value of the DFWF that becomes a new optimal value of the DFWF for the plurality of edge devices in response to identifying the new convergence. The method of any one of claims 1 to 7, further comprising:
9. A computer-readable storage medium having recorded thereon a computer program for causing a computer to execute each step of the method according to any one of claims 1 to 8.
10. 1. A system comprising: A processing component configured to determine a maximum write frequency (MWF) by a plurality of edge devices of a user of a distributed network based on information of the user; a plurality of edge devices of an interconnected distributed network, each edge device in the plurality of edge devices configured to determine a value of a data flow write frequency (DFWF) to a database of the respective edge device based on an associated utility function of the respective edge device, the utility function defining a measure of utility of the device as a function of the DFWF; an optimization arrangement configured to iteratively process values of the DFWF for the edge devices according to an optimization algorithm based on the MWF to identify a convergence of a value of the DFWF, and in response to identifying the convergence, determine a converged value of the DFWF that results in an optimal value of the DFWF for the edge device; A system comprising:
11. Each of the iterative processes comprises: transmitting parameters to the plurality of edge devices; updating, at each edge device in the plurality of edge devices, a value of the DFWF using the parameter in addition to the utility function; updating the parameters based on the DFWF values and the MWF of the edge devices; The system of claim 10 , comprising:
12. 12. The system of claim 10 or claim 11, wherein each edge device is configured to determine a utility function for the device and to associate the determined utility function with the device.
13. 13. The system of claim 10, wherein the optimized configuration includes non-edge devices of the interconnected distributed networks and the edge devices of the interconnected distributed networks.
14. 14. The system of claim 10, wherein a first edge device of the plurality of edge devices has an associated utility function that comprises a continuously differentiable, non-decreasing, concave function.
15. 15. The system of claim 14, wherein the associated utility function of the first edge device is modeled as a family of weighted logarithmic functions.
16. The optimization configuration includes: iterating values of the DFWF for the plurality of edge devices according to an optimization algorithm based on the MWF to identify new convergence of values of the DFWF in response to changes in operating parameters of an interconnected distributed network; In response to identifying the new convergence, determining a new convergence value of the DFWF, the new convergence value being a new optimal value of the DFWF for the plurality of edge devices. The system of any one of claims 10 to 15, further configured to:
17. A computer program product causing a computer to carry out the steps of the method according to any one of claims 1 to 8.
Citation Information
Patent Citations
Speed distribution method in wireless body area network based on Stankelberg game
CN109413698A
Data prediction device, method, and program
JP2019185163A
Device for negotiating an optimized resource allocation
US20190303828A1