Network simulation method and device, equipment and storage medium

By acquiring reference network data sequences and updating them using the target model, the problem of inaccurate simulation results in traditional network simulators is solved, achieving more efficient and accurate network simulation.

CN121706296APending Publication Date: 2026-03-20DOUYIN VISION CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411311265.3
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-09-19
Publication Date
2026-03-20

AI Technical Summary

Technical Problem

Traditional network simulators, which simulate network environments based on mathematical statistical models, differ significantly from real-world networks, leading to inaccurate test results and difficulty in covering various situations in real-world networks, especially when constructing abnormal network conditions.

Method used

By acquiring the data sequence of the reference network, generating the prediction network data using the target model, and updating the target model based on the comparison between the prediction data and the reference data, a simulation model suitable for real-world networks is trained.

Benefits of technology

It improves the accuracy and efficiency of network simulation, enabling better simulation of various conditions in real-world networks, including anomalies, and enhances the reliability of testing and analysis.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121706296A_ABST
    Figure CN121706296A_ABST
Patent Text Reader

Abstract

The embodiment of the invention provides a network simulation method and device, equipment and a storage medium. In the method, firstly, a reference data sequence is obtained, and the reference data sequence reflects the state change of a reference network within a period of time; and then, at least based on first reference data corresponding to the first moment in the reference data sequence, utilizing the target model to generate prediction network data corresponding to the second moment. The target model is used for simulating the state change of the target network. The target model is then updated based on a comparison between the predicted network data and second reference data in the reference data sequence corresponding to the second moment in time. In this way, the predicted network data can be generated using the target model, thereby improving the efficiency and accuracy of network simulation.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The exemplary embodiments disclosed herein generally relate to the field of computer technology, and particularly to methods, apparatus, devices, and computer-readable storage media for network simulation. Background Technology

[0002] A network simulator is a tool used to simulate network conditions, typically employed in network transmission research and testing. During the development phase of network products, it's often necessary to test the product's performance in various real-world network scenarios. Network simulators provide users with a convenient platform to create simulated network environments, allowing for the testing and analysis of applications running within those environments.

[0003] Traditional network simulators simulate network environments based on mathematical statistical models, such as packet loss, jitter, and rate limiting. Because the simulated network environment provided by these mathematical statistical models differs significantly from the actual network environment, the accuracy of results obtained from testing and analysis in network simulators is relatively low. Summary of the Invention

[0004] In a first aspect of this disclosure, a network simulation method is provided. The method includes: acquiring a reference data sequence reflecting the state changes of a reference network over a period of time; generating predicted network data corresponding to a second time step using a target model, based at least on first reference data in the reference data sequence corresponding to a first time step, the target model being used to simulate the state changes of the target network; and updating the target model based on a comparison between the predicted network data and second reference data in the reference data sequence corresponding to the second time step.

[0005] In a second aspect of this disclosure, a network simulation apparatus is provided. The apparatus includes: an acquisition module configured to acquire a reference data sequence reflecting the state changes of a reference network over a period of time; a generation module configured to generate predicted network data corresponding to a second time step, using a target model and based at least on first reference data in the reference data sequence corresponding to a first time step, the target model being used to simulate the state changes of the target network; and an update module configured to update the target model based on a comparison between the predicted network data and second reference data in the reference data sequence corresponding to the second time step.

[0006] In a third aspect of this disclosure, an electronic device is provided. The device includes at least one processing unit; and at least one memory coupled to the at least one processing unit and storing instructions for execution by the at least one processing unit. When executed by the at least one processing unit, the instructions cause the device to perform the method of the first aspect.

[0007] In a fourth aspect of this disclosure, a computer-readable storage medium is provided. The medium stores a computer program that, when executed by a processor, implements the method of the first aspect.

[0008] It should be understood that the description in this section is not intended to limit the key or essential features of the embodiments of this disclosure, nor is it intended to restrict the scope of this disclosure. Other features of this disclosure will become readily apparent from the following description. Attached Figure Description

[0009] The above and other features, advantages, and aspects of the embodiments of this disclosure will become more apparent from the accompanying drawings and the following detailed description. In the drawings, the same or similar reference numerals denote the same or similar elements, wherein:

