WO2021166016A1 - パケット通信システムとその送信装置、受信装置およびプログラム - Google Patents

パケット通信システムとその送信装置、受信装置およびプログラム Download PDF

Info

Publication number
WO2021166016A1
WO2021166016A1 PCT/JP2020/005960 JP2020005960W WO2021166016A1 WO 2021166016 A1 WO2021166016 A1 WO 2021166016A1 JP 2020005960 W JP2020005960 W JP 2020005960W WO 2021166016 A1 WO2021166016 A1 WO 2021166016A1
Authority
WO
WIPO (PCT)
Prior art keywords
packet
duplicate
packets
group
unit
Prior art date
Application number
PCT/JP2020/005960
Other languages
English (en)
French (fr)
Inventor
尊広 久保
夏樹 安原
慎一 吉原
優平 川上
豪 矢沢
Original Assignee
日本電信電話株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 日本電信電話株式会社 filed Critical 日本電信電話株式会社
Priority to US17/904,273 priority Critical patent/US20230085423A1/en
Priority to PCT/JP2020/005960 priority patent/WO2021166016A1/ja
Priority to JP2022501396A priority patent/JP7405232B2/ja
Publication of WO2021166016A1 publication Critical patent/WO2021166016A1/ja

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W28/00Network traffic management; Network resource management
    • H04W28/02Traffic management, e.g. flow control or congestion control
    • H04W28/04Error control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/08Arrangements for detecting or preventing errors in the information received by repeating transmission, e.g. Verdan system
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/0001Systems modifying transmission characteristics according to link quality, e.g. power backoff
    • H04L1/0006Systems modifying transmission characteristics according to link quality, e.g. power backoff by adapting the transmission format
    • H04L1/0007Systems modifying transmission characteristics according to link quality, e.g. power backoff by adapting the transmission format by modifying the frame length
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/0001Systems modifying transmission characteristics according to link quality, e.g. power backoff
    • H04L1/0023Systems modifying transmission characteristics according to link quality, e.g. power backoff characterised by the signalling
    • H04L1/0028Formatting
    • H04L1/003Adaptive formatting arrangements particular to signalling, e.g. variable amount of bits
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0041Arrangements at the transmitter end
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0045Arrangements at the receiver end
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/0057Block codes

