Communication method and apparatus
Patent Information
- Application Number
- CN202510423929.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-04-03
- Publication Date
- 2026-10-16
Smart Images

Figure CN122933804A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of communication technology, and in particular to a communication method and apparatus. Background Technology
[0002] In a communication system, the logical link control (LLC) sublayer of the transmitting device can encapsulate data packets from the network layer to obtain a medium access control service data unit (MSDU) and send it to the medium access control (MAC) sublayer. The MAC sublayer encapsulates the MSDU to obtain a MAC protocol data unit (MPDU) and sends it to the physical layer. The physical layer encapsulates the MPDU to obtain a physical protocol data unit (PPDU) and sends it to the receiving device.
[0003] Currently, how the transmitting device can perform MSDU transmission to reduce communication latency and improve communication performance has become an urgent technical problem to be solved. Summary of the Invention
[0004] This application provides a communication method and apparatus that can reduce communication latency and improve communication performance.
[0005] Firstly, this application provides a communication method that can be implemented by a transmitting device. Unless otherwise specified, "transmitting device" in this application can refer to the transmitting device itself, a component within the transmitting device (e.g., a processor, chip, or chip system), or a logic module or software capable of implementing all or part of the functions of the transmitting device. The method includes: acquiring a first primitive from the logical link control LLC sublayer of the transmitting device, the first primitive including a first media access control service data unit (MSDU) and time information of the first MSDU; and transmitting the first MSDU according to the time information of the first MSDU.
[0006] Based on the first aspect, the LLC sublayer of the transmitting device indicates the time information of the first MSDU to the MAC sublayer of the transmitting device through the first primitive, which enables the MAC sublayer of the transmitting device to optimize the MSDU transmission according to the time information of the first MSDU, reduce communication latency, and improve communication performance.
[0007] In one possible design, the first primitive is used by the LLC sublayer of the transmitting device to request the transmission of the first MSDU to the LLC sublayer of the receiving device from the Media Access Control (MAC) sublayer of the transmitting device.
[0008] In one possible design, the time information of the first MSDU includes one or more of the following: enqueue time, expiration time, or remaining time; wherein, the enqueue time is the time when the first MSDU arrives at the MAC sublayer of the sending device, the expiration time is the sum of the enqueue time and the upper limit of the delay corresponding to the first MSDU, and the remaining time is the time remaining before the expiration time.
[0009] Based on this possible design, if the time information of the first MSDU is its enqueue time, the sending device does not need to perform frequent and rapid calculations, simplifying the implementation and reducing computational complexity. Alternatively, if the time information of the first MSDU is its expiration time, the expiration time of each MSDU can be clearly seen, facilitating the transmission of MSDUs by the sending device's MAC sublayer based on their expiration times, thus ensuring service performance. Or, if the time information of the first MSDU is its remaining time, since the remaining time is relative, there is no need to indicate or define the link identifier of the time reference link corresponding to the remaining time, reducing signaling overhead.
[0010] In one possible design, the time information of the first MSDU also includes first indication information; the first indication information is used to indicate that the time information of the first MSDU is the enqueue time; or, the first indication information is used to indicate that the time information of the first MSDU is the expiration time; or, the first indication information is used to indicate that the time information of the first MSDU is the remaining time.
[0011] In one possible design, if the time information of the first MSDU includes the enqueue time, the time information of the first MSDU also includes the link identifier of the time reference link corresponding to the enqueue time.
[0012] In one possible design, the link identifier of the time reference link corresponding to the queuing time is the same as the service start time link identifier of the first mechanism.
[0013] Based on the two possible designs mentioned above, for MLD devices (such as AP MLD or non-AP MLD), the TSF value of each link of the MLD device can be different. Based on this, the link identifier of the time reference link corresponding to the queuing time can be carried in the time information of the first MSDU to improve the accuracy of the time information.
[0014] In one possible design, if the time information of the first MSDU includes an expiration time, the time information of the first MSDU also includes the link identifier of the time reference link corresponding to the expiration time.
[0015] In one possible design, the link identifier of the time reference link corresponding to the expiration time is the same as the service start time link identifier of the first mechanism.
[0016] Based on the two possible designs mentioned above, for MLD devices (such as AP MLD or non-AP MLD), the TSF value of each link of the MLD device can be different. Based on this, the link identifier of the time reference link corresponding to the expiration time can be carried in the time information of the first MSDU to improve the accuracy of the time information.
[0017] In one possible design, if the value of the Stream Classification Service Identifier SCSID in the first primitive is non-zero, the time information of the first MSDU includes the expiration time.
[0018] In one possible design, when the SCSID value in the first primitive is zero, the timing information of the first MSDU includes the enqueue time.
[0019] In one possible design, the first MSDU is transmitted according to its time urgency, based on the time information of the first MSDU.
[0020] Based on this possible design, the MAC sublayer of the transmitting device transmits the first MSDU according to its time urgency, based on the time information of the first MSDU. For example, MSDUs are transmitted from high to low time urgency to reduce communication latency and improve communication performance.
[0021] Secondly, this application provides a communication method that can be implemented by a transmitting device. Unless otherwise specified, "transmitting device" in this application can refer to the transmitting device itself, a component within the transmitting device (e.g., a processor, chip, or chip system), or a logic module or software capable of implementing all or part of the functions of the transmitting device. The method includes: obtaining a first primitive from the LLC sublayer of the transmitting device, the first primitive including a first MSDU and its timing information; and sending a low-latency buffer report to a receiving device, the low-latency buffer report indicating the timing information of a second MSDU, the timing information of the second MSDU being determined based on the timing information of the first MSDU.
[0022] Thirdly, this application provides a communication method that can be implemented by a receiving device. Unless otherwise specified, "receiving device" in this application can refer to the receiving device itself, a component within the receiving device (e.g., a processor, chip, or chip system), or a logic module or software capable of implementing all or part of the functions of the receiving device. The method includes: receiving a low-latency buffer report from a transmitting device; wherein the low-latency buffer report includes time information of a second Media Access Control Service Data Unit (MSDU); the time information of the second MSDU is determined based on the time information of a first MSDU, and the time information of the first MSDU is carried in a first primitive between the logical link control LLC sublayer and the media access control MAC sublayer of the transmitting device.
[0023] Based on the second or third aspect mentioned above, the transmitting device can also indicate the time information of the MSDU to the receiving device, so that the receiving device can optimize uplink scheduling or data transmission according to the time information of the MSDU, reduce communication latency, and improve communication performance.
[0024] In one possible design, the method also includes: scheduling MSDU uplinks according to time urgency based on low-latency buffer reports.
[0025] In conjunction with the second or third aspect above, in one possible design, the first primitive is used by the LLC sublayer of the transmitting device to request the transmission of the first MSDU to the LLC sublayer of the receiving device from the MAC sublayer of the transmitting device.
[0026] In conjunction with the second or third aspect mentioned above, in one possible design, the time information of the second MSDU is the time information of the MSDU at the head of the queue in the first MSDU; or, the time information of the second MSDU is the time information of the MSDU with the most urgent time in the first MSDU; or, the time information of the second MSDU is the time information of the first MSDU.
[0027] Based on this possible design, the time information of the second MSDU can be a portion of the time information of the first MSDU to reduce signaling overhead. Alternatively, it can be the time information of the entire first MSDU to improve the accuracy of the time information.
[0028] In conjunction with the second or third aspect above, in one possible design, the time information of the first MSDU includes one or more of the following: enqueue time, expiration time, or remaining time; wherein, the enqueue time is the time when the first MSDU arrives at the MAC sublayer of the sending device, the expiration time is the sum of the enqueue time and the upper limit of the delay corresponding to the first MSDU, and the remaining time is the time remaining before the expiration time.
[0029] In conjunction with the second or third aspect above, in one possible design, the time information of the first MSDU further includes first indication information; the first indication information is used to indicate that the time information of the first MSDU is the enqueue time; or, the first indication information is used to indicate that the time information of the first MSDU is the expiration time; or, the first indication information is used to indicate that the time information of the first MSDU is the remaining time.
[0030] In conjunction with the second or third aspect mentioned above, in one possible design, if the time information of the first MSDU includes the enqueue time, the time information of the first MSDU also includes the link identifier of the time reference link corresponding to the enqueue time.
[0031] In conjunction with the second or third aspect mentioned above, in one possible design, the link identifier of the time reference link corresponding to the queuing time is the same as the service start time link identifier of the first mechanism.
[0032] In conjunction with the second or third aspect above, in one possible design, if the time information of the first MSDU includes an expiration time, the time information of the first MSDU also includes the link identifier of the time reference link corresponding to the expiration time.
[0033] In conjunction with the second or third aspect mentioned above, in one possible design, the link identifier of the time reference link corresponding to the expiration time is the same as the service start time link identifier of the first mechanism.
[0034] In conjunction with the second or third aspect above, in one possible design, when the value of the Stream Classification Service Identifier SCSID in the first primitive is non-zero, the time information of the first MSDU includes the expiration time.
[0035] In conjunction with the second or third aspect mentioned above, in one possible design, when the value of SCSID in the first primitive is zero, the timing information of the first MSDU includes the enqueue time.
[0036] It is understandable that the technical effects that the above-mentioned multiple possible designs can bring can be found in the relevant descriptions of the multiple possible designs in the first aspect above, and will not be repeated here.
[0037] Fourthly, this application provides a communication method that can be implemented by a transmitting device. Unless otherwise specified, "transmitting device" in this application can refer to the transmitting device itself, a component within the transmitting device (e.g., a processor, chip, or chip system), or a logic module or software capable of implementing all or part of the functions of the transmitting device. The method includes: transmitting an MSDU, where the MSDU is a low-latency, low-loss, scalable L4S-enabled MSDU; and sending a second primitive to the LLC sublayer of the transmitting device, the second primitive including the transmission status of the MSDU, including a status indicating that delivery is impossible due to congestion.
[0038] Based on the fourth aspect, the MAC sublayer of the sending device can set the transmission status to "unable to deliver due to congestion" when congestion occurs, and indicate this to the LLC sublayer of the sending device through the second primitive. Then, the LLC sublayer of the sending device can modify the value of the CE field in the IP header of the data packet based on this transmission status. The destination end can then determine the congestion information based on the CE field in the received data packet and feed the congestion information back to the source end through the upper layer. The source end can then adjust the data transmission according to the congestion information to alleviate the congestion.
[0039] In one possible design, before transmitting the MSDU, the method further includes: obtaining a first primitive from the LLC sublayer of the transmitting device; the first primitive includes second indication information, which is used to indicate whether the MSDU is an L4S-enabled MSDU.
[0040] In one possible design, the first primitive is used by the LLC sublayer of the transmitting device to request the transmission of the MSDU to the LLC sublayer of the receiving device from the MAC sublayer of the transmitting device.
[0041] In one possible design, if the second indication information is used to indicate that the MSDU is an L4S-enabled MSDU, the state of being undeliverable due to congestion takes effect.
[0042] Fifthly, this application provides a communication device that can be applied to the transmitting end device described in the first, second, or fourth aspects above to realize the functions performed by the transmitting end device. The communication device can be the transmitting end device itself, or it can be a chip, chip system, or system-on-a-chip of the transmitting end device, etc. The communication device can execute the functions performed by the transmitting end device through hardware, or it can execute corresponding software through hardware. The hardware or software includes one or more modules corresponding to the above functions. For example, a transceiver module and a processing module. The transceiver module can independently complete the following transceiver operations, or it can cooperate with the processing module to complete the following transceiver operations; correspondingly, the processing module can independently complete the following processing operations, or it can cooperate with the transceiver module to complete the following processing operations, without limitation.
[0043] For example, the processing module is configured to obtain a first primitive from the LLC sublayer of the transmitting device, the first primitive including a first MSDU and time information of the first MSDU; the processing module is further configured to transmit the first MSDU according to the time information of the first MSDU.
[0044] In another example, the processing module is used to obtain a first primitive from the LLC sublayer of the transmitting device, the first primitive including a first MSDU and the timing information of the first MSDU; the transceiver module is used to send a low-latency buffer report to the receiving device, the low-latency buffer report being used to indicate the timing information of a second MSDU, the timing information of the second MSDU being determined based on the timing information of the first MSDU.
[0045] In another example, the processing module is used to transmit the MSDU, which is a low-latency, low-loss, scalable L4S-enabled MSDU; the processing module is also used to send a second primitive to the LLC sublayer of the sending device, the second primitive including the transmission status of the MSDU, including the status of being unable to be delivered due to congestion.
[0046] Optionally, the transceiver module and processing module of the communication device in the fifth aspect may also perform the corresponding functions in any possible design of any of the first, second or fourth aspects described above, as detailed in the method examples. The beneficial effects that can be achieved can also be found in the aforementioned related content, which will not be repeated here.
[0047] Sixthly, this application provides a communication device that can be applied to the receiving device described in the third aspect to realize the functions performed by the receiving device. The communication device can be the receiving device itself, or it can be a chip, chip system, or system-on-a-chip (SoC) of the receiving device. The communication device can execute the functions performed by the receiving device through hardware or through corresponding software. The hardware or software includes one or more modules corresponding to the functions described above. For example, a transceiver module and a processing module. The transceiver module can independently complete the following transceiver operations or cooperate with the processing module to complete the following transceiver operations; similarly, the processing module can independently complete the following processing operations or cooperate with the transceiver module to complete the following processing operations, without limitation.
[0048] For example, a transceiver module is configured to receive a low-latency buffer report from a transmitting device; wherein the low-latency buffer report includes time information of a second Media Access Control Service Data Unit (MSDU); the time information of the second MSDU is determined based on the time information of a first MSDU, and the time information of the first MSDU is carried in a first primitive between the logical link control LLC sublayer and the media access control MAC sublayer of the transmitting device.
[0049] Optionally, the transceiver module and processing module of the communication device in the sixth aspect may also perform the corresponding functions in any possible design in the third aspect above, as detailed in the method examples. The beneficial effects that can be achieved can also be found in the aforementioned related content, which will not be repeated here.
[0050] In a seventh aspect, this application provides a communication device comprising one or more processors; the one or more processors being configured to execute a computer program or instructions, wherein when the one or more processors execute the computer program or instructions, the communication method described in any one of the first to fourth aspects is performed.
[0051] In one possible design, the communication device further includes one or more memories coupled to one or more processors, the memories used to store the aforementioned computer programs or instructions. In one possible implementation, the memories are located outside the communication device. In another possible implementation, the memories are located inside the communication device. In this application, the processor and memory may also be integrated into a single device, i.e., the processor and memory may be integrated together. In one possible implementation, the communication device further includes a transceiver for receiving and / or transmitting information.
[0052] In one possible design, the communication device further includes one or more communication interfaces coupled to one or more processors, and the communication interfaces are used to communicate with other modules outside the communication device.
[0053] Eighthly, this application provides a communication device including an interface circuit and a logic circuit; the interface circuit is used for inputting and / or outputting information; the logic circuit is used for performing the communication method as described in any one of the first to fourth aspects, processing and / or generating information based on the information.
[0054] Ninthly, this application provides a computer-readable storage medium storing computer instructions or programs that, when some or all of the computer instructions or programs are run on a computer, cause the communication method described in any one of the first to fourth aspects to be executed.
[0055] In a tenth aspect, this application provides a computer program product comprising computer instructions or programs, which, when some or all of the computer instructions or programs are run on a computer, cause the communication method described in any one of the first to fourth aspects to be executed.
[0056] In one aspect, this application provides a computer program that, when run on a computer, causes the communication method described in any one of the first to fourth aspects to be executed.
[0057] In a twelfth aspect, this application provides a chip comprising: a processor coupled to a memory for storing programs or instructions, wherein when some or all of the programs or instructions are executed by the processor, a communication method as described in any one of the first to fourth aspects is executed.
[0058] The technical effects of any of the design methods in aspects seven through twelfth are similar to those in aspects one through four above, and will not be elaborated upon further.
[0059] In a thirteenth aspect, this application provides a communication system that may include communication means for performing the first aspect or any possible design of the first aspect; or, include communication means for performing the second aspect or any possible design of the second aspect and communication means for performing the third aspect or any possible design of the third aspect; or, include communication means for performing the fourth aspect or any possible design of the fourth aspect. Attached Figure Description
[0060] Figure 1 A schematic diagram of a communication system provided in an embodiment of this application;
[0061] Figure 2 A flowchart illustrating a communication method provided in an embodiment of this application;
[0062] Figure 3 A flowchart illustrating another communication method provided in an embodiment of this application;
[0063] Figure 4 A schematic diagram of an SCS request frame provided in an embodiment of this application;
[0064] Figure 5 A schematic diagram of an SCS descriptor provided in an embodiment of this application;
[0065] Figure 6 A schematic diagram illustrating a priority element within an access category, provided as an embodiment of this application;
[0066] Figure 7 A schematic diagram of a service quality feature element provided in an embodiment of this application;
[0067] Figure 8 A schematic diagram of control information provided in an embodiment of this application;
[0068] Figure 9 A schematic diagram of an SCS response frame provided in an embodiment of this application;
[0069] Figure 10 A congestion feedback diagram provided for an embodiment of this application;
[0070] Figure 11 A flowchart illustrating yet another communication method provided in an embodiment of this application;
[0071] Figure 12 A schematic diagram of a communication device provided in an embodiment of this application;
[0072] Figure 13 A structural diagram of a communication device provided in an embodiment of this application;
[0073] Figure 14 This is a schematic diagram of a communication device provided in an embodiment of this application. Detailed Implementation
[0074] Before describing the embodiments of this application, the technical terms involved in the embodiments of this application will be described.
[0075] A multi-link device (MLD) is a device capable of supporting communication across multiple links. Typically, an MLD has one or more radio frequency (RF) modules. If multiple RF modules exist, they operate on different frequency bands / channels, with each frequency band / channel corresponding to one or more links. The MLD can communicate through multiple links based on these multiple RF modules. When the channel spacing between two RF modules within an MLD is sufficiently large, they can operate independently without interfering with each other.
[0076] The embodiments of this application will now be described in detail with reference to the accompanying drawings.
[0077] The communication method provided in this application is applicable to wireless local area network (WLAN) systems that support relevant standards of the Institute of Electrical and Electronics Engineers (IEEE). These IEEE standards include: 802.11a / b / g, 802.11n (high throughput, HT), 802.11ac (very high throughput, VHT), 802.11ax (high efficient, HE), 802.11be (extremely high throughput, EHT), 802.11bn (ultra-high reliability, UHR) (Wi-Fi 8), 802.11ad, 802.11ay, 802.11bf (sensing), and ultra-wideband (UWB). Standards such as band (UWB) / 802.15 are not restricted.
[0078] The following is based on Figure 1 Taking an example, the WLAN communication system provided in the embodiments of this application will be described.
[0079] Figure 1 A schematic diagram of a communication system provided in an embodiment of this application is shown below. Figure 1 As shown in (a), the communication system may include one or more access point devices and one or more site devices. Alternatively, as... Figure 1As shown in (b) of this application, the communication system provided in this application embodiment may include one or more access point multi-link devices (AP MLDs) and one or more non-access point multi-link devices (non-AP MLDs).
[0080] The access point device can communicate with one or more site devices, and the access point device can also communicate with one or more other access point devices. The site device can also communicate with one or more other site devices. The AP MLD can communicate with one or more non-AP MLDs, and the AP MLD can also communicate with one or more other APMLDs. The non-AP MLD can also communicate with one or more other non-AP MLDs.
[0081] In one possible implementation, the access point device can be an access point (AP), and the site device can be a station (STA).
[0082] Access point devices can be devices that support one or more of the aforementioned 802.11 standards or multiple WLAN standards, such as future 802.11 standards. For example, access point devices can be terminal devices with Wi-Fi chips, network devices, communication servers, routers, switches, bridges, computers, etc. Access point devices can also serve as access points for mobile users to access wired networks, primarily deployed in homes, buildings, and campuses, with a typical coverage radius of tens to hundreds of meters. They can also be deployed outdoors. Access point devices act as a bridge connecting wired and wireless networks, their main function being to connect various wireless network clients together and then connect the wireless network to the Ethernet.
[0083] The site equipment can be any device that supports one or more of the aforementioned 802.11 standards or supports multiple WLAN standards such as the future 802.11 standard. For example, site equipment can be wireless communication chips, wireless sensors, wireless communication terminals, communication servers, routers, switches, bridges, computers, etc. Alternatively, site equipment can be mobile phones, tablets, set-top boxes, smart TVs, smart wearable devices, vehicle communication devices, and computers that support Wi-Fi communication, without limitation.
[0084] The non-AP MLD supports communication across multiple links and can simultaneously have one or more RF modules (e.g., STA1, STA2, and STA3 each corresponding to one RF module). If multiple RF modules exist, they operate on different frequency bands / channels, with each frequency band / channel corresponding to one or more links. The non-AP MLD can communicate through multiple links based on multiple RF modules. When the channel spacing between two RF modules within a non-AP MLD is sufficiently large, they can operate independently without interfering with each other.
[0085] The AP MLD can support communication across multiple links and can simultaneously have one or more RF modules (e.g., AP1, AP2, and AP3 each corresponding to one RF module). If multiple RF modules exist, they operate on different frequency bands / channels, with each frequency band / channel corresponding to one or more links. The AP MLD can communicate through multiple links based on multiple RF modules. When the channel spacing between two RF modules within an AP MLD is sufficiently large, they can operate independently without interfering with each other.
[0086] For example, the AP MLD can be a device that supports multiple WLAN standards, such as the 802.11be standard or future Wi-Fi standards, without limitation.
[0087] For example, an AP MLD can be a terminal device with a Wi-Fi chip, network device, communication server, router, switch, bridge, computer, etc. An AP MLD can also serve as an access point for mobile users to access a wired network, primarily deployed in homes, buildings, and campuses, with a typical coverage radius of tens to hundreds of meters. Of course, it can also be deployed outdoors. An AP acts as a bridge connecting wired and wireless networks, its main function being to connect various wireless network clients together and then connect the wireless network to the Ethernet.
[0088] For example, a non-AP MLD can be a device that supports multiple WLAN standards, such as the 802.11be standard or future Wi-Fi standards, without limitation.
[0089] For example, a non-AP MLD can be a wireless communication chip, wireless sensor, wireless communication terminal, communication server, router, switch, bridge, computer, etc. A non-AP MLD can also be used for mobile phones, tablets, set-top boxes, smart TVs, smart wearable devices, in-vehicle communication devices, and computers that support Wi-Fi communication, without limitation.
[0090] The following is combined with Figure 1 The communication system shown refers to the following Figure 2 This application describes the communication method provided in its embodiments. It is understood that the processing performed by a single execution entity (access point device, site device, non-AP MLD, or AP MLD) shown in the embodiments of this application can also be divided into multiple execution entities, which can be logically and / or physically separated, without limitation. Furthermore, the message names or parameter names in the messages exchanged between devices in the embodiments of this application are merely examples; other names may be used in specific implementations, without limitation. Actions, terms, etc., involved in the various embodiments of this application can be referenced mutually without limitation.
[0091] Figure 2 A flowchart of a communication method provided in an embodiment of this application is shown below. Figure 2 As shown, the method may include:
[0092] Step 201: The transmitting device obtains the first primitive from the logical link control (LLC) sublayer of the transmitting device.
[0093] The transmitting device can be Figure 1 For any of the access point devices in (a), the corresponding receiving device can be Figure 1 Any of the site devices in (a) that communicate with the transmitting device. Alternatively, the transmitting device may be... Figure 1 For any of the site devices in (a), the corresponding receiving device can be Figure 1 Any of the access point devices in (a) that communicate with the transmitting device. Alternatively, the transmitting device may be... Figure 1 For any non-AP MLD in (b), the corresponding receiving device can be Figure 1 Any of the AP MLDs in (b) that communicates with the transmitting device. Alternatively, the transmitting device may be... Figure 1 For any AP MLD in (b), the corresponding receiving device can be Figure 1 Any of the non-AP MLDs in (b) that communicate with the transmitting device.
[0094] Specifically, the LLC sublayer of the transmitting device can send a first primitive to the medium access control (MAC) sublayer of the transmitting device; correspondingly, the MAC sublayer of the transmitting device receives the first primitive from the LLC sublayer of the transmitting device, or it can be described as the MAC sublayer of the transmitting device acquiring the first primitive from the LLC sublayer of the transmitting device, where "acquiring" and "receiving" have the same meaning.
[0095] The first primitive is a primitive sent by the LLC sublayer of the transmitting device to the MAC sublayer of the transmitting device. Alternatively, the first primitive can also be described as a primitive between the LLC sublayer and the MAC sublayer of the transmitting device. This first primitive is used by the LLC sublayer of the transmitting device to request the transmission of MSDU (as described below as the first MSDU) to the LLC sublayer of the receiving device from the MAC sublayer of the transmitting device.
[0096] The first primitive may include a first media access control service data unit (MSDU) and the time information of the first MSDU.
[0097] Specifically, the LLC sublayer of the sending device can encapsulate data packets from the network layer to obtain the first MSDU, and then send the first MSDU to the MAC sublayer through the first primitive.
[0098] The first MSDU may include one or more MSDUs. The time information of the first MSDU includes the time information of the one or more MSDUs. The time information of different MSDUs may be the same or different, without restriction.
[0099] The time information of the first MSDU can be information related to the transmission time of the first MSDU, or it can be described as time information related to the transmission of the first MSDU.
[0100] For example, the time information of the first MSDU includes one or more of the following: enqueue time, expiry time, or remaining time.
[0101] The enqueue time can be the time when the first MSDU arrives at the MAC sublayer of the sending device, or it can be described as the time when the first MSDU arrives at the MAC service access point (SAP) of the sending device, or it can be described as the time when the first MSDU arrives at the sending buffer of the sending device; there is no restriction. The enqueue time can also be called the arrival time.
[0102] In one possible implementation, the enqueue time is an absolute time. The time precision of this enqueue time can be hours, minutes, seconds, milliseconds, microseconds, etc., without limitation. For example, the enqueue time length is 3 bytes, corresponding to the lower 3 bytes of the 6 bytes of the timing synchronization function (TSF).
[0103] The expiration time can be the sum of the enqueue time of the first MSDU and the upper limit of the delay corresponding to the first MSDU, or it can be described as the sum of the time when the first MSDU arrives at the MAC sublayer of the sending device and the upper limit of the delay corresponding to the first MSDU, or it can be described as the sum of the time when the first MSDU arrives at the MAC SAP of the sending device and the upper limit of the delay corresponding to the first MSDU, or it can be described as the sum of the time when the first MSDU arrives at the transmission buffer of the sending device and the upper limit of the delay corresponding to the first MSDU, and there is no restriction.
[0104] The latency limits for MSDUs corresponding to different services can be the same or different, without restriction. The LLC sublayer of the transmitting device can determine the latency limit of the first MSDU based on the service corresponding to the first MSDU, and then determine the expiration time of the first MSDU.
[0105] In one possible implementation, the expiration time is an absolute time. The time precision of this expiration time can be in hours, minutes, seconds, milliseconds, microseconds, etc., without restriction. For example, with an enqueue time of XX microseconds and a maximum delay of YY microseconds, the expiration time could be (XX+YY) microseconds.
[0106] The remaining time refers to the time remaining until the expiration time of the first MSDU, or it can be described as the time remaining until the sum of the enqueue time of the first MSDU and the upper limit of the delay corresponding to the first MSDU, or it can be described as the time remaining until the sum of the time of the first MSDU arriving at the MAC sublayer of the sending device and the upper limit of the delay corresponding to the first MSDU, or it can be described as the time remaining until the sum of the time of the first MSDU arriving at the MAC SAP of the sending device and the upper limit of the delay corresponding to the first MSDU, or it can be described as the time remaining until the sum of the time of the first MSDU arriving at the transmission buffer of the sending device and the upper limit of the delay corresponding to the first MSDU, and there is no restriction.
[0107] In one possible implementation, the remaining time is a relative time, and its value dynamically decreases over time. The precision of this remaining time can be in hours, minutes, seconds, milliseconds, microseconds, etc., without limitation. For example, the remaining time could be ZZ microseconds.
[0108] Optionally, the time information of the first MSDU may also include first indication information, which is used to indicate the type of time information of the first MSDU.
[0109] For example, the first indication information is used to indicate that the time information of the first MSDU is the enqueue time; or, the first indication information is used to indicate that the time information of the first MSDU is the expiration time; or, the first indication information is used to indicate that the time information of the first MSDU is the remaining time.
[0110] The first indication information may occupy one or more bits, and the different values of the one or more bits correspond to different types of time information of the first MSDU.
[0111] For example, taking the first indication information occupying one bit as an example, the value of this one bit can be set to the first value, indicating that the first indication information is used to indicate the time information of the first MSDU as the enqueue time, and the value of this bit can be set to the second value, indicating that the first indication information is used to indicate the time information of the first MSDU as the expiration time.
[0112] For example, taking the first indication information occupying two bits as an example, the value of these two bits can be set to the first value, indicating that the first indication information is used to indicate the time information of the first MSDU as the enqueue time; the value of this bit can be set to the second value, indicating that the first indication information is used to indicate the time information of the first MSDU as the expiration time; and the value of this bit can be set to the third value, indicating that the first indication information is used to indicate the time information of the first MSDU as the remaining time.
[0113] Optionally, the time information of the first MSDU may also include third indication information, which is used to indicate the start bit of the TSF corresponding to the least significant bit of the time information of the first MSDU.
[0114] Optionally, if the time information of the first MSDU includes the enqueue time, the time information of the first MSDU may also include the link identifier of the time reference link corresponding to the enqueue time.
[0115] For MLD devices (such as AP MLD or non-AP MLD), the TSF value of each link of the MLD device can be different. Based on this, the link identifier of the time reference link corresponding to the queuing time can be carried in the time information of the first MSDU to improve the accuracy of the time information.
[0116] For example, the link identifier of the time reference link corresponding to the queuing time can be the same as or different from the service start time link identifier of the first mechanism, without restriction. The first mechanism can be a stream classification service (SCS) mechanism; a description of this SCS mechanism can be found in the relevant description below, and will not be repeated here.
[0117] Optionally, if the time information of the first MSDU includes an expiration time, the time information of the first MSDU may also include the link identifier of the time reference link corresponding to the expiration time.
[0118] For MLD devices (such as AP MLD or non-AP MLD), the TSF value of each link of the MLD device can be different. Based on this, the link identifier of the time reference link corresponding to the expiration time can be carried in the time information of the first MSDU to improve the accuracy of the time information.
[0119] For example, the link identifier of the time reference link corresponding to the expiration time can be the same as or different from the service start time link identifier of the first mechanism, without restriction.
[0120] Optionally, if the stream classification service identifier (SCSID) in the first primitive is non-zero, the time information of the first MSDU includes an expiration time. Further, the link identifier of the time reference link corresponding to this expiration time is the same as the service start time link identifier. Alternatively, if the SCSID in the first primitive is zero, the time information of the first MSDU includes the enqueue time. Further, the link identifier of the time reference link corresponding to this enqueue time is the same as the service start time link identifier.
[0121] Based on the above description of the time information of the first MSDU, when the time information of the first MSDU is its enqueue time, the sending device does not need to perform frequent and rapid calculations, which simplifies the implementation and reduces computational complexity. Alternatively, when the time information of the first MSDU is its expiration time, the expiration time of each MSDU can be clearly seen, facilitating the transmission of MSDUs by the MAC sublayer of the sending device based on their expiration times, thus ensuring service performance. Or, when the time information of the first MSDU is its remaining time, since the remaining time is a relative time, there is no need to indicate or define the link identifier of the time reference link corresponding to the remaining time, which can reduce signaling overhead.
[0122] Based on the above description of the first primitive, for example, the first primitive can be the MA-UNITDATA.request primitive, which can be as follows:
[0123] MA-UNITDATA.request(
[0124] source address
[0125] destination address
[0126] routing information
[0127] data, specifies the MSDU (e.g., the first MSDU) to be transmitted by the MAC sublayer.
[0128] The priority field should be set to the same value as the traffic identifier (TID) field.
[0129] "Drop eligible" indicates whether dropping is allowed.
[0130] service class
[0131] station vector
[0132] MSDU format, the format of the MSDU (e.g., the format of the first MSDU).
[0133] Radio Environment Request Vector
[0134] SCSID, Stream Classification Service Identifier
[0135] Timing Info, time information for the MSDU (e.g., time information for the first MSDU). )
[0137] It is understandable that the sending and receiving devices can establish an SCS session based on the SCS mechanism. When the sending device subsequently transmits MSDUs, it can carry the corresponding SCSID of the MSDU in the first primitive.
[0138] Specifically, the STA can report a low-latency service flow to the AP based on the SCS mechanism. Specifically, the STA can send an SCS request frame to its associated AP to report a low-latency service flow and indicate the corresponding Quality of Service (QoS) parameters. Upon receiving the SCS request frame, the AP can send an SCS response frame to the STA.
[0139] The SCS request frame may include the aforementioned TID and SCSID. A detailed description of the SCS request frame and SCS response frame is provided below and will not be repeated here.
[0140] Step 202: The transmitting device transmits the first MSDU according to the time information of the first MSDU.
[0141] Specifically, the MAC sublayer of the transmitting device transmits the first MSDU based on the time information of the first MSDU.
[0142] In this process, the MAC sublayer of the transmitting device can encapsulate the first MSDU to obtain a MAC protocol data unit (MPDU) and send it to the physical layer. The physical layer then encapsulates the MPDU to obtain a physical protocol data unit (PPDU) and sends it to the receiving device.
[0143] In this process, the MAC sublayer of the transmitting device transmits the first MSDU according to its time urgency, based on the time information of the first MSDU. For example, MSDUs are transmitted from high to low time urgency.
[0144] For example, taking the time information of the first MSDU as the enqueue time of the first MSDU, the MAC sublayer of the sending device can determine the expiration time of each MSDU based on the enqueue time of each MSDU and the delay limit of each MSDU, and determine the urgency of time according to the order of expiration time. For example, the earlier the expiration time, the higher the urgency of time, and the later the expiration time, the lower the urgency of time.
[0145] In another example, taking the expiration time of the first MSDU as an example, the urgency of time is determined according to the order of the expiration times. For example, the earlier the expiration time, the higher the urgency of time, and the later the expiration time, the lower the urgency of time.
[0146] In another example, taking the time information of the first MSDU as the remaining time of the first MSDU as an example, the degree of time urgency is determined according to the amount of remaining time. For example, the less time remaining, the higher the degree of time urgency, and the more time remaining, the lower the degree of time urgency.
[0147] Based on the above Figure 2 The method shown allows the LLC sublayer of the transmitting device to indicate the time information of the first MSDU to the MAC sublayer of the transmitting device through the first primitive. This enables the MAC sublayer of the transmitting device to optimize MSDU transmission based on the time information of the first MSDU, thereby reducing communication latency and improving communication performance.
[0148] With the above Figure 2 Similar to how the MAC sublayer of the transmitting device optimizes MSDU transmission based on MSDU time information, such as... Figure 3 As shown, the transmitting device can also indicate the time information of the MSDU to the receiving device, so that the receiving device can optimize uplink scheduling or data transmission based on the time information of the MSDU.
[0149] Figure 3 A flowchart of a communication method provided in an embodiment of this application is shown below. Figure 3 As shown, the method includes:
[0150] Step 301: The transmitting device obtains the first primitive from the LLC sublayer of the transmitting device.
[0151] The transmitting device can be Figure 1 For any of the site devices in (a), the corresponding receiving device can be Figure 1 Any of the access point devices in (a) that communicate with the transmitting device. Alternatively, the transmitting device may be... Figure 1 For any non-AP MLD in (b), the corresponding receiving device can be Figure 1 Any of the AP MLDs in (b) that communicate with the transmitting device.
[0152] The first primitive includes the first MSDU and the time information of the first MSDU.
[0153] For a description of step 301, please refer to the detailed description of step 201 above, which will not be repeated here.
[0154] Step 302: The transmitting device sends a low-latency buffer report to the receiving device; correspondingly, the receiving device receives the low-latency buffer report from the transmitting device.
[0155] The low-latency buffer report can be used to indicate the time information of the second MSDU, which is determined based on the time information of the first MSDU.
[0156] For example, the time information of the second MSDU is the time information of the MSDU at the head of the queue in the first MSDU.
[0157] In another example, the time information of the second MSDU is the time information of the MSDU with the most urgent time in the first MSDU.
[0158] In another example, the time information of the second MSDU is the same as that of the first MSDU.
[0159] Optionally, after receiving the low-latency buffer report, the receiving device can optimize uplink scheduling based on step 303 below, or optimize data transmission based on step 304 below.
[0160] Step 303: The receiving device performs MSDU uplink scheduling according to the time urgency based on the low latency buffer report.
[0161] The receiving device can perform uplink scheduling based on the time information of the second MSDU sent by each transmitting device, according to the time urgency. This means scheduling each transmitting device to transmit MSDUs. For example, the receiving device can schedule MSDU uplink transmission from high to low time urgency. This reduces communication latency, improves communication performance, and optimizes uplink scheduling.
[0162] The description of the urgency of the time can be found in the detailed description in step 202 above, and will not be repeated here.
[0163] For example, taking the time information of the second MSDU as the time information of the MSDU at the head of the queue in the first MSDU, the receiving device can perform uplink scheduling from high to low according to the time urgency of the MSDU at the head of the queue corresponding to each transmitting device.
[0164] In another example, taking the time information of the second MSDU as the time information of the most urgent MSDU in the first MSDU as an example, the receiving device can perform uplink scheduling from high to low according to the time urgency of the most urgent MSDU corresponding to each transmitting device.
[0165] In another example, taking the time information of the second MSDU as the time information of the first MSDU, the receiving device can perform uplink scheduling from high to low according to the time urgency of the first MSDU corresponding to each transmitting device.
[0166] Step 304: The receiving device performs uplink scheduling and downlink transmission of MSDU according to the time urgency based on the low latency buffer report.
[0167] In cases where the receiving device itself has MSDUs that need to be transmitted downlink, the receiving device can transmit the time information of its own MSDU and the time information of the second MSDUs received from each transmitting device according to the urgency of the time. That is, if downlink transmission is more urgent, downlink transmission is performed first and then uplink scheduling is performed; if uplink scheduling is more urgent, uplink scheduling is performed first and then downlink transmission is performed. This optimizes data transmission, reduces communication latency, and improves communication performance.
[0168] It is understandable that the above Figure 2 or Figure 3 The communication method shown can be implemented based on the SCS mechanism. The following is a detailed description of the SCS request frame and SCS response frame in the SCS mechanism:
[0169] I. SCS Request Frame
[0170] like Figure 4 As shown, an SCS request frame may include one or more of the following fields: Category, Robust Action, Dialog Token, and SCS Descriptor List.
[0171] • Category indicates the category to which the action frame belongs.
[0172] Robust Action indicates which frame in this category.
[0173] • The SCS Descriptor List contains one or more SCS descriptors.
[0174] like Figure 5As shown, an SCS descriptor may include one or more of the following fields: Element ID, Length, SCS Identifier (SCSID), Request Type, Intra-Access Category Priority Element, TCLAS Element, TCLAS Processing Element, QoS Characteristics Element, and Optional Subelements. Among these, the Intra-Access Category Priority Element, TCLAS Processing Element, and TCLAS Processing Element are optional fields.
[0175] • SCSID occupies 1 byte and indicates the identifier assigned to this SCS stream.
[0176] • Request Type occupies 1 byte and indicates the type of request, which can be ADD (0, add), Remove (1, remove), or Change (2, change).
[0177] The specific format of the Intra-Access Category Priority Element is as follows: Figure 6 As shown, it may include one or more of the following fields: Element ID, Length, and Intra-Access Priority. Intra-Access Priority occupies 1 byte and may include one or more of the following fields: User Priority, Alternate Queue, Drop Eligibility, and Reserved. User Priority occupies 3 bits and indicates the user's priority. Alternate Queue occupies 1 bit and indicates whether a new alternate queue should be created for this SCS flow. Drop Eligibility occupies 1 bit and indicates whether packets for this SCS flow can be dropped when there are insufficient resources. Reserved occupies 3 bits.
[0178] The TCLAS Element indicates how to identify the SCS flow, and contains the criteria for determining the SCS flow.
[0179] The TCLAS Processing Element specifies how to process multiple TCLAS Elements when they exist.
[0180] The QoS Characteristics element indicates the TID mapped to the corresponding SCS flow and the corresponding QoS parameters. The two most important QoS parameters are: ① Delay Bound, indicating the maximum allowed delay for low-latency packets; ② MSDU Delivery Info, including the MSDU Delivery Ratio, indicating the required MSDU delivery rate under a given Delay Bound requirement; and the MSDU Count Exponent, indicating the exponential portion of the number of MSDUs used to calculate the MSDU delivery rate, i.e., 10^(MSDU Count Exponent).
[0181] For example, such as Figure 7 As shown, a QoS Characteristics element may include one or more of the following fields: Element ID, Length, Element IDExtension, Control Info, Minimum Service Interval, Maximum Service Interval, Minimum Data Rate, Delay Bound, Maximum MSDU Size, Service Start Time, Service Start Time LinkID, Mean Data Rate, Delay Bounded Burst Size, MSDU Lifetime, MSDU Delivery Info, and Medium Time.
[0182] Service Start Time indicates the start time of the service. Service Start TimeLinkID indicates the corresponding reference link for the service start time, because the TSF of each affiliated AP in the AP MLD can be different.
[0183] Among them, such as Figure 8 As shown, Control Info may include one or more of the following fields: Direction, Service Identifier (TID), User Priority, Presence Bitmap of Additional Parameters, Link Identifier (Link ID), and Reserved.
[0184] The Direct field occupies 2 bits, with a value of 00 indicating uplink, 10 indicating downlink, 01 indicating a peer-to-peer (P2P) direct link, and 11 being a reserved value.
[0185] TID occupies 4 bits and can take values from 0 to 7, with 8-15 being reserved values.
[0186] The User Priority field occupies 3 bits and can have a value from 0 to 7, which is the same as the TID field.
[0187] The Link ID is used to indicate the link identifier corresponding to the direct link transmission.
[0188] II. SCS Response Frame
[0189] like Figure 9 As shown, an SCS response frame may include one or more of the following fields: Category, Robust Action, Dialog Token, Count, SCS Status List, and SCS Descriptor List.
[0190] • Category indicates the category to which the action frame belongs.
[0191] Robust Action indicates which frame in this category.
[0192] • Dialog Token: It needs to be consistent with the Dialog Token in the corresponding SCS request frame.
[0193] • Count is used to indicate the number of (SCSID, Status Code) entries in the SCS Status List.
[0194] The SCS Status List contains one or more SCS status groups, which carry the following two subfields: SCSID, indicating the identifier of the SCS; and Status Code, indicating whether the requested SCSID is accepted.
[0195] With the above Figures 2 to 9 The differences between the transmitting and receiving devices in the illustrated embodiments, which optimize data transmission based on MSDU time information, are as follows: Figure 11 As shown in the embodiments of this application, a communication method is also provided to enable the transmitting device and the receiving device to optimize data transmission based on a low latency, low loss, scalable (L4S) mechanism.
[0196] The L4S mechanism is a congestion control mechanism defined by the Internet Engineering Task Force (IETF). It was initially used in wired networks. Its principle is that, taking the transmission between the source and the destination as an example, any Layer 3 network device between the source and the destination can modify the congestion indication field (such as the explicit congestion notification (ECN) field) in the Internet Protocol (IP) packet header to mark that congestion has occurred on the data path from the source to the destination if it detects congestion. Then, the destination feeds back the congestion information to the source through the upper layer.
[0197] For example, such as Figure 10 As shown, taking an example with three network nodes between the source and destination, when the source sends a data packet, it can identify that the data packet belongs to L4S traffic based on the Explicit Congestion Notification Capable Transport 1 (ECT1) field in the ECN field of the IP packet header. Assuming the second network node experiences congestion, it can modify the value of the Congestion Experienced (CE) field in the ECN field of the IP packet header to indicate that it experienced congestion while forwarding the data packet. The destination, based on the CE field in the received data packet, feeds back the congestion information to the source through the upper layer.
[0198] With the widespread use of Wi-Fi, any network node between the source and destination can use Wi-Fi technology for transmission. If congestion occurs in a Wi-Fi network node, the LLC sublayer of the Wi-Fi network node cannot detect the congestion, and the Wi-Fi network node will not modify the value of the CE field. The destination cannot know whether the Wi-Fi network node is congested, nor will it provide congestion information to the source. The source cannot adjust data transmission, which further exacerbates the congestion.
[0199] To solve the above technical problems, such as Figure 11 As shown in the figure, this application provides a communication method that can optimize data transmission based on the L4S mechanism.
[0200] Figure 11 A flowchart of a communication method provided in an embodiment of this application is shown below. Figure 11 As shown, the method includes:
[0201] Step 1101: The transmitting device performs MSDU transmission.
[0202] The transmitting device can be any network node supporting Wi-Fi technology between the source and the destination.
[0203] Here, MSDU is an L4S-enabled MSDU, or described as an MSDU that supports the L4S mechanism.
[0204] Specifically, MSDU transmission is performed by the MAC sublayer of the sending device.
[0205] In one possible implementation, before the MAC sublayer of the transmitting device transmits the MSDU, the LLC sublayer of the transmitting device sends a first primitive to the MAC sublayer of the transmitting device. The first primitive includes second indication information, which is used to indicate whether the MSDU is an L4S-enabled MSDU.
[0206] The first primitive is used by the LLC sublayer of the transmitting device to request the transmission of MSDU to the LLC sublayer of the receiving device from the MAC sublayer of the transmitting device.
[0207] For example, the first primitive could be the MA-UNITDATA.request primitive, which could be as follows:
[0208]
[0209] Here, L4S capable refers to the second indication information mentioned above, and L4S capable can be a Boolean variable. When L4S capable is set to true, it indicates that the MSDU is an L4S-enabled MSDU, or identifies the source end (i.e., the device corresponding to the source address) and the destination end (i.e., the device corresponding to the destination address) as L4S-enabled (or supporting the L4S mechanism).
[0210] Step 1102: The transmitting device sends the second primitive to the LLC sublayer of the transmitting device.
[0211] Specifically, the MAC sublayer of the transmitting device sends the second primitive to the LLC sublayer of the transmitting device.
[0212] The second primitive may include the transmission status of the MSDU, including the status of being unable to be delivered due to congestion.
[0213] The second primitive is used by the MAC sublayer of the transmitting device to provide the transmission status information of the MSDU to the LLC sublayer of the transmitting device.
[0214] For example, the second primitive could be the MA-UNITDATA-STATUS.indication primitive, which could be as follows:
[0215]
[0216] The transmission status of MSDU can be any of the following:
[0217] Successful;
[0218] Undeliverable (excessive data length): The data cannot be delivered due to its excessive length.
[0219] Undeliverable (non-null source routing): Delivery failed due to a non-null source route.
[0220] Undeliverable (unsupported priority): Delivery is impossible due to an unsupported priority level.
[0221] ...
[0222] Undeliverable (Congestion experienced): Delivery was not possible due to congestion.
[0223] Specifically, the transmission status in the corresponding MA-UNITDATA-STATUS.indication is allowed to be set to Undeliverable (Congestion experienced) only when both the source (corresponding to the source address) and the destination (corresponding to the destination address) are L4S-enabled devices, i.e., when L4S capable is set to true in the corresponding MA-UNITDATA.request. In other words, the second indication information in the first primitive is used to indicate that the status of being unable to be delivered due to congestion is effective when the MSDU is an L4S-enabled MSDU.
[0224] Based on the above Figure 11 The method described herein allows the MAC sublayer of the sending device to set the transmission status to "unable to deliver due to congestion" when congestion occurs, and to indicate this to the LLC sublayer of the sending device via a second primitive. The LLC sublayer of the sending device can then modify the value of the CE field in the IP header of the data packet based on this transmission status. The destination end then determines the congestion information based on the CE field in the received data packet and feeds this congestion information back to the source end through the upper layer. The source end can then adjust data transmission based on the congestion information to alleviate congestion.
[0225] It should be noted that the various embodiments of this application can be implemented independently or in combination, without limitation. Unless otherwise specified or in conflict, the terminology and / or descriptions between the different embodiments provided in this application are consistent and can be referenced mutually. Technical features in different embodiments can be combined to form new embodiments based on their inherent logical relationships.
[0226] It is understood that in the embodiments of this application, the executing entity may perform some or all of the steps in the embodiments of this application. These steps or operations are merely examples, and the embodiments of this application may also perform other operations or variations thereof. Furthermore, the various steps may be executed in different orders as presented in the embodiments of this application, and it is not necessarily necessary to execute all the operations in the embodiments of this application.
[0227] The foregoing primarily describes the solutions provided in this application from the perspective of device-to-device interaction. It is understood that each device, in order to achieve the aforementioned functions, includes corresponding hardware structures and / or software modules for executing each function. Those skilled in the art should readily recognize that, based on the algorithm steps of the examples described in conjunction with the embodiments disclosed herein, this application can be implemented in hardware or a combination of hardware and computer software. Whether a function is executed in hardware or by computer software driving hardware 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 implementation should not be considered beyond the scope of this application.
[0228] This application embodiment can divide each device into functional modules according to the above method example. For example, each function can be divided into a separate functional module, or two or more functions can be integrated into one processing module. The integrated module can be implemented in hardware or as a software functional module. It should be noted that the module division in this application embodiment is illustrative and only represents one logical functional division. In actual implementation, there may be other division methods.
[0229] When dividing each function into modules according to its corresponding function. Figure 12 A communication device 120 is shown, which can perform the above-described... Figures 2 to 11 The actions performed by the transmitting or receiving device in the method shown, and all related content of each step involved in the above method embodiments, can be referenced from the functional description of the corresponding functional module. The technical effects that can be obtained can be referred to the above method embodiments, and will not be repeated here.
[0230] The communication device 120 may include a transceiver module 1201 and a processing module 1202. Exemplarily, the communication device 120 may be a communication equipment, or a chip or other combination device or component having the aforementioned communication device functions. When the communication device 120 is a communication equipment, the transceiver module 1201 may be a transceiver, which may include an antenna and radio frequency circuits; the processing module 1202 may be a processor (or processing circuit), such as a baseband processor, which may include one or more CPUs. When the communication device 120 is a component having the aforementioned communication device functions, the transceiver module 1201 may be a radio frequency unit; the processing module 1202 may be a processor (or processing circuit), such as a baseband processor. When the communication device 120 is a chip system, the transceiver module 1201 may be an input / output interface of a chip (e.g., a baseband chip); the processing module 1202 may be a processor (or processing circuit) of the chip system, and may include one or more central processing units. It should be understood that the transceiver module 1201 in the embodiments of this application can be implemented by a transceiver or transceiver-related circuit components; the processing module 1202 can be implemented by a processor or processor-related circuit components (or, referred to as processing circuit).
[0231] For example, the transceiver module 1201 can be used to perform... Figures 2 to 11 In the illustrated embodiment, all transmit and receive operations performed by the communication device, and / or other processes used to support the techniques described herein; the processing module 1202 can be used to perform Figures 2 to 11 The embodiments shown include all operations performed by the communication device other than the transmit and receive operations, and / or other processes used to support the techniques described herein.
[0232] As another feasible approach Figure 12 The transceiver module 1201 can be replaced by a transceiver unit, which can integrate the functions of the transceiver module 1201; the processing module 1202 can be replaced by a processor, which can integrate the functions of the processing module 1202. Furthermore, Figure 12 The communication device 120 shown may also include a memory.
[0233] Alternatively, when the processing module 1202 is replaced by a processor and the transceiver module 1201 is replaced by a transceiver, the communication device 120 involved in the embodiments of this application can also be... Figure 13 The communication device 130 shown. The processor can be logic circuit 1301, and the transceiver can be interface circuit 1302. Furthermore, Figure 13 The communication device 130 shown may also include a memory 1303.
[0234] This application also provides a communication device 1400, such as... Figure 14 As shown, the communication device 1400 can be the above-mentioned Figures 2 to 11 The transmitting device or the chip or system-on-a-chip in the transmitting device shown in the embodiments may also be as described above. Figures 2 to 11 The receiving device or the chip or system-on-a-chip in the receiving device shown in the embodiments. Figure 14 As shown, the communication device 1400 includes a processor 1401, a transceiver 1402, and a communication line 1403.
[0235] Furthermore, the communication device 1400 may also include a memory 1404. The processor 1401, the memory 1404, and the transceiver 1402 can be connected via a communication line 1403.
[0236] The processor 1401 can be a central processing unit (CPU), a general-purpose processor, a network processor (NP), a digital signal processor (DSP), a microprocessor, a microcontroller, a programmable logic device (PLD), or any combination thereof. The processor 1401 can also be other devices with processing capabilities, such as circuits, devices, or software modules, without limitation.
[0237] Transceiver 1402 is used to communicate with other devices or other communication networks. These other communication networks can be Ethernet, radio access network (RAN), wireless local area networks (WLAN), etc. Transceiver 1402 can be a module, circuit, transceiver, or any device capable of enabling communication.
[0238] Communication line 1403 is used to transmit information between the components included in communication device 1400.
[0239] Memory 1404 is used to store instructions. These instructions can be computer programs.
[0240] The memory 1404 can be a read-only memory (ROM) or other type of static storage device that can store static information and / or instructions; it can also be a random access memory (RAM) or other type of dynamic storage device that can store information and / or instructions; it can also be an electrically erasable programmable read-only memory (EEPROM), a compact disc read-only memory (CD-ROM) or other optical disc storage, optical disc storage (including compressed optical discs, laser discs, optical discs, digital universal optical discs, Blu-ray discs, etc.), magnetic disk storage media or other magnetic storage devices, etc., without limitation.
[0241] It should be noted that the memory 1404 can exist independently of the processor 1401, or it can be integrated with the processor 1401. The memory 1404 can be used to store instructions, program code, or some data, etc. The memory 1404 can be located inside or outside the communication device 1400, without limitation. The processor 1401 is used to execute the instructions stored in the memory 1404 to implement the communication method provided in the following embodiments of this application.
[0242] In one example, processor 1401 may include one or more CPUs, for example Figure 14 CPU0 and CPU1 in the CPU.
[0243] As an optional implementation, the communication device 1400 includes multiple processors, for example, besides Figure 14 In addition to processor 1401, it may also include processor 1407.
[0244] As an optional implementation, the communication device 1400 also includes an output device 1405 and an input device 1406. For example, the input device 1406 is a device such as a keyboard, mouse, microphone, or joystick, and the output device 1405 is a device such as a display screen or speaker.
[0245] It should be noted that the communication device 1400 can be a desktop computer, laptop computer, network server, mobile phone, tablet computer, wireless terminal, embedded device, chip system, or other device. Figure 14 Equipment with a similar structure. Furthermore... Figure 14 The structural composition shown does not constitute a limitation on the communication device, except... Figure 14In addition to the components shown, the communication device may include more or fewer components than illustrated, or combine certain components, or have different component arrangements.
[0246] In this embodiment of the application, the chip system may be composed of chips or may include chips and other discrete devices.
[0247] This application also provides a computer program product that, when executed by a computer, can implement the functions of any of the above method embodiments.
[0248] This application also provides a computer program that, when executed by a computer, can implement the functions of any of the above method embodiments.
[0249] This application also provides a computer-readable storage medium. All or part of the processes in the above method embodiments can be implemented by a computer program instructing related hardware. This program can be stored in the computer-readable storage medium, and when executed, it can include the processes of the above method embodiments. The computer-readable storage medium can be an internal storage unit of the terminal (including a data sending end and / or a data receiving end) of any of the foregoing embodiments, such as the terminal's hard disk or memory. The computer-readable storage medium can also be an external storage device of the terminal, such as a plug-in hard disk, smart media card (SMC), secure digital (SD) card, flash card, etc., equipped on the terminal. Further, the computer-readable storage medium can include both the terminal's internal storage unit and external storage devices. The computer-readable storage medium is used to store the computer program and other programs and data required by the terminal. The computer-readable storage medium can also be used to temporarily store data that has been output or will be output.
[0250] It should be noted that the terms "first" and "second," etc., in the specification, claims, and drawings of this application are used to distinguish different objects, not to describe a specific order. "First" and "second" are used for descriptive purposes only and should not be construed as indicating or implying relative importance or implicitly specifying the number of indicated technical features. Therefore, a feature defined with "first" and "second" may explicitly or implicitly include one or more of that feature. In the description of this embodiment, unless otherwise stated, "a plurality of" means two or more.
[0251] Furthermore, the terms “comprising” and “having”, and any variations thereof, are intended to cover non-exclusive inclusion. For example, a process, method, system, product, or apparatus that includes a series of steps or units is not limited to the steps or units listed, but may optionally include steps or units not listed, or may optionally include other steps or units inherent to such process, method, product, or apparatus.
[0252] It should be understood that in this application, "at least one (item)" means one or more. "More than one" means two or more. "At least two (items)" means two or three or more. "And / or" is used to describe the relationship between related objects, indicating that there can be three relationships. For example, "A and / or B" can mean: only A exists, only B exists, and A and B exist simultaneously, where A and B can be singular or plural. The character " / " generally indicates that the related objects before and after are in an "or" relationship. "At least one (item) of the following" or similar expressions refer to any combination of these items, including any combination of single or plural items. For example, at least one (item) of a, b, or c can mean: a, b, c, "a and b", "a and c", "b and c", or "a and b and c", where a, b, and c can be single or multiple. Both "...when" and "if" indicate that a corresponding action will be taken under certain objective circumstances. They are not time limits, nor do they require a judgment action to be taken when the action is taken, nor do they imply any other limitations.
[0253] In the embodiments of this application, the terms "exemplary" or "for example" are used to indicate that something is an example, illustration, or description. Any embodiment or design that is described as "exemplary" or "for example" in the embodiments of this application should not be construed as being more preferred or advantageous than other embodiments or design. Specifically, the use of terms such as "exemplary" or "for example" is intended to present the relevant concepts in a specific manner to facilitate understanding.
[0254] In this application, "sending information to...(terminal device)" can be understood as the destination of the information being the terminal device. This can include sending information directly or indirectly to the terminal device. "Receiving information from...(terminal device)" can be understood as the source of the information being the terminal device, and can include receiving information directly or indirectly from the terminal device. Information may undergo necessary processing between the source and destination, such as format changes, but the destination can understand the valid information from the source.
[0255] Through the above description of the embodiments, those skilled in the art can clearly understand that, for the sake of convenience and brevity, only the division of the above functional modules is used as an example. In actual applications, the above functions can be assigned to different functional modules as needed, that is, the internal structure of the device can be divided into different functional modules to complete all or part of the functions described above.
[0256] In the several embodiments provided in this application, it should be understood that the disclosed apparatus and methods can be implemented in other ways. For example, the apparatus embodiments described above are merely illustrative; for instance, the division of modules or units is only a logical functional division, and in actual implementation, there may be other division methods. For example, multiple units or components may be combined or integrated into another device, or some features may be ignored or not executed. Furthermore, the mutual coupling or direct coupling or communication connection shown or discussed may be through some interfaces; the indirect coupling or communication connection between devices or units may be electrical, mechanical, or other forms.
[0257] The units described as separate components may or may not be physically separate. A component shown as a unit can be one or more physical units; that is, it can be located in one place or distributed in multiple different locations. Some or all of the units can be selected to achieve the purpose of this embodiment according to actual needs.
[0258] Furthermore, the functional units in the various embodiments of this application can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit. The integrated unit can be implemented in hardware or as a software functional unit.
[0259] 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 readable storage medium. Based on this understanding, the technical solution of this application embodiment, or all or part of the technical solution, can be embodied in the form of a software product. This software product is stored in a storage medium and includes several instructions to cause a device (which may be a microcontroller, chip, etc.) or processor to execute all or part of the steps of the methods described in 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, ROM, RAM, magnetic disks, or optical disks.
Claims
1. A communication method, characterized in that, include: Obtain a first primitive from the Logical Link Control LLC sublayer of the transmitting device; wherein the first primitive includes a First Media Access Control Service Data Unit (MSDU) and time information of the first MSDU; The first MSDU is transmitted based on its time information.
2. The method according to claim 1, characterized in that, The first primitive is used by the LLC sublayer of the transmitting device to request the Media Access Control (MAC) sublayer of the transmitting device to transmit the first MSDU to the LLC sublayer of the receiving device.
3. The method according to claim 1 or 2, characterized in that, The time information of the first MSDU includes one or more of the following: enqueue time, expiration time, or remaining time; Wherein, the enqueue time is the time when the first MSDU arrives at the MAC sublayer of the sending device, the expiration time is the sum of the enqueue time and the upper limit of the delay corresponding to the first MSDU, and the remaining time is the time remaining until the expiration time.
4. The method according to claim 3, characterized in that, The time information of the first MSDU also includes first indication information; The first indication information is used to indicate that the time information of the first MSDU is the enqueue time; or The first indication information is used to indicate that the time information of the first MSDU is the expiration time; or The first indication information is used to indicate that the time information of the first MSDU is the remaining time.
5. The method according to claim 3 or 4, characterized in that, If the time information of the first MSDU includes the enqueue time, the time information of the first MSDU also includes the link identifier of the time reference link corresponding to the enqueue time.
6. The method according to claim 5, characterized in that, The link identifier of the time reference link corresponding to the queuing time is the same as the link identifier of the service start time of the first mechanism.
7. The method according to any one of claims 3-6, characterized in that, If the time information of the first MSDU includes the expiration time, the time information of the first MSDU also includes the link identifier of the time reference link corresponding to the expiration time.
8. The method according to claim 7, characterized in that, The link identifier of the time reference link corresponding to the expiration time is the same as the link identifier of the service start time of the first mechanism.
9. The method according to any one of claims 3-8, characterized in that, When the value of the Stream Classification Service Identifier (SCSID) in the first primitive is non-zero, the time information of the first MSDU includes the expiration time.
10. The method according to any one of claims 3-9, characterized in that, When the value of SCSID in the first primitive is zero, the time information of the first MSDU includes the enqueue time.
11. The method according to any one of claims 1-10, characterized in that, The step of transmitting the first MSDU based on the time information of the first MSDU includes: Based on the time information of the first MSDU, the first MSDU is transmitted according to the urgency of the time.
12. A communication method, characterized in that, include: Obtain a first primitive from the Logical Link Control LLC sublayer of the transmitting device; wherein the first primitive includes a First Media Access Control Service Data Unit (MSDU) and time information of the first MSDU; Send a low-latency buffer report to the receiving device; wherein the low-latency buffer report is used to indicate the time information of the second MSDU, and the time information of the second MSDU is determined based on the time information of the first MSDU.
13. A communication method, characterized in that, include: Receive a low-latency buffer report from the transmitting device; wherein the low-latency buffer report includes time information of the second Media Access Control Service Data Unit (MSDU); The timing information of the second MSDU is determined based on the timing information of the first MSDU, and the timing information of the first MSDU carries a first primitive between the logical link control LLC sublayer of the transmitting device and the media access control MAC sublayer of the transmitting device.
14. The method according to claim 13, characterized in that, The method further includes: Based on the low-latency buffer report, MSDU uplink scheduling is performed according to the time urgency.
15. The method according to any one of claims 12-14, characterized in that, The first primitive is used by the LLC sublayer of the transmitting device to request the transmission of the first MSDU to the LLC sublayer of the receiving device from the MAC sublayer of the transmitting device.
16. The method according to any one of claims 12-15, characterized in that, The time information of the second MSDU is the time information of the MSDU located at the head of the queue in the first MSDU; or The time information of the second MSDU is the time information of the MSDU with the most urgent time among the first MSDUs; or The time information of the second MSDU is the same as the time information of the first MSDU.
17. The method according to any one of claims 12-16, characterized in that, The time information of the first MSDU includes one or more of the following: enqueue time, expiration time, or remaining time; Wherein, the enqueue time is the time when the first MSDU arrives at the MAC sublayer of the sending device, the expiration time is the sum of the enqueue time and the upper limit of the delay corresponding to the first MSDU, and the remaining time is the time remaining until the expiration time.
18. The method according to claim 17, characterized in that, The time information of the first MSDU also includes first indication information; The first indication information is used to indicate that the time information of the first MSDU is the enqueue time; or The first indication information is used to indicate that the time information of the first MSDU is the expiration time; or The first indication information is used to indicate that the time information of the first MSDU is the remaining time.
19. The method according to claim 17 or 18, characterized in that, If the time information of the first MSDU includes the enqueue time, the time information of the first MSDU also includes the link identifier of the time reference link corresponding to the enqueue time.
20. The method according to claim 19, characterized in that, The link identifier of the time reference link corresponding to the queuing time is the same as the link identifier of the service start time of the first mechanism.
21. The method according to any one of claims 17-20, characterized in that, If the time information of the first MSDU includes the expiration time, the time information of the first MSDU also includes the link identifier of the time reference link corresponding to the expiration time.
22. The method according to claim 21, characterized in that, The link identifier of the time reference link corresponding to the expiration time is the same as the link identifier of the service start time of the first mechanism.
23. The method according to any one of claims 17-22, characterized in that, When the value of the Stream Classification Service Identifier (SCSID) in the first primitive is non-zero, the time information of the first MSDU includes the expiration time.
24. The method according to any one of claims 17-23, characterized in that, When the value of SCSID in the first primitive is zero, the time information of the first MSDU includes the enqueue time.
25. A communication device, characterized in that, The communication device includes a processor; the processor is configured to run a computer program or instructions that cause the communication method as described in any one of claims 1-11 to be executed, or cause the communication method as described in any one of claims 12, 15-24 to be executed, or cause the communication method as described in any one of claims 13-24 to be executed.
26. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores computer instructions or programs that, when some or all of the computer instructions or programs are run on a computer, cause the communication method as described in any one of claims 1-11 to be executed, or cause the communication method as described in any one of claims 12, 15-24 to be executed, or cause the communication method as described in any one of claims 13-24 to be executed.
27. A computer program product, characterized in that, The computer program product includes computer instructions or programs; when some or all of the computer instructions or programs are run on a computer, they cause the communication method as described in any one of claims 1-11 to be executed, or the communication method as described in any one of claims 12, 15-24 to be executed, or the communication method as described in any one of claims 13-24 to be executed.