説明

ゲートウェイ装置およびIPトンネル選択方法

【課題】最低保障帯域を確保しつつ、リソースに空きがある場合に最低保障帯域を超えてパケットの送出が可能な、ゲートウェイ装置およびIPトンネル選択方法を提供する。
【解決手段】IPNWに設定された優先トンネルおよび非優先トンネルを介してデータの送受信を行うゲートウェイ装置(GW)10は、パケットを受信すると、ポリシング設定部122が、そのパケットを優先処理(帯域保障の設定)すべきか否かを判定し、優先処理すべきと判定した場合に、フローごとの上限帯域をポリシング情報132を参照して設定する。そして、トンネル選択部124は、設定された上限帯域までのパケットは、優先トンネルを用いて送信するように選択し、上限帯域を超えたパケットは、非優先トンネルを用いて送信するように選択する。トンネル選択部124が選択したトンネルを用いて、パケット送信部125がパケットの転送を行う。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ゲートウェイ装置およびIP(Internet Protocol)トンネル選択方法に関するものである。
【背景技術】
【0002】
従来技術として、受信したIPパケットをIPトンネルによってカプセリングして転送するIPトンネル終端ゲートウェイ装置がある。このゲートウェイ装置(GW)では、受信したIPパケットのヘッダ情報を基に、転送先となるゲートウェイ装置との間で設定した複数のIPトンネルから、転送時にカプセリングするトンネルを選択することができる。このトンネルの選択には、以下に示す選択技術を用いることが多い。
【0003】
(1)ルーチングベースのトンネル選択技術
受信したIPパケットのIPヘッダ内の送信先アドレスを基に、送信すべきトンネルを選択する。
(2)ポリシベースのトンネル選択技術
受信したIPパケットのIPヘッダ内の送信先アドレス、送信元アドレス、プロトコル、TCP/UDPヘッダのポート情報等を基に、トンネルを選択する。例えば、RFC4301で定義されるIPsecのトラフィックセレクタによるトンネル選択などがある(非特許文献1参照)。
【先行技術文献】
【非特許文献】
【0004】
【非特許文献1】S.Kent, K.Seo, RFC4301“Security Architecture for the Internet Protocol”5.1.2, IETF, Dec 2005
【発明の概要】
【発明が解決しようとする課題】
【0005】
2拠点(X,Y)をIPネットワーク(IPNW)で接続し、それぞれの拠点に設置したIPトンネル終端ゲートウェイ装置(GW(X),GW(Y))間でIPトンネルを接続し、仮想専用線(VPN:Virtual Private Network)を構築する状況を考える。このVPNにおいて、最低帯域を保障するには、ゲートウェイ装置でIPトンネル(T1)を設定し、IPNW内部の装置で、IPトンネル(T1)のフローに対して、高優先度の優先クラス設定(帯域保障を行うフローとして設定)とポリシング(上限帯域を超えるパケットの廃棄処理)に基づく上限帯域(ポリシングレート)を設定し、この設定した高優先度クラスの全フローのポリシングレートの合計帯域が、IPNW内部の上限の帯域を超えないように設計すればよい。
【0006】
しかしながら、この場合、IPトンネル(T1)は、ポリシングレートを超えてIPNW内を転送(バースト)することはできない。つまり、従来技術では、カプセリングするパケットのヘッダ情報によるトンネルの振り分け、すなわち、優先する通信(例えば、音声通信:VT(Voice Traffic)はIPトンネル(T1)、優先しない通信(例えば、ファイル転送通信:DT(Data Traffic)は、最低帯域を保障しないベストエフォートのIPトンネル(T2)といった形で、フローごとにトンネル選択させることは可能である。しかし、VTがIPトンネル(T1)のポリシングレートを超えてしまった場合には、仮にIPNW内の転送リソースに空きがある場合でも確実に廃棄されてしまい、IPトンネル(T1)のポリシングレートを超えたVTを、ベストエフォートで転送可能とすることはできない。
【0007】
このような背景に鑑みて、本発明がなされたのであり、本発明は、最低保障帯域を確保しつつ、リソースに空きがある場合に最低保障帯域を超えてパケットの送出が可能な、ゲートウェイ装置およびIPトンネル選択方法を提供することを課題とする。
【課題を解決するための手段】
【0008】
前記した課題を解決するため、請求項1に記載の発明は、通信帯域が保障される優先トンネルと前記通信帯域の保障がない非優先トンネルとを、データ送信側の拠点とデータ受信側の拠点との間を接続するIPネットワークに設定し、前記優先トンネルおよび前記非優先トンネルを終端するゲートウェイ装置であって、送信側の前記ゲートウェイ装置から受信側の前記ゲートウェイ装置へ向けてのフローのうち、帯域保障の設定を行うフローを識別するフロー識別情報と、前記フロー識別情報ごとに前記設定する帯域保障の上限である上限帯域と、を格納したポリシング情報を記憶する記憶部と、前記データ送信側の拠点に含まれる端末装置から、パケットを受信する入出力部と、前記受信したパケットが、前記帯域保障を設定して送信すべきパケットか否かを前記フロー識別情報を参照して判定し、当該パケットが前記帯域保障を設定して送信すべきパケットと判定した場合に、当該パケットのフローに対応した前記上限帯域を前記ポリシング情報に基づき設定するポリシング設定部と、前記帯域保障を設定して送信すべきパケットのうち、前記上限帯域までのパケットは、前記優先トンネルを、当該パケットを送信するトンネルとして選択し、前記上限帯域を超えたパケットは、前記非優先トンネルを、当該パケットを送信するトンネルとして選択するトンネル選択部と、前記選択された優先トンネルを用いて、前記上限帯域までのパケット送信し、前記選択された非優先トンネルを用いて、前記上限帯域を超えたパケットを送信するパケット送信部と、を備えることを特徴とするゲートウェイ装置とした。
【0009】
また、請求項4に記載の発明は、通信帯域が保障される優先トンネルと前記通信帯域の保障がない非優先トンネルとを、データ送信側の拠点とデータ受信側の拠点との間を接続するIPネットワークに設定し、前記優先トンネルおよび前記非優先トンネルを終端するゲートウェイ装置に用いられるIPトンネル選択方法であって、前記ゲートウェイ装置が、送信側の前記ゲートウェイ装置から受信側の前記ゲートウェイ装置へ向けてのフローのうち、帯域保障の設定を行うフローを識別するフロー識別情報と、前記フロー識別情報ごとに前記設定する帯域保障の上限である上限帯域と、を格納したポリシング情報を記憶する記憶部を備え、前記データ送信側の拠点に含まれる端末装置から、パケットを受信するステップと、前記受信したパケットが、前記帯域保障を設定して送信すべきパケットか否かを前記フロー識別情報を参照して判定し、当該パケットが前記帯域保障を設定して送信すべきパケットと判定した場合に、当該パケットのフローに対応した前記上限帯域を前記ポリシング情報に基づき設定するステップと、前記帯域保障を設定して送信すべきパケットのうち、前記上限帯域までのパケットは、前記優先トンネルを、当該パケットを送信するトンネルとして選択し、前記上限帯域を超えたパケットは、前記非優先トンネルを、当該パケットを送信するトンネルとして選択するステップと、前記選択された優先トンネルを用いて、前記上限帯域までのパケット送信し、前記選択された非優先トンネルを用いて、前記上限帯域を超えたパケットを送信するステップと、を実行することを特徴とするIPトンネル選択方法とした。
【0010】
このようにすることで、本発明によれば、受信したパケットが帯域保障を設定して送信すべきパケットと判定した場合に、そのパケットのフローに対応した上限帯域を設定し、その上限帯域までのパケットについては、IPネットワークに設定された優先トンネルを用いて送信する。一方、上限帯域を超えたパケットについては、非優先トンネルで送信することができる。よって、最低保障帯域を確保しつつ、リソースに空きがある場合に最低保障帯域を超えてパケットを送出することが可能となる。
【0011】
請求項2に記載の発明は、前記パケットの送信に必要な帯域に相当するトークンを、前記フローごとの前記上限帯域に相当するQoSトークンと、前記ゲートウェイ装置全体としての帯域の余剰分に相当する余剰トークンと、に分けて設定するトークン処理部を、さらに備え、前記トークン処理部が、前記ポリシング設定部が設定した前記上限帯域に応じた所定のレートで、前記QoSトークンを前記記憶部内の所定領域に格納し、前記受信したパケットの帯域が、前記格納したQoSトークン以下であり、当該QoSトークンを取得できた場合に、前記受信したパケットを前記優先トンネルで送信するパケットと識別し、当該識別したパケットを前記トンネル選択部に出力し、前記受信したパケットの帯域が、前記格納したQoSトークンを超えており、当該QoSトークンを取得できない場合に、前記余剰トークンを取得できるか否かを判定し、前記余剰トークンを取得できたときに、前記受信したパケットを前記非優先トンネルで送信するパケットと識別し、当該識別したパケットを前記トンネル選択部に出力することを特徴とする請求項1に記載のゲートウェイ装置とした。
【0012】
また、請求項5に記載の発明は、前記設定した上限帯域に応じた所定のレートで、前記フローごとの前記上限帯域に相当するQoSトークンを前記記憶部内の所定領域に格納し、前記受信したパケットの帯域が、前記格納したQoSトークン以下であり、当該QoSトークンを取得できた場合に、前記受信したパケットを前記優先トンネルで送信するパケットと識別し、当該識別したパケットを前記トンネル選択部に出力するステップと、前記受信したパケットの帯域が、前記格納したQoSトークンを超えており、当該QoSトークンを取得できない場合に、前記ゲートウェイ装置全体としての帯域の余剰分に相当する余剰トークンを取得できるか否かを判定し、前記余剰トークンを取得できたときに、前記受信したパケットを前記非優先トンネルで送信するパケットと識別し、当該識別したパケットを前記トンネル選択部に出力するステップと、を実行することを特徴とする請求項4に記載のIPトンネル選択方法とした。
【0013】
このように、パケットの送信に必要な帯域に相当するトークンを、フローごとの上限帯域に相当するQoSトークンと、ゲートウェイ装置全体としての帯域の余剰分に相当する余剰トークンと、に分けて設定を行うことで、QoSトークンを取得できたパケットについては、優先トンネルで送信するパケットと識別する。また、QoSトークンを取得できず、余剰トークンを取得できたパケットについては、非優先トンネルで送信するパケットと識別する。よって、ゲートウェイ装置が受信したパケットを、優先トンネルと非優先トンネルの2つに振り分けることができる。
【0014】
請求項3に記載の発明は、前記通信帯域の保障を確保する必要のある前記フローのトラフィック種別が記憶されたトラフィック種別情報が前記記憶部にさらに記憶されており、前記受信したパケットのヘッダ情報から前記トラフィック種別を抽出し、前記抽出したトラフィック種別が、前記通信帯域の保障を確保する必要のあるトラフィック種別であるか否かを、前記トラフィック種別情報に基づき判定するフロー種別識別部を備え、前記フロー種別識別部が、前記通信帯域の保障を確保する必要のあるトラフィック種別であると判定した場合に、前記受信したパケットを、前記優先トンネルで送信すべきパケットとして前記ポリシング設定部に出力し、前記通信帯域の保障を確保する必要のあるトラフィック種別でないと判定した場合に、前記受信したパケットを、前記トークン処理部に出力し、前記トークン処理部は、当該出力されたパケットが、前記余剰トークンを取得できるか否かを判定することを特徴とする請求項2に記載のゲートウェイ装置とした。
【0015】
また、請求項6に記載の発明は、前記通信帯域の保障を確保する必要のある前記フローのトラフィック種別が記憶されたトラフィック種別情報が前記記憶部にさらに記憶されており、前記受信したパケットのヘッダ情報から前記トラフィック種別を抽出し、前記抽出したトラフィック種別が、前記通信帯域の保障を確保する必要のあるトラフィック種別であるか否かを、前記トラフィック種別情報に基づき判定するステップと、前記トラフィック種別を判定するステップにおいて、前記通信帯域の保障を確保する必要のあるトラフィック種別であると判定した場合に、前記受信したパケットを、前記優先トンネルで送信すべきパケットとして、前記上限帯域をポリシング情報に基づき設定するステップに引き渡すステップと、前記トラフィック種別を判定するステップにおいて、前記通信帯域の保障を確保する必要のあるトラフィック種別でないと判定した場合に、前記余剰トークンを取得できるか否かを判定するステップに引き渡すステップとを実行すること特徴とする請求項5に記載のIPトンネル選択方法とした。
【0016】
このように、通信帯域の保障を確保する必要のあるトラフィック種別を判定することにより、通信帯域の保証を確保する必要がないトラフィック種別のパケットについては、優先トンネルで送信するパケットか否かの判定処理を行わない。つまり、優先トンネルで送信させずに非優先トンネルで送信させることができる。よって、通信帯域の保証を確保する必要のあるトラフィック種別のパケットを、より多く優先トンネルで送信することが可能となる。
【発明の効果】
【0017】
本発明によれば、最低保障帯域を確保しつつ、リソースに空きがある場合に最低保障帯域を超えてパケットの送出が可能な、ゲートウェイ装置およびIPトンネル選択方法を提供することができる。
【図面の簡単な説明】
【0018】
【図1】2拠点のゲートウェイ装置を接続するIPNWに、優先トンネルを設定した例を示す図である。
【図2】2拠点のゲートウェイ装置を接続するIPNWに、非優先トンネルを設定した例を示す図である。
【図3】本実施形態に係るゲートウェイ装置間を接続するIPNWに、優先トンネルと非優先トンネルとを設定した例を示す図である。
【図4】本実施形態に係るゲートウェイ装置の構成例を示す機能ブロック図である。
【図5】本実施形態に係るポリシング情報のデータ構成の一例を示す図である。
【図6】本実施形態に係るゲートウェイ装置の処理の流れを示すフローチャートである。
【図7】本実施形態に係るトークン処理部によるパケット識別処理の流れを説明するための図である。
【図8】IPNW内において、トンネルの代わりに、ソースアドレスをNAT変換して送信する例を説明するための図である。
【図9】本実施形態の変形例に係るゲートウェイ装置の構成例を示す機能ブロック図である。
【図10】本実施形態の変形例に係るゲートウェイ装置の処理の流れを説明するための図である。
【発明を実施するための形態】
【0019】
次に、本発明を実施するための形態(以下、「実施形態」という)について、適宜図面を参照しながら詳細に説明する。
【0020】
<概要>
まず、本実施形態の概要について図1から図3を用いて説明する。
【0021】
2拠点(X,Y)を接続するIPネットワーク(NW)において、優先処理を行うIPフローの合計値をIPNW内部の上限の帯域(仮に、100Mbpsとする)にする。そして、優先処理を行うIPフローに対し、IPNWのエンドエンドで、最低通信帯域を確保する。つまり、図1に示すように、2拠点(X,Y)にIPトンネルを終端するIPトンネル終端ゲートウェイ装置(GW10X,10Y)をそれぞれ設置し、GW10X,10Y間をIPトンネルで接続して当該IPトンネルのフローを優先処理とし、IPNW内のポリシングレートを仮に1Mbpsと設定する。このようにすれば、当該拠点X,Y間に最大利用可能帯域(MAX)1Mbps、最低保障帯域(MIN)1Mbpsの最低帯域保障が可能なQoS(帯域保障)型VPNを構築することができる。なお、ここでポリシングレートとは、帯域保障を行う上限帯域を意味し、この上限帯域を超えたパケットは廃棄される。
【0022】
一方、図2に示すように、このIPトンネルを非優先つまり帯域保障を設定しないこととすると、IPNW内部の帯域リソースに余裕がある時(閑散時)のみ転送可能で、IPNW内部の帯域リソースに余裕がない時(混雑時)には転送不可となる、最大利用可能帯域(MAX)100Mbps、最低保障帯域(MIN)0Mbpsのベストエフォート型VPNを構築することができる。
【0023】
このIPNW内で、本実施形態においては、図3に示すように、GW10X,10Y間に、優先処理(帯域保証の設定)を行うIPトンネル(優先トンネル)と非優先(帯域保証を行わない)のIPトンネル(非優先トンネル)との2本のIPトンネルを接続する。そして、GW10(GW10X,10Y)が、IPフローごとに、(1)高優先度の優先クラス設定(帯域保障)を行いポリシングに基づくポリシングレート(上限帯域)を設定する優先処理、(2)ベストエフォートの優先クラス設定を行いIPNW内の転送リソースに空きがある場合のみ転送する非優先処理、の選択ができるものとする。なお、ここでポリシングとは、ポリシングレート(上限帯域)を超えたパケットを廃棄することで帯域制御することをいう。
【0024】
具体的には、GW10Yに向けて優先して転送すべきフローを受信したGW10Xは、1Mbpsまでのパケットに対しては優先トンネルを選択して送信し、1Mbpsを超えるパケットについては、非優先トンネルを選択して転送する。このようにすることで、最低保障帯域(ここでは1Mbps)を確保しつつ、IPNWのリソースに空きがあれば、その最低保障帯域を超えて送出することができる、最大利用帯域(MAX)100Mbps、最低保障帯域(MIN)1Mbpsのバースト型VPNを実現することが可能となる。なお、ここで、「バースト」とは、IPNWにおいて、通信帯域が保障された上限帯域を超えて転送可能とすることである。
【0025】
なお、この優先トンネルと非優先トンネルの選択は、GW(ゲートウェイ装置)10(GW10X,10Y)のトークン処理部123およびトンネル選択部124(後記する図4および図7参照)が行う。このトークン処理部123は、フローごとの上限帯域に相当するQoS(Quality of Service)トークンと、GW10全体としての帯域の余剰分に相当する余剰トークンとを設定し、送信すべきパケットがQoSトークンを取得できた場合にはトンネル選択部124に優先トンネルを選択させるように処理する。一方、トークン処理部123は、送信すべきパケットがQoSトークンを取得できない場合において、余剰トークンを取得できた場合に、トンネル選択部124に非優先トンネルを選択させるように処理する。このトークン処理部123およびトンネル選択部124によるトンネル選択に関する処理は、後記において詳細に説明する。
【0026】
<ゲートウェイ装置の構成>
次に、本実施形態に係るGW(ゲートウェイ装置)10の構成について説明する。図4は、本実施形態に係るGW10の構成例を示す機能ブロック図である。
【0027】
GW10は、入出力部11と、処理部12と、記憶部13と含んで構成される通信装置である。
【0028】
入出力部11は、各種データの入出力を司り、このGW10への設定情報の入力等を受け付ける入出力インタフェースと、各拠点に含まれる端末装置(不図示)等からIPNW内でのトンネル確立要求を受け付けたり、IPNWを介して通信するパケットを送受信したりするネットワークインタフェースとから構成される。
【0029】
処理部12は、GW10自身(例えば、GW10X)と、IPNWを介して接続された他のGW10(例えば、GW10Y)との間で接続されたIPトンネルの中から、優先処理(帯域保証の設定)を行うIPトンネル(優先トンネル)、または、非優先(帯域保証を行わない)のIPトンネル(非優先トンネル)を選択し、選択したトンネルによりパケットを送信する処理を行う。この処理部12は、接続処理部121と、ポリシング設定部122と、トークン処理部123と、トンネル選択部124と、パケット送信部125とを含んで構成される。
【0030】
接続処理部121は、各拠点に含まれる端末装置(不図示)等から入出力部11が受け付けたトンネル確立要求に基づき、他の拠点のGW10(例えば、GW10Y)との間のIPNWにトンネルを確立する。このとき接続処理部121は、優先処理を行うIPトンネル(優先トンネル)と、優先処理を行わないIPトンネル(非優先トンネル)の2つを確立する。そして、接続処理部121は、確立した2つのIPトンネルに関する情報を経路情報131として記憶部13に記憶する。なお、本実施形態において、接続処理部121は、優先トンネルと非優先トンネルを1本ずつ確立したものとして説明するが、優先トンネルと非優先トンネルは、それぞれ1本以上であればよく、1本に限定されるものではない。
【0031】
ポリシング設定部122は、受信したパケットが、優先トンネルで帯域保障を設定して送信すべきパケットか否かを判定する。この判定は、ポリシング設定部122が、受信したパケットのヘッダ情報から送信先アドレス等の取得し、この送信先アドレス等により識別されるフローが、優先処理すべきフローとしてポリシング情報132(後記する図5参照)に設定されているか否かにより行う。なお、ここでポリシング設定部122がフローの識別するために取得する、例えば、送信先アドレスや、送信元アドレス、プロトコル、TCP/UDPヘッダのポート情報等の優先処理すべきフローか否かを識別するための情報を、本請求項においてフロー識別情報とする。
なお、ポリシング設定部122は、受信したパケットのヘッダ情報の含まれるTOS(Type of Service)値や、DSCP(Differentiated Services Code Point)値を用いて、受信したパケットを、優先トンネルを用いて帯域保障を設定して送信すべきパケットを判定するようにしてもよい。
【0032】
また、ポリシング設定部122は、優先処理すべきフローとしてポリシング情報132(図5参照)に設定されているフローについて、そのフロー識別情報に対応したポリシングレート(上限帯域)を、ポリシング情報132に基づき設定する。
【0033】
トークン処理部123は、パケットの送信に必要な帯域に相当するトークンを、フローごとの上限帯域に相当するQoSトークンと、GW10全体としての帯域の余剰分に相当する余剰トークンと、に分けて設定する。
そして、トークン処理部123は、QoSトークンを所定の間隔でバケット(記憶部13内の所定領域)に格納する。トークン処理部123がパケットを受信すると、その受信したパケットのデータ量(帯域)と、バケット内のQoSトークンの量とを比較し、受信したパケットのデータ量(帯域)以上のQoSトークンがQoSトークンのバケットに格納されていれば、そのパケットは自身のデータ量(帯域)に相当するQoSトークンを取得することができる。そして、トークン処理部123は、QoSトークンを取得できたことで、そのパケットを優先トンネルで送信するパケットと識別する。一方、受信したパケットがQoSトークンを取得できなかった場合には、トークン処理部123は、次に、余剰トークンを取得できるか否かを判定する。受信したパケットが余剰トークンを取得できた場合には、トークン処理部123は、そのパケットを非優先トンネルで送信するパケットと識別する。
なお、トークン処理部123は、余剰トークンを取得できなかった場合に、そのパケットを廃棄する。
【0034】
トンネル選択部124は、トークン処理部123が優先トンネルを用いて送信すると識別したパケットについて、優先トンネルで送信することを選択する。また、トンネル選択部124は、トークン処理部123が非優先トンネルを用いて送信すると識別したパケットについて、非優先トンネルで送信することを選択する。
【0035】
パケット送信部125は、トンネル選択部124が優先トンネルを選択したパケットについて、経路情報131を参照し、そのパケットをカプセリングして優先トンネルを用いて転送する処理を行う。また、パケット送信部125は、トンネル選択部124が非優先トンネルを選択したパケットについて、経路情報131を参照し、そのパケットをカプセリングして非優先トンネルを用いて転送する処理を行う。
なお、パケット送信部125は、GW10が受信側の他のGW10(GW10Y)である場合に、カプセリングされたパケットを受け取り、カプセリングを解除し、自己の拠点内に転送する処理を行う。
【0036】
また、記憶部13には、経路情報131とポリシング情報132とが記憶される。
【0037】
経路情報131には、パケットの送信先となるGW10の終端アドレスと、その終端アドレス宛に、接続処理部121が確立した優先トンネルおよび非優先トンネルに関する情報が記憶される。
【0038】
ポリシング情報132には、図5に示すように、GW10X,10Y間を優先処理で送信するフローを識別するためのフロー識別情報と、フロー識別情報ごとのポリシングレート(上限帯域)とが記憶される。
このフロー識別情報は、従来技術のように、送信先アドレスだけでもよく、さらに、送信元アドレス、プロトコル、TCP/UDPヘッダのポート情報等のいずれかまたはこれらの組み合わせにより定義される情報が含まれていてもよい。ポリシング設定部122は、受信したパケットのヘッダ情報に含まれる送信先アドレス等に基づき、ポリシング情報132のフロー識別情報を参照して、そのパケットのフローが優先処理(帯域保障の設定)すべきフローか否かを判定する。
また、ポリシングレートには、フロー識別情報ごとの上限帯域が記憶される。このポリシングレートは、ポリシング設定部122が、受信したパケットのフローを優先処理すべきと判定した場合に、そのフローのポリシングレートを設定する際に参照される。
【0039】
なお、図4に示す処理部12は、GW10が備えるCPU(Central Processing Unit)によるプログラム実行処理や、専用回路等により実現される。また、記憶部13は、RAM(Random Access Memory)、HDD(Hard Disk Drive)、フラッシュメモリ等の記憶媒体から構成される。また、GW10をプログラム実行処理により実現する場合、記憶部13には、このGW10の機能を実現するためのプログラムが格納される。
【0040】
<処理手順>
次に、本実施形態に係るGW(ゲートウェイ装置)10の処理手順について、図4,図5を参照しつつ、図6および図7を用いて詳細に説明する。図6は、本実施形態に係るゲートウェイ装置10(GW10X)の処理の流れを示すフローチャートである。また、図7は、本実施形態に係るトークン処理部123によるパケット識別処理の流れを説明するための図である。
【0041】
ここでは、図3に示すように、各拠点に設けられたGW10XとGW10Yとの間で、接続処理部121の処理により、IPネットワークに優先トンネルと非優先トンネルが既に設定されているものとする。また、記憶部13には、フローごとに対応したポリシング情報132(図5参照)が記憶されているものとして説明する。
【0042】
まず、GW10Xは、入出力部11を介して、GW10Yに向けて送出すべきパケットを受信する(ステップS101)。
【0043】
次に、ポリシング設定部122は、パケットのヘッダ部に付されたヘッダ情報の送信先アドレス等のフロー識別情報に基づき、ポリシング情報132(図5)を参照し、そのパケットが優先処理すべきパケットか否かを判定する。そして、優先処理すべきパケットと判定した場合に、ポリシング設定部122は、そのフロー識別情報に対応したポリシングレート(上限帯域)を、ポリシング情報132に基づき設定する(ステップS102)。
【0044】
続いて、トークン処理部123は、優先処理すべきと判定したパケットについて、さらに、優先トンネルを用いて送信するパケットか、非優先トンネルを用いて送信するパケットかのパケット識別処理を行う(ステップS103)。このパケット識別処理において、トークン処理部123は、受信したパケットがQoSトークンを取得できた場合に、そのパケットを優先トンネルで送信するパケットと識別する。一方、受信したパケットがQoSトークンを取得できなかった場合に、余剰トークンを取得できたときには、トークン処理部123は、そのパケットを非優先トンネルで送信するパケットと識別する。なお、このトークン処理部123によるパケット識別処理の詳細は、図7において説明する。
【0045】
次に、トンネル選択部124は、トークン処理部123が優先トンネルを用いて送信すると識別したパケットについて、優先トンネルで送信することを選択し、非優先トンネルを用いて送信すると識別したパケットについて、非優先トンネルで送信することを選択する(ステップS104)。
【0046】
そして、パケット送信部125は、トンネル選択部124が選択したトンネルを用いてパケットを送信する処理を行う(ステップS105)。具体的には、トンネル選択部124が優先トンネルを選択したパケットについて、そのパケットをカプセリングして優先トンネルを用いて転送する処理を行う。また、パケット送信部125は、トンネル選択部124が非優先トンネルを選択したパケットについて、そのパケットをカプセリングして非優先トンネルを用いて転送する処理を行う。
【0047】
<パケット識別処理>
次に、図7を用いて、本実施形態に係るトークン処理部123によるパケット識別処理の流れを説明する。
【0048】
トークン処理部123は、ポリシングによる帯域制御を行うために、QoSトークンと余剰トークンとを管理する。ここでトークンとは、パケットの転送に必要な帯域(データ量)に相当するものであり、トークン処理部123は、最低帯域を保証するために常に所定のレートで付与されるQoSトークンと、GW装置10全体としての帯域の余剰分に相当する余剰トークンとを設定する。図7に示すように、トークン処理部123は、QoSトークンをQoSトークン用のバケットに所定の間隔で投入する。また、QoSトークンの余剰分やGW装置10全体で余っているトークンを余剰トークン用のバケットに投入する。このバケットは、転送すべきトラフィックを格納するバッファに相当するものである。
【0049】
まず、トークン処理部123がGW10Yに送出すべきパケットを受信する(ステップS201)。次に、トークン処理部123は、そのパケットの転送に必要な帯域(データ量)のQoSトークンが、QoSトークン用のバケット内にあり、QoSトークンを取得できるか否かを判定する(ステップS202)。そして、そのパケットがQoSトークンを取得できた場合には(ステップS202→Yes)、トークン処理部123は、そのパケットは、優先トンネルで送信するパケットと識別する。そして、その情報をトンネル選択部124へ出力し、優先トンネルを用いて転送が行われる。
【0050】
一方、そのパケットがQoSトークンを取得できない場合(ステップS202→No)、つまり、QoSトークンがすでに取得されており、Qosトークン用のバケットに残っていなかった場合に、トークン処理部123は、余剰トークンを取得できるか否かを判定する(ステップS203)。
【0051】
ここで、余剰トークン用のバケット内に、余剰トークンがそのパケットの転送に必要な分の帯域として入っている場合には(ステップS203→Yes)、そのパケットは、余剰トークンを取得でき、トークン処理部123は、非優先トンネルで送信するパケットと識別する。そして、その情報をトンネル選択部124へ出力し、非優先トンネルを用いて転送が行われる。
【0052】
一方、余剰トークンを取得できなかったときは(ステップS203→No)、トークン処理部123は、そのパケットを廃棄する(ステップS204)。
【0053】
このようにすることで、本実施形態に係るゲートウェイ装置およびIPトンネル選択方法によれば、最低保障帯域を確保しつつ、リソースに空きがある場合に最低保障帯域を超えてパケットの送出が可能な、バースト型のVPNを構成することが可能となる。
【0054】
なお、本実施形態においては、GW10X,10Y間を転送するトラフィックを2つのトンネルに振り分ける方式で、優先処理(帯域保障の設定)を行った。これに対し、トンネルを用いずに、中継するフローのソースアドレス変換を行うNAT(Network Address Translation)技術を用いても同様に、バースト型のVPNを構成することができる。この場合、GW10Xは、IPNW内で優先処理を行うNATアドレスIP_Aと、非優先のNATアドレスIP_Bとを記憶部13(図4参照)内に記憶しておく。そして、図8に示すように、GW10Xは、IPNW内に送信する際に、受信したパケットがQoSトークンを取得できた場合には(ステップS202→Yes)、パケット送信部125(図4参照)が、ソースアドレスをIP_AにNAT変換して送出し(ステップS301)、IPNW内で優先処理を行う。一方、受信したパケットが、QoSトークンを取得できず(ステップS202→No)、余剰トークンを取得できた場合には(ステップS203→Yes)、パケット送信部125が、ソースアドレスをIP_BにNAT変換して送出し(ステップS302)、IPNQ内をベストエフォートで転送する。このようにすることで、NAT技術を用いたバースト型のVPNを構成することができる。
【0055】
≪本実施形態の変形例≫
次に、本実施形態の変形例について説明する。
本実施形態に係るゲートウェイ装置およびIPトンネル選択方法によれば、全トラフィックの合計がポリシングレート(上限帯域)を超えた場合に、トラフィックはランダムに非優先トンネルに送出される。限られた帯域リソースのネットワークにおいては、音声や動画のように通信帯域を確保したいトラフィック種別(一例として「音声通信:VT」とする)と、ファイル転送のように通信帯域を確保する必要のないトラフィック種別(一例として「ファイル転送通信:DT」とする)に分け、VTに帯域リソースを優先的に割り当てることが望まれる。これを実現するために、ゲートウェイ装置がパケットを受信すると、まず、トラフィック種別を判定し、そのパケットのトラフィック種別がDTであれば優先トンネルでは流さないようにし、VTを優先トンネルに割り当てるようにする。このようにすることで、通信帯域を確保したいトラフック種別(VT)のパケットを、より多く優先トンネルで送信することが可能となる。
【0056】
図9は、本実施形態の変形例に係るGW(ゲートウェイ装置)10(10a)の構成例を示す機能ブロック図である。図4に示した本実施形態に係るGW10との違いは、記憶部13にトラフィック種別情報133を備え、処理部12にフロー種別識別部126をさらに備えていることである。なお、図4に示した本実施形態に係るGW10と同じ構成については、同一の符号を付し、説明を省略する。
【0057】
トラフィック種別情報133は、通信帯域の保障を確保する必要のあるフローのトラフィック種別(例えば、VT)が記憶される。
フロー種別識別部126は、入出力部11がパケットを受信すると、そのパケットのヘッダ情報(例えば、プロトコル番号等)からトラフィック種別を抽出し、その抽出したトラフィック種別が、通信帯域の確保したいトラフィック種別か否かを、トラフィック種別情報133に基づき判定する。
【0058】
図10に示すように、GW10Xは、パケットを受信すると、まず、フロー種別識別部126が、通信帯域の確保したいトラフィック種別か否かを、トラフィック種別情報133を参照して判定する(ステップS401)。そして、フロー種別識別部126は、通信帯域を確保する必要があるトラフック種別である(例えば、VT)と判定した場合に(ステップS401→Yes)、受信したパケットを、優先トンネルで送信すべきパケットとしてポリシング設定部122に出力し、トークン処理部123がステップS202以降の処理を行う。一方、フロー種別識別部126は、通信帯域を確保する必要があるトラフック種別ではない(例えば、DT)と判定した場合に(ステップS401→No)、受信したパケットを、トークン処理部123に出力し、トークン処理部123が、余剰トークンを取得できたかを判定するステップS203以降の処理を行う。
【0059】
このようにすることで、本実施形態の変形例に係るゲートウェイ装置およびIPトンネル選択方法によれば、通信帯域を確保する必要がないトラフィック種別を予め判定することにより、優先トンネルで送信できるか否かの判定処理、例えば、ポリシング設定部122によるポリシングレートの設定や、トークン処理部123によるQoSトークンの取得処理(図10のステップS202)を省略でき、優先トンネルでの送信を行わず、非優先トンネルで送信させることができる。よって、通信帯域を確保したいトラフィック種別のパケットを、より多く優先トンネルで送信することが可能となる。
【符号の説明】
【0060】
10,10a ゲートウェイ装置
11 入出力部
12 処理部
13 記憶部
121 接続処理部
122 ポリシング設定部
123 トークン処理部
124 トンネル選択部
125 パケット送信部
126 フロー種別識別部
131 接続情報
132 ポリシング情報
133 トラフィック種別情報

【特許請求の範囲】
【請求項1】
通信帯域が保障される優先トンネルと前記通信帯域の保障がない非優先トンネルとを、データ送信側の拠点とデータ受信側の拠点との間を接続するIPネットワークに設定し、前記優先トンネルおよび前記非優先トンネルを終端するゲートウェイ装置であって、
送信側の前記ゲートウェイ装置から受信側の前記ゲートウェイ装置へ向けてのフローのうち、帯域保障の設定を行うフローを識別するフロー識別情報と、前記フロー識別情報ごとに前記設定する帯域保障の上限である上限帯域と、を格納したポリシング情報を記憶する記憶部と、
前記データ送信側の拠点に含まれる端末装置から、パケットを受信する入出力部と、
前記受信したパケットが、前記帯域保障を設定して送信すべきパケットか否かを前記フロー識別情報を参照して判定し、当該パケットが前記帯域保障を設定して送信すべきパケットと判定した場合に、当該パケットのフローに対応した前記上限帯域を前記ポリシング情報に基づき設定するポリシング設定部と、
前記帯域保障を設定して送信すべきパケットのうち、前記上限帯域までのパケットは、前記優先トンネルを、当該パケットを送信するトンネルとして選択し、前記上限帯域を超えたパケットは、前記非優先トンネルを、当該パケットを送信するトンネルとして選択するトンネル選択部と、
前記選択された優先トンネルを用いて、前記上限帯域までのパケット送信し、前記選択された非優先トンネルを用いて、前記上限帯域を超えたパケットを送信するパケット送信部と、
を備えることを特徴とするゲートウェイ装置。
【請求項2】
前記パケットの送信に必要な帯域に相当するトークンを、前記フローごとの前記上限帯域に相当するQoSトークンと、前記ゲートウェイ装置全体としての帯域の余剰分に相当する余剰トークンと、に分けて設定するトークン処理部を、さらに備え、
前記トークン処理部は、
前記ポリシング設定部が設定した前記上限帯域に応じた所定のレートで、前記QoSトークンを前記記憶部内の所定領域に格納し、前記受信したパケットの帯域が、前記格納したQoSトークン以下であり、当該QoSトークンを取得できた場合に、前記受信したパケットを前記優先トンネルで送信するパケットと識別し、当該識別したパケットを前記トンネル選択部に出力し、
前記受信したパケットの帯域が、前記格納したQoSトークンを超えており、当該QoSトークンを取得できない場合に、前記余剰トークンを取得できるか否かを判定し、前記余剰トークンを取得できたときに、前記受信したパケットを前記非優先トンネルで送信するパケットと識別し、当該識別したパケットを前記トンネル選択部に出力すること
を特徴とする請求項1に記載のゲートウェイ装置。
【請求項3】
前記通信帯域の保障を確保する必要のある前記フローのトラフィック種別が記憶されたトラフィック種別情報が前記記憶部にさらに記憶されており、
前記受信したパケットのヘッダ情報から前記トラフィック種別を抽出し、前記抽出したトラフィック種別が、前記通信帯域の保障を確保する必要のあるトラフィック種別であるか否かを、前記トラフィック種別情報に基づき判定するフロー種別識別部を備え、
前記フロー種別識別部が、
前記通信帯域の保障を確保する必要のあるトラフィック種別であると判定した場合に、前記受信したパケットを、前記優先トンネルで送信すべきパケットとして前記ポリシング設定部に出力し、
前記通信帯域の保障を確保する必要のあるトラフィック種別でないと判定した場合に、前記受信したパケットを、前記トークン処理部に出力し、
前記トークン処理部は、
当該出力されたパケットが、前記余剰トークンを取得できるか否かを判定すること
を特徴とする請求項2に記載のゲートウェイ装置。
【請求項4】
通信帯域が保障される優先トンネルと前記通信帯域の保障がない非優先トンネルとを、データ送信側の拠点とデータ受信側の拠点との間を接続するIPネットワークに設定し、前記優先トンネルおよび前記非優先トンネルを終端するゲートウェイ装置に用いられるIPトンネル選択方法であって、
前記ゲートウェイ装置は、
送信側の前記ゲートウェイ装置から受信側の前記ゲートウェイ装置へ向けてのフローのうち、帯域保障の設定を行うフローを識別するフロー識別情報と、前記フロー識別情報ごとに前記設定する帯域保障の上限である上限帯域と、を格納したポリシング情報を記憶する記憶部を備え、
前記データ送信側の拠点に含まれる端末装置から、パケットを受信するステップと、
前記受信したパケットが、前記帯域保障を設定して送信すべきパケットか否かを前記フロー識別情報を参照して判定し、当該パケットが前記帯域保障を設定して送信すべきパケットと判定した場合に、当該パケットのフローに対応した前記上限帯域を前記ポリシング情報に基づき設定するステップと、
前記帯域保障を設定して送信すべきパケットのうち、前記上限帯域までのパケットは、前記優先トンネルを、当該パケットを送信するトンネルとして選択し、前記上限帯域を超えたパケットは、前記非優先トンネルを、当該パケットを送信するトンネルとして選択するステップと、
前記選択された優先トンネルを用いて、前記上限帯域までのパケット送信し、前記選択された非優先トンネルを用いて、前記上限帯域を超えたパケットを送信するステップと、
を実行することを特徴とするIPトンネル選択方法。
【請求項5】
前記設定した上限帯域に応じた所定のレートで、前記フローごとの前記上限帯域に相当するQoSトークンを前記記憶部内の所定領域に格納し、前記受信したパケットの帯域が、前記格納したQoSトークン以下であり、当該QoSトークンを取得できた場合に、前記受信したパケットを前記優先トンネルで送信するパケットと識別し、当該識別したパケットを前記トンネル選択部に出力するステップと、
前記受信したパケットの帯域が、前記格納したQoSトークンを超えており、当該QoSトークンを取得できない場合に、前記ゲートウェイ装置全体としての帯域の余剰分に相当する余剰トークンを取得できるか否かを判定し、前記余剰トークンを取得できたときに、前記受信したパケットを前記非優先トンネルで送信するパケットと識別し、当該識別したパケットを前記トンネル選択部に出力するステップと、
を実行することを特徴とする請求項4に記載のIPトンネル選択方法。
【請求項6】
前記通信帯域の保障を確保する必要のある前記フローのトラフィック種別が記憶されたトラフィック種別情報が前記記憶部にさらに記憶されており、
前記受信したパケットのヘッダ情報から前記トラフィック種別を抽出し、前記抽出したトラフィック種別が、前記通信帯域の保障を確保する必要のあるトラフィック種別であるか否かを、前記トラフィック種別情報に基づき判定するステップと、
前記トラフィック種別を判定するステップにおいて、前記通信帯域の保障を確保する必要のあるトラフィック種別であると判定した場合に、前記受信したパケットを、前記優先トンネルで送信すべきパケットとして、前記上限帯域をポリシング情報に基づき設定するステップに引き渡すステップと、
前記トラフィック種別を判定するステップにおいて、前記通信帯域の保障を確保する必要のあるトラフィック種別でないと判定した場合に、前記余剰トークンを取得できるか否かを判定するステップに引き渡すステップと、
を実行すること特徴とする請求項5に記載のIPトンネル選択方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate


【公開番号】特開2012−44344(P2012−44344A)
【公開日】平成24年3月1日(2012.3.1)
【国際特許分類】
【出願番号】特願2010−182069(P2010−182069)
【出願日】平成22年8月17日(2010.8.17)
【出願人】(000004226)日本電信電話株式会社 (13,992)
【Fターム(参考)】