A scheduling method, system and apparatus
By centrally scheduling channel contention among network nodes through control nodes, the problem of random backoff collisions in wireless LANs is solved, improving network transmission efficiency and performance.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- HUAWEI TECH CO LTD
- Filing Date
- 2024-10-10
- Publication Date
- 2026-06-19
AI Technical Summary
In wireless LANs, the increased probability of multiple devices competing for Wi-Fi channels at the same time leads to frequent random backoff collisions, reducing network throughput and increasing service latency.
By receiving service information from network nodes through the control node, the channel contention of M network nodes is centrally scheduled to avoid random backoff conflicts and ensure orderly data transmission.
It improves the overall transmission efficiency and performance of the network, reduces random backoff collisions, and enhances the reliability and throughput of data transmission.
Smart Images

Figure CN120659172B_ABST
Abstract
Description
[0001] This application is a divisional application. The original application has the application number 202411414673.1 and the original application date is October 10, 2024. The entire contents of the original application are incorporated herein by reference. Technical Field
[0002] This application relates to the field of optical communication technology, and in particular to a scheduling method, system and apparatus. Background Technology
[0003] Currently, in wireless local area networks (WLANs), Wi-Fi channels are typically shared by access points (APs) and stations (STAs). Each AP and STA uses a set of enhanced distribution channel access (EDCA) parameters to compete for the Wi-Fi channel and gain the opportunity to transmit.
[0004] Access points (APs) can adjust EDCA parameters by assessing network status. However, with network development and the increasing number of devices in home networks, the probability of multiple devices competing for Wi-Fi channels simultaneously is also increasing. This simultaneous competition for Wi-Fi channels can lead to random backoff conflicts, resulting in packet failures, reduced network throughput, and increased service latency.
[0005] Therefore, how to avoid random backoff collisions in the air interface and improve the transmission efficiency in the network is worth studying. Summary of the Invention
[0006] This application provides a scheduling method, system, and apparatus to provide a feasible way to avoid random backoff conflicts on the air interface, thereby improving the overall transmission efficiency of the network.
[0007] In a first aspect, this application provides a scheduling method, the method comprising: a control node receiving service information reported by N network nodes respectively, the service information being used to indicate information of service data that the network nodes need to transmit through a channel, wherein N is a positive integer; the control node determining M network nodes to be scheduled in the current scheduling period based on the service information reported by the N network nodes respectively, wherein M is a positive integer, and M is less than or equal to N; and the control node sending a first scheduling message to the M network nodes, the first scheduling message being used to indicate that the M network nodes are allowed to compete for the channel.
[0008] In this method, a control node in the network can centrally control multiple network nodes. By statistically analyzing the service information of each network node, the order in which each network node is allowed to send data can be determined. Thus, in each scheduling cycle, network nodes scheduled by the control node are allowed to compete for the channel and send data through the channel, while unscheduled network nodes must wait for the scheduling result of the next cycle. Compared to related technologies where network nodes freely compete for the channel, this method avoids random backoff conflicts at the air interface. Each network node can send data sequentially under the centralized control of the control node, thereby improving the overall transmission efficiency of the network.
[0009] In one possible design, the method further includes: the control node receiving first response messages reported by the M network nodes respectively, the first response messages indicating that the network nodes have competed for the channel; the control node determining P network nodes to be scheduled in the next scheduling cycle based on the first response messages and the service information reported by the N network nodes respectively, where P is a positive integer and P is less than or equal to N; and the control node sending a second scheduling message to the P network nodes, the second scheduling message indicating that the P network nodes are allowed to compete for the channel.
[0010] In this design, the control node can make timely decisions on the scheduling result of the next scheduling cycle based on the status of the M network nodes competing for the channel in the current scheduling cycle. This allows the centralized scheduling control of the control node to improve the overall network transmission efficiency and performance.
[0011] In one possible design, the method further includes: the control node updating the service information of the network node through at least one of the following methods:
[0012] Method 1: The control node receives the second response message reported by the M network nodes respectively. The second response message is used to indicate the service information updated by the network nodes before or after the completion of service data transmission in the current scheduling period.
[0013] Method 2: The control node receives the updated service information periodically reported by the N network nodes.
[0014] In this design, the control node can obtain the latest business information of the network node in a timely manner based on the latest business information reported by the network node, thereby obtaining more accurate decision-making results and improving the overall network transmission efficiency.
[0015] In one possible design, the service information includes, but is not limited to, at least one of the following: service type, service traffic, service latency, and service priority. The control node determines the M network nodes to be scheduled in the current scheduling cycle based on the service information reported by the N network nodes. This can be implemented as follows: if the service information reported by the N network nodes includes the service type, the priority of the network node is determined based on the service type and a pre-configured service type priority; if the service information reported by the N network nodes includes the service traffic, the priority of the network node is determined based on the service traffic; if the service information reported by the N network nodes includes the service latency, the priority of the network node is determined based on the service latency; if the service information reported by the N network nodes includes the service priority, the priority of the network node is determined based on the service priority; and the control node determines the M network nodes to be scheduled in the current scheduling cycle based on the priorities of the network nodes.
[0016] In this design, the control node can make more accurate decisions on the order in which network nodes are scheduled based on the statistical service information of the network nodes, thereby improving the overall transmission efficiency of the network and enhancing network performance.
[0017] In one possible design, before the control node sends the first scheduling message to the M network nodes, the method further includes: if the control node receives a first request message reported by the first network node, or if the control node determines that the service information of the first network node also includes priority request information, then the control node determines that the first network node requests priority channel occupancy; wherein the first request message or the priority request information is used to request priority channel occupancy to send or receive first data; after receiving a first indication message reported by the first network node, the control node initiates scheduling for the current scheduling period, the first indication message being used to indicate that the first network node has sent or received the first data; or, after receiving a first indication message reported by the first network node, the control node initiates scheduling for the second network node in the current scheduling period, the second network node and the first network node satisfying preset conditions; the preset conditions include the following information: the second network node and the first network node are on the same channel, the first network node detects that the signal strength of the second network node is greater than a specified threshold, or the second network node detects that the signal strength of the first network node is greater than a specified threshold.
[0018] In this design, network nodes can also be designed to have special requirements for priority access to the channel. Based on the network nodes' requirements, the control node can prioritize network nodes with priority access to the channel for timely service transmission. This can avoid problems such as increased latency and decreased network throughput caused by network nodes failing to process services in a timely manner, thereby improving the overall network performance.
[0019] In one possible design, the first scheduling message includes the following information: network node identifier and scheduling start information. This design, by controlling the centralized scheduling of network nodes, avoids conflicts caused by free competition and random backoff among network nodes, and improves the overall network transmission efficiency.
[0020] In one possible design, the service information or the first scheduling message is sent via one of the following methods: a custom data frame, an Ethernet frame, or an Optical Network Terminal Management and Control Interface (OMCI) protocol frame. In this design, the interaction messages between the control node and the network node can be implemented by adding new frames or by reusing existing frames, thereby achieving the method provided in this application and avoiding random backoff conflicts over the air interface.
[0021] Secondly, embodiments of this application provide a scheduling method, the method comprising: a network node reporting service information to a control node, the service information being used to indicate information about service data that the network node needs to transmit through a channel; the network node receiving a first scheduling message sent by the control node, the first scheduling message being used to indicate that the network node is allowed to compete for the channel; and the network node competing for the channel according to the first scheduling message.
[0022] In one possible design, the method further includes: the network node reporting a first response message to the control node, the first response message being used to indicate that the network node has won the channel.
[0023] In one possible design, the method further includes: the network node updating service information to the control node through at least one of the following methods:
[0024] Method 1: The network node reports a second response message to the control node. The second response message is used to indicate the service information updated by the network node before or after the completion of service data transmission in the current scheduling cycle.
[0025] Method 2: The network nodes periodically report updated business information.
[0026] In one possible design, the business information includes at least one of the following: business type, business traffic, business latency, and business priority.
[0027] In one possible design, the method further includes: if the network node detects the existence of first data to be sent or received, reporting a first request message to the control node, the first request message being used to request priority access to the channel to send or receive the first data; or, if the network node detects the existence of first data to be sent or received, carrying priority request information through the service information, the priority request information being used to request priority access to the channel to send or receive the first data; after the network node has sent or received the first data, reporting a first indication message to the control node, the first indication message being used to indicate that the network node has sent or received the first data.
[0028] In one possible design, the first scheduling message includes the following information: network node identifier and scheduling start information.
[0029] In one possible design, the service information or the first scheduling message is sent via one of the following methods: custom data frame, Ethernet frame, or OMCI protocol frame.
[0030] Thirdly, embodiments of this application provide a scheduling system, the system including a control node and N network nodes; wherein the control node can execute the method provided in any possible design of the first aspect above, and each of the network nodes can execute the method provided in any possible design of the second aspect above.
[0031] Fourthly, embodiments of this application provide a scheduling device, which includes a transceiver unit and a processing unit. The functions performed by the transceiver unit and the processing unit can correspond to the steps of the control node involved in any possible design or implementation of the first aspect described above.
[0032] Fifthly, embodiments of this application provide a scheduling device, which includes a transceiver unit and a processing unit. The functions performed by the transceiver unit and the processing unit can correspond to the steps performed by network nodes in any possible design or implementation of the second aspect described above.
[0033] Sixthly, embodiments of this application also provide a network device, the network device including one or more processors coupled to a memory storing computer program code, the computer program code including computer instructions. The processor executes the computer instructions in the memory to perform the methods provided in any possible design of the first aspect described above. Optionally, the network device further includes a communication interface, the processor being coupled to the communication interface. The communication interface may be a transceiver or an input / output interface; when the network device is a chip included in the network device, the communication interface may be the chip's input / output interface. Optionally, the transceiver may be a transceiver circuit, and the input / output interface may be an input / output circuit.
[0034] In a seventh aspect, embodiments of this application also provide a network device, the network device including one or more processors and a memory, the memory being coupled to the processor, the memory storing computer program code, the computer program code including computer instructions. The processor executes the computer instructions in the memory to perform the methods provided in any possible design of the second aspect above. Optionally, the network device further includes a communication interface, the processor being coupled to the communication interface. The communication interface may be a transceiver or an input / output interface; when the network device is a chip included in the network device, the communication interface may be the chip's input / output interface. Optionally, the transceiver may be a transceiver circuit, and the input / output interface may be an input / output circuit.
[0035] Eighthly, embodiments of this application also provide a wireless networking system, including the network device as provided in the sixth aspect above, and N network devices as provided in the seventh aspect above.
[0036] In a ninth aspect, embodiments of this application also provide a computer-readable storage medium storing a computer program that, when executed by a computer, enables the implementation of a method provided in any possible design of the first aspect, or enables the implementation of a method provided in any possible design of the second aspect.
[0037] In a tenth aspect, embodiments of this application also provide a computer program product comprising: computer program code, which, when executed by a processor of a network device, causes the network device to perform the method in any possible design of the first aspect, or causes the network device to perform the method in any possible design of the second aspect.
[0038] Eleventhly, embodiments of this application also provide a chip for reading and executing software programs stored in a memory to implement the method in any possible design of the first aspect above, or to implement the method in any possible design of the second aspect above. The memory may be connected to the chip, or the memory may be built into the chip.
[0039] For details on the beneficial effects of any of the second to eleventh aspects mentioned above, please refer to the beneficial effects of the various possible designs in the first aspect mentioned above; they will not be repeated here. Attached Figure Description
[0040] Figure 1 This is a schematic diagram of a possible WLAN network architecture in an embodiment of this application;
[0041] Figure 2 This is a schematic diagram of the EDCA parameter set in the embodiments of this application;
[0042] Figure 3 This is a schematic diagram of a possible EDCA parameter configuration for the STA side in an embodiment of this application;
[0043] Figure 4 This is a schematic diagram of a possible contention channel in an embodiment of this application;
[0044] Figure 5A This is a schematic diagram of an optical communication system topology applied to FTTR in an embodiment of this application;
[0045] Figure 5B This is a schematic diagram of another optical communication system topology for home networks in this application embodiment;
[0046] Figure 6 This is a schematic diagram of one possible scheduling method in the embodiments of this application;
[0047] Figure 7A This is a second schematic diagram of a possible scheduling method in the embodiments of this application;
[0048] Figure 7B Example of a first request message provided for this application;
[0049] Figure 7C Example of a first instruction message provided for this application;
[0050] Figure 8 Examples of scheduling messages provided in this application;
[0051] Figure 9 This is a schematic diagram of a possible scheduling method in the embodiments of this application;
[0052] Figure 10 Example of a first response message provided for this application;
[0053] Figure 11 Example of a second response message provided for this application;
[0054] Figures 12A-12E Examples of Ethernet frames provided in embodiments of this application;
[0055] Figure 13 Examples of OMCI protocol frames provided in embodiments of this application;
[0056] Figure 14 This is a schematic diagram of the structure of a scheduling device according to an embodiment of this application;
[0057] Figure 15 This is a schematic diagram of another scheduling device in the embodiments of this application;
[0058] Figure 16 This is a schematic diagram of the structure of a chip provided in an embodiment of this application. Detailed Implementation
[0059] It should be understood that the terms "an embodiment," "an implementation," "an embodiment," or "an example" used throughout the specification mean that a specific feature, structure, or characteristic related to the embodiment is included in at least one embodiment of this application. Therefore, the phrases "in an embodiment," "an implementation," "an embodiment," or "an example" appearing throughout the specification do not necessarily refer to the same embodiment. Furthermore, these specific features, structures, or characteristics can be combined in any suitable manner in one or more embodiments. It should be understood that in the various embodiments of this application, the sequence numbers of the above processes do not imply a sequential order of execution; the execution order of each process should be determined by its function and internal logic, and should not constitute any limitation on the implementation process of the embodiments of this application.
[0060] Furthermore, the terms "system" and "network" are often used interchangeably in this document. The term "and / or" in this document merely describes the relationship between related objects, indicating that three relationships can exist. For example, A and / or B can represent: A alone, A and B simultaneously, or B alone. Additionally, the character " / " in this document generally indicates that the preceding and following related objects have an "or" relationship. It should be understood that in the embodiments of this application, "B corresponding to A" means that B is associated with A, and B can be determined based on A. However, it should also be understood that determining B based on A does not mean determining B solely based on A; B can also be determined based on A and / or other information. And, unless otherwise stated, the ordinal numbers such as "first" and "second" mentioned in the embodiments of this application are used to distinguish multiple objects and are not used to limit the order, sequence, priority, or importance of multiple objects. Furthermore, the terms "comprising" and "having" in the embodiments, claims, and drawings of this application are not exclusive. For example, a process, method, system, product, or device that includes a series of steps or modules is not limited to the listed steps or modules and may also include steps or modules not listed.
[0061] See Figure 1 The diagram illustrates a possible WLAN network architecture, which includes a wireless controller (also referred to as a "control node" in this embodiment), wireless access points (also referred to as "network nodes" in this embodiment), and terminal devices. The wireless controller is used to configure services and radio frequency for the access points. The wireless access point (AP) is used to provide service access to associated STAs. Terminal devices, acting as STAs, can be associated with the access point.
[0062] Terminal devices can include mobile phones (or "cellular" phones), computers with mobile terminal devices, portable, pocket-sized, handheld, and computer-embedded mobile devices, etc. Examples include Personal Communication Service (PCS) phones, cordless phones, Session Initiation Protocol (SIP) phones, Wireless Local Loop (WLL) stations, Personal Digital Assistants (PDAs), and other devices. Terminal devices can also be computers, tablets, e-readers, and smart home devices such as smart TVs and smart speakers. As an example and not a limitation, in this embodiment, the terminal device can also be a wearable device. Wearable devices, also known as wearable smart devices or smart wearable devices, are a general term for devices that utilize wearable technology to intelligently design and develop everyday wearables, such as glasses, gloves, watches, clothing, and shoes. Wearable devices are portable devices worn directly on the body or integrated into the user's clothing or accessories. Wearable devices are not merely hardware devices; they achieve powerful functions through software support, data interaction, and cloud interaction. Wearable smart devices in a broad sense include those that are feature-rich, large in size, and can perform all or part of their functions without relying on a smartphone, such as smartwatches or smart glasses, as well as those that focus on a specific type of application function and require the use of other devices such as smartphones, such as various smart bracelets, smart helmets, and smart jewelry for vital sign monitoring.
[0063] It's important to note that the Wi-Fi channel is shared by the AP and STAs. Currently, each AP and STA uses its own set of Enhanced Distribution Channel Access (EDCA) parameters to compete for the Wi-Fi channel and gain transmission opportunities. The configuration of the EDCA parameters is determined by the AP. Each AP configures its own EDCA parameters and broadcasts them to all STAs connected to that AP. Multiple STAs connected to the same AP need to follow the same set of EDCA parameters broadcast by the AP. The AP can broadcast EDCA parameters via Beacon frames. A Beacon frame is a periodically triggered management frame defined by the 802.11 WLAN protocol. Beacon frames carry various essential network information. They include the EDCA parameter set broadcast by the AP to the STAs. Beacon frames can also include the EDCA parameter set used by the AP itself. EDCA parameter set elements include Quality of Service (QoS) parameter sets. The QoS parameter set includes QoS parameters for different access categories (ACs) for each STA. Access categories are also called access classes. Access categories include: AC_BE (best effort), AC_BK (background), AC_VI (video), and AC_VO (voice). Each access category has QoS parameters (i.e., access channel configuration parameters), such as the minimum and maximum size of the exponential form of contention window (ECM), and transmission opportunity (TXOP) limits. By setting different values for the QoS parameters of each access category, some real-time multimedia services (such as AC_VI and AC_VO type services) can have more opportunities to access the channel, thereby reducing latency, making data transmission smoother, and improving the user experience.
[0064] For example, see Figure 2 The image shows the EDCA parameter set included in a Beacon frame. The element ID is a unique identifier for each element in the EDCA parameter set, used to distinguish it from other elements. The length is the parameter length of each element in the EDCA parameter set, excluding the element ID and length fields.
[0065] The Quality of Service (QoS) information field also includes a sub-option called EDCA parameter set updatecount, which is used to notify the terminal whether EDCA parameter set elements have changed.
[0066] The EDCA parameter set element also includes parameter record fields for each access category. Each parameter record field defines the QoS parameters that the STA uses when executing that access category, such as... Figure 2 As shown, the parameter record fields for each access category include the AC index (ACI) / arbitration interframe spacenumber (AIFSN), exponential contention window, and transmission opportunity (TXOP) limit.
[0067] AIFSN is included in ACI / AIFSN. AIFSN indicates the number of time slots delayed after the short interframe space (SIFS) time when the AP (or STA) accesses the network. The smaller this parameter value, the shorter the time the AP (or STA) waits to access the Wi-Fi channel.
[0068] ECW is the competition window size of EDCA, which determines the average backoff time. The smaller the value, the shorter the average backoff time. The ECW parameter includes the minimum size of ECW (ECWmin) and the maximum size of ECW (ECWmax).
[0069] The TXOP limit indicates the time limit for a STA to occupy a Wi-Fi channel to transmit data. The larger the value, the longer the STA can continuously occupy the channel.
[0070] The AP broadcasts EDCA parameter set elements to the STA. These elements include the QoS parameter sets configured by the AP for each access category. The AP configures different QoS parameters for different access categories. For example, for AC_VI and AC_VO, which require real-time transmission, a smaller AIFSN, ECWmin, and ECWmax, and a larger TxOP are configured, while for other access categories, a larger AIFSN, ECWmin, and ECWmax, and a smaller TxOP are configured. This ensures that AC_VI and AC_VO services have higher priority when accessing the Wi-Fi channel, while other services have lower priority, meeting the needs of real-time services and achieving a better service experience. As an example, a possible EDCA parameter configuration for the STA side is as follows: Figure 3 As shown.
[0071] See Figure 4 As shown, after receiving the EDCA parameter set elements, when the STA needs to use the channel to send service data, the STA listens to whether the channel is busy. When it detects that the channel is idle, it starts the AIFS (AIFS = SIFS (16us) + AIFSN (AC) × slot (9us)) countdown. Figure 4 As shown, the higher the priority of an AC service, the shorter the AIFS (Advanced AIFS). When the AIFS countdown reaches 0, the backoff countdown begins. The backoff countdown is determined by CWmin. The backoff countdown for each STA is randomly selected from 0 to CWmin, and the backoff countdown time = backoff countdown * slot (9us). The higher the priority of the AC, the smaller the initial value of CWmin, and the more likely the randomly selected backoff countdown is to be smaller. Channels can be preempted. After preempting the channel, the channel occupation duration is determined by the TxOP value. VI and VO services can occupy the channel for a longer time compared to BE and BK services. In addition, APs usually also need to use the channel to transmit service data, such as some control information. Currently, the implementation methods of AP channel contention are... Figure 4 The implementation shown in the STA diagram is similar.
[0072] As described in the background section, with the development of networks, the number of devices in home networks is increasing, and the probability of multiple devices competing for Wi-Fi channels at the same time is also increasing. Therefore, multiple devices competing for Wi-Fi channels at the same time may cause random backoff conflicts, leading to packet failures, reduced network throughput, and increased service latency.
[0073] In view of this, embodiments of this application provide a scheduling method to provide a feasible way to avoid random backoff conflicts on the air interface, thereby improving the efficiency of data transmission through the channel in the wireless network and improving the overall network performance of the wireless network.
[0074] This application's embodiments are applicable to WLAN deployments using Fiber to the Room (FTTR). In FTTR, fiber optic cables are laid to each room, and home gateways are interconnected by deploying edge network devices in each room. FTTR can meet the high bandwidth and latency requirements of new business applications such as online education, home office, and home entertainment. Edge network devices can be edge ONTs, access points (APs), or sub-fiber units (SFUs), i.e., they can act as network nodes in the wireless network. In FTTR application scenarios, gateway devices are deployed to manage the edge network devices. Gateway devices can be optical gateways, ONTs, PON gateways, or main fiber units (MFUs), i.e., they can act as control nodes in the wireless network.
[0075] As an example, see Figure 5A The diagram illustrates a topology of an optical communication system applied to FTTR. An optical communication system applied to FTTR includes at least an optical gateway, a splitter, and multiple edge optical network terminals (edge ONTs). In this embodiment, the edge ONT can also be called an EDGE ONT or an Edge ONT. The optical gateway can communicate with multiple EDGE ONTs separately through the splitter. The optical communication system also includes an OLT. The optical gateway is deployed between the OLT and the edge ONTs. In the FTTR scenario, the optical gateway connects to the home information box via fiber optic cable, and then connects to each room via the splitter. Each room deploys one edge ONT, and the optical gateway at the information box collaboratively manages multiple Edge ONTs. In the FTTR architecture, multiple ONTs are connected to the optical gateway via optical fiber, and control and management resources do not occupy Wi-Fi air interfaces. Compared to multi-AP Wi-Fi cascading solutions, this improves the real-time performance of optical gateway management. Terminal devices can access the Edge ONTs to achieve network communication.
[0076] As another example, see Figure 5B The diagram shows a different optical communication system topology for home networks. The optical communication system includes at least an ONT and multiple APs. The ONT is used for collaborative management of the APs deployed in each room.
[0077] FTTR optical communication systems can employ passive optical networks (PONs). PONs can be gigabit-capable PONs (GPONs), Ethernet passive optical networks (EPONs), 10Gb / s Ethernet passive optical networks (10G-EPONs), time and wavelength division multiplexing passive optical networks (TWDM-PONs), 10gigabit-capable passive optical networks (XG-PONs), or 10-gigabit-capable symmetric passive optical networks (XGS-PONs), etc. Future advancements will increase PON speeds to 25Gbps, 50Gbps, or even 100Gbps; therefore, this application also allows for the application of PONs with even higher transmission rates.
[0078] This application leverages the advantages of the gateway device's collaborative management of edge network devices under the FTTR architecture. The network device centrally decides the order in which edge network devices compete for channels, thus avoiding random backoff conflicts and optimizing overall network performance. It should be noted that this application can also be applied to non-FTTR architectures; any communication system architecture consisting of control nodes and network nodes is suitable for this application. The above example using the FTTR architecture is not intended to limit the scope.
[0079] The method provided in the embodiments of this application will be described in detail below with reference to the accompanying drawings.
[0080] See Figure 6 This is an interactive flowchart of a scheduling method provided in an embodiment of this application.
[0081] Step 601: The control node receives data from N network nodes (e.g., ...). Figure 6The network nodes 1 to N shown are for illustrative purposes only. It should be noted that network nodes 1 to N are used only to distinguish the service information reported by each node. This service information indicates the service data that the network nodes need to transmit through the channel, and N is a positive integer. For example, the service information may include, but is not limited to, the following: service type, service traffic, service latency, and service priority. It should also be noted that the control node itself can also be a network node. In this scenario, the N network nodes may also include the control node, in which case the control node can receive its own reported service information through internal reporting or other means.
[0082] For example, the control node can receive service information from network nodes multiple times. When deciding which network node to schedule in each scheduling cycle, the control node can make a centralized decision based on the latest service information of each network node.
[0083] In one optional embodiment, N network nodes can periodically report service information, for example, once per second. This allows the control node to make centralized scheduling decisions based on the latest service information from each network node, thereby improving scheduling accuracy and overall network performance in the wireless network. Each network node can also be configured with different periods; for example, a network node with more connected terminal devices can have a shorter period, while a network node with fewer connected terminal devices can have a longer period. Furthermore, in this implementation, each network node can monitor service traffic at different times and set different periods for different time periods, such as a longer period in the early morning and a shorter period in the evening. This ensures scheduling accuracy while reducing resource consumption by network nodes and the control node.
[0084] In another optional embodiment, the network node may also report updated service information to the control node before or after each scheduling and completion of service data transmission via the channel. This allows the control node to obtain the latest service information of the network node in a timely manner, thereby generating a more accurate scheduling decision. Specifically, after the network node scheduled in the previous scheduling cycle has secured the channel, and before or after the completion of service data transmission, the control node receives a second response message reported by the network node. Based on the second response message, the control node obtains the latest service information of the network node to accurately determine the network node to be scheduled in the current scheduling cycle.
[0085] It should be noted that this application does not limit the implementation method of each network node reporting business information to the control node. Some network nodes (such as unscheduled network nodes) may update business information through periodic reporting, while some scheduled network nodes may promptly report updated business information through a second response message when they are scheduled. Alternatively, scheduled network nodes may also update business information through periodic reporting at the same time.
[0086] Furthermore, after receiving updated service information from a network node, the control node updates the previously acquired service information of that network node. Optionally, the control node can discard historical service information and use the updated service information as the network node's service information; alternatively, it can incrementally update the previously acquired network node's service information based on the updated service information. The implementation can be determined according to the actual scenario.
[0087] Furthermore, in scenarios involving the initial construction of a wireless network or the presence of newly connected network nodes (e.g., newly added network nodes or network nodes that have been powered on and off after a power outage), each network node can report initial service information. This serves two purposes: firstly, it notifies the control node of the existence of a new network node, and secondly, it allows the control node to obtain the service information of that network node. On the other hand, the control node provided in this application embodiment has the function of centrally scheduling network nodes to send data. If a network node fails to receive service information from another network node, or fails to successfully receive a response message from a network node after scheduling it, the control node can proactively send scheduling information for testing, avoiding scheduling anomalies due to equipment failure, message transmission loss, or other issues. For example, when the control node cannot determine the network node to be scheduled based on its service information, it can sequentially schedule connected network nodes through scheduling messages.
[0088] Step 602: The control node determines the M network nodes to be scheduled in the current scheduling cycle (e.g., based on the service information reported by the N network nodes respectively) according to the service information reported by the N network nodes respectively. Figure 6 The network nodes are defined as N, from Node 1 to Node M (where Node 1 to Node M are used only for differentiation), and M is a positive integer; it is understood that M is less than or equal to N. Furthermore, if the control node determines that there are no network nodes to be scheduled in the current scheduling cycle (i.e., M is 0, for example, when all network nodes remain silent), the control node can preset a time period before making a decision for the next scheduling cycle; the preset time period can be determined according to the set scheduling cycle, and the duration of the scheduling cycle can be different in different time ranges.
[0089] To avoid air interface contention and improve overall network performance and transmission efficiency, the control node can determine that the M scheduled network nodes do not interfere with each other, in order to improve the overall network performance and transmission efficiency of the wireless network. Optionally, if the first network node and the second network node are on different channels, and it can be determined that there is no interference between them, the control node can schedule both the first and second network nodes simultaneously in the current scheduling period. Alternatively, if the first and second network nodes are far apart and their coverage areas do not overlap, it can also be determined that there is no interference between them, and the control node can schedule both the first and second network nodes simultaneously in the current scheduling period. If the first and second network nodes cannot scan each other, or even if they scan each other, the detected signal strength is less than or equal to a specified threshold, it can be determined that there is no interference between them due to their large distance.
[0090] In one alternative embodiment, the control node may determine the priority of network nodes based on at least one of the following methods, and then decide which network nodes to schedule based on their priorities:
[0091] 1) If the service information reported by the N network nodes includes the service type, the priority of the network nodes shall be determined according to the service type and the pre-configured service type priority.
[0092] For example, service types can be represented as AC_BE, AC_BK, AC_VI, and AC_VO in the aforementioned embodiments. If the service type of a network node is a multimedia real-time service (such as AC_VI or AC_VO type services), then the network node can be determined to have a higher priority. It should be noted that the pre-configured service types can also be configured using other types, and the priority corresponding to each service type can also be pre-configured according to the actual application scenario; this application does not limit this.
[0093] 2) If the service information reported by the N network nodes includes the service traffic, the priority of the network nodes is determined based on the service traffic. The higher the service traffic of a network node, the higher its priority can be determined by the control node. This implementation method allows for priority scheduling of network nodes with high service traffic demands. For example, assuming the network contains network node 1 and network node 2, and network node 1 reports 1024MB of service traffic while network node 2 reports 10MB, since network node 1's service traffic is greater than that of network node 2, the control node can prioritize scheduling network node 1. This avoids problems such as excessive storage pressure in the network due to network node 1 being unable to send services.
[0094] 3) If the service information reported by the N network nodes includes the service delay, the priority of the network nodes is determined according to the service delay.
[0095] In this implementation, the higher the latency requirement of a network node, the higher its priority is determined by the control node; conversely, the greater the latency of a network node's service, the higher its priority is determined by the control node. This approach can satisfy the latency requirements of certain services. For example, if service 1 requires a latency of less than 7ms, while service 2 has no latency requirement, the control node can prioritize scheduling network node 1, which requests service 1. It also avoids impacting the overall network transmission efficiency when a network node with a higher latency is scheduled. For instance, assuming the network contains network node 1 and network node 2, and network node 1 reports a latency of 10s while network node 2 reports a latency of 1s, the control node can prioritize scheduling network node 1 because its latency is higher than that of network node 2.
[0096] 4) If the service information reported by the N network nodes includes the service priority, the priority of the network nodes shall be determined according to the service priority.
[0097] For example, service priorities can be pre-set, such as setting service 1 as the highest priority and service 2 as the lowest priority. Alternatively, they can be determined based on user account information. For example, if user 1 has a VIP membership on a specified platform, then when the network node transmits services corresponding to that specified platform, it identifies the service data corresponding to user 1 as having service priority.
[0098] When determining the priority of network nodes based on multiple methods mentioned above, the control node can also combine the weights corresponding to each method to determine the priority of the network nodes. For example, the weight corresponding to service priority can be 50%, the weight corresponding to service type can be 20%, the weight corresponding to service traffic can be 15%, and the weight corresponding to service latency can be 15%. In this way, the control node can comprehensively consider multiple scenarios of service data from each network node to obtain a more accurate decision result.
[0099] It should be noted that in the above methods, the control node can also directly select the network node to be scheduled based on the information contained in the network node's service information, without having to indirectly determine the priority of the network node first and then select the network node to be scheduled.
[0100] In another optional embodiment, if there is a need for the first network node to send or receive the first data first, the control node may also determine, according to the request of the first network node, not to start the scheduling of the current scheduling period, and reserve a certain time window for the first network node so that the first network node can occupy the channel first; or, the first network node may be scheduled first, for example, the first network node may be scheduled first before the M network nodes of the current period are scheduled.
[0101] In one possible scenario, most services in current wireless networks are Transmission Control Protocol (TCP) services. The throughput of TCP transmission is often affected by round-trip time (RTT), which is the time it takes for the sender to start sending data and for the sender to receive an acknowledgment from the receiver. A lower RTT generally results in higher TCP throughput. In this scenario, if there is interference in the air interface due to contention, the time required for TCP acknowledgment (ACK) messages will increase, leading to a higher RTT and consequently impacting the overall network transmission efficiency.
[0102] Based on this, during the implementation of this application, each network node can detect whether there is a need to prioritize occupying the channel to send or receive the first data. For example, in the scenario described above, it is necessary to prioritize occupying the channel to receive TCP ACK messages to avoid increasing RTT. Assuming that a first network node has a need to send or receive the first data, the first network node can report a first request message, which is used to request priority occupation of the channel to transmit the first data; or, the first network node can also carry priority request information for requesting priority occupation of the channel when reporting service information (or sending a first response message or a second response message, etc.).
[0103] Specifically, the priority request information includes a request type, which identifies the type of scheduling request the network node is making to the control node. Optionally, the request type field is 1 byte in length.
[0104]
[0105] As shown in the table above, if the 0th bit of the request type field is 0, it indicates that the default downlink scheduling means that the network node accepts the scheduling of the control node in the downlink direction by default.
[0106] If the 0th bit of the request type field is 1, it indicates a downlink scheduling request, that is, the network node requests the control node to give it priority scheduling in the downlink direction so as to occupy the downlink channel first;
[0107] If the first and second bits of the request type field are 00, it indicates that the default uplink scheduling means that the network node accepts the control node's scheduling in the uplink direction by default.
[0108] If the first and second bits of the request type field are 0 and 1, it indicates an uplink scheduling request, that is, the network node requests the control node to give it priority scheduling in the uplink direction so as to occupy the uplink channel first. For example, the network node requests the control node to send it a trigger frame to trigger the network node to occupy the uplink channel immediately.
[0109] If the first and second bits of the request type field are 10, it indicates an air interface reservation request. The network node requests the control node to reserve an air interface for it in the uplink direction so that the network node can occupy the uplink channel first.
[0110] It is easy to understand that if all bits of the request type field are 0, it means that the network node accepts the scheduling of the control node in the uplink and downlink directions by default.
[0111] If the control node receives the first request message, or obtains the priority request information from other messages sent by the network node, it can determine that the first network node has a need to occupy the channel preferentially. In implementation of this application, depending on the actual network configuration, the control node can notify the first network node to occupy the channel preferentially by sending an authorization message; alternatively, the control node can directly adjust the centralized scheduling decision or order based on the first network node's priority request. Under this configuration, the first network node can directly transmit data through the channel after sending the first request message or priority request information.
[0112] Optionally, the control node can determine, based on the priority request information contained in the first request message or service information, whether to not initiate scheduling for the current scheduling period, to prioritize scheduling of the first network node, or to not initiate scheduling of the second network node that may interfere with the first network node in the current scheduling period. See also Figure 7A This is a schematic diagram of the interaction flow of a scheduling method provided in an embodiment of this application. Before the control node performs scheduling for the current scheduling period through step 603, the control node and the network node may also have the following interaction flow:
[0113] Step 701: If a first network node detects that there is first data to be sent or received. For example, typically after a network node sends 2-3 TCP data packets to the receiver, the receiver will reply with a TCP ACK message. Based on this, each network node can count the number of TCP data packets sent. If the number exceeds a preset threshold (let's say n, where n can be 2 or 3, etc.), then it can be determined that the network node has first data to be sent or received. The first network node can be any one of N network nodes. Figure 7A The first network node is used as an example; in a specific implementation, the first network node can also be any of the M network nodes, and this application does not impose any limitation on it.
[0114] Step 702: The first network node reports a first request message, which is used to request priority access to the channel for sending or receiving first data. (See also...) Figure 7B This is an example of a first request message provided in an embodiment of this application. The first request message may include, but is not limited to, the following information: message type, network node identifier, priority request, and reserved bits. The message type indicates that the message is a first request message, and the network node identifier indicates a first network node. The reserved bits are fields reserved in advance for functions to be developed or functions not yet developed, used to extend message functionality. The same applies to reserved bits in subsequent embodiments, and will not be repeated hereafter.
[0115] Step 703: Based on the first request message, the control node determines whether to initiate scheduling for the current scheduling period; or to prioritize scheduling the first network node; or to determine whether to initiate scheduling for the second network node that meets preset conditions with the first network node in the current scheduling period. The preset conditions include the following: the second network node and the first network node are on the same channel; the first network node detects that the signal strength of the second network node is greater than a specified threshold, or the second network node detects that the signal strength of the first network node is greater than a specified threshold. That is, if the second network node and the first network node simultaneously compete for the channel, a backoff conflict may occur. Conversely, if the first network node and the second network node are on different channels, or if there is no overlapping coverage area due to the distance, then even if the first network node and the second network node transmit data through the channel simultaneously, there will be no backoff conflict. Based on this, the control node can improve the efficiency of data transmission by allowing multiple network nodes to compete for the channel.
[0116] Furthermore, if the control node determines that the first network node is one of the M network nodes scheduled in the current scheduling cycle, the control node can continue the scheduling for the current cycle. This not only satisfies the requirement of the first network node to occupy the channel preferentially but also ensures the overall network transmission efficiency.
[0117] Step 704: The first network node determines that it has sent or received the first data.
[0118] Step 705: The first network node reports a first indication message, which indicates that the first network node has sent or received the first data. Optionally, if the control node determines in step 703 not to enable scheduling for the current scheduling period, then scheduling for the current scheduling period can be restored according to the first indication message. Alternatively, if the control node determines in step 703 not to enable scheduling for the second network node in the current scheduling period, then scheduling for the second network node can be restored according to the first indication message. See also Figure 7C This is an example of a first indication message provided in an embodiment of this application. The first indication message may include, but is not limited to, the following information: message type, network node identifier, first data that has been transmitted (sent or received), and reserved bits.
[0119] Furthermore, it is understandable that in each scheduling cycle, a network node could initiate, for example... Figure 7A The interaction process shown is used to prioritize occupying the channel to send or receive the first data. The above is just an example of one scheduling cycle.
[0120] Step 603: The control node sends a first scheduling message to the M network nodes, the first scheduling message indicating that the M network nodes are allowed to compete for the channel. Optionally, the control node can send the first scheduling message to the M network nodes via unicast. Alternatively, the control node can also send the first scheduling message via broadcast or multicast to ensure that the M network nodes receive the first scheduling message.
[0121] See Figure 8The following is an example of a scheduling message provided in this application. The scheduling message (which may be the first scheduling message or the second scheduling message involved in the following embodiments) may include, but is not limited to, the following: message type, network node identifier, scheduling enable information, air interface rate, aggregation number, transmit power, and reserved bits. The scheduling enable information may indicate whether scheduling is enabled or disabled, and each network node can determine whether to enable scheduling based on the network node identifier; alternatively, the scheduling enable information may only indicate that scheduling is enabled, in which case the network node identifier may only contain the network node being scheduled. For example, the scheduling message may also include information indicating the following: power, channel, antenna polarization direction, antenna beam direction, etc.
[0122] Step 604: The M network nodes compete for the channel according to the first scheduling message. For example, if a network node receives the first scheduling message, and the first scheduling message contains the network node's identifier and indicates that scheduling is enabled, then the network node can compete for the channel. Furthermore, the network node transmits data only after successfully competing for the channel. Compared to related technologies where network nodes obtain the opportunity to transmit data through free competition and random backoff, this embodiment avoids conflicts that may occur due to random backoff. It is understood that if a network node does not receive the first scheduling message, or although it receives the first scheduling message but indicates that scheduling is not enabled, the network node will not compete for the channel and will continue to wait for the control node's decision on the next scheduling cycle.
[0123] In one possible implementation, after being scheduled, each network node can promptly report its scheduling status to the control node, allowing the control node to update the service information of each network node in a timely manner and achieve more accurate scheduling. (See also...) Figure 9 This is a schematic diagram of another possible scheduling method in the embodiments of this application.
[0124] Step 605: The M network nodes respectively report a first response message, which is used to indicate that the network nodes have competed for the channel.
[0125] See Figure 10 This is an example of a first response message provided in an embodiment of this application. The first response message may include, but is not limited to, the following information: message type, network node identifier, contention to channel ((backoff done, BO_done), and reserved bits.
[0126] Step 606: The control node determines P network nodes to be scheduled in the next scheduling cycle based on the first response message and the service information reported by the N network nodes respectively, where P is a positive integer; it can be understood that P is less than or equal to N. The decision-making method for the next scheduling cycle can be found in the foregoing embodiments and will not be repeated here.
[0127] Step 607: The control node sends a second scheduling message to the P network nodes. The second scheduling message indicates that the P network nodes are allowed to compete for the channel. If P is 0, the control node may also wait for a preset time before re-making a scheduling decision for the subsequent scheduling cycle.
[0128] Step 608: The M network nodes respectively report a second response message. The second response message is used to indicate the service information updated by the network node before or after the completion of service data transmission in the current scheduling period. Optionally, the network node can report the second response message immediately after the service data transmission is completed, thereby timely notifying the control node. Alternatively, if the latency requirement of the service data transmitted by the network node is not high, the network node can also report the second response message after being scheduled multiple times (allowing channel contention), thereby reducing the load in the network. In actual implementation, the specific reporting method can be adjusted according to actual needs. For example, if the actual need is more focused on the network load, a method of reporting uniformly after multiple scheduling can be adopted.
[0129] See Figure 11 This is an example of a second response message provided in an embodiment of this application. The second response message may include, but is not limited to, the following information: message type, network node identifier, transmission completion information, service traffic, service latency, service type, service priority, and reserved bits. Specifically, the service traffic, service latency, service type, and service priority in the second response message are updated service information sent by the M network nodes in the current scheduling period. This updated service information can be used as the service information re-reported by the M network nodes, and the control node can determine the network nodes to be scheduled in subsequent scheduling periods based on the updated service information.
[0130] In the foregoing embodiments, the examples of the first request message, first indication message, scheduling message, first response message, and second response message were implemented by adding new frames. In this application, it can also be implemented in a wireless network by reusing existing frames. For example, see [link to relevant documentation]. Figures 12A to 12EThis is an example of an Ethernet frame provided in an embodiment of this application. Various messages involved in the embodiments of this application are expanded in the payload field of the Ethernet frame, where the Ethernet header typically includes the destination address, source address length, and type. Another example is provided in [reference needed]. Figure 13 This is an example of an optical network terminal management and control interface (OMCI) protocol frame provided in this application embodiment. It can also be extended to the OMCI protocol frame used in passive optical network (PON) with various messages involved in the embodiments of this application. The OMCI protocol frame includes: GPON encapsulation mode (GEM) header, transaction correlation identifier, message type, device identifier, message identifier, message contents, and OMCI trailer.
[0131] The method provided in this application allows a control node to centrally control multiple network nodes. By statistically analyzing the service information of each network node, the control node can determine the order in which each network node is allowed to send data. Thus, in the network, network nodes scheduled by the control node in each scheduling cycle are allowed to compete for the channel in the current scheduling cycle and can send data through the channel, while network nodes not scheduled need to wait for the scheduling result of the next scheduling cycle. Compared to related technologies where network nodes freely compete for the channel, this method avoids random backoff conflicts on the air interface. Each network node can achieve sequential data transmission under the centralized control of the control node, thereby improving the overall transmission efficiency of the network.
[0132] Based on the same inventive concept as the above-described method embodiments, this application also provides a scheduling device 1400, such as... Figure 14As shown, the device can be installed on the control node. The scheduling device 1400 includes a transceiver unit 1401 and a processing unit 1402. The scheduling device 1400 can be used to implement the method described in the above method embodiments. The optional transceiver unit 1401 and processing unit 1402 can be interconnected via a communication line 1403. The communication line 1403 can be a peripheral component interconnect (PCI) bus or an extended industry standard architecture (EISA) bus, etc. The communication line 1403 can be divided into an address bus, a data bus, a control bus, etc. For ease of illustration, Figure 14 The bus is represented by a single thick line, but this does not mean that there is only one bus or one type of bus.
[0133] The transceiver unit 1401 is configured to receive service information reported by N network nodes respectively, wherein the service information is used to indicate the service data that the network nodes need to transmit through the channel, and N is a positive integer; the processing unit 1402 is configured to determine M network nodes to be scheduled in the current scheduling period based on the service information reported by the N network nodes respectively, wherein M is a positive integer and M is less than or equal to N; the transceiver unit 1401 is further configured to send a first scheduling message to the M network nodes, wherein the first scheduling message is used to indicate that the M network nodes are allowed to compete for the channel.
[0134] In one possible design, the transceiver unit 1401 is further configured to receive first response messages reported by the M network nodes respectively, the first response messages being used to indicate that the network nodes have competed for the channel; the processing unit 1402 is further configured to determine P network nodes to be scheduled in the next scheduling cycle based on the first response messages and the service information reported by the N network nodes respectively, where P is a positive integer and P is less than or equal to N; the transceiver unit 1401 is further configured to send a second scheduling message to the P network nodes, the second scheduling message being used to indicate that the P network nodes are allowed to compete for the channel.
[0135] In one possible design, the processing unit 1402 is further configured to update the service information of the network node by at least one of the following methods:
[0136] Method 1: The transceiver unit 1401 receives the second response messages reported by the M network nodes respectively. The second response messages are used to indicate the service information updated by the network nodes before or after the completion of service data transmission in the current scheduling period.
[0137] Method 2: Receive the updated service information periodically reported by the N network nodes through the transceiver unit 1401.
[0138] In one possible design, the service information includes at least one of the following: service type, service traffic, service latency, and service priority. When the processing unit 1402 determines the M network nodes to be scheduled in the current scheduling cycle based on the service information reported by the N network nodes, it specifically performs the following: if the service information reported by the N network nodes includes the service type, it determines the priority of the network node based on the service type and a pre-configured service type priority; if the service information reported by the N network nodes includes the service traffic, it determines the priority of the network node based on the service traffic; if the service information reported by the N network nodes includes the service latency, it determines the priority of the network node based on the service latency; if the service information reported by the N network nodes includes the service priority, it determines the priority of the network node based on the service priority; and based on the priority of the network nodes, it determines the M network nodes to be scheduled in the current scheduling cycle.
[0139] In one possible design, the transceiver unit 1401 is further configured to, before sending the first scheduling message to the M network nodes, determine that the first network node requests priority channel occupancy if it receives a first request message reported by the first network node, or if it is determined that the service information of the first network node also includes priority request information; wherein, the first request message or the priority request information is used to request priority channel occupancy to send or receive first data; the processing unit 1402 is further configured to, after receiving a first indication message reported by the first network node, perform scheduling for the current scheduling period, wherein the first indication message is used to indicate that the first network node has sent or received the first data; or, the processing unit 1402 is further configured to, after receiving a first indication message reported by the first network node, perform scheduling for the second network node in the current scheduling period, wherein the second network node and the first network node meet preset conditions; the preset conditions include the following information: the second network node and the first network node are on the same channel, the first network node detects that the signal strength of the second network node is greater than a specified threshold, or the second network node detects that the signal strength of the first network node is greater than a specified threshold.
[0140] In one possible design, the first scheduling message includes the following information: network node identifier and scheduling start information.
[0141] In one possible design, the service information or the first scheduling message is sent via one of the following methods: custom data frame, Ethernet frame, or OMCI protocol frame.
[0142] In another example, Figure 14 The scheduling device shown can also be installed on a network node. In this example, the transceiver unit 1401 is used to report service information to the control node, the service information being used to indicate the service data information that the network node needs to transmit through the channel; the transceiver unit 1401 is also used to receive a first scheduling message sent by the control node, the first scheduling message being used to indicate that the network node is allowed to compete for the channel; the processing unit 1402 is used to compete for the channel according to the first scheduling message.
[0143] In one possible design, the transceiver unit 1401 is further configured to report a first response message to the control node, the first response message being used to instruct the network node to compete for the channel.
[0144] In one possible design, the transceiver unit 1401 is further configured to update service information to the control node via at least one of the following methods:
[0145] Method 1: Report a second response message to the control node. The second response message is used to indicate the service information updated by the network node before or after the completion of service data transmission in the current scheduling period.
[0146] Method 2: Periodically report updated business information.
[0147] In one possible design, the business information includes at least one of the following: business type, business traffic, business latency, and business priority.
[0148] In one possible design, the processing unit 1402 is further configured to detect the existence of first data to be sent or received; the transceiver unit 1401 is further configured to report a first request message to the control node, the first request message being used to request priority access to the channel to send or receive the first data; the transceiver unit 1401 is further configured to report a first indication message to the control node after the first data has been sent or received, the first indication message being used to indicate that the network node has sent or received the first data.
[0149] In one possible design, the first scheduling message includes the following information: network node identifier and scheduling start information.
[0150] In one possible design, the service information or the first scheduling message is sent via one of the following methods: custom data frame, Ethernet frame, or OMCI protocol frame.
[0151] It should be noted that the module division in the embodiments of this application is illustrative and only represents a logical functional division. In actual implementation, there may be other division methods. For example, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed. Furthermore, the functional units in the various embodiments of this application may be integrated into one processing unit, exist as separate physical entities, or two or more units may be integrated into one unit. The integrated units described above can be implemented in hardware or as software functional units.
[0152] If the integrated unit is implemented as a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of this application, in essence, or the part that contributes to related technologies, or all or part of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) or processor to execute all or part of the steps of the methods of the various embodiments of this application. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.
[0153] Based on the same concept as the scheduling method described above, such as Figure 15 As shown in the illustration, this application also provides a schematic diagram of another scheduling device 1500. The scheduling device 1500 can be used to implement the methods described in the above method embodiments, as can be found in the descriptions in the above method embodiments. The scheduling device 1500 may include one or more processors 1501. The processor 1501 may be a general-purpose processor or a dedicated processor, etc. For example, it may be a baseband processor or a central processing unit. The baseband processor can be used to process communication protocols and communication data, and the central processing unit can be used to control the scheduling device (e.g., a base station, terminal, or chip, etc.), execute software programs, and process the data of the software programs. The scheduling device may include a transceiver unit to implement signal input (reception) and output (transmission). For example, the transceiver unit may be a transceiver, an RF chip, etc.
[0154] The scheduling device 1500 includes one or more processors 1501, which can implement the methods shown in the embodiments described above.
[0155] Optionally, in addition to implementing the methods of the embodiments shown above, the processor 1501 may also implement other functions.
[0156] Optionally, in one design, the processor 1501 can execute instructions that cause the scheduling device 1500 to perform the methods described in the above method embodiments. The instructions can be stored entirely or partially within the processor, such as instruction 1503, or entirely or partially stored in a memory 1502 coupled to the processor, such as instruction 1504. Alternatively, instructions 1503 and 1504 can be used together to cause the scheduling device 1500 to perform the methods described in the above method embodiments.
[0157] In another possible design, the scheduling device 1500 may include one or more memories 1502 storing instructions 1504, which can be executed on a processor to cause the scheduling device 1500 to perform the methods described in the above method embodiments. Optionally, the memories may also store data. The processor may also optionally store instructions and / or data. For example, one or more memories 1502 may store the correspondences described in the above embodiments, or related parameters or tables involved in the above embodiments. The processor and memory may be configured separately or integrated together.
[0158] In another possible design, the scheduling device 1500 may also include a transceiver 1505 and an antenna 1506. The processor 1501, which may be called a processing unit, controls the device (terminal or base station). The transceiver 1505, which may be called a transceiver, transceiver circuit, or transceiver unit, is used to realize the device's transmission and reception functions through the antenna 1506.
[0159] It should be noted that the processor in the embodiments of this application can be an integrated circuit chip with signal processing capabilities. During implementation, each step of the above method embodiments can be completed by the integrated logic circuits in the processor's hardware or by instructions in software form. The processor can be a general-purpose processor, a digital signal processor (DSP), an application-specific integrated circuit (ASIC), a field-programmable gate array (FPGA), or other programmable logic devices, discrete gate or transistor logic devices, or discrete hardware components. It can implement or execute the methods, steps, and logic block diagrams disclosed in the embodiments of this application. The general-purpose processor can be a microprocessor or any conventional processor. The steps of the methods disclosed in the embodiments of this application can be directly embodied in the execution of a hardware decoding processor, or executed by a combination of hardware and software modules in the decoding processor. The software modules can be located in random access memory, flash memory, read-only memory, programmable read-only memory, electrically erasable programmable memory, registers, or other mature storage media in the art. This storage medium is located in memory; the processor reads information from the memory and, in conjunction with its hardware, completes the steps of the above method.
[0160] It is understood that the memory in the embodiments of this application can be volatile memory or non-volatile memory, or may include both volatile and non-volatile memory. Non-volatile memory can be read-only memory (ROM), programmable read-only memory (PROM), erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), or flash memory. Volatile memory can be random access memory (RAM), which serves as an external cache. By way of example, but not limitation, many forms of RAM are available, such as static random access memory (SRAM), dynamic random access memory (DRAM), synchronous dynamic random access memory (SDRAM), double data rate synchronous dynamic random access memory (DDR SDRAM), enhanced synchronous dynamic random access memory (ESDRAM), synchronous linked dynamic random access memory (SLDRAM), and direct rambus RAM (DR RAM). It should be noted that the memory of the systems and methods described herein is intended to include, but is not limited to, these and any other suitable types of memory.
[0161] This application also provides a scheduling system, which may include the control node and N network nodes described in the above method embodiments. The control node can execute the functions described in the above method embodiments, and each network node can execute the functions described in the above method embodiments.
[0162] This application also provides a computer-readable storage medium storing a computer program thereon, which, when executed by a computer, implements the scheduling method of any of the method embodiments shown above.
[0163] This application also provides a computer program product that, when executed by a computer, implements the scheduling method of any of the above-described method embodiments.
[0164] In the above embodiments, implementation can be achieved, in whole or in part, through software, hardware, firmware, or any combination thereof. When implemented in software, it can be implemented, in whole or in part, as a computer program product. A computer program product includes one or more computer instructions. When the computer instructions are loaded and executed on a computer, all or part of the flow or function according to the embodiments of this application is generated. The computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable device. The computer instructions can be stored in a computer-readable storage medium or transmitted from one computer-readable storage medium to another. For example, computer instructions can be transmitted from one website, computer, server, or data center to another via wired (e.g., coaxial cable, fiber optic, digital subscriber line (DSL)) or wireless (e.g., infrared, wireless, microwave, etc.) means. The computer-readable storage medium can be any available medium that a computer can access or a data storage device such as a server or data center that integrates one or more available media. The available media can be magnetic media (e.g., floppy disks, hard disks, magnetic tapes), optical media (e.g., high-density digital video discs (DVDs)), or semiconductor media (e.g., solid-state disks (SSDs)).
[0165] like Figure 16 As shown, this application embodiment also provides a chip 1600, including an input / output interface 1601 and a logic circuit 1602. The input / output interface 1601 is used to receive / output code instructions or information, and the logic circuit 1602 is used to execute code instructions or, according to information, to execute the scheduling method of any of the above-described method embodiments.
[0166] Chip 1600 can implement the functions shown in the processing unit and / or transceiver unit in the above embodiments.
[0167] Those skilled in the art will recognize that the units and algorithm steps of the various examples described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, computer software, or a combination of both. To clearly illustrate the interchangeability of hardware and software, the components and steps of the various examples have been generally described in terms of functionality in the foregoing description. Whether these functions are implemented in hardware or software depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementations should not be considered beyond the scope of this application.
[0168] Those skilled in the art will clearly understand that, for the sake of convenience and brevity, the specific working processes of the systems, devices, and units described above can be referred to the corresponding processes in the foregoing method embodiments, and will not be repeated here.
[0169] In the several embodiments provided in this application, it should be understood that the disclosed apparatus and methods can be implemented in other ways.
Claims
1. A scheduling method, characterized by, include: The control node receives service information reported by N network nodes, where N is a positive integer. The control node determines the M network nodes to be scheduled in the current scheduling cycle based on the service information reported by the N network nodes respectively, where M is a positive integer and M is less than or equal to N; The service information includes request types, which are used to identify the type of scheduling requested by a network node from a control node. The request types include default downlink scheduling or downlink scheduling request, default uplink scheduling, uplink trigger scheduling request, or air interface reservation request.
2. The scheduling method of claim 1, wherein, The length of the request type is 1 byte.
3. The scheduling method according to claim 2, characterized in that, The 0th bit of the request type is 0 to indicate default downlink scheduling, and the 0th bit of the request type is 1 to indicate a downlink scheduling request.
4. The scheduling method according to claim 2 or 3, characterized in that, The first and second bits of the request type are 00 to indicate default uplink scheduling, the first and second bits of the request type are 01 to indicate uplink trigger scheduling request, the first and second bits of the request type are 10 to indicate air interface reservation request, and the first and second bits of the request type are 11 to indicate reservation.
5. The scheduling method according to any one of claims 2 to 4, characterized in that, The 3rd to 7th bits of the request type are reserved.
6. The scheduling method according to any one of claims 1 to 5, characterized in that, After determining the M network nodes scheduled for the current scheduling period, the method further includes: the control node sending a first scheduling message, the first scheduling message being used to indicate that the M network nodes are allowed to compete for the channel.
7. The scheduling method according to any one of claims 1 to 6, characterized in that, The service information is used to indicate the service data that network nodes need to transmit through the channel.
8. The scheduling method according to any one of claims 1 to 7, characterized in that, The business information includes at least one of the following: business type, business traffic, business latency, and business priority.
9. The scheduling method according to any one of claims 1 to 8, characterized in that, The control node and the network node are connected via optical fiber.
10. The scheduling method according to claim 9, characterized in that, The control node is an MFU, and the network node is an SFU.
11. A scheduling method, characterized in that, include: Network nodes report service information to control nodes. The service information includes request types, which are used to identify the type of scheduling requested by the network node from the control node. The request types include default downlink scheduling or downlink scheduling request and default uplink scheduling, uplink trigger scheduling request, or air interface reservation request. The network node receives a first scheduling message sent by the control node, the first scheduling message being used to indicate that the network node is allowed to compete for the channel; The network nodes compete for the channel based on the first scheduling message.
12. The scheduling method according to claim 11, characterized in that, The length of the request type is 1 byte.
13. The scheduling method according to claim 12, characterized in that, The 0th bit of the request type is 0 to indicate default downlink scheduling, and the 0th bit of the request type is 1 to indicate a downlink scheduling request.
14. The scheduling method according to claim 12 or 13, characterized in that, The first and second bits of the request type are 00 to indicate default uplink scheduling, the first and second bits of the request type are 01 to indicate uplink trigger scheduling request, the first and second bits of the request type are 10 to indicate air interface reservation request, and the first and second bits of the request type are 11 to indicate reservation.
15. The scheduling method according to any one of claims 12 to 14, characterized in that, The 3rd to 7th bits of the request type are reserved.
16. The method according to any one of claims 11 to 15, characterized in that, The method further includes: The network node reports a first response message to the control node, the first response message being used to indicate that the network node has won the competition for the channel.
17. The method according to any one of claims 11 to 16, characterized in that, The method further includes: The network node updates service information to the control node through at least one of the following methods: The network node reports a second response message to the control node. The second response message is used to indicate the service information that the network node updates before or after the completion of service data transmission in the current scheduling period. The network nodes periodically report updated business information.
18. The method according to any one of claims 11 to 17, characterized in that, The service information is used to indicate the service data that network nodes need to transmit through the channel.
19. The method according to any one of claims 11 to 18, characterized in that, The business information includes at least one of the following: business type, business traffic, business latency, and business priority.
20. A scheduling system, characterized in that, The system includes a control node and N network nodes, where N is a positive integer; The N network nodes are used to report service information to the control node respectively; The control node is used for: The system receives service information reported by the N network nodes. The service information includes a request type, which is used to identify the type of scheduling requested by the network node from the control node. The request type includes default downlink scheduling or downlink scheduling request, default uplink scheduling, uplink trigger scheduling request, or air interface reservation request. Based on the service information reported by the N network nodes, determine the M network nodes to be scheduled in the current scheduling cycle, where M is a positive integer and M is less than or equal to N; Send a first scheduling message, the first scheduling message being used to indicate that the M network nodes are allowed to compete for the channel; The M network nodes are also configured to receive the first scheduling message and compete for the channel according to the first scheduling message.
21. A scheduling device, characterized in that, The device includes a transceiver unit and a processing unit; The transceiver unit is used to receive service information reported by N network nodes respectively. The service information includes request types, which are used to identify the type of scheduling requested by the network node from the control node. The request types include default downlink scheduling or downlink scheduling request, and default uplink scheduling, uplink trigger scheduling request or air interface reservation request. N is a positive integer. The processing unit is configured to determine the M network nodes to be scheduled in the current scheduling cycle based on the service information reported by the N network nodes respectively, wherein M is a positive integer and M is less than or equal to N; The transceiver unit is further configured to send a first scheduling message, which indicates that the M network nodes are allowed to compete for the channel.
22. The apparatus according to claim 21, characterized in that, The transceiver unit is further configured to receive first response messages reported by the M network nodes respectively, wherein the first response messages are used to indicate that the network nodes have competed for the channel; The processing unit is further configured to determine, based on the first response message and the service information reported by the N network nodes respectively, P network nodes to be scheduled in the next scheduling cycle, wherein P is a positive integer and P is less than or equal to N; The transceiver unit is further configured to send a second scheduling message, which indicates that the P network nodes are allowed to compete for the channel.
23. The apparatus according to claim 21 or 22, characterized in that, The processing unit is also configured to update the service information of the network node through at least one of the following methods: The transceiver unit receives the second response messages reported by the M network nodes respectively. The second response messages are used to indicate the service information updated by the network nodes before or after the completion of service data transmission in the current scheduling period. The transceiver unit receives updated service information periodically reported by the N network nodes.
24. The apparatus according to any one of claims 21 to 23, characterized in that, The service information is used to indicate the service data that network nodes need to transmit through the channel.
25. The apparatus according to any one of claims 21 to 24, characterized in that, The business information includes at least one of the following: business type, business traffic, business latency, and business priority.
26. A scheduling device, characterized in that, The device includes a transceiver unit and a processing unit; The transceiver unit is used to report service information to the control node. The service information includes a request type, which is used to identify the type of scheduling requested by the network node from the control node. The request type includes default downlink scheduling or downlink scheduling request, default uplink scheduling, uplink trigger scheduling request, or air interface reservation request. The transceiver unit is further configured to receive a first scheduling message sent by the control node, the first scheduling message being used to indicate that the network nodes are allowed to compete for the channel; The processing unit is configured to compete for the channel based on the first scheduling message.
27. The apparatus according to claim 26, characterized in that, The transceiver unit is further configured to report a first response message to the control node, the first response message being used to instruct the network node to compete for the channel.
28. The apparatus according to claim 26 or 27, characterized in that, The transceiver unit is also configured to update service information to the control node through at least one of the following methods: A second response message is reported to the control node, the second response message being used to indicate the service information updated by the network node before or after the completion of service data transmission in the current scheduling period; Periodically report updated business information.
29. The apparatus according to any one of claims 26 to 28, characterized in that, The service information is used to indicate the service data that network nodes need to transmit through the channel.
30. The apparatus according to any one of claims 26 to 29, characterized in that, The business information includes at least one of the following: business type, business traffic, business latency, and business priority.