(57)【特許請求の範囲】
【請求項１】
インターネットに接続されたホスティングサーバと、
インターネットに接続されたローカルエリアネットワーク内でプライベートＩＰアドレスが割り当てられた端末装置と、
該端末装置に接続された印刷装置とからなり、
該ホスティングサーバに蓄積された情報を該印刷装置で印刷するインターネット印刷システムにおいて、
該ホスティングサーバは、該端末装置から送信された動的グローバルＩＰアドレス、ポート番号、及び該印刷装置のプリンタポート番号を記憶保持する端末装置情報記憶管理手段と、
該端末装置情報記憶管理手段に記憶されている情報に基づいて、該ホスティングサーバに蓄積された情報を該端末装置に送信する情報送信手段と、を有することを特徴とするインターネット印刷システム。
【請求項２】
該端末装置は、該ホスティングサーバに対して、定期的に動的グローバルＩＰアドレス、ポート番号及び該印刷装置のプリンタポート番号を送信する端末装置情報定期送信手段を有することを特徴とする請求項１に記載のインターネット印刷システム。
【請求項３】
該ホスティングサーバは、該ホスティングサーバに蓄積された情報を該端末装置に送信するためにパケットに分割するパケット分割手段を有し、
該端末装置は、送信されたパケットを受信するパケット受信手段と、
パケットの受信の中断を検出するパケット受信中断検出手段と、
該パケット受信中断検出手段でパケット受信の中断を検出したとき、該ホスティングサーバに対して、動的グローバルＩＰアドレス、ポート番号及び該印刷装置のプリンタポート番号を送信する端末装置情報非定期送信手段と、を有することを特徴とする請求項１又は請求項２に記載のインターネット印刷システム。
【請求項４】
請求項１乃至請求項３のいずれかに記載のインターネット印刷システムを実現するためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ホスティングサーバからローカルエリアネットワーク内でプライベートＩＰアドレスを割り当てられたパーソナルコンピュータ等の端末に接続された印刷装置に対してプッシュ印刷を行うインターネット印刷システム及びそれを実現するためのプログラムに関する。
【背景技術】
【０００２】
所望のＷｅｂサーバー上のページを定期購読するために、定期購読を希望するＷｅｂページのＵＲＬとアクセス日時とをユーザーが登録しておき、この登録に基づいて、印刷装置にＷｅｂサーバーへアクセスさせて、所望のページを取得させ印刷媒体へ印刷させるよう構成されたネットワーク印刷システムが知られている。例えば、特許文献１（特開平１１−１３８９５４号公報）には、ネットワーク上のハイパーテキストデータをアクセスして印刷する印刷装置であって、アクセス対象のハイパーテキストデータのネットワーク上のアドレス情報と、アクセス頻度情報とを登録する登録手段と、前記登録手段により登録されたアクセス頻度情報に従って登録に係るアドレス情報で示される位置に存在するハイパーテキストデータを定期的にアクセスするアクセス手段と、前記アクセス手段によりアクセスされたハイパーテキストデータを印刷させる印刷制御手段と、を備えたことを特徴とする印刷装置が記載されている。
【特許文献１】特開平１１−１３８９５４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
所望の情報を保持するＷｅｂサーバーと印刷装置とがＴＣＰ／ＩＰにより通信する場合、印刷装置と通信するための情報であるＩＰアドレスは一般的には固定されているとは限らず、ＩＳＰのサーバーの運用などによりＩＰアドレスは動的に変化する場合がある。このようにＩＰアドレスが動的に変化する場合、特許文献１の技術では、Ｗｅｂサーバーが印刷装置と通信を行っている際に、もし印刷装置のＩＰアドレスが動的に変化すると、Ｗｅｂサーバーは印刷装置のことを認識することできなくなり、印刷が途中で中断してしまう、という問題があった。このような問題があるので、特許文献１記載の技術では、印刷装置がＷｅｂサーバーに一方的にアクセスして、Ｗｅｂサーバーから情報を取得するという、あくまで「プル型」のインターネット印刷技術に過ぎない。これに対して、Ｗｅｂサーバー側が主体的に印刷装置に対して情報を送信して印刷させる形態の「プッシュ型」のインターネット印刷技術の実現が望まれている。
【課題を解決するための手段】
【０００４】
上記課題を解決するために、請求項１に係る本発明は、インターネットに接続されたホスティングサーバと、インターネットに接続されたローカルエリアネットワーク内でプライベートＩＰアドレスが割り当てられた端末装置と、該端末装置に接続された印刷装置とからなり、該ホスティングサーバに蓄積された情報を該印刷装置で印刷するインターネット印刷システムにおいて、該ホスティングサーバは、該端末装置から送信された動的グローバルＩＰアドレス、ポート番号、及び該印刷装置のプリンタポート番号を記憶保持する端末装置情報記憶管理手段と、該端末装置情報記憶管理手段に記憶されている情報に基づいて、該ホスティングサーバに蓄積された情報を該端末装置に送信する情報送信手段と、を有することを特徴とする。
【０００５】
また、請求項２に係る発明は、請求項１に記載のインターネット印刷システムにおいて、該端末装置は、該ホスティングサーバに対して、定期的に動的グローバルＩＰアドレス、ポート番号及び該印刷装置のプリンタポート番号を送信する端末装置情報定期送信手段を有することを特徴とする。
【０００６】
また、請求項３に係る発明は、請求項１又は請求項２に記載のインターネット印刷システムにおいて、該ホスティングサーバは、該ホスティングサーバに蓄積された情報を該端末装置に送信するためにパケットに分割するパケット分割手段を有し、該端末装置は、送信されたパケットを受信するパケット受信手段と、パケットの受信の中断を検出するパケット受信中断検出手段と、該パケット受信中断検出手段でパケット受信の中断を検出したとき、該ホスティングサーバに対して、動的グローバルＩＰアドレス、ポート番号及び該印刷装置のプリンタポート番号を送信する端末装置情報非定期送信手段と、を有することを特徴とする。
【０００７】
また、請求項４に係る発明は、請求項１乃至請求項３のいずれかに記載のインターネット印刷システムを実現するためのプログラムである。
【発明の効果】
【０００８】
本発明によれば、ホスティングサーバは、端末装置から送信された動的グローバルＩＰアドレス、ポート番号、及び該印刷装置のプリンタポート番号を記憶保持し、この記憶された情報に基づいて、ホスティングサーバに蓄積された情報を端末装置に送信するように構成されているので、ホスティングサーバから印刷装置に対して、プッシュ型で印刷することができる。特に、端末装置は、ホスティングサーバに対して、定期的に、或いは、必要が生じれば不定期的に、動的グローバルＩＰアドレス、ポート番号及び該印刷装置のプリンタポート番号を送信するよう構成されているので、ホスティングサーバ側から、端末装置及び印刷装置のことが認識できなくなるという事態を防止することができ、印刷が途中で中断してしまうという事態を回避することができる。
【発明を実施するための最良の形態】
【０００９】
以下、本発明の実施の形態を図面を参照しつつ説明する。図１は本発明に係るインターネット印刷システムであり、１はインターネットであり、２はホスティングサーバ、３は企業内或いは家庭内のローカルエリアネットワーク（ＬＡＮ）であり、４−１〜４−３は当該ＬＡＮに接続されているパーソナルコンピュータ等の端末装置であり、４−１−１〜４−３−２は端末装置４−１〜４−３に接続された印刷装置であり、５はＬＡＮ３内のモデム或いはルータである。
【００１０】
本発明は、ホスティングサーバ２及び端末装置４−１〜４−３に、本発明に係るプログラムを所定の方法によりインストールすることにより実現することができる。
【００１１】
端末装置４−１〜４−３には、ＬＡＮ３内でプライベートＩＰアドレスが付与されているが、ＬＡＮ３外との通信を行うためにはグローバルＩＰアドレスが必要となる。６はＩＳＰ（Ｉｎｔｅｒｎｅｔ  Ｓｅｒｖｉｃｅ  Ｐｒｏｖｉｄｅｒ）であり、このＩＳＰ６が一般的に一つの動的グローバルIPアドレスを5のモデム・ルータに付与する。
【００１２】
ＩＳＰ６が動的グローバルIPアドレスを5のモデム・ルータに付与するには、一般的に、ＤＨＣＰ（Ｄｙｎａｍｉｃ  Ｈｏｓｔ  Ｃｏｎｆｉｇｕｒａｔｉｏｎ  Ｐｒｏｔｏｃｏｌ）で行われる。動的グローバルＩＰアドレスとＬＡＮ側のプライベートＩＰアドレスの変換には、ＮＡＴ（Ｎｅｔｗｏｒｋ  Ａｄｄｒｅｓｓ  Ｔｒａｎｓｌａｔｏｒ）或いはＮＡＰＴ（Ｎｅｔｗｏｒｋ  Ａｄｄｒｅｓｓ  Ｐｏｒｔ  Ｔｒａｎｓｌａｔｉｏｎ）と呼ばれる手法が用いられる。ＮＡＰＴの手法はＮＡＴの手法を包含するものであるので、以下ＮＡＰＴで代表して説明する。ＮＡＰＴの実際の処理は以下のようになっている。
（１）ＬＡＮ３内の端末装置４−１〜４−３から送られてきたＩＰパケットにあるプライベートＩＰアドレスの送信元ＩＰとＴＣＰヘッダーの送信元ポート番号を取り出す。
（２）ＮＡＰＴで使うことのできるグローバルＩＰアドレスの中で、未使用のポート番号を確保し、そのポート番号を使用済みにする。
（３）「プライベートＩＰアドレスとそのポート番号」と「グローバルＩＰアドレスと確保したポート番号」の組を変換テーブルに登録する。
（４）変換テーブルに登録されている「プライベートＩＰアドレスとそのポート番号」を送信元とするパケットがＬＡＮからインターネットに送信されようとしたら、「グローバルＩＰアドレスと確保したポート番号」に変換する。
（５）変換テーブルに登録されている「グローバルＩＰアドレスと確保したポート番号」を宛先とするパケットがインターネットからＬＡＮ３に送られようとしたら、対応する「プライベートＩＰアドレスとそのポート番号」に変換する。
（６）アプリケーションが終了した段階で「ポート番号」を未使用にもどして、再利用可能にする。
【００１３】
以上の通り、ＮＡＰＴでは動的グローバルIPアドレスとポート番号のペアを、プライベートＩＰアドレスとポート番号のペアとを対応させるものである。
【００１４】
ところで、このような動的グローバルIPアドレスは、流動的であり、いつ変わるか予想することができない。このような理由のために、ホスティングサーバ２が端末装置４−１〜４−３を認識できなくなってしまう。
【００１５】
本発明では、このように端末装置４−１〜４−３に割り当てられた動的グローバルIPアドレスが変わってしまっても、ホスティングサーバ２が端末装置４−１〜４−３を認識できるように構成し、端末装置４−１〜４−３に接続された印刷装置４−１−１〜４−３−２に対して、ホスティングサーバ２がプッシュプリントできるように構成するものである。
【００１６】
このために、本発明では、ホスティングサーバ２の方には普遍である固定グローバルIPアドレスが付与されていることを利用するものである。すなわち、端末装置４−１〜４−３側から、固定グローバルIPアドレスを持つホスティングサーバ２に通信し、端末装置４−１〜４−３の動的グローバルIPアドレス、ポート番号及び印刷装置４−１−１〜４−３−２のプリンタポート番号をホスティングサーバ2に通知し、ホスティングサーバ２側で端末装置４−１〜４−３の最新動的グローバルIPアドレス、ポート番号及び印刷装置４−１−１〜４−３−２のプリンタポート番号を記憶保持・管理するようにし、ホスティングサーバ２から端末装置４−１〜４−３を認識できるように構成するものである。
【００１７】
図2は、ＬＡＮ３からインターネット１を介してホスティングサーバ２に向けて送信される際に用いられるデータ構造の一例を示す。図において、「送信先」に指定されている部分が、ホスティングサーバ２の「固定グローバルＩＰアドレス」とその「ポート番号」である。「送信情報」は、端末装置４−１〜４−３の「動的グローバルＩＰアドレス」、「ポート番号」、「プリンタポート番号」、「その他のデータ」から構成されている。
【００１８】
このようなデータ構造により、端末装置４−１〜４−３から動的グローバルＩＰアドレスとＮＡＴ、ＮＡＰＴで管理されるポート番号をホスティングサーバ２に通知する。このようにして、ホスティングサーバ２側では、本発明のプログラムで管理される、端末装置４−１〜４−３の「プライベートＩＰアドレス」と「プリンタのポート番号」を動的グローバルIPアドレスとポート番号で把握する。
【００１９】
図3は、ホスティングサーバ２から端末装置４−１〜４−３に送信する際に用いられるデータ構造の一例を示す。図において、「送信先」に指定されている部分が端末装置４−１〜４−３のプライベートIPアドレスとポート番号に対応する「動的グローバルＩＰアドレス」とその「ポート番号」である。「送信情報（印刷パケット）」は、「プリンタポート番号」、そして印刷装置４−１−１〜４−３−２で印刷されるに接続される「データ」から構成されている。
【００２０】
このようなデータ構造により、本発明のプログラムがインストールされている端末装置４−１〜４−３は、ホスティングサーバ２から送信されたデータを印刷すべきプリンタが、印刷装置４−１−１〜４−３−２のうち、どのプリンタであるのかを把握し、管理することができる。
【００２１】
ホスティングサーバ２から端末装置４−１〜４−３に情報を送っていない瞬間（静的状態にある瞬間）に、前述したように動的グローバルIPアドレスが変わることがある。このようなときのために、本発明では、端末装置４−１〜４−３プログラムから、最新の動的グローバルIPアドレス、NAT、NAPTで管理されるポート番号およびプリンタのポート番号をホスティングサーバ２にインターバル時間で定期的に通知（ポーリング）するように構成されている。このようなポーリングの際に、端末装置４−１〜４−３からホスティングサーバ２へ送信されるデータ構造も図２に示されるものと同様のものが用いられる。なお、ポーリングはネットワーク負荷を及ぼさないような程度のインターバル時間を設定する。
【００２２】
図４に示すように、印刷ジョブの印刷パケット（送信データパケット）の送信中に、ホスティングサーバ２と端末装置４−１〜４−３との間の通信に障害が発生した場合を考える。このような障害は、ホスティングサーバ2からジョブとして印刷パケットを送信している時（動的状態）に、ある印刷パケット送信中に、端末装置４−１〜４−３側の5のモデム・ルータの動的グローバルIPアドレスが変った場合である。このような場合、本発明では以下のように対応する。
【００２３】
このような障害が発生すると、ホスティングサーバ２は印刷パケットを送信できなくなり、端末装置４−１〜４−３はジョブ単位の中でタイムアウトを検出することとなる。そうすると、本発明のプログラムをインストールされた端末装置４−１〜４−３は、変化後の動的グローバルIPアドレスの最新の動的グローバルIPアドレス、NAT、NAPTで管理されるポート番号およびプリンタのポート番号をホスティングサーバ２に通知する。そして、このようにすることで、ホスティングサーバ２から通信に再開を依頼し、続きの印刷ジョブのデータパケットの継続送信を行い、印刷を継続する。
【００２４】
以上の仕組みをフローチャートで説明する。図５は、端末装置４−１〜４−３側で、ホスティングサーバ２とのセッションを維持するために行われる処理のフローチャートを示している。図において、Ｓ２で前述したポーリングのためのインターバルの時間を設定する。Ｓ３では、動的グローバルＩＰアドレス、ポート番号、プリンタポート番号、その他のデータをホスティングサーバ２へ送信する。Ｓ４で一定時間が経過したかどうかを判定し、経過していればＳ２へ戻り、再びポーリングのためのインターバルの時間を設定する。
【００２５】
図６は、端末装置４−１〜４−３側で、ホスティングサーバ２とのセッションを、動的な状態で維持するために行われる処理のフローチャートを示している。Ｓ５で、印刷ジョブの受信が開始されると、Ｓ６では図３に示される印刷パケットを受信する。Ｓ７で、ホスティングサーバ２とのセッションがタイムアウトしていないかをチェックし、もしタイムアウトしていれば、Ｓ９で、動的グローバルＩＰアドレス、ポート番号、プリンタポート番号、その他のデータをホスティングサーバ２へ送信する。Ｓ７でタイムアウトしていなければ、Ｓ８で全ての印刷データの受信が完了したかをチェックし、完了していなければ、再びＳ６に戻る。完了していれば、Ｓ１０へと移行し、印刷ジョブ受信処理を終了する。
【００２６】
図７は、ホスティングサーバ２側で、端末装置４−１〜４−３とのセッションを維持するために行われる処理のフローチャートを示している。図に示されるとおり、ホスティングサーバ２側でのセッション保持動作は、端末装置４−１〜４−３からの動的グローバルＩＰアドレス、ポート番号、プリンタポート番号、その他のデータを受信しこれを保持管理しておくことにある。
【００２７】
図８は、ホスティングサーバ２側で、端末装置４−１〜４−３とのセッションを、動的な状態で維持するために行われる処理のフローチャートを示している。Ｓ１４で、印刷ジョブの送信が開始されると、図３で示される印刷パケットを送信する（Ｓ１５）。Ｓ１６で、端末装置４−１〜４−３とのセッションがタイムアウトしていないか、すなわち、動的グローバルＩＰアドレスの変化によりタイムアウトしてパケットの送信が不可能になっていないかをチェックする。送信が不可能であれば、端末装置４−１〜４−３から再び、端末装置の、更新された最新の動的グローバルＩＰアドレス、ポート番号が送信されてくるまで、Ｓ１６で待機する。一方、Ｓ１６で送信が可能であれば、次のパケットを送信する。Ｓ１７では、最終的に全ての印刷パケットが送信できたかどうかをチェックし、完了していればＳ１８で処理を終了する。
【００２８】
本発明では、ホスティングサーバ２及び端末装置４−１〜４−３に、本発明のプログラムをインストールして、以上のような処理を行い得るようにしたものである。そして、そのようなプログラムをインストールしたシステムも、本発明の範囲に含まれる。
【図面の簡単な説明】
【００２９】
【図１】本発明に係るインターネット印刷システムのシステム構成図である。
【図２】ホスティングサーバに向けて発信されるデータのデータ構造を示す図である。
【図３】ホスティングサーバから端末装置に送信するデータのデータ構造を示す図である。
【図４】印刷ジョブの印刷パケットの送信中に、障害が発生した様子を示す図である。
【図５】端末装置側で、セッションを維持するために行う処理のフローチャートを示す図である。
【図６】端末装置で、動的な状態でセッションを維持するために行う処理のフローチャートを示す図である。
【図７】ホスティングサーバ側で、端末装置とのセッションを維持するために行う処理のフローチャートを示す図である。
【図８】ホスティングサーバ側で、動的な状態でセッションを維持するために行う処理のフローチャートを示す図である。
【符号の説明】
【００３０】
１・・・インターネット、２・・・ホスティングサーバ、３・・・ローカルエリアネットワーク（ＬＡＮ）、４−１〜４−３・・・端末装置、４−１−１〜４−３−２・・・印刷装置、５・・・モデム、ルータ、６・・・ＩＳＰ
【図１】
0004443482.tif 000002
【図２】
0004443482.tif 000003
【図３】
0004443482.tif 000004
【図４】
0004443482.tif 000005
【図５】
0004443482.tif 000006
【図６】
0004443482.tif 000007
【図７】
0004443482.tif 000008
【図８】
0004443482.tif 000009