(57)【要約】【課題】受信データの種類に応じて、受信データの廃棄時にＣＰＵにかかる負荷を調整することができる通信制御装置、画像形成装置、及びプログラムを提供する。【解決手段】各パケット出力部２３内の制御部２６が受信パケットの種類毎に受信パケットに優先順位を設定し、優先順位に応じて受信パケットのフィルタ期間を決定し、フィルタ２１が当該決定されたフィルタ期間中、受信データを廃棄する。よって、受信パケットの種類に応じて、受信パケットのフィルタ期間が変動するので、受信パケットの種類に応じて、受信パケットの廃棄時にＣＰＵ２にかかる負荷が調整される。【選択図】図３
2011199636.tif 000002
【特許請求の範囲】
【請求項１】
受信データの種類毎に受信データに優先順位を設定する設定手段と、
前記優先順位に応じて前記受信データの廃棄期間を決定し、当該決定された廃棄期間中前記受信データを廃棄する廃棄手段と
を備えることを特徴とする通信制御装置。
【請求項２】
高い優先順位が設定された受信データの廃棄期間は、低い優先順位が設定された受信データの廃棄期間よりも短いことを特徴とする請求項１に記載の通信制御装置。
【請求項３】
前記受信データの種類、前記受信データの優先順位及び前記受信データの廃棄期間のうち、少なくとも１つを変更する変更手段を備えることを特徴とする請求項１又は２に記載の通信制御装置。
【請求項４】
受信データ数が予め決められた閾値以上であるか否かを判別する判別手段を備え、
前記受信データ数が予め決められた閾値以上である場合に、前記廃棄手段は前記決定された廃棄期間だけ前記受信データを廃棄することを特徴とする請求項１乃至３のいずれか１項に記載の通信制御装置。
【請求項５】
前記判別手段は、前記受信データの転送経路上においてＣＰＵの上流側に設けられていることを特徴とする請求項４に記載の通信制御装置。
【請求項６】
前記請求項１乃至５のいずれか１項に記載の通信制御装置を備えることを特徴とする画像形成装置。
【請求項７】
通信制御装置を、
受信データの種類毎に受信データに優先順位を設定する設定手段、及び
前記優先順位に応じて前記受信データの廃棄期間を決定し、当該決定された廃棄期間中前記受信データを廃棄する廃棄手段
として機能させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信制御装置、画像形成装置、及びプログラムに関する。
【背景技術】
【０００２】
従来より、ＣＰＵがパケットの受信によるＣＰＵへの割込回数が閾値を超えると判断した場合に、ＣＰＵが受信パケットを廃棄するようにＮＩＣ（Network Interface Card）を制御するコンピュータシステムが知られている（例えば、特許文献１参照）。尚、ＣＰＵへの割込回数は一定周期でリセットされている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００５−３４７８９４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
本発明の目的は、受信データの種類に応じて、受信データの廃棄時にＣＰＵにかかる負荷を調整することができる通信制御装置、画像形成装置、及びプログラムを提供することにある。
【課題を解決するための手段】
【０００５】
上記目的を達成するため、請求項１の通信制御装置は、受信データの種類毎に受信データに優先順位を設定する設定手段と、前記優先順位に応じて前記受信データの廃棄期間を決定し、当該決定された廃棄期間中前記受信データを廃棄する廃棄手段とを備えることを特徴とする。
【０００６】
請求項２の通信制御装置は、請求項１に記載の通信制御装置において、高い優先順位が設定された受信データの廃棄期間は、低い優先順位が設定された受信データの廃棄期間よりも短いことを特徴とする。
【０００７】
請求項３の通信制御装置は、請求項１又は２に記載の通信制御装置において、前記受信データの種類、前記受信データの優先順位及び前記受信データの廃棄期間のうち、少なくとも１つを変更する変更手段を備えることを特徴とする。
【０００８】
請求項４の通信制御装置は、請求項１乃至３のいずれか１項に記載の通信制御装置において、受信データ数が予め決められた閾値以上であるか否かを判別する判別手段を備え、前記受信データ数が予め決められた閾値以上である場合に、前記廃棄手段は前記決定された廃棄期間だけ前記受信データを廃棄することを特徴とする。
【０００９】
請求項５の通信制御装置は、請求項４に記載の通信制御装置において、前記判別手段は、前記受信データの転送経路上においてＣＰＵの上流側に設けられていることを特徴とする。
【００１０】
請求項６の画像形成装置は、前記請求項１乃至５のいずれか１項に記載の通信制御装置を備えることを特徴とする。
【００１１】
請求項７のプログラムは、通信制御装置を、受信データの種類毎に受信データに優先順位を設定する設定手段、及び前記優先順位に応じて前記受信データの廃棄期間を決定し、当該決定された廃棄期間中前記受信データを廃棄する廃棄手段として機能させることを特徴とする。
【発明の効果】
【００１２】
請求項１の発明によれば、受信データの種類に応じて、受信データの廃棄時にＣＰＵにかかる負荷を調整することができる。
【００１３】
請求項２の発明によれば、受信データの種類を意識しない場合に比べて、ＣＰＵにかかる負荷を効率的に軽減することができる。
【００１４】
請求項３の発明によれば、受信データの種類、受信データの優先順位及び受信データの廃棄期間のうち、少なくとも１つを自由に変更することができる。
【００１５】
請求項４の発明によれば、受信データ数が予め決められた閾値以上である状況において、受信データの種類に応じて、受信データの廃棄時にＣＰＵにかかる負荷を調整することができる。
【００１６】
請求項５の発明によれば、ＣＰＵにかかる負荷が増大する前に、受信データの種類に応じて、受信データの廃棄時にＣＰＵにかかる負荷を調整することができる。
【００１７】
請求項６の発明によれば、受信データの種類に応じて、受信データの廃棄時にＣＰＵにかかる負荷を調整することができる。
【００１８】
請求項７の発明によれば、受信データの種類に応じて、受信データの廃棄時にＣＰＵにかかる負荷を調整することができる。
【図面の簡単な説明】
【００１９】
【図１】第１の実施の形態に係る画像形成装置の構成を示すブロック図である。
【図２】図１の通信制御部の構成を示すブロック図である。
【図３】図２のフィルタ部の構成を示すブロック図である。
【図４】制御部に格納されているテーブル情報の一例を示す図である。
【図５】ユーザインタフェース（ＵＩ）に表示されるテーブル情報を変更するための画面の一例を示す図である。
【図６】画像形成装置で実行される処理を示すフローチャートである。
【図７】第２の実施の形態に係る受信部の構成を示すブロック図である。
【発明を実施するための形態】
【００２０】
以下、本発明の実施の形態について、図面を参照して説明する。
【００２１】
（第１の実施の形態）
図１は、第１の実施の形態に係る画像形成装置の構成を示すブロック図である。
【００２２】
図１の画像形成装置１は、例えば、複合機（ＭＦＰ(Multi Function Peripheral)である。画像形成装置１は、装置全体の動作を制御するＣＰＵ２、各種のプログラムやデータを記憶するメインメモリ３、バス５及びバス６をブリッジするバスブリッジ４、ネットワーク１０を介して他の装置（不図示）と通信する通信制御部７、画像を記録媒体上に形成する画像形成部８、及びユーザインタフェース（ＵＩ）９を備えている。
【００２３】
バス５及びバス６は、PCI（Peripheral Component Interconnect）バス又はPCI Expressバスで構成されている。ＣＰＵ２は、バスブリッジ４及びバス５を介してメインメモリ３及びＵＩ９と通信し、バスブリッジ４及びバス６を介して通信制御部７及び画像形成部８と通信する。通信制御部７は、通信制御装置としてのネットワークインタフェースカードである。画像形成部８は、ドラム、転写ベルト、現像器及び定着器等（不図示）を備えている。ＵＩ９は、例えば、タッチパネル式の表示装置であり、出力部数や出力方法等の設定や表示に使用される。また、ＵＩ９は、後述するテーブル情報の編集に使用される。
【００２４】
図２は、図１の通信制御部７の構成を示すブロック図である。図２では、通信制御部７のパケットを受信する構成を示す。
【００２５】
通信制御部７は、受信部１１、フィルタ部１２、セレクタ１３及びＤＭＡ（Direct Memory Access）部１４を備えている。受信部１１は、ネットワーク１０からパケットを受信する。尚、受信部１１が受信するデータは、パケット形式のデータに限定されるものではない。フィルタ部１２は、受信部１１から出力された受信パケットを廃棄する。また、フィルタ部１２は、受信パケットの種類に応じて、受信パケットを廃棄するフィルタ期間を調整する。セレクタ１３は、ＣＰＵ２からの選択信号に応じて、セレクタ１３と受信部１１との間の第１経路、又はセレクタ１３とフィルタ部１２との間の第２経路のいずれか一方を選択する。ＤＭＡ部１４は、受信パケットをメインメモリ３に出力すると共に、受信パケットのメインメモリ３への出力が終了したときに割込信号をＣＰＵ２へ出力する。通信制御部７は、受信パケットの転送経路（即ち、受信パケットがネットワーク１０からメインメモリ３へ転送される経路）上においてＣＰＵ２の上流側に設けられている。フィルタ部１２は、受信パケットの転送経路上においてＣＰＵ２の上流側に設けられている。
【００２６】
ＣＰＵ２は、割込信号の数（即ち、受信パケット数）が予め決められた閾値以上であるか否かを判別し、割込信号の数が予め決められた閾値以上である場合に、第２経路を選択する選択信号をセレクタ１３に出力する。これにより、受信パケットはフィルタ部１２で廃棄され、ＤＭＡ部１４に出力されない。また、ＣＰＵ２は、割込信号の数が予め決められた閾値以上である場合に、フィルタ部２を有効にする有効信号をフィルタ部２に出力する。ＣＰＵ２は、割込信号の数が予め決められた閾値を超えない場合に、第１経路を選択する選択信号をセレクタ１３に出力する。これにより、受信パケットは、セレクタ１３を介してＤＭＡ部１４に出力される。尚、上記閾値は、画像形成装置１の初期化時に、ＣＰＵ２に設定されているものとする。ＤＭＡ部１４によって受信された受信パケットはメインメモリ３に出力される。
【００２７】
図３は、図２のフィルタ部１２の構成を示すブロック図である。
【００２８】
フィルタ部１２は、複数のフィルタ２１−１〜２１−ｎ（ｎ＝２，３，４…）、複数のタイマ２２−１〜２２−ｎ、及び複数のパケット出力部２３−１〜２３−ｎを備えている。尚、以下の説明では、複数のフィルタ、複数のタイマ及び複数のパケット出力部の代表としてフィルタ２１、タイマ２２及びパケット出力部２３をそれぞれ使用する。
【００２９】
各フィルタ２１は、受信パケットの種類毎に設けられており、予め決められた種類のパケットを通過させ、予め決められた種類以外の種類のパケットを廃棄する。例えば、フィルタ２１−１は自分宛のＡＲＰ（Address Resolution protocol）のパケットを通過させ、自分宛のＡＲＰのパケット以外のパケットを廃棄する。フィルタ２１−２は、ＬＲＰ（Line Printer daemon protocol）のパケットを通過させ、ＬＲＰのパケット以外のパケットを廃棄する。タイマ２２−１〜２２−ｎには、パケットを廃棄する複数のフィルタ期間が設定されており、複数のフィルタ期間は互いに異なる。
【００３０】
各パケット出力部２３は、セレクタ２４，２５及び制御部２６を備えている。制御部２６は、図４に示す、パケットの優先順位、パケットの種類、及びフィルタ期間が互いに関連付けられているテーブル情報を備えている。また、制御部２６は、図４のテーブル情報に従って、パケットの優先順位、パケットの種類、及びフィルタ期間の対応関係を設定している。
【００３１】
パケットの優先順位は、パケットの種類（即ち、その種類のパケットを通過させるフィルタ）に割り当てられている。例えば、図４に示すように、優先順位「１」は、自分宛のＡＲＰのパケットに割り当てられており、優先順位「２」は、ＬＲＰのパケットに割り当てられている。尚、優先順位「１」は、優先度が最も高い。また、１つの優先順位に割り当てられるパケット数は１つに限定されない。例えば、ＬＲＰのパケットだけでなく、ＩＰＰ（Internet Printing Protocol）のパケット、及びＳＭＢ（Server Message Block）のパケットにも優先順位「２」が割り当てられてもよい。また、ＳＮＭＰ（Simple Network Management protocol）のパケットだけでなく、ＩＣＭＰ（Internet Control Message Protocol）のパケットにも優先順位「３」が割り当てられてもよい。図４のフィルタ期間の欄には、フィルタ期間の値及びフィルタ期間を提供するタイマが設定されている。優先順位の高いパケットに設定されているフィルタ期間の値は、優先順位の低いパケットに設定されているフィルタ期間の値よりも短い。これは、優先順位の高いパケットに対する処理が迅速に行われるようにし、且つ優先順位の低いパケットに対する処理が優先順位の高いパケットに対する処理よりも遅く実行されるようにして、ＣＰＵ２にかかる負荷を軽減するためである。
【００３２】
また、パケットの優先順位は、予め各パケット出力部２３に割り当てられている。例えば、優先順位「１」は、パケット出力部２３−１に割り当てられており、優先順位「２」は、パケット出力部２３−２に割り当てられており、優先順位「３」は、パケット出力部２３−３に割り当てられている。
【００３３】
パケット出力部２３−１の制御部２６は、ＣＰＵ２から有効信号を受信したときには、図４のテーブル情報の優先順位「１」に対応する行データに従って、セレクタ２４，２５に選択信号を出力する。具体的には、図４のテーブル情報の優先順位「１」に対応するフィルタ期間を提供するタイマは、タイマ２２−１であるので、パケット出力部２３−１の制御部２６は、タイマ２２−１を選択する選択信号をセレクタ２５に出力する。これにより、パケット出力部２３−１の制御部２６は、タイマ２２−１が指定するフィルタ期間を取得する。また、図４のテーブル情報の優先順位「１」に対応するパケットの種類は、自分宛のＡＲＰのパケットであり、自分宛のＡＲＰのパケットを通過させるフィルタはフィルタ２１−１なので、パケット出力部２３−１の制御部２６は、タイマ２２−１が指定するフィルタ期間だけフィルタ２１−１を選択する選択信号をセレクタ２４に出力する。これにより、フィルタ期間中、自分宛のＡＲＰのパケットは、フィルタ２１−１で廃棄される。
【００３４】
パケット出力部２３−１と同様に、パケット出力部２３−ｎ（ｎ＝２，３…）の制御部２６は、ＣＰＵ２から有効信号を受信したときには、図４のテーブル情報の優先順位「ｎ（ｎ＝２，３…）」に対応する行データに従って、パケット出力部２３−ｎ内のセレクタ２４，２５に選択信号を出力する。
【００３５】
図３では、各フィルタ２１が受信パケットを廃棄しているが、例えば、フィルタ期間を「０」に設定することで、特定のフィルタで受信パケットが廃棄されないようにしてもよい。具体的には、優先順位「１」に設定されている自分宛のARPパケットの、フィルタ期間を「０」に設定することで、常に受信する対象としてもよい。
【００３６】
図５は、ＵＩ９に表示されるテーブル情報を変更するための画面の一例を示す図である。
【００３７】
ユーザが、図５の画面上で、テーブル情報内のパケットの優先順位、パケットの種類又はフィルタ期間の少なくとも１つを変更（追加又は削除も含む）し、ＯＫボタンを押下すると、変更された内容は各パケット出力部２３内の制御部２６に送信され、制御部２６は、変更された内容に基づいて図４のテーブル情報を更新する。これにより、画像形成装置１の使用環境や通信環境等に応じて、テーブル情報は変更可能である。
【００３８】
尚、テーブル情報を変更するための画面は、図５に限定されるものではなく、テーブル情報内のパケットの優先順位、パケットの種類又はフィルタ期間の少なくとも１つを変更できるように構成されていればよい。また、ネットワーク１０を介して画像形成装置１に接続される情報処理装置が、テーブル情報を変更してもよい。この場合、情報処理装置で変更された内容は受信部１１を介して各パケット出力部２３内の制御部２６に送信される。
【００３９】
図６は、画像形成装置１で実行される処理を示すフローチャートである。
【００４０】
まず、ＣＰＵ２は、割込信号の数（即ち、受信パケット数）が予め決められた閾値以上であるか否かを判別する（ステップＳ１）。割込信号の数が予め決められた閾値以上である場合には（ステップＳ１でＹＥＳ）、ＣＰＵ２は、第２経路を選択する選択信号をセレクタ１３に出力すると共にフィルタ部２を有効にする有効信号をフィルタ部２の各パケット出力部２３に出力する（ステップＳ２）。各パケット出力部２３内の制御部２６は、図４のテーブル情報に基づいて、タイマ２２及びフィルタ２１を選択するようにセレクタ２４，２５を制御し、選択されたタイマ２２で指定されるフィルタ期間だけ選択されたフィルタ２１を有効にし、受信パケットを廃棄する（ステップＳ３）。その後、本処理は終了する。
【００４１】
ＣＰＵ２は、割込信号の数が予め決められた閾値を超えない場合には（ステップＳ１でＮＯ）、第１経路を選択する選択信号をセレクタ１３に出力する（ステップＳ４）。これにより、受信パケットは、セレクタ１３を介してＤＭＡ部１４に出力される。その後、本処理は終了する。
【００４２】
以上説明したように、本実施の形態によれば、制御部２６が受信パケットの種類毎に受信パケットに優先順位を設定し、優先順位に応じて受信パケットのフィルタ期間を決定し、フィルタ２１が当該決定されたフィルタ期間中、受信データを廃棄する。よって、受信パケットの種類に応じて、受信パケットのフィルタ期間が変動するので、受信パケットの種類に応じて、受信パケットの廃棄時にＣＰＵ２にかかる負荷が調整される。
【００４３】
また、高い優先順位が設定された受信パケットの廃棄期間は、低い優先順位が設定された受信パケットの廃棄期間よりも短いので、受信パケットの種類を意識しない場合に比べて、ＣＰＵ２にかかる負荷が効率的に調整される又は低減される。さらに、優先順位の高い受信パケットに対する処理が優先順位の低い受信パケットに対する処理よりも早く実行されることになる。
【００４４】
（第２の実施の形態）
第２の実施の形態は、受信部１１が受信パケット数が予め決められた閾値以上であるか否かを判別する点で、第１の実施の形態と異なる。尚、第２の実施の形態にかかる画像形成装置１の構成は、第１の実施の形態にかかる画像形成装置１の構成と同様である。
【００４５】
図７は、第２の実施の形態に係る受信部１１の構成を示すブロック図である。
【００４６】
受信部１１は、水晶発振器３１、レジスタ３２、パルス発生部３３、パケットカウント部３４、及び比較部３５を備えている。水晶発振器３１は、クロックをパルス発生部３３に出力する。レジスタ３２は、単位時間の設定情報をパルス発生部３３に出力する。単位時間は、あるパルスの出力から次のパルスの出力までの期間である。単位時間の設定情報は、単位時間あたりのクロック数を示す。また、単位時間の設定情報は、画像形成装置１の初期化時に、ＣＰＵ２によりレジスタ３２に設定される。
【００４７】
パルス発生部３３は、水晶発振器３１から出力されるクロックとレジスタ３２から出力される単位時間の設定情報とに基づいて、パルスを生成し、パケットカウント部３４、及び比較部３５に出力する。パケットカウント部３４は、パルス発生部３３から出力されるパルス及びネットワーク１０からパケットを受信し、単位時間あたりのパケット数をカウントする。パケットカウント部３４は、単位時間あたりのパケット数の情報を比較部３５に出力する。
【００４８】
比較部３５は、ＣＰＵ２から、パケット数の閾値及びフィルタ期間の情報を取得する。尚、フィルタ期間は、例えば、単位時間の整数倍である。また、比較部３５は、パルス発生部３３からパルスを、パケットカウント部３４から単位時間あたりのパケット数の情報を受信する。比較部３５は、パルスの受信タイミングで、単位時間あたりのパケット数を閾値と比較する。この閾値は、画像形成装置１の初期化時に、ＣＰＵ２により設定される。単位時間あたりのパケット数が閾値以上である場合には、比較部３５は、フィルタ部１２を有効にする有効信号をフィルタ部１２に出力し、さらに、第２経路を選択する選択信号をセレクタ１３に出力する。これにより、ネットワーク１０からの受信パケットはフィルタ部１２により廃棄される。
【００４９】
第２の実施の形態のフィルタ部１２の動作は、第１の実施の形態のフィルタ部１２の動作と同様である。即ち、各パケット出力部２３の制御部２６は、受信部１１から有効信号を受信したときには、図４のテーブル情報に従って、フィルタ２１及びタイマ２２を選択する。そして、各パケット出力部２３の制御部２６は、選択されたタイマ２２が指定するフィルタ期間だけフィルタ２１を選択する選択信号をセレクタ２４に出力する。これにより、フィルタ期間中、特定の受信パケットはフィルタ２１で廃棄される。
【００５０】
本実施の形態によれば、受信部１１が受信パケット数が予め決められた閾値以上であるか否かを判別し、受信パケット数が予め決められた閾値以上である場合に、フィルタ２１は制御部２６で決定されたフィルタ期間だけ受信パケットを廃棄する。よって、受信パケット数が予め決められた閾値以上である状況において、受信パケットの種類に応じて、受信パケットの廃棄時にＣＰＵ２にかかる負荷が調整される。
【００５１】
また、受信部１１は、受信パケットの転送経路（即ち、受信パケットがネットワーク１０からメインメモリ３へ転送される経路）上においてＣＰＵ２の上流側に設けられている。よって、ＣＰＵ２にかかる負荷が増大する前に、受信パケットの種類に応じて、受信パケットの廃棄時にＣＰＵ２にかかる負荷が調整される。また、フィルタ期間中も、受信部１１が受信パケット数が予め決められた閾値以上であるか否かを判別するので、フィルタ期間経過直後でも、再度の受信パケットの廃棄処理が即座に実行される。
【００５２】
通信制御装置（特にフィルタ部１２）の機能を実現するためのソフトウェアのプログラムが記録されている記録媒体を、通信制御装置に供給し、制御部２６が記憶媒体に格納されたプログラムを読み出し実行することによっても、上記実施の形態と同様の効果を奏する。プログラムを供給するための記憶媒体としては、例えば、ＣＤ−ＲＯＭ、ＤＶＤ、又はＳＤカードなどがある。
【００５３】
また、通信制御装置が、通信制御装置の機能を実現するためのソフトウェアのプログラムを実行することによっても、上記実施の形態と同様の効果を奏する。
【符号の説明】
【００５４】
１  画像形成装置
２  ＣＰＵ
３  メインメモリ
７  通信制御部
１１  受信部
１２  フィルタ部
１３  セレクタ
１４  ＤＭＡ（Direct Memory Access）部
２１−１〜２１−Ｎ  フィルタ
２２−１〜２２−Ｎ  タイマ
２３−１〜２３−Ｎ  パケット出力部
２４，２５  セレクタ
２６  制御部
【図１】
2011199636.tif 000003
【図２】
2011199636.tif 000004
【図３】
2011199636.tif 000005
【図４】
2011199636.tif 000006
【図５】
2011199636.tif 000007
【図６】
2011199636.tif 000008
【図７】
2011199636.tif 000009