WO2001099355A1 - Procede et systeme de retransmission de paquets - Google Patents

Procede et systeme de retransmission de paquets Download PDF

Info

Publication number
WO2001099355A1
WO2001099355A1 PCT/JP2000/004154 JP0004154W WO0199355A1 WO 2001099355 A1 WO2001099355 A1 WO 2001099355A1 JP 0004154 W JP0004154 W JP 0004154W WO 0199355 A1 WO0199355 A1 WO 0199355A1
Authority
WO
WIPO (PCT)
Prior art keywords
packet
retransmission
sequence number
retransmission request
request
Prior art date
Application number
PCT/JP2000/004154
Other languages
English (en)
French (fr)
Inventor
Seiji Okumura
Original Assignee
Mitsubishi Denki Kabushiki Kaisha
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 Mitsubishi Denki Kabushiki Kaisha filed Critical Mitsubishi Denki Kabushiki Kaisha
Priority to EP00939154A priority Critical patent/EP1204249A4/en
Priority to JP2002504083A priority patent/JP3866196B2/ja
Priority to PCT/JP2000/004154 priority patent/WO2001099355A1/ja
Priority to US10/069,246 priority patent/US7180896B1/en
Publication of WO2001099355A1 publication Critical patent/WO2001099355A1/ja

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/12Arrangements for detecting or preventing errors in the information received by using return channel
    • H04L1/16Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
    • H04L1/18Automatic repetition systems, e.g. Van Duuren systems
    • H04L1/1867Arrangements specially adapted for the transmitter end
    • H04L1/1887Scheduling and prioritising arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/12Arrangements for detecting or preventing errors in the information received by using return channel
    • H04L1/16Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
    • H04L1/1607Details of the supervisory signal
    • H04L1/1628List acknowledgements, i.e. the acknowledgement message consisting of a list of identifiers, e.g. of sequence numbers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/12Arrangements for detecting or preventing errors in the information received by using return channel
    • H04L1/16Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
    • H04L1/1607Details of the supervisory signal
    • H04L1/1635Cumulative acknowledgement, i.e. the acknowledgement message applying to all previous messages
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/12Arrangements for detecting or preventing errors in the information received by using return channel
    • H04L1/16Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
    • H04L1/18Automatic repetition systems, e.g. Van Duuren systems
    • H04L1/1809Selective-repeat protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/12Arrangements for detecting or preventing errors in the information received by using return channel
    • H04L1/16Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
    • H04L1/18Automatic repetition systems, e.g. Van Duuren systems
    • H04L1/1829Arrangements specially adapted for the receiver end
    • H04L1/1835Buffer management
    • H04L1/1841Resequencing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/12Arrangements for detecting or preventing errors in the information received by using return channel
    • H04L1/16Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
    • H04L1/18Automatic repetition systems, e.g. Van Duuren systems
    • H04L1/1829Arrangements specially adapted for the receiver end
    • H04L1/1848Time-out mechanisms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/12Arrangements for detecting or preventing errors in the information received by using return channel
    • H04L1/16Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
    • H04L1/1607Details of the supervisory signal
    • H04L1/1671Details of the supervisory signal the supervisory signal being transmitted together with control information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/12Arrangements for detecting or preventing errors in the information received by using return channel
    • H04L1/16Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
    • H04L1/18Automatic repetition systems, e.g. Van Duuren systems
    • H04L1/1829Arrangements specially adapted for the receiver end
    • H04L1/1854Scheduling and prioritising arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/12Arrangements for detecting or preventing errors in the information received by using return channel
    • H04L1/16Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
    • H04L1/18Automatic repetition systems, e.g. Van Duuren systems
    • H04L1/1867Arrangements specially adapted for the transmitter end
    • H04L1/1874Buffer management
    • H04L1/1877Buffer management for semi-reliable protocols, e.g. for less sensitive applications like streaming video

Definitions

  • the present invention relates to a server and a client for streaming distribution of real-time data such as video and audio via an Internet radio network.
  • the present invention relates to a packet retransmission system and a packet retransmission method for performing more reliable communication while placing importance on real time when a packet loss occurs in data transfer with high real time property.
  • packets flowing on a network are often lost due to overflow of a node (router) on the network or bit errors in a wireless space.
  • a node Router
  • bit errors in a wireless space.
  • there are conceivable methods such as (1) do nothing, (2) correct or correct an error, and (3) retransmit.
  • the video stream has block noise due to packet loss, the audio stream has discontinuous sound, and other media data is normal media. Playback cannot be performed.
  • the method of retransmission is usually performed by data communication that does not require real-time processing.
  • the TCP protocol uses If an ACK packet is sent to the sender and the ACK packet does not return to the sender, it is a reliable transfer protocol that determines that the packet has not been received and resends it, but waits for the resend packet. Therefore, time is spent for retransmission, and excess ACK packets and an increase in retransmission packets can compress bandwidth and cause congestion.
  • multimedia streaming can be played even if all data has not arrived.Therefore, when packets are lost, only important data packets are resent. Or resend it. By retransmitting only important packets, the bandwidth can be used efficiently, and there is no need to wait for unnecessary retransmission of data packets.
  • the retransmission method described in Japanese Patent Application Laid-Open No. 9-214507 is a wireless communication method capable of performing real-time communication with assured quality as much as possible.When a packet is lost, retransmission is attempted several times. If it still does not arrive, packets with lower priority are discarded and retransmitted.
  • the retransmission method described in Japanese Patent Application Laid-Open No. 11-2846457 is a retransmission control method for connection-established communication that suppresses low-priority communication packets during congestion. Set the number of retransmissions possible, and reduce the number of retransmissions when retransmission is performed by 1.If the number of retransmissions becomes 0, stop communication for that connection and secure as much high-priority bandwidth as possible. Is what you do.
  • RTP Real-Time Transport Protocol
  • the method of performing error correction and correction has a problem that the load on the receiving side is increased and congestion is further deteriorated due to redundant data for performing correction.
  • the retransmitted packets may be discarded at the source, but the receiving side Has to wait for the retransmission packet or make a retransmission request many times, which results in unnecessary retransmission processing.
  • the RTP retransmission function extension proposal which adds a general sequence number to all packets and a priority sequence number to only those packets that can be judged to be retransmitted in case of an important packet or loss.
  • the packet communication by the above has the advantage that the receiving side can grasp the priority, but if consecutive buckets are lost, it is not possible to recognize the correct priority, and the retransmission request of all continuously lost buckets is sent. There is a problem that must be done. For example, Fig.
  • a packet retransmission system includes a transmitting device that transmits a packet to which a sequence number is added, a receiving device connected to the transmitting device via a network, and a request application unit connected to the receiving device.
  • the transmitting device includes:
  • a retransmission buffer for storing packets transmitted to the receiving device;
  • Retransmission request receiving means for identifying and notifying the sequence number and the maximum (latest) sequence number provided to the requesting application from the retransmission request bucket received from the receiving device;
  • Retransmission bucket detecting means for checking whether or not the notified sequence number exists in a retransmission buffer
  • Retransmission means for retransmitting all the packets whose presence has been detected by the retransmission packet detection means to the receiving device
  • a transmitting device that transmits the packet to which the sequence number is added; a receiving device connected to the transmitting device via a network; and a request application unit connected to the receiving device.
  • a receiving device includes:
  • a receiving buffer for storing packets received from the transmitting device
  • Packet loss detecting means for detecting the loss of the packet
  • Retransmission sequence number adding means for issuing an addition command to add a sequence number of a packet in which loss has been detected to a retransmission request list
  • Retransmission request list management means for adding the sequence number to the retransmission request list according to the addition command
  • Retransmission request transmitting means for transmitting the sequence number stored in the retransmission request list to the transmitting means by putting the sequence number on a retransmission request packet;
  • a transmitting device that transmits the packet to which the sequence number is added; a receiving device connected to the transmitting device via a network; and a request application unit connected to the receiving device.
  • the transmitting device includes:
  • a retransmission buffer for storing packets transmitted to the receiving device, a sequence number from the retransmission request packet received from the receiving device and a maximum (latest) sequence number provided to the request application for notification.
  • Retransmission bucket detecting means for checking whether the notified sequence number is present in the retransmission buffer
  • Retransmitting means for retransmitting all packets whose presence has been detected by the retransmitted packet detecting means to the receiving device;
  • the receiving device includes
  • a receiving buffer for storing the packets received from the transmitting device, and receiving means for storing the buckets in the receiving buffer while sorting the buckets received from the transmitting device in sequence number order;
  • Packet loss detection means for detecting loss of the packet
  • Retransmission sequence number adding means for instructing to add a sequence number of a packet in which loss has been detected to a retransmission request list
  • Retransmission request list management means for adding the sequence number to the retransmission request list according to the addition command
  • the sequence number stored in the retransmission request list is stored in the retransmission request packet.
  • Retransmission request transmitting means for transmitting to the transmitting means on the
  • Bucket providing means for supplying a packet in the reception buffer to the request application unit
  • Retransmission packet storage means for storing, in a retransmission buffer, a packet to be retransmitted when a specific packet or loss occurs
  • Retransmitting means for retransmitting the packet to be retransmitted when the specific packet or the packet is lost
  • the receiving device is not limited to
  • Retransmission request list management means for switching the state of the packet having the sequence number stored in the packet to the retransmission request state;
  • Packet loss detecting means for detecting a sequence number of a packet that has been lost due to a mismatch of a sequence number of a packet in a reception buffer at a packet reception time interval determined from the number of times and the reception time of the packet; and the packet loss detection.
  • the sequence number of the bucket in which the means detected the loss Retransmission sequence number adding means for issuing an instruction to be added to the retransmission request list to the retransmission request list management means;
  • Retransmission request transmitting means for generating one retransmission request packet carrying a sequence number of one or more packets to be retransmitted present in the retransmission request list, and transmitting the retransmission request packet to a transmitting device,
  • the transmission device includes
  • Retransmission request receiving means for extracting and notifying the sequence number of the retransmission request packet received from the receiving device
  • Retransmission packet detecting means for checking whether a packet of the notified sequence number is stored in a retransmission buffer
  • Retransmission request response means for placing the sequence numbers of all the packets detected by the retransmission packet detection means in one retransmission request response bucket and transmitting the sequence numbers to the receiving device;
  • Retransmission means for retransmitting the bucket detected by the retransmission packet detection means to the receiving device
  • Retransmission request transmitting means for generating one retransmission request packet carrying the maximum (latest) sequence number of the bucket provided by the packet providing means to the request application unit, and transmitting the retransmission request packet to the transmitting device;
  • Retransmission buffer deletion means for deleting a packet having a sequence number smaller than the notified maximum sequence number from the retransmission buffer.
  • a retransmission request transmitting means for transmitting the retransmission request bucket to a transmitting device
  • the transmission device includes
  • Retransmission request receiving means for extracting and notifying the sequence number and the maximum sequence number from the retransmission request packet received from the receiving device
  • Retransmission packet detecting means for checking whether or not the packet of the notified sequence number is in the retransmission buffer
  • Retransmission buffer deleting means for deleting a packet having a sequence number smaller than the notified maximum sequence number from the retransmission buffer; and the retransmission packet detecting means sets the sequence numbers of all the packets detected to be one to one.
  • Retransmission request response means for transmitting a retransmission request response packet to the receiving device,
  • Retransmitting means for retransmitting a packet detected by the retransmission packet detecting means to the receiving device
  • Retransmission request response receiving means for receiving a retransmission request response packet carrying the sequence number of the retransmitted packet from the transmitting device
  • Retransmission sequence deletion means for extracting the sequence number from the retransmission request response packet and issuing a deletion instruction to the retransmission request list management means for deleting the same sequence number as the sequence number from the retransmission request list,
  • a command to set the state of the retransmission request list to an "ACTIVE" state which means that a packet having the sequence number remaining in the retransmission request list was requested to be retransmitted but will not be retransmitted from the transmitting apparatus in the future.
  • the payload (data) of one or more packets is provided to the requesting application unit, and a sequence number smaller than the sequence number of the packet is deleted from the retransmission request list.
  • the payload of the packet having the sequence number (N + 1) following the sequence number (N: N is a natural number) of the previously provided packet is provided within the specified time, and within the specified time. If the packet of the next sequence number (N + 1) does not exist in the receiving buffer or is not inserted, It is provided with a packet providing means for notifying the requesting application unit that the bucket to be provided has been lost.
  • the state of the retransmission request list indicates that the packet of the sequence number stored in the retransmission request list has already been retransmitted to the transmitting device, but will not be retransmitted from the transmitting device in the future. " If the sequence number of the packet to be provided to the requesting application section is in the above-mentioned retransmission request list in the "ACTIVE" state, it is determined that retransmission is not performed even if a retransmission request is made, and the packet is immediately provided without waiting for the specified time. It is provided with a bucket providing means for notifying the requester that a packet to be lost has been lost.
  • a packet between transmission and reception when a packet is lost in packet communication in which a general sequence number given to all packets and a priority sequence number given to a specific packet or a packet to be retransmitted when lost are added.
  • a general sequence number given to all packets and a priority sequence number given to a specific packet or a packet to be retransmitted when lost are added.
  • the transmitting device is
  • Retransmission packet storage means for storing in the retransmission buffer the packet to be retransmitted when the specific packet or the packet is lost,
  • Retransmitting means for retransmitting the packet to be retransmitted when the specific packet or the loss
  • a retransmission list for storing a general sequence number of a packet to be retransmitted is generated, and retransmission list management means for adding and deleting the general sequence number is provided.
  • a retransmission sequence number deletion unit that issues an instruction to delete the general sequence number from the retransmission list to a retransmission list management unit;
  • Packet loss detection means for detecting, from the general sequence number and the priority sequence number, a specific sequence having a high priority and a general sequence number of a packet to be retransmitted at the time of loss,
  • Retransmission request transmitting means for generating one retransmission request packet carrying one or more general sequence numbers present in the retransmission list, and transmitting the retransmission request packet to a transmitting device;
  • the transmission device includes
  • Retransmission request receiving means for extracting and notifying the general sequence number from the retransmission request bucket received from the receiving device,
  • Retransmission packet detecting means for checking whether a packet of the notified general sequence number is in a retransmission buffer,
  • Retransmitting means for retransmitting a packet having a general sequence number whose presence has been detected by the retransmitting packet detecting means to the receiving device;
  • Retransmission request transmitting means for generating one retransmission request bucket carrying the maximum (latest) general sequence number of the bucket provided by the bucket providing means to the request application unit, and transmitting the retransmission request packet to a transmitting device;
  • the transmitting device is:
  • Retransmission request receiving means for extracting and notifying the maximum general sequence number from the retransmission request bucket received from the receiving device
  • Retransmission buffer deleting means for deleting a packet having a general sequence number smaller than the notified general sequence number from the retransmission buffer.
  • the transmission device includes
  • Retransmission request receiving means for extracting and notifying the general sequence number and the maximum general sequence number from the retransmission request packet received from the receiving device
  • Retransmission buffer deletion means for deleting a packet having a general sequence number smaller than the notified maximum general sequence number from the retransmission buffer, Retransmission packet detecting means for checking whether or not the packet of the notified general sequence number is in the retransmission buffer;
  • Resending means for resending the packet of the general sequence number whose presence has been detected by the retransmission packet detecting means to the receiving device;
  • one or more buckets are provided to the requesting application unit with a pay mouth (de-night), and are smaller than the general sequence number of the packet.
  • the general sequence number is deleted from the retransmission list, and the pay port of the bucket of the general sequence number (N + 1) following the general sequence number (N: N is a natural number) of the previously provided packet is designated. If the packet with the general sequence number (N + 1) does not exist in the reception buffer or is not inserted in the reception buffer within the specified time, it is assumed that the packet to be provided has been lost. It has a bucket providing means for notifying the requesting application unit.
  • the apparatus is provided with a packet providing means for performing packet loss detection and retransmission request transmission several times within the designated time.
  • the transmitting device includes
  • Priority is given to n (n is a natural number) packets in the vicinity of an arbitrary packet. Priority information to be assigned to a high specific packet or a packet to be retransmitted when lost is added to the bucket p for each m packets (m ⁇ n .: m and n are natural numbers), and the values of n and m are added to the network. Priority information adding means determined from the congestion situation of
  • the receiving device is not limited to
  • Packet loss detecting means for detecting, from the degree information, a specific bucket having a high priority in which a loss has occurred and a sequence number of a packet to be retransmitted when the loss has occurred.
  • a packet retransmission method includes a transmitting apparatus for transmitting a packet to which a sequence number is added, a receiving apparatus connected to the transmitting apparatus via a network, and a request connected to the receiving apparatus.
  • the transmitting device includes:
  • a retransmission buffer for storing packets transmitted to the receiving device, and a retransmission for identifying and notifying the sequence number and the maximum (latest) sequence number provided to the requesting application from the retransmission request bucket received from the receiving device.
  • a transmitting device that transmits the packet to which the sequence number is added; a receiving device connected to the transmitting device via a network; and a request application unit connected to the receiving device.
  • a receiving device includes:
  • a receiving buffer for storing packets received from the transmitting device
  • a retransmission request transmission step for transmitting the sequence number stored in the retransmission request list to the transmission step with the retransmission request packet put on the retransmission request packet; and providing a packet for supplying the packet in the reception buffer to the request aggregation unit.
  • a transmitting device that transmits the packet to which the sequence number is added; a receiving device connected to the transmitting device via a network; and a request application unit connected to the receiving device.
  • the transmitting device includes: A retransmission buffer for storing packets transmitted to the receiving device, and a retransmission for identifying and notifying the sequence number and the maximum (latest) sequence number provided to the requesting application from the retransmission request packet received from the receiving device.
  • the receiving device includes
  • a receiving buffer for storing the packets received from the transmitting device; a receiving step of storing packets in the receiving buffer while sorting the packets received from the transmitting device in sequence number order;
  • a packet loss detecting step for detecting, a retransmission sequence number adding step for instructing to add a sequence number of the bucket in which the loss is detected to a retransmission request list,
  • a retransmission request transmission step for transmitting the sequence number stored in the retransmission request list to the transmission step with the retransmission request packet put thereon, and a packet for supplying the packet in the reception buffer to the request application unit.
  • the receiving device is not limited to
  • the method After receiving the specific packet or the packet to be retransmitted at the time of the loss, the method includes a receiving step of storing the packet to be retransmitted at the time of the specific packet or the loss in the reception buffer while sorting in order of the sequence number. is there.
  • a retransmission request list that stores the sequence number of the bucket that is currently requesting retransmission and the sequence number of the packet that requests retransmission at the time of the next retransmission request, adds and deletes sequence numbers, and generates a retransmission request list.
  • a retransmission request list management step for switching the state of the packet of the sequence number stored in the retransmission request state to the retransmission request state.
  • Sequence of one or more buckets to be retransmitted present in the retransmission request list A retransmission request transmitting step of generating one retransmission request packet carrying a number, and transmitting the retransmission request packet to a transmitting device,
  • the transmission device includes
  • a retransmission request transmitting step for generating one retransmission request packet on which the maximum (latest) sequence number of the packet provided by the packet providing step is provided to the requesting application unit, and transmitting the retransmission request packet to a transmitting device;
  • the transmission device includes
  • a retransmission request receiving step for extracting and notifying the maximum sequence number from the retransmission request bucket received from the receiving device
  • a retransmission request transmission step for generating a retransmission request packet on which a packet number and a maximum (latest) sequence number of a packet provided to the request application unit by the packet providing step are added, and transmitting the retransmission request packet to a transmitting apparatus.
  • the transmission device includes
  • the receiving device It is provided with. Also, the receiving device
  • a retransmission sequence deletion step for taking out the sequence number from the retransmission request response packet and issuing a deletion instruction to the retransmission request list management step to delete the same sequence number as the sequence number from the retransmission request list;
  • An instruction to set the state of the retransmission request list to the "ACTIVE" state which means that a packet having the sequence number remaining in the retransmission request list was requested to be retransmitted but is not retransmitted from the transmitting apparatus in the future.
  • one or more packet payloads are provided to the requesting application unit, and a sequence number smaller than the sequence number of the packet is set in the retransmission request list. And provides the paying port of the packet of the sequence number (N + 1) following the sequence number (N: N is a natural number) of the previously provided packet within the designated time, and If the packet of the next sequence number (N + 1) does not exist in the reception buffer or is not inserted within the designated time, a packet notifying the request application section that the packet to be provided has been lost. It is provided with a providing step.
  • a packet providing step is provided in which packet loss detection and retransmission request transmission are performed once or more within the specified time. Also, the receiving device
  • the status of the retransmission request list indicates that a packet with the sequence number stored in the retransmission request list has already been requested to be retransmitted to the transmitting device, but will not be retransmitted from the transmitting device in the future.
  • the "ACTIVE" state if the sequence number of the packet to be provided to the request advertisement section is in the retransmission request list, it is determined that retransmission is not performed even if a retransmission request is made, and immediately without waiting for the specified time.
  • a packet providing step for notifying the requester that the packet to be provided to the client has been lost.
  • the packet between the sending and receiving when the packet is lost in the packet communication in which the general sequence number given to all the packets and the priority sequence number given to the specific packet or the packet to be retransmitted when the packet is lost are added.
  • the general sequence number given to all the packets and the priority sequence number given to the specific packet or the packet to be retransmitted when the packet is lost are added.
  • the transmitting device is
  • the receiving apparatus After receiving the specific packet or the packet to be retransmitted at the time of loss, the receiving apparatus stores a packet to be retransmitted at the time of the specific packet or the loss in a reception buffer while sorting in order of general sequence number. It is provided.
  • a retransmission list for storing a general sequence number of a packet to be retransmitted is generated, and a retransmission list management step for adding and deleting the general sequence number is provided.
  • a retransmission sequence number deletion step for issuing an instruction to delete the general sequence number from the retransmission list to a retransmission list management step;
  • a packet loss detection step of detecting a specific packet having a high priority that caused the loss and a general sequence number of a packet to be retransmitted when the loss occurs;
  • the transmission device includes
  • the receiving device It is provided with. Also, the receiving device
  • the transmission device includes
  • a retransmission request receiving step for taking out and notifying the maximum general sequence number from the retransmission request packet received from the receiving device
  • One retransmission request packet is generated by adding one or more general sequence numbers present in the retransmission list and the maximum (latest) general sequence number of the packet provided to the requesting application unit by the packet providing step.
  • the general sequence number from the retransmission request packet received from the receiving device a retransmission request receiving step of extracting and notifying the maximum general sequence number
  • the payload (data) of one or more packets is provided to the requesting application unit, and a general sequence number smaller than the general sequence number of the packet is provided from the retransmission list.
  • the method includes a packet providing step of detecting packet loss again and transmitting the retransmission request several times within the designated time.
  • the requesting application section does not make a retransmission request and waits for a specified time without missing a packet to be provided. It is provided with a packet providing step for notifying the user.
  • priority information to be assigned to a specific high-priority packet or a packet to be retransmitted in case of loss is assigned every m packets (m ⁇ n: m , N are natural numbers) and added to bucket p
  • the receiving device is not limited to
  • FIG. 1 is a configuration diagram of a retransmission system according to Embodiment 1,
  • FIG. 2 is a flowchart of the transmitting apparatus according to the first embodiment
  • FIG. 3 is a flowchart of bucket receiving of the receiving apparatus according to the first embodiment.
  • FIG. 4 is a flowchart of a retransmission request list management process of the receiving device according to the first embodiment
  • FIG. 5 is a flowchart of the packet loss detection processing of the receiving apparatus according to the first embodiment
  • FIG. 6 is a flowchart of receiving a retransmission request response of the receiving apparatus according to the first embodiment.
  • FIG. 7 is a flowchart of providing a packet of the receiving apparatus according to the first embodiment;
  • Fig. 8 shows an example of bucket loss and packet loss detection processing in the first embodiment.
  • FIG. 9 shows a retransmission system and a packet transfer system according to Embodiment 2. Configuration diagram of the system,
  • FIG. 10 is a flowchart of a transmitting apparatus according to the second embodiment.
  • FIG. 11 is a flowchart of an example 1 of packet reception of the receiving apparatus according to the second embodiment.
  • FIG. 12 is a flowchart of Example 2 of packet reception of the receiving apparatus according to Embodiment 2,
  • FIG. 13 is a flowchart of a retransmission request list management process of the receiving device according to the second embodiment
  • FIG. 14 is a flowchart of a packet loss detection process of the receiving device according to the second embodiment
  • FIG. 15 is a flowchart showing a flow of providing a packet of the receiving apparatus according to the second embodiment.
  • Fig. 16 shows an example of packet loss and bucket loss detection processing in the second embodiment.
  • FIG. 17 is a configuration diagram of a retransmission system and a packet transfer system according to Embodiment 3,
  • Figure 18 shows an example of a bucket with priority information added.
  • FIG. 19 is a flowchart showing the operation of the bucket loss detecting means of the receiving apparatus according to the third embodiment.
  • FIG. 20 is an example of packet loss and packet loss detection means according to the third embodiment.
  • Embodiment 1 Embodiment 1
  • FIG. 1 is a bucket retransmission system according to Embodiment 1 of the present invention
  • FIG. 3 is a configuration diagram of a packet transfer system, showing retransmission of a packet between transmission and reception and packet transfer when a packet in a packet communication with a sequence number added is lost.
  • the retransmission system and the packet transfer system according to the first embodiment are transmitted from a transmission apparatus 101 via a network 104 such as an Internet radio network or the like, a transmission apparatus 101 for transmitting a packet, and a network 104.
  • the receiving device 102 receives the received packet, and the requester (application) 103 requests the packet data from the receiving device 102.
  • transmitting apparatus 101 stores retransmission packet storing means 105 for storing only packets to be retransmitted among the packets transmitted to receiving apparatus 102 in a retransmission buffer, and retransmission request packets from receiving apparatus 102.
  • the sequence number of the packet requested to be retransmitted is received from the retransmission request packet, and the maximum sequence number provided to the requester is taken out to the retransmission packet detection means 107 (this maximum sequence number means the latest packet sequence number).
  • Retransmission request receiving means 106 for notifying the retransmission buffer deletion means 120 to the retransmission buffer 120, and retransmission for deleting a packet having a sequence number smaller than the maximum (latest) sequence number provided to the requester 103 from the retransmission buffer. Sequence number notified by the retransmission request receiving means 106 from the transmission buffer deletion means 120 and the retransmission buffer or evening buffer.
  • Retransmission packet detection means 107 for detecting, retransmission request response means 108 for transmitting all the sequence numbers detected by retransmission packet detection means 107 to one retransmission request response packet and transmitting to reception apparatus 102, and retransmission It has retransmission means 109 for retransmitting the bucket of the sequence number detected by the bucket detection means 107 to the receiving device 102. Also, the receiving apparatus 102 receives the packet from the transmitting apparatus 101, and stores the bucket in the receiving buffer while sorting the packets in order of the sequence number, and makes a retransmission request at the next retransmission request.
  • the retransmission request list management means 115 adds and deletes sequence numbers and performs state transition of the retransmission request list, and the number of times and time of reception of packets
  • Packet loss detection means 111 that detects the sequence number of a packet that has been lost due to inconsistency in the sequence number of the packet in the reception buffer at the packet reception interval determined from the packet loss and packet loss detection means 111 that detects the packet loss.
  • the retransmission request notifying means 113 which issues a command to set the state to "READY" meaning that it is not known whether or not the packet is retransmitted, to the retransmission request list management means 115, and the packet loss detecting means 111, retransmit at intervals at which packet loss detection is performed.
  • the retransmission request transmitting means 114 for transmitting a plurality of sequence numbers present in the request list to one retransmission request packet and transmitting the same to the transmitting device 101, and receiving the retransmission request response packet from the transmitting device 101 from the retransmission request response packet.
  • Retransmission request response receiving means 116 for notifying the sequence number of the retransmitted packet to retransmission sequence number deleting means 117, and retransmission for sending the sequence number deletion instruction notified by retransmission request response receiving means 116 to the retransmission request list
  • the sequence number deletion means 117 and the status of the retransmission request list are indicated by the sequence number in the retransmission request list.
  • the retransmission request response notifying means 118 which issues to the retransmission request list management means 115 an instruction to set the status to "ACTIVE" meaning that the transmission request has not been retransmitted from the transmitting apparatus 101, and It has a packet providing means 119 for providing one or a plurality of packet payouts to the requester (application) 103 from among the packets stored in the application.
  • FIG. 2 is a flowchart for explaining the transmitting device
  • FIGS. 3, 4, 5, 6, and 7 are flowcharts for explaining the receiving device
  • FIG. FIG. 4 illustrates a processing flow from reception of a packet by the receiving means 110 to a request of the retransmission request by the retransmission request transmitting means 114, and FIG.
  • FIG. 4 illustrates a processing flow of the retransmission request list management means 115 of the receiving apparatus 102.
  • FIG. 5 illustrates the processing flow of the packet loss detecting means 111 of the receiving apparatus 102, and
  • FIG. 6 illustrates the processing flow when the retransmission request response packet is received by the retransmission request response receiving means 116.
  • FIG. 7 illustrates the processing flow when a requester (an abbreviated) requests the provision of a packet by the packet provision means 119.
  • transmitting apparatus 101 transmits a packet to receiving apparatus 102 (step S202).
  • Transmitting apparatus 101 stores the transmitted packet in the retransmission buffer (step S203). At this time, all packets may be stored in the retransmission buffer 201, or only important packets to be retransmitted may be stored in the retransmission buffer 201.
  • the bucket with the smallest sequence number is deleted from the retransmission buffer 201 (step S205).
  • the receiving means 110 of the receiving device 102 Upon receiving the packet from the transmitting device 101 as shown in FIG. 3 (step S301), the receiving means 110 of the receiving device 102 stores the received packets in the receiving buffer while sorting them in order of sequence number (step S301).
  • Step S the packet loss detecting means 11 1 checks for missing packets.
  • This check processing is called packet loss detection processing.
  • the interval at which the packet loss detection means 111 performs the packet loss detection processing may be, for example, the sequence number or the time of the last packet that has been previously subjected to the packet loss detection processing (step S306). It is determined from the difference between the stamp and the sequence number or time stamp of the packet received this time (step S303).
  • the interval between the sequence numbers for performing the packet loss detection processing (step S306) is Nint, the time stamp interval is Tint, and the packet loss detection means 111 performs the last packet loss detection processing (step S306).
  • the receiving means 110 receives the packet received this time. If the sequence number of the packet is equal to or greater than Ncur + Nint, or the time stamp of the received packet is equal to or greater than Tcur + Tint, if the sequence number of After substituting the sequence number of the bucket and the time stamp, the packet loss detection processing (step S306) is performed. As a result, the values of Ncur and Tcur become the last sequence number and timestamp of this new packet.
  • Nint and Tint may be fixed values, or may be dynamically determined from the network congestion status.
  • Packet loss detection unit 111 sorted received Roh order of sequence number, the 'Uz off ⁇ previous packet loss detection processing (S30 6) the last Pakedzu bets next Pakedzu Bok from the sequence number Ncur Been ( The range up to the packet of the last packet of this time (excluding the Ncur packet), or the range of the time stamp Tcur (the time stamp of the last packet this time) (Excluding the Tcur packet), the sequence missing by checking the consistency of the sequence number Find the number.
  • FIG. 5 shows a detailed flow of the bucket loss detection processing (step S306) by the bucket loss detection means 111.
  • the packet loss detecting means 111 first sets P in the packet buffer in which the sequence number becomes equal to FSN in the reception buffer (step S502).
  • the FSN is the sequence number of the packet next to the last bucket in which the previous packet loss detection was performed.
  • Loss is the number of missing buckets
  • I is the distance from the FSN
  • SN_list is the list of missing packet sequence numbers
  • 0 is set as the initial value for Loss and FSN
  • blank is set as the initial value in SN—list (Empty list) is set (step S503).
  • the sequence number Ncur (the last packet of the current packet) starts from the next packet after the last packet in which the previous packet loss detection processing (S306) was performed.
  • Sequence number) up to a packet (excluding Ncur packets), or a packet up to a short stamp Tcur (time stamp of the last packet of this time) (but a Tcur packet) ) Is compared with the sequence number of the packet stored in the pointer P of the reception buffer and FSN + I (step S505).
  • step S505 if the sequence number of the packet stored in the FSN + I is the same as the sequence number of the packet stored in the boyfriend P, the packet of the sequence number FSN + I is received without any loss c.
  • step S506 I is incremented (step S506), and the pointer of the next packet is set in P (step S506). If it is determined in step S505 that the sequence numbers of the packets stored in the FSN + I and the buses P are not equal, the process proceeds to step S507. If FSN + I is smaller than the sequence number of the packet stored in the bus P (step S507), it means that the sequence number FSN + I is missing. Therefore, FSN + I is added to SNJist (step S508), and I and Loss are incremented (step S509).
  • step S504 that is, the range from the packet following the last packet in which the previous packet loss detection process (S306) was performed to the packet of sequence number Ncur (the sequence number of the last packet of this time) ( However, this sequence number is compared in the range up to the packet of the timestamp Tcur (the timestamp of the last packet of this time) (excluding the packet of the Ncur), but excluding the packet of the Tcur).
  • step S510 a value is added to the FSN, and the FSN is set as a start sequence number for the next packet loss detection process (step S511).
  • the number in the SN_list is the sequence number of the missing bucket in the range, and the loss is the number of the missing packets.
  • Fig. 8 shows an example of the reception buffer where a packet loss has occurred and the result of executing the packet loss detection processing.
  • 802 indicates the state of FSN, Ncur, I, Loss, Snjist at the time of the Nth packet loss detection processing
  • 803 represents the state of FSN, Ncur, I, Loss, and Snjist at the time of the N + 1th packet loss detection processing.
  • 0 is set to Loss as an initial value
  • 0 is set to I as an initial value
  • 0 is set to SN-list as an initial value (step S503).
  • the process branches to S506, where I is incremented by one and the pointer P is also incremented by one to set the pointer of the next packet (step S506). As a result, 1 1, and the sequence number stored in the pointer P is 9.
  • Step S505 the sequence number stored in the pointer P is compared again with the sequence number stored in the pointer P.
  • Is set step S506).
  • 1 2
  • step S505 the process returns to the loop, and again compares the FSN + I with the sequence number stored in the pointer P (step S505).
  • the sequence number stored in the boyfriend P is 2 1 2
  • Is incremented by 1 and the pointer P is also incremented by 1 to set the next packet packet (step S506).
  • 1 5
  • the sequence number stored in the pointer P becomes 15.
  • step S505 the process returns to the loop, and again compares the FSN + I with the sequence number stored in the pointer P (step S505).
  • step S507 the result of the comparison is “sequence number stored in the pointer P by FSN + 1”, and the flow branches to step S508.
  • the value of SN_list changes from "11, 13" to "11, 13, 13, 14".
  • Loss is also incremented by one (step S509).
  • step S306 After executing the packet loss detection processing (step S306), if Loss> 0, it means that a packet loss has been detected.
  • step S
  • the retransmission request list management unit 115 that has received the addition command adds the SNJist sequence number to the retransmission request list (steps S402 to S407). However, double registration is not performed. However, if all of the sequence numbers in the SN_list are in the "ACTIVE" retransmission request list and none of them can be added to the retransmission request list, the following retransmission request notification processing and retransmission request transmission processing are performed. Absent.
  • retransmission request notifying means 113 issues an instruction to retransmission request list managing means 115 to change the state of the retransmission request list to the "READY" state (step S308).
  • the retransmission request list in the "READY" state is a list of sequence numbers for which retransmission requests are made, but it is not known whether all sequence numbers are retransmitted.
  • the retransmission request list management unit 115 that has received the READY command sets the retransmission request list to a “READY” state (steps S402, S03, and S412).
  • the retransmission request transmitting means 114 requests the transmitting apparatus 101 to retransmit the sequence numbers in the retransmission request list (step S309).
  • the sequence number of the retransmission request list and the maximum (latest) sequence number of the packet provided to the requester (application) 103 at that time are placed in one retransmission request packet, and the retransmission request packet is transmitted.
  • the information is transmitted to the device 101 (step S310).
  • the retransmission request receiving means 106 of the transmitting apparatus 101 receives the retransmission request packet as shown in FIG. 2 (step S207), and receives the sequence number and the requester (application) from the retransmission request packet.
  • the maximum (latest) sequence number provided to 103 is identified (steps S208, S209).
  • the retransmission buffer deleting means 120 does not need to request retransmission any more for packets having a sequence number smaller than the maximum (latest) sequence number in the retransmission buffer 201 provided to the requester (application) 103. because, to remove these Pakedzu door (step S 210) o
  • retransmission packet detecting means 107 searches the retransmission buffer and detects a sequence number equal to the sequence number requested for retransmission (step S211). This sequence number is the sequence number of the packet to be retransmitted, and is called the retransmission sequence number.
  • retransmission request response means 108 generates one retransmission request response packet carrying the retransmission sequence number detected by retransmission packet detection means 107, and transmits the retransmission request response packet to receiving apparatus 102 (step S 212) 0
  • retransmitting means 109 retransmits the packet of the retransmission sequence number to receiving apparatus 102 (step S213).
  • the retransmission request response receiving means 116 of the receiving device 102 Upon receiving the retransmission request response bucket carrying the retransmission sequence number from the transmission device 101 as shown in FIG. 6 (step S601), the retransmission request response receiving means 116 of the receiving device 102 receives the retransmission sequence number from the retransmission request response bucket. Is identified (step S602).
  • retransmission sequence number deletion means 117 issues a deletion command to retransmission request list management means 115 so as to delete from the retransmission request list the retransmission sequence numbers of packets for which retransmission requests have become unnecessary due to successful reception. (Step S603).
  • the retransmission request list management means 115 that has received the delete command deletes the retransmission sequence number from the retransmission request list as shown in FIG. 4 (steps S402, S403, S408 to S411). Therefore, the sequence number remaining in the retransmission request list is lost, so that a retransmission request was made, but this is the sequence number of a packet that is not retransmitted from transmitting apparatus 101.
  • the retransmission request response notifying means 118 issues a command to the retransmission request list management means 115 so as to change the retransmission request list to the "ACTIVE" state as shown in FIG. 6 (step S604).
  • the retransmission request list management means 115 Upon receiving the ACTIVE command, the retransmission request list management means 115 changes the retransmission request list to the "ACTIVE" state as shown in FIG. 4 (steps S402, S403, S413).
  • the retransmission request list in the "ACTIVE" state means a sequence number that is not retransmitted from the transmitting device even if a retransmission request is made.
  • the requester (application) 103 requests the payload of the packet received by the receiving device 102.
  • the packet providing means 119 of the receiving apparatus 102 transmits the packet provided previously by the waiting time.
  • the bucket providing means 119 notifies the requester (application) 103 that the bucket of Tnext has been lost.
  • the requester (abbreviation) 103 requests the payload of the bucket and the allowable waiting time from the request to the provision of the paying port (step S702), as shown in FIG.
  • the current time is set to Tstart (step S703), and it is checked whether or not the packet of the sequence number Tnext exists in the reception buffer (step S704). If there is a packet of Tnext in the reception buffer, the payload of the packet of Tnext is provided (step S705).
  • step S706 If there is no packet of Tnext in the reception buffer, the time is checked to see if the current time has exceeded the waiting time (step S706).
  • the requester (application case) 103 is notified (step S709). If not, it is checked whether or not the sequence number Tnext is on the retransmission request list (step S707).
  • Tnext is in the retransmission request list and the retransmission request list is in the "ACTIVE" state (step S708), it means that even if a retransmission request is made from transmitting apparatus 101, it will not be retransmitted.
  • the requester (application) 103 is notified that the is lost (step S709). If Tnext is not in the retransmission request list, Tnext is set in the FSN (step S711), the sequence number of the latest packet currently received is set in Ncur (step S712), and the latest received packet is set in Tcur.
  • a packet time stamp is set (step S713), after which a packet loss detection process (step S714), a retransmission sequence number addition process (step S715), and a retransmission request response notification process (step S716) Using the retransmission request transmission process (steps S717 and S718), the Tnext retransmission request is made again, the latest packet loss is detected, and the retransmission request is made at the same time.
  • the waiting time When the waiting time is set to 0, it checks only whether there is Tnext in the receive buffer, and if not, does not request retransmission of the Tnext packet and immediately confirms that the Tnext packet was lost. Notify the requester (application) 103. Conversely, if the waiting time is set to infinite time, if there is no Tnext packet in the receive buffer, retransmission request is made many times, and waits until the Tnext packet is retransmitted.
  • the retransmission request transmitting means transmits the retransmission request packet, it waits for the retransmission request interval Tr (step S720), and checks again whether there is a Tnext packet in the reception buffer. Tr may be changed each time a retransmission request is made.
  • steps S719, S720, and S721 a sleep time for the waiting time is created.
  • step S720 sleep (delay) is performed for 2 seconds. Therefore, two seconds later, the reception buffer is checked and the packet loss detection processing is performed again (step S714).
  • the reception buffer can be checked and the packet loss detection process (step S714) can be performed periodically within the permitted time, that is, during the waiting time.
  • the reception buffer is also checked. However, since the timeout is determined in step S706, the process is not performed until the packet loss detection process.
  • the packet data can be provided within the waiting time.
  • a retransmission packet storage unit by providing a retransmission packet storage unit, a retransmission request reception unit, a retransmission bucket detection unit, and a retransmission unit in a transmission device, only important packets with high priority can be retransmitted. Waste of the network load due to the retransmission processing can be minimized, and the transmission capacity of high-priority packets can be ensured even during network congestion.
  • the retransmission packet storage means saves only important packets with high priority in advance in the retransmission buffer instead of selecting the packet to be retransmitted with high priority from among all the transmitted packets. As a result, it is possible to reduce the processing load for searching for retransmitted packets, minimize the retransmission buffer of the transmitting device, and reduce waste of resources.
  • the receiving means shuffles the packet received from the transmitting device. -Since the data is stored in the reception buffer while sorting in the order of the can number, when the packet loss detection process detects a lost bucket from among the packets in the reception buffer, it can be detected at high speed.
  • identification of the sequence number making the retransmission request and identification of the sequence number of the retransmitted packet are performed. It can be done easily.
  • a retransmission request for a plurality of packet losses can be made. Also, in a transmitting device that retransmits only important packets with high priority, the receiving device can identify the sequence number of the packet retransmitted from the transmitting device, thereby eliminating unnecessary retransmission requests for packets that are not retransmitted. Or waiting for the packet to be retransmitted, realizing a more real-time transfer method.
  • the retransmission request receiving means and the retransmission buffer deleting means it is possible to reduce the number of retransmission buffers of the transmission device.
  • retransmission packet detection means and retransmission means only packets with high priority to be retransmitted can be retransmitted, and congestion worsens by transferring the minimum number of retransmission packets even in a network congestion state. Can be prevented.
  • the retransmission request response means the sequence number of a packet having a higher priority to be retransmitted can be recognized by the receiving apparatus, and it is possible to prevent the receiving apparatus from making useless retransmission requests.
  • the receiving device can make useless retransmission requests for low priority packets that are not retransmitted from the transmitting device. Can be prevented.
  • the requester application
  • the requester can set a waiting time for each packet, and by that time the provision of a packet payload or the occurrence of a packet loss. Get notifications.
  • the packet loss detection means and the retransmission request sent by the retransmission request transmission means are made several times during the waiting time even when a request is made from the requester (application).
  • the packet loss detection means and the retransmission request are made several times during the waiting time even when a request is made from the requester (application).
  • Embodiment 2 by providing a packet loss detecting means in the receiving device for accurately recognizing the priority of the bucket in which the loss has occurred from the sequence number mismatch and the priority information, waste of low priority packets that are not retransmitted is provided. This can prevent unnecessary retransmission requests, and reduce network waste and retransmission bucket detection processing load on the transmitting device.
  • FIG. 9 is a block diagram of a bucket retransmission system and a packet transfer system showing Embodiment 2 of the present invention.
  • the general sequence numbers assigned to all packets and the method of retransmission when important packets or loss are found.
  • Priority sequence number assigned only to packets judged to be good It shows retransmission between transmission and reception and packet transfer when a packet is lost in the bucket communication.
  • the retransmission system and the packet transfer system according to the second embodiment include a network 904 such as an in-network / wireless network, a transmission device 901 for transmitting a packet, and a transmission device via the network 904.
  • the receiving apparatus 902 includes a receiving apparatus 902 that receives a packet transmitted from the apparatus 901, and a requester (application) 903 that requests the packet data from the receiving apparatus 902.
  • transmitting apparatus 901 receives retransmission packet storing means 905 for storing only packets to be retransmitted among the packets transmitted to receiving apparatus 902 in a retransmission buffer, and receives a retransmission request packet from receiving apparatus 902. Then, the general sequence number of the retransmitted packet is extracted from the retransmission request packet, and the maximum general sequence number provided to the requester (this maximum general sequence number is Retransmission request receiving means 906 for notifying the retransmission buffer deletion means 907 of the general sequence number (meaning the general sequence number), and a general sequence number smaller than the maximum (latest) general sequence number provided to the requester 903.
  • Retransmission buffer deleting means 907 for deleting the packet of the retransmission buffer from the retransmission buffer, and retransmission request receiving means 906 from the retransmission buffer.
  • a retransmission packet detecting means 908 for detecting the knowledge has been commonly sequence number, and a retransmission means 909 to retransmit the packets of the general sequence number detected at the same retransmission Baketsuto detecting means to the receiving device 902.
  • the receiving device 902 receives the packet from the transmitting device 901 and stores the packet in a receiving buffer while sorting the packets in the order of the general sequence number.
  • the receiving device 902 also performs a retransmission request at the time of the next retransmission request.
  • Retransmission list management that adds and deletes general sequence numbers in the retransmission list that stores the general sequence number of the packet and the packet that is currently requesting retransmission.
  • Means 915 if the general sequence number of the received packet is in the retransmission list, retransmission sequence number deletion means 911 that issues an instruction to delete the general sequence number to retransmission list management means 915, and the number of times and time of packet reception Each time an important packet is lost due to the determined packet reception interval or mismatch of the priority sequence number, the packet in the receive buffer is lost due to the mismatch between the general sequence number and the priority sequence number of the received packet.
  • the additional means 913 and the packet loss detection means 912 perform packet loss detection. At this time, a plurality of general sequence numbers present in the retransmission list are added to one retransmission request packet and transmitted to the transmission device 901 from the retransmission request transmission means 914 and the packet stored in the reception buffer. There is provided a packet providing means 916 for providing one and a plurality of packet payouts to a requester (application) 903.
  • FIG. 10 is a flowchart for explaining the transmitting device
  • FIGS. 11, 12, 13, 14, and 15 are flowcharts for explaining the receiving device.
  • FIGS. 11 and 12 explain two examples of the processing flow from when the receiving means receives a packet to when the retransmission request transmitting means makes a retransmission request
  • FIG. 13 shows the retransmission of the receiving apparatus.
  • FIG. 14 illustrates the processing flow of the packet loss detection means 912 of the receiving device
  • FIG. 15 illustrates the processing flow of the packet loss detection means 912 of the receiving device. This explains the processing flow when a request to provide a packet is made.
  • transmitting apparatus 901 transmits a packet to receiving apparatus 902 (step S1001).
  • Transmission device 901 retransmits the transmitted packet Save it in the buffer (step S1002).
  • all packets may be stored in the retransmission buffer 1005, or only important packets to be retransmitted may be stored in the retransmission buffer.
  • step S1003 the packet with the smallest general sequence number is deleted from the retransmission buffer 1005 until the size of the retransmission buffer 1005 becomes equal to or less than the maximum number of packets or the maximum time.
  • the receiving means 910 of the receiving device 902 sorts the received packet into the receiving buffer while sorting it in the order of the general sequence number. Save it (Steps S1102, S1202)).
  • the retransmission sequence number deletion means 911 checks whether or not the received packet is on the retransmission list every time a bucket is received. If the general sequence number of the received packet is on the retransmission list (steps S1103 and S1203), this received packet means the retransmitted packet, and since there is no need to request this retransmission any more, A delete command is issued to the retransmission list management means 915 so as to delete the general sequence number of the received bucket from the retransmission list (steps S1104 and S1204).
  • the bucket loss detecting means 912 checks whether the bucket is missing. This check processing is called packet loss detection processing.
  • packet loss detection processing Two examples of packet loss detection processing performed by the packet loss detection means 912 after receiving a packet will be described. As shown in the flow chart of Example 1 in FIG. 11, the interval at which the packet loss detection means 912 performs the packet loss detection processing (step S1108) is, for example, the previous packet It is determined from the difference between the general sequence number and time stamp of the last packet that has been subjected to the packet loss detection processing (step S1108) and the general sequence number and evening stamp of the packet received this time (step S1105).
  • the general sequence number for performing the packet loss detection process is Nint
  • the time stamp interval is Tint
  • the general sequence of the last packet that was previously subjected to the packet loss detection process step S1108
  • the general sequence number of the packet received by the receiving unit 910 this time is equal to Ncur + Nint If it is greater than or greater, or the timestamp of the received packet is equal to or greater than Tcur + Tint (step S1105), the general sequence number and time of the packet received this time are stored in Ncur and Tcur.
  • a packet loss detecting means is performed (step 1108).
  • the values of Ncur and Tcur become the last general sequence number and time stamp of the new packet this time.
  • Nint and Tint may be fixed values or may be dynamically determined from the network congestion status.
  • the packet loss detecting means 912 sets the general sequence number Ncur (Ncur) from the next packet after the last packet that has been subjected to the packet loss detection processing (step S1108) in the reception buffers sorted in the order of the general sequence number. Range up to the packet of the last packet of this time (general sequence number) (excluding Ncur packet), or range up to the packet of timestamp Tcur (timestamp of this last packet) (Excluding Tcur packets), general sequence number and priority sequence number Check the integrity of packets and detect the loss of high-priority packets to be retransmitted.
  • FIG. 14 shows a detailed flow of the packet loss detection processing (step S1108) by the packet loss detection means 111.
  • Pakedzu preparative loss detection unit 111 is initially generally the sequence number in the received Badzufa to sets the Boyne evening equal packets and FSN to P (Step S1402) C where, FSN is the last packet This is the general sequence number of the packet next to the last packet in which loss detection was performed.
  • the priority sequence number of the packet stored in the bus P is stored in the MPSN (step S1403).
  • MPSN means the highest (latest) priority sequence number during the missing bucket search.
  • Loss is the number of lost packets
  • I is the distance from the FSN
  • SNJist is the list of general sequence numbers of lost packets with high priority to be retransmitted
  • 0 is set as the initial value for Loss and FSN. Is set to blank (empty list) as the initial value (step 1404).
  • the general sequence number Ncur (the last packet of the current packet) in the above-mentioned range shown in step 1405 of the packet loss detection process is applied from the next packet after the last packet for which the previous packet loss detection process (step S1108) was performed.
  • the range up to the packet of the general sequence number (excluding the Ncur packet), or the range up to the packet of the time stamp Tcur (the time stamp of the last packet this time)
  • the general sequence number of the packet stored in the pointer P of the reception buffer is compared with the FSN + I (step S1406).
  • step S1406 if the general sequence number of the packet stored in FSN + I is the same as the general sequence number of the packet stored in Boyne P, the general sequence number; the packet of FSN + I is received without loss Will be. Therefore, the priority sequence number of the packet stored in the pointer P is set in MPSN (step S1407), I is incremented (step S1408), and the pointer of the next packet is stored in P. Set (Step S1410) o In Step S1406, if the FSN + I is not equal to the general sequence number of the packet stored in the bus P, the process proceeds to Step S1409.
  • FSN + I is smaller than the general sequence number of the packet stored in the pointer P (step S1409), and if MPSN is smaller than the priority sequence number of the packet stored in the pointer P (step 1411). This means that the packet with the general sequence number FSN + I has been lost, and that packet is a packet with a high priority to be retransmitted. There, FSN + I is added to SN_list (step 1414), and I and Loss are incremented (step 1415).
  • step S1411 if the MPSN is not smaller than the priority sequence number of the packet stored in the pointer P (step 1411), the lost packet is a low-priority packet that does not require retransmission, and Therefore, the missing general sequence number is not added to SNJist.
  • step S1405 [General sequence number Ncur (general sequence number of the last packet this time) from the next packet after the last packet that performed the previous packet loss detection process (S1108)] Range up to (but not including, Ncur packets), or up to (up to, but not including) Tcur (time stamp of last packet) )],
  • step S1416 add I to the FSN and use the FSN as the start general sequence number for the next packet loss detection process (step S1416).
  • step S1417) At this time, the number in the SNJist is the general sequence number of the missing packet within the range and the bucket with the highest priority to be retransmitted, and the number of lost packets is the number of missing packets.
  • Fig. 16 shows an example of the reception buffer where a packet loss has occurred and the result of executing the packet loss detection processing.
  • reference numeral 1602 denotes states of the FSN, Ncm ⁇ I, Loss, and Snjist during the Nth packet loss detection processing.
  • 163 represents the state of FSN, Ncur, I, Loss, Sn_list at the time of the (N + 1) -th packet loss detection process.
  • the general sequence numbers of the packets in the receive buffer 1601 are:, 8, 9, 10, 12, 15, 16, 18, 19, 22, 23, 24, 25 , 26,..., and the priority sequence numbers are 4, 4, 5, 7, 7, 8, 8, 9, 10, 0, 1, 1, 1, 1, 1, 1, 1, 2,..., respectively.
  • the numbers missing from the general sequence number 16 to 23 Is detected.
  • three general sequence numbers of 17, 20, and 21 are missing, and these three packets are lost.
  • the priority sequence numbers of the general sequence numbers 19 and 22 are 8 and 9, respectively, and the priority sequence number of the general sequence number 22 packet is the general sequence number 19 packet.
  • the lost general sequence number 20 and 21 packets may be higher priority packets to be retransmitted, or the general sequence number 22 higher priority packet to retransmit. Therefore, both general sequence numbers 20 and 21 may be low-priority packets that do not require retransmission. In this way, when packets are continuously lost and the priority sequence numbers are not equal before and after that, it is not possible to determine which is the higher priority bucket, so the general sequence numbers of all continuously lost packets are recorded in SL_list. to add.
  • 0 is set to Loss as an initial value
  • I is set to 0 as an initial value
  • SNJist is set to 0 as an initial value (step S1404).
  • step S1406 the process returns to the loop, and again compares the FSN + I with the general sequence number stored in the pointer P (step S1406).
  • 1 3, MPSN-5, and the general sequence number stored in Boyne P is 12.
  • the packet loss detection means 912 detects that the packet of the priority sequence number “11” has been lost.
  • 0 is set to Loss as an initial value
  • I is set to 0 as an initial value
  • SNJist is set to 0 as an initial value (step S1404).
  • the process returns to the loop, and again compares the FSN + I with the general sequence number stored in the pointer P (step S1406).
  • FSN + I 1 6 +
  • step S The flow branches to 1407, and the priority sequence number of the packet stored in the bus P is set to 9 in the MPSN (step S1407), and I is incremented by 1 (step S1408).
  • the POINT setting of the next packet is set by incrementing the POINT setting P by one (step S1410).
  • step 1108 After the packet loss detection process (step 1108), if Loss> 0, packet loss has been detected, so the retransmission sequence number adding means 913 is registered in the retransmission list management means 915 in the SN_list. It issues an instruction to add the general sequence number of the missing packet (step S1109).
  • the retransmission list management unit 915 that has received the addition instruction adds the general sequence number of the SN_list to the retransmission list as shown in FIG. 13 (steps S1302 to S1307). However, double registration is not performed.
  • the retransmission request transmitting means 914 makes a request for retransmission of the general sequence number of the retransmission list to the transmitting device 901 (step SlllO, Sllll) o
  • the general sequence number of the retransmission list Then, the maximum (latest) general sequence number of the packet provided to the requester (application) 903 at that time is put on one retransmission request packet (step S1110), and this retransmission request packet is transmitted to the transmitting device 901. (Step smi)
  • step S1201 to S1203 the operations in steps S1201 to S1203 are the same as those in steps S1101 to S1103 in FIG. 11, and a description thereof will be omitted.
  • the priority sequence number RPSN of the reception bucket is compared with the highest priority sequence number MPSN in the reception buffer (step S1205). If RPSN-MPSN> 1, then the priority sequence number becomes discontinuous (step S1205). Therefore, one or more high-priority packets to be retransmitted are always lost.
  • a packet having a general sequence number 10 is stored in the reception buffer of FIG. 16 and a packet having a general sequence number 12 has been received.
  • the priority sequence number jumps from 5 to 7 and is clearly discontinuous, with RPSN-MPSN> 1 (step S1205). Therefore, one or more packets with high priority to be retransmitted are always lost. In this example, the packet of general sequence number 11 is missing.
  • a general sequence number of MSN + 1 to RSN-1 (in this example, a general sequence number of RSN-1)
  • An add command is issued to the retransmission sequence number adding means to add the packet of the number 11) to the retransmission list (step S1208). If No in step S1205, that is, if the RPSN and the MPSN are equal or the RPSN is larger by 1, it is not known from the priority sequence number alone whether or not the packet has been lost.
  • step S1207 it means that the general sequence number is a continuous gun and there is no packet loss. Therefore, since there is no need to retransmit the packet, the process returns to step S1201 to perform the process of receiving the next packet without performing the retransmission sequence number addition process (step S1201). If RSN—MSN> 1 in step S1207, the general sequence numbers are discontinuous, and one or more high-priority packets to be retransmitted are missing. In order to make a request for retransmission of the packet between the RSNs, the MSN issues an addition command to the retransmission sequence number adding means to add the general sequence number of the RSN to the retransmission list (step S1208).
  • the retransmission list management unit 915 that has received the addition command adds the general sequence number of the SN list to the retransmission list as shown in FIG. 13 (steps S1302 to S1307). However, double registration is not performed.
  • the retransmission request transmitting unit 914 back to Figure 12, generally the retransmission list, - the cans requests retransmission number to the transmitter 901 (step S1209, Sl210) o General sequence number of this case, the retransmission list Then, the maximum (latest) general sequence number of the packet provided to the requester (application) 903 at that time is put on one retransmission request packet (step S1209), and this retransmission request packet is transmitted to the transmission device 901. Yes (Step S1210) o
  • the retransmission request receiving means 906 of the transmitting device 901 receives the retransmission request packet as shown in FIG. 10 (step S1006), and receives the general sequence number requested from the retransmission request packet and the requester (application) 903. Identify the maximum (latest) general sequence number provided to (steps S1007, S1008).
  • the retransmission buffer deleting unit 907 needs to request the retransmission of a bucket having a general sequence number smaller than the maximum (latest) general sequence number in the retransmission buffer provided to the requester (application) 903. Since there are no such packets, delete these packets (step 1009).
  • retransmission packet detecting means 908 searches the retransmission buffer and detects a general sequence number equal to the general sequence number requested for retransmission (step 1010). This general sequence number is the general sequence number of the high priority bucket to be retransmitted, and is called the retransmission sequence number.
  • retransmission means 909 retransmits the packet of the retransmission sequence number to receiving apparatus g 902 (step 1011).
  • the requester (application) 903 requests the payout port of the packet received by the receiving device 902.
  • the packet providing means 916 of the receiving device 902 receives the packet previously provided by the waiting time.
  • the payload of the next packet (general sequence number Tnext) is provided, but the Tnext packet is lost or not retransmitted, so that the Tnext packet's pay packet If the packet cannot be provided, the packet providing means 916 notifies the requester (application) 903 that the packet of Tnext has been lost.
  • the bucket providing means 916 requests the packet payload from the requester (application) 103 and the allowable waiting time from the request to the provision of the pay mouth (step). (S1502), the current time is set to Tstart (step S1503), and it is checked whether or not the packet of the general sequence number Tnext is in the reception buffer (step S1504). If there is a packet of Tnext in the reception buffer, the payload of the packet of Tnext is Provide (step S1505).
  • Step S1506 If there is no Tnext packet in the reception buffer, a time check is performed to determine whether the current time has exceeded the waiting time (step S1506), and if the time is out, the requester is notified that the Tnext packet has been lost. (Ablation) Notify 903 (Step S1508). If not, it is checked whether the general sequence number Tnext is on the retransmission list (step S1507).
  • Tnext is not in the retransmission list, it means that the retransmission request is not transmitted from the transmitting device 901, so the requester (application) 903 is notified of the loss of the Tnext packet (step 1508). ).
  • Tnext is on the retransmission list, it means that a retransmission request was made, but the retransmission request packet did not arrive, or the retransmission packet did not arrive.
  • Tnext is set to FSN (step 1510)
  • the general sequence number of the latest packet received this time is set to Ncur (step 1511)
  • the time stamp of the latest packet received this time is set to Tcur (step 1511).
  • a retransmission request of Tnext is made again by using the step 1512), the bucket loss detection processing (step S1513), the retransmission sequence number addition processing (step S1514), and the retransmission request transmission processing (steps S1515 and S1516).
  • the latest packet loss is also detected, and a retransmission request is made at the same time.
  • Example 2 of the packet loss detection method described above when a retransmission request is made every time a packet with a higher priority to be retransmitted is lost, there is no Tnext packet in the reception buffer at the time of the packet providing means. On the other hand, when Tnext is included in the retransmission list, packet loss detection means is not performed, and a request for retransmission of the Tnext packet is immediately made.
  • the waiting time When the waiting time is set to 0, only check whether there is Tnext in the receive buffer, and if not, do not request retransmission of the Tnext packet.
  • the requester (application) 903 is notified immediately that the packet of Tnext has been lost. Conversely, if the waiting time is set to infinite, if there is no Tnext bucket in the receive buffer, it will make a retransmission request many times and keep waiting for the Tnext bucket to be retransmitted.
  • the retransmission request transmitting unit waits for a retransmission request interval Tr (step S1518), and checks again whether there is a Tnext packet in the reception buffer. Tr may be changed each time a retransmission request is made. In steps S1517, S1518, and S1519, the waiting time is created based on the sleep time.
  • step S1518 sleep (delay) for 2 seconds. Therefore, after 2 seconds, the reception buffer check and packet loss detection processing are performed again. This allows the reception buffer to be checked and the packet loss detection process to be performed periodically within the allowed time, that is, during the waiting time.
  • the configuration of the third embodiment is such that the transmitting apparatus 901 having the configuration of FIG. 9 of the second embodiment transmits important packets in ⁇ packets near a certain bucket ⁇ .
  • packet information that can be determined to be retransmitted is added to the packet p every m (m ⁇ n), and n and m are priority information adding means 1705 determined from the network congestion status. Is added.
  • means other than the receiving means 1711, the bucket loss detecting means 1713, and the bucket providing means 1717 of the receiving device 1702 are means for performing the same processing as in the second embodiment.
  • FIG. 18 shows an example of a packet to which priority information has been added by the priority information adding means 1705.
  • the n-th bit from the left indicates the priority of P
  • the first bit indicates the priority of the packet with the (n) -th sequence number (P sequence number).
  • the value of the k-th bit from the left indicates the priority of the packet whose sequence number is (P sequence number)-1 + k ⁇ Then, in the priority information 1803,
  • the first bit from the left is
  • the first bit from the left is
  • the first bit from the left is
  • the first bit from the left is
  • the (P sequence number) -n + k-th packet indicates a high-priority packet to be retransmitted, and if 0, a low-priority packet that is not retransmitted.
  • the priority information 1804 added to the packet with sequence number 8 indicates that among the packets with sequence numbers 1 to 8, the packets with the higher priority to be retransmitted are sequence numbers 1, 4, 5, and 8 This is 10011001 from the left.
  • n pieces of priority information including P of bucket P
  • the value of the k-th bit indicates the priority of the packet whose sequence number is (P sequence number) + k—1.
  • the third bit sequence number from the left is
  • the 8th bit sequence number from the left is
  • the third bit sequence number from the left is
  • the third bit sequence number from the left is
  • n and m may be set dynamically according to the congestion state of the network. For example, in a congested state, bucket loss is likely to occur. Therefore, if n is increased and m is decreased, loss of priority information due to packet loss is unlikely to occur on the receiving device side.
  • the packet loss detecting means 1713 of the third embodiment is important because of the interval determined from the number and time of packet reception and the mismatch of sequence numbers.
  • the packet in the receive buffer ⁇ ⁇ the sequence number of the received packet and the priority information added by the priority information adding means of the transmitting device At the time of loss, the sequence number of the packet that can be determined to be retransmitted is detected.
  • the receiving unit performs the same processing as that of the receiving unit of the second embodiment, but adds a process of updating the priority information template after receiving the packet to which the priority information is added.
  • FIG. 19 is a flowchart for explaining an example of the flow of the packet loss detecting means of the receiving apparatus according to the third embodiment.
  • FIG. 20 shows an example of the packet loss and the packet loss detecting means.
  • the interval at which the packet loss detection means 1713 performs the packet loss detection processing is determined by the difference between the sequence number and time stamp of the last bucket that performed the previous packet loss detection processing and the sequence number and time stamp of the received packet. decide. Or every time a packet is lost.
  • the interval between the sequence numbers at which the packet loss detection means performs packet loss processing is Nint
  • the time stamp interval is Tint
  • the sequence number of the last bucket that performed the previous packet loss detection means is Ncur
  • the previous packet loss detection means was used.
  • the interval at which the bucket loss detecting means 1713 performs the bucket loss detection processing is, for example, the sequence number or time stamp of the last bucket that performed the previous bucket loss detection processing and the sequence number or time stamp of the currently received packet. Determine from the difference.
  • the interval between sequence numbers at which the packet loss detection means performs packet loss processing is Nint, the time stamp interval is Tint, and the sequence number of the last packet at which the packet loss detection means performed packet loss detection processing last time is Nint. If Ncur, the timestamp of the last bucket in which the packet loss detecting means performed the packet loss detection processing last time is Tcur, the sequence number of the packet received by the receiving means this time is equal to or greater than Ncur + Nint. If the value is greater than or the timestamp of the bucket received this time is equal to or greater than Tcur + Tint, substitute the sequence number and timestamp of the packet received this time into Ncr and Tcur, respectively. Then, packet loss detection processing (step S306) is performed.
  • the packet loss detecting means 1713 determines the sequence number Ncur (the sequence number of the last packet of this time) from the next packet after the last packet for which the packet loss detection processing was previously performed in the reception buffer sorted in order of the sequence number. Sequence number in the range up to the packet (excluding the Ncur packet) or the range up to the packet with the time stamp Tcur (the time stamp of the last packet in this case) (excluding the Tcur packet). It checks the consistency and priority information of packets and detects the loss of high-priority packets to be retransmitted.
  • FIG. 19 shows the detailed flow of the packet loss detection processing by the packet loss detection means 1713.
  • packet loss detection unit 1713 began the sequence number in the receive buffer is: set the pointer equal path Kedzuto the FSN to P (step Sl902) o where, FSN is the last packet drop This is the sequence number of the next bucket after the last packet that was detected.
  • Loss is the number of lost packets
  • I is the distance from FSN
  • SN list is the list of lost bucket sequence numbers with high priority to be retransmitted
  • 0 is set as the initial value for Loss and FSN
  • SN list To A blank (empty list) is set as the initial value (step S1903).
  • step S1905 the sequence number of the last packet of the current packet from the packet next to the last packet in which the previous packet loss detection processing was performed
  • Ncur the sequence number of the last packet of the current packet from the packet next to the last packet in which the previous packet loss detection processing was performed
  • Ncur the sequence number of the last packet of the current packet from the packet next to the last packet in which the previous packet loss detection processing was performed
  • the sequence number Dump Tcur the timestamp of the last packet this time
  • step S1905 compares the sequence number of the packet stored in the pointer P of the reception buffer with FSN + I.
  • step S1905 if the sequence numbers of the packets stored in the pointer P and FSN + I are the same, the packet of the sequence number FSN + I has been received without loss. Then, I is incremented (step S1906), and the point of the next packet is set in P (step S1908).
  • step S1905 if the sequence number of the packet stored in FSN + I is not equal to the sequence number of the packet stored in Boyne P, the flow branches to step S1907. If FSN + I is smaller than the sequence number of the packet stored in the bus P (step S1907), the packet of sequence number FSN + I is lost, and the flow branches to step S1909. In step S1909, it is determined whether or not the priority information of the packet whose sequence number in the priority information table 2001 is FSN + I should be retransmitted (step S1909).
  • FSN + I is added to SN_list to request retransmission of sequence number FSN + I.
  • Step 1910 Increment I and Loss (1911). If it is determined from the priority information that the packet of sequence number FSN + I is a low-priority packet that does not require retransmission (step 1909), a retransmission request is not made. Increment I and Loss without adding the missing FSN + I to the SNJList (step S1911).
  • the range indicated in step S1904 ie, the range from the packet following the last packet in which the previous packet loss detection processing was performed to the packet of sequence number Ncur (the sequence number of the last packet this time) (however, When the comparison of this sequence number is completed within the range up to the packet of the timestamp Tcur (the timestamp of the last packet of this time) (excluding the packet of Tcur), or the packet of the timestamp Tcur (excluding the packet of Tcur), In step S1912), I is added to the FSN (step 1913), and the FSN is set as the start sequence number of the next packet loss detection process (step S511). At this time, the number in the SN list is the sequence number of the lost packet within the range, and the loss is the number of the lost packet.
  • FIG. 20 shows an example of the reception buffer in which a packet loss has occurred and the result of the packet loss detection processing.
  • reference numeral 2001 denotes a priority information table in which a sequence number is associated with priority information assigned according to the importance of a packet having this sequence number.
  • 2003 indicates the state of FSN, Ncur, I, Loss, Snjist at the time of the Nth packet loss detection processing
  • 204 indicates N + Indicates the state of FSN, Ncur, I, Loss, Sn_list at the time of the first packet loss detection process.
  • the sequence numbers of the buckets in the receive buffer 2002 are..., 8, 9, 10, 12, 15, 16, 18, 19, 22, 2 3, 2 4, 2 5, 2 6, etc.
  • 1 means a packet having a high priority to be retransmitted
  • 0 means a packet having a low priority which is not retransmitted.
  • this packet Since the priority information of the packet with sequence number 21 is 1, this packet is a packet with a high priority to be retransmitted, and 21 is added to the SL list, but sequence numbers 17 and 20 are added. Since the priority information of this packet is 0, these packets are packets of low priority not to be retransmitted, and are not added to the SN_list because no retransmission request is made.
  • the packet loss detection means If Loss> 0 after the packet loss detection means, the packet loss is detected, so the retransmission sequence number addition means issues a command to add the SNJist sequence number to the retransmission request list management means. Then, the packet providing means is the same means as in the second embodiment, but deletes priority information having a sequence number smaller than the sequence number of the last packet provided from the priority information table. According to the third embodiment, in addition to the effects of the first and second embodiments, by providing the priority information adding means, the total transmission amount is smaller than the case where the priority sequence number is provided for all the transmitted packets. On the other hand, the priority of the bucket that has been lost in the receiving device can be more accurately recognized in the receiving device.
  • the retransmission request response packet by the retransmission request response means according to claim 5 is not required, and network waste and retransmission request response load of the transmission device can be reduced. Also, by adjusting the length and frequency of the priority information, there is an effect that even in a congested network, the loss of the priority information due to a packet loss on the receiving device side is less likely to occur.
  • the packet retransmission system according to the present invention is suitable for performing more reliable communication with emphasis on real-time in transfer of data such as video and audio with high real-time. I have.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Communication Control (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)

