本研究では、高速なパケット識別を可能とするルータを実現するための、識別アルゴリズムについて検討してきた。本年度は、ルータの限られたハードウェア資源を有効に活用しつつ、パケット識別を高速化するためのアルゴリズムを提案した。特に、これまで識別子の先頭ビットから行われていたパケット識別について、任意のピットを選択してハードウェア検索を行うことで、高速化を実現する手法を考えた。提案するアルゴリズムはCAMとDRAMの組み合わせによって高速化を実現する。また、ビット選択アルゴリズムは、それぞれの用途に応じて、1)先頭ビットを検索キーとする方法、2)平均探索時間を最小にする方法、3)最悪探索時間を最小にする方法、4)検索木のバランスを考慮する方法の4つを用い、それぞれの方式の効果について検討を行った。実際に取得可能なルーティングテーブルを用いて、シミュレーションによる性能評価を行った。その結果、提案方式は従来の方法と比較して、アドレス検索のオーバーヘッドを大幅に減らせることが分かった。特に、適切なビット選択法を用いることで、先頭ビットからの探索を行う場合と比較して約3倍の性能向上が見られることが明らかになった。一方、ビット選択によるオーバーヘッドも増大することから、統計サンプリングを用いてビット選択の計算量を軽減させる方法についても検討した。シミュレーションによる結果より、全ルーティングエントリの約15%程度のサンプルがあれば、すべてのエントリを考慮した場合とほぼ同程度のビット選択の効果が得られることを示した。
|