Communication method and apparatus using HPLC technology

By introducing a communication method that allows data frames to contain multiple MAC frames and transmit them through cascade in the communication system of HPLC technology, the problem of insufficient throughput capabilities of the existing system is solved, and more efficient data transmission and communication performance is achieved.

WO2025112729A1PCT designated stage expired Publication Date: 2025-06-05HUAWEI TECH CO LTD

Patent Information

Application Number
PCT/CN2024/115267
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2023-11-28
Filing Date
2024-08-28
Publication Date
2025-06-05

AI Technical Summary

Technical Problem

The communication system of existing HPLC technology has insufficient throughput capabilities, making it difficult to meet the efficient communication needs of charging piles and power system services of new energy vehicles.

Method used

By introducing a communication method in the communication system of HPLC technology, the method allows the generation and transmission of data frames containing one or more MAC frames, cascaded using the first aggregation method, and improve data transmission efficiency and throughput capabilities.

Benefits of technology

This method improves data transmission efficiency, enhances the throughput capability of the communication system, reduces the risk of line congestion and failure of data frame timeout transmission of SOF type data frames, and improves service success rate and response speed of the peer electronic device.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN2024115267_05062025_PF_FP_ABST
    Figure CN2024115267_05062025_PF_FP_ABST
Patent Text Reader

Abstract

A communication method and apparatus using the HPLC technology. The method comprises: a first apparatus generates and sends a data frame, wherein the data frame comprises frame control and one or more physical blocks (PBs), the one or more PB comprise one or more MAC frames, and the one or more MAC frames are cascaded in a first aggregation manner. By means of the method, the data frame may comprise an MAC frame, and also may comprise a plurality of MAC frames. Thus, when a plurality of MAC frames need to be transmitted, one data frame can be used for transmission, thereby improving the data transmission efficiency, and improving the throughput capacity of communication systems using the HPLC technology.
Need to check novelty before this filing date? Find Prior Art

Description

A communication method and device using HPLC technology

[0001] CROSS-REFERENCE TO RELATED APPLICATIONS

[0002] This application claims priority to the Chinese patent application filed with the State Intellectual Property Office of the People's Republic of China on November 28, 2023, with application number 202311610559.1 and application name "A communication method and device using HPLC technology", the entire contents of which are incorporated by reference into this application. Technical Field

[0003] The present application relates to the field of communication technology, and in particular to a communication method and device using high-speed power line communication (HPLC) technology. Background Art

[0004] HPLC technology uses power lines to convert digital signals into analog signals for communication. HPLC technology can be applied to at least one of the following scenarios: electricity consumption data collection, photovoltaic new energy, or smart home.

[0005] With the increasing scale of new energy vehicle charging stations and the rapid development of power system services, higher requirements are being placed on the throughput of communication systems using HPLC technology. Further research is needed to improve the throughput of communication systems using HPLC technology.

[0006] Summary of the Invention

[0007] The present application provides a communication method and apparatus for improving the throughput of a communication system using HPLC technology.

[0008] In a first aspect, an embodiment of the present application provides a communication method, which can be applied to a first device. The first device can be applied to a communication system of HPLC technology. For example, the first device can be a central coordinator (CCO), a proxy coordinator (PCO) or a station (STA), or a module applied to a CCO, PCO or STA, such as a circuit, a chip, a chip system or a processor, or a logical node, a logical module or software that can implement all or part of the functions of a CCO, PCO or STA. The method may include: the first device can generate and send a data frame. The data frame may include: a frame control, and one or more physical blocks (PBs), the one or more PBs including one or more media access control (MAC) frames, and the one or more MAC frames may be cascaded through a first aggregation method.

[0009] This method allows a data frame to consist of either a single MAC frame or multiple MAC frames. This allows multiple MAC frames to be transmitted using a single data frame, thereby improving data transmission efficiency and the throughput of communication systems using HPLC technology. When the size of a MAC frame is smaller than the payload portion of the PB in a data frame, the portion of the PB payload portion of the data frame, excluding the MAC frame, can be used to include part or all of another MAC frame, rather than padding bits, thereby increasing PB utilization.

[0010] In addition, when the multiple MAC frames correspond to data frames of type SOF, since one data frame includes multiple MAC frames, the first device can transmit multiple MAC frames through one data frame, thereby avoiding or reducing line congestion, and further avoiding or reducing the failure of data frames of type SOF to be sent due to timeout, thereby improving the success rate of the service and avoiding or reducing the response delay of the electronic device on the other end.

[0011] Moreover, in this method, the first device can be any electronic device in a communication system applied to HPLC technology, so that STA, PCO and CCO can all cascade one or more MAC frames through the first aggregation method, thereby ensuring efficient transmission of data of each node in the network.

[0012] In mode a1, the one or more MAC frames may be cascaded through one or more cascade headers; that is, the first aggregation mode includes: cascading one or more MAC frames through one or more cascade headers.

[0013] Optionally, the first MAC frame may be any MAC frame among the one or more MAC frames. A first cascade header among the one or more cascade headers may be used to indicate at least one of the following: a length, a destination address, a data type, or a position of a next cascade header after the first cascade header among the one or more cascade headers. The first cascade header is located before the first MAC frame, and / or the first cascade header is adjacent to the first MAC frame.

[0014] Through the method a1, the cascade header can be used to indicate the information of the MAC frame, thereby improving the efficiency of the receiving device of the data frame in parsing the one or more MAC frames.

[0015] In mode a2, the one or more MAC frames may include a first MAC frame and a second MAC frame. The first MAC frame and the second MAC frame are adjacent, or at least one of the following is included between the first MAC frame and the second MAC frame: a PB header, a check sequence, or padding bits. This eliminates the need for concatenation of the first and second MAC frames via a concatenation header, thereby avoiding the overhead of the concatenation header, improving PB utilization, and enhancing data transmission efficiency.

[0016] In some possible implementations, the one or more PBs are multiple PBs, and the first portion of a third MAC frame in the one or more MAC frames is included in the payload portion of a first PB in the multiple PBs, and the second portion of the third MAC frame is included in the payload portion of a second PB in the multiple PBs. In this manner, the third MAC frame can be transmitted across PBs, thereby improving PB utilization and data transmission efficiency.

[0017] In other possible implementations, the one or more PBs are multiple PBs, and each MAC frame in the one or more MAC frames is contained in the payload portion of one of the multiple PBs. In this way, a data frame receiving device can parse the MAC frame contained in each PB after receiving it, without having to wait until all PBs in the data frame have been received before parsing the data frame. In other words, the parsing of a PB is not affected by bit errors in other PBs, thereby improving parsing speed and reducing MAC frame processing latency.

[0018] In some other possible embodiments, the one or more MAC frames are included in the payload portion of the third PB in one or more PBs, thereby improving the throughput capacity of the communication system using HPLC technology, improving data transmission efficiency, and improving PB utilization.

[0019] In one possible design, the frame control and / or the PB header of at least one of the one or more PBs may be used to indicate a concatenation type, which may include at least one of the following:

[0020] Concatenation type 1: One or more MAC frames are concatenated using one or more concatenation headers; the one or more MAC frames are included in the payload portion of a third PB among the one or more PBs, or, if the one or more PBs are multiple PBs, the first portion of a third MAC frame among the one or more MAC frames is included in the payload portion of a first PB among the multiple PBs, and the second portion of the third MAC frame is included in the payload portion of a second PB among the multiple PBs;

[0021] Concatenation type 2: One or more MAC frames are concatenated using one or more concatenation headers; the one or more MAC frames are included in the payload of a third PB among the one or more PBs, or, if the one or more PBs are multiple PBs, each of the one or more MAC frames is included in the payload of one PB among the multiple PBs.

[0022] Concatenation type three: the one or more MAC frames include a first MAC frame and a second MAC frame, wherein the first MAC frame is adjacent to the second MAC frame, or at least one of the following is included between the first MAC frame and the second MAC frame: a PB header, a PB check sequence, or a padding bit; the one or more MAC frames are included in the payload portion of a third PB among the one or more PBs, or the one or more PBs are multiple PBs, the first portion of the third MAC frame among the one or more MAC frames is included in the payload portion of a first PB among the multiple PBs, and the second portion of the third MAC frame is included in the payload portion of a second PB among the multiple PBs; or

[0023] Cascade type four: One or more MAC frames include a first MAC frame and a second MAC frame, wherein the first MAC frame is adjacent to the second MAC frame, or at least one of the following is included between the first MAC frame and the second MAC frame: a PB header, a PB check sequence, or a padding bit; the one or more MAC frames are included in the payload portion of a third PB in the one or more PBs, or the one or more PBs are multiple PBs, and each MAC frame in the one or more MAC frames is included in the payload portion of a PB in the multiple PBs.

[0024] Through this design, the receiving device of the data frame can quickly and accurately determine the cascade type.

[0025] In one possible design, a frame control of a data frame and / or a PB header of at least one of the one or more PBs may be used to indicate whether the data frame includes multiple MAC frames. In this way, a receiving device of the data frame may quickly determine whether the data frame includes multiple MAC frames.

[0026] In one possible design, the one or more MAC frames include at least one of the following: a network layer MAC frame or a service layer MAC frame. Thus, without changing the MAC frame structure and MAC layer service data unit (MSDU) data, the service layer MAC frame and the network layer MAC frame can be included in the same data frame, thereby ensuring data integrity and authenticity when transmitting multi-level data.

[0027] In one possible design, the data frame may be a MAC protocol data unit (MPDU) frame.

[0028] In a second aspect, an embodiment of the present application provides a communication method that can be applied to a second device. The second device can be applied to a communication system of HPLC technology. For example, the second device can be a CCO, PCO, or STA, or a module applied to a CCO, PCO, or STA, such as a circuit, chip, chip system, or processor. It can also be a logical node, logical module, or software that can implement all or part of the functions of a CCO, PCO, or STA. The method may include: the second device can receive and process a data frame. The data frame includes: a frame control, and one or more PBs, the one or more PBs include one or more MAC frames, and the one or more MAC frames are cascaded using a first aggregation method.

[0029] In mode a1, the one or more MAC frames are concatenated through one or more concatenation headers; that is, the first aggregation mode includes: concatenating one or more MAC frames through one or more concatenation headers.

[0030] Optionally, the first MAC frame may be any MAC frame among one or more MAC frames, and a first cascade header among the one or more cascade headers may be used to indicate at least one of the following: a length, a destination address, a data type of the first MAC frame, or a position of a next cascade header after the first cascade header among the one or more cascade headers. The first cascade header is located before the first MAC frame, and / or the first cascade header is adjacent to the first MAC frame.

[0031] In mode a2, the one or more MAC frames may include a first MAC frame and a second MAC frame, wherein the first MAC frame is adjacent to the second MAC frame, or at least one of the following is included between the first MAC frame and the second MAC frame: a PB header, a check sequence, or a padding bit.

[0032] In some possible embodiments, the one or more PBs are multiple PBs, and the first part of the third MAC frame in the one or more MAC frames is included in the payload part of the first PB in the multiple PBs, and the second part of the third MAC frame is included in the payload part of the second PB in the multiple PBs.

[0033] In some other possible embodiments, the one or more PBs are multiple PBs, and each MAC frame in the one or more MAC frames is included in the payload part of one PB in the multiple PBs.

[0034] In some further possible embodiments, the one or more MAC frames are included in a payload portion of a third PB in the one or more PBs.

[0035] In one possible design, the frame control and / or the PB header of at least one of the one or more PBs may be used to indicate a concatenation type, where the concatenation type includes at least one of the following:

[0036] Concatenation type 1: One or more MAC frames are concatenated using one or more concatenation headers; the one or more MAC frames are included in the payload portion of a third PB among the one or more PBs, or, if the one or more PBs are multiple PBs, the first portion of a third MAC frame among the one or more MAC frames is included in the payload portion of a first PB among the multiple PBs, and the second portion of the third MAC frame is included in the payload portion of a second PB among the multiple PBs;

[0037] Concatenation type 2: One or more MAC frames are concatenated using one or more concatenation headers; the one or more MAC frames are included in the payload of a third PB among the one or more PBs, or, if the one or more PBs are multiple PBs, each of the one or more MAC frames is included in the payload of one PB among the multiple PBs.

[0038] Concatenation type three: the one or more MAC frames include a first MAC frame and a second MAC frame, wherein the first MAC frame is adjacent to the second MAC frame, or at least one of the following is included between the first MAC frame and the second MAC frame: a PB header, a PB check sequence, or a padding bit; the one or more MAC frames are included in the payload portion of a third PB among the one or more PBs, or the one or more PBs are multiple PBs, the first portion of the third MAC frame among the one or more MAC frames is included in the payload portion of a first PB among the multiple PBs, and the second portion of the third MAC frame is included in the payload portion of a second PB among the multiple PBs; or

[0039] Cascade type four: One or more MAC frames include a first MAC frame and a second MAC frame, wherein the first MAC frame is adjacent to the second MAC frame, or at least one of the following is included between the first MAC frame and the second MAC frame: a PB header, a PB check sequence, or a padding bit; the one or more MAC frames are included in the payload portion of a third PB in the one or more PBs, or the one or more PBs are multiple PBs, and each MAC frame in the one or more MAC frames is included in the payload portion of a PB in the multiple PBs.

[0040] In one possible design, the frame control of the data frame and / or the PB header of at least one PB in the one or more PBs may be used to indicate whether the data frame includes multiple MAC frames.

[0041] In one possible design, the one or more MAC frames include at least one of the following: a MAC frame of a network layer, or a MAC frame of a service layer.

[0042] In one possible design, the data frame is an MPDU frame.

[0043] In a third aspect, the present application provides a communication device, which may be the first device in the first aspect, and which is capable of implementing the functions of the first aspect. For example, the communication device includes a module, unit, or means corresponding to performing the operations involved in the first aspect, and the module, unit, or means may be implemented through software or hardware, or the corresponding software implementation may be executed by hardware.

[0044] In one possible design, the communication device includes a processing unit and an interface unit. The interface unit can be used to send and receive signals to enable communication between the communication device and other devices; the processing unit can be used to perform certain internal operations of the communication device. The functions performed by the processing unit and the interface unit can correspond to the operations described in the first aspect above.

[0045] In one possible design, the communication device includes a processor, which can be coupled to a memory. The memory can store the necessary computer programs or instructions for implementing the functions of the first aspect. The processor can execute the computer programs or instructions stored in the memory. When the computer programs or instructions are executed, the communication device implements the method of any possible design of the first aspect.

[0046] In one possible design, the communication device includes a processor and a memory, where the memory may store the necessary computer programs or instructions for implementing the functions of the first aspect. The processor may execute the computer program or instructions stored in the memory. When the computer program or instructions are executed, the communication device implements the method of any possible design of the first aspect.

[0047] In one possible design, the communication device includes a processor and an interface circuit, wherein the processor is used to communicate with other devices through the interface circuit and execute the method in any possible design of the first aspect above.

[0048] In a fourth aspect, the present application provides a communication device, which may be the second device in the second aspect, and is capable of implementing the functions of the second aspect. For example, the communication device includes a module, unit, or means corresponding to performing the operations involved in the second aspect, and the module, unit, or means may be implemented through software or hardware, or the corresponding software implementation may be executed by hardware.

[0049] In one possible design, the communication device includes a processing unit and an interface unit. The interface unit can be used to send and receive signals to enable communication between the communication device and other devices; the processing unit can be used to perform certain internal operations of the communication device. The functions performed by the processing unit and the interface unit can correspond to the operations described in the second aspect above.

[0050] In one possible design, the communication device includes a processor, which can be coupled to a memory. The memory can store the necessary computer programs or instructions for implementing the functions of the second aspect. The processor can execute the computer programs or instructions stored in the memory. When the computer programs or instructions are executed, the communication device implements the method of any possible design of the second aspect.

[0051] In one possible design, the communication device includes a processor and a memory, and the memory may store the necessary computer programs or instructions for implementing the functions involved in the second aspect. The processor may execute the computer program or instructions stored in the memory. When the computer program or instructions are executed, the communication device implements the method in any possible design of the second aspect.

[0052] In one possible design, the communication device includes a processor and an interface circuit, wherein the processor is used to communicate with other devices through the interface circuit and execute the method in any possible design of the second aspect above.

[0053] It can be understood that in the third aspect or the fourth aspect above, the processor can be implemented by hardware or by software. When implemented by hardware, the processor can be a logic circuit, an integrated circuit, etc.; when implemented by software, the processor can be a general-purpose processor, which is implemented by reading the software code stored in the memory. In addition, the above processors can be one or more, and the memories can be one or more. The memory can be integrated with the processor, or the memory and the processor can be set separately. In the specific implementation process, the memory can be integrated with the processor on the same chip, or can be set on different chips respectively. The embodiment of the present application does not limit the type of memory and the setting method of the memory and the processor.

[0054] In a fifth aspect, the present application provides a communication system, which may include the communication device described in the third aspect and the communication device described in the fourth aspect. For example, the communication system includes a first device and a second device; wherein the first device is configured to execute the communication method provided in the first aspect, and the second device is configured to execute the communication method provided in the third aspect.

[0055] In a sixth aspect, the present application provides a computer-readable storage medium, which stores a computer program or instruction. When the computer program or instruction is executed, the method in any possible design of any aspect of the first to second aspects above is implemented.

[0056] In a seventh aspect, the present application provides a computer program product, which includes a computer program code. When the computer program code is executed, the method in any possible design of any aspect of the first to second aspects mentioned above is implemented.

[0057] In an eighth aspect, the present application provides a chip for reading a computer program stored in a memory to execute a method in any possible design of any one of the first to second aspects above.

[0058] The technical effects that can be achieved in any of the second to eighth aspects mentioned above can refer to the description of the technical effects that can be achieved in any possible design in any of the first aspects mentioned above, and the repetitions will not be discussed. BRIEF DESCRIPTION OF THE DRAWINGS

[0059] FIG1 is an architecture diagram of a communication system provided in an embodiment of the present application;

[0060] FIG2A is a schematic diagram of a MAC frame provided in an embodiment of the present application;

[0061] FIG2B is a schematic diagram of an MPDU frame provided in an embodiment of the present application;

[0062] FIG3 is a flow chart of a communication method provided in an embodiment of the present application;

[0063] FIG4A is a schematic diagram of selecting one or more MAC frames according to an embodiment of the present application;

[0064] 4B to 4K are schematic diagrams of several MAC frame cascades provided in embodiments of the present application;

[0065] FIG5 is a structural diagram of a communication device provided in an embodiment of the present application;

[0066] FIG6 is a structural diagram of another communication device provided in an embodiment of the present application. DETAILED DESCRIPTION

[0067] The technical solutions in the embodiments of the present application will be described below in conjunction with the accompanying drawings. The technical solutions in the embodiments of the present application can be applied to various communication systems, for example, a communication system using HPLC technology.

[0068] This application will present various aspects, embodiments, or features in the context of systems that may include multiple devices, components, modules, etc. It should be understood and appreciated that each system may include additional devices, components, modules, etc., and / or may not include all of the devices, components, modules, etc. discussed in conjunction with the figures. Furthermore, combinations of these aspects may also be used.

[0069] To facilitate understanding of the embodiments of the present application, Figure 1 shows a schematic diagram of a possible, non-restrictive communication system. As shown in Figure 1, the roles of the electronic devices communicating in the communication system may include at least one of the following: one or more CCOs, one or more PCOs, and one or more STAs. The electronic devices communicating in the communication system may be, for example, at least one of the following: a concentrator, a collector, a circuit breaker, a branch switch, a photovoltaic communication unit, an electric meter communication unit, a charging pile communication unit, or a household appliance communication unit. The CCO may also be referred to as a central node, which can be used for network management, such as managing the online status of the PCO and STA. The PCO may also be referred to as a proxy site, which is used to connect STAs that are far away from the CCO to the network, manage the device status of the STAs under the PCO, and report the device status of the STAs under the PCO to the CCO.

[0070] In embodiments of the present application, data from devices such as concentrators, converged terminals, and intelligent gateways can be transmitted across the entire network via a CCO in a communication system utilizing HPLC technology. The PCO can forward received data. For example, the PCO can forward data from the CCO to other PCOs or STAs under the PCO. For another example, the PCO can forward data from other PCOs or STAs under the PCO to the CCO.

[0071] The communication system networking model shown in Figure 1 is a tree-like model. This model has the following characteristics: a large network scale (including up to 2,000 electronic devices); a deep topology (TOPO) layer (including up to 15 layers); when the communication system includes a multi-layer topology, the upload and download of service instructions can be aggregated through the PCO and forwarded point-to-point; and the delay and success rate of controlling multiple electronic devices in the communication system are limited by the topology layer and network scale.

[0072] The communication system described in the embodiment of the present application is intended to more clearly illustrate the technical solution of the embodiment of the present application, and does not constitute a limitation on the technical solution provided in the embodiment of the present application. Ordinary technicians in this field can know that with the evolution of network architecture and the emergence of new business scenarios, the technical solution provided in the embodiment of the present application is also applicable to similar technical problems.

[0073] The following first explains the relevant terms involved in the embodiments of the present application. It should be noted that these explanations are intended to make the embodiments of the present application easier to understand and should not be regarded as limiting the scope of protection claimed by the present application.

[0074] (1) MAC frame:

[0075] In communication systems using HPLC technology, MAC frames are the basic transmission unit for data transmission between the MAC layers of different electronic devices. Data is processed by the MAC layer of each electronic device to generate a MAC frame. The physical layer (PHY layer) of the electronic device maps the MAC frame into a data frame and then transmits the data frame.

[0076] As shown in Figure 2A, a MAC frame includes a MAC header, an MSDU, and an integrity check. The MAC header, which occupies 16 or 28 bytes, may include information representing the MAC frame or MAC layer-related data. The MSDU, which may contain application layer service data or MAC layer management messages, may occupy up to 2044 bytes. The integrity check, which occupies 4 bytes, verifies the authenticity of the data in the MAC frame and prevents data loss or tampering.

[0077] (2) Data frame:

[0078] A data frame may be a frame used to transmit data between different electronic devices. Alternatively, a data frame may be a frame used to transmit data between different electronic devices in a communication system employing HPLC technology. For example, a data frame may be a frame used to transmit data between a CCO and a PCO. For another example, a data frame may be a frame used to transmit data between different PCOs. For another example, a data frame may be a frame used to transmit data between a PCO and a STA.

[0079] Exemplarily, the data frame is an MPDU frame. The structure of the data frame is described below using the MPDU frame as an example. As shown in Figure 2B, the MPDU frame includes a frame control (FC) and a frame payload. The frame payload can be a PB, which is used to carry a MAC frame or a fragment of a MAC frame (i.e., a portion of a MAC frame). The PB includes a PB header (PB head, PBH), a payload portion (also referred to as a PB body), and a PB check sequence (also referred to as a PB check sequence). The payload portion of the PB can be used to carry a MAC frame or a fragment of a MAC frame. In other words, the payload portion of the PB can include a MAC frame or a fragment of a MAC frame.

[0080] (3) In this application, a concatenation header may be used to concatenate (or connect) MAC frames. It should be understood that the concatenation header may be referred to by other names, as long as it performs the same function. For example, the concatenation header may also be referred to as at least one of the following: a concatenation structure, a connection header, a connection structure, a splicing header, a splicing structure, an aggregation header, or an aggregation structure.

[0081] (4) In the following text of this application, “sending information to a device (such as a second device)” can be understood as the destination of the information being the device, and can include sending information to the device directly or indirectly. “Receiving information from a device (such as a first device)” or “receiving information from a device (such as a first device)” can be understood as the source of the information being the device, and can include receiving information from the device directly or indirectly. The information may be processed as necessary between the source and destination of the information, such as format changes, but the destination can understand the valid information from the source. Similar expressions in this application can be understood similarly and will not be repeated here.

[0082] Currently, an MPDU frame can include one or more PBs, and the payload of these one or more PBs can only include one MAC frame. In other words, each MPDU frame can only include one MAC frame. When multiple MAC frames need to be transmitted, they must be sent one by one across multiple MPDU frames, resulting in low data transmission efficiency. When the size of a MAC frame is smaller than the payload size of a PB in an MPDU frame, the portion of the PB payload in the MPDU frame, excluding the MAC frame, becomes padding (PAD) bits, resulting in low PB utilization.

[0083] Furthermore, in a communication system utilizing HPLC technology, if an electronic device needs to transmit an MPDU of type SOF, the electronic device must use contention to transmit the MPDU. Specifically, the electronic device must compete for a time slot to transmit the MPDU. In a communication system utilizing HPLC technology, a large number of SOF MPDUs must be transmitted between electronic devices. For example, in at least one of the following scenarios, a large number of SOF MPDUs must be transmitted between electronic devices: the CCO performing multipoint control, the STA or PCO replying with an acknowledgment frame, and the PCO forwarding an acknowledgment frame. This results in low data transmission efficiency and low PB utilization. Furthermore, a single electronic device may need to simultaneously transmit multiple SOF MPDUs to multiple electronic devices, potentially leading to line congestion and, in turn, the failure of SOF MPDUs to be transmitted due to timeouts, impacting service success and / or causing delays in responses from the peer electronic device.

[0084] How to improve the throughput of communication systems using HPLC technology requires further research.

[0085] In view of this, an embodiment of the present application provides a communication method. Figure 3 is a flow chart corresponding to the communication method provided by an embodiment of the present application. In Figure 3, the method is illustrated by taking the first device and the second device as the execution subjects of the interaction diagram as an example, but the present application does not limit the execution subjects of the interaction diagram. The first device and the second device can be applied to the communication system of HPLC technology. For example, the first device can be a CCO, PCO or STA, or a module applied to a CCO, PCO or STA, such as a circuit, chip, chip system or processor, or a logical node, logical module or software that can realize all or part of the functions of CCO, PCO or STA; the second device can also be a CCO, PCO or STA, or a module applied to a CCO, PCO or STA, such as a circuit, chip, chip system or processor, or a logical node, logical module or software that can realize all or part of the functions of CCO, PCO or STA. As shown in Figure 3, the method includes:

[0086] S301: The first device generates a data frame.

[0087] The data frame may include a frame control and one or more PBs. The one or more PBs may include one or more MAC frames, which may be cascaded using a first aggregation method. The aggregation method of the one or more MAC frames will be described below in Methods a1 and a2 and will not be further elaborated here.

[0088] The specific content of the data frame can refer to the description of the data frame in the terminology explanation section, and repeated parts are not repeated here. Optionally, the data frame can be an MPDU frame. The specific content of the MPDU frame can refer to the description of the MPDU frame in the terminology explanation section, and repeated parts are not repeated here.

[0089] Optionally, the one or more MAC frames include at least one of the following: a network layer MAC frame or a service layer MAC frame. The MSDU type (MSDU TYPE) in the MAC frame header can be used to indicate whether the MAC frame containing the MAC frame header is a network layer MAC frame or a service layer MAC frame. In this way, without changing the MAC frame structure or MSDU data, the service layer MAC frame and the network layer MAC frame can be included in the same data frame, thereby ensuring data integrity and authenticity when transmitting multi-level data.

[0090] In some possible ways, the one or more MAC frames may be selected by the first device from the MAC frames to be sent. The MAC frame to be sent may be generated by the first device; or the MAC frame to be sent may be obtained by the first device from other devices; or a part of the MAC frame to be sent is generated by the first device, and another part of the MAC frame to be sent is obtained by the first device from other devices. Exemplarily, the first device may select the one or more MAC frames from the MAC frames to be sent based on the size and number of the maximum PB that the first device can send. The sum of the sizes of the one or more MAC frames may be less than or equal to the size of the payload part of all PBs that the first device can send. For example, if the size of the maximum PB that the first device can send is 264 bytes, the size of the payload part of the PB is 260 bytes, and the number of PBs that the first device can send is 2, then the size of the payload part of the maximum data frame that the first device can send is 520 bytes. If the MAC frames to be sent include MAC frames 1 to 3, the size of MAC frame 1 is 200 bytes, the size of MAC frame 2 is 200 bytes, and the size of MAC frame 3 is 400 bytes, the first device can select MAC frame 1 and MAC frame 2 from the MAC frames to be sent, and generate a data frame including MAC frame 1 and MAC frame 2.

[0091] Optionally, the one or more MAC frames may be sent to the same electronic device; in other words, the target receiving devices of the one or more MAC frames may be the same. For example, as shown in FIG4A , the MAC frames to be sent include MAC frames 1 to 7. The target receiving devices of MAC frame 1, MAC frame 4, and MAC frame 5 are station 1, the target receiving device of MAC frame 2 is station 2, and the target receiving devices of MAC frame 3, MAC frame 6, and MAC frame 7 are station 3. The first device may concatenate MAC frame 1, MAC frame 4, and MAC frame 5 to generate data frame 1 including MAC frame 1, MAC frame 4, and MAC frame 5, and send data frame 1 to station 1 in S302. The first device may concatenate MAC frame 3, MAC frame 6, and MAC frame 7 to generate data frame 2 including MAC frame 3, MAC frame 6, and MAC frame 7, and send data frame 2 to station 3 in S302.

[0092] S302: The first device sends a data frame; correspondingly, the second device receives the data frame.

[0093] For example, the first device sends a data frame to the second device; correspondingly, the second device receives the data frame from the first device. This application does not limit the specific content of the first device sending the data frame and the second device receiving the data frame.

[0094] S303: The second device processes the data frame.

[0095] Optionally, the second device may parse the data frame to obtain the MSDU in one or more MAC frames.

[0096] As previously described, the data frame may include: a frame control field and one or more PBs. In some implementations, the frame control field and / or the PB header of at least one of the one or more PBs may be used to indicate whether the data frame includes multiple MAC frames. In other words, the frame control field and / or the PB header of at least one of the one or more PBs may be used to indicate whether the data frame is an aggregated frame, or in other words, the frame control field and / or the PB header of at least one of the one or more PBs may be used to indicate whether multiple MAC frames are aggregated into a single data frame. Thus, after receiving the data frame, the second device may quickly determine whether the data frame includes multiple MAC frames based on the frame control field and / or the PB header of at least one of the one or more PBs. The frame control field and / or the PB header of at least one of the one or more PBs may indicate whether the data frame includes multiple MAC frames using conventional fields or newly added fields. For example, at least one of the following fields may be a conventional field or a newly added field: the first field, the second field, or the third field.

[0097] For example, if the value of the first field in the frame control is a first value (for example, 0), the data frame includes multiple MAC frames; if the value of the first field in the frame control is a second value (for example, 1), the data frame includes one MAC frame.

[0098] For another example, the one or more PBs include N PBs, where N is a positive integer. The fourth PB is the i-th PB among the N PBs, where i is a positive integer greater than or equal to 1 and less than or equal to N, for example, i is 1 or N. If the value of the second field in the PB header of the fourth PB is a third value (e.g., 0), the data frame includes multiple MAC frames; if the value of the second field in the PB header of the fourth PB is a fourth value (e.g., 1), the data frame includes one MAC frame.

[0099] For another example, the one or more PBs include N PBs, where N is a positive integer. The fifth PB is the jth PB among the N PBs, where j is an integer ranging from 1 to N. If the value of the third field in the PB header of the fifth PB is a fifth value (e.g., 0), the fifth PB includes multiple MAC frames. In this case, the data frame also includes multiple MAC frames. If the value of the third field in the PB header of the fifth PB is a sixth value (e.g., 1), the fifth PB includes one MAC frame. In this case, if the data frame includes multiple PBs, and different PBs in the multiple PBs include different MAC frames, the data frame includes multiple MAC frames; if the data frame includes one PB, the data frame includes one MAC frame.

[0100] As mentioned above, one or more MAC frames in the data frame may be cascaded using a first aggregation method. Exemplarily, the first aggregation method may be method a1 or method a2.

[0101] Mode a1: One or more MAC frames are concatenated using one or more concatenation headers. That is, the first aggregation mode includes concatenating one or more MAC frames using one or more concatenation headers. For example, as shown in FIG4B , the one or more MAC frames include MAC frame 1, MAC frame 4, and MAC frame 5. MAC frame 1, MAC frame 4, and MAC frame 5 are concatenated using concatenation headers 1 to 3.

[0102] Optionally, the first MAC frame is any MAC frame among the one or more MAC frames, and the first cascade header among the one or more cascade headers may be used to indicate at least one of the following 1 to 4:

[0103] 1. Length of the First MAC Frame: The first cascade header may explicitly indicate the length of the first MAC frame. For example, if the field indicating the length of the first MAC frame in the first cascade header includes 200 in bytes, it indicates that the length of the first MAC frame is 200 bytes. Alternatively, the first cascade header may implicitly indicate the length of the first MAC frame. For example, the first cascade header may include information corresponding to the length of the first MAC frame. In this way, after receiving the data frame, the second device can determine the length of the first MAC frame based on the first cascade header, without having to parse the MAC frame header of the first MAC frame to determine the length of the first MAC frame, thereby quickly acquiring the first MAC frame.

[0104] 2. Destination address of the first MAC frame: The destination address is, for example, a destination MAC address or a terminal equipment identity (TEI). The first cascade header may explicitly indicate the destination address of the first MAC frame. For example, if the field in the first cascade header used to indicate the destination address of the first MAC frame includes MAC address 1, it indicates that the destination address of the first MAC frame is MAC address 1. Alternatively, the first cascade header may implicitly indicate the destination address of the first MAC frame. For example, the first cascade header includes information that corresponds to the destination address of the first MAC frame. In this way, after receiving the data frame, the second device can determine the destination address of the first MAC frame based on the first cascade header without having to determine the destination address of the first MAC frame by parsing the MAC frame header of the first MAC frame, thereby quickly forwarding the first MAC frame and reducing the transmission delay of the first MAC frame.

[0105] 3. Data type of the first MAC frame: The data type is, for example, broadcast data or unicast data. Optionally, the data type may also include a link identifier (LID). The first cascade header may explicitly indicate the data type of the first MAC frame. For example, if the value of the field in the first cascade header used to indicate the destination address of the first MAC frame is 1 (for example, 0), it indicates that the data type of the first MAC frame is broadcast data. If the value of the field in the first cascade header used to indicate the destination address of the first MAC frame is 2 (for example, 1), it indicates that the data type of the first MAC frame is unicast data. Alternatively, the first cascade header may implicitly indicate the data type of the first MAC frame. For example, the first cascade header includes information that corresponds to the data type of the first MAC frame. In this way, after receiving the data frame, the second device can determine the data type of the first MAC frame based on the first cascade header without having to determine the data type of the first MAC frame by parsing the MAC frame header of the first MAC frame.

[0106] 4. The position of the next cascading header of the first cascading header in the one or more cascading headers: The first cascading header may explicitly indicate the position of the next cascading header. For example, if the value of the field in the first cascading header indicating the position of the next cascading header is 15 in bytes, then the position of the next cascading header is the 15th byte. Alternatively, the first cascading header may implicitly indicate the position of the next cascading header. For example, the first cascading header includes information corresponding to the position of the next cascading header. The information corresponding to the position of the next cascading header may be, for example, the length of the first MAC frame. The length of the first MAC frame can be used to determine the end position of the first MAC frame. The position of the next cascading header is the end position of the first MAC frame. In this way, after receiving the data frame, the second device can determine the position of the next cascading header based on the first cascading header, thereby quickly obtaining information about the MAC frame indicated by the next cascading header.

[0107] The first-stage cascade header may satisfy at least one of the following conditions 1 and 2:

[0108] Condition 1: The first cascade header is located before the first MAC frame. For example, as shown in FIG4B , cascade header 1 is located before MAC frame 1. If the first MAC frame is MAC frame 1, the first cascade header may be cascade header 1.

[0109] Condition 2: The first tandem header is adjacent to the first MAC frame. For example, as shown in FIG4B , tandem header 1 is adjacent to MAC frame 1. If the first MAC frame is MAC frame 1, the first tandem header may be tandem header 1.

[0110] Through mode a1, one or more MAC frames are cascaded through one or more cascade headers. In this way, the cascade header can be used to indicate information of the MAC frame, thereby improving the efficiency of the second device in parsing the one or more MAC frames.

[0111] Mode a2: The one or more MAC frames include a first MAC frame and a second MAC frame. The connection relationship between the first MAC frame and the second MAC frame may be: the first MAC frame and the second MAC frame are adjacent, or at least one of the following is included between the first MAC frame and the second MAC frame: a PB header, a PB check sequence, or a padding bit. In other words, the first aggregation mode includes: the first MAC frame and the second MAC frame are adjacent, or at least one of the following is included between the first MAC frame and the second MAC frame: a PB header, a PB check sequence, or a padding bit. For example, as shown in Figure 4C , the first MAC frame and the second MAC frame are MAC frame 1 and MAC frame 4, respectively, and the first MAC frame and the second MAC frame are adjacent. For another example, as shown in Figure 4D , the first MAC frame and the second MAC frame are MAC frame 1 and MAC frame 4, respectively, and padding bits, a PB check sequence, and a PB header are included between the first MAC frame and the second MAC frame. For another example, as shown in Figure 4E , the first MAC frame and the second MAC frame are MAC frame 1 and MAC frame 4, respectively, and a PB check sequence and a PB header are included between the first MAC frame and the second MAC frame.

[0112] The above description uses the first and second MAC frames as examples. It should be understood that the connection relationship between the k-1th MAC frame and the kth MAC frame in one or more MAC frames can refer to the connection relationship between the first and second MAC frames. Here, k is an integer ranging from 1 to M, and M is the number of MAC frames in the one or more MAC frames, and M is a positive integer.

[0113] It should also be understood that the connection relationships between different MAC frames in one or more MAC frames can be the same, different, or partially the same. For example, the one or more MAC frames include MAC frame 1, MAC frame 4, and MAC frame 5. MAC frame 1 and MAC frame 4 are adjacent, and MAC frame 4 and MAC frame 5 are adjacent. For another example, the one or more MAC frames include MAC frame 1, MAC frame 4, and MAC frame 5. MAC frame 1 and MAC frame 4 include padding bits, a PB check sequence, and a PB header, and MAC frame 4 and MAC frame 5 are adjacent. For another example, the one or more MAC frames include MAC frame 1, MAC frame 4, MAC frame 5, and MAC frame 9. MAC frame 1 and MAC frame 4 are adjacent, and MAC frame 4 and MAC frame 5 are adjacent. MAC frame 5 and MAC frame 9 include padding bits, a PB check sequence, and a PB header.

[0114] In mode a2, in one or more MAC frames, the first MAC frame and the second MAC frame are adjacent, or at least one of the following is included between the first MAC frame and the second MAC frame: a PB header, a PB check sequence, or padding bits. In this way, the first MAC frame and the second MAC frame do not need to be concatenated using a concatenation header, thereby avoiding the overhead of the concatenation header, improving PB utilization, and enhancing data transmission efficiency.

[0115] As mentioned above, one or more PBs in a data frame include one or more MAC frames, which may be included in various ways, for example, way b1, way b2 or way b3.

[0116] Mode b1: The one or more PBs are multiple PBs; that is, the data frame includes multiple PBs. The first part of the third MAC frame in the one or more MAC frames may be included in the payload portion of the first PB in the multiple PBs, and the second part of the third MAC frame may be included in the payload portion of the second PB in the multiple PBs. In other words, the third MAC frame can be transmitted across PBs. It should be understood that the third MAC frame may include only the first part and the second part, or may include other parts in addition to the first part and the second part, and this application is not limited to this. Optionally, the first PB and the second PB may be adjacent.

[0117] For example, as shown in Figure 4F, the one or more PBs include PB1 and PB2. The one or more MAC frames include MAC frame 1, MAC frame 4, and MAC frame 5. MAC frame 1, MAC frame 4, and MAC frame 5 are concatenated using method a1. The size of the payload portion of PB1 is larger than the size of MAC frame 1 and smaller than the sum of the size of MAC frame 1, the size of the concatenation header, and the size of MAC frame 4. MAC frame 1 can be included in payload portion 1 of PB1, the first part of MAC frame 4 can be included in payload portion 2-1 of PB1, the second part of MAC frame 4 can be included in payload portion 2-2 of PB2, and MAC frame 5 can be included in payload portion 3 of PB2. In this case, MAC frame 4 is the third MAC frame. Optionally, if, when PB1 and PB2 include MAC frame 1, MAC frame 4, MAC frame 5, and the concatenation header, the payload portion of PB2 still has a remaining portion 1, this remaining portion 1 may include padding bits.

[0118] For another example, as shown in FIG4G , the one or more PBs include PB1 and PB2. The one or more MAC frames include MAC frame 1, MAC frame 4, and MAC frame 5. MAC frame 1, MAC frame 4, and MAC frame 5 are concatenated using method a2. The size of the payload portion of PB1 is larger than the size of MAC frame 1 and smaller than the sum of the sizes of MAC frame 1 and MAC frame 4. MAC frame 1 may be included in payload portion 1 of PB1, the first portion of MAC frame 4 may be included in payload portion 2-1 of PB1, the second portion of MAC frame 4 may be included in payload portion 2-2 of PB2, and MAC frame 5 may be included in payload portion 3 of PB2. In this case, MAC frame 4 is the third MAC frame. Optionally, if, when PB1 and PB2 include MAC frame 1, MAC frame 4, and MAC frame 5, the payload portion of PB2 still has a remaining portion 2, this remaining portion 2 may include padding bits.

[0119] Through this method b1, the third MAC frame can be transmitted across PBs, thereby improving PB utilization and data transmission efficiency. Furthermore, in this method, the second device must receive all PBs in the data frame before parsing the data frame. Therefore, this method is applicable to scenarios with good channel transmission capabilities (for example, signal quality greater than (or greater than or equal to) a first signal quality threshold). The first signal quality threshold can be pre-set, such as specified by a protocol; it can also be determined by the first device; or it can be determined by another device (for example, the second device) and notified to the first device.

[0120] Mode b2: The one or more PBs are multiple PBs; that is, the data frame includes multiple PBs. Each of the one or more MAC frames is contained in the payload portion of one of the multiple PBs. In other words, each of the one or more MAC frames cannot be transmitted across PBs; in other words, each of the one or more MAC frames is contained in the payload portion of only one of the multiple PBs.

[0121] For example, as shown in Figure 4H, the one or more PBs include PB1 and PB2. The one or more MAC frames include MAC frame 1, MAC frame 4, and MAC frame 5. MAC frame 1, MAC frame 4, and MAC frame 5 are concatenated using method a1. The size of the payload portion of PB1 is greater than or equal to the size of MAC frame 1 and less than the sum of the size of MAC frame 1, the size of the concatenation header, and the size of MAC frame 4. MAC frame 1 can be included in payload portion 1 of PB1, MAC frame 4 can be included in payload portion 2 of PB2, and MAC frame 5 can be included in payload portion 3 of PB2. Optionally, if, after PB1 includes MAC frame 1 and the concatenation header, the payload portion of PB1 still has a remaining portion 3, the remaining portion 3 may include padding bits. If, after PB2 includes MAC frame 4, MAC frame 5, and the concatenation header, the payload portion of PB2 still has a remaining portion 4, the remaining portion 4 may include padding bits.

[0122] For example, as shown in FIG4I , the one or more PBs include PB1 and PB2. The one or more MAC frames include MAC frame 1, MAC frame 4, and MAC frame 5. MAC frame 1, MAC frame 4, and MAC frame 5 are concatenated using method a2. The size of the payload portion of PB1 is greater than or equal to the size of MAC frame 1 and less than the sum of the sizes of MAC frame 1 and MAC frame 4. MAC frame 1 can be included in payload portion 1 of PB1, MAC frame 4 can be included in payload portion 2 of PB2, and MAC frame 5 can be included in payload portion 3 of PB2. Optionally, if PB1 includes MAC frame 1 and there is a remaining portion 5 in the payload portion of PB1, then this remaining portion 5 may include padding bits. If PB2 includes MAC frame 4 and MAC frame 5 and there is a remaining portion 6 in the payload portion of PB2, then this remaining portion 6 may include padding bits.

[0123] Through this method b2, each of the one or more MAC frames is included in the payload portion of one of the multiple PBs. Thus, the second device can parse the MAC frame contained in each PB after receiving it, without having to wait for all PBs in the data frame to be received before parsing the data frame. In other words, the parsing of the PB is not affected by bit errors in other PBs, thereby improving parsing speed and reducing MAC frame processing latency. This method is applicable to at least one of the following scenarios: average channel transmission capability (e.g., signal quality less than (or less than or equal to) a second signal quality threshold) or high transmission delay requirements (e.g., transmission delay less than (or less than or equal to) a transmission delay threshold). The second signal quality threshold and / or transmission delay threshold can be pre-set, such as specified by a protocol; can also be determined by the first device; or can be determined by another device (e.g., the second device) and then notified to the first device.

[0124] Mode b3: the one or more MAC frames are included in the payload portion of the third PB in the one or more PBs.

[0125] For example, as shown in Figure 4J , the one or more PBs include PB1. The one or more MAC frames include MAC frame 1 and MAC frame 4. MAC frame 1 and MAC frame 4 are concatenated using method a1. The size of the payload portion of PB1 is greater than or equal to the sum of the size of MAC frame 1, the size of the concatenation header, and the size of MAC frame 4. Both MAC frame 1 and MAC frame 4 can be included in the payload portion of PB1. Optionally, if, after PB1 includes MAC frame 1, MAC frame 4, and the concatenation header, the payload portion of PB1 still has a remaining portion 7, the remaining portion 7 may include padding bits.

[0126] For example, as shown in FIG4K , the one or more PBs include PB1. The one or more MAC frames include MAC frame 1 and MAC frame 4. MAC frame 1 and MAC frame 4 are concatenated using mode a2. The payload portion of PB1 is larger than the sum of the sizes of MAC frame 1 and MAC frame 4. Both MAC frame 1 and MAC frame 4 can be included in the payload portion of PB1. Optionally, if PB1 includes MAC frame 1 and MAC frame 4, and the payload portion of PB1 has a remaining portion 8, this remaining portion 8 may include padding bits.

[0127] Optionally, in mode b3, the data frame may include one PB or multiple PBs.

[0128] Through this method b3, the one or more MAC frames are included in the payload part of the third PB, thereby improving the throughput capacity of the communication system using the HPLC technology, improving the data transmission efficiency, and improving the utilization rate of the PB.

[0129] As previously described, the data frame may include a frame control header and one or more PBs. In some possible implementations, the frame control header and / or the PB header of at least one of the one or more PBs may also indicate a concatenation type. The concatenation type may include at least one of concatenation types 1 through 4. Thus, upon receiving the data frame, the second device can quickly determine the concatenation type and perform operations corresponding to the concatenation type on the data frame.

[0130] Concatenation Type 1: One or more MAC frames are concatenated using one or more concatenation headers. For details, refer to Method a1 and are not further described here. The one or more PBs are multiple PBs, and the first portion of a third MAC frame in the one or more MAC frames is included in the payload portion of a first PB in the multiple PBs, and the second portion of the third MAC frame is included in the payload portion of a second PB in the multiple PBs. For details, refer to Method b1 and are not further described here. Alternatively, the one or more MAC frames are included in the payload portion of a third PB in the one or more PBs. For details, refer to Method b3 and are not further described here.

[0131] Concatenation Type 2: One or more MAC frames are concatenated using one or more concatenation headers. For details, refer to Method a1 and are not further described here. The one or more PBs are multiple PBs, and each of the one or more MAC frames is included in the payload of one of the multiple PBs. For details, refer to Method b2 and are not further described here. Alternatively, the one or more MAC frames are included in the payload of a third PB of the one or more PBs. For details, refer to Method b3 and are not further described here.

[0132] Cascade type three: One or more MAC frames include a first MAC frame and a second MAC frame, wherein the first MAC frame is adjacent to the second MAC frame, or at least one of the following is included between the first MAC frame and the second MAC frame: a PB header, a PB check sequence, or a padding bit. For details, refer to method a2 and are not described in detail here. The one or more PBs are multiple PBs, and the first part of the third MAC frame in the one or more MAC frames is included in the payload part of the first PB in the multiple PBs, and the second part of the third MAC frame is included in the payload part of the second PB in the multiple PBs. For details, refer to method b1 and are not described in detail here; or, the one or more MAC frames are included in the payload part of the third PB in the one or more PBs. For details, refer to method b3 and are not described in detail here.

[0133] Cascade Type 4: One or more MAC frames include a first MAC frame and a second MAC frame, wherein the first MAC frame is adjacent to the second MAC frame, or at least one of the following is included between the first MAC frame and the second MAC frame: a PB header, a PB check sequence, or padding bits. For details, refer to Method a2 and are not described in detail here. The one or more PBs are multiple PBs, and each MAC frame in the one or more MAC frames is included in the payload portion of one PB in the multiple PBs. For details, refer to Method b2 and are not described in detail here; or, the one or more MAC frames are included in the payload portion of a third PB in the one or more PBs. For details, refer to Method b3 and are not described in detail here.

[0134] The frame control and / or the PB header of at least one of the one or more PBs may indicate the cascade type using a conventional field or a newly added field. For example, at least one of the following fields may be a conventional field or a newly added field: the fourth field, the fifth field, or the sixth field. The following examples illustrate how the frame control and / or the PB header of at least one of the one or more PBs may indicate the cascade type.

[0135] For example, if the value of the fourth field in the frame control is the seventh value (for example, 00), the concatenation type of the data frame is concatenation type one; if the value of the fourth field in the frame control is the eighth value (for example, 01), the concatenation type of the data frame is concatenation type two; if the value of the fourth field in the frame control is the ninth value (for example, 10), the concatenation type of the data frame is concatenation type three; if the value of the fourth field in the frame control is the tenth value (for example, 11), the concatenation type of the data frame is concatenation type four.

[0136] For another example, the one or more PBs include N PBs, where N is a positive integer. The fourth PB is the i-th PB among the N PBs, where i is a positive integer greater than or equal to 1 and less than or equal to N, for example, i is 1 or N. If the value of the fifth field in the PB header of the fourth PB is the eleventh value (e.g., 00), the concatenation type of the data frame is concatenation type one; if the value of the fifth field in the PB header of the fourth PB is the twelfth value (e.g., 01), the concatenation type of the data frame is concatenation type two; if the value of the fifth field in the PB header of the fourth PB is the thirteenth value (e.g., 10), the concatenation type of the data frame is concatenation type three; and if the value of the fifth field in the PB header of the fourth PB is the fourteenth value (e.g., 11), the concatenation type of the data frame is concatenation type four.

[0137] For another example, the one or more PBs include N PBs, where N is a positive integer. The fifth PB is the jth PB among the N PBs, where j is a positive integer ranging from 1 to N. If the value of the sixth field in the PB header of the fifth PB is the fifteenth value (e.g., 00), the concatenation type of the MAC frame in the fifth PB is concatenation type one; if the value of the sixth field in the PB header of the fifth PB is the sixteenth value (e.g., 01), the concatenation type of the MAC frame in the fifth PB is concatenation type two; if the value of the sixth field in the PB header of the fifth PB is the seventeenth value (e.g., 10), the concatenation type of the MAC frame in the fifth PB is concatenation type three; and if the value of the sixth field in the PB header of the fifth PB is the eighteenth value (e.g., 11), the concatenation type of the MAC frame in the fifth PB is concatenation type four.

[0138] Using the method shown in Figure 3, a data frame can include either a single MAC frame or multiple MAC frames. This allows multiple MAC frames to be transmitted using a single data frame, thereby improving data transmission efficiency and the throughput of communication systems using HPLC technology. When the size of a MAC frame is smaller than the payload portion of the PB in a data frame, the portion of the PB payload portion of the data frame, excluding the MAC frame, can include part or all of another MAC frame, rather than padding bits, thereby increasing PB utilization.

[0139] In addition, when the multiple MAC frames correspond to data frames of type SOF, since one data frame includes multiple MAC frames, the first device can transmit multiple MAC frames through one data frame, thereby avoiding or reducing line congestion, and further avoiding or reducing the failure of data frames of type SOF to be sent due to timeout, thereby improving the success rate of the service and avoiding or reducing the response delay of the electronic device on the other end.

[0140] Moreover, in the method shown in FIG3 , the first device may be any electronic device in a communication system applied to HPLC technology. In this way, the STA, PCO, and CCO may all cascade one or more MAC frames through a first aggregation method, thereby ensuring efficient transmission of data at each node in the network.

[0141] To more clearly illustrate the effectiveness of this application, the following test results are presented using Cascade Type 1 as an example. These test results were obtained in a laboratory environment identical to actual communications. As shown in Table 1, in Scenario 1, compared to using a traditional solution to transmit data frames, using Cascade Type 1 increased the data transmission rate by 141.2%. In Scenario 2, compared to using a traditional solution to transmit data frames, using Cascade Type 1 increased the data transmission rate by 136.5%.

[0142] Table 1

[0143] This traditional solution includes: a data frame contains only one MAC frame. In both scenarios 1 and 2, the test environment was a one-to-one test environment, built under laboratory conditions to replicate actual communication. The power line carrier (PLC) frequency band used for communication was 0.7 to 3 MHz, and the communication direction tested was from STA to CCO. In scenario 1, the Transmission Control Protocol (TCP) packet injection parameters were configured as follows: -P:1, -i:1, -p:5001, -w:16.0k (i.e., 16*1024), -l:450.0 bytes (bytes), -f:k, -t:120; in scenario 2, the TCP packet injection parameters were configured as follows: -P:1, -i:1, -p:5001, -w:16.0k, -l:350.0 bytes, -f:k, -t:120. Among them, -P is the number of threads; -i is the time interval for sending reports, in seconds; -p is the port for injecting packets; -w is the size of the TCP window, in bytes; -l is the length of the read and write buffers; -f is the output format of the bandwidth number. When -f is k, the output format of the bandwidth number is Kbits / sec; -t is the test time (or test duration), in seconds.

[0144] Based on the same technical concept as the above-mentioned method embodiment, the embodiment of the present application provides a corresponding communication device that can be used to perform the functions of the relevant steps in the above-mentioned method embodiment. The function can be implemented by hardware, can be implemented by software, or can be implemented by hardware executing the corresponding software. The hardware or software includes one or more modules corresponding to the above-mentioned functions. The communication device can be in a communication system applying HPLC technology. For example, the communication device can be a CCO, PCO or STA, or a module applied to a CCO, PCO or STA, such as a circuit, chip, chip system or processor, or a logical node, logical module or software that can implement all or part of the CCO, PCO or STA functions.

[0145] In a possible implementation, the structure of the communication device provided in the embodiment of the present application is shown in FIG5 , and includes a processing unit 502 and an interface unit 501. The functions of each unit in the communication device 500 are introduced below.

[0146] The interface unit 501 is used to input and / or output information. Input information can be replaced by receiving information, and output information can be replaced by sending information. When outputting information, the interface unit 501 can output information to other devices outside the communication device 500, or it can output information to other units in the communication device 500. In some embodiments, the interface unit 501 can be implemented by at least one of a physical interface, a communication module, a communication interface, and an input / output interface. In other embodiments, the interface unit 501 can be implemented by an interface circuit, for example, a mobile communication module. The mobile communication module may include one or more of at least one antenna, at least one filter, a switch, a power amplifier, a low noise amplifier (LNA), etc.

[0147] The processing unit 502 can be used to support the communication device 500 in performing the processing actions in the above-mentioned method embodiment. The processing unit 502 can be implemented by one or more processors. For example, the processor can be a central processing unit (CPU), or other general-purpose processors, digital signal processors (DSP), application-specific integrated circuits (ASIC), field programmable gate arrays (FPGA), or other programmable logic devices, transistor logic devices, hardware components, or any combination thereof. The general-purpose processor can be a microprocessor or any conventional processor.

[0148] In one embodiment, the communication device 500 is applied to the first device in the embodiment of the present application shown in Figure 3. The specific functions of the processing unit 502 in this embodiment are introduced below.

[0149] The processing unit 502 is used to: generate a data frame, the data frame includes: frame control, and one or more physical blocks PB, the one or more PBs include one or more MAC frames, and the one or more MAC frames are cascaded through the first aggregation method; and send the data frame through the interface unit 501.

[0150] In another embodiment, the communication device 500 is applied to the second device in the embodiment of the present application shown in Figure 3. The specific functions of the processing unit 502 in this embodiment are introduced below.

[0151] The processing unit 502 is used to: receive a data frame through the interface unit 501, the data frame including: frame control, and one or more physical blocks PB, the one or more PBs including one or more media access control MAC frames, and the one or more MAC frames are cascaded through the first aggregation method; and process the data frame.

[0152] A more detailed description of the processing unit 502 and the interface unit 501 can be directly obtained by referring to the relevant description in the method embodiment shown in FIG3 , and is not repeated here.

[0153] It should be noted that the division of modules in the above embodiments of the present application is illustrative and is only a logical functional division. In actual implementation, there may be other division methods. In addition, the functional units in the various embodiments of the present application may be integrated into a processing unit, or may exist separately physically, or two or more units may be integrated into a single unit. The above-mentioned integrated units may be implemented in the form of hardware or in the form of software functional units.

[0154] If the above-mentioned integrated unit is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present application, or the part that contributes to the prior art, or all or part of the technical solution can be embodied in the form of a software product, which is stored in a storage medium and includes several instructions for enabling a computer device (which can be a personal computer, server, or network device, etc.) or a processor to execute all or part of the steps of the method described in each embodiment of the present application. The aforementioned storage medium includes various media that can store program codes, such as a USB flash drive, a mobile hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk or an optical disk.

[0155] In one possible implementation, the communication device provided in an embodiment of the present application is shown in FIG6 , where the communication device 600 includes a processor 602. Optionally, the communication device 600 further includes an interface circuit 601 and a memory 603. The interface circuit 601, the processor 602, and the memory 603 are coupled to each other.

[0156] Optionally, the interface circuit 601, the processor 602, and the memory 603 are coupled to each other via a bus 604. Bus 604 may be a Peripheral Component Interconnect (PCI) bus or an Extended Industry Standard Architecture (EISA) bus. Buses can be classified as address buses, data buses, control buses, etc. For ease of illustration, FIG6 shows only one thick line, but this does not mean that there is only one bus or only one type of bus.

[0157] Interface circuit 601 is used to input and / or output information. Inputting information can be replaced by receiving information, and outputting information can be replaced by sending information. When outputting information, interface circuit 601 can output information to other devices outside of communication device 600, or to other units within communication device 600. Exemplarily, interface circuit 601 can be implemented via at least one of a physical interface, a communication module, a communication interface, an input / output interface, and a mobile communication module. The mobile communication module may include one or more of at least one antenna, at least one filter, a switch, a power amplifier, an LNA, and the like.

[0158] Processor 602 can be used to support communication device 600 in executing the processing actions in the above-described method embodiments. When communication device 600 is used to implement the above-described method embodiments, processor 602 can also be used to implement the functions of processing unit 502. Processor 602 can be a CPU, other general-purpose processors, DSPs, ASICs, FPGAs, other programmable logic devices, transistor logic devices, hardware components, or any combination thereof. A general-purpose processor can be a microprocessor or any conventional processor.

[0159] In one embodiment, the communication device 600 is applied to the first device in the embodiment of the present application shown in Figure 3. The specific functions of the processor 602 in this embodiment are introduced below.

[0160] Processor 602 is used to: generate a data frame, the data frame includes: frame control, and one or more physical blocks PB, the one or more PBs include one or more MAC frames, and the one or more MAC frames are cascaded through the first aggregation method; send the data frame through the interface circuit 601.

[0161] In another embodiment, the communication device 600 is applied to the second device in the embodiment of the present application shown in Figure 3. The specific functions of the processor 602 in this embodiment are introduced below.

[0162] Processor 602 is used to: receive a data frame through interface circuit 601, the data frame including: frame control and one or more physical blocks PB, the one or more PBs including one or more media access control MAC frames, and the one or more MAC frames are cascaded using a first aggregation method; and process the data frame.

[0163] The specific functions of the processor 602 can refer to the description of the communication method provided in the above embodiments and examples of the present application, as well as the specific functional description of the communication device 500 in the embodiment of the present application shown in Figure 5, and will not be repeated here.

[0164] The memory 603 is used to store program instructions and / or data, etc. Specifically, the program instructions may include program code, which includes computer operation instructions. The memory 603 may include RAM, and may also include non-volatile memory (non-volatile memory), such as at least one disk storage. The processor 602 executes the program instructions stored in the memory 603 and uses the data stored in the memory 603 to implement the above functions, thereby realizing the communication method provided in the above embodiment of the present application. The memory 603 can be integrated with the processor 602, or it can be a memory outside the communication device.

[0165] It will be appreciated that the memory 603 in FIG. 6 of the present application may be a volatile memory or a non-volatile memory, or may include both volatile and non-volatile memories. Among them, the non-volatile memory may be a ROM, a programmable read-only memory (PROM), an erasable programmable read-only memory (EPROM), an electrically erasable programmable read-only memory (EEPROM), or a flash memory. The volatile memory may be a RAM, which is used as an external cache. By way of example and not limitation, many forms of RAM are available, such as static random access memory (SRAM), dynamic random access memory (DRAM), synchronous dynamic random access memory (SDRAM), double data rate synchronous dynamic random access memory (DDR SDRAM), enhanced synchronous dynamic random access memory (ESDRAM), synchronous link dynamic random access memory (SLDRAM), and direct rambus RAM (DR RAM). It should be noted that memory of the systems and methods described herein is intended to comprise, but not be limited to, these and any other suitable types of memory.

[0166] Based on the above embodiments, an embodiment of the present application further provides a computer program product including computer-executable instructions. When the computer program product is run, the method provided in the above embodiments is executed.

[0167] Based on the above embodiments, an embodiment of the present application further provides a computer-readable storage medium, in which a computer program is stored. When the computer program is executed by a computer, the computer executes the method provided in the above embodiments.

[0168] The storage medium may be any available medium that can be accessed by a computer. By way of example and not limitation, computer-readable media may include RAM, ROM, EEPROM, CD-ROM or other optical disk storage, magnetic disk storage media or other magnetic storage devices, or any other medium that can be used to carry or store desired program code in the form of instructions or data structures and can be accessed by a computer.

[0169] Based on the above embodiments, an embodiment of the present application further provides a chip, which is used to read a computer program stored in a memory to implement the method provided in the above embodiments.

[0170] Based on the above embodiments, embodiments of the present application provide a chip system, which includes a processor for supporting a computer device to implement the functions involved in each device in the above embodiments. In one possible design, the chip system also includes a memory for storing the necessary programs and data for the computer device. The chip system can be composed of a chip or can include a chip and other discrete devices.

[0171] In the various embodiments of the present application, unless otherwise specified or there is a logical conflict, the terms and / or descriptions between different embodiments are consistent and can be referenced by each other. The technical features in different embodiments can be combined to form new embodiments according to their inherent logical relationships.

[0172] The present application is described with reference to the flowcharts and / or block diagrams of the methods, devices (systems), and computer program products according to the present application. It should be understood that each flow and / or box in the flow chart and / or block diagram, as well as the combination of the flow chart and / or box in the flow chart and / or block diagram, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing device to produce a machine, so that the instructions executed by the processor of the computer or other programmable data processing device produce a device for implementing the functions specified in one or more flow charts and / or one or more boxes in the block diagram.

[0173] These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable data processing device to operate in a specific manner, so that the instructions stored in the computer-readable memory produce a product including an instruction device that implements the functions specified in one or more processes in the flowchart and / or one or more boxes in the block diagram.

[0174] These computer program instructions can also be loaded onto a computer or other programmable data processing device so that a series of operating steps are executed on the computer or other programmable device to produce a computer-implemented process, so that the instructions executed on the computer or other programmable device provide steps for implementing the functions specified in one or more processes in the flowchart and / or one or more boxes in the block diagram.

[0175] In this application, "at least one" means one or more, and "more than one" means two or more. "And / or" describes the relationship between related objects, indicating that three possible relationships exist. For example, "A and / or B" can mean: A exists alone, A and B exist simultaneously, and B exists alone, where A and B can be singular or plural. In the text description of this application, the character " / " generally indicates that the related objects are in an "or" relationship.

[0176] It is understood that the various numbers used in the embodiments of this application are merely for ease of description and are not intended to limit the scope of the embodiments of this application. The order of the sequence numbers of the above-mentioned processes does not necessarily imply a specific order of execution; the order of execution of the processes should be determined by their functions and inherent logic.

[0177] Obviously, those skilled in the art may make various changes and modifications to the present application without departing from the scope of the present application. Thus, if these modifications and variations of the present application fall within the scope of the claims of the present application and their equivalents, the present application is intended to include these modifications and variations.

Claims

1. A communication method, characterized in that: include: Generate a data frame, the data frame comprising: a frame control, and one or more physical blocks PB, the one or more PBs comprising one or more medium access control MAC frames, the one or more MAC frames being cascaded in a first aggregation manner; The data frame is sent.

2. The method according to claim 1, characterized in that The one or more MAC frames are concatenated via one or more concatenation headers.

3. The method according to claim 2, characterized in that The first MAC frame is any MAC frame among the one or more MAC frames, and the first cascade header among the one or more cascade headers is used to indicate at least one of the following: the length, destination address, data type of the first MAC frame or the position of the next cascade header of the first cascade header among the one or more cascade headers; wherein, the first cascade header is located before the first MAC frame, and / or, the first cascade header is adjacent to the first MAC frame.

4. The method according to claim 1, characterized in that The one or more MAC frames include a first MAC frame and a second MAC frame, wherein the first MAC frame is adjacent to the second MAC frame, or at least one of the following is included between the first MAC frame and the second MAC frame: a PB header, a check sequence, or a padding bit.

5. The method according to any one of claims 1 to 4, characterized in that: The one or more PBs are multiple PBs, the first part of the third MAC frame among the one or more MAC frames is included in the payload part of the first PB among the multiple PBs, and the second part of the third MAC frame is included in the payload part of the second PB among the multiple PBs.

6. The method according to any one of claims 1 to 4, characterized in that: The one or more PBs are a plurality of PBs, and each of the one or more MAC frames is included in a payload portion of a PB among the plurality of PBs.

7. The method according to any one of claims 1 to 4, characterized in that: The one or more MAC frames are included in a payload portion of a third PB among the one or more PBs.

8. The method according to any one of claims 1 to 7, characterized in that The frame control and / or the PB header of at least one of the one or more PBs is used to indicate a cascade type, and the cascade type includes at least one of the following: Cascade type 1: the one or more MAC frames are cascaded through one or more cascade headers; the one or more MAC frames are included in the payload part of the third PB in the one or more PBs, or the one or more PBs are multiple PBs, the first part of the third MAC frame in the one or more MAC frames is included in the payload part of the first PB in the multiple PBs, and the second part of the third MAC frame is included in the payload part of the second PB in the multiple PBs; Cascade type 2: the one or more MAC frames are cascaded through one or more cascade headers; the one or more MAC frames are included in the payload part of the third PB in the one or more PBs, or the one or more PBs are multiple PBs, and each MAC frame in the one or more MAC frames is included in the payload part of one PB in the multiple PBs; Cascade type three: the one or more MAC frames include a first MAC frame and a second MAC frame, wherein the first MAC frame is adjacent to the second MAC frame, or the first MAC frame and the second MAC frame include at least one of the following: a PB header, a PB check sequence, or a padding bit; the one or more MAC frames are included in the payload part of a third PB in the one or more PBs, or the one or more PBs are multiple PBs, the first part of the third MAC frame in the one or more MAC frames is included in the payload part of a first PB in the multiple PBs, and the second part of the third MAC frame is included in the payload part of a second PB in the multiple PBs; or Cascade type four: The one or more MAC frames include a first MAC frame and a second MAC frame, wherein the first MAC frame is adjacent to the second MAC frame, or the first MAC frame and the second MAC frame include at least one of the following: a PB header, a PB check sequence or a padding bit; the one or more MAC frames are included in the payload part of a third PB in the one or more PBs, or the one or more PBs are multiple PBs, and each MAC frame in the one or more MAC frames is included in the payload part of a PB in the multiple PBs.

9. The method according to any one of claims 1 to 8, characterized in that The frame control of the data frame and / or the PB header of at least one PB among the one or more PBs is used to indicate whether the data frame includes the multiple MAC frames.

10. The method according to any one of claims 1 to 9, characterized in that: The one or more MAC frames include at least one of the following: a MAC frame of a network layer, or a MAC frame of a service layer.

11. The method according to any one of claims 1 to 10, characterized in that The data frame is a MAC layer protocol data unit MPDU frame.

12. A communication method, characterized in that: include: receiving a data frame, wherein the data frame includes: a frame control, and one or more physical blocks PB, wherein the one or more PBs include one or more medium access control MAC frames, and the one or more MAC frames are cascaded in a first aggregation manner; The data frame is processed.

13. The method according to claim 12, characterized in that The one or more MAC frames are concatenated via one or more concatenation headers.

14. The method according to claim 13, characterized in that The first MAC frame is any MAC frame among the one or more MAC frames, and the first cascade header among the one or more cascade headers is used to indicate at least one of the following: the length, destination address, data type of the first MAC frame or the position of the next cascade header of the first cascade header among the one or more cascade headers; wherein, the first cascade header is located before the first MAC frame, and / or, the first cascade header is adjacent to the first MAC frame.

15. The method according to claim 12, characterized in that The one or more MAC frames include a first MAC frame and a second MAC frame, wherein the first MAC frame is adjacent to the second MAC frame, or at least one of the following is included between the first MAC frame and the second MAC frame: a PB header, a check sequence, or a padding bit.

16. The method according to any one of claims 12 to 15, characterized in that The one or more PBs are multiple PBs, the first part of the third MAC frame among the one or more MAC frames is included in the payload part of the first PB among the multiple PBs, and the second part of the third MAC frame is included in the payload part of the second PB among the multiple PBs.

17. The method according to any one of claims 12 to 15, characterized in that The one or more PBs are a plurality of PBs, and each of the one or more MAC frames is included in a payload portion of a PB among the plurality of PBs.

18. The method according to any one of claims 12 to 15, characterized in that The one or more MAC frames are included in a payload portion of a third PB among the one or more PBs.

19. The method according to any one of claims 12 to 18, characterized in that The frame control and / or the PB header of at least one of the one or more PBs is used to indicate a cascade type, and the cascade type includes at least one of the following: Cascade type 1: the one or more MAC frames are cascaded through one or more cascade headers; the one or more MAC frames are included in the payload part of the third PB in the one or more PBs, or the one or more PBs are multiple PBs, the first part of the third MAC frame in the one or more MAC frames is included in the payload part of the first PB in the multiple PBs, and the second part of the third MAC frame is included in the payload part of the second PB in the multiple PBs; Cascade type 2: the one or more MAC frames are cascaded through one or more cascade headers; the one or more MAC frames are included in the payload part of the third PB in the one or more PBs, or the one or more PBs are multiple PBs, and each MAC frame in the one or more MAC frames is included in the payload part of one PB in the multiple PBs; Cascade type three: the one or more MAC frames include a first MAC frame and a second MAC frame, wherein the first MAC frame is adjacent to the second MAC frame, or the first MAC frame and the second MAC frame include at least one of the following: a PB header, a PB check sequence, or a padding bit; the one or more MAC frames are included in the payload part of a third PB in the one or more PBs, or the one or more PBs are multiple PBs, the first part of the third MAC frame in the one or more MAC frames is included in the payload part of a first PB in the multiple PBs, and the second part of the third MAC frame is included in the payload part of a second PB in the multiple PBs; or Cascade type four: The one or more MAC frames include a first MAC frame and a second MAC frame, wherein the first MAC frame is adjacent to the second MAC frame, or the first MAC frame and the second MAC frame include at least one of the following: a PB header, a PB check sequence or a padding bit; the one or more MAC frames are included in the payload part of a third PB in the one or more PBs, or the one or more PBs are multiple PBs, and each MAC frame in the one or more MAC frames is included in the payload part of a PB in the multiple PBs.

20. The method according to any one of claims 12 to 19, characterized in that The frame control of the data frame and / or the PB header of at least one PB among the one or more PBs is used to indicate whether the data frame includes the multiple MAC frames.

21. The method according to any one of claims 12 to 20, characterized in that The one or more MAC frames include at least one of the following: a MAC frame of a network layer, or a MAC frame of a service layer.

22. The method according to any one of claims 12 to 21, characterized in that The data frame is a MAC layer protocol data unit MPDU frame.

23. A communication device, characterized in that: The method comprises a unit for executing the method according to any one of claims 1 to 11, or comprises a unit for executing the method according to any one of claims 12 to 22.

24. A communication device, characterized in that: The device comprises a processor, wherein the processor executes instructions so that the device executes the method according to any one of claims 1 to 11, or the device executes the method according to any one of claims 12 to 22.

25. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores a computer program or instructions. When the computer program or instructions are executed, the method according to any one of claims 1 to 22 is implemented.

26. A computer program product, characterized in that The computer program product comprises: a computer program code, and when the computer program code is executed, the method according to any one of claims 1 to 22 is implemented.

Citation Information

Patent Citations

  • Frame concatenation in wireless uwb devices

    CN102379108A

  • Two-stage frame aggregation method

    CN102724706A

  • Control frame aggregation frame

    CN107409015A

  • Information indication method and apparatus, and information receiving method and apparatus

    CN108123781A

  • Aggregation of data frames

    CN113316974A

Cited By

  • Control method of molded case circuit breaker based on HPLC power line communication

    CN121966028A