WO2020221247A1 - 一种发送、接收反馈信息的方法及设备 - Google Patents

一种发送、接收反馈信息的方法及设备 Download PDF

Info

Publication number
WO2020221247A1
WO2020221247A1 PCT/CN2020/087483 CN2020087483W WO2020221247A1 WO 2020221247 A1 WO2020221247 A1 WO 2020221247A1 CN 2020087483 W CN2020087483 W CN 2020087483W WO 2020221247 A1 WO2020221247 A1 WO 2020221247A1
Authority
WO
WIPO (PCT)
Prior art keywords
data packet
sub
sequence number
information
feedback information
Prior art date
Application number
PCT/CN2020/087483
Other languages
English (en)
French (fr)
Inventor
刘德平
Original Assignee
华为技术有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 华为技术有限公司 filed Critical 华为技术有限公司
Publication of WO2020221247A1 publication Critical patent/WO2020221247A1/zh

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/12Arrangements for detecting or preventing errors in the information received by using return channel
    • H04L1/16Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
    • H04L1/1607Details of the supervisory signal
    • H04L1/1642Formats specially adapted for sequence numbers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/12Arrangements for detecting or preventing errors in the information received by using return channel
    • H04L1/16Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W52/00Power management, e.g. TPC [Transmission Power Control], power saving or power classes
    • H04W52/02Power saving arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W52/00Power management, e.g. TPC [Transmission Power Control], power saving or power classes
    • H04W52/02Power saving arrangements
    • H04W52/0209Power saving arrangements in terminal devices
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/70Reducing energy consumption in communication networks in wireless communication networks

Definitions

  • This application relates to the field of communications technology, and in particular to a method and device for sending and receiving feedback information.
  • the receiving end device After receiving the data packet, the receiving end device will send feedback information to the sending end device. If the data packet is successfully received, it is not necessary to feedback, and if the data packet reception fails or has not been received temporarily, the reception may be failed or not.
  • the information of the received data packet is sent to the sending end device through feedback information, and the sending end device can retransmit these data packets after receiving the feedback information.
  • the feedback information includes an acknowledgement (ACK)_sequence number (SN) field, which carries the sequence number of the next unreceived data packet of the receiving end device.
  • ACK acknowledgement
  • SN acknowledgement number
  • the data packets not received by the receiving end device are data packet 1, data packet 2, data packet 4, and data packet 7, and data packet 3, data packet 5, and data packet 6 are all received successfully.
  • the receiving end device needs to send feedback information, the receiving end device can add the information of data packet 1, data packet 2, data packet 4, and data packet 7 to the feedback information.
  • the capacity of the feedback information is limited, and the information of data packet 1, data packet 2, data packet 4, and data packet 7 may not be accommodated.
  • the receiving end device adds the information of data packet 1, data packet 2, data packet 4 and data packet 7 to the feedback information in the order of the sequence number of the data packet. For example, after adding the information of data packet 4, the feedback information No more information can be accommodated, so the information of packet 7 cannot be added to the feedback information. Then, in the ACK_SN field of the feedback message, the sequence number of the data packet 7 is filled in, for example, 7.
  • the receiving end device cannot add the information of data packet 7 to the feedback information, the receiving end device also needs to determine that in addition to the data packets corresponding to the feedback information, the next unreceived data packet Which packet is it? It can be seen that a further search process is required for the receiving end device, which is not conducive to saving power consumption.
  • the embodiments of the present application provide a method and device for sending and receiving feedback information, which are used to save power consumption of the device.
  • a method for sending feedback information includes: a receiving device generates feedback information, where the feedback information includes information about a data packet to be fed back among data packets not received by the receiving device, and The feedback information further includes a first field, and the first field carries information of a sequence number (n+1), and n is the sequence number of the latest data packet among the data packets indicated by the feedback information.
  • the receiving device sends the feedback information to the sending device.
  • the method may be executed by a first communication device, and the first communication device may be a communication device or a communication device capable of supporting the communication device to implement the functions required by the method, such as a chip system.
  • the communication device is a receiving device.
  • the receiving device may be a terminal device or a network device.
  • the first field included in the feedback information carries information of the sequence number (n+1), and n is the sequence number of the latest data packet among the data packets indicated by the feedback information.
  • the data packets not received by the receiving device are data packet 1, data packet 2, data packet 4, and data packet 7, and data packet 3, data packet 5, and data packet 6 are all received successfully, and because the capacity of feedback information is limited, Therefore, the receiving device can only add the information of data packet 1, data packet 2, and data packet 4 to the feedback information, while the information of data packet 7 cannot be added to the feedback information.
  • the first field of the feedback information carries the information of the sequence number of the data packet 5, not the sequence number of the data packet 7.
  • the receiving device does not need to determine the next unreceived data packet, but only needs to add the sequence number of the next data packet of the latest data packet indicated by the feedback information to the feedback
  • the information is enough to reduce the workload of the receiving device, thereby helping to save the power consumption of the device.
  • the first field is a confirmation response sequence number field.
  • the first field may be the ACK_SN field.
  • the embodiment of the present application does not limit the implementation of the first field, and the first field may also be other existing fields or newly added fields.
  • the feedback information includes the data packets that are not received by the receiving device to be fed back
  • the information of the data packet can include one of the following three situations:
  • the feedback information includes the sequence number of the first data packet to be fed back in the data packets not received by the receiving device; or,
  • the feedback information includes the sequence number of the second data packet to be fed back in the data packets not received by the receiving device, and the start position information and end position information of the unreceived sub-data packets in the second data packet ;or,
  • the feedback information includes the sequence number of the first data packet to be fed back in the data packets not received by the receiving device and the sequence of the second data packet to be fed back in the data packets not received by the receiving device Number, and the start position information and end position information of the unreceived sub-data packets in the second data packet.
  • the capacity of a data packet may be relatively large.
  • the receiving device may receive a data packet successfully or fail the entire data packet, or it may receive part of the data packet successfully, and receive the remaining part of the content. failure. Then, if the receiving device fails to receive a data packet as a whole, the receiving device only needs to add the serial number of the data packet in the feedback information, and the data packet can be indicated by the serial number.
  • the receiving device can add the serial number of the data packet to the feedback information, and add the location information of the part that failed to receive (from The start position information and the end position information), so that the sending device knows which part of the data packet the receiving device fails to receive, and the instructions are clearer.
  • the second data packet contains a plurality of unreceived discontinuous sub-data packets, and the unreceived Each sub-data packet in the plurality of discontinuous sub-data packets is indicated by the sequence number of the second data packet and the start position information and end position information of each sub-data packet.
  • the unreceived sub-data packet is a plurality of discontinuous sub-data packets
  • the starting position information It includes the start position information of each sub-data packet in the unreceived sub-data packet
  • the end position information includes the end position information of each sub-data packet in the unreceived sub-data packet.
  • the receiving device does not receive multiple discontinuous parts of the second data packet (each part is regarded as a sub-data packet) for the second data packet, then the receiving device can take the start of each part that has not been received Both the location information and the end location information are added to the feedback information, so that the sending device can more clearly determine which content of the second data packet has failed to be received by the receiving device.
  • the information of the sequence number (n+1) is used to indicate the receiving status of the data packet with the sequence number (n+1), where the receiving status of the data packet includes successful or unreceived reception.
  • the sequence number (n+1) included in the first field can be used to indicate the receiving status of the data packet with the sequence number (n+1), so that the sending device can determine the sequence number (n+1) according to the first field.
  • the receiving status of the data packet is successful or unreceived.
  • the sequence number (n+1) included in the first field may not indicate the reception status of the data packet, and the sending device does not determine the sequence number as (n+ 1) The receiving status of the data packet. There are no specific restrictions.
  • a method for receiving feedback information includes: a sending device receives feedback information from a receiving device; and the sending device determines, according to the feedback information, a pending feedback among data packets not received by the receiving device And the feedback information further includes a first field, the first field carries the information of the sequence number (n+1), n is the latest data packet indicated by the feedback information The sequence number of the packet.
  • the method may be executed by a second communication device, and the first communication device may be a communication device or a communication device capable of supporting the communication device to implement the functions required by the method, such as a chip system.
  • the communication device is a sending device.
  • the sending device may be a terminal device or a network device.
  • the first field is a confirmation response sequence number field.
  • the sending device determines, according to the feedback information, data packets not received by the receiving device
  • the information of the data packet to be fed back in includes one of the following:
  • the sending device determines the sequence number of the first data packet to be fed back among the data packets not received by the receiving device according to the feedback information; or,
  • the sending device determines, according to the feedback information, the sequence number of the second data packet to be fed back in the data packets not received by the receiving device, and the starting position of the unreceived sub-data packet in the second data packet Information and ending position information; or,
  • the sending device determines, according to the feedback information, the sequence number of the first data packet to be fed back in the data packets not received by the receiving device, and includes the first data packet to be fed back in the data packets not received by the receiving device The sequence number of the second data packet, and the start position information and end position information of the unreceived sub-data packets in the second data packet.
  • the second data packet contains a plurality of unreceived discontinuous sub-data packets, and the unreceived Each sub-data packet in the plurality of discontinuous sub-data packets is indicated by the sequence number of the second data packet and the start position information and end position information of each sub-data packet.
  • the unreceived sub-data packet is a plurality of discontinuous sub-data packets
  • the start position information It includes the start position information of each sub-data packet in the unreceived sub-data packet
  • the end position information includes the end position information of each sub-data packet in the unreceived sub-data packet.
  • the information of the sequence number (n+1) is used to indicate the receiving status of the data packet with the sequence number (n+1), where the receiving status of the data packet includes successful or unreceived reception.
  • a first communication device is provided, for example, the communication device is the first communication device as described above.
  • the communication device is configured to execute the foregoing first aspect or the method in any possible implementation manner of the first aspect.
  • the communication device may include a module for executing the method in the first aspect or any possible implementation of the first aspect, for example, including a processing module and a transceiver module.
  • the communication device is a receiving device.
  • the receiving device may be a terminal device or a network device. among them,
  • the processing module is configured to generate feedback information, where the feedback information includes information about data packets to be fed back in data packets not received by the communication device, and the feedback information further includes a first field, and the second One field carries information of sequence number (n+1), where n is the sequence number of the latest data packet among the data packets indicated by the feedback information;
  • the transceiver module is used to send the feedback information to a sending device.
  • the first field is a confirmation response sequence number field.
  • the feedback information includes the data packets to be fed back in the data packets not received by the communication device
  • the information of the data packet can include one of the following three situations:
  • the feedback information includes the sequence number of the first data packet to be fed back in the data packets not received by the communication device; or,
  • the feedback information includes the sequence number of the second data packet to be fed back in the data packets not received by the communication device, and the start position information and end position information of the unreceived sub-data packets in the second data packet ;or,
  • the feedback information includes the sequence number of the first data packet to be fed back in the data packets not received by the communication device, and the sequence of the second data packet to be fed back in the data packets not received by the communication device Number, and the start position information and end position information of the unreceived sub-data packets in the second data packet.
  • the second data packet includes a plurality of unreceived discontinuous sub-data packets, and the unreceived Each sub-data packet in the plurality of discontinuous sub-data packets is indicated by the sequence number of the second data packet and the start position information and end position information of each sub-data packet.
  • the unreceived sub-data packet is a plurality of discontinuous sub-data packets
  • the start position information It includes the start position information of each sub-data packet in the unreceived sub-data packet
  • the end position information includes the end position information of each sub-data packet in the unreceived sub-data packet.
  • the information of the sequence number (n+1) is used to indicate the receiving status of the data packet with the sequence number (n+1), where the receiving status of the data packet includes successful or unreceived reception.
  • a second communication device is provided, for example, the communication device is the second communication device as described above.
  • the communication device is configured to execute the foregoing second aspect or any possible implementation method of the second aspect.
  • the communication device may include a module for executing the method in the second aspect or any possible implementation of the second aspect, for example, including a processing module and a transceiver module.
  • the communication device is a sending device.
  • the sending device may be a terminal device or a network device. among them,
  • the transceiver module is used to receive feedback information from a receiving device
  • the processing module is configured to determine, according to the feedback information, information about the data packet to be fed back in the data packet not received by the receiving device, and the feedback information further includes a first field, and the first field carries The information of the sequence number (n+1), where n is the sequence number of the latest data packet among the data packets indicated by the feedback information.
  • the first field is a confirmation response sequence number field.
  • the processing module is configured to determine the location based on the feedback information in one of the following ways: The information of the data packet to be fed back in the data packet not received by the receiving device:
  • the second data packet contains a plurality of unreceived discontinuous sub-data packets, and the unreceived Each sub-data packet in the plurality of discontinuous sub-data packets is indicated by the sequence number of the second data packet and the start position information and end position information of each sub-data packet.
  • the unreceived sub-data packet is a plurality of discontinuous sub-data packets
  • the start position information It includes the start position information of each sub-data packet in the unreceived sub-data packet
  • the end position information includes the end position information of each sub-data packet in the unreceived sub-data packet.
  • the information of the sequence number (n+1) is used to indicate the receiving status of the data packet with the sequence number (n+1), where the receiving status of the data packet includes successful or unreceived reception.
  • a third communication device is provided.
  • the communication device is, for example, the aforementioned third communication device.
  • the communication device includes a processor and a transceiver, and the processor and the transceiver are coupled with each other to implement the methods described in the foregoing third aspect or various possible designs of the third aspect.
  • the communication device is a chip provided in a communication device.
  • the communication device is a receiving device.
  • the receiving device may be a terminal device or a network device.
  • the transceiver is realized by, for example, an antenna, a feeder, a codec in the communication device, or, if the communication device is a chip set in the communication device, the transceiver is, for example, a communication interface in the chip. It is connected with the radio frequency transceiving component in the communication equipment to realize the transmission and reception of information through the radio frequency transceiving component. among them,
  • the processor is configured to generate feedback information, where the feedback information includes information about data packets to be fed back in data packets that are not received by the communication device, and the feedback information further includes a first field.
  • One field carries information of sequence number (n+1), where n is the sequence number of the latest data packet among the data packets indicated by the feedback information;
  • the transceiver is used to send the feedback information to a sending device.
  • the first field is a confirmation response sequence number field.
  • the feedback information includes the data packets to be fed back in the data packets not received by the communication device
  • the information of the data packet can include one of the following three situations:
  • the feedback information includes the sequence number of the first data packet to be fed back in the data packets not received by the communication device; or,
  • the feedback information includes the sequence number of the second data packet to be fed back in the data packets not received by the communication device, and the start position information and end position information of the unreceived sub-data packets in the second data packet ;or,
  • the feedback information includes the sequence number of the first data packet to be fed back in the data packets not received by the communication device, and the sequence of the second data packet to be fed back in the data packets not received by the communication device Number, and the start position information and end position information of the unreceived sub-data packets in the second data packet.
  • the second data packet contains a plurality of unreceived discontinuous sub-data packets, and the unreceived Each sub-data packet in the plurality of discontinuous sub-data packets is indicated by the sequence number of the second data packet and the start position information and end position information of each sub-data packet.
  • the unreceived sub-data packet is a plurality of discontinuous sub-data packets
  • the start position information It includes the start position information of each sub-data packet in the unreceived sub-data packet
  • the end position information includes the end position information of each sub-data packet in the unreceived sub-data packet.
  • the information of the sequence number (n+1) is used to indicate the receiving status of the data packet with the sequence number (n+1), where the receiving status of the data packet includes successful or unreceived reception.
  • a fourth communication device is provided.
  • the communication device is, for example, the fourth communication device as described above.
  • the communication device includes a processor and a transceiver, and the processor and the transceiver are coupled with each other to implement the methods described in the foregoing fourth aspect or various possible designs of the fourth aspect.
  • the communication device is a chip provided in a communication device.
  • the communication device is a sending device.
  • the sending device may be a terminal device or a network device.
  • the transceiver is realized by, for example, an antenna, a feeder, a codec in the communication device, or, if the communication device is a chip set in the communication device, the transceiver is, for example, a communication interface in the chip. It is connected with the radio frequency transceiving component in the communication equipment to realize the transmission and reception of information through the radio frequency transceiving component. among them,
  • the transceiver is used to receive feedback information from a receiving device
  • the processor is configured to determine, according to the feedback information, information about a data packet to be fed back in a data packet not received by the receiving device, and the feedback information further includes a first field, and the first field carries The information of the sequence number (n+1), where n is the sequence number of the latest data packet among the data packets indicated by the feedback information.
  • the first field is a confirmation response sequence number field.
  • the processor is configured to determine the Information of the data packet to be fed back in the data packet not received by the receiving device:
  • the second data packet includes a plurality of unreceived discontinuous sub-data packets, and the unreceived Each sub-data packet in the plurality of discontinuous sub-data packets is indicated by the sequence number of the second data packet and the start position information and end position information of each sub-data packet.
  • the unreceived sub-data packet is a plurality of discontinuous sub-data packets
  • the start position information It includes the start position information of each sub-data packet in the unreceived sub-data packet
  • the end position information includes the end position information of each sub-data packet in the unreceived sub-data packet.
  • the information of the sequence number (n+1) is used to indicate the receiving status of the data packet with the sequence number (n+1), where the receiving status of the data packet includes successful or unreceived reception.
  • a fifth communication device is provided.
  • the communication device may be the first communication device in the above method design.
  • the communication device is a chip provided in a receiving device.
  • the receiving device may be a terminal device or a network device.
  • the communication device includes: a memory for storing computer executable program codes; and a processor, which is coupled with the memory.
  • the program code stored in the memory includes instructions, and when the processor executes the instructions, the fifth communication device is caused to execute the foregoing first aspect or the method in any one of the possible implementation manners of the first aspect.
  • the fifth type of communication device may also include a communication interface, and the communication interface may be a transceiver in the receiving device, for example, implemented by the antenna, feeder, and codec in the communication device, or if the fifth type of communication
  • the device is a chip set in the receiving device, and the communication interface may be an input/output interface of the chip, such as input/output pins.
  • a sixth communication device is provided.
  • the communication device may be the second communication device in the above method design.
  • the communication device is a chip provided in a sending device.
  • the sending device may be a terminal device or a network device.
  • the communication device includes: a memory for storing computer executable program codes; and a processor, which is coupled with the memory.
  • the program code stored in the memory includes instructions, and when the processor executes the instructions, the sixth communication device executes the second aspect or the method in any one of the possible implementation manners of the second aspect.
  • the sixth type of communication device may also include a communication interface, which may be a transceiver in the transmitting device, for example, implemented by the antenna, feeder, and codec in the communication device, or if the sixth type of communication
  • the device is a chip set in the sending device, and the communication interface may be an input/output interface of the chip, such as input/output pins.
  • a communication system which may include the first communication device described in the third aspect, the third communication device described in the fifth aspect, or the fifth communication device described in the seventh aspect , And including the second communication device described in the fourth aspect, the fourth communication device described in the sixth aspect, or the sixth communication device described in the eighth aspect.
  • a computer storage medium stores instructions, which when run on a computer, cause the computer to execute the first aspect or any one of the possible designs of the first aspect The method described.
  • a computer storage medium stores instructions that, when run on a computer, cause the computer to execute the second aspect or any one of the possible designs of the second aspect. The method described in.
  • a computer program product containing instructions.
  • the computer program product stores instructions that, when run on a computer, cause the computer to execute the first aspect or any one of the first aspects described above. The method described in the design.
  • a computer program product containing instructions.
  • the computer program product stores instructions that, when run on a computer, cause the computer to execute the second aspect or any one of the possibilities of the second aspect. The method described in the design.
  • the first field included in the feedback information carries the information of the sequence number (n+1), so that the receiving device does not need to determine the next unreceived data except the data packet indicated by the feedback information Which packet is it? Just add the sequence number of the next data packet of the latest data packet indicated by the feedback information to the feedback information, which reduces the workload of the receiving device and helps save The power consumption of the device.
  • FIG. 1A is a schematic diagram of a protocol stack of a sending device and a receiving device involved in an embodiment of this application;
  • FIG. 1B is a schematic diagram of the structure of the count value of the data packet
  • Figure 2 is an example of the PDCP layer receiving data packets and sorting the data packets
  • FIG. 3A is a schematic diagram of an application scenario of an embodiment of this application.
  • 3B is a schematic diagram of another application scenario of an embodiment of the application.
  • FIG. 4 is a flowchart of a method for sending and receiving feedback information provided by an embodiment of the application
  • FIG. 5 is a schematic diagram showing that the unreceived part of the data packet in the embodiment of the application is continuous;
  • FIG. 6 is a schematic diagram showing that the unreceived part of the data packet in the embodiment of the application is discontinuous
  • FIG. 7 is a schematic diagram of feedback information in an embodiment of this application.
  • FIG. 8 is a schematic block diagram of a first receiving device provided by an embodiment of this application.
  • FIG. 9 is another schematic block diagram of the first receiving device according to an embodiment of this application.
  • FIG. 10 is a schematic block diagram of a first sending device provided by an embodiment of this application.
  • FIG. 11 is another schematic block diagram of the first sending device according to an embodiment of this application.
  • FIG. 12 is a schematic block diagram of a communication device provided by an embodiment of this application.
  • FIG. 13 is another schematic block diagram of a communication device provided by an embodiment of this application.
  • FIG. 14 is still another schematic block diagram of the communication device provided by an embodiment of the application.
  • Terminal devices including devices that provide users with voice and/or data connectivity, specifically, include devices that provide users with voice, or include devices that provide users with data connectivity, or include devices that provide users with voice and data connectivity Sexual equipment.
  • it may include a handheld device with a wireless connection function, or a processing device connected to a wireless modem.
  • the terminal device can communicate with the core network via a radio access network (RAN), exchange voice or data with the RAN, or exchange voice and data with the RAN.
  • RAN radio access network
  • the terminal equipment may include user equipment (UE), wireless terminal equipment, mobile terminal equipment, device-to-device communication (device-to-device, D2D) terminal equipment, vehicle to everything (V2X) terminal equipment , Machine-to-machine/machine-type communications (machine-to-machine/machine-type communications, M2M/MTC) terminal equipment, Internet of things (IoT) terminal equipment, subscriber unit (subscriber unit), subscriber station (subscriber) station), mobile station (mobile station), remote station (remote station), access point (access point, AP), remote terminal (remote terminal), access terminal (access terminal), user terminal (user terminal), user Agent (user agent), or user equipment (user device), etc.
  • UE user equipment
  • D2D device-to-device communication
  • V2X vehicle to everything
  • M2M/MTC Machine-to-machine/machine-type communications
  • IoT Internet of things
  • subscriber unit subscriber unit
  • subscriber station subscriber station
  • mobile station mobile station
  • it may include mobile phones (or “cellular” phones), computers with mobile terminal equipment, portable, pocket-sized, handheld, and computer-built mobile devices.
  • PCS personal communication service
  • PCS personal communication service
  • SIP session initiation protocol
  • WLL wireless local loop
  • PDA personal digital assistants
  • restricted devices such as devices with low power consumption, or devices with limited storage capabilities, or devices with limited computing capabilities. Examples include barcodes, radio frequency identification (RFID), sensors, global positioning system (GPS), laser scanners and other information sensing equipment.
  • RFID radio frequency identification
  • GPS global positioning system
  • laser scanners and other information sensing equipment.
  • the terminal device may also be a wearable device.
  • Wearable devices can also be called wearable smart devices or smart wearable devices, etc. It is a general term for using wearable technology to intelligently design daily wear and develop wearable devices, such as glasses, gloves, watches, clothing and shoes Wait.
  • a wearable device is a portable device that is directly worn on the body or integrated into the user's clothes or accessories. Wearable devices are not only a hardware device, but also realize powerful functions through software support, data interaction, and cloud interaction.
  • wearable smart devices include full-featured, large-sized, complete or partial functions that can be achieved without relying on smart phones, such as smart watches or smart glasses, and only focus on a certain type of application function, and need to cooperate with other devices such as smart phones.
  • Use such as various smart bracelets, smart helmets, smart jewelry, etc. for physical sign monitoring.
  • vehicle-mounted terminal equipment for example, the vehicle-mounted terminal equipment is also called on-board unit (OBU).
  • OBU on-board unit
  • the terminal device may also include a relay. Or it can be understood that everything that can communicate with the base station can be regarded as a terminal device.
  • Network equipment such as access network (AN) equipment, such as a base station (e.g., access point), may refer to equipment that communicates with wireless terminal equipment through one or more cells on the air interface in the access network .
  • AN access network
  • base station e.g., access point
  • a network device in a vehicle-to-everything (V2X) technology is a roadside unit (RSU).
  • RSU roadside unit
  • a cloud device may also be used as a sending device, such as a cloud server.
  • the base station can be used to convert the received air frame and IP packet to each other, and act as a router between the terminal device and the rest of the access network, where the rest of the access network can include the IP network.
  • the RSU can be a fixed infrastructure entity that supports V2X applications, and can exchange messages with other entities that support V2X applications.
  • the network equipment can also coordinate the attribute management of the air interface.
  • the network equipment may include a long term evolution (LTE) system or an evolved base station (NodeB or eNB or e-NodeB, evolutional Node B) in a long term evolution (advanced, LTE-A) system, Or it may also include the next generation node B (gNB) in the new radio (NR) system (also referred to as the NR system) of the fifth generation mobile communication technology (the 5th generation, 5G), or it may also It includes a centralized unit (CU) and a distributed unit (DU) in a cloud access network (cloud radio access network, Cloud RAN) system, which is not limited in this embodiment of the application.
  • LTE long term evolution
  • NodeB or eNB or e-NodeB, evolutional Node B evolutional Node B
  • LTE-A long term evolution
  • gNB next generation node B
  • NR new radio
  • 5G fifth generation
  • 5G fifth generation
  • the receiving device described in the embodiment of the present application may be a terminal device or a network device.
  • the sending device used to send the data packet in the embodiment of the present application may similarly be a terminal device or a network device.
  • the sending device is a network device and the receiving device is a terminal device, or in another case, the sending device and the receiving device are both network devices, or in another case, the sending device and the receiving device are both network devices.
  • It is a terminal device (for example, transmission between the two via a sidelink (SL)), or in another case, the sending device is a terminal device, the receiving device is a network device, etc., and there is no specific limitation.
  • first and second are used to distinguish multiple objects, and are not used to limit the order, timing, priority, or order of multiple objects. Importance.
  • first data packet and the second data packet are only for distinguishing different data packets, but do not indicate the difference in content, priority, sending order, or importance of the two data packets.
  • both the transmitting device and the receiving device include a PDCP layer, an RLC layer, a MAC layer, and a physical layer (PHY).
  • both the sending device and the receiving device also include the upper layer of the PDCP layer.
  • FIG. 1A takes the upper layer of the PDCP layer as the IP/transmission control protocol (transmission control protocol, TCP) layer as an example.
  • TCP transmission control protocol
  • the transmission sequence in the receiving device is: physical layer-MAC layer, RLC layer, PDCP layer-IP/TCP layer.
  • the arc arrow in Figure 1A is used to indicate the transmission path of the data packet.
  • each data packet has a corresponding number.
  • the number of a data packet can be composed of two parts, sequence number (SN) and hyperframe number (hyper frame number, HFN), the two together constitute the number of the data packet, or the data packet Count value.
  • the PDCP layer of the sending device adds an SN to the data packet to be sent.
  • the sending device and the receiving device also need to maintain the same HFN.
  • the sum of SN and HFN constitutes the count value of the data packet.
  • the count value of the data packet may also be referred to as the number of the data packet, etc.
  • the embodiment of the present application does not limit the name of the feature. Refer to FIG. 1B, which is a schematic diagram of the structure of the count value of the data packet.
  • the sending device needs to maintain the total number of sent SNs not exceeding half of the total number of SNs, so as to avoid confusion of frame numbers.
  • the receiving device will also use half the length of the total SN as the receiving window.
  • the total number of SNs is the number of all values corresponding to the number of bits occupied by the SN. For example, if the number of SN bits is 3, and 3 bits correspond to 8 values in total, the total number of SNs is 8. Then the sending device needs to ensure that the total number of sent SNs needs to be less than or equal to 4.
  • the sent SN described here can be understood as the SN corresponding to the data packet maintained in the sending state.
  • the so-called sending state means sending The device has sent, but has not yet received the response message (for example, acknowledgement (ACK)/Negative acknowledgement (NACK)) fed back by the receiving device for the data packet. For example, if the sending device sends data packet 0, data packet 1, data packet 2 and data packet 3, and for these 4 data packets, it has not received the response message from the receiving device, then the sending device cannot send other data package. Subsequently, for example, after the sending device receives the ACK from the receiving device for data packet 0, it can send another data packet, for example, data packet 4 can be sent.
  • ACK acknowledgement
  • NACK Negative acknowledgement
  • the medium access control (MAC) layer supports a hybrid automatic repeat request (HARQ) mechanism.
  • HARQ hybrid automatic repeat request
  • the parallel operation of two HARQ processes causes the data packets received by the receiving device to be out of order.
  • RLC radio link control
  • ARQ automatic repeat request
  • the layer 2 protocol stack RLC in the receiving device is responsible for reordering the received out-of-order data packets, and submitting the reordered data packets to the upper layer of the RLC layer, that is, the PDCP layer.
  • the layer 2 protocol stack RLC no longer has a reordering function, and the layer 2 protocol stack PDCP (or called the PDCP layer) in the receiving device is responsible for reordering the received out-of-sequence data packets.
  • the PDCP layer of the receiving device After the PDCP layer of the receiving device receives a data packet, it first determines the count value of the data packet according to the SN carried in the data packet and the HFN maintained by the receiving device.
  • the count value of the data packet is represented by, for example, RCVD_COUNT.
  • the PDCP layer judges whether the count value of the data packet is within the valid receiving window, that is, judges whether the count value of the data packet is greater than or equal to RX_DELIV and less than (RX_DELIV+SN total/2).
  • RX_DELIV represents the number of the first data packet that the PDCP layer has not delivered to the upper layer before.
  • the PDCP layer can temporarily store the data packet; or, If it is determined that the count value of the data packet is less than RX_DELIV, or the count value of the data packet is less than (RX_DELIV+SN total number/2), or the count value of the data packet is determined to be less than RX_DELIV and less than (RX_DELIV+SN total number/2) , It is determined that the count value of the data packet is not within the valid time window, and the PDCP layer can discard the data packet. For temporarily stored data packets, the PDCP layer can sort them, or reorder them.
  • the PDCP layer sorts data packets, and there are about four variables involved:
  • RCVD_COUNT Represents the count value of currently received data packets
  • RX_DELIV Represents the count value of the first data packet of the PDCP layer that is not delivered to the upper layer of the PDCP layer.
  • the first data packet that is not delivered to the upper layer of the PDCP layer can be understood as the PDCP layer that has not been delivered to the upper layer.
  • RX_NEXT indicates the count value of the next data packet that is currently expected to be received, or in other words, indicates the value of the largest count value in the currently received data packet plus 1;
  • RX_REORD indicates the value of RX_NEXT when the reordering timer (t-reordering timer) is turned on.
  • the first line of Figure 2 indicates that the PDCP layer at the receiving end has not received any data packets.
  • the value of RCVD_COUNT and the value of RX_REORD do not exist, and the value of RX_DELIV is 0, indicating that the current first failed
  • the count value of the data packet delivered to the upper layer of the PDCP layer is 0, and the value of RX_NEXT is 0, indicating that the count value of the next data packet that is currently expected to be received is 0, that is to say the next data that is currently expected to be received
  • the packet is data packet 0.
  • the second row of Figure 2 indicates that the PDCP layer has received packet 0.
  • the PDCP layer judges whether the count value of packet 0 is within a valid time window. Among them, the PDCP layer can determine whether the count value of data packet 0 is within the valid time window according to the value of the unupdated RX_DELIV. For example, the PDCP layer determines that the count value of data packet 0 is within a valid time window, and the PDCP layer temporarily stores data packet 0. Next, the PDCP layer determines whether RCVD_COUNT is greater than or equal to RX_NEXT. If RCVD_COUNT is greater than or equal to RX_NEXT, RX_NEXT needs to be updated.
  • RCVD_COUNT is 0, and the value of RX_NEXT before being updated is 0, then RCVD_COUNT is equal to RX_NEXT, so the value of RX_NEXT is updated to RCVD_COUNT+1, that is, the value of RX_NEXT is updated to 1. Since data packet 0 is received, which is equal to the count value of the first data packet not delivered to the upper layer, the PDCP layer delivers data packet 0 to the upper layer. At this time, the count value of the first data packet not delivered to the upper layer becomes 1 , Then RX_DELIV is updated to 1.
  • the PDCP layer can also determine whether RX_DELIV is greater than or equal to RX_NEXT when the reordering timer is not running. If RX_DELIV is less than RX_NEXT, it indicates that the received data packets are out of order. At this time, the value of RX_DELIV and the value of RX_NEXT are both 1, so it can be determined that there is no disorder.
  • the upper layer of the PDCP layer is the IP/TCP layer as an example.
  • the third row of Figure 2 indicates that the PDCP layer has received packet 3.
  • the PDCP layer judges whether the count value of packet 3 is within a valid time window. Among them, the PDCP layer can judge whether the count value of the data packet 3 is within the valid time window according to the value of the unupdated RX_DELIV. For example, the PDCP layer determines that the count value of data packet 3 is within a valid time window, and the PDCP layer temporarily stores data packet 3. Next, the PDCP layer determines whether RCVD_COUNT is greater than or equal to RX_NEXT. If RCVD_COUNT is greater than or equal to RX_NEXT, RX_NEXT needs to be updated.
  • the value of RCVD_COUNT is 3, and the value of RX_NEXT before the update is 1, then RCVD_COUNT is greater than RX_NEXT, so the PDCP layer can update the value of RX_NEXT to RCVD_COUNT+1, that is, update the value of RX_NEXT to 4 .
  • the PDCP layer can also deliver the data packet 3 to the upper layer, and the PDCP layer may not sort the data packets.
  • the PDCP layer will set the value of RX_DELIV to 1, and there is no need to deliver the data packet to the upper layer.
  • the fourth row of Figure 2 indicates that the PDCP layer has received packet 5.
  • the PDCP layer judges whether the count value of the data packet 5 is within a valid time window. Among them, the PDCP layer can determine whether the count value of the data packet 5 is within a valid time window according to the value of the unupdated RX_DELIV (that is, the value of RX_DELIV is 1). For example, the PDCP layer determines that the count value of the data packet 5 is within a valid time window, and the PDCP layer temporarily stores the data packet 5. Next, the PDCP layer determines whether RCVD_COUNT is greater than or equal to RX_NEXT.
  • RCVD_COUNT is greater than or equal to RX_NEXT
  • RX_NEXT needs to be updated.
  • the value of RCVD_COUNT is 5, and the value of RX_NEXT before the update is 4, then RCVD_COUNT is greater than RX_NEXT, so the PDCP layer can update the value of RX_NEXT to RCVD_COUNT+1, that is, update the value of RX_NEXT to 6. .
  • the value of RX_DELIV is still 1, and the data packet is not delivered to the upper layer.
  • the fifth row of Figure 2 indicates that the PDCP layer has received packet 6.
  • the PDCP layer determines whether the count value of the data packet 6 is within a valid time window. Among them, the PDCP layer can determine whether the count value of the data packet 6 is within the valid time window according to the value of the unupdated RX_DELIV (that is, the value of RX_DELIV is 1). For example, the PDCP layer determines that the count value of the data packet 6 is within a valid time window, and the PDCP layer temporarily stores the data packet 6. Next, the PDCP layer determines whether RCVD_COUNT is greater than or equal to RX_NEXT.
  • RCVD_COUNT is greater than or equal to RX_NEXT
  • RX_NEXT needs to be updated.
  • the value of RCVD_COUNT is 6, and the value of RX_NEXT before the update is 6, then RCVD_COUNT is equal to RX_NEXT, so the PDCP layer can update the value of RX_NEXT to RCVD_COUNT+1, that is, update the value of RX_NEXT to 7. .
  • the value of RX_DELIV is still 1, and no packet is submitted to the upper layer.
  • the sixth row of Figure 2 indicates that the PDCP layer has received packet 1.
  • the PDCP layer judges whether the count value of packet 1 is within a valid time window. Among them, the PDCP layer can determine whether the count value of the data packet 1 is within a valid time window according to the value of the unupdated RX_DELIV (that is, the value of RX_DELIV is 1). For example, the PDCP layer determines that the count value of data packet 1 is within a valid time window, and the PDCP layer temporarily stores data packet 1. Next, the PDCP layer determines whether RCVD_COUNT is greater than or equal to RX_NEXT.
  • RCVD_COUNT is greater than or equal to RX_NEXT
  • RX_NEXT needs to be updated.
  • the value of RCVD_COUNT is 1, and the value of RX_NEXT before being updated is 7, then RCVD_COUNT is less than RX_NEXT, there is no need to update the value of RX_NEXT, and the value of RX_NEXT is still 7.
  • the received data packet is 1 equal to the value RX_DELIV of the first unreceived data packet, the first packet is submitted to the upper layer, and RX_DELIV is updated to 2.
  • the seventh row of Figure 2 indicates that the PDCP layer has received packet 2.
  • the PDCP layer judges whether the count value of data packet 2 is within a valid time window. Among them, the PDCP layer can determine whether the count value of the data packet 2 is within a valid time window according to the value of the unupdated RX_DELIV (that is, the value of RX_DELIV is 1). For example, the PDCP layer determines that the count value of data packet 2 is within a valid time window, and the PDCP layer temporarily stores data packet 2. Next, the PDCP layer determines whether RCVD_COUNT is greater than or equal to RX_NEXT.
  • RCVD_COUNT is greater than or equal to RX_NEXT, RX_NEXT needs to be updated. At this time, the value of RCVD_COUNT is 2, and the value of RX_NEXT before being updated is 7, then RCVD_COUNT is less than RX_NEXT, there is no need to update the value of RX_NEXT, and the value of RX_NEXT is still 7.
  • the received data packet is 2 equal to the value RX_DELIV of the first unreceived data packet
  • the second packet and the continuous packet 3 after the second packet are submitted to the upper layer, and the first unsubmitted data
  • the package is updated to the 4th package that has not been received, that is, RX_DELIV is updated to 4.
  • RX_DELIV is updated to 4.
  • RX_DELIV is greater than or equal to RX_NEXT. If RX_DELIV is less than RX_NEXT, it indicates that the received data packet is out of order.
  • the PDCP layer can start the reordering timer and update the value of RX_REORD to 7.
  • the reordering timer started at this time is to wait for the reception of data packet 4.
  • the values of other variables are consistent with the seventh row in Figure 2.
  • Figure 2 is an example where the PDCP layer receives data packet 1 and data packet 2 during the running time of the reordering timer. Or, if the reordering timer expires when the PDCP layer has not received packet 1 and packet 2, then the PDCP layer will directly submit packet 3 to the upper layer and update the value of RX_DELIV. For packet 1 and Packet 2 is considered lost. If packet 1 is subsequently received, because the PDCP layer has updated the value of RX_DELIV, then the count value of packet 1 subsequently received is probably not within the valid time window, and the PDCP layer will discard packet 1. For the packet The same is true for 2. It can be seen that the PDCP layer may lose data packets due to the timeout of the reordering timer.
  • the above is the process of PDCP reordering data packets. If the RLC layer reorders data packets, the process is similar. But for the RLC layer, the upper layer is the PDCP layer.
  • the receiving device After receiving a data packet, the receiving device sends feedback information to the sending device. Among them, if the data packet is successfully received, no feedback is necessary, and if the data packet fails to be received or has not been received temporarily, the information of the failed or unreceived data packet can be sent to the sending device through feedback information. After receiving the feedback information, the sending device can retransmit the data packet indicated by the feedback information.
  • the feedback information includes the ACK_SN field, which carries the sequence number of the next unreceived data packet by the receiving device.
  • the data packets not received by the receiving device are data packet 1, data packet 2, data packet 4, and data packet 7, and data packet 3, data packet 5, and data packet 6 are all received successfully.
  • the receiving device does not necessarily receive the data packet 3, the data packet 5, and the data packet 6 sequentially. If it is not received sequentially, it can be reordered after receiving. For the specific reordering process, please refer to the foregoing. If the receiving device needs to send feedback information, the receiving device can add the information of data packet 1, data packet 2, data packet 4, and data packet 7 to the feedback information.
  • the RLC layer may carry the feedback information in an RLC protocol data unit (PDU).
  • PDU RLC protocol data unit
  • the receiving device can add the information of data packet 1, data packet 2, data packet 4, and data packet 7 to the feedback information in the order of the sequence number of the data packet. For example, after adding the information of data packet 4, the feedback information has been added. No more information can be accommodated, so the information of packet 7 cannot be added to the feedback information. Then, in the ACK_SN field of the feedback message, the sequence number of packet 7 can be filled in, for example, 7.
  • the receiving device cannot add the information of data packet 7 to the feedback information, the receiving device also needs to determine whether the next unreceived data packet is, in addition to the data packets corresponding to the feedback information. Which packet. It can be seen that a further search process is required for the receiving end device, which is not conducive to saving power consumption.
  • the first field included in the feedback information carries information of the sequence number (n+1), and n is the sequence number of the latest data packet among the data packets indicated by the feedback information.
  • the data packets not received by the receiving device are data packet 1, data packet 2, data packet 4, and data packet 7, and data packet 3, data packet 5, and data packet 6 are all received successfully, and because the capacity of feedback information is limited, Therefore, the receiving device can only add the information of data packet 1, data packet 2, and data packet 4 to the feedback information, while the information of data packet 7 cannot be added to the feedback information.
  • the first field of the feedback information carries the information of the sequence number of the data packet 5, not the sequence number of the data packet 7.
  • the receiving device does not need to determine the next unreceived data packet, but only needs to add the sequence number of the next data packet of the latest data packet indicated by the feedback information to the feedback
  • the information is enough to reduce the workload of the receiving device, thereby helping to save the power consumption of the device.
  • LTE systems for example, can be applied to common LTE systems or Internet of Vehicles, etc., such as V2X, LTE-V, etc., or can also be applied to NR systems, such as common NR System or Internet of Vehicles, etc., such as V2X, NR-V, etc., or can also be applied to other similar communication systems or next-generation communication systems.
  • FIG. 3A is an application scenario of an embodiment of this application.
  • Figure 3A includes a network device and a terminal device.
  • the network device works in an evolved universal mobile communication system terrestrial radio access (evolved UMTS terrestrial radio access, E-UTRA) system, or works in an NR system, for example.
  • E-UTRA evolved universal mobile communication system terrestrial radio access
  • one network device can serve multiple terminal devices, and FIG. 3A only takes one terminal device as an example.
  • the network device can be used as a sending device and the terminal device can be used as a receiving device, or the network device can be used as a receiving device and the network device can be used as a sending device.
  • the network device in FIG. 3A is, for example, a base station.
  • network devices correspond to different devices in different systems.
  • they can correspond to an eNB
  • 5G system they correspond to a network device in 5G, such as gNB.
  • Figure 3A takes the network device as a base station as an example.
  • the network device may also be a device such as an RSU.
  • the technical solutions provided by the embodiments of the present application can also be applied to future mobile communication systems. Therefore, the network equipment in FIG. 3A can also correspond to the access network equipment in the future mobile communication system.
  • the terminal device in FIG. 3A uses a mobile phone as an example, which is not limited in practice.
  • FIG. 3B is another application scenario of the embodiment of this application.
  • FIG. 3B includes terminal device 1 and terminal device 2, and the two terminal devices can communicate through sidelink.
  • the two terminal devices can be within the coverage area of the same network device, or within the coverage area of different network devices, or the terminal device 1 is within the coverage area of one network device, and the terminal device 2 is not in any area.
  • Network equipment such as base station or RSU.
  • the terminal device 1 and the terminal device 2 in Fig. 3B both take a vehicle as an example, which is not limited in practice.
  • the embodiments of the present application are not limited to the communication between the network device and the terminal device, or the communication between the terminal device and the terminal device, and may also be the communication between the network device and the network device.
  • the sending device described in the embodiment of the present application may be a network device or a terminal device
  • the receiving device described in the embodiment of the present application may be a network device or a terminal device, and the combination of the types of the sending device and the receiving device is different. Do restrictions.
  • the embodiment of the present application provides a method for sending and receiving feedback information.
  • FIG. 4 is a flowchart of the method.
  • the method can be executed by two communication devices, such as a first communication device and a second communication device, where the first communication device can be a network device or can support the network device to implement the functions required by the method.
  • the communication device or the first communication device may be a terminal device or a communication device capable of supporting the terminal device to implement the functions required by the method, and of course it may also be other communication devices, such as a chip system. The same is true for the second communication device.
  • the second communication device may be a network device or a communication device capable of supporting the functions required by the network device to implement the method, or the second communication device may be a terminal device or capable of supporting the terminal device to implement the method.
  • the communication device with the required functions can of course also be other communication devices, such as a chip system.
  • the first communication device may be a network device
  • the second communication device is a terminal device, or both the first communication device and the second communication device are network devices.
  • the device, or the first communication device and the second communication device are both terminal devices, or the first communication device is a network device
  • the second communication device is a communication device capable of supporting the terminal device to implement the functions required by the method, and so on.
  • the network equipment is, for example, a base station.
  • the method is executed by the receiving device and the sending device as an example, that is to say, the first communication device is the receiving device and the second communication device is the sending device as an example, and the receiving device is a network.
  • the receiving device There is no restriction on whether the device is a terminal device, and there is no restriction on whether the sending device is a network device or a terminal device.
  • the receiving device described below may be the network device in the network architecture shown in FIG. 3A
  • the sending device described below may be the network device shown in FIG. 3A.
  • the terminal device in the network architecture described below, or the receiving device described below may be the terminal device in the network architecture shown in FIG.
  • the sending device described below may be the network in the network architecture shown in FIG. 3A. equipment.
  • the receiving device described below may be the terminal device 2 in the network architecture shown in FIG. 3B
  • the sending device described below may be The terminal device 1 in the network architecture shown in 3B.
  • the sending device and the receiving device may both be network devices, and there is no specific limitation.
  • the receiving device generates feedback information, where the feedback information includes information about data packets to be fed back in data packets not received by the receiving device, and the feedback information further includes a first field, and the first field carries The information of the sequence number (n+1), where n is the sequence number of the latest data packet among the data packets indicated by the feedback information.
  • each data packet has a corresponding number.
  • the number of a data packet can be composed of two parts, the sequence number and the superframe number.
  • the embodiment of the present application mainly focuses on the sequence number of the data packet.
  • the sending device sends data packets to the receiving device.
  • the receiving device can periodically send feedback information to the sending device. Or, if the sending device needs to receive the feedback information, it can send trigger information to the receiving device. After the receiving device receives the trigger information from the sending device , You can also send feedback information to the sending device. When the receiving device sends the feedback information to the sending device, it may be after the receiving device has received the data packet, or it may be in the process of receiving the data packet.
  • the data packet indicated by the feedback information can be understood as the feedback information including the information of these data packets.
  • the feedback information indicates the data packet 1.
  • some data packets may not have been received yet, but may be received later, or some data packets may be confirmed to have been lost (for example, they will not be received again, or even if Subsequent reception, but because the effective time window has been exceeded, the receiving device will also consider it as an invalid packet and discard it). For these two situations, they are collectively referred to as "unreceived" in the embodiments of this application.
  • the "unreceived data packet" mentioned in the embodiment of this application may include data packets that have not been received yet, and may or may not be received later, which is equivalent to a data packet with an uncertain reception status. It can include packets that are confirmed to have been lost.
  • the RLC layer or PDCP layer of the receiving device may reorder the data packets. If the receiving device needs to send feedback information, the receiving device can generate feedback information according to the reordering result. For example, the sending device sends data packet 1 to data packet 10, and the receiving device receives data packet 1, data packet 2, data packet 4, data packet 7, and data packet 10. The receiving order is: data packet 1 to data packet 4-data packet 7-data packet 2-data packet 10. At this time, the receiving device needs to send feedback information. For example, it may be that the period of sending feedback information arrives, or the trigger information from the sending device is received, and it is determined that feedback information needs to be sent .
  • the receiving device still has data packet 3, data packet 5, data packet 6, data packet 8 and data packet 9 not received. Therefore, in principle, the feedback information sent by the receiving device can indicate data packet 3, data packet 5, Data packet 6, data packet 8, and data packet 9, because data packet 1, data packet 2, data packet 4, data packet 7 and data packet 10 have been successfully received, so the receiving device does not need to indicate these successfully received data through feedback information package.
  • the receiving device may sequentially add the information of the data packet 3, the information of the data packet 5, the information of the data packet 6, the information of the data packet 8 and the information of the data packet 9 to the feedback information.
  • the amount of feedback information is limited, and it may not be able to accommodate all the information of these several data packets. For example, after the receiving device has added the information of data packet 6, the feedback information has been added, or although it has not been added, the feedback information remains The area is not enough to add the information of data packet 8, then the receiving device can stop adding, the feedback information is generated, and the feedback information indicates data packet 3, data packet 5, and data packet 6, but cannot indicate data packet 8 and data Package 9.
  • the feedback information may include information about one or more data packets, or in other words, the feedback information may indicate one or more data packets.
  • n is the sequence number of the latest data packet among the data packets indicated by the feedback information.
  • the "latest” mentioned here is the latest determined in the order of the sequence numbers of the data packets.
  • the latest data packet among the data packets indicated by the feedback information can be understood as the data packet with the largest sequence number among the data packets indicated by the feedback information.
  • the serial number of the data packet may not increase without limit, but recycle. For example, there are 1024 serial numbers in total. Then, the next data packet after data packet 1023 is not data packet 1024, but Packet 0 (or the next packet after packet 1024 is not packet 1025, but packet 1). Therefore, the latest data packet in the data packet indicated by the feedback information cannot always be It is the data packet with the largest sequence number among the data packets indicated by the feedback information.
  • the latest data packet among the data packets indicated by the feedback information should be Receive the last data packet received by the device in the data packets indicated by the feedback information.
  • the receiving device did not receive data packet 3, data packet 5, data packet 6, data packet 8, and data packet 9, and the receiving device added to the feedback information including data packet 3 information, data packet 5 information, and data packet 6 information, then the latest data packet among the data packets indicated by the feedback information is data packet 6.
  • data packet 6 For data packet 3, data packet 5, and data packet 6, if the receiving device receives in a normal order, data packet 6 should be the latest data packet received by the receiving device among these three data packets.
  • the receiving device did not receive data packet 1021, data packet 1022, data packet 1023, data packet 0, and data packet 3, and the receiving device added to the feedback information including information of data packet 1021, information of data packet 1022, and data Packet 1023 information and data packet 0 information, then the latest data packet among the data packets indicated by the feedback information is data packet 0.
  • the data packet 1021, the data packet 1022, the data packet 1023 and the data packet 0 if the receiving device receives the data packet in a normal order, then the data packet 0 should be the latest data packet received by the receiving device among the four data packets.
  • Data packet 0 is the next data packet after data packet 1023.
  • the feedback information may also include a first field, and the first field may carry information of the sequence number (n+1).
  • the first field can carry the serial number (n+1) itself, and the serial number (n+1) carried in the first field can be in binary form, or in octal form, or in other forms, Specifically related to the format of the feedback information.
  • the first field may also carry indication information, and the indication information may indicate the sequence number (n+1), which is not specifically limited.
  • the first field may be the ACK_SN field, or may also be other fields.
  • the ACK_SN field in the feedback information carries the sequence number of the next unreceived data packet by the receiving device, except for the data packet indicated by the feedback information.
  • the receiving device did not receive data packet 3, data packet 5, data packet 6, data packet 8, and data packet 9, and the receiving device added to the feedback information including data packet 3 information, data packet 5 information, and data packet 6 information, then the ACK_SN field included in the feedback information includes the sequence number of packet 8.
  • the receiving device adds the information of the data packet to the feedback information, it adds the data packet in the order of the unreceived data packet.
  • the receiving device adds the information of data packet 6, the feedback information is full, but the receiving device needs to further determine, except for data packet 3, data packet 5 and data corresponding to (or, indicated) by the feedback information Outside of packet 6, which packet is the next unreceived packet? It can be seen that a further search process is required for the receiving device, which is not conducive to saving power consumption of the device.
  • the ACK_SN field in the feedback information may carry the sequence number (n+1) information.
  • the receiving device did not receive data packet 3, data packet 5, data packet 6, data packet 8, and data packet 9, and the receiving device added to the feedback information including data packet 3 information, data packet 5 information, and data packet 6 information, then the ACK_SN field included in the feedback information includes the sequence number of packet 8.
  • the receiving device adds the information of the data packet to the feedback information, it adds the data packet in the order of the unreceived data packet.
  • the receiving device can directly add the sequence number (n+1) information in the ACK_SN field, and there is no need to search for the next unreceived data. Packets help save the power consumption of the receiving device.
  • the information of the sequence number (n+1) carried in the first field may also indicate the receiving status of the data packet with the sequence number (n+1), where the receiving status of the data packet Including successful or unreceived reception. That is to say, for the sending device, after receiving the feedback information, according to the information of the sequence number (n+1) carried in the first field, the data packet with the sequence number (n+1) can also be determined
  • the receiving state is successful or unreceived, in other words, the receiving state of the data packet with the sequence number (n+1) is considered to be a pending state.
  • the information of the sequence number (n+1) carried in the first field may not be used to indicate the reception status of the data packet with the sequence number (n+1), but only serves as marking information.
  • the feedback information may include information about the data packet to be fed back among the data packets not received by the receiving device.
  • the data packets to be fed back refer to the information of these packets waiting to be sent to the sending device through the feedback information.
  • the information of the data packet to be fed back may have never been fed back to the sending device before, or it may have been fed back to the sending device before, this time the feedback is repeated. For example, if the receiving device adds the information of data packet 3 to the feedback information, the information of data packet 3 may have never been sent to the sending device, or the feedback information sent before may already include the information of data packet 3. Adding the information of the data packet 3 to the feedback information again is a repetitive feedback, so as to improve the success rate of interpretation of the feedback information by the sending device.
  • slicing can also be performed, which can be understood as a data packet may include multiple sub-data packets. Then, when the receiving device is receiving, it may not receive the entire data packet, or it may just not receive some sub-data packets in a data packet, and the remaining part of the sub-data packets may be received successfully. For these two different situations, the information of the data packet included in the feedback information may also be different.
  • the feedback information may include the sequence number of the first data packet to be fed back in the data packets not received by the receiving device; or, the second data packet to be fed back in the data packets not received by the receiving device The sequence number of and the start position information and end position information of the unreceived sub-data packets in the second data packet; or, including the sequence number of the first data packet to be fed back in the data packets not received by the receiving device, and , The sequence number of the second data packet to be fed back in the data packet not received by the receiving device, and the start position information and the end position information of the unreceived sub-data packet in the second data packet.
  • the receiving device does not receive the first data packet as a whole, and if the first data packet also includes multiple sub-data packets, the receiving device does not receive all the sub-data packets included in the first data packet. Therefore, the information of the first data packet added by the receiving device to the feedback information only needs to include the serial number of the first data packet, and the serial number of the first data packet can indicate the first data packet.
  • the receiving device has successfully received part of the sub-data packets included in the second data packet, and the receiving device has not received the remaining sub-data packets included in the second data packet. Therefore, the information of the second data packet added by the receiving device to the feedback information may include the sequence number of the second data packet, and the start position information and end position information of the unreceived sub-data packets in the second data packet.
  • the sending device can determine the second data packet according to the sequence number of the second data packet, and can determine whether it is in the second data packet according to the start position information and end position information of the unreceived sub-data packets in the second data packet. Which sub-data packets are not received, so that the sending device can only retransmit these sub-data packets. For example, if the unreceived sub-data packet in the second data packet is sub-data packet 1, the receiving device can add the sequence number of the second data packet, and the start position information and end position information of sub-data packet 1 to the feedback Information.
  • the receiving device may determine the sub-data packet according to the receiving situation of the data packet.
  • Figure 5 is a schematic diagram of a data packet.
  • the part marked "1" in FIG. 5 represents the part of the data packet that the receiving device successfully received, and the part marked "0" represents the part of the data packet that the receiving device did not receive.
  • the unreceived part of the receiving device is continuous, and there is no discontinuous area. Therefore, the receiving device can regard the unreceived part as a sub-data packet, which is equivalent to 1 sub-data packet of the receiving device. receive.
  • Figure 6 is a schematic diagram of a data packet.
  • the part marked "1" in FIG. 6 represents the part of the data packet that the receiving device successfully received, and the part marked "0" represents the part of the data packet that the receiving device did not receive.
  • the part that is not received by the receiving device is discontinuous, that is, in Figure 6, there are two discontinuous parts that are not received.
  • the receiving device can regard the two parts that have not been received as one sub-data packet, which is equivalent to that the receiving device has not received two sub-data packets.
  • the sizes of the two unreceived sub-data packets are different.
  • the size of the unreceived sub-data packets may also be the same, which is related to the size of the specific unreceived part.
  • the information of the second data packet added by the receiving device to the feedback information may include the sequence number of the second data packet and the sub-data packet.
  • the start position information and end position information of the data packet For example, for the data packet shown in FIG. 5, the information of the data packet added by the receiving device to the feedback information includes the number of the data packet, and the start position information and end position information of the part marked "1".
  • the information of the second data packet added by the receiving device to the feedback information may include the sequence number of the second data packet, and Including the start position information and end position information of each sub-data packet.
  • the second data packet contains multiple non-contiguous sub-data packets that have not been received, then in the feedback information, each sub-data packet of the multiple non-contiguous sub-data packets that have not been received can be assigned by the second The sequence number of the data packet and the start position information and end position information of each sub-data packet are indicated.
  • the information of the data packet added by the receiving device to the feedback information includes the number of the data packet and the respective start positions of the two parts marked as "1". Information and ending position information.
  • FIG. 7 is a schematic diagram of the format of feedback information generated by RLC, or a schematic diagram of RLC PDU carrying feedback information.
  • Fig. 7 takes the receiving device to add the information of the first data packet and the information of the second data packet to the feedback information, and the receiving device does not receive the first data packet as a whole, and for the second data packet, some sub-data packets have not been received. example.
  • the first data packet should be received before the second data packet (of course, the actual receiving order may not necessarily be the case, and this is just to describe the normal order of the data packets).
  • the top segment in Figure 7 represents a bit, and a small cell represents a bit. It can be seen that the RLC PDU is in an octal format, so a row includes 8 bits.
  • D/C in FIG. 7 represents data (data, D)/control (control, C), and CPT represents control PDU type (control PDU type).
  • ACK_SN in Figure 7 (represented as the confirmation response sequence number field in Figure 7) represents the first field. Because the row in Figure 7 has only 8 bits, the remaining space in the first row is not enough to carry the ACK_SN field, so The beginning of the second row in FIG. 7 also includes ACK_SN.
  • the ACK_SN in the first row and the ACK_SN in the second row in FIG. 7 indicate the same field.
  • E1 and E2 can be regarded as intervals.
  • ACK_SN can carry the information of the sequence number (n+1). If the feedback information only includes the information of the first data packet and the information of the second data packet, then n can be the sequence number of the second data packet, and if the feedback information In addition to the information of the first data packet and the information of the second data packet, it also includes other data packet information, so n is the sequence number of the latest data packet in the data packet indicated by the feedback information.
  • the blank area after E1 in the second row of FIG. 7 may be a NACK_SN field (represented as a negative acknowledgement sequence number field in FIG. 7).
  • the NACK_SN field is called the first NACK_SN field.
  • the blank area before E1 in the third row can be the first NACK_SN field.
  • a NACK_SN field can be used to carry the sequence number of a data packet. Because the receiving device sequentially adds the information of the unreceived data packets to the feedback information, the first NACK_SN field may carry the sequence number of the first data packet.
  • the receiving device did not receive the first data packet as a whole, it only needs to add the sequence number of the first data packet, and there is no need to add the location information of the sub-data packets of the first data packet, so it can be seen in Figure 7, After the end of the first NACK_SN field, there is an interval of E1 and E2, and then the next NACK_SN field starts, indicating that the receiving device has not added the location information of the sub-data packet of the first data packet.
  • an interval of E1 and E2 starts the next NACK_SN field for example, the NACK_SN field is called the second NACK_SN field.
  • E1 in the fifth row it is the second NACK_SN field.
  • the second NACK_SN field may carry the sequence number of the second data packet. Because the receiving device has not received part of the sub-data packets of the second data packet, the information of the second data packet added by the receiving device to the feedback information needs to include the second data packet's serial number in addition to the second data packet. The start position information and end position information of the unreceived sub-data packets in the data packet.
  • the blank area after E2 in the fifth row, the blank area in the sixth row, and the SOend in the seventh row are all SOstart fields (in Figure 7, The SOstart field is called the starting position information field), and one SOstart field is used to carry one starting position information. After the SOstart field, there is the SOend field, and a SOend field is used to carry end position information.
  • the receiving device can add the starting position information of the sub-data packet to the fifth line
  • the SOstart field constituted by the blank area after E2, the sixth row, and the blank area before SOend on the seventh row, and the end position information of the sub-packet is added to the blank area after SOstart on the seventh row, and the eighth row ,
  • the SOend field formed by the blank area before the NACK_SN field in the ninth row In the NACK_SN field of the ninth row (for example, referred to as the third NACK_SN field), the receiving device can continue to sequentially add sequence numbers of other unreceived data packets to be fed back, and the adding method is as described above.
  • the receiving device can send multiple discontinuous sub-data
  • the start position information of the first sub-packet in the packet is added to the SOstart field formed by the blank area after E2 in the fifth row, the sixth row, and the blank area before SOend in the seventh row, and the sub-data packet
  • the end position information of is added to the SOend field formed by the blank area after SOstart on the seventh row, the eighth row, and the blank area before the NACK_SN field on the ninth row.
  • the receiving device can add the sequence number of the second data packet.
  • FIG. 7 is an example where the feedback information includes not only the information of the data packet with only the serial number, but also the information of the data packet with the serial number and location information.
  • the feedback information may only include the sequence number of the data packet, but not the location information of the data packet.
  • the receiving device adds to the feedback information is the information of data packet 1 and the information of data packet 2, and the receiving device does not receive both data packet 1 and data packet 2, so the feedback information can only include the serial number of data packet 1. And the serial number of packet 2.
  • the feedback information may only include the information of the data packet with the serial number and location information.
  • the receiving device adds to the feedback information is the information of data packet 1 and the information of data packet 2, and the receiving device has not received some sub-data packets for both data packet 1 and data packet 2, so the data packet included in the feedback information
  • the information of 1 can include the sequence number of data packet 1, and the start position information and end position information of the unreceived sub-data packets in data packet 1.
  • the information of data packet 2 included in the feedback information can include The sequence number of data packet 2, and the start position information and end position information of the unreceived sub-data packets in data packet 2.
  • the information of the data packet included in the feedback information, what content is included, is related to the receiving device's reception of the data packet, and there is no specific limitation.
  • the receiving device sends the feedback information to the sending device, and the sending device receives the feedback information from the receiving device.
  • the receiving device After the receiving device generates the feedback information, it may send the feedback information to the sending device, so that the sending device obtains the feedback information.
  • the sending device determines information about the data packet to be fed back in the data packet not received by the receiving device according to the feedback information, and the feedback information further includes a first field, and the first field carries a sequence number (n+ 1) information, n is the sequence number of the latest data packet among the data packets indicated by the feedback information.
  • the sending device can determine the sequence number of the first data packet to be fed back in the data packets not received by the receiving device; or determine the sequence of the second data packet to be fed back in the data packets not received by the receiving device Number, and the start position information and end position information of the unreceived sub-data packets in the second data packet; or, determine the sequence number of the first data packet to be fed back in the data packets not received by the receiving device, and receive The sequence number of the second data packet to be fed back in the data packet not received by the device, and the start position information and the end position information of the unreceived sub-data packet in the second data packet.
  • the sending device can determine that these data packets are not received by the receiving device based on the information of the data packets included in the feedback information, so that the sending device can determine whether to retransmit these data packets. For example, for a data packet whose feedback information only includes a sequence number, the sending device can determine that the receiving device has not received the data packet as a whole, and if retransmission is required, the sending device can retransmit the data packet as a whole; and the feedback information includes With the serial number and location information of the data packet, the sending device can determine that the receiving device has not received the part indicated by the location information in the data packet. If retransmission is required, the sending device can only retransmit the unreceived sub-data packet , Without retransmitting the entire data packet, thereby saving transmission resources.
  • the feedback information can be generated by the baseband chip of the terminal device, and the feedback information sent in S43 can refer to the signal sent through the antenna of the terminal device that has undergone processing such as modulation and coding, or
  • the feedback information may also be a digital signal sent by the baseband chip of the terminal device to the radio frequency chip through the interface with the radio frequency chip of the terminal device.
  • the feedback information is generated by the base station, for example, generated by one or some processing components of the base station, for example, may be generated by one or more chips in the base station.
  • the feedback information sent in S43 may refer to the signal sent through the antenna of the base station that has been processed by modulation and coding, or the feedback information may also be a component of the base station used to generate feedback information through radio frequency processing with the base station.
  • the interface between the components sends the digital signal to the radio frequency processing component.
  • the first field included in the feedback information carries information of the sequence number (n+1), and n is the sequence number of the latest data packet among the data packets indicated by the feedback information.
  • the receiving device does not need to determine which is the next unreceived data packet of the receiving device, except for the data packet indicated by the feedback information, but only needs to determine the latest data packet indicated by the feedback information.
  • the sequence number of the next data packet of the data packet can be added to the feedback information, which reduces the workload of the receiving device, thereby helping to save the power consumption of the device.
  • FIG. 8 is a schematic block diagram of a communication device 800 according to an embodiment of the application.
  • the communication device 800 is a receiving device 800, for example.
  • the receiving device 800 may be a terminal device, a network device, or a module used to complete the function of the receiving device, such as a chip system.
  • the receiving device 800 includes a processing module 810 and a transceiver module 820.
  • the processing module 810 may be used to perform all operations other than the transceiving operation performed by the receiving device in the embodiment shown in FIG. 4, such as S41, and/or other processes used to support the technology described herein.
  • the transceiver module 820 can be used to perform all the transceiver operations performed by the receiving device in the embodiment shown in FIG. 4, such as S42 in the embodiment shown in FIG. 4, and/or other technologies used to support the technology described herein. process.
  • the processing module 810 is configured to generate feedback information, where the feedback information includes information about a data packet to be fed back in a data packet not received by the receiving device 800, and the feedback information further includes a first field, the first field Carry the information of the sequence number (n+1), where n is the sequence number of the latest data packet among the data packets indicated by the feedback information;
  • the transceiver module 820 is configured to send the feedback information to the sending device.
  • the first field is a confirmation response sequence number field. That is, the first field is the ACK_SN field.
  • the feedback information includes information about data packets to be fed back in data packets not received by the receiving device 800, including:
  • the feedback information includes the sequence number of the first data packet to be fed back in the data packets not received by the receiving device 800; or,
  • the feedback information includes the sequence number of the second data packet to be fed back in the data packets not received by the receiving device 800, and the start position information and the end position information of the unreceived sub-data packets in the second data packet; or,
  • the feedback information includes the sequence number of the first data packet to be fed back in the data packets not received by the receiving device 800 and the sequence number of the second data packet to be fed back in the data packets not received by the receiving device 800, And start position information and end position information of the unreceived sub-data packets in the second data packet.
  • the second data packet includes a plurality of unreceived discontinuous sub-data packets, and each sub-data packet of the plurality of unreceived discontinuous sub-data packets is composed of the sequence number of the second data packet and each sub-data packet.
  • the start position information and end position information of the data packet are indicated.
  • the unreceived sub-data packet is a plurality of discontinuous sub-data packets
  • the start position information includes the start of each sub-data packet in the unreceived sub-data packet Location information, where the end location information includes the end location information of each sub-data packet in the unreceived sub-data packet.
  • the information of the sequence number (n+1) is used to indicate the receiving status of the data packet with the sequence number (n+1), where the receiving status of the data packet includes receiving success or failure receive.
  • processing module 810 in the embodiment of the present application may be implemented by a processor or processor-related circuit components
  • transceiver module 820 may be implemented by a transceiver or transceiver-related circuit components.
  • an embodiment of the present application also provides a communication device 900.
  • the communication device 900 is a receiving device 900, for example.
  • the receiving device 900 may be a terminal device, a network device, or a module for completing the function of the receiving device, such as a chip system.
  • the receiving device 900 includes a processor 910, a memory 920, and a transceiver 930.
  • the memory 920 stores instructions or programs
  • the processor 910 is configured to execute instructions or programs stored in the memory 920.
  • the processor 910 is configured to perform the operations performed by the processing module 810 in the foregoing embodiment
  • the transceiver 930 is configured to perform the operations performed by the transceiver module 820 in the foregoing embodiment.
  • the receiving device 800 or the receiving device 900 may correspond to the receiving device in the embodiment shown in FIG. 4, and the operation and/or function of each module in the receiving device 800 or the receiving device 900 are respectively In order to implement the corresponding process in the embodiment shown in FIG. 4, for the sake of brevity, details are not described herein again.
  • FIG. 10 is a schematic block diagram of a communication device 1000 according to an embodiment of the application.
  • the communication device 1000 is, for example, the sending device 1000.
  • the sending device 1000 may be a terminal device, a network device, or a module used to complete the function of the sending device, such as a chip system.
  • the sending device 1000 includes a processing module 1010 and a transceiver module 1020.
  • the processing module 1010 may be used to perform all operations other than the transceiving operation performed by the sending device in the embodiment shown in FIG. 4, such as S43, and/or other processes used to support the technology described herein.
  • the transceiving module 1020 can be used to perform all the transceiving operations performed by the transmitting device in the embodiment shown in FIG. 4, such as S42 in the embodiment shown in FIG. 4, and/or other technologies that support the technology described herein. process.
  • the transceiver module 1020 is used to receive feedback information from the receiving device
  • the processing module 1010 is configured to determine, according to the feedback information, information about the data packet to be fed back in the data packet not received by the receiving device, and the feedback information further includes a first field, and the first field carries a sequence Number (n+1) of information, where n is the sequence number of the latest data packet among the data packets indicated by the feedback information.
  • the first field is a confirmation response sequence number field. That is, the first field is the ACK_SN field.
  • the processing module 1010 is configured to determine, according to the feedback information, the information of the data packet to be fed back among the data packets not received by the receiving device in the following manner:
  • the second data packet includes a plurality of unreceived discontinuous sub-data packets, and each sub-data packet of the plurality of unreceived discontinuous sub-data packets consists of the second data The sequence number of the packet and the start position information and end position information of each sub-data packet are indicated.
  • the unreceived sub-data packet is a plurality of discontinuous sub-data packets
  • the start position information includes the start of each sub-data packet in the unreceived sub-data packet Location information, where the end location information includes the end location information of each sub-data packet in the unreceived sub-data packet.
  • the information of the sequence number (n+1) is used to indicate the receiving status of the data packet with the sequence number (n+1), where the receiving status of the data packet includes receiving success or failure receive.
  • processing module 1010 in the embodiment of the present application may be implemented by a processor or processor-related circuit components
  • transceiver module 1020 may be implemented by a transceiver or transceiver-related circuit components.
  • an embodiment of the present application also provides a communication device 1100.
  • the communication device 1100 is, for example, a sending device 1100.
  • the sending device 1100 may be a terminal device, a network device, or a module for completing the function of the sending device.
  • the sending device 1100 includes a processor 1110, a memory 1120, and a transceiver 1130.
  • the memory 1120 stores instructions or
  • the processor 1110 is configured to execute instructions or programs stored in the memory 1120.
  • the processor 1110 is used to perform the operations performed by the processing module 1010 in the foregoing embodiment
  • the transceiver 1030 is used to perform the operations performed by the transceiver module 1020 in the foregoing embodiment.
  • the sending device 1000 or the sending device 1100 may correspond to the sending device in the embodiment shown in FIG. 4, and the operations and/or functions of each module in the sending device 1000 or the sending device 1100 are respectively In order to implement the corresponding process in the embodiment shown in FIG. 4, for the sake of brevity, details are not described here.
  • the embodiment of the present application also provides a communication device, which may be a terminal device or a circuit.
  • the communication device may be used to perform the actions performed by the sending device or the receiving device in the method embodiment shown in FIG. 4 above. It can be understood that, when the sending device in the embodiment shown in FIG. 4 is a terminal device or a circuit, one way is to be implemented by the communication device. When the receiving device in the embodiment shown in FIG. 4 is a terminal device or a circuit, one way is to be implemented by the communication device.
  • FIG. 12 shows a simplified structural diagram of the terminal device. It is easy to understand and easy to illustrate.
  • the terminal device uses a mobile phone as an example.
  • the terminal equipment includes a processor, a memory, a radio frequency circuit, an antenna, and an input and output device.
  • the processor is mainly used to process the communication protocol and communication data, and to control the terminal device, execute the software program, and process the data of the software program.
  • the memory is mainly used to store software programs and data.
  • the radio frequency circuit is mainly used for the conversion of baseband signal and radio frequency signal and the processing of radio frequency signal.
  • the antenna is mainly used to send and receive radio frequency signals in the form of electromagnetic waves.
  • Input and output devices such as touch screens, display screens, and keyboards, are mainly used to receive data input by users and output data to users. It should be noted that some types of terminal devices may not have input and output devices.
  • the processor When data needs to be sent, the processor performs baseband processing on the data to be sent, and outputs the baseband signal to the radio frequency circuit.
  • the radio frequency circuit performs radio frequency processing on the baseband signal and sends the radio frequency signal to the outside in the form of electromagnetic waves through the antenna.
  • the feedback information described in the embodiment of the present application may refer to the baseband signal output by the processor to the radio frequency circuit, or may also refer to the signal sent out by the radio frequency circuit through an antenna.
  • the radio frequency circuit receives the radio frequency signal through the antenna, converts the radio frequency signal into a baseband signal, and outputs the baseband signal to the processor, and the processor converts the baseband signal into data and processes the data.
  • FIG. 12 For ease of description, only one memory and processor are shown in FIG. 12. In actual terminal equipment products, there may be one or more processors and one or more memories.
  • the memory may also be referred to as a storage medium or storage device.
  • the memory may be set independently of the processor, or may be integrated with the processor, which is not limited in the embodiment of the present application.
  • the antenna and radio frequency circuit with the transceiver function can be regarded as the transceiver unit of the terminal device, and the processor with the processing function can be regarded as the processing unit of the terminal device.
  • the terminal device includes a transceiver unit 1210 and a processing unit 1220.
  • the transceiver unit may also be referred to as a transceiver, a transceiver, a transceiver, and so on.
  • the processing unit may also be called a processor, a processing board, a processing module, a processing device, and so on.
  • the device for implementing the receiving function in the transceiver unit 1210 can be regarded as the receiving unit, and the device for implementing the sending function in the transceiver unit 1210 as the sending unit, that is, the transceiver unit 1210 includes a receiving unit and a sending unit.
  • the transceiver unit may sometimes be called a transceiver, a transceiver, or a transceiver circuit.
  • the receiving unit may sometimes be called a receiver, receiver, or receiving circuit.
  • the transmitting unit may sometimes be called a transmitter, a transmitter, or a transmitting circuit.
  • transceiving unit 1210 is used to perform the sending and receiving operations on the receiving device side in the method embodiment shown in FIG. 4, and the processing unit 1220 is used to perform the receiving device side in the method embodiment shown in FIG. Operations other than operations.
  • the transceiving unit 1210 is used to perform the transceiving steps on the receiving device side in the embodiment shown in FIG. 4, such as S42, and/or other processes used to support the technology described herein.
  • the processing unit 1220 is configured to perform other operations on the receiving device side in the embodiment shown in FIG. 4 besides the transceiving operation, such as S41, and/or other processes for supporting the technology described herein.
  • the transceiving unit 1210 is configured to perform the transmitting and receiving operations on the transmitting device side in the method embodiment shown in FIG. 4, and the processing unit 1220 is configured to perform the transmitting and receiving operations on the transmitting device side in the method embodiment shown in FIG. Other operations.
  • the transceiving unit 1210 is used to perform the transceiving steps on the transmitting device side in the embodiment shown in FIG. 4, such as S42, and/or other processes used to support the technology described herein.
  • the processing unit 1220 is configured to perform other operations on the sending device side in the embodiment shown in FIG. 4 besides the transceiving operation, such as S43, and/or other processes for supporting the technology described herein.
  • the chip When the communication device is a chip, the chip includes a transceiver unit and a processing unit.
  • the transceiver unit may be an input/output circuit or a communication interface;
  • the processing unit is a processor, microprocessor, or integrated circuit integrated on the chip.
  • the device shown in FIG. 13 can be referred to.
  • the device can perform functions similar to the processor 1310 in FIG. 13.
  • the device includes a processor 1310, a data sending processor 1320, and a data receiving processor 1330.
  • the processing module 810 in the foregoing embodiment may be the processor 1310 in FIG. 13 and complete corresponding functions; the transceiving module 820 in the foregoing embodiment may be the sending data processor 1320 in FIG. 13 and/or receiving data The processor 1330.
  • the processing module 1010 in the foregoing embodiment may be the processor 1310 in FIG. 13 and complete corresponding functions; the transceiver module 1020 in the foregoing embodiment may be the sending data processor 1320 in FIG. 13, and/or Receive data processor 1330.
  • channel encoder and a channel decoder are shown in FIG. 13, it can be understood that these modules do not constitute a restrictive description of this embodiment, and are only illustrative.
  • the processing device 1400 includes modules such as a modulation subsystem, a central processing subsystem, and a peripheral subsystem.
  • the communication device in this embodiment can be used as a modulation subsystem therein.
  • the modulation subsystem may include a processor 1403 and an interface 1404.
  • the processor 1403 completes the function of the aforementioned processing module 810
  • the interface 1404 completes the function of the aforementioned transceiver module 820.
  • the processor 1403 completes the function of the aforementioned processing module 1010
  • the interface 1404 completes the function of the aforementioned transceiver module 1020.
  • the modulation subsystem includes a memory 1406, a processor 1403, and a program stored in the memory 1406 and running on the processor.
  • the processor 1403 implements the method shown in FIG. 4 when executing the program. In the example, the method on the sending device side or the receiving device side.
  • the memory 1406 can be non-volatile or volatile, and its location can be located inside the modulation subsystem or in the processing device 1400, as long as the memory 1406 can be connected to the The processor 1403 is sufficient.
  • the embodiment of the present application also provides a computer-readable storage medium on which a computer program is stored.
  • the program When the program is executed by a processor, it can implement the process related to the receiving device in the embodiment shown in FIG. 4 provided by the above method embodiment. .
  • the embodiment of the present application also provides a computer-readable storage medium on which a computer program is stored.
  • the program can realize the process related to the sending device in the embodiment shown in FIG. 4 provided by the foregoing method embodiment. .
  • the embodiment of the present application also provides a computer program product containing instructions, which when executed, execute the method on the receiving device side in the method embodiment shown in FIG. 4.
  • the embodiment of the present application also provides a computer program product containing instructions, which when executed, execute the method on the sending device side in the method embodiment shown in FIG. 4.
  • processors mentioned in the embodiments of this application may be a central processing unit (CPU), or may be other general-purpose processors, digital signal processors (DSP), or application specific integrated circuits ( application specific integrated circuit (ASIC), ready-made programmable gate array (field programmable gate array, FPGA) or other programmable logic devices, discrete gates or transistor logic devices, discrete hardware components, etc.
  • the general-purpose processor may be a microprocessor or the processor may also be any conventional processor or the like.
  • the memory mentioned in the embodiments of the present application may be a volatile memory or a non-volatile memory, or may include both volatile and non-volatile memory.
  • the non-volatile memory can be read-only memory (ROM), programmable read-only memory (programmable ROM, PROM), erasable programmable read-only memory (erasable PROM, EPROM), and electronic Erase programmable read-only memory (electrically EPROM, EEPROM) or flash memory.
  • the volatile memory may be random access memory (RAM), which is used as an external cache.
  • RAM random access memory
  • static random access memory static random access memory
  • dynamic RAM dynamic random access memory
  • synchronous dynamic random access memory synchronous DRAM, SDRAM
  • double data rate synchronous dynamic random access memory double data rate SDRAM, DDR SDRAM
  • enhanced synchronous dynamic random access memory enhanced SDRAM, ESDRAM
  • synchronous connection dynamic random access memory serial DRAM, SLDRAM
  • direct rambus RAM direct rambus RAM, DR RAM
  • the processor is a general-purpose processor, DSP, ASIC, FPGA or other programmable logic device, discrete gate or transistor logic device, or discrete hardware component
  • the memory storage module
  • the size of the sequence number of the above-mentioned processes does not mean the order of execution, and the execution order of each process should be determined by its function and internal logic, rather than corresponding to the embodiments of the present application.
  • the implementation process constitutes any limitation.
  • the disclosed system, device, and method may be implemented in other ways.
  • the device embodiments described above are only illustrative.
  • the division of the units is only a logical function division, and there may be other divisions in actual implementation, for example, multiple units or components can be combined or It can be integrated into another system, or some features can be ignored or not implemented.
  • the displayed or discussed mutual coupling or direct coupling or communication connection may be indirect coupling or communication connection through some interfaces, devices or units, and may be in electrical, mechanical or other forms.
  • the units described as separate components may or may not be physically separated, and the components displayed as units may or may not be physical units, that is, they may be located in one place, or they may be distributed on multiple network units. Some or all of the units may be selected according to actual needs to achieve the objectives of the solutions of the embodiments.
  • each unit in each embodiment of the present application may be integrated into one processing unit, or each unit may exist alone physically, or two or more units may be integrated into one unit.
  • the function 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.
  • the technical solution of this application essentially or the part that contributes to the existing technology or the part of the technical solution can be embodied in the form of a software product, and the computer software product is stored in a storage medium, including Several instructions are used to make a computer device (which may be a personal computer, a server, or a network device, etc.) execute all or part of the steps of the method described in each embodiment of the present application.
  • the aforementioned storage media include: U disk, mobile hard disk, read-only memory (read-only memory, ROM), random access memory (random access memory, RAM), magnetic disk or optical disk and other media that can store program code .

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

本申请涉及一种发送、接收反馈信息的方法及设备,其中的发送方法包括:接收设备生成反馈信息,反馈信息包括接收设备未接收的数据包中的待反馈的数据包的信息,以及,反馈信息还包括第一字段,第一字段承载序列号(n+1)的信息,n为反馈信息所指示的数据包中的最晚的数据包的序列号;接收设备向发送设备发送反馈信息。反馈信息所包括的第一字段承载的是序列号(n+1)的信息,从而接收设备无需确定除了反馈信息所指示的数据包之外的下一个未接收的数据包究竟是哪个,而只需将反馈信息所指示的数据包中的最晚的数据包的下一个数据包的序列号添加到反馈信息即可,减少接收设备的工作量,从而有助于节省设备的功耗。

Description

一种发送、接收反馈信息的方法及设备 技术领域
本申请涉及通信技术领域,尤其涉及一种发送、接收反馈信息的方法及设备。
背景技术
目前,接收端设备在接收数据包后,会向发送端设备发送反馈信息,如果数据包接收成功,则可以不必反馈,而如果数据包接收失败或暂时未接收到,则可以将接收失败或未接收的数据包的信息通过反馈信息发送给发送端设备,发送端设备接收反馈信息后,可以重传这些数据包。
在反馈信息中,包括确认应答(ACK)_序列号(sequence number,SN)这个字段,该字段承载的是接收端设备下一个未接收的数据包的序列号。例如,接收端设备未接收的数据包为数据包1、数据包2、数据包4和数据包7,而数据包3、数据包5和数据包6都接收成功。如果接收端设备需要发送反馈信息,那么接收端设备可以将数据包1、数据包2、数据包4和数据包7的信息均添加到反馈信息中。但反馈信息的容量有限,可能无法容纳数据包1、数据包2、数据包4和数据包7的信息。那么接收端设备就按数据包的序列号的顺序将数据包1、数据包2、数据包4和数据包7的信息添加到反馈信息中,例如在添加完毕数据包4的信息后,反馈信息已经无法再容纳更多的信息,因此数据包7的信息无法添加到该反馈信息中。那么在该反馈信息的ACK_SN字段,填写的就是数据包7的序列号,例如为7。
在这种方式下,接收端设备虽然无法将数据包7的信息添加到反馈信息中,但是接收端设备还需要确定,除了反馈信息所对应的这些数据包之外,下一个未接收的数据包究竟是哪个数据包。可见,对于接收端设备来说还需要进一步的查找过程,不利于节省功耗。
发明内容
本申请实施例提供一种发送、接收反馈信息的方法及设备,用于节省设备的功耗。
第一方面,提供一种发送反馈信息的方法,该方法包括:接收设备生成反馈信息,所述反馈信息包括所述接收设备未接收的数据包中的待反馈的数据包的信息,以及,所述反馈信息还包括第一字段,所述第一字段承载序列号(n+1)的信息,n为所述反馈信息所指示的数据包中的最晚的数据包的序列号。所述接收设备向发送设备发送所述反馈信息。
该方法可由第一通信装置执行,第一通信装置可以是通信设备或能够支持通信设备实现该方法所需的功能的通信装置,例如芯片系统。示例性地,所述通信设备为接收设备。示例性地,所述接收设备可以是终端设备,也可以是网络设备。
在本申请实施例中,反馈信息所包括的第一字段承载的是序列号(n+1)的信息,而n是反馈信息所指示的数据包中的最晚的数据包的序列号。例如,接收设备未接收的数据包为数据包1、数据包2、数据包4和数据包7,而数据包3、数据包5和数据包6都接收成功,而因为反馈信息的容量有限,因此接收设备只能将数据包1、数据包2和数据包4的信息添加到反馈信息中,而数据包7的信息无法添加到反馈信息中。那么该反馈信息的第一字段承载的是数据包5的序列号的信息,而并不是数据包7的序列号。在这种方式下,接收设备无需确定下一个未接收的数据包究竟是哪个,而只需将反馈信息所指示的数据包中的最晚的数据包的下一个数据包的序列号添加到反馈信息即可,减少接收设备的工作量,从而有助于节省设备的功耗。
结合第一方面,在第一方面的第一种可能的实施方式中,所述第一字段为确认应答序列号字段。
也就是说,第一字段可以是ACK_SN字段。当然本申请实施例并不限制第一字段的实现方式,第一字段也可以是其他的已有的字段,或者是新增的字段等。
结合第一方面或第一方面的第一种可能的实施方式,在第一方面的第二种可能的实施方式中,所述反馈信息包括所述接收设备未接收的数据包中的待反馈的数据包的信息,可以包括如下三种情况中的一种:
所述反馈信息包括所述接收设备未接收的数据包中的待反馈的第一数据包的序列号;或,
所述反馈信息包括所述接收设备未接收的数据包中的待反馈的第二数据包的序列号,以及所述第二数据包内未接收的子数据包的起始位置信息和结束位置信息;或,
所述反馈信息包括所述接收设备未接收的数据包中的待反馈的第一数据包的序列号,以及,包括所述接收设备未接收的数据包中的待反馈的第二数据包的序列号,和所述第二数据包内未接收的子数据包的起始位置信息和结束位置信息。
一个数据包的容量可能比较大,接收设备在接收数据包时,可能对一个数据包整体接收成功,或整体接收失败,或者也有可能对数据包的部分内容接收成功,而对剩余的部分内容接收失败。那么,如果接收设备对一个数据包整体接收失败,则接收设备在反馈信息中只需添加该数据包的序列号即可,通过序列号就能指示该数据包。或者,如果接收设备对一个数据包的部分内容接收成功,而剩余的部分内容接收失败,那么接收设备可以在反馈信息中添加该数据包的序列号,以及添加接收失败的部分的位置信息(起始位置信息和结束位置信息),从而使得发送设备明确接收设备接收失败的到底是该数据包的哪部分,指示较为清楚。
结合第一方面的第二种可能的实施方式,在第一方面的第三种可能的实施方式中,所述第二数据包中包含未接收的多个不连续子数据包,所述未接收的多个不连续子数据包中的每个子数据包由第二数据包的序列号和所述每个子数据包的起始位置信息和结束位置信息指示。
结合第一方面的第二种可能的实施方式,在第一方面的第四种可能的实施方式中,所述未接收的子数据包为不连续的多个子数据包,所述起始位置信息包括所述未接收的子数据包中的每个子数据包的起始位置信息,所述结束位置信息包括所述未接收的子数据包中的每个子数据包的结束位置信息。
如果接收设备对于第二数据包,是未接收第二数据包中的多个不连续的部分(每个部分视为一个子数据包),那么接收设备可以将未接收的每个部分的起始位置信息和结束位置信息都添加到反馈信息中,从而使得发送设备能够较为明确地确定接收设备究竟对于第二数据包的哪些内容未能接收。
结合第一方面或第一方面的第一种可能的实施方式至第一方面的第四种可能的实施方式中的任一种可能的实施方式,在第一方面的第五种可能的实施方式中,所述序列号(n+1)的信息用于指示序列号为(n+1)的数据包的接收状态,其中,数据包的接收状态包括接收成功或未接收。
第一字段所包括的序列号(n+1)可以用于指示序列号为(n+1)的数据包的接收状态,从而发送设备可以根据第一字段确定序列号为(n+1)的数据包的接收状态为接收成功或未接收。或者,第一字段所包括的序列号(n+1)也可以并不指示数据包的接收状态,发送设备并不根据第一字段包括的序列号(n+1)确定序列号为(n+1)的数据包的接收状态。具体的不做限制。
第二方面,提供一种接收反馈信息的方法,该方法包括:发送设备接收来自接收设备的反馈信息;所述发送设备根据所述反馈信息确定所述接收设备未接收的数据包中的待反馈的数据包的信息,以及,所述反馈信息还包括第一字段,所述第一字段承载序列号(n+1)的信息,n为所述反馈信息所指示的数据包中的最晚的数据包的序列号。
该方法可由第二通信装置执行,第一通信装置可以是通信设备或能够支持通信设备实现该方法所需的功能的通信装置,例如芯片系统。示例性地,所述通信设备为发送设备。示例性地,所述发送设备可以是终端设备,也可以是网络设备。
结合第二方面,在第二方面的第一种可能的实施方式中,所述第一字段为确认应答序列号字段。
结合第二方面或第二方面的第一种可能的实施方式,在第二方面的第二种可能的实施方式中,所述发送设备根据所述反馈信息确定所述接收设备未接收的数据包中的待反馈的数据包的信息,包括如下的一种:
所述发送设备根据所述反馈信息确定所述接收设备未接收的数据包中的待反馈的第一数据包的序列号;或,
所述发送设备根据所述反馈信息确定所述接收设备未接收的数据包中的待反馈的第二数据包的序列号,以及所述第二数据包内未接收的子数据包的起始位置信息和结束位置信息;或,
所述发送设备根据所述反馈信息确定所述接收设备未接收的数据包中的待反馈的第一数据包的序列号,以及,包括所述接收设备未接收的数据包中的待反馈的第二数据包的序列号,和所述第二数据包内未接收的子数据包的起始位置信息和结束位置信息。
结合第二方面的第二种可能的实施方式,在第二方面的第三种可能的实施方式中,所述第二数据包中包含未接收的多个不连续子数据包,所述未接收的多个不连续子数据包中的每个子数据包由第二数据包的序列号和所述每个子数据包的起始位置信息和结束位置信息指示。
结合第二方面的第二种可能的实施方式,在第二方面的第四种可能的实施方式中,所述未接收的子数据包为不连续的多个子数据包,所述起始位置信息包括所述未接收的子数据包中的每个子数据包的起始位置信息,所述结束位置信息包括所述未接收的子数据包中的每个子数据包的结束位置信息。
结合第二方面或第二方面的第一种可能的实施方式至第二方面的第四种可能的实施方式中的任一种可能的实施方式,在第二方面的第五种可能的实施方式中,所述序列号(n+1)的信息用于指示序列号为(n+1)的数据包的接收状态,其中,数据包的接收状态包括接收成功或未接收。
关于第二方面或第二方面的各种可能的实施方式所带来的技术效果,可以参考对于第一方面或第一方面的相应的实施方式的技术效果的介绍,不多赘述。
第三方面,提供第一种通信装置,例如该通信装置为如前所述的第一通信装置。所述通信装置用于执行上述第一方面或第一方面的任一可能的实现方式中的方法。具体地,所述通信装置可以包括用于执行第一方面或第一方面的任一可能的实现方式中的方法的模块,例如包括处理模块和收发模块。示例性地,所述通信装置为接收设备。示例性地,所述接收设备可以是终端设备,也可以是网络设备。其中,
所述处理模块,用于生成反馈信息,所述反馈信息包括所述通信装置未接收的数据包中的待反馈的数据包的信息,以及,所述反馈信息还包括第一字段,所述第一字段承载序列号(n+1)的信息,n为所述反馈信息所指示的数据包中的最晚的数据包的序列号;
所述收发模块,用于向发送设备发送所述反馈信息。
结合第三方面,在第三方面的第一种可能的实施方式中,所述第一字段为确认应答序列号字段。
结合第三方面或第三方面的第一种可能的实施方式,在第三方面的第二种可能的实施方式中,所述反馈信息包括所述通信装置未接收的数据包中的待反馈的数据包的信息,可以包括如下三种情况中的一种:
所述反馈信息包括所述通信装置未接收的数据包中的待反馈的第一数据包的序列号;或,
所述反馈信息包括所述通信装置未接收的数据包中的待反馈的第二数据包的序列号,以及所述第二 数据包内未接收的子数据包的起始位置信息和结束位置信息;或,
所述反馈信息包括所述通信装置未接收的数据包中的待反馈的第一数据包的序列号,以及,包括所述通信装置未接收的数据包中的待反馈的第二数据包的序列号,和所述第二数据包内未接收的子数据包的起始位置信息和结束位置信息。
结合第三方面的第二种可能的实施方式,在第三方面的第三种可能的实施方式中,所述第二数据包中包含未接收的多个不连续子数据包,所述未接收的多个不连续子数据包中的每个子数据包由第二数据包的序列号和所述每个子数据包的起始位置信息和结束位置信息指示。
结合第三方面的第二种可能的实施方式,在第三方面的第四种可能的实施方式中,所述未接收的子数据包为不连续的多个子数据包,所述起始位置信息包括所述未接收的子数据包中的每个子数据包的起始位置信息,所述结束位置信息包括所述未接收的子数据包中的每个子数据包的结束位置信息。
结合第三方面或第三方面的第一种可能的实施方式至第三方面的第四种可能的实施方式中的任一种可能的实施方式,在第三方面的第五种可能的实施方式中,所述序列号(n+1)的信息用于指示序列号为(n+1)的数据包的接收状态,其中,数据包的接收状态包括接收成功或未接收。
关于第三方面或第三方面的各种可能的实施方式所带来的技术效果,可以参考对于第一方面或第一方面的相应的实施方式的技术效果的介绍,不多赘述。
第四方面,提供第二种通信装置,例如该通信装置为如前所述的第二通信装置。所述通信装置用于执行上述第二方面或第二方面的任一可能的实现方式中的方法。具体地,所述通信装置可以包括用于执行第二方面或第二方面的任一可能的实现方式中的方法的模块,例如包括处理模块和收发模块。示例性地,所述通信装置为发送设备。示例性地,所述发送设备可以是终端设备,也可以是网络设备。其中,
所述收发模块,用于接收来自接收设备的反馈信息;
所述处理模块,用于根据所述反馈信息确定所述接收设备未接收的数据包中的待反馈的数据包的信息,以及,所述反馈信息还包括第一字段,所述第一字段承载序列号(n+1)的信息,n为所述反馈信息所指示的数据包中的最晚的数据包的序列号。
结合第四方面,在第四方面的第一种可能的实施方式中,所述第一字段为确认应答序列号字段。
结合第四方面或第四方面的第一种可能的实施方式,在第四方面的第二种可能的实施方式中,所述处理模块用于通过如下的一种方式根据所述反馈信息确定所述接收设备未接收的数据包中的待反馈的数据包的信息:
根据所述反馈信息确定所述接收设备未接收的数据包中的待反馈的第一数据包的序列号;或,
根据所述反馈信息确定所述接收设备未接收的数据包中的待反馈的第二数据包的序列号,以及所述第二数据包内未接收的子数据包的起始位置信息和结束位置信息;或,
根据所述反馈信息确定所述接收设备未接收的数据包中的待反馈的第一数据包的序列号,以及,包括所述接收设备未接收的数据包中的待反馈的第二数据包的序列号,和所述第二数据包内未接收的子数据包的起始位置信息和结束位置信息。
结合第四方面的第二种可能的实施方式,在第四方面的第三种可能的实施方式中,所述第二数据包中包含未接收的多个不连续子数据包,所述未接收的多个不连续子数据包中的每个子数据包由第二数据包的序列号和所述每个子数据包的起始位置信息和结束位置信息指示。
结合第四方面的第二种可能的实施方式,在第四方面的第四种可能的实施方式中,所述未接收的子数据包为不连续的多个子数据包,所述起始位置信息包括所述未接收的子数据包中的每个子数据包的起始位置信息,所述结束位置信息包括所述未接收的子数据包中的每个子数据包的结束位置信息。
结合第四方面或第四方面的第一种可能的实施方式至第四方面的第四种可能的实施方式中的任一种可能的实施方式,在第四方面的第五种可能的实施方式中,所述序列号(n+1)的信息用于指示序列号为(n+1)的数据包的接收状态,其中,数据包的接收状态包括接收成功或未接收。
关于第四方面或第四方面的各种可能的实施方式所带来的技术效果,可以参考对于第二方面或第二方面的相应的实施方式的技术效果的介绍,不多赘述。
第五方面,提供第三种通信装置,该通信装置例如为如前所述的第三通信装置。该通信装置包括处理器和收发器,处理器和收发器相互耦合,用于实现上述第三方面或第三方面的各种可能的设计所描述的方法。示例性地,所述通信装置为设置在通信设备中的芯片。示例性的,所述通信设备为接收设备。示例性地,所述接收设备可以是终端设备,也可以是网络设备。其中,收发器例如通过通信设备中的天线、馈线和编解码器等实现,或者,如果所述通信装置为设置在通信设备中的芯片,那么收发器例如为芯片中的通信接口,该通信接口与通信设备中的射频收发组件连接,以通过射频收发组件实现信息的收发。其中,
所述处理器,用于生成反馈信息,所述反馈信息包括所述通信装置未接收的数据包中的待反馈的数据包的信息,以及,所述反馈信息还包括第一字段,所述第一字段承载序列号(n+1)的信息,n为所述反馈信息所指示的数据包中的最晚的数据包的序列号;
所述收发器,用于向发送设备发送所述反馈信息。
结合第五方面,在第五方面的第一种可能的实施方式中,所述第一字段为确认应答序列号字段。
结合第五方面或第五方面的第一种可能的实施方式,在第五方面的第二种可能的实施方式中,所述反馈信息包括所述通信装置未接收的数据包中的待反馈的数据包的信息,可以包括如下三种情况中的一种:
所述反馈信息包括所述通信装置未接收的数据包中的待反馈的第一数据包的序列号;或,
所述反馈信息包括所述通信装置未接收的数据包中的待反馈的第二数据包的序列号,以及所述第二数据包内未接收的子数据包的起始位置信息和结束位置信息;或,
所述反馈信息包括所述通信装置未接收的数据包中的待反馈的第一数据包的序列号,以及,包括所述通信装置未接收的数据包中的待反馈的第二数据包的序列号,和所述第二数据包内未接收的子数据包的起始位置信息和结束位置信息。
结合第五方面的第二种可能的实施方式,在第五方面的第三种可能的实施方式中,所述第二数据包中包含未接收的多个不连续子数据包,所述未接收的多个不连续子数据包中的每个子数据包由第二数据包的序列号和所述每个子数据包的起始位置信息和结束位置信息指示。
结合第五方面的第二种可能的实施方式,在第五方面的第四种可能的实施方式中,所述未接收的子数据包为不连续的多个子数据包,所述起始位置信息包括所述未接收的子数据包中的每个子数据包的起始位置信息,所述结束位置信息包括所述未接收的子数据包中的每个子数据包的结束位置信息。
结合第五方面或第五方面的第一种可能的实施方式至第五方面的第四种可能的实施方式中的任一种可能的实施方式,在第三方面的第五种可能的实施方式中,所述序列号(n+1)的信息用于指示序列号为(n+1)的数据包的接收状态,其中,数据包的接收状态包括接收成功或未接收。
关于第五方面或第五方面的各种可能的实施方式所带来的技术效果,可以参考对于第一方面或第一方面的相应的实施方式的技术效果的介绍,不多赘述。
第六方面,提供第四种通信装置,该通信装置例如为如前所述的第四通信装置。该通信装置包括处理器和收发器,处理器和收发器相互耦合,用于实现上述第四方面或第四方面的各种可能的设计所描述 的方法。示例性地,所述通信装置为设置在通信设备中的芯片。示例性的,所述通信设备为发送设备。示例性地,所述发送设备可以是终端设备,也可以是网络设备。其中,收发器例如通过通信设备中的天线、馈线和编解码器等实现,或者,如果所述通信装置为设置在通信设备中的芯片,那么收发器例如为芯片中的通信接口,该通信接口与通信设备中的射频收发组件连接,以通过射频收发组件实现信息的收发。其中,
所述收发器,用于接收来自接收设备的反馈信息;
所述处理器,用于根据所述反馈信息确定所述接收设备未接收的数据包中的待反馈的数据包的信息,以及,所述反馈信息还包括第一字段,所述第一字段承载序列号(n+1)的信息,n为所述反馈信息所指示的数据包中的最晚的数据包的序列号。
结合第六方面,在第六方面的第一种可能的实施方式中,所述第一字段为确认应答序列号字段。
结合第六方面或第六方面的第一种可能的实施方式,在第四方面的第二种可能的实施方式中,所述处理器用于通过如下的一种方式根据所述反馈信息确定所述接收设备未接收的数据包中的待反馈的数据包的信息:
根据所述反馈信息确定所述接收设备未接收的数据包中的待反馈的第一数据包的序列号;或,
根据所述反馈信息确定所述接收设备未接收的数据包中的待反馈的第二数据包的序列号,以及所述第二数据包内未接收的子数据包的起始位置信息和结束位置信息;或,
根据所述反馈信息确定所述接收设备未接收的数据包中的待反馈的第一数据包的序列号,以及,包括所述接收设备未接收的数据包中的待反馈的第二数据包的序列号,和所述第二数据包内未接收的子数据包的起始位置信息和结束位置信息。
结合第六方面的第二种可能的实施方式,在第六方面的第三种可能的实施方式中,所述第二数据包中包含未接收的多个不连续子数据包,所述未接收的多个不连续子数据包中的每个子数据包由第二数据包的序列号和所述每个子数据包的起始位置信息和结束位置信息指示。
结合第六方面的第二种可能的实施方式,在第六方面的第四种可能的实施方式中,所述未接收的子数据包为不连续的多个子数据包,所述起始位置信息包括所述未接收的子数据包中的每个子数据包的起始位置信息,所述结束位置信息包括所述未接收的子数据包中的每个子数据包的结束位置信息。
结合第六方面或第六方面的第一种可能的实施方式至第六方面的第四种可能的实施方式中的任一种可能的实施方式,在第六方面的第五种可能的实施方式中,所述序列号(n+1)的信息用于指示序列号为(n+1)的数据包的接收状态,其中,数据包的接收状态包括接收成功或未接收。
关于第六方面或第六方面的各种可能的实施方式所带来的技术效果,可以参考对于第二方面或第二方面的相应的实施方式的技术效果的介绍,不多赘述。
第七方面,提供第五种通信装置。该通信装置可以为上述方法设计中的第一通信装置。示例性地,所述通信装置为设置在接收设备中的芯片。示例性地,所述接收设备可以是终端设备,也可以是网络设备。该通信装置包括:存储器,用于存储计算机可执行程序代码;以及处理器,处理器与存储器耦合。其中存储器所存储的程序代码包括指令,当处理器执行所述指令时,使第五种通信装置执行上述第一方面或第一方面的任意一种可能的实施方式中的方法。
其中,第五种通信装置还可以包括通信接口,该通信接口可以是接收设备中的收发器,例如通过所述通信装置中的天线、馈线和编解码器等实现,或者,如果第五种通信装置为设置在接收设备中的芯片,则通信接口可以是该芯片的输入/输出接口,例如输入/输出管脚等。
第八方面,提供第六种通信装置。该通信装置可以为上述方法设计中的第二通信装置。示例性地, 所述通信装置为设置在发送设备中的芯片。示例性地,所述发送设备可以是终端设备,也可以是网络设备。该通信装置包括:存储器,用于存储计算机可执行程序代码;以及处理器,处理器与存储器耦合。其中存储器所存储的程序代码包括指令,当处理器执行所述指令时,使第六种通信装置执行上述第二方面或第二方面的任意一种可能的实施方式中的方法。
其中,第六种通信装置还可以包括通信接口,该通信接口可以是发送设备中的收发器,例如通过所述通信装置中的天线、馈线和编解码器等实现,或者,如果第六种通信装置为设置在发送设备中的芯片,则通信接口可以是该芯片的输入/输出接口,例如输入/输出管脚等。
第九方面,提供一种通信系统,该通信系统可以包括第三方面所述的第一种通信装置、第五方面所述的第三种通信装置或第七方面所述的第五种通信装置,以及包括第四方面所述的第二种通信装置、第六方面所述的第四种通信装置或第八方面所述的第六种通信装置。
第十方面,提供一种计算机存储介质,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述第一方面或第一方面的任意一种可能的设计中所述的方法。
第十一方面,提供一种计算机存储介质,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述第二方面或第二方面的任意一种可能的设计中所述的方法。
第十二方面,提供一种包含指令的计算机程序产品,所述计算机程序产品中存储有指令,当其在计算机上运行时,使得计算机执行上述第一方面或第一方面的任意一种可能的设计中所述的方法。
第十三方面,提供一种包含指令的计算机程序产品,所述计算机程序产品中存储有指令,当其在计算机上运行时,使得计算机执行上述第二方面或第二方面的任意一种可能的设计中所述的方法。
在本申请实施例中,反馈信息所包括的第一字段承载的是序列号(n+1)的信息,从而接收设备无需确定除了反馈信息所指示的数据包之外的下一个未接收的数据包究竟是哪个,而只需将反馈信息所指示的数据包中的最晚的数据包的下一个数据包的序列号添加到反馈信息即可,减少接收设备的工作量,从而有助于节省设备的功耗。
附图说明
图1A为本申请实施例所涉及的发送设备和接收设备的协议栈的示意图;
图1B为数据包的计数值的构成示意图;
图2为PDCP层接收数据包以及对数据包进行排序的一种示例;
图3A为本申请实施例的一种应用场景示意图;
图3B为本申请实施例的另一种应用场景示意图;
图4为本申请实施例提供的一种发送、接收反馈信息的方法流程图;
图5为本申请实施例中的数据包中未接收的部分是连续的示意图;
图6为本申请实施例中的数据包中未接收的部分是不连续的示意图;
图7为本申请实施例中的一种反馈信息的示意图;
图8为本申请实施例提供的第一种接收设备的示意性框图;
图9为本申请实施例提供的第一种接收设备的另一示意性框图;
图10为本申请实施例提供的第一种发送设备的示意性框图;
图11为本申请实施例提供的第一种发送设备的另一示意性框图;
图12为本申请实施例提供的通信装置的示意性框图;
图13为本申请实施例提供的通信装置的另一示意性框图;
图14为本申请实施例提供的通信装置的再一示意性框图。
具体实施方式
为了使本申请实施例的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施例作进一步地详细描述。
以下,对本申请实施例中的部分用语进行解释说明,以便于本领域技术人员理解。
1)终端设备,包括向用户提供语音和/或数据连通性的设备,具体的,包括向用户提供语音的设备,或包括向用户提供数据连通性的设备,或包括向用户提供语音和数据连通性的设备。例如可以包括具有无线连接功能的手持式设备、或连接到无线调制解调器的处理设备。该终端设备可以经无线接入网(radio access network,RAN)与核心网进行通信,与RAN交换语音或数据,或与RAN交互语音和数据。该终端设备可以包括用户设备(user equipment,UE)、无线终端设备、移动终端设备、设备到设备通信(device-to-device,D2D)终端设备、车到一切(vehicle to everything,V2X)终端设备、机器到机器/机器类通信(machine-to-machine/machine-type communications,M2M/MTC)终端设备、物联网(internet of things,IoT)终端设备、订户单元(subscriber unit)、订户站(subscriber station),移动站(mobile station)、远程站(remote station)、接入点(access point,AP)、远程终端(remote terminal)、接入终端(access terminal)、用户终端(user terminal)、用户代理(user agent)、或用户装备(user device)等。例如,可以包括移动电话(或称为“蜂窝”电话),具有移动终端设备的计算机,便携式、袖珍式、手持式、计算机内置的移动装置等。例如,个人通信业务(personal communication service,PCS)电话、无绳电话、会话发起协议(session initiation protocol,SIP)话机、无线本地环路(wireless local loop,WLL)站、个人数字助理(personal digital assistant,PDA)、等设备。还包括受限设备,例如功耗较低的设备,或存储能力有限的设备,或计算能力有限的设备等。例如包括条码、射频识别(radio frequency identification,RFID)、传感器、全球定位系统(global positioning system,GPS)、激光扫描器等信息传感设备。
作为示例而非限定,在本申请实施例中,该终端设备还可以是可穿戴设备。可穿戴设备也可以称为穿戴式智能设备或智能穿戴式设备等,是应用穿戴式技术对日常穿戴进行智能化设计、开发出可以穿戴的设备的总称,如眼镜、手套、手表、服饰及鞋等。可穿戴设备即直接穿在身上,或是整合到用户的衣服或配件的一种便携式设备。可穿戴设备不仅仅是一种硬件设备,更是通过软件支持以及数据交互、云端交互来实现强大的功能。广义穿戴式智能设备包括功能全、尺寸大、可不依赖智能手机实现完整或者部分的功能,例如:智能手表或智能眼镜等,以及只专注于某一类应用功能,需要和其它设备如智能手机配合使用,如各类进行体征监测的智能手环、智能头盔、智能首饰等。
而如上介绍的各种终端设备,如果位于车辆上(例如放置在车辆内或安装在车辆内),都可以认为是车载终端设备,车载终端设备例如也称为车载单元(on-board unit,OBU)。
本申请实施例中,终端设备还可以包括中继(relay)。或者理解为,能够与基站进行数据通信的都可以看作终端设备。
2)网络设备,例如包括接入网(access network,AN)设备,例如基站(例如,接入点),可以是指接入网中在空口通过一个或多个小区与无线终端设备通信的设备。或者例如,一种车到一切(vehicle-to-everything,V2X)技术中的网络设备为路侧单元(road side unit,RSU)。或者例如,云设备也可以作为发送设备,例如云服务器等。
基站可用于将收到的空中帧与IP分组进行相互转换,作为终端设备与接入网的其余部分之间的路由器,其中接入网的其余部分可包括IP网络。RSU可以是支持V2X应用的固定基础设施实体,可以与支持V2X应用的其他实体交换消息。网络设备还可协调对空口的属性管理。例如,网络设备可以包括长 期演进(long term evolution,LTE)系统或高级长期演进(long term evolution-advanced,LTE-A)中的演进型基站(NodeB或eNB或e-NodeB,evolutional Node B),或者也可以包括第五代移动通信技术(the 5th generation,5G)新空口(new radio,NR)系统(也简称为NR系统)中的下一代节点B(next generation node B,gNB)或者也可以包括云接入网(cloud radio access network,Cloud RAN)系统中的集中式单元(centralized unit,CU)和分布式单元(distributed unit,DU),本申请实施例并不限定。
本申请实施例所述的接收设备,可以是终端设备,或者也可以是网络设备。而本申请实施例中用于发送数据包的发送设备,同样的,可以是终端设备也可以是网络设备。且,例如一种情况为,发送设备是网络设备,接收设备是终端设备,或者另一种情况为,发送设备和接收设备均为网络设备,或者再一种情况为,发送设备和接收设备均为终端设备(二者之间例如通过侧行链路(sidelink,SL)传输),或者还有一种情况为,发送设备是终端设备,接收设备是网络设备,等等,具体的不做限制。
3)本申请实施例中的术语“系统”和“网络”可被互换使用。“至少一个”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B的情况,其中A,B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一项(个)”或其类似表达,是指的这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b,或c中的至少一项(个),可以表示:a,b,c,a-b,a-c,b-c,或a-b-c,其中a,b,c可以是单个,也可以是多个。
以及,除非有相反的说明,本申请实施例提及“第一”、“第二”等序数词是用于对多个对象进行区分,不用于限定多个对象的顺序、时序、优先级或者重要程度。例如,第一数据包和第二数据包,只是为了区分不同的数据包,而并不是表示这两个数据包的内容、优先级、发送顺序或者重要程度等的不同。
前文介绍了本申请实施例所涉及到的一些名词概念,下面介绍本申请实施例涉及的技术特征。
请参考图1A,为发送设备和接收设备的部分协议栈的示意图。在图1A中,发送设备和接收设备都包括PDCP层、RLC层、MAC层和物理层(PHY)。另外发送设备和接收设备也都包括PDCP层的上层,图1A以PDCP层的上层是IP/传输控制协议(transmission control protocol,TCP)层为例。发送设备在发送数据包时,数据包的传输顺序是IP/TCP层-PDCP层-RLC层-MAC层-物理层,再从发送设备的物理层发送给接收设备的物理层。数据包到达接收设备的物理层后,在接收设备内的传输顺序是,物理层-MAC层、RLC层、PDCP层-IP/TCP层。如图1A中的弧线箭头,就用于表示数据包的传输路径。
在空口传输中,每个数据包都有对应的编号。其中,一个数据包的编号可以由两部分构成,序列号(sequence number,SN)和超帧号(hyper frame number,HFN),二者合起来就构成数据包的编号,或者说是数据包的计数(count)值。发送设备的PDCP层为待发送的数据包添加SN。同时,发送设备与接收设备还需要维护相同的HFN。SN和HFN之和就构成了数据包的计数值。其中,数据包的计数值也可以称为数据包的编号等,本申请实施例对于该特征的名称不做限定。可参考图1B,为数据包的计数值的构成示意图。
其中,发送设备需要维护发送的SN的总数不超过SN总数的一半,以免造成帧号混乱。同样的,接收设备也将以SN总数一半的长度作为接收窗。SN总数是SN所占用的比特(bit)数所对应的全部取值的数量。例如,SN的比特数是3,3个比特总共对应8个值,则SN总数是8。那么发送设备需要保证,发送的SN的总数需要小于或等于4,这里所述的发送的SN,可以理解为是维持在发送状态中的数据包对应的SN,所谓的发送状态中是指,发送设备已发送,但还未接收到接收设备针对该数据包所反馈的响应消息(例如确认应答(ACK)/否定应答(NACK))。例如,发送设备发送了数据包0、数据包1、数 据包2和数据包3,且对于这4个数据包均未接收到接收设备所反馈的响应消息,那么发送设备就不能再发送其他数据包。后续,例如发送设备接收了接收设备对于数据包0的ACK,就可以再发送一个数据包,例如可以发送数据包4。
在空口传输中,虽然发送设备是按照数据包的编号,顺序发送数据包,在媒体访问控制(medium access control,MAC)层支持混合自动重传请求(hybrid automatic repeat request,HARQ)机制,由于多个HARQ进程的并行运行,导致接收设备接收的数据包很有可能是乱序的。对于AM来说,无线链路控制(radio link control,RLC)层支持自动重传请求(automatic repeat request,ARQ)机制,也会导致接收设备接收的数据包是乱序的。
在LTE系统中,接收设备中的层2协议栈RLC负责将接收到的乱序的数据包进行重排序,并将重排序后的数据包递交给RLC层的上层,也就是PDCP层。在5G NR系统中,层2协议栈RLC不再具有重排序功能,而由接收设备中的层2协议栈PDCP(或者称为PDCP层)负责将接收到的乱序的数据包进行重排序。
接收设备的PDCP层接收到一个数据包后,首先根据该数据包携带的SN,以及接收设备所维护的HFN,确定该数据包的计数值,该数据包的计数值例如用RCVD_COUNT表示。然后,PDCP层判断该数据包的计数值是否在有效的接收窗内,即,判断该数据包的计数值是否大于或等于RX_DELIV,以及小于(RX_DELIV+SN总数/2)。其中,RX_DELIV表示该PDCP层之前未递交给上层的第一个数据包的编号。如果确定该数据包的计数值大于或等于RX_DELIV,以及小于(RX_DELIV+SN总数/2),则确定该数据包的计数值位于有效的时间窗内,PDCP层可以暂存该数据包;或者,如果确定该数据包的计数值小于RX_DELIV,或确定该数据包的计数值小于(RX_DELIV+SN总数/2),或确定该数据包的计数值既小于RX_DELIV也小于(RX_DELIV+SN总数/2),则确定该数据包的计数值没有位于有效的时间窗内,PDCP层可以丢弃该数据包。对于暂存的数据包,PDCP层可以对其进行排序,或者说是进行重排序。
PDCP层对数据包进行排序,所涉及的变量大概有四个:
RCVD_COUNT:表示当前接收到的数据包的计数值;
RX_DELIV:表示PDCP层第一个未递交给PDCP层的上层的数据包的计数值,其中,第一个未递交给PDCP层的上层的数据包,可以理解为,是PDCP层未递交给上层的数据包中的计数值最小的数据包;
RX_NEXT:表示当前期待的下一个即将接收的数据包的计数值,或者说,是表示当前接收的数据包中的最大的计数值加1的值;
RX_REORD:表示开启重排序定时器(t-reordering timer)时的RX_NEXT的值。
下面以图2为例,介绍PDCP层如何对数据包进行排序。
图2的第一行,表示接收端的PDCP层并未收到任何的数据包,则此时RCVD_COUNT的取值和RX_REORD的取值都不存在,RX_DELIV的取值为0,表明当前第一个未递交给PDCP层上层的数据包的计数值为0,RX_NEXT的取值为0,表明当前期待的下一个即将接收的数据包的计数值为0,也就是说当前期待的下一个即将接收的数据包为数据包0。
图2的第二行,表示PDCP层接收到了数据包0。PDCP层判断数据包0的计数值是否位于有效的时间窗内。其中,PDCP层可以根据未更新的RX_DELIV的取值判断数据包0的计数值是否位于有效的时间窗内。例如PDCP层确定数据包0的计数值位于有效的时间窗内,PDCP层暂存数据包0。接着,PDCP层判断RCVD_COUNT是否大于或等于RX_NEXT,如果RCVD_COUNT大于或等于RX_NEXT,则需要更新RX_NEXT。此时RCVD_COUNT的取值为0,未更新前的RX_NEXT的取值为0,则RCVD_COUNT等于RX_NEXT,因此将RX_NEXT的取值更新为RCVD_COUNT+1,也就是将RX_NEXT的取值更新为1。由于接收到了数据包0,等 于第一个未递交给上层的数据包的计数值,PDCP层把数据包0递交给上层,此时第一个未递交给上层的数据包的计数值变为1,则RX_DELIV更新为1。另外,PDCP层在重排序定时器没有运行时,还可以判断RX_DELIV是否大于或等于RX_NEXT,如果RX_DELIV小于RX_NEXT,表明接收的数据包出现了乱序。此时,RX_DELIV的取值和RX_NEXT的取值均为1,因此可以确定不存在乱序。其中在介绍图2时,以PDCP层的上层是IP/TCP层为例。
图2的第三行,表示PDCP层接收到了数据包3。PDCP层判断数据包3的计数值是否位于有效的时间窗内。其中,PDCP层可以根据未更新的RX_DELIV的取值判断数据包3的计数值是否位于有效的时间窗内。例如PDCP层确定数据包3的计数值位于有效的时间窗内,PDCP层暂存数据包3。接着,PDCP层判断RCVD_COUNT是否大于或等于RX_NEXT,如果RCVD_COUNT大于或等于RX_NEXT,则需要更新RX_NEXT。此时RCVD_COUNT的取值为3,未更新前的RX_NEXT的取值为1,则RCVD_COUNT大于RX_NEXT,因此PDCP层可以将RX_NEXT的取值更新为RCVD_COUNT+1,也就是将RX_NEXT的取值更新为4。此时,如果为PDCP层配置了乱序递交(out of order delivery)功能,则PDCP层也可以将数据包3递交给上层,此时PDCP层可以不对数据包进行排序。或者,如果没有为PDCP层配置乱序递交功能,则,因为未接收到数据包1,因此PDCP层将RX_DELIV的取值还是1,不需要向上层递交数据包。另外,PDCP层在重排序定时器没有运行时,还可以判断RX_DELIV是否大于或等于RX_NEXT,如果RX_DELIV小于RX_NEXT,表明接收的数据包出现了乱序。由于RX_DELIV=1小于RX_NEXT=4,此时PDCP层可以开启重排序定时器,以及将RX_REORD的取值更新为4,因此重排序定时器运行时,表明存在乱序。其中,本文主要介绍没有为PDCP层配置乱序递交功能的情况。
图2的第四行,表示PDCP层接收到了数据包5。PDCP层判断数据包5的计数值是否位于有效的时间窗内。其中,PDCP层可以根据未更新的RX_DELIV的取值(即,RX_DELIV的取值为1)判断数据包5的计数值是否位于有效的时间窗内。例如PDCP层确定数据包5的计数值位于有效的时间窗内,PDCP层暂存数据包5。接着,PDCP层判断RCVD_COUNT是否大于或等于RX_NEXT,如果RCVD_COUNT大于或等于RX_NEXT,则需要更新RX_NEXT。此时RCVD_COUNT的取值为5,未更新前的RX_NEXT的取值为4,则RCVD_COUNT大于RX_NEXT,因此PDCP层可以将RX_NEXT的取值更新为RCVD_COUNT+1,也就是将RX_NEXT的取值更新为6。此时,因为未接收到数据包1,则RX_DELIV的取值依然为1,不向上层递交数据包。另外,PDCP层在重排序定时器正在运行时,当RX_DELIV是否大于等于RX_REORD时,重排序定时器启动时那些编号小于RX_REORD的未收到的数据包说明已经收到了。由于此时重排序定时器正在运行,但RX_DELIV=1小于RX_REORD=4,则说明重排序定时器开启时缺失的那些数据包还没有完全收到。
图2的第五行,表示PDCP层接收到了数据包6。PDCP层判断数据包6的计数值是否位于有效的时间窗内。其中,PDCP层可以根据未更新的RX_DELIV的取值(即,RX_DELIV的取值为1)判断数据包6的计数值是否位于有效的时间窗内。例如PDCP层确定数据包6的计数值位于有效的时间窗内,PDCP层暂存数据包6。接着,PDCP层判断RCVD_COUNT是否大于或等于RX_NEXT,如果RCVD_COUNT大于或等于RX_NEXT,则需要更新RX_NEXT。此时RCVD_COUNT的取值为6,未更新前的RX_NEXT的取值为6,则RCVD_COUNT等于RX_NEXT,因此PDCP层可以将RX_NEXT的取值更新为RCVD_COUNT+1,也就是将RX_NEXT的取值更新为7。此时,因为未接收到数据包1,则RX_DELIV的取值依然为1,不向上层递交任何包。另外,PDCP层在重排序定时器正在运行时,当RX_DELIV是否大于等于RX_REORD时,重排序定时器启动时那些编号小于RX_REORD的未收到的数据包说明已经收到了。由于此时重排序定时器正在运行,但RX_DELIV=1小于RX_REORD=4,则说明重排序定时器开启时缺失的那些数据包还没有完全收到,即所启动的重排序定时器是为了等待接收数据包1和数据包2,则如果重排序定时器未超时,就不会停止重排 序定时器,重排序定时器会继续运行。
图2的第六行,表示PDCP层接收到了数据包1。PDCP层判断数据包1的计数值是否位于有效的时间窗内。其中,PDCP层可以根据未更新的RX_DELIV的取值(即,RX_DELIV的取值为1)判断数据包1的计数值是否位于有效的时间窗内。例如PDCP层确定数据包1的计数值位于有效的时间窗内,PDCP层暂存数据包1。接着,PDCP层判断RCVD_COUNT是否大于或等于RX_NEXT,如果RCVD_COUNT大于或等于RX_NEXT,则需要更新RX_NEXT。此时RCVD_COUNT的取值为1,未更新前的RX_NEXT的取值为7,则RCVD_COUNT小于RX_NEXT,无需更新RX_NEXT的取值,RX_NEXT的取值依然为7。此时,因为接收到的数据包为1等于第一个未接收到数据包的取值RX_DELIV,则向上层递交1号包,RX_DELIV更新为2。另外,PDCP层在重排序定时器正在运行时,当RX_DELIV是否大于等于RX_REORD时,重排序定时器启动时那些编号小于RX_REORD的未收到的数据包说明已经收到了。由于此时重排序定时器正在运行,但RX_DELIV=2小于RX_REORD=4,则说明重排序定时器开启时缺失的那些数据包还没有完全收到,即所启动的重排序定时器是为了等待接收数据包1和数据包2,此时只接收到了数据包1,则如果重排序定时器未超时,就不会停止重排序定时器,重排序定时器会继续运行。
图2的第七行,表示PDCP层接收到了数据包2。PDCP层判断数据包2的计数值是否位于有效的时间窗内。其中,PDCP层可以根据未更新的RX_DELIV的取值(即,RX_DELIV的取值为1)判断数据包2的计数值是否位于有效的时间窗内。例如PDCP层确定数据包2的计数值位于有效的时间窗内,PDCP层暂存数据包2。接着,PDCP层判断RCVD_COUNT是否大于或等于RX_NEXT,如果RCVD_COUNT大于或等于RX_NEXT,则需要更新RX_NEXT。此时RCVD_COUNT的取值为2,未更新前的RX_NEXT的取值为7,则RCVD_COUNT小于RX_NEXT,无需更新RX_NEXT的取值,RX_NEXT的取值依然为7。此时,因为接收到的数据包为2等于第一个未接收到数据包的取值RX_DELIV,则向上层递交2号包以及2号包后边连续的3号包,第一个未递交的数据包更新为未收到的4号包,即RX_DELIV更新为4。另外,PDCP层在重排序定时器正在运行时,当RX_DELIV是否大于等于RX_REORD时,重排序定时器启动时那些编号小于RX_REORD的未收到的数据包说明已经收到了。由于此时重排序定时器正在运行,但RX_DELIV=4等于RX_REORD=4,则说明重排序定时器开启时缺失的那些数据包已完全收到,则停止并重置该重排序定时器。图2的第八行,此时由于PDCP层在重排序定时器未在运行,还可以判断RX_DELIV是否大于或等于RX_NEXT,如果RX_DELIV小于RX_NEXT,表明接收的数据包出现了乱序。由于RX_DELIV=4小于RX_NEXT=7,此时PDCP层可以开启重排序定时器,以及将RX_REORD的取值更新为7。此时所启动的重排序定时器是为了等待接收数据包4。对于其他的变量的取值,与图2的第七行一致。
图2是以PDCP层在重排序定时器的运行时间内接收到了数据包1和数据包2为例。而或者,PDCP层还未接收到数据包1和数据包2时重排序定时器就超时,那么PDCP层会将数据包3直接递交给上层,且更新RX_DELIV的取值,而对于数据包1和数据包2就认为已丢失。如果后续再接收了数据包1,因为PDCP层已更新了RX_DELIV的取值,那么后续接收的数据包1的计数值很可能不在有效的时间窗内,PDCP层会丢弃数据包1,对于数据包2来说也是同样。可见,由于重排序定时器的超时,可能导致PDCP层丢失数据包。
对于后续数据包的接收过程可以此类推。
如上介绍的是PDCP对数据包进行重排序的过程,如果由RLC层对数据包进行重排序,则过程也是类似的。不过对于RLC层来说,上层是PDCP层。
目前,接收设备在接收数据包后,会向发送设备发送反馈信息。其中,如果数据包接收成功,则可以不必反馈,而如果数据包接收失败或暂时未接收到,则可以将接收失败或未接收的数据包的信息通过 反馈信息发送给发送设备。发送设备接收反馈信息后,可以重传反馈信息所指示的数据包。
在反馈信息中,包括ACK_SN这个字段,该字段承载的是接收设备下一个未接收的数据包的序列号。例如,接收设备未接收的数据包为数据包1、数据包2、数据包4和数据包7,而数据包3、数据包5和数据包6都接收成功。当然,接收设备对于数据包3、数据包5和数据包6不一定是顺序接收的,如果不是顺序接收,则在接收后可以进行重排序,具体的重排序过程可参考前文。如果接收设备需要发送反馈信息,那么接收设备可以将数据包1、数据包2、数据包4和数据包7的信息均添加到反馈信息中。以接收设备的RLC层确定反馈信息为例,例如RLC层可以将反馈信息承载在RLC协议数据单元(protocol data unit,PDU)中。而RLC PDU的容量有限,导致反馈信息的容量也是有限的。接收设备可以按照数据包的序列号的顺序,将数据包1、数据包2、数据包4和数据包7的信息添加到反馈信息中,例如在添加完毕数据包4的信息后,反馈信息已经无法再容纳更多的信息,因此数据包7的信息无法添加到该反馈信息中。那么在该反馈信息的ACK_SN字段,就可以填写数据包7的序列号,例如为7。
在这种方式下,接收设备虽然无法将数据包7的信息添加到反馈信息中,但是接收设备还需要确定,除了反馈信息所对应的这些数据包之外,下一个未接收的数据包究竟是哪个数据包。可见,对于接收端设备来说还需要进一步的查找过程,不利于节省功耗。
鉴于此,提供本申请实施例的技术方案。在本申请实施例中,反馈信息所包括的第一字段承载的是序列号(n+1)的信息,而n是反馈信息所指示的数据包中的最晚的数据包的序列号。例如,接收设备未接收的数据包为数据包1、数据包2、数据包4和数据包7,而数据包3、数据包5和数据包6都接收成功,而因为反馈信息的容量有限,因此接收设备只能将数据包1、数据包2和数据包4的信息添加到反馈信息中,而数据包7的信息无法添加到反馈信息中。那么该反馈信息的第一字段承载的是数据包5的序列号的信息,而并不是数据包7的序列号。在这种方式下,接收设备无需确定下一个未接收的数据包究竟是哪个,而只需将反馈信息所指示的数据包中的最晚的数据包的下一个数据包的序列号添加到反馈信息即可,减少接收设备的工作量,从而有助于节省设备的功耗。
本申请实施例提供的技术方案可以应用于LTE系统,例如可以应用于普通的LTE系统或车联网等,例如V2X、LTE-V等,或者也可以应用于NR系统,例如可以应用于普通的NR系统或车联网等,例如V2X、NR-V等,或者还可以应用于其他类似的通信系统或下一代通信系统。
请参见图3A,为本申请实施例的一种应用场景。在图3A中包括一个网络设备以及一个终端设备。其中,该网络设备例如工作在演进的通用移动通信系统陆地无线接入(evolved UMTS terrestrial radio access,E-UTRA)系统中,或者工作在NR系统中。当然,在本申请实施例中,一个网络设备可以服务于多个终端设备,图3A只是以其中的一个终端设备为例。该网络设备可以作为发送设备,终端设备作为接收设备,或者,该网络设备可以作为接收设备,网络设备作为发送设备。
图3A中的网络设备例如为基站。其中,网络设备在不同的系统对应不同的设备,例如在4G系统中可以对应eNB,在5G系统中对应5G中的网络设备,例如gNB。图3A以网络设备是基站为例,实际上参考前文的介绍,网络设备还可以是RSU等设备。当然本申请实施例所提供的技术方案也可以应用于未来的移动通信系统中,因此图3A中的网络设备也可以对应未来的移动通信系统中的接入网设备。图3A中的终端设备以手机为例,实际不限于此。
请参加图3B,为本申请实施例的另一种应用场景。在图3B中包括终端设备1和终端设备2,这两个终端设备之间可以通过sidelink通信。这两个终端设备可以处于同一个网络设备的覆盖范围之内,或者处于不同的网络设备的覆盖范围之内,或者终端设备1处于一个网络设备的覆盖范围之内,而终端设备2不处于任一个网络设备的覆盖范围之内。网络设备例如基站或RSU等。图3B中的终端设备1和 终端设备2都以车辆为例,实际不限于此。
另外,本申请实施例并不限制于是网络设备和终端设备之间的通信,或是终端设备和终端设备之间的通信,还可以是网络设备与网络设备之间的通信。例如,本申请实施例中所述的发送设备可以是网络设备或终端设备,本申请实施例中所述的接收设备可以是网络设备或终端设备,且对于发送设备和接收设备的类型的组合不做限制。
下面结合附图介绍本申请实施例提供的技术方案。
本申请实施例提供一种发送、接收反馈信息的方法,请参见图4,为该方法的流程图。在下文的介绍过程中,以该方法应用于图3A或图3B所示的网络架构为例。另外,该方法可由两个通信装置执行,这两个通信装置例如为第一通信装置和第二通信装置,其中,第一通信装置可以是网络设备或能够支持网络设备实现该方法所需的功能的通信装置,或者第一通信装置可以是终端设备或能够支持终端设备实现该方法所需的功能的通信装置,当然还可以是其他通信装置,例如芯片系统。对于第二通信装置也是同样,第二通信装置可以是网络设备或能够支持网络设备实现该方法所需的功能的通信装置,或者第二通信装置可以是终端设备或能够支持终端设备实现该方法所需的功能的通信装置,当然还可以是其他通信装置,例如芯片系统。且对于第一通信装置和第二通信装置的实现方式均不做限制,例如第一通信装置可以是网络设备,第二通信装置是终端设备,或者第一通信装置和第二通信装置都是网络设备,或者第一通信装置和第二通信装置都是终端设备,或者第一通信装置是网络设备,第二通信装置是能够支持终端设备实现该方法所需的功能的通信装置,等等。其中,网络设备例如为基站。
为了便于介绍,在下文中,以该方法由接收设备和发送设备执行为例,也就是说,以第一通信装置是接收设备、第二通信装置是发送设备为例,并且对于接收设备究竟是网络设备还是终端设备不做限制,以及对于发送设备究竟是网络设备还是终端设备亦不做限制。如果将本实施例应用在图3A所示的网络架构,则下文中所述的接收设备可以是图3A所示的网络架构中的网络设备,下文中所述的发送设备可以是图3A所示的网络架构中的终端设备,或者,下文中所述的接收设备可以是图3A所示的网络架构中的终端设备,下文中所述的发送设备可以是图3A所示的网络架构中的网络设备。或者,如果将本实施例应用在图3B所示的网络架构,则下文中所述的接收设备可以是图3B所示的网络架构中的终端设备2,下文中所述的发送设备可以是图3B所示的网络架构中的终端设备1。当然,本申请实施例也可以发送设备和接收设备都是网络设备,具体的不做限制。
S41、接收设备生成反馈信息,所述反馈信息包括所述接收设备未接收的数据包中的待反馈的数据包的信息,以及,所述反馈信息还包括第一字段,所述第一字段承载序列号(n+1)的信息,n为所述反馈信息所指示的数据包中的最晚的数据包的序列号。
在前文中介绍了,在空口传输中,每个数据包都有对应的编号。其中,一个数据包的编号可以由两部分构成,序列号和超帧号。而本申请实施例主要关注的是数据包的序列号。
发送设备向接收设备发送数据包,接收设备可以周期性地向发送设备发送反馈信息,或者,如果发送设备需要接收反馈信息,可以向接收设备发送触发信息,接收设备接收来自发送设备的触发信息后,也可以向发送设备发送反馈信息。接收设备向发送设备发送反馈信息时,可以是接收设备已将数据包接收完毕之后,或者也可以是在数据包的接收过程中。
其中,反馈信息所指示的数据包,可以理解为,反馈信息包括了这些数据包的信息,例如反馈信息包括数据包1的信息,就可以认为反馈信息指示数据包1。反馈信息所指示的数据包中,可能有些数据包是尚未接收到,但是后续还有可能会收到,或者,可能有些数据包是确认已丢失(例如后续也不会再收到,或者,即使后续再接收到,但因为已经超出了有效的时间窗,因此接收设备也会认为是无效的数 据包而丢弃)。对于这两种情况,在本申请实施例中统一称之为“未接收”。也就是说,本申请实施例所述的“未接收的数据包”,可以包括尚未接收的、后续有可能会接收也有可能不会接收的数据包,相当于接收状态不确定的数据包,也可以包括确认已丢失的数据包。
例如,接收设备在接收数据包的过程中,如果接收的数据包有乱序的现象,则接收设备的RLC层或PDCP层可以对数据包进行重排序。而如果接收设备需要发送反馈信息,则接收设备可以根据重排序之后的结果生成反馈信息。例如,发送设备发送了数据包1至数据包10,接收设备接收了其中的数据包1、数据包2、数据包4、数据包7、数据包10,接收顺序为:数据包1-数据包4-数据包7-数据包2-数据包10,此时,接收设备需要发送反馈信息,例如可能是发送反馈信息的周期到来,或者是接收到了来自发送设备的触发信息,确定需要发送反馈信息。那么接收设备还有数据包3、数据包5、数据包6、数据包8和数据包9没有收到,因此原则上来讲,接收设备所发送的反馈信息可以指示数据包3、数据包5、数据包6、数据包8和数据包9,因为数据包1、数据包2、数据包4、数据包7和数据包10已经接收成功,因此接收设备无需通过反馈信息指示这些已经接收成功的数据包。
接收设备可以依次将数据包3的信息、数据包5的信息、数据包6的信息、数据包8的信息和数据包9的信息添加到反馈信息中。而反馈信息的数量是有限的,可能无法容纳这几个数据包的全部的信息,例如接收设备添加完数据包6的信息后,反馈信息已经添加满,或者虽然未添加满,但反馈信息剩余的区域已经不足以添加数据包8的信息,那么接收设备可以停止添加,反馈信息就生成完毕,且该反馈信息指示数据包3、数据包5和数据包6,而无法指示数据包8和数据包9。
另外,反馈信息可以包括一个或多个数据包的信息,或者说,反馈信息可以指示一个或多个数据包。对于反馈信息来说,n是反馈信息所指示的数据包中的最晚的数据包的序列号,这里所述的“最晚”,是按照数据包的序列号的顺序所确定的最晚。
如果数据包的序列号是无限制递增,那么反馈信息所指示的数据包中的最晚的数据包,可以理解为是反馈信息所指示的数据包中的序列号最大的数据包。但数据包的序列号有可能不是无限制递增,而是循环利用的,例如数据包的序列号总共有1024个,那么,数据包1023之后的下一个数据包,并不是数据包1024,而是数据包0(或者,数据包1024之后的下一个数据包,并不是数据包1025,而是数据包1),因此,反馈信息所指示的数据包中的最晚的数据包,并不能始终为是反馈信息所指示的数据包中的序列号最大的数据包。只能理解为,反馈信息所指示的数据包中,对于接收设备来说,如果按照数据包的序列号的顺序正常接收,则反馈信息所指示的数据包中的最晚的数据包,应该是在反馈信息所指示的数据包中接收设备最后一个接收的数据包。
例如,接收设备未接收数据包3、数据包5、数据包6、数据包8和数据包9,而接收设备添加到反馈信息中的包括数据包3的信息、数据包5的信息和数据包6的信息,那么反馈信息所指示的数据包中的最晚的数据包就是数据包6。对于数据包3、数据包5和数据包6来说,如果接收设备按照正常顺序接收,则数据包6就应该是这3个数据包中接收设备最晚接收的数据包。
再例如,接收设备未接收数据包1021、数据包1022、数据包1023、数据包0和数据包3,而接收设备添加到反馈信息中的包括数据包1021的信息、数据包1022的信息、数据包1023的信息和数据包0的信息,那么反馈信息所指示的数据包中的最晚的数据包就是数据包0。对于数据包1021、数据包1022、数据包1023和数据包0来说,如果接收设备按照正常顺序接收,则数据包0就应该是这4个数据包中接收设备最晚接收的数据包。数据包0,是数据包1023之后的下一个数据包。
另外,反馈信息除了包括数据包的信息之外,还可以包括第一字段,第一字段可以承载序列号(n+1)的信息。例如第一字段可以承载序列号(n+1)本身,承载在第一字段中的序列号(n+1)可以是二进制 的形式,或者八进制的形式,或者也可以是其他进制的形式,具体与反馈信息的格式有关。或者第一字段也可以承载指示信息,该指示信息就可以指示序列号(n+1),具体的不做限制。
作为一种可选的实施方式,第一字段可以是ACK_SN字段,或者也可能是其他字段。
如果按照现有技术,那么反馈信息中的ACK_SN字段承载的是除了反馈信息所指示的数据包之外,接收设备下一个未接收的数据包的序列号。例如,接收设备未接收数据包3、数据包5、数据包6、数据包8和数据包9,而接收设备添加到反馈信息中的包括数据包3的信息、数据包5的信息和数据包6的信息,那么反馈信息包括的ACK_SN字段包括的就是数据包8的序列号。根据前文的介绍可知,接收设备在将数据包的信息添加到反馈信息时,是按照未接收的数据包的顺序依次添加的。如果按照这种方式,接收设备在添加数据包6的信息后,反馈信息已满,但是接收设备还需要进一步确定,除了反馈信息所对应(或,指示)的数据包3、数据包5和数据包6之外,下一个未接收的数据包究竟是哪个数据包。可见,对于接收设备来说还需要进一步的查找过程,不利于节省设备的功耗。
而在本申请实施例中,反馈信息中的ACK_SN字段可以承载序列号(n+1)的信息。例如,接收设备未接收数据包3、数据包5、数据包6、数据包8和数据包9,而接收设备添加到反馈信息中的包括数据包3的信息、数据包5的信息和数据包6的信息,那么反馈信息包括的ACK_SN字段包括的就是数据包8的序列号。根据前文的介绍可知,接收设备在将数据包的信息添加到反馈信息时,是按照未接收的数据包的顺序依次添加的。那么,接收设备在添加数据包6的信息后,反馈信息已满,则接收设备直接在ACK_SN字段添加序列号(n+1)的信息即可,无需再查找下一个未接收的究竟是哪个数据包,有助于节省接收设备的功耗。
作为一种可选的实现方式,承载在第一字段中的序列号(n+1)的信息也可以指示序列号为(n+1)的数据包的接收状态,其中,数据包的接收状态包括接收成功或未接收。也就是说,对于发送设备来说,在接收该反馈信息后,根据承载在第一字段中的序列号(n+1)的信息,也可以确定序列号为(n+1)的数据包的接收状态为接收成功或未接收,或者说,认为序列号为(n+1)的数据包的接收状态为待定状态。或者,承载在第一字段中的序列号(n+1)的信息也可以并不用于指示序列号为(n+1)的数据包的接收状态,而只是作为一个标记信息。
反馈信息包括的可以是接收设备未接收的数据包中的待反馈的数据包的信息。待反馈的数据包是指,这些数据包的信息等待通过反馈信息发送给发送设备。而待反馈的数据包的信息,可能之前从未向发送设备反馈过,或者也可能之前已经向发送设备反馈过,本次是重复反馈。例如接收设备添加到反馈信息中的包括数据包3的信息,数据包3的信息可能从未向发送设备发送过,或者,也可能之前发送的反馈信息已经包括了数据包3的信息,那么本次再将数据包3的信息添加到反馈信息中,属于重复反馈,以提高发送设备对于反馈信息的解读成功率。
对于一个数据包来说,也可以进行切片,可以理解为,一个数据包可以包括多个子数据包。那么接收设备在接收时,可能整个数据包都未接收到,或者也可能只是未接收到一个数据包中的部分子数据包,而对于剩余的一部分子数据包可能接收成功。针对这两种不同的情况,反馈信息所包括的数据包的信息也可能不同。
在本申请实施例中,反馈信息可以包括接收设备未接收的数据包中的待反馈的第一数据包的序列号;或者,包括接收设备未接收的数据包中的待反馈的第二数据包的序列号,以及第二数据包内未接收的子数据包的起始位置信息和结束位置信息;或者,包括接收设备未接收的数据包中的待反馈的第一数据包的序列号,以及,接收设备未接收的数据包中的待反馈的第二数据包的序列号,和第二数据包内未接收的子数据包的起始位置信息和结束位置信息。
例如,接收设备对于第一数据包是整体未接收到,如果第一数据包也包括多个子数据包,那么接收设备未接收第一数据包所包括的全部子数据包。因此接收设备添加到反馈信息中的第一数据包的信息,只需包括第一数据包的序列号即可,用第一数据包的序列号就可以指示第一数据包。
而对于第二数据包,接收设备是接收成功了第二数据包所包括的部分子数据包,而对于第二数据包所包括的剩余的子数据包,接收设备未接收。因此,接收设备添加到反馈信息中的第二数据包的信息,可以包括第二数据包的序列号,以及包括第二数据包内未接收的子数据包的起始位置信息和结束位置信息。发送设备可以根据第二数据包的序列号确定第二数据包,以及可以根据第二数据包内未接收的子数据包的起始位置信息和结束位置信息,确定究竟是第二数据包中的哪些子数据包未接收,从而发送设备可以只需重传这部分子数据包即可。例如,第二数据包内的未接收的子数据包为子数据包1,则接收设备可以将第二数据包的序列号,以及子数据包1的起始位置信息和结束位置信息添加到反馈信息中。
需要说明的是,将数据包进行切片,并没有严格的大小。或者可以理解为,接收设备可以根据对数据包的接收情况来确定子数据包。例如请参考图5,为一个数据包的示意图。图5中的标记为“1”的部分表示是该数据包中接收设备接收成功的部分,而标记为“0”的部分表示是该数据包中接收设备未接收的部分。可以看到,接收设备未接收的部分是连续的,并没有不连续的区域存在,因此接收设备可以将未接收的部分整个视为是一个子数据包,相当于接收设备有1个子数据包未接收。
再例如,请参考图6,为一个数据包的示意图。图6中的标记为“1”的部分表示是该数据包中接收设备接收成功的部分,而标记为“0”的部分表示是该数据包中接收设备未接收的部分。可以看到,接收设备未接收的部分是不连续的,也就是说在图6中,有不连续的两个部分都未接收。那么接收设备可以将未接收的这两个部分分别视为一个子数据包,相当于接收设备有2个子数据包未接收。根据图6也可以看出,这两个未接收的子数据包的大小是不同的。当然,未接收的子数据包的大小也可能相同,这与具体的未接收的部分的大小有关。
那么,例如第二数据包中只有一个子数据包是接收设备未接收的,则接收设备添加到反馈信息中的第二数据包的信息,可以包括第二数据包的序列号,以及包括该子数据包的起始位置信息和结束位置信息。例如对于图5所示的数据包,接收设备添加到反馈信息中的该数据包的信息,就包括该数据包的编号,以及标记为“1”的部分的起始位置信息和结束位置信息。
或者,例如第二数据包有多个不连续的子数据包是接收设备未接收的,则接收设备添加到反馈信息中的第二数据包的信息,可以包括第二数据包的序列号,以及包括其中的每个子数据包的起始位置信息和结束位置信息。或者说,如果第二数据包中包含未接收的多个不连续的子数据包,则在反馈信息中,未接收的多个不连续的子数据包中的每个子数据包,可以由第二数据包的序列号和所述的每个子数据包的起始位置信息和结束位置信息指示。例如对于图6所示的数据包,接收设备添加到反馈信息中的该数据包的信息,就包括该数据包的编号,以及其中的两个标记为“1”的部分的分别的起始位置信息和结束位置信息。
以接收设备的RLC层生成反馈信息为例。可参考图7,为RLC生成的反馈信息的格式的一种示意图,或者说,是承载反馈信息的RLC PDU的一种示意图。图7以接收设备在反馈信息中添加第一数据包的信息和第二数据包的信息,且接收设备对于第一数据包整体未接收,对于第二数据包是部分子数据包未接收,为例。另外,按照正常接收顺序,第一数据包应该在第二数据包之前接收(当然实际的接收顺序可能不一定如此,这里只是为了描述数据包的正常顺序)。
图7的最上方的分割,代表比特(bit),一个小格代表一个比特,可以看到RLC PDU是八进制格式,因此一行包括8个比特。图7中的D/C表示数据(data,D)/控制(control,C),CPT表示控制PDU 类型(control PDU type)。图7中的ACK_SN(在图7中表示为确认应答序列号字段)就表示第一字段,因为图7中的一行只有8个比特,所以第一行剩余的空间不足以承载ACK_SN这个字段,因此在图7中第二行的开头部分,也包括ACK_SN,图7中的第一行的ACK_SN和第二行的ACK_SN,表示的是同一个字段。E1和E2可以视为间隔。ACK_SN可以承载序列号(n+1)的信息,如果该反馈信息只包括第一数据包的信息和第二数据包的信息,那么n可以是第二数据包的序列号,而如果该反馈信息除了包括第一数据包的信息和第二数据包的信息之外还包括其他的数据包的信息,那么n是该反馈信息所指示的数据包中的最晚的数据包的序列号。
在图7的第二行的E1之后的空白区域,可以是NACK_SN字段(在图7中表示为否定应答序列号字段),例如将该NACK_SN字段称为第一NACK_SN字段。直到第三行的E1之前的空白区域,都可以是第一NACK_SN字段。其中,一个NACK_SN字段可以用于承载一个数据包的序列号。因为接收设备是将未接收的数据包的信息顺序添加到反馈信息中,因此第一NACK_SN字段可以承载第一数据包的序列号。因为接收设备对于第一数据包是整体未接收,因此只需添加第一数据包的序列号即可,无需添加第一数据包的子数据包的位置信息,因此在图7中可以看到,在第一NACK_SN字段完结后,间隔E1和E2,之后开始下一个NACK_SN字段,表明接收设备未添加第一数据包的子数据包的位置信息。
在第一NACK_SN字段结束后,间隔E1和E2,开始下一个NACK_SN字段,例如将该NACK_SN字段称为第二NACK_SN字段。直到第五行的E1之前,都是第二NACK_SN字段。第二NACK_SN字段可以承载第二数据包的序列号。因为接收设备是对于第二数据包的部分子数据包未接收,因此接收设备添加到反馈信息中的第二数据包的信息,除了包括第二数据包的序列号之外,还需包括第二数据包中未接收的子数据包的起始位置信息和结束位置信息。第五行的E2之后的空白区域、第六行、以及第七行的SOend(在图7中,将SOend字段称为结束位置信息字段)之前的空白区域,都是SOstart字段(在图7中,将SOstart字段称为起始位置信息字段),一个SOstart字段用于承载一个起始位置信息。在SOstart字段之后,是SOend字段,一个SOend字段用于承载一个结束位置信息。
如果第二数据包中只有一个子数据包未接收(或者说,第二数据包中未接收的部分是连续的),那么接收设备可以将该子数据包的起始位置信息添加到第五行的E2之后的空白区域、第六行、以及第七行的SOend之前的空白区域构成的SOstart字段,以及将该子数据包的结束位置信息添加到第七行的SOstart之后的空白区域、第八行、以及第九行的NACK_SN字段之前的空白区域构成的SOend字段。而在第九行的NACK_SN字段(例如称为第三NACK_SN字段),接收设备可以继续顺序添加其他的未接收的待反馈的数据包的序列号,添加方式如上所述。
或者,如果第二数据包中有多个不连续的子数据包未接收(或者说,第二数据包中未接收的部分是不连续的),那么接收设备可以将多个不连续的子数据包中的第一个子数据包的起始位置信息添加到第五行的E2之后的空白区域、第六行、以及第七行的SOend之前的空白区域构成的SOstart字段,以及将该子数据包的结束位置信息添加到第七行的SOstart之后的空白区域、第八行、以及第九行的NACK_SN字段之前的空白区域构成的SOend字段。而在第九行的第三NACK_SN字段,接收设备可以再添加第二数据包的序列号,在第三NACK_SN字段之后,还会有SOstart字段和SOend字段,分别用于添加多个不连续的子数据包中的第二个子数据包的起始位置信息和结束位置信息,以此类推,直到将多个不连续的子数据包中的最后一个子数据包的起始位置信息和结束位置信息都添加到反馈信息之后,再继续顺序添加其他的未接收的待反馈的数据包的序列号。
其中,图7是以反馈信息既包括只有序列号的数据包的信息,也包括有序列号和位置信息的数据包的信息为例。在实际应用中,反馈信息可以只包括数据包的序列号,而不包括数据包的位置信息。例如 接收设备添加到反馈信息的为数据包1的信息和数据包2的信息,而接收设备对于数据包1和数据包2都是整体未接收,因此反馈信息可以只包括数据包1的序列号和数据包2的序列号。
或者,反馈信息也可以只包括有序列号和位置信息的数据包的信息。例如接收设备添加到反馈信息的为数据包1的信息和数据包2的信息,而接收设备对于数据包1和数据包2都是对于部分子数据包未接收,因此反馈信息所包括的数据包1的信息,可以包括数据包1的序列号,以及数据包1中未接收的子数据包的起始位置信息和结束位置信息,同理,反馈信息所包括的数据包2的信息,可以包括数据包2的序列号,以及数据包2中未接收的子数据包的起始位置信息和结束位置信息。
反馈信息所包括的数据包的信息,究竟包括哪些内容,与接收设备对于数据包的接收情况有关,具体的不做限制。
S42、接收设备向发送设备发送所述反馈信息,发送设备接收来自接收设备的所述反馈信息。
接收设备在生成反馈信息后,可以将反馈信息发送给发送设备,以使得发送设备获得反馈信息。
S43、发送设备根据所述反馈信息确定接收设备未接收的数据包中的待反馈的数据包的信息,以及,所述反馈信息还包括第一字段,所述第一字段承载序列号(n+1)的信息,n为所述反馈信息所指示的数据包中的最晚的数据包的序列号。
发送设备接收反馈信息后,可以确定接收设备未接收的数据包中的待反馈的第一数据包的序列号;或者,确定接收设备未接收的数据包中的待反馈的第二数据包的序列号,以及第二数据包内未接收的子数据包的起始位置信息和结束位置信息;或者,确定接收设备未接收的数据包中的待反馈的第一数据包的序列号,以及,接收设备未接收的数据包中的待反馈的第二数据包的序列号,和第二数据包内未接收的子数据包的起始位置信息和结束位置信息。
发送设备根据反馈信息所包括的数据包的信息,就可以确定这些数据包是接收设备未接收的,从而发送设备可以确定是否要重传这些数据包。例如,对于反馈信息只包括了序列号的数据包,发送设备可以确定接收设备是对于该数据包整体未接收,如果需要重传,则发送设备可以整体重传该数据包;而对于反馈信息包括了序列号和位置信息的数据包,发送设备可以确定接收设备是对于该数据包中的位置信息所指示的部分未接收,如果需要重传,则发送设备可以只重传未接收的子数据包,而无需重传整个数据包,从而节省传输资源。
如果接收设备是终端设备,那么,反馈信息可以是终端设备的基带芯片生成,而S43中所发送的反馈信息,可以是指通过终端设备的天线发出去的经过调制编码等处理后的信号,或者,该反馈信息也可以是终端设备的基带芯片通过与终端设备的射频芯片之间的接口发送给射频芯片的数字信号。
或者,如果接收设备是基站,那么反馈信息是基站生成的,例如是基站的某个或某些处理部件生成,例如可以是基站中的一个或多个芯片生成的。而S43中发送的反馈信息,可以是指通过基站的天线发出去的经过调制编码等处理后的信号,或者,该反馈信息也可以是基站的用于生成反馈信息的部件通过与基站的射频处理部件之间的接口发送给射频处理部件的数字信号。
在本申请实施例中,反馈信息所包括的第一字段承载的是序列号(n+1)的信息,而n是反馈信息所指示的数据包中的最晚的数据包的序列号。在这种方式下,接收设备无需确定除了反馈信息所指示的数据包之外,接收设备的下一个未接收的数据包究竟是哪个,而只需将反馈信息所指示的数据包中的最晚的数据包的下一个数据包的序列号添加到反馈信息即可,减少接收设备的工作量,从而有助于节省设备的功耗。
下面结合附图介绍本申请实施例中用来实现上述方法的装置。因此,上文中的内容均可以用于后续实施例中,重复的内容不再赘述。
图8为本申请实施例提供的通信设备800的示意性框图。示例性地,通信设备800例如为接收设备800。接收设备800可以是终端设备,也可以是网络设备,或者可以是用于完成接收设备的功能的模块,例如芯片系统。接收设备800包括处理模块810和收发模块820。其中,处理模块810可以用于执行图4所示的实施例中由接收设备所执行的除了收发操作之外的全部操作,例如S41,和/或用于支持本文所描述的技术的其它过程。收发模块820可以用于执行图4所示的实施例中由接收设备所执行的全部收发操作,例如图4所示的实施例中的S42,和/或用于支持本文所描述的技术的其它过程。
处理模块810,用于生成反馈信息,所述反馈信息包括接收设备800未接收的数据包中的待反馈的数据包的信息,以及,所述反馈信息还包括第一字段,所述第一字段承载序列号(n+1)的信息,n为所述反馈信息所指示的数据包中的最晚的数据包的序列号;
收发模块820,用于向发送设备发送所述反馈信息。
作为一种可选的实施方式,所述第一字段为确认应答序列号字段。也就是说,第一字段是ACK_SN字段。
作为一种可选的实施方式,所述反馈信息包括接收设备800未接收的数据包中的待反馈的数据包的信息,包括:
所述反馈信息包括接收设备800未接收的数据包中的待反馈的第一数据包的序列号;或,
所述反馈信息包括接收设备800未接收的数据包中的待反馈的第二数据包的序列号,以及所述第二数据包内未接收的子数据包的起始位置信息和结束位置信息;或,
所述反馈信息包括接收设备800未接收的数据包中的待反馈的第一数据包的序列号,以及,包括接收设备800未接收的数据包中的待反馈的第二数据包的序列号,和所述第二数据包内未接收的子数据包的起始位置信息和结束位置信息。
作为一种可选的实施方式,
所述第二数据包中包含未接收的多个不连续子数据包,所述未接收的多个不连续子数据包中的每个子数据包由第二数据包的序列号和所述每个子数据包的起始位置信息和结束位置信息指示。
作为一种可选的实施方式,所述未接收的子数据包为不连续的多个子数据包,所述起始位置信息包括所述未接收的子数据包中的每个子数据包的起始位置信息,所述结束位置信息包括所述未接收的子数据包中的每个子数据包的结束位置信息。
作为一种可选的实施方式,所述序列号(n+1)的信息用于指示序列号为(n+1)的数据包的接收状态,其中,数据包的接收状态包括接收成功或未接收。
应理解,本申请实施例中的处理模块810可以由处理器或处理器相关电路组件实现,收发模块820可以由收发器或收发器相关电路组件实现。
如图9所示,本申请实施例还提供一种通信设备900。示例性地,通信设备900例如为接收设备900。接收设备900可以是终端设备,也可以是网络设备,或者可以是用于完成接收设备的功能的模块,例如芯片系统。接收设备900包括处理器910,存储器920与收发器930,其中,存储器920中存储指令或程序,处理器910用于执行存储器920中存储的指令或程序。存储器920中存储的指令或程序被执行时,该处理器910用于执行上述实施例中处理模块810执行的操作,收发器930用于执行上述实施例中收发模块820执行的操作。
应理解,根据本申请实施例的接收设备800或接收设备900可对应于图4所示的实施例中的接收设备,并且接收设备800或接收设备900中的各个模块的操作和/或功能分别为了实现图4所示的实施例中的相应流程,为了简洁,在此不再赘述。
图10为本申请实施例提供的通信设备1000的示意性框图。示例性地,通信设备1000例如为发送设备1000。发送设备1000可以是终端设备,也可以是网络设备,或者可以是用于完成发送设备的功能的模块,例如芯片系统。发送设备1000包括处理模块1010和收发模块1020。其中,处理模块1010可以用于执行图4所示的实施例中由发送设备所执行的除了收发操作之外的全部操作,例如S43,和/或用于支持本文所描述的技术的其它过程。收发模块1020可以用于执行图4所示的实施例中由发送设备所执行的全部收发操作,例如图4所示的实施例中的S42,和/或用于支持本文所描述的技术的其它过程。
收发模块1020,用于接收来自接收设备的反馈信息;
处理模块1010,用于根据所述反馈信息确定所述接收设备未接收的数据包中的待反馈的数据包的信息,以及,所述反馈信息还包括第一字段,所述第一字段承载序列号(n+1)的信息,n为所述反馈信息所指示的数据包中的最晚的数据包的序列号。
作为一种可选的实施方式,所述第一字段为确认应答序列号字段。也就是说,第一字段为ACK_SN字段。
作为一种可选的实施方式,处理模块1010用于通过如下方式根据所述反馈信息确定所述接收设备未接收的数据包中的待反馈的数据包的信息:
根据所述反馈信息确定所述接收设备未接收的数据包中的待反馈的第一数据包的序列号;或,
根据所述反馈信息确定所述接收设备未接收的数据包中的待反馈的第二数据包的序列号,以及所述第二数据包内未接收的子数据包的起始位置信息和结束位置信息;或,
根据所述反馈信息确定所述接收设备未接收的数据包中的待反馈的第一数据包的序列号,以及,包括所述接收设备未接收的数据包中的待反馈的第二数据包的序列号,和所述第二数据包内未接收的子数据包的起始位置信息和结束位置信息。
作为一种可选的实施方式,所述第二数据包中包含未接收的多个不连续子数据包,所述未接收的多个不连续子数据包中的每个子数据包由第二数据包的序列号和所述每个子数据包的起始位置信息和结束位置信息指示。
作为一种可选的实施方式,所述未接收的子数据包为不连续的多个子数据包,所述起始位置信息包括所述未接收的子数据包中的每个子数据包的起始位置信息,所述结束位置信息包括所述未接收的子数据包中的每个子数据包的结束位置信息。
作为一种可选的实施方式,所述序列号(n+1)的信息用于指示序列号为(n+1)的数据包的接收状态,其中,数据包的接收状态包括接收成功或未接收。
应理解,本申请实施例中的处理模块1010可以由处理器或处理器相关电路组件实现,收发模块1020可以由收发器或收发器相关电路组件实现。
如图11所示,本申请实施例还提供一种通信设备1100。示例性地,通信设备1100例如为发送设备1100。发送设备1100可以是终端设备,也可以是网络设备,或者可以是用于完成发送设备的功能的模块,发送设备1100包括处理器1110,存储器1120与收发器1130,其中,存储器1120中存储指令或程序,处理器1110用于执行存储器1120中存储的指令或程序。存储器1120中存储的指令或程序被执行时,该处理器1110用于执行上述实施例中处理模块1010执行的操作,收发器1030用于执行上述实施例中收发模块1020执行的操作。
应理解,根据本申请实施例的发送设备1000或发送设备1100可对应于图4所示的实施例中的发送设备,并且发送设备1000或发送设备1100中的各个模块的操作和/或功能分别为了实现图4所示的实 施例中的相应流程,为了简洁,在此不再赘述。
本申请实施例还提供一种通信装置,该通信装置可以是终端设备也可以是电路。该通信装置可以用于执行上述图4所示的方法实施例由发送设备或接收设备所执行的动作。可以理解为,当上述图4所示的实施例中的发送设备为终端设备或电路时,一种方式就是可以通过该通信装置实现。当上述图4所示的实施例中的接收设备为终端设备或电路时,一种方式就是可以通过该通信装置实现。
当该通信装置为终端设备时,图12示出了一种简化的终端设备的结构示意图。便于理解和图示方便,图12中,终端设备以手机作为例子。如图12所示,终端设备包括处理器、存储器、射频电路、天线以及输入输出装置。处理器主要用于对通信协议以及通信数据进行处理,以及对终端设备进行控制,执行软件程序,处理软件程序的数据等。存储器主要用于存储软件程序和数据。射频电路主要用于基带信号与射频信号的转换以及对射频信号的处理。天线主要用于收发电磁波形式的射频信号。输入输出装置,例如触摸屏、显示屏,键盘等主要用于接收用户输入的数据以及对用户输出数据。需要说明的是,有些种类的终端设备可以不具有输入输出装置。
当需要发送数据时,处理器对待发送的数据进行基带处理后,输出基带信号至射频电路,射频电路将基带信号进行射频处理后将射频信号通过天线以电磁波的形式向外发送。例如,本申请实施例所述的反馈信息可以是指处理器输出给射频电路的基带信号,或者也可以是指射频电路通过天线向外发出的信号。当有数据发送到终端设备时,射频电路通过天线接收到射频信号,将射频信号转换为基带信号,并将基带信号输出至处理器,处理器将基带信号转换为数据并对该数据进行处理。为便于说明,图12中仅示出了一个存储器和处理器。在实际的终端设备产品中,可以存在一个或多个处理器和一个或多个存储器。存储器也可以称为存储介质或者存储设备等。存储器可以是独立于处理器设置,也可以是与处理器集成在一起,本申请实施例对此不做限制。
在本申请实施例中,可以将具有收发功能的天线和射频电路视为终端设备的收发单元,将具有处理功能的处理器视为终端设备的处理单元。如图12所示,终端设备包括收发单元1210和处理单元1220。收发单元也可以称为收发器、收发机、收发装置等。处理单元也可以称为处理器,处理单板,处理模块、处理装置等。可选的,可以将收发单元1210中用于实现接收功能的器件视为接收单元,将收发单元1210中用于实现发送功能的器件视为发送单元,即收发单元1210包括接收单元和发送单元。收发单元有时也可以称为收发机、收发器、或收发电路等。接收单元有时也可以称为接收机、接收器、或接收电路等。发送单元有时也可以称为发射机、发射器或者发射电路等。
应理解,收发单元1210用于执行上述图4所示的方法实施例中接收设备侧的发送操作和接收操作,处理单元1220用于执行上述图4所示的方法实施例中接收设备侧除了收发操作之外的其他操作。
例如,在一种实现方式中,收发单元1210用于执行图4所示的实施例中的接收设备侧的收发步骤,例如S42,和/或用于支持本文所描述的技术的其它过程。处理单元1220用于执行图4所示的实施例中的接收设备侧除了收发操作之外的其他操作,例如S41,和/或用于支持本文所描述的技术的其它过程。
或者,收发单元1210用于执行上述图4所示的方法实施例中发送设备侧的发送操作和接收操作,处理单元1220用于执行上述图4所示的方法实施例中发送设备侧除了收发操作之外的其他操作。
例如,在一种实现方式中,收发单元1210用于执行图4所示的实施例中的发送设备侧的收发步骤,例如S42,和/或用于支持本文所描述的技术的其它过程。处理单元1220,用于执行图4所示的实施例中的发送设备侧除了收发操作之外的其他操作,例如S43,和/或用于支持本文所描述的技术的其它过程。
当该通信装置为芯片时,该芯片包括收发单元和处理单元。其中,收发单元可以是输入输出电路、 通信接口;处理单元为该芯片上集成的处理器或者微处理器或者集成电路。
本申请实施例中的通信装置为终端设备时,可以参照图13所示的设备。作为一个例子,该设备可以完成类似于图13中处理器1310的功能。在图13中,该设备包括处理器1310,发送数据处理器1320,接收数据处理器1330。上述实施例中的处理模块810可以是图13中的该处理器1310,并完成相应的功能;上述实施例中的收发模块820可以是图13中的发送数据处理器1320,和/或接收数据处理器1330。或者,上述实施例中的处理模块1010可以是图13中的该处理器1310,并完成相应的功能;上述实施例中的收发模块1020可以是图13中的发送数据处理器1320,和/或接收数据处理器1330。
虽然图13中示出了信道编码器、信道解码器,但是可以理解这些模块并不对本实施例构成限制性说明,仅是示意性的。
图14示出本实施例的另一种形式。处理装置1400中包括调制子系统、中央处理子系统、周边子系统等模块。本实施例中的通信装置可以作为其中的调制子系统。具体的,该调制子系统可以包括处理器1403,接口1404。其中,处理器1403完成上述处理模块810的功能,接口1404完成上述收发模块820的功能。或者,处理器1403完成上述处理模块1010的功能,接口1404完成上述收发模块1020的功能。作为另一种变形,该调制子系统包括存储器1406、处理器1403及存储在存储器1406上并可在处理器上运行的程序,该处理器1403执行该程序时实现上述图4所示的方法实施例中发送设备侧或接收设备侧的方法。需要注意的是,所述存储器1406可以是非易失性的,也可以是易失性的,其位置可以位于调制子系统内部,也可以位于处理装置1400中,只要该存储器1406可以连接到所述处理器1403即可。
本申请实施例还提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时可以实现上述方法实施例提供的图4所示的实施例中与接收设备相关的流程。
本申请实施例还提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时可以实现上述方法实施例提供的图4所示的实施例中与发送设备相关的流程。
本申请实施例还提供一种包含指令的计算机程序产品,该指令被执行时执行上述图4所示的方法实施例中接收设备侧的方法。
本申请实施例还提供一种包含指令的计算机程序产品,该指令被执行时执行上述图4所示的方法实施例中发送设备侧的方法。
应理解,本申请实施例中提及的处理器可以是中央处理单元(central processing unit,CPU),还可以是其他通用处理器、数字信号处理器(digital signal processor,DSP)、专用集成电路(application specific integrated circuit,ASIC)、现成可编程门阵列(field programmable gate array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
还应理解,本申请实施例中提及的存储器可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(read-only memory,ROM)、可编程只读存储器(programmable ROM,PROM)、可擦除可编程只读存储器(erasable PROM,EPROM)、电可擦除可编程只读存储器(electrically EPROM,EEPROM)或闪存。易失性存储器可以是随机存取存储器(random access memory,RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(static RAM,SRAM)、动态随机存取存储器(dynamic RAM,DRAM)、同步动态随机存取存储器(synchronous DRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(double data rate SDRAM,DDR SDRAM)、增强型同步动态随机存取存储器(enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器(synchlink DRAM,SLDRAM)和直接内存总线随机存取存储器(direct rambus RAM, DR RAM)。
需要说明的是,当处理器为通用处理器、DSP、ASIC、FPGA或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件时,存储器(存储模块)集成在处理器中。
应注意,本文描述的存储器旨在包括但不限于这些和任意其它适合类型的存储器。
应理解,在本申请的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(read-only memory,ROM)、随机存取存储器(random access memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本申请的具体实施方式,但本申请实施例的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请实施例揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请实施例的保护范围应所述以权利要求的保护范围为准。

Claims (43)

  1. 一种发送反馈信息的方法,其特征在于,包括:
    接收设备生成反馈信息,所述反馈信息包括所述接收设备未接收的数据包中的待反馈的数据包的信息,以及,所述反馈信息还包括第一字段,所述第一字段承载序列号(n+1)的信息,n为所述反馈信息所指示的数据包中的最晚的数据包的序列号;
    所述接收设备向发送设备发送所述反馈信息。
  2. 根据权利要求1所述的方法,其特征在于,所述第一字段为确认应答序列号字段。
  3. 根据权利要求1或2所述的方法,其特征在于,所述反馈信息包括所述接收设备未接收的数据包中的待反馈的数据包的信息,包括:
    所述反馈信息包括所述接收设备未接收的数据包中的待反馈的第一数据包的序列号;或,
    所述反馈信息包括所述接收设备未接收的数据包中的待反馈的第二数据包的序列号,以及所述第二数据包内未接收的子数据包的起始位置信息和结束位置信息;或,
    所述反馈信息包括所述接收设备未接收的数据包中的待反馈的第一数据包的序列号,以及,包括所述接收设备未接收的数据包中的待反馈的第二数据包的序列号,和所述第二数据包内未接收的子数据包的起始位置信息和结束位置信息。
  4. 根据权利要求3所述的方法,其特征在于,
    所述第二数据包中包含未接收的多个不连续子数据包,所述未接收的多个不连续子数据包中的每个子数据包由第二数据包的序列号和所述每个子数据包的起始位置信息和结束位置信息指示。
  5. 根据权利要求3所述的方法,其特征在于,
    所述未接收的子数据包为不连续的多个子数据包,所述起始位置信息包括所述未接收的子数据包中的每个子数据包的起始位置信息,所述结束位置信息包括所述未接收的子数据包中的每个子数据包的结束位置信息。
  6. 根据权利要求1至5任一项所述的方法,其特征在于,所述序列号(n+1)的信息用于指示序列号为(n+1)的数据包的接收状态,其中,数据包的接收状态包括接收成功或未接收。
  7. 一种接收反馈信息的方法,其特征在于,包括:
    发送设备接收来自接收设备的反馈信息;
    所述发送设备根据所述反馈信息确定所述接收设备未接收的数据包中的待反馈的数据包的信息,以及,所述反馈信息还包括第一字段,所述第一字段承载序列号(n+1)的信息,n为所述反馈信息所指示的数据包中的最晚的数据包的序列号。
  8. 根据权利要求7所述的方法,其特征在于,所述第一字段为确认应答序列号字段。
  9. 根据权利要求7或8所述的方法,其特征在于,所述发送设备根据所述反馈信息确定所述接收设备未接收的数据包中的待反馈的数据包的信息,包括:
    所述发送设备根据所述反馈信息确定所述接收设备未接收的数据包中的待反馈的第一数据包的序列号;或,
    所述发送设备根据所述反馈信息确定所述接收设备未接收的数据包中的待反馈的第二数据包的序列号,以及所述第二数据包内未接收的子数据包的起始位置信息和结束位置信息;或,
    所述发送设备根据所述反馈信息确定所述接收设备未接收的数据包中的待反馈的第一数据包的序列号,以及,包括所述接收设备未接收的数据包中的待反馈的第二数据包的序列号,和所述 第二数据包内未接收的子数据包的起始位置信息和结束位置信息。
  10. 根据权利要求9所述的方法,其特征在于,
    所述第二数据包中包含未接收的多个不连续子数据包,所述未接收的多个不连续子数据包中的每个子数据包由第二数据包的序列号和所述每个子数据包的起始位置信息和结束位置信息指示。
  11. 根据权利要求9所述的方法,其特征在于,
    所述未接收的子数据包为不连续的多个子数据包,所述起始位置信息包括所述未接收的子数据包中的每个子数据包的起始位置信息,所述结束位置信息包括所述未接收的子数据包中的每个子数据包的结束位置信息。
  12. 根据权利要求7至11任一项所述的方法,其特征在于,所述序列号(n+1)的信息用于指示序列号为(n+1)的数据包的接收状态,其中,数据包的接收状态包括接收成功或未接收。
  13. 一种通信设备,其特征在于,包括:
    处理器,用于生成反馈信息,所述反馈信息包括所述通信设备未接收的数据包中的待反馈的数据包的信息,以及,所述反馈信息还包括第一字段,所述第一字段承载序列号(n+1)的信息,n为所述反馈信息所指示的数据包中的最晚的数据包的序列号;
    收发器,用于向发送设备发送所述反馈信息。
  14. 根据权利要求13所述的通信设备,其特征在于,所述第一字段为确认应答序列号字段。
  15. 根据权利要求13或14所述的通信设备,其特征在于,所述反馈信息包括所述通信设备未接收的数据包中的待反馈的数据包的信息,包括:
    所述反馈信息包括所述通信设备未接收的数据包中的待反馈的第一数据包的序列号;或,
    所述反馈信息包括所述通信设备未接收的数据包中的待反馈的第二数据包的序列号,以及所述第二数据包内未接收的子数据包的起始位置信息和结束位置信息;或,
    所述反馈信息包括所述通信设备未接收的数据包中的待反馈的第一数据包的序列号,以及,包括所述通信设备未接收的数据包中的待反馈的第二数据包的序列号,和所述第二数据包内未接收的子数据包的起始位置信息和结束位置信息。
  16. 根据权利要求15所述的通信设备,其特征在于,
    所述第二数据包中包含未接收的多个不连续子数据包,所述未接收的多个不连续子数据包中的每个子数据包由第二数据包的序列号和所述每个子数据包的起始位置信息和结束位置信息指示。
  17. 根据权利要求15所述的通信设备,其特征在于,
    所述未接收的子数据包为不连续的多个子数据包,所述起始位置信息包括所述未接收的子数据包中的每个子数据包的起始位置信息,所述结束位置信息包括所述未接收的子数据包中的每个子数据包的结束位置信息。
  18. 根据权利要求13至17任一项所述的通信设备,其特征在于,所述序列号(n+1)的信息用于指示序列号为(n+1)的数据包的接收状态,其中,数据包的接收状态包括接收成功或未接收。
  19. 一种通信设备,其特征在于,包括:
    收发器,用于接收来自接收设备的反馈信息;
    处理器,用于根据所述反馈信息确定所述接收设备未接收的数据包中的待反馈的数据包的信息,以及,所述反馈信息还包括第一字段,所述第一字段承载序列号(n+1)的信息,n为所述反 馈信息所指示的数据包中的最晚的数据包的序列号。
  20. 根据权利要求19所述的通信设备,其特征在于,所述第一字段为确认应答序列号字段。
  21. 根据权利要求19或20所述的通信设备,其特征在于,所述处理器用于通过如下方式根据所述反馈信息确定所述接收设备未接收的数据包中的待反馈的数据包的信息:
    根据所述反馈信息确定所述接收设备未接收的数据包中的待反馈的第一数据包的序列号;或,
    根据所述反馈信息确定所述接收设备未接收的数据包中的待反馈的第二数据包的序列号,以及所述第二数据包内未接收的子数据包的起始位置信息和结束位置信息;或,
    根据所述反馈信息确定所述接收设备未接收的数据包中的待反馈的第一数据包的序列号,以及,包括所述接收设备未接收的数据包中的待反馈的第二数据包的序列号,和所述第二数据包内未接收的子数据包的起始位置信息和结束位置信息。
  22. 根据权利要求21所述的通信设备,其特征在于,
    所述第二数据包中包含未接收的多个不连续子数据包,所述未接收的多个不连续子数据包中的每个子数据包由第二数据包的序列号和所述每个子数据包的起始位置信息和结束位置信息指示。
  23. 根据权利要求21所述的通信设备,其特征在于,
    所述未接收的子数据包为不连续的多个子数据包,所述起始位置信息包括所述未接收的子数据包中的每个子数据包的起始位置信息,所述结束位置信息包括所述未接收的子数据包中的每个子数据包的结束位置信息。
  24. 根据权利要求19至23任一项所述的通信设备,其特征在于,所述序列号(n+1)的信息用于指示序列号为(n+1)的数据包的接收状态,其中,数据包的接收状态包括接收成功或未接收。
  25. 一种通信装置,其特征在于,包括:
    用于生成反馈信息的装置,所述反馈信息包括所述通信装置未接收的数据包中的待反馈的数据包的信息,以及,所述反馈信息还包括第一字段,所述第一字段承载序列号(n+1)的信息,n为所述反馈信息所指示的数据包中的最晚的数据包的序列号;
    用于向发送设备发送所述反馈信息的装置。
  26. 根据权利要求25所述的通信装置,其特征在于,所述第一字段为确认应答序列号字段。
  27. 根据权利要求25或26所述的通信装置,其特征在于,所述反馈信息包括所述通信装置未接收的数据包中的待反馈的数据包的信息,包括:
    所述反馈信息包括所述通信装置未接收的数据包中的待反馈的第一数据包的序列号;或,
    所述反馈信息包括所述通信装置未接收的数据包中的待反馈的第二数据包的序列号,以及所述第二数据包内未接收的子数据包的起始位置信息和结束位置信息;或,
    所述反馈信息包括所述通信装置未接收的数据包中的待反馈的第一数据包的序列号,以及,包括所述通信装置未接收的数据包中的待反馈的第二数据包的序列号,和所述第二数据包内未接收的子数据包的起始位置信息和结束位置信息。
  28. 根据权利要求27所述的通信装置,其特征在于,
    所述第二数据包中包含未接收的多个不连续子数据包,所述未接收的多个不连续子数据包中的每个子数据包由第二数据包的序列号和所述每个子数据包的起始位置信息和结束位置信息指示。
  29. 根据权利要求27所述的通信装置,其特征在于,
    所述未接收的子数据包为不连续的多个子数据包,所述起始位置信息包括所述未接收的子数 据包中的每个子数据包的起始位置信息,所述结束位置信息包括所述未接收的子数据包中的每个子数据包的结束位置信息。
  30. 根据权利要求25至29任一项所述的通信装置,其特征在于,所述序列号(n+1)的信息用于指示序列号为(n+1)的数据包的接收状态,其中,数据包的接收状态包括接收成功或未接收。
  31. 一种通信装置,其特征在于,包括:
    用于接收来自接收设备的反馈信息的装置;
    用于根据所述反馈信息确定所述接收设备未接收的数据包中的待反馈的数据包的信息的装置,以及,所述反馈信息还包括第一字段,所述第一字段承载序列号(n+1)的信息,n为所述反馈信息所指示的数据包中的最晚的数据包的序列号。
  32. 根据权利要求31所述的通信装置,其特征在于,所述第一字段为确认应答序列号字段。
  33. 根据权利要求31或32所述的通信装置,其特征在于,用于根据所述反馈信息确定所述接收设备未接收的数据包中的待反馈的数据包的信息的装置,包括:
    用于根据所述反馈信息确定所述接收设备未接收的数据包中的待反馈的第一数据包的序列号的装置;或,
    用于根据所述反馈信息确定所述接收设备未接收的数据包中的待反馈的第二数据包的序列号,以及所述第二数据包内未接收的子数据包的起始位置信息和结束位置信息的装置;或,
    用于根据所述反馈信息确定所述接收设备未接收的数据包中的待反馈的第一数据包的序列号,以及,包括所述接收设备未接收的数据包中的待反馈的第二数据包的序列号,和所述第二数据包内未接收的子数据包的起始位置信息和结束位置信息的装置。
  34. 根据权利要求33所述的通信装置,其特征在于,
    所述第二数据包中包含未接收的多个不连续子数据包,所述未接收的多个不连续子数据包中的每个子数据包由第二数据包的序列号和所述每个子数据包的起始位置信息和结束位置信息指示。
  35. 根据权利要求33所述的通信装置,其特征在于,
    所述未接收的子数据包为不连续的多个子数据包,所述起始位置信息包括所述未接收的子数据包中的每个子数据包的起始位置信息,所述结束位置信息包括所述未接收的子数据包中的每个子数据包的结束位置信息。
  36. 根据权利要求31至35任一项所述的通信装置,其特征在于,所述序列号(n+1)的信息用于指示序列号为(n+1)的数据包的接收状态,其中,数据包的接收状态包括接收成功或未接收。
  37. 一种终端设备,其特征在于,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时,实现如权利要求1至6中任一项所述的方法,或实现如权利要求7至12中任一项所述的方法。
  38. 一种网络设备,其特征在于,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时,实现如权利要求1至6中任一项所述的方法,或实现如权利要求7至12中任一项所述的方法。
  39. 一种装置,其特征在于,所述装置包括处理器,所述处理器用于与存储器耦合,并读取存储器中的指令并根据所述指令执行如权利要求1至6中任一项所述的方法,或根据所述指令执行如权利要求7至12中任一项所述的方法。
  40. 一种计算机可读存储介质,其特征在于,包括指令,当其在计算机上运行时,使得计算机执行如权利要求1至6中任一项所述的方法,或执行如权利要求7至12中任一项所述的方法。
  41. 一种计算机程序产品,其特征在于,当其在计算机上运行时,使得计算机执行如权利要求1至6中任一项所述的方法,或使得计算机执行如权利要求7至12中任一项所述的方法。
  42. 一种芯片,其特征在于,与存储器相连或者包括存储器,用于读取并执行所述存储器中存储的软件程序,以实现如权利要求1至6中任一项所述的方法,或以实现如权利要求7至12中任一项所述的方法。
  43. 一种通信系统,其特征在于,包括:发送设备与接收设备;
    所述接收设备,用于生成反馈信息,所述反馈信息包括所述接收设备未接收的数据包中的待反馈的数据包的信息,所述反馈信息还包括第一字段,所述第一字段承载序列号(n+1)的信息,n为所述反馈信息所指示的数据包中的最晚的数据包的序列号;向发送设备发送所述反馈信息;
    所述发送设备,用于接收来自接收设备的反馈信息;根据所述反馈信息确定所述接收设备未接收的数据包中的待反馈的数据包的信息。
PCT/CN2020/087483 2019-04-30 2020-04-28 一种发送、接收反馈信息的方法及设备 WO2020221247A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201910360645.9A CN111865503A (zh) 2019-04-30 2019-04-30 一种发送、接收反馈信息的方法及设备
CN201910360645.9 2019-04-30

Publications (1)

Publication Number Publication Date
WO2020221247A1 true WO2020221247A1 (zh) 2020-11-05

Family

ID=72965625

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2020/087483 WO2020221247A1 (zh) 2019-04-30 2020-04-28 一种发送、接收反馈信息的方法及设备

Country Status (2)

Country Link
CN (1) CN111865503A (zh)
WO (1) WO2020221247A1 (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115499932B (zh) * 2021-07-02 2023-07-18 华为技术有限公司 通信方法及装置
CN115733577A (zh) * 2021-08-27 2023-03-03 北京希姆计算科技有限公司 数据传输方法、系统、集成电路、多芯片结构和电子设备
CN114598651B (zh) * 2022-02-15 2024-04-09 阿里巴巴(中国)有限公司 数据传输方法以及装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018203305A1 (en) * 2017-05-05 2018-11-08 Nokia Technologies Oy Radio link control status reporting
WO2018214081A1 (zh) * 2017-05-24 2018-11-29 Oppo广东移动通信有限公司 无线链路控制传输方法及相关产品
US20190053099A1 (en) * 2017-08-10 2019-02-14 Samsung Electronics Co., Ltd. Method and apparatus for data processing in wireless communication system

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101594359B1 (ko) * 2008-01-31 2016-02-16 엘지전자 주식회사 랜덤 접속에서 백오프 정보를 시그널링하는 방법
KR20150090804A (ko) * 2014-01-29 2015-08-06 삼성전자주식회사 이동 통신 시스템에서 복수의 캐리어를 이용하여 데이터를 송수신하는 방법 및 장치
CN104836645B (zh) * 2014-02-12 2018-02-27 普天信息技术研究院有限公司 一种rlc am模式状态反馈传输方法
US10880222B2 (en) * 2017-04-28 2020-12-29 Kt Corporation Method and apparatus for transmitting a RLC layer status report
CN109391376B (zh) * 2017-08-09 2020-12-01 华为技术有限公司 状态报告的发送方法、设备及系统

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018203305A1 (en) * 2017-05-05 2018-11-08 Nokia Technologies Oy Radio link control status reporting
WO2018214081A1 (zh) * 2017-05-24 2018-11-29 Oppo广东移动通信有限公司 无线链路控制传输方法及相关产品
US20190053099A1 (en) * 2017-08-10 2019-02-14 Samsung Electronics Co., Ltd. Method and apparatus for data processing in wireless communication system

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
HUAWEI; HISILICON: "Correction to NR test case 7.1.2.3.9-RLC Reassembling", 3GPP DRAFT; R5-191397, 1 March 2019 (2019-03-01), Athens, Greece, pages 1 - 7, XP051607330 *
HUAWEI; HISILICON: "General RLC impacts", 3GPP DRAFT; R2-1903981, 12 April 2019 (2019-04-12), Xi’an, China, pages 1 - 11, XP051693215 *

Also Published As

Publication number Publication date
CN111865503A (zh) 2020-10-30

Similar Documents

Publication Publication Date Title
TWI716122B (zh) 組播與多播之通訊方法及其裝置
WO2020221247A1 (zh) 一种发送、接收反馈信息的方法及设备
WO2020206616A1 (zh) 直连通信的重传反馈方法、装置及存储介质
US20070002810A1 (en) Apparatus and method of block acknowledgements with reduced recipient state information
EP2441201A1 (en) Use of block acknowledgement policy for wireless networks
EP4120606A1 (en) Harq information transmission method and apparatus
CN113302865B (zh) 通信方法、装置及系统
WO2020192668A1 (zh) 一种控制定时器、数据包处理方法及设备
AU2017412432B2 (en) Data re-transmission control method and related product
US20230188267A1 (en) Indication information receiving method, and apparatus
WO2021233192A1 (zh) 一种无线链路控制状态报告的方法及对应装置
TWI685225B (zh) 通信方法和終端設備
WO2021027854A1 (zh) 一种通信方法及设备
EP3826414B1 (en) Data transmission method and communication device
WO2022011718A1 (zh) 一种通信方法和装置
CN112584430A (zh) 一种通信方法及装置
WO2023093364A1 (zh) 一种通信方法和装置
WO2018076350A1 (zh) 确定接收状态的方法和装置
WO2023151464A1 (zh) 一种通信方法及装置
WO2023207542A1 (zh) 一种通信方法和装置
CN113302999B (zh) 数据调度方法、装置及系统
WO2022170976A1 (zh) 一种数据传输方法及通信装置
WO2022147832A1 (zh) 信息传输方法及相关装置
WO2023273486A1 (zh) 一种数据传输的方法和装置
WO2022151410A1 (zh) 一种传输反馈信息的方法和装置

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 20798802

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 20798802

Country of ref document: EP

Kind code of ref document: A1