(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】特開2018-137616(P2018-137616A)
(43)【公開日】2018年8月30日
(54)【発明の名称】アクセラレータ
(51)【国際特許分類】
H04L 12/70 20130101AFI20180803BHJP
【FI】
H04L12/70 D
【審査請求】未請求
【請求項の数】6
【出願形態】OL
【全頁数】8
(21)【出願番号】特願2017-30911(P2017-30911)
(22)【出願日】2017年2月22日
(71)【出願人】
【識別番号】500433993
【氏名又は名称】株式会社アルチザネットワークス
(74)【代理人】
【識別番号】100128934
【弁理士】
【氏名又は名称】横田 一樹
(74)【代理人】
【識別番号】100112689
【弁理士】
【氏名又は名称】佐原 雅史
(72)【発明者】
【氏名】門田 隆之
【テーマコード(参考)】
5K030
【Fターム(参考)】
5K030GA03
5K030GA13
5K030HA08
5K030LC01
5K030LC11
5K030LE03
5K030MB09
(57)【要約】
【課題】ネットワーク機能仮想化(NFV)の環境下において、ホスト端末の負荷を軽減することができ、仮想ネットワークに要する初期投資やランニングコストを抑えることができるアクセラレータを提供する。
【解決手段】アクセラレータ20は、ネットワーク機能仮想化(NFV)を実行するホスト端末10に接続可能であり、ホスト端末10の複数の仮想マシン12が該仮想マシン12間において送受信するパケット、または、仮想マシン12がホスト端末10の外部と送受信するパケットを取得可能なパケット取得手段26と、パケット取得手段26が取得したパケットに対してNFVにおけるデータプレーン処理を実行可能なパケット処理手段28と、を有して構成される。
【選択図】
図1
【特許請求の範囲】
【請求項1】
ネットワーク機能仮想化(NFV)を実行するホスト端末に接続可能なアクセラレータであって、
前記ホスト端末の複数の仮想マシンが該仮想マシン間において送受信するパケット、または、前記仮想マシンが前記ホスト端末の外部と送受信するパケットを取得可能なパケット取得手段と、
前記パケット取得手段が取得した前記パケットに対してNFVにおけるデータプレーン処理を実行可能なパケット処理手段と、を有して構成される、
ことを特徴とするアクセラレータ。
【請求項2】
請求項1に記載のアクセラレータにおいて、
前記パケット処理手段は、前記複数の仮想マシンのトラフィック量の変化を少なくとも監視することが可能な監視手段を備える、
ことを特徴とするアクセラレータ。
【請求項3】
請求項1または請求項2に記載のアクセラレータにおいて、
前記パケット処理手段は、前記パケットのミラーリングを実行可能なミラーリング手段を備える、
ことを特徴とするアクセラレータ。
【請求項4】
請求項1乃至請求項3のいずれか一項に記載のアクセラレータにおいて、
前記パケット取得手段が取得した前記パケットを外部に出力可能なパケット出力手段を備える、
ことを特徴とするアクセラレータ。
【請求項5】
請求項1乃至請求項4のいずれか一項に記載のアクセラレータにおいて、
前記データプレーン処理には、TCP/IP処理、IPsec/SSL暗号化・復号化処理、テーブル検索、N−Tuple分類、IPパケットフォワーディング、イーサネットフレームフォワーディングのいずれかの処理が含まれる、
ことを特徴とするアクセラレータ。
【請求項6】
請求項1乃至請求項5のいずれか一項に記載のアクセラレータにおいて、
前記ホスト端末の拡張スロットに拡張カードとして搭載され、前記仮想マシンの仮想ネットワークカード(vNIC)として認識される、
ことを特徴とするアクセラレータ。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ネットワーク機能仮想化(NFV)におけるデータプレーン処理を高めることが可能なアクセラレータに関する。
【背景技術】
【0002】
従来、ハードウェアを物理的な構成にとらわれずに論理的に利用する技術の一つとして、同一の物理ホスト(サーバ)上に、論理的なホストである仮想マシン(VM)を生成するネットワーク機能仮想化(NFV)の技術が広く知られている。
【0003】
このようなNFVにおいて利用されるアクセラレータとして、特許文献1には、VM間のトラフィックを輻輳させること無く通信させ、パケットロスやスループットの低下を防ぐことが可能な制御装置が開示されている。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2013−126062号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
ところで、NFVでは、ハイパーバイザと呼ばれるVM管理ソフトウェアが、例えばNIC(ネットワークインタフェースカード)等のハードウェアを論理的に分割することで、データプレーン(Dプレーン)と呼ばれる処理を実行している。ここで、データプレーン処理とは、NFVにおいてデータ転送における経路の制御や計算等を行う機能をいい、例えば、TCP/IP処理、IPsec/SSL暗号化・復号化処理等が含まれる。
【0006】
しかしながら、近年のデータ転送量の増加に伴い、NFV環境下では、ハイパーバイザにおけるデータプレーン処理の制御負担が年々、増加傾向にあり、ハイパーバイザの負荷が高くなった場合に、パケットロスやスループットの低下等を招くことがあった。
【0007】
また、このような問題を解決する一手段として、物理ホストの台数を増やしたり、物理ホストのCPUのクロック周波数を高めたりすることも考えられるが、初期投資やランニングコストが必要であり、コスト面等において限界があった。
【0008】
本発明は、このような従来の問題点を解決するためのものであって、ネットワーク機能仮想化(NFV)の環境下において、ホスト端末の負荷を軽減することができ、仮想ネットワークに要する初期投資やランニングコストを抑えることができるアクセラレータを提供することを目的とする。
【課題を解決するための手段】
【0009】
本発明に係るアクセラレータは、ネットワーク機能仮想化(NFV)を実行するホスト端末に接続可能なアクセラレータであって、前記ホスト端末の複数の仮想マシンが該仮想マシン間において送受信するパケット、または、前記仮想マシンが前記ホスト端末の外部と送受信するパケットを取得可能なパケット取得手段と、前記パケット取得手段が取得した前記パケットに対してNFVにおけるデータプレーン処理を実行可能なパケット処理手段と、を有して構成される、ことを特徴とするアクセラレータである。
【発明の効果】
【0010】
本発明に係るアクセラレータによれば、ネットワーク機能仮想化(NFV)の環境下において、ホスト端末の負荷を軽減することができ、仮想ネットワークに要する初期投資やランニングコストを抑えることができるという優れた効果を奏し得る。
【図面の簡単な説明】
【0011】
【
図1】ホスト端末10とアクセラレータ20の内部構成を示したブロック図である。
【
図2】アクセラレータ20の内部構成を示したブロック図である。
【発明を実施するための形態】
【0012】
以下、図面を用いて、本発明の実施の形態に係るアクセラレータ20について詳細に説明する。
【0013】
<ホスト端末>
最初に、アクセラレータ20の説明に先立って、アクセラレータ20が接続されるホスト端末10について説明する。
図1は、ホスト端末10とアクセラレータ20の内部構成を示したブロック図である。
【0014】
ホスト端末10は、ネットワーク機能仮想化(NFV)を実行するための端末であり、ホスト端末10としては、汎用のサーバやPC等を適用することができる。本例のホスト端末10には、複数の仮想マシン(VM)12を生成することが可能なハイパーバイザ(Hyper Visor)14と、このハイパーバイザ14と連携して複数の仮想マシン12間の通信制御等を行うオープンソース仮想スイッチ(OVS:Open vSwitch)16と、インターフェイスマネージャ(IFmgr)18が実装されている。
【0015】
なお、本発明に係るホスト端末は、ネットワーク機能仮想化(NFV)が実行可能な端末であればよく、
図1に示すホスト端末10の構成に限定されるものではない。したがって、例えば、本発明に係るホスト端末は、インターフェイスマネージャ18を備えていない端末であってもよい。
【0016】
<ホスト端末/仮想マシン(VM)>
仮想マシン(VM)12は、ファイアウォール、ルータやスイッチ等のDPI(ディープパケットインスペクション)、ロードバランサ等の専用機器を仮想化したものであり、ハイパーバイザ14上において、これらの専用機器として振る舞うソフトウェア(制御プログラム)である。
【0017】
<ホスト端末/ハイパーバイザ>
ハイパーバイザ14は、ホスト端末が備えるNIC(ネットワークインタフェースカード)等のハードウェアを論理的に分割することで、コントロールプレーン(Cプレーン)、データプレーン(Dプレーン)と呼ばれる処理等を実行するソフトウェア(制御プログラム)である。ここで、コントロールプレーン処理とは、NFVにおいてフレームの転送等を行う処理のことであり、データプレーン処理とは、NFVにおいてデータ転送における経路の制御や計算等を行う処理のことである。
【0018】
本例に係るデータプレーン処理には、TCP/IP処理、IPsec/SSL暗号化・復号化処理、テーブル検索、N−Tuple分類、IPパケットフォワーディング、イーサネット(登録商標)フレームフォワーディングの各処理が含まれる。ここで、テーブル検索やN−Tuple分類は、パケットのルーティング処理の一種である。また、IPパケットフォワーディングとは、他のホストから受け取ったIPパケットを別の経路に向けて再送信することであり、イーサネットフレームフォワーディングとは、他のホストから受け取ったイーサネットフレームを別の経路に向けて再送信することである。
【0019】
<ホスト端末/オープンソース仮想スイッチ、インターフェイスマネージャ>
オープンソース仮想スイッチ16とインターフェイスマネージャ18は、制御プログラム(ソフトウェア)によって実現される。オープンソース仮想スイッチ16とインターフェイスマネージャ18は、ネットワークの保守等を行うユーザとのインターフェイス(UI)として機能するソフトウェア(制御プログラム)である。
【0020】
ホスト端末10のユーザは、各種コマンドを実行することで、オープンソース仮想スイッチ16やインターフェイスマネージャ18を介してアクセラレータ20の各種設定が可能であるとともに、オープンソース仮想スイッチ16やインターフェイスマネージャ18を介してアクセラレータ20から各種情報(例えば、ポート毎等の状態情報)を取得可能である。
【0021】
<アクセラレータ>
次に、
図1と
図2を用いて、アクセラレータ20について説明する。
図2は、アクセラレータ20の内部構成を示したブロック図である。
【0022】
本例のアクセラレータ20は、ホスト端末10の拡張スロット(図示省略)に拡張カード(本例では、PCIeカード)として接続され、ホスト端末10の仮想マシン12からは仮想ネットワークカード(vNIC)として認識される。
【0023】
図1に示すように、アクセラレータ20は、アクセラレータ20全体の制御を行うCPU22と、ホスト端末10のオープンソース仮想スイッチ16やインターフェイスマネージャ18とアクセラレータ20とを通信可能に接続するNICI/F部24と、ホスト端末10の仮想マシン12とアクセラレータ20とを通信可能に接続するvNICI/F部26と、パケットの振り分け等の処理を行うパケット処理部28と、物理ポートの制御を行う複数のI/O部30と、を有して構成される。
【0024】
<アクセラレータ/NICI/F部>
NICI/F部24は、ホスト端末10のオープンソース仮想スイッチ16やインターフェイスマネージャ18から受信した各種コマンドをCPU22に送信することでアクセラレータ20の各種設定を行ったり、CPU22から取得した各種情報(例えば、ポート毎の状態情報)をホスト端末10のオープンソース仮想スイッチ16やインターフェイスマネージャ18に送信したりすることが可能な手段である。このNICI/F部24は、例えば、電子回路等のハードウェアや制御プログラム(ソフトウェア)によって構成される。
【0025】
<アクセラレータ/vNICI/F部>
vNICI/F部26は、ホスト端末10の複数の仮想マシン12が仮想マシン12間において送受信するパケット、または、仮想マシン12がホスト端末10の外部と送受信するパケットを取得可能な手段(本発明に係る「パケット取得手段」)である。このvNICI/F部26は、例えば、電子回路等のハードウェアや制御プログラム(ソフトウェア)によって構成される。
【0026】
<アクセラレータ/パケット処理部>
パケット処理部28は、vNICI/F部26が取得したパケットに対してNFVにおけるデータプレーン処理を実行可能な手段(本発明に係る「パケット処理手段」)であり、例えば、電子回路等のハードウェアや制御プログラム(ソフトウェア)によって構成される。このパケット処理部28は、複数の仮想マシン12のトラフィック量の変化(例えば、ポート毎の、入出力パケット数、パケットバイト数、パケットエラー数、パケットドロップ数、パケットオーバーフロー数、および転送レート)を少なくとも監視することが可能な監視手段と、パケットのミラーリングを実行可能なミラーリング手段と、を備える。
【0027】
図2に示すように、パケット処理部28は、データプレーン処理に含まれるIPパケットフォワーディングやイーサネットフレームフォワーディング等を行う第一のパケット処理部28aと、データプレーン処理に含まれるテーブル検索等を行う第二のパケット処理部28bと、データプレーン処理に含まれるN−Tuple分類等を行う第三のパケット処理部28cと、を有して構成される。
【0028】
このように、本例に係るアクセラレータ20のパケット処理部28は、NFVによるデータプレーン処理を実行可能なため、ホスト端末10のハイパーバイザ14が実行するデータプレーン処理の少なくとも一部を実行することで、当該ホスト端末10のデータプレーン処理の負荷を従来よりも大幅に軽減することができ、ホスト端末10のリソースをコントロールプレーン処理等の他の処理に割り当てることができる。
【0029】
<アクセラレータ/I/O部>
I/O部30は、vNICI/F部26等が取得したパケットを外部に出力可能な手段(本発明に係る「パケット出力手段」)を備え、物理ポートに接続された機器(例えば、パケットキャプチャ)に向けてパケットを出力することが可能である。
【0030】
以上説明したように、本実施形態に係るアクセラレータ(例えば、
図1に示すアクセラレータ20)は、ネットワーク機能仮想化(NFV)を実行するホスト端末に接続可能なアクセラレータであって、前記ホスト端末の複数の仮想マシン(例えば、
図1に示す仮想マシン(VM)12)が該仮想マシン間において送受信するパケット、または、前記仮想マシンが前記ホスト端末の外部と送受信するパケットを取得可能なパケット取得手段(例えば、
図1に示すvNICI/F部26)と、前記パケット取得手段が取得した前記パケットに対してNFVにおけるデータプレーン処理を実行可能なパケット処理手段(例えば、
図1に示すパケット処理部28)と、を有して構成される、ことを特徴とするアクセラレータである。
【0031】
NFVでは、仮想ネットワーク上のトラフィックが増えると、ホスト端末のハイパーバイザが実行するデータプレーン処理の負荷が増大することで、ホスト端末のリソースが当該処理に費やされてしまうといった問題があるが、本発明に係るアクセラレータは、NFVによるデータプレーン処理を実行可能なため、ホスト端末のハイパーバイザが実行するデータプレーン処理の負荷を従来よりも大幅に軽減することができ、ホスト端末のリソースをコントロールプレーン処理等の他の処理に割り当てることができる。このため、ホスト端末の台数を増やしたり、ホスト端末の性能を高めたりする必要がなく、仮想ネットワークに要する初期投資やランニングコストを抑えることができる。
【0032】
なお、前記パケット処理手段は、前記複数の仮想マシンのトラフィック量の変化を少なくとも監視することが可能な監視手段を備えてもよい。
【0033】
NFVでは、複数の仮想マシンがオープンなインターフェイスで結合されるため、仮想ネットワークにおける障害部位をリアルタイムに特定することが困難であるが、本発明に係るアクセラレータによれば、ホスト端末の負荷を増大させることなく、仮想マシンの稼働状況や負荷状況を監視することができ、仮想ネットワークの運用や管理の信頼性を従来よりも高めることができるとともに、仮想マシンの監視結果に応じて仮想ネットワークの障害対策等を行うことができる。
【0034】
また、前記パケット処理手段は、前記パケットのミラーリングを実行可能なミラーリング手段を備えてもよい。
【0035】
このような構成とすれば、ホスト端末の負荷を増大させることなく、仮想マシンが送受信するパケットのミラーリングを行うことができるとともに、ネットワーク障害が発生した場合に、パケットに基づいた解析等を容易に行うことができる。
【0036】
また、前記パケット取得手段が取得した前記パケットを外部に出力可能なパケット出力手段(例えば、I/O部30)を備えてもよい。
【0037】
このような構成とすれば、ホスト端末の負荷を増大させることなく、ホスト端末の外部においてパケットの監視や解析、統計情報の収集等を行うことができる。
【0038】
また、前記データプレーン処理には、TCP/IP処理、IPsec/SSL暗号化・復号化処理、テーブル検索、N−Tuple分類、IPパケットフォワーディング、イーサネットフレームフォワーディングのいずれかの処理が含まれてもよい。
【0039】
このような構成とすれば、負荷の大きいIPパケット処理をホスト端末に代わって実行することで、ホスト端末の負荷を軽減することができ、ホスト端末のリソースをコントロールプレーン処理等の他の処理に割り当てることができる。
【0040】
また、前記ホスト端末の拡張スロットに拡張カードとして搭載され、前記仮想マシンの仮想ネットワークカード(NIC)として認識されるものであってもよい。
【0041】
このような構成とすれば、NFVを実行するホスト端末に拡張スロットがあれば容易に搭載することができ、既存の仮想ネットワークへの導入が容易である。
【0042】
なお、本発明に係るアクセラレータの構成は、上記実施形態に係るアクセラレータの構成に限定されるものではなく、適宜、変更することが可能である。
【産業上の利用可能性】
【0043】
本発明に係るアクセラレータは、ネットワーク機能仮想化(NFV)を実行するサーバ等に適用することができる。
【符号の説明】
【0044】
10 ホスト端末
12 仮想マシン(VM)
14 ハイパーバイザ
16 オープンソース仮想スイッチ
18 インターフェイスマネージャ
20 アクセラレータ
22 CPU
24 NICI/F部
26 vNICI/F部
28 パケット処理部
30 I/O部