JP5805575B2 - 中継装置、中継方法及び中継プログラム - Google Patents

中継装置、中継方法及び中継プログラム Download PDF

Info

Publication number
JP5805575B2
JP5805575B2 JP2012087234A JP2012087234A JP5805575B2 JP 5805575 B2 JP5805575 B2 JP 5805575B2 JP 2012087234 A JP2012087234 A JP 2012087234A JP 2012087234 A JP2012087234 A JP 2012087234A JP 5805575 B2 JP5805575 B2 JP 5805575B2
Authority
JP
Japan
Prior art keywords
terminal
network side
communication network
response
data
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.)
Expired - Fee Related
Application number
JP2012087234A
Other languages
English (en)
Other versions
JP2013219481A (ja
Inventor
貴広 濱田
貴広 濱田
五十嵐 弓将
弓将 五十嵐
藤崎 智宏
智宏 藤崎
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2012087234A priority Critical patent/JP5805575B2/ja
Publication of JP2013219481A publication Critical patent/JP2013219481A/ja
Application granted granted Critical
Publication of JP5805575B2 publication Critical patent/JP5805575B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)
  • Small-Scale Networks (AREA)

Description

本発明の実施形態は、中継装置、中継方法及び中継プログラムに関する。
一般に、インターネットプロトコルを用いたネットワーク(IP網)は、様々な物理的なネットワーク媒体の上に構築可能なように設計されている。この物理的なネットワーク媒体には、例えば、ケーブルや無線などがある。IP網を特定のネットワーク媒体の伝送方式に依存しない形態で構築可能とするために、物理的なネットワーク媒体は、「リンク層」と呼ばれる概念で抽象化されたインタフェースを介して上位のIP層から利用できるようにモデル化される。インターネットプロトコルのプロトコルモデルは、下位層にリンク層が位置づけられ、そのリンク層の上にIP層が位置付けられる概念で表される。
このようなIP網において、データは、IPパケットと呼ばれるデータの塊としてノード間を送受信される。所定のノードが大きなデータを送る場合には、必要に応じてデータは複数のIPパケットに分割されて送受信される。所定のネットワーク媒体上のIP網に接続された2つのノード間でIPパケットが送受信される場合、これらの2つのノード間は、概念的な「リンク」によって結ばれる。一般に、かかるリンクには、1つのIPパケット相当で送信することができるデータの塊の最大サイズが定められる。かかるデータの最大サイズは、ネットワーク媒体(リンク層)で用いる通信プロトコルのパラメータとして表現可能である。このようなリンクが許容可能なデータの最大サイズは、一般にMTU(Maximum Transfer Unit)値と呼ばれる。
ところで、複数のIP網は、ルータにより相互接続される。ルータはケーブルや無線など様々なネットワーク媒体のリンクを介して複数のIP網に接続し、IPパケットをIP網間で中継するノードの一種である。このようにルータによって相互接続されたIP網の集合体は、インターネットと呼ばれる。
ここで、所定のネットワーク媒体上に構築されたIP網に接続しているノードAが、別のネットワーク媒体上に構築されたIP網に接続しているノードBと通信する場合について検討する。例えば、ノードA及びBのそれぞれが接続する2つのIP網が同一の1つのルータに接続している場合には、かかるルータは、ノードAからノードB宛に送信されたIPパケットを中継することができる。また、ノードAが接続するIP網とノードBが接続するIP網の間に複数のルータと、かかる複数のルータ間を結ぶ複数のリンクが存在する場合にも、ノードAからノードBまでの経路上に存在する各ルータがIPパケットを中継することにより、ノードAとノードBとの間における通信が可能となる。
上記例において、ノードAからノードBへ到達する経路上にある複数のリンクには、それぞれのネットワーク媒体で用いる通信プロトコルに関係付けられたMTU値が定められている。そのため、ノードAからノードBへIPパケットを転送する場合、かかるIPパケットのサイズは、ノードAからノードBまでの経路上に存在する各リンクのMTU値のいずれも超えないことが求められる。すなわち、ノードAは、ノードBにIPパケットを送信する場合に、ノードAからノードBまでの経路を構成するリンク全体の中で、最も小さいMTU値以下のサイズでIPパケットを送信することが求められる。このような所定の経路上の全リンクにおける最小のMTU値は、その経路に対する「経路MTU値」と呼ばれる。
インターネットプロトコルでは、所定の宛先ノードへの経路MTU値を発見するための手順が経路MTU探索(Path MTU Discovery)として標準的に定められている。インターネットプロトコル・バージョン4(IPv4)における経路MTU探索はRFC(Request for Comments)1191に定義されており、インターネットプロトコル・バージョン6(IPv6)の経路MTU探索はRFC1981に定義されている。なお、RFC1981は、RFC1191から派生したものである。
IPv6の経路MTU探索における手順の概略を説明すると、IPパケットの送信元ノードは、かかるノード自身が接続しているネットワーク媒体(リンク)のMTU値を初期の経路MTU値と仮定してIPパケットを送信する。このIPパケットは、宛先ノードに届くまでに経路上のルータとリンクを経由する。このとき、経路の途中のあるリンクのMTU値がIPパケットのサイズよりも小さい場合、すなわちIPパケットのデータサイズがリンクのMTU値を超過した場合には、かかるリンクに接続するルータは、IPパケットを破棄し、送信元ノードに対してパケット過大メッセージ(Packet Too Big messages)を返送する。このようなパケット過大メッセージのフォーマットと通信手順については、RFC4443に定義されている。
パケット過大メッセージには、IPパケットのサイズが超過したMTU値であって、メッセージを送出するルータが接続しているリンクのMTU値が含まれる。パケット過大メッセージが送信元ノードまで転送されることにより、かかる送信元ノードは、宛先ノードまでの経路の途中に初期に仮定した経路MTU値よりも小さいMTU値が定められているリンクが存在することを識別できる。さらに、送信元ノードは、パケット過大メッセージに含まれるMTU値にIPパケットのサイズを変更して再送信することにより、少なくともパケット過大メッセージを返送したルータがかかるリンクを介して接続する次のノードまでIPパケットを到達させることができる。送信元ノードは、このような処理を繰り返すことにより、最終的には宛先ノードにIPパケットを到達させることができる。
RFC1981には、IPv6を使用するノードは経路MTU探索を実装すべきであると記載されているが、必須要件ではない。また、RFC1981には、経路MTU探索を実装しないノードはIPv6の到達保障されている最小MTU値を経路MTU値として用いると記載されている。一方、RFC2460のIPv6仕様では、IPv6を使用するノードは最小のMTU値を1280オクテット(Octets)とするように定められている。そのため、経路MTU探索を実装しないノードは常に経路MTU値を1280オクテットとしてIPパケットを送信することになる。
以上述べたような経路MTU探索の手順が存在する一方で、RFC4861には、ルータが、ルータ自身が接続しているリンクと同一リンクに接続するノード全てに対して、かかるリンクのMTU値を広告する仕組みが記載されている。RFC4861はIPv6の近隣発見プロトコル(Neighbor Discovery Protocol)に関する標準であり、あるノードが同一ネットワーク媒体(リンク)に接続している他ノード群を発見し、他ノードに関する情報を収集して通信可能にするための手順について定義したものである。
かかるRFC4861には、近隣発見プロトコルに関して、ルータがルータ自身の存在や通信設定に関する情報を同一リンクに接続しているノードに対して広告するためのルータ広告メッセージの仕様が定められており、そのメッセージのオプションとしてリンクのMTU値を含めることができると記載されている。ルータは、MTUオプションを用いることにより、同一リンクに接続する他ノードによって使用されることが推奨されるMTU値を指定することができる。したがって、ルータ広告メッセージのMTUオプションを使用した場合、同一リンクに接続している各ノード間においては、各ノードが経路MTU探索を行うことなく、ルータによって指定されたMTU値によりIPパケットを送信することが可能である。
なお、RFC4861には、近隣発見プロトコルを実施する際に、IPv6のノードに搭載されることが考えられる概念的な機能について記載されている。それらの機能のうち経路MTU探索に関するものとして、近隣キャッシュ(Neighbor Cache)と宛先キャッシュ(Destination Cache)がある。近隣キャッシュは、所定のノードが直接接続しているリンク毎に、かかるリンク上に接続している他ノードに関する情報を一時的に蓄えておくためのキャッシュである。宛先キャッシュは、所定のノードが最近通信した宛先ノードに関する情報を一時的に蓄えておくためのキャッシュである。RFC4861では、宛先キャッシュに宛先ごとの経路MTU値を含めることも可能であると記載されている。
また、RFC1191の経路MTU探索の仕組みを用いて発見した経路MTU値を宛先ノード毎にキャッシュしておき、その後に同一の宛先ノードへの通信が発生した際に、キャッシュ情報を用いることで、経路MTU探索を行うことなく宛先ノードまでIPパケットを到達させる技術については、一般に知られている。
特開2007−180686号公報 特開平11−168492号公報
J.Mogul et al, "Path MTU Discovery", Network Working Group, RFC1191, November 1990, [online],[平成23年11月7日検索]、インターネット<http://tools.ietf.org/html/rfc1191> J.McCann et al, "Path MTU Discovery for IP version 6", Network Working Group, RFC1981, August 1996, [online],[平成23年11月7日検索]、インターネット<http://tools.ietf.org/html/rfc1981> S.Deering et al, "Internet Protocol, Version 6 (IPv6) Specification", Network Working Group, RFC2460, December 1998, [online],[平成23年11月7日検索]、インターネット<http://tools.ietf.org/html/rfc2460> A.Conta et al, "Internet Control Message Protocol (ICMPv6) for the Internet Protocol Version 6 (IPv6) Specification", Network Working Group, RFC4443, March 2006, [online],[平成23年11月7日検索]、インターネット<http://tools.ietf.org/html/rfc4443> T.Narten et al, "Neighbor Discovery for IP version 6 (IPv6)", Network Working Group, RFC4861, September 2007, [online],[平成23年11月7日検索]、インターネット<http://tools.ietf.org/html/rfc4861>
しかしながら、上記の従来技術には、各ノードが適切な経路MTU値を用いて通信を行えない場合があった。具体的には、経路MTU探索において、ルータによって返送されるパケット過大メッセージは、送信元ノードに到達しない場合がある。例えば、ルータが経路MTU探索の仕組みを具備していない場合や、ルータと送信元ノードとの間における途中のルータが経路MTU探索の仕組みを具備していない場合や、ファイアフォール等の関係でパケット過大メッセージが途中のルータに到達しない場合などに、パケット過大メッセージは、送信元ノードに到達しない場合がある。このような場合には、送信元ノードは、宛先ノードに対する適切な経路MTU値を取得することができないので、適切な経路MTU値を用いて宛先ノードとの間で通信することができないという問題があり、MTUブラックホール問題、パスMTUブラックホール問題などと呼ばれている(以下、このような問題を「ブラックホール問題(またはBH問題)」という)。
なお、上記の通り、IPv6では、経路MTU探索では検知不能なパケット過大による通信不能を回避するために、送信元ノードが予めIPv6の最小MTU値である1280オクテットをデフォルトの経路MTU値として使用することも考えられる。しかし、全ての宛先ノードに対して最小MTU値である1280オクテットをデフォルトとして適用することは、実際には経路MTU値が1280オクテットよりも大きい宛先ノードに対しても1280オクテットであるIPパケットのサイズでデータを送信することになるので、通信効率が悪くなるという問題が発生する。
また、送信元ノードが、上記の宛先キャッシュを使用した場合には、既に通信が成功している宛先ノードに対して、経路MTU探索の仕組みを使うことなく適切な経路MTU値を選択することが可能になるとも考えられる。しかし、宛先キャッシュを用いた従来技術であっても、通信が成功するまでは各ノードが経路MTU探索を用いることになるので、パケット過大メッセージが送信元ノードに到達しないことで各ノードが適切な経路MTU(またはPath MTU、PMTU)値を用いて宛先ノードとの間で通信を行えないという問題を解消することができない。
また、送信元装置から通信を受けたLAN側の中継装置が、宛先装置と通信する前に、宛先装置に対して事前確認通信を試みて適当なPMTUを確認して、送信元端末にこのPMTUの値で通信させる技術がある。しかし、宛先毎に適当なPMTUを確認する処理などが必要であり、送信データサイズを変えて事前確認通信を繰り返すため、適当なPMTUを特定するまでに相当の時間を要し、通信効率が悪くなるという問題が発生する。
また、インターネット上のルータ間で、経路情報の交換とともに、ルータが把握している宛先となり得る宛先装置までのPMTU情報を交換して、宛先装置までの最適なPMTUを送信元装置に通知する技術がある。しかし、対処できるのは通知を受けた所定の宛先装置との通信のみであり、かつ、既存のインターネット上の各ルータの構成に手を加えなければならないという問題が発生する。
本願の開示する技術は、上記に鑑みてなされたものであって、適切に通信を行うことができる経路MTU値で、効率的に通信を行うことができる中継装置、中継方法及び中継プログラムを提供することを目的とする。
実施形態に係る中継装置は、広域通信網とローカル通信網との間で通信を中継する中継装置であって、前記ローカル通信網側の端末から前記広域通信網側の端末へのデータ送信に対する応答を監視する監視部と、前記監視部による監視に基づいて所定の時間以内に応答が返ってきたかを判定する判定部と、前記判定部によって所定の時間以内に応答がないと判定された場合には、予め記憶された1回に転送可能なデータ容量であって前記データ送信時のデータ容量よりも小さいデータ容量である転送可能容量を指示するメッセージを生成し、該メッセージを前記ローカル通信網側の端末に通知する通知部とを有することを特徴とする中継装置。
実施形態に係る中継装置、中継方法及び中継プログラムは、適切に通信を行うことができる経路MTU値で、効率的に通信を行うことができるという効果を奏する。
図1は、第一の実施の形態に係るネットワークシステムの構成例を示す図である。 図2は、第一の実施の形態に係るゲートウェイの構成例を示す図である。 図3は、第一の実施の形態における記憶部に記憶されたデータの一例を示す図である。 図4は、第一の実施の形態における記憶部に記憶されたデータの一例を示す図である。 図5は、第一の実施の形態における記憶部に記憶されたデータの一例を示す図である。 図6は、第一の実施の形態に係るネットワークシステムによる処理手順を示すシーケンス図である。 図7は、第一の実施の形態に係るゲートウェイによる処理手順を示すフローチャートである。 図8は、第一の実施の形態に係るゲートウェイによる処理手順を示すフローチャートである。 図9は、第二の実施の形態に係るゲートウェイの構成例を示す図である。 図10は、第二の実施の形態における記憶部に記憶されたデータの一例を示す図である。 図11は、第二の実施の形態における記憶部に記憶されたデータの一例を示す図である。 図12は、第二の実施の形態に係るネットワークシステムによる処理手順を示すシーケンス図である。 図13は、第二の実施の形態に係るゲートウェイによる処理手順を示すフローチャートである。 図14は、第三の実施の形態に係るネットワークシステムによる処理手順を示すシーケンス図である。 図15は、第三の実施の形態に係るゲートウェイによる処理手順を示すフローチャートである。 図16は、その他のゲートウェイによる処理手順を示すフローチャートである。 図17は、中継プログラムを実行するコンピュータを示す図である。
以下に、本願に係る中継装置、中継方法及び中継プログラムの実施例を図面に基づいて詳細に説明する。なお、この実施例により本願に係る中継装置、中継方法及び中継プログラムが限定されるものではない。
[第一の実施の形態に係るネットワークシステムの構成]
まず、図1を用いて、第一の実施の形態に係るネットワークシステムについて説明する。図1は、第一の実施の形態に係るネットワークシステムの構成例を示す図である。
図1に例示するように、第一の実施の形態に係るネットワークシステム100には、端末20A、20B等を含むLAN(Local Area Network)40と、端末20Cやルータ30を含むWAN(Wide Area Network)50とが存在し、LAN40とWAN50との間には通信を中継するゲートウェイ10が存在する。なお、以下の説明では、イーサネット(登録商標)上のIPv6通信を前提とするが、本発明はこれに限定されるものではない。また、レイヤ3は例えばIPv4でもよく、レイヤ2はイーサネットに限るものではない。
ゲートウェイ10は、LAN側の端末20A、20BをWAN側の端末30と通信可能な状態にするために、LAN40およびWAN50に接続される自宅に備えられたホームゲートウェイ等である。また、ゲートウェイ10は、LAN側の端末20A、20Bによって送信されたIPパケットを中継する中継装置である。
LAN側の端末20A、20Bは、ゲートウェイ10に接続され、ゲートウェイ10経由でインターネット上のまたは、インターネット経由でアクセス可能な端末20Cに対して、IPv6通信を行うものとする。ルータ30は、ゲートウェイ10、端末20Cによって送信されるIPパケットを中継する中継装置である。なお、図1では、3台の端末と1台のルータ、1台のゲートウェイを例示したが、ネットワークシステム100には、2台以下の端末や、4台以上の端末や、2台以上のルータやゲートウェイが含まれてもよい。また、端末、ルータ及びゲートウェイの接続関係は、図1に示した例に限られない。
[ゲートウェイの構成]
次に、図2を用いて、図1に示したゲートウェイ10の構成を説明する。図2は、第一の実施の形態に係るゲートウェイの構成例を示す図である。図2に示すように、ゲートウェイ10は、通信部11、通信部12、記憶部13、疎通監視部14、PMTU通知判定部15、および、PMTU通知部16を有し、LAN側の端末20Aと接続される。以下にこれらの各部の処理を説明する。
通信部11および通信部12は、接続される端末およびルータとの間でやり取りする各種情報に関する通信を制御する。例えば、通信部11は、LAN側の端末20AからWAN側の端末20Cに対するIPパケットを受信し、LAN側の端末20AへPMTU値を送信する。また、例えば、通信部12は、LAN側の端末20AからWAN側の端末20CへのIPパケットを送信する。
記憶部13は、各種処理に必要なデータおよびプログラムを格納するが、特に本発明に密接に関連するものとしては、後述する疎通監視部14が使用する監視時間(図3)、後述するPMTU通知部16がLAN側端末20Aに通知するPMTUの値(図4)、LAN側の端末のアドレスに関する情報(図5)などを記憶する。
例えば、記憶部13は、図3に例示するように、疎通監視部14が使用する監視時間として、「60」秒を記憶している。この監視時間は、全通信プロトコル共通の「60」秒として設定されているが、通信プロトコル毎に設定されていてもよく、通信プロトコルとポート番号の組毎に設定されてもよい。設定された監視時間に応じて、疎通監視部14がパケットの中身を確認して応答待ちの監視時間を特定する。また、上記した監視時間は、通信するアプリケーションのタイムアウト時間よりも短い方が望ましい。
また、記憶部13は、図4に例示するように、PMTU通知部16がLAN側端末20Aに通知するPMTUの値として、LAN側端末PMTU値「1280」byteを記憶する。このLAN側端末PMTU値については、標準仕様などで保障される最低値(イーサネット上でのIPv6の場合は1280byte)であることが望ましい。また、LAN側端末PMTU値は、宛先毎、宛先アドレス範囲毎、WAN側全宛先に対して記憶してもよい。
また、記憶部13は、図5に例示するように、LAN側の端末のアドレスに関する情報として、LAN側の機器「端末A」のMACアドレス「AA:BB:CC:DD:EE:FF」とIPアドレス「fe80::1001」(またはグローバルユニキャストアドレス)とを対応付けて記憶する。なお、記憶部13は、IPv4であればLAN側に割当てることができるプライベートアドレス帯、割当てたアドレスなどを記憶し、IPv6であればLAN側に割当てられたプレフィックスやユニキャストアドレスなどを記憶する。
疎通監視部14は、LAN側の端末20AからWAN側の端末20Cへのパケット送信に対する応答が返ってくる応答時間を監視する。具体的には、疎通監視部14は、LAN内通信は監視対象とせず、LAN側からWAN側への通信のみを監視対象とし、どのLAN側アドレスからどのWAN側アドレスへパケット送信が開始されたのかを監視し、通信開始を検知した時点から時間を計測しつつ、一時記憶する。そして、疎通監視部14は、記憶部13に記憶された監視時間(図3参照)内に宛先から応答があった場合は監視対象から除く、すなわち一時記憶から計測時間を削除する。なお、WAN側の経路の途中の通信機器からのエラーメッセージなどを受けた場合もブラックホール問題とは別の問題となるため、監視対象から除くこととしてもよい。
PMTU通知判定部15は、疎通監視部14によって所定時間内に応答を受けたか否かを判定する。具体的には、PMTU通知判定部15は、疎通監視部14が監視を行った結果、監視時間を経過しても応答がなかった通信を要処理、すなわち、LAN側端末20AのPMTU値を再設定する処理が必要であると判断する。
PMTU通知部16は、PMTU通知判定部の判断結果に基づいて、記憶部13が記憶しているPMTUの値をWAN側へ通信開始した送信元端末20Aに通知する。例えば、PMTU通知部16は、LAN側端末からWAN側端末へのパケット送信に対する、ICMPv6(Internet Control Message Protocol for IPv6)メッセージのパケット過大(Packet Too Big)メッセージによる応答を生成して、この応答にPMTUの値を含めてもよい。
このパケット過大メッセージの中で、その宛先に対して最小のPMTUの値(例えば、1280byte)を指定する。さらに、全WAN側宛先に対して最小のPMTUが設定されるよう通知してもよい。また、通知先は、WAN側へ通信開始した送信元端末だけではなく、LAN側全端末としてもよく、RA(Router Advertisement)メッセージで新たなオプションを定義したメッセージでPMTUの値を各端末に通知してもよい。なお、通知する契機や条件等は記憶部13に記憶されているものとする。
また、図2に示すように、端末20Aは、通信部21およびPMTU設定部22を有する。通信部21は、接続されるゲートウェイ10等との間でやり取りする各種情報に関する通信を制御する。例えば、通信部21は、ゲートウェイ10からPMTUの値が設定されたパケット過大メッセージを受信する。
PMTU設定部22は、ゲートウェイ10から受信したPMTUの値に基づき、該PMTUの単位でWAN側の端末10Cへパケット送信するように設定する。具体的には、ゲートウェイ10から受信したパケット過大メッセージからPMTUの値を抽出し、所定のアドレス(当初の宛先など)または、アドレス範囲(LAN側以外、つまりWAN側の全宛先等)に対して所定のPMTUの値を設定する。
[ネットワークシステムによる処理手順]
次に、図6を用いて、第一の実施の形態に係るネットワークシステム100による処理の流れについて説明する。図6は、第一の実施の形態に係るネットワークシステム100による処理手順を示すシーケンス図である。なお、図6では、ネットワークシステム100には、ゲートウェイ10と、LAN側の端末20A、20B、WAN側の端末20C及びルータ30とが含まれるものとする。また、図6では、ルータ30(ブラックホールルータ)が原因でブラックホール問題が起きているものとする。
図6の例において、ゲートウェイ10は、LAN側のネットワークのMTUについて、端末20Aと接続しているゲートウェイ10のLAN側のインタフェースのリンクMTUの値を予め記憶しており、この値をRA(Router Advertisement)のMTUオプションを利用して、LAN側の端末20AにリンクMTUとして通知する。なお、端末からRS(Router Solicitation)を受けたことを契機にRAを通知してもよい。または、端末20Aが自らリンクMTUを設定するものであってもよい。
そして、端末20Aは、リンクMTUの値を自端末の通信インタフェースのリンクMTUとして設定する。なお、LAN側端末間のデフォルトのリンクMTUが調整されている場合には、上記のリンクMTUを設定する処理は不要である。
その後、端末20Aは、設定したリンクMTUで、WAN側の端末20Cに対して通信を開始する。そして、ゲートウェイ10は、端末20Aと端末20Cとの間でパケットを中継しつつ通信を監視し、パケットの疎通確認を行う。具体的には、ゲートウェイ10は、LAN側からWAN側への通信開始を検知して、送信元と宛先のアドレスの組を一時記憶し、宛先から監視時間内に応答を受けるか否かを監視する。この結果、監視時間内に応答を受けた場合は、一時記憶した情報を削除する。
一方、ゲートウェイ10は、監視時間内に応答を受けなかった場合には、宛先到達不能と判断、すなわちブラックホール問題に遭ったと判断し、予め記憶しているLAN側端末PMTU値(図4の例では、1280byte)をLAN側の端末20Aへ通知する。例えばゲートウェイ10は、RFC4443で定義されているICMPv6のtype=2のパケット過大メッセージを生成して、端末20Aへ送信する。そして、通知を受けた端末20Aは、宛先に対するPMTUとして通知された値を設定して再度端末20Cと通信を行う。
[ゲートウェイによる処理手順]
次に、図7および図8を用いて、第一の実施の形態に係るゲートウェイ10による処理の手順について説明する。図7および図8は、第一の実施の形態に係るゲートウェイによる処理手順を示すフローチャートである。
図7に示すように、ゲートウェイ10の通信部11は、LAN側の端末からパケットを受信すると(ステップS101)、宛先がWAN側の端末であるか否かを判定する(ステップS102)。例えば、通信部11は、記憶部13に記憶されたLAN側の端末のアドレスに関する情報(図5参照)を参照し、宛先アドレスがLAN側の端末のアドレスに該当するか否かを判定することで、宛先がWAN側の端末であるか否かを判定する。なお、この判定は、完全一致の判定でもよく、部分一致の判定でもよい。または、ゲートウェイ10がスイッチの機能を有する場合は、宛先のMACアドレスに基づいて判定してもよい。
この結果、通信部11は、宛先がWAN側の端末でない場合(ステップS102否定)、すなわち宛先がLAN内の端末であると判定した場合には、そのまま宛先へパケットを転送し(ステップS103)、処理を終了する。また、宛先がWAN側の端末である場合には(ステップS102肯定)、WAN側端末の宛先へパケットを転送し(ステップS104)、PMTU通知判定部15は、ブラックホール問題に遭遇したか否かを判定する判定処理(後に図8を用いて詳述)を実行する(ステップS105)。
この結果、PMTU通知判定部15がブラックホール問題に遭遇していないと判定した場合には(ステップS105否定)、そのまま処理を終了する。また、PMTU通知判定部15がブラックホール問題に遭遇したと判定した場合には(ステップS105肯定)、予め記憶しているPMTUを送信元端末へ通知し(ステップS106)、処理を終了する。その後、通知を受けた送信元端末は、宛先に対するPMTUとして通知された値を設定して再度送信先端末と通信を行う。
次に、図8を用いて、ステップS105の判定処理について詳しく説明する。図8に示すように、ゲートウェイ10の疎通監視部14は、送信元と宛先のアドレスの組を一時記憶する(ステップS201)。そして、PMTU通知判定部15は、監視時間(例えば、60秒)以内に宛先から送信元宛の応答があるか否かを判定する(ステップS202)。
この結果、PMTU通知判定部15が監視時間内に宛先から送信元宛の応答があると判定した場合には(ステップS202肯定)、ブラックホール問題に遭遇していないものと判断して、疎通監視部14は、送信元と宛先のアドレスの組の一時記憶を削除し(ステップS203)、処理を終了する。また、PMTU通知判定部15は、監視時間内に宛先から送信元宛の応答がないと判定した場合には(ステップS202否定)、ブラックホール問題であると判断し(ステップS204)、処理を終了する。
[第一の実施の形態の効果]
上述してきたように、ゲートウェイ10は、LAN側の端末20AからWAN側の端末20Cへのパケット送信に対する応答が返ってくる応答時間を監視し、監視された応答時間が所定の時間以内であるか否かを判定し、応答が所定の時間以内にないと判定された場合には、1回に転送可能なデータ容量であるPMTUの値をLAN側の端末20Aに通知する。そして、LAN側の端末10Aは、ゲートウェイ10から受信したPMTUの値に基づき、該PMTUでWAN側の端末20Cへパケット送信するように設定する。これにより、最適なPMTUによる通信と比較すると通信効率は劣る場合があるが、WAN側の通信機器に手を入れることなく、ブラックホール問題を回避できる。また、全ての通信に対して宛先までの経路の適当なPMTUを事前調査するものではない点において、宛先装置との通信が実際に開始されるまで遅れを低減できる。この結果、適切に通信を行うことができるMTUの値で、効率的に通信を行うことが可能である。
また、第一の実施の形態によれば、LAN内で端末20Aと端末20Bとの間で通信する場合には、通信インタフェースのリンクMTUの値のままで通信できる状態を維持しつつ、WAN側の端末と通信する場合は、ブラックホール問題を回避するMTUの値で通信することができる。
また、第一の実施の形態によれば、IPv4で通信する場合に、パケット内にフラグメント処理を禁止するビットが設定されている場合は、IPv6の通信と同様に有効である。IPv4でフラグメントを禁止していない場合、通信のMTUが過大である場合は経路上の各ルータが適宜フラグメント処理をするが、ファイアウォール等によっては、フラグメント化されたパケットは受け取らないように設定されていることもある。また、そうでない場合も、フラグメント処理はルータにかかる負荷が大きくなるため通信効率に影響する。本発明によれば、IPv4通信でも有効な場合がある。
また、第一の実施の形態によれば、LAN内の端末を含む通信機器の通信インタフェースにイーサネットのジャンボ・フレームが適用されている場合には、ジャンボ・フレームの仕様によるが、例えば8000〜150000byte程度のフレームサイズで通信することが可能となる(イーサネットのMTUは1500byte)。この場合、MTUの値も大きく通信効率が良くなる。
(第二の実施の形態)
ところで、上記の第一の実施の形態では、監視時間内に宛先から送信元宛の応答がないか判定し、応答がないと判定した場合にはブラックホール問題に遭遇していると判断する場合を説明したが、本発明はこれに限定されるものではなく、PMTUの値が原因で通信ができないことを確認するための処理を行うようにしてもよい。
そこで、以下の第二の実施の形態では、PMTUの値が原因で通信ができないことを確認するために、監視時間内に応答が無い場合には、同じ宛先に小サイズ(例えば、PMTUの最小値)のパケットを送信し、所定時間内に応答があるか否かを判定し、所定時間内に応答がある場合には、ブラックホール問題に遭遇していると判断する。以下では、図10〜図13を用いて、第二の実施の形態に係るゲートウェイ10Aの構成および処理について説明する。なお、以下の説明では、第一の実施の形態と共通する構成及び処理については説明を省略する。
図10に示すように、第二の実施の形態に係るゲートウェイ10Aは、疎通確認部17を新たに有する点が、図2に示した第一の実施の形態に係るゲートウェイ10と相違する。また、ゲートウェイ10Aの記憶部13は、疎通確認部17が使用する疎通確認時間と、疎通確認部17が使用する疎通確認時のパケットのサイズとを記憶する点が、図2に示した第一の実施の形態に係るゲートウェイ10と相違する。
例えば、記憶部13は、図10に例示するように、疎通確認部17が使用する疎通確認時間として、「4」秒を記憶する。なお、疎通確認部17が使用する疎通確認時間としては、ICMPv6のPing等でも用いられる短い時間でもよい。
また、記憶部13は、図11に例示するように、疎通確認部17が使用する疎通確認時のパケットのサイズとして、「1280」byteを記憶する。なお、疎通確認部17が使用する疎通確認時のパケットのサイズは、PMTU通知部16がLAN側の端末20Aに通知するPMTUの値と同じであることが望ましい。
疎通確認部17は、PMTU通知判定部15によって応答が所定の時間以内にないと判定された場合には、LAN側の端末20AからWAN側の端末20Cへのパケット送信時よりも小さいサイズのパケットをWAN側の端末20Cへ送信し、疎通確認時間以内に該送信に対する応答があったか否かを確認する。疎通確認部17は、疎通確認のために送信する小さいサイズのパケットとして、例えば、端末20Aに通知する予定のPMTUのサイズでもよく、より小さいサイズ、例えばイーサネットであれば保障されているMTUの最小値でもよい。
つまり、第一の実施形態では、端末20Aからの通信に対して、宛先から所定時間内に応答がないことでブラックホール問題に遭遇したものと判断したが、例えば、宛先端末がダウンしている等、ブラックホール問題とは別の原因で疎通が取れないこともあり得る。そこで、第二の実施形態では、疎通確認部17が、さらに、通信に用いたPMTUの値が原因で疎通が取れていないことを確認するため、小さいサイズのパケットを送信して疎通を確認する。これにより、ブラックホール問題が原因で応答が返ってこないのか否かを適切に判断することが可能である。
次に、図12を用いて、第二の実施の形態に係るネットワークシステムによる処理の流れについて説明する。図12は、第二の実施の形態に係るネットワークシステムによる処理手順を示すシーケンス図である。図12に示すように、端末20Aは、リンクMTUで、WAN側の端末20Cに対して通信を開始する。そして、ゲートウェイ10は、端末20Aと端末20Cとの間でパケットを中継しつつ通信を監視し、パケットの疎通確認を行う。
そして、ゲートウェイ10は、疎通監視の結果、所定時間内に応答がなかった場合には、同じ宛先に小サイズのパケットによる通信(IPv6であればICMPv6のpingなど)を行い、疎通確認時間内(例えば、WANとの通信のRound Trip Timeを適宜計測しておく等して、さらには統計処理等をして算出した時間を利用してもよい)に宛先から応答があった場合はブラックホール問題によるものと判断し、要処理と判断する。
一方、応答がない場合は別の原因によるものであるため、端末20AにPMTUの通知はしない。この場合、代わりに別の原因により不通となっている趣旨のメッセージを端末20Aへ通知してもよい。なお、この疎通確認は最適なPMTUを特定しようとするものではなく、IPパケットが宛先に到達可能であることを確認するものであり、短時間で応答の有無を確認できるものである。
そして、ゲートウェイ10は、ブラックホール問題によるものと判断した場合には、予め記憶しているLAN側端末PMTU値(図4の例では、1280byte)をLAN側の端末20Aへ通知する。そして、通知を受けた端末20Aは、宛先に対するPMTUとして通知された値を設定する。
次に、図13を用いて、第二の実施の形態に係るゲートウェイ10Aによる判定処理の処理手順について説明する。図13は、第二の実施の形態に係るゲートウェイによる処理手順を示すフローチャートである。
図13に示すように、ゲートウェイ10Aの疎通監視部14は、送信元と宛先のアドレスの組を一時記憶する(ステップS301)。そして、PMTU通知判定部15は、監視時間(例えば、60秒)以内に宛先から送信元宛の応答があるか否かを判定する(ステップS302)。
この結果、PMTU通知判定部15が監視時間内に宛先から送信元宛の応答があると判定した場合には(ステップS302肯定)、ブラックホール問題に遭遇していないものと判断して、疎通監視部14は、送信元と宛先のアドレスの組の一時記憶を削除し(ステップS303)、処理を終了する。
また、PMTU通知判定部15が監視時間時間内に宛先から送信元宛の応答がないと判定した場合には(ステップS302否定)、疎通確認部17は、宛先であるWAN側の端末へより小サイズのパケット送信(IPv6であればICMPv6のpingなど)を行い(ステップS304)、所定時間内に応答があるか否かを判定する(ステップS305)。
この結果、疎通確認部17は、所定時間内に応答がないと判定した場合には(ステップS305否定)、ブラックホール問題とは別の問題であると判断して(ステップS306)、処理を終了する。また、疎通確認部17は、所定時間内に応答があったと判定した場合には(ステップS305肯定)、ブラックホール問題であると判断し(ステップS307)、処理を終了する。
このように第二の実施の形態によれば、ゲートウェイ10Aは、応答が監視のための所定の時間以内にないと判定された場合には、LAN側の端末からWAN側の端末へのパケット送信時よりも小さいデータ容量のパケットをWAN側の端末へ送信し、該送信に対する応答が所定の時間以内にあるか否かを確認する。そして、ゲートウェイ10Aは、応答が疎通確認のための所定の時間以内あると確認された場合には、PMTUの値をLAN側の端末に通知する。このため、これにより、ブラックホール問題が原因で応答が返ってこないのか否かを適切に判断することが可能となる。
(第三の実施の形態)
ところで、本発明では、ゲートウェイが、WAN側の端末における宛先情報と、該WAN側の端末とデータ通信を行う際のPMTUとを対応付けて記憶するようにしてもよい。
そこで、以下の第三の実施の形態の説明では、ゲートウェイが、WAN側の宛先のアドレスもしくはアドレス範囲(WAN側全体宛を示す範囲でもよい)と、その宛先に適用するPMTUの組を管理する管理テーブルを記憶する場合について説明する。以下では、図14〜図16を用いて、第三の実施の形態に係るゲートウェイの処理について説明する。
まず、図14を用いて、第三の実施の形態に係るネットワークシステムによる処理の流れについて説明する。図14は、第三の実施の形態に係るネットワークシステムによる処理手順を示すシーケンス図である。図14に例示するように、ゲートウェイ10は、宛先のアドレスと、その宛先に適用するPMTUとが対応付けられた管理テーブルを記憶する。なお、図14の例では、処理が開始される前の状態において、管理テーブルには、未だ何も記憶されていない初期状態であるものとする。
図14に示すように、端末20Aは、リンクMTU(例えば、1500byte)で、WAN側の端末20Cに対して通信を開始する。そして、ゲートウェイ10は、LAN側端末からWAN側端末宛への通信を受けると、その通信のパケットの宛先とMTUを特定し、管理テーブル内の宛先と照合する。なお、この照合は、完全一致の照合でもよく、部分一致の照合でもよい。
ゲートウェイ10は、照合した結果、該当する宛先がなければ、そのままWAN側端末宛へパケットを転送する。一方、ゲートウェイ10は、照合した結果、該当する宛先であれば、パケットのMTUがその宛先に対応づけて記憶されているPMTUの値より大きい場合(または異なる場合には)、宛先へ転送せずに、管理テーブル内のその宛先に対応するPMTUの情報を用いて、ICMPv6メッセージを生成して送信元の端末へ返す。なお、このメッセージは、通常のPMTU探索が機能した場合に送信元の端末が受けるICMPv6のパケット過大メッセージの仕様と同じものであり、通常であれば適切なPMTUの値が含まれるメッセージであるが、本発明は、このPMTU探索が機能せず、このメッセージが返ってこないことを考慮しているため、ゲートウェイ10が生成するこのメッセージに含めるPMTUの値は、管理テーブル内の該当する宛先に対応するPMTUの値を埋め込んだものである。
図14の例では、管理テーブルには、未だ何も記憶されていない初期状態であるため、ゲートウェイ10は、照合した結果、該当する宛先がないものとし、そのままWAN側端末20C宛へパケットを転送し、端末20Aと端末20Cとの間でパケットを中継しつつ通信を監視し、パケットの疎通確認を行う。
そして、ゲートウェイ10は、疎通監視の結果、所定時間内に応答がなかった場合には、同じ宛先に小サイズのパケットのデータ通信を行い、疎通確認時間内に宛先から応答があった場合はブラックホール問題によるものと判断し、端末20AにPMTUの通知を行うとともに、管理テーブルに反映する。つまり、ゲートウェイ10は、端末Cの宛先と、到達保証されているPMTUの値(例えば、疎通確認において端末20Cに到達した際のPMTUの値)を対応付けて記憶部13に記憶させる。
その後、通知を受けた端末20Aは、宛先に対するPMTUとして通知された値を設定し、設定されたPMTUの値でWAN側の端末20Cに再度送信する。
次に、図15を用いて、第三の実施の形態に係るゲートウェイによる処理手順について説明する。図15は、第三の実施の形態に係るゲートウェイによる処理手順を示すフローチャートである。
図15に示すように、ゲートウェイ10の通信部11は、LAN側の端末からパケットを受信すると(ステップS401)、宛先がWAN側の端末であるか否かを判定する(ステップS402)。
この結果、通信部11は、宛先がWAN側の端末でない場合(ステップS402否定)、すなわち宛先がLAN内の端末であると判定した場合には、そのまま宛先へパケットを転送し(ステップS403)、処理を終了する。また、宛先がWAN側の端末である場合には(ステップS402肯定)、疎通監視部14は、パケットの宛先が管理テーブル内の宛先情報に該当するものがあるか照合する(ステップS404)。
この結果、疎通監視部14は、LAN側の端末から受信したパケットが管理テーブルに記憶されている宛先情報に該当するパケットである場合には(ステップS405肯定)、宛先情報に対応付けて記憶されたPMTU以下のパケットであるか判定する(ステップS409)。この結果、疎通監視部14がPMTU以下のパケットであると判定した場合には(ステップS409肯定)、通信部12は、WAN側の端末へパケットを転送して(ステップS410)、処理を終了する。また、疎通監視部14がPMTU以下のパケットでないと判定した場合には(ステップS409否定)、予め記憶しているPMTUを送信元端末へ通知し(ステップS411)、処理を終了する。
また、ステップS405の説明に戻って、疎通監視部14は、LAN側の端末から受信したパケットが管理テーブルに記憶されている宛先情報に該当するパケットでない場合には(ステップS405否定)、WAN側端末の宛先へパケットを転送し(ステップS406)、PMTU通知判定部15は、ブラックホール問題に遭遇したか否かを判定する判定処理(例えば、前述した図8、図13の判定処理)を実行する(ステップS407)。
この結果、PMTU通知判定部15がブラックホール問題に遭遇していないと判定した場合には(ステップS407否定)、そのまま処理を終了する。または、送信元端末にこの旨を通知する。また、PMTU通知判定部15がブラックホール問題に遭遇したと判定した場合には(ステップS407肯定)、管理テーブルに宛先を追記し、PMTUと合わせて記憶させるとともに(ステップS408)、予め記憶しているPMTU(つまり宛先と対応付けて記憶させたPMTU)を送信元端末へ通知し(ステップS411)、処理を終了する。その後、通知を受けた送信元端末は、宛先に対するPMTUとして通知された値を設定して再度送信先端末と通信を行う。
つまり、ゲートウェイ10は、WAN側宛先と到達可能なPMTUとを対応付けて管理テーブルに記憶していることで、LAN側端末が宛先までのPMTUを記憶していない場合であっても、ゲートウェイとの間の一往復の通信で、ゲートウェイが生成するパケット過大メッセージを受けることで宛先へ到達可能なPMTUを取得でき、そのPMTUで宛先と通信を行うことができる。
このように第三の実施の形態によれば、ゲートウェイ10は、WAN側の端末における宛先情報と、該WAN側の端末とデータ通信を行う際のPMTU値とを対応付けて記憶する。そして、ゲートウェイは、LAN側の端末からWAN側の端末へのデータ通信が行われる際に、該WAN側の端末の宛先情報に該当する宛先情報が記憶部に記憶されている場合には、該宛先情報に対応付けて記憶されているPMTU値よりもデータ通信におけるPMTU値が大きいか否かを監視する。そして、宛先情報に対応付けて記憶されているPMTU値よりもデータ通信におけるPMTU値が大きい場合には、WAN側の端末へのデータ通信を中止し、つまり、ゲートウェイ10は通信の宛先であるWAN側の端末へ転送せずに、宛先情報に対応付けて記憶されているPMTU値をLAN側の端末にパケット過大メッセージなどによって通知する。つまり、LAN側の所定の端末によるWAN側との通信の経験で得たPMTU値をゲートウェイ10が管理テーブルに記憶することで、その宛先に初めてパケットを送る別の端末に管理テーブルに記憶されたPMTU値を適用させることができる。このため、管理テーブルに記憶されたPMTU値を用いて、適切に通信を行うことができるPMTU値で、より効率的に通信を行うことがすることが可能となる。このように管理テーブルの情報をLAN側の全端末で共有してもよいし、端末毎に管理テーブルを保持する構成であってもよい。また、WAN側のすべての宛先に対して同一のPMTU値を適用する場合は、管理テーブルに宛先情報とPMTU値を対応付けて記憶させることは必須ではなく、宛先情報と適用するPMTU値を分けて管理してもよい。
また、本発明では、所定の時間以内に異なる宛先に対してブラックホール問題が発生した回数が所定の回数以上となった場合には、WAN側の全ての端末について、所定値(例えば、最小MTU値)を取るように管理テーブルに設定するようにしてもよい。
このような処理について、図16を用いて、ゲートウェイによる判定処理の処理手順について説明する。図16に示すように、ゲートウェイによる判定処理は、図13に示した判定処理と比較して、ブラックホール問題と判断された後に(ステップS507)、所定の時間内に、ブラックホール問題と判断した回数が閾値を超えたか否かを判定する処理(ステップS508)が新しく追加されている。
この処理の結果、ブラックホール問題と判断をした回数が閾値を超えた場合には、WAN側全端末に対するPMTUの値として所定値(例えば、最小MTU値)を取るように管理テーブルに設定する(ステップS509)。
すなわち、一定期間内に異なる宛先に対して複数回ブラックホール問題が発生したということは、つまり、ゲートウェイ10のすぐ外の経路に問題があり、ゲートウェイ10の接続先にそもそもの問題があるものとみなして、WAN側への任意の通信については、ブラックホール問題を回避できる所定のPMTU値を一律に適用する。このように、上記の処理では、所定の時間内にブラックホール問題と判断をした回数が所定の回数以上となった場合には、WAN側の全ての端末について、最小のMTUを対応付けて記憶し、LAN側の端末に通知する。このため、ブラックホール問題を確実に回避することが可能である。
このように、ゲートウェイ10がWAN側宛先と到達可能なPMTU値とを対応付けて管理テーブルに記憶していることで、LAN側端末が宛先までのPMTU値を記憶していない場合であっても、ゲートウェイ10との間の一往復の通信で、ゲートウェイ10が生成するパケット過大メッセージを受けることで宛先へ到達可能なPMTU値を取得でき、そのPMTU値で宛先と通信を行うことができる。
ここで、WAN側全宛先のPMTU値を一定値とするパターンについて、ゲートウェイ10のLAN側の通信インタフェースのリンクMTU値を絞らず(例えば、リンクMTU値=1500byte)にWAN側の通信インタフェースのリンクMTU値を絞った(例えば、リンクMTU値=1280byte)場合は、上記した第三の実施の形態の構成を採らなくてもゲートウェイ10よりWAN側に転送される前にPMTU探索によりPMTU値(例えば、PMTU値=1280byte)がLAN側の送信元に通知されるが、WAN側の通信インタフェースのリンクMTU値を絞った場合と第三の実施の形態の構成との差分について説明する。
ゲートウェイ10のLAN側に公開サーバなどを設置してWAN側から公開サーバにアクセスがあるような環境では、WAN側からこの公開サーバへの通信を受けたとき、この通信におけるMTU値が1500byteによるものである場合には、ゲートウェイ10のWAN側のリンクMTUを絞った状態(例えば、リンクMTU値=1280byte)であるため、ゲートウェイ10はその通信がWAN側のリンクMTUに調整するようにPMTU探索に基づいて、WAN側の送信元にPMTUとして「1280byte」を返すことになり、WAN側の送信元からゲートウェイ10の直前まではMTU値が1500byteで通信できるパスであってもMTU値が1280byteで通信させることになり非効率である。一方、上記の第三の実施の形態の構成では、ゲートウェイ10のWAN側のリンクMTUを絞る必要がないので、このような環境でも有効に機能する。
(第四の実施の形態)
ところで、本発明では、所定の宛先だけでなく、所定のアドレス範囲(例えばWAN側前宛先)に対して適用するPMTUの通知を行ってもよい。
そこで、以下の第四の実施の形態の説明では、所定のアドレス範囲(例えばWAN側前宛先)に対して適用するPMTUの通知を行う場合について説明する。ここで、所定のアドレス範囲(例えばWAN側全宛先)に対して適用するPMTUの通知を行う場合には、通知するゲートウェイと通知を受けるLAN側端末との間で利用される新たなメッセージを定義する必要がある。ここでは2つのメッセージについて例を説明する。
ここで、ICMPv6のパケット過大メッセージは、タイプ=2、コード=0で定義されている。例えば、タイプ=2のまま未定義のコード=1や、未定義の新たなタイプを仕様の範囲内で定義してもよい。新たに定義されたメッセージを受けた端末は、少なくともこのメッセージに含まれる情報に基づいて処理するが、ここでは4通り(1)〜(4)の説明をする。
新しく定義されるメッセージには、「宛先」とその宛先に適用する「PMTU」との組「宛先:PMTU」が含まれる。このメッセージの通知を受けたLAN側端末は、この「宛先」に対して、この「PMTU」の値で通信する。
例えば、新しく定義されるメッセージに「宛先「A」:PMTU「X」」の組(1)が含まれている場合には、メッセージの通知を受けたLAN側端末は、所定のアドレスA宛(通信の宛先)の通信に対してPMTUの値としてXを適用する。
また、新しく定義されるメッセージに「宛先「{R}」:PMTU「Y」」の組(2)が含まれている場合には、メッセージの通知を受けたLAN側端末は、アドレス範囲{R}に含まれるアドレスを宛先とする通信に対してPMTUの値としてYを適用する。なお、アドレス、アドレス範囲は2以上設定されてもよく、アドレス範囲を表記できるフィールドを設けることになる。
また、新しく定義されるメッセージに「宛先「¬{R}」:PMTU「Y」」の組(3)が含まれている場合には、例えば、アドレス範囲{R}にLAN側のNWアドレスが指定されていれば、このLAN側以外の宛先、つまりWAN側宛との通信にはPMTU=Yを適用する。上記(2)の宛先に関する否定表現である。アドレスまたはアドレス範囲に対する論理的否定NOTを表記できるフィールドを設けることになる。
また、新しく定義されるメッセージに「宛先「¬T」:PMTU「Z」」の組(4)が含まれている場合には、メッセージの通知を受けたLAN側端末は、自身が参加しているNWドメインのアドレス情報を取得して、このアドレス(範囲)以外の宛先のPMTUをZとみなして通信する。アドレス情報とは、例えば、IPv4の場合はIPアドレス、サブネットマスク等から計算して取得し、IPv6の場合はネットワークのプレフィックスやプレフィックス長を取得する。上記(3)と異なる点は、ゲートウェイが明示的にアドレス範囲を通知するのではなく、端末側でアドレス範囲を特定する点にある。なお、上記した4通りである(1)〜(4)における「宛先」とその宛先に適用する「PMTU」との組「宛先:PMTU」の情報は、ゲートウェイ10が記憶しているものである。
また、端末が新しく定義されるメッセージの通知を受けるタイミングは、2通りある。まず、WAN側宛先への通信の送信元である端末がICMPv6メッセージでPMTUの通知を受ける場合である。この場合には、宛先へ通信を試みる過程でゲートウェイからPMTUの通知を受けることができる。
また、これ以外のタイミングで通知を受ける場合として、ゲートウェイが広告するルータ広告(Router Advertisement)の新たなオプションのメッセージとして端末に通知して、通知を受けた端末はそのメッセージに従って自端末にPMTUを設定してもよい。メッセージの内容や処理は、上記(1)〜(4)と同様である。その際はRAにおいて、未定義のオプションで新たな定義をすることになる。RAであれば、端末からRSを受けたことを契機としてその端末に通知するだけでなく、ゲートウェイが所定時間間隔で自発的に通知もするので、WAN側に関するPMTUの通知をLAN側端末が受取ることができる。
なお、これまで本発明の実施の形態について説明したが、本発明は上述した実施の形態以外にも、種々の異なる形態にて実施されてよいものである。
[ブラックホール問題の判定処理]
例えば、ブラックホール問題に遭ったのか否かを判断する処理について、種々の異なる処理方法を行ってもよい。ところで、TCP(Transmission Control Protocol)の場合、最初に送信元と宛先の間で3ウェイハンドシェイクにより、互いのMSSを交換してから小さい方のサイズに調整したMSS(Maximum Segment Size)で送信元から通信を行うが、この最初の通信はパケットサイズが小さいため通るが、その後の調整したMSSのパケットサイズが大きくて通信が通らない場合がある。
このような場合の対処として、通信開始からまたは3ウェイハンドシェイク以降、所定回数往復分のパケットを監視対象として、その中で所定時間応答がない場合要処理と判断してもよい。
または、送信したパケットのTCPのシーケンス番号を記憶しておき、そのシーケンス番号に対するACK(ACKnowledgement)が所定時間内に返ってきたか否かを監視対象に含めてもよい。さらに、TCPには再送制御が備わっているので、この再送制御によって所定回数送信したパケットの同じシーケンス番号対応するACKが返ってこなかった場合は、要処理と判断してもよい。
または、調整したMSSのサイズのパケット応答が所定時間内にない場合、または、このMSSのサイズ未満のパケットが所定期間内に所定数以上の応答があった場合(例えば、Webサイトの場合、送信元端末上でテキストファイルだけ表示されて、表示されるべき画像ファイルや再生されるべき動画が表示されない状況を示すものである場合)、ブラックホール問題に遭ったと判断してもよい。
または、ブラックホール問題に限っては、標準仕様で規定されている最小のMTUのサイズのパケットが通るので、最小MTU以上のサイズのパケットのみを監視対象としてもよい。または、標準仕様で規定されている最小のMTU以上のサイズのパケットを送受信、送信、受信できたことを確認した時点で監視対象から外すと判断してもよい。
ところで、ブラックホール問題に遭うことなく正常な通信であるが、LAN側からの通信に対してWAN側から応答がない場合もある。この場合には、UDPの場合は宛先からの応答の有無はUDP(User Datagram Protocol)を使用している送信元/宛先のアプリケーションに依存する。そこで、パケット監視をしてTCP/UDPを識別して、TCPであればWAN側からの戻りがあると判断できるので応答の有無を確認し、UDPの場合は戻りのないUDP通信であることが事前に分かっているアプリケーションプロトコルについては、ゲートウェイで予めプロトコルとポート番号、メッセージのうちのいずれか1以上からなる組などを記憶しておくことで、監視対象から除外するとしてもよい。また、このような記憶はTCPにも適用してもよい。なお、UDPで戻りのあるものは、例えばDNS、DHCP、NTPの問合せに対する応答などがあげられる。また、監視対象のパケットは標準仕様で規定されている最小のサイズ以上のものであってもよい。
また、各端末は、ゲートウェイから通知されたPMTUを使い続けてWAN側と通信してもよいが、所定時間経過後にこのPMTUをリフレッシュ(削除)してもよい。この所定時間は、ゲートウェイからの通知に含まれていてもよく、個々の端末の中で管理されているものであってもよい。また、ゲートウェイ自身も保持している管理テーブルの中身を同様に所定時間経過後にリフレッシュさせてもよい。これは、インターネット上の経路は動的に変化するため、同じ宛先に対して常に同じPMTUであるとは限らないためである。
管理テーブルには、PMTUを通知すべきWAN側宛先を記憶するのではなく、LAN側の端末にPMTUを通知しなくてよいWAN側宛先を記憶させて、管理テーブル内に記憶されていないWAN側宛先宛のパケットを受けたら、PMTUを通知することとしてもよい。また、管理テーブルが扱う送信元や宛先の情報はアドレスではなく、DNS(Domain Name System)から得た名前情報でもよい。また、ゲートウェイはモバイルルータのような可搬媒体であってもよい。
また、イーサネット上のIPv6の場合であっても、経路上にトンネルが張られている場合は、トンネルのためのヘッダサイズを考慮する必要があり、このトンネルのためのオーバヘッドとなるサイズも含めてMTU=1280となるような所定のPMTUの値を設定してもよい。また、PMTU探索で適切なPMTUを取得できる宛先については、あえてゲートウェイが記憶して通信を管理する必要はなく、ブラックホール問題に遭う宛先についてのみ記憶するようにしてもよい。
[システム構成等]
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。例えば、キャッシュ検索部13aとディスク負荷判定部13bを統合してもよい。さらに、各装置にて行なわれる各処理機能は、その全部または任意の一部が、CPUおよび当該CPUにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
また、本実施例において説明した各処理のうち、自動的におこなわれるものとして説明した処理の全部または一部を手動的におこなうこともでき、あるいは、手動的におこなわれるものとして説明した処理の全部または一部を公知の方法で自動的におこなうこともできる。この他、上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。
[プログラム]
また、上記実施例において説明したゲートウェイ10が実行する処理をコンピュータが実行可能な言語で記述したプログラムを作成することもできる。例えば、ゲートウェイ10が実行する処理をコンピュータが実行可能な言語で記述した中継プログラムを作成することもできる。この場合、コンピュータが中継プログラムを実行することにより、上記実施例と同様の効果を得ることができる。さらに、かかる中継プログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録された中継プログラムをコンピュータに読み込ませて実行することにより上記実施例と同様の処理を実現してもよい。以下に、図2に示したゲートウェイ10と同様の機能を実現する中継プログラムを実行するコンピュータの一例を説明する。
図17は、中継プログラムを実行するコンピュータ1000を示す図である。図17に例示するように、コンピュータ1000は、例えば、メモリ1010と、CPU1020と、ハードディスクドライブインタフェース1030と、ディスクドライブインタフェース1040と、シリアルポートインタフェース1050と、ビデオアダプタ1060と、ネットワークインタフェース1070とを有し、これらの各部はバス1080によって接続される。
メモリ1010は、図17に例示するように、ROM(Read Only Memory)1011及びRAM1012を含む。ROM1011は、例えば、BIOS(Basic Input Output System)等のブートプログラムを記憶する。ハードディスクドライブインタフェース1030は、図17に例示するように、ハードディスクドライブ1031に接続される。ディスクドライブインタフェース1040は、図17に例示するように、ディスクドライブ1041に接続される。例えば磁気ディスクや光ディスク等の着脱可能な記憶媒体が、ディスクドライブに挿入される。シリアルポートインタフェース1050は、図17に例示するように、例えばマウス1051、キーボード1052に接続される。ビデオアダプタ1060は、図17に例示するように、例えばディスプレイ1061に接続される。
ここで、図17に例示するように、ハードディスクドライブ1031は、例えば、OS1091、アプリケーションプログラム1092、プログラムモジュール1093、プログラムデータ1094を記憶する。すなわち、上記の中継プログラムは、コンピュータ1000によって実行される指令が記述されたプログラムモジュールとして、例えばハードディスクドライブ1031に記憶される。例えば、図3に例示したメッセージ送信部131と同様の情報処理を実行するメッセージ送信手順と、メッセージ格納部132と同様の情報処理を実行するメッセージ格納手順とが記述されたプログラムモジュール1093が、ハードディスクドライブ1031に記憶される。または、上記例のように、メッセージ送信部131が比較部と送信部とに分散される場合には、比較手順と、送信手順と、メッセージ格納手順とが記述されたプログラムモジュール1093が、ハードディスクドライブ1031に記憶される。
また、上記実施の形態で説明した記憶部13が保持する各種データは、プログラムデータとして、例えばメモリ1010やハードディスクドライブ1031に記憶される。そして、CPU1020が、メモリ1010やハードディスクドライブ1031に記憶されたプログラムモジュール1093やプログラムデータ1094を必要に応じてRAM1012に読み出し、メッセージ送信手順(または、比較手順、送信手順)、メッセージ格納手順を実行する。
なお、中継プログラムに係るプログラムモジュール1093やプログラムデータ1094は、ハードディスクドライブ1031に記憶される場合に限られず、例えば着脱可能な記憶媒体に記憶され、ディスクドライブ等を介してCPU1020によって読み出されてもよい。あるいは、中継プログラムに係るプログラムモジュール1093やプログラムデータ1094は、ネットワーク(LAN(Local Area Network)、WAN(Wide Area Network)等)を介して接続された他のコンピュータに記憶され、ネットワークインタフェース1070を介してCPU1020によって読み出されてもよい。
10、10A ゲートウェイ
11、12 通信部
13 記憶部
14 疎通監視部
15 PMTU通知判定部
16 PMTU通知部
20A〜20C 端末
21 通知部
22 PMTU設定部
30 ルータ
40 LAN
50 WAN
100 ネットワークシステム

Claims (9)

  1. 広域通信網とローカル通信網との間で通信を中継する中継装置であって、
    前記ローカル通信網側の端末から前記広域通信網側の端末へのデータ送信に対する応答を監視する監視部と、
    前記監視部による監視に基づいて所定の時間以内に応答が返ってきたかを判定する判定部と、
    前記判定部によって所定の時間以内に応答がないと判定された場合には、1回に転送可能なデータ容量であって前記データ送信時のデータ容量よりも小さいデータ容量である転送可能容量を指示するメッセージを生成し、該メッセージを前記ローカル通信網側の端末に通知する通知部と
    を有し、
    前記判定部によって所定の時間以内に応答がないと判定された場合には、前記ローカル通信網側の端末から前記広域通信網側の端末へのデータ送信時よりも小さいデータ容量のデータを前記広域通信網側の端末へ送信し、該送信に対する応答が所定の時間以内にあるか否かを確認する確認部をさらに有し、
    前記通知部は、前記確認部によって所定の時間以内に応答があると確認された場合には、前記転送可能容量を指示するメッセージを生成し、該メッセージを前記ローカル通信網側の端末に通知することを特徴とする中継装置。
  2. 広域通信網とローカル通信網との間で通信を中継する中継装置であって、
    前記ローカル通信網側の端末から前記広域通信網側の端末へのデータ送信に対する応答を監視する監視部と、
    前記監視部による監視に基づいて所定の時間以内に応答が返ってきたかを判定する判定部と、
    前記判定部によって所定の時間以内に応答がないと判定された場合には、1回に転送可能なデータ容量であって前記データ送信時のデータ容量よりも小さいデータ容量である転送可能容量を指示するメッセージを生成し、該メッセージを前記ローカル通信網側の端末に通知する通知部と
    を有し、
    前記広域通信網側の端末における宛先情報と、該広域通信網側の端末とデータ通信を行う際の転送可能容量とを対応付けて記憶する記憶部をさらに有し、
    前記監視部は、前記ローカル通信網側の端末から前記広域通信網側の端末へのデータ通信が行われる際に、該広域通信網側の端末の宛先情報に該当する宛先情報が記憶部に記憶されている場合には、該宛先情報に対応付けて記憶されている転送可能容量よりも前記データ通信における転送可能容量が大きいか否かを監視し、
    前記通知部は、宛先情報に対応付けて記憶されている転送可能容量よりも前記データ通信における転送可能容量が大きい場合には、前記広域通信網側の端末へのデータ通信を中止し、前記宛先情報に対応付けて記憶されている転送可能容量を指示するメッセージを生成し、該メッセージを前記ローカル通信網側の端末に通知することを特徴とする中継装置。
  3. 広域通信網とローカル通信網との間で通信を中継する中継装置であって、
    前記ローカル通信網側の端末から前記広域通信網側の端末へのデータ送信に対する応答を監視する監視部と、
    前記監視部による監視に基づいて所定の時間以内に応答が返ってきたかを判定する判定部と、
    前記判定部によって所定の時間以内に応答がないと判定された場合には、1回に転送可能なデータ容量であって前記データ送信時のデータ容量よりも小さいデータ容量である転送可能容量を指示するメッセージを生成し、該メッセージを前記ローカル通信網側の端末に通知する通知部と
    を有し、
    前記通知部は、前記判定部によって所定の時間以内に応答がないと判定された回数が所定の回数以上となった場合には、前記広域通信網側の全ての端末へのデータ送信に対して、最小の転送可能容量を指示するメッセージを生成し、該メッセージを前記ローカル通信網側の端末に通知することを特徴とする中継装置。
  4. 広域通信網とローカル通信網との間で通信を中継する中継装置であって、
    前記ローカル通信網側の端末から前記広域通信網側の端末へのデータ送信に対する応答を監視する監視部と、
    前記監視部による監視に基づいて所定の時間以内に応答が返ってきたかを判定する判定部と、
    前記判定部によって所定の時間以内に応答がないと判定された場合には、1回に転送可能なデータ容量であって前記データ送信時のデータ容量よりも小さいデータ容量である転送可能容量を指示するメッセージを生成し、該メッセージを前記ローカル通信網側の端末に通知する通知部と
    を有し、
    前記通知部は、アドレス範囲と該アドレス範囲を宛先とする通信に適用する転送可能容量、または、アドレスもしくはアドレス範囲以外の宛先への通信に適用する転送可能容量を指示するメッセージを生成し、該メッセージを前記ローカル通信網側の端末に通知することを特徴とする中継装置。
  5. 広域通信網とローカル通信網との間で端末同士の通信を中継する中継装置で実行される中継方法であって、
    前記ローカル通信網側の端末から前記広域通信網側の端末へのデータ送信に対する応答を監視する監視工程と、
    前記監視工程による監視に基づいて所定の時間以内に応答が返ってきたかを判定する判定工程と、
    前記判定工程によって所定の時間以内に応答がないと判定された場合には、前記ローカル通信網側の端末から前記広域通信網側の端末へのデータ送信時よりも小さいデータ容量のデータを前記広域通信網側の端末へ送信し、該送信に対する応答が所定の時間以内にあるか否かを確認する確認工程と、
    前記確認工程によって所定の時間以内に応答があると確認された場合には、1回に転送可能なデータ容量であって前記データ送信時のデータ容量よりも小さいデータ容量である転送可能容量を指示するメッセージを生成し、該メッセージを前記ローカル通信網側の端末に通知する通知工程と
    を含んだことを特徴とする中継方法。
  6. 広域通信網とローカル通信網との間で端末同士の通信を中継する中継装置で実行される中継方法であって、
    前記中継装置は、前記広域通信網側の端末における宛先情報と、該広域通信網側の端末とデータ通信を行う際の転送可能容量とを対応付けて記憶する記憶部を有し、
    前記ローカル通信網側の端末から前記広域通信網側の端末へのデータ通信が行われる際に、該広域通信網側の端末の宛先情報に該当する宛先情報が記憶部に記憶されている場合には、該宛先情報に対応付けて記憶されている転送可能容量よりも前記データ通信における転送可能容量が大きいか否かを監視するとともに、前記ローカル通信網側の端末から前記広域通信網側の端末へのデータ送信に対する応答を監視する監視工程と、
    前記監視工程による監視に基づいて所定の時間以内に応答が返ってきたかを判定する判定工程と、
    前記宛先情報に対応付けて記憶されている転送可能容量よりも前記データ通信における転送可能容量が大きい場合には、前記広域通信網側の端末へのデータ通信を中止し、前記宛先情報に対応付けて記憶されている転送可能容量を指示するメッセージを生成し、該メッセージを前記ローカル通信網側の端末に通知し、前記判定工程によって所定の時間以内に応答がないと判定された場合には、1回に転送可能なデータ容量であって前記データ送信時のデータ容量よりも小さいデータ容量である転送可能容量を指示するメッセージを生成し、該メッセージを前記ローカル通信網側の端末に通知する通知工程と
    を含んだことを特徴とする中継方法。
  7. 広域通信網とローカル通信網との間で端末同士の通信を中継する中継装置で実行される中継方法であって、
    前記ローカル通信網側の端末から前記広域通信網側の端末へのデータ送信に対する応答を監視する監視工程と、
    前記監視工程による監視に基づいて所定の時間以内に応答が返ってきたかを判定する判定工程と、
    前記判定工程によって所定の時間以内に応答がないと判定された回数が所定の回数以上となった場合には、前記広域通信網側の全ての端末へのデータ送信に対して、1回に転送可能なデータ容量であって前記データ送信時のデータ容量よりも小さいデータ容量である最小の転送可能容量を指示するメッセージを生成し、該メッセージを前記ローカル通信網側の端末に通知する通知工程と
    を含んだことを特徴とする中継方法。
  8. 広域通信網とローカル通信網との間で端末同士の通信を中継する中継装置で実行される中継方法であって、
    前記ローカル通信網側の端末から前記広域通信網側の端末へのデータ送信に対する応答を監視する監視工程と、
    前記監視工程による監視に基づいて所定の時間以内に応答が返ってきたかを判定する判定工程と、
    前記判定工程によって所定の時間以内に応答がないと判定された場合には、1回に転送可能なデータ容量であって前記データ送信時のデータ容量よりも小さいデータ容量である転送可能容量であって、アドレス範囲と該アドレス範囲を宛先とする通信に適用する転送可能容量、または、アドレスもしくはアドレス範囲以外の宛先への通信に適用する転送可能容量を指示するメッセージを生成し、該メッセージを前記ローカル通信網側の端末に通知する通知工程と
    を含んだことを特徴とする中継方法。
  9. コンピュータを請求項1〜4のいずれか一つに記載の中継装置として機能させるための中継プログラム。
