[go: up one dir, main page]

JP6289057B2 - 通信装置とその制御方法、印刷装置とその制御方法、及びプログラム - Google Patents

通信装置とその制御方法、印刷装置とその制御方法、及びプログラム Download PDF

Info

Publication number
JP6289057B2
JP6289057B2 JP2013247633A JP2013247633A JP6289057B2 JP 6289057 B2 JP6289057 B2 JP 6289057B2 JP 2013247633 A JP2013247633 A JP 2013247633A JP 2013247633 A JP2013247633 A JP 2013247633A JP 6289057 B2 JP6289057 B2 JP 6289057B2
Authority
JP
Japan
Prior art keywords
storage means
size
window size
determined
empty
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2013247633A
Other languages
English (en)
Other versions
JP2015106796A (ja
JP2015106796A5 (ja
Inventor
井上 剛
剛 井上
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2013247633A priority Critical patent/JP6289057B2/ja
Priority to US14/552,760 priority patent/US9239692B2/en
Priority to CN201410707787.5A priority patent/CN104683647B/zh
Publication of JP2015106796A publication Critical patent/JP2015106796A/ja
Publication of JP2015106796A5 publication Critical patent/JP2015106796A5/ja
Application granted granted Critical
Publication of JP6289057B2 publication Critical patent/JP6289057B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/121Facilitating exception or error detection and recovery, e.g. fault, media or consumables depleted
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/1218Reducing or saving of used resources, e.g. avoiding waste of consumables or improving usage of hardware resources
    • G06F3/122Reducing or saving of used resources, e.g. avoiding waste of consumables or improving usage of hardware resources with regard to computing resources, e.g. memory, CPU
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1229Printer resources management or printer maintenance, e.g. device status, power levels
    • G06F3/1234Errors handling and recovery, e.g. reprinting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1236Connection management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1278Dedicated interfaces to print systems specifically adapted to adopt a particular infrastructure
    • G06F3/1285Remote printer device, e.g. being remote from client or server
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K15/00Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers
    • G06K15/02Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers using printers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K15/00Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers
    • G06K15/02Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers using printers
    • G06K15/18Conditioning data for presenting it to the physical printing elements
    • G06K15/1801Input data handling means
    • G06K15/1817Buffers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K15/00Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers
    • G06K15/02Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers using printers
    • G06K15/18Conditioning data for presenting it to the physical printing elements
    • G06K15/1801Input data handling means
    • G06K15/1821Sending feedback on the reception process to the data source, e.g. indication of full buffer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/12Arrangements for detecting or preventing errors in the information received by using return channel
    • H04L1/16Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
    • H04L1/1607Details of the supervisory signal
    • H04L1/1685Details of the supervisory signal the supervisory signal being transmitted in response to a specific request, e.g. to a polling signal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/00127Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Mathematical Physics (AREA)
  • Accessory Devices And Overall Control Thereof (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Communication Control (AREA)
  • Facsimiles In General (AREA)

Description

本発明は、通信装置とその制御方法印刷装置とその制御方法、及びプログラムに関する。
ウィンドウサイズを用いてフロー制御を行う通信方法が知られている(例えば、特許文献1参照)。この通信方法では、送信側(例えば、ホストコンピュータ(クライアントコンピュータ))は、受信側(例えば、印刷装置)からの確認応答パケットがなくとも、受信側が示すウィンドウサイズ分のデータを転送することができるため、確認応答の回数が少なくなる。よって、ウィンドウサイズを大きくすることにより、通信効率を高めることができる。
しかし、例えば、TCPを使用したコネクション型の通信方法の中には、送信側が、受信側との間でコネクションが確立されるとその直後に印刷データの送信を開始し、印刷データの送信が終了し次第、処理が正常終了するものがある。この場合、仮に、受信側が印刷データを受信することができない状態になっていると、受信側では、受信した印刷データが破される。その結果、ユーザにとっては、印刷データの送信処理が成功しているにもかかわらず、受信側からは印刷データが印刷されたシートが排紙されないため、印刷データが消失したように見える。
一例として、図6(a)に、印刷データの消失が生じ得る場合の通信フローの例を示す。ここでは、受信側である印刷装置のウィンドウサイズは8Kバイトであり、送信側であるホストコンピュータが5Kバイトのサイズの印刷データを印刷装置へ送信するものとする。このようにウィンドウサイズが印刷データサイズ以上である場合、ホストコンピュータは、印刷装置からの確認応答を待たずに、全印刷データを送信する。そのため、印刷装置が印刷不能状態になっていると、印刷データの消失が発生する。なお、図6(a)中、「SYN」は同期(接続要求)を、「ACK」は受信確認を、「FIN」は送信終了を示す。
この問題に対処するために、受信側が応答する初期ウィンドウサイズを一律に小さくすることによって、送信側が一度に全ての印刷データを送ることができないようにして、印刷データの消失の発生を防止する技術が提案されている(例えば、特許文献2参照)。図6(b)に、受信側の初期ウィンドウサイズが小さく設定されている場合の通信フローの例を示す。ここでは、受信側である印刷装置の初期ウィンドウサイズが1Kバイトに設定されている場合に、送信側のホストコンピュータが合計で5Kバイトのサイズの印刷データを印刷装置へ送信するものとする。
この場合、印刷装置が印刷不能状態にあると、ホストコンピュータは最初の1Kバイト以降の印刷データを印刷装置へ送信することができないため、印刷装置からの応答待ち状態となる。ホストコンピュータが印刷装置から受信拒否応答を受信すると、印刷送信エラーとなるため、ユーザは送信エラーが発生したことを確認することができる。なお、図6(b)中、「SYN」及び「ACK」は、図6(a)の場合と同じであり、図6(b)中、「RST」はリセットを示すが、ここでは、受信拒否応答と同義となる。
また、通信パフォーマンスを向上させるために、受信ウィンドウの自動チューニング機能を搭載するプロトコルスタックが提案されている(例えば、特許文献3参照)。図7(a)に、受信ウィンドウの自動チューニングを行う通信フローの例を示す。受信ウィンドウの自動チューニング機能とは、受信側の印刷装置が、送信側のホストコンピュータの送信応答速度に応じてウィンドウサイズを動的に変更する機能である。そのため、ホストコンピュータが遅延なくデータを送信してくることに応じて受信側は徐々にウィンドウサイズを大きくし、これにより高速な通信を実現することができる。
特開2004―064665号公報 特許第4324048号公報 特開平5−232058号公報
しかし、受信ウィンドウの自動チューニング機能を採用している印刷装置において前述のデータ消失防止機能を実現すると、印刷データの受信パフォーマンスが低下してしまう場合がある。図7(b)に、受信パフォーマンスが低下してしまう場合の通信フローの例を示す。
例えば、ネットワークトラフィックが多い環境や、送信側と受信側とが物理的に離れているネットワーク環境では、受信側から見ると送信側のデータ送信速度が遅く見える。そのため、受信側は「これ以上ウィンドウサイズを大きくする必要はない」と判断して、初期ウィンドウサイズからサイズを大きくせずにデータ受信を継続してしまう。つまり、送信側が合計で100Kバイトの印刷データを送信したい場合に、初期ウィンドウサイズが1Kバイトでウィンドウサイズが変化しない場合、合計100回の送受信を行う必要があり、時間がかかってしまうことになる。これに対して、例えば、受信ウィンドウの自動チューニング機能が働き、2回目のウィンドウサイズは50Kバイト、3回目のウィンドウサイズは500Kバイトに変更されれば、合計3回の送受信で印刷データの送信は完了することになる。
このように、従来の通信フローでは、データ消失問題を解消しようとすると受信パフォーマンスの低下が顕著化する場合があり、一方、受信パフォーマンスを高めるために初期ウィンドウサイズを大きくするとデータ消失問題が顕著化してしまうという問題がある。
本発明は、通信データを消失させることなく、且つ、受信パフォーマンスの低下を防止することができる通信フロー制御を実現するための技術を提供することを目的とする。
本発明に係る通信装置は、外部装置と通信する通信装置であって、前記外部装置が送信するデータを記憶する第1の記憶手段と、前記第1の記憶手段から転送されたデータを記憶する第2の記憶手段と、前記第1の記憶手段の空き状況と前記第2の記憶手段の空き状況とに基づいて、前記外部装置に通知するウィンドウサイズを決定する決定手段と、前記決定手段によって決定されたウィンドウサイズを前記外部装置に通知する通知手段と、を備え、前記決定手段は、前記第1の記憶手段に空きがない場合、ウィンドウサイズを0と決定し、前記第1の記憶手段に空きがあり、かつ、前記第2の記憶手段に空きがない場合、ウィンドウサイズを0より大きく前記データのサイズより小さい第1のサイズと決定し、前記第1の記憶手段と前記第2の記憶手段の両方に空きがあり、かつ、前記通信装置において所定のエラーが発生している場合、ウィンドウサイズを前記第1のサイズと決定し、前記第1の記憶手段と前記第2の記憶手段の両方に空きがあり、かつ、前記通信装置において前記所定のエラーが発生していない場合、ウィンドウサイズを前記第1のサイズより大きい第2のサイズと決定することを特徴とする。
本発明によれば、特定のデータを消失させることなく、且つ、受信パフォーマンスの低下を防止した通信フロー制御を実現することができる。
本発明の実施形態に係る印刷装置のハードウェア構成の概略を示すブロック図である。 図1の印刷装置のソフトウェア構成を示す図である。 図1の印刷装置におけるデータ受信時におけるウィンドウサイズの制御処理のフローチャートである。 図3のステップS306で実行される印刷データ受信処理のフローチャートである。 図1の印刷装置において印刷不可のエラーが発生している場合の印刷データ受信処理のフローチャートである。 従来技術において、印刷データの消失が生じ得る場合の通信フローの例と、受信側の初期ウィンドウサイズが小さく設定されている場合の通信フローの例を示す図である。 従来技術において、受信ウィンドウの自動チューニングを行う通信フローの例と、受信ウィンドウの自動チューニングを行う通信フローにおいて受信パフォーマンスが低下する通信フローの例を示す図である。
以下、本発明の実施形態について、添付図面を参照して詳細に説明する。ここでは、本発明に係る通信装置として、印刷データを受信し、シートへの印刷を行う印刷装置(プリンタ)を取り上げることとする。但し、本発明に係る通信装置は印刷装置に限定されるものではなく、また、通信データも印刷データに限定されるものでなく、ネットワークや電話回線を介して各種のデータを受信する通信装置に適用することができる。
図1は、本発明の実施形態に係る印刷装置100のハードウェア構成の概略を示すブロック図である。印刷装置100は、制御部101、プリンタ部107、スキャナ部109及び操作パネル部111を備える。また、制御部101は、システムバス114に接続された、CPU102、RAM103、ROM104、HDD105、プリンタI/F106、スキャナI/F108、操作パネルI/F110、無線LAN_I/F112及び有線LAN_I/F113を備える。
制御部101は、印刷装置100の全体動作を制御する。CPU102は、ROM104に記憶された制御プログラムやHDD105に記憶された各種のプログラム等を読み出して通信制御等の各種制御を行う。RAM103は、CPU102の主メモリ、ワークエリア等の一時領域として用いられる。HDD105は、データや各種のプログラム、各種の情報テーブル等を記憶(格納)する。
プリンタI/F106は、プリンタ部(プリンタエンジン)107と制御部101とを接続する。プリンタ部107は、プリンタI/F106を介して入力された印刷データに基づき、不図示の給紙カセットから給紙された用紙(シート)等の媒体に印刷処理を実行する。スキャナI/F108は、スキャナ部109と制御部101とを接続する。スキャナ部109は、載置された原稿を読み取り、画像データを生成する。スキャナ部109が生成した画像データは、プリンタ部107で印刷され、HDD105に記憶され、或いは、無線LAN_I/F112又は有線LAN_I/F113を介して外部装置に送信される。操作パネルI/F110は、操作パネル部111と制御部101とを接続し、操作パネル部111が備える各種の不図示のボタン(キー)やタッチパネルからの入力指示を制御部101へ伝える。
無線LAN_I/F112は、無線LANにより接続された外部装置との間で無線通信を実行可能とするためのインタフェースである。有線LAN_I/F113には、LANケーブル(イーサネット(登録商標)ケーブル)が接続される。有線LAN_I/F113は、LANケーブルを介して外部装置との間での通信を可能とするためのインタフェースである。印刷装置100は、無線LAN_I/F112を介した無線通信及び/又は有線LAN_I/F113を介した有線通信により、外部装置から印刷データを受信し、受信した印刷データに基づいてプリンタ部107で印刷処理を実行する。また、印刷装置100は、スキャナ部109が生成した画像データを、無線LAN_I/F112及び/又は有線LAN_I/F113を介して外部装置に送信することもできる。
なお、本実施形態では、印刷装置100は、1つのCPU102が1つのメモリ(RAM103)を用いて、後述するフローチャートに従う各処理を実行するものとする。但し、このような構成に限定されず、例えば、複数のCPUや複数のメモリが協働して、後述するフローチャートに従う各処理を実行する構成であってもよい。
図2は、印刷装置100のソフトウェア構成を示す図である。図2に示す各機能部は、印刷装置100のCPU102が、所定の制御プログラムを実行することにより実現される。印刷装置100は、ソフトウェアとして、ネットワーク通信ドライバ部201、ネットワークプロトコルスタック部202及びネットワークアプリケーション部206を備える。
ネットワーク通信ドライバ部201は、無線LAN_I/F112及び有線LAN_I/F113を制御し、ネットワークに接続された外部装置との間での信号の転送を制御する。
ネットワークプロトコルスタック部202は、データ送受信制御部203、データ受信メモリ204及びウィンドウサイズ制御部205を含む。データ送受信制御部203は、ネットワーク通信ドライバ部201を介して受信したデータのネットワークアプリケーション部206への転送制御や、ネットワークアプリケーション部206からの送信データのネットワーク通信ドライバ部201への転送制御を行う。データ受信メモリ204は、ネットワークプロトコルスタック部202が受信した全データを一時的に格納するバッファメモリ(第1の記憶手段)であり、ネットワークアプリケーション部206からの読み出し要求があるまで受信データを格納する。そして、データ受信メモリ204は、ネットワークアプリケーション部206へのデータ転送が完了すると、格納した受信データを消去する。ウィンドウサイズ制御部205は、データ受信メモリ204のメモリ空き状況や、外部装置からの送信速度応答を判別し、ネットワークプロトコルスタック部202が応答すべきウィンドウサイズを決定する。ウィンドウサイズ制御部205は、データ受信メモリ204の空きが少なくなるとウィンドウサイズを小さくし、メモリの空きが大きく、且つ、外部装置からの送信速度応答が速いときにはウィンドウサイズを大きくしていく。
ネットワークアプリケーション部206は、ネットワーク通信を利用する様々なアプリケーションから構成されており、ここでは、印刷アプリケーション部207と、メールアプリケーション部208を含むものとする。印刷アプリケーション部207は更に、印刷データ送受信制御部209、印刷データ受信可能判断部210及び印刷データ受信メモリ211を含む。
印刷データ送受信制御部209は、ネットワークプロトコルスタック部202から印刷データを受信し、プリンタ部107へ画像データを転送する。印刷データ受信メモリ211は、受信した印刷データ(ネットワークプロトコルスタック部202が受信した全受信データのうちの特定のデータ)を一時的に格納するバッファメモリ(第2の記憶手段)である。プリンタ部107へ画像データを転送し終わると、印刷データは印刷データ受信メモリ211から消去される。印刷データ受信可能判断部210は、印刷データ受信メモリ211のメモリ空き状況やプリンタ部107でのエラー発生状況を判別し、印刷可能か否かを判断する。
図3は、印刷装置100におけるデータ受信時におけるウィンドウサイズの制御処理のフローチャートである。図3に示す各処理は、CPU102が、ROM104又はHDD105に格納されている所定のプログラムをRAM103のワークエリアに展開、実行することにより実現される。
ステップS301において、CPU102は、ネットワーク通信ドライバ部201により、外部装置からコネクション確立要求のデータを受信したか否かを判断し、コネクション確立要求のデータを受信するまで待機する(S301でNO)。コネクション確立要求のデータを受信すると(S301でYES)、CPU102は、ネットワーク通信ドライバ部201により、受信データをデータ送受信制御部203へ転送する。そして、ステップS302において、CPU102は、ウィンドウサイズ制御部205により、その時点でデータ受信メモリ204に空きバッファメモリ領域があるか否かを判断する。
空きバッファメモリ領域がない場合(S302でNO)、CPU102は、処理をステップS308へ進める。ステップS308において、CPU102は、ウィンドウサイズ制御部205により、応答データのウィンドウサイズに「0」を設定する。その後、ステップS309において、CPU102は、データ送受信制御部203により、ネットワーク通信ドライバ部201を介して、応答データを外部装置へ送信する。その後、CPU102は、ウィンドウサイズ制御部205により、データ受信メモリ204に空きバッファメモリ領域ができるまで監視するため、処理をステップS302へ戻す。
空きバッファメモリ領域がある場合(S302でYES)、CPU102は、処理をステップS303へ進める。ステップS303において、CPU102は、ウィンドウサイズ制御部205により、印刷データ受信メモリ211に空きバッファメモリ領域があるか否かを判断する。なお、ステップS303の判断には、ウィンドウサイズ制御部205が、直接、印刷データ受信メモリ211を参照して空き状況を確認する方法用いられる。一方、ステップS303の判断には、ウィンドウサイズ制御部205が、印刷データ受信可能判断部210に問い合わせて、印刷データ受信可能判断部210が印刷データ受信メモリ211を参照して空き状況を確認する方法を用いてもよい。
印刷データ受信メモリ211に空きバッファメモリ領域がない場合(S303でYES)、CPU102は、処理をステップS307へ進める。ステップS307において、CPU102は、ウィンドウサイズ制御部205により、応答データの初期ウィンドウサイズに小さい値(以下「第1のデータサイズ」という)を設定する。設定された初期ウィンドウサイズはHDD105又はRAM103に記憶される。この第1のデータサイズは、外部装置が印刷装置100へ送信する印刷データサイズより小さい値である必要がある。第1のデータサイズは、ユーザが任意の値に設定変更することができるように、操作パネル部111の操作により変更可能としてもよい。例えば、第1のデータサイズには、1Kバイトが設定される。
印刷データ受信メモリ211に空きバッファメモリ領域がある場合(S303でNO)、CPU102は、処理をステップS304へ進める。ステップS304において、CPU102は、ウィンドウサイズ制御部205により、応答データの初期ウィンドウサイズに、第1のデータサイズよりも十分に大きい値(以下「第2のデータサイズ」という)を設定する。この第2のデータサイズは、印刷装置100のネットワークプロトコルスタック部202の初期設定値でもよいし、ユーザによる操作パネル部111の操作により任意の設定と変更ができるようになっていてもよい。例えば、第2のデータサイズには、10Kバイトが設定される。設定された初期ウィンドウサイズはHDD105又はRAM103に記憶される。
ステップS304,S307の後、CPU102は、処理をステップS305へ進める。ステップS305では、CPU102は、データ送受信制御部203により、ネットワーク通信ドライバ部201を介してステップS304,S307で設定した初期ウィンドウサイズを含む応答データを外部装置へ送信する。続くステップ306において、CPU102は、ネットワーク通信ドライバ部201を介して、印刷データの受信処理を行う。ステップS306の終了後、CPU102は、処理をステップS301へ戻す。
なお、上述のステップS303では、印刷データ受信メモリ211に空きバッファメモリ領域があるか否かは、受信した印刷データのジョブ数或いは合計サイズによって判断する。例えば、印刷装置100は最大で100ジョブまで印刷処理が可能である場合、101ジョブ目を受信すると、印刷データ受信メモリ211には空きバッファメモリ領域がないと判断する。また、例えば、印刷データ受信メモリ211が最大で1Gバイトまでの受信印刷データのバッファメモリとして確保されている場合、1Gバイトを超えて印刷データを受信したときに、印刷データ受信メモリ211には空きバッファメモリ領域がないと判断する。
図4は、ステップS306で実行される印刷データ受信処理のフローチャートである。印刷装置100のCPU102がネットワーク通信ドライバ部201を介して初期ウィンドウサイズを外部装置へ通知すると、この通知を受信した外部装置からは、通知された初期ウィンドウサイズ分の印刷データ(以下「最初の印刷データ」という)だけが送信されてくる。外部装置は、最初の印刷データを送信し終えると、後続の印刷データを送信してくることなく、送信を停止する。
そこで、ステップS401において、CPU102は、先ず、ネットワーク通信ドライバ部201を介して最初の印刷データを受信したか否かを判断し、最初の印刷データを受信するまで待機する(S401でNO)。なお、ネットワーク通信ドライバ部201が受信した最初の印刷データは、データ送受信制御部203、印刷データ送受信制御部209へと逐次転送され、印刷データ送受信制御部209が最初の印刷データを受信したか否かが、最初のデータを受信したか否かの判断基準となる。
最初の印刷データを受信すると(S401でYES)、CPU102は、処理をステップS402へ進める。ステップS402において、CPU102は、印刷データ受信可能判断部210により、その時点で印刷データ受信メモリ211に空きバッファメモリ領域があるか否かを判断する。空きバッファメモリ領域がない場合(S402でYES)、CPU102は、処理をステップS406へ進める。
ステップS406では、印刷データを受信することができないため、CPU102は、印刷データ送受信制御部209により、ネットワーク通信ドライバ部201を介して外部装置へ印刷要求に対する拒否応答を送信する。例えば、初期ウィンドウサイズが1Kバイトである場合には、印刷データが1Kバイトより大きい場合に限り、外部装置はこの拒否応答を受信することができるため、ジョブ消失の問題は発生しない。これにより、外部装置は印刷データの送信が途中で異常終了したと判断することができ、必要であればユーザに通知を行うことができる。なお、小さい値のウィンドウサイズを設定した場合の通信フローは、従来技術として説明した図6(b)に準ずる。ステップS406の実行後、本処理は終了となる。
ステップS402において空きバッファメモリ領域がある場合(S402でNO)、CPU102は、処理をステップS403へ進める。ステップS403において、CPU102は、印刷データ送受信制御部209により、後続の印刷データがあるか否かを判断する。ここで、後続の印刷データがあるか否かは、データ送受信制御部203が外部装置からTCPのFINデータ(FINパケット)を受信したか否かで判断することができる。後続のデータがない場合(S403でNO)、CPU102は、印刷データ送受信制御部209により、印刷データの受信処理を終了させ、これにより本処理は終了となる。後続のデータがある場合(S403でYES)、CPU102は、処理をステップS404へ進める。
ステップS404において、CPU102は、データ送受信制御部203により、次の応答データに含めるウィンドウサイズを決定する。例えば、データ受信メモリ204に十分な空きバッファメモリ領域があり、且つ、外部装置からのデータ送信速度が速い場合には、データ送受信制御部203は、より大きいウィンドウサイズを決定する。このように状況に応じてウィンドウサイズを大きく設定することで、より高速な通信速度を実現することができる。なお、大きい値のウィンドウサイズを設定した場合の通信フローは、図7(a)に準ずる。
これに対して、データ受信メモリ204に十分な空きバッファメモリ領域がなく、データ送受信制御部203が、これ以上の印刷データを受け取ることができない場面が想定される。この場合には、外部装置が印刷データを送信してこないように、ステップS404においてウィンドウサイズを「ゼロ(0)」に決定する。また、外部装置からのデータ送信速度が遅い場合、CPU102は、データ送受信制御部203により、ウィンドウサイズを大きくする必要はないと判断して、その時点でのウィンドウサイズと同じ値に決定する。
続くステップS405において、CPU102は、データ送受信制御部203により、ステップS404で決定したウィンドウサイズを含む応答データを、ネットワーク通信ドライバ部201を介して外部装置へ送信する。その後、CPU102は、処理をステップS401へ戻し、ステップS401〜S406のデータ受信処理を終了まで繰り返す。なお、ステップS405からステップS401へ戻ったときのステップS401で判断される「印刷データ」は、後続の印刷データとなる。
上記実施形態によれば、印刷装置100は、データ受信メモリ204と印刷データ受信メモリ211の状態を確認して応答するウィンドウサイズを切り替える。そのため、印刷データが消失するという問題と、印刷データ受信速度が遅いという問題の両方を解決することができ、常に最適で高速な通信速度を実現することができる。
さて、上記実施形態では、CPU102は、ウィンドウサイズ制御部205により、データ受信メモリ204と印刷データ受信メモリ211を参照して、応答するウィンドウサイズを決定することで、印刷データの消失を防止している。しかし、印刷装置100の構成によって、他にも印刷データを受信できない場合がある。例えば、メモリ不足以外の要因で、印刷データを受信できない場合として、プリンタ部107のハードウェアが故障していてエラーが発生している場合や、内部システムの不具合で何らかのエラーが発生している場合が挙げられる。
このような場合も上記実施形態と同様に、応答するウィンドウサイズの値を小さくして印刷データの消失を防止する必要があり、この問題に対処するための印刷データ受信処理について、図5のフローチャートを参照して説明する。図5は、印刷装置100において印刷不可のエラーが発生している場合の印刷データ受信処理のフローチャートである。図5に示す各処理は、CPU102が、ROM104又はHDD105に格納されている所定のプログラムをRAM103のワークエリアに展開、実行することにより実現される。
ステップS501〜S503,S509,S510の処理はそれぞれ、図3のステップS301〜S303,S308,S309の処理と同じであるため、ここでの説明を省略する。ステップS503において、印刷データ受信メモリ211に空きバッファメモリ領域がない場合(S503でYES)、CPU102は、処理をステップS508へ進める。一方、印刷データ受信メモリ211に空きバッファメモリ領域がある場合(S503でNO)、CPU102は、処理をステップS504へ進める。
ステップS504において、CPU102は、印刷データ送受信制御部209を通じて、印刷データ受信可能判断部210に印刷データの受信可能状態であるか否かを問い合わせる。この問い合わせを受けて、CPU102は、印刷データ受信可能判断部210により、印刷装置100に印刷不可のエラーが発生しているか否かを判断する。
エラーが発生している場合(S504でYES)、印刷データ受信可能判断部210は、印刷不可のエラーが発生していて印刷データ受信は不可能であると印刷データ送受信制御部209に応答し、その結果、CPU102は処理をステップS508へ進める。一方、エラーが発生していない場合(S504でNO)、印刷データ受信可能判断部210は、印刷不可のエラーは発生しておらず、印刷データ受信が可能であると印刷データ送受信制御部209に応答し、その結果、CPU102は処理をステップS505へ進める。
ステップS508の処理は、図3のステップS307の処理と同じであり、また、ステップS505の処理は、図3のステップS304の処理と同じであるので、ここでの説明を省略する。ステップS505,S508の後、CPU102は、処理をステップS506へ進める。ステップS506,S507の処理はそれぞれ、図3のステップS305,S306の処理と同じであるため、ここでの説明を省略する。
図5のフローチャートの処理によれば、印刷装置100は、データ受信メモリ204と印刷装置100の印刷可否状態を確認して応答するウィンドウサイズを切り替えることができる。そのため、印刷装置100が印刷不可能な状態でも、印刷データが消失するという問題を解決することができる。
以上、本発明をその好適な実施形態に基づいて詳述してきたが、本発明はこれら特定の実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の様々な形態も本発明に含まれる。
本発明は以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)をネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(又はCPUやMPU等)がプログラムコードを読み出して実行する処理である。この場合、そのプログラム、及び該プログラムを記憶した記憶媒体は本発明を構成することになる。
100 印刷装置
101 制御部
102 CPU
104 ROM
105 HDD
107 プリンタ部
201 ネットワーク通信ドライバ部
202 ネットワークプロトコルスタック部
203 データ送受信制御部
204 データ受信メモリ(第1の記憶手段)
205 ウィンドウサイズ制御部
206 ネットワークアプリケーション部
207 印刷アプリケーション部
209 印刷データ送受信制御部
210 印刷データ受信可能判断部
211 印刷データ受信メモリ(第2の記憶手段)

Claims (11)

  1. 外部装置と通信する通信装置であって、
    前記外部装置が送信するデータを記憶する第1の記憶手段と、
    前記第1の記憶手段から転送されたデータを記憶する第2の記憶手段と、
    前記第1の記憶手段の空き状況と前記第2の記憶手段の空き状況とに基づいて、前記外部装置に通知するウィンドウサイズを決定する決定手段と、
    前記決定手段によって決定されたウィンドウサイズを前記外部装置に通知する通知手段と、を備え
    前記決定手段は、
    前記第1の記憶手段に空きがない場合に、ウィンドウサイズを0と決定し、
    前記第1の記憶手段に空きがあり、かつ、前記第2の記憶手段に空きがない場合に、ウィンドウサイズを0より大きく前記データのサイズより小さい第1のサイズと決定し、
    前記第1の記憶手段と前記第2の記憶手段の両方に空きがあり、かつ、前記通信装置において所定のエラーが発生している場合に、ウィンドウサイズを前記第1のサイズと決定し、
    前記第1の記憶手段と前記第2の記憶手段の両方に空きがあり、かつ、前記通信装置において前記所定のエラーが発生していない場合に、ウィンドウサイズを前記第1のサイズより大きい第2のサイズと決定することを特徴とする通信装置。
  2. 前記決定手段は、前記外部装置に通知する初期ウィンドウサイズを決定することを特徴とする請求項1に記載の通信装置。
  3. 前記第2の記憶手段は、前記第1の記憶手段に記憶されたデータのうち、特定のデータを記憶することを特徴とする請求項1又は2に記載の通信装置。
  4. 前記特定のデータは、印刷データであって、
    前記通信装置は、前記印刷データに基づいて印刷処理を実行する印刷手段をさらに備えることを特徴とする請求項3に記載の通信装置。
  5. 外部装置と通信する印刷装置であって、
    前記外部装置が送信するデータを記憶する第1の記憶手段と、
    前記第1の記憶手段が記憶するデータのうち印刷データを記憶する第2の記憶手段と、 前記第2の記憶手段が記憶している印刷データに基づいて、シートに印刷を実行する印刷手段と、
    前記第1の記憶手段の空き状況と前記第2の記憶手段の空き状況とに基づいて、前記外部装置に通知するウィンドウサイズを決定する決定手段と、
    前記決定手段によって決定されたウィンドウサイズを前記外部装置に通知する通知手段と、を備え
    前記決定手段は、
    前記第1の記憶手段に空きがない場合に、ウィンドウサイズを0と決定し、
    前記第1の記憶手段に空きがあり、かつ、前記第2の記憶手段に空きがない場合に、ウィンドウサイズを0より大きく前記データのサイズより小さい第1のサイズと決定し、
    前記第1の記憶手段と前記第2の記憶手段の両方に空きがあり、かつ、前記印刷装置において所定のエラーが発生している場合に、ウィンドウサイズを前記第1のサイズと決定し、
    前記第1の記憶手段と前記第2の記憶手段の両方に空きがあり、かつ、前記印刷装置において前記所定のエラーが発生していない場合に、ウィンドウサイズを前記第1のサイズより大きい第2のサイズと決定することを特徴とする印刷装置。
  6. 前記所定のエラーは印刷不可のエラーであることを特徴とする請求項に記載の印刷装置。
  7. 前記決定手段は、前記外部装置に通知する初期ウィンドウサイズを決定することを特徴とする請求項に記載の印刷装置。
  8. 外部装置と通信する通信装置の制御方法であって、
    前記外部装置が送信するデータを第1の記憶手段に記憶するステップと、
    前記第1の記憶手段から転送されたデータを第2の記憶手段に記憶するステップと、
    前記第1の記憶手段の空き状況と前記第2の記憶手段の空き状況とに基づいて、前記外部装置に通知するウィンドウサイズを決定するステップと、
    前記決定されたウィンドウサイズを前記外部装置に通知するステップと、を有し、
    前記ウィンドウサイズを決定するステップでは、
    前記第1の記憶手段に空きがない場合に、ウィンドウサイズは0に決定され、
    前記第1の記憶手段に空きがあり、かつ、前記第2の記憶手段に空きがない場合に、ウィンドウサイズは0より大きく前記データのサイズより小さい第1のサイズに決定され、
    前記第1の記憶手段と前記第2の記憶手段の両方に空きがあり、かつ、前記通信装置において所定のエラーが発生している場合に、ウィンドウサイズは前記第1のサイズに決定され、
    前記第1の記憶手段と前記第2の記憶手段の両方に空きがあり、かつ、前記通信装置において前記所定のエラーが発生していない場合に、ウィンドウサイズは前記第1のサイズより大きい第2のサイズに決定されることを特徴とする通信装置の制御方法。
  9. コンピュータを、
    外部装置が送信するデータを記憶する第1の記憶手段、
    前記第1の記憶手段から転送されたデータを記憶する第2の記憶手段、
    前記第1の記憶手段の空き状況と前記第2の記憶手段の空き状況とに基づいて、前記外部装置に通知するウィンドウサイズを決定する決定手段、及び、
    前記決定手段によって決定されたウィンドウサイズを前記外部装置に通知する通知手段の各手段として機能させ
    前記決定手段が、
    前記第1の記憶手段に空きがない場合に、ウィンドウサイズを0と決定し、
    前記第1の記憶手段に空きがあり、かつ、前記第2の記憶手段に空きがない場合に、ウィンドウサイズを0より大きく前記データのサイズより小さい第1のサイズと決定し、
    前記第1の記憶手段と前記第2の記憶手段の両方に空きがあり、かつ、所定のエラーが発生している場合に、ウィンドウサイズを前記第1のサイズと決定し、
    前記第1の記憶手段と前記第2の記憶手段の両方に空きがあり、かつ、前記所定のエラーが発生していない場合に、ウィンドウサイズを前記第1のサイズより大きい第2のサイズと決定することを特徴とするプログラム。
  10. 外部装置と通信する印刷装置の制御方法であって、
    前記外部装置が送信するデータを第1の記憶手段に記憶するステップと、
    前記第1の記憶手段が記憶するデータのうち印刷データを第2の記憶手段に記憶するステップと、
    前記第2の記憶手段が記憶している印刷データに基づいて、印刷手段によりシートに印刷を実行するステップと、
    前記第1の記憶手段の空き状況と前記第2の記憶手段の空き状況とに基づいて、前記外部装置に通知するウィンドウサイズを決定するステップと、
    前記決定されたウィンドウサイズを前記外部装置に通知するステップと、を有し、
    前記ウィンドウサイズを決定するステップでは、
    前記第1の記憶手段に空きがない場合に、ウィンドウサイズは0に決定され、
    前記第1の記憶手段に空きがあり、かつ、前記第2の記憶手段に空きがない場合に、ウィンドウサイズは0より大きく前記データのサイズより小さい第1のサイズに決定され、
    前記第1の記憶手段と前記第2の記憶手段の両方に空きがあり、かつ、前記印刷装置において所定のエラーが発生している場合に、ウィンドウサイズは前記第1のサイズに決定され、
    前記第1の記憶手段と前記第2の記憶手段の両方に空きがあり、かつ、前記印刷装置において前記所定のエラーが発生していない場合に、ウィンドウサイズは前記第1のサイズより大きい第2のサイズに決定されることを特徴とする印刷装置の制御方法。
  11. コンピュータを、
    外部装置が送信するデータを記憶する第1の記憶手段、
    前記第1の記憶手段が記憶するデータのうち印刷データを記憶する第2の記憶手段、 前記第2の記憶手段が記憶している印刷データに基づいて、印刷手段によりシートに印刷を実行する制御手段、
    前記第1の記憶手段の空き状況と前記第2の記憶手段の空き状況とに基づいて、前記外部装置に通知するウィンドウサイズを決定する決定手段、及び、
    前記決定手段によって決定されたウィンドウサイズを前記外部装置に通知する通知手段の各手段として機能させ
    前記決定手段が、
    前記第1の記憶手段に空きがない場合に、ウィンドウサイズを0と決定し、
    前記第1の記憶手段に空きがあり、かつ、前記第2の記憶手段に空きがない場合に、ウィンドウサイズを0より大きく前記データのサイズより小さい第1のサイズと決定し、
    前記第1の記憶手段と前記第2の記憶手段の両方に空きがあり、かつ、所定のエラーが発生している場合に、ウィンドウサイズを前記第1のサイズと決定し、
    前記第1の記憶手段と前記第2の記憶手段の両方に空きがあり、かつ、前記所定のエラーが発生していない場合に、ウィンドウサイズを前記第1のサイズより大きい第2のサイズと決定することを特徴とするプログラム。
JP2013247633A 2013-11-29 2013-11-29 通信装置とその制御方法、印刷装置とその制御方法、及びプログラム Expired - Fee Related JP6289057B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2013247633A JP6289057B2 (ja) 2013-11-29 2013-11-29 通信装置とその制御方法、印刷装置とその制御方法、及びプログラム
US14/552,760 US9239692B2 (en) 2013-11-29 2014-11-25 Communication apparatus performing communication speed changing process, communication control method and storage medium
CN201410707787.5A CN104683647B (zh) 2013-11-29 2014-11-28 进行通信速度改变处理的通信装置及通信控制方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013247633A JP6289057B2 (ja) 2013-11-29 2013-11-29 通信装置とその制御方法、印刷装置とその制御方法、及びプログラム

Publications (3)

Publication Number Publication Date
JP2015106796A JP2015106796A (ja) 2015-06-08
JP2015106796A5 JP2015106796A5 (ja) 2017-01-12
JP6289057B2 true JP6289057B2 (ja) 2018-03-07

Family

ID=53265367

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013247633A Expired - Fee Related JP6289057B2 (ja) 2013-11-29 2013-11-29 通信装置とその制御方法、印刷装置とその制御方法、及びプログラム

Country Status (3)

Country Link
US (1) US9239692B2 (ja)
JP (1) JP6289057B2 (ja)
CN (1) CN104683647B (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6405957B2 (ja) 2014-12-04 2018-10-17 セイコーエプソン株式会社 印刷装置、印刷システム、及び、印刷装置の制御方法
JP6435821B2 (ja) * 2014-12-04 2018-12-12 セイコーエプソン株式会社 印刷装置、印刷システム、及び、印刷装置の制御方法
JP6758858B2 (ja) * 2016-02-29 2020-09-23 キヤノン株式会社 通信装置、通信方法及びプログラム
CN113840272B (zh) * 2021-10-12 2024-05-14 北京奕斯伟计算技术股份有限公司 数据传输方法、数据传输装置以及电子装置

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05232058A (ja) 1992-02-20 1993-09-07 Mazda Motor Corp 排ガスセンサの選別方法
JP2000069091A (ja) * 1998-08-24 2000-03-03 Matsushita Electric Ind Co Ltd バッファ管理方法、通信装置および記録媒体
US20030056146A1 (en) * 2001-09-14 2003-03-20 Freeman Tracy K. Method for suggesting corrective action in response to resource constraint
JP2004064665A (ja) 2002-07-31 2004-02-26 Canon Inc データ転送装置及び送信装置及び受信装置及びそれらの制御方法
JP2005109765A (ja) * 2003-09-30 2005-04-21 Denon Ltd データ受信装置
JP4324048B2 (ja) * 2004-07-21 2009-09-02 キヤノン株式会社 データ処理装置、通信処理方法及びコンピュータプログラム
CN100550906C (zh) * 2005-11-24 2009-10-14 大唐移动通信设备有限公司 无线链路层的流量控制方法
JP2007259374A (ja) * 2006-03-27 2007-10-04 Matsushita Electric Ind Co Ltd ネットワーク送受信装置
JP4995064B2 (ja) * 2007-12-21 2012-08-08 キヤノン株式会社 画像出力装置及び画像出力方法
JP5652134B2 (ja) * 2010-11-02 2015-01-14 ブラザー工業株式会社 印刷装置
JP2012242897A (ja) * 2011-05-16 2012-12-10 Canon Inc ホストコンピュータ、印刷制御システム、印刷制御システムの制御方法、プログラム
JP5824932B2 (ja) * 2011-07-22 2015-12-02 ブラザー工業株式会社 印刷装置

Also Published As

Publication number Publication date
CN104683647B (zh) 2018-02-09
JP2015106796A (ja) 2015-06-08
US20150153968A1 (en) 2015-06-04
US9239692B2 (en) 2016-01-19
CN104683647A (zh) 2015-06-03

Similar Documents

Publication Publication Date Title
US8248645B2 (en) Printing system, printing device, host apparatus, and computer program product
JP5810761B2 (ja) 処理制御サーバーおよび処理制御方法
EP2667565B1 (en) Network device, method, and storage medium
JP6289057B2 (ja) 通信装置とその制御方法、印刷装置とその制御方法、及びプログラム
JP2005198298A (ja) ネットワーク画像形成装置の制御システムおよびそのデータ受信制御方法
US8913265B2 (en) Image forming apparatus, method for controlling the image forming apparatus, and program
JP5822470B2 (ja) 情報処理装置、その制御方法、および記憶媒体
JP2010081011A (ja) 電子機器、管理システム及び管理プログラム
JP4882935B2 (ja) 通信情報処理装置、通信情報処理システム、及び通信情報処理プログラム
JP4324048B2 (ja) データ処理装置、通信処理方法及びコンピュータプログラム
WO2015104906A1 (ja) 印刷システム、プリントサーバおよび印刷ジョブの投入方法
US8472058B2 (en) Image processing device, image processing method, and program
JP6460905B2 (ja) 通信装置、制御方法、プログラム
JP5024024B2 (ja) スプールサーバ及びデータ通信制御方法
JP6069995B2 (ja) 情報処理システム及び情報送信方法
JP4529788B2 (ja) 配信装置および配信制御方法
JP2016045697A (ja) 印刷制御装置、印刷システム、印刷制御装置の制御方法、及びプログラム
JP2006076175A (ja) 画像形成装置及びその制御方法
JP2013059931A (ja) データ処理装置、サーバー、データ処理方法
JP6033383B2 (ja) 情報処理装置、その制御方法、および制御プログラム
KR100600794B1 (ko) 패킷폭주시 패킷수신동작을 제한하는 네트워크 통신노드및 그 방법
JP2006195801A (ja) ネットワーク印刷ジョブ監視プリンタ、ネットワーク中継装置及びネットワーク・プリンタ
JP6536050B2 (ja) 通信システム、制御装置、通信方法、およびコンピュータプログラム
JP2023077923A (ja) 印刷装置及びその制御方法、並びにプログラム
JP6079845B2 (ja) システムおよび処理端末

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20161128

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20161128

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170825

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170905

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20171102

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20180109

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180206

R151 Written notification of patent or utility model registration

Ref document number: 6289057

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

LAPS Cancellation because of no payment of annual fees