JP2010220038A - ゲートウェイ装置 - Google Patents
ゲートウェイ装置 Download PDFInfo
- Publication number
- JP2010220038A JP2010220038A JP2009066335A JP2009066335A JP2010220038A JP 2010220038 A JP2010220038 A JP 2010220038A JP 2009066335 A JP2009066335 A JP 2009066335A JP 2009066335 A JP2009066335 A JP 2009066335A JP 2010220038 A JP2010220038 A JP 2010220038A
- Authority
- JP
- Japan
- Prior art keywords
- tunnel
- processing load
- encryption
- determination value
- control unit
- 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.)
- Pending
Links
- 238000012545 processing Methods 0.000 claims abstract description 198
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 156
- 238000004891 communication Methods 0.000 claims abstract description 94
- 238000000034 method Methods 0.000 claims description 49
- 230000008569 process Effects 0.000 claims description 48
- 238000012544 monitoring process Methods 0.000 claims description 29
- 230000015572 biosynthetic process Effects 0.000 claims description 13
- 230000004044 response Effects 0.000 claims description 6
- 238000004364 calculation method Methods 0.000 claims description 5
- 230000007423 decrease Effects 0.000 claims description 5
- 238000012217 deletion Methods 0.000 claims description 5
- 230000037430 deletion Effects 0.000 claims description 5
- 230000008859 change Effects 0.000 description 37
- 238000010586 diagram Methods 0.000 description 22
- 238000013478 data encryption standard Methods 0.000 description 16
- 230000005540 biological transmission Effects 0.000 description 3
- 238000004590 computer program Methods 0.000 description 2
- 230000008901 benefit Effects 0.000 description 1
- 238000005538 encapsulation Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000008929 regeneration Effects 0.000 description 1
- 238000011069 regeneration method Methods 0.000 description 1
- 230000005641 tunneling Effects 0.000 description 1
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
【課題】公衆網内に形成された仮想的な専用通信路を介して暗号化パケットを通信する際に適切なCPUリソースを確保することができるゲートウェイ装置を提供する。
【解決手段】暗号化処理を含む演算処理を監視して処理負荷値を算出し、当該処理負荷値と所定の設定判定値とを比較して得られた結果に応じて暗号化アルゴリズムを選択してこれを設定すると共に通信レートを設定する。
【選択図】図2
【解決手段】暗号化処理を含む演算処理を監視して処理負荷値を算出し、当該処理負荷値と所定の設定判定値とを比較して得られた結果に応じて暗号化アルゴリズムを選択してこれを設定すると共に通信レートを設定する。
【選択図】図2
Description
本発明は、通信網内に仮想的な通信路であるトンネルを形成し、暗号化を施したパケットを当該トンネルを介して中継するゲートウェイ装置に関する。
近年、セキュリティの観点からVPN(Virtual Private Network)技術を用いた通信が導入されつつある。VPNは、パケットにいわゆるカプセル化(Encapsulation)処理を施して公衆網内に仮想的な専用通信路(いわゆるトンネル)を形成し、更に暗号化処理を施して送信する技術である。拠点間に専用回線を導入するのに比較して低コストで専用通信路を確立できるという利点がある。
このように公衆網を経由して送受信されるパケットに対しては、暗号化処理を施すことが必須である。通常、VPN機能を有するゲートウェイ装置のCPU(Central Processing Unit)がパケットに暗号化処理を施すが、その際にはある程度の処理負荷が生じる。CPUは、暗号化処理と他のアプリケーションとを並行して実行する場合がほとんどであり、その処理負荷が大きい場合には、CPUの処理能力を超えてしまうことがある。それ故、CPUによる暗号化処理の負荷調整が必要となる。
例えば、特許文献1には、パケットに暗号化処理を施すための暗号化アルゴリズムを変更することによって、CPUの処理負荷を調整する通信装置が開示されている。
しかしながら、特許文献1を始めとする一般的な通信装置には、通常2又は3種類の暗号化アルゴリズム(例えば3DESやAES−CBC)しか実装されていないので、2又は3段階の負荷調整しかできないという問題があった。また、ユーザによって単一の暗号化アルゴリズムの使用のみを許可するようにセキュリティポリシーの設定がなされている場合、特許文献1による通信装置では負荷調整ができないという問題があった。更に、暗号化アルゴリズムの変更によってもなお、CPU全体の処理負荷がその処理能力を超えている場合には、他の回避策がないという問題があった。
本発明は上記した如き問題点に鑑みてなされたものであって、公衆網内に形成された仮想的な専用通信路を介して暗号化パケットを通信する際に適切なCPUリソースを確保することができるゲートウェイ装置を提供することを目的とする。
本発明によるゲートウェイ装置は、通信端末からのトンネル形成指令に応じて通信網内にトンネルを形成するトンネル形成部と、前記通信端末から発せられたパケットに対して現在設定暗号化アルゴリズムに従って暗号化処理を施して暗号化パケットを得る暗号化部と、前記暗号化パケットを前記トンネルを介して中継する中継部と、を含むゲートウェイ装置であって、少なくとも1つの利用可能暗号化アルゴリズムを記憶するアルゴリズム記憶手段と、前記暗号化処理を含む演算処理を監視して現在処理負荷値を算出する負荷監視部と、前記現在処理負荷値と設定判定値とを比較して得られた結果に応じて前記利用可能暗号化アルゴリズムのうちの1を選択してこれを前記現在設定暗号化アルゴリズムとして設定すると共に前記暗号化パケットの通信レートを設定する制御部と、を含むことを特徴とする。
また、本発明によるゲートウェイ装置は、少なくとも1の通信端末からのトンネル形成指令毎に通信網内にトンネルを形成するトンネル形成部と、前記通信端末から発せられたパケットに対して前記トンネル毎の現在設定暗号化アルゴリズムに従って暗号化処理を施して暗号化パケットを得る暗号化部と、前記暗号化パケットを前記トンネルのうちの前記トンネル形成指令に対応する1を介して中継する中継部と、を含むゲートウェイ装置であって、前記トンネル毎に少なくとも1の利用可能暗号化アルゴリズムを記憶するアルゴリズム記憶手段と、前記暗号化処理を含む演算処理を監視して現在処理負荷値を算出する負荷監視部と、前記現在処理負荷値と設定判定値とを比較して得られた結果に応じて前記トンネル毎に前記利用可能暗号化アルゴリズムのうちの1を選択してこれを前記現在設定暗号化アルゴリズムとして設定すると共に前記暗号化パケットの通信レートを設定する制御部と、を含むことを特徴とする。
本発明によるゲートウェイ装置によれば、公衆網内に形成された仮想的な専用通信路を介して暗号化パケットを通信する際に適切なCPUリソースを確保することができる。
以下、本発明に係る実施例について添付の図面を参照しつつ詳細に説明する。
<第1の実施例>
図1は、本実施例によるゲートウェイ装置100を、ゲートウェイ装置200、通信端末300及び400、通信網500、600及び700、トンネル710と共に表したネットワーク構成図である。
図1は、本実施例によるゲートウェイ装置100を、ゲートウェイ装置200、通信端末300及び400、通信網500、600及び700、トンネル710と共に表したネットワーク構成図である。
ゲートウェイ装置100は、例えばLAN(Local Area Network)などの通信網500と例えばインターネットなどの通信網700との間にあってパケットを中継するゲートウェイ(Gateway)装置である。ゲートウェイ装置100は、通信機能を備えた例えばパーソナルコンピュータなどの通信端末300からのVPN(Virtual Private Network)トンネル確立指令に応じて、通信相手であるゲートウェイ装置200との間に仮想的な専用通信路であるいわゆるトンネル710を形成する。ゲートウェイ装置200は、通信端末300からのパケットをトンネル710を介してゲートウェイ装置200へ中継し、また、トンネル710を介して到来した、ゲートウェイ装置200からのパケットを通信端末300へ中継する。なお、ゲートウェイ装置200もゲートウェイ装置100と同様の機能を有する。
図2は、本実施例によるゲートウェイ装置100を表すブロック図である。
ゲートウェイ装置100は、リソース監視部110と、暗号化通信管理部120と、データテーブル130と、通信部140と、演算処理部150と、記憶部160と、告知部170と、を含む。
リソース監視部110は、いわゆるCPUリソースを定期的に監視し、処理負荷の平均値(以下、ロードアベレージと称する)を算出するものである。このブロック図においては、リソース監視部110は、演算処理部150の処理負荷と、通信部140に含まれる後述の暗号化/復号化部144の処理負荷とを監視してロードアベレージを算出する。説明の便宜上、演算処理部150と暗号化/復号化部144とを分けているが、この2つは1つのCPUに含まれる機能である。
ロードアベレージは、例えばCPUの利用率として算出されるものであり、例えば所定期間TM中の実行待ちプロセスの平均値である。この場合、ユーザは所定期間TMを例えば1秒などの所望の値に設定可能であり、リソース監視部110は、この設定された所定期間TM毎にロードアベレージを算出する。ロードアベレージが高いほど、実効待ちプロセスが多く、CPUによる処理負荷が大きいことを表す。例えば高スループットの暗号化通信を行う場合にはロードアベレージが高くなる。
リソース監視部110は、当該算出により得られたロードアベレージを、暗号化通信管理部120に含まれる後述のリソースコントローラ121へ所定期間TM毎に与える。なお、リソース監視部110は、演算処理部150及び暗号化/復号化部144の機能を実現するCPUに含まれる機能であっても良いし、これとは別のマイクロプロセッサに実装された機能であっても良い。
暗号化通信管理部120は、リソースコントローラ121と、鍵交換部122と、暗号化/復号化アルゴリズム設定部(以下、アルゴリズム設定部と称する)123と、帯域設定部124と、を含む。
リソースコントローラ121は、リソース監視部110からのロードアベレージに基づいて、アルゴリズム設定部123、帯域設定部124、鍵交換部122へそれぞれ指令を発し、CPUのロードアベレージを調整するものである。
リソースコントローラ121は、例えば図3に示される如き負荷予測テーブルに基づいて、暗号化アルゴリズム、通信レート(以下、帯域と称する)、トンネルの削除及び再形成の決定を行う。
図3は負荷予測テーブルを表す図である。「暗号化アルゴリズム」欄には、暗号化アルゴリズムの種別が設定されている。例えばAES(Advanced Encryption Standard)、3DES(3(Triple) Data Encryption Standard)、DESなどである。「通信帯域」欄には、例えば100Mbps、80Mbps、60Mbps、・・・、などの帯域が、暗号化アルゴリズム毎に設定されている。「負荷規格値」欄には、ある帯域で通信するに際し、ある暗号化アルゴリズムでパケットに暗号化処理を施した場合に、その暗号化処理によって生じるであろうCPU処理負荷の予測値を規格化した値が設定されている。
例えばCPUの処理限界値を100とした場合に、帯域100Mbpsで通信するに際し、暗号化アルゴリズムAESで暗号化処理を実行した場合には、CPUの処理限界値の半分に相当する処理負荷が生じると見込まれる場合には、負荷規格値50として予め設定する。CPUの処理限界値は、CPUの仕様(スペック)や、他のアプリケーションを実行するためのソフトウェアの構成、暗号化処理のためのアクセラレータの有無などによって左右される。それ故、これらスペックなどの条件に応じて、どの暗号化アルゴリズムを用いるとどれだけの処理負荷が生じ、帯域をいくらにするとどれだけの処理負荷が生じるかを知るためのチューニングを予め行ってから、負荷規格値を設定する。
以下に、リソースコントローラ121による暗号化アルゴリズム及び帯域の変更例について説明する。
図4(a)及び(b)は、暗号化処理及びアプリケーションA及びBを実行しているCPUの処理負荷を模式的に表した図である。縦軸は、例えばCPUの処理限界値を100として規格化された処理負荷値である。現在、CPUによって暗号化アルゴリズムAESによる帯域100Mbpsの暗号化処理がなされており、図4(a)に示される如く現在処理負荷値RAが上限判定値JTを上回っている状況である。ここで、現在処理負荷値RAは、リソース監視部110から通知された現在時点でのロードアベレージであり、RA=105とする。また、上限判定値は、ユーザによって予め設定された判定値であり、JT=100とする。
リソースコントローラ121は、現在処理負荷値RA=105が上限判定値JT=100を上回っていると判別し、負荷予測テーブルを参照して、ロードアベレージが上限判定値JT=100を下回るように、例えば暗号化アルゴリズムを現在設定のAESから3DESに設定変更する。つまり、リソースコントローラ121は、暗号化アルゴリズムを、AESよりも処理負荷が比較的小さい3DESに変更する。なお、図3に示される負荷予測テーブルでは、暗号化アルゴリズムAES且つ帯域100Mbpsの負荷規格値は50であり、3DES且つ100Mbpsの負荷規格値は40である。これにより、図4(b)に示される如く、現在処理負荷値RA=95は上限判定値JT=100を下回ることになる。この現在処理負荷値RA=95は、次の周期(所定期間TM経過後)にリソース監視部110から通知されたロードアベレージである。
なお、リソースコントローラ121は、後述のデータテーブル130の「利用可能暗号化アルゴリズム」欄に1つの暗号化アルゴリズムのみが設定されている場合には、上記したような暗号化アルゴリズムの設定変更は行わない。
図5(a)及び(b)は、図4と同様に暗号化処理及びアプリケーションA及びBを実行しているCPUの処理負荷を模式的に表した図である。図5(a)に示される如く現在処理負荷値RAが上限判定値JTを上回っている状況である。ここで、現在処理負荷値RA=105、上限判定値JT=100とする。
リソースコントローラ121は、現在処理負荷値RA=105が上限判定値JT=100を上回っていると判別し、負荷予測テーブルを参照して、ロードアベレージが上限判定値JT=100を下回るように、例えば帯域を現在設定の100Mbpsから80Mbpsに設定変更する。つまり、リソースコントローラ121は帯域を低下させる。なお、図3に示される負荷予測テーブルでは、暗号化アルゴリズムAES且つ帯域100Mbpsの負荷規格値は50であり、AES且つ100Mbpsの負荷規格値は40である。これにより、図5(b)に示される如く、現在処理負荷値RA=95は上限判定値JT=100を下回ることになる。
図6(a)、(b)及び(c)は、図4と同様に暗号化処理及びアプリケーションA及びBを実行しているCPUの処理負荷を模式的に表した図である。図6(a)に示される如く現在処理負荷値RAが上限判定値JTを上回っている状況である。ここで、現在処理負荷値RA=105、上限判定値JT=100とする。
リソースコントローラ121は、現在処理負荷値RA=105が上限判定値JT=100を上回っていると判別し、負荷予測テーブルを参照して、ロードアベレージが上限判定値JT=100を下回るように、例えば暗号化アルゴリズムを現在設定のAESから3DESに設定変更する。つまり、リソースコントローラ121は、暗号化アルゴリズムを、AESよりも処理負荷が比較的小さい3DESに変更する。これにより、図5(b)に示される如く、暗号化処理の負荷が低下するものの、例えばアプリケーションBの実行処理負荷が上昇した場合には、例えば現在処理負荷値RA=102となり、依然として上限判定値JT=100を上回ることになる。
この場合、リソースコントローラ121は、現在処理負荷値RA=102が上限判定値JT=100を上回っていると判別し、負荷予測テーブルを参照して、ロードアベレージが上限判定値JT=100を下回るように、例えば帯域を現在設定の100Mbpsから80Mbpsに設定変更する。これにより、図6(c)に示される如く、現在処理負荷値RA=92は上限判定値JT=100を下回ることになる。上記した例は暗号化アルゴリズムを設定変更した後で帯域を設定変更した例であるが、帯域を設定変更した後で暗号化アルゴリズムを設定変更するようにしても良い。
図5及び6を参照して説明した上記例においては、リソースコントローラ121は、ユーザによって予め設定された最低保障帯域を下回らない範囲で帯域を設定変更する。例えば最低保障帯域として10Mbpsが設定されている場合、リソースコントローラ121は、仮に帯域を10Mbps以下に設定しなければ現在処理負荷値RAが上限判定値JTを下回らないと判別したときであっても、帯域を10Mbps以下には設定せず、後述の告知部170への告知指示及び/又は鍵交換部122へのトンネル710の削除の指示を行う。
図4〜6を参照して説明した上記例のように、リソースコントローラ121は、負荷予測テーブルを参照して暗号化アルゴリズム及び/又は帯域を設定変更し、ロードアベレージ(現在処理負荷値RA)を上限判定値JTよりも低下させる。これにより、CPUの処理能力を超えないようにCPUリソースを確保できる。
図7(a)及び(b)は、図4と同様に暗号化処理及びアプリケーションA及びBを実行しているCPUの処理負荷を模式的に表した図である。最低保障帯域として例えば10Mbpsが予め設定されており、現在、CPUによって暗号化アルゴリズムDESによる帯域10Mbpsの暗号化処理がなされている。図7(a)に示される如く現在処理負荷値RA=110が上限判定値JT=100を上回っている状況である。
この場合、リソースコントローラ121は、現在処理負荷値RA=110が上限判定値JT=100を上回っているものの、帯域が既に最低保障帯域10Mbpsに設定されていることから、帯域をこれ以下には下げられないと判別し、鍵交換部122へトンネル710の削除を指示する。この際、リソースコントローラ121は、後述のデータテーブル130の「現在帯域」欄に0Mbpsを設定する。これにより、CPUの処理負荷が低下してCPUリソースが確保できる。
トンネル710の削除後、例えばアプリケーションA及びBの実行処理負荷が低下し、図7(b)に示される如く現在処理負荷値RAが再形成判定値JRを下回っている状況になったとする。再形成判定値JRはユーザによって予め設定された値である。
この場合、リソースコントローラ121は、現在処理負荷値RAが再形成判定値JRを下回っていると判別し、負荷予測テーブルを参照して、ロードアベレージが上限判定値JT=100を上回らない範囲で、暗号化アルゴリズム及び帯域を設定し、先に削除したトンネル710(データテーブル130の「現在帯域」欄を0Mbpsに設定したトンネル)の再形成を鍵交換部122へ、指示する。
図4〜7を参照して説明した上記例においては、リソースコントローラ121は、暗号化アルゴリズム及び帯域のいずれかを任意に設定変更しても良いが、可能な限り高いセキュリティレベルの暗号化処理を施し且つ高スループットの通信を行う観点からは、ロードアベレージが上限判定値JTを下回る設定変更のうち、比較的レベルの高い暗号化アルゴリズム及び比較的高い帯域から順に選択するのが望ましい。例えば暗号化アルゴリズムについてはAES、3DES、DESの順、帯域については例えば100Mbps、80Mbps、60Mbpsの順である。
また、図3に示す負荷予測テーブルは、各処理の負荷予測値を設定したものであるが、これに代えて例えば暗号化アルゴリズム及び/又は帯域を設定変更した場合の負荷減少値又は負荷増加値を設定しても良い。この場合、リソースコントローラ121は、負荷減少値又は負荷増加値と現在処理負荷値RAとの差分に基づいて暗号化アルゴリズム及び/又は帯域を設定変更する。なお、負荷予測テーブルは、例えばハードディスクやRAMなどの記憶部160又は他の記憶媒体(図示せず)に記憶するようにしても良いし、リソースコントローラ121内にデータとして保持するようにしても良い。
トンネル71が複数形成されている場合には、リソースコントローラ121は、後述のデータテーブル130に設定されている優先度に従って1つのトンネルを選択し、当該1のトンネルについての暗号化アルゴリズム及び/又は帯域を設定変更する。
このように、リソースコントローラ121は、この負荷予測テーブル及び後述のデータテーブル130を参照して、暗号化アルゴリズム及び帯域の設定、トンネルの削除及び再形成の判定を行う。
鍵交換部122は、通信端末300からのトンネル形成指令に応じて、通信網700内にトンネル710を形成するものである。鍵交換部122は、例えばIKE(Internet Key Exchange)やIKEv2などの鍵交換プロトコルに従ってトンネル710を形成する。IKEには、ISAKMP/Oakley及びISAKMP/SKEMEがあるが、鍵交換部122は、このうちのいずれかを用いて、いわゆる鍵交換ネゴシエーションパケットを、対向のゲートウェイ装置200との間で交換してトンネル710を形成する。また、鍵交換部122は、ユーザによってトラフィックセレクタ等のデータが予め設定されたデータテーブル130を適宜参照してトンネル710を形成する。
また、鍵交換部122は、リソースコントローラ121からのトンネル削除指示に応じて鍵交換ネゴシエーションパケットをゲートウェイ装置200との間で交換してトンネル710を削除し、また、トンネル再形成指示に応じて同様に鍵交換ネゴシエーションパケットをゲートウェイ装置200との間で交換してトンネル710を再形成する。
アルゴリズム設定部123は、リソースコントローラ121によって指示された暗号化アルゴリズムに従ってパケットに暗号化処理を施すように、後述の暗号化/復号化部144に対して指示を与える。暗号化アルゴリズムは、例えばAES、3DES、DESである。
帯域設定部124は、リソースコントローラ121によって指示された帯域(通信レート)に従ってパケットの送受信を制御するように、後述の帯域制御部143に対して指示を与える。帯域には、ユーザによって設定された最低補償帯域以外に特に制限は無い。
暗号化通信管理部120の各機能は、例えばCPUなどの演算処理機能を有するマイクロプロセッサによって実現できるものである。また、暗号化通信管理部120の各機能を表すコンピュータプログラムを例えばハードディスクなどの記憶媒体に記憶し、例えばCPUなどの演算処理装置がこれを読み出して実行するようにしても良い。
図8は、データテーブル130の一例を表す図である。データテーブル130は、例えばハードディスクやRAMなどの記憶媒体に記憶される。
「VPNトンネル名」は、VPNトンネルを識別するためにユーザによって設定された固有のトンネル識別子である。ここでは例えばVoIP-tunnelやHTTP-tunnelなどである。「優先度」は、ユーザが通信端末300からトンネル形成指令を発する際に設定する優先度である。この優先度は、複数のVPNトンネルが形成されている場合に、暗号化アルゴリズム及び帯域の設定変更対象とすべき1つのVPNトンネルをリソースコントローラ121が選択するのに用いられる。値が小さいほど優先度が高い。
「トラフィックセレクタ」は、暗号化の対象となるパケットの送信元アドレス、宛先アドレス、上位層プロトコル、ポート番号などの情報である。実際には、このトラフィックセレクタは、例えばLinuxカーネルのネットワークスタックなどのミドルウェアによって保持されることが多いので、それらと一意に対応付けるためにデータテーブル130に保持している。ここでは、例えば192.169.1.0/24→192.168.2.0:UDPなどである。
「現在設定暗号化アルゴリズム」は、VPNトンネル毎に現在、設定している暗号化アルゴリズムである。「利用可能暗号化アルゴリズム」は、VPNトンネル毎に適用可能な暗号化アルゴリズムである。これらは、例えばAES、3DES、DESなどの暗号化アルゴリズムである。
「最低保障帯域」は、そのVPNトンネルで確保したい最低の通信レートであり、VPNトンネル毎にユーザによって設定される。ここでは、例えば10Mbpsや3Mbpsである。リソースコントローラ121は、上述した帯域の設定変更の際に、この最低保障帯域を下回るような設定は行わない。「現在帯域」は、現在、そのVPNトンネルに設定されている帯域であり、帯域設定部124によって後述の帯域制御部143に設定された帯域である。
通信部140は、インターフェースA141と、インターフェースB142と、帯域制御部143と、暗号化/復号化部144と、中継部145と、を含む。
インターフェースA141は、図1に示される公衆網700に形成されたトンネル710を介してゲートウェイ装置200との間でパケットを送受信するインターフェースである。インターフェースB142は、図1に示される公衆網500を介して通信端末300との間でパケットを送受信するインターフェースである。
帯域制御部143は、帯域設定部124によって指示された帯域(通信レート)に従ってパケットの送受信を制御するものである。
暗号化/復号化部144は、アルゴリズム設定部123よって指示された暗号化アルゴリズムに従って、インターフェースA141からのパケットに対して暗号化処理を施す。また、暗号化/復号化部144は、アルゴリズム設定部123よって指示された暗号化アルゴリズムに従って、インターフェースB142からのパケットに対して復号化処理を施す。暗号化アルゴリズムは、例えばAES、3DES、DESである。暗号化/復号化部144は、例えば記憶部160に記憶されているこれらのアルゴリズムを表すデータを読み出して暗号化処理を施す。なお、ブロック図では説明の便宜上、暗号化/復号化部144と後述の演算処理部150とを分けて図示しているが、これらのブロックは同一のCPU内の機能である。
中継部145は、暗号化/復号化部144による暗号化処理により生成された暗号化パケットをインターフェースA141又はインターフェースB142を介して中継するものである。
帯域制御部143及び暗号化/復号化部144の各機能は、例えばCPUなどの演算処理機能を有するマイクロプロセッサによって実現できるものである。また、インターフェースA141、インターフェースB142、中継部145の各機能は、一般的なネットワークインターフェース仕様に従った構成であれば良い。なお、図2に示される白抜きの矢印はパケットの流れを表している。
演算処理部150は、記憶部160に記憶されているアプリケーションのデータを読み出し、当該アプリケーションを実行する例えばCPUなどの演算処理装置である。ブロック図では説明の便宜上、演算処理部150と暗号化/復号化部144とを分けて図示しているが、これらのブロックは同一のCPU内の機能である。
記憶部160は、アプリケーションデータ、暗号化アルゴリズムデータ、その他の各種データを記憶する例えばハードディスクやRAMなどの記憶媒体である。
告知部170は、リソースコントローラ121からの告知指示に応じて、あるVPNトンネルについて最低保障帯域以下に設定しなければCPUリソースを確保できない旨をユーザへの告知するものである。告知部170は、例えばディスプレイであり当該告知を画面上に文字表示にて告知しても良いし、例えばスピーカであり当該告知を音声にて告知しても良い。
図9は、ゲートウェイ装置100によるトンネル710の生成処理シーケンスを表すシーケンス図である。
先ず、リソース監視部110が、CPUリソースを定期的に監視してロードアベレージを算出し(ステップS101)、これをリソースコントローラ121へ通知する(ステップS102)。詳細には、リソース監視部110は、演算処理部150及び暗号化/復号化部144における処理負荷を監視する。リソースコントローラ121は、リソース監視部110からのロードアベレージを現在処理負荷値として保持する(ステップS103)。
次に、リソースコントローラ121は、データテーブル130から設定データを取得する(ステップS104)。この設定データは、ユーザが予め設定したものでも良いし、VPNトンネル形成の度にユーザが設定しても良い。次に、リソースコントローラ121は、通信端末300からのトンネル形成指令に応じて、鍵交換部122へトンネル形成の指示を発する(ステップS105)。なお、リソースコントローラ121は、インターフェースBを介して当該トンネル形成指令を受信する。
次に、リソースコントローラ121は、当該指示応じた鍵交換部122によって形成されるVPNトンネルを介して送受信すべきパケットに暗号化処理を施すための暗号化アルゴリズム及び帯域(通信レート)を、負荷予測テーブル(図3)及びデータテーブル130を参照しつつ決定する(ステップS106)。
その際、リソースコントローラ121は、暗号化アルゴリズム及び帯域のいずれかを任意に設定変更しても良いが、可能な限り高いセキュリティレベルの暗号化処理を施し且つ高スループットの通信を行う観点からは、ロードアベレージが上限判定値JTを下回る設定変更のうち、比較的レベルの高い暗号化アルゴリズム及び比較的高い帯域から順に選択するのが望ましい。
リソースコントローラ121からのトンネル形成指令に応じた鍵交換部122は、例えばIKEやIKEv2などの鍵交換プロトコルに従っていわゆる鍵交換ネゴシエーションを対向のゲートウェイ装置200との間で開始する(ステップS107)。なお、図9では、鍵交換部122の処理はリソースコントローラ121の処理ライン上に示してある。鍵交換部122は、ゲートウェイ装置200との間でネゴシエーションパケットを交換して(ステップS108)、認証処理及び鍵交換処理の完了後、トンネル710を形成する(ステップS109)。
リソースコントローラ121は、ステップS106で決定した帯域を帯域設定部124へ通知し(ステップS110)、帯域設定部124は、当該帯域にてパケットを送受信するように帯域制御部143に対して指示する(ステップS111)。リソースコントローラ121は、ステップS106で決定した暗号化アルゴリズム及び帯域をデータテーブル130に記憶する(ステップS112、S113)。
上記した処理により、ゲートウェイ装置100はゲートウェイ装置200との間にトンネル710を形成する。
図10は、ゲートウェイ装置100によるトンネル710についての暗号化アルゴリズム及び帯域の再設定処理シーケンスを表すシーケンス図である。
先ず、リソース監視部110が、CPUリソース(演算処理部150及び暗号化/復号化部144における処理負荷)を定期的に監視してロードアベレージを算出し(ステップS201)、これをリソースコントローラ121へ通知する(ステップS202)。リソースコントローラ121は、リソース監視部110からのロードアベレージを現在処理負荷値として保持する(ステップS203)。
リソースコントローラ121は、ロードアベレージと上限判定値JTとを比較して、CPUの処理負荷を低下させる必要があるか判別する(ステップS204)。リソースコントローラ121は、ロードアベレージが上限判定値JTを上回っていると判別した場合には、データテーブル130に設定された優先度の比較的低い1のVPNトンネルを設定変更対象トンネルとして選択する(ステップS205)。なお、VPNトンネルが1つだけ形成されている場合(データテーブル130に1つのVPNトンネルのみが設定されている場合)には当該選択を行わない。
次に、リソースコントローラ121は、負荷予測テーブル(図3)及びデータテーブル130を参照しつつ、設定変更対象トンネルに対して現在設定されている暗号化アルゴリズムよりも比較的処理負荷が小さい1つの暗号化アルゴリズムを選択する。続いて、リソースコントローラ121は、当該選択した暗号化アルゴリズムに設定変更するようにアルゴリズム設定部123へ指示すると共に鍵交換部122へ新たなVPNトンネルの形成を指示する(ステップS206)。
リソースコントローラ121からのトンネル形成指令に応じた鍵交換部122は、例えばIKEやIKEv2などの鍵交換プロトコルに従っていわゆる鍵交換ネゴシエーションを対向のゲートウェイ装置200との間で開始する(ステップS207)。なお、図10では、鍵交換部122の処理はリソースコントローラ121の処理ライン上に示してある。鍵交換部122は、ゲートウェイ装置200との間でネゴシエーションパケットを交換して(ステップS208)、認証処理及び鍵交換処理の完了後、新たなトンネルを形成する(ステップS209)。
鍵交換部122は、従来のトンネル710から新たなトンネルへの切り替え処理を行った後、従来のトンネル710を削除する。以後、通信部130は、この新たなトンネルを介してゲートウェイ装置200との間でパケット交換をする。これにより、VPNトンネルを介した通信を継続しつつ、暗号化アルゴリズムを設定変更できる。
続いて、リソースコントローラ121は、リソース監視部110から現時点におけるロードアベレージを取得し(ステップS210)、そのロードアベレージと上限判定値JTとを比較して、CPUの処理負荷を更に低下させる必要があるか判別する(ステップS211)。リソースコントローラ121は、ロードアベレージが上限判定値JTを上回っていると判別した場合には、負荷予測テーブル(図3)及びデータテーブル130を参照しつつ、データテーブル130に設定された現在帯域よりも低い帯域を決定する。なお、リソースコントローラ121は、データテーブル130に設定された最低保障帯域よりも高い帯域を設定する。
リソースコントローラ121は、リソースコントローラ121により決定された帯域を帯域設定部124へ通知し(ステップS212)、帯域設定部124は、当該帯域にてパケットを送受信するように帯域制御部143に対して指示する(ステップS213)。リソースコントローラ121は、ステップS106で決定した暗号化アルゴリズム及び帯域をデータテーブル130に記憶する(ステップS214、S215)。
上記した処理により、ゲートウェイ装置100はゲートウェイ装置200との間に形成されているトンネル710についての暗号化アルゴリズム及び帯域を再設定し、CPUの処理負荷を低下させ、CPUリソースを確保することができる。
図11は、暗号化通信管理部120によるCPU負荷調整処理ルーチンを表すフローチャートである。以下、図11を参照しつつ、CPU負荷調整処理について説明する。なお、当該処理ルーチンはコンピュータプログラムによって構成可能であり、例えばハードディスクなどの記憶媒体に記憶されているこのプログラムを、演算処理機能を備えたマイクロプロセッサが読み出して実行するようにしても良い。
暗号化通信管理部120は、リソースコントローラ121からロードアベレージを取得する毎に当該ルーチンを実行する。
先ず、リソースコントローラ121は、リソース監視部110からのロードアベレージを現在処理負荷値として保持する(ステップS301)。リソースコントローラ121は、このロードアベレージが上限判定値JTよりも小さいか否かを判別する(ステップS302)。リソースコントローラ121は、ロードアベレージが上限判定値JTよりも小さいと判別した場合すなわちCPUの処理負荷を下げる必要がないと判別した場合には、当該ルーチンを終了する。
一方、リソースコントローラ121は、ロードアベレージが上限判定値JTよりも大きいと判別した場合すなわちCPUの処理負荷を下げる必要があると判別した場合には、既に形成されているVPNトンネルが複数個あるか否かを、データテーブル130を参照しつつ判別する(ステップS303)。複数個のVPNトンネル名がデータテーブル130に設定されている場合には、リソースコントローラ121は、データテーブル130に設定されている優先度の比較的低い(通常、最も低い)VPNトンネルを設定変更対象トンネルとして選択する(ステップS304)。一方、1つのVPNトンネル名のみがデータテーブル130に設定されている場合には、リソースコントローラ121は、そのVPNトンネルを設定変更対象トンネルとして、次のステップS305へ移行する。
リソースコントローラ121は、設定変更対象トンネルについて暗号化アルゴリズムの設定変更が可能か否かを、データテーブル130を参照して判別する(ステップS305)。設定変更対象トンネルに対して1つの利用可能暗号化アルゴリズムのみが設定されている場合には、リソースコントローラ121は、暗号化アルゴリズムを設定変更できないと判別してステップS306へ移行する。
一方、リソースコントローラ121は、データテーブル130において設定変更対象トンネルに対して複数の利用可能暗号化アルゴリズムが設定されている場合に、設定変更可能と判別して暗号化アルゴリズムを設定変更する(ステップS307)。その際、リソースコントローラ121は、暗号化アルゴリズムのいずれか1つを任意に設定変更しても良いが、可能な限り高いセキュリティレベルの暗号化処理を施すという観点からは、ロードアベレージが上限判定値JTを下回る設定変更のうち、比較的レベルの高い暗号化アルゴリズムを選択するのが望ましい。
続いて、リソースコントローラ121は、リソース監視部110から現時点におけるロードアベレージを取得し、このロードアベレージが上限判定値JTよりも大きいか否かを判別する(ステップS308)。リソースコントローラ121は、ロードアベレージが上限判定値JTよりも大きいと判別した場合すなわちCPUの処理負荷を更に下げる必要があると判別した場合、帯域を設定変更する(ステップS306)。その際、リソースコントローラ121は、帯域を任意の値に設定変更しても良いが、高スループットの通信を行う観点からは、ロードアベレージが上限判定値JTを下回る設定変更のうち、比較的高い帯域から順に選択するのが望ましい。
ここで、リソースコントローラ121は、設定帯域が最低保証帯域を下回ってしまったと判別した場合には(ステップS309)、再度、暗号化アルゴリズム及び/又は帯域を設定し直す(ステップS306、S307)。再度の設定の際には、データテーブル130に設定されている優先度の低いVPNトンネルから順に設定変更対象トンネルとする。つまり、例えば1度目の再設定時には2番目に優先度が低いVPNトンネルを設定変更対象トンネルとし、2度目の再設定時には3番目に優先度が低いVPNトンネルを設定変更対象トンネルとする。以降の再設定時も同様である。
一方、設定帯域が最低保証帯域以上の場合、リソースコントローラ121は、ロードアベレージが上限判定値JTよりも大きいか否かを判別する(ステップS310)。リソースコントローラ121は、ロードアベレージが上限判定値JTよりも大きいと判別した場合すなわちすなわちCPUの処理負荷を更に下げる必要があると判別した場合、既に形成されている他のVPNトンネルが存在するか否かを、データテーブル130を参照しつつ判別する(ステップS311)。ステップS310までの処理において設定変更対象としたトンネルの名称とは別のVPNトンネル名がデータテーブル130に設定されている場合には、リソースコントローラ121は、当該他のトンネルが存在すると判別し、再び、ステップS301の処理から実行する。
一方、リソースコントローラ121は、他のトンネルが存在しないと判別した場合には、データテーブル130に設定されている優先度の最も低いVPNトンネルを削除するように鍵交換部122へ指示して(ステップS312)、CPU負荷調整処理ルーチンを終了する。なお、上記した例は、暗号化アルゴリズムの設定変更後に帯域を設定変更する場合の例であるが、帯域の設定変更後に暗号化アルゴリズムを設定変更するようなフローにしても良い。
上記したように本実施例によるゲートウェイ装置によれば、暗号化アルゴリズムの種別を設定変更するだけでなく、帯域(通信レート)も設定変更できるので、他段階に亘ってCPU処理負荷の低減調整が可能である。また、暗号化アルゴリズムに加えて帯域も設定変更できるので、より細かい負荷低減調整が可能である。更に、単一の暗号化アルゴリズムの使用のみが許可されている場合であっても、帯域の調整によってCPUの処理負荷を低減できる。このように、本実施例によるゲートウェイ装置によれば、公衆網内に形成された仮想的な専用通信路を介して暗号化パケットを通信する際に適切なCPUリソースを確保することができる。
<第2の実施例>
本実施例によるゲートウェイ装置100の構成は、第1の実施例と同じである(図2に示される)。以下、第1の実施例と異なる点について主に説明する。
本実施例によるゲートウェイ装置100の構成は、第1の実施例と同じである(図2に示される)。以下、第1の実施例と異なる点について主に説明する。
図12(a)及び(b)は、第1の実施例における図4と同様に暗号化処理及びアプリケーションA及びBを実行しているCPUの処理負荷を模式的に表した図である。現在、CPUによって暗号化アルゴリズムDESによる帯域80Mbpsの暗号化処理がなされており、図12(a)に示される如く現在処理負荷値RAが下限判定値JBを下回っている状況である。ここで、現在処理負荷値RA=70とする。また、下限判定値JB=75とする。
リソースコントローラ121は、現在処理負荷値RA=70が下限判定値JB=75を下回っていると判別し、負荷予測テーブルを参照して、ロードアベレージが上限判定値JT=100を上回らない範囲で、例えば暗号化アルゴリズムを現在設定のDESからAESに設定変更する。つまり、リソースコントローラ121は、暗号化アルゴリズムを、DESよりも処理負荷が比較的大きいAESに変更する。なお、図3に示される負荷予測テーブルでは、暗号化アルゴリズムDES且つ帯域80Mbpsの負荷規格値は20であり、AES且つ80Mbpsの負荷規格値は40である。これにより、図12(b)に示される如く、現在処理負荷値RA=90が上限判定値JT=100を上回らない範囲で、暗号化のセキュリティレベルを上げることができる。
なお、リソースコントローラ121は、後述のデータテーブル130の「利用可能暗号化アルゴリズム」欄に1つの暗号化アルゴリズムのみが設定されている場合には、上記したような暗号化アルゴリズムの設定変更は行わない。
図13(a)及び(b)は、図12と同様に暗号化処理及びアプリケーションA及びBを実行しているCPUの処理負荷を模式的に表した図である。図13(a)に示される如く現在処理負荷値RAが下限判定値JBを下回っている状況である。ここで、現在処理負荷値RA=70、下限判定値JB=75とする。
リソースコントローラ121は、現在処理負荷値RA=70が下限判定値JB=75を下回っていると判別し、負荷予測テーブルを参照して、ロードアベレージが上限判定値JT=100を上回らない範囲で、例えば帯域を現在の60Mbpsから100Mbpsに設定変更する。つまり、リソースコントローラ121は帯域を上昇させる。なお、図3に示される負荷予測テーブルでは、暗号化アルゴリズムDES且つ帯域60Mbpsの負荷規格値は10であり、DES且つ100Mbpsの負荷規格値は30である。これにより、図13(b)に示される如く、現在処理負荷値RA=90が上限判定値JT=100を上回らない範囲で、スループットを上げることができる。
図14(a)、(b)及び(c)は、図12と同様に暗号化処理及びアプリケーションA及びBを実行しているCPUの処理負荷を模式的に表した図である。図14(a)に示される如く現在処理負荷値RAが下限判定値JBを下回っている状況である。ここで、現在処理負荷値RA=70、下限判定値JB=75とする。
リソースコントローラ121は、現在処理負荷値RA=70が下限判定値JB=75を下回っていると判別し、負荷予測テーブルを参照して、ロードアベレージが上限判定値JT=100を上回らない範囲で、例えば暗号化アルゴリズムを現在設定のDESからAESに設定変更する。つまり、リソースコントローラ121は、暗号化アルゴリズムを、DESよりも処理負荷が比較的小さいAESに変更する。これにより、図14(b)に示される如く、暗号化処理の負荷が低下するものの、例えばアプリケーションBの実行が終了した場合には、例えば現在処理負荷値RA=70となり、依然として下限判定値JB=75を下回ることになる。
この場合、リソースコントローラ121は、現在処理負荷値RA=70が下限判定値JB=75を下回っていると判別し、負荷予測テーブルを参照して、ロードアベレージが上限判定値JT=100を上回らない範囲で、例えば帯域を現在の80Mbpsから100Mbpsに設定変更する。これにより、図14(c)に示される如く、現在処理負荷値RA=90が上限判定値JT=100を上回らない範囲で、暗号化のセキュリティレベル及びスループットを上げることができる。上記した例は暗号化アルゴリズムを設定変更した後で帯域を設定変更した例であるが、帯域を設定変更した後で暗号化アルゴリズムを設定変更するようにしても良い。
図12〜14を参照して説明した上記例においては、リソースコントローラ121は、暗号化アルゴリズム及び帯域のいずれかを任意に設定変更しても良いが、可能な限り高いセキュリティレベルの暗号化処理を施し且つ高スループットの通信を行う観点からは、ロードアベレージが上限判定値JTを下回る設定変更のうち、比較的レベルの高い暗号化アルゴリズム及び比較的高い帯域から順に選択するのが望ましい。例えば暗号化アルゴリズムについてはAES、3DES、DESの順、帯域については例えば100Mbps、80Mbps、60Mbpsの順である。
図12〜14を参照して説明した上記例のように、リソースコントローラ121は、負荷予測テーブルを参照して暗号化アルゴリズム及び/又は帯域を設定変更し、上限判定値JTを超えない範囲でロードアベレージ(現在処理負荷値RA)を上昇させる。これにより、CPUの処理能力を超えない範囲で暗号化のセキュリティレベル及びスループットを上げることができる。
図15は、ゲートウェイ装置100によるトンネル710についての暗号化アルゴリズム及び帯域の再設定処理シーケンスを表すシーケンス図である。以下、第1の実施例における再設定処理シーケンス(図10に示される)と異なる処理ステップについて説明する。
ステップS404において、リソースコントローラ121は、ロードアベレージと上限判定値JTとを比較して、CPUの処理負荷に余裕があるか判別する。リソースコントローラ121は、ロードアベレージが下限判定値JBを下回っていると判別した場合には、データテーブル130に設定された優先度の比較的高い1のVPNトンネルを設定変更対象トンネルとして選択する(ステップS405)。このとき、リソースコントローラ121は、データテーブル130において現在帯域が0Mbpsに設定されているVPNトンネルがある場合には、そのVPNトンネルを設定変更対象トンネルとして選択する。なお、VPNトンネルが1つだけ形成されている場合(データテーブル130に1つのVPNトンネルのみが設定されている場合)には当該選択を行わない。
次に、リソースコントローラ121は、負荷予測テーブル(図3)及びデータテーブル130を参照しつつ、設定変更対象トンネルに対して現在設定されている暗号化アルゴリズムよりも比較的処理負荷が大きい1つの暗号化アルゴリズムを選択する。続いて、リソースコントローラ121は、当該選択した暗号化アルゴリズムに設定変更するようにアルゴリズム設定部123へ指示すると共に鍵交換部122へ新たなVPNトンネルの形成を指示する(ステップS406)。ステップS407〜S410の処理は、第1の実施例と同じである。
ステップS411において、リソースコントローラ121は、ステップS410でリソース監視部110から取得したロードアベレージと下限判定値JBとを比較して、CPUの処理負荷に更に余裕があるか判別する。リソースコントローラ121は、ロードアベレージが下限判定値JBを下回っていると判別した場合には、負荷予測テーブル(図3)及びデータテーブル130を参照しつつ、データテーブル130に設定された現在帯域よりも高い帯域を決定する。ステップS412〜S415の処理は、第1の実施例と同じである。
上記した処理により、ゲートウェイ装置100はゲートウェイ装置200との間に形成されているトンネル710についての暗号化アルゴリズム及び帯域を再設定し、暗号化処理におけるセキュリティレベル及び通信スループットを向上させることができる。
図16は、暗号化通信管理部120によるCPU負荷調整処理ルーチンを表すフローチャートである。以下、図16を参照しつつ、CPU負荷調整処理について説明する。暗号化通信管理部120は、リソースコントローラ121からロードアベレージを取得する毎に当該ルーチンを実行する。
先ず、リソースコントローラ121は、リソース監視部110からのロードアベレージを現在処理負荷値として保持する(ステップS501)。リソースコントローラ121は、このロードアベレージが下限判定値JBよりも大きいか否かを判別する(ステップS502)。リソースコントローラ121は、ロードアベレージが下限判定値JBよりも大きいと判別した場合すなわちCPUの処理負荷に余裕がないと判別した場合には、当該ルーチンを終了する。
一方、リソースコントローラ121は、ロードアベレージが下限判定値JBよりも小さいと判別した場合すなわちCPUの処理負荷に余裕があると判別した場合には、既に形成されているVPNトンネルが複数個あるか否かを、データテーブル130を参照しつつ判別する(ステップS503)。複数個のVPNトンネル名がデータテーブル130に設定されている場合には、リソースコントローラ121は、データテーブル130に設定されている現在帯域が0MbpsのVPNトンネルを優先的に設定変更対象トンネルとして選択する(ステップS504)。現在帯域が0MbpsのVPNトンネルがない場合には、データテーブル130に設定されている優先度の比較的低い(通常、最も低い)VPNトンネルを設定変更対象トンネルとして選択する(ステップS504)。一方、1つのVPNトンネル名のみがデータテーブル130に設定されている場合には、リソースコントローラ121は、そのVPNトンネルを設定変更対象トンネルとして、次のステップS505へ移行する。
リソースコントローラ121は、設定変更対象トンネルについて暗号化アルゴリズムの設定変更が可能か否かを、データテーブル130を参照して判別する(ステップS505)。設定変更対象トンネルに対して1つの利用可能暗号化アルゴリズムのみが設定されている場合には、リソースコントローラ121は、暗号化アルゴリズムを設定変更できないと判別してステップS506へ移行する。
一方、リソースコントローラ121は、データテーブル130において設定変更対象トンネルに対して複数の利用可能暗号化アルゴリズムが設定されている場合に、設定変更可能と判別して暗号化アルゴリズムを設定変更する(ステップS507)。その際、リソースコントローラ121は、暗号化アルゴリズムのいずれか1つを任意に設定変更しても良いが、可能な限り高いセキュリティレベルの暗号化処理を施すという観点からは、ロードアベレージが上限判定値JTを下回る設定変更のうち、比較的レベルの高い暗号化アルゴリズムを選択するのが望ましい。
続いて、リソースコントローラ121は、リソース監視部110から現時点におけるロードアベレージを取得し、このロードアベレージが下限判定値JBよりも小さいか否かを判別する(ステップS508)。リソースコントローラ121は、ロードアベレージが下限判定値JBよりも小さいと判別した場合すなわちCPUの処理負荷に更に余裕があると判別した場合、帯域を設定変更する(ステップS506)。その際、リソースコントローラ121は、帯域を任意の値に設定変更しても良いが、高スループットの通信を行う観点からは、ロードアベレージが上限判定値JTを下回る設定変更のうち、比較的高い帯域から順に選択するのが望ましい。
ここで、リソースコントローラ121は、ロードアベレージが上限判定値JTを上回ってしまったと判別した場合には(ステップS509)、再度、暗号化アルゴリズム及び/又は帯域を設定し直す(ステップS506、S507)。再度の設定の際には、データテーブル130に設定されている優先度の高いVPNトンネルから順に設定変更対象トンネルとする。つまり、例えば1度目の再設定時には2番目に優先度が高いVPNトンネルを設定変更対象トンネルとし、2度目の再設定時には3番目に優先度が高いVPNトンネルを設定変更対象トンネルとする。以降の再設定時も同様である。
一方、ロードアベレージが上限判定値JT以下の場合、リソースコントローラ121は、ロードアベレージが下限判定値JBよりも小さいか否かを判別する(ステップS510)。リソースコントローラ121は、ロードアベレージが下限判定値JBよりも小さいと判別した場合すなわちすなわちCPUの処理負荷に更に余裕があると判別した場合、既に形成されている他のVPNトンネルが存在するか否かを、データテーブル130を参照しつつ判別する(ステップS511)。ステップS510までの処理において設定変更対象としたトンネルの名称とは別のVPNトンネル名がデータテーブル130に設定されている場合には、リソースコントローラ121は、当該他のトンネルが存在すると判別し、再び、ステップS501の処理から実行する。
一方、リソースコントローラ121は、他のトンネルが存在しないと判別した場合には、CPU負荷調整処理ルーチンを終了する。なお、上記した例は、暗号化アルゴリズムの設定変更後に帯域を設定変更する場合の例であるが、帯域の設定変更後に暗号化アルゴリズムを設定変更するようなフローにしても良い。
上記したように本実施例によるゲートウェイ装置によれば、暗号化アルゴリズムの種別を設定変更するだけでなく、帯域(通信レート)も設定変更できるので、CPUリソースに余裕がある場合には、他段階に亘って暗号化セキュリティレベルの向上及び高スループットが可能である。また、暗号化アルゴリズムに加えて帯域も設定変更できるので、より細かい処理負荷調整が可能であり、CPUリソースを最大限に活用できる。更に、単一の暗号化アルゴリズムの使用のみが許可されている場合であっても、帯域の調整によってCPUの処理負荷を調整し、CPUリソースをより活用できる。このように、公衆網内に形成された仮想的な専用通信路を介して暗号化パケットを通信する際に適切なCPUリソースを確保しつつ、CPUリソースを十分に活用することができる。
100 ゲートウェイ装置
110 リソース監視部
120 暗号化通信管理部
121 リソースコントローラ
122 鍵交換部
123 暗号化/復号化アルゴリズム設定部
124 帯域設定部
130 データテーブル
140 通信部
141 インターフェースA
142 インターフェースB
143 帯域制御部
144 暗号化/復号化部
145 中継部
150 演算処理部
160 記憶部
170 告知部
200 ゲートウェイ装置
300、400 通信端末
500、600、700 通信網
710 トンネル
110 リソース監視部
120 暗号化通信管理部
121 リソースコントローラ
122 鍵交換部
123 暗号化/復号化アルゴリズム設定部
124 帯域設定部
130 データテーブル
140 通信部
141 インターフェースA
142 インターフェースB
143 帯域制御部
144 暗号化/復号化部
145 中継部
150 演算処理部
160 記憶部
170 告知部
200 ゲートウェイ装置
300、400 通信端末
500、600、700 通信網
710 トンネル
Claims (19)
- 通信端末からのトンネル形成指令に応じて通信網内にトンネルを形成するトンネル形成部と、前記通信端末から発せられたパケットに対して現在設定暗号化アルゴリズムに従って暗号化処理を施して暗号化パケットを得る暗号化部と、前記暗号化パケットを前記トンネルを介して中継する中継部と、を含むゲートウェイ装置であって、
少なくとも1つの利用可能暗号化アルゴリズムを記憶するアルゴリズム記憶手段と、
前記暗号化処理を含む演算処理を監視して現在処理負荷値を算出する負荷監視部と、
前記現在処理負荷値と設定判定値とを比較して得られた結果に応じて前記利用可能暗号化アルゴリズムのうちの1を選択してこれを前記現在設定暗号化アルゴリズムとして設定すると共に前記暗号化パケットの通信レートを設定する制御部と、を含むことを特徴とするゲートウェイ装置。 - 前記制御部は、前記設定判定値である上限判定値を前記現在処理負荷値が上回っていると判別した場合に、前記利用可能暗号化アルゴリズムのうちの暗号化処理負荷が比較的小さい1を選択してこれを前記現在設定暗号化アルゴリズムとして設定することを特徴とする請求項1に記載のゲートウェイ装置。
- 前記制御部は、前記設定判定値である上限判定値を前記現在処理負荷値が上回っていると判別した場合に、前記通信レートを低下させることを特徴とする請求項1に記載のゲートウェイ装置。
- 前記制御部は、前記設定判定値である上限判定値を前記現在処理負荷値が上回っていると判別した場合に、前記利用可能暗号化アルゴリズムのうちの暗号化処理負荷が比較的小さい1を選択してこれを前記現在設定暗号化アルゴリズムとして設定し且つ前記通信レートを低下させることを特徴とする請求項1に記載のゲートウェイ装置。
- 前記制御部は、前記設定判定値である下限判定値を前記現在処理負荷値が下回っていると判別した場合に、前記利用可能暗号化アルゴリズムのうちの暗号化処理負荷が比較的大きい1を選択してこれを前記現在設定暗号化アルゴリズムとして設定することを特徴とする請求項1に記載のゲートウェイ装置。
- 前記制御部は、前記設定判定値である下限判定値を前記現在処理負荷値が下回っていると判別した場合に、前記通信レートを上昇させることを特徴とする請求項1に記載のゲートウェイ装置。
- 前記制御部は、前記設定判定値である下限判定値を前記現在処理負荷値が下回っていると判別した場合に、前記利用可能暗号化アルゴリズムのうちの暗号化処理負荷が比較的大きい1を選択してこれを前記現在設定暗号化アルゴリズムとして設定し且つ前記通信レートを上昇させることを特徴とする請求項1に記載のゲートウェイ装置。
- 前記トンネル形成部は、前記現在設定暗号化アルゴリズム及び前記通信レートを設定変更しても前記現在処理負荷値が上限判定値を下回らない旨の前記制御部による判別結果に応じて前記トンネルを削除するトンネル削除手段を更に含むことを特徴とする請求項1に記載のゲートウェイ装置。
- 前記トンネル形成部は、前記現在処理負荷値が再形成判定値を下回っている旨の前記制御部による判別結果に応じて当該削除されたトンネルを再形成するトンネル再形成手段を更に含むことを特徴とする請求項8に記載のゲートウェイ装置。
- 少なくとも1の通信端末からのトンネル形成指令毎に通信網内にトンネルを形成するトンネル形成部と、前記通信端末から発せられたパケットに対して前記トンネル毎の現在設定暗号化アルゴリズムに従って暗号化処理を施して暗号化パケットを得る暗号化部と、前記暗号化パケットを前記トンネルのうちの前記トンネル形成指令に対応する1を介して中継する中継部と、を含むゲートウェイ装置であって、
前記トンネル毎に少なくとも1の利用可能暗号化アルゴリズムを記憶するアルゴリズム記憶手段と、
前記暗号化処理を含む演算処理を監視して現在処理負荷値を算出する負荷監視部と、
前記現在処理負荷値と設定判定値とを比較して得られた結果に応じて前記トンネル毎に前記利用可能暗号化アルゴリズムのうちの1を選択してこれを前記現在設定暗号化アルゴリズムとして設定すると共に前記暗号化パケットの通信レートを設定する制御部と、を含むことを特徴とするゲートウェイ装置。 - 前記トンネル毎に優先度を設定する優先度設定手段を更に含み、
前記制御部は、前記トンネルのうちの前記優先度が比較的低い1についての前記現在設定暗号化アルゴリズム及び前記通信レートを設定することを特徴とする請求項10に記載のゲートウェイ装置。 - 前記制御部は、前記設定判定値である上限判定値を前記現在処理負荷値が上回っていると判別した場合に、前記利用可能暗号化アルゴリズムのうちの暗号化処理負荷が比較的小さい1を選択してこれを前記現在設定暗号化アルゴリズムとして設定することを特徴とする請求項10又は11に記載のゲートウェイ装置。
- 前記制御部は、前記設定判定値である上限判定値を前記現在処理負荷値が上回っていると判別した場合に、前記通信レートを低下させることを特徴とする請求項10又は11に記載のゲートウェイ装置。
- 前記制御部は、前記設定判定値である上限判定値を前記現在処理負荷値が上回っていると判別した場合に、前記利用可能暗号化アルゴリズムのうちの暗号化処理負荷が比較的小さい1を選択してこれを前記現在設定暗号化アルゴリズムとして設定し且つ前記通信レートを低下させることを特徴とする請求項10又は11に記載のゲートウェイ装置。
- 前記制御部は、前記設定判定値である下限判定値を前記現在処理負荷値が下回っていると判別した場合に、前記利用可能暗号化アルゴリズムのうちの暗号化処理負荷が比較的大きい1を選択してこれを前記現在設定暗号化アルゴリズムとして設定することを特徴とする請求項10又は11に記載のゲートウェイ装置。
- 前記制御部は、前記設定判定値である下限判定値を前記現在処理負荷値が下回っていると判別した場合に、前記通信レートを上昇させることを特徴とする請求項10又は11に記載のゲートウェイ装置。
- 前記制御部は、前記設定判定値である下限判定値を前記現在処理負荷値が下回っていると判別した場合に、前記利用可能暗号化アルゴリズムのうちの処理負荷が比較的大きい1を選択してこれを前記現在設定暗号化アルゴリズムとして設定し且つ前記通信レートを上昇させることを特徴とする請求項10又は11に記載のゲートウェイ装置。
- 前記トンネル形成部は、前記現在設定暗号化アルゴリズム及び前記通信レートを設定変更しても前記現在処理負荷値が上限判定値を下回らない旨の前記制御部による判別結果に応じて前記トンネルのうちの前記優先度が比較的低い1を削除するトンネル削除手段を更に含むことを特徴とする請求項11に記載のゲートウェイ装置。
- 前記トンネル形成部は、前記現在処理負荷値が再形成判定値を下回っている旨の前記制御部による判別結果に応じて当該削除されたトンネルを再形成するトンネル再形成手段を更に含むことを特徴とする請求項18に記載のゲートウェイ装置。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2009066335A JP2010220038A (ja) | 2009-03-18 | 2009-03-18 | ゲートウェイ装置 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2009066335A JP2010220038A (ja) | 2009-03-18 | 2009-03-18 | ゲートウェイ装置 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JP2010220038A true JP2010220038A (ja) | 2010-09-30 |
Family
ID=42978361
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2009066335A Pending JP2010220038A (ja) | 2009-03-18 | 2009-03-18 | ゲートウェイ装置 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP2010220038A (ja) |
Cited By (11)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2012077701A1 (ja) * | 2010-12-07 | 2012-06-14 | 日本電気株式会社 | ゲートウェイ装置および音声通信方法 |
| JP2013211633A (ja) * | 2012-03-30 | 2013-10-10 | Brother Ind Ltd | 通信装置、暗号化通信システム、暗号化通信プログラム、および暗号化通信方法 |
| JP2015023361A (ja) * | 2013-07-17 | 2015-02-02 | 富士通株式会社 | 通信方法、通信装置及び通信プログラム |
| JP2015097423A (ja) * | 2015-01-21 | 2015-05-21 | 株式会社東芝 | 通信装置、鍵生成装置、通信方法、プログラムおよび通信システム |
| US9306734B2 (en) | 2012-07-06 | 2016-04-05 | Kabushiki Kaisha Toshiba | Communication device, key generating device, and computer readable medium |
| CN106210775A (zh) * | 2016-08-26 | 2016-12-07 | 浙江大华技术股份有限公司 | 一种视频加密的方法、摄像装置和视频处理平台 |
| JP2017038413A (ja) * | 2016-11-24 | 2017-02-16 | 株式会社東芝 | 通信装置、鍵生成装置、通信方法、プログラムおよび通信システム |
| JP2017073701A (ja) * | 2015-10-08 | 2017-04-13 | 日本電信電話株式会社 | 局側光終端装置及びリソース割当計算方法 |
| KR20200052465A (ko) * | 2018-10-31 | 2020-05-15 | (주)성일이노텍 | 사물인터넷 게이트웨이 및 이의 암호화 데이터 처리 방법 |
| JP2024004974A (ja) * | 2022-06-29 | 2024-01-17 | Kddi株式会社 | 認証装置、認証方法及び認証プログラム |
| WO2024126288A1 (en) * | 2022-12-16 | 2024-06-20 | British Telecommunications Public Limited Company | Encryption selection |
-
2009
- 2009-03-18 JP JP2009066335A patent/JP2010220038A/ja active Pending
Cited By (14)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US9247457B2 (en) | 2010-12-07 | 2016-01-26 | Nec Corporation | Gateway apparatus and voice communication method |
| WO2012077701A1 (ja) * | 2010-12-07 | 2012-06-14 | 日本電気株式会社 | ゲートウェイ装置および音声通信方法 |
| JP2013211633A (ja) * | 2012-03-30 | 2013-10-10 | Brother Ind Ltd | 通信装置、暗号化通信システム、暗号化通信プログラム、および暗号化通信方法 |
| US9306734B2 (en) | 2012-07-06 | 2016-04-05 | Kabushiki Kaisha Toshiba | Communication device, key generating device, and computer readable medium |
| JP2015023361A (ja) * | 2013-07-17 | 2015-02-02 | 富士通株式会社 | 通信方法、通信装置及び通信プログラム |
| JP2015097423A (ja) * | 2015-01-21 | 2015-05-21 | 株式会社東芝 | 通信装置、鍵生成装置、通信方法、プログラムおよび通信システム |
| JP2017073701A (ja) * | 2015-10-08 | 2017-04-13 | 日本電信電話株式会社 | 局側光終端装置及びリソース割当計算方法 |
| CN106210775A (zh) * | 2016-08-26 | 2016-12-07 | 浙江大华技术股份有限公司 | 一种视频加密的方法、摄像装置和视频处理平台 |
| JP2017038413A (ja) * | 2016-11-24 | 2017-02-16 | 株式会社東芝 | 通信装置、鍵生成装置、通信方法、プログラムおよび通信システム |
| KR20200052465A (ko) * | 2018-10-31 | 2020-05-15 | (주)성일이노텍 | 사물인터넷 게이트웨이 및 이의 암호화 데이터 처리 방법 |
| KR102193212B1 (ko) | 2018-10-31 | 2020-12-18 | (주)성일이노텍 | 사물인터넷 게이트웨이 및 이의 암호화 데이터 처리 방법 |
| JP2024004974A (ja) * | 2022-06-29 | 2024-01-17 | Kddi株式会社 | 認証装置、認証方法及び認証プログラム |
| JP7663536B2 (ja) | 2022-06-29 | 2025-04-16 | Kddi株式会社 | 認証装置、認証方法及び認証プログラム |
| WO2024126288A1 (en) * | 2022-12-16 | 2024-06-20 | British Telecommunications Public Limited Company | Encryption selection |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP2010220038A (ja) | ゲートウェイ装置 | |
| JP6741882B1 (ja) | 非アクティブ状態からのrrc再開のためのセキュリティ処理 | |
| EP3133784B1 (en) | Data transmission control node, communication system and data transmission management method | |
| JP5894075B2 (ja) | 無線lanシステムにおける無線lan通信端末およびその通信制御方法 | |
| CN106255148B (zh) | 在多连接性5G网络中促进承载中QoS差异化 | |
| JP4714142B2 (ja) | Wlanエンティティの折衝のためのシステムと方法並びにワイアレス・アクセス・ポイント | |
| JP2014099752A (ja) | 通信装置、通信システム、及び通信システムにおける暗号アルゴリズム実行方法 | |
| JP6213882B2 (ja) | 無線端末の接続制御装置及びこれを備えた接続制御システム並びに接続制御方法 | |
| JP2021520673A (ja) | Rrcコネクション再開時のセキュリティ検証 | |
| WO2018059223A1 (zh) | 一种通信方法及装置 | |
| JP7075495B2 (ja) | 無線リソースの設定 | |
| CN108353442B (zh) | 使用网络来委托第二网络 | |
| US9787536B2 (en) | Method and apparatus for configuring packet forwarding manner | |
| JP6299354B2 (ja) | 無線通信装置、無線通信方法および無線通信プログラム | |
| WO2016015304A1 (zh) | 一种接入点部署方法及装置 | |
| JP5181181B2 (ja) | コンピュータ・システムの省電力化法 | |
| US20180248784A1 (en) | Communication apparatus, communication method, and storage medium | |
| CN110213798B (zh) | 一种基于Femto网关的分流方法及装置 | |
| JP5010744B2 (ja) | 無線メッシュネットワークでピアリンクを保護するべくペアマスタ鍵をネゴシエートする装置および方法 | |
| WO2025107920A1 (zh) | 蓝牙网络通信的方法、装置、电子设备和可读存储介质 | |
| JP4882774B2 (ja) | アクセスポイント及びプログラム | |
| JP4444130B2 (ja) | 無線アクセスポイント及びその経路決定方法又はその通信方法、無線通信システム及びその通信方法 | |
| JP7090423B2 (ja) | 通信装置、通信方法、及びプログラム | |
| JP6640065B2 (ja) | 通信装置、通信制御装置、通信方法、通信制御方法、及びプログラム | |
| KR20220149721A (ko) | 네트워크 장치 역할 자가 적응 방법 및 장치 |