JP4973749B2 - Communication apparatus and communication control method - Google Patents
Communication apparatus and communication control method Download PDFInfo
- Publication number
- JP4973749B2 JP4973749B2 JP2010045387A JP2010045387A JP4973749B2 JP 4973749 B2 JP4973749 B2 JP 4973749B2 JP 2010045387 A JP2010045387 A JP 2010045387A JP 2010045387 A JP2010045387 A JP 2010045387A JP 4973749 B2 JP4973749 B2 JP 4973749B2
- Authority
- JP
- Japan
- Prior art keywords
- packet
- received
- unit
- packets
- sequence number
- Prior art date
- Legal status (The legal status 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 status listed.)
- Active
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
- Communication Control (AREA)
Description
本発明は、通信装置及び通信制御方法に関する。 The present invention relates to a communication device and a communication control method.
データを小分けされたパケットに変換して伝送するパケット通信においては、通常マルチパス伝送方式が採用されている。マルチパス伝送方式においては、送信元からのパケットの送信順と、受信元でのパケットの受信順とを一致させるための技術が開発されている。 In packet communication in which data is converted into subdivided packets and transmitted, a multipath transmission method is usually employed. In the multipath transmission method, a technique for matching the transmission order of packets from a transmission source with the reception order of packets at a reception source has been developed.
例えば、下記の非特許文献1には、パケットベースでマルチパスにルーティングする一連のパケットフローを、複数のパスに振り分けるルータが、そのノードでのパケットの到着間隔によって振り分けるパスを決定する技術が開示されており、これにより受信ノードでのパケットの到着順序が送信ノードのパケット送信順序と同一になるようにしている。
For example, the following Non-Patent
また例えば、下記の特許文献1には、1セッションを複数のパスを使って送信するマルチパス環境で、受信バッファの先頭にあるパケット番号からパケットロスを素早く検出する技術が開示されており、ロスしているパケットの再送を要求することで、受信ノードでのパケットの到着順序が送信ノードのパケット送信順序と同一にすることができる。
Further, for example,
しかし、非特許文献1に記載された技術のように送信側でパケットの送信を制御しても、宛先で順序通りにパケットが受信出来るとは限らない。ネットワークのリソースの使用状態は時々刻々と変化するので、送信時に想定していたパケット到着までの遅延時間が正しいとは限らないからである。またネットワークによっては経路の途中で経路が分岐したり、分岐した経路が再び合流等したりすることで順序が入れ替わってしまう場合もあり得る。この場合に、送信側で到着順序の保証を制御することは困難である。
However, even if packet transmission is controlled on the transmission side as in the technique described in Non-Patent
例えば、1パケット受信するごとにパケットを送信し、欠落していると判断されるパケットの再送を要求する制御下で、例えば10番までのパケットを受信し、その後に図7に示したような順番で、パケットを受信側で受信した場合を考える。この場合に、経路途中での順序の逆転を想定していなければ、受信側に13番のパケットが到着した時点で、受信側で11番及び12番のパケットは欠落していると判断され、11番及び12番のパケットの再送が受信側から要求される。 For example, a packet is transmitted every time one packet is received, and, for example, packets up to No. 10 are received under the control of requesting retransmission of a packet determined to be missing, and thereafter, as shown in FIG. Consider the case where packets are received on the receiving side in order. In this case, if it is not assumed that the order is reversed in the middle of the route, it is determined that the 11th and 12th packets are missing on the receiving side when the 13th packet arrives on the receiving side, The receiving side requests retransmission of the 11th and 12th packets.
また、同様の制御下で、20番までのパケットを受信し、その後に図18に示したような順番で、パケットを受信側で受信した場合を考える。この場合も、経路途中での順序の逆転を想定していなければ、受信側に27番のパケットが到着した時点で21番から26番のパケットが欠落していると判断され、21番から26番のパケットの再送が受信側から要求される。 Also, consider a case where packets up to No. 20 are received under the same control, and then packets are received on the receiving side in the order shown in FIG. Also in this case, if it is not assumed that the order is reversed in the middle of the route, it is determined that the 21st to 26th packets are missing when the 27th packet arrives at the receiving side. No. packet is requested to be retransmitted.
このように、マルチパス伝送方式によってパケットが送信される場合に、ある1つの経路で、さらに経路が分岐することでパケットの順序が入れ替わる場合には、受信端末が持つ複数の受信バッファの先頭にあるパケットからだけではパケットロスの判断が早すぎてしまい、実際にはロスしていないパケットまでも再送の対象となってしまう。 In this way, when a packet is transmitted by the multipath transmission method, if the order of the packets is switched by further branching the route along a certain route, it is placed at the head of the plurality of reception buffers of the receiving terminal. A packet loss is judged too early from a certain packet, and even a packet that is not actually lost is subject to retransmission.
例えば、20番までのパケットを受信し、その後に図18に示したような順番で、パケットを受信側で受信した場合を考える。そして、例えば特許文献1において述べられている状況、すなわち送信端末のIF(インタフェース)1、2から送られたパケットが受信端末のIF3、4で受信されるとする。この場合に、IF3で27番のパケットを、IF4で26番のパケットを受信バッファにて受け取ったとすると、特許文献2で開示された技術を用いると、受信バッファの先頭にあるパケットから、パケットがロスしているかどうかを判断するので、21番から25番のパケットが欠落していると判断され、21番から25番のパケットの再送が受信端末から要求される。
For example, consider a case where packets up to No. 20 are received, and then packets are received on the receiving side in the order shown in FIG. For example, suppose that the situation described in
このように、従来は実際にはロスしていないパケットまでも再送の対象となることでパケットの再送回数が増大し、ネットワーク上に無駄なトラフィックが流れてしまうという問題があった。 As described above, conventionally, even packets that are not actually lost are subject to retransmission, which increases the number of retransmissions of the packets and causes a problem that unnecessary traffic flows on the network.
そこで、本発明は、上記問題に鑑みてなされたものであり、本発明の目的とするところは、送信側で順序番号を付与された送信パケットに対して、受信側で到着したパケットの並びから経路の分岐数を推定し、受信側で順序番号通りパケットが届いていない場合であっても推定した分岐数から順序逆転が起こっていることを判断して再送応答の判断を遅らせることで、パケットの再送回数を減少させることが可能な、新規かつ改良された通信装置及び通信制御方法を提供することにある。 Therefore, the present invention has been made in view of the above problems, and an object of the present invention is to determine from a sequence of packets arriving at the reception side with respect to transmission packets assigned sequence numbers at the transmission side. By estimating the number of branches on the route, and even if the packet does not arrive as the sequence number on the receiving side, it is determined that order reversal has occurred based on the estimated number of branches, and the packet is retransmitted and delayed. It is an object of the present invention to provide a new and improved communication apparatus and communication control method capable of reducing the number of retransmissions.
上記課題を解決するために、本発明のある観点によれば、所定区切りの一連のパケットがネットワークを介して送信端末から順序番号が付与されて送信されたパケットを受信する受信端末において、パケットを受信するパケット受信部と、前記パケット受信部が受信したパケットの受信順から前記ネットワークの経路の分岐数を推定して計算する推定部と、前記受信順及び前記分岐数から前記経路の途中で欠落したパケットを判定する欠落判定部と、前記パケット受信部が受信したパケットを保持するパケット保持部と、前記パケット保持部に保持されているパケット及び前記欠落判定部で欠落と判定されたパケットの順序番号とから、欠落したパケットの再送を前記送信端末へ要求する応答部と、を備えることを特徴とする、通信装置が提供される。 In order to solve the above-described problem, according to one aspect of the present invention, a receiving terminal that receives a packet in which a sequence of predetermined packets is assigned a sequence number from a transmitting terminal via a network is received by a receiving terminal. A packet receiving unit for receiving, an estimation unit for estimating and calculating the number of branches of the network path from the reception order of the packets received by the packet receiving unit, and missing in the middle of the route from the reception order and the number of branches A loss determination unit that determines a received packet; a packet holding unit that holds a packet received by the packet reception unit; a packet that is held in the packet holding unit; and an order of packets that are determined to be missing by the loss determination unit And a response unit that requests the transmitting terminal to retransmit the missing packet based on the number. It is.
前記推定部は、前記順序番号n番(nは0以上の整数)までのパケットを前記パケット受信部が全て受信した後、順序番号n+1番より大きいm番(mは2以上の整数)のパケットを前記パケット受信部が受信した場合に、その後順序番号n+1番からm番までの全てのパケットを前記パケット受信部が受信するまでの間に前記パケット受信部が受信した最大の順序番号のパケットと順序番号n+1番のパケットとの間に入る全ての受信パケットについて、前記受信パケットを前記パケット受信部が受信した順に並べた列で順序番号が降順に並ぶ個数が最大となるように選んだ列における、順序番号が降順に並ぶ個数を前記経路の分岐数と推定してもよい。 The estimation unit receives the packets up to the sequence number n (n is an integer equal to or greater than 0) and then receives all the packets of the sequence number n + 1 (m is an integer equal to or greater than 2). When the packet receiving unit receives the packet, the packet having the largest sequence number received by the packet receiving unit until the packet receiving unit receives all the packets from the sequence numbers n + 1 to m For all received packets that fall between packets of sequence number n + 1, in a column selected so that the number of sequence numbers in descending order is the maximum in the sequence in which the received packets are arranged in the order received by the packet receiver. The number of the order numbers arranged in descending order may be estimated as the number of branches of the route.
前記欠落判定部は、前記順序番号n番(nは0以上の整数)までのパケットを前記パケット受信部が全て受信した後、順序番号n+1番より大きいm番(mは2以上の整数)のパケットを前記パケット受信部が受信した場合に、その後順序番号n+1番からm番までの全てのパケットを前記パケット受信部が受信するまでの間に前記パケット受信部が受信した最大の順序番号のパケットと順序番号n+1番のパケットとの間に入る全ての受信パケットについて、前記受信パケットを前記パケット受信部が受信した順に並べた列で順序番号が降順に並ぶ個数が、前記推定部が推定した前記経路の分岐数以上になるものがあれば、順序番号n+1番から、前記受信パケットのうち順序番号n+1番より大きいものの中で最小の順序番号の1つ手前までのパケットが欠落していると判定してもよい。 After the packet receiving unit has received all the packets up to the order number n (n is an integer equal to or greater than 0), the missing determination unit is the mth greater than the sequence number n + 1 (m is an integer equal to or greater than 2). When the packet receiving unit receives the packet, the packet having the maximum sequence number received by the packet receiving unit before the packet receiving unit receives all the packets from the sequence numbers n + 1 to m And for all received packets that fall between the packets of sequence number n + 1, the number estimated by the estimation unit is the number of the sequence numbers arranged in descending order in the sequence in which the received packets are arranged in the order received by the packet reception unit. If there is a packet whose number is greater than or equal to the number of branches in the route, the sequence number n + 1 is one prior to the smallest sequence number among the received packets that are greater than the sequence number n + 1. Packet may be determined to be missing at.
前記応答部は、前記順序番号n番(nは0以上の整数)までのパケットを前記パケット受信部が全て受信した後、前記パケット受信部がパケットを受信しても順序番号n+1番のパケットが前記パケット保持部に存在しない場合、順序番号n+1番のパケットの欠落を前記欠落判定部が判定するまでパケットの再送の要求を控えてもよい。 The response unit receives a packet up to the sequence number n (n is an integer equal to or greater than 0) after the packet reception unit receives the packet, and the packet of the sequence number n + 1 is received even if the packet reception unit receives the packet. If the packet holding unit does not exist, a packet retransmission request may be withheld until the missing determination unit determines that the packet with the sequence number n + 1 is missing.
また、上記課題を解決するために、本発明の別の観点によれば、所定区切りの一連のパケットがネットワークを介して、送信端末から複数の送信インタフェースによって順序番号及びインタフェース識別子が付与されて送信されたパケットを受信する受信端末において、パケットを受信するパケット受信部と、前記パケット受信部が受信したパケットの受信順及び前記インタフェース識別子から前記ネットワークの経路の分岐数を推定して計算する推定部と、前記受信順、前記インタフェース識別子及び前記分岐数から前記経路の途中で欠落したパケットを判定する欠落判定部と、前記パケット受信部が受信したパケットを保持するパケット保持部と、前記パケット保持部に保持されているパケット及び前記欠落判定部で欠落と判定されたパケットの順序番号とから、欠落したパケットの再送を要求する応答部と、を備えることを特徴とする、通信装置が提供される。 In order to solve the above-described problem, according to another aspect of the present invention, a series of packets delimited by a predetermined number are transmitted from a transmission terminal with a sequence number and an interface identifier by a plurality of transmission interfaces via a network. In a receiving terminal that receives the received packet, a packet receiving unit that receives the packet, and an estimation unit that estimates and calculates the number of branches of the network path from the reception order of the packets received by the packet receiving unit and the interface identifier A loss determination unit that determines a packet that is lost during the route from the reception order, the interface identifier, and the number of branches, a packet holding unit that holds a packet received by the packet reception unit, and the packet holding unit And packets determined to be missing by the missing decision unit. And a Tsu preparative sequence number, and a response unit which requests the retransmission of the missing packets, characterized in that it comprises a communication device is provided.
前記推定部は、前記順序番号n番(nは0以上の整数)までのパケットを前記パケット受信部が全て受信した後、順序番号n+1番より大きいm番(mは2以上の整数)のパケットを前記パケット受信部が受信した場合に、その後順序番号n+1番からm番までの全てのパケットを前記パケット受信部が受信するまでの間に前記パケット受信部が受信した最大の順序番号のパケットと順序番号n+1番のパケットとの間に入る全ての受信パケットについて、前記受信パケットからある送信インタフェースからの受信パケットを抽出して前記パケット受信部が受信した順に並べた列で順序番号が降順に並ぶ個数が最大となるように選んだ列における、順序番号が降順に並ぶ個数を該送信インタフェースにおける前記経路の分岐数と推定してもよい。 The estimation unit receives the packets up to the sequence number n (n is an integer equal to or greater than 0) and then receives all the packets of the sequence number n + 1 (m is an integer equal to or greater than 2). When the packet receiving unit receives the packet, the packet having the largest sequence number received by the packet receiving unit until the packet receiving unit receives all the packets from the sequence numbers n + 1 to m For all received packets that fall between the packets of sequence number n + 1, the sequence numbers are arranged in descending order in a sequence in which the received packets from a transmission interface are extracted from the received packets and arranged in the order received by the packet receiver. In the column selected so as to maximize the number, the number of the sequence numbers arranged in descending order may be estimated as the number of branches of the route in the transmission interface. .
前記欠落判定部は、前記順序番号n番(nは0以上の整数)までのパケットを前記パケット受信部が全て受信した後、順序番号n+1番より大きいm番(mは2以上の整数)のパケットを前記パケット受信部が受信した場合に、その後順序番号n+1番からm番までの全てのパケットを前記パケット受信部が受信するまでの間に前記パケット受信部が受信した最大の順序番号のパケットと順序番号n+1番のパケットとの間に入る全ての受信パケットについて、前記受信パケットからある送信インタフェースからの受信パケットを抽出して前記パケット受信部が受信した順に並べた列で順序番号が降順に並ぶ個数が、前記推定部が推定した前記経路の分岐数以上になるものが全ての送信インタフェースについて成立すれば、順序番号n+1番から、前記受信パケットのうち順序番号n+1番より大きいものの中で最小の順序番号の1つ手前までのパケットが欠落していると判定してもよい。 After the packet receiving unit has received all the packets up to the order number n (n is an integer equal to or greater than 0), the missing determination unit is the mth greater than the sequence number n + 1 (m is an integer equal to or greater than 2). When the packet receiving unit receives the packet, the packet having the maximum sequence number received by the packet receiving unit before the packet receiving unit receives all the packets from the sequence numbers n + 1 to m For all received packets that fall between the packet and the sequence number n + 1, the sequence number is descending in a sequence in which the received packets from a transmission interface are extracted from the received packets and arranged in the order received by the packet receiver. If the number of lines equal to or greater than the number of branches of the route estimated by the estimation unit is established for all transmission interfaces, the sequence number n + 1 Et al., It may be determined that packets up to one before the smallest sequence number among those larger than the sequence number n + 1 th of the received packet is missing.
前記応答部は、前記順序番号n番(nは0以上の整数)までのパケットを前記パケット受信部が全て受信した後、前記パケット受信部がパケットを受信しても順序番号n+1番のパケットが前記パケット保持部に存在しない場合、順序番号n+1番のパケットの欠落を前記欠落判定部が判定するまでパケットの再送の要求を控えるようにしてもよい。 The response unit receives a packet up to the sequence number n (n is an integer equal to or greater than 0) after the packet reception unit receives the packet, and the packet of the sequence number n + 1 is received even if the packet reception unit receives the packet. If the packet holding unit does not exist, the packet retransmission request may be refrained until the missing determination unit determines that the packet with the sequence number n + 1 is missing.
また、上記課題を解決するために、本発明の別の観点によれば、所定区切りの一連のパケットがネットワークを介して送信端末から順序番号が付与されて送信されたパケットを受信するパケット受信ステップと、前記パケット受信ステップで受信したパケットの受信順から前記ネットワークの経路の分岐数を推定して計算する推定ステップと、前記受信順及び前記分岐数から前記経路の途中で欠落したパケットを判定する欠落判定ステップと、前記パケット受信ステップで受信したパケットを保持するパケット保持ステップと、前記パケット保持ステップで保持されているパケット及び前記欠落判定ステップで欠落と判定されたパケットの順序番号とから、欠落したパケットの再送を前記送信端末へ要求する応答ステップと、を備えることを特徴とする、通信制御方法が提供される。 In order to solve the above-described problem, according to another aspect of the present invention, a packet receiving step of receiving a packet in which a sequence of predetermined packets is transmitted with a sequence number assigned from a transmitting terminal via a network. And an estimation step of estimating and calculating the number of branches of the network path from the reception order of the packets received in the packet reception step, and determining a packet lost in the middle of the path from the reception order and the number of branches Missing from the missing decision step, the packet holding step for holding the packet received in the packet receiving step, the packet held in the packet holding step and the sequence number of the packet determined to be missing in the missing decision step A response step for requesting the transmitting terminal to retransmit the received packet. The symptom, the communication control method is provided.
また、上記課題を解決するために、本発明の別の観点によれば、所定区切りの一連のパケットがネットワークを介して送信端末から複数の送信インタフェースによって順序番号及びインタフェース識別子が付与されて送信されたパケットを受信するパケット受信ステップと、前記パケット受信ステップで受信したパケットの受信順及び前記インタフェース識別子から前記ネットワークの経路の分岐数を推定して計算する推定ステップと、前記受信順、前記インタフェース識別子及び前記分岐数から前記経路の途中で欠落したパケットを判定する欠落判定ステップと、前記パケット受信ステップで受信したパケットを保持するパケット保持ステップと、前記パケット保持ステップで保持されているパケット及び前記欠落判定ステップで欠落と判定されたパケットの順序番号とから、欠落したパケットの再送を要求する応答ステップと、を備えることを特徴とする、通信制御方法が提供される。 In order to solve the above problem, according to another aspect of the present invention, a series of predetermined packets are transmitted from a transmission terminal via a network with a sequence number and an interface identifier assigned by a plurality of transmission interfaces. A packet receiving step for receiving received packets, an estimation step for estimating and calculating the number of branches of the network path from the reception order of the packets received in the packet receiving step and the interface identifier, the reception order, and the interface identifier And a loss determination step for determining a lost packet in the middle of the route from the number of branches, a packet holding step for holding a packet received in the packet receiving step, a packet held in the packet holding step, and the missing packet Judgment is missing in the judgment step And a is the order number of the packet, characterized in that it comprises a response requesting retransmission of missing packets, the communication control method is provided.
以上説明したように本発明によれば、送信側で順序番号を付与された送信パケットに対して、受信側で到着したパケットの並びから経路の分岐数を推定し、受信側で順序番号通りパケットが届いていない場合であっても推定した分岐数から順序逆転が起こっていることを判断して再送応答の判断を遅らせることで、パケットの再送回数を減少させることが可能な、新規かつ改良された通信装置及び通信制御方法を提供することができる。 As described above, according to the present invention, for a transmission packet to which a sequence number is assigned on the transmission side, the number of path branches is estimated from the sequence of packets that have arrived on the reception side, and packets are transmitted according to the sequence number on the reception side. Even if the packet has not arrived, it is possible to reduce the number of packet retransmissions by delaying the determination of the retransmission response by judging that the order reversal has occurred from the estimated number of branches. A communication apparatus and a communication control method can be provided.
以下に添付図面を参照しながら、本発明の好適な実施の形態について詳細に説明する。なお、本明細書及び図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複説明を省略する。 Exemplary embodiments of the present invention will be described below in detail with reference to the accompanying drawings. In addition, in this specification and drawing, about the component which has the substantially same function structure, duplication description is abbreviate | omitted by attaching | subjecting the same code | symbol.
<1.第1の実施形態>
[1−1.通信システムの構成]
まず、図1を参照して、本発明の第1の実施形態に係る通信システムの概略構成について説明する。図1に示したように、本発明の第1の実施形態に係る通信システム1は、送信端末100Aから受信端末100Bに対して、ネットワーク10を介して、順序番号を付与したパケットの形式で送信したいデータを送信する。本実施形態においては、パケットを再送する場合を除き、原則として順序番号の昇順でパケットを送信する。
<1. First Embodiment>
[1-1. Configuration of communication system]
First, a schematic configuration of a communication system according to the first embodiment of the present invention will be described with reference to FIG. As shown in FIG. 1, the
一方、受信端末100Bは、本発明の通信装置の一例であり、送信端末100Aから送信されるパケットを受信すると、順序番号の最初から初めて抜けなく受信した一連のパケットの内の最大の番号や、欠落しているパケットの番号を応答パケットとして送信端末100Aへ送信する。この応答パケットを送信端末100Aが受信することで、送信端末100Aは次に送信するパケットの順序番号を制御する。このような通信制御は、TCP(Transmission Control Protocol)等の通信方式に見られるものである。本実施形態は、このような制御下における主に応答パケットの制御に関わるものである。 On the other hand, the receiving terminal 100B is an example of the communication device of the present invention, and when receiving a packet transmitted from the transmitting terminal 100A, the maximum number in a series of packets received without omission for the first time from the beginning of the sequence number, The number of the missing packet is transmitted as a response packet to the transmission terminal 100A. When the transmission terminal 100A receives this response packet, the transmission terminal 100A controls the sequence number of the next packet to be transmitted. Such communication control is found in communication systems such as TCP (Transmission Control Protocol). The present embodiment mainly relates to response packet control under such control.
パケットが流れるネットワーク10の内部では、経路途中のルータ(図示せず)等がパケットを複数の経路に振り分けることで、経路が分岐され得る。図1に示した分岐はその状態を表したものである。送信端末100A、受信端末100Bは、ネットワーク10の中のパケットが通る経路や分岐の数については把握していない。なお、以下の説明では、ネットワーク10は複数の経路に分岐されているものとして説明するが、本発明は、送信端末100Aと受信端末100Bとの間に分岐が全く無い場合であっても同様に適用できるものである。
Inside the
以上、図1を参照して、本発明の第1の実施形態に係る通信システムの概略構成について説明した。次に、本発明の第1の実施形態にかかる受信端末100Bの構成について説明する。 The schematic configuration of the communication system according to the first embodiment of the present invention has been described above with reference to FIG. Next, the configuration of the receiving terminal 100B according to the first embodiment of the present invention will be described.
[1−2.受信端末の構成]
図2は、本発明の第1の実施形態にかかる受信端末100Bの構成を示す説明図である。以下、図2を用いて本発明の第1の実施形態にかかる受信端末100Bの構成について説明する。
[1-2. Configuration of receiving terminal]
FIG. 2 is an explanatory diagram showing the configuration of the receiving terminal 100B according to the first embodiment of the present invention. Hereinafter, the configuration of the receiving terminal 100B according to the first embodiment of the present invention will be described with reference to FIG.
図2に示したように、本発明の第1の実施形態にかかる受信端末100Bは、パケット受信部120と、推定部130と、欠落判定部140と、バッファ150と、データ受信部160と、応答部170と、情報部180と、を含んで構成される。
As shown in FIG. 2, the receiving terminal 100B according to the first embodiment of the present invention includes a
パケット受信部120は、送信端末100Aから送信されてくる、順序番号が付与されたパケットを受信するものであり、パケット受信部120は受信したパケットを送信されてきた順序通りにバッファ150に渡す。
The
推定部130は、情報部180が保持している経路の分岐数の推定値と、データ受信部160が受信した最後尾のパケットの順序番号とを取得し、この順序番号と、分岐数の推定値と、パケット受信部120が受信したパケットの並びとから、送信経路途中での分岐数を推定するものである。推定部130が推定した分岐数の推定値は情報部180に送られる。
The
本実施形態では、送信経路途中での分岐数は以下のように推定する。 In this embodiment, the number of branches in the middle of the transmission path is estimated as follows.
パケット受信部120で受信しているパケットは、送信端末100Aが受信端末100Bに対して順序番号の昇順に送信したパケットとする。これは、受信端末100Bからの応答パケットによって既に送信端末100Aが送信した順序番号の小さいパケットを、再度送っていない状態である。このことは、受信端末100Bにおいても、自身の送信する応答パケットによって判断する。
The packet received by the
推定部130は、情報部180から分岐数の推定値kを取得するとともに、データ受信部160が受信した最後尾のパケットの順序番号を取得する。データ受信部160は、順序番号がn番目(n=0,1,2,・・・)までのパケットを全て受け取っているとすると、n=0の場合は、データ受信部160は未だパケットを受け取っていない。その後、順序番号がn番目より大きいm番目のパケットをパケット受信部120が受信したとする。m−n≦kの場合は、推定部130は、kを分岐数の推定値とする。一方、m−n>kである場合、推定部130は、先のm番目のパケットを含め、以降受信するn番目よりも順序番号が大きいパケットから選んだパケットを、パケット受信部120が受信した順に並べる。そして推定部130は、このパケット列について、順序番号が降順に並ぶ個数を数え上げる。ただし順序番号は連続していなくても良い。またパケットが1つの場合にはその個数を1とする。例えば、順序番号が13、11と並んでいれば、順序番号が降順に並ぶ個数は2であり、順序番号が13しかない場合には、順序番号が降順に並ぶ個数は1となる。
The
m−n>kである場合、推定部130は、この個数が最大となるようにパケット列を選び、この列の順序番号が降順に並ぶ個数を分岐数の推定値とする。これは、通常であれば順序番号の昇順でパケットが到着するが、ネットワーク10で分岐があることで、パケットの到達順序が逆になることがある。従って、本実施形態では順序番号が降順の並ぶ個数を分岐の数と推定する。
When m−n> k, the
数え上げる対象とするパケットは、順序番号がn+1番目からm番目までの全てのパケットをパケット受信部120が受信するまでの間に、パケット受信部120が受信した順序番号が最大の番号と、n+1番目のとの間に入る全てのパケットである(順序番号がn+1番目のパケットも含まれる)。例えば、n=10、m=13の場合に、図7に示したような順序で受信端末100Bがパケットを受信したとする。この場合は、パケット受信部120が、n+1=11番からm=13番までの全てのパケット、すなわち11番と12番のパケットを受信するまでに受信したパケットの最大の番号は16番である。このときに、11番から16番の間に入る全てのパケット、すなわち11、12、13、14、15、16番が数え上げの対象となる。そして、順序番号が降順に並ぶ個数の最大値は、16、15、12または16、15、14の場合の「3」となる。
The packets to be counted are the number with the largest sequence number received by the
図7に示したようにパケットが受信端末100Bに到達した場合、例えば図10に示したような経路で送信端末100Aから受信端末100Bに転送される。この場合の分岐数の推定値は「3」である。
When the packet arrives at the receiving
欠落判定部140は、パケット受信部120で受信したパケットの並びと、情報部180が保持している、データ受信部160が受信した最後尾の順序番号と、情報部180が保持している、分岐数の推定値kとから、パケットが未到着なのか、経路途中で欠落しているのかを判定するものである。欠落判定部140は、パケットが欠落していると判定すると、応答部170に対して欠落しているパケットの順序番号を通知する。
The missing
欠落判定部140によるパケットの欠落判定方法について以下で説明する。
A packet loss determination method by the
情報部180が保持している、データ受信部160が受信した最後尾の順序番号がn番目(n=0,1,2,・・・)であったとする。次に欠落判定部140は、パケット受信部120で、順序番号がn+1番目より大きいm番目のパケットを受信した場合に、そのパケットを含め、以降受信するn+1番目よりも順序番号が大きいパケットから選んだパケットを、パケット受信部120が受信した順に並べる。そして、このパケット列について、順序番号が降順に並ぶ個数を数える。ただし、順序番号は連続していなくても良い。この個数がk個以上になるパケット列があれば、欠落判定部140は、n+1番目から、これまで受信したn+1番目より大きい番号の中で最小の順序番号の1つ手前までのパケットが欠落していると判定する。
It is assumed that the last sequence number received by the
バッファ150は、パケット受信部120からパケットを受け取るものであり、バッファ150が受け取ったパケットは、順序番号の昇順に、重複無くデータ受信部160へ送られる。また、データ受信部160に送られた順序番号の最後尾の番号はバッファ150から情報部180に送られる。パケット受信部120から受け取ったパケットがバッファ150に存在しているパケットと重複したり、既にデータ受信部160に送ったパケットと同じものであったりした場合には、そのパケットはバッファ150から破棄される。
The
データ受信部160は、バッファ150から渡されたパケットを受信するものである。
The
応答部170は、送信端末100Aがパケットを送る数や番号を制御するための応答パケットを生成して送信するものである。応答パケットの送信を行うために、応答部170は情報部180から、データ受信部160が受信した最後尾の順序番号nを取得する。また応答部170は、欠落判定部140から欠落しているパケットの情報も取得する。
The
応答部170が生成する応答パケットの内容は、(1)どの順序番号のパケットまで正しい順序で受け取ったかを知らせるものであってもよく、(2)特定の順序番号のパケットの再送を要求するものであってもよい。いずれの内容のパケットであっても、応答パケットを受信した送信端末100Aは、どのパケットが受信端末100Bに送られていないのかが分かり、送信端末100Aは受信端末100Bに届けるべきパケットを再送することが出来る。
The content of the response packet generated by the
なお、受信端末100Bからの応答パケットは、送信端末100Aと受信端末100Bとの間で予め定められた制御のタイミングで、上記(1)または(2)の少なくともいずれかの内容が記述されて、受信端末100Bから送信端末100Aへ送信される。 The response packet from the receiving terminal 100B describes at least one of the contents of (1) or (2) at a predetermined control timing between the transmitting terminal 100A and the receiving terminal 100B. The data is transmitted from the receiving terminal 100B to the transmitting terminal 100A.
応答部170は、応答パケットを送るタイミングになった場合に、バッファ150にパケットが無いときは、予め定められた上記(1)または(2)の少なくともいずれかの内容で応答パケットを送信する。一方、応答部170は、応答パケットを送るタイミングになった場合に、バッファ150にパケットがあるとき、すなわち順序番号どおりにパケットが届いておらず、抜けている順序番号のパケットがあるのでバッファ150にパケットがあるときは、上記(1)または(2)の内容を送信する場合であっても、欠落判定部140から欠落している順序番号を受け取るまで応答パケットの送信を控える。ただし、(2)の場合には、その抜けているパケットが無いものとして、すなわちその抜けているパケットの再送を要求しない内容で、応答部170は応答パケットを送信しても良い。その後、欠落判定部140からパケット欠落の通知があれば、応答部170はそのパケットの欠落を送信端末100Aに通知する。
When it is time to send a response packet, when there is no packet in
情報部180は、推定部130が推定した経路の分岐数の推定値と、バッファ150がデータ受信部160に送ったパケットのうち最後尾の順序番号とを保存する。情報部180が保存する、経路の分岐数の推定値の初期値は1である。また、最後尾の順序番号は、この番号以前の順序番号のパケットを、データ受信部160が全て受信していることを保証するものである。
The
以上、図2を用いて本発明の第1の実施形態にかかる受信端末100Bの構成について説明した。次に、本発明の第1の実施形態にかかる受信端末100Bの動作について説明する。 The configuration of the receiving terminal 100B according to the first embodiment of the present invention has been described above using FIG. Next, the operation of the receiving terminal 100B according to the first embodiment of the present invention will be described.
[1−3.受信端末の動作]
上述したように、パケット受信部120は、送信端末100Aから送信された、順序番号が付与されたパケットを受信し、送られてきた順序通りにバッファ150に受信したパケットを渡す。
[1-3. Operation of receiving terminal]
As described above, the
図3は、本発明の第1の実施形態にかかる受信端末100Bに含まれる推定部130の動作について示す流れ図である。以下、図3を用いて推定部130の動作について詳細に説明する。
FIG. 3 is a flowchart showing the operation of the
前提として、パケット受信部120で受信しているパケットは、送信端末100Aが受信端末100Bに対して順序番号の昇順に送信したパケットであるとする。推定部130は、情報部180から、分岐数の推定値kを取得するとともに、データ受信部160が受信した最後尾のパケットの順序番号nを取得する(ステップS301)。
It is assumed that the packet received by the
続いて、推定部130は、パケット受信部120が新たに受信したパケットの順序番号mを取得する(ステップS302)。推定部130は、m−n≦kとなるかどうかを判定し(ステップS303)、m−n≦kであれば後段のステップS308へ進むが、k<m−nであれば、推定部130は、パケット受信部120が順序番号mのパケットの次に受信したパケットの順序番号を取得する(ステップS304)。
Subsequently, the estimating
続いて、推定部130は、順序番号mのパケットを含め、これまで取得した、順序番号nよりも順序番号が大きいパケットから選んだパケットを、パケット受信部120が受信した順に整列し、このパケット列について、順序番号が降順に並ぶ個数dを計数する(ステップS305)。数え上げの対象とするパケットは、順序番号がn+1番目からm番目までの全てのパケットをパケット受信部120が受信するまでの間に、パケット受信部120が受信した順序番号が最大のパケットと、順序番号がn+1番のパケットとの間に入る全てのパケットである。推定部130は、この個数が最大となるように選んだパケット列について、順序番号が降順に並ぶ個数dを分岐数の推定値の候補とする。
Subsequently, the
推定部130は、上記ステップS305で数え上げた、順序番号が降順に並ぶ個数が最大となるように選んだパケット列について、順序番号が降順に並ぶ個数dを分岐数の推定値kの候補とする(ステップS306)。そして推定部130は、順序番号がn+1番目からm番目までの全てのパケットをパケット受信部120が受信するまでの間に、パケット受信部120が受信した順序番号が最大のパケットと、順序番号がn+1番のパケットとの間に入る全てのパケットを受信したかどうかを判断する(ステップS307)。全てのパケットを受信していれば、推定部130は上記ステップS306で候補とした分岐数の推定値kを情報部180に保存する(ステップS308)。一方、まだ全てのパケットを受信していなければ、上記ステップS304に戻って、推定部130は、さらに次に受信したパケットの順序番号を取得する処理を実行する。
The
このように、推定部130はネットワーク10における分岐数を推定することができる。受信端末100Bは、この推定部130が推定した分岐数を用いて、パケットが欠落しているかどうかの判定を行うことができる。
Thus, the
以上、図3を用いて推定部130の動作について詳細に説明した。次に、本発明の第1の実施形態にかかる受信端末100Bに含まれる欠落判定部140の動作について説明する。
The operation of the
図4は、本発明の第1の実施形態にかかる受信端末100Bに含まれる欠落判定部140の動作を示す流れ図である。以下、図4を用いて欠落判定部140の動作について詳細に説明する。
FIG. 4 is a flowchart showing the operation of the
まず、欠落判定部140はパケットの欠落判定処理に際し、情報部180から、分岐数の推定値kと、データ受信部160が受信した最後尾のパケットの順序番号nとを取得する(ステップS401)。次に、欠落判定部140はパケット受信部120が新たに受信したパケットの順序番号mを受け取り(ステップS402)、n+1<mとなっているかどうかを判定する(ステップS403)。
First, at the time of packet loss determination processing, the
上記ステップS403の判定の結果、n+1≧mである場合には、欠落判定部140は、受信パケットに欠落は発生していないと判断し、処理を終了する。一方、上記ステップS403の判定の結果、n+1<mである場合には、続いて欠落判定部140はk=1であるかどうかを判定する(ステップS404)。
If n + 1 ≧ m is determined as a result of the determination in step S403, the
上記ステップS404の判定の結果、情報部180が保持している分岐数kの値がk=1である場合には、受信パケットに欠落が発生していると判断し、欠落判定部140は応答部170へパケットの欠落を通知する(ステップS405)。このステップS405では、欠落判定部140は、n+1番目から、これまで受信したn+1番より大きい番号の中で最小の順序番号の一つ手前までの順序番号のパケットが欠落していると判定し、応答部170へパケットの欠落を通知する。
As a result of the determination in step S404, when the value of the number of branches k held in the
一方、上記ステップS404の判定の結果、情報部180が保持している分岐数kの値がk=1でない場合には、次に、欠落判定部140はパケット受信部120が次に受信したパケットの順序番号を取得する(ステップS406)。
On the other hand, as a result of the determination in step S404, if the value of the number of branches k held in the
上記ステップS406でパケット受信部120が次に受信したパケットの順序番号を取得すると、続いて欠落判定部140は、上記ステップS406で取得した順序番号がn+1であるかどうかを判定する(ステップS407)。
When the
上記ステップS407の判定の結果、上記ステップS406で取得した順序番号がn+1であるならば、欠落判定部140は処理を終了する。一方、上記ステップS407の判定の結果、上記ステップS406で取得した順序番号がn+1で無いならば、続いて欠落判定部140は、順序番号mのパケットを含め、これまでパケット受信部120から受け取ったn+1より大きい順序番号から選んだ順序番号を、パケット受信部120が受信した順に並べた列を対象に、ある番号から始めて順序番号が降順に並ぶ個数dを数え上げる(ステップS408)。
As a result of the determination in step S407, if the sequence number acquired in step S406 is n + 1, the
そして欠落判定部140は、上記ステップS408で数え上げた個数dについて、k≦dを満たす列が存在するかどうかを判定する(ステップS409)。k≦dを満たす列が1つでも存在すれば、受信パケットに欠落が発生していると判断し、欠落判定部140は応答部170へパケットの欠落を通知する(ステップS405)。一方、どの列のdについてもd<kであるならば、上記ステップS406に戻り、欠落判定部140はパケット受信部120が次に受信したパケットの順序番号を取得する。
Then, the missing
以上、図4を用いて欠落判定部140の動作について詳細に説明した。次に、本発明の第1の実施形態にかかる受信端末100Bに含まれるバッファ150の動作について説明する。
The operation of the
図5は、本発明の第1の実施形態にかかる受信端末100Bに含まれるバッファ150の動作を説明する流れ図である。以下、図5を用いてバッファ150の動作について説明する。
FIG. 5 is a flowchart for explaining the operation of the
まず、バッファ150はパケット受信部120からパケットを受け取ると(ステップS501)、受信したパケットに付与されている順序番号の小さい順に、受け取ったパケットをデータ受信部160へ渡す(ステップS502)。バッファ150は、欠落している順序番号のパケットがあれば、そのパケットがパケット受信部120から送られて来るまで待機する。また、既にデータ受信部160へ渡したものと重複しているパケットがあれば、バッファ150はそのパケットを破棄する。
First, when the
そして、バッファ150は、データ受信部160へ渡した最後のパケットの順序番号を情報部180に渡す。
Then, the
以上、図5を用いてバッファ150の動作について説明した。次に、本発明の第1の実施形態にかかる受信端末100Bに含まれる応答部170の動作について説明する。
The operation of the
図6は、本発明の第1の実施形態にかかる応答部170の動作について示す流れ図である。以下、図6を用いて第1の実施形態にかかる応答部170の動作について説明する。
FIG. 6 is a flowchart showing the operation of the
応答部170は、データ受信部160が受け取った最後のパケットの順序番号nを情報部180から取得する(ステップS601)。次に、応答部170はバッファ150にパケットが存在しているかどうかを確認する(ステップS602)。
The
上記ステップS602の確認の結果、バッファ150にパケットが無いか、または順序番号がn+1であるパケットがあれば、順序番号通りにパケットが受信出来ているので、応答部170は、予め定められた上記(1)または(2)の少なくともいずれかの内容で応答パケットを送信し、処理を終了する。
As a result of the confirmation in the step S602, if there is no packet in the
一方、上記ステップS602の確認の結果、バッファ150に順序番号がn+2以降のパケットが存在していれば、応答部170は欠落判定部140からの順序番号n+1のパケットの欠落の通知を受けているかどうかを確認する(ステップS603)。欠落判定部140からの順序番号n+1のパケットの欠落の通知を受けていなければ、上記ステップS602に戻り、応答部170は応答パケットの送信を控える。一方、欠落判定部140からの順序番号n+1のパケットの欠落の通知を受けていれば、応答部170は、送信端末100Aに対して、順序番号n+1のパケットが欠落していることを応答パケットにより通知する(ステップS604)。この通知は、予め定められた上記(1)または(2)の少なくともいずれかの内容によって行われる。
On the other hand, as a result of the confirmation in step S602, if there is a packet with the sequence number n + 2 or later in the
以上、図6を用いて第1の実施形態にかかる応答部170の動作について説明した。このように、応答部170は欠落判定部140からの順序番号n+1のパケットの欠落の通知を受けるまで応答パケットの送信を控えることで、ネットワーク10への無駄なトラフィックの発生を抑えることができる。
The operation of the
ここで、推定部130、欠落判定部140、バッファ150、応答部170の具体的な動作例を説明する。送信端末100Aは、受信端末100Bに対して、1、2、3、・・・と続く順序番号を付与したデータパケットを番号の昇順に送信している。以降、パケットの番号についての記述がある場合には、特に断らない限りこの順序番号を指す。受信端末100Bは、送信端末100Aが送信したデータパケットを受け取り、1パケットを受け取る度に1応答パケットを送信端末100Aに送信しているとする。
Here, specific operation examples of the
送信端末100Aから送信されるデータパケット、受信端末100Bから送信される応答パケット共に、経路途中のネットワーク10の中で、ルータ(図示せず)等によってパケットが複数の経路に分配されている可能性があるが、送信端末100A、受信端末100Bとも、いくつの経路に分配されているかは分からない。
There is a possibility that both a data packet transmitted from the transmitting terminal 100A and a response packet transmitted from the receiving
ここで、受信端末100Bが、10番まで順序通りにデータパケットを受信しており、データ受信部160が受信したパケットを全て受け取っているとする。これ以降、送信端末100Aから受信するパケットについての受信端末100Bの動作を、図面を参照しながら具体的に説明する。このとき、情報部180にはデータ受信部160が受信した最後の順序番号10番と、経路の分岐数の推定値k=1とが保存されている。
Here, it is assumed that the receiving terminal 100B has received data packets in order up to No. 10, and has received all the packets received by the
このとき、パケット受信部120が13番のパケットを受信したとする。パケット受信部120が受信した13番のパケットはバッファ150に渡される。そして、その13番のパケットも含め、図7に示した順序でパケット受信部120がパケットを受信した場合に、推定部130の動作を図3に示した流れ図に沿って説明する。
At this time, it is assumed that the
まず、推定部130は、情報部180から、分岐数の推定値k=1を取得するとともに、データ受信部160が受信した最後尾のパケットの順序番号n=10を取得する(ステップS301)。続いて、推定部130は、パケット受信部120が新たに受信したパケットの順序番号m=13を取得する(ステップS302)。推定部130は、m−n≦kとなるかどうかを判定し(ステップS303)、k<m−nであるので、推定部130は、パケット受信部120が順序番号m=13のパケットの次に受信したパケットの順序番号(11)を取得する(ステップS304)。
First, the
11番のパケットを受信した時点で、降順に並ぶ個数は13番、11番であるから2つである。よって、順序番号が降順に並ぶ個数dはd=2である(ステップS305)。そして、推定部130は、順序番号が降順に並ぶ個数d=2を分岐数の推定値kの候補とする(ステップS306)。
When the 11th packet is received, the numbers arranged in descending order are the 13th and 11th, which is two. Therefore, the number d in which the sequence numbers are arranged in descending order is d = 2 (step S305). Then, the
11番のパケットを受信した時点での最大の順序番号は13である。そしてパケット受信部120は12番のパケットを受信していないので、推定部130は、パケット受信部120が受信した順序番号が最大のパケット(13番のパケット)と、順序番号がn+1番のパケット(11番の)との間に入る全てのパケットを受信したかどうかを判断し(ステップS307)、全てのパケットを受信していないので、ステップS304に戻って、推定部130は、さらに次に受信したパケットの順序番号を取得する処理を実行する。
The maximum sequence number when the 11th packet is received is 13. Since the
その後、パケット受信部120が14番のパケットを受信すると、14番のパケットを受信した時点で、降順に並ぶ個数は16番、15番、14番であるから3つである。従って、順序番号が降順に並ぶ個数dはd=3である(ステップS305)。そして、推定部130は、順序番号が降順に並ぶ個数d=3を分岐数の推定値kの候補とする(ステップS306)。
After that, when the
14番のパケットを受信した時点での最大の順序番号は16である。推定部130は、パケット受信部120が受信した順序番号が最大のパケット(16番のパケット)と、順序番号がn+1番のパケット(11番の)との間に入る全てのパケットを受信したかどうかを判断し(ステップS307)、全てのパケットを受信しているので、推定部130は上記ステップS306で候補とした分岐数の推定値k=3を情報部180に保存する(ステップS308)。
The maximum sequence number when the 14th packet is received is 16. Whether the
推定部130が分岐数の推定値を3と推定するまでは、分岐数の推定値は1である。分岐数の推定値は1である状態で、図8に示した様に15番のパケットまでを受信した場合のバッファ150の動作を図5に示した流れ図に沿って説明する。
The estimated number of branches is 1 until the
バッファ150はパケット受信部120からパケットを受け取ると(ステップS501)、受信したパケットに付与されている順序番号の小さい順に、すなわち11番のパケットをデータ受信部160へ渡す(ステップS502)とともに、バッファ150は、データ受信部160へ渡した最後のパケットの順序番号(11)を情報部180に渡す。このとき、13番、16番、15番のパケットはバッファ150に保持されたままの状態となっている。
When the
また図8に示した様に13番のパケットを受信し、13番のパケットがバッファ150に格納された場合の欠落判定部140及び応答部170の動作を図4及び図6に示した流れ図に沿って説明する。
Further, as shown in FIG. 8, when the 13th packet is received and the 13th packet is stored in the
欠落判定部140はパケットの欠落判定処理に際し、情報部180から、分岐数の推定値k=1と、データ受信部160が受信した最後尾のパケットの順序番号n=10とを取得する(ステップS401)。次に、欠落判定部140はパケット受信部120が新たに受信したパケットの順序番号m=13を受け取り(ステップS402)、n+1<mであり、かつk=1であるから、受信パケットに欠落が発生していると判断し、欠落判定部140は応答部170へ11番及び12番のパケットの欠落を通知する(ステップS405)。
In the packet loss determination process, the
受信端末100Bが13番のパケットを受信した場合に、応答部170は情報部180からデータ受信部160が受け取った最後のパケットの順序番号n=10を取得する(ステップS601)。次に、応答部170はバッファ150にパケットが存在しているかどうかを確認し(ステップS602)、バッファ150には13番のパケットが存在するので、応答部170は欠落判定部140からの順序番号11番及び12番のパケットの欠落の通知を受けているかどうかを確認する(ステップS603)。欠落判定部140から順序番号11番及び12番のパケットの欠落の通知を受けていれば、応答部170は、送信端末100Aに対して、順序番号11番及び12番のパケットが欠落していることを応答パケットにより通知する(ステップS604)。
When the receiving terminal 100B receives the 13th packet, the
一方、推定部130が分岐数の推定値を3と推定した状態で、図9に示した様な順番でパケットまでを受信した場合の欠落判定部140、バッファ150及び応答部170の動作を図4、図5及び図6に示した流れ図に沿って説明する。なお、図9に示した様な順番でパケットまでを受信した場合において、情報部180には、データ受信部160が受信した最後尾の順序番号20番と、経路の分岐数の推定値k=3とが保存されているものとする。
On the other hand, the operations of the
欠落判定部140はパケットの欠落判定処理に際し、情報部180から、分岐数の推定値k=3と、データ受信部160が受信した最後尾のパケットの順序番号n=20とを取得する(ステップS401)。次に、欠落判定部140はパケット受信部120が新たに受信したパケットの順序番号m=23を受け取り(ステップS402)、n+1<mであり、かつk=1でないから、次に、欠落判定部140はパケット受信部120が次に受信したパケットの順序番号(26)を取得する(ステップS406)。
In the packet loss determination process, the
ステップS406でパケット受信部120が次に受信したパケットの順序番号を取得すると、続いて欠落判定部140は、上記ステップS406で取得した順序番号がn+1(21)であるかどうかを判定する(ステップS407)。ステップS406で取得した順序番号はn+1(21)では無いので、続いて欠落判定部140は、順序番号m=23のパケットを含め、これまでパケット受信部120から受け取ったn+1(21)より大きい順序番号から選んだ順序番号を、パケット受信部120が受信した順に並べた列を対象に、ある番号から始めて順序番号が降順に並ぶ個数dを数え上げる(ステップS408)。個数dは1であり、d<kであるので、上記ステップS406に戻り、欠落判定部140はパケット受信部120が次に受信したパケットの順序番号(25)を取得する。
When the
ステップS406で取得した順序番号はn+1(21)では無いので、再び順序番号が降順に並ぶ個数dを数え上げる。d=2であり、d<kであるので、再び上記ステップS406に戻り、パケット受信部120が次に受信したパケットの順序番号(21)を取得する。この順序番号はn+1に等しいので、欠落判定部140は処理を終了する。
Since the sequence number acquired in step S406 is not n + 1 (21), the number d of the sequence numbers arranged in descending order is counted again. Since d = 2 and d <k, the process returns to step S406 again, and the
バッファ150は、パケット受信部120から21番のパケットを受け取ると(ステップS501)、受け取った21番のパケットをデータ受信部160へ渡す(ステップS502)とともに、バッファ150は、データ受信部160へ渡した最後のパケットの順序番号(21)を情報部180に渡す。このとき、23番、26番、25番のパケットはバッファ150に保持されたままの状態となっている。
When the
また、応答部170はデータ受信部160が受け取った最後のパケットの順序番号n=20を情報部180から取得する(ステップS601)。次に、応答部170はバッファ150にパケットが存在しているかどうかを確認し(ステップS602)、バッファ150に存在するのはn+1(21)番以降のパケットしか無いので、応答部170は欠落判定部140からの順序番号n+1(21)番のパケットの欠落の通知を受けているかどうかを確認する(ステップS603)。欠落判定部140からの順序番号n+1(21)番のパケットの欠落の通知を受けていなければ、上記ステップS602に戻り、応答部170は応答パケットの送信を控える。
In addition, the
やがて、バッファ150に21番のパケットが到達すると、順序番号通りにパケットが受信出来たので、応答部170は、予め定められた上記(1)または(2)の少なくともいずれかの内容で応答パケットを送信端末100Aへ送信し、処理を終了する。
Eventually, when the packet No. 21 arrives at the
以上、推定部130、欠落判定部140、バッファ150、応答部170の具体的な動作例について説明した。
Heretofore, specific operation examples of the
以上説明したように本発明の第1の実施形態にかかる受信端末100Bによれば、パケット受信部120で受信したパケットの順序番号から、推定部130によってネットワーク10の内部の経路の分岐数を推定し、番号通りにパケットを受信しなかった場合でも、この分岐数の情報を用いて、応答部170からの応答パケットの送信を控える。これにより受信端末100Bは、通信経路途中の分岐によってパケットの到着順序が逆転している場合であっても、経路途中のパケットロスであると誤判定することが無くなる。
As described above, according to the receiving terminal 100B according to the first embodiment of the present invention, the
従来技術では、経路途中の分岐によって到着順序が保証されないので、受信端末で順序番号の大きいパケットが先に届くと、それより順序番号の小さいパケットは自動的にパケットロスであると判定され、応答パケットによって送信端末からの再送が発生してしまう。例えば、上述したように、従来技術では図7のようにパケットが到着した場合、13番のパケットが到着した時点で11番及び12番のパケットが再送の対象となる。これに対して本発明の第1の実施形態にかかる受信端末100Bでは、後から到着するパケットからもパケットの未着を判断するので、13番のパケットが到着した時点で即座に11番及び12番のパケットを再送の対象とすることはしない。従って、本発明の第1の実施形態によれば、番号通りにパケットが到着しなかった場合でも、パケットの到着時点でパケットの未着を判断するのではなく、後から到着するパケットからもパケットの未着を判断するので、ネットワークに無駄なトラフィックが流れることを防ぐことができる。 In the prior art, the arrival order is not guaranteed by branching in the middle of the route, so when a packet with a larger order number arrives first at the receiving terminal, a packet with a smaller order number is automatically determined to be a packet loss, and the response The packet causes retransmission from the transmitting terminal. For example, as described above, in the prior art, when a packet arrives as shown in FIG. 7, the 11th and 12th packets are to be retransmitted when the 13th packet arrives. On the other hand, since the receiving terminal 100B according to the first embodiment of the present invention determines whether or not a packet has arrived from a packet that arrives later, the 11th and 12th packets are immediately received when the 13th packet arrives. No. packet is not subject to retransmission. Therefore, according to the first embodiment of the present invention, even when a packet does not arrive according to the number, it is not determined whether a packet has arrived at the time of arrival of the packet, but is also determined from a packet that arrives later. Therefore, it is possible to prevent unnecessary traffic from flowing through the network.
<2.第2の実施形態>
[2−1.通信システムの構成]
次に、図11を参照して、本発明の第2の実施形態に係る通信システムの概略構成について説明する。図11に示したように、本発明の第2の実施形態に係る通信システム2は、送信端末200Aから受信端末200Bに対して、ネットワーク10を介して、順序番号を付与したパケットの形式で送信したいデータを送信する。本実施形態においては、パケットを再送する場合を除き、原則として順序番号の昇順でパケットを送信する。
<2. Second Embodiment>
[2-1. Configuration of communication system]
Next, a schematic configuration of a communication system according to the second embodiment of the present invention will be described with reference to FIG. As shown in FIG. 11, the
そして、送信端末200Aは、複数の(例えば2つの)インタフェースIF1、IF2を有しており、このインタフェースIF1、IF2に送信するパケットを振り分けている。パケットには複数のインタフェースを区別する印(IF番号)が付与されており、またどのインタフェースにどのパケットを振り分けるかについての決まりは特に定められていない。 The transmission terminal 200A has a plurality of (for example, two) interfaces IF1 and IF2, and distributes packets to be transmitted to the interfaces IF1 and IF2. The packet is provided with a mark (IF number) for distinguishing a plurality of interfaces, and there is no particular rule as to which packet is assigned to which interface.
一方、受信端末200Bは、送信端末200Aから送信されて来るパケットを受け取ると、順序番号の最初から始めて抜けなく受信した一連のパケットの内の最大の番号や、または欠落しているパケットの番号を応答パケットとして送信端末200Aに送信する。この応答パケットを送信端末200Aが受信することで、送信端末200Aは次に送信すべきパケットを制御することができる。このような通信制御は、TCP等の通信方式に見られるものである。本実施形態も同様に、このような制御下における主に応答パケットの制御に関わるものである。 On the other hand, when receiving terminal 200B receives the packet transmitted from transmitting terminal 200A, it starts from the beginning of the sequence number and receives the maximum number in the series of packets received without omission or the number of the missing packet. It transmits to the transmission terminal 200A as a response packet. When the transmission terminal 200A receives this response packet, the transmission terminal 200A can control the packet to be transmitted next. Such communication control is found in communication systems such as TCP. Similarly, this embodiment mainly relates to control of response packets under such control.
パケットが流れるネットワーク10の内部では、経路途中のルータ(図示せず)等がパケットを複数の経路に振り分けることで、経路が分岐され得る。図11に示した分岐はその状態を表したものである。送信端末200A、受信端末200Bは、ネットワーク10の中のパケットが通る経路や分岐の数については把握していない。なお、以下の説明では、ネットワーク10は複数の経路に分岐されているものとして説明するが、本発明は、送信端末100Aと受信端末100Bとの間に分岐が全く無い場合であっても同様に適用できるものである。
Inside the
以上、図11を参照して、本発明の第2の実施形態に係る通信システムの概略構成について説明した。次に、本発明の第2の実施形態にかかる受信端末200Bの構成について説明する。 The schematic configuration of the communication system according to the second embodiment of the present invention has been described above with reference to FIG. Next, the configuration of the receiving terminal 200B according to the second embodiment of the present invention will be described.
[2−2.受信端末の構成]
図12は、本発明の第2の実施形態にかかる受信端末200Bの構成を示す説明図である。以下、図12を用いて本発明の第2の実施形態にかかる受信端末200Bの構成について説明する。
[2-2. Configuration of receiving terminal]
FIG. 12 is an explanatory diagram showing the configuration of the receiving terminal 200B according to the second embodiment of the present invention. Hereinafter, the configuration of the receiving terminal 200B according to the second embodiment of the present invention will be described with reference to FIG.
図12に示したように、本発明の第2の実施形態にかかる受信端末200Bは、パケット受信部220と、推定部230と、欠落判定部240と、バッファ250と、データ受信部260と、応答部270と、情報部280と、を含んで構成される。
As shown in FIG. 12, the receiving terminal 200B according to the second embodiment of the present invention includes a
パケット受信部220は、送信端末200Aから送信されてくる、順序番号及びIF番号が付与されたパケットを受信するものであり、パケット受信部120は受信したパケットを送信されてきた順序通りにバッファ150に渡す。本実施形態では、IF番号1、2のいずれかがパケットに付与されているものとする。
The
送信端末200Aが受信端末200Bにデータを送信するときに使用するインタフェースの数を受信した場合には、各インタフェースの分岐数の推定値を、初期値を1として情報部280に渡す。インタフェースの数は、インタフェースの識別子など、送信端末200Aが送信するパケットのインタフェースの数が判別可能なものであればどのようなものであっても構わない。また、インタフェースの数は、送信端末200Aがパケットに付与した印の種類から判断しても良い。本実施形態では、受信端末200Bは送信端末200Aからインタフェース数を受け取ることにする。
When the transmission terminal 200A receives the number of interfaces used when transmitting data to the
推定部230は、情報部280が保持しているインタフェースごとの経路の分岐数の推定値と、データ受信部260が受信した最後尾のパケットの順序番号とを取得し、この順序番号と、インタフェースごとの分岐数の推定値と、パケット受信部220が受信したパケットの並びとから、送信経路途中での分岐数を推定するものである。推定部230が推定した分岐数の推定値は情報部280に送られる。
The
本実施形態では、送信経路途中での分岐数は以下のように推定する。 In this embodiment, the number of branches in the middle of the transmission path is estimated as follows.
パケット受信部220で受信しているパケットは、送信端末200Aが受信端末200Bに対して順序番号の昇順に送信したパケットとする。これは、受信端末200Bからの応答パケットによって既に送信端末200Aが送信した順序番号の小さいパケットを、再度送っていない状態である。このことは、受信端末200Bにおいても、自身の送信する応答パケットによって判断する。
The packet received by the
推定部230は、情報部280から分岐数の推定値kiを取得するとともに、データ受信部160が受信した最後尾のパケットの順序番号を取得する。なお、添字iはインタフェースを区別する識別子であり、以下においても添字は同じ意味で用いる。データ受信部260は、順序番号がn番目(n=0,1,2,・・・)までのパケットを全て受け取っているとすると、n=0の場合は、データ受信部260は未だパケットを受け取っていない。その後、順序番号がn番目より大きいm番目のパケットをパケット受信部220が受信したとする。また、これは送信端末200AのIFiからのパケットであった。m−n≦kiの場合は、推定部230は、kiをそのインタフェースIFiにおける分岐数の推定値とする。一方、m−n>kiである場合、推定部230は、先のm番目のパケットを含め、以降受信するn番目よりも順序番号が大きいパケットからインタフェースごとに選んだパケットを、パケット受信部220が受信した順に並べる。そして推定部230は、このパケット列について、順序番号が降順に並ぶ個数を数え上げる。ただし順序番号は連続していなくても良い。またパケットが1つの場合にはその個数を1とする。例えば、順序番号が13、11と並んでいれば、順序番号が降順に並ぶ個数は2であり、順序番号が13しかない場合には、順序番号が降順に並ぶ個数は1となる。
The
m−n>kである場合、推定部230は、インタフェースごとに、この個数が最大となるようにパケット列を選び、この列の順序番号が降順に並ぶ個数を、そのインタフェースの分岐数の推定値とする。これは、通常であれば順序番号の昇順でパケットが到着するが、ネットワーク10で分岐があることで、パケットの到達順序が逆になることがある。従って、本実施形態では順序番号が降順の並ぶ個数を分岐の数と推定する。
When m−n> k, the
数え上げる対象とするパケットは、順序番号がn+1番目からm番目までの全てのパケットをパケット受信部220が受信するまでの間に、パケット受信部220が受信した順序番号が最大の番号と、n+1番目のとの間に入る全てのパケットである(順序番号がn+1番目のパケットも含まれる)。例えば、n=10、m=13の場合に、図17に示したような順序で受信端末200Bがパケットを受信したとする。この場合は、パケット受信部220が、n+1=11番からm=13番までの全てのパケット、すなわち11番と12番のパケットを受信するまでに受信したパケットの最大の番号は16番である。このときに、11番から16番の間に入る全てのパケット、すなわち11、12、13、14、15、16番が数え上げの対象となる。そして、順序番号が降順に並ぶ個数の最大値は、IF1が16、15、14の場合の「3」であり、IF2が12、11の場合の「2」となる。従って、分岐数の推定値はk1=3であり、k2=2である。
The packets to be counted are the number with the largest sequence number received by the
図17に示したようにパケットが受信端末200Bに到達した場合、例えば図19に示したような経路で送信端末200Aから受信端末200Bに転送される。
When the packet reaches the receiving
欠落判定部240は、パケット受信部220で受信したパケットの並びと、情報部280が保持している、データ受信部260が受信した最後尾の順序番号と、情報部280が保持している、インタフェースごとの分岐数の推定値kiとから、パケットが未到着なのか、経路途中で欠落しているのかを判定するものである。欠落判定部240は、パケットが欠落していると判定すると、応答部270に対して欠落しているパケットの順序番号を通知する。
The missing
欠落判定部240によるパケットの欠落判定方法について以下で説明する。
A packet loss determination method by the
情報部280が保持している、データ受信部260が受信した最後尾の順序番号がn番目(n=0,1,2,・・・)であったとする。次に欠落判定部240は、パケット受信部220で、順序番号がn+1番目より大きいm番目のパケットを受信した場合に、そのパケットを含め、以降受信するn+1番目よりも順序番号が大きいパケットから選んだパケットを、パケット受信部220が受信した順に並べる。そして、このパケット列から、その並びのままインタフェースごとにパケットを選び出し、そのインタフェースごとに選び出したパケット列について、順序番号が降順に並ぶ個数をインタフェースごとに数える。ただし、順序番号は連続していなくても良い。また、パケットが1つの場合は、その個数を1とする。
Assume that the last sequence number received by the
そして欠落判定部240は、インタフェースごとに、順序番号が降順に並ぶ個数が分岐数の推定値ki個以上になるパケット列がそのインタフェースのパケットにあるかどうかを調べる。欠落判定部140は、全てのインタフェースについてこの条件を満たしていれば、n+1番目から、これまで受信したn+1番目より大きい番号の中で最小の順序番号の1つ手前までのパケットが欠落していると判定する。
Then, for each interface, the missing
バッファ250は、パケット受信部220からパケットを受け取るものであり、バッファ250が受け取ったパケットは、順序番号の昇順に、重複無くデータ受信部260へ送られる。また、データ受信部260に送られた順序番号の最後尾の番号はバッファ250から情報部280に送られる。パケット受信部220から受け取ったパケットがバッファ250に存在しているパケットと重複したり、既にデータ受信部260に送ったパケットと同じものであったりした場合には、そのパケットはバッファ250から破棄される。
The
データ受信部260は、バッファ250から渡されたパケットを受信するものである。
The
応答部270は、送信端末200Aがパケットを送る数や番号を制御するための応答パケットを生成して送信するものである。応答パケットの送信を行うために、応答部270は情報部280から、データ受信部260が受信した最後尾の順序番号nを取得する。また応答部270は、欠落判定部240から欠落しているパケットの情報も取得する。
The
応答部270は、上述の本発明の第1の実施形態における応答部170と同様の機能を有する。すなわち、応答パケットを送るタイミングになった場合に、バッファ250にパケットが無いときは、予め定められた上記(1)または(2)の少なくともいずれかの内容で応答パケットを送信する。一方、応答部270は、応答パケットを送るタイミングになった場合に、バッファ250にパケットがあるとき、すなわち順序番号どおりにパケットが届いておらず、抜けている順序番号のパケットがあるのでバッファ250にパケットがあるときは、上記(1)または(2)の内容を送信する場合であっても、欠落判定部140から欠落している順序番号を受け取るまで応答パケットの送信を控える。ただし、上記(2)の場合には、その抜けているパケットが無いものとして、すなわちその抜けているパケットの再送を要求しない内容で、応答部270は応答パケットを送信しても良い。
The
情報部280は、推定部230が推定した、送信端末200Aのパケット送信に使用するインタフェースごとの経路の分岐数の推定値kiと、バッファ250がデータ受信部260に送ったパケットのうち最後尾の順序番号とを保存する。情報部280が保存する、経路の分岐数の推定値kiの初期値は1である。また、最後尾の順序番号は、この番号以前の順序番号のパケットを、データ受信部260が全て受信していることを保証するものである。
The
以上、図12を用いて本発明の第2の実施形態にかかる受信端末200Bの構成について説明した。次に、本発明の第2の実施形態にかかる受信端末200Bの動作について説明する。 The configuration of the receiving terminal 200B according to the second embodiment of the present invention has been described above using FIG. Next, the operation of the receiving terminal 200B according to the second embodiment of the present invention will be described.
[2−3.受信端末の動作]
上述したように、パケット受信部220は、送信端末200Aから送信された、順序番号及びIF番号が付与されたパケットを受信し、送られてきた順序通りにバッファ250に受信したパケットを渡す。また、送信端末200Aが受信端末200Bへデータを送信するときに使用するインタフェースの数を受信端末200Bが受信すると、各インタフェースの分岐数の推定値kiの初期値を1として情報部280に渡す。
[2-3. Operation of receiving terminal]
As described above, the
図13は、本発明の第2の実施形態にかかる受信端末200Bに含まれる推定部230の動作について示す流れ図である。以下、図13を用いて推定部230の動作について詳細に説明する。
FIG. 13 is a flowchart showing the operation of the
前提として、パケット受信部220で受信しているパケットは、送信端末200Aが受信端末200Bに対して順序番号の昇順に送信したパケットであるとする。推定部230は、情報部280から、各インタフェースの分岐数の推定値kiを取得するとともに、データ受信部260が受信した最後尾のパケットの順序番号nを取得する(ステップS1301)。
As a premise, the packet received by the
続いて、推定部230は、パケット受信部220が新たに受信したパケットの順序番号m及びそのパケットのIF番号iを取得する(ステップS1302)。推定部230は、m−n≦kiとなるかどうかを判定し(ステップS1303)、m−n≦kiであれば後段のステップS1308へ進むが、ki<m−nであれば、推定部230は、パケット受信部220が順序番号mのパケットの次に受信したパケットの順序番号及びそのパケットのIF番号iを取得する(ステップS1304)。
Subsequently, the estimating
続いて、推定部230は、順序番号mのパケットを含め、これまで取得した、順序番号nよりも順序番号が大きいパケットから選んだパケットを、パケット受信部220が受信した順に整列し、このパケット列から、その並びのままインタフェースごとにパケットを選び出す。そして、そのインタフェースごとに選び出したパケット列について、インタフェースごとに順序番号が降順に並ぶ個数diを数え上げる(ステップS1305)。ただし、順序番号は連続していなくてもよく、またパケットが1つの場合はその個数を1としてカウントする。数え上げの対象とするパケットは、順序番号がn+1番目からm番目までの全てのパケットをパケット受信部220が受信するまでの間に、パケット受信部220が受信した順序番号が最大のパケットと、順序番号がn+1番のパケットとの間に入る全てのパケットである。推定部230は、インタフェースごとにこの個数が最大となるように選んだパケット列について、順序番号が降順に並ぶ個数diを、インタフェースIFiの分岐数の推定値の候補とする。
Subsequently, the
推定部230は、上記ステップS1305で数え上げた、順序番号が降順に並ぶ個数が最大となるように選んだパケット列について、順序番号が降順に並ぶ個数diが分岐数の推定値kiより大きければ、順序番号が降順に並ぶ個数diを分岐数の推定値kiの候補とする(ステップS1306)。そして推定部230は、順序番号がn+1番目からm番目までの全てのパケットをパケット受信部120が受信するまでの間に、パケット受信部120が受信した順序番号が最大のパケットと、順序番号がn+1番のパケットとの間に入る全てのパケットを受信したかどうかを判断する(ステップS1307)。全てのパケットを受信していれば、推定部230は上記ステップS1306で候補とした分岐数の推定値kiを情報部280に保存する(ステップS1308)。一方、まだ全てのパケットを受信していなければ、上記ステップS1304に戻って、推定部230は、さらに次に受信したパケットの順序番号を取得する処理を実行する。
The
このように、推定部230はネットワーク10におけるインタフェースごとの分岐数を推定することができる。受信端末200Bは、この推定部230が推定した分岐数を用いて、パケットが欠落しているかどうかの判定を行うことができる。
Thus, the
以上、図13を用いて推定部230の動作について詳細に説明した。次に、本発明の第2の実施形態にかかる受信端末200Bに含まれる欠落判定部240の動作について説明する。
The operation of the
図14は、本発明の第2の実施形態にかかる受信端末200Bに含まれる欠落判定部240の動作を示す流れ図である。以下、図14を用いて欠落判定部240の動作について詳細に説明する。
FIG. 14 is a flowchart showing the operation of the
まず、欠落判定部240はパケットの欠落判定処理に際し、情報部280から、インタフェースごとの分岐数の推定値kiと、データ受信部260が受信した最後尾のパケットの順序番号nとを取得する(ステップS1401)。次に、欠落判定部240はパケット受信部220が新たに受信したパケットの順序番号m及びそのパケットのIF番号iを受け取り(ステップS1402)、n+1<mとなっているかどうかを判定する(ステップS1403)。
First, the
上記ステップS1403の判定の結果、n+1≧mである場合には、欠落判定部240は、受信パケットに欠落は発生していないと判断し、処理を終了する。一方、上記ステップS1403の判定の結果、n+1<mである場合には、続いて欠落判定部140はki=1であるかどうかを判定する(ステップS1404)。
If n + 1 ≧ m is determined as a result of the determination in step S1403, the
上記ステップS404の判定の結果、情報部180が保持している分岐数kiの値がki=1である場合には、受信パケットに欠落が発生していると判断し、欠落判定部240は応答部270へパケットの欠落を通知する(ステップS1405)。このステップS1405では、欠落判定部240は、n+1番目から、これまで受信したn+1番より大きい番号の中で最小の順序番号の一つ手前までの順序番号のパケットが欠落していると判定し、応答部270へパケットの欠落を通知する。
As a result of the determination in step S404, if the value of the number of branches k i held by the
一方、上記ステップS1404の判定の結果、情報部280が保持している分岐数kiの値がki=1でない場合には、次に、欠落判定部240はパケット受信部220が次に受信したパケットの順序番号を取得する(ステップS1406)。
On the other hand, as a result of the determination in step S1404, if the value of the number of branches k i held in the
上記ステップS1406でパケット受信部220が次に受信したパケットの順序番号を取得すると、続いて欠落判定部240は、上記ステップS1406で取得した順序番号がn+1であるかどうかを判定する(ステップS1407)。
When the
上記ステップS1407の判定の結果、上記ステップS1406で取得した順序番号がn+1であるならば、欠落判定部240は処理を終了する。一方、上記ステップS1407の判定の結果、上記ステップS1406で取得した順序番号がn+1で無いならば、続いて欠落判定部240は、順序番号mのパケットを含め、以降パケット受信部220が受信するn+1より大きい順序番号が大きいパケットを、パケット受信部220が受信した順に並べる。そして、このパケット列からその並びのまま、インタフェースごとにパケットを選び出す。そして、そのインタフェースごとに選び出したパケット列について、インタフェースごとに順序番号が降順に並ぶ個数diを数え上げる(ステップS1408)。
As a result of the determination in step S1407, if the order number acquired in step S1406 is n + 1, the
そして欠落判定部240は、上記ステップS1408で数え上げた個数diについて、ki≦diを満たす列が存在するかどうかを判定する(ステップS1409)。全てのインタフェースについてki≦diを満たす列が1つでも存在すれば、受信パケットに欠落が発生していると判断し、欠落判定部240は応答部270へパケットの欠落を通知する(ステップS1405)。一方、どの列のdiについてもdi<kiであるならば、上記ステップS1406に戻り、欠落判定部240はパケット受信部220が次に受信したパケットの順序番号を取得する。
Then, the missing
以上、図14を用いて欠落判定部240の動作について詳細に説明した。次に、本発明の第2の実施形態にかかる受信端末200Bに含まれるバッファ250の動作について説明する。
The operation of the
図15は、本発明の第2の実施形態にかかる受信端末200Bに含まれるバッファ250の動作を説明する流れ図である。以下、図15を用いてバッファ250の動作について説明する。
FIG. 15 is a flowchart for explaining the operation of the
まず、バッファ250はパケット受信部220からパケットを受け取ると(ステップS1501)、受信したパケットに付与されている順序番号の小さい順に、受け取ったパケットをデータ受信部260へ渡す(ステップS1502)。バッファ250は、欠落している順序番号のパケットがあれば、そのパケットがパケット受信部220から送られて来るまで待機する。また、既にデータ受信部260へ渡したものと重複しているパケットがあれば、バッファ250はそのパケットを破棄する。
First, when the
そして、バッファ250は、データ受信部260へ渡した最後のパケットの順序番号を情報部280に渡す。
Then, the
以上、図15を用いてバッファ250の動作について説明した。次に、本発明の第2の実施形態にかかる受信端末200Bに含まれる応答部270の動作について説明する。
The operation of the
図16は、本発明の第2の実施形態にかかる応答部270の動作について示す流れ図である。以下、図16を用いて第2の実施形態にかかる応答部270の動作について説明する。
FIG. 16 is a flowchart showing the operation of the
応答部270は、情報部280からデータ受信部260が受け取った最後のパケットの順序番号nを取得する(ステップS1601)。次に、応答部270はバッファ250にパケットが存在しているかどうかを確認する(ステップS1602)。
The
上記ステップS1602の確認の結果、バッファ250にパケットが無いか、または順序番号がn+1であるパケットがあれば、順序番号通りにパケットが受信出来ているので、応答部270は、予め定められた上記(1)または(2)の少なくともいずれかの内容で応答パケットを送信し、処理を終了する。
As a result of the confirmation in the step S1602, if there is no packet in the
一方、上記ステップS1602の確認の結果、バッファ250に順序番号がn+2以降のパケットが存在していれば、応答部270は欠落判定部240からの順序番号n+1のパケットの欠落の通知を受けているかどうかを確認する(ステップS1603)。欠落判定部240からの順序番号n+1のパケットの欠落の通知を受けていなければ、上記ステップS1602に戻り、応答部270は応答パケットの送信を控える。一方、欠落判定部240からの順序番号n+1のパケットの欠落の通知を受けていれば、応答部270は、送信端末200Aに対して、順序番号n+1のパケットが欠落していることを応答パケットにより通知する(ステップS1604)。この通知は、予め定められた上記(1)または(2)の少なくともいずれかの内容によって行われる。
On the other hand, as a result of the confirmation in step S1602, if there is a packet with the sequence number n + 2 or later in the
以上、図16を用いて第2の実施形態にかかる応答部270の動作について説明した。このように、応答部270は欠落判定部240からの順序番号n+1のパケットの欠落の通知を受けるまで応答パケットの送信を控えることで、ネットワーク10への無駄なトラフィックの発生を抑えることができる。
The operation of the
ここで、推定部230、欠落判定部240、バッファ250、応答部270の具体的な動作例を説明する。送信端末200Aは、受信端末200Bに対して、1、2、3、・・・と続く順序番号を付与したデータパケットを番号の昇順に送信している。以降、パケットの番号についての記述がある場合には、特に断らない限りこの順序番号を指す。また、データパケットには、送信端末200Aがデータパケットを送信したインタフェースのIF番号1、2のいずれかが付与されているものとする。そして、受信端末200Bは、送信端末200Aが送信したデータパケットを受け取り、1パケットを受け取る度に1応答パケットを送信端末100Aに送信しているとする。
Here, specific operation examples of the
送信端末200Aから送信されるデータパケット、受信端末200Bから送信される応答パケット共に、経路途中のネットワーク10の中で、ルータ(図示せず)等によってパケットが複数の経路に分配されている可能性があるが、送信端末200A、受信端末200Bとも、いくつの経路に分配されているかは分からない。
There is a possibility that both the data packet transmitted from the transmitting terminal 200A and the response packet transmitted from the receiving
ここで、受信端末200Bが、10番まで順序通りにデータパケットを受信しており、データ受信部260が受信したパケットを全て受け取っているとする。これ以降、送信端末200Aから受信するパケットについての受信端末200Bの動作を、図面を参照しながら具体的に説明する。このとき、情報部280にはデータ受信部260が受信した最後の順序番号10番と、経路の分岐数の推定値k1=1、k2=1とが保存されている。
Here, it is assumed that the receiving terminal 200B has received the data packets in order up to No. 10, and has received all the packets received by the
このとき、パケット受信部220が13番のパケットを受信したとする。パケット受信部220が受信した13番のパケットはバッファ250に渡される。そして、その13番のパケットも含め、図17に示した順序でパケット受信部220がパケットを受信した場合に、推定部230の動作を図13に示した流れ図に沿って説明する。
At this time, it is assumed that the
まず、推定部230は、情報部280から、分岐数の推定値k1=1、k2=1を取得するとともに、データ受信部260が受信した最後尾のパケットの順序番号n=10を取得する(ステップS1301)。続いて、推定部230は、パケット受信部220が新たに受信したパケットの順序番号m=13と、そのパケットのIF番号i=2とを取得する(ステップS1302)。推定部230は、m−n≦k2となるかどうかを判定し(ステップS1303)、k2<m−nであるので、推定部230は、パケット受信部220が順序番号m=13のパケットの次に受信したパケットの順序番号(12)と、パケットのIF番号i=1とを取得する(ステップS1304)。
First, the
続いて、推定部230はインタフェースごとに順序番号が降順に並ぶ個数d1、d2を数え上げる(ステップS1305)。ここでは、d1及びd2の値はd1=d2=1となる。どのインタフェースについてもdi≦kiであるから、推定部230は、パケット受信部220が受信した順序番号が最大のパケット(13番のパケット)と、順序番号がn+1番のパケット(11番の)との間に入る全てのパケットを受信したかどうかを判断し(ステップS1307)、11番のパケットを受信していないので、全てのパケットを受信していないので、ステップS1304に戻って、推定部230は、さらに次に受信したパケットの順序番号を取得する処理を実行する。
Subsequently, the
以後、14番のパケットまでパケット受信部220が受信すると、推定部230は、パケット受信部220が受信したパケットの順序番号(14)と、パケットのIF番号i=2とを取得する(ステップS1304)。推定部230はインタフェースごとに順序番号が降順に並ぶ個数d1、d2を数え上げる(ステップS1305)。ここでは、インタフェース1については16番、15番、14番の並びでd1=3となり、インタフェース2については12番、11番の並びでd2=2となる。そして、推定部230は、順序番号が降順に並ぶ個数をインタフェースごとの分岐数の推定値kiの候補とする(ステップS1306)。
Thereafter, when the
続いて推定部230は、パケット受信部220が受信した順序番号が最大のパケット(13番のパケット)と、順序番号がn+1番のパケット(11番の)との間に入る全てのパケットを受信したかどうかを判断し(ステップS1307)、全てのパケットを受信しているので、推定部230は上記ステップS1306で候補としたインタフェースごとの分岐数の推定値k1=3、k2=2を情報部180に保存する(ステップS1308)。
Subsequently, the
次に、推定部230がインタフェースごとの分岐数の推定値をk1=3、k2=2と推定した後の動作を説明する。ここでは、図18のように送信端末200Aからのパケットを受信端末200Bが受信した場合について説明する。情報部280には、データ受信部260が受信した最後尾のパケットの順序番号(20)と、インタフェースごとの分岐数の推定値をk1=3、k2=2とが保存されている。
Next, an operation after the
欠落判定部240はパケットの欠落判定処理に際し、情報部280から、インタフェースごとの分岐数の推定値をk1=3、k2=2と、データ受信部260が受信した最後尾のパケットの順序番号n=20とを取得する(ステップS1401)。次に、欠落判定部240はパケット受信部220が新たに受信したパケットの順序番号m=27及びそのパケットを送信したインタフェースのIF番号i=1を受け取る(ステップS1402)。受信したパケットの順序番号m(=27)はn+1(=21)では無いので、欠落判定部240は次にパケット受信部220が受信したパケットの順序番号m=26及びそのパケットを送信したインタフェースのIF番号i=2を受け取る。これも受信したパケットの順序番号m(=26)はn+1(=21)では無いので、欠落判定部240は、全てのインタフェースについてki≦diを満たすパケット列が存在するかどうかを確認する。
In the packet loss determination process, the
確認の結果、ki≦diを満たすパケット列は存在しないので、その後は、欠落判定部240は次にパケット受信部220が受信したパケットの順序番号及びそのパケットを送信したインタフェースのIF番号の取得処理を繰り返す。そして、25番のパケットを受信した時点で、全てのインタフェースについてki≦diを満たすパケット列が存在するようになるので(インタフェース1については26番、24番、23番からなるパケット列、インタフェース2については27番、25番からなるパケット列)、続いて欠落判定部240は、n+1=21番目のパケットから、これまで受信したn+1=21番目より大きい番号の中で、最小の順序番号の一つ手前、すなわち22番目までのパケットが欠落していると判定し、応答部270へその旨を通知する。
As a result of the confirmation, there is no packet sequence that satisfies k i ≦ d i , and thereafter, the
バッファ250は、パケット受信部220からパケットを受け取るが、21番のパケットが欠落しているので、パケット受信部220から21番のパケットが送られて来るまで待機する。なお、バッファ250は、パケット受信部220から受け取ったパケットは保持している。
The
また、応答部270はデータ受信部260が受け取った最後のパケットの順序番号n=20を情報部280から取得する(ステップS1601)。応答部270は、バッファ250に21番のパケットが存在しているかどうかを確認し(ステップS1602)、バッファ250に存在するのはn+1(23)番以降のパケットしか無いので、応答部270は欠落判定部240からの順序番号21番と22番のパケットの欠落の通知を受けているかどうかを確認する(ステップS1603)。欠落判定部240からは、21番及び22番のパケットが欠落している旨の通知を受けているので、送信端末200Aに対して、21番及び22番のパケットが欠落していることを応答パケットにより通知する。応答部270は、予め定められた上記(1)または(2)の少なくともいずれかの内容で応答パケットを送信端末200Aへ送信し、処理を終了する。
In addition, the
以上、推定部230、欠落判定部240、バッファ250、応答部270の具体的な動作例について説明した。
The specific operation examples of the
以上説明したように本発明の第2の実施形態にかかる受信端末200Bによれば、送信端末200Aが複数のインタフェースからパケットを送信してきた場合に、パケット受信部220で受信したパケットの順序番号から、推定部230によってネットワーク10の内部の経路の分岐数をインタフェースごとに推定し、番号通りにパケットを受信しなかった場合でも、この分岐数の情報を用いて、応答部270からの応答パケットの送信を控える。これにより受信端末200Bは、通信経路途中の分岐によってパケットの到着順序が逆転している場合であっても、経路途中のパケットロスであると誤判定することが無くなる。
As described above, according to the receiving terminal 200B according to the second embodiment of the present invention, when the transmitting terminal 200A transmits a packet from a plurality of interfaces, the sequence number of the packet received by the
上記非特許文献1に開示の発明では、経路途中の分岐によって到着順序が保証されないので、受信端末で順序番号の大きいパケットが先に届くと、それより順序番号の小さいパケットは自動的にパケットロスであると判定され、応答パケットによって送信端末からの再送が発生してしまう。例えば、上述したように、上記非特許文献1に開示の発明では図7のようにパケットが到着した場合、13番のパケットが到着した時点で11番及び12番のパケットが再送の対象となる。
In the invention disclosed in
また、上記特許文献2に開示の発明では、受信バッファでバッファ内の先頭のパケットしか見ないので、受信端末側で順序番号の大きいパケットが先に到着すると、それより順序番号の小さいパケットが自動的にパケットロスと判定されてしまい、応答パケットの送信及び送信端末からのパケットの再送が発生してしまう。図18のようにパケットが受信端末に到着すると、上記特許文献2に開示の発明では、順序番号が26番のパケットを受信した時点で、自動的に21番から25番のパケットはパケットロスと判定されてしまい、パケットの再送の対象となってしまう。
In the invention disclosed in
これに対して本発明の第2の実施形態にかかる受信端末200Bでは、後から到着するパケットからもパケットの未着を判断するので、26番のパケットが到着した時点で即座に21番から25番のパケットを再送の対象とすることはしない。従って、本発明の第2の実施形態によれば、番号通りにパケットが到着しなかった場合でも、パケットの到着時点でパケットの未着を判断するのではなく、後から到着するパケットからもパケットの未着を判断するので、ネットワークに無駄なトラフィックが流れることを防ぐことができる。 On the other hand, the receiving terminal 200B according to the second embodiment of the present invention determines whether a packet has arrived from a packet that arrives later. Therefore, when the 26th packet arrives, the receiving terminal 200B immediately receives the 21st to 25th packets. No. packet is not subject to retransmission. Therefore, according to the second embodiment of the present invention, even when a packet does not arrive according to the number, it is not determined whether a packet has arrived at the time of arrival of the packet, but is also determined from a packet that arrives later. Therefore, it is possible to prevent unnecessary traffic from flowing through the network.
尚、上記各実施形態において説明した構成は、ネットワークを構成して利用されるもの一般に適用される。例えば、P2P(Peer to Peer)の仮想ネットワークの構造や無線アドホックネットワークに適用することも出来る。 The configuration described in each of the above embodiments is generally applied to those used by configuring a network. For example, the present invention can be applied to a P2P (Peer to Peer) virtual network structure or a wireless ad hoc network.
また、上記各実施形態において、フローチャートに記述されたステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的に又は個別的に実行される処理をも含む。また時系列的に処理されるステップでも、場合によっては適宜順序を変更することが可能であることは言うまでもない。 Further, in each of the above embodiments, the steps described in the flowcharts are performed in parallel or individually even if they are not necessarily processed in time series, as well as processes performed in time series in the described order. Also includes processing to be performed. Further, it goes without saying that the order can be appropriately changed even in the steps processed in time series.
また、上記各実施形態における各種動作は、ハードウェア的な処理によって実行されるようにしてもよく、ソフトウェア的な処理によって実行されるようにしてもよい。ソフトウェア的な処理によって上記各実施形態における各種動作を実行する場合には、コンピュータプログラムが格納された記録媒体及びコンピュータプログラムを実行するプロセッサその他の制御手段を受信端末100B、200Bに設け、係る記録媒体からコンピュータプログラムを読み出し、制御手段において順次実行するようにしてもよい。
The various operations in the above embodiments may be executed by hardware processing or software processing. When performing various operations in the above embodiments by software processing, the receiving
以上、添付図面を参照しながら本発明の好適な実施形態について詳細に説明したが、本発明はかかる例に限定されない。本発明の属する技術の分野における通常の知識を有する者であれば、特許請求の範囲に記載された技術的思想の範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、これらについても、当然に本発明の技術的範囲に属するものと了解される。 The preferred embodiments of the present invention have been described in detail above with reference to the accompanying drawings, but the present invention is not limited to such examples. It is obvious that a person having ordinary knowledge in the technical field to which the present invention pertains can come up with various changes or modifications within the scope of the technical idea described in the claims. Of course, it is understood that these also belong to the technical scope of the present invention.
本発明は、通信装置及び通信制御方法に適用可能であり、特にある一恋のデーを送信する場合にそのデータの到着を保証する通信、例えばTCPやSCTPに適用可能である。 The present invention can be applied to a communication apparatus and a communication control method, and is particularly applicable to communication that guarantees the arrival of data when a certain love data is transmitted, for example, TCP or SCTP.
100A、200A 送信端末
100B、200B 受信端末
120、220 パケット受信部
130、230 推定部
140、240 欠落判定部
150、250 バッファ
160、260 データ受信部
170、270 応答部
180、280 情報部
100A, 200A Transmission terminal 100B,
Claims (10)
パケットを受信するパケット受信部と、
前記パケット受信部が受信したパケットの受信順から前記ネットワークの経路の分岐数を推定して計算する推定部と、
前記受信順及び前記分岐数から前記経路の途中で欠落したパケットを判定する欠落判定部と、
前記パケット受信部が受信したパケットを保持するパケット保持部と、
前記パケット保持部に保持されているパケット及び前記欠落判定部で欠落と判定されたパケットの順序番号とから、欠落したパケットの再送を前記送信端末へ要求する応答部と、
を備えることを特徴とする、通信装置。 In a receiving terminal that receives a packet in which a sequence of packets of a predetermined interval is transmitted with a sequence number assigned from a transmitting terminal via a network,
A packet receiver for receiving packets;
An estimation unit that estimates and calculates the number of branches of the network path from the reception order of the packets received by the packet reception unit;
A missing determination unit for determining a packet lost in the middle of the route from the reception order and the number of branches;
A packet holding unit for holding a packet received by the packet receiving unit;
From the packet held in the packet holding unit and the sequence number of the packet determined to be missing by the missing determination unit, a response unit that requests retransmission of the lost packet to the transmission terminal;
A communication apparatus comprising:
パケットを受信するパケット受信部と、
前記パケット受信部が受信したパケットの受信順及び前記インタフェース識別子から前記ネットワークの経路の分岐数を推定して計算する推定部と、
前記受信順、前記インタフェース識別子及び前記分岐数から前記経路の途中で欠落したパケットを判定する欠落判定部と、
前記パケット受信部が受信したパケットを保持するパケット保持部と、
前記パケット保持部に保持されているパケット及び前記欠落判定部で欠落と判定されたパケットの順序番号とから、欠落したパケットの再送を要求する応答部と、
を備えることを特徴とする、通信装置。 In a receiving terminal that receives a packet in which a sequence of packets of a predetermined interval is transmitted from a transmitting terminal via a network with a sequence number and an interface identifier assigned by a plurality of transmitting interfaces,
A packet receiver for receiving packets;
An estimation unit for estimating and calculating the number of branches of the network path from the reception order of the packets received by the packet reception unit and the interface identifier;
A loss determination unit for determining a packet lost in the middle of the route from the reception order, the interface identifier, and the number of branches;
A packet holding unit for holding a packet received by the packet receiving unit;
From the packet held in the packet holding unit and the sequence number of the packet determined to be missing by the missing decision unit, a response unit that requests retransmission of the missing packet;
A communication apparatus comprising:
前記パケット受信ステップで受信したパケットの受信順から前記ネットワークの経路の分岐数を推定して計算する推定ステップと、
前記受信順及び前記分岐数から前記経路の途中で欠落したパケットを判定する欠落判定ステップと、
前記パケット受信ステップで受信したパケットを保持するパケット保持ステップと、
前記パケット保持ステップで保持されているパケット及び前記欠落判定ステップで欠落と判定されたパケットの順序番号とから、欠落したパケットの再送を前記送信端末へ要求する応答ステップと、
を備えることを特徴とする、通信制御方法。 A packet receiving step of receiving a packet in which a sequence of packets of a predetermined interval is transmitted with a sequence number assigned from a transmitting terminal via a network;
An estimation step for estimating and calculating the number of branches of the network path from the reception order of the packets received in the packet reception step;
Deletion determination step for determining a packet lost in the middle of the route from the reception order and the number of branches;
A packet holding step for holding the packet received in the packet receiving step;
From the packet held in the packet holding step and the sequence number of the packet determined to be missing in the missing determination step, a response step for requesting the transmitting terminal to retransmit the missing packet;
A communication control method comprising:
前記パケット受信ステップで受信したパケットの受信順及び前記インタフェース識別子から前記ネットワークの経路の分岐数を推定して計算する推定ステップと、
前記受信順、前記インタフェース識別子及び前記分岐数から前記経路の途中で欠落したパケットを判定する欠落判定ステップと、
前記パケット受信ステップで受信したパケットを保持するパケット保持ステップと、
前記パケット保持ステップで保持されているパケット及び前記欠落判定ステップで欠落と判定されたパケットの順序番号とから、欠落したパケットの再送を要求する応答ステップと、
を備えることを特徴とする、通信制御方法。
A packet receiving step of receiving a packet in which a sequence of packets of a predetermined interval is transmitted from a transmitting terminal via a network with a sequence number and an interface identifier assigned by a plurality of transmitting interfaces;
An estimation step of estimating and calculating the number of branches of the network path from the reception order of the packets received in the packet reception step and the interface identifier;
Deletion determination step of determining a packet lost during the route from the reception order, the interface identifier, and the number of branches;
A packet holding step for holding the packet received in the packet receiving step;
A response step for requesting retransmission of the missing packet from the packet held in the packet holding step and the sequence number of the packet determined to be missing in the missing decision step;
A communication control method comprising:
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010045387A JP4973749B2 (en) | 2010-03-02 | 2010-03-02 | Communication apparatus and communication control method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010045387A JP4973749B2 (en) | 2010-03-02 | 2010-03-02 | Communication apparatus and communication control method |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2011182234A JP2011182234A (en) | 2011-09-15 |
JP4973749B2 true JP4973749B2 (en) | 2012-07-11 |
Family
ID=44693269
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010045387A Active JP4973749B2 (en) | 2010-03-02 | 2010-03-02 | Communication apparatus and communication control method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4973749B2 (en) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5299459B2 (en) * | 2011-03-24 | 2013-09-25 | 沖電気工業株式会社 | Communication apparatus and communication control method |
CN108243211A (en) * | 2016-12-24 | 2018-07-03 | 华为技术有限公司 | A kind of data transmission method and device |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0946375A (en) * | 1995-07-26 | 1997-02-14 | Hitachi Ltd | Method for resending packet in packet exchange network |
JP4497322B2 (en) * | 2004-01-09 | 2010-07-07 | 日本電気株式会社 | Communication method |
-
2010
- 2010-03-02 JP JP2010045387A patent/JP4973749B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
JP2011182234A (en) | 2011-09-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5131194B2 (en) | Packet recovery method, communication system, information processing apparatus, and program | |
CN105812287B (en) | Efficient circuit in packet switching network | |
TW201115986A (en) | System for efficient recovery of Node-B buffered data following MAC layer reset | |
JP2006060674A (en) | Communication equipment, data communication method and program | |
WO2001099355A1 (en) | Method and system for packet retransmission | |
EP3471354A1 (en) | Method and apparatus for transmitting data in wireless communication system | |
CN102185771A (en) | Dispatching method and system for data packet of sender in MPTCP (Multipath TCP (Transmission Control Protocol)) | |
CN107104902B (en) | RDMA data transmission method, related device and system | |
JP5161651B2 (en) | Wireless device and control program for wireless device | |
US8838782B2 (en) | Network protocol processing system and network protocol processing method | |
CN104243111A (en) | Method and device for transmitting data packet | |
JP4973749B2 (en) | Communication apparatus and communication control method | |
JP5664646B2 (en) | Packet alignment apparatus, packet alignment method, and storage medium | |
CN111131017B (en) | MPTCP (Multi-protocol Transmission control protocol) cross-layer optimization method and system based on multi-cellular wireless access gateway | |
CN110808917A (en) | Multilink aggregation data retransmission method and transmitting equipment | |
CN106130746A (en) | A kind of data transmission method and device | |
JP6468566B2 (en) | Data transmission control system and method, and data transmission control program | |
JP4633025B2 (en) | Data signal transfer method and receiving apparatus | |
JP2009081567A (en) | Retransmission control system, retransmission control method, transmitter and receiver | |
KR20130048547A (en) | Apparatus and method for routing using lqi based position | |
KR101411782B1 (en) | Terminal device with multi communication interface and method for controlling communication of the ternimal device | |
JP5299459B2 (en) | Communication apparatus and communication control method | |
JP4505575B2 (en) | COMMUNICATION SYSTEM, GATEWAY TRANSMISSION DEVICE, GATEWAY RECEPTION DEVICE, TRANSMISSION METHOD, RECEPTION METHOD, AND INFORMATION RECORDING MEDIUM | |
JP6569450B2 (en) | Information processing apparatus and information processing system | |
JP2008199431A (en) | Communication device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20120224 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20120313 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20120326 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4973749 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20150420 Year of fee payment: 3 |