(57)【要約】【課題】  サーバの負荷を低減すること。【解決手段】  ＭＦＰは、ネットワークに接続されたＷｅｂサーバからコンテンツを受信し、受信されたコンテンツを表示する１以上の第１〜第Ｎブラウジング部５１−１〜５１−Ｎと、第１〜第Ｎブラウジング部５１−１〜５１−Ｎ各々がＷｅｂサーバに送信するために出力するコマンドを取得するコマンド取得部５５と、取得されたコマンドを、該コマンドの送信先のＷｅｂサーバに送信するコマンド送信部５９と、取得されたコマンドを送信したＷｅｂサーバから過去に受信されたコンテンツの状態または該Ｗｅｂサーバとの間の通信状態に基づいて、コマンド送信部５９によるコマンドの送信を制限する制限部５７と、を備える。【選択図】        図５
2012226414.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークに接続されたサーバからコンテンツを受信し、前記受信されたコンテンツを表示する１以上のブラウジング手段と、
前記１以上のブラウジング手段各々がサーバに送信するために出力するコマンドを取得するコマンド取得手段と、
前記取得されたコマンドを、該コマンドの送信先のサーバに送信する送信手段と、
前記取得されたコマンドを送信したサーバから過去に受信されたコンテンツの状態または該サーバとの間の通信状態に基づいて、前記送信手段による前記コマンドの送信を制限する制限手段と、を備えた画像形成装置。
【請求項２】
前記１以上のブラウジング手段各々により、過去にサーバから受信され、かつ、表示可能に保持されている１以上のコンテンツ各々に対して送信元のサーバを識別するためのサーバ識別情報を関連付ける関連付手段を、含み、
前記制限手段は、前記取得手段によりコマンドが取得された時点で、前記関連付手段によって前記取得されたコマンドの送信先のサーバのサーバ識別情報と同じサーバ識別情報と関連付けられたコンテンツの数が所定のしきい値ならば、前記送信手段による前記コマンドの送信を禁止する第１リクエスト禁止手段を、含む請求項１に記載の画像形成装置。
【請求項３】
前記送信手段は、前記取得されたコマンドの送信先のサーバと通信するためにセッションを確立するセッション確立手段を、さらに含み、
前記制限手段は、前記取得手段によりコマンドが取得された時点で、前記取得されたコマンドの送信先のサーバとの間で通信するためのセッションが既に確立されている場合、前記送信手段による前記コマンドの送信を禁止する第２リクエスト禁止手段を、含む請求項１または２に記載の画像形成装置。
【請求項４】
前記１以上のブラウジング手段各々は、
リクエストを受け付けるリクエスト受付手段と、
前記リクエストが受け付けられることに応じて、前記受け付けられたリクエストにより定まる送信先のサーバに前記受け付けられたリクエストに対応するコマンドを出力するコマンド出力手段と、
前記出力されたコマンドを実行する前記サーバが返信するコンテンツを受信するコンテンツ受信手段と、
前記受信されたコンテンツを表示するコンテンツ表示手段と、を含み、
前記コンテンツ表示手段は、前記コンテンツ受信手段により受信された１以上のコンテンツを選択可能な状態で保持する保持手段と、
前記保持された１以上のコンテンツのうちから選択された１つを表示する選択表示手段と、を含み、
前記リクエスト受付手段は、前記保持手段により保持されている１以上のコンテンツのいずれかが発生するリクエストを受け付ける発生リクエスト受付手段を、含む請求項３に記載の画像形成装置。
【請求項５】
前記１以上のブラウジング手段各々は、
リクエストを受け付けるリクエスト受付手段と、
前記リクエストが受け付けられることに応じて、前記受け付けられたリクエストにより定まる送信先のサーバに前記受け付けられたリクエストに対応するコマンドを出力するコマンド出力手段と、
前記出力されたコマンドを実行する前記サーバが返信するコンテンツを受信するコンテンツ受信手段と、
前記受信されたコンテンツを表示するコンテンツ表示手段と、を含み、
前記リクエスト受付手段は、ユーザによる指示によりリクエストを受け付ける指示受付手段を、含む請求項３に記載の画像形成装置。
【請求項６】
リクエストを受け付けるリクエスト受付手段と、
前記リクエストが受け付けられることに応じて、前記受け付けられたリクエストにより定まる送信先のサーバに前記受け付けられたリクエストに対応するコマンドを送信するコマンド送信手段と、
前記コマンドを実行する前記サーバが返信するコンテンツを受信するコンテンツ受信手段と、
前記受信されたコンテンツを表示するコンテンツ表示手段と、
前記受け付けられたリクエストにより定まる送信先のサーバから過去に受信されたコンテンツの状態または該サーバとの間の通信状態に基づいて、前記コマンド送信手段による前記コマンドの送信を制限する制限手段と、を備えた画像形成装置。
【請求項７】
前記コンテンツ表示手段は、前記コンテンツ受信手段により受信された１以上のコンテンツを選択可能な状態で保持する保持手段と、
前記保持された１以上のコンテンツのうちから選択された１つを表示する選択表示手段と、を含み、
前記制限手段は、前記リクエスト受付手段によりリクエストが受け付けられた時点で、前記保持手段により保持されている１以上のコンテンツのうち、前記受け付けられたリクエストにより定まる送信先のサーバと同じサーバから受信されたコンテンツの数が所定のしきい値ならば、前記コマンド送信手段による前記コマンドの送信を禁止する第１リクエスト禁止手段を、含む請求項６に記載の画像形成装置。
【請求項８】
前記制限手段は、前記リクエスト受付手段によりリクエストが受け付けられた時点で、該受け付けられたリクエストの送信先のサーバと通信するためのセッションが既に確立されている場合、前記コマンド送信手段による前記コマンドの送信を禁止する第２リクエスト禁止手段を、含む請求項６または７に記載の画像形成装置。
【請求項９】
前記リクエスト受付手段は、前記保持手段により保持されている１以上のコンテンツのいずれかが発生するリクエストを受け付ける発生リクエスト受付手段を、含む請求項７または８に記載の画像形成装置。
【請求項１０】
前記リクエスト受付手段は、ユーザによる指示によりリクエストを受け付ける指示受付手段を、含む請求項６〜９のいずれかに記載の画像形成装置。
【請求項１１】
ブラウジングプログラムを実行可能な画像形成装置で実行される通信制御方法であって、
ブラウジングプログラムを実行するタスクがネットワークに接続されたサーバに送信するために出力するコマンドを取得する取得ステップと、
前記取得されたコマンドを、該コマンドの送信先のサーバに送信する送信ステップと、
前記取得されたコマンドを送信したサーバから過去に受信されたコンテンツの状態または該サーバとの間の通信状態に基づいて、前記送信ステップにおける前記取得されたコマンドの送信を制限する制限ステップを含む、通信制御方法。
【請求項１２】
ブラウジングプログラムを実行可能な画像形成装置を制御するコンピュータで実行される通信制御プログラムであって、
ブラウジングプログラムを実行するタスクがネットワークに接続されたサーバに送信するために出力するコマンドを取得する取得ステップと、
前記取得されたコマンドを、該コマンドの送信先のサーバに送信する送信ステップと、
前記取得されたコマンドを送信したサーバから過去に受信されたコンテンツの状態または該サーバとの間の通信状態に基づいて、前記送信ステップにおける前記取得されたコマンドの送信を制限する制限ステップと、を前記コンピュータに実行させる通信制御プログラム。
【請求項１３】
ネットワークに接続された画像形成装置で実行されるブラウジング方法であって、
リクエストを受け付けるリクエスト受付ステップと、
前記リクエストが受け付けられることに応じて、前記受け付けられたリクエストにより定まる送信先のサーバに前記受け付けられたリクエストに対応するコマンドを送信するコマンド送信ステップと、
前記コマンドを実行する前記サーバが返信するコンテンツを受信するコンテンツ受信ステップと、
前記受信されたコンテンツを表示するコンテンツ表示ステップと、
前記受け付けられたリクエストにより定まる送信先のサーバから過去に受信されたコンテンツの状態または該サーバとの間の通信状態に基づいて、前記リクエストを送信するステップにおける前記コマンドの送信を制限する制限ステップと、を含むブラウジング方法。
【請求項１４】
ネットワークに接続された画像形成装置を制御するコンピュータで実行されるブラウジングプログラムであって、
リクエストを受け付けるリクエスト受付ステップと、
前記リクエストが受け付けられることに応じて、前記受け付けられたリクエストにより定まる送信先のサーバに前記受け付けられたリクエストに対応するコマンドを送信するコマンド送信ステップと、
前記コマンドを実行する前記サーバが返信するコンテンツを受信するコンテンツ受信ステップと、
前記受信されたコンテンツを表示するコンテンツ表示ステップと、
前記受け付けられたリクエストにより定まる送信先のサーバから過去に受信されたコンテンツの状態または該サーバとの間の通信状態に基づいて、前記リクエストを送信するステップにおける前記コマンドの送信を制限する制限ステップと、を前記コンピュータに実行させるブラウジングプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、画像形成装置、通信制御方法、通信制御プログラム、ブラウジング方法およびブラウジングプログラムに関し、特にネットワークを介してＷｅｂサーバからデータを受信する画像形成装置、その画像形成装置で実行される通信制御方法、通信制御プログラム、ブラウジング方法およびブラウジングプログラムに関する。
【背景技術】
【０００２】
ネットワーク上のＷｅｂサーバにアクセスすることにより、該Ｗｅｂサーバに記憶されたコンテンツを受信し表示する、いわゆるＷｅｂブラウザが広く知られている。複数のＷｅｂブラウザを同時に起動することにより、複数のＷｅｂページを表示することができる。また、１つのＷｅｂブラウザにおいて、複数のタブ各々にＷｅｂページを表示することができる。このため、１つのＷｅｂサーバから複数のＷｅｂページをダウンロードすることができる。また、Ｗｅｂページによっては、定期的にＷｅｂサーバにアクセスして、Ｗｅｂページを更新する機能を備えたものがある。
【０００３】
一方、Ｗｅｂサーバは、１つのコンピュータから複数のリクエストを受信する場合、複数のリクエスト各々に対応してＷｅｂページを送信したり、リクエストに応じた処理をしたりすることになる。このため、リクエストが集中する場合には、負荷が大きくなる場合があるといった問題がある。
【０００４】
Ｗｅｂページへのアクセスを制限する技術として、特開２００６−１９２８７８号公報には、ネットワークと通信可能に接続された画像形成装置において実行され、該ネットワークよりコンテンツを受信し表示するためのブラウザにおける情報処理方法であって、起動時に、該ブラウザにより表示することが許可されているコンテンツに関する情報を表示する初期表示工程と、前記ブラウザにより表示することが許可されているコンテンツに含まれる、他のコンテンツへのリンク情報が選択されたか否かを検知する検知工程と、前記検知工程により、他のコンテンツへのリンク情報が選択されたことを検知した場合、前記他のコンテンツへのリンク情報が、前記ブラウザにより表示されているコンテンツと同一ドメイン内もしくは同一サイト内である場合、前記他のコンテンツへのアクセスを許可する情報処理方法が記載されている。
【０００５】
しかしながら、従来の情報処理方法は、ブラウザにより表示することが許可されているコンテンツのみが表示されるので、許可されていないコンテンツへのアクセスを制限することはできるが、許可されているコンテンツを記憶するＷｅｂサーバの負荷を低減することはできないといった問題がある。
【特許文献１】特開２００６−１９２８７８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
この発明は上述した問題を解決するためになされたもので、この発明の目的の１つは、サーバの負荷を低減することが可能な画像形成装置を提供することである。
【０００７】
この発明の他の目的は、サーバの負荷を低減することが可能な通信制御方法、通信制御プログラムを提供することである。
【０００８】
この発明のさらに他の目的は、サーバの負荷を低減することが可能なブラウジング方法およびブラウジングプログラムを提供することである。
【課題を解決するための手段】
【０００９】
上述した目的を達成するために、この発明のある局面によれば、画像形成装置は、ネットワークに接続されたサーバからコンテンツを受信し、受信されたコンテンツを表示する１以上のブラウジング手段と、１以上のブラウジング手段各々がサーバに送信するために出力するコマンドを取得するコマンド取得手段と、取得されたコマンドを、該コマンドの送信先のサーバに送信する送信手段と、取得されたコマンドを送信したサーバから過去に受信されたコンテンツの状態または該サーバとの間の通信状態に基づいて、送信手段によるコマンドの送信を制限する制限手段と、を備える。
【００１０】
この局面に従えば、ネットワークに接続されたサーバから過去に受信されたコンテンツの状態または該サーバとの間の通信状態に基づいて、コマンドの送信が制限されるので、サーバの負荷を低減することが可能な画像形成装置を提供することができる。
【００１１】
好ましくは、１以上のブラウジング手段各々により、過去にサーバから受信され、かつ、表示可能に保持されている１以上のコンテンツ各々に対して送信元のサーバを識別するためのサーバ識別情報を関連付ける関連付手段を、含み、制限手段は、取得手段によりコマンドが取得された時点で、関連付手段によって取得されたコマンドの送信先のサーバのサーバ識別情報と同じサーバ識別情報と関連付けられたコンテンツの数が所定のしきい値ならば、送信手段によるコマンドの送信を禁止する第１リクエスト禁止手段を、含む。
【００１２】
好ましくは、送信手段は、取得されたコマンドの送信先のサーバと通信するためにセッションを確立するセッション確立手段を、さらに含み、制限手段は、取得手段によりコマンドが取得された時点で、取得されたコマンドの送信先のサーバとの間で通信するためのセッションが既に確立されている場合、送信手段によるコマンドの送信を禁止する第２リクエスト禁止手段を、含む。
【００１３】
好ましくは、１以上のブラウジング手段各々は、リクエストを受け付けるリクエスト受付手段と、リクエストが受け付けられることに応じて、受け付けられたリクエストにより定まる送信先のサーバに受け付けられたリクエストに対応するコマンドを出力するコマンド出力手段と、出力されたコマンドを実行するサーバが返信するコンテンツを受信するコンテンツ受信手段と、受信されたコンテンツを表示するコンテンツ表示手段と、を含み、コンテンツ表示手段は、コンテンツ受信手段により受信された１以上のコンテンツを選択可能な状態で保持する保持手段と、保持された１以上のコンテンツのうちから選択された１つを表示する選択表示手段と、を含み、リクエスト受付手段は、保持手段により保持されている１以上のコンテンツのいずれかが発生するリクエストを受け付ける発生リクエスト受付手段を、含む。
【００１４】
好ましくは、１以上のブラウジング手段各々は、リクエストを受け付けるリクエスト受付手段と、リクエストが受け付けられることに応じて、受け付けられたリクエストにより定まる送信先のサーバに受け付けられたリクエストに対応するコマンドを出力するコマンド出力手段と、出力されたコマンドを実行するサーバが返信するコンテンツを受信するコンテンツ受信手段と、受信されたコンテンツを表示するコンテンツ表示手段と、を含み、リクエスト受付手段は、ユーザによる指示によりリクエストを受け付ける指示受付手段を、含む。
【００１５】
この発明の他の局面によれば、画像形成装置は、リクエストを受け付けるリクエスト受付手段と、リクエストが受け付けられることに応じて、受け付けられたリクエストにより定まる送信先のサーバに受け付けられたリクエストに対応するコマンドを送信するコマンド送信手段と、コマンドを実行するサーバが返信するコンテンツを受信するコンテンツ受信手段と、受信されたコンテンツを表示するコンテンツ表示手段と、受け付けられたリクエストにより定まる送信先のサーバから過去に受信されたコンテンツの状態または該サーバとの間の通信状態に基づいて、コマンド送信手段によるコマンドの送信を制限する制限手段と、を備える。
【００１６】
この局面に従えば、サーバから過去に受信されたコンテンツの状態または該サーバとの間の通信状態に基づいて、コマンドの送信が制限されるので、サーバの負荷を低減することが可能な画像形成装置を提供することができる。
【００１７】
好ましくは、コンテンツ表示手段は、コンテンツ受信手段により受信された１以上のコンテンツを選択可能な状態で保持する保持手段と、保持された１以上のコンテンツのうちから選択された１つを表示する選択表示手段と、を含み、制限手段は、リクエスト受付手段によりリクエストが受け付けられた時点で、保持手段により保持されている１以上のコンテンツのうち、受け付けられたリクエストにより定まる送信先のサーバと同じサーバから受信されたコンテンツの数が所定のしきい値ならば、コマンド送信手段によるコマンドの送信を禁止する第１リクエスト禁止手段を、含む。
【００１８】
好ましくは、制限手段は、リクエスト受付手段によりリクエストが受け付けられた時点で、該受け付けられたリクエストの送信先のサーバと通信するためのセッションが既に確立されている場合、コマンド送信手段によるコマンドの送信を禁止する第２リクエスト禁止手段を、含む。
【００１９】
好ましくは、リクエスト受付手段は、保持手段により保持されている１以上のコンテンツのいずれかが発生するリクエストを受け付ける発生リクエスト受付手段を、含む。
【００２０】
好ましくは、リクエスト受付手段は、ユーザによる指示によりリクエストを受け付ける指示受付手段を、含む。
【００２１】
この発明のさらに他の局面によれば、通信制御方法は、ブラウジングプログラムを実行可能な画像形成装置で実行される通信制御方法であって、ブラウジングプログラムを実行するタスクがネットワークに接続されたサーバに送信するために出力するコマンドを取得する取得ステップと、取得されたコマンドを、該コマンドの送信先のサーバに送信する送信ステップと、取得されたコマンドを送信したサーバから過去に受信されたコンテンツの状態または該サーバとの間の通信状態に基づいて、送信ステップにおける取得されたコマンドの送信を制限する制限ステップを含む。
【００２２】
この局面に従えば、サーバから過去に受信されたコンテンツの状態または該サーバとの間の通信状態に基づいて、コマンドの送信が制限されるので、サーバの負荷を低減することが可能な通信制御方法を提供することができる。
【００２３】
この発明のさらに他の局面によれば、通信制御プログラムは、ブラウジングプログラムを実行可能な画像形成装置を制御するコンピュータで実行される通信制御プログラムであって、ブラウジングプログラムを実行するタスクがネットワークに接続されたサーバに送信するために出力するコマンドを取得する取得ステップと、取得されたコマンドを、該コマンドの送信先のサーバに送信する送信ステップと、取得されたコマンドを送信したサーバから過去に受信されたコンテンツの状態または該サーバとの間の通信状態に基づいて、送信ステップにおける取得されたコマンドの送信を制限する制限ステップと、をコンピュータに実行させる。
【００２４】
この局面に従えば、サーバから過去に受信されたコンテンツの状態または該サーバとの間の通信状態に基づいて、コマンドの送信が制限されるので、サーバの負荷を低減することが可能な通信制御プログラムを提供することができる。
【００２５】
この発明のさらに他の局面に従えば、ブラウジンブ方法は、ネットワークに接続された画像形成装置で実行されるブラウジング方法であって、リクエストを受け付けるリクエスト受付ステップと、リクエストが受け付けられることに応じて、受け付けられたリクエストにより定まる送信先のサーバに受け付けられたリクエストに対応するコマンドを送信するコマンド送信ステップと、コマンドを実行するサーバが返信するコンテンツを受信するコンテンツ受信ステップと、受信されたコンテンツを表示するコンテンツ表示ステップと、受け付けられたリクエストにより定まる送信先のサーバから過去に受信されたコンテンツの状態または該サーバとの間の通信状態に基づいて、リクエストを送信するステップにおけるコマンドの送信を制限する制限ステップと、を含む。
【００２６】
この局面に従えば、サーバから過去に受信されたコンテンツの状態または該サーバとの間の通信状態に基づいて、コマンドの送信が制限されるので、サーバの負荷を低減することが可能なブラウジングプログラムを提供することができる。
【００２７】
この発明のさらに他の局面によれば、ブラウジングプログラムは、ネットワークに接続された画像形成装置を制御するコンピュータで実行されるブラウジングプログラムであって、リクエストを受け付けるリクエスト受付ステップと、リクエストが受け付けられることに応じて、受け付けられたリクエストにより定まる送信先のサーバに受け付けられたリクエストに対応するコマンドを送信するコマンド送信ステップと、コマンドを実行するサーバが返信するコンテンツを受信するコンテンツ受信ステップと、受信されたコンテンツを表示するコンテンツ表示ステップと、受け付けられたリクエストにより定まる送信先のサーバから過去に受信されたコンテンツの状態または該サーバとの間の通信状態に基づいて、リクエストを送信するステップにおけるコマンドの送信を制限する制限ステップと、をコンピュータに実行させる。
【００２８】
この局面に従えば、サーバから過去に受信されたコンテンツの状態または該サーバとの間の通信状態に基づいて、コマンドの送信が制限されるので、サーバの負荷を低減することが可能なブラウジングプログラムを提供することができる。
【図面の簡単な説明】
【００２９】
【図１】本発明の実施の形態における情報処理システムの全体概要を示す図である。
【図２】ＭＦＰの外観を示す斜視図である。
【図３】ＭＦＰのハードウエア構成の一例を示すブロック図である。
【図４】操作パネルの一例を示す平面図である。
【図５】ＭＦＰが備えるＣＰＵの機能の概要をＥＥＰＲＯＭに記憶する情報とともに示すブロック図である。
【図６】第ｎブラウジング部５１−ｎの詳細な機能の一例を示すブロック図である。
【図７】管理テーブルの一例を示す図である。
【図８】ブラウジング処理の流れの一例を示すフローチャートである。
【図９】通信制御処理の流れの一例を示すフローチャートである。
【図１０】ユーザの操作と処理の流れの一例を示す第１の図である。
【図１１】ユーザの操作と処理の流れの一例を示す第２の図である。
【図１２】第２の実施の形態におけるＭＦＰが備えるＣＰＵの機能の概要をＥＥＰＲＯＭに記憶する情報とともに示すブロック図である。
【図１３】第２の実施の形態におけるブラウジング処理の流れの一例を示すフローチャートである。
【図１４】リクエスト判定処理の流れの一例を示すフローチャートである。
【発明を実施するための形態】
【００３０】
以下、本発明の実施の形態について図面を参照して説明する。以下の説明では同一の部品には同一の符号を付してある。それらの名称および機能も同じである。したがってそれらについての詳細な説明は繰り返さない。
【００３１】
＜第１の実施の形態＞
図１は、本発明の実施の形態における情報処理システムの全体概要を示す図である。図１を参照して、情報処理システム１は、ネットワーク２に接続された複合機（Ｍｕｌｔｉ  Ｆｕｎｃｔｉｏｎ  Ｐｅｒｉｐｈｅｒａｌ）（以下、「ＭＦＰ」という）１００と、ＰＣ２００と、インターネット３に接続されたＷｅｂサーバ７，７Ａと、を含む。ＭＦＰ１００は、画像形成装置の一例であり、スキャナ機能、プリンタ機能、コピー機能、ファクシミリ機能等の複数の機能を備える。
【００３２】
ネットワーク２は、ローカルエリアネットワーク（ＬＡＮ）であり、ゲートウェイを介してインターネット３に接続されている。このため、ＭＦＰ１００は、インターネット３に接続されたＷｅｂサーバ７，７Ａと通信可能である。ＭＦＰ１００と、Ｗｅｂサーバ７，７Ａとの間の通信は、特に限定するものではないが、ＨＴＴＰ（ＨｙｐｅｒＴｅｘｔ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ）の通信プロトコルで通信する。なお、ネットワーク２は、ＬＡＮに限らず、インターネット、ワイドエリアネットワーク（ＷＡＮ）、公衆交換電話網等であってもよい。
【００３３】
ＭＦＰ１００は、ブラウジングプログラムがインストールされており、ブラウジングプログラムを実行することにより、ブラウザ機能を有する。例えば、ＭＦＰ１００は、ユーザによりＷｅｂサーバ７が記憶するウェブ（Ｗｅｂ）ページのＵＲＬ（Ｕｎｉｆｏｒｍ  Ｒｅｓｏｕｒｃｅ  Ｌｏｃａｔｏｒ）が指定されると、Ｗｅｂサーバ７にＵＲＬで特定されるＷｅｂページの送信を要求するリクエストを送信し、Ｗｅｂサーバ７がリクエストに応じて送信するＷｅｂページを受信し、表示する。ここで、Ｗｅｂページは、ＨＴＭＬ（ＨｙｐｅｒＴｅｘｔ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）またはＸＭＬ（Ｅｘｔｅｎｓｉｂｌｅ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）等のマークアップ言語で記述されたテキストデータである。以下、ＭＦＰ１００がＷｅｂベージをダウンロードして、表示する処理をブラウジング処理という。
【００３４】
Ｗｅｂサーバ７，７Ａそれぞれは、ブラウザ機能を有するＭＦＰ１００から送信されるリクエストに応じて、ＷｅｂページをＭＦＰ１００に送信する。さらに、Ｗｅｂサーバ７，７Ａそれぞれは、ＣＧＩ（Ｃｏｍｍｏｎ  Ｇａｔｅｗａｙ  Ｉｎｔｅｒｆａｃｅ）を有しており、ブラウザ機能を有するＭＦＰ１００からのリクエストに応じて、アプリケーションプログラムを起動する。例えば、Ｗｅｂサーバ７，７Ａそれぞれが、ファイルサーバとして機能する場合、ＭＦＰ１００からのリクエストに応じて、ＭＦＰ１００が送信するデータを受信し、受信されたデータを記憶するアプリケーションプログラムを起動する。
【００３５】
なお、本実施の形態においては画像形成装置の一例としてＭＦＰ１００を例に説明するが、ＭＦＰ１００に代えて、ブラウザ機能を備えた装置であれば、例えば、パーソナルコンピュータ、スキャナ、プリンタ、ファクシミリ等の情報処理装置であってもよい。また、Ｗｅｂサーバ７，７Ａは、イントラネット内にあってもよいことは言うまでもない。さらに、画像形成装置であるＭＦＰ１００自身にＷｅｂサーバの機能を兼ね備えさせることも可能である。
【００３６】
図２は、ＭＦＰの外観を示す斜視図である。図２を参照して、ＭＦＰ１００は、操作パネル９と、自動原稿搬送装置（ＡＤＦ）１０と、原稿読取部２０と、画像形成部３０と、給紙部４０と、を含む。
【００３７】
ＡＤＦ１０は、原稿給紙トレイ１１上にセットされた複数枚の原稿を１枚ずつ自動的に原稿読取部２０のプラテンガラス上に設定された所定の原稿読取位置まで搬送し、原稿読取部２０により原稿画像が読み取られた原稿を原稿排紙トレイ上に排出する。原稿読取部２０は、原稿読取位置に搬送されてきた原稿に光を照射する光源と、原稿で反射した光を受光する光電変換素子とを含み、原稿のサイズに応じた原稿画像を走査する。光電変換素子は、受光した光を電気信号である画像データに変換して、メモリに記憶する、または画像形成部３０に出力する。
【００３８】
画像形成部３０は、周知の電子写真方式により画像を形成するものであって、原稿読取部２０から入力される画像データにシェーディング補正などの各種のデータ処理を施し、データ処理後の画像データに基づいて、給紙部４０により搬送される用紙に画像を形成する。給紙部４０は、給紙トレイに収納された用紙を画像形成部３０に搬送する。
【００３９】
図３は、ＭＦＰのハードウエア構成の一例を示すブロック図である。図３を参照して、ＭＦＰ１００は、メイン回路１０１と、ＡＤＦ１０と、原稿読取部２０と、画像形成部３０と、給紙部４０と、ユーザインターフェースとしての操作パネル９と、を含む。
【００４０】
メイン回路１０１は、ＣＰＵ１１１と、通信インターフェース（Ｉ／Ｆ）部１１２と、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）１１３と、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）１１４と、ＥＥＰＲＯＭ（Ｅｌｅｃｔｒｏｎｉｃａｌｌｙ  Ｅｒａｓａｂｌｅ  ａｎｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  ＲＯＭ）１１５と、大容量記憶装置としてのハードディスクドライブ（ＨＤＤ）１１６と、ファクシミリ部１１７と、ネットワークＩ／Ｆ１１８と、ＣＤ−ＲＯＭ１１９Ａが装着される外部記憶装置１１９とを含む。ＣＰＵ１１１は、ＡＤＦ１０、原稿読取部２０、画像形成部３０、給紙部４０および操作パネル９と接続され、ＭＦＰ１００の全体を制御する。
【００４１】
ＲＯＭ１１３は、ＣＰＵ１１１が実行するプログラム、およびそのプログラムを実行するために必要なデータを記憶する。ＲＡＭ１１４は、ＣＰＵ１１１がプログラムを実行する際の作業領域として用いられる。
【００４２】
通信Ｉ／Ｆ部１１２は、ＭＦＰ１００を他の装置とシリアル通信ケーブルで接続するためのインターフェースである。なお、接続形態は、有線であっても無線であってもよい。
【００４３】
ファクシミリ部１１７は、公衆交換電話網（ＰＳＴＮ）に接続され、ＰＳＴＮにファクシミリデータを送信する、またはＰＳＴＮからファクシミリデータを受信する。ファクシミリ部１１７は、受信したファクシミリデータを、ＨＤＤ１１６に記憶する、または画像形成部３０に出力する。画像形成部３０は、ファクシミリ部１１７により受信されたファクシミリデータを用紙に印刷する。また、ファクシミリ部１１７は、ＨＤＤ１１６に記憶されたデータをファクシミリデータに変換して、ＰＳＴＮに接続されたファクシミリ装置に送信する。
【００４４】
ネットワークＩ／Ｆ１１８は、ＭＦＰ１００をネットワーク２に接続するためのインターフェースである。ＣＰＵ１１１は、ネットワークＩ／Ｆ１１８を介して、ＰＣ２００および、インターネット３に接続されたＷｅｂサーバ７，７Ａと通信可能である。
【００４５】
外部記憶装置１１９は、ＣＤ−ＲＯＭ１１９Ａが装着される。ＣＰＵ１１１は、外部記憶装置１１９を介してＣＤ−ＲＯＭ１１９Ａにアクセス可能であり、ＣＤ−ＲＯＭ１１９Ａに記憶されたプログラムをＲＡＭ１１４にロードして実行可能である。なお、ＣＰＵ１１１が実行するプログラムは、ＣＤ−ＲＯＭ１１９Ａに記憶されたプログラムに限られず、他の記憶媒体に記憶されたプログラムでもよく、ＨＤＤ１１６に記憶されたプログラムであってもよく、さらに、ネットワークＩ／Ｆ１１８を介してネットワーク２に接続された他のコンピュータによりＨＤＤ１１６に書き込みされたプログラムであってもよい。
【００４６】
なお、プログラムを記憶する記憶媒体としては、ＣＤ−ＲＯＭ１１９Ａに限られず、光ディスク（ＭＯ（Ｍａｇｎｅｔｉｃ  Ｏｐｔｉｃａｌ  Ｄｉｓｃ）／ＭＤ（Ｍｉｎｉ  Ｄｉｓｃ）／ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｃ））、ＩＣカード、光カード、マスクＲＯＭ、ＥＰＲＯＭ（Ｅｒａｓａｂｌｅ  Ｐｒｏｇｒａｍｍａｂｌｅ  ＲＯＭ）、ＥＥＰＲＯＭ（Ｅｌｅｃｔｒｉｃａｌｌｙ  Ｅｒａｓａｂｌｅ  ａｎｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  ＲＯＭ）などの半導体メモリでもよい。
【００４７】
ここでいうプログラムは、ＣＰＵ１１１が直接実行可能なプログラムだけでなく、ソースプログラム、圧縮処理されたプログラム、暗号化されたプログラム等を含む。
【００４８】
操作パネル９は、ＭＦＰ１００の上面に設けられ、表示部１０３と操作部１０５とを含む。表示部１０３は、液晶表示装置、有機ＥＬＤ（Ｅｌｅｃｔｒｏｌｕｍｉｎｅｓｃｅｎｃｅ  Ｄｉｓｐｌａｙ）等の表示装置であり、ユーザに対する指示メニューや取得した表示データに関する情報等を表示する。操作部１０５は、ユーザの操作を受け付け、受け付けられた操作をＣＰＵ１１１に出力する。
【００４９】
図４は、操作パネルの一例を示す平面図である。図４を参照して、操作部１０５は、表示部１０３の上に重畳して配置されたタッチパネル１０５Ａと、ブラウジング処理の実行を指示する操作が割り当てられたブラウザキー１０５Ｂと、スキャン処理の実行を指示する操作が割り当てられたスキャンキー１０５Ｃと、コピー処理の実行を指示する操作が割り当てられたコピーキー１０５Ｄと、テンキー１０５Ｅと、入力内容をキャンセルするためのクリアキー１０５Ｆと、スタートキー１０５Ｇと、を含む。タッチパネル１０５Ａは、透明な部材からなり、表示部１０３に重畳して配置される。タッチパネル１０５Ａは、ユーザがタッチパネル１０５Ａを指で触れると、触れられた位置を指示位置として検出し、ＣＰＵ１１１に出力する。
【００５０】
図５は、ＭＦＰが備えるＣＰＵの機能の概要をＥＥＰＲＯＭに記憶する情報とともに示すブロック図である。図５に示すＣＰＵ１１１の機能は、ＣＰＵ１１１がＲＯＭ１１３、ＥＥＰＲＯＭ１１５、ＨＤＤ１１６またはＣＤ−ＲＯＭ１１９Ａに記憶されたブラウジングプログラムおよび通信制御プログラムを実行することにより実現される。
【００５１】
図５を参照して、ＣＰＵ１１１は、第１〜第Ｎブラウジング部５１−１〜Ｎ（Ｎは２以上の整数）と、ネットワークＩ／Ｆ１１８を制御する通信制御部５３と、を含む。ＥＥＰＲＯＭ１１５は、管理テーブル９９を記憶する。
【００５２】
第１〜第Ｎブラウジング部５１−１〜Ｎそれぞれは、ＣＰＵ１１１がブラウジングプログラムを実行することによりＣＰＵ１１１に形成されるタスクである。ＣＰＵ１１１は、複数のブラウジングプログラムを実行することが可能であり、ＣＰＵ１１１が実行するブラウジングプログラムの数と同じ数のタスクがＣＰＵ１１１に形成される。
【００５３】
ＣＰＵ１１１は、操作部１０５の備えるブラウザキー１０５Ｂがユーザにより指示されることに応じて、ブラウジングプログラムを実行する。このため、ユーザによりブラウザキー１０５Ｂが指示される回数と同じ数のタスクをＣＰＵ１１１は生成する。また、Ｗｅｂページのリンク情報がユーザにより指示される場合に、ＣＰＵ１１１は新たなタスクを生成する。例えば、第１ブラウジング部５１−１により表示された第１Ｗｅｂページに含まれるリンク情報が指示された場合、該リンク情報に新たなウインドウを開くコマンドが割り当てられている場合には、ＣＰＵ１１１はブラウジングプログラムを実行することにより新たなタスク、例えば第２ブラウジング部５１−２を生成し、第２ブラウジング部５１−２が、第１Ｗｅｂページに含まれるリンク情報でリンクされた第２Ｗｅｂページを表示する。
【００５４】
さらに、第１〜第Ｎブラウジング部５１−１〜Ｎ各々は、複数のタブ各々でＷｅｂページを保持することができ、複数のタブの名称と、１つのＷｅｂページを表示する。複数のタブの名称のうちユーザにより指示された名称のタブが保持するＷｅｂページを表示する。また、第１〜第Ｎブラウジング部５１−１〜Ｎ各々は、表示されているＷｅｂページに含まれるリンク情報がユーザにより指示される場合に、新たなタブを生成し、新たなタブで新たなＷｅｂページを保持するとともに、保持したＷｅｂページを表示する。例えば、第１ブラウジング部５１−１により表示された第３Ｗｅｂページに含まれるリンク情報が指示された場合、該リンク情報に新たなタブを開くコマンドが割り当てられている場合には、第１ブラウジング部５１−１は新たなタブを生成し、リンク情報でリンクされた第４Ｗｅｂページを保持し、保持したＷｅｂページを表示する。
【００５５】
図５においては、第１〜第Ｎブラウジング部５１−１〜５１−Ｎが生成された場合を示している。ここでは、第１〜第Ｎブラウジング部５１−１〜Ｎのうちの任意の１つを第ｎブラウジング部５１−ｎ（ｎは、Ｎ以下の正の整数）で示す。
【００５６】
第ｎブラウジング部５１−ｎは、ＣＰＵ１１１によりタスクを識別するためのタスク識別情報が割り当てられる。また、第ｎブラウジング部５１−ｎは、ユーザが操作部１０５を操作することにより、第ｎブラウジング部５１−ｎを指定する操作と、終了する指示とを入力すると、ブラウジングプログラムの実行を終了する。
【００５７】
第ｎブラウジング部５１−ｎは、ブラウジング処理を実行する。図６は、第ｎブラウジング部５１−ｎの詳細な機能の一例を示すブロック図である。図６を参照して、第ｎブラウジング部５１−ｎは、サーバに対するリクエストを受け付けるリクエスト受付部７１と、受け付けられたリクエストに対応するコマンドを出力するコマンド出力部７３と、リクエストを受信するサーバが返信するコンテンツを受信するコンテンツ受信部７５と、受信されたコンテンツを表示するコンテンツ表示部７７と、を含む。
【００５８】
リクエスト受付部７１は、リクエストを受け付け、受け付けられたリクエストをコマンド出力部７３およびコンテンツ表示部７７に出力する。リクエスト受付部７１は、指示リクエスト受付部８１と、発生リクエスト受付部８３と、を含む。指示リクエスト受付部８１は、ユーザが操作部１０５に入力する操作に基づくリクエストを受け付ける。指示リクエスト受付部８１は、ユーザが操作部１０５にＵＲＬを入力すると、入力されたＵＲＬにアクセスするリクエストを受け付ける。また、指示リクエスト受付部８１は、ユーザが、操作部１０５にリンク情報を指示する操作を入力すると、指示されたリンク情報に含まれるＵＲＬにアクセスするリクエストを受け付ける。具体的には、後述するコンテンツ表示部７７により表示部１０３にＷｅｂページが表示された状態で、ユーザがＷｅｂページに含まれるリンク情報が表示された部分を指示すると、指示リクエスト受付部８１は、操作部１０５の備えるタッチパネル１０５Ａが検出する位置に基づいて、リンク情報を指示する操作を受け付ける。
【００５９】
指示リクエスト受付部８１は、コンテンツ表示部７７に、リクエストとともにタブの切換指示を出力する。ユーザが操作部１０５にリンク情報を指示する操作を入力する場合、指示されたリンク情報に、新たなタブを開くコマンドが割り当てられている場合、指示リクエスト受付部８１は、指示されたリンク情報に含まれるＵＲＬにアクセスするリクエストとともに、新たなタブを開くことを示す切換指示を出力する。
【００６０】
発生リクエスト受付部８３は、Ｗｅｂページに含まれるプログラムをＣＰＵ１１１が実行することにより生成されるタスクが出力するリクエストを受け付ける。ＣＰＵ１１１は、後述するコンテンツ表示部７７に含まれる保持部８５が保持するＷｅｂページに含まれるプログラムを実行する。Ｗｅｂページに含まれるプログラムは、例えば、ＪＡＶＡ（登録商標）、ＪＡＶＡ（登録商標）スクリプトで記述され、定期的にＷｅｂページを更新するために、新たなＷｅｂページの送信を要求するリクエストを定期的に送信するコマンドを含む。
【００６１】
コマンド出力部７３は、リクエスト受付部７１からリクエストが入力されることに応じて、入力されるリクエストにより定まる送信先のサーバ宛にリクエストに対応するコマンドを、通信制御部５３に出力する。リクエストは、サーバのネットワークアドレスであるＵＲＬと、サーバに実行を依頼するコマンドとを含む。サーバに実行を依頼するコマンドは、ＣＧＩ（Ｃｏｍｍｏｎ  Ｇａｔｅｗａｙ  Ｉｎｔｅｒｆａｃｅ）コマンドを含む。また、リクエストは、サーバにＷｅｂページの送信を依頼する場合には、そのＷｅｂページのネットワークアドレスであるＵＲＬ（Ｕｎｉｆｏｒｍ  Ｒｅｓｏｕｒｃｅ  Ｌｏｃａｔｏｒ）を含む。
【００６２】
通信制御部５３の詳細は後述するが、コマンド出力部７３から入力されるコマンドをＷｅｂサーバ７，７Ａに送信し、Ｗｅｂサーバ７，７Ａがコマンドを実行して返信するコンテンツを受信し、受信されたコンテンツをコンテンツ受信部７５に出力する。
【００６３】
コンテンツ受信部７５は、通信制御部５３から入力されるコンテンツを、コンテンツ表示部７７に出力する。コンテンツ表示部７７は、リクエスト受付部７１からリクエストが入力され、コンテンツ受信部７５からコンテンツが入力される。また、コンテンツ表示部７７は、リクエスト受付部７１から新たなタブを開くことを示す切換指示が入力される場合がある。コンテンツ表示部７７は、保持部８５と、選択表示部８７と、を含む。保持部８５は、コンテンツ受信部７５から入力されるコンテンツをタブの名称と関連付けてＲＡＭ１１４に記憶する。保持部８５は、複数のコンテンツをＲＡＭ１１４に記憶することが可能である。この場合には、複数のコンテンツ各々がタブの名称と関連付けられる。
【００６４】
保持部８５は、リクエスト受付部７１から新たなタブを開くことを示す切換指示が入力される場合、新たなタブを生成する。具体的には、コンテンツ受信部７５から入力されるコンテンツを、新たなタブの名称と関連付けてＲＡＭ１１４に記憶する。保持部８５は、リクエスト受付部７１から新たなタブを開くことを示す切換指示が入力されない場合、後述する選択表示部８７により選択されているタブの名称と関連付けられてＲＡＭ１１４に記憶されているコンテンツを、コンテンツ受信部７５から入力されるコンテンツで更新する。
【００６５】
複数のコンテンツのうちには、ＪＡＶＡ（登録商標）プログラム、ＪＡＶＡ（登録商標）スクリプト等のプログラムを含むものがある。このプログラムは、ＣＰＵ１１１により実行され、ＣＰＵ１１１がリクエストを発生する。ＣＰＵ１１１がプログラムを実行することにより発生するリクエストは、上述した発生リクエスト受付部８３に入力される。
【００６６】
選択表示部８７は、ＲＡＭ１１４に記憶されている１以上のコンテンツのうちから１つを選択し、表示部１０３に表示する。また、選択表示部８７は、ＲＡＭ１１４に記憶されている１以上のコンテンツ各々に関連付けられるタブの名称を、表示部１０３に選択可能に表示する。選択表示部８７は、ユーザが、表示部１０３に表示された１以上のタブの名称のうちから１つを選択する指示を操作部１０５に入力すると、選択する指示を受け、選択されたタブの名称に関連付けられたコンテンツをＲＡＭ１１４から読出し、表示部１０３に表示する。
【００６７】
図５に戻って、通信制御部５３は、コマンドを取得するコマンド取得部５５と、取得されたコマンドを送信するコマンド送信部５９と、コマンド送信部５９によるコマンドの送信を制限する制限部５７と、関連付部６１と、を含む。
【００６８】
コマンド取得部５５は、第１〜第Ｎブラウジング部５１−１〜５１−Ｎのいずれかがサーバ７，７Ａのいずれかに送信するために出力するコマンドを取得する。コマンド取得部５５は、コマンドを取得する際に、第１〜第Ｎブラウジング部５１−１〜５１−Ｎのうち取得されたコマンドを出力するブラウジング部から、そのブラウジング部を識別するためのタスク識別情報と、そのブラウジング部がＷｅｂページを表示するために処理対象としているタブを識別するためのタブ識別情報を取得する。コマンド取得部５５は、取得されたコマンドをコマンド送信部５９および制限部５７に出力するとともに、タスク識別情報とタブ識別情報との組とコマンドとを関連付部６１に出力する。
【００６９】
コマンド送信部５９は、セッション確立部６７を含む。セッション確立部６７は、コマンド取得部５５から入力されるコマンドの送信先のサーバと通信するためにセッションを、後述する制限部５７からセッション禁止信号が入力されないことを条件に、確立する。具体的には、セッション確立部６７は、制限部５７からセッション禁止信号が入力されない場合、コマンド取得部５５から入力されるコマンドに含まれるＵＲＬからインターネット３に接続されたＷｅｂサーバ７．７Ａのいずれかを特定し、通信Ｉ／Ｆ部１１２を制御して、Ｗｅｂサーバ７．７Ａのうちから特定されたＷｅｂサーバと通信するためのセッションを確立する。セッション確立部６７は、セッションを確立している間、セッション番号を関連付部６１に出力する。セッションは、本実施の形態においては、ＭＦＰ１００がＷｅｂサーバ７，７Ａのいずれかにコマンドを送信してから、Ｗｅｂサーバ７，７Ａのうちコマンドを送信したＷｅｂサーバからコマンドを実行した結果としてのコンテンツを受信するまでの間、確立される。
【００７０】
ここでは、第１ブラウジング部５１−１が、Ｗｅｂサーバ７のＵＲＬを含むコマンドを出力する場合に、コマンド送信部５９が、そのコマンドを取得する場合を説明する。通信する２つのアプリケーション・タスク、ここでは、第１ブラウジング部５１−１と、Ｗｅｂサーバ７がサービスを提供するためのアプリケーションプリグラムを実行して生成されるタスクとが通信する場合に、通信相手を互いに識別するためにセッション番号を共有する。セッションの確立は、２つのタスクがセッション番号を共有し、セッション番号を用いて通信ができる状態となることをいう。なお、セッションを確立する技術については、周知な技術を用いることができ、ここでは詳細な説明は繰り返さない。
【００７１】
コマンド送信部５９は、次に説明する制限部５７からセッション禁止信号または送信禁止信号が入力されないことを条件に、コマンド取得部５５から入力されるコマンドを、送信先のＷｅｂサーバ７に送信する。具体的には、コマンド送信部５９は、セッション確立部６７により確立されたセッションで通信Ｉ／Ｆ部１１２を介してＷｅｂサーバ７にコマンドを送信する。
【００７２】
コマンド送信部５９は、制限部５７から送信禁止信号が入力される場合、コマンド取得部５５から入力されるコマンドにより定まるＵＲＬで特定される送信先のＷｅｂサーバ７に代わって、エラーページを、第１〜第Ｎブラウジング部５１−１〜５１−Ｎのうちコマンド取得部５５により取得されたコマンドを出力するブラウジング部に、出力する。コマンド送信部５９は、制限部５７からセッション禁止信号が入力される場合、コマンド取得部５５から入力されるコマンドを破棄する。なお、エラーページを、第１〜第Ｎブラウジング部５１−１〜５１−Ｎのうちコマンド取得部５５により取得されたコマンドを出力するブラウジング部に、出力するようにしてもよい。
【００７３】
制限部５７からセッション禁止信号または送信禁止信号が入力される場合、コマンドが送信されないので、コマンド取得部５５から入力されるコマンドにより定まるＵＲＬで特定される送信先のＷｅｂサーバ７の負荷を低減することができる。
【００７４】
制限部５７は、コマンド取得部５５からコマンドが入力される。制限部５７は、第１リクエスト禁止部６５と、第２リクエスト禁止部６３と、を含む。第２リクエスト禁止部６３は、コマンド取得部５５からコマンドが入力された時点で、コマンド取得部５５から入力されるコマンドの送信先のＷｅｂサーバ７との通信状態に基づいて、コマンド送信部５９がＷｅｂサーバ７にコマンドを送信するのを禁止する。具体的には、第２リクエスト禁止部６３は、コマンド取得部５５から入力されるコマンドの送信先のＷｅｂサーバ７と通信するためのセッションが、既に確立されている場合、コマンド送信部５９がＷｅｂサーバ７にコマンドを送信するのを禁止する。第２リクエスト禁止部６３は、コマンド取得部５５から入力されるコマンドの送信先のＷｅｂサーバ７と通信するためのセッションが、確立されていない場合、コマンド送信部５９がＷｅｂサーバ７にコマンドを送信するのを禁止しない。第２リクエスト禁止部６３は、コマンドの送信を禁止する場合、セッション確立部６７にセッション禁止信号を出力する。
【００７５】
関連付部６１は、過去にＷｅｂサーバ７，７Ａのいずれかから受信され、かつ、第１〜第Ｎブラウジング部５１−１〜５１−Ｎのいずれかにより表示可能に保持されている１以上のコンテンツ各々に対して、Ｗｅｂサーバ７，７Ａのうちコンテンツの送信元のＷｅｂサーバを識別するためのサーバ識別情報を関連付ける。関連付部６１は、コマンド取得部５５からタスク識別情報とタブ識別情報との組とコマンドとが入力され、セッション確立部６７からセッション番号が入力される。関連付部６１は、セッション確立部６７からセッション番号が入力されると、コマンド取得部５５から入力されるタスク識別情報とタブ識別情報との組と、コマンドに含まれるＷｅｂサーバのＵＲＬと、セッション番号とを含む管理レコードを生成し、生成した管理レコードをＥＥＰＲＯＭ１１５に記憶されている管理テーブル９９に追加して記憶する。
【００７６】
図７は、管理テーブルの一例を示す図である。図７を参照して、管理テーブル９９は、５つの管理レコードを含む。管理レコードは、ブラウザ識別情報の項目と、タブ識別情報の項目と、サーバＵＲＬの項目と、セッション識別番号の項目と、状態の項目とを含む。ブラウザ識別情報の項目は、第１〜第Ｎブラウジング部５１−１〜５１−Ｎのタスクのいずれかを識別するためのタスク識別情報が設定される。タブ識別情報の項目は、処理対象となっているタブを識別するためのタブ識別情報が設定される。サーバＵＲＬの項目は、通信先のＷｅｂサーバを識別するためのＵＲＬが設定される。セッション識別番号の項目は、通信先のＷｅｂサーバとの間で通信のために確立されたセッションを識別するためのセッション番号が設定される。状態の項目は、セッションを状態が設定される。セッションの状態は、セッションが確立中であることを示す「確立」と、セッションが終了したことを示す「終了」とを含む。ここでは、第１〜第Ｎブラウジング部５１−１〜５１−Ｎそれぞれのタスクを識別するためのブラウザ識別情報を、第１〜第Ｎブラウザとしている。
【００７７】
図７に示す管理テーブル９９においては、タスク識別情報が「第１ブラウザ」の第１ブラウジング部５１−１において、タブ識別情報が「第１タブ」、「第２タブ」および「第３タブ」の３つのタブにおいて、ＵＲＬが「ａａｂｂｃｃ．ｃｏｍ」のＷｅｂサーバ７からダウンロードしたＷｅｂページがそれぞれ表示されている状態を示している。タブ識別情報が「第３タブ」のタブにおいては、セッションが確立中であり、ＵＲＬが「ａａｂｂｃｃ．ｃｏｍ」のＷｅｂサーバ７からＷｅｂページをダウンロード中であることを示している。
【００７８】
また、タスク識別情報が「第２ブラウザ」の第２ブラウジング部５１−２において、タブ識別情報が「第１タブ」および「第２タブ」の２つのタブにおいて、ＵＲＬが「ａａｂｂｃｃ．ｃｏｍ」のＷｅｂサーバ７からダウンロードしたＷｅｂページがそれぞれ表示されている状態を示している。
【００７９】
図５に戻って、関連付部６１は、セッション確立部６７からセッション番号が入力されると、状態の項目が「確立」の管理レコードを生成し、管理テーブル９９に追加して記憶し、セッション確立部６７から入力されていたセッション番号が入力されなくなると、管理レコードの状態の項目を「終了」に書き換える。さらに、関連付部６１は、第１〜第Ｎブラウジング部５１−１〜５１−Ｎのいずれか、例えば第１ブラウジング部５１−１がタブを閉じると、第１ブラウジング部５１−１からタスク識別情報と閉じられたタブのタブ識別情報とを取得し、管理テーブル９９に含まれる管理レコードのうち、取得されたタスク識別情報とタブ識別情報とを含む管理レコードを管理テーブル９９から削除する。
【００８０】
制限部５７が備える第１リクエスト禁止部６５は、コマンド取得部５５によりコマンドが取得された時点で、Ｗｅｂサーバ７．７Ａのうち取得されたコマンドの送信先のＷｅｂサーバと同じＷｅｂサーバからダウンロードされ、第１〜第Ｎブラウジング部５１−１〜５１−Ｎのいずれかにより表示されているコンテンツの数が所定のしきい値ならば、コマンド送信部５９がＷｅｂサーバにコマンドを送信するのを禁止する。ここでは、所定のしきい値を「６」としている。具体的には、第１リクエスト禁止部６５は、ＥＥＰＲＯＭ１１５に記憶されている管理テーブル９９を参照し、コマンド取得部５５からコマンドが入力される時点で、入力されたコマンドの送信先のＷｅｂサーバのＵＲＬと同じＵＲＬが「サーバＵＲＬ」の項目に設定された管理レコードの数が所定のしきい値「６」ならば、コマンド送信部５９がサーバにコマンドを送信するのを禁止する。第１リクエスト禁止部６５は、コマンド取得部５５からコマンドが入力される時点で、入力されたコマンドの送信先のＷｅｂサーバのＵＲＬと同じＵＲＬが「サーバＵＲＬ」の項目に設定された管理レコードの数が所定のしきい値「６」より小さいならば、コマンド送信部５９がＷｅｂサーバにコマンドを送信するのを禁止しない。第１リクエスト禁止部６５は、コマンドの送信を禁止する場合、コマンド送信部５９に送信禁止信号を出力する。
【００８１】
図８は、ブラウジング処理の流れの一例を示すフローチャートである。ブラウジング処理は、ＭＦＰ１００が備えるＣＰＵ１１１が、ＲＯＭ１１３、ＥＥＰＲＯＭ１１５、ＨＤＤ１１６またはＣＤ−ＲＯＭ１１９Ａに記憶されたブライジングプログラムを実行することにより、ＣＰＵ１１１により実行される処理である。
【００８２】
図８を参照して、ＣＰＵ１１１は、リクエストを受け付けたか否かを判断する（ステップＳ０１）。リクエストを受け付けるまで待機状態となり（ステップＳ０１でＮＯ）、リクエストを受け付けたならば（ステップＳ０１でＹＥＳ）、処理をステップＳ０２に進める。ユーザが操作部１０５に入力する操作に基づくリクエストを受け付けたか否かを判断する。ユーザが操作部１０５にＵＲＬを入力すると、入力されたＵＲＬにアクセスするリクエストを受け付ける。なお、例えば、「お気に入り」等に予め登録されたＵＲＬをユーザが指定することにより、ＵＲＬを受け付けるようにしてもよい。
【００８３】
また、ユーザが操作部１０５にリンク情報を指示する操作を入力すると、指示されたリンク情報に含まれるＵＲＬにアクセスするリクエストを受け付ける。具体的には、表示部１０３に既にＷｅｂページが表示されている場合、ユーザが表示されたＷｅｂページに含まれるリンク情報が表示された部分を指示すると、リンク情報を指示する操作を受け付け、指示されたリンク情報に含まれるＵＲＬにアクセスするリクエストを受け付ける。
【００８４】
さらに、表示部１０３に既にＷｅｂページが表示されている場合であって、そのＷｅｂページに含まれるプログラムが、定期的にＷｅｂページを更新するために、新たなＷｅｂページの送信を要求するリクエストを定期的に送信するコマンドを含む場合がある。コマンドは、例えば、ＪＡＶＡ（登録商標）プログラム、ＪＡＶＡ（登録商標）スクリプト等で記述される。この場合には、既に表示されているＷｅｂページに含まれるプログラムをＣＰＵ１１１が実行することにより生成されるタスクが出力するリクエストを受け付ける。
【００８５】
ステップＳ０２においては、受け付けられたリクエストが新たなウインドウを開く指示を含むか否かを判断する。新たなウインドウを開く指示を含むならば処理をステップＳ０９に進めるが、そうでなければ処理をステップＳ０３に進める。ステップＳ０９においては、ブラウジングプログラムを起動し、処理をステップＳ１０に進める。ブラウジングプログラムを起動する際に、ステップＳ０１において受け付けられたリクエストに含まれるＵＲＬを、引数として起動するブラウジングプログラムを実行するタスクに渡す。新たに起動するブラウジングプログラムを実行するタスクは、図８に示すのと同じブラウジングプログラムを実行するので、引数として入力されるＵＲＬを、ステップＳ０１において受け付けることになる。
【００８６】
一方、ステップＳ０３においては、ステップＳ０１において受け付けられたリクエストが新たなタブを開く指示を含むか否かを判断する。新たなタブを開く指示を含むならば処理をステップＳ０４に進めるが、そうでなければ処理をステップＳ０５に進める。ステップＳ０５においては、新規タブを生成し、表示部１０３に表示する。この段階においては、新規タブに表示するための内容が存在しないため、表示部１０３には、白紙の画面が表示される。なお、受信中である旨のメッセージ等を表示するようにしてもよい。
【００８７】
ステップＳ０５においては、ステップＳ０１において受け付けられたリクエストに対応するコマンドを送信する。通信Ｉ／Ｆ部１１２を制御して、リクエストにより定まる送信先のＷｅｂサーバ宛にコマンドを送信する。具体的には、ステップＳ０１において受け付けられたＵＲＬを含むＧＥＴコマンドを、通信Ｉ／Ｆ部１１２を介してネットワーク２に送信する。ここでは、ＧＥＴコマンドに含まれるＵＲＬが、Ｗｅｂサーバ７を特定する場合を例に説明する。ＧＥＴコマンドに含まれるＵＲＬがＷｅｂサーバ７を特定する場合、ＧＥＴコマンドはＷｅｂサーバ７により受信される。ＧＥＴコマンドを受信するＷｅｂサーバ７においては、ＵＲＬで特定されるＷｅｂページを、ＧＥＴコマンドを送信してきたＭＦＰ１００に返信するので、通信Ｉ／Ｆ部１１２がＷｅｂページを受信する。
【００８８】
ステップＳ０６においては、通信Ｉ／Ｆ部１１２がＷｅｂページを受信するまで待機状態となり（ステップＳ０６でＮＯ）、Ｗｅｂページを受信すると（ステップＳ０６でＹＥＳ）、処理をステップＳ０７に進める。
【００８９】
次のステップＳ０７においては、受信されたＷｅｂページを保持する。具体的には、受信されたＷｅｂページをタブの名称と関連付けてＲＡＭ１１４に記憶する。ステップＳ０４において新たなタブが生成された場合には、新たなタブの名称とＷｅｂページとを関連付けてＲＡＭ１１４に記憶する。ステップＳ０４において新たなタブが生成されない場合、表示部１０３に表示の対象となっているタブの名称と関連付けてＲＡＭ１１４に記憶されているＷｅｂページを、受信されたＷｅｂページで書き換える。
【００９０】
次のステップＳ０８においては、受信されたＷｅｂページを表示部１０３に表示し、処理をステップＳ１０に進める。ステップＳ０４において新規に新規タブか生成されている場合には、新規タブにＷｅｂページを表示し、新規タブか生成されていない場合には、表示部１０３に表示の対象となっているタブに表示されているＷｅｂページを、ステップＳ０６において受信されたＷｅｂページで書き換える。
【００９１】
次のステップＳ１０においては、終了指示を受け付けたか否かを判断する。ユーザがタッチパネル１０５Ａを操作することにより、ブラウジング処理を終了する指示を受け付けたか否かを判断する。ブラウジング処理を終了する指示は、ウインドウを閉じる操作を含む。終了指示を受け付けたならば（ステップＳ１０でＹＥＳ）、ブラウジング処理を終了するが、そうでなければ（ステップＳ１０でＮＯ）、処理をステップＳ０１に戻す。
【００９２】
図９は、通信制御処理の流れの一例を示すフローチャートである。通信制御処理は、ＭＦＰ１００が備えるＣＰＵ１１１が、ＲＯＭ１１３、ＥＥＰＲＯＭ１１５、ＨＤＤ１１６またはＣＤ−ＲＯＭ１１９Ａに記憶された通信制御プログラムを実行することにより、ＣＰＵ１１１により実行される処理である。
【００９３】
図９を参照して、ＣＰＵ１１１は、コマンドを取得したか否かを判断する。第１〜第Ｎブラウジング部５１−１〜５１−Ｎのいずれかが出力するコマンドを取得したか否かを判断する。コマンドを取得するまで待機状態となり（ステップＳ２１でＮＯ）、コマンドを取得したならば（ステップＳ２１でＹＥＳ）、処理をステップＳ２２に進める。
【００９４】
ステップＳ２２においては、コマンドを出力した出力元を特定する。ステップＳ２１において取得されたコマンドを第１〜第Ｎブラウジング部５１−１〜５１−Ｎのいずれかが出力したかを特定する。具体的には、第１〜第Ｎブラウジング部５１−１〜５１−Ｎのうち、コマンドを出力したタスクを識別するためのタスク識別情報と、特定されたタスクが処理対象とするタブのタブ識別情報を取得する。
【００９５】
次のステップＳ２３においては、ステップＳ２１において取得されたコマンドの送信先を特定する。ステップＳ２１において取得されたコマンドに含まれるＵＲＬを抽出することにより、Ｗｅｂサーバ７，７Ａのうち送信先のＷｅｂサーバのＵＲＬを特定する。ここでは、Ｗｅｂサーバ７が送信先に特定された場合を例に説明する。次のステップＳ２４においては、ステップＳ２３において特定された送信先のＷｅｂサーバ７から受信済の表示コンテンツの数をカウントする。表示コンテンツは、第１〜第Ｎブラウジング部５１−１〜５１−Ｎのいずれかが保持しているコンテンツである。ここでは、ＥＥＰＲＯＭ１１５に記憶されている管理テーブル９９を検索し、ステップＳ２３において特定された送信先のＷｅｂサーバ７のＵＲＬと同じＵＲＬがサーバＵＲＬの項目に設定されていいる管理レコードのすべてを抽出し、抽出された管理レコードの数を、カウントする。
【００９６】
ステップＳ２６においては、カウント数がしきいち値ＴＮか否かを判断する。カウント数がしきいち値ＴＮと同じならば処理をステップＳ２７に進めるが、そうでなければ処理をステップＳ２８に進める。ステップＳ２８においては、セッションが確立済みか否かを判断する。ステップＳ２３において特定された送信先のＷｅｂサーバ７との間で通信のためのセッションが確立しているか否かを判断する。送信先のＷｅｂサーバ７との間でセッションが確立済みならば処理を終了するが、そうでなければ処理をステップＳ２９に進める。
【００９７】
ステップＳ２７においては、エラーページを出力し、処理を終了する。具体的には、予め定められたエラーメッセージを含むＷｅｂページを、第１〜第Ｎブラウジング部５１−１〜５１−ＮのうちステップＳ２２において特定された出力元のタスクに出力する。例えば、第１ブラウジング部５１−１が、Ｗｅｂサーバ７のＵＲＬを含むコマンドを出力する場合、Ｗｅｂサーバ７にコマンドを送信することなく、Ｗｅｂサーバ７に代わって、エラーメッセージを含むＷｅｂページを第１ブラウジング部５１−１に出力する。このため、コマンドがＷｅｂサーバ７に送信されないので、Ｗｅｂサーバ７の負荷を軽減することができる。
【００９８】
一方、ステップＳ２９においては、ステップＳ２３において特定された送信先のＷｅｂサーバ７に接続要求を送信する。次のステップＳ３０においては、セッションが確立したか否かを判断する。セッションが確立するまで待機状態となり（ステップＳ３０でＮＯ）、セッションが確立したならば（ステップＳ３０でＹＥＳ）、処理をステップＳ３１に進める。ステップＳ３１においては、ステップＳ２１において取得されたコマンドを、ステップＳ２３において特定された送信先のＷｅｂサーバ７に通信Ｉ／Ｆ部１１２を介して送信する。
【００９９】
次のステップＳ３２においては、管理レコードを生成する。ステップＳ２２において特定された出力元のタスク識別情報およびタブ識別情報と、ステップＳ２３において特定された送信先のＷｅｂサーバ７のＵＲＬとを含む管理レコードを生成する。そして、生成された管理レコードを、ＥＥＰＲＯＭ１１５の管理テーブル９９に追加して記憶する（ステップＳ３３）。
【０１００】
次のステップＳ３４においては、ステップＳ３１においてコマンドを送信したＷｅｂサーバ７からコンテンツを受信したか否かを判断する。コンテンツを受信するまで待機状態となり（ステップＳ３４でＮＯ）、コンテンツを受信したならば（ステップＳ３４でＹＥＳ）、処理をステップＳ３５に進める。次のステップＳ３５においては、受信されたコンテンツを、ステップＳ２２において特定された出力元のタスクに出力する。そして、ステップＳ３６において、ステップＳ３０において確立したセッションを終了し、処理を終了する。
【０１０１】
図１０は、ユーザの操作と処理の流れの一例を示す第１の図である。図１０に示す符号は、図８および図９に示したフローチャートに示した処理と同じ処理に、同じ符号を付している。また、図１０では、ＭＦＰ１００が備えるＣＰＵ１１１が、ブラウジングプログラムを実行することにより実現される第１ブラウジング部５１−１のタスクで実行される処理と、ＣＰＵ１１１が通信制御プログラムを実行することにより実現される通信制御部５３のタスクで実行される処理と、サーバで実行される処理とを、時系列で示している。なお、ＭＦＰ１００が備えるＣＰＵ１１１がブラウジングプログラムを実行することにより実現される第２〜第Ｎブラウジング部５１−２〜５１−Ｎのタスクで処理が実行されるが、図１０では示していない。
【０１０２】
図１０を参照して、ユーザがＭＦＰ１００にＵＲＬを入力すれば、第１ブラウジング部５１−１がＵＲＬをリクエストとして受け付ける（ステップＳ０１）。第１ブラウジング部５１−１は、受け付けられたＵＲＬを含むコマンドを通信制御部５３に出力する（ステップＳ０５）。通信制御部５３は、コマンドを取得し（ステップＳ２１）、コマンドに含まれるＵＲＬから特定されるＷｅｂサーバ７との間でセッションを確立し（ステップＳ３０）、コマンドをサーバ７に送信する（ステップＳ３１）。コマンドを受信するサーバ７は、Ｗｅｂページを返信するので、通信制御部５３は、Ｗｅｂサーバ７が送信するＷｅｂページを受信し（ステップＳ３４）、受信されたＷｅｂページを第１ブラウジング部５１−１に出力し（ステップＳ３５）、Ｗｅｂサーバ７との間のセッションを終了する（ステップＳ３６）。第１ブラウジング部５１−１は、Ｗｅｂページが入力されると（ステップＳ０６）、Ｗｅｂページを含む第１タブを表示部１０３に表示する（ステップＳ０８）。
【０１０３】
次に、ユーザが、表示部１０３に表示されたＷｅｂページに含まれるサブメニューＡを選択する指示をＭＦＰ１００に入力すると、第１ブラウジング部５１−１は、サブメニューＡの選択を、リクエストとして受け付ける（ステップＳ０１）。そして、第２タブを生成し、第２タブを表示部１０３に表示する（ステップＳ０４）。この段階において、第２タブとして表示するコンテンツは存在しないので、表示部１０３には、白紙の第２タブが表示される。第１ブラウジング部５１−１は、サブメニューＡのＵＲＬを含むコマンドを通信制御部５３に出力する（ステップＳ０５）。通信制御部５３は、コマンドを取得し（ステップＳ２１）、Ｗｅｂサーバ７から受信されたコンテンツを表示対象とするタブの数をカウントし、タブ数がしきい値ＴＮと同じか否かを判断する（ステップＳ２５，Ｓ２６）。ここでは、タブ数がしきい値ＴＮより小さいとし、この場合は、通信制御部５３は、コマンドに含まれるＵＲＬから特定されるＷｅｂサーバ７との間でセッションを確立し（ステップＳ３０）、コマンドをＷｅｂサーバ７に送信する（ステップＳ３１）。コマンドを受信するＷｅｂサーバ７は、Ｗｅｂページを返信するので、通信制御部５３は、サーバ７が送信するＷｅｂページを受信し（ステップＳ３４）、受信されたＷｅｂページを第１ブラウジング部５１−１に出力し（ステップＳ３５）、Ｗｅｂサーバ７との間のセッションを終了する（ステップＳ３６）。第１ブラウジング部５１−１は、Ｗｅｂページが入力されると（ステップＳ０６）、Ｗｅｂページを含む第２タブを表示部１０３に表示する（ステップＳ０８）。
【０１０４】
さらに、ユーザが、表示部１０３に表示されたＷｅｂページに含まれるサブメニューＢを選択する指示をＭＦＰ１００に入力すると、第１ブラウジング部５１−１は、サブメニューＢの選択を、リクエストとして受け付ける（ステップＳ０１）。そして、第３タブを生成し、第３タブを表示部１０３に表示する（ステップＳ０４）。この段階において、第３タブとして表示するコンテンツは存在しないので、表示部１０３には、白紙の第３タブが表示される。第１ブラウジング部５１−１は、サブメニューＢのＵＲＬを含むコマンドを通信制御部５３に出力する（ステップＳ０５）。
【０１０５】
通信制御部５３は、コマンドを取得し（ステップＳ２１）、Ｗｅｂサーバ７から受信されたコンテンツを表示対象とするタブの数をカウントし、タブ数がしきい値ＴＮと同じか否かを判断する（ステップＳ２５，Ｓ２６）。ここでは、タブ数がしきい値ＴＮと同じとし、この場合は、通信制御部５３は、エラーページを第１ブラウジング部５１−１に出力する（ステップＳ２７）。第１ブラウジング部５１−１は、エラーページが入力されると（ステップＳ０６）、エラーページを含む第３タブを表示部１０３に表示する（ステップＳ０８）。
【０１０６】
Ｗｅｂサーバ７から受信されたコンテンツを表示対象とするタブの数が、しきい値ＴＮと同じ場合は、サーバ７にコマンドが送信されないので、Ｗｅｂサーバ７の負荷を低減することができる。
【０１０７】
図１１は、ユーザの操作と処理の流れの一例を示す第２の図である。図１１に示す符号は、図８および図９に示したフローチャートに示した処理と同じ処理に、同じ符号を付している。また、図１１では、ＭＦＰ１００が備えるＣＰＵ１１１が、ブラウジングプログラムを実行することにより実現される第１ブラウジング部５１−１のタスクで実行される処理と、ＣＰＵ１１１が通信制御プログラムを実行することにより実現される通信制御部５３のタスクで実行される処理と、サーバで実行される処理とを、時系列で示している。なお、ＭＦＰ１００が備えるＣＰＵ１１１がブラウジングプログラムを実行することにより実現される第２〜第Ｎブラウジング部５１−２〜５１−Ｎのタスクで処理が実行されるが、図１１では示していない。
【０１０８】
図１１を参照して、ユーザがＭＦＰ１００にＵＲＬを入力すれば、第１ブラウジング部５１−１がＵＲＬをリクエストとして受け付ける（ステップＳ０１）。第１ブラウジング部５１−１は、受け付けられたＵＲＬを含むコマンドを通信制御部５３に出力する（ステップＳ０５）。通信制御部５３は、コマンドを取得し（ステップＳ２１）、コマンドに含まれるＵＲＬから特定されるＷｅｂサーバ７との間でセッションを確立し（ステップＳ３０）、コマンドをＷｅｂサーバ７に送信する（ステップＳ３１）。コマンドを受信するＷｅｂサーバ７は、Ｗｅｂページを返信するので、通信制御部５３は、Ｗｅｂサーバ７が送信するＷｅｂページを受信し（ステップＳ３４）、受信するとＷｅｂページを第１ブラウジング部５１−１に出力し（ステップＳ３５）、Ｗｅｂサーバとの間のセッションを終了する（ステップＳ３６）。第１ブラウジング部５１−１は、Ｗｅｂページが入力されると（ステップＳ０６）、Ｗｅｂページを含む第１タブを表示部１０３に表示する（ステップＳ０８）。
【０１０９】
次に、ユーザが、表示部１０３に表示されたＷｅｂページに含まれる処理の指示が関連付けられたボタンを指示すれば、第１ブラウジング部５１−１は、処理を実行する指示を、リクエストとして受け付ける（ステップＳ０１）。Ｗｅｂページに含まれる処理の指示が関連付けられたボタンは、ＣＧＩコマンドと関連付けられている。第１ブラウジング部５１−１は、ＣＧＩコマンドを通信制御部５３に出力する（ステップＳ０５）。通信制御部５３は、ＣＧＩコマンドを取得し（ステップＳ２１）、ＣＧＩコマンドに含まれるＵＲＬから特定されるＷｅｂサーバ７との間でセッションを確立し（ステップＳ３０）、ＣＧＩコマンドをＷｅｂサーバ７に送信する（ステップＳ３１）。ＣＧＩコマンドを受信するＷｅｂサーバ７は、ＣＧＩコマンドを実行し、処理結果を返信するが、ここでは、ＣＧＩコマンドに所定の時間を要するとする。
【０１１０】
次に、ユーザがサブメニューＡを選択する指示をＭＦＰ１００に入力すると、第１ブラウジング部５１−１は、サブメニューＡの選択を、リクエストとして受け付ける（ステップＳ０１）。そして、第１ブラウジング部５１−１は、サブメニューＡのＵＲＬを含むコマンドを通信制御部５３に出力する（ステップＳ０５）。通信制御部５３は、コマンドを取得し（ステップＳ２１）、コマンドに含まれるＵＲＬで特定されるＷｅｂサーバ７との間で、セッションが確立しているか否かを判断する（ステップＳ２８）。ここでは、先にＣＧＩコマンドを送信した処理が、Ｗｅｂサーバ７で実行されている。このため、通信制御部５３は、セッションが確立していると判断し、第１ブラウジング部５１−１から取得されたサブメニューＡのＵＲＬを含むコマンドを、破棄する。
【０１１１】
さらに、ユーザがサブメニューＢを選択する指示をＭＦＰ１００に入力すると、第１ブラウジング部５１−１は、サブメニューＢの選択を、リクエストとして受け付ける（ステップＳ０１）。そして、第１ブラウジング部５１−１は、サブメニューＢのＵＲＬを含むコマンドを通信制御部５３に出力する（ステップＳ０５）。通信制御部５３は、コマンドを取得し（ステップＳ２１）、コマンドに含まれるＵＲＬで特定されるＷｅｂサーバ７との間で、セッションが確立しているか否かを判断する（ステップＳ２８）。ここでは、先にＣＧＩコマンドを送信した処理が、Ｗｅｂサーバ７で実行されている。このため、通信制御部５３は、セッションが確立していると判断し、第１ブラウジング部５１−１から取得されたサブメニューＢのＵＲＬを含むコマンドを、破棄する。
【０１１２】
さらに、ユーザがサブメニューＣを選択する指示をＭＦＰ１００に入力すると、第１ブラウジング部５１−１は、サブメニューＣの選択を、リクエストとして受け付ける（ステップＳ０１）。そして、第１ブラウジング部５１−１は、サブメニューＣのＵＲＬを含むコマンドを通信制御部５３に出力する（ステップＳ０５）。通信制御部５３は、コマンドを取得し（ステップＳ２１）、コマンドに含まれるＵＲＬで特定されるＷｅｂサーバ７との間で、セッションが確立しているか否かを判断する（ステップＳ２８）。ここでは、先にＣＧＩコマンドを送信した処理が、Ｗｅｂサーバ７で実行されている。このため、通信制御部５３は、セッションが確立していると判断し、第１ブラウジング部５１−１から取得されたサブメニューＣのＵＲＬを含むコマンドを、破棄する。
【０１１３】
ＣＧＩコマンドを受信するＷｅｂサーバ７は、ＣＧＩコマンドを実行が完了すると、処理結果であるＷｅｂページを送信するので、通信制御部５３は、Ｗｅｂサーバ７が送信するＷｅｂページを受信し（ステップＳ３４）、受信されたＷｅｂページを第１ブラウジング部５１−１に出力し（ステップＳ３５）、Ｗｅｂサーバとの間のセッションを終了する（ステップＳ３６）。第１ブラウジング部５１−１は、Ｗｅｂページが入力されると（ステップＳ０６）、Ｗｅｂページを表示部１０３に表示する（ステップＳ０８）。
【０１１４】
Ｗｅｂサーバ７との間で通信のためのセッションが確立されている間は、Ｗｅｂサーバ７にコマンドを送信しないので、Ｗｅｂサーバ７の負荷を低減することができる。
【０１１５】
以上説明したように、本実施の形態におけるＭＦＰ１００は、Ｗｅｂサーバ７，７Ａのいずれかからコンテンツを受信し、受信されたコンテンツを表示する第１〜第Ｎブラウジンブグ５１−１〜５１−Ｎと、第１〜第Ｎブラウジンブグ５１−１〜５１−Ｎ各々がＷｅｂサーバ７，７Ａのいずれかに送信するために出力するコマンドを取得するコマンド取得部５５と、取得されたコマンドを、該コマンドの送信先のサーバに送信するコマンド送信部５９と、取得されたコマンドを送信したサーバから過去に受信されたコンテンツの状態または該サーバとの間の通信状態に基づいて、送信手段によるコマンドの送信を制限する制限部５７と、を備える。制限部５７は、Ｗｅｂサーバ７，７Ａから過去に受信されたコンテンツの状態またはＷｅｂサーバ７，７Ａとの間の通信状態に基づいて、コマンドの送信を制限するので、Ｗｅｂサーバ７，７Ａの負荷を低減することができる。
【０１１６】
また、制限部５７は、コマンドが取得された時点で、第１〜第Ｎブラウジンブグ５１−１〜５１−Ｎ各々により保持されているＷｅｂページであって、コマンドの送信先と同じ送信元から受信されたＷｅｂページの数が所定のしきい値ＴＮならば、コマンドの送信を禁止する。このため、同じＷｅｂサーバから受信され、表示可能に保持されているＷｅｂページの数を制限することによって、Ｗｅｂサーバの負荷を低減することができる。
【０１１７】
また、制限部５７は、コマンドが取得された時点で、取得されたコマンドの送信先のＷｅｂサーバとの間で通信するためのセッションが既に確立されている場合、コマンドの送信を禁止する。このため、同じＷｅｂサーバとの間で確立するセッションの数を制限することによって、Ｗｅｂサーバの負荷を低減することができる。
【０１１８】
特に、ＷｅｂサーバがＭＦＰ１００内に設けられている場合には、自身の負荷に応じて、各制限の程度をコントロールすることができる。
【０１１９】
＜第２の実施の形態＞
第１の実施の形態におけるＭＦＰ１００は、ＣＰＵ１１１が、ブラウジングプログラムを実行するタスクを複数形成するようにしたが、第２の実施の形態におけるＭＦＰ１００は、ＣＰＵ１１１が単一のブラウジングプログラムを実行するようにしたものである。以下、第２の実施の形態おける情報処理システム１について、第１の実施の形態における情報処理システム１と異なる点を主に説明する。
【０１２０】
図１２は、第２の実施の形態におけるＭＦＰが備えるＣＰＵの機能の概要をＥＥＰＲＯＭに記憶する情報とともに示すブロック図である。図１２に示すＣＰＵ１１１の機能は、ＣＰＵ１１１がＲＯＭ１１３、ＥＥＰＲＯＭ１１５、ＨＤＤ１１６またはＣＤ−ＲＯＭ１１９Ａに記憶されたブラウジングプログラムを実行することにより実現される。
【０１２１】
図１２を参照して、図６に示したＣＰＵ１１１の機能と異なる点は、制限部９１が追加された点、コマンド出力部７３およびコンテンツ受信部７５がコマンド送信部９７およびコンテンツ受信部７５Ａにそれぞれ変更された点である。その他の機能は、図６に示した機能と同じなので、ここでは異なる点を主に説明する。
【０１２２】
コマンド送信部９７は、次に説明する制限部９１からセッション禁止信号または送信禁止信号が入力されないことを条件に、リクエスト受付部７１により受け付けられたリクエストにより定まるコマンドを、リクエストにより定まる送信先のＷｅｂサーバに送信する。
【０１２３】
制限部９１は、リクエスト受付部７１がリクエストを受け付けることに応じて出力するリクエストが入力される。リクエストは、ユーザにより入力されたＵＲＬにアクセスするリクエストと、ユーザにより指示されたリンク情報に含まれるＵＲＬにアクセスするリクエストと、Ｗｅｂページに含まれるプログラムをＣＰＵ１１１が実行することにより生成されるタスクが出力するリクエストと、を含む。
【０１２４】
制限部９１は、第１リクエスト禁止部９３と、第２リクエスト禁止部９５と、を含む。第１リクエスト禁止部９３は、リクエスト受付部７１によりリクエストが受け付けられた時点で、受け付けられたリクエストで特定される送信先のＷｅｂサーバと同じＷｅｂサーバからダウンロードされて既に表示されているコンテンツの数が所定のしきい値ならば、コマンド送信部９７がＷｅｂサーバにコマンドを送信するのを禁止する。換言すれば、複数のタブにＷｅｂページを表示している場合であって、表示されている複数のＷｅｂページのうちで、リクエストで特定される送信先のＷｅｂサーバからダウンロードされたＷｅｂページの数を、しきい値と比較する。第１リクエスト禁止部９３は、保持部８５が保持しているタブごとのＷｅｂページを参照し、受け付けられたリクエストで特定される送信先のＷｅｂサーバと同じＷｅｂサーバからダウンロードされて既に表示されているコンテンツの数をカウントする。
【０１２５】
第２リクエスト禁止部９５は、リクエスト受付部７１からリクエストが入力された時点で、リクエスト受付部７１から入力されるリクエストにより定まる送信先のＷｅｂサーバとの通信状態に基づいて、コマンド送信部９７がＷｅｂサーバにコマンドを送信するのを禁止する。具体的には、第２リクエスト禁止部９５は、リクエスト受付部７１から入力されるリクエストにより定まるコマンドの送信先のＷｅｂサーバとの間で通信するためのセッションが、既に確立されている場合、コマンド送信部９７がＷｅｂサーバにコマンドを送信するのを禁止する。第２リクエスト禁止部９５は、コンテンツ受信部７５Ａが通信のためにセッションを確立しているＷｅｂサーバを特定する情報を、コンテンツ受信部７５Ａから取得する。
【０１２６】
制限部９１は、第１リクエスト禁止部９３および第２リクエスト禁止部９５のいずれかが、Ｗｅｂサーバにコマンドを送信するのを禁止する場合、リクエスト受付部７１から入力されるリクエストにより定まる送信先のＷｅｂサーバに代わって、コンテンツ受信部７５Ａにエラーページを出力する。リクエスト受付部７１から入力されるリクエストにより定まる送信先のＷｅｂサーバにコマンドが送信されないので、Ｗｅｂサーバの負荷を低減することができる。
【０１２７】
制限部９１は、第１リクエスト禁止部９３および第２リクエスト禁止部９５のいずれもＷｅｂサーバにコマンドを送信するのを禁止しない場合、リクエスト受付部７１から入力されるリクエストを、コマンド送信部９７に出力する。
【０１２８】
コマンド送信部９７は、制限部９１からリクエストが入力されることに応じて、リクエストで定まるコマンドを、リクエストで定まる送信先のＷｅｂサーバに送信する。具体的には、コマンド送信部９７は、リクエストで定まる送信先のＷｅｂサーバとの間で通信のためのセッションを確立し、確立されたセッションで通信Ｉ／Ｆ部１１２を介してリクエストで定まるコマンドを送信する。
【０１２９】
コンテンツ受信部７５Ａは、制限部９１からエラーページが入力される場合、エラーページをコンテンツ表示部７７に出力する。
【０１３０】
図１３は、第２の実施の形態におけるブラウジング処理の流れの一例を示すフローチャートである。第２の実施の形態におけるブラウジング処理は、ＭＦＰ１００が備えるＣＰＵ１１１が、ＲＯＭ１１３、ＥＥＰＲＯＭ１１５、ＨＤＤ１１６またはＣＤ−ＲＯＭ１１９Ａに記憶されたブライジングプログラムを実行することにより、ＣＰＵ１１１により実行される処理である。
【０１３１】
図１３を参照して、ＣＰＵ１１１は、リクエストを受け付けたか否かを判断する（ステップＳ５１）。リクエストを受け付けるまで待機状態となり（ステップＳ５１でＮＯ）、リクエストを受け付けたならば（ステップＳ５１でＹＥＳ）、処理をステップＳ５２に進める。ユーザが操作部１０５にＵＲＬを入力すると、入力されたＵＲＬにアクセスするリクエストを受け付ける。ユーザが操作部１０５にリンク情報を指示する操作を入力すると、指示されたリンク情報に含まれるＵＲＬにアクセスするリクエストを受け付ける。さらに、表示部１０３に既にＷｅｂページが表示されている場合であって、そのＷｅｂページに含まれるプログラムが、定期的にＷｅｂページを更新するために、新たなＷｅｂページの送信を要求するリクエストを定期的に送信するコマンドを含む場合、既に表示されているＷｅｂページに含まれるプログラムをＣＰＵ１１１が実行することにより生成されるタスクが出力するリクエストを受け付ける。
【０１３２】
ステップＳ５２においては、リクエスト判定処理を実行する。リクエスト判定処理の詳細は後述するが、受け付けられたリクエストが禁止されるか否かを判断する処理である。ステップＳ５３においては、リクエスト判定処理の結果により処理を分岐させる。リクエスト判定処理の結果がリクエスト禁止を示すならば処理をステップＳ６２に進めるが、そうでなければ処理をステップＳ５４に進める。ステップＳ６２においては、エラーページを表示部１０３に表示し、処理をステップＳ６３に進める。表示部１０３に表示の対象となっているタブに表示されているＷｅｂページを、エラーページで書き換える。エラーページは、例えば、「タブを開く数を減らして下さい。」のメッセージ、または「同じボタンを連続して指示しないで下さい。」のメッセージを含む。これにより、ユーザは、Ｗｅｂサーバに負荷をかけない操作が必要なことを知ることができる。
【０１３３】
ステップＳ５４においては、ステップＳ５１において受け付けられたリクエストが新たなタブを開く指示を含むか否かを判断する。新たなタブを開く指示を含むならば処理をステップＳ５５に進めるが、そうでなければ処理をステップＳ５６に進める。ステップＳ５５においては、新規タブを生成し、表示部１０３に表示する。この段階においては、新規タブに表示するための内容が存在しないため、表示部１０３には、白紙の画面が表示される。なお、受信中である旨のメッセージ等を表示するようにしてもよい。
【０１３４】
ステップＳ５６においては、ステップＳ５１において受け付けられたリクエストに含まれるＵＲＬで特定されるＷｅｂサーバとの間で、通信のためのセッションを確立する。そして、ステップＳ５１において受け付けられたリクエストにより定まるコマンドを送信する。通信Ｉ／Ｆ部１１２を制御して、リクエストにより定まる送信先のＷｅｂサーバ宛にコマンドを送信する。具体的には、ステップＳ５１において受け付けられたリクエストに含まれるＵＲＬを含むＧＥＴコマンドを、通信Ｉ／Ｆ部１１２を介してネットワーク２に送信する。ここでは、ＧＥＴコマンドに含まれるＵＲＬが、Ｗｅｂサーバ７を特定する場合を例に説明する。ＧＥＴコマンドに含まれるＵＲＬがＷｅｂサーバ７を特定する場合、ＧＥＴコマンドはＷｅｂサーバ７により受信される。ＧＥＴコマンドを受信するＷｅｂサーバ７においては、ＵＲＬで特定されるＷｅｂページを、ＧＥＴコマンドを送信してきたＭＦＰ１００に返信するので、通信Ｉ／Ｆ部１１２がＷｅｂページを受信する。
【０１３５】
ステップＳ５８においては、通信Ｉ／Ｆ部１１２がＷｅｂページを受信するまで待機状態となり（ステップＳ５８でＮＯ）、Ｗｅｂページを受信すると（ステップＳ５８でＹＥＳ）、処理をステップＳ５９に進める。
【０１３６】
次のステップＳ５９においては、受信されたＷｅｂページを保持する。具体的には、受信されたＷｅｂページをタブの名称と関連付けてＲＡＭ１１４に記憶する。ステップＳ５５において新たなタブが生成された場合には、新たなタブの名称とＷｅｂページとを関連付けてＲＡＭ１１４に記憶する。ステップＳ５５において新たなタブが生成されない場合、表示部１０３に表示の対象となっているタブの名称と関連付けてＲＡＭ１１４に記憶されているＷｅｂページを、受信されたＷｅｂページで書き換える。
【０１３７】
次のステップＳ６０においては、ステップＳ５７において確立したセッションを終了する。そして、ステップＳ６１においては、受信されたＷｅｂページを表示部１０３に表示し、処理をステップＳ６３に進める。ステップＳ５５において新規に新規タブか生成されている場合には、新規タブにＷｅｂページを表示し、新規タブか生成されていない場合には、表示部１０３に表示の対象となっているタブに表示されているＷｅｂページを、ステップＳ５８において受信されたＷｅｂページで書き換える。
【０１３８】
次のステップＳ６３においては、終了指示を受け付けたか否かを判断する。ユーザがタッチパネル１０５Ａを操作することにより、ブラウジング処理を終了する指示を受け付けたか否かを判断する。ブラウジング処理を終了する指示は、ウインドウを閉じる操作を含む。終了指示を受け付けたならば（ステップＳ６３でＹＥＳ）、ブラウジング処理を終了するが、そうでなければ（ステップＳ６３でＮＯ）、処理をステップＳ５１に戻す。
【０１３９】
図１４は、リクエスト判定処理の流れの一例を示すフローチャートである。リクエスト判定処理は、図１３のステップＳ５２において実行される処理である。図１４を参照して、リクエスト先を特定する（ステップＳ７１）。受け付けられたリクエストに含まれるＵＲＬを抽出することにより、リクエスト先のＷｅｂサーバのＵＲＬを特定する。
【０１４０】
次のステップＳ７２においては、ステップＳ７１において特定されたリクエスト先のＷｅｂサーバから受信済の表示コンテンツの数をカウントする。表示コンテンツは、ブラウジング処理を実行してＲＡＭ１１４に記憶されているコンテンツである。ここでは、ＲＡＭ１１４にタブの名称と関連付けられて記憶されてるコンテンツの数をカウントする。
【０１４１】
次のステップＳ７３においては、カウント数がしきいち値ＴＮと同じか否かを判断する。カウント数がしきいち値ＴＮと同じならば処理をステップＳ７５に進めるが、そうでなければ処理をステップＳ７４に進める。ステップＳ７４においては、セッションが確立済みか否かを判断する。ステップＳ７１において特定されたリクエスト先のＷｅｂサーバとの間で通信のためのセッションが確立しているか否かを判断する。リクエスト先のＷｅｂサーバとの間でセッションが確立済みならば処理をステップＳ７５に進めるが、そうでなければ処理をステップＳ７６に進める。
【０１４２】
ステップＳ７５においては、判定結果にリクエスト禁止を設定し、処理をブラウジング処理に戻す。ステップＳ７６においては、判定結果にリクエスト許可を設定し、処理をブラウジング処理に戻す。
【０１４３】
第２の実施の形態におけるＭＦＰ１００は、ユーザから受け付けられたリクエストにより定まる送信先のＷｅｂサーバから過去に受信されたコンテンツの状態または該Ｗｅｂサーバとの間の通信状態に基づいて、Ｗｅｂページに送信するコマンドを制限する制限部９１を備える。このため、リクエスト先のＷｅｂサーバの負荷を低減することができる。
【０１４４】
制限部９１は、リクエストが受け付けられた時点で、表示可能に保持されているＷｅｂページのうち、受け付けられたリクエストにより定まる送信先のＷｅｂサーバと同じＷｅｂサーバから受信されたＷｅｂページの数が所定のしきい値ＴＮならば、コマンドの送信を禁止する。このため、同じＷｅｂサーバから受信し、表示可能に保持するＷｅｂページの数を制限することにより、Ｗｅｂサーバの負荷を低減することができる。
【０１４５】
また、制限部９１は、リクエストが受け付けられた時点で、該受け付けられたリクエストの送信先のＷｅｂサーバと通信するためのセッションが既に確立されている場合、コマンドの送信を禁止する。このため、同じＷｅｂサーバと確立するセッションの数を制限することにより、Ｗｅｂサーバの負荷を低減することができる。
【０１４６】
なお、上述した実施の形態においては、画像形成装置の一例としてＭＦＰ１００を説明したが、図８および図９、または、図１３および図１４に示した処理をＭＦＰ１００に実行させるための通信制御方法または、その通信制御方法をコンピュータに実行させるための通信制御プログラムとして発明を捉えることができるのは言うまでもない。
【０１４７】
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【０１４８】
＜付記＞
（１）  ブラウジングプログラムを実行する１以上のタスク各々により表示可能に保持されている１以上のコンテンツ各々に対して送信元のサーバを識別するためのサーバ識別情報を関連付ける関連付ステップと、をさらに含み、
前記制限ステップは、前記取得ステップにおいてコマンドが取得された時点で、前記関連付ステップにおいて前記取得されたコマンドの送信先のサーバのサーバ識別情報と同じサーバ識別情報と関連付けられたコンテンツの数が所定のしきい値ならば、前記送信ステップにおいて前記コマンドが前記送信先のサーバに送信されるのを禁止する第１リクエスト禁止ステップと、を含む請求項１１に記載の通信制御方法。
画像形成装置。
（２）  前記送信ステップは、通信先のサーバと通信するためにセッションを確立するセッション確立ステップを、含み、
前記制限ステップは、前記取得ステップにおいてコマンドが取得される時点で、該取得されたコマンドの送信先のサーバとの間で前記セッション確立ステップにおいて既にセッションが確立されている場合、前記コマンドを前記サーバに送信するのを禁止する第２リクエスト禁止ステップと、含む請求項１１または（１）に記載の通信制御方法。
（３）  ブラウジングプログラムを実行するタスクは、サーバより受信された１以上のコンテンツを選択可能な状態で保持可能であり、
前記取得ステップは、前記ブラウジングプログラムを実行するタスクが前記保持されている１以上のコンテンツのいずれかが出力するリクエストを受け付けるステップを含む、（２）に記載の通信制御方法。
（４）  前記取得ステップは、前記ブラウジングプログラムを実行するタスクが、ユーザによる指示により受け付けられることに応じて出力するリクエストを受け付けるステップを、含む（２）または（３）に記載の通信制御方法。
（５）  前記表示ステップは、前記コンテンツ受信ステップにおいて受信された１以上のコンテンツを選択可能な状態で保持する保持ステップと、
前記保持された１以上のコンテンツのうちから選択された１つを表示する選択表示ステップと、を含み、
前記制限ステップは、前記リクエスト受付ステップにおいてリクエストが受け付けられた時点で、前記保持ステップにおいて保持されている１以上のコンテンツのうち、前記受け付けられたリクエストにより定まる送信先のサーバと同じサーバから受信されたコンテンツの数が所定のしきい値ならば、前記コマンド送信ステップにおける前記コマンドの送信を禁止する第１リクエスト禁止ステップを、含む請求項１３に記載のブラウジング方法。
（６）  前記制限ステップは、前記リクエスト受付ステップにおいてリクエストが受け付けられた時点で、該受け付けられたリクエストの送信先のサーバと通信するためのセッションが既に確立されている場合、前記コマンド送信ステップにおける前記コマンドの送信を禁止する第２リクエスト禁止ステップを、含む請求項１３または（５）に記載のブラウジング方法。
（７）  前記リクエスト受付ステップは、前記保持ステップにおいて保持されている１以上のコンテンツのいずれかが発生するリクエストを受け付ける発生リクエスト受付ステップを含む、（５）または（６）に記載のブラウジング方法。
（８）  前記リクエスト受付ステップは、ユーザによる指示によりリクエストを受け付ける指示受付ステップを含む、請求項１３、（５）〜（７）のいずれかに記載のブラウジング方法。
【符号の説明】
【０１４９】
１  情報処理システム、２  ネットワーク、３  インターネット、７，７Ａ  Ｗｅｂサーバ、９  操作パネル、１０  ＡＤＦ、２０  原稿読取部、３０  画像形成部、４０  給紙部、５１  ブラウジング部、５３  通信制御部、５５  コマンド取得部、５７  制限部、５９  コマンド送信部、６１  関連付部、６５  第１リクエスト禁止部、６３  第２リクエスト禁止部、６７  セッション確立部、７１  リクエスト受付部、７３  コマンド出力部、７５，７５Ａ  コンテンツ受信部、７７  コンテンツ表示部、８１  指示リクエスト受付部、８３  発生リクエスト受付部、８５  保持部、８７  選択表示部、９１  制限部、９３  第１リクエスト禁止部、９５  第２リクエスト禁止部、９７  コマンド送信部、９９  管理テーブル、１００  ＭＦＰ、１０１  メイン回路、１０３  表示部、１０５  操作部、１０５Ａ  タッチパネル、１０５Ｂ  ブラウザキー、１１１  ＣＰＵ、１１２  通信Ｉ／Ｆ部、１１３  ＲＯＭ、１１４  ＲＡＭ、１１５，１１５Ａ  ＥＥＰＲＯＭ、１１６  ＨＤＤ、１１７  ファクシミリ部、１１８  ネットワークＩ／Ｆ、１１９  外部記憶装置、１１９Ａ  ＣＤ−ＲＯＭ。
【図１】
2012226414.tif 000003
【図２】
2012226414.tif 000004
【図３】
2012226414.tif 000005
【図４】
2012226414.tif 000006
【図５】
2012226414.tif 000007
【図６】
2012226414.tif 000008
【図７】
2012226414.tif 000009
【図８】
2012226414.tif 000010
【図９】
2012226414.tif 000011
【図１０】
2012226414.tif 000012
【図１１】
2012226414.tif 000013
【図１２】
2012226414.tif 000014
【図１３】
2012226414.tif 000015
【図１４】
2012226414.tif 000016