(57)【要約】【課題】データパケットルータ内のラインカード上のＴＣＡＭ内でアクセス制御リスト（ＡＣＬ）を維持する方法および装置であって、規則が着信データパケットに適用される方法および装置を提供すること。【解決手段】各インターフェースは、複数のＡＣＬと関連付けることができ、複数のインターフェースは、単一の共用ＡＣＬと関連付けることができる。共用ＡＣＬは、複数のインターフェースに適用可能な規則を含む。他のＡＣＬは、特定のインターフェースに特有である。着信データパケットに適用する規則を探索するとき、フィルタは、データパケットがそれを介して到着したインターフェースに関連する特有のＡＣＬと共用ＡＣＬを共に探索する。共用ＡＣＬを使用して、共通規則の複製が削減され、それによってラインカード上に格納される全規則数が削減され、メモリ記憶空間が節約される。本発明は、ＡＣＬ以外の規則の組にも適用可能である。【選択図】      図１
2005130489.tif 000002
【特許請求の範囲】
【請求項１】
データパケットルータ内の第１インターフェースに到着するデータパケットに適用すべき規則を決定する方法であって、
ａ．少なくとも２つの組の規則を第１インターフェースと関連付けるステップであって、少なくとも１つの組の規則が、第２インターフェースとも関連付けられる１組の共用規則であるステップと、
ｂ．データパケットのキーを決定するステップと、
ｃ．キーに合致する少なくとも１つの規則を求めて、少なくとも２つの組の規則を探索するステップとを含む方法。
【請求項２】
少なくとも２つの組の規則を第１インターフェースと関連付けるステップが、少なくとも１つの組の規則を第１インターフェースだけと関連付けるステップを含む請求項１に記載の方法。
【請求項３】
データパケットがインターネットプロトコル（ＩＰ）パケットであり、インターフェースがルータ内に位置し、少なくとも２つの組の規則を第１インターフェースと関連付けるステップが、少なくとも２つのアクセス制御リスト（ＡＣＬ）を第１インターフェースと関連付けるステップを含む請求項１に記載の方法。
【請求項４】
各規則が、関連するアクションを有し、関連する各アクションが、パケット拒否、パケット許可、パケット計数、パケット複写のうちの１つである請求項３に記載の方法。
【請求項５】
キーが、ＩＰパケットのヘッダ内に含まれる情報から決定される請求項３に記載の方法。
【請求項６】
キーを決定する情報が、ＩＰソースアドレス、ＩＰ宛先アドレス、プロトコル番号、伝送制御プロトコル／ユーザデータグラムプロトコル（ＴＣＰ／ＵＤＰ）ソースポート、ＴＣＰ／ＵＤＰ宛先ポート、およびインターネット制御メッセージプロトコルコードのうち少なくとも１つを含む請求項５に記載の方法。
【請求項７】
少なくとも２つの組の規則を探索するステップが、
ａ．少なくとも２つの組の規則に関する優先順位を決定するステップと、
ｂ．優先順位に合致する順序で、キーに合致する規則を求めて少なくとも２つの組の規則内を探索するステップとを含む請求項１に記載の方法。
【請求項８】
データパケットが第１インターフェースに到着するデータパケットルータでセキュリティを設ける方法であって、
ａ．少なくとも２つの組の規則を第１インターフェースと関連付けるステップであって、少なくとも１つの組の規則が、第２インターフェースとも関連付けられる１組の共用規則であり、少なくとも２つの組の規則内の各規則が、関連するアクションを有するステップと、
ｂ．データパケットのキーを決定するステップと、
ｃ．キーに合致する少なくとも１つの規則を求めて、少なくとも２つの組の規則を探索するステップと、
ｄ．キーに合致する少なくとも１つの規則が見つかった場合、少なくとも１つの規則のそれぞれに関連するアクションをデータパケットに適用するステップとを含む方法。
【請求項９】
少なくとも２つの組の規則を第１インターフェースと関連付けるステップが、少なくとも１つの組の規則を第１インターフェースだけと関連付けるステップを含む請求項８に記載の方法。
【請求項１０】
データパケットがインターネットプロトコル（ＩＰ）パケットであり、インターフェースがルータ内に位置し、少なくとも２つの組の規則を第１インターフェースと関連付けるステップが、少なくとも２つのアクセス制御リスト（ＡＣＬ）を第１インターフェースと関連付けるステップを含む請求項８に記載の方法。
【請求項１１】
関連する各アクションが、パケット拒否、パケット許可、パケット計数、パケット複写のうちの１つである請求項１０に記載の方法。
【請求項１２】
キーが、ＩＰパケットのヘッダ内に含まれる情報から決定される請求項１０に記載の方法。
【請求項１３】
キーを決定する情報が、ＩＰソースアドレス、ＩＰ宛先アドレス、プロトコル番号、伝送制御プロトコル／ユーザデータグラムプロトコル（ＴＣＰ／ＵＤＰ）ソースポート、ＴＣＰ／ＵＤＰ宛先ポート、およびインターネット制御メッセージプロトコルコードのうち少なくとも１つを含む請求項１２に記載の方法。
【請求項１４】
少なくとも２つの組の規則を探索するステップが、
ａ．少なくとも２つの組の規則に関する優先順位を決定するステップと、
ｂ．優先順位に合致する順序で、キーに合致する規則を求めて少なくとも２つの組の規則内を探索するステップとを含む請求項８に記載の方法。
【請求項１５】
ａ．第１インターフェースと、
ｂ．第２インターフェースと、
ｃ．少なくとも第１インターフェースと関連する第１の組の規則と、
ｄ．第１インターフェースおよび第２インターフェースと関連する第２の組の規則と、
ｅ．第１インターフェースに到着する個々のデータパケットに特有の少なくとも１つの規則を求めて、第１の組の規則および第２の組の規則を探索する手段とを備えるラインカード。
【請求項１６】
第１の組の規則および第２の組の規則がアクセス制御リスト（ＡＣＬ）である請求項１５に記載のラインカード。
【請求項１７】
第１の組の規則が第１インターフェースだけと関連付けられる請求項１５に記載のラインカード。
【請求項１８】
ａ．第３インターフェースと、
ｂ．第１インターフェースおよび第２インターフェースと関連する第３の組の規則とをさらに含み
第１インターフェースに到着する個々のデータパケットに特有の少なくとも１つの規則を求めて探索する手段が、そのような規則を求めて第３の組の規則を探索することを含む請求項１７に記載のラインカード。
【請求項１９】
優先順位に従って第１の組の規則および第２の組の規則を第１インターフェースに関連付ける手段をさらに備え、規則を求めて探索する手段が、優先順位で指定される順序で、第１の組の規則および第２の組の規則を探索することを含む請求項１５に記載のラインカード。
【請求項２０】
請求項１５に記載のラインカードを備えるパケット交換機。
【請求項２１】
データパケットが第１インターフェースに到着するデータパケットルータでセキュリティを設けるための命令を含むコンピュータ可読媒体であって、
ａ．少なくとも２つの組の規則を第１インターフェースと関連付ける命令であって、少なくとも１つの組の規則が、第２インターフェースとも関連付けられる１組の共用規則であり、少なくとも２つの組の規則内の各規則が、関連するアクションを有する命令と、
ｂ．データパケットのキーを決定する命令と、
ｃ．キーに合致する少なくとも１つの規則を求めて、少なくとも２つの組の規則を探索する命令と、
ｄ．キーに合致する少なくとも１つの規則が見つかった場合、少なくとも１つの規則のそれぞれに関連するアクションをデータパケットに適用する命令とを含む方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、遠隔通信システムにおけるルータインターフェースに関し、より詳細には、そのようなインターフェースに関連するアクセス制御リストに関する。
【背景技術】
【０００２】
通信システムにおけるインターネットルータは、ラインカード上のインターフェースでインターネットプロトコル（ＩＰ）パケットを受信する。ルータは、いくつかのインターフェースを有することのできる多数のラインカードを含む。通常、各インターフェースは、ラインカード上の３進コンテンツアドレス指定可能メモリ（ＴＣＡＭ）内に格納された、関連するアクセス制御リスト（ＡＣＬ）を有する。ＡＣＬは、望ましくないパケットをフィルタリングし、または計数や複写などのパケットに対する他のアクションを実施するためにＩＰパケットに適用すべき１組の規則である。各規則は、キーおよびアクションから構成される。ＩＰパケットがインターフェースを介して到着したとき、ルータは、パケットから特有のフィールドを抽出してキーを形成し、合致するキーを有する規則を求めて、インターフェースに関連するＡＣＬを探索する。規則が見つかった場合、フィルタは、規則に関連するアクションをパケットに適用する。
【０００３】
各インターフェースは、同一の規則の組を有することができる。このことを利用して、構成およびトラブルシューティングを単純化し、また堅牢性を改善しているルータもある。規則の組はＡＣＬ間で複写される。しかし、ＴＣＡＭにロードされると、各インターフェースの各ＡＣＬの各規則が別々に格納およびアクセスされ、したがってＴＣＡＭ記憶空間が節約されない。別のルータでは、さらに踏み込んで、２つ以上のインターフェース間で単一のＡＣＬを共用している。これにより、必要なＴＣＡＭ記憶空間量が幾分削減されるが、このことが可能なのは、各インターフェースがすべてのインターフェースの規則を共通に有する場合だけである。
【発明の開示】
【発明が解決しようとする課題】
【０００４】
ＴＣＡＭの記憶容量の向上は、アクセス速度の向上ほど迅速には進歩していない。ＴＣＡＭに関連するスペースおよび電力上の制約、ならびにＴＣＡＭのコストのために、各ラインカード上のＴＣＡＭの数およびサイズを最小に保つことが好ましい。このことは、ある状況では難しいことがある。ルータはしばしば、数百のインターフェースおよび数百のＡＣＬをサポートし、広いＴＣＡＭ記憶空間を必要とするからである。格納する合計規則数を最小限に抑えたラインインターフェースカードにより、より少数の、またはより小さいＴＣＡＭを使用することが可能となり、それによってスペースおよび電力が節約される。あるいは、そのようなカードは、同一のスペースおよび電力使用量に対してより多くの規則をサポートすることができる。
【課題を解決するための手段】
【０００５】
本発明の一態様によれば、データパケットルータ内の第１インターフェースに到着するデータパケットに適用すべき規則を決定する方法が提供される。少なくとも２つの組の規則が、第１インターフェースと関連付けられ、少なくとも１つの組の規則が、第２インターフェースとも関連付けられる１組の共用規則である。データパケットのキーが決定される。キーに合致する少なくとも１つの規則を求めて、その少なくとも２つの組の規則が探索される。
【０００６】
本発明の別の態様によれば、データパケットが第１インターフェースに到着するデータパケットルータでセキュリティを設ける方法が提供される。少なくとも２つの組の規則が第１インターフェースと関連付けられ、少なくとも１つの組の規則が、第２インターフェースとも関連付けられる１組の共用規則であり、その少なくとも２つの組の規則内の各規則が、関連するアクションを有する。データパケットのキーが決定される。キーに合致する少なくとも１つの規則を求めて、その少なくとも２つの組の規則が探索される。キーに合致する少なくとも１つの規則が見つかった場合、少なくとも１つの規則のそれぞれに関連するアクションがデータパケットに適用される。
【０００７】
本発明の方法を実施するラインカードが提供される。本発明の方法は、コンピュータ可読媒体上の命令として格納することもできる。
【０００８】
本発明の方法およびラインインターフェースカードにより、インターフェース間で規則を共用することが可能となると共に、依然として個々のインターフェースカードに特有の規則を使用することが可能である。規則を単に複写するのではなく、インターフェース間で規則を共用することにより、メモリ記憶空間（ＴＣＡＭなど）が節約され、それによってラインカードのコストおよび電力消費が削減される。
【０００９】
本発明の機能および利点は、添付の図を参照しながら、以下の好ましい実施形態の詳細な説明を読むことによってより明らかとなるであろう。
【００１０】
添付の各図では、同様の機能が類似の符号を有することに留意されたい。
【発明を実施するための最良の形態】
【００１１】
図１を参照すると、本発明の好ましい実施形態によるルータ１０が示されている。ルータ１０はラインカード１２を含む。ラインカード１２は、４つのインターフェース１４、１６、１８、および２０を含み、それらを介してインターネットプロトコル（ＩＰ）パケットが到着する。ラインカード１２はまた、３進コンテンツアドレス指定可能メモリ（ＴＣＡＭ）２４も含む。ＴＣＡＭは、複数のアクセス制御リスト（ＡＣＬ）を格納する。少なくとも１つのＡＣＬは特有の（ｓｐｅｃｉｆｉｃ）ＡＣＬ２６であり、少なくとも１つのＡＣＬは共用ＡＣＬ２８である。以下で説明するように、各インターフェースは少なくとも１つのＡＣＬと関連付けられる。
【００１２】
ラインカード１２はまた、フィルタ３４も含む。各ＩＰパケットについて、フィルタ３４は、ＩＰパケットヘッダから指定のフィールドを抽出してキーを構築し、ＩＰパケットから導出したキーに対応する規則を求めて、ＩＰパケットがそれを介して到着したインターフェースに関連するＡＣＬを探索し、見つかった任意のそうした規則に関連するアクションを実施する。フィルタ３４は、受信したＩＰパケットに対応する規則の位置を突き止めて適用するための命令を含み、好ましくは、プロセッサ上で動作するソフトウェアの形態である。より一般には、フィルタは、ソフトウェア、または集積回路内のハードウェアを含むプロセッサ内のハードウェアの任意の組合せの形態の命令を含むことができる。プロセッサは単一の装置である必要はなく、命令は、複数の装置内に位置することができる。ソフトウェアの形態では、命令はコンピュータ可読媒体上に格納することができる。
【００１３】
各特有のＡＣＬ２６は、単一のインターフェースと関連付けられ、各インターフェースは、対応する特有のＡＣＬと関連付けることができる。各特有のＡＣＬは、それが対応するインターフェースに特定の規則を含む。こうした規則は、パケット拒否、パケット受諾、パケット計数、パケット複写などの関連するアクションを含むことができる。各共用ＡＣＬ２８は、少なくとも２つのインターフェースと関連付けられ、各インターフェースは少なくとも１つの共用ＡＣＬと関連付けられる。各共用ＡＣＬ２８は、一部またはすべてのインターフェースが共通に有する規則を含む。図２を参照すると、インターフェースとＡＣＬの間の例示的関連付けが示されている。各インターフェースは、１つの関連する特有のＡＣＬ２６を有する。２つのインターフェース１４および１６は、１つの共用ＡＣＬ２８ａと関連付けられ、すべての４つのインターフェースは、１つの共用ＡＣＬ２８ｂと関連付けられる。各特有のＡＣＬ２６は、対応するインターフェースを介して到着するＩＰパケットに適用することのできる規則を含む。共用ＡＣＬ２８ａは、その２つの関連するインターフェース１４および１６のどちらかを介して到着するＩＰパケットに適用することのできる規則を含む。共用ＡＣＬ２８ｂは、インターフェースのいずれかを介して到着するＩＰパケットに適用することのできる規則を含む。
【００１４】
大部分のインターフェースは通常、そのインターフェースに特有の規則よりも多くの規則を、少なくとも１つの他のインターフェースと共通に有するので、大規模なスケーリングの利点を実現することができるのと同様に、ＴＣＡＭ記憶域の大幅な節約を実現することができる。例えば、各インターフェースが他のインターフェースと共通に７５個の規則を有し、インターフェースに特有の２５個の規則を有する場合を考慮し、１００個のインターフェースが存在すると仮定する。各インターフェースがそれ自体の固有のＡＣＬを有する場合、それぞれ１００個の規則がある１００個のリスト、すなわち１０，０００個の規則に対するＴＣＡＭ記憶域を設けなければならない。共用ＡＣＬを使用し、かつインターフェースに対する規則を複数のＡＣＬに格納することを可能にすることにより、設けなければならないＴＣＡＭ記憶域は、７５個の規則がある１つのリストと、２５個の規則がある１００個のリスト、すなわち合計で２５７５個の規則に対してだけとなる。
【００１５】
図１に戻ると、ルータ１０はまた、複数の他のラインカード３６も含む（その詳細は図１には図示せず）。こうした他のラインカード３６はそれぞれ、複数のインターフェース、フィルタ、ＴＣＡＭ、および複数のＡＣＬを含めて、ラインカード１２と類似している。しかし、ＡＣＬの数はラインカード間で異なる可能性がある。
【００１６】
図３を参照すると、本発明の一実施形態による、ＩＰパケットに関する規則を取り出して適用する方法が示されている。ステップ５０では、ＩＰパケットが、インターフェース１４、１６、１８、および２０のうちの１つに到着する。ＩＰパケットは、ＩＰヘッダおよび伝送制御プロトコル（ＴＣＰ）ヘッダを有する。ステップ５２では、フィルタ３４は、ＩＰパケットのＩＰヘッダおよびＴＣＰヘッダ内の情報から、ＩＰパケットに関するキーを決定する。キーは、ＩＰソースアドレス、ＩＰ宛先アドレス、ＩＣＭＰタイプ／コード、プロトコル番号、ＴＣＰ／ＵＤＰソースポート、およびＴＣＰ／ＵＤＰ宛先ポートなどの情報から決定することができる。
【００１７】
フィルタ３４は、どのＡＣＬを探索すべきかを決定するためのインターフェースルックアップテーブルを含む。ステップ５４では、フィルタ３４は、キーに合致する規則を求めて、インターフェースに関連するＡＣＬ内を探索する。ステップ５６で規則が見つかった場合、ステップ５８で、フィルタは規則に関連するアクションをＩＰパケットに適用する。そのようなアクションの例には、パケット拒否、パケット受諾、パケット計数、およびパケット複写が含まれる。通常は、インターフェースに関連する少なくとも２つのＡＣＬが存在することになるが、１つのＡＣＬだけに関連するラインカード上のインターフェースが存在する可能性がある。ステップ５６で規則が見つからなかった場合、または規則が見つかり、次いで規則に関連するアクションをステップ５８で適用した後の場合に、ステップ６０で、フィルタ３４は、インターフェースに関連する別のＡＣＬが存在するか否かを判定する。ステップ６０で、フィルタ３４が、インターフェースに関連する別のＡＣＬが存在すると判定した場合、ステップ５４で、フィルタ３４は、キーに合致する規則を求めてＡＣＬ内を探索する。ステップ６０で、フィルタ３４が、インターフェースに関連する別のＡＣＬが存在しないと判定した場合、フィルタは、インターフェースに関連する規則の探索を終了する。
【００１８】
フィルタ３４は、インターフェースに関連するＡＣＬをどんな順序でも探索することができる。しかし、好ましい実施形態では、フィルタは、各インターフェースについての優先順位を維持する。この優先順位は、ユーザが構成することができる。
【００１９】
あらゆる共用規則を共用ＡＣＬに格納する必要はなく、異なる特有のＡＣＬに関して規則の重複が存在する可能性がある。しかし、これにより、使用されるＴＣＡＭ記憶域の量が増大する。必要なＴＣＡＭ記憶域の量を最小限に抑えるために、あらゆる共用規則を共用ＡＣＬに格納すべきである。
【００２０】
ラインカード１２は、ＡＣＬのうち少なくとも１つをそれぞれ含む複数のＴＣＡＭを有することができる。
【００２１】
４つのインターフェース、１つのＴＣＡＭ、２つの特有のＡＣＬ、および４つの共用ＡＣＬを有するラインカードに関して本発明を説明した。より一般には、ラインカードは複数のインターフェースと、その少なくとも１つが共用ＡＣＬである少なくとも２つのＡＣＬとを有する。共用ＡＣＬは、すべてのインターフェース間で共用される規則を含むことができ、またはインターフェースのサブセット間だけで共用される規則を含むことができる。インターフェースは、任意の数の共用ＡＣＬと関連付けることができ、特有のＡＣＬと関連付けられる可能性があり、または関連付けられない可能性がある。しかし、少なくとも１つのインターフェースが、その少なくとも１つが共用ＡＣＬである少なくとも２つのＡＣＬに関連付けられる。このようにして、ＴＣＡＭ記憶空間を節約することができる。
【００２２】
各インターフェースに関連するＡＣＬの数に関する実際的な制限は、ＡＣＬアクセス時間である。ＡＣＬにアクセスするのにかかる時間は、パケットを処理するのに利用可能な時間よりも短くなければならない。例えば、ＯＣ−４８ライン速度は、パケット処理速度約６．１Ｍｐｐｓ（百万パケット／秒）を必要とする。毎秒６千万から１億ルックアップ程度の現在のＴＣＡＭアクセス速度では、各インターフェースに関連するＡＣＬの数は、約８に限定される。
【００２３】
ＩＰパケット、ルータ、およびＡＣＬを参照しながら本発明を説明した。より一般には、本発明は、着信パケットに適用すべき規則を含むインターフェース特有の規則の組を含むどんなパケット交換機（イーサネット交換機、ＡＴＭ交換機、ＩＰｖ６交換機など）にも適用することができる。例えば、本発明は、レートリミッティング（ｒａｔｅ−ｌｉｍｉｔｉｎｇ）およびレートポリシング（ｒａｔｅ−ｐｏｌｉｃｉｎｇ）、ポリシーベースの転送、優先順位割当て、分類などのより一般的な規則ベースのセキュリティ機能に適用することができる。受信したパケットに関するキーは、任意の様々なパケットヘッダ情報を使用して、フィルタで決定することができる。
【００２４】
提示した実施形態は単なる例であり、本発明の精神から逸脱することなく上述の実施形態に対する変形形態を作成できることを当業者は理解されよう。本発明の範囲は、もっぱら添付の特許請求の範囲によって定義される。
【図面の簡単な説明】
【００２５】
【図１】本発明の一実施形態によるルータを示すブロック図である。
【図２】図１のインターフェースカードとＡＣＬの間の例示的関連付けを示すブロック図である。
【図３】本発明の一実施形態による、図１のフィルタがＡＣＬ内の規則にアクセスする方法を示す流れ図である。
【符号の説明】
【００２６】
１０  ルータ
１２、３６  ラインカード
１４、１６、１８、２０  インターフェース
２４  ３進コンテンツアドレス指定可能メモリ（ＴＣＡＭ）
２６  特有のＡＣＬ
２８、２８ａ、２８ｂ  共用ＡＣＬ
３４  フィルタ
【図１】
2005130489.tif 000003
【図２】
2005130489.tif 000004
【図３】
2005130489.tif 000005
【外国語明細書】
2005130489.tif 000006
2005130489.tif 000007
2005130489.tif 000008
2005130489.tif 000009
2005130489.tif 000010
2005130489.tif 000011
2005130489.tif 000012
2005130489.tif 000013
2005130489.tif 000014
2005130489.tif 000015
2005130489.tif 000016
2005130489.tif 000017
2005130489.tif 000018
2005130489.tif 000019
2005130489.tif 000020
2005130489.tif 000021