Description

明 細 書
パケット再送システムおよびパケット再送方法
技術分野
本発明は、 ビデオや音声などのリアルタイムデ一夕をィン夕一ネットゃ 無線通信網経由でストリーミング配信するサーバとクライアントに関す る。 また、 本発明は、 リアルタイム性の高いデ一夕の転送において、 パ ケット欠損発生時のリアルタイム性を重視しながらより信頼性の高い通 信を行うパケット再送システムおよびパケット再送方法に関する。
背景技術
一般に、 ネッ トワーク上を流れるパケットは、 ネットワーク上のノ一 ド(ルー夕)のオーバ一フローや、 無線空間でのビッ ト誤りなどから、 欠 損してしまうことが多々ある。 このようなパケット欠損の耐性として、 (1)何も行わない、 (2)誤りを訂正したり、 補正を行う、 (3)再送を行う、 などの方法が考えられる。
(1)の 「何も行わない」方法では、 ビデオストリームはパケヅト欠損によ りプロックノイズが発生したり、 オーディオストリームは音の途切れが 発生したり、 その他のメディアデ一夕なども正常なメディア再生ができ なくなる。
(2)の 「誤りを訂正したり、 補正を行う」 方法として、 ビデオのデコード 時に欠落したデ一夕を前後のフレームデータなどから補正してデコード したり、予め補正に必要な冗長なパケッ トを付加させる方法などがある。 (3)の 「再送を行う j方法は、 通常はリアルタイム性を要求されないデー 夕通信で行われる。 例えば、 TCPプロトコルは、 受信できた確認として ACKパケッ トを送信元へ送っており、 その ACKパケットが送信元に返 つてこない場合、 パケットは受信されていないと判断し再送を行う信頼 性の高い転送プロトコルであるが、 再送パケッ トを待っため再送に時間 が費やしたり、 ACKパケットの超過や再送パケットの増加が帯域を圧迫 し、 輻輳を引き起こしたりする。
しかし、 マルチメディアのストリ一ミング配信では、 データのダウン 口一ドとは異なり、 必ずしも全てのデ一夕が届かなくても再生できるこ とから、 パケット欠損時には重要なデータパケッ トのみを再送要求した り、 再送したりすることが考えられる。 重要なパケッ トのみを再送する ことで帯域の有効利用が図れ、 必要ないデ一夕パケットの再送を待つこ ともないので、 よりリアルタイム性も高くなる。
これらの目的で考えられた再送制御方式の例として、 特開平 9— 2 1 4 5 0 7号公報(無線通信方法)と特開平 1 1— 2 8 4 6 5 7号公報(再 送制御方式) に記載されたものが知られている。
特開平 9 _ 2 1 4 5 0 7号公報に記載された再送方式は、 可能な限り 品質を保証した形でリアルタイム通信が行える無線通信方法であり、 パ ケッ ト欠損時には数回再送を試み、 それでも届かない場合は、 優先度が 低いパケッ トを破棄して再送を行うものである。
また、 特閧平 1 1— 2 8 4 6 5 7号公報に記載された再送方式は、 輻 輳時に優先度の低い通信のパケットを抑制するコネクション確立型通信 の再送制御方式であり、 各コネクションに再送できる回数を設定し、 再 送を行ったときに再送できる回数を 1減らし、 再送できる回数が 0にな つたら、 そのコネクションの通信を停止させ、 優先度の高い帯域をでき るだけ確保するものである。
また、 ストリーミング配信のようなリアルタイム性の高いデータ伝送 プロトコルとして、: RFC1889をはじめとするィン夕一ネヅト関連標準化 規格となっている RTP(Real-Time Transport Protocol)は、 シーケンス 番号やタイムスタンプが付加されたパケット通信のプロトコルであるが、 再送処理は行っていない。
また、 RTPの再送機能拡張案として、 「RTP Payload Type Format to Enable Selective Retransmissionsj という夕ィ トルのインター不ヅ ト ドラフト(draft-miyazaki-avt-rtp-selret-OO.txt)が挙がつており、その再 送機能拡張案では、 HTPのシーケンス番号とは別途に、 優先度の高い再 送すべきパケッ トのみに割り与えられるシーケンス番号がある。
以上のように、 ビデオや音声などのリアルタイムデータの配信を行う システムでは、パケットが欠損した場合、その対策を何も行わなければ、 データが欠落することになり、 コンテンッの再生品質が良くないという 問題がある。
また、 誤り訂正や補正を行う方法では、 受信側の負荷が大きくなつた り、 補正を行うための冗長なデ一夕によって、 より輻輳を悪化させるこ とにもなるという問題がある。
再送を行う方法では、 TCPプロトコルのように、 再送パケットを待つ ため再送に時間が費やしたり、 ACKパケッ卜の超過や再送バケツ 卜の増 加が帯域を圧迫し、 輻輳を引き起こしたりするという問題がある。
優先度の高いバケツ トだけを再送する方法では、 受信側で優先度の低 いパケッ トの再送要求を行った場合、 その再送パケットは送信元で破棄 される可能性もあるのに、 受信側はその再送パケットを待ち受けたり、 何度も再送要求を行ったりすることになり、 無駄な再送処理を行ってい ることになるという問題がある。
また、 すべてのパケットに与えられる一般シーケンス番号と、 重要な バケツトおよび欠損時には再送した方が良いと判断できるバケツ 卜のみ に与えられる優先シーケンス番号が付加された、 RTPの再送機能拡張案 によるパケッ ト通信では、 受信側で優先度を把握できる利点があるが、 連続したバケツトが欠損した場合は、 正確な優先度を認識することがで きず、 連続欠損したすべてのバケツトの再送要求を行わなければならな いという問題がある。 例えば、 第 1 6図が一般シーケンス番号と優先シ 一ケンス番号が付加されたバケツト通信におけるパケヅト欠損の例を示 したものであるが、一般シーケンス番号 2 0と 2 1が連続欠損しており、 優先シーケンス番号は一般シーケンス番号 1 9から 2 2の間で 1しか増 加していないため、 一般シーケンス番号 2 0と 2 1のどちらが再送しな ければならない優先度の高いパケットなのか判断はできず、 結局、 一般 シーケンス番号 2 0と 2 1の両パケットの再送要求を行わなければなら ない。 本発明は、 このような問題を解決し、 優先度の高い重要なパケットの みを再送することで再送処理によるネッ トワーク負荷の浪費を最小限に 抑えることができ、 ネットワークの輻輳時でも優先度の高いパケットの 伝送容量を確保できるパケットの再送システム並びにバケツトの転送シ ステムを提供することを目的とする。
発明の開示
本発明に係るパケット再送システムは、 シーケンス番号が付加されたパケットを送信する送信装置と、 この送 信装置にネッ トワークを介して接続された受信装置と、 この受信装置に 接続された要求アプリケーション部とを備え、
前記シーケンス番号が付加されたパケット通信のパケット欠損時におけ る送受信間のバケツトの再送を行うパケット再送システムにおいて、 送信装置は、
受信装置へ送信したパケットを蓄積しておく再送用バッファと、 前記受信装置から受信した再送要求バケツトからシーケンス番号と要求 アプリケーションへ提供した最大 (最新) シーケンス番号を識別して通 知する再送要求受信手段と、
前記通知されたシーケンス番号が再送用バッファに存在するか否かを調 ベる再送バケツ ト検出手段と、
該再送パケット検出手段が存在を検出したすべてのパケッ トを前記受信 装置へ再送する再送手段と、
を備えたものである。
また、 シーケンス番号が付加されたパケットを送信する送信装置と、 この送信装置にネットワークを介して接続された受信装置と、 この受信 装置に接続された要求アプリケーション部とを備え、
前記シーケンス番号が付加されたパケット通信のパケッ ト欠損時におけ る送受信間のパケヅトの再送を行うパケット再送システムにおいて、 受信装置は、
送信装置から受信したパケッ トを蓄積する受信バッファと、
前記送信装置から受信した前記パケッ トをシーケンス番号順にソートし ながらパケットを前記受信バッファに格納する受信手段と、
前記パケッ トの欠損を検出するパケッ ト欠損検出手段と、
欠損が検出されたパケットのシーケンス番号を再送要求リストに追加す るように追加命令を発する再送シーケンス番号追加手段と、
前記追加命令に従って前記シーケンス番号を前記再送要求リストに追加 する再送要求リスト管理手段と、
前記再送要求リストに格納された前記シーケンス番号を再送要求パケッ トに乗せて前記送信手段へ送信する再送要求送信手段と、
前記受信バッファ内のバケツ トを前記要求アプリケーション部へ供給す るパケッ ト提供手段と、 を備えたものである。
また、 シーケンス番号が付加されたパケットを送信する送信装置と、 この送信装置にネットワークを介して接続された受信装置と、 この受信 装置に接続された要求アプリケーション部とを備え、
前記シーケンス番号が付加されたパケット通信のパケッ ト欠損時におけ る送受信間のパケッ卜の再送を行うパケット再送システムにおいて、 送信装置は、
受信装置へ送信したパケットを蓄積しておく再送用バッファと、 前記受信装置から受信した再送要求パケットからシ一ケンス番号と要求 アプリケ一シヨンへ提供した最大 (最新) シーケンス番号を識別して通 知する再送要求受信手段と、
前記通知されたシーケンス番号が再送用バッファに存在するか否かを調 ベる再送バケツト検出手段と、
該再送パケット検出手段が存在を検出したすべてのパケットを前記受信 装置へ再送する再送手段と、
を備え、 前記受信装置は、
前記送信装置から受信した前記パケットを蓄積する受信バッファと、 前記送信装置から受信した前記バケツトをシーケンス番号順にソートし ながらバケツトを前記受信バッファに格納する受信手段と、
前記パケッ トの欠損を検出するパケット欠損検出手段と、
欠損が検出されたパケットのシーケンス番号を再送要求リストに追加す るように命令する再送シーケンス番号追加手段と、
前記追加命令に従って前記シーケンス番号を前記再送要求リストに追加 する再送要求リスト管理手段と、
前記再送要求リストに格納された前記シーケンス番号を再送要求パケッ トに乗せて前記送信手段へ送信する再送要求送信手段と、
前記受信バッファ内のパケッ トを前記要求アプリケーション部へ供給す るバケツト提供手段と、
を備えたものである。
また、 送信装置は、
特定のバケツ トまたは欠損時に再送するべきパケッ トを再送用バッファ に格納する再送パケット格納手段と、
前記特定のパケットまたは欠損時に再送するべきバケツ トの再送信を行 う再送手段と、 を備え、
受信装置は、
前記特定のバケツ トまたは欠損時に再送するべきパケッ トを受信後、 シ 一ケンス番号順にソートしながら前記特定のパケットまたは欠損時に再 送するべきパケットを受信バッファに格納する受信手段と、
を備えたものである。 '
また、 受信装置は、
現在再送要求を行っているパケットのシーケンス番号および次の再送要 求時に再送要求を行うパケッ トのシーケンス番号を格納する再送要求リ ストを生成し、 シーケンス番号の追加および削除を行い、 再送要求リス 卜に格納されているシーケンス番号のパケットの状態を再送要求状態に 切り替える再送要求リスト管理手段と、
を備えたもめである。
また、 受信装置は、
パケットの受信回数および受信時間から決定されるパケッ トの受信時間 間隔で、 受信バッファ内のパケットのシーケンス番号の不整合から欠損 したパケットのシーケンス番号を検出するパケット欠損検出手段と、 該バケツト欠損検出手段が欠損を検出したバケツトのシーケンス番号を 再送要求リストに追加する命令を再送要求リスト管理手段へ出す再送シ 一ケンス番号追加手段と、
前記再送要求リス卜の状態を再送パケッ ト受信待ちの状態を意味する" R E A D Y状態" に設定する命令を前記再送要求リス ト管理手段へ出す 再送要求通知手段を備えたものである。
また、 受信装置は、
再送要求リストに存在する 1以上の再送するべきパケットのシーケンス 番号を乗せた 1つの再送要求パケットを生成し、 前記再送要求バケツ ト を送信装置へ送信する再送要求送信手段を備え、
前記送信装置は、
前記受信装置から受信した前記再送要求パケットの前記シーケンス番号 を取り出して通知する再送要求受信手段と、
前記通知されたシーケンス番号のパケッ トが再送バッファに格納されて いるか否かを調べる再送パケヅト検出手段と、
該再送バケツト検出手段が存在を検出したすべてのパケットのシーケン ス番号を 1つの再送要求応答バケツトに乗せ、 前記受信装置へ送信する 再送要求応答手段と、
前記再送パケット検出手段が検出した前記バケツトを前記受信装置へ再 送信する再送手段と、
を備えたものである。
また、 受信装置は、
パケット提供手段が要求アプリケーション部に提供したバケツトの最大 (最新) シーケンス番号を乗せた 1つの再送要求パケットを生成し、 前 記再送要求パケットを送信装置へ送信する再送要求送信手段を備え、 前記送信装置は、
前記受信装置から受信した前記再送要求パケットから前記最大シ一ケン ス番号を取り出して通知する再送要求受信手段と、
通知された前記最大シーケンス番号より小さいシーケンス番号のパケッ トを再送用バツファから削除する再送用バッファ削除手段と、 を備えたものである。
また、 受信装置は、
再送要求リストに存在する 1以上の再送するべきバケツ トのシーケンス 番号と、 パケッ ト提供手段が要求アプリケーション部に提供したパケッ トの最大 (最新) シーケンス番号を乗せた 1つの再送要求パケットを生 成し、 前記再送要求バケツ トを送信装置へ送信する再送要求送信手段を 備え、
前記送信装置は、
前記受信装置から受信した前記再送要求パケッ トから前記シーケンス番 号と、 前記最大シーケンス番号を取り出して通知する再送要求受信手段 と、
前記通知されたシーケンス番号のパケットが再送用バッファ内に有るか 否かを調べる再送パケッ ト検出手段と、
前記通知された最大シーケンス番号より小さいシーケンス番号のパケッ トを再送用バッファから削除する再送用バッファ削除手段と、 前記再送パケット検出手段が存在を検出したすべてのパケットのシ一ケ ンス番号を 1つの再送要求応答パケ トに乗せ、 前記受信装置へ送信す る再送要求応答手段と、
前記再送パケツ ト検出手段が検出したパケットを前記受信装置へ再送信 する再送手段と
を備えたものである。
また、 受信装置は、
再送されるパケッ トのシーケンス番号を乗せた再送要求応答バケツトを 前記送信装置から受信する再送要求応答受信手段と、 前記再送要求応答バケツトから前記シーケンス番号を取り出し、 再送要 求リス卜から前記シーケンス番号と同じシーケンス番号を削除するよう に命令する削除命令を再送要求リスト管理手段へ出す再送シーケンス削 除手段と、
を備えたものである。
また、 受信装置は、
再送されるパケッ 卜のシーケンス番号を乗せた再送要求応答パケットを 前記送信装置から受信する再送要求応答受信手段と、
前記再送要求応答パケットから前記シーケンス番号を取り出し、 再送要 求リストから前記シーケンス番号と同じシーケンス番号を削除するよう に命令する削除命令を再送要求リスト管理手段へ出す再送シーケンス削 除手段と、
前記再送要求リス卜の状態を、 再送要求リス卜に残っているシーケンス 番号のパケットの再送要求を行ったが前記送信装置からは今後再送され てこないことを意味する "ACTIVE"状態に設定する命令を前記再送要求 リスト管理手段へ出す再送要求応答通知手段と、
を備えたものである。
また、 受信装置は、
受信バッファ内に格納されているパケットの中から、 1つ以上のパケッ 卜のペイロード (データ) を要求アプリケーション部に提供し、 前記パ ケットのシーケンス番号よりも小さいシーケンス番号を再送要求リスト から削除し、 前回に提供されたパケットのシーケンス番号 (N: Nは自然 数)の次のシーケンス番号 (N+1)のパケヅトのペイロードを指定された時 間内に提供し、 前記指定された時間内に前記次のシーケンス番号 (N+1) のパケッ トが受信バヅファに存在しない、あるいは揷入されない場合は、 提供されるべきバケツ 卜が欠損したことを前記要求アプリケーション部 に通知するパケッ ト提供手段を備えたものである。
また、 受信装置は、
指定時間内に提供しなければならないバケツ 卜が受信バッファにない場 合、 再びパケッ ト欠損検出と再送要求送信を指定時間内に 1回以上行う パケヅト提供手段を備えたものである。
また、 受信装置は、
再送要求リストの状態が、該再送要求リストに格納されているシーケンス番号 のパケツトの送信装置への再送要求はすでに行われているが前記送信装置か らは今後再送されてこないことを意味する" ACTIVE"状態であり、要求アプリ ケーシヨン部に提供するパケットのシーケンス番号が前記再送要求リストの 中にある場合、再送要求を行っても再送されないと判断し、指定時間を待たず すぐに提供されるべきパケットが欠損したことを要求者に通知するバケツト 提供手段を備えたものである。
また、 すべてのパケットに与えられる一般シーケンス番号と、 特定の バケツ ト又は欠損時に再送するべきバケツ 卜に与えられる優先シ一ケン ス番号が付加されたパケット通信のパケット欠損時における送受信間の パケヅ ト再送システムにおいて、
送信装置は、
前記特定のパケッ ト又は欠損時に再送するべきバケツ トを再送用バッフ ァに格納する再送パケット格納手段と、
前記特定のパケット又は欠損時に再送するべきパケッ卜の再送信を行う 再送手段とを備え、
受信装置は、 前記特定のパケット又は欠損時に再送するべきバケツ トを 受信後、 一般シーケンス番号順にソートしながら前記特定のパケッ ト又 は欠損時に再送するべきパケットを受信バッファに格納する受信手段と、 を備えたものである。
また、 受信装置は、
再送を行うパケットの一般シーケンス番号を格納する再送リストを生成 し、 前記一般シーケンス番号の追加と削除を行う再送リスト管理手段を 備えたものである。
また、 受信装置は、
受信手段が受信したパケットの一般シーケンス番号が再送リストにある 場合、 前記一般シーケンス番号を前記再送リストから削除する命令を再 送リスト管理手段へ出す再送シーケンス番号削除手段と、
前記パケッ トの受信回数および受信時間から決定されるバケツ 卜の受信 時間間隔、 および優先シーケンス番号の不整合から優先度の高い特定の パケットが欠損する毎に、 受信バッファ内のパケットゃ受信パケッ卜の 一般シーケンス番号と優先シーケンス番号から、 欠損を発生した優先度 の高い特定のパケットおよび欠損時に再送するべきパケットの一般シ一 ケンス番号を検出するパケット欠損検出手段と、
該パケット欠損検出手段が欠損を検出した前記優先度の高い特定のパケ ットおよび欠損時に再送するべきパケッ トの一般シーケンス番号を再送 リストに追加する命令を前記再送リスト管理手段へ出す再送シーケンス 番号追加手段を備えたものである。
また、 受信装置は、
再送リストに存在する 1以上の一般シーケンス番号を乗せた 1つの再送 要求パケッ トを生成し、 前記再送要求バケツトを送信装置へ送信する再 送要求送信手段を備え、
前記送信装置は、
前記受信装置から受信した前記再送要求バケツトから前記一般シーケン ス番号を取り出して通知する再送要求受信手段と、 前記通知された一般シーケンス番号のパケッ卜が再送用バッファ内に有 るか否かを調べる再送パケット検出手段と、
該再送パケッ ト検出手段が存在を検出した一般シーケンス番号のパケッ トを前記受信装置へ再送信する再送手段と、
を備えたものである。
また、 受信装置は、
バケツ ト提供手段が要求アプリケーション部に提供したバケツ卜の最大 (最新)一般シーケンス番号を乗せた 1つの再送要求バケツ トを生成し、 前記再送要求パケットを送信装置に送信する再送要求送信手段を備え、 前記送信装置は、 .
前記受信装置から受信した前記再送要求バケツ トから前記最大一般シ一 ケンス番号を取り出して通知する再送要求受信手段と、
通知された前記最大一般シーケンス番号より小さい一般シーケンス番号 のパケットを再送用バッファから削除する再送用バッファ削除手段と、 備えたものである。
また、 受信装置は、
再送リストに存在する 1以上の一般シーケンス番号と、 パケツト提供手 段が要求アプリケーション部に提供したバケツ トの最大 (最新) 一般シ 一ケンス番号を乗せた 1つの再送要求パケットを生成し、 前記再送要求 パケッ トを送信装置に送信する再送要求送信手段を備え、
前記送信装置は、
前記受信装置から受信した前記再送要求パケッ トから前記一般シーケン ス番号と、 前記最大一般シーケンス番号を取り出して通知する再送要求 受信手段と、
通知された前記最大一般シーケンス番号より小さい一般シーケンス番号 のパケットを再送用バッファから削除する再送用バッファ削除手段と、 前記通知された一般シーケンス番号のパケットが再送用バッファ内に有 るか否かを調べる再送パケット検出手段と、
該再送パケッ ト検出手段が存在を検出した一般シーケンス番号のバケツ トを前記受信装置へ再送信する再送手段と、
を備えたものである。
また、 受信装置は、
受信バッファ内に格納されているパケヅ 卜の中から、 1つ以上のバケツ トのペイ口一ド (デ一夕) を要求アプリケーション部に提供し、 前記パ ケットの一般シ一ケンス番号よりも小さい一般シーケンス番号を再送リ ストから削除し、 前回に提供したパケヅ トの一般シーケンス番号 (N: N は自然数)の次の一般シーケンス番号 (N+1)のバケツトのペイ口一ドを指 定された時間内に提供し、 前記指定された時間内に前記一般シーケンス 番号 (N+1)のパケヅトが受信バッファに存在しない、 又は挿入されない 場合は、 提供されるべきバケツ トが欠損したことを前記要求アプリケー シヨン部に通知するバケツ ト提供手段を備えたものである。
また、 受信装置は、
指定時間内に提供しなければならないバケツトが受信バッファに存在し ない場合、 再びパケット欠損検出と前記再送要求送信を指定時間内に数 回行うパケット提供手段を備えたものである。
また、 受信装置は、
提供するバケツトの一般シーケンス番号が、 再送リストの中に存在しな い場合、 再送要求を行わず、 指定された時間を待たずすぐに提供される べきパケットが欠損したことを要求アブリケ一ション部に通知するパケ ッ ト提供手段を備えたものである。
また、 送信装置は、 、
任意のパケヅ ト ϋの近辺 n ( nは自然数)個のパケヅ 卜において優先度の 高い特定のパケッ トまたは欠損時に再送するべきパケットに割り当てる べき優先度情報を m個毎 (m≤n. : m, nとも自然数)にバケツト pに付加 し、前記 nおよび前記 mの値をネットワークの輻輳状況から決定する優 先度情報付加手段を備え、
受信装置は、
パケットの受信回数および受信時間から決定されるパケットの受信時間 間隔、 およびシーケンス番号の不整合から重要なパケットが欠損する毎 に、 受信バッファ内のパケッ トや受信パケットのシーケンス番号と、 前 記優先度情報から、 欠損を発生した優先度の高い特定のバケツトおよび 欠損時に再送するべきパケッ トのシーケンス番号を検出するパケット欠 損検出手段を備えたことを特徴とするものである。
また、 本発明に係るパケッ ト再送方法は、 シーケンス番号が付加されたパケットを送信する送信装置と、 この送信 装置にネットワークを介して接続された受信装置と、 この受信装置に接 続された要求アプリケーション部とを備え、
前記シーケンス番号が付加されたパケット通信のパケッ ト欠損時におけ る送受信間のバケツトの再送を行うバケツト再送方法において、 送信装置は、
受信装置へ送信したパケッ トを蓄積しておく再送用バッファと、 前記受信装置から受信した再送要求バケツ トからシーケンス番号と要求 アプリケーションへ提供した最大 (最新) シーケンス番号を識別して通 知する再送要求受信ステップと、
前記通知されたシーケンス番号が再送用バッファに存在するか否かを調 ベる再送バケツ ト検出ステップと、
該再送バケツト検出ステップが存在を検出したすべてのパケットを前記 受信装置へ再送する再送ステツプと、 を備えたものである。
また、 シーケンス番号が付加されたパケットを送信する送信装置と、 この送信装置にネットワークを介して接続された受信装置と、 この受信 装置に接続された要求アプリケーション部とを備え、
前記シーケンス番号が付加されたバケツ ト通信のバケツト欠損時におけ る送受信間のパケッ トの再送を行うバケツト再送方法において、 受信装置は、
送信装置から受信したパケットを蓄積する受信バッファと、
前記送信装置から受信した前記パケッ トをシーケンス番号順にソ一トし ながらパケットを前記受信バッファに格納する受信ステップと、 前記バケツトの欠損を検出するパケット欠損検出ステップと、 欠損が検出されたパケットのシーケンス番号を再送要求リス卜に追加す るように追加命令を発する再送シーケンス番号追加ステップと、 前記追加命令に従って前記シーケンス番号を前記再送要求リストに追加 する再送要求リスト管理ステップと、
前記再送要求リストに格納された前記シーケンス番号を再送要求パケッ トに乗せて前記送信ステツプへ送信する再送要求送信ステツプと、 前記受信バッファ内のパケットを前記要求アブリケ一ション部へ供給す るパケヅト提供ステップと、
を備えたものである。
また、 シーケンス番号が付加されたパケットを送信する送信装置と、 この送信装置にネッ トワークを介して接続された受信装置と、 この受信 装置に接続された要求アプリケーション部とを備え、
前記シーケンス番号が付加されたバケツ ト通信のパケット欠損時におけ る送受信間のバケツ 卜の再送を行うパケヅ 卜再送方法において、 送信装置は、 受信装置へ送信したパケッ トを蓄積しておく再送用バッファと、 前記受信装置から受信した再送要求パケッ 卜からシーケンス番号と要求 アプリケーションへ提供した最大 (最新) シーケンス番号を識別して通 知ずる再送要求受信ステップと、
前記通知されたシーケンス番号が再送用バッファに存在するか否かを調 ベる再送パケヅ ト検出ステップと、
該再送パケット検出ステップが存在を検出したすべてのバケツトを前記 受信装置へ再送する再送ステップと、
を備え、 前記受信装置は、
前記送信装置から受信した前記パケットを蓄積する受信バッファと、 前記送信装置から受信した前記パケットをシーケンス番号順にソ一トし ながらパケヅトを前記受信バッファに格納する受信ステップと、 前記パケッ トの欠損を検出するパケット欠損検出ステップと、 欠損が検出されたバケツ トのシーケンス番号を再送要求リス卜に追加す るように命令する再送シーケンス番号追加ステップと、
前記追加命令に従って前記シーケンス番号を前記再送要求リストに追加 する再送要求リスト管理ステップと、
前記再送要求リストに格納された前記シーケンス番号を再送要求パケッ トに乗せて前記送信ステツプへ送信する再送要求送信ステツプと、 前記受信バッファ内のパケッ トを前記要求アプリケ一ション部へ供給す るパケヅ ト提供ステヅプと、
を備えたものである。
また、 送信装置は、
特定のパケットまたは欠損時に再送するべきパケットを再送用バッファ に格納する再送パケッ ト格納ステップと、 前記特定のパケッ トまたは欠損時に再送するべきバケツトの再送信を行 う再送ステップと、 を備え、
受信装置は、
前記特定のパケッ トまたは欠損時に再送するべきパケットを受信後、 シ —ケンス番号順にソートしながら前記特定のパケットまたは欠損時に再 送するべきパケッ トを受信バッファに格納する受信ステップを備えたも のである。
また、 受信装置は、
現在再送要求を行っているバケツトのシーケンス番号および次の再送要 求時に再送要求を行うパケットのシーケンス番号を格納する再送要求リ ストを生成し、 シーケンス番号の追加および削除を行い、 再送要求リス トに格納されているシーケンス番号のパケヅトの状態を再送要求状態に 切り替える再送要求リスト管理ステップを備えたものである。
また、 受信装置は、
バケツトの受信回数および受信時間から決定されるバケツトの受信時間 間隔で、 受信バッファ内のパケットのシーケンス番号の不整合から欠損 したパケッ トのシーケンス番号を検出するパケット欠損検出ステップと、 該パケッ ト欠損検出ステップが欠損を検出したパケッ 卜のシーケンス番 号を再送要求リス卜に追加する命令を再送要求リスト管理ステップへ出 す再送シーケンス番号追加ステップと、
前記再送要求リストの状態を再送バケツ ト受信待ちの状態を意味する" R E A D Y状態" に設定する命令を前記再送要求リスト管理ステップへ 出す再送要求通知ステップと、
を備えたものである。
また、 受信装置は、
再送要求リストに存在する 1以上の再送するべきバケツトのシーケンス 番号を乗せた 1つの再送要求パケットを生成し、 前記再送要求バケツ ト を送信装置へ送信する再送要求送信ステップを備え、
前記送信装置は、
前記受信装置から受信した前記再送要求バケツトの前記シーケンス番号 を取り出して通知する再送要求受信ステップと、
前記通知されたシーケンス番号のパケットが再送バッファに格納されて いるか否かを調べる再送パケヅト検出ステヅプと、
該再送パケッ ト検出ステップが存在を検出したすべてのパケットのシ一 ケンス番号を 1つの再送要求応答パケッ トに乗せ、 前記受信装置へ送信 する再送要求応答ステップと、
前記再送バケツ ト検出ステップが検出した前記バケツトを前記受信装置 へ再送信する再送ステツプと
を備えたものである。
また、 受信装置は、
パケット提供ステップが要求アプリケーション部に提供したパケヅトの 最大(最新)シーケンス番号を乗せた 1つの再送要求バケツトを生成し、 前記再送要求パケッ トを送信装置へ送信する再送要求送信ステツプを備 え、
前記送信装置は、
前記受信装置から受信した前記再送要求バケツトから前記最大シーケン ス番号を取り出して通知する再送要求受信ステツプと、
通知された前記最大シーケンス番号より小さいシーケンス番号のパケッ トを再送用バッファから削除する再送用バヅファ削除ステップと、 ' を備えたものである。
また、 受信装置は、
再送要求リストに存在する 1以上の再送するべきパケットのシーケンス 番号と、 パケット提供ステップが要求アプリケーション部に提供したパ ケットの最大 (最新) シーケンス番号を乗せた 1つの再送要求パケヅ ト を生成し、 前記再送要求パケットを送信装置へ送信する再送要求送信ス テヅプを備え、
前記送信装置は、
前記受信装置から受信した前記再送要求パケットから前記シーケンス番 号と、 前記最大シーケンス番号を取り出して通知する再送要求受信ステ ップと、
前記通知されたシーケンス番号のパケッ トが再送用バッファ内に有るか 否かを調べる再送パケット検出ステップと、
前記通知された最大シーケンス番号より小さいシーケンス番号のパケッ トを再送用バヅファから削除する再送用バッファ削除ステップと、 前記再送パケット検出ステップが存在を検出したすべてのパケットのシ
—ケンス番号を 1つの再送要求応答バケツトに乗せ、 前記受信装置へ送 信する再送要求応答ステップと、
前記再送パケット検出ステップが検出したパケットを前記受信装置へ再 送信する再送ステップと
を備えたものである。
また、 受信装置は、
再送されるパケッ 卜のシーケンス番号を乗せた再送要求応答バケツ トを 前記送信装置から受信する再送要求応答受信ステップと、
前記再送要求応答パケットから前記シ一ケンス番号を取り出し、 再送要 求リストから前記シーケンス番号と同じシーケンス番号を削除するよう に命令する削除命令を再送要求リスト管理ステップへ出す再送シ一ケン ス削除ステップと、
を備えたものである。 また、 受信装置は、
再送されるバケツトのシーケンス番号を乗せた再送要求応答パケッ トを 前記送信装置から受信する再送要求応答受信ステツプと、
前記再送要求応答パケッ卜から前記シーケンス番号を取り出し、 再送要 求リストから前記シーケンス番号と同じシーケンス番号を削除するよう に命令する削除命令を再送要求リスト管理ステツプへ出す再送シーケン ス削除ステヅプと、
前記再送要求リストの状態を、 再送要求リストに残っているシーケンス 番号のパケッ トの再送要求を行ったが前記送信装置からは今後再送され てこないことを意味する "ACTIVE"状態に設定する命令を前記再送要求 リス ト管理ステップへ出す再送要求応答通知ステップと
を備えたものである。
また、 受信装置は、
受信バヅファ内に格納されているパケットの中から、 1つ以上のパケヅ 卜のペイロード (デ一夕) を要求アプリケーション部に提供し、 前記パ ケッ トのシーケンス番号よりも小さいシーケンス番号を再送要求リスト から削除し、 前回に提供されたパケヅトのシーケンス番号 (N: Nは自然 数)の次のシーケンス番号 (N+1)のパケットのペイ口一ドを指定された時 間内に提供し、 前記指定された時間内に前記次のシーケンス番号 (N+1) のパケヅトが受信バッファに存在しない、あるいは揷入されない場合は、 提供されるべきパケットが欠損したことを前記要求アプリケーション部 に通知するパケット提供ステップを備えたものである。
また、 受信装置は、
指定時間内に提供しなければならないパケットが受信バッファにない場 合、 再びパケット欠損検出と再送要求送信を指定時間内に 1回以上行う バケツ ト提供ステップを備えたものである。 また、 受信装置は、
再送要求リストの状態が、該再送要求リストに格納されているシ一ケンス番号 のパケットの送信装置への再送要求はすでに行われているが前記送信装置か らは今後再送されてこないことを意味する" ACTIVE"状態であり、要求アブリ ケ一シヨン部に提供するパケットのシーケンス番号が前記再送要求リストの 中にある場合、再送要求を行っても再送されないと判断し、指定時間を待たず すぐに提供されるべきパケットが欠損したことを要求者に通知するパケット 提供ステップを備えたものである。
また、 すべてのパケットに与えられる一般シーケンス番号と、 特定の パケッ ト又は欠損時に再送するべきパケットに与えられる優先シ一ケン ス番号が付加されたパケッ ト通信のバケツト欠損時における送受信間の パケッ ト再送方法において、
送信装置は、
前記特定のパケット又は欠損時に再送するべきパケッ トを再送用バッフ ァに格納する再送パケット格納ステップと、
前記特定のパケット又は欠損時に再送するべきパケッ トの再送信を行う 再送ステップとを備え、
受信装置は、 前記特定のバケツ ト又は欠損時に再送するべきパケットを 受信後、 一般シーケンス番号順にソートしながら前記特定のパケット又 は欠損時に再送するべきパケッ トを受信バッファに格納する受信ステツ プを備えたものである。
また、 受信装置は、
再送を行うパケットの一般シーケンス番号を格納する再送リストを生成 し、 前記一般シーケンス番号の追加と削除を行う再送リスト管理ステツ プを備えたものである。
また、 受信装置は、 受信ステップが受信したバケツ トの一般シーケンス番号が再送リストに ある場合、 前記一般シーケンス番号を前記再送リストから削除する命令 を再送リスト管理ステツプへ出す再送シーケンス番号削除ステツプと、 前記パケットの受信回数および受信時間から決定されるバケツトの受信 時間間隔、 および優先シーケンス番号の不整合から優先度の高い特定の パケットが欠損する毎に、 受信バッファ内のパケヅ トゃ受信パケットの 一般シーケンス番号と優先シーケンス番号から、 欠損を発生した優先度 の高い特定のパケットおよび欠損時に再送するべきパケッ トの一般シ一 ケンス番号を検出するパケッ ト欠損検出ステップと、
該パケット欠損検出ステップが欠損を検出した前記優先度の高い特定の パケットおよび欠損時に再送するべきパケットの一般シーケンス番号を 再送リストに追加する命令を前記再送リス ト管理ステップへ出す再送シ —ケンス番号追加ステップと、
を備えたものである。
また、 受信装置は、
再送リストに存在する 1以上の一般シーケンス番号を乗せた 1つの再送 要求パケッ トを生成し、 前記再送要求パケットを送信装置へ送信する再 送要求送信ステップを備え、
前記送信装置は、
前記受信装置から受信した前記再送要求パケッ卜から前記一般シーケン ス番号を取り出して通知する再送要求受信ステップと、
前記通知された一般シーケンス番号のパケッ卜が再送用バッファ内に有 るか否かを調べる再送パケヅ ト検出ステップと、
該再送パケット検出ステツプが存在を検出した一般シーケンス番号のパ ケットを前記受信装置へ再送信する再送ステップと、
を備えたものである。 また、 受信装置は、
パケヅト提供ステップが要求アプリケーション部に提供したパケヅトの 最大 (最新) 一般シーケンス番号を乗せた 1つの再送要求パケットを生 成し、 前記再送要求パケットを送信装置に送信する再送要求送信ステツ プを備え、
前記送信装置は、
前記受信装置から受信した前記再送要求パケッ トから前記最大一般シ一 ケンス番号を取り出して通知する再送要求受信ステツプと、
通知された前記最大一般シーケンス番号より小さい一般シーケンス番号 のバケツ トを再送用バヅファから削除する再送用バッファ削除ステップ と、
備えたものである。
また、 受信装置は、
再送リストに存在する 1以上の一般シーケンス番号と、 パケッ ト提供ス テツプが要求アプリケーション部に提供したパケットの最大 (最新) 一 般シーケンス番号を乗せた 1つの再送要求パケットを生成し、 前記再送 要求パケットを送信装置に送信する再送要求送信ステツプを備え、 前記送信装置は、
前記受信装置から受信した前記再送要求パケットから前記一般シーケン ス番号と、 前記最大一般シーケンス番号を取り出して通知する再送要求 受信ステップと、
通知された前記最大一般シーケンス番号より小さい一般シーケンス番号 のパケットを再送用バッファから削除する再送用バッファ削除ステップ と、
前記通知された一般シーケンス番号のパケットが再送用バッファ内に有 るか否かを調べる再送パケヅト検出ステップと、 該再送パケット検出ステップが存在を検出した一般シーケンス番号のパ ケツトを前記受信装置へ再送信する再送ステップと、
を備えたものである。
また、 受信装置は、
受信バッファ内に格納されているパケットの中から、 1つ以上のパケヅ トのペイロード (データ) を要求アプリケーション部に提供し、 前記パ ケットの一般シーケンス番号よりも小さい一般シーケンス番号を再送リ ストから削除し、 前回に提供したパケットの一般シーケンス番号 (N: N は自然数)の次の一般シーケンス番号 (N+1)のパケッ トのペイ口一ドを指 定された時間内に提供し、 前記指定された時間内に前記一般シーケンス 番号 (N+1)のバケツ 卜が受信バッファに存在しない、 又は挿入されない 場合は、 提供されるべきバケツトが欠損したことを前記要求アプリケ一 シヨン部に通知するパケット提供ステップを備えたものである。
また、 受信装置は、
指定時間内に提供しなければならないバケツトが受信バッファに存在し ない場合、 再びパケッ ト欠損検出と前記再送要求送信を指定時間内に数 回行うパケット提供ステップを備えたものである。
また、 受信装置は、
提供するバケツ トの一般シーケンス番号が、 再送リストの中に存在しな い場合、 再送要求を行わず、 指定された時間を待たずすく、に提供される べきパケットが欠損したことを要求アプリケーション部に通知するパケ ッ ト提供ステップを備えたものである。
また、 送信装置は、
任意のパケット pの近辺 n ( nは自然数)個のパケッ トにお'いて優先度の 高い特定のパケットまたは欠損時に再送するべきパケットに割り当てる べき優先度情報を m個毎 (m≤n: m, nとも自然数)にバケツト pに付加 し、前記 nおよび前記 mの値をネットワークの輻輳状況から決定する優 先度情報付加ステツプを備え、
受信装置は、
パケットの受信回数および受信時間から決定されるバケツトの受信時間 間隔、 およびシーケンス番号の不整合から重要なパケットが欠損する毎 に、 受信バッファ内のパケットや受信パケッ トのシーケンス番号と、 前 記優先度情報から、 欠損を発生した優先度の高い特定のバケツトおよび 欠損時に再送するべきパケットのシーケンス番号を検出するパケット欠 損検出ステップとを備えたものである。 図面の簡単な説明
第 1図は実施の形態 1に係る再送システムの構成図、
' 第 2図は、 実施の形態 1における送信装置のフローチャート、 第 3図は、 実施の形態 1における受信装置のバケツ ト受信のフローチ ャ一卜、
第 4図は、 実施の形態 1における受信装置の再送要求リスト管理処理 のフローチャート、
第 5図は、 実施の形態 1における受信装置のパケッ ト欠損検出処理の フローチヤ一ト、
第 6図は、 実施の形態 1における受信装置の再送要求応答受信のフロ 第 7図は、 実施の形態 1における受信装置のパケッ ト提供のフロ一チ ヤート、
第 8図は、 実施の形態 1におけるバケツト欠損とパケット欠損検出処 理の例
第 9図は、 実施の形態 2に係る再送システム並びにパケット転送シス テムの構成図、
第 1 0図は、 実施の形態 2における送信装置のフローチャート、 第 1 1図は、 実施の形態 2における受信装置のパケッ ト受信の例 1の フ口一チヤ一ト、
第 1 2図は、 実施の形態 2における受信装置のパケット受信の例 2の フ口一チヤ一ト、
第 1 3図は、 実施の形態 2における受信装置の再送要求リスト管理処 理のフローチャート、
第 1 4図は、 実施の形態 2における受信装置のパケット欠損検出処理 のフローチャート、
第 1 5図は、 実施の形態 2における受信装置のパケッ ト提供のフロー ナヤ一卜、
第 1 6図は、 実施の形態 2におけるパケッ ト欠損とバケツト欠損検出 処理の例
第 1 7図は、 実施の形態 3に係る再送システム並びにパケット転送シ ステムの構成図、
第 1 8図は、 優先度情報を付加されたバケツトの例
第 1 9図は、 実施の形態 3における受信装置のバケツト欠損検出手段 のフ口一チャ一卜、
第 2 0図は、 実施の形態 3におけるパケット欠損とパケット欠損検出 手段の例である。
発明を実施するための最良の形態
以下、 本発明の実施の形態について添付図面を参照しつつ説明する。 実施の形態 1 .
第 1図は本発明の実施の形態 1を示すバケツト再送システム、 および パケット転送システムの構成図であり、 シーケンス番号が付加されたパ ケッ ト通信のパケット欠損時における送受信間のパケッ卜の再送、 およ びパケット転送を示している。 本実施の形態 1の再送 ステム、 および バケツト転送システムは、 ィン夕一ネットゃ無線網などのネッ トワーク 104と、 パケヅトを送信する送信装置 101と、 ネヅトワーク 104を介し て送信装置 101から送信されたバケツ トを受信する受信装置 102と、そ の受信装置 102 からパケットデ一夕を要求する要求者(アプリケーショ ン) 103とから構成される。
そして、 送信装置 101は、 受信装置 102へ送信済みのパケットのうち、 再送すべきバケツトのみを再送用バッファに格納しておく再送パケッ ト 格納手段 105と、 受信装置 102からの再送要求パケッ トを受信し、 再送 要求パケッ トから再送要求されたパケッ 卜のシーケンス番号を取り出し 再送パケッ ト検出手段 107へ、 要求者に提供された最大シーケンス番号 (この最大シーケンス番号は最新のバケツトのシーケンス番号を意味す る)を再送用バッファ削除手段 120へ通知する再送要求受信手段 106と、 要求者 103に提供された最大 (最新) シーケンス番号より小さいシ一ケ ンス番号のパケットを再送用バッファから削除する再送用バッファ削除 手段 120と、再送用バ、夕ファの中から再送要求受信手段 106によって通 知されたシーケンス番号を検出する再送パケット検出手段 107と、 再送 パケヅト検出手段 107によって検出されたすベてのシーケンス番号を 1 つの再送要求応答パケッ トに乗せて受信装置 102へ送信する再送要求応 答手段 108と、再送バケツト検出手段 107で検出されたシーケンス番号 のバケツ トを受信装置 102に再送信する再送手段 109を有している。 また、 受信装置 102は、 送信装置 101からパケッ トを受信し、 シ一ケ ンス番号順にソ一トしながらバケツトを受信バッファに格納する受信手 段 110と、 次の再送要求時に再送要求を行うパケット、 および現在再送 要求を行っているパケッ トのシーケンス番号を格納する再送要求リスト において、 シーケンス番号の追加と削除と、 再送要求リストの状態遷移 を行う再送要求リスト管理手段 115と、 パケッ トの受信回数および受信 時間から決定されるパケッ ト受信間隔で、 受信バッファ内のパケットの シーケンス番号の不整合から欠損したパケットのシ一ケンス番号を検出 するパケット欠損検出手段 111と、バケツト欠損検出手段 111によって 検出された欠損したパケッ トのシーケンス番号を再送要求リストに追加 する命令を再送要求リス ト管理手段 119へ出す再送シーケンス番号追加 手段 112と、 再送要求リス トの状態を、 再送要求は行ったが再送要求応 答がまだ返っておらず、 再送要求リストにあるシーケンス番号に対応す るパケッ トがすべて再送されてくるかどうかわからない状態を意味す る" READY"状態にする命令を再送要求リスト管理手段 115 へ出す再送 要求通知手段 113と、パケッ ト欠損検出手段 111がパケット欠損検出を 行う間隔で再送要求リストに存在する複数のシーケンス番号を 1つの再 送要求パケットに乗せ、 送信装置 101へ送信する再送要求送信手段 114 と、 再送要求応答パケットを受信し、 再送要求応答パケットから送信装 置 101から再送されてくるパケットのシーケンス番号を再送シーケンス 番号削除手段 117へ通知する再送要求応答受信手段 116と、再送要求応 答受信手段 116によって通知されたシーケンス番号の削除命令を再送要 求リストに出す再送シーケンス番号削除手段 117と、 再送要求リストの 状態を、 再送要求リストにあるシーケンス番号は、 そのパケットの再送 要求を行ったが送信装置 101 からは再送されてこないことを意味す る" ACTIVE"状態にする命令を再送要求リスト管理手段 115へ出す再送 要求応答通知手段 118と、 受信バッファ内に格納されているパケッ トの 中から、 1つの、 および複数のパケットのペイ口一ドを要求者(アプリケ —シヨン) 103に提供するパケット提供手段 119を有している。 第 2図は送信装置を説明するためのフローチャートで、 第 3図、 第 4 図、 第 5図、 第 6図、 第 7図は受信装置を説明するためのフローチヤ一 トで、 第 3図は受信手段 110 がパケッ トを受信して再送要求送信手段 114 が再送要求を行うまでの処理フロ一を説明し、 第 4図は受信装置 ' 102の再送要求リス ト管理手段 115の処理フローを説明し、 第 5図は受 信装置 102のパケッ ト欠損検出手段 111の処理フローを説明し、第 6図 は再送要求応答受信手段 116によつて再送要求応答パケットを受信した ときの処理フローを説明し、 第 7図は要求者 (アブリケ一ション)からパ ケット提供手段 119によってパケットの提供を要求されたときの処理フ ローを説明するものである。
次に動作を説明する。
第 1図の構成において、送信装置 101は受信装置 102へパケットを送 信する(ステップ S 202)。送信装置 101は、送信したパケットを再送用バ ヅファへ保存する(ステップ S 203)。 このとき、 すべてのパケヅ トを再送 用バッファ 201に保存しても良いし、 再送すべき重要なバケツ トのみを 再送用バヅファ 201に保存してもよい。 ただし、 再送用バヅファ 201の サイズが最大パケット数より大きくなつた場合、 あるいは、 タイムス夕 ンプにより時間管理のとき再送用バッファ 201の蓄積時間量が最大時間 より大きくなつた場合 (ステップ S 204)、再送用バッファ 201のサイズが、 最大パケット数以下あるいは最大時間以下になるまで、 最小のシ一ケン ス番号のバケツトを再送用バッファ 201から削除する(ステップ S 205)。 受信装置 102 の受信手段 110は、 第 3図に示すように送信装置 101 からのパケットを受信すると(ステップ S 301)、受信したパケッ トをシ一 ケンス番号順にソートしながら受信バヅファに保存する(スチヅプ S そして、所定の数のパケッ トを受信したとき、 パケット欠損検出手段 11 1はパケッ トが欠損していないかをチェックする。 このチェック処理を パケッ ト欠損検出処理という。 パケッ ト欠損検出手段 111がパケッ ト欠 損検出処理 (ステップ S 306) を行う間隔は、 例えば、 前回パケッ ト欠 損検出処理 (ステップ S 306) を行った最後のパケヅ トのシーケンス番 号やタイムスタンプと今回受信したパケッ トのシーケンス番号やタイム スタンプの差から決定する(ステップ S 303)。バケツ ト欠損検出処理(ス テツプ S 306) を行うシーケンス番号の間隔を Nint、 タイムスタンプの 間隔を Tint、 パケッ ト欠損検出手段 111 が前回パケッ ト欠損検出処理 (ステップ S 306) を行った最後のパケッ トのシーケンス番号を Ncur、 パケッ十欠損検出手段 111 が前回パケッ ト欠損検出処理 (ステップ S 306) を行った最後のパケヅ トのタイムスタンプを Tcurとすると、 受信 手段 110が今回受信したパケヅ トのシーケンス番号が Ncur + Nintと等 しいかあるいはそれよりも大きいか、 あるいは受信したパケッ トのタイ ムスタンプが Tcur + Tint と等レいかあるいはそれよ.りも大きければ、 Ncurと Tcurに今回受信したバケツ トのシーケンス番号とタイムスタン プをそれぞれ代入した上で、 パケッ ト欠損検出処理 (ステップ S 306) を行う。 これにより、 Ncurと Tcurの値は今回の新たなパケッ トの最後 のシーケンス番号とタイムスタンプとなる。 なお、 Nintや Tintは、 固 定値でもよいし、 ネッ トワークの輻輳状況から動的に決定してもよい。 パケッ ト欠損検出手段 111は、 シーケンス番号順にソートされた受信 ノ、'ヅ フ ァにおいて、 前回パケッ ト欠損検出処理 (S306) を行った最後の パケヅ トの次のパケヅ 卜からシーケンス番号 Ncur (今回の最後のパケ ヅ トのシーケンス番号) のパケヅ トまでの範囲 (ただし、 Ncur のパケ ヅ トを除く) 、 あるいはタイムスタンプ Tcur (今回の最後のパケヅ トの タイムスタンプ) のパケヅ トまでの範囲 (ただし、 Tcurのパケヅ トを除 く) で、 シーケンス番号の整合性をチヱヅクして抜けているシーケンス 番号を検出する。
第 5図にバケツ ト欠損検出手段 111によるバケツ ト欠損検出処理 (ス テツプ S306) の詳細フローを示す。 第 5図において、 パケヅ ト欠損検 出手段 111は、 はじめに受信バッファ中でシーケンス番号が FSN と等 しくなるパケヅ トのボイン夕を Pに設定する(ステップ S502)。 ここで、 FSNは、前回パケッ ト欠損検出を行った最後のバケツ トの次のパケッ ト のシーケンス番号である。 欠損したバケツ トの数を Loss、 FSN からの 距離を I、 欠損したパケヅ トのシーケンス番号のリス トを SN_listとし、 Lossおよび FSNに初期値として 0を設定し、 SN— listに初期値として 空白 (空リス ト) を設定する(ステップ S503)。
次に ケッ ト欠損検出処理のステヅプ 504に示す上記範囲内 [前回パ ケッ ト欠損検出処理 (S306) を行った最後のパケッ 卜の次のバケツ トか らシーケンス番号 Ncur (今回の最後のパケヅ トのシーケンス番号) の パケッ 卜までの範囲 (ただし、 Ncur のパケヅ トを除く) 、 あるいは夕 ィムスタンプ Tcur (今回の最後のパケヅ トのタイムスタンプ)のパケヅ トまでの範囲 (ただし、 T curのパケッ トを除く) ]で、 受信バッファの ポインタ Pに格納されているパケヅ トのシーケンス番号と FSN + Iを比 較する(ステップ S505)。 ステップ S505において、 もし FSN + Iとボイ ン夕 Pに格納されているパケヅ トのシーケンス番号が等しければ、 シ一 ケンス番号 FSN + I番のパケヅ トは欠損せず受信されていることになる c そこで、 Iをインクリメントし(ステップ S506)、 さらに: Pに次のパケヅ 卜のポインタを設定する(スデヅプ S506)。 ステップ S505において、 も し FSN + Iとボイン夕 Pに格納されているパケッ トのシーケンス番号が 等しくなければ、 ステップ S507へ進む。; FSN + Iがボイン夕 Pに格納さ れているパケヅ トのシーケンス番号より小さければ (ステップ S507)、 シ —ケンス番号 FSN + I 番のパケヅ トが欠損したことになる。 そこで、 SNJistに FSN + Iを追加し(ステツプ S508)、 Iと Lossをインクリメン トする(ステヅプ S509)。
ステップ S504で示された範囲すなわち、 [前回パケット欠損検出処理 (S306) を行った最後のパケヅ 卜の次のパケヅ 卜からシーケンス番号 Ncur (今回の最後のパケヅトのシーケンス番号) のパケヅトまでの範囲 (ただし、 Ncurのパケヅトを除く)、あるいはタイムスタンプ Tcur (今 回の最後のパケヅ 卜のタイムスタンプ)のパケヅ 卜までの範囲(ただし、 T curのパケヅ トを除く) ]で、 このシーケンス番号の比較が終了したら (ステップ S510)、 FSNにェを加えて、 FSNを次回のパケット欠損検出 処理の閧始シーケンス番号とする(ステップ S511)。 このとき、 SN_list にある番号が、前記範囲内の欠損したバケツトのシーケンス番号となり、 Lossが欠損したパケヅ トの数となる。
次に、 パケッ ト欠損が発生している受信バッファとバケツト欠損検出 処理実行の結果の例を第 8図に示す。 第 8図において、 8 0 1は、 Nint = 8の場合の受信バッファを示し、 8 0 2は、 N回目のパケット欠損検 出処理時の FSN、 Ncur、 I、 Loss, Snjist の状態を表し、 8 0 3は、 N + 1回目のパケヅト欠損検出処理時の FSN、 Ncur, I、 Loss, Snjist の状態を表す。 受信バッファ 801内のパケッ トのシーケンス番号が、 1、 2、 3、 …ヽ 7、 8、 9、 1 0、 1 2、 1 5、 1 6、 1 8、 1 9、 2 2、 2 3、 2 4、 2 5、 2 6、 …となっており、 Nint= 8となっており、 N 回目のバケツ ト欠損検出処理実行時 (802)に FSN= 8、 Ncur= 1 6とな つていた場合、 シーケンス番号 8から 1 5までの範囲で抜けている番号 を検出する。 .
この例では、 1 1、 1 3、 1 4の 3つのシーケンス番号が抜けており、 これらの 3つのパケッ トが欠損したことになる。 また、 次の N+ 1回目 のパケヅ ト欠損検出処理 (803)では FSNは N回目の FSN + I= 8 + 8 = 1 6となり、 Ncurは N回目の Ncur+Nint= 1 6 + 8 = 2 4となる。 同様にシーケンス番号 1 6から 2 3までの範囲で抜けている番号を検 出する。 この例では、 1 7、 2 0、 2 1の 3つのシーケンス番号が抜け ており、 これらの 3つのパケヅ トが欠損したことになる。
以下、 N回目のパケッ ト欠損検出処理におけるパケッ ト欠損検出処理 の動作について図 5を参照して詳細に説明する。
この場合、 FSN= 8であり、 Ncurには N回目の Ncur + Nint= 8 + 8 = 1 6が既に設定されていることを前提とする。
まず、 N回目のパケッ ト欠損検出処理において、 パケッ ト欠損検出手 段 111は、 受信バッファの FSN + I= 8 + 0 = 8に対応するシーケンス 番号を有するパケッ トのポインタを Pに設定する (ステップ S 502) 。 次に、 Lossに初期値として 0を設定し、 Iに初期値として 0を設定し、 SN— listに初期値として 0を設定する (ステップ S 503) 。
次に、 P <Ncur= l 6の範囲内で以下の処理を実行する (ステップ S 504) 。
' まず、 FSN + I とポインタ Pに格納されているシーケンス番号を比較 する (ステヅプ S 505) 。 FSN + I= 8 + 0 = 8でボイン夕 Pに格納され ているシーケンス番号 = 8であるから、 比較の結果、 「: FSN + I-ボイン 夕 Pに格納されているシーケンス番号」 となり、 ステップ S 506へ分岐 し、 Iを 1つインクリメントし、 ポインタ Pも 1つインクリメントする ことで次のパケッ トのポインタを設定する (ステップ S 506) 。 この結 果、 1 = 1 となり、 ポインタ Pに格納されているシーケンス番号は 9 と なる。
次に、 ループに戻り、 再び、 FSN + I とポインタ Pに格納されている シーケンス番号を比較する (ステツプ S 505) FSN + I= 8 + 1 = 9で ボイン夕 Pに格納されているシーケンス番号 = 9であるから、 比較の結 果、 「FSN + I=ポインタ Pに格納されているシーケンス番号」 となり、 ステップ S 506へ分岐し、 Iを 1つインクリメントし、 ポインタ Pも 1 つインクリメン卜することで次のパケヅ トのボイン夕を設定する (ステ ヅプ S 506) 。 この結果、 1 = 2となり、 ポインタ Pに格納されている シーケンス番号は 1 0となる。
次に、 ループに戻り、 再び、 FSN + I とポインタ Pに格納されている シーケンス番号を比較する (ステヅプ S 505) 。 FSN + I= 8 + 2 = 1 0 でポィン夕 Pに格納されているシーケンス番号 = 1 0であるから、 比較 の結果、 「FSN + I=ポインタ Pに格納されているシーケンス番号」 とな り、 ステップ S 506へ分岐し、 Iを 1つインクリメントし、 ポインタ P も 1つインクリメントすることで次のパケッ トのボイン夕を設定する (ステップ S 506) 。 この結果、 1 = 3となり、 ポインタ Pに格納され ているシーケンス番号は 1 2となる。
次に、 ループに戻り、 再び、 FSN + I とポインタ Pに格納されている シーケンス番号を比較する (ステップ S 505) 。 FSN + I= 8 + 3 = 1 1 でボイン夕 Pに格納されているシーケンス番号 = 1 2であるから、 比較 の結果、 「FSN + I≠ポインタ Pに格納されているシーケンス番号」 とな り、 ステップ S 507へ分岐し、 ステップ S 507では、 比較の結果、 「FSN + 1 <ポインタ Pに格納されているシーケンス番号」 となり、 ステップ S 508へ分岐する。 ステップ S 508では、 SN— listに: SN + I= 8 + 3 = 1 1を追加する (ステップ S 508) 。 この結果、 SN_listの値は空白から 1 1に切り替わる。 次に、 Iを 1つインクリメントし、 Lossも 1つイン クリメントする (ステップ S 509) 。 この結果、 1 = 4となり、 Loss- 1 となる。
次に、 ループに戻り、 再び、 FSN + I とポインタ Pに格納されている シーケンス番号を比較する (ステップ S 505) 。 FSN + I= 8 + 4 = 1 2 でボイン夕 Pに格納されているシーケンス番号二 1 2であるから、 比較 の結果、 「FSN + I=ボイン夕 Pに格納されているシーケンス番号」 とな り、 ステップ S 506へ分岐し、 Iを 1つインクリメントし、 ポインタ P も 1つインク リメントすることで次のパケッ トのボイン夕を設定する (ステップ S 506) 。 この結果、 1 = 5となり、 ポインタ Pに格納され ているシーケンス番号は 1 5となる。
次に、 ループに戻り、 再び、 FSN + I とポインタ Pに格納されている シーケンス番号を比較する (ステップ S 505) 。 FSN + I= 8 + 5 = 1 3 でポインタ Pに格納されているシーケンス番号 = 1 5であるから、 比較 の結果、 「FSN + I≠ポインタ Pに格納されているシーケンス番号」 とな り、 ステップ S 507へ分岐し、 ステップ S 507では、 比較の結果、 「FSN + 1くポインタ Pに格納されているシーケンス番号」 となり、 ステップ S 508へ分岐する。 ステップ S 508では、 SN_listに FSN+ 5 = 8 + 5 = 1 3を追加する (ステップ S 508) 。 この結果、 SN_listの値は「1 1」 から「1 1、 1 3」に切り替わる。次に、 Iを 1つインクリメントし、 Loss も 1つインクリメントする (ステップ S 509) 。 この結果、 I = 6とな り、 Loss= 2となる。
次に、 ループに戻り、 再び、 FSN + I とポインタ Pに格納されている シーケンス番号を比較する (ステップ S 505) 。 : FSN + I- 8 + 6 = 1 4 でポインタ Pに格納されているシーケンス番号 = 1 5であるから、 比較 の結果、 「FSN + I≠ポインタ Pに格納されているシーケンス番号」 とな り、 ステップ S 507へ分岐し、 ステップ S 507では、 比較の結果、 「FSN + 1くポインタ Pに格納されているシーケンス番号」 となり、 ステップ S 508へ分岐する。 ステップ S 508では、 SN— listに FSN + I= 8 + 6 = 1 4を追加する (ステップ S 508) 。 この結果、 SN_listの値は「1 1 、 1 3」から 「 1 1、 1 3、 1 4」 に変わる。 次に、 Iを 1つインクリメン トし、 Lossも 1つインクリメントする (ステップ S 509) 。 この結果、 I = 7となり、 Loss= 3となる。
次に、 ループに戻り、 再び、 FSN + I とポインタ Pに格納されている シーケンス番号を比較する (ステップ S 505) 。 FSN+I= 8 + 7 = 1 5 でポインタ Pに格納されているシーケンス番号 = 1 5であるから、 比較 の結果、 「FSN + I=ポインタ Pに格納されているシーケンス番号」 とな り、 ステップ S 506へ分岐し、 Iを 1つインクリメントし、 ポインタ P も 1つインクリメントすることで次のパケッ トのボイン夕を設定する ('ステップ S 506) 。 この結果、 1 = 8となり、 ポインタ Pに格納され ているシ一ケンス番号は 1 6となる。 従って、 ループの条件 Ncur> P を満足しないので、 ループから抜け出し、 FSN に FSN+ 1 = 1 5 + 1 = 1 6を設定する (ステップ S 511)
以上より、 シーケンス番号 1 1、 1 3、 1 4のパケッ トが欠損したこ とを検出する。
N + 1回目のバケツ ト欠損検出処理におけるパケッ ト欠損検出処理の 動作も同様である。
パケッ ト欠損検出処理 (ステップ S 306)実行後、 Loss> 0の場合、 パケ ッ ト欠損が検出されたことになるので、 再送シーケンス番号追加手段
112は、 再送要求リス ト管理手段 115へ SN_listに登録されている欠損 パケヅ トのシーケンス番号を追加するよう命令を発する(ステップ S
307)。
追加命令を受理した再送要求リス ト管理手段 115は、 SNJistのシ一ケ ンス番号を再送要求リストへ追加する(ステップ S 402〜S 407)。 ただし、 2重登録は行わない。 ただし、 SN_list にあるシーケンス番号がすべ て" ACTIVE"状態の再送要求リス トにあって、 1つも再送要求リストに 追加できない場合、 以下の再送要求通知処理や再送要求送信処理は行わ ない。
次に、 再送要求通知手段 113は、 再送要求リストの状態を、 "READY" 状態に遷移するよう、再送要求リスト管理手段 115へ命令を発する(ステ ヅプ S 308)。 ここで、 "READY"状態にある再送要求リストとは、 再送要 求を行うシーケンス番号のリストであるが、 全てのシーケンス番号が再 送されてくるかどうかはわからない状態のシーケンス番号リストである
READY命令を受理した再送要求リスト管理手段 115は、 再送要求リス トを' 'READY"状態にする(ステップ S 402, S 03, S 412)。
次に、 再送要求送信手段 114は、 再送要求リストのシーケンス番号の 再送要求を送信装置 101に対して行う(ステップ S 309)。 この場合、再送 要求リストのシーケンス番号と、 その時点で要求者(アプリケーショ ン) 103へ提供したパケヅ トの最大(最新) のシーケンス番号を 1つの再 送要求パケットに乗せ、 その再送要求パケットを送信装置 101へ送信す る(ステップ S 310)。
送信装置 101の再送要求受信手段 106は、第 2図に示すように再送要 求パケットを受信し (ステップ S 207)、再送要求パケッ 卜から再送要求さ れたシーケンス番号と要求者(アプリケ一シヨン) 103へ提供した最大(最 新) シーケンス番号を識別する(ステップ S 208, S 209)。
次に、 再送用バッファ削除手段 120 は、 要求者 (アプリケーション) 103へ提供した再送用バッファ 201内の最大 (最新) シーケンス番号よ りも小さいシーケンス番号のパケットはこれ以上再送要求する必要がな いので、 これらのパケヅ トを削除する(ステップ S 210)o
次に、 再送パケット検出手段 107は、 再送用バッファを検索して再送 要求されたシーケンス番号と等しいシーケンス番号を検出する(ステヅ プ S 211)。 このシーケンス番号は再送するべきパケッ トのシーケンス番 号であり、 再送シーケンス番号と呼ぶ。 次に、 再送要求応答手段 108は、 再送パケット検出手段 107によって 検出された再送シーケンス番号を乗せた 1つの再送要求応答パケットを 生成し、その再送要求応答パケットを受信装置 102へ送信する(ステップ S 212)0
次に、再送手段 109は、再送シーケンス番号のパケットを受信装置 102 へ再転送する(ステップ S 213)。
受信装置 102の再送要求応答受信手段 116は、第 6図に示すように送信 装置 101から再送シーケンス番号を乗せた再送要求応答バケツトを受信 すると(ステップ S 601)、再送要求応答バケツトから再送シーケンス番号 を識別する(ステップ S 602)。
次に、 再送シーケンス番号削除手段 117は、 受信できたことにより再 送要求が不要になったパケッ トの再送シーケンス番号を再送要求リス ト から削除するように、 再送要求リスト管理手段 115へ削除命令を発する (ステツプ S 603)。
削除命令を受理した再送要求リスト管理手段 115は、 第 4図に示すよ うに再送要求リストから再送シーケンス番号を削除する(ステップ S 402, S 403,S 408〜 S 411)。 したがって、 再送要求リストに残っているシ一 ケンス番号は欠損したため再送要求を行ったが、 送信装置 101からは再 送されてこないパケットのシーケンス番号となる。
次に、 再送要求応答通知手段 118は、 第 6図に示すように再送要求リ ストを" ACTIVE"状態に遷移するように、 再送要求リスト管理手段 115 へ命令を発する(ステツプ S 604)。
ACTIVE命令を受理した再送要求リスト管理手段 115は、第 4図に示す よう に再送要求リス ト を" ACTIVE"状態に遷移する(ステップ S 402,S403,S413)。 "ACTIVE"状態の再送要求リストは、 再送要求を行つ ても送信装置から再送されてこないシーケンス番号を意味する。 次に、 要求者 (アプリケーション) 103は、 受信装置 102が受信したパ ケットのペイロードを要求する。 受信装置 102のパケット提供手段 119 は、 要求者(アプリケーション) 103 から、 パケットのペイロードと、 そ のペイロードを提供するまでの待ち時間が要求されると、 その待ち時間 までに前回提供したパケヅ トの次のバケツ ト(シーケンス番号 Tnext の パケット)のペイ口一ドを提供するが、その Tnextのバケツ 卜が欠損した り、 再送もされなかったりすることで、 待ち時間内に Tnextのバケツト のペイロードが提供できないときは、バケツト提供手段 119は Tnextの バケツトが欠損したことを要求者(アプリケーシヨン) 103に通知する。 第 7図に示すようにパケット提供手段 119は、要求者(アブリケーショ ン) 103 からバケツ トのペイロードと要求からペイ口一ド提供迄の許容 待ち時間が要求されると(ステップ S 702)、 その現在時刻を Tstartにセ ッ トして(ステップ S 703)、 シーケンス番号 Tnext のパケヅ トが受信バ ヅファにあるか否かを調べる(ステヅプ S 704)。 受信バッファに Tnext のパケットがあった場合、 この Tnextのパケッ トのペイロードを提供す る(ステヅプ S 705)。
受信バッファに Tnextのバケツ 卜がなかった場合、 現在時刻が待ち時 間を超えていないかタイムァゥトのチェックを行い(ステップ S 706)、夕 ィムァゥ卜の場合は、 Tnextのパケッ 卜が欠損したことを要求者(アプリ ケ一シヨン) 103 に通知する(ステップ S 709)。 タイムアウトでない場合 は、シーケンス番号 Tnextが再送要求リストにあるか否かを調べる(ステ ヅプ S 707)。
Tnext が再送要求リストにあり、 且つ再送要求リストが" ACTIVE"状 態である場合は (ステツプ S 708)、送信装置 101からは再送要求を行って も再送されないことを意味するので、 Tnextのパケットが欠損したこと を要求者(アプリケーション) 103に通知する(ステップ S 709)。 Tnextが再送要求リストにない場合は、 FSNに Tnextを設定し(ステ ヅプ S 711)、 Ncur に現在受信した最新のパケヅトのシーケンス番号を 設定し (ステップ S 712)、 Tcur に現在受信した最新のパケットのタイム スタンプを設定し(ステップ S 713)、 この後パケヅト欠損検出処理(ステ ップ S 714) 、 再送シーケンス番号追加処理 (ステップ S 715) 、 再送要 求応答通知処理(ステップ S 716)、 再送要求送信処理(ステップ S 717, S 718) を用いて、 再度 Tnextの再送要求を行うと共に、 最新のパケヅ ト欠損も検出し、 同時に再送要求を行う。
待ち時間が 0をセヅ トされたときは、 受信バッファに Tnextがあるか 否かだけを調べ、 もしなかったら Tnextのパケットの再送要求は行わず、 すぐに Tnext のパケッ トが欠損したことを要求者(アプリケーショ ン) 103に通知する。逆に待ち時間が無限時間をセツトされたときは、 受 信バッファに Tnext のパケヅトがない場合、 何度も再送要求を行い、 Tnextのバケツ トが再送されるを待ち続ける。
ただし、 "ACTIVE"状態の再送要求リストに Tnextがある場合は、 再 送要求を行わず、 Tnextのバケツトが欠損したことを要求者 (アプリケー シヨン) 103に通知する。再送要求送信手段が再送要求パケットを送信し たあと、 再送要求を行う間隔 Trだけ待ち (ステップ S 720) 、 再び受信 バッファに Tnextのパケットがあるか否かを調べる。 Trは再送要求を行 う毎に変更してもよい。
なお、 ステップ S719、 S720、 S721では、 待ち時間に対するスリープ 時間を作成している。
簡単な例を用いて説明する。 いま、 Twait= 5秒、 Tr= 2秒とする。 この場合、 5秒間のうちに 2秒間隔で受信バヅファのチェックおよびパ ケット欠損検出処理を行うことになる。 今、 このパケット提供処理が 0 秒の時に開始されたとする。 即ち Tstart= 0である。 従って、 現在時刻 は 0秒から 1秒、 2秒、 3秒 ··· ···と時を刻んでいく。 現在時刻が 3秒に なるまではステップ S719で Noと判定され、ステップ S720を実行する < ステップ S720では、 2秒だけスリープ (遅延) する。 従って、 2秒後 には再び受信バッファのチェックおよびパケヅト欠損検出処理 (ステツ プ S714) を行う。 これによつて、 許される時間内、 即ち待ち時間に定 期的に受信バヅファのチェックとパケッ ト欠損検出処理 (ステヅプ S714) が行える。 しかし、 現在時刻が 3秒を過ぎると、 さらに 2秒、 ( = Tr) のスリープでは待ち時間 Twaitを超えてしまう。 従って、 この時は、 ステップ S721 でその差分のみ (例えば現在時刻が 4秒の時、 差分は Twait—現在時刻 + Tstart= 5— 4 = 1秒) の時間をスリーブ (遅延) しているのである。 このスリープ終了後は、 受信バッファのチェックも 行うが、 ステップ S706でタイムアウトと判定されるから、 パケッ ト欠 損検出処理までは行わない。すぐに、次のシーケンス番号を提供して(ス テヅプ S705) 、 待ち時間内にパケヅ トデ一夕を提供することができる。 この実施の形態 1によれば、 送信装置に再送パケット格納手段と再送 要求受信手段と再送バケツト検出手段と再送手段を設けることにより、 優先度の高い重要なバケツトのみを再送することができるので、 再送処 理によるネットワーク負荷の浪費を最小限に抑えることができ、 ネッ ト ワークの輻輳時でも優先度の高いパケットの伝送容量を確保することが できる。 また、 再送パケット格納手段により、 すべての送信済みバケツ トの中から優先度の高い再送すべきバケツトを選択するのではなく、 予 め優先度の高い重要なパケッ トのみを再送用バッファに保存しておくこ とから、 再送するパケットの検索処理負荷が削減でき、 送信装置の再送 用バッファも最小限に抑えることができ、 リソースの浪費を抑えること ができる。
また、 受信装置では、 受信手段が送信装置から受信したパケットをシ —ケンス番号順にソ一トしながら受信バヅファに保存するので、 パケヅ ト欠損検出処理が受信バッファ中のパケッ トの内から欠損したバケツ ト を検出するときに、 高速に検出することができる。
さらに、 再送要求リストと再送要求リスト管理手段、 および再送リス トと再送リスト管理手段を設けることにより、 再送要求を行ったシーケ ンス番号の識別や、 再送されてくるパケッ トのシーケンス番号の識別が 簡単に行えることができる。
さらに、 パケット欠損検出手段と再送シーケンス番号追加手段と再送 要求通知手段と再送要求送信手段を設けることにより、 複数のパケッ ト 欠損に対する再送要求を行うことができる。 また、 優先度の高い重要な パケヅトのみを再送する送信装置において、 受信装置で送信装置から再 送されてくるパケットのシーケンス番号を識別できるので、 再送されて こないパケッ トの無駄な再送要求をなくしたり、 そのパケットの再送を 待たなくてもよくなり、 よりリアルタイムな転送方式が実現できる。 さらに、再送要求受信手段と再送用バッファ削除手段を設けることで、 送信装置の再送用バッファの削減を行うことができる。 再送パケット検 出手段と再送手段を設けることにより、 再送すべき優先度の高いパケッ トのみを再送することができ、 ネットワークの輻輳状態でも最小限の再 送パケッ トを転送することで輻輳の悪化を防止することができる。また、 再送要求応答手段を設けることにより、 再送すべき優先度の高いパケッ トのシーケンス番号が受信装置でもわかるようになり、 受信装置で無駄 な再送要求を行うことを防ぐことができる。
また、 再送要求応答受信手段と再送シーケンス番号削除手段と再送要 求応答通知手段を設けることにより、 受信装置側で送信装置から再送さ れない優先度の低いパケットに対する無駄な再送要求を行うことを防ぐ ことができる。 また、 バケツ ト提供手段を設けることにより、 要求者 (アプリケ一ショ ン)が各パケッ ト毎に待ち時間を設定することができ、その時間までにパ ケッ トのペイロードの提供、 あるいはパケット欠損の通知を得ることが できる。
また、 定期間隔で行うパケット欠損検出手段と再送要求送信手段によ る再送要求だけではなく、 要求者(アプリケ一シヨン)からの要求時にも 待ち時間内に数回、 パケヅト欠損検出手段と再送要求送信手段によって 再送要求を行うバケツト提供手段を設けることにより、 待ち時間内に再 送されてくる可能性が高くなり、 より信頼性の高い提供手段が実現でき る。
また、送信装置から再送されない優先度の低いパケッ卜が要求者 (アブ リケ一ション)から要求され、そのパケヅトが受信バッファにない場合に、 無駄な再送要求を行うことなくすぐにパケットが欠損したことを通知す るパケット提供手段を設けることで、 よりレスポンスの早い提供手段が 実現できる。
また、 受信装置においてシーケンス番号の不整合と優先度情報から欠 損を発生したバケツトの優先度を的確に認識できるバケツ ト欠損検出手 段を設けることにより、 再送されない優先度の低いパケッ トの無駄な再 送要求を防ぐことができ、 ネットワークの浪費と送信装置の再送バケツ ト検出処理負荷を削減できる。 実施の形態 2 .
第 9図は本発明の実施の形態 2を示すバケツト再送システム、 および パケッ ト転送システムの構成図であり、 すべてのパケットに与えられる —般シーケンス番号と、 重要なパケッ トおよび欠損時には再送した方が 良いと判断できるパケットのみに与えられる優先シーケンス番号が付加 されたバケツト通信のパケッ ト欠損時における送受信間の再送、 および パケット転送を示している。 本実施の形態 2の再送システム、 およびパ ケッ ト転送システムは、 イン夕一ネッ トゃ無線網などのネッ トワーク 904と、 パケットを送信する送信装置 901と、 ネットヮ一ク 904を介し て送信装置 901から送信されたパケットを受信する受信装置 902と、そ の受信装置 902 からパケッ トデ一夕を要求する要求者(アプリケ一ショ ン) 903とから構成される。
そして、 送信装置 901は、 受信装置 902へ送信済みのバケツトのうち、 再送すべきパケットのみを再送用バッファに格納しておく再送パケッ ト 格納手段 905と、 受信装置 902からの再送要求バケツトを受信し、再送 要求パケットから再送要求されたパケッ トの一般シーケンス番号を取り 出し再送バケツト検出手段 908へ、 要求者に提供された最大一般シ一ケ ンス番号 (この最大一般シーケンス番号は最新のパケットの一般シ一ケ ンス番号を意味する) を再送用バッファ削除手段 907へ通知する再送要 求受信手段 906と、 要求者 903に提供された最大 (最新)一般シ一ケン ス番号より小さい一般シーケンス番号のパケッ トを再送用バッファから 削除する再送用バッファ削除手段 907と、 再送用バッファの中から再送 要求受信手段 906によって通知された一般シーケンス番号を検出する再 送パケッ ト検出手段 908と、 同再送バケツト検出手段で検出された一般 シーケンス番号のパケッ トを受信装置 902へ再送信する再送手段 909を 有している。
また、 受信装置 902は、 送信装置 901からパケットを受信し、 一般シ —ケンス番号順にソ一トしながらパケヅトを受信バヅファに格納する受 信手段 910と、 次の再送要求時に再送要求を行うパケッ ト、 および現在 再送要求を行っているパケッ トの一般シーケンス番号を格納する再送リ ス卜において、 一般シーケンス番号の追加と削除を行う再送リスト管理 手段 915と、 受信パケッ トの一般シーケンス番号が再送リストにある場 合、 再送リスト管理手段 915にその一般シーケンス番号の削除命令を出 す再送シーケンス番号削除手段 911と、 パケットの受信回数および時間 から決定されるバケツト受信間隔、 あるいは優先シーケンス番号の不整 合から重要なパケットが欠損する毎に、 受信バッファ内のパケッ トゃ受 信パケットの一般シーケンス番号と優先シーケンス番号の不整合から欠 損したパケッ卜の一般シーケンス番号を検出するパケッ ト欠損手段 912 と、 パケット欠損検出手段 912によって検出された欠損したパケットの —般シーケンス番号を再送リストに追加する命令を再送リスト管理手段 915へ出す再送シーケンス番号追加手段 913と、 パケッ ト欠損検出手段 912がパケット欠損検出を行う間隔で再送リストに存在する複数の一般 シーケンス番号を 1つの再送要求パケットに乗せ、 送信装置 901へ送信 する再送要求送信手段 914と、 受信バッファ内に格納されているパケッ トの中から、 1つの、 および複数のパケットのペイ口一ドを要求者(ァプ リケーシヨン) 903に提供するパケヅト提供手段 916を有している。 第 1 0図は送信装置を説明するためのフローチャートで、 第 1 1図、 第 1 2図、 第 1 3図、 第 1 4図、 第 1 5図は受信装置を説明するための フローチャートで、 第 1 1図と第 1 2図は受信手段がパケットを受信し て再送要求送信手段が再送要求を行うまでの 2つの例の処理フロ一を説 明し、 第 1 3図は受信装置の再送リスト管理手段 915の処理フローを説 明し、 第 1 4図は受信装置のパケット欠損検出手段 912の処理フローを 説明し、 第 1 5図は要求者(アプリケーション) 903 からバケツ ト提供手 段 916がパケットの提供を要求されたときの処理フローを説明するもの である。
第 9図の構成において、送信装置 901は受信装置 902へパケッ トを送 信する(ステップ S1001)。 送信装置 901は、 送信したパケットを再送用 バッファへ保存する(ステップ S1002)。 このとき、 すべてのパケヅトを 再送用バッファ 1005 に保存しても良いし、 再送すべき重要なバケツト のみを再送用バヅファに保存してもよい。ただし、再送用バッファ 1005 のサイズが最大パケッ ト数より大きくなつた場合、 あるいは、 タイムス 夕ンプにより時間管理のとき再送用バッファ 1005 の蓄積時間量が最大 時間より大きくなつた場合 (ステップ S 1003)、再送用バッファ 1005のサ ィズが、 最大パケッ ト数以下あるいは最大時間以下になるまで、 最小の —般シーケンス番号のパケットを再送用バッファ 1005から削除する(ス テヅプ S1004)。
受信装置 902 の受信手段 910 は、 第 1 1図に示すように、 送信装置 901からのパケヅ トを受信すると(ステップ S1101,S1201)、 受信したパ ケットを一般シーケンス番号順にソートしながら受信バッファに保存す る(ステップ S1102,S1202))。
また、 再送シーケンス番号削除手段 911は、 バケツ トを受信する毎に この受信パケットが再送リス トに有るか否かをチェックする。 受信パケ ヅ トの一般シーケンス番号が再送リス トにある場合は(ステップ S1103,S1203)、 この受信バケツトは再送されてきたパケヅトを意味し、 このパケヅ トはこれ以上再送要求する必要がないので、 この受信バケツ トの一般シーケンス番号を再送リストから削除するよう、 再送リスト管 理手段 915へ削除命令を発する(ステツプ S1104,S1204)。
そして、所定の数のバケツトを受信したとき、バケツ ト欠損検出手段 912 はバケツ 卜が欠損していないかをチェックする。 このチェック処理をパ ケット欠損検出処理という。パケット欠損検出手段 912がパケット受信 後に行うパケッ ト欠損検出処理の例を 2つ説明する。 第 1 1図の例 1の フローチャートに示すように、 このパケット欠損検出手段 912がパケヅ ト欠損検出処理 (ステップ S 1108) を行う間隔は、 例えば、 前回パケヅ ト欠損検出処理 (ステップ S 1108) を行った最後のパケッ トの一般シー ケンス番号やタイムスタンプと今回受信したパケッ トの一般シーケンス 番号や夕ィムスタンプの差から決定する (ステップ S 1105) 。 パケヅ ト 欠損検出処理 (ステップ S 1108) を行う一般シーケンス番号の間隔を Nint、 タイムスタンプの間隔を Tint、 前回パケッ ト欠損検出処理 (ステ ヅプ S 1108) を行った最後のパケッ トの一般シーケンス番号を Ncur、 前回パケッ 卜欠損検出処理 (ステップ S 1108) を行った最後のパケヅ 卜 のタイムスタンプを Tcurとすると、 受信手段 910が今回受信したパケ ッ 卜の一般シーケンス番号が Ncur + Nint と等しいかあるいはそれより も大きいか、あるいは受信したパケヅ 卜のタイムスタンプが Tcur + Tint と等しいかあるいはそれよりも大きければ(ステップ S 1105)、 Ncur と Tcur に今回受信したパケッ トの一般シーケンス番号とタイムスタンプ をそれぞれ代入した上で(ステップ S1106,S1107)、 パケッ ト欠損検出手 段を行う(ステップ 1108)。 これにより、 Ncurと Tcurの値は今回の新た なパケヅ トの最後の一般シーケンス番号とタイムスタンプとなる。なお、 Nintや Tintは、 固定値でもよいし、 ネッ トワークの輻輳状況から動的 に決定してもよい。
パケッ ト欠損検出手段 912は、 一般シーケンス番号順にソ一トされた 受信バッファにおいて、 前回パケッ ト欠損検出処理 (ステップ S 1108) を行った最後のパケッ トの次のパケヅ トから一般シーケンス番号 Ncur (今回の最後のパケヅ トの一般シーケンス番号) のバケツ 卜までの範囲 (ただし、 Ncurのパケヅ トを除く)、 あるいはタイムスタンプ Tcur (今 回の最後のパケヅ トのタイムスタンプ)のパケヅ トまでの範囲(ただし、 Tcurのパケッ トを除く)で、 一般シーケンス番号と優先シーケンス番号 の整合性をチェックして再送すべき優先度の高いパケッ トの欠損を検出 する。
第 1 4図にパケッ ト欠損検出手段 111 によるパケッ ト欠損検出処理 (ステップ S1108) の詳細フローを示す。 第 1 4図において、 パケヅ ト 欠損検出手段 111は、 はじめに受信バヅファ中で一般シーケンス番号が FSNと等しくなるパケッ トのボイン夕を Pに設定する(ステップ S1402)C ここで、 FSNは、 前回パケッ ト欠損検出を行った最後のパケッ トの次の パケヅ トの一般シーケンス番号である。次に MPSNにボイン夕 Pに格納 されているパケヅ トの優先シーケンス番号を保持しておく(ステツプ S1403)。 ここで、 MPSNは欠損バケツ ト検索中の最大 (最新)優先シーケ ンス番号を意味する。
欠損したバケツ トの数を Loss、 FSNからの距離を I、 再送すべき優先度 の高い欠損したパケッ トの一般シーケンス番号のリストを SNJistとし、 Lossおよび FSN に初期値として 0を設定し、 SNJistに初期値として 空白 (空リスト) を設定する(ステップ 1404)。
次に、 パケッ ト欠損検出処理のステップ 1405に示す上記範囲内 [前回 パケヅ ト欠損検出処理 (ステップ S1108) を行った最後のパケッ トの次 のパケヅ トから一般シーケンス番号 Ncur (今回の最後のパケヅ トのー 般シーケンス番号) のパケヅ トまでの範囲 (ただし、 Ncur のパケヅ ト を除く) 、 あるいはタイムスタンプ Tcur (今回の最後のパケヅ トのタイ ムスタンプ)のパケヅ 卜までの範囲(ただし、 T curのパケヅトを除く)] で、 受信バッファのポインタ Pに格納されているパケッ 卜の一般シ一ケ ンス番号と FSN + Iを比較する(ステップ S1406)。 ステップ S1406にお いて、 もし FSN + Iとボイン夕 Pに格納されているパケヅ 卜の一般シ一 ケンス番号が等しければ、 一般シーケンス番号; FSN + I番のパケッ トは 欠損せず受信されていることになる。 そこで、 MPSNにポィン夕 Pに格納されているパケヅ トの優先シーケン ス番号を設定し(ステップ S1407)、 I をイ ンクリメン トし(ステヅプ S1408)、 さらに P に次のパケヅ トのポィ ン夕を設定する(ステヅプ S1410)oステヅプ S1406において、 もし FSN + Iとボイン夕 Pに格納さ れているパケッ トの一般シ一ケンス番号が等しくなければ、 ステヅプ S1409へ進む。 FSN+Iがポインタ Pに格納されているパケッ 卜の一般 シーケンス番号より小さく(ステップ S1409)、且つ MPSNがボイン夕 P に格納されているバケツ トの優先シーケンス番号より小さければ(ステ ヅプ 1411)、 一般シーケンス番号 FSN + I番のパケヅ トが欠損したこと になり、 そのパケッ トは再送すべき優先度の高いパケッ トである。 そこ で、 SN_listに FSN + Iを追加し(ステヅプ 1414)、 Iと Lossをインクリ メントする(ステップ 1415)。
ステツプ S1411 においてもし、 MPSN がポィン夕 Pに格納されてい るパケヅ トの優先シーケンス番号より小さくなければ (ステップ 1411)、 欠損したバケツ トは再送を必要としない優先度の低いパケットであり、 再送要求は行わないので、 SNJist には欠損した一般シーケンス番号を 追加しない。 ステップ S1405 で示された範囲すなわち、 [前回パケッ ト欠損検出処 理 (S1108) を行った最後のパケッ トの次のパケヅ ドから一般シーケン ス番号 Ncur (今回の最後のバケツ トの一般シーケンス番号) のパケヅ 卜までの範囲 (ただし、 Ncur のパケヅ トを除く) 、 あるいは夕ィムス 夕ンプ Tcur (今回の最後のパケヅ トのタイムスタンプ)のパケヅ トまで の範囲 (ただし、 T curのパケッ トを除く) ]で、 この一般シーケンス番 号の比較が終了したら(ステップ S1416)、 : FSNに Iを加えて、 FSNを次 回のパケッ ト欠損検出処理の開始一般シーケンス番号とする(ステツプ S1417)o このとき、 SNJistにある番号が、 前記範囲内の欠損したパケ ッ ト且つ再送すべき優先度の高いバケツトの一般シーケンス番号となり、 Lossが欠損したパケヅト数となる。
次に、 バケツ ト欠損が発生している受信バッファとパケット欠損検出 処理実行の結果の例を第 1 6図に示す。第 1 6図において、 1 6 0 1は、 Nint= 8の場合の受信バッファを示し 1 6 0 2は、 N回目のパケヅ ト欠 損検出処理時の FSN、 Ncm\ I、 Loss, Snjist の状態を表し、 1 6 0 3は、 N + 1回目のパケット欠損検出処理時の FSN、 Ncur、 I、 Loss, Sn_listの状態を表す。受信バッファ 1601内のパケヅトの一般シーケン ス番号が、 ···、 8、 9、 1 0、 1 2、 1 5、 1 6、 1 8、 1 9、 2 2、 2 3、 2 4、 2 5、 2 6、 …となっており、 優先シーケンス番号がそれ ぞれ、 4、 4、 5、 7、 7、 8、 8、 9、 1 0、 1 1、 1 1、 1 1、 1 2、 …となっており、 Nint= 8となっており、 N回目のパケヅ ト欠損検 出処理実行時(1602)に FSN= 8、 Ncur= 1 6となっていた場合、 一般 シーケンス番号 8から 1 5までの範囲で抜けている番号を検出する。 この例では、 1 1、 1 3、 1 4の 3つの一般シーケンス番号が抜けて おり、 これらの 3つのパケッ トが欠損したことになるが、 一般シ一ケン ス番号 1 2のパケットの優先シーケンス番号と一般シーケンス番号 1 5 のパケヅ トの優先シーケンス番号が共に 7で等しいことから、 一般シ一 ケンス番号 1 2〜 1 5には優先パケヅ トが存在しないことになる。即ち、 一般シーケンス番号 1 3 (= 1 2 + 1 )と 1 4のバケツ トは再送を必要と しない優先度の低いパケッ トということになり、 再送要求を行わないの で SN— listには追加しない。 また、 次の N+ 1回目のパケット欠損検出 処理では(ステップ 1603)、FSNは N回目の FSN + I= 8 + 8 = 1 6とな り、 Ncurは N回目の Ncur+Nint= 1 6 + 8 = 2 4となる。
同様に一般シーケンス番号 1 6から 2 3までの範囲で抜けている番号 を検出する。 この例では、 1 7、 2 0、 2 1の 3つの一般シーケンス番 号が抜けており、 これらの 3つのパケットが欠損したことになる。 しか し、 一般シーケンス番号 1 7は、 一般シーケンス番号 1 6と 1 8のパケ ヅ トの優先シーケンス番号が 8で等しいので、 一般シーケンス番号 1 6 〜 1 8には優先パケットが存在しないことになる。 即ち、 一般シ一ケン ス番号 1 7 (= 1 6 + 1 )のパケッ トは再送を必要としない優先度の低い パケットということになり、 再送要求を行わないので、 SL— list には追 加しない。
ところが、 一般シーケンス番号 1 9、 2 2のパケットの優先シ一ケン ス番号は、 それぞれ 8、 9であり、 一般シーケンス番号 2 2のパケッ ト の優先シーケンス番号の方が一般シーケンス番号 1 9のバケツトの優先 シーケンス番号より 1大きい。 したがって、 一般シーケンス番号 1 9〜 2 2には優先パケットが 1つ存在することになる。 この場合、 欠損した 一般シーケンス番号 2 0と 2 1のパケヅトは、 どちらかが再送すべき優 先度の高いパケットかもしれないし、 一般シーケンス番号 2 2のパケヅ トが再送すべき優先度の高いパケヅトだったために、 一般シーケンス番 号 2 0と 2 1のどちらも再送を必要としない優先度の低いパケッ トかも しれない。 このようにパケットが連続欠損し優先シーケンス番号がその 前後で等しくない場合は、 どれが優先度の高いバケツトなのかが判断で きないため、 連続欠損したすべてのパケッ トの一般シーケンス番号を SL_listに追加する。
以下、 N回目のパケット欠損検出処理におけるパケッ ト欠損検出処理 の動作について図 1 4、 図 1 6を参照して詳細に説明する。
この場合、 FSN= 8であり、 Ncurには N回目の Ncur + Nint= 8 + 8 = 1 6が既に設定されていることを前提とする。
まず、 N回目のパケッ ト欠損検出処理において、 パケッ ト欠損検出手 段 912は、受信バッファの FSN= 8に対応する一般シーケンス番号を有 するパケッ トのポインタを Pに設定する (ステップ S 1402) 。
次に、 パケッ ト欠損検出手段 912は、 受信バッファのポインタ Pに格 納されているパケヅ トの優先シーケンス番号 = 4を MPSN に設定する (ステップ S1403) 。 この結果、 MPSN- 4となる。
次に、 Lossに初期値として 0を設定し、 Iに初期値として 0を設定し、 SNJistに初期値として 0を設定する (ステップ S 1404) 。
次に、 P <Ncur= l 6の範囲内で以下の処理を実行する (ステヅプ S 1405) o
まず FSN + Iとボイン夕 Pに格納されている一般シーケンス番号を比 較する (ステップ S 1406) 。 FSN + I= 8 + 0 = 8でポインタ Pに格納 されている一般シーケンス番号 = 8であるから、 比較の結果、 「FSN + 1=ボイン夕 Pに格納されている一般シーケンス番号」 となり、 ステップ S 1407へ分岐し、ボイン夕 Pに格納されているパケヅ トの優先シーケン ス番号 = 4を MPSN に設定し (ステップ S 1407) 、 さらに Iを 1っィ ンクリメントし (ステヅプ S 1408) 、 さらにボインタ Pも 1つインクリ メン トすることで次のパケヅ トの 'ボイン夕を設定する (ステップ S 1410) 。 この結果、 1 = 1、 MPSN= 4となり、 ポインタ Pに格納され ている一般シーケンス番号は 9となる。
次に、 ループに戻り、 再び、 FSN + I とポインタ Pに格納されている 一般シーケンス番号を比較する (ステップ S 1406) 。 FSN + I= 8 + 1 = 9でボイン夕 Pに格納されている一般シ一ケンス番号 = 9であるから、 比較の結果、 「FSN + I=ボイン夕 Pに格納されている一般シーケンス番 号」 となり、 ステヅプ S 1407へ分岐し、 ポインタ Pに格納されているパ ケヅ トの優先シーケンス番号 = 4を MPSNに設定し(ステップ S 1407)、 さらに Iを 1つインクリメントし (ステヅプ S 1408) 、 さらにボイン夕 Pも 1つインクリメン卜することで次のバケツ 卜のボイン夕を設定する (ステップ S 1410) 。 この結果、 1 = 2、 MPSN= 4となり、 ポインタ Pに格納されている一般シーケンス番号は 1 0となる。
次に、 ループに戻り、 再び、 FSN + I とポインタ Pに格納されている 一般シーケンス番号を比較する (ステップ S 1406) 。 ; FSN+I= 8 + 2 = 1 0でボイン夕 Pに格納されている一般シーケンス番号 = 1 0である から、 比較の結果、 「FSN + I=ボイン夕 Pに格納されている一般シ一ケ ンス番号」 となり、 ステヅプ S 1407へ分岐し、 ポインタ: に格納されて いるパケヅ トの優先シーケンス番号- 4を MPSNに設定し(ステツプ S 1407) 、 さらに Iを 1つインクリメントし (ステップ S 1408) 、 さらに ポインタ Pも 1つインクリメントすることで次のパケッ トのボイン夕を 設定する (ステップ S 1410) 。 この結果、 1 = 3、 MPSN- 5となり、 ボイン夕 Pに格納されている一般シーケンス番号は 1 2となる。
次に、 ループに戻り、 再び、 FSN + I とポインタ Pに格納されている 一般シーケンス番号を比較する (ステップ S 1406) 。 FSN +I= 8 + 3 = 1 1で、 ボイン夕 Pに格納されている一般シーケンス番号 = 1 2であ るから、 比較の結果、 「: FSN + I≠ポインタ Pに格納されている一般シ一 ケンス番号」 となり、 ステヅプ S 1409へ分岐し、 ステップ S 1409では、 比較の結果、 「: FSN+ 1 <ボイン夕 Pに格納されている一般シーケンス 番号」となり、ステップ S 1411へ分岐する。ステップ S 1411.では、 MPSN とボインタ Pに格納されているパケッ 卜の優先シーケンス番号を比較す る。 MPSN二 5で、 ボイン夕 Pに格納されているパケヅ トの優先シーケ ンス番号 = 7であるから、 比較の結果、 「MPSN<ポインタ Pに格納さ れているバケツ 卜の優先シーケンス番号」 となり、 ステップ S1414へ分 岐する。 ステップ S 1414では、 SN— listに FSN + I= 8 + 3 = 1 1を追 加する。 この結果、 SN_list の値は空白から 「 1 1」 に切り替わる。 次 に、 Iを 1つインクリメントし、 Lossも 1つインクリメントする (ステ ヅプ S 1415) 。 この結果、 1 = 4となり、 Loss= l となる。
次に、 ループに戻り、 再び、 FSN + I とポインタ Pに格納されている —般シ一ケンス番号を比較する (ステヅプ S 1406) 。 FSN+I= 8 + 4 二 1 2でポインタ Pに格納されている一般シーケンス番号 = 1 2である から、 比較の結果、 「FSN + I=ポインタ Pに格納されている一般シ一ケ ンス番号」 となり、 ステップ S 1407へ分岐し、 ポインタ Pに格納されて いるパケヅ トの優先シーケンス番号 = 7を MPSNに設定し(ステヅプ S 1407) 、 さらに Iを 1つインクリメントし (ステツプ S 1408) 、 さらに ポインタ Pも 1つインクリメン卜することで次のパケッ 卜のポインタを 設定する (ステップ S 1410) 。 この結果、 1 = 5、 MPSN= 7となり、 ボイン夕 Pに格納されている一般シーケンス番号は 1 5となる。
次に、 ループに戻り、 再び、 FSN + I とポインタ Pに格納されている 一般シーケンス番号を比較する (ステップ S 1406) 。 FSN + I= 8 + 5 = 1 3で、 ポインタ Pに格納されている一般シーケンス番号 = 1 5であ るから、 比較の結果、 「FSN + I≠ポインタ Pに格納されている一般シ一 ケンス番号」 となり、 ステップ S 1409へ分岐し、 ステップ S 1409では、 比較の結果、 「FSN+ 1 <ボイン夕 Pに格納されている一般シーケンス 番号」となり、ステップ S 1411へ分岐する。ステヅプ S 1411では、 MPSN とポインタ Pに格納されているパケッ 卜の優先シーケンス番号を比較す る。 MPSN= 7で、 ボイン夕 Pに格納されているパケヅ 卜の優先シ一ケ ンス番号 = 7であるから、 比較の結果、 「MPSN=ポインタ Pに格納さ れているパケヅ トの優先シーケンス番号」 となり、 ステップ S1412へ分 岐する。ステツプ S 1412では、 ポィン夕 Pに格納されているパケッ トの —般シーケンス番号一 FSN = 1 5— 8 = 7を Iに設定し (ステップ S 1412) 、 さらに、 Loss にポインタ Pに格納されているパケッ トの一般 シーケンス番号一 (FSN+ I ) = 15- 13 = 2を設定する (ステップ S 1413) 。 この結果、 1 = 7となり、 Loss=2となる。
なお、 一般シーケンス番号 13、 14のパケッ トは SN_listには追加さ れない。
次に、 ループに戻り、 再び、 ; FSN + I とポインタ Pに格納されている 一般シーケンス番号を比較する (ステップ S1406) 。 FSN + I=8 + 7 = 15で、 ボイン夕 Pに格納されている一般シーケンス番号 = 15であ るから、 比較の結果、 「FSN + I=ポインタ Pに格納されている一般シ一 ケンス番号」 となり、 ステップ S 1407へ分岐し、 ポインタ Pに格納され ているバケツ 卜の優先シーケンス番号 = 7を MPSNに設定し(ステップ S 1407)、 さらに Iを 1つインクリメントし (ステップ S 1408)、 さら にポインタ Pも 1つインクリメントすることで次のパケッ 卜のポインタ を設定する (ステップ S1410) 。 この結果、 1 = 8、 MPSN= 7となり、 ボイン夕 Pに格納されている一般シーケンス番号は 16となる。
従って、 ループの条件 Ncur>Pを満足しないので、 ループから抜け 出し、 FSNに FSN+ 1 = 8 + 8 = 16を設定する (ステップ S 1417)。 以上より、 SNJist の値は 「 1 1」 であるから、 パケヅ ト欠損検出手 段 912は、 優先シーケンス番号 「1 1」 のパケヅ トが欠損したことを検 出する。
N+ 1回目の動作も同様である。
以下、 N+ 1回目のパケッ ト欠損検出処理におけるパケッ ト欠損検出処 理の動作について図 14、 図 16を参照して詳細に説明する。
この場合、 FSN= 1.6であり、 Ncurには N回目の Ncur + Nint= 16
+8=24が既に設定されていることを前提とする。
まず、 N+ 1回目のパケッ ト欠損検出処理において、 パケッ ト欠損検 出手段 912は、受信バッファの FSN= 16に対応する一般シーケンス番 号を有する受信パケヅ 卜のポインタを Pに設定する (ステップ S 1402) c 次に、 パケッ ト欠損検出手段 912は、 受信バッファのポインタ Pに格 納されているパケヅ トの優先シーケンス番号 = 8を MPSN に設定する (ステヅプ S1403) 。 この結果、 MPSN= 8となる。
次に、 Lossに初期値として 0を設定し、 Iに初期値として 0を設定し、 SNJistに初期値として 0を設定する (ステップ S 1404) 。
次に、 P <Ncur= 2 4の範囲内で以下の処理を実行する (ステップ S 1405)
まず FSN + I とボイン夕 Pに格納されている一般シーケンス番号を比 較する (ステツプ S 1406) 。 FSN + I= 1 6 + 0 = 1 6でポインタ Pに 格納されている一般シーケンス番号 = 1 6であるから、 比較の結果、 「FSN + I=ボイン夕 Pに格納されている一般シーケンス番号」となり、 ステップ S 1407へ分岐し、ボイン夕 Pに格納されているパケヅ トの優先 シーケンス番号 = 8を MPSN に設定し (ステップ S 1407) 、 さらに I を 1つインクリメントし (ステップ S 1408) 、 さらにポィン夕 Pも 1つ インクリメントすることで次のパケヅ トのボイン夕を設定する (ステツ プ S 1410) 。 この結果、 1 = 1、 MPSN= 8となり、 ボイン夕 Pに格納 されている一般シーケンス番号は 1 8となる。
次に、 ループに戻り、 再び、 FSN + I とポインタ Pに格納されている 一般シーケンス番号を比較する (ステップ S 1406) 。 FSN + I= 1 6 + 1 = 1 7で、 ボイン夕 Pに格納されている一般シーケンス番号 = 1 8で あるから、 比較の結果、 「FSN + I≠ポインタ Pに格納されている一般シ 一ケンス番号」 となり、 ステップ S 1409へ分岐し、 ステップ S 1409で は、 比較の結果、 「FSN+ 1くポインタ Pに格納されている一般シ一ケ ンス番号」 となり、 ステップ S 1411へ分岐する。 ステップ S 1411では、 MPSN とボイン夕 Pに格納されているパケヅ トの優先シーケンス番号 を比較する。 MPSN= 8で、 ポインタ Pに格納されているパケッ トの優 先シーケンス番号 = 8であるから、 比較の結果、 「MPSN=ポインタ P に格納されているパケッ トの優先シーケンス番号」 となり、 ステップ S1412 へ分岐する。 ステップ S 1412 では、 ポインタ Pに格納されてい るパケヅ トの一般シーケンス番号— FSN= 1 8— 1 6 = 2を Iに設定 し (ステップ S 1412) 、 さらに、 Loss にポインタ Pに格納されている パケヅ トの一般シーケンス番号一 (FSN+ I ) = 1 8 - 1 7 = 1を設定 する (ステツプ S 1413) 。 この結果、 I = 2となり、 Loss= 1となる。 なお、一般シーケンス番号 1 7のパケヅ トは SN_listには追加されない。 次に、 ループに戻り、 再び、 FSN + I とポインタ Pに格納されている 一般シーケンス番号を比較する (ステップ S 1406) 。 FSN + I= 1 6 +
2 = 1 8でボイン夕 Pに格納されている一般シーケンス番号 = 1 8であ るから、 比較の結果、 「FSN + I=ポインタ Pに格納されている一般シ一 ケンス番号」 となり、 ステップ S 1407へ分岐し、 ボイン夕 Pに格納され ているパケヅ トの優先シーケンス番号 = 8を MPSNに設定し(ステツプ S 1407) 、 さらに Iを 1つインクリメントし (ステヅプ S 1408) 、 さら にポインタ Pも 1つインクリメントすることで次のパケッ トのボイン夕 を設定する (ステップ S 1410) 。 この結果、 1 = 3、 MPSN= 8となり、 ボイン夕 Pに格納されている一般シーケンス番号は 1 9となる。
次に、 ループに戻り、 再び、 FSN + I とポインタ Pに格納されている 一般シーケンス番号を比較する (ステップ S 1406) 。 ; FSN + I= 1 6 +
3 = 1 9でボイン夕 Pに格納されている一般シーケンス番号- 1 9であ るから、 比較の結果、 「FSN + I=ポインタ Pに格納されている一般シ一 ケンス番号」 となり、 ステップ S 1407へ分岐し、 ボイン夕 Pに格納され ているパケヅ トの優先シーケンス番号 = 9を MPSNに設定し(ステップ S 1407) 、 さらに Iを 1つインクリメントし (ステツプ S 1408) 、 さら にポィン夕 Pも 1つインクリメン卜することで次のパケヅ トのポィン夕 を設定する (ステツプ S 1410) 。 この結果、 1 = 4、 MPSN= 8となり- ボイン夕 Pに格納されている一般シーケンス番号は 2 2となる。
次に、 ループに戻り、 再び、 FSN + I とポインタ Pに格納されている 一般シーケンス番号を比較する (ステップ S 1406) 。 FSN + I= 1 6 + 4 = 2 0で、 ボイン夕 Pに格納されている一般シーケンス番号 = 2 2で あるから、 比較の結果、 「FSN + I≠ポインタ Pに格納されている一般シ —ケンス番号」 となり、 ステップ S 1409へ分岐し、 ステップ S 1409で は、 比較の結果、 「FSN+ 1くポインタ Pに格納されている一般シ一ケ ンス番号」 となり、 ステップ S 1411へ分岐する。 ステップ S 1411では、 MPSN とボインタ Pに格納されているパケヅ 卜の優先シーケンス番号 を比較する。 MPSN= 8で、 ポインタ Pに格納されているパケッ トの優 先シーケンス番号 = 1 0であるから、 比較の結果、 「MPSN<ポインタ Pに格納されているパケッ トの優先シーケンス番号」 となり、 ステップ S1414へ分岐する。 ステップ S 1414では、 SN— listに FSN + I= 1 6 +
4 = 2 0を追加する。 この結果、 SN— list の値は空白から 「2 0 j に切 り替わる。 次に、 Iを 1つインクリメントし、 Lossも 1つインクリメン トする (ステップ S 1415) 。 この結果、 1 = 5となり、 Loss= 2となる c 次に、 ループに戻り、 再び、 FSN + I とポインタ Pに格納されている —般シーケンス番号を比較する (ステップ S 1406) 。 FSN + I = 1 6 +
5 = 2 1で、 ボイン夕 Pに格納されている一般シーケンス番号二 2 2で あるから、 比較の結果、 「FSN + I≠ポインタ Pに格納されている一般シ —ケンス番号」 となり、 ステップ S 1409へ分岐し、 ステップ S 1409で は、 比較の結果、 「FSN+ 1くポインタ Pに格納されている一般シ一ケ ンス番号」 となり、 ステップ S 1411へ分岐する。 ステップ S 1411では、 MPSN とボイン夕 Pに格納されているパケヅ トの優先シーケンス番号 を比較する。 MPSN= 8で、 ポインタ Pに格納されているパケヅ 卜の優 先シーケンス番号 = 1 0であるから、 比較の結果、 「MPSN<ポインタ Pに格納されているパケッ トの優先シーケンス番号」 となり、 ステップ S1414へ分岐する。 ステップ S 1414では、 SN_listに FSN + I- 1 6 + 5 = 2 1を追加する。 この結果、 SN_list の値は 「2 0」 から 「2 0、 2 1」 に切り替わる。 次に、 Iを 1つインクリメントし、 Lossも 1っィ ンクリメントする (ステップ S 1415) 。 この結果、 1 = 6となり、 Loss = 3となる。
次に、 ループに戻り、 再び、 FSN + I とポインタ Pに格納されている 一般シーケンス番号を比較する (ステップ S 1406) 。 FSN + I- 1 6 +
6 = 2 2でボイン夕 Pに格納されている一般シーケンス番号 =: 2 2であ るから、 比較の結果、 「FSN + I=ポインタ Pに格納されている一般シ一 ケンス番号」 となり、 ステップ S 1407へ分岐し、 ポインタ Pに格納され ているパケヅ 卜の優先シーケンス番号 = 1 0を MPSNに設定し(ステヅ プ S 1407)、 さらに Iを 1つインクリメントし (ステツ 7° S 1408) 、 さ らにポインタ Pも 1つインクリメン卜することで次のパケヅ トのポイン 夕を設定する (ステップ S 1410) 。 この結果、 1 = 7、 MPSN= 1 0と なり、 ボイン夕 Pに格納されている一般シーケンス番号は 2 3となる。 次に、 ループに戻り、 再び、 FSN + I とポインタ Pに格納されている —般シ一ケンス番号を比較する (ステップ S 1406) 。 FSN + I= 1 6 +
7 = 2 3でボイン夕 Pに格納されている一般シーケンス番号- 2 3であ るから、 比較の結果、 「FSN + I=ポインタ: Pに格納されている一般シ一 ケンス番号」 となり、 ステップ S 1407へ分岐し、 ポインタ Pに格納され- ているパケヅ トの優先シーケンス番号 = 1 1を MPSNに設定し(ステヅ プ S 1407) 、 さらに Iを: Lつインクリメントし (ステップ S 1408)、 さ らにポインタ Pも 1つインクリメントすることで次のパケッ トのポイン 夕を設定する (ステップ S 1410) o この結果、 1 = 8、 MPSN= 1 1と なり、 ポインタ Pに格納されている一般シーケンス番号は 2 4となる。 従って、 ループの条件 Ncur> Pを満足しないので、 ループから抜け 出し、 FSNに FSN+ 1 = 1 6 + 8 = 2 4を設定する(ステツプ S 1417) < 以上より、 SN— list の値は 「2 0、 2 1」 であるから、 パケッ ト欠損 検出手段 912は、 優先シーケンス番号 2 0、 2 1のパケットが欠損した ことを検出する。
パケッ ト欠損検出処理(ステップ 1108)実行後、 Loss> 0の場合、 パケ ッ ト欠損が検出されたことになるので、 再送シーケンス番号追加手段 913は、 再送リスト管理手段 915へ SN_listに登録されている欠損パケ ッ トの一般シーケンス番号を追加するよう命令を発する(ステヅプ S 1109)。
追加命令を受理した再送リス ト管理手段 915 は、 図 13 示すように SN_listの一般シーケンス番号を再送リストへ追加する(ステップ S 1302 〜S1307)。 ただし、 2重登録は行わない。
次に、 図 11に戻って再送要求送信手段 914は、 再送リストの一般シ 一ケンス番号の再送要求を送信装置 901 に対して行う(ステップ SlllO,Sllll)o この場合、 再送リストの一般シーケンス番号と、 その時 点で要求者(アプリケーション) 903 に提供したパケットの最大 (最新) の一般シーケンス番号を、 1つの再送要求パケッ トに乗せ(ステヅプ S1110)、 この再送要求バケツ トを送信装置 901 へ送信する(ステップ smi)。
次に、 第 1 2図の例 2のフローチャートに示すように、 再送すべき優 先度の高いパケッ トが欠損した時点で再送要求を行う例を説明する。 図 1 2において、 ステップ S1201~S1203の動作は、 図 1 1のステツ プ S1101~S1103と同じなので、 説明を省略する。 まず、 受信バケツ トの優先シーケンス番号 RPSNと、 受信バッファ内 の最大の優先シーケンス番号 MPSNを比較し(ステヅプ S1205)、 RPSN 一 MPSN> 1のとき(ステップ S1205)、 優先シーケンス番号が不連続に なるため、 再送すべき優先度の高いパケッ トが必ず 1個以上は欠損した ことになる。 例えば、 図 16の受信バッファで一般シーケンス番号 10の パケッ トが保存してあり、 今一般シーケンス番号 12 のパケッ トを受信 したとする。 このとき、 RPSN= 7、 MPSN= 5である。 この場合、 優 先シーケンス番号は 5から 7に跳び明らかに不連続になり、 RPSN— MPSN> 1である(ステップ S1205)。 従って、 再送すべき優先度の高い パケッ トが必ず 1個以上は欠損したことになる。 この例では一般シーケ ンス番号 11 のパケヅ トが欠損している。 そこで、 受信バッファ内の最 大の一般シーケンス番号 MSNから RPSNのパケヅ トの一般シーケンス 番号 RSN間のパケヅ トを再送要求するために、 MSN+ 1から RSN— 1 の一般シーケンス番号 (この例では一般シーケンス番号 11のパケヅ ト) を再送リストに追加するよう再送シーケンス番号追加手段へ追加命令を 発する(ステップ S1208)。 ステップ S1205で Noの場合、 即ち RPSNと MPSNが等しいか 1だけ RPSNが大きい場合には、優先シーケンス番号 だけからではパケッ トが欠損したか否かがわからない。 しかし RPSNと MPSNが等しい場合には、 たとえパケヅ 卜が欠損していても優先シ一ケ ンス番号がインクリメントされていないことから、 このパケッ トは再送 するべき重要なパケッ トではない。 そこで、 RPSN— MPSN= 1でない 場合 (即ち RPSN— MPSN= 0の場合) には(ステップ S1206)、 パケッ トは再送する必要がないので、 再送シーケンス番号追加処理を行わず、 ステップ S1201 へ戻り次のパケヅ トの受信処理を行う (ステップ S1201) 。 ステヅプ S1206で、 RPSN— MPSN= 1の場合には(ステップ S1206)、 一般シーケンス番号も比較してみないとパケヅ トが欠損してい るか否かがわからない。 そこで、 MSN と RSN を比較する(ステップ S1207)。 RSN_MSN= 1の場合には(ステップ S1207)、一般シ一ケンス 番号が連銃になっており、 パケヅト欠損はしていないことになる。 従つ て、 パケッ トは再送する必要がないので、 再送シーケンス番号追加処理 を行わず、 ステップ S1201へ戻り次のパケヅ トの受信処理を行う (ステ ヅプ S1201) 。 ステップ S1207で、 RSN— MSN> 1の場合には、 一般 シーケンス番号が不連続になっており、 1個以上の再送すべき優先度の 高いパケヅ トが欠損していることになるので、 MSNから RSN間のパケ ットの再送要求を行うために、 MSNから RSNの一般シーケンス番号を 再送リストに追加するよう再送シーケンス番号追加手段へ追加命令を発 する(ステップ S1208)。
追加命令を受理した再送リスト管理手段 915 は、 図 13 示すように SN— listの一般シーケンス番号を再送リストへ追加する(ステヅプ S1302 〜S1307)。 ただし、 2重登録は行わない。
次に、 図 12に戻って再送要求送信手段 914は、 再送リストの一般シ —ケンス番号の再送要求を送信装置 901 に対して行う(ステップ S1209,Sl210)o この場合、 再送リストの一般シーケンス番号と、 その時 点で要求者 (アプリケーション) 903 に提供したパケットの最大 (最新) の一般シーケンス番号を、 1つの再送要求パケッ トに乗せ(ステップ S1209)、 この再送要求パケッ トを送信装置 901 へ送信する(ステヅプ S1210)o
以下の説明は、 図 1 1および図 1 2に共通のものである。
送信装置 901の再送要求受信手段 906は、第 1 0図に示すように再送 要求パケットを受信し (ステップ S1006)、 再送要求パケッ卜から再送要 求された一般シーケンス番号と要求者(アプリケーション) 903 に提供し た最大(最新)一般シーケンス番号を識別する(ステップ S1007,S1008)。 次に、 再送用バッファ削除手段 907 は、 要求者 (アプリケーション) 903に提供した再送用バッファ内の最大 (最新) 一般シーケンス番号よ りも小さい一般シーケンス番号のバケツ トはこれ以上再送要求する必要 がないので、 これらのパケヅトを削除する(ステヅプ 1009)。
次に、 再送パケット検出手段 908は、 再送用バッファを検索して再送 要求された一般シーケンス番号と等しい一般シーケンス番号を検出する (ステツプ 1010)。 この一般シーケンス番号は再送するべき優先度の高い バケツ トの一般シーケンス番号であり、 再送シーケンス番号と呼ぶ。 次に、再送手段 909は、再送シーケンス番号のパケヅトを受信装 g 902 へ再転送する(ステップ 1011)。
次に、 要求者 (アプリケーション) 903は、 受信装置 902が受信したパ ケットのペイ口一ドを要求する。 受信装置 902のパケット提供手段 916 は、 要求者(アプリケーション) 903 から、 パケッ トのペイロードと、 そ のペイロードを提供するまでの待ち時間が要求されると、 その待ち時間 までに前回提供したパケッ トの次のパケッ ト(一般シーケンス番号 Tnextのパケヅト)のペイロードを提供するが、その Tnextのパケヅトが 欠損したり、 再送もされなかったりすることで、 待ち時間内に Tnextの パケッ トのペイ口一ドが提供できないときは、 パケット提供手段 916は Tnext のパケヅトが欠損したことを要求者(アプリケーション) 903 に通 知する。
第 1 5図に示すようにバケツト提供手段 916は、要求者 (アプリケ一シ ョン) 103からパケットのペイロードと、要求からペイ口一ド提供迄の許 容待ち時間が要求されると(ステツプ S 1502)、その現在時刻を Tstartに セヅトして(ステップ S 1503)、 一般シーケンス番号 Tnextのパケヅトが 受信バッファにあるか否かを調べる(ステップ S 1504)。 受信バッファに Tnextのパケヅ 卜があった場合、 この Tnextのパケヅ トのペイロード'を 提供する(ステップ S 1505)。
受信バッファに Tnextのパケットがなかった場合、 現在時刻が待ち時 間を超えていないかタイムァゥトのチェックを行い(ステヅプ S 1506)、 タイムァゥ卜の場合は、 Tnextのパケッ 卜が欠損したことを要求者(アブ リケ一ション) 903に通知する(ステツプ S 1508)。 タイムアウトでない場 合は、一般シーケンス番号 Tnextが再送リストにあるか否かを調べる(ス テヅプ S 1507)。
Tnextが再送リストにない場合は、 送信装置 901からは再送要求を行 つても再送されないことを意味するので、 Tnextのパケットが欠損した ことを要求者(アプリケ一シヨン) 903に通知する(ステヅプ 1508)。
Tnextが再送リス トにある場合は、 再送要求を行ったが、 再送要求パ ケットが届かなかったか、再送パケヅトが届かなかったことを意味する。 このとき、 FSNに Tnextを設定し(ステップ 1510)、 Ncurに今回受信 した最新のパケヅ 卜の一般シーケンス番号を設定し(ステップ 1511)、 Tcur に今回受信した最新のパケヅトのタイムスタンプを設定し(ステツ プ 1512)、 バケツ ト欠損検出処理 (ステップ S 1513) 、 再送シーケンス 番号追加処理 (ステップ S 1514) 、 再送要求送信処理 (ステップ S1515、 S1516) を用いて、 再度 Tnextの再送要求を行うと共に、 最新のパケヅ ト欠損も検出し、 同時に再送要求を行う。
ただし、 前記のパケット欠損検出方法の例 2のように、 再送すべき優 先度の高いパケットが欠損する毎に再送要求をおこなっている場合で、 パケット提供手段時に Tnextのパケットが受信バッファになく、 再送リ ストに Tnext があるときは、 パケッ ト欠損検出手段を行わず、 即座に Tnextのノ ケヅ トの再送要求を行う。
待ち時間が 0をセットされたときは、 受信バッファに Tnextがあるか 否かだけを調べ、 もしなかったら Tnextのパケッ卜の再送要求は行わず、 すぐに Tnext のパケッ 卜が欠損したことを要求者(アプリケ一ショ ン) 903に通知する。逆に待ち時間が無限時間をセッ卜されたときは、 受 信バッファに Tnext のバケツトがない場合、 何度も再送要求を行い、 Tnextのバケツトが再送されるを待ち続ける。
ただし、再送リストに Tnextがない場合は、再送要求を行わず、 Tnext のパケッ 卜が欠損したことを要求者(アプリケーション) 903に通知する。 再送要求送信手段が再送要求パケッ トを送信したあと、 再送要求を行う 間隔 Trだけ待ち(ステップ S1518)、 再び受信バッファに Tnextのパケ ッ トがあるか否かを調べる。 Trは再送要求を行う毎に変更してもよい。 なお、 ステップ S1517、 S 1518、 S 1519では、 待ち時間をスリープ時 間によつて作成している。
簡単な例を用いて説明する。 今、 Twait= 5秒、 Tr= 2秒とする。 こ の場合、 5秒間のうちに 2秒間隔で受信バッファのチェックおよびパケ ッ ト欠損検出処理を行うことになる。 今、 パケッ ト提供処理が 0秒の時 に開始されたとする。 即ち Tstart= 0である。 従って、 現在時刻は 0秒 から 1秒、 2秒、 3秒……と時を刻んでいく。 現在時刻が 3秒になるま ではステップ S 1517で Noと判定され、 ステップ S1518を実行する。ス テヅプ S1518では、 2秒だけスリープ (遅延) する。 従って、 2秒後に は再び受信バッファのチェックおよびパケット欠損検出処理を行う。 こ れによって、 許される時間内、 即ち待ち時間に定期的に受信バッファの チェックとパケット欠損検出処理が行える。 しかし、 現在時刻が 3秒を 過ぎると、 さらに 2秒 (= Tr) のスリープでは待ち時間 Twaitを超えて しまう。 従って、 この時は、 ステップ S 1519でその差分のみ(例えば現 在時刻が 4秒の時、 差分は Twait—現在時刻 +Tstart= 5— 4 = 1秒) の時間をスリープ (遅延) させているのである。 このときのスリープ終 了後は、 受信バヅファのチェヅクも行うが、 ステップ S 1506でタイムァ ゥトと判定されるから、パケット欠損検出処理までは行わない。すぐに、 次の一般シーケンス番号を提供して (ステップ S 1505) 、 待ち時間内に パケットデ一夕を提供することができる。
この実施の形態 2によれば、 実施の形態 1による効果に加えて、 パケ ッ トに一般シーケンス番号と優先シーケンス番号を設けることにより、 優先度の高い重要なバケツトのみを再送することができるので、 再送処 理によるネットワーク負荷の浪費を最小限に抑えることができ、 ネッ ト ワークの輻輳時でも優先度の高いパケットの伝送容量を確保することが できるという効果を奏する。 実施の形態 3 .
実施の形態 3の構成は、 第 1 7図に示すように、 実施の形態 2の第 9 図の構成の送信装置 901に、 あるバケツ ト ρの近辺 η個のパケッ トにお いて重要なパケットおよび欠損時には再送した方が良いと判断できるパ ケットの情報を m個毎 (m≤n)にパケット pに付加し、 nや mはネットヮ ークの輻輳状況から決定する優先度情報付加手段 1705 を追加した構成 となる。 また、 受信装置 1702の受信手段 1711とバケツ ト欠損検出手段 1713とバケツト提供手段 1717以外の手段も実施の形態 2と同様の処理 を行う手段である。
第 1 8図は優先度情報付加手段 1705 によって優先度情報を付加された パケットの例である。
第 1 8図の例 1は (ステツプ 1801)、 n=8、 m=4としたときで、 パケヅト Pの Pを含めた前 n個分の優先度情報を nビッ 卜で表現して m個毎に n ビッ トの優先度情報を付加した例である。 優先度情報は左から nビッ ト 目が Pの優先度を表し、 先頭ビットが (P のシーケンス番号)一 n + 1番 のシーケンス番号のパケットの優先度を表す。 上記の例では、 n= 8であるから、
Pのシーケンス番号が 4のとき、 Pの優先度情報の先頭ビッ トのシ一ケ ンス番号は
(Pのシーケンス番号) 一 n+ 1 = 4— 8 + 1 =— 3となる。
従って、 整数 k、 1 k≤nのとき、 左から kビッ ト目の値は、 シーケ ンス番号が、 (Pのシーケンス番号)一 n + k番のパケッ 卜の優先度を表す < 上記の例では、 優先度情報 1803において、
左から 1ビッ ト目は
(Pのシーケンス番号) 一 n + k = 4— 8 + 1 =— 3 (実在せず) 、 左から 2ビッ ト目は
(Pのシーケンス番号) _n + k = 4— 8 + 2 =—2 (実在せず) 、 左から 3ビッ ト目は
(Pのシーケンス番号) — n + k = 4— 8 + 3 =— 1 (実在せず) 、 左から 4ビッ ト目は
(Pのシーケンス番号) —n + k = 4— 8 + 4 = 0 (実在せず) 、 左から 5ビッ ト目は
(Pのシーケンス番号) 一 n + k = 4— 8 + 5 = 1、
左から 6ビッ ト目は
(Pのシーケンス番号) — n + k = 4— 8 + 6 = 2、
左から 7ビッ ト目は
(Pのシーケンス番号) — n+k=4— 8+7=3、
左から 8ビッ ト目は
(Pのシーケンス番号) 一 n + k = 4— 8 + 8 = 4番のシーケンス番号 のパケッ トの優先度を表す。
また、 Pのシーケンス番号が 8のとき、 Pの優先度情報の先頭ビッ トの シーケンス番号は (Pのシーケンス番号) 一 n+ 1 = 8— 8 + 1 = 1となる。
従って、 優先度情報 1804において、
左から 1ビッ ト目は
(Pのシーケンス番号) 一 n + k = 8— 8 + 1 = 1、
左から 2ビッ ト目は
(Pのシーケンス番号) 一 n + k = 8— 8 + 2 = 2ヽ
左から 3ビッ ト目は
(Pのシーケンス番号) — n + k=8— 8 + 3 = 3、 左から 8ビッ ト目は
(Pのシーケンス番号) 一 n + k=8— 8 + 8 = 8番のシーケンス番号 のパケッ トの優先度を表す。
又、 Pのシーケンス番号が 12のとき、 Pの優先度情報の先頭ビッ トの シーケンス番号は
(Pのシーケンス番号) 一 n+ 1 = 12— 8 + 1 = 5となる。
従って、 優先度情報 1805において、
左から 1ビッ ト目は
(Pのシーケンス番号) 一 n + k= 12— 8 + 1 = 5、
左から 2ビッ ト目は
(Pのシーケンス番号) 一 n + k= 12— 8 + 2 = 6、
左から 3ビッ ト目は
(Pのシーケンス番号) 一 n + k= 12— 8 + 3 = 7、 左から 8ビッ ト目は
(Pのシーケンス番号) 一 n + k= 12— 8 + 8 = 12番のシーケンス 番号のパケッ トの優先度を表す。 また、 Pのシーケンス番号が 1 6のとき、 Pの優先度情報の先頭ビッ ト のシーケンス番号は '
(Pのシーケンス番号) 一 n+ l = 1 6— 8 + l = 9となる。
従って、 優先度情報 1804において、
左から 1ビッ ト目は
(Pのシーケンス番号) 一 n + k= 8— 8 + 1 = 9、
左から 2ビッ ト目は
(Pのシーケンス番号) — n + k= 8— 8 + 2 = 1 0、
左から 3ビッ ト目は
(Pのシーケンス番号) — n + k= 8— 8 + 3 = 1 1、 左から 8ビッ ト目は
(Pのシーケンス番号) — n + k = 4— 8 + 8 = 1 6番のシーケンス番 号のバケツ卜の優先度を表す。
左から kビヅ ト目が 1のとき、 (Pのシーケンス番号)一 n + k番のパケヅ トは再送すべき優先度の高いバケツトということを表し、 0ならば再送 しない優先度の低いパケットを表す。 例えば、 シーケンス番号 8のパケ ットに付加された優先度情報 1804は、 シーケンス番号 1から 8のパケ ットのうち、再送すべき優先度の高いパケッ トはシーケンス番号 1、 4、 5、 8のパケッ トなので、 左から 10011001となる。
第 1 8図の例 2は(1802)、 同じく n=8、 m=4としたときで、 バケツ ト Pの Pを含めた後 n個分の優先度情報を nビットで表現して m個毎に n ビットの優先度情報を付加した例で、 kビット目の値は、 シーケンス番 号が、 (Pのシーケンス番号) + k— 1番のパケヅ 卜の優先度を表す。
上記の例では、 11 = 8であるから、
Pのシーケンス番号が 1のとき、 優先度情報 1807において、 左から 1ビッ ト目のシーケンス番号は
(pのシーケンス番号) +k— 1 = 1 + 1— 1 = 1、
左から 2ビッ ト目のシーケンス番号は
(Pのシーケンス番号) +k— 1 = 1 + 2— 1 = 2、
左から 3ビッ ト目のシーケンス番号は
(Pのシ一ケンス番号) +k— 1 = 1 + 3— 1 = 3、
左から 4ビッ ト目のシーケンス番号は
(Pのシーケンス番号) +k— 1 = 1 + 4— 1 = 4、
左から 5ビッ ト目のシーケンス番号は
(Pのシーケンス番号) +k— 1 = 1 + 5— 1 = 5、
左から 6ビッ ト目のシーケンス番号は
(Pのシーケンス番号) +k— 1 = 1 + 6— 1 = 6、
左から 7ビッ ト目のシーケンス番号は
(Pのシ一ケンス番号) +k— 1 = 1 + 7— 1 = 7、
左から 8ビッ ト目のシーケンス番号は
(Pのシーケンス番号) +k— 1 = 1 + 8— 1 = 8となる。
また、 Pのシーケンス番号が 5のとき、 優先度情報 1804において、 左から 1ビッ ト目のシーケンス番号は
(Pのシーケンス番号) +k— 1 = 5 + 1— 1 = 5、
左から 2ビッ ト目のシーケンス番号は
(Pのシーケンス番号) +k— 1 = 5 + 2 _ 1 = 6、
左から 3ビッ ト目のシーケンス番号は
(Pのシーケンス番号) +k— 1 = 5 + 3— 1 = 7、 左から 8ビッ ト目のシーケンス番号の優先度情報は
(Pのシーケンス番号) +k— 1 = 5 + 8— 1 = 12となる。 又、 Pのシーケンス番号が 9のとき、 優先度情報 1805において、 左から 1ビッ ト目のシーケンス番号は
(Pのシーケンス番号) +k— 1 = 9 + 1— 1 = 9、
左から 2ビッ ト目のシーケンス番号は
(Pのシーケンス番号) +k— 1 = 9 + 2— 1 = 10、
左から 3ビッ ト目のシーケンス番号は
(Pのシーケンス番号) +k— 1 = 9 + 3— 1 = 1 1、 左から 8ビッ ト目のシーケンス番号は
(Pのシーケンス番号) +k— 1 = 9 + 8— 1 = 16となる。
また、 Pのシーケンス番号が 13のとき、 優先度情報 1804において、 左から 1ビッ ト目のシーケンス番号は
(Pのシーケンス番号) +k— 1 = 13 + 1— 1 = 13、
左から 2ビッ ト目のシーケンス番号は
(Pのシーケンス番号) +k— 1 = 13 + 2— 1 = 14、
左から 3ビッ ト目のシーケンス番号は
(Pのシーケンス番号) +k— 1 = 13 + 3— 1 = 15、 左から 8ビッ ト目のシーケンス番号は
(Pのシーケンス番号) +k— 1 = 13 + 8— 1 = 20となる。
nや mは、, ネッ トワークの輻輳状況などから動的に設定してもよい。 例 えば、 輻輳状態のときはバケツ ト欠損が発生しやすいので nを大きく m を小さくすれば、 受信装置側でもパケッ ト欠損による優先度情報の欠落 が起こりにく くなる。
実施の形態 3のパケッ ト欠損検出手段 1713は、 パケッ トの受信回数 および時間から決定した間隔、 およびシーケンス番号の不整合から重要 なパケットが欠損する毎に、 受信バッファ内のパケッ トゃ受信バケツ ト のシーケンス番号と、 送信装置の優先度情報付加手段で付加された優先 度情報から、 欠損してしまった重要なパケッ トおよび欠損時には再送し た方が良いと判断できるパケヅトのシーケンス番号を検出する。
受信手段は、 実施の形態 2の受信手段と同様な処理を行うが、 優先度情 報が付加されたパケットの受信後には優先度情報テ一プルの更新を行う 処理を追加する。
第 1 9図は実施の形態 3の受信装置のパケット欠損検出手段のフロー 例を説明するフローチャートで、 第 2 0図はパケヅト欠損とパケヅ ト欠 損検出手段の例を示したものである。
パケッ ト欠損検出手段 1713 がバケツ ト欠損検出処理を行う間隔は、 前 回バケツト欠損検出処理を行った最後のバケツ卜のシーケンス番号や夕 ィムスタンプと受信したパケッ卜のシーケンス番号やタイムスタンプの 差から決定する。 あるいは、 パケッ卜が欠損する毎でもよい。 バケツ ト 欠損検出手段がパケット欠損処理を行うシーケンス番号の間隔を Nint、 タイムスタンプの間隔を Tint、前回バケツト欠損検出手段を行った最後 のバケツトのシーケンス番号を Ncur、 前回パケット欠損検出手段を行 つた バケツ ト欠損検出手段 1713 がバケツ ト欠損検出処理を行う間隔は、 例 えば、 前回バケツト欠損検出処理を行った最後のバケツトのシーケンス 番号やタイムスタンプと今回受信したパケッ 卜のシーケンス番号やタイ ムスタンプの差から決定する。 あるいは、 パケットが欠損する毎でもよ い。 パケッ ト欠損検出手段がパケット欠損処理を行うシーケンス番号の 間隔を Nint、 タイムスタンプの間隔を Tint、 パケヅト欠損検出手段が 前回バケツ ト欠損検出処理を行った最後のパケットのシーケンス番号を Ncur、バケツト欠損検出手段が前回パケッ ト欠損検出処理を行った最後 のバケツトのタイムスタンプを Tcur とすると、 受信手段が今回受信し たパケヅ 卜のシーケンス番号が Ncur + Nintと等しいかあるいはそれよ りよりも大きいか、 あるいは受信手段が今回受信したバケツトのタイム スタンプが Tcur + Tintと等しいかあるいはそれよりよりも大きければ、 Nc rと Tcurに今回受信したパケヅトのシーケンス番号とタイムスタン プをそれぞれ代入した上で、 パケッ ト欠損検出処理 (ステップ S 306) を行う。 これにより、 Ncurと Tcurの値は今回の新たなパケッ トの最後 のシーケンス番号とタイムスタンプとなる。 なお、 Nintや Tintは、 固 定値でもよいし、 ネッ トワークの輻輳状況から動的に決定してもよい。 パケッ ト欠損検出手段 1713 は、 シーケンス番号順にソートされた受 信バッファにおいて、 前回パケット欠損検出処理を行った最後のパケッ トの次のバケツトからシーケンス番号 Ncur (今回の最後のパケヅトの シーケンス番号) のパケッ トまでの範囲 (ただし、 Ncur のパケヅトを 除く)、 あるいはタイムスタンプ Tcur (今回の最後のパケヅ卜のタイム ス夕ンプ) のパケヅトまでの範囲 (ただし、 Tcurのパケヅトを除く) で、 シーケンス番号の整合性と優先度情報をチェックして再送すべき優先度 の高いパケットの欠損を検出する。
第 1 9図にパケット欠損検出手段 1713 によるパケッ ト欠損検出処理 の詳細フローを示す。 第 1 9図において、 パケッ ト欠損検出手段 1713 は、 はじめに受信バッファ中でシーケンス番号が: FSN と等しくなるパ ケヅトのポインタを Pに設定する(ステップ Sl902)o ここで、 FSNは、 前回パケット欠損検出を行った最後のパケットの次のバケツトのシーケ ンス番号である。欠損したパケットの数を Loss、: FSNからの距離を I、 再送すべき優先度の高い欠損したバケツトのシーケンス番号のリストを SN listとし、 Lossおよび FSNに初期値として 0を設定し、 SN listに 初期値として空白 (空リス ト) を設定する(ステップ S1903)。
次に、 パケヅ ト欠損検出処理のステップ 1904に示す上記範囲内 [前回 パケッ ト欠損検出処理を行った最後のパケッ トの次のパケヅ トからシ一 ケンス番号 Ncur (今回の最後のパケヅ トのシーケンス番号) のパケヅ トまでの範囲 (ただし、 Ncur のパケヅ トを除く) 、 あるいは夕ィムス 夕ンプ Tcur (今回の最後のパケッ トのタイムスタンプ) のパケヅ トまで の範囲 (ただし、 T curのパケッ トを除く) ]で、 受信バッファのポイン 夕 Pに格納されているパケヅ トのシーケンス番号と FSN + Iを比較する (ステップ S1905)。 ステップ S1905において、 もし FSN + Iとポインタ Pに格納されているパケッ トのシーケンス番号が等しければ、 シ一ケン ス番号 FSN + I番のパケヅ トは欠損せず受信されていることになる。 そ こで、 Iをインクリメントし(ステヅプ S1906)、 さらに Pに次のパケヅ トのポイン夕を設定する(ステップ S1908)。
ステップ S1905において、 もし FSN + Iとボイン夕 Pに格納されてい るパケヅ トのシーケンス番号が等しくなければ、ステップ S 1907へ分岐 する。 FSN + I がボイン夕 Pに格納されているパケヅ トのシーケンス番 号より小さければ(ステツプ S1907).、 シーケンス番号 FSN + I番のパケ ヅ トが欠損したことになり、 ステップ S1909 へ分岐する。 ステップ S 1909では、 優先情報テーブル 2001のシーケンス番号が FSN+ Iのパ ケッ 卜の優先度情報を再送するべきか否かを判断する (ステップ S1909) 。 優先度情報からシーケンス番号 FSN + I のパケットが再送す べき優先度の高いパケッ トと判断したとき(ステップ 1909)、 シーケンス 番号 FSN + I の再送要求を行うために SN_listに FSN + Iを追加し(ステ ヅプ 1910)、 Iと Lossをインクリメントする(1911)。 もし、 優先度情報 からシーケンス番号 FSN + Iのパケヅ トが再送を必要としない優先度の 低いパケッ トと判断したとき(ステップ 1909)、 再送要求は行わないので、 SNJListには欠損した FSN + Iを追加しないで、 Iと Lossをィンクリメ ントする (ステップ S1911) 。
ステップ S1904で示された範囲すなわち、 [前回パケッ ト欠損検出処 理を行った最後のパケヅトの次のパケットからシーケンス番号 Ncur (今 回の最後のパケットのシーケンス番号)のパケヅトまでの範囲(ただし、 Ncurのパケットを除く) 、 あるいはタイムスタンプ Tcur (今回の最後 のパケヅトのタイムスタンプ) のパケッ トまでの範囲 (ただし、 T cur のパケットを除く) ]で、 このシーケンス番号の比較が終了したら(ステ ヅプ S1912)、 FSNに Iを加えて(ステツプ 1913)、 FSNを次回のパケヅ ト欠損検出処理の開始シーケンス番号とする(ステップ S511)。このとき、 SN— list にある番号が、 前記範囲内の欠損したパケットのシーケンス番 号となり、 Lossが欠損したパケヅ トの数となる。
. 次に、 パケット欠損が発生している受信バッファとパケヅト欠損検出 処理実行の結果の例を第 2 0図に示す。 第 2 0図において、 2 0 0 1は シーケンス番号とこのシーケンス番号のパケヅ トの重要度に応じて割り 当てられた優先度情報を対応させた優先度情報テーブルを示し、 2 0 0 2は、 Nint= 8の場合の受信バッファを示し、 2 0 0 3は、 N回目のパ ケヅ ト欠損検出処理時の FSN、 Ncur, I、 Loss, Snjistの状態を表し、 2 0 0 4は、 N + 1回目のパケット欠損検出処理時の FSN、 Ncur, I、 Loss, Sn_listの状態を表す。
第 2 0図のパケヅ ト欠損の例では、 受信バッファ 2002 内のバケツト のシーケンス番号が、 …、 8、 9、 1 0、 1 2、 1 5、 1 6、 1 8、 1 9、 2 2、 2 3、 2 4、 2 5、 2 6、 …となっており、 優先度情報が優 先度倩報テーブル 2001のようになっており、 Nint= 8となっており、 N 回目のパケット欠損検出処理実行時 (ステップ 2003)に、 FSN= 8、 Ncur= 1 6となっていた場合、まずシーケンス番号 8から 1 5までの範 囲で抜けている番号を検出する。 優先度情報は 1が再送すべき優先度の 高いパケッ トを意味し、 0が再送しない優先度の低いバケツトを意味す る。
この例では、 1 1、 1 3、 1 4の 3つのシーケンス番号が抜けており、 これらの 3つのパケヅトが欠損したことになる。 シーケンス番号 1 1の パケッ卜の優先度情報は 1なので、 このパケッ トは再送すべき優先度の 高いパケッ トということになり、 1 1は SL_listに追加するが、 シ一ケ ンス番号 1 3と 1 4のパケヅトの優先度情報は 0であるので、 これらの パケヅトは再送しない優先度の低いバケツ トということになり、 再送要 求を行わないので SN_listには追加しない。 また、 次の N+ 1回目のパ ケヅト欠損検出手段では(ステップ 2004)、FSNは N回目の FSN + I= 8 + 8 = 1 6となり、 Ncurは N回目の Ncur + Nint= 1 6 + 8 = 2 4とな る。 同様にシーケンス番号 1 6から 2 4までの範囲で抜けている番号を 検出する。 この例では、 1 7、 2 0、 2 1の 3つの一般シーケンス番号 が抜けており、 これらの 3つのパケットが欠損したことになる。
シーケンス番号 2 1のパケッ卜の優先度情報は 1なので、 このパケヅ トは再送すべき優先度の高いパケットということになり、 2 1は SL一 list に追加するが、 シーケンス番号 1 7と 2 0のパケヅ トの優先度情報は 0 であるので、 これらのパケヅトは再送しない優先度の低いパケヅトとい うことになり、 再送要求を行わないので SN_listには追加しない。
パケット欠損検出手段後、 Loss> 0 の場合、 バケツト欠損が検出された ことになるので、 再送シーケンス番号追加手段によって、 再送要求リス ト管理手段へ SNJistのシーケンス番号を追加するよう命令を発する。 そして、 パケット提供手段は、 実施の形態 2と同様の手段であるが、 最 後に提供したパケヅ トのシーケンス番号より小さいシーケンス番号の優 先度情報を優先度情報テーブルから削除する。 この実施の形態 3によれば、 実施の形態 1および 2による効果に加え て、 優先度情報付加手段を設けることにより、 すべて送信パケットに優 先シーケンス番号を設けてしまうよりも総伝送量が少なくなり、 反面、 受信装置で欠損してしまったバケツトの優先度を受信装置でより正確に 認識することがでる。 また、 請求項 5に記載した再送要求応答手段によ る再送要求応答パケットも必要なくなり、 ネッ トワークの浪費と送信装 置の再送要求応答負荷を削減することができる。 また、 優先度情報の長 さと頻度を調整することで、 輻輳中のネットワークでも受信装置側のパ ケット欠損による優先度情報の欠落が起こりにく くなるという効果を奏 する。 産業上の利用可能性
以上のように、 本発明にかかるパケッ トの再送システムは、 ビデオや 音声などのリアルタイム性の高いデ一夕の転送において、 リアルタイム 性を重視しながらより信頼性の高い通信を行うのに適している。

Claims

請 求 の 範 囲
1 . シーケンス番号が付加されたパケッ トを送信する送信装置と、 こ の送信装置にネットワークを介して接続された受信装置と、 この受信装 置に接続された要求アプリケーション部とを備え、
前記シーケンス番号が付加されたパケッ ト通信のパケット欠損時におけ る送受信間のパケットの再送を行うバケツト再送システムにおいて、 送信装置は、
受信装置へ送信したバケツトを蓄積しておく再送用バッファと、 前記受信装置から受信した再送要求パケットからシーケンス番号と要求 アプリケーションへ提供した最大 (最新) シーケンス番号を識別して通 知する再送要求受信手段と、
前記通知されたシーケンス番号が再送用バッファに存在するか否かを調 ベる再送パケッ ト検出手段と、
該再送バケツ ト検出手段が存在を検出したすべてのパケットを前記受信 装置へ再送する再送手段と、
を備えたことを特徴とするパケット再送システム。
2 . シーケンス番号が付加されたパケットを送信する送信装置と、 こ の送信装置にネッ トワークを介して接続された受信装置と、 この受信装 置に接続された要求アプリケーション部とを備え、
前記シーケンス番号が付加されたパケッ ト通信のパケット欠損時におけ る送受信間のパケッ卜の再送を行うパケッ ト再送システムにおいて、 受信装置は、
送信装置から受信したパケットを蓄積する受信バッファと、
前記送信装置から受信した前記パケットをシーケンス番号順にソートし ながらパケッ トを前記受信バッファに格納する受信手段と、
前記パケットの欠損を検出するパケッ ト欠損検出手段と、
欠損が検出されたパケットのシーケンス番号を再送要求リストに追加す るように追加命令を発する再送シーケンス番号追加手段と、
前記追加命令に従って前記シーケンス番号を前記再送要求リストに追加 する再送要求リスト管理手段と、
前記再送要求リストに格納された前記シーケンス番号を再送要求パケッ 卜に乗せて前記送信手段へ送信する再送要求送信手段と、
前記受信バッファ内のバケツ トを前記要求アプリケーシヨン部へ供給す るパケット提供手段と、
を備えたことを特徴とするパケッ ト再送システム。
3 . シーケンス番号が付加されたパケットを送信する送信装置と、 こ の送信装置にネットワークを介して接続された受信装置と、 この受信装 置に接続された要求アプリケーション部とを備え、
前記シーケンス番号が付加されたバケツ ト通信のパケヅト欠損時におけ る送受信間のパケットの再送を行うパケット再送システムにおいて、 送信装置は、
受信装置へ送信したパケットを蓄積しておく再送用バッファと、 前記受信装置から受信した再送要求パケットからシーケンス番号と要求 アプリケーションへ提供した最大 (最新) シーケンス番号を識別して通 知する再送要求受信手段と、
前記通知されたシーケンス番号が再送用バッファに存在するか否かを調 ベる再送パケット検出手段と、
該再送パケット検出手段が存在を検出したすべてのパケットを前記受信 装置へ再送する再送手段と、
を備え、 前記受信装置は、
前記送信装置から受信した前記パケットを蓄積する受信バッファと、 前記送信装置から受信した前記バケツトをシーケンス番号順にソートし ながらパケットを前記受信バッファに格納する受信手段と、
前記パケットの欠損を検出するバケツト欠損検出手段と、
欠損が検出されたパケットのシーケンス番号を再送要求リストに追加す るように命令する再送シーケンス番号追加手段と、
前記追加命令に従って前記シーケンス番号を前記再送要求リストに追加 する再送要求リスト管理手段と、
前記再送要求リストに格納された前記シーケンス番号を再送要求パケッ トに乗せて前記送信手段へ送信する再送要求送信手段と、
前記受信バッファ内のパケッ トを前記要求アプリケーション部へ供給す るパケッ ト提供手段と、
を備えたことを特徴とするパケット再送システム。
4 . 送信装置は、
特定のパケヅトまたは欠損時に再送するべきパケットを再送用バッファ に格納する再送パケッ ト格納手段と、
前記特定のパケットまたは欠損時に再送するべきパケットの再送信を行 う再送手段と、 を備え、
受信装置は、
前記特定のパケットまたは欠損時に再送するべきパケッ トを受信後、 シ 一ケンス番号順にソ一トしながら前記特定のパケットまたは欠損時に再 送するべきパケヅトを受信 ッファに格納する受信手段と、
を備えたことを特徴とする請求の範囲第 3項記載のパケット再送システ ム。
5 . 受信装置は、 現在再送要求を行っているバケツ 卜のシーケンス番号および次の再送要 求時に再送要求を行うパケットのシーケンス番号を格納する再送要求リ ストを生成し、 シーケンス番号の追加および削除を行い、 再送要求リス トに格納されているシーケンス番号のバケツトの状態を再送要求状態に 切り替える再送要求リスト管理手段を備えたことを特徴とする請求の範 囲第 2項乃至第 4項に記載のバケツト再送システム。
6 . 受信装置は、
パケッ トの受信回数および受信時間から決定されるバケツ トの受信時間 間隔で、 受信バッファ内のパケットのシーケンス番号の不整合から欠損 したパケッ卜のシーケンス番号を検出するパケヅト欠損検出手段と、 該パケット欠損検出手段が欠損を検出したパケットのシーケンス番号を 再送要求リストに追加する命令を再送要求リスト管理手段へ出す再送シ 一ケンス番号追加手段と、
前記再送要求リストの状態を再送パケット受信待ちの状態を意味する" R E A D Y状態" に設定する命令を前記再送要求リスト管理手段へ出す 再送要求通知手段を備えたことを特徴とする請求の範囲請求の範囲第 2 項乃至第 4項記載のパケット再送システム。
7 . 受信装置は、
再送要求リストに存在する 1以上の再送するべきパケッ 卜のシーケンス 番号を乗せた 1つの再送要求パケットを生成し、 前記再送要求パケッ ト を送信装置へ送信する再送要求送信手段を備え、
前記送信装置は、
前記受信装置から受信した前記再送要求パケヅトの前記シーケンス番号 を取り出して通知する再送要求受信手段と、
前記通知されたシーケンス番号のバケツトが再送バッファに格納されて いるか否かを調べる再送パケット検出手段と、 該再送パケッ ト検出手段が存在を検出したすべてのバケツ トのシーケン ス番号を 1つの再送要求応答パケットに乗せ、 前記受信装置へ送信する 再送要求応答手段と、
前記再送バケツト検出手段が検出した前記パケットを前記受信装置へ再 送信する再送手段と
を備えたことを特徴とする請求の範囲第 3項または第 4項記載のバケツ ト再送システム。
8 . 受信装置は、
バケツト提供手段が要求アプリケーション部に提供したパケッ トの最大 (最新) シーケンス番号を乗せた 1つの再送要求パケッ トを生成し、 前 記再送要求バケツ トを送信装置へ送信する再送要求送信手段を備え、 前記送信装置は、
前記受信装置から受信した前記再送要求パケッ トから前記最大シ一ケン ス番号を取り出して通知する再送要求受信 段と、
通知された前記最大シーケンス番号より小さいシーケンス番号のパケッ トを再送用バッファから削除する再送用バッファ削除手段と、 を備えたことを特徴とする請求の範囲第 3項または第 4項記載のパケッ ト再送システム。
9 . 受信装置は、
再送要求リストに存在する 1以上の再送するべきバケツトのシーケンス 番号と、 パケッ ト提供手段が要求アプリケーション部に提供したパケッ トの最大 (最新) シーケンス番号を乗せた 1つの再送要求パケットを生 成し、 前記再送要求パケットを送信装置へ送信する再送要求送信手段を 備え、
前記送信装置は、
前記受信装置から受信した前記再送要求パケッ トから前記シーケンス番 号と、 前記最大シーケンス番号を取り出して通知する再送要求受信手段 と、
前記通知されたシーケンス番号のパケッ トが再送用バッファ内に有るか 否かを調べる再送パケット検出手段と、
前記通知された最大シーケンス番号より小さいシーケンス番号のパケッ トを再送用バッファから削除する再送用バッファ削除手段と、 前記再送パケッ ト検出手段が存在を検出したすべてのパケットのシ一ケ ンス番号を 1つの再送要求応答パケツトに乗せ、 前記受信装置へ送信す る再送要求応答手段と、
前記再送パケッ ト検出手段が検出したバケツトを前記受信装置へ再送信 する再送手段と
を備えたことを特徴とする請求の範囲第 3項または第 4項記載のバケツ ト再送システム。
1 0 . 受信装置は、
再送されるパケッ トのシーケンス番号を乗せた再送要求応答パケッ トを 前記送信装置から受信する再送要求応答受信手段と、
前記再送要求応答パケットから前記シーケンス番号を取り出し、 再送要 求リストから前記シーケンス番号と同じシーケンス番号を削除するよう に命令する削除命令を再送要求リスト管理手段へ出す再送シーケンス削 除手段と、
を備えたことを特徴とする請求の範囲第 3項または第 4項記載のパケッ ト再送システム。
1 1 . 受信装置は、
再送されるパケッ トのシーケンス番号を乗せた再送要求応答パケッ トを 前記送信装置から受信する再送要求応答受信手段と、
前記再送要求応答パケットから前記シーケンス番号を取り出し、 再送要 求リス卜から前記シーケンス番号と同じシーケンス番号を削除するよう に命令する削除命令を再送要求リスト管理手段へ出す再送シーケンス削 除手段と、
前記再送要求リストの状態を、 再送要求リストに残っているシーケンス 番号のパケットの再送要求を行ったが前記送信装置からは今後再送され てこないことを意味する" ACTIVE"状態に設定する命令を前記再送要求 リスト管理手段へ出す再送要求応答通知手段と
を備えたことを特徴とする請求の範囲第 3項または第 4項記載のパケッ ト再送システム。
1 2 . 受信装置は、
受信バッファ内に格納されているパケヅトの中から、 1つ以上のパケヅ トのペイロード (デ一夕) を要求アプリケーション部に提供し、 前記パ ケットのシーケンス番号よりも小さいシーケンス番号を再送要求リスト から削除し、 前回に提供されたバケツトのシーケンス番号 (N: Nは自然 数)の次のシーケンス番号 (N+1)のパケヅ トのペイ口一ドを指定された時 間内に提供し、 前記指定された時間内に前記次のシーケンス番号 (N+1) のパケットが受信バッファに存在しない、あるいは揷入されない場合は、 提供されるべきパケットが欠損したことを前記要求アプリケーション部 に通知するパケット提供手段を備えたことを特徴とする請求の範囲第 2 項乃至第 4項に記載のバケツト再送システム。
1 3 . 受信装置は、
指定時間内に提供しなければならないパケッ トが受信バッファにない場 合、 再びパケッ ト欠損検出と再送要求送信を指定時間内に 1回以上行う パケット提供手段を備えたことを特徴とする請求の範囲第 8項又は第 9 項又は第 1 2項に記載のパケヅ ト再送システム。
1 4 . 受信装置は、 再送要求リス卜の状態が、該再送要求リス卜に格納されているシーケンス番号 のパケットの送信装置への再送要求はすでに行われているが前記送信装置か らは今後再送されてこないことを意味する" ACTIVE"状態であり、要求アブリ ケーシヨン部に提供するバケツ卜のシーケンス番号が前記再送要求リストの 中にある場合、再送要求を行っても再送されないと判断し、指定時間を待たず すぐに提供されるべきパケットが欠損したことを要求者に通知するバケツト 提供手段を備えたことを特徴とする請求の範囲第 8項又は第 9項又は第 1 2 項記載のパケット再送システム。
1 5 . すべてのパケットに与えられる一般シーケンス番号と、 特定の パケット又は欠損時に再送するべきパケットに与えられる優先シ一ケン ス番号が付加されたパケット通信のバケツト欠損時における送受信間の パケヅト再送システムにおいて、
送信装置は、
前記特定のパケット又は欠損時に再送するべきパケットを再送用バッフ ァに格納する再送パケット格納手段と、
前記特定のパケッ ト又は欠損時に再送するべきバケツ 卜の再送信を行う 再送手段とを備え、
受信装置は、 前記特定のパケッ ト又は欠損時に再送するべきパケットを 受信後、 一般シーケンス番号順にソートしながら前記特定のバケツト又 は欠損時に再送するべきバケツ トを受信バッファに格納する受信手段と、 を備えたことを特徴とする請求の範囲第 3項又は第 4項に記載のパケッ ト再送システム。
1 6 . 受信装置は、
再送を行うパケットの一般シーケンス番号を格納する再送リストを生成 し、 前記一般シーケンス番号の追加と削除を行う再送リスト管理手段を 備えたことを特徴とする請求の範囲第 1 5項記載パケット再送システム。
1 7 . 受信装置は、
受信手段が受信したパケットの一般シーケンス番号が再送リストにある 場合、 前記一般シーケンス番号を前記再送リストから削除する命令を再 送リスト管理手段へ出す再送シーケンス番号削除手段と、
前記パケッ トの受信回数および受信時間から決定されるバケツトの受信 時間間隔、 および優先シーケンス番号の不整合から優先度の高い特定の バケツトが欠損する毎に、 受信バッファ内のパケットゃ受信パケッ トの 一般シーケンス番号と優先シーケンス番号から、 欠損を発生した優先度 の高い特定のパケットおよび欠損時に再送するべきパケッ トの一般シ一 ケンス番号を検出するパケッ ト欠損検出手段と、
該パケット欠損検出手段が欠損を検出した前記優先度の高い特定のパケ ッ トおよび欠損時に再送するべきパケットの一般シーケンス番号を再送 リス卜に追加する命令を前記再送リスト管理手段へ出す再送シーケンス 番号追加手段を備えたことを特徴とする請求の範囲第 1 5項記載のパケ V ト再送システム。
1 8 . 受信装置は、
再送リストに存在する 1以上の一般シーケンス番号を乗せた 1つの再送 要求パケットを生成し、 前記再送要求パケッ トを送信装置へ送信する再 送要求送信手段を備え、
前記送信装置は、
前記受信装置から受信した前記再送要求パケットから前記一般シーケン ス番号を取り出して通知する再送要求受信手段と、
前記通知された一般シ ^ケンス番号のパケッ トが再送用バッファ内に有 るか否かを調べる再送パケット検出手段と、
該再送バケツト検出手段が存在を検出した一般シーケンス番号のバケツ トを前記受信装置へ再送信する再送手段と、 を備えたことを特徴とする請求の範囲第 1 5項記載のパケット再送シス アム。
1 9 . 受信装置は、
パケット提供手段が要求アプリケーション部に提供したバケツ トの最大 (最新)一般シーケンス番号を乗せた 1つの再送要求バケツトを生成し、 前記再送要求バケツトを送信装置に送信する再送要求送信手段を備え、 前記送信装置は、
前記受信装置から受信した前記再送要求パケットから前記最大一般シー ケンス番号を取り出して通知する再送要求受信手段と、
通知された前記最大一般シーケンス番号より小さい一般シーケンス番号 のバケツトを再送用バッファから削除する再送用バッファ削除手段と、 備えたことを特徴とする請求の範囲第 1 5項記載のパケッ ト再送システ ム o
2 0 . 受信装置は、
再送リストに存在する 1以上の一般シーケンス番号と、 パケッ ト提供手 段が要求アプリケーション部に提供したパケットの最大 (最新) 一般シ —ケンス番号を乗せた 1つの再送要求バケツトを生成し、 前記再送要求 パケッ トを送信装置に送信する再送要求送信手段を備え、
前記送信装置は、
前記受信装置から受信した前記再送要求パケットから前記一般シ一ケン ス番号と、 前記最大一般シーケンス番号を取り出して通知する再送要求 受信手段と、
通知された前記最大一般シーケンス番号より小さい一般シーケンス番号 のバケツトを再送用バッファから削除する再送用バッファ削除手段と、 前記通知された一般シーケンス番号のパケットが再送用バッファ内に有 るか否かを調べる再送パケッ ト検出手段と、 該再送パケット検出手段が存在を検出した一般シーケンス番号のパケッ トを前記受信装置へ再送信する再送手段と、
を備えたことを特徴とする請求の範囲第 1 5項記載のパケット再送シス アム。
2 1 . 受信装置は、
受信バッファ内に格納されているパケットの中から、 1つ以上のパケッ トのペイロード (デ一夕) を要求アプリケーション部に提供し、 前記パ ケッ トの一般シーケンス番号よりも小さい一般シーケンス番号を再送リ ストから削除し、 前回に提供したバケツトの一般シーケンス番号 (N: N は自然数)の次の一般シーケンス番号 (N+1)のパケヅ卜のペイロードを指 定された時間内に提供し、 前記指定された時間内に前記一般シーケンス 番号 (N+1)のパケヅ卜が受信バッファに存在しない、 又は挿入されない 場合は、 提供されるべきパケットが欠損したことを前記要求アプリケー シヨン部に通知するパケッ ト提供手段を備えたことを特徴とする請求の 範囲第 1 5項記載のパケッ ト再送システム。
2 2 . 受信装置は、
指定時間内に提供しなければならないパケットが受信バッファに存在し ない場合、 再びパケッ ト欠損検出と前記再送要求送信を指定時間内に数 回行うバケツト提供手段を備えたことを特徴とする請求の範囲第 2 0項 記載のパケット再送システム。
2 3 . 受信装置は、
提供するパケットの一般シーケンス番号が、 再送リストの中に存在しな い場合、 再送要求を行わず、 指定された時間を待たずすぐに提供される べきパケヅトが欠損したことを要求アプリケーション部に通知するパケ ッ ト提供手段を備えたことを特徴とする請求の範囲第 2 0項記載のパケ ヅ ト再送システム。
2 4 . 送信装置は、
任意のバケツ ト pの近辺 n個のバケツ 卜において優先度の高い特定のパ ケッ トまたは欠損時に再送するべきバケツトに割り当てるべき優先度情 報を m個毎 : m , nとも自然数)にパケット pに付力 Πし、 前記 nお よび m の値をネットワークの輻輳状況から決定する優先度情報付加手 段を備え、
受信装置は、
パケットの受信回数および受信時間から決定されるパケッ トの受信時間 間隔、 およびシーケンス番号の不整合から重要なパケッ トが欠損する毎 に、 受信バッファ内のパケッ トや受信パケットのシーケンス番号と、 前 記優先度情報から、 欠損を発生した優先度の高い特定のバケツトおよび 欠損時に再送するべきパケッ トのシーケンス番号を検出するパケッ ト欠 損検出手段を備えたことを特徴とする請求の範囲第 3項または第 4項に 記載のパケット再送システム。
2 5 . シーケンス番号が付加されたパケットを送信する送信装置と、 この送信装置にネットヮ一クを介して接続された受信装置と、 この受信 装置に接続された要求アプリケーション部とを備え、
前記シーケンス番号が付加されたバケツト通信のパケッ ト欠損時におけ る送受信間のパケットの再送を行うパケット再送方法において、 送信装置は、
受信装置へ送信したパケッ トを蓄積しておく再送用バッファと、 前記受信装置から受信した再送要求パケットからシーケンス番号と要求 アプリケーションへ提供した最大 (最新) シーケンス番号を識別して通 知する再送要求受信ステップと、
前記通知されたシーケンス番号が再送用バッファに存在するか否かを調 ベる再送パケヅト検出ステップと、 該再送バケツ ト検出ステップが存在を検出したすべてのバケツトを前記 受信装置へ再送する再送ステツプと、
を備えたことを特徴とするバケツト再送方法。
2 6 . シーケンス番号が付加されたパケットを送信する送信装置と、 この送信装置にネッ トワークを介して接続された受信装置と、 この受信 装置に接続された要求アプリケーション部とを備え、
前記シーケンス番号が付加されたパケツ ト通信のパケット欠損時におけ る送受信間のパケッ 卜の再送を行うバケツ ト再送方法において、 受信装置は、
送信装置から受信したパケッ トを蓄積する受信バッファと、
前記送信装置から受信した前記パケッ トをシーケンス番号順にソ一トし ながらバケツ トを前記受信バヅファに格納する受信ステヅプと、 前記パケッ トの欠損を検出するバケツト欠損検出ステップと、 欠損が検出されたバケツトのシーケンス番号を再送要求リストに追加す るように追加命令を発する再送シーケンス番号追加ステップと、 前記追加命令に従って前記シーケンス番号を前記再送要求リストに追加 する再送要求リスト管理ステップと、
前記再送要求リストに格納された前記シーケンス番号を再送要求パケッ トに乗せて前記送信ステツプへ送信する再送要求送信ステツプと、 前記受信バッファ内のパケットを前記要求アブリケ一ション部へ供給す るパケヅト提供ステツプと、
を備えたことを特徴とするパケット再送方法。
2 7 . シーケンス番号が付加されたバケツトを送信する送信装置と、 この送信装置にネッ トワークを介して接続された受信装置と、 この受信 装置に接続された要求アプリケーション部とを備え、
前記シーケンス番号が付加されたパケッ ト通信のパケット欠損時におけ る送受信間のパケッ 卜の再送を行うパケッ ト再送方法において、 送信装置は、
受信装置へ送信したパケットを蓄積しておく再送用バッファと、 前記受信装置から受信した再送要求パケッ トからシーケンス番号と要求 アプリケーションへ提供した最大 (最新) シーケンス番号を識別して通 知する再送要求受信ステップと、
前記通知されたシーケンス番号が再送用バッファに存在するか否かを調 ベる再送パケヅ ト検出ステップと、
該再送パケッ ト検出ステップが存在を検出したすべてのバケツ トを前記 受信装置へ再送する再送ステップと、
を備え、 前記受信装置は、
前記送信装置から受信した前記パケットを蓄積する受信バッファと、 前記送信装置から受信した前記パケッ トをシーケンス番号順にソートし ながらパケヅ トを前記受信バッファに格納する受信ステップと、 前記バケツ トの欠損を検出するバケツト欠損検出ステップと、 欠損が検出されたパケットのシーケンス番号を再送要求リストに追加す るように命令する再送シーケンス番号追加ステップと、
前記追如命令に従って前記シーケンス番号を前記再送要求リストに追加 する再送要求リスト管理ステップと、
前記再送要求リストに格納された前記シーケンス番号を再送要求パケッ トに乗せて前記送信ステップへ送信する再送要求送信ステップと、 前記受信バッファ内のパケットを前記要求アブリケーション部へ供給す るパケッ ト提供ステップと、
を備えたことを特徴とするパケット再送方法。
2 8 . 送信装置は、 特定のパケットまたは欠損時に再送するべきパケッ トを再送用バッファ に格納する再送パケット格納ステップと、
前記特定のバケツ トまたは欠損時に再送するべきパケッ卜の再送信を行 う再送ステップと、 を備え、 前記特定のバケツ トまたは欠損時に再送するべきパケットを受信後、 シ —ケンス番号順にソートしながら前記特定のパケッ トまたは欠損時に再 送するべきパケッ トを受信バッファに格納する受信ステツプと、 を備えたことを特徴とする請求の範囲第 2 7項記載のバケツ ト再送方法 <
2 9 . 受信装置は、
現在再送要求を行っているバケツトのシーケンス番号および次の再送要 求時に再送要求を行うパケットのシーケンス番号を格納する再送要求リ ストを生成し、 シーケンス番号の追加および削除を行い、 再送要求リス トに格納されているシーケンス番号のパケットの状態を再送要求状態に 切り替える再送要求リスト管理ステップを備えたことを特徴とする請求 の範囲第 2 6項乃至第 2 8項に記載のバケツト再送方法。
3 0 . 受信装置は、
パケッ 卜の受信回数および受信時間から決定されるバケツトの受信時間 間隔で、 受信バヅファ内のパケヅ卜のシーケンス番号の不整合から欠損 したバケツ 卜のシーケンス番号を検出するバケツト欠損検出ステップと、 該パケッ ト欠損検出ステップが欠損を検出したパケットのシーケンス番 号を再送要求リストに追加する命令を再送要求リスト管理ステップへ出 す再送シーケンス番号追加ステップと、
前記再送要求リストの状態を再送バケツ ト受信待ちの状態を意味する" R E A D Y状態" に設定する命令を前記再送要求リス ト管理ステップへ 出す再送要求通知ステップを備えたことを特徴とする請求の範囲請求の 範囲第 2 6項乃至第 2 8項記載のパケット再送方法。
3 1 . 受信装置は、
再送要求リストに存在する 1以上の再送するべきパケヅトのシーケンス 番号を乗せた 1つの再送要求バケツトを生成し、 前記再送要求バケツ ト を送信装置へ送信する再送要求送信ステップを備え、
前記送信装置は、
前記受信装置から受信した前記再送要求パケッ トの前記シーケンス番号 を取り出して通知する再送要求受信ステップと、
前記通知されたシーケンス番号のパケットが再送バッファに格納されて いるか否かを調べる再送パケット検出ステップと、
該再送パケット検出ステップが存在を検出したすべてのパケッ トのシ一 ケンス番号を 1つの再送要求応答パケッ トに乗せ、 前記受信装置へ送信 する再送要求応答ステツプと、
前記再送パケット検出ステップが検出した前記パケッ トを前記受信装置 へ再送信する再送ステップと
を備えたことを特徴とする請求の範囲第 2 7項または第 2 8項記載のパ ケット再送方法。
3 2 . 受信装置は、
パケヅト提供ステップが要求アプリケーション部に提供したパケヅトの 最大(最新)シーケンス番号を乗せた 1つの再送要求パケヅ tを生成し、 前記再送要求パケットを送信装置へ送信する再送要求送信ステツプを備 え、
前記送信装置は、
前記受信装置から受信した前記再送要求パケットから前記最大シーケン ス番号を取り出して通知する再送要求受信ステップと、
通知された前記最大シーケンス番号より小さいシーケンス番号のバケツ トを再送用バヅファから削除する再送用バッファ削除ステヅプと、 を備えたことを特徴とする請求の範囲第 2 7項または第 2 8項記載のパ ケット再送方法。
3 3 . 受信装置は、
再送要求リストに存在する 1以上の再送するべきパケッ トのシーケンス 番号と、 バケツ ト提供ステップが要求アプリケーション部に提供したパ ケヅ 卜の最大 (最新) シーケンス番号を乗せた 1つの再送要求パケヅ ト を生成し、 前記再送要求パケッ トを送信装置へ送信する再送要求送信ス テヅプを備え、
前記送信装置は、
前記受信装置から受信した前記再送要求パケットから前記シーケンス番 号と、 前記最大シーケンス番号を取り出して通知する再送要求受信ステ ップと、
前記通知されたシーケンス番号のパケットが再送用バッファ内に有るか 否かを調べる再送パケッ ト検出ステップと、
前記通知された最大シーケンス番号より小さいシーケンス番号のパケッ トを再送用バッファから削除する再送用バッファ削除ステップと、 前記再送バケツト検出ステップが存在を検出したすべてのパケットのシ 一ケンス番号を 1つの再送要求応答パケットに乗せ、 前記受信装置へ送 信する再送要求応答ステツプと、
前記再送パケッ ト検出ステップが検出したバケツトを前記受信装置へ再 送信する再送ステップと
を備えたことを特徴とする請求の範囲第 2 7項または第 2 8項記載のパ ケット再送方法。
3 4 . 受信装置は、
再送されるパケヅ 卜のシーケンス番号を乗せた再送要求応答パケットを 前記送信装置から受信する再送要求応答受信ステップと、
前記再送要求応答バケツ トから前記シーケンス番号を取り出し、 再送要 求リストから前記シーケンス番号と同じシーケンス番号を削除するよう に命令する削除命令を再送要求リスト管理ステツプへ出す再送シーケン ス削除ステップと、
を備えたことを特徴とする請求の範囲第 2 7項または第 2 8項記載のパ ケット再送方法。
3 5 . 受信装置は、
再送されるパケッ トのシーケンス番号を乗せた再送要求応答パケットを 前記送信装置から受信する再送要求応答受信ステップと、
前記再送要求応答パケットから前記シーケンス番号を取り出し、 再送要 求リストから前記シーケンス番号と同じシーケンス番号を削除するよう に命令する削除命令を再送要求リスト管理ステツプへ出す再送シーケン ス削除ステヅプと、
前記再送要求リストの状態を、 再送要求リストに残っているシーケンス 番号のパケットの再送要求を行ったが前記送信装置からは今後再送され てこないことを意味する "ACTIVE"状態に設定する命令を前記再送要求 リスト管理ステツプへ出す再送要求応答通知ステップと
を備えたことを特徴とする請求の範囲第 2 7項または第 2 8項記載のパ ケット再送方法。
3 6 . 受信装置は、
受信バッファ内に格納されているパケヅトの中から、 1つ以上のパケヅ トのペイロード (データ) を要求アプリケーション部に提供し、 前記パ ケットのシーケンス番号よりも小さいシーケンス番号を再送要求リスト から削除し、 前回に提供されたパケットのシーケンス番号 (N: Nは自然 数)の次のシーケンス番号 (N+1)のパケヅトのペイロードを指定された時 間内に提供し、 前記指定された時間内に前記次のシーケンス番号 (N+l) のパケッ トが受信バッファに存在しない、あるいは挿入されない場合は、 提供されるべきバケツ 卜が欠損したことを前記要求アプリケーション部 に通知するパケッ ト提供ステップを備えたことを特徴とする請求の範囲 第 2 6項乃至第 2 8項に記載のバケツト再送方法。
3 7 . 受信装置は、
指定時間内に提供しなければならないバケツ トが受信バッファにない場 合、 再びパケッ ト欠損検出と再送要求送信を指定時間内に 1回以上行う パケット提供ステップを備えたことを特徴とする請求の範囲第 3 2項又 は第 3 3項又は第 3 6項に記載のバケツト再送方法。
3 8 . 受信装置は、 .
再送要求リストの状態が、該再送要求リストに格納されているシーケンス番号 のパケットの送信装置への再送要求はすでに行われているが前記送信装置か らは今後再送されてこないことを意味する" ACTIVE"状態であり、要求アブリ ケ一シヨン部に提供するパケットのシーケンス番号が前記再送要求リストの 中にある場合、再送要求を行っても再送されないと判断し、指定時間を待たず すぐに提供されるべきパケッ卜が欠損したことを要求者に通知するパケット 提供ステップを備えたことを特徴とする請求の範囲第 3 2項又は第 3 3項又 は第 3 6項記載のパケット再送方法。
3 9 . すべてのパケットに与えられる一般シーケンス番号と、 特定の バケツト又は欠損時に再送するべきパケットに与えられる優先シーケン ス番号が付加されたバケツト通信のパケッ ト欠損時における送受信間の パケット再送方法において、
送信装置は、
前記特定のバケツ ト又は欠損時に再送するべきパケッ トを再送用バッフ ァに格納する再送パケット格納ステツプと、 前記特定のバケツ ト又は欠損時に再送するべきバケツ トの再送信を行う 再送ステップとを備え、
受信装置は、 前記特定のパケット又は欠損時に再送するべきバケツトを 受信後、 一般シーケンス番号順にソートしながら前記特定のバケツ ト又 5 は欠損時に再送するべきパケットを受信バッファに格納する受信ステツ - プと、
を備えたことを特徴とする請求の範囲第 2 7項又は第 2 8項に記載のパ ケット再送方法。
4 0 . 受信装置は、
10 再送を行うバケツ 卜の一般シーケンス番号を格納する再送リストを生成 し、 前記一般シーケンス番号の追加と削除を行う再送リスト管理ステツ プを備えたことを特徴とする請求の範囲第 3 9項記載バケツト再送方法 c 1 . 受信装置は、
受信ステップが受信したパケットの一般シーケンス番号が再送リストに
15 ある場合、 前記一般シーケンス番号を前記再送リストから削除する命令 を再送リス ト管理ステツプへ出す再送シーケンス番号削除ステヅプと、 前記バケツ トの受信回数および受信時間から決定されるバケツトの受信 時間間隔、 および優先シーケンス番号の不整合から優先度の高い特定の パケットが欠損する每に、 受信バッファ内のパケットゃ受信パケットの 0 —般シーケンス番号と優先シーケンス番号から、 欠損を発生した優先度 の高い特定のパケットおよび欠損時に再送するべきパケッ卜の一般シー ケンス番号を検出するパケット欠損検出ステップと、
該パケット欠損検出ステツプが欠損を検出した前記優先度の高い特定の パケットおよび欠損時に再送するべきパケットの一般シーケンス番号を 5 再送リストに追加する命令を前記再送リスト管理ステップへ出す再送シ 一ケンス番号追加ステップを備えたことを特徴とする請求の範囲第 3 9 項記載のバケツト再送方法。
4 2 . 受信装置は、
再送リストに存在する 1以上の一般シーケンス番号を乗せた 1つの再送 要求パケットを生成し、 前記再送要求バケツトを送信装置へ送信する再 送要求送信ステップを備え、
前記送信装置は、
前記受信装置から受信した前記再送要求パケッ トから前記一般シーケン ス番号を取り出して通知する再送要求受信ステップと、
前記通知された一般シーケンス番号のパケットが再送用バッファ内に有 るか否かを調べる再送パケッ ト検出ステップと、
該再送パケッ ト検出ステップが存在を検出した一般シーケンス番号のパ ケットを前記受信装置へ再送信する再送ステップと、
を備えたことを特徴とする請求の範囲第 3 9項記載のバケツト再送方法。
4 3 . 受信装置は、
バケツ ト提供ステップが要求アプリケーション部に提供したバケツ トの 最大 (最新) 一般シーケンス番号を乗せた 1つの再送要求パケットを生 成し、 前記再送要求バケツトを送信装置に送信する再送要求送信ステツ プを備え、
前記送信装置は、
前記受信装置から受信した前記再送要求パケ、ソ 卜から前記最大一般シー ケンス番号を取り出して通知する再送要求受信ステップと、
通知された前記最大一般シーケンス番号より小さい一般シーケンス番号 のパケットを再送用バッファから削除する再送用バッファ削除ステツプ と、
備えたことを特徴とする請求の範囲第 3 9項記載のバケツト再送方法。
4 4 . 受信装置は、 再送リストに存在する 1以上の一般シーケンス番号と、 バケツト提供ス テツプが要求アプリケーション部に提供したパケットの最大 (最新) 一 般シーケンス番号を乗せた 1つの再送要求バケツトを生成し、 前記再送 要求パケットを送信装置に送信する再送要求送信ステップを備え、 前記送信装置は、
前記受信装置から受信した前記再送要求パケットから前記一般シーケン ス番号と、 前記最大一般シーケンス番号を取り出して通知する再送要求 受信ステップと、
通知された前記最大一般シーケンス番号より小さい一般シーケンス番号 のパケッ トを再送用バッファから削除する再送用バッファ削除ステップ と、
前記通知された一般シーケンス番号のパケットが再送用バッファ内に有 るか否かを調べる再送パケッ ト検出ステップと、
該再送パケット検出ステツプが存在を検出した一般シーケンス番号のパ ケットを前記受信装置へ再送信する再送ステップと、
を備えたことを特徴とする請求の範囲第 3 9項記載のバケツト再送方法 c
4 5 . 受信装置は、
受信バッファ内に格納されているパケッ トの中から、 1つ以上のパケヅ ' トのペイロード (デ一夕) を要求アプリケーション部に提供し、 前記パ ケットの一般シーケンス番号よりも小さい一般シーケンス番号を再送リ ストから削除し、 前回に提供したパケヅ トの一般シーケンス番号 (N: N は自然数)の次の一般シーケンス番号 (N+1)のパケッ卜のペイロードを指 定された時間内に提供し、 前記指定された時間内に前記一般シーケンス 番号 (N+1)のパケットが受信バッファに存在しない、 又は挿入されない 場合は、 提供されるべきパケッ トが欠損したことを前記要求アプリケ一 シヨン部に通知するパケット提供ステップを備えたことを特徴とする請 求の範囲第 3 9項記載のパケット再送方法。
4 6 . 受信装置は、
指定時間内に提供しなければならないパケットが受信バッファに存在し ない場合、 再びパケット欠損検出と前記再送要求送信を指定時間内に数 回行うパケット提供ステップを備えたこ-とを特徴とする請求の範囲第 4 4項記載のパケッ ト再送方法。
4 7 . 受信装置は、
提供するパケッ卜の一般シーケンス番号が、 再送リストの中に存在しな い場合、 再送要求を行わず、 指定された時間を待たずすぐに提供される べきバケツ 卜が欠損したことを要求アプリケーション部に通知するパケ ット提供ステップを備えたことを特徴とする請求の範囲第 4 4項記載の パケット再送方法。
4 8 . 送信装置は、
任意のパケット pの近辺 n個のパケッ卜において優先度の高い特定のパ ケッ トまたは欠損時に再送するべきバケツトに割り当てるべき優先度情 報を m個毎 (m≤n : m, nとも自然数)にパケット pに付加し、,前記 nお よび m の値をネッ トワークの輻輳状況から決定する優先度情報付加ス テヅプを備え、
受信装置は、
パケッ卜の受信回数および受信時間から決定されるバケツ 卜の受信時間 間隔、 およびシーケンス番号の不整合から重要なバケツトが欠損する毎 に、 受信バッファ内のパケッ トや受信パケッ トのシーケンス番号と、 前 記優先度情報から、 欠損を発生した優先度の高い特定のパケットおよび 欠損時に再送するべきバケツトのシーケンス番号を検出するパケッ ト欠 損検出ステップを備えたことを特徴とする請求の範囲第 2 7項または第 2 8項に記載のパケット再送方法。
PCT/JP2000/004154 2000-06-23 2000-06-23 Procede et systeme de retransmission de paquets WO2001099355A1 (fr)

Priority Applications (4)

Application Number Priority Date Filing Date Title
EP00939154A EP1204249A4 (en) 2000-06-23 2000-06-23 PACKET RETRANSMISSION METHOD AND SYSTEM
JP2002504083A JP3866196B2 (ja) 2000-06-23 2000-06-23 パケット再送システムおよびパケット再送方法
PCT/JP2000/004154 WO2001099355A1 (fr) 2000-06-23 2000-06-23 Procede et systeme de retransmission de paquets
US10/069,246 US7180896B1 (en) 2000-06-23 2000-06-23 Method and system for packet retransmission

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2000/004154 WO2001099355A1 (fr) 2000-06-23 2000-06-23 Procede et systeme de retransmission de paquets

Publications (1)

Publication Number Publication Date
WO2001099355A1 true WO2001099355A1 (fr) 2001-12-27

Family

ID=11736179

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2000/004154 WO2001099355A1 (fr) 2000-06-23 2000-06-23 Procede et systeme de retransmission de paquets

Country Status (4)

Country Link
US (1) US7180896B1 (ja)
EP (1) EP1204249A4 (ja)
JP (1) JP3866196B2 (ja)
WO (1) WO2001099355A1 (ja)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005198055A (ja) * 2004-01-08 2005-07-21 Sony Corp 受信装置および方法、プログラム、並びに記録媒体
JP2005260606A (ja) * 2004-03-11 2005-09-22 Fujitsu Ten Ltd デジタル放送受信装置
JP2006279436A (ja) * 2005-03-29 2006-10-12 Toshiba Corp マルチメディア通信システムおよび再送用データ削除方法
JP2007053588A (ja) * 2005-08-18 2007-03-01 Nec Corp パケット再送方式、パケット再送システム、パケット再送プログラム及びプログラム記録媒体
WO2007139161A1 (ja) * 2006-05-31 2007-12-06 Softbank Bb Corp. 移動端末及び通信方法
JP2007329798A (ja) * 2006-06-09 2007-12-20 Yokogawa Electric Corp ゲートウェイシステム
JP2007537640A (ja) * 2004-05-13 2007-12-20 ノキア コーポレイション パケット化データのビットレートの適合化とデータパケットの再送信との間の連携
US8422369B2 (en) * 2005-05-13 2013-04-16 Sony Corporation Transmission and reception system, transmitter, transmission method, receiver, reception method, and program
US9379852B2 (en) 2006-09-05 2016-06-28 Nec Corporation Packet recovery method, communication system, information processing device, and program
JP2021118489A (ja) * 2020-01-29 2021-08-10 三菱電機株式会社 ネットワークシステム

Families Citing this family (60)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6404772B1 (en) * 2000-07-27 2002-06-11 Symbol Technologies, Inc. Voice and data wireless communications network and method
JP2003152752A (ja) * 2001-08-29 2003-05-23 Matsushita Electric Ind Co Ltd データ送受信方法
WO2003021447A1 (en) * 2001-08-31 2003-03-13 Adaptec, Inc. Methods and apparatus for partially reordering data packets
KR100460970B1 (ko) * 2002-01-10 2004-12-09 삼성전자주식회사 데이터 송수신 시스템 및 방법
BR0309999A (pt) 2002-05-10 2005-02-15 Interdigital Tech Corp Priorização de dados de protocolo para retransmissão
AU2003301387A1 (en) * 2002-10-17 2004-05-04 Matsushita Electric Industrial Co., Ltd. Method and device for transmitting and receiving data using packets carrying priority information
JP2004266504A (ja) * 2003-02-28 2004-09-24 Sony Corp 送受信システム、送信装置および方法、受信装置および方法、記録媒体、並びにプログラム
US7768919B1 (en) * 2003-04-28 2010-08-03 Verizon Laboratories Inc. Selective packet discard apparatus and method
US20050052465A1 (en) * 2003-07-03 2005-03-10 Moore Richard L. Wireless keyboard, video, mouse device
EP1667395A4 (en) * 2003-09-18 2010-05-26 Nomura Res Inst Co Ltd COMMUNICATION SYSTEM, COMMUNICATION DEVICE AND DATA TRANSFER CONTROL METHOD
CN100442755C (zh) * 2003-11-14 2008-12-10 华为技术有限公司 一种保证通用路由封装隧道传输可靠的方法
US7475322B2 (en) * 2003-11-14 2009-01-06 Avocent Huntsville Corporation Wireless broadcast protocol
US7733782B2 (en) 2004-03-31 2010-06-08 Telefonaktiebolaget Lm Ericsson (Publ) Method and an arrangement for avoiding unnecessary retransmissions
JP2006033156A (ja) * 2004-07-13 2006-02-02 Fujitsu Ltd 通信装置
CN100361430C (zh) * 2004-08-11 2008-01-09 华为技术有限公司 一种数据传输的方法
EP3340511B1 (en) 2004-10-12 2022-11-30 TQ Delta, LLC Resource sharing in a telecommunications enviroment
US8065580B2 (en) 2005-06-02 2011-11-22 Siemens Aktiengesellschaft Redundant transmission of data messages for information and control for HVDC transmission systems
US20070130303A1 (en) * 2005-11-17 2007-06-07 Gary Anna Apparatus, system, and method for recovering messages from a failed node
US7965771B2 (en) * 2006-02-27 2011-06-21 Cisco Technology, Inc. Method and apparatus for immediate display of multicast IPTV over a bandwidth constrained network
US8218654B2 (en) * 2006-03-08 2012-07-10 Cisco Technology, Inc. Method for reducing channel change startup delays for multicast digital video streams
EP2005674B1 (en) * 2006-04-12 2016-09-28 TQ Delta, LLC Packet retransmission and memory sharing
US8510459B2 (en) * 2006-09-01 2013-08-13 Pacbyte Software Pty Limited Method and system for transmitting a data file over a data network
US8031701B2 (en) * 2006-09-11 2011-10-04 Cisco Technology, Inc. Retransmission-based stream repair and stream join
US7937531B2 (en) * 2007-02-01 2011-05-03 Cisco Technology, Inc. Regularly occurring write back scheme for cache soft error reduction
US8769591B2 (en) * 2007-02-12 2014-07-01 Cisco Technology, Inc. Fast channel change on a bandwidth constrained network
US7940644B2 (en) * 2007-03-14 2011-05-10 Cisco Technology, Inc. Unified transmission scheme for media stream redundancy
US20080253369A1 (en) 2007-04-16 2008-10-16 Cisco Technology, Inc. Monitoring and correcting upstream packet loss
US8276034B2 (en) * 2007-12-27 2012-09-25 Ricoh Company, Limited Information processing apparatus, information processing method, and computer program product
US8787153B2 (en) * 2008-02-10 2014-07-22 Cisco Technology, Inc. Forward error correction based data recovery with path diversity
WO2009133626A1 (ja) * 2008-05-02 2009-11-05 富士通株式会社 制御装置、無線通信装置、通信システムおよび制御方法
CN101729228B (zh) * 2008-10-31 2014-04-16 华为技术有限公司 丢包抑制重传的方法、网络节点和系统
US8064343B2 (en) * 2008-11-25 2011-11-22 Broadcom Corporation Utilizing a replacement pathway for lost packet delivery during media reception in a set-top box (STB)
CN102804664B (zh) * 2009-05-08 2015-05-06 日本电气株式会社 通信系统、通信设备、通信方法和程序
EP2302845B1 (en) 2009-09-23 2012-06-20 Google, Inc. Method and device for determining a jitter buffer level
US9168946B2 (en) * 2010-03-19 2015-10-27 Javad Gnss, Inc. Method for generating offset paths for ground vehicles
US8477050B1 (en) 2010-09-16 2013-07-02 Google Inc. Apparatus and method for encoding using signal fragments for redundant transmission of data
GB2485765B (en) * 2010-11-16 2014-02-12 Canon Kk Client based congestion control mechanism
US8838680B1 (en) 2011-02-08 2014-09-16 Google Inc. Buffer objects for web-based configurable pipeline media processing
US8681866B1 (en) 2011-04-28 2014-03-25 Google Inc. Method and apparatus for encoding video by downsampling frame resolution
US8661323B2 (en) 2011-05-09 2014-02-25 Google Inc. Method and apparatus for generating packet mask
US9106787B1 (en) 2011-05-09 2015-08-11 Google Inc. Apparatus and method for media transmission bandwidth control using bandwidth estimation
JP5728368B2 (ja) * 2011-11-15 2015-06-03 株式会社日立製作所 ネットワークシステム、及び通信装置
US9490850B1 (en) 2011-11-28 2016-11-08 Google Inc. Method and apparatus for decoding packetized data
TWI459768B (zh) * 2011-12-30 2014-11-01 Ind Tech Res Inst 協助tcp封包傳送的通訊系統與方法
US9185429B1 (en) 2012-04-30 2015-11-10 Google Inc. Video encoding and decoding using un-equal error protection
US10034023B1 (en) 2012-07-30 2018-07-24 Google Llc Extended protection of digital video streams
US9172740B1 (en) 2013-01-15 2015-10-27 Google Inc. Adjustable buffer remote access
US9311692B1 (en) 2013-01-25 2016-04-12 Google Inc. Scalable buffer remote access
US9225979B1 (en) 2013-01-30 2015-12-29 Google Inc. Remote access encoding
CN103957169A (zh) * 2014-05-14 2014-07-30 上海复兰信息科技有限公司 一种基于反向请求的可靠udp的实现方法
EP3235210A1 (en) * 2014-12-19 2017-10-25 Telefonaktiebolaget LM Ericsson (publ) Methods and first network node for managing a stream control transmission protocol association
CN107852283B (zh) * 2015-08-21 2021-02-02 英特尔Ip公司 用于pdcp状态报告的设备和计算机可读介质
US10171777B2 (en) * 2015-12-31 2019-01-01 Amazon Technologies, Inc. Streaming and storing video content captured by an audio/video recording and communication device
US10368288B2 (en) * 2016-08-18 2019-07-30 Bridgefy, Inc. Systems and methods for connecting devices through intermediate nodes
US10749795B2 (en) * 2018-07-06 2020-08-18 Citrix Systems, Inc. Systems and methods for selecting communication paths for applications sensitive to bursty packet drops
CN110858930B (zh) * 2018-08-23 2022-03-18 慧与发展有限责任合伙企业 数据帧传输
US11646835B2 (en) 2018-10-08 2023-05-09 Telefonaktiebolaget Lm Ericsson (Publ) Transmission of a packet data convergence protocol (PDCP) protocol data unit (PDU) in a wireless communication network
EP4197139A1 (en) * 2020-12-15 2023-06-21 Huawei Technologies Co., Ltd. Device and method for selective retransmission of lost packets
CN112968817B (zh) * 2021-03-25 2022-12-06 深圳金三立视频科技股份有限公司 一种数字信息传输中的丢包数据统计方法及终端
CN113037440B (zh) * 2021-05-25 2021-08-06 腾讯科技(深圳)有限公司 数据重传处理方法、装置、计算机设备和存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS59178831A (ja) * 1983-03-29 1984-10-11 Fujitsu Ltd デ−タ伝送方式
JPH03237829A (ja) * 1990-02-14 1991-10-23 Nec Corp Hdlc手順の紛失フレームの通知方法
JPH09214507A (ja) * 1996-02-02 1997-08-15 Toshiba Corp 無線通信方法
JPH1070523A (ja) * 1996-08-28 1998-03-10 Kokusai Electric Co Ltd パケット伝送方法及び装置
JPH10215294A (ja) * 1997-01-30 1998-08-11 Nippon Telegr & Teleph Corp <Ntt> フレーム再送方法

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60106250A (ja) 1983-11-15 1985-06-11 Nec Corp デ−タ通信装置
US5222061A (en) * 1991-10-31 1993-06-22 At&T Bell Laboratories Data services retransmission procedure
JPH08331179A (ja) 1995-06-06 1996-12-13 Nippon Telegr & Teleph Corp <Ntt> パケット通信システムにおける再送処理装置
JPH11284657A (ja) 1998-03-30 1999-10-15 Chokosoku Network Computer Gijutsu Kenkyusho:Kk 再送制御方式
DE69938094T2 (de) * 1998-11-30 2009-02-05 Matsushita Electric Industries Co. Ltd., Kadoma Paketwiederübertragungskontrolle mit Prioritätsinformationen

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS59178831A (ja) * 1983-03-29 1984-10-11 Fujitsu Ltd デ−タ伝送方式
JPH03237829A (ja) * 1990-02-14 1991-10-23 Nec Corp Hdlc手順の紛失フレームの通知方法
JPH09214507A (ja) * 1996-02-02 1997-08-15 Toshiba Corp 無線通信方法
JPH1070523A (ja) * 1996-08-28 1998-03-10 Kokusai Electric Co Ltd パケット伝送方法及び装置
JPH10215294A (ja) * 1997-01-30 1998-08-11 Nippon Telegr & Teleph Corp <Ntt> フレーム再送方法

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
MIYAZAKI A, ET AL.: "RTP PAYLOAD FORMAT TO ENABLE MULTIPLE SELECTIVE RETRANSMISSIONS", AUDIO/VIDEO TRANSPORT WORKING GROUP. INTERNET DRAFT, XX, XX, 1 July 2000 (2000-07-01), XX, pages 01 - 17, XP002930793 *
MIYAZAKI A, ET AL.: "RTP PAYLOAD TYPE FORMAT TO ENABLE SELECTIVE RETRANSMISSIONS", AUDIO/VIDEO TRANSPORT WORKING GROUP. INTERNET DRAFT, XX, XX, 1 September 2000 (2000-09-01), XX, pages 01 - 14, XP002930792 *
See also references of EP1204249A4 *

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005198055A (ja) * 2004-01-08 2005-07-21 Sony Corp 受信装置および方法、プログラム、並びに記録媒体
JP2005260606A (ja) * 2004-03-11 2005-09-22 Fujitsu Ten Ltd デジタル放送受信装置
JP2007537640A (ja) * 2004-05-13 2007-12-20 ノキア コーポレイション パケット化データのビットレートの適合化とデータパケットの再送信との間の連携
JP2006279436A (ja) * 2005-03-29 2006-10-12 Toshiba Corp マルチメディア通信システムおよび再送用データ削除方法
US8422369B2 (en) * 2005-05-13 2013-04-16 Sony Corporation Transmission and reception system, transmitter, transmission method, receiver, reception method, and program
JP2007053588A (ja) * 2005-08-18 2007-03-01 Nec Corp パケット再送方式、パケット再送システム、パケット再送プログラム及びプログラム記録媒体
JP2007324788A (ja) * 2006-05-31 2007-12-13 Softbank Bb Corp 移動端末及び通信方法
WO2007139161A1 (ja) * 2006-05-31 2007-12-06 Softbank Bb Corp. 移動端末及び通信方法
JP2007329798A (ja) * 2006-06-09 2007-12-20 Yokogawa Electric Corp ゲートウェイシステム
JP4687570B2 (ja) * 2006-06-09 2011-05-25 横河電機株式会社 ゲートウェイシステム
US9379852B2 (en) 2006-09-05 2016-06-28 Nec Corporation Packet recovery method, communication system, information processing device, and program
JP2021118489A (ja) * 2020-01-29 2021-08-10 三菱電機株式会社 ネットワークシステム
JP7224310B2 (ja) 2020-01-29 2023-02-17 三菱電機株式会社 ネットワークシステム

Also Published As

Publication number Publication date
EP1204249A4 (en) 2007-05-16
US7180896B1 (en) 2007-02-20
EP1204249A1 (en) 2002-05-08
JP3866196B2 (ja) 2007-01-10

Similar Documents

Publication Publication Date Title
WO2001099355A1 (fr) Procede et systeme de retransmission de paquets
US8300653B2 (en) Systems and methods for assured communications with quality of service
US7707303B2 (en) Method and devices for controlling retransmissions in data streaming
EP0973294B1 (en) Method and computer program product for efficiently and reliably sending small data messages from a sending system to a large number of receiving systems
EP1258104B1 (en) Wireless network system and method
CN101473623B (zh) 用于服务质量的协议转换网关的系统和方法
US7865609B2 (en) Method and apparatus for failure resilient forwarding of data over a computer network
US6611535B2 (en) Method for flow control
US20030206549A1 (en) Method and apparatus for multicast delivery of information
CN101491035A (zh) 用于容错服务质量的方法和系统
WO2008029793A1 (fr) Procédé de récupération de paquets, système de communication, dispositif de traitement d&#39;informations et programme
CN112787945B (zh) 数据传输方法、装置、计算机可读介质及电子设备
US10505677B2 (en) Fast detection and retransmission of dropped last packet in a flow
EP1708404A1 (en) Method and apparatus for error recovery performed at the access node of a core network
KR100240645B1 (ko) 멀티캐스트 통신의 패킷 오류 제어기 및 이를 이용한패킷 오류제어 방법
JP2005520374A (ja) Tcp/ipに対する変更
US8238335B2 (en) Multi-route transmission of packets within a network
US6826152B1 (en) System and method of conserving bandwidth in the transmission of message packets
CN106130746A (zh) 一种数据传输方法及装置
US20120054310A1 (en) Terminal, intermediate node and communication method of the same
JP2006295847A (ja) 再送制御装置
US7561523B1 (en) Method and apparatus for flow control in a reliable multicast communication system
JP2003174478A (ja) マルチキャスト通信方式、マルチキャスト通信に用いる中継ノード装置、及び、中継ノード装置における送信制御方法
JP2004349891A (ja) パケット送信装置、パケット受信装置、方法及びプログラム
JP2002077240A (ja) フロー制御方式およびそれを実行する送信端末

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): JP US

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE

121 Ep: the epo has been informed by wipo that ep was designated in this application
WWE Wipo information: entry into national phase

Ref document number: 2000939154

Country of ref document: EP

Ref document number: 10069246

Country of ref document: US

WWP Wipo information: published in national office

Ref document number: 2000939154

Country of ref document: EP