JP6134720B2 - 接続方法 - Google Patents

接続方法 Download PDF

Info

Publication number
JP6134720B2
JP6134720B2 JP2014533980A JP2014533980A JP6134720B2 JP 6134720 B2 JP6134720 B2 JP 6134720B2 JP 2014533980 A JP2014533980 A JP 2014533980A JP 2014533980 A JP2014533980 A JP 2014533980A JP 6134720 B2 JP6134720 B2 JP 6134720B2
Authority
JP
Japan
Prior art keywords
data
response
indicating
server
received
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.)
Active
Application number
JP2014533980A
Other languages
English (en)
Other versions
JP2014532236A5 (ja
JP2014532236A (ja
Inventor
マレク パイカルスキー、
マレク パイカルスキー、
Original Assignee
マイクロン テクノロジー,インコーポレイティド
マイクロン テクノロジー,インコーポレイティド
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 マイクロン テクノロジー,インコーポレイティド, マイクロン テクノロジー,インコーポレイティド filed Critical マイクロン テクノロジー,インコーポレイティド
Publication of JP2014532236A publication Critical patent/JP2014532236A/ja
Publication of JP2014532236A5 publication Critical patent/JP2014532236A5/ja
Application granted granted Critical
Publication of JP6134720B2 publication Critical patent/JP6134720B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0751Error or fault detection not based on redundancy
    • G06F11/0754Error or fault detection not based on redundancy by exceeding limits
    • G06F11/0757Error or fault detection not based on redundancy by exceeding limits by exceeding a time limit, i.e. time-out, e.g. watchdogs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0745Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in an input/output transactions management context
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0751Error or fault detection not based on redundancy
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0793Remedial or corrective actions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4204Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
    • G06F13/4221Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being an input/output bus, e.g. ISA bus, EISA bus, PCI bus, SCSI bus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0766Error or fault reporting or storing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2002Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where interconnections or communication control functionality are redundant
    • G06F11/2005Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where interconnections or communication control functionality are redundant using redundant communication controllers

Description

本発明は、第1のデバイスと第2のデバイス間の通信の障害を管理する方法に関する。
コンピュータシステムでは、多くの場合、デバイス間でデータを送信することが必要であり、例えば、多くの場合、処理デバイスを複数の入出力デバイスに接続することが必要である。適切なデータ通信は、デバイスがリンクを介して互いにデータパケットを送信できるように、デバイスを接続することによって達成され、そして、リンクは有線リンク又は無線リンクであってもよい。
被接続デバイスのシステムにとって、それらの被接続デバイスの1つの予期しない故障又は不稼働率を管理できることが、ますます重要になっている。例えば、システムは、ケーブルが間違って切断(それによって、例えば、被接続デバイスがサーバから切断)されたときに、あるいは遠隔デバイスが故障した場合に、自己修復する(それらの指定されたサービスを提供し続ける)必要がある。一般的には、オペレーティングシステムは、動作中の(「ホット」)システムにおける入出力(I/O)アダプタの管理(すなわち計画)された挿抜(すなわちホットプラグ/ホットスワッピング)を幾分サポートしているが、ホットシステムにおけるデバイスの予期しない取外しは、殆ど又は全くサポートしていない。
例えば、サーバ(すなわち「インボックス」)内にI/Oアダプタを永久接続するために、PCI Expressだけが既に用いられている。I/Oデバイスをサーバ内に永久的にインストールするこのような構成の場合、I/Oデバイスの故障は、サーバ全体の故障として現れ、そのサーバ自体は、引き続き動作する必要があるとは考えられない。遠隔被接続PCI ExpressI/Oデバイス(すなわちサーバの外で接続されるI/Oデバイス)に対する関心が高まり、被接続デバイスの予期しない活線取外しをサーバが段階的にサポートする要求が、システムの障害許容力に対して重要になることを意味している。
データパケットの送受信は、多くの場合、トランザクションの観点から説明される。トランザクションは、デバイス間で送信される1つ以上のデータパケットを含む。PCI Expressは、スプリットトランザクションモデルを実行し、そこでは、送信元デバイスは、要求データパケットを宛先デバイスに送信し、そして、応答における宛先デバイスからの完了データパケットを待つ。一般的に、オペレーティングシステムは、失敗したPCI Expressトランザクションを段階的に取り扱うように構成されていない。例えば、サーバが要求データパケットを被接続デバイスに送信し、予想に反して、その要求に対する応答において完了データパケットを受信しない場合、サーバのオペレーティングシステムは、クラッシュする虞がある。PCI Expressに基づく現在の被接続システム自体は、PCI Expressに接続された送信元デバイスが予想に反して利用できなくなったとき、クラッシュする虞がある。
PCI Expressの標準的な実装は、PCI Expressサブシステム、すなわち被接続PCI Expressデバイスの故障を取り扱う十分な手段を提供していない。これは、結果として、満足できるレベルの障害許容力を有する遠隔又は共用のI/Oシステムの開発を難しくしている。
本発明の実施の形態の目的は、上で概説した問題の1つ以上を取り除く又は軽減することである。
本発明の第1の特徴に基づいて、第1のデバイスと第2のデバイス間の通信の障害を管理する方法を提供し、この方法は、第1のデバイスと第2のデバイスの中間の第3のデバイスにおいて、第1のデバイスと第2のデバイスの通信の障害を検出し、第3のデバイスから第1のデバイスに、第2のデバイスが第1のデバイスによって使えないことを示す第1のデータを伝送する。
このように、第1のデバイスは、第1のデバイスが故障する原因となる、第2のデバイスによる予期しない通信の損失にさらされることはない。第1のデバイスと第2のデバイス間の通信の損失を検出することによって、第3のデバイスは、適切なデータを第1のデバイスに送信して、第1のデバイスの故障を防止することができる。例えば、第2のデバイスが状態を変えたことを第1のデバイスに通知することによって、第1のデータは、通信の障害を第1のデバイス上で動作しているソフトウェア(OS、ドライバ、アプリケーション)から隠すことができる。例えば、第3のデバイスは、第2のデバイスの連続した存在を、第1のデバイスが「利用可能であるが、使えない」として解釈する状態にエミュレートすることができる。第1のデバイスは、(例えば第2のデバイスに代わるもので通信することによって)、サービスが中断することなく、「利用可能であるが、使えない」状態を段階的に取り扱うように構成することができる。
第3のデバイスは、第1のデバイスによって定義される故障ユニット内にあってもよく、一方、第2のデバイスは、第1のデバイスによって定義される故障ユニットの外にあってもよい。
第2のデバイスが使えないことを示す際に、第1のデータは、一時的かもしれない外部の問題のために、第2のデバイスが局所的に機能するが、その指定サービスを実行できないことを示すことができる。
方法は、更に、第3のデバイスにおいて、第1のデバイスから第2のデバイスへの第2のデータを傍受してもよい。
第1のデバイスと第2のデバイス間の通信が第3のデバイスを通るように、第3のデバイスは、第1のデバイスと第2のデバイスの間にあってもよい。例えば、第3のデバイスは、ケーブルアダプタの形をとってもよい。あるいは、第1のデバイスから第2のデバイスに送信されるデータは、第1のデバイスと第2のデバイス間の更なるデバイスによって、第3のデバイスに転送されてもよい。
第1のデバイスと第2のデバイス間の通信の障害の検出では、第2のデータに対する応答が第1のデバイスによって受信されないことを検出することを含んでもよい。第1のデバイスと第2のデバイス間の通信の障害の検出では、第1のデバイスと第2のデバイスを接続しているケーブルが切断されたことを検出することを含んでもよい。例えば、ケーブルの切断の検出では、以前に存在していた「ケーブル検出」信号がないことを検出することを含んでもよい。あるいは、第1のデバイスと第2のデバイス間の接続が無線接続の場合、通信の障害の検出では、無線接続の中断又は干渉を検出することを含んでもよい。
第1のデータの送信元を示すことを目的とした第1のデータの一部は、第2のデバイスを示すことができる。第1のデータは、第1のデータが第2のデータに対する応答であることを示すデータを含むことができる。例えば、第2のデータは、第2のデータが属するトランザクションを示すデータフィールドを含むことができ、第1のデータは、それが同じトランザクションに属することを示すデータを含むことができる。
第1及び第2のデバイスの1つは、サーバであってもよく、及び/又は第1及び第2のデバイスの1つは、第1又は第2のデバイスの遠隔被接続リソースであってもよい。例えば、第1及び第2のデバイスの1つは、I/Oデバイス又は他の遠隔リソースであってもよい。
第1のデバイスは、PCI Express接続によって第2のデバイスに接続されていてもよい。
第1のデータは、第2のデバイスが連絡できないことを示してもよく、第1のデータは、第2のデバイスが故障したことを示してもよく、及び/又は第1のデータは、第1のデータが破損していることを示してもよい。例えば、第1のデータは、第2のデバイスが故障し、及び/又は第1のデータが破損したことを示す値が「1」を有する状態ビットを含むことができる。
第1のデバイスと第2のデバイス間の通信の障害の検出では、第3のデバイスから第2のデバイスに、第3のデータを伝送し、第2のデバイスから、第3のデータに対する応答が所定の時間内に受信されないときに、第1のデバイスと第2のデバイス間の通信のその障害を決定することを含んでもよい。
本発明の第2の特徴に基づいて、第1のデバイスと第2のデバイス間の通信の障害を管理する装置を提供し、この装置は、第1のデバイスと第2のデバイスの中間の第3のデバイスにおいて、第1のデバイスと第2のデバイス間の通信の障害を検出する手段と、第3のデバイスから第1のデバイスに、第2のデバイスが第1のデバイスによって使えないことを示す第1のデータを伝送する手段とを含む。
本発明の第3の特徴に基づいて、第1のデバイスと第2のデバイス間を接続する自己修復ケーブルアダプタを提供し、自己修復ケーブルアダプタは、被接続第1のデバイスと被接続第2のデバイス間の通信の障害を検出する検出器と、被接続第1のデバイスに、被接続第2のデバイスが被接続第1のデバイスによって使えないことを示す第1のデータを伝送する送信機とを含む。
発明の1つの特徴に関連して説明した多くの特徴が発明の他の特徴に関連して適用できることは言うまでもない。
本発明の特徴が適切なハードウェア及び/又はソフトウェアを含むあらゆる便利な方法で実現できることは言うまでもない。例えば、発明を実施するように配置されたスイッチングデバイスは、適切なハードウェアコンポーネントを用いて形成することができる。あるいは、プログラマブルデバイスは、発明の実施の形態を実現するようにプログラムすることができる。したがって、また、発明は、発明の特徴を実現する適切なコンピュータプログラムを提供する。このようなコンピュータプログラムは、有形のキャリア媒体(例えばハードディスク、CD−ROM等)と、無形のキャリア媒体(例えば通信信号)とを含む適切なキャリア媒体で伝達することができる。
つぎに、本発明の実施の形態を、図面を参照し、一例として説明する。
I/Oデバイスがサーバのコンポーネントとして設けられた従来のI/O構成のブロック図である
I/Oデバイスがサーバのコンポーネントとして設けられた従来のI/O構成のブロック図である
I/Oデバイスがサーバに遠隔で接続された従来のI/O構成のブロック図である。
複数のI/Oデバイスがサーバに遠隔で接続された従来のI/O構成のブロック図である。
I/Oデバイスが本発明の実施の形態に基づいてサーバに接続されたI/O構成のブロック図である。
データパケットヘッダの略図である。
サーバが本発明の実施の形態に基づいてI/Oデバイスに接続されたI/O構成のブロック図である。
図1に示すように、サーバ1は、CPU/PCI Expressルートコンプレックス(CPU/RC)2と、ネットワークインタフェースコントローラ(NIC)3とを含む。CPU/RC2は、PCI Expressチップ間接続4によって、NIC3に接続されている。NIC3は、イーサネット(登録商標)接続6(例えば、ケーブル接続又は無線接続であってもよい)によって、ネットワーク5に接続されている。NIC3及び適切なソフトウェアを使用することによって、サーバ1は、サーバ1のユーザに、ネットワーク5に対するアクセスを提供する。サーバ1の本発明に関係しない他の詳細は、説明を明確にするために省略されていることは言うまでもなく、それらの詳細は、当業者にとって容易に明らかである。
一般論として、図1のサーバ1は、単一の故障ユニットであると考えられる。サーバ1の内部コンポーネント(例えばNIC3又は接続4)の故障は、サーバ1全体の故障であると考えられ、サーバ1が最早その意図された機能(すなわちネットワーク5に対するアクセスを容易にすること)を提供できないと考えられる。NIC3自体が故障し、又はNIC3とCPU/RC2間の通信に障害が生じると、サーバ1が機能し続ける必要性はなくなり、そして、サーバ1は、機能しなくなる。
内部コンポーネントの故障とは対照的に、外部コンポーネント(すなわちサーバ1の外部の単一の故障ユニット)の故障、例えばイーサネット接続6又は下流のスイッチ(図示せず)は、サーバ1の故障であると考えられず、サーバ1自体は、動作し続ける必要がある。一般論として、交換するデバイスは、簡単に接続する(あるいは、例えば間違って切断した場合に再接続する)ことができることを考えると、サーバ1に外的に接続されたコンポーネントの故障は、サーバ1の故障とすべきではない。したがって、サーバ1は、外部リソースが現在利用できないことを正確に通知する状況を段階的に取り扱うように構成されている。例えば、CPU/RC2とNIC3間のその通信が維持されているならば、イーサネット接続6の故障により、NIC3は、(適切なエラーメッセージを伝送することによって)イーサネット接続6が利用できないことをCPU/RC2に通知する。CPU/RC2は、このメッセージを受信すると、サーバ1全体の故障を起こすことなく、イーサネット接続6上の伝送を用いるNIC3へのデータパケットの送信を止めることができる。
CPU/RCは、NICからのエラーメッセージを受信すると、利用可能なバックアップリソースを利用することによって、その指定サービスを提供し続けることができる。図1aに示すように、サーバ1aは、PCI Expressチップ間接続4aによってNIC3aに、PCI Expressチップ間接続4bによってNIC3bに接続されたCPU/RC2aを備える。NIC3a、3bのそれぞれは、それぞれのイーサネット接続6a、6bによってネットワーク5に接続されている。NIC3a、3bのそれぞれ自体は、ネットワーク5に対するアクセスを容易にすることができる。イーサネット接続6bが故障すると、例えば、対応するNIC3bは、イーサネット接続6bが利用できないことを示すエラーメッセージをCPU/RC2aに送信する。CPU/RC2aがこのようなエラーメッセージを段階的に取り扱うように構成されているとき、CPU/RC2aは、NIC3a及びイーサネット接続6aを用いて、その指定機能を提供し続けることができる。
図2の構成において、NIC7は、サーバ8に対して外的(すなわち、サーバ8によって定義される単一の故障ユニットの外)に収容されている。図2に示すように、サーバ8は、PCI Express接続11によってCPU/RC10に接続されたPCI Expressケーブルアダプタ9を含む。PCI Expressケーブルアダプタ9は、CPU/RC10をケーブル14によって、遠隔I/O機器13内に収容されたPCI Expressケーブルアダプタ12に接続する。また、遠隔I/O機器13は、NIC7を収容し、NIC7は、PCI Express接続15によってPCI Expressケーブルアダプタ12に接続されている。PCI Expressケーブルアダプタ9、12は、ケーブル14でPCI Express信号を運ぶのに必要なケーブル駆動及び信号調整機能を備えるだけである。すなわち、ケーブルアダプタ9、12は、サーバ8上で動作するソフトウェアのような論理機能を全く備えないが、図2のシステムは、論理的には図1のシステムと同じである。
ケーブル14が故障又はNIC7自体が故障すると、CPU/RC10とNIC7間の通信は切断される。CPU/RC10自体は、NIC7によって処理されていないトランザクションに対する応答を受信しない。上述したように、未処理のトランザクションに対する応答の欠如は、結果的に、サーバ8全体の故障につながる。図1の構成におけるNIC3(又はNIC3とCPU/RC2間の接続4)の故障がサーバ1全体の故障となることは、通常、許容できるが、図2の構成におけるケーブル14及びNIC7の遠隔の本質は、これらのコンポーネントを簡単に交換又は再接続できることを意味する。図2の構成自体において、NIC7又はケーブル14のどちらかの故障をサーバ8の故障の原因としなければならないことは、望ましくない。
さらに、図3の構成に示すように、サーバから離してI/Oリソースを配置することにより、複数のI/Oリソースを容易に配置でき、1つの被接続I/Oリソースが故障した場合に、次のリソースがバックアップとして機能することができる。図3に示すように、サーバ20のCPU/RC19は、ケーブルアダプタ21によって、ケーブル23により遠隔I/O機器22に、ケーブル25により遠隔I/O機器24に接続されている。遠隔I/O機器22は、ケーブル23に接続されたケーブルアダプタ26と、接続28によってケーブルアダプタ26に接続されたNIC27とを含む。遠隔I/O機器24は、ケーブル25に接続されたケーブルアダプタ29と、接続31によってケーブルアダプタ29に接続されたNIC30とを含む。各NIC27、30は、それぞれの接続32、33によってネットワーク5に接続されている。I/O機器22、24の1つが故障し、NIC27、30の1つによってその通信が最早できない場合、あるいは接続23、25の1つが故障すると、サーバ20は、別のI/O機器22、24を用いて、その指定サービス(すなわちネットワーク5に対する接続)を提供し続けることができることは言うまでもない。しかしながら、I/O機器22、24(又は接続23、25)のどちらかが故障すると、CPU/RC19は、NIC27、30のうちの切断された1つに送信したデータパケットに対する応答を受信せず、結果的に、サーバ20の望ましくない故障につながる。
図4は、本発明の実施の形態に基づいて変更された図2の一般的配置を示す。特に、図4の構成では、サーバによって定義される故障ユニット内のケーブルアダプタは、自己修復ケーブルアダプタに置き換えられており、以下、その動作を更に詳細に説明する。しかしながら、一般論として、自己修復ケーブルアダプタは、致命的エラー(例えばPCIケーブルの故障)を致命的でないエラーに変換する。
図4において、サーバ35は、PCI Express接続38によって自己修復ケーブルアダプタ37に接続されたCPU/RC36を含む。自己修復ケーブルアダプタ37は、CPU/RC36をケーブル40によって、遠隔I/O機器39内に収容されたPCI Expressケーブルアダプタ38に接続する。遠隔I/O機器39は、NIC41を収容し、NIC41は、PCI Express接続42によってPCI Expressケーブルアダプタ38に、イーサネット接続43によってネットワーク5に接続されている。
より詳細には、自己修復ケーブルアダプタ37は、自己修復ケーブルアダプタ37の下流のコンポーネント(例えばケーブル40、NIC41等)の故障を監視するのに必要な論理及びハードウェアを備えている。例えば、自己修復ケーブルアダプタ37は、(例えば、供給される「存在検出」信号又は他のあらゆる適切な方法によって)ケーブルが抜かれたときを検出し、遠隔I/O機器39からのNIC41に関する問題を示すメッセージを監視するように構成されている。さらに、自己修復ケーブルアダプタ37は、サーバ35によって開始されたトランザクションに関する情報を判定して、記録するために、データパケットを調べ、そして、適切な応答を待つように構成されている。自己修復ケーブルアダプタ37は、オンボードタイマを用いて、その終了が故障の発生となる所定の時間待つことができる。例えば、時間の閾値は、応答データパケットを受信しないことの結果として、サーバ35がクラッシュすることになる時間よりも前に終了するように、設定することができる。また、自己修復ケーブルアダプタ37は、CPU/RC36とは関係なく、データパケットを生成して、NIC41に伝送し、そして、適切な応答を待つように構成されている(それによって、応答が所定の時間内にないことが、NIC41の故障となる)。自己修復ケーブルアダプタ37の下流のコンポーネントの故障が、複数の異なる原因のうちの1つ以上を有する可能性がある場合、当業者にとって容易に明らかなように、自己修復ケーブルアダプタ37が、このようなイベントを検出するあらゆる適切な手段を実装できることは言うまでもない。
自己修復ケーブルアダプタ37は、下流のコンポーネントの故障を検出すると、適切な致命的でないエラーメッセージをCPU/RC36に供給するように、NIC41をエミュレートする。致命的でないエラーメッセージは、NIC41が利用可能であるが、それを用いることができない状態にあることを示す(例えば、イーサネットケーブル43が抜かれた状態をエミュレートする)。
NIC41をエミュレートするために、自己修復ケーブルアダプタ37は、NIC41によって生成されたように見えるデータパケットを生成することができる。より詳細には、NIC41は、複数の独立したデバイス機能、すなわちPCI Expressプロトコルによってサポートされている最大8つの機能を有することができる。すなわち、NIC41は、CPU/RC36に対して、最大8つの別々のデバイスであるように見えることができる。NIC41の各デバイス機能は、一意的にそれらの機能を識別する対応した識別子を有する。NIC41の特定のデバイス機能から送信されたデータパケットは、トランザクション識別子を有し、トランザクション識別子は、データパケットを送信しているデバイス機能の識別子に対応したリクエスタ識別子を含んでいる。
PCI Expressプロトコルによって用いられるデータパケットヘッダのフォーマットを、図5を参照して説明する。リクエスタ識別子45は、データパケットを始めたデバイス機能を識別し、0から15までのインデックスが付けられた16ビットを含む。リクエスタ識別子45は、上位8ビットを占めるバス番号フィールド46と、中央の5ビットを占めるデバイス番号フィールド47と、下位3ビットを占める機能番号フィールド48とを含むことが分かる。PCI Expressプロトコルを用いるとき、バス番号46、デバイス番号47及び機能番号48の組合せは、特定のデバイスによって提供される機能を一意的に識別する。
図5に示すパケットヘッダは、更に8ビットからなるタグフィールド49を含む。上述したように、トランザクションは、要求データパケットと、1つ以上の対応する完了データパケットとで構成されている。各要求データパケットは、タグフィールド49に記憶されている値に関連する。各対応する完了データパケットは、タグフィールド49に記憶されている値と同じ値を有し、したがって、完了データパケットを適切な要求データパケットと関連させる。一意的なタグ値が、宛先デバイスから1つ以上の完了データパケットを要求する全ての未処理の要求に割り当てられる。タグフィールド49は、8ビットを有する場合、256(2)個の考えられるタグ値を表すことができる。
機能番号フィールド48は、要求を送信するデバイスに関連した機能の機能番号が設けられる。デバイスが有する機能が8つより少ない場合、機能番号フィールド48には未使用ビットがあってもよい。したがって、デバイスの機能を表すのに機能番号フィールド48の十分なビットだけを用い、タグフィールド49と論理的に組み合わせる仮想機能番号として、機能番号フィールド48の幾つかの未使用ビットを用いることが、理解される。1つの機能だけが設けられている場合、機能番号フィールド48の全てのビットは、タグフィールド49と論理的に組み合わせて、最大2048(211)個の未処理要求のサポートを行うことができる。
自己修復ケーブルアダプタ37は、受信データパケットのトランザクション識別子を判定するために、そのデータパケット、特にタグフィールド及びリクエスタIDを調べることができる。このデータは、自己修復ケーブルアダプタが備えるオンボードメモリに記憶することができる。そして、自己修復ケーブルアダプタ37は(供給するエラーメッセージの種類がトランザクションIDを必要とする場合)、CPU/RC36が、メッセージがCPU/RC36とNIC41間の未処理のトランザクションに関するものと信じるように、正しいトランザクション識別子を与えることができるデータパケットを生成する。同様に、自己修復ケーブルアダプタ37は、NIC41のリクエスタIDを有するデータパケットを生成することができ、それによって、それらのデータパケットは、NIC41によって生成されたように見える。
適切なエラーメッセージは、自己修復ケーブルアダプタ37によって登録されたトランザクションに関する情報に基づいて選択される。例えば、CPU/RC36がレジスタ読出し要求データパケットをNIC41に送信した場合、下流のコンポーネントが故障して、CPU/RC36とNIC41間の通信が切断されると、自己修復ケーブルアダプタ37は、エラーステータスビットが「1」の値に設定されたデータパケットを供給することができる。サーバ1上で動作しているソフトウェアは、データパケットの受信を、エラーが発生したことを示すように状態ビットが設定されていると解釈するが、エラーは、サーバ35の故障の原因とはならない。更なる例として、トランザクションがネットワーク5上で伝送されているデータに関する場合、自己修復ケーブルアダプタ37は、イーサネット接続43が切断されたことを示すメッセージを、CPU/RC36に送信することができる。各エラーメッセージは、自己修復ケーブルアダプタ37のオンボードメモリにハードコードされていてもよい。そして、自己修復ケーブルアダプタ37上で動作している論理は、完了データパケットを待っているトランザクションを考慮して、格納されているメッセージのうちのどれが適しているかを決定することができる。
さらに、CPU/RC36に供給するエラーメッセージの選択は、自己修復ケーブルアダプタ37がエミュレートしている遠隔被接続デバイスの詳細によっても異なってもよい。例えば、遠隔被接続デバイスがストレージリソースの場合、イーサネット接続が切断されたことを示すエラーメッセージは、適切でないことになる。エラーメッセージ自体は、そのデバイスが局所的には機能するが、その指定サービスを実行することができないことを示す(すなわち、致命的エラーを致命的でないエラーに置き換える)ように、遠隔被接続デバイスの種類に合わせることができる。
本発明の上述した実施の形態は、2つの前提に基づいており、第1に、サーバ35に遠隔で接続されたあらゆるデバイスは、サーバ35が使えないデバイスと考えるが、サーバ35がクラッシュする原因とはならない状態を有し、そして、第2に、使えない状態は、I/Oデバイスの完全な動作状態と比較して、簡単である。
さらに、あるいは、被接続サーバ(すなわちサーバへの接続)が故障したときに、遠隔被接続I/Oデバイスが故障することを防止することが、望ましい。これは、限定されないが、特に、遠隔I/Oデバイスが複数のサーバに接続し、複数のサーバによって共有されるシステム(例えば、マルチルートI/O仮想化を実装したシステム)に適している。1つのサーバの故障が、遠隔I/Oデバイスが故障する原因になってはならず、したがって、そのサービスを残りのサーバ(複数のサーバ)に提供することができないことは言うまでもない。
図6は、本発明の実施の形態に基づいて変更された図2の一般的配置を示す。特に、図6の構成では、遠隔I/O機器内のケーブルアダプタは、自己修復ケーブルアダプタに置き換えられている。
図6において、サーバ50は、PCI Express接続53によってケーブルアダプタ52に接続されたCPU/RC51を含む。ケーブルアダプタ52は、CPU/RC51をケーブル56によって、遠隔I/O機器55内に収容された自己修復ケーブルアダプタ54に接続する。また、遠隔I/O機器55は、NIC57を収容し、NIC57は、PCI Express接続58によって自己修復ケーブルアダプタ54に、イーサネット接続59によってネットワーク5に接続されている。
自己修復ケーブルアダプタ54は、自己修復ケーブルアダプタ54の上流のコンポーネントの故障を検出するように構成されている。自己修復ケーブルアダプタ54は、上流のコンポーネントの故障を検出すると、サーバ50の存在をエミュレートするように構成されている。例えば、自己修復ケーブルアダプタ54は、NIC57によって発行された未処理のメモリ読出し/書込み要求に対する応答において、直ちに、致命的でないエラー状態を有する完了データパケットを発行するように構成することができる。
自己修復ケーブルアダプタ37に関して上述したように、NIC57に供給されるエラーメッセージは、完了データパケットが必要とされるトランザクションによって異なる。
サーバ及び遠隔リソースの構成が、自己修復ケーブルアダプタ37と、自己修復ケーブルアダプタ54との両方を含むことができることは言うまでもない。すなわち、ある構成において、自己修復ケーブルアダプタは、1つ以上のサーバによって定義される1つ以上のそれぞれの故障ユニット内と、1つ以上のそれぞれの遠隔被接続リソースによって定義される1つ以上の故障ユニット内との両方に設けることができる。
上述の具体的な実施の形態では、サーバに遠隔で接続されたPCI Expressイーサネットネットワークインタフェースカード(NIC)を含むシステムに関して説明している。しかしながら、本発明は、より一般的に応用できることは言うまでもない。実際、本発明は、PCI Express以外の内部接続を利用し、NIC以外の遠隔デバイス(例えば、ファイバチャンネルホストバスアダプタ、ストレージコントローラ等)を有するシステム内で用いることができる。
さらに、上述の説明は、サーバと、そのサーバの遠隔被接続リソースとを含むシステムに関するものであるが、本発明は、第1のサーバと第2のサーバ間の通信に用いることができることは言うまでもない。
さらに、本発明は、被接続デバイスの他の構成、例えばマルチサーバI/O仮想化システムに適用することができる。実際、多くの実施の形態において、本発明を利用したシステムが、複数の独立した遠隔デバイスに対する接続をそれぞれ有する複数のサーバを含むことは言うまでもない。このような構成により、1つの遠隔デバイスに関連した故障が生じた場合、各サーバは、他の遠隔被接続デバイスを用いることによって、有効な動作を続けることができる。複数のサーバ又は複数の遠隔リソースに設けられている場合、自己修復ケーブルアダプタ37、54は、(必要に応じて、故障したサーバ又は遠隔リソースのアクティブトランザクションを考慮して)適切な致命的でないエラーメッセージを選択するために、どのサーバ又はどの遠隔リソースが故障したかの記録を維持する。
さらに、上述では、自己修復ケーブルアダプタを、本発明の機能と、標準のケーブルアダプタの機能とを含む単一のデバイスとして説明したが、本発明は専用デバイスに実装することができることは言うまでもない。例えば、図2において、本発明を実装したデバイスは、CPU/RC10とケーブルアダプタ9間、又はケーブルアダプタ9とケーブル14間に配置することができる。
自己修復ケーブルアダプタ37、54は、フィールドプログラマブルゲートアレイ(FPGA)又は特定用途向け集積回路(ASIC)で実現することができる。しかしながら、自己修復ケーブルアダプタ37、54は、あらゆる適切な手段を用いて実現してもよいことは言うまでもない。
上述では、サーバとI/Oデバイス間でデータパケットを伝送する発明の実施の形態を説明した。用語サーバは、広範囲のものを意図するものであり、あらゆるコンピュータ装置を網羅することを意図することは言うまでもない。
当業者にとって容易に明らかなように、本発明は、請求項の要旨を逸脱することなく、ここに教示する内容から変更及び応用することができる。

Claims (15)

  1. 第1のデバイスと第2のデバイス間の通信の障害を管理する方法であって、
    上記第1のデバイスと上記第2のデバイスの中間の第3のデバイスにおいて、上記第1のデバイスから上記第2のデバイスへ供給されるのデータを傍受し、上記第1のデータは上記第1のデータが属するトランザクションを示すデータフィールドを含み、
    上記第3のデバイスにおいて、上記第のデータに対する応答が上記第1のデバイスによって受信されないという上記第1のデバイスと第2のデバイス間の通信の障害を検出し、
    上記第1のデータに対する応答が上記第2のデバイスから上記第1のデバイスによって受信されないことに起因する上記第1のデバイスのサービスの中断を防止するために、上記第2のデバイスが該第1のデバイスによって使えないことを示す第2のデータが、上記第3のデバイスにおいて、生成され、上記第3のデバイスから上記第1のデバイスに送信されることによって上記第2のデバイスからの連続した通信をエミュレートし、上記第2のデータは上記第2のデータの送信元を示す一部を含み、上記第2のデータの上記一部は上記第2のデータが上記第2のデバイスに由来するように見えるように上記第2のデバイスを示す方法。
  2. 上記エミュレーションは、上記第3のデバイスにおいて、上記第1のデータの上記データフィールドによって示された上記トランザクションに少なくとも基づいて複数の格納されたエラーメッセージから一つのエラーメッセージを選択し、上記選択されたエラーメッセージは上記第2のデータに含まれる請求項1に記載の方法。
  3. 上記第のデータは、該第のデータが上記第のデータに対する応答であることを示すデータを含む請求項1記載の方法。
  4. 上記第1及び第2のデバイスの少なくとも1つは、サーバである請求項1乃至3のいずれか1項記載の方法。
  5. 上記第1及び第2のデバイスの少なくとも1つは、I/Oデバイスである請求項1乃至のいずれか1項記載の方法。
  6. 上記第1のデバイスは、PCI Express接続によって上記第2のデバイスに接続される請求項1乃至のいずれか1項記載の方法。
  7. 上記第のデータは、上記第2のデバイスが連絡できないことを示す請求項1乃至のいずれか1項記載の方法。
  8. 上記第のデータは、上記第2のデバイスが故障したことを示す請求項1乃至のいずれか1項記載の方法。
  9. 上記第のデータは、該第のデータが破損していることを示す請求項1乃至のいずれか1項記載の方法。
  10. 上記第1のデバイスと第2のデバイス間の通信の障害の検出では、上記第1のデバイスと上記第2のデバイスを接続しているケーブルが切断されたことを検出することを含む請求項1乃至のいずれか1項記載の方法。
  11. 上記第1のデバイスと第2のデバイス間の通信の障害の検出では、
    上記第3のデバイスから上記第2のデバイスに、第3のデータを送信し、
    上記第2のデバイスから、上記第3のデータに対する応答が所定の時間内に受信されないときに、当該第1のデバイスと第2のデバイス間の通信の障害を決定することを含む請求項1乃至10のいずれか1項記載の方法。
  12. コンピュータ読取り可能なプログラム有するコンピュータが使えるストレージデバイスを含むコンピュータプログラム製品であって、上記コンピュータが読取り可能プログラムは、第1のデバイスと第2のデバイスの中間で実行されると、上記コンピュータに、
    上記第1のデバイスから上記第2のデバイスへの第1のデータを傍受させ、上記第1のデータは上記第1のデータが属するトランザクションを示すデータフィールドを含み、
    上記第1のデータに対する応答が上記第1のデバイスによって受信されないという上記第1のデバイスと上記第2のデバイス間の通信の障害を検出させ、
    上記第1のデータに対する応答が上記第2のデバイスから上記第1のデバイスによって受信されないことに起因する上記第1のデバイスのサービスの中断を防止するために、第2のデータを生成して上記第1のデバイスに送信することによって上記第2のデバイスからの連続した通信をエミュレートさせ、上記第2のデータは上記第2のデバイスが上記第1のデバイスによって使えないことを示し、上記第2のデータは上記第2のデータの送信元を示す一部を含み、上記第2のデータの上記一部は上記第2のデータが上記第2のデバイスに由来するように見えるように上記第2のデバイスを示すようにさせるコンピュータプログラム製品。
  13. コンピュータが読取り可能なプログラムを格納したメモリデバイスを含むコンピュータプログラム製品であって、上記コンピュータが読取り可能プログラムは、第1のデバイスと第2のデバイスの中間で実行されると、上記コンピュータに、
    上記第1のデバイスから上記第2のデバイスへの第1のデータを傍受させ、上記第1のデータは上記第1のデータが属するトランザクションを示すデータフィールドを含み、
    上記第1のデータに対する応答が上記第1のデバイスによって受信されないという上記第1のデバイスと上記第2のデバイス間の通信の障害を検出させ、
    上記第1のデータに対する応答が上記第2のデバイスから上記第1のデバイスによって受信されないことに起因する上記第1のデバイスのサービスの中断を防止するために、第2のデータを生成して上記第1のデバイスに送信することによって上記第2のデバイスからの連続した通信をエミュレートさせ、上記第2のデータは上記第2のデバイスが上記第1のデバイスによって使えないことを示し、上記第2のデータは上記第2のデータの送信元を示す一部を含み、上記第2のデータの上記一部は上記第2のデータが上記第2のデバイスに由来するように見えるように上記第2のデバイスを示すようにさせるコンピュータプログラム製品。
  14. 第1のデバイスと第2のデバイス間の通信の障害を管理するコンピュータ装置であって、
    プロセッサで読取り可能な命令を記憶するメモリと、
    上記メモリに記憶された命令を読み出して、実行するプロセッサとを含み、
    上記プロセッサで読取り可能な命令は、上記コンピュータを制御するように構成され、
    上記第1のデバイスから上記第2のデバイスへの第1のデータを傍受させ、上記第1のデータは上記第1のデータが属するトランザクションを示すデータフィールドを含み、
    上記第1のデータに対する応答が上記第1のデバイスによって受信されないという上記第1のデバイスと上記第2のデバイス間の通信の障害を検出させ、
    上記第1のデータに対する応答が上記第2のデバイスから上記第1のデバイスによって受信されないことに起因する上記第1のデバイスのサービスの中断を防止するために、第2のデータを生成して上記第1のデバイスに送信することによって上記第2のデバイスからの連続した通信をエミュレートさせ、上記第2のデータは上記第2のデバイスが上記第1のデバイスによって使えないことを示し、上記第2のデータは上記第2のデータの送信元を示す一部を含み、上記第2のデータの上記一部は上記第2のデータが上記第2のデバイスに由来するように見えるように上記第2のデバイスを示すようにさせるコンピュータ装置。
  15. 己修復ケーブルアダプタであって、接続された第1のデバイスから接続された第2のデバイスへの第1のデータを傍受し、上記第1のデータに対する応答が上記接続された第1のデバイスによって受信されないという上記接続された第1のデバイスと上記接続された第2のデバイス間の通信の障害を検出し、上記第1のデータに対する応答が上記接続された第2のデバイスから上記接続された第1のデバイスによって受信されないことに起因する上記接続された第1のデバイスのサービスの中断を防止するように、第2のデータを生成して上記接続された第1のデバイスに送信することによって上記接続された第2のデバイスからの連続した通信をエミュレートし、上記第2のデータは上記第2のデータの送信元を示す一部を含み、上記第2のデータの上記一部は上記第2のデータが上記第2のデバイスに由来するように見えるように上記接続された第2のデバイスを示し、上記第2のデータは上記接続された第2のデバイスが上記第1のデバイスによって使えないことを示し、上記第1のデータは上記第1のデータが属すトランザクションを示すデータフィールドを含む自己修復ケーブルアダプタを含む装置
JP2014533980A 2011-10-05 2012-09-28 接続方法 Active JP6134720B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
GB1117230.1A GB2495313B (en) 2011-10-05 2011-10-05 Connection method
GB1117230.1 2011-10-05
PCT/GB2012/052413 WO2013050745A1 (en) 2011-10-05 2012-09-28 Connection method

Publications (3)

Publication Number Publication Date
JP2014532236A JP2014532236A (ja) 2014-12-04
JP2014532236A5 JP2014532236A5 (ja) 2016-12-01
JP6134720B2 true JP6134720B2 (ja) 2017-05-24

Family

ID=45035231

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014533980A Active JP6134720B2 (ja) 2011-10-05 2012-09-28 接続方法

Country Status (7)

Country Link
US (1) US9798601B2 (ja)
EP (1) EP2764438B1 (ja)
JP (1) JP6134720B2 (ja)
KR (1) KR102018225B1 (ja)
CN (1) CN103858105B (ja)
GB (1) GB2495313B (ja)
WO (1) WO2013050745A1 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140365699A1 (en) * 2013-06-11 2014-12-11 Allied Telesis Holdings Kabushiki Kaisha Adapter card for thin computing devices
US10466220B1 (en) 2018-09-21 2019-11-05 Pace Analytical Services, LLC Alerting for instruments that transfer physical samples
KR102166729B1 (ko) 2018-12-19 2020-10-19 주식회사 포스코 코일 틸팅 장치

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100193809B1 (ko) * 1995-11-16 1999-06-15 윤종용 팩시밀리에 있어서 에러상태 통보방법
US5864653A (en) * 1996-12-31 1999-01-26 Compaq Computer Corporation PCI hot spare capability for failed components
US20020194319A1 (en) * 2001-06-13 2002-12-19 Ritche Scott D. Automated operations and service monitoring system for distributed computer networks
JP2005172218A (ja) * 2003-11-21 2005-06-30 Hama International:Kk 管継手
JP4416563B2 (ja) * 2004-04-19 2010-02-17 キヤノン株式会社 ネットワークデバイス管理装置及びその制御方法、並びに、コンピュータプログラム及びコンピュータ可読記憶媒体
JP4328672B2 (ja) * 2004-06-01 2009-09-09 キヤノン株式会社 情報処理装置及びデバイス
JP4487756B2 (ja) * 2004-12-16 2010-06-23 日本電気株式会社 コンピュータシステム及びシステム監視プログラム
JP2007094706A (ja) * 2005-09-28 2007-04-12 Konica Minolta Business Technologies Inc データ処理装置、システムおよびケーブル接続異常対応方法
US20070240209A1 (en) * 2006-04-05 2007-10-11 Lewis Adam C Session persistence on a wireless network
JP4369470B2 (ja) * 2006-12-26 2009-11-18 富士通株式会社 データ中継装置、ストレージ装置、および応答遅延監視方法
US20080288633A1 (en) * 2007-05-18 2008-11-20 Kestrelink Corporation Network device tracking using a network device server
JP5151500B2 (ja) * 2008-01-18 2013-02-27 日本電気株式会社 コンピュータシステム、障害処理方法および障害処理プログラム
GB2460014B (en) * 2008-04-28 2011-11-23 Virtensys Ltd Method of processing data packets
US7757014B2 (en) * 2008-05-14 2010-07-13 Tsung-Hsien Ho Method for disconnecting a transceiver from a bus in multipoint/multidrop architecture
CN102318276B (zh) * 2008-12-15 2014-07-02 惠普开发有限公司 检测计算机系统中的不可靠的链路
JP5281942B2 (ja) * 2009-03-26 2013-09-04 株式会社日立製作所 計算機およびその障害処理方法
JP2010238150A (ja) * 2009-03-31 2010-10-21 Toshiba Corp PCIExpress通信システム、及びその通信方法
JP2010288148A (ja) * 2009-06-12 2010-12-24 Ricoh Co Ltd データ通信装置、データ通信制御方法、データ通信制御プログラム及び記録媒体
US20110047413A1 (en) * 2009-08-20 2011-02-24 Mcgill Robert E Methods and devices for detecting service failures and maintaining computing services using a resilient intelligent client computer

Also Published As

Publication number Publication date
CN103858105A (zh) 2014-06-11
GB201117230D0 (en) 2011-11-16
EP2764438A1 (en) 2014-08-13
US20130091271A1 (en) 2013-04-11
CN103858105B (zh) 2017-08-29
EP2764438B1 (en) 2019-04-24
KR102018225B1 (ko) 2019-09-05
KR20140090171A (ko) 2014-07-16
US9798601B2 (en) 2017-10-24
GB2495313B (en) 2013-12-04
JP2014532236A (ja) 2014-12-04
WO2013050745A1 (en) 2013-04-11
GB2495313A (en) 2013-04-10

Similar Documents

Publication Publication Date Title
US7536584B2 (en) Fault-isolating SAS expander
EP2052326B1 (en) Fault-isolating sas expander
CN102629225B (zh) 双控制器磁盘阵列、存储系统以及数据存储路径切换方法
US6658595B1 (en) Method and system for asymmetrically maintaining system operability
US7584377B2 (en) System, machine, and method for maintenance of mirrored datasets through surrogate writes during storage-area networks transients
JPH086910A (ja) クラスタ型計算機システム
JP6183931B2 (ja) クラスタシステム、サーバ装置、クラスタシステムの管理方法、及びプログラム。
US20090077275A1 (en) Multiple I/O interfacing system for a storage device and communicating method for the same
JP6134720B2 (ja) 接続方法
US9032118B2 (en) Administration device, information processing device, and data transfer method
US8208370B1 (en) Method and system for fast link failover
JP2011203941A (ja) 情報処理装置、監視方法、および監視プログラム
US9760460B2 (en) Storage system, storage device, and monitoring server
CN114880266B (zh) 故障处理的方法、装置、计算机设备和存储介质
CN114615106B (zh) 环形数据处理系统、方法以及网络设备
US10235045B2 (en) Storage system and control apparatus
JP2009110218A (ja) 仮想化スイッチおよびそれを用いたコンピュータシステム
JP2010136038A (ja) 伝送装置及び冗長構成部の系切替え方法
JP5145860B2 (ja) メモリ二重化システム及び情報処理装置
JP2007172172A (ja) ファイバーチャネルスイッチおよびそれを用いたコンピュータシステム
WO2023160378A1 (zh) 存储设备、存储方法、计算设备及存储介质
JP2004013723A (ja) 共有メモリを使ったクラスタ構成を採用した情報処理システムの障害処理装置と方法
JP2012133622A (ja) 計算機切替システム、計算機切替プログラム、および計算機切替方法
KR100771915B1 (ko) 디지털 보호 계전기 및 통신 이중화 방법
WO2017199288A1 (ja) 計算機システム、及び、障害管理方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20150714

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20160708

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20160719

A524 Written submission of copy of amendment under article 19 pct

Free format text: JAPANESE INTERMEDIATE CODE: A524

Effective date: 20161014

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: 20170404

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170424

R150 Certificate of patent or registration of utility model

Ref document number: 6134720

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250