(57)【要約】【課題】登録するパターンデータが増加しても、パターンデータの容量の増加を抑えてコストの高騰を抑制する。【解決手段】画像形成装置１において、パターンデータ記憶部１１０は、パターンデータのうち判別の対象となる複数のデータ領域を比較する順に階層的に記憶する判別データ記憶部１１１と、複数のデータ領域がパターンデータの何番目のバイトであるかを記憶するバイト記憶部１１２と、各パターンデータが記憶されているアドレスを記憶するアドレス記憶部１１３と、を有し、判別データ記憶部は、同じ階層においてデータが同じである場合には、その同じデータを１つだけ記憶し、メディアアクセス制御部９２は、パターンデータの上位の階層から順に同じバイトのデータを比較し、他のパターンデータと同じ階層においてデータが同じである場合には、同じ１つのデータを共用して比較を行う。【選択図】図３
2010251830.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークを介してパケットを受信し、画像形成に不要なパケットか否かを判別するメディアアクセス制御部と、
受信したパケットの判別に用いる複数のパターンデータを記憶するパターンデータ記憶部と、
前記メディアアクセス制御部により、画像形成に不要であると判断されたパケット以外のパケットを記憶するパケット記憶部と、
前記パケット記憶部に格納されたパケットを用いて画像形成を行う処理部と、を備える画像形成装置において、
前記パターンデータ記憶部は、
パターンデータのうち判別の対象となる複数のデータ領域を比較する順に階層的に記憶する判別データ記憶部と、
前記判別データ記憶部に記憶された複数のデータ領域がパターンデータの何番目のバイトであるかを記憶するバイト記憶部と、
前記判別データ記憶部内における各パターンデータが記憶されているアドレスを記憶するアドレス記憶部と、を有し、
前記判別データ記憶部は、複数のパターンデータのうち、同じ階層においてデータが同じである場合には、その同じデータを１つだけ記憶し、
前記メディアアクセス制御部は、受信したパケットとパターンデータを比較する際に、パターンデータの上位の階層から順に前記バイト記憶部に記憶された同じバイトのデータを比較し、各パターンデータにおいて他のパターンデータと同じ階層においてデータが同じである場合には、同じ１つのデータを共用して比較を行うことを特徴とする画像形成装置。
【請求項２】
前記パケット記憶部内に前記処理部により処理されないパケットがあるか否かを検索する検索部と、
前記検索部により前記処理部に処理されないパケットが見つかった場合に、当該パケットのうち、既に前記パターンデータ記憶部に記憶されたパターンデータの各階層のデータと異なるデータのみを前記判別データ記憶部に記憶させる追加パターン記憶制御部と、
を備えることを特徴とする請求項１に記載の画像形成装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像形成装置に関する。
【背景技術】
【０００２】
プリンタ、コピー、ファックス等の機能を備えた複合機が知られている。複合機は、主に会社や学校に設置されており、複数のコンピュータにネットワーク接続されている。各コンピュータの使用者は、コンピュータで作成した書面等のデータをネットワーク回線により複合機に送信し、そのデータを受信した複合機は、メモリにデータを格納し、格納されたデータに基づいて紙等の記録媒体にその画像を定着させて出力する。
複合機は、ネットワーク回線に複数のコンピュータに接続されていることから、複合機には常に多くのパケットが送信されてくる。受信したパケットの中には、複合機による画像形成に不要なものも多数存在するため、ネットワークコントローラのＭＡＣにおいてパケットのパターンマッチングが行われている（例えば、特許文献１参照。）。
パターンマッチングは、ＭＡＣのメモリに不要となるパケットのパターンデータを予め登録しておき、パケットを受信したＭＡＣがメモリに記憶されたパターンデータと受信パケットのパターンデータとでパターンマッチングを行い、パターンが一致したパケットを削除するというものである。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００７−２４３５９５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかし、近年顧客へのサービスの多様化に伴い、取り扱うパケットの種類や数も多くなり、ＭＡＣのメモリに登録しておくべきパケットのパターンデータも増加し、それに伴ってパターンデータの容量も大きくなっている。そのため、ＭＡＣのメモリの容量を大きくする必要があり、コストが高騰する要因となっていた。
【０００５】
そこで、本発明は、上記課題を解決するためになされたものであり、登録するパターンデータが増加しても、パターンデータの容量の増加を抑えてコストの高騰を抑制する画像形成装置を提供することを目的とする。
【課題を解決するための手段】
【０００６】
請求項１に記載の発明は、画像形成装置において、
ネットワークを介してパケットを受信し、画像形成に不要なパケットか否かを判別するメディアアクセス制御部と、
受信したパケットの判別に用いる複数のパターンデータを記憶するパターンデータ記憶部と、
前記メディアアクセス制御部により、画像形成に不要であると判断されたパケット以外のパケットを記憶するパケット記憶部と、
前記パケット記憶部に格納されたパケットを用いて画像形成を行う処理部と、を備える画像形成装置において、
前記パターンデータ記憶部は、
パターンデータのうち判別の対象となる複数のデータ領域を比較する順に階層的に記憶する判別データ記憶部と、
前記判別データ記憶部に記憶された複数のデータ領域がパターンデータの何番目のバイトであるかを記憶するバイト記憶部と、
前記判別データ記憶部内における各パターンデータが記憶されているアドレスを記憶するアドレス記憶部と、を有し、
前記判別データ記憶部は、複数のパターンデータのうち、同じ階層においてデータが同じである場合には、その同じデータを１つだけ記憶し、
前記メディアアクセス制御部は、受信したパケットとパターンデータを比較する際に、パターンデータの上位の階層から順に前記バイト記憶部に記憶された同じバイトのデータを比較し、各パターンデータにおいて他のパターンデータと同じ階層においてデータが同じである場合には、同じ１つのデータを共用して比較を行うことを特徴とする。
【０００７】
請求項２に記載の発明は、請求項１に記載の画像形成装置において、
前記パケット記憶部内に前記処理部により処理されないパケットがあるか否かを検索する検索部と、
前記検索部により前記処理部に処理されないパケットが見つかった場合に、当該パケットのうち、既に前記パターンデータ記憶部に記憶されたパターンデータの各階層のデータと異なるデータのみを前記判別データ記憶部に記憶させる追加パターン記憶制御部と、
を備えることを特徴とする。
【発明の効果】
【０００８】
請求項１に記載の発明によれば、複数のパターンデータのうち、同じ階層においてデータが同じである場合には、その同じデータを１つだけ記憶させて、他のパターンデータと比較する際にもそのデータを用いることができる。
これにより、同じデータを用いて受信したパケットと比較する場合には、１つのデータを共用することでパターンデータ毎に同じデータを記憶させておく必要がない。すなわち、パターンデータ間において、重複するデータがあっても判別データ記憶部に記憶させておくデータの容量は１つ分で済む。
よって、判別データ記憶部に登録するパターンデータが増加しても、パターンデータの容量の増加を抑えてコストの高騰を抑制することができる。
【０００９】
請求項２に記載の発明によれば、最初から完全に不要なパケットを把握していなくても不要なパケットをパケット記憶部に記憶させた時点で適宜対応することができるようになるので、使い勝手がよく、より高性能な複合機を提供することができる。
【図面の簡単な説明】
【００１０】
【図１】画像形成装置の概略構成図。
【図２】画像形成装置の制御系についての概略構成を示すブロック図。
【図３】コントローラ部の制御系についての概略構成を示すブロック図。
【図４】パケットフォーマットを示す図。
【図５】パターンデータ記憶部の構成を示す図。
【図６】パターンデータを追加した後のパターンデータ記憶部の構成を示す図。
【図７】パターンマッチングの処理を示すフローチャート。
【図８】パターンデータを追加する処理を示すフローチャート。
【図９】パターンデータの階層構造を示す図。
【発明を実施するための形態】
【００１１】
以下、図面を参照して、画像形成装置について説明する。
＜全体構成＞
図１、図２に示すように、画像形成装置１は、スキャナ機能、コピー機能、プリンタ機能を備えた複合機である。画像形成装置１は、本体部２と、本体部２にオプション接続された後処理部３と、を備えている。画像形成装置１は、ハブ（ＨＵＢ）１０を介してネットワークＮに接続されている。
図１、図２に示すように、本体部２は、スキャナ部４と、自動原稿給紙部（ＡＤＦ部：Auto Document Feeder）５と、操作表示部６と、プリンタ部７と、制御部８と、コントローラ部９と、を備えている。
本体部２には、給紙機構を有する３つの給紙トレイＦＴ１〜ＦＴ３、及び大容量トレイユニットＦＴ４が設けられており、各給紙トレイＦＴ１〜ＦＴ４の近傍には給紙された用紙を検知する給紙センサが設けられている。これらの給紙トレイＦＴ１〜ＦＴ４には、記録媒体として、それぞれ普通紙、裏紙、再生紙、上質紙、タブ紙等の種類及びサイズが異なる用紙が収容可能となっている。
本体部２は、ネットワークＮを介して複数のユーザ端末Ｐに接続されている。すなわち、本体部２は、接続されたユーザ端末Ｐからパケット（画像形成のためのデータを構成する）を受信し、受信したデータによりプリントする画像を形成する。
後処理部３は、本体部２から搬送された用紙に各種後処理を行う、いわゆるフィニッシャーである。例えば、本体部２から搬送された用紙のソート処理を行うソートユニット、パンチ処理を行うパンチユニット、折り処理を行う折りユニット、断裁処理を行う断裁ユニット、カッティング処理行うカッティングユニット等を備える。また、後処理部３には、搬送された用紙が排紙される排紙トレイＥＴ１、ＥＴ２が設けられている。
各給紙トレイＦＴ１〜ＦＴ４に収納された用紙に画像形成する際には、用紙が各給紙トレイＦＴ１〜ＦＴ４から引き出され、途中のローラを介してプリンタ部７に搬送される。プリンタ部７においては、本体部２の制御の下、指示された画像が用紙に形成され、その後、ローラを介して排紙トレイＥＴ１、ＥＴ２に排出される。
【００１２】
＜スキャナ部＞
図２に示すように、スキャナ部４は、ＣＣＤ等のイメージセンサ４１と、スキャナ制御部４２とを備えている。スキャナ制御部４２は、制御部８からの制御信号に基づいて、スキャナ部４の各部の駆動を制御する。具体的には、コンタクトガラスに載置された原稿面の露光走査を実行させ、反射光をイメージセンサ４１において結像させて画像を読み取る。そして、この結像された光信号を光電変換してアナログ画像信号を生成させ、制御部８に送信する。
【００１３】
＜ＡＤＦ部＞
図２に示すように、ＡＤＦ部５は、制御部８からの制御信号に基づいて、ＡＤＦ部５の制御を行うＡＤＦ制御部５１を備えている。ＡＤＦ部５は、原稿トレイ（図示略）に載置された原稿をスキャナ部４のコンタクトガラス上に１枚ずつ自動給送する。
【００１４】
＜操作表示部＞
図２に示すように、操作表示部６は、表示部６１と、操作表示制御部６２と、操作部６３と、その他図示しない操作キー群とを備えている。
表示部６１は、操作表示制御部６２からの表示制御信号に従って、画面上に各種設定画面や画像の状態表示、各機能の動作状況等の表示を行う。また、表示部６１の画面上には、例えば透明電極を格子状に配置した感圧式（抵抗膜圧式）のタッチパネル等からなる操作部６３が構成されており、手指やタッチペン等で操作された力点のＸＹ座標を電圧値で検出し、検出された位置信号を操作信号として操作表示制御部６２に出力する。
【００１５】
＜プリンタ部＞
図２に示すように、プリンタ部７は、ＬＤ部（Laser Diode）７１と、プリンタ制御部７２とを備えている。プリンタ部７は、制御部８から入力された画像データに基づいて用紙に画像を形成する。ここで、ユーザ端末Ｐから画像データが画像形成装置１に送信されてきた場合には、コントローラ部９から受信したデータに基づいて画像を形成する。すなわち、プリンタ部７は、画像形成手段として機能する。
ＬＤ部７１は、ＬＤ、感光体ドラム、帯電部、露光部、現像部、転写部、クリーニング部、及び定着部等を備えている。また、ＬＤ部７１は、内部の搬送経路に従って用紙を搬送するための給紙ローラ、レジストローラ、排紙ローラをはじめとする各種ローラ、搬送路切換板、及び反転部等を備えている。ＬＤ部７１の搬送部は、プリンタ制御部７２からの制御に基づいて、当該ジョブで指定された用紙を給紙トレイＦＴ１〜ＦＴ４の何れかから給紙して、給紙された用紙を搬送経路上に搬送する。ＬＤ部７１の搬送経路上には、複数のセンサが設けられている。これらのセンサは、用紙が通過する際に検出信号を発生し、これをプリンタ制御部７２に出力する。
プリンタ制御部７２は、制御部８からの制御信号を受信して、ＬＤ部７１の各部の動作を制御する。また、プリンタ制御部７２は、搬送経路上に設けられたセンサからの検出信号に基づいて、ジョブ毎に給紙した用紙の枚数をカウントし、制御部８に出力する。
プリンタ部７では、プリンタ制御部７２からの指示に基づいて、感光体ドラム表面を帯電部により帯電させ、制御部８から入力されたＰＷＭ信号に基づいてＬＤにより感光体ドラム表面にレーザ光を照射することにより静電潜像を形成する。そして、現像部において感光体ドラム表面の静電潜像を含む領域にトナーを付着させ、転写部により用紙にトナーを転写して画像を形成する。そして、転写された画像を定着部で定着させた後、画像形成済みの用紙を排紙ローラにより後処理部３へ搬送する。
【００１６】
＜制御部＞
図２に示すように、制御部８は、ＣＰＵ８１、ＲＯＭ８２、ＲＡＭ８３、記憶部８４等を備えている。制御部８は、ＲＯＭ８２に記憶されているシステムプログラムや画像形成処理プログラム、排紙処理プログラム等の各種処理プログラムを読み出してＲＡＭ８３に展開し、展開したプログラムに従って画像形成装置１の各部の動作を集中制御する。記憶部８４は、スキャナ部４又はコントローラ部９から入力された画像データを含むジョブのデータを一時的に記憶する。また、記憶部８４は、操作表示部６を介するユーザの操作入力により設定される各種設定情報の表示に用いるために生成されるプレビュー画像に関する情報等を記憶する。
例えば、ＣＰＵ８１は、スキャナ部４又はコントローラ部９から入力されたデータ（画像情報）と、操作表示部６を介して入力された設定情報とに基づいてジョブを生成する。そして、このジョブを実行することで用紙に画像を形成する。
ここで、ジョブとは、画像形成に関する一連の動作を指し、例えば、複数枚の原稿をコピーする場合には、複数枚の原稿をコピーに関する一連の動作が１ジョブである。また、複数部数のコピーを行なう場合は、複数部数のコピーに関する一連の動作が１ジョブである。
他にも、ＣＰＵ８１は、画像データの圧縮処理や伸長処理を行い、画像データの送信等に関する処理を行う。
【００１７】
＜コントローラ部＞
図３に示すように、コントローラ部９は、ネットワークＮに接続されたユーザ端末Ｐからプリントするためのデータ（画像情報）を受信すると共に、そのデータを制御部８に送信する。ここで、画像形成のデータは容量が比較的大きいため、複数のパケットに分割されて順次送信されてくる。
コントローラ部９は、ＰＨＹ９１と、メディアアクセス制御部としてのＭＡＣ９２と、処理部としてのＣＰＵ９３と、パケット記憶部としてのメモリ９４、ＲＯＭ９６等を備えている。
【００１８】
（ＰＨＹ）
ＰＨＹ９１は、ハブ１０にネットワーク接続され、ハブ１０との間でオートネゴシエーションを行う。オートネゴシエーションは、ＰＨＹ９１とハブ１０との間における通信速度及び通信モードを決定することであり、ＰＨＹ９１とハブ１０の双方に対応する最も条件の良いものが決定される。ＰＨＹ９１がオートネゴシエーションを行うことにより、ＰＨＹ９１とハブ１０との間の通信条件（具体的には、通信速度及び通信モード）が決まる。すなわち、コントローラ部９は、オートネゴシエーションで決まった通信条件でハブ１０から各種データを受信する。
ＰＨＹ９１は、ハブ１０から受信したデータをＭＡＣ９２に送信する。
【００１９】
（ＭＡＣ）
ＭＡＣ９２は、ＰＨＹ９１からデータや信号を受信すると共に、そのデータや信号をＣＰＵ９３、メモリ９４に送信する。ＭＡＣ９２は、システムバス９５を介してＣＰＵ９３及びメモリ９４に接続されている。
ＭＡＣ９２は、ＰＨＹ９１から受信したデータの判別、すなわち、受信したデータが画像形成に不要なデータであるか否かを判別する。
ＭＡＣ９２は、データの判別を行うパターンマッチング部１００と、パターンマッチングに用いる複数のパターンデータを記憶するパターンデータ記憶部１１０と、システムバス９６に接続され、通信を司る通信制御部１２０と、を備えている。
【００２０】
（ＭＡＣ：パターンマッチング部）
パターンマッチング部１００は、ＰＨＹ９１から受信したデータパケットと、パターンデータ記憶部１１０に記憶されたパターンデータとを比較し、パターンデータに一致したパケットだけを通信制御部１２０を介してメモリ９４に送信し、メモリ９４に記憶させる。
受信するパケットのフォーマットは、図４に示すように、あて先アドレスであるＤＡ（Destination Address）、送信元アドレスであるＳＡ（Source Address）、フレームの種類を示すＬ／Ｔ（Length Type）、データ本体であるＤＡＴＡ、エラー訂正情報であるＦＣＳ（Flame Check Sequence）が順に並んで構成されている。ＤＡＴＡの中には、上位層のＩＰやＴＣＰなどのパケットが含められている。
ＤＡは６バイト、ＳＡは６バイト、Ｌ／Ｔは２バイト、ＤＡＴＡは４６〜１５００バイト、ＦＣＳは４バイトで構成されている。各バイトには、１６進数のデータが書き込まれており、このデータの違いによりパケットに関する情報を知ることができ、特定のパケットを見つけることができる。以下、「０ｘ」を付した数字又は記号は１６進数で標記しており、「０ｘ」を付していない数字は１０進数で標記している。
例えば、３バイト目はＤＡであるため、３バイト目のデータはあて先アドレスを構成するデータの一部であり、１４バイト目はＬ／Ｔであるため、１４バイト目のデータはフレームの種類を構成するデータの一部であることがわかる。
【００２１】
（ＭＡＣ：パターンデータ記憶部）
パターンデータ記憶部１１０は、受信したパケットの判別に用いられる複数のパターンデータを記憶する。
図３に示すように、パターンデータ記憶部１１０は、パターンデータのうち判別の対象となる複数のデータ領域を比較する順に階層的に記憶する判別データ記憶部１１１と、判別データ記憶部１１１に記憶された複数のデータ領域がパターンデータの何番目のバイトであるかを記憶するバイト記憶部１１２と、判別データ記憶部１１１内における各パターンデータが記憶されているアドレスを記憶するアドレス記憶部１１３と、を有している。
【００２２】
（ＭＡＣ：パターンデータ記憶部：パターンデータの構造）
図５は、パターンデータ記憶部１１０内の各データの例を示したものである。図５は、２つのパターンデータを記憶させたものである。１つ目のパターンデータは、１バイト目から６バイト目までが０ｘＦＦ，０ｘＦＦ，０ｘＦＦ，０ｘＦＦ，０ｘＦＦ，０ｘＦＦ、１３バイト目から１４バイト目までが０ｘ０８，０ｘ０６、１５バイト目から２２バイト目までが０ｘ００，０ｘ０１，０ｘ０８，０ｘ００，０ｘ０６，０ｘ０４，０ｘ００，０ｘ０１である。２つ目のパターンデータは、１バイト目から６バイト目までが０ｘＦＦ，０ｘＦＦ，０ｘＦＦ，０ｘＦＦ，０ｘＦＦ，０ｘＦＦ、１３バイト目から１４バイト目までが０ｘ０８，０ｘ００、１５バイト目から２０バイト目までが０ｘ０８，０ｘ００，０ｘ４５，０ｘ００，０ｘ００，０ｘ４Ｅである。
【００２３】
図５における左側に縦に並んで記載された１６進数標記の記号は、パターンデータ記憶部１１０内のアドレス（番地）である。
１つ目のパターンデータのデータ構造について説明する。
アドレス０ｘ００の一列目には、受信パケットと比較を行う際に、比較を開始するバイトが書き込まれている。上記のように最初は１バイト目から６バイト目（１階層目）まで比較することから、アドレス０ｘ００の一列目には、「１」が書き込まれている。
アドレス０ｘ００の二列目には、受信パケットと比較を行う際に、比較を開始するバイトから連続して何バイト目まで比較するかが書き込まれている。上記のように１バイト目から６バイト目まで比較することから、アドレス０ｘ００の二列目には、「６」が書き込まれている。
アドレス０ｘ０１からアドレス０ｘ０６の一列目には、１バイト目から６バイト目まで比較する際の各バイトのデータがそれぞれに書き込まれている。すなわち、アドレス０ｘ０１には「０ｘＦＦ」、アドレス０ｘ０２には「０ｘＦＦ」、アドレス０ｘ０３には「０ｘＦＦ」、アドレス０ｘ０４には「０ｘＦＦ」、アドレス０ｘ０５には「０ｘＦＦ」、アドレス０ｘ０６には「０ｘＦＦ」が書き込まれている。
アドレス０ｘ０１の二列目には、１バイト目から６バイト目の次に比較を行うデータが記憶されているパターンデータ記憶部１１０のアドレス「０ｘ０７」が書き込まれている。
【００２４】
アドレス０ｘ０７の一列目には、二番目に比較を開始するバイトが書き込まれている。上記のように二番目は１３バイト目から１４バイト目（２階層目）まで比較することから、アドレス０ｘ０７の一列目には、「１３」が書き込まれている。
アドレス０ｘ０７の二列目には、受信パケットと比較を行う際に、比較を開始するバイトから連続して何バイト目まで比較するかが書き込まれている。上記のように１３バイト目から１４バイト目まで比較することから、アドレス０ｘ０７の二列目には、「２」が書き込まれている。
アドレス０ｘ０８からアドレス０ｘ０９の一列目には、１３バイト目から１４バイト目まで比較する際の各バイトのデータがそれぞれに書き込まれている。すなわち、アドレス０ｘ０８には「０ｘ０８」、アドレス０ｘ０９には「０ｘ０６」が書き込まれている。
アドレス０ｘ０８の二列目には、１３バイト目から１４バイト目の次に比較を行うデータが記憶されているパターンデータ記憶部１１０のアドレス「０ｘ０Ａ」が書き込まれている。
【００２５】
アドレス０ｘ０Ａの一列目には、三番目に比較を開始するバイトが書き込まれている。上記のように三番目は１５バイト目から２２バイト目（３階層目）まで比較することから、アドレス０ｘ０Ａの一列目には、「１５」が書き込まれている。
アドレス０ｘ０Ａの二列目には、受信パケットと比較を行う際に、比較を開始するバイトから連続して何バイト目まで比較するかが書き込まれている。上記のように１５バイト目から２２バイト目まで比較することから、アドレス０ｘ０Ａの二列目には、「８」が書き込まれている。
アドレス０ｘ０Ｂからアドレス０ｘ１２の一列目には、１５バイト目から２２バイト目まで比較する際の各バイトのデータがそれぞれに書き込まれている。すなわち、アドレス０ｘ０Ｂには「０ｘ００」、アドレス０ｘ０Ｃには「０ｘ０１」、アドレス０ｘ０Ｄには「０ｘ０８」、アドレス０ｘ０Ｅには「０ｘ００」、アドレス０ｘ０Ｆには「０ｘ０６」、アドレス０ｘ１０には「０ｘ０４」、アドレス０ｘ１１には「０ｘ００」、アドレス０ｘ１２には「０ｘ０１」が書き込まれている。
以上のデータにより、１つ目のパターンデータと受信パケットを比較できる。
【００２６】
次に、２つ目のパターンデータのデータ構造について説明する。
２つ目のパターンデータは、１バイト目から６バイト目まで（１階層目）が１つ目のパターンデータと同じである。そのため、共通する１バイト目から６バイト目までのデータについては、あえてパターンデータ記憶部１１０に新たに記憶されず、１つ目のデータを共用している。これにより、パターンデータ記憶部１１０には、二番目に比較する１３バイト目から１４バイト目までのデータと、三番目に比較する１５バイト目から２０バイト目までのデータが新たに記憶されている。これらの２つ目のパターンデータは、１つ目のパターンデータに連続してパターンデータ記憶部１１０に記憶されている。
【００２７】
アドレス０ｘ０２の二列目には、共用する一番目のデータとの比較が終わった後に二番目に比較するデータが記憶されているパターンデータ記憶部１１０のアドレス「０ｘ１３」が書き込まれている。
アドレス０ｘ１３の一列目には、受信パケットと比較を行う際に、二番目に比較を開始するバイトが書き込まれている。上記のように二番目は１３バイト目から１４バイト目まで（２階層目）比較することから、アドレス０ｘ１３の一列目には、「１３」が書き込まれている。
アドレス０ｘ１３の二列目には、受信パケットと比較を行う際に、比較を開始するバイトから連続して何バイト目まで比較するかが書き込まれている。上記のように１３バイト目から１４バイト目まで比較することから、アドレス０ｘ１３の二列目には、「２」が書き込まれている。
アドレス０ｘ１４からアドレス０ｘ１５の一列目には、１３バイト目から１４バイト目まで比較する際の各バイトのデータがそれぞれに書き込まれている。すなわち、アドレス０ｘ１４には「０ｘ０８」、アドレス０ｘ１５には「０ｘ００」が書き込まれている。
アドレス０ｘ１４の二列目には、１３バイト目から１４バイト目の次に比較を行うデータが記憶されているパターンデータ記憶部１１０のアドレス「０ｘ１６」が書き込まれている。
【００２８】
アドレス０ｘ１６の一列目には、三番目に比較を開始するバイトが書き込まれている。上記のように三番目は１５バイト目から２０バイト目（３階層目）まで比較することから、アドレス０ｘ１６の一列目には、「１５」が書き込まれている。
アドレス０ｘ１６の二列目には、受信パケットと比較を行う際に、比較を開始するバイトから連続して何バイト目まで比較するかが書き込まれている。上記のように１５バイト目から２０バイト目まで比較することから、アドレス０ｘ１６の二列目には、「６」が書き込まれている。
アドレス０ｘ１７からアドレス０ｘ１Ｃの一列目には、１５バイト目から２０バイト目まで比較する際の各バイトのデータがそれぞれに書き込まれている。すなわち、アドレス０ｘ１７には「０ｘ０８」、アドレス０ｘ１８には「０ｘ００」、アドレス０ｘ１９には「０ｘ４５」、アドレス０ｘ１Ａには「０ｘ００」、アドレス０ｘ１Ｂには「０ｘ００」、アドレス０ｘ１Ｃには「０ｘ４Ｅ」が書き込まれている。
以上のデータにより、２つ目のパターンデータと受信パケットを比較することができる。
【００２９】
（ＭＡＣ：通信制御部）
通信制御部１２０は、バッファとなるＦＩＦＯ１２１を備えている。ＦＩＦＯ１２１には、ＰＨＹ９１から受信したデータを一定容量まで蓄え、一定容量に達したときに蓄えたデータを一気にメモリ９４に送信する。
【００３０】
（ＣＰＵ、メモリ、ＲＯＭ）
ＣＰＵ９３は、メモリ９４に記憶された画像形成に関する各種演算処理やデータ送信等の各制御を担う。ＣＰＵ９３は、システムバス９５に接続されており、ＭＡＣ９２との間でデータのやり取りや指示が可能となっている。
メモリ９４は、画像形成に必要であると判断されたパケット（データ）が格納されるパケット記憶部として機能する。メモリ９４に記憶されたパケットはＣＰＵ９３に読み込まれ、ＣＰＵ９３は読み込んだパケットに基づいて画像を形成する。
ＲＯＭ９６には、ＣＰＵ９３に実行されることで、メモリ８４内にＣＰＵ９３により処理されないパケット（不要なパケット）があるか否かを検索する機能を実現するプログラムが記憶されている。すなわち、ＣＰＵ９３と当該プログラムとで検索部として機能する。
ＲＯＭ９６には、ＣＰＵ９３に実行されることで、ＣＰＵ９３に処理されない不要なパケットが見つかった場合に、当該パケットのうち、既にパターンデータ記憶部１１０に記憶されたパターンデータの各階層のデータと異なるデータのみを判別データ記憶部１１１に記憶させる機能を実現するプログラムが記憶されている。すなわち、ＣＰＵ９３と当該プログラムとで追加パターン記憶制御部として機能する。
【００３１】
ここで、パターンデータの追加について具体的に説明する。
ＣＰＵ９３がメモリ９４内に処理しないパケット、すなわち、画像形成に不要なパケットを発見した場合、ＣＰＵ９３は、発見した不要パケットのパターンデータをパターンデータ記憶部１１０に記憶する。
例えば、発見された不要パケットを判断するためのパターンデータが、１バイト目から６バイト目（１階層目）までが０ｘＦＦ，０ｘＦＦ，０ｘＦＦ，０ｘＦＦ，０ｘＦＦ，０ｘＦＦ、１３バイト目から１４バイト目（２階層目）までが０ｘ０８，０ｘ００、３７バイト目から３８バイト目（３階層目）までが０ｘ０２，０ｘ０８であるとする。
このようなパターンデータを３つ目のパターンデータとして記憶させる場合において、１バイト目から６バイト目（１階層目）までのデータと、１３バイト目から１４バイト目（２階層目）までのデータが２つ目のパターンデータと共通しているため、３７バイト目から３８バイト目（３階層目）までのデータをパターンデータ記憶部１１０に新たに記憶する。
【００３２】
図６に示すように、アドレス０ｘ１５の二列目には、１３バイト目から１４バイト目の次に比較を行うデータが記憶されているパターンデータ記憶部１１０のアドレス「０ｘ１Ｄ」が新たに書き込まれる（太枠で表示）。
アドレス０ｘ１Ｄの一列目には、三番目に比較を開始するバイトが新たに書き込まれる。上記のように三番目は３７バイト目から３８バイト目（３階層目）まで比較することから、アドレス０ｘ１Ｄの一列目には、「３７」が新たに書き込まれる（太枠で表示）。
アドレス０ｘ１Ｄの二列目には、受信パケットと比較を行う際に、比較を開始するバイトから連続して何バイト目まで比較するかが新たに書き込まれる。上記のように３７バイト目から３８バイト目まで比較することから、アドレス０ｘ１Ｄの二列目には、「２」が新たに書き込まれる（太枠で表示）。
アドレス０ｘ１Ｅからアドレス０ｘ１Ｆの一列目には、３７バイト目から３８バイト目まで比較する際の各バイトのデータがそれぞれに新たに書き込まれる。すなわち、アドレス０ｘ１Ｅには「０ｘ０２」、アドレス０ｘ１Ｆには「０ｘ０８」が新たに書き込まれる（太枠で表示）。
以上のデータが新たに書き込まれることにより、３つ目のパターンデータをパターンデータ記憶部１１０に新たに追加することができる。
【００３３】
＜パケットのパターンマッチング＞
次に、上記のパターンデータを用いて受信したパケットのパターンマッチングについて説明する。
図７に示すように、ＭＡＣ９２はパケットを受信すると、パターンデータ記憶部１１０に記憶されている１つ目のパターンデータと受信パケットを比較する。
最初に、ＭＡＣ９２は、１つ目のパターンデータの１階層目（１バイト目から６バイト目）のデータと受信パケットを比較して一致しているか否かを判断する（ステップＳ１）。このとき、ＭＡＣ９２は、パターンデータ記憶部１１０にアクセスし、比較を開始するバイトが「１」、比較するバイト数が「６」であると認識できるので、アドレス０ｘ０１からアドレス０ｘ０６までのデータ「０ｘＦＦ，０ｘＦＦ，０ｘＦＦ，０ｘＦＦ，０ｘＦＦ，０ｘＦＦ」を読み込み、受信パケットにおける同じバイトのデータと比較する。
【００３４】
ステップＳ１において、ＭＡＣ９２はデータが一致していると判断した場合（ステップＳ１：ＹＥＳ）、ＭＡＣ９２は、１つ目のパターンデータの２階層目（１３バイト目から１４バイト目）のデータと受信パケットを比較して一致しているか否かを判断する（ステップＳ２）。このとき、ＭＡＣ９２は、パターンデータ記憶部１１０にアクセスし、アドレス０ｘ０１の二列目を読み込むことにより、２階層目のデータはアドレス０ｘ０７であると認識できるので、比較を開始するバイトが「１３」、比較するバイト数が「２」であると認識できる。そして、アドレス０ｘ０８からアドレス０ｘ０９までのデータ「０ｘ０８，０ｘ０６」を読み込み、受信パケットにおける同じバイトのデータと比較する。
【００３５】
ステップＳ１において、ＭＡＣ９２はデータが一致していないと判断した場合（ステップＳ１：ＮＯ）、ＭＡＣ９２は、２つ目のパターンデータの１階層目（１バイト目から６バイト目）のデータと受信パケットを比較して一致しているか否かを判断する（ステップＳ５）。このとき、ＭＡＣ９２は、パターンデータ記憶部１１０にアクセスし、比較を開始するバイトが「１」、比較するバイト数が「６」であると認識できるので、アドレス０ｘ０１からアドレス０ｘ０６までのデータ「０ｘＦＦ，０ｘＦＦ，０ｘＦＦ，０ｘＦＦ，０ｘＦＦ，０ｘＦＦ」を読み込み、受信パケットにおける同じバイトのデータと比較する。
【００３６】
ステップＳ２において、ＭＡＣ９２はデータが一致していると判断した場合（ステップＳ２：ＹＥＳ）、ＭＡＣ９２は、１つ目のパターンデータの３階層目（１５バイト目から２２バイト目）のデータと受信パケットを比較して一致しているか否かを判断する（ステップＳ３）。このとき、ＭＡＣ９２は、パターンデータ記憶部１１０にアクセスし、アドレス０ｘ０８の二列目を読み込むことにより、３階層目のデータはアドレス０ｘ０Ａであると認識できるので、比較を開始するバイトが「１５」、比較するバイト数が「８」であると認識できる。そして、アドレス０ｘ０Ｂからアドレス０ｘ１２までのデータ「０ｘ００，０ｘ０１，０ｘ０８，０ｘ００，０ｘ０６，０ｘ０４，０ｘ００，０ｘ０１」を読み込み、受信パケットにおける同じバイトのデータと比較する。
【００３７】
ステップＳ２において、ＭＡＣ９２はデータが一致していないと判断した場合（ステップＳ２：ＮＯ）、ＭＡＣ９２は、２つ目のパターンデータの１階層目（１バイト目から６バイト目）のデータと受信パケットを比較して一致しているか否かを判断する（ステップＳ５）。
【００３８】
ステップＳ３において、ＭＡＣ９２はデータが一致していると判断した場合（ステップＳ３：ＹＥＳ）、ＭＡＣ９２は、受信したパケットは画像形成に不要なデータであるとして、受信パケットをメモリ９４に送信することなく削除する（ステップＳ４）。
【００３９】
ステップＳ３において、ＭＡＣ９２はデータが一致していないと判断した場合（ステップＳ３：ＮＯ）、ＭＡＣ９２は、２つ目のパターンデータの１階層目（１バイト目から６バイト目）のデータと受信パケットを比較して一致しているか否かを判断する（ステップＳ５）。
【００４０】
ステップＳ５において、ＭＡＣ９２は、２つ目のパターンデータの１階層目（１バイト目から６バイト目）のデータと受信パケットを比較して一致しているか否かを判断する（ステップＳ５）。このとき、ＭＡＣ９２は、パターンデータ記憶部１１０にアクセスし、比較を開始するバイトが「１」、比較するバイト数が「６」であると認識できるので、アドレス０ｘ０１からアドレス０ｘ０６までのデータ「０ｘＦＦ，０ｘＦＦ，０ｘＦＦ，０ｘＦＦ，０ｘＦＦ，０ｘＦＦ」を読み込み、受信パケットにおける同じバイトのデータと比較する。
【００４１】
ステップＳ５において、ＭＡＣ９２はデータが一致していると判断した場合（ステップＳ５：ＹＥＳ）、ＭＡＣ９２は、２つ目のパターンデータの２階層目（１３バイト目から１４バイト目）のデータと受信パケットを比較して一致しているか否かを判断する（ステップＳ６）。このとき、ＭＡＣ９２は、パターンデータ記憶部１１０にアクセスし、アドレス０ｘ０２の二列目を読み込むことにより、２階層目のデータはアドレス０ｘ１３であると認識できるので、比較を開始するバイトが「１３」、比較するバイト数が「２」であると認識できる。そして、アドレス０ｘ１４からアドレス０ｘ１５までのデータ「０ｘ０８，０ｘ００」を読み込み、受信パケットにおける同じバイトのデータと比較する。
【００４２】
ステップＳ５において、ＭＡＣ９２はデータが一致していないと判断した場合（ステップＳ５：ＮＯ）、ＭＡＣ９２は、他に比較するパケットデータがないので、受信パケットは画像形成に必要なパケットであると判断し、受信パケットをメモリ９４に記憶する（ステップＳ８）。
【００４３】
ステップＳ６において、ＭＡＣ９２はデータが一致していると判断した場合（ステップＳ６：ＹＥＳ）、ＭＡＣ９２は、２つ目のパターンデータの３階層目（１５バイト目から２０バイト目）のデータと受信パケットを比較して一致しているか否かを判断する（ステップＳ７）。このとき、ＭＡＣ９２は、パターンデータ記憶部１１０にアクセスし、アドレス０ｘ１４の二列目を読み込むことにより、３階層目のデータはアドレス０ｘ１６であると認識できるので、比較を開始するバイトが「１５」、比較するバイト数が「６」であると認識できる。そして、アドレス０ｘ１７からアドレス０ｘ１Ｃまでのデータ「０ｘ０８，０ｘ００，０ｘ４５，０ｘ００，０ｘ００，０ｘ４Ｅ」を読み込み、受信パケットにおける同じバイトのデータと比較する。
【００４４】
ステップＳ６において、ＭＡＣ９２はデータが一致していないと判断した場合（ステップＳ６：ＮＯ）、ＭＡＣ９２は、他に比較するパケットデータがないので、受信パケットは画像形成に必要なパケットであると判断し、受信パケットをメモリ９４に記憶する（ステップＳ８）。
【００４５】
ステップＳ７において、ＭＡＣ９２はデータが一致していると判断した場合（ステップＳ７：ＹＥＳ）、ＭＡＣ９２は、受信したパケットは画像形成に不要なデータであるとして、受信パケットをメモリ９４に送信することなく削除する（ステップＳ４）。
【００４６】
ステップＳ７において、ＭＡＣ９２はデータが一致していないと判断した場合（ステップＳ７：ＮＯ）、ＭＡＣ９２は、他に比較するパケットデータがないので、受信パケットは画像形成に必要なパケットであると判断し、受信パケットをメモリ９４に記憶する（ステップＳ８）。
【００４７】
＜メモリ内に不要なパケットを発見した場合の処理＞
次に、上記のパターンデータを用いて、メモリ９４にＣＰＵ９３によって処理されない不要なパケットが記憶されている場合の処理について説明する。ここでは、発見されたパケットが、１バイト目から６バイト目（１階層目）までが０ｘＦＦ，０ｘＦＦ，０ｘＦＦ，０ｘＦＦ，０ｘＦＦ，０ｘＦＦ、１３バイト目から１４バイト目（２階層目）までが０ｘ０８，０ｘ００、３７バイト目から３８バイト目（３階層目）までが０ｘ０２，０ｘ０８であるとする。
【００４８】
図８に示すように、ＣＰＵ９３は、発見したパケットと既に登録されているパターンデータを順次比較していく。
ＣＰＵ９３は、登録されている全てのパターンデータの１階層目のデータと発見した不要なパケットのうち、パターンデータの１階層目に対応するデータとを比較し、一致するデータがあるか否かを判断する（ステップＳ１１）。
ステップＳ１１において、一致するデータがない場合（ステップＳ１１：ＮＯ）、ＣＰＵ９３は、発見したパケットの１階層目のデータをパターンデータ記憶部１１０に記憶する（ステップＳ１２）。
ステップＳ１１において、一致するデータがあった場合（ステップＳ１１：ＹＥＳ）、ＣＰＵ９３は、発見したパケットの１階層目のデータをパターンデータ記憶部１１０に記憶することなく、ＣＰＵ９３は、登録されている全てのパターンデータの２階層目のデータと発見した不要なパケットのうち、パターンデータの２階層目に対応するデータとを比較し、一致するデータがあるか否かを判断する（ステップＳ１３）。
上記パケットの場合、１階層目のデータは既に記憶されているため、ＣＰＵ９３は、発見したパケットの１階層目のデータをパターンデータ記憶部１１０に記憶させることはない。
【００４９】
ステップＳ１３において、一致するデータがない場合（ステップＳ１３：ＮＯ）、ＣＰＵ９３は、発見したパケットの２階層目のデータをパターンデータ記憶部１１０に記憶する（ステップＳ１４）。
ステップＳ１３において、一致するデータがあった場合（ステップＳ１３：ＹＥＳ）、ＣＰＵ９３は、発見したパケットの２階層目のデータをパターンデータ記憶部１１０に記憶することなく、ＣＰＵ９３は、登録されている全てのパターンデータの３階層目のデータと発見した不要なパケットのうち、パターンデータの３階層目に対応するデータとを比較し、一致するデータがあるか否かを判断する（ステップＳ１５）。
上記パケットの場合、２階層目のデータは既に記憶されているため、ＣＰＵ９３は、発見したパケットの２階層目のデータをパターンデータ記憶部１１０に記憶させることはない。
【００５０】
ステップＳ１５において、一致するデータがない場合（ステップＳ１５：ＮＯ）、ＣＰＵ９３は、発見したパケットの３階層目のデータをパターンデータ記憶部１１０に記憶する（ステップＳ１６）。
ステップＳ１５において、一致するデータがあった場合（ステップＳ１５：ＹＥＳ）、ＣＰＵ９３は、発見したパケットの２階層目のデータをパターンデータ記憶部１１０に記憶することなく、本処理を終了する。この場合には、全ての階層のデータが既に記憶されているため、新たに記憶させる必要がないということになる。
上記パケットの場合、３階層目のデータは記憶されていないため、ＣＰＵ９３は、発見したパケットの３階層目のデータをパターンデータ記憶部１１０に記憶させる。パターンデータ記憶部１１０のどのアドレスに記憶させるかについては、図６において既に説明したので省略する。
【００５１】
＜作用効果＞
以上のように、画像形成装置１によれば、複数のパターンデータのうち、同じ階層においてデータが同じである場合には、その同じデータを１つだけ記憶させて、他のパターンデータと比較する際にもそのデータを用いることができる。
これにより、図９に示すように、同じデータを用いて受信したパケットと比較する場合には、１つのデータを共用することでパターンデータ毎に同じデータを記憶させておく必要がない。すなわち、パターンデータ間において、重複するデータがあっても記憶させておくデータの容量は１つ分で済む。図９に示すように、破線部分のデータを記憶させることなく、パターンデータ記憶部１１０内で次に比較するアドレスを指定しておくだけでよい。
よって、登録するパターンデータが増加しても、パターンデータの容量の増加を抑えてコストの高騰を抑制することができる。
【００５２】
また、最初から完全に不要なパケットを把握していなくても不要なパケットをメモリ９４に記憶させた時点で適宜対応することができるようになるので、使い勝手がよく、より高性能な複合機を提供することができる。
【００５３】
＜その他＞
なお、本発明は、上記実施形態に限られるものではなく、発明の本質的部分を変更しない範囲内で自由に設計変更が可能である。例えば、パターンデータの数、パターンデータ毎に比較する階層の数は、上記の例に限らず、多いほどパターンマッチングの精度を高めることができる。
また、メモリ９４内に不要なパケットを発見した場合のパターンデータ記憶部１１０への記憶を行わない場合、すなわち、図８に示す処理を行わない場合には、ＭＡＣ９２は、パターンデータが一致した受信パケットをメモリ９４に記憶し、一致しなかった受信パケットをメモリ９４に記憶させることなく削除するように処理してもよい。
【符号の説明】
【００５４】
１  画像形成装置
９２  ＭＡＣ（メディアアクセス制御部）
９３  ＣＰＵ（処理部、検索部、追加パターン記憶制御部）
９４  メモリ（パケット記憶部）
９６  ＲＯＭ（検索部、追加パターン記憶制御部）
１１０  パターンデータ記憶部
１１１  判別データ記憶部
１１２  バイト記憶部
１１３  アドレス記憶部
Ｎ  ネットワーク
【図１】
2010251830.tif 000003
【図２】
2010251830.tif 000004
【図３】
2010251830.tif 000005
【図４】
2010251830.tif 000006
【図５】
2010251830.tif 000007
【図６】
2010251830.tif 000008
【図７】
2010251830.tif 000009
【図８】
2010251830.tif 000010
【図９】
2010251830.tif 000011