CN115567505A - 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
CN115567505A
CN115567505A CN202210022502.9A CN202210022502A CN115567505A CN 115567505 A CN115567505 A CN 115567505A CN 202210022502 A CN202210022502 A CN 202210022502A CN 115567505 A CN115567505 A CN 115567505A
Authority
CN
China
Prior art keywords
network
application
downloading
download
component
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.)
Granted
Application number
CN202210022502.9A
Other languages
Chinese (zh)
Other versions
CN115567505B (en
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 CN202210022502.9A priority Critical patent/CN115567505B/en
Priority to CN202310750205.0A priority patent/CN116886687A/en
Publication of CN115567505A publication Critical patent/CN115567505A/en
Application granted granted Critical
Publication of CN115567505B publication Critical patent/CN115567505B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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 to download, acquiring the download rate of each network used in the downloading process; after the application is determined to finish downloading, determining the 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 download rate of each used network in the downloading process and is displayed after the downloading is finished, so that a user can have visual feeling on the promotion of the download 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
Technical Field
The present application relates to the field of network acceleration technologies, and in particular, to a method, a device, and a storage medium for displaying a network acceleration effect.
Background
When the electronic equipment is networked, the downloading rate of data can be improved by utilizing a network acceleration technology, 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, it is difficult for the user to feel the increase of the download rate caused by the network acceleration, so the usage experience of the network acceleration function of the electronic device is poor.
Disclosure of Invention
The application provides a display method, equipment and storage medium of a network acceleration effect, so as to improve 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:
a 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 to download, downloading data through the activated plurality of networks;
acquiring the downloading rates of the plurality of networks in the downloading process;
after the application is determined to finish downloading, determining a network acceleration effect according to the downloading rates of the plurality of networks;
and displaying the network acceleration effect.
Illustratively, the pre-activated plurality of networks may include at least one wireless network, and at least one cellular network.
The specific process of activating multiple networks can be seen in steps S01 to S12 shown in fig. 6. The implementation of downloading data using the activated plurality of networks may refer to steps S19 to S20 shown in fig. 6.
According to the scheme, the network acceleration effect is determined according to the download rate of each used network in the downloading process and is displayed after the downloading is finished, so that a user can have visual feeling on the promotion of the download 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 downloading process, where the rate increase ratio is a ratio of a sum of a downloading rate of an active network in the multiple networks and downloading rates of other networks, where the other networks include networks other than the active network in the multiple networks.
The electronic device may calculate the sum of the download rates of the networks used in the present download process, except the primary network, and then use the ratio of the calculated sum of the download rates to the download rate of the primary network in the present download process as the network acceleration effect.
A specific implementation manner of this embodiment can be seen in step S25 to step a02 shown in fig. 8.
In some optional embodiments, the network acceleration effect includes an average acceleration ratio, which is an average of rate-up ratios of multiple download processes in a specified period.
As an example, the electronic device stores the rate increase ratio of the downloading process after each downloading process is finished, so that the electronic device may calculate an average value of the rate increase ratios of all downloading processes completed in the last month or the last week, obtain an average acceleration ratio, and use the average acceleration ratio as the network acceleration effect.
A specific implementation manner of the present embodiment may refer to steps S25 to S30 shown in fig. 6.
It can be seen from the foregoing embodiments that, after the downloading is finished, the electronic device may display the current rate increase ratio and the average acceleration ratio of the latest period as network acceleration effects, so as to help a user determine whether to continue to enable the network acceleration function according to the network acceleration effects.
In some optional embodiments, the obtaining the download rate of each network used in the download process includes:
monitoring the data stream 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 stream information of the application.
In practical application, the data stream information of the application may include a download rate of each data stream of the application and a network carrying the data stream, and the electronic device may determine which data streams of the application are respectively carried by each network according to the data stream information, and then sum the download rates of the data streams 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:
displaying a notification message at the top of the display screen, the notification message including the network acceleration effect.
The method has the advantages that the network acceleration effect can be displayed in time in a mode of 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 user operation, and displaying a network acceleration setting interface, wherein the network acceleration setting interface comprises the network acceleration effect.
A user browses a network acceleration setting interface in a setting component of the electronic device. As an example, the network acceleration setting interface may specifically be the interface shown in fig. 3.
In some optional embodiments, further comprising:
identifying whether the message of the data stream of the application contains the stream characteristics recorded in a stream characteristic library;
and if the message of the data stream of the application contains the stream characteristics, determining that the application starts to download.
In some optional embodiments, the flow characteristics include any one or more of a protocol, a port, a protocol header, and a network address.
That is to say, after the application is started, the electronic device may identify whether a packet of a data stream of the application includes any one or more of a specific protocol, a port, a protocol header, and a network address, and if it is found at a certain time that the packet of the data stream includes any one or more of a specific protocol, a port, a protocol header, and a network address, it may be considered that the application starts to download a file from this time.
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 wide application range.
In some optional embodiments, further comprising:
acquiring a message that the application starts to download;
and determining that the application starts to download 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 time.
The embodiment has the advantages that whether the data stream information contains the specific stream characteristics or not does not need to be analyzed in real time, so that the power consumption of the electronic equipment can be reduced.
In some optional 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 present application provides an electronic device comprising a memory and one or more processors.
The memory is 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 aspect of the present application.
A third aspect of the present application provides a computer storage medium for storing a computer program, which, when executed, is specifically configured to perform the method for displaying network acceleration effects provided in 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 to download, acquiring the download rate of each network used in the downloading process; after the application is determined to be downloaded, determining a network acceleration effect according to the download rate of each network; and displaying the network acceleration effect. According to the scheme, the network acceleration effect is determined according to the download rate of each used network in the downloading process and is displayed after the downloading is finished, so that a user can have visual feeling on the promotion of the download 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 disclosure;
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 disclosure;
fig. 4 is a schematic view of a display interface of another network acceleration effect according to an embodiment of the present application;
fig. 5 is a schematic diagram of a software architecture of an electronic device according to an embodiment of the present application;
fig. 6 is a timing diagram of a method for displaying network acceleration effect according to an embodiment of the present disclosure;
fig. 7 is a schematic diagram of data flow information reported to a traffic sensing component by a traffic reporting component according to an embodiment of the present application;
fig. 8 is a timing diagram illustrating another method for displaying network acceleration effect according to an embodiment of the present disclosure;
fig. 9 is a flowchart of a method for displaying 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 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 this application and the appended claims, the singular forms "a", "an", "the" and "the" are intended to include the plural forms as well, such as "one or more", unless the context clearly indicates otherwise. It should also be understood that in the embodiments of the present application, "one or more" means one, two, or more than two; "and/or" describes the association relationship of the associated objects, indicating that three relationships may exist; for example, a and/or B, may represent: a exists singly, A and B exist simultaneously, and B exists singly, wherein A and B can be singular or plural. The character "/" generally indicates that the former and latter associated objects are in an "or" relationship.
The method for displaying the network acceleration effect provided by the embodiment of the application can be suitable for electronic equipment. The electronic device may be a tablet computer, a mobile phone, a wearable device, a notebook computer, an ultra-mobile personal computer (UMPC), a netbook, a Personal Digital Assistant (PDA), and other electronic devices. The embodiment of the present application does not limit the specific type of the electronic device.
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 (USB) interface 130, a charging 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, a button 190, a motor 191, a camera 193, a display screen 194, and a Subscriber Identity Module (SIM) card interface 195, etc. The sensor module 180 may include a pressure sensor 180A, a touch sensor 180K, and the like.
It is to be understood that the illustrated structure of the embodiment of the present application does not specifically limit the electronic device 100. In other embodiments of the present application, electronic device 100 may include more or fewer components than shown, or some components may be combined, some components may be split, or a different arrangement of components. The illustrated components may be implemented in hardware, software, or a combination of software and hardware.
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 Processing Unit (GPU), an Image Signal Processor (ISP), a controller, a memory, a video codec, a Digital Signal Processor (DSP), a baseband processor, and/or a neural-Network Processing Unit (NPU), among others. The different processing units may be separate devices or may be integrated into one or more processors. For example, the processor 110 is configured to execute the network acceleration method in the embodiment of the present application.
Wherein the controller may be a neural center and a command center of the electronic device 100. The controller can generate an operation control signal according to the instruction operation code and the timing signal to complete the control of instruction fetching and instruction execution.
A memory may also be provided in 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 have just been used or recycled by the processor 110. If the processor 110 needs to reuse the instruction or data, it can be called directly from memory. Avoiding repeated accesses reduces the latency of the processor 110, thereby increasing 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 extend the memory capability of the electronic device 100. The external memory card communicates with the processor 110 through the external memory interface 120 to implement a data storage function. For example, files such as music, video, etc. are saved in an external memory card.
The internal memory 121 may be used to store computer-executable program code, which 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 program storage area and a data storage area. The storage program area may store an operating system, and an application program (such as a sound playing function, an image playing function, etc.) required by at least one function.
In addition, the internal memory 121 may include a high speed random access memory, and may also include a non-volatile memory, such as at least one magnetic disk storage device, a flash memory device, a 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 of electronic device 100 is coupled to mobile communication module 150 and antenna 2 is coupled to wireless communication module 160 so that electronic device 100 can communicate with networks and other devices through wireless communication techniques.
The electronic device 100 may implement audio functions via the audio module 170, the speaker 170A, the receiver 170B, the microphone 170C, the headphone interface 170D, and the application processor. Such as music playing, recording, etc.
The electronic device 100 implements display functions via the GPU, the display screen 194, and the application processor. The GPU is a microprocessor for image processing, and is connected to the display screen 194 and an application processor. The GPU is used to perform mathematical and geometric calculations for graphics rendering. The processor 110 may include one or more GPUs that execute program instructions to generate or alter display information.
The embodiment of the present application does not particularly limit the specific structure of the execution main body of the display method of the network acceleration effect, as long as the display method of the network acceleration effect provided by the embodiment of the present application can be processed by running the code recorded with the display method of the network acceleration effect of the embodiment of the present application. For example, an execution main body of the display method for the network acceleration effect provided by the embodiment of the present application may be a functional module capable of calling a program and executing the program in the electronic device, 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 a chat application, a video application, a news application, and an application marketplace, among others. Taking an application market as an example, a user can browse applications that can be installed by the electronic device in the application market, then select one or more applications to install, after the user selects the applications that need to be installed, the application market can download an installation package of the applications selected by the user from the server when the electronic device accesses the network, and after the downloading is completed, the application market installs corresponding applications on the electronic device by using the installation package.
In the embodiment of the present application, the network acceleration function may be understood as a function that 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) accesses multiple networks provided by the multiple network cards, so as to simultaneously use the multiple network cards to surf the internet. Compared with the network access using a single network card, the network acceleration function can effectively improve the network speed of the electronic equipment.
When the network acceleration function is turned off, the electronic device uses a network card to provide internet access service, for example, when there is wireless network coverage, a wireless network card is used to access the internet, and when there is no wireless network coverage, a data service network card is used to access the internet.
When the network acceleration function is started, the electronic device can use a plurality of network cards to provide internet access service, for example, when a wireless network is covered, the wireless network card and the data service network card are used to access the internet at the same time. As an example, the electronic device may download the file from the server using the wireless network card and the data service network card simultaneously when there is wireless network coverage.
The technical principle of the network acceleration function is briefly explained below by taking the application market as an example. Referring to fig. 2, after the application market a selects an application to be installed, the user establishes a network connection between the application market a and the 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 the installation package is downloaded, multiple data streams are generally generated between the application market a and the server a, for example, a data stream A1 and a data stream A2 exist between the application market 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 streams loaded by each network card are reduced, each data stream can obtain more resources of the network card, so that a faster data download rate is obtained, and the download rate of the application market A is 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 (e.g., wi-Fi) of the mobile phone, and compared with transmitting the data streams A1 and A2 only through the wireless network (or the mobile network), the download rate of the application market a is increased.
It should be noted that the network acceleration technique as described in fig. 2 can be applied to various applications (e.g., 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 through the network acceleration method shown in fig. 2.
For example, when a download application downloads a specific file from a server, a plurality of data streams for downloading the file may be generated, and thus, when the download application downloads the file from the server, network acceleration may be performed by using the method shown in fig. 2.
It can be seen that when the application downloads data from the server by using the network acceleration technology, a part of data stream needs to be assumed 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 traffic, and at the same time, it is often difficult for a user to feel the effect of the network technology after starting the network acceleration. This results in a poor user experience when using the network acceleration function.
In view of the foregoing problems, an embodiment of the present application provides a method for displaying a network acceleration effect. In this embodiment, the electronic device may display the rate increase ratio of the current network acceleration by popping up a message at the top of the display screen when the network acceleration is finished (for example, when the file downloading is finished). The electronic device may also display in the designated interface an average acceleration rate for all network accelerations performed over a particular time period.
Referring to fig. 3, a user may turn on or off the network acceleration function through a control 301 in the network acceleration setting interface shown in fig. 3. When the network acceleration function is in an on state, the electronic device may display an average acceleration ratio of all network accelerations performed within a certain 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, in which a percentage of the average boosted download speed over the last 30 days, e.g., 35% of the boosted download speed, using network acceleration, and the average accumulated number of network accelerations using network acceleration are displayed. For example, the network accelerates 40 times.
In some optional embodiments, the network acceleration setting interface may also display a rate increase ratio of a latest completed downloading process, except for displaying an average acceleration ratio of a specific time period, and the present embodiment does not limit the content specifically displayed in the interface.
Referring to fig. 4, when a network acceleration is finished, the electronic device may further display a rate increase ratio of the network acceleration through a message popped up from the top of the display screen, and may further display an average acceleration ratio in a specific time period. Illustratively, at the end of a download, the electronic device pops up a message 401 shown in fig. 4 at the top of the display screen, where the message includes the number of network jams reduced by the network acceleration function and the percentage of the accelerated download speed during the download, and the number of network jams reduced by the network acceleration function and the percentage of the accelerated download speed are accumulated during the month.
In some optional embodiments, the message popped up at the top of the display screen may further include an average acceleration ratio within a specific time period, and the present embodiment does not limit the specific content of the message.
The method for displaying the network acceleration effect 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 optional embodiments, the electronic device may further display a rate increase ratio of one network acceleration or an average acceleration ratio of multiple network accelerations in other various manners, which is not limited in this embodiment.
In some optional embodiments, the information included in the rate increase ratio or the average acceleration ratio is not limited to the increase of the download speed percentage and the decrease of the number of times of hitches shown in fig. 3 and fig. 4, but may include other information capable of reflecting the effect of network acceleration, which is not limited in this embodiment.
The following is a technical implementation detail of the method for displaying the network acceleration effect provided in this embodiment.
Fig. 5 is a schematic view of a software architecture of an electronic device according to an embodiment of the present application.
The software architecture of the electronic device comprises an application layer, an application framework layer, a Native (Native) layer and a kernel layer. Only part of the layers and parts of the components related to the embodiments of the present application are shown in fig. 5, and in practical applications, the layers and components not shown in fig. 7 may also 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 market, 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 and the like of the electronic device. Illustratively, the network acceleration interface as shown in FIG. 3 may be one of the interfaces of the setup component display.
In this embodiment, the setting component may provide an acceleration switch for turning on or off the network acceleration function and an acceleration benefit display for displaying the network acceleration effect. Taking FIG. 3 as an example, the setup component provides the functionality of an acceleration switch via control 301 shown in FIG. 3 and the functionality of an acceleration benefit display via window 302 shown in FIG. 3.
The system user interface may pop up a notification message on top of a display screen of the electronic device. Illustratively, the message 401 shown in FIG. 4 may pop 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 statistic management component.
The environment detection component is configured to detect various events of an upper application, for example, may detect opening and exiting of an application, may detect an application currently switched to a foreground, and may detect installation and uninstallation of the application.
The network management component is used for activating the Wi-Fi network channel and the data service network channel supported by the electronic equipment. I.e. to switch the network channel from the sleep state to the wake state. Wherein the network channel of the wake state can be directly used. As an example, a wireless network card 1 in a 2.4GHz band and a wireless network card 2 in a 5.0GHz band are provided in the electronic device. The network management component can activate a wireless network with a 2.4GHz frequency band; wireless networks in the 5.0GHz band may also be activated. The electronic device 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 data services of operator a and data services of operator B.
The channel quality component is configured to evaluate a quality of a network channel. As an example, the channel and application quality assessment component may assess the quality of a Wi-Fi network in the 2.4GHz band, and may also assess the quality of a Wi-Fi network in the 5.0GHz band. The quality of operator a's cellular network may also be evaluated, as may the quality of operator B's cellular network.
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, is used for requesting or closing any network channel, can sense the state change of any network channel, and can also sense the quality of any network channel.
And the policy management component is used for starting a network acceleration function and starting a data flow monitoring function.
And the flow statistic management component is used for storing the rate increase proportion after each network acceleration and determining the average acceleration proportion of the time period according to the rate increase proportion of multiple network accelerations in a specific time period.
The local formation includes a flow level path management component and a flow sensing 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 and ending downloading and calculating the acceleration benefit of each network acceleration.
For example, the reported data stream information may include statistical information of the data stream, such as a packet loss rate and a download rate of the data stream, and when one download is finished, the traffic sensing component calculates a rate increase ratio of the current download according to the statistical information collected in the current download.
The flow level path management component is configured to update selection of a new network channel according to a policy change of an upper layer, trigger quality detection of the network channel, and dynamically select an optimal channel, and may also be configured to store paths of different network channels, for example, paths of a network channel currently used by an application (e.g., a main network channel) and a standby network channel.
The kernel layer comprises a strategy execution component and a flow reporting component. The flow reporting component is used for collecting data flow information and reporting the collected data flow information. The policy enforcement component is to allocate the data streams to different network channels of different electronic devices. Taking fig. 2 as an example, the policy enforcement component is configured to allocate a data flow A1 of the application market to a cellular network corresponding to the data service network card, and allocate a data flow 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 embodiments 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 merged into the same component. The channel quality component and the network management component may be merged into the same component.
Example one
For a clearer understanding of the above architecture diagram, referring to fig. 6, a timing chart of a display method of a network acceleration effect implemented by each component shown in fig. 5 is provided for the embodiment of the present application.
When the user opens any application on the electronic device, or switches an application running in the background to the foreground, the environment detection component executes step S01, and detects that the application is opened. After detecting that the application is opened, the environment detection component executes step S02 to the policy management component, and notifies the application to be opened.
In step S01, the environment detection component may determine which application of the electronic device is specifically started, and then acquire an application identifier of the started application, so that the environment detection component sends the acquired application identifier to the policy management component when step S02 is executed, thereby notifying the policy management component that the application corresponding to the application identifier is started. The application identification may be any identification that can uniquely determine an application of the electronic device, and may be, for example, the name of the application.
For example, after the user opens the application market, the environment detection component detects that the application market is opened, acquires the name of the opened 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 opened.
After receiving the notification, the policy management component executes step S03 to determine that the application supports network acceleration. The applications in step S03 and the subsequent steps in this embodiment both refer to the application detected by the environment detection component in step S01 that is started.
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 in the electronic device support a network acceleration function, and in step S03, the policy management component queries whether an open application exists in the network acceleration configuration library, if an open application exists in the network acceleration configuration library, the policy management component determines that the application supports network acceleration, and if an application does not exist 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 to each application supporting network acceleration, in which case step S03 may not be performed.
Continuing with the foregoing example, upon receiving the notification that the application marketplace is open, the policy management component queries the network acceleration configuration repository for the application marketplace, and determines that the application marketplace supports network acceleration based on the query.
If the policy management component determines that the application does not support network acceleration, the method provided in this embodiment is ended, and the electronic device transmits the data stream of the application through a single network channel, for example, only transmits the data stream through a wireless network card, or only transmits the data stream through a 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, and notifies that network acceleration is started.
In step S04, the policy management component may send the application identifier for starting the application and the information indicating that the network acceleration is started to the flow-level path management component, so as to explain to the flow-level path management component that the corresponding application starts the network acceleration.
In some optional embodiments, the policy management component may further record that the application has started network acceleration after determining that the application supports network acceleration, so as to count the number of times of using the network acceleration function.
And after obtaining the notification, the flow level path management component executes the step S05 to the flow reporting component of the kernel layer and sends an application starting acceleration message. The message is used for explaining the corresponding application to the flow reporting component to start 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 with the foregoing example, after determining that the application market supports network acceleration, the policy management component sends the identifier of the application market and information indicating network acceleration start to the flow level path management component, and after receiving the information, the flow level path management component continues to send a message indicating application market start acceleration to the traffic reporting component.
And after receiving the message of accelerating the application starting, the flow reporting component executes the step S06 and registers the message monitoring hook.
The message monitoring hook registered in step S06 may monitor the data stream information of the application, the data stream information, which may include a message of the data stream, statistical information of the data stream, and path information of a network carrying the data stream.
The statistical information of the data stream may include information such as a download rate and a packet loss of the data stream.
Continuing with the foregoing example, after receiving the message of application market start acceleration, the traffic reporting component registers a message monitoring hook for monitoring the application market, and monitors related information of a data stream of the application market through the message monitoring hook.
Registering the message monitoring hook and acquiring the data stream information through the message monitoring hook is a way for acquiring the data stream information of the application provided by this embodiment. In other optional embodiments, the traffic reporting component may also obtain the data stream information of the application in other manners, and the specific obtaining manner is not limited in the present application.
After receiving the notification of starting network acceleration, the flow-level path management component also performs step S07 to the channel-level path management component to request to activate the network.
Step S07 may be executed before step S05, or may be executed after step S05, and the execution order of step S05 and step S07 is not limited in this embodiment.
The path-level path management component performs step S08, in response to the request of the flow-level path management component, to the network 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, the electronic device may support multiple network channels. For example, the electronic device may be inserted with two Subscriber Identity Module (SIM) cards, one SIM card for each data service network. In addition, the electronic device may be provided with a plurality of wireless network cards to support a plurality of wireless networks with different frequency bands, for example, the electronic device may be provided with a wireless network card 1 supporting 5.0GHz data transmission and a wireless network card 2 supporting 2.4GHz data transmission. Based on the configuration, the electronic device can support four network channels, namely a data service network 1 (corresponding to the SIM card 1), a data service network 2 (corresponding to the SIM card 2), a wireless network 1 (corresponding to the wireless network card 1 of 5.0 GHz) and a wireless network 2 (corresponding to the wireless network card 1 of 2.4 GHz).
The multiple network channels supported by the electronic device may distinguish the primary network from 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 may be determined as a secondary Wi-Fi, the SIM card 1 may be determined as a primary SIM card, the corresponding data service network 1 may be a primary data service network, the SIM card 2 may be determined as a secondary SIM card, and the corresponding data service network 2 may be 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.
For example, in step S07, the flow-level path management component may send activation requests to the channel-level path management component in sequence according to the sequence of the primary Wi-Fi, the primary SIM card, the secondary Wi-Fi card, and the secondary SIM card, that is, request activation of the wireless network 1 first, then request activation of the data service network 1, then request activation of the wireless network 2, and so on.
Similarly, in response to the request of the stream-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 sequence according to the same sequence.
The network management component responds to the request of the channel-level path management component, and executes step S09 to activate the network.
After the network management component activates the network, step S10 is executed to the path-level path management component to notify the network status.
In step S09, the network management component may sequentially attempt to activate the network channels supported by the electronic device in the order requested by the channel-level path management component, 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.
During activation, there may be some network channels that are successfully activated and some network channels that are not successfully activated, where the network channels that are successfully activated are in an available state and the network channels that are not successfully activated are in an unavailable state.
For example, the wireless network 2 may need to be authenticated by a user for use, and if the electronic device fails to be authenticated by the user, the network management component may not activate the wireless network 2; if SIM card 2 is owed, or a call request to SIM card 2 is received while activating data service network 2 (i.e., a call to SIM card 2 is received), the network management component cannot activate data service network 2 provided by SIM card 2.
Therefore, after the network management component executes step S09, the channel-level path management component needs to be notified of the status of each network, so that the channel-level path management component determines which networks are available and which networks are not available.
The network management component may notify the channel-level path management component of the network status in various manners, and this embodiment does not limit a specific notification manner.
For example, the network management component may send a network identification of each network channel requested to be activated to the channel-level path management component in step S10 and mark each network identification as available or unavailable.
Or, the network management component may only send the network identifier of the network channel that is successfully activated to the channel-level path management component, and after receiving the network identifiers, the channel-level path management component may determine that the network channel corresponding to the received network identifier is available and that the other network channels are unavailable.
As an 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 notifies 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 unavailable.
After receiving the notification from the network management component, the path-level path management component executes step S11 to determine an available network. Continuing with the previous example, the channel-level path management component, upon receiving the notification, may determine that the primary Wi-Fi and primary data traffic networks are available.
The available networks, i.e. the networks for which the network management component activates successfully. After the channel-level path management component determines the available network, the flow-level path management component executes step S12 to notify the available network. The information sent by the path-level path management component in step S12 may be the same as or different from the information sent by the network management component in step S10.
The stream level path management component is informed of available networks, so that after downloading starts, the stream level path management component can distribute a plurality of data streams for downloading between the application and the server to a plurality of available networks to realize network acceleration.
After the channel-level path management component determines the available network, step S13 is further performed on the channel quality component to instruct to detect the available network quality.
In step S13, the path-level path management component may send the network identifier of the network that was successfully activated in the available state to the path quality component, so that the path quality component periodically probes the network quality of these available networks.
Continuing with the foregoing example, after the tunnel-level path management component determines that the master Wi-Fi and the master data traffic network are available, the network identifications of the master Wi-Fi and the master data traffic network are sent to the tunnel quality component, such that the tunnel quality component detects the network quality of the master Wi-Fi and the master 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 specific content of the detection result is not limited in this embodiment. For example, the probing result may include Round-Trip Time (RTT), the number of packets to be received and transmitted, the download rate, and the air interface rate.
After notifying the flow level path management component to start acceleration, the policy management component may perform step S15 to the traffic awareness component to start traffic monitoring. And the flow sensing component responds to the message of the strategy management component, and executes the step S16 to the flow reporting component of the kernel layer to start flow monitoring.
In step S15, the policy management component may send a message for starting traffic monitoring to the traffic sensing component, and the traffic sensing component forwards the message for starting traffic monitoring to the traffic reporting component after receiving the message, and after receiving the message for starting traffic monitoring, the traffic reporting component may monitor the data stream information of the application by using the message monitoring hook registered in step S06.
In a specific implementation, the policy management component may execute step S15 immediately after step S04 is executed, or may execute step S15 again at a preset time (a specific value may be set according to actual conditions) after step S04 is executed.
After the traffic sensing component starts traffic monitoring, the traffic reporting component executes step S17 in real time during application networking, and reports data stream information. That is, after the traffic sensing component starts traffic monitoring, as long as a data stream is generated between the application and the server, the traffic reporting component collects data stream information and reports the collected data stream information to the traffic sensing component.
The traffic awareness component may determine a partial behavior of the application by analyzing the reported data stream information, for example, the traffic awareness component may determine when the application starts downloading a file and when the application ends downloading according to the data stream information.
Continuing with the foregoing example, after the user selects an application to be installed in the application marketplace and determines to install, the application marketplace starts to download the installation package of the application from the server, and at this time, the traffic awareness component executes step S18 to determine to start downloading according to the data flow information.
As mentioned above, the reported data flow information includes the message of the data flow. The traffic awareness component may determine whether the application starts downloading according to whether a message of the data stream contains a specific stream feature, and the stream feature may be stored in a stream feature library of the application. The stream characteristics may specifically include any one or more of a protocol, a port, a protocol header, a network address, and the like in the message.
That is to say, after receiving the reported data stream information, the traffic sensing component may identify whether the reported data stream information includes the specific characteristics, such as the protocol, the port, the protocol header, the network address, and the like, recorded in the stream characteristic library, and if the traffic sensing component identifies the characteristics, such as the protocol, the port, the protocol header, the network address, and the like, recorded in the stream characteristic library in the data stream information received at a certain time, the traffic sensing component may determine that the application starts to download.
Continuing with the previous example, for the application market, the flow characteristics library may record characteristics such as TCP protocol, 80 ports and character strings apk. After the application market is opened, 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 a reported data stream message, the flow sensing component determines that the application market starts to download files.
The flow feature library of the application can be obtained by collecting messages of the data flow of the application in advance by the flow sensing component.
Continuing with the previous example, the traffic awareness component may collect messages of the data stream each time the application marketplace downloads a file, obtain characteristics from the messages that indicate the beginning of the download of the application marketplace, and record the characteristics in the stream characteristics repository of the application marketplace.
The method for determining whether to start downloading the application has the advantages that for most applications, the traffic sensing component can determine whether to start downloading the application by identifying whether the message has the stream characteristics or not on the basis of the stream characteristic library constructed in advance, so that the method has a wider application range.
In the embodiment of the present application, the traffic sensing component may determine whether to start downloading the application in various ways, and is not limited to determining whether to start downloading according to the data stream information.
For example, a portion of the application may be configured to send a message to start downloading to the traffic awareness component when the application starts downloading, and the traffic awareness component may determine that the application starts downloading when receiving the message.
The benefit of determining the start of download of an application based on the messages of the application is that the traffic awareness component does not need to analyze in real time whether certain stream characteristics are contained in the data stream information, thus enabling a reduction in power consumption of the electronic device.
After determining the start of the download, the traffic awareness component executes step S19 to the flow level path management component, and notifies the start of the download.
After receiving the notification of the start of downloading, the stream level path management component executes step S20 to allocate the data stream to the available network.
In step S20, the flow-level path management component may allocate the data flow to the available network in various ways, and this embodiment does not limit the specific allocation way. Illustratively, the flow-level path management component may distribute multiple data flows of an application evenly across the various available networks.
By executing step S20, the electronic device downloads data using the activated plurality of networks after the application starts downloading.
In some embodiments, the flow level path management component may implement the allocation of data flows using a policy enforcement component of the kernel layer. For example, in executing step S20, the flow-level path management component may correspondingly 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, so that the policy enforcement component switches the data flow to the corresponding available network.
Continuing with the previous example, the application marketplace, when downloading, generates two data streams A1 and A2, the available networks being the primary Wi-Fi and the primary data service network, and the stream level path management component, upon receiving notification of the start of the download, determines to assign data stream A1 to the primary data service network and data stream A2 to the primary Wi-Fi.
Then, the flow-level path management component correspondingly sends the network identifier of the main data service network and the identifier of the data flow A1 to the policy execution component, so that the policy execution component switches the data flow A1 to a main SIM card providing the main data service network; and the flow level path management component correspondingly sends the network identification of the main Wi-Fi and the identification of the data flow A2 to the policy execution component, 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 to download, the electronic equipment simultaneously downloads the data required by the application market by using the main Wi-Fi and the main data service network.
After determining the start of downloading, the traffic awareness component further performs step S21 to record the statistical information of the available networks.
The statistical information of the available networks may include the download rates of the available networks, the number of lost packets, and the like, or may include only the download rates of the available networks. As mentioned above, the data flow information may include a download rate of the data flow, a packet loss number, and information about a network carrying the data flow. After receiving the reported data stream information, the traffic sensing component may determine which data streams of the application are respectively carried by each available network according to the information of the network carrying the data streams therein, and then add the download rates of the data streams of the application carried by the network to obtain the download rate of the network.
As described above, the traffic reporting component may periodically report data stream information during the downloading process, and the corresponding traffic sensing component may periodically determine and record statistical information of available networks according to the reported data stream information.
Continuing with the foregoing example, after the hierarchical path management component allocates the data stream A1 of the application market to the main data service network and allocates the data stream A2 to the main Wi-Fi, the traffic sensing component receives the information of the data stream A1 and the information of the data stream A2 reported by the traffic reporting component.
And the flow sensing component determines the data flow A1 of the application market borne by the main data service network according to the information of the data flow A1, and determines the data flow A2 of the application market borne by the main Wi-Fi according to the information of the data flow A2. Then, the download rate of the data stream A1 is recorded as the download rate of the main data service network, and the download rate of the data stream A2 is recorded as the download rate of the main Wi-Fi.
In another example, if the application market has three data streams A1, A2 and A3, where the data stream A1 is still carried by the main data service network and the data streams A2 and A3 are carried by the main Wi-Fi, the traffic awareness component records the download rate of the data stream A1 as the download rate of the main data service network and records the sum of the download rate of the data stream A2 and the download rate of the data stream A3 as the download rate of the main Wi-Fi when recording the download rate of the network.
During downloading, the traffic aware component may further evaluate the download rate of each activated network channel according to the statistical information of the respective data streams, and when the download rate of any one or more network channels is found to be too low (e.g., the download rate is lower than a threshold), the traffic aware component performs step S22 to the flow-level path management component to notify that the network rate is low.
In step S22, the traffic awareness component may send the network identification of the network channel with the download rate below the threshold to the flow level path management component,
after receiving the notification of low network rate, the flow level path management component executes step S23, and performs load balancing according to each network rate.
In step S23, the stream level path management component may implement load balancing in multiple ways, and this embodiment does not limit a specific load balancing way.
For example, the stream level path management component may allocate a portion of the data stream carried by a network channel with an excessively low download rate to the network with the highest download rate.
Alternatively, the flow level path management component may allocate multiple data flows of an application according to a proportion of the download rate of each available network.
Alternatively, the stream level path management component may switch the data stream with the lower download rate to the network with the faster download rate.
Similar to step S20, the flow-level path management component may complete the switching of the data flow using the policy enforcement component in step S23. Illustratively, the stream level path management component sends data stream switching information indicating which data stream is switched to which network card to the policy enforcement component, and then the policy enforcement component performs switching according to the data stream switching information.
In some optional embodiments, before performing load balancing, the flow level path management component may request the network management component to activate the network again, which refers to steps S07 to S09 for a specific process and is 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 available network in step S09, and if the network management component does not activate the new network, the flow level path management component performs load balancing based on the available network only in step S09.
When the application downloading is finished, the flow sensing component executes step S24, and determines that the downloading is finished according to the data stream information.
When there is no data in the data stream for download that is being transmitted, the traffic aware component can assume that the application download is complete. Therefore, in step S24, if the traffic awareness component recognizes that the download rate of each data stream of the application is low (e.g., below a certain threshold), it may determine that the application download is finished.
In some alternative embodiments, the traffic aware component may determine that the download is over in other ways as well. For example, the application may send an end-of-download message to the traffic-aware component at the end of the download, and the traffic-aware component may determine that the application download is complete upon receiving the message.
After the downloading is determined to be finished, the flow sensing component executes the step S25 to calculate the rate increase proportion of the downloading.
The flow sensing component may use multiple algorithms to calculate the rate increase ratio of the current download, and which algorithm is specifically used may be determined according to an actual situation, which is not limited in this embodiment.
For example, the traffic sensing component may calculate the rate increase ratio of the current download in step S25 by using the following method:
first, the download rate of the host network in the present download is calculated. The primary network may be determined as follows: if a plurality of wireless networks are used in the downloading, the main wireless network determined according to user setting or default configuration is determined as the main network, and if only one wireless network is used in the downloading, the wireless network is determined as the main network.
Continuing with the foregoing example, the electronic device supports the main Wi-Fi and the auxiliary Wi-Fi, and if the main Wi-Fi and the auxiliary Wi-Fi are used in the current download at the same time, it is determined that the main Wi-Fi is the main network of the current download, and if only the auxiliary Wi-Fi is used in the current download, it is determined that the auxiliary Wi-Fi is the main network of the current download.
In other alternative embodiments, the traffic sensing component may also determine the active network in other manners, where the manner described above is merely an example, and the manner of determining the active network is not limited in this embodiment.
Referring to step S21, the traffic sensing component may periodically record the downloading rate of the active network during the downloading process. When step S25 is executed, the traffic sensing component may calculate an average value of the download rates of the multiple primary networks recorded in the downloading process, and determine the calculation result as the download rate of the primary network in the current 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 turned off for another reason.
Illustratively, the secondary data service network is not activated before downloading starts, during downloading, because the downloading rate of the primary Wi-Fi is low, the traffic level path management component requests the network management component to activate the secondary data service network, and after downloading for a period of time with the secondary data service network, because the SIM card 2 providing the secondary data service network receives the voice call request, the secondary data service network is closed. In this case, the traffic aware 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 downloading except the main network, the traffic sensing component can also calculate the average value of a plurality of downloading rates of the network recorded in the downloading process, and determine the calculation result as the downloading rate of the network in the current downloading.
And finally, dividing the download rate of the main network in the current download by the sum of the download rates of all networks activated in the current download except the main network to obtain the rate promotion proportion of the current download.
Continuing with the foregoing example, in the application market downloading process, the main data service network and the main Wi-Fi are activated for downloading, and after the downloading is finished, the traffic sensing component determines that the downloading rate of the main data service network is S1, the downloading rate of the main Wi-Fi is S2, and the main Wi-Fi is the main network, so that the traffic sensing component can calculate that the rate promotion ratio of the current downloading is S1/S2.
After calculating the rate increase ratio of the current download, the traffic sensing component performs step S26 on the traffic statistics management component, and sends the rate increase ratio.
After receiving the rate increase ratio of the current download, the traffic statistics management component executes step S27 to store the rate increase ratio.
In step S27, the traffic statistics management component may store the received rate boost ratio and the corresponding timestamp of the received rate boost ratio in the database, so as to calculate the average acceleration ratio of the specified period later.
When the user opens the network acceleration interface as shown in fig. 3, the setting component performs step S28 on the traffic statistics management component to obtain the average acceleration ratio.
After receiving the request of the setting component, the traffic statistics management component executes step S29 to calculate the average acceleration ratio of the designated period.
In step S29, the flow statistics management component may calculate the average acceleration ratio of the specified period in various ways, and the specific calculation way is not limited in this embodiment.
For example, in step S29, the traffic statistics management component searches, in the database, the timestamps located in the specified period, for example, the timestamps located in the last 30 days, then reads the rate increase ratios corresponding to the timestamps, and finally averages all the read rate increase ratios to obtain the average acceleration ratio of the specified period.
After acquiring the average acceleration ratio, the setting component executes step S30 to display the average acceleration ratio.
In some optional embodiments, the traffic statistics management component may also perform step S29 immediately after the end of downloading receives the rate increase ratio of the current downloading sent by the traffic sensing component, and store the calculated average acceleration ratio in the database. Therefore, when the setting component requests to acquire the average acceleration ratio, the flow statistics management component directly reads the average acceleration ratio from the database and sends the average acceleration ratio to the setting component.
The method has the advantages that when the user opens the network acceleration interface, the time for calculating the average acceleration ratio can be saved, the average acceleration ratio can be displayed more quickly, and the use experience of the user is improved.
Although the foregoing embodiment describes the method for displaying the network acceleration effect provided by the present application by taking an application download file (for example, an application market download installation package) 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 a 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 the server, and the video application acquires 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 statistical information of the data stream after determining that the video application starts playing the network video according to the data stream information, then calculates a rate promotion ratio of 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 stream information, and then sends the rate promotion ratio to the flow statistics management component, and the subsequent steps are referred to steps S27 to S30 and are not repeated.
Similarly, for an audio application and a browser application supporting network acceleration, when a user uses the audio application to play network audio (for example, music not stored locally in the electronic device) and uses the browser application to browse a web page, the application obtains corresponding audio resources and web page resources through a data stream. The flow sensing component determines the starting and ending time of playing the network audio by the audio application and the starting and ending time of loading the webpage by the browser application according to the data stream information, so that the speed increasing proportion of playing the network audio and loading the webpage can be determined by utilizing the statistical information of the data streams of the applications in the corresponding time period, and the display of the network acceleration effect is realized.
In the above embodiment, the traffic reporting component obtains the data stream information of the application by registering the message monitoring hook and reports the data stream information to the traffic sensing component, and details of technical implementation of the process are described below.
The Netfilter component exists in a system of the electronic equipment, and the data stream of the application corresponding to the specific application identifier can be acquired through the Netfilter component. The traffic reporting component may obtain the messages of the data flow of a particular application (e.g., the application marketplace of the previous example) by calling the Netfilter component. In a specific implementation, the data stream information reported to the traffic sensing component by the traffic reporting component may include a packet of the data stream, statistical information of the data stream, 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 listening hook (e.g., nf _ hook function).
And after the traffic reporting component calls the Netfilter component, the Netfilter component reports the message of the data stream, and after the traffic reporting component receives the message of the data stream 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: and operations such as message analysis, flow table checking, message analysis and the like.
When the message is analyzed, whether the message has the application identifier 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 quadruplet comprises a source IP, a destination IP, a source port and a destination port; the quintuple comprises: source IP, destination IP, source port, destination port, and protocol number. That is, the quad or quintuple of the packet contains the aforementioned partial flow characteristics (e.g., protocol and port of the packet). In addition, the message itself may also carry partial flow characteristics.
After the analysis, the flow table is queried 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 statistical information of the individual flows includes: receiving the message number, total byte number, error packet number and the like of the data stream.
In practical applications, the statistical information of each stream may further 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 flow table does not contain the identification information or the related statistical information of a certain data flow, the identification and the related statistical information of the data flow may be added to the flow table.
After the flow table is looked up and the flow table information is updated, the message can be analyzed. For example, the message is filtered to obtain all or part of the message.
As an example, the filtering process may be filtering heartbeat packet messages of a certain data flow. Then, after filtering, the heartbeat packet message of the data stream is obtained. The filtering process may be: by presetting certain characteristics, the messages meeting the characteristics are reserved. That is, the message satisfying some preset characteristics is the filtered message.
The heartbeat packet message is a message that exists in the data stream at a certain time interval. The heartbeat packet message has a fixed characteristic (e.g., 0x64 or 0x 65) at a fixed location (e.g., the 6 th byte). Since the heartbeat packet message is a message existing at a certain time, the time delay can be calculated and obtained based on the heartbeat packet message (for example, the total elapsed time is from the beginning of sending the heartbeat request message to the server by the mobile phone to the time when the mobile phone receives the heartbeat response message fed back by the server).
The above example takes filtering heartbeat packets as an example for explanation, and in practical application, filtering processing may be performed to obtain data packet messages satisfying other characteristics.
As another example, the filtering condition 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, the currently opened application is an application market, and when performing message analysis, messages of data streams of the application market may be retained.
After the above processing, the obtained filtered partial message is stored in the SKB queue.
The strategy for reporting the message of the data stream stored in the SKB queue comprises the following steps: immediate reporting and periodic reporting.
If the report is immediate, a specific thread in the flow reporting component timely checks the queue and reports the messages in the queue to the flow sensing component.
If the messages are reported regularly, a timer is set in the flow reporting component, the 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.
Certainly, in practical applications, some of the messages of the data stream stored in the SKB queue need to be reported immediately, and some of the messages need to be reported periodically. According to the same principle, a specific thread in the flow reporting assembly checks the queue in time, and reports messages needing to be reported immediately in the queue to the flow sensing assembly in time. The flow reporting component is also provided with a timer, the messages in the SKB queue are checked in a certain period based on the time set by the timer, and the messages needing to be reported regularly in the queue are reported to the flow sensing component.
It should be noted that, when reporting a message, the statistical information related to the message may also be reported together. For example, when the traffic reporting component reports the message of the data stream of the application market, the traffic reporting component reports the download rate of the data stream of the application market to the traffic sensing component.
According to the above description, after receiving the reported message, the traffic sensing component can determine whether the corresponding application starts to be downloaded by checking the stream characteristics in the quadruple or quintuple of the message, and after determining that the corresponding application starts to be downloaded, the traffic sensing component can record the statistical information of the data stream reported together with the message, so as to calculate the rate increase ratio of the current downloading according to the statistical information when the downloading is finished.
Example two
In this embodiment, the electronic device may further display the rate increase ratio of the network acceleration after the network acceleration is finished each time in the form of a notification message.
Please refer to fig. 8, which is a timing diagram illustrating a method for displaying network acceleration effect according to another embodiment of the present application.
In this embodiment, steps S21 to S27 are the same as those in the embodiment shown in fig. 6, and are not repeated.
After executing step S27, the traffic statistics management component executes step a01 on the System user interface (System UI) to send a rate increase proportion, and after receiving the rate increase proportion downloaded this time, the System user interface executes step a02 to display the rate increase proportion.
Illustratively, after calculating that the current download rate is increased by 35%, the traffic statistics management component sends a message that the rate increase proportion of the current download is 35% to the system user interface, and after receiving the message, the system user interface can pop up a notification message on the top of the display screen of the electronic device, and displays that the download rate is increased by 35% in the notification message.
In some optional embodiments, before performing step a01, the traffic statistics management component may also calculate an average rate increase ratio in a specific time period, and then send the calculated average rate increase ratio and the rate increase ratio of the current download to the system user interface together, so that the system user interface displays the average rate increase ratio in the specific time period and the rate increase ratio of the current download in a pop-up notification message together.
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 a notification message at the top of the display screen at the end of each download, so as to display the rate boost ratio of the current download 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 the network acceleration interface for a certain period of time.
According to the first and second embodiments, a method for displaying a network acceleration effect can be obtained, please refer to fig. 9, which is a flowchart of a method for displaying a network acceleration effect provided in an embodiment of the present application.
S901, obtaining the download rate of a plurality of networks during downloading.
In step S901, the electronic device may determine download rates of a plurality of networks used in downloading according to a plurality of data streams generated when the application is downloaded. The specific implementation process of step S901 can be referred to steps S01 to S24 of the embodiment shown in fig. 6 and 8.
S902, determining the network acceleration effect according to the download rates of a plurality of networks.
In some alternative embodiments, the network acceleration effect may be a rate boost ratio of the present download. The electronic equipment determines the speed increasing proportion of the current downloading by comparing the downloading speed of the main network with the sum of the downloading speeds of other networks except the main network. For a specific implementation process, please refer to the foregoing steps S25 to S27.
In some optional embodiments, the network acceleration effect may also be an average acceleration ratio obtained by integrating rate increase ratios of multiple downloads in a specific time period. The electronic equipment determines the speed increasing proportion of the current downloading by comparing the downloading speed of the main network with the sum of the downloading speeds of other networks except the main network, and then determines the average acceleration proportion by utilizing the speed increasing proportion of the current downloading and the speed increasing proportion of the multiple downloading in a specific time period recorded in the database. For a specific implementation process, please refer to the foregoing steps S25 to S29.
And S903, displaying the network acceleration effect.
In some optional embodiments, the network acceleration effect may be a rate increase 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 optional embodiments, the network acceleration effect may also be an average acceleration ratio obtained by integrating rate promotion ratios of multiple downloads in a specific time period, and here, the specific implementation of step S903 may refer to step S30 shown in fig. 6.
An embodiment of the present application provides an electronic device including a memory and one or more processors.
The memory is for storing a computer program.
One or more processors are used for executing a computer program, and particularly for realizing the display method of the network acceleration effect provided by any embodiment of the application.
The embodiment of the present application further provides a computer storage medium, which is used to store a computer program, and when the computer program is executed, the computer program is specifically used to implement the method for displaying the network acceleration effect provided in any embodiment of the present application.
Reference throughout this 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 present application. Thus, appearances of the phrases "in one embodiment," "in some embodiments," "in other embodiments," or the like, in various places throughout this specification are not necessarily all referring to the same embodiment, but rather mean "one or more but not all embodiments" unless specifically stated otherwise. The terms "comprising," "including," "having," and variations thereof mean "including, but not limited to," unless expressly specified otherwise.
The embodiments of the present application refer to a plurality of the same or greater than 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 the description, and are not to be construed as indicating or implying relative importance or order.

Claims (12)

1. A method for displaying network acceleration effect is characterized by comprising the following steps:
activating a plurality of networks;
after determining that the application starts to download, downloading data through the activated networks;
acquiring the downloading rates of the plurality of networks in the downloading process;
after the application is determined to finish downloading, determining a network acceleration effect according to the downloading rates of the plurality of networks;
and displaying the network acceleration effect.
2. The method of claim 1, wherein the network acceleration effect comprises a rate increase ratio of the current downloading process, and the rate increase ratio is a ratio of a downloading rate of an active network in the plurality of networks to a sum of downloading rates of other networks, and the other networks comprise networks other than the active network in the plurality of networks.
3. The method of claim 2, wherein the network acceleration effect comprises an average acceleration rate, and wherein the average acceleration rate is an average of rate increase rates of multiple download processes within a specified period.
4. The method according to any one of claims 1 to 3, wherein the obtaining the download rates of the plurality of networks used for the download process comprises:
monitoring the data stream 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 the displaying the network acceleration effect comprises:
displaying a notification message at the top of the display screen, the notification message including the network acceleration effect.
6. The method according to any one of claims 1 to 4, wherein the displaying the network acceleration effect comprises:
and responding to user operation, and displaying a network acceleration setting interface, wherein the network acceleration setting interface comprises the network acceleration effect.
7. The method of any of claims 1 to 6, further comprising:
identifying whether the message of the data stream of the application contains stream characteristics recorded in a stream characteristic library;
and if the message of the data stream of the application contains the stream characteristics, determining that the application starts to download.
8. The method of claim 7, wherein the flow characteristics comprise any one or more of a protocol, a port, a protocol header, and a network address.
9. The method of any one of claims 1 to 8, further comprising:
acquiring a message that the application starts to download;
and determining that the application starts to download according to the message.
10. The method of 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 memory and one or more processors:
the memory is used for storing a computer program;
the one or more processors are adapted to execute the computer program, in particular to perform the method of displaying a network acceleration effect as claimed in any of the claims 1 to 10.
12. A computer storage medium for storing a computer program which, when executed, is particularly adapted to perform the method of displaying a network acceleration effect according to any one of claims 1 to 10.
CN202210022502.9A 2022-01-10 2022-01-10 Method, device and storage medium for displaying network acceleration effect Active CN115567505B (en)

Priority Applications (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

Applications Claiming Priority (1)

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

Related Child Applications (1)

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

Publications (2)

Publication Number Publication Date
CN115567505A true CN115567505A (en) 2023-01-03
CN115567505B CN115567505B (en) 2023-06-30

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 Before (1)

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

Country Status (1)

Country Link
CN (2) CN116886687A (en)

Citations (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2001044988A1 (en) * 1999-12-16 2001-06-21 Supermedia Networks, Inc. Method of background downloading of information from a computer network
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
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
CN101778114A (en) * 2010-01-26 2010-07-14 浙江广播电视集团 Method for multi-channel parallel transmission of streaming media services on basis of load balance
CN102811258A (en) * 2012-07-27 2012-12-05 北京星网锐捷网络技术有限公司 Data parallel-downloading method, apparatus and network device
CN103221941A (en) * 2010-09-09 2013-07-24 海德沃特合作I有限公司 Wireless network service interfaces
CN105025068A (en) * 2014-04-30 2015-11-04 腾讯科技(深圳)有限公司 Network data downloading method and apparatus
CN106413049A (en) * 2016-10-13 2017-02-15 四川速宝网络科技有限公司 Mobile phone wifi network accelerator and method thereof
WO2017166572A1 (en) * 2016-04-01 2017-10-05 努比亚技术有限公司 Terminal and network speed acceleration method therefor
CN108900385A (en) * 2018-07-24 2018-11-27 Oppo广东移动通信有限公司 Method for connecting network and Related product
CN109391978A (en) * 2018-12-13 2019-02-26 中国联合网络通信集团有限公司 Terminal switching method and device
CN109803318A (en) * 2019-02-12 2019-05-24 Oppo广东移动通信有限公司 Data packet shunt method, device, mobile terminal and storage medium
CN113490291A (en) * 2021-06-16 2021-10-08 荣耀终端有限公司 Data downloading method and device and terminal equipment
CN113596919A (en) * 2021-06-16 2021-11-02 荣耀终端有限公司 Data downloading method and device and terminal equipment

Patent Citations (17)

* 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
CN101778114A (en) * 2010-01-26 2010-07-14 浙江广播电视集团 Method for multi-channel parallel transmission of streaming media services on basis of load balance
CN103221941A (en) * 2010-09-09 2013-07-24 海德沃特合作I有限公司 Wireless network service interfaces
CN102811258A (en) * 2012-07-27 2012-12-05 北京星网锐捷网络技术有限公司 Data parallel-downloading method, apparatus and network device
CN105025068A (en) * 2014-04-30 2015-11-04 腾讯科技(深圳)有限公司 Network data downloading method and apparatus
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
CN108900385A (en) * 2018-07-24 2018-11-27 Oppo广东移动通信有限公司 Method for connecting network and Related product
CN109391978A (en) * 2018-12-13 2019-02-26 中国联合网络通信集团有限公司 Terminal switching method and device
CN109803318A (en) * 2019-02-12 2019-05-24 Oppo广东移动通信有限公司 Data packet shunt method, device, mobile terminal and storage medium
CN113490291A (en) * 2021-06-16 2021-10-08 荣耀终端有限公司 Data downloading method and device and terminal equipment
CN113596919A (en) * 2021-06-16 2021-11-02 荣耀终端有限公司 Data downloading method and device and terminal equipment
WO2022262492A1 (en) * 2021-06-16 2022-12-22 荣耀终端有限公司 Data downloading method and apparatus, and terminal device

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
娜拉;: "中国移动高铁专网用户下载速率提升对策研究" *

Also Published As

Publication number Publication date
CN116886687A (en) 2023-10-13
CN115567505B (en) 2023-06-30

Similar Documents

Publication Publication Date Title
US10972372B2 (en) Scheduling processing tasks based on predicted context
CN109152095B (en) Wireless network connection method for terminal
US20230359645A1 (en) Multi-device context store
CN107426432B (en) Resource allocation method and Related product
CN107528976B (en) Resource allocation method and related product
US20240022518A1 (en) Channel Switching Method, Electronic Device and Storage Medium
CN109067571B (en) Electronic device, network configuration method thereof and storage medium
CN112997528B (en) Network switching method and related equipment
WO2023087853A1 (en) Network acceleration method, electronic device, chip system, and storage medium
CN115567505B (en) Method, device and storage medium for displaying network acceleration effect
WO2023087852A1 (en) Network acceleration method, electronic device, chip system and storage medium
CN116126744B (en) Memory recycling method and device and terminal equipment
CN116709442A (en) Wireless network switching method and electronic equipment
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
CN116709369B (en) Network acceleration method and electronic equipment
RU2802678C1 (en) Channel switching method, electronic device and storage medium
CN116744329A (en) Network acceleration method and electronic equipment
CN111881151B (en) Traffic violation data management method and device and server
CN117389711B (en) Scheduling method and device for terminal resources, terminal and computer readable storage medium
CN117915356A (en) Network acceleration method and device
CN116471619A (en) Network jamming prediction method, device and storage medium
CN118075847A (en) Method for reducing power consumption and electronic equipment
CN116709368A (en) Network acceleration method and device

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
GR01 Patent grant
GR01 Patent grant