Definitions

  • One aspect of the present invention relates to, for example, a system for transmitting packets via a relay network, particularly a packet communication system for transmitting packets without interruption, a transmitting device and a receiving device used in this system, and further. Regarding the programs used in these devices.
  • a transmission packet and a duplicate packet of this transmission packet are transmitted via different communication paths, so that the packet can be transferred without loss.
  • a capable non-instantaneous network system has been proposed (see, for example, Patent Document 1). According to this system, even if packet discard occurs due to, for example, switching of a communication path or occurrence of a bit error in a relay network, the packet can be transmitted without interruption.
  • Patent Document 1 uses a plurality of communication paths in order to transmit the same packet. Therefore, the bandwidth of the relay network is doubled, which causes an increase in network load.
  • Patent Document 2 can suppress an increase in network load.
  • an optimized code is used to suppress fluctuations in image quality, extremely complicated processing is required for coding and decoding, which causes an increase in processing delay. This is difficult to apply to a system that requires simple and low-delay processing, such as a packet relay transmission system using a wide area L2 network.
  • the present invention has been made by paying attention to the above circumstances, and on one aspect thereof, it is possible to transmit packets without interruption without using complicated coding and decoding processes and without using a plurality of communication paths. It is intended to provide the technology to do.
  • one aspect of the present invention is in a packet communication system in which a packet is transmitted from a first communication device to a second communication device via a single communication path of a network.
  • the communication device is based on a group generator that generates a packet group including the first and second packets based on the input packet string, and the first and second packets included in the packet group.
  • a packet duplication unit that generates first and second duplicate packets, a coded packet generation unit that generates a coded packet based on the second packet and the first duplicate packet, and the first It includes a packet, a second duplicate packet, and a transmitter that transmits the encoded packet to the single communication path.
  • the second communication device is received by a receiving unit that receives the first packet, the second duplicate packet, and the coded packet transmitted via the single communication path.
  • a decoding unit that decodes the second packet and the first duplicate packet based on either one of the first packet and the second duplicate packet and the coded packet, and the received said.
  • a recovery unit that restores the first and second packets of the packet group based on the first packet and the second duplicate packet, and the decrypted second packet and the first duplicate packet. It is designed to be equipped with.
  • the input packet strings are grouped, and duplicate packets are generated for each packet group. Then, for each packet group, a coded packet of a part of the packet of the replication source packet group and another packet of the replication packet group that does not correspond to this packet was generated, and was not used for the generation of this coded packet.
  • the other packet of the replication source, a part of the packet of the replication packet group, and the encoded packet are transmitted.
  • the second communication device on the receiving side for example, among the received packets, one of the other packets of the replication source packet group and some packets of the replication packet group is used. When some packets of the original packet group and other packets of the duplicate packet group are decoded based on the encoded packet, and some packets of the packet group are lost on the network, the above decoding The lost packet is restored by the packet.
  • a technique that enables uninterrupted transmission of packets without using complicated coding and decoding processes and without using a plurality of communication paths. can be provided.
  • FIG. 1 is a diagram showing an overall configuration of a packet communication system according to an embodiment of the present invention.
  • FIG. 2 is a block diagram showing a hardware configuration of the non-instantaneous interruption device used in the system shown in FIG.
  • FIG. 3 is a block diagram showing a functional configuration of a transmitter of the non-instantaneous interruption device used in the system shown in FIG.
  • FIG. 4 is a block diagram showing a functional configuration of a receiver of the non-instantaneous interruption device used in the system shown in FIG.
  • FIG. 5 is a flowchart showing a processing procedure and processing contents of the packet transmission processing by the transmitter shown in FIG.
  • FIG. 6 is a flowchart showing a processing procedure and processing contents of the packet reception processing by the receiver shown in FIG.
  • FIG. 1 is a diagram showing an overall configuration of a packet communication system according to an embodiment of the present invention.
  • FIG. 2 is a block diagram showing a hardware configuration of the non-instantaneous interruption device used in the system shown in
  • FIG. 7 is a diagram showing an operation example of packet transmission processing by the transmitter shown in FIG.
  • FIG. 8 is a diagram showing a first operation example of the packet reception process by the receiver shown in FIG.
  • FIG. 9 is a diagram showing a second operation example of the packet reception process by the receiver shown in FIG.
  • FIG. 10 is a diagram for explaining a first example of a group length set when grouping packet sequences in the transmitter shown in FIG.
  • FIG. 11 is a diagram for explaining a second example of the group length set when grouping packet sequences in the transmitter shown in FIG.
  • FIG. 12 is a diagram for explaining an example of the effect of the packet communication system according to the embodiment of the present invention.
  • FIG. 13 is a diagram for explaining a problem of a system for transmitting the same packet via two different communication paths.
  • FIG. 1 is a diagram showing an overall configuration of a packet communication system according to an embodiment of the present invention.
  • This system relays between the non-instantaneous interruption device TX (first communication device) to which the user device U1 is connected and the non-instantaneous interruption device RX (second communication device) to which the user device U2 is connected. Packets are transmitted via a single communication path of the network NW.
  • the user devices U1 and U2 may be directly connected to the non-instantaneous interruption devices TX and RX, or may be indirectly connected via another communication device or network.
  • the relay network NW may be any type of network such as wired or wireless as long as it can transmit packets, and may have any communication protocol.
  • the non-instantaneous interruption devices TX and RX include, for example, a gateway or a router, both of which include a transmitter 10 and a receiver 20.
  • FIG. 2 is a block diagram showing a hardware configuration of the non-instantaneous interruption devices TX and RX.
  • the non-instantaneous interruption devices TX and RX include a control unit 1 having a hardware processor such as a central processing unit (CPU), and the control unit 1 stores a program via a bus 7.
  • the unit 2, the transmission packet storage unit 3, and the reception packet storage unit 4 are connected, and the transmission interface unit (transmission I / F) 5 and the reception interface unit (reception I / F) 6 are further connected. ..
  • the program storage unit 2 uses, for example, a non-volatile memory such as an HDD (Hard Disk Drive) or SSD (Solid State Drive) that can be written and read at any time as the main storage medium, and the OS (OS (Hard Disk Drive)) is used as the storage area.
  • a non-volatile memory such as an HDD (Hard Disk Drive) or SSD (Solid State Drive) that can be written and read at any time as the main storage medium
  • OS Hard Disk Drive
  • middleware such as Operating System
  • the storage medium may be configured by combining the HDD or SSD and a ROM (Read Only Memory).
  • the transmission packet storage unit 3 and the reception packet storage unit 4 are, for example, a combination of an HDD or SSD and a RAM (Random Access Memory), and the storage area thereof is used to perform various calculations and controls on the packet.
  • a working storage area to be used and a plurality of transmission / reception buffer storage units are provided.
  • the buffer storage unit for transmission / reception operates as a so-called first in-first out (FIFO) queue that stores and reads packets in chronological order.
  • FIFO first in-first out
  • the transmission I / F5 and the reception I / F6 perform signal processing for communication such as modulation / demodulation on the transmission packet and the reception packet.
  • FIG. 3 is a block diagram showing a functional configuration of the transmitter 10.
  • the transmitter 10 assigns the input order information addition unit 101, the code group control unit 102, the packet duplication unit 103, the original packet FIFA queue 104, the duplicate packet FIFA queue 105, the packet calculation unit 106, and the code source information.
  • a unit 107, a coded packet FIFA queue 108, a transmission FIFA queue 109, a transmission order information imparting unit 110, and a transmission packet transfer control unit 111 are provided.
  • the input order information addition unit 101, the code group control unit 102, the packet duplication unit 103, the packet calculation unit 106, the code source information addition unit 107, the transmission order information addition unit 110, and the transmission packet transfer control unit 111 are all included. Is also realized by causing the hardware processor to execute the program stored in the program storage unit 2.
  • the input order information giving unit 101 assigns a number to each packet in the input order with respect to the packet sequence PA input from the user devices U1 and U2.
  • the above numbers are referred to as input order information.
  • the input order information is added to, for example, the header or payload of the packet.
  • the length of the above group is set to a length that does not fall below the maximum value of the momentary interruption time that has occurred in the past in the relay network NW. A setting example will be described in detail later.
  • the packet duplication unit 103 generates n duplicate packet PBs corresponding to the n packet PAs constituting the group for each packet group generated by the code group control unit 102.
  • n packets that are the source of replication will be referred to as original packets.
  • the original packet FIFO queue 104 stores n original packets output from the packet duplication unit 103 in the input order and reads them out in the input order.
  • the duplicate packet FIFO queue 105 stores n duplicate packets output from the packet duplication unit 103 in the input order and reads them out in the input order.
  • the packet calculation unit 106 combines a part of the original packet stored in the original packet FIFA queue 104 with another part of the duplicate packet stored in the duplicate packet FIFA queue 105, and encodes a predetermined packet. By performing the operation, a coded packet having the same packet length as the original packet and the duplicate packet is generated. For coding, for example, a linear code is used. More specifically, a coding method using a packet calculation rule defined by regarding an arbitrary m-bit original packet and an m-bit duplicate packet as a GF (2 m) galloa is used.
  • the code source information adding unit 107 adds the input order information of the original packet used for the coding operation and the input order information of the duplicate packet to the coded packet generated by the packet calculation unit 106.
  • the input order information of the original packet and the duplicate packet is called the code source information.
  • the coded packet FIFO queue 108 stores the coded packet PC output from the code source information adding unit 107 in the input order according to the code source information and reads it out in the input order.
  • the transmission FIFA queue 109 is in the order in which the original packet PA, the duplicate packet PB, and the coded packet PC read from the original packet FIFA queue 104, the duplicate packet FIFA queue 105, and the coded packet FIFA queue 108 are read, respectively. Input, save, and read in the order of input.
  • the transmission order information addition unit 110 assigns a number indicating the transmission order to each header of the original packet PA, the duplicate packet PB, and the coded packet PC read from the transmission FIFO queue 109.
  • the number indicating this transmission order is referred to as transmission order information here.
  • the transmission order information addition unit 110 outputs each packet to which the transmission order information is added to the transmission I / F 5 as a transmission packet string PT.
  • the transmission packet transfer control unit 111 selects the original packet and the duplicate packet to be encoded by controlling the read timing of each of the original packet and the duplicate packet from the original packet FIFO queue 104 and the duplicate packet FIFO queue 105. .. Further, the transmission packet transfer control unit 111 controls the read order of each packet from the original packet FIFA queue 104, the duplicate packet FIFA queue 105, and the encoded packet FIFA queue 108, so that the original packet PA and the duplicate packet to be transmitted are transmitted.
  • the PB and the coded packet PC are selected, and the transmission order thereof is specified.
  • FIG. 4 is a block diagram showing a functional configuration of the receiver 20.
  • the receiver 20 includes a transmission order information deletion unit 201, a packet identification unit 202, an original packet FIFA queue 203, a duplicate packet FIFA queue 204, a coded packet FIFA queue 205, a packet calculation unit 206, and a reception GIFO queue. It includes 207, an input order information deletion unit 208, and a received packet transfer control unit 209.
  • the transmission order information deletion unit 201, the packet identification unit 202, the packet calculation unit 206, the input order information deletion unit 208, and the reception packet transfer control unit 209 all hardware the programs stored in the program storage unit 2. It is realized by letting the processor execute it.
  • the transmission order information deletion unit 201 deletes the transmission order information from each packet header of the received packet string PR received by the reception I / F6, and inputs each received packet from which the transmission order information has been deleted to the packet identification unit 202. ..
  • the packet identification unit 202 identifies the input received packet PR as either an original packet, a duplicate packet, or a coded packet. Then, the original packet is output to the original packet FIFO queue 203, the duplicate packet is output to the duplicate packet FIFO queue 204, and the encoded packet is output to the encoded packet FIFO queue 205. An example of the packet identification method will be described later.
  • the original packet FIFO queue 203 stores the original packets identified by the packet identification unit 202 in the input order and reads them out in the input order.
  • the duplicate packet FIFO queue 204 stores the duplicate packets identified by the packet identification unit 202 in the input order and reads them out in the input order.
  • the coded packet FIFO queue 205 stores the coded packets identified by the packet identification unit 202 in the input order and reads them out in the input order.
  • the packet calculation unit 206 uses the coded packet read from the coded packet FIFA queue 205 as the original packet read from the original packet FIFA queue 203 and the duplicate packet read from the duplicate packet FIFA queue 204. By performing the decoding operation based on either one, the transmitter 10 on the transmitting side decodes a part of the original packet and a part of the duplicate packet that are the targets of encoding.
  • the reception FIFA queue 207 inputs the original packet read from the original packet FIFA queue 203, the duplicate packet read from the duplicate packet FIFA queue 204, and the original packet and the duplicate packet decoded by the packet calculation unit 206 in the input order. Save and read in input order.
  • the input order information deletion unit 208 deletes the input order information from the header of each packet read from the reception FIFO queue 207, and outputs each deleted packet to the user devices U1 and U2 as the restored packet sequence PA. ..
  • the received packet transfer control unit 209 controls the reading of each packet from the original packet FIFA queue 203, the duplicate packet FIFA queue 204, and the coded packet FIFA queue 205, thereby determining the combination of packets to be decoded in the packet calculation unit 206.
  • a process of selecting a packet for forming a restore packet from the original packet, a duplicate packet, and a decrypted packet and inputting the packet to the reception FIFA queue 207 is performed.
  • FIG. 5 is a flowchart showing a control procedure and control contents by the transmitter 10 of the non-instantaneous interruption device TX.
  • the transmitter 10 monitors the input of the transmission packet sequence PA in step S101. In this state, when the transmission packet sequence PA transmitted from the user apparatus U1 is input, the transmitter 10 first receives each packet of the transmission packet sequence PA input by the input order information imparting unit 101 in step S102. The input order information is given to. Subsequently, in step S103, the transmitter 10 groups the packet sequence to which the input order information is added for each n packets by the code group control unit 102.
  • T Loss ⁇ T Coding Group the length of the packet group is set so as to satisfy the above relationship. In this way, since packets 1 to n including encoded packets are always received, all the packets in the group can be restored even if the maximum T Loss (s) is interrupted.
  • T Loss (s) and the group length T CodingGroup (s) T Loss > T Coding Group
  • the momentary interruption time becomes longer than the length of the packet group, it becomes impossible to receive all the packets of 1 to n including the encoded packet, and the packet transmission without the momentary interruption cannot be performed.
  • the length of the packet group is set to a value that does not fall below the maximum value of the momentary interruption time that has occurred in the past. It is also assumed that the maximum value of the momentary interruption time of the relay network NW will change further after the length of the packet group is determined. Therefore, for example, even after the length of the packet group is determined, the length of the momentary interruption time of the relay network NW is monitored. Then, every time a preset time elapses, or when the detected instantaneous interruption time length exceeds the maximum instantaneous interruption time length in the past, the process of resetting the length of the packet group is performed. good.
  • step S104 the packet duplication unit 103 uses the packet duplication unit 103 to generate n duplicate packets having the same contents, including the header portion, for the n packet PAs grouped above. Generate PB.
  • step S105 the transmitter 10 sequentially inputs and saves the n packets (original packets) that are the source of the duplication into the original packet FIFO queue 104. Similarly, the generated n duplicate packets are sequentially input to the duplicate packet FIFO queue 105 and stored.
  • step S106 the packet calculation unit 106 then uses the packet calculation unit 106 to generate a coded packet based on a part of the original packet PA and another part of the duplicate packet PB. Performs a coding operation to generate a PC.
  • the original packet sequence PA is set to n / 2 packet sequences PA1 (numbers 1 to n / 2) in the first half. And the latter half of n / 2 packet sequences PA2 (numbers n / 2 + 1 to n).
  • the duplicate packet sequence PB is also divided into n / 2 packet sequences PB1 (numbers 1 to n / 2) in the first half and n / 2 packet strings PB2 (numbers n / 2 + 1 to n) in the latter half. ..
  • n / 2 original packet sequences PA2 in the latter half are read from the original packet FIFO queue 104, and n / 2 duplicate packet sequences PB1 in the first half are read from the duplicate packet FIFO queue 105, for example.
  • the packet calculation unit 106 defines the read n / 2 original packet sequence PA2 and the n / 2 duplicate packet sequence PB1 as, for example, a galloor body of GF (2 m). Linearly coded using the rules to generate n / 2 coded packet PCs. In FIG. 7, this coded packet is represented by 1 * (n / 2 + 1), 2 * (n / 2 + 2), ..., N / 2 * n.
  • the combination of the original packet and the duplicate packet at the time of encoding may be, for example, the first half n / 2 original packet sequence PA1 and the latter half n / 2 duplicate packet sequence PB2.
  • the transmitter 10 When the coded packet PC is generated, the transmitter 10 subsequently receives the input order information of the source packet and the duplicate packet for the generated coded packet PC by the code source information adding unit 107 in step S107.
  • Input order information is added as encoding source information.
  • the entire coded packet is regarded as a payload, a new header is added and encapsulated, and the code source information is added to the new header together with the destination information and the source information. Used.
  • step S108 the code source information adding unit 107 inputs the coded packet PC to which the code source information is added into the coded packet FIFO queue 108 and stores it.
  • step S109 the original packet FIFA queue 104, the duplicate packet FIFA queue 105, and the encoding.
  • the read timing of each packet from the packet FIFA queue 108, the original packet PA, the duplicate packet PB, and the encoded packet PC are selectively read, and the transmission packet string PT is generated.
  • the first half n / 2 original packets PA1 are read from the original packet FIFO queue 104, then the encoded packet PC is read from the encoded packet FIFO queue 108, and finally the duplicate packet FIFO is read.
  • the latter half of n / 2 duplicate packets PB2 are read from the queue 105.
  • each read packet is sequentially input to the transmission FIFO queue 109 and stored.
  • the transmitter 10 indicates the transmission order in the headers of the original packet PA1, the coded packet PC, and the duplicate packet PB2 read from the transmission FIFO queue 109 by the transmission order information addition unit 110.
  • Add transmission order information The transmission order information addition unit 110 outputs each packet to which the transmission order information is added to the transmission I / F 5 as a transmission packet string PT.
  • the transmission packet string PT is transmitted from the transmission I / F 5 to the non-instantaneous interruption device RX on the receiving side according to the communication protocol of the relay network NW.
  • FIG. 6 is a flowchart showing a control procedure and control contents by the receiver 20 of the non-instantaneous interruption device RX.
  • the receiver 20 monitors the reception of the received packet string PR in step S201. In this state, when the received packet string PR constituting the packet group is received by the receiving I / F6, the receiver 20 first receives the header of each packet of the received packet string PR by the transmission order information deletion unit 201 in step S202. Delete the transmission order information from.
  • the receiver 20 identifies and separates each packet included in the received packet sequence PR from the original packet, the duplicate packet, and the coded packet by the packet identification unit 202.
  • an identification method for example, a packet type determination area is provided in a specific area of the packet header or payload, and a bit string representing the packet type is inserted into this packet type determination area on the transmitter 10 side for transmission, and the receiver 20 A method of identifying the type of packet is used by extracting and decoding the bit string by the packet identification unit 202 of the above.
  • step S204 the receiver 20 duplicates the original packet PA1 into the original packet FIFA queue 203, the encoded packet PC into the encoded packet FIFA queue 205, and the duplicate packet into the duplicate packet based on the identification result by the packet identification unit 202. Each is input to the FIFA queue 204 and saved.
  • step S205 determines whether or not the encoded packet PC can be decoded. In this state, when the coded packet PC is stored in the coded packet FIFO queue 205, the receiver 20 performs the packet calculation process for decoding the packet by the packet calculation unit 206 in step S206 as follows.
  • the packet calculation unit 206 reads the coded packet PC stored in the coded packet FIFO queue 205 in order from the first packet. At the same time, from the original packet FIFO queue 203 or the duplicate packet FIFO queue 204, the original packet or the duplicate packet whose input order information corresponds to the read encoded packet PC is read in order. Then, a packet operation for decoding is performed between the read packets, and the original packet or the duplicate packet is decoded by this.
  • the packet calculation is performed based on, for example, the original packet PA1 and the coded packet PC. Is performed, and the packet PD corresponding to the duplicate packet PB2 is decoded.
  • the decoding process may be omitted. By doing so, it is possible to reduce the processing load of the receiver 20 and reduce the transmission delay.
  • the packet calculation unit 206 performs a packet calculation based on the received duplicate packet PB2 and the coded packet PC, and decodes the packet PD corresponding to the original packet PA1.
  • the packet PD corresponding to the duplicate packet PB2 is similarly decoded based on the received original packet PA1 and the encoded packet PC. NS.
  • step S207 the receiver 20 inputs the original packet, the duplicate packet, and the decrypted packet from the original packet FIFA queue 203, the duplicate packet FIFA queue 204, and the packet calculation unit 206 under the control of the received packet transfer control unit 209. It is read out according to the above, input to the reception FIFA queue 207, and saved.
  • step S208 the receiver 20 sequentially reads the received packet sequence including the restored packet PD from the received FIFO queue 207. Then, in step S209, the input order information deletion unit 208 deletes the input order information from the header of each of the read packets. The packet string PA from which the input order information has been deleted is sent to the destination user device U2.
  • the receiver 20 determines in step S210 whether or not the reception of the packet string PR is completed. Then, when the reception of the received packet string PR continues, the process returns to step S202 and the above processes (2-1) to (2-3) are repeated. On the other hand, when the reception of the received packet PR is completed, the operation is terminated and the process returns to the standby state according to step S201.
  • the transmitter 10 in the non-instantaneous interruption device TX on the transmitting side, the transmitter 10 generates a packet group including a plurality of packets PA1 and PA2 based on the input transmission packet sequence PA. ..
  • the length of this packet group is set to a length that does not fall below the maximum value of the momentary interruption time that has occurred in the past in the relay network NW.
  • the transmitter 10 generates duplicate packets PB1 and PB2 corresponding to the packets PA1 and PA2 included in the packet group for each packet group, and a part PB1 of the duplicate packet and another part of the original packet.
  • a coded packet PC is generated based on the PA2, and a part PA1 of the original packet, another part PB2 of the duplicate packet, and a coded packet PC are transmitted to the relay network NW.
  • the receiver 20 of the non-instantaneous interruption device RX on the receiving side receives the original packet PA1, the duplicate packet PB2 and the encoded packet PC, the encoded packet PC and the original packet PA1 and the duplicate packet PB2
  • the duplicated packet PB2 or the original packet PA1 is decoded based on either of the above.
  • the unreceived packet can be restored based on the encoded packet PC. It will be possible.
  • the coding method used to generate the code packet is a relatively simple coding method using a linear code, and therefore, for example, a complicated coding method used for transmission of conventional video data. Compared with the case of using, the processing load of the non-instantaneous interruption device can be suppressed to a low level.
  • a coded packet is generated from the original packet and one duplicate packet generated from the original packet, and the generated coded packet is a part of the original packet and the duplicate packet.
  • the case of transmitting with a part of is described as an example.
  • the present invention is not limited to this, and a plurality of duplicate packets are generated from the original packet, and a plurality of (for example, two) encoded packets are generated and generated based on the generated plurality of duplicate packets and the original packet.
  • a plurality of encoded packets may be transmitted together with a part of the original packet and another part of the duplicate packet.
  • the configuration of the non-interrupt device, the processing procedure and processing content, the length of the group, the coding method when generating the coded packet, the original packet when generating the transmission packet, the duplicate packet and the coding can be variously modified and implemented without departing from the gist of the present invention.
  • the present invention is not limited to the above embodiment, and can be variously modified at the implementation stage without departing from the gist thereof.
  • each embodiment may be carried out in combination as appropriate as possible, in which case the combined effect can be obtained.
  • the above-described embodiment includes inventions at various stages, and various inventions can be extracted by an appropriate combination in a plurality of disclosed constitutional requirements.
  • TX Transmission side non-instantaneous device
  • RX Receiving side non-instantaneous device U1, U2 ... User device NW ... Relay network 1 ...
  • Control unit 2 Program storage unit 3 .
  • Transmission packet storage unit 4 ... Reception packet storage Part 5 ... Transmission interface unit (transmission I / F) 6 ... Reception interface unit (reception I / F) 7 ... Bus 10 ... Transmitter 20 ... Receiver 101 ... Input order information addition unit 102 ... Code group control unit 103 ... Packet duplication unit 104 ... Original packet FIFA queue 105 ... Duplicate packet FIFA queue 106 Packet calculation unit 107 ... Code source information Granting unit 108 ... Encoded packet FIFA queue 109 ...
  • Transmission FIFA queue 110 ... Transmission order information granting unit 111 ... Transmission packet transfer control unit 201 ... Transmission order information deletion unit 202 ... Packet identification unit 203 ... Original packet FIFA queue 204 ... Duplicate packet FIFA queue 205 ... Encoded packet FIFA queue 206 ... Packet calculation unit 207 ... Received FIFA queue 208 ... Input order information deletion unit 209 ... Received packet transfer control unit

Abstract

この発明の一態様は、送信側の通信装置において、入力されたパケット列をグループ化して、このパケットグループごとに複製パケットを生成する。そして、パケットグループごとに、複製元のパケット群の一部のパケットと、このパケットと対応しない複製パケット群の他のパケットとの符号化パケットを生成し、この符号化パケットの生成に用いなかった上記複製元の他のパケットと複製パケット群の一部のパケットと上記符号化パケットとを送信する。一方、受信側の第2の通信装置では、受信された上記各パケットのうち、複製元のパケット群の他のパケットおよび上記複製パケット群の一部のパケットのいずれか一方と符号化パケットとに基づいて、複製元のパケット群の一部のパケットおよび複製パケット群の他のパケットを復号し、ネットワーク上でパケットグループの一部のパケットが喪失した場合に、上記復号されたパケットにより上記喪失パケットを復元する。

Description

パケット通信システムとその送信装置、受信装置およびプログラム
 この発明の一態様は、例えばパケットを中継ネットワークを介して伝送するシステムに係わり、特にパケットを無瞬断で伝送するためのパケット通信システムと、このシステムで使用される送信装置および受信装置、さらにこれらの装置で使用されるプログラムに関する。
 送受信装置間でパケットを中継ネットワークを介して伝送するシステムにおいて、送信パケットと、この送信パケットの複製パケットを、異なる通信経路を介してそれぞれ伝送することにより、パケットを喪失することなく転送することができる無瞬断ネットワークシステムが提案されている(例えば特許文献1を参照)。このシステムによれば、中継ネットワークにおいて例えば通信経路の切り替えやビット誤りの発生によりパケット廃棄が発生しても、パケットを無瞬断で伝送することができる。
 また、送信側でパケットを特殊な符号化方式を用いて符号化した後、単一の通信経路を介して伝送し、受信側で復号することにより、喪失したパケットを復元する技術も提案されている(例えば特許文献2を参照)。
日本国特許4074268号公報 日本国特開2017-228903号公報
 ところが、特許文献1に記載された無瞬断ネットワークシステムでは、同一のパケットを伝送するために複数の通信経路を使用する。このため、中継ネットワークの帯域を2倍消費することになり、ネットワーク負荷の増大を招くという課題がある。
 一方、特許文献2に記載された技術では、ネットワーク負荷の増加を抑制できる。しかし、画質の変動を抑えるために最適化された符号が使用されるため、符号化と復号に非常に複雑な処理が必要となって処理遅延の増加を招く。これは、例えば広域L2ネットワークを用いたパケット中継伝送システムのように、簡素で低遅延の処理が求められるシステムには適用することが難しい。
 この発明は上記事情に着目してなされたもので、その一側面では、複雑な符号化および復号処理を用いず、かつ複数の通信経路を使用することなく、パケットの無瞬断伝送を可能にする技術を提供しようとするものである。
 上記課題を解決するためにこの発明の一態様は、第1の通信装置から第2の通信装置へパケットをネットワークの単一の通信経路を介して伝送するパケット通信システムにあって、前記第1の通信装置が、入力されたパケット列をもとに第1および第2のパケットを含むパケットグループを生成するグループ生成部と、前記パケットグループに含まれる前記第1および第2のパケットをもとに第1および第2の複製パケットを生成するパケット複製部と、前記第2のパケットと前記第1の複製パケットとに基づいて符号化パケットを生成する符号化パケット生成部と、前記第1のパケット、前記第2の複製パケットおよび前記符号化パケットを前記単一の通信経路へ送信する送信部とを備える。また、前記第2の通信装置が、前記単一の通信経路を介して伝送された、前記第1のパケット、前記第2の複製パケットおよび前記符号化パケットを受信する受信部と、受信された前記第1のパケットおよび前記第2の複製パケットのいずれか一方と、前記符号化パケットとに基づいて、前記第2のパケットおよび前記第1の複製パケットを復号する復号部と、受信された前記第1のパケットおよび前記第2の複製パケットと、復号された前記第2のパケットおよび前記第1の複製パケットとに基づいて、前記パケットグループの第1および第2のパケットを復元する復元部とを備えるようにしたものである。
 この発明の一態様によれば、送信側の第1の通信装置では、例えば、入力されたパケット列がグループ化されて、このパケットグループごとに複製パケットが生成される。そして、パケットグループごとに、複製元のパケット群の一部のパケットと、このパケットと対応しない複製パケット群の他のパケットとの符号化パケットが生成され、この符号化パケットの生成に用いなかった上記複製元の他のパケットと複製パケット群の一部のパケットと上記符号化パケットとが送信される。これに対し、受信側の第2の通信装置では、例えば、受信された上記各パケットのうち、複製元のパケット群の他のパケットおよび上記複製パケット群の一部のパケットのいずれか一方と、符号化パケットとに基づいて、複製元のパケット群の一部のパケットおよび複製パケット群の他のパケットがそれぞれ復号され、ネットワーク上で上記パケットグループの一部のパケットが喪失した場合に、上記復号されたパケットにより上記喪失パケットが復元される。
 すなわち、この発明の一態様によれば、その一側面として、複雑な符号化および復号処理を用いず、かつ複数の通信経路を使用することなく、パケットの無瞬断伝送を可能にする技術を提供することができる。
図1は、この発明の一実施形態に係るパケット通信システムの全体構成を示す図である。 図2は、図1に示したシステムで使用される無瞬断装置のハードウェア構成を示すブロック図である。 図3は、図1に示したシステムで使用される無瞬断装置の送信機の機能構成を示すブロック図である。 図4は、図1に示したシステムで使用される無瞬断装置の受信機の機能構成を示すブロック図である。 図5は、図3に示した送信機によるパケット送信処理の処理手順と処理内容を示すフローチャートである。 図6は、図4に示した受信機によるパケット受信処理の処理手順と処理内容を示すフローチャートである。 図7は、図3に示した送信機によるパケット送信処理の動作例を示す図である。 図8は、図4に示した受信機によるパケット受信処理の第1の動作例を示す図である。 図9は、図4に示した受信機によるパケット受信処理の第2の動作例を示す図である。 図10は、図3に示した送信機においてパケット列をグループ化する際に設定されるグループの長さの第1の例を説明するための図である。 図11は、図3に示した送信機においてパケット列をグループ化する際に設定されるグループの長さの第2の例を説明するための図である。 図12は、この発明の一実施形態に係るパケット通信システムの効果の一例を説明するための図である。 図13は、同一のパケットを異なる2つの通信経路を介して伝送するシステムの問題点を説明するための図である。
 以下、図面を参照してこの発明に係わる実施形態を説明する。 
 [一実施形態]
 (構成例)
 (1)システム
 図1は、この発明の一実施形態に係るパケット通信システムの全体構成を示す図である。
 このシステムは、ユーザ装置U1が接続される無瞬断装置TX(第1の通信装置)と、ユーザ装置U2が接続される無瞬断装置RX(第2の通信装置)との間で、中継ネットワークNWの単一の通信経路を介してパケットを伝送するようにしたものである。
 なお、ユーザ装置U1,U2は、無瞬断装置TX,RXに対し直接接続されてもよく、また他の通信装置またはネットワークを介して間接的に接続されてもよい。中継ネットワークNWは、パケットを伝送できるものであれば、有線または無線等のネットワークの種類を問わず、また通信プロトコルもどのようなものであってもよい。
 (2)装置
 無瞬断装置TX,RXは、例えばゲートウェイまたはルータからなり、いずれも送信機10および受信機20を備える。 
 図2は、無瞬断装置TX,RXのハードウェア構成を示すブロック図である。同図に示すように無瞬断装置TX,RXは、中央処理ユニット(Central Processing Unit:CPU)等のハードウェアプロセッサを有する制御部1を備え、この制御部1にバス7を介してプログラム記憶部2、送信用パケット記憶部3、受信用パケット記憶部4を接続し、さらに送信インタフェース部(送信I/F)5および受信インタフェース部(受信I/F)6を接続したものとなっている。
 プログラム記憶部2は、例えば、主記憶媒体としてHDD(Hard Disk Drive)またはSSD(Solid State Drive)等の随時書込みおよび読出しが可能な不揮発性メモリを使用したもので、その記憶領域にはOS(Operating System)等のミドルウェアに加えて、この発明の一実施形態に係る各種処理を実行するプログラムが格納される。なお、記憶媒体は、上記HDD又はSSDとROM(Read Only Memory)とを組み合わせて構成してもよい。
 送信用パケット記憶部3および受信用パケット記憶部4は、例えば、HDDまたはSSDとRAM(Random Access Memory)とを組み合わせたもので、その記憶領域にはパケットに対し各種演算や制御を行うために使用される作業用記憶領域と、複数の送受信用バッファ記憶部が設けられている。この送受信用のバッファ記憶部は、パケットを時系列順に保存して読み出す、いわゆる早入れ早出し(First in-First out:FIFO)キューとして動作する。
 送信I/F5および受信I/F6は、送信パケットおよび受信パケットに対し例えば変復調等の通信のための信号処理を行う。
 (2-1)送信機10
 図3は、送信機10の機能構成を示すブロック図である。 
 送信機10は、入力順情報付与部101と、符号グループ制御部102と、パケット複製部103と、元パケットFIFOキュー104と、複製パケットFIFOキュー105と、パケット演算部106と、符号元情報付与部107と、符号化パケットFIFOキュー108と、送信FIFOキュー109と、送信順情報付与部110と、送信パケット転送制御部111とを備える。
 このうち、入力順情報付与部101、符号グループ制御部102、パケット複製部103、パケット演算部106と、符号元情報付与部107、送信順情報付与部110および送信パケット転送制御部111は、何れもプログラム記憶部2内に格納されたプログラムをハードウェアプロセッサに実行させることにより実現される。
 入力順情報付与部101は、ユーザ装置U1,U2から入力されたパケット列PAに対し、入力順に各パケットに番号を付与する。ここでは、上記番号を入力順情報と呼ぶ。入力順情報は、例えばパケットのヘッダまたはペイロードに付与される。
 符号グループ制御部102は、上記入力順情報が付与されたパケット列PAを予め設定された複数のパケット数n(n>=2)個毎にグループ化する。上記グループの長さは中継ネットワークNWにおいて過去に発生した瞬断時間の最大値を下回らない長さに設定される。設定例は後に詳しく述べる。
 パケット複製部103は、上記符号グループ制御部102により生成されたパケットグループ毎に、当該グループを構成するn個のパケットPAに対応するn個の複製パケットPBを生成する。以後、複製の元になるn個のパケットを元パケットと呼称する。
 元パケットFIFOキュー104は、上記パケット複製部103から出力されるn個の元パケットを入力順に保存し、入力順に読み出す。複製パケットFIFOキュー105も同様に、上記パケット複製部103から出力されるn個の複製パケットを入力順に保存し、入力順に読み出す。
 パケット演算部106は、上記元パケットFIFOキュー104に保存されている元パケットの一部と、上記複製パケットFIFOキュー105に保存されている複製パケットの他の一部とを組み合わせ、所定の符号化演算を行うことにより、上記元パケットおよび複製パケットと同一のパケット長を有する符号化パケットを生成する。符号化には、例えば線形符号が用いられる。より具体的には、任意のmビットの元パケットとmビットの複製パケットをGF(2m)のガロア体とみなして定義したパケット演算規則を用いた符号化方式が用いられる。
 符号元情報付与部107は、上記パケット演算部106により生成された符号化パケットに対し、その符号化演算に使用された元パケットの入力順情報と複製パケットの入力順情報を付与する。この元パケットおよび複製パケットの入力順情報を符号元情報と呼ぶ。
 符号化パケットFIFOキュー108は、上記符号元情報付与部107から出力される符号化パケットPCを、その符号化元情報に従い入力順に保存し入力順に読み出す。上記送信FIFOキュー109は、上記元パケットFIFOキュー104、複製パケットFIFOキュー105および符号化パケットFIFOキュー108からそれぞれ読み出された元パケットPA、複製パケットPBおよび符号化パケットPCを読み出された順に入力して保存し、入力順に読み出す。
 送信順情報付与部110は、上記送信FIFOキュー109から読み出された元パケットPA、複製パケットPBおよび符号化パケットPCの各ヘッダに、送信順序を示す番号を付与する。この送信順序を示す番号を、ここでは送信順情報と呼ぶ。送信順情報付与部110は、上記送信順序情報が付与された各パケットを送信パケット列PTとして送信I/F5へ出力する。
 送信パケット転送制御部111は、上記元パケットFIFOキュー104および複製パケットFIFOキュー105からの元パケットおよび複製パケットの各々の読み出しタイミングを制御することで、符号化対象の元パケットおよび複製パケットを選択する。また送信パケット転送制御部111は、上記元パケットFIFOキュー104、複製パケットFIFOキュー105および符号化パケットFIFOキュー108からの各パケットの読み出し順序を制御することで、送信対象の元パケットPA、複製パケットPBおよび符号化パケットPCを選択し、さらにその送信順序を指定する。
 (2-2)受信機20
 図4は、受信機20の機能構成を示すブロック図である。 
 受信機20は、送信順情報削除部201と、パケット識別部202と、元パケットFIFOキュー203と、複製パケットFIFOキュー204と、符号化パケットFIFOキュー205と、パケット演算部206と、受信FIFOキュー207と、入力順情報削除部208と、受信パケット転送制御部209とを備えている。
 このうち、送信順情報削除部201、パケット識別部202、パケット演算部206、入力順情報削除部208および受信パケット転送制御部209は、何れもプログラム記憶部2内に格納されたプログラムをハードウェアプロセッサに実行させることにより実現される。
 送信順情報削除部201は、受信I/F6により受信された受信パケット列PRの各パケットヘッダから送信順情報を削除し、送信順序情報が削除された各受信パケットをパケット識別部202に入力する。
 パケット識別部202は、入力された上記受信パケットPRを、元パケット、複製パケットまたは符号化パケットのいずれかに識別する。そして、元パケットを元パケットFIFOキュー203へ、複製パケットを複製パケットFIFOキュー204へ、符号化パケットを符号化パケットFIFOキュー205へそれぞれ出力する。なお、パケットの識別方法の一例は後に述べる。
 元パケットFIFOキュー203は、上記パケット識別部202により識別された元パケットを入力順に保存して入力順に読み出す。複製パケットFIFOキュー204は、上記パケット識別部202により識別された複製パケットを入力順に保存して入力順に読み出す。符号化パケットFIFOキュー205は、上記パケット識別部202により識別された符号化パケットを入力順に保存して入力順に読み出す。
 パケット演算部206は、符号化パケットFIFOキュー205から読み出された符号化パケットを、元パケットFIFOキュー203から読み出された元パケットと、複製パケットFIFOキュー204から読み出された複製パケットとのいずれか一方に基づいて復号演算することにより、送信側の送信機10において符号化の対象とされた元パケットの一部および複製パケットの一部を復号する。
 受信FIFOキュー207は、上記元パケットFIFOキュー203から読み出された元パケット、複製パケットFIFOキュー204から読み出された複製パケット、およびパケット演算部206により復号された元パケットおよび複製パケットを入力順に保存し、入力順に読み出す。
 入力順情報削除部208は、受信FIFOキュー207から読み出された各パケットのヘッダから入力順情報を削除し、削除後の各パケットを復元されたパケット列PAとしてユーザ装置U1,U2へ出力する。
 受信パケット転送制御部209は、上記元パケットFIFOキュー203、複製パケットFIFOキュー204および符号化パケットFIFOキュー205からの各パケットの読み出しを制御することで、復号対象のパケットの組合せをパケット演算部206に与える処理と、元パケット、複製パケットおよび復号されたパケットのうち復元パケットを構成するためのパケットを選択して受信FIFOキュー207に入力する処理を行う。
 (動作例)
 次に、以上のように構成されたパケット通信システムによるパケット通信動作を説明する。 
 なお、ここでは、ユーザ装置U1から送られるパケット列PAを、無瞬断装置TXから中継ネットワークNWを介して無瞬断装置RXへ伝送し、無瞬断装置RXからユーザ装置U2へ転送する場合を例にとって説明する。
 (1)無瞬断装置TXの送信機10の動作
 図5は、無瞬断装置TXの送信機10による制御手順と制御内容を示すフローチャートである。
 (1-1)パケット列のグループ化
 無瞬断装置TXにおいて送信機10は、ステップS101において送信パケット列PAの入力を監視している。この状態で、ユーザ装置U1から送出された送信パケット列PAが入力されると、送信機10は、先ずステップS102において、入力順情報付与部101により、入力された上記送信パケット列PAの各パケットに対し入力順情報を付与する。続いて送信機10は、ステップS103において、符号グループ制御部102により、上記入力順情報が付与されたパケット列をn個のパケット毎にグループ化する。
 ここで、上記グループの長さの決定方法の一例について説明する。 
 例えば、図10に示すように、中継ネットワークNWにおいて最大TLoss(s)の瞬断が発生する場合、グループの長さをTCodingGroup(s)とすると、無瞬断を実現するためには次の関係が成り立つ必要がある。 
   TLoss ≦ TCodingGroup
 一実施形態では、上記の関係を満たすようにパケットグループの長さを設定する。このようにすると、符号化パケットを含む1~nのパケットが必ず受信されるため、上記最大TLoss(s)の瞬断が発生しても、グループ内のパケットをすべて復元可能となる。
 ちなみに、例えば図11に示すように、TLoss(s)とグループの長さTCodingGroup(s)の関係が 
   TLoss > TCodingGroup