JP2012087234A 2012-04-06 2012-04-06 中継装置、中継方法及び中継プログラム Expired - Fee Related JP5805575B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2012087234A JP5805575B2 (ja) 2012-04-06 2012-04-06 中継装置、中継方法及び中継プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012087234A JP5805575B2 (ja) 2012-04-06 2012-04-06 中継装置、中継方法及び中継プログラム

Publications (2)

Publication Number Publication Date
JP2013219481A JP2013219481A (ja) 2013-10-24
JP5805575B2 true JP5805575B2 (ja) 2015-11-04

Family

ID=49591148

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012087234A Expired - Fee Related JP5805575B2 (ja) 2012-04-06 2012-04-06 中継装置、中継方法及び中継プログラム

Country Status (1)

Country Link
JP (1) JP5805575B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107925629B (zh) * 2015-08-31 2021-05-18 华为技术有限公司 一种IPv6网络中数据报文的发送方法及装置

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4222353B2 (ja) * 2005-09-16 2009-02-12 ヤマハ株式会社 Ip通信装置およびip通信システム
JP2007180686A (ja) * 2005-12-27 2007-07-12 Matsushita Electric Ind Co Ltd 中継通信装置、記憶媒体、集積回路および通信システム
JP2007281801A (ja) * 2006-04-05 2007-10-25 Fuji Xerox Co Ltd 情報処理装置、コンピュータの制御方法及びプログラム
US7697441B2 (en) * 2006-04-27 2010-04-13 Microsoft Corporation Computer system with black hole management
JP5200755B2 (ja) * 2008-08-20 2013-06-05 日本電気株式会社 無線基地局、無線通信システム、パス接続方法およびプログラム

Also Published As

Publication number Publication date
JP2013219481A (ja) 2013-10-24

Similar Documents

Publication Publication Date Title
JP6918784B2 (ja) IPv6ネットワークにおけるデータパケット送信方法および装置
Hätönen et al. An experimental study of home gateway characteristics
JP4226553B2 (ja) データ通信ネットワークにおけるルーティング
JP5529117B2 (ja) パケット・ベースの通信ネットワーク上の断片化パケットの伝送のための方法およびシステム
US20110131308A1 (en) Method And Arrangement To Maintain A TCP Connection
CN112654049B (zh) 用于配置无线通信覆盖扩展系统的方法、系统、节点和介质
JP2006528871A (ja) デバイスのピン負荷を制御するライブネスピンプロトコル
JP2004336726A (ja) ルーティング制御方法、ルータ装置、及び端末装置
JP3999785B2 (ja) 通信方法
Seliem et al. Performance evaluation and optimization of neighbor discovery implementation over Contiki OS
US11683275B2 (en) Device and method for interconnecting two subnetworks
Thaler Teredo extensions
WO2018006684A1 (zh) 报文处理方法、装置及路由器
JP5818272B2 (ja) ホームゲートウェイ装置およびパケット転送方法
JP5805575B2 (ja) 中継装置、中継方法及び中継プログラム
Rayes et al. The internet in IoT
Nordmark et al. Neighbor unreachability detection is too impatient
JP4752722B2 (ja) パケット転送装置及びパケット転送方法
JP5657505B2 (ja) ネットワークシステム、中継装置、通信方法、中継方法及び中継プログラム
CN110809065B (zh) 基于IPv6的无IP网络通信方法及其电子设备、存储介质
JP4526127B2 (ja) 帯域内管理網における管理トラヒックを再送する通信方法、装置及びプログラム
JP5105124B2 (ja) ルータ装置、プレフィクス管理にもとづくパケット制御方法およびプログラム
JP3613207B2 (ja) Arpテーブル形成方法及びこれを用いた経路制御方法
Dhraief et al. An M2M gateway-centric architecture for autonomic healing and optimising of machine-to-machine overlay networks
JP5752644B2 (ja) 通信路終端装置、データサイズ決定方法およびデータサイズ決定プログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20140711

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20150604

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150616

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150812

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: 20150901

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150902

R150 Certificate of patent or registration of utility model

Ref document number: 5805575

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees