JP7680392B2 - COMMUNICATION CONTROL DEVICE, CONTROL METHOD, COMMUNICATION SYSTEM, AND PROGRAM - Google Patents
COMMUNICATION CONTROL DEVICE, CONTROL METHOD, COMMUNICATION SYSTEM, AND PROGRAM Download PDFInfo
- Publication number
- JP7680392B2 JP7680392B2 JP2022053602A JP2022053602A JP7680392B2 JP 7680392 B2 JP7680392 B2 JP 7680392B2 JP 2022053602 A JP2022053602 A JP 2022053602A JP 2022053602 A JP2022053602 A JP 2022053602A JP 7680392 B2 JP7680392 B2 JP 7680392B2
- Authority
- JP
- Japan
- Prior art keywords
- node
- communication
- tcp session
- relay
- switching
- 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)
Description
本発明は、TCPセッションの中継を行う通信システムにおける通信制御装置、制御方法、通信システム、及びプログラムに関する。 The present invention relates to a communication control device, a control method, a communication system, and a program in a communication system that relays TCP sessions.
ネットワークを介したデータの送受信のためにTCP(伝送制御プロトコル)が使用されている。TCPによるデータの送受信においてはフロー制御が行われる(引用文献1、2)。データを受信する通信装置(以下、受信装置)は、データを送信する通信装置(以下、送信装置)からのパケットの受信状況を肯定応答(ACK)又は否定応答(NACK)で送信装置に通知する。なお、ACKはパケットを正常に受信していることを示し、NACKは損失パケットが生じたことを示す。 Transmission Control Protocol (TCP) is used to send and receive data over a network. Flow control is performed when sending and receiving data using TCP (References 1 and 2). A communication device that receives data (hereafter referred to as a receiving device) notifies the communication device that transmits data (hereafter referred to as a transmitting device) of the reception status of packets from the transmitting device by sending an acknowledgement (ACK) or a negative acknowledgement (NACK). Note that an ACK indicates that a packet has been received normally, and a NACK indicates that a packet has been lost.
フロー制御において、送信装置は送信ウィンドウサイズを管理する。送信ウィンドウサイズは、送信装置が、受信装置からのACKを受信することなく送信できるパケット数を規定する。送信装置は、受信装置から報告される受信状況、つまり、ACK又はNACKに基づき送信ウィンドウサイズを増減させる。一般的に、送信装置は、NACKを受信すると送信ウィンドウサイズを減少させ、ACKのみを受信している間、所定のアルゴリズムに従い送信ウィンドウサイズを増加させる。送信ウィンドウサイズに応じて送信装置が送信するパケット数がネットワークの状態に応じて調整され、フロー制御が実現される。 In flow control, the transmitting device manages the transmission window size. The transmission window size specifies the number of packets that the transmitting device can transmit without receiving an ACK from the receiving device. The transmitting device increases or decreases the transmission window size based on the reception status reported by the receiving device, i.e., ACK or NACK. Generally, the transmitting device decreases the transmission window size when it receives a NACK, and increases the transmission window size according to a predetermined algorithm while only an ACK is being received. The number of packets that the transmitting device transmits is adjusted according to the transmission window size according to the network conditions, thereby achieving flow control.
従来のTCP通信では、往復遅延時間(ラウンドトリップタイム)が大きい環境で高速なTCP通信を実現しようとすると、送信ウィンドウサイズを大きくすることが必要であるが、送信ウィンドウサイズは通信が成功したことで拡大するため、通信の途中でデータロスが発生すれば、送信ウィンドウサイズの拡大が妨げられる。インターネットでは、データロスを完全になくすことができないため、ある程度の通信速度に頭打ちする。 In conventional TCP communication, in order to achieve high-speed TCP communication in an environment with a long round-trip time, it is necessary to increase the transmission window size. However, because the transmission window size increases when communication is successful, if data loss occurs during communication, this prevents the transmission window size from increasing. On the Internet, data loss cannot be completely eliminated, so communication speeds are limited to a certain level.
図1(A)に示すように、送信機と受信機との間の2つのノードの間でTCP通信を行うとき、送信ウィンドウサイズがwtで、パケットの往復にかかる遅延時間(往復遅延時間)がrtのとき、そのスループットはwt/rtとなり、往復遅延時間に反比例してスループットが低下する。 As shown in Figure 1 (A), when TCP communication is performed between two nodes, a transmitter and a receiver, if the transmission window size is wt and the delay time it takes for a packet to travel round trip (round trip delay time) is rt , the throughput is wt / rt , and the throughput decreases in inverse proportion to the round trip delay time.
非特許文献2は、往復遅延時間が大きい環境で、高速通信を実現する手段に、TCP通信を中継する方法を開示している。TCP通信を中継する場合には、中継ノードが受信機能と送信機能を備える。図1(B)に示すように、送信・受信ノードの間の往復遅延時間よりも、各区間(送信ノードと中継ノードの区間と、中継ノードと受信ノードの区間)の往復遅延時間rt1、rt2が小さい中継ノードを選択することで、スループットを向上することが可能になる。
ここで、送受信間の通信を開始する時点で中継ノードによって送受信間の通信を中継させる場合、送受信間の通信が十分に高速な速度に達する前に通信を終了する場合があり、中継ノードによるスループットの向上のメリットが得られないまま中継ノードに負荷がかかるという課題があった。 Here, if a relay node is used to relay communication between a sender and a receiver at the time communication between the sender and the receiver starts, the communication may end before the communication speed between the sender and the receiver reaches a sufficiently high speed, which creates an issue of imposing a load on the relay node without providing the benefit of improved throughput due to the relay node.
本発明は、上記課題に鑑みてなされたものであり、通信中のTCPセッションを中継ノードによって中継されるTCPセッションに適切に切り替える技術を提供するものである。 The present invention has been made in consideration of the above problems, and provides a technology for appropriately switching a TCP session in progress to a TCP session relayed by a relay node.
本発明の一態様によると、送信元ノードまたは宛先ノードに備えられる通信制御装置は、
通信を行っている切替元のTransmission Control Protocol(TCP)セッションが所定の条件を満たすか否かを判定する判定手段と、
複数の候補中継ノードのうちから、前記切替元のTCPセッションに対応する前記通信を中継させる中継装置を決定する決定手段と、
前記判定手段で前記切替元のTCPセッションが前記所定の条件を満たすと判定した場合に、前記決定手段で決定した前記中継装置と、前記切替元のTCPセッションの前記送信元ノードおよび前記宛先ノードのそれぞれとの間で切替先のTCPセッションを確立し、前記切替先のTCPセッションにおいて、前記切替元のTCPセッションに関連付けられた前記通信とは異なる事前通信の実行を指示する指示手段と、
前記事前通信を行った後に、前記切替元のTCPセッションから前記切替先のTCPセッションへ前記通信を切り替える切替手段と、
を備えることを特徴とする。
According to one aspect of the present invention, a communication control device provided in a source node or a destination node includes :
A determination means for determining whether a transmission control protocol (TCP) session of a switching source which is performing communication satisfies a predetermined condition;
a determining means for determining, from among a plurality of candidate relay nodes, a relay device that will relay the communication corresponding to the switching source TCP session;
an instruction means for establishing a switching destination TCP session between the relay device determined by the determination means and each of the source node and destination node of the switching source TCP session when the determination means determines that the switching source TCP session satisfies the predetermined condition, and for instructing execution of a pre-communication, which is different from the communication associated with the switching source TCP session, in the switching destination TCP session;
a switching means for switching the communication from the source TCP session to the destination TCP session after the preliminary communication is performed;
The present invention is characterized by comprising:
本発明によると、通信中のTCPセッションを中継ノードによって中継されるTCPセッションに適切に切り替える技術を提供することができる。 The present invention provides a technology that appropriately switches a TCP session in progress to a TCP session relayed by a relay node.
以下、添付図面を参照して実施形態を詳しく説明する。なお、以下の実施形態は特許請求の範囲に係る発明を限定するものでなく、また実施形態で説明されている特徴の組み合わせの全てが発明に必須のものとは限らない。実施形態で説明されている複数の特徴うち二つ以上の特徴が任意に組み合わされてもよい。また、同一若しくは同様の構成には同一の参照番号を付し、重複した説明は省略する。 The following embodiments are described in detail with reference to the attached drawings. Note that the following embodiments do not limit the invention according to the claims, and not all combinations of features described in the embodiments are necessarily essential to the invention. Two or more of the features described in the embodiments may be combined in any desired manner. In addition, the same reference numbers are used for the same or similar configurations, and duplicate descriptions will be omitted.
本実施形態に係る通信システムは、送信ノードと受信ノードとの間のTCPセッションにおける通信を開始した後に、適切なタイミングで送信ノードと中継ノードとの間、および中継ノードと受信ノードとの間のTCPセッションに切り替えて通信を行う。これによって、通信速度が高くなる前に通信すべきデータがなくなり、通信を終了し、中継ノードの挿入による速度向上のメリットが得られないまま中継ノードの処理負荷を無駄に高めることになることを避けることができる。 In the communication system according to this embodiment, after starting communication in a TCP session between a sending node and a receiving node, communication is switched to a TCP session between the sending node and a relay node, and between the relay node and a receiving node at an appropriate timing. This makes it possible to avoid a situation where communication is terminated due to data being exhausted before the communication speed increases, resulting in an unnecessary increase in the processing load of the relay node without obtaining the benefit of the increased speed achieved by inserting a relay node.
図2は本実施形態に係る通信システムを示す図である。図2に示す通信システム1は、送信ノード10、受信ノード20、および複数の中継ノード30を含む。送信ノード10、受信ノード20、および複数の中継ノード30は、ネットワーク2を介して通信可能に接続された通信装置である。
Figure 2 is a diagram showing a communication system according to this embodiment. The communication system 1 shown in Figure 2 includes a
送信ノード10は、受信ノード20とのTCPセッションを確立し、フロー制御を実行してデータ通信を行い、中継ノード30による中継を行わせるか否かを判定する通信制御装置の一例である。送信ノード10は、例えばインターネット上のサーバである。受信ノード20は、例えばスマートフォン、パーソナルコンピュータを含むユーザ装置である。
The sending
ネットワーク2は、TCP方式を使用してパケットの送受信が可能なネットワークであり、少なくとも一部にインターネットを含んでもよい。 Network 2 is a network capable of sending and receiving packets using the TCP protocol, and may include the Internet at least in part.
中継ノード30は、送信ノード10および受信ノード20のそれぞれとTCPセッションを確立し、それぞれの通信区間でフロー制御を実行して送信ノード10から受信したデータパケットを受信ノード20に転送することで通信の中継を行う通信装置である。本実施形態では、図1に示すように送信ノード10が、3つの中継ノード30のうちから通信を中継させる中継ノード30を選択するものとして説明する。しかしながら、中継ノードの数は3つに限定されず、1つ以上であればよい。
The
図3を参照して本実施形態に係る送信ノード10および受信ノード20の構成を説明する。送信ノード10および受信ノード20は、一例において、プロセッサ301、ROM302、RAM303、記憶装置304、および通信回路305を有する。送信ノード10および受信ノード20のプロセッサ301は、例えばROM(Read Only Memory)302、RAM(Random Access Memory)303及び記憶装置304のいずれかに記録されたプログラムを実行する。
The configuration of the transmitting
プロセッサ301は、プロセッサを実行することで、フロー制御部311、トリガ検出部312、中継ノード選択部313、事前調整部314、セッション切替部315の機能を実行する。なお、プロセッサ301は、CPU(中央処理装置)、ASIC(特定用途向け集積回路)、FPGA(フィールドプログラマブルゲートアレイ)、DSP(デジタルシグナルプロセッサ)等の1つ以上のプロセッサを備える。また、プロセッサ301は、ROM302、RAM303、記憶装置304のいずれかに記憶されたプログラムを実行して、送信ノード10および受信ノード20の全体を制御する。
By executing the processor, the
なお、送信ノード10および受信ノード20は、各機能を実行する専用のハードウェアを備えてもよいし、一部をハードウェアで実行し、プログラムを動作させるコンピュータでその他の部分を実行してもよい。また、全機能がコンピュータとプログラムにより実行されてもよい。
The sending
また、送信ノード10および受信ノード20のいずれか一方がトリガ検出部312、中継ノード選択部313、事前調整部314、およびセッション切替部315の機能を有すればよい。すなわち、送信ノード10および受信ノード20の少なくともいずれかに通信制御装置としての機能が備えられればよく、送信ノード10および受信ノード20によって通信制御装置としての機能が実現されてもよい。本実施形態では、送信ノード10がトリガ検出部312、中継ノード選択部313、事前調整部314、およびセッション切替部315の機能を有するものとして説明を行う。
Also, either the transmitting
フロー制御部311は、TCPセッションにおいて送信ウィンドウサイズに従ってデータパケットを送信し、データパケットへの応答として受信したACK/NACK信号に基づいて送信ウィンドウサイズの制御を行う。
The
トリガ検出部312は、送受信間のTCPセッションを監視し、トリガイベントが発生したことを検出する。トリガイベントが発生したことを検出した場合は、中継ノード30によって送信ノード10と受信ノード20との間の通信を中継させる。
The
トリガイベントは、例えば送信ウィンドウサイズが所定の期間の間、例えば30秒間、変動していないことである。例えば、トリガイベントは、所定の期間内における送信ウィンドウサイズwtが、所定の期間内における最大送信ウィンドウサイズwmaxの最大値から所定の範囲内、すなわちa×wmax≦wt≦wmaxであることである。ここで、aはウィンドウサイズの範囲を定義する変数で0<a<1である。一例では、a=0.9である。 The trigger event is, for example, that the transmission window size has not changed for a predetermined period, for example, 30 seconds. For example, the trigger event is that the transmission window size wt in the predetermined period is within a predetermined range from the maximum value of the maximum transmission window size wmax in the predetermined period, i.e., a× wmax ≦ wt ≦ wmax , where a is a variable that defines the range of the window size and is 0<a<1. In one example, a=0.9.
あるいは、トリガイベントは、例えば直近の所定の回数、例えば5回、取得した送信ウィンドウサイズが所定の範囲内であることである。この場合、トリガ検出部312は、取得した送信ウィンドウサイズをRAM303または記憶装置304に記憶する。そしてトリガ検出部312は、直近の5回の送信ウィンドウサイズの値wtのうちの最大値wmaxに対して他の送信ウィンドウサイズの値が所定の範囲内である、例えばwmax≧wt≧0.9×wmaxである場合に、直近の所定の回数取得した送信ウィンドウサイズが所定の範囲内であると判定することができる。
Alternatively, the trigger event may be, for example, the transmission window size acquired a predetermined number of times most recently, for example, five times, being within a predetermined range. In this case, the
これによって、所定の期間内において、最大送信ウィンドウサイズに対する送信ウィンドウサイズの変動が小さい場合、すなわち最大送信ウィンドウサイズ以上に送信ウィンドウサイズの上昇が期待できない場合に、後述する方法で選択した中継ノード30を介して通信することで、スループットの向上が期待できる。
As a result, when the variation in the transmission window size relative to the maximum transmission window size within a specified period is small, i.e., when the transmission window size is not expected to increase beyond the maximum transmission window size, improved throughput can be expected by communicating via a
別の例では、トリガイベントは、例えば送信ウィンドウサイズが所定の期間内に変動しておらず、かつ所定の値以上であることである。例えば、トリガイベントは、所定の期間内における送信ウィンドウサイズwtが、所定の期間内における最大送信ウィンドウサイズwmaxの最大値から所定の範囲内、すなわちa×wmax≦wt≦wmaxであり、かつ所定の値b≦wtであることである。ここで、bは中継ノードの導入を可能にする閾値であり、例えばb=10Mbpsなどの値である。 In another example, the trigger event is, for example, that the transmission window size has not changed within a predetermined period and is equal to or greater than a predetermined value. For example, the trigger event is that the transmission window size wt within a predetermined period is within a predetermined range from the maximum value of the maximum transmission window size wmax within the predetermined period, i.e., a× wmax ≦ wt ≦ wmax , and a predetermined value b≦ wt , where b is a threshold value that enables the introduction of a relay node, and is, for example, a value such as b=10 Mbps.
あるいは、トリガイベントは、例えば直近の所定の回数、例えば5回、取得した送信ウィンドウサイズが所定の範囲内であり、かつ取得した送信ウィンドウサイズが所定の値以上であることである。この場合、トリガ検出部312は、取得した送信ウィンドウサイズをRAM303または記憶装置304に記憶する。そしてトリガ検出部312は、直近の5回の送信ウィンドウサイズの値wtのうちの最大値wmaxに対して他の送信ウィンドウサイズの値が所定の範囲内、例えばwmax≧wt≧0.9×wmaxであり、かつ所定の値b≦wtである場合に、直近の所定の回数取得した送信ウィンドウサイズが所定の範囲内であり、かつ所定の値以上であると判定することができる。
Alternatively, the trigger event may be, for example, the transmission window size acquired a predetermined number of times most recently, for example, five times, being within a predetermined range and being equal to or greater than a predetermined value. In this case, the
これによって、スループットが所定の値以上で所定の期間通信しており、送信ウィンドウサイズが所定の期間に変動していない場合、すなわち高スループットの通信を行っている場合、大容量のストリーミングなどのアプリケーションを使用している場合があり、今後も高スループットの通信を継続する可能性が高いと判定することができる。このような場合、後述する方法で選択した中継ノード30を介して通信を行うことで、中継ノード30による通信の中継によるメリットが得られる。
As a result, if communication has been performed for a specified period of time with a throughput equal to or greater than a specified value and the transmission window size has not fluctuated during the specified period, i.e., if high-throughput communication is being performed, applications such as large-volume streaming may be in use, and it can be determined that there is a high possibility that high-throughput communication will continue in the future. In such cases, by performing communication via a
また、トリガイベントは、例えば送信ウィンドウサイズが所定の値以上であることである。この場合、トリガ検出部312は、取得した送信ウィンドウサイズの値wtが所定の値b≦wtである場合に、中継ノード30による通信セッションの中継を行うと判断する。これによって、高スループットが要求されていると判定した場合に、中継ノード30を介して通信を行うことで、中継ノード30によってスループットの向上が可能となり、通信の中継によるメリットが得られる。
Moreover, the trigger event is, for example, a transmission window size being equal to or larger than a predetermined value. In this case, when the acquired transmission window size value wt is a predetermined value b≦ wt , the
中継ノード選択部313は、複数の中継ノード30のうちから、送信ノード10と受信ノード20との間の通信を中継させる中継ノード30を選択し、選択した中継ノード30に送信ノード10および受信ノード20との間のセッションを確立するよう指示する。中継ノード選択部313は、通信を中継させることでスループットを向上できる可能性が高い中継ノード30を選択する。図1を参照したように、パケットの往復にかかる往復遅延時間を短くすることでスループットを向上することができる。このため、本実施形態に係る中継ノード選択部313は、送信ノード10および受信ノード20のそれぞれと、中継ノード30との間の往復遅延時間に基づいて中継ノード30を選択する。一例では、送信ノード10および受信ノード20のうちのいずれかが、候補となる中継ノード30を選択し、他方が候補となる中継ノード30のうちから通信を中継させる中継ノード30を決定してもよい。
The relay
事前調整部314は、中継ノード選択部313で選択した中継ノード30に通信セッションを中継させる前に、送信ノード10と受信ノード20との間のセッション(切替前セッション)を維持したまま、送信ノード10と中継ノード30との間のセッション、および中継ノード30と受信ノード20との間のセッションを含むセッション(切替後セッション)の送信ウィンドウサイズを大きくするためのダミーデータの送受信を行う。これによって、切替後セッションに通信を切り替える前に、切替後セッションのスループットを向上することができる。
Before relaying a communication session to the
セッション切替部315は、事前調整部314によって切替後セッションの事前調整を行った後に、送信ノード10と受信ノード20との間の切替前セッションから、切替後セッションに通信を切り替えるよう指示を送信する。
After the
図4を参照して中継ノード30の構成を説明する。中継ノードは、一例において、プロセッサ401、ROM402、RAM403、記憶装置404、および通信回路405を有する。中継ノード30のプロセッサ401は、例えばROM402、RAM403及び記憶装置404のいずれかに記録されたプログラムを実行する。
The configuration of the
プロセッサ401は、プロセッサを実行することで、フロー制御部411、指示受付部412、および事前調整部413の機能を実行する。なお、プロセッサ401は、CPU(中央処理装置)、ASIC(特定用途向け集積回路)、FPGA(フィールドプログラマブルゲートアレイ)、DSP(デジタルシグナルプロセッサ)等の1つ以上のプロセッサを備える。また、プロセッサ401は、ROM402、RAM403、記憶装置404のいずれかに記憶されたプログラムを実行して、中継ノード30の全体を制御する。
The
通信回路405は、送信ノード10との間の通信セッションと、受信ノード20との間の通信セッションを同時に確立し、フロー制御部411は、それぞれのセッションを独立して制御する。一例では、通信回路405は、送信ノード10および受信ノード20のそれぞれと通信する複数の通信インタフェースを備える。
The
指示受付部412は、中継ノード選択部313から送信されたセッション確立指示を受信し、指示に応じて送信ノード10および受信ノード20のそれぞれとセッションを確立する。
The
事前調整部413は、指示受付部412が確立したセッションでダミーデータの送受信を行い、切替後セッションに通信を切り替える前に切替後セッションのウィンドウサイズを拡大する。
The
図5を参照して、本実施形態に係る通信システム1が実行する処理シーケンスの一例について説明する。 With reference to Figure 5, an example of a processing sequence executed by the communication system 1 according to this embodiment will be described.
まず、S501で送信ノード10と受信ノード20はTCPセッションを確立し、S502で通信を開始する。ここで、トリガ検出部312は通信状況の監視を開始する。S501では、既存技術を使用してTCPセッションを確立することができる。なお、S502の通信開始後、図示していないが送信ノード10と受信ノード20とは切替元の通信セッションで通信を行うものとする。
First, in S501, the transmitting
その後、トリガ検出部312は、S502においてS501で確立したセッション(切替前セッション)が中継ノード30の利用を行うと判定するための条件を満たしたか否かを判定する。
Then, in S502, the
中継ノード30の利用を行うと判定するための条件を満たさない場合は継続して通信状況の監視を継続する。中継ノード30の利用を行うと判定するための条件を満たすと判定した場合は、処理をS504に進め、中継ノード選択部313が中継ノード30の選択を行う。本実施形態では、送信ノード10の中継ノード選択部313は、候補となる中継ノード30の選択を行うものとする。S504では、送信ノード10の中継ノード選択部313は、複数の中継ノード30に対してpingコマンドなどの遅延時間を測定するプログラムを実行し、複数の中継ノード30のうちから、往復遅延時間が低い順に所定数、例えば5つの中継ノード30を選択する。
If the conditions for determining whether to use the
なお、一例では、送信ノード10は複数の中継ノード30に対して所定の時間間隔、例えば1分ごとに往復遅延時間を測定し、測定した往復遅延時間を中継ノード30と対応付けて記憶装置304に記憶し、S504では記憶装置304に記憶した往復遅延時間に基づいて候補となる中継ノード30を選択してもよい。
In one example, the sending
S504で中継ノード30の選択を行った中継ノード選択部313は、S505に処理を進め、受信ノード20に中継要求信号を送信する。S505で受信ノード20に送信する中継要求信号には、切替前のセッションで使用している受信ノード20のTCP通信の宛先ポート番号と、S510で後述する切替処理において使用する送信側のセッション番号を通知する。セッション番号は、例えば疑似ランダム関数を使用して生成されてもよい。また、S505で中継ノード30に送信する中継要求信号は、候補となる中継ノード30と、それぞれの往復遅延時間とを対応付けたリストを含む。
After selecting the
なお、S504で送信ノード10の中継ノード選択部313が通信を中継する1つの中継ノード30を選択する場合には、中継要求信号には、切替前のセッションで使用しているTCP通信のポート番号と、S510で後述する切替処理において使用するセッション番号と、当該中継ノード30を指定する情報とが含まれればよい。このような場合、中継要求信号は、候補となる中継ノード30と、それぞれの往復遅延時間とを対応付けたリストを含まなくてもよい。
When the relay
S506で、受信ノード20は、中継要求信号に含まれるTCP通信の宛先ポート番号を通信に使用しているか否かを判定し、使用している場合には当該宛先ポート番号に対応するTCP通信を中継させると特定する。また、受信ノード20の中継ノード選択部313はS506で中継要求信号に含まれる候補中継ノードに対する往復遅延時間を取得し、通信を中継させる中継ノード30を選択する。S506では、受信ノード20の中継ノード選択部313は、複数の中継ノード30に対してpingコマンドなどの遅延時間を測定するプログラムを実行し、複数の中継ノード30のうちから、往復遅延時間が低い順に所定数、例えば5つの中継ノード30を選択する。あるいは、受信ノード20は複数の中継ノード30に対して所定の時間間隔、例えば1分ごとに往復遅延時間を測定し、測定した往復遅延時間を中継ノード30と対応付けて記憶装置304に記憶し、S506では記憶装置304に記憶した往復遅延時間に基づいて候補となる中継ノード30を選択してもよい。
In S506, the receiving
ここで、S506で受信ノード20の中継ノード選択部313は、所定の中継ノード30と送信ノード10との間の往復遅延時間(送信側遅延時間)と、当該所定の中継ノード30と受信ノード20との間の往復遅延時間(受信側遅延時間)とに基づいて中継ノード30を選択する。
Here, in S506, the relay
一例では、複数の候補中継ノードのうち、送信側遅延時間と受信側遅延時間との合計が最も小さくなる中継ノード30に通信を中継させると決定する。なお、送信側遅延時間と受信側遅延時間とのいずれか一方が、送信ノード10と受信ノード20との間の往復遅延時間よりも大きい候補中継ノードについては、通信を中継させないと決定する。
In one example, it is determined that the communication is to be relayed by the
また、複数の候補中継ノードのうち、送信側遅延時間と受信側遅延時間との差が最も小さい中継ノード30に通信を中継させると決定してもよい。
It may also be determined that the communication is to be relayed by the
中継ノード30を選択した受信ノード20は、S507で選択した中継ノード30の識別情報を含む中継応答信号を送信ノード10に送信する。また、S507で受信ノード20は、S510で後述する切替処理において使用する受信側のセッション番号を通知する。セッション番号は、例えば疑似ランダム関数を使用して生成されてもよい。
The receiving
中継応答信号を受信した送信ノード10は、S508において、中継応答信号に含まれる中継ノード30に中継指示信号を送信する。中継指示信号には、切替元のTCPセッション情報として、送信ノード10および受信ノード20のIPアドレスおよびポート番号、並びに送信側および受信側のセッション番号が含まれる。
In S508, the transmitting
中継指示信号を受信した中継ノード30は、S509において中継通知信号を受信ノード20に送信する。中継通知信号には、TCPセッション情報として、切替元のTCPセッション情報として、送信ノード10および受信ノード20のIPアドレスおよびポート番号、並びに送信側および受信側のセッション番号が含まれる。
The
受信ノード20は、中継ノード30から受信したTCPセッション情報と、受信ノード20が記憶装置304に格納しているTCPセッション情報とが一致するか否かを判定する。情報が一致する場合、中継ノード30による中継を許可すると判断して、S510で中継通知応答を中継ノード30に送信する。中継通知応答には、受信ノード20が切替先のTCPセッションで使用する中継用受信ポート番号を示す情報と送信側および受信側のセッション番号を示す情報とが含まれる。
The receiving
中継通知応答を受信した中継ノード30は、S511で送信ノード10に中継指示応答を送信する。中継指示応答には、送信側および受信側のセッション番号を示す情報と、中継ノード30が送信ノード10とのTCPセッションの確立に使用する中継ポート番号を示す情報とが含まれる。
The
また、中継ノード30は、S511の中継指示応答と並行して、S512で受信ノード20とのTCPセッションを確立する。ここで、中継ノード30は、中継通知応答に含まれる中継用受信ポート番号を指定してTCPセッションを確立する。
In addition, in parallel with the relay instruction response of S511, the
中継指示応答を受信した送信ノード10は、S513で中継ノード30に応答確認信号を送信する。応答確認信号には、送信側および受信側のセッション番号が含まれる。
The sending
また、S513で応答確認信号を受信した送信ノード10は、S514で中継ノード30とのTCPセッションを確立する。S514では、送信ノード10はS511で受信した中継指示応答に含まれる中継ポート番号を指定してTCPセッションを確立する。
Furthermore, the sending
S515で、送信ノード10は、調整設定信号を受信ノード20に送信する。調整設定信号には、例えば、切替先のTCPセッションのウィンドウサイズが超えるべき閾値を指示する情報を含む。例えば、閾値は、1MBなどの固定値であっても良いし、切替元のTCPセッションのウィンドウサイズに基づいて決定されてもよい。
At S515, the sending
別の例では、調整設定信号には送信するダミーデータの量を指示する情報を含む。一例では、切替元のTCPセッションのウィンドウサイズに基づいて決定されてもよい。例えば、切替元のTCPセッションの最大ウィンドウサイズの2倍のダミーデータを送信すれば、パケットロスがない場合にはウィンドウサイズが切替元のTCPセッションと同一になる。このため、一例では切替元のTCPセッションの最大ウィンドウサイズの2倍のダミーデータを送信するように送信するダミーデータの量を指示してもよい。これによって、送信ノード10は、切替先のTCPセッションのウィンドウサイズが所定の値より大きくなるまで事前通信を行うことができる。
In another example, the adjustment setting signal includes information indicating the amount of dummy data to be transmitted. In one example, this may be determined based on the window size of the source TCP session. For example, if dummy data twice the maximum window size of the source TCP session is transmitted, the window size will be the same as that of the source TCP session if there is no packet loss. Therefore, in one example, the amount of dummy data to be transmitted may be indicated so that dummy data twice the maximum window size of the source TCP session is transmitted. This allows the transmitting
S516で、受信ノード20は、調整設定信号への応答である設定応答信号を送信ノード10に送信する。S517で、送信ノード10は中継ノード30にダミーデータの送信を行う事前通信を行う。中継ノード30は、受信したダミーデータを受信ノード20に転送する。ダミーデータは、例えば擬似ランダムビット列であってもよい。ダミーデータの送信に成功することで、送信ノード10と中継ノード30との間のTCPセッションと、中継ノード30と受信ノード20との間のTCPセッションのウィンドウサイズを大きくすることができる。
At S516, the receiving
S518で、送信ノード10および受信ノード20は、通信セッションを切り替えると判定する。一例では、送信ノード10および受信ノード20は、調整設定信号で指定した量のダミーデータの送受信が終了した場合に通信セッションを切り替えると判定する。また一例では、送信ノード10および受信ノード20は、切替先のTCPセッションのウィンドウサイズが所定の値以上になった場合に通信セッションを切り替えると判定する。なお、一例では、送信ノード10と受信ノード20と、または送信ノード10と中継ノード30とは、送信ノード10と中継ノード30との間のTCPセッションのウィンドウサイズと、受信ノード20と中継ノード30との間のTCPセッションのウィンドウサイズとに関する情報を送受信してもよい。
At S518, the transmitting
S518で通信セッションを切り替えると判定した場合、送信ノード10は、切替元のTCPセッションで送信していたデータ通信を切替先のTCPセッションで送信する。これによって、ウィンドウサイズが大きくなった状態でTCPセッションを切り替えることができる。
If it is determined in S518 that the communication session should be switched, the sending
以上説明したように、本実施形態にかかる通信制御装置は、送信ノード10と受信ノード20との間のラウンドトリップタイムより、送信ノード10と中継ノード30との間のラウンドトリップタイムおよび中継ノード30と受信ノード20との間のラウンドトリップタイムが小さい中継ノード30にTCPセッションを中継させると決定する。これによって、中継ノードによって通信を中継させることでスループットの向上が期待できる。
As described above, the communication control device according to this embodiment determines to relay a TCP session to a
また、本実施形態にかかる通信制御装置は、送信ノード10と受信ノード20との間のTCPセッションを中継する中継ノード30を決定し、中継ノード30を介した切替先のTCPセッションを確立する。そして、切替先のTCPセッションで、切替元のTCPセッションの通信とは関連しない事前通信を行う。そして、切替先のTCPセッションのウィンドウサイズが所定の値以上になった場合に、切替元のTCPセッションに対応付けられた通信を切替先のTCPセッションにおいて行う。これによって、スループットが向上できる状況においてTCPセッションの切替を行うことができ、中継ノード30による通信の中継を適切なタイミングで開始することができる。
The communication control device according to this embodiment also determines a
また、本実施形態にかかる通信制御装置は、送信ノード10と受信ノード20との間のTCPセッションが、通信の中継によってメリットが得られると判断できる所定の条件を満たした場合に中継ノード30を決定し、中継ノード30を介した切替先のTCPセッションの確立とセッションの切替を開始する。これによって、通信の中継によってメリットが得られない状況で切替先のTCPセッションへの切替を行い、中継ノード30に負荷がかかることを避けることができる。
The communication control device according to this embodiment also determines a
<その他の実施形態>
本実施形態では、中継ノード選択部313は、送信ノード10と中継ノード30との間の往復遅延時間(送信側遅延時間)と、受信ノード20と中継ノード30との間の往復遅延時間(受信側遅延時間)とに基づいて中継ノード30を選択するものとして説明を行った。一例では、中継ノード選択部313は、記憶装置304に過去の通信における最大ウィンドウサイズを記憶し、送信ノード10と中継ノード30との間の最大ウィンドウサイズ(送信側ウィンドウサイズ)と、受信ノード20と中継ノード30との間の最大ウィンドウサイズ(受信側ウィンドウサイズ)とに基づいて中継ノード30を選択してもよい。例えば、以下の評価値Sが最大となる中継ノード30を選択することで、高いスループットを期待することができる中継ノード30に通信を中継させることができる。
<Other embodiments>
In the present embodiment, the relay
S=min{(送信側ウィンドウサイズ)/(送信側遅延時間)、(受信側ウィンドウサイズ)/(受信側遅延時間)}
ここで、min{}は2つの値のうち最小のものを選ぶ関数である。
S = min {(sender window size)/(sender delay time), (receiver window size)/(receiver delay time)}
Here, min{ } is a function that selects the minimum of two values.
また、本実施形態において、S508~S511、およびS513、S515、S516で送信される信号に含まれる送信側および受信側のセッション番号は、信号の送信元の正当性を検証するために使用される。しかしながら、信号の送信元の正当性を検証するために他の認証技術を適用してもよく、このような場合にはS508~S511、およびS513、S515、S516で送信される信号には送信側および受信側のセッション番号が含まれなくてもよい。 In addition, in this embodiment, the sender and receiver session numbers included in the signals transmitted in S508 to S511, and S513, S515, and S516 are used to verify the authenticity of the signal sender. However, other authentication techniques may be applied to verify the authenticity of the signal sender, and in such cases, the signals transmitted in S508 to S511, and S513, S515, and S516 may not include the sender and receiver session numbers.
本実施形態では、S503の処理では、切替元のTCPセッションのウィンドウサイズのみに基づいて中継ノード30を介したTCPセッションの確立を行うか否かを判断するものとして説明を行った。一例では、候補中継ノードまでのラウンドトリップタイムに基づいてS503の処理が実行されてもよい。例えば、送信ノード10は、受信ノード20との間のラウンドトリップタイム(wt)および候補中継ノードとの間のラウンドトリップタイム(wt1)を測定し、受信ノード20との間のラウンドトリップタイムより所定の割合以上小さいラウンドトリップタイムの候補中継ノードを検出した場合に、トリガイベントが発生したと判定してもよい。例えば、wt1<0.8×wtを満たす候補中継ノードを検出した場合にトリガイベントが発生したと判定してもよい。このような場合、S506で候補中継ノードと受信ノード20との間のラウンドトリップタイム(wt2)を測定させ、S507でwt2を受信し、wt2<0.8×wtの場合に、当該候補中継ノードと切替後のTCPセッションを確立すると判定してもよい。
In this embodiment, the process of S503 has been described as determining whether or not to establish a TCP session via the
なお、本発明による通信装置、つまり、上述した送信ノード10、受信ノード20、および中継ノードは、デバイスの1つ以上のプロセッサで実行されると、当該デバイスを送信ノード10及び/又は受信ノード20及び/又は中継ノード30として動作させるプログラムにより実現することができる。これらプログラムは、デバイス可読記憶媒体に格納されて、又は、ネットワーク経由で配布が可能なものである。
The communication device according to the present invention, i.e., the above-mentioned
発明は上記の実施形態に制限されるものではなく、発明の要旨の範囲内で、種々の変形・変更が可能である。 The invention is not limited to the above-described embodiment, and various modifications and variations are possible within the scope of the invention.
10:送信ノード、20:受信ノード、30:中継ノード 10: Sending node, 20: Receiving node, 30: Relay node
Claims (11)
通信を行っている切替元のTransmission Control Protocol(TCP)セッションが所定の条件を満たすか否かを判定する判定手段と、
複数の候補中継ノードのうちから、前記切替元のTCPセッションに対応する前記通信を中継させる中継装置を決定する決定手段と、
前記判定手段で前記切替元のTCPセッションが前記所定の条件を満たすと判定した場合に、前記決定手段で決定した前記中継装置と、前記切替元のTCPセッションの前記送信元ノードおよび前記宛先ノードのそれぞれとの間で切替先のTCPセッションを確立し、前記切替先のTCPセッションにおいて、前記切替元のTCPセッションに関連付けられた前記通信とは異なる事前通信の実行を指示する指示手段と、
前記事前通信を行った後に、前記切替元のTCPセッションから前記切替先のTCPセッションへ前記通信を切り替える切替手段と、
を備えることを特徴とする通信制御装置。 A communication control device provided in a source node or a destination node ,
A determination means for determining whether a transmission control protocol (TCP) session of a switching source which is performing communication satisfies a predetermined condition;
a determining means for determining, from among a plurality of candidate relay nodes, a relay device that will relay the communication corresponding to the switching source TCP session;
an instruction means for establishing a switching destination TCP session between the relay device determined by the determination means and each of the source node and destination node of the switching source TCP session when the determination means determines that the switching source TCP session satisfies the predetermined condition, and for instructing execution of a pre-communication, which is different from the communication associated with the switching source TCP session, in the switching destination TCP session;
a switching means for switching the communication from the source TCP session to the destination TCP session after the preliminary communication is performed;
A communication control device comprising:
前記複数の候補中継ノードのそれぞれについて、前記送信元ノードとの間のパケットの往復にかかる第1の遅延時間と、前記宛先ノードとの間のパケットの往復にかかる第2の遅延時間とを取得し、
前記第1の遅延時間および前記第2の遅延時間が前記送信元ノードと前記宛先ノードとの間のパケットの往復にかかる遅延時間より小さい候補中継ノードを前記中継装置として決定することを特徴とする請求項1から3のいずれか1項に記載の通信制御装置。 The determining means is
For each of the plurality of candidate relay nodes, a first delay time required for a packet to travel to and from the source node and a second delay time required for a packet to travel to and from the destination node are obtained;
4. The communication control device according to claim 1, further comprising: determining, as the relay device, a candidate relay node whose first delay time and whose second delay time are smaller than the delay time required for a packet to travel round trip between the source node and the destination node.
前記所定の量は、前記切替元のTCPセッションのウィンドウサイズに基づいて決定されることを特徴とする請求項1から6のいずれか1項に記載の通信制御装置。 the instruction means instructs to communicate a predetermined amount of dummy data in the preliminary communication,
7. The communication control device according to claim 1 , wherein the predetermined amount is determined based on a window size of the TCP session of the switching source.
通信を行っている切替元のTransmission Control Protocol(TCP)セッションが所定の条件を満たすか否かを判定することと、
複数の候補中継ノードのうちから、前記切替元のTCPセッションに対応する前記通信を中継させる中継装置を決定することと、
前記切替元のTCPセッションが前記所定の条件を満たすと判定した場合に、決定した前記中継装置と、前記切替元のTCPセッションの前記送信元ノードおよび前記宛先ノードのそれぞれとの間で切替先のTCPセッションを確立し、前記切替先のTCPセッションにおいて前記切替元のTCPセッションに関連付けられた前記通信とは異なる事前通信の実行を指示することと、
前記事前通信を行った後に、前記切替元のTCPセッションから前記切替先のTCPセッションへ前記通信を切り替えることと、
を含むことを特徴とする通信制御方法。 A communication control method executed by a communication control device provided in a source node or a destination node , comprising:
Determining whether a Transmission Control Protocol (TCP) session of the switching source that is performing communication satisfies a predetermined condition;
determining a relay device that relays the communication corresponding to the switching source TCP session from among a plurality of candidate relay nodes;
when it is determined that the source TCP session satisfies the predetermined condition, establishing a destination TCP session between the determined relay device and each of the source node and the destination node of the source TCP session, and instructing execution of a pre -communication in the destination TCP session that is different from the communication associated with the source TCP session;
switching the communication from the source TCP session to the destination TCP session after performing the pre-communication;
A communication control method comprising:
前記送信ノードと前記受信ノードとの通信を行っている切替元のTransmission Control Protocol(TCP)セッションが所定の条件を満たすか否かを判定する判定手段と、
複数の候補中継ノードのうちから、前記切替元のTCPセッションに対応する前記通信を中継させる中継装置を決定する決定手段と、
前記切替元のTCPセッションが前記所定の条件を満たすと判定した場合に、前記決定手段で決定した前記中継装置と、前記送信ノードおよび前記受信ノードのそれぞれとの間で切替先のTCPセッションを確立し、前記切替先のTCPセッションにおいて、前記切替元のTCPセッションに関連付けられた前記通信とは異なる事前通信の実行を指示する指示手段と、
前記事前通信を行った後に、前記切替元のTCPセッションから前記切替先のTCPセッションへ前記通信を切り替える切替手段と、
を備えることを特徴とする通信システム。 A communication system including a transmitting node, a receiving node, and a relay node,
a determination means for determining whether a transmission control protocol (TCP) session of a switching source, which is communicating between the transmitting node and the receiving node, satisfies a predetermined condition;
a determining means for determining, from among a plurality of candidate relay nodes, a relay device that will relay the communication corresponding to the switching source TCP session;
an instruction means for establishing a switching destination TCP session between the relay device determined by the determination means and each of the transmitting node and the receiving node when it is determined that the switching source TCP session satisfies the predetermined condition, and for instructing execution of a pre-communication, which is different from the communication associated with the switching source TCP session, in the switching destination TCP session;
a switching means for switching the communication from the source TCP session to the destination TCP session after the preliminary communication is performed;
A communication system comprising:
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2022053602A JP7680392B2 (en) | 2022-03-29 | 2022-03-29 | COMMUNICATION CONTROL DEVICE, CONTROL METHOD, COMMUNICATION SYSTEM, AND PROGRAM |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2022053602A JP7680392B2 (en) | 2022-03-29 | 2022-03-29 | COMMUNICATION CONTROL DEVICE, CONTROL METHOD, COMMUNICATION SYSTEM, AND PROGRAM |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2023146423A JP2023146423A (en) | 2023-10-12 |
| JP7680392B2 true JP7680392B2 (en) | 2025-05-20 |
Family
ID=88286698
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2022053602A Active JP7680392B2 (en) | 2022-03-29 | 2022-03-29 | COMMUNICATION CONTROL DEVICE, CONTROL METHOD, COMMUNICATION SYSTEM, AND PROGRAM |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP7680392B2 (en) |
Families Citing this family (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| EP4138506A1 (en) * | 2021-08-19 | 2023-02-22 | Advanced Digital Broadcast S.A. | A method and a system for accessing a wireless channel in a dense environment |
Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2013121028A (en) | 2011-12-07 | 2013-06-17 | Nippon Telegr & Teleph Corp <Ntt> | Data packet transmission method and system |
| JP2014078895A (en) | 2012-10-11 | 2014-05-01 | Toshiba Corp | Server device and communication system |
| JP2016129274A (en) | 2015-01-09 | 2016-07-14 | 株式会社日立製作所 | Communication device, control method therefor and control program |
| JP2017139567A (en) | 2016-02-02 | 2017-08-10 | エヌ・ティ・ティ・コミュニケーションズ株式会社 | Terminal, relay device selection device, communication method, relay device selection method, and program |
-
2022
- 2022-03-29 JP JP2022053602A patent/JP7680392B2/en active Active
Patent Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2013121028A (en) | 2011-12-07 | 2013-06-17 | Nippon Telegr & Teleph Corp <Ntt> | Data packet transmission method and system |
| JP2014078895A (en) | 2012-10-11 | 2014-05-01 | Toshiba Corp | Server device and communication system |
| JP2016129274A (en) | 2015-01-09 | 2016-07-14 | 株式会社日立製作所 | Communication device, control method therefor and control program |
| JP2017139567A (en) | 2016-02-02 | 2017-08-10 | エヌ・ティ・ティ・コミュニケーションズ株式会社 | Terminal, relay device selection device, communication method, relay device selection method, and program |
Also Published As
| Publication number | Publication date |
|---|---|
| JP2023146423A (en) | 2023-10-12 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US7756032B2 (en) | Method and apparatus for communicating data within measurement traffic | |
| US10795745B2 (en) | Dynamic and adaptive approach for failure detection of node in a cluster | |
| EP3761591B1 (en) | Tcp link configuration method, apparatus, and computer program product | |
| US9641650B2 (en) | TCP proxy server | |
| KR101071035B1 (en) | Method for calculating a transmission window size | |
| US8705381B2 (en) | Communication embodiments and low latency path selection in a multi-topology network | |
| CN112217723A (en) | Method for establishing routing table, electronic equipment and network | |
| WO2017035763A1 (en) | Data packet transmission method utilized in ipv6 network and device utilizing same | |
| JP4708978B2 (en) | Communication system, communication terminal, session relay device, and communication protocol realizing high throughput | |
| US20220094680A1 (en) | Bi-directional forwarding detection authentication | |
| JP7680392B2 (en) | COMMUNICATION CONTROL DEVICE, CONTROL METHOD, COMMUNICATION SYSTEM, AND PROGRAM | |
| KR20200083582A (en) | Systems and methods for accelerating or decelerating data transmission network protocols based on real-time transmission network congestion conditions | |
| WO2017107148A1 (en) | Method of transmitting data and network equipment | |
| JPWO2008108144A1 (en) | Pseudo response frame communication system, pseudo response frame communication method, and pseudo response frame transmission apparatus | |
| WO2004040861A1 (en) | Communication system and method | |
| JP2010161616A (en) | Communication apparatus, communication system, communication method, program, and integrated circuit | |
| US9537764B2 (en) | Communication apparatus, control apparatus, communication system, communication method, method for controlling communication apparatus, and program | |
| CN108574615B (en) | Content transmission method, device and system based on multipath MPTCP | |
| KR102131427B1 (en) | Method and apparatus for performing a congestion control in stream control transmission protocol | |
| JP4884921B2 (en) | COMMUNICATION CONTROL DEVICE, RADIO COMMUNICATION DEVICE, COMMUNICATION CONTROL METHOD, AND RADIO COMMUNICATION METHOD | |
| JP5662779B2 (en) | Communication system and node device | |
| WO2018036613A1 (en) | A method, network node and system for controlling tethering | |
| WO2002033893A2 (en) | Method and apparatus for communicating data within measurement traffic | |
| JP2008053888A (en) | COMMUNICATION DEVICE, PROGRAM, INFORMATION STORAGE MEDIUM, AND COMMUNICATION CONTROL METHOD | |
| Tode et al. | A Novel Transport Protocol Suitable for Bufferless Optical Packet Switching Networks |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20240201 |
|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20241220 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20250106 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20250305 |
|
| 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: 20250414 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20250508 |
|
| R150 | Certificate of patent or registration of utility model |
Ref document number: 7680392 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |