Transmitter, receiver, wireless communication system equipped therewith, program, and computer readable recording medium in which program is recorded

By introducing buffers and processing units into the transmission device and the receiving device, generating and transmitting low-latency coded packets, the problem of multi-packet transmission delay in the prior art is solved, and low-latency and efficient packet transmission and reception are achieved.

JP2025019253AActive Publication Date: 2025-02-06ATR ADVANCED TELECOMM RES INST INT
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
JP2024205538
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2024-11-26
Publication Date
2025-02-06
Estimated Expiration
2041-01-29

AI Technical Summary

Technical Problem

The prior art has delay problems when transmitting multiple data packets, especially in the event of failure to identify the emergencies of data packets in time, resulting in communication delay and inefficiency.

Method used

By introducing a transmission buffer and processing unit into the transmission device, data packets are received in real time and encoding processing is performed, low-latency coded packets are generated, and transmitted through multiple paths. The receiving device performs decoding and separation processing to ensure low-latency reception of data packets.

Benefits of technology

The low-latency transmission and reception of multiple data packets is realized, which improves the efficiency and reliability of the communication system and reduces packet loss and delay.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2025019253000001_ABST
    Figure 2025019253000001_ABST
Patent Text Reader

Abstract

To provide a transmitter capable of transmitting, in a low delay mode, a plurality of packets constituting a burst.SOLUTION: When one N packet arrives at a transmitter 1, processing means 12 copies the N packet to a buffer 11 and transmits it via transmission means 13 and an antenna 14. When a prescribed N packet selected from (MBurst-1) pieces of N packet, other than the N packet having arrived first, among MBurst pieces of N packet constituting a burst arrives at the transmitter 1, the processing means 12 transmits, via the transmission means 13 and the antenna 14, a combined packet in which encoded packets including the N packet having arrived before the prescribed N packet are added to the prescribed N packet. When it is determined that the last N packet among MBurst pieces of N packet has arrived at the transmitter 1, an encoded packet in which MBurst pieces of N packet are encoded is transmitted via the transmission means 13 and the antenna 14.SELECTED DRAWING: Figure 2
Need to check novelty before this filing date? Find Prior Art

Description

[Technical field]

[0001] The present invention relates to a transmitting device, a receiving device, a wireless communication system including these, a program, and a computer-readable recording medium having the program recorded thereon. [Background technology]

[0002] Non-Patent Document 1 discloses that when a plurality of packets to be transmitted are collected, the plurality of packets are transmitted via a plurality of routes.

[0003] Furthermore, Non-Patent Document 2 discloses an attempt to reduce delay by transmitting multiple packets while sliding a window over the multiple packets at the time when multiple packets to be transmitted are collected.

[0004] Furthermore, Patent Document 1 discloses that in many-to-many communications, a plurality of packets are network-coded, and the network-coded packets are broadcast, thereby improving the packet arrival rate.

[0005] More specifically, in a first period, the wireless devices TM_1 to TM_6 each generate and broadcast single packets PKT1(1) to PKT6(1) having sequence number Seq=1. Thereafter, in a second period, the wireless devices TM_1 to TM_6 generate and broadcast a combined packet of a coding packet obtained by network-coding packets PKT1(1) to PKT6(1) having sequence number Seq=1 and a single packet having sequence number Seq=2. Furthermore, in a third period, the wireless devices TM_1 to TM_6 generate and broadcast a combined packet of a coding packet obtained by network-coding packets PKT1(2) to PKT6(2) having sequence number Seq=2 and a single packet having sequence number Seq=3. The wireless devices TM_1 to TM_6 then repeat this process.

[0006] In this way, Patent Document 1 discloses that each of the wireless devices TM_1 to TM_6 generates a coding packet by network coding a packet generated by itself and a packet received from another wireless device. In other words, Patent Document 1 discloses that, when a packet to be network-coded is known, a coding packet is generated by network coding a plurality of packets. [Prior art documents] [Patent documents]

[0007] [Patent Document 1] JP 2010-093738 A [Non-patent literature]

[0008] [Non-Patent Document 1] https: / / ieeexplore.ieee.org / stamp / stamp.jsp?arnumber=57535 67&casa_token=NlznD3EhwnsAAAAA:GxTWt9heKzlvg0G6nUoIhPijCKnV26EoCsg0jRrjm7ZFijLql TaT7s_IXCxZ4H7bK8IfHn-nQA [Non-Patent Document 2] https: / / ieeexplore.ieee.org / stamp / stamp.jsp?arnumber=88267 10&casa_token=zouNIPn0UqgAAAAA:aoV6VQxo79INnWaVIlTKDcxSkeH_nrWGEnZxVxbZYgxRlUaY899uw4fe9yeW-P-MmdxEFHu5QQ Summary of the Invention [Problem to be solved by the invention]

[0009] However, the communication methods described in Non-Patent Documents 1 and 2 wait for multiple packets to arrive before processing them, so if multiple packets that make up a burst are transmitted using the communication methods described in Non-Patent Documents 1 and 2, delays will occur.

[0010] Furthermore, since it is not possible to know the start and / or end of a burst, the method described in Patent Document 1 has difficulty in efficiently network coding (encoding) packets.

[0011] Therefore, according to an embodiment of the present invention, a transmitting device capable of transmitting a plurality of packets constituting a burst with low delay is provided.

[0012] Furthermore, according to an embodiment of the present invention, there is provided a receiving device that receives packets from a transmitting device that is capable of transmitting a plurality of packets that make up a burst with low delay.

[0013] Furthermore, according to an embodiment of the present invention, a wireless communication system is provided that includes a transmitting device capable of transmitting a plurality of packets that constitute a burst with low latency, and a receiving device that receives packets from the transmitting device capable of transmitting a plurality of packets that constitute a burst with low latency.

[0014] Furthermore, according to an embodiment of the present invention, there is provided a program for causing a computer to execute low-delay transmission of a plurality of packets constituting a burst.

[0015] Furthermore, according to an embodiment of the present invention, there is provided a program for causing a computer to receive packets transmitted by low-latency transmission of a plurality of packets constituting a burst.

[0016] Furthermore, according to an embodiment of the present invention, there is provided a computer-readable recording medium having recorded thereon a program for causing a computer to execute low-delay transmission of a plurality of packets constituting a burst.

[0017] Furthermore, according to an embodiment of the present invention, a computer-readable recording medium having recorded thereon a program for causing a computer to receive packets transmitted by low-latency transmission of a plurality of packets constituting a burst is provided. [Means for solving the problem]

[0018] (Configuration 1) According to an embodiment of the present invention, a transmitting device receives packets constituting real-time traffic from an application and transmits the received packets, and includes a transmitting buffer, a processing means, and a transmitting means. The transmitting buffer is a buffer for storing packets to be transmitted. The processing means executes a transmission process on the packets. The transmitting means transmits the packets received from the processing means. The processing means executes a first process for copying the first individual packet to a transmission buffer and outputting the first individual packet to the transmitting means when the packet is a first individual packet arriving at the transmitting device at a first time interval, and for copying the second individual packet to the transmission buffer and outputting the first individual packet to the transmitting means when the packet is a plurality of individual packets arriving at the transmitting device successively at a second time interval shorter than the first time interval, and for generating a combined packet by adding a first encoded packet including an individual packet that arrived at the transmitting device earlier than the second individual packet to the second individual packet and outputting the combined packet to the transmitting means. when a third individual packet, which is included in the multiple individual packets and is an individual packet other than the second individual packet, arrives at the transmitting device, a first process is performed on the third individual packet, and when it is determined that the last individual packet of the multiple individual packets has arrived at the transmitting device, the last individual packet is copied to a transmission buffer, and when the last individual packet corresponds to the second individual packet, a second process is performed on the last individual packet, and when the last individual packet corresponds to the third individual packet, a first process is performed on the last individual packet, and when a predetermined time has elapsed from the time it is determined that the last individual packet has arrived at the transmitting device, a third process is performed to generate a second encoded packet including all of the individual packets stored in the transmission buffer and output it to the transmitting means.Furthermore, when the transmitting means receives a first individual packet from the processing means, it executes a first transmission process to transmit the received first individual packet alone, when it receives a combined packet from the processing means, it executes a second transmission process to transmit the received combined packet, when it receives a third individual packet or the last individual packet from the processing means, it executes the first transmission process for the received third individual packet or the last individual packet, and when it receives a second encoded packet from the processing means, it executes a third transmission process to transmit the received second encoded packet alone.

[0019] (Configuration 2) In configuration 1, in the second processing, when a fourth individual packet, which is the last individual packet to arrive at the transmitting device among the individual packets that arrived at the transmitting device earlier than the second individual packet or the last individual packet, arrives at the transmitting device, the processing means performs a first sub-processing of generating a first encoded packet including the individual packet that arrived at the transmitting device earlier than the second individual packet or the last individual packet after the fourth individual packet is transmitted by the transmitting means, and when the second individual packet or the last individual packet arrives at the transmitting device after performing the first sub-processing, the processing means performs a second sub-processing of adding the first encoded packet to the second individual packet or the last individual packet to generate a combined packet and outputting it to the transmitting means.

[0020] (Configuration 3) In configuration 2, in the second process, when the second individual packet consists of a (a is an integer greater than or equal to 1) individual packets, the processing means executes first and second sub-processing for each of the a individual packets.

[0021] (Configuration 4) In any one of configurations 1 to 3, the processing means sets an initial value of the encoded packet to Y 0 Then, the packet taken out from the transmission buffer is X i(i=1,2,...,I, I is the total number of packets stored in the transmission buffer when generating the first or second encoded packet), and a random number of a predetermined length is denoted by C i Let the encoded packet be Y i Then, a random number C of a given length i Packet X i The result of multiplication C i X i and Y i-1 The coded packet Y obtained by performing an exclusive OR operation with i as the first encoded packet or the second encoded packet.

[0022] (Configuration 5) In any one of configurations 1 to 4, the transmitting device further includes a plurality of base stations. The plurality of base stations are connected to the transmitting means by wired cables. The plurality of base stations receive the first individual packet, the combined packet, the third individual packet, the last individual packet, and the second encoded packet from the transmitting means via the wired cables, and transmit the received first individual packet, the combined packet, the third individual packet, the last individual packet, and the second encoded packet via mutually different communication paths.

[0023] (Configuration 6) According to an embodiment of the present invention, a receiving device receives packets from a transmitting device according to any one of configurations 1 to 5, and includes a first receiving buffer, a second receiving buffer, a receiving means, a separating means, a first processing means, a second processing means, and a decoding means. The first receiving buffer is a buffer for storing individual packets. The second receiving buffer is a buffer for storing encoded packets. The receiving means receives the first and third individual packets, the combined packet, and the second encoded packet. The separating means separates the combined packet into the first encoded packet and the second individual packet. The first processing means executes a receiving process for storing, in the first receiving buffer, the individual packets that are not stored in the first receiving buffer or the individual packets that have not been received, among the first individual packets or the third individual packets, and transmitting the individual packets stored in the first receiving buffer to an application that uses information transmitted by packets from the transmitting device. The second processing means performs a process of generating a third encoded packet including only the multiple individual packets not stored in the first receiving buffer based on the encoded packet received by the receiving means, and storing the generated third encoded packet in the second receiving buffer, for all of the first and second encoded packets. The decoding means performs a decoding process of reading the multiple third encoded packets from the second receiving buffer, and solving simultaneous equations for the multiple read third encoded packets to decode the multiple third encoded packets. The first processing means further performs a receiving process for the individual packets decoded by the decoding means.

[0024] (Configuration 7) In configuration 6, the second processing means generates a third encoded packet by removing information of the individual packet stored in the first receiving buffer from the encoded packet received by the receiving means.

[0025] (Configuration 8) In configuration 7, when the second processing means determines that the single packet stored in the first receiving buffer is included in the encoded packet received by the receiving means, it generates a third encoded packet from the encoded packet received by the receiving means.

[0026] (Configuration 9) In configuration 7 or 8, the second processing means, when the encoded packet received by the receiving means contains one individual packet after removing information of the individual packet stored in the first receiving buffer from the encoded packet, further erases the encoded packet containing one individual packet from the second receiving buffer. The first processing means converts the encoded packet containing one individual packet into an individual packet and performs receiving processing on the converted individual packet.

[0027] (Configuration 10) In any one of configurations 6 to 9, the receiving device further includes a plurality of base stations. The plurality of base stations are connected to the receiving means by wired cables and receive the packets transmitted from the transmitting device via a plurality of mutually different communication paths. Each of the plurality of base stations outputs the received packets to the receiving means via the wired cable.

[0028] (Configuration 11) Furthermore, according to an embodiment of the present invention, a wireless communication system includes a transmitting device according to any one of configurations 1 to 5, and a receiving device according to any one of configurations 6 to 10.

[0029] (Configuration 12) Further, according to an embodiment of the present invention, a program is provided for causing a computer to execute transmission of packets in a transmitting device that receives packets constituting real-time traffic from an application, the program comprising: A first step in which a processing means performs processing for transmission on a packet; a second step in which the transmitting means transmits the packet received from the processing means; In a first step, the processing means executes a first process for copying the first individual packet to a transmission buffer for storing packets for transmission when the packet is a first individual packet arriving at the transmitting device at a first time interval and outputting the first individual packet to the transmitting means when the packet is a plurality of individual packets arriving at the transmitting device successively at a second time interval shorter than the first time interval, and for copying the second individual packet to the transmission buffer when a second individual packet selected from among the plurality of individual packets other than the individual packet which arrived at the transmitting device first arrives at the transmitting device, and for generating a combined packet by adding a first encoded packet including an individual packet which arrived at the transmitting device earlier than the second individual packet to the second individual packet and for outputting the combined packet to the transmitting means. when a third individual packet, which is included in the plurality of individual packets and is an individual packet other than the second individual packet, arrives at the transmitting device, a first process is performed on the third individual packet; when it is determined that the last individual packet of the plurality of individual packets has arrived at the transmitting device, the last individual packet is copied to a transmission buffer, and when the last individual packet corresponds to the second individual packet, a second process is performed on the last individual packet; when the last individual packet corresponds to the third individual packet, a first process is performed on the last individual packet; and when a predetermined time has elapsed from the timing at which it is determined that the last individual packet has arrived at the transmitting device, a third process is performed to generate a second encoded packet including all of the individual packets stored in the transmission buffer and output the second encoded packet to the transmitting means; In the second step, when the transmitting means receives a first individual packet from the processing means, it executes a first transmission process to transmit the received first individual packet alone, when the transmitting means receives a combined packet from the processing means, it executes a second transmission process to transmit the received combined packet, when the transmitting means receives a third individual packet or the last individual packet from the processing means, it executes the first transmission process for the received third individual packet or the last individual packet, and when the transmitting means receives a second encoded packet from the processing means, it executes a third transmission process to transmit the received second encoded packet alone.

[0030] (Configuration 13) In configuration 12, the processing means, in the second processing of the first step, When a fourth individual packet, which is the last individual packet to arrive at the transmitting device among the individual packets that arrived at the transmitting device earlier than the second individual packet or the last individual packet, arrives at the transmitting device, a first sub-process is executed after the fourth individual packet is transmitted by the transmitting means, in which a first encoded packet is generated including the individual packet that arrived at the transmitting device earlier than the second individual packet or the last individual packet, and when the second individual packet or the last individual packet arrives at the transmitting device after the first sub-process is executed, a second sub-process is executed in which the first encoded packet is added to the second individual packet or the last individual packet to generate a combined packet and output it to the transmitting means.

[0031] (Configuration 14) In configuration 13, in the second processing of the first step, when the second individual packet consists of a (a is an integer greater than or equal to 1) individual packets, the processing means executes first and second sub-processing for each of the a individual packets.

[0032] (Configuration 15) In any one of configurations 12 to 14, the processing means sets an initial value of the encoded packet to Y 0 Then, the packet taken out from the transmission buffer is X i (i=1,2,...,I, I is the total number of packets stored in the transmission buffer when generating the first or second encoded packet), and a random number of a predetermined length is denoted by C i Let the encoded packet be Y i Then, a random number C of a given length i Packet X i The result of multiplication C i X i and Y i-1 The coded packet Y obtained by performing an exclusive OR operation with ias the first encoded packet or the second encoded packet.

[0033] (Configuration 16) In any one of configurations 12 to 14, in the second step, the transmitting means transmits the first individual packet, the combined packet, the third individual packet, the last individual packet and the second encoded packet to a plurality of base stations via a wired cable; The multiple base stations receive the first individual packet, the combined packet, the third individual packet, the last individual packet and the second encoded packet from the transmitting means via wired cables, and transmit the received first individual packet, the combined packet, the third individual packet, the last individual packet and the second encoded packet via mutually different communication paths.

[0034] (Configuration 17) Further, according to an embodiment of the present invention, a program for causing a computer to execute a program according to any one of configurations 12 to 16, thereby receiving a transmitted packet, comprising: a first step of receiving means receiving first and third individual packets, a combined packet, and a second encoded packet; a second step in which a separating means separates the combined packet into a first encoded packet and a second individual packet; a third step of executing a receiving process by the first processing means to store in the first receiving buffer an individual packet that is not stored in the first receiving buffer or an individual packet that has not been received, among the first individual packet or the third individual packet, and to transmit the individual packet stored in the first receiving buffer to an application that uses information transmitted by the packet; a fourth step in which a second processing means executes a process of generating a third encoded packet including only a plurality of individual packets not stored in the first receiving buffer based on the encoded packet received in the first step, and storing the generated third encoded packet in the second receiving buffer, for all of the first and second encoded packets; a fifth step of executing a decoding process in which the decoding means reads the third encoded packets from the second receiving buffer and solves simultaneous equations for the third encoded packets that have been read, thereby decoding the third encoded packets; In a third step, the first processing means further executes a receiving process on the individual packet decoded by the decoding means.

[0035] (Configuration 18) In configuration 17, in a fourth step, the second processing means generates a third encoded packet by removing information of the single packet stored in the first receiving buffer from the encoded packet received in the first step.

[0036] (Configuration 19) In configuration 18, when the second processing means determines in the fourth step that the single packet stored in the first receiving buffer is included in the encoded packet received in the first step, it generates a third encoded packet from the encoded packet received in the first step.

[0037] (Configuration 20) In the configuration 18 or 19, in the fourth step, when the encoded packet after removing the information of the individual packet stored in the first receiving buffer from the encoded packet received in the first step includes one individual packet, the second processing means further deletes the encoded packet including one individual packet from the first receiving buffer; In the third step, the first processing means converts the encoded packet including one individual packet into an individual packet, and executes a receiving process on the converted individual packet.

[0038] (Configuration 21) Furthermore, according to an embodiment of the present invention, a recording medium is a computer-readable recording medium having the program according to any one of the twelfth to twentieth configurations recorded thereon. Effect of the Invention

[0039] Multiple packets that make up a burst can be transmitted with low latency. [Brief description of the drawings]

[0040] [Figure 1] 1 is a schematic diagram of a wireless communication system according to an embodiment of the present invention; [Diagram 2] FIG. 2 is a schematic diagram of the transmitter shown in FIG. [Diagram 3] FIG. 2 is a schematic diagram of the receiver shown in FIG. [Figure 4] FIG. 1 is a conceptual diagram showing image transmission. [Diagram 5] FIG. 2 is a schematic diagram showing a packet format. [Figure 6] FIG. 3 is a schematic diagram of the buffer shown in FIG. 2. [Figure 7] FIG. 13 is a diagram for explaining a method of encoding a packet. [Figure 8] FIG. 13 is a diagram for explaining a method of generating encoded packets when transmitting MBurst packets PKT_N(1) to PKT_N(MBurst). [Figure 9] FIG. 2 is a diagram for explaining a method of transmitting packets that constitute a burst. [Figure 10] FIG. 13 is a diagram for explaining another method of transmitting packets that constitute a burst. [Figure 11] FIG. 13 is a diagram for explaining yet another method of transmitting packets that constitute a burst. [Figure 12]3 is a flowchart for explaining the operation of the transmitter shown in FIGS. 1 and 2. [Figure 13] 13 is a flowchart for explaining a detailed operation of step S8 shown in FIG. 12. [Figure 14] 4 is a flowchart for explaining the operation of the receiver shown in FIGS. 1 and 3. [Figure 15] 15 is a flowchart for explaining a detailed operation of step S26 shown in FIG. 14. [Figure 16] 15 is a flowchart for explaining a detailed operation of step S28 shown in FIG. 14. [Figure 17] 15 is a flowchart for explaining a detailed operation of step S29 shown in FIG. 14. [Figure 18] FIG. 13 is a diagram showing the transition of the N buffer and the C buffer when packets constituting a burst are received. [Figure 19] FIG. 2 is a schematic diagram of another wireless communication system according to an embodiment of the present invention. [Figure 20] FIG. 11 is a schematic diagram of yet another wireless communication system according to an embodiment of the present invention. [Figure 21] FIG. 11 is a schematic diagram of yet another wireless communication system according to an embodiment of the present invention. [Figure 22] FIG. 2 is a diagram illustrating another application example of the wireless communication system shown in FIG. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0041] DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS An embodiment of the present invention will be described in detail with reference to the drawings. In the drawings, the same or corresponding parts are designated by the same reference characters and their description will not be repeated.

[0042] Fig. 1 is a schematic diagram of a wireless communication system according to an embodiment of the present invention. Referring to Fig. 1, a wireless communication system 10 according to the embodiment of the present invention includes a transmitter 1 and a receiver 2. The transmitter 1 and the receiver 2 are arranged in a wireless communication space.

[0043] The application 20, for example, takes an image using a camera and transmits to the transmitter 1 a packet PKT including image data of the taken image in its payload.

[0044] The transmitter 1 receives the packet PKT from the application 20. Then, the transmitter 1 transmits the packet PKT to the receiver 2 by wireless communication as a packet constituting real-time traffic, using a method to be described later.

[0045] The receiver 2 receives the packet PKT from the transmitter 1 via wireless communication, and executes a reception process (described later) on the received packet PKT. Then, the receiver 2 transmits the packet PKT that has undergone the reception process to the application 30. The application 30 receives the packet PKT from the receiver 2, and reproduces the image data included in the received packet PKT to display it on the display unit.

[0046] The wireless communication system 10 has the following characteristics. The wireless communication system 10 is a system that does not allow efficient retransmission using arrival confirmation, and performs, for example, broadcast or multicast by wireless communication. The wireless communication system 10 is also a system that uses multiple paths. Furthermore, the wireless communication system 10 performs real-time communication (for example, video transmission, etc.) that requires high reliability.

[0047] Fig. 2 is a schematic diagram of the transmitter 1 shown in Fig. 1. Referring to Fig. 2, the transmitter 1 comprises a buffer 11, a processing means 12, a transmitting means 13 and an antenna 14.

[0048] The buffer 11 stores a plurality of packets PKT_N(1) to PKT_N(V) arriving from the application 20. Each of the plurality of packets PKT_N(1) to PKT_N(V) is a raw (native) packet generated by the application 20. Furthermore, V is an integer.

[0049] The processing means 12 includes a timer. The processing means 12 judges whether or not a packet has arrived. When the processing means 12 judges that a packet has arrived, the processing means 12 stores a copy of the arrived packet PKT_N(v) (v is an integer between 1 and V) in the buffer 11, and outputs the original packet PKT_N(v) to the transmitting means 13. When the processing means 12 judges that a packet has arrived, if a plurality of packets are stored in the buffer 11, the processing means 12 retrieves the plurality of packets from the buffer 11, generates a transmission packet PKT_TR including an encoded packet PKT_C based on the retrieved plurality of packets by a method described later, and outputs the generated transmission packet PKT_TR to the transmitting means 13. The processing means 12 refers to the timer and outputs the packet PKT_N(v) or the transmission packet PKT_TR to the transmitting means 13.

[0050] When the transmitting means 13 receives one packet PKT_N(v) or a packet for transmission PKT_TR from the processing means 12, it transmits the received packet PKT_N(v) or packet for transmission PKT_TR to the receiver 2 via the antenna 14 by wireless communication.

[0051] Fig. 3 is a schematic diagram of the receiver 2 shown in Fig. 1. Referring to Fig. 3, the receiver 2 includes an antenna 21, a receiving means 22, a processing means 23, an N buffer 24, and a C buffer 25.

[0052] The receiving means 22 receives the packet PKT (packet PKT_N(v) or packet PKT_TR for transmission) via the antenna 21, and outputs the received packet PKT (packet PKT_N(v) or packet PKT_TR for transmission) to the processing means .

[0053] When the processing means 23 receives the packet PKT_N(v) from the receiving means 22, the processing means 23 executes N packet receiving processing on the packet PKT_N(v) by a method to be described later. In this case, in the N packet receiving processing, when the packet PKT_N(v) has not been received, the processing means 23 stores the packet PKT_N(v) in the N buffer 24. Then, the processing means 23 transmits all packets PKT_N(v) stored in the N buffer 24 to the application 30.

[0054] On the other hand, when the processing means 23 receives the transmission packet PKT_TR from the receiving means 22, if the transmission packet PKT_TR includes the encoded packet PKT_C and the individual packet PKT_N, the processing means 23 performs a separation process to separate the encoded packet PKT_C from the individual packet PKT_N. Then, the processing means 23 performs an N-packet reception process on the separated individual packet PKT_N. Also, the processing means 23 performs a removal process to remove information on the individual packet PKT_N already stored in the N buffer 24 (i.e., the received individual packet PKT_N) from the encoded packet PKT_C, and if the encoded packet PKT_C' after the removal process includes a plurality of individual packets PKT_N, the processing means 23 stores the encoded packet PKT_C' in the C buffer 25. After that, the processing means 23 performs a decoding process to be described later on the encoded packet PKT_C' stored in the C buffer 25. In this case, the processing means 23 performs an N-packet reception process on the individual packet PKT_N decoded in the decoding process.

[0055] When the transmission packet PKT_TR includes only the encoded packet PKT_C, the processing means 23 does not execute the above-mentioned separation process, but executes the above-mentioned removal process and decoding process in sequence.

[0056] Fig. 4 is a conceptual diagram showing image transmission. The characteristics of real-time video transmission will be described with reference to Fig. 4. An I-picture is a compressed image that does not use the difference between previous and next pictures, and is large in size. A P-picture is small in size because it transmits the difference with the previous picture.

[0057] I-pictures and P-pictures are transmitted periodically. The number of packets transmitted during periodic transmission varies, and packets may be transmitted in bursts at one time. I-pictures are generated and transmitted periodically, as in IPPPIPPPIP.

[0058] When transmitting an I-picture, a burst occurs, the size of the burst is not constant, and the packets constituting the burst do not arrive all at once but arrive successively.

[0059] Furthermore, in the P picture, P picture, P picture, I picture, P picture, P picture, P picture, I picture, and P picture shown in FIG. 4, the time interval at which a packet including a P picture in its payload and a packet including an I picture in its payload arrive at the transmitter 1 from the application 20 is T interval_1 The time interval during which a plurality of packets including an I-picture in the payload arrive at the transmitter 1 successively from the application 20 is T interval_1 Shorter than T interval_2 It is.

[0060] 5 is a schematic diagram showing a packet format. Referring to FIG. 5, the packet PKT includes a header and a payload. The header includes the IP address of the destination.

[0061] The payload includes Packet Info, an area REG1, Coded Info, and an area REG2. The area REG1 includes the payload of one packet PKT_N. The area REG2 includes a coded packet PKT_C obtained by coding N packets PKT_N(1) to PKT_N(N). The length of the area REG1 is L p and the length of the region REG2 is L 1 ~L n This is the maximum value of L p is the data length of one packet PKT_N, and L 1 ~L n are the data lengths of the packets PKT_N(1) to PKT_N(N), respectively.

[0062] Packet Info contains an identifier N / C, a sequence number SN, and a data length L p The identifier N / C is an identifier for identifying whether the packet included in the region REG1 is a single packet PKT_N or a coded packet PKT_C, and is composed of "N" or "C." "N" indicates that it is a single packet PKT_N, and "C" indicates that it is a coded packet PKT_C. The sequence number SN indicates the order in which the packets included in the region REG1 arrive at the transmitter 1. The data length L p represents the length of the region REG1.

[0063] Coded Info includes an identifier N / C, Num coded(N), and Packet Info 1 to Packet Info N. The identifier N / C is an identifier for identifying whether the packet included in the region REG2 is a single packet PKT_N or a coded packet PKT_C, and is composed of "N" or "C." Num coded(N) indicates the number of packets PKT_N that constitute the coded packet PKT_C included in the region REG2.

[0064] Packet Info 1 contains the sequence number SN and the data length L 1 And, code C 1 Similarly, Packet Info N includes a sequence number SN and a data length L N And, code C N Includes.

[0065] In Packet Info 1, the sequence number SN indicates the order of arrival of the packet PKT_N(1) constituting the encoded packet PKT_C at the transmitter 1, and the data length L 1 is the data length of packet PKT_N(1) constituting the encoded packet PKT_C, and 1 is the coefficient of the packet PKT_N(1) when N packets PKT_N(1) to PKT_N(N) are encoded.

[0066] Similarly, in Packet Info N, the sequence number SN represents the order of arrival of the packet PKT_N(N) that constitutes the encoded packet PKT_C at the transmitter 1, and the data length L N is the data length of the packet PKT_N(N) that constitutes the encoded packet PKT_C, and the code C N is the coefficient of the packet PKT_N(N) when encoding N packets PKT_N(1) to PKT_N(N).

[0067] One packet PKT_N consists of a configuration in which the payload includes Packet Info and region REG1.

[0068] Let the number of packets to be transmitted burstily at one time be M Burst (M Burst is an integer satisfying 2 ≤ M Burst < V).) Suppose it consists of M packets PKT_N(1) to PKT_N(M Burst ). Then, when each of the a (a is an integer greater than or equal to 1) predetermined packets PKT_N(m) selected from the (M Burst ) packets PKT_N(1) to PKT_N(M Burst ), other than the packet PKT_N(1) that arrives at the transmitter 1 first among the M Burst -1) packets PKT_N(2) to PKT_N(M Burst ) arrives at the transmitter 1, the packets PKT_N(1) to PKT_N(m - 1) that arrived at the transmitter 1 earlier than the predetermined packet PKT_N(m) are encoded to generate an encoded packet PKT_C1, and the generated encoded packet PKT_C1 is attached to the predetermined packet PKT_N(m) to generate a combined packet PKT_N / PKT_C1 as a transmission packet PKT_TR.

[0069] Therefore, the combined packet PKT_N / PKT_C1 consists of a configuration in which the payload includes [Packet Info / Data of PKT_N / Coded Info / Data of PKT_N(1) to PKT_N(m - 1)].

[0070] Also, MBurst Packets PKT_N(1) to PKT_N(M Burst ) arrive at transmitter 1 in succession, M Burs t packets PKT_N(1) to PKT_N(M Burst ) to generate an encoded packet PKT_C2 as a transmission packet PKT_TR.

[0071] Therefore, the payload of the coded packet PKT_C2 is [Coded Info / PKT_N(1) data to PKT_N(M Burst ) data.

[0072] Fig. 6 is a schematic diagram of the buffer 11 shown in Fig. 2. Note that Fig. 6 shows the number M of packets to be transmitted at one time in a burst. Burst 1 shows a schematic diagram of the buffer 11 when the size of the buffer 11 is larger than

[0073] 6, the buffer 11 is, for example, a ring buffer. The buffer 11 stores M Burst Packets PKT_N(1) to PKT_N(M Burst ) is stored in the packet PKT_N(M Burst ) are packets stored in the buffer 11 at the current time, and packets PKT_N(1) to PKT_N(M Burst -1) is a packet that was previously stored in the buffer 11.

[0074] Furthermore, the buffer 11 is configured to overwrite packets beginning with the oldest packet when the number of packets exceeds the maximum number, so that the buffer 11 can always store the maximum number of packets.

[0075] Packets PKT_N(1), PKT_N(2), , PKT_N(M Burst ) is stored in M Burst These fields contain the sequence number SN of packet PKT_N(1), 1 and data length L 1, the sequence number SN of packet PKT_N(2) 2 and data length L 2 , , , PKT_N(M Burst ) sequence number SN MBurst and data length L MBurst is also stored.

[0076] That is, packets PKT_N (PKT_N(1) to PKT_N(M Burst ) constitutes the payload, and each area of ​​the buffer 11 contains [SN / L p / payload / padding(all "0")] is stored. Note that padding (all "0") is stored in [SN / L p / payload] is added if its length does not exceed the maximum length.

[0077] FIG. 7 is a diagram for explaining a method for encoding a packet. In FIG. 7, packet X i (i is 1, 2, 3, . . .) and the encoded packet Y i-1 A method for encoding the above will be described.

[0078] Referring to Figure 7, packet X i , L i Since the data length of packet X is 1024 bytes, i , L i ×8 / n components X i,1 ,X i,2 ,X i,3 ,X i,4 ,···,X i,Li×8 / n and padding of "0". i,1 ,X i,2 ,X i,3 ,X i,4 ,···,X i,Li×8 / n Each of the codes C has a length of n bits (n is a positive integer). i is in the Galois field GF(2 n ), where n is, for example, 8.

[0079] Encoded packet Y i-1is the component Y i-1,1 ,Y i-1,2 ,Y i-1,3 ,Y i-1,4 ,···,Y i-1,Li×8 / n ,Y i-1,Max×8 / n Component Y i-1,1 ,Y i-1,2 ,Y i-1,3 ,Y i-1,4 ,···,Y i-1,Li×8 / n ,Y i-1,Max×8 / n Each of has a length of n bits.

[0080] code C i to component X i,1 ,X i,2 ,X i,3 ,X i,4 ,···,X i,Li×8 / n Multiply each of these and get the multiplication result C i X i,1 ,C i X i,2 ,C i X i,3 ,C i X i,4 ,···,C i X i,Li×8 / n In this case, the code C i and component X i,1 ,X i,2 ,X i,3 ,X i,4 ,···,X i,Li×8 / n Multiplication with each of the 2 n )

[0081] Then, the multiplication result C i X i,1 and component Y i-1,1 Component Y i,1 Generate the multiplication result C i X i,2 and component Y i-1,2 Component Y i,2 Generate the multiplication result C i X i,3 and component Y i-1,3 Component Y i,3 Generate the multiplication result C i X i,4 and component Yi-1,4 Component Y i,4 Similarly, the multiplication result C i X i,Li×8 / n and component Y i-1,Li×8 / n Component Y i,Li×8 / n and then add padding of "0" and the component Y i-1,Max×8 / n Component Y i,Max×8 / n This generates the encoded packet Y i =[Y i,1 ,Y i,2 ,Y i,3 ,Y i,4 ,···,Y i,Li×8 / n ,···,Y i,Max×8 / n ] is generated.

[0082] Figure 8 shows the M Burst Packets PKT_N(1) to PKT_N(M Burst 1 is a diagram for explaining a method of generating an encoded packet when transmitting

[0083] In FIG. 8, packet P 3 ,P 5 ,P 7 ,P 9 It is assumed that the transmitter 1 determines to transmit the encoded packet to the receiver 2 at the timing when the received signal arrives at the transmitter 1 .

[0084] Referring to FIG. 8(a), M Burst Packets PKT_N(1) to PKT_N(M Burst ) is a packet P 1 ~P 6 The maximum number of packets that can be stored in the buffer 11 is 6. That is, the number of packets that make up a burst, M Burst is the size of buffer 11, M Buffer The following is the result.

[0085] The processing means 12 of the transmitter 1 receives the packet P 1 When packet P 1The processing means 12 then copies the packet P 1 Then, the extracted packet P 1 7 to produce an encoded packet C 1 Generate.

[0086] More specifically, the processing means 12 processes an encoded packet Y consisting of n bits of “0”. 0 ={000 0} and create a Galois field GF(2 n ) a code C consisting of n-bit random numbers on 1 Then, the processing means 12 generates the packet X 1 (=P 1 ) and the encoded packet Y 0 ={000···0} and the code C 1 Based on this, the encoded packet Y 1 (=C 1 )

[0087] Then, the processing means 12 processes the packet P 2 When packet P 2 Then, the processing means 12 copies the packet P 2 Then, the processing means 12 extracts the Galois field GF(2 n ) a code C consisting of n-bit random numbers on 2 Then, the processing means 12 generates packet X 2 (=P 2 ) and the encoded packet Y 1 and code C 2 Based on this, the encoded packet Y 2 (=C 2 )

[0088] Similarly, packets P 3 ~P 6 When the encoded packet Y 3 ~Y6 (=C 3 ~C 6 ) are generated in sequence (see (iii) to (vi) of FIG. 8). In this case, 6 arrives at sender 1, and packet P 6 When the buffer 11 is copied to the buffer, the buffer 11 is filled with a maximum of M Buffer The packet is stored.

[0089] The processing means 12 processes the packet P 3 When packet P 3 The processing means 12 copies the packet P 2 The encoded packet Y generated at the time when 2 (=C 2 ) to packet P 3 and combine the packets P 3 / C 2 Then, the generated combined packet P 3 / C 2 to the transmitting means 13 to generate a combined packet P 3 / C 2 The combined packet P 3 / C 2 Transmitting information by is transmitting information by Piggyback.

[0090] In addition, the processing means 12 5 When packet P 5 The processing means 12 copies the packet P 4 The encoded packet Y generated at the time when 4 (=C 4 ) to packet P 5 and combine the packets P 5 / C 4 Then, the generated combined packet P 5 / C 4 to the transmitting means 13 to generate a combined packet P5 / C 4 is transmitted to receiver 2.

[0091] Then, the processing means 12 processes the packet P 6 arrives at sender 1, and the encoded packet Y 6 (=C 6 ), and then, by the method described later, 6 Packets P constituting a burst 1 ~P 6 The last packet P 6 After determining that, the untransmitted encoded packet Y 6 (=C 6 ) to the transmitting means 13 to generate the encoded packet Y 6 (=C 6 ) is sent to receiver 2 alone.

[0092] Also, the processing means 12 receives the packet P 1 ~P 6 Then, the extracted packet P 1 ~P 6 Encode the encoded packet Y 7 (=C 7 ) and the processing means 12 generates the encoded packet Y 7 (=C 7 ) to the transmitting means 13 to generate the encoded packet Y 7 (=C 7 ) is sent to receiver 2 alone.

[0093] In this way, the processing means 12 determines the number M of packets constituting a burst. Burst is the size of buffer 11, M Buffer If all packets P 1 ~P 6 Encoded packet Y containing 7 (=C 7 ) and transmits it to receiver 2.

[0094] Referring to FIG. 8(b), M Burst Packets PKT_N(1) to PKT_N(M Burst) is a packet P 1 ~P 10 The maximum number of packets that can be stored in the buffer 11 is 6. That is, the number of packets that make up a burst, M Burst is the size of buffer 11, M Buffer Greater than.

[0095] The processing means 12 processes the packet P 1 ~P 6 When the packet arrives at the transmitter 1, the process explained in FIG. 8(a) is executed (see FIG. 8(b)(i) and (ii)).

[0096] Then, the processing means 12 processes the packet P 7 When packet P 7 into the buffer 11 (see (b)(iii) of FIG. 8). As a result, the packet P 6 When the packet P 1 ~P 6 are packets P 2 ~P 7 will be overwritten by

[0097] The processing means 12 processes the packet P 7 After copying packet P 7 Then, the processing means 12 extracts the Galois field GF(2 n ) a code C consisting of n-bit random numbers on 7 Then, the processing means 12 generates packet X 7 (=P 7 ) and the encoded packet Y 6 and code C 7 Based on this, the encoded packet Y 7 (=C 7 )

[0098] Then, the processing means 12 processes the packet P 8 ~P 10 At the timing when the encoded packet Y8 (=C 8 )~Y 10 (=C 10 ) (see Fig. 8 (b)(iv) to (vi)).

[0099] And packet P 10 When the packet P is copied to the buffer 11, the buffer 11 5 ~P 10 Store.

[0100] The processing means 12 processes the packet P 10 arrives at sender 1, and the encoded packet Y 10 (=C 10 ), and then, by the method described later, 10 Packets P constituting a burst 1 ~P 10 The last packet P 10 After determining that, the untransmitted encoded packet Y 10 (=C 10 ) to the transmitting means 13 to generate the encoded packet Y 10 (=C 10 ) is sent to receiver 2 alone.

[0101] Also, the processing means 12 receives the packet P 5 ~P 10 Then, the extracted packet P 5 ~P 10 Encode the encoded packet Y 11 (=C 11 ) and the processing means 12 generates the encoded packet Y 11 (=C 11 ) to the transmitting means 13 to generate the encoded packet Y 11 (=C 11 ) is sent to receiver 2 alone.

[0102] In this way, the processing means 12 determines the number M of packets constituting a burst. Burst is the size of buffer 11, M Buffer When the number of packets P 1 ~P 10Packet P 5 ~P 10 Encoded packet Y containing 11 (=C 11 ) and transmits it to receiver 2.

[0103] As explained in FIG. 8, the number of encoded packets transmitted individually is M Burst and the size of buffer 11, M Buffer It includes packets that differ depending on their magnitude relationship with respect to

[0104] The processing means 12 processes M Burst Packets PKT_N(1) to PKT_N(M Burst ) the last packet PKT_N(M Burst ) has arrived at the buffer 11 is judged by the following method.

[0105] M Burst Packets PKT_N(1) to PKT_N(M Burst ) arrive at the buffer 11 consecutively. Therefore, for two packets PKT_N(m) and PKT_N(m+1) with consecutive sequence numbers SN, the standard elapsed time T STANDARD is determined to a fixed value in advance, and the elapsed time T STANDARD is set in the processing means 12.

[0106] The processing means 12 is Burst Packets PKT_N(1) to PKT_N(M Burst ) the time t ELP is the elapsed time t STANDARD When packet PKT_N does not arrive at buffer 11 even if packet PKT_N(m') is longer than M Burst Packets PKT_N(1) to PKT_N(M Burst ) the last packet PKT_N(M Burst) and M Burst Packets PKT_N(1) to PKT_N(M Burst ) the last packet PKT_N(M Burst ) has arrived at buffer 11.

[0107] Also, application 20 is M Burst Packets PKT_N(1) to PKT_N(M Burst ) the last packet PKT_N(M Burst ) to indicate that it is the last packet, and the processing means 12 determines whether or not the flag FG is set in the packet PKT_N every time the processing means 12 receives the packet PKT_N from the application 20. When it determines that the flag FG is set in the packet PKT_N, the processing means 12 treats the packet PKT_N with the flag FG set as the last packet PKT_N(M Burst ) may be determined.

[0108] FIG. 9 is a diagram for explaining a method of transmitting packets constituting a burst. In FIG. 9, M Burst Packets PKT_N(1) to PKT_N(M Burst ) is packet P 1 ~P 6 In this case, M constituting a burst Burst Packets PKT_N(1) to PKT_N(M Burst In this case, the processing means 12 transmits, for example, a packet P 3 ,P 5 , and determines that the encoded packet should be transmitted when one of the packets P 1 ,P 2 ,P 4 ,P 6 It is assumed that the transmitter 1 determines not to transmit the encoded packet when any of the packets P 1 ,P 3 However, it is assumed that the message could not be sent to the destination.

[0109] Referring to FIG. 9, packet P1 ~P 6 constitutes a packet to be transmitted at one time in a burst.

[0110] The processing means 12 processes the packet P 1 When arrives at transmitter 1, the timer counts the elapsed time t ELP_1 At the same time, packet P 1 Copy to buffer 11 and store packet P 1 is packet P 3 ,P 5 Since it is a packet other than 1 The processing means 12 then determines not to transmit the encoded packet since the original packet P 1 to the transmitting means 13 and outputs the packet P 1 to the receiver 2. Then, the processing means 12 transfers the packet P 1 Then, the extracted packet P 1 is encoded by the above method to obtain an encoded packet C 1 Generate the encoded packet C 1 is expressed by the following equation:

[0111]

number

[0112] Subsequently, the processing means 12 2 arrives at transmitter 1, the elapsed time t ELP_1 The measurement of packet P 2 The time t elapsed since the arrival of ELP_2 Then, the processing means 12 starts measuring the packet P 2 Copy to buffer 11 and store packet P 2 is packet P 3 ,P 5 Since it is a packet other than 2 The processing means 12 then determines not to transmit the encoded packet since the original packet P2 to the transmitting means 13 and outputs the packet P 2 to the receiver 2. Then, the processing means 12 transmits the packet P 1 ,P 2 is taken out from the buffer 11, and the taken out packet P 1 ,P 2 is encoded by the above method to obtain an encoded packet C 2 Generate the encoded packet C 2 is expressed by the following equation:

[0113]

number

[0114] Subsequently, the processing means 12 3 arrives at transmitter 1, the elapsed time t ELP_2 The measurement of packet P 3 The time t elapsed since the arrival of ELP_3 Then, the processing means 12 starts measuring the packet P 3 Copy to buffer 11 and store packet P 3 is packet P 3 ,P 5 Since the packet falls into any of the above categories (i.e., packet P 3 Since the packet P is a packet PKT_N(3) with m=3, the processing means 12 determines to transmit the encoded packet. 2 The encoded packet C generated at the time when 2 The original packet P 3 and combine the packets P 3 / C 2 Then, the generated combined packet P 3 / C 2 to the transmitting means 13 to generate a combined packet P 3 / C 2 to the receiver 2. Then, the processing means 12 transmits the packet P 1 ~P 3 is taken out from the buffer 11, and the taken out packet P 1 ~P 3is encoded by the above method to obtain an encoded packet C 3 Generate the encoded packet C 3 is expressed by the following equation:

[0115]

number

[0116] Subsequently, the processing means 12 4 arrives at transmitter 1, the elapsed time t ELP_3 The measurement of packet P 4 The time t elapsed since the arrival of ELP_4 Then, the processing means 12 starts measuring the packet P 4 Copy to buffer 11 and store packet P 4 is packet P 3 ,P 5 Since it is a packet other than 4 Since the packet P is a packet PKT_N(4) with m=4, the processing means 12 determines not to transmit the encoded packet. 4 to the transmitting means 13 and outputs the packet P 4 to the receiver 2. Then, the processing means 12 transmits the packet P 1 ~P 4 is taken out from the buffer 11, and the taken out packet P 1 ~P 4 is encoded by the above method to obtain an encoded packet C 4 Generate the encoded packet C 4 is expressed by the following equation:

[0117]

number

[0118] Then, packet P 5 arrives at the transmitter 1, the processing means 12 calculates the elapsed time t ELP_4 The measurement of packet P 5 The time t elapsed since the arrival of ELP_5Then, the processing means 12 starts measuring the packet P 5 Copy to buffer 11 and store packet P 5 is packet P 3 ,P 5 Since the packet falls into any of the above categories (i.e., packet P 5 Since the packet P is a packet PKT_N(5) with m=5, the processing means 12 determines to transmit the encoded packet. 4 The encoded packet C generated at the time when 4 The original packet P 5 and combine the packets P 5 / C 4 Then, the generated combined packet P 5 / C 4 to the transmitting means 13 to generate a combined packet P 5 / C 4 to the receiver 2. Then, the processing means 12 transmits the packet P 1 ~P 5 is taken out from the buffer 11, and the taken out packet P 1 ~P 5 is encoded by the above method to obtain an encoded packet C 5 Generate the encoded packet C 5 is expressed by the following equation:

[0119]

number

[0120] Subsequently, the processing means 12 6 arrives at transmitter 1, the elapsed time t ELP_5 The measurement of packet P 6 The time t elapsed since the arrival of ELP_6 Then, the processing means 12 starts measuring the packet P 6 Copy to buffer 11 and store packet P 6 is packet P 3 ,P 5 Since it is a packet other than 6Since the packet P is a packet PKT_N(6) with m=6, the processing means 12 determines not to transmit the encoded packet. 6 to the transmitting means 13 and outputs the packet P 6 to the receiver 2. Then, the processing means 12 transmits the packet P 1 ~P 6 is taken out from the buffer 11, and the taken out packet P 1 ~P 6 is encoded by the above method to obtain an encoded packet C 6 Generate the encoded packet C 6 is expressed by the following equation:

[0121]

number

[0122] In addition, the encoded packet C 6 Packet P 6 The reason why the encoded packet is not added to the single packet and transmitted to the receiver 2 is that the timing of adding the encoded packet to the single packet and transmitting it to the receiver 2 is different from the timing of packet P 3 ,P 5 Since it is determined that either of the packets P 6 This is because the timing at which the encoded packet arrives at the buffer 11 is not the timing at which the encoded packet is added to a single packet and transmitted to the receiver 2.

[0123] Then, the processing means 12 calculates the elapsed time t ELP_6 is the elapsed time T STANDARD ,P,i,=,1, ... 6 is packet P 1 ~P 6 The last packet P 6 It is determined that:

[0124] Then, the processing means 12 processes the last packet P 6 Determine whether T milliseconds have passed since the arrival of <T _interval_1is the time to satisfy the condition, for example, 5 milliseconds.

[0125] The processing means 12 processes the last packet P 6 When it is determined that T milliseconds have elapsed since the arrival of the encoded packet C 6 to the transmitting means 13 and outputs the encoded packet C 6 is transmitted to receiver 2.

[0126] Then, the processing means 12 judges whether the number of transmissions of the encoded packets is K or not. K is, for example, 3. K may be changed according to the number of packets stored in the buffer 11. In this case, K is determined by K=A+B / M. M is the number of packets stored in the buffer 11, and A and B are constants. Each of A, B, and M is an integer. According to K=A+B / M, if the number of packets M stored in the buffer 11 is large, K becomes small, and if the number of packets M stored in the buffer 11 is small, K becomes large. Therefore, by determining the number of transmissions K of the encoded packets according to K=A+B / M, when the number of packets M stored in the buffer 11 is a first number, the number of transmissions K of the encoded packets is set to the first transmission number, and when the number of packets M stored in the buffer 11 is a second number larger than the first number, the number of transmissions K of the encoded packets is set to the second transmission number smaller than the first transmission number. In other words, if the number M of packets stored in the buffer 11 decreases, more encoded packets will be transmitted.

[0127] When it is determined that the number of transmitted encoded packets is not K, the processing means 12 1 ~P 6 Then, the extracted packet P 1 ~P 6 is encoded by the above method to obtain an encoded packet C 7 Generate the encoded packet C 7 is expressed by the following equation:

[0128]

number

[0129] Then, the processing means 12 processes the encoded packet C 7 to the transmitting means 13 and outputs the encoded packet C 7 is transmitted to receiver 2.

[0130] After that, the processing means 12 determines that the number of transmitted encoded packets is not K (=3). Then, the processing means 12 1 ~P 6 Then, the extracted packet P 1 ~P 6 is encoded by the above method to obtain an encoded packet C 8 Generate the encoded packet C 8 is expressed by the following equation:

[0131]

number

[0132] In this way, when the processing means 12 transmits the encoded packet by itself, all packets P stored in the buffer 11 are 1 ~P 6 Encode packet C using 6 ~C 8 Generate.

[0133] Subsequently, the processing means 12 determines that the number of transmitted encoded packets is K (=3), and clears the buffer 11.

[0134] As shown in equations (6) to (8), the encoded packet C 6 ,C 7 ,C 8 is the same packet P 1 ~P 6 Including coefficient C i The only coding packet that differs is the coefficient C i is in the Galois field GF(2 n) is composed of n-bit random numbers on the 62 ,a 64 may be zero. In this case, the coding packet C 6 is effectively a packet P 1 ,P 3 ,P 5 ,P 6 The encoded packet C 7 ,C 8 The same applies to.

[0135] Receiver 2 receives packet P 1 , and the packet P sent by transmitter 1 fails to be received. 2 The receiver 2 also receives the combined packet P 3 / C 2 , and the packet P sent by transmitter 1 fails to be received. 4 , combined packet P 5 / C 4 , packet P 6 and the encoded packet C 6 ,C 7 ,C 8 are received in sequence.

[0136] Receiver 2 receives packet P 1 ,P 3 and the encoded packet C 1 Since the packet P could not be received, 1 ,P 3 Encode packet C 4 ,C 6 To decode from the encoded packet C 4 ,C 6 Packet P received from 2 ,P 4 Remove the information.

[0137] More specifically, the receiver 2 derives the encoded packet C 4 Packet P received from 2 ,P 4 Remove the information.

[0138]

number

[0139] The receiver 2 also calculates the encoded packet C 6 Packet P received from 2 ,P 4 ,P 5 ,P 6 Remove the information.

[0140]

number

[0141] As a result, the encoded packet C 4 Packet P received from 2 ,P 4 After removing the information, the encoded packet C 4 ' and the encoding packet C 6 Packet P received from 2 ,P 4 ,P 5 ,P 6 After removing the information, the encoded packet C 6 ' are both packets P 1 ,P 3 Includes.

[0142] The left side of equation (9) is the coding packet C 4 and packet P 2 The exclusive OR operation is performed on the packet P 4 The left side of equation (10) is the coding packet C 6 and packet P 2 The exclusive OR operation is performed on the packet P 4 The exclusive OR operation is performed on the packet P 5 The exclusive OR operation is performed on the packet P 6Therefore, the receiver 2 can obtain the values ​​of the left sides of equations (9) and (10).

[0143] Also, the symbol a in equation (9) 41 ,a 43 is the encoded packet C 4 The code a in equation (10) is included in the “Coded Info” of 61 ,a 63 is the encoded packet C 6 Since it is included in the “Coded Info” of the

[0144] Therefore, the receiver 2 can obtain the packet P 1 ,P 3 can be decrypted.

[0145] Similarly, the receiver 2 receives the encoded packet C 6 ~C 8 Based on two randomly selected encoded packets, the packet P 1 ,P 3 can be decrypted.

[0146] In this way, there are two packets P 1 ,P 3 In this case, the transmitter 1 transmits coded packets equal to or greater than the number of packets that the receiver 2 was unable to receive, thereby recovering the two packets P 1 ,P 3 can be decrypted.

[0147] Receiver 2 receives combined packet P 3 / C 2 Instead of the combined packet P 5 / C 2 In the case where the receiver 2 is unable to receive two packets P, the receiver 2 can decode the two packets P by using the above method. 1 ,P 5This means that the message could not be received.

[0148] Therefore, receiver 2 receives the encoded packet C 2 Packet P received from 2 After removing the information, the encoded packet C 2 ' and the encoded packet C 6 Packet P received from 2 ,P 3 ,P 4 ,P 6 After removing the information, the encoded packet C 6 " is calculated using the following formula:

[0149]

number

[0150] Therefore, the receiver 2 can detect the two packets P 1 ,P 5 can be decrypted.

[0151] Encoded packet C 2 ,C 4 Packet P 3 ,P 5 Packets other than P 1 ,P 2 ,P 4 Even if receiver 2 cannot transmit the three encoded packets C 6 ,C 7 ,C 8 can be received.

[0152] Therefore, receiver 2 receives the encoded packet C 6 Packet P received from 3 ,P 5 After removing the information, the encoded packet C 6 (3) and the encoded packet C 7 Packet P received from 3 ,P 5 After removing the information, the encoded packet C 7(3) and the encoded packet C 8 Packet P received from 3 ,P 5 After removing the information, the encoded packet C 8 (3) As a result, the following equation is obtained:

[0153]

number

[0154] The receiver 2 derives the packet P by solving the simultaneous equations (12A), (12B), and (12C). 1 ,P 2 ,P 4 can be decrypted.

[0155] When the encoded packet C after removing information of already received packets from the encoded packet contains only one packet, the receiver 2 converts the encoded packet C into one packet PKT_N according to the following equation.

[0156]

number

[0157] In this case, the receiver 2 substitutes the coded packet C from which the information of the already received packet has been removed into "Y" in equation (13), and substitutes one code C included in any of the coded packets C from which the information of the already received packet has been removed into "C" in equation (13). Note that the calculation of equation (13) is performed in the Galois field GF(2 n ) is an operation on

[0158] 10 is a diagram for explaining another method of transmitting packets constituting a burst. Referring to FIG. 10, the processing means 12, as explained in FIG. 1 ~P 6 Each time the encoded packet C 1 ~C 6 Generate.

[0159] The processing means 12 processes the packet P 2 When packet P 2 Copy the encoded packet C 1 Packet P 2 and combine the packets P 2 / C 1 Then, the generated combined packet P 2 / C 1 to the transmitting means 13 to generate a combined packet P 2 / C 1 is transmitted to receiver 2.

[0160] Then, the processing means 12 processes the encoded packet C 2 and generate a packet P 3 When packet P 3 Copy the encoded packet C 2 Packet P 3 and combine the packets P 3 / C 2 Then, the generated combined packet P 3 / C 2 to the transmitting means 13 to generate a combined packet P 3 / C 2 is transmitted to receiver 2.

[0161] Furthermore, the processing means 12 processes the encoded packet C 3 and generate a packet P 4 When packet P 4 Copy the encoded packet C 3 Packet P 4 and combine the packets P 4 / C 3 Then, the generated combined packet P 4 / C 3 to the transmitting means 13 to generate a combined packet P 4 / C 3 is transmitted to receiver 2.

[0162] Furthermore, the processing means 12 processes the encoded packet C 4 and generate a packet P5 When packet P 5 Copy the encoded packet C 4 Packet P 5 and combine the packets P 5 / C 4 Then, the generated combined packet P 5 / C 4 to the transmitting means 13 to generate a combined packet P 5 / C 4 is transmitted to receiver 2.

[0163] Furthermore, the processing means 12 processes the encoded packet C 5 and generate a packet P 6 When packet P 6 Copy the encoded packet C 5 Packet P 6 and combine the packets P 6 / C 5 Then, the generated combined packet P 6 / C 5 to the transmitting means 13 to generate a combined packet P 6 / C 5 The encoded packet C is transmitted to the receiver 2. 5 is the packet P 1 ~P 5 (see equation (5)), the burst consists of packets P 1 ~P 6 The last packet P that arrived at sender 1 6 When generating a combined packet by adding the encoded packet C to all packets P stored in the buffer 11, the encoded packet C is 1 ~P 6 Therefore, the combined packet P 6 / C 5 Encoded packet C in 5 is not the above formula (5), but the packet P 1 ~P 6 Includes all of the above.

[0164] In this way, the transmission of coded packets by Piggyback is performed by dividing the packets P 1 ~P 6 Packet P 2 ~P 6 This may be performed in each of the above.

[0165] Combined packet P 6 / C 5 After transmitting the encoded packet C to the receiver 2, the processing means 12, as explained in FIG. 6 ~C 8 are each transmitted independently to receiver 2.

[0166] FIG. 11 is a diagram for explaining still another method of transmitting packets that constitute a burst.

[0167] 11, the processing means 12 processes the packet P 1 ~P 6 Each time the encoded packet C 1 ~C 6 Generate.

[0168] The processing means 12 processes the packet P 2 ~P 5 At the timing when each of them arrives at the transmitter 1, each of the encoded packets C 1 ~C 4 Packet P 2 ~P 5 Without giving 2 ~P 5 are each transmitted independently to receiver 2.

[0169] Then, the processing means 12 processes the packet P 6 arrives at sender 1, the encoded packet C 5 Packet P 6 and combine the packets P 6 / C 5 Then, the generated combined packet P 6 / C 5 to the transmitting means 13 to generate a combined packet P6 / C 5 to the receiver 2. In this case, the encoded packet P 5 is not the above formula (5), but the packet P 1 ~P 6 Includes all of the above.

[0170] In this way, the transmission of coded packets by Piggyback is performed by dividing the packets P 1 ~P 6 The last packet P 6 It may be performed only in

[0171] Combined packet P 6 / C 5 After transmitting the encoded packet C to the receiver 2, the processing means 12, as explained in FIG. 6 ~C 8 are each transmitted independently to receiver 2.

[0172] As described with reference to FIGS. 9 to 11, in the embodiment of the present invention, the transmission of encoded packets by combined packets (i.e., the transmission of encoded packets by Piggyback) is performed by dividing the packets P 1 ~P 6 Among them, packet P 2 ~P 6 It is sufficient that the process is executed at the timing when one or more packets selected from arrive at the transmitter 1.

[0173] FIG. 12 is a flowchart for explaining the operation of the transmitter 1 shown in FIGS.

[0174] 12, when the operation of the transmitter 1 is started, the processing means 12 sets the sequence number SN to SN=0 (step S1). Then, the processing means 12 determines whether or not a packet has arrived at the buffer 11 (step S2).

[0175] When it is determined in step S2 that packet PKT_N has arrived at the buffer 11, the processing means 12 sets SN=SN+1 (step S3), adds the sequence number SN and the packet length L to packet PKT_N, and copies the sequence number SN, the packet length L, and packet PKT_N to the buffer 11 (step S4). Note that by executing step S3, the sequence number SN, which indicates the order in which the packet arrived at the buffer 11 (i.e., the transmitter 1), is stored in the buffer 11 together with packet PKT_N and the packet length L.

[0176] After that, the processing means 12 judges whether to transmit the encoded packet C or not (step S5). As explained in FIG. 9 to FIG. 12, the transmission of the encoded packet by the combined packet (i.e., the transmission of the encoded packet by the Piggyback) is performed by dividing the packets P 1 ~P 6 Among them, packet P 2 ~P 6 , which is executed when one or more packets selected from the packet P Piggyback is determined in advance, and the determined packet P Piggyback arrives at the buffer 11 (i.e. the transmitter 1), the processing means 12 decides to transmit the encoded packet C and Piggyback When a packet other than the packet C arrives at the buffer 11 (that is, the transmitter 1), it is determined that the encoded packet C is not to be transmitted.

[0177] When it is determined in step S5 that the encoded packet C is to be transmitted, the encoded packet is added to the N packet PKT_N (step S6) to generate a combined packet.

[0178] Then, when it is determined in step S5 that the encoded packet C is not to be transmitted, or after step S6, the processing means 12 outputs the packet to the transmitting means 13, and the transmitting means 13 transmits the packet from the processing means 12 to the receiver 2 via the antenna 14 (step S7).

[0179] Thereafter, the processing means 12 generates the encoded packets C from the packets stored in the buffer 11 by the method described above (step S8).

[0180] Then, the series of operations proceeds to step S2.

[0181] On the other hand, when it is determined in step S2 that the packet has not arrived at the buffer 11, the processing means 12 determines whether or not T milliseconds have elapsed since the last packet arrived at the buffer 11 (step S9).

[0182] When it is determined in step S9 that T milliseconds have passed since the last packet arrived at the buffer 11, the processing means 12 outputs the encoded packet C to the transmitting means 13, and the transmitting means 13 transmits the encoded packet C received from the processing means 12 to the receiver 2 via the antenna 14 (step S10).

[0183] After that, the processing means 12 judges whether the number of transmissions of the encoded packet C is K or not (step S11).

[0184] When it is determined in step S11 that the number of transmissions of encoded packets C is not K, the processing means 12 generates encoded packets C from the packets stored in the buffer 11 (step S12). After that, the series of operations proceeds to step S10, and steps S10 to S12 are repeatedly executed until it is determined in step S11 that the number of transmissions of encoded packets C is K.

[0185] Then, when it is determined in step S11 that the number of transmitted encoded packets C is K, the processing means 12 clears the buffer 11 (step S13). After that, the series of operations proceeds to step S2. Also, when it is determined in step S9 that T milliseconds have not elapsed since the last packet arrived at the buffer 11, the series of operations proceeds to step S2.

[0186] FIG. 13 is a flowchart for explaining the detailed operation of step S8 shown in FIG.

[0187] 13, after step S7 in Fig. 12, the processing means 12 sets i=1 (step S81), where i is an argument indicating the sequence number SN of each packet stored in the buffer 11 at the time when step S8 in Fig. 12 is executed. And, i=1 represents the oldest packet among the packets stored in the buffer 11.

[0188] After step S81, the processing means 12 generates an encoded packet Y consisting of “000...0” having a length of n bits. 0 ={000...0} (step S82).

[0189] Then, the processing means 12 reads the packet X from the buffer 11. i is obtained (step S83).

[0190] Then, the processing means 12 calculates the Galois field (GF(2 n )) to generate n-bit random numbers, and then convert the generated n-bit random numbers into C i (step S84).

[0191] Then, the processing means 12 i Each element of X i,1 ~X i,Li×8 / n C i Multiply by C i X i and Y i-1 That is, the processing means 12 calculates Yi is calculated (step S85).

[0192]

number

[0193] Subsequently, the processing means 12 i Sequence number SN i , packet length L i and code C i is added to the Coded info (step S86).

[0194] Then, the processing means 12 judges whether or not i=I (step S87), where I indicates the maximum value of the sequence number SN of the packets stored in the buffer 11 at the time when step S8 in FIG. 12 is executed.

[0195] When it is determined in step S87 that i is not equal to I, the processing means 12 sets i to i+1 (step S88). After that, the series of operations proceeds to step S83, and steps S83 to S88 are repeatedly executed until it is determined in step S87 that i is equal to I.

[0196] Then, in step S87, when it is determined that i=I, the processing means 12 i and the coded info (step S89).

[0197] After that, the series of operations proceeds to step S2 in FIG.

[0198] Note that the detailed operation of step S12 in Fig. 12 is also executed according to the flowchart shown in Fig. 13. In this case, when it is determined in step S11 in Fig. 12 that the number of transmitted encoded packets is not K, steps S81 to S89 are executed in sequence, and after step S89, the series of operations proceeds to step S10 in Fig. 12.

[0199] As long as the transmitter 1 is driven, it repeatedly executes steps S1 to S13 shown in FIG. 12 (including the flowchart shown in FIG. 13).

[0200] In the flowchart shown in FIG. 12 (including the flowchart shown in FIG. 13), after step S1 is executed, when the processing means 12 determines in step S2 that a packet PKT_N(1) that does not constitute a burst (a packet indicating a P picture shown in FIG. 4) has arrived at the buffer 11, it sequentially executes the above-mentioned steps S3 and S4, and then determines in step S5 not to transmit the encoded packet C, and transmits the packet PKT_N(1) to the receiver 2 via the transmitting means 13 and the antenna 14 in step S7.

[0201] Thereafter, the processing means 12 generates the encoded packet C in step S8, and after step S8, the series of operations proceeds to step S2.

[0202] Then, in step S2, each time the processing means 12 determines that a packet PKT_N (a packet indicating a P picture shown in FIG. 4) that does not constitute a burst has arrived at the buffer 11, it sequentially executes steps S3, S4, "NO" in step S5, and step S7 to transmit a single packet PKT_N to the receiver 2, and in step S8 generates an encoded packet C. After that, the series of operations proceeds to step S2.

[0203] In addition, in step S8, a packet PKT_N(1) that does not constitute a burst is encoded to generate an encoded packet, and if in step S2 it is determined that no packet has arrived, and in step S9 it is determined that T milliseconds have passed since the last packet arrived at buffer 11, then the encoded packet (consisting of approximately N packets) will be transmitted K times (see steps S10 to S12).

[0204] Next, packets constituting a burst (for example, packet P shown in FIG. 9) 1 ~P6 The operation of the transmitter 1 when a packet (either one of the above) arrives at the buffer 11 will be described.

[0205] In step S2, the processing means 12 1 has arrived at the buffer 11, and after sequentially executing the above-mentioned steps S3 and S4, it is determined in step S5 that the encoded packet C is not to be transmitted, and in step S7, 1 is transmitted to the receiver 2 via the transmitting means 13 and the antenna 14.

[0206] Then, in step S8, the processing means 12 1 An encoded packet C containing 1 Then, the process proceeds to step S2.

[0207] Then, in step S2, the processing means 12 2 has arrived at the buffer 11, and after sequentially executing the above-mentioned steps S3 and S4, it is determined in step S5 that the encoded packet C is not to be transmitted, and in step S7, 2 to the receiver 2 via the transmitting means 13 and the antenna 14. Then, in step S8, the processing means 12 transmits the packet P 1 ,P 2 An encoded packet C containing 2 After that, the series of operations proceeds to step S2.

[0208] Subsequently, in step S2, the processing means 12 3 has arrived at the buffer 11, and after sequentially executing the above-mentioned steps S3 and S4, in step S5, 1 ) is transmitted, and in step S6, the encoded packet C 2 Packet P 3 and combine the packets P 3 / C 2Then, in step S7, the processing means 12 transmits the combined packet P 3 / C 2 to the receiver 2. Then, in step S8, the processing means 12 transmits the packet P 1 ~P 3 An encoded packet C containing 3 Then, the series of operations proceeds to step S2.

[0209] The processing means 12 processes the encoded packet C 3 After generating the packet P 4 has arrived at the buffer 11, and after sequentially executing the above-mentioned steps S3 and S4, it is determined in step S5 that the encoded packet C is not to be transmitted, and in step S7, 4 to the receiver 2 via the transmitting means 13 and the antenna 14. Then, in step S8, the processing means 12 transmits the packet P 1 ~P 4 An encoded packet C containing 4 After that, the series of operations proceeds to step S2.

[0210] The processing means 12 processes the encoded packet C 4 After generating the packet P 5 has arrived at the buffer 11, and after sequentially executing the above-mentioned steps S3 and S4, it is determined in step S5 that the encoded packet C is to be transmitted, and in step S6, 4 Packet P 5 and combine the packets P 5 / C 4 Then, in step S7, the processing means 12 generates the combined packet P 5 / C 4 is transmitted to the receiver 2 via the transmitting means 13 and the antenna 14.

[0211] Then, in step S8, the processing means 12 1 ~P 5An encoded packet C containing 5 Then, the series of operations proceeds to step S2.

[0212] The processing means 12 processes the encoded packet C 5 After generating the packet P 6 has arrived at the buffer 11, and after sequentially executing the above-mentioned steps S3 and S4, it is determined in step S5 that the encoded packet C is not to be transmitted, and in step S7, 6 to the receiver 2 via the transmitting means 13 and the antenna 14. Then, in step S8, the processing means 12 transmits the packet P 1 ~P 6 An encoded packet C containing 6 After that, the series of operations proceeds to step S2.

[0213] Subsequently, in step S2, the processing means 12 determines that no packet has arrived at the buffer 11, and in step S9, the processing means 12 6 After the arrival of the encoded packet C in the buffer 11, it is determined that T milliseconds have elapsed, and in step S10, 6 to the receiver 2 via the transmitting means 13 and the antenna 14. Then, in step S11, the processing means 12 determines that the number of transmissions of the encoded packet C is not K (=3), and in step S12, 1 ~P 6 From packet P 1 ~P 6 An encoded packet C containing 7 Generate.

[0214] Then, in step S10, the processing means 12 7 is transmitted to the receiver 2 via the transmitting means 13 and the antenna 14.

[0215] Subsequently, in step S11, the processing means 12 determines that the number of transmissions of the encoded packet C is not K (=3), and in step S12, 1 ~P 6 From packet P 1 ~P 6 An encoded packet C containing 8 Generate.

[0216] Then, in step S10, the processing means 12 8 is transmitted to the receiver 2 via the transmitting means 13 and the antenna 14.

[0217] Then, the processing means 12 determines in step S11 that the number of transmitted encoded packets C is K (=3), and clears the buffer 11 in step S13.

[0218] In the flowchart shown in FIG. 12, the number of transmitted encoded packets in step S11 is the number of encoded packets transmitted in step S10, and does not include the number of encoded packets transmitted in the combined packet in step S7.

[0219] As explained in FIG. 8(a), the number of packets constituting a burst, M Burst is the size of buffer 11, M Buffer If it is determined in step S2 of FIG. 12 that a packet has not arrived, the packet P 1 ~P 6 is stored in the buffer 11, the processing means 12 in step S12 1 ~P 6 A coded packet C including all of 7 ,C 8 As a result, in step S7, the encoded packet (encoded packet C 1 ~C 5 ) or a single packet (packet P in Fig. 9) 1 ,P 2 ,P4 ,P 6 Even if the receiver 2 cannot receive the packets (packets P 1 ~P 6 The number of coded packets (coded packets C 7 ,C 8 By determining “K” to transmit the packet that receiver 2 was unable to receive (packet P 1 ~P 6 It can decrypt some packets.

[0220] Furthermore, as explained in FIG. 8B, the number of packets constituting a burst, M Burst is the size of buffer 11, M Buffer If ,then, ...as shown in Fig. 10, 2 ~P 10 When each of these arrives at transmitter 1, packet P 2 ~P 10 , respectively, the encoded packet C 1 ~C 9 The combined packet P 2 / C 1 ,P 3 / C 2 ,P 4 / C 3 ,P 5 / C 4 ,P 6 / C 5 ,P 7 / C 6 ,P 8 / C 7 ,P 9 / C 8 ,P 10 / C 9 to receiver 2, the encoded packet C 1 ~C 9 is expressed by the following equation:

[0221]

number

[0222] In equation (15), the coding packet C 6 ~C 9 The number of packets in is 6 because the maximum number of packets that can be stored in the buffer 11, M Buffer Since is “6”, packet P 7 When is copied to buffer 11, packet P 1 ~P 6 is packet P 2 ~P 7 is overwritten by packet P 8 When is copied to buffer 11, packet P 2 ~P 7 is packet P 3 ~P 8 is overwritten by packet P 9 When is copied to buffer 11, packet P 3 ~P 8 is packet P 4 ~P 9 will be overwritten by

[0223] And a single packet P 1 and the combined packet P 2 / C 1 ,P 3 / C 2 ,P 4 / C 3 ,P 5 / C 4 ,P 6 / C 5 ,P 7 / C 6 ,P 8 / C 7 ,P 9 / C 8 ,P 10 / C 9 is transmitted in step S7 of FIG.

[0224] Single packet P 1 and the combined packet P 2 / C 1 ,P 3 / C 2 ,P 4 / C 3 ,P5 / C 4 ,P 6 / C 5 ,P 7 / C 6 ,P 8 / C 7 ,P 9 / C 8 ,P 10 / C 9 If half of the number of packets (=10) cannot be received by receiver 2, the 9 combined packets P 2 / C 1 ,P 3 / C 2 ,P 4 / C 3 ,P 5 / C 4 ,P 6 / C 5 ,P 7 / C 6 ,P 8 / C 7 ,P 9 / C 8 ,P 10 / C 9 Of these, at least four combined packets can be received by receiver 2.

[0225] In this case, receiver 2 receives packet P 1 and four combined packets P 2 / C 1 ,P 3 / C 2 ,P 4 / C 3 ,P 5 / C 4 and 5 combined packets P 6 / C 5 ,P 7 / C 6 ,P 8 / C 7 ,P 9 / C 8 ,P 10 / C 9 If receiver 2 cannot receive packet P 6 ~P 10 Cannot receive packet P 1 ~P 5 This means that the message was received.

[0226] However, the transmitter 1 repeats steps S10 to S12 in FIG. 12 five times to obtain the packet P 5 ~P 10 Five coded packets C containing 10 ~C 14 can be sent to receiver 2. Five encoded packets C 10 ~C 14 is expressed by the following equation:

[0227]

number

[0228] Then, the receiver 2 obtains, for example, four encoded packets C 10 ~C 13 , and four encoded packets C 10 ~C 13 Packet P received from 5 The information is removed and the encoded packet C 10 ',C 11 ',C 12 ',C 13 '. Generate the encoded packet C 10 ',C 11 ',C 12 ',C 13 Each of the 4 packets P 6 ~P 10 Therefore, the packet P 6 ~P 10 can be decrypted.

[0229]

number

[0230] Also, receiver 2 receives packet P 1 and 5 combined packets P 6 / C 5 ,P 7 / C 6 ,P 8 / C 7 ,P 9 / C 8 ,P 10 / C 9 and 4 combined packets P 2 / C 1 ,P 3 / C 2 ,P 4 / C 3 ,P 5 / C 4 If packet P 2 ~P 5 This means that the message could not be received.

[0231] Then, the number of packets that could not be received is "4", so the encoded packet C 5 ~C 9 Four encoded packets C 6 ~C9 is selected, and the encoded packet C 6 ~C 9 Packet P received from 1 ,P 6 ~P 9 The information of the received packet P 1 ,P 6 ~P 9 The encoded packet C with the information of 6 '~C 9 Packet P' is calculated by solving the simultaneous equations 2 ~P 5 can be decrypted.

[0232] In this way, the number of packets that make up a burst, M Burst is the size of buffer 11, M Buffer Even if the received packet is larger than 1, the receiver 2 can decode the packet that it was unable to receive.

[0233] Furthermore, in the flowchart shown in FIG. 12 (including the flowchart shown in FIG. 13), the transmitter 1 transmits a packet P 1 ~P 6 Each time a packet arrives at the transmitter 1, it transmits a single packet or a combined packet (including an encoded packet) to the receiver 2. Therefore, the plurality of packets P constituting the burst are 1 ~P6 can be transmitted to receiver 2 with low latency.

[0234] The transmitter 1 transmits packets constituting a burst (packet P 1 ~P 6 4) to receiver 2, if it is determined that a packet PKT_N (a packet indicating a P picture shown in FIG. 4) that does not constitute a burst has arrived at buffer 11, then the packet PKT_N (a packet indicating a P picture shown in FIG. 4) that does not constitute a burst is transmitted to receiver 2 by the method described above.

[0235] In this way, the transmitter 1 transmits packets that do not constitute a burst and packets that constitute a burst to the receiver 2 in accordance with the flowchart shown in FIG. 12 (including the flowchart shown in FIG. 13).

[0236] FIG. 14 is a flowchart for explaining the operation of the receiver 2 shown in FIGS.

[0237] 14, when the operation of the receiver 2 is started, the receiving means 22 receives a packet via the antenna 21 ("YES" in step S21), and outputs the received packet to the processing means .

[0238] The processing means 23 receives the packet PKT from the receiving means 22, and judges whether the received packet PKT is an N packet PKT_N, thereby judging whether the N packet PKT_N has been received (step S22). In this case, the processing means 23 judges that the N packet PKT_N has been received when the identifier N / C of the Packet info of the packet PKT consists of "N" and the packet PKT does not include the Coded info and the area REG2, and judges that the N packet PKT_N has not been received when the identifier N / C of the Packet info of the packet PKT consists of "C" or when the identifier N / C of the Packet info of the packet PKT consists of "N" and the identifier N / C of the Coded info consists of "C".

[0239] When it is determined in step S22 that N packet PKT_N has not been received, the processing means 23 determines whether or not a combined packet (a packet transmitted by Piggyback) has been received (step S23). In this case, the processing means 23 determines that a combined packet has been received when the identifier N / C of the Packet info of the packet PKT is "N" and the identifier N / C of the Coded info of the packet PKT is "C", and determines that a combined packet has not been received when the identifier N / C of the Packet info of the packet PKT is "C".

[0240] When it is determined in step S23 that the combined packet has been received, the processing means 23 separates the N packet from the C packet (=encoded packet) (step S24).

[0241] After that, the processing means 23 judges whether or not there is an N packet PKT_N (step S25).

[0242] When it is determined in step S25 that there is an N packet PKT, or when it is determined in step S22 that an N packet PKT_N has been received, the processing means 23 executes an N packet reception process (step S26).

[0243] After that, the processing means 23 judges whether or not there is a C packet (=encoded packet) (step S27).

[0244] Then, when it is determined in step S23 that a combined packet has not been received, or when it is determined in step S25 that an N packet PKT_N is not present, or when it is determined in step S27 that a C packet (=encoded packet) is present, the processing means 23 removes the information of the received N packet PKT_N from the C packet (=encoded packet) (step S28).

[0245] Then, the processing means 23 executes the decryption process (step S29). Then, the processing means 23 determines whether the decryption is successful (step S30).

[0246] When it is determined in step S30 that the decoding has been successful, steps S29 and S30 are repeatedly executed until it is determined in step S30 that the decoding has not been successful.

[0247] Then, when it is determined in step S27 that there is no C packet (=encoded packet), or when it is determined in step S30 that decoding has not been possible, the series of operations proceeds to step S21. After that, the receiver 2 repeatedly executes steps S21 to S30 as long as it is driven.

[0248] In addition, when it is determined in step S23 that the combined packet has not been received, the series of operations proceeds to step S28 because the packets received by receiver 2 are three types: N packet PKT_N, encoded packet PKT_C, and combined packet, and since it is determined in step S22 that N packet PKT_N has not been received and furthermore it is determined in step S23 that the combined packet has not been received, the packet received by receiver 2 is encoded packet PKT_C.

[0249] FIG. 15 is a flowchart for explaining the detailed operation of step S26 shown in FIG.

[0250] 15, when it is determined in step S22 of FIG. 14 that the N packet PKT_N has been received, or when it is determined in step S25 of FIG. 14 that the N packet PKT_N is present, the processing means 23 calculates the sequence number SN of the received N packet PKT_N. rx The sequence number SN of N packets PKT_N that have been received and sent to the application 30 sent(that is, the sequence number of the N packet stored in the N buffer 24) or less, or whether the received N packet PKT_N has already been stored in the N buffer 24 (step S261).

[0251] In step S261, the sequence number SN of the received N packets PKT_N is rx The sequence number SN of N packets PKT_N that have been received and sent to the application 30 sent If it is determined that the number is equal to or less than this number, or if it is determined that the received N packet PKT_N has already been stored in the N buffer 24, the processing means 23 discards the received N packet PKT_N (step S262).

[0252] On the other hand, in step S261, the sequence number SN of the received N packets PKT_N is rx The sequence number SN of N packets PKT_N that have been received and sent to the application 30 sent If it is determined that the received N packet PKT_N is not equal to or less than the N buffer 24 and that the received N packet PKT_N has not been stored in the N buffer 24, the processing means 23 rx ) is stored in N buffer 24 (step S263).

[0253] Then, the processing means 23 sets i=1 (step S264) and the sequence number SN sent It is determined whether or not a packet PKT_N having +i exists in the N buffer 24 (step S265), where i is an integer of 1, 2, 3, . . .

[0254] In step S265, the sequence number SN sent When it is determined that a packet PKT_N having sequence number SN+i is present in the N buffer 24, the processing means 23 sentThe processing means 23 then transmits the packet PKT_N having the sequence number SN+i to the application 30 (step S266). Then, the processing means 23 sets i=i+1 (step S267). After that, the series of operations proceeds to step S265, where the packet PKT_N having the sequence number SN+i is sent Steps S265 to S267 are repeatedly executed until it is determined that the packet PKT_N having +i is not present in the N buffer 24.

[0255] Then, in step S265, the sequence number SN sent If it is determined that the packet PKT_N having the packet number +i is not present in the N buffer 24, the processing means 23 sent =SN sent Set +i-1 (step S268).

[0256] After step S262 or step S268, the sequence of operations proceeds to step S27 in FIG.

[0257] Steps S263 to S267 shown in FIG. 15 are steps for storing a newly received N packet PKT_N in the N buffer 24 and transmitting it to the application 30. When i≧2, in step S265, the sequence number SN sent If it is determined that the packet PKT_N having the sequence number SN+i does not exist in the N buffer 24, then in step S268, the latest sequence number SN+i of the received N packet PKT_N in the N buffer 24 is sent will be updated.

[0258] FIG. 16 is a flowchart for explaining the detailed operation of step S28 shown in FIG.

[0259] 16, when it is determined in step S23 of FIG. 14 that a combined packet has not been received, or when it is determined in step S25 of FIG. 14 that an N packet does not exist, or when it is determined in step S27 of FIG. 14 that a C packet (encoded packet) exists, the processing means 23 sets i=1 (step S281) and retrieves packet X from the N buffer 24. i Here, i is the number of packets X stored in the N buffer 24 (step S282). i , which is 1 to I. I is the number of packets X stored in the N buffer 24. i This is the total number of.

[0260] After step S282, the processing means 23 i It is determined whether the sequence number SN of the encoded packet Y is included in the Coded info of the encoded packet Y (step S283).

[0261] In step S283, packet X i When it is determined that the sequence number SN of the coded packet Y is included in the Coded info of the coded packet Y, the processing means 23 performs i By performing an exclusive OR operation with the encoded packet Y, the received packet X is obtained. i The information is removed (step S284).

[0262] Then, in step S283, packet X i When it is determined that the sequence number SN of I is not included in the Coded info of the encoded packet Y, or after step S284, the processing means 23 determines whether or not i=I (step S285).

[0263] When it is determined in step S285 that i is not equal to I, the processing means 23 sets i to i+1 (step S286). After that, the series of operations proceeds to step S282, and steps S282 to S286 are repeatedly executed until it is determined in step S285 that i is equal to I.

[0264] Then, when it is determined in step S285 that i=I, the processing means 23 determines whether or not all of the information contained in the encoded packet Y has been received (step S287). In this case, when encoded packet Y is Y={000...0}, the processing means 23 determines that all of the information contained in encoded packet Y has been received, and when encoded packet Y is not Y={000...0}, the processing means 23 determines that all of the information contained in encoded packet Y has not been received (i.e., some of the information contained in encoded packet Y has not been received).

[0265] When it is determined in step S287 that not all of the information contained in the encoded packet Y has been received, the processing means 23 determines whether the number of N packets contained in the encoded packet Y is “1” (step S288).

[0266] When it is determined in step S288 that the number of N packets included in the encoded packet Y is not "1", the processing means 23 stores the encoded packet Y in the C buffer 25 (step S289).

[0267] On the other hand, when it is determined in step S288 that the number of N packets contained in the encoded packet Y is “1”, the processing means 23 converts the encoded packet Y into packet X by equation (13) and executes the above-mentioned “N packet receiving process” (flowchart shown in FIG. 15) on the converted packet X (step S290).

[0268] Then, when it is determined in step S287 that all of the information contained in encoded packet Y has been received, or after step S289, or after step S290, the series of operations proceeds to step S29 in FIG.

[0269] In the flowchart shown in FIG. 16, steps S282 to S286 are repeatedly executed until it is determined in step S285 that i=I, and thus all packets X1 through Y1 that have already been received are processed. 1 ~X I That is, steps S282 to S286 are repeatedly executed until it is determined in step S285 that i=I, thereby generating encoded packet C including only a plurality of packets not stored in N buffer 24 (=a plurality of packets not yet received).

[0270] FIG. 17 is a flowchart for explaining the detailed operation of step S29 shown in FIG.

[0271] Referring to FIG. 17, after step S28 in FIG. 14 or when it is determined in step S30 that decoding has been successful, the processing means 23 determines whether or not two or more encoded packets Y are present in the C buffer 25 (step S291).

[0272] When it is determined in step S291 that two or more encoded packets Y are not present in the C buffer 25, the series of operations proceeds to step S21 in FIG.

[0273] On the other hand, when it is determined in step S291 that two or more encoded packets Y are present in the C buffer 25, the processing means 23 sets i=1 (step S292). Here, i is the number of encoded packets Y stored in the C buffer 25. i , which is 1 to I. I is the number of encoded packets Y stored in the C buffer 25. i This is the total number of.

[0274] After step S292, the processing means 23 reads the encoded packet Y i (step S293).

[0275] Then, the processing means 23 processes the encoded packet Y i"From the encoded packet, received packet X i Then, "Remove information" (flowchart in FIG. 16) is executed (step S294).

[0276] Then, the processing means 23 processes the encoded packet Y i It is determined whether the number of N packets included in is equal to or less than "1" (step S295).

[0277] In step S295, the encoded packet Y i is determined to be equal to or smaller than "1", the processing means 23 i is erased from the C buffer 25 (step S296).

[0278] Then, in step S295, the encoded packet Y i is not equal to or less than "1", or after step S296, the processing means 23 determines whether i=I (step S297).

[0279] When it is determined in step S297 that i is not equal to I, the processing means 23 sets i to i+1 (step S298). After that, the series of operations proceeds to step S293, and steps S293 to S298 are repeatedly executed until it is determined in step S297 that i is equal to I.

[0280] Then, when it is judged in step S297 that i=I, the processing means 23 judges whether or not a plurality of encoded packets C including a plurality of N packets exist in the C buffer 25 (step S299).

[0281] In step S299, when it is determined that there are multiple encoded packets C, each containing multiple N packets, in the C buffer 25, the processing means 23 acquires multiple encoded packets Y from the C buffer 25 and solves the simultaneous equations representing the acquired multiple encoded packets Y to decode the C packets (encoded packets) (step S300).

[0282] Then, in step S299, when it is determined that there are not multiple encoded packets C containing multiple N packets in the C buffer 25, or after step S300, the processing means 23 sets i=1 (step S301) and determines whether the number of N packets that have been decoded is greater than or equal to "i" (step S302).

[0283] When it is determined in step S302 that the number of N packets that have been decoded is equal to or greater than "i", the processing means 23 executes "N packet reception processing" (flowchart in FIG. 15) on the decoded N packets (step S303). Then, the processing means 23 sets i=i+1 (step S304). Thereafter, the series of operations proceeds to step S302, and steps S302 to S304 are repeatedly executed until it is determined in step S302 that the number of N packets that have been decoded is not equal to or greater than "i".

[0284] Then, if it is determined in step S302 that the number of N packets that have been successfully decoded is not equal to or greater than "i", the process proceeds to step S30 in FIG.

[0285] In the flowchart shown in Figure 17, if the flow proceeds to step S291 after it is determined in step S287 of Figure 16 that all of the information contained in the encoded packet Y has been received, or after step S290, it is determined in step S291 that two or more encoded packets Y are not present in the C buffer 25, and the series of operations proceeds to step S21 of Figure 14.

[0286] On the other hand, when the process proceeds to step S291 after step S289 in FIG. 16, if it is determined in step S291 that two or more encoded packets Y are present in the C buffer 25, the above-mentioned steps S292 to S304 are executed in sequence, and if it is determined in step S291 that two or more encoded packets Y are not present in the C buffer 25, the series of operations proceeds to step S21 in FIG. 14.

[0287] Also, in the flowchart shown in FIG. 17, steps S302 to S304 are repeatedly executed until it is determined in step S302 that the number of N packets that have been successfully decoded is not equal to or greater than i, in order to execute the "N packet reception process" (flowchart in FIG. 15) for all N packets obtained by decoding the encoded packet C.

[0288] FIG. 18 is a diagram showing the transition of the N buffer 24 and the C buffer 25 when packets constituting a burst are received.

[0289] In addition, in FIG. 18, the packets constituting the burst are packets P 1 ~P 6 1 shows the transition of the N buffer 24 and the C buffer 25 when packets constituting a burst are received in the case where the burst consists of packets.

[0290] Referring to FIG. 18, a transmitter 1 transmits a packet P 1 When the receiver 2 transmits the packet P 1 Since the reception of packet P fails, in step S21 of FIG. 14, the receiving means 22 of the receiver 2 1 As a result, no packets are stored in the N buffer 24 and the C buffer 25 (see (a) of FIG. 18).

[0291] Then, sender 1 sends packet P 2 When the packet P 2 (see "YES" in step S21 of FIG. 14), and the received packet P 2 is output to the processing means 23.

[0292] The processing means 23 processes the packet P 2 When the packet P 2Then, the processing means 23 confirms that the identifier N / C of the packet info of the packet P is "N" and determines that the N packets have been received (see "YES" in step S22 of FIG. 14). 2 14, executes N packet reception processing for packet P 2 Sequence number SN rx The sequence number SN of N packets PKT_N that have been received and sent to the application 30 sent (i.e., the sequence number of the N packet stored in the N buffer 24) and that the received packet has not been stored in the N buffer 24 (see "NO" in step S261 in FIG. 15), and 2 is stored in the N buffer 24 and the packet P 2 to the application 30 (see steps S263 to S266 in FIG. 15). Then, when i=2, the processing means 23 transmits SN sent +i(=SN sent +2) is not present in the N buffer 24 (see "NO" in step S265 of FIG. 15), sent =SN sent +i-1=SN sent +2-1=SN sent +1, the sequence number SN of N packet PKT_N stored in N buffer 24 sent (see step S268 in FIG. 15). After that, the processing means 23 determines that there is no C packet (see "NO" in step S27 in FIG. 14), and the operation of the receiver 2 moves to step S21 in FIG. 14. At this stage, the packet P 2 is stored in the N buffer 24 (see FIG. 18(b)).

[0293] Subsequently, the transmitter 1 sends a combined packet P 3 / C 2 When the receiver 2 sends 3 / C 2 Since the reception of the combined packet P fails, in step S21 of FIG. 14, the receiving means 22 of the receiver 2 receives the combined packet P 3 / C 2As a result, the states of the N buffer 24 and the C buffer 25 do not change (see (c) of FIG. 18).

[0294] Then, sender 1 sends packet P 4 When the receiver 2 transmits the packet P 2 As a result, the packet P 4 is stored in the N buffer 24 (see FIG. 18(d)).

[0295] Then, the transmitter 1 sends the combined packet P 5 / C 4 When the receiver 2 transmits the combined packet P 5 / C 4 (see "YES" in step S21 of FIG. 14), and the received combined packet P 5 / C 4 is output to the processing means 23.

[0296] The processing means 23 processes the combined packet P 5 / C 4 When the combined packet P 5 / C 4 The control unit 11 confirms that the identifier N / C of the Packet info is "N" and that the identifier N / C of the Coded info is "C", and determines that N packet PKT_N has not been received (see "NO" in step S22 of FIG. 14), and also determines that a combined packet has been received (see "YES" in step S23 of FIG. 14).

[0297] Then, the processing means 23 processes the combined packet P 5 / C 4 N packets of P 5 and the encoded packet C 4 (see step S24 in FIG. 14), and it is determined that N packets are present (see "YES" in step S25 in FIG. 14), and packet P 5 Then, in the N packet reception process, the processing means 23 executes N packet reception process for the packet P5 Sequence number SN rx The sequence number SN of N packets PKT_N that have been received and sent to the application 30 sent (i.e., the sequence number of the N packet stored in the N buffer 24) and it is determined that the received packet is not stored in the N buffer 24 (see "NO" in step S261 of FIG. 15), and 5 is stored in the N buffer 24 and the packet P 5 to the application 30 (see steps S263 to S266 in FIG. 15). Then, the processing means 23 transfers SN to the N buffer 24 when i=2. sent +i(=SN sent +2) packet does not exist (see "NO" in step S265 of FIG. 15), sent =SN sent +i-1=SN sent +2-1=SN sent +1, the sequence number SN of N packet PKT_N stored in N buffer 24 sent (see step S268 in FIG. 15). Thereafter, the processing means 23 determines that a C packet is present (see "YES" in step S27 in FIG. 14), and removes the information of the already received N packet from the C packet (see step S28 in FIG. 14). At this point, the N buffer 24 stores the packet P 2 ,P 4 ,P 5 (see (e) of FIG. 18) and the encoded packet C 4 is the packet P 1 ~P 4 Therefore, the processing means 23 processes the encoded packet C 4 and packet P 2 ,P 4 The encoded packet C is generated by sequentially calculating the exclusive OR with 4 Packet P received from 2 ,P 4 Then, the information is removed (see steps S282 to S286 in FIG. 16).

[0298] Encoded packet C 4 Packet P received from2 ,P 4 After removing the information, the encoded packet C 4 ' is expressed by equation (9). As a result, the processing means 23 processes the encoded packet C 4 has not yet received all of the information contained in the encoded packet C (see "NO" in step S287 of FIG. 16). 4 It is determined that the number of N packets included in the encoded packet C' is not "1" (see "NO" in step S288 of FIG. 16). 4 16. In this way, the N buffer 24 stores three packets P 2 ,P 4 ,P 5 The C buffer 25 stores one encoded packet C 4 ' is stored (see FIG. 18(e)).

[0299] After step S289 in FIG. 16, the operation of the receiver 2 proceeds to step S29 in FIG. 14, and in step S291 in FIG. 17 showing detailed operation of step S29 in FIG. 14, the processing means 23 determines that two or more encoded packets Y are not present in the C buffer 25, and the operation of the receiver 2 proceeds to step S21 in FIG. 14.

[0300] Then, sender 1 sends packet P 6 When the receiver 2 transmits the packet P 2 As a result, the packet P 6 is stored in the N buffer 24 (see FIG. 18(f)). Then, the packet P 6 After the C packet is stored in the N buffer 24, the processing means 23 determines that there is no C packet (see "NO" in step S27 in FIG. 14), and the operation of the receiver 2 moves to step S21 in FIG.

[0301] Subsequently, the transmitter 1 transmits the encoded packet C 6 When the encoded packet C is transmitted, the receiving means 22 of the receiver 2 receives the encoded packet C via the antenna 21. 6(see "YES" in step S21 of FIG. 14), and the received encoded packet C 6 is output to the processing means 23.

[0302] The processing means 23 processes the encoded packet C 6 When the encoded packet C is received from the receiving means 22, 6 Since the identifier N / C of the Packet info of is “C”, it is determined that N packets have not been received (see “NO” in step S22 of FIG. 14), and it is determined that a combined packet has not been received (see “NO” in step S23 of FIG. 14).

[0303] Therefore, the processing means 23 processes the encoded packet C 6 At this stage, the N buffer 24 removes information about packets P 2 ,P 4 ,P 5 ,P 6 is stored, and the encoded packet C 6 is the packet P 1 ~P 6 (see equation (6)), the processing means 23 processes the encoded packet C 6 and packet P 2 ,P 4 ,P 5 ,P 6 The encoded packet C is generated by sequentially calculating the exclusive OR with 6 Packet P received from 2 ,P 4 ,P 5 ,P 6 Then, the information is removed (see steps S282 to S286 in FIG. 16).

[0304] Encoded packet C 6 Packet P received from 2 ,P 4 ,P 5 ,P 6 After removing the information, the encoded packet C 6 ' is expressed by equation (10). As a result, the processing means 23 processes the encoded packet C 6has not yet received all of the information contained in the encoded packet C (see "NO" in step S287 of FIG. 16). 6 It is determined that the number of N packets included in the encoded packet C' is not "1" (see "NO" in step S288 of FIG. 16). 6 16. In this way, the N buffer 24 stores four packets P 2 ,P 4 ,P 5 ,P 6 The C buffer 25 stores two encoded packets C 4 ',C 6 ' is stored (see FIG. 18(g)).

[0305] Then, the processing means 23 judges that there are a plurality of encoded packets including a plurality of N packets (see "YES" in step S299 of FIG. 17), and 4 ' and the coding packet C 6 The C packet is decoded by solving the simultaneous equations with the equation (10) representing ' (see step S300 in FIG. 17). 1 ,P 3 is obtained.

[0306] Thereafter, the processing means 23 sets i=1 (see step S301 in FIG. 17), determines that the number of N packets that have been successfully decoded is equal to or greater than i (=1) (see "YES" in step S302 in FIG. 17), and 1 Then, in the N packet reception process, the processing means 23 executes the "N packet reception process" (the flow chart shown in FIG. 15) for the packet P 1 Sequence number SN rx The sequence number SN of N packets PKT_N that have been received and sent to the application 30 sent (i.e., the sequence number of the N packets stored in the N buffer 24) and is greater than the received packet (=packet P 1) has not been stored in the N buffer 24 (see "NO" in step S261 of FIG. 15), 1 is stored in the N buffer 24 and the packet P 1 to the application 30 (see steps S263 to S266 in FIG. 15). Then, the processing means 23 transfers SN to the N buffer 24 when i=2. sent +i(=SN sent +2) packet does not exist (see "NO" in step S265 of FIG. 15), sent =SN sent +i-1=SN sent +2-1=SN sent +1, the sequence number SN of N packet PKT_N stored in N buffer 24 sent (see step S268 in FIG. 15).

[0307] In step S303 of FIG. 17, when the "N packet reception process" (flowchart shown in FIG. 15) is executed, after step S268 of FIG. 15, the operation of the receiver 2 proceeds to step S304 of FIG. 15, so that the processing means 23 sets i=i+1=2 (see step S304 of FIG. 17), determines that the number of N packets that have been decoded is equal to or greater than i (=2) (see "YES" in step S302 of FIG. 17), and returns N packets P 2 Then, in the N packet reception process, the processing means 23 executes the "N packet reception process" (the flow chart shown in FIG. 15) for the packet P 2 Sequence number SN rx The sequence number SN of N packets PKT_N that have been received and sent to the application 30 sent (i.e., the sequence number of the N packets stored in the N buffer 24) and is greater than the received packet (=packet P 2 ) has not been stored in the N buffer 24 (see "NO" in step S261 of FIG. 15), 2 is stored in the N buffer 24 and the packet P 2to the application 30 (see steps S263 to S266 in FIG. 15). Then, when i=2, the processing means 23 transmits SN sent +i(=SN sent +2) is not present in the N buffer 24 (see "NO" in step S265 of FIG. 15), sent =SN sent +i-1=SN sent +2-1=SN sent +1, the sequence number SN of N packet PKT_N stored in N buffer 24 sent (see step S268 in FIG. 15). After that, the processing means 23 sets i=i+1=3 (see step S304 in FIG. 17), and determines that the number of N packets that have been decoded is not equal to or greater than i (=3) (see "NO" in step S302 in FIG. 17). Then, the operation of the receiver 2 proceeds to step S30 in FIG. 14, where the processing means 23 determines that decoding has been successful ("YES" in step S30 in FIG. 14), and in step S291 in the flowchart in FIG. 17 showing the detailed operation of step S29 in FIG. 14, determines that two or more encoded packets are not present in the C buffer 25 (see "NO" in step S291 in FIG. 17), and the operation of the receiver 2 proceeds to step S21 in FIG. 14.

[0308] At this stage, no packets are stored in the N buffer 24 and the C buffer 25 (see (h) of FIG. 18). As a result, the packets constituting the burst (packet P 1 ~P 6 ) reception process ends.

[0309] In the flowchart shown in FIG. 14 (including the flowcharts shown in FIG. 15 to FIG. 17) showing the packet reception process, after "removing information of already received N packets from C packet" is executed in step S28 of FIG. 14, "removing already received packet X from the encoded packet" is executed in step S294 of the flowchart of FIG. 17 showing the detailed operation of the decoding process in step S29. i The reason for "removing the information" is as follows.

[0310] In the flowchart of Fig. 12 showing the operation of the transmitter 1, when it is determined in step S9 that T milliseconds have elapsed since the last packet arrived at the buffer 11, the transmitter 1 transmits coded packets C to the receiver 2 until it is determined in step S11 that the number of transmitted coded packets is K (see steps S10 to S12). In this case, as described above, the transmitter 1 transmits coded packets C 6 (=a 61 P 1 +a 62 P 2 +a 63 P 3 +a 64 P 4 +a 65 P 5 +a 66 P 6 ), encoded packet C 7 (=a 71 P 1 +a 72 P 2 +a 73 P 3 +a 74 P 4 +a 75 P 5 +a 76 P 6 ) and the encoded packet C 8 (=a 81 P 1 +a 82 P 2 +a 83 P 3 +a 84 P 4 +a 85 P 5 +a 86 P 6 ) to receiver 2. Here, the encoded packet C 6 In 63 is set to zero. That is, the encoded packet C 6 is effectively C 6 =a 61 P 1 +a 62 P 2 +a 64 P 4 +a 65 P5 +a 66 P 6 It shall consist of the following.

[0311] As a result, the receiver 2 receives the encoded packet C (e.g., encoded packet C) transmitted in step S7 of FIG. 2 ) cannot be received, the encoded packet C 6 ~C 8 can be received.

[0312] Then, the processing means 23 of the receiver 2 determines that N packets have not been received (see "NO" in step S22 of FIG. 14), and determines that the combined packet has not been received (see "NO" in step S23 of FIG. 14), and 6 N packets received from P 2 ,P 4 ,P 5 ,P 6 (see step S28 in FIG. 14 (steps S261 to S286 in the flow chart in FIG. 16)). As a result, the processing means 23 removes the information of the encoded packet C 6 '=a 61 P 1 Get the.

[0313] Then, the processing means 23 judges that all of the information contained in the encoded packet Y has not been received (see "NO" in step S287 of FIG. 16), and 6 It is determined that the number of N packets included in the encoded packet C' is "1" (see "YES" in step S288 of FIG. 16). 6 '=a 61 P 1 Using equation (13), P 1 and executes "N packet reception process" (the flowchart shown in FIG. 15) (see step S290 in FIG. 16).

[0314] In this case, "N packet reception process" is 1 Since the processing means 23 is executed for the first time for packet P 1Sequence number SN rx The sequence number SN of N packets PKT_N that have been received and sent to the application 30 sent (i.e., the sequence number of the N packets stored in the N buffer 24) and is greater than the sequence number of the received packet (packet P 1 ) has not been stored in the N buffer 24 (see "NO" in step S261 of FIG. 15), 1 In this stage, the packet P 1 ,P 2 ,P 4 ,P 5 ,P 6 is stored in the N buffer 24.

[0315] Then, after step S290 in FIG. 16, the processing means 23 repeatedly executes steps S293 to S298 in the flowchart in FIG. 17 showing the detailed operation of the decoding process (see step S29 in FIG. 14) a plurality of times, thereby decoding the encoded packet C in step S294. 4 '(=a 41 P 1 +a 43 P 3 ) to packet P 1 The information of is removed, and the encoded packet C 7 (=a 71 P 1 +a 72 P 2 +a 73 P 3 +a 74 P 4 +a 75 P 5 +a 76 P 6 ) to packet P 1 ,P 2 ,P 4 ,P 5 ,P 6 The information of is removed, and the encoded packet C 8 (=a 81 P 1 +a 82 P 2 +a 83 P 3 +a84 P 4 +a 85 P 5 +a 86 P 6 ) to packet P 1 ,P 2 ,P 4 ,P 5 ,P 6 Remove the information.

[0316] In this way, the newly acquired packet P 1 The information of (N packets) is encoded into packet C 4 ',C 7 ,C 8 In order to remove the information of the already received N packets from the C packets in step S28 of FIG. 14, the process of “removing the information of the already received N packets from the C packets” is executed, and then in step S294 of the flowchart of FIG. 17 showing the detailed operation of the decoding process in step S29, “removing the information of the already received packets X from the encoded packets” is executed. i The government decided to carry out the "removal of all information related to the virus."

[0317] In the embodiment of the present invention, the operation of the transmitter 1 may be realized by software. In this case, the transmitter 1 includes a CPU (Central Processing Unit), a ROM (Read Only Memory), and a RAM (Random Access Memory). The ROM stores a program Prog_A consisting of the steps of the flowchart shown in FIG. 12 (including the flowchart shown in FIG. 13).

[0318] The CPU reads the program Prog_A from the ROM, and executes the read program Prog_A to perform an operation of transmitting packets to the receiver 2. The RAM fulfills the function of the buffer 11 described above.

[0319] In addition, the program Prog_A may be distributed in a form recorded on a recording medium such as a CD or a DVD. When the recording medium on which the program Prog_A is recorded is attached to a computer, the computer reads out the program Prog_A from the recording medium, executes it, and performs an operation of transmitting packets to the receiver 2.

[0320] Therefore, the recording medium on which the program Prog_A is recorded is a computer-readable recording medium.

[0321] In addition, in the embodiment of the present invention, the operation of the receiver 2 may be realized by software. In this case, the receiver 2 includes a CPU, a ROM, and a RAM. The ROM stores a program Prog_B consisting of the steps of the flowchart shown in FIG. 14 (including the flowcharts shown in FIG. 15 to FIG. 17).

[0322] The CPU reads out the program Prog_B from the ROM and executes the read out program Prog_B to perform packet reception processing. The RAM fulfills the functions of the N buffer 24 and the C buffer 25 described above.

[0323] Furthermore, the program Prog_B may be distributed in a form recorded on a recording medium such as a CD or a DVD. When the recording medium on which the program Prog_B is recorded is attached to a computer, the computer reads out the program Prog_B from the recording medium, executes it, and performs a packet reception process.

[0324] Therefore, the recording medium on which the program Prog_B is recorded is a computer-readable recording medium.

[0325] 19 is a schematic diagram of another wireless communication system according to an embodiment of the present invention. The wireless communication system according to the embodiment of the present invention may be a wireless communication system 10A shown in FIG.

[0326] 19, a wireless communication system 10A is the same as the wireless communication system 10 shown in FIG. 1, except that the transmitter 1 of the wireless communication system 10 shown in FIG. 1 is replaced with a transmitting device 100.

[0327] The transmitting device 100 includes a transmitter 1A and base stations AP_T_1 to AP_T_S (S is an integer equal to or greater than 2).

[0328] The transmitter 1A has the same configuration as the transmitter 1 shown in Fig. 2. The base stations AP_T_1 to AP_T_S are connected to the transmitter 1A via wired cables 3_1 to 3_S, respectively. The base stations AP_T_1 to AP_T_S are arranged to have communication ranges covering different communication spaces in the communication space between them and the receiver 2. In this case, the base stations AP_T_1 to AP_T_S are arranged at positions where radio wave shielding by buildings or the like is unlikely to occur between them and the receiver 2.

[0329] In accordance with the flowchart shown in Figure 12 (including the flowchart shown in Figure 13), each time the transmitter 1A receives a packet PKT from the application 20, it transmits a single packet or a combined packet to the base stations AP_T_1 to AP_T_S via the wired cables 3_1 to 3_S, respectively, using the method described above, and during a period when the transmitter 1A does not receive a packet PKT from the application 20, it transmits an encoded packet to the base stations AP_T_1 to AP_T_S via the wired cables 3_1 to 3_S, respectively.

[0330] The base stations AP_T_1 to AP_T_S receive individual packets or combined packets from the transmitter 1A via the wired cables 3_1 to 3_S, respectively, and transmit the received individual packets or combined packets to the receiver 2 via the networks NW_1 to NW_S, respectively.

[0331] Moreover, the base stations AP_T_1 to AP_T_S receive encoded packets from the transmitter 1A via the wired cables 3_1 to 3_S, respectively, and transmit the received encoded packets to the receiver 2 via the networks NW_1 to NW_S, respectively.

[0332] In the wireless communication system 10A, the receiver 2 receives individual packets, combined packets, and encoded packets from the base stations AP_T_1 to AP_T_S via the networks NW_1 to NW_S, respectively, and performs the above-mentioned receiving processing on the received individual packets, combined packets, and encoded packets in accordance with the flowchart shown in FIG. 14 (including the flowcharts shown in FIG. 15 to FIG. 17), and transmits the packets after the receiving processing to the application 30.

[0333] In the wireless communication system 10A, the transmitting device 100 transmits packets PKT (individual packets, combined packets, and encoded packets) to the receiver 2 via base stations AP_T_1 to AP_T_S having mutually different communication ranges, thereby suppressing radio wave blockage due to buildings or the like between the receiver 2 and the transmitting device 100, and enabling the packets PKT (individual packets, combined packets, and encoded packets) constituting real-time traffic to be transmitted to the receiver 2 quickly and with high reliability.

[0334] 20 is a schematic diagram of yet another wireless communication system according to an embodiment of the present invention, which may be a wireless communication system 10B shown in FIG.

[0335] 20, a wireless communication system 10B is the same as the wireless communication system 10 shown in FIG. 1 except that the receiver 2 of the wireless communication system 10 shown in FIG. 1 is replaced with a receiving device 200.

[0336] The receiving device 200 includes base stations AP_R_1 to AP_R_S and a receiver 2A.

[0337] The receiver 2A has the same configuration as the receiver 2 shown in Fig. 3. The base stations AP_R_1 to AP_R_S are connected to the receiver 2A via wired cables 4_1 to 4_S, respectively. The base stations AP_R_1 to AP_R_S are arranged to have communication ranges covering different communication spaces in the communication space between them and the transmitter 1. In this case, the base stations AP_R_1 to AP_R_S are arranged at positions where radio wave shielding by buildings or the like is unlikely to occur between them and the transmitter 1.

[0338] The base stations AP_R_1 to AP_R_S receive packets PKT (individual packets, combined packets and encoded packets) via the networks NW_1 to NW_S, respectively, and transmit the received packets PKT (individual packets, combined packets and encoded packets) to the receiver 2A via the wired cables 4_1 to 4_S, respectively.

[0339] The receiver 2A receives packets PKT (individual packets, combined packets and encoded packets) via the wired cables 4_1 to 4_S, respectively, and performs the above-mentioned receiving processing on the received packets PKT (individual packets, combined packets and encoded packets) in accordance with the flowchart shown in Figure 14 (including the flowcharts shown in Figures 15 to 17), and transmits the packets after the receiving processing to the application 30.

[0340] In the wireless communication system 10B, the receiving device 200 receives packets PKT (individual packets, combined packets, and encoded packets) from the transmitter 1 via base stations AP_R_1 to AP_R_S having mutually different communication ranges, thereby suppressing radio wave blockage by buildings, etc., and enabling the packets PKT (individual packets, combined packets, and encoded packets) constituting real-time traffic to be received from the transmitter 1 quickly and with high reliability.

[0341] 21 is a schematic diagram of yet another wireless communication system according to an embodiment of the present invention, which may be a wireless communication system 10C shown in FIG.

[0342] 21, a wireless communication system 10C includes a transmitting device 100 and a receiving device 200. The configuration of the transmitting device 100 is as described in FIG. 19. Moreover, the configuration of the receiving device 200 is as described in FIG.

[0343] In the wireless communication system 10C, the base stations AP_T_1 to AP_T_S are provided corresponding to the base stations AP_R_1 to AP_R_S, respectively. As a result, the base stations AP_T_1 and AP_R_1 are arranged at positions where packets PKT (single packets, concatenated packets, and encoded packets) can be transmitted and received via a communication space with good communication performance. In other words, the base stations AP_T_1 and AP_R_1 perform one-to-one communication, so that the base station AP_T_1 is arranged at a position where good communication performance can be obtained with the base station AP_R_1 without considering the arrangement positions of the base stations AP_R_2 to AP_R_S, and the base station AP_R_1 is arranged at a position where good communication performance can be obtained with the base station AP_T_1 without considering the arrangement positions of the base stations AP_T_2 to AP_T_S. The same is true for the base stations AP_T_2 and AP_R_2, . . . , the base stations AP_T_S and AP_R_S.

[0344] In accordance with the flowchart shown in FIG. 12 (including the flowchart shown in FIG. 13), each time the transmitter 1A receives a packet PKT from the application 20, it performs the above-mentioned processing on the received packet PKT and transmits the packet PKT (individual packet, combined packet and encoded packet) to the base stations AP_T_1 to AP_T_S via the wired cables 3_1 to 3_S, respectively.

[0345] The base station AP_T_1 receives packets PKT (single packets, combined packets and encoded packets) from the transmitter 1A via the wired cable 3_1, and transmits the received packets PKT (single packets, combined packets and encoded packets) to the base station AP_R_1 via the network NW_1.

[0346] In addition, the base station AP_T_2 receives packets PKT (single packets, combined packets and encoded packets) from the transmitter 1A via the wired cable 3_2, and transmits the received packets PKT (single packets, combined packets and encoded packets) to the base station AP_R_2 via the network NW_2.

[0347] Similarly, the base station AP_T_S receives packets PKT (individual packets, combined packets and encoded packets) from the transmitter 1A via the wired cable 3_S, and transmits the received packets PKT (individual packets, combined packets and encoded packets) to the base station AP_R_S via the network NW_S.

[0348] The base station AP_R_1 receives packets PKT (single packets, combined packets and encoded packets) from the base station AP_T_1 via the network NW_1, and transmits the received packets PKT (single packets, combined packets and encoded packets) to the receiver 2A via the wired cable 4_1.

[0349] In addition, base station AP_R_2 receives packets PKT (individual packets, combined packets and encoded packets) from base station AP_T_2 via network NW_2, and transmits the received packets PKT (individual packets, combined packets and encoded packets) to receiver 2A via wired cable 4_2.

[0350] Similarly, the base station AP_R_S receives packets PKT (individual packets, combined packets and encoded packets) from the base station AP_T_S via the network NW_S, and transmits the received packets PKT (individual packets, combined packets and encoded packets) to the receiver 2A via the wired cable 4_S.

[0351] The receiver 2A receives packets PKT (individual packets, combined packets and encoded packets) from the base stations AP_R_1 to AP_R_S via the wired cables 4_1 to 4_S, respectively, and performs the above-mentioned receiving processing on the received packets PKT (individual packets, combined packets and encoded packets) in accordance with the flowchart shown in Figure 14 (including the flowcharts shown in Figures 15 to 17), and transmits the packets after the receiving processing to the application 30.

[0352] In the wireless communication system 10C, packets PKT (individual packets, combined packets and encoded packets) are transmitted and received between base stations AP_T_1 and AP_R_1, between base stations AP_T_2 and AP_R_2, ..., and between base stations AP_T_S and AP_R_S, so that packets PKT (individual packets, combined packets and encoded packets) that constitute real-time traffic can be transmitted and received more reliably and quickly than in the wireless communication systems 10A and 10B.

[0353] Fig. 22 is a diagram showing another application example of the wireless communication system 10 shown in Fig. 1. Referring to Fig. 22, the receiver 2 and the application 30 are arranged in a vehicle and a train. The transmitter 1 broadcasts a packet PKT from the application 20 to the vehicle and the train.

[0354] The receiver 2 receives the packet PKT from the transmitter 1, executes reception processing, and then transmits the packet PKT to the application 30. The application 30 reproduces the image and displays it on the display unit. This allows the driver of the vehicle or train to view the reproduced image in real time.

[0355] The transmitter 1 may be installed in a base station, and the receiver 2 may be installed in a terminal device that receives packets from the base station within the communication range of the base station. This allows the terminal device to receive packets constituting real-time traffic transmitted from the base station with reduced delay, and reproduce images contained in the received packets and display them on a display unit. This allows the user of the terminal device to view images in real time with high reliability.

[0356] In the above, it has been described that the transmitter 1 transmits an image to the receiver 2, but in an embodiment of the present invention, this is not limited to this, and the transmitter 1 may transmit packets to the receiver 2 that include information other than an image in its payload, as long as the transmitter 1 transmits packets that constitute a burst and packets that do not constitute a burst.

[0357] In the embodiment of the present invention, N packets constitute a "single packet" and the encoded packet C 2 ,C 4 Each of these constitutes a “first encoded packet”, and encoded packet C 6 ~C 8 Each of these constitutes a “second encoded packet”, and encoded packet C 4 ',C 6 ' etc., coding packet C 4 ,C 6 The encoded packet after removing the information of the already received packet from constitutes the "third encoded packet."

[0358] In addition, in the embodiment of the present invention, P 2 / C 1 ,P 3 / C 2 ,P 4 / C 3 ,P 5 / C 4 ,P 6 / C 5 Each of these constitutes a "combined packet."

[0359] Furthermore, in this embodiment of the present invention, the process of transmitting N packets constitutes a "first transmission process", 2 / C 1 ,P 3 / C 2 ,P 4 / C 3 ,P 5 / C 4 ,P 6 / C 5 The process of transmitting each of the encoded packets C 6 ~C 8 The process of transmitting each of these individually constitutes a "third transmission process."

[0360] Furthermore, in this embodiment of the invention, T milliseconds constitutes a "threshold value."

[0361] Furthermore, in this embodiment of the invention, the N buffer 24 constitutes a "first receive buffer", and the C buffer 25 constitutes a "second receive buffer".

[0362] Furthermore, in this embodiment of the present invention, P 3 / C 2 Packet P 3 and the encoded packet C 2 Separate into P 5 / C 4 Packet P 5 and the encoded packet C 4 Separate into P 6 / C 5 Packet P 6 and the encoded packet C 5 The processing means 23 for separating the signal into the signal constitutes the "separating means."

[0363] Furthermore, in this embodiment of the present invention, in step S261 of FIG. rx ≦SN sent If the received packet is not stored in the N buffer 24, the received packet (SN rxThe processing means 23 that stores the packets in the N buffer 24 and transmits the packets stored in the N buffer 24 to the application 30 constitutes a "first processing means."

[0364] Furthermore, in the embodiment of the present invention, the encoded packet C is obtained by removing information of the already received packet from the encoded packet C. 4 ',C 6 Generating an encoded packet C′ corresponds to generating an encoded packet including only a plurality of packets that are not stored in the N buffer 24. In addition, generating an encoded packet C′ by removing information on already received packets from the encoded packet C 4 ',C 6 The processing means 23 that generates ``'' constitutes the ``second processing means.''

[0365] Furthermore, in this embodiment of the present invention, the processing means 23 that executes the decryption process in step S29 of FIG. 14 constitutes "decryption means."

[0366] Furthermore, in the embodiment of the present invention, the transmitter 1 shown in Fig. 1 constitutes a "transmitting device," and the receiver 2 shown in Fig. 1 constitutes a "receiving device." Therefore, a transmitting device according to the embodiment of the present invention is constituted by the transmitter 1 or the transmitting device 100, and a receiving device according to the embodiment of the present invention is constituted by the receiver 2 or the receiving device 200.

[0367] The embodiments disclosed herein should be considered to be illustrative and not restrictive in all respects. The scope of the present invention is defined by the claims, not by the description of the embodiments described above, and is intended to include all modifications within the meaning and scope of the claims. [Industrial Applicability]

[0368] The present invention is applicable to a transmitting device, a receiving device, a wireless communication system including these, a program, and a computer-readable recording medium having the program recorded thereon. [Explanation of symbols]

[0369] 1,1A transmitter, 2,2A receiver, 10,10A,10B,10C wireless communication system, 11 buffer, 12,23 processing means, 13 transmitting means, 14,21 antenna, 22 receiving means, 24 N buffer, 25 C buffer, 20,30 application, 100 transmitting device, 200 receiving device.

Claims

1. A transmitting device that receives packets constituting real-time traffic from an application and transmits the received packets, a transmit buffer for storing packets to be transmitted; A processing means for performing a process for transmission on the packet; a transmitting means for transmitting the packet received from the processing means, When the packet is a first individual packet arriving at the transmitting device at a first time interval, the processing means executes a first process of copying the first individual packet to the transmission buffer and outputting the first individual packet to the transmitting means when the first individual packet arrives at the transmitting device, and when the packet is a plurality of individual packets arriving at the transmitting device successively at a second time interval shorter than the first time interval, the processing means copies the second individual packet to the transmission buffer when a second individual packet selected from among the plurality of individual packets other than the individual packet that arrived at the transmitting device first arrives at the transmitting device, generates a combined packet by adding a first encoded packet including an individual packet that arrived at the transmitting device earlier than the second individual packet to the second individual packet, and outputs the combined packet to the transmitting means. a second process is executed, and when a third individual packet, which is included in the plurality of individual packets and is an individual packet other than the second individual packet, arrives at the transmitting device, the first process is executed on the third individual packet, and when it is determined that the last individual packet of the plurality of individual packets has arrived at the transmitting device, the last individual packet is copied to the transmission buffer, and when the last individual packet corresponds to the second individual packet, the second process is executed on the last individual packet, and when the last individual packet corresponds to the third individual packet, the first process is executed on the last individual packet, and when a predetermined time has elapsed from the timing when it is determined that the last individual packet has arrived at the transmitting device, a third process is executed to generate a second encoded packet including all of the individual packets stored in the transmission buffer and output the second encoded packet to the transmitting means; a first transmission process for transmitting the received first individual packet alone when the transmitting means receives the first individual packet from the processing means, a second transmission process for transmitting the received combined packet when the transmitting means receives the combined packet from the processing means, a first transmission process for transmitting the received third individual packet or the last individual packet when the transmitting means receives the third individual packet or the last individual packet from the processing means, and a third transmission process for transmitting the received second encoded packet alone when the transmitting means receives the second encoded packet from the processing means.

2. In the second process, the processing means 2. The transmitting device according to claim 1, wherein, when a fourth individual packet arrives at the transmitting device, the fourth individual packet being the last individual packet to arrive at the transmitting device among the individual packets that arrived at the transmitting device earlier than the second individual packet or the last individual packet, a first sub-process is performed after the fourth individual packet has been transmitted by the transmitting means, to generate the first encoded packet including the individual packet that arrived at the transmitting device earlier than the second individual packet or the last individual packet, and when the second individual packet or the last individual packet arrives at the transmitting device after performing the first sub-process, a second sub-process is performed to add the first encoded packet to the second individual packet or the last individual packet to generate the combined packet and output it to the transmitting means.

3. 3. The transmitting device according to claim 2, wherein, in the second process, when the second individual packet consists of a number of individual packets (a is an integer equal to or greater than 1), the processing means executes the first and second sub-processing for each of the a individual packets.

4. The processing means sets an initial value of the encoded packet to a predetermined length of zeros, Y 0 The packet taken out from the transmission buffer is X i (i=1, 2, . . . , I, I is the total number of packets stored in the transmission buffer when the first encoded packet or the second encoded packet is generated), and a random number of a predetermined length is denoted by C i Let the encoded packet be Y i Then, the predetermined length random number C i The packet X i The multiplication result C i X i and Y i-1 The encoded packet Y obtained by performing an exclusive OR operation with i The transmitting device according to claim 1 , wherein the transmitting device generates, as the first encoded packet or the second encoded packet,

5. The transmission means further includes a plurality of base stations connected to the transmission means by wired cables, 5. The transmitting device according to claim 1, wherein the plurality of base stations receive the first individual packet, the combined packet, the third individual packet, the last individual packet, and the second encoded packet from the transmitting means via the wired cable, and transmit the received first individual packet, the combined packet, the third individual packet, the last individual packet, and the second encoded packet via mutually different communication paths.

6. A receiving device for receiving a packet from a transmitting device according to any one of claims 1 to 5, a first receive buffer for storing individual packets; a second receive buffer for storing the encoded packets; receiving means for receiving the first and third individual packets, the combined packet, and the second encoded packet; a separating means for separating the combined packet into the first encoded packet and the second individual packet; a first processing means for executing a receiving process for storing, in the first receiving buffer, an individual packet that is not stored in the first receiving buffer or an individual packet that has not been received, among the first individual packet or the third individual packet, and transmitting the individual packet stored in the first receiving buffer to an application that uses information transmitted by a packet from the transmitting device; a second processing means for generating a third encoded packet including only a plurality of individual packets not stored in the first receiving buffer based on the encoded packets received by the receiving means, and storing the generated third encoded packet in the second receiving buffer, for all of the first and second encoded packets; a decoding means for reading the third encoded packets from the second receiving buffer and executing a decoding process for decoding the third encoded packets by solving simultaneous equations for the third encoded packets that have been read, A receiving device, wherein the first processing means further executes the receiving process on the individual packet decoded by the decoding means.

7. 7. The receiving device according to claim 6, wherein the second processing means generates the third encoded packet by removing information of the individual packet stored in the first receiving buffer from the encoded packet received by the receiving means.

8. 8. The receiving device according to claim 7, wherein the second processing means generates the third encoded packet from the encoded packet received by the receiving means when it is determined that the individual packet stored in the first receiving buffer is included in the encoded packet received by the receiving means.

9. the second processing means, when the encoded packet received by the receiving means contains one individual packet after removing information of the individual packet stored in the first receiving buffer from the encoded packet, further erases the encoded packet containing the one individual packet from the second receiving buffer; 9. The receiving device according to claim 7, wherein said first processing means converts an encoded packet including said one individual packet into an individual packet, and performs said receiving process on the converted individual packet.

10. a plurality of base stations connected to the receiving means by wired cables and configured to receive the packets transmitted from the transmitting device via a plurality of mutually different communication paths; 10. The receiving device according to claim 6, wherein each of the plurality of base stations outputs the received packet to the receiving means via the wired cable.

11. A transmitting device according to any one of claims 1 to 5, A wireless communication system comprising the receiving device according to any one of claims 6 to 10.

12. A program for causing a computer to execute transmission of packets constituting real-time traffic in a transmitting device that receives the packets from an application, the program comprising: a first step in which a processing means performs processing for transmission on the packet; a second step in which a transmitting means transmits the packet received from the processing means; In the first step, when the packet is a first individual packet arriving at the transmitting device at a first time interval, the processing means executes a first process of copying the first individual packet to a transmission buffer for storing packets to be transmitted and outputting the first individual packet to the transmitting means when the first individual packet arrives at the transmitting device, and when the packet is a plurality of individual packets arriving at the transmitting device successively at a second time interval shorter than the first time interval, when a second individual packet selected from among the plurality of individual packets other than the individual packet which arrived at the transmitting device first arrives at the transmitting device, copies the second individual packet to the transmission buffer, generates a combined packet by adding a first encoded packet including an individual packet which arrived at the transmitting device earlier than the second individual packet to the second individual packet, and outputs the combined packet to the transmitting means. a second process of outputting a coded packet including all of the individual packets stored in the transmission buffer to the transmission means when a third individual packet, which is included in the plurality of individual packets and is an individual packet other than the second individual packet, arrives at the transmission device, the first process is performed on the third individual packet, and when it is determined that a last individual packet of the plurality of individual packets has arrived at the transmission device, the last individual packet is copied to the transmission buffer, and when the last individual packet corresponds to the second individual packet, the second process is performed on the last individual packet, when the last individual packet corresponds to the third individual packet, the first process is performed on the last individual packet, and when a predetermined time has elapsed since it was determined that the last individual packet has arrived at the transmission device, a third process is performed of generating a second encoded packet including all of the individual packets stored in the transmission buffer and outputting the second encoded packet to the transmission means; A program for causing a computer to execute, in the second step, the transmitting means, when receiving the first individual packet from the processing means, executes a first transmission process of transmitting the received first individual packet alone, when receiving the combined packet from the processing means, executes a second transmission process of transmitting the received combined packet, when receiving the third individual packet or the last individual packet from the processing means, executes the first transmission process for the received third individual packet or the last individual packet, and when receiving the second encoded packet from the processing means, executes a third transmission process of transmitting the received second encoded packet alone.

13. The processing means, in the second processing of the first step, 13. The program for causing a computer to execute the program of claim 12, wherein when a fourth individual packet arrives at the transmitting device, the fourth individual packet being the last individual packet to arrive at the transmitting device among the individual packets that arrived at the transmitting device earlier than the second individual packet or the last individual packet, a first sub-process is executed after the fourth individual packet is transmitted by the transmitting means to generate the first encoded packet including the individual packet that arrived at the transmitting device earlier than the second individual packet or the last individual packet, and when the second individual packet or the last individual packet arrives at the transmitting device after executing the first sub-process, a second sub-process is executed to add the first encoded packet to the second individual packet or the last individual packet to generate the combined packet and output it to the transmitting means.

14. 14. The program for causing a computer to execute the program according to claim 13, wherein, in the second processing of the first step, when the second individual packet consists of a number of individual packets (a is an integer equal to or greater than 1), the processing means executes the first and second sub-processing for each of the a individual packets.

15. The processing means sets an initial value of the encoded packet to a predetermined length of zeros, Y 0 The packet taken out from the transmission buffer is X i (i=1, 2, . . . , I, I is the total number of packets stored in the transmission buffer when the first encoded packet or the second encoded packet is generated), and a random number of a predetermined length is denoted by C i Let the encoded packet be Y i Then, the predetermined length random number C i The packet X i The multiplication result C i X i and Y i-1 The encoded packet Y obtained by performing an exclusive OR operation with i The program for causing a computer to execute the program according to claim 12 , wherein the program generates, as the first encoded packet or the second encoded packet,

16. in the second step, the transmitting means transmits the first individual packet, the combined packet, the third individual packet, the last individual packet and the second encoded packet to a plurality of base stations via a wired cable; 16. A program for causing a computer to execute the program according to any one of claims 12 to 15, wherein the plurality of base stations receive the first individual packet, the combined packet, the third individual packet, the last individual packet, and the second encoded packet from the transmitting means via the wired cable, and transmit the received first individual packet, the combined packet, the third individual packet, the last individual packet, and the second encoded packet via mutually different communication paths.

17. A program for causing a computer to execute a program according to any one of claims 12 to 16 to receive a transmitted packet, the program comprising: a first step in which receiving means receives the first and third individual packets, the combined packet, and the second encoded packet; a second step in which a separating means separates the combined packet into the first encoded packet and the second individual packet; a third step in which a first processing means executes a receiving process for storing, in the first receiving buffer, an individual packet that is not stored in the first receiving buffer or an individual packet that has not been received, among the first individual packet or the third individual packet, and transmitting the individual packet stored in the first receiving buffer to an application that uses information transmitted by the packet; a fourth step in which a second processing means executes a process of generating a third encoded packet including only a plurality of individual packets not stored in the first receiving buffer based on the encoded packet received in the first step, and storing the generated third encoded packet in a second receiving buffer, for all of the first and second encoded packets; a fifth step of executing a decoding process in which a decoding means reads the third encoded packets from the second receiving buffer and solves simultaneous equations for the third encoded packets that have been read, thereby decoding the third encoded packets; The first processing means further executes the reception process on the individual packet decoded by the decoding means in the third step.

18. 18. The program for causing a computer to execute the program according to claim 17, wherein the second processing means generates the third encoded packet in the fourth step by removing information of the single packet stored in the first receiving buffer from the encoded packet received in the first step.

19. 20. The program for causing a computer to execute the program according to claim 18, wherein the second processing means generates the third encoded packet from the encoded packet received in the first step when it is determined in the fourth step that the individual packet stored in the first receiving buffer is included in the encoded packet received in the first step.

20. in the fourth step, when the encoded packet received in the first step after removing information of the individual packets stored in the first receiving buffer contains one individual packet, the second processing means further deletes the encoded packet containing the one individual packet from the first receiving buffer; 20. The program for causing a computer to execute the program according to claim 18 or 19, wherein the first processing means, in the third step, converts an encoded packet including the one individual packet into an individual packet and executes the receiving process on the converted individual packet.

21. A computer-readable recording medium having the program according to any one of claims 12 to 20 recorded thereon.

Citation Information

Patent Citations

  • Radio communication device and radio network provided with the same

    JP2010093738A

  • Redundant Transmission of Real-Time Data

    JP2016514409A