Cloud edge collaborative intelligent scheduling method for satellite fusion network
By combining satellite converged network and cloud-edge collaborative intelligent scheduling method in extreme environments, the shortcomings of traditional technologies under low latency and high bandwidth requirements are solved, and efficient tasks are achieved and system reliability and user experience are improved.
Patent Information
- Application Number
- CN202411984753.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-12-31
- Publication Date
- 2025-04-15
AI Technical Summary
In extreme environments, traditional cloud computing and edge computing are difficult to effectively combine, resulting in insufficient communication stability, resource allocation flexibility and emergency response mechanisms, affecting the low latency and efficiency of task execution.
A cloud-edge collaborative intelligent scheduling method for satellite converged network is proposed. Through the ad hoc network, the communication between devices is maintained, and the satellite links are used to interact with the cloud, and intelligently decide whether to perform computing tasks at the edge or in the cloud, and optimization measures such as task segmentation, preemption mechanism and downgrade processing are adopted.
In the case of resource constraints and poor communication, ensure efficient tasks and improve the system's adaptability, intelligence, reliability and user experience.
Smart Images

Figure CN119835698A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the fields of cloud computing, edge computing, ad hoc networking, and satellite communication technology, and in particular to a cloud-edge collaborative intelligent scheduling method for a satellite fusion network. Background Art
[0002] With the development of technologies such as the Internet of Things, big data, and artificial intelligence, more and more application scenarios require rapid response and processing of large amounts of data. Traditional cloud computing models are difficult to meet the needs of low latency and high bandwidth in some cases. Edge computing, as a supplementary solution, can perform preliminary data processing close to the data source, but its computing power and storage space are limited. Therefore, how to effectively combine the advantages of cloud computing and edge computing to build a system that can fully utilize local resources and timely use the powerful support of the cloud has become an important direction of current research.
[0003] In the prior art, some patents have proposed some task scheduling methods based on edge computing, but there are obvious deficiencies when facing extreme conditions (such as remote areas or large-scale natural disasters that cause damage to 4G / 5G public network base stations), especially in terms of communication stability, resource allocation flexibility, and emergency response mechanisms. In addition, in these extreme environments, not only communication problems need to be solved, but also the effective allocation of computing tasks needs to be considered. If you rely entirely on edge computing, task execution may be affected due to insufficient resources; and trying to upload all tasks to the cloud for processing through unstable satellite links may cause serious delays or even task failures. Therefore, how to optimize the use of computing resources under such complex conditions and ensure that tasks can be executed in a timely and accurate manner is a technical problem that needs to be solved urgently. Summary of the invention
[0004] In view of this, the present invention proposes a cloud-edge collaborative intelligent scheduling method for satellite fusion network. This method can rely on self-organizing network to maintain communication between on-site devices in the face of limited edge server cluster resources, unavailability of 4G / 5G public network, and poor communication conditions, and realize basic interaction with the rear command center through limited satellite communication links. At the same time, it maximizes the use of local resources to deal with emergencies, dynamically determines whether the computing task is executed at the edge or in the cloud through intelligent decision-making logic, and takes corresponding optimization measures (such as task segmentation, preemption mechanism, downgrade processing, etc.) to ensure efficient completion of the task.
[0005] In order to achieve the above object, the technical solution adopted by the present invention is as follows:
[0006] A cloud-edge collaborative intelligent scheduling method for a satellite fusion network comprises the following steps:
[0007] Step 1: Set the CPU usage threshold of the edge server cluster. CPU And the memory usage threshold Threshold Memory ; Set the link quality threshold NetQ for the communication link between the ad hoc network and the satellite fusion network min ;
[0008] Step 2: Deploy monitoring tools on the edge server cluster to continuously track its CPU utilization and memory usage, which are recorded as Usage CPU 、Usage Memory ; Use network monitoring tools to continuously monitor the actual bandwidth, latency, jitter and packet loss rate of the communication links of the ad hoc network and satellite converged network;
[0009] Step 3: Set up a queue of tasks to be executed;
[0010] Step 4: If a new computing task is received, the corresponding task priority is calculated. If the calculated result is greater than the task priority of all tasks to be executed in the task queue, the currently received new computing task is selected to execute step 6. If the calculated result is less than the task priority of a task to be executed in the task queue, the currently received new computing task is added to the task queue and step 5 is executed; if there is no new computing task, step 5 is executed;
[0011] Step 5, selecting the to-be-executed task with the highest task priority in the to-be-executed task queue as the currently selected computing task, and executing step 6 after deleting the computing task in the to-be-executed task queue, wherein, if there is more than one to-be-executed task corresponding to the highest task priority in the to-be-executed task queue, then for all to-be-executed tasks corresponding to the highest task priority, select the to-be-executed task as the currently selected computing task according to the first-in-first-out scheduling method, and execute step 6 after deleting the computing task in the to-be-executed task queue;
[0012] Step 6: Determine Usage CPU <Threshold CPU AndUsage Memory <Threshold Memory Is it true? If so, execute the currently selected computing task directly on the edge server cluster; otherwise, execute step 7;
[0013] Step 7: According to the task type of the currently selected computing task, set the corresponding bandwidth, delay, jitter and packet loss rate weights and packet loss rate influencing factors, and calculate the communication link quality of the ad hoc network and the satellite fusion network. If the calculation result exceeds the link quality threshold NetQ min , then upload the computing task to the cloud for computing, otherwise execute step 8;
[0014] Step 8, determine whether the currently selected computing task is an atomic task, if it is an atomic task, execute step 9, otherwise execute step 10;
[0015] Step 9, determine whether the task priority of the currently selected computing task is greater than the task priority of a computing task being executed by the edge server cluster. If so, suspend the computing task with a smaller task priority corresponding to the edge server cluster, and determine whether the suspended task has been marked as running with a simplified algorithm. If so, re-add it to the queue of tasks to be executed. Otherwise, replace its algorithm with a preset simplified algorithm, set a simplified mark, and re-add it to the queue of tasks to be executed. After that, the edge server cluster starts to execute the currently selected computing task;
[0016] If the task priority of the currently selected computing task is lower than the task priority of all computing tasks being executed by the edge server cluster, the currently selected computing task is added to the queue of tasks to be executed;
[0017] Step 10, decompose the currently selected computing task to obtain multiple corresponding atomic tasks, and execute step 4 in sequence for all the atomic tasks obtained by the decomposition. After waiting for all atomic tasks to complete the calculation, merge the calculation results of all atomic tasks to obtain the complete result of the corresponding computing task; complete the cloud-edge collaborative intelligent scheduling method for satellite fusion network.
[0018] Furthermore, if a new computing task is received in step 4, the specific method for calculating the corresponding task priority is:
[0019] P task =W I *I+W U *U;
[0020] Among them, P task Indicates the task priority of the new computing task received;
[0021] I represents the importance of the corresponding task, with a value ranging from 0 to 10, with 10 representing the highest importance;
[0022] U represents the urgency of the corresponding task, with a specific value ranging from 0 to 10, with 10 representing the highest urgency;
[0023] W I and W U Represent the weights of importance and urgency, W I With W U The values of are all greater than 0, and W I +W U =1.
[0024] Furthermore, the specific method of calculating the communication link quality of the ad hoc network and the satellite fusion network in step 7 is:
[0025] NetQ=W B *f(B)+W L *f(L)+W J *f(J)+W P *f(P);
[0026] Among them, NetQ represents the communication link quality of the ad hoc network and the satellite fusion network;
[0027] W B , W L , W J , W P Represent the weights of bandwidth, delay, jitter and packet loss rate respectively, W B , W L , W J , W P The values of are all greater than 0, and W B +W L +W J +W P =1;
[0028]
[0029] Among them, B max represents the maximum bandwidth of the link between the ad hoc network and the satellite fusion network, B min represents the minimum bandwidth of the MANET and satellite fusion network link, B expected Indicates the expected bandwidth corresponding to the task type of the currently selected computing task; B is the actual bandwidth of the communication link of the ad hoc network and the satellite fusion network monitored by the network monitoring tool;
[0030]
[0031] L max is the maximum acceptable delay of the MANET and satellite fusion network link, L is the actual delay of the MANET and satellite fusion network communication link monitored by the network monitoring tool;
[0032]
[0033] J max is the maximum acceptable jitter of the MANET and satellite fusion network link, J is the actual jitter of the MANET and satellite fusion network communication link monitored by the network monitoring tool;
[0034] f(P)=e -γ*P ;
[0035] γ is the packet loss rate influencing factor, which controls the impact degree of packet loss rate, and P is the actual packet loss rate of the communication link of the ad hoc network and satellite fusion network monitored by the network monitoring tool.
[0036] Furthermore, the task types of computing tasks include real-time interactive tasks, data transmission tasks, batch processing tasks, and mixed tasks;
[0037] For real-time interactive tasks: 0.1≤W B ≤0.2, 0.4≤W L ≤0.6,0.2≤W J ≤0.3, 0.2≤W P ≤0.3,8≤γ≤12;
[0038] For data transmission tasks: 0.6≤W B ≤0.8,0.05≤W L ≤0.2,0.05≤W J ≤0.1, 0.1≤W P ≤0.2, 2≤γ≤4;
[0039] For batch processing tasks: 0.5≤W B ≤0.7, 0.05≤W L ≤0.2,0.05≤W J ≤0.1, 0.2≤W P ≤0.3, 1≤γ≤3;
[0040] For mixed tasks: 0.3≤W B ≤0.4, 0.3≤W L ≤0.4,0.15≤W J ≤0.25, 0.15≤W P ≤0.25, 5≤γ≤8.
[0041] Due to the adoption of the above technical solution, the beneficial effects of the present invention compared with the prior art are:
[0042] 1. The present invention has strong adaptability: it can flexibly adjust the task scheduling strategy to ensure efficient completion of tasks under conditions of limited resources and poor communication conditions.
[0043] 2. The present invention is intelligent: through intelligent decision-making logic, it dynamically determines whether the computing task is performed at the edge or in the cloud, maximizing the use of available resources.
[0044] 3. The present invention has high reliability: through reasonable resource threshold setting, communication link quality scoring model and task preemption rules, the stability and reliability of the system in various complex environments are ensured.
[0045] 4. The present invention provides good user experience: through task priority management and resource optimization configuration, the user experience in real-time applications is improved. BRIEF DESCRIPTION OF THE DRAWINGS
[0046] Figure 1 This is an overall flow chart of a cloud-edge collaborative intelligent scheduling method for a satellite fusion network in an embodiment of the present invention. DETAILED DESCRIPTION
[0047] The present invention will be further described below in conjunction with the accompanying drawings and specific embodiments.
[0048] A cloud-edge collaborative intelligent scheduling method for satellite fusion networks, such as Figure 1 Said, comprising the following steps:
[0049] Step 1: Set the CPU usage threshold of the edge server cluster. CPU And the memory usage threshold Threshold Memory ; Set the link quality threshold NetQ for the communication link between the ad hoc network and the satellite fusion network min ;
[0050] Step 2: Deploy monitoring tools on the edge server cluster to continuously track its CPU utilization and memory usage, which are recorded as Usage CPU 、Usage Memory ; Use network monitoring tools to continuously monitor the actual bandwidth, latency, jitter and packet loss rate of the communication links of the ad hoc network and satellite converged network;
[0051] Step 3: Set up a queue of tasks to be executed;
[0052] Step 4: If a new computing task is received, the corresponding task priority is calculated. If the calculated result is greater than the task priority of all tasks to be executed in the task queue, the currently received new computing task is selected to execute step 6. If the calculated result is less than the task priority of a task to be executed in the task queue, the currently received new computing task is added to the task queue and step 5 is executed; if there is no new computing task, step 5 is executed;
[0053] Step 5, selecting the to-be-executed task with the highest task priority in the to-be-executed task queue as the currently selected computing task, and executing step 6 after deleting the computing task in the to-be-executed task queue, wherein, if there is more than one to-be-executed task corresponding to the highest task priority in the to-be-executed task queue, then for all to-be-executed tasks corresponding to the highest task priority, selecting the to-be-executed task as the currently selected computing task according to the first-in-first-out (FIFO) scheduling method, and executing step 6 after deleting the computing task in the to-be-executed task queue;
[0054] Step 6, determine Usgae CPU <Threshold CPU AndUsage Memory <Threshold Memory Is it true? If so, execute the currently selected computing task directly on the edge server cluster; otherwise, execute step 7;
[0055] Step 7: According to the task type of the currently selected computing task, set the corresponding bandwidth, delay, jitter and packet loss rate weights and packet loss rate influencing factors, and calculate the communication link quality of the ad hoc network and the satellite fusion network. If the calculation result exceeds the link quality threshold NetQ min , then upload the computing task to the cloud for computing, otherwise execute step 8;
[0056] Step 8, determine whether the currently selected computing task is an atomic task, if it is an atomic task, execute step 9, otherwise execute step 10;
[0057] Step 9, determine whether the task priority of the currently selected computing task is greater than the task priority of a computing task being executed by the edge server cluster. If so, suspend the computing task with a smaller task priority corresponding to the edge server cluster, and determine whether the suspended task has been marked as running with a simplified algorithm. If so, re-add it to the queue of tasks to be executed. Otherwise, replace its algorithm with a preset simplified algorithm, set a simplified mark, and re-add it to the queue of tasks to be executed. After that, the edge server cluster starts to execute the currently selected computing task;
[0058] Specifically, in this embodiment, each computing task in the edge server cluster or cloud computing is pre-set with two computing processes: a direct computing process and a simplified computing process;
[0059] If the task priority of the currently selected computing task is lower than the task priority of all computing tasks being executed by the edge server cluster, the currently selected computing task is added to the queue of tasks to be executed;
[0060] Step 10, decompose the currently selected computing task to obtain multiple corresponding atomic tasks, and execute step 4 in sequence for all the atomic tasks obtained by the decomposition. After waiting for all atomic tasks to complete the calculation, merge the calculation results of all atomic tasks to obtain the complete result of the corresponding computing task; complete the cloud-edge collaborative intelligent scheduling method for satellite fusion network.
[0061] Furthermore, if a new computing task is received in step 4, the specific method for calculating the corresponding task priority is:
[0062] Ptask =W I *I+W U *U;
[0063] Among them, P task Indicates the task priority of the new computing task received;
[0064] I represents the importance of the corresponding task, with a value ranging from 0 to 10, with 10 representing the highest importance;
[0065] U represents the urgency of the corresponding task, with a specific value ranging from 0 to 10, with 10 representing the highest urgency;
[0066] W I and W U Represent the weights of importance and urgency, W I With W U The values of are all greater than 0, and W I +W U =1.
[0067] Specifically, at the same time, the weights of importance and urgency are dynamically adjusted based on historical data. If it is found that certain types of high-importance but non-urgent tasks are often neglected, the weight of importance can be appropriately increased; vice versa;
[0068] Furthermore, the specific method of calculating the communication link quality of the ad hoc network and the satellite fusion network in step 7 is:
[0069] NetQ=W B *f(B)+W L *f(L)+W J *f(J)+W P *f(P);
[0070] Among them, NetQ represents the communication link quality of the ad hoc network and the satellite fusion network;
[0071] W B , W L , W J , W P Represent the weights of bandwidth, delay, jitter and packet loss rate respectively, W B , W L , W J , W P The values of are all greater than 0, and W B +W L +W J +W P =1;
[0072]
[0073] Among them, Bmax represents the maximum bandwidth of the link between the ad hoc network and the satellite fusion network, B min represents the minimum bandwidth of the MANET and satellite fusion network link, B expected Indicates the expected bandwidth corresponding to the task type of the currently selected computing task; B is the actual bandwidth of the communication link of the ad hoc network and the satellite fusion network monitored by the network monitoring tool;
[0074]
[0075] L max is the maximum acceptable delay of the MANET and satellite fusion network link, L is the actual delay of the MANET and satellite fusion network communication link monitored by the network monitoring tool;
[0076]
[0077] J max is the maximum acceptable jitter of the MANET and satellite fusion network link, J is the actual jitter of the MANET and satellite fusion network communication link monitored by the network monitoring tool;
[0078] f(P)=e -γ*P ;
[0079] γ is the packet loss rate influencing factor, which controls the impact degree of packet loss rate, and P is the actual packet loss rate of the communication link of the ad hoc network and satellite fusion network monitored by the network monitoring tool.
[0080] Furthermore, the task types of computing tasks include real-time interactive tasks, data transmission tasks, batch processing tasks, and mixed tasks;
[0081] For real-time interactive tasks: very sensitive to delay, sensitive to jitter and packet loss rate, and less sensitive to bandwidth. The weights of bandwidth, delay, jitter, and packet loss rate are set to 0.1≤W respectively. B ≤0.2, 0.4≤W L ≤0.6,0.2≤W J ≤0.3, 0.2≤W P ≤0.3, the packet loss rate impact factor is set to 8≤γ≤12;
[0082] For data transmission tasks: very sensitive to bandwidth, relatively insensitive to delay, not very sensitive to jitter, and somewhat sensitive to packet loss rate, the weights of bandwidth, delay, jitter, and packet loss rate are set to 0.6≤W respectively. B ≤0.8,0.05≤W L ≤0.2,0.05≤W J ≤0.1, 0.1≤W P ≤0.2, the packet loss rate impact factor is set to 2≤γ≤4;
[0083] For batch processing tasks: sensitive to bandwidth, insensitive to delay and jitter, and somewhat sensitive to packet loss rate, the weights of bandwidth, delay, jitter, and packet loss rate are set to 0.5≤W respectively B ≤0.7, 0.05≤W L ≤0.2,0.05≤W J ≤0.1, 0.2≤W P ≤0.3, the packet loss rate impact factor is set to 1≤γ≤3;
[0084] For mixed tasks: sensitive to both bandwidth and delay, moderately sensitive to jitter, and sensitive to packet loss rate, the weights of bandwidth, delay, jitter, and packet loss rate are set to 0.3≤W respectively. B ≤0.4, 0.3≤W L ≤0.4,0.15≤W J ≤0.25, 0.15≤W P ≤0.25, and the packet loss rate impact factor is set to 5≤γ≤8.
[0085] In summary, the present invention can provide reliable computing task scheduling services in a complex and changeable network environment, ensuring that key tasks are processed in a timely manner, while optimizing resource allocation and improving the response speed and work efficiency of the overall system.
[0086] Those skilled in the art will appreciate that the embodiments described are intended to help readers understand the principles of the present invention, and should be understood that the scope of protection of the present invention is not limited to the embodiments described. For those skilled in the art, the present invention may have various changes and variations. Any modifications, equivalent substitutions, improvements, etc. made within the spirit and principles of the present invention should be included in the scope of the claims of the present invention.
Claims
1. A cloud-edge collaborative intelligent scheduling method for satellite fusion network, characterized in that: The following steps are involved: Step 1: Set the CPU usage threshold of the edge server cluster. CPU And the memory usage threshold Threshold Memory ; Set the link quality threshold NetQ for the communication link between the ad hoc network and the satellite fusion network min ; Step 2: Deploy monitoring tools on the edge server cluster to continuously track its CPU utilization and memory usage, which are recorded as Usage CPU 、Usage Memory ; Use network monitoring tools to continuously monitor the actual bandwidth, latency, jitter and packet loss rate of the communication links of the ad hoc network and satellite converged network; Step 3: Set up a queue of tasks to be executed; Step 4: If a new computing task is received, the corresponding task priority is calculated. If the calculated result is greater than the task priority of all tasks to be executed in the task queue, the currently received new computing task is selected to execute step 6. If the calculated result is less than the task priority of a task to be executed in the task queue, the currently received new computing task is added to the task queue and step 5 is executed; if there is no new computing task, step 5 is executed; Step 5, selecting the to-be-executed task with the highest task priority in the to-be-executed task queue as the currently selected computing task, and executing step 6 after deleting the computing task in the to-be-executed task queue, wherein, if there is more than one to-be-executed task corresponding to the highest task priority in the to-be-executed task queue, then for all to-be-executed tasks corresponding to the highest task priority, select the to-be-executed task as the currently selected computing task according to the first-in-first-out scheduling method, and execute step 6 after deleting the computing task in the to-be-executed task queue; Step 6: Determine Usage CPU <Threshold CPU AndUsage Memory <Threshold Memory Is it true? If so, execute the currently selected computing task directly on the edge server cluster; otherwise, execute step 7; Step 7: According to the task type of the currently selected computing task, set the corresponding bandwidth, delay, jitter and packet loss rate weights and packet loss rate influencing factors, and calculate the communication link quality of the ad hoc network and the satellite fusion network. If the calculation result exceeds the link quality threshold NetQ min , then upload the computing task to the cloud for computing, otherwise execute step 8; Step 8, determine whether the currently selected computing task is an atomic task, if it is an atomic task, execute step 9, otherwise execute step 10; Step 9, determine whether the task priority of the currently selected computing task is greater than the task priority of a computing task being executed by the edge server cluster. If so, suspend the computing task with a smaller task priority corresponding to the edge server cluster, and determine whether the suspended task has been marked as running with a simplified algorithm. If so, re-add it to the queue of tasks to be executed. Otherwise, replace its algorithm with a preset simplified algorithm, set a simplified mark, and re-add it to the queue of tasks to be executed. After that, the edge server cluster starts to execute the currently selected computing task; If the task priority of the currently selected computing task is lower than the task priority of all computing tasks being executed by the edge server cluster, the currently selected computing task is added to the queue of tasks to be executed; Step 10, decompose the currently selected computing task to obtain multiple corresponding atomic tasks, and execute step 4 in sequence for all the atomic tasks obtained by the decomposition. After waiting for all atomic tasks to complete the calculation, merge the calculation results of all atomic tasks to obtain the complete result of the corresponding computing task; complete the cloud-edge collaborative intelligent scheduling method for satellite fusion network.
2. The cloud-edge collaborative intelligent scheduling method for satellite fusion network according to claim 1 is characterized in that: If a new computing task is received in step 4, the specific method for calculating the corresponding task priority is: Q task =W I *I+W U *U; Among them, P task Indicates the task priority of the new computing task received; I represents the importance of the corresponding task, with a value ranging from 0 to 10, with 10 representing the highest importance; U represents the urgency of the corresponding task, with a specific value ranging from 0 to 10, with 10 representing the highest urgency; W I and W U Represent the weights of importance and urgency, W I With W U The values of are all greater than 0, and W I +W U =1.
3. The cloud-edge collaborative intelligent scheduling method for satellite fusion network according to claim 1 is characterized in that: The specific method of calculating the communication link quality of the ad hoc network and the satellite fusion network in step 7 is: NetQ=W B *f(B)+W L *f(L)+W J *f(J)+W P *f(P); Among them, NetQ represents the communication link quality of the ad hoc network and the satellite fusion network; W B , W L , W J , W P Represent the weights of bandwidth, delay, jitter and packet loss rate respectively, W B , W L , W J , W P The values of are all greater than 0, and W B +W L +W J +W P =1; Among them, B max represents the maximum bandwidth of the link between the ad hoc network and the satellite fusion network, B min represents the minimum bandwidth of the MANET and satellite fusion network link, B expected Indicates the expected bandwidth corresponding to the task type of the currently selected computing task; B is the actual bandwidth of the communication link of the ad hoc network and the satellite fusion network monitored by the network monitoring tool; L max is the maximum acceptable delay of the MANET and satellite fusion network link, L is the actual delay of the MANET and satellite fusion network communication link monitored by the network monitoring tool; J max is the maximum acceptable jitter of the MANET and satellite fusion network link, J is the actual jitter of the MANET and satellite fusion network communication link monitored by the network monitoring tool; f(P)=e -γ*P ; γ is the packet loss rate influencing factor, which controls the impact degree of packet loss rate, and P is the actual packet loss rate of the communication link of the ad hoc network and satellite fusion network monitored by the network monitoring tool.
4. The cloud-edge collaborative intelligent scheduling method for satellite fusion network according to claim 3 is characterized in that: The types of computing tasks include real-time interactive tasks, data transmission tasks, batch processing tasks, and mixed tasks; For real-time interactive tasks: 0.1≤W B ≤0.2, 0.4≤W L ≤0.6,0.2≤W J ≤0.3, 0.2≤W P ≤0.3,8≤γ≤12; For data transmission tasks: 0.6≤W B ≤0.8,0.05≤W L ≤0.2,0.05≤W J ≤0.1, 0.1≤W P ≤0.2, 2≤γ≤4; For batch processing tasks: 0.5≤W B ≤0.7, 0.05≤W L ≤0.2,0.05≤W J ≤0.1, 0.2≤W P ≤0.3, 1≤γ≤3; For mixed tasks: 0.3≤W B ≤0.4, 0.3≤W L ≤0.4,0.15≤W J ≤0.25, 0.15≤W P ≤0.25, 5≤γ≤8.