JP2010074854A - Communication device, communication system, method of detecting missing packet, and program for detecting missing packet - Google Patents
Communication device, communication system, method of detecting missing packet, and program for detecting missing packet Download PDFInfo
- Publication number
- JP2010074854A JP2010074854A JP2009270386A JP2009270386A JP2010074854A JP 2010074854 A JP2010074854 A JP 2010074854A JP 2009270386 A JP2009270386 A JP 2009270386A JP 2009270386 A JP2009270386 A JP 2009270386A JP 2010074854 A JP2010074854 A JP 2010074854A
- Authority
- JP
- Japan
- Prior art keywords
- packet
- order
- buffer
- network
- sequence
- 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.)
- Granted
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
- Communication Control (AREA)
Abstract
Description
本発明は、複数経路にデータを分散させて帯域拡大を図る通信技術に関し、特に、送信機と受信機が複数の網によって接続されているマルチパス環境において、前記各網内でのパケットの順序逆転が発生しない場合に、1系統のみのシーケンス番号を用いて、パケットロス(欠落)を高速に検出するための通信装置、通信システム、パケット欠落検出方法、およびパケット欠落検出プログラムに関する。 The present invention relates to a communication technique for spreading data by distributing data in a plurality of paths, and in particular, in a multipath environment in which a transmitter and a receiver are connected by a plurality of networks, the order of packets in each network. The present invention relates to a communication apparatus, a communication system, a packet loss detection method, and a packet loss detection program for detecting packet loss (missing) at high speed using a sequence number of only one system when no reverse rotation occurs.
従来、送信端末と受信端末の間の通信で用いられる1つの通信フローのデータを複数のフローに分岐させ、元のフローを復元する通信方法がある。このような通信方法として、例えば送信端末が属する第1のLAN(Local Area Network)と受信端末が属する第2のLANに、それぞれゲートウェイを設置し、送信端末から送出されたTCP(Transmission Control Protocol)コネクションのデータを、第1のLANのゲートウェイにおいてパケット単位でそれぞれの通信経路に振り分け、第2のLANのゲートウェイでは複数の通信経路から受信したパケットの順序逆転をTCPのシーケンス番号に従って補正してデータを復元する方法が提案されている(たとえば、特許文献1参照。)。 Conventionally, there is a communication method in which data of one communication flow used in communication between a transmission terminal and a reception terminal is branched into a plurality of flows to restore the original flow. As such a communication method, for example, a TCP (Transmission Control Protocol) transmitted from a transmission terminal is installed by setting a gateway in each of a first LAN (Local Area Network) to which a transmission terminal belongs and a second LAN to which a reception terminal belongs. The connection data is distributed to each communication path in packet units in the first LAN gateway, and the second LAN gateway corrects the order reversal of packets received from a plurality of communication paths according to the TCP sequence number. Has been proposed (see, for example, Patent Document 1).
また、従来、複数の通信回線を効率的に利用し、回線利用率を向上させる方法として、端末のTCPに機能を追加して、従来では1本のTCPコネクションを用いていた通信を複数のTCPコネクションを利用するように変更する方法がある(例えば、特許文献2参照)。この方法では、送信端末と受信端末間の通信で1つの通信フローで行われていた通信を、複数の通信フローに分割して並列的に送る。送信端末から受信端末へとデータを送信する場合、送信端末の通信プロトコルは、1つの通信フローのデータを分割して複数の通信フローに振り分け、分割した複数の通信フローを元の1つの通信フローに復元するための復元情報として新たなヘッダをTCP/IPパケットに付加して(つまり2系統のシーケンス番号を用いて)、複数の通信フローでデータを送信する。受信端末の通信プロトコルは、複数の通信フローから受信したデータの復元情報を参照し、1つの通信フローを復元する。 In addition, as a method for efficiently using a plurality of communication lines and improving the line utilization rate, a function has been added to the TCP of the terminal so that communication that conventionally uses one TCP connection can be changed to a plurality of TCPs. There is a method of changing to use a connection (for example, see Patent Document 2). In this method, communication performed in one communication flow in communication between the transmission terminal and the reception terminal is divided into a plurality of communication flows and sent in parallel. When data is transmitted from the transmission terminal to the reception terminal, the communication protocol of the transmission terminal divides the data of one communication flow and distributes it to a plurality of communication flows, and the plurality of divided communication flows are one original communication flow. A new header is added to the TCP / IP packet as restoration information for restoration to (i.e., using two system sequence numbers), and data is transmitted in a plurality of communication flows. The communication protocol of the receiving terminal refers to the restoration information of data received from a plurality of communication flows, and restores one communication flow.
第1の課題として、パケットロスの検出が遅いという問題があった。 The first problem is that packet loss detection is slow.
従来技術1の通信方法では、端末のTCPが1つの通信経路で使用されることを前提として、シーケンス(順序)異常により欠落判定を行うように設計されているため、複数の通信経路を用いて通信を行うと、通信経路の遅延時間の差により順序逆転が発生した場合に、パケット欠落(パケットロス、パケット廃棄も同義)が発生したと誤検出してしまう。つまり、パケット廃棄か順序逆転かを見極められない。この問題に対処するために、シーケンス(順序)異常による欠落判定を行わないようにすると、再送タイムアウトを用いた欠落判定しかできなくなるため、パケットロスの検出が遅くなるという問題があった。
In the communication method of the
TCPはパケットロスの検出を再送の契機としているため、パケットロスの検出が遅くなると、再送の開始も遅くなり、結果としてスループットが低下し、通信経路の性能を充分に発揮することができない。 Since TCP uses packet loss detection as a trigger for retransmission, if the detection of packet loss is delayed, the start of retransmission is also delayed. As a result, throughput is lowered and communication path performance cannot be fully exhibited.
第2の課題として、コスト増を招くという問題があった。 As a second problem, there was a problem of increasing the cost.
従来技術2の通信方法では、2段のヘッダを設け、2系統のシーケンス番号を用いる必要があり、2系統のシーケンス番号用いると、転送処理ならびに管理機構などが複雑化し、コスト増を招くという問題があった。
In the communication method of the
本発明の目的は、送信機と受信機が複数の網によって接続されているマルチパス環境において、前記各網内でのパケットの順序逆転が発生しない場合に、1系統のみのシーケンス番号を用いて、パケットロスを高速に検出する(つまり、1系統のみのシーケンス番号を用いて、パケット廃棄か順序逆転かを高速に見極められるようにする)ための通信装置、通信システム、パケット欠落検出方法、およびパケット欠落検出プログラムを提供することにある。 An object of the present invention is to use a sequence number of only one system in a multipath environment in which a transmitter and a receiver are connected by a plurality of networks, when packet reversal in each network does not occur. , A communication device, a communication system, a packet loss detection method, and a packet loss detection method for detecting packet loss at high speed (that is, using only one system sequence number so that packet discard or order reversal can be determined at high speed), It is to provide a packet loss detection program.
本発明の第1の観点によれば、送信機と受信機が、網内でのパケット順序逆転が発生しない複数の網で接続されている場合において、順序確認を行うまでパケットを蓄積する、網ごとに複数設置された順序バッファと、パケットに付加されたシーケンス番号を確認し、フローの順序を復元しながら前記順序バッファよりパケットを取り出す取出制御部と、前記順序バッファがあふれた場合に欠落が発生したと判定する格納制御部を備えることを特徴とする通信装置が提供される。 According to a first aspect of the present invention, when a transmitter and a receiver are connected by a plurality of networks that do not cause packet order reversal in the network, the network stores packets until the order is confirmed. A plurality of sequence buffers installed for each packet, a sequence number added to the packet, a flow control unit that retrieves packets from the sequence buffer while restoring the flow sequence, and a dropout when the sequence buffer overflows There is provided a communication device including a storage control unit that determines that the occurrence has occurred.
本発明の第2の観点によれば、送信機と受信機が、網内でのパケット順序逆転が発生しない複数の網で接続されている場合において、順序確認を行うまでパケットを蓄積する、網ごとに複数設置された順序バッファと、パケットに付加されたシーケンス番号を確認し、フローの順序を復元しながら前記順序バッファよりパケットを取り出す取出制御部と、前記順序バッファがあふれた場合に欠落が発生したと判定する格納制御部と、網毎の帯域と遅延時間より前記順序バッファの容量を決定する容量決定部と、前記遅延時間を計算するために時刻情報を提供する内蔵時計を備えることを特徴とする通信装置が提供される。 According to a second aspect of the present invention, when a transmitter and a receiver are connected by a plurality of networks that do not cause packet order reversal in the network, the network stores packets until the order is confirmed. A plurality of sequence buffers installed for each packet, a sequence number added to the packet, a flow control unit that retrieves packets from the sequence buffer while restoring the flow sequence, and a dropout when the sequence buffer overflows A storage control unit that determines that it has occurred, a capacity determination unit that determines the capacity of the sequential buffer from the bandwidth and delay time for each network, and a built-in clock that provides time information to calculate the delay time A featured communication device is provided.
本発明の第3の観点によれば、送信機と受信機が、網内でのパケット順序逆転が発生しない複数の網で接続されている場合において、前記受信機が順序確認を行うまでパケットを蓄積する、網ごとに複数設置された順序バッファと、パケットに付加されたシーケンス番号を確認し、フローの順序を復元しながら前記順序バッファよりパケットを取り出す取出制御部と、前記順序バッファがあふれた場合に欠落が発生したと判定する格納制御部を備えることを特徴とする通信システムが提供される。 According to a third aspect of the present invention, when a transmitter and a receiver are connected by a plurality of networks in which packet order inversion does not occur in the network, packets are not received until the receiver performs order confirmation. The sequence buffer that is stored in plural for each network to be stored, the sequence number added to the packet is confirmed, the fetch control unit for retrieving the packet from the sequence buffer while restoring the flow sequence, and the sequence buffer overflowed There is provided a communication system including a storage control unit that determines that a loss has occurred.
本発明の第4の観点によれば、送信機と受信機が、網内でのパケット順序逆転が発生しない複数の網で接続されている場合において、前記受信機が、順序確認を行うまでパケットを蓄積する、網ごとに複数設置された順序バッファと、パケットに付加されたシーケンス番号を確認し、フローの順序を復元しながら前記順序バッファよりパケットを取り出す取出制御部と、前記順序バッファがあふれた場合に欠落が発生したと判定する格納制御部と、網毎の帯域と遅延時間より前記順序バッファの容量を決定する容量決定部と、前記遅延時間を計算するために時刻情報を提供する内蔵時計を備え、前記送信機が、前記容量決定部が遅延時間を計算するためにパケットヘッダ内に送信時刻を書き込む振り分け部と、前記遅延時間を計算するための時刻情報を提供する内蔵時計を備えることを特徴とする通信システムが提供される。 According to a fourth aspect of the present invention, when a transmitter and a receiver are connected by a plurality of networks that do not cause a packet order reversal in the network, packets are received until the receiver performs order confirmation. A sequence buffer installed in each network, a sequence number added to the packet, and a fetch control unit that retrieves the packet from the sequence buffer while restoring the flow sequence, and the sequence buffer overflows A storage control unit that determines that a loss has occurred, a capacity determination unit that determines the capacity of the sequential buffer from the bandwidth and delay time for each network, and a built-in circuit that provides time information to calculate the delay time A transmitter, wherein the transmitter determines a delay time for the capacity determination unit to write a transmission time in a packet header, and calculates the delay time. Communication system, comprising a built-in clock providing the time information is provided.
本発明の第5の観点によれば、送信機と受信機が、網内でのパケット順序逆転が発生しない複数の網で接続されている場合において、前記受信機が、順序確認を行うまで網ごとの順序バッファにパケットを蓄積し、前記順序バッファがあふれた場合に欠落が発生したと判定することを特徴とするパケット欠落検出方法が提供される。 According to the fifth aspect of the present invention, when the transmitter and the receiver are connected by a plurality of networks in which the packet order inversion does not occur in the network, the network until the receiver confirms the order. A packet loss detection method is provided in which packets are stored in each order buffer and it is determined that a loss has occurred when the order buffer overflows.
本発明の第6の観点によれば、送信機と受信機が、網内でのパケット順序逆転が発生しない複数の網で接続されている場合において、前記受信機が、順序確認を行うまで網ごとの順序バッファにパケットを蓄積し、前記順序バッファがあふれた場合に欠落が発生したと判定し、網毎の帯域と遅延時間より前記順序バッファの容量を決定することを特徴とするパケット欠落検出方法が提供される。 According to the sixth aspect of the present invention, when the transmitter and the receiver are connected by a plurality of networks in which the packet order inversion does not occur in the network, the network until the receiver confirms the order. Packet loss detection, wherein packets are stored in each order buffer, and when the order buffer overflows, it is determined that a loss has occurred, and the capacity of the order buffer is determined from the bandwidth and delay time of each network. A method is provided.
本発明の第7の観点によれば、送信機と受信機が、網内でのパケット順序逆転が発生しない複数の網で接続されている場合において、前記受信機が、順序確認を行うまで網ごとの順序バッファにパケットを蓄積し、前記順序バッファがあふれた場合に欠落が発生したと判定することを特徴とするパケット欠落検出方法をコンピュータに行わせるためのプログラムが提供される。 According to a seventh aspect of the present invention, when a transmitter and a receiver are connected by a plurality of networks that do not cause a packet order reversal in the network, the network until the receiver performs order confirmation. There is provided a program for causing a computer to perform a packet loss detection method characterized in that a packet is accumulated in each sequence buffer and it is determined that a loss has occurred when the sequence buffer overflows.
本発明の第8の観点によれば、送信機と受信機が、網内でのパケット順序逆転が発生しない複数の網で接続されている場合において、前記受信機が、順序確認を行うまで網ごとの順序バッファにパケットを蓄積し、前記順序バッファがあふれた場合に欠落が発生したと判定し、網毎の帯域と遅延時間より前記順序バッファの容量を決定することを特徴とするパケット欠落検出方法をコンピュータに行わせるためのプログラムが提供される。 According to an eighth aspect of the present invention, when a transmitter and a receiver are connected by a plurality of networks that do not cause a packet order reversal in the network, the network until the receiver performs order confirmation. Packet loss detection, wherein packets are stored in each order buffer, and when the order buffer overflows, it is determined that a loss has occurred, and the capacity of the order buffer is determined from the bandwidth and delay time of each network. A program is provided for causing a computer to perform the method.
次に、本発明の効果について説明する。 Next, the effect of the present invention will be described.
第1の効果は、送信機と受信機が複数の網によって接続されているマルチパス環境において、前記各網内でのパケットの順序逆転が発生しない場合に、1段のみのシーケンス番号の管理を用いて、パケットロスを高速に検出することができる。 The first effect is that, in a multipath environment in which a transmitter and a receiver are connected by a plurality of networks, when sequence reversal of packets in each network does not occur, only one-stage sequence number is managed. By using this, packet loss can be detected at high speed.
これは、前記受信機内の欠落検出部において、パケットロスが発生した場合はすべての網の順序バッファにパケットが格納される特性に着目し、網毎に設置した順序保証バッファへのパケット滞留状態を監視するからである。 This is because the loss detection unit in the receiver pays attention to the characteristic that the packet is stored in the order buffer of all networks when packet loss occurs, and the packet retention state in the order guarantee buffer installed for each network. It is because it monitors.
また、これは、前記受信機内の格納制御部において、異常発生時は順序バッファからのパケット取出が行えず、バッファあふれが発生する特性に着目し、網毎に設置した順序バッファのあふれを監視するからである。 In addition, in the storage control unit in the receiver, when an abnormality occurs, the packet cannot be taken out from the order buffer, and the overflow of the order buffer installed for each network is monitored by paying attention to the characteristic that the buffer overflows. Because.
また、これは、前記受信機内の格納制御部において、異常発生時は順序バッファからのパケット取出が行えず、バッファあふれが発生する特性に着目し、網毎に設置した順序バッファのあふれを監視して障害検出する際に、前記受信機内の容量決定部において、順序バッファの大きさを網間の遅延差と帯域から必要最小限になるように設定するからである。 Also, this is because the storage control unit in the receiver cannot monitor the overflow of the sequential buffer installed in each network, paying attention to the characteristic that the packet cannot be taken out from the sequential buffer when an abnormality occurs and the buffer overflows. This is because the capacity determination unit in the receiver sets the size of the order buffer so as to be the minimum necessary based on the delay difference and the bandwidth between the networks.
第2の効果は、送信機と受信機が複数の網によって接続されているマルチパス環境において、前記各網内でのパケットの順序逆転が発生しない場合に、1段のみのシーケンス番号の管理を用いて、パケットロス時の再送を高速に開始することができる。 The second effect is that in a multipath environment in which a transmitter and a receiver are connected by a plurality of networks, the sequence number of only one stage is managed when the packet order inversion does not occur in each network. By using this, retransmission at the time of packet loss can be started at high speed.
これは、前記受信機内の欠落検出部において、パケットロスが発生した場合はすべての網の順序バッファにパケットが格納される特性に着目し、網毎に設置した順序保証バッファへのパケット滞留状態を監視することで、再送タイマによらない高速な欠落検出を行えるからである。 This is because the loss detection unit in the receiver pays attention to the characteristic that the packet is stored in the order buffer of all networks when packet loss occurs, and the packet retention state in the order guarantee buffer installed for each network. This is because by monitoring, it is possible to detect missing at high speed without using the retransmission timer.
また、これは、前記受信機内の格納制御部において、異常発生時は順序バッファからのパケット取出が行えず、バッファあふれが発生する特性に着目し、網毎に設置した順序バッファのあふれを監視し、バッファあふれを再送開始の契機とするからである。 Also, this is because the storage control unit in the receiver cannot monitor the overflow of the sequential buffer installed in each network, paying attention to the characteristic that the packet cannot be taken out from the sequential buffer when an abnormality occurs and the buffer overflows. This is because a buffer overflow is a trigger for starting retransmission.
また、これは、前記受信機内の格納制御部において、異常発生時は順序バッファからのパケット取出が行えず、バッファあふれが発生する特性に着目し、網毎に設置した順序バッファのあふれを監視してバッファあふれを再送開始の契機とする際に、前記受信機内の容量決定部において、順序バッファの大きさを網間の遅延差と帯域から必要最小限になるように設定するからである。 Also, this is because the storage control unit in the receiver cannot monitor the overflow of the sequential buffer installed in each network, paying attention to the characteristic that the packet cannot be taken out from the sequential buffer when an abnormality occurs and the buffer overflows. This is because, when the buffer overflow is triggered by the start of retransmission, the capacity determination unit in the receiver sets the size of the order buffer so as to be the minimum necessary based on the delay difference and the bandwidth between the networks.
以下、図面を参照して本発明を実施するための形態について詳細に説明する。 DESCRIPTION OF EMBODIMENTS Hereinafter, embodiments for carrying out the present invention will be described in detail with reference to the drawings.
以下の説明においては、1対の送信機と受信機との間の通信を、1フローと定義する。また、あるフローが流れる経路をパスと定義する。例えば、1フローを4つの網(ネットワーク)に分散させて通信する場合は、4パスを用いて通信すると言い、2つのフローを4つの網(ネットワーク)に分散させて通信する場合は、8つのパスを用いて通信するという。ただし以下の説明では、1つのフローに着目して説明を行うため、結果的に網とパスが同義になっている。 In the following description, communication between a pair of transmitter and receiver is defined as one flow. Also, a route through which a certain flow flows is defined as a path. For example, when communicating by distributing one flow to four networks (networks), it is said that communication is performed using four paths. When communicating by distributing two flows to four networks (networks), there are eight Communicate using a path. However, in the following description, since description will be made focusing on one flow, as a result, the network and the path are synonymous.
(第1の実施の形態)
(構成の説明)
図1を参照して、本実施の形態における構成について説明する。
(First embodiment)
(Description of configuration)
With reference to FIG. 1, the structure in this Embodiment is demonstrated.
送信機1は、データ送信部11、SEQ付与部12、再送バッファ13、振り分け部14、再送タイマ15を備える。
The
データ送信部11は、受信機2に対して送信するデータを生成し、SEQ付与部12に渡す。一般的にはサーバアプリケーションなどが、データ送信部にあたる。
The
SEQ付与部12は、データ送信部12から受信機2に対して送信するデータを受け取り、前記データを網31〜網34で転送可能な大きさに分割し、分割した個々のデータ(以下パケットと呼ぶ)に対して転送に必要なヘッダや整序番号(シーケンスナンバーともいう、以下SEQと表記する)を設定し、再送バッファ13に渡す。
The
再送バッファ13は、FIFOバッファであり、以下の動作をおこなう。
The
(1)SEQ付与部12からSEQつきのパケットを受け取り格納する。
(1) Receive and store a packet with a SEQ from the
(2)あらかじめ決められた速度や個数にしたがい、前記パケットの複製を振り分け部14に送る。このとき、再送タイマ15をセットする。
(2) Send a copy of the packet to the
(3)ACK送信部23より送達確認(ACK)を受け取り、ACKに記載された受信済シーケンスナンバー以下の値の格納パケットを消去する。このとき、再送タイマ15を再セットする。
(3) A delivery confirmation (ACK) is received from the
(4)(3)において、もしACKに記載されたシーケンスナンバーが、前回受信したACKに記載されたシーケンスナンバーと同一である場合は、再送要求(重複ACK)であるとみなし、ACKに記載されたシーケンスナンバー以降のパケットを、(2)と同様あらかじめ決められた速度や個数にしたがい、前記パケットの複製を振り分け部14に再送信する。
(4) In (3), if the sequence number described in the ACK is the same as the sequence number described in the previously received ACK, it is regarded as a retransmission request (duplicate ACK) and is described in the ACK. The packets after the sequence number are retransmitted to the
(5)再送タイマ15の満了時に、前回受信したACKに記載されたシーケンスナンバー以降のパケットを、(2)と同様あらかじめ決められた速度や個数にしたがい、前記パケットの複製を振り分け部14に再送信する。
(5) When the
振り分け部14は、再送バッファ13から到着したパケットを、ラウンドロビンにより網31〜34に順次振り分ける。
The
再送タイマ15は、再送バッファ13からセット要求を受信すると、あらかじめ設定された時間が経過した際に、再送バッファ13に対してタイマ満了通知を行う。
When receiving a set request from the
受信機2は、順序バッファ211〜214、欠落検出部20、取出制御部22、ACK送信部23、出力バッファ24、SEQ削除部25、データ受信部26を備える。
The
順序バッファ211は、FIFOバッファであり、網31からパケットを受信して一旦格納し、取出制御部22に格納完了通知を行う。また取出制御部22からの指示に従い、出力バッファ24に格納したパケットを転送する。
The
順序バッファ211は、網31より到着したパケットのシーケンスナンバーと、前回に網31より到着したパケットのシーケンスナンバーを比較して、今回到着したパケットのSEQが、前回到着したパケットのSEQより小さいか、もしくは同じである場合は、再送が発生したとみなして、格納済パケットをすべて廃棄する。
The
順序バッファ212は、FIFOバッファであり、網32からパケットを受信して一旦格納し、取出制御部22に格納完了通知を行う。また取出制御部22からの指示に従い、出力バッファ24に格納したパケットを転送する。
The
順序バッファ212は、網32より到着したパケットのシーケンスナンバーと、前回に網32より到着したパケットのシーケンスナンバーを比較して、今回到着したパケットのSEQが、前回到着したパケットのSEQより小さいか、もしくは同じである場合は、再送が発生したとみなして、格納済パケットをすべて廃棄する。
The
順序バッファ213は、FIFOバッファであり、網33からパケットを受信して一旦格納し、取出制御部22に格納完了通知を行う。また取出制御部22からの指示に従い、出力バッファ24に格納したパケットを転送する。
The
順序バッファ213は、網33より到着したパケットのシーケンスナンバーと、前回に網33より到着したパケットのシーケンスナンバーを比較して、今回到着したパケットのSEQが、前回到着したパケットのSEQより小さいか、もしくは同じである場合は、再送が発生したとみなして、格納済パケットをすべて廃棄する。
The
順序バッファ214は、FIFOバッファであり、網34からパケットを受信して一旦格納し、取出制御部22に格納完了通知を行う。また取出制御部22からの指示に従い、出力バッファ24に格納したパケットを転送する。
The
順序バッファ214は、網34より到着したパケットのシーケンスナンバーと、前回に網34より到着したパケットのシーケンスナンバーを比較して、今回到着したパケットのSEQが、前回到着したパケットのSEQより小さいか、もしくは同じである場合は、再送が発生したとみなして、格納済パケットをすべて廃棄する。
The
欠落検出部20は、取出制御部22からパケット取出完了の通知を受けると、パケットロスの有無を確認する。もしパケットロスを発見した場合は、ACK送信部23に対して再送要求を行う。
Upon receiving notification of completion of packet extraction from the
取出制御部22は、順序バッファ211〜214からの格納完了通知を受け、順序確認動作221を行い、SEQの順番に従い、出力バッファ24へパケットを転送する。このとき、ACK送信部23に対して、出力バッファ24に転送したパケットのSEQを通知する。
Upon receiving the storage completion notification from the order buffers 211 to 214, the take-out
ACK送信部23は、以下の動作を行う。なお本願では出力バッファ24へ1パケット転送が完了する毎に1パケットのACKを送信する1ACK方式で説明を行うが、N(Nは1以上)個のパケット到着報告を1つのACKでまとめて行うN_ACK方式を用いても良い。
The
(1)取り出し制御部22から出力バッファ24に転送したパケットのSEQ通知を受け、前記SEQを含む送達確認パケット(以下ACKと示す)を生成し、再送バッファ13に通知する。このときACKは、網31〜34のいずれかを用いて通知する。また、通知を受けたSEQを記憶しておく。
(1) Upon receipt of a SEQ notification of the packet transferred from the take-out
(2)欠落検出部20から再送要求を受け、(1)で記憶したSEQを含むACKを再度生成し、再送バッファ13に通知する。このときACKは、網31〜34のいずれかを用いて通知する。(2)におけるACKは、再送バッファ13において重複ACK(再送要求)として扱われる。(2)のACKは複製の上、網31〜34の全部を用いて転送しても良いが、この場合は、再送バッファ13において再送が頻発しないよう、再送バッファ13において、ロック機構を設ける必要がある。
(2) Upon receiving a retransmission request from the
出力バッファ24は、FIFOバッファであり、順序バッファ211〜214よりパケットを受け取り格納する。そしてSEQ削除部25から要求があった際に、格納された順にSEQ削除部25に出力する。
The
SEQ削除部25は、出力バッファ24よりパケットを受け取り、SEQやヘッダを削除して、SEQ削除後のデータをデータ受信部26に転送する。
The
データ受信部26は、SEQ削除部26よりデータを受信する。一般的にはクライアントアプリケーションとも呼ばれる。
The
網31は、送信機1と受信機2の間を結ぶネットワークである。網31はイーサネット(登録商標)など、網内でのパケットの順序逆転が発生しない網であるとする。図1において網31は1本の線で表現されているが、実際には網内でのパケット順序逆転が発生しない限り、リンクの他に、スイッチ等が存在しても良い。また、網31、32、33、34はそれぞれ物理的、もしくはVLAN等で論理的に遮断されており、互いに交わることがない。
The
網32〜網34は、網31と同様のネットワークである。
The
(動作の説明)
図2の流れ図を参照して、取出制御部22における順序確認動作221を説明する。
(Description of operation)
With reference to the flowchart of FIG. 2, the
順序バッファ211〜214の何れかに1つのパケットが格納されると、取出制御部22に格納完了通知が行われ、順序確認動作221が起動する(ステップ22101)。
When one packet is stored in any of the order buffers 211 to 214, a storage completion notification is sent to the
順序バッファ211の先頭(出力バッファ24側)に格納されているパケットのSEQを確認する(ステップ22102)。
The SEQ of the packet stored at the head (on the
ステップ22102において確認した順序バッファ211の先頭パケットのSEQ(先頭SEQ)と、順序制御部22が次に出力バッファ24に送信しようとしているSEQ(受信期待SEQ、以下期待SEQと記す)を比較する(ステップ22103)。
Compare the SEQ (head SEQ) of the first packet of the
ステップ22103において先頭SEQと期待SEQが一致した場合には、順序バッファ211より前記パケットを取り出して、出力バッファ24に送付する(ステップ22104)。
If the leading SEQ and the expected SEQ match in
ACK送信部23に対して、送達確認パケット(ACK)の送信を要求する。このACKには期待SEQのSEQが格納され、期待SEQまでの受信と整序が完了したことを送信機1に通知する(ステップ22105)。
The
期待SEQをインクリメントする。つまり、期待SEQ=期待SEQ+1とする(ステップ22106)。 Increment expected SEQ. That is, expected SEQ = expected SEQ + 1 (step 22106).
ステップ22107〜22111は、順序バッファ212に関して、ステップ22102〜22106と同様の動作を行う。
ステップ22112〜22116は、順序バッファ213に関して、ステップ22102〜22106と同様の動作を行う。
ステップ22117〜22121は、順序バッファ214に関して、ステップ22102〜22106と同様の動作を行う。
ステップ22102〜ステップ22121の実行中に、順序バッファから取り出して出力バッファへ送付したパケットの数をカウントし、もし1以上である場合には(ステップ22122でYES)、再度ステップ22102以降を実行する。もし順序バッファから取り出して出力バッファへ送付したパケットの数が0である場合、つまり出力バッファ23に転送可能な(つまり整序可能な)パケットが、順序バッファ211〜214のいずれにも存在しない場合(ステップ22122でNO)、ステップ22123を実行する。
During the execution of
欠落検出部20にパケット取出完了を通知し、欠落検出動作を起動する(ステップ22123)。
The
図3の流れ図を参照して、欠落検出部20の動作を説明する。
With reference to the flowchart of FIG. 3, the operation of the missing
順序確認動作221の完了により、欠落検出動作が起動する(ステップ2001)。
When the
順序バッファ211に格納されているパケットの個数を確認する(ステップ2002)。
The number of packets stored in the
もし順序バッファ211に格納されているパケットの数が0である場合は、動作を終了する。格納パケット数が1以上である場合は、ステップ2004に移る(ステップ2003)。
If the number of packets stored in the
ステップ2004およびステップ2005は、順序バッファ212に関して、ステップ2002およびステップ2003と同様の動作を行う。
ステップ2006およびステップ2007は、順序バッファ213に関して、ステップ2002およびステップ2003と同様の動作を行う。
ステップ2008およびステップ2009は、順序バッファ214に関して、ステップ2002およびステップ2003と同様の動作を行う。
ステップ2002〜2009を実行した結果、順序バッファ211〜214の全てにおいて、1つ以上のパケットの格納が確認された場合(ステップ2009でYES)、ACK送信部に対して再送要求を行う。ACK送信部は、前回送信したACKと同じSEQが含まれるACK(重複ACK)を生成し、送信機1に対して再送要求を行う(ステップ2010)。
As a result of executing
(動作例)
(動作概要)
以下、図1を参照して、本実施の形態における送信機1および送信機2の動作概要を説明する。
(Operation example)
(Overview of operation)
Hereinafter, with reference to FIG. 1, the operation | movement outline | summary of the
送信機1において、データ送信部11が、データ受信部26に対するデータを生成し、SEQ付与部12に送付する。
In the
SEQ付与部12は、データ送信部12からのデータを、網31〜34で転送可能な大きさに分割してヘッダを取り付けてパケットを生成する。さらに受信機2がデータを復元できるよう、パケットに対して整序のためにシーケンスナンバー(SEQ)を割り振り、再送バッファ13に転送する。
The
再送バッファ13は、SEQ付与部12よりパケットを受け取り一旦格納する。そしてあらかじめ設定された送信レートやウインドウサイズ等に従って、格納したパケットの複製を振り分け部14に送出する。
The
振り分け部14は、再送バッファ13から受け取ったパケットを、ラウンドロビン等により網31〜34の各網に分散させて送出する。例えばSEQ15のパケットは網31、SEQ16のパケットは網32、SEQ17のパケットは網33、SEQ18のパケットは網34というように、一連のSEQが付加されたパケットを、網31〜34に振り分ける。
The
網31〜34は送信機1から送出されたパケットを、受信機2に送る。
The
順序バッファ211は、網31から到着したパケットを格納し、取出制御部22に格納完了を通知する。取出制御部22は、順序バッファ211からの格納完了通知を受け、順序確認動作221を起動する。
The
順序バッファ212〜214も同様に、網32〜34より到着したパケットを格納し、取出制御部22に格納完了を通知する。そして取出制御部22は、順序バッファ212〜214からの格納完了通知を受け、順序確認動作221を起動する。
Similarly, the order buffers 212 to 214 store packets arriving from the
順序確認動作221は、順序バッファ211〜214の先頭に格納されているパケットのSEQを調べ、次に出力バッファ24に送るべきSEQと一致した場合は、このパケットを取り出して出力バッファ24に送り、ACK送信部に対してACKの送信を要求する。例えば以前にSEQ=5まで出力バッファ24に転送完了していた場合、順序バッファ211〜214の何れかの先頭に、SEQ=6のパケットが格納されていた場合は、これを取り出して出力バッファ24に転送し、SEQ=6のACK送信を要求する。
The
順序確認動作221は、もし出力バッファに転送すべきパケットを順序バッファ211〜214のいずれにおいても発見出来なかった場合は、欠落検出部20に取出完了を通知する。
The
欠落検出部20は、順序バッファ211〜214に格納されているパケットの個数を調べ、もし全ての順序バッファにおいてパケットの格納が確認された場合は、ACK送信部に対して再送要求を行う。
The missing
出力バッファ24は、順序バッファ211〜214よりパケットを受信し、SEQ削除部25からの要求により、FIFO方式でパケットを取り出して転送する。
The
SEQ削除部25は、出力バッファ24からパケットを取り出し、ヘッダ(SEQを含む)を削除して、データをデータ受信部26に転送する。
The
データ受信部26は、SEQ削除部25からのデータを受け取り、各種処理を行う。
The
再送バッファ13は、網31〜34のいずれかを経由して、ACK送信部23よりACKを受信した場合、ACKに含まれるSEQを確認する。
When the
再送バッファ13は、もし前回受信したACKのSEQよりも大きなSEQが含まれる場合は、当該SEQまでのパケットを再送バッファ13から消去する。もし前回受信したACKのSEQと同じSEQが含まれていた場合は、重複ACK(再送要求)であるとみなし、ただちに再送バッファに格納されているパケットを、SEQの若いものから順に再送信する。
The
(正常時の欠落検出動作例)
以下、図4を参照して、パケットロス無し(正常時)における欠落検出部20の動作例を説明する。
(Normal missing detection operation example)
Hereinafter, with reference to FIG. 4, an operation example of the
図4では、網33において、網31〜34よりも大きな遅延が発生し、SEQ=6のパケットの到着が遅れている場合の例を示している。
FIG. 4 shows an example in which a larger delay occurs in the network 33 than in the
網31、32、34は、網33よりも遅延が少ないため、順序バッファ211、212、214に対して、網33を経由する場合よりもパケットが速く到達する。
Since the
図4においては、順序確認動作221により、SEQ1〜SEQ5までのパケットが、出力バッファ24に転送され、これらパケットに対して、ACK送信部23より、ACK1〜ACK5が送出されている。
In FIG. 4, the packets from SEQ1 to SEQ5 are transferred to the
図4の状態においては、パケット6は網33上にあり、順序バッファ213には格納されていないため、SEQ=5のパケットが出力バッファ24に転送された時点で、順序確認動作221が完了し、欠落検出部20に取出完了が通知される。
In the state of FIG. 4, since the
欠落検出部20は、順序バッファ211〜214に格納されているパケットの個数を調べる。ここで順序バッファ213に格納されているパケットの個数が0であることから、欠落は発生していないとみなして、動作を完了する。
The missing
以上に示したように、網31〜網34の各網内での順序逆転が発生しない場合において、パケットロスが発生していない場合は、順序バッファ211〜214のいずれか1つ以上のバッファは必ず空になる。
As described above, when there is no order reversal in each of the
順序バッファ211〜214は、パケットロスが発生していない状況では、網31〜34の遅延時間の差に相当するパケットが蓄積されるので、最も遅延している網(図4では網33)のパケットを格納する順序バッファ(図4では順序バッファ213)の格納パケットは0になる。
In the situation where no packet loss occurs, the order buffers 211 to 214 store packets corresponding to the difference in delay time of the
(異常時の欠落検出動作例)
以下、図5を参照して、パケットロス発生時(異常時)における欠落検出部20の動作例を説明する。
(Example of missing detection operation in case of abnormality)
Hereinafter, with reference to FIG. 5, an operation example of the
図5では、網33において、SEQ=6のパケットが欠落(ロス)した場合の例を示している。 FIG. 5 shows an example in which a packet with SEQ = 6 is lost (lost) in the network 33.
また、網33は他の網よりも遅延が大きく、網31、32、34は、網33よりも遅延が少ないため、順序バッファ211、212、214に対して、網33を経由する場合よりもパケットが速く到達するとする。
Further, since the network 33 has a larger delay than the other networks, and the
図5において、SEQ1〜SEQ5までのパケットの順序確認が完了して出力バッファ24に転送され、これらパケットに対して、ACK送信部23より、ACK1〜ACK5が送出されているとする。
In FIG. 5, it is assumed that the packet sequence confirmation from SEQ1 to SEQ5 is completed and transferred to the
ここで順序バッファ213に、欠落したSEQ=6のパケットの次に網33に送出されたSEQ=12のパケットが格納されると、順序確認動作221が起動する。しかしながら出力バッファ24に送出できるパケットがないので、ただちに欠落検出部20に取出完了通知が行われる。
Here, when the SEQ = 12 packet sent to the network 33 next to the missing SEQ = 6 packet is stored in the
欠落検出部20は、順序バッファ211〜214に格納されているパケットの個数を調べる。ここで順序バッファ213を含む全ての順序バッファ内にパケットの格納を確認し、欠落が発生しているとみなして、ACK送信部23に対して再送要求を行う。
The missing
ACK送信部23は、欠落検出部20からの再送要求を受け、前回送出したACK(ACK=5)と同じSEQ=5を含むACKを送信する。送信機1は、同じ番号のACKが連続して届くため、再送要求があったと判断して、再送バッファ内のパケットの再送を行う。
The
以上に示したように、網31〜網34の各網内での順序逆転が発生しない場合において、パケットロスが発生した場合は、順序バッファ211〜214のすべての順序バッファにパケットが格納される。この特性により、パケットロスを判定することで、高速な再送要求を行う事ができる。
As described above, when no order inversion occurs in each of the
マルチパス環境において、本実施形態に記載のパケットロス判定がない場合は、受信機2が送信機1に対して再送要求を行う事ができないため、送信機1は再送タイマ15を用いて再送を行うしかない。しかしながら、一般的に再送タイマ15は、誤動作を防止するために最低でも1RTT以上の大きな値を設定する必要があるため、再送開始までに時間がかかる。このため、本実施形態に記載のパケットロス判定機構を用いると、再送タイマよりも高速な欠落検出および再送を行なえる。
In a multipath environment, if there is no packet loss determination described in the present embodiment, the
(本実施形態の効果)
次に、本実施の形態の効果について説明する。
(Effect of this embodiment)
Next, the effect of this embodiment will be described.
本実施の形態に挙げた発明を利用すると、送信機と受信機が複数の網によって接続されているマルチパス環境において、前記各網内でのパケットの順序逆転が発生しない場合に、1段のみのシーケンス番号の管理を用いて、パケットロスを高速に検出することができる。 When the invention described in this embodiment is used, in a multipath environment in which a transmitter and a receiver are connected by a plurality of networks, when the order of packets in each network does not reverse, only one stage is used. The packet loss can be detected at high speed using the management of the sequence number.
これは、前記受信機内の欠落検出部において、パケットロスが発生した場合はすべての網の順序バッファにパケットが格納される特性に着目し、網毎に設置した順序保証バッファへのパケット滞留状態を監視するからである。 This is because the loss detection unit in the receiver pays attention to the characteristic that the packet is stored in the order buffer of all networks when packet loss occurs, and the packet retention state in the order guarantee buffer installed for each network. It is because it monitors.
また、本実施の形態に挙げた発明を利用すると、送信機と受信機が複数の網によって接続されているマルチパス環境において、前記各網内でのパケットの順序逆転が発生しない場合に、1段のみのシーケンス番号の管理を用いて、パケットロス時の再送を高速に開始することができる。 Further, when the invention described in this embodiment is used, in a multipath environment in which a transmitter and a receiver are connected by a plurality of networks, when packet order reversal in each network does not occur, 1 Retransmission at the time of packet loss can be started at high speed using the management of the sequence number of only the stage.
これは、前記受信機内の欠落検出部において、パケットロスが発生した場合はすべての網の順序バッファにパケットが格納される特性に着目し、網毎に設置した順序保証バッファへのパケット滞留状態を監視することで、再送タイマによらない高速な欠落検出を行えるからである。 This is because the loss detection unit in the receiver pays attention to the characteristic that the packet is stored in the order buffer of all networks when packet loss occurs, and the packet retention state in the order guarantee buffer installed for each network. This is because by monitoring, it is possible to detect missing at high speed without using the retransmission timer.
(第2の実施の形態)
本発明の第2の実施の形態は、第1の実施の形態における出力バッファ24が存在せず、順序バッファ211〜214が出力バッファ24を兼ねる場合、もしくは順序バッファ211〜214からの取出速度が遅い場合の形態である。
(Second Embodiment)
In the second embodiment of the present invention, when the
(構成の説明)
図6を参照して、本実施の形態における構成について説明する。
(Description of configuration)
With reference to FIG. 6, the configuration of the present embodiment will be described.
送信機1は、第1の実施の形態と同様の構成を有し、同様の動作を行う。
The
受信機2は、第1の実施の形態における出力バッファ24が存在せず、欠落検出部20が欠落検出部20Aとなり、取出制御部22が取出制御部22Aとなる点において実施形態1の受信機2と異なる。
The
欠落検出部20Aは、取出制御部22Aからの取出完了通知を受けると、パケットロスの有無を確認する。もしパケットロスを発見した場合は、ACK送信部23に対して再送要求を行う。
Upon receiving the extraction completion notification from the
取出制御部22Aは、以下の動作を行う。
The take-out
(1)順序バッファ211〜214からの格納完了通知を受け、順序確認動作221Aを行い、SEQの順番が正しい場合は、取出待数をインクリメントする。このとき、ACK送信部23に対して、取出待ちとしたパケットのSEQを通知する。
(1) Upon receiving a storage completion notification from the order buffers 211 to 214, the
(2)パケット取出動作223を行い、SEQ削除部25からの要求により、パケットを取り出してSEQ削除部25に転送する。
(2) A packet extraction operation 223 is performed, and a packet is extracted and transferred to the
(動作の説明)
図7の流れ図を参照して、取出制御部22Aにおける順序確認動作221Aを説明する。
(Description of operation)
With reference to the flowchart of FIG. 7, the
順序バッファ211〜214の何れかに1つのパケットが格納されると、取出制御部22に格納完了通知が行われ、順序確認動作221が起動する(ステップ22101)。
When one packet is stored in any of the order buffers 211 to 214, a storage completion notification is sent to the
順序バッファ211の先頭(出力バッファ24側)に格納されているパケットのSEQを確認する(ステップ22102)。
The SEQ of the packet stored at the head (on the
ステップ22102において確認した順序バッファ211の先頭パケットのSEQ(先頭SEQ)と、順序制御部22が次に順序確認しようとしているSEQ(受信期待SEQ、以下期待SEQと記す)を比較する(ステップ22103)。
The sequence of the first packet in the
ステップ22103において先頭SEQと期待SEQが一致した場合には、順序バッファ211の取出待数をインクリメントする(ステップ22104A)。
If the top SEQ and the expected SEQ match at
ACK送信部23に対して、送達確認パケット(ACK)の送信を要求する。このACKには期待SEQのSEQが格納され、期待SEQまでの受信と整序が完了したことを送信機1に通知する(ステップ22105)。
The
期待SEQをインクリメントする。つまり、期待SEQ=期待SEQ+1とする(ステップ22106)。 Increment expected SEQ. That is, expected SEQ = expected SEQ + 1 (step 22106).
ステップ22107〜22111は、順序バッファ212に関して、ステップ22102〜22106と同様の動作を行う。
ステップ22112〜22116は、順序バッファ213に関して、ステップ22102〜22106と同様の動作を行う。
ステップ22117〜22121は、順序バッファ214に関して、ステップ22102〜22106と同様の動作を行う。
ステップ22102〜ステップ22121の実行中に、取出待数をインクリメントした回数をカウントし、もし1以上である場合には(ステップ22122AでYES)、再度ステップ22102以降を実行する。もし順序バッファから取り出して出力バッファへ送付したパケットの数が0である場合(ステップ22122AでNO)、つまり出力バッファ23に転送可能な(つまり整序可能な)パケットが、順序バッファ211〜214のいずれにも存在しない場合、ステップ22123Aを実行する。
During the execution of
欠落検出部20Aに取出完了を通知する(ステップ22123A)。
Notification of completion of removal is sent to the missing
図8の流れ図を参照して、取出制御部22Aにおけるパケット取出動作222を説明する。
The
SEQ削除部25からのパケット取出要求により、パケット取出動作222が起動する(ステップ22201)。
In response to a packet extraction request from the
順序バッファ211の先頭(SEQ削除部25側)に格納されているパケットのSEQを確認する(ステップ22202)。
The sequence of the packet stored in the head of the order buffer 211 (
ステップ22202において確認した順序バッファ211の先頭パケットのSEQ(先頭SEQ)と、順序制御部22が次に取り出してSEQ削除部25に送信しようとしているSEQ(取出待SEQ)を比較する(ステップ22203)。
The SEQ (head SEQ) of the first packet in the
ステップ22203において先頭SEQと取出待SEQが一致した場合には、順序バッファ211より前記パケットを取り出して、SEQ削除部25送付する(ステップ22204)。
If the leading SEQ and the extraction waiting SEQ match in
順序バッファ211の取出待数をデクリメントする(ステップ22205)。
The removal waiting number in the
取出待SEQをインクリメントする。なお、取出待数と取出待SEQは異なるパラメーターである(ステップ22206)。 The take-out waiting SEQ is incremented. It should be noted that the number of waiting for withdrawal and the waiting for waiting SEQ are different parameters (step 22206).
ステップ22207〜22211は、順序バッファ212に関して、ステップ22202〜22206と同様の動作を行う。
ステップ22212〜22216は、順序バッファ213に関して、ステップ22202〜22206と同様の動作を行う。
ステップ22217〜22221は、順序バッファ214に関して、ステップ22202〜22206と同様の動作を行う。
図9の流れ図を参照して、欠落検出部20Aの動作を説明する。
With reference to the flowchart of FIG. 9, the operation of the missing
順序確認動作221Aの完了により、欠落検出動作が起動する(ステップ2001A)。
Upon completion of the
順序バッファ211に格納されているパケットの個数を確認する(ステップ2002)。
The number of packets stored in the
もし順序バッファ211に格納されているパケットの数−順序バッファ211の取出待数が0である場合は、動作を終了する。格納パケット数−取出待数が1以上である場合は、ステップ2004に移る(ステップ2003A)。
If the number of packets stored in the order buffer 211-the number of waiting for extraction in the
ステップ2004およびステップ2005Aは、順序バッファ212に関して、ステップ2002およびステップ2003Aと同様の動作を行う。
ステップ2006およびステップ2007Aは、順序バッファ213に関して、ステップ2002およびステップ2003Aと同様の動作を行う。
ステップ2008およびステップ2009Aは、順序バッファ214に関して、ステップ2002およびステップ2003Aと同様の動作を行う。
ステップ2002〜2009Aを実行した結果、順序バッファ211〜214の全てにおいて、格納数−取出待数の合計が1以上の場合、ACK送信部に対して再送要求を行う。ACK送信部は、前回送信したACKと同じSEQが含まれるACK(重複ACK)を生成し、送信機1に対して再送要求を行う(ステップ2010)。
As a result of executing
(動作例)
(正常時の欠落検出動作例)
以下、図10を参照して、パケットロス無し(正常時)における欠落検出部20Aの動作例を説明する。
(Operation example)
(Normal missing detection operation example)
Hereinafter, with reference to FIG. 10, an operation example of the
図10では、網33において、網31〜34よりも大きな遅延が発生し、SEQ=12のパケットの到着が遅れている場合の例を示している。
FIG. 10 shows an example in which a larger delay occurs in the network 33 than in the
網31、32、34は、網33よりも遅延が少ないため、順序バッファ211、212、214に対して、網33を経由する場合よりもパケットが速く到達する。
Since the
図10においては、順序確認動作221Aにより、SEQ1〜SEQ11までのパケットの順序確認が完了し、これらパケットに対して、ACK送信部23より、ACK1〜ACK11が送出されている。さらに、パケット取出動作222により、SEQ1〜SEQ3までのパケットが、SEQ削除部25に転送されている。SEQ4〜SEQ11のパケットは、既に順序確認が完了しているが、順序バッファ211〜214において、SEQ削除部25からの取出要求を待っている。
In FIG. 10, the order confirmation of the packets from SEQ1 to SEQ11 is completed by the
図10の状態においては、パケット12は網33上にあり、順序バッファ213には格納されていないため、SEQ=11のパケットの順序確認が完了した時点で、順序確認動作221Aが完了し、欠落検出部20Aに取出完了が通知される。
In the state of FIG. 10, since the
欠落検出部20Aは、順序バッファ211〜214に格納されているパケットの個数と、取出待となっているパケットの個数を調べる。順序バッファ211、212、214においては、格納パケット数が3、取出待数が2であるが、順序バッファ213においては、格納パケット数が2、取出待数が2であるため、格納パケット数−取出待数が0であることから、欠落は発生していないとみなして、動作を完了する。
The missing
以上に示したように、網31〜網34の各網内での順序逆転が発生しない場合において、パケットロスが発生していない場合は、順序バッファ211〜214のいずれか1つ以上のバッファにおいて、格納パケット数−取出待数は必ず0になる。
As described above, when there is no order reversal in each of the
順序バッファ211〜214は、パケットロスが発生していない状況では、網31〜34の遅延時間の差に相当するパケットが蓄積されるので、最も遅延している網(図10では網33)のパケットを格納する順序バッファ(図10では順序バッファ213)の格納パケットは0になる。
In the situation where no packet loss occurs, the order buffers 211 to 214 store packets corresponding to the difference in delay time between the
(異常時の欠落検出動作例)
以下、図11を参照して、パケットロス発生時(異常時)における欠落検出動作222Aの動作例を説明する。
(Example of missing detection operation in case of abnormality)
Hereinafter, with reference to FIG. 11, an operation example of the loss detection operation 222A at the time of packet loss occurrence (abnormality) will be described.
図5では、網33において、SEQ=12のパケットが欠落(ロス)した場合の例を示している。 FIG. 5 shows an example in which a packet with SEQ = 12 is lost (lost) in the network 33.
また、網33は他の網よりも遅延が大きく、網31、32、34は、網33よりも遅延が少ないため、順序バッファ211、212、214に対して、網33を経由する場合よりもパケットが速く到達するとする。
Further, since the network 33 has a larger delay than the other networks, and the
図11においては、順序確認動作221Aにより、SEQ1〜SEQ11までのパケットの順序確認が完了し、これらパケットに対して、ACK送信部23より、ACK1〜ACK11が送出されている。さらに、パケット取出動作223により、SEQ1〜SEQ3までのパケットが、SEQ削除部25に転送されている。SEQ4〜SEQ11のパケットは、既に順序確認が完了しているが、順序バッファ211〜214において、SEQ削除部25からの取出要求を待っている。
In FIG. 11, the order confirmation of the packets SEQ1 to SEQ11 is completed by the
ここで順序バッファ213に、欠落したSEQ=12のパケットの次に網33に送出されたSEQ=20のパケットが格納されると、順序確認動作221Aが起動する。しかしながら順序確認できるパケットがないので、ただちに欠落検出動作222Aが起動する。
Here, when the SEQ = 20 packet sent to the network 33 next to the missing SEQ = 12 packet is stored in the
欠落検出動作222Aは、順序バッファ211〜214に格納されているパケットの個数を調べる。ここで順序バッファ213を含む全ての順序バッファにおいて、格納パケット数が3、取出待数が2であるため、格納パケット数−取出待数が1であることから、欠落が発生しているとみなして、ACK送信部23に対して再送要求を行う。
The missing detection operation 222A checks the number of packets stored in the order buffers 211 to 214. Here, in all the order buffers including the
ACK送信部23は、取出制御部22内の欠落検出動作222Aからの再送要求を受け、前回送出したACK(ACK=11)と同じSEQ=11を含むACKを送信する。送信機1は、同じ番号のACKが連続して届くため、再送要求があったと判断して、再送バッファ内のパケットの再送を行う。
The
以上に示したように、網31〜網34の各網内での順序逆転が発生しない場合において、パケットロスが発生した場合は、順序バッファ211〜214のすべての順序バッファにおいて、格納パケット数−取出待数>0となる。この特性により、パケットロスを判定することで、高速な再送要求を行う事ができる。
As described above, when there is no order reversal in each of the
(本実施形態の効果)
次に、本実施の形態の効果について説明する。
(Effect of this embodiment)
Next, the effect of this embodiment will be described.
本実施の形態に挙げた発明を利用すると、送信機と受信機が複数の網によって接続されているマルチパス環境において、前記各網内でのパケットの順序逆転が発生しない場合に、1段のみのシーケンス番号の管理を用いて、パケットロスを高速に検出することができる。 When the invention described in this embodiment is used, in a multipath environment in which a transmitter and a receiver are connected by a plurality of networks, when the order of packets in each network does not reverse, only one stage is used. The packet loss can be detected at high speed using the management of the sequence number.
これは、前記受信機内の欠落検出部において、パケットロスが発生した場合はすべての網の順序バッファにパケットが格納される特性に着目し、網毎に設置した順序保証バッファへのパケット滞留状態を監視するからである。 This is because the loss detection unit in the receiver pays attention to the characteristic that the packet is stored in the order buffer of all networks when packet loss occurs, and the packet retention state in the order guarantee buffer installed for each network. It is because it monitors.
また、本実施の形態に挙げた発明を利用すると、送信機と受信機が複数の網によって接続されているマルチパス環境において、前記各網内でのパケットの順序逆転が発生しない場合に、1段のみのシーケンス番号の管理を用いて、パケットロス時の再送を高速に開始することができる。 Further, when the invention described in this embodiment is used, in a multipath environment in which a transmitter and a receiver are connected by a plurality of networks, when packet order reversal in each network does not occur, 1 Retransmission at the time of packet loss can be started at high speed using the management of the sequence number of only the stage.
これは、前記受信機内の欠落検出部において、パケットロスが発生した場合はすべての網の順序バッファにパケットが格納される特性に着目し、網毎に設置した順序保証バッファへのパケット滞留状態を監視することで、再送タイマによらない高速な欠落検出を行えるからである。 This is because the loss detection unit in the receiver pays attention to the characteristic that the packet is stored in the order buffer of all networks when packet loss occurs, and the packet retention state in the order guarantee buffer installed for each network. This is because by monitoring, it is possible to detect missing at high speed without using the retransmission timer.
(第3の実施の形態)
本発明の第3の実施の形態は、第1の実施の形態における網31〜34と順序バッファ211〜214の間に、格納制御部271〜274を設け、順序バッファがあふれによるパケット欠落検出を行う形態である。
(Third embodiment)
In the third embodiment of the present invention,
なお、本実施の形態における欠落検出と、第1の実施の形態における欠落検出(欠落検出動作222)は、どちらか一方のみ用いることも、両方を併用することもできる。以降の説明では、順序確認動作221が完了しても、欠落検出動作222を行わない(第1の実施の形態における欠落検出を併用しない)ものとして説明する。
It should be noted that only one of the missing detection in the present embodiment and the missing detection (missing detection operation 222) in the first embodiment can be used, or both can be used in combination. In the following description, it is assumed that even if the
(構成の説明)
図12を参照して、本実施の形態における構成について説明する。
(Description of configuration)
With reference to FIG. 12, the structure in this Embodiment is demonstrated.
送信機1は、第1の実施の形態と同様の構成を有し、同様の動作を行う。
The
受信機2は、第1の実施の形態における網31〜34と順序バッファ211〜214の間に、格納制御部271〜274が存在する点において異なる。
The
格納制御部271は、以下に示す動作を行う。
The
(1)網31より到着したパケットのシーケンスナンバーと、前回に網31より到着したパケットのシーケンスナンバーを比較して、今回到着したパケットのSEQが、前回到着したパケットのSEQより小さいか、もしくは同じである場合は、再送が発生したとみなして、格納済パケットをすべて廃棄する。
(1) The sequence number of the packet arriving from the
(2)網31からのパケット到着時に、順序バッファ211の格納済パケット数を確認し、もしも到着パケットを格納すると、最大格納可能数を超える場合は、格納済パケットを全て廃棄し、再送要求を行う。
(2) Upon arrival of packets from the
(動作の説明)
図13の流れ図を参照して、格納制御部271における動作を説明する。
(Description of operation)
The operation of the
網31からパケットが到着すると、格納制御動作が起動する(ステップ27101)。
When a packet arrives from the
今回到着したパケットのシーケンスナンバーと、前回到着したパケットのシーケンスナンバーを比較する(ステップ27101)。 The sequence number of the packet that arrived this time is compared with the sequence number of the packet that arrived last time (step 27101).
今回到着したパケットのSEQが、前回到着したパケットのSEQより小さいか、同じである場合は、再送が発生したと判断し、順序バッファ211に格納中のパケットを全て廃棄する。このとき、第2の実施の形態に記した取出待パケットがある場合は、取出待パケットは廃棄せず、取出待パケット以外の残りを全て廃棄する(ステップ27103)。
When the SEQ of the packet that has arrived this time is smaller than or the same as the SEQ of the packet that has arrived last time, it is determined that retransmission has occurred, and all the packets stored in the
次回にパケットが到着した際、ステップ27102の判断を行うために、今回到着したパケットのSEQを記録しておく(ステップ27104)。 When the packet arrives next time, the SEQ of the packet that has arrived this time is recorded in order to make the determination in step 27102 (step 27104).
順序バッファ211に格納されているパケット数を確認する(ステップ27105)。
The number of packets stored in the
順序バッファ211に格納されているパケット数(格納済パケット数)と、順序バッファ211の最大格納可能数を比較する(ステップ27106)。 The number of packets stored in the order buffer 211 (number of stored packets) is compared with the maximum storable number in the order buffer 211 (step 27106).
もし格納済パケット数と最大格納可能数が等しい場合は、今回到着したパケットを格納すると、順序バッファがあふれてしまうため、順序バッファ211に格納中のパケットを全て廃棄する。このとき、第2の実施の形態に記した取出待パケットがある場合は、取出待パケットは廃棄せず、取出待パケット以外の残りを全て廃棄する(ステップ27107)。
If the number of stored packets is equal to the maximum storable number, storing a packet that has arrived this time will overflow the sequence buffer, so all packets stored in the
ステップ27107における廃棄により、パケットが欠落したため、ACK送信部23に対して再送要求を行う。この時点で格納制御部の動作を終了(END)しても良いし、ステップ27109で今回到着したパケットを格納しても良い。なお今回到着したパケットを格納した場合は、当ステップで送信した再送要求に呼応した再送が行われると、ステップ27103の再送検出動作により、このパケットは廃棄される(ステップ27108)。
Since the packet is lost due to the discard in
順序バッファ211に、今回到着したパケットを格納する(ステップ27109)。 The current arrival packet is stored in the order buffer 211 (step 27109).
順序確認動作221を起動する(ステップ27110)。
The
(動作例)
(順序バッファあふれ時の動作例)
図12を用いて、順序バッファ211があふれる場合の動作について説明する。
(Operation example)
(Operation example when the sequence buffer overflows)
The operation when the
図12において、順序バッファ211に最大格納可能数と等しい数のパケットが既に蓄積されている状態であるとする。また、格納制御部271に前回(最後に)到着したパケットのSEQは、26であるとする。また、順序バッファ211の最大格納可能数は40であるとする。また、SEQ=55までの順序確認が完了し、ACK=55が送信されているとする。
In FIG. 12, it is assumed that the number of packets equal to the maximum storable number are already accumulated in the
上記の状態において、網31から受信機2にパケット(SEQ=133)が到着すると、そのパケットは格納制御部271に引き渡される。
In the above state, when a packet (SEQ = 133) arrives at the
格納制御部271は、まず到着したパケットのSEQ(133)と前回到着したパケットのSEQ(126)を比較し、SEQが前回より大きくなっていることから、再送は発生していないと判断する。
The
格納制御部271は、つぎに順序バッファ211の格納済パケット数を確認する。すると、現在40個のパケットが格納されており、これは最大格納可能数と等しいことから、すでに格納済のパケット40個を全て廃棄し、ACK送信部23に再送要求を行う。
Next, the
ACK送信部23は、格納制御部271からの再送要求を受け、ACK送信部23内に保存されている前回送信したACKのSEQ(55)と同じSEQを含むACK(ACK=55)を送信する。
The
送信機1内の再送バッファ13は、受信機2からのACK=55を受信する。そして、このACKのSEQは、前回到着したACKのSEQと同じであることから、再送バッファ内の全てのパケットを、SEQ=56のパケットから順に、振り分け部14に対して再送する。
The
振り分け部14は、再送バッファから再送されたパケットを、網31〜34に振り分ける。ここで、SEQ=56のパケットが、網31に振り分けられたとする。
The
上記の状態において、網31から受信機2にパケット(SEQ=56)が到着すると、格納制御部271に引き渡される。
In the above state, when a packet (SEQ = 56) arrives at the
格納制御部271は、まず到着したパケットのSEQ(56)と前回到着したパケットのSEQ(126)を比較し、SEQが前回より小さくなっていることから、再送が発生したと判断し、すでに順序バッファ211に格納されているパケットを全て廃棄し、今回到着したパケットを順序バッファ211に格納する。
The
以上に示したように、順序バッファ211があふれた場合は、バッファフラッシュ(全廃棄)によりパケットロスが発生したと判断して再送要求を行う。
As described above, when the
順序保証バッファがあふれる場合は、パケットロスなどの障害により、取出制御部22が順序バッファからパケットを取り出せない場合である。このような状態では、多くの場合において再送を行わない限り、正常な状態に戻すことは難しい。また、バッファあふれになった場合に、既に順序バッファに滞留しているパケットは、再送が行われれば不要となる。
The case where the order guarantee buffer overflows is a case where the
マルチパス環境において、本実施形態に記載のパケットロス判定がない場合は、受信機2が送信機1に対して再送要求を行う事ができないため、送信機1は再送タイマ15を用いて再送を行うしかない。しかしながら、一般的に再送タイマ15は、誤動作を防止するために最低でも1RTT以上の大きな値を設定する必要があるため、再送開始までに時間がかかる。
In a multipath environment, if there is no packet loss determination described in the present embodiment, the
このため、本実施形態に記載のパケットロス判定機構を用いると、順序バッファ211があふれることにより、パケットロスを判定することで、再送タイマによるロス判定よりも高速なロス判定(再送要求)を行う事ができる。
For this reason, when the packet loss determination mechanism described in the present embodiment is used, a loss determination (retransmission request) is performed faster than the loss determination by the retransmission timer by determining the packet loss when the
なお、再送によるパケットが到着した場合、シーケンスナンバーの大小により再送を判断し、再送があったと判断した場合はバッファフラッシュ(全廃棄)を行う。これにより、再送により不要となるオンザフライパケットも適切に廃棄できる。 When a packet arrives due to retransmission, retransmission is determined based on the sequence number, and when it is determined that retransmission has occurred, buffer flush (all discards) is performed. Thereby, the on-the-fly packet which becomes unnecessary by retransmission can be appropriately discarded.
(本実施形態の効果)
次に、本実施の形態の効果について説明する。
(Effect of this embodiment)
Next, the effect of this embodiment will be described.
本実施の形態に挙げた発明を利用すると、送信機と受信機が複数の網によって接続されているマルチパス環境において、前記各網内でのパケットの順序逆転が発生しない場合に、1段のみのシーケンス番号の管理を用いて、パケットロス等の異常を高速に検出することができる。 When the invention described in this embodiment is used, in a multipath environment in which a transmitter and a receiver are connected by a plurality of networks, when the order of packets in each network does not reverse, only one stage is used. By using this sequence number management, it is possible to detect abnormalities such as packet loss at high speed.
これは、前記受信機内の格納制御部において、異常発生時は順序バッファからのパケット取出が行えず、バッファあふれが発生する特性に着目し、網毎に設置した順序バッファのあふれを監視するからである。 This is because the storage controller in the receiver cannot take out packets from the sequence buffer when an abnormality occurs, and monitors the overflow of the sequence buffer installed in each network, focusing on the characteristics of buffer overflow. is there.
また、本実施の形態に挙げた発明を利用すると、送信機と受信機が複数の網によって接続されているマルチパス環境において、前記各網内でのパケットの順序逆転が発生しない場合に、1段のみのシーケンス番号の管理を用いて、再送を高速に開始することができる。 Further, when the invention described in this embodiment is used, in a multipath environment in which a transmitter and a receiver are connected by a plurality of networks, when packet order reversal in each network does not occur, 1 Retransmission can be started at high speed using the management of sequence numbers of only stages.
これは、前記受信機内の格納制御部において、異常発生時は順序バッファからのパケット取出が行えず、バッファあふれが発生する特性に着目し、網毎に設置した順序バッファのあふれを監視し、バッファあふれを再送開始の契機とするからである。 This is because the storage control unit in the receiver cannot monitor packets from the order buffer when an abnormality occurs and monitors the overflow of the order buffer installed in each network, focusing on the characteristic that the buffer overflows. This is because overflow is a trigger for starting retransmission.
(第4の実施の形態)
本発明の第4の実施の形態は、第3の実施の形態に対して、順序バッファ211〜214の最大格納可能数(容量)を、網31〜34の帯域および遅延差から決定し、順序バッファあふれによる異常検出(再送開始)を高速化するものである。
(Fourth embodiment)
The fourth embodiment of the present invention determines the maximum storable number (capacity) of the order buffers 211 to 214 from the bandwidths of the
順序バッファ211〜214は、網31〜34の遅延の差分を吸収する為のものである。したがって順序バッファは、「網31〜34の往復遅延のうち最大の往復遅延と最小の往復遅延の差」と「網31〜34の帯域」の積の大きさがあればよい。もし、この大きさを超えて順序バッファ211〜214にパケットが蓄積された場合は、パケットロス等の異常が発生していると見なせる。本実施の形態は、この特性を利用して、第3の実施の形態に記した異常検出と再送開始を高速化するものである。
The order buffers 211 to 214 are for absorbing the delay difference between the
(構成の説明)
図14を参照して、本実施の形態における構成について説明する。
(Description of configuration)
With reference to FIG. 14, the structure in this Embodiment is demonstrated.
送信機1は、図12に記した第3の実施の形態における構成に対して、振り分け部14が振り分け部14Aになり、内蔵時計19が追加されている点において異なる。
The
振り分け部14Aは、第1の実施の形態に記した振り分け部14の動作のほかに、再送バッファ13から受け取り、網31〜34にパケットを転送する際、パケットヘッダ内に内蔵時計19から提供を受けた時刻情報を記載する機能を有する。
In addition to the operation of the
内蔵時計19は、送信機1に内蔵された時計であり、振り分け部14に対して時刻情報を提供する。
The built-in
受信機2は、図12に記した第3の実施の形態における構成に対して、容量決定部28および内蔵時計29が追加されている点において異なる。
The
容量決定部28は、格納制御部271〜274より、網31〜34の帯域情報と到着パケットのヘッダ内に記載されているパケットの送信時刻情報を受け取り、さらに内蔵時計29から時刻情報を受け取り、各網の往復遅延時間を計算する。そして計算した往復遅延時間および帯域から、順序バッファ211〜214の最大格納可能数(容量)を決定して設定する。
The
内蔵時計29は、受信機2に内蔵された時計であり、容量決定部28に対して時刻情報を提供する。内蔵時計29と内蔵時計19は同期していても、同期していなくても良い。
The built-in
(動作例)
(内蔵時計19と内蔵時計29が同期している場合)
図14を用いて、内蔵時計19と内蔵時計29が同期しており、網31にパケットが送信された場合における、容量決定部28の動作を説明する。
(Operation example)
(When the built-in
The operation of the
送信機1内の再送バッファ13からパケットが送出され、振り分け部14Aに到着する。
A packet is transmitted from the
振り分け部14Aは、内蔵時計19から時刻情報を取得し、再送バッファ13より到着したパケットのヘッダに送信時刻情報を埋め込む。そして、網31に送信する。
The distributing
受信機2内の格納制御部271は、網31からパケットを受信すると、網31からの単位時間当たりの受信バイト数(受信レート、以下帯域という)と、パケット内に記載されている送信時刻情報を、容量決定部28に通知する。
When the
容量決定部28は、格納制御部271から帯域と送信時刻の通知を受けると、内蔵時計29から受信時刻を取得し、以下の式より網31の往復遅延時間(RTT)を計算して記録する。
Upon receiving notification of the bandwidth and transmission time from the
RTT=(受信時刻−送信時刻)×2
容量決定部28は、記録している網31〜34のRTTを比較し、最大のもの(最大RTT)と最小のもの(最小RTT)を調べる。そして、以下の式により順序保証バッファ211の容量を決定する。
RTT = (reception time−transmission time) × 2
The
順序バッファ211の容量=(最大RTT−最小RTT)×網31の帯域
順序保証バッファ211は、容量決定部28から容量の通知を受けて、最大格納可能量の設定を行う(最大格納可能量は、ビット、バイト、個数など、適宜変換して設定する)。
Capacity of
以上では、網31にパケットが送信された場合における、順序バッファ211の容量決定動作を例に説明したが、網32〜34にパケットが送信された場合も同様に、順序バッファ212〜214の容量を決定できる。
In the above, the capacity determining operation of the
上記動作により決定した順序バッファの容量は、網31〜34の遅延差を吸収できる容量となっている。もしこれを超えてパケットが蓄積されようとする場合(順序バッファあふれが発生する場合)は、パケットロス等の異常が発生していると考えられる。よって、本実施の形態に従って順序バッファ211〜214の容量をできるだけ小さく設定し、さらに実施の形態3にしたがい順序バッファ211〜214のあふれを監視することで、異常検出を高速に行い、再送タイマよりも高速な再送開始の契機とすることができる。
The capacity of the order buffer determined by the above operation is a capacity that can absorb the delay difference between the
(内蔵時計19と内蔵時計29が同期していない場合)
内蔵時計19と内蔵時計29が同期しておらず、内蔵時計29の時刻が内蔵時計19の時刻よりもαだけ進んでいる場合、RTTは以下のように表すことができる。
(When built-in
When the built-in
最大RTT=(受信時刻a+α−送信時刻a)×2
最小RTT=(受信時刻b+α−送信時刻b)×2
このとき、順序バッファの容量は、以下のようになる。
Maximum RTT = (Reception time a + α−Transmission time a) × 2
Minimum RTT = (reception time b + α−transmission time b) × 2
At this time, the capacity of the order buffer is as follows.
順序バッファ容量
=(最大RTT−最小RTT)×帯域
={(受信時刻a+α−送信時刻a)−(受信時刻b+α−送信時刻b)}×2×帯域
=(受信時刻a−送信時刻a−受信時刻b+送信時刻b)×2×帯域
上記の式より、αは相殺されるため、内蔵時計19と内蔵時計29が同期しておらず、内蔵時計29の時刻が内蔵時計19の時刻よりもαだけ進んでいる場合でも、順序バッファの容量を決定できる。
Order buffer capacity = (maximum RTT−minimum RTT) × bandwidth = {(reception time a + α−transmission time a) − (reception time b + α−transmission time b)} × 2 × bandwidth = (reception time a−transmission time a−reception) Time b + Transmission time b) × 2 × Band From the above formula, α is canceled out, so that the built-in
(本実施形態の効果)
次に、本実施の形態の効果について説明する。
(Effect of this embodiment)
Next, the effect of this embodiment will be described.
本実施の形態に挙げた発明を利用すると、送信機と受信機が複数の網によって接続されているマルチパス環境において、前記各網内でのパケットの順序逆転が発生しない場合に、1段のみのシーケンス番号の管理を用いて、パケットロス等の異常を高速に検出することができる。 When the invention described in this embodiment is used, in a multipath environment in which a transmitter and a receiver are connected by a plurality of networks, when the order of packets in each network does not reverse, only one stage is used. By using this sequence number management, it is possible to detect abnormalities such as packet loss at high speed.
これは、前記受信機内の格納制御部において、異常発生時は順序バッファからのパケット取出が行えず、バッファあふれが発生する特性に着目し、網毎に設置した順序バッファのあふれを監視して障害検出する際に、前記受信機内の容量決定部において、順序バッファの大きさを網間の遅延差と帯域から必要最小限になるように設定するからである。 This is because the storage control unit in the receiver cannot monitor packets from the order buffer when an error occurs and monitors the overflow of the order buffer installed in each network. This is because the capacity determination unit in the receiver sets the size of the order buffer so as to be the minimum necessary from the delay difference and the bandwidth between the networks.
また、本実施の形態に挙げた発明を利用すると、送信機と受信機が複数の網によって接続されているマルチパス環境において、前記各網内でのパケットの順序逆転が発生しない場合に、1段のみのシーケンス番号の管理を用いて、再送を高速に開始することができる。 Further, when the invention described in this embodiment is used, in a multipath environment in which a transmitter and a receiver are connected by a plurality of networks, when packet order reversal in each network does not occur, 1 Retransmission can be started at high speed using the management of sequence numbers of only stages.
これは、前記受信機内の格納制御部において、異常発生時は順序バッファからのパケット取出が行えず、バッファあふれが発生する特性に着目し、網毎に設置した順序バッファのあふれを監視してバッファあふれを再送開始の契機とする際に、前記受信機内の容量決定部において、順序バッファの大きさを網間の遅延差と帯域から必要最小限になるように設定するからである。 This is because the storage controller in the receiver cannot take out packets from the sequence buffer when an abnormality occurs, and pays attention to the characteristic that the buffer overflows. This is because when the overflow is triggered by the start of retransmission, the capacity determination unit in the receiver sets the size of the order buffer so as to be the minimum necessary from the delay difference and the bandwidth between networks.
(第5の実施の形態)
本発明の第5の実施の形態は、第1の実施の形態に対して、GO−BACK−Nによる再送ではなく、Selective ACKによる、欠落パケットのみの選択的な再送を行うものである。
(Fifth embodiment)
The fifth embodiment of the present invention performs selective retransmission of only missing packets by Selective ACK instead of retransmission by GO-BACK-N, compared to the first embodiment.
(構成の説明)
図15を参照して、本実施の形態における構成について説明する。
(Description of configuration)
With reference to FIG. 15, the configuration of the present embodiment will be described.
送信機1は、図1に記した第1の実施の形態における構成に対して、再送バッファ13が再送バッファ13Aに、順序バッファ211〜214が、順序バッファ211A〜214Aに、ACK送信部23がACK送信部23Aにそれぞれ変更され、さらに追越バッファ215、格納制御部271A〜274Aがそれぞれ追加されている点において異なる。
The
再送バッファ13Aは、第1の実施の形態における再送バッファ13の動作(1)〜(5)のほかに、以下の動作をおこなう。
In addition to the operations (1) to (5) of the
(6)ACK送信部23より否定送達確認(NACK)を受け取り、NACKに記載されたシーケンスナンバーの値のパケットの複製を振り分け部14に再送信する。
(6) A negative acknowledgment (NACK) is received from the
順序バッファ211Aは、順序バッファ211と同様のFIFOバッファであり、網31からパケットを受信して一旦格納し、取出制御部22に格納完了通知を行う。また取出制御部22からの指示に従い、出力バッファ24に格納したパケットを転送する。しかしながら、順序バッファ211とは異なり、網31より到着したパケットのシーケンスナンバーと、前回に網31より到着したパケットのシーケンスナンバーを比較して、今回到着したパケットのSEQが、前回到着したパケットのSEQより小さいか、もしくは同じである場合は、再送が発生したとみなして、格納済パケットをすべて廃棄することは行わない。
The
順序バッファ212A〜214Aは、順序バッファ211Aと同様の動作を行う。
The order buffers 212A to 214A perform the same operation as the
追越バッファ215は、格納制御部271A〜274Aより、NACKにより再送されたパケットを受け取り、取出制御部22に格納を通知する。そして取出制御部22からの指示により、格納中のパケットを出力バッファ24に転送する。なお、格納制御部22は、追越バッファ215を、順序バッファ211A〜214Aと同様のバッファとして取り扱う。
The overtaking
ACK送信部23Aは、以下の動作を行う。なお本願では出力バッファ24へ1パケット転送が完了する毎に1パケットのACKを送信する1ACK方式で説明を行うが、N(Nは1以上)個のパケット到着報告を1つのACKでまとめて行うN_ACK方式を用いても良い。
The ACK transmission unit 23A performs the following operation. In the present application, a description will be given of the 1ACK method in which an ACK of one packet is transmitted every time one packet transfer to the
(1)取り出し制御部23から出力バッファ24に転送したパケットのSEQ通知を受け、前記SEQを含む送達確認パケット(以下ACKと示す)を生成し、再送バッファ13に通知する。このときACKは、網31〜34のいずれかを用いて通知する。また、通知を受けたSEQを記憶しておく。
(1) Upon receiving the SEQ notification of the packet transferred from the take-out
(2)欠落検出部20、および格納制御部271A〜274Aから再送要求を受け、(1)で記憶したSEQ+1の値のNACKパケット(否定確認応答パケット)を生成し、再送バッファ13Aに通知する。このときNACKは、網31〜34のいずれかを用いて通知する。(2)のNACKは複製の上、網31〜34の全部を用いて転送しても良いが、この場合は、再送バッファ13Aにおいて再送が頻発しないよう、再送バッファ13Aにロック機構などを設ける必要がある。
(2) Upon receiving a retransmission request from the
格納制御部271A〜274Aは、以下に示す動作を行う。
The
(1)網31より到着したパケットのシーケンスナンバーと、前回に網31より到着したパケットのシーケンスナンバーを比較して、今回到着したパケットのSEQが、前回到着したパケットのSEQより小さいか、もしくは同じである場合は、再送が発生したとみなして、当該パケットを追越バッファ215に転送する。
(1) The sequence number of the packet arriving from the
(2)(1)において再送が発生していない場合は、網31から到着したパケットを、順序バッファ211Aに転送する。このとき、順序バッファ211Aの格納済パケット数を確認し、もしも到着パケットを格納すると、最大格納可能数を超える場合は、順序バッファ211Aの格納済パケットを全て廃棄し、ACK送信部23Aに対して再送要求を行う。
(2) When retransmission does not occur in (1), the packet arriving from the
(動作の説明)
図15の流れ図を参照して、格納制御部271Aにおける動作を説明する。
(Description of operation)
The operation in the
格納制御部271Aの動作は、図13に示す格納制御部271の動作と比較して、ステップ27103がステップ27103Aになっている点においてことなる。
The operation of the
今回到着したパケットのSEQが、前回到着したパケットのSEQより小さいか、同じである場合は、再送が発生したと判断し、到着したパケットを追越バッファ215に転送して終了する(ステップ27103A)。
If the SEQ of the packet that has arrived this time is smaller than or equal to the SEQ of the packet that has arrived last time, it is determined that retransmission has occurred, and the packet that arrived is transferred to the overtaking
(動作例)
(異常時の欠落検出動作例)
以下、図5を参照して、パケットロス発生時(異常時)における欠落検出部20およびACK送信部23Aの動作例を説明する。図5においてはACK送信部23が記載されているが、ここではACK送信部23Aと読み替えるものとする。
(Operation example)
(Example of missing detection operation in case of abnormality)
Hereinafter, with reference to FIG. 5, an operation example of the
図5では、網33において、SEQ=6のパケットが欠落(ロス)した場合の例を示している。 FIG. 5 shows an example in which a packet with SEQ = 6 is lost (lost) in the network 33.
また、網33は他の網よりも遅延が大きく、網31、32、34は、網33よりも遅延が少ないため、順序バッファ211、212、214に対して、網33を経由する場合よりもパケットが速く到達するとする。
Further, since the network 33 has a larger delay than the other networks, and the
図5において、SEQ1〜SEQ5までのパケットの順序確認が完了して出力バッファ24に転送され、これらパケットに対して、ACK送信部23より、ACK1〜ACK5が送出されているとする。
In FIG. 5, it is assumed that the packet sequence confirmation from SEQ1 to SEQ5 is completed and transferred to the
ここで順序バッファ213に、欠落したSEQ=6のパケットの次に網33に送出されたSEQ=12のパケットが格納されると、順序確認動作221が起動する。しかしながら出力バッファ24に送出できるパケットがないので、ただちに欠落検出部20に取出完了通知が行われる。
Here, when the SEQ = 12 packet sent to the network 33 next to the missing SEQ = 6 packet is stored in the
欠落検出部20は、順序バッファ211〜214に格納されているパケットの個数を調べる。ここで順序バッファ213を含む全ての順序バッファ内にパケットの格納を確認し、欠落が発生しているとみなして、ACK送信部23Aに対して再送要求を行う。
The missing
ACK送信部23Aは、欠落検出部20からの再送要求を受け、前回送出したACK(ACK=5)に1を足したSEQ=6を含むNACK(否定送達確認)を送信する。送信機1は、NACKが届いたため、再送要求があったと判断して、SEQ=6のパケットを再送する。
The ACK transmission unit 23A receives a retransmission request from the
前記再送により送信されたSEQ=6のパケットは、受信機2内の格納制御部271A〜274Aにより、追越バッファ215に転送され、追越バッファ215より出力バッファ214に転送される。
The packet of SEQ = 6 transmitted by the retransmission is transferred to the overtaking
以上に示したように、欠落検出部20による欠落検出と、Selective ACKによる、欠落パケットのみの選択的な再送を組み合わせることにより、高速に障害を検知し、さらに再送時の帯域圧迫を最小限に抑えることができる。このような方式を用いることで、従来技術2よりも簡略な機構(SEQを1段のみ用いる)で、従来技術2と同等の障害検知性能、ならびに再送時に従来技術2と同等の帯域圧迫率を実現できる。
As described above, by combining the loss detection by the
(本実施形態の効果)
次に、本実施の形態の効果について説明する。
(Effect of this embodiment)
Next, the effect of this embodiment will be described.
本実施の形態に挙げた発明を利用すると、送信機と受信機が複数の網によって接続されているマルチパス環境において、前記各網内でのパケットの順序逆転が発生しない場合に、1段のみのシーケンス番号の管理を用いて、パケットロスを高速に検出することができる。 When the invention described in this embodiment is used, in a multipath environment in which a transmitter and a receiver are connected by a plurality of networks, when the order of packets in each network does not reverse, only one stage is used. The packet loss can be detected at high speed using the management of the sequence number.
これは、前記受信機内の欠落検出部において、パケットロスが発生した場合はすべての網の順序バッファにパケットが格納される特性に着目し、網毎に設置した順序保証バッファへのパケット滞留状態を監視するからである。 This is because the loss detection unit in the receiver pays attention to the characteristic that the packet is stored in the order buffer of all networks when packet loss occurs, and the packet retention state in the order guarantee buffer installed for each network. It is because it monitors.
また、本実施の形態に挙げた発明を利用すると、送信機と受信機が複数の網によって接続されているマルチパス環境において、前記各網内でのパケットの順序逆転が発生しない場合に、1段のみのシーケンス番号の管理を用いて、パケットロス時の再送を高速に開始することができる。 Further, when the invention described in this embodiment is used, in a multipath environment in which a transmitter and a receiver are connected by a plurality of networks, when packet order reversal in each network does not occur, 1 Retransmission at the time of packet loss can be started at high speed using the management of the sequence number of only the stage.
これは、前記受信機内の欠落検出部において、パケットロスが発生した場合はすべての網の順序バッファにパケットが格納される特性に着目し、網毎に設置した順序保証バッファへのパケット滞留状態を監視することで、再送タイマによらない高速な欠落検出を行えるからである。 This is because the loss detection unit in the receiver pays attention to the characteristic that the packet is stored in the order buffer of all networks when packet loss occurs, and the packet retention state in the order guarantee buffer installed for each network. This is because by monitoring, it is possible to detect missing at high speed without using the retransmission timer.
以上の実施の形態及び実施形態では、パケットという用語を用いて説明を行ったが、フレーム(イーサネット(登録商標)フレーム等)でも同様に実施できる。 In the above embodiment and embodiment, the description has been made using the term “packet”. However, the present invention can be similarly applied to a frame (such as an Ethernet (registered trademark) frame).
以上好ましい実施の形態及び実施形態をあげて本発明を説明したが、本発明は必ずしも上記実施の形態及び実施形態に限定されるものではなく、その技術的思想の範囲内において様々に変形して実施することができる。当然ながら、以上に述べた実施の形態及び実施形態を、相互に組み合わせて実施することもできる。 Although the present invention has been described with reference to the preferred embodiments and embodiments, the present invention is not necessarily limited to the above embodiments and embodiments, and various modifications can be made within the scope of the technical idea. Can be implemented. Of course, the embodiment and the embodiment described above can also be implemented in combination with each other.
本発明によれば、複数の網を利用して大容量のデータを高速転送するイーサネット(登録商標)スイッチやルータ等に適用できる。また、サーバ間を高速に結ぶネットワークインターフェースカード(NIC)等にも適用できる。 The present invention can be applied to an Ethernet (registered trademark) switch, a router, and the like that transfer a large amount of data at high speed using a plurality of networks. It can also be applied to a network interface card (NIC) that connects servers at high speed.
1 送信機
2 受信機
11 データ部
12 SEQ付与部
13 再送バッファ
14 振り分け部
14A 振り分け部
15 再送タイマ
19 内蔵時計
22 取出制御部
22A 取出制御部
23 ACK送信部
24 出力バッファ
25 SEQ削除部
26 データ受信部
28 容量決定部
29 内蔵時計
211 順序バッファ
212 順序バッファ
213 順序バッファ
214 順序バッファ
221 順序確認動作
221A 順序確認動作
222 欠落検出動作
222A 欠落検出動作
223 パケット取出動作
271 格納制御部
272 格納制御部
273 格納制御部
274 格納制御部
DESCRIPTION OF
Claims (8)
順序確認を行うまでパケットを蓄積する、網ごとに複数設置された順序バッファと、
パケットに付加されたシーケンス番号を確認し、フローの順序を復元しながら前記順序バッファよりパケットを取り出す取出制御部と、
前記順序バッファがあふれた場合に欠落が発生したと判定する格納制御部
を備えることを特徴とする通信装置。 When the transmitter and the receiver are connected by multiple networks that do not cause packet order reversal in the network,
Multiple sequence buffers installed in each network that accumulate packets until the sequence is confirmed,
An extraction control unit for confirming the sequence number added to the packet and extracting the packet from the order buffer while restoring the flow order;
A communication apparatus comprising: a storage control unit that determines that a loss has occurred when the order buffer overflows.
順序確認を行うまでパケットを蓄積する、網ごとに複数設置された順序バッファと、
パケットに付加されたシーケンス番号を確認し、フローの順序を復元しながら前記順序バッファよりパケットを取り出す取出制御部と、
前記順序バッファがあふれた場合に欠落が発生したと判定する格納制御部と、
網毎の帯域と遅延時間より前記順序バッファの容量を決定する容量決定部と、
前記遅延時間を計算するために時刻情報を提供する内蔵時計
を備えることを特徴とする通信装置。 When the transmitter and the receiver are connected by multiple networks that do not cause packet order reversal in the network,
Multiple sequence buffers installed in each network that accumulate packets until the sequence is confirmed,
An extraction control unit for confirming the sequence number added to the packet and extracting the packet from the order buffer while restoring the flow order;
A storage controller that determines that a loss has occurred when the sequence buffer overflows;
A capacity determining unit that determines the capacity of the order buffer from the bandwidth and delay time of each network;
A communication apparatus, comprising: a built-in clock that provides time information for calculating the delay time.
前記受信機が
順序確認を行うまでパケットを蓄積する、網ごとに複数設置された順序バッファと、
パケットに付加されたシーケンス番号を確認し、フローの順序を復元しながら前記順序バッファよりパケットを取り出す取出制御部と、
前記順序バッファがあふれた場合に欠落が発生したと判定する格納制御部
を備えることを特徴とする通信システム。 When the transmitter and the receiver are connected by multiple networks that do not cause packet order reversal in the network,
A plurality of sequence buffers installed in each network for storing packets until the receiver confirms the sequence;
An extraction control unit for confirming the sequence number added to the packet and extracting the packet from the order buffer while restoring the flow order;
A communication system comprising: a storage control unit that determines that a loss has occurred when the order buffer overflows.
前記受信機が、
順序確認を行うまでパケットを蓄積する、網ごとに複数設置された順序バッファと、
パケットに付加されたシーケンス番号を確認し、フローの順序を復元しながら前記順序バッファよりパケットを取り出す取出制御部と、
前記順序バッファがあふれた場合に欠落が発生したと判定する格納制御部と、
網毎の帯域と遅延時間より前記順序バッファの容量を決定する容量決定部と、
前記遅延時間を計算するために時刻情報を提供する内蔵時計
を備え、
前記送信機が、
前記容量決定部が遅延時間を計算するためにパケットヘッダ内に送信時刻を書き込む振り分け部と、
前記遅延時間を計算するための時刻情報を提供する内蔵時計
を備えることを特徴とする通信システム。 When the transmitter and the receiver are connected by multiple networks that do not cause packet order reversal in the network,
The receiver is
Multiple sequence buffers installed in each network that accumulate packets until the sequence is confirmed,
An extraction control unit for confirming the sequence number added to the packet and extracting the packet from the order buffer while restoring the flow order;
A storage controller that determines that a loss has occurred when the sequence buffer overflows;
A capacity determining unit that determines the capacity of the order buffer from the bandwidth and delay time of each network;
A built-in clock that provides time information to calculate the delay time;
The transmitter is
A distribution unit that writes a transmission time in a packet header in order for the capacity determination unit to calculate a delay time;
A communication system comprising: a built-in clock that provides time information for calculating the delay time.
前記受信機が、
順序確認を行うまで網ごとの順序バッファにパケットを蓄積し、
前記順序バッファがあふれた場合に欠落が発生したと判定する
ことを特徴とするパケット欠落検出方法。 When the transmitter and the receiver are connected by multiple networks that do not cause packet order reversal in the network,
The receiver is
Packets are stored in the order buffer for each network until the order is confirmed.
A packet loss detection method, comprising: determining that a loss has occurred when the sequence buffer overflows.
前記受信機が、
順序確認を行うまで網ごとの順序バッファにパケットを蓄積し、
前記順序バッファがあふれた場合に欠落が発生したと判定し、
網毎の帯域と遅延時間より前記順序バッファの容量を決定する
ことを特徴とするパケット欠落検出方法。 When the transmitter and the receiver are connected by multiple networks that do not cause packet order reversal in the network,
The receiver is
Packets are stored in the order buffer for each network until the order is confirmed.
When the order buffer overflows, it is determined that a loss has occurred,
A packet loss detection method, wherein the capacity of the order buffer is determined from a bandwidth and a delay time for each network.
前記受信機が、
順序確認を行うまで網ごとの順序バッファにパケットを蓄積し、
前記順序バッファがあふれた場合に欠落が発生したと判定する
ことを特徴とするパケット欠落検出方法をコンピュータに行わせるためのプログラム。 When the transmitter and the receiver are connected by multiple networks that do not cause packet order reversal in the network,
The receiver is
Packets are stored in the order buffer for each network until the order is confirmed.
A program for causing a computer to perform a packet loss detection method that determines that a loss has occurred when the sequence buffer overflows.
前記受信機が、
順序確認を行うまで網ごとの順序バッファにパケットを蓄積し、
前記順序バッファがあふれた場合に欠落が発生したと判定し、
網毎の帯域と遅延時間より前記順序バッファの容量を決定する
ことを特徴とするパケット欠落検出方法をコンピュータに行わせるためのプログラム。 When the transmitter and the receiver are connected by multiple networks that do not cause packet order reversal in the network,
The receiver is
Packets are stored in the order buffer for each network until the order is confirmed.
When the order buffer overflows, it is determined that a loss has occurred,
A program for causing a computer to perform a packet loss detection method, wherein the capacity of the sequential buffer is determined from a bandwidth and a delay time for each network.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009270386A JP5170847B2 (en) | 2009-11-27 | 2009-11-27 | Communication apparatus, communication system, packet loss detection method, and packet loss detection program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009270386A JP5170847B2 (en) | 2009-11-27 | 2009-11-27 | Communication apparatus, communication system, packet loss detection method, and packet loss detection program |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007221164A Division JP4587053B2 (en) | 2007-08-28 | 2007-08-28 | Communication apparatus, communication system, packet loss detection method, and packet loss detection program |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2012132057A Division JP5382556B2 (en) | 2012-06-11 | 2012-06-11 | Communication apparatus, communication system, packet loss detection method, and packet loss detection program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2010074854A true JP2010074854A (en) | 2010-04-02 |
JP5170847B2 JP5170847B2 (en) | 2013-03-27 |
Family
ID=42206126
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009270386A Active JP5170847B2 (en) | 2009-11-27 | 2009-11-27 | Communication apparatus, communication system, packet loss detection method, and packet loss detection program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5170847B2 (en) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0477155A (en) * | 1990-07-17 | 1992-03-11 | Nec Corp | Parallel data transmission system |
JPH10229429A (en) * | 1997-02-13 | 1998-08-25 | Oki Electric Ind Co Ltd | Communication network system |
JP2001111608A (en) * | 1999-10-07 | 2001-04-20 | Canon Inc | Packet rearrangement device, its communication network and communication control system |
JP2001352359A (en) * | 2000-06-09 | 2001-12-21 | Mitsubishi Electric Corp | Data transmitter and data receiver |
JP2003333073A (en) * | 2002-05-13 | 2003-11-21 | Canon Inc | Communication network, node device, and transfer control method |
JP2004080139A (en) * | 2002-08-12 | 2004-03-11 | Kddi R & D Laboratories Inc | Method for controlling sequence of packet in multi-link communication system |
-
2009
- 2009-11-27 JP JP2009270386A patent/JP5170847B2/en active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0477155A (en) * | 1990-07-17 | 1992-03-11 | Nec Corp | Parallel data transmission system |
JPH10229429A (en) * | 1997-02-13 | 1998-08-25 | Oki Electric Ind Co Ltd | Communication network system |
JP2001111608A (en) * | 1999-10-07 | 2001-04-20 | Canon Inc | Packet rearrangement device, its communication network and communication control system |
JP2001352359A (en) * | 2000-06-09 | 2001-12-21 | Mitsubishi Electric Corp | Data transmitter and data receiver |
JP2003333073A (en) * | 2002-05-13 | 2003-11-21 | Canon Inc | Communication network, node device, and transfer control method |
JP2004080139A (en) * | 2002-08-12 | 2004-03-11 | Kddi R & D Laboratories Inc | Method for controlling sequence of packet in multi-link communication system |
Also Published As
Publication number | Publication date |
---|---|
JP5170847B2 (en) | 2013-03-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4587053B2 (en) | Communication apparatus, communication system, packet loss detection method, and packet loss detection program | |
US11641387B2 (en) | Timely delivery of real-time media problem when TCP must be used | |
JP5816718B2 (en) | Communication apparatus, communication system, and data communication relay method | |
US9577791B2 (en) | Notification by network element of packet drops | |
US20070014246A1 (en) | Method and system for transparent TCP offload with per flow estimation of a far end transmit window | |
US20020054570A1 (en) | Data communication system, data communication method, and recording medium with data communication program recorded thereon | |
JP5867188B2 (en) | Information processing apparatus, congestion control method, and congestion control program | |
JP4924285B2 (en) | Communication apparatus, communication system, transfer efficiency improvement method, and transfer efficiency improvement program | |
WO2014092779A1 (en) | Notification by network element of packet drops | |
CN109981385B (en) | Method, device and system for realizing packet loss detection | |
US20070291782A1 (en) | Acknowledgement filtering | |
Tam et al. | Preventing TCP incast throughput collapse at the initiation, continuation, and termination | |
JP5046197B2 (en) | Communication apparatus, communication system, packet loss detection method, and packet loss detection program | |
JP7067544B2 (en) | Communication systems, communication devices, methods and programs | |
CN109067663B (en) | System and method for controlling request response rate in application program | |
JP5382556B2 (en) | Communication apparatus, communication system, packet loss detection method, and packet loss detection program | |
JP5761193B2 (en) | Communication apparatus, communication system, packet retransmission control method, and packet retransmission control program | |
EP3108631B1 (en) | Buffer bloat control | |
JP5170847B2 (en) | Communication apparatus, communication system, packet loss detection method, and packet loss detection program | |
CN104580171A (en) | TCP (transmission control protocol) transmission method, device and system | |
CN112491666B (en) | Elastic reliable router for power grid wide area phase measurement system | |
JP5539161B2 (en) | Data transmission method and multi-site data distribution method | |
CN118118421A (en) | Remote direct memory access network congestion identification and control method and device | |
JP2003198612A (en) | File transferring method in packet communication network | |
Reddy | Best Practices for Deploying FCIP and IFCP Solutions Using Connectrix Multiprotocol Routers |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD03 | Notification of appointment of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7423 Effective date: 20100630 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20100630 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20111102 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20111228 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120411 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120611 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20120816 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20121114 |
|
A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20121122 |
|
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: 20121210 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20121223 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5170847 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |