2017 Fiscal Year Annual Research Report
一時的パケット蓄積を用いた制御によるネットワークの効率向上に関する研究
Project/Area Number |
17J07276
|
Research Institution | Osaka University |
Principal Investigator |
武政 淳二 大阪大学, 情報科学研究科, 特別研究員(DC2)
|
Project Period (FY) |
2017-04-26 – 2019-03-31
|
Keywords | NDN / 情報指向ネットワーク / キャッシュアルゴリズム / 高速パケット転送 |
Outline of Annual Research Achievements |
不人気なデータパケットをキャッシュへ挿入する処理は、キャッシュヒット率の向上に貢献しないにもかかわらず高負荷な処理を必要とし、NDN ルータのパケット処理の負荷を増加する。 これに対し、軽量な処理で高人気なデータパケットのみを抽出しキャッシュへ挿入するフィルタアルゴリズムを開発し、フィルタが NDN ルータの負荷を低減できる見通しを得た。具体的な成果は下記である。 (1)各データパケットの過去の要求数をカウントし、要求数の多いデータパケットのみをキャッシュへ挿入する、フィルタを設計した。さらに、要求数をカウントするテーブルをハッシュテーブルベースのデータ構造で軽量に設計した。シミュレーションにより、フィルタは FIFO よりも高く LFU と同等のヒット率を実現しつつ、全てのデータパケットのキャッシュ挿入の 91%を回避でき、NDN パケットの平均処理時間を20%程度削減できることを明らかにした。 (2)フィルタを実装予定の PC ベース NDN ルータの高速な設計とプロトタイプ実装に取り組んだ。まず、NDN ルータのパケット処理時間を CPU の命令パイプラインで分析し、DRAM 上に配置した FIB、CS、PIT からのデータフェッチの待ち時間が、パケット転送速度向上の課題であることを明らかにした。次に、プリフェッチ命令によりこの待ち時間を最大限隠ぺいするため、データフェッチと依存関係にない演算の実行中にプリフェッチを完了できるようパケット処理を構成する関数群の実行順序をリオーダリングした、プリフェッチアルゴリズムを提案した。最後に、マルチ CPU コアを具備する Linux サーバ上に、提案アルゴリズムと高速な NIC ドライバ DPDK を実装することで NDN ルータのプロトタイプを実装し、プロトタイプが 4000 万パケット/秒の転送速度を実現できることを実証した。
|
Current Status of Research Progress |
Current Status of Research Progress
2: Research has progressed on the whole more than it was originally planned.
Reason
1年目の目標を以下の通り達成している。 (1)フィルタアルゴリズムの軽量な設計: 過去の要求回数を記録するテーブルをハッシュテーブルベースのデータ構造で設計し、フィルタの処理を実装し、処理時間を測定した結果、(3)で実装した NDN ルータの 1 パケットの処理時間約 2000 CPU サイクル数に対し、フィルタの処理を 100 CPU サイクル程度で実現できることを実証した。 (2)フィルタの理論的な性能解析モデルの開発: フィルタは、直前に受信した q 個の要求のうち、k 個以上の要求のあったデータパケットをキャッシュへ挿入するアルゴリズムである。つまり、パラメータ q、k が、キャッシュヒット率とキャッシュ挿入率を制御する。これに対し、データパケットに対する要求の到着が定常ポアソン過程に従うことを仮定し、q、k に対するヒット率と挿入率の変化のふるまいを確率的にモデル化した。さらに、様々なキャッシュ容量やデータパケットの人気度分布のシナリオで、q、k を総当たり的に変化してヒット率と挿入率を解析した結果、フィルタは最適な q、k を設定できる場合、LFU に匹敵するキャッシュヒット率を実現でき、かつ、不要なキャッシュ挿入処理を 90%程度回避できることを明らかにした。 (3)NDN ルータの高速な設計とプロトタイプ実装: 本研究では、フィルタを商用の速度を実現する NDN ルータで安定して動作することを目標としている。したがって、フィルタの性能評価において、高速な NDN ルータ実装は不可欠である。これに対し、研究実績の概要 (2) で説明した NDN ルータは、1 ユニットの Linux サーバ上で 4000 万パケット/秒の速度を実現でき、フィルタの最終的な性能評価で用いるルータプラットフォームのプロトタイプ実装を完成させた。
|
Strategy for Future Research Activity |
本年度は、平成 29 年度の研究成果を踏まえ、以下の拡張を実施する。 (1)フィルタのパラメータ決定手法の確立: データパケットに対する要求の人気度の時間変動に追従できるよう、フィルタの制御パラメータ q、k を動的に制御する手法を設計する。近年、要求の人気度の分布は時間変動すること、さらに、この変動がキャッシュアルゴリズムの性能を決める一因となり得ることが判明してきている。しかし、前年度では、定常な人気度の分布を仮定したシナリオで、高いヒット率と低い挿入率を実現できるパラメータの決定方法しか議論しなかった。そのため、前年度に開発したモデルをベースに、非定常な人気度の分布を有する要求到着過程を考慮した性能解析モデルへ拡張し、本モデルを用いて、フィルタが高いヒット率と低い挿入率を実現できるよう、要求の人気度分布の時間変動に対し q、k を動的に制御する手法を設計する。 (2)フィルタと NDN プロトコルを統合した高速な NDN ルータの実装: 前年度に設計した NDN ルータ上にフィルタを実装し、40ギガビット/秒の転送速度を実現できることを実証する。 前年度に設計した NDN ルータでは、ハッシュテーブルで実装した CS、PIT、FIB へのアクセスで生じる、ハッシュ値の計算時間が、パケット処理時間の大半を占めている。そのため、ハッシュテーブルで実装したフィルタを NDN ルータに追加すると、この計算時間の増加がパケット転送速度を低下する恐れがある。そのため、この計算時間をいかに増加しないよう、複数のテーブル (CS や PIT) で共通するハッシュ値の計算回数を削減する手法を設計する。また、前年度に設計したプリフェッチアルゴリズムを、フィルタのカウンタハッシュテーブルへ適用できるように拡張し、フィルタを有する場合にも高速なパケット転送の可能な NDN ルータを実現する。
|
Research Products
(5 results)