(57)【要約】【課題】大量のビット数のトラフィックによる攻撃と、大量のパケット数のトラフィックによる攻撃を共に防止することができるネットワーク監視方法及び装置を提供する。【解決手段】ポリシング機能における従来の監視レートであるビットレートに加えて、パケットレート等の異なる種別の監視レートをフロー毎に選択可能とするネットワーク監視方法および装置を提供する。フロー毎に監視レートの種別を選択するため、フロー毎のレート監視情報の構成要素として監視レートの種別を示すレート識別子を備え、レート識別子に基づいた種別のレートで監視する。特にレート監視のアルゴリズムとしてリーキーバケットアルゴリズムを利用する場合には、レート識別子はバケツに蓄積する水量の種別を入力パケット長を示すビット数と入力パケット数とから選択するための水量識別子とする。【選択図】図16
2006033770.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークに流入する入力パケットまたはフレームの単位時間あたりの流量であるレートを監視するネットワーク監視方法であって、監視レートの種別を可変とすることを特徴とするネットワーク監視方法。
【請求項２】
請求項1に記載のネットワーク監視方法であって、監視レートの種別を単位時間当たりの入力パケット長またはフレーム長を示すビット数であるビットレートと、単位時間当たりの入力パケットまたはフレームの個数であるパケットレートとで可変とすることを特徴とするネットワーク監視方法。
【請求項３】
請求項1または請求項2に記載のネットワーク監視方法であって、同一パケットをパケットレートとビットレート等の異なる監視レートにより同時に監視することを特徴とするネットワーク監視方法。
【請求項４】
請求項1から3のいずれか1項に記載のネットワーク監視方法であって、監視レートを超過した入力パケットまたはフレームに対する制裁として廃棄するか、またはネットワーク監視装置内での優先度を変更するか、またはネットワーク内の優先度を変更することを特徴とするネットワーク監視方法。
【請求項５】
請求項1から4のいずれか1項に記載のネットワーク監視方法であって、前記のネットワーク監視方法が用いるネットワーク監視装置が、
入力パケットまたはフレームが入力する物理的及び論理的な回線情報と、出力する物理的及び論理的な回線情報と、ヘッダ内のアドレス情報と用途情報とネットワーク内の優先度情報と、のうち少なくとも一つの情報から決まるパケットまたはフレームの一連の流れであるフロー毎に、出力されるパケットまたはフレームのレートを制御する監視レートの種別をビットレートとパケットレートとで可変とすることを特徴とするネットワーク監視方法。
【請求項６】
請求項1から4のいずれか1項に記載のネットワーク監視方法であって、レート監視のアルゴリズムとしてリーキーバケットアルゴリズムまたはこれと等価なアルゴリズムを利用し、前記アルゴリズムにおいてバケツに追加する水量の種別を入力パケット長またはフレーム長を示すビット数と入力パケットまたはフレームの個数とで可変とすることにより監視レートの種別を可変とすることを特徴とするネットワーク監視方法。
【請求項７】
請求項6に記載のネットワーク監視方法であって、レート違反と判定される直前の入力パケットまたはフレームに対してバケツに追加する水量を一定の時間に相当する水量とすることにより、前記一定の時間の間の入力パケットをレート違反と判定するネットワーク監視方法。
【請求項８】
ネットワークに流入する入力パケットまたはフレームの単位時間あたりの流量であるレートを監視するネットワーク監視装置であって、監視レートの種別を可変とすることを特徴とするネットワーク監視装置。
【請求項９】
請求項8に記載のネットワーク監視装置であって、監視レートの種別を単位時間当たりの入力パケット長またはフレーム長を示すビット数であるビットレートと、単位時間当たりの入力パケットまたはフレームの個数であるパケットレートとで可変とすることを特徴とするネットワーク監視装置。
【請求項１０】
請求項8に記載のネットワーク監視装置であって、同一パケットをパケットレートとビットレート等の異なる監視レートにより同時に監視することを特徴とするネットワーク監視装置。
【請求項１１】
請求項8から10のいずれか1項に記載のネットワーク監視装置であって、監視レートを超過した入力パケットまたはフレームに対する制裁として廃棄するか、またはネットワーク監視装置内での優先度を変更するか、またはネットワーク内の優先度を変更することを特徴とするネットワーク監視装置。
【請求項１２】
請求項8から11のいずれか1項に記載のネットワーク監視装置であって、
入力パケットまたはフレームが入力する物理的及び論理的な回線情報と、出力する物理的及び論理的な回線情報と、ヘッダ内のアドレス情報と用途情報とネットワーク内の優先度情報と、のうち少なくとも一つの情報から決まるパケットまたはフレームの一連の流れであるフロー毎に、出力されるパケットまたはフレームのレートを制御する監視レートの種別をビットレートとパケットレートとで可変とすることを特徴とするネットワーク監視装置。
【請求項１３】
請求項8から11のいずれか1項に記載のネットワーク監視装置であって、フロー毎に備えるバケツに追加する水量の種別をビット数と個数とで可変とすることにより、フロー毎に出力されるパケットまたはフレームのレートを制御する監視レートの種別を可変とすることを特徴とするネットワーク監視装置。
【請求項１４】
請求項13に記載のネットワーク監視装置であって、レート違反と判定されたフローに対し前記一定時間の間は前記ネットワーク監視装置から前記フローに属するパケットまたはフレームを出力しないことを特徴とするネットワーク監視装置。
【請求項１５】
請求項13に記載のネットワーク監視装置であって、入力パケットまたはフレームが出力される前記ネットワーク監視装置の出力回線で規定される最短フレーム長または最短パケット長のビット数未満の入力パケットまたはフレームに対して、バケツに追加する水量を前記出力回線の最短フレーム長または最短パケット長のビット数に相当する水量とすることにより、フロー毎に出力されるパケットまたはフレームのビットレートを制御するネットワーク監視装置。
【請求項１６】
請求項12に記載のネットワーク監視装置であって、
入力パケットまたはフレームが入力する物理的及び論理的な回線情報と出力する物理的及び論理的な回線情報とヘッダ内のアドレス情報と用途情報とネットワーク内の優先度情報とのうち少なくとも一つの情報から入力パケットまたはフレームの属するフローを検出して、前記フローの識別子であるフロー識別子を判定するフロー検出手段と、レート監視のための制御情報として監視レートの種別であるレート識別子を含むレート監視情報から構成されるエントリを一つあるいは複数所持するレート監視テーブルと、前記フロー識別子に対応するエントリをレート監視テーブルから読み出すレート監視テーブル制御手段と、前記レート監視テーブル制御手段が読み出したエントリ内のレート識別子を含むレート監視情報と現時刻を表すタイマーの値に基づいて前記入力パケットまたはフレームのレート遵守・違反の判定を行う監視結果判定手段と、前記監視結果判定手段の判定結果により前記入力パケットまたはフレームに対する制裁を判定する制裁判定手段とを所持することを特徴とするネットワーク監視装置。
【請求項１７】
請求項13から15のいずれか1項に記載のネットワーク監視装置であって、
入力パケットが入力する物理的及び論理的な回線情報と出力する物理的及び論理的な回線情報とヘッダ内のアドレス情報と用途情報とネットワーク内の優先度情報とのうち少なくとも一つの情報から入力パケットまたはフレームの属するフローを検出して、前記フローの識別子であるフロー識別子を判定するフロー検出手段と、リーキーバケットアルゴリズムまたはこれと等価なアルゴリズムによるレート監視のための制御情報としてバケツに追加する水量の種別を選択する水量識別子を含むレート監視情報から構成されるエントリを一つあるいは複数所持するレート監視テーブルと、前記フロー識別子に対応するエントリをレート監視テーブルから読み出すレート監視テーブル制御手段と、前記レート監視テーブル制御手段が読み出したエントリ内の水量識別子により種別を選択された水量とレート監視情報と現時刻を表すタイマーの値に基づいて入力パケットまたはフレームのレート遵守・違反の判定を行う監視結果判定手段と、前記監視結果判定手段の判定結果により前記入力パケットまたはフレームに対する制裁を判定する制裁判定手段とを所持することを特徴とするネットワーク監視装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワークに流入するパケットを監視するネットワーク監視方法及び装置に関する。
【背景技術】
【０００２】
インターネットの普及に伴い、ISP(Internet Service Provider)事業やASP(Application Service Provider)事業、電子商取引等の商用サービスがインターネット上で行われるようになった。更に、電子政府・電子自治体の構想によって今後は役所の申請、届出手続きや公共工事の入札手続等をインターネット経由で行う電子申請、電子入札が始まり、公的サービスにおけるインターネットの利用も拡大しようとしている。このように、インターネットは既に社会的に重要な情報基盤となっており、常に安定的なサービスを提供することが求められている。
【０００３】
この要求に対する阻害要因として、DoS(Denial of Service)攻撃が問題となっている。DoS攻撃とは、サーバが提供するサービスを妨害しようとする攻撃者による意図的な攻撃のことである。この攻撃を受けたサーバはクライアントにサービスを提供できなくなり、商用サービスの場合には経済的損失を引き起こし、公的サービスであれば社会的な混乱を招く。また、ルータやスイッチ等のパケット中継装置に対しDoS攻撃が仕掛けられると、その影響は当該パケット中継装置を経由する全てのパケットに及ぶ。従って、DoS攻撃を検出してこれを回避することが社会的に重要な課題となっている。
【０００４】
DoS攻撃の攻撃手法は、logic攻撃とflooding攻撃の二つに大きく分類される。 [非特許文献1] logic攻撃では、システムのセキュリティホールを利用してサーバが提供するサービスの低下、停止を引き起こす。この攻撃からサービスを防御するには、攻撃に使用される特定パターンのパケットのフィルタリングやシステムのアップデートといった対策がとられる。
【０００５】
flooding攻撃の場合には、攻撃者がサーバに大量のパケットを送付することによって正当なクライアントがサーバに接続しにくい状態としたり、サーバの計算資源を占有することによってサービスを提供不能としたりする。更に、flooding攻撃が発生するとインターネットのネットワーク資源も占有されるため、攻撃対象となっているサービスとは無関係の通信にも支障を及ぼす可能性がある。このようにflooding攻撃は甚大な被害を広範に与えるため、攻撃を検出して回避することが求められる。しかし、攻撃に使用されるパケット単体では通常のトラフィックと区別がつかないため、攻撃の検出は困難である。また、flooding攻撃の一種であるSmurf攻撃[非特許文献2] やSYN攻撃[非特許文献2]では、ネットワークプロトコルを逆手に利用してプロトコルに則った動作による攻撃を仕掛けるため、攻撃の回避も困難である。
【０００６】
flooding攻撃の回避方法の一つとして、パケット中継装置が従来備えるポリシング機能（以下、「従来技術」と称する。）を利用する方法が考えられる。ポリシング機能とは、入力回線番号または出力回線番号、IP(Internet Protocol)アドレス、プロトコル、優先度等のパケットヘッダ情報で特徴付けられるパケットの集合であるフロー毎に使用しているレートを監視して、これがフロー毎に設定された監視レートを超過した場合には廃棄、あるいはネットワーク内またはパケット中継装置内部での転送処理の優先度を落とすことによりレート制限をかける機能である。ポリシング機能を利用すると、flooding攻撃を仕掛けているフローにレート制限をかけることができる。
【０００７】
ポリシング機能のレート監視のアルゴリズムとして、固定長であるセルの監視アルゴリズムであるcontinuous Leaky Bucket Algorithm（以下リーキーバケットアルゴリズム）をIPの可変長パケットのレート監視用に拡張したアルゴリズムが用いられている。[特許文献1]リーキーバケットアルゴリズムは図5に示すように、ある深さを持ち穴の空いた漏れバケツのモデルで表され、バケツに水が入っている間水は監視レートで漏れ続ける。パケットの到着揺らぎを許容するためバケツに深さ（バケツ閾値）を持ち、バケツ内水量がバケツ閾値以下となっていてバケツから水が溢れないうちの入力パケットはレート遵守と判定される。
【０００８】
この場合バケツから水が溢れていないので、入力パケット長またはフレーム長を示すビット数に相当する水がバケツに注ぎ込まれる。これに対し、バケツ内水量がバケツ閾値を超過してバケツから水が溢れた場合には、入力パケットはレート違反と判定される。レート違反の状態ではバケツから水が溢れてしまっているので、入力パケットのビット数に相当する水はバケツに注ぎ込まれない。このように、パケット到着時に注ぎ込む水の量を入力パケットのビット数に合わせて可変とするアルゴリズムとすることにより、可変長パケットのレート監視を実現している。以上のアルゴリズムを、図6にフローチャートとして示す。以下、各種のflooding攻撃に対するポリシング機能の適用例を述べる。
【０００９】
Smurf攻撃では、図1に示すように攻撃元端末100は送信元IPアドレスに攻撃対象端末103のIPアドレスを偽装したICMP (Internet Control Message Protocol) echo requestのブロードキャストパケットとして送信する。このパケットはパケット中継装置101でコピーされ、サブネットワーク内の全端末102-1〜nへブロードキャストされる。すると端末102-1〜n全てが攻撃対象端末103に対しICMP echo replyを返すので、攻撃対象端末103に集中的に多数のパケットが送信される結果、flooding攻撃が成立する。そこで、ポリシング機能を利用してパケット中継装置101でICMP echo requestからなるフローに対するレート制限、及びICMP echo replyからなるフローに対するレート制限を実施することにより、ICMPパケットが過度に流れるSmurf攻撃を防止することができる。
【００１０】
SYN攻撃は、TCPセッションの確立に用いられる3ウェイハンドシェイクを利用した攻撃である。3ウェイハンドシェイクでは、以下の手順でTCPセッション確立の手続きを行う。図2に示すようにまず、クライアント端末200からセッション確立の要求にあたるSYNパケット210が送信される。SYNパケット210を受信したサーバ端末201は、TCPセッションの接続が可能であることを示すACKパケット211を、SYNパケットに対する確認応答としてクライアント端末に返信する。このACKパケット211を受信したクライアント端末200も、同様にACKパケット212を返信し、これをサーバ端末201が受信すると、TCPセッションが確立されて通信を開始する。
【００１１】
SYN攻撃では、この3ウェイハンドシェイクを利用して次のように攻撃を仕掛ける。図3に示すようにまず、攻撃元端末300は送信元IPアドレスを存在しないIPアドレスに偽装したSYNパケットを攻撃対象端末302に送信する。すると、攻撃対象端末302は受信したSYNパケットの送信元IPアドレスを宛先IPアドレスとしたTCPのACKパケットを返信し、送信元端末からのACKパケットを待つ。しかし、送信元端末は存在しないのでACKパケットは返って来ず、攻撃対象端末302はタイムアウトとなるまで待ち続ける。SYN攻撃によって攻撃対象端末302が多数のSYNパケットを連続して受信すると、全てのSYNパケットに対してACKパケットを待ち続けることとなり、いずれ攻撃対象端末302のメモリ資源は使い果たされてしまう。すると、正当なクライアントからの新規の接続要求に応答できなくなりサービスを提供できない状態に陥る。そこで、ポリシング機能を利用してパケット中継装置201でSYNパケットからなるフローに対するレート制限を実施することにより、SYN攻撃を防止することができる。
【００１２】
また、Smurf攻撃やSYN攻撃のようにプロトコルの動作を利用したflooding攻撃の他、単純に大量のパケットを送り付けることにより攻撃対象のパフォーマンスを低下させるFLOOD攻撃(本明細書では、プロトコルを利用した攻撃を含む一般称である「flooding攻撃」と区別するため「FLOOD攻撃」と称す。)がある。FLOOD攻撃では、例えばWebブラウザでリロードを繰り返して情報を更新し続けることにより、Webサーバに過負荷を与えてサービスを低下させる。この際のパケットの流れを図4に示す。パケット中継装置401によって、攻撃元端末400からのHTTPの要求コマンドのパケット410がWebサーバ402へ中継される。すると、Webサーバ402はHTTPの要求コマンドのパケット410に従ってデータ411を返信する。大量のHTTPの要求コマンドのパケット410をWebサーバが受信するとWebサーバの計算資源を占有してサービスを低下させると共に、これに伴って返信される大量のデータ411がパケット中継装置401のパケット交換容量等のネットワークの帯域資源を占有して通信速度の低下または通信不能を引き起こす。このFLOOD攻撃を防止するためには、送信元IPアドレスが攻撃元端末400のIPアドレスであるパケットをフローとして識別し、当該フローに対しレート制限を実施する。
【００１３】
【特許文献１】特開2000-349812号公報
【００１４】
【非特許文献１】Ryo Kaizaki, et al. "Detection of Denial of Service attacks using AGURI", ICT2002, June 2002.
【非特許文献２】P. Ferguson, et al. “Network Ingress Filtering:Defeating Denial of Service Attacks which employ IP Source Address Spoofing”, IETF, RFC2267 , January 1998.
【発明の開示】
【発明が解決しようとする課題】
【００１５】
以下ではflooding攻撃を、大量のビット数のトラフィックによる攻撃（以下、「ビット攻撃」と称する。）と、大量のパケット数のトラフィックによる攻撃（以下、「パケット攻撃」と称する。）の二種に分類し、各々の攻撃が引き起こす問題について述べる。
ビット攻撃により発生する問題の例として、ネットワーク全体の帯域資源、端末におけるアクセス帯域、あるいはパケット中継装置におけるパケット交換容量等の占有による通信速度の低下または通信不能がある。
【００１６】
一方、パケット攻撃により発生する問題の例としては、先に（背景技術）で述べたSmurf攻撃やSYN攻撃のようにプロトコルの動作を利用した攻撃による通信障害、パケット中継装置の検索エンジン等の計算資源の占有による通信速度の低下または通信不能、あるいはサーバの計算資源の占有によるサービスの低下または提供不能等がある。これらはパケット数に起因する問題であり、パケットのビット数の多寡は本質的な問題ではない。例えばSmurf攻撃の場合には単位時間あたりのICMP echo requestの要求数、SYN攻撃では単位時間あたりのSYNパケットによるTCPセッション確立要求の数、パケット中継装置やサーバの計算資源に対する攻撃では単位時間あたりのパケット処理要求の数が問題となる。従って、同一のビット数のトラフィックであれば、短パケットから構成されるトラフィックの方が多数のパケットから構成されるため、長パケットから構成されるトラフィックよりもパケット攻撃の影響を強く受けることとなる。
【００１７】
なお、先に「従来の技術」で述べたFLOOD攻撃では、Webサーバに与える過負荷のようにパケット攻撃としての側面と、ネットワーク内の帯域資源を占有するビット攻撃としての側面の両面で影響がある。図4でパケット中継装置401からWebサーバ402への向きでは、HTTPの要求コマンド410による処理要求数の頻度が問題となりパケット攻撃としての影響を与える。一方、Webサーバ402からパケット中継装置401への向きではデータ411のビット数によるネットワークの帯域資源の占有が問題となるため、ビット攻撃としての影響を与える。
【００１８】
以上で述べたビット攻撃とパケット攻撃との差異を踏まえ、以下では従来技術のポリシング機能を利用してネットワークをflooding攻撃から回避しようとする際の課題について説明する。従来技術では、例えば１秒あたりのビット数（bit/s）といったように、単位時間あたりのビット数としてのレート（以下、「ビットレート」と称する。）でトラフィックを制限する。従来技術はトラフィックのビットレートを抑えることができるのでネットワークの帯域資源を保護するために有効な手段であり、ビット攻撃を防止するために用いることができる。一方、パケット攻撃を防止するためには単位時間当たりのパケット数としてのレート（以下、「パケットレート」と称する。）を制限する必要があるが、従来技術ではこれができないためパケット攻撃を防止できないという課題がある。
【００１９】
また、従来技術を用いてビットレートを監視することによりパケット攻撃を防止しようとする場合には、以下の課題がある。パケットのビット数が可変長となるIPネットワークでビットレートを制限すると、相対的に短パケットによる攻撃に対しては高いパケットレートを許容してしまう。従って、短パケットによるパケット攻撃としてのflooding攻撃を十分回避し切れない。また、短パケットによる攻撃を想定して制限するビットレートを決めた場合、逆に長パケットに対するパケットレートを不当に厳しく制限してしまうこととなり、攻撃が行なわれていない場合にも通常の通信を抑制してしまう危険性がある。例えば、図4においてHTTPの要求コマンド410によるFLOOD攻撃を防止するため、パケット中継装置401でビットレートを制限する場合を考える。攻撃前の時点ではどの端末が攻撃元になるか予測できないので、端末毎に端末400、端末403各々を等しいビットレートで制限することとなる。この際、HTTPの要求コマンド410のようにデータを伴わない短パケットを想定して制限するビットレートを決めると、攻撃元端末400によるFLOOD攻撃を防止することができる。しかし、攻撃を仕掛けていない端末403が通常の画像データ等の大容量のデータを送信している場合、端末403の通常の通信をより厳しく制限してしまう。
【課題を解決するための手段】
【００２０】
従来技術の課題を解決するため、本発明のネットワーク監視方法及び装置ではポリシング機能の監視レートとして従来のビットレートの他、パケットレート等の異なる種別の監視レートを指定可能とすることを特徴とする。従来のパケット中継装置が備えるポリシング機能は、図7に示すように監視対象となるフローと監視レートの値の組み合わせで定義されるポリシング機能の構成単位であるポリサー700-1〜700-nを複数備えており、ポリサー毎に異なるフローを異なる値の監視レートでレート制限することができる。これに対し本発明では、図8に示すようにポリサー毎に監視レートの種別を切り替えることができ、ポリサー毎にこの種別を示す識別子としてレート識別子を備える。従って、パケット攻撃を監視するフローに対するポリサーの定義では監視パケットレートを指定し、残りのビット攻撃を監視するフローに対するポリサーの定義では従来通り監視ビットレートを指定することで、ポリシング機能をパケット攻撃/ビット攻撃両方のレート監視に共用することができて、ポリサーのメモリ資源を有効活用することができる。
【００２１】
本発明を用いると、例えば「発明が解決しようとする課題」において、パケット中継装置401のポリシング機能を利用してFLOOD攻撃を防止する際の課題は、次のように解決される。端末400、端末403から送信されるHTTPの要求コマンドによるパケット攻撃を防止する場合には、端末400に対するポリサー、端末403に対するポリサー共に所望の監視パケットレートを指定する。すると、従来技術と同様に攻撃元端末400によるFLOOD攻撃を防止することができる。更に、攻撃を仕掛けていない端末403が通常の画像データ等の大容量のデータを送信している場合、パケットレートとしては低くなるので通常の通信を制限することもなくなって、従来技術の課題を解決できる。パケットレートの監視に加えて、更に端末毎に適した監視ビットレートも指定すると、端末403が送信する大容量のデータによりネットワークの帯域資源が占有されることもまた防止できるので、パケット攻撃とビット攻撃の両方を同時に防止することができる。
【００２２】
このように、従来技術における監視レートであるビットレートの他、パケットレート等の異なる種別のレート監視も可能とするため、本発明では従来のリーキーバケットアルゴリズムにおける水量として扱う対象を指定して切り替えることを可能とすることを特徴とする。
【００２３】
本発明を実現するためのアルゴリズムを、図9に示すフローチャートを用いて説明する。
本発明ではまず、ポリサー毎に監視レートの種別がパケットレートであるか、ビットレートであるかの判定をする。監視レートがビットレートである場合には、従来技術のアルゴリズムと同様に図6のフローチャートに従う。監視レートがパケットレートである場合には、水量として扱う対象が従来の「ビット」から「パケット」に切り替わる。これにより従来技術と異なる処理は、バケツから漏れた水量ΔDECを監視ビットレートではなく監視パケットレートを用いて計算する901の処理と、レート遵守であった場合にバケツに追加する水量として入力パケットのビット数ではなくパケット数(=1)に相当する水量を使用する902の処理である。
【００２４】
更に場合に応じて水量として扱う対象を切り替えることにより、本発明を応用することができる。例えば以下のように水量として扱う対象を切り替えると、レート違反となったフローの通信を一定時間遮断して、当該フローをより厳しく制裁することができる。図10に示すように、レート遵守の状態からレート違反の状態に切り替わる場合、即ちレート遵守の入力パケット分の水量1002をバケツに追加するとバケツ内水量1005がバケツ閾値1001以上となってバケツが溢れる際の入力パケットに対しては、バケツに追加する水量を遮断したい一定時間にバケツから漏れる分に相当する水量1006とする。すると、当該パケット分の水をバケツに追加した後一定時間の間は、バケツから水が溢れた状態が続くのでレート違反となり当該フローの通信を一時的に遮断することができる。例えば監視パケットレートが10Kパケット/秒で、レート違反となったフローの通信を300秒間遮断したい場合には、レート遵守の状態からレート違反の状態に切り替わるパケットに対してバケツに追加する水量を、3Mパケット(=10Kパケット/秒×300(秒))分の水量とすれば良い。
【００２５】
また別の応用例として、異種メディア間のパケット中継時のポリシング機能に対する適用例を説明する。例として、図11に示すようにPOS(Point to Point Protocol over SONET)回線から入力してEthernet（Ethernetは登録商標）回線から出力されるフローに対し、ポリシング機能により出力ビットレートを制限する場合を考える。Ethernet回線では最短L2フレーム長が64Byteと規定されているのに対し、POS回線では最短L2フレーム長は規定されておらず、実質的にPPP(Point to Point Protocol)ヘッダのビット数とTCP(Transmission Control Protocol)/IPヘッダのビット数の合計として最短L2フレーム長が決まる。従って、POS回線からL2フレーム長64Byte未満のパケットが入力してEthernet回線へ出力される場合、出力時にL2フレーム長をEthernet回線の最短L2フレーム長である64Byteとするためのパディングが挿入される。出力ビットレートを制限する場合、このパディング分を含めた出力L2フレーム長のビット数に相当する水量を、リーキーバケットアルゴリズムでバケツに追加する水量とする必要がある。
【００２６】
ところがポリサーはパケット中継装置内に位置するため、ポリサーにパケットが入力する時点でのL2フレーム長はパディング分を含めた出力L2フレーム長となっておらず、監視ビットレートにパディング分の誤差が生じてしまう。そこで、Ethernet回線の出力レートを制限する場合には、最短L2フレーム長未満のパケットに対してバケツに追加する水量を固定的に最短L2フレーム長に相当する水量に切り替えることにより、パディングが発生し得る異種メディア間のパケット中継時にも出力ビットレートを正確に制限することが可能となる。
【発明の効果】
【００２７】
ポリシング機能で利用するリーキーバケットアルゴリズムにおける水量として扱う対象をパケット数/ビット数で切替え可能とすることにより、パケット攻撃を監視するフローに対するポリサーの定義では監視パケットレートを指定し、残りのビット攻撃を監視するフローに対するポリサーの定義では従来通り監視ビットレートを指定することができる。単一のポリシング機能でパケット攻撃とビット攻撃の両方を監視できるので、ポリサーのメモリ資源を有効活用することができる。
また、同一フローに対しパケットレートとビットレートの両方を監視できるので、パケット攻撃とビット攻撃の両方を同時に防止できる。
【００２８】
また、その他の水量として扱う対象を切り替える例として、レート遵守の状態からレート違反の状態に切り替わる際の入力パケットに対してバケツに追加する水量を、レート違反のフローの通信を遮断したい時間にバケツから漏れるパケット数に相当する水量に切り替えることにより、レート違反となったフローの通信を一定時間遮断して当該フローに対しより厳しく制裁することができる。
あるいは、出力回線の最短L2フレーム長未満のパケットに対してバケツに追加する水量を、固定的に最短L2フレーム長に相当する水量に切り替えることにより、パディングが発生し得る異種メディア間のパケット中継時にも出力ビットレートを正確に制限することができる。
【実施例１】
【００２９】
本発明のネットワーク監視方法を備えるパケット中継装置により、ビットレートによる監視とパケットレートによる監視を共に実行する場合の実施例1を説明する。実施例1では、フロー毎の水量識別子によりリーキーバケットアルゴリズムにおける水量として扱う対象がビット数とパケット数とで切り替わり、これにより監視レートの種別をフロー毎に切り替えることができる。
【００３０】
図12は、本発明のネットワーク監視方法を備えるパケット中継装置が適用されるネットワークの一例を示す。サイトA1210またはサイトB1220から送信されたパケットが、キャリア網1200を介してサイトC1230に送信される場合を考える。サイトA内の端末1212または端末1213から送信されたパケットはパケット中継装置1211を経由してキャリア網1200の入り口に配置されたパケット中継装置1201に送信される。同様に、サイトB内の端末1222または端末1223から送信されたパケットはパケット中継装置1221を経由してパケット中継装置1201に送信される。これらのパケットは、キャリア網1200の内部でパケット中継装置1202、1203を経由してサイトBのパケット中継装置1221に送信され、パケットの宛先端末1222または端末1223に到達する。パケット中継装置1201は本発明のパケット中継装置であって、サイトAからの入力レートをビットレートで制限することにより、サイトAからの入力トラフィックによりパケット中継装置1201、1202、1203のパケット交換容量等のキャリア網1200内の帯域資源が占有されることを防止する。
【００３１】
またサイトBから入力するICMPパケットの使用レートをパケットレートで制限することにより、サイトB内の端末からキャリア網1200に接続する端末に対するSmurf攻撃を防止し、Smurf攻撃で利用されるICMPパケットによるキャリア網1200内の帯域資源の占有を防止できる。また、同一サイトに対しビットレートの制限とパケットレートの制限を同時に定義することもできる。この場合にはビットレート、パケットレートの片方が監視レートを超過していてもう片方は超過していないという状態があり得るが、例えばビットレートとパケットレートのいずれかが超過した場合の入力パケットにはこれを廃棄することにより、ビット攻撃とパケット攻撃を共に防止することができる。
【００３２】
本発明のネットワーク監視方法を備えるパケット中継装置1201の概要動作を図13、図14及び図15を用いて説明する。図13はパケット中継装置1201の概要構成を示す。パケット中継装置1201はパケットが入力する入力回線1301とパケットの受信処理を行うパケット受信回路1310と、パケットを出力する出力回線1302の識別子である出力回線番号の判定やパケット受信側のポリシングを実行するヘッダ処理部1320と、パケットを前記出力回線番号に基づきスイッチングするパケット中継処理手段1330と、パケット中継処理手段1330を経由してパケット送信側のポリシングを実行するヘッダ処理部1350と、送信側バッファ1340からパケットを読み出してパケットの送信処理を行うパケット送信回路1350と、パケットを出力する出力回線1302と、パケット中継装置1201の管理と各種設定を行なう管理端末1380と、管理端末が発行した各種設定情報をヘッダ処理部1320と1350に登録するための記憶を行うレジスタ1370とから構成される。
【００３３】
図13には入力回線1301と出力回線1302がそれぞれ１回線ずつ記載されているが、実際には、パケット中継装置1201は複数の入力回線1301と複数のパケット受信回路1310と複数のヘッダ処理部1320、1350と複数の送信バッファ1340と複数のパケット送信回路1350と複数の出力回線1302から構成さえる。
【００３４】
図14はキャリア網1200におけるパケットのフォーマットの一例を示す。キャリア網1200におけるパケットはL2ヘッダ部1400とL3ヘッダ部1410とL3データ部1420から構成される。L2ヘッダ部1400はL2のアドレス情報などパケットの入力回線の種類によって異なる情報から構成される。図14には一例としてEthernet回線の場合を示した。この例ではL2ヘッダ部1400は送信元MACアドレス（パケットがこのパケット中継装置の前に入力したパケット中継装置のアドレス）1401と、宛先MACアドレス（このパケット中継装置のアドレス）1402から構成される。EthernetのL2ヘッダには他にも、L3層のプロトコルを識別するためのEtherType等の情報があるが、ここでは省略している。L3層がIP(Internet Protocol)の場合、L3ヘッダ部1410は上位プロトコルを識別するためのプロトコル1411と、送信元IPアドレス1412（送信元端末のIPアドレス）と、宛先IPアドレス1413（宛先端末のIPアドレス）から構成される。L3ヘッダには他にもType of Service、TTL等の情報があるが、ここでは省略している。また、L3データ部1420はユーザデータであるL3のデータ1421から構成される。
【００３５】
図15は本発明のネットワーク監視方法を備えるパケット中継装置1201内部におけるパケットのフォーマットを示す。パケット中継装置1201内部におけるパケットのフォーマットはキャリア網1200におけるパケットのL3ヘッダ部1410とL3データ部1420に内部ヘッダ部1500を備える。この内部ヘッダ部1500はパケットが入力した回線の識別子である入力回線番号1501と、パケットが出力される回線の識別子である出力回線番号1502と、入力回線の種類に応じたL2フレーム長である入力L2フレーム長1503から構成される。
【００３６】
次に本発明のパケット中継装置1201の動作概要を図13により説明する。パケットはまず入力回線1301よりパケット受信回路1310に入力する。パケットがパケット受信回路1310に入力すると、パケット受信回路1310は入力パケットのL2ヘッダ部1400とL3ヘッダ部1410、L3データ部1420のバイト長をカウントし、この値を入力L2フレーム長1503として内部ヘッダ部1500に書き込む。また前記パケットが入力した入力回線1301の識別子を入力回線番号1501として内部ヘッダ部1500に書き込む。この内部ヘッダ部1500と、入力パケットのL2ヘッダ部1400、L3ヘッダ部1410から構成されるパケットヘッダ情報1324をヘッダ処理部1320に送信する。なお、この時、出力回線番号1502は無意味な値となっている。ヘッダ処理部1320に送信されたパケットヘッダ情報1324の処理結果がパケット受信回路1310に送信されるまでの間、パケット受信回路はその内部にあるパケット蓄積手段にユーザデータ1421を蓄積しておく。
【００３７】
ヘッダ処理部1320のフロー検出部1321は前記パケットヘッダ情報1324からフローを検出する。フローとは、例えば宛先IPアドレス、送信元IPアドレス、宛先ポート情報等の組み合わせによって決定されるパケットの一連の流れである。フロー検出部1321は、検出したフローの識別情報であるフロー識別子1327をポリシング部1323に送信する。ポリシング部1323はフロー識別子毎にレート監視を実行し、当該フローが使用している帯域が当該フローに対し設定された監視レートを超過していない場合には「遵守」、超過している場合には「違反」を表すレート監視結果1326をパケット受信回路1310に送信する。一方、ヘッダ処理部1320のルーティング処理部1322は前記パケットヘッダ情報1324内の宛先IPアドレス1413に基づいてパケットを出力する出力回線1302の識別子を判定し、この識別子をパケット出力回線情報1325としてパケット受信回路1310に送信する。
【００３８】
パケット受信回路1310はパケット出力回線情報1325を出力回線番号1502に書き込み、レート監視結果1326が「遵守」の場合、パケットをパケット中継処理手段1330に送信する。レート監視結果1326が「違反」の場合にはパケット受信回路1310は蓄積したパケットを廃棄する。廃棄する代わりに、L3ヘッダ中にあるType of Serviceの優先度を低い値に再設定することにより、キャリア網1200内の優先度を落として輻輳時に廃棄されやすくすることもできる。あるいは送信側バッファ1340において蓄積可否を判定する廃棄閾値を低い値に設定することにより、パケット中継装置1320における優先度を落として輻輳時に廃棄されやすくすることもできる。
【００３９】
パケット中継処理手段1330は出力回線番号1502に従いパケットを中継し、出力回線1302毎に備える送信側バッファ1340にパケットを送信する。送信側バッファ1340は出力回線1302の帯域を超えてパケットが入力したときに、パケットを蓄積して、パケット廃棄を防止するために備えるバッファである。しかし、長期的に出力回線1302の帯域を超えるレートでパケットが入力するとパケットを廃棄する。パケット送信回路1360は出力回線1302に応じたレートでパケットを送信側バッファ1340より読み出し、内部ヘッダ部1500を削除して自ノードアドレスを送信元MACアドレス1401に、次にパケットが入力するノードアドレスを宛先MACアドレス1402に書きこみ、出力回線1302に送信する。
【００４０】
次に、ポリシング部1323の詳細動作について説明する。本発明のネットワーク監視方法を備えるポリシング部1323は、従来のリーキーバケットアルゴリズムにおける水量が固定的に入力パケットのバイト長に相当していたのに対し、フロー毎に入力パケットのパケット数相当に切り替え可能とする事により、ビットレートによるレート監視とパケットレートによるレート監視をフロー毎に切り替え可能とする。切り替えるフローを入力回線毎、出力回線毎、あるいは装置全体のフローと設定することにより、監視レートの種別の切り替え単位は回線毎、あるいは装置毎とすることもできる。
【００４１】
図16にポリシング部1323のブロック図を示す。ポリシング部1323はフロー識別子1327に対応して複数のレート監視情報1700を蓄積するレート監視テーブル1610と、入力パケットのフロー識別子1327に対応したレート監視情報1700のレート監視テーブル1610に対する読み出し、書き込みを制御するレート監視テーブル制御部1600と、パケットの流量に応じて増減する水量を判定するバケツ内水量判定部1620と、入力パケットのレートが監視レートを遵守しているかどうかを判定する監視結果判定部1630より構成される。
【００４２】
図17にレート監視テーブル1610のフォーマットの一例を示す。レート監視テーブル1610はn個のレート監視情報1700-i(i=1〜n)より構成される。レート監視情報1700は、リーキーバケットアルゴリズムで使用するバケツの閾値1701と、前回パケットに対応する水量がバケツに追加されたときの時刻1703と、その時刻における水量追加後のバケツ内水量1704と、水量として扱う対象をビット数とするかパケット数とするかを切り替える識別子である水量識別子1705と、水量識別子が示す監視レートの種別に対応した監視ビットレートあるいは監視パケットレート1702より構成される。水量識別子で水量として扱う対象をビット数と指定すれば監視レートはビットレートとなり、水量として扱う対象をパケット数と指定すれば監視レートはパケットレートとなる。なお、この水量識別子は図8におけるレート識別子と同様の意味をもつが、実施例1では特にここでレート監視のアルゴリズムとして利用しているリーキーバケットアルゴリズムにおける水量として扱う対象を切り替える識別子として動作するので、これを意識した名称としている。以下の実施例2と実施例3でも、同様の理由によりレート識別子に対し水量識別子という名称を用いる。これらの情報は、管理端末1380から入力設定され、レジスタ1370を経由してレート監視テーブル制御部1600がレート監視テーブル1610に書き込むことにより設定される。
【００４３】
レート監視のアルゴリズムを図18に示し、これ従ってポリシング部1323の詳細動作を説明する。パケットのフロー識別子1327がポリシング部1323に入力すると、レート監視テーブル制御部1600がこのフロー識別子1327に対応するレート監視情報1700-iをレート監視テーブル1610から読み出し、閾値1701-iを閾値蓄積手段1633に、監視ビット/パケットレート1702-iを監視レート蓄積手段1623に、時刻1703-iを時刻蓄積手段1624に、水量1704-iを水量蓄積手段1625に、本発明固有の構成要素である水量識別子1705-iを水量識別子蓄積手段1637に蓄積する。監視判定部1630の水量識別子蓄積手段1637に蓄積されている水量識別子がビットレートを指定する場合は、パケット受信回路1324から送信されてポリシング部1323のL2フレーム長蓄積手段に蓄積された入力パケットの入力L2フレーム長1503を本発明固有の構成要素であるセレクタ1635にて選択し、バケツに追加する水量CNTとしてCNT蓄積手段1636に蓄積する。
【００４４】
水量識別子がパケットレートを指定する場合は、パケット数蓄積手段1632に蓄積されている固定値をセレクタ1635にて選択し、バケツに追加する水量CNTとしてCNT蓄積手段1636に蓄積する。バケツ内水量判定部1620のバケツ内水量判定回路1621では、現時刻を示すタイマー1622が示す時刻から時刻蓄積手段1624に蓄積された時刻1703-iを現在して、前回パケットに対応する水量がバケツに追加されたときの時刻から今回パケットが入力するまでの経過時刻△Tを計算する。この経過時刻△Tに監視レート蓄積手段1623に蓄積された監視レート1702-を乗じて、経過時刻△Tの間にバケツから漏れた水量△DECを計算する。水量蓄積手段1625に蓄積された水量1704-iから△DECを減算し結果が正または0である場合には、この減算結果を現在のバケツ内水量CNTNOWとして監視結果判定部1630に送信する。減算結果が負である場合にはバケツ内水量が枯渇した状態であることを示しており、強制的にCNTNOW=0として監視結果判定部1630に送信する。
【００４５】
監視結果判定部1630では、閾値蓄積手段1611に蓄積された閾値1701-iからCNTNOWを減算し、これが正である場合には入力パケットは監視レート以内であってレート遵守と、これが0または負である場合には入力パケットは監視レートを超過しておりレート違反と判定する。レート遵守である場合には入力パケット分の水量をバケツに蓄積することができて、入力パケットに相当する水量CNTを現在のバケツ内水量CNTNOWに加算してこれを新たな水量1704-iとし、同時に、タイマー1622が示す時刻を新たな時刻1703-iとしてこれらをレート監視テーブル制御部1600がレート監視テーブル1610のレート監視情報1700-iに書き込む。水量識別子1705-iがビットレートを示している場合にはバケツに追加された水量はパケットのバイト長となっており、パケットレートを示している場合にはパケット数となっているので、フロー毎の水量識別子に応じてビットレートまたはパケットレートを監視できる。
【００４６】
レート監視結果である「レート遵守」または「レート違反」の情報は、レート監視結果1326としてパケット受信回路1310に送信され、レート監視結果1326が「遵守」の場合、パケットをパケット中継処理手段1330に送信する。レート監視結果1326が「違反」の場合にはパケット受信回路1310は蓄積したパケットを廃棄する。
【００４７】
実施例1の管理端末1380の入力画面例を、図19に示す。
1行目のコマンド：送信元IPアドレス(SIP)が111.222.333.444のフロー1(Flow1)を、最大ビットレート(max-rate-bps)10Mbit/s、最大ビットレート監視用バケツ閾値(max-rate-burst-byte)3000バイトでビットレートを監視して、最大ビットレートを超過したパケットは廃棄するコマンド。Flow1によるビット攻撃を防止する。
2行目のコマンド：SIPが111.222.444.555かつ上位プロトコルがICMPであるフロー2(Flow2)を、最大パケットレート(max-rate-pps)1Kパケット/s、最大パケットレート監視用バケツ閾値(max-rate-burst-pkt)2パケットでパケットレートを監視して、最大ビットレートを超過したパケットは廃棄するコマンド。Flow2によるパケット攻撃を防止する。
【００４８】
次に、単一のフローに対しビットレートとパケットレートの両方で監視する実施例を説明する。この場合、フロー検出部1321でFlow1を検出した場合にポリシング部1323で送信するフロー識別子1327として、レート監視テーブル1610上のビットレート監視用のレート監視情報レート1700-1とパケットレート監視用のレート監視情報1700-2の各々に対応する二つのフロー識別子を1パケットに対して送信するように、予めフロー検出部1321に設定しておく。この二つのフロー識別子がポリシング部1323に入力すると、レート監視テーブル1610からビットレート監視用のレート監視情報1700-1とパケットレート監視用のレート監視情報1700-2が各々読み出される。閾値蓄積手段1633、監視レート蓄積手段1623、時刻蓄積手段1624、水量蓄積手段1625、水量識別子蓄積手段1637、セレクタ1635、CNT蓄積手段1636等を、各レート監視情報に対応するため二つずつ備えておき、ビットレート監視とパケットレート監視を各々実行する。
【００４９】
この場合の各レート監視の結果による判定方法の一例を図20に示す。図20に示した判定は監視結果判定回路1634において実行され、その判定結果に基づいて各レートを監視するバケツに対する水量、時刻の更新処理の実行可否を判定する。図18のフローチャートでは、レート遵守と判定された場合には常に更新処理を実行し、レート違反と判定された場合には常に更新処理を非実行であったが、ここでは図20に基づいてビットレート監視、パケットレート監視共にレート遵守であった場合にのみ更新処理を実行する。そして、図20に基づいてレート監視テーブル制御部1600がレート監視テーブル1610のレート監視情報1700-1とレート監視情報1700-2に各レート監視における新たな時刻1703-1、1703-2、及び新たな水量1704-1と1704-2とを書き込む。また、図20に基づいて、レート監視結果1326をパケット受信回路1310に送信し、レート監視結果1326が「遵守」の場合、パケットをパケット中継処理手段1330に送信する。レート監視結果1326が「違反」の場合にはパケット受信回路1310は蓄積したパケットを廃棄する。
【００５０】
以上の監視方法に対する管理端末1380の入力画面例を、図21に示す。
1行目のコマンド：送信元IPアドレス(SIP)が111.222.333.444のフロー1(Flow1)を、最大ビットレート(max-rate-bps)10Mbit/s、最大ビットレート監視用バケツ閾値(max-rate-burst-byte)3000バイトでビットレートを監視して、同時に最大パケットレート(max-rate-pps)1Kパケット/s、最大パケットレート監視用バケツ閾値(max-rate-burst-pkt)2パケットでパケットレートを監視するコマンド。最大ビットレートまたは最大パケットレートを超過したパケットは廃棄する。
Flow1をビットレート監視して、更にFlow1で上位プロトコルがICMPである場合のみパケットレート監視も合わせて実行する場合も、同様の方法でレート監視できる。
ビットレートとパケットレートいずれでも、レート監視を設定できることが本発明固有の効果である。
【００５１】
実施例1では受信側のヘッダ処理部1320におけるポリシング部1323の動作を例として説明したが、送信側のヘッダ処理部1350でも同様にしてビットレートによる監視とパケットレートによる監視を共に実行することができる。
また実施例1では、L2フレーム長に基づくビットレート監視を例として説明した。これと同様に、L1の回線を占めるビット数やL3のパケット長を示すビット数に基づくビットレート監視を行う場合には、内部ヘッダ部1500における入力L2フレーム長1503をL1の回線を占めるビット数やL3のパケット長を示すビット数とし、監視結果判定部1630におけるL2フレーム長蓄積手段1631をL1の回線を占めるビット数やL3のパケット長を示すビット数を蓄積手段とすればよい。
【実施例２】
【００５２】
本発明のネットワーク監視方法を備えるパケット中継装置により、レート遵守の状態からレート違反の状態に切り替わる際の入力パケットに対してバケツに追加する水量を、レート違反のフローの通信を遮断したい時間にバケツから漏れるパケット数に相当する水量に切り替えることにより、レート違反となったフローの通信を一定時間遮断して当該フローに対しより厳しく制裁する場合の実施例2を説明する。
【００５３】
実施例1ではフロー毎の水量識別子により水量として扱う対象をビット数とパケット数で切り替えることができた。実施例2の水量識別子ではこれに加え、レート遵守の状態からレート違反の状態に切り替わる際の入力パケットに対する水量の意味を、ビット数またはパケット数から通信遮断したい時間分の水量の意味に切り替えるか否かも指定する。通信遮断機能をオンにするフローに対する水量識別子では、この切り替えを実行する指定とすることにより、通信遮断したい時間の間はバケツから水が溢れ続けた状態となるのでレート違反と判定され続ける。これにより、当該フローの通信を一定時間遮断することができる。
【００５４】
実施例2のレート監視テーブル1610のフォーマットの一例を図23に示す。図17に示した実施例1のレート監視情報1700-i(i=1〜n)に加えて、実施例2では通信遮断したい時間分の水量である通信遮断用水量1706-iを備える。監視レート1702-iがビットレートである場合には、通信遮断したい時間にバケツから漏れるビット数として通信遮断用水量1706-iを見積もり、監視レート1702-iがパケットレートである場合には、通信遮断したい時間にバケツから漏れるパケット数として通信遮断用水量1706-iを見積もる。本発明固有の構成要素である水量識別子1705-iは、実施例1で説明した水量の意味のビット数とパケット数での切り替えに加えて、通信遮断機能をONとする場合にはレート遵守の状態からレート違反の状態に切り替わる際の水量の通信遮断用水量1706-iへの切り替えを指定することができる。これらの情報は、管理端末1380から入力設定され、レジスタ1370を経由してレート監視テーブル制御部1600がレート監視テーブル1610に書き込むことにより設定される。
【００５５】
実施例2で加わる通信遮断用水量への切り替えを実現するため、監視結果判定部1630では通信遮断用水量蓄積手段1638を備える。実施例2のフローチャートである図24では、実施例1における図18のフローチャートに対し更に、通信遮断機能をONとしているフローでは水量追加後の監視レートを超過していないかの判定処理2401と、超過している場合に更新する新たな水量1704-iを現在のバケツ内水量CNTNOWに通信遮断用水量1706-iを加えた水量とする処理2402を加えた。
【００５６】
以上の監視方法に対する管理端末1380の入力画面例を、図25に示す。
1行目のコマンド：送信元IPアドレス(SIP)が111.222.333.444のフロー1(Flow1)を、最大ビットレート(max-rate-bps)10Mbit/s、最大ビットレート監視用バケツ閾値(max-rate-burst-byte)3000バイトでビットレートを監視して、最大ビットレートを超過した場合に180秒間Flow1の通信を遮断するコマンド。
2行目のコマンド：送信元IPアドレス(SIP)が111.222.444.555のフロー2(Flow2)を、最大パケットレート(max-rate-pps)1Kパケット/s、最大パケットレート監視用バケツ閾値(max-rate-burst-pkt)2パケットでパケットレートを監視して、最大パケットレートを超過した場合に180秒間Flow2の通信を遮断するコマンド。
ビットレートとパケットレートいずれでも、レート監視によりレート違反となったフローの通信を一定時間遮断する設定が可能であることが本発明固有の効果である。
【実施例３】
【００５７】
本発明のネットワーク監視方法を備えるパケット中継装置により、パディングが発生し得る異種メディア間のパケット中継時に出力ビットレートを制限する場合の実施例3を説明する。
実施例3では、本発明のネットワーク監視方法を備えるパケット中継装置1201の入力回線1301がPOS回線であり、出力回線1302がEthernet回線であって、入力回線1301からの入力ビットレートではなく出力回線1302への出力ビットレートで制限する場合を例として説明する。
【００５８】
（課題を解決するための手段）で前述したように、Ethernetでは最短L2フレーム長が64Byteと規定されているのに対しPOSでは最短L2フレーム長は規定されていないので、POS回線からL2フレーム長64Byte未満のパケットが入力してEthernet回線へ出力される場合、L2フレーム長をEthernetの最短L2フレーム長である64Byteとするためのパディングが回線出力時に挿入される。リーキーバケットアルゴリズムを利用して出力ビットレートを制限する場合、このパディング分を含めた出力L2フレーム長のビット数に相当する水量をバケツに追加する水量とする必要がある。しかし本発明のネットワーク監視方法を備えるパケット中継装置1201では、回線出力時にパディングを挿入するのはパケット送信回路1360の機能となり、ヘッダ処理部1320やヘッダ処理部1350に入力した時点でのパケットのフォーマットでは入力L2フレーム長にパディング分は含まれない。このような構成をとるパケット中継装置1201においても、本発明のネットワーク監視方法によりパディングが発生し得る異種メディア間のパケット中継時に出力ビットレートを制限できることを以下に示す。
実施例3の水量識別子は、出力回線1302の最短L2フレーム長未満である入力パケットに対してバケツに追加する水量を、出力回線1302の最短L2フレーム長に相当する水量に切り替えるか、あるいは入力パケットのL2フレーム長に相当する水量のままとするかを指定する。Ethernet回線の出力ビットレートを制限するフローに対する水量識別子では、この切り替えを実行するように指定することによりパディングを含めた出力ビットレートを制限できる。
【００５９】
実施例3のレート監視テーブル1610のフォーマットの一例を図26に示す。図17に示した実施例1のレート監視情報1700-i(i=1〜n)に加えて、実施例3では出力回線1302の最短L2フレーム長分の水量である最短フレーム長1707-iを備える。本発明固有の構成要素である水量識別子1705-iは、出力回線1302の最短L2フレーム長未満である入力パケットに対してバケツに追加する水量を、出力回線1302の最短L2フレーム長に相当する水量に切り替えるか、あるいは入力L2フレーム長1503のままとするかを指定することができる。これらの情報は、管理端末1380から入力設定され、レジスタ1370を経由してレート監視テーブル制御部1600がレート監視テーブル1610に書き込むことにより設定される。
【００６０】
出力回線1302の最短L2フレーム長未満である入力パケットに対してバケツに追加する水量を、出力回線1302の最短L2フレーム長に相当する水量に切り替えるため、監視結果判定部1630では最短フレーム長蓄積手段1639を備える。また入力L2フレーム長が出力回線1302の最短L2フレーム長未満であるか否かを判定するため、監視結果判定部1630ではL2フレーム長蓄積手段1631に蓄積された入力L2フレーム長を監視結果判定回路1634に送信する信号線1640を加える。実施例3のフローチャートである図28では、実施例1における図18のフローチャートにおけるレート監視の種別の判定1801が、最短フレーム長1707-i未満である入力パケットに対する水量の切り替えを指定しているか否かの判定2801となる。パケットレートは実施例3で問題となる最短フレーム長に依存しないため、実施例3ではビットレート監視のみが対象となり、レート監視の種別の判定1801を省略した。判定2801で水量の切り替えを指定されている場合には更に、入力L2フレーム長1503と最短フレーム長1707-iの大小比較判定2802が加わり、入力L2フレーム長1503の方が大きい場合には従来と同様に入力L2フレーム長をバケツに追加する水量CNTとして使用する。入力L2フレーム長の方が小さい場合には、バケツに追加する水量CNTとして最短フレーム長1707-iを使用することにより、パディングを含めた出力ビットレートを制限できる。
【００６１】
なお、パケット中継装置1201の構成をもつパケット中継装置において、本発明のネットワーク監視方法を用いないで異種メディア間のパケット中継時の出力ビットレートを制限しようとする場合には、パディングを含めずに出力ビットレートを見込むことになるので、L2フレーム長として実際に出力されるビットレートはパディングの分だけ期待値を上回ってしまいビットレートの制限が十分に効かないこととなる。
【図面の簡単な説明】
【００６２】
【図１】Smurf攻撃の一例を示す概念図。
【図２】3ウェイハンドシェイクによるTCPセッション確立の手順を示す概念図。
【図３】SYN攻撃の一例を示す概念図。
【図４】FLOOD攻撃の一例を示す概念図。
【図５】リーキーバケットアルゴリズムの概念図。
【図６】リーキーバケットアルゴリズムのフローチャート。
【図７】パケット中継装置が備える従来のポリサーを規定する構成要素を示す図。
【図８】パケット中継装置が備える本発明のポリサーを規定する構成要素を示す図。
【図９】パケットレートを監視するリーキーバケットアルゴリズムのフローチャート。
【図１０】レート違反となったフローの通信を一定時間遮断する際の水量の処理を示す概念図。
【図１１】異種メディア間で最短フレーム長が異なる一例に対応するための水量の処理を示す概念図。
【図１２】実施例1で本発明のネットワーク監視を備えるパケット中継装置が適用されるネットワークの一例。
【図１３】本発明のネットワーク監視方法を備えるパケット中継装置の概要構成。
【図１４】キャリア網1200におけるパケットのフォーマットの一例。
【図１５】本発明のネットワーク監視方法を備えるパケット中継装置内部におけるパケットのフォーマットの一例。
【図１６】本発明のネットワーク監視方法を備えるポリシング部1323の実施例1における概要構成。
【図１７】実施例1のレート監視テーブル1610のフォーマットの一例。
【図１８】実施例1のフローチャート。
【図１９】実施例1の管理端末1380の入力画面例。
【図２０】単一のフローに対しビットレートとパケットレートの両方で監視する場合の判定方法の一例。
【図２１】単一のフローに対しビットレートとパケットレートの両方で監視する場合の管理端末1380の入力画面例。
【図２２】本発明のネットワーク監視方法を備えるポリシング部1323の実施例2における概要構成。
【図２３】実施例2のレート監視テーブル1610のフォーマットの一例。
【図２４】実施例2のフローチャート。
【図２５】実施例2の管理端末1380の入力画面例。
【図２６】実施例3のレート監視テーブル1610のフォーマットの一例。
【図２７】本発明のネットワーク監視方法を備えるポリシング部1323の実施例3における概要構成。
【図２８】実施例3のフローチャート。
【符号の説明】
【００６３】
1200・・・本発明のネットワーク監視方法を備えるパケット中継装置で構成されるキャリア網
1201・・・本発明のネットワーク監視方法を備えるパケット中継装置
1301・・・パケット中継装置1201の入力回線
1302・・・パケット中継装置1201の出力回線
1310・・・パケット中継装置1201のパケット受信回路
1320・・・パケット中継装置1201の受信側のヘッダ処理部
1330・・・パケット中継装置1201のパケット中継処理手段
1340・・・パケット中継装置1201の送信側バッファ
1350・・・パケット中継装置1201の送信側のヘッダ処理部
1360・・・パケット中継装置1201のパケット送信回路
1400・・・キャリア網1200またはパケット中継装置1201内部におけるパケットのL2ヘッダ部
1410・・・キャリア網1200またはパケット中継装置1201内部におけるパケットのL3ヘッダ部
1420・・・キャリア網1200またはパケット中継装置1201内部におけるパケットのL3データ部
1500・・・パケット中継装置1201の内部ヘッダ部
1600・・・レート監視テーブル制御部
1610・・・レート監視テーブル
1620・・・バケツ内水量判定部
1630・・・監視結果判定部
1635・・・本発明に固有のセレクタ
1637・・・水量識別子蓄積手段
1700・・・レート監視情報
1705・・・本発明に固有の水量識別子
1706・・・通信遮断用水量
1707・・・最短フレーム長。
【図１】
2006033770.tif 000003
【図２】
2006033770.tif 000004
【図３】
2006033770.tif 000005
【図４】
2006033770.tif 000006
【図５】
2006033770.tif 000007
【図６】
2006033770.tif 000008
【図７】
2006033770.tif 000009
【図８】
2006033770.tif 000010
【図９】
2006033770.tif 000011
【図１０】
2006033770.tif 000012
【図１１】
2006033770.tif 000013
【図１２】
2006033770.tif 000014
【図１３】
2006033770.tif 000015
【図１４】
2006033770.tif 000016
【図１５】
2006033770.tif 000017
【図１６】
2006033770.tif 000018
【図１７】
2006033770.tif 000019
【図１８】
2006033770.tif 000020
【図１９】
2006033770.tif 000021
【図２０】
2006033770.tif 000022
【図２１】
2006033770.tif 000023
【図２２】
2006033770.tif 000024
【図２３】
2006033770.tif 000025
【図２４】
2006033770.tif 000026
【図２５】
2006033770.tif 000027
【図２６】
2006033770.tif 000028
【図２７】
2006033770.tif 000029
【図２８】
2006033770.tif 000030