本発明は、ノード及びリンクから構成されるパケット通信システムにおいて、マルチ経路の状態(パケットのルーティング経路が複数存在する状態)でパケット通信を行うネットワーク中継装置、データ受信装置、データ送信装置、マルチ経路MTU発見方法並びにマルチ経路MTU発見システムに関する。
従来の経路MTU(Maximum Transmission Unit)探索技術には、Path MTU DiscoveryやPath MTU Discovery for IPv6などの技術が存在している(下記の非特許文献1や非特許文献2を参照)。これらの技術は、送信側(送信元)の通信装置が、ルータなどのネットワーク中継装置によってパケットの分割(Fragmentation)が行われることを禁止したパケットを送信し、そのパケットが無事に受信側(あて先)の通信装置に届くかを確認するという方法である。
この方法では、送信側の通信装置によって送信されたパケットが経路MTUより大きなサイズの場合には、パケットは転送不可能となり、パケットを転送することができなかったネットワーク中継装置が、送信元に対してエラーメッセージを送信する。また、エラーメッセージが送信元の通信装置に届かなければ、エラーメッセージは返ってこないため、送信元の通信装置は、送信したパケット長より経路MTUが大きいことが分かる。
経路MTUを調べることのメリットは、ネットワークのリソースを有効に活用できることである。経路MTUより大きなサイズのパケットを送信した場合は、経路上のネットワーク中継装置がパケットを分割して細分化するか、又は送信元の通信装置にパケットを細分化して送信し直すようエラーメッセージを送信する。
ネットワーク中継装置が経路上で細分化する場合には、パケットの分割処理が発生し、ネットワークに負荷がかかる。また、細分化されたパケットにはそれぞれ新しくヘッダが付加されるため、データの伝送効率が低下する。一方、ネットワーク中継装置が送信元にエラーメッセージを送信する場合には、送信元は同じ内容のパケットを小さく分割し直して再送信しなければならない。
また逆に、経路MTUよりかなり小さなパケットを送信した場合は、同じデータ量をあて先に届けるためにより多くのパケットが必要となる。各パケットには決まったサイズのヘッダが付加されるため、伝送されるパケット内のデータ領域は相対的に小さくなり、伝送効率が低下する。
したがって、経路MTUにできるだけ近い長さであり、かつ経路MTUを超えないパケット長で送信することによって、伝送効率を向上させることができ、ネットワークリソースを有効に活用することができる。
また、非特許文献1、2に開示されているPath MTU Discovery以外の経路MTU探索方法として、例えば下記の特許文献1〜3に開示されている技術が知られている。
特許文献1では、動的に経路MTUが変化した場合に、ネットワーク側から送信元に変更された経路MTUを通知するという技術が開示されている。非特許文献1、2に開示されているPath MTU Discoveryでは、送信元が定期的に経路探索処理を行うことによって、経路MTUが大きな値に変わっていないかどうかを確認する必要があるが、特許文献1〜3に開示されている技術では、ネットワーク側から送信元の通信装置に経路MTUを通知することが可能である。
なお、特許文献1では、ネットワーク中継装置が送信元の通信装置に経路MTUを通知する場合に、非特許文献1、2に開示されているPath MTU Discoveryと同様に、ICMP(Internet Control and Management Protocol)メッセージのPacket Too Bigが利用されている。また、特許文献2では、ネットワーク中継装置が送信元の通信装置に経路MTUを通知する場合に、下記の非特許文献3に記載のモバイルIP(Internet Protocol:インターネットプロトコル)で定義されているバインディングアップデート(BU:Binding Update)メッセージが利用されている。また、特許文献3では、ネットワーク中継装置が送信元の通信装置に経路MTUを通知する場合に、特許文献1や特許文献2のように特定のメッセージを用いるのではなく、通常のパケットに拡張ヘッダ(Destination Option Header)を付加する方法が用いられている。
特開2004−48178号公報
特開2004−48181号公報
特開2005−57734号公報
Path MTU Discovery(RFC1191、1990年11月)
Path MTU Discovery for IPv6(RFC1981、 1996年8月)
Mobility Support in IPv6(RFC3775、2004年6月)
しかしながら、上述の従来の技術では、送信元からあて先にパケットが届くルーティング経路が複数存在するマルチ経路状態の場合には、異なる経路MTUを利用してネットワークリソースを有効に使うことができないという課題がある。
例えば複数の経路が存在し、ネットワークがこれらの複数の経路を利用してパケットを伝送しているとき、複数の経路の経路MTUが異なり、送信元のネットワーク通信装置が小さいほうの経路MTUの値だけを知っている場合には、ネットワーク側の視点では、複数存在する経路のうちの経路MTUの大きな経路には小さなパケットばかり流れ、ネットワークリソースを有効に使えないことになる。
逆に、送信元のネットワーク通信装置が大きいほうの経路MTUの値だけを知っている場合には、パケット長の大きなパケットが流れ、経路MTUの小さな経路にはあまりパケットが流れない状態(あるいは、経路MTUの小さな経路では、パケット分割処理によって細分化されたパケットが流れる状態)となり、同じくネットワークリソースを有効に使えないことになる。
すなわち、従来の経路MTU発見方法では、送信元からあて先にパケットが届く経路が複数存在するマルチ経路状態で、それぞれの経路の経路MTUが異なる場合には、複数の経路が存在するにもかかわらず、ネットワークリソースを有効に活用できないという課題がある。
本発明は、従来の経路MTU発見方法では解決できなかったマルチ経路状態において、パケットの送信元ノードが適切なパケット長を設定できるようにし、ネットワークリソースを有効に活用できるようにすることを目的とする。
上記の目的を達成するため、本発明のネットワーク中継装置は、ノード及びリンクから構成されるパケット通信システムにおいて、パケットを中継するネットワーク中継装置であって、
前記パケットのルーティング経路として複数の経路が存在する場合に、それぞれの経路の経路MTU情報を探索する経路MTU探索手段と、
前記経路MTU探索手段によって探索された前記複数の経路のそれぞれの経路MTU情報を含むマルチ経路MTU情報を作成するマルチ経路MTU情報作成手段と、
前記マルチ経路MTU情報を前記パケットの送信元に送信するマルチ経路MTU情報通知手段とを、
有する。
この構成により、パケットの送信元ノードが、複数の経路のそれぞれにかかる経路MTU情報を参照して、適切なパケット長を選択的に設定することが可能となり、ネットワークリソースが有効に活用される。
さらに、本発明のネットワーク中継装置は、上記の構成に加えて、前記マルチ経路MTU情報が、前記複数の経路のそれぞれの帯域情報及び/又は前記複数の経路のそれぞれの使用可/不可の予定時刻情報を有する。
この構成により、パケットの送信元ノードは、経路MTU情報に加えて帯域情報を考慮し、例えば、帯域の大きな経路の経路MTUに合わせてパケット長を制御することが可能となる。また、パケットの送信元ノードは、経路MTU情報に加えて予定時刻情報を考慮し、特定の経路が使用可能な時間帯に応じて、経路を使い分けることが可能となる。
さらに、本発明のネットワーク中継装置は、上記の構成に加えて、ホームエージェントとしての機能を有する。
また、上記の目的を達成するため、本発明のデータ受信装置は、ノード及びリンクから構成されるパケット通信システムにおいて、パケットを受信するデータ受信装置であって、
前記パケットのルーティング経路として複数の経路が存在する場合に、それぞれの経路の経路MTU情報を探索する経路MTU探索手段と、
前記経路MTU探索手段によって探索された前記複数の経路のそれぞれの経路MTU情報を含むマルチ経路MTU情報を作成するマルチ経路MTU情報作成手段と、
前記マルチ経路MTU情報を前記パケットの送信元に送信するマルチ経路MTU情報通知手段とを、
有する。
この構成により、パケットの送信元ノードが、複数の経路のそれぞれにかかる経路MTU情報を参照して、適切なパケット長を選択的に設定することが可能となり、ネットワークリソースが有効に活用される。
さらに、本発明のデータ受信装置は、上記の構成に加えて、前記マルチ経路MTU情報が、前記複数の経路のそれぞれの帯域情報及び/又は前記複数の経路のそれぞれの使用可/不可の予定時刻情報を有する。
この構成により、パケットの送信元ノードは、経路MTU情報に加えて帯域情報を考慮し、例えば、帯域の大きな経路の経路MTUに合わせてパケット長を制御することが可能となる。また、パケットの送信元ノードは、経路MTU情報に加えて予定時刻情報を考慮し、特定の経路が使用可能な時間帯に応じて、経路を使い分けることが可能となる。
さらに、本発明のデータ受信装置は、上記の構成に加えて、モバイルノードとしての機能を有する。
また、上記の目的を達成するため、本発明のデータ送信装置は、ノード及びリンクから構成されるパケット通信システムにおいて、パケットを送信するデータ送信装置であって、
前記パケットのルーティング経路として複数の経路が存在する場合に、それぞれの経路の経路MTU情報を含むマルチ経路MTU情報を、前記パケットを中継するネットワーク中継装置又は前記パケットを受信するデータ受信装置から受信するマルチ経路MTU情報受信手段と、
前記マルチ経路MTU情報受信手段で受信した前記マルチ経路MTU情報に基づいて、前記パケットのパケット長を決定するパケット長制御手段とを、
有する。
この構成により、パケットの送信元ノードが、複数の経路のそれぞれにかかる経路MTU情報を参照して、適切なパケット長を選択的に設定することが可能となり、ネットワークリソースが有効に活用される。
さらに、本発明のデータ送信装置は、上記の構成に加えて、前記マルチ経路MTU情報が、前記複数の経路のそれぞれの帯域情報及び/又は前記複数の経路のそれぞれの使用可/不可の予定時刻情報を有する。
この構成により、パケットの送信元ノードは、経路MTU情報に加えて帯域情報を考慮し、例えば、帯域の大きな経路の経路MTUに合わせてパケット長を制御することが可能となる。また、パケットの送信元ノードは、経路MTU情報に加えて予定時刻情報を考慮し、特定の経路が使用可能な時間帯に応じて、経路を使い分けることが可能となる。
さらに、本発明のデータ送信装置は、上記の構成に加えて、コレスポンデントノードとしての機能を有する。
また、上記の目的を達成するため、本発明のマルチ経路MTU発見システムは、ノード及びリンクから構成されるパケット通信システムにおいて、ネットワーク中継装置で中継されてデータ受信装置に伝送されるパケットの送信元であるデータ送信装置が、前記パケットのパケット長を決定するための経路MTU情報を取得するマルチ経路MTU発見システムであって、
前記ネットワーク中継装置又は前記データ受信装置が、前記パケットのルーティング経路として複数の経路が存在する場合に、それぞれの経路の経路MTU情報を探索する経路MTU探索ステップと、
前記ネットワーク中継装置又は前記データ受信装置が、前記経路MTU探索手段によって探索された前記複数の経路のそれぞれの経路MTU情報を含むマルチ経路MTU情報を作成するマルチ経路MTU情報作成ステップと、
前記ネットワーク中継装置又は前記データ受信装置が、前記マルチ経路MTU情報を前記パケットの送信元に送信するマルチ経路MTU情報通知ステップと、
前記データ送信装置が、前記パケットのルーティング経路として複数の経路が存在する場合に、それぞれの経路の経路MTU情報を含むマルチ経路MTU情報を、前記ネットワーク中継装置又は前記データ受信装置から受信するマルチ経路MTU情報受信ステップと、
前記データ送信装置が、前記マルチ経路MTU情報受信手段で受信した前記マルチ経路MTU情報に基づいて、前記パケットのパケット長を決定するパケット長制御ステップとを、
有する。
この方法により、パケットの送信元ノードが、複数の経路のそれぞれにかかる経路MTU情報を参照して、適切なパケット長を選択的に設定することが可能となり、ネットワークリソースが有効に活用される。
また、上記目的を達成するため、本発明のマルチ経路MTU発見システムは、ノード及びリンクから構成されるパケット通信システムにおいて、ネットワーク中継装置で中継されてデータ受信装置に伝送されるパケットの送信元であるデータ送信装置が、前記パケットのパケット長を決定するための経路MTU情報を取得するマルチ経路MTU発見システムであって、
前記データ送信装置が、
前記パケットのルーティング経路として複数の経路が存在する場合に、それぞれの経路の経路MTU情報を含むマルチ経路MTU情報を、前記ネットワーク中継装置又は前記データ受信装置から受信するマルチ経路MTU情報受信手段と、
前記マルチ経路MTU情報受信手段で受信した前記マルチ経路MTU情報に基づいて、前記パケットのパケット長を決定するパケット長制御手段とを有し、
前記ネットワーク中継装置又は前記データ受信装置が、
前記パケットのルーティング経路として複数の経路が存在する場合に、それぞれの経路の経路MTU情報を探索する経路MTU探索手段と、
前記経路MTU探索手段によって探索された前記複数の経路のそれぞれの経路MTU情報を含むマルチ経路MTU情報を作成するマルチ経路MTU情報作成手段と、
前記マルチ経路MTU情報を前記パケットの送信元に送信するマルチ経路MTU情報通知手段とを有する。
この構成により、パケットの送信元ノードが、複数の経路のそれぞれにかかる経路MTU情報を参照して、適切なパケット長を選択的に設定することが可能となり、ネットワークリソースが有効に活用される。
本発明は、従来の経路MTU発見方法では解決できなかったマルチ経路状態において、パケットの送信元ノードが適切なパケット長を設定できるようにし、ネットワークリソースを有効に活用できるようにするという効果を有している。
本発明の第1の実施の形態のネットワーク構成の一例を示すネットワーク構成図
本発明の第1の実施の形態における(1−A)の場合のマルチ経路MTU情報の通知状態を示す図
本発明の第1の実施の形態における(1−B)の場合のマルチ経路MTU情報の通知状態を示す図
本発明の第1の実施の形態における(1−C)の場合のマルチ経路MTU情報の通知状態を示す図
本発明の第1の実施の形態における(2−A)の場合のマルチ経路MTU情報の通知状態を示す図
本発明の第1の実施の形態における(2−B)の場合のマルチ経路MTU情報の通知状態を示す図
本発明の第1の実施の形態における(2−C)の場合のマルチ経路MTU情報の通知状態を示す図
本発明の第1の実施の形態におけるネットワーク中継装置の構成の一例を示すブロック図
本発明の第1の実施の形態におけるデータ受信装置の構成の一例を示すブロック図
本発明の第1の実施の形態におけるデータ送信装置の構成の一例を示すブロック図
本発明の第1の実施の形態において、マルチ経路MTU情報を運ぶためのDestination Option Headerの一例を示す図
本発明の第1の実施の形態において、帯域情報や予定時刻情報を含むマルチ経路MTU情報を運ぶためのDestination Option Headerの一例を示す図
本発明の第2の実施の形態のネットワーク構成の一例を示すネットワーク構成図
本発明の第2の実施の形態におけるモバイルノードの気付アドレスと経路MTU情報との対応関係の一例を示す図
本発明の第2の実施の形態におけるホームアドレスと気付アドレスとの対応関係の一例を示す図
本発明の第2の実施の形態において、アドレス及び複数の経路の経路MTU情報によって構成されているマルチ経路情報の一例を示す図
本発明の第2の実施の形態において、アドレスと、経路情報である経路MTU情報、帯域情報及び予定時刻情報との対応関係の一例を示す図
本発明の第2の実施の形態において、アドレスと、複数の経路の経路MTU情報、帯域情報及び予定時刻情報との対応関係の一例を示す図
以下、図面を参照しながら、本発明の第1及び第2の実施の形態について説明する。
<第1の実施の形態>
まず、本発明の第1の実施の形態について説明する。最初に、図1を参照しながら、本発明の第1の実施の形態のネットワーク構成について説明する。図1は、本発明の第1の実施の形態のネットワーク構成の一例を示すネットワーク構成図である。
図1において、ネットワーク中継装置(101)は、データ受信装置(102)あてのパケットを中継する装置である。データ送信装置(103)は、データ受信装置(102)をあて先としてパケットを送信する。
また、ネットワーク中継装置(101)とデータ受信装置(102)とは、ネットワークA(104)及びネットワークB(105)のそれぞれによってつながっている。ネットワーク中継装置(101)は、データ受信装置(102)あてのパケットをネットワークA(104)経由、又はネットワークB(105)経由のどちらかを選択して転送する。
また、ネットワーク中継装置(101)とデータ送信装置(103)とは、ネットワークC(106)によってつながっている。データ送信装置(103)が送信したデータ受信装置(102)あてのパケットは、ネットワークC(106)を経由してネットワーク中継装置(101)に届き、ネットワーク中継装置(101)によって転送される。なお、以下ではネットワーク中継装置(101)とデータ受信装置(102)の間の経路が2つの場合を一例に挙げて説明するが、経路の数は3つ以上であってもよい。
本発明は、複数の経路が存在するときに、送信元の通信装置に、複数の経路のそれぞれの経路MTUの値を通知することを特徴とする。すなわち、ネットワーク中継装置(101)とデータ受信装置(102)との間に複数の経路(ここでは、ネットワークA(104)を経由する経路とネットワークB(105)を経由する経路)が存在する場合、これらの各経路の経路MTUの値が、データ送信装置(103)に通知される。なお、この情報(各経路の経路MTUの値)を通知する通信装置は、ネットワーク中継装置(101)及びデータ受信装置(102)のいずれか一方又は両方である。データ送信装置(103)は、複数の経路が存在することを知り、さらにそれぞれの経路の経路MTUを知ることによって、複数の経路を有効に利用してデータを伝送することが可能となる。
データ送信装置(103)とデータ受信装置(102)との間の経路MTUの値は、ネットワークA(104)、ネットワークB(105)、ネットワークC(106)のそれぞれのMTUの値によって決まる。以下、ネットワークA(104)、ネットワークB(105)、ネットワークC(106)のそれぞれのMTUの値を、MTU_A、MTU_B、MTU_Cと表記する。これらのネットワークのMTUの値の大小関係によって、経路MTU(データ送信装置103とデータ受信装置102の間の経路全体のMTU)は異なってくる。そこで、ネットワークのMTUの値の大小関係を次のように場合分けする。ただし、煩雑さを避けるためにネットワークA(104)及びネットワークB(105)のMTUの値の大小関係を、MTU_A≧MTU_Bとして説明する。
(1)MTU_B ≦ MTU_A ≦ MTU_C
(2)MTU_B ≦ MTU_C ≦ MTU_A
(3)MTU_C ≦ MTU_B ≦ MTU_A
また、ネットワーク中継装置(101)、データ受信装置(102)、データ送信装置(103)がそれぞれ、本発明に係る複数の経路が存在する場合のマルチ経路MTU情報(複数の経路MTU情報)を通知する技術に対応しているかどうかによっても状況が異なるため、次のように場合分けを行う。
(A)すべての通信装置が対応している。
(B)ネットワーク中継装置(101)が未対応で、データ受信装置(102)及びデータ送信装置(103)が対応している。
(C)データ受信装置(102)が未対応で、ネットワーク中継装置(101)及びデータ送信装置(103)が対応している。
(D)データ送信装置(103)が未対応で、ネットワーク中継装置(101)及びデータ受信装置(102)は、対応している場合と対応していない場合とがある。
これらの2種類の場合分けを組み合わせると、次のように12通りの場合が考えられる。
(1−A)MTU_B ≦ MTU_A ≦ MTU_C すべての装置が対応
(1−B)MTU_B ≦ MTU_A ≦ MTU_C ネットワーク中継装置が未対応
(1−C)MTU_B ≦ MTU_A ≦ MTU_C データ受信装置が未対応
(1−D)MTU_B ≦ MTU_A ≦ MTU_C データ送信装置が未対応
(2−A)MTU_B ≦ MTU_C ≦ MTU_A すべての装置が対応
(2−B)MTU_B ≦ MTU_C ≦ MTU_A ネットワーク中継装置が未対応
(2−C)MTU_B ≦ MTU_C ≦ MTU_A データ受信装置が未対応
(2−D)MTU_B ≦ MTU_C ≦ MTU_A データ送信装置が未対応
(3−A)MTU_C ≦ MTU_B ≦ MTU_A すべての装置が対応
(3−B)MTU_C ≦ MTU_B ≦ MTU_A ネットワーク中継装置が未対応
(3−C)MTU_C ≦ MTU_B ≦ MTU_A データ受信装置が未対応
(3−D)MTU_C ≦ MTU_B ≦ MTU_A データ送信装置が未対応
以下、それぞれの場合について説明を行う。
まず、(1−A)の場合について、図2を参照しながら説明する。図2は、本発明の第1の実施の形態における(1−A)の場合のマルチ経路MTU情報の通知状態を示す図である。ネットワークのMTUの大小関係は、MTU_B ≦ MTU_A ≦ MTU_Cであるため、経路MTUはMTU_A又はMTU_Bである。また、ネットワーク中継装置(101)とデータ受信装置(102)のどちらもマルチ経路MTU情報の通知に対応しているため、データ送信装置(103)には、マルチ経路MTU情報(MTU_A及びMTU_Bの両方の経路MTU情報)が通知される。また、データ送信装置(103)もマルチ経路MTU情報に対応しているため、受信したマルチ経路MTU情報の経路MTU(MTU_A及びMTU_B)に従って、データを送信することができる。
次に、(1−B)の場合について、図3を参照しながら説明する。図3は、本発明の第1の実施の形態における(1−B)の場合のマルチ経路MTU情報の通知状態を示す図である。ネットワークMTUの大小関係は、MTU_B ≦ MTU_A ≦ MTU_Cであるため、経路MTUはMTU_A又はMTU_Bである。しかしながら、ネットワーク中継装置(101)が未対応(マルチ経路MTU情報の通知を行うことができない)であるため、ネットワーク中継装置(101)がデータ送信装置(103)に通知する経路MTUの値は、MTU_A及びMTU_Bのいずれか一方のみである。
ネットワーク中継装置(101)は、従来の技術のPath MTU Discoveryの動作によって、経路MTUの値(1つのみ)をデータ送信装置(103)に通知する。一方、データ受信装置(102)は、マルチ経路MTU情報に対応しているため、MTU_A及びMTU_Bの両方の値を通知する。
データ送信装置(103)は、マルチ経路MTU情報に対応しているため、データ受信装置(102)からマルチ経路MTU情報が通知され、かつネットワーク中継装置(101)からMTU_Aが通知された場合には、(1−A)の場合と同様に、受信したマルチ経路MTU情報の経路MTUに従ってMTU_AとMTU_Bの両方を考慮してパケット長を選択し、データを送信する。一方、データ受信装置(102)からマルチ経路MTU情報が通知され、かつネットワーク中継装置(101)からMTU_Bが通知された場合には、MTU_B≦MTU_Aの関係を考慮し、経路MTUをMTU_Bとしてパケット長を決めてパケットを送信する。
次に、(1−C)の場合について、図4を参照しながら説明する。図4は、本発明の第1の実施の形態における(1−C)の場合のマルチ経路MTU情報の通知状態を示す図である。ネットワークMTUの大小関係は、MTU_B ≦ MTU_A ≦ MTU_Cであるため、経路MTUはMTU_A又はMTU_Bである。データ受信装置(102)が未対応であるから、マルチ経路MTU情報は、ネットワーク中継装置(101)だけからデータ送信装置(103)に通知される。データ送信装置(103)は、(1−A)の場合と同様に、受信したマルチ経路MTU情報の経路MTUの値(MTU_A及びMTU_B)に従ってパケット長を選択し、データを送信することができる。
次に、(1−D)の場合について説明する。ネットワークMTUの大小関係は、MTU_B ≦ MTU_A ≦ MTU_Cであるため、経路MTUはMTU_A又はMTU_Bである。しかしながら、データ送信装置(103)はマルチ経路MTU情報に未対応であるため、ネットワーク中継装置(101)が従来の技術のPath MTU Discoveryの動作によって通知した経路MTUの値を用いて、データ送信装置(103)はパケット長を制御し送信する。すなわち、ネットワーク中継装置(101)がMTU_Aの値を通知しているときは、データ送信装置(103)は、経路MTUの値としてMTU_Aの値を用い、一方、ネットワーク中継装置(101)がMTU_Bの値を通知しているときは、データ送信装置(103)は、経路MTUの値としてMTU_Bの値を用いてパケット長を制御する。
次に、(2−A)の場合について、図5を参照しながら説明する。図5は、本発明の第1の実施の形態における(2−A)の場合のマルチ経路MTU情報の通知状態を示す図である。ネットワークMTUの大小関係は、MTU_B ≦ MTU_C ≦ MTU_Aであるため、経路MTUはMTU_B又はMTU_Cである。ここでは、すべての装置がマルチ経路MTU情報に対応しており、ネットワーク中継装置(101)及びデータ受信装置(102)は、データ送信装置(103)にマルチ経路MTU情報(MTU_A及びMTU_Bの両方の情報)を通知する。一方、ネットワークC(106)からデータ送信装置(103)には、従来のPath MTU Discoveryの動作の結果として、MTU_Cの値が通知される。
データ送信装置(103)は、マルチ経路MTU情報(MTU_A及びMTU_Bの両方の情報)とネットワークC(106)から通知されたMTU_Cを用いて、MTU_BとMTU_Cの両方を考慮してパケット長を選択し、データを送信する。すなわち、MTU_AはMTU_Cより大きい値のため、データ送信装置(103)は、MTU_Cより小さい値でなければあて先のデータ受信装置(102)には届かないことを知ることができ、経路MTUとしてMTU_BとMTU_Cの両方を利用することが可能となる。
次に、(2−B)の場合について、図6を参照しながら説明する。図6は、本発明の第1の実施の形態における(2−B)の場合のマルチ経路MTU情報の通知状態を示す図である。ネットワークMTUの大小関係は、MTU_B ≦ MTU_C ≦ MTU_Aであるため、経路MTUはMTU_B又はMTU_Cである。ここでは、ネットワーク中継装置(101)が未対応であるため、ネットワーク中継装置(101)は、MTU_Bの値を通知するか、何も通知しないかのどちらかを行う。すなわち、MTU_C ≦ MTU_Aの大小関係のため、ネットワーク中継装置(101)がMTU_Aを通知する状況にはならない。一方、データ受信装置(102)は、データ送信装置(103)にマルチ経路MTU情報(MTU_A及びMTU_Bの両方の情報)を通知する。データ送信装置(103)は、ネットワーク中継装置(101)からMTU_Bを通知された場合には、MTU_Bの値を経路MTUとしてパケット長を制御してパケットを送信する。一方、それ以外の場合には(2−A)と同様に、MTU_B及びMTU_Cの両方の値を考慮してパケット長を選択し、データを送信する。
次に、(2−C)の場合について、図7を参照しながら説明する。図7は、本発明の第1の実施の形態における(2−C)の場合のマルチ経路MTU情報の通知状態を示す図である。ネットワークMTUの大小関係は、MTU_B ≦ MTU_C ≦ MTU_Aであるため、経路MTUはMTU_B又はMTU_Cである。ここでは、データ受信装置(102)が未対応であるから、マルチ経路MTU情報は、ネットワーク中継装置(101)だけからデータ送信装置(103)に通知される。データ送信装置(103)は、(2−A)の場合と同様に、MTU_B及びMTU_Cの両方の値を考慮してパケット長を選択し、データを送信する。
次に、(2−D)の場合について説明する。ネットワークMTUの大小関係は、MTU_B ≦ MTU_C ≦ MTU_Aであるため、経路MTUはMTU_B又はMTU_Cである。しかしながら、データ送信装置(103)はマルチ経路MTU情報に未対応であるため、ネットワーク中継装置101が従来の技術のPath MTU Discoveryの動作によってMTU_Bの値を通知した場合には、MTU_Bの値を経路MTUとし、それ以外の場合にはネットワークC(106)より通知されたMTU_Cの値を経路MTUとして、パケット長を制御し送信する。
次に、(3−A)、(3−B)、(3−C)、(3−D)の場合について説明する。ネットワークMTUの大小関係は、MTU_C ≦ MTU_B ≦ MTU_Aであるため、経路MTUはMTU_Cである。どの通信装置がマルチ経路MTU情報に対応しているか、又は対応していないかに関係なく、データ送信装置(103)は、MTU_Cの値を経路MTUとして、パケット長を制御し送信する。
次に、各通信装置の構成及び動作について説明する。まず、ネットワーク中継装置の構成を、図8を用いて説明する。図8は、本発明の第1の実施の形態におけるネットワーク中継装置の構成の一例を示すブロック図である。図8に図示されているネットワーク中継装置(101)は、経路MTU探索部(801)、Link MTU保存部(802)、マルチ経路MTU情報作成部(803)、マルチ経路MTU情報通知部(804)、マルチ経路MTU情報保存部(805)、パケット受信部(806)、パケット転送先判定部(807)、パケット送信部(808)を有している。
経路MTU探索部(801)は、Path MTU Discoveryなどによって経路MTUを調べる処理部である。また、Link MTU保存部(802)は、Link MTUの設定値を保存しておく処理部である。なお、経路MTUは、Link MTUより大きな値になることはない。また、マルチ経路MTU情報作成部(803)は、経路MTU探索部(801)及びLink MTU保存部(802)からのMTUの情報を基にしてマルチ経路MTU情報を作成する処理部である。マルチ経路MTU情報には複数の経路のそれぞれの経路MTUがそれぞれ含まれている。
また、マルチ経路MTU情報通知部(804)は、マルチ経路MTU情報作成部(803)で作成されたマルチ経路MTU情報をデータ送信装置(103)に送信する処理部である。また、マルチ経路MTU情報保存部(805)は、マルチ経路MTU情報作成部(803)が作成したマルチ経路MTU情報を保存する処理部である。マルチ経路MTU情報保存部(805)に保存されたマルチ経路MTU情報を利用して、ネットワーク中継装置(101)は、パケットの転送処理のときに転送パケットを送出する経路選択を行う。
また、パケット受信部(806)は、パケットを受信する処理部であり、データ送信装置(103)からのデータを受信する。また、パケット転送先判定部(807)は、受信したパケットを転送するときに、どの経路に送出するかを判定する処理部である。この判定の際に、マルチ経路MTU情報保存部(805)に保存されているマルチ経路MTU情報が参照される。また、パケット送信部(808)は、パケット転送先判定部(807)によって決定された経路にパケットを送出する処理部であり、データ受信装置(102)に向けてパケットを送出する。なお、複数の出力インタフェースを有する場合には、パケット送信部(808)は複数存在し、それぞれにLink MTUが存在する。
ネットワーク中継装置(101)は、マルチ経路MTU情報を作成する。あるあて先にパケットを送信するとき、そのあて先にパケットを送ることによって(すなわち、従来の技術のPath MTU Discoveryの方法によって)、そのあて先までの経路MTUを知ることができる。定期的又はパケットを送信する必要性が発生した場合に、効率的に帯域を利用するために、意図的にパケット長の大きなパケットを送信し、経路MTUの探索が行われる。この経路MTU探索処理は、経路MTU探索部(801)によって行われる。
また、ネットワーク中継装置(101)は、各インタフェースのLink MTUを超えるパケットを送信することはできない。このLink MTUの値を保持しているのがLink MTU保存部(802)である。ネットワーク中継装置(101)は、経路MTU探索部(801)が調べた経路MTUの値を用いて、マルチ経路MTU情報作成部(803)によってマルチ経路MTU情報を作成する。マルチ経路MTU情報作成部(803)によって作成されたマルチ経路MTU情報は、マルチ経路MTU情報通知部(804)によりデータ送信装置(103)に通知されるともに、マルチ経路MTU情報保存部(805)によって保存される。
なお、ネットワーク中継装置(101)は、データ送信装置(103)からデータを受信し始めてからマルチ経路MTU情報を作成し、通知してもよい。また、接続している経路状況が変化し、新しく経路が増えたり、減ったりしたときに、データ送信装置(103)に通知してもよい。
ネットワーク中継装置(101)は、マルチ経路MTU情報を通知する。ネットワーク中継装置(101)は、あるあて先にパケットを送信又は転送するとき、複数の出力インタフェースに送信することが可能なら(すなわち、複数の経路が存在する場合には)、それぞれの経路MTUを経路MTU探索部(801)によって調べ、その値を使ってマルチ経路MTU情報を作成する。なお、このマルチ経路MTU情報は、ネットワーク中継装置(101)が転送処理を行う際にも使用されるが、この情報をデータの送信元においても使用可能となるように、マルチ経路MTU情報通信部(804)からデータ送信装置(103)に向けて送信することが可能である。
ネットワーク中継装置(101)は、マルチ経路MTU情報を利用してパケットの転送処理を行う。ネットワーク中継装置(101)は、データ送信装置(103)が送信したパケットをパケット受信部(806)によって受信し、受信したパケットを転送する際には、複数の経路が存在する場合、マルチ経路MTU情報保存部(805)に保存されているマルチ経路MTU情報を使って、送出する出力インタフェースを決定する。一方、マルチ経路MTU情報が保存されていない場合には、経路MTU探索部(801)を用いて各経路の経路MTUを探索し、その情報を用いてマルチ経路MTU情報作成部(803)によってマルチ経路MTU情報を作成する。また、マルチ経路MTU情報が古い情報になった場合には、新たにマルチ経路MTU情報を更新する。この更新処理は定期的に行ってもよいし、ネットワーク構成が変更されたときに行ってもよい。
また、ネットワーク中継装置(101)は、送出する経路を判定する際には、パケット長に合わせて経路の選択を行う。なお、1つの経路に負荷が集中しないように、各経路に送出したパケット量の統計情報を保持し、その情報に基づいて判定を行ってもよい。また、経路の帯域情報を利用して、各経路の帯域に合わせて、送出する経路を判定してもよい。また、経路がメンテナンスなどによって使用可能になる予定時間や使えなくなる予定時間が分かっている場合には、その情報を判定材料としてもよい。ネットワーク中継装置(101)は、マルチ経路MTU情報保存部(805)に保存したマルチ経路MTU情報を利用して、パケット転送先判定部(807)によってパケットの送出先を決定し、パケット送信部(808)を用いてパケットをデータ受信装置(102)に向けて転送する。
次に、図9を参照しながら、データ受信装置(102)の構成ついて説明する。図9は、本発明の第1の実施の形態におけるデータ受信装置の構成の一例を示すブロック図である。図9に図示されているデータ受信装置(102)は、経路MTU探索部(901)、Link MTU保存部(902)、マルチ経路MTU情報作成部(903)、マルチ経路MTU情報通知部(904)、マルチ経路MTU情報保存部(905)、データ受信部(906)を有している。
経路MTU探索部(901)は、Path MTU Discoveryなどによって経路MTUを調べる処理部である。また、Link MTU保存部(902)は、Link MTUの設定値を保存しておく処理部である。また、マルチ経路MTU情報作成部(903)は、経路MTU探索部(901)及びLink MTU保存部(902)からのMTUの情報を基にして、マルチ経路MTU情報を作成する処理部である。また、マルチ経路MTU情報通知部(904)は、マルチ経路MTU情報作成部(903)で作成されたマルチ経路MTU情報をデータ送信装置(103)に送信する処理部である。また、マルチ経路MTU情報保存部(905)は、マルチ経路MTU情報作成部(903)が作成したマルチ経路MTU情報を保存する処理部である。また、データ受信部(906)は、データ送信装置(103)が送信したデータ(パケット)を受信する処理部である。
データ受信装置(102)は、マルチ経路MTU情報の作成を行う。あるあて先にパケットを送信するとき、そのあて先にパケットを送ることによって(すなわち、従来の技術のPath MTU Discoveryの方法によって)、そのあて先までの経路MTUを知ることができる。データ受信装置(102)は、データ送信装置(103)にパケットを送信するとき、出力可能なインタフェースが複数存在すること(すなわち、複数の経路があること)を知っているため、どちらの経路を使ってデータが伝送されたほうが効率的かを調べることができる。また、複数の経路となる対向の通信装置(ここではネットワーク中継装置(101))を知っている場合には、ネットワーク中継装置(101)をあて先として、経路MTUを探索してもよい。また、データ送信装置(103)をあて先として、経路MTUを探索してもよい。
データ受信装置(102)は、経路MTU探索部(901)を用いてデータ送信装置(103)に通知するための経路MTUの値を探索する。データ受信装置(102)は、複数の経路のどちらを用いて経路MTUの探索を行うかを選別して調べることができる。経路MTU探索部(901)によって探索された経路MTUの値とLink MTU保存部(902)に保存されているLink MTUの値とを用いて、マルチ経路MTU情報作成部(903)は、マルチ経路MTU情報を作成する。マルチ経路MTU情報作成部(903)によって作成されたマルチ経路MTU情報は、マルチ経路MTU情報通知部(904)に渡され、マルチ経路通知部(904)によってデータ送信装置(103)に通知される。また、マルチ経路MTU情報は、マルチ経路MTU情報保存部(905)に渡され保存される。
なお、マルチ経路MTU情報保存部(905)に保存されたマルチ経路MTU情報を、定期的にマルチ経路MTU情報通知部(904)より、データ送信装置(103)に通知してもよい。データ受信装置(102)は、データ送信装置(103)からデータを受信し始めてからマルチ経路MTU情報を作成し、通知してもよい。また、接続している経路状況が変化し、新しく経路が増えたり、減ったりしたときに、データ送信装置(103)に通知してもよい。
また、データ受信装置(102)は、マルチ経路MTU情報の通知を行う。データ受信装置(102)は、自身が複数のインタフェースを持ち、データ送信装置(103)からのパケットがどの経路を通っても到達する場合、複数の経路が有効に利用されるように、マルチ経路MTU情報をデータ送信装置(103)に通知する。この通知は、定期的に行われてもよく、また、マルチ経路の状態が変わったときに行われてもよい。経路の状況が変わったときに通知することは、ネットワーク帯域の有効利用のために望ましい。
次に、図10を参照しながら、データ送信装置(103)の構成について説明する。図10は、本発明の第1の実施の形態におけるデータ送信装置の構成の一例を示すブロック図である。図10に図示されているデータ送信装置(103)は、経路MTU探索部(1001)、Link MTU保存部(1002)、マルチ経路MTU情報設定部(1003)、マルチ経路MTU情報受信部(1004)、マルチ経路MTU情報保存部(1005)、データ作成部(1006)、パケット長制御部(1007)、パケット送信部(1008)を有している。
経路MTU探索部(1001)は、Path MTU Discoveryなどによって経路MTUを調べる処理部である。また、Link MTU保存部(1002)は、Link MTUの設定値を保存しておく処理部である。また、マルチ経路MTU情報設定部(1003)は、マルチ経路MTU情報受信部(1004)によって受信したマルチ経路MTU情報、経路MTU探索部(1001)により取得した経路MTUの値、Link MTU保存部(1002)からのMTUの値、これらの情報を基にしてマルチ経路MTU情報を作成し、マルチ経路MTU情報保存部(1005)に渡す。また、マルチ経路MTU情報受信部(1004)は、ネットワーク中継装置(101)やデータ受信装置(102)から通知されるマルチ経路MTU情報を受信する処理部である。また、マルチ経路MTU情報保存部(1005)は、マルチ経路MTU情報設定部(1003)が作成したマルチ経路MTU情報を保存する処理部である。また、データ作成部(1006)は、データ受信装置(102)に送信するデータを作成する。また、パケット長制御部(1007)は、作成したデータをパケットとして送出するときにパケット長を決定する処理部である。マルチ経路MTU情報保存部(1005)に保存されたマルチ経路MTU情報を利用して、パケット長制御部(1007)は、パケット送信処理のときにパケット長の制御を行う。すなわち、パケット長制御部(1007)は、パケット長を決めるときに、マルチ経路MTU情報保存部(1005)に保存されているマルチ経路MTU情報を利用する。また、パケット送信部(1008)は、パケット長制御部(1007)によって決定されたパケット長に従ってパケットを送出する処理部であり、データ受信装置(102)に向けてパケットを送出する。
データ送信装置(103)は、マルチ経路MTU情報を受信し、パケット長の制御に利用できるように保存する。経路MTUの大小関係、及び各装置がマルチ経路MTU情報に対応しているか対応していないかの場合分けにおいて説明したように、データ送信装置(103)とネットワーク中継装置(101)との間の経路の経路MTUの値(すなわち、MTU_C)が、パケット長を決定するときに重要となる場合がある。データ送信装置(103)は、ネットワーク中継装置(101)及びデータ受信装置(102)のどちらか一方又は両方から、マルチ経路MTU情報を受信する。さらに、経路MTU探索部(1001)によって経路探索の結果を受信する。これらの情報を用いて、マルチ経路MTU情報設定部(1003)は、マルチ経路MTU情報を作成し、マルチ経路MTU情報保存部(1005)に保存する。
データ送信装置(103)は、マルチ経路MTU情報を利用してパケット長を決定し、データを送信する。データ送信装置(103)は、データ受信装置(102)に送信するデータをデータ作成部(1006)において作成する。データ作成部(1006)で作成されたデータをパケットによって運ぶ場合に、パケット長制御部(1007)がそのパケット長を決定する。また、パケット長制御部(1007)は、パケット長を決定する際に、マルチ経路MTU情報保存部(1005)に保存されているマルチ経路MTU情報を利用する。
なお、パケット長の決め方は、複数の経路の帯域を有効に活用できるように決めることが望ましい。経路MTUの小さい値だけを用いると、経路MTUの大きいネットワークの帯域を有効に利用することはできない。また逆に、経路MTUの大きい値だけを用いると、経路MTUの小さいネットワークにはパケットが流れなくなり、複数存在している経路を有効に利用できなくなる。したがって、複数存在する経路の各経路MTUの値のいずれか1つだけを使うのではなく、負荷を分散(すなわち、経路を分散)するようにパケット長を制御することが望ましい。また、送信するデータの特徴を加味することも重要である。例えば、優先度の高いデータは経路MTUの大きいネットワークに流れるように、そのパケット長を大きくし、それ以外のパケットを小さくするように制御してもよい。また、UDP(User Datagram Protocol)パケットなどのようなフラグメントを避けたいパケットを優先的に、大きな経路MTUに合わせるようにしてもよい。
次に、マルチ経路MTU情報を通知する方法について説明する。マルチ経路MTU情報を通知するための専用のメッセージを定義することも可能であるが、ここでは、拡張ヘッダのDestination Option Headerを拡張する方法について説明する。なお、Destination Option Headerに関しては、RFC2460に規定されている。
Destination Option Headerを用いた場合には、マルチ経路MTU情報を通常のデータパケットに付加することや、Path MTU Discoveryで使用するICMPメッセージのPacket Too Bigにマルチ経路MTU情報を付加することも可能となる。また、マルチ経路MTU情報に未対応の通信装置が、このマルチ経路MTU情報を付加されたパケットを受信した場合に、この通信装置は、Destination Option Headerによって付加されているマルチ経路MTU情報のオプション箇所だけを無視することができる。そのため、Destination Option Headerを用いた場合には、本発明に未対応の既存の通信装置に対して影響を与えることなく、マルチ経路MTU情報を使用することが可能となる。
以下、図11を参照しながら、マルチ経路MTU情報をDestination Option Headerに付加する例について説明する。図11は、本発明の第1の実施の形態において、マルチ経路MTU情報を運ぶためのDestination Option Headerの一例を示す図である。図11において、Next Header(1101)、Hdr Ext Length(1102)、Option Type(1103)、Opt Data Length(1104)は、RFC2460に定義されている領域である。上記のOption Type(1103)には、マルチ経路MTU情報であることが分かる値が設定される。この設定値によって、データ送信装置(103)がマルチ経路MTU情報に対応している場合には、この情報の処理を行い、一方、マルチ経路MTU情報に対応していない場合には、この情報を単に無視する。
また、図11における経路情報サイズ(1105)の領域には、経路情報サイズ(容量)が設定される。ここではマルチ経路MTU情報として経路MTUを含む場合について説明するが、後述のように、この経路MTU情報に加えて、各MTUに関連した帯域情報や、各経路が使用可能又は使用不可能なる予定時刻情報を含むことも可能となる。具体的には、経路情報サイズは、経路MTUだけの場合は4バイト、帯域情報又は予定時刻情報のどちらかを含む場合は8バイト、両方とも含む場合は12バイトとなる。また、マルチ経路MTU情報が、上記以外の経路に関連する情報を含むようにすることも可能である。
また、図11における経路数(1106)の領域には、経路の数が設定される。なお、上述の例では2つの経路が存在するため、この場合には、経路数の値は2に設定される。また、経路が3以上の場合には、その経路数がこの領域に設定される。また、図11におけるフラグ(1107)の領域には、フラグが設定される。このフラグによって続く情報が経路MTUの値なのか、帯域情報なのか、あるいは予定時刻情報なのかなどのように、情報の種類が区別される。例えば、“0”は経路MTU情報、“1”は帯域情報、“2”は予定時刻情報などのようにあらかじめ定められることが望ましい。また、図11において、経路MTU(1108)の領域には、経路MTUの値(MTU_AやMTU_B)が設定される。
また、図12に、マルチ経路MTU情報に帯域情報や予定時刻情報を含めた場合のDestination Option Headerの一例を示す。上述のように、マルチ経路MTU情報に挿入される情報の種類は、フラグによって区別される。なお、図12には、経路MTUの値、帯域情報、予定時刻情報がマルチ経路MTU情報に挿入されている場合が図示されているが、他の情報もフラグの値を定義することによって利用することが可能となる。また、帯域情報や予定時刻情報は、どちらか一方だけ含まれてもよく、また、両方含まれていてもよい。また、ネットワーク中継装置(101)及びデータ受信装置(102)は、マルチ経路MTU情報を作成する際に、これらの情報を含めて、マルチ経路MTU情報を作成する。
帯域情報には、例えば、あらかじめ通信装置に設定された値が用いられる。これは、通信装置が接続しているネットワークによって帯域が異なることによる。なお、通信装置が実際に帯域を測定して、その測定結果をマルチ経路MTU情報に含めてもよい。また、予定時刻情報も、例えば、あらかじめ通信装置に設定された値が用いられる。例えばネットワークのメンテナンスの予定などが知らされた場合には、通信装置にその情報が設定されることが考えられ、この設定された値が予定時刻情報に利用される。なお、予定時刻情報には、ネットワークが使用できなくなる時刻や時間帯が記載されてもよく、また、ネットワークの使用を開始できる時刻や、使用可能な時間帯が記載されてもよい。
ここで、帯域情報を含むマルチ経路MTU情報が使用される例について、図1を参照しながら説明する。ネットワーク中継装置(101)及びデータ受信装置(102)には、帯域情報が、例えばオペレータによって手動設定されてもよい。また、帯域情報は、例えば、ルーティングプロトコルなどによって得られてもよい。また、実際に自動的に帯域の測定が行われてもよい。
例えば、経路Aが帯域10Mbpsの伝送レートを有しており、経路Bが帯域1MBpsの伝送レートを有しているとする。ネットワーク中継装置(101)及びデータ受信装置(102)は、この帯域情報を含むマルチ経路MTU情報をデータ送信装置(103)に送信し、このマルチ経路MTU情報を受信したデータ送信装置(103)は、受信したマルチ経路MTU情報に含まれる帯域情報に従って、MTU_Aに合わせたパケットとMTU_Bに合わせたパケットを10:1の比率で送信する。すなわち、経路MTUの情報だけではなく、帯域情報を組み合わせて用いるようにすることによって、データ送信装置(103)はパケット長を制御するための情報をより多く得ることができ、パケット長の制御をより有効に行うことが可能となる。
次に、それぞれの経路の使用可能又は使用不可能となる予定時刻情報を含むマルチ経路MTU情報が使用される例について、図1を参照しながら説明する。ネットワーク中継装置(101)には、予定時刻情報が、例えばオペレータによって手動設定されてもよい。また、データ受信装置(102)からの通知によって、予定時刻情報を得ることも可能である。
例えば、経路Bだけが使用可能な状態で、今の時刻が午後8:00として、午後8:10に経路Aが使用可能になることをネットワーク中継装置(101)が知っているとする。この状況は、例えばネットワーク工事やメンテナンスの予定があらかじめ通知されているような場合に起こり得る。ネットワーク中継装置(101)は、この経路Aが使用可能となる予定時刻情報(午後8:10)をマルチ経路MTU情報としてデータ送信装置(103)に送信する。経路Aが使用可能となる予定時刻情報を受信したデータ送信装置(103)は、パケット長制御部(1007)の切り替えをその予定時刻にあらかじめ設定しておくことができ、経路Aが使用可能となると同時又は使用可能になってから短い時間で、経路A及び経路Bの両方のネットワークリソースを有効に利用できる。
また、例えば経路A及び経路Bの両方が使用可能な状態で、今の時刻が午後8:00として、午後8:10に経路Aが使用不可能になることをネットワーク中継装置(101)又はデータ受信装置(102)が知っているとする。ネットワーク中継装置(101)又はデータ受信装置(102)は、この経路Aが使用できなくなる予定時刻情報(午後8:10)をマルチ経路MTU情報としてデータ送信装置(103)に送信する。経路Aが使用不可能となる予定時刻情報を受信したデータ送信装置(103)は、使用不可能となったときにはMTU_Bより大きなパケット長のパケットを送信しないようにすることができるため、エラーメッセージによるパケット長が大きいことの通知の受信及びパケットの再送信という事態や、ネットワーク中継装置(101)でのフラグメント処理の発生という事態などを回避することができ、ネットワークリソースを有効に活用することができる。なお、時刻の指定方法としては、今から10分後というような指定方法でもよい。また、時刻の指定は、上記のように分単位でもよく、また、秒単位やミリ秒単位でもよい。
次に、マルチ経路MTU発見方法について説明する。マルチ経路MTU発見方法とは、マルチ経路MTU情報を受信することによってマルチ経路の状態及びマルチ経路のそれぞれのMTUの値を知る方法である。すなわち、ネットワーク上に、ネットワーク中継装置(101)又はデータ受信装置(102)のいずれか一方又は両方が、複数の経路のそれぞれの経路MTU情報をマルチ経路MTU情報として作成するマルチ経路MTU情報作成ステップと、作成したマルチ経路MTU情報をデータ送信装置(103)に通知するマルチ経路MTU情報通知ステップと、データ送信装置(103)が、各経路の経路MTU情報を含むマルチ経路MTU情報を受信するマルチ経路MTU情報受信ステップと、データ送信装置(103)が、受信したマルチ経路MTU情報を解析するマルチ経路MTU情報解析ステップとが実行されることによって、データ送信装置(103)は、複数の経路のそれぞれの経路MTU情報を発見することができる。マルチ経路MTU情報の解析後、各経路MTU情報を用いてパケット長を適切に設定することによって、データ通信装置(103)は、複数の経路を有効に活用することができる。
次に、マルチ経路MTU発見システムについて説明する。マルチ経路MTU発見システムとは、マルチ経路MTU情報を作成及び通知するネットワーク中継装置(101)又はデータ受信装置(102)と、通知されたマルチ経路MTU情報を受信して活用するデータ送信装置(103)とにより構成される通信システムである。すなわち、パケット通信システムは、ネットワーク中継装置(101)及びデータ受信装置(102)の一方又は両方が、複数の経路のそれぞれの経路MTU情報をマルチ経路MTU情報として作成し、作成されたマルチ経路MTU情報をデータ送信装置(103)に通知し、データ送信装置(103)が、それぞれの経路の経路MTU情報を含むマルチ経路MTU情報を受信して解析を行うように構成されている。これにより、データ送信装置(103)は複数の経路のそれぞれの経路MTU情報を取得することが可能となり、各経路MTU情報を用いてパケット長を適切に設定することによって、データ通信装置(103)は、複数の経路を有効に活用することができる。
以上、説明したように、本発明の第1の実施の形態によれば、ルーティング経路がマルチ経路の場合に、パケットの中継ノード又は受信ノードが、それぞれの経路の経路MTU情報を含むマルチ経路MTU情報を作成して、パケットの送信元ノードに対して通知することによって、マルチ経路状態において、パケットの送信元ノードが適切なパケット長を設定できるようにし、ネットワークリソースを有効に活用することが可能となる。
<第2の実施の形態>
次に、本発明の第2の実施の形態について説明する。図13は、本発明の第2の実施の形態のネットワーク構成の一例を示すネットワーク構成図である。図13に図示されている本発明の第2の実施の形態のネットワーク構成と、図1に図示されている本発明の第1の実施の形態のネットワーク構成とを比較すれば分かるように、本発明の第2の実施の形態では、ホームエージェント(1301)がネットワーク中継装置(101)として動作し、モバイルノード(1302)がデータ受信装置(102)として動作し、コレスポンデントノード(CN:Correspondent Node)(1303)がデータ送信装置(103)として動作する。
ホームエージェント(1301)は、モバイルノード(1302)のホームアドレスあてのパケットを受信した場合、モバイルノード(1302)の気付アドレスあてにパケットを転送するネットワーク中継装置である。図13ではホームエージェント(1301)及びモバイルノード(1302)は、ネットワークA(1304)及びネットワークB(1305)によって接続されている。例えば、ネットワークAが携帯電話網であり、ネットワークBが無線LAN(例えば、IEEE 802.11b)などの場合が想定可能である。また、ホームエージェント1301は、コレスポンデントノード(1303)とネットワークC(1306)でつながっている。例えば、ネットワークCはインターネットなどが考えられる。
モバイルノード(1302)は、コレスポンデントノード(1303)から送信されたパケットを、ホームエージェント(1301)経由で受信する。モバイルノード(1302)は、ホームエージェント(1301)とネットワークA(1304)及びネットワークB(1305)のそれぞれを介してつながっている。
コレスポンデントノード(1303)は、モバイルノード(1302)のホームアドレスあてにパケットを送信する。ホームアドレスあてに送信されたパケットは、ホームエージェント(1301)経由で気付アドレスに転送され、モバイルノード(1302)に届く。
一方、モバイルノード(1302)は、複数の気付アドレスをホームエージェント(1301)に登録する。モバイルノード(1302)は、ネットワークA(1304)及びネットワークB(1305)に接続されており、例えば、それぞれのアドレスを気付アドレスとしてホームエージェント(1301)に登録する。ここでは、それぞれの気付アドレスをCoA_A、CoA_Bと表記する。ホームエージェント(1301)には、モバイルノード(1302)の1つのホームアドレスHoAに対して、2つの気付アドレスCoA_A及びCoA_Bが登録される。これによって、ホームエージェント(1301)は、モバイルノード(1302)のホームアドレスあてのパケットを受信したとき、経路A(ネットワークA経由)でCoA_Aあてに転送するか、経路B(ネットワークB経由)でCoA_Bあてに転送するかを選択することが可能である。また、ホームエージェント(1301)は、パケット長によって経路を選択することも可能である。また、ホームエージェント(1301)は、複数の経路を効率的に利用できるように、それぞれの経路の負荷を分散させるように複数の経路のうちの各経路を選択することも可能である。
ここで、モバイルノード(1302)が複数のネットワークと接続する利点について説明する。例えば、モバイルノード(1302)が無線を使って通信を行っている場合、一般に無線ネットワークでは帯域が有線ネットワークと比較して小さいため、大きなデータは伝送されにくい。そのため、モバイルノード(1302)は、複数の無線経路を用いてデータを伝送することによって、単数の無線経路の場合より多くのデータを通信することができるようになる。
次に、ホームエージェント(1301)が作成するマルチ経路MTU情報について説明する。図14は、本発明の第2の実施の形態におけるモバイルノードの気付アドレスと経路MTU情報との対応関係の一例を示す図である。ホームエージェント(1302)は、図14に図示されているように、各アドレスと経路MTU情報との対応関係を把握している。ここでは、CoA_A(1401)をあて先とする場合の経路MTUの値がMTU_A(1403)であり、CoA_B(1402)をあて先とする場合の経路MTUの値がMTU_B(1404)であるという対応関係が設定されている。
また、図15は、本発明の第2の実施の形態におけるホームアドレスと気付アドレスとの対応関係の一例を示す図である。モバイルノード(1302)は、バインディング・アップデート・メッセージを送信し、ホームアドレスと気付アドレスとの対応関係を通知する。ここでは、ホームアドレスであるHoA(1501)に対応する気付アドレスが、CoA_A(1502)とCoA_B(1503)の2つ存在している状態が図示されている。
これらの情報からホームエージェント(1301)は、図16に図示されているように、ホームアドレスであるHoA(1601)あてのパケットの経路MTUとして、MTU_A(1602)及びMTU_B(1603)の2つが設定されたマルチ経路MTU情報を生成することができる。ホームエージェント(1301)は、このマルチ経路MTU情報をコレスポンデントノード(1303)に送信する。なお、マルチ経路MTU情報を送信する際のデータフォーマットとしては、例えば、上述の第1の実施の形態で示したDestination Option Header(図11を参照)を用いることができる。
また、データ受信装置(1302)の場合も、ホームエージェント(1301)の場合と同様に、マルチ経路MTU情報を作成することができる。図17には、図14に図示されている対応関係を拡張して、さらに、帯域情報及び予定時刻情報の対応関係が設定された状態が図示されている。また、図18には、帯域情報及び予定時刻情報を含むマルチ経路MTU情報の一例が図示されている。なお、帯域情報及び予定時刻情報を含むマルチ経路MTU情報をコレスポンデントノード(1303)に送信する際のデータフォーマットとしては、例えば、上述の第1の実施の形態で示したDestination Option Header(図12を参照)を用いることができる。
以上、説明したように、本発明の第2の実施の形態によれば、ホームエージェントが、上述の第1の実施の形態におけるネットワーク中継装置として動作し、モバイルノードが、上述の第1の実施の形態におけるデータ受信装置として動作し、データ送信装置が上述の第1の実施の形態におけるコレスポンデントノードとして動作することが可能である。
なお、上記の各実施の形態では、各通信装置の機能はブロック図によって図示されているが、これらの各機能は、ハードウェア及び/又はソフトウェア(プログラム)をコンピュータによって実行させることによって実現可能である。
また、上記の各実施の形態のそれぞれの説明に用いた各機能ブロックは、典型的には集積回路であるLSIとして実現される。これらは個別に1チップ化されてもよいし、一部又はすべてを含むように1チップ化されてもよい。ここでは、LSI(Large Scale Integration)としたが、集積度の違いにより、IC(Integrated Circuit)、システムLSI、スーパーLSI、ウルトラLSIと呼称されることもある。
また、集積回路化の手法はLSIに限るものではなく、専用回路又は汎用プロセッサで実現してもよい。LSI製造後に、プログラムすることが可能なFPGA(Field Programmable Gate Array)や、LSI内部の回路セルの接続や設定を再構成可能なリコンフィギュラブル・プロセッサを利用してもよい。
さらには、半導体技術の進歩又は派生する別技術によりLSIに置き換わる集積回路化の技術が登場すれば、当然、その技術を用いて機能ブロックの集積化を行ってもよい。例えば、バイオ技術の適応などが可能性としてあり得る。
本発明は、従来の経路MTU発見方法では解決できなかったマルチ経路状態において、パケットの送信元ノードが適切なパケット長を設定できるようにし、ネットワークリソースを有効に活用できるようにするという効果を有しており、MTUの発見に係る技術やマルチ経路によるパケット伝送技術に適用可能である。
本発明は、ノード及びリンクから構成されるパケット通信システムにおいて、マルチ経路の状態(パケットのルーティング経路が複数存在する状態)でパケット通信を行うネットワーク中継装置、データ受信装置、データ送信装置、マルチ経路MTU発見方法並びにマルチ経路MTU発見システムに関する。
従来の経路MTU(Maximum Transmission Unit)探索技術には、Path MTU DiscoveryやPath MTU Discovery for IPv6などの技術が存在している(下記の非特許文献1や非特許文献2を参照)。これらの技術は、送信側(送信元)の通信装置が、ルータなどのネットワーク中継装置によってパケットの分割(Fragmentation)が行われることを禁止したパケットを送信し、そのパケットが無事に受信側(あて先)の通信装置に届くかを確認するという方法である。
この方法では、送信側の通信装置によって送信されたパケットが経路MTUより大きなサイズの場合には、パケットは転送不可能となり、パケットを転送することができなかったネットワーク中継装置が、送信元に対してエラーメッセージを送信する。また、エラーメッセージが送信元の通信装置に届かなければ、エラーメッセージは返ってこないため、送信元の通信装置は、送信したパケット長より経路MTUが大きいことが分かる。
経路MTUを調べることのメリットは、ネットワークのリソースを有効に活用できることである。経路MTUより大きなサイズのパケットを送信した場合は、経路上のネットワーク中継装置がパケットを分割して細分化するか、又は送信元の通信装置にパケットを細分化して送信し直すようエラーメッセージを送信する。
ネットワーク中継装置が経路上で細分化する場合には、パケットの分割処理が発生し、ネットワークに負荷がかかる。また、細分化されたパケットにはそれぞれ新しくヘッダが付加されるため、データの伝送効率が低下する。一方、ネットワーク中継装置が送信元にエラーメッセージを送信する場合には、送信元は同じ内容のパケットを小さく分割し直して再送信しなければならない。
また逆に、経路MTUよりかなり小さなパケットを送信した場合は、同じデータ量をあて先に届けるためにより多くのパケットが必要となる。各パケットには決まったサイズのヘッダが付加されるため、伝送されるパケット内のデータ領域は相対的に小さくなり、伝送効率が低下する。
したがって、経路MTUにできるだけ近い長さであり、かつ経路MTUを超えないパケット長で送信することによって、伝送効率を向上させることができ、ネットワークリソースを有効に活用することができる。
また、非特許文献1、2に開示されているPath MTU Discovery以外の経路MTU探索方法として、例えば下記の特許文献1〜3に開示されている技術が知られている。
特許文献1では、動的に経路MTUが変化した場合に、ネットワーク側から送信元に変更された経路MTUを通知するという技術が開示されている。非特許文献1、2に開示されているPath MTU Discoveryでは、送信元が定期的に経路探索処理を行うことによって、経路MTUが大きな値に変わっていないかどうかを確認する必要があるが、特許文献1〜3に開示されている技術では、ネットワーク側から送信元の通信装置に経路MTUを通知することが可能である。
なお、特許文献1では、ネットワーク中継装置が送信元の通信装置に経路MTUを通知する場合に、非特許文献1、2に開示されているPath MTU Discoveryと同様に、ICMP(Internet Control and Management Protocol)メッセージのPacket Too Bigが利用されている。また、特許文献2では、ネットワーク中継装置が送信元の通信装置に経路MTUを通知する場合に、下記の非特許文献3に記載のモバイルIP(Internet Protocol:インターネットプロトコル)で定義されているバインディングアップデート(BU:Binding Update)メッセージが利用されている。また、特許文献3では、ネットワーク中継装置が送信元の通信装置に経路MTUを通知する場合に、特許文献1や特許文献2のように特定のメッセージを用いるのではなく、通常のパケットに拡張ヘッダ(Destination Option Header)を付加する方法が用いられている。
特開2004−48178号公報
特開2004−48181号公報
特開2005−57734号公報
Path MTU Discovery(RFC1191、1990年11月)
Path MTU Discovery for IPv6(RFC1981、 1996年8月)
Mobility Support in IPv6(RFC3775、2004年6月)
しかしながら、上述の従来の技術では、送信元からあて先にパケットが届くルーティング経路が複数存在するマルチ経路状態の場合には、異なる経路MTUを利用してネットワークリソースを有効に使うことができないという課題がある。
例えば複数の経路が存在し、ネットワークがこれらの複数の経路を利用してパケットを伝送しているとき、複数の経路の経路MTUが異なり、送信元のネットワーク通信装置が小さいほうの経路MTUの値だけを知っている場合には、ネットワーク側の視点では、複数存在する経路のうちの経路MTUの大きな経路には小さなパケットばかり流れ、ネットワークリソースを有効に使えないことになる。
逆に、送信元のネットワーク通信装置が大きいほうの経路MTUの値だけを知っている場合には、パケット長の大きなパケットが流れ、経路MTUの小さな経路にはあまりパケットが流れない状態(あるいは、経路MTUの小さな経路では、パケット分割処理によって細分化されたパケットが流れる状態)となり、同じくネットワークリソースを有効に使えないことになる。
すなわち、従来の経路MTU発見方法では、送信元からあて先にパケットが届く経路が複数存在するマルチ経路状態で、それぞれの経路の経路MTUが異なる場合には、複数の経路が存在するにもかかわらず、ネットワークリソースを有効に活用できないという課題がある。
本発明は、従来の経路MTU発見方法では解決できなかったマルチ経路状態において、パケットの送信元ノードが適切なパケット長を設定できるようにし、ネットワークリソースを有効に活用できるようにすることを目的とする。
上記の目的を達成するため、本発明のネットワーク中継装置は、ノード及びリンクから構成されるパケット通信システムにおいて、パケットを中継するネットワーク中継装置であって、
前記パケットのルーティング経路として複数の経路が存在する場合に、それぞれの経路の経路MTU情報を探索する経路MTU探索手段と、
前記経路MTU探索手段によって探索された前記複数の経路のそれぞれの経路MTU情報を含むマルチ経路MTU情報を作成するマルチ経路MTU情報作成手段と、
前記マルチ経路MTU情報を前記パケットの送信元に送信するマルチ経路MTU情報通知手段とを、
有する。
この構成により、パケットの送信元ノードが、複数の経路のそれぞれにかかる経路MTU情報を参照して、適切なパケット長を選択的に設定することが可能となり、ネットワークリソースが有効に活用される。
さらに、本発明のネットワーク中継装置は、上記の構成に加えて、前記マルチ経路MTU情報が、前記複数の経路のそれぞれの帯域情報及び/又は前記複数の経路のそれぞれの使用可/不可の予定時刻情報を有する。
この構成により、パケットの送信元ノードは、経路MTU情報に加えて帯域情報を考慮し、例えば、帯域の大きな経路の経路MTUに合わせてパケット長を制御することが可能となる。また、パケットの送信元ノードは、経路MTU情報に加えて予定時刻情報を考慮し、特定の経路が使用可能な時間帯に応じて、経路を使い分けることが可能となる。
さらに、本発明のネットワーク中継装置は、上記の構成に加えて、ホームエージェントとしての機能を有する。
また、上記の目的を達成するため、本発明のデータ受信装置は、ノード及びリンクから構成されるパケット通信システムにおいて、パケットを受信するデータ受信装置であって、
前記パケットのルーティング経路として複数の経路が存在する場合に、それぞれの経路の経路MTU情報を探索する経路MTU探索手段と、
前記経路MTU探索手段によって探索された前記複数の経路のそれぞれの経路MTU情報を含むマルチ経路MTU情報を作成するマルチ経路MTU情報作成手段と、
前記マルチ経路MTU情報を前記パケットの送信元に送信するマルチ経路MTU情報通知手段とを、
有する。
この構成により、パケットの送信元ノードが、複数の経路のそれぞれにかかる経路MTU情報を参照して、適切なパケット長を選択的に設定することが可能となり、ネットワークリソースが有効に活用される。
さらに、本発明のデータ受信装置は、上記の構成に加えて、前記マルチ経路MTU情報が、前記複数の経路のそれぞれの帯域情報及び/又は前記複数の経路のそれぞれの使用可/不可の予定時刻情報を有する。
この構成により、パケットの送信元ノードは、経路MTU情報に加えて帯域情報を考慮し、例えば、帯域の大きな経路の経路MTUに合わせてパケット長を制御することが可能となる。また、パケットの送信元ノードは、経路MTU情報に加えて予定時刻情報を考慮し、特定の経路が使用可能な時間帯に応じて、経路を使い分けることが可能となる。
さらに、本発明のデータ受信装置は、上記の構成に加えて、モバイルノードとしての機能を有する。
また、上記の目的を達成するため、本発明のデータ送信装置は、ノード及びリンクから構成されるパケット通信システムにおいて、パケットを送信するデータ送信装置であって、
前記パケットのルーティング経路として複数の経路が存在する場合に、それぞれの経路の経路MTU情報を含むマルチ経路MTU情報を、前記パケットを中継するネットワーク中継装置又は前記パケットを受信するデータ受信装置から受信するマルチ経路MTU情報受信手段と、
前記マルチ経路MTU情報受信手段で受信した前記マルチ経路MTU情報に基づいて、前記パケットのパケット長を決定するパケット長制御手段とを、
有する。
この構成により、パケットの送信元ノードが、複数の経路のそれぞれにかかる経路MTU情報を参照して、適切なパケット長を選択的に設定することが可能となり、ネットワークリソースが有効に活用される。
さらに、本発明のデータ送信装置は、上記の構成に加えて、前記マルチ経路MTU情報が、前記複数の経路のそれぞれの帯域情報及び/又は前記複数の経路のそれぞれの使用可/不可の予定時刻情報を有する。
この構成により、パケットの送信元ノードは、経路MTU情報に加えて帯域情報を考慮し、例えば、帯域の大きな経路の経路MTUに合わせてパケット長を制御することが可能となる。また、パケットの送信元ノードは、経路MTU情報に加えて予定時刻情報を考慮し、特定の経路が使用可能な時間帯に応じて、経路を使い分けることが可能となる。
さらに、本発明のデータ送信装置は、上記の構成に加えて、コレスポンデントノードとしての機能を有する。
また、上記の目的を達成するため、本発明のマルチ経路MTU発見システムは、ノード及びリンクから構成されるパケット通信システムにおいて、ネットワーク中継装置で中継されてデータ受信装置に伝送されるパケットの送信元であるデータ送信装置が、前記パケットのパケット長を決定するための経路MTU情報を取得するマルチ経路MTU発見方法であって、
前記ネットワーク中継装置又は前記データ受信装置が、前記パケットのルーティング経路として複数の経路が存在する場合に、それぞれの経路の経路MTU情報を探索する経路MTU探索ステップと、
前記ネットワーク中継装置又は前記データ受信装置が、前記経路MTU探索ステップによって探索された前記複数の経路のそれぞれの経路MTU情報を含むマルチ経路MTU情報を作成するマルチ経路MTU情報作成ステップと、
前記ネットワーク中継装置又は前記データ受信装置が、前記マルチ経路MTU情報を前記パケットの送信元に送信するマルチ経路MTU情報通知ステップと、
前記データ送信装置が、前記パケットのルーティング経路として複数の経路が存在する場合に、それぞれの経路の経路MTU情報を含むマルチ経路MTU情報を、前記ネットワーク中継装置又は前記データ受信装置から受信するマルチ経路MTU情報受信ステップと、
前記データ送信装置が、前記マルチ経路MTU情報受信ステップで受信した前記マルチ経路MTU情報に基づいて、前記パケットのパケット長を決定するパケット長制御ステップとを、
有する。
この方法により、パケットの送信元ノードが、複数の経路のそれぞれにかかる経路MTU情報を参照して、適切なパケット長を選択的に設定することが可能となり、ネットワークリソースが有効に活用される。
また、上記目的を達成するため、本発明のマルチ経路MTU発見システムは、ノード及びリンクから構成されるパケット通信システムにおいて、ネットワーク中継装置で中継されてデータ受信装置に伝送されるパケットの送信元であるデータ送信装置が、前記パケットのパケット長を決定するための経路MTU情報を取得するマルチ経路MTU発見システムであって、
前記データ送信装置が、
前記パケットのルーティング経路として複数の経路が存在する場合に、それぞれの経路の経路MTU情報を含むマルチ経路MTU情報を、前記ネットワーク中継装置又は前記データ受信装置から受信するマルチ経路MTU情報受信手段と、
前記マルチ経路MTU情報受信手段で受信した前記マルチ経路MTU情報に基づいて、前記パケットのパケット長を決定するパケット長制御手段とを有し、
前記ネットワーク中継装置又は前記データ受信装置が、
前記パケットのルーティング経路として複数の経路が存在する場合に、それぞれの経路の経路MTU情報を探索する経路MTU探索手段と、
前記経路MTU探索手段によって探索された前記複数の経路のそれぞれの経路MTU情報を含むマルチ経路MTU情報を作成するマルチ経路MTU情報作成手段と、
前記マルチ経路MTU情報を前記パケットの送信元に送信するマルチ経路MTU情報通知手段とを有する。
この構成により、パケットの送信元ノードが、複数の経路のそれぞれにかかる経路MTU情報を参照して、適切なパケット長を選択的に設定することが可能となり、ネットワークリソースが有効に活用される。
本発明は、従来の経路MTU発見方法では解決できなかったマルチ経路状態において、パケットの送信元ノードが適切なパケット長を設定できるようにし、ネットワークリソースを有効に活用できるようにするという効果を有している。
以下、図面を参照しながら、本発明の第1及び第2の実施の形態について説明する。
<第1の実施の形態>
まず、本発明の第1の実施の形態について説明する。最初に、図1を参照しながら、本発明の第1の実施の形態のネットワーク構成について説明する。図1は、本発明の第1の実施の形態のネットワーク構成の一例を示すネットワーク構成図である。
図1において、ネットワーク中継装置(101)は、データ受信装置(102)あてのパケットを中継する装置である。データ送信装置(103)は、データ受信装置(102)をあて先としてパケットを送信する。
また、ネットワーク中継装置(101)とデータ受信装置(102)とは、ネットワークA(104)及びネットワークB(105)のそれぞれによってつながっている。ネットワーク中継装置(101)は、データ受信装置(102)あてのパケットをネットワークA(104)経由、又はネットワークB(105)経由のどちらかを選択して転送する。
また、ネットワーク中継装置(101)とデータ送信装置(103)とは、ネットワークC(106)によってつながっている。データ送信装置(103)が送信したデータ受信装置(102)あてのパケットは、ネットワークC(106)を経由してネットワーク中継装置(101)に届き、ネットワーク中継装置(101)によって転送される。なお、以下ではネットワーク中継装置(101)とデータ受信装置(102)の間の経路が2つの場合を一例に挙げて説明するが、経路の数は3つ以上であってもよい。
本発明は、複数の経路が存在するときに、送信元の通信装置に、複数の経路のそれぞれの経路MTUの値を通知することを特徴とする。すなわち、ネットワーク中継装置(101)とデータ受信装置(102)との間に複数の経路(ここでは、ネットワークA(104)を経由する経路とネットワークB(105)を経由する経路)が存在する場合、これらの各経路の経路MTUの値が、データ送信装置(103)に通知される。なお、この情報(各経路の経路MTUの値)を通知する通信装置は、ネットワーク中継装置(101)及びデータ受信装置(102)のいずれか一方又は両方である。データ送信装置(103)は、複数の経路が存在することを知り、さらにそれぞれの経路の経路MTUを知ることによって、複数の経路を有効に利用してデータを伝送することが可能となる。
データ送信装置(103)とデータ受信装置(102)との間の経路MTUの値は、ネットワークA(104)、ネットワークB(105)、ネットワークC(106)のそれぞれのMTUの値によって決まる。以下、ネットワークA(104)、ネットワークB(105)、ネットワークC(106)のそれぞれのMTUの値を、MTU_A、MTU_B、MTU_Cと表記する。これらのネットワークのMTUの値の大小関係によって、経路MTU(データ送信装置103とデータ受信装置102の間の経路全体のMTU)は異なってくる。そこで、ネットワークのMTUの値の大小関係を次のように場合分けする。ただし、煩雑さを避けるためにネットワークA(104)及びネットワークB(105)のMTUの値の大小関係を、MTU_A≧MTU_Bとして説明する。
(1)MTU_B ≦ MTU_A ≦ MTU_C
(2)MTU_B ≦ MTU_C ≦ MTU_A
(3)MTU_C ≦ MTU_B ≦ MTU_A
また、ネットワーク中継装置(101)、データ受信装置(102)、データ送信装置(103)がそれぞれ、本発明に係る複数の経路が存在する場合のマルチ経路MTU情報(複数の経路MTU情報)を通知する技術に対応しているかどうかによっても状況が異なるため、次のように場合分けを行う。
(A)すべての通信装置が対応している。
(B)ネットワーク中継装置(101)が未対応で、データ受信装置(102)及びデータ送信装置(103)が対応している。
(C)データ受信装置(102)が未対応で、ネットワーク中継装置(101)及びデータ送信装置(103)が対応している。
(D)データ送信装置(103)が未対応で、ネットワーク中継装置(101)及びデータ受信装置(102)は、対応している場合と対応していない場合とがある。
これらの2種類の場合分けを組み合わせると、次のように12通りの場合が考えられる。
(1−A)MTU_B ≦ MTU_A ≦ MTU_C すべての装置が対応
(1−B)MTU_B ≦ MTU_A ≦ MTU_C ネットワーク中継装置が未対応
(1−C)MTU_B ≦ MTU_A ≦ MTU_C データ受信装置が未対応
(1−D)MTU_B ≦ MTU_A ≦ MTU_C データ送信装置が未対応
(2−A)MTU_B ≦ MTU_C ≦ MTU_A すべての装置が対応
(2−B)MTU_B ≦ MTU_C ≦ MTU_A ネットワーク中継装置が未対応
(2−C)MTU_B ≦ MTU_C ≦ MTU_A データ受信装置が未対応
(2−D)MTU_B ≦ MTU_C ≦ MTU_A データ送信装置が未対応
(3−A)MTU_C ≦ MTU_B ≦ MTU_A すべての装置が対応
(3−B)MTU_C ≦ MTU_B ≦ MTU_A ネットワーク中継装置が未対応
(3−C)MTU_C ≦ MTU_B ≦ MTU_A データ受信装置が未対応
(3−D)MTU_C ≦ MTU_B ≦ MTU_A データ送信装置が未対応
以下、それぞれの場合について説明を行う。
まず、(1−A)の場合について、図2を参照しながら説明する。図2は、本発明の第1の実施の形態における(1−A)の場合のマルチ経路MTU情報の通知状態を示す図である。ネットワークのMTUの大小関係は、MTU_B ≦ MTU_A ≦ MTU_Cであるため、経路MTUはMTU_A又はMTU_Bである。また、ネットワーク中継装置(101)とデータ受信装置(102)のどちらもマルチ経路MTU情報の通知に対応しているため、データ送信装置(103)には、マルチ経路MTU情報(MTU_A及びMTU_Bの両方の経路MTU情報)が通知される。また、データ送信装置(103)もマルチ経路MTU情報に対応しているため、受信したマルチ経路MTU情報の経路MTU(MTU_A及びMTU_B)に従って、データを送信することができる。
次に、(1−B)の場合について、図3を参照しながら説明する。図3は、本発明の第1の実施の形態における(1−B)の場合のマルチ経路MTU情報の通知状態を示す図である。ネットワークMTUの大小関係は、MTU_B ≦ MTU_A ≦ MTU_Cであるため、経路MTUはMTU_A又はMTU_Bである。しかしながら、ネットワーク中継装置(101)が未対応(マルチ経路MTU情報の通知を行うことができない)であるため、ネットワーク中継装置(101)がデータ送信装置(103)に通知する経路MTUの値は、MTU_A及びMTU_Bのいずれか一方のみである。
ネットワーク中継装置(101)は、従来の技術のPath MTU Discoveryの動作によって、経路MTUの値(1つのみ)をデータ送信装置(103)に通知する。一方、データ受信装置(102)は、マルチ経路MTU情報に対応しているため、MTU_A及びMTU_Bの両方の値を通知する。
データ送信装置(103)は、マルチ経路MTU情報に対応しているため、データ受信装置(102)からマルチ経路MTU情報が通知され、かつネットワーク中継装置(101)からMTU_Aが通知された場合には、(1−A)の場合と同様に、受信したマルチ経路MTU情報の経路MTUに従ってMTU_AとMTU_Bの両方を考慮してパケット長を選択し、データを送信する。一方、データ受信装置(102)からマルチ経路MTU情報が通知され、かつネットワーク中継装置(101)からMTU_Bが通知された場合には、MTU_B≦MTU_Aの関係を考慮し、経路MTUをMTU_Bとしてパケット長を決めてパケットを送信する。
次に、(1−C)の場合について、図4を参照しながら説明する。図4は、本発明の第1の実施の形態における(1−C)の場合のマルチ経路MTU情報の通知状態を示す図である。ネットワークMTUの大小関係は、MTU_B ≦ MTU_A ≦ MTU_Cであるため、経路MTUはMTU_A又はMTU_Bである。データ受信装置(102)が未対応であるから、マルチ経路MTU情報は、ネットワーク中継装置(101)だけからデータ送信装置(103)に通知される。データ送信装置(103)は、(1−A)の場合と同様に、受信したマルチ経路MTU情報の経路MTUの値(MTU_A及びMTU_B)に従ってパケット長を選択し、データを送信することができる。
次に、(1−D)の場合について説明する。ネットワークMTUの大小関係は、MTU_B ≦ MTU_A ≦ MTU_Cであるため、経路MTUはMTU_A又はMTU_Bである。しかしながら、データ送信装置(103)はマルチ経路MTU情報に未対応であるため、ネットワーク中継装置(101)が従来の技術のPath MTU Discoveryの動作によって通知した経路MTUの値を用いて、データ送信装置(103)はパケット長を制御し送信する。すなわち、ネットワーク中継装置(101)がMTU_Aの値を通知しているときは、データ送信装置(103)は、経路MTUの値としてMTU_Aの値を用い、一方、ネットワーク中継装置(101)がMTU_Bの値を通知しているときは、データ送信装置(103)は、経路MTUの値としてMTU_Bの値を用いてパケット長を制御する。
次に、(2−A)の場合について、図5を参照しながら説明する。図5は、本発明の第1の実施の形態における(2−A)の場合のマルチ経路MTU情報の通知状態を示す図である。ネットワークMTUの大小関係は、MTU_B ≦ MTU_C ≦ MTU_Aであるため、経路MTUはMTU_B又はMTU_Cである。ここでは、すべての装置がマルチ経路MTU情報に対応しており、ネットワーク中継装置(101)及びデータ受信装置(102)は、データ送信装置(103)にマルチ経路MTU情報(MTU_A及びMTU_Bの両方の情報)を通知する。一方、ネットワークC(106)からデータ送信装置(103)には、従来のPath MTU Discoveryの動作の結果として、MTU_Cの値が通知される。
データ送信装置(103)は、マルチ経路MTU情報(MTU_A及びMTU_Bの両方の情報)とネットワークC(106)から通知されたMTU_Cを用いて、MTU_BとMTU_Cの両方を考慮してパケット長を選択し、データを送信する。すなわち、MTU_AはMTU_Cより大きい値のため、データ送信装置(103)は、MTU_Cより小さい値でなければあて先のデータ受信装置(102)には届かないことを知ることができ、経路MTUとしてMTU_BとMTU_Cの両方を利用することが可能となる。
次に、(2−B)の場合について、図6を参照しながら説明する。図6は、本発明の第1の実施の形態における(2−B)の場合のマルチ経路MTU情報の通知状態を示す図である。ネットワークMTUの大小関係は、MTU_B ≦ MTU_C ≦ MTU_Aであるため、経路MTUはMTU_B又はMTU_Cである。ここでは、ネットワーク中継装置(101)が未対応であるため、ネットワーク中継装置(101)は、MTU_Bの値を通知するか、何も通知しないかのどちらかを行う。すなわち、MTU_C ≦ MTU_Aの大小関係のため、ネットワーク中継装置(101)がMTU_Aを通知する状況にはならない。一方、データ受信装置(102)は、データ送信装置(103)にマルチ経路MTU情報(MTU_A及びMTU_Bの両方の情報)を通知する。データ送信装置(103)は、ネットワーク中継装置(101)からMTU_Bを通知された場合には、MTU_Bの値を経路MTUとしてパケット長を制御してパケットを送信する。一方、それ以外の場合には(2−A)と同様に、MTU_B及びMTU_Cの両方の値を考慮してパケット長を選択し、データを送信する。
次に、(2−C)の場合について、図7を参照しながら説明する。図7は、本発明の第1の実施の形態における(2−C)の場合のマルチ経路MTU情報の通知状態を示す図である。ネットワークMTUの大小関係は、MTU_B ≦ MTU_C ≦ MTU_Aであるため、経路MTUはMTU_B又はMTU_Cである。ここでは、データ受信装置(102)が未対応であるから、マルチ経路MTU情報は、ネットワーク中継装置(101)だけからデータ送信装置(103)に通知される。データ送信装置(103)は、(2−A)の場合と同様に、MTU_B及びMTU_Cの両方の値を考慮してパケット長を選択し、データを送信する。
次に、(2−D)の場合について説明する。ネットワークMTUの大小関係は、MTU_B ≦ MTU_C ≦ MTU_Aであるため、経路MTUはMTU_B又はMTU_Cである。しかしながら、データ送信装置(103)はマルチ経路MTU情報に未対応であるため、ネットワーク中継装置101が従来の技術のPath MTU Discoveryの動作によってMTU_Bの値を通知した場合には、MTU_Bの値を経路MTUとし、それ以外の場合にはネットワークC(106)より通知されたMTU_Cの値を経路MTUとして、パケット長を制御し送信する。
次に、(3−A)、(3−B)、(3−C)、(3−D)の場合について説明する。ネットワークMTUの大小関係は、MTU_C ≦ MTU_B ≦ MTU_Aであるため、経路MTUはMTU_Cである。どの通信装置がマルチ経路MTU情報に対応しているか、又は対応していないかに関係なく、データ送信装置(103)は、MTU_Cの値を経路MTUとして、パケット長を制御し送信する。
次に、各通信装置の構成及び動作について説明する。まず、ネットワーク中継装置の構成を、図8を用いて説明する。図8は、本発明の第1の実施の形態におけるネットワーク中継装置の構成の一例を示すブロック図である。図8に図示されているネットワーク中継装置(101)は、経路MTU探索部(801)、Link MTU保存部(802)、マルチ経路MTU情報作成部(803)、マルチ経路MTU情報通知部(804)、マルチ経路MTU情報保存部(805)、パケット受信部(806)、パケット転送先判定部(807)、パケット送信部(808)を有している。
経路MTU探索部(801)は、Path MTU Discoveryなどによって経路MTUを調べる処理部である。また、Link MTU保存部(802)は、Link MTUの設定値を保存しておく処理部である。なお、経路MTUは、Link MTUより大きな値になることはない。また、マルチ経路MTU情報作成部(803)は、経路MTU探索部(801)及びLink MTU保存部(802)からのMTUの情報を基にしてマルチ経路MTU情報を作成する処理部である。マルチ経路MTU情報には複数の経路のそれぞれの経路MTUがそれぞれ含まれている。
また、マルチ経路MTU情報通知部(804)は、マルチ経路MTU情報作成部(803)で作成されたマルチ経路MTU情報をデータ送信装置(103)に送信する処理部である。また、マルチ経路MTU情報保存部(805)は、マルチ経路MTU情報作成部(803)が作成したマルチ経路MTU情報を保存する処理部である。マルチ経路MTU情報保存部(805)に保存されたマルチ経路MTU情報を利用して、ネットワーク中継装置(101)は、パケットの転送処理のときに転送パケットを送出する経路選択を行う。
また、パケット受信部(806)は、パケットを受信する処理部であり、データ送信装置(103)からのデータを受信する。また、パケット転送先判定部(807)は、受信したパケットを転送するときに、どの経路に送出するかを判定する処理部である。この判定の際に、マルチ経路MTU情報保存部(805)に保存されているマルチ経路MTU情報が参照される。また、パケット送信部(808)は、パケット転送先判定部(807)によって決定された経路にパケットを送出する処理部であり、データ受信装置(102)に向けてパケットを送出する。なお、複数の出力インタフェースを有する場合には、パケット送信部(808)は複数存在し、それぞれにLink MTUが存在する。
ネットワーク中継装置(101)は、マルチ経路MTU情報を作成する。あるあて先にパケットを送信するとき、そのあて先にパケットを送ることによって(すなわち、従来の技術のPath MTU Discoveryの方法によって)、そのあて先までの経路MTUを知ることができる。定期的又はパケットを送信する必要性が発生した場合に、効率的に帯域を利用するために、意図的にパケット長の大きなパケットを送信し、経路MTUの探索が行われる。この経路MTU探索処理は、経路MTU探索部(801)によって行われる。
また、ネットワーク中継装置(101)は、各インタフェースのLink MTUを超えるパケットを送信することはできない。このLink MTUの値を保持しているのがLink MTU保存部(802)である。ネットワーク中継装置(101)は、経路MTU探索部(801)が調べた経路MTUの値を用いて、マルチ経路MTU情報作成部(803)によってマルチ経路MTU情報を作成する。マルチ経路MTU情報作成部(803)によって作成されたマルチ経路MTU情報は、マルチ経路MTU情報通知部(804)によりデータ送信装置(103)に通知されるともに、マルチ経路MTU情報保存部(805)によって保存される。
なお、ネットワーク中継装置(101)は、データ送信装置(103)からデータを受信し始めてからマルチ経路MTU情報を作成し、通知してもよい。また、接続している経路状況が変化し、新しく経路が増えたり、減ったりしたときに、データ送信装置(103)に通知してもよい。
ネットワーク中継装置(101)は、マルチ経路MTU情報を通知する。ネットワーク中継装置(101)は、あるあて先にパケットを送信又は転送するとき、複数の出力インタフェースに送信することが可能なら(すなわち、複数の経路が存在する場合には)、それぞれの経路MTUを経路MTU探索部(801)によって調べ、その値を使ってマルチ経路MTU情報を作成する。なお、このマルチ経路MTU情報は、ネットワーク中継装置(101)が転送処理を行う際にも使用されるが、この情報をデータの送信元においても使用可能となるように、マルチ経路MTU情報通信部(804)からデータ送信装置(103)に向けて送信することが可能である。
ネットワーク中継装置(101)は、マルチ経路MTU情報を利用してパケットの転送処理を行う。ネットワーク中継装置(101)は、データ送信装置(103)が送信したパケットをパケット受信部(806)によって受信し、受信したパケットを転送する際には、複数の経路が存在する場合、マルチ経路MTU情報保存部(805)に保存されているマルチ経路MTU情報を使って、送出する出力インタフェースを決定する。一方、マルチ経路MTU情報が保存されていない場合には、経路MTU探索部(801)を用いて各経路の経路MTUを探索し、その情報を用いてマルチ経路MTU情報作成部(803)によってマルチ経路MTU情報を作成する。また、マルチ経路MTU情報が古い情報になった場合には、新たにマルチ経路MTU情報を更新する。この更新処理は定期的に行ってもよいし、ネットワーク構成が変更されたときに行ってもよい。
また、ネットワーク中継装置(101)は、送出する経路を判定する際には、パケット長に合わせて経路の選択を行う。なお、1つの経路に負荷が集中しないように、各経路に送出したパケット量の統計情報を保持し、その情報に基づいて判定を行ってもよい。また、経路の帯域情報を利用して、各経路の帯域に合わせて、送出する経路を判定してもよい。また、経路がメンテナンスなどによって使用可能になる予定時間や使えなくなる予定時間が分かっている場合には、その情報を判定材料としてもよい。ネットワーク中継装置(101)は、マルチ経路MTU情報保存部(805)に保存したマルチ経路MTU情報を利用して、パケット転送先判定部(807)によってパケットの送出先を決定し、パケット送信部(808)を用いてパケットをデータ受信装置(102)に向けて転送する。
次に、図9を参照しながら、データ受信装置(102)の構成ついて説明する。図9は、本発明の第1の実施の形態におけるデータ受信装置の構成の一例を示すブロック図である。図9に図示されているデータ受信装置(102)は、経路MTU探索部(901)、Link MTU保存部(902)、マルチ経路MTU情報作成部(903)、マルチ経路MTU情報通知部(904)、マルチ経路MTU情報保存部(905)、データ受信部(906)を有している。
経路MTU探索部(901)は、Path MTU Discoveryなどによって経路MTUを調べる処理部である。また、Link MTU保存部(902)は、Link MTUの設定値を保存しておく処理部である。また、マルチ経路MTU情報作成部(903)は、経路MTU探索部(901)及びLink MTU保存部(902)からのMTUの情報を基にして、マルチ経路MTU情報を作成する処理部である。また、マルチ経路MTU情報通知部(904)は、マルチ経路MTU情報作成部(903)で作成されたマルチ経路MTU情報をデータ送信装置(103)に送信する処理部である。また、マルチ経路MTU情報保存部(905)は、マルチ経路MTU情報作成部(903)が作成したマルチ経路MTU情報を保存する処理部である。また、データ受信部(906)は、データ送信装置(103)が送信したデータ(パケット)を受信する処理部である。
データ受信装置(102)は、マルチ経路MTU情報の作成を行う。あるあて先にパケットを送信するとき、そのあて先にパケットを送ることによって(すなわち、従来の技術のPath MTU Discoveryの方法によって)、そのあて先までの経路MTUを知ることができる。データ受信装置(102)は、データ送信装置(103)にパケットを送信するとき、出力可能なインタフェースが複数存在すること(すなわち、複数の経路があること)を知っているため、どちらの経路を使ってデータが伝送されたほうが効率的かを調べることができる。また、複数の経路となる対向の通信装置(ここではネットワーク中継装置(101))を知っている場合には、ネットワーク中継装置(101)をあて先として、経路MTUを探索してもよい。また、データ送信装置(103)をあて先として、経路MTUを探索してもよい。
データ受信装置(102)は、経路MTU探索部(901)を用いてデータ送信装置(103)に通知するための経路MTUの値を探索する。データ受信装置(102)は、複数の経路のどちらを用いて経路MTUの探索を行うかを選別して調べることができる。経路MTU探索部(901)によって探索された経路MTUの値とLink MTU保存部(902)に保存されているLink MTUの値とを用いて、マルチ経路MTU情報作成部(903)は、マルチ経路MTU情報を作成する。マルチ経路MTU情報作成部(903)によって作成されたマルチ経路MTU情報は、マルチ経路MTU情報通知部(904)に渡され、マルチ経路通知部(904)によってデータ送信装置(103)に通知される。また、マルチ経路MTU情報は、マルチ経路MTU情報保存部(905)に渡され保存される。
なお、マルチ経路MTU情報保存部(905)に保存されたマルチ経路MTU情報を、定期的にマルチ経路MTU情報通知部(904)より、データ送信装置(103)に通知してもよい。データ受信装置(102)は、データ送信装置(103)からデータを受信し始めてからマルチ経路MTU情報を作成し、通知してもよい。また、接続している経路状況が変化し、新しく経路が増えたり、減ったりしたときに、データ送信装置(103)に通知してもよい。
また、データ受信装置(102)は、マルチ経路MTU情報の通知を行う。データ受信装置(102)は、自身が複数のインタフェースを持ち、データ送信装置(103)からのパケットがどの経路を通っても到達する場合、複数の経路が有効に利用されるように、マルチ経路MTU情報をデータ送信装置(103)に通知する。この通知は、定期的に行われてもよく、また、マルチ経路の状態が変わったときに行われてもよい。経路の状況が変わったときに通知することは、ネットワーク帯域の有効利用のために望ましい。
次に、図10を参照しながら、データ送信装置(103)の構成について説明する。図10は、本発明の第1の実施の形態におけるデータ送信装置の構成の一例を示すブロック図である。図10に図示されているデータ送信装置(103)は、経路MTU探索部(1001)、Link MTU保存部(1002)、マルチ経路MTU情報設定部(1003)、マルチ経路MTU情報受信部(1004)、マルチ経路MTU情報保存部(1005)、データ作成部(1006)、パケット長制御部(1007)、パケット送信部(1008)を有している。
経路MTU探索部(1001)は、Path MTU Discoveryなどによって経路MTUを調べる処理部である。また、Link MTU保存部(1002)は、Link MTUの設定値を保存しておく処理部である。また、マルチ経路MTU情報設定部(1003)は、マルチ経路MTU情報受信部(1004)によって受信したマルチ経路MTU情報、経路MTU探索部(1001)により取得した経路MTUの値、Link MTU保存部(1002)からのMTUの値、これらの情報を基にしてマルチ経路MTU情報を作成し、マルチ経路MTU情報保存部(1005)に渡す。また、マルチ経路MTU情報受信部(1004)は、ネットワーク中継装置(101)やデータ受信装置(102)から通知されるマルチ経路MTU情報を受信する処理部である。また、マルチ経路MTU情報保存部(1005)は、マルチ経路MTU情報設定部(1003)が作成したマルチ経路MTU情報を保存する処理部である。また、データ作成部(1006)は、データ受信装置(102)に送信するデータを作成する。また、パケット長制御部(1007)は、作成したデータをパケットとして送出するときにパケット長を決定する処理部である。マルチ経路MTU情報保存部(1005)に保存されたマルチ経路MTU情報を利用して、パケット長制御部(1007)は、パケット送信処理のときにパケット長の制御を行う。すなわち、パケット長制御部(1007)は、パケット長を決めるときに、マルチ経路MTU情報保存部(1005)に保存されているマルチ経路MTU情報を利用する。また、パケット送信部(1008)は、パケット長制御部(1007)によって決定されたパケット長に従ってパケットを送出する処理部であり、データ受信装置(102)に向けてパケットを送出する。
データ送信装置(103)は、マルチ経路MTU情報を受信し、パケット長の制御に利用できるように保存する。経路MTUの大小関係、及び各装置がマルチ経路MTU情報に対応しているか対応していないかの場合分けにおいて説明したように、データ送信装置(103)とネットワーク中継装置(101)との間の経路の経路MTUの値(すなわち、MTU_C)が、パケット長を決定するときに重要となる場合がある。データ送信装置(103)は、ネットワーク中継装置(101)及びデータ受信装置(102)のどちらか一方又は両方から、マルチ経路MTU情報を受信する。さらに、経路MTU探索部(1001)によって経路探索の結果を受信する。これらの情報を用いて、マルチ経路MTU情報設定部(1003)は、マルチ経路MTU情報を作成し、マルチ経路MTU情報保存部(1005)に保存する。
データ送信装置(103)は、マルチ経路MTU情報を利用してパケット長を決定し、データを送信する。データ送信装置(103)は、データ受信装置(102)に送信するデータをデータ作成部(1006)において作成する。データ作成部(1006)で作成されたデータをパケットによって運ぶ場合に、パケット長制御部(1007)がそのパケット長を決定する。また、パケット長制御部(1007)は、パケット長を決定する際に、マルチ経路MTU情報保存部(1005)に保存されているマルチ経路MTU情報を利用する。
なお、パケット長の決め方は、複数の経路の帯域を有効に活用できるように決めることが望ましい。経路MTUの小さい値だけを用いると、経路MTUの大きいネットワークの帯域を有効に利用することはできない。また逆に、経路MTUの大きい値だけを用いると、経路MTUの小さいネットワークにはパケットが流れなくなり、複数存在している経路を有効に利用できなくなる。したがって、複数存在する経路の各経路MTUの値のいずれか1つだけを使うのではなく、負荷を分散(すなわち、経路を分散)するようにパケット長を制御することが望ましい。また、送信するデータの特徴を加味することも重要である。例えば、優先度の高いデータは経路MTUの大きいネットワークに流れるように、そのパケット長を大きくし、それ以外のパケットを小さくするように制御してもよい。また、UDP(User Datagram Protocol)パケットなどのようなフラグメントを避けたいパケットを優先的に、大きな経路MTUに合わせるようにしてもよい。
次に、マルチ経路MTU情報を通知する方法について説明する。マルチ経路MTU情報を通知するための専用のメッセージを定義することも可能であるが、ここでは、拡張ヘッダのDestination Option Headerを拡張する方法について説明する。なお、Destination Option Headerに関しては、RFC2460に規定されている。
Destination Option Headerを用いた場合には、マルチ経路MTU情報を通常のデータパケットに付加することや、Path MTU Discoveryで使用するICMPメッセージのPacket Too Bigにマルチ経路MTU情報を付加することも可能となる。また、マルチ経路MTU情報に未対応の通信装置が、このマルチ経路MTU情報を付加されたパケットを受信した場合に、この通信装置は、Destination Option Headerによって付加されているマルチ経路MTU情報のオプション箇所だけを無視することができる。そのため、Destination Option Headerを用いた場合には、本発明に未対応の既存の通信装置に対して影響を与えることなく、マルチ経路MTU情報を使用することが可能となる。
以下、図11を参照しながら、マルチ経路MTU情報をDestination Option Headerに付加する例について説明する。図11は、本発明の第1の実施の形態において、マルチ経路MTU情報を運ぶためのDestination Option Headerの一例を示す図である。図11において、Next Header(1101)、Hdr Ext Length(1102)、Option Type(1103)、Opt Data Length(1104)は、RFC2460に定義されている領域である。上記のOption Type(1103)には、マルチ経路MTU情報であることが分かる値が設定される。この設定値によって、データ送信装置(103)がマルチ経路MTU情報に対応している場合には、この情報の処理を行い、一方、マルチ経路MTU情報に対応していない場合には、この情報を単に無視する。
また、図11における経路情報サイズ(1105)の領域には、経路情報サイズ(容量)が設定される。ここではマルチ経路MTU情報として経路MTUを含む場合について説明するが、後述のように、この経路MTU情報に加えて、各MTUに関連した帯域情報や、各経路が使用可能又は使用不可能なる予定時刻情報を含むことも可能となる。具体的には、経路情報サイズは、経路MTUだけの場合は4バイト、帯域情報又は予定時刻情報のどちらかを含む場合は8バイト、両方とも含む場合は12バイトとなる。また、マルチ経路MTU情報が、上記以外の経路に関連する情報を含むようにすることも可能である。
また、図11における経路数(1106)の領域には、経路の数が設定される。なお、上述の例では2つの経路が存在するため、この場合には、経路数の値は2に設定される。また、経路が3以上の場合には、その経路数がこの領域に設定される。また、図11におけるフラグ(1107)の領域には、フラグが設定される。このフラグによって続く情報が経路MTUの値なのか、帯域情報なのか、あるいは予定時刻情報なのかなどのように、情報の種類が区別される。例えば、“0”は経路MTU情報、“1”は帯域情報、“2”は予定時刻情報などのようにあらかじめ定められることが望ましい。また、図11において、経路MTU(1108)の領域には、経路MTUの値(MTU_AやMTU_B)が設定される。
また、図12に、マルチ経路MTU情報に帯域情報や予定時刻情報を含めた場合のDestination Option Headerの一例を示す。上述のように、マルチ経路MTU情報に挿入される情報の種類は、フラグによって区別される。なお、図12には、経路MTUの値、帯域情報、予定時刻情報がマルチ経路MTU情報に挿入されている場合が図示されているが、他の情報もフラグの値を定義することによって利用することが可能となる。また、帯域情報や予定時刻情報は、どちらか一方だけ含まれてもよく、また、両方含まれていてもよい。また、ネットワーク中継装置(101)及びデータ受信装置(102)は、マルチ経路MTU情報を作成する際に、これらの情報を含めて、マルチ経路MTU情報を作成する。
帯域情報には、例えば、あらかじめ通信装置に設定された値が用いられる。これは、通信装置が接続しているネットワークによって帯域が異なることによる。なお、通信装置が実際に帯域を測定して、その測定結果をマルチ経路MTU情報に含めてもよい。また、予定時刻情報も、例えば、あらかじめ通信装置に設定された値が用いられる。例えばネットワークのメンテナンスの予定などが知らされた場合には、通信装置にその情報が設定されることが考えられ、この設定された値が予定時刻情報に利用される。なお、予定時刻情報には、ネットワークが使用できなくなる時刻や時間帯が記載されてもよく、また、ネットワークの使用を開始できる時刻や、使用可能な時間帯が記載されてもよい。
ここで、帯域情報を含むマルチ経路MTU情報が使用される例について、図1を参照しながら説明する。ネットワーク中継装置(101)及びデータ受信装置(102)には、帯域情報が、例えばオペレータによって手動設定されてもよい。また、帯域情報は、例えば、ルーティングプロトコルなどによって得られてもよい。また、実際に自動的に帯域の測定が行われてもよい。
例えば、経路Aが帯域10Mbpsの伝送レートを有しており、経路Bが帯域1MBpsの伝送レートを有しているとする。ネットワーク中継装置(101)及びデータ受信装置(102)は、この帯域情報を含むマルチ経路MTU情報をデータ送信装置(103)に送信し、このマルチ経路MTU情報を受信したデータ送信装置(103)は、受信したマルチ経路MTU情報に含まれる帯域情報に従って、MTU_Aに合わせたパケットとMTU_Bに合わせたパケットを10:1の比率で送信する。すなわち、経路MTUの情報だけではなく、帯域情報を組み合わせて用いるようにすることによって、データ送信装置(103)はパケット長を制御するための情報をより多く得ることができ、パケット長の制御をより有効に行うことが可能となる。
次に、それぞれの経路の使用可能又は使用不可能となる予定時刻情報を含むマルチ経路MTU情報が使用される例について、図1を参照しながら説明する。ネットワーク中継装置(101)には、予定時刻情報が、例えばオペレータによって手動設定されてもよい。また、データ受信装置(102)からの通知によって、予定時刻情報を得ることも可能である。
例えば、経路Bだけが使用可能な状態で、今の時刻が午後8:00として、午後8:10に経路Aが使用可能になることをネットワーク中継装置(101)が知っているとする。この状況は、例えばネットワーク工事やメンテナンスの予定があらかじめ通知されているような場合に起こり得る。ネットワーク中継装置(101)は、この経路Aが使用可能となる予定時刻情報(午後8:10)をマルチ経路MTU情報としてデータ送信装置(103)に送信する。経路Aが使用可能となる予定時刻情報を受信したデータ送信装置(103)は、パケット長制御部(1007)の切り替えをその予定時刻にあらかじめ設定しておくことができ、経路Aが使用可能となると同時又は使用可能になってから短い時間で、経路A及び経路Bの両方のネットワークリソースを有効に利用できる。
また、例えば経路A及び経路Bの両方が使用可能な状態で、今の時刻が午後8:00として、午後8:10に経路Aが使用不可能になることをネットワーク中継装置(101)又はデータ受信装置(102)が知っているとする。ネットワーク中継装置(101)又はデータ受信装置(102)は、この経路Aが使用できなくなる予定時刻情報(午後8:10)をマルチ経路MTU情報としてデータ送信装置(103)に送信する。経路Aが使用不可能となる予定時刻情報を受信したデータ送信装置(103)は、使用不可能となったときにはMTU_Bより大きなパケット長のパケットを送信しないようにすることができるため、エラーメッセージによるパケット長が大きいことの通知の受信及びパケットの再送信という事態や、ネットワーク中継装置(101)でのフラグメント処理の発生という事態などを回避することができ、ネットワークリソースを有効に活用することができる。なお、時刻の指定方法としては、今から10分後というような指定方法でもよい。また、時刻の指定は、上記のように分単位でもよく、また、秒単位やミリ秒単位でもよい。
次に、マルチ経路MTU発見方法について説明する。マルチ経路MTU発見方法とは、マルチ経路MTU情報を受信することによってマルチ経路の状態及びマルチ経路のそれぞれのMTUの値を知る方法である。すなわち、ネットワーク上に、ネットワーク中継装置(101)又はデータ受信装置(102)のいずれか一方又は両方が、複数の経路のそれぞれの経路MTU情報をマルチ経路MTU情報として作成するマルチ経路MTU情報作成ステップと、作成したマルチ経路MTU情報をデータ送信装置(103)に通知するマルチ経路MTU情報通知ステップと、データ送信装置(103)が、各経路の経路MTU情報を含むマルチ経路MTU情報を受信するマルチ経路MTU情報受信ステップと、データ送信装置(103)が、受信したマルチ経路MTU情報を解析するマルチ経路MTU情報解析ステップとが実行されることによって、データ送信装置(103)は、複数の経路のそれぞれの経路MTU情報を発見することができる。マルチ経路MTU情報の解析後、各経路MTU情報を用いてパケット長を適切に設定することによって、データ通信装置(103)は、複数の経路を有効に活用することができる。
次に、マルチ経路MTU発見システムについて説明する。マルチ経路MTU発見システムとは、マルチ経路MTU情報を作成及び通知するネットワーク中継装置(101)又はデータ受信装置(102)と、通知されたマルチ経路MTU情報を受信して活用するデータ送信装置(103)とにより構成される通信システムである。すなわち、パケット通信システムは、ネットワーク中継装置(101)及びデータ受信装置(102)の一方又は両方が、複数の経路のそれぞれの経路MTU情報をマルチ経路MTU情報として作成し、作成されたマルチ経路MTU情報をデータ送信装置(103)に通知し、データ送信装置(103)が、それぞれの経路の経路MTU情報を含むマルチ経路MTU情報を受信して解析を行うように構成されている。これにより、データ送信装置(103)は複数の経路のそれぞれの経路MTU情報を取得することが可能となり、各経路MTU情報を用いてパケット長を適切に設定することによって、データ通信装置(103)は、複数の経路を有効に活用することができる。
以上、説明したように、本発明の第1の実施の形態によれば、ルーティング経路がマルチ経路の場合に、パケットの中継ノード又は受信ノードが、それぞれの経路の経路MTU情報を含むマルチ経路MTU情報を作成して、パケットの送信元ノードに対して通知することによって、マルチ経路状態において、パケットの送信元ノードが適切なパケット長を設定できるようにし、ネットワークリソースを有効に活用することが可能となる。
<第2の実施の形態>
次に、本発明の第2の実施の形態について説明する。図13は、本発明の第2の実施の形態のネットワーク構成の一例を示すネットワーク構成図である。図13に図示されている本発明の第2の実施の形態のネットワーク構成と、図1に図示されている本発明の第1の実施の形態のネットワーク構成とを比較すれば分かるように、本発明の第2の実施の形態では、ホームエージェント(1301)がネットワーク中継装置(101)として動作し、モバイルノード(1302)がデータ受信装置(102)として動作し、コレスポンデントノード(CN:Correspondent Node)(1303)がデータ送信装置(103)として動作する。
ホームエージェント(1301)は、モバイルノード(1302)のホームアドレスあてのパケットを受信した場合、モバイルノード(1302)の気付アドレスあてにパケットを転送するネットワーク中継装置である。図13ではホームエージェント(1301)及びモバイルノード(1302)は、ネットワークA(1304)及びネットワークB(1305)によって接続されている。例えば、ネットワークAが携帯電話網であり、ネットワークBが無線LAN(例えば、IEEE 802.11b)などの場合が想定可能である。また、ホームエージェント1301は、コレスポンデントノード(1303)とネットワークC(1306)でつながっている。例えば、ネットワークCはインターネットなどが考えられる。
モバイルノード(1302)は、コレスポンデントノード(1303)から送信されたパケットを、ホームエージェント(1301)経由で受信する。モバイルノード(1302)は、ホームエージェント(1301)とネットワークA(1304)及びネットワークB(1305)のそれぞれを介してつながっている。
コレスポンデントノード(1303)は、モバイルノード(1302)のホームアドレスあてにパケットを送信する。ホームアドレスあてに送信されたパケットは、ホームエージェント(1301)経由で気付アドレスに転送され、モバイルノード(1302)に届く。
一方、モバイルノード(1302)は、複数の気付アドレスをホームエージェント(1301)に登録する。モバイルノード(1302)は、ネットワークA(1304)及びネットワークB(1305)に接続されており、例えば、それぞれのアドレスを気付アドレスとしてホームエージェント(1301)に登録する。ここでは、それぞれの気付アドレスをCoA_A、CoA_Bと表記する。ホームエージェント(1301)には、モバイルノード(1302)の1つのホームアドレスHoAに対して、2つの気付アドレスCoA_A及びCoA_Bが登録される。これによって、ホームエージェント(1301)は、モバイルノード(1302)のホームアドレスあてのパケットを受信したとき、経路A(ネットワークA経由)でCoA_Aあてに転送するか、経路B(ネットワークB経由)でCoA_Bあてに転送するかを選択することが可能である。また、ホームエージェント(1301)は、パケット長によって経路を選択することも可能である。また、ホームエージェント(1301)は、複数の経路を効率的に利用できるように、それぞれの経路の負荷を分散させるように複数の経路のうちの各経路を選択することも可能である。
ここで、モバイルノード(1302)が複数のネットワークと接続する利点について説明する。例えば、モバイルノード(1302)が無線を使って通信を行っている場合、一般に無線ネットワークでは帯域が有線ネットワークと比較して小さいため、大きなデータは伝送されにくい。そのため、モバイルノード(1302)は、複数の無線経路を用いてデータを伝送することによって、単数の無線経路の場合より多くのデータを通信することができるようになる。
次に、ホームエージェント(1301)が作成するマルチ経路MTU情報について説明する。図14は、本発明の第2の実施の形態におけるモバイルノードの気付アドレスと経路MTU情報との対応関係の一例を示す図である。ホームエージェント(1301)は、図14に図示されているように、各アドレスと経路MTU情報との対応関係を把握している。ここでは、CoA_A(1401)をあて先とする場合の経路MTUの値がMTU_A(1403)であり、CoA_B(1402)をあて先とする場合の経路MTUの値がMTU_B(1404)であるという対応関係が設定されている。
また、図15は、本発明の第2の実施の形態におけるホームアドレスと気付アドレスとの対応関係の一例を示す図である。モバイルノード(1302)は、バインディング・アップデート・メッセージを送信し、ホームアドレスと気付アドレスとの対応関係を通知する。ここでは、ホームアドレスであるHoA(1501)に対応する気付アドレスが、CoA_A(1502)とCoA_B(1503)の2つ存在している状態が図示されている。
これらの情報からホームエージェント(1301)は、図16に図示されているように、ホームアドレスであるHoA(1601)あてのパケットの経路MTUとして、MTU_A(1602)及びMTU_B(1603)の2つが設定されたマルチ経路MTU情報を生成することができる。ホームエージェント(1301)は、このマルチ経路MTU情報をコレスポンデントノード(1303)に送信する。なお、マルチ経路MTU情報を送信する際のデータフォーマットとしては、例えば、上述の第1の実施の形態で示したDestination Option Header(図11を参照)を用いることができる。
また、モバイルノード(1302)の場合も、ホームエージェント(1301)の場合と同様に、マルチ経路MTU情報を作成することができる。図17には、図14に図示されている対応関係を拡張して、さらに、帯域情報及び予定時刻情報の対応関係が設定された状態が図示されている。また、図18には、帯域情報及び予定時刻情報を含むマルチ経路MTU情報の一例が図示されている。なお、帯域情報及び予定時刻情報を含むマルチ経路MTU情報をコレスポンデントノード(1303)に送信する際のデータフォーマットとしては、例えば、上述の第1の実施の形態で示したDestination Option Header(図12を参照)を用いることができる。
以上、説明したように、本発明の第2の実施の形態によれば、ホームエージェントが、上述の第1の実施の形態におけるネットワーク中継装置として動作し、モバイルノードが、上述の第1の実施の形態におけるデータ受信装置として動作し、データ送信装置が上述の第1の実施の形態におけるコレスポンデントノードとして動作することが可能である。
なお、上記の各実施の形態では、各通信装置の機能はブロック図によって図示されているが、これらの各機能は、ハードウェア及び/又はソフトウェア(プログラム)をコンピュータによって実行させることによって実現可能である。
また、上記の各実施の形態のそれぞれの説明に用いた各機能ブロックは、典型的には集積回路であるLSIとして実現される。これらは個別に1チップ化されてもよいし、一部又はすべてを含むように1チップ化されてもよい。ここでは、LSI(Large Scale Integration)としたが、集積度の違いにより、IC(Integrated Circuit)、システムLSI、スーパーLSI、ウルトラLSIと呼称されることもある。
また、集積回路化の手法はLSIに限るものではなく、専用回路又は汎用プロセッサで実現してもよい。LSI製造後に、プログラムすることが可能なFPGA(Field Programmable Gate Array)や、LSI内部の回路セルの接続や設定を再構成可能なリコンフィギュラブル・プロセッサを利用してもよい。
さらには、半導体技術の進歩又は派生する別技術によりLSIに置き換わる集積回路化の技術が登場すれば、当然、その技術を用いて機能ブロックの集積化を行ってもよい。例えば、バイオ技術の適応などが可能性としてあり得る。
本発明は、従来の経路MTU発見方法では解決できなかったマルチ経路状態において、パケットの送信元ノードが適切なパケット長を設定できるようにし、ネットワークリソースを有効に活用できるようにするという効果を有しており、MTUの発見に係る技術やマルチ経路によるパケット伝送技術に適用可能である。
本発明の第1の実施の形態のネットワーク構成の一例を示すネットワーク構成図
本発明の第1の実施の形態における(1−A)の場合のマルチ経路MTU情報の通知状態を示す図
本発明の第1の実施の形態における(1−B)の場合のマルチ経路MTU情報の通知状態を示す図
本発明の第1の実施の形態における(1−C)の場合のマルチ経路MTU情報の通知状態を示す図
本発明の第1の実施の形態における(2−A)の場合のマルチ経路MTU情報の通知状態を示す図
本発明の第1の実施の形態における(2−B)の場合のマルチ経路MTU情報の通知状態を示す図
本発明の第1の実施の形態における(2−C)の場合のマルチ経路MTU情報の通知状態を示す図
本発明の第1の実施の形態におけるネットワーク中継装置の構成の一例を示すブロック図
本発明の第1の実施の形態におけるデータ受信装置の構成の一例を示すブロック図
本発明の第1の実施の形態におけるデータ送信装置の構成の一例を示すブロック図
本発明の第1の実施の形態において、マルチ経路MTU情報を運ぶためのDestination Option Headerの一例を示す図
本発明の第1の実施の形態において、帯域情報や予定時刻情報を含むマルチ経路MTU情報を運ぶためのDestination Option Headerの一例を示す図
本発明の第2の実施の形態のネットワーク構成の一例を示すネットワーク構成図
本発明の第2の実施の形態におけるモバイルノードの気付アドレスと経路MTU情報との対応関係の一例を示す図
本発明の第2の実施の形態におけるホームアドレスと気付アドレスとの対応関係の一例を示す図
本発明の第2の実施の形態において、アドレス及び複数の経路の経路MTU情報によって構成されているマルチ経路情報の一例を示す図
本発明の第2の実施の形態において、アドレスと、経路情報である経路MTU情報、帯域情報及び予定時刻情報との対応関係の一例を示す図
本発明の第2の実施の形態において、アドレスと、複数の経路の経路MTU情報、帯域情報及び予定時刻情報との対応関係の一例を示す図