Communication apparatus, communication method, and communication system
The communication device and system efficiently manage packet retransmissions in free-space optical communications by generating encoded data and controlling retransmissions based on decoded and received data numbers, addressing burst errors and decoding delays.
Patent Information
- Application Number
- JP2024099846
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-06-20
- Publication Date
- 2026-01-08
AI Technical Summary
Free-space optical communications are susceptible to atmospheric turbulence causing burst errors, leading to continuous interruptions and increased decoding delays, and existing technologies fail to efficiently manage packet retransmissions when using packet coding methods that combine redundant codes.
A communication device and system that generates encoded data using at least two pieces of data, redundantly transmits packets, receives acknowledgment responses, and controls retransmissions based on decoded and received data numbers to efficiently manage packet retransmissions.
Efficient retransmission of packets is achieved by canceling successfully decoded or received data, thereby optimizing communication performance in the presence of burst errors.
Smart Images

Figure 2026002109000001_ABST
Abstract
Description
[Technical Field]
[0001] The present disclosure relates to a communication device, a communication method, and a communication system. [Background technology]
[0002] In recent years, free-space optical communication, which uses light as a transmission medium, has been attracting attention. Free-space optical communication is susceptible to disturbances, which can lead to situations where communication quality deteriorates. An example of a related technology is the invention disclosed in Patent Document 1 below.
[0003] The following patent document discloses that a first mobile station can retransmit to a second mobile station as necessary if there is no response from the second mobile station or even if the protocol does not allow a response in the first place. [Prior art documents] [Patent documents]
[0004] [Patent Document 1] Patent Publication No. 2012-186662 Summary of the Invention [Problem to be solved by the invention]
[0005] In free-space optical communications, atmospheric turbulence can cause continuous burst errors (instantaneous interruptions) lasting more than 1 ms. One method for dealing with burst errors is to distribute the data over a long period of time and encode it, but this increases the delay until decoding. It is necessary to shorten the delay until decoding while improving the characteristics against burst errors.
[0006] Furthermore, when a packet coding method that combines redundant codes is used, it is necessary to improve the coding efficiency when the transmission speed changes or when partial packet delivery is confirmed. Even if the technology disclosed in the above Patent Document 1 is used, it is not possible to solve these problems.
[0007] The present disclosure has been made in consideration of the above-mentioned problems, and an exemplary purpose thereof is to provide a technology that enables efficient retransmission of packets even when a packet coding method that combines redundant codes is used. [Means for solving the problem]
[0008] A communication device according to an exemplary aspect of the present disclosure includes: an encoding means for generating encoded data encoded using at least two pieces of data among a plurality of pieces of data; a transmitting means for redundantly transmitting a first packet including any one of the plurality of pieces of data and a second packet including the encoded data to a communication device on the other side; a receiving means for receiving from the communication device on the other side an acknowledgment response including at least one of a decoded data number corresponding to data successfully decoded using the first packet and the second packet and a received data number corresponding to data included in the first packet and the second packet that was successfully received; and a control means for controlling retransmission of the first packet and the second packet based on at least one of the decoded data number and the received data number.
[0009] A communication method according to an exemplary aspect of the present disclosure generates encoded data by encoding using at least two pieces of data from among a plurality of pieces of data, redundantly transmits a first packet including one of the plurality of pieces of data and a second packet including the encoded data to a communication device on the other side, receives an acknowledgement from the communication device on the other side including at least one of a decoded data number corresponding to data successfully decoded using the first packet and the second packet and a received data number corresponding to data included in the first packet and the second packet that was successfully received, and controls retransmission of the first packet and the second packet based on at least one of the decoded data number and the received data number.
[0010] A communication system according to an exemplary aspect of the present disclosure is a communication system including a first communication device and a second communication device, wherein the first communication device includes: encoding means for generating encoded data by encoding using at least two pieces of data among a plurality of pieces of data; first transmitting means for redundantly transmitting a first packet including any of the plurality of pieces of data and a second packet including the encoded data to the second communication device; and first receiving means for receiving an acknowledgement from the second communication device, wherein the second communication device includes: second receiving means for receiving the first packet and the second packet from the first communication device; and second transmitting means for transmitting to the first communication device the acknowledgement including at least one of a decoded data number corresponding to data successfully decoded using the first packet and the second packet and a received data number corresponding to data included in the first packet and the second packet that was successfully received, wherein the first communication device further includes control means for controlling retransmission of the first packet and the second packet based on at least one of the decoded data number and the received data number included in the acknowledgement received by the first receiving means. [Effects of the Invention]
[0011] According to an exemplary aspect of the present disclosure, an exemplary effect is achieved in that packets can be efficiently retransmitted even when a packet coding scheme that combines redundant codes is used. [Brief explanation of the drawings]
[0012] [Figure 1] 1 is a block diagram illustrating a configuration example of a communication device according to the present disclosure. [Figure 2] FIG. 10 is a flow diagram illustrating a processing procedure of a communication device according to the present disclosure. [Figure 3] 1 is a block diagram illustrating a configuration example of a communication system according to the present disclosure. [Figure 4]1 is a block diagram illustrating a configuration example of a communication device according to the present disclosure. [Figure 5] FIG. 2 illustrates an example of a transmission buffer of a communication device according to the present disclosure. [Figure 6] FIG. 2 illustrates an example of a receiving buffer of a communication device according to the present disclosure. [Figure 7] FIG. 10 is a diagram illustrating an example of an encoding method for a communication device according to the present disclosure. [Figure 8] FIG. 10 is a diagram illustrating an example of a packet retransmission method of a communication device according to the present disclosure. [Figure 9] FIG. 10 is a diagram illustrating an example of a method for retransmitting a packet when redundancy is specified. [Figure 10] FIG. 10 is a diagram illustrating an example of a method for retransmitting a packet when a delay constraint is specified. [Figure 11] FIG. 1 is a block diagram illustrating a configuration of a computer that functions as a communication device according to the present disclosure. DETAILED DESCRIPTION OF THE INVENTION
[0013] The following are examples of embodiments of the present invention. However, the present invention is not limited to the exemplary embodiments shown below, and various modifications are possible within the scope of the claims. For example, embodiments obtained by appropriately combining the technical means employed in the exemplary embodiments shown below may also be included in the scope of the present invention. Furthermore, embodiments obtained by appropriately omitting some of the technical means employed in the exemplary embodiments shown below may also be included in the scope of the present invention. Furthermore, the effects mentioned in the exemplary embodiments shown below are examples of effects expected in the exemplary embodiments, and do not define the scope of the present invention. In other words, embodiments that do not exhibit the effects mentioned in the exemplary embodiments shown below may also be included in the scope of the present invention.
[0014] First Exemplary Embodiment A first exemplary embodiment, which is one example of an embodiment of the present invention, will be described in detail with reference to the drawings. This exemplary embodiment is the basic form of each exemplary embodiment described later. Note that the scope of application of each technical means employed in this exemplary embodiment is not limited to this exemplary embodiment. That is, each technical means employed in this exemplary embodiment can also be employed in other exemplary embodiments included in the present disclosure to the extent that no particular technical obstacles arise. Furthermore, each technical means shown in the drawings referred to in describing this exemplary embodiment can also be employed in other exemplary embodiments included in the present disclosure to the extent that no particular technical obstacles arise.
[0015] (Configuration of communication device 1) The configuration of the communication device 1 will be described with reference to Fig. 1. Fig. 1 is a block diagram showing an example configuration of the communication device 1. The communication device 1 is applicable to devices that perform spatial optical communication, but is also applicable to devices that use radio waves, for example. As shown in Fig. 1, the communication device 1 includes an encoding unit 11, a transmitting unit 12, a receiving unit 13, and a control unit 14.
[0016] The encoding unit 11 generates encoded data by encoding at least two pieces of data from among the plurality of pieces of data. For example, when transmitting data D0 to D3 to a communication device on the other side, the encoding unit 11 generates encoded data by calculating the exclusive OR of data D0 and data D1. Alternatively, the encoding unit 11 may generate encoded data by calculating the exclusive OR of data D0, data D1, and data D2.
[0017] Any combination of data can be used as the data to be coded. Furthermore, the number of data items that the coding unit 11 uses when coding data is not limited. Furthermore, although an example of a data coding method using exclusive OR will be described, the coding method is not limited to this.
[0018] The transmitter 12 redundantly transmits a first packet including any of the plurality of data and a second packet including the encoded data to the other communication device. For example, when transmitting data D0 to D3 to the other communication device, the transmitter 12 transmits a packet including any of the data D0 to D3 to the other communication device as the first packet. The transmitter 12 also transmits a packet including the encoded data encoded by the encoder 11 to the other communication device as the second packet.
[0019] Here, redundant transmission refers to transmitting the same data multiple times, such as when a first packet containing data D0 is transmitted followed by a second packet containing encoded data obtained by performing an exclusive OR operation on data D0 and data D1.
[0020] The receiving unit 13 receives an acknowledgment response from the other communication device, the acknowledgment response including at least one of a decoded data number corresponding to data that was successfully decoded using the first packet and the second packet, and a received data number corresponding to data included in the first packet and the second packet that was successfully received.
[0021] Assume that the other communication device receives a first packet including data D0 from communication device 1, and then receives a second packet including encoded data obtained by performing an exclusive OR on data D0 and data D1. In this case, the other communication device can decode data D1 by performing an exclusive OR on data D0 and the encoded data included in the second packet. The other communication device will transmit to communication device 1 an acknowledgment response including a number corresponding to data D0 and a number corresponding to data D1 as the decoded data number.
[0022] Also, suppose that the other communication device successfully receives a first packet including data D0 from communication device 1, and then successfully receives a second packet including encoded data obtained by performing an exclusive OR operation on data D0 and data D1. In this case, the other communication device may transmit to communication device 1 an acknowledgment response including a number corresponding to data D0 and a number corresponding to data D1 as the received data number.
[0023] The control unit 14 controls the retransmission of the first packet and the second packet based on at least one of the decoded data number and the received data number. For example, when the control unit 14 receives an acknowledgment including a number corresponding to data D0 as the decoded data number and an acknowledgment including a number corresponding to data D1, the control unit 14 cancels the retransmission of the first packet or the second packet including data D0 or data D1. The control unit 14 may also perform similar processing by referring to the received data number.
[0024] (Effects of communication device 1) As described above, in the communication device 1, the control unit 14 controls the retransmission of the first packet and the second packet based on at least one of the decoded data number and the received data number. Therefore, for example, by canceling the retransmission of successfully decoded data or successfully received data, it becomes possible to efficiently retransmit packets.
[0025] (Communication method flow) The flow of the communication method S1 will be described with reference to Fig. 2. Fig. 2 is a flow diagram showing the flow of the communication method S1. As shown in Fig. 2, the communication method S1 includes steps S11 to S14.
[0026] First, the encoding unit 11 generates encoded data by encoding at least two pieces of data from among the plurality of pieces of data (S11). For example, when transmitting data D0 to D3 to a communication device on the other side, the encoding unit 11 generates the encoded data by calculating the exclusive OR of data D0 and data D1. Alternatively, the encoding unit 11 may generate the encoded data by calculating the exclusive OR of data D0, data D1, and data D2.
[0027] Next, the transmitter 12 redundantly transmits a first packet including any of the plurality of data and a second packet including the encoded data to the other communication device (S12). For example, when transmitting data D0 to D3 to the other communication device, the transmitter 12 transmits a packet including any of the data D0 to D3 to the other communication device as the first packet. In addition, the transmitter 12 transmits a packet including the encoded data encoded by the encoder 11 to the other communication device as the second packet.
[0028] Next, the receiving unit 13 receives an acknowledgment response from the other communication device, the acknowledgment response including at least one of a decoded data number corresponding to the data successfully decoded using the first packet and the second packet, and a received data number corresponding to the data contained in the successfully received first packet and the second packet (S13).
[0029] Finally, the control unit 14 controls the retransmission of the first packet and the second packet based on at least one of the decoded data number and the received data number (S14). For example, when the control unit 14 receives an acknowledgment including a number corresponding to data D0 as the decoded data number and an acknowledgment including a number corresponding to data D1, the control unit 14 cancels the retransmission of the first packet or the second packet including data D0 or data D1.
[0030] (Effect of communication method) As described above, in the communication method S1, the control unit 14 controls the retransmission of the first packet and the second packet based on at least one of the decoded data number and the received data number. Therefore, for example, by canceling the retransmission of successfully decoded data or successfully received data, it becomes possible to efficiently retransmit packets.
[0031] (Configuration of communication system 100) The configuration of the communication system 100 will be described with reference to Fig. 3. Fig. 3 is a block diagram showing an example configuration of the communication system 100. The communication system 100 is applicable to devices that perform free-space optical communication, but is also applicable to devices that use radio waves, for example. As shown in Fig. 3, the communication system 100 includes a first communication device 2 and a second communication device 3.
[0032] The first communication device 2 includes an encoding unit 21, a first transmitting unit 22, a first receiving unit 23, and a control unit 24. The second communication device 3 includes a second receiving unit 31, a second transmitting unit 32, and a decoding unit 33.
[0033] The encoding unit 21 of the first communication device 2 generates encoded data by encoding at least two pieces of data from the plurality of pieces of data. For example, when transmitting data D0 to D3 to the second communication device 3, the encoding unit 21 generates the encoded data by calculating the exclusive OR of data D0 and data D1. Alternatively, the encoding unit 21 may generate the encoded data by calculating the exclusive OR of data D0, data D1, and data D2.
[0034] The first transmitting unit 22 of the first communication device 2 redundantly transmits a first packet including any of the plurality of data and a second packet including the encoded data to the second communication device 3. Furthermore, the first receiving unit 23 of the first communication device 2 receives an acknowledgement from the second communication device 3. For example, when transmitting data D0 to D3 to the second communication device 3, the first transmitting unit 22 transmits a packet including any of the data D0 to D3 as the first packet to the second communication device 3. Furthermore, the first transmitting unit 22 transmits a packet including the encoded data encoded by the encoding unit 21 as the second packet to the second communication device 3.
[0035] The second receiving unit 31 of the second communication device 3 receives the first packet and the second packet from the first communication device 2. For example, after receiving the first packet including data D0 from the first communication device 2, the second receiving unit 31 receives a second packet including encoded data obtained by calculating the exclusive OR of data D0 and data D1.
[0036] The decoder 33 of the second communication device 3 decodes data using the first packet and the second packet. For example, the decoder 33 can decode data D1 by calculating the exclusive OR of data D0 included in the first packet and the encoded data included in the second packet.
[0037] The second transmitting unit 32 of the second communication device 3 transmits to the first communication device 2 an acknowledgment response including at least one of a decoded data number corresponding to data successfully decoded using the first packet and the second packet, and a received data number corresponding to data included in the successfully received first packet and the second packet.
[0038] For example, the second transmitting unit 32 transmits to the first communication device 2 an acknowledgment including a number corresponding to data D0 as the decoded data number, and an acknowledgment including a number corresponding to data D1.
[0039] Also, suppose that the second receiving unit 31 has successfully received a first packet including data D0 from the first communication device 2, and then has successfully received a second packet including encoded data obtained by performing an exclusive OR operation on data D0 and data D1. In this case, the second transmitting unit 32 may transmit to the first communication device 2 an acknowledgment response including a number corresponding to data D0 and a number corresponding to data D1 as the received data number.
[0040] The control unit 24 of the first communication device 2 controls the retransmission of the first packet and the second packet based on at least one of the decoded data number and the received data number included in the acknowledgment received by the first receiving unit 23. For example, when the control unit 24 receives an acknowledgment including a number corresponding to data D0 as the decoded data number and an acknowledgment including a number corresponding to data D1, the control unit 24 cancels the retransmission of the first packet or the second packet including data D0 or data D1. The control unit 24 may also perform similar processing by referring to the received data number.
[0041] (Effects of communication system 100) As described above, in the communication system 100, the control unit 24 of the first communication device 2 controls the retransmission of the first packet and the second packet based on at least one of the decoded data number and the received data number. Therefore, for example, by canceling the retransmission of successfully decoded data or successfully received data, it becomes possible to efficiently retransmit packets.
[0042] Second Exemplary Embodiment A second exemplary embodiment, which is one example of an embodiment of the present invention, will be described in detail with reference to the drawings. Components having the same functions as those described in the above exemplary embodiment will be assigned the same reference numerals, and their description will be omitted as appropriate. The scope of application of each technical means employed in this exemplary embodiment is not limited to this exemplary embodiment. That is, each technical means employed in this exemplary embodiment can also be employed in other exemplary embodiments included in the present disclosure, to the extent that no particular technical obstacles arise. Furthermore, each technical means shown in each drawing referenced to explain this exemplary embodiment can also be employed in other exemplary embodiments included in the present disclosure, to the extent that no particular technical obstacles arise.
[0043] (Configuration of communication device 1A) The configuration of communication device 1A will be described with reference to Fig. 4. Fig. 4 is a block diagram showing the configuration of communication device 1A. Note that the case where communication device 1A is a device that performs spatial optical communication will be described, but it may also be a device that uses radio waves, for example. Communication device 1A includes an encoding unit 11A, a transmitting unit 12A, a receiving unit 13A, a control unit 14A, a decoding unit 15, and a storage unit 16. Note that the other communication device is also assumed to have the same configuration as communication device 1A, and will be described as communication device 1B.
[0044] The control unit 14A includes a received data management unit 141, a decoded data management unit 142, a redundancy constraint determination unit 143, and a delay constraint determination unit 144.
[0045] First, the transmission buffer and the reception buffer arranged in the storage unit 16 will be described. Fig. 5 is a diagram for explaining the transmission buffer. The transmission buffer includes an LLR (Low-Latency Redundancy) buffer 161 for transmitting low-delay code blocks and a DR buffer 162 for transmitting delay redundancy blocks. n (Delayed Redundancy) buffer 162. A delayed redundancy block refers to a data group in the case where the same data is transmitted again for redundancy after a low delay code block is transmitted.
[0046] The LLR buffer 161 includes a Decoded area, an Acked / Rtr area, a Sent / UnACKed area, and an UnSent area. The Decoded area is an area for storing data for which completion of decoding has been notified. The Acked / Rtr area is an area for storing data for which an acknowledgement (ACK) has been notified or data for which a failure acknowledgement (NACK) has been notified.
[0047] The Sent / UnACKed area is an area for storing data that has been sent but for which no ACK or NACK has been notified. The Unsent area is an area for storing data that is scheduled to be sent but has not yet been sent.
[0048] DR n The buffer 162 is a buffer for storing data to be transmitted redundantly (delayed redundant blocks), and includes a Sent / UnACKed area and an Unsent area. The Sent / UnACKed area is an area for storing data that has been transmitted but has not yet been notified of ACK or NACK. The Unsent area is an area for storing data that has been transmitted but has not yet been notified of. Note that the DR n The buffer 162 is sometimes referred to as a transmission list.
[0049] 6 is a diagram illustrating a receive buffer. The receive buffer 163 includes a Decoded area, an Acked / NotRtr area, an Rcvd / UnACKed area, and a NotRcvd area. The Decoded area is an area for storing data for which decoding has been completed. The Acked / NotRtr area is an area for storing data for which an acknowledgement (ACK) has been notified or data for which a failure acknowledgement (NACK) has been notified.
[0050] The Rcvd / UnACKed area is an area for storing data that has been received but has not yet been ACKed or NACKed. The NotRcvd area is an area for storing data that is scheduled to be received but has not yet been received.
[0051] The encoding unit 11A generates encoded data by encoding at least two pieces of data among the plurality of pieces of data. For example, when transmitting data D0 to D3 to a communication device on the other side, the encoding unit 11A generates encoded data by calculating the exclusive OR of data D0 and data D1.
[0052] The transmitter 12A redundantly transmits a first packet including any of a plurality of data and a second packet including encoded data to a communication device on the other side. Fig. 7 is a diagram showing an example of an encoding method of the communication device 1A according to this exemplary embodiment. A case will be described in which the communication device 1A transmits data "0" to "3" to a communication device on the other side.
[0053] The transmitter 12A first transmits a packet P0 containing data "0", and then transmits a packet P1 containing encoded data obtained by calculating the exclusive OR of the data "0" and the data "1". After that, the transmitter 12A transmits a packet P2 containing encoded data obtained by calculating the exclusive OR of the data "1" and the data "2".
[0054] Thereafter, the transmitter 12A transmits packet P3 containing encoded data obtained by calculating the exclusive OR of data "0," "2," and "3." Thereafter, the transmitter 12A transmits packet P4 containing encoded data obtained by calculating the exclusive OR of data "1" and "3."
[0055] Of the data included in packets P0 to P4, the data enclosed by dotted lines corresponds to a low delay code block, and is stored in one of the areas of the LLR buffer 161 described above depending on the state at that time.
[0056] Data "0" of packet P3, data "1" of packet P4, data "2" of packet P5, and data "3" of packet P6 correspond to the first delayed redundant block, and are stored in one of the areas of the above-mentioned DR1 buffer 162 depending on the state at that time.
[0057] Furthermore, data "0" of packet P6, data "1" of packet P7, data "2" of packet P8, and data "3" of packet P9 correspond to the second delayed redundant block, and are stored in one of the areas of the above-mentioned DR2 buffer 162 depending on the state at that time.
[0058] The receiving unit 13A of the communication device 1B on the other side receives the first packet and the second packet from the communication device 1A. Then, the decoding unit 15 of the communication device 1B on the other side decodes the data using the first packet and the second packet.
[0059] 7, when the receiving unit 13A of the communication device 1B on the other side successfully receives packet P0, the transmitting unit 12A of the communication device 1B on the other side returns an acknowledgement (ACK) for packet P0 to the communication device 1A. Also, when the receiving unit 13A of the communication device 1B on the other side successfully receives packet P1 and the decoding unit 15 of the communication device 1B on the other side decodes the data "1", the transmitting unit 12A of the communication device 1B on the other side returns an acknowledgement (ACK) for packet P1 to the communication device 1A. This acknowledgement includes the decoded data number and the received data number. Thereafter, similar processing is performed.
[0060] <Example of canceling redundant transmission> 8 is a diagram for explaining a specific example of canceling redundant transmission. First, communication device 1A transmits packet P0 including data "0" to communication device 1B on the other side. Communication device 1B on the other side receives packet P0 and transmits an acknowledgment including the decoded data number corresponding to data "0" and the received data number to communication device 1A.
[0061] Furthermore, communication device 1A transmits packet P1 including encoded data of data "0" and data "1" to communication device 1B on the other side. Communication device 1B on the other side receives packet P1 and decodes data "1". Communication device 1B on the other side then transmits an acknowledgment including the decoded data number corresponding to data "1" and the received data number to communication device 1A.
[0062] The control unit 14A of the communication device 1A generates a transmission list of data scheduled for retransmission, deletes from the transmission list the data corresponding to the decoded data number included in the confirmation response received from the other communication device 1B, and controls the retransmission of the first packet and the second packet based on the transmission list from which the data corresponding to the decoded data number has been deleted.
[0063] Specifically, when the receiving unit 13A of the communication device 1A receives an acknowledgment response corresponding to the data "0", the decrypted data management unit 142 of the communication device 1A performs the DR n The data "0" is deleted from the delayed redundant packet to be transmitted by referring to the buffer 162. As shown in Fig. 8, since the data "0" to be transmitted is deleted from the packet P3, the transmitter 12A of the communication device 1A transmits the packet P3 including the encoded data of the data "2" and the data "3" to the communication device 1B on the other side.
[0064] Similarly, when the receiving unit 13A of the communication device 1A receives an acknowledgment corresponding to the data "1", the decrypted data management unit 142 of the communication device 1A n The buffer 162 is referenced and the data "1" is deleted from the delayed redundant packet to be transmitted. As shown in Fig. 8, since the data "1" to be transmitted is deleted from packet P4, the transmitter 12A of the communication device 1A transmits packet P4 including the data "3" to the communication device 1B on the other side. Thereafter, the same process is performed.
[0065] <Example of retransmission when redundancy is limited> 9 is a diagram for explaining redundant transmission when there is a redundancy constraint. A redundancy constraint imposes a limit on the number of times data is scheduled to be redundantly transmitted. For example, if redundancy specification n=2, the number of times data is scheduled to be redundantly transmitted is limited to two.
[0066] The receiving unit 13A of the communication device 1A receives an acknowledgment response including a request to retransmit a packet that was lost due to a failed packet reception from the other communication device 1B. The control unit 14A of the communication device 1A then generates a transmission list of data scheduled for retransmission, and controls the retransmission of the data corresponding to the lost packet if the transmission list does not include a predetermined number of retransmissions of data corresponding to the packet for which the retransmission request was made.
[0067] Specifically, when there is a data retransmission request from the communication device 1B on the other side, the redundancy constraint determination unit 143 n The number of times data is scheduled to be transmitted redundantly is counted by referring to buffer 162. If the counted number is less than the redundancy specification n, transmitting unit 12A retransmits the packet containing that data.
[0068] 9 shows redundant transmission when redundancy n=2, in which it is assumed that communication device 1A transmits packet P1 containing coded data of data "0" and data "1", and communication device 1B on the other side fails to receive packet P1, resulting in packet P1 being lost. In this case, transmitter 12A of communication device 1B on the other side transmits an acknowledgment response including a retransmission request (NACK) for packet P1 to communication device 1A.
[0069] When the communication device 1A receives an acknowledgment including a retransmission request (NACK) from the communication device 1B on the other side, the redundancy constraint determination unit 143 of the communication device 1A determines whether the DR n The planned number of redundant transmissions of data "1" is counted by referring to buffer 162. As shown in the left diagram of Fig. 9, the planned number of redundant transmissions of data "1" is "2", which is equal to or greater than the redundancy specification n, so the transmitter 12A of communication device 1A does not retransmit data "1".
[0070] Furthermore, when communication device 1A transmits packet P2 containing encoded data of data "1" and data "2", even if communication device 1B receives packet P2, it will not be able to decode data "1" and data "2", and will therefore transmit an acknowledgment response to communication device 1A containing data "1" and data "2" as the received data numbers.
[0071] Furthermore, when communication device 1A transmits packet P3 containing encoded data of data "0", data "2", and data "3", even if communication device 1B receives packet P3, it will not be able to decode data "2" and data "3", and will therefore transmit an acknowledgment response to communication device 1A containing data "2" and data "3" as the received data numbers.
[0072] In this way, the communication device 1A receives an acknowledgment response including the received data number from the other communication device 1B, so that the received data management unit 141 of the communication device 1A can manage data (received data) that has not been decoded by the other communication device 1B. The communication device 1A may determine the data to be retransmitted by referring to the received data number included in the acknowledgment response received from the other communication device 1B.
[0073] 9 shows redundant transmission when redundancy n=4, in which it is assumed that communication device 1A transmits packet P1 containing coded data of data "0" and data "1", and communication device 1B on the other side fails to receive packet P1, resulting in packet P1 being lost. In this case, transmitter 12A of communication device 1B on the other side transmits an acknowledgment response including a retransmission request (NACK) for packet P1 to communication device 1A.
[0074] When the communication device 1A receives an acknowledgment including a retransmission request (NACK) from the communication device 1B on the other side, the redundancy constraint determination unit 143 of the communication device 1A determines whether the DR nThe planned number of redundant transmissions of data "1" is counted by referring to buffer 162. As shown in the right diagram of Fig. 9, the planned number of redundant transmissions of data "1" is "2", which is less than the redundancy specification n, so transmitter 12A of communication device 1A retransmits data "1" (packet P4).
[0075] When the receiving unit 13A of the communication device 1B on the other side receives the data "1" (packet P4), the decoding unit 15 of the communication device 1B on the other side can decode the data "1," data "2," and data "3." The transmitting unit 12A of the communication device 1B on the other side transmits an acknowledgment including the data "1," data "2," and data "3" as the decoded data numbers to the communication device 1A.
[0076] <Example of retransmission when delay constraints exist> 10 is a diagram for explaining redundant transmission when there is a delay constraint. The delay constraint means that if the measured delay time is within a predetermined delay constraint range, redundant transmission is performed, and if the delay time is outside the delay constraint range, redundant transmission is not performed.
[0077] The receiving unit 13A of the communication device 1A receives an acknowledgment including a request to retransmit a packet that was lost due to a failed packet reception from the other communication device 1B. The control unit 14A of the communication device 1A then refers to the delay time included in the acknowledgment, and if the delay time satisfies a predetermined delay constraint, retransmits the data corresponding to the lost packet.
[0078] As shown in FIG. 10, it is assumed that a communication device 1A transmits a packet P1 including coded data of data "0" and data "1", and the communication device 1B on the other end fails to receive the packet P1, resulting in the packet P1 being lost.
[0079] The transmitter 12A of the communication device 1A stores a timestamp t in packet P2 and transmits it to the communication device 1B on the other side. When the receiver 13A of the communication device 1B on the other side receives packet P2, the transmitter 12A of the communication device 1B on the other side replies with an acknowledgement (ACK) and a timestamp echo reply t (TER). At this time, since packet P1 is missing, the transmitter 12A also transmits an acknowledgement to the communication device 1A, including a retransmission request (NACK) for packet P1. Note that since data "0" has already been decoded, a retransmission request is made for data "1" and data "2."
[0080] If the difference between the timestamp echo reply t and the current time is within the range specified by the delay constraint, the delay constraint determination unit 144 of the communication device 1A retransmits packet P4 containing data "1" to the other communication device 1B. Then, the delay constraint determination unit 144 of the communication device 1A retransmits packet P5 containing data "2" to the other communication device 1B.
[0081] (Effects of communication device 1A) As described above, in the communication device 1A, the control unit 14A deletes from the transmission list the data corresponding to the decoded data number included in the confirmation response received from the other communication device 1B. Therefore, it is possible to prevent retransmission of the decoded data, and to efficiently retransmit packets.
[0082] Furthermore, in the communication device 1A, the control unit 14A controls the retransmission of data corresponding to a missing packet when the transmission list does not include a predetermined number of retransmissions of data corresponding to a retransmission request packet. Therefore, it is possible to prevent retransmissions from occurring more than the predetermined number of times, and to efficiently retransmit packets.
[0083] Furthermore, in the communication device 1A, the control unit 14A refers to the delay time included in the acknowledgment, and if the delay time satisfies a predetermined delay constraint, retransmits the data corresponding to the missing packet. Therefore, it is possible to prevent retransmission of data that does not satisfy the delay constraint, and to efficiently retransmit packets.
[0084] [Software implementation example] Some or all of the functions of the communication devices 1 and 1A may be realized by hardware such as an integrated circuit (IC chip), or may be realized by software.
[0085] In the latter case, the communication devices 1 and 1A are realized by, for example, a computer that executes instructions of a program, which is software that realizes each function. An example of such a computer (hereinafter referred to as computer C) is shown in Fig. 11. Fig. 11 is a block diagram showing the hardware configuration of computer C that functions as the communication devices 1 and 1A.
[0086] The computer C includes at least one processor C1 and at least one memory C2. The memory C2 stores a program P for causing the computer C to operate as each of the above systems. In the computer C, the processor C1 reads and executes the program P from the memory C2, thereby realizing each function of the communication devices 1 and 1A.
[0087] The processor C1 may be, for example, a central processing unit (CPU), a graphic processing unit (GPU), a digital signal processor (DSP), a micro processing unit (MPU), a floating point number processing unit (FPU), a physics processing unit (PPU), a tensor processing unit (TPU), a quantum processor, a microcontroller, or a combination thereof. The memory C2 may be, for example, a flash memory, a hard disk drive (HDD), a solid state drive (SSD), or a combination thereof.
[0088] The computer C may further include a RAM (Random Access Memory) for expanding the program P during execution and for temporarily storing various data. The computer C may also include a communication interface for transmitting and receiving data to and from other devices. The computer C may also include an input / output interface for connecting input / output devices such as a keyboard, mouse, display, and printer.
[0089] Furthermore, the program P can be recorded on a non-transitory tangible recording medium M that can be read by the computer C. Such a recording medium M can be, for example, a tape, a disk, a card, a semiconductor memory, or a programmable logic circuit. The computer C can acquire the program P via such a recording medium M. The program P can also be transmitted via a transmission medium. Such a transmission medium can be, for example, a communication network or broadcast waves. The computer C can also acquire the program P via such a transmission medium.
[0090] [Appendix 1] This disclosure includes the techniques described in the following appendices. However, the present invention is not limited to the techniques described in the following appendices, and various modifications are possible within the scope of the claims. (Appendix 1) encoding means for generating encoded data by encoding using at least two pieces of data among the plurality of pieces of data; a transmitting means for redundantly transmitting a first packet including any of the plurality of data and a second packet including the encoded data to a communication device on a partner side; receiving means for receiving, from the communication device of the other party, an acknowledgment response including at least one of a decoded data number corresponding to data that has been successfully decoded using the first packet and the second packet, and a received data number corresponding to data included in the first packet and the second packet that has been successfully received; and a control means for controlling retransmission of the first packet and the second packet based on at least one of the decoded data number and the received data number. Communication equipment.
[0091] (Appendix 2) The control means Generate a transmission list of data scheduled for retransmission; delete, from the transmission list, data corresponding to the decoded data number included in the confirmation response received from the communication device on the other side; controlling retransmission of the first packet and the second packet based on the transmission list from which the data corresponding to the decoded data number has been deleted; 2. The communication device of claim 1.
[0092] (Appendix 3) the receiving means receives, from the other communication device, the acknowledgment response including a request for retransmission of a packet that was lost due to a packet reception failure; The control means Generate a transmission list of data scheduled for retransmission; When the transmission list does not include a retransmission schedule of the data corresponding to the packet of the retransmission request a predetermined number of times or more, the retransmission of the data corresponding to the missing packet is controlled. 3. The communication device of claim 1 or 2.
[0093] (Appendix 4) the receiving means receives, from the other communication device, the acknowledgment response including a request for retransmission of a packet that was lost due to a packet reception failure; the control means refers to the delay time included in the acknowledgment, and if a predetermined delay constraint is satisfied, retransmits the data corresponding to the missing packet. 4. A communication device according to any one of Supplementary notes 1 to 3.
[0094] (Appendix 5) the transmitting means redundantly transmits the first packet and the second packet to a communication device on a partner side by optical space communication; the receiving means receives the confirmation response through the optical space communication. 5. A communication device according to any one of appendices 1 to 4.
[0095] (Appendix 6) generating coded data by coding using at least two pieces of data among the plurality of pieces of data; redundantly transmitting a first packet including any of the plurality of data and a second packet including the encoded data to a communication device on a partner side; receiving, from the communication device of the other party, an acknowledgment response including at least one of a decoded data number corresponding to data that has been successfully decoded using the first packet and the second packet and a received data number corresponding to data included in the first packet and the second packet that has been successfully received; controlling retransmission of the first packet and the second packet based on at least one of the decoded data number and the received data number; Communication method.
[0096] (Appendix 7) In the step of controlling retransmission, Generate a transmission list of data scheduled for retransmission; delete, from the transmission list, data corresponding to the decoded data number included in the confirmation response received from the communication device on the other side; controlling retransmission of the first packet and the second packet based on the transmission list from which the data corresponding to the decoded data number has been deleted; 6. A communication method as set forth in Appendix 6.
[0097] (Appendix 8) In the step of receiving the confirmation response, receiving, from the communication device on the other side, the acknowledgment response including a request for retransmission of a packet that was lost due to a failure in packet reception; In the step of controlling retransmission, Generate a transmission list of data scheduled for retransmission; When the transmission list does not include a retransmission schedule of the data corresponding to the packet of the retransmission request a predetermined number of times or more, the retransmission of the data corresponding to the missing packet is controlled. 8. A communication method as set forth in Appendix 6 or 7.
[0098] (Appendix 9) In the step of receiving the confirmation response, receiving, from the communication device on the other side, the acknowledgment response including a request for retransmission of a packet that was lost due to a failure in packet reception; In the step of controlling retransmission, referring to the delay time included in the acknowledgment, if a predetermined delay constraint is satisfied, retransmitting the data corresponding to the missing packet; A communication method according to any one of Supplementary Notes 6 to 8.
[0099] (Appendix 10) A communication system comprising a first communication device and a second communication device, the first communication device, encoding means for generating encoded data by encoding using at least two pieces of data among the plurality of pieces of data; a first transmitting means for redundantly transmitting a first packet including any of the plurality of data and a second packet including the encoded data to the second communication device; a first receiving means for receiving an acknowledgment from the second communication device; the second communication device, a second receiving means for receiving the first packet and the second packet from the first communication device; a decoding means for decoding data using the first packet and the second packet; a second transmitting means for transmitting the confirmation response to the first communication device, the confirmation response including at least one of a decoded data number corresponding to data that has been successfully decoded using the first packet and the second packet, and a received data number corresponding to data included in the first packet and the second packet that has been successfully received; the first communication device further comprises a control means for controlling retransmission of the first packet and the second packet based on at least one of the decoded data number and the received data number included in the acknowledgment received by the first receiving means. Communication system. (Appendix 11) A control program for causing a computer to operate as the communication device according to any one of Supplementary Notes 1 to 5, the control program causing the computer to function as each of the means. [Explanation of symbols]
[0100] 1,1A communication equipment 2. First communication device 3. Second communication device 11,11A,21 Encoding section 12,12A Transmitter 13,13A Receiver 14, 14A, 24 Control unit 15,33 Decoding section 16 Memory section 22 First transmitter 23 First receiving unit 31 Second receiving unit 32 Second transmitter 100 Communication Systems 141 Received Data Management Unit 142 Decrypted data management unit 143 Redundancy constraint judgment unit 144 Delay constraint determination unit
Claims
1. encoding means for generating encoded data by encoding at least two pieces of data among the plurality of pieces of data; a transmitting means for redundantly transmitting a first packet including any one of the plurality of data and a second packet including the encoded data to a communication device on a partner side; receiving means for receiving, from the communication device on the other side, an acknowledgment response including at least one of a decoded data number corresponding to data that has been successfully decoded using the first packet and the second packet, and a received data number corresponding to data included in the first packet and the second packet that has been successfully received; a control means for controlling retransmission of the first packet and the second packet based on at least one of the decoded data number and the received data number. Communication equipment.
2. The control means Generate a transmission list of data scheduled for retransmission; delete, from the transmission list, data corresponding to the decoded data number included in the confirmation response received from the communication device on the other side; controlling retransmission of the first packet and the second packet based on the transmission list from which the data corresponding to the decoded data number has been deleted; The communication device according to claim 1 .
3. the receiving means receives, from the other communication device, the acknowledgment response including a request for retransmission of a packet that was lost due to a packet reception failure; The control means Generate a transmission list of data scheduled for retransmission; When the transmission list does not include a retransmission schedule of the data corresponding to the packet of the retransmission request a predetermined number of times or more, the retransmission of the data corresponding to the missing packet is controlled. The communication device according to claim 1 .
4. the receiving means receives, from the other communication device, the acknowledgment response including a request for retransmission of a packet that was lost due to a packet reception failure; the control means refers to the delay time included in the acknowledgment, and if a predetermined delay constraint is satisfied, retransmits the data corresponding to the missing packet. The communication device according to claim 1 .
5. the transmitting means redundantly transmits the first packet and the second packet to a communication device on a partner side by optical space communication; the receiving means receives the confirmation response through the optical space communication. The communication device according to any one of claims 1 to 4.
6. generating coded data by coding using at least two pieces of data among the plurality of pieces of data; redundantly transmitting a first packet including any of the plurality of data and a second packet including the encoded data to a communication device on a partner side; receiving, from the communication device on the other side, an acknowledgment response including at least one of a decoded data number corresponding to data that has been successfully decoded using the first packet and the second packet and a received data number corresponding to data included in the first packet and the second packet that has been successfully received; controlling retransmission of the first packet and the second packet based on at least one of the decoded data number and the received data number; Communication method.
7. In the step of controlling retransmission, Generate a transmission list of data scheduled for retransmission; delete, from the transmission list, data corresponding to the decoded data number included in the confirmation response received from the communication device on the other side; controlling retransmission of the first packet and the second packet based on the transmission list from which the data corresponding to the decoded data number has been deleted; The communication method according to claim 6.
8. In the step of receiving the confirmation response, receiving, from the communication device on the other side, the acknowledgment response including a request for retransmission of a packet that was lost due to a failure in packet reception; In the step of controlling retransmission, Generate a transmission list of data scheduled for retransmission; When the transmission list does not include a retransmission schedule of the data corresponding to the packet of the retransmission request a predetermined number of times or more, the retransmission of the data corresponding to the missing packet is controlled. The communication method according to claim 6.
9. In the step of receiving the confirmation response, receiving, from the communication device on the other side, the acknowledgment response including a request for retransmission of a packet that was lost due to a failure in packet reception; In the step of controlling retransmission, referring to the delay time included in the acknowledgment, and if a predetermined delay constraint is satisfied, retransmitting the data corresponding to the missing packet; The communication method according to claim 6.
10. A communication system comprising a first communication device and a second communication device, the first communication device, encoding means for generating encoded data by encoding at least two pieces of data among the plurality of pieces of data; a first transmitting means for redundantly transmitting a first packet including any of the plurality of data and a second packet including the encoded data to the second communication device; a first receiving means for receiving an acknowledgment from the second communication device; the second communication device, a second receiving means for receiving the first packet and the second packet from the first communication device; a decoding means for decoding data using the first packet and the second packet; a second transmitting means for transmitting the confirmation response to the first communication device, the confirmation response including at least one of a decoded data number corresponding to data that has been successfully decoded using the first packet and the second packet, and a received data number corresponding to data included in the first packet and the second packet that has been successfully received; the first communication device further comprises a control means for controlling retransmission of the first packet and the second packet based on at least one of the decoded data number and the received data number included in the acknowledgment received by the first receiving means. Communication system.
Citation Information
Patent Citations
Optical space communication device, communication method thereof, and optical space communication system
JP2012186662A