Flow control method, device, electronic device and computer readable storage medium
The flow control method addresses the challenge of managing application-specific traffic without deep system customization, achieving efficient and easy-to-implement traffic management.
Patent Information
- Application Number
- CN202010738351.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2020-07-28
- Publication Date
- 2024-12-10
- Estimated Expiration
- 2040-07-28
AI Technical Summary
Existing network technologies fail to distinguish and control the traffic of different applications, requiring deep customization of the operating system, which is difficult and costly.
A flow control method that acquires and analyzes traffic data of different applications without deep customization of the operating system, using deep packet inspection to identify and manage traffic usage, enabling network blocking and recovery based on application-specific traffic values.
Enables effective traffic management for different applications with minimal calculation, facilitating easy implementation and promotion.
Smart Images

Figure CN114006869B_ABST
Abstract
Description
Technical Field
[0001] The embodiments of the present disclosure relate to the technical field of flow control, and in particular to a flow control method, device, electronic device, and computer-readable storage medium. Background Art
[0002] With the development of network technology, more and more applications can obtain richer data through the network, but in some scenarios, users may need to impose certain restrictions on the use of network traffic by one or several applications. For example, the large screen in the car network can provide users with Internet access, music, navigation and other services. Some car companies are willing to provide one year of free music service to car buyers, that is, the music traffic fee in this year is borne by the car company, but the cost of other application traffic is borne by the user. However, the traffic bills provided by traffic service providers can only count the total number of traffic cards used by users, and cannot distinguish traffic according to dimensions, so it is impossible to control the traffic of different applications.
[0003] In order to solve this problem, technicians proposed a solution to modify the user's operating system so that the operating system of the device where the user's traffic card is located can count and control the use of different application traffic. However, this solution requires deep customization of the operating system, and the modification involves a large amount of calculation, which is very difficult and difficult to promote. Summary of the invention
[0004] Embodiments of the present disclosure provide a flow control method, device, electronic device, and computer-readable storage medium.
[0005] In a first aspect, a flow control method is provided in an embodiment of the present disclosure.
[0006] Specifically, the flow control method includes:
[0007] Acquire a traffic message of a target object, wherein the traffic message of the target object includes traffic data of an application currently running on the target object;
[0008] Performing deep message analysis on the traffic message of the target object to obtain a deep message analysis result on the traffic usage of the application currently running on the target object;
[0009] The flow control is performed on the application according to the deep message parsing result.
[0010] In combination with the first aspect, in a first implementation manner of the first aspect of the embodiment of the present disclosure, the method is used in a communication system in which an intermediate device is provided between the target object and the Internet;
[0011] The process of obtaining the traffic message of the target object is implemented as follows:
[0012] The traffic message of the target object is obtained from the intermediate device through mirroring multiplexing.
[0013] In combination with the first aspect and the first implementation of the first aspect, in a second implementation of the first aspect of the embodiment of the present disclosure, before obtaining the traffic message of the target object, the method further includes:
[0014] An application service identifier set is set for the target object, wherein the application service identifier set includes one or more application service identifiers that can be placed in the traffic message of the target object, and the application service identifier is used to identify different applications, so as to count the traffic usage of different applications, and can be configured with a network domain name or address corresponding to the application.
[0015] In combination with the first aspect, the first implementation method of the first aspect and the second implementation method of the first aspect, in the third implementation method of the first aspect of the present disclosure, the deep message parsing result includes at least the following data: target object identifier, application service identifier, source address, destination address, source port, destination port, traffic data request time, and traffic data end time corresponding to the application service identifier.
[0016] In combination with the first aspect, the first implementation manner of the first aspect, the second implementation manner of the first aspect, and the third implementation manner of the first aspect, in a fourth implementation manner of the first aspect of the present disclosure, the performing flow control on the application according to the deep message parsing result includes:
[0017] Obtain traffic usage data of different applications according to the deep message analysis result, wherein the traffic usage data at least includes the following data: target object identifier, application service identifier, application uplink and downlink traffic values corresponding to the application service identifier, and traffic occurrence time range;
[0018] The flow rate of the application is controlled according to the flow usage data.
[0019] In combination with the first aspect, the first implementation manner of the first aspect, the second implementation manner of the first aspect, the third implementation manner of the first aspect, and the fourth implementation manner of the first aspect, in a fifth implementation manner of the first aspect of the present disclosure, the performing flow control on the application according to the flow usage data is implemented as follows:
[0020] When it is detected that the uplink and downlink traffic values of an application within a preset time period exceed the available traffic value of the application, a network blocking process is performed on the application.
[0021] In combination with the first aspect, the first implementation manner of the first aspect, the second implementation manner of the first aspect, the third implementation manner of the first aspect, the fourth implementation manner of the first aspect, and the fifth implementation manner of the first aspect, in a sixth implementation manner of the first aspect of the present disclosure, the performing flow control on the application according to the flow usage data is further implemented as follows:
[0022] When it is detected that the available flow value of the blocked application exceeds the preset flow value, a network recovery process is performed for the blocked application.
[0023] In combination with the first aspect, the first implementation of the first aspect, the second implementation of the first aspect, the third implementation of the first aspect, the fourth implementation of the first aspect, the fifth implementation of the first aspect, and the sixth implementation of the first aspect, the seventh implementation of the first aspect of the present disclosure further includes:
[0024] Sending flow control prompt information to the target object.
[0025] In a second aspect, a flow control method is provided in an embodiment of the present disclosure.
[0026] Specifically, the flow control method includes:
[0027] Acquire a traffic message of a target object, wherein the traffic message of the target object at least includes traffic data of an in-vehicle music application in the target object;
[0028] Performing deep message analysis on the traffic message of the target object to obtain a deep message analysis result on the traffic usage of the in-vehicle music application;
[0029] When it is detected that the traffic usage value of the in-vehicle music application exceeds its available traffic value, a network blocking process is performed on the in-vehicle music application.
[0030] In a third aspect, a flow control device is provided in an embodiment of the present disclosure.
[0031] Specifically, the flow control device includes:
[0032] A first acquisition module is configured to acquire a flow message of a target object, wherein the flow message of the target object includes flow data of an application currently running on the target object;
[0033] A first parsing module is configured to perform deep message parsing on the traffic message of the target object to obtain a deep message parsing result about the traffic usage of the application currently running on the target object;
[0034] The first control module is configured to perform flow control on the application according to the deep message parsing result.
[0035] In combination with the third aspect, in a first implementation of the third aspect of the embodiment of the present disclosure, the device is used in a communication system in which an intermediate device is provided between the target object and the Internet;
[0036] The first acquisition module is configured as follows:
[0037] The traffic message of the target object is obtained from the intermediate device through mirroring multiplexing.
[0038] In combination with the third aspect and the first implementation of the third aspect, in the second implementation of the third aspect, the embodiment of the present disclosure further includes, before the first acquisition module:
[0039] The setting module is configured to set an application service identification set for the target object, wherein the application service identification set includes one or more application service identifications that can be placed in the traffic message of the target object, and the application service identification is used to identify different applications, so as to count the traffic usage of different applications, and can be configured with a network domain name or address corresponding to the application.
[0040] In combination with the third aspect, the first implementation method of the third aspect and the second implementation method of the third aspect, in the third implementation method of the third aspect of the present disclosure, the deep message parsing result includes at least the following data: target object identifier, application service identifier, source address, destination address, source port, destination port, traffic data request time, and traffic data end time corresponding to the application service identifier.
[0041] In combination with the third aspect, the first implementation manner of the third aspect, the second implementation manner of the third aspect, and the third implementation manner of the third aspect, in a fourth implementation manner of the third aspect of the present disclosure, the first control module is configured as follows:
[0042] Obtain traffic usage data of different applications according to the deep message analysis result, wherein the traffic usage data at least includes the following data: target object identifier, application service identifier, application uplink and downlink traffic values corresponding to the application service identifier, and traffic occurrence time range;
[0043] The flow rate of the application is controlled according to the flow usage data.
[0044] In combination with the third aspect, the first implementation manner of the third aspect, the second implementation manner of the third aspect, the third implementation manner of the third aspect, and the fourth implementation manner of the third aspect, in a fifth implementation manner of the third aspect of the present disclosure, the performing flow control on the application according to the flow usage data is configured as follows:
[0045] When it is detected that the uplink and downlink traffic values of an application within a preset time period exceed the available traffic value of the application, a network blocking process is performed on the application.
[0046] In combination with the third aspect, the first implementation manner of the third aspect, the second implementation manner of the third aspect, the third implementation manner of the third aspect, the fourth implementation manner of the third aspect, and the fifth implementation manner of the third aspect, in a sixth implementation manner of the third aspect of the present disclosure, the performing flow control on the application according to the flow usage data is further configured as follows:
[0047] When it is detected that the available flow value of the blocked application exceeds the preset flow value, a network recovery process is performed for the blocked application.
[0048] In combination with the third aspect, the first implementation manner of the third aspect, the second implementation manner of the third aspect, the third implementation manner of the third aspect, the fourth implementation manner of the third aspect, the fifth implementation manner of the third aspect, and the sixth implementation manner of the third aspect, the present disclosure, in a seventh implementation manner of the third aspect, further includes:
[0049] The sending module is configured to send flow control prompt information to the target object.
[0050] In a fourth aspect, a flow control device is provided in an embodiment of the present disclosure.
[0051] Specifically, the flow control device includes:
[0052] A second acquisition module is configured to acquire a flow message of a target object, wherein the flow message of the target object at least includes flow data of an in-vehicle music application in the target object;
[0053] A second parsing module is configured to perform deep message parsing on the traffic message of the target object to obtain a deep message parsing result on the traffic usage of the in-vehicle music application;
[0054] The second control module is configured to perform network blocking processing on the in-vehicle music application when it is detected that the traffic usage value of the in-vehicle music application exceeds its available traffic value.
[0055] In a fifth aspect, a flow control device is provided in an embodiment of the present disclosure.
[0056] Specifically, the flow control device includes:
[0057] An intermediate device, configured between the target object and the Internet, for receiving a flow message sent by the target object, wherein the flow message includes flow data of an application currently running on the target object;
[0058] A deep message analysis device, used to obtain the traffic message of the target object from the intermediate device through mirror multiplexing, perform deep message analysis on the traffic message of the target object, and obtain a deep message analysis result about the traffic usage of the application currently running on the target object;
[0059] A flow control device is used to perform flow control on the application according to the deep message parsing result.
[0060] In combination with the fifth aspect, in a first implementation manner of the fifth aspect of an embodiment of the present disclosure, the intermediate device includes a network service gateway and a NAT device that are connected to each other, wherein the NAT device is used to communicate with the Internet.
[0061] In combination with the fifth aspect and the first implementation of the fifth aspect, the embodiment of the present disclosure, in the second implementation of the fifth aspect, further includes:
[0062] The PDN gateway is used to communicate with the target object and forward the received traffic message of the target object to the network service gateway.
[0063] In combination with the fifth aspect, the first implementation method of the fifth aspect and the second implementation method of the fifth aspect, in the third implementation method of the fifth aspect of the present disclosure, the deep message parsing result includes at least the following data: a target object identifier, an application service identifier, and the source address, destination address, source port, destination port, traffic data request time, and traffic data end time corresponding to the application service identifier, wherein the application service identifier is used to identify different applications so as to count the traffic usage of different applications, and can be configured with a network domain name or address corresponding to the application.
[0064] In combination with the fifth aspect, the first implementation of the fifth aspect, the second implementation of the fifth aspect, and the third implementation of the fifth aspect, in a fourth implementation of the fifth aspect of the present disclosure, the flow control device is used to:
[0065] Obtain traffic usage data of different applications according to the deep message analysis result, wherein the traffic usage data at least includes the following data: target object identifier, application service identifier, application uplink and downlink traffic values corresponding to the application service identifier, and traffic occurrence time range;
[0066] When it is detected that the uplink and downlink traffic values of the application within a preset time period exceed the available traffic value of the application, a blocking command is sent to the intermediate device to perform network blocking processing on the application;
[0067] When it is detected that the available flow value of the blocked application exceeds the preset flow value, a recovery command is sent to the intermediate device to perform network recovery processing for the blocked application.
[0068] In a sixth aspect, an embodiment of the present disclosure provides an electronic device, including a memory and a processor, wherein the memory is used to store one or more computer instructions that support a flow control device to execute the above-mentioned flow control method, and the processor is configured to execute the computer instructions stored in the memory. The flow control device may also include a communication interface for the flow control device to communicate with other devices or a communication network.
[0069] In a seventh aspect, an embodiment of the present disclosure provides a computer-readable storage medium for storing computer instructions used by a flow control device, which includes computer instructions involved in the flow control device for executing the above-mentioned flow control method.
[0070] The technical solution provided by the embodiments of the present disclosure may have the following beneficial effects:
[0071] The above technical solution achieves flow control for different applications by acquiring and analyzing flow data of different applications of the target object. The technical solution can achieve flow control for different applications without deep customization of the operating system. The technical solution involves small amount of calculation, is easy to implement, and is conducive to promotion.
[0072] It should be understood that the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the embodiments of the present disclosure. BRIEF DESCRIPTION OF THE DRAWINGS
[0073] Other features, purposes and advantages of the embodiments of the present disclosure will become more apparent through the following detailed description of non-limiting embodiments in conjunction with the accompanying drawings. In the accompanying drawings:
[0074] Figure 1 A flow chart showing a flow control method according to an embodiment of the present disclosure;
[0075] Figure 2 An overall flow chart of a flow control method according to an embodiment of the present disclosure is shown;
[0076] Figure 3 An example diagram of application flow control according to an embodiment of the present disclosure is shown;
[0077] Figure 4An example diagram of blocked application data request control according to an embodiment of the present disclosure is shown;
[0078] Figure 5 A structural block diagram of a flow control device according to an embodiment of the present disclosure is shown;
[0079] Figure 6 It is a structural diagram of a computer system suitable for implementing a flow control method according to an embodiment of the present disclosure. DETAILED DESCRIPTION
[0080] Hereinafter, exemplary embodiments of the present disclosure will be described in detail with reference to the accompanying drawings so that those skilled in the art can easily implement them. In addition, for the sake of clarity, parts not related to the description of the exemplary embodiments are omitted in the accompanying drawings.
[0081] In the embodiments of the present disclosure, it should be understood that terms such as "including" or "having" are intended to indicate the existence of features, numbers, steps, behaviors, components, parts, or a combination thereof disclosed in this specification, and are not intended to exclude the possibility of one or more other features, numbers, steps, behaviors, components, parts, or a combination thereof existing or being added.
[0082] It should also be noted that, in the absence of conflict, the embodiments and features in the embodiments of the present disclosure may be combined with each other. The embodiments of the present disclosure will be described in detail below with reference to the accompanying drawings and in combination with the embodiments.
[0083] As mentioned above, with the development of network technology, more and more applications can obtain richer data through the network, but in some scenarios, users may need to impose certain restrictions on the use of network traffic by one or several applications. For example, the large screen in the car network can provide users with Internet access, music, navigation and other services. Some car companies are willing to provide one year of free music service to car buyers, that is, the cost of music traffic within this year is borne by the car company, but the cost of other application traffic is borne by the user. However, the traffic bills currently provided by traffic service providers can only count the total number of user traffic cards used, and cannot distinguish traffic according to dimensions, so it is impossible to control the traffic of different applications. In order to solve this problem, the technicians proposed a solution to modify the user's operating system so that the operating system of the device where the user's traffic card is located can count and control the use of traffic of different applications, but this solution requires deep customization of the operating system, and the modification calculation involved is very large, very difficult, and difficult to promote.
[0084] In view of the above problems, a flow control method is proposed in one embodiment of the present disclosure. The technical solution provided in this embodiment realizes flow control for different applications by acquiring and analyzing flow data of different applications of target objects, without deep customization of the operating system, so the calculation amount is small, easy to implement, and conducive to promotion.
[0085] Figure 1 A flow chart of a flow control method according to an embodiment of the present disclosure is shown as follows: Figure 1 As shown, the flow control method includes the following steps S101-S103:
[0086] In step S101, a flow message of a target object is obtained, wherein the flow message of the target object includes flow data of an application currently running on the target object;
[0087] In step S102, deep message parsing is performed on the traffic message of the target object to obtain a deep message parsing result about the traffic usage of the application currently running on the target object;
[0088] In step S103, flow control is performed on the application according to the deep message parsing result.
[0089] In one embodiment of the present disclosure, the traffic control method may be applicable to computers, computing devices, electronic devices, servers, service clusters, etc. that process traffic data.
[0090] In one embodiment of the present disclosure, the target object refers to a computing device or electronic device for which traffic usage of an application running on the computing device or electronic device needs to be controlled.
[0091] In one embodiment of the present disclosure, the traffic message of the target object refers to a data file that records the traffic information used by the target object, wherein the traffic message of the target object includes the traffic data of the application currently running on the target object. The traffic message of the target object can be generated and sent by a traffic card placed in the target object or a SIM (Subscriber Identification Module), UIM (User Identification Model) card, etc., which can count and record the traffic used by the target object or the application running on it.
[0092] In one embodiment of the present disclosure, the deep packet parsing refers to a deep detection technology based on data packets, that is, a technology that performs deep detection on different network application layer loads and determines the legitimacy of the packet by detecting the payload of the packet, also known as DPI (Deep Packet Inspection). This technology can detect the application layer load in the data packet. After the deep packet parsing, not only the source address, destination address, source port, destination port and protocol type of the data packet can be obtained, but also the analysis of the application layer can be realized, such as identifying the composition, performance and flow direction of the network traffic in the data packet. Therefore, based on the above-mentioned deep packet parsing results, flow control for different applications can be achieved.
[0093] In the above implementation, the traffic message of the target object to be controlled, including the traffic data of the application currently running on the target object, is first obtained, and then deep message analysis is performed on the obtained traffic message of the target object to obtain the deep message analysis result about the traffic usage of different applications currently running on the target object, and finally, independent traffic control can be performed on the above-mentioned different applications according to the deep message analysis result.
[0094] In one embodiment of the present disclosure, the method is used for a communication system in which an intermediate device is provided between the target object and the Internet, wherein the intermediate device is used to establish communication between the target object and the Internet, and can also provide communication data between the target object and the Internet. For example, the intermediate device can be a network service device including a network service gateway and a NAT (Network Address Translation) device connected to each other, wherein the network service gateway can be, for example, a UIS (Ultimate Internet Service) gateway, in which case the network service gateway can communicate with the target object through a PDN (Public Data Network) gateway, and the NAT device communicates with the Internet. Of course, in this example, the communication system can also include other devices or use other devices instead of the above-mentioned NAT device and PDN gateway.
[0095] In this implementation, the step S101, i.e., the step of obtaining the traffic message of the target object, may be implemented as follows:
[0096] The traffic message of the target object is obtained from the intermediate device through mirroring multiplexing.
[0097] In order not to affect the network communication of the target object, when the target object conducts network communication, the traffic message of the target object is obtained from intermediate devices such as the network service gateway through mirror multiplexing. As mentioned above, the traffic message of the target object includes the traffic data of the application currently running on the target object.
[0098] In an embodiment of the present disclosure, before the step S101, i.e. the step of obtaining the traffic message of the target object, the following steps are also included:
[0099] An application service identifier set is set for the target object, wherein the application service identifier set includes one or more application service identifiers that can be placed in the traffic message of the target object, and the application service identifier is used to identify different applications, so as to count the traffic usage of different applications, and can be configured with a network domain name or address corresponding to the application.
[0100] In order to distinguish different applications and accurately obtain the traffic data corresponding to different applications for subsequent application data analysis and control, in this embodiment, an application service identification set is also set for the target object, wherein the application service identification set includes one or more application service identifiers for identifying different applications and for counting the traffic usage of different applications, which can be placed in the traffic message of the target object, that is, the traffic message of the target object may include traffic data of different applications currently running on the target object identified by different application service identifiers.
[0101] When it is necessary to perform flow control on applications based on application categories, or the number of applications in different categories is relatively small, the application service identifier can be set to correspond to applications in different categories, that is, an application service identifier is set for each category of applications; when it is necessary to perform flow control on each different application separately, or the number of applications in different categories is relatively large, the application service identifier can be set to correspond to different applications, that is, an application service identifier is set for each application.
[0102] In addition, the application service identifier can also be configured with a network domain name or address corresponding to the application according to user needs, so that the network domain name or address can be reached with the help of the application service identifier to obtain the corresponding network data. Among them, when only one application service identifier is set for applications of the same category, the application service identifier can be configured with one or more network domain names or addresses corresponding to different applications under this category.
[0103] As mentioned above, deep message parsing can detect the application layer payload in the data packet. Therefore, when the traffic message of the target object includes an application service identifier for identifying different applications, the deep message parsing result includes at least the following data: the target object identifier, the application service identifier, the source address, destination address, source port and destination port corresponding to the application service identifier, and the traffic data request time and the traffic data end time. Of course, if necessary, the deep message parsing result may also include data such as the protocol type used by the traffic message of the target object.
[0104] In one embodiment of the present disclosure, the step S103, i.e., the step of performing flow control on the application according to the deep message parsing result, may be implemented as follows: obtaining flow usage data of different applications according to the deep message parsing result, wherein the flow usage data at least includes the following data: target object identifier, application service identifier, application uplink and downlink flow values corresponding to the application service identifier, and flow occurrence time range;
[0105] The flow rate of the application is controlled according to the flow usage data.
[0106] As mentioned above, the deep message parsing result includes at least the following data: target object identifier, application service identifier, source address, destination address, source port and destination port corresponding to the application service identifier, as well as flow data request time and flow data end time. Therefore, in this embodiment, based on the above-mentioned deep message parsing result of the flow message of the target object, the flow usage data of different applications currently running on the target object can be obtained according to the application service identifier, wherein the flow usage data includes at least the following data: target object identifier, application service identifier, application upstream and downstream flow values corresponding to the application service identifier, and flow occurrence time range, so that targeted flow control can be performed on the application according to the flow usage data.
[0107] In one embodiment of the present disclosure, the step of performing traffic control on the application according to the traffic usage data may be implemented as follows:
[0108] When it is detected that the uplink and downlink traffic values of an application within a preset time period exceed the available traffic value of the application, a network blocking process is performed on the application.
[0109] As is known to all, users usually purchase traffic values in advance for their traffic cards or SIM, UIM cards and other devices. In this embodiment, since the traffic usage of different applications can be distinguished and counted, different available traffic values can be set for different applications, so that the differentiated control of the traffic usage of different applications can be achieved, that is, if the uplink and downlink traffic values of an application exceed the available traffic value of the application within a preset time period, the application can be subjected to network blocking processing. For example, a blocking command can be sent to a network service device to restrict the source address corresponding to a certain application service identifier, wherein the blocking command can be expressed as: [(Source IP, Service Code, Disable)], wherein Service Code represents the application service identifier of a certain application, Source IP represents the source address of the application, and Disable represents that the application cannot use traffic data. The preset time period can be set according to the needs of the actual application, for example, the preset time period can be one month. As mentioned in the example above, the large screen in the car network can provide users with services such as Internet access, music and navigation, but the car company is only willing to provide one year of free music service to car buyers. Based on the above traffic control for different applications, the car company can only pay for the user's music traffic usage without paying for the traffic usage of other applications.
[0110] In one embodiment of the present disclosure, the step of controlling the flow of the application according to the flow usage data may also be implemented as follows:
[0111] When it is detected that the available flow value of the blocked application exceeds the preset flow value, a network recovery process is performed for the blocked application.
[0112] In this embodiment, if the available traffic value of an application that has been subjected to network blocking processing is recharged, or the available traffic value of an application that has been subjected to network blocking processing exceeds a preset traffic value, network recovery processing can be performed on the blocked application to restore its right to obtain network data. The preset traffic value can be set according to the needs of the actual application and the usage characteristics of the application traffic data. Similar to the above, for example, a recovery command can be sent to the network service device to remove the restriction on the source address corresponding to a certain application service identifier, wherein the recovery command can be expressed as: [(Source IP, Service Code, Enable)], wherein Service Code represents the application service identifier of a certain application, Source IP represents the source address of the application, and Enable represents that the application can use the traffic data.
[0113] In one embodiment of the present disclosure, the method further comprises the following steps:
[0114] Sending flow control prompt information to the target object.
[0115] In order to make the target object or the corresponding user understand the current application traffic control situation, traffic control prompt information can be sent to the target object after traffic control is executed on the corresponding application, or traffic control prompt information can be sent to the target object after receiving a request from the blocked application to obtain network data, for example, the application traffic usage has exceeded the limit, please recharge before using it, etc.
[0116] Figure 2 The overall flow chart of the flow control method according to an embodiment of the present disclosure is shown as follows: Figure 2 As shown, in this example, the intermediate device is a network service device, and the network service device includes a network service gateway and a NAT device connected to each other. The network service gateway communicates with a target object running multiple applications Apps through a PDN gateway, and the NAT device communicates with the external Internet. Under normal circumstances, the traffic message sent by the target object can reach the external Internet through the PDN gateway and the network service device. In this technical solution, the traffic message of the target object can be obtained from the network service gateway by mirror multiplexing, and then deep message parsing is performed on it to obtain a deep message parsing result. The virtual core network (CellNet) obtains traffic usage data of different applications based on the deep message parsing result and reports it to the network data metering and billing system. If the network data metering and billing system detects that the uplink and downlink traffic values of a certain application within a preset time period exceed the available traffic value of the application, it can send a blocking command to the network service gateway of the network service device to enable it to perform network blocking processing for the application.
[0117] For example, Figure 3 As shown in the figure, for the three types of applications, music, video and navigation, the available traffic values of the three types of applications are shown by the dotted lines in the figure. If it is detected that the traffic usage value of the music application has exceeded its available traffic value, the network blocking process can be performed on the music application to restrict its acquisition of network data until its available traffic value is recharged. At this time, if the music application initiates a request to obtain network data, the network service gateway can directly reject the request to obtain network data, such as Figure 4 That is, for the above application scenario, in one embodiment of the present disclosure, a flow control method is provided, and the flow control method includes the following steps:
[0118] Acquire a traffic message of a target object, wherein the traffic message of the target object at least includes traffic data of an in-vehicle music application in the target object;
[0119] Performing deep message analysis on the traffic message of the target object to obtain a deep message analysis result on the traffic usage of the in-vehicle music application;
[0120] When it is detected that the traffic usage value of the in-vehicle music application exceeds its available traffic value, a network blocking process is performed on the in-vehicle music application.
[0121] The following are embodiments of the apparatus of the present disclosure, which can be used to execute embodiments of the method of the present disclosure.
[0122] Figure 5 FIG. 1 shows a structural block diagram of a flow control device according to an embodiment of the present disclosure. The device can be implemented as part or all of an electronic device through software, hardware, or a combination of both. Figure 5 As shown, the flow control device comprises:
[0123] The first acquisition module 501 is configured to acquire a flow message of a target object, wherein the flow message of the target object includes flow data of an application currently running on the target object;
[0124] The first parsing module 502 is configured to perform deep message parsing on the traffic message of the target object to obtain a deep message parsing result about the traffic usage of the application currently running on the target object;
[0125] The first control module 503 is configured to perform flow control on the application according to the deep message parsing result.
[0126] In one embodiment of the present disclosure, the flow control device may be implemented as a computer, a computing device, an electronic device, a server, a service cluster, etc. that processes flow data.
[0127] In one embodiment of the present disclosure, the target object refers to a computing device or electronic device for which traffic usage of an application running on the computing device or electronic device needs to be controlled.
[0128] In one embodiment of the present disclosure, the traffic message of the target object refers to a data file that records the traffic information used by the target object, wherein the traffic message of the target object includes the traffic data of the application currently running on the target object. The traffic message of the target object can be generated and sent by a traffic card placed in the target object or a SIM card, UIM card, or other device that can count and record the traffic used by the target object or the application running on it.
[0129] In one embodiment of the present disclosure, the deep packet parsing refers to a deep detection technology based on data packets, that is, a technology that performs deep detection on different network application layer loads and determines the legitimacy of the payload of the packet by detecting the payload of the packet, also known as DPI. This technology can detect the application layer payload in the data packet. After the deep packet parsing, not only the source address, destination address, source port, destination port and protocol type of the data packet can be obtained, but also the analysis of the application layer can be realized, such as identifying the composition, performance and flow direction of the network traffic in the data packet. Therefore, based on the above-mentioned deep packet parsing results, flow control for different applications can be achieved.
[0130] In the above implementation, the device first obtains the traffic message of the target object to be controlled, including the traffic data of the application currently running on the target object, and then performs deep message analysis on the obtained traffic message of the target object to obtain the deep message analysis result about the traffic usage of different applications currently running on the target object. Finally, the traffic control of the above-mentioned different applications can be performed independently according to the deep message analysis result.
[0131] In one embodiment of the present disclosure, the device is used in a communication system in which an intermediate device is provided between the target object and the Internet, wherein the intermediate device is used to establish communication between the target object and the Internet, and can also provide communication data between the target object and the Internet. For example, the intermediate device can be a network service device including a network service gateway and a NAT (Network Address Translation) device connected to each other, wherein the network service gateway can be, for example, a UIS (Ultimate Internet Service) gateway, in which case the network service gateway can communicate with the target object through a PDN (Public Data Network) gateway, and the NAT device communicates with the Internet. Of course, in this example, the communication system can also include other devices or use other devices instead of the above-mentioned NAT device and PDN gateway.
[0132] In this implementation, the first acquisition module 501 may be configured as follows:
[0133] The traffic message of the target object is obtained from the intermediate device through mirroring multiplexing.
[0134] In order not to affect the network communication of the target object, when the target object communicates over the network, the traffic message of the target object is obtained from intermediate devices such as the network service gateway through mirror multiplexing. As mentioned above, the traffic message of the target object includes the traffic data of the application currently running on the target object.
[0135] In one embodiment of the present disclosure, before the first acquisition module, it also includes:
[0136] The setting module is configured to set an application service identification set for the target object, wherein the application service identification set includes one or more application service identifications that can be placed in the traffic message of the target object, and the application service identification is used to identify different applications, so as to count the traffic usage of different applications, and can be configured with a network domain name or address corresponding to the application.
[0137] In order to distinguish different applications and accurately obtain the traffic data corresponding to different applications for subsequent application data analysis and control, in this embodiment, an application service identification set is also set for the target object, wherein the application service identification set includes one or more application service identifiers for identifying different applications and for counting the traffic usage of different applications, which can be placed in the traffic message of the target object, that is, the traffic message of the target object may include traffic data of different applications currently running on the target object identified by different application service identifiers.
[0138] When it is necessary to perform flow control on applications based on application categories, or the number of applications in different categories is relatively small, the application service identifier can be set to correspond to applications in different categories, that is, an application service identifier is set for each category of applications; when it is necessary to perform flow control on each different application separately, or the number of applications in different categories is relatively large, the application service identifier can be set to correspond to different applications, that is, an application service identifier is set for each application.
[0139] In addition, the application service identifier can also be configured with a network domain name or address corresponding to the application according to user needs, so that the network domain name or address can be reached with the help of the application service identifier to obtain the corresponding network data. Among them, when only one application service identifier is set for applications of the same category, the application service identifier can be configured with one or more network domain names or addresses corresponding to different applications under this category.
[0140] As mentioned above, deep message parsing can detect the application layer payload in the data packet. Therefore, when the traffic message of the target object includes an application service identifier for identifying different applications, the deep message parsing result includes at least the following data: the target object identifier, the application service identifier, the source address, destination address, source port and destination port corresponding to the application service identifier, and the traffic data request time and the traffic data end time. Of course, if necessary, the deep message parsing result may also include data such as the protocol type used by the traffic message of the target object.
[0141] In one embodiment of the present disclosure, the first control module 503 may be configured as follows:
[0142] Obtain traffic usage data of different applications according to the deep message analysis result, wherein the traffic usage data at least includes the following data: target object identifier, application service identifier, application uplink and downlink traffic values corresponding to the application service identifier, and traffic occurrence time range;
[0143] The flow rate of the application is controlled according to the flow usage data.
[0144] As mentioned above, the deep message parsing result includes at least the following data: target object identifier, application service identifier, source address, destination address, source port and destination port corresponding to the application service identifier, as well as flow data request time and flow data end time. Therefore, in this embodiment, based on the above-mentioned deep message parsing result of the flow message of the target object, the flow usage data of different applications currently running on the target object can be obtained according to the application service identifier, wherein the flow usage data includes at least the following data: target object identifier, application service identifier, application upstream and downstream flow values corresponding to the application service identifier, and flow occurrence time range, so that targeted flow control can be performed on the application according to the flow usage data.
[0145] In one embodiment of the present disclosure, the part of performing flow control on the application according to the flow usage data may be configured as follows:
[0146] When it is detected that the uplink and downlink traffic values of an application within a preset time period exceed the available traffic value of the application, a network blocking process is performed on the application.
[0147] As is known to all, users usually purchase traffic values in advance for their traffic cards or SIM, UIM cards and other devices. In this embodiment, since the traffic usage of different applications can be distinguished and counted, different available traffic values can be set for different applications, so that the differentiated control of the traffic usage of different applications can be achieved, that is, if the uplink and downlink traffic values of an application exceed the available traffic value of the application within a preset time period, the application can be subjected to network blocking processing. For example, a blocking command can be sent to a network service device to restrict the source address corresponding to a certain application service identifier, wherein the blocking command can be expressed as: [(Source IP, Service Code, Disable)], wherein Service Code represents the application service identifier of a certain application, Source IP represents the source address of the application, and Disable represents that the application cannot use traffic data. The preset time period can be set according to the needs of the actual application, for example, the preset time period can be one month. As mentioned in the example above, the large screen in the car network can provide users with services such as Internet access, music and navigation, but the car company is only willing to provide one year of free music service to car buyers. Based on the above traffic control for different applications, the car company can only pay for the user's music traffic usage without paying for the traffic usage of other applications.
[0148] In an embodiment of the present disclosure, the part of performing flow control on the application according to the flow usage data may also be configured as follows:
[0149] When it is detected that the available flow value of the blocked application exceeds the preset flow value, a network recovery process is performed for the blocked application.
[0150] In this embodiment, if the available traffic value of an application that has been subjected to network blocking processing is recharged, or the available traffic value of an application that has been subjected to network blocking processing exceeds a preset traffic value, network recovery processing can be performed on the blocked application to restore its right to obtain network data. The preset traffic value can be set according to the needs of the actual application and the usage characteristics of the application traffic data. Similar to the above, for example, a recovery command can be sent to the network service device to remove the restriction on the source address corresponding to a certain application service identifier, wherein the recovery command can be expressed as: [(Source IP, Service Code, Enable)], wherein Service Code represents the application service identifier of a certain application, Source IP represents the source address of the application, and Enable represents that the application can use the traffic data.
[0151] In one embodiment of the present disclosure, the device further comprises:
[0152] The sending module is configured to send flow control prompt information to the target object.
[0153] In order to make the target object or the corresponding user understand the current application traffic control situation, traffic control prompt information can be sent to the target object after traffic control is executed on the corresponding application, or traffic control prompt information can be sent to the target object after receiving a request from the blocked application to obtain network data, for example, the application traffic usage has exceeded the limit, please recharge before using it, etc.
[0154] For the above Figure 3 In the application scenario shown, in one embodiment of the present disclosure, a flow control device is provided, the flow control device comprising:
[0155] A second acquisition module is configured to acquire a flow message of a target object, wherein the flow message of the target object at least includes flow data of an in-vehicle music application in the target object;
[0156] A second parsing module is configured to perform deep message parsing on the traffic message of the target object to obtain a deep message parsing result on the traffic usage of the in-vehicle music application;
[0157] The second control module is configured to perform network blocking processing on the in-vehicle music application when it is detected that the traffic usage value of the in-vehicle music application exceeds its available traffic value.
[0158] In another embodiment of the present disclosure, a flow control device is also provided, which can be implemented as part or all of an electronic device through software, hardware, or a combination of both. The flow control device includes:
[0159] An intermediate device, configured between the target object and the Internet, for receiving a flow message sent by the target object, wherein the flow message includes flow data of an application currently running on the target object;
[0160] A deep message analysis device, used to obtain the traffic message of the target object from the intermediate device through mirror multiplexing, perform deep message analysis on the traffic message of the target object, and obtain a deep message analysis result about the traffic usage of the application currently running on the target object;
[0161] A flow control device is used to perform flow control on the application according to the deep message parsing result.
[0162] In one embodiment of the present disclosure, the flow control device may be implemented as a computer, a computing device, an electronic device, a server, a service cluster, etc. that processes flow data.
[0163] In one embodiment of the present disclosure, the intermediate device includes a network service gateway and a NAT device connected to each other, wherein the NAT device is used to communicate with the Internet.
[0164] In one embodiment of the present disclosure, it also includes:
[0165] The PDN gateway is used to communicate with the target object and forward the received traffic message of the target object to the network service gateway.
[0166] In one embodiment of the present disclosure, the deep message parsing result includes at least the following data: a target object identifier, an application service identifier, a source address, a destination address, a source port, a destination port, a traffic data request time, and a traffic data end time corresponding to the application service identifier, wherein the application service identifier is used to identify different applications so as to count the traffic usage of different applications, and can be configured with a network domain name or address corresponding to the application.
[0167] In one embodiment of the present disclosure, the flow control device is used to:
[0168] Obtain traffic usage data of different applications according to the deep message analysis result, wherein the traffic usage data at least includes the following data: target object identifier, application service identifier, application uplink and downlink traffic values corresponding to the application service identifier, and traffic occurrence time range;
[0169] When it is detected that the uplink and downlink traffic values of the application within a preset time period exceed the available traffic value of the application, a blocking command is sent to the intermediate device to perform network blocking processing on the application;
[0170] When it is detected that the available flow value of the blocked application exceeds the preset flow value, a recovery command is sent to the intermediate device to perform network recovery processing for the blocked application.
[0171] The technical terms and technical features involved in this embodiment are Figure 1-5 The technical terms and technical features mentioned in the embodiments shown in the figure are the same or similar. For the explanation and description of the technical terms and technical features involved in this embodiment, please refer to the above Figure 1-5 The explanations of the illustrated and related embodiments will not be repeated here.
[0172] The present disclosure also discloses an electronic device, which includes a memory and a processor; wherein:
[0173] The memory is used to store one or more computer instructions, wherein the one or more computer instructions are executed by the processor to implement any of the above method steps.
[0174] Figure 6 It is a structural diagram of a computer system suitable for implementing a flow control method according to an embodiment of the present disclosure.
[0175] like Figure 6 As shown, the computer system 600 includes a processing unit 601, which can perform various processes in the above-mentioned embodiments according to a program stored in a read-only memory (ROM) 602 or a program loaded from a storage part 608 into a random access memory (RAM) 603. In the RAM 603, various programs and data required for the operation of the system 600 are also stored. The processing unit 601, the ROM 602, and the RAM 603 are connected to each other via a bus 604. An input / output (I / O) interface 605 is also connected to the bus 604.
[0176] The following components are connected to the I / O interface 605: an input part 606 including a keyboard, a mouse, etc.; an output part 607 including a cathode ray tube (CRT), a liquid crystal display (LCD), etc., and a speaker; a storage part 608 including a hard disk, etc.; and a communication part 609 including a network interface card such as a LAN card, a modem, etc. The communication part 609 performs communication processing via a network such as the Internet. The drive 610 is also connected to the I / O interface 605 as needed. Removable media 611, such as a magnetic disk, an optical disk, a magneto-optical disk, a semiconductor memory, etc., are installed on the drive 610 as needed, so that the computer program read therefrom is installed into the storage part 608 as needed. Among them, the processing unit 601 can be implemented as a processing unit such as a CPU, a GPU, a TPU, an FPGA, an NPU, etc.
[0177] In particular, according to an embodiment of the present disclosure, the method described above can be implemented as a computer software program. For example, an embodiment of the present disclosure includes a computer program product, which includes a computer program tangibly contained on a readable medium thereof, and the computer program includes a program code for executing the flow control method. In such an embodiment, the computer program can be downloaded and installed from a network through the communication part 609, and / or installed from a removable medium 611.
[0178] The flow chart and block diagram in the accompanying drawings illustrate the possible architecture, functions and operations of the system, method and computer program product according to various embodiments of the present disclosure. In this regard, each square box in the road map or block diagram can represent a part of a module, program segment or code, and the part of the module, program segment or code contains one or more executable instructions for realizing the specified logical function. It should also be noted that in some alternative implementations, the functions marked in the square box can also occur in a different order from the order marked in the accompanying drawings. For example, two square boxes represented in succession can actually be executed substantially in parallel, and they can sometimes be executed in the opposite order, depending on the functions involved. It should also be noted that each square box in the block diagram and / or flow chart, and the combination of the square boxes in the block diagram and / or flow chart can be implemented with a dedicated hardware-based system that performs the specified function or operation, or can be implemented with a combination of dedicated hardware and computer instructions.
[0179] The units or modules involved in the embodiments described in the present disclosure may be implemented by software or hardware. The units or modules described may also be set in a processor, and the names of these units or modules do not constitute limitations on the units or modules themselves in some cases.
[0180] As another aspect, the embodiments of the present disclosure further provide a computer-readable storage medium, which may be a computer-readable storage medium included in the device described in the above-mentioned embodiment; or a computer-readable storage medium that exists independently and is not assembled into the device. The computer-readable storage medium stores one or more programs, and the programs are used by one or more processors to execute the methods described in the embodiments of the present disclosure.
[0181] The above description is only a preferred embodiment of the present disclosure and an explanation of the technical principles used. Those skilled in the art should understand that the scope of the invention involved in the embodiments of the present disclosure is not limited to the technical solutions formed by a specific combination of the above technical features, but should also cover other technical solutions formed by any combination of the above technical features or their equivalent features without departing from the inventive concept. For example, the above features are replaced with (but not limited to) technical features with similar functions disclosed in the embodiments of the present disclosure.
Claims
1. A flow control method, include: Acquire a traffic message of a target object, wherein the traffic message of the target object includes traffic data of an application currently running on the target object; Performing deep message analysis on the traffic message of the target object to obtain a deep message analysis result on the traffic usage of the application currently running on the target object; Performing flow control on the application according to the deep message analysis result; The deep message parsing of the traffic message of the target object includes: detecting the application layer load in the traffic message of the target object; The performing flow control on the application according to the deep message parsing result includes: Obtain traffic usage data of different applications according to the deep message analysis result, wherein the traffic usage data at least includes the following data: target object identifier, application service identifier, application uplink and downlink traffic values corresponding to the application service identifier, and traffic occurrence time range; performing flow control on the application according to the flow usage data; The performing flow control on the application according to the flow usage data is implemented as follows: When it is detected that the uplink and downlink traffic values of an application within a preset time period exceed the available traffic value of the application, a network blocking process is performed on the application.
2. The method according to claim 1, wherein the method is used in a communication system in which an intermediate device is provided between the target object and the Internet; The process of obtaining the traffic message of the target object is implemented as follows: The traffic message of the target object is obtained from the intermediate device through mirroring multiplexing.
3. According to the method of claim 1 or 2, before obtaining the flow message of the target object, include: An application service identifier set is set for the target object, wherein the application service identifier set includes one or more application service identifiers that can be placed in the traffic message of the target object, and the application service identifier is used to identify different applications, so as to count the traffic usage of different applications, and can be configured with a network domain name or address corresponding to the application.
4. According to any of the methods described in claims 1-3, the deep message parsing result includes at least the following data: target object identifier, application service identifier, source address, destination address, source port, destination port, traffic data request time, and traffic data end time corresponding to the application service identifier.
5. The method according to claim 1, wherein the performing flow control on the application according to the flow usage data is further implemented as follows: When it is detected that the available flow value of the blocked application exceeds the preset flow value, a network recovery process is performed for the blocked application.
6. The method according to any one of claims 1 to 5, further comprising: include: Sending flow control prompt information to the target object.
7. A flow control method, include: Acquire a traffic message of a target object, wherein the traffic message of the target object at least includes traffic data of an in-vehicle music application in the target object; Performing deep message analysis on the traffic message of the target object to obtain a deep message analysis result on the traffic usage of the in-vehicle music application; When it is detected that the traffic usage value of the in-vehicle music application exceeds its available traffic value, performing network blocking processing on the in-vehicle music application; The deep message parsing of the traffic message of the target object includes: detecting the application layer load in the traffic message of the target object; Obtain traffic usage data of different applications according to the deep message analysis result, wherein the traffic usage data at least includes the following data: target object identifier, application service identifier, application uplink and downlink traffic values corresponding to the application service identifier, and traffic occurrence time range; The flow rate of the application is controlled according to the flow usage data.
8. A flow control device, include: A first acquisition module is configured to acquire a flow message of a target object, wherein the flow message of the target object includes flow data of an application currently running on the target object; A first parsing module is configured to perform deep message parsing on the traffic message of the target object to obtain a deep message parsing result about the traffic usage of the application currently running on the target object; A first control module is configured to perform flow control on the application according to the deep message parsing result; The first parsing module is further used to detect the application layer load in the traffic message of the target object; The first control module is configured to: Obtain traffic usage data of different applications according to the deep message analysis result, wherein the traffic usage data at least includes the following data: target object identifier, application service identifier, application uplink and downlink traffic values corresponding to the application service identifier, and traffic occurrence time range; performing flow control on the application according to the flow usage data; The performing flow control on the application according to the flow usage data is configured as follows: When it is detected that the uplink and downlink traffic values of an application within a preset time period exceed the available traffic value of the application, a network blocking process is performed on the application.
9. The device according to claim 8, wherein the device is used in a communication system in which an intermediate device is provided between the target object and the Internet; The first acquisition module is configured as follows: The traffic message of the target object is obtained from the intermediate device through mirroring multiplexing.
10. The device according to claim 8 or 9, before the first acquisition module, further include: A setting module is configured to set an application service identifier set for the target object, wherein the application service identifier set includes one or more application service identifiers that can be placed in the traffic message of the target object, and the application service identifier is used to identify different applications, so as to count the traffic usage of different applications, and can be configured with a network domain name or address corresponding to the application.
11. According to the device described in any one of claims 8-10, the deep message parsing result includes at least the following data: target object identifier, application service identifier, source address, destination address, source port, destination port, traffic data request time, and traffic data end time corresponding to the application service identifier.
12. The apparatus according to claim 8, wherein the performing flow control on the application according to the flow usage data is further configured to: When it is detected that the available flow value of the blocked application exceeds the preset flow value, a network recovery process is performed for the blocked application.
13. The device according to any one of claims 8 to 12, further comprising: include: The sending module is configured to send flow control prompt information to the target object.
14. A flow control device, include: A second acquisition module is configured to acquire a flow message of a target object, wherein the flow message of the target object at least includes flow data of an in-vehicle music application in the target object; A second parsing module is configured to perform deep message parsing on the traffic message of the target object to obtain a deep message parsing result on the traffic usage of the in-vehicle music application; A second control module is configured to perform network blocking processing on the in-vehicle music application when it is detected that the traffic usage value of the in-vehicle music application exceeds its available traffic value; The second parsing module is further used to detect the application layer load in the traffic message of the target object; The second control module is also used to obtain traffic usage data of different applications according to the deep message analysis result, wherein the traffic usage data at least includes the following data: target object identifier, application service identifier, application uplink and downlink traffic values corresponding to the application service identifier, and traffic occurrence time range; The flow rate of the application is controlled according to the flow usage data.
15. A flow control device, include: An intermediate device, configured between the target object and the Internet, for receiving a flow message sent by the target object, wherein the flow message includes flow data of an application currently running on the target object; A deep message analysis device, used to obtain the traffic message of the target object from the intermediate device through mirror multiplexing, perform deep message analysis on the traffic message of the target object, and obtain a deep message analysis result about the traffic usage of the application currently running on the target object; A flow control device, used for performing flow control on the application according to the deep message parsing result; The deep message analysis device is further used to detect the application layer load in the traffic message of the target object; The flow control device is used for: Obtain traffic usage data of different applications according to the deep message analysis result, wherein the traffic usage data at least includes the following data: target object identifier, application service identifier, application uplink and downlink traffic values corresponding to the application service identifier, and traffic occurrence time range; When it is detected that the uplink and downlink traffic values of the application within the preset time period exceed the available traffic value of the application, a blocking command is sent to the intermediate device to perform network blocking processing on the application.
16. The apparatus according to claim 15, wherein the intermediate device comprises a network service gateway and a NAT device connected to each other, in, The NAT device is used to communicate with the Internet.
17. The device according to claim 16, further comprising: include: The PDN gateway is used to communicate with the target object and forward the received traffic message of the target object to the network service gateway.
18. According to the device of any one of claims 15-17, the deep message parsing result at least includes the following data: target object identifier, application service identifier, source address, destination address, source port, destination port, flow data request time, and flow data end time corresponding to the application service identifier, in, The application service identifier is used to identify different applications so as to count traffic usage of different applications, and may be configured with a network domain name or address corresponding to the application.
19. The device according to any one of claims 15 to 18, wherein the flow control device is used for: When it is detected that the available flow value of the blocked application exceeds the preset flow value, a recovery command is sent to the intermediate device to perform network recovery processing for the blocked application.
20. An electronic device, It is characterized in that The method comprises a memory and a processor; wherein the memory is used to store one or more computer instructions, wherein the one or more computer instructions are executed by the processor to implement the method steps described in any one of claims 1-7.
21. A computer-readable storage medium having computer instructions stored thereon, Features When the computer instructions are executed by a processor, the method steps described in any one of claims 1-7 are implemented.
