TECHNOLOGY

Architecture

Axonerveは、エントリテーブルをFPGAの内部メモリに格納するか、外付けメモリデバイスに格納するかによって、それぞれon-Chipメモリモードとoff-Chipメモリモードの2種類があります。

On-chip memory mode

Off-chip memory mode

On-chip memory mode
Off-chip memory mode

Characteristics

マスク機能

フィールドマスク機能を使用して、キーデータのビットフィールドに「ワイルドカード」か「ドントケア」にするかを決定することができます。

エントリテーブルに格納されたキーデータのマスク指定されたフィールドは、検索時に入力されたデータの対応するフィールドの値と常にマッチすることになります。

Write operation, Search operation

ビットフィールドとフィールドマスクのプリセット [フィールドセット例]

基本的にネットワークパケットヘッダの各要素は整数倍のバイトになっています。

32 bits: IPv4  16 bits: L4 Port, VLAN, Ethernet type, MPLS, …
48 bits: MAC   8 bits: SW Port, Tos, IP Protocol, …

Axonerveはキーデータの2種類のビットフィールドアサインをプリセットで提供しています。フィールドマスクは最初のフィールドを除いてすべてのフィールドに設定可能です。

Type1, Type2

Priority 機能

エントリテーブルに格納された各エントリはPriorityを持っています。検索キーが複数のエントリに一致したとき、検索結果として、Priorityの最も高いエントリが選ばれます。
Priority機能はエントリテーブルの管理に役立ちます。従来のTCAMデバイスのようにエントリの登録順序を気にする必要はなく、適切なPriorityを付けて新しいエントリを書き込むだけです。

Priority function

Value機能

Value機能は、検索キーを受け取り、メモリ内に格納されているそのキーに紐付いた値を返します。

Value機能は様々な目的で使用することができます。
たとえば、TCAMモードで使用している場合、検索キーと一致するエントリがあったことを示すフラグと共に、最も高いpriorityを持ったエントリに紐付いたvalueが返されます。
アクションテーブルに記載されたパケットドロップやパス、パケット編集のコントロールにも使用することができます。
また、パケットにオフセットをつけることも可能です。

Value function

Comparison

Axonerveは、従来技術であるハッシュテーブル検索を置き換える技術のひとつです。
Axonerveは、レスポンス時間のジッター保証や連続検索が要求されるアプリケーションで、ハッシュテーブル検索よりアドバンテージがあります。

Entry table size: 288 bits x 32K entries

Axonerve performs a search operation with fixed latency, 10 cycles, no matter how many entries exists in the entry table.
Axonerve search operation is fully pipelined and continuously executes one search per clock cycle.