A method of high efficiency carrier polling scheduling
By constructing task memory tables A and B, and performing carrier polling on the spectrum analyzer in real time, the problems of slow carrier polling speed and low equipment utilization are solved, achieving fast polling and efficient equipment utilization.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- 中国卫通集团股份有限公司
- Filing Date
- 2022-11-18
- Publication Date
- 2026-06-23
AI Technical Summary
Existing carrier monitoring systems suffer from slow carrier polling speeds and low utilization rates of spectrum analyzers.
Construct task memory tables A and B, obtain spectrum analyzer device information in real time, poll available devices, update task memory table information, and persist the information to the database.
It improved the carrier polling speed and increased the utilization rate of the spectrum analyzer equipment.
Smart Images

Figure CN115915423B_ABST
Abstract
Description
Technical Field
[0001] This invention belongs to the field of carrier monitoring technology, and in particular relates to a method for high-efficiency carrier polling scheduling. Background Technology
[0002] Carrier monitoring plays a crucial role in ensuring the reliability of satellite broadband communication services. An effective and rapid carrier polling scheduling method can not only improve carrier monitoring efficiency but also make reasonable use of spectrum analyzer equipment resources and improve equipment utilization.
[0003] Existing carrier monitoring systems do not handle carrier polling scheduling ideally. Firstly, when reading polling tasks, most current carrier monitoring systems read directly from a database, which is slow. Secondly, the selection of spectrum analyzers limits their application, monitoring only fixed carriers and reducing equipment utilization. Summary of the Invention
[0004] The technical problem solved by this invention is to overcome the shortcomings of the prior art and provide a high-efficiency carrier polling scheduling method, which solves the problems of slow carrier polling speed and low utilization of spectrum analyzer equipment.
[0005] The technical solution of this invention is:
[0006] A method for high-efficiency carrier polling scheduling includes:
[0007] Construct carrier polling task memory table A and task memory table B;
[0008] The polling mechanism is used to poll the polling tasks in task memory table A and task memory table B.
[0009] Acquire basic information about the spectrum analyzer in real time and build a real-time memory table of available devices;
[0010] Based on the information data of the polling task, check in the real-time memory table of available devices to see if there are any available spectrum analyzer devices available for the polling task;
[0011] Based on the matching results, determine whether it is necessary to send polling commands to available devices and update the polling task information in task memory table A and task memory table B;
[0012] Persistently poll task information and spectrum analyzer device information to the database;
[0013] Available devices can accept polling commands and return polling results, updating the database with the polling results;
[0014] Enter a query request to retrieve polling results from the database.
[0015] The steps for constructing the task memory table A and task memory table B include:
[0016] Read polling task table information data from the database and import it into memory to construct task memory table A; construct task memory table B with the same structure and size as task memory table A.
[0017] The polling task information data and the polling task information data both include: satellite name, station name, carrier name, spectrum analyzer ID, priority, number of polls, number of polls already conducted, uplink / downlink, polarization mode, enable flag, etc.
[0018] In the initially constructed task memory table A and task memory table B, there is one task table that does not contain polling task information.
[0019] The steps for constructing the real-time memory table of available devices include: querying spectrum analyzer device information in the database; constructing the real-time memory table of available devices based on the device information; and if the device information is updated, re-querying and loading to obtain the real-time memory table of available devices.
[0020] The steps for polling the tasks in task memory table A and task memory table B according to the polling mechanism include: determining whether both task memory table A and task memory table B are empty; if both task memory tables A and B are empty, it means there are no carrier tasks to be polled, and the polling ends; if task memory table A is empty, then polling is performed according to the task list in task memory table B; if task memory table A is not empty, then polling is performed according to the task list in task memory table A.
[0021] The step of matching whether there are available spectrum analyzer devices based on the information data of the polling task includes: searching for available spectrum analyzer devices in the real-time memory table of available devices based on the uplink / downlink and polarization mode in the information data of the current polling task, and obtaining a set of available spectrum analyzer devices;
[0022] Determine if there are any available spectrum analyzers in the available device set. If a spectrum analyzer is available and not performing other polling tasks, it is available. If all devices in the device set are occupied, there are no available devices.
[0023] The steps of determining whether to send a polling instruction and update the polling task information in task memory tables A and B based on the matching situation include: if there is an available device, querying the polling task table information data of the current polling task to construct a polling instruction;
[0024] Send polling commands to available spectrum analyzer devices for monitoring;
[0025] Decrement the polling task count by 1. If the polling count is greater than 0, add the polling task to another polling task table to wait for the next polling.
[0026] If no available device is found, increment the priority of the current polling task by 1 and insert it at the beginning of another polling task table, so that available devices will be prioritized for monitoring in the next polling task.
[0027] The steps for persistently storing polling task information and spectrum analyzer device information in a database storage system include:
[0028] When an available spectrum analyzer is available, the status of the currently available spectrum analyzer is set to occupied, the current polling task is polled, and the device status is synchronized to the database.
[0029] The input query request is analyzed to generate query conditions;
[0030] A retrieval request is sent to the database based on the query criteria;
[0031] The polling results are obtained from the polling task information in the database based on the retrieval request.
[0032] A retrieval request is sent to the database based on the query conditions, and the polling results are returned.
[0033] In summary, this application includes at least the following beneficial technical effects:
[0034] (1) When the project starts, the present invention directly loads the polling task into memory to form a task polling memory table A, and constructs a task polling memory table B according to the structure and size of A. By continuously replacing tasks in memory tables A and B, fast polling of carrier tasks is achieved. At the same time, the memory data is updated in real time according to task changes and polling status to prioritize and update the polling tasks, ensuring data real-time performance and effectively improving task polling speed;
[0035] (2) When the project starts, the spectrum analyzer data is loaded into the memory table at the same time, and the usage of each device is statistically analyzed. When carrier polling is performed, available spectrum analyzers are matched according to the carrier information. The carrier and the device are one-to-many and are not bound, which greatly improves the utilization rate of the device. Attached Figure Description
[0036] Figure 1 This is a flowchart of a carrier task polling mechanism in an embodiment of the present invention;
[0037] Figure 2 This is a flowchart illustrating the process of polling details for a carrier task and selecting a spectrum analyzer in an embodiment of the present invention.
[0038] Figure 3 This is a flowchart illustrating a method for querying carrier polling results in an embodiment of the present invention. Detailed Implementation
[0039] The present invention will now be described in further detail with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are for illustrative purposes only and are not intended to limit the scope of the invention. Furthermore, it should be noted that, for ease of description, only the parts relevant to the present invention are shown in the accompanying drawings, and not all of them.
[0040] The present invention will now be described in further detail with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are for illustrative purposes only and are not intended to limit the scope of the invention. Furthermore, it should be noted that, for ease of description, only the parts relevant to the present invention are shown in the accompanying drawings, and not all of them.
[0041] A method for high-efficiency carrier polling scheduling includes the following steps:
[0042] Step 1: Construct carrier polling task memory table A and task memory table B based on the polling task table information data (i.e., the task information to be polled) in the database;
[0043] The polling mechanism is used to poll the polling tasks in task memory table A and task memory table B.
[0044] Step 2: Matching is the spectrum analyzer device used by the polling task, and updating the polling task information in task memory table A and task memory table B according to the matching results, including:
[0045] Acquire basic information about the spectrum analyzer in real time and build a real-time memory table of available devices;
[0046] Based on the polling task conditions, check in the real-time memory table of available devices to see if there are any available spectrum analyzer devices available for the polling task;
[0047] Based on the matching results, determine whether it is necessary to send a polling command and update the polling task information in task memory table A and task memory table B;
[0048] Persistently poll task information and spectrum analyzer device information to the database;
[0049] Step 3: Query carrier polling results: Enter a query request to obtain the polling results from the polling task information in the database.
[0050] Figure 1 This is a flowchart of a carrier task polling mechanism, specifically step 1 as follows:
[0051] Step 101: Construct carrier polling task memory tables A and B.
[0052] The system accesses the carrier task storage database to obtain the task information that needs to be polled. The task information includes the main satellite name, station name, carrier name, spectrum analyzer ID, priority, number of polling, number of polled times, and enable flag, etc. Polling task memory table A is constructed, and polling task memory table B is constructed at the same time. At this time, task memory tables A and B have the same structure and memory size, but task memory table B does not contain polling task information.
[0053] Step 102: Determine whether both task memory tables A and B are empty.
[0054] If both polling task memory tables A and B are empty, it means there are no carrier tasks to poll, and polling ends. If one memory table is not empty, the polling task continues.
[0055] Step 103: Determine if task memory table A is empty.
[0056] If task memory table A is empty, then poll according to the task list in task memory table B; if task memory table A is not empty, then poll according to the polling task list in task memory table A.
[0057] Step 104: Start polling.
[0058] Each time a task is polled, the polling count is reduced by 1.
[0059] Step 105: After the task polling is completed, add the task to the task memory table B.
[0060] Delete the tasks that have been polled in task memory table A. If the polling count of the task is greater than 0, add its carrier information to task memory table B and persist it to the carrier polling database.
[0061] Step 106: If task memory table A is empty, determine whether task memory table B is empty.
[0062] The process continues until all tasks in task memory table A have been polled. If task memory table B is not empty, then the polling will proceed according to the task list in task memory table B.
[0063] Step 107: Start polling.
[0064] Each time a task is polled, the polling count is reduced by 1.
[0065] Step 108: After the task polling is completed, add the task to the task memory table A.
[0066] Delete the tasks that have been polled in task memory table B. If the polling count of the task is greater than 0, add its carrier information to task memory table A and persist it to the carrier polling database.
[0067] Figure 2This is a flowchart of the process for polling carrier task details and selecting spectrum analyzer equipment, specifically step 2, as follows:
[0068] Step 201: Poll the tasks sequentially according to the task memory table A or B.
[0069] The system retrieves the current task memory table A or B that needs to be polled, obtains the number and order of the polled tasks, and polls the tasks in sequence.
[0070] Step 202: Determine whether the current task is polling enabled.
[0071] Determine whether the current task is polling enabled. If it is enabled, polling of the task is allowed; otherwise, polling is not allowed.
[0072] Step 203: Determine if the current task polling count is >0.
[0073] Check if the current task polling count is greater than 0. If it is, allow the task to poll; otherwise, do not poll it.
[0074] Step 204: Is the current polling task the last one?
[0075] Determine if the polling task that is not enabled or has a polling count of less than 0 is the last polling task. If it is the last task, terminate the current task table polling; otherwise, continue polling the next task.
[0076] Step 205: Locate the set of available spectrum analyzer devices.
[0077] Based on the polling task information, the system searches for a set of available devices in the spectrum analyzer's memory table. This may involve one or more devices that meet the polling task requirements.
[0078] Step 206: Determine the current status of the spectrum analyzer according to the device order of the available device set.
[0079] The system obtains the set of available spectrum analyzer devices for the current task, the number and order of the devices, and judges the devices in order.
[0080] Step 207: Is the device being polled or controlled?
[0081] The system determines whether the current spectrum analyzer is occupied; only idle spectrum analyzers can execute the polling command.
[0082] Step 208: Is this the last device?
[0083] Determine if the current device is the last available device. If the currently occupied device is not the last available device, then perform an availability check on the next available device. If the currently occupied device is the last available device, then proceed to step 209.
[0084] Step 209: No available devices are found in the current polling task, so the task priority is incremented by 1.
[0085] Change the priority of the current polling task and add it to the first position of another polling task table, waiting for the next round of polling.
[0086] Step 210: Send a polling command.
[0087] An executable polling command is sent to the required spectrum analyzer. This polling command includes the carrier ID, attenuation, port number, center frequency, bandwidth (RBW), windows, overlap, vbw, and fftlength. The spectrum analyzer returns the polling results based on the command and saves them to the database.
[0088] Step 211: Decrement the polling count of the current polling task by 1.
[0089] After the system finishes polling the current task and successfully sends the polling command, it decrements the polling count of the task by 1 and proceeds to step 213, while simultaneously proceeding to step 212.
[0090] Step 212: Persist the current task information to the database storage system.
[0091] Step 213: Determine whether the current polling task's polling count is greater than 0.
[0092] If the current task polling count is greater than 0, proceed to step 214; if the count is equal to 0, continue to step 201.
[0093] Step 214: Add to the memory table of task A or B that is not being polled.
[0094] Add the polling tasks that have already been polled to another task list that is not currently being polled, and wait for the next round of polling, i.e., continue to step 201.
[0095] Figure 3 This is a flowchart of a carrier polling result query provided by an embodiment of the present invention, specifically step 3 as follows:
[0096] Step 301: Obtain the query conditions.
[0097] When users have a query request, they can enter it through a browser, client, or other means, specifically through RESTful API access. Query criteria can include satellite name, station name, and carrier name.
[0098] Step 302: Parse the query conditions.
[0099] In this embodiment, after receiving the query conditions input by the user, the query conditions are parsed according to the content of the query. The query conditions can include single-condition queries and multi-condition queries, which can be set according to the user's needs.
[0100] Step 303: Obtain the query statement.
[0101] Based on the query conditions generated in step 302, the example query statement is: select * from spectrum where satelliteName = 'the name of the satellite being queried' and stationName = 'the name of the station being queried' and carrierName = 'the name of the carrier being queried'.
[0102] Steps 304-306: Check if the data is in memory, determine if the data is complete, and query the database.
[0103] The parts of this invention not described in detail are common knowledge to those skilled in the art.
[0104] Although the present invention has been disclosed above with reference to preferred embodiments, it is not intended to limit the present invention. Any person skilled in the art can make possible changes and modifications without departing from the spirit and scope of the present invention. Therefore, the scope of protection of the present invention should be determined by the scope defined in the claims of the present invention.
Claims
1. A method for high-efficiency carrier polling scheduling, characterized in that: include Construct carrier polling task memory table A and task memory table B; The polling mechanism is used to poll the polling tasks in task memory table A and task memory table B. Acquire basic information about the spectrum analyzer in real time and build a real-time memory table of available devices; Based on the information data of the polling task, check in the real-time memory table of available devices to see if there are any available spectrum analyzer devices available for the polling task; Based on the matching results, determine whether it is necessary to send polling commands to available devices and update the polling task information in task memory table A and task memory table B; Persistently poll task information and spectrum analyzer device information to the database; Available devices can accept polling commands and return polling results, updating the database with the polling results; Enter a query request to retrieve polling results from the database; The steps of determining whether to send a polling command and update the polling task information in task memory tables A and B based on the matching results include: If available devices exist, query the polling task table information of the current polling task to construct the polling command; Send polling commands to available spectrum analyzer devices for monitoring; Decrement the polling task count by 1. If the polling count is greater than 0, add the polling task to another polling task table to wait for the next polling. If no available device is found, increment the priority of the current polling task by 1 and insert it at the beginning of another polling task table, so that available devices will be prioritized for monitoring in the next polling task.
2. The method according to claim 1, characterized in that: The steps for constructing the task memory table A and task memory table B include: Read polling task table information data from the database and import it into memory to build task memory table A; build task memory table B with the same structure and size as task memory table A. The information data for the polling task includes: satellite name, station name, carrier name, spectrum analyzer ID, priority, number of polls, number of polls already conducted, uplink / downlink, polarization mode, enable flag, storage flag, and reduction flag.
3. The method according to claim 1, characterized in that: In the initially constructed task memory table A and task memory table B, there is one task table that does not contain polling task information.
4. The method according to claim 1, characterized in that: The step of constructing a real-time memory table for available devices includes: Query the spectrum analyzer device information in the database; construct a real-time memory table of available devices based on the device information; if the device information is updated, re-query and load the data to obtain the real-time memory table of available devices.
5. The method according to claim 1, characterized in that: The polling mechanism involves polling tasks in task memory table A and task memory table B, including: Determine if both task memory table A and task memory table B are empty. If both task memory tables A and B are empty, it means there are no carrier tasks to poll, and the polling ends. If task memory table A is empty, then poll according to the task list in task memory table B. If task memory table A is not empty, then poll according to the task list in task memory table A.
6. The method according to claim 1, characterized in that: The step of matching whether there is an available spectrum analyzer device based on the information data from the polling task includes: Based on the uplink / downlink and polarization mode in the current polling task information data, search for available spectrum analyzer devices in the available device real-time memory table to obtain the set of available spectrum analyzer devices; Determine if there are any available spectrum analyzers in the available device set. If a spectrum analyzer is available and not performing other polling tasks, it is available. If all devices in the device set are occupied, there are no available devices.
7. The method according to claim 1, characterized in that: The steps for persistently storing polling task information and spectrum analyzer device information in a database storage system include: When an available spectrum analyzer is available, the current spectrum analyzer status is set to occupied, the current polling task is polled, and the spectrum analyzer status is synchronized to the database.
8. The method according to claim 1, characterized in that: The input query request is analyzed to generate query conditions; A retrieval request is sent to the database based on the query criteria; The polling results are obtained from the polling task information in the database based on the retrieval request.
9. The method according to claim 8, characterized in that: A retrieval request is sent to the database based on the query conditions, and the polling results are returned.