(57)【特許請求の範囲】
【請求項１】
他の機器と通信可能な通信制御装置であって、
前記他の機器へのログインが成功した場合に、上位層の通信で用いられる識別子を前記他の機器から受信する受信手段と、
前記他の機器との通信における下位層の接続が前記他の機器へのデータの転送中に切断された場合に、前記識別子を記憶手段に保持させる制御手段と、
前記切断された下位層の接続が復帰したか否かを判定する判定手段とを有し、
前記制御手段は、前記判定手段によって所定の時間内に前記他の機器との前記下位層の接続が復帰したと判定された場合に、前記記憶手段に保持された識別子を前記他の機器に送信するように制御することを特徴とする通信制御装置。
【請求項２】
前記制御手段は、
前記判定手段は、所定の時間内に前記下位層の接続が復帰したと判定された場合、前記他の機器に対してログインが成功したか否かを判断する第１の判断手段と、
前記第１の判断手段によりログインが成功したと判断された場合、前記他の機器がデータを継続して受信できるか否かを判断する第２の判断手段と、
前記第２の判断手段により継続して受信できると判断された場合、データを前記他の機器に送信する送信手段とを含むことを特徴とする請求項１に記載の通信制御装置。
【請求項３】
前記制御手段は、
前記所定の時間が経過したか否かを判断する判断手段と、
前記判断手段により前記所定の時間が経過したと判断された場合、転送中のデータを破棄する破棄手段とを含むことを特徴とする請求項１または請求項２に記載の通信制御装置。
【請求項４】
前記下位層は、回線断または回線異常を検知し、回線の切断処理を行うことを特徴とする請求項１乃至請求項３のいずれかに記載の通信制御装置。
【請求項５】
前記下位層は、ＯＳＩの７層モデルのトランスポート層以下であり、前記上位層は、ＯＳＩの７層モデルのセッション層以上であることを特徴とする請求項１乃至請求項４のいずれかに記載の通信制御装置。
【請求項６】
前記通信制御装置は、コンピュータであり、前記他の機器は、プリンタであることを特徴とする請求項１乃至請求項５のいずれかに記載の通信制御装置。
【請求項７】
前記下位層の切断は、前記他の機器との回線が切断された時、または、前記回線に新たな機器が接続された時に起こることを特徴とする請求項１乃至請求項６のいずれかに記載の通信制御装置。
【請求項８】
前記所定の時間を設定する設定手段を有することを特徴とする請求項１乃至請求項７のいずれかに記載の通信制御装置。
【請求項９】
他の機器と通信可能な通信制御装置で行われる通信制御方法であって、
前記他の機器へのログインが成功した場合に、上位層の通信で用いられる識別子を前記他の機器から受信する受信ステップと、
前記他の機器との通信における下位層の接続が前記他の機器へのデータの転送中に切断された場合に、前記識別子を記憶手段に保持させる制御ステップと、
前記切断された下位層の接続が復帰したか否かを判定する判定ステップとを有し、
前記制御ステップでは、前記判定ステップで所定の時間内に前記他の機器との前記下位層の接続が復帰したと判定された場合に、前記記憶手段に保持された識別子を前記他の機器に送信するように制御することを特徴とする通信制御方法。
【請求項１０】
前記制御ステップは、
前記判定ステップにより所定の時間内に前記他の機器との前記下位層の接続が復帰したと判定された場合、前記他の機器に対してログインが成功したか否かを判断する第１の判断ステップと、
前記第１の判断ステップによりログインが成功したと判断された場合、前記他の機器がデータを継続して受信できるか否かを判断する第２の判断ステップと、
前記第２の判断ステップにより継続して受信できると判断された場合、データを前記他の機器に送信する送信ステップとを含むことを特徴とする請求項９に記載の通信制御方法。
【請求項１１】
前記制御ステップは、
前記所定の時間が経過したか否かを判断する判断ステップと、
前記判断ステップにより前記所定の時間が経過したと判断された場合、転送中のデータを破棄する破棄ステップとを含むことを特徴とする請求項９または請求項１０に記載の通信制御方法。
【請求項１２】
前記下位層は、回線断または回線異常を検知し、回線の切断処理を行うことを特徴とする請求項９乃至請求項１１のいずれかに記載の通信制御方法。
【請求項１３】
前記下位層は、ＯＳＩの７層モデルのトランスポート層以下であり、前記上位層は、ＯＳＩの７層モデルのセッション層以上であることを特徴とする請求項９乃至請求項１２のいずれかに記載の通信制御方法。
【請求項１４】
前記通信制御装置は、コンピュータであり、前記他の機器は、プリンタであることを特徴とする請求項９乃至請求項１３のいずれかに記載の通信制御方法。
【請求項１５】
前記下位層の切断は、前記他の機器との回線が切断された時、または、前記回線に新たな機器が接続された時に起こることを特徴とする請求項９乃至請求項１４のいずれかに記載の通信制御方法。
【請求項１６】
前記一定時間を設定する設定ステップを有することを特徴とする請求項９乃至請求項１５のいずれかに記載の通信制御方法。
【請求項１７】
コンピュータにより読み取り可能な記憶媒体であって、
他の機器へのログインが成功した場合に、上位層の通信で用いられる識別子を前記他の機器から受信する受信ステップと、
前記他の機器との下位層の接続が前記他の機器へのデータの転送中に切断された場合に、前記識別子を記憶手段に保持させる制御ステップと、
前記切断された下位層の接続が復帰したか否かを判定する判定ステップとを有し、
前記制御ステップでは、前記判定ステップで所定の時間内に前記他の機器との前記下位層の接続が復帰したと判定された場合に、前記記憶手段に保持された識別子を前記他の機器に送信するように制御するステップを前記コンピュータに実行させるプログラムを記憶することを特徴とする記憶媒体。
【請求項１８】
他の機器と通信可能な通信制御装置であって、
前記他の機器からログイン要求を受信するログイン要求受信手段と、
前記ログイン要求によるログインが成功した場合に、前記他の機器の上位層の通信で用いられる識別子を前記他の機器から受信する識別子受信手段と、
前記他の機器との通信における下位層の接続が前記他の機器からのデータの受信中に切断された場合に、前記他の機器との通信における前記下位層の接続が復帰したか否かを判定する復帰判定手段と、
前記復帰判定手段によって前記他の機器との通信における前記下位層の接続が復帰したと判定された場合に、前記識別子受信手段によって受信した識別子に基づいて、前記受信中のデータの受信を継続するか否かを判定する継続受信判定手段と、
前記継続受信判定手段によって前記受信中のデータの受信を継続すると判定された場合に、前記受信中のデータを前記他の機器から継続して受信する制御手段とを有することを特徴とする通信制御装置。
【請求項１９】
前記継続受信判定手段によって前記受信中のデータの受信を継続しないと判定された場合に、新たな識別子を発行する発行手段と、
前記発行手段によって発行された新たな識別子を前記他の機器に送信する送信手段とをさらに有することを特徴とする請求項１８に記載の通信制御装置。
【請求項２０】
前記復帰判定手段は、前記他の機器との通信における前記下位層の接続が、所定の時間内に復帰したか否かを判定し、
前記継続受信判定手段は、前記復帰判定手段によって前記他の機器との通信における前記下位層の接続が、前記所定の時間内に復帰したと判定された場合に、前記識別子受信手段によって受信した識別子に基づいて、前記受信中のデータの受信を継続するか否かを判定することを特徴とする請求項１８に記載の通信制御装置。
【請求項２１】
前記復帰判定手段によって前記他の機器との通信における前記下位層の接続が、前記所定の時間内に復帰しなかったと判定した場合に、前記受信中のデータを破棄する破棄手段をさらに有することを特徴とする請求項２０に記載の通信制御装置。
【請求項２２】
前記下位層は、ＯＳＩの７層モデルのトランスポート層以下であることを特徴とする請求項１８乃至請求項２１のいずれかに記載の通信制御装置。
【請求項２３】
他の機器と通信可能な通信制御装置で行われる通信制御方法であって、
前記他の機器からログイン要求を受信するログイン要求受信ステップと、
前記ログイン要求によるログインが成功した場合に、前記他の機器の上位層の通信で用いられる識別子を前記他の機器から受信する識別子受信ステップと、
前記他の機器との通信における下位層の接続が前記他の機器からのデータの受信中に切断された場合に、前記他の機器との通信における前記下位層の接続が復帰したか否かを判定する復帰判定ステップと、
前記復帰判定ステップで前記他の機器との通信における前記下位層の接続が復帰したと判定された場合に、前記識別子受信手段によって受信した識別子に基づいて、前記受信中のデータの受信を継続するか否かを判定する継続受信判定ステップと、
前記継続受信判定ステップで前記受信中のデータの受信を継続すると判定された場合に、前記受信中のデータを前記他の機器から継続して受信する制御ステップとを有することを特徴とする通信制御方法。
【請求項２４】
前記継続受信判定ステップで前記受信中のデータの受信を継続しないと判定された場合に、新たな識別子を発行する発行ステップと、
前記発行ステップで発行された新たな識別子を前記他の機器に送信する送信ステップとをさらに有することを特徴とする請求項２３に記載の通信制御方法。
【請求項２５】
前記復帰判定ステップで、前記他の機器との前記下位層の接続が、所定の時間内に復帰したか否かを判定し、
前記継続受信判定ステップで、前記復帰判定手段によって前記他の機器との前記下位層の接続が、前記所定の時間内に復帰したと判定された場合に、前記識別子受信ステップで受信した識別子に基づいて、前記受信中のデータの受信を継続するか否かを判定することを特徴とする請求項２３に記載の通信制御方法。
【請求項２６】
前記復帰判定ステップで前記他の機器との前記下位層の接続が、前記所定の時間内に復帰しなかったと判定した場合に、前記受信中のデータを破棄する破棄ステップをさらに有することを特徴とする請求項２３に記載の通信制御方法。
【請求項２７】
前記下位層は、ＯＳＩの７層モデルのトランスポート層以下であることを特徴とする請求項２３乃至請求項２６のいずれかに記載の通信制御方法。
【請求項２８】
コンピュータにより読み取り可能な記憶媒体であって、
他の機器からログイン要求を受信するログイン要求受信ステップと、
前記ログイン要求によるログインが成功した場合に、前記他の機器の上位層の通信で用いられる識別子を前記他の機器から受信する識別子受信ステップと、
前記他の機器との通信における下位層の接続が前記他の機器からのデータの受信中に切断された場合に、前記他の機器との通信における前記下位層の接続が復帰したか否かを判定する復帰判定ステップと、
前記復帰判定ステップで前記他の機器との通信における前記下位層の接続が復帰したと判定された場合に、前記識別子受信手段によって受信した識別子に基づいて、前記受信中のデータの受信を継続するか否かを判定する継続受信判定ステップと、
前記継続受信判定ステップで前記受信中のデータの受信を継続すると判定された場合に、前記受信中のデータを前記他の機器から継続して受信する制御ステップとを前記コンピュータに実行させるプログラムを記憶することを特徴とする記憶媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明はデータ通信における回線異常時の処理に関するものであり、例えばＩＥＥＥ１３９４でデータ転送を行う印字処理に関するものである。
【０００２】
【従来の技術】
いわゆるセントロニクス線で接続されたイメージデータソースとプリンタとの通信には２機器間のみが回線でむすばれていたため、基本的に物理回線が切断されてもセッションを切断するのは、ユーザーが能動的に切断を実行する以外は必要なかった。また、他の機器間のデータ転送では、下位層が切断された時、上位層もそれに対応して即時切断していた。
【０００３】
【発明が解決しようとする課題】
ＩＥＥＥ１３９４のように、複数のイメージデータソースと複数のプリンタが１つの閉じられた通信回線上に接続される可能性があるとき、例えばコネクションを形成しているデータ転送中のイメージデータソースが回線からはずされた時、そのはずされた装置の通信相手であるプリンタがセントロニクスのようにイメージデータソースとのセッションを保持し続けるのであれば、プリンタは永遠に他の回線上のイメージデータソースとデータ転送することができない。
【０００４】
また、下位層が切断された時、上位層もそれに対応して即時切断するのであれば、ユーザーの不注意や機器配置がえ等による回線断及び回線再接続によって、印字過程はすべて最初からやり直しになり、印刷の場合、紙、時間、インク（トナー）等に大きな無駄が生じる。
【０００５】
上記課題を解決するために本発明の目的は、下位層が切断されたことに対して、リカバリのできる通信制御装置、通信制御方法、および、記憶媒体を提供することにある。
【０００６】
【課題を解決するための手段】
上記目的を達成するために、本発明の通信制御装置は、他の機器と通信可能な通信制御装置であって、他の機器へのログインが成功した場合に、上位層の通信で用いられる識別子を他の機器から受信する受信手段と、他の機器との通信における下位層の接続が他の機器へのデータの転送中に切断された場合に、識別子を記憶手段に保持させる制御手段と、切断された下位層の接続が復帰したか否かを判定する判定手段とを有し、制御手段は、判定手段によって所定の時間内に他の機器との下位層の接続が復帰したと判定された場合に、記憶手段に保持された識別子を他の機器に送信するように制御することを特徴とする。
【０００７】
また、本発明の通信制御方法は、他の機器と通信可能な通信制御装置で行われる通信制御方法であって、他の機器へのログインが成功した場合に、上位層の通信で用いられる識別子を他の機器から受信する受信ステップと、他の機器との通信における下位層の接続が他の機器へのデータの転送中に切断された場合に、識別子を記憶手段に保持させる制御ステップと、切断された下位層の接続が復帰したか否かを判定する判定ステップとを有し、制御ステップでは、判定ステップで所定の時間内に他の機器との下位層の接続が復帰したと判定された場合に、記憶手段に保持された識別子を他の機器に送信するように制御することを特徴とする。
【０００８】
また、本発明の記憶媒体は、コンピュータにより読み取り可能な記憶媒体であって、他の機器へのログインが成功した場合に、上位層の通信で用いられる識別子を他の機器から受信する受信ステップと、他の機器との下位層の接続が他の機器へのデータの転送中に切断された場合に、識別子を記憶手段に保持させる制御ステップと、切断された下位層の接続が復帰したか否かを判定する判定ステップとを有し、制御ステップでは、判定ステップで所定の時間内に他の機器との下位層の接続が復帰したと判定された場合に、記憶手段に保持された識別子を他の機器に送信するように制御するステップをコンピュータに実行させるプログラムを記憶することを特徴とする。
また、本発明の通信制御装置は、他の機器と通信可能な通信制御装置であって、他の機器からログイン要求を受信するログイン要求受信手段と、ログイン要求によるログインが成功した場合に、他の機器の上位層で通信に用いられる識別子を他の機器から受信する識別子受信手段と、他の機器との下位層の接続が他の機器からのデータの受信中に切断された場合に、他の機器との下位層の接続が復帰したか否かを判定する復帰判定手段と、復帰判定手段によって他の機器との下位層の接続が復帰したと判定された場合に、識別子受信手段によって受信した識別子に基づいて、受信中のデータの受信を継続するか否かを判定する継続受信判定手段と、継続受信判定手段によって受信中のデータの受信を継続すると判定された場合に、受信中のデータを他の機器から継続して受信する制御手段とを有することを特徴とする。
また、本発明の通信制御方法は、他の機器と通信可能な通信制御装置で行われる通信制御方法であって、他の機器からログイン要求を受信するログイン要求受信ステップと、ログイン要求によるログインが成功した場合に、他の機器の上位層で通信に用いられる識別子を他の機器から受信する識別子受信ステップと、他の機器との下位層の接続が他の機器からのデータの受信中に切断された場合に、他の機器との下位層の接続が復帰したか否かを判定する復帰判定ステップと、復帰判定ステップで他の機器との下位層の接続が復帰したと判定された場合に、識別子受信手段によって受信した識別子に基づいて、受信中のデータの受信を継続するか否かを判定する継続受信判定ステップと、継続受信判定ステップで受信中のデータの受信を継続すると判定された場合に、受信中のデータを他の機器から継続して受信する制御ステップとを有することを特徴とする。
また、本発明の記憶媒体は、コンピュータにより読み取り可能な記憶媒体であって、他の機器からログイン要求を受信するログイン要求受信ステップと、ログイン要求によるログインが成功した場合に、他の機器の上位層で通信に用いられる識別子を他の機器から受信する識別子受信ステップと、他の機器との下位層の接続が他の機器からのデータの受信中に切断された場合に、他の機器との下位層の接続が復帰したか否かを判定する復帰判定ステップと、復帰判定ステップで他の機器との下位層の接続が復帰したと判定された場合に、識別子受信手段によって受信した識別子に基づいて、受信中のデータの受信を継続するか否かを判定する継続受信判定ステップと、継続受信判定ステップで受信中のデータの受信を継続すると判定された場合に、受信中のデータを他の機器から継続して受信する制御ステップとをコンピュータに実行させるプログラムを記憶することを特徴とする。
【０００９】
【発明の実施の形態】
以下、図面を参照し、本発明の実施の形態を詳細に説明する。
【００１０】
図１は本発明に適用したシステム構成の１例である。
【００１１】
図２は図１のホストコンピュータ内部のブロック構成図である。１は本発明を制御するＣＰＵ、２はＣＰＵ１のワークエリアを提供するＲＡＭ、３は本発明の図４、図５のフローチャートに係るプログラムを含む制御プログラムを提供するハードディスク（フロッピーディスク、ＣＤＲＯＭ等でもよい）、４は、ユーザーのコマンドを入力するユーザーコマンド入力装置（具体的にはマウス、キーボード等）、５はＩＥＥＥ１３９４制御装置、６はユーザーＩ／Ｆ表示装置、具体的にはディスプレイ装置、８はメインバスである。
【００１２】
図３は図１の印字装置の内部のブロック構成図である。１１は本発明を制御するＣＰＵ、１２はＣＰＵ１のワークエリアを提供するＲＡＭ、１３は本発明の図６、図７のフローチャートに係るプログラムを含む制御プログラムを提供するＲＯＭ（フロッピーディスク、ＣＤＲＯＭ、ハードディスク等でもよい）、１５はＩＥＥＥ１３９４制御装置、１６は印字を行う印字機構部、１８はメインバスである。
【００１３】
尚、本発明は特に断らない限り、ホストコンピュータではＣＰＵ１がメインバス８を介してＲＡＭ２、ハードディスク３、ユーザーコマンド入力装置４、ＩＥＥＥ１３９４制御装置５を制御して実施する。印字装置ではＣＰＵ１１がメインバス１８を介してＲＡＭ１２、ＲＯＭ１３、ＩＥＥＥ１３９４制御装置１５、印字機構部１６、を制御して実施する。
【００１４】
本発明は、ホストコンピュータ側では、印字データ送出プログラムとバスリセット割り込み処理部プログラムに分かれている。またプリンタ側でも、印字データ受信プログラムとバスリセット割り込み処理部プログラムに分かれている。
【００１５】
前提としてＳＢＰ−２は当該機器がバスから外れたとき、自動的のＬｏｇｏｕｔするものとする。
【００１６】
以下、図４を用いてホストコンピュータ印字データ送出プログラム説明する。
【００１７】
最初は、ユーザーが印字データを作成し印字要求を発行するのを待っている（Ｓ４０１）。
【００１８】
そして印字要求が発生したならば、ホストコンピュータ上のアプリケーションがユーザーが作成したデータに基づき、印字データを作成する（Ｓ４０２）。そしてプリンタへのデータ転送を開始するため、ＩＥＥＥ１３９４制御部５を介して、ＩＥＥＥ１３９４の回線を用いて、ＳＢＰ−２の規定に則り、プリンタに対してＬｏｇｉｎを行う（Ｓ４０３）。Ｌｏｇｉｎが成功したか（Ｓ４０４）。成功しなければ、プリンタに何らかの異常またはプリンタがビジー状態と判断しユーザーに対してユーザーＩ／Ｆ表示装置６を介して、現在プリンタが印字できない状態であることを通知する（Ｓ４０５）。そして作成した印字データを破棄する（Ｓ４０６）。
【００１９】
Ｌｏｇｉｎが成功したならばプリンタに対して新規の印字要求であることを通知するため、ＬＯＧＩＮ識別子としてＮＵＬＬをプリンタにＩＥＥＥ１３９４制御部５を介して、ＩＥＥＥ１３９４の回線を用いて送信する（Ｓ４０７）。そしてプリンタによって発行される、この印字要求に対する、ＬＯＧＩＮ識別子を受信するのを待つ（Ｓ４０８）ＬＯＧＩＮ識別子を受信するとＬＯＧＩＮ識別子の値をＲＡＭ２上Ｐｒｎ  Ｌｏｇｉｎ  ＩＤに格納する（Ｓ４０９）。そしてユーザーＩ／Ｆ表示装置６を介してユーザーに対してセッションタイムアウト時間を聞く（Ｓ４１０）。ユーザーがユーザーコマンド入力装置４を介してセッションタイムアウト時間を入力するのを待つ（Ｓ４１１）ユーザーが入力するとその値をＲＡＭ２上のＳｅｓｉｏｎ  Ｔｉｍｅに保存する（Ｓ４１２）。そしてＲＡＭ２上のＳｅｓｉｏｎ  Ｔｉｍｅの値をプリンタにＩＥＥＥ１３９４制御部５を介して、ＩＥＥＥ１３９４の回線を用いて送信する（Ｓ４１３）。そして印字データをプリンタにＩＥＥＥ１３９４制御部５を介して、ＩＥＥＥ１３９４の回線を用いて送信を開始する（Ｓ４１４）。そして印字データがすべて送信終えると送信を終了する（Ｓ４１５）。通信を終了するため、プリンタに対してＳＢＰ−２の規約に則りＬＯＧＯＵＴする（Ｓ４１６）。次の印字要求を待つため（Ｓ４０１）を実行する。
【００２０】
次に印字データ転送中にプリンタがＩＥＥＥ１３９４の回線から接続がはずれたときのホストコンピュータの動きを図５を用いて説明する。
【００２１】
なおこの動作は、ＩＥＥＥ１３９４のバスリセットによって発生するホストコンピュータの割り込みプログラムの中で実行される。
【００２２】
割り込みが発生する（Ｓ５００）。この割り込みは図８に示す下位層のＩＥＥＥ１３９４のバスリセット（下位層が、回線の切断、または、回線に新たな機器が接続されたことを検知し、回線の切断処理を行うこと）によって発生したものかどうか調べる（Ｓ５０１）。バスリセットによって発生したものでなければその割り込み要因に対応した割り込みルーチンを起動し、処理する（Ｓ５０２）。終了する（Ｓ５２２）。バスリセットによって発生したものであれば、現在プリンタに印字データ転送中かどうか調べる（Ｓ５０３）。印字データ転送中でなければ処理すべき事象はないと判断し、割り込み処理を終了する（Ｓ５２２）。
【００２３】
印字データ転送中であればセッション保持中のプリンタはバスに現在接続されているかどうかをＩＥＥＥ１３９４制御部５を介して、ＩＥＥＥ１３９４の回線を用いて調べる（Ｓ５０４）。接続されていれば、バスｒｅｓｅｔは通信中のプリンタに関して影響するものでないと判断し、割り込み処理を終了する（Ｓ５２２）。接続されていなければ、現在、データ転送中のプリンタがバスからはずされたと判断し、ホストコンピュータ内部の通信のＬｏｇｏｕｔ処理（異常終了処理）を行う（Ｓ５０５）。そして、ホストコンピュータのタイマーを起動し、プリンタがバスからはずれてからの経過時間を測定し（Ｓ５０６）、その時間をＲＡＭ２上のＴｉｍｅに随時格納する。そしてＴｉｍｅとＳｅｓｉｏｎ  Ｔｉｍｅの大小を比較する（Ｓ５０７）。
【００２４】
Ｔｉｍｅ＞＝Ｓｅｓｉｏｎ  Ｔｉｍｅであればセッション保持時間を経過したと判断し、ホストコンピュータの保持している印字データを破棄し（Ｓ５１９）、また印字データ送信中に関わるすべてのタスクを初期化する（Ｓ５２０）。そしてユーザーＩ／Ｆ表示装置６を介してユーザーに対して印字中止を通知する（Ｓ５２１）。終了する（Ｓ５２２）。
【００２５】
Ｔｉｍｅ＜Ｓｅｓｉｏｎ  Ｔｉｍｅであればセッション保持時間内と判断しセッション接続中のプリンタはバスに再接続されたかどうか調べる（Ｓ５０８）。再接続されていなければ（Ｓ５０７）を行う。
【００２６】
再接続されていれば、セッション接続中のプリンタに対してＳＢＰ−２の規定に則り再度Ｌｏｇｉｎを行う（Ｓ５０９）。Ｌｏｇｉｎが成功しなければ、プリンタに何らかの異常と判断しユーザーに対してユーザーＩ／Ｆ表示装置６を介して、現在プリンタが印字できない状態であることを通知する（Ｓ５１７）。そしてホストコンピュータの保持している印字データを破棄し（Ｓ５１８）、また印字データ送信中に関わるすべてのタスクを初期化する。Ｌｏｇｉｎが成功したならばＩＥＥＥ１３９４制御部５を介して、ＩＥＥＥ１３９４の回線を用いてＬｏｇｉｎ識別子としてＰｒｎ  Ｌｏｇｉｎ  ＩＤに格納されているＬｏｇｉｎ  ＩＤをプリンタに送信する（Ｓ５１１）。プリンタから継続受信ＯＫを受信するのは待つ（Ｓ５１２）。（継続受信ＮＧであればＬｏｇｏｕｔして印字データを破棄し、また印字データ送信中に関わるすべてのタスクを初期化する）。継続受信ＯＫであれば中断されていた印字データの続きをプリンタに対して送信を再開する（Ｓ５１３）。そして印字データがすべて送信終えると送信を終了する（Ｓ５１４）。通信を終了するため、プリンタに対してＳＢＰ−２の規約に則りＬＯＧＵＴする（Ｓ５１５）。印字データ送信に関わったすべてのタスクを初期化する（Ｓ５１６）。終了する（Ｓ５２２）。
【００２７】
以下、プリンタの正常時の印字データ受信に関わる動作を図６を用いて説明する。
【００２８】
ＩＥＥＥ１３９４制御部１５を介して、ＩＥＥＥ１３９４の回線よりホストコンピュータからＬｏｇｉｎ要求を受信したか（Ｓ６０１）。受信したならば、続けてＬｏｇｏｎ識別子を受信する（Ｓ６０２）。そして受信したＬｏｇｏｎ識別子がＮＵＬＬかどうか判定する（Ｓ６０３）。ＮＵＬＬであれば新規の印字要求と判断し、新たにＬｏｇｉｎ識別子を発行し、ＲＡＭ１２上のＬＯＧＩＮＩＤに格納する（Ｓ６０４）。Ｌｏｇｉｎ識別子をホストコンピュータに送信する（Ｓ６１１）。次にホストコンピュータからＳｅｓｉｏｎＴｉｍｅｒを受信するのを待つ（Ｓ６１２）。Ｓｅｓｉｏｎ  Ｔｉｍｅを受信すると受信したＳｅｓｉｏｎＴｉｍｅの値をＳｅｓｓｉｏｎ  Ｔｉｍｅに格納する（Ｓ６１３）。ＩＥＥＥ１３９４制御部１５を介して、ＩＥＥＥ１３９４の回線よりホストコンピュータから印字データを受信する（Ｓ６１４）。印字データの受信を終了する（Ｓ６１５）。ホストコンピュータからＬｏｇｏｕｔ通知を受信し（Ｓ６１６）、通信を終了する。印字機構部１６に印字処理を実行させる（Ｓ６１０）。
【００２９】
受信したＬｏｇｏｎ識別子がＮＵＬＬでなければ中断している印字データの継続データ転送と判断し、受信したＬｏｇｏｎ識別子に対応する、いままでに受信した印字データは有効かどうか調べる（Ｓ６０４）。有効でなければホストコンピュータに異常終了通知を送信し、通信を終了させる（Ｓ６０５）。そしてプリンタ内部を初期化する（Ｓ６０６）。Ｓ６０１を実行する。
【００３０】
いままでに受信した印字データは有効であればＩＥＥＥ１３９４制御部１５を介して、ＩＥＥＥ１３９４の回線よりホストコンピュータへ継続受信ＯＫを送信する（Ｓ６０７）、印字データの続きをホストコンピュータから受信し始める（Ｓ６０８）。印字データすべて受信終了する（Ｓ６０９）。ホストコンピュータからＬｏｇｏｕｔ通知を受信し、通信を終了する（Ｓ６１６）。印字機構部１６に印字処理を実行させる（Ｓ６１０）。Ｓ６０１を実行する。
【００３１】
最後に印字データ転送中にホストコンピュータがＩＥＥＥ１３９４の回線から接続がはずれたときのプリンタの動きを図７を用いて説明する。
【００３２】
なおこの動作は、ＩＥＥＥ１３９４のバスリセットによって発生する割り込みプログラムの中で実行される。
【００３３】
割り込みが発生する（Ｓ７００）。この割り込みはＩＥＥＥ１３９４のバスリセットによって発生したものかどうか調べる（Ｓ７０１）。バスリセットによって発生したものでなければその割り込み要因に対応した割り込みルーチンを起動し、処理する（Ｓ７０２）。終了する（Ｓ７１０）。バスリセットによって発生したものであれば、現在このプリンタがセッションを保持しているホストコンピュータがセッション保持中のホストコンピュータがバスに現在接続されているかどうかをＩＥＥＥ１３９４制御部５を介して、ＩＥＥＥ１３９４の回線を用いて調べる（Ｓ７０３）。接続されていれば、バスｒｅｓｅｔは通信中のプリンタに関して影響するものでないと判断し、割り込み処理を終了する（Ｓ７１０）。接続されていなければ、現在、データ転送中のホストコンピュータがバスからはずされたと判断し、プリンタ内部の通信のＬｏｇｏｕｔ処理（異常終了処理）を行う（Ｓ７０４）。そして、プリンタのタイマーを起動し、ホストコンピュータがバスからはずれてからの経過時間を測定し、その時間をＲＡＭ２上のＴＩＭＥに随時格納する（Ｓ７０５）。そしてＴＩＭＥとＳＥＳＩＯＮ  ＴＩＭＥの大小を比較する（Ｓ７０６）。
【００３４】
ＴＩＭＥ＞＝ＳＥＳＩＯＮ  ＴＩＭＥであればセッション保持時間を経過したと判断し、プリンタの保持している受信中断中の印字データを破棄し（Ｓ７０８）、また印字データ送信中に関わるすべてのタスクを初期化する（Ｓ７０９）。終了する（Ｓ７１０）。
【００３５】
ＴＩＭＥ＜ＳＥＳＩＯＮ  ＴＩＭＥであればセッション保持時間内と判断しセッション接続中のプリンタはバスに再接続されたかどうか調べる（Ｓ７０７）。再接続されていなければ（Ｓ７０６）を行う。
【００３６】
再接続されていれば、終了する（Ｓ７１０）。
【００３７】
次に図８に用いて本発明の実施の形態を国際標準として制定されているＯＳＩ（開放型システム間相互接続）の７層モデルと対比させて説明する。
【００３８】
本実施の形態における下位層は、物理層、データリンク層、ネットワーク層、トランスポート層から構成され、上位層は、セッション層、プレゼンテーション層、アプリケーション層から構成される。また、各層と本発明における実現手段を対応させると、上位層は図４、図５のフローチャートに示すプログラムによる制御により実現し、下位層は、ＩＥＴＦにより定められているＳＢＰ−２、及び、ＩＥＥＥ１３９４により実現できる。
【００３９】
（他の発明の実施の形態２）
実施の形態１ではユーザーがセッション保持時間を設定していたが、これをシステムによって固定して利用する方法も考えれる。またホストコンピュータとプリンタのそれぞれバスからはずれたときのセッション保持時間を同じ時間にしていたが、これを別々の時間に設定することも考えられる。
【００４０】
（他の発明の実施の形態３）
実施の形態１ではＩＥＥＥ１３９４を回線として使用してホストコンピュータとプリンタのデータ転送例について記述したが、これを課金のかかる回線を利用した、大容量データ転送にこの制御方式を当てはめても、金銭的な効果は大きいことが容易に想像される。
【００４１】
本発明の実施の形態により、ＩＥＥＥ１３９４のように、複数のイメージデータソースと複数のプリンタが１つの閉じられた通信回路上に接続される可能性があるとき、例えばコネクションを形成しているデータ転送中のイメージデータソースが回線からはずされた時、一定時間が経過すればプリンタは他の回線上のイメージデータソースとデータ転送することができるようになる。
【００４２】
また、下位層が切断された時、上位層もそれに対応して即時切断しないため、ユーザーの不注意、機器配置がえ等による、回線断そして回線再接続が行われたときでも、一定時間内に回線が回復すれば、データ転送過程は継続して実行できることになり、印刷の場合、紙、時間、インク（トナー）等に無駄が生じない。
【００４３】
【発明の効果】
本発明によれば、回線切断時間があっても、回線切断までに送信されたデータを有効に利用することができる。
【図面の簡単な説明】
【図１】本発明が適応可能な、システム構成の１例を示す図である。
【図２】本実施例に必要なホストコンピュータのハードブロック図の１例を示す図である。
【図３】本実施例に必要なプリンタのハードブロック図の１例を示す図である。
【図４】印字データ送出プログラムのフローチャートを示す図である。
【図５】印字データ転送にプリンタがバスから外れた時のホストの動作のフローチャートを示す図である。
【図６】プリンタ正常時の動作のフローチャートを示す図である。
【図７】印字データ転送にホストコンピュータがバスから外れた時のプリンタの動作のフローチャートを示す図である。
【図８】ＯＳＩレイヤ７層モデルと本発明との関係を示す図である。
【図１】
0004040178.tif 000002
【図２】
0004040178.tif 000003
【図３】
0004040178.tif 000004
【図４】
0004040178.tif 000005
【図５】
0004040178.tif 000006
【図６】
0004040178.tif 000007
【図７】
0004040178.tif 000008
【図８】
0004040178.tif 000009