METHOD AND DEVICE FOR PREDICTING LOCAL NETWORK CONNECTIVITY DEMAND
Local network agents with automatic learning models enhance prediction accuracy and adaptability, enabling dynamic infrastructure reconfiguration to address variability and seasonality in network demand, improving network management efficiency.
Patent Information
- Application Number
- FR2023004169
- Authority / Receiving Office
- FR · FR
- Patent Type
- Utility models
- Current Assignee / Owner
- Filing Date
- 2023-04-25
- Publication Date
- 2025-05-02
- Estimated Expiration
- 2033-04-25
AI Technical Summary
Current information technology infrastructure systems lack the ability to adapt to demand changes and do not account for the variability and seasonality of network usage, leading to unreliable predictions and suboptimal infrastructure management.
Implementing local network agents with automatic learning models that formulate long-term predictions and update them iteratively, using decision trees or other algorithms on low-resource devices, and leveraging central authority models for higher resource systems to make real-time local decisions and store data for centralized analysis.
Enhances prediction accuracy by adapting to demand changes and external events, allowing for dynamic reconfiguration of infrastructure to prevent connectivity issues, thus optimizing network management.
Smart Images

Figure 00000033_0000 
Figure 00000034_0000 
Figure 00000035_0000
Abstract
Description
Title of the invention: METHOD AND DEVICE FOR PREDICTING LOCAL NETWORK CONNECTIVITY DEMAND Technical field of the invention
[0001] The present invention relates to a method for predicting local network connectivity demand and a device for predicting local network connectivity demand. It is particularly applicable to the field of information technology infrastructure management.
[0002] Context of the invention
[0003] The approaches described in this section are approaches that can be pursued, but not necessarily approaches that have been conceived or pursued previously. Therefore, unless otherwise indicated, it should not be presumed that all the approaches described in this section are considered to be part of the prior art simply because they are included in this section.
[0004] The perpetual increase in the consumption of digital information puts information technology infrastructures under pressure, which can lead to connectivity problems (increased response times, disconnections, faulty information transfer).
[0005] The reasons which have an impact on these infrastructures vary considerably in nature and seasonality.
[0006] In current systems, monitoring agents are integrated into network devices and configured to report, according to determined agent operational parameters, at the request of said network devices.
[0007] These infrastructures are limited in their ability to adapt to changes in demand, given their limited demand prediction capabilities.
[0008] These systems, limited to network demand analysis, also fail to take into account the reasons for infrastructure use, which may have its own variation in nature and seasonality.
[0009] Consequently, there are currently no reliable tools for predicting demand for information technology infrastructure and, therefore, there are no optimized information technology infrastructures. Summary of the invention
[0010] The present invention aims to overcome the aforementioned drawbacks as well as other drawbacks that could be overcome, although not mentioned in the description below.
[0011] The concept of the present invention relates to the use of local network agents, associated with network devices, said agents having the ability to formulate long-term predictions based on the operation of a machine learning model trained by a central authority. Furthermore, between the initial prediction and the end of the prediction term, the machine learning model is retrained and reused to update the initial prediction, leading to a more accurate prediction capability.
[0012] Such an invention differs from edge prediction computing, which requires significant computing power, because the model is not trained locally but remotely while the outcome of the training is used locally.
[0013] In particular embodiments, for resource-constrained physical network devices (FPGAs or small microcontrollers), the trained machine learning model is compiled, or transformed, into a prediction algorithm, such as a decision tree. In such cases, local network agents are limited to using a simple algorithm that has the advantage of being derived from a machine learning device.
[0014] In particular embodiments, for a more resource-intensive physical network device, an optimal algorithm can be used to leverage the benefits of machine learning performed by the central authority. Such an algorithm can be obtained by transforming the trained machine learning model, for example. For instance, a central machine learning device can be used as a classifier to associate tags with objects, which can then be executed locally to perform cost-free algorithms such as ExtraTreesRegressor or XGBoost, for example. This allows for local decision-making without the need for a connection to the central authority, in real time, local storage of these decisions and failures, and transmission of this data to the central authority at a predetermined frequency and / or as soon as a connection is available.Local storage must be able to store enough data before transmission is possible.
[0015] In such embodiments, the trained machine learning model can correspond to the determination of a "best of X" algorithm, in which X corresponds to a number of specific machine learning models.
[0016] Such an invention may take the form of a cloud-based solution (installed on a client's server) providing an IT infrastructure that provides governance metrics and analytics and interacts with a user to mitigate future risks to the infrastructure based on predictions from local agents.
[0017] Such an invention enables local, real-time and resilient decision-making, as well as centralized global analysis, to learn from all physical network devices, pool knowledge and (re)deploy updated models at the edge.
[0018] The present invention is intended to remedy all or part of these disadvantages.
[0019] All the embodiments disclosed and claimed herein are oriented towards computer-implemented programmed processes that interact with digital data to provide a practical application of computer technology to the problem of managing and maintaining network resources that can be used to increase the responsiveness of a company's information technology infrastructure. The disclosure is not intended to encompass techniques for organizing human activity, executing mental processes, or implementing a mathematical concept, and any interpretation of the claims to encompass such techniques would be unreasonable on the basis of the disclosure as a whole.
[0020] To this end, according to a first aspect, the present invention relates to a method for predicting local network connectivity demand, comprising: - a step of predicting long-term local connectivity demand, using a machine learning model operated by a local agent associated with a physical network device belonging to a computer network, - within a period equivalent to the duration of the long-term prediction, more than one short-term iteration of: - at least one step of aggregating representative values: - a network connectivity request including at least one physical network device, - a purpose for using the network including at least one physical network device or - a prediction of long-term local connectivity demand for the physical network device, - a training step for a machine learning device to produce a machine learning model configured to provide a long-term local connectivity demand prediction, - a step involving the deployment of the machine learning model on at least one local agent, and - a step of updating the long-term local connectivity demand prediction by the deployed machine learning model, operated by a local agent.
[0021] Thanks to these provisions, between the initial prediction and the end of the prediction term, the machine learning model is retrained and reused to update the initial prediction, leading to a more accurate prediction capability.
[0022] In particular embodiments, the value aggregation step further aggregates values representative of an event external to the computer network.
[0023] Such embodiments make it possible to improve the predictions made by local agents based on external events, such as changes in the weather, changes in a stock market price, the presence of holidays, or social movements for example.
[0024] In particular embodiments, the object process of the present invention comprises: - a training step for a machine learning device to produce a machine learning model configured to classify a local connectivity demand model, and - a step of exploiting the machine learning model trained to classify a local connectivity demand model according to at least one of the following elements: - a difficulty in predicting the physical network device and / or - the importance of the physical network device in the computer network as a hub in said network.
[0025] In particular embodiments, the aggregation step includes a sampling step of a subset of information to form a training set, said training set being used during a training step of a machine learning device.
[0026] Such embodiments allow for the adjustment of the dataset sampling and the prediction horizon, according to a specific use case. These settings are located in the database linked to a particular service (use case) and are used to prepare the dataset before enrichment and machine learning. These settings are part of the prediction, which is saved in the database, so that it is possible to "replay" the prediction with the exact original settings each time the settings are modified for future predictions.
[0027] In particular embodiments, the aggregation step includes a prediction duration definition step, said prediction duration being used during a training step of a machine learning device.
[0028] The prediction time is the prediction horizon or the distance to the future prediction. Example: a dataset with ten-minute intervals. For this particular use case, a one-hour prediction horizon is the best compromise. For this dataset with ten-minute intervals, predicting at a one-hour horizon means that it is necessary to predict the next six intervals in the time series. In particular embodiments, the step enrichment of a training set, said enriched training set being used during a training step of a machine learning device.
[0029] The purpose of enrichers is to construct additional information from raw metrics. For example, the orchestrator provides information that can be considered the IP destination for each volume of traffic sent by an application through a device. Part of this traffic is then directed to the cloud (external destination), and the remainder of the traffic is directed to another physical network device in the global enterprise infrastructure, this destination physical network device acting as a data center or hub.
[0030] By aggregating this information and performing specific calculations, it is possible to calculate for each physical network device during a period (10-minute slice) the total incoming traffic volume (entering the physical network device from another physical network device) and the detail by application, for example incoming traffic from other physical network devices or from applications marked productivity.
[0031] This produces two types of metrics: - the volume of incoming traffic (in bytes and hours), and - the portion of this incoming traffic that is associated with productivity-tagged applications.
[0032] In particular embodiments, the object process of the present invention includes a step of adjusting local connectivity to the network based on a prediction of long-term local connectivity demand.
[0033] Such embodiments allow the dynamic reconfiguration of the infrastructure according to the predictions provided, to avoid major connectivity problems.
[0034] In particular embodiments, a representative value of the connectivity demand corresponds to a response time of a remote device.
[0035] In particular embodiments, the training step of a machine learning device comprises: - the training of an extreme random forest device, - the training of a support vector machine regressor device and - training a gradient amplification regressor device.
[0036] In particular embodiments, the method object of the present invention comprises a step of associating a prediction reliability indicator with at least one physical network device, such a reliability indicator being aggregated during the aggregation step, providing a long-term prediction and / or updating the long-term prediction.
[0037] In particular embodiments, the method object of the present invention comprises a step of associating a network importance indicator with at least one physical network device, such a network importance indicator being aggregated during the aggregation step, providing a long-term prediction and / or updating the long-term prediction.
[0038] According to a second aspect, the present invention relates to a device for predicting local network connectivity demand, comprising: - a local agent associated with a physical network device belonging to a computer network, comprising a means for exploiting a machine learning model to provide a long-term local connectivity demand prediction, - a means for aggregating representative values, at least: - a network connectivity request including at least one physical network device, - for the purpose of using the network, including at least one physical network device, - a prediction of long-term local connectivity demand for the physical network device, - a means of training a machine learning device to produce a machine learning model configured to provide a long-term local connectivity demand prediction, - a means of deploying the machine learning model on at least one local agent, and - a means of updating the long-term local connectivity demand prediction by the deployed machine learning model operated by a local agent, the aggregation, training and deployment means being configured to operate iteratively, more than once, for a duration equivalent to the duration of the long-term prediction.
[0039] The device object of the present invention has the same advantages as the method object of the present invention. Brief description of the drawings
[0040] Other advantages, purposes and special features of the invention will become apparent from the following non-exhaustive description of at least one particular object, method or device of the present invention, in relation to the drawings attached thereto, in which:
[0041] [Fig-1] represents, schematically and in the form of a flowchart, a a particular sequence of steps in a process that is the subject of the present invention,
[0042] [Fig.2] schematically represents a particular embodiment of a system computer technology that can be used to implement a process that is the subject of the present invention,
[0043] [Fig.3] schematically represents a particular embodiment of the device object of the present invention, and
[0044] [Fig.4] schematically represents a long-term prediction sequence and training and short-term prediction updates enabled by the use of the present invention. Detailed description
[0045] This description is not exhaustive, because each feature of one embodiment can be advantageously combined with any other feature of any other embodiment.
[0046] Various inventive concepts can be realized in the form of one or more processes, an example of which has been provided. The steps performed as part of the process can be ordered in any suitable manner. Therefore, it is possible to design embodiments in which steps are performed in a different order than that illustrated, which may include the simultaneous performance of certain steps, even if they are represented as sequential steps in illustrative embodiments.
[0047] The expression "and / or" as used herein in the specification and in the claims shall be understood as meaning "either or both" of the elements thus combined, that is to say, elements which are present conjunctively in some cases and disjunctively in others. Several elements listed with "and / or" shall be interpreted in the same way, that is to say, as "one or more" of the elements thus combined. Other elements besides those specifically identified by the "and / or" clause may optionally be present, whether or not they are related to those specifically identified elements.Thus, by way of non-limiting example, a reference to "A and / or B", when used in conjunction with an open language such as "including", may refer, in one embodiment, to A only (optionally including elements other than B); in another embodiment, to B only (optionally including elements other than A); in yet another embodiment, to both A and B (optionally including other elements); etc.
[0048] As used herein in the descriptive memorandum and in the claims, "or" should be understood as inclusive.
[0049] As used herein in the descriptive document and in the claims, the expression "at least one", with reference to a list of one or more items, must This can be understood as meaning at least one item selected from one or more of the items in the list of items, but not necessarily including at least one of each item specifically listed in the list of items and not excluding any combination of items in the list of items. This definition also allows for the optional presence of items other than those specifically identified in the list of items to which the phrase "at least one" refers, whether or not they are related to those specifically identified items.Thus, by way of non-limiting example, "at least one of A and B" (or, equivalently, "at least one of A or B" or equivalently, "at least one of A and / or B") may refer, in one embodiment, to at least one, optionally including more than one, A, without B present (and optionally including elements other than B); in another embodiment, to at least one, optionally including more than one, B, without A present (and optionally including elements other than A); in yet another embodiment, to at least one, optionally including more than one, A, and to at least one, optionally including more than one, B (and optionally including other elements); etc.
[0050] In the claims, as well as in the above specification, all transitional expressions such as "comprising", "including", "carrying", "having", "containing", "implying", "holding", "composed of", and the like should be understood as open-ended, i.e., as including, but not limited to. Only the transitional expressions "consisting of" and "consisting essentially of" should be understood as closed or semi-closed transitional expressions, respectively.
[0051] It should be noted that the figures are not to scale.
[0052] According to one embodiment, the techniques described herein are implemented by at least one computing device. The techniques may be implemented in whole or in part using a combination of at least one server computer and / or other computing devices that are coupled using a network, such as a packet data network. The computing devices may be hardwired to perform the techniques or may include digital electronic devices such as at least one application-specific integrated circuit (ASIC) or a user-programmable pre-broadcast array (FPGA) that is persistently programmed to perform the techniques, or may include at least one general-purpose hardware processor programmed to perform the techniques in accordance with program instructions in the firmware, memory, other storage unit, or a combination thereof.Such computer devices can also combine custom hardwired logic, ASICs or FPGAs with programming per. software used to perform the techniques described. Computing devices may include server computers, workstations, personal computers, portable computing systems, handheld devices, mobile computing devices, wearable devices, body-mounted or implantable devices, smartphones, smart devices, network interconnect devices, autonomous or semi-autonomous devices such as robots or unmanned ground or air vehicles, any other electronic device that incorporates hardwired and / or program logic to implement the techniques described, one or more virtual computing machines or instances in a data center and / or a network of server computers and / or personal computers.
[0053] Figure 2 represents a functional diagram illustrating an example of a computer system 200 with which an embodiment can be implemented. In the example in Figure 2, a computer system 205 and instructions for implementing the disclosed technologies in the hardware, software, or a combination of hardware and software are represented schematically, for example, in the form of boxes and circles, at the same level of detail commonly used by a person skilled in the art to which this disclosure relates for communicating about implementations of computer architecture and computer systems.
[0054] The computer system 205 includes an input / output (I / O) subsystem 220 which may include a bus and / or one or more other communication mechanisms for communicating information and / or instructions between the components of the computer system 205 over electronic signal paths. The I / O subsystem 220 may include an I / O controller, a memory controller, and at least one I / O port. The electronic signal paths are represented schematically in the drawings, for example, as lines, unidirectional arrows, or bidirectional arrows.
[0055] At least one hardware processor 210 is coupled to the I / O subsystem 220 for information and instruction processing. The hardware processor 210 may include, for example, a general-purpose microprocessor or microcontroller and / or a special-purpose microprocessor such as an integrated system or a graphics processing unit (GPU), a digital signal processor, or an ARM processor. The processor 210 may include an integrated arithmetic logic unit (ALU) or may be coupled to a separate ALU.
[0056] The computer system 205 includes one or more memory units 225, such as main memory, which is coupled to the I / O subsystem 220 for storage The digital electronics of the data and instructions to be executed by the processor 210. The memory 225 may include volatile memory such as various forms of random access memory (RAM) or other dynamic storage devices. The memory 225 may also be used to store temporary variables or other intermediate information during the execution of instructions to be carried out by the processor 210. Such instructions, when stored on non-transient storage media that are readable by the computer and accessible to the processor 210, can transform the computer system 205 into a specialized machine that is customized to perform the operations specified in the instructions.
[0057] The computer system 205 further includes non-volatile memory such as read-only memory (ROM) 230 or another static storage device coupled to the I / O subsystem 220 for storing information and instructions for the processor 210. The ROM 230 may include various forms of programmable ROM (PROM) such as erasable PROM (EPROM) or electrically erasable PROM (EEPROM). A persistent storage unit 215 may include various forms of non-volatile RAM (NVRAM), such as FLASH memory, or a solid-state storage unit, a magnetic disk or an optical disk such as CD-ROM or DVD-ROM, and may be coupled to the I / O subsystem 220 for storing information and instructions.Storage 215 is an example of computer-readable non-transient media that can be used to store instructions and data which, when executed by processor 210, result in the realization of computer-implemented processes to carry out these techniques.
[0058] The instructions in memory 225, ROM 230, or storage unit 215 may comprise one or more sets of instructions organized into modules, processes, objects, functions, routines, or calls. The instructions may be organized into one or more computer programs, operating system services, or application programs, including mobile applications.Instructions may include an operating system and / or system software; one or more libraries to support multimedia, programming, or other functions; instructions or data protocol stacks to implement TCP / IP, HTTP, or other communication protocols; file format processing instructions to parse or render files encoded in HTML, XML, JPEG, MPEG, or PNG; user interface instructions to render or interpret commands for a graphical user interface (GUI), a command-line interface, or a text-based user interface; application software such as an office suite, Internet access applications, design and manufacturing applications, graphics applications, audio applications, software engineering applications, educational applications, etc. games or various applications. The instructions can implement a web server, a web application server, or a web client. The instructions can be organized as a presentation layer, an application layer, and a data storage layer, such as a relational database system using a structured query language (SQL) or without SQL, an object store, a graph database, a flat file system, or another data storage unit.
[0059] The computer system 205 can be coupled via the I / O subsystem 220 to at least one output device 235. In one embodiment, the output device 235 is a digital computer display. Examples of a display that can be used in various embodiments include a touchscreen display, a light-emitting diode (LED) display, a liquid crystal display (LCD), or an electronic paper display. The computer system 205 may include one or more other types of output devices 235, either as an alternative to or in addition to a display device. Other output devices 235 include, for example, printers, ticket printers, plotters, projectors, sound or video cards, loudspeakers, buzzers or piezoelectric devices or other audible devices, LED or LCD lamps or indicators, haptic devices, actuators, or servos.
[0060] At least one input device 240 is coupled to the I / O subsystem 220 for the communication of signals, data, command selections or gestures to the processor 210. Examples of input devices 240 include touch screens, microphones, digital still and video cameras, alphanumeric and other keys, numeric keypads, keyboards, graphics tablets, image scanners, joysticks, clocks, switches, buttons, dials, slides.
[0061] Another type of input device is a control device 245, which can perform cursor control or other automated control functions such as navigating a graphical interface on a display screen, either as an alternative to or in addition to the input functions. The control device 245 can be a touchpad, a mouse, a trackball, or cursor direction keys to communicate direction information and command selections to the processor 210 and to control cursor movement on the display 235. The input device can have at least two degrees of freedom in two axes, a first axis (e.g., x) and a second axis (e.g., y), which allows the device to specify positions in a plane.Another type of input device is a wired, wireless, or optical control device such as a joystick, pen reader, console, steering wheel, pedal, gear shifter, or other type of control device. A 240 input device may include a communication interface. combination of several different input devices, such as a video camera and a depth sensor.
[0062] In another embodiment, the computer system 205 may include an Internet of Things (IoT) device in which one or more of the output device 235, input device 240, and control device 245 are omitted. Or, in such an embodiment, the input device 240 may include one or more cameras, motion detectors, thermometers, microphones, seismic detectors, other sensors or detectors, measuring devices, or encoders, and the output device 235 may include a special display such as a one-line LED or LCD screen, one or more indicators, a display panel, a counter, a valve, a solenoid valve, an actuator, or a servo.
[0063] The computer system 205 can implement the techniques described herein by using custom hardwired logic, at least one ASIC or FPGA, firmware, and / or program instructions or logic that, when loaded and used or executed in combination with the computer system, causes the computer system to operate or program as a specialized machine. In one embodiment, the techniques herein are performed by the computer system 205 in response to the execution by the processor 210 of at least one sequence of at least one instruction contained in main memory 225. Such instructions may be read from main memory 225 from another storage medium, such as the storage unit 215. The execution of the instruction sequences contained in main memory 225 causes the processor 210 to perform the process steps described herein.In alternative embodiments, hardwired circuits may be used instead of, or in combination with, software instructions.
[0064] The term "storage medium" as used herein means any non-transient medium that stores data and / or instructions that cause a machine to operate in a specific manner. Such storage media may include non-volatile and / or volatile media. Non-volatile media include, for example, optical or magnetic disks, such as the storage unit 215. Volatile media include dynamic memory, such as memory 225. Common forms of storage media include, for example, a hard disk drive, an integrated circuit disk, a USB flash drive, a magnetic data storage medium, any optical or physical data storage medium, a memory chip, or the like.
[0065] The storage medium is separate but can be used in conjunction with a transmission medium. The transmission medium participates in the transfer of information between the storage media. For example, the transmission medium includes coaxial cables, copper wires and optical fibers, including the wires that make up a 220 I / O subsystem bus. The means of transmission can also take the form of acoustic or light waves, such as those generated during data communications by radio waves and infrared waves.
[0066] Various means can be involved in transporting at least one sequence of at least one instruction to the processor 210 for execution. For example, the instructions can first be loaded onto a magnetic disk or a solid-state disk of a remote computer. The remote computer can load the instructions into its dynamic memory and send the instructions over a communication link such as a fiber optic or coaxial cable or a telephone line using a modem. A modem or router local to the computer system 205 can receive the data over the communication link and convert the data into a format that can be read by the computer system 205.For example, a receiver such as a radio frequency antenna or an infrared detector can receive data carried in a wireless or optical signal, and a suitable circuit can provide the data to an I / O subsystem 220, for example, by placing the data on a bus. The I / O subsystem 220 carries the data to memory 225, from which the processor 210 retrieves and executes instructions. Instructions received by memory 225 can optionally be stored on storage unit 215 before or after execution by the processor 210.
[0067] The computer system 205 also includes a communication interface 260 coupled to the bus 220. The communication interface 260 provides bidirectional data communication coupling to the network link(s) 265 that is (are) directly or indirectly connected to at least one communication network, such as a network 270 or a public or private cloud on the Internet. For example, the communication interface 260 may be an Ethernet network interface, an Integrated Services Digital Network (ISDN) card, a cable modem, a satellite modem, or a modem for providing a data communication connection to a corresponding type of communication line, for example, an Ethernet cable, a metallic cable of any kind, a fiber optic line, or a telephone line.The 270 network broadly represents a local area network (LAN), a wide area network (WAN), a wireless local area network (WLAN), a campus network, an internetwork, or any combination thereof. The 260 communication interface may include a LAN card to provide a data communication connection to a compatible LAN, or a wired cellular radio interface to send or receive cellular data according to cellular radio wireless network standards, or a wired satellite radio interface to send or receive digital data according to satellite wireless network standards. In such a configuration... In operation, the 260 communication interface sends and receives electrical, electromagnetic, or optical signals via signal paths that carry digital data streams representing various types of information.
[0068] The network link 265 generally provides electrical, electromagnetic, or optical data communication directly or through at least one network to other data devices, using, for example, satellite, cellular, Wi-Fi, or Bluetooth technology. For example, the network link 265 can provide a connection through a network 270 to a host computer 250.
[0069] In addition, the network link 265 can provide a connection via the network 270 or to other computing devices via network interconnect devices and / or computers that are operated by an Internet Service Provider (ISP) 275. The ISP 275 provides data communication services via a global packet data communication network represented by the Internet 280. A server computer 255 can be coupled to the Internet 280. The server 255 broadly represents any computer, data center, virtual machine or virtual computing instance with or without a hypervisor, or computer running a containerized program system such as Docker or Kubernetes.Server 255 can represent an electronic digital service implemented using multiple computers or instances, accessed and used by transmitting web service requests, URL (Uniform Resource Locator) strings with parameters in HTTP payloads, API calls, application service calls, or other service calls. The computer system 205 and Server 255 can be components of a distributed computing system that includes other computers, a processing cluster, a server farm, or other computer organization that cooperate to perform tasks or run applications or services. Server 255 can include one or more sets of instructions organized into modules, processes, objects, functions, routines, or calls.Instructions can be organized into one or more computer programs, operating system services, or application programs, including mobile applications. Instructions may include an operating system and / or system software; one or more libraries to support multimedia, programming, or other functions; instructions or data protocol stacks to implement TCP / IP, HTTP, or other communication protocols; file format processing instructions to parse or render files encoded in HTML, XML, JPEG, MPEG, or PNG; user interface instructions to render or interpret commands for a graphical user interface (GUI), a command-line interface, or a text-based user interface; and so on. Application software such as office suites, internet access applications, design and manufacturing applications, graphics applications, audio applications, software engineering applications, educational applications, games, or miscellaneous applications. The 255 server may include a web application server that hosts a presentation layer, an application layer, and a data storage layer such as a relational database system using a structured query language (SQL) or not, an object store, a graph database, a flat file system, or another data storage unit.
[0070] The computer system 205 can send messages and receive data and instructions, including program code, via the network(s), the network link 265, and the communication interface 260. In the Internet example, a server 255 can transmit requested code for an application program via the Internet 280, ISP 275, local network 270, and communication interface 260. The received code can be executed by the processor 210 when received and / or stored in the storage unit 215, or another non-volatile storage unit for later execution.
[0071] The execution of instructions as described in this section may implement a process in the form of an instance of a computer program that is executed and consists of program code and its ongoing activity. Depending on the operating system (OS), a process may be composed of multiple threads that execute instructions simultaneously. In this context, a computer program is a passive set of instructions, while a process may be the actual execution of those instructions. Several processes may be associated with the same program; for example, opening multiple instances of the same program often means that multiple processes are being executed. Multitasking may be implemented to allow multiple processes to share the processor.While each processor 210 or processor core executes a single task at a time, the computer system 205 can be programmed to implement multitasking to allow each processor to switch between running tasks without having to wait for each task to finish. In one embodiment, switchovers can be exploited when tasks perform input / output operations, when a task indicates that a switchover is possible, or during hardware interrupts. Time-sharing can be implemented to allow for fast response times for interactive user applications by rapidly performing context switches to give the appearance of concurrent execution of multiple processes simultaneously. In one embodiment, for security and reliability reasons, a system... Operational control can prevent direct communication between independent processes, providing inter-process communication functionality with strict mediation and control.
[0072] In the description below, the term “physical network device” means any piece of hardware connected to a computer network from which said piece derives connectivity to other physical and / or virtual network devices.
[0073] In the description below, the term "computer network" refers to any embodiment of the network 270 disclosed in connection with [Fig.2].
[0074] In the description below, the term "connectivity demand" may refer to any metric generally used to monitor the demand on a communication link, such that a representative value of connectivity demand corresponds to: Quality: response time of a remote device, time to reach a DNS server, packet loss, latency of a packet to the destination, time to establish an SSL connection and / or Capacity: bandwidth usage in transmission or reception, for example.
[0075] In the description below, the term "local agent" refers to a hardware and / or software component paired with a physical network device and configured to, at least: monitor and report the connectivity request of said physical network device, which means that the local agent is configured to monitor the request of at least one layer of the OSI (Open Systems Information) stack and emit data to a computing device and exploit at least one trained machine learning model configured to associate a demand prediction with a given term (or for a given duration) for a determined set of inputs, such as a time series representative of past connectivity demand, for example.
[0076] Such a physical network device, or physical network device, can correspond to any physical network device in a computer network. An edge network device is a physical network device located at the edge of a network that serves as an entry or exit point for data traffic. These devices are responsible for routing traffic between different networks and can perform various functions such as filtering, encryption, and quality of service (QoS) management. Edge network devices can include routers, switches, firewalls, load balancers, and other network devices that are placed at the edge of a network. These devices are often used to provide connectivity and security between different networks, such as connecting a local area network (LAN) to a wide area network (WAN) or to the Internet.
[0077] The general principle of the present invention can be seen in [Fig.4].
[0078] Figure 4 schematically represents a series of predictions, 405, 406 and 407, by a single local agent in relation to a single physical network device.
[0079] Each prediction, associated with the same prediction time (or horizon), is associated with a prediction training set, 410, 411, and 411, comprising data used to train a machine learning device. These training sets, 410, 411, and 411, correspond to data of the same nature measured up to different times. These different times are either: the initial sampling cutoff time 410 before training before the initial prediction 405 for a determined time any time, 411 and 412, in the interval from the initial sampling cutoff time 410 to the time determined for the prediction 405, 406 and 407.
[0080] Before each prediction, associated with the same prediction time (or horizon), the training set, 410, 411 or 411, is used as input for a singular machine learning device 415 configured to provide data associated with a machine learning model of a similar nature to the training sets, 410, 411 and 411, to a prediction at a determined prediction time.
[0081] The result of these training steps is the provision of trained machine learning models, 420, 421 and 422, deployed on local agents and operated to provide adjusted predictions, 406 and 407, at the time of the initial prediction 405.
[0082] Figure 1 schematically represents a particular sequence of steps in the method 100 that is the subject of the present invention. This method for predicting local connectivity demand to network 100 comprises: a step 105 of long-term local connectivity demand prediction, by a machine learning model operated by a local agent associated with a physical network device that belongs to a computer network, within a period equivalent to the duration of the long-term prediction, more than one short-term iteration of: a step 110 of aggregation of representative values of at least: a network connectivity request including at least one physical network device, a network usage purpose including at least one physical network device, a long-term local connectivity demand forecast for the physical network device, a step 115 of training a machine learning device to produce a machine learning model configured to provide a long-term local connectivity demand prediction, a step 120 of deploying the machine learning model on at least one local agent, and a step 125 of updating the long-term local connectivity demand prediction by the deployed machine learning model operated by a local agent.
[0083] The long-term local connectivity demand prediction step 105 can be performed, for example, by at least one processor of a computer system 200 configured to execute a set of instructions corresponding to said long-term local connectivity demand prediction step 105. Such a set of instructions corresponds, at a minimum, to the operation of a trained machine learning model configured to associate a prediction, for a specified time in the future, of a connectivity status of the physical network device with at least one other network device in the computer network. Such a prediction time could, for example, be one hour in the future.
[0084] In the case where the long-term local connectivity demand prediction is linked to a capacity prediction: Several parameters can be used, such as traffic metrics, quality metrics, demand metrics, and business factors, which can be provided by multiple sources, if necessary, to predict the percentage of maximum bandwidth that will be used during the next hour by a local agent. Such a prediction can correspond to the maximum, minimum, average, and estimates when the maximum peak will occur in the following hour. - such a prediction can be based on: - this prediction (% bandwidth), - Knowledge of peripheral network devices such as the different available links and their bandwidth, - if an additional backup connection is available, not already activated, - if this request for a backup connection is authorized, - a quota associated with this additional link, and the actual demand for this quota and / or - a specific business factor giving a coefficient to be applied to action thresholds; - The prediction can lead to an action: if the predicted bandwidth demand reaches 75% of the total actual available bandwidth for this edge network device or physical network device, and all checks are successful (authorization, quota, availability, etc.), then the decision is made to activate the additional link to increase bandwidth. This action can be triggered by a local or remote actuation device, configured to modify the value of at least one connectivity parameter based on the prediction and / or - Different thresholds can be used to generate perspectives, such as notifications when 70% of the bandwidth will be needed, when the monthly quota of a link is about to be reached, when the prediction percentage has led to the activation of a backup link.
[0085] In the case where the long-term local connectivity demand prediction is linked to a failure prediction, the following process may take place: - Infrastructure usage over the past 30 days can be used as a sample, and events can be identified and classified as "outages," based on calculations such as a rapid decrease in connectivity of more than 10% over a short period; the physical network devices primarily responsible for this outage can also be identified. - These events are used as targets to feed into a supervised machine learning device using an enriched dataset (up to 40 features) consisting of connectivity metrics, predictions for each physical network device that has been responsible for at least one failure event, and that has been classified with high hub importance, such as: - a variation in the loss ratio representative of the evolution of the average packet loss ratio for a physical network device over the following hour, - a risk of saturation representing a bandwidth demand exceeding network capacity over the next hour, - three algorithms (such as an additional random forest regressor, a support vector regressor, or an amplification gradient regressor) run to predict future (24-hour) points when a physical network device will be responsible for a global failure, and optionally uses the ExtraTreesRegressor algorithm to provide the significance of peculiarities, - The output of the predictions is: - physical network device responsible for identifying the predicted fault, the site, the labels, - risk level measured between 50% and 100%, lower values being ignored, and the timestamp of each failure.
[0086] This information can be recorded every 10 minutes to allow for more in-depth analysis and to provide unique statistics on edge network devices or the behavior and responsibilities of physical network devices. This information is aggregated on a map to show sites at risk in the next 24 hours, along with a risk level, in what is known as a heat map.
[0087] All predictions such as capacity, quality of experience, link quality, application demand are stored in a database, together with the settings used for the machine learning model and the context composed of business factors. They are reused for other predictions (such as failure prediction) and can be replayed to test "What if" scenarios that could improve prediction accuracy.
[0088] All predictions are analyzed every night to calculate the actual accuracy, by comparing the predictions to what actually happened.
[0089] When the accuracy of a prediction service decreases, it can launch an in-depth analysis with "What if" scenarios to calibrate the settings of the machine learning model.
[0090] In a time interval corresponding to the interval between the first operation of the machine learning model and the time (date) of the prediction, several iterations of the training set assembly (aggregation 110), training 115, deployment 120 and update 125 of the predictions occur.
[0091] For example, one of these iterations may require ten minutes and a prediction may be formulated for a duration of one hour in advance, meaning that four iterations may occur and gradually adjust the prediction.
[0092] The aggregation prediction step 110 can be performed, for example, by at least one processor of a computer system 200 configured to execute a set of instructions corresponding to said aggregation step 110.
[0093] During the aggregation step 110, data of different kinds can be combined to generate a training set for a machine learning device.
[0094] During the aggregation step 110, a long-term prediction may be part of the training set, said long-term prediction being representative of the same connectivity demand parameter or of a different connectivity demand parameter. For example, a capacity demand prediction may be used in a failure prediction.
[0095] At least part of this data may correspond, for example, to connectivity request data from local agents.
[0096] At least part of this data may correspond, for example, to a label or identifier defining the purpose of the connectivity request data emanating from local agents. Such a purpose may be, for example, emails, video conferencing, video streaming, or instant messaging.
[0097] At least part of this data may correspond, for example, to connectivity demand predictions from local agents.
[0098] At least part of this data may correspond, for example, to values representative of an event external to the computer network. Such an event may correspond, for example, to weather information, stock market information, calendar information (holidays), or information relating to to the news.
[0099] The aggregated data can be associated with a time value, corresponding to an indicator of duration or seasonality (such as the time of day, the day, the month, the day of the week, the season).
[0100] Aggregated data may correspond to derived data, such as averages over a given period, for example.
[0101] As understood, this data may correspond, for example: - to the evolution of connectivity / latency / loss packets... in the last hour, - to the average link latency for a physical network device during a slice (10 min), and - the percentage of "productivity" traffic (from applications that are associated with a label representing productivity) relative to the total traffic passing through the physical network device in a 10 min slice, weighted by the importance of the physical network device in the network.
[0102] In particular embodiments, such as that shown in [Fig.1], the aggregation step 110 includes a sampling step 140 of a subset of information to form a training set, said training set being used during a training step, 115 and / or 130, of a machine learning device.
[0103] Depending on the data source (e.g., SD-WAN orchestrator, partner agents, telecommunications operators, or CDR files), data values (points) can be collected or streamed at varying frequencies. Sometimes the information arrives every minute, sometimes every ten minutes, and sometimes several times per second. The frequency depends on the specific use case being implemented.
[0104] This raw data can be stored upon arrival, but depending on the data demand (the use case), the data can be resampled to align all sources to a desired sampling frequency.
[0105] For example, a partner delivers certain data in continuous broadcast, which can be at any frequency, such as order plan data from local agents, and an orchestrator API is used to obtain ten-minute snapshots of aggregated data. This data can be transferred in bulk at given time intervals.
[0106] For capacity forecasting, this data can be aggregated into ten-minute slices or blocks, including, where appropriate, business factors provided by a customer responsible for the local device, to obtain a regular time-series dataset with a point every ten minutes. Each column is aggregated using the appropriate formula, for example, min, max, mean, sum, and standard deviation.
[0107] The final dataset is built and sampled on the fly if necessary, or a specific database table for a use case is created with sampled data, in order to accelerate machine learning operations.
[0108] For certain use cases, such as route quality prediction (bridge and jump), raw data can be used, and this data can be sampled in several versions correlated to the desired prediction horizon. Example: Sampling of 1 minute, then of 2 minutes, to predict within the next 10 minutes. Then sampling of 5 minutes to predict a 30-minute horizon. Then sampling of 10 minutes to predict at 1 hour and 4 hours.
[0109] This allows for multi-time interval predictions, which will be the short-term quality risk, and medium- and long-term predictions. The route change decision can take into account all time intervals to assess the urgency of the action.
[0110] In particular embodiments, such as that shown in [Fig. 1], the aggregation step 110 includes a prediction duration definition step 145, said prediction duration being used during a training step, 115 and / or 130, of a machine learning device.
[0111] Such a prediction duration definition step 145 can be carried out, for example, by at least one processor of a computer system 200 configured to execute a set of instructions corresponding to said prediction duration definition step 145.
[0112] During such a prediction step 145, an input subsystem of a computer device can be used to automatically or manually establish a prediction time for local agent predictions. Such a prediction time can correspond to an offset from the prediction time (e.g., +1 hour) or to specific times of the day (e.g., 11:00 AM).
[0113] In particular embodiments, such as that shown in [Fig. 1], step 150 of enriching a training set, said enriched training set being used in a step, 115 and / or 130, of training a machine learning device.
[0114] Such a training set enrichment step 150 can be carried out, for example, by at least one processor of a computer system 200 configured to execute a set of instructions corresponding to said training set enrichment step 150.
[0115] During this enrichment step 150, the objective is to add context to each point in a dataset. For example, if there is a situation by particular in an airport, given by the person in charge of a local device as a business factor, and associated with an adjustment coefficient, starting at a time stamp, all points in the dataset starting from this time stamp and until the "alert" is deleted are enriched with the information (boolean coefficient +).
[0116] A thorough weekly analysis of the behavior of physical network devices can add labels to the physical network device or local devices, which can be used for building the dataset.
[0117] Thus, a specific weather alert situation can be mentioned in the dataset during the defined period, for example.
[0118] The final dataset used by the machine learning device is the result of resampling the raw data, enriched with contextual data (calculated or provided as a business factor).
[0119] Predictions made on this dataset can provide more information which is added to another even richer dataset, by adding connectivity metrics and prediction results (e.g., failure predictions).
[0120] Step 115 of training a machine learning device can be carried out, for example, by at least one processor of a computer system 200 configured to execute a set of instructions corresponding to said step 115 of training a machine learning device.
[0121] During this training step 115, the data aggregated during the step 110 aggregation can be used as input provided to a machine learning device of a type suitable for the particular use case.
[0122] Such a machine learning device can use preprocessing algorithms such as LSTM, Transformers, TSNE-XGBOOST (to pre-train models for later real-time application with prediction).
[0123] Such a machine learning device can use post-processing algorithms such as ExtraTreesRegressor, Support Vector Regressor, GradientBoost Regressor, HistGradientBoost, TSNE-XGBOOST for pre-trained models.
[0124] In particular embodiments, such as that shown in [Fig. 1], step 115 of training a machine learning device comprises: - training 160 of an extreme random forest device, - the 165 drive of a support vector machine regressor device and - the training 170 of a gradient amplification regressor device.
[0125] For example, using a thirty-day dataset that has been resampled by 10-minute points, enriched with aggregated metrics and business factors, seasonality information can be added, such as the day of the week, weekend, time of day.
[0126] This example assumes that the physical network device associated with the local agents has been classified and labeled by an asynchronous process.
[0127] The dataset for all physical network devices of a customer or a customer's tenant, as required, is obtained.
[0128] Then: - A service that runs the pre-trained model (TSNE-XGBOOST) is called for each physical network device that is classified as "HIGH" (prediction difficulty level). This process takes 1 or 2 seconds to process approximately 50 physical network devices, and it returns a list of HIGH physical network devices with the prediction obtained (using the same dataset). - the overall dataset is split by physical network device, to calculate predictions on a physical network device-by-physical network device basis and - Physical network devices are classified into three levels: LOW, MEDIUM, HIGH by a classification algorithm, such as TSNE XGboost - a different strategy being applied for each class of physical network device: - LOW: an ExtraTreesRegressor algorithm can be run, which works very well for these "easy-to-predict" physical network devices, and takes a fraction of a second per physical network device, - MEDIUM: These physical network devices can sometimes experience traffic spikes that are not easily predicted with a single algorithm: - An "Outlier Detector" algorithm can be run to normalize the dataset using the 5th-95th percentiles, - Gaps in the dataset can be filled, - The behavior of the physical network device over the past 30 days is analyzed to detect if traffic sometimes bypasses 50% of the bandwidth capacity, or if the physical network device is used extensively as a "receiving" hub for other physical network devices. - Two types of physical network devices can be identified, and two distinct strategies can be applied: - For the first type (no specific behavior), three algorithms can be run on the physical network device (ExtraTreesRegressor, SVR, GradientBoostRegressor), then the one with the highest confidence is chosen, and the "explainability" of the ExtraTreesRegressor is preferably retained - the predicted values of the result of the "best" algorithm are kept, and the prediction includes an array of all predicted values within the prediction horizon (example: prediction actual + 6 points of 10 minutes for a 1-hour horizon) and - for the second type (a kind of data center, or concentrator with a strong relational concentrator position), a HistGradientBoosRegressor algorithm is executed because it better captures abrupt traffic variations, with less latency and an "amplified" prediction, - STUDENT: For this class of physical network devices, the calculation has already been performed in the first step, so we consider this prediction result.
[0129] This makes it possible to obtain a prediction for each physical network device, including the maximum peak during the next hour, which is the main information required.
[0130] Preferably, each prediction is made with additional descriptive information (site, physical network device, link mapping, available & authorized backup links, quotas...).
[0131] From there, a decision is made to activate (prediction >= 75%) or deactivate (prediction < 50%) an additional link, if necessary. The decision process uses backup / quota / authorization / prediction.
[0132] If the action is to ACTIVATE or DISABLE a backup link and everything is fine, it is then possible to communicate with the physical network device to modify internal policies to adjust the backup link demand (it may also involve changing traffic priorities to focus, for example, on videoconferencing applications and a demand that is prohibited during a critical period).
[0133] Depending on the available perspectives and customer subscriptions, it is possible, during the dressing process, to notify a perspective for any action taken, or prediction threshold or quota request.
[0134] The final prediction (in j son format) can be saved in a database table for future application, statistics, smart metrics, API gateway and for nighttime accuracy control.
[0135] In particular embodiments, the method 100 of the present invention comprises a step 101 of associating a prediction reliability indicator with at least one physical network device, such a reliability indicator being aggregated during the aggregation step 110, providing 105 a long-term prediction and / or updating 125 the long-term prediction.
[0136] Such an association step 101 can be carried out manually, via input means of a computer device, or automatically.
[0137] In embodiments in which the association step 101 is performed automatically, a set of instructions representative of an algorithm can be executed by a computer device in order to, from a series of long predictions By comparing past events and corresponding actual events that the predictions accurately or inaccurately predicted, a reliability indicator is determined. The more accurate the predictions were in the past, the higher the reliability indicator for a specific physical network device.
[0138] Such an association step 101 may use a classifier algorithm, such as a trained machine learning classifier model, to associate a representative indicator of a reliability class (“HIGH”, “MEDIUM”, “LOW”, for example) for physical network devices.
[0139] In particular embodiments, the method 100 of the present invention comprises a step 102 of associating a network importance indicator with at least one physical network device, such a network importance indicator being aggregated during the aggregation step 110, providing 105 a long-term prediction and / or updating 125 the long-term prediction.
[0140] Such an association step 102 can be carried out manually, via input means of a computer device, or automatically.
[0141] In embodiments in which the association step 102 is performed automatically, a set of instructions representative of an algorithm can be executed by a computer device in order to determine, from a series of exchange volumes and / or a number of physical network devices communicating with a target physical network device, a network importance indicator for said target physical network device. The higher the exchange volume and / or the higher the number of physical network devices communicating with a target physical network device, the higher the network importance indicator.
[0142] Such an association step 102 may use a classifier algorithm, such as a trained machine learning classifier model, to associate a representative indicator of a reliability class (“HIGH”, “MEDIUM”, “LOW”, for example) for physical network devices.
[0143] Step 120 of deploying a machine learning model on at least one local agent can be carried out, for example, by at least one processor of a computer system 200 configured to execute a set of instructions corresponding to said deployment step 120.
[0144] During this deployment step 120, a trained machine learning model can be downloaded by a local agent and stored in memory awaiting exploitation of this trained machine learning model.
[0145] Step 125 of updating the long-term local connectivity demand prediction can be performed, for example, by at least one processor of a computer system 200 configured to execute a set of instructions corresponding to said step 125 of the update.
[0146] During this update step 125, the trained machine learning model is used to provide a connectivity demand prediction for the time (date) of the initial prediction.
[0147] In particular embodiments, such as that shown in [Fig. 1], the process 100 which is the subject of the present invention comprises: - a step 130 of training a machine learning device to produce a machine learning model configured to classify a local connectivity demand pattern, and - a step 135 of exploiting the machine learning model trained to classify a local connectivity request pattern according to at least one of the following elements: - a difficulty in predicting the physical network device and / or - the importance of the physical network device in the computer network as a hub in said network.
[0148] The prediction difficulty (“LOW”, “MEDIUM” or “HIGH”) can be based on previous predictions and the behavior of the physical network device over a specific time interval (the last six months), as well as on the function of the physical network device in the infrastructure graph.
[0149] This classification can be used to choose the machine learning strategy for capability prediction, for example.
[0150] The importance of a physical network device can be based on traffic interactions (the IP destination is on one physical network device in the network, the output is on another physical network device in the network, etc.) and the number of physical network devices connected to that physical network device. This results in three classes based on importance level: "CONCENTRATORS," "CONCENTRATOR 1," and "CONCENTRATOR 2." This classification allows for the selection of "significant" physical network devices in the network, for example, to assess whether a failure prediction is appropriate for that physical network device because it has a significant impact on the overall enterprise network.
[0151] In particular embodiments, such as that shown in [Fig.1], the method 100 of the present invention includes a step 155 of adjusting local network connectivity according to a prediction of long-term local connectivity demand.
[0152] The local network connectivity adjustment step 155 can be performed, for example, by at least one processor of a computer system 200 configured to execute a set of instructions corresponding to said local network connectivity adjustment step 155.
[0153] During this step 155, there may be two types of adjustments. The first type of adjustment is network adjustments, which are policies that can be transmitted to network components to impact connectivity between physical and / or virtual devices in the network. For example, particular protocols or services may be blocked, or connections between two devices may be prohibited. The second type of adjustment is application adjustment, which impacts the sending and receiving of data over the network or the movement of an application from the local system to another computer.
[0154] Such a step 155 can be achieved by mapping the links for the physical network device, to check if there is a backup link, if it is in use or in standby, if this link can be operated remotely, and if there is a quota limitation for this link (start date in the month and monthly allocation, plus threshold and action decisions).
[0155] Example: A customer may, for example, allow the request for a backup link, but establish a quota (10 GB from the 5th of the month) and give 2 quota actions: prospect when the monthly quota request is at 70%, and prospect and block the link request once the quota is used at 99%.
[0156] Then, depending on the prediction (% bandwidth) and the settings for the thresholds, if the prediction for the next max hour is greater than or equal to 75%, and there is a link that can be used, an order to the orchestrator can be sent or directly to the physical network device to activate this backup link, which adds its bandwidth to the overall bandwidth of the physical network device.
[0157] This step is described in the detailed capacity prediction process. At a separate time point (e.g., once a week or once a day), the classification algorithms are run to train a model (a computationally intensive process). The resulting model is saved for reuse with fresh data added during the capacity prediction process, but reusing a pre-trained model with added data is extremely fast compared to computing the original model.
[0158] For other algorithms in the capability process, for example, models are created, trained, tested, evaluated, and finally applied to the entire dataset every 10 minutes for each physical network device in order to adjust the predictions. This is possible because the algorithms and adjustments of the present invention are very fast.
[0159] If the predicted capacity requirement is less than 50% and there is an active backup link, or the active backup link is blocked for quota reasons, then the backup link is deactivated, which returns to standby mode.
[0160] Thus, for each prediction, the environment of the physical network device (availability of links...) and the prediction (%) are obtained.
[0161] This information is used to create a smart metric: if the percentage of connectivity required in the next hour is more than 75%, but there is no available, authorized and quota-free link to provide additional bandwidth, there is a risk of failure.
[0162] Figure 3 schematically represents a particular embodiment of the device 300 that is the subject of the present invention. This device for predicting local network connectivity demand 300 comprises: - a local agent 305 associated with a physical network device 306 which belongs to a computer network 307, comprising a means 310 of exploiting a machine learning model to provide a long-term local connectivity demand prediction, - a means of aggregating representative values of at least 315: - a network connectivity request including at least one physical network device, - a purpose for using the network, including at least one physical network device, - a prediction of long-term local connectivity demand for the physical network device, - a 320 means of training a machine learning device to produce a machine learning model configured to provide a long-term local connectivity demand prediction, - a 325 method for deploying the machine learning model on at least one local agent, and - a 330 method for updating the long-term local connectivity demand prediction using the deployed machine learning model operated by a local agent,
[0163] the aggregation, training and deployment means being configured to operate iteratively, more than once, for a period equivalent to the duration of the long-term prediction.
[0164] Particular embodiments of the means of this device 300 are disclosed in relation to the process 100 which is the subject of the present invention.
Claims
Claims
1. Method for predicting local connectivity demand to the network (100), characterized in that it comprises: - a step (105) of predicting long-term local connectivity demand, by a machine learning model operated by a local agent associated with a physical network device which belongs to a computer network, in a duration equivalent to the duration of the long-term prediction, more than one short-term iteration of the following steps: - a step (110) of aggregating representative values, at least of a connectivity demand of the network comprising at least one physical network device, of a purpose of use of the network comprising at least one physical network device or of a prediction of long-term local connectivity demand for the physical network device,- a step (115) of training a machine learning device to produce a machine learning model configured to provide a long-term local connectivity demand prediction, - a step (120) of deploying the machine learning model on at least one local agent, and - a step (125) of updating the long-term local connectivity demand prediction by the deployed machine learning model operated by a local agent.,
2. The method (100) of claim 1, wherein the step (110) of aggregating values further aggregates values representative of an event external to the computer network.
3. A method (100) according to any one of claims 1 or 2, which comprises: - a step (130) of training a machine learning device to produce a machine learning model configured to classify a local connectivity demand pattern, and - a step (135) of operating the trained machine learning model to classify a local connectivity demand pattern according to at least one of the following: - a prediction difficulty for the physical network device and / or - an importance of the physical network device in the network in- computer as a hub in said network.
4. Method (100) according to any one of claims 1 to 3, wherein the aggregation step (110) comprises a step (140) of sampling a subset of information to form a training set, said training set being used during a step (115, 130) of training a machine learning device.
5. Method (100) according to any one of claims 1 to 4, wherein the aggregation step (110) comprises a step (145) of defining a prediction duration, said prediction duration being used during a step (115, 130) of training a machine learning device.
6. Method (100) according to any one of claims 1 to 5, which comprises a step (150) of enriching a training set, said enriched enrichment set being used during a step (115, 130) of training a machine learning device.
7. A method (100) according to any one of claims 1 to 6, which comprises a step (155) of adjusting local network connectivity based on a long-term local connectivity demand prediction.
8. The method (100) of any one of claims 1 to 7, wherein a value representative of the connectivity request corresponds to a response time of a remote device.
9. The method (100) of any one of claims 1 to 8, wherein the step (115) of training a machine learning device comprises: - training (160) an extreme random forest device, - training (165) a support vector machine regressor device, and - training (170) a gradient boosting regressor device.
10. Method (100) according to any one of claims 1 to 9, which comprises a step (101) of associating a prediction reliability indicator with at least one physical network device, such a reliability indicator being aggregated during the step (110) of aggregating, providing (105) a long-term prediction and / or updating (125) the long-term prediction.
11. A method (100) according to any one of claims 1 to 10, which comprises a step (102) of associating a network importance indicator with at least one physical network device, such a network importance indicator being aggregated during the step (110) of aggregating, providing (105) a long-term prediction and / or updating (125) the long-term prediction.
12. A device for predicting local connectivity demand to the network (300), characterized in that it comprises: - a local agent (305) associated with a physical network device (306) which belongs to a computer network (307), comprising means (310) for operating a machine learning model to provide a long-term local connectivity demand prediction, - means (315) for aggregating values representative of at least: - a connectivity demand of the network comprising at least one physical network device, - a purpose of use of the network comprising at least one physical network device or - a long-term local connectivity demand prediction for the physical network device, - means (320) for training a machine learning device to produce a machine learning model configured to provide a long-term local connectivity demand prediction,- means (325) for deploying the machine learning model on at least one local agent, and - means (330) for updating the long-term local connectivity demand prediction by the deployed machine learning model operated by a local agent, the aggregation, training and deployment means being configured to operate iteratively, more than once, for a duration equivalent to the duration of the long-term prediction.,