となると、パケットグループの長さに対して瞬断時間が長くなるため、符号化パケットを含む1~nのパケットをすべて受信できなくなり、無瞬断によるパケット伝送は行えなくなる。
 すなわち、パケットグループの長さは、過去に発生した瞬断時間の最大値を下回らない値に設定される。なお、中継ネットワークNWの瞬断時間の最大値は、上記パケットグループの長さを決定した後にさらに変化することも想定される。そこで、例えば、上記パケットグループの長さの決定後も中継ネットワークNWの瞬断時間の長さを監視する。そして、予め設定された時間が経過するごとに、或いは検出された瞬断時間長が過去の最大の瞬断時間長を超えた場合に、上記パケットグループの長さを設定し直す処理を行うとよい。
 (1-2)複製パケットの生成
 送信機10は、次にステップS104において、パケット複製部103により、上記グループ化されたn個のパケットPAについて、ヘッダ部分を含め同一内容のn個の複製パケットPBを生成する。そして送信機10は、ステップS105において、上記複製の元になったn個のパケット(元パケット)を元パケットFIFOキュー104に順に入力し保存する。また同様に、生成された上記n個の複製パケットを複製パケットFIFOキュー105に順に入力し保存する。
 (1-3)符号化パケットの生成
 送信機10は、次にステップS106において、パケット演算部106により、上記元パケットPAの一部と複製パケットPBの他の一部とに基づいて符号化パケットPCを生成するための符号化演算を実行する。
 例えば、送信パケット転送制御部111の制御の下、図7に示すように、一つのパケットグループにおいて、元パケット列PAを、前半のn/2個のパケット列PA1(番号1~n/2)と、後半のn/2個のパケット列PA2(番号n/2+1~n)とに分ける。同様に複製パケット列PBについても、前半のn/2個のパケット列PB1(番号1~n/2)と、後半のn/2個のパケット列PB2(番号n/2+1~n)とに分ける。
 次に、元パケットFIFOキュー104から例えば後半のn/2個の元パケット列PA2を読み出すと共に、複製パケットFIFOキュー105から例えば前半のn/2個の複製パケット列PB1を読み出す。そして、パケット演算部106により、読み出された上記n/2個の元パケット列PA2およびn/2個の複製パケット列PB1を、例えばGF(2m)のガロア体とみなして定義したパケット演算規則を用いて線形符号化し、n/2個の符号化パケットPCを生成する。この符号化パケットを図7では、1*(n/2+1),2*(n/2+2),…,n/2*nで表している。
 なお、符号化する際の元パケットと複製パケットとの組み合わせは、例えば、前半のn/2個の元パケット列PA1と、後半のn/2個の複製パケット列PB2であってもよい。
 上記符号化パケットPCが生成されると、送信機10は続いてステップS107において、符号元情報付与部107により、生成された上記符号化パケットPCに対し、元パケットの入力順情報および複製パケットの入力順情報を符号化元情報として付与する。付与の方法としては、例えば、上記符号化パケット全体をペイロードと見なして新たなヘッダを付与してカプセル化し、上記新たなヘッダに送信先情報および送信元情報と共に上記符号元情報を付与する方法が用いられる。
 符号元情報付与部107は、ステップS108において、上記符号化元情報が付与された符号化パケットPCを、符号化パケットFIFOキュー108に入力して保存させる。
 (1-4)送信パケット列PTの生成および送信
 送信機10は、続いてステップS109において、送信パケット転送制御部111の制御の下、上記元パケットFIFOキュー104、複製パケットFIFOキュー105および符号化パケットFIFOキュー108からの各パケットの読み出しタイミングを制御することにより、元パケットPA、複製パケットPBおよび符号化パケットPCを選択的に読み出し、送信パケット列PTを生成する。
 例えば、図7に示すように、先ず元パケットFIFOキュー104から前半のn/2個の元パケットPA1を読み出し、次に符号化パケットFIFOキュー108から符号化パケットPCを読み出し、最後に複製パケットFIFOキュー105から後半のn/2個の複製パケットPB2を読み出す。そして、読み出された各パケットを、ステップS110において、順に送信FIFOキュー109に入力し保存させる。
 送信機10は、続いてステップS111において、送信順情報付与部110により、上記送信FIFOキュー109から読み出された元パケットPA1、符号化パケットPCおよび複製パケットPB2の各ヘッダに、送信順序を示す送信順情報を付与する。送信順情報付与部110は、上記送信順序情報が付与された各パケットを送信パケット列PTとして送信I/F5へ出力する。この結果、上記送信パケット列PTは、送信I/F5から中継ネットワークNWの通信プロトコルに従い、受信側の無瞬断装置RXに向け送信される。
 (2)無瞬断装置RXの受信機20の動作
 図6は、無瞬断装置RXの受信機20による制御手順と制御内容を示すフローチャートである。
 (2-1)受信パケット列の受信およびパケットの分離
 無瞬断装置RXにおいて受信機20は、ステップS201において受信パケット列PRの受信を監視している。この状態で、受信I/F6によりパケットグループを構成する受信パケット列PRが受信されると、受信機20は先ずステップS202において、送信順情報削除部201により上記受信パケット列PRの各パケットのヘッダから送信順情報を削除する。
 受信機20は、次にステップS203において、パケット識別部202により、上記受信パケット列PRに含まれる各パケットが、元パケット、複製パケットおよび符号化パケットのいずれであるかを識別して分離する。識別方法としては、例えば、パケットのヘッダまたはペイロードの特定の領域にパケット種別判定領域を設け、送信機10側でこのパケット種別判定領域にパケット種別を表すビット列を挿入して送信し、受信機20の上記パケット識別部202により上記ビット列を抽出し解読することでパケットの種類を識別する方法が用いられる。
 受信機20は、ステップS204において、上記パケット識別部202による識別結果に基づいて、元パケットPA1を元パケットFIFOキュー203に、符号化パケットPCを符号化パケットFIFOキュー205に、複製パケットを複製パケットFIFOキュー204にそれぞれ入力し保存させる。
 (2-2)符号化パケットの復号
 受信機20は、ステップS205において、符号化パケットPCの復号が可能になったか否かを判定する。この状態で、符号化パケットFIFOキュー205に符号化パケットPCが保存されると、受信機20はステップS206において、パケット演算部206により以下のようにパケットの復号のためのパケット演算処理を行う。
 すなわち、パケット演算部206は、上記符号化パケットFIFOキュー205に保存された符号化パケットPCを先頭のパケットから順に読み出す。またそれと並行して、元パケットFIFOキュー203または複製パケットFIFOキュー204から、上記読み出された符号化パケットPCと入力順情報が対応する元パケットまたは複製パケットを順に読み出す。そして、読み出されたパケット同士で復号のためのパケット演算を行い、これにより元パケットまたは複製パケットを復号する。
 この結果、例えば図8に示すように、符号化パケットPC、元パケットPA1および複製パケットPB2が受信された場合には、このうちの例えば元パケットPA1と符号化パケットPCとをもとにパケット演算が行われ、複製パケットPB2に相当するパケットPDが復号される。
 なお、図8の場合のように、中継ネットワークNWにおいて瞬断が発生せず、元パケットPA1および複製パケットPB2がいずれも受信された場合には、上記復号処理を省略するようにしてもよい。このようにすると、受信機20の処理負荷を軽減して伝送遅延を減らすことが可能となる。
 一方、例えば図9に示すように、受信パケット列PRの元パケットPA1が中継ネットワークNWの瞬断により受信されなかったとする。この場合パケット演算部206では、受信された上記複製パケットPB2と符号化パケットPCとをもとにパケット演算が行われ、元パケットPA1に相当するパケットPDが復号される。
 なお、受信パケット列PRの複製パケットPB2が受信されなかった場合にも、同様に、受信された元パケットPA1と符号化パケットPCとをもとに、複製パケットPB2に相当するパケットPDが復号される。
 受信機20は、ステップS207において、受信パケット転送制御部209の制御の下、元パケットFIFOキュー203、複製パケットFIFOキュー204およびパケット演算部206から、元パケット、複製パケットおよび復号パケットを入力順情報に従い読み出して受信FIFOキュー207に入力し保存させる。
 (2-3)受信パケットの出力
 受信機20は、ステップS208において、上記受信FIFOキュー207から、復元されたパケットPDを含む受信パケット列を順次読み出す。そして、ステップS209において、入力順情報削除部208により上記読み出された各パケットのヘッダから入力順情報を削除する。この入力順情報が削除されたパケット列PAは、送信先のユーザ装置U2へ送出される。
 上記一つのパケットグループの受信復号処理が終了すると、受信機20はステップS210において、パケット列PRの受信が終了したか否かを判定する。そして、受信パケット列PRの受信が続いている場合には、ステップS202に戻って上記(2-1)~(2-3)の処理を繰り返す。一方、受信パケットPRの受信が終了した場合には、動作を終了してステップS201による待受状態に戻る。
 (効果)
 以上述べたように一実施形態では、送信側となる無瞬断装置TXにおいて、送信機10により、入力された送信パケット列PAをもとに複数のパケットPA1,PA2を含むパケットグループを生成する。このパケットグループの長さは、中継ネットワークNWで過去に発生した瞬断時間の最大値を下回らない長さに設定される。そして送信機10は、上記パケットグループ毎に、当該グループに含まれるパケットPA1,PA2に対応する複製パケットPB1,PB2を生成して、この複製パケットの一部PB1と、元パケットの他の一部PA2とに基づいて符号化パケットPCを生成し、上記元パケットの一部PA1、複製パケットの他の一部PB2および符号化パケットPCを中継ネットワークNWへ送信する。一方、受信側となる無瞬断装置RXの受信機20では、上記元パケットPA1、複製パケットPB2および符号化パケットPCを受信した場合に、符号化パケットPCと、上記元パケットPA1および複製パケットPB2のいずれか一方とに基づいて、上記複製パケットPB2または元パケットPA1を復号するようにしている。
 従って、中継ネットワークNWにおいて瞬断が発生し、元パケットPA1または複製パケットPB2のいずれか一方が受信されなかったとしても、この受信されなかったパケットを符号化パケットPCをもとに復元することが可能となる。
 すなわち、一実施形態によれば、例えば図12に示すように元パケットPA1、複製パケットPB2および符号化パケットPCからなる3つのパケット群(いずれもパケットをn/2個含む)を伝送するだけで、瞬断時間がパケットグループの長さ未満であれば、無瞬断のパケット伝送を実現できる。ちなみに、従来のシステムでは、例えば図13に示すようにパケット群PA1,PA2が2系統の通信経路により伝送されるので、4個のパケット群が伝送されることになり、ネットワーク負荷の増加を招く。
 また一実施形態によれば、符号パケットの生成に使用する符号化方式は線形符号を使用した比較的簡易な符号化方式であるため、例えば従来の映像データの伝送に使用する複雑な符号化方式を使用する場合に比べ、無瞬断装置の処理負荷を低く抑えることができる。
 [変形例]
 (1)前記一実施形態では、ユーザ装置U1から各パケットの長さが固定されたパケット列が送られる場合を例にとって説明した。これに対し、ユーザ装置U1から送られるパケット列の各パケットの長さが可変長の場合も考えられる。この場合には、無瞬断装置TXの送信機10の前段にパケット長調整部を配置し、パケット長調整部によりパケット列の各パケットの長さが等しくなるようにパケット長を調整する。パケット長の調整方法としては、例えば、パケット毎に、その長さに応じて当該パケットの長さが予め設定された一定長となるようにパディングを加える方法を使用することができる。このようにパケット長を一定にすることで、一実施形態のようにパケット演算部106において線形符号を用いてパケットの符号化演算を行う場合にも、この発明を実施することが可能となる。
 (2)前記一実施形態では、元パケットと、この元パケットから生成した1つの複製パケットとから符号化パケットを生成し、生成された符号化パケットを上記元パケットの一部および複製パケットの他の一部と共に送信する場合を例にとって説明した。しかし、この発明はそれに限らず、元パケットから複数の複製パケットを生成し、生成された複数の複製パケットと元パケットとに基づいて複数(例えば2個)の符号化パケットを生成し、生成された複数の符号化パケットを上記元パケットの一部および複製パケットの他の一部と共に送信するようにしてもよい。このようにすると、符号化パケットの一つと元パケットの一部または複製パケットの他の一部が中継ネットワークの瞬断により受信側の無瞬断装置RXで受信できなかったとしても、元パケットのすべてを再現することが可能となる。
 (3)その他、無瞬断装置の構成や処理手順および処理内容、グループの長さ、符号化パケットを生成する際の符号化方式、送信パケットを生成する際の元パケット、複製パケットおよび符号化パケットの送信順序、中継ネットワークの種類等については、この発明の要旨を逸脱しない範囲で種々に変形して実施することができる。
 すなわち、この発明は、上記実施形態に限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で種々に変形することが可能である。また、各実施形態は可能な限り適宜組み合わせて実施してもよく、その場合組み合わせた効果が得られる。更に、上記実施形態には種々の段階の発明が含まれており、開示される複数の構成要件における適当な組み合わせにより種々の発明が抽出され得る。
  TX…送信側の無瞬断装置
  RX…受信側の無瞬断装置
  U1,U2…ユーザ装置
  NW…中継ネットワーク
  1…制御部
  2…プログラム記憶部
  3…送信用パケット記憶部
  4…受信用パケット記憶部
  5…送信インタフェース部(送信I/F)
  6…受信インタフェース部(受信I/F)
  7…バス
  10…送信機
  20…受信機
  101…入力順情報付与部
  102…符号グループ制御部
  103…パケット複製部
  104…元パケットFIFOキュー
  105…複製パケットFIFOキュー
  106パケット演算部
  107…符号元情報付与部
  108…符号化パケットFIFOキュー
  109…送信FIFOキュー
  110…送信順情報付与部
  111…送信パケット転送制御部
  201…送信順情報削除部
  202…パケット識別部
  203…元パケットFIFOキュー
  204…複製パケットFIFOキュー
  205…符号化パケットFIFOキュー
  206…パケット演算部
  207…受信FIFOキュー
  208…入力順情報削除部
  209…受信パケット転送制御部

Claims (8)

  1.  第1の通信装置から第2の通信装置へパケットをネットワークの単一の通信経路を介して伝送するパケット通信システムであって、
     前記第1の通信装置は、
      入力されたパケット列をもとに第1および第2のパケットを含むパケットグループを生成するグループ生成部と、
      前記パケットグループごとに、当該パケットグループに含まれる前記第1および第2のパケットをもとに第1および第2の複製パケットを生成するパケット複製部と、
      前記パケットグループごとに、前記第2のパケットと前記第1の複製パケットとに基づいて符号化パケットを生成する符号化パケット生成部と、
      前記第1のパケット、前記第2の複製パケットおよび前記符号化パケットを前記単一の通信経路へ送信する送信部と
     を備え、
     前記第2の通信装置は、
      前記単一の通信経路を介して伝送された、前記第1のパケット、前記第2の複製パケットおよび前記符号化パケットを受信する受信部と、
      受信された前記第1のパケットおよび前記第2の複製パケットのいずれか一方と、前記符号化パケットとに基づいて、前記第2のパケットおよび前記第1の複製パケットを復号する復号部と、
      受信された前記第1のパケットおよび前記第2の複製パケットと、復号された前記第2のパケットおよび前記第1の複製パケットとに基づいて、前記パケットグループの第1および第2のパケットを復元する復元部と
     を備える、
     パケット通信システム。
  2.  前記符号化パケット生成部は、線形符号を用いたパケット演算を行うことで、前記第2のパケットと前記第1の複製パケットとの線形結合により表される前記符号化パケットを生成する、請求項1に記載のパケット通信システム。
  3.  前記グループ化処理部は、前記ネットワークにおいて過去に発生した瞬断時間の最大値を下回らない時間長に対応するパケット数を含むパケットグループを構成する、請求項1に記載のパケット通信システム。
  4.  前記第1の通信装置は、
      前記グループ化処理部の前段側において、前記パケット列に可変長パケットが含まれる場合に、当該可変長パケットのパケット長を予め設定された固定長となるように調整するパケット長調整部を、さらに備える
     請求項1に記載のパケット通信システム。
  5.  パケットをネットワークの単一の通信経路を介して受信側の通信装置へ送信する送信装置であって、
     入力されたパケット列をもとに第1および第2のパケットを含むパケットグループを生成するグループ生成部と、
     前記パケットグループごとに、当該パケットグループに含まれる前記第1および第2のパケットをもとに第1および第2の複製パケットを生成するパケット複製部と、
     前記パケットグループごとに、前記第2のパケットと前記第1の複製パケットとに基づいて符号化パケットを生成する符号化パケット生成部と、
     前記第1のパケット、前記第2の複製パケットおよび前記符号化パケットを前記単一の通信経路へ送信する送信部と
     を具備する送信装置。
  6.  請求項5に記載の送信装置から送信されるパケットを受信する受信装置であって、
     前記送信装置から前記単一の通信経路を介して伝送された、前記第1のパケット、前記第2の複製パケットおよび前記符号化パケットを受信する受信部と、
     受信された前記第1のパケットおよび前記第2の複製パケットのいずれか一方と、前記符号化パケットとに基づいて、前記第2のパケットおよび前記第1の複製パケットを復号する復号部と、
     受信された前記第1のパケットおよび前記第2の複製パケットと、復号された前記第2のパケットおよび前記第1の複製パケットとに基づいて、前記パケットグループの第1および第2のパケットを復元する復元部と
     を具備する受信装置。
  7.  請求項5に記載の送信装置が具備する前記各部の処理を、前記送信装置が備えるハードウェアプロセッサに実行させるプログラム。
  8.  請求項6に記載の受信装置が具備する前記各部の処理を、前記受信装置が備えるハードウェアプロセッサに実行させるプログラム。
PCT/JP2020/005960 2020-02-17 2020-02-17 パケット通信システムとその送信装置、受信装置およびプログラム WO2021166016A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
US17/904,273 US20230085423A1 (en) 2020-02-17 2020-02-17 Packet communication system, and its transmitting apparatus, receiving apparatus, and program
PCT/JP2020/005960 WO2021166016A1 (ja) 2020-02-17 2020-02-17 パケット通信システムとその送信装置、受信装置およびプログラム
JP2022501396A JP7405232B2 (ja) 2020-02-17 2020-02-17 パケット通信システムとその送信装置、受信装置およびプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2020/005960 WO2021166016A1 (ja) 2020-02-17 2020-02-17 パケット通信システムとその送信装置、受信装置およびプログラム

Publications (1)

Publication Number Publication Date
WO2021166016A1 true WO2021166016A1 (ja) 2021-08-26

Family

ID=77391501

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2020/005960 WO2021166016A1 (ja) 2020-02-17 2020-02-17 パケット通信システムとその送信装置、受信装置およびプログラム

Country Status (3)

Country Link
US (1) US20230085423A1 (ja)
JP (1) JP7405232B2 (ja)
WO (1) WO2021166016A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023223564A1 (ja) * 2022-05-20 2023-11-23 日本電信電話株式会社 情報処理装置、情報処理方法、通信システム、及びプログラム

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09247131A (ja) * 1996-03-07 1997-09-19 Toshiba Corp データ通信装置
JP2002204219A (ja) * 2000-11-07 2002-07-19 Agere Systems Guardian Corp 損失パケットのバーストを訂正するための低遅延通信路符号
EP1950969A2 (en) * 2006-11-24 2008-07-30 Samsung Electronics Co., Ltd. Digital broadcasting system and error correction method thereof

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016092640A (ja) 2014-11-06 2016-05-23 キヤノン株式会社 生成装置、生成方法及びプログラム

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09247131A (ja) * 1996-03-07 1997-09-19 Toshiba Corp データ通信装置
JP2002204219A (ja) * 2000-11-07 2002-07-19 Agere Systems Guardian Corp 損失パケットのバーストを訂正するための低遅延通信路符号
EP1950969A2 (en) * 2006-11-24 2008-07-30 Samsung Electronics Co., Ltd. Digital broadcasting system and error correction method thereof

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
YOSHIMURA YASUHIKO , KAMATA KONOMI , UEMATSU YOSHIHIKO , SUZUKI RYOICHI: "Study on transfer optimizaton methods for communication between FEC proxies", ISPJ SYMPOSIUM SERIES: MULTIMEDIA , DISTRIBUTED , COOPERATIVE AND MOBILE SYMPOSIUM (DICOMO), vol. 2005, no. 6, 2005, pages 525 - 528, ISSN: 1344-0640 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023223564A1 (ja) * 2022-05-20 2023-11-23 日本電信電話株式会社 情報処理装置、情報処理方法、通信システム、及びプログラム

Also Published As

Publication number Publication date
JP7405232B2 (ja) 2023-12-26
US20230085423A1 (en) 2023-03-16
JPWO2021166016A1 (ja) 2021-08-26

Similar Documents

Publication Publication Date Title
US8948204B2 (en) Fabric channel control apparatus and method
CN111800218B (zh) 一种数据流的传输方法和设备
EP2556613B1 (en) Processing transport packets
CN103023813B (zh) 抖动缓冲器
CN102984090A (zh) 抖动缓冲器
CN103650399A (zh) 纠正数据单元的自适应生成
JP6535718B2 (ja) ストリーミングサービスを提供する方法及び装置
JP4068545B2 (ja) パケット受信方法および装置
WO2021166016A1 (ja) パケット通信システムとその送信装置、受信装置およびプログラム
US8594075B2 (en) Method and system for wireless VoIP communications
JP6474072B2 (ja) データ転送システム
KR20080093924A (ko) 중요도에 따라 손실 복원율을 차별화하는 비균일 랩터 코딩방법
Toemoeskoezi et al. On the packet delay characteristics for serially-connected links using random linear network coding with and without recoding
US20230087755A1 (en) Communication system, transmitter, receiver, and communication method and program
Mehta et al. Survey on multimedia transmission using network coding over wireless networks
JP2001333039A (ja) データ伝送システム及びそのデータ送信装置とデータ受信装置並びにデータ伝送方法
KR102127641B1 (ko) 응용 계층 순방향 오류 정정 방식을 사용하여 제공되는 방송 서비스의 수신을 제어하는 방법 및 장치
WO2023223564A1 (ja) 情報処理装置、情報処理方法、通信システム、及びプログラム
JP7476979B2 (ja) 通信装置、通信方法及び通信プログラム
JP2010109942A (ja) 情報処理装置及びその方法、プログラム、記録媒体
JP6071501B2 (ja) 中継端末
KR101801565B1 (ko) 통신 시스템에서 데이터 송수신 장치 및 방법
JP5306281B2 (ja) 通信システム、受信局装置、中継局装置、および、それらの通信方法、プログラム
KR20080035135A (ko) 무선 통신 시스템에서 매체 접속 제어 프로토콜 데이터유닛 처리 방법 및 장치
Farzamnia et al. Error concealment using joint multiple description lloyd-max quantization and network coding

Legal Events

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

Ref document number: 20920298

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2022501396

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 20920298

Country of ref document: EP

Kind code of ref document: A1