CN116886687A - Method, device and storage medium for displaying network acceleration effect - Google Patents

Method, device and storage medium for displaying network acceleration effect Download PDF

Info

Publication number
CN116886687A
CN116886687A CN202310750205.0A CN202310750205A CN116886687A CN 116886687 A CN116886687 A CN 116886687A CN 202310750205 A CN202310750205 A CN 202310750205A CN 116886687 A CN116886687 A CN 116886687A
Authority
CN
China
Prior art keywords
network
application
downloading
flow
network acceleration
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202310750205.0A
Other languages
Chinese (zh)
Inventor
王金香
梁恒辉
吴东昂
于萍
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Honor Device Co Ltd
Original Assignee
Honor Device Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Honor Device Co Ltd filed Critical Honor Device Co Ltd
Priority to CN202310750205.0A priority Critical patent/CN116886687A/en
Publication of CN116886687A publication Critical patent/CN116886687A/en
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/06Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/04Processing captured monitoring data, e.g. for logfile generation
    • H04L43/045Processing captured monitoring data, e.g. for logfile generation for graphical visualisation of monitoring data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/15Flow control; Congestion control in relation to multipoint traffic
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/75Indicating network or usage conditions on the user display
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W24/00Supervisory, monitoring or testing arrangements
    • H04W24/02Arrangements for optimising operational condition
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W28/00Network traffic management; Network resource management
    • H04W28/02Traffic management, e.g. flow control or congestion control
    • H04W28/10Flow control between communication endpoints

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Mining & Analysis (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

The embodiment of the application provides a method, equipment and a storage medium for displaying a network acceleration effect, wherein the method comprises the following steps: after determining that the application starts downloading, acquiring the downloading rate of each network used in the downloading process; after the end of the downloading of the application is determined, determining a network acceleration effect according to the downloading rate of each network; and displaying the network acceleration effect. According to the scheme, the network acceleration effect is determined according to the downloading rate of each used network in the downloading process and is displayed after the downloading is finished, so that a user has visual feeling on the improvement of the downloading rate brought by the network acceleration function, and the use experience of the network acceleration function of the electronic equipment is improved.

Description

Method, device and storage medium for displaying network acceleration effect
The application is a divisional application of an application patent application of which the application date is 2022, 01, 10, application number is 202210022502.9 and the application name is a method, equipment and storage medium for displaying network acceleration effect.
Technical Field
The present application relates to the field of network acceleration technologies, and in particular, to a method, an apparatus, and a storage medium for displaying a network acceleration effect.
Background
When the electronic equipment is connected with the internet, the network acceleration technology can be utilized to improve the downloading rate of the data, so that a user can obtain smoother internet surfing experience. Such as using network acceleration techniques to increase the download rate when downloading files. However, the user often cannot feel the improvement of the downloading rate caused by the network acceleration, so that the use experience of the network acceleration function of the electronic device is poor.
Disclosure of Invention
The application provides a display method, equipment and a storage medium for a network acceleration effect, which are used for improving the use experience of a network acceleration function of electronic equipment.
In order to achieve the above object, the present application provides the following technical solutions:
the first aspect of the present application provides a method for displaying a network acceleration effect, including:
activating a plurality of networks;
after determining that the application starts downloading, downloading data through the activated networks;
acquiring the download rates of the plurality of networks in the download process;
after the end of downloading of the application is determined, determining a network acceleration effect according to the downloading rates of the networks;
and displaying the network acceleration effect.
By way of example, the plurality of pre-activated networks may include at least one wireless network, and at least one cellular network.
The specific procedure for activating a plurality of networks can be seen from steps S01 to S12 shown in fig. 6. An implementation of downloading data using the activated plurality of networks may be referred to as steps S19 to S20 shown in fig. 6.
According to the scheme, the network acceleration effect is determined according to the downloading rate of each used network in the downloading process and is displayed after the downloading is finished, so that a user has visual feeling on the improvement of the downloading rate brought by the network acceleration function, and the use experience of the network acceleration function of the electronic equipment is improved.
In some optional embodiments, the network acceleration effect includes a rate-increase ratio of the current download process, where the rate-increase ratio is a ratio of a download rate of a primary network of the plurality of networks to a sum of download rates of other networks, where the other networks include networks of the plurality of networks other than the primary network.
The electronic device may calculate the sum of the download rates of the networks other than the main network used in the present download process, and then use the ratio of the calculated sum of the download rates to the download rate of the main network in the present download process as the network acceleration effect.
A specific implementation manner of this embodiment may refer to step S25 to step a02 shown in fig. 8.
In some alternative embodiments, the network acceleration effect includes an average acceleration ratio that is an average of rate-rise ratios of multiple download processes over a specified period.
As an example, the electronic device saves the rate-improving proportion of the downloading process after each downloading process is finished, so that the electronic device can calculate the average value of the rate-improving proportion of all the downloading processes completed in the last month or the last week, obtain the average acceleration proportion, and take the average acceleration proportion as the network acceleration effect.
A specific implementation of this embodiment may refer to steps S25 to S30 shown in fig. 6.
As can be seen from the above embodiments, the electronic device may display the current rate-up ratio and the average acceleration ratio of the last period of time as network acceleration effects after the downloading is completed, so as to help the user determine whether to continue to enable the network acceleration function according to the network acceleration effects.
In some alternative embodiments, the obtaining the download rate of each network used in the download process includes:
monitoring data flow information of the application in the downloading process;
and determining the downloading rate of each network used in the downloading process according to the data flow information of the application.
In practical application, the data flow information of the application may include the download rate of each data flow of the application and the network carrying the data flow, and the electronic device may determine, according to the data flow information, which data flows of the application are respectively carried by each network, and then sum the download rates of the data flows carried by the network, so as to obtain the download rate of each network.
In some optional embodiments, the displaying the network acceleration effect includes:
and displaying a notification message on the top of the display screen, wherein the notification message comprises the network acceleration effect.
The method has the beneficial effects that the network acceleration effect can be timely displayed by popping up the notification message at the top after each downloading is finished.
In some optional embodiments, the displaying the network acceleration effect includes:
and responding to the user operation, displaying a network acceleration setting interface, wherein the network acceleration setting interface comprises the network acceleration effect.
The user browses the web acceleration settings interface in the settings component of the electronic device. As an example, the network acceleration setting interface may specifically be the interface shown in fig. 3.
In some alternative embodiments, further comprising:
Identifying whether the message of the data flow of the application contains the flow characteristics recorded in the flow characteristic library;
and if the message of the data flow of the application contains the flow characteristics, determining that the application starts to be downloaded.
In some alternative embodiments, the flow characteristics include any one or more of a protocol, a port, a protocol header, and a network address.
That is, the electronic device may identify whether the packet of the data stream of the application contains any one or more of a specific protocol, a port, a protocol header and a network address after the application is started, and if it is found at a certain moment that the packet of the data stream contains any one or more of a specific protocol, a port, a protocol header and a network address, the application may consider that the file is started to be downloaded from this moment.
The method and the device have the advantages that on the basis of pre-constructing the stream feature library, the method and the device can be used for judging whether most applications start downloading or not, and have a wider application range.
In some alternative embodiments, further comprising:
acquiring a message of starting downloading of the application;
and determining that the application starts to be downloaded according to the message.
In other words, the application may be configured to generate a message to start downloading after the start of downloading, whereby when the application generates the message, the application may be considered to start downloading the file from that point.
The embodiment has the advantage that whether the data stream information contains the specific stream characteristics does not need to be analyzed in real time, so that the power consumption of the electronic equipment can be reduced.
In some alternative embodiments, further comprising:
and if the downloading rate corresponding to each data stream of the application is lower than a preset threshold value, determining that the application downloading is finished.
A second aspect of the application provides an electronic device comprising a memory and one or more processors.
The memory is used for storing a computer program.
The one or more processors are configured to execute the computer program, and in particular, to execute the method for displaying a network acceleration effect provided in any one of the first aspects of the present application.
A third aspect of the present application provides a computer storage medium storing a computer program which, when executed, is specifically adapted to perform the method for displaying a network acceleration effect provided by any one of the first aspects of the present application.
The embodiment of the application provides a method, equipment and a storage medium for displaying a network acceleration effect, wherein the method comprises the following steps: after determining that the application starts downloading, acquiring the downloading rate of each network used in the downloading process; after the end of the downloading of the application is determined, determining a network acceleration effect according to the downloading rate of each network; and displaying the network acceleration effect. According to the scheme, the network acceleration effect is determined according to the downloading rate of each used network in the downloading process and is displayed after the downloading is finished, so that a user has visual feeling on the improvement of the downloading rate brought by the network acceleration function, and the use experience of the network acceleration function of the electronic equipment is improved.
Drawings
Fig. 1 is a schematic structural diagram of an electronic device according to an embodiment of the present application;
fig. 2 is a schematic diagram of a network acceleration technique according to an embodiment of the present application;
FIG. 3 is a schematic diagram of a display interface of a network acceleration effect according to an embodiment of the present application;
FIG. 4 is a schematic diagram of a display interface of another network acceleration effect according to an embodiment of the present application;
fig. 5 is a schematic software architecture diagram of an electronic device according to an embodiment of the present application;
fig. 6 is a timing chart of a method for displaying a network acceleration effect according to an embodiment of the present application;
fig. 7 is a schematic diagram of data flow information reported to a flow sensing component by a flow reporting component according to an embodiment of the present application;
FIG. 8 is a timing chart of another method for displaying network acceleration effects according to an embodiment of the present application;
fig. 9 is a flowchart of a method for displaying a network acceleration effect according to an embodiment of the present application.
Detailed Description
The technical solutions in the embodiments of the present application will be clearly and completely described below with reference to the accompanying drawings in the embodiments of the present application. The terminology used in the following examples is for the purpose of describing particular embodiments only and is not intended to be limiting of the application. As used in the specification of the application and the appended claims, the singular forms "a," "an," "the," and "the" are intended to include, for example, "one or more" such forms of expression, unless the context clearly indicates to the contrary. It should also be understood that in embodiments of the present application, "one or more" means one, two, or more than two; "and/or", describes an association relationship of the association object, indicating that three relationships may exist; for example, a and/or B may represent: a alone, a and B together, and B alone, wherein A, B may be singular or plural. The character "/" generally indicates that the context-dependent object is an "or" relationship.
The display method of the network acceleration effect provided by the embodiment of the application can be applied to electronic equipment. The electronic device may be a tablet computer, a cell phone, a wearable device, a notebook computer, an ultra-mobile personal computer (UMPC), a netbook, a personal digital assistant (personal digital assistant, PDA), or the like. The embodiment of the application does not limit the specific type of the electronic equipment.
Fig. 1 shows a schematic structural diagram of an electronic device. The electronic device 100 may include a processor 110, an external memory interface 120, an internal memory 121, a universal serial bus (universal serial bus, USB) interface 130, a charge management module 140, a power management module 141, a battery 142, an antenna 1, an antenna 2, a mobile communication module 150, a wireless communication module 160, an audio module 170, a speaker 170A, a receiver 170B, a microphone 170C, an earphone interface 170D, a sensor module 180, keys 190, a motor 191, a camera 193, a display 194, and a subscriber identity module (subscriber identificationmodule, SIM) card interface 195, etc. Among other things, the sensor module 180 may include a pressure sensor 180A, a touch sensor 180K, and the like.
It should be understood that the illustrated structure of the embodiment of the present application does not constitute a specific limitation on the electronic device 100. In other embodiments of the application, electronic device 100 may include more or fewer components than shown, or certain components may be combined, or certain components may be split, or different arrangements of components. The illustrated components may be implemented in hardware, software, or a combination of software and hardware.
The processor 110 may include one or more processing units, such as: the processor 110 may include an Application Processor (AP), a modem processor, a graphics processor (graphics processingunit, GPU), an image signal processor (image signalprocessor, ISP), a controller, a memory, a video codec, a digital signal processor (digital signal processor, DSP), a baseband processor, and/or a neural network processor (neural-network processingunit, NPU), etc. Wherein the different processing units may be separate devices or may be integrated in one or more processors. For example, the processor 110 is configured to perform a network acceleration method in an embodiment of the present application.
The controller may be a neural hub and a command center of the electronic device 100, among others. The controller can generate operation control signals according to the instruction operation codes and the time sequence signals to finish the control of instruction fetching and instruction execution.
A memory may also be provided in the processor 110 for storing instructions and data. In some embodiments, the memory in the processor 110 is a cache memory. The memory may hold instructions or data that the processor 110 has just used or recycled. If the processor 110 needs to reuse the instruction or data, it may be called directly from memory. Repeated accesses are avoided and the latency of the processor 110 is reduced, thereby improving the efficiency of the system.
The external memory interface 120 may be used to connect an external memory card, such as a Micro SD card, to enable expansion of the memory capabilities of the electronic device 100. The external memory card communicates with the processor 110 through an external memory interface 120 to implement data storage functions. For example, files such as music, video, etc. are stored in an external memory card.
The internal memory 121 may be used to store computer-executable program code that includes instructions. The processor 110 executes various functional applications of the electronic device 100 and data processing by executing instructions stored in the internal memory 121. The internal memory 121 may include a storage program area and a storage data area. The storage program area may store application programs (such as a sound playing function, an image playing function, etc.) required for at least one function of the operating system.
In addition, the internal memory 121 may include a high-speed random access memory, and may further include a nonvolatile memory such as at least one magnetic disk storage device, a flash memory device, a universal flash memory (universal flash storage, UFS), and the like.
The wireless communication function of the electronic device 100 may be implemented by the antenna 1, the antenna 2, the mobile communication module 150, the wireless communication module 160, a modem processor, a baseband processor, and the like.
In some embodiments, antenna 1 and mobile communication module 150 of electronic device 100 are coupled, and antenna 2 and wireless communication module 160 are coupled, such that electronic device 100 may communicate with a network and other devices through wireless communication techniques.
The electronic device 100 may implement audio functions through an audio module 170, a speaker 170A, a receiver 170B, a microphone 170C, an earphone interface 170D, an application processor, and the like. Such as music playing, recording, etc.
The electronic device 100 implements display functions through a GPU, a display screen 194, an application processor, and the like. The GPU is a microprocessor for image processing, and is connected to the display 194 and the application processor. The GPU is used to perform mathematical and geometric calculations for graphics rendering. Processor 110 may include one or more GPUs that execute program instructions to generate or change display information.
The embodiment of the present application is not particularly limited to a specific structure of an execution subject of a method for displaying a network acceleration effect, as long as the code recorded with the method for displaying a network acceleration effect of the embodiment of the present application can be executed to process the method for displaying a network acceleration effect provided according to the embodiment of the present application. For example, the execution body of the method for displaying a network acceleration effect provided by the embodiment of the application may be a functional module in an electronic device, which can call a program and execute the program, or a processing device, such as a chip, applied to the electronic device.
The electronic device as shown in fig. 1 may install and run one or more applications, such as chat applications, video applications, news applications, and application markets, among others. Taking an application market as an example, a user can browse applications which can be installed in the electronic equipment in the application market, then select one or more applications to install, after the user selects the applications which need to be installed, the application market can download an installation package of the applications selected by the user from a server when the electronic equipment is accessed to a network, and the application market installs the corresponding applications on the electronic equipment by using the installation package after the downloading is completed.
In the embodiment of the present application, the network acceleration function may be understood as a function of accessing an electronic device configured with multiple network cards (for example, configured with at least one data service network card and at least one wireless network card) to multiple networks provided by the multiple network cards, so as to use the multiple network cards to access the internet at the same time. Compared with the internet surfing by using a single network card, the network acceleration function can effectively improve the internet speed of the electronic equipment.
When the network acceleration function is turned off, the electronic device uses a network card to provide internet service, for example, when the wireless network coverage exists, uses a wireless network card to surf the internet, and when the wireless network coverage does not exist, uses a data service network card to surf the internet.
When the network acceleration function is started, the electronic device can simultaneously use a plurality of network cards to provide internet service, for example, when the wireless network coverage exists, the wireless network card and the data service network card are simultaneously used for internet surfing. As an example, the electronic device may download files from the server with both the wireless network card and the data service network card when there is wireless network coverage.
The technical principle of the network acceleration function will be briefly described below by taking the application market as an example. Referring to fig. 2, after an application market a selects an application to be installed, a user establishes a network connection with a server a, then a data stream is generated between the application market a and the server a, and the server a sends an installation package of a specific application to the application market a of the mobile phone through the data stream, so that the application market a can complete downloading of the installation package. In the embodiment of the present application, the data stream may be regarded as a data sequence transmitted between two electronic devices, for example, the data stream shown in fig. 2 is a data sequence transmitted between the server a and the mobile phone.
When downloading installation packages, multiple data streams are typically generated between the application marketplace a and the server a, such as the data stream A1 and the data stream A2 that exist between the application marketplace a and the server a in fig. 2.
When the application market A starts network acceleration, the mobile phone can distribute a plurality of data streams between the application market A and the server A to different network cards of the mobile phone, and as the data stream of each network card load is reduced, each data stream can obtain more resources of the network card to which the data stream belongs, so that a faster data downloading rate is obtained, and the downloading rate of the application market A is also improved.
Taking fig. 2 as an example, the mobile phone allocates the data stream A1 to the data service network card of the mobile phone and allocates the data stream A2 to the wireless network card of the mobile phone, so that the application market a transmits the data stream A1 through the mobile network of the mobile phone and transmits the data stream A2 through the wireless network (such as Wi-Fi) of the mobile phone, and the download rate of the application market a is improved compared with the case that the data streams A1 and A2 are transmitted only through the wireless network (or the mobile network).
It should be noted that the network acceleration technique as illustrated in fig. 2 may be applicable to various applications (such as video applications, download applications, etc.) including application markets. As long as the application and the server transmit data through a plurality of data streams, the application can increase the data download rate by the network acceleration method shown in fig. 2.
For example, when the download application downloads a specific file from the server, a plurality of data streams for downloading the file may be generated, so that the download application may perform network acceleration by using the method shown in fig. 2 when downloading the file from the server.
It can be seen that when the application downloads data from the server by using the network acceleration technology, a part of data flow needs to be borne by the data service network card of the electronic device (such as a mobile phone), so that the application consumes a part of mobile data flow, and at the same time, the user often has difficulty in feeling the effect of the network technology after starting the network acceleration. This results in a poor use experience for the user when using the network acceleration function.
Aiming at the problems, the embodiment of the application provides a display method of a network acceleration effect. In this embodiment, the electronic device may display the rate-improving proportion of the current network acceleration by popping up a message at the top of the display screen at the end of each network acceleration (for example, at the end of downloading a file). The electronic device may also display in the designated interface an average acceleration ratio of all network accelerations performed over a particular period of time.
Referring to fig. 3, a user may turn on or off a network acceleration function via control 301 in the network acceleration setup interface shown in fig. 3. When the network acceleration function is in an on state, the electronic device may display an average acceleration proportion of all network accelerations performed within a specific period of time under the network acceleration setting interface. For example, the electronic device may display an acceleration benefit display window 302 as shown in fig. 3, within which is displayed a percentage of the last 30 days that has been evenly increased with network acceleration, such as an increase of 35% in download speed, and an average accumulated number of network accelerations with network acceleration. For example, the network accelerates 40 times.
In some alternative embodiments, the network acceleration setting interface may display the rate increase ratio of the last completed downloading process in addition to displaying the average rate increase ratio of the specific time period, and the embodiment does not limit the content specifically displayed in the interface.
Referring to fig. 4, the electronic device may further display, through a message popped up from the top of the display screen, a rate increase ratio of the network acceleration at this time when the network acceleration is finished, and may further display an average acceleration ratio in a specific period of time. At the end of a download, the electronic device pops up a message 401 as shown in fig. 4 on the top of the display screen, where the message includes the number of network jams and the percentage of the speed of the download that are reduced by the network acceleration function during the present download, and the number of network jams and the percentage of the speed of the download that are reduced by the network acceleration function are accumulated in the present month.
In some alternative embodiments, the message popped up from the top of the display screen may further include an average acceleration ratio within a specific period of time, and the embodiment does not limit the specific content of the message.
The display method of the network acceleration effect provided by the application has the following beneficial effects:
Through the display of the network acceleration effect, a user can intuitively feel the network acceleration effect after starting the network acceleration function, so that the use experience of the network acceleration function is improved.
In some alternative embodiments, the electronic device may also display the rate-increase ratio of one network acceleration or the average acceleration ratio of multiple network accelerations in other various manners, which is not limited in this embodiment.
In some alternative embodiments, the information included in the rate up-scaling or average up-scaling is not limited to the up-downloading rate percentage and the reduced number of camping shown in fig. 3 and fig. 4, but may include other information that can show the effect of network acceleration, which is not limited in this embodiment.
Technical implementation details of the method for displaying a network acceleration effect provided in this embodiment are as follows.
Fig. 5 is a schematic diagram of a software architecture of an electronic device according to an embodiment of the present application.
The software architecture of the electronic device includes an application layer, an application framework layer, a Native (Native) layer, and a kernel layer. Only some of the layers and some of the components associated with embodiments of the present application are shown in fig. 5, and in practice, layers and components not shown in fig. 7 may be included. Of course, only some of the components shown in fig. 7 may be included.
Various applications exist in the application layer, such as video applications, download applications, and the aforementioned application markets, and in addition, a Setting (Setting) component and a System user interface (System UI) exist in the application layer.
The setting component is used for providing an interface for configuring the electronic device and turning on or off specific functions of the electronic device, and a user can turn on or off part of the functions of the electronic device in the setting component, such as turning on or off a network acceleration function of the electronic device, and perform personalized setting on the electronic device, such as setting wallpaper of the electronic device. By way of example, the network acceleration interface as shown in FIG. 3 may be one interface displayed by the setup component.
In this embodiment, the setting component may provide functions of an acceleration switch for turning on or off the network acceleration function and acceleration benefit display for displaying the network acceleration effect. Taking fig. 3 as an example, the setup component provides the function of an acceleration switch through control 301 shown in fig. 3 and the function of acceleration benefit display through window 302 shown in fig. 3.
The system user interface may pop up a notification message on top of the display screen of the electronic device. By way of example, the message 401 shown in FIG. 4 may be popped up by the system user interface.
The application framework layer comprises an environment detection component, a strategy management component, a channel-level path management component, a channel quality component, a network management component and a flow statistics management component.
The environment detection component is used for detecting various events of an upper application, and can detect the opening and the exiting of the application, detect the application currently switched to a foreground, detect the installation and the uninstallation of the application and the like as examples.
The network management component is used for activating Wi-Fi network channels and data service network channels supported by the electronic equipment. I.e., transition the network channel from the dormant state to the awake state. Wherein the network channel in the awake state can be directly used. As an example, a wireless network card 1 of a 2.4GHz band and a wireless network card 2 of a 5.0GHz band are provided in the electronic device. The network management component can activate a wireless network with the frequency band of 2.4 GHz; wireless networks in the 5.0GHz band may also be activated. The electronic equipment is provided with a data service network card 1 of an operator A and a data service network card 2 of an operator B. The network management component may activate the data traffic of operator a and the data traffic of operator B.
The channel quality component is used to evaluate the quality of the network channel. By way of example, the channel and application quality assessment component may assess the quality of Wi-Fi networks in the 2.4GHz band, and may also assess the quality of Wi-Fi networks in the 5.0GHz band. The quality of the cellular network of operator a may also be assessed, as well as the quality of the cellular network of operator B.
The cellular network (may also be referred to as a data service network) refers to a network provided by a data service network card, and the Wi-Fi network (may also be referred to as a wireless network) refers to a network provided by a wireless network card.
The channel-level path management component stores paths of a plurality of network channels and is used for requesting or closing any network channel, so that the state change of any network channel can be perceived, and the quality of any network channel can also be perceived.
And the policy management component is used for starting a network acceleration function and enabling a monitoring function of the data flow.
And the flow statistics management component is used for storing the rate lifting proportion after each network acceleration and determining the average acceleration proportion of a specific time period according to the rate lifting proportion of multiple network accelerations in the time period.
The local layer includes a flow level path management component and a flow awareness component.
The flow sensing component is used for counting the reported data flow information, evaluating the network quality of each flow, determining the time for starting downloading and ending downloading, and calculating the accelerating income of each network acceleration.
The reported data stream information may include statistical information of the data stream, such as packet loss rate and download rate of the data stream, and when one download is finished, the flow sensing component calculates a rate lifting proportion of the current download according to the statistical information collected in the current download.
The flow-level path management component is used for updating the selection of network channels according to the policy change of an upper layer, triggering network channel quality detection, dynamically selecting an optimal channel, and also can be used for storing paths of different network channels, and can be used for storing paths of a network channel (for example, a main network channel) and a standby network channel which are currently used by an application.
The kernel layer comprises a policy execution component and a traffic reporting component. The traffic reporting component is used for collecting data flow information and reporting the collected data flow information. The policy enforcement component is operative to assign the data streams to different network channels of different electronic devices. Taking fig. 2 as an example, the policy execution component is configured to allocate a data stream A1 of the application market to a cellular network corresponding to the data service network card, and allocate a data stream A2 of the application market to a Wi-Fi network corresponding to the wireless network card.
As another embodiment of the present application, one component in the above embodiment may be split into two or more components, and two or more components located at the same level may be combined into the same component.
As an example, the policy management component and the channel-level path management component may be combined into the same component. The channel quality component and the network management component may be combined into the same component.
Example 1
In order to more clearly understand the above architecture diagram, refer to fig. 6, which is a timing diagram of a method for displaying a network acceleration effect based on the implementation of each component shown in fig. 5 according to an embodiment of the present application.
When a user opens any one of the applications on the electronic device or switches an application running in the background to the foreground, the environment detection component executes step S01 to detect that the application is opened. After detecting that the application is opened, the environment detection component executes step S02 to the policy management component to notify the application of the opening.
In step S01, the environment detection component may determine which application of the electronic device is started, and then acquire an application identifier of the started application, so that when step S02 is performed, the environment detection component sends the acquired application identifier to the policy management component, and thus notifies the policy management component that the application corresponding to the application identifier is started. The application identifier may be any identifier that can uniquely determine an application of the electronic device, and may be, for example, a name of the application.
Illustratively, after the user opens the application market, the environment detecting component detects that the application market is open, then obtains the name of the open application, i.e. the application market, and sends the name to the policy management component, thereby notifying the policy management component that the application market is open.
After receiving the notification, the policy management component executes step S03 to determine that the application supports network acceleration. The application in step S03 and the subsequent steps in this embodiment refer to the open application detected by the environment detection component in step S01.
In step S03, the policy management component may determine that the application supports network acceleration by querying a network acceleration configuration library, where the network acceleration configuration library is used to record which applications in the applications installed on the electronic device support the network acceleration function, in step S03, the policy management component queries whether an application is started in the network acceleration configuration library, if the application is started in the network acceleration configuration library, the policy management component determines that the application supports network acceleration, and if the application is not started in the network acceleration configuration library, the policy management component determines that the application does not support network acceleration.
In some alternative embodiments, the electronic device may default that each application supports network acceleration, in which case step S03 may not be performed.
Continuing the previous example, after receiving the notification of the application market opening, the policy management component queries the application market in the network acceleration configuration library, and determines that the application market exists in the network acceleration configuration library through the query, so that the policy management component determines that the application market supports network acceleration.
If the policy management component determines that the application does not support network acceleration, the method provided in this embodiment ends, and no further steps are executed, where the electronic device transmits the data stream of the application through a single network channel, for example, only the data stream is transmitted through the wireless network card, or only the data stream is transmitted through the data service network card.
After determining that the application supports network acceleration, the policy management component executes step S04 on the flow level path management component to notify to start network acceleration.
In step S04, the policy management component may send an application identifier for opening the application and information indicating that the network acceleration is opened to the flow level path management component, so as to indicate to the flow level path management component that the corresponding application opens the network acceleration.
In some alternative embodiments, the policy management component may also record that the application has turned on network acceleration after determining that the application supports network acceleration, in order to count the number of uses of the network acceleration function.
After the flow level path management component obtains the notification, step S05 is executed on the flow reporting component of the kernel layer, and an application start acceleration message is sent. The message is used to indicate to the traffic reporting component that the corresponding application opens a network acceleration.
The message sent in step S05 may be the same as or different from the message sent by the policy management component to the flow level path management component in step S04.
Continuing the previous example, after determining that the application market supports network acceleration, the policy management component sends an identification of the application market and information indicating that the network acceleration is started to the flow-level path management component, and after receiving the information, the flow-level path management component continues sending a message of the application market acceleration to the flow reporting component.
After receiving the application start acceleration message, the flow reporting component executes step S06 to register a message monitoring hook.
The message monitoring hook registered in step S06 may monitor the data flow information of the open application, the data flow information may include the message of the data flow, the statistical information of the data flow, the path information of the network carrying the data flow, and so on.
The statistical information of the data stream may include information such as a download rate and a packet loss number of the data stream.
Continuing the previous example, after receiving the message of accelerating the opening of the application market, the traffic reporting component registers a message monitoring hook for monitoring the application market, and monitors the related information of the data flow of the application market through the message monitoring hook.
Registering a message monitoring hook and obtaining data flow information through the message monitoring hook is a way of obtaining data flow information of an application provided by the embodiment. In other optional embodiments, the traffic reporting component may further acquire the data flow information of the application in other manners, and the present application is not limited to a specific acquisition manner.
After receiving the notification of starting the network acceleration, the flow level path management component further executes step S07 to the channel level path management component, requesting to activate the network.
Step S07 may be performed before step S05, or may be performed after step S05, and the order of execution of step S05 and step S07 is not limited in this embodiment.
The channel-level path management component performs step S08 to the network management component in response to the request of the stream-level path management component, requesting activation of the network.
The information sent by the flow-level path management component in step S07 and the information sent by the channel-level path management component in step S08 may be the same or different.
In some embodiments, an electronic device may support multiple network channels. For example, the electronic device may be plugged into two subscriber identity modules (Subscriber Identity Module, SIM) cards, one for each data service network. In addition, the electronic device may set a plurality of wireless network cards so as to support wireless networks of a plurality of different frequency bands, for example, the electronic device may set a wireless network card 1 supporting 5.0GHz data transmission and a wireless network card 2 supporting 2.4GHz data transmission. Based on the above configuration, the electronic device may support four network channels of the data service network 1 (corresponding to the SIM card 1), the data service network 2 (corresponding to the SIM card 2), the wireless network 1 (corresponding to the 5.0GHz wireless network card 1) and the wireless network 2 (corresponding to the 2.4GHz wireless network card 1).
The plurality of network channels supported by the electronic device may distinguish between the primary network and the secondary network based on user configuration or operating system default settings. For example, in the above example, the wireless network 1 may be determined as a primary Wi-Fi, the wireless network 2 as a secondary Wi-Fi, the SIM card 1 as a primary SIM card, the corresponding data service network 1 as a primary data service network, the SIM card 2 as a secondary SIM card, and the corresponding data service network 2 as a secondary data service network.
Accordingly, in step S07 and step S08, each network channel supported by the electronic device may be requested to be activated.
Illustratively, in step S07, the flow-level path management component may sequentially send an activation request to the channel-level path management component in the order of the primary Wi-Fi, the primary SIM card, the secondary Wi-Fi, the secondary SIM card, that is, first requesting to activate the wireless network 1, then requesting to activate the data service network 1, then requesting to activate the wireless network 2, and so on.
Similarly, in response to the request of the flow-level path management component, the channel-level path management component requests the network management component to activate the wireless network 1, the data service network 1, the wireless network 2, and the data service network 2 in the same order.
The network management component performs step S09 to activate the network in response to the request of the channel-level path management component.
After the network management component activates the network, step S10 is executed to the channel-level path management component, notifying the network state.
In step S09, the network management component may sequentially attempt to activate the various network channels supported by the electronic device, for example sequentially attempt to activate the wireless network 1, the data service network 1, the wireless network 2, and the data service network 2, in the order requested by the channel-level path management component.
When activated, there may be a part of network channels that are successfully activated and a part of network channels that are failed to activate, where the network channels that are successfully activated are in an available state and the network channels that are failed to activate are in an unavailable state.
For example, the wireless network 2 may need to be used by user authentication, and if the electronic device does not pass the user authentication, the network management component will not activate the wireless network 2; if the SIM card 2 defaults or a call request to the SIM card 2 is received when the data service network 2 is activated (i.e. a call to the SIM card 2 is received), the network management component cannot activate the data service network 2 provided by the SIM card 2.
Thus after the network management component performs step S09, the channel-level path management component needs to be informed of the status of the individual networks in order for the channel-level path management component to determine which networks are available and which are not.
The network management component may notify the channel-level path management component of the network status in a variety of manners, and the embodiment is not limited to a specific notification manner.
For example, the network management component may send a network identification of each network channel requesting activation to the channel-level path management component and mark each network identification as available or unavailable in step S10.
Or, the network management component may send only the network identifiers of the network channels that are successfully activated to the channel-level path management component, and after the channel-level path management component receives the network identifiers, the channel-level path management component may determine that the network channels corresponding to the received network identifiers are available, and the remaining network channels are unavailable.
As one example, in step S09, the network management component succeeds in activating the primary Wi-Fi and the primary data traffic network, and fails in activating the secondary Wi-Fi and the secondary data traffic network, so the network management component informs the channel-level path management component that the primary Wi-Fi and the primary data traffic network are available, and that the secondary Wi-Fi and the secondary data traffic network are not available.
After the channel-level path management component receives the notification from the network management component, step S11 is performed to determine the available networks. Continuing with the foregoing example, upon notification, the channel-level path management component may determine that the primary Wi-Fi and primary data traffic network are available.
The available network, i.e. the network management component activates the successful network. After the channel-level path management component determines available networks, the stream-level path management component performs step S12 to notify the available networks. The information sent by the path management component at the channel level in step S12 may be the same as or different from the information sent by the network management component in step S10.
The available networks are notified to the stream level path management component in order that the stream level path management component can distribute a plurality of data streams for download between the application and the server to the plurality of available networks after the download starts, to achieve network acceleration.
After the channel-level path management component determines the available networks, a step S13 is also performed on the channel quality component, indicating a probing of the available network quality.
In step S13, the channel-level path management component may send the channel quality component a network identification of the network that was successfully active in the available state, such that the channel quality component periodically probes the network quality of these available networks.
Continuing with the previous example, after the channel-level path management component determines that the primary Wi-Fi and primary data traffic network are available, network identifications of the primary Wi-Fi and primary data traffic network are sent to the channel quality component such that the channel quality component detects network qualities of the primary Wi-Fi and primary data traffic network.
The channel quality component periodically detects the channel quality of each network channel that is activated in response to the instruction of the channel-level path management component, and performs step S14 to the channel-level path management component, feeding back the detection result.
The detection result fed back by the channel quality component may include one or more parameters that may reflect the quality of the network channel, and the embodiment does not limit the specific content of the detection result. For example, the probing result may include Round Trip Time (RTT), the number of packets, the download rate, the air interface rate, and so on.
After notifying the flow level path management component to start acceleration, the policy management component may execute step S15 to the flow sensing component to start flow monitoring. The flow sensing component responds to the message of the policy management component, and executes step S16 to the flow reporting component of the kernel layer, and starts flow monitoring.
In step S15, the policy management component may send a message for starting flow monitoring to the flow sensing component, after receiving the message, the flow sensing component forwards the message for starting flow monitoring to the flow reporting component, and after receiving the message for starting flow monitoring, the flow reporting component may monitor the data flow information of the application by using the message monitoring hook registered in step S06.
In specific implementation, the policy management component may execute step S15 immediately after executing step S04, or may execute step S15 again at a preset time (specific value may be set according to actual situation) after executing step S04.
After the flow sensing component starts flow monitoring, the flow reporting component executes step S17 in real time during application networking to report data flow information. That is, after the flow sensing component starts the flow monitoring, the flow reporting component collects data flow information as long as a data flow is generated between the application and the server, and reports the collected data flow information to the flow sensing component.
The flow aware component may determine part of the application's behavior by analyzing the reported data flow information, e.g., the flow aware component may determine when the application starts downloading files and when it ends downloading based on the data flow information.
Continuing with the previous example, when the user selects an application to be installed in the application marketplace and determines to install, the application marketplace begins to download an installation package for the application from the server, at which point the flow sensing component executes step S18 to determine that the download is to begin based on the data flow information.
As described above, the reported data stream information includes messages of the data stream. The flow aware component may determine whether the application begins to download based on whether a particular flow feature is included in a message of the data flow, which may be stored in a flow feature library of the application. The flow characteristics may specifically include any one or more of a protocol, a port, a protocol header, and a network address in the message.
That is, after receiving the reported data stream information, the flow sensing component can identify whether the flow sensing component contains the specific features such as the protocol, the port, the protocol header, the network address and the like recorded in the stream feature library, and if the flow sensing component identifies the features such as the protocol, the port, the protocol header, the network address and the like recorded in the stream feature library in the data stream information received at a certain time, the flow sensing component can determine that the application starts to download.
Continuing with the previous example, for the application market, features such as the TCP protocol, 80 ports, and string apk may be recorded in its flow feature library. After the application market is started, the flow sensing component informs the flow reporting component to start flow monitoring, and then if the flow sensing component identifies a TCP protocol, or identifies an 80 port, or identifies a character string apk in the reported data stream message, the flow sensing component determines that the application market starts downloading files.
The flow characteristic library of the application can be obtained by the message of the data flow of the application, which is collected in advance by the flow sensing component.
Continuing with the foregoing example, the flow awareness component may collect messages for the data flow each time the application marketplace downloads a file, obtain features from the messages that indicate that the application marketplace began downloading, and record the features in the flow features library of the application marketplace.
The method for determining whether the application starts to be downloaded has the advantages that for most applications, the flow sensing component can judge whether the application starts to be downloaded by identifying whether the flow characteristics exist in the message on the basis of pre-constructing the flow characteristic library, so that the method has wider application range.
In the embodiment of the application, the flow sensing component can determine whether the application starts to download in various modes, and is not limited to determining whether to start downloading according to the data flow information.
For example, a portion of the application may be configured to send a download start message to the flow sensing component upon start of the download, and upon receipt of the download start message by the flow sensing component, the flow sensing component may determine that the application is to start downloading.
The advantage of determining that the application starts to download according to the application's message is that the flow sensing component does not need to analyze in real time whether the data flow information contains a specific flow feature, thus enabling to reduce the power consumption of the electronic device.
After determining that the download starts, the flow sensing component executes step S19 to the flow level path management component, informing that the download starts.
Upon receiving the notification of the start of downloading, the flow-level path management component performs step S20 to allocate the data flow to the available network.
In step S20, the flow level path management component may allocate the data flows to the available networks in a variety of manners, and the specific allocation manner is not limited in this embodiment. For example, the flow-level path management component can evenly distribute multiple data flows of an application to each of the available networks.
By executing step S20, the electronic device downloads data using the plurality of networks that are activated after the application starts downloading.
In some embodiments, the flow level path management component may utilize a policy enforcement component of the kernel layer to effect allocation of data flows. Illustratively, in performing step S20, the flow-level path management component may send the network identifier of the available network and the identifier of the data flow allocated to the available network to the policy enforcement component correspondingly, so that the policy enforcement component switches to the corresponding available network for the data flow.
Continuing the previous example, when downloading in the market, two data flows A1 and A2 are generated, the available network is the main Wi-Fi and the main data service network, and after receiving the notice of starting the downloading, the flow-level path management component determines to allocate the data flow A1 to the main data service network and allocate the data flow A2 to the main Wi-Fi.
Then, the flow-level path management component correspondingly transmits the network identification of the main data service network and the identification of the data flow A1 to the strategy execution component, so that the strategy execution component switches the data flow A1 to a main SIM card for providing the main data service network; the flow-level path management component sends the network identification of the main Wi-Fi and the identification of the data flow A2 to the policy execution component correspondingly, so that the policy execution component switches the data flow A2 to the wireless network card 1 providing the main Wi-Fi.
Thus, after the application market starts downloading, the electronic device downloads data required by the application market with both the main Wi-Fi and the main data service network.
After determining that the download is started, the flow sensing component further performs step S21 of recording statistics of available networks.
The statistical information of the available network may include the download rate, the packet loss number, etc. of the available network, or may include only the download rate of the available network. As previously described, the data stream information may include the download rate of the data stream, the number of dropped packets, and information of the network carrying the data stream. After receiving the reported data stream information, the flow sensing component can determine which data streams are respectively loaded by each available network according to the information of the network which loads the data streams, then adds the download rates of the data streams of the applications loaded by the network to obtain the download rate of the network, and similarly adds the packet loss numbers of the data streams of the applications loaded by the network to obtain the packet loss number of the network.
As mentioned above, the flow reporting component may periodically report data flow information during the downloading process, and the corresponding flow sensing component may periodically determine and record statistical information of the available network according to the reported data flow information.
Continuing with the previous example, after the flow level path management component allocates the data flow A1 of the application market to the primary data service network and allocates the data flow A2 to the primary Wi-Fi, the flow sensing component receives the information of the data flow A1 and the information of the data flow A2 reported by the flow reporting component.
The flow sensing component determines a data flow A1 of the main data service network bearing application market according to the information of the data flow A1, and determines a data flow A2 of the main Wi-Fi bearing application market according to the information of the data flow A2. The download rate of data stream A1 is then recorded as the download rate of the primary data traffic network, and the download rate of data stream A2 is recorded as the download rate of the primary Wi-Fi.
In another example, if the application market has three data flows A1, A2, and A3, where the data flow A1 is still carried by the main data service network and the data flows A2 and A3 are carried by the main Wi-Fi, the flow sensing component records the download rate of the data flow A1 as the download rate of the main data service network and the sum of the download rate of the data flow A2 and the download rate of the data flow A3 as the download rate of the main Wi-Fi when recording the download rate of the network.
During the downloading, the flow sensing component may also evaluate the downloading rate of each activated network channel according to the statistics of the respective data flows, and when the downloading rate of any one or more network channels is found to be too low (for example, the downloading rate is lower than a threshold value), the flow sensing component performs step S22 to the flow level path management component, and notifies that the network rate is low.
In step S22, the flow aware component may send to the flow level path management component a network identification of a network channel having a download rate below a threshold value,
after receiving the notification that the network rate is low, the flow level path management component executes step S23, and performs load balancing according to each network rate.
In step S23, the flow level path management component may implement load balancing in a plurality of manners, and the specific load balancing manner is not limited in this embodiment.
For example, the flow level path management component may allocate a portion of the data flow carried by the network channel with the too low download rate to the network with the highest download rate.
Alternatively, the stream level path management component may allocate multiple data streams of an application in proportion to the download rate of each available network.
Alternatively, the stream level path management component may switch the lower download rate data stream onto the faster download rate network.
Similar to step S20, the flow-level path management component may complete the switching of the data flow with the policy enforcement component in step S23. Illustratively, the flow level path management component sends data flow switching information to the policy enforcement component, which indicates which data flow to switch to which network card in the data flow switching information, and the policy enforcement component then enforces the switching according to the data flow switching information.
In some alternative embodiments, before load balancing, the flow level path management component may request to the network management component to activate the network again, and the specific process is referred to in steps S07 to S09, which are not described again.
If the network management component activates a new network, the flow level path management component performs load balancing based on the new available network and the already available network in step S09, and if the network management component does not activate a new network, the flow level path management component performs load balancing based only on the available network in step S09.
When the downloading of the application is finished, the flow sensing component executes step S24 to determine that the downloading is finished according to the data flow information.
The flow aware component may consider the application download to be over when there is no data in the data stream for the download that is being transmitted. Thus, in step S24, if the flow sensing component recognizes that the download rate of each data flow of the application is low (e.g., below a specific threshold), then the flow sensing component may determine that the application download is complete.
In some alternative embodiments, the flow aware component may also determine the end of the download in other ways. For example, the application may send a download end message to the flow sensing component upon the end of the download, and the flow sensing component may determine that the application download is ended upon receipt of the message.
After the end of the downloading is determined, the flow sensing component executes step S25 to calculate the rate-increasing proportion of the current downloading.
The flow sensing component may calculate the rate-improving ratio of the present download by using a plurality of algorithms, and specifically, which algorithm to use may be determined according to the actual situation, which is not limited in this embodiment.
In step S25, the flow sensing component may calculate the rate-improving ratio of the current download by using the following method:
first, the download rate of the active network in the present download is calculated. The active network may be determined as follows: if a plurality of wireless networks are used in the current download, the main wireless network determined according to the user setting or default configuration is determined to be the main network, and if only one wireless network is used in the current download, the wireless network is determined to be the main network.
Continuing the foregoing example, the electronic device supports the primary Wi-Fi and the secondary Wi-Fi, and determines that the primary Wi-Fi is the primary network of the current download if the primary Wi-Fi and the secondary Wi-Fi are used simultaneously in the current download, and determines that the secondary Wi-Fi is the primary network of the current download if only the secondary Wi-Fi is used in the current download.
In other alternative embodiments, the flow sensing component may determine the active network in other manners, which are only examples, and the present embodiment is not limited to the manner in which the active network is determined.
Referring to step S21, the flow sensing component may periodically record the download rate of the active network during the download process. When executing step S25, the flow sensing component may calculate an average value of the download rates of the plurality of active networks recorded in the download process, and determine the calculation result as the download rate of the active network in the present download.
Then, the download rate of each network activated in the present download except the primary network is calculated.
It should be noted that each network activated in the present download includes a network that is activated for a period of time during the download and then is closed for other reasons.
The secondary data service network is not activated before the downloading starts, and in the downloading process, the flow-level path management component requests the network management component to activate the secondary data service network due to low downloading rate of the main Wi-Fi, and after the secondary data service network is used for downloading for a period of time, the secondary data service network is closed due to the fact that the SIM card 2 providing the secondary data service network receives a voice call request. In this case, the traffic awareness component also needs to calculate the average download rate of the secondary data traffic network in step S25.
For each network activated in the current download except the main network, the flow sensing component can calculate the average value of a plurality of download rates of the network recorded in the download process, and the calculation result is determined as the download rate of the network in the current download.
And finally, dividing the download rate of the main network in the current download by the sum of the download rates of each network activated in the current download except the main network to obtain the rate promotion proportion of the current download.
Continuing the foregoing example, in the downloading process of the application market, the main data service network and the main Wi-Fi are activated for downloading, and after the downloading is finished, the flow sensing component determines that the downloading rate of the main data service network is S1, and the downloading rate of the main Wi-Fi is S2, where the main Wi-Fi is the main network, so that the flow sensing component can calculate that the rate lifting ratio of the current downloading is S1/S2.
After calculating the rate-increasing proportion of the current download, the flow sensing component executes step S26 on the flow statistics management component to send the rate-increasing proportion.
After receiving the rate-increasing proportion downloaded this time, the flow statistics management component executes step S27 to store the rate-increasing proportion.
In step S27, the traffic statistics management component may store the received rate up-scaling rate and the timestamp of the received rate up-scaling rate in a database for subsequent calculation of the average acceleration rate for the specified period.
When the user opens the network acceleration interface as shown in fig. 3, the setting component executes step S28 on the traffic statistics management component to obtain the average acceleration ratio.
After receiving the request from the setting component, the flow statistics management component executes step S29 to calculate the average acceleration ratio for the specified period.
In step S29, the flow statistics management module may calculate the average acceleration ratio of the specified period in various manners, and the specific calculation manner is not limited in this embodiment.
Illustratively, in step S29, the traffic statistics management component first finds time stamps within a specified period, for example, time stamps within the last 30 days, in the database, then reads the rate-increase ratios corresponding to these time stamps, and finally averages all the read rate-increase ratios to obtain the average acceleration ratio for the specified period.
After the average acceleration ratio is obtained, the setting component executes step S30 to display the average acceleration ratio.
In some alternative embodiments, the flow statistics management component may also immediately execute step S29 when the rate up proportion of the current download sent by the flow sensing component is received at the end of the download, and store the calculated average acceleration proportion in the database. Therefore, when the setting component requests to acquire the average acceleration proportion, the flow statistics management component directly reads from the database and sends the average acceleration proportion to the setting component.
The method has the advantages that when a user opens the network acceleration interface, the time for calculating the average acceleration proportion can be saved, the average acceleration proportion can be displayed faster, and the use experience of the user is improved.
Although the above embodiment describes the method for displaying the network acceleration effect provided by the present application by taking the application download file (for example, application download installation package in the market) as an example, the method for displaying the network acceleration effect provided by the present application is not limited to counting and displaying the network acceleration effect in the download scene.
For example, for a video application supporting network acceleration, when a user clicks to play a network video, a data stream is generated between the video application and a server, and the video application obtains a video resource to be played from the data stream and plays the video resource on a display screen. The flow sensing component can record the statistical information of the data flow after determining that the video application starts playing the network video according to the data flow information, then calculates the rate lifting proportion in the playing process according to the statistical information recorded in the period of playing the video after determining that the video application stops playing the network video according to the data flow information, and then sends the rate lifting proportion to the flow statistical management component, and the follow-up steps refer to the steps S27 to S30, and are not repeated.
Similarly, for an audio application and a browser application that support network acceleration, when a user plays network audio (e.g., music that is not stored locally on an electronic device) using the audio application and browses a web page using the browser application, the application obtains corresponding audio resources and web page resources through data streams. The flow sensing component determines the start-stop time of playing network audio by the audio application and the start-stop time of loading the webpage by the browser application according to the data flow information, so that the statistical information of the data flows of the applications in the corresponding time period can be utilized to determine the rate lifting proportion when the network audio is played and the webpage is loaded, and the display of the network acceleration effect is realized.
In the above embodiment, the flow reporting component acquires the data flow information of the application through the registration message monitoring hook and reports the data flow information to the flow sensing component, and technical implementation details of the process are described below.
A Netfilter component exists in the system of the electronic device through which the data stream of the application corresponding to the particular application identifier can be obtained. The traffic reporting component can obtain messages of the data stream of a particular application (e.g., the application marketplace of the previous example) by invoking the Netfilter component. In particular, the data flow information reported to the flow sensing component by the flow reporting component may include a packet of the data flow, statistical information of the data flow, and the like. Reference is made in particular to the description of the embodiment shown in fig. 7.
Referring to fig. 7, the traffic reporting component may pre-register a message snoop hook (e.g., nf_hook function).
After the flow reporting component calls the Netfilter component, the Netfilter component reports the message of the data flow, and after the flow reporting component receives the message of the data flow reported by the Netfilter component, a pre-registered nf_hook function is called.
The nf_hook function performs the following operations on the received message of the data stream: message analysis, flow table checking, message analysis and other operations.
When the message analysis is performed, whether the application identifier exists in the message and the quadruple (or quintuple) of the message can be checked to obtain an analysis result. If the application identifier exists, the application corresponding to the message can be determined. The quadruple comprises a source IP, a destination IP, a source port and a destination port; the five-tuple comprises: source IP, destination IP, source port, destination port, and protocol number. That is, the four-tuple or five-tuple of the message contains the aforementioned partial flow characteristics (e.g., protocol and port of the message). In addition, the message itself may also carry partial flow characteristics.
After the analysis, the flow table is inquired according to the analysis result, and the statistical information of the flow table is updated. The flow table stores identification information of data flows in each application and statistical information of each data flow. The statistics of the individual streams include: the number of messages, total bytes, number of error packets, etc. received for the data stream.
In practical applications, the statistics of each stream may also include other information, such as the size of the received data packet and the download rate of the corresponding data stream determined by the timestamp.
Of course, if the identification information or the related statistical information of a certain data flow does not exist in the flow table, the identification of the data flow and the related statistical information may be added to the flow table.
After looking up the flow table and updating the flow table information, the message may be analyzed. For example, the message is filtered, thereby obtaining all or part of the message.
As an example, the filtering process may be filtering heartbeat packet messages for a certain data stream. And obtaining the heartbeat packet message of the data flow after filtering. The filtering process may be: by presetting certain characteristics, the messages meeting the characteristics are reserved. That is, the message meeting certain preset characteristics is the filtered message.
The heartbeat packet message is a message existing in the data stream according to a certain time interval. The heartbeat packet message has a fixed characteristic (e.g., 0x64 or 0x 65) at a fixed location (e.g., byte 6). Since the heartbeat packet message is a message existing according to a certain time, the time delay can be obtained based on the calculation of the heartbeat packet message (for example, the mobile phone starts sending a heartbeat request message to the server, and the mobile phone receives a heartbeat response message fed back by the server, which is total time).
The above examples are described by taking the filtering heartbeat packet as an example, and in practical application, the filtering processing may also be performed to obtain a data packet message meeting other characteristics.
As another example, the filtering conditions may further include: and reserving the message of the specific application, and filtering to obtain the message of the data stream of the specific application. For example, when an application is currently opened as an application market and message analysis is performed, a message of a data stream in the application market may be reserved.
After the processing, the obtained filtered partial message is stored in the SKB queue.
The strategies for reporting the messages of the data streams stored in the SKB queue comprise the following steps: immediately reporting and periodically reporting.
If the message is immediately reported, a specific thread in the flow reporting component checks the queue in time and reports the message in the queue to the flow sensing component in time.
If the message is reported regularly, a timer is set in the flow reporting component, messages in the SKB queue are checked in a certain period based on the time set by the timer, and part or all of the messages in the queue are reported to the flow sensing component.
Of course, in practical applications, some messages of the data stream stored in the SKB queue need to be reported immediately, and some messages need to be reported periodically. The same principle is that a specific thread in the flow reporting component checks the queue in time and reports the message needing immediate reporting in the queue to the flow sensing component in time. The flow reporting component is also provided with a timer, and based on the time set by the timer, messages in the SKB queue are checked in a certain period, and the messages needing to be reported regularly in the queue are reported to the flow sensing component.
When the message is reported, the statistical information related to the message can be reported together. For example, when the traffic reporting component reports the message of the data stream in the application market, the traffic reporting component reports the download rate of the data stream in the application market to the traffic sensing component.
According to the above description, after the flow sensing component receives the reported message, it can determine whether the corresponding application starts downloading by looking up the flow characteristics in the quadruple or quintuple of the message, and after determining that the corresponding application starts downloading, the flow sensing component can record the statistical information of the data flow reported together with the message, so as to calculate the rate lifting proportion of the downloading according to the statistical information when the downloading is finished.
Example two
In this embodiment, the electronic device may further display, in a notification message, a rate increase ratio of the current network acceleration after each network acceleration is completed.
Referring to fig. 8, a timing chart of a method for displaying a network acceleration effect according to another embodiment of the application is shown.
In this embodiment, steps S21 to S27 are identical to the embodiment shown in fig. 6, and will not be described again.
After executing step S27, the flow statistics management component executes step a01 on a System user interface (System UI), sends a rate-increasing proportion, and after receiving the rate-increasing proportion downloaded this time, the System user interface executes step a02 to display the rate-increasing proportion.
The flow statistics management component calculates that the current download rate is improved by 35%, and then sends a message with the current download rate improvement rate of 35% to the system user interface, and after receiving the message, the system user interface can pop up a notification message at the top of the display screen of the electronic device, and display the current improvement download speed of 35% in the notification message.
In some alternative embodiments, before executing step a01, the traffic statistics management component may also calculate an average rate-improving ratio in a specific time period, and then send the calculated average rate-improving ratio and the rate-improving ratio downloaded at this time to the system user interface, so that the system user interface displays the average rate-improving ratio and the rate-improving ratio downloaded at this time in the specific time period together in a pop-up notification message.
In some alternative embodiments, the embodiments shown in fig. 6 and 8 may be combined into one embodiment. That is, the electronic device may pop up the notification message at the top of the display screen when each download ends, so that the rate-increasing proportion of the current download is displayed in the notification message. On the other hand, when the user opens the network acceleration interface, the electronic device may also display the average acceleration ratio in a specific period of time in the network acceleration interface.
According to the first and second embodiments, a method for displaying a network acceleration effect may be obtained, and please refer to fig. 9, which is a flowchart of a method for displaying a network acceleration effect according to an embodiment of the present application.
S901, obtaining download rates of a plurality of networks during downloading.
In step S901, the electronic device may determine download rates of a plurality of networks used at the time of downloading according to a plurality of data streams generated at the time of downloading the application. The specific implementation of step S901 can be seen from steps S01 to S24 of the embodiment shown in fig. 6 and 8.
S902, determining a network acceleration effect according to the download rates of the networks.
In some alternative embodiments, the network acceleration effect may be the rate-increase ratio of the current download. The electronic equipment determines the rate lifting proportion of the current downloading by comparing the downloading rate of the main network with the sum of the downloading rates of other networks used in downloading except the main network. For a specific implementation, please refer to the aforementioned steps S25 to S27.
In some alternative embodiments, the network acceleration effect may also be an average acceleration ratio obtained by combining the rate-increase ratios of multiple downloads in a specific period of time. The electronic equipment determines the rate lifting proportion of the current downloading by comparing the downloading rate of the main network with the sum of the downloading rates of other networks used in downloading except the main network, and then determines the average acceleration proportion by utilizing the rate lifting proportion of the current downloading and the rate lifting proportion of the repeated downloading in a specific time period recorded in a database. For a specific implementation, please refer to the aforementioned steps S25 to S29.
S903, displaying the network acceleration effect.
In some alternative embodiments, the network acceleration effect may be the rate-up ratio of the current download, and the specific implementation of step S903 may refer to steps a01 and a02 shown in step fig. 8.
In some alternative embodiments, the network acceleration effect may also be an average acceleration ratio obtained by combining the rate-improving ratios of the multiple downloads in a specific period of time, and the specific implementation of step S903 may refer to step S30 shown in fig. 6.
An embodiment of the application provides an electronic device including a memory and one or more processors.
The memory is used for storing a computer program.
The one or more processors are configured to execute the computer program, and in particular, to implement the method for displaying the network acceleration effect provided by any embodiment of the present application.
The embodiment of the application also provides a computer storage medium for storing a computer program, which is specifically used for realizing the display method of the network acceleration effect provided by any embodiment of the application when being executed.
Reference in the specification to "one embodiment" or "some embodiments" or the like means that a particular feature, structure, or characteristic described in connection with the embodiment is included in one or more embodiments of the application. Thus, appearances of the phrases "in one embodiment," "in some embodiments," "in other embodiments," and the like in the specification are not necessarily all referring to the same embodiment, but mean "one or more but not all embodiments" unless expressly specified otherwise. The terms "comprising," "including," "having," and variations thereof mean "including but not limited to," unless expressly specified otherwise.
The plurality of the embodiments of the present application is greater than or equal to two. It should be noted that, in the description of the embodiments of the present application, the terms "first," "second," and the like are used for distinguishing between the descriptions and not necessarily for indicating or implying a relative importance, or alternatively, for indicating or implying a sequential order.

Claims (12)

1. The method for displaying the network acceleration effect is characterized by comprising the following steps of:
activating a plurality of networks;
after determining that the application starts downloading, downloading data through the activated networks;
acquiring the downloading rates of the networks in the downloading process;
after the end of downloading of the application is determined, determining a network acceleration effect according to the downloading rates of the networks;
and displaying the network acceleration effect, wherein the network acceleration effect comprises the percentage of improving the downloading speed and the number of network acceleration times.
2. The method of claim 1, wherein the network acceleration effect comprises a rate boost ratio of the current download process, the rate boost ratio being a ratio of a download rate of a primary network of the plurality of networks to a sum of download rates of other networks, the other networks including networks of the plurality of networks other than the primary network.
3. The method of claim 2, wherein the network acceleration effect comprises an average acceleration rate that is an average of rate-rise rates of a plurality of download processes over a specified period.
4. A method according to any one of claims 1 to 3, wherein said obtaining download rates for a plurality of networks used in the download process comprises:
monitoring data flow information of the application in the downloading process;
and determining the downloading rates of a plurality of networks used in the downloading process according to the data flow information of the application.
5. The method according to any one of claims 1 to 4, wherein displaying the network acceleration effect comprises:
and displaying a notification message on the top of the display screen, wherein the notification message comprises the network acceleration effect.
6. The method according to any one of claims 1 to 4, wherein displaying the network acceleration effect comprises:
and responding to the user operation, displaying a network acceleration setting interface, wherein the network acceleration setting interface comprises the network acceleration effect.
7. The method according to any one of claims 1 to 6, further comprising:
Identifying whether the message of the data flow of the application contains the flow characteristics recorded in the flow characteristic library;
and if the message of the data flow of the application contains the flow characteristics, determining that the application starts to be downloaded.
8. The method of claim 7, wherein the flow characteristics include any one or more of a protocol, a port, a protocol header, and a network address.
9. The method according to any one of claims 1 to 8, further comprising:
acquiring a message of starting downloading of the application;
and determining that the application starts to be downloaded according to the message.
10. The method according to any one of claims 1 to 9, further comprising:
and if the downloading rate corresponding to each data stream of the application is lower than a preset threshold value, determining that the application downloading is finished.
11. An electronic device comprising a memory and one or more processors to:
the memory is used for storing a computer program;
the one or more processors are configured to execute the computer program, in particular to perform the method of displaying network acceleration effects according to any one of claims 1 to 10.
12. A computer storage medium for storing a computer program which, when executed, is in particular adapted to carry out the method of displaying network acceleration effects according to any one of claims 1 to 10.
CN202310750205.0A 2022-01-10 2022-01-10 Method, device and storage medium for displaying network acceleration effect Pending CN116886687A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310750205.0A CN116886687A (en) 2022-01-10 2022-01-10 Method, device and storage medium for displaying network acceleration effect

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202210022502.9A CN115567505B (en) 2022-01-10 2022-01-10 Method, device and storage medium for displaying network acceleration effect
CN202310750205.0A CN116886687A (en) 2022-01-10 2022-01-10 Method, device and storage medium for displaying network acceleration effect

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
CN202210022502.9A Division CN115567505B (en) 2022-01-10 2022-01-10 Method, device and storage medium for displaying network acceleration effect

Publications (1)

Publication Number Publication Date
CN116886687A true CN116886687A (en) 2023-10-13

Family

ID=84737955

Family Applications (2)

Application Number Title Priority Date Filing Date
CN202310750205.0A Pending CN116886687A (en) 2022-01-10 2022-01-10 Method, device and storage medium for displaying network acceleration effect
CN202210022502.9A Active CN115567505B (en) 2022-01-10 2022-01-10 Method, device and storage medium for displaying network acceleration effect

Family Applications After (1)

Application Number Title Priority Date Filing Date
CN202210022502.9A Active CN115567505B (en) 2022-01-10 2022-01-10 Method, device and storage medium for displaying network acceleration effect

Country Status (1)

Country Link
CN (2) CN116886687A (en)

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6366947B1 (en) * 1998-01-20 2002-04-02 Redmond Venture, Inc. System and method for accelerating network interaction
US6591288B1 (en) * 1998-05-19 2003-07-08 Nortel Networks Limited Data network accelerated access system
WO2001044988A1 (en) * 1999-12-16 2001-06-21 Supermedia Networks, Inc. Method of background downloading of information from a computer network
US20060212584A1 (en) * 2005-03-15 2006-09-21 Qian Xiang Shi Ji (Beijing) Technology Development Co. Ltd. Method and system for accelerating downloading of web page content by a peer-to-peer network
CN101631124A (en) * 2009-06-16 2010-01-20 中兴通讯股份有限公司 Method and device for downloading data
CN101778114B (en) * 2010-01-26 2012-09-05 浙江广播电视集团 Method for multi-channel parallel transmission of streaming media services on basis of load balance
WO2012034080A1 (en) * 2010-09-09 2012-03-15 Headwater Partners I Llc Wireless network service interfaces
CN102811258B (en) * 2012-07-27 2015-11-25 北京星网锐捷网络技术有限公司 Data Concurrent method for down loading, device and the network equipment
CN105025068B (en) * 2014-04-30 2019-04-12 腾讯科技(深圳)有限公司 Network data method for down loading and device
WO2017166572A1 (en) * 2016-04-01 2017-10-05 努比亚技术有限公司 Terminal and network speed acceleration method therefor
CN106413049A (en) * 2016-10-13 2017-02-15 四川速宝网络科技有限公司 Mobile phone wifi network accelerator and method thereof
CN108900385B (en) * 2018-07-24 2021-02-26 Oppo广东移动通信有限公司 Network connection method and related product
CN109391978A (en) * 2018-12-13 2019-02-26 中国联合网络通信集团有限公司 Terminal switching method and device
CN109803318B (en) * 2019-02-12 2021-01-22 Oppo广东移动通信有限公司 Data packet distribution method and device, mobile terminal and storage medium
CN113490291B (en) * 2021-06-16 2022-05-17 荣耀终端有限公司 Data downloading method and device and terminal equipment
CN113596919B (en) * 2021-06-16 2022-12-20 荣耀终端有限公司 Data downloading method and device and terminal equipment

Also Published As

Publication number Publication date
CN115567505A (en) 2023-01-03
CN115567505B (en) 2023-06-30

Similar Documents

Publication Publication Date Title
CN107426432B (en) Resource allocation method and Related product
WO2021047390A1 (en) Method for reducing power consumption and mobile terminal
US20180067841A1 (en) Method and apparatus for determining a performance impact by a software upgrade of a mobile user endpoint device
CN112291816B (en) Data transmission method, device, storage medium and electronic equipment
CN107483725A (en) Resource allocation method and Related product
US20240022518A1 (en) Channel Switching Method, Electronic Device and Storage Medium
WO2022262398A1 (en) Channel switching method, and electronic device and storage medium
KR20140059269A (en) Systems and methods for monitoring of background application events
CN109067571B (en) Electronic device, network configuration method thereof and storage medium
CN112997528B (en) Network switching method and related equipment
CN115484648B (en) Channel switching method, electronic device and storage medium
CN114928877B (en) Method and equipment for reducing power consumption
CN112383948A (en) Data transmission method, device, storage medium and electronic equipment
CN115567505B (en) Method, device and storage medium for displaying network acceleration effect
WO2023087853A1 (en) Network acceleration method, electronic device, chip system, and storage medium
WO2023087852A1 (en) Network acceleration method, electronic device, chip system and storage medium
CN116709442A (en) Wireless network switching method and electronic equipment
US20230300732A1 (en) Card-transfer slice switching method, device and storage medium
CN116155729A (en) Network acceleration method based on user traffic portrayal and related electronic equipment
CN107967178B (en) Resource allocation method, resource allocation device, mobile terminal and medium
CN115002797B (en) Network quality detection method and related electronic equipment
WO2023087850A1 (en) Network acceleration method, electronic device, chip system, and readable storage medium
WO2024082811A1 (en) Network acceleration method and apparatus
RU2802678C1 (en) Channel switching method, electronic device and storage medium
CN116744329A (en) Network acceleration method and electronic equipment

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination