(57)【要約】【課題】  入力したＩＰパケットをその種類毎に振り分けて出力するパケット振り分け装置において、入力パケットのトラフィックが増加しても予め定めたパケットを確実に振り分ける。【解決手段】  ＩＰパケットを受信したときに（ステップＳ１）、次に受信するＩＰパケットを蓄積するエリアをＩＰパケット受信用バッファ11ｂから取得できるか否かを判断し（ステップＳ３、Ｓ４）、取得できた場合は、受信したＩＰパケットを上位のタスクに送信する（ステップＳ６、Ｓ７）。取得できなかった場合は、受信したＩＰパケットがＶｏＩＰパケットでないときは、そのパケットを無効にする（ステップＳ13、Ｓ14）。【選択図】  図３
2006270476.tif 000002
【特許請求の範囲】
【請求項１】
入力したＩＰパケットをその種類毎に振り分けて出力するパケット振り分け装置において、
入力したＩＰパケットを蓄積するバッファメモリと、該バッファメモリから読み出されたＩＰパケットをその種類毎に振り分けて出力するパケット振り分け手段と、前記バッファメモリの空き容量を監視する空き容量監視手段と、該空き容量監視手段の出力に基づいて前記バッファメモリの書込み及び読出しの制御を行う制御手段とを備え、
前記制御手段は、前記バッファメモリの空き容量が所定値以上のときは前記バッファメモリに蓄積済のＩＰパケットを読み出して前記パケット振り分け手段へ供給し、前記空き容量が所定値未満のときは所定の種類以外の蓄積済ＩＰパケットを廃棄するように制御することを特徴とするパケット振り分け装置。
【請求項２】
請求項１記載のパケット振り分け装置において、
前記バッファメモリは、入力されるＩＰパケットをその種類に関係なく蓄積するための第１のバァファメモリと、入力されるＩＰパケットのうち、前記所定の種類のパケットのみを蓄積するための第２のバッファメモリとからなり、
前記制御手段は、前記第１のバァファメモリの空き容量が入力されるＩＰパケットのサイズ以上のときは、該ＩＰパケットを前記第１のバァファメモリに書込み、前記サイズ未満のときは、該ＩＰパケットを前記第２のバァファメモリに書込むように制御することを特徴とするパケット振り分け装置。
【請求項３】
請求項１記載のパケット振り分け装置において、
前記ＩＰパケットのヘッダ情報から該ＩＰパケットの種類を判別するパケット判別手段を備え、前記制御手段は、該パケット判別手段の出力に基づいて、前記書込み及び読出しの制御を行うことを特徴とするパケット振り分け装置。
【請求項４】
請求項１記載のパケット振り分け装置において、
前記所定の種類のパケットはＶｏＩＰパケットであることを特徴とするパケット振り分け装置。
【請求項５】
請求項４記載のパケット振り分け装置において、
前記パケット振り分け手段の出力側に接続されたＬＡＮコントローラと、前記パケット振り分け手段の出力側に接続され、前記ＶｏＩＰパケットと音声信号との変換を行う電話インタフェースとを備えたことを特徴とするパケット振り分け装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、入力したＩＰ（Internet Protocol ）パケットをその種類毎に振り分けて出力するパケット振り分け装置に関し、詳細には、入力パケット量が増加しても予め定めたパケットを確実に転送できるようにしたパケット振り分け装置に関する。
【背景技術】
【０００２】
ＶｏＩＰ（Voice overＩＰ）を用いてＩＰネットワーク上で音声通話を可能としたシステムとして特許文献１に開示された通信装置がある。この通信装置は、図４に示すように、アップリンク側がＬＡＮ（Local Area Network）を介してＩＰネットワークに接続し、ダウンリンク側が電話機27とＰＣ（Personal Computer ）とに接続し、ＰＣと共通のＩＰアドレスを使用してＶｏＩＰ技術に基づきＩＰネットワーク上で電話機27を用いた音声通話を行うためのＶｏＩＰ装置28であって、ＬＡＮとの間で信号の送受を行うための第１のＬＡＮインタフェース部28ｄと、ＰＣとの間で信号の送受を行うための第２のＬＡＮインタフェース部28ｅと、入来するパケットデータと音声信号間の相互の変換を行って電話機27との間で音声信号の送受を行うための電話インタフェース部28ａと、ＬＡＮ及び第１のＬＡＮインタフェース部28ｄを介してＩＰネットワークより入来するパケットデータが、ＶｏＩＰ技術に基づく音声通話用として予め定めた受信先ポート番号と、ＶｏＩＰに合致したプロトコルとを有し、かつ電話インタフェース部28ａが変換を行う際に用いる所定の音声コーデックに対応した場合にのみ、当該パケットデータを電話インタフェース部28ａに送信し、それ以外の場合には当該パケットデータを第２のＬＡＮインタフェース部28ｅに送信するＩＰアドレス・ポート番号監視部28ｃ及びＶｏＩＰプロトコル処理部監視部28ｂとを備えたことを特徴とするＶｏＩＰ装置28である。
【特許文献１】特開２００３−１６９１６３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかしながら、上記ＶｏＩＰ装置では、電話機27へ送信するＶｏＩＰパケットと、ＰＣへ送信するデータパケットとを共に第１のＬＡＮインタフェース部28ｄで受信するため、データパケットのトラフィックが増加した場合や、大量のパケット送信の攻撃を受けた場合にはＶｏＩＰパケットを電話機27へ転送できなくなるおそれがある。
【０００４】
本発明は、このような問題点に鑑みてなされたものであり、その目的は、入力したＩＰパケットをその種類毎に振り分けて出力するパケット振り分け装置において、入力パケットのトラフィックが増加しても所定のパケットを確実に出力することである。
【課題を解決するための手段】
【０００５】
請求項１に係る発明は、入力したＩＰパケットをその種類毎に振り分けて出力するパケット振り分け装置において、入力したＩＰパケットを蓄積するバッファメモリと、該バッファメモリから読み出されたＩＰパケットをその種類毎に振り分けて出力するパケット振り分け手段と、前記バッファメモリの空き容量を監視する空き容量監視手段と、該空き容量監視手段の出力に基づいて前記バッファメモリの書込み及び読出しの制御を行う制御手段とを備え、前記制御手段は、前記バッファメモリの空き容量が所定値以上のときは前記バッファメモリに蓄積済のＩＰパケットを読み出して前記パケット振り分け手段へ供給し、前記空き容量が所定値未満のときは所定の種類以外の蓄積済ＩＰパケットを廃棄するように制御することを特徴とするパケット振り分け装置である。
請求項２に係る発明は、請求項１記載のパケット振り分け装置において、前記バッファメモリは、入力されるＩＰパケットをその種類に関係なく蓄積するための第１のバァファメモリと、入力されるＩＰパケットのうち、前記所定の種類のパケットのみを蓄積するための第２のバッファメモリとからなり、前記制御手段は、前記第１のバァファメモリの空き容量が入力されるＩＰパケットのサイズ以上のときは、該ＩＰパケットを前記第１のバァファメモリに書込み、前記サイズ未満のときは、該ＩＰパケットを前記第２のバァファメモリに書込むように制御することを特徴とするパケット振り分け装置である。
請求項３に係る発明は、請求項１記載のパケット振り分け装置において、前記ＩＰパケットのヘッダ情報から該ＩＰパケットの種類を判別するパケット判別手段を備え、前記制御手段は、該パケット判別手段の出力に基づいて、前記書込み及び読出しの制御を行うことを特徴とするパケット振り分け装置である。
請求項４に係る発明は、請求項１記載のパケット振り分け装置において、前記所定の種類のパケットはＶｏＩＰパケットであることを特徴とするパケット振り分け装置である。
請求項５に係る発明は、請求項４記載のパケット振り分け装置において、前記パケット振り分け手段の出力側に接続されたＬＡＮコントローラと、前記パケット振り分け手段の出力側に接続され、前記ＶｏＩＰパケットと音声信号との変換を行う電話インタフェースとを備えたことを特徴とするパケット振り分け装置である。
【０００６】
（作用）
請求項１に係る発明によれば、入力したＩＰパケットをバッファメモリに蓄積したときに、そのバッファメモリの空き容量が所定値以上の場合は前記バッファメモリに蓄積済のＩＰパケットを読み出してパケット振り分け手段へ供給し、所定値未満のときは所定の種類以外の蓄積済ＩＰパケットを廃棄することにより、入力パケットのトラフィックが増加したときに所定の種類以外のＩＰパケットの振り分けを停止する。
請求項２に係る発明によれば、第１のバァファメモリの空き容量が入力されるＩＰパケットのサイズ以上のときは、入力されるＩＰパケットをその種類に関係なく第１のバァファメモリに書込み、第１のバァファメモリの空き容量が入力されるＩＰパケットのサイズ未満のときは、入力されるＩＰパケットのうち、所定の種類のパケットのみを第２のバァファメモリに書込む。
請求項３に係る発明によれば、ＩＰパケットのヘッダ情報からパケットの種類を判別し、バッファメモリに対するパケットの書込み及び読出しの制御を行う。
請求項４に係る発明によれば、入力したＩＰパケットをバッファメモリに蓄積したときに、そのバッファメモリの空き容量が所定値以上の場合は前記バッファメモリに蓄積済のＩＰパケットを読み出してパケット振り分け手段へ出力し、所定値未満のときはＶｏＩＰパケット以外の蓄積済ＩＰパケットを廃棄することにより、入力パケットのトラフィックが増加したときにＶｏＩＰパケット以外のＩＰパケットの振り分けを停止する。
請求項５に係る発明によれば、パケット振り分け手段は、バッファメモリから読み出されたＩＰパケットがＶｏＩＰパケットの場合は電話インタフェースへ転送し、ＶｏＩＰパケット以外のＩＰパケットの場合はＬＡＮコントローラへ転送する。
【発明の効果】
【０００７】
本発明によれば、入力パケットのトラフィックが増加したときに所定の種類以外のＩＰパケットの振り分けを停止することで、所定の種類のパケットを確実に出力できる。
【発明を実施するための最良の形態】
【０００８】
以下、本発明の実施形態について図面を参照して説明する。
図１は本発明の実施形態に係るパケット振り分け装置を備えたネットワーク装置の構成を示す図である。このネットワーク装置は、アップリンク側がインターネット５に接続されるＶｏＩＰゲートウェイ兼ルータ１と、そのダウンリンク側に接続された電話機２と、ＶｏＩＰゲートウェイ兼ルータ１のダウンリンク側のＬＡＮに接続された２台のＰＣ３，４とからなる。このネットワーク装置において、電話機２は、ＶｏＩＰゲートウェイ兼ルータ１のＶｏＩＰゲートウェイ機能を使用することで、インターネット５に接続される他の電話機と通話を行う。また、ＰＣ３，４は、ＶｏＩＰゲートウェイ兼ルータ１のルータ機能を使用することで、インターネット５に接続される他のＰＣとデータ通信を行う。
【０００９】
図２はＶｏＩＰゲートウェイ兼ルータ１の内部構成を示すブロック図である。この図に示すように、ＶｏＩＰゲートウェイ兼ルータ１は、インターネット５に接続されるネットワークインタフェース11と、ネットワークインタフェース11を制御するネットワークインタフェース制御部12と、インターネット５から受信したＩＰパケットのヘッダに記載されている宛先ＩＰアドレス又は宛先ポート番号に基づいて、受信したＩＰパケットをＰＣ３，４又は電話機７へ振り分けると共に、ＰＣ３，４及び電話機７から受信したＩＰパケットがネットワークインタフェース11を経てインターネット５へ送信されるように制御するルーチング制御部13と、ルーチング制御部13とＰＣ３，４との間でデータの送受を行うＬＡＮコントローラ14と、ルーチング制御部13と電話機７との間でＶｏＩＰデータと音声信号間の相互変換及び送受を行う電話インタフェース15とからなる。
【００１０】
ネットワークインタフェース11は、インターネット５へ送出するＩＰパケットを一時的に蓄積するＩＰパケット送信用バッファ11ａと、インターネット５から受信したＩＰパケットをその種類に関係なく一時的に蓄積するためのＩＰパケット受信用バッファ11ｂと、インターネット５から受信したＩＰパケットのうち、ＶｏＩＰパケットのみを一時的に蓄積するためのＶｏＩＰパケット受信用バッファ11ｃと、これらのバッファの書込及び読出を制御するバッファコントローラ11ｄとを備えている。
【００１１】
ネットワークインタフェース制御部12は、ＩＰパケット送信用バッファ11ａにＩＰパケットを蓄積するときのアドレスを管理するための送信ディスクリプタテーブル12ａと、ＩＰパケット受信用バッファ11ｂ及びＶｏＩＰパケット受信用バッファ11ｃの各々にＩＰパケットを蓄積するときのアドレスを管理するための受信ディスクリプタテーブル12ｂと、これらのテーブルの管理等を行うプロセッサ12ｃとを備えている。ここで、プロセッサ12ｃは、各バッファの所定の記憶エリア毎に「使用中」、「取得済」、「取得可」等のフラグを各ディスクリプタテーブルに設定することで管理を行う。
【００１２】
ルーチング制御部13は、インターネット５からＩＰパケットを受信するときは、ネットワークインタフェース11のＩＰパケット受信用バッファ11ｂ及びＶｏＩＰパケット受信用バッファ11から読み出されたＩＰパケットを受け取り、そのヘッダを見て、それがＶｏＩＰパケットである場合は電話機インタフェース15へ送出し、ＶｏＩＰパケットでない場合はＬＡＮコントローラ14へ送出する。また、インターネット５へＩＰパケットを送信するときは、ＬＡＮコントローラ14から送出されるＩＰパケット及び電話インタフェース15から送出されるＶｏＩＰパケットを受け取り、それらをネットワークインタフェース11へ送出する。これらのパケットは、バッファコントローラ11ｄにより、送信ディスクリプタテーブル12ａで指定されたアドレスに書込まれる。
【００１３】
ＬＡＮコントローラ14は、図示していないが、ＰＣ３，４にパケットを出力するときにそれらのパケットを一時的に蓄積する出力バッファと、ＰＣ３，４から受信したパケットを一時的に蓄積する入力バッファと、それらのバッファを管理するディスクリプタと、これらのバッファの書込み及び読出しを制御するバッファコントローラとを備えている。
【００１４】
電話インタフェース15は、ルーチング制御部13から送られてくるＶｏＩＰパケットをアナログ音声信号に変換して電話機７へ送出する手段と、電話機７から送られてくるアナログ音声信号をＶｏＩＰパケットに変換する手段とを備えている。
【００１５】
以上の構成を有するＶｏＩＰゲートウェイ兼ルータ１がインターネット５からＩＰパケットを受信するときの動作について図３のフローチャートを参照しながら説明する。なお、このフローチャートにおいて、受信バッファデータとは、ＩＰパケット受信用バッファ11ｂ又はＶｏＩＰパケット受信用バッファ11ｃに蓄積されたＩＰパケットのうち、上位タスク（ルーチング制御部13以降）へ送信されるＩＰパケットである。また、ＢＤ（バッファ・ディスクリプタ）バッファとは、ＩＰパケット受信用バッファ11ｂ又はＶｏＩＰパケット受信用バッファ11ｃのうち、受信ディスクリプタテーブル12ｂに設定されているアドレスに対応するエリアである。
【００１６】
まず、インターネット５から受信したＩＰパケットは、ネットワークインタフェース11のＩＰパケット受信用バッファ11ｂに書込まれる（ステップＳ１）。このとき、ＩＰパケットの書込アドレス（ＢＤバッファ）は予めネットワークインタフェース制御部12のプロセッサ12ｃにより受信ディスクリプタテーブル12ｂに設定されると共に、バッファコントローラ11ｄに通知されている。次に、プロセッサ12ｃは、ＩＰパケット受信用バッファ11ｂに書込まれたＩＰパケットがＶｏＩＰパケットか否かをチェックする（ステップＳ２）。
【００１７】
次いで、プロセッサ12ｃは、次に受信するＩＰパケットを蓄積するためのエリアをＩＰパケット受信用バッファ11ｂから取得（予約）するための処理を行う（ステップＳ３）。ここで、取得できた場合は（ステップＳ４でYes ）、ステップＳ１でＩＰパケット受信用バッファ11ｂに書込んだＩＰパケット（ＢＤバッファ内のデータ）を上位タスクへ送信するパケット（受信バッファデータ）に決定すると共に、ステップＳ３で取得したＩＰパケット受信用バッファ11ｂのエリアに対して受信ディスクリプタテーブル12ｂに取得済フラグをセットする（ステップＳ５）。
【００１８】
次に、プロセッサ12ｃは、ＩＰパケット受信用バッファ11ｂ又はＶｏＩＰパケット受信用バッファ11ｃに蓄積されているＩＰパケットに受信バッファデータがあるか否かを判断し（ステップＳ６）、ある場合（ステップＳ３でYes の場合は、ＩＰパケット受信用バッファ11ｂ内に受信バッファデータがある。）は、そのＩＰパケットを読み出してルーチング制御部13へ送る（ステップＳ７）。ルーチング制御部13は、受け取ったＩＰパケットのヘッダに書かれている宛先ＩＰアドレス又は宛先ポート番号に基づいて、そのＩＰパケットがＶｏＩＰパケットであれば電話インタフェース15へ送出し、そのＩＰパケットがＰＣ３，４宛のＩＰパケットであれば、ＬＡＮコントローラ14へ送る。プロセッサ12ｃは、読み出されたＩＰパケットが蓄積されていたＩＰパケット受信用バッファ11ｂのエリアに対して受信ディスクリプタテーブル12ｂの使用中フラグをクリアする。
【００１９】
一方、ステップＳ４で、ＩＰパケット受信用バッファ11ｂが取得できなかった場合（ステップＳ４でNo）、つまりＩＰパケット受信用バッファ11ｂの残り容量がＩＰパケットのサイズ未満になった場合、プロセッサ12ｃは、ステップＳ２でのチェックの結果を基にステップＳ１で受信されたＩＰパケットがＶｏＩＰパケットであるか否かを判断する（ステップＳ８）。ここで、ＶｏＩＰパケットであると判断したときは、ＶｏＩＰパケット受信用バッファ11ｃから取得（予約）するための処理を行う（ステップＳ９）。
【００２０】
そして、取得できた場合は（ステップＳ10でYes ）、ステップＳ１で受信したＩＰパケット（ＶｏＩＰパケット）を、ＩＰパケット受信用バッファ11ｂからステップＳ９で取得したＶｏＩＰパケット受信用バッファ11ｃにコピーすると共に、そのＶｏＩＰパケット受信用バッファ11ｃに蓄積されたＶｏＩＰパケットを受信バッファデータとする（ステップＳ11）。次いで、プロセッサ12ｃは、ＩＰパケット受信用バッファ11ｂのコピー元のアドレスを、次に受信するＩＰパケットを蓄積するためのエリアとして、受信ディスクリプタテーブル12ｂに設定する（ステップＳ12）。
【００２１】
次いで、プロセッサ12ｃは、ＩＰパケット受信用バッファ11ｂ又はＶｏＩＰパケット受信用バッファ11ｃに蓄積されているＩＰパケットに受信バッファデータがあるか否かを判断し（ステップＳ６）、ある場合（ステップＳ10で取得できた場合は、ＶｏＩＰパケット受信用バッファ11ｃに受信バッファデータがある。）は、そのＩＰパケットを読出してルーチング制御部13へ送る（ステップＳ７）。
【００２２】
ステップＳ８でＶｏＩＰパケットでないと判断したとき（ステップＳ８でNo）、又はステップＳ10でＶｏＩＰパケット受信用バッファ11ｃが取得できなかった場合（ＶｏＩＰパケット受信用バッファ11ｃの残り容量がＶｏＩＰパケットのサイズ未満になった場合）は、受信バッファデータは無し（null）、つまりステップＳ１で受信したＩＰパケットを無効とし（ステップＳ13、14）、ステップＳ12へ移行する。ステップＳ12では、ステップＳ１で受信され、ステップＳ13又は14で無効データとされたＩＰパケットが蓄積されていたＩＰパケット受信用バッファ11ｂ又はＶｏＩＰパケット受信用バッファ11ｃのアドレスを、次に受信するＩＰパケットを蓄積するためのエリアとして取得し、受信ディスクリプタテーブル12ｂに設定する。
【００２３】
このように、本発明の実施形態によれば、ＩＰパケットをその種類に関係なく蓄積するためのＩＰパケット受信用バッファ11ｂとは別にＶｏＩＰパケットのみを蓄積するＶｏＩＰパケット受信用バッファ11ｃを用意し、ＩＰパケット受信用バッファ11ｂにＩＰパケットを蓄積できる容量が残っていなくなると、受信したＩＰパケットがＶｏＩＰパケットでない場合はそのパケットを無効にするため、受信するＩＰパケットのトラフィックが増加してもＶｏＩＰパケットを確実に電話機７へ転送できる。
【００２４】
なお、以上の実施形態では、ＶｏＩＰパケットを確実に転送できるように構成したが、本発明は、ＩＰパケットのヘッダのＴＯＳ（Type of Service ）フィールドを見ることにより、所定のＴＯＳビットを有するＩＰパケットを確実に転送できるように構成してもよい。また、例えばＡＲＰ（Address Resolution Protocol ）パケットを確実に転送できるように構成してもよい。
【図面の簡単な説明】
【００２５】
【図１】本発明の実施形態に係るパケット振り分け装置を備えたネットワーク装置の構成を示す図である。
【図２】図１におけるＶｏＩＰゲートウェイ兼ルータの内部構成を示すブロック図である。
【図３】図１におけるＶｏＩＰゲートウェイ兼ルータがインターネットからＩＰパケットを受信するときの動作を示すフローチャートである。
【図４】ＶｏＩＰを用いてＩＰネットワーク上で音声通話を可能としたシステムに用いる従来の通信装置の構成を示すブロック図である。
【符号の説明】
【００２６】
１・・・ＶｏＩＰゲートウェイ兼ルータ、２・・・電話機、３，４・・・ＰＣ、11ｂ・・・ＩＰパケット受信用バッファ、11ｃ・・・ＶｏＩＰパケット受信用バッファ、11ｄ・・・バッファコントローラ、12ｂ・・・受信ディスクリプタテーブル、12ｃ・・・プロセッサ、13・・・ルーチング制御部、14・・・ＬＡＮコントローラ、15・・・電話機インタフェース。
【図１】
2006270476.tif 000003
【図２】
2006270476.tif 000004
【図３】
2006270476.tif 000005
【図４】
2006270476.tif 000006