Communication method, communication apparatus, transmitting end and receiving end
By configuring AMSDUs in the 802.11 protocol to correspond to their respective SCS flow identifiers, the problem of insufficient QoS management differentiation during MSDU aggregation is solved, and better quality of service management is achieved for data from different SCS flows.
Patent Information
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- AMLOGIC (SHANGHAI) CO LTD
- Filing Date
- 2024-12-24
- Publication Date
- 2026-07-02
AI Technical Summary
In the 802.11 protocol, the SCSID attribute is not considered during the aggregation process of MSDU, which may result in MSDUs from different SCS flows being aggregated into the same AMSDU, leading to low QoS management differentiation.
By configuring AMSDUs to correspond to their respective SCS flow identifiers and considering the SCS flow identifier attributes of MSDUs during aggregation, it is ensured that each AMSDU conforms to the corresponding SCS flow identifier policy, thereby enabling differentiated operations during AMSDU aggregation and reception and providing different QoS management.
It improves the differentiation of QoS management for data from different SCS streams, fills the gap in existing communication protocols, and ensures that data from different SCS streams can receive appropriate quality of service management.
Smart Images

Figure CN2024141910_02072026_PF_FP_ABST
Abstract
Description
Communication methods and devices, transmitter, receiver Technical Field
[0001] This application relates to the field of communication technology, specifically to a communication method and communication device, a transmitting end, and a receiving end. Background Technology
[0002] In the 802.11 protocol, in order to enable the lower layer to better provide corresponding services to the upper layer applications, the Stream Classification Service (SCS) function was proposed. This allows the 802.11 Medium Access Control (MAC) layer to identify upper layer Transmission Control Protocol / Internet Protocol (TCP / IP) data with specified characteristic values, thereby enabling more Quality of Service (QoS) management of these categorized and identifiable data.
[0003] The 802.11 protocol also introduces the function of data aggregation, including the aggregation of multiple Medium Access Control Service Data Units (MSDUs) into an aggregated MSDU (AMSDU). During the aggregation of MSDUs, it is stipulated that as long as different MSDUs have the same three attributes, they can be aggregated into an AMSDU.
[0004] Between two devices using the 802.11 protocol, an SCS stream can be established. Each SCS stream has a corresponding identifier, which can be called an SCS stream identifier (SCSID).
[0005] However, in the current 802.11 AMSDU operation, when multiple MSDUs are aggregated to form an AMSDU at the sending end, the SCSID attribute of the MSDU is not considered, which may result in MSDUs from different SCS streams being aggregated into the same AMSDU. Correspondingly, at the receiving end, MSDUs from different SCS streams also need to be mixed together, resulting in low differentiation of QoS management for data from different SCS streams. Summary of the Invention
[0006] In view of this, embodiments of this application provide a communication method and communication device, a transmitting end and a receiving end, which can improve the differentiation of QoS management for data from different SCS streams and effectively fill the gaps in existing communication protocols.
[0007] To achieve the above objectives, the embodiments of this application provide the following technical solutions.
[0008] In a first aspect, embodiments of this application provide a communication method, including: configuring first information, the first information including one or more AMSDUs, each AMSDU corresponding to its respective SCS stream identifier.
[0009] Optionally, the SCS flow identifier corresponding to the AMSDU satisfies one or more of the following: the MSDU aggregated from a single AMSDU has a single specified SCS flow identifier; the MSDU aggregated from a single AMSDU has at least a portion of multiple specified SCS flow identifiers; the MSDU aggregated from a single AMSDU has an unspecified SCS flow identifier and / or no SCS flow has been established; the MSDU with a single specified SCS flow identifier can be aggregated with MSDUs of some or all of the other specified SCS flow identifiers.
[0010] Optionally, the MSDUs aggregated by the AMSDUs may also satisfy one or more of the following: the MSDUs aggregated by a single AMSDU have the same priority; the MSDUs aggregated by a single AMSDU have the same MAC layer transmit address; the MSDUs aggregated by a single AMSDU have the same MAC layer receive address; and the MSDUs aggregated by a single AMSDU have the same MAC layer service identifier.
[0011] Optionally, the method further includes: not aggregating MSDUs with the specified SCS stream identifier for some or all MSDUs.
[0012] Optionally, one or more of the following may be determined by negotiation between the sender and receiver: the SCS flow identifier corresponding to the AMSDU is determined during and / or after the negotiation process for establishing the SCS flow; the maximum number of MSDUs allowed to be aggregated in a single AMSDU aggregation.
[0013] Optionally, the method further includes one or more of the following: establishing an SCS stream with the receiving end; sending the first information.
[0014] Secondly, embodiments of this application provide a communication method, including: determining one or more rearrangement windows, wherein the rearrangement windows are used to determine the order of MPDUs to which multiple AMSDUs belong; wherein each rearrangement window corresponds to its respective SCS stream identifier.
[0015] Optionally, the SCS flow identifier corresponding to the rearranged window satisfies one or more of the following: the MSDU corresponding to a single rearranged window has a single specified SCS flow identifier; the MSDU corresponding to a single rearranged window has at least a portion of multiple specified SCS flow identifiers; the MSDU corresponding to a single rearranged window has an unspecified SCS flow identifier and / or no SCS flow has been established; the MSDU with a single specified SCS flow identifier can be aggregated with the MSDUs of some or all of the other specified SCS flow identifiers.
[0016] Optionally, the MSDU corresponding to the rearranged window may also satisfy one or more of the following: the MAC layer transmission address corresponding to the MSDU corresponding to a single rearranged window is consistent, and / or the MAC layer service identifier corresponding to the MSDU corresponding to a single rearranged window is consistent.
[0017] Optionally, the method further includes one or more of the following: receiving first information, the first information containing one or more AMSDUs, each AMSDU corresponding to its respective SCS flow identifier; and determining the rearrangement window corresponding to each AMSDU.
[0018] Optionally, the rearrangement window corresponding to each AMSDU is determined according to one or more of the following: the SCS flow identifier of the AMSDU is consistent with the SCS flow identifier of the rearrangement window; the MAC layer transmission address corresponding to the AMSDU is consistent with the transmission address of the rearrangement window; and the MAC layer service identifier corresponding to the AMSDU is consistent with the service identifier of the rearrangement window.
[0019] Optionally, for each AMSDU, the method further includes one or more of the following: sorting the MPDUs to which the AMSDU belongs within the corresponding rearrangement window, and / or performing replay attack detection processing on the MPDUs to which the AMSDU belongs within the corresponding rearrangement window; recording one or more of the following of the processed MPDUs at the corresponding position in the corresponding rearrangement window: sequence number and packet sequence number.
[0020] Optionally, for each MPDU to which an AMSDU belongs, the method further includes: recording an invalid flag on the element at the corresponding position in another non-corresponding rearranged window.
[0021] Optionally, the method further includes: independently detecting the MPDU recorded for each element in each rearrangement window to determine whether it can be reported to the upper layer for processing in sequence.
[0022] Thirdly, embodiments of this application provide a communication device, including: a configuration module for configuring first information, the first information including one or more AMSDUs, each AMSDU corresponding to its respective SCS stream identifier.
[0023] Fourthly, embodiments of this application provide a communication device, including: a determining module, configured to determine one or more rearrangement windows, the rearrangement windows being used to determine the order of MSDUs contained in a plurality of AMSDUs; wherein each rearrangement window corresponds to its respective SCS stream identifier.
[0024] Fifthly, embodiments of this application also provide a computer-readable storage medium having a computer program stored thereon, wherein when the computer program is run by a processor, the communication method provided in the first aspect or the communication method provided in the second aspect is executed.
[0025] In a sixth aspect, embodiments of this application provide a transmitting end, including a memory and a processor; the memory stores a computer program that can run on the processor, and the processor executes the communication method provided in the first aspect when running the computer program.
[0026] In a seventh aspect, embodiments of this application provide a receiving end, including a memory and a processor; the memory stores a computer program that can run on the processor, and the processor executes the communication method provided in the second aspect when running the computer program.
[0027] Eighthly, embodiments of this application provide a computer program product, the computer program product including a computer program, which, when run on a computer, causes the computer to execute the communication method provided in the first or second aspect.
[0028] Ninthly, embodiments of this application provide a chip (or communication device) storing a computer program, which, when executed by the chip, causes the communication method provided in the first or second aspect to be executed.
[0029] In a tenth aspect, embodiments of this application provide a chip module on which a computer program is stored, such that when the computer program is executed by the chip module, the communication method provided in the first or second aspect is executed.
[0030] Eleventhly, embodiments of this application provide a communication system, the communication system including means for performing the method provided in the first aspect and means for performing the method provided in the second aspect.
[0031] Compared with the prior art, the technical solution of the embodiments of the present invention has the following beneficial effects:
[0032] In this embodiment of the invention, by configuring each AMSDU in the first information to correspond to its respective SCS flow identifier, the SCS flow identifier attribute of the MSDU can be considered when aggregating multiple MSDUs to form an AMSDU. This ensures that each piece of first information has a corresponding SCS flow identifier policy, and each AMSDU in each piece of first information conforms to the SCS flow identifier policy corresponding to that first information. Thus, during the aggregation of AMSDUs, differentiation can be performed based on the SCS flow identifier of the MSDU; and during the reception of AMSDUs, differentiation can be performed based on the SCS flow identifier attribute of the MSDU. This better provides different QoS management for data from different SCS flows, thereby improving the distinguishability of QoS management for data from different SCS flows and effectively filling the gaps in existing communication protocols. Attached Figure Description
[0033] To more clearly illustrate the technical solutions in the embodiments of this application or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are only embodiments of this application. For those skilled in the art, other drawings can be obtained based on the provided drawings without creative effort.
[0034] Figure 1 shows the correspondence between the OSI model and the TCP / IP model;
[0035] Figure 2 is a schematic diagram of message transmission based on MSDU and MPDU;
[0036] Figure 3 is a schematic diagram of the frame structure of an 802.11 MPDU;
[0037] Figure 4 is a schematic diagram of a working scenario for MSDU aggregation;
[0038] Figure 5 is a schematic diagram of a working scenario where MSDU is aggregated to obtain AMSDU and then packaged to obtain MPDU.
[0039] Figure 6 is a schematic diagram of a communication method in an embodiment of the present invention;
[0040] Figure 7 is a schematic diagram of a working scenario for MSDU aggregation in an embodiment of the present invention;
[0041] Figure 8 is a schematic diagram of another communication method in an embodiment of the present invention;
[0042] Figure 9 is a schematic diagram of a method for constructing rearranged windows in an embodiment of the present invention;
[0043] Figure 10 is a schematic diagram of the sorting process and replay attack detection process of an MPDU in an embodiment of the present invention;
[0044] Figure 11 is a schematic diagram of a working scenario for determining the order of MSDUs based on window rearrangement in an embodiment of the present invention;
[0045] Figure 12 is a schematic diagram of the structure of a communication device according to an embodiment of the present invention;
[0046] Figure 13 is a schematic diagram of another communication device in an embodiment of the present invention;
[0047] Figure 14 is a schematic diagram of the hardware structure of a communication device according to an embodiment of the present invention. Detailed Implementation
[0048] The technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, and not all embodiments. Based on the embodiments of this application, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this application.
[0049] The communication systems applicable to the embodiments of this application include, but are not limited to, third-generation (3G), LTE, fourth-generation (4G), fifth-generation (5G), NR, and future evolution systems or multiple converged communication systems. The 5G system can be a non-standalone (NSA) 5G system or a standalone (SA) 5G system. The solutions of the embodiments of this application can also be applied to various new communication systems in the future, such as 6G and 7G.
[0050] This application mainly relates to communication between wireless network technology (WIFI) devices (such as WIFI senders and WIFI receivers).
[0051] The WIFI device can be a terminal device (or a terminal) that supports WIFI functionality. In this application embodiment, the terminal can refer to various forms of user equipment (UE), access terminal, user unit, user station, mobile station, mobile station (MS), remote station, remote terminal, mobile device, user terminal, terminal equipment, wireless communication device, user agent, or user device that supports WIFI functionality. The terminal can also be a cellular phone, cordless phone, Session Initiation Protocol (SIP) phone, Wireless Local Loop (WLL) station, Personal Digital Assistant (PDA), handheld device with wireless communication functionality, computing device, or other processing device connected to a wireless modem, in-vehicle device, wearable device, a terminal in a future 5G network, or a terminal in a future evolved Public Land Mobile Network (PLMN), etc. This application embodiment does not limit this to any particular type.
[0052] The peer device can be a network device that supports WIFI or a terminal device that supports WIFI.
[0053] The network device in this application embodiment can also be called an access network device, for example, it can be a base station (BS) (also called a base station device). A network device is a device deployed in a radio access network (RAN) to provide wireless communication functions. For example, in second-generation (2G) networks, equipment providing base station functionality includes base transceiver stations (BTS); in 3G networks, it includes Node Bs; in 4G networks, it includes evolved Node Bs (eNBs); in wireless local area networks (WLANs), it is an access point (AP); in NR, it includes next-generation node base stations (gNBs) and further evolved Node Bs (ng-eNBs). The gNB communicates with the terminal using NR technology, while the ng-eNB communicates with the terminal using evolved Universal Terrestrial Radio Access (E-UTRA) technology. Both gNBs and ng-eNBs can connect to the 5G core network. The network equipment in this application embodiment also includes equipment providing base station functionality in future new communication systems.
[0054] The communication systems to which the methods provided in this application can be applied may include access points (APs) and / or stations (STAs). For example, this application can be applied to scenarios of communication or sensing between APs and STAs, between APs, or between STAs in WIFI, and this application is not limited thereto. Optionally, an AP can communicate or sense with a single STA, or an AP can communicate or sense with multiple STAs simultaneously. Specifically, communication or sensing between an AP and multiple STAs can be further divided into downlink transmission where the AP simultaneously sends signals to multiple STAs, and uplink transmission where multiple STAs send signals to the AP. The communication between APs and STAs, between APs, or between STAs can support WLAN communication protocols, which may include protocols from the IEEE 802.11 series, such as the 802.11be standard, and of course, standards after 802.11be.
[0055] An access point is a device with wireless communication capabilities, supporting communication or sensing using WLAN protocols. It has the ability to communicate or sense other devices (such as stations or other access points) in a WLAN network, and can also communicate or sense other devices. Alternatively, an access point acts as a bridge connecting wired and wireless networks, primarily connecting various wireless network clients together and then connecting the wireless network to an Ethernet network. In a WLAN system, an access point can be called an Access Point Station (AP STA). This wireless communication device can be a complete device or a chip or processing system installed within a complete device. Devices with these chips or processing systems can implement the methods and functions of the embodiments of this application under the control of the chip or processing system. The AP in the embodiments of this application is a device that provides services to STAs and can support 802.11 series protocols or subsequent protocols. For example, an access point can be an access point for terminals (such as mobile phones) to enter a wired (or wireless) network, mainly deployed in homes, buildings, and parks, with a typical coverage radius of tens to hundreds of meters; it can also be deployed outdoors. For example, an AP can be a communication server, router, switch, bridge, or other communication entity; an AP can include various forms of macro base stations, micro base stations, relay stations, etc. Of course, an AP can also be the chip and processing system in these various forms of devices, thereby realizing the methods and functions of the embodiments of this application.
[0056] A station is a device with wireless communication capabilities, supporting communication or sensing using the WLAN protocol, and having the ability to communicate or sense other stations or access points in a WLAN network. In a WLAN system, a station can be called a non-access point station (non-AP STA). For example, an STA is any user communication device that allows a user to communicate or sense with an AP and thus communicate with the WLAN. This wireless communication device can be a complete device, or it can be a chip or processing system installed in a complete device. Devices with these chips or processing systems can implement the methods and functions of the embodiments of this application under the control of the chip or processing system. For example, a station can be a wireless communication chip, a wireless sensor, or a wireless communication terminal, and can also be called a user. Furthermore, a station can be a mobile phone supporting Wi-Fi communication, a tablet computer supporting Wi-Fi communication, a set-top box supporting Wi-Fi communication, a smart TV supporting Wi-Fi communication, a smart wearable device supporting Wi-Fi communication, an in-vehicle communication device supporting Wi-Fi communication, and a computer supporting Wi-Fi communication, etc.
[0057] The 802.11 protocol is a Layer 2 protocol, meaning it only includes Layer 1 (L1) – the Physical Layer (PHY) and Layer 2 (L2) – the Data Link Layer (MAC). The TCP / IP protocol typically runs on top of the 802.11 protocol.
[0058] Referring to Figure 1, Figure 1 is a diagram showing the correspondence between the OSI model and the TCP / IP model.
[0059] Figure 1 shows the correspondence between the commonly used TCP / IP network model in practice and the theoretical OSI model.
[0060] According to the layered design of the OSI network model, different layers do not need to know each other's details.
[0061] Referring to Figure 2, Figure 2 is a schematic diagram of message transmission based on MSDU and MPDU.
[0062] As shown in Figure 2, in the 802.11 protocol, the upper-layer application data (app data) is encapsulated by the transport layer (such as the TCP / UDP layer) and then by the network layer (such as the IP layer) to become the payload MSDU of the lower-layer 802.11 MAC layer. After further encapsulation by the 802.11 layer, it becomes the MPDU.
[0063] In practice, different application layers have specific QoS requirements; for example, voice applications require lower latency, while file transfer applications require higher throughput. In the 802.11 protocol, the SCS (Service Control Service) function was proposed to enable the lower layers to better provide corresponding services to upper-layer applications.
[0064] Referring to Figure 3, Figure 3 is a schematic diagram of the frame structure of an 802.11 MPDU.
[0065] The 802.11 MPDU may include one or more of the following: 802.11 MAC header, IP header, IP payload, and frame check sequence (FCS).
[0066] The IP header may include: Version, Differentiated Services Code Point (DSCP), Protocol, Source Address, and Destination IP Address, which may also be called Destination Address.
[0067] IP payloads can include source port numbers and destination port numbers, as well as data payloads.
[0068] An IP 5-tuple can be obtained based on the IP header and IP payload, which may include, for example, the source IP address, destination IP address, source port number, destination port number, and transport protocol.
[0069] Specifically, by classifying the characteristic values (such as IP 5-tuples) of the TCP / IP data carried by the 802.11 MAC layer, the 802.11 MAC layer can identify TCP / IP data with specified characteristic values from the upper layer, thereby enabling more QoS management of this classifiable data.
[0070] Between two devices using the 802.11 protocol, an SCS stream can be established. Each established SCS stream has a corresponding SCS stream identifier (SCSID). If the upper-layer data characteristics carried by the MSDU exchanged between two devices using the 802.11 protocol match an established SCS stream with a SCSID=X, then this MSDU can be said to have the attribute SCSID=X.
[0071] Referring to Figure 4, Figure 4 is a schematic diagram of a working scenario for MSDU aggregation.
[0072] The 802.11 protocol also introduced data aggregation capabilities, including AMSDU and AMPDU.
[0073] MSDU is generally an Ethernet message that, after being processed by the 802.11 MAC layer with the addition of a message integrity code (MIC) for integrity verification, framing, message buffering in power-saving mode, encryption, sequence number assignment, cyclic redundancy check (CRC) verification, and a MAC header, becomes MPDU. MPDU refers to a data frame encapsulated by the 802.11 protocol.
[0074] The 802.11 protocol also stipulates that as long as different MSDUs have the same three attributes, they can be aggregated into an AMSDU:
[0075] i. The MAC layer transmit address (TA) corresponding to the MSDU;
[0076] ii. The receiver address (RA) of the MAC layer corresponding to the MSDU;
[0077] iii. The traffic identifier (TID) of the MAC layer corresponding to the MSDU.
[0078] MPDU aggregation technology combines multiple encapsulated MPDUs (e.g., encapsulated according to the 802.11 protocol) together. Each MPDU can contain only a single MSDU or contain several aggregated MSDU messages.
[0079] In one MPDU aggregation technique, the sender can aggregate multiple MPDUs containing individual AMSDUs to form an AMPDU. Each MPDU is assigned a sequence number (SN) according to its chronological order (i.e., the arrival order of the MSDUs within the contained AMSDUs). This allows the receiver, upon receiving the AMPDU and parsing each MPDU, to determine the correct order of the MSDUs contained in each MPDU based on the SN corresponding to the MPDU. This enables the receiver to reorder the MPDUs and report them to the upper layer for processing according to the previous order.
[0080] When data encryption is enabled, after assigning a sequence number (SN), the MPDU is also assigned a packet number (PN) related to encryption security. Upon receiving the MPDU, the receiver can use the PN to perform security detection for replay attacks, also known as replay detection.
[0081] Referring to Figure 5, Figure 5 is a schematic diagram of a working scenario where MSDU is aggregated to obtain AMSDU and then packaged to obtain MPDU.
[0082] As shown in Figure 5, there are two different flows at the upper layer. One is a flow with an established SCS identifier of SCSID1, and the other is other data flows, which can be called non-SCS flows. The MSDUs corresponding to these two flows meet the conditions that can be aggregated into AMSDUs.
[0083] Taking a single AMSDU aggregation with a maximum of 4 MSDUs allowed to be aggregated as an example, under the current AMSDU / AMPDU operation, MSDU2 from SCSID1 and MSDU1 / MSDU3 / MSDU4 from other streams are aggregated into AMDSU1 according to the arrival time of the MSDUs, and the corresponding MSDU5 / 6 / 7 / 8 form AMSDU2.
[0084] Furthermore, MPDU1 containing AMDSU1 is assigned SN1 and PN1, and MPDU2 containing AMDSU2 is assigned SN2 and PN2.
[0085] Correspondingly, when the receiver receives AMSDU1 and AMSDU2, even if AMSDU2 is received first and then AMSDU1, the receiver can still determine the correct order of the MSDUs in AMSDU1 and AMSDU2 by comparing SN2 and SN1, so that it can report MSDU1 / 2 / 3 / 4 / 5 / 6 / 7 / 8 to the upper layer for processing in the correct order.
[0086] However, in an 802.11-based AMSDU operation, when multiple MSDUs are aggregated to form an AMSDU at the sending end, the SCSID attribute of the MSDU is not considered, which may result in MSDUs from different SCS streams being aggregated into the same AMSDU. Correspondingly, at the receiving end, MSDUs from different SCS streams also need to be mixed together, resulting in low differentiation of QoS management for data from different SCS streams.
[0087] In this embodiment of the invention, by configuring each AMSDU in the first information to correspond to its respective SCS flow identifier, the SCS flow identifier attribute of the MSDU can be considered when aggregating multiple MSDUs to form an AMSDU. This ensures that each piece of first information has a corresponding SCS flow identifier policy, and each AMSDU in each piece of first information conforms to the SCS flow identifier policy corresponding to that first information. Thus, during the aggregation of AMSDUs, differentiation can be performed based on the SCS flow identifier of the MSDU; and during the reception of AMSDUs, differentiation can be performed based on the SCS flow identifier attribute of the MSDU. This better provides different QoS management for data from different SCS flows, thereby improving the distinguishability of QoS management for data from different SCS flows and effectively filling the gaps in existing communication protocols.
[0088] To make the above-mentioned objectives, features and beneficial effects of the present invention more apparent and understandable, specific embodiments of the present invention will be described in detail below with reference to the accompanying drawings.
[0089] Referring to Figure 6, which is a schematic diagram of a communication method according to an embodiment of the present invention, the communication method can be used by the sender and may include step S61.
[0090] In some embodiments, the sender can be a first AP and the receiver can be a second AP.
[0091] In some embodiments, the sender can be an AP and the receiver can be a STA.
[0092] Step S61: Configure first information, which includes one or more AMSDUs, each AMSDU corresponding to its respective SCS flow identifier.
[0093] It should be noted that the first information may include AMPDU and / or MPDU.
[0094] Specifically, the operation strategy of AMSDU can be determined based on the SCS stream identifier of the SCS stream.
[0095] It should be noted that the SCS flow identifier for the flow classification service traffic shown in the embodiments of this application is illustrated using SCSID as an example, but it should not be construed as a limitation on the embodiments of this application. The SCSID is illustrated as being consistent with the identifier in the SCS request and SCS response; however, the embodiments of this application are not limited to this. For example, the identifier of the traffic traffic can be other IDs, which can correspond to the SCSIDs in the SCS request and SCS response.
[0096] In some embodiments, the method may further include one or more of the following: establishing an SCS stream with the receiving end; sending the first information.
[0097] In one specific embodiment, the sending end and the receiving end can establish an SCS stream before the sending end configures the first information.
[0098] Furthermore, the sender and receiver can establish an SCS stream through negotiation.
[0099] The AMSDU aggregation sender and AMSDU receiver negotiate the corresponding allowed AMSDU operations based on one or more established SCS streams.
[0100] In practical applications, the first Wi-Fi device can negotiate an SCS flow strategy with the second Wi-Fi device through the interaction of SCS request packets / SCS response packets in order to establish an SCS flow.
[0101] In some specific implementations, one or more of the following can be determined by negotiation between the sender and the receiver: the SCS flow identifier corresponding to the AMSDU can be determined by negotiation between the sender and the receiver during and / or after the negotiation process for establishing the SCS flow; the maximum number of MSDUs allowed to be aggregated in a single AMSDU aggregation can be determined by negotiation between the sender and the receiver.
[0102] In some embodiments, the SCS stream identifier corresponding to the AMSDU may be determined by negotiation between the sending end and the receiving end during the negotiation process of establishing the SCS stream.
[0103] Specifically, the negotiation process for AMSDU operations based on SCS streams can be included in the existing negotiation process for establishing SCS streams.
[0104] In some embodiments, the SCS stream identifier corresponding to the AMSDU may be determined by negotiation between the sending end and the receiving end after the negotiation process for establishing the SCS stream.
[0105] Specifically, the negotiation process for AMSDU operations based on SCS streams can be a separate negotiation process for AMSDU operations based on SCS streams after the negotiation process for establishing the SCS stream is completed.
[0106] In practical applications, the first Wi-Fi device can negotiate the SCS stream identifier strategy with the second Wi-Fi device through the interaction of SCS request packets / SCS response packets.
[0107] In some embodiments, the sending end may send the first information after configuring the first information. Conversely, the receiving end may receive the first information.
[0108] In one specific embodiment, during the negotiation process of establishing the SCS stream, the sending end and the receiving end negotiate to determine the SCS stream identifier corresponding to the AMSDU. After the negotiation process of establishing the SCS stream is completed, if it is necessary to modify the SCS stream identifier corresponding to the AMSDU, the sending end and the receiving end negotiate again to determine the SCS stream identifier corresponding to the AMSDU.
[0109] In some embodiments, the maximum number of MSDUs allowed to be aggregated in a single AMSDU aggregation can be determined through negotiation between the sender and receiver.
[0110] Specifically, in the negotiation of AMSDU operations based on SCS streams, the maximum number of MSDUs that can be aggregated in an AMSDU can be negotiated.
[0111] In practical applications, the first WIFI device can negotiate with the second WIFI device through the interaction of SCS request packets / SCS response packets to determine the maximum number of MSDUs allowed to be aggregated in a single AMSDU aggregation. In the embodiment shown in Figure 5, a maximum of 4 MSDUs are allowed to be aggregated in a single AMSDU aggregation.
[0112] In the specific implementation of step S61, each AMSDU corresponds to its respective SCS flow identifier, which can be used to indicate that each AMSDU in each first piece of information has a consistent SCS flow identifier strategy. In other words, each first piece of information has a corresponding SCS flow identifier strategy, and each AMSDU in each first piece of information conforms to the SCS flow identifier strategy.
[0113] Each AMSDU corresponds to its respective SCS flow identifier, which can be used to indicate that each AMSDU in each first piece of information meets the preset SCS flow identifier conditions. In specific implementations, multiple preset SCS flow identifier conditions can be set, and selected according to specific needs.
[0114] In some embodiments, the SCS flow identifier corresponding to the AMSDU satisfies one or more of the following: the MSDU aggregated from a single AMSDU has a single specified SCS flow identifier; the MSDU aggregated from a single AMSDU has at least a portion of a plurality of specified SCS flow identifiers; the MSDU aggregated from a single AMSDU has an unspecified SCS flow identifier and / or no SCS flow has been established; the MSDU with a single specified SCS flow identifier can be aggregated with MSDUs of some or all of the specified SCS flow identifiers from other specified SCS flow identifiers.
[0115] In one specific embodiment, the MSDU aggregated from a single AMSDU has a single designated SCS flow identifier.
[0116] Specifically, AMSDU aggregation needs to be performed separately for each specified SCS stream identifier.
[0117] In other words, a single AMSDU only allows the aggregation of MSDUs for the SCS streams of a specified single SCSID.
[0118] In a specific implementation, the method may further include: setting a waiting time, and in response to exceeding the waiting time, sending an AMSDU that has not reached the maximum number of MSDUs.
[0119] In this embodiment of the invention, by setting a waiting time, the delay of a single AMSDU can be avoided from being too long, which would affect the communication quality.
[0120] In one specific embodiment, the MSDU aggregated by a single AMSDU has at least a portion of a plurality of specified SCS flow identifiers.
[0121] Specifically, for multiple specified SCS flow identifiers, AMSDU aggregation can be performed on some or all of them.
[0122] In other words, a single AMSDU allows the aggregation of MSDUs for multiple specified SCSID SCS streams.
[0123] In one specific embodiment, the MSDUs aggregated from a single AMSDU have an unspecified SCS flow identifier and / or no SCS flow has been established.
[0124] Specifically, for other SCS flows and / or MSDUs that have not established SCS flows, i.e., MSDUs that have not negotiated corresponding AMSDU operations based on SCS flows, the AMSDU aggregation of these MSDUs is still performed according to the traditional AMSDU aggregation operation.
[0125] In one specific embodiment, the MSDU of a single specified SCS flow identifier can be aggregated with the MSDUs of some or all of the other specified SCS flow identifiers.
[0126] Specifically, it is permissible to allow one of multiple specified SCS flow identifiers to be aggregated into an AMSDU with the MSDU of an SCS flow of another specified SCSID. In other words, an AMSDU allows the MSDU of an SCS flow of a specified SCSID to be aggregated with the MSDU of an SCS flow of another specified SCSID.
[0127] In some embodiments, some or all MSDUs are not aggregated with MSDUs that specify the SCS stream identifier.
[0128] In SCS-based AMSDU operation negotiation, it is possible to negotiate not to perform AMSDU aggregation on MSDUs of SCS streams for a specified SCSID.
[0129] Specifically, one or more SCS flow identifiers (i.e., specified SCS flow identifiers) can be predefined. For MSDUs with the specified SCS flow identifier, some MSDUs can be predefined not to be aggregated with these MSDUs, and all MSDUs can be predefined not to be aggregated with these MSDUs.
[0130] In practical applications, for services with high latency requirements, it is possible to negotiate not to perform AMSDU aggregation. By sending and receiving directly without aggregation, the efficiency of sending and receiving can be improved and the latency reduced.
[0131] As mentioned above, in some embodiments, the cases where different MSDUs can be aggregated into an AMSDU require that the following three attributes are the same: TA of the MAC layer corresponding to the MSDU, RA of the MAC layer corresponding to the MSDU, and TID of the MAC layer corresponding to the MSDU.
[0132] It should be noted that the above three attributes correspond to the three attributes of MSDU: destination address (DA), source address (SA), and priority.
[0133] Specifically, the DA of MSDU can correspond to the RA of MPDU, the SA of MSDU can correspond to the TA of MPDU, and the Priority of MSDU can correspond to the TID of MPDU.
[0134] In summary, in some embodiments, the MSDUs aggregated by the AMSDU also satisfy one or more of the following: the MSDUs aggregated by a single AMSDU have the same priority; the MSDUs aggregated by a single AMSDU have the same MAC layer transmit address; the MSDUs aggregated by a single AMSDU have the same MAC layer receive address; and the MSDUs aggregated by a single AMSDU have the same MAC layer service identifier.
[0135] In this embodiment of the invention, in the AMSDU aggregation operation based on SCS streams, determining whether multiple MSDUs can be aggregated into the same AMSDU can be based on four attributes of the MSDU.<DA,SA,Priority,SCSID> SCSID is the identifier of the established SCS stream to which the MSDU belongs.
[0136] Referring to Figure 7, which is a schematic diagram of a working scenario of MSDU aggregation in an embodiment of the present invention.
[0137] It should be noted that the embodiment shown in Figure 7 is illustrated by taking the establishment of two SCS streams at the AMSDU sender and receiver, with the SCS stream identifiers being SCSID1 and SCSID2 respectively, but the embodiments of the present invention are not limited thereto.
[0138] It should be noted that the embodiment shown in Figure 7 is illustrated with the example that the maximum number of MSDUs allowed to be aggregated in a single AMSDU aggregation is 2, but the embodiments of the present invention are not limited thereto.
[0139] It should be noted that the MSDU for a single AMSDU aggregation has a single specified SCS flow identifier. An AMSDU aggregation operation based on the SCS flow is established on the SCS flow of SCSID1, and the MSDU specified by SCSID1 can only be AMSDU aggregated individually.
[0140] Therefore, when performing AMSDU aggregation at the AMSDU sending end, the MSDUs of SCSID1 are aggregated together.
[0141] It should be noted that MSDUs aggregated from a single AMSDU may have unspecified SCS flow identifiers and / or have not established SCS flows. MSDUs from SCSID2 and other MSDUs that have not established SCS flows can be aggregated together.
[0142] In this embodiment of the invention, the sending end configures each AMSDU in the first information to correspond to its respective SCS flow identifier. When aggregating multiple MSDUs to form an AMSDU, the SCS flow identifier attribute of the MSDU is considered, so that each piece of first information has a corresponding SCS flow identifier policy, and each AMSDU in each piece of first information conforms to the SCS flow identifier policy corresponding to the first information. Thus, during the aggregation of AMSDUs, a differentiation operation can be performed based on the SCS flow identifier of the MSDU; during the reception of AMSDUs, a differentiation operation can be performed based on the SCS flow identifier attribute of the MSDU, so as to better provide different QoS management for data of different SCS flows, thereby improving the differentiation of QoS management provided for data of different SCS flows and effectively filling the gaps in existing communication protocols.
[0143] Referring to Figure 8, which is a schematic diagram of another communication method in an embodiment of the present invention, the communication method can be used by the receiver and may include step S81.
[0144] In some embodiments, the sender can be a first AP and the receiver can be a second AP.
[0145] In some embodiments, the sender can be an AP and the receiver can be a STA.
[0146] Step S81: Determine one or more rearrangement windows, which are used to determine the order of MPDUs to which multiple AMSDUs belong, wherein each rearrangement window corresponds to its respective SCS flow identifier.
[0147] For more information on SCS flow identifiers, please refer to the previous text and Figure 6; further details will not be provided here.
[0148] In some embodiments, the MSDU corresponding to the rearranged window also satisfies one or more of the following: the MAC layer transmission address corresponding to the MSDU corresponding to a single rearranged window is consistent, and / or the MAC layer service identifier corresponding to the MSDU corresponding to a single rearranged window is consistent.
[0149] In practice, the reorder window can be based on one or more of the three attributes of the MPDU corresponding to the AMSDU: TA, TID, and SCSID.
[0150] Taking all three attributes as an example, on the receiving end, corresponding to each<TA,TID,SCSID> There can be a rearrangement window. Each element in each rearrangement window can correspond to the SN and PN number of an MPDU.
[0151] MPDU can contain AMSDU and / or MSDU.
[0152] Referring to Figure 9, which is a schematic diagram of a method for constructing rearranged windows in an embodiment of the present invention.
[0153] Each element in the rearrangement window can correspond to the MPDU of a preset SN, and the SNs are arranged in order. In other words, each rearrangement window has its own start SN (WinStart_SN) and end SN (WinEnd_SN).
[0154] As shown in Figure 9, the rearranged window to the left of the arrow is based on<TA,TID> It has a start SN and a stop SN.
[0155] In SCS stream-based AMSDU receive operations, the rearrangement window is based on...<TA,TID,SCSID> Further classification was carried out, including the negotiation process for AMSDU operations based on SCS streams.<TA,TID,SCSID> The SCSID in the combination can be a single SCSID establishing an SCS stream, or a combination of multiple SCSIDs establishing SCS streams. Other MSDUs that have not established AMSDU operations based on SCS streams share a single rearrangement window, as shown in the figure.<TA,TID,default> The window is rearranged.
[0156] In some embodiments, the SCS flow identifier corresponding to the rearranged window satisfies one or more of the following: the MSDU corresponding to a single rearranged window has a single specified SCS flow identifier; the MSDU corresponding to a single rearranged window has at least a portion of a plurality of specified SCS flow identifiers; the MSDU corresponding to a single rearranged window has an unspecified SCS flow identifier and / or no SCS flow has been established; the MSDU with a single specified SCS flow identifier can be aggregated with the MSDUs of some or all of the other specified SCS flow identifiers.
[0157] In one specific embodiment, the MSDU corresponding to a single rearranged window has a single designated SCS flow identifier.
[0158] Specifically, the AMSDU contained in the AMPDU / MPDU of a single rearranged window record is only allowed to aggregate the MSDU of the SCS stream of a specified single SCSID.
[0159] In one specific embodiment, the MSDU corresponding to a single rearranged window has at least a portion of a plurality of specified SCS flow identifiers.
[0160] Specifically, for multiple specified SCS flow identifiers, AMSDU aggregation can be performed on some or all of them.
[0161] The AMSDU contained in the AMPDU / MPDU of a single rearranged window record allows the aggregation of MSDUs of SCS streams for multiple specified SCSIDs.
[0162] In other words, the receiving end classifies / groups the received AMSDUs, and for AMSDUs or MSDUs of SCS streams that have already established AMSDU operations based on SCS streams, according to the SCSID of the corresponding SCS stream.
[0163] In one specific embodiment, the MSDU corresponding to a single rearrangement window has an unspecified SCS flow identifier and / or no SCS flow has been established.
[0164] Specifically, for other SCS flows and / or MSDUs that have not established SCS flows, the AMSDU aggregation of these MSDUs is still performed according to the traditional AMSDU aggregation operation.
[0165] In this context, an MSDU that has not established an SCS flow can be understood as an MSDU that has not negotiated the corresponding AMSDU operation based on the SCS flow.
[0166] The AMSDUs contained in the AMPDU / MPDU recorded in a single rearranged window are also aggregated according to the traditional AMSDU aggregation operation.
[0167] In one specific embodiment, the MSDU of a single specified SCS flow identifier can be aggregated with the MSDUs of some or all of the other specified SCS flow identifiers.
[0168] Specifically, the AMSDU contained in the AMPDU / MPDU recorded in a single rearrangement window can allow one of multiple specified SCS flow identifiers to be aggregated with the MSDU of the SCS flow of other specified SCSIDs. That is, an AMSDU allows the aggregation of the MSDU of the SCS flow of a specified SCSID with the MSDU of the SCS flow of other specified SCSIDs.
[0169] In other words, the receiving end classifies / groups AMSDUs or MSDUs that do not establish SCS-based AMSDU operations and / or other AMSDUs / MSDUs that do not establish SCS flows separately.
[0170] In some embodiments, some or all MSDUs are not aggregated with MSDUs that specify the SCS stream identifier.
[0171] In SCS-based AMSDU operation negotiation, it is possible to negotiate not to perform AMSDU aggregation on MSDUs of SCS streams for a specified SCSID.
[0172] In practical applications, for services with high latency requirements, it is possible to negotiate not to perform AMSDU aggregation. By sending and receiving directly without aggregation, the efficiency of sending and receiving can be improved and the latency reduced.
[0173] In one specific embodiment, the method for determining the rearranged windows can be to update the rearranged windows through maintenance, based on the already constructed rearranged windows.
[0174] In one specific embodiment, the rearrangement window can be determined by initializing the elements in the rearrangement window to zero based on the already constructed rearrangement window, and then writing to the rearrangement window.
[0175] In some embodiments, the communication method further includes one or more of the following: receiving first information, the first information containing one or more AMSDUs, each AMSDU corresponding to its respective SCS stream identifier; and determining the rearrangement window corresponding to each AMSDU.
[0176] In one specific embodiment, the receiver can initialize a rearrangement window according to the negotiation result of the SCS-based AMSDU operation, and use it to process AMSDUs with different SCS stream identification strategies.
[0177] Furthermore, the rearrangement window corresponding to each AMSDU can be determined according to one or more of the following: the SCS flow identifier of the AMSDU is consistent with the SCS flow identifier of the rearrangement window; the MAC layer transmission address corresponding to the AMSDU is consistent with the transmission address of the rearrangement window; and the MAC layer service identifier corresponding to the AMSDU is consistent with the service identifier of the rearrangement window.
[0178] As mentioned earlier, the three attributes of the MAC layer corresponding to the MSDU (that is, the three attributes of the MPDU) correspond to the three attributes of the MSDU: the DA of the MSDU corresponds to the RA of the MPDU, the SA of the MSDU corresponds to the TA of the MPDU, and the Priority of the MSDU corresponds to the TID of the MPDU.
[0179] Therefore, by setting one or more of the above consistency settings, the accuracy of the correspondence between AMSDU and rearranged windows can be improved.
[0180] Taking the embodiments shown above and in Figure 7 as examples, two rearrangement windows can be initialized to handle SCSID1 packets and SCSID2 / non-SCS packets, respectively.
[0181] When the receiver receives a new AMSDU / MPDU / AMPDU, it can process the AMSDU / MPDU / AMPDU in the corresponding rearrangement window according to the corresponding SCSID.
[0182] As shown in Figure 9, based on<TA,TID,SCS X> The rearranged window can handle AMSDU / MPDU / AMPDU corresponding to SCS X, based on<TA,TID,SCS Y> The rearranged window can handle AMSDU / MPDU / AMPDU corresponding to SCS Y, based on<TA,TID,default> The rearrangement window can handle AMSDU / MPDU / AMPDU corresponding to unspecified SCS flow identifiers and / or SCS flows that have not been established.
[0183] As a non-restrictive example, SCS X can be used to represent that a single rearranged window corresponds to an MSDU with a single specified SCS flow identifier, such as SCS1, which is based on...<TA,TID,SCS X> The rearranged window can handle SCS1 AMSDU / MPDU / AMPDU.
[0184] SCS Y can be used to indicate that the MSDU corresponding to a single rearranged window has at least a portion of multiple specified SCS flow identifiers, such as SCS2 and SCS3, based on<TA,TID,SCS Y> The rearranged window can handle AMSDU / MPDU / AMPDU for SCS2 and SCS3.
[0185] The default value can be used to indicate that the MSDU corresponding to a single rearrangement window has an unspecified SCS flow identifier and / or no SCS flow has been established, such as SCS 4 and no established SCS flow.<TA,TID,default> The rearranged window can handle SCS 4 and AMSDU / MPDU / AMPDU without an established SCS stream.
[0186] Referring to Figures 10 and 11, Figure 10 is a flowchart illustrating the sorting and replay attack detection process of MPDUs in an embodiment of the present invention, and Figure 11 is a schematic diagram illustrating a working scenario of determining the order of MSDUs based on a rearranged window in an embodiment of the present invention.
[0187] It should be noted that in each process of recording AMSDU to the rearrangement window as shown in Figure 11, the sorting process and / or replay attack detection process shown in Figure 10 can be used.
[0188] It should be noted that the embodiment shown in Figure 11 is illustrated by taking the establishment of two SCS streams at the AMSDU sender and receiver, with the SCS stream identifiers being SCSID1 and SCSID2 respectively, but the embodiments of the present invention are not limited thereto.
[0189] It should be noted that the embodiment shown in Figure 11 is illustrated with the example that the maximum number of MSDUs allowed to be aggregated in a single AMSDU aggregation is 2, but the embodiments of the present invention are not limited thereto.
[0190] In some embodiments, for each AMSDU, the method may further include one or more of the following: sorting the MPDUs to which the AMSDU belongs within the corresponding rearrangement window, and / or performing replay attack detection processing on the MPDUs to which the AMSDU belongs within the corresponding rearrangement window.
[0191] In the corresponding element at the corresponding position in the corresponding rearrangement window, record one or more of the following for the processed MPDU: sequence number and packet number.
[0192] As shown in Figure 10, for each newly received MPDU, based on this MPDU's...<TA,TID,SCSID> Find the corresponding rearrangement window. Compare the SN / PN of this MPDU with the SN / PN of existing MPDUs in this rearrangement window, and perform corresponding sorting / replay detection processing. If these processes pass, record this MPDU in the corresponding position in this rearrangement window; otherwise, discard this MPDU.
[0193] More specifically, after receiving an MPDU with SN=X and PN=Y, the receiving end can execute steps S101 to S105, which are explained below.
[0194] In step S101, it is determined whether the SN is in the window (Valid SN check). If the result is yes, step S102 can be executed; otherwise, step S105 is executed.
[0195] Specifically, it can be determined whether SN=X is between the start SN and end SN of the rearranged window (If this SN=X locates in the valid location? (e.g., between WinStart and WinEnd)).
[0196] In step S102, it is determined whether the duplicate detection is passed. If the result is yes, step S103 can be executed; otherwise, step S105 is executed.
[0197] Specifically, it can be determined whether the SN is being received for the first time (If this is the first time that thisSN = X MPDU is received?).
[0198] In step S103, it is determined whether the replay attack detection is successful. If the result is yes, step S104 can be executed; otherwise, step S105 is executed.
[0199] In a non-limiting specific embodiment, it can be determined whether the PN corresponding to SN conforms to the ascending order in the reorder window (If this PN = Y MPDU has bigger PN than that of any MPDU with SN smaller than this MPDU in the reorder window?).
[0200] In step S104, the elements in the reorder window are updated (and the MPDU's SN / PN is recorded).
[0201] In step S105, the MPDU is discarded.
[0202] As can be seen from the above, the receiving end can perform independent reordering processing according to the sequence number SN of the MPDU corresponding to the AMSDU, and can also perform independent security replay attack detection processing according to the sequence number PN of the MPDU corresponding to the AMSDU.
[0203] In this embodiment of the invention, after the above sorting process and / or replay attack detection process, the MSDU contained in the MPDU in each rearrangement window can restore its own position order, making up for the order deviation caused during transmission.
[0204] In some embodiments, one or more of the following are recorded on the element at the corresponding position in the corresponding rearrangement window: sequence number and packet number of the processed MPDU.
[0205] In the embodiment shown in Figure 11, the sender groups four AMSDUs / MPDUs: AMSDU1 / AMSDU2 / AMSDU3 / AMDU4. However, the receiver receives the AMSDUs in the following order: AMSDU3 / AMSDU4 / AMSDU2 / AMSDU1.
[0206] In some embodiments, for each MPDU to which an AMSDU belongs, the method further includes: recording an invalid flag on the element at the corresponding position in another non-corresponding rearranged window.
[0207] Specifically, if this AMSDU / MPDU passes sorting / replay detection and other processing in the corresponding rearrangement window, then this AMSDU / MPDU is recorded in the corresponding position in the rearrangement window.
[0208] For example, SN3 and PN3 are recorded in a data based on<TA,TID,SCS1> In the corresponding position of the rearranged window.
[0209] At the same time, another rearranged window (such as based on) can also be rearranged.<TA,TID,SCS2 / non-SCS> The element at the same position in the rearranged window is marked as invalid, so that another rearranged window (such as one based on...) can be...<TA,TID,SCS2 / non-SCS> When performing related processing on the rearranged window, this element can be ignored.
[0210] In other words, in the processing of each group of AMSDUs, when comparing the sequence number SN and / or PN, the receiver can ignore the SN and / or PN used by the MPDU corresponding to the AMSDU / MSDU that is not in this group.
[0211] In some embodiments, the method further includes: independently detecting the MPDU recorded for each element in each rearrangement window to determine whether it can be reported to the upper layer for processing in sequence.
[0212] Specifically, after receiving and processing an AMSDU / MPDU, each rearrangement window can independently check whether the currently recorded AMSDU / MPDU can be reported to the upper layer for processing in sequence.
[0213] In other words, the receiving end can report the MSDUs in the AMSDU to the upper layer for processing in the order of the sorted SNs, after the AMSDU has completed independent sorting and secure replay attack detection processing.
[0214] In this embodiment of the invention, by determining one or more rearrangement windows corresponding to their respective SCS flow identifiers, the SCS flow identifier attribute of the MSDU can be considered when determining the order of the MPDUs to which multiple AMSDUs belong. This ensures that each rearrangement window has a corresponding SCS flow identifier policy, and the AMPDU / MPDU / AMSDU / MSDU recorded in each rearrangement window conforms to the corresponding SCS flow identifier policy. Thus, when receiving AMSDUs, the SCS flow identifier attribute of the MSDU can be used to distinguish between them, providing better QoS management for data from different SCS flows. This improves the distinguishability of QoS management for data from different SCS flows and effectively fills the gaps in existing communication protocols.
[0215] Referring to Figure 12, which is a schematic diagram of a communication device according to an embodiment of the present invention, the communication device may include:
[0216] Configuration module 121 is used to configure first information, the first information including one or more AMSDUs, each AMSDU corresponding to its respective SCS flow identifier.
[0217] In specific implementations, the communication device shown in Figure 12 may correspond to a chip with communication function in a communication device; or it may correspond to a communication device that includes a chip or chip module with communication function; or it may correspond to a communication device.
[0218] For more information on the working principle, operation method, and beneficial effects of the communication device shown in Figure 12, please refer to the previous text and the detailed descriptions in Figures 6 and 7. It will not be repeated here.
[0219] Referring to Figure 13, which is a schematic diagram of another communication device according to an embodiment of the present invention, the communication device may include:
[0220] The determination module 13 is used to determine one or more rearrangement windows, which are used to determine the order of MSDUs contained in multiple AMSDUs; wherein each rearrangement window corresponds to its respective SCS stream identifier.
[0221] In specific implementations, the communication device shown in Figure 13 may correspond to a chip with communication function in a communication device; or to a communication device including a chip or chip module with communication function; or to a communication device.
[0222] For more information on the working principle, operation method, and beneficial effects of the communication device shown in Figure 13, please refer to the previous text and the detailed descriptions in Figures 8 to 11. It will not be repeated here.
[0223] This application also provides a computer-readable storage medium storing a computer program thereon. When the computer program is run by a computer, the aforementioned communication method is executed. The storage medium may include read-only memory (ROM), random access memory (RAM), a magnetic disk, or an optical disk, etc. The storage medium may also include non-volatile memory or non-transitory memory, etc.
[0224] This application embodiment also provides a transmitting end, including a memory and a processor, wherein the memory stores a computer program that can run on the processor, and the processor executes the steps of the above-described communication method when running the computer program.
[0225] This application embodiment also provides a receiving end, including a memory and a processor, wherein the memory stores a computer program that can run on the processor, and the processor executes the steps of the above-described communication method when running the computer program.
[0226] The transmitting end may include AP and / or STA, and the receiving end may include AP and / or STA. For example, it can be applied to scenarios of communication or sensing between AP and STA, between AP and AP, or between STA and STA in WIFI, and may include, but is not limited to, terminal devices such as mobile phones, computers, tablets, vehicle terminals and wearable devices.
[0227] Referring to Figure 14, which is a schematic diagram of the hardware structure of a communication device in an embodiment of this application.
[0228] The communication device can be a Bluetooth peripheral device or a BLE central device.
[0229] The terminal shown in Figure 14 includes a memory 141, a processor 142, and a transceiver 143. The processor 142 is coupled to the memory 141 and the transceiver 143. The memory 141 can be located inside or outside the terminal. The memory 141, processor 142, and transceiver 143 can be connected via a communication bus. The transceiver 143 is used to communicate with other devices or communication networks.
[0230] Optionally, the transceiver 143 can be a transmitter. The memory 141 stores a computer program that can run on the processor 142, and when the processor 142 runs the computer program, the transceiver 143 performs the steps in the communication method provided in the above embodiments.
[0231] It should be understood that in the embodiments of this application, the processor can be a central processing unit (CPU), or it can be other general-purpose processors, digital signal processors (DSPs), application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. The general-purpose processor can be a microprocessor or any conventional processor.
[0232] It should also be understood that the memory in the embodiments of this application can be volatile memory or non-volatile memory, or may include both volatile and non-volatile memory. Non-volatile memory can be ROM, programmable read-only memory (PROM), erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), or flash memory. Volatile memory can be random access memory (RAM), which is used as an external cache. By way of example, but not limitation, many forms of RAM are available, such as static RAM (SRAM), dynamic random access memory (DRAM), synchronous dynamic random access memory (SDRAM), double data rate synchronous dynamic random access memory (DDR SDRAM), enhanced synchronous dynamic random access memory (ESDRAM), synchronous linked dynamic random access memory (SLDRAM), and direct rambus RAM (DR RAM).
[0233] The above embodiments can be implemented, in whole or in part, by software, hardware, firmware, or any other combination thereof. When implemented using software, the above embodiments can be implemented, in whole or in part, as a computer program product. The computer program product includes one or more computer instructions or computer programs. When the computer instructions or computer program are loaded or executed on a computer, all or part of the processes or functions described in the embodiments of this application are generated. The computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable device. The computer program can be stored in a computer-readable storage medium or transferred from one computer-readable storage medium to another. For example, the computer program can be transferred from one website, computer, server, or data center to another website, computer, server, or data center via wired or wireless means.
[0234] It should be understood that in the various embodiments of this application, the order of the above-mentioned processes does not imply the order of execution. The execution order of each process should be determined by its function and internal logic, and should not constitute any limitation on the implementation process of the embodiments of this application.
[0235] In the several embodiments provided in this application, it should be understood that the disclosed methods, apparatuses, and systems can be implemented in other ways. For example, the apparatus embodiments described above are merely illustrative; for example, the division of units is only a logical functional division, and there may be other division methods in actual implementation; for example, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed. Furthermore, the coupling or direct coupling or communication connection shown or discussed may be through some interfaces, and the indirect coupling or communication connection between devices or units may be electrical, mechanical, or other forms.
[0236] The units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the units can be selected to achieve the purpose of this embodiment according to actual needs.
[0237] Furthermore, the functional units in the various embodiments of this application can be integrated into one processing unit, or each unit can be physically included separately, or two or more units can be integrated into one unit. The integrated units described above can be implemented in hardware or in a combination of hardware and software functional units. For example, for various devices or products applied to or integrated into a chip, each module / unit can be implemented using hardware such as circuits, or at least some modules / units can be implemented using software programs running on a processor integrated within the chip, while the remaining (if any) modules / units can be implemented using hardware such as circuits; for various devices or products applied to or integrated into a chip module, each module / unit can be implemented using hardware such as circuits, and different modules / units can be located in the same component (e.g., chip, circuit module, etc.) or different components of the chip module, or at least some modules / units can be implemented using hardware such as circuits. The components can be implemented using software programs that run on the processor integrated within the chip module. The remaining (if any) modules / units can be implemented using hardware methods such as circuits. For various devices and products applied to or integrated into the terminal, each of its components / units can be implemented using hardware methods such as circuits. Different modules / units can be located in the same component (e.g., chip, circuit module, etc.) or in different components within the terminal. Alternatively, at least some modules / units can be implemented using software programs that run on the processor integrated within the terminal, while the remaining (if any) modules / units can be implemented using hardware methods such as circuits.
[0238] The integrated units implemented as software functional units described above can be stored in a computer-readable storage medium. These software functional units, stored in a storage medium, include several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute some 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, random access memory (RAM), magnetic disks, or optical disks.
[0239] It should be understood that the term "and / or" in this article is merely a description of the relationship between related objects, indicating that three relationships can exist. For example, A and / or B can represent: A existing alone, A and B existing simultaneously, or B existing alone. Additionally, the character " / " in this article indicates that the preceding and following related objects have an "or" relationship.
[0240] In the embodiments of this application, "multiple" refers to two or more.
[0241] In this application, "equal to" can be used with "less than" or "greater than", but not simultaneously with both. When "equal to" is used with "less than", it applies to the technical solution adopted by "less than". When "equal to" is used with "greater than", it applies to the technical solution adopted by "greater than".
[0242] The descriptions of "first," "second," etc., appearing in the embodiments of this application are for illustrative purposes and to distinguish the objects being described. They have no order and do not indicate any special limitation on the number of devices in the embodiments of this application, nor do they constitute any limitation on the embodiments of this application.
[0243] While the embodiments disclosed above are described in this application, this application is not limited thereto. Any person skilled in the art can make various modifications and alterations without departing from the spirit and scope of this application; therefore, the scope of protection of this application should be determined by the scope defined in the claims.
Claims
A communication method characterized by comprising: include: Configure first information, which includes one or more AMSDUs, each AMSDU corresponding to its respective SCS flow identifier. The communication method according to claim 1, characterized in that The SCS flow identifier corresponding to the AMSDU satisfies one or more of the following: The MSDU aggregated from a single AMSDU has a single specified SCS flow identifier; The MSDU aggregated from a single AMSDU has at least a portion of multiple specified SCS flow identifiers; The MSDUs aggregated from a single AMSDU have an unspecified SCS flow identifier and / or no SCS flow has been established; The MSDU of a single specified SCS flow identifier can be aggregated with the MSDUs of some or all of the other specified SCS flow identifiers. The communication method according to claim 2, characterized in that The MSDU aggregated by the AMSDU also satisfies one or more of the following: MSDUs aggregated from a single AMSDU have the same priority; The MAC layer send address of the MSDUs aggregated from a single AMSDU is the same; The MAC layer receive address of the MSDUs aggregated from a single AMSDU is consistent. The service identifier at the MAC layer is consistent for the MSDUs aggregated from a single AMSDU. The communication method according to claim 1, characterized in that The method further includes: Some or all MSDUs do not aggregate MSDUs with the specified SCS stream identifier. The communication method according to claim 1, characterized in that One or more of the following are determined through negotiation between the sender and receiver: The SCS flow identifier corresponding to the AMSDU is determined during the negotiation process of establishing the SCS flow and / or after the negotiation process of establishing the SCS flow. The maximum number of MSDUs that can be aggregated in a single AMSDU aggregation. The communication method according to claim 1, characterized in that It also includes one or more of the following: Establish an SCS stream with the receiving end; Send the first message. A communication method characterized by comprising: include: Determine one or more rearrangement windows, which are used to determine the order of MPDUs to which multiple AMSDUs belong; Each rearrangement window corresponds to its own SCS flow identifier. The communication method according to claim 7, characterized in that The SCS stream identifier corresponding to the rearranged window satisfies one or more of the following: Each rearranged window corresponds to an MSDU with a single specified SCS flow identifier; The MSDU corresponding to a single rearranged window has at least a portion of multiple specified SCS flow identifiers; The MSDU corresponding to a single rearrangement window has an unspecified SCS flow identifier and / or no SCS flow has been established; The MSDU of a single specified SCS flow identifier can be aggregated with the MSDUs of some or all of the other specified SCS flow identifiers. The communication method according to claim 8, characterized in that The MSDU corresponding to the rearranged window also satisfies one or more of the following: The MSDU corresponding to a single rearranged window has the same MAC layer send address, and / or the MSDU corresponding to a single rearranged window has the same MAC layer service identifier. The communication method according to claim 7, characterized in that It also includes one or more of the following: Receive first information, the first information containing one or more AMSDUs, each AMSDU corresponding to its respective SCS flow identifier; Determine the rearrangement window corresponding to each AMSDU. The communication method according to claim 10, characterized in that The rearrangement window for each AMSDU is determined based on one or more of the following: The SCS stream identifier of the AMSDU is consistent with the SCS stream identifier of the rearranged window; The MAC layer sending address corresponding to the AMSDU is the same as the sending address of the rearranged window; The service identifier of the MAC layer corresponding to the AMSDU is consistent with the service identifier of the rearranged window. The communication method according to claim 10, characterized in that For each AMSDU, the method further includes one or more of the following: Within the corresponding rearrangement window, sort the MPDUs to which the AMSDU belongs, and / or, within the corresponding rearrangement window, perform replay attack detection processing on the MPDUs to which the AMSDU belongs. In the corresponding element at the corresponding position in the corresponding rearrangement window, record one or more of the following for the processed MPDU: sequence number and packet number. The communication method according to claim 12, characterized in that For each MPDU to which an AMSDU belongs, the method further includes: On the element at the corresponding position in another non-corresponding rearranged window, record an invalid flag. The communication method according to claim 12, characterized in that The method further includes: The MPDU of each element record in each rearrangement window is independently checked to determine whether it can be reported to the upper layer for processing in sequence. A communication device, characterized by include: The configuration module is used to configure first information, which includes one or more AMSDUs, each AMSDU corresponding to its respective SCS flow identifier. A communication device, characterized by include: A determination module is used to determine one or more rearrangement windows, which are used to determine the order of MSDUs contained in multiple AMSDUs; Each rearrangement window corresponds to its own SCS flow identifier. A computer-readable storage medium having stored thereon a computer program, characterized in that When the computer program is run by the processor, it causes the communication method according to any one of claims 1 to 6 to be executed, or causes the communication method according to any one of claims 7 to 14 to be executed. A sending end comprising a memory and a processor, the memory having stored thereon a computer program executable on the processor, characterized in that, When the processor runs the computer program, it performs the steps of the communication method according to any one of claims 1 to 6. A receiving end comprising a memory and a processor, a computer program stored on the memory and capable of running on the processor, characterized in that, When the processor runs the computer program, it performs the steps of the communication method according to any one of claims 7 to 14. A computer program product comprising computer programs / instructions, characterized in that, When executed by a processor, the computer program / instruction implements the steps of the communication method according to any one of claims 1 to 6, or implements the steps of the communication method according to any one of claims 7 to 14.