【手続補正書】
【提出日】平成25年11月15日(2013.11.15)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
反復解析分類エンジンにより、データパケットのヘッダ情報に少なくとも一部基づいて、前記データパケットの第１解析分類サイクルを実行する段階と、
前記第１解析分類サイクルの実行に少なくとも一部基づいて、第１解析分類結果を生成する段階と、
前記データパケットのヘッダ情報及び前記第１解析分類結果に少なくとも一部基づいて、前記データパケットの第２解析分類サイクルを実行する段階と、
前記第２解析分類サイクルの実行に少なくとも一部基づいて、第２解析分類結果を生成する段階と
を備え、
前記第２解析分類結果を生成する段階は、
前記第２解析分類結果が、前記データパケットの解析及び分類に更なる解析分類サイクルが必要であるかを示す解析分類完了フラグを含むように、前記第２解析分類結果を生成する段階を有し、
前記解析分類完了フラグが、前記データパケットの解析及び分類に更なる解析分類サイクルが必要であることを示す場合には、前記データパケットのヘッダ情報及び前記第２解析分類結果に少なくとも一部基づいて、前記データパケットの第３解析分類サイクルを実行し、
前記解析分類完了フラグが、前記データパケットの解析及び分類に更なる解析分類サイクルが必要でないことを示す場合には、前記データパケットの分類結果を出力する方法。
【請求項２】
前記第１解析分類サイクルを実行する段階は、
前記データパケットのヘッダ部分に少なくとも一部基づいて、連想メモリ（content-addressable memory：ＣＡＭ）における第１参照を実行する段階と、
前記第１参照の実行に少なくとも一部基づいて、第１メモリアドレスを生成する段階と、
メモリの前記第１メモリアドレスからの第１コンテンツにアクセスする段階と
を有し、
前記第１コンテンツは、第１解析分類結果を含む請求項１に記載の方法。
【請求項３】
前記分類結果を出力する段階は、
前記第２解析分類結果に含まれる分類情報に少なくとも一部基づいて、前記分類結果を出力する段階を含む請求項１又は２に記載の方法。
【請求項４】
前記分類結果を出力する段階は、
前記データパケットに関するキュー、優先度及びフローＩＤのうちの１以上に関する情報を含む前記分類結果を出力する段階を含む請求項１から３のいずれか一項に記載の方法。
【請求項５】
前記第１解析分類サイクルを実行する段階は、前記データパケットのヘッダの第１ヘッダ部分に少なくとも一部基づいて、前記第１解析分類サイクルを実行する段階を有し、
前記第２解析分類サイクルを実行する段階は、前記データパケットの前記ヘッダの第２ヘッダ部分に少なくとも一部基づいて、前記第２解析分類サイクルを実行する段階を有し、
前記第２ヘッダ部分は、前記第１ヘッダ部分とは異なる請求項１から４のいずれか一項に記載の方法。
【請求項６】
前記第２解析分類サイクルを実行する段階は、前記第１解析分類結果に含まれるヘッダオフセット情報に少なくとも一部基づいて、前記第２解析分類サイクルを実行する段階を有する請求項１から５のいずれか一項に記載の方法。
【請求項７】
プロセッシングコアと、
反復解析分類エンジン（iterative parser and classifier engine：ＩＰＡＣ）と
を備えるシステムオンチップ（ＳＯＣ）であって、
前記ＩＰＡＣは、
データパケットを受信し、第１反復サイクルの間に、前記データパケットのヘッダから第１ヘッダ部分を生成し、第２反復サイクルの間に、第２ヘッダ部分を生成するパケットヘッダオフセットユニットと、
３値連想メモリ（ＴＣＡＭ）と、
メモリと、
前記メモリから第１コンテンツを受信し、第１フィードバックを生成し、前記メモリから第２コンテンツを受信し、第２フィードバックを生成するフィードバックプロセッシングユニットと
を有し、
前記ＩＰＡＣは、前記第１反復サイクルの間に、前記第１ヘッダ部分を使用して前記ＴＣＡＭにおける第１参照を実行し、前記第１参照に応じて第１メモリアドレスを生成し、
前記ＩＰＡＣは、前記第１反復サイクルの間に、前記メモリ内の前記第１メモリアドレスからの第１コンテンツにアクセスし、前記第２反復サイクルの間に、前記メモリ内の第２メモリアドレスからの第２コンテンツにアクセスし、
前記第２フィードバックは、前記データパケットの解析及び分類に更なる解析分類サイクルが必要であるかを示す解析分類完了フラグを含む
システムオンチップ。
【請求項８】
前記パケットヘッダオフセットユニットは更に、前記第２反復サイクルの間に、前記第１フィードバックに少なくとも一部基づいて、前記データパケットの前記ヘッダから前記第２ヘッダ部分を生成する請求項７に記載のシステムオンチップ。
【請求項９】
前記ＩＰＡＣは更に、
前記第１コンテンツに少なくとも一部基づいて、前記ＴＣＡＭの複数のエントリをマスクすることにより、前記ＴＣＡＭの有効部分を生成し、
前記第１コンテンツに基づいて生成される前記第２ヘッダ部分を使用して、前記ＴＣＡＭの前記有効部分における第２参照を実行することにより、前記第２反復サイクルを実行する請求項７又は８に記載のシステムオンチップ。
【請求項１０】
前記ＩＰＡＣは更に、前記第２反復サイクルの間に、前記第２ヘッダ部分及び前記第１フィードバックを使用して前記ＴＣＡＭにおける第２参照を実行し、前記第２参照に応じて第２メモリアドレスを生成する請求項７又は８に記載のシステムオンチップ。
【請求項１１】
前記ＩＰＡＣは更に、前記データパケットの分類情報を生成するための分類ユニットを有し、
前記解析分類完了フラグが、前記データパケットの解析及び分類に更なる解析分類サイクルが必要であることを示す場合には、前記ＩＰＡＣは、前記データパケットの第３ヘッダ情報及び前記第２フィードバックに少なくとも一部基づいて、前記データパケットに対して第３解析分類サイクルを実行し、
前記解析分類完了フラグが、前記データパケットの解析及び分類に更なる解析分類サイクルが必要でないことを示す場合には、前記分類ユニットは、前記第２コンテンツに少なくとも一部基づいて前記データパケットの分類結果を出力する請求項７から１０のいずれか一項に記載のシステムオンチップ。
【請求項１２】
前記メモリは、スタティックランダムアクセスメモリ（ＳＲＡＭ）である請求項７から１１のいずれか一項に記載のシステムオンチップ。
【請求項１３】
前記パケットヘッダオフセットユニットは、ネットワークコントローラから前記データパケットを受信する請求項７から１２のいずれか一項に記載のシステムオンチップ。
【請求項１４】
データパケットを受信する段階と、
前記データパケットのヘッダの第１ヘッダ部分を使用して、３値連想メモリ（ＴＣＡＭ）における第１参照を実行し、前記ＴＣＡＭの出力に基づいて第１コンテンツを生成する段階と、
第２アドレスを生成するべく、前記データパケットの前記ヘッダの第２ヘッダ部分及び前記第１コンテンツを使用して、前記ＴＣＡＭにおける第２参照を実行する段階と、
前記メモリの前記第２アドレスからの第２コンテンツにアクセスする段階と
を備え、
前記第２コンテンツは、前記データパケットの解析及び分類に更なる解析分類サイクルが必要であるかを示す解析分類完了フラグを含み、
前記解析分類完了フラグが、前記データパケットの解析及び分類に更なる解析分類サイクルが必要であることを示す場合には、前記データパケットの前記ヘッダの第３ヘッダ部分及び前記第２コンテンツを使用して、前記ＴＣＡＭにおける第３参照を実行して、第３アドレスを生成し、
前記解析分類完了フラグが、前記データパケットの解析及び分類に更なる解析分類サイクルが必要でないことを示す場合には、前記第２コンテンツに少なくとも一部基づいて前記データパケットの分類結果を出力し、
前記第３ヘッダ部分は、前記第２コンテンツに少なくとも一部基づいて前記ヘッダから生成される
方法。
【請求項１５】
前記第１参照を実行する段階は、
第１メモリアドレスを生成するべく前記第１参照を実行する段階と、
メモリの前記第１メモリアドレスにアクセスすることにより、前記第１コンテンツを生成する段階と
を有する請求項１４に記載の方法。
【請求項１６】
前記第２ヘッダ部分は、前記第１コンテンツに少なくとも一部基づき、
前記第２ヘッダ部分は、前記第１ヘッダ部分とは異なる請求項１４又は１５に記載の方法。