[0010] Figure 1 A schematic diagram of an example environment in which embodiments of the present disclosure can be implemented is shown;

[0011] Figure 2 A schematic diagram of an architecture for network simulation according to some embodiments of the present disclosure is shown;

[0012] Figure 3 A schematic diagram of a data sequence for network simulation according to some embodiments of the present disclosure is shown;

[0013] Figure 4 A flowchart of a method for network simulation according to some embodiments of the present disclosure is shown;

[0014] Figure 5 A block diagram of an apparatus for network simulation according to some embodiments of the present disclosure is shown; and

[0015] Figure 6 A block diagram of an apparatus capable of implementing several embodiments of the present disclosure is shown. Detailed Implementation

[0016] Embodiments of this disclosure will now be described in more detail with reference to the accompanying drawings. While some embodiments of this disclosure are shown in the drawings, it should be understood that this disclosure can be implemented in various forms and should not be construed as limited to the embodiments set forth herein. Rather, these embodiments are provided to provide a more thorough and complete understanding of this disclosure. It should be understood that the accompanying drawings and embodiments of this disclosure are for illustrative purposes only and are not intended to limit the scope of protection of this disclosure.

[0017] In the description of embodiments of this disclosure, the term "comprising" and similar terms should be understood as open-ended inclusion, i.e., "including but not limited to". The term "based on" should be understood as "at least partially based on". The term "one embodiment" or "the embodiment" should be understood as "at least one embodiment". The term "some embodiments" should be understood as "at least some embodiments". Other explicit and implicit definitions may also be included below.

[0018] In this document, unless explicitly stated otherwise, performing a step in response to A does not mean that the step is performed immediately after A, but may include one or more intermediate steps.

[0019] It is understood that the data involved in this technical solution (including but not limited to the data itself, the acquisition or use of the data) shall comply with the requirements of relevant laws, regulations and related provisions.

[0020] It is understood that before using the technical solutions disclosed in the various embodiments of this disclosure, users should be informed of the types, scope of use, and usage scenarios of the personal information involved in this disclosure through appropriate means in accordance with relevant laws and regulations, and user authorization should be obtained.

[0021] For example, in response to receiving a user's active request, a prompt message is sent to the user to clearly inform the user that the requested operation will require the acquisition and use of the user's personal information, thereby enabling the user to choose whether to provide personal information to the software or hardware such as electronic devices, applications, servers or storage media that perform the operation of the technical solution disclosed herein, based on the prompt message.

[0022] As an optional but non-restrictive implementation, in response to a user's active request, a prompt message can be sent to the user, such as a pop-up window, where the prompt message can be presented in text format. Furthermore, the pop-up window can also include a selection control allowing the user to choose "agree" or "disagree" to provide personal information to the electronic device.

[0023] It is understood that the above notification and user authorization process are merely illustrative and do not constitute a limitation on the implementation of this disclosure. Other methods that comply with relevant laws and regulations may also be applied to the implementation of this disclosure.

[0024] Traditionally, network simulators simulate network conditions by integrating various statistical models, such as random packet loss models and Gilbert-Elliot (GE) packet loss models. However, the network conditions simulated based on statistical models often differ significantly from those of real-world networks. When using these simulated networks to test and analyze network products or algorithms, accurate test results cannot be obtained. Furthermore, it is common for products or algorithms to perform well in network simulator environments but poorly in real-world networks.

[0025] Furthermore, due to the complex and ever-changing nature of real-world networks, statistical model-based network simulators typically cannot cover all the various network conditions encountered in real-world networks. Some unique network conditions that arise in real-world networks cannot be constructed using statistical model-based network simulators. Products and algorithms that pass reliability tests in network simulators may exhibit various anomalies in real-world networks.

[0026] In the application of network simulators, it is often necessary to construct a simulated network environment based on the network conditions of real-world networks within the simulator. For example, when testing and analyzing the performance of a product or algorithm under abnormal conditions in a real-world network (e.g., excessively high packet loss rate), it is necessary to construct a simulated network with abnormal conditions in the network simulator. However, in traditional network simulators, it is difficult to construct the corresponding network according to the requirements.

[0027] To address the above and other potential problems, embodiments of this disclosure propose a scheme for network simulation. In this scheme, first reference data corresponding to a first time step in a reference data sequence is input into a target model to generate predicted network data corresponding to a second time step. Then, the target model is updated based on a comparison between the predicted network data and the reference data sequence. In this way, the reference data sequence in the reference network can be used to train the target model. The scheme of this disclosure can utilize the target model for network simulation, improving the efficiency and accuracy of network simulation.

[0028] Some exemplary embodiments of this disclosure will now be described with reference to the accompanying drawings.

[0029] Figure 1A schematic diagram of an example environment 100 that can be implemented according to embodiments of the present disclosure is shown. In this example environment 100, a network simulation device 101 is used to transmit and process network data. The network simulation device 101 can also be used to simulate a network to generate a target network 120. Hereinafter, the target network 120 is also referred to as a simulated network. As an example, the network simulation device 101 may include a target model 110, or obtain a target model 110 from another device. The network simulation device 110 can train the target model 110 using various network data from a reference network 130. The trained target model 110 can be used to simulate the conditions or state changes of the target network 120 to generate simulated network data for the simulation and analysis of network products and algorithms.

[0030] Specifically, network simulation device 101 can provide network data of reference network 130 to target model 110. Network simulation device 101 can also compare the network data generated by target model 110 with the network data of reference network 130, and update target model 110 based on the comparison result. Furthermore, network simulation device 101 can use the updated target model 110 to generate network data for target network 120.

[0031] In some embodiments, the reference network 130 may be a real-world network, such as the Internet, a local area network, a mobile communication network, or other suitable network. Alternatively, the reference network 130 may also be a network generated by another network simulator.

[0032] In some embodiments, the network emulation device 101 can be any type of computing device, including terminal devices or server devices. Terminal devices can be any type of mobile terminal, fixed terminal, or portable terminal, including mobile phones, desktop computers, laptop computers, notebook computers, netbook computers, tablet computers, media computers, multimedia tablets, personal communication system (PCS) devices, personal navigation devices, personal digital assistants (PDAs), audio / video players, digital cameras / camcorders, positioning devices, television receivers, radio receivers, e-book devices, gaming devices, or any combination of the foregoing, including accessories and peripherals of these devices or any combination thereof. Server devices may include, for example, computing systems / servers, such as mainframes, edge computing nodes, computing devices in cloud environments, etc. It should be understood that the network emulation device 101 can be configured to implement any or all of the technologies of the embodiments of this disclosure, and the embodiments of this disclosure do not impose any limitations on this.

[0033] It should be understood that the structure and function of environment 100 are described for illustrative purposes only and do not imply any limitation on the scope of this disclosure. Figure 1The various devices or modules shown are exemplary and are not intended to limit the scope of this disclosure. Exemplary embodiments according to this disclosure will now be described in detail with reference to the accompanying drawings.

[0034] Figure 2 A schematic diagram of an architecture 200 for simulating a network according to some embodiments of the present disclosure is shown. Architecture 200 can be, for example... Figure 1 This is implemented using network simulation device 101 or other suitable device. For illustrative purposes, reference is made below. Figure 1 To describe architecture 200.

[0035] like Figure 2 As shown, the network simulation device 101 acquires a reference data sequence 210 from a reference network 130. The reference data sequence 210 may include multiple reference data items, such as first reference data 211 and second reference data 212. Reference data from the reference network 130 at different times can be arranged in chronological order to form the reference data sequence 210. For example, a set of reference data collected periodically or non-periodically within a predetermined time period can be used to generate the reference data sequence 210 according to the collection time. It should be understood that although in Figure 2 The example shows a reference data sequence 210 including two reference data points, but in some embodiments, the reference data sequence 210 may include more than two reference data points.

[0036] In some embodiments, the network simulation device 101 generates predicted network data 220 corresponding to a second time step using the target model 110, based at least on first reference data 211 in the reference data sequence 210 corresponding to a first time step. The network simulation device 101 then updates the target model 110 based on a comparison between the predicted network data 220 and second reference data 212 in the reference data sequence 210 corresponding to the second time step. In this document, updating the model refers to updating the parameters of the model; updating the model is also referred to as training the model or training the model.

[0037] In some embodiments, the reference data sequence 210 is a sequence of network data corresponding to the reference network 130 at each time point. Furthermore, the network simulation device 101 can generate a prediction data sequence from the target model 110 based on multiple reference data corresponding to multiple different time points in the reference data sequence 210. The network simulation device 101 can update the target model 110 based on the multiple reference data and associated prediction network data in the reference data sequence and the prediction data sequence.

[0038] Figure 3 A schematic diagram of a reference data sequence 210 and a predicted data sequence 310 according to some embodiments of the present disclosure is shown. Figure 3As shown, the reference data sequence 210 may include first reference data 211 corresponding to the first time 301, second reference data 212 corresponding to the second time 302, third reference data 323 corresponding to the third time 303, ... and Nth reference data 325 corresponding to the Nth time 305 (N is an integer greater than 1). The prediction data sequence 310 may include prediction network data 220 corresponding to the second time 302, prediction network data 313 corresponding to the third time 303, ... and prediction network data 315 corresponding to the Nth time 305, etc.

[0039] As previously described, the first reference data 211 corresponding to the first time point 301 in the reference data sequence 210 is input into the target model 110 to generate prediction network data 220. Next, the target model 110 can be updated based on a comparison between the second reference data 212 corresponding to the second time point 302 and the prediction network data 220. In some embodiments, the second time point 302 can be the next time point after the first time point 301, or any time point different from the first time point 301. For example, one or more other times can be included between the first time point 301 and the second time point 302.

[0040] In some embodiments, the updating or training of the target model 110 can be performed iteratively. For example, the target model 110, updated using a comparison between the prediction network data 220 at the second time 302 and the second reference data 212, can obtain the prediction network data 313 at the third time 303 based on the first reference data 211 and the second reference data 212. The target model 110 can be further updated based on a comparison between the prediction network data 313 and the third reference data 323.

[0041] In some embodiments, the time length or number of time points for training or updating the target model 110 can be preset. For example, the target model 110 can be trained using reference network data corresponding to a predetermined number of time points. Alternatively, in some embodiments, a threshold for stopping the training or updating of the target model 110 can be set. If the difference between the reference data at a certain time point and the predicted network data generated by the target model 110 does not exceed the threshold, the updating of the target model 110 can be stopped.

[0042] Continue to refer to Figure 2In some embodiments, the network simulation device 101 can train the target model 110 using self-supervised learning. For example, the network simulation device 101 can train the target model 110 based on contrastive constraints. For instance, when comparing the predicted network data 220 and the second reference data 212, the second reference data is set as a positive sample, and the reference data in the reference data sequence 210 corresponding to other times besides the second time step are set as negative samples. Then, the target model 110 is trained based on a metric of the distance between the predicted network data 220 and the positive and negative samples. A similar approach can be used to further train the target model 110 for reference data and predicted network data at other times. It should be understood that the training of the target model 110 can take any suitable manner, and the embodiments of this disclosure do not impose any limitations on this.

[0043] In some embodiments, the network simulation device 101 can update the parameters of the target model 110 by minimizing the difference between the predicted network data and the corresponding reference data. Specifically, the cross-entropy loss function can be used to compare minimizing the difference between the predicted network data and the corresponding reference data. The network simulation device 101 can update the parameters of the target model 110 by minimizing the value of the cross-entropy loss function. It should be understood that the above examples of comparing the difference between the predicted network data and the corresponding reference data are merely exemplary, and this disclosure does not impose any limitations on them.

[0044] By generating prediction network data using reference data from a reference data sequence, and updating the target model by comparing the prediction network data with the reference data from the reference data sequence, a target model with high accuracy can be trained at low cost.

[0045] In some embodiments, the reference data sequence 210 may include at least one of the following: packet loss rate data sequence, jitter data sequence, round-trip delay data sequence, out-of-order data sequence, or total received bit rate data sequence. Specifically, for example, if the reference data sequence 210 includes a packet loss rate data sequence, then the first reference data 211 includes packet loss rate data of the reference network 130 corresponding to a first time point T1, and the second reference data 212 includes packet loss rate data of the reference network 130 corresponding to a second time point T2. By employing different types of reference data sequences to train the target model 110, the trained target model 110 can be adapted to different network scenarios. In some embodiments, the reference data sequence 210 may include only one type of data sequence, thereby enabling the trained target model 110 to better predict network scenarios corresponding to that type of data sequence.

[0046] In some embodiments, the target model 110 can be trained based on at least one of a reference event type and a reference application scenario type. Specifically, the reference event type includes at least one of network packet loss events, network jitter events, network round-trip delay events, network bandwidth limiting events, or network out-of-order scenarios. For example, if the reference event type includes network packet loss events, then the reference data sequence 210 will include a packet loss rate data sequence of the reference network 130. In this way, the trained target model 110 can be used to simulate different application scenarios.

[0047] The reference application scenario type includes at least one of multimedia data download, multimedia data transmission, cloud gaming, or network communication. For example, if the reference application scenario type includes multimedia data download, then the reference data sequence 210 will include network data from the reference network 130 in the multimedia data download scenario.

[0048] As an example, the target model 110 may be a machine learning model with a transformer (Transformer architecture). Specifically, the target model 110 may include a self-attention mechanism, allowing it to consider data at all positions in the input reference data sequence 210 simultaneously. Furthermore, in some embodiments, the target model 110 may assign different weights to different portions of the reference data sequence 210. It should be understood that the target model 110 may also be implemented using any other suitable model. The embodiments of this disclosure are not limited in this respect.

[0049] It should be understood that this disclosure does not limit the number of reference networks 130 and target networks 120. For example, reference data sequences 210 from multiple reference networks 130 can be used to generate prediction network data 220, and the state changes of multiple target networks 120 can be reflected by the target model 110.

[0050] Using the exemplary embodiments discussed above, predictive network data can be generated by using a reference data sequence based on a reference network and a target model, and the target model can be updated based on a comparison between the predictive network data and the reference data sequence. This can improve the performance of the target model in simulating the target network, thereby improving the efficiency and accuracy of network simulation.

[0051] After updating the target model 110, the network simulation device 101 can use the updated target model 110 to generate a simulated data sequence. Here, the simulated data sequence reflects the simulated state changes of the target network 120 over a period of time.

[0052] In some embodiments, the network simulation device 101 can generate a simulated data sequence based on a target event type using an updated target model 110. Here, the simulated data sequence is used to simulate state changes in the target network 120 corresponding to the target event type. The target event type includes at least one of the following: network packet loss event, network jitter event, network round-trip delay event, network bandwidth throttling event, or network out-of-order scenario.

[0053] Specifically, for example, if the target event type is "network packet loss event", the network simulation device 101 uses the updated target model 110 to generate a simulation data sequence that includes network data simulating a network packet loss event occurring in the target network 120, thereby simulating a network in the network simulator where the target event type occurs. In some embodiments, the target event type may be the same as or different from the reference event types mentioned above. This disclosure does not limit the number or frequency of target event types; for example, the simulation data sequence may simulate state changes of the target network 120 corresponding to multiple and / or numerous target event types.

[0054] In some embodiments, a simulated data sequence can be generated using an updated target model 110 based on a target application scenario type. Here, the simulated data sequence is used to simulate state changes in the target network 120 corresponding to the target application scenario type. The target application scenario type includes at least one of multimedia data download, multimedia data transmission, cloud gaming, or network communication.

[0055] Specifically, if the target application scenario type is "network communication," such as instant messaging, communication with background streaming, or other network communication methods, the network simulation device 101 uses the updated target model 110 to generate a simulation data sequence that includes network data simulating network communication occurring in the target network 120, thereby simulating a network conforming to the target application scenario type in the network simulator. The target application scenario type can be the same as or different from the reference application scenario type mentioned above. This disclosure does not limit the number of target application types; for example, the simulation data sequence can simulate the state changes of the target network 120 corresponding to multiple target application scenario types simultaneously.

[0056] In this way, a simulated data sequence reflecting the state changes of the target network over a period of time can be generated using a trained target model. Furthermore, a simulated network that meets the target requirements can be obtained based on the target event type and the target application scenario type, thereby improving the efficiency and accuracy of network simulation.

[0057] Figure 4 A flowchart of a method 400 for network simulation according to some embodiments of the present disclosure is shown. Method 400 may, for example, be derived by... Figure 1The network simulation device 101 or other appropriate device shall be used to perform this.

[0058] At 410, network simulation device 101 acquires a reference data sequence reflecting the state changes of a reference network over a period of time. At 420, network simulation device 101, based at least on first reference data in the reference data sequence corresponding to a first time step, uses a target model to generate predicted network data corresponding to a second time step, the target model being used to simulate the state changes of the target network. At 430, network simulation device 101 updates the target model based on a comparison between the predicted network data and second reference data in the reference data sequence corresponding to the second time step.

[0059] In some exemplary embodiments, network simulation device 101 may use an updated target model to generate a simulated data sequence that reflects the simulated state changes of the target network over a period of time.

[0060] In some exemplary embodiments, the network simulation device 101 may generate a simulated data sequence based on a target event type and using an updated target model. The simulated data sequence simulates the state changes of the target network corresponding to the target event type, which includes at least one of network packet loss events, network jitter events, network round-trip delay events, network bandwidth throttling events, or network out-of-order scenarios.

[0061] In some exemplary embodiments, the network simulation device 101 may generate a simulated data sequence based on a target application scenario type and using an updated target model. The simulated data sequence simulates the state changes of the target network under the target application scenario type, which includes at least one of multimedia data download, multimedia data transmission, cloud gaming, or network communication.

[0062] In some exemplary embodiments, the network simulation device 101 can update the parameters of the target model by minimizing the difference between the predicted network data and the second reference data.

[0063] In some exemplary embodiments, the reference data sequence may include at least one of a packet loss rate data sequence, a jitter data sequence, a round-trip delay data sequence, an out-of-order data sequence, or a total received bit rate data sequence.

[0064] In some exemplary embodiments, the target model may be trained based on at least one of a reference event type or a reference application scenario type.

[0065] In some exemplary embodiments, the reference event type may include at least one of the following: network packet loss event, network jitter event, network round-trip delay event, network bandwidth throttling event, or network out-of-order scenario.

[0066] In some exemplary embodiments, the reference application scenario type may include at least one of multimedia data download, multimedia data transmission, cloud gaming, or network communication.

[0067] Figure 5 A block diagram of an apparatus 500 for network simulation according to some embodiments of the present disclosure is shown. The apparatus 500 may be implemented as or included in... Figure 1 In the network simulation device 101. The various modules / components in the device 500 can be implemented by hardware, software, firmware, or any combination thereof.

[0068] As shown in the figure, the device 500 includes an acquisition module 510 configured to acquire a reference data sequence, which reflects the state changes of a reference network over a period of time. The device 500 also includes a generation module 520 configured to generate prediction network data corresponding to a second time step, based at least on first reference data in the reference data sequence corresponding to a first time step, using a target model. The target model is used to simulate the state changes of the target network. The device 500 further includes an update module 530 configured to update the target model based on a comparison between the prediction network data and second reference data in the reference data sequence corresponding to the second time step.

[0069] In some exemplary embodiments, the generation module 520 may be further configured to generate a simulated data sequence using an updated target model, the simulated data sequence reflecting the simulated state changes of the target network over a period of time.

[0070] In some exemplary embodiments, the generation module 520 may be further configured to generate a simulated data sequence based on a target event type and using an updated target model. The simulated data sequence simulates the state changes of the target network corresponding to the target event type, which includes at least one of network packet loss events, network jitter events, network round-trip delay events, network bandwidth throttling events, or network out-of-order scenarios.

[0071] In some exemplary embodiments, the generation module 520 may be further configured to generate a simulated data sequence based on a target application scenario type and using an updated target model. The simulated data sequence simulates the state changes of the target network under the target application scenario type, which includes at least one of multimedia data download, multimedia data transmission, cloud gaming, or network communication.

[0072] In some exemplary embodiments, the update module 530 may be further configured to update the parameters of the target model by minimizing the difference between the prediction network data and the second reference data.

[0073] In some exemplary embodiments, the reference data sequence may include at least one of a packet loss rate data sequence, a jitter data sequence, a round-trip delay data sequence, an out-of-order data sequence, or a total received bit rate data sequence.

[0074] In some exemplary embodiments, the target model may be trained based on at least one of a reference event type or a reference application scenario type.

[0075] In some exemplary embodiments, the reference event type may include at least one of the following: network packet loss event, network jitter event, network round-trip delay event, network bandwidth throttling event, or network out-of-order scenario.

[0076] In some exemplary embodiments, the reference application scenario type may include at least one of multimedia data download, multimedia data transmission, cloud gaming, or network communication.

[0077] Figure 6 A block diagram of an electronic device 600 in which one or more embodiments of the present disclosure may be implemented is shown. It should be understood that... Figure 6 The electronic device 600 shown is merely exemplary and should not be construed as limiting the functionality and scope of the embodiments described herein. Figure 6 The electronic device 600 shown can be used to achieve Figure 1 Network simulation device 101 or Figure 5 Device 500 for network simulation.

[0078] like Figure 6 As shown, electronic device 600 is in the form of a general-purpose computing device. Components of electronic device 600 may include, but are not limited to, one or more processors or processing units 610, memory 620, storage device 630, one or more communication units 640, one or more input devices 650, and one or more output devices 660. Processing unit 610 may be a physical or virtual processor and is capable of performing various processes according to programs stored in memory 620. In a multiprocessor system, multiple processing units execute computer-executable instructions in parallel to improve the parallel processing capability of electronic device 600.

[0079] Electronic device 600 typically includes multiple computer storage media. Such media can be any available media accessible to electronic device 600, including but not limited to volatile and non-volatile media, removable and non-removable media. Memory 620 can be volatile memory (e.g., registers, cache, random access memory (RAM)), non-volatile memory (e.g., read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory), or some combination thereof. Storage device 630 can be removable or non-removable media and can include machine-readable media, such as flash drives, disks, or any other media capable of storing information and / or data and accessible within electronic device 600.

[0080] Electronic device 600 may further include additional removable / non-removable, volatile / non-volatile storage media. Although not explicitly stated... Figure 6 As shown, disk drives for reading from or writing to removable, non-volatile disks (e.g., "floppy disks") and optical disk drives for reading from or writing to removable, non-volatile optical disks can be provided. In these cases, each drive can be connected to a bus (not shown) via one or more data media interfaces. Memory 620 may include computer program product 625 having one or more program modules configured to perform various methods or actions of various embodiments of this disclosure.

[0081] The communication unit 640 enables communication with other electronic devices via a communication medium. Additionally, the functionality of the components of the electronic device 600 can be implemented using a single computing cluster or multiple computing machines capable of communicating via communication connections. Therefore, the electronic device 600 can operate in a networked environment using logical connections to one or more other servers, network personal computers (PCs), or another network node.

[0082] Input device 650 can be one or more input devices, such as a mouse, keyboard, trackball, etc. Output device 660 can be one or more output devices, such as a monitor, speaker, printer, etc. Electronic device 600 can also communicate with one or more external devices (not shown) via communication unit 640 as needed. These external devices include storage devices, display devices, etc., and can communicate with one or more devices that enable user interaction with electronic device 600, or with any device that enables electronic device 600 to communicate with one or more other electronic devices (e.g., network card, modem, etc.). Such communication can be performed via input / output (I / O) interface (not shown).

[0083] According to an exemplary implementation of this disclosure, a computer-readable storage medium is provided that stores computer-executable instructions thereon, wherein the computer-executable instructions are executed by a processor to implement the methods described above. According to an exemplary implementation of this disclosure, a computer program product is also provided, which is tangibly stored on a non-transitory computer-readable medium and includes computer-executable instructions, which are executed by a processor to implement the methods described above.

[0084] Various aspects of this disclosure are described herein with reference to flowchart illustrations and / or block diagrams of methods, apparatuses, devices, and storage media implemented according to this disclosure. It should 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.

[0085] These computer-readable program instructions can be provided to a processing unit of a general-purpose computer, a special-purpose computer, or other programmable data processing apparatus to produce a machine such that, when executed by the processing unit of the computer or other programmable data processing apparatus, they create means for implementing the functions / actions specified in one or more blocks of the flowchart and / or block diagram. These computer-readable program instructions can also be stored in a computer-readable storage medium that causes a computer, programmable data processing apparatus, and / or other device to operate in a particular manner. Thus, the computer-readable medium storing the instructions comprises an article of manufacture that includes instructions for implementing aspects of the functions / actions specified in one or more blocks of the flowchart and / or block diagram.

[0086] Computer-readable program instructions can be loaded onto a computer, other programmable data processing apparatus, or other device to cause a series of operational steps to be performed on the computer, other programmable data processing apparatus, or other device to produce a computer-implemented process, thereby causing the instructions that execute on the computer, other programmable data processing apparatus, or other device to perform the functions / actions specified in one or more boxes of a flowchart and / or block diagram.

[0087] The flowcharts and block diagrams in the accompanying drawings illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments of this disclosure. In this regard, each block in a flowchart or block diagram may represent a module, segment, or portion of an instruction, which contains one or more executable instructions for implementing the specified logical function. In some alternative implementations, the functions indicated in the blocks may occur in a different order than those indicated in the drawings. For example, two consecutive blocks may actually be executed substantially in parallel, and they may sometimes be executed in reverse order, depending on the functions involved. It should also be noted that each block in the block diagrams and / or flowcharts, and combinations of blocks in the block diagrams and / or flowcharts, may be implemented using a dedicated hardware-based system that performs the specified function or action, or using a combination of dedicated hardware and computer instructions.

[0088] Various implementations of this disclosure have been described above. These descriptions are exemplary and not exhaustive, nor are they limited to the disclosed implementations. Many modifications and variations will be apparent to those skilled in the art without departing from the scope and spirit of the described implementations. The terminology used herein is chosen to best explain the principles, practical applications, or improvements to technology in the market, or to enable others skilled in the art to understand the various implementations disclosed herein.

Claims

1. A network simulation method, comprising: Obtain a reference data sequence, which reflects the state changes of the reference network over a period of time; Based at least on first reference data corresponding to a first time step in the reference data sequence, predictive network data corresponding to a second time step is generated using a target model, wherein the target model is used to simulate the state changes of the target network; and The target model is updated based on a comparison between the predicted network data and the second reference data in the reference data sequence corresponding to the second time step.

2. The method according to claim 1, further comprising: Using the updated target model, a simulated data sequence is generated that reflects the simulated state changes of the target network over a period of time.

3. The method of claim 2, wherein generating the simulated data sequence comprises: Based on the target event type, the updated target model is used to generate the simulated data sequence, which simulates the state changes of the target network corresponding to the target event type, wherein the target event type includes at least one of the following: Network packet loss events, network jitter events, network round-trip delay events, network bandwidth throttling events, or network out-of-order scenarios.

4. The method of claim 2, wherein generating the simulated data sequence comprises: Based on the target application scenario type, the updated target model is used to generate the simulated data sequence, which simulates the state changes of the target network under the target application scenario type. The target application scenario type includes at least one of the following: Multimedia data download, multimedia data transmission, cloud gaming, or network communication.

5. The method of claim 1, wherein updating the target model comprises: The parameters of the target model are updated by minimizing the difference between the prediction network data and the second reference data.

6. The method of claim 1, wherein the reference data sequence comprises at least one of the following: Packet loss rate data sequence, Jittered data sequence, Round-trip delay data sequence, Out-of-order data sequences, or Receive the total bitrate data sequence.

7. The method of claim 1, wherein the target model is further trained based on at least one of the following: Refer to the event type, or Refer to the application scenario type.

8. The method of claim 7, wherein the reference event type includes at least one of the following: Network packet loss events, Network jitter incident, Network round-trip delay events, Network bandwidth throttling incidents, or Network disorder scenarios.

9. The method according to claim 7, wherein the reference application scenario type includes at least one of the following: Multimedia data download Multimedia data transmission, Cloud gaming, or Network communication.

10. A network simulation device, comprising: The acquisition module is configured to acquire a reference data sequence, which reflects the state changes of the reference network over a period of time. The generation module is configured to generate predictive network data corresponding to a second time step based at least on first reference data corresponding to a first time step in the reference data sequence, using a target model, wherein the target model is used to simulate the state changes of the target network; as well as The update module is configured to update the target model based on a comparison between the prediction network data and the second reference data in the reference data sequence corresponding to the second time step.

11. An electronic device, comprising: At least one processing unit; as well as At least one memory, coupled to the at least one processing unit and storing instructions for execution by the at least one processing unit, which, when executed by the at least one processing unit, cause the electronic device to perform the method according to any one of claims 1 to 9.

12. A computer-readable storage medium having a computer program stored thereon, the computer program being executable by a processor to implement the method according to any one of claims 1 to 9.