WO2016045062A1 - Data packet transmission device, system and method - Google Patents

Data packet transmission device, system and method Download PDF

Info

Publication number
WO2016045062A1
WO2016045062A1 PCT/CN2014/087452 CN2014087452W WO2016045062A1 WO 2016045062 A1 WO2016045062 A1 WO 2016045062A1 CN 2014087452 W CN2014087452 W CN 2014087452W WO 2016045062 A1 WO2016045062 A1 WO 2016045062A1
Authority
WO
WIPO (PCT)
Prior art keywords
data packets
group
data packet
data
packets
Prior art date
Application number
PCT/CN2014/087452
Other languages
French (fr)
Chinese (zh)
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 华为技术有限公司
Priority to PCT/CN2014/087452 priority Critical patent/WO2016045062A1/en
Priority to CN201480026717.1A priority patent/CN105684383A/en
Publication of WO2016045062A1 publication Critical patent/WO2016045062A1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols

Definitions

  • the present invention relates to the field of communications technologies, and in particular, to a device, system, and method for data packet transmission.
  • the Machine to Machine (M2M) system is a concept and a general term for all technologies that enhance the communication and networking capabilities of machine equipment. Many people communicate with each other through machines, such as communication between machines, such as mobile phones, telephones, computers, and fax machines. Another type of technology is designed to establish communication between machines and machines. For example, many intelligent instruments and meters have an interface for M2M communication, which enhances the communication between the instrument and the instrument and between the instrument and the computer. With the development of science and technology, more and more devices have the ability to communicate and connect, and everything on the network has gradually become a reality. Among them, the narrowband M2M system has a low data transmission rate and is sensitive to the terminal cost. Therefore, the terminal adopts a half-duplex frequency division duplex (FDD) method to meet the requirements.
  • FDD frequency division duplex
  • the terminal based on the half-duplex FDD mode also needs to adopt a certain retransmission mechanism to ensure the stability of data transmission.
  • the data packet transmission mechanism of the Hybrid Automatic Repeat Request (HARQ) is widely used in the prior art, and each process is independent of each other.
  • the requesting sender sends a retransmission.
  • the running time of the system when there are multiple (or several) processes on which the data packets are retransmitted multiple times, the transmission progress of the data packets on each process is inconsistent. Therefore, the receiving end cannot assemble the packets in time. Set a larger buffer space for storing packets without successful packet; in addition, in order to be able to group packets at the receiving end, the packets must carry their respective identifiers. Therefore, the complexity and cost of the solution implementation are greatly improved.
  • the present invention provides an apparatus, system and method for data packet transmission for reducing implementation complexity and cost.
  • a first aspect of the present invention provides an apparatus for data packet transmission, the apparatus being applied to a half-duplex frequency division duplex machine-to-machine system, comprising:
  • a sending module configured to send a set of data packets to the peer end, where the set of data packets includes n data packets; and is further configured to send the next group to the peer end when the set of data packets is successfully sent data pack;
  • a processing module configured to sequentially correspond to the n data packets to n processes, where n is a positive integer greater than or equal to two, and the n ⁇ maximum number of processes.
  • the method further includes:
  • a receiving module configured to receive a receiving response message sent by the peer end, where the receiving response message carries a receiving failure information of the data packet, and/or a receiving success information of the data packet;
  • the sending module is further configured to retransmit the data packet corresponding to the receiving failure information of the data packet if the receiving response message includes the receiving failure information of the data packet.
  • the receiving failure information of the data packet is a data packet retransmission indication, where the data packet retransmission indication is used to indicate re Transmitting m data packets, the m being a positive integer greater than zero, and m ⁇ n;
  • the sending module is specifically configured to retransmit the m data packets on the m processes according to the data packet retransmission indication; specifically, the m data packets are successfully sent, and then Sending the next set of data packets to the peer.
  • the processing module is further configured to: if the retransmission times of the at least one of the data packets exceed the preset maximum data packet size The number of retransmissions stops retransmission of at least one of the data packets.
  • the processing module is further configured to determine whether the number of retransmissions of the group of data packets exceeds a maximum number of retransmissions of the group ;
  • the sending module is further configured to retransmit the group of data packets if the number of retransmissions of the group of data packets does not exceed the maximum number of retransmissions of the group; or
  • the processing module is further configured to discard the set of data packets if the number of retransmissions of the set of data packets exceeds a maximum number of retransmissions of the group;
  • the sending module is further configured to send the next group of data packets to the peer end.
  • the receiving failure information of the data packet is a group retransmission indication, where the group retransmission indication is used to indicate that the a set of data packets for retransmission;
  • the processing module is further configured to determine whether the number of retransmissions of the group of data packets exceeds a maximum number of retransmissions of the group;
  • the sending module is further configured to: if the number of retransmissions of the group of data packets does not exceed the maximum number of retransmissions of the group, retransmit the group of data packets according to the group retransmission indication; or
  • the processing module is further configured to discard the set of data packets if the number of retransmissions of the set of data packets exceeds a maximum number of retransmissions of the group;
  • the sending module is further configured to send the next set of data packets to the opposite end; and is further configured to send the next set of data packets to the opposite end until the n data packets are successfully sent.
  • the data packet is an unsplit original data packet, and/or the The data packet is a sub-data packet obtained by splitting the original data packet;
  • the header of at least one of the sub-packets includes group package indication information
  • the group package indication information is used by the opposite end to receive at least two After the sub-data packet, grouping at least two of the sub-data packets according to the group packet indication information
  • the packet header of at least one of the sub-data packets includes the group packet indication information, and each of the original data packets carries an identifier, The identifier is used by the peer to identify the original data packet.
  • a second aspect of the present invention provides an apparatus for data packet transmission, the method being applied to a half-duplex frequency division duplex machine-to-machine system, comprising:
  • a receiving module configured to receive a set of data packets sent by the peer end, where the set of data packets includes n data packets, where the n data packets respectively correspond to n processes in sequence, and the n is greater than or equal to two a positive integer, and the n ⁇ maximum number of processes;
  • a processing module configured to: when the group of data packets is successfully received, instruct the receiving module to receive the next group of data packets sent by the peer end.
  • the method further includes:
  • a sending module configured to send a receiving response message to the peer end, where the receiving response message carries a receiving failure information of the data packet, and/or a receiving success information of the data packet;
  • the receiving module is further configured to: if the receiving response message includes a receiving failure information of the data packet, And receiving a data packet corresponding to the receiving failure information of the data packet retransmitted by the peer end.
  • the receiving failure information of the data packet is a data packet retransmission indication, where the data packet retransmission indication is used to indicate The opposite end retransmits m data packets, where m is a positive integer greater than zero, and m ⁇ n;
  • the receiving module is specifically configured to receive, by the m processes, the m data packets that are retransmitted by the peer end, and specifically, to receive the data packets until the m data packets are successfully received, and then receive the pair. The next set of packets sent by the end.
  • the method further includes:
  • the receiving failure information of the data packet is a group retransmission indication, and the group retransmission indication is used to instruct the peer to retransmit the group of data packets.
  • the data packet is an unsplit original data packet, and/or the The data packet is a sub-data packet obtained by splitting the original data packet;
  • the processing module is further configured to: Two of the sub-packets are grouped; or,
  • the processing module is further configured to identify the original data packet according to the identifier.
  • a third aspect of the present invention provides an apparatus for data packet transmission, the apparatus being applied to a half-duplex frequency division duplex machine-to-machine system, comprising:
  • a transmitter configured to send a set of data packets to the peer end, where the set of data packets includes n data packets; and is further configured to send the next group to the peer end when the set of data packets is successfully sent data pack;
  • a processor configured to sequentially correspond to the n data packets to n processes, where n is a positive integer greater than or equal to two, and the n ⁇ maximum number of processes.
  • the method further includes:
  • a receiver configured to receive a receiving response message sent by the peer end, where the receiving response message carries a receiving failure information of the data packet, and/or a receiving success information of the data packet;
  • the transmitter is further configured to: if the receiving response message includes a receiving failure information of the data packet, Then, the data packet corresponding to the reception failure information of the data packet is retransmitted.
  • the receiving failure information of the data packet is a data packet retransmission indication, where the data packet retransmission indication is used to indicate re Transmitting m data packets, the m being a positive integer greater than zero, and m ⁇ n;
  • the transmitter is specifically configured to retransmit the m data packets on the m processes according to the data packet retransmission indication; specifically, the m data packets are successfully sent, and then Sending the next set of data packets to the peer.
  • the processor is further configured to: if the retransmission times of the at least one of the data packets exceed the preset maximum data packet size The number of retransmissions stops retransmission of at least one of the data packets.
  • the processor is further configured to determine whether the number of retransmissions of the group of data packets exceeds a maximum number of retransmissions of the group ;
  • the transmitter is further configured to retransmit the group of data packets if the number of retransmissions of the group of data packets does not exceed the maximum number of retransmissions of the group; or
  • the processor is further configured to discard the set of data packets if the number of retransmissions of the set of data packets exceeds a maximum number of retransmissions of the group;
  • the transmitter is further configured to send the next group of data packets to the peer end.
  • the receiving failure information of the data packet is a group retransmission indication, where the group retransmission indication is used to indicate that the a set of data packets for retransmission;
  • the processor is further configured to determine whether the number of retransmissions of the group of data packets exceeds a maximum number of retransmissions of the group;
  • the transmitter is further configured to: if the number of retransmissions of the group of data packets does not exceed the maximum number of retransmissions of the group, retransmit the group of data packets according to the group retransmission indication; or
  • the processor is further configured to discard the set of data packets if the number of retransmissions of the set of data packets exceeds a maximum number of retransmissions of the group;
  • the transmitter is further configured to send the next set of data packets to the opposite end; and is further configured to send the next set of data packets to the opposite end until the n data packets are successfully sent.
  • the data packet is an unsplit original data packet, and/or the data packet is a sub-data packet obtained by splitting the original data packet;
  • the header of at least one of the sub-packets includes group package indication information
  • the group package indication information is used by the opposite end to receive at least two After the sub-data packet, grouping at least two of the sub-data packets according to the group packet indication information
  • the packet header of at least one of the sub-data packets includes the group packet indication information, and each of the original data packets carries an identifier, The identifier is used by the peer to identify the original data packet.
  • a fourth aspect of the present invention provides an apparatus for data packet transmission, the method being applied to a half-duplex frequency division duplex machine-to-machine system, comprising:
  • a receiver configured to receive a set of data packets sent by the peer end, where the set of data packets includes n data packets, where the n data packets respectively correspond to n processes in sequence, and the n is greater than or equal to two a positive integer, and the n ⁇ maximum number of processes;
  • a processor configured to: when the group of data packets is successfully received, instruct the receiver to receive the next group of data packets sent by the peer end.
  • the method further includes:
  • a transmitter configured to send a receiving response message to the peer end, where the receiving response message carries a receiving failure information of the data packet, and/or a receiving success information of the data packet;
  • the receiver is further configured to: if the receiving response message includes the receiving failure information of the data packet, receive the data packet corresponding to the receiving failure information of the data packet retransmitted by the opposite end.
  • the receiving failure information of the data packet is a data packet retransmission indication, where the data packet retransmission indication is used to indicate The opposite end retransmits m data packets, where m is a positive integer greater than zero, and m ⁇ n;
  • the receiver is specifically configured to receive, by the m processes, the m data packets that are retransmitted by the peer end, and specifically, to receive the data packets until the m data packets are successfully received, and then receive the pair. The next set of packets sent by the end.
  • the method further includes:
  • the receiving failure information of the data packet is a group retransmission.
  • the group retransmission indication is used to instruct the peer to retransmit the set of data packets.
  • the data packet is an unsplit original data packet, and/or the The data packet is a sub-data packet obtained by splitting the original data packet;
  • the processor is further configured to receive, by the peer, at least two After the sub-data packet, grouping at least two of the sub-data packets according to the group packet indication information;
  • the packet header of at least one of the sub-data packets includes the group packet indication information, and each of the original data packets carries an identifier
  • the processor is further configured to identify the original data packet according to the identifier.
  • a fifth aspect of the present invention provides a packet transmission system, comprising: at least one apparatus of the packet transmission and at least one second of any one of the foregoing possible implementation manners of the first aspect or the first aspect
  • the apparatus of the data packet transmission of any one of the foregoing possible implementations of the second aspect, or the data of any one of the foregoing possible implementation manners of the third aspect or the third aspect Apparatus for packet transmission and apparatus for data packet transmission according to at least one of the fourth aspect or any one of the above possible implementations of the fourth aspect.
  • a sixth aspect of the present invention provides a method of data packet transmission, the method being applied to a half-duplex frequency division duplex machine-to-machine system, comprising:
  • the method before the sending of the next set of data packets to the opposite end, when the sending of the set of data packets is successful, the method further includes:
  • the method further includes:
  • the receiving response message includes the receiving failure information of the data packet, retransmitting the data packet corresponding to the receiving failure information of the data packet.
  • the receiving failure information of the data packet is a data packet retransmission indication, where the data packet retransmission indication is used to indicate re Transmitting m data packets, the m being a positive integer greater than zero, and m ⁇ n;
  • sending the next set of data packets to the peer end including:
  • the m data packets are respectively performed on m processes according to the data packet retransmission indication Before retransmission, it also includes:
  • the method further includes:
  • the set of data packets is discarded, and the next set of data packets is sent to the opposite end.
  • the receiving failure information of the data packet is a group retransmission indication, where the group retransmission indication is used to indicate that the a set of data packets for retransmission;
  • sending the next set of data packets to the peer end including:
  • the data packet is an unsplit original data packet, and/or The data packet is a sub-data packet obtained by splitting the original data packet;
  • the header of at least one of the sub-packets includes group package indication information
  • the group package indication information is used by the opposite end to receive at least two After the sub-data packet, grouping at least two of the sub-data packets according to the group packet indication information
  • the packet header of at least one of the sub-data packets includes the group packet indication information, and each of the original data packets carries an identifier, The identifier is used by the peer to identify the original data packet.
  • a seventh aspect of the present invention provides a method of data packet transmission, the method being applied to a half-duplex frequency division duplex machine-to-machine system, comprising:
  • the set of data packets includes n data packets, where the n data packets are respectively corresponding to n processes in sequence, and the n is a positive integer greater than or equal to two, and The n ⁇ the maximum number of processes;
  • the method before receiving the next set of data packets sent by the peer end, when the receiving of the set of data packets is successful, the method further includes:
  • the receiving response message carries the receiving failure information of the data packet, and/or the receiving success information of the data packet;
  • the method further includes:
  • the receiving response message includes the receiving failure information of the data packet, receiving the data packet corresponding to the receiving failure information of the data packet retransmitted by the opposite end.
  • the receiving failure information of the data packet is a data packet retransmission indication, where the data packet retransmission indication is used to indicate The opposite end retransmits m data packets, where m is a positive integer greater than zero, and m ⁇ n;
  • Receiving, by the peer, the data packet corresponding to the reception failure information of the data packet retransmitted by the peer end include:
  • the method further includes:
  • the receiving failure information of the data packet is a group retransmission indication, and the group retransmission indication is used to instruct the peer to retransmit the group of data packets.
  • the data packet is an unsplit original data packet, and/or the The data packet is a sub-data packet obtained by splitting the original data packet;
  • the header of at least one of the sub-packets includes packet indication information, and after receiving at least two of the sub-packets, according to the group of packets Instructing to group at least two of the sub-packets; or
  • the packet header of at least one of the sub-data packets includes the group packet indication information, and each of the original data packets carries an identifier, Identifying the original data packet based on the identification.
  • a device for transmitting a data packet transmits a set of data packets to a peer end, where the set of data packets includes n data packets, and the n data packets are sent.
  • the time corresponds to n processes in sequence, the n is a positive integer greater than or equal to two, and the n is the maximum number of processes, and further, when the set of data packets is successfully transmitted, the device for transmitting the data packet The next set of data packets is sent to the opposite end.
  • a multi-process data transmission scheme is adopted, data packets are respectively transmitted on a corresponding process, and multiple processes are interleaved with each other, that is, when one process is waiting for the receiving end to return a receiving response message, the other The process is still able to transfer packets.
  • the system needs to have a complex sorting function. In order to be able to assemble and identify at the receiving end, the system needs a complex unpacking package.
  • the sender needs to maintain a large cache to store packets that have not been sent successfully or need to be retransmitted, and the receiver needs to maintain a large cache to store unsuccessful success, not grouped. A successful packet of packets.
  • the prior art adopts a multi-process approach, which increases the cost and complexity of system implementation.
  • the embodiment of the present invention ensures that only after a group of data packets is successfully transmitted, the next group of data packets is transmitted, so that the sender only needs to cache a group of data packets at most.
  • the receiving end only needs to cache a maximum of one group of data packets or packets that are not successfully packaged (when a group packet is required), thereby saving resources.
  • the next group of data packets is transmitted. In this way, the transmission progress of each data packet is different due to the continuous transmission of the data packet, and the complex identification, grouping, and retransmission mechanism needs to be set. Therefore, the method for transmitting the data packet provided by the embodiment of the present invention is reduced. The cost and complexity of the solution implementation when the half-duplex FDD is transmitted.
  • FIG. 1 is a schematic structural diagram of an apparatus for transmitting a data packet according to an embodiment of the present invention
  • FIG. 2 is a schematic structural diagram of another apparatus for data packet transmission according to an embodiment of the present invention.
  • FIG. 3 is a schematic structural diagram of another apparatus for data packet transmission according to an embodiment of the present disclosure.
  • FIG. 4 is a schematic structural diagram of another apparatus for data packet transmission according to an embodiment of the present invention.
  • FIG. 5 is a schematic diagram of another apparatus for transmitting data in a wireless network according to an embodiment of the present invention.
  • FIG. 6 is a block diagram showing a part of a structure of a mobile phone related to a device for transmitting data in a wireless network according to an embodiment of the present invention
  • FIG. 7 is a schematic flowchart of a method for data packet transmission according to an embodiment of the present disclosure.
  • FIG. 8 is a schematic flowchart of another method for data packet transmission according to an embodiment of the present invention.
  • FIG. 9 is a schematic diagram of a method for retransmitting a data packet according to an embodiment of the present invention.
  • FIG. 10 is a schematic diagram of another method for retransmitting a data packet according to an embodiment of the present invention.
  • FIG. 11 is a schematic flowchart diagram of another method for data packet transmission according to an embodiment of the present disclosure.
  • FIG. 12 is a schematic flowchart diagram of another method for data packet transmission according to an embodiment of the present disclosure.
  • FIG. 13 is a schematic diagram of interaction of another method for data packet transmission according to an embodiment of the present invention.
  • the terminal of the M2M system adopts the half-duplex FDD transmission mode
  • the prior art adopts a multi-process transmission data scheme
  • the data packets are respectively transmitted on a corresponding process, and the multiple processes are independent and interleaved. That is, when a certain process is waiting for the receiving end to return a receiving response message, the other processes can still transmit the data packet.
  • the transmission progress of each data packet is different.
  • the system needs to have the function of reordering, and the complexity of the grouping mechanism is high.
  • the receiver also needs to maintain a large cache to store packets that are not successfully packaged or are waiting to be retransmitted.
  • adopting a multi-process approach will increase the cost and complexity of system implementation.
  • the prior art also provides a single-process transmission mode, that is, the transmitting end waits for the receiving end to receive a response message after transmitting a data packet, and when the data packet is correctly decoded at the receiving end, the returned receiving response message includes the confirmation information.
  • ACK indicating that the data packet is successfully received by the transmitting end; otherwise, the returned receiving response message includes non-acknowledgement information (NACK), indicating that the data packet is not received by the transmitting end, and the transmitting end receives the non-acknowledgment information, then the data is received.
  • the package is retransmitted. And the transmitting end cannot send other data packets while the transmitting end waits for the receiving end to confirm.
  • the single-process transmission mode if the single-process transmission mode is used, if a packet is sent out as a whole, when the reception fails, the entire large data packet needs to be retransmitted, thereby causing waste of resources and reducing efficiency.
  • the embodiments of the present invention provide a device, a method, and a system for data packet transmission, which can reduce the cost of implementing the solution while ensuring transmission efficiency and system throughput. the complexity.
  • the apparatus is applied to a half-duplex FDD machine-to-machine system, and the apparatus is used as a transmitting end of a data packet.
  • the apparatus may be Base station, machine, water meter with electricity function, meter reading, mobile phone, communication device supporting various communication systems (2G/3G/4G/5G/wifi/Bluetooth, etc.), M2M terminal, refer to FIG.
  • the processing module 100 includes a processing module 100.
  • the sending module 101 is configured to send a set of data packets to the peer end, where the set of data packets includes n data packets, and is further configured to send the next data to the opposite end when the set of data packets is successfully sent.
  • Group data packet
  • the processing module 100 is configured to sequentially sequence the n data packets corresponding to n processes, where n is a positive integer greater than or equal to two, and the n ⁇ maximum number of processes.
  • the device for transmitting a data packet provided by the embodiment of the present invention sends a set of data packets to the opposite end by the sending module, where the set of data packets includes n data packets, and the processing module sequentially sends the n data packets when transmitting.
  • the n is a positive integer greater than or equal to two, and the n ⁇ the maximum number of processes.
  • the sending module sends the next set of data packets to the opposite end when the set of data packets is successfully sent.
  • the embodiment of the present invention ensures that only after a group of data packets is successfully transmitted, the next group of data packets is transmitted, and the transmitting end only needs to cache a group of data packets at the receiving end. It is also only necessary to cache a maximum of one group of packets or a packet that is not successfully packaged (when a package is required), thereby saving resources, and further, a method of transmitting a next set of data packets after a successful transmission of a set of data packets is performed.
  • the transmission progress of each data packet is different due to the continuous transmission of data packets, so that a complex identification, grouping, and retransmission mechanism needs to be set.
  • the device for transmitting data packets provided by the embodiments of the present invention ensures transmission efficiency and system throughput. At the same time, it can reduce the cost and complexity of the solution implementation.
  • the embodiment of the present invention can send a group of data packets each time, can quickly send data packets, save terminal power consumption, and improve throughput of data packet transmission.
  • the device for transmitting the data packet cancels the Radio Link Control (RLC) layer and media access.
  • the Medium Access Control (MAC) layer supports simple unpacking and grouping functions. The MAC layer will need to be removed according to the real-time situation of the channel.
  • the divided data packets are split into data packets of appropriate size, and the data packets of the MAC layer may be original data packets or sub-data packets. In a group of data packets, the data packet is an unpacked original data packet, and/or the data packet is a sub-data packet obtained by splitting the original data packet.
  • a group of data packets including the type of the data packet may have the following possibilities: 1. A group of data packets only includes multiple sub-data packets obtained by splitting the original data packet; 2. A group of data packets includes all of the data packets. Split original data packet; Third, a group of data packets contains multiple sub-packets obtained by splitting the original data packet and unpacked original data packets.
  • the processing module 100 may tear down the original data packet.
  • the method is divided into a plurality of sub-packets.
  • the size of the threshold is not limited in this embodiment.
  • the threshold may be set according to system requirements in different scenarios.
  • the header of at least one of the sub-packets includes group package indication information, where the group package indication information is used by the peer end After receiving at least two of the sub-data packets, grouping at least two of the sub-data packets according to the group package indication information;
  • a group of data packets includes multiple sub-data packets obtained by splitting the original data packet
  • the sub-packet is grouped.
  • a possible implementation manner is that the last sub-packet belonging to the original data packet should include an indication that the sub-packet is the last data packet.
  • each group of data packets may not carry the above-mentioned indication information.
  • each group of data packets transmitted by the preset transmitting end and the receiving end only includes a plurality of sub-data packets obtained by splitting one original data packet, and after receiving the data packet, the receiving end groups the data packet. Just fine.
  • each type of the data packet corresponds to a transmission mode
  • each group of data packets only includes one by splitting the original
  • the plurality of sub-packets obtained by the data packet adopt a specific transmission mode
  • the transmitting end notifies the receiving end
  • each group of data packets transmitted thereafter only includes a plurality of sub-packets obtained by splitting one original data packet, and then the group data is The packet does not need to carry the indication information, and after receiving the group of data packets, the receiving end can group the group of data packets.
  • the header of at least one of the sub-data packets includes the group package indication information, and each of the original The data packet carries an identifier for the peer to identify the original data packet.
  • each sub-packet carries a 1 bit (0/1) indication, 1 indicates the last sub-packet or the unsplit original data packet, and 0 indicates the non-last sub-packet; for example, sending The end splits an original data packet into five sub-packets, which also include two other unsplit original data packets, for a total of seven data packets.
  • the packet indication information carried by the first to fourth sub-packets is “0”, and the packet indication information carried by the last sub-packet is “1”.
  • the packet indication information carried by the packet is "1".
  • the packet indication information carried by the packet is "1".
  • FIG. 2 is a schematic structural diagram of another apparatus for data packet transmission according to an embodiment of the present invention.
  • the apparatus further includes: a receiving module 102.
  • the receiving module 102 is configured to receive the receiving response message sent by the opposite end, where the receiving response message carries the receiving failure information of the data packet, and/ Or the success message of receiving the data packet;
  • the sending module 101 is further configured to: if the receiving response message includes receiving failure information of the data packet, retransmitting the data packet corresponding to the receiving failure information of the data packet.
  • the apparatus for transmitting a data packet provided by the embodiment of the present invention
  • a retransmission mechanism needs to be introduced to ensure the reliability of the data packet transmission.
  • the packet retransmission mechanism of the apparatus for data packet transmission according to the embodiment of the present invention is described below by using a specific embodiment. It should be noted that the following embodiments of the present invention are only implemented by using several possible implementation manners as an example. It is to be understood that it does not limit the scope of protection of the present invention. Based on the method for data packet transmission provided by the embodiments of the present invention, other possible data packet retransmission mechanisms should also fall within the protection scope of the present invention.
  • the receiving end sends the receiving failure information of the data packet to the receiving module 102 of the sending end, and the function is to notify the sending end which data packet transmission fails, and further, the data packet
  • the receive failure information can be used to indicate a group of packet transmission failures, and can also be used to indicate that one or more packets in a group of packets failed to transmit. The following two possible scenarios are illustrated by specific embodiments:
  • the receiving failure information of the data packet is a data packet retransmission indication, where the data packet retransmission indication is used to indicate retransmission of the m data packets, where m is a positive integer greater than zero, and m ⁇ n;
  • the sending module 101 is specifically configured to retransmit the m data packets on the m processes according to the data packet retransmission indication; specifically, the m data packets are successfully sent until the m packets are successfully sent. And sending the next set of data packets to the opposite end.
  • processing module 100 is further configured to stop retransmission of at least one of the data packets if the number of retransmissions of the at least one data packet exceeds a preset maximum number of retransmissions of the data packet.
  • the processing module 100 is further configured to determine the group. Whether the number of retransmissions of the packet exceeds the maximum number of retransmissions of the group;
  • the sending module 101 is further configured to retransmit the group of data packets if the number of retransmissions of the group of data packets does not exceed the maximum number of retransmissions of the group; or
  • the processing module 100 is further configured to discard the set of data packets if the number of retransmissions of the set of data packets exceeds the maximum number of retransmissions of the group;
  • the sending module 101 is further configured to send the next group of data packets to the peer end.
  • Case 2 the receiving failure information of the data packet is a group retransmission indication, and the group retransmission indication is used to indicate that the group of data packets is retransmitted;
  • the processing module 100 is further configured to determine whether the number of retransmissions of the group of data packets exceeds a maximum number of retransmissions of the group;
  • the sending module 101 is further configured to: if the number of retransmissions of the group of data packets does not exceed the maximum number of retransmissions of the group, retransmit the group of data packets according to the group retransmission indication; or
  • the processing module 100 is further configured to: if the number of retransmissions of the set of data packets exceeds the maximum of the group If the number of retransmissions is large, the set of data packets is discarded;
  • the sending module 101 is further configured to send the next set of data packets to the opposite end; and is further configured to send the next set of data packets to the opposite end until the n data packets are successfully sent.
  • the receiving failure information of the data packet also indicates that one or more data packet retransmission failures of the m retransmitted data packets fails, and the sending module 101 of the transmitting end performs retransmission according to the receiving failure information of the data packet.
  • the processing module 100 or the receiving end of the sending end may set the maximum number of retransmissions of the data packet and the maximum number of retransmissions of the group, and maintain the number of retransmissions of each data packet and the number of retransmissions of each group of data packets, when one Before the data packet is retransmitted, the number of retransmissions of the current data packet is compared with the maximum number of retransmissions of the data packet. If the maximum number of retransmissions of the data packet is not exceeded, the sending module 101 is allowed to retransmit the data packet, and After the retransmission, the processing module 100 adds "1" to the number of retransmissions of the data packet.
  • the processing module 100 abandons retransmission of the data packet; 2.
  • the processing module 100 further determines the current data of a group of data packets to which the data packet belongs. Whether the number of group retransmissions exceeds the maximum number of retransmissions in the group. For the second processing mode, if the maximum number of retransmissions of the group is not exceeded, the sending module 101 of the transmitting end retransmits the group of data packets; or, if the maximum number of retransmissions of the group is exceeded, the processing module 100 discards the group of data packets. And instructing the sending module 101 to send the next set of data packets.
  • the processing module 100 or the receiving end of the sending end maintains a timer for each data packet, and maintains a timer for each group of data packets.
  • the sending end when the sending module 101 sends a set of data packets, For each data packet in the group of data packets, the processing module 100 at the transmitting end respectively maintains a timer, and the timer functions to time the transmission time of each data packet, and each data packet in the transmission time.
  • the number of retransmissions is not limited. When the transmission time of the data packet exceeds the upper limit of the transmission time preset by the corresponding timer, the transmission of the data packet is abandoned.
  • the processing module 100 of the transmitting end can also maintain a timer for a group of data packets, and the timer is used to time the transmission time of a group of data packets, and the retransmission of the group of data packets during the transmission time.
  • the timer is used to time the transmission time of a group of data packets, and the retransmission of the group of data packets during the transmission time.
  • it is not limited.
  • the transmission time of the group of data packets exceeds the upper limit of the transmission time preset by the corresponding timer, the transmission of the group of data packets is abandoned, and the transmission of the next group of data packets is performed.
  • the receiver can maintain a similar timer, for each packet and the transmission time of each group of packets. Row timing, which abandons transmission after a packet or group of packets exceeds a predetermined transmission time.
  • the receiving end performs the transmission time counting by the timer, when a data packet or a group of data packets is discarded, the receiving response message fed back to the transmitting end does not carry the receiving failure information of the data packet, so that The sender does not retransmit the corresponding data packet or a group of data packets.
  • the data packet retransmission mechanism ensures that when one or several data packets in a group of data packets fail to be received, by setting a data packet retransmission and a group of data packets to retransmit two retransmission mechanisms.
  • the processing module 100 of the sending end instructs the sending module 101 to retransmit one or several data packets that failed to be transmitted according to the receiving response message fed back by the receiving end; or, retransmit a group of data packets.
  • a group of data packets may include several sub-packets obtained by splitting one original data packet, and when the sub-data packet fails to be received, the transmitting end only retransmits and transmits.
  • the packet retransmission mechanism provided by the embodiment of the present invention saves the resources occupied by the transmission and improves the transmission efficiency, compared with the prior art that uses the single-process transmission.
  • FIG. 3 is a schematic structural diagram of another apparatus for transmitting a data packet according to an embodiment of the present disclosure.
  • the apparatus is applied to a half-duplex FDD machine-to-machine system, and the apparatus is used as a receiving end of a data packet.
  • the apparatus may be For base station, machine, water meter, electric meter with communication function, mobile phone, communication device supporting various communication systems (2G/3G/4G/5G/wifi/Bluetooth, etc.), M2M terminal, refer to Figure 1,
  • the device includes: a receiving module 202 and a processing module 200.
  • the receiving module 202 is configured to receive a set of data packets sent by the peer end, where the set of data packets includes n data packets, where the n data packets are respectively corresponding to n processes in sequence, and the n is greater than or equal to a positive integer of two, and the n ⁇ maximum number of processes;
  • the processing module 200 is configured to, when the group of data packets is successfully received, instruct the receiving module 202 to receive the next group of data packets sent by the peer end.
  • the apparatus for transmitting data packets receives a set of data packets sent by the opposite end by the receiving module, where the set of data packets includes n data packets, and the n data packets are respectively corresponding to n in sequence.
  • the n is a positive integer greater than or equal to two, and the n ⁇ the maximum number of processes, the processing module, when the group of data packets is successfully received, instructing the receiving module to receive the next A set of data packets.
  • the embodiment of the present invention ensures that only after a group of data packets is successfully transmitted, the next group of data packets is received, so that the device only needs to cache the most before receiving successfully.
  • the packet transmission device reduces the cost and complexity of the solution implementation when using a half-duplex FDD transmission mode.
  • the embodiment of the present invention can receive a group of data packets each time, can quickly receive data packets, save terminal power consumption, and improve throughput of data packet transmission.
  • the data packet received by the receiving module 202 in this embodiment may be an unsplit original data packet, and/or the data packet is a sub-data packet obtained by splitting the original data packet.
  • the splitting of data packets and the composition of a set of data packets the above has been described in detail, and will not be described here.
  • FIG. 4 is a schematic structural diagram of another apparatus for transmitting a data packet according to an embodiment of the present invention.
  • the apparatus further includes: sending Module 201.
  • the sending module 201 is configured to send a receiving response message to the peer end, where the receiving response message carries the receiving failure information of the data packet, and/or the receiving success information of the data packet;
  • the receiving module 202 is further configured to: if the receiving response message includes the receiving failure information of the data packet, receive the data packet corresponding to the receiving failure information of the data packet retransmitted by the opposite end.
  • the sending module 201 of the receiving end sends the receiving failure information of the data packet to the sending end, so as to inform the transmitting end which data packet transmission fails, and further, the data packet
  • the receive failure information can be used to indicate a group of packet transmission failures, and can also be used to indicate that one or more packets in a group of packets failed to transmit. The following two possible scenarios are illustrated by specific embodiments:
  • the receiving failure information of the data packet is a data packet retransmission indication, where the data packet retransmission indication is used to instruct the peer end to retransmit the m data packets, where m is a positive integer greater than zero And m ⁇ n;
  • the receiving module 202 is specifically configured to receive, by using m processes, the m data packets that are retransmitted by the peer end, and specifically, for receiving, by the m, the data packets are successfully received, and then receiving the The next set of data packets sent by the peer.
  • the receiving failure information of the data packet is a group retransmission indication
  • the group retransmission indication is used to instruct the peer to retransmit the set of data packets.
  • the function is: when the group of data packets fails to receive, or the group packet fails, the group retransmission indication is used to cause the sender to retransmit the group of data packets.
  • the processing module 200 as a device at the receiving end can set a timer, maintain a timer for each data packet, and maintain a timer for each group of data packets, thereby realizing the transmission time for each data packet and each group of data packets. Timing is performed to abandon the transmission after a packet or group of packets exceeds the predetermined transmission time.
  • the receiving end performs the transmission time counting by the timer, when a data packet or a group of data packets is discarded, the receiving response message fed back by the sending module 201 to the transmitting end does not carry the receiving failure information of the data packet. So that the sender does not retransmit the corresponding data packet or a group of data packets.
  • the data packet retransmission mechanism ensures that when one or several data packets in a group of data packets fail to be received, by setting a data packet retransmission and a group of data packets to retransmit two retransmission mechanisms.
  • the sending module 201 at the receiving end feeds back the receiving response message to the transmitting end, so that the transmitting end retransmits one or several data packets that failed to be transmitted; or, retransmits a group of data packets.
  • a group of data packets may include several sub-packets obtained by splitting one original data packet, and when the sub-data packet fails to be received, the transmitting end only retransmits and transmits.
  • the packet retransmission mechanism provided by the embodiment of the present invention saves the resources occupied by the transmission and improves the transmission efficiency, compared with the prior art that uses the single-process transmission.
  • the data packet is an unsplit original data packet, and/or the data packet is a sub-data packet obtained by splitting the original data packet;
  • the packet header of the at least one of the sub-packets includes packet indication information, where the packet indication information is used by the peer end, if the group of data packets transmitted by the source device includes at least two sub-packets.
  • the processing module 200 is further configured to group at least two of the sub-data packets according to the group package indication information;
  • each group of data packets may not carry the above-mentioned indication information.
  • each group of data packets transmitted by the preset transmitting end and the receiving end only includes a plurality of sub-data packets obtained by splitting one original data packet, and the processing module 200 at the receiving end receives the group data packet and then sets the data.
  • Package group Pack it.
  • each type of the data packet corresponds to a transmission mode
  • each group of data packets only includes one by splitting the original
  • the plurality of sub-packets obtained by the data packet adopt a specific transmission mode
  • the transmitting end notifies the receiving end
  • each group of data packets transmitted thereafter only includes a plurality of sub-packets obtained by splitting one original data packet, and then the group data is
  • the packet does not need to carry the indication information
  • the receiving end processing module 200 can group the group of data packets after receiving the group of data packets.
  • the packet header of at least one of the sub-data packets includes the group packet indication information, and each of the original The data packet carries the identifier, and the processing module 200 is further configured to identify the original data packet according to the identifier.
  • FIG. 5 is a device for transmitting data in another wireless network according to an embodiment of the present invention.
  • the device may be used as a device for transmitting data packets at a transmitting end, or as a device for transmitting data packets at a receiving end, where the device includes : processor 300, transmitter 301, receiver 302;
  • the processor 300 corresponds to the processing module 100 in FIG. 1 or FIG. 2, and can perform corresponding functions of the processing module 100 in FIG. 1 or FIG. 2 to implement Corresponding technical effects;
  • the transmitter 301 corresponds to the transmitting module 101 in FIG. 1 or FIG. 2, and can perform the corresponding functions of the transmitting module 101 in FIG. 1 or FIG. 2 to implement corresponding technical effects;
  • the receiving module 102 corresponds to the corresponding function of the receiving module 102 in FIG. 4, and implements corresponding technical effects;
  • the processor 300 corresponds to the processing module 200 in FIG. 3 or FIG. 4, and can perform corresponding functions of the processing module 200 in FIG. 3 or FIG. 4 to implement a corresponding technology.
  • the receiver 302 corresponds to the receiving module 202 in FIG. 3 or FIG. 4, and can perform the corresponding functions of the receiving module 202 in FIG. 3 or FIG. 4 to implement the corresponding technical effects; the transmitter 301 and the sending in FIG.
  • the module 201 corresponds to and can perform the corresponding functions of the sending module 201 in FIG. 4 to achieve the corresponding technical effects.
  • the apparatus for transmitting a packet as a transmitting end as described above, or the apparatus for transmitting a packet at the receiving end will be described below by way of a specific example.
  • the terminal may be a terminal device including a mobile phone, a tablet computer, a PDA (Personal Digital Assistant), a POS (Point of Sales), a vehicle-mounted computer, and the terminal is a mobile phone as an example, and FIG. 6 is an implementation of the present invention.
  • Example of a device for transmitting data in a wireless network A block diagram of the partial structure of the phone.
  • the mobile phone 500 includes a radio frequency (RF) circuit 510, a memory 520, an input unit 530, a display unit 540, a sensor 550, an audio circuit 560, a WiFi (wireless fidelity) module 570, and a processor. 580, and power supply 590 and other components.
  • RF radio frequency
  • FIG. 6 is only an example of implementation, and does not constitute a limitation on the mobile phone, and may include more or less components than those illustrated, or combine some components, or Different parts are arranged.
  • the components of the mobile phone 500 will be specifically described below with reference to FIG. 6:
  • the RF circuit 510 can be used for receiving and transmitting signals during the transmission or reception of information or during a call. Specifically, after receiving the downlink information of the base station, it is processed by the processor 580. In addition, the uplink data is designed to be sent to the base station.
  • RF circuits include, but are not limited to, an antenna, at least one amplifier, a transceiver, a coupler, an LNA (Low Noise Amplifier), a duplexer, and the like.
  • RF circuitry 510 can also communicate with the network and other devices via wireless communication. The wireless communication may use any communication standard or protocol, including but not limited to GSM (Global System of Mobile communication), GPRS (General Packet Radio Service), CDMA (Code Division Multiple Access). , Code Division Multiple Access), WCDMA (Wideband Code Division Multiple Access), LTE (Long Term Evolution), e-mail, SMS (Short Messaging Service), and the like.
  • the memory 520 can be used to store software programs and modules, and the processor 580 executes various functional applications and data processing of the mobile phone 500 by running software programs and modules stored in the memory 520.
  • the memory 520 may mainly include a storage program area and a storage data area, wherein the storage program area may store an operating system, an application required for at least one function (such as a sound playing function, an image playing function, etc.), and the like; the storage data area may be stored according to The data created by the use of the mobile phone 500 (such as audio data, phone book, etc.) and the like.
  • memory 520 can include high speed random access memory, and can also include non-volatile memory, such as at least one magnetic disk storage device, flash memory device, or other volatile solid state storage device.
  • the input unit 530 can be configured to receive input numeric or character information and to generate key signal inputs related to user settings and function control of the handset 500.
  • the input unit 530 may include a touch panel 531 and other input devices 532.
  • the touch panel 531 also referred to as a touch screen, can collect touch operations on or near the user (such as the user using any suitable object such as a finger, a stylus, etc.) Or the operation of the accessory on or near the touch panel 531, and driving the corresponding connecting device according to a preset program.
  • the touch panel 531 can include two parts: a touch detection device and a touch controller.
  • the touch detection device detects the touch orientation of the user, and detects a signal brought by the touch operation, and transmits the signal to the touch controller; the touch controller receives the touch information from the touch detection device, converts the touch information into contact coordinates, and sends the touch information.
  • the processor 580 is provided and can receive commands from the processor 580 and execute them.
  • the touch panel 531 can be implemented in various types such as resistive, capacitive, infrared, and surface acoustic waves.
  • the input unit 530 may also include other input devices 532. Specifically, other input devices 532 may include, but are not limited to, one or more of a physical keyboard, function keys (such as volume control buttons, switch buttons, etc.), trackballs, mice, joysticks, and the like.
  • the display unit 540 can be used to display information input by the user or information provided to the user and various menus of the mobile phone 500.
  • the display unit 540 can include a display panel 541.
  • the display panel 541 can be configured in the form of an LCD (Liquid Crystal Display), an OLED (Organic Light-Emitting Diode), or the like.
  • the touch panel 531 can cover the display panel 541. When the touch panel 531 detects a touch operation on or near it, the touch panel 531 transmits to the processor 580 to determine the type of the touch event, and then the processor 580 according to the touch event. The type provides a corresponding visual output on display panel 541.
  • touch panel 531 and the display panel 541 are used as two independent components to implement the input and input functions of the mobile phone 500 in FIG. 6, in some embodiments, the touch panel 531 can be integrated with the display panel 541. The input and output functions of the mobile phone 500 are implemented.
  • the handset 500 can also include at least one type of sensor 550, such as a light sensor, motion sensor, and other sensors.
  • the light sensor may include an ambient light sensor and a proximity sensor, wherein the ambient light sensor may adjust the brightness of the display panel 541 according to the brightness of the ambient light, and the proximity sensor may close the display panel 541 when the mobile phone 500 moves to the ear. / or backlight.
  • the accelerometer sensor can detect the magnitude of acceleration in all directions (usually three axes). When it is stationary, it can detect the magnitude and direction of gravity. It can be used to identify the gesture of the mobile phone (such as horizontal and vertical screen switching, related Game, magnetometer attitude calibration), vibration recognition related functions (such as pedometer, tapping), etc.
  • the mobile phone 500 can also be configured with gyroscopes, barometers, hygrometers, thermometers, infrared sensors and other sensors, here Let me repeat.
  • the audio circuit 560, the speaker 561, and the microphone 562 can provide a sound between the user and the mobile phone 500. Frequency interface.
  • the audio circuit 560 can transmit the converted electrical data of the received audio data to the speaker 561, and convert it into a sound signal output by the speaker 561.
  • the microphone 562 converts the collected sound signal into an electrical signal, and the audio circuit 560 is used by the audio circuit 560. After receiving, it is converted into audio data, and then processed by the audio data output processor 580, sent to the other mobile phone via the RF circuit 510, or outputted to the memory 520 for further processing.
  • WiFi is a short-range wireless transmission technology
  • the mobile phone 500 can help users to send and receive emails, browse web pages, and access streaming media through the WiFi module 570, which provides wireless broadband Internet access for users.
  • FIG. 6 shows the WiFi module 570, it can be understood that it does not belong to the essential configuration of the mobile phone 500, and may be omitted as needed within the scope of not changing the essence of the invention.
  • Processor 580 is the control center of handset 500, which connects various portions of the entire handset using various interfaces and lines, by running or executing software programs and/or modules stored in memory 520, and recalling data stored in memory 520, The various functions and processing data of the mobile phone 500 are performed to perform overall monitoring of the mobile phone.
  • the processor 580 may include one or more processing units; preferably, the processor 580 may integrate an application processor and a modem processor, where the application processor mainly processes an operating system, a user interface, an application, and the like.
  • the modem processor primarily handles wireless communications. It will be appreciated that the above described modem processor may also not be integrated into the processor 580.
  • the handset 500 also includes a power source 590 (such as a battery) that supplies power to the various components.
  • a power source 590 such as a battery
  • the power source can be logically coupled to the processor 580 via a power management system to manage functions such as charging, discharging, and power management through the power management system.
  • the mobile phone 500 may further include a camera, a Bluetooth module, and the like, and details are not described herein again.
  • the processor included in the terminal when the terminal transmits the data packet as the transmitting end, the processor included in the terminal has the corresponding function of the processing module 100 shown in FIG. 1 or FIG. 2 above, and the RF circuit has the above FIG. Or the corresponding functions of the sending module 101 and the receiving module 102 shown in FIG. 2, and can achieve the corresponding technical effects; or, the processor has the corresponding function of the processor shown in FIG. 5 above, and the RF circuit has the above FIG.
  • the corresponding functions of the transmitter and receiver are shown, and the corresponding technical effects can be achieved;
  • the processor included in the terminal has the corresponding function of the processing module 200 shown in FIG. 3 or FIG. 4 above, and the RF circuit has the sending module shown in FIG. 3 or FIG. 4 above. 201 and the corresponding function of the receiving module 202, and can achieve the corresponding technical effects;
  • the processor has the corresponding function of the processor shown in FIG. 5 above, and the RF circuit has the corresponding functions of the transmitter and the receiver shown in FIG. 5 above, and can achieve corresponding technical effects.
  • the device for data packet transmission can also be an IoT device such as a smart meter or a smart water meter.
  • a smart meter a possible implementation manner is: a power system data collected by a cluster smart meter through a GPRS network system. Real-time delivery to centralized monitoring centers at all levels to achieve unified monitoring and distributed management of power detection equipment.
  • the smart meter has a power information collecting function and a data transmission function.
  • the smart meter has a processor capable of collecting power information, and a network interface for transmitting power information, the smart meter can adopt the above FIG. 1 and FIG.
  • the structure shown in FIG. 5, and the corresponding steps are performed to achieve the corresponding technical effects.
  • the collection device of the centralized control center can be used as the receiving end of the data, adopting the structure shown in FIG. 3, FIG. 4, and FIG. 5 above, and performing corresponding steps to achieve the corresponding technical effects.
  • an embodiment of the present invention provides a data packet transmission system, which includes a device as a transmitting end and a device as a receiving end to implement data packet transmission.
  • the device as the transmitting end may be the device shown in FIG. 1, FIG. 2, FIG. 5 or FIG. 6 , which can implement the technical effects of the corresponding embodiment of FIG. 1 , FIG. 2 , FIG. 5 or FIG. 6 ;
  • the device as the receiving end may be the device shown in FIG. 3, FIG. 4, FIG. 5 or FIG. 6 above, which can achieve the technical effects of the corresponding embodiment of FIG. 3, FIG. 4, FIG. 5 or FIG.
  • the system may also include other necessary devices, such as an access device, a network management system, a server, etc., which are not limited herein.
  • FIG. 7 is a schematic flowchart of a method for data packet transmission according to an embodiment of the present invention.
  • the method is applied to a half-duplex FDD machine-to-machine system, and the execution body thereof is the data packet shown in FIG. 1, FIG. 5 or FIG.
  • the transmitting device which is the transmitting end of the data packet, specifically, the device can be a base station, a machine, a water meter with a communication function, an electric meter, etc., a mobile phone, and supports various communication systems (2G/3G/4G/5G)
  • the communication device of the /wifi/Bluetooth, etc., the terminal of the M2M referring to FIG. 7, the method includes the following steps:
  • Step 100 Send a set of data packets to the peer end, where the set of data packets includes n data packets, where the n data packets are sent in sequence corresponding to n processes, and the n is greater than or equal to two.
  • Step 101 When the group of data packets is successfully sent, send the next group of data packets to the peer end.
  • the method for transmitting a data packet provided by the embodiment of the present invention sends a set of data packets to a peer end by means of a data packet transmission, where the set of data packets includes n data packets, and the n data packets are sent in sequence according to the sequence Corresponding to n processes, the n is a positive integer greater than or equal to two, and the n ⁇ the maximum number of processes, further, when the set of data packets is successfully sent, the device for transmitting the data packet further refers to the The peer sends the next set of data packets.
  • the embodiment of the present invention ensures that only after a group of data packets is successfully transmitted, the next group of data packets is transmitted, and the transmitting end only needs to cache a group of data packets at the receiving end. It is also only necessary to cache a maximum of one group of packets or a packet that is not successfully packaged (when a package is required), thereby saving resources, and further, a method of transmitting a next set of data packets after a successful transmission of a set of data packets is performed.
  • the method for transmitting data packets in the embodiment of the present invention ensures transmission efficiency and system throughput by avoiding the difference in the transmission progress of each data packet due to the continuous transmission of data packets, and thus the complex identification, grouping, and retransmission mechanisms are required. At the same time, it can reduce the cost and complexity of the solution implementation.
  • the embodiment of the present invention can send a group of data packets each time, can quickly send data packets, save terminal power consumption, and improve throughput of data packet transmission.
  • the RLC layer is cancelled, and the MAC layer supports simple unpacking and grouping functions.
  • the MAC layer splits the data packets that need to be split into packets of appropriate size according to the real-time situation of the channel, and the data packets of the MAC layer may be original data packets or sub-data packets.
  • the data packet is an unpacked original data packet, and/or the data packet is a sub-data packet obtained by splitting the original data packet.
  • a group of data packets including the type of the data packet may have the following possibilities: 1. A group of data packets only includes multiple sub-data packets obtained by splitting the original data packet; 2. A group of data packets includes all of the data packets. Split original data packet; Third, a group of data packets contains multiple sub-packets obtained by splitting the original data packet and unpacked original data packets.
  • the sender can split the original data packet.
  • the size of the threshold is not limited, and the threshold may be set according to system requirements in different scenarios.
  • the group of data packets includes at least two sub-packets
  • the packet header of the at least one of the sub-packets includes group packet indication information, where the group packet indication information is used by the peer end to receive at least two of the sub-data packets, and at least two according to the group packet indication information.
  • the sub-packets are grouped;
  • a group of data packets includes multiple sub-data packets obtained by splitting the original data packet
  • the sub-packet is grouped.
  • a possible implementation manner is that the last sub-packet belonging to the original data packet should include an indication that the sub-packet is the last data packet.
  • each group of data packets may not carry the above-mentioned indication information.
  • each group of data packets transmitted by the preset transmitting end and the receiving end only includes a plurality of sub-data packets obtained by splitting one original data packet, and after receiving the data packet, the receiving end groups the data packet. Just fine.
  • each type of the data packet corresponds to a transmission mode
  • each group of data packets only includes one by splitting the original
  • the plurality of sub-packets obtained by the data packet adopt a specific transmission mode
  • the transmitting end notifies the receiving end
  • each group of data packets transmitted thereafter only includes a plurality of sub-packets obtained by splitting one original data packet, and then the group data is The packet does not need to carry the indication information, and after receiving the group of data packets, the receiving end can group the group of data packets.
  • the header of at least one of the sub-data packets includes the group package indication information, and each of the original The data packet carries an identifier for the peer to identify the original data packet.
  • each sub-packet carries a 1 bit (0/1) indication, 1 indicates the last sub-packet or the unsplit original data packet, and 0 indicates the non-last sub-packet; for example, sending The end splits an original data packet into five sub-packets, which also include two other unsplit original data packets, for a total of seven data packets.
  • the packet indication information carried by the first to fourth sub-packets is “0”, and the packet indication information carried by the last sub-packet is “1”.
  • the packet indication information carried by the last sub-packet is “1”.
  • the packet indication information carried by the packet is "1".
  • FIG. 8 is a schematic flowchart of another method for data packet transmission according to an embodiment of the present invention, where the execution body is the data packet transmission shown in FIG. 2, FIG. 5 or FIG.
  • the device referring to FIG. 8, before step 101, further includes the following steps:
  • Step 102 Receive a receiving response message sent by the peer end, where the receiving response message carries a receiving failure information of the data packet, and/or a receiving success information of the data packet;
  • the receiving response message includes the receiving failure information of the data packet, retransmitting the data packet corresponding to the receiving failure information of the data packet.
  • the data packet retransmission mechanism of the method for data packet transmission according to the embodiment of the present invention is described below by using a specific embodiment. It should be noted that the following embodiments of the present invention are only implemented by using several possible implementation manners as examples. It is to be understood that the scope of protection of the present invention is not limited. It is obvious that other possible packet retransmission mechanisms should also fall within the protection scope of the present invention based on the method for data packet transmission provided by the embodiments of the present invention.
  • the receiving end sends the receiving failure information of the data packet to the sending end, and the function is to notify the sending end which data packet transmission fails, and further, the data packet fails to be received.
  • Information can be used to indicate a group of packet transmission failures, and can also be used to indicate that one or more packets in a group of packets failed to transmit. The following two possible scenarios are illustrated by specific embodiments:
  • the receiving failure information of the data packet is a data packet retransmission indication, where the data packet retransmission indication is used to indicate retransmission of the m data packets, where m is a positive integer greater than zero, and m ⁇ n;
  • sending the next set of data packets to the peer end including:
  • FIG. 9 is a schematic diagram of a data packet retransmission method according to an embodiment of the present invention, where the execution body is the device for transmitting the data packet shown in FIG. 1, FIG. 2, FIG. 5 or FIG.
  • the method before the retransmission of the m data packets on the m processes according to the data packet retransmission indication, the method further includes:
  • Step 200 Determine if the number of retransmissions of at least one of the data packets exceeds a maximum number of retransmissions of the preset data packet.
  • Step 201 If the number of retransmissions of the at least one data packet exceeds a preset maximum number of retransmissions of the data packet, retransmission of the at least one of the data packets is stopped.
  • Step 202 Retransmit at least one of the data packets if the number of retransmissions of the at least one data packet does not exceed a maximum number of retransmissions of the preset data packet.
  • step 203 to step 205 may also be added, specifically:
  • Step 203 Determine whether the number of retransmissions of the group of data packets exceeds the maximum number of retransmissions of the group.
  • Step 204 If the number of retransmissions of the group of data packets does not exceed the maximum number of retransmissions of the group, the group of data packets is retransmitted.
  • Step 205 If the number of retransmissions of the group of data packets exceeds the maximum number of retransmissions of the group, discard the group of data packets, and send the next group of data packets to the peer end.
  • FIG. 10 is a schematic diagram of another method for retransmitting a data packet according to an embodiment of the present invention, where the execution subject is the apparatus for transmitting data packets shown in FIG. 1, FIG. 2, FIG. 5 or FIG. 6, the data.
  • the receiving failure information of the packet is a group retransmission indication, and the group retransmission indication is used to indicate that the group of data packets is retransmitted.
  • the method includes the following steps:
  • Step 300 Determine whether the number of retransmissions of the group of data packets exceeds the maximum number of retransmissions of the group;
  • Step 301 If the number of retransmissions of the group of data packets exceeds the maximum number of retransmissions of the group, discarding the group of data packets, and sending the next group of data packets to the peer end;
  • Step 302 If the number of retransmissions of the group of data packets does not exceed the maximum number of retransmissions of the group, retransmit the group of data packets according to the group retransmission indication.
  • step 303 is performed.
  • step 101 in FIG. 10 is as follows:
  • Step 303 After the n data packets are successfully sent, send the next group of data packets to the peer end.
  • the transmitting end retransmits according to the receiving failure information of the data packet.
  • the sending end or the receiving end may set the maximum number of retransmissions of the data packet and the maximum number of retransmissions of the group, and maintain the weight of each data packet.
  • the number of transmissions and the number of retransmissions of each group of data packets Before a data packet is retransmitted, the number of retransmissions of the current data packet is compared with the maximum number of retransmissions of the data packet, if the maximum weight of the data packet is not exceeded.
  • the number of transmissions allows the packet to be retransmitted, and after retransmission, adds "1" to the number of retransmissions of the packet.
  • the transmitting end retransmits the group of data packets; or, if the maximum number of retransmissions of the group is exceeded, the group of data packets is discarded, and the next group of data packets is performed. Send.
  • the sender or the receiver maintains a timer for each data packet, and maintains a timer for each group of data packets, for example, the sender side, when sending a group of data packets, for the group of data packets
  • Each data packet the sender end correspondingly maintains a timer, the timer is used to time the transmission time of each data packet, and the number of retransmissions of each data packet is not limited during the transmission time.
  • the sender can also maintain a timer for a group of data packets. The purpose of the timer is to time the transmission time of a group of data packets.
  • the retransmission of the group of data packets is not here.
  • the transmission time of the group of data packets exceeds the upper limit of the transmission time preset by the corresponding timer, the transmission of the group of data packets is abandoned, and the transmission of the next group of data packets is performed.
  • the receiving end can also maintain a similar timer to time the transmission time of each data packet and each group of data packets, thereby abandoning the transmission after a data packet or a group of data packets exceeds a predetermined transmission time. It should be noted that, in the scheme that the receiving end performs the transmission time counting by the timer, when a data packet or a group of data packets is discarded, the feedback response message fed back to the transmitting end is reported. The receiving failure information of the data packet is not carried, so that the transmitting end does not retransmit the corresponding data packet or a group of data packets.
  • the data packet retransmission mechanism provided by the embodiment of the present invention ensures that when one or several data packets in a group of data packets fail to be received, by setting a data packet retransmission and a group of data packets to retransmit two retransmission mechanisms.
  • the transmitting end retransmits one or several data packets that failed to be transmitted according to the receiving response message fed back by the receiving end; or, retransmits a group of data packets.
  • a group of data packets may include several sub-packets obtained by splitting one original data packet, and when the sub-data packet fails to be received, the transmitting end only retransmits and transmits.
  • the packet retransmission mechanism provided by the embodiment of the present invention saves the resources occupied by the transmission and improves the transmission efficiency, compared with the prior art that uses the single-process transmission.
  • FIG. 11 is a schematic flowchart diagram of another method for data packet transmission according to an embodiment of the present invention.
  • the method is applied to a half-duplex FDD machine-to-machine system, and an execution subject is an execution subject thereof as shown in FIG. 3, FIG. 5 or FIG. 6 shows the device for transmitting data packets.
  • the device can be used for base station, machine, water meter with electric function, electric meter, meter reading, mobile phone, and various communication systems (2G/3G/4G/5G/wifi/Bluetooth)
  • the communication device and the M2M terminal include the following steps:
  • Step 400 Receive a set of data packets sent by the peer end, where the set of data packets includes n data packets, where the n data packets respectively correspond to n processes in sequence, and the n is greater than or equal to two. An integer, and the n ⁇ maximum number of processes;
  • Step 401 When the group of data packets is successfully received, receive the next group of data packets sent by the peer end.
  • the method for transmitting a data packet receives a set of data packets sent by a peer end by using a device for transmitting a data packet as a receiving end, where the set of data packets includes n data packets, and the n data packets are pressed.
  • the sequence corresponds to n processes, respectively, wherein n is a positive integer greater than or equal to two, and the n ⁇ maximum number of processes, when the group of data packets is successfully received, the device receives the sent by the peer end.
  • the next set of packets corresponds to n processes, respectively, wherein n is a positive integer greater than or equal to two, and the n ⁇ maximum number of processes, when the group of data packets is successfully received.
  • the embodiment of the present invention ensures that only after a group of data packets is successfully transmitted, the next group of data packets is received, so that the device only needs to cache the most before receiving successfully. A set of data packets or packets that are not successfully packaged (when a packet is required), thereby saving cache resources. Further, the manner in which a set of data packets is successfully received after receiving the next set of data packets is avoided. Transfer packets resulting in each number According to the different transmission progress of the packet, it is necessary to set a complex identification, grouping, and retransmission mechanism.
  • the method for transmitting a data packet provided by the embodiment of the present invention reduces the cost of implementing the scheme when using the half-duplex FDD transmission mode. the complexity.
  • the embodiment of the present invention can receive a group of data packets each time, can quickly receive data packets, save terminal power consumption, and improve throughput of data packet transmission.
  • the data packet received by the device as the execution subject in this embodiment may be an unsplit original data packet, and/or the data packet is a sub-data packet obtained by splitting the original data packet.
  • the data packet is a sub-data packet obtained by splitting the original data packet.
  • the header of at least one of the sub-data packets includes the group packet indication information
  • the receiving end device After receiving at least two of the sub-data packets, grouping at least two of the sub-data packets according to the grouping packet indication information; or, when the transmitting end device uses only one of each group of data packets, by splitting When multiple sub-packets are obtained by the original data packet, each group of data packets may not carry the above indication information.
  • each group of data packets transmitted by the preset transmitting end and the receiving end only includes a plurality of sub-data packets obtained by splitting one original data packet, and after receiving the data packet, the receiving end groups the data packet.
  • each type of the data packet corresponds to a transmission mode
  • each group of data packets only includes one by splitting the original
  • the plurality of sub-packets obtained by the data packet adopt a specific transmission mode
  • the transmitting end notifies the receiving end
  • each group of data packets transmitted thereafter only includes a plurality of sub-packets obtained by splitting one original data packet, and then the group data is The packet does not need to carry the indication information, and after receiving the group of data packets, the receiving end can group the group of data packets.
  • the packet header of at least one of the sub-data packets includes the group packet indication information, and each of the original data packets carries And identifying, the receiving end device identifies the original data packet according to the identifier.
  • FIG. 12 is a schematic flowchart of another method for data packet transmission according to an embodiment of the present invention.
  • the execution subject is an execution subject of the foregoing FIG. 3, FIG. 4, and FIG. 5 or the apparatus for data packet transmission shown in FIG. 6, referring to FIG. 12, before step 401, the method further includes the following steps:
  • Step 402 Send a receiving response message to the peer end, where the receiving response message carries data Receive failure information of the packet, and/or success information of the reception of the data packet;
  • the receiving response message after the receiving the response message sent to the opposite end, if the receiving response message includes the receiving failure information of the data packet, receiving the receiving failure information corresponding to the data packet retransmitted by the opposite end data pack.
  • the receiving end sends the receiving failure information of the data packet to the sending end, and the function is to notify the sending end which data packet transmission fails, and further, the data packet fails to be received.
  • Information can be used to indicate a group of packet transmission failures, and can also be used to indicate that one or more packets in a group of packets failed to transmit. The following two possible scenarios are illustrated by specific embodiments:
  • the receiving failure information of the data packet is a data packet retransmission indication, where the data packet retransmission indication is used to instruct the peer end to retransmit the m data packets, where m is a positive integer greater than zero And m ⁇ n;
  • the receiving failure information of the data packet is a group retransmission indication, and the group retransmission indication is used to indicate that the peer retransmission is performed.
  • a set of data packets is used to indicate that the peer retransmission is performed.
  • the retransmission mechanism for each data packet and/or a group of data packets has been described in detail above, and will not be described here. It should be noted that the retransmission scheme for maintaining the transmission time by using a timer is described.
  • the device as the receiving end can set a timer, maintain a timer for each data packet, and maintain a timer for each group of data packets, so as to time the transmission time of each data packet and each group of data packets, A packet or a group of packets is discarded after a predetermined transmission time has elapsed.
  • the receiving end performs the transmission time counting by the timer, when a data packet or a group of data packets is discarded, the receiving response message fed back to the transmitting end does not carry the receiving failure information of the data packet, so that The sender does not retransmit the corresponding data packet or a group of data packets.
  • the data packet retransmission mechanism provided by the embodiment of the present invention, by setting data packet retransmission and a set of data The packet retransmits two retransmission mechanisms to ensure that when one or several packets in a group of packets fail to receive, the receiving end feeds back the response message to the sender, so that the sender retransmits the failed one or Several packets; or, retransmit a group of packets.
  • a group of data packets may include several sub-packets obtained by splitting one original data packet, and when the sub-data packet fails to be received, the transmitting end only retransmits and transmits.
  • the packet retransmission mechanism provided by the embodiment of the present invention saves the resources occupied by the transmission and improves the transmission efficiency, compared with the prior art that uses the single-process transmission.
  • FIG. 13 is a schematic diagram of interaction of another method for transmitting a data packet according to an embodiment of the present invention. Referring to FIG. 13, an interaction process between a device as a transmitting end and a device as a receiving end in the foregoing embodiment is specifically described. The interaction process includes the following steps:
  • Step 501 The sending end sends the n data packets to the receiving end on the n processes.
  • n data packets are a group of data packets, and a type of data packet including the type of the data packet may have the following possibilities: 1.
  • a group of data packets only includes multiple sub-data packets obtained by splitting the original data packet;
  • a set of data packets contains all the original data packets that are not split.
  • a set of data packets contains multiple sub-data packets obtained by splitting the original data packet and original data packets that are not split.
  • the method may further include:
  • Step 500 The sender shovels the original data packet to obtain s sub-data packets, where s is less than or equal to n.
  • Step 502 The sending end receives the receiving response message sent by the peer end.
  • the receiving end sends a receiving response message at a specific time, for example, after receiving m data packets, sending a receiving response message to the transmitting end, where the receiving response message includes the receiving situation of the m data packets.
  • the receiving end wants the sending end to send a receiving response message after receiving a set of data packets.
  • the receiving response message carries the receiving failure information of the data packet, and/or the receiving success information of the data packet.
  • the receiving response message carries the receiving failure information of the data packet, referring to the foregoing embodiment, the receiving failure information of the data packet is used to indicate that one or several data packets in the group of data packets are retransmitted.
  • step 501 It can be used to indicate that a group of data packets is retransmitted, and the transmitting end repeats step 501.
  • the data packet sent by the specific sending end indicates that the data packet receiving failure information indicates that the data packet needs to be retransmitted. If the receiving response message only carries the receiving success information of the data packet, step 503 is performed.
  • the sender and the receiver respectively maintain a send buffer for the process and
  • the receive buffer is used to store the data packets sent by the current process for retransmission in case of an error, and the receive buffer stores the data packets received on the current process.
  • Step 503 The sending end sends the next set of n data packets to the receiving end on the n processes.
  • the sending end performs the triggering condition for sending the next group of n data packets, which may be that the last group of data packets is successfully sent; or the transmission is abandoned because the number of retransmissions of the previous group of data exceeds a predetermined maximum value; or, a group
  • the transmission time of the data packet exceeds the upper limit of the transmission time; or, for the user or the system, for example, according to the user's needs, the control network element in the system sends a discard transmission command to the sender, instructing the sender to abandon the previous group of data packets.
  • the sender may determine whether to stop the transmission of the last group of data packets, for example, the data packet contains status information of a certain service, when the previous group The data packet has not been transmitted yet, and the new set of data packets contains the latest status information of the service.
  • the receiving end does not need the state information contained in the previous set of data packets. Therefore, the transmitting end can The service characteristics of the group data packet, abandoning the transmission of the previous group of data packets, and directly transmitting the next group of data packets.
  • the receiving end since the receiving end collectively feeds back a group of data packets, that is, the receiving end does not need to continuously switch between sending and receiving states, thereby reducing the handover delay. .
  • the transmission rate itself is low, and the time for each transmission is long, so the time interval between two retransmissions is large, the device for transmitting the above data packet can be an M2M terminal, and because of the M2M terminal Generally, it does not move, or the mobility is low, and the channel changes slowly in time. Therefore, the retransmission time interval of this scheme is large, and the time diversity gain is relatively easy to obtain.
  • the foregoing program may be stored in a computer readable storage medium, and the program is executed when executed.
  • the foregoing steps include the steps of the foregoing method embodiments; and the foregoing storage medium includes: a medium that can store program codes, such as a ROM, a RAM, a magnetic disk, or an optical disk.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

Provided are a data packet transmission device, system and method, the method comprising: transmitting a group of data packets to an opposite terminal, a group of data packets comprising n data packets, n data packets sequentially and respectively corresponding to n processes during transmission, n being a positive integer greater than or equal to 2, and n ≤ a maximum process number; and transmitting a next group of data packets to the opposite terminal when the previous group of data packets are successfully transmitted. Compared with a prior art of employing a multi-process transmission, the present invention ensures to transmit the next group of data packets only after the previous group of data packets has been successfully transmitted, such that a transmission terminal only needs to cache one group of data packets at most, and a receiving terminal also only needs to cache one group of data packets or unsuccessfully packed data packets at most, thus saving resources; in addition, the present invention employs a method of transmitting the next group of data packets after the previous group of data packets has been successfully transmitted, thus reducing cost and complexity for realizing a solution while ensuring a transmission efficiency and a system throughput.

Description

数据包传输的装置、系统及方法Device, system and method for data packet transmission 技术领域Technical field
本发明涉及通信技术领域,尤其涉及一种数据包传输的装置、系统及方法。The present invention relates to the field of communications technologies, and in particular, to a device, system, and method for data packet transmission.
背景技术Background technique
机器到机器(Machine to Machine,简称:M2M)系统是一种理念,也是所有增强机器设备通信和网络能力的技术的总称。人与人之间的沟通很多也是通过机器实现的,例如通过手机、电话、电脑、传真机等机器设备之间的通信来实现人与人之间的沟通。另外一类技术是专为机器和机器建立通信而设计的,如许多智能化仪器仪表都带有可以进行M2M通信的接口,增强了仪器与仪器之间,仪器与电脑之间的通信能力。随着科学技术的发展,越来越多的设备具有了通信和连网能力,网络一切逐步变为现实。其中,窄带M2M系统的数据传输速率低,对终端成本敏感,因此终端采用半双工频分双工(Frequency Division Duplexing,简称:FDD)方式更能满足要求。The Machine to Machine (M2M) system is a concept and a general term for all technologies that enhance the communication and networking capabilities of machine equipment. Many people communicate with each other through machines, such as communication between machines, such as mobile phones, telephones, computers, and fax machines. Another type of technology is designed to establish communication between machines and machines. For example, many intelligent instruments and meters have an interface for M2M communication, which enhances the communication between the instrument and the instrument and between the instrument and the computer. With the development of science and technology, more and more devices have the ability to communicate and connect, and everything on the network has gradually become a reality. Among them, the narrowband M2M system has a low data transmission rate and is sensitive to the terminal cost. Therefore, the terminal adopts a half-duplex frequency division duplex (FDD) method to meet the requirements.
进一步的,基于半双工FDD方式的终端还需要采用一定的重传机制以保证数据传输的稳定性。但是,现有技术广泛采用的多进程混合自动重传请求(Hybrid Automatic Repeat Request,简称:HARQ)的数据包传输机制,各个进程相互独立,当某一个进程上传输的数据包发送失败时,接收端请求发送端进行重传。随着系统运行时间的推移,当存在某一个(或几个)进程上的数据包被多次重传的情况下,各个进程上数据包的传输进度不一致,因此接收端不能及时组包,需要设定比较大的缓存空间,用来存储没有成功组包的数据包;另外,为了能够在接收端进行组包,数据包必须携带各自的标识。因此,大大提高了方案实现的复杂度和成本。Further, the terminal based on the half-duplex FDD mode also needs to adopt a certain retransmission mechanism to ensure the stability of data transmission. However, the data packet transmission mechanism of the Hybrid Automatic Repeat Request (HARQ) is widely used in the prior art, and each process is independent of each other. When a data packet transmitted on a certain process fails to be transmitted, the reception is performed. The requesting sender sends a retransmission. With the running time of the system, when there are multiple (or several) processes on which the data packets are retransmitted multiple times, the transmission progress of the data packets on each process is inconsistent. Therefore, the receiving end cannot assemble the packets in time. Set a larger buffer space for storing packets without successful packet; in addition, in order to be able to group packets at the receiving end, the packets must carry their respective identifiers. Therefore, the complexity and cost of the solution implementation are greatly improved.
发明内容Summary of the invention
本发明提供一种数据包传输的装置、系统及方法,用于降低实现的复杂度和成本。 The present invention provides an apparatus, system and method for data packet transmission for reducing implementation complexity and cost.
本发明第一个方面提供一种数据包传输的装置,所述装置应用于半双工频分双工机器对机器系统,包括:A first aspect of the present invention provides an apparatus for data packet transmission, the apparatus being applied to a half-duplex frequency division duplex machine-to-machine system, comprising:
发送模块,用于向对端发送一组数据包,所述一组数据包包含n个数据包;还用于当所述一组数据包发送成功时,再向所述对端发送下一组数据包;a sending module, configured to send a set of data packets to the peer end, where the set of data packets includes n data packets; and is further configured to send the next group to the peer end when the set of data packets is successfully sent data pack;
处理模块,用于按顺序在发送时将所述n个数据包分别对应n个进程,所述n为大于或等于二的正整数,且所述n≤最大进程数。And a processing module, configured to sequentially correspond to the n data packets to n processes, where n is a positive integer greater than or equal to two, and the n≤maximum number of processes.
结合第一个方面,在第一种可能的实现方式中,还包括:In combination with the first aspect, in the first possible implementation manner, the method further includes:
接收模块,用于接收所述对端发送的接收响应消息,所述接收响应消息携带数据包的接收失败信息,和/或数据包的接收成功信息;a receiving module, configured to receive a receiving response message sent by the peer end, where the receiving response message carries a receiving failure information of the data packet, and/or a receiving success information of the data packet;
所述发送模块,还用于若所述接收响应消息包含数据包的接收失败信息,则重传所述数据包的接收失败信息对应的数据包。The sending module is further configured to retransmit the data packet corresponding to the receiving failure information of the data packet if the receiving response message includes the receiving failure information of the data packet.
结合第一个方面的第一种可能的实现方式,在第二种可能的实现方式中,所述数据包的接收失败信息为数据包重传指示,所述数据包重传指示用于指示重新传输m个数据包,所述m为大于零的正整数,并且m≤n;With reference to the first possible implementation manner of the first aspect, in a second possible implementation manner, the receiving failure information of the data packet is a data packet retransmission indication, where the data packet retransmission indication is used to indicate re Transmitting m data packets, the m being a positive integer greater than zero, and m≤n;
所述发送模块,具体用于根据所述数据包重传指示将所述m个所述数据包分别在m个进程上进行重传;具体还用于直至m个所述数据包发送成功,再向所述对端发送下一组数据包。The sending module is specifically configured to retransmit the m data packets on the m processes according to the data packet retransmission indication; specifically, the m data packets are successfully sent, and then Sending the next set of data packets to the peer.
结合第一个方面的第二种可能的实现方式,在第三种可能的实现方式中,所述处理模块,还用于若至少一个所述数据包的重传次数超过预置的数据包最大重传次数,则停止对至少一个所述数据包的重传。With reference to the second possible implementation of the first aspect, in a third possible implementation, the processing module is further configured to: if the retransmission times of the at least one of the data packets exceed the preset maximum data packet size The number of retransmissions stops retransmission of at least one of the data packets.
结合第一个方面的第三种可能的实现方式,在第四种可能的实现方式中,所述处理模块,还用于判断所述一组数据包的重传次数是否超过组最大重传次数;With reference to the third possible implementation manner of the first aspect, in a fourth possible implementation, the processing module is further configured to determine whether the number of retransmissions of the group of data packets exceeds a maximum number of retransmissions of the group ;
所述发送模块,还用于若所述一组数据包的重传次数未超过所述组最大重传次数,则将所述一组数据包进行重传;或者,The sending module is further configured to retransmit the group of data packets if the number of retransmissions of the group of data packets does not exceed the maximum number of retransmissions of the group; or
所述处理模块,还用于若所述一组数据包的重传次数超过所述组最大重传次数,则丢弃所述一组数据包;The processing module is further configured to discard the set of data packets if the number of retransmissions of the set of data packets exceeds a maximum number of retransmissions of the group;
所述发送模块,还用于向所述对端发送下一组数据包。The sending module is further configured to send the next group of data packets to the peer end.
结合第一个方面的第一种可能的实现方式,在第五种可能的实现方式中,所述数据包的接收失败信息为组重传指示,所述组重传指示用于指示将所述 一组数据包进行重传;With reference to the first possible implementation manner of the first aspect, in a fifth possible implementation, the receiving failure information of the data packet is a group retransmission indication, where the group retransmission indication is used to indicate that the a set of data packets for retransmission;
所述处理模块,还用于判断所述一组数据包的重传次数是否超过组最大重传次数;The processing module is further configured to determine whether the number of retransmissions of the group of data packets exceeds a maximum number of retransmissions of the group;
所述发送模块,还用于若所述一组数据包的重传次数未超过所述组最大重传次数,根据所述组重传指示将所述一组数据包进行重传;或者,The sending module is further configured to: if the number of retransmissions of the group of data packets does not exceed the maximum number of retransmissions of the group, retransmit the group of data packets according to the group retransmission indication; or
所述处理模块,还用于若所述一组数据包的重传次数超过所述组最大重传次数,则丢弃所述一组数据包;The processing module is further configured to discard the set of data packets if the number of retransmissions of the set of data packets exceeds a maximum number of retransmissions of the group;
所述发送模块,还用于向所述对端发送下一组数据包;还用于直至n个所述数据包发送成功,再向所述对端发送下一组数据包。The sending module is further configured to send the next set of data packets to the opposite end; and is further configured to send the next set of data packets to the opposite end until the n data packets are successfully sent.
结合第一个方面或第一个方面的上述任一种可能的实现方式,在第六种可能的实现方式中,所述数据包为未经拆分的原数据包,和/或,所述数据包为通过拆分原数据包获得的子数据包;With reference to the first aspect, or any one of the foregoing possible implementation manners of the first aspect, in a sixth possible implementation, the data packet is an unsplit original data packet, and/or the The data packet is a sub-data packet obtained by splitting the original data packet;
其中,若所述一组数据包中包含至少两个子数据包,则至少一个所述子数据包的包头包含组包指示信息,所述组包指示信息用于所述对端接收到至少两个所述子数据包后,根据所述组包指示信息对至少两个所述子数据包进行组包;或者,Wherein, if the set of data packets includes at least two sub-packets, the header of at least one of the sub-packets includes group package indication information, and the group package indication information is used by the opposite end to receive at least two After the sub-data packet, grouping at least two of the sub-data packets according to the group packet indication information; or
若所述一组数据包中包含至少两个子数据包和至少一个原数据包,则至少一个所述子数据包的包头包含所述组包指示信息,并且每个所述原数据包携带标识,所述标识用于所述对端识别所述原数据包。If the set of data packets includes at least two sub-packets and at least one original data packet, the packet header of at least one of the sub-data packets includes the group packet indication information, and each of the original data packets carries an identifier, The identifier is used by the peer to identify the original data packet.
本发明第二个方面提供一种数据包传输的装置,所述方法应用于半双工频分双工机器对机器系统,包括:A second aspect of the present invention provides an apparatus for data packet transmission, the method being applied to a half-duplex frequency division duplex machine-to-machine system, comprising:
接收模块,用于接收对端发送的一组数据包,所述一组数据包包含n个数据包,所述n个数据包按顺序分别对应在n个进程,所述n为大于或等于二的正整数,且所述n≤最大进程数;a receiving module, configured to receive a set of data packets sent by the peer end, where the set of data packets includes n data packets, where the n data packets respectively correspond to n processes in sequence, and the n is greater than or equal to two a positive integer, and the n ≤ maximum number of processes;
处理模块,用于当所述一组数据包接收成功时,指示所述接收模块再接收所述对端发送的下一组数据包。And a processing module, configured to: when the group of data packets is successfully received, instruct the receiving module to receive the next group of data packets sent by the peer end.
结合第二个方面,在第一种可能的实现方式中,还包括:In combination with the second aspect, in the first possible implementation manner, the method further includes:
发送模块,用于向所述对端发送接收响应消息,所述接收响应消息携带数据包的接收失败信息,和/或数据包的接收成功信息;a sending module, configured to send a receiving response message to the peer end, where the receiving response message carries a receiving failure information of the data packet, and/or a receiving success information of the data packet;
所述接收模块,还用于若所述接收响应消息包含数据包的接收失败信息, 则接收所述对端重传的所述数据包的接收失败信息对应的数据包。The receiving module is further configured to: if the receiving response message includes a receiving failure information of the data packet, And receiving a data packet corresponding to the receiving failure information of the data packet retransmitted by the peer end.
结合第二个方面的第一种可能的实现方式,在第二种可能的实现方式中,所述数据包的接收失败信息为数据包重传指示,所述数据包重传指示用于指示所述对端重新传输m个数据包,所述m为大于零的正整数,并且m≤n;With reference to the first possible implementation manner of the second aspect, in a second possible implementation manner, the receiving failure information of the data packet is a data packet retransmission indication, where the data packet retransmission indication is used to indicate The opposite end retransmits m data packets, where m is a positive integer greater than zero, and m≤n;
所述接收模块,具体用于分别在m个进程上接收所述对端重传的所述m个所述数据包;还具体用于直至m个所述数据包接收成功,再接收所述对端发送的下一组数据包。The receiving module is specifically configured to receive, by the m processes, the m data packets that are retransmitted by the peer end, and specifically, to receive the data packets until the m data packets are successfully received, and then receive the pair. The next set of packets sent by the end.
结合第二个方面或第二个方面的上述任一种可能的实现方式,在第三种可能的实现方式中,还包括:With reference to the second aspect or any one of the foregoing possible implementation manners of the second aspect, in a third possible implementation manner, the method further includes:
当所述一组数据包组包失败后,则所述数据包的接收失败信息为组重传指示,所述组重传指示用于指示所述对端重新传输所述一组数据包。The receiving failure information of the data packet is a group retransmission indication, and the group retransmission indication is used to instruct the peer to retransmit the group of data packets.
结合第二个方面或第二个方面的上述任一种可能的实现方式,在第四种可能的实现方式中,所述数据包为未经拆分的原数据包,和/或,所述数据包为通过拆分原数据包获得的子数据包;With reference to the second aspect, or any one of the foregoing possible implementation manners of the second aspect, in a fourth possible implementation, the data packet is an unsplit original data packet, and/or the The data packet is a sub-data packet obtained by splitting the original data packet;
其中,若所述一组数据包中包含至少两个子数据包,则至少一个所述子数据包的包头包含组包指示信息;所述处理模块,还用于根据所述组包指示信息对至少两个所述子数据包进行组包;或者,If the set of data packets includes at least two sub-packets, the header of the at least one of the sub-packets includes the packet-instruction information, and the processing module is further configured to: Two of the sub-packets are grouped; or,
若所述一组数据包中包含至少两个子数据包和至少一个原数据包,则至少一个所述子数据包的包头包含所述组包指示信息,并且每个所述原数据包携带标识,所述处理模块,还用于根据所述标识识别所述原数据包。If the set of data packets includes at least two sub-packets and at least one original data packet, the packet header of at least one of the sub-data packets includes the group packet indication information, and each of the original data packets carries an identifier, The processing module is further configured to identify the original data packet according to the identifier.
本发明第三个方面提供一种数据包传输的装置,所述装置应用于半双工频分双工机器对机器系统,包括:A third aspect of the present invention provides an apparatus for data packet transmission, the apparatus being applied to a half-duplex frequency division duplex machine-to-machine system, comprising:
发射器,用于向对端发送一组数据包,所述一组数据包包含n个数据包;还用于当所述一组数据包发送成功时,再向所述对端发送下一组数据包;a transmitter, configured to send a set of data packets to the peer end, where the set of data packets includes n data packets; and is further configured to send the next group to the peer end when the set of data packets is successfully sent data pack;
处理器,用于按顺序在发送时将所述n个数据包分别对应n个进程,所述n为大于或等于二的正整数,且所述n≤最大进程数。And a processor, configured to sequentially correspond to the n data packets to n processes, where n is a positive integer greater than or equal to two, and the n≤maximum number of processes.
结合第三个方面,在第一种可能的实现方式中,还包括:In combination with the third aspect, in the first possible implementation manner, the method further includes:
接收器,用于接收所述对端发送的接收响应消息,所述接收响应消息携带数据包的接收失败信息,和/或数据包的接收成功信息;a receiver, configured to receive a receiving response message sent by the peer end, where the receiving response message carries a receiving failure information of the data packet, and/or a receiving success information of the data packet;
所述发射器,还用于若所述接收响应消息包含数据包的接收失败信息, 则重传所述数据包的接收失败信息对应的数据包。The transmitter is further configured to: if the receiving response message includes a receiving failure information of the data packet, Then, the data packet corresponding to the reception failure information of the data packet is retransmitted.
结合第三个方面的第一种可能的实现方式,在第二种可能的实现方式中,所述数据包的接收失败信息为数据包重传指示,所述数据包重传指示用于指示重新传输m个数据包,所述m为大于零的正整数,并且m≤n;With reference to the first possible implementation manner of the third aspect, in a second possible implementation manner, the receiving failure information of the data packet is a data packet retransmission indication, where the data packet retransmission indication is used to indicate re Transmitting m data packets, the m being a positive integer greater than zero, and m≤n;
所述发射器,具体用于根据所述数据包重传指示将所述m个所述数据包分别在m个进程上进行重传;具体还用于直至m个所述数据包发送成功,再向所述对端发送下一组数据包。The transmitter is specifically configured to retransmit the m data packets on the m processes according to the data packet retransmission indication; specifically, the m data packets are successfully sent, and then Sending the next set of data packets to the peer.
结合第三个方面的第二种可能的实现方式,在第三种可能的实现方式中,所述处理器,还用于若至少一个所述数据包的重传次数超过预置的数据包最大重传次数,则停止对至少一个所述数据包的重传。With reference to the second possible implementation manner of the third aspect, in a third possible implementation, the processor is further configured to: if the retransmission times of the at least one of the data packets exceed the preset maximum data packet size The number of retransmissions stops retransmission of at least one of the data packets.
结合第三个方面的第三种可能的实现方式,在第四种可能的实现方式中,所述处理器,还用于判断所述一组数据包的重传次数是否超过组最大重传次数;With reference to the third possible implementation manner of the third aspect, in a fourth possible implementation, the processor is further configured to determine whether the number of retransmissions of the group of data packets exceeds a maximum number of retransmissions of the group ;
所述发射器,还用于若所述一组数据包的重传次数未超过所述组最大重传次数,则将所述一组数据包进行重传;或者,The transmitter is further configured to retransmit the group of data packets if the number of retransmissions of the group of data packets does not exceed the maximum number of retransmissions of the group; or
所述处理器,还用于若所述一组数据包的重传次数超过所述组最大重传次数,则丢弃所述一组数据包;The processor is further configured to discard the set of data packets if the number of retransmissions of the set of data packets exceeds a maximum number of retransmissions of the group;
所述发射器,还用于向所述对端发送下一组数据包。The transmitter is further configured to send the next group of data packets to the peer end.
结合第三个方面的第一种可能的实现方式,在第五种可能的实现方式中,所述数据包的接收失败信息为组重传指示,所述组重传指示用于指示将所述一组数据包进行重传;With reference to the first possible implementation manner of the third aspect, in a fifth possible implementation, the receiving failure information of the data packet is a group retransmission indication, where the group retransmission indication is used to indicate that the a set of data packets for retransmission;
所述处理器,还用于判断所述一组数据包的重传次数是否超过组最大重传次数;The processor is further configured to determine whether the number of retransmissions of the group of data packets exceeds a maximum number of retransmissions of the group;
所述发射器,还用于若所述一组数据包的重传次数未超过所述组最大重传次数,根据所述组重传指示将所述一组数据包进行重传;或者,The transmitter is further configured to: if the number of retransmissions of the group of data packets does not exceed the maximum number of retransmissions of the group, retransmit the group of data packets according to the group retransmission indication; or
所述处理器,还用于若所述一组数据包的重传次数超过所述组最大重传次数,则丢弃所述一组数据包;The processor is further configured to discard the set of data packets if the number of retransmissions of the set of data packets exceeds a maximum number of retransmissions of the group;
所述发射器,还用于向所述对端发送下一组数据包;还用于直至n个所述数据包发送成功,再向所述对端发送下一组数据包。The transmitter is further configured to send the next set of data packets to the opposite end; and is further configured to send the next set of data packets to the opposite end until the n data packets are successfully sent.
结合第三个方面或第三个方面的上述任一种可能的实现方式,在第六种 可能的实现方式中,所述数据包为未经拆分的原数据包,和/或,所述数据包为通过拆分原数据包获得的子数据包;Combining any of the above possible implementations of the third aspect or the third aspect, in the sixth In a possible implementation, the data packet is an unsplit original data packet, and/or the data packet is a sub-data packet obtained by splitting the original data packet;
其中,若所述一组数据包中包含至少两个子数据包,则至少一个所述子数据包的包头包含组包指示信息,所述组包指示信息用于所述对端接收到至少两个所述子数据包后,根据所述组包指示信息对至少两个所述子数据包进行组包;或者,Wherein, if the set of data packets includes at least two sub-packets, the header of at least one of the sub-packets includes group package indication information, and the group package indication information is used by the opposite end to receive at least two After the sub-data packet, grouping at least two of the sub-data packets according to the group packet indication information; or
若所述一组数据包中包含至少两个子数据包和至少一个原数据包,则至少一个所述子数据包的包头包含所述组包指示信息,并且每个所述原数据包携带标识,所述标识用于所述对端识别所述原数据包。If the set of data packets includes at least two sub-packets and at least one original data packet, the packet header of at least one of the sub-data packets includes the group packet indication information, and each of the original data packets carries an identifier, The identifier is used by the peer to identify the original data packet.
本发明第四个方面提供一种数据包传输的装置,所述方法应用于半双工频分双工机器对机器系统,包括:A fourth aspect of the present invention provides an apparatus for data packet transmission, the method being applied to a half-duplex frequency division duplex machine-to-machine system, comprising:
接收器,用于接收对端发送的一组数据包,所述一组数据包包含n个数据包,所述n个数据包按顺序分别对应在n个进程,所述n为大于或等于二的正整数,且所述n≤最大进程数;a receiver, configured to receive a set of data packets sent by the peer end, where the set of data packets includes n data packets, where the n data packets respectively correspond to n processes in sequence, and the n is greater than or equal to two a positive integer, and the n ≤ maximum number of processes;
处理器,用于当所述一组数据包接收成功时,指示所述接收器再接收所述对端发送的下一组数据包。And a processor, configured to: when the group of data packets is successfully received, instruct the receiver to receive the next group of data packets sent by the peer end.
结合第四个方面,在第一种可能的实现方式中,还包括:In combination with the fourth aspect, in the first possible implementation manner, the method further includes:
发射器,用于向所述对端发送接收响应消息,所述接收响应消息携带数据包的接收失败信息,和/或数据包的接收成功信息;a transmitter, configured to send a receiving response message to the peer end, where the receiving response message carries a receiving failure information of the data packet, and/or a receiving success information of the data packet;
所述接收器,还用于若所述接收响应消息包含数据包的接收失败信息,则接收所述对端重传的所述数据包的接收失败信息对应的数据包。The receiver is further configured to: if the receiving response message includes the receiving failure information of the data packet, receive the data packet corresponding to the receiving failure information of the data packet retransmitted by the opposite end.
结合第四个方面的第一种可能的实现方式,在第二种可能的实现方式中,所述数据包的接收失败信息为数据包重传指示,所述数据包重传指示用于指示所述对端重新传输m个数据包,所述m为大于零的正整数,并且m≤n;With reference to the first possible implementation manner of the fourth aspect, in a second possible implementation manner, the receiving failure information of the data packet is a data packet retransmission indication, where the data packet retransmission indication is used to indicate The opposite end retransmits m data packets, where m is a positive integer greater than zero, and m≤n;
所述接收器,具体用于分别在m个进程上接收所述对端重传的所述m个所述数据包;还具体用于直至m个所述数据包接收成功,再接收所述对端发送的下一组数据包。The receiver is specifically configured to receive, by the m processes, the m data packets that are retransmitted by the peer end, and specifically, to receive the data packets until the m data packets are successfully received, and then receive the pair. The next set of packets sent by the end.
结合第四个方面或第四个方面的上述任一种可能的实现方式,在第三种可能的实现方式中,还包括:With reference to the fourth aspect or any one of the foregoing possible implementation manners of the fourth aspect, in a third possible implementation manner, the method further includes:
当所述一组数据包组包失败后,则所述数据包的接收失败信息为组重传 指示,所述组重传指示用于指示所述对端重新传输所述一组数据包。After the group of data packet fails, the receiving failure information of the data packet is a group retransmission. The group retransmission indication is used to instruct the peer to retransmit the set of data packets.
结合第四个方面或第四个方面的上述任一种可能的实现方式,在第四种可能的实现方式中,所述数据包为未经拆分的原数据包,和/或,所述数据包为通过拆分原数据包获得的子数据包;With reference to the fourth aspect or any one of the foregoing possible implementation manners of the fourth aspect, in a fourth possible implementation, the data packet is an unsplit original data packet, and/or the The data packet is a sub-data packet obtained by splitting the original data packet;
其中,若所述一组数据包中包含至少两个子数据包,则至少一个所述子数据包的包头包含组包指示信息;所述处理器,还用于所述对端接收到至少两个所述子数据包后,根据所述组包指示信息对至少两个所述子数据包进行组包;或者,Wherein, if the set of data packets includes at least two sub-packets, the header of at least one of the sub-packets includes packet indication information; and the processor is further configured to receive, by the peer, at least two After the sub-data packet, grouping at least two of the sub-data packets according to the group packet indication information; or
若所述一组数据包中包含至少两个子数据包和至少一个原数据包,则至少一个所述子数据包的包头包含所述组包指示信息,并且每个所述原数据包携带标识,所述处理器,还用于根据所述标识识别所述原数据包。If the set of data packets includes at least two sub-packets and at least one original data packet, the packet header of at least one of the sub-data packets includes the group packet indication information, and each of the original data packets carries an identifier, The processor is further configured to identify the original data packet according to the identifier.
本发明第五个方面提供一种数据包传输系统,包括:至少一个第一个方面或第一个方面的上述任一种可能的实现方式所述的数据包传输的装置和至少一个第二个方面或第二个方面的上述任一种可能的实现方式所述的数据包传输的装置;或者,至少一个第三个方面或第三个方面的上述任一种可能的实现方式所述的数据包传输的装置和至少一个第四个方面或第四个方面的上述任一种可能的实现方式所述的数据包传输的装置。A fifth aspect of the present invention provides a packet transmission system, comprising: at least one apparatus of the packet transmission and at least one second of any one of the foregoing possible implementation manners of the first aspect or the first aspect The apparatus of the data packet transmission of any one of the foregoing possible implementations of the second aspect, or the data of any one of the foregoing possible implementation manners of the third aspect or the third aspect Apparatus for packet transmission and apparatus for data packet transmission according to at least one of the fourth aspect or any one of the above possible implementations of the fourth aspect.
本发明第六个方面提供一种数据包传输的方法,所述方法应用于半双工频分双工机器对机器系统,包括:A sixth aspect of the present invention provides a method of data packet transmission, the method being applied to a half-duplex frequency division duplex machine-to-machine system, comprising:
向对端发送一组数据包,所述一组数据包包含n个数据包,所述n个数据包发送时按顺序分别对应n个进程,所述n为大于或等于二的正整数,且所述n≤最大进程数;Transmitting, to the peer end, a set of data packets, where the set of data packets includes n data packets, where the n data packets are sent in sequence corresponding to n processes, where n is a positive integer greater than or equal to two, and The n ≤ the maximum number of processes;
当所述一组数据包发送成功时,再向所述对端发送下一组数据包。When the set of data packets is successfully sent, the next set of data packets is sent to the opposite end.
结合第六个方面,在第一种可能的实现方式中,在当所述一组数据包发送成功时,再向所述对端发送下一组数据包之前,还包括:With reference to the sixth aspect, in a first possible implementation, before the sending of the next set of data packets to the opposite end, when the sending of the set of data packets is successful, the method further includes:
接收所述对端发送的接收响应消息,所述接收响应消息携带数据包的接收失败信息,和/或数据包的接收成功信息;Receiving a receiving response message sent by the peer end, where the receiving response message carries a receiving failure information of the data packet, and/or a receiving success information of the data packet;
所述接收所述对端发送的接收响应消息之后,还包括:After receiving the receiving response message sent by the peer, the method further includes:
若所述接收响应消息包含数据包的接收失败信息,则重传所述数据包的接收失败信息对应的数据包。 And if the receiving response message includes the receiving failure information of the data packet, retransmitting the data packet corresponding to the receiving failure information of the data packet.
结合第六个方面的第一种可能的实现方式,在第二种可能的实现方式中,所述数据包的接收失败信息为数据包重传指示,所述数据包重传指示用于指示重新传输m个数据包,所述m为大于零的正整数,并且m≤n;With reference to the first possible implementation manner of the sixth aspect, in a second possible implementation manner, the receiving failure information of the data packet is a data packet retransmission indication, where the data packet retransmission indication is used to indicate re Transmitting m data packets, the m being a positive integer greater than zero, and m≤n;
所述重传所述数据包的接收失败信息对应的数据包,包括:And the retransmitting the data packet corresponding to the receiving failure information of the data packet, including:
根据所述数据包重传指示将所述m个所述数据包分别在m个进程上进行重传;And retransmitting the m pieces of the data packets on m processes according to the data packet retransmission indication;
所述当所述一组数据包发送成功时,再向所述对端发送下一组数据包,包括:And when the sending of the set of data packets is successful, sending the next set of data packets to the peer end, including:
直至m个所述数据包发送成功,再向所述对端发送下一组数据包。Until the m packets are successfully sent, the next group of data packets is sent to the peer.
结合第六个方面的第二种可能的实现方式,在第三种可能的实现方式中,所述根据所述数据包重传指示将所述m个所述数据包分别在m个进程上进行重传之前,还包括:With reference to the second possible implementation manner of the sixth aspect, in a third possible implementation, the m data packets are respectively performed on m processes according to the data packet retransmission indication Before retransmission, it also includes:
若至少一个所述数据包的重传次数超过预置的数据包最大重传次数,则停止对至少一个所述数据包的重传。If the number of retransmissions of at least one of the data packets exceeds a preset maximum number of retransmissions of the data packet, retransmission of at least one of the data packets is stopped.
结合第六个方面的第三种可能的实现方式,在第四种可能的实现方式中,所述则停止对至少一个所述数据包的重传之后,还包括:In conjunction with the third possible implementation of the sixth aspect, in a fourth possible implementation, after the retransmission of the at least one of the data packets is stopped, the method further includes:
判断所述一组数据包的重传次数是否超过组最大重传次数;Determining whether the number of retransmissions of the group of data packets exceeds the maximum number of retransmissions of the group;
若所述一组数据包的重传次数未超过所述组最大重传次数,则将所述一组数据包进行重传;或者,If the number of retransmissions of the set of data packets does not exceed the maximum number of retransmissions of the group, retransmitting the set of data packets; or
若所述一组数据包的重传次数超过所述组最大重传次数,则丢弃所述一组数据包,并向所述对端发送下一组数据包。If the number of retransmissions of the set of data packets exceeds the maximum number of retransmissions of the group, the set of data packets is discarded, and the next set of data packets is sent to the opposite end.
结合第六个方面的第一种可能的实现方式,在第五种可能的实现方式中,所述数据包的接收失败信息为组重传指示,所述组重传指示用于指示将所述一组数据包进行重传;With reference to the first possible implementation manner of the sixth aspect, in a fifth possible implementation, the receiving failure information of the data packet is a group retransmission indication, where the group retransmission indication is used to indicate that the a set of data packets for retransmission;
所述重传所述数据包的接收失败信息对应的数据包,包括:And the retransmitting the data packet corresponding to the receiving failure information of the data packet, including:
判断所述一组数据包的重传次数是否超过组最大重传次数;Determining whether the number of retransmissions of the group of data packets exceeds the maximum number of retransmissions of the group;
若所述一组数据包的重传次数未超过所述组最大重传次数,根据所述组重传指示将所述一组数据包进行重传;或者,And if the number of retransmissions of the group of data packets does not exceed the maximum number of retransmissions of the group, retransmitting the group of data packets according to the group retransmission indication; or
若所述一组数据包的重传次数超过所述组最大重传次数,则丢弃所述一组数据包,并向所述对端发送下一组数据包; If the number of retransmissions of the set of data packets exceeds the maximum number of retransmissions of the group, discarding the set of data packets, and sending the next set of data packets to the opposite end;
所述当所述一组数据包发送成功时,再向所述对端发送下一组数据包,包括:And when the sending of the set of data packets is successful, sending the next set of data packets to the peer end, including:
直至n个所述数据包发送成功,再向所述对端发送下一组数据包。Until the n packets are successfully sent, the next group of data packets is sent to the peer.
结合第六个方面或第六个方面的上述任一种可能的实现方式,在第六种可能的实现方式中,所述数据包为未经拆分的原数据包,和/或,所述数据包为通过拆分原数据包获得的子数据包;With reference to the sixth aspect, or any one of the foregoing possible implementation manners of the sixth aspect, in a sixth possible implementation, the data packet is an unsplit original data packet, and/or The data packet is a sub-data packet obtained by splitting the original data packet;
其中,若所述一组数据包中包含至少两个子数据包,则至少一个所述子数据包的包头包含组包指示信息,所述组包指示信息用于所述对端接收到至少两个所述子数据包后,根据所述组包指示信息对至少两个所述子数据包进行组包;或者,Wherein, if the set of data packets includes at least two sub-packets, the header of at least one of the sub-packets includes group package indication information, and the group package indication information is used by the opposite end to receive at least two After the sub-data packet, grouping at least two of the sub-data packets according to the group packet indication information; or
若所述一组数据包中包含至少两个子数据包和至少一个原数据包,则至少一个所述子数据包的包头包含所述组包指示信息,并且每个所述原数据包携带标识,所述标识用于所述对端识别所述原数据包。If the set of data packets includes at least two sub-packets and at least one original data packet, the packet header of at least one of the sub-data packets includes the group packet indication information, and each of the original data packets carries an identifier, The identifier is used by the peer to identify the original data packet.
本发明第七个方面提供一种数据包传输的方法,所述方法应用于半双工频分双工机器对机器系统,包括:A seventh aspect of the present invention provides a method of data packet transmission, the method being applied to a half-duplex frequency division duplex machine-to-machine system, comprising:
接收对端发送的一组数据包,所述一组数据包包含n个数据包,所述n个数据包按顺序分别对应在n个进程,所述n为大于或等于二的正整数,且所述n≤最大进程数;Receiving a set of data packets sent by the peer end, where the set of data packets includes n data packets, where the n data packets are respectively corresponding to n processes in sequence, and the n is a positive integer greater than or equal to two, and The n ≤ the maximum number of processes;
当所述一组数据包接收成功时,再接收所述对端发送的下一组数据包。When the group of data packets is successfully received, the next group of data packets sent by the peer end is received.
结合第七个方面,在第一种可能的实现方式中,在当所述一组数据包接收成功时,再接收所述对端发送的下一组数据包之前,还包括:With reference to the seventh aspect, in a first possible implementation, before receiving the next set of data packets sent by the peer end, when the receiving of the set of data packets is successful, the method further includes:
向所述对端发送接收响应消息,所述接收响应消息携带数据包的接收失败信息,和/或数据包的接收成功信息;Sending a receiving response message to the peer end, where the receiving response message carries the receiving failure information of the data packet, and/or the receiving success information of the data packet;
所述向所述对端发送的接收响应消息之后,还包括:After the receiving the response message sent to the peer end, the method further includes:
若所述接收响应消息包含数据包的接收失败信息,则接收所述对端重传的所述数据包的接收失败信息对应的数据包。And if the receiving response message includes the receiving failure information of the data packet, receiving the data packet corresponding to the receiving failure information of the data packet retransmitted by the opposite end.
结合第七个方面的第一种可能的实现方式,在第二种可能的实现方式中,所述数据包的接收失败信息为数据包重传指示,所述数据包重传指示用于指示所述对端重新传输m个数据包,所述m为大于零的正整数,并且m≤n;With reference to the first possible implementation manner of the seventh aspect, in a second possible implementation manner, the receiving failure information of the data packet is a data packet retransmission indication, where the data packet retransmission indication is used to indicate The opposite end retransmits m data packets, where m is a positive integer greater than zero, and m≤n;
所述接收所述对端重传的所述数据包的接收失败信息对应的数据包,包 括:Receiving, by the peer, the data packet corresponding to the reception failure information of the data packet retransmitted by the peer end, include:
分别在m个进程上接收所述对端重传的所述m个所述数据包;Receiving, by the m processes, the m data packets retransmitted by the peer end respectively;
所述当所述一组数据包接收成功时,再接收所述对端发送的下一组数据包,包括:And receiving, when the group of data packets is successfully received, receiving the next group of data packets sent by the peer end, including:
直至m个所述数据包接收成功,再接收所述对端发送的下一组数据包。Until the m data packets are successfully received, the next set of data packets sent by the opposite end is received.
结合第七个方面或第七个方面的上述任一种可能的实现方式,在第三种可能的实现方式中,所述接收对端发送的一组数据包之后,还包括:With reference to the seventh aspect, or any one of the foregoing possible implementation manners of the seventh aspect, in a third possible implementation manner, after receiving the data packet sent by the peer end, the method further includes:
当所述一组数据包组包失败后,则所述数据包的接收失败信息为组重传指示,所述组重传指示用于指示所述对端重新传输所述一组数据包。The receiving failure information of the data packet is a group retransmission indication, and the group retransmission indication is used to instruct the peer to retransmit the group of data packets.
结合第七个方面或第七个方面的上述任一种可能的实现方式,在第四种可能的实现方式中,所述数据包为未经拆分的原数据包,和/或,所述数据包为通过拆分原数据包获得的子数据包;With reference to the seventh aspect, or any one of the foregoing possible implementation manners of the seventh aspect, in a fourth possible implementation, the data packet is an unsplit original data packet, and/or the The data packet is a sub-data packet obtained by splitting the original data packet;
其中,若所述一组数据包中包含至少两个子数据包,则至少一个所述子数据包的包头包含组包指示信息,接收到至少两个所述子数据包后,根据所述组包指示信息对至少两个所述子数据包进行组包;或者,Wherein, if the set of data packets includes at least two sub-packets, the header of at least one of the sub-packets includes packet indication information, and after receiving at least two of the sub-packets, according to the group of packets Instructing to group at least two of the sub-packets; or
若所述一组数据包中包含至少两个子数据包和至少一个原数据包,则至少一个所述子数据包的包头包含所述组包指示信息,并且每个所述原数据包携带标识,根据所述标识识别所述原数据包。If the set of data packets includes at least two sub-packets and at least one original data packet, the packet header of at least one of the sub-data packets includes the group packet indication information, and each of the original data packets carries an identifier, Identifying the original data packet based on the identification.
本发明实施例提供的数据包传输的装置、系统及方法,通过数据包传输的装置向对端发送一组数据包,所述一组数据包包含n个数据包,所述n个数据包发送时按顺序分别对应n个进程,所述n为大于或等于二的正整数,且所述n≤最大进程数,进一步地,当所述一组数据包发送成功时,该数据包传输的装置再向所述对端发送下一组数据包。An apparatus, system, and method for data packet transmission provided by an embodiment of the present invention, a device for transmitting a data packet transmits a set of data packets to a peer end, where the set of data packets includes n data packets, and the n data packets are sent. The time corresponds to n processes in sequence, the n is a positive integer greater than or equal to two, and the n is the maximum number of processes, and further, when the set of data packets is successfully transmitted, the device for transmitting the data packet The next set of data packets is sent to the opposite end.
而现有技术中,采用多进程传输数据的方案,数据包被分别放在一个对应的进程上进行传输,并且多个进程彼此交织,即当一个进程在等待接收端返回接收响应消息时,其他的进程上仍能够进行数据包的传输。但是,随着系统运行时间的推移,每个数据包的传输进度都不尽相同,系统需要具有复杂的排序功能,为了能够在接收端进行组包以及识别,系统需要一个复杂的拆包组包机制,发送端需要维护一个较大的缓存来存储未发送成功或需要重传的数据包,而接收端还需要维护一个较大的缓存来存储未接收成功、未组 包成功的数据包。显然,现有技术采用多进程的方式,会增大系统实现的成本和复杂度。In the prior art, a multi-process data transmission scheme is adopted, data packets are respectively transmitted on a corresponding process, and multiple processes are interleaved with each other, that is, when one process is waiting for the receiving end to return a receiving response message, the other The process is still able to transfer packets. However, as the system runs, the progress of each packet is different. The system needs to have a complex sorting function. In order to be able to assemble and identify at the receiving end, the system needs a complex unpacking package. Mechanism, the sender needs to maintain a large cache to store packets that have not been sent successfully or need to be retransmitted, and the receiver needs to maintain a large cache to store unsuccessful success, not grouped. A successful packet of packets. Obviously, the prior art adopts a multi-process approach, which increases the cost and complexity of system implementation.
与采用多进程传输的现有技术相比,本发明实施例保证只有在一组数据包传输成功后,再进行下一组数据包的传输,从而使得发送端最多只需要缓存一组数据包,接收端也只需要缓存最多一组数据包或未组包成功的数据包(需要组包时),从而节约了资源,进一步地,采用一组数据包传输成功之后再传输下一组数据包的方式,避免了由于持续传输数据包导致每个数据包的传输进度不同,进而需要设置复杂的识别、组包、重传机制,因此,本发明实施例提供的数据包传输的方法降低了在采用半双工FDD的传输方式时,方案实现的成本和复杂度。Compared with the prior art adopting multi-process transmission, the embodiment of the present invention ensures that only after a group of data packets is successfully transmitted, the next group of data packets is transmitted, so that the sender only needs to cache a group of data packets at most. The receiving end only needs to cache a maximum of one group of data packets or packets that are not successfully packaged (when a group packet is required), thereby saving resources. Further, after transmitting a group of data packets successfully, the next group of data packets is transmitted. In this way, the transmission progress of each data packet is different due to the continuous transmission of the data packet, and the complex identification, grouping, and retransmission mechanism needs to be set. Therefore, the method for transmitting the data packet provided by the embodiment of the present invention is reduced. The cost and complexity of the solution implementation when the half-duplex FDD is transmitted.
附图说明DRAWINGS
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图做一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, a brief description of the drawings used in the embodiments or the prior art description will be briefly described below. Obviously, the drawings in the following description It is a certain embodiment of the present invention, and other drawings can be obtained from those skilled in the art without any inventive labor.
图1为本发明实施例提供的一种数据包传输的装置的结构示意图;1 is a schematic structural diagram of an apparatus for transmitting a data packet according to an embodiment of the present invention;
图2为本发明实施例提供的另一种数据包传输的装置的结构示意图;2 is a schematic structural diagram of another apparatus for data packet transmission according to an embodiment of the present invention;
图3为本发明实施例提供的另一种数据包传输的装置的结构示意图;FIG. 3 is a schematic structural diagram of another apparatus for data packet transmission according to an embodiment of the present disclosure;
图4为本发明实施例提供的另一种数据包传输的装置的结构示意图;4 is a schematic structural diagram of another apparatus for data packet transmission according to an embodiment of the present invention;
图5为本发明实施例提供的另一种无线网络中传输数据的装置;FIG. 5 is a schematic diagram of another apparatus for transmitting data in a wireless network according to an embodiment of the present invention;
图6为本发明实施例提供的无线网络中传输数据的装置相关的手机的部分结构的框图;6 is a block diagram showing a part of a structure of a mobile phone related to a device for transmitting data in a wireless network according to an embodiment of the present invention;
图7为本发明实施例提供的一种数据包传输的方法流程示意图;FIG. 7 is a schematic flowchart of a method for data packet transmission according to an embodiment of the present disclosure;
图8为本发明实施例提供的另一种数据包传输的方法流程示意图;FIG. 8 is a schematic flowchart of another method for data packet transmission according to an embodiment of the present invention;
图9为本发明实施例提供的一种数据包重传方法示意图;FIG. 9 is a schematic diagram of a method for retransmitting a data packet according to an embodiment of the present invention;
图10为本发明实施例提供的另一种数据包重传方法示意图; FIG. 10 is a schematic diagram of another method for retransmitting a data packet according to an embodiment of the present invention;
图11为本发明实施例提供的另一种数据包传输的方法的流程示意图;FIG. 11 is a schematic flowchart diagram of another method for data packet transmission according to an embodiment of the present disclosure;
图12为本发明实施例提供的另一种数据包传输的方法的流程示意图;FIG. 12 is a schematic flowchart diagram of another method for data packet transmission according to an embodiment of the present disclosure;
图13为本发明实施例提供的另一种数据包传输的方法的交互示意图。FIG. 13 is a schematic diagram of interaction of another method for data packet transmission according to an embodiment of the present invention.
具体实施方式detailed description
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。The technical solutions in the embodiments of the present invention will be clearly and completely described in conjunction with the drawings in the embodiments of the present invention. It is a partial embodiment of the invention, and not all of the embodiments. All other embodiments obtained by those skilled in the art based on the embodiments of the present invention without creative efforts are within the scope of the present invention.
在M2M系统的终端采用半双工FDD的传输方式时,当现有技术采用多进程传输数据的方案时,数据包被分别放在一个对应的进程上进行传输,并且多个进程彼此独立并且交织,即当某一个进程在等待接收端返回接收响应消息时,其他的进程上仍能够进行数据包的传输。但是,随着系统运行时间的推移,每个数据包的传输进度都不尽相同,为了能够在接收端进行识别和组包,系统需要具有重新排序的功能,而且组包机制的复杂度高。并且接收端还需要维护一个较大的缓存来存储未组包成功或等待重传的数据包。显然,采用多进程的方式,会增大系统实现的成本和复杂度。When the terminal of the M2M system adopts the half-duplex FDD transmission mode, when the prior art adopts a multi-process transmission data scheme, the data packets are respectively transmitted on a corresponding process, and the multiple processes are independent and interleaved. That is, when a certain process is waiting for the receiving end to return a receiving response message, the other processes can still transmit the data packet. However, with the running time of the system, the transmission progress of each data packet is different. In order to be able to identify and assemble packets at the receiving end, the system needs to have the function of reordering, and the complexity of the grouping mechanism is high. And the receiver also needs to maintain a large cache to store packets that are not successfully packaged or are waiting to be retransmitted. Obviously, adopting a multi-process approach will increase the cost and complexity of system implementation.
此外,现有技术还提供了一种单进程传输的方式,即发送端发送一个数据包后等待接收端的接收响应消息,当该数据包在接收端解码正确,则返回的接收响应消息包含确认信息(ACK),指示发送端该数据包接收成功;否则,返回的接收响应消息包含非确认信息(NACK),指示发送端该数据包接收失败,发送端接收到非确认信息后,则对该数据包进行重传。并且在发送端等待接收端确认的时间内,该发送端不能发送其他的数据包。显然,采用这种单进程的传输方式,如果将一个数据包整体发送出去,当出现接收失败的情况,则需要将整个大数据包进行重传,从而造成资源浪费,降低效率。In addition, the prior art also provides a single-process transmission mode, that is, the transmitting end waits for the receiving end to receive a response message after transmitting a data packet, and when the data packet is correctly decoded at the receiving end, the returned receiving response message includes the confirmation information. (ACK), indicating that the data packet is successfully received by the transmitting end; otherwise, the returned receiving response message includes non-acknowledgement information (NACK), indicating that the data packet is not received by the transmitting end, and the transmitting end receives the non-acknowledgment information, then the data is received. The package is retransmitted. And the transmitting end cannot send other data packets while the transmitting end waits for the receiving end to confirm. Obviously, if the single-process transmission mode is used, if a packet is sent out as a whole, when the reception fails, the entire large data packet needs to be retransmitted, thereby causing waste of resources and reducing efficiency.
因此,针对上述问题,本发明实施例提供一种数据包传输的装置、方法及系统,在保证传输效率和系统吞吐量的同时能够降低方案实现的成本和 复杂度。下面通过具体实施例进行说明:Therefore, the embodiments of the present invention provide a device, a method, and a system for data packet transmission, which can reduce the cost of implementing the solution while ensuring transmission efficiency and system throughput. the complexity. The following describes by way of specific embodiments:
图1为本发明实施例提供的一种数据包传输的装置的结构示意图,该装置应用于半双工FDD机器对机器系统,并且该装置作为数据包的发送端,具体的,该装置可以为基站、机器、具备通信功能的水表、电表等抄表、手机、支持各种通信制式(2G/3G/4G/5G/wifi/蓝牙等)的通信设备、M2M的终端,参照图1,该装置包括:处理模块100、发送模块101。1 is a schematic structural diagram of an apparatus for transmitting a data packet according to an embodiment of the present invention. The apparatus is applied to a half-duplex FDD machine-to-machine system, and the apparatus is used as a transmitting end of a data packet. Specifically, the apparatus may be Base station, machine, water meter with electricity function, meter reading, mobile phone, communication device supporting various communication systems (2G/3G/4G/5G/wifi/Bluetooth, etc.), M2M terminal, refer to FIG. The processing module 100 includes a processing module 100.
发送模块101,用于向对端发送一组数据包,所述一组数据包包含n个数据包;还用于当所述一组数据包发送成功时,再向所述对端发送下一组数据包;The sending module 101 is configured to send a set of data packets to the peer end, where the set of data packets includes n data packets, and is further configured to send the next data to the opposite end when the set of data packets is successfully sent. Group data packet
处理模块100,用于按顺序在发送时将所述n个数据包分别对应n个进程,所述n为大于或等于二的正整数,且所述n≤最大进程数。The processing module 100 is configured to sequentially sequence the n data packets corresponding to n processes, where n is a positive integer greater than or equal to two, and the n≤maximum number of processes.
本发明实施例提供的数据包传输的装置,通过发送模块向对端发送一组数据包,所述一组数据包包含n个数据包,处理模块按顺序在发送时将所述n个数据包分别对应n个进程,所述n为大于或等于二的正整数,且所述n≤最大进程数。发送模块当所述一组数据包发送成功时,再向所述对端发送下一组数据包。与采用多进程传输的现有技术相比,本发明实施例保证只有在一组数据包传输成功后,再进行下一组数据包的传输,发送端最多只需要缓存一组数据包,接收端也只需要缓存最多一组数据包或未组包成功的数据包(需要组包时),从而节约了资源,进一步地,采用一组数据包传输成功之后再传输下一组数据包的方式,避免了由于持续传输数据包导致每个数据包的传输进度不同,从而需要设置复杂的识别、组包、重传机制,本发明实施例提供的数据包传输的装置在保证传输效率和系统吞吐量的同时能够降低方案实现的成本和复杂度。The device for transmitting a data packet provided by the embodiment of the present invention sends a set of data packets to the opposite end by the sending module, where the set of data packets includes n data packets, and the processing module sequentially sends the n data packets when transmitting. Corresponding to n processes respectively, the n is a positive integer greater than or equal to two, and the n ≤ the maximum number of processes. The sending module sends the next set of data packets to the opposite end when the set of data packets is successfully sent. Compared with the prior art adopting multi-process transmission, the embodiment of the present invention ensures that only after a group of data packets is successfully transmitted, the next group of data packets is transmitted, and the transmitting end only needs to cache a group of data packets at the receiving end. It is also only necessary to cache a maximum of one group of packets or a packet that is not successfully packaged (when a package is required), thereby saving resources, and further, a method of transmitting a next set of data packets after a successful transmission of a set of data packets is performed. The transmission progress of each data packet is different due to the continuous transmission of data packets, so that a complex identification, grouping, and retransmission mechanism needs to be set. The device for transmitting data packets provided by the embodiments of the present invention ensures transmission efficiency and system throughput. At the same time, it can reduce the cost and complexity of the solution implementation.
与采用的单进程传输的现有技术相比,本发明实施例每次能够发送一组数据包,能够快速的发送数据包,节省终端功耗,提高了数据包传输的吞吐量。Compared with the prior art of single-process transmission, the embodiment of the present invention can send a group of data packets each time, can quickly send data packets, save terminal power consumption, and improve throughput of data packet transmission.
优选地,为了简化M2M系统高层的设计,同时考虑到M2M系统针对的是小数据包业务,因此上述数据包传输的装置取消无线链路控制(Radio Link Control,简称:RLC)层,媒体接入控制(Medium Access Control,简称:MAC)层支持简单的拆包、组包功能。MAC层根据信道实时情况将需要被拆 分的数据包拆分成大小合适的数据包,MAC层的数据包可以是原数据包或者是子数据包。一组数据包中,所述数据包为未经拆分的原数据包,和/或,所述数据包为通过拆分原数据包获得的子数据包。Preferably, in order to simplify the design of the upper layer of the M2M system, and considering that the M2M system is for small data packet services, the device for transmitting the data packet cancels the Radio Link Control (RLC) layer and media access. The Medium Access Control (MAC) layer supports simple unpacking and grouping functions. The MAC layer will need to be removed according to the real-time situation of the channel. The divided data packets are split into data packets of appropriate size, and the data packets of the MAC layer may be original data packets or sub-data packets. In a group of data packets, the data packet is an unpacked original data packet, and/or the data packet is a sub-data packet obtained by splitting the original data packet.
具体的,一组数据包包含数据包的类型可能有如下可能:一、一组数据包只包含通过拆分原数据包获得的多个子数据包;二、一组数据包中包含全部为未经拆分的原数据包;三、一组数据包中包含通过拆分原数据包获得的多个子数据包和未经拆分的原数据包。Specifically, a group of data packets including the type of the data packet may have the following possibilities: 1. A group of data packets only includes multiple sub-data packets obtained by splitting the original data packet; 2. A group of data packets includes all of the data packets. Split original data packet; Third, a group of data packets contains multiple sub-packets obtained by splitting the original data packet and unpacked original data packets.
需要说明的是,当一个原数据包例如,多媒体接入控制业务数据单元(Media Access Control Service Data Unit,简称:MAC SDU),其大小超过阈值时,则处理模块100可以将该原数据包拆分成多个子数据包,本实施例对于阈值的大小并未做限定,该阈值可以在不同的场景中根据系统需求进行设置。It should be noted that, when an original data packet, for example, a Media Access Control Service Data Unit (MAC SDU) whose size exceeds a threshold, the processing module 100 may tear down the original data packet. The method is divided into a plurality of sub-packets. The size of the threshold is not limited in this embodiment. The threshold may be set according to system requirements in different scenarios.
其中,对于上述可能一,若所述一组数据包中包含至少两个子数据包,则至少一个所述子数据包的包头包含组包指示信息,所述组包指示信息用于所述对端接收到至少两个所述子数据包后,根据所述组包指示信息对至少两个所述子数据包进行组包;Wherein, for the first possibility, if the set of data packets includes at least two sub-packets, the header of at least one of the sub-packets includes group package indication information, where the group package indication information is used by the peer end After receiving at least two of the sub-data packets, grouping at least two of the sub-data packets according to the group package indication information;
具体的,当一组数据包中包含通过拆分原数据包获得的多个子数据包,为了便于接收端对子数据包进行识别,以便进行子数据包的组包。一种可能的实现方式为:属于原数据包的最后一个子数据包要包含指示,告知接收端该子数据包为最后一个数据包。Specifically, when a group of data packets includes multiple sub-data packets obtained by splitting the original data packet, in order to facilitate the receiving end to identify the sub-data packet, the sub-packet is grouped. A possible implementation manner is that the last sub-packet belonging to the original data packet should include an indication that the sub-packet is the last data packet.
或者,当处理模块100采用每一组数据包只放置一个通过拆分原数据包获得的多个子数据包时,每组数据包可以不携带上述指示信息。例如,预置发送端和接收端传输的每组数据包中只包含通过拆分一个原数据包获得的多个子数据包,接收端在接收到该组数据包后,将该组数据包组包即可。或者,又例如,若发送端和接收端可以传输上述三种可能的数据包的类型,那么每一种数据包的类型对应一种传输模式,当每组数据包中只包含通过拆分一个原数据包获得的多个子数据包,采用特定传输模式,则发送端通知接收端,之后发送的每组数据包仅只包含通过拆分一个原数据包获得的多个子数据包,那么此时该组数据包中也不需要携带指示信息,接收端在接收到该组数据包后,将该组数据包组包即可。 Alternatively, when the processing module 100 uses only one sub-packet obtained by splitting the original data packet for each group of data packets, each group of data packets may not carry the above-mentioned indication information. For example, each group of data packets transmitted by the preset transmitting end and the receiving end only includes a plurality of sub-data packets obtained by splitting one original data packet, and after receiving the data packet, the receiving end groups the data packet. Just fine. Or, for example, if the sender and the receiver can transmit the types of the three possible data packets, each type of the data packet corresponds to a transmission mode, and each group of data packets only includes one by splitting the original The plurality of sub-packets obtained by the data packet adopt a specific transmission mode, and the transmitting end notifies the receiving end, and each group of data packets transmitted thereafter only includes a plurality of sub-packets obtained by splitting one original data packet, and then the group data is The packet does not need to carry the indication information, and after receiving the group of data packets, the receiving end can group the group of data packets.
对于上述可能二,当一组数据包中包含的全部为未经拆分的原数据包,则不需要携带任何指示信息。For the above two possibilities, when all the data packets contained in a group of packets are unsplit original data packets, it is not necessary to carry any indication information.
对于上述可能三,若所述一组数据包中包含至少两个子数据包和至少一个原数据包,则至少一个所述子数据包的包头包含所述组包指示信息,并且每个所述原数据包携带标识,所述标识用于所述对端识别所述原数据包。For the above third possibility, if the set of data packets includes at least two sub-data packets and at least one original data packet, the header of at least one of the sub-data packets includes the group package indication information, and each of the original The data packet carries an identifier for the peer to identify the original data packet.
具体的,当一组数据包中包含通过拆分原数据包获得的多个子数据包和未经拆分的原数据包时,为了便于接收端识别多个子数据包以及未经拆分的原数据包。一种可行的实现方式为:每个子数据包携带1bit(0/1)指示,1表示最后一个子数据包或者未经拆分的原数据包,0表示非最后一个子数据包;例如,发送端将一个原数据包拆成了五个子数据包,该组数据包还包括其他两个未经拆分的原数据包,共七个数据包。在进行传输时,第一个至第四个子数据包携带的组包指示信息为“0”,最后一个子数据包携带的组包指示信息为“1”。对于另外两个未经拆分的原数据包,其可以不携带组包指示信息,或者其携带的组包指示信息为“1”。另一种可行的实现方式为:最后一个子数据包和未经拆分的原数据包携带指示信息,非最后一个子数据包则不携带指示。继续以上文示例为例,第一个至第四个子数据包不携带组包指示信息,最后一个子数据包携带组包指示信息为“1”,对于另外两个未经拆分的原数据包,其携带的组包指示信息为“1”。Specifically, when a group of data packets includes multiple sub-packets and unsplit original data packets obtained by splitting the original data packet, in order to facilitate the receiving end to identify multiple sub-data packets and unsplit original data. package. A feasible implementation manner is: each sub-packet carries a 1 bit (0/1) indication, 1 indicates the last sub-packet or the unsplit original data packet, and 0 indicates the non-last sub-packet; for example, sending The end splits an original data packet into five sub-packets, which also include two other unsplit original data packets, for a total of seven data packets. When transmitting, the packet indication information carried by the first to fourth sub-packets is “0”, and the packet indication information carried by the last sub-packet is “1”. For the other two unsplit original data packets, they may not carry the packet indication information, or the packet indication information carried by the packet is "1". Another possible implementation manner is that the last sub-packet and the unsplit original data packet carry the indication information, and the non-last sub-data packet does not carry the indication. Continuing the example above, the first to fourth sub-packets do not carry the packet indication information, and the last sub-packet carries the packet indication information as "1" for the other two unsplit original packets. The packet indication information carried by the packet is "1".
在图1的基础上,图2为本发明实施例提供的另一种数据包传输的装置的结构示意图,参照图2,该装置,还包括:接收模块102。FIG. 2 is a schematic structural diagram of another apparatus for data packet transmission according to an embodiment of the present invention. Referring to FIG. 2, the apparatus further includes: a receiving module 102.
在发送模块101再向所述对端发送下一组数据包之前,接收模块102,用于接收所述对端发送的接收响应消息,所述接收响应消息携带数据包的接收失败信息,和/或数据包的接收成功信息;Before the sending module 101 sends the next set of data packets to the opposite end, the receiving module 102 is configured to receive the receiving response message sent by the opposite end, where the receiving response message carries the receiving failure information of the data packet, and/ Or the success message of receiving the data packet;
所述发送模块101,还用于若所述接收响应消息包含数据包的接收失败信息,则重传所述数据包的接收失败信息对应的数据包。The sending module 101 is further configured to: if the receiving response message includes receiving failure information of the data packet, retransmitting the data packet corresponding to the receiving failure information of the data packet.
进一步地,对于本发明实施例提供的数据包传输的装置,当传输过程中有数据包出现传输失败,那么就需要引入重传机制来保证数据包传输的可靠性。下面通过具体的实施例对基于本发明实施例提供的数据包传输的装置的数据包重传机制进行说明,需要说明的是,本发明下述实施例仅以几种可能的实现方式作为示例进行说明,其并不限定本发明的保护范围,显然,在本 发明实施例提供的数据包传输的方法的基础上,其他可能的数据包重传机制也应该属于本发明的保护范围内。Further, for the apparatus for transmitting a data packet provided by the embodiment of the present invention, when a data packet fails to be transmitted during the transmission, a retransmission mechanism needs to be introduced to ensure the reliability of the data packet transmission. The packet retransmission mechanism of the apparatus for data packet transmission according to the embodiment of the present invention is described below by using a specific embodiment. It should be noted that the following embodiments of the present invention are only implemented by using several possible implementation manners as an example. It is to be understood that it does not limit the scope of protection of the present invention. Based on the method for data packet transmission provided by the embodiments of the present invention, other possible data packet retransmission mechanisms should also fall within the protection scope of the present invention.
可选地,对于上文所述数据包的接收失败信息,接收端将该数据包的接收失败信息发送给发送端的接收模块102,作用在于告知发送端哪些数据包传输失败,进一步地,数据包的接收失败信息可以用来指示一组数据包传输失败,也可以用来指示一组数据包中的一个或多个数据包传输失败。下面通过具体实施例对这两种可能的情况进行说明:Optionally, for receiving failure information of the data packet, the receiving end sends the receiving failure information of the data packet to the receiving module 102 of the sending end, and the function is to notify the sending end which data packet transmission fails, and further, the data packet The receive failure information can be used to indicate a group of packet transmission failures, and can also be used to indicate that one or more packets in a group of packets failed to transmit. The following two possible scenarios are illustrated by specific embodiments:
情况一:所述数据包的接收失败信息为数据包重传指示,所述数据包重传指示用于指示重新传输所述m个数据包,所述m为大于零的正整数,并且m≤n;Case 1: the receiving failure information of the data packet is a data packet retransmission indication, where the data packet retransmission indication is used to indicate retransmission of the m data packets, where m is a positive integer greater than zero, and m ≤ n;
则所述发送模块101,具体用于根据所述数据包重传指示将所述m个所述数据包分别在m个进程上进行重传;具体还用于直至m个所述数据包发送成功,再向所述对端发送下一组数据包。The sending module 101 is specifically configured to retransmit the m data packets on the m processes according to the data packet retransmission indication; specifically, the m data packets are successfully sent until the m packets are successfully sent. And sending the next set of data packets to the opposite end.
进一步地,所述处理模块100,还用于若至少一个所述数据包的重传次数超过预置的数据包最大重传次数,则停止对至少一个所述数据包的重传。Further, the processing module 100 is further configured to stop retransmission of at least one of the data packets if the number of retransmissions of the at least one data packet exceeds a preset maximum number of retransmissions of the data packet.
可选地,在发送模块101根据所述数据包重传指示将所述m个所述数据包分别在m个进程上进行重传之前,所述处理模块100,还用于判断所述一组数据包的重传次数是否超过组最大重传次数;Optionally, before the sending module 101 retransmits the m data packets on the m processes according to the data packet retransmission indication, the processing module 100 is further configured to determine the group. Whether the number of retransmissions of the packet exceeds the maximum number of retransmissions of the group;
所述发送模块101,还用于若所述一组数据包的重传次数未超过所述组最大重传次数,则将所述一组数据包进行重传;或者,The sending module 101 is further configured to retransmit the group of data packets if the number of retransmissions of the group of data packets does not exceed the maximum number of retransmissions of the group; or
所述处理模块100,还用于若所述一组数据包的重传次数超过所述组最大重传次数,则丢弃所述一组数据包;The processing module 100 is further configured to discard the set of data packets if the number of retransmissions of the set of data packets exceeds the maximum number of retransmissions of the group;
所述发送模块101,还用于向所述对端发送下一组数据包。The sending module 101 is further configured to send the next group of data packets to the peer end.
情况二:所述数据包的接收失败信息为组重传指示,所述组重传指示用于指示将所述一组数据包进行重传;Case 2: the receiving failure information of the data packet is a group retransmission indication, and the group retransmission indication is used to indicate that the group of data packets is retransmitted;
所述处理模块100,还用于判断所述一组数据包的重传次数是否超过组最大重传次数;The processing module 100 is further configured to determine whether the number of retransmissions of the group of data packets exceeds a maximum number of retransmissions of the group;
所述发送模块101,还用于若所述一组数据包的重传次数未超过所述组最大重传次数,根据所述组重传指示将所述一组数据包进行重传;或者,The sending module 101 is further configured to: if the number of retransmissions of the group of data packets does not exceed the maximum number of retransmissions of the group, retransmit the group of data packets according to the group retransmission indication; or
所述处理模块100,还用于若所述一组数据包的重传次数超过所述组最 大重传次数,则丢弃所述一组数据包;The processing module 100 is further configured to: if the number of retransmissions of the set of data packets exceeds the maximum of the group If the number of retransmissions is large, the set of data packets is discarded;
所述发送模块101,还用于向所述对端发送下一组数据包;还用于直至n个所述数据包发送成功,再向所述对端发送下一组数据包。The sending module 101 is further configured to send the next set of data packets to the opposite end; and is further configured to send the next set of data packets to the opposite end until the n data packets are successfully sent.
其中,对于情况一,需要说明的是,当进行一次数据包的重传之后,可能该m个重传的数据包中还有一部分数据包重传失败,此时,接收端反馈的接收响应消息中还包含数据包的接收失败信息,指示m个重传的数据包中有一个或多个数据包重传失败,则发送端的发送模块101会根据该数据包的接收失败信息进行重传。For the first case, it should be noted that after performing a retransmission of the data packet, some data packets in the m retransmitted data packets may fail to be retransmitted. At this time, the receiving response message received by the receiving end is received. The receiving failure information of the data packet also indicates that one or more data packet retransmission failures of the m retransmitted data packets fails, and the sending module 101 of the transmitting end performs retransmission according to the receiving failure information of the data packet.
可选地,发送端的处理模块100或接收端可以设置数据包最大重传次数和组最大重传次数,并维护每个数据包的重传次数和每组数据包的组重传次数,当一个数据包进行重传之前,先将当前该数据包的重传次数与数据包最大重传次数进行比较,若没有超过该数据包最大重传次数,则允许发送模块101重传该数据包,并且在进行重传后,处理模块100为该数据包的重传次数加“1”。若超过该数据包最大重传次数,则可以有两种可行的处理方式:一、处理模块100放弃重传该数据包;二、处理模块100进一步判断该数据包所属的一组数据包的当前的组重传次数是否超过了组最大重传次数。对于第二种处理方式,若没有超过该组最大重传次数,则发送端的发送模块101重传该组数据包;或者,若超过组最大重传次数,则处理模块100丢弃该组数据包,并指示发送模块101进行下一组数据包的发送。Optionally, the processing module 100 or the receiving end of the sending end may set the maximum number of retransmissions of the data packet and the maximum number of retransmissions of the group, and maintain the number of retransmissions of each data packet and the number of retransmissions of each group of data packets, when one Before the data packet is retransmitted, the number of retransmissions of the current data packet is compared with the maximum number of retransmissions of the data packet. If the maximum number of retransmissions of the data packet is not exceeded, the sending module 101 is allowed to retransmit the data packet, and After the retransmission, the processing module 100 adds "1" to the number of retransmissions of the data packet. If the maximum number of retransmissions of the data packet is exceeded, there are two possible processing manners: 1. The processing module 100 abandons retransmission of the data packet; 2. The processing module 100 further determines the current data of a group of data packets to which the data packet belongs. Whether the number of group retransmissions exceeds the maximum number of retransmissions in the group. For the second processing mode, if the maximum number of retransmissions of the group is not exceeded, the sending module 101 of the transmitting end retransmits the group of data packets; or, if the maximum number of retransmissions of the group is exceeded, the processing module 100 discards the group of data packets. And instructing the sending module 101 to send the next set of data packets.
或者,发送端的处理模块100或接收端针对每个数据包分别维护一个计时器,对每一组数据包维护一个计时器,以发送端为例,当发送模块101发送一组数据包时,对于该组数据包中的每个数据包,发送端的处理模块100分别对应维护一个计时器,该计时器的作用在于为每个数据包的传输时间进行计时,在该传输时间内,每个数据包的重传次数不限,当该数据包的传输时间超过对应计时器预置的传输时间上限时,则放弃该数据包的传输。类似的,发送端的处理模块100针对一组数据包也可以维护一个计时器,该计时器的作用在于为一组数据包的传输时间进行计时,在该传输时间内,该组数据包的重传此处不限,当该组数据包的传输时间超过对应计时器预置的传输时间上限时,则放弃该组数据包的传输,进行下一组数据包的传输。类似的,接收端也可以维护类似的计时器,对每个数据包和每组数据包的传输时间进 行计时,从而在一个数据包或一组数据包超过预定传输时间后,放弃传输。需要说明的是,在接收端通过计时器进行传输时间计时的方案中,当丢弃一个数据包或一组数据包时,其反馈给发送端的接收响应消息不携带数据包的接收失败信息,以使发送端不再重传对应的数据包或一组数据包。Alternatively, the processing module 100 or the receiving end of the sending end maintains a timer for each data packet, and maintains a timer for each group of data packets. Taking the sending end as an example, when the sending module 101 sends a set of data packets, For each data packet in the group of data packets, the processing module 100 at the transmitting end respectively maintains a timer, and the timer functions to time the transmission time of each data packet, and each data packet in the transmission time. The number of retransmissions is not limited. When the transmission time of the data packet exceeds the upper limit of the transmission time preset by the corresponding timer, the transmission of the data packet is abandoned. Similarly, the processing module 100 of the transmitting end can also maintain a timer for a group of data packets, and the timer is used to time the transmission time of a group of data packets, and the retransmission of the group of data packets during the transmission time. Here, it is not limited. When the transmission time of the group of data packets exceeds the upper limit of the transmission time preset by the corresponding timer, the transmission of the group of data packets is abandoned, and the transmission of the next group of data packets is performed. Similarly, the receiver can maintain a similar timer, for each packet and the transmission time of each group of packets. Row timing, which abandons transmission after a packet or group of packets exceeds a predetermined transmission time. It should be noted that, in the scheme that the receiving end performs the transmission time counting by the timer, when a data packet or a group of data packets is discarded, the receiving response message fed back to the transmitting end does not carry the receiving failure information of the data packet, so that The sender does not retransmit the corresponding data packet or a group of data packets.
本发明实施例提供的数据包重传机制,通过设置数据包重传和一组数据包重传两个重传机制,从而保证当一组数据包中的一个或几个数据包发生接收失败时,发送端的处理模块100根据接收端反馈的接收响应消息,指示发送模块101重传发送失败的一个或几个数据包;或者,重传一组数据包。首先,本发明实施例的数据包传输的装置中,一组数据包中可以包含由一个原数据包拆分得到的几个子数据包,当子数据包出现接收失败时,发送端只重传发送失败的子数据包,与采用单进程传输的现有技术相比,本发明实施例提供的数据包重传机制节约了传输占用的资源,提高了传输效率。The data packet retransmission mechanism provided by the embodiment of the present invention ensures that when one or several data packets in a group of data packets fail to be received, by setting a data packet retransmission and a group of data packets to retransmit two retransmission mechanisms. The processing module 100 of the sending end instructs the sending module 101 to retransmit one or several data packets that failed to be transmitted according to the receiving response message fed back by the receiving end; or, retransmit a group of data packets. First, in the apparatus for data packet transmission according to the embodiment of the present invention, a group of data packets may include several sub-packets obtained by splitting one original data packet, and when the sub-data packet fails to be received, the transmitting end only retransmits and transmits. The packet retransmission mechanism provided by the embodiment of the present invention saves the resources occupied by the transmission and improves the transmission efficiency, compared with the prior art that uses the single-process transmission.
图3为本发明实施例提供的另一种数据包传输的装置的结构示意图,该装置应用于半双工FDD机器对机器系统,并且该装置作为数据包的接收端,具体的,该装置可以为基站、机器、具备通信功能的水表、电表等抄表、手机、支持各种通信制式(2G/3G/4G/5G/wifi/蓝牙等)的通信设备、M2M的终端,参照图1,该装置包括:接收模块202、处理模块200。FIG. 3 is a schematic structural diagram of another apparatus for transmitting a data packet according to an embodiment of the present disclosure. The apparatus is applied to a half-duplex FDD machine-to-machine system, and the apparatus is used as a receiving end of a data packet. Specifically, the apparatus may be For base station, machine, water meter, electric meter with communication function, mobile phone, communication device supporting various communication systems (2G/3G/4G/5G/wifi/Bluetooth, etc.), M2M terminal, refer to Figure 1, The device includes: a receiving module 202 and a processing module 200.
接收模块202,用于接收对端发送的一组数据包,所述一组数据包包含n个数据包,所述n个数据包按顺序分别对应在n个进程,所述n为大于或等于二的正整数,且所述n≤最大进程数;The receiving module 202 is configured to receive a set of data packets sent by the peer end, where the set of data packets includes n data packets, where the n data packets are respectively corresponding to n processes in sequence, and the n is greater than or equal to a positive integer of two, and the n ≤ maximum number of processes;
处理模块200,用于当所述一组数据包接收成功时,指示所述接收模块202再接收所述对端发送的下一组数据包。The processing module 200 is configured to, when the group of data packets is successfully received, instruct the receiving module 202 to receive the next group of data packets sent by the peer end.
本发明实施例提供的数据包传输的装置,通过接收模块接收对端发送的一组数据包,所述一组数据包包含n个数据包,所述n个数据包按顺序分别对应在n个进程,所述n为大于或等于二的正整数,且所述n≤最大进程数,处理模块当所述一组数据包接收成功时,指示所述接收模块再接收所述对端发送的下一组数据包。与采用多进程传输的现有技术相比,本发明实施例保证只有在一组数据包传输成功后,再进行下一组数据包的接收,从而在接收成功之前,该装置也只需要缓存最多一组数据包或未组包成功的数据包(需要组包时),从而节约了缓存资源,进一步地,采用一组数据包接收成 功之后再接收下一组数据包的方式,避免了由于持续传输数据包导致每个数据包的传输进度不同,从而需要设置复杂的识别、组包、重传机制,本发明实施例提供的数据包传输的装置降低了在采用半双工FDD的传输方式时,方案实现的成本和复杂度。The apparatus for transmitting data packets provided by the embodiment of the present invention receives a set of data packets sent by the opposite end by the receiving module, where the set of data packets includes n data packets, and the n data packets are respectively corresponding to n in sequence. a process, the n is a positive integer greater than or equal to two, and the n ≤ the maximum number of processes, the processing module, when the group of data packets is successfully received, instructing the receiving module to receive the next A set of data packets. Compared with the prior art adopting multi-process transmission, the embodiment of the present invention ensures that only after a group of data packets is successfully transmitted, the next group of data packets is received, so that the device only needs to cache the most before receiving successfully. A set of data packets or packets that are not successfully packaged (when a packet is required), thereby saving cache resources, and further, using a set of data packets to receive The method of receiving the next set of data packets after the work is performed, and the transmission progress of each data packet is different due to the continuous transmission of the data packet, so that a complex identification, grouping, and retransmission mechanism needs to be set, and the data provided by the embodiment of the present invention is provided. The packet transmission device reduces the cost and complexity of the solution implementation when using a half-duplex FDD transmission mode.
与采用的单进程传输的现有技术相比,本发明实施例每次能够接收一组数据包,能够快速的接收数据包,节省终端功耗,提高了数据包传输的吞吐量。Compared with the prior art of single-process transmission, the embodiment of the present invention can receive a group of data packets each time, can quickly receive data packets, save terminal power consumption, and improve throughput of data packet transmission.
优选地,本实施例中接收模块202接收到的数据包,可以为未经拆分的原数据包,和/或,所述数据包为通过拆分原数据包获得的子数据包。对于数据包的拆分和一组数据包的构成,上文已进行了详细说明,此处不再赘述。Preferably, the data packet received by the receiving module 202 in this embodiment may be an unsplit original data packet, and/or the data packet is a sub-data packet obtained by splitting the original data packet. For the splitting of data packets and the composition of a set of data packets, the above has been described in detail, and will not be described here.
当传输过程中有数据包出现传输失败,就需要引入重传机制来保证数据包传输的可靠性。对应发送端数据包传输的装置的实施例,在图3的基础上,图4为本发明实施例提供的另一种数据包传输的装置的结构示意图,参照图4,该装置还包括:发送模块201。When a transmission failure occurs in a data packet during transmission, a retransmission mechanism needs to be introduced to ensure the reliability of data packet transmission. FIG. 4 is a schematic structural diagram of another apparatus for transmitting a data packet according to an embodiment of the present invention. Referring to FIG. 4, the apparatus further includes: sending Module 201.
发送模块201,用于向所述对端发送接收响应消息,所述接收响应消息携带数据包的接收失败信息,和/或数据包的接收成功信息;The sending module 201 is configured to send a receiving response message to the peer end, where the receiving response message carries the receiving failure information of the data packet, and/or the receiving success information of the data packet;
所述接收模块202,还用于若所述接收响应消息包含数据包的接收失败信息,则接收所述对端重传的所述数据包的接收失败信息对应的数据包。The receiving module 202 is further configured to: if the receiving response message includes the receiving failure information of the data packet, receive the data packet corresponding to the receiving failure information of the data packet retransmitted by the opposite end.
可选地,对于上文所述数据包的接收失败信息,接收端的发送模块201将该数据包的接收失败信息发送给发送端,作用在于告知发送端哪些数据包传输失败,进一步地,数据包的接收失败信息可以用来指示一组数据包传输失败,也可以用来指示一组数据包中的一个或多个数据包传输失败。下面通过具体实施例对这两种可能的情况进行说明:Optionally, for the receiving failure information of the data packet, the sending module 201 of the receiving end sends the receiving failure information of the data packet to the sending end, so as to inform the transmitting end which data packet transmission fails, and further, the data packet The receive failure information can be used to indicate a group of packet transmission failures, and can also be used to indicate that one or more packets in a group of packets failed to transmit. The following two possible scenarios are illustrated by specific embodiments:
情况一:所述数据包的接收失败信息为数据包重传指示,所述数据包重传指示用于指示所述对端重新传输所述m个数据包,所述m为大于零的正整数,并且m≤n;Case 1: the receiving failure information of the data packet is a data packet retransmission indication, where the data packet retransmission indication is used to instruct the peer end to retransmit the m data packets, where m is a positive integer greater than zero And m≤n;
则所述接收模块202,具体用于分别在m个进程上接收所述对端重传的所述m个所述数据包;还具体用于直至m个所述数据包接收成功,再接收所述对端发送的下一组数据包。The receiving module 202 is specifically configured to receive, by using m processes, the m data packets that are retransmitted by the peer end, and specifically, for receiving, by the m, the data packets are successfully received, and then receiving the The next set of data packets sent by the peer.
进一步地,针对情况二,所述数据包的接收失败信息为组重传指示,所 述组重传指示用于指示所述对端重新传输所述一组数据包。其作用在于:当所述一组数据包接收失败,或者组包失败后,利用组重传指示使得发送端重传该组数据包。Further, for case 2, the receiving failure information of the data packet is a group retransmission indication, The group retransmission indication is used to instruct the peer to retransmit the set of data packets. The function is: when the group of data packets fails to receive, or the group packet fails, the group retransmission indication is used to cause the sender to retransmit the group of data packets.
上文对于每个数据包和/或一组数据包的重传机制已进行了详细说明,此处不再赘述,需要说明的是,对于采用计时器维护传输时间的重传方案。作为接收端的装置的处理模块200可以设置计时器,针对每一个数据包对应维护一个计时器,对每组数据包对应维护一个计时器,从而实现对每个数据包和每组数据包的传输时间进行计时,在一个数据包或一组数据包超过预定传输时间后,放弃传输。需要说明的是,在接收端通过计时器进行传输时间计时的方案中,当丢弃一个数据包或一组数据包时,其发送模块201反馈给发送端的接收响应消息不携带数据包的接收失败信息,以使发送端不再重传对应的数据包或一组数据包。The retransmission mechanism for each data packet and/or a group of data packets has been described in detail above, and will not be described here. It should be noted that the retransmission scheme for maintaining the transmission time by using a timer is described. The processing module 200 as a device at the receiving end can set a timer, maintain a timer for each data packet, and maintain a timer for each group of data packets, thereby realizing the transmission time for each data packet and each group of data packets. Timing is performed to abandon the transmission after a packet or group of packets exceeds the predetermined transmission time. It should be noted that, in the scheme that the receiving end performs the transmission time counting by the timer, when a data packet or a group of data packets is discarded, the receiving response message fed back by the sending module 201 to the transmitting end does not carry the receiving failure information of the data packet. So that the sender does not retransmit the corresponding data packet or a group of data packets.
本发明实施例提供的数据包重传机制,通过设置数据包重传和一组数据包重传两个重传机制,从而保证当一组数据包中的一个或几个数据包发生接收失败时,接收端的发送模块201向发送端反馈接收响应消息,以使发送端重传发送失败的一个或几个数据包;或者,重传一组数据包。首先,本发明实施例的数据包传输的装置中,一组数据包中可以包含由一个原数据包拆分得到的几个子数据包,当子数据包出现接收失败时,发送端只重传发送失败的子数据包,与采用单进程传输的现有技术相比,本发明实施例提供的数据包重传机制节约了传输占用的资源,提高了传输效率。The data packet retransmission mechanism provided by the embodiment of the present invention ensures that when one or several data packets in a group of data packets fail to be received, by setting a data packet retransmission and a group of data packets to retransmit two retransmission mechanisms. The sending module 201 at the receiving end feeds back the receiving response message to the transmitting end, so that the transmitting end retransmits one or several data packets that failed to be transmitted; or, retransmits a group of data packets. First, in the apparatus for data packet transmission according to the embodiment of the present invention, a group of data packets may include several sub-packets obtained by splitting one original data packet, and when the sub-data packet fails to be received, the transmitting end only retransmits and transmits. The packet retransmission mechanism provided by the embodiment of the present invention saves the resources occupied by the transmission and improves the transmission efficiency, compared with the prior art that uses the single-process transmission.
进一步地,所述数据包为未经拆分的原数据包,和/或,所述数据包为通过拆分原数据包获得的子数据包;Further, the data packet is an unsplit original data packet, and/or the data packet is a sub-data packet obtained by splitting the original data packet;
其中,若发送端设备传输的所述一组数据包中包含至少两个子数据包,则至少一个所述子数据包的包头包含组包指示信息,所述组包指示信息用于所述对端接收到至少两个所述子数据包后,则处理模块200,还用于根据所述组包指示信息对至少两个所述子数据包进行组包;The packet header of the at least one of the sub-packets includes packet indication information, where the packet indication information is used by the peer end, if the group of data packets transmitted by the source device includes at least two sub-packets. After receiving the at least two of the sub-data packets, the processing module 200 is further configured to group at least two of the sub-data packets according to the group package indication information;
或者,当发送端设备采用每一组数据包只放置一个通过拆分原数据包获得的多个子数据包时,每组数据包可以不携带上述指示信息。例如,预置发送端和接收端传输的每组数据包中只包含通过拆分一个原数据包获得的多个子数据包,接收端的处理模块200在接收到该组数据包后,将该组数据包组 包即可。或者,又例如,若发送端和接收端可以传输上述三种可能的数据包的类型,那么每一种数据包的类型对应一种传输模式,当每组数据包中只包含通过拆分一个原数据包获得的多个子数据包,采用特定传输模式,则发送端通知接收端,之后发送的每组数据包仅只包含通过拆分一个原数据包获得的多个子数据包,那么此时该组数据包中也不需要携带指示信息,接收端处理模块200在接收到该组数据包后,将该组数据包组包即可。Alternatively, when the transmitting device uses only one sub-packet obtained by splitting the original data packet by using each group of data packets, each group of data packets may not carry the above-mentioned indication information. For example, each group of data packets transmitted by the preset transmitting end and the receiving end only includes a plurality of sub-data packets obtained by splitting one original data packet, and the processing module 200 at the receiving end receives the group data packet and then sets the data. Package group Pack it. Or, for example, if the sender and the receiver can transmit the types of the three possible data packets, each type of the data packet corresponds to a transmission mode, and each group of data packets only includes one by splitting the original The plurality of sub-packets obtained by the data packet adopt a specific transmission mode, and the transmitting end notifies the receiving end, and each group of data packets transmitted thereafter only includes a plurality of sub-packets obtained by splitting one original data packet, and then the group data is The packet does not need to carry the indication information, and the receiving end processing module 200 can group the group of data packets after receiving the group of data packets.
若发送端设备传输的所述一组数据包中包含至少两个子数据包和至少一个原数据包,则至少一个所述子数据包的包头包含所述组包指示信息,并且每个所述原数据包携带标识,则处理模块200,还用于根据所述标识识别所述原数据包。If the set of data packets transmitted by the source device includes at least two sub-data packets and at least one original data packet, the packet header of at least one of the sub-data packets includes the group packet indication information, and each of the original The data packet carries the identifier, and the processing module 200 is further configured to identify the original data packet according to the identifier.
图5为本发明实施例提供的另一种无线网络中传输数据的装置,参照图5,该装置可以作为发送端的数据包传输的装置,也可以作为接收端的数据包传输的装置,该装置包括:处理器300、发射器301、接收器302;FIG. 5 is a device for transmitting data in another wireless network according to an embodiment of the present invention. Referring to FIG. 5, the device may be used as a device for transmitting data packets at a transmitting end, or as a device for transmitting data packets at a receiving end, where the device includes : processor 300, transmitter 301, receiver 302;
具体的,当该装置作为发送端的数据包传输的装置时,处理器300与图1或图2中的处理模块100对应,且能执行图1或图2中的处理模块100的对应功能,实现相应的技术效果;发射器301与图1或图2中的发送模块101对应,且能执行图1或图2中的发送模块101的对应功能,实现相应的技术效果;接收器302与图2中的接收模块102对应,且能执行图4中的接收模块102的对应功能,实现相应的技术效果;Specifically, when the device is used as a device for data packet transmission at the transmitting end, the processor 300 corresponds to the processing module 100 in FIG. 1 or FIG. 2, and can perform corresponding functions of the processing module 100 in FIG. 1 or FIG. 2 to implement Corresponding technical effects; the transmitter 301 corresponds to the transmitting module 101 in FIG. 1 or FIG. 2, and can perform the corresponding functions of the transmitting module 101 in FIG. 1 or FIG. 2 to implement corresponding technical effects; the receiver 302 and FIG. The receiving module 102 corresponds to the corresponding function of the receiving module 102 in FIG. 4, and implements corresponding technical effects;
当该装置作为发送端的数据包传输的装置时,处理器300与图3或图4中的处理模块200对应,且能执行图3或图4中的处理模块200的对应功能,实现相应的技术效果;接收器302与图3或图4中的接收模块202对应,且能执行图3或图4中的接收模块202的对应功能,实现相应的技术效果;发射器301与图4中的发送模块201对应,且能执行图4中的发送模块201的对应功能,实现相应的技术效果。When the device acts as a device for data packet transmission at the transmitting end, the processor 300 corresponds to the processing module 200 in FIG. 3 or FIG. 4, and can perform corresponding functions of the processing module 200 in FIG. 3 or FIG. 4 to implement a corresponding technology. The receiver 302 corresponds to the receiving module 202 in FIG. 3 or FIG. 4, and can perform the corresponding functions of the receiving module 202 in FIG. 3 or FIG. 4 to implement the corresponding technical effects; the transmitter 301 and the sending in FIG. The module 201 corresponds to and can perform the corresponding functions of the sending module 201 in FIG. 4 to achieve the corresponding technical effects.
进一步地,下面通过具体示例对上文所述作为发送端的数据包传输的装置,或者,作为接收端的数据包传输的装置进行说明。Further, the apparatus for transmitting a packet as a transmitting end as described above, or the apparatus for transmitting a packet at the receiving end will be described below by way of a specific example.
该终端可以为包括手机、平板电脑、PDA(Personal Digital Assistant,个人数字助理)、POS(Point of Sales,销售终端)、车载电脑等终端设备,以终端为手机为例,图6为本发明实施例提供的无线网络中传输数据的装置相 关的手机的部分结构的框图。参考图6,手机500包括射频(Radio Frequency,简称RF)电路510、存储器520、输入单元530、显示单元540、传感器550、音频电路560、WiFi(wireless fidelity,无线保真)模块570、处理器580、以及电源590等部件。本领域技术人员可以理解,图6中示出的手机结构只做实现方式的举例,并不构成对手机的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。The terminal may be a terminal device including a mobile phone, a tablet computer, a PDA (Personal Digital Assistant), a POS (Point of Sales), a vehicle-mounted computer, and the terminal is a mobile phone as an example, and FIG. 6 is an implementation of the present invention. Example of a device for transmitting data in a wireless network A block diagram of the partial structure of the phone. Referring to FIG. 6, the mobile phone 500 includes a radio frequency (RF) circuit 510, a memory 520, an input unit 530, a display unit 540, a sensor 550, an audio circuit 560, a WiFi (wireless fidelity) module 570, and a processor. 580, and power supply 590 and other components. It can be understood by those skilled in the art that the structure of the mobile phone shown in FIG. 6 is only an example of implementation, and does not constitute a limitation on the mobile phone, and may include more or less components than those illustrated, or combine some components, or Different parts are arranged.
下面结合图6对手机500的各个构成部件进行具体的介绍:The components of the mobile phone 500 will be specifically described below with reference to FIG. 6:
RF电路510可用于收发信息或通话过程中,信号的接收和发送,特别地,将基站的下行信息接收后,给处理器580处理;另外,将设计上行的数据发送给基站。通常,RF电路包括但不限于天线、至少一个放大器、收发信机、耦合器、LNA(Low Noise Amplifier,低噪声放大器)、双工器等。此外,RF电路510还可以通过无线通信与网络和其他设备通信。所述无线通信可以使用任一通信标准或协议,包括但不限于GSM(Global System of Mobile communication,全球移动通讯系统)、GPRS(General Packet Radio Service,通用分组无线服务)、CDMA(Code Division Multiple Access,码分多址)、WCDMA(Wideband Code Division Multiple Access,宽带码分多址)、LTE(Long Term Evolution,长期演进)、电子邮件、SMS(Short Messaging Service,短消息服务)等。The RF circuit 510 can be used for receiving and transmitting signals during the transmission or reception of information or during a call. Specifically, after receiving the downlink information of the base station, it is processed by the processor 580. In addition, the uplink data is designed to be sent to the base station. Generally, RF circuits include, but are not limited to, an antenna, at least one amplifier, a transceiver, a coupler, an LNA (Low Noise Amplifier), a duplexer, and the like. In addition, RF circuitry 510 can also communicate with the network and other devices via wireless communication. The wireless communication may use any communication standard or protocol, including but not limited to GSM (Global System of Mobile communication), GPRS (General Packet Radio Service), CDMA (Code Division Multiple Access). , Code Division Multiple Access), WCDMA (Wideband Code Division Multiple Access), LTE (Long Term Evolution), e-mail, SMS (Short Messaging Service), and the like.
存储器520可用于存储软件程序以及模块,处理器580通过运行存储在存储器520的软件程序以及模块,从而执行手机500的各种功能应用以及数据处理。存储器520可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据手机500的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器520可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。The memory 520 can be used to store software programs and modules, and the processor 580 executes various functional applications and data processing of the mobile phone 500 by running software programs and modules stored in the memory 520. The memory 520 may mainly include a storage program area and a storage data area, wherein the storage program area may store an operating system, an application required for at least one function (such as a sound playing function, an image playing function, etc.), and the like; the storage data area may be stored according to The data created by the use of the mobile phone 500 (such as audio data, phone book, etc.) and the like. Moreover, memory 520 can include high speed random access memory, and can also include non-volatile memory, such as at least one magnetic disk storage device, flash memory device, or other volatile solid state storage device.
输入单元530可用于接收输入的数字或字符信息,以及产生与手机500的用户设置以及功能控制有关的键信号输入。具体地,输入单元530可包括触控面板531以及其他输入设备532。触控面板531,也称为触摸屏,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体 或附件在触控面板531上或在触控面板531附近的操作),并根据预先设定的程式驱动相应的连接装置。可选的,触控面板531可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器580,并能接收处理器580发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触控面板531。除了触控面板531,输入单元530还可以包括其他输入设备532。具体地,其他输入设备532可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。The input unit 530 can be configured to receive input numeric or character information and to generate key signal inputs related to user settings and function control of the handset 500. Specifically, the input unit 530 may include a touch panel 531 and other input devices 532. The touch panel 531, also referred to as a touch screen, can collect touch operations on or near the user (such as the user using any suitable object such as a finger, a stylus, etc.) Or the operation of the accessory on or near the touch panel 531, and driving the corresponding connecting device according to a preset program. Optionally, the touch panel 531 can include two parts: a touch detection device and a touch controller. Wherein, the touch detection device detects the touch orientation of the user, and detects a signal brought by the touch operation, and transmits the signal to the touch controller; the touch controller receives the touch information from the touch detection device, converts the touch information into contact coordinates, and sends the touch information. The processor 580 is provided and can receive commands from the processor 580 and execute them. In addition, the touch panel 531 can be implemented in various types such as resistive, capacitive, infrared, and surface acoustic waves. In addition to the touch panel 531, the input unit 530 may also include other input devices 532. Specifically, other input devices 532 may include, but are not limited to, one or more of a physical keyboard, function keys (such as volume control buttons, switch buttons, etc.), trackballs, mice, joysticks, and the like.
显示单元540可用于显示由用户输入的信息或提供给用户的信息以及手机500的各种菜单。显示单元540可包括显示面板541,可选的,可以采用LCD(Liquid Crystal Display,液晶显示器)、OLED(Organic Light-Emitting Diode,有机发光二极管)等形式来配置显示面板541。进一步的,触控面板531可覆盖显示面板541,当触控面板531检测到在其上或附近的触摸操作后,传送给处理器580以确定触摸事件的类型,随后处理器580根据触摸事件的类型在显示面板541上提供相应的视觉输出。虽然在图6中,触控面板531与显示面板541是作为两个独立的部件来实现手机500的输入和输入功能,但是在某些实施例中,可以将触控面板531与显示面板541集成而实现手机500的输入和输出功能。The display unit 540 can be used to display information input by the user or information provided to the user and various menus of the mobile phone 500. The display unit 540 can include a display panel 541. Alternatively, the display panel 541 can be configured in the form of an LCD (Liquid Crystal Display), an OLED (Organic Light-Emitting Diode), or the like. Further, the touch panel 531 can cover the display panel 541. When the touch panel 531 detects a touch operation on or near it, the touch panel 531 transmits to the processor 580 to determine the type of the touch event, and then the processor 580 according to the touch event. The type provides a corresponding visual output on display panel 541. Although the touch panel 531 and the display panel 541 are used as two independent components to implement the input and input functions of the mobile phone 500 in FIG. 6, in some embodiments, the touch panel 531 can be integrated with the display panel 541. The input and output functions of the mobile phone 500 are implemented.
手机500还可包括至少一种传感器550,比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板541的亮度,接近传感器可在手机500移动到耳边时,关闭显示面板541和/或背光。作为运动传感器的一种,加速计传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别手机姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;至于手机500还可配置的陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。The handset 500 can also include at least one type of sensor 550, such as a light sensor, motion sensor, and other sensors. Specifically, the light sensor may include an ambient light sensor and a proximity sensor, wherein the ambient light sensor may adjust the brightness of the display panel 541 according to the brightness of the ambient light, and the proximity sensor may close the display panel 541 when the mobile phone 500 moves to the ear. / or backlight. As a kind of motion sensor, the accelerometer sensor can detect the magnitude of acceleration in all directions (usually three axes). When it is stationary, it can detect the magnitude and direction of gravity. It can be used to identify the gesture of the mobile phone (such as horizontal and vertical screen switching, related Game, magnetometer attitude calibration), vibration recognition related functions (such as pedometer, tapping), etc. As for the mobile phone 500 can also be configured with gyroscopes, barometers, hygrometers, thermometers, infrared sensors and other sensors, here Let me repeat.
音频电路560、扬声器561,传声器562可提供用户与手机500之间的音 频接口。音频电路560可将接收到的音频数据转换后的电信号,传输到扬声器561,由扬声器561转换为声音信号输出;另一方面,传声器562将收集的声音信号转换为电信号,由音频电路560接收后转换为音频数据,再将音频数据输出处理器580处理后,经RF电路510以发送给比如另一手机,或者将音频数据输出至存储器520以便进一步处理。The audio circuit 560, the speaker 561, and the microphone 562 can provide a sound between the user and the mobile phone 500. Frequency interface. The audio circuit 560 can transmit the converted electrical data of the received audio data to the speaker 561, and convert it into a sound signal output by the speaker 561. On the other hand, the microphone 562 converts the collected sound signal into an electrical signal, and the audio circuit 560 is used by the audio circuit 560. After receiving, it is converted into audio data, and then processed by the audio data output processor 580, sent to the other mobile phone via the RF circuit 510, or outputted to the memory 520 for further processing.
WiFi属于短距离无线传输技术,手机500通过WiFi模块570可以帮助用户收发电子邮件、浏览网页和访问流式媒体等,它为用户提供了无线的宽带互联网访问。虽然图6示出了WiFi模块570,但是可以理解的是,其并不属于手机500的必须构成,完全可以根据需要在不改变发明的本质的范围内而省略。WiFi is a short-range wireless transmission technology, and the mobile phone 500 can help users to send and receive emails, browse web pages, and access streaming media through the WiFi module 570, which provides wireless broadband Internet access for users. Although FIG. 6 shows the WiFi module 570, it can be understood that it does not belong to the essential configuration of the mobile phone 500, and may be omitted as needed within the scope of not changing the essence of the invention.
处理器580是手机500的控制中心,利用各种接口和线路连接整个手机的各个部分,通过运行或执行存储在存储器520内的软件程序和/或模块,以及调用存储在存储器520内的数据,执行手机500的各种功能和处理数据,从而对手机进行整体监控。可选的,处理器580可包括一个或多个处理单元;优选的,处理器580可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器580中。 Processor 580 is the control center of handset 500, which connects various portions of the entire handset using various interfaces and lines, by running or executing software programs and/or modules stored in memory 520, and recalling data stored in memory 520, The various functions and processing data of the mobile phone 500 are performed to perform overall monitoring of the mobile phone. Optionally, the processor 580 may include one or more processing units; preferably, the processor 580 may integrate an application processor and a modem processor, where the application processor mainly processes an operating system, a user interface, an application, and the like. The modem processor primarily handles wireless communications. It will be appreciated that the above described modem processor may also not be integrated into the processor 580.
手机500还包括给各个部件供电的电源590(比如电池),优选的,电源可以通过电源管理系统与处理器580逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。The handset 500 also includes a power source 590 (such as a battery) that supplies power to the various components. Preferably, the power source can be logically coupled to the processor 580 via a power management system to manage functions such as charging, discharging, and power management through the power management system.
尽管未示出,手机500还可以包括摄像头、蓝牙模块等,在此不再赘述。Although not shown, the mobile phone 500 may further include a camera, a Bluetooth module, and the like, and details are not described herein again.
在本发明实施例中,当该终端作为发送端进行数据包的发送时,该终端所包括处理器具有上文图1或图2所示处理模块100的相应功能,RF电路具有上文图1或图2所示发送模块101和接收模块102的相应功能,并能能够实现对应的技术效果;或者,该处理器具有上文图5所示处理器的对应功能,RF电路具有上文图5所示发射器和接收器的对应功能,并且能够实现对应的技术效果;In the embodiment of the present invention, when the terminal transmits the data packet as the transmitting end, the processor included in the terminal has the corresponding function of the processing module 100 shown in FIG. 1 or FIG. 2 above, and the RF circuit has the above FIG. Or the corresponding functions of the sending module 101 and the receiving module 102 shown in FIG. 2, and can achieve the corresponding technical effects; or, the processor has the corresponding function of the processor shown in FIG. 5 above, and the RF circuit has the above FIG. The corresponding functions of the transmitter and receiver are shown, and the corresponding technical effects can be achieved;
当该终端作为接收端进行数据包的接收时,该终端所包括处理器具有上文图3或图4所示处理模块200的相应功能,RF电路具有上文图3或图4所示发送模块201和接收模块202的相应功能,并能能够实现对应的技术效果; 或者,该处理器具有上文图5所示处理器的对应功能,RF电路具有上文图5所示发射器和接收器的对应功能,并且能够实现对应的技术效果。When the terminal receives the data packet as the receiving end, the processor included in the terminal has the corresponding function of the processing module 200 shown in FIG. 3 or FIG. 4 above, and the RF circuit has the sending module shown in FIG. 3 or FIG. 4 above. 201 and the corresponding function of the receiving module 202, and can achieve the corresponding technical effects; Alternatively, the processor has the corresponding function of the processor shown in FIG. 5 above, and the RF circuit has the corresponding functions of the transmitter and the receiver shown in FIG. 5 above, and can achieve corresponding technical effects.
另外,数据包传输的装置还可以为智能电表或智能水表等物联网设备,以智能电表为例,一种可能的实现方式为:通过GPRS网络系统,可将集群式智能电表采集的电力系统数据实时传递到各级的集中监控中心,以实现对电力检测设备的统一监控和分布式管理。其中,智能电表具有电力信息采集功能和数据传输功能,例如,智能电表具有能够进行电力信息采集的处理器,和传输电力信息的网络接口,则该智能电表能够采用上文图1、图2、图5所示的结构,并执行对应的步骤,实现相应的技术效果。而集中控制中心的采集设备则可以作为数据的接收端,采用上文图3、图4、图5所示的结构,并执行对应的步骤,实现相应的技术效果。In addition, the device for data packet transmission can also be an IoT device such as a smart meter or a smart water meter. Taking a smart meter as an example, a possible implementation manner is: a power system data collected by a cluster smart meter through a GPRS network system. Real-time delivery to centralized monitoring centers at all levels to achieve unified monitoring and distributed management of power detection equipment. The smart meter has a power information collecting function and a data transmission function. For example, the smart meter has a processor capable of collecting power information, and a network interface for transmitting power information, the smart meter can adopt the above FIG. 1 and FIG. The structure shown in FIG. 5, and the corresponding steps are performed to achieve the corresponding technical effects. The collection device of the centralized control center can be used as the receiving end of the data, adopting the structure shown in FIG. 3, FIG. 4, and FIG. 5 above, and performing corresponding steps to achieve the corresponding technical effects.
进一步的,本发明实施例提供一种数据包传输系统,该系统中包括作为发送端的装置和作为接收端的装置,以实现数据包的传输。具体的,其中作为发送端的装置可以为上文图1、图2、图5或图6所示的装置,其能够实现上述图1、图2、图5或图6对应实施例的技术效果;作为接收端的装置可以为上文图3、图4、图5或图6所示的装置,其能够实现上述图3、图4、图5或图6对应实施例的技术效果。进一步的,为了能够实现数据传输,该系统也可以包含其他必要的设备,例如,接入设备、网管、服务器等,此处不予限制。Further, an embodiment of the present invention provides a data packet transmission system, which includes a device as a transmitting end and a device as a receiving end to implement data packet transmission. Specifically, the device as the transmitting end may be the device shown in FIG. 1, FIG. 2, FIG. 5 or FIG. 6 , which can implement the technical effects of the corresponding embodiment of FIG. 1 , FIG. 2 , FIG. 5 or FIG. 6 ; The device as the receiving end may be the device shown in FIG. 3, FIG. 4, FIG. 5 or FIG. 6 above, which can achieve the technical effects of the corresponding embodiment of FIG. 3, FIG. 4, FIG. 5 or FIG. Further, in order to enable data transmission, the system may also include other necessary devices, such as an access device, a network management system, a server, etc., which are not limited herein.
图7为本发明实施例提供的一种数据包传输的方法流程示意图,该方法应用于半双工FDD机器对机器系统,其执行主体为上文图1、图5或图6所示数据包传输的装置,该装置作为数据包的发送端,具体的,该装置可以为基站、机器、具备通信功能的水表、电表等抄表、手机、支持各种通信制式(2G/3G/4G/5G/wifi/蓝牙等)的通信设备、M2M的终端,参照图7,该方法包括如下步骤:FIG. 7 is a schematic flowchart of a method for data packet transmission according to an embodiment of the present invention. The method is applied to a half-duplex FDD machine-to-machine system, and the execution body thereof is the data packet shown in FIG. 1, FIG. 5 or FIG. The transmitting device, which is the transmitting end of the data packet, specifically, the device can be a base station, a machine, a water meter with a communication function, an electric meter, etc., a mobile phone, and supports various communication systems (2G/3G/4G/5G) The communication device of the /wifi/Bluetooth, etc., the terminal of the M2M, referring to FIG. 7, the method includes the following steps:
步骤100、向对端发送一组数据包,所述一组数据包包含n个数据包,所述n个数据包发送时按顺序分别对应n个进程,所述n为大于或等于二的正整数,且所述n≤最大进程数;Step 100: Send a set of data packets to the peer end, where the set of data packets includes n data packets, where the n data packets are sent in sequence corresponding to n processes, and the n is greater than or equal to two. An integer, and the n ≤ maximum number of processes;
步骤101、当所述一组数据包发送成功时,再向所述对端发送下一组数据包。 Step 101: When the group of data packets is successfully sent, send the next group of data packets to the peer end.
本发明实施例提供的数据包传输的方法,通过数据包传输的装置向对端发送一组数据包,所述一组数据包包含n个数据包,所述n个数据包发送时按顺序分别对应n个进程,所述n为大于或等于二的正整数,且所述n≤最大进程数,进一步地,当所述一组数据包发送成功时,该数据包传输的装置再向所述对端发送下一组数据包。与采用多进程传输的现有技术相比,本发明实施例保证只有在一组数据包传输成功后,再进行下一组数据包的传输,发送端最多只需要缓存一组数据包,接收端也只需要缓存最多一组数据包或未组包成功的数据包(需要组包时),从而节约了资源,进一步地,采用一组数据包传输成功之后再传输下一组数据包的方式,避免了由于持续传输数据包导致每个数据包的传输进度不同,从而需要设置复杂的识别、组包、重传机制,本发明实施例提供的数据包传输的方法在保证传输效率和系统吞吐量的同时能够降低方案实现的成本和复杂度。The method for transmitting a data packet provided by the embodiment of the present invention sends a set of data packets to a peer end by means of a data packet transmission, where the set of data packets includes n data packets, and the n data packets are sent in sequence according to the sequence Corresponding to n processes, the n is a positive integer greater than or equal to two, and the n ≤ the maximum number of processes, further, when the set of data packets is successfully sent, the device for transmitting the data packet further refers to the The peer sends the next set of data packets. Compared with the prior art adopting multi-process transmission, the embodiment of the present invention ensures that only after a group of data packets is successfully transmitted, the next group of data packets is transmitted, and the transmitting end only needs to cache a group of data packets at the receiving end. It is also only necessary to cache a maximum of one group of packets or a packet that is not successfully packaged (when a package is required), thereby saving resources, and further, a method of transmitting a next set of data packets after a successful transmission of a set of data packets is performed. The method for transmitting data packets in the embodiment of the present invention ensures transmission efficiency and system throughput by avoiding the difference in the transmission progress of each data packet due to the continuous transmission of data packets, and thus the complex identification, grouping, and retransmission mechanisms are required. At the same time, it can reduce the cost and complexity of the solution implementation.
与采用的单进程传输的现有技术相比,本发明实施例每次能够发送一组数据包,能够快速的发送数据包,节省终端功耗,提高了数据包传输的吞吐量。Compared with the prior art of single-process transmission, the embodiment of the present invention can send a group of data packets each time, can quickly send data packets, save terminal power consumption, and improve throughput of data packet transmission.
优选地,为了简化M2M系统高层的设计,同时考虑到M2M系统针对的是小数据包业务,因此取消RLC层,MAC层支持简单的拆包、组包功能。MAC层根据信道实时情况将需要被拆分的数据包拆分成大小合适的数据包,MAC层的数据包可以是原数据包或者是子数据包。一组数据包中,所述数据包为未经拆分的原数据包,和/或,所述数据包为通过拆分原数据包获得的子数据包。Preferably, in order to simplify the design of the upper layer of the M2M system, and considering that the M2M system is aimed at small packet services, the RLC layer is cancelled, and the MAC layer supports simple unpacking and grouping functions. The MAC layer splits the data packets that need to be split into packets of appropriate size according to the real-time situation of the channel, and the data packets of the MAC layer may be original data packets or sub-data packets. In a group of data packets, the data packet is an unpacked original data packet, and/or the data packet is a sub-data packet obtained by splitting the original data packet.
具体的,一组数据包包含数据包的类型可能有如下可能:一、一组数据包只包含通过拆分原数据包获得的多个子数据包;二、一组数据包中包含全部为未经拆分的原数据包;三、一组数据包中包含通过拆分原数据包获得的多个子数据包和未经拆分的原数据包。Specifically, a group of data packets including the type of the data packet may have the following possibilities: 1. A group of data packets only includes multiple sub-data packets obtained by splitting the original data packet; 2. A group of data packets includes all of the data packets. Split original data packet; Third, a group of data packets contains multiple sub-packets obtained by splitting the original data packet and unpacked original data packets.
需要说明的是,当一个原数据包例如,多媒体接入控制业务数据单元(Media Access Control Service Data Unit,简称:MAC SDU),其大小超过阈值时,则发送端可以将该原数据包拆分成多个子数据包,本实施例对于阈值的大小并未做限定,该阈值可以在不同的场景中根据系统需求进行设置。It should be noted that when an original data packet, for example, a Media Access Control Service Data Unit (MAC SDU) whose size exceeds a threshold, the sender can split the original data packet. In this embodiment, the size of the threshold is not limited, and the threshold may be set according to system requirements in different scenarios.
其中,对于上述可能一,若所述一组数据包中包含至少两个子数据包, 则至少一个所述子数据包的包头包含组包指示信息,所述组包指示信息用于所述对端接收到至少两个所述子数据包后,根据所述组包指示信息对至少两个所述子数据包进行组包;Wherein, for the above possibility one, if the group of data packets includes at least two sub-packets, The packet header of the at least one of the sub-packets includes group packet indication information, where the group packet indication information is used by the peer end to receive at least two of the sub-data packets, and at least two according to the group packet indication information. The sub-packets are grouped;
具体的,当一组数据包中包含通过拆分原数据包获得的多个子数据包,为了便于接收端对子数据包进行识别,以便进行子数据包的组包。一种可能的实现方式为:属于原数据包的最后一个子数据包要包含指示,告知接收端该子数据包为最后一个数据包。Specifically, when a group of data packets includes multiple sub-data packets obtained by splitting the original data packet, in order to facilitate the receiving end to identify the sub-data packet, the sub-packet is grouped. A possible implementation manner is that the last sub-packet belonging to the original data packet should include an indication that the sub-packet is the last data packet.
或者,当发送端采用每一组数据包只放置一个通过拆分原数据包获得的多个子数据包时,每组数据包可以不携带上述指示信息。例如,预置发送端和接收端传输的每组数据包中只包含通过拆分一个原数据包获得的多个子数据包,接收端在接收到该组数据包后,将该组数据包组包即可。或者,又例如,若发送端和接收端可以传输上述三种可能的数据包的类型,那么每一种数据包的类型对应一种传输模式,当每组数据包中只包含通过拆分一个原数据包获得的多个子数据包,采用特定传输模式,则发送端通知接收端,之后发送的每组数据包仅只包含通过拆分一个原数据包获得的多个子数据包,那么此时该组数据包中也不需要携带指示信息,接收端在接收到该组数据包后,将该组数据包组包即可。Alternatively, when the transmitting end uses only one sub-packet obtained by splitting the original data packet for each group of data packets, each group of data packets may not carry the above-mentioned indication information. For example, each group of data packets transmitted by the preset transmitting end and the receiving end only includes a plurality of sub-data packets obtained by splitting one original data packet, and after receiving the data packet, the receiving end groups the data packet. Just fine. Or, for example, if the sender and the receiver can transmit the types of the three possible data packets, each type of the data packet corresponds to a transmission mode, and each group of data packets only includes one by splitting the original The plurality of sub-packets obtained by the data packet adopt a specific transmission mode, and the transmitting end notifies the receiving end, and each group of data packets transmitted thereafter only includes a plurality of sub-packets obtained by splitting one original data packet, and then the group data is The packet does not need to carry the indication information, and after receiving the group of data packets, the receiving end can group the group of data packets.
对于上述可能二,当一组数据包中包含的全部为未经拆分的原数据包,则不需要携带任何指示信息。For the above two possibilities, when all the data packets contained in a group of packets are unsplit original data packets, it is not necessary to carry any indication information.
对于上述可能三,若所述一组数据包中包含至少两个子数据包和至少一个原数据包,则至少一个所述子数据包的包头包含所述组包指示信息,并且每个所述原数据包携带标识,所述标识用于所述对端识别所述原数据包。For the above third possibility, if the set of data packets includes at least two sub-data packets and at least one original data packet, the header of at least one of the sub-data packets includes the group package indication information, and each of the original The data packet carries an identifier for the peer to identify the original data packet.
具体的,当一组数据包中包含通过拆分原数据包获得的多个子数据包和未经拆分的原数据包时,为了便于接收端识别多个子数据包以及未经拆分的原数据包。一种可行的实现方式为:每个子数据包携带1bit(0/1)指示,1表示最后一个子数据包或者未经拆分的原数据包,0表示非最后一个子数据包;例如,发送端将一个原数据包拆成了五个子数据包,该组数据包还包括其他两个未经拆分的原数据包,共七个数据包。在进行传输时,第一个至第四个子数据包携带的组包指示信息为“0”,最后一个子数据包携带的组包指示信息为“1”。对于另外两个未经拆分的原数据包,其可以不携带组包指示 信息,或者其携带的组包指示信息为“1”。另一种可行的实现方式为:最后一个子数据包和未经拆分的原数据包携带指示信息,非最后一个子数据包则不携带指示。继续以上文示例为例,第一个至第四个子数据包不携带组包指示信息,最后一个子数据包携带组包指示信息为“1”,对于另外两个未经拆分的原数据包,其携带的组包指示信息为“1”。Specifically, when a group of data packets includes multiple sub-packets and unsplit original data packets obtained by splitting the original data packet, in order to facilitate the receiving end to identify multiple sub-data packets and unsplit original data. package. A feasible implementation manner is: each sub-packet carries a 1 bit (0/1) indication, 1 indicates the last sub-packet or the unsplit original data packet, and 0 indicates the non-last sub-packet; for example, sending The end splits an original data packet into five sub-packets, which also include two other unsplit original data packets, for a total of seven data packets. When transmitting, the packet indication information carried by the first to fourth sub-packets is “0”, and the packet indication information carried by the last sub-packet is “1”. For the other two unsplit original packets, they may not carry the packet indication The information, or the package indication information carried by it, is "1". Another possible implementation manner is that the last sub-packet and the unsplit original data packet carry the indication information, and the non-last sub-data packet does not carry the indication. Continuing the example above, the first to fourth sub-packets do not carry the packet indication information, and the last sub-packet carries the packet indication information as "1" for the other two unsplit original packets. The packet indication information carried by the packet is "1".
进一步地,在图7的基础上,图8为本发明实施例提供的另一种数据包传输的方法流程示意图,其执行主体为上文图2、图5或图6所示数据包传输的装置,参照图8,在步骤101之前,还包括如下步骤:Further, on the basis of FIG. 7, FIG. 8 is a schematic flowchart of another method for data packet transmission according to an embodiment of the present invention, where the execution body is the data packet transmission shown in FIG. 2, FIG. 5 or FIG. The device, referring to FIG. 8, before step 101, further includes the following steps:
步骤102、接收所述对端发送的接收响应消息,所述接收响应消息携带数据包的接收失败信息,和/或数据包的接收成功信息;Step 102: Receive a receiving response message sent by the peer end, where the receiving response message carries a receiving failure information of the data packet, and/or a receiving success information of the data packet;
具体的,若所述接收响应消息包含数据包的接收失败信息,则重传所述数据包的接收失败信息对应的数据包。Specifically, if the receiving response message includes the receiving failure information of the data packet, retransmitting the data packet corresponding to the receiving failure information of the data packet.
进一步地,对于本发明实施例提供的数据包传输的方法,当传输过程中有数据包出现传输失败,那么就需要引入重传机制来保证数据包传输的可靠性。下面通过具体的实施例对基于本发明实施例提供的数据包传输的方法的数据包重传机制进行说明,需要说明的是,本发明下述实施例仅以几种可能的实现方式作为示例进行说明,其并不限定本发明的保护范围,显然,在本发明实施例提供的数据包传输的方法的基础上,其他可能的数据包重传机制也应该属于本发明的保护范围内。Further, for the method for data packet transmission provided by the embodiment of the present invention, when a data packet fails to be transmitted during the transmission, a retransmission mechanism needs to be introduced to ensure the reliability of the data packet transmission. The data packet retransmission mechanism of the method for data packet transmission according to the embodiment of the present invention is described below by using a specific embodiment. It should be noted that the following embodiments of the present invention are only implemented by using several possible implementation manners as examples. It is to be understood that the scope of protection of the present invention is not limited. It is obvious that other possible packet retransmission mechanisms should also fall within the protection scope of the present invention based on the method for data packet transmission provided by the embodiments of the present invention.
可选地,对于上文所述数据包的接收失败信息,接收端将该数据包的接收失败信息发送给发送端,作用在于告知发送端哪些数据包传输失败,进一步地,数据包的接收失败信息可以用来指示一组数据包传输失败,也可以用来指示一组数据包中的一个或多个数据包传输失败。下面通过具体实施例对这两种可能的情况进行说明:Optionally, for the receiving failure information of the data packet, the receiving end sends the receiving failure information of the data packet to the sending end, and the function is to notify the sending end which data packet transmission fails, and further, the data packet fails to be received. Information can be used to indicate a group of packet transmission failures, and can also be used to indicate that one or more packets in a group of packets failed to transmit. The following two possible scenarios are illustrated by specific embodiments:
情况一:所述数据包的接收失败信息为数据包重传指示,所述数据包重传指示用于指示重新传输所述m个数据包,所述m为大于零的正整数,并且m≤n;Case 1: the receiving failure information of the data packet is a data packet retransmission indication, where the data packet retransmission indication is used to indicate retransmission of the m data packets, where m is a positive integer greater than zero, and m ≤ n;
则重传所述数据包的接收失败信息对应的数据包,具体为:And retransmitting the data packet corresponding to the receiving failure information of the data packet, specifically:
根据所述数据包重传指示将所述m个所述数据包分别在m个进程上进行重传。 And transmending the m pieces of the data packets on m processes according to the data packet retransmission indication.
所述当所述一组数据包发送成功时,再向所述对端发送下一组数据包,包括:And when the sending of the set of data packets is successful, sending the next set of data packets to the peer end, including:
直至m个所述数据包发送成功,再向所述对端发送下一组数据包。Until the m packets are successfully sent, the next group of data packets is sent to the peer.
进一步地,针对情况一,图9为本发明实施例提供的一种数据包重传方法示意图,其执行主体为上文图1、图2、图5或图6所示数据包传输的装置,参照图9,在根据所述数据包重传指示将所述m个所述数据包分别在m个进程上进行重传之前,还包括:Further, for the first case, FIG. 9 is a schematic diagram of a data packet retransmission method according to an embodiment of the present invention, where the execution body is the device for transmitting the data packet shown in FIG. 1, FIG. 2, FIG. 5 or FIG. Referring to FIG. 9, before the retransmission of the m data packets on the m processes according to the data packet retransmission indication, the method further includes:
步骤200、判断若至少一个所述数据包的重传次数是否超过预置的数据包最大重传次数。Step 200: Determine if the number of retransmissions of at least one of the data packets exceeds a maximum number of retransmissions of the preset data packet.
步骤201、若至少一个所述数据包的重传次数超过预置的数据包最大重传次数,则停止对至少一个所述数据包的重传。Step 201: If the number of retransmissions of the at least one data packet exceeds a preset maximum number of retransmissions of the data packet, retransmission of the at least one of the data packets is stopped.
步骤202、若至少一个所述数据包的重传次数未超过预置的数据包最大重传次数,则重传至少一个所述数据包。Step 202: Retransmit at least one of the data packets if the number of retransmissions of the at least one data packet does not exceed a maximum number of retransmissions of the preset data packet.
可选地,在步骤202之后,还可以增加步骤203至步骤205,具体的:Optionally, after step 202, step 203 to step 205 may also be added, specifically:
步骤203、判断所述一组数据包的重传次数是否超过组最大重传次数;Step 203: Determine whether the number of retransmissions of the group of data packets exceeds the maximum number of retransmissions of the group.
步骤204、若所述一组数据包的重传次数未超过所述组最大重传次数,则将所述一组数据包进行重传。Step 204: If the number of retransmissions of the group of data packets does not exceed the maximum number of retransmissions of the group, the group of data packets is retransmitted.
步骤205、若所述一组数据包的重传次数超过所述组最大重传次数,则丢弃所述一组数据包,并向所述对端发送下一组数据包。Step 205: If the number of retransmissions of the group of data packets exceeds the maximum number of retransmissions of the group, discard the group of data packets, and send the next group of data packets to the peer end.
情况二:图10为本发明实施例提供的另一种数据包重传方法示意图,其执行主体为上文图1、图2、图5或图6所示数据包传输的装置,所述数据包的接收失败信息为组重传指示,所述组重传指示用于指示将所述一组数据包进行重传,参照图10,该方法包括如下步骤:Case 2: FIG. 10 is a schematic diagram of another method for retransmitting a data packet according to an embodiment of the present invention, where the execution subject is the apparatus for transmitting data packets shown in FIG. 1, FIG. 2, FIG. 5 or FIG. 6, the data. The receiving failure information of the packet is a group retransmission indication, and the group retransmission indication is used to indicate that the group of data packets is retransmitted. Referring to FIG. 10, the method includes the following steps:
步骤300、判断所述一组数据包的重传次数是否超过组最大重传次数;Step 300: Determine whether the number of retransmissions of the group of data packets exceeds the maximum number of retransmissions of the group;
步骤301、若所述一组数据包的重传次数超过所述组最大重传次数,则丢弃所述一组数据包,并向所述对端发送下一组数据包;Step 301: If the number of retransmissions of the group of data packets exceeds the maximum number of retransmissions of the group, discarding the group of data packets, and sending the next group of data packets to the peer end;
步骤302、若所述一组数据包的重传次数未超过所述组最大重传次数,根据所述组重传指示将所述一组数据包进行重传。Step 302: If the number of retransmissions of the group of data packets does not exceed the maximum number of retransmissions of the group, retransmit the group of data packets according to the group retransmission indication.
具体的,在执行完步骤302后,执行步骤303。Specifically, after step 302 is performed, step 303 is performed.
具体的,上文步骤101在图10中的一种可行的实现方式为: Specifically, a feasible implementation manner of step 101 in FIG. 10 is as follows:
步骤303、直至n个所述数据包发送成功,再向所述对端发送下一组数据包。Step 303: After the n data packets are successfully sent, send the next group of data packets to the peer end.
其中,对于情况一,需要说明的是,当进行一次数据包的重传之后,可能该m个重传的数据包中还有一部分数据包重传失败,此时,接收端反馈的接收响应消息中还包含数据包的接收失败信息,指示m个重传的数据包中有一个或多个数据包重传失败,则发送端会根据该数据包的接收失败信息进行重传。For the first case, it should be noted that after performing a retransmission of the data packet, some data packets in the m retransmitted data packets may fail to be retransmitted. At this time, the receiving response message received by the receiving end is received. The receiving failure information of the data packet also indicates that one or more data packets in the retransmitted data packets fail to be retransmitted, and the transmitting end retransmits according to the receiving failure information of the data packet.
可选地,还可以将图9与图10对应的实施例进行结合,具体的:发送端或接收端可以设置数据包最大重传次数和组最大重传次数,并维护每个数据包的重传次数和每组数据包的组重传次数,当一个数据包进行重传之前,先将当前该数据包的重传次数与数据包最大重传次数进行比较,若没有超过该数据包最大重传次数,则允许该数据包进行重传,并且在进行重传后,为该数据包的重传次数加“1”。若超过该数据包最大重传次数,则可以有两种可行的处理方式:一、放弃重传该数据包;二、进一步判断该数据包所述的一组数据包的当前的组重传次数是否超过了组最大重传次数。对于第二种处理方式,若没有超过该组最大重传次数,则发送端重传该组数据包;或者,若超过组最大重传次数,则丢弃该组数据包,进行下一组数据包的发送。Optionally, the embodiment corresponding to FIG. 9 and FIG. 10 may be combined. Specifically, the sending end or the receiving end may set the maximum number of retransmissions of the data packet and the maximum number of retransmissions of the group, and maintain the weight of each data packet. The number of transmissions and the number of retransmissions of each group of data packets. Before a data packet is retransmitted, the number of retransmissions of the current data packet is compared with the maximum number of retransmissions of the data packet, if the maximum weight of the data packet is not exceeded. The number of transmissions allows the packet to be retransmitted, and after retransmission, adds "1" to the number of retransmissions of the packet. If the maximum number of retransmissions of the data packet is exceeded, there are two feasible processing methods: 1. Abandoning the retransmission of the data packet; 2. Further determining the current number of retransmission times of the data packet of the data packet. Whether the maximum number of retransmissions of the group is exceeded. For the second processing mode, if the maximum number of retransmissions of the group is not exceeded, the transmitting end retransmits the group of data packets; or, if the maximum number of retransmissions of the group is exceeded, the group of data packets is discarded, and the next group of data packets is performed. Send.
或者,发送端或接收端针对每个数据包分别维护一个计时器,对每一组数据包维护一个计时器,以发送端为例,当发送一组数据包时,对于该组数据包中的每个数据包,发送端分别对应维护一个计时器,该计时器的作用在于为每个数据包的传输时间进行计时,在该传输时间内,每个数据包的重传次数不限,当该数据包的传输时间超过对应计时器预置的传输时间上限时,则放弃该数据包的传输。类似的,发送端针对一组数据包也可以维护一个计时器,该计时器的作用在于为一组数据包的传输时间进行计时,在该传输时间内,该组数据包的重传此处不限,当该组数据包的传输时间超过对应计时器预置的传输时间上限时,则放弃该组数据包的传输,进行下一组数据包的传输。类似的,接收端也可以维护类似的计时器,对每个数据包和每组数据包的传输时间进行计时,从而在一个数据包或一组数据包超过预定传输时间后,放弃传输。需要说明的是,在接收端通过计时器进行传输时间计时的方案中,当丢弃一个数据包或一组数据包时,其反馈给发送端的接收响应消息 不携带数据包的接收失败信息,以使发送端不再重传对应的数据包或一组数据包。Alternatively, the sender or the receiver maintains a timer for each data packet, and maintains a timer for each group of data packets, for example, the sender side, when sending a group of data packets, for the group of data packets Each data packet, the sender end correspondingly maintains a timer, the timer is used to time the transmission time of each data packet, and the number of retransmissions of each data packet is not limited during the transmission time. When the transmission time of the data packet exceeds the upper limit of the transmission time preset by the corresponding timer, the transmission of the data packet is abandoned. Similarly, the sender can also maintain a timer for a group of data packets. The purpose of the timer is to time the transmission time of a group of data packets. During the transmission time, the retransmission of the group of data packets is not here. When the transmission time of the group of data packets exceeds the upper limit of the transmission time preset by the corresponding timer, the transmission of the group of data packets is abandoned, and the transmission of the next group of data packets is performed. Similarly, the receiving end can also maintain a similar timer to time the transmission time of each data packet and each group of data packets, thereby abandoning the transmission after a data packet or a group of data packets exceeds a predetermined transmission time. It should be noted that, in the scheme that the receiving end performs the transmission time counting by the timer, when a data packet or a group of data packets is discarded, the feedback response message fed back to the transmitting end is reported. The receiving failure information of the data packet is not carried, so that the transmitting end does not retransmit the corresponding data packet or a group of data packets.
本发明实施例提供的数据包重传机制,通过设置数据包重传和一组数据包重传两个重传机制,从而保证当一组数据包中的一个或几个数据包发生接收失败时,发送端根据接收端反馈的接收响应消息,重传发送失败的一个或几个数据包;或者,重传一组数据包。首先,本发明实施例的数据包传输的方法中,一组数据包中可以包含由一个原数据包拆分得到的几个子数据包,当子数据包出现接收失败时,发送端只重传发送失败的子数据包,与采用单进程传输的现有技术相比,本发明实施例提供的数据包重传机制节约了传输占用的资源,提高了传输效率。The data packet retransmission mechanism provided by the embodiment of the present invention ensures that when one or several data packets in a group of data packets fail to be received, by setting a data packet retransmission and a group of data packets to retransmit two retransmission mechanisms. The transmitting end retransmits one or several data packets that failed to be transmitted according to the receiving response message fed back by the receiving end; or, retransmits a group of data packets. First, in the method for data packet transmission in the embodiment of the present invention, a group of data packets may include several sub-packets obtained by splitting one original data packet, and when the sub-data packet fails to be received, the transmitting end only retransmits and transmits. The packet retransmission mechanism provided by the embodiment of the present invention saves the resources occupied by the transmission and improves the transmission efficiency, compared with the prior art that uses the single-process transmission.
图11为本发明实施例提供的另一种数据包传输的方法的流程示意图,该方法应用于半双工FDD机器对机器系统,执行主体为其执行主体为上文图3、图5或图6所示数据包传输的装置,具体的,该装置可以为基站、机器、具备通信功能的水表、电表等抄表、手机、支持各种通信制式(2G/3G/4G/5G/wifi/蓝牙等)的通信设备、M2M的终端,参照图11,该方法包括如下步骤:FIG. 11 is a schematic flowchart diagram of another method for data packet transmission according to an embodiment of the present invention. The method is applied to a half-duplex FDD machine-to-machine system, and an execution subject is an execution subject thereof as shown in FIG. 3, FIG. 5 or FIG. 6 shows the device for transmitting data packets. Specifically, the device can be used for base station, machine, water meter with electric function, electric meter, meter reading, mobile phone, and various communication systems (2G/3G/4G/5G/wifi/Bluetooth) Referring to FIG. 11, the communication device and the M2M terminal include the following steps:
步骤400、接收对端发送的一组数据包,所述一组数据包包含n个数据包,所述n个数据包按顺序分别对应在n个进程,所述n为大于或等于二的正整数,且所述n≤最大进程数;Step 400: Receive a set of data packets sent by the peer end, where the set of data packets includes n data packets, where the n data packets respectively correspond to n processes in sequence, and the n is greater than or equal to two. An integer, and the n ≤ maximum number of processes;
步骤401、当所述一组数据包接收成功时,再接收所述对端发送的下一组数据包。Step 401: When the group of data packets is successfully received, receive the next group of data packets sent by the peer end.
本发明实施例提供的数据包传输的方法,通过作为接收端的数据包传输的装置接收对端发送的一组数据包,所述一组数据包包含n个数据包,所述n个数据包按顺序分别对应在n个进程,所述n为大于或等于二的正整数,且所述n≤最大进程数,当所述一组数据包接收成功时,该装置再接收所述对端发送的下一组数据包。与采用多进程传输的现有技术相比,本发明实施例保证只有在一组数据包传输成功后,再进行下一组数据包的接收,从而在接收成功之前,该装置也只需要缓存最多一组数据包或未组包成功的数据包(需要组包时),从而节约了缓存资源,进一步地,采用一组数据包接收成功之后再接收下一组数据包的方式,避免了由于持续传输数据包导致每个数 据包的传输进度不同,从而需要设置复杂的识别、组包、重传机制,本发明实施例提供的数据包传输的方法降低了在采用半双工FDD的传输方式时,方案实现的成本和复杂度。The method for transmitting a data packet according to an embodiment of the present invention receives a set of data packets sent by a peer end by using a device for transmitting a data packet as a receiving end, where the set of data packets includes n data packets, and the n data packets are pressed. The sequence corresponds to n processes, respectively, wherein n is a positive integer greater than or equal to two, and the n≤maximum number of processes, when the group of data packets is successfully received, the device receives the sent by the peer end. The next set of packets. Compared with the prior art adopting multi-process transmission, the embodiment of the present invention ensures that only after a group of data packets is successfully transmitted, the next group of data packets is received, so that the device only needs to cache the most before receiving successfully. A set of data packets or packets that are not successfully packaged (when a packet is required), thereby saving cache resources. Further, the manner in which a set of data packets is successfully received after receiving the next set of data packets is avoided. Transfer packets resulting in each number According to the different transmission progress of the packet, it is necessary to set a complex identification, grouping, and retransmission mechanism. The method for transmitting a data packet provided by the embodiment of the present invention reduces the cost of implementing the scheme when using the half-duplex FDD transmission mode. the complexity.
与采用的单进程传输的现有技术相比,本发明实施例每次能够接收一组数据包,能够快速的接收数据包,节省终端功耗,提高了数据包传输的吞吐量。Compared with the prior art of single-process transmission, the embodiment of the present invention can receive a group of data packets each time, can quickly receive data packets, save terminal power consumption, and improve throughput of data packet transmission.
优选地,本实施例中作为执行主体的装置接收到的数据包,可以为未经拆分的原数据包,和/或,所述数据包为通过拆分原数据包获得的子数据包。对于数据包的拆分和一组数据包的构成,其中,若所述一组数据包中包含至少两个子数据包,则至少一个所述子数据包的包头包含组包指示信息,接收端设备接收到至少两个所述子数据包后,根据所述组包指示信息对至少两个所述子数据包进行组包;或者,当发送端设备采用每一组数据包只放置一个通过拆分原数据包获得的多个子数据包时,每组数据包可以不携带上述指示信息。例如,预置发送端和接收端传输的每组数据包中只包含通过拆分一个原数据包获得的多个子数据包,接收端在接收到该组数据包后,将该组数据包组包即可。或者,又例如,若发送端和接收端可以传输上述三种可能的数据包的类型,那么每一种数据包的类型对应一种传输模式,当每组数据包中只包含通过拆分一个原数据包获得的多个子数据包,采用特定传输模式,则发送端通知接收端,之后发送的每组数据包仅只包含通过拆分一个原数据包获得的多个子数据包,那么此时该组数据包中也不需要携带指示信息,接收端在接收到该组数据包后,将该组数据包组包即可。或者,若所述一组数据包中包含至少两个子数据包和至少一个原数据包,则至少一个所述子数据包的包头包含所述组包指示信息,并且每个所述原数据包携带标识,接收端设备根据所述标识识别所述原数据包。Preferably, the data packet received by the device as the execution subject in this embodiment may be an unsplit original data packet, and/or the data packet is a sub-data packet obtained by splitting the original data packet. For the splitting of the data packet and the composition of a set of data packets, if the set of data packets includes at least two sub-data packets, the header of at least one of the sub-data packets includes the group packet indication information, and the receiving end device After receiving at least two of the sub-data packets, grouping at least two of the sub-data packets according to the grouping packet indication information; or, when the transmitting end device uses only one of each group of data packets, by splitting When multiple sub-packets are obtained by the original data packet, each group of data packets may not carry the above indication information. For example, each group of data packets transmitted by the preset transmitting end and the receiving end only includes a plurality of sub-data packets obtained by splitting one original data packet, and after receiving the data packet, the receiving end groups the data packet. Just fine. Or, for example, if the sender and the receiver can transmit the types of the three possible data packets, each type of the data packet corresponds to a transmission mode, and each group of data packets only includes one by splitting the original The plurality of sub-packets obtained by the data packet adopt a specific transmission mode, and the transmitting end notifies the receiving end, and each group of data packets transmitted thereafter only includes a plurality of sub-packets obtained by splitting one original data packet, and then the group data is The packet does not need to carry the indication information, and after receiving the group of data packets, the receiving end can group the group of data packets. Or, if the set of data packets includes at least two sub-data packets and at least one original data packet, the packet header of at least one of the sub-data packets includes the group packet indication information, and each of the original data packets carries And identifying, the receiving end device identifies the original data packet according to the identifier.
参照图8对应的实施例可知,当传输过程中有数据包出现传输失败,就需要引入重传机制来保证数据包传输的可靠性。对应发送端的实施例,在图11的基础上,图12为本发明实施例提供的另一种数据包传输的方法的流程示意图,执行主体为其执行主体为上文图3、图4、图5或图6所示数据包传输的装置,参照图12,在步骤401之前,还包括如下步骤:Referring to the corresponding embodiment of FIG. 8, it can be known that when a data packet fails to be transmitted during transmission, a retransmission mechanism needs to be introduced to ensure the reliability of data packet transmission. FIG. 12 is a schematic flowchart of another method for data packet transmission according to an embodiment of the present invention. The execution subject is an execution subject of the foregoing FIG. 3, FIG. 4, and FIG. 5 or the apparatus for data packet transmission shown in FIG. 6, referring to FIG. 12, before step 401, the method further includes the following steps:
步骤402、向所述对端发送接收响应消息,所述接收响应消息携带数据 包的接收失败信息,和/或数据包的接收成功信息;Step 402: Send a receiving response message to the peer end, where the receiving response message carries data Receive failure information of the packet, and/or success information of the reception of the data packet;
具体的,所述向所述对端发送的接收响应消息之后,若所述接收响应消息包含数据包的接收失败信息,则接收所述对端重传的所述数据包的接收失败信息对应的数据包。Specifically, after the receiving the response message sent to the opposite end, if the receiving response message includes the receiving failure information of the data packet, receiving the receiving failure information corresponding to the data packet retransmitted by the opposite end data pack.
可选地,对于上文所述数据包的接收失败信息,接收端将该数据包的接收失败信息发送给发送端,作用在于告知发送端哪些数据包传输失败,进一步地,数据包的接收失败信息可以用来指示一组数据包传输失败,也可以用来指示一组数据包中的一个或多个数据包传输失败。下面通过具体实施例对这两种可能的情况进行说明:Optionally, for the receiving failure information of the data packet, the receiving end sends the receiving failure information of the data packet to the sending end, and the function is to notify the sending end which data packet transmission fails, and further, the data packet fails to be received. Information can be used to indicate a group of packet transmission failures, and can also be used to indicate that one or more packets in a group of packets failed to transmit. The following two possible scenarios are illustrated by specific embodiments:
情况一:所述数据包的接收失败信息为数据包重传指示,所述数据包重传指示用于指示所述对端重新传输所述m个数据包,所述m为大于零的正整数,并且m≤n;Case 1: the receiving failure information of the data packet is a data packet retransmission indication, where the data packet retransmission indication is used to instruct the peer end to retransmit the m data packets, where m is a positive integer greater than zero And m≤n;
则接收所述对端重传的所述数据包的接收失败信息对应的数据包,具体为:And receiving a data packet corresponding to the receiving failure information of the data packet retransmitted by the peer end, specifically:
分别在m个进程上接收所述对端重传的所述m个所述数据包;Receiving, by the m processes, the m data packets retransmitted by the peer end respectively;
所述当所述一组数据包接收成功时,再接收所述对端发送的下一组数据包,包括:And receiving, when the group of data packets is successfully received, receiving the next group of data packets sent by the peer end, including:
直至m个所述数据包接收成功,再接收所述对端发送的下一组数据包。Until the m data packets are successfully received, the next set of data packets sent by the opposite end is received.
进一步地,针对情况二,当所述一组数据包组包失败后,则所述数据包的接收失败信息为组重传指示,所述组重传指示用于指示所述对端重新传输所述一组数据包。Further, for the second case, when the group of data packet fails, the receiving failure information of the data packet is a group retransmission indication, and the group retransmission indication is used to indicate that the peer retransmission is performed. A set of data packets.
上文对于每个数据包和/或一组数据包的重传机制已进行了详细说明,此处不再赘述,需要说明的是,对于采用计时器维护传输时间的重传方案。作为接收端的装置可以设置计时器,针对每一个数据包对应维护一个计时器,对每组数据包对应维护一个计时器,从而实现对每个数据包和每组数据包的传输时间进行计时,在一个数据包或一组数据包超过预定传输时间后,放弃传输。需要说明的是,在接收端通过计时器进行传输时间计时的方案中,当丢弃一个数据包或一组数据包时,其反馈给发送端的接收响应消息不携带数据包的接收失败信息,以使发送端不再重传对应的数据包或一组数据包。The retransmission mechanism for each data packet and/or a group of data packets has been described in detail above, and will not be described here. It should be noted that the retransmission scheme for maintaining the transmission time by using a timer is described. The device as the receiving end can set a timer, maintain a timer for each data packet, and maintain a timer for each group of data packets, so as to time the transmission time of each data packet and each group of data packets, A packet or a group of packets is discarded after a predetermined transmission time has elapsed. It should be noted that, in the scheme that the receiving end performs the transmission time counting by the timer, when a data packet or a group of data packets is discarded, the receiving response message fed back to the transmitting end does not carry the receiving failure information of the data packet, so that The sender does not retransmit the corresponding data packet or a group of data packets.
本发明实施例提供的数据包重传机制,通过设置数据包重传和一组数据 包重传两个重传机制,从而保证当一组数据包中的一个或几个数据包发生接收失败时,接收端向发送端反馈接收响应消息,以使发送端重传发送失败的一个或几个数据包;或者,重传一组数据包。首先,本发明实施例的数据包传输的方法中,一组数据包中可以包含由一个原数据包拆分得到的几个子数据包,当子数据包出现接收失败时,发送端只重传发送失败的子数据包,与采用单进程传输的现有技术相比,本发明实施例提供的数据包重传机制节约了传输占用的资源,提高了传输效率。The data packet retransmission mechanism provided by the embodiment of the present invention, by setting data packet retransmission and a set of data The packet retransmits two retransmission mechanisms to ensure that when one or several packets in a group of packets fail to receive, the receiving end feeds back the response message to the sender, so that the sender retransmits the failed one or Several packets; or, retransmit a group of packets. First, in the method for data packet transmission in the embodiment of the present invention, a group of data packets may include several sub-packets obtained by splitting one original data packet, and when the sub-data packet fails to be received, the transmitting end only retransmits and transmits. The packet retransmission mechanism provided by the embodiment of the present invention saves the resources occupied by the transmission and improves the transmission efficiency, compared with the prior art that uses the single-process transmission.
图13为本发明实施例提供的另一种数据包传输的方法的交互示意图,参照图13,对上述实施例中作为发送端的装置与作为接收端的装置之间的交互过程进行说明,具体的,该交互流程包括如下步骤:FIG. 13 is a schematic diagram of interaction of another method for transmitting a data packet according to an embodiment of the present invention. Referring to FIG. 13, an interaction process between a device as a transmitting end and a device as a receiving end in the foregoing embodiment is specifically described. The interaction process includes the following steps:
步骤501、发送端将这n个数据包分别在n个进程上发送给接收端。Step 501: The sending end sends the n data packets to the receiving end on the n processes.
具体的,n个数据包为一组数据包,一组数据包包含数据包的类型可能有如下可能:一、一组数据包只包含通过拆分原数据包获得的多个子数据包;二、一组数据包中包含全部为未经拆分的原数据包;三、一组数据包中包含通过拆分原数据包获得的多个子数据包和未经拆分的原数据包。Specifically, n data packets are a group of data packets, and a type of data packet including the type of the data packet may have the following possibilities: 1. A group of data packets only includes multiple sub-data packets obtained by splitting the original data packet; A set of data packets contains all the original data packets that are not split. Third, a set of data packets contains multiple sub-data packets obtained by splitting the original data packet and original data packets that are not split.
可选地,对于一组数据包包含通过拆分原数据包获得的多个子数据包的情况,那么在步骤501之前,还可以包括:Optionally, in the case that a group of data packets includes multiple sub-data packets obtained by splitting the original data packet, before step 501, the method may further include:
步骤500、发送端将原数据包铲分获得s个子数据包,其中s小于或等于n。Step 500: The sender shovels the original data packet to obtain s sub-data packets, where s is less than or equal to n.
步骤502、发送端接收对端发送的接收响应消息。Step 502: The sending end receives the receiving response message sent by the peer end.
具体的,接收端在特定的时间发送接收响应消息,例如在接收到m个数据包之后,向发送端发送接收响应消息,该接收响应消息包括该m个数据包的接收情况。或者,接收端在接收一组数据包之后想发送端发送接收响应消息。所述接收响应消息携带数据包的接收失败信息,和/或数据包的接收成功信息。当所述接收响应消息携带数据包的接收失败信息时,则参照上文实施例可知,该数据包的接收失败信息用于指示重传该组数据包中的某一个或几个数据包,也可以用于指示重传一组数据包,则发送端重复步骤501,具体的发送端发送的数据包为数据包的接收失败信息指示需要重传的数据包。若接收响应消息仅携带数据包的接收成功信息,则执行步骤503。Specifically, the receiving end sends a receiving response message at a specific time, for example, after receiving m data packets, sending a receiving response message to the transmitting end, where the receiving response message includes the receiving situation of the m data packets. Or, the receiving end wants the sending end to send a receiving response message after receiving a set of data packets. The receiving response message carries the receiving failure information of the data packet, and/or the receiving success information of the data packet. When the receiving response message carries the receiving failure information of the data packet, referring to the foregoing embodiment, the receiving failure information of the data packet is used to indicate that one or several data packets in the group of data packets are retransmitted. It can be used to indicate that a group of data packets is retransmitted, and the transmitting end repeats step 501. The data packet sent by the specific sending end indicates that the data packet receiving failure information indicates that the data packet needs to be retransmitted. If the receiving response message only carries the receiving success information of the data packet, step 503 is performed.
需要说明的是,发送端和接收端分别维护一个针对进程的发送缓冲器和 接收缓冲器,发送缓冲器用来存放当前进程上发送的数据包以备出错时进行重发,接收缓冲器存放当前进程上接收到的数据包。It should be noted that the sender and the receiver respectively maintain a send buffer for the process and The receive buffer is used to store the data packets sent by the current process for retransmission in case of an error, and the receive buffer stores the data packets received on the current process.
步骤503、发送端将下一组n个数据包分别在n个进程上发送给接收端。Step 503: The sending end sends the next set of n data packets to the receiving end on the n processes.
具体的,发送端进行下一组n个数据包发送的触发条件,可以是上一组数据包发送成功;或者由于上一组数据包重传次数超过预定最大值而放弃传输;或者,一组数据包的传输时间超过了传输时间上限;或者,为用户或系统指示,例如,根据用户的需求,系统中的控制网元向发送端发送放弃传输命令,指示发送端放弃上一组数据包的传输,开始下一组数据包的传输;另外,也可能根据数据包自身特性,发送端判断是否停止上一组数据包的传输,例如,该数据包包含某业务的状态信息,当上一组数据包还未完成传输,而新的一组数据包中包含该业务的最新状态信息,此时,显然接收端已经不需要上一组数据包包含的状态信息了,因此,发送端可以根据该组数据包的业务特性,放弃传输上一组数据包,而直接进行下一组数据包的发送。Specifically, the sending end performs the triggering condition for sending the next group of n data packets, which may be that the last group of data packets is successfully sent; or the transmission is abandoned because the number of retransmissions of the previous group of data exceeds a predetermined maximum value; or, a group The transmission time of the data packet exceeds the upper limit of the transmission time; or, for the user or the system, for example, according to the user's needs, the control network element in the system sends a discard transmission command to the sender, instructing the sender to abandon the previous group of data packets. Transmission, starting the transmission of the next group of data packets; in addition, depending on the characteristics of the data packet itself, the sender may determine whether to stop the transmission of the last group of data packets, for example, the data packet contains status information of a certain service, when the previous group The data packet has not been transmitted yet, and the new set of data packets contains the latest status information of the service. At this time, it is obvious that the receiving end does not need the state information contained in the previous set of data packets. Therefore, the transmitting end can The service characteristics of the group data packet, abandoning the transmission of the previous group of data packets, and directly transmitting the next group of data packets.
需要说明的是,本发明实施例提供的数据包传输的方法,由于接收端对一组数据包集中反馈,即接收端不需要在发送和接收两个状态间不断切换,因此能够减少切换时延。并且由于本系统是窄带系统,传输速率本身较低,每次传输用的时间长,因此两次重传间的时间间隔就较大,上述数据包传输的装置可以为M2M终端,并且由于M2M终端一般不移动,或者移动性较低,信道在时间上变化较为缓慢,所以此方案的重传时间间隔较大,较容易获得时间分集增益。It should be noted that, in the method for data packet transmission provided by the embodiment of the present invention, since the receiving end collectively feeds back a group of data packets, that is, the receiving end does not need to continuously switch between sending and receiving states, thereby reducing the handover delay. . And since the system is a narrowband system, the transmission rate itself is low, and the time for each transmission is long, so the time interval between two retransmissions is large, the device for transmitting the above data packet can be an M2M terminal, and because of the M2M terminal Generally, it does not move, or the mobility is low, and the channel changes slowly in time. Therefore, the retransmission time interval of this scheme is large, and the time diversity gain is relatively easy to obtain.
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。A person skilled in the art can understand that all or part of the steps of implementing the above method embodiments may be completed by using hardware related to the program instructions. The foregoing program may be stored in a computer readable storage medium, and the program is executed when executed. The foregoing steps include the steps of the foregoing method embodiments; and the foregoing storage medium includes: a medium that can store program codes, such as a ROM, a RAM, a magnetic disk, or an optical disk.
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。 Finally, it should be noted that the above embodiments are merely illustrative of the technical solutions of the present invention, and are not intended to be limiting; although the present invention has been described in detail with reference to the foregoing embodiments, those skilled in the art will understand that The technical solutions described in the foregoing embodiments may be modified, or some or all of the technical features may be equivalently replaced; and the modifications or substitutions do not deviate from the technical solutions of the embodiments of the present invention. range.

Claims (37)

  1. 一种数据包传输的装置,所述装置应用于半双工频分双工机器对机器系统,其特征在于,包括:A device for data packet transmission, the device being applied to a half-duplex frequency division duplex machine-to-machine system, comprising:
    发送模块,用于向对端发送一组数据包,所述一组数据包包含n个数据包;还用于当所述一组数据包发送成功时,再向所述对端发送下一组数据包;a sending module, configured to send a set of data packets to the peer end, where the set of data packets includes n data packets; and is further configured to send the next group to the peer end when the set of data packets is successfully sent data pack;
    处理模块,用于按顺序在发送时将所述n个数据包分别对应n个进程,所述n为大于或等于二的正整数,且所述n≤最大进程数。And a processing module, configured to sequentially correspond to the n data packets to n processes, where n is a positive integer greater than or equal to two, and the n≤maximum number of processes.
  2. 根据权利要求1所述的装置,其特征在于,还包括:The device according to claim 1, further comprising:
    接收模块,用于接收所述对端发送的接收响应消息,所述接收响应消息携带数据包的接收失败信息,和/或数据包的接收成功信息;a receiving module, configured to receive a receiving response message sent by the peer end, where the receiving response message carries a receiving failure information of the data packet, and/or a receiving success information of the data packet;
    所述发送模块,还用于若所述接收响应消息包含数据包的接收失败信息,则重传所述数据包的接收失败信息对应的数据包。The sending module is further configured to retransmit the data packet corresponding to the receiving failure information of the data packet if the receiving response message includes the receiving failure information of the data packet.
  3. 根据权利要求2所述的装置,其特征在于,所述数据包的接收失败信息为数据包重传指示,所述数据包重传指示用于指示重新传输m个数据包,所述m为大于零的正整数,并且m≤n;The apparatus according to claim 2, wherein the reception failure information of the data packet is a data packet retransmission indication, and the data packet retransmission indication is used to indicate that m data packets are retransmitted, where m is greater than a positive integer of zero, and m ≤ n;
    所述发送模块,具体用于根据所述数据包重传指示将所述m个所述数据包分别在m个进程上进行重传;具体还用于直至m个所述数据包发送成功,再向所述对端发送下一组数据包。The sending module is specifically configured to retransmit the m data packets on the m processes according to the data packet retransmission indication; specifically, the m data packets are successfully sent, and then Sending the next set of data packets to the peer.
  4. 根据权利要求3所述的装置,其特征在于,所述处理模块,还用于若至少一个所述数据包的重传次数超过预置的数据包最大重传次数,则停止对至少一个所述数据包的重传。The apparatus according to claim 3, wherein the processing module is further configured to stop at least one of the at least one of the data packets if the number of retransmissions exceeds a preset maximum number of retransmissions of the data packet Retransmission of the packet.
  5. 根据权利要求4所述的装置,其特征在于,所述处理模块,还用于判断所述一组数据包的重传次数是否超过组最大重传次数;The device according to claim 4, wherein the processing module is further configured to determine whether the number of retransmissions of the group of data packets exceeds a maximum number of retransmissions of the group;
    所述发送模块,还用于若所述一组数据包的重传次数未超过所述组最大重传次数,则将所述一组数据包进行重传;或者,The sending module is further configured to retransmit the group of data packets if the number of retransmissions of the group of data packets does not exceed the maximum number of retransmissions of the group; or
    所述处理模块,还用于若所述一组数据包的重传次数超过所述组最大重传次数,则丢弃所述一组数据包;The processing module is further configured to discard the set of data packets if the number of retransmissions of the set of data packets exceeds a maximum number of retransmissions of the group;
    所述发送模块,还用于向所述对端发送下一组数据包。The sending module is further configured to send the next group of data packets to the peer end.
  6. 根据权利要求2所述的装置,其特征在于,所述数据包的接收失败信息为组重传指示,所述组重传指示用于指示将所述一组数据包进行重传; The apparatus according to claim 2, wherein the receiving failure information of the data packet is a group retransmission indication, and the group retransmission indication is used to indicate that the group of data packets is retransmitted;
    所述处理模块,还用于判断所述一组数据包的重传次数是否超过组最大重传次数;The processing module is further configured to determine whether the number of retransmissions of the group of data packets exceeds a maximum number of retransmissions of the group;
    所述发送模块,还用于若所述一组数据包的重传次数未超过所述组最大重传次数,根据所述组重传指示将所述一组数据包进行重传;或者,The sending module is further configured to: if the number of retransmissions of the group of data packets does not exceed the maximum number of retransmissions of the group, retransmit the group of data packets according to the group retransmission indication; or
    所述处理模块,还用于若所述一组数据包的重传次数超过所述组最大重传次数,则丢弃所述一组数据包;The processing module is further configured to discard the set of data packets if the number of retransmissions of the set of data packets exceeds a maximum number of retransmissions of the group;
    所述发送模块,还用于向所述对端发送下一组数据包;还用于直至n个所述数据包发送成功,再向所述对端发送下一组数据包。The sending module is further configured to send the next set of data packets to the opposite end; and is further configured to send the next set of data packets to the opposite end until the n data packets are successfully sent.
  7. 根据权利要求1-6任意一项所述的装置,其特征在于,所述数据包为未经拆分的原数据包,和/或,所述数据包为通过拆分原数据包获得的子数据包;The apparatus according to any one of claims 1 to 6, wherein the data packet is an original data packet that is not split, and/or the data packet is a child obtained by splitting the original data packet. data pack;
    其中,若所述一组数据包中包含至少两个子数据包,则至少一个所述子数据包的包头包含组包指示信息,所述组包指示信息用于所述对端接收到至少两个所述子数据包后,根据所述组包指示信息对至少两个所述子数据包进行组包;或者,Wherein, if the set of data packets includes at least two sub-packets, the header of at least one of the sub-packets includes group package indication information, and the group package indication information is used by the opposite end to receive at least two After the sub-data packet, grouping at least two of the sub-data packets according to the group packet indication information; or
    若所述一组数据包中包含至少两个子数据包和至少一个原数据包,则至少一个所述子数据包的包头包含所述组包指示信息,并且每个所述原数据包携带标识,所述标识用于所述对端识别所述原数据包。If the set of data packets includes at least two sub-packets and at least one original data packet, the packet header of at least one of the sub-data packets includes the group packet indication information, and each of the original data packets carries an identifier, The identifier is used by the peer to identify the original data packet.
  8. 一种数据包传输的装置,所述方法应用于半双工频分双工机器对机器系统,其特征在于,包括:A device for data packet transmission, the method being applied to a half-duplex frequency division duplex machine-to-machine system, comprising:
    接收模块,用于接收对端发送的一组数据包,所述一组数据包包含n个数据包,所述n个数据包按顺序分别对应在n个进程,所述n为大于或等于二的正整数,且所述n≤最大进程数;a receiving module, configured to receive a set of data packets sent by the peer end, where the set of data packets includes n data packets, where the n data packets respectively correspond to n processes in sequence, and the n is greater than or equal to two a positive integer, and the n ≤ maximum number of processes;
    处理模块,用于当所述一组数据包接收成功时,指示所述接收模块再接收所述对端发送的下一组数据包。And a processing module, configured to: when the group of data packets is successfully received, instruct the receiving module to receive the next group of data packets sent by the peer end.
  9. 根据权利要求8所述的装置,其特征在于,还包括:The device according to claim 8, further comprising:
    发送模块,用于向所述对端发送接收响应消息,所述接收响应消息携带数据包的接收失败信息,和/或数据包的接收成功信息;a sending module, configured to send a receiving response message to the peer end, where the receiving response message carries a receiving failure information of the data packet, and/or a receiving success information of the data packet;
    所述接收模块,还用于若所述接收响应消息包含数据包的接收失败信息,则接收所述对端重传的所述数据包的接收失败信息对应的数据包。 The receiving module is further configured to: if the receiving response message includes the receiving failure information of the data packet, receive the data packet corresponding to the receiving failure information of the data packet retransmitted by the opposite end.
  10. 根据权利要求9所述的装置,其特征在于,所述数据包的接收失败信息为数据包重传指示,所述数据包重传指示用于指示所述对端重新传输m个数据包,所述m为大于零的正整数,并且m≤n;The apparatus according to claim 9, wherein the receiving failure information of the data packet is a data packet retransmission indication, and the data packet retransmission indication is used to instruct the opposite end to retransmit m data packets. m is a positive integer greater than zero, and m ≤ n;
    所述接收模块,具体用于分别在m个进程上接收所述对端重传的所述m个所述数据包;还具体用于直至m个所述数据包接收成功,再接收所述对端发送的下一组数据包。The receiving module is specifically configured to receive, by the m processes, the m data packets that are retransmitted by the peer end, and specifically, to receive the data packets until the m data packets are successfully received, and then receive the pair. The next set of packets sent by the end.
  11. 根据权利要求8-10任意一项所述的装置,其特征在于,还包括:The device according to any one of claims 8 to 10, further comprising:
    当所述一组数据包组包失败后,则所述数据包的接收失败信息为组重传指示,所述组重传指示用于指示所述对端重新传输所述一组数据包。The receiving failure information of the data packet is a group retransmission indication, and the group retransmission indication is used to instruct the peer to retransmit the group of data packets.
  12. 根据权利要求8-11任意一项所述的装置,其特征在于,所述数据包为未经拆分的原数据包,和/或,所述数据包为通过拆分原数据包获得的子数据包;The apparatus according to any one of claims 8-11, wherein the data packet is an original data packet that is not split, and/or the data packet is a child obtained by splitting the original data packet. data pack;
    其中,若所述一组数据包中包含至少两个子数据包,则至少一个所述子数据包的包头包含组包指示信息;所述处理模块,还用于根据所述组包指示信息对至少两个所述子数据包进行组包;或者,If the set of data packets includes at least two sub-packets, the header of the at least one of the sub-packets includes the packet-instruction information, and the processing module is further configured to: Two of the sub-packets are grouped; or,
    若所述一组数据包中包含至少两个子数据包和至少一个原数据包,则至少一个所述子数据包的包头包含所述组包指示信息,并且每个所述原数据包携带标识,所述处理模块,还用于根据所述标识识别所述原数据包。If the set of data packets includes at least two sub-packets and at least one original data packet, the packet header of at least one of the sub-data packets includes the group packet indication information, and each of the original data packets carries an identifier, The processing module is further configured to identify the original data packet according to the identifier.
  13. 一种数据包传输的装置,所述装置应用于半双工频分双工机器对机器系统,其特征在于,包括:A device for data packet transmission, the device being applied to a half-duplex frequency division duplex machine-to-machine system, comprising:
    发射器,用于向对端发送一组数据包,所述一组数据包包含n个数据包;还用于当所述一组数据包发送成功时,再向所述对端发送下一组数据包;a transmitter, configured to send a set of data packets to the peer end, where the set of data packets includes n data packets; and is further configured to send the next group to the peer end when the set of data packets is successfully sent data pack;
    处理器,用于按顺序在发送时将所述n个数据包分别对应n个进程,所述n为大于或等于二的正整数,且所述n≤最大进程数。And a processor, configured to sequentially correspond to the n data packets to n processes, where n is a positive integer greater than or equal to two, and the n≤maximum number of processes.
  14. 根据权利要求13所述的装置,其特征在于,还包括:The device according to claim 13, further comprising:
    接收器,用于接收所述对端发送的接收响应消息,所述接收响应消息携带数据包的接收失败信息,和/或数据包的接收成功信息;a receiver, configured to receive a receiving response message sent by the peer end, where the receiving response message carries a receiving failure information of the data packet, and/or a receiving success information of the data packet;
    所述发射器,还用于若所述接收响应消息包含数据包的接收失败信息,则重传所述数据包的接收失败信息对应的数据包。The transmitter is further configured to: if the receiving response message includes receiving failure information of the data packet, retransmitting the data packet corresponding to the receiving failure information of the data packet.
  15. 根据权利要求14所述的装置,其特征在于,所述数据包的接收失败 信息为数据包重传指示,所述数据包重传指示用于指示重新传输m个数据包,所述m为大于零的正整数,并且m≤n;The apparatus according to claim 14, wherein the reception of the data packet fails The information is a data packet retransmission indication, the data packet retransmission indication is used to indicate retransmission of m data packets, the m is a positive integer greater than zero, and m≤n;
    所述发射器,具体用于根据所述数据包重传指示将所述m个所述数据包分别在m个进程上进行重传;具体还用于直至m个所述数据包发送成功,再向所述对端发送下一组数据包。The transmitter is specifically configured to retransmit the m data packets on the m processes according to the data packet retransmission indication; specifically, the m data packets are successfully sent, and then Sending the next set of data packets to the peer.
  16. 根据权利要求15所述的装置,其特征在于,所述处理器,还用于若至少一个所述数据包的重传次数超过预置的数据包最大重传次数,则停止对至少一个所述数据包的重传。The device according to claim 15, wherein the processor is further configured to stop at least one of the at least one of the data packets if the number of retransmissions exceeds a preset maximum number of retransmissions of the data packet. Retransmission of the packet.
  17. 根据权利要求16所述的装置,其特征在于,所述处理器,还用于判断所述一组数据包的重传次数是否超过组最大重传次数;The device according to claim 16, wherein the processor is further configured to determine whether the number of retransmissions of the group of data packets exceeds a maximum number of retransmissions of the group;
    所述发射器,还用于若所述一组数据包的重传次数未超过所述组最大重传次数,则将所述一组数据包进行重传;或者,The transmitter is further configured to retransmit the group of data packets if the number of retransmissions of the group of data packets does not exceed the maximum number of retransmissions of the group; or
    所述处理器,还用于若所述一组数据包的重传次数超过所述组最大重传次数,则丢弃所述一组数据包;The processor is further configured to discard the set of data packets if the number of retransmissions of the set of data packets exceeds a maximum number of retransmissions of the group;
    所述发射器,还用于向所述对端发送下一组数据包。The transmitter is further configured to send the next group of data packets to the peer end.
  18. 根据权利要求14所述的装置,其特征在于,所述数据包的接收失败信息为组重传指示,所述组重传指示用于指示将所述一组数据包进行重传;The apparatus according to claim 14, wherein the receiving failure information of the data packet is a group retransmission indication, and the group retransmission indication is used to indicate that the group of data packets is retransmitted;
    所述处理器,还用于判断所述一组数据包的重传次数是否超过组最大重传次数;The processor is further configured to determine whether the number of retransmissions of the group of data packets exceeds a maximum number of retransmissions of the group;
    所述发射器,还用于若所述一组数据包的重传次数未超过所述组最大重传次数,根据所述组重传指示将所述一组数据包进行重传;或者,The transmitter is further configured to: if the number of retransmissions of the group of data packets does not exceed the maximum number of retransmissions of the group, retransmit the group of data packets according to the group retransmission indication; or
    所述处理器,还用于若所述一组数据包的重传次数超过所述组最大重传次数,则丢弃所述一组数据包;The processor is further configured to discard the set of data packets if the number of retransmissions of the set of data packets exceeds a maximum number of retransmissions of the group;
    所述发射器,还用于向所述对端发送下一组数据包;还用于直至n个所述数据包发送成功,再向所述对端发送下一组数据包。The transmitter is further configured to send the next set of data packets to the opposite end; and is further configured to send the next set of data packets to the opposite end until the n data packets are successfully sent.
  19. 根据权利要求13-18任意一项所述的装置,其特征在于,所述数据包为未经拆分的原数据包,和/或,所述数据包为通过拆分原数据包获得的子数据包;The apparatus according to any one of claims 13-18, wherein the data packet is an unsplit original data packet, and/or the data packet is a sub-object obtained by splitting the original data packet. data pack;
    其中,若所述一组数据包中包含至少两个子数据包,则至少一个所述子数据包的包头包含组包指示信息,所述组包指示信息用于所述对端接收到至 少两个所述子数据包后,根据所述组包指示信息对至少两个所述子数据包进行组包;或者,Wherein, if the set of data packets includes at least two sub-packets, the header of at least one of the sub-packets includes packet indication information, where the packet indication information is used by the peer to receive After the two sub-packets are less, at least two of the sub-data packets are grouped according to the group package indication information; or
    若所述一组数据包中包含至少两个子数据包和至少一个原数据包,则至少一个所述子数据包的包头包含所述组包指示信息,并且每个所述原数据包携带标识,所述标识用于所述对端识别所述原数据包。If the set of data packets includes at least two sub-packets and at least one original data packet, the packet header of at least one of the sub-data packets includes the group packet indication information, and each of the original data packets carries an identifier, The identifier is used by the peer to identify the original data packet.
  20. 一种数据包传输的装置,所述方法应用于半双工频分双工机器对机器系统,其特征在于,包括:A device for data packet transmission, the method being applied to a half-duplex frequency division duplex machine-to-machine system, comprising:
    接收器,用于接收对端发送的一组数据包,所述一组数据包包含n个数据包,所述n个数据包按顺序分别对应在n个进程,所述n为大于或等于二的正整数,且所述n≤最大进程数;a receiver, configured to receive a set of data packets sent by the peer end, where the set of data packets includes n data packets, where the n data packets respectively correspond to n processes in sequence, and the n is greater than or equal to two a positive integer, and the n ≤ maximum number of processes;
    处理器,用于当所述一组数据包接收成功时,指示所述接收器再接收所述对端发送的下一组数据包。And a processor, configured to: when the group of data packets is successfully received, instruct the receiver to receive the next group of data packets sent by the peer end.
  21. 根据权利要求20所述的装置,其特征在于,还包括:The device according to claim 20, further comprising:
    发射器,用于向所述对端发送接收响应消息,所述接收响应消息携带数据包的接收失败信息,和/或数据包的接收成功信息;a transmitter, configured to send a receiving response message to the peer end, where the receiving response message carries a receiving failure information of the data packet, and/or a receiving success information of the data packet;
    所述接收器,还用于若所述接收响应消息包含数据包的接收失败信息,则接收所述对端重传的所述数据包的接收失败信息对应的数据包。The receiver is further configured to: if the receiving response message includes the receiving failure information of the data packet, receive the data packet corresponding to the receiving failure information of the data packet retransmitted by the opposite end.
  22. 根据权利要求21所述的装置,其特征在于,所述数据包的接收失败信息为数据包重传指示,所述数据包重传指示用于指示所述对端重新传输m个数据包,所述m为大于零的正整数,并且m≤n;The apparatus according to claim 21, wherein the receiving failure information of the data packet is a data packet retransmission indication, and the data packet retransmission indication is used to instruct the peer end to retransmit the m data packets. m is a positive integer greater than zero, and m ≤ n;
    所述接收器,具体用于分别在m个进程上接收所述对端重传的所述m个所述数据包;还具体用于直至m个所述数据包接收成功,再接收所述对端发送的下一组数据包。The receiver is specifically configured to receive, by the m processes, the m data packets that are retransmitted by the peer end, and specifically, to receive the data packets until the m data packets are successfully received, and then receive the pair. The next set of packets sent by the end.
  23. 根据权利要求20-22任意一项所述的装置,其特征在于,还包括:The device according to any one of claims 20-22, further comprising:
    当所述一组数据包组包失败后,则所述数据包的接收失败信息为组重传指示,所述组重传指示用于指示所述对端重新传输所述一组数据包。The receiving failure information of the data packet is a group retransmission indication, and the group retransmission indication is used to instruct the peer to retransmit the group of data packets.
  24. 根据权利要求20-23任意一项所述的装置,其特征在于,所述数据包为未经拆分的原数据包,和/或,所述数据包为通过拆分原数据包获得的子数据包;The apparatus according to any one of claims 20-23, wherein the data packet is an unsplit original data packet, and/or the data packet is a sub-object obtained by splitting the original data packet. data pack;
    其中,若所述一组数据包中包含至少两个子数据包,则至少一个所述子 数据包的包头包含组包指示信息;所述处理器,还用于所述对端接收到至少两个所述子数据包后,根据所述组包指示信息对至少两个所述子数据包进行组包;或者,Wherein, if the set of data packets includes at least two sub-packets, at least one of the sub-packets The packet header of the data packet includes the group packet indication information, and the processor is further configured to, after the peer end receives the at least two of the sub data packets, perform at least two of the sub data packets according to the group packet indication information. Carry out a package; or,
    若所述一组数据包中包含至少两个子数据包和至少一个原数据包,则至少一个所述子数据包的包头包含所述组包指示信息,并且每个所述原数据包携带标识,所述处理器,还用于根据所述标识识别所述原数据包。If the set of data packets includes at least two sub-packets and at least one original data packet, the packet header of at least one of the sub-data packets includes the group packet indication information, and each of the original data packets carries an identifier, The processor is further configured to identify the original data packet according to the identifier.
  25. 一种数据包传输系统,其特征在于,包括:至少一个权利要求1-7任意一项所述的数据包传输的装置和至少一个权利要求8-12任意一项所述的数据包传输的装置;或者,至少一个权利要求13-19任意一项所述的数据包传输的装置和至少一个权利要求20-24任意一项所述的数据包传输的装置。A data packet transmission system, comprising: at least one apparatus for transmitting data packets according to any one of claims 1 to 7 and at least one apparatus for transmitting data packets according to any one of claims 8-12 Or at least one apparatus for data packet transmission according to any of claims 13-19 and at least one apparatus for data packet transmission according to any one of claims 20-24.
  26. 一种数据包传输的方法,所述方法应用于半双工频分双工机器对机器系统,其特征在于,包括:A method of data packet transmission, the method being applied to a half-duplex frequency division duplex machine-to-machine system, comprising:
    向对端发送一组数据包,所述一组数据包包含n个数据包,所述n个数据包发送时按顺序分别对应n个进程,所述n为大于或等于二的正整数,且所述n≤最大进程数;Transmitting, to the peer end, a set of data packets, where the set of data packets includes n data packets, where the n data packets are sent in sequence corresponding to n processes, where n is a positive integer greater than or equal to two, and The n ≤ the maximum number of processes;
    当所述一组数据包发送成功时,再向所述对端发送下一组数据包。When the set of data packets is successfully sent, the next set of data packets is sent to the opposite end.
  27. 根据权利要求26所述的方法,其特征在于,在当所述一组数据包发送成功时,再向所述对端发送下一组数据包之前,还包括:The method according to claim 26, wherein before the sending of the next set of data packets to the opposite end when the sending of the set of data packets is successful, the method further comprises:
    接收所述对端发送的接收响应消息,所述接收响应消息携带数据包的接收失败信息,和/或数据包的接收成功信息;Receiving a receiving response message sent by the peer end, where the receiving response message carries a receiving failure information of the data packet, and/or a receiving success information of the data packet;
    所述接收所述对端发送的接收响应消息之后,还包括:After receiving the receiving response message sent by the peer, the method further includes:
    若所述接收响应消息包含数据包的接收失败信息,则重传所述数据包的接收失败信息对应的数据包。And if the receiving response message includes the receiving failure information of the data packet, retransmitting the data packet corresponding to the receiving failure information of the data packet.
  28. 根据权利要求27所述的方法,其特征在于,所述数据包的接收失败信息为数据包重传指示,所述数据包重传指示用于指示重新传输m个数据包,所述m为大于零的正整数,并且m≤n;The method according to claim 27, wherein the reception failure information of the data packet is a data packet retransmission indication, and the data packet retransmission indication is used to indicate retransmission of m data packets, where m is greater than a positive integer of zero, and m ≤ n;
    所述重传所述数据包的接收失败信息对应的数据包,包括:And the retransmitting the data packet corresponding to the receiving failure information of the data packet, including:
    根据所述数据包重传指示将所述m个所述数据包分别在m个进程上进行重传;And retransmitting the m pieces of the data packets on m processes according to the data packet retransmission indication;
    所述当所述一组数据包发送成功时,再向所述对端发送下一组数据包, 包括:When the group of data packets is successfully sent, sending the next group of data packets to the peer end, include:
    直至m个所述数据包发送成功,再向所述对端发送下一组数据包。Until the m packets are successfully sent, the next group of data packets is sent to the peer.
  29. 根据权利要求28所述的方法,其特征在于,所述根据所述数据包重传指示将所述m个所述数据包分别在m个进程上进行重传之前,还包括:The method according to claim 28, wherein before the retransmission of the m data packets on the m processes according to the data packet retransmission indication, the method further includes:
    若至少一个所述数据包的重传次数超过预置的数据包最大重传次数,则停止对至少一个所述数据包的重传。If the number of retransmissions of at least one of the data packets exceeds a preset maximum number of retransmissions of the data packet, retransmission of at least one of the data packets is stopped.
  30. 根据权利要求29所述的方法,其特征在于,所述则停止对至少一个所述数据包的重传之后,还包括:The method according to claim 29, wherein after the retransmission of the at least one of the data packets is stopped, the method further comprises:
    判断所述一组数据包的重传次数是否超过组最大重传次数;Determining whether the number of retransmissions of the group of data packets exceeds the maximum number of retransmissions of the group;
    若所述一组数据包的重传次数未超过所述组最大重传次数,则将所述一组数据包进行重传;或者,If the number of retransmissions of the set of data packets does not exceed the maximum number of retransmissions of the group, retransmitting the set of data packets; or
    若所述一组数据包的重传次数超过所述组最大重传次数,则丢弃所述一组数据包,并向所述对端发送下一组数据包。If the number of retransmissions of the set of data packets exceeds the maximum number of retransmissions of the group, the set of data packets is discarded, and the next set of data packets is sent to the opposite end.
  31. 根据权利要求27所述的方法,其特征在于,所述数据包的接收失败信息为组重传指示,所述组重传指示用于指示将所述一组数据包进行重传;The method according to claim 27, wherein the receiving failure information of the data packet is a group retransmission indication, and the group retransmission indication is used to indicate that the group of data packets is retransmitted;
    所述重传所述数据包的接收失败信息对应的数据包,包括:And the retransmitting the data packet corresponding to the receiving failure information of the data packet, including:
    判断所述一组数据包的重传次数是否超过组最大重传次数;Determining whether the number of retransmissions of the group of data packets exceeds the maximum number of retransmissions of the group;
    若所述一组数据包的重传次数未超过所述组最大重传次数,根据所述组重传指示将所述一组数据包进行重传;或者,And if the number of retransmissions of the group of data packets does not exceed the maximum number of retransmissions of the group, retransmitting the group of data packets according to the group retransmission indication; or
    若所述一组数据包的重传次数超过所述组最大重传次数,则丢弃所述一组数据包,并向所述对端发送下一组数据包;If the number of retransmissions of the set of data packets exceeds the maximum number of retransmissions of the group, discarding the set of data packets, and sending the next set of data packets to the opposite end;
    所述当所述一组数据包发送成功时,再向所述对端发送下一组数据包,包括:And when the sending of the set of data packets is successful, sending the next set of data packets to the peer end, including:
    直至n个所述数据包发送成功,再向所述对端发送下一组数据包。Until the n packets are successfully sent, the next group of data packets is sent to the peer.
  32. 根据权利要求26-31任意一项所述的方法,其特征在于,所述数据包为未经拆分的原数据包,和/或,所述数据包为通过拆分原数据包获得的子数据包;The method according to any one of claims 26 to 31, wherein the data packet is an unsplit original data packet, and/or the data packet is a sub-object obtained by splitting the original data packet. data pack;
    其中,若所述一组数据包中包含至少两个子数据包,则至少一个所述子数据包的包头包含组包指示信息,所述组包指示信息用于所述对端接收到至少两个所述子数据包后,根据所述组包指示信息对至少两个所述子数据包进 行组包;或者,Wherein, if the set of data packets includes at least two sub-packets, the header of at least one of the sub-packets includes group package indication information, and the group package indication information is used by the opposite end to receive at least two After the sub-packets, according to the group package indication information, at least two of the sub-packets are Line group package; or,
    若所述一组数据包中包含至少两个子数据包和至少一个原数据包,则至少一个所述子数据包的包头包含所述组包指示信息,并且每个所述原数据包携带标识,所述标识用于所述对端识别所述原数据包。If the set of data packets includes at least two sub-packets and at least one original data packet, the packet header of at least one of the sub-data packets includes the group packet indication information, and each of the original data packets carries an identifier, The identifier is used by the peer to identify the original data packet.
  33. 一种数据包传输的方法,所述方法应用于半双工频分双工机器对机器系统,其特征在于,包括:A method of data packet transmission, the method being applied to a half-duplex frequency division duplex machine-to-machine system, comprising:
    接收对端发送的一组数据包,所述一组数据包包含n个数据包,所述n个数据包按顺序分别对应在n个进程,所述n为大于或等于二的正整数,且所述n≤最大进程数;Receiving a set of data packets sent by the peer end, where the set of data packets includes n data packets, where the n data packets are respectively corresponding to n processes in sequence, and the n is a positive integer greater than or equal to two, and The n ≤ the maximum number of processes;
    当所述一组数据包接收成功时,再接收所述对端发送的下一组数据包。When the group of data packets is successfully received, the next group of data packets sent by the peer end is received.
  34. 根据权利要求33所述的方法,其特征在于,在当所述一组数据包接收成功时,再接收所述对端发送的下一组数据包之前,还包括:The method according to claim 33, further comprising: before receiving the next set of data packets sent by the opposite end, when the receiving of the set of data packets is successful, further comprising:
    向所述对端发送接收响应消息,所述接收响应消息携带数据包的接收失败信息,和/或数据包的接收成功信息;Sending a receiving response message to the peer end, where the receiving response message carries the receiving failure information of the data packet, and/or the receiving success information of the data packet;
    所述向所述对端发送的接收响应消息之后,还包括:After the receiving the response message sent to the peer end, the method further includes:
    若所述接收响应消息包含数据包的接收失败信息,则接收所述对端重传的所述数据包的接收失败信息对应的数据包。And if the receiving response message includes the receiving failure information of the data packet, receiving the data packet corresponding to the receiving failure information of the data packet retransmitted by the opposite end.
  35. 根据权利要求34所述的方法,其特征在于,所述数据包的接收失败信息为数据包重传指示,所述数据包重传指示用于指示所述对端重新传输m个数据包,所述m为大于零的正整数,并且m≤n;The method according to claim 34, wherein the receiving failure information of the data packet is a data packet retransmission indication, and the data packet retransmission indication is used to instruct the peer end to retransmit the m data packets. m is a positive integer greater than zero, and m ≤ n;
    所述接收所述对端重传的所述数据包的接收失败信息对应的数据包,包括:And receiving the data packet corresponding to the receiving failure information of the data packet retransmitted by the peer end, including:
    分别在m个进程上接收所述对端重传的所述m个所述数据包;Receiving, by the m processes, the m data packets retransmitted by the peer end respectively;
    所述当所述一组数据包接收成功时,再接收所述对端发送的下一组数据包,包括:And receiving, when the group of data packets is successfully received, receiving the next group of data packets sent by the peer end, including:
    直至m个所述数据包接收成功,再接收所述对端发送的下一组数据包。Until the m data packets are successfully received, the next set of data packets sent by the opposite end is received.
  36. 根据权利要求33-35任意一项所述的方法,其特征在于,所述接收对端发送的一组数据包之后,还包括:The method according to any one of claims 33 to 35, wherein after receiving a set of data packets sent by the opposite end, the method further comprises:
    当所述一组数据包组包失败后,则所述数据包的接收失败信息为组重传指示,所述组重传指示用于指示所述对端重新传输所述一组数据包。 The receiving failure information of the data packet is a group retransmission indication, and the group retransmission indication is used to instruct the peer to retransmit the group of data packets.
  37. 根据权利要求33-36任意一项所述的方法,其特征在于,所述数据包为未经拆分的原数据包,和/或,所述数据包为通过拆分原数据包获得的子数据包;The method according to any one of claims 33 to 36, wherein the data packet is an original data packet that is not split, and/or the data packet is a child obtained by splitting the original data packet. data pack;
    其中,若所述一组数据包中包含至少两个子数据包,则至少一个所述子数据包的包头包含组包指示信息,接收到至少两个所述子数据包后,根据所述组包指示信息对至少两个所述子数据包进行组包;或者,Wherein, if the set of data packets includes at least two sub-packets, the header of at least one of the sub-packets includes packet indication information, and after receiving at least two of the sub-packets, according to the group of packets Instructing to group at least two of the sub-packets; or
    若所述一组数据包中包含至少两个子数据包和至少一个原数据包,则至少一个所述子数据包的包头包含所述组包指示信息,并且每个所述原数据包携带标识,根据所述标识识别所述原数据包。 If the set of data packets includes at least two sub-packets and at least one original data packet, the packet header of at least one of the sub-data packets includes the group packet indication information, and each of the original data packets carries an identifier, Identifying the original data packet based on the identification.
PCT/CN2014/087452 2014-09-25 2014-09-25 Data packet transmission device, system and method WO2016045062A1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
PCT/CN2014/087452 WO2016045062A1 (en) 2014-09-25 2014-09-25 Data packet transmission device, system and method
CN201480026717.1A CN105684383A (en) 2014-09-25 2014-09-25 Data packet transmission device, system and method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2014/087452 WO2016045062A1 (en) 2014-09-25 2014-09-25 Data packet transmission device, system and method

Publications (1)

Publication Number Publication Date
WO2016045062A1 true WO2016045062A1 (en) 2016-03-31

Family

ID=55580110

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2014/087452 WO2016045062A1 (en) 2014-09-25 2014-09-25 Data packet transmission device, system and method

Country Status (2)

Country Link
CN (1) CN105684383A (en)
WO (1) WO2016045062A1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108173807A (en) * 2017-11-28 2018-06-15 贵阳语玩科技有限公司 Unified message is sent, processing method and processing device
US11985083B2 (en) 2019-08-02 2024-05-14 Qualcomm Incorporated Operation modes for sidelink relay

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112653691B (en) * 2020-12-18 2023-04-18 脸萌有限公司 Data processing method, device, equipment and storage medium

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100074324A1 (en) * 2008-09-23 2010-03-25 Zhebin Qian Adaptive video streaming system and method
CN102946330A (en) * 2012-09-29 2013-02-27 华为技术有限公司 Method, device and system for network packet loss measurement
CN103841118A (en) * 2014-03-25 2014-06-04 中国科学技术大学苏州研究院 Two-way reliable covert channel based on TCP effective loads

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1275440C (en) * 2003-11-19 2006-09-13 北京邮电大学 An end-to-end network bottleneck bandwidth measuring method
CN101232623A (en) * 2007-01-22 2008-07-30 李会根 System and method for transmitting stereo audio and video numerical coding based on transmission stream
CN100512565C (en) * 2007-03-14 2009-07-08 中兴通讯股份有限公司 Method for enhancing wireless communication up-grouping dispatch
CN101345608B (en) * 2007-07-13 2011-08-17 电信科学技术研究院 Method and apparatus for managing multi-carrier TDD ascending HARQ course

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100074324A1 (en) * 2008-09-23 2010-03-25 Zhebin Qian Adaptive video streaming system and method
CN102946330A (en) * 2012-09-29 2013-02-27 华为技术有限公司 Method, device and system for network packet loss measurement
CN103841118A (en) * 2014-03-25 2014-06-04 中国科学技术大学苏州研究院 Two-way reliable covert channel based on TCP effective loads

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108173807A (en) * 2017-11-28 2018-06-15 贵阳语玩科技有限公司 Unified message is sent, processing method and processing device
CN108173807B (en) * 2017-11-28 2021-12-03 贵阳语玩科技有限公司 Unified message sending and processing method and device
US11985083B2 (en) 2019-08-02 2024-05-14 Qualcomm Incorporated Operation modes for sidelink relay

Also Published As

Publication number Publication date
CN105684383A (en) 2016-06-15

Similar Documents

Publication Publication Date Title
WO2018145296A1 (en) Method for data transmission, related device, and system
JP7048762B2 (en) HARQ-ACK codebook determination method and terminal
WO2020063674A1 (en) Method for detecting link failure of bylink, and terminal
WO2020173350A1 (en) Information transmission method and terminal
WO2014079382A1 (en) Voice transmission method, terminal, voice server and voice transmission system
WO2018036026A1 (en) Data transmission method, base station, target terminal, system and storage medium
WO2019001406A1 (en) Data transmission method, user equipment and network device
CN110234124B (en) Information transmission method and terminal equipment
WO2020143656A1 (en) Method and terminal for sending hybrid automatic repeat request acknowledgement
CN113543290A (en) Energy-saving mode indication method, terminal and network side equipment
CN104780401B (en) The sending method and device of video data
CN111800867B (en) Feedback method of semi-persistent scheduling physical downlink shared channel and terminal equipment
JP7029474B2 (en) Data instruction method and related products
CN112770409B (en) Radio link failure processing method and device
WO2019028703A1 (en) Method for determining length of feedback response information and related product
WO2016045062A1 (en) Data packet transmission device, system and method
WO2018219092A1 (en) Method for processing encapsulated packets and terminal device
EP3609103B1 (en) Data re-transmission control method and related product
WO2018177049A1 (en) Data transmission method, terminal device and network device
CN112804033B (en) HARQ-ACK processing method and related equipment
WO2020156473A1 (en) Transmission method and terminal
WO2019154358A1 (en) Method for determining harq-ack codebook, and terminal
CN109565645A (en) Multicast service transmission method, terminal, base station and communication system
WO2020024107A1 (en) Status report sending method and device
CN113556781B (en) Data receiving and information configuration method, terminal and network equipment

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: 14902353

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: 14902353

Country of ref document: EP

Kind code of ref document: A1