JP4639091B2 - 区画可能計算システムにおけるセキュリティ対策 - Google Patents

区画可能計算システムにおけるセキュリティ対策 Download PDF

Info

Publication number
JP4639091B2
JP4639091B2 JP2005002761A JP2005002761A JP4639091B2 JP 4639091 B2 JP4639091 B2 JP 4639091B2 JP 2005002761 A JP2005002761 A JP 2005002761A JP 2005002761 A JP2005002761 A JP 2005002761A JP 4639091 B2 JP4639091 B2 JP 4639091B2
Authority
JP
Japan
Prior art keywords
partition
cell
status information
state machine
security status
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
JP2005002761A
Other languages
English (en)
Other versions
JP2005202955A (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.)
Hewlett Packard Development Co LP
Original Assignee
Hewlett Packard Development Co LP
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 Hewlett Packard Development Co LP filed Critical Hewlett Packard Development Co LP
Publication of JP2005202955A publication Critical patent/JP2005202955A/ja
Application granted granted Critical
Publication of JP4639091B2 publication Critical patent/JP4639091B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • H04L63/104Grouping of entities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5077Logical partitioning of resources; Management or configuration of virtualized resources

Description

本発明は、区画可能計算システムの分野に関し、特に、区画可能計算システム内のパーティションを保護することに関する。
スケーラブルな計算ソリューションの一例は区画可能計算システムである。このようなシステムでは、多数の要素(例えば、計算セル)を、特定の計算機能を実行するように専用化されたパーティションに結合することができる。複数のパーティションが、同じ区画可能計算システムに存在することができ、各パーティションが特定の機能を有する。
しかしながら、上記のようなシステムでは、1つのパーティションに対する悪意の攻撃によって、区画可能システムの全体が危険にさらされる可能性がある。
本明細書の以下の部分では、区画可能計算システムのパーティション間のセキュリティを提供するシステム、方法、ハードウェア、ソフトウェア、ファームウェア、およびコンピュータ命令が説明される。一実施の形態では、区画可能コンピュータシステムは、状態マシン、プロセッサ、およびデバイスコントローラを含む。状態マシンは、パーティションのステータスを監視するように構成することができる。プロセッサは、通信リンクを介して状態マシンと通信することができる。デバイスコントローラは、ステータス情報を受信するように構成することができ、パーティションのステータスに応じてアクセス可能な第1のレジスタを有する。プロセッサと通信できる第2のレジスタが、状態マシンから伝達されたパーティションのステータスを記憶する。
本発明の上記特徴および利点ならびに他の特徴および利点は、添付図面に示すように、本発明の好ましい実施の形態の以下の詳細な説明を考慮すると、より一層明らかになる。理解されるように、本発明は、さまざまな点においてすべて、本発明の範囲から逸脱することなく、変更が可能である。したがって、図面および説明は、本質的に例示とみなされるべきであり、限定としてみなされるべきでない。
本発明を説明する目的で、図面に、現時点で好ましい形態を示す。しかしながら、この発明は、図示する正確な配置および手段に限定されるものでないことが理解される。図面は必ずしも一定の縮尺であるとは限らず、むしろ、本発明の原理を図示することに重点が置かれている。
図1A、図1B、および図1Cを参照して、区画可能計算システム100は、多数の要素またはセル104を含むことができる。図1Aでは、2つのセル104Aおよび104Bのみが存在する。一方、3つ以上のセル104が区画可能計算システム100を作成することができる。例えば、図1Bは、4つのセル104A、104B、104C、および104Dを有する区画可能計算システム100’を示している。図1Cでは、16個のセル104A、104B、104C、104D、104E、…、104Pが区画可能計算システム100’’を作成する。各セル104は、各入出力モジュール108と通信することができ、各入出力モジュール108は、システム100への入力およびシステム100からの出力を提供するのに使用される。
3つ以上のセル104を有する区画可能計算システム、例えば図1Bに示すシステム100’および図1Cに示す100’’では、セル104は、ルーティングデバイス112を通じて相互に通信することができる。ルーティングデバイスは、クロスバースイッチとすることもできるし、データパケットをルーティングできる他の同様のデバイスとすることもできる。例えば、カリフォルニア州マウンテンビューのSGIが販売しているNUMAflex 8ポートルータ相互接続モジュール(8-Port Router Interconnect Module)を使用することができる。ルーティングデバイス112は、送信元アドレスから宛先アドレスへのパケットの転送を円滑にする。例えば、セル104Aがセル104Dにパケットを送信する場合、セル104Aはパケットをルーティングデバイス112に送信し、次に、ルーティングデバイス112がそのパケットをセル104Dに送信する。
図1Cに示すシステム100’’等のより大きな区画可能計算システムでは、2つ以上のルーティングデバイス112が存在し得る。例えば、4つのルーティングデバイス112A、112B、112C、および112Dが存在し得る。これらのルーティングデバイス112はスイッチ機構(switch fabric)と総称することができる。ルーティングデバイス112は、相互に、および、多数のセル104と通信することができる。例えば、セル104A、セル104B、セル104C、およびセル104Dは、ルーティングデバイス112Aと直接通信することができる。セル104E、セル104F、セル104G、およびセル104Hは、ルーティングデバイス112Bと直接通信することができる。セル104I、セル104J、セル104K、およびセル104Lは、ルーティングデバイス112Cと直接通信することができる。セル104M、セル104N、セル104O、およびセル104Pは、ルーティングデバイス112Dと直接通信することができる。このような構成では、各ルーティングデバイス112、および、そのルーティングデバイス112が直接通信するセル104をパーティション116とみなすことができる。図1Cに示すように、4つのパーティション116A、116B、116C、および116Dが存在する。図示するように、各パーティションは4つのセルを含む。しかしながら、任意の個数のセルおよびセルの組み合わせを使用して、パーティションを作成することができる。例えば、パーティション116Aおよび116Bを組み合わせて、8つのセルを有する1つのパーティションを形成することができる。一実施の形態では、各セル104がパーティション116となる。図1Aに示すように、セル104Aがパーティション116Aとなることができ、セル104Bがパーティション116Bとなることができる。
各パーティションは、特定の計算機能を実行するように専用化することができる。例えば、パーティション116Aは、ウェブサーバファームとして機能することによって、ウェブページを提供するように専用化することができ、パーティション116Bは、診断能力を提供するように構成することができる。さらに、パーティションは、データベースを保持するように専用化することができる。一実施の形態では、商用データセンタが、アクセス段(例えば、ウェブファーム)と、アプリケーション段(すなわち、ウェブ要求を取り込み、それらのウェブ要求をデータベースクエリーに変え、次いで、ウェブ要求に応答する段)と、さまざまな動作および項目を追跡するデータベース段との3段のパーティションを有することができる。
図2を参照して、各セル104は、論理デバイス120、複数のメモリバッファ124A、124B、124C、124D(メモリバッファ124と総称する)、複数の中央処理装置(CPU)128A、128B、128C、128D(CPU128と総称する)、状態マシン132、およびファイアウォール134を含む。用語CPUは、マイクロプロセッサに限定するためのものではなく、処理することができるあらゆるデバイスを指すように使用するためのものである。メモリバッファ124、CPU128、および状態マシン132は、それぞれ、論理デバイス120と通信する。セル104がクロスバー112と通信する時、論理デバイス120もクロスバー112と通信する。また、論理デバイス120は、I/Oサブシステム108とも通信する。論理デバイス120は、フィールドプログラマブルゲートアレイ(FPGA)132とすることができる。論理デバイス120は、本明細書中では、セルコントローラ120とも呼ばれる。論理デバイス120は、状態マシン132、CPU128、メモリバッファ124、ルーティングデバイス112、およびI/Oサブシステム108の間で信号をルーティングするのに使用される通信バス(図示せず)を含む。セルコントローラ120は、メインメモリ要求のメモリDIMM要求へのマッピング等の論理オペレーションも実行し、データにアクセスしてデータを返し、CPUおよびI/Oキャッシュが常に一貫性を有するように、かつ、新鮮でなくなることが決してないように、メインメモリ要求のキャッシュコヒーレンシ機能を実行する。
一実施の形態では、I/Oサブシステム108は、バスアダプタ136および複数のホストブリッジ140を含む。バスアダプタ136は、複数の通信リンク144を通じてホストブリッジ140と通信する。各リンク144は、1つのホストブリッジ140をバスアダプタ136に接続する。一例として、バスアダプタ136は、周辺コンポーネント相互接続(PCI)バスアダプタとすることができる。I/Oサブシステムは、16個のホストブリッジ140A、140B、140C、…、140Pおよび16個の通信リンク144A、144B、144C、…、144Pを含むことができる。
図示するように、セル104は、4つのCPU128を含む。しかしながら、各セルは、さまざまな個数の処理ユニット128を含む。一実施の形態では、CPUは、ITANIUMベースのCPUである。ITANIUMベースのCPUは、カリフォルニア州サンタクララのIntelによって製造されている。あるいは、SUN UltraSparcプロセッサ、IBMパワープロセッサ、またはIntel Pentium(登録商標)プロセッサも使用することができる。メモリバッファ124は、8つの同期ダイナミックランダムアクセスメモリ(SDRAM)デュアルインラインメモリモジュール(DIMM)144と通信する。ただし、他のタイプのメモリも使用することができる。
状態マシン132は、通信パス148を介して論理デバイス120と通信する。通信パス148は、単一のワイヤとすることもできるし、複数のワイヤとすることもできる。パラレル通信バスやシリアル通信バス等の他のタイプの通信パスも使用することができる。状態マシンは、セル104の一部として示されているが、区画可能計算システム100の他の場所に存在することもできる。状態マシン132は、レジスタ(図示せず)と、CPU128と、論理デバイス120と、プロセッサ128が読み出す1組のコンピュータ可読命令(図示せず)とを組み合わせたものとすることができる。状態マシン132は、CPU128の1つもしくは2つ以上のもののセキュリティステータス(状態)またはパーティション116全体のセキュリティステータスを監視する。状態マシン132は、プロセッサ128またはパーティション116が安全状態で動作しているのか、それとも非安全状態で動作しているのかを判断することができる。本明細書で使用されるように、安全という用語は、悪意を持ってシステムを阻害したり変更したりしない、意図されたシステム機能を実行するように識別および認証されている信頼されたソフトウェアをプロセッサが実行している状態にあることを意味する。本明細書で使用されるように、非安全状態という用語は、安全状態で動作していないことを意味する。安全対非安全状態を提供することに加えて、状態マシン132は、さまざまなレベルのセキュリティステータスも提供することができる。例えば、他の多くのステータス方式に加えて、高安全ステータス、低安全ステータス、および非安全ステータスも本システムで使用することができる。パーティション116のステータスは、状態マシン132のレジスタに記憶することができる。このレジスタは、単一ビットレジスタとすることもできるし、他のさまざまなサイズのレジスタとすることもできる。記憶されたセキュリティステータスは、セキュリティステータス情報と呼ばれ、区画可能計算システム100のさまざまな部分によって使用される。セキュリティステータス情報は、区画可能計算システム100のさまざまな部分に伝達することができる。状態マシン132が提供するセキュリティステータス情報は、区画可能計算システム100の一定のレジスタ(図示せず)、認証されたコンピュータ可読命令(例えば、ファームウェア)の一定の部分、およびI/Oサブシステム108へのアクセスを制御するのに使用することができる。悪意のあるユーザ(例えば、ハッカ)が区画可能計算システム100のオペレーションにダメージを与えるのを阻止するために、これらのレジスタおよび認証されたコードへのアクセスを制御することが望ましい。
セル104は、特定の構成として示されているが、このような構成に限定されるものではない。例えば、I/Oサブシステム108は、ルーティングデバイス112と通信することができる。同様に、DIMMモジュール144もルーティングデバイス112と通信することができる。図2のコンポーネントの構成は、提供する説明によって何ら限定されるものではない。
図3を参照して、動作時に、状態マシン132は、区画可能計算システム100の特定のパーティション116またはプロセッサ128に関係したセキュリティステータス情報(すなわち、安全または非安全)を受け取ることができる(ステップ300)。あるいは、状態マシン132は、セキュリティステータス情報を決定することもできる(ステップ310)。状態マシン132は、プロセッサ128が実行している1組の命令を監視することができる。例えば、プロセッサ128が、ブートプロセスもしくは再ブートプロセス中に実行される1組のシステムファームウェア命令や、認証されたメモリ位置(例えば、読み出し専用メモリ(ROM))からの命令等の既知の1組の認証されたコードを実行している場合には、状態マシンは、パーティション116が安全モードで動作していると判断する。一方、プロセッサが、1組の認証されていない命令(例えば、オペレーティングシステム命令、または、ユーザがインストールもしくはダウンロードしたドライバおよびアプリケーション)を実行している場合には、状態マシンは、パーティション116が非安全モードで動作していると判断する。セキュリティステータス情報を決定するのに、他のさまざまな方法も使用することができる。例えば、ロック/キーハードウェアシステムを使用して、パーティション116またはプロセッサ128が安全状態で動作しているかどうかを判断することができる。また、認証プロセスまたは認証アルゴリズムを使用して、セキュリティステータス情報を決定することもできる。セキュリティステータス情報は記憶される(ステップ320)。セキュリティステータス情報は、区画可能計算システム100のレジスタに記憶することができる。記憶されたセキュリティステータス情報は、さまざまな方法で使用されて、区画可能計算システム100のさらなる保護を提供することができる。例えば、セキュリティステータス情報をファイアウォール134として使用して、論理デバイス120内のレジスタへのアクセスを阻止することができる。
図4Aを参照して、論理デバイス120は、通信パス148を介して状態マシン132からセキュリティステータス情報を受け取る(ステップ400)。論理デバイスは、セキュリティステータス情報を読み出す(ステップ410)。論理デバイス120内の通信バスは、セキュリティステータス情報を論理デバイス120内のレジスタにルーティングする。パーティション116またはプロセッサ128が安全モードで動作していることをセキュリティステータス情報が示している時に、論理デバイス120内の安全なレジスタへのアクセスが許可される(ステップ420)。より具体的には、図4Bを参照して、セキュリティステータス情報パケットが論理デバイス120に送信される(ステップ430)。論理デバイス120は、セキュリティステータス情報パケットのフィールドを復号して(ステップ440)、パケットタイプ、パケット宛先アドレス、およびセキュリティステータス情報を決定する。論理デバイス120は、読み出しオペレーションまたは書き込みオペレーションが実行されることをパケットタイプが示しているかどうかを判断する(ステップ450)。読み出しまたは書き込みが実行される予定でない場合には、パケットで要求されたオペレーションが処理または実行される(ステップ460)。読み出しオペレーションまたは書き込みオペレーションが実行されることになっている場合には、論理デバイス120は、その読み出しコマンドまたは書き込みコマンドが重要なレジスタに対するものであるかどうかを判断する(ステップ470)。読み出しコマンドまたは書き込みコマンドが重要なレジスタに対して発行されたものでない場合には、パケットで要求オペレーションが実行される(ステップ460)。一方、読み出し要求または書き込み要求が重要なレジスタに対するものである場合には、論理デバイス120は、パケットに含まれるセキュリティステータス情報を読み出す(ステップ480)。パーティション116またはプロセッサ128が安全モードにあることをセキュリティステータス情報が示している場合には、パケットで要求されたオペレーションが処理される(ステップ460)。一方、プロセッサ128またはパーティション116が非安全モードにあることをセキュリティステータス情報が示している場合には、論理デバイスは、パケットで要求されたオペレーションを実行しない(ステップ490)。
論理デバイス120の機能は、ハードウェアとして説明しているが、プロセッサと、セキュリティステータス情報を受け取って、セキュリティステータス情報を読み出し、セキュリティステータス情報に応じて一定の重要なレジスタへのアクセスを許可または拒否するように構成された1組のコンピュータ可読命令とで実施することができる。また、ハードウェアおよびソフトウェアの組み合わせを使用して、上述した機能を提供することもできる。
図1Aおよび図5を参照して、一構成では、セル104Aがセル104Bと直接通信する。2つのパーティションの区画可能計算システム100では、セル104間の通信を円滑にするクロスバー112が存在しない。通常、2つのパーティションのシステムでは、セル104Aとセル104Bとの間の通信は要求されない。したがって、区画可能計算システム100のセットアップ中に、セル104Aと104Bとの間の通信リンクは有効化(enable)されない。しかしながら、悪意のあるユーザが、システム100のオペレーション中にセル104Aまたはセル104Bのいずれかにアクセスする可能性がある。悪意のあるユーザは、他方のセルにパケットの送信を試みる可能性があり、それによって、システム100のオペレーションの阻害を試みる可能性がある。この状況を阻止するのに役立てるために、セル104Aおよび104Bのそれぞれは、リンク有効化モジュール152Aおよび152B(リンク有効化モジュール152と総称する)をそれぞれ含む。リンク有効化モジュール152は、セルコントローラ120内のレジスタとすることができ、セルコントローラ120は、上述した機能に加えてリンクコントローラとしても機能する。
図6を参照して、セル104Aとセル104Bとの間の通信リンクが確立される場合に、双方のパーティションはリンクを有効化しなければならない。セル104Aまたはセル104Bの或る要素が、セル104Aとセル104Bとの間の通信リンクの確立を要求する(ステップ600)。この要求は、例えば、セル104Aのプロセッサ128からのものとすることができる。この要素は、リンクコントローラ120からの応答を受信する(ステップ610)。この応答は肯定的または否定的なもののいずれかとすることができる。肯定的な応答は、それによって、通信リンクを確立できることを示す。否定的な応答は、それによって、通信リンクを確立すべきでないことを示す。応答は、リンク有効化レジスタ152Aの1ビットとして書き込むことができる。要求が、セル104Aまたはセル104Bのいずれかの或る要素によってセル104Bのリンクコントローラ120に送信される(ステップ620)。この要素は、セル104Bから応答を受信する(ステップ630)。この応答は肯定的なものまたは否定的なもののいずれかとすることができる。この応答は、リンク有効化レジスタ152Bの1ビットとして書き込むことができる。いずれかの応答が否定的なものである場合には、通信リンクは確立されない(ステップ640)。双方の応答が肯定的なものである場合には、通信リンクが確立される(ステップ650)。換言すると、セル104Aおよびセル104Bの双方が、通信リンクの確立を許可すること、または、セル104Aとセル104Bとの間の通信が禁止されることを示さなければならない。
図1Cを参照して、区画可能計算システム100’’のセットアップ中、クロスバー112のそれぞれは、パケットを送信できる宛先アドレスおよびパケットを受信できる宛先アドレスのリストで事前にプログラミングされる。例えば、1つのパーティションが、セル104Aからセル104Hを含む場合、クロスバー112Aおよび112Bは、相互にパケットを送信するように構成される。クロスバー112Aのルーティングテーブルは、そのパーティションの各セル104の宛先アドレスを含む。この例では、ルーティングテーブルは、セル104A、104B、104C、104D、104E、104F、104G、および104Hのアドレスを含む。また、クロスバー112Bも、同じ宛先アドレスを含むルーティングテーブルを有する。ただし、いずれのルーティングテーブルも、セル104Iから104Pの宛先アドレスは含まない。これらのセルは、区画可能計算システム100’’の他のパーティション116の一部とすることができる。ルーティングテーブルが構成されると、それらのルーティングテーブルへの認可されていないアクセスを阻止することが望ましい。ルーティングテーブルへのアクセスを阻止することによって、認可されていないユーザが区画可能計算システム100’’の構成を変更することが阻止される。
図7Aを参照して、読み出しオペレーションまたは書き込みオペレーションをクロスバー112のルーティングテーブルまたはクロスバー112の重要なレジスタに対して実行できる前に、区画可能計算システム100’’のセキュリティステータスが分析される。状態マシン132は、区画可能計算システム100’’のパーティション116またはプロセッサ128のセキュリティステータスを決定する(ステップ700)。状態マシンは、パケット形成モジュールにセキュリティステータス情報を伝達し、パケット形成モジュールは、状態マシンおよびプロセッサ128と通信する。パケット形成モジュールは、論理デバイス120とすることができる。パケット形成モジュールは、セキュリティステータス情報を含むデータパケットを形成する(ステップ710)。このデータパケットは、当該パケットを細かく構築することによって形成することができる。例えば、パケットは、(例えば、レジスタに対して読み出しまたは書き込みを試みることになるパケットである)パケットタイプと、(例えば、重要なレジスタのレジスタアドレスである)パケットの宛先アドレスとを含む部分パケットを含むことができる。セキュリティステータス情報は、この部分パケットの最後に追加することができる。パケットが形成されると、送信機(図示せず)が、パケットを受信する(ステップ730)クロスバー112に当該データパケットを送信する(ステップ720)。受信されたパケットは、クロスバーによって読み出され(ステップ740)、セキュリティステータス情報に応じてシステム機能が実行される(ステップ750)。
図7Bを参照して、より詳細に、CPU128の1つ、論理デバイス120、および状態マシン132は協働して、パケットタイプ、宛先アドレス、およびセキュリティステータス情報を含むデータパケットを形成する(ステップ710)。CPU128および論理デバイスは協働して、データパケットをクロスバー112に送信する(ステップ720)。クロスバー112は、パケットを受信し(ステップ730)、パケット情報を復号する(すなわち、読み出す)(ステップ740)。クロスバー112は、データパケットのフィールドを復号して、パケットタイプ、パケット宛先アドレス、およびセキュリティステータス情報を決定する。クロスバー112は、読み出しオペレーションまたは書き込みオペレーションの実行が予定されていることをパケットタイプが示しているかどうかを判断する(ステップ742)。読み出しまたは書き込みの実行が予定されていない場合には、パケットで要求されたシステム機能が処理または実行される(ステップ752)。読み出しオペレーションまたは書き込みオペレーションが実行されることになっている場合には、クロスバー112は、読み出しコマンドまたは書き込みコマンドが重要なレジスタに対するものであるかどうかを判断する(ステップ744)。読み出しコマンドまたは書き込みコマンドが重要なレジスタに対して発行されたものでない場合には、パケットで要求されたシステム機能が実行される(ステップ752)。一方、読み出し要求または書き込み要求が重要なレジスタに対するものである場合には、クロスバー112は、パケットに含まれるセキュリティステータス情報を読み出す(ステップ746)。パーティション116またはプロセッサ128が安全モードにあることをセキュリティステータス情報が示している場合には、パケットで要求されたシステム機能が処理される(ステップ752)。一方、プロセッサ128またはパーティション116が非安全モードにあることをセキュリティステータス情報が示している場合には、論理デバイスは、パケットで要求されたオペレーションを実行しない(ステップ754)。システム機能が実行される予定でない場合には、クロスバー112は、多数の方法で応答することができる。例えば、クロスバー112は、データパケットを無視することができる。あるいは、クロスバー112は、レジスタへのアクセスが拒否されたことを示して、データパケットに応答することもできる。
上述したように、ルーティングデバイス112のルーティングテーブルへのアクセスを阻止することに加えて、或るパーティション(例えば116A)からのパケットが別のパーティション(例えば116C)に送信されるのを阻止することも望ましい。図8を参照して、例えば、企業の金融取引を実行するようにパーティション116Aを構成でき、その企業の顧客に対してウェブホスティングを提供するようにパーティション116Cを構成できる。悪意のあるユーザがパーティション116Cにアクセスした場合、この悪意のあるユーザが有害なパケットをパーティション116Aに送信することを阻止し、パーティション116Aを動作不能にすることが望ましい。図9を参照して、各ルーティングデバイス112は、複数の認可された宛先アドレスを含むルーティングテーブルまたはルート有効化マスク144を含むことができる。ルート有効化マスク144は、N×M機構スイッチ112の各ポートに関連付けることができる。一実施の形態では、NおよびMは同じ値とすることができる。別法では、NおよびMは異なる値とすることができる。ルート有効化マスクは、ファイアウォールとして機能して、区画可能計算システム100のパーティション116間の認可されていないパケットの伝送を阻止する。
図10を参照して、動作時に、パーティション116AのCPU128の1つが、パケットの送信元アドレスおよびパケットの宛先アドレスを含むデータパケットを形成する。CPU128は、そのパケットをルーティングデバイス112に送信する。ルーティングデバイス112はパケットを受信する(ステップ1000)。ルーティングデバイス112は、パケットを読み出して、宛先アドレスを決定する(ステップ1010)。宛先アドレスがパケットを受信するように構成されているかどうかについての判断が行われる(ステップ1020)。換言すると、ルーティングデバイス112のルーティングテーブルまたはビットマスク144において宛先アドレスが参照され、宛先アドレスが送信元アドレスと同じパーティション116の一部であるかどうかが判断される。ルーティングデバイス112は、宛先アドレスがパケットの受信を許可されていない場合に、そのパケットの送信を禁止する(ステップ1030)。宛先アドレスが、ルーティングテーブルまたはルート有効化マスク144に見当たらない場合には、そのパケットは送信されない。そのパケットは、ルーティングデバイス112により廃棄することができる。さらに、ルーティングデバイス112は、パケットが宛先アドレスに送信されなかったことを送信元アドレスに通知することができる(ステップ1040)。この通知は、送信元アドレスをエラー状態に遷移させることができる。エラー状態の結果、パケットを送信したパーティション116は動作不能になる可能性がある。また、送信元アドレスは、パケットが受信されたことを示す宛先アドレスからの通知を受信しない場合に、タイムアウト信号を生成することもできる(ステップ1050)。送信元アドレスのパーティション116は、タイムアウト信号が生成された後に、エラー状態に遷移することができる。パーティション116は、エラー状態になると、自動エラー復旧を開始するか、または、システムアドミニストレータが受信でき、かつ、エラーログに書き込むことができるという通知を生成することができる。
区画可能計算システムの1つの特徴は、必要とされる計算要求に応じて、システムを動的に構成できることである。例えば、パーティションは、最初、セル104A、セル104B、およびセル104Cを含むことができる。より多くの計算資源が必要とされると、セル104Dをパーティションに追加することができる。しかしながら、パーティションのセキュリティを維持することは大きな問題である。セル104Dが悪意のあるユーザによってアクセスされると、この悪意のあるユーザは、既存のパーティションにセル104Dの追加を試みることができ、それによって、パーティションの他のセル104にアクセスして、他のセル104を動作不能にすることができる。上述したように、ルーティングデバイス112は、ルーティングテーブルまたはルート有効化マスク144を含む。パーティション116の一部でないセル104がパーティション116に加入するために、ルーティングデバイス112のルート有効化マスク144を、新たなセル104を含めるように更新することができる。
より具体的には、図1B、図11A、図11B、および図11Cを参照して、パーティションへのセルの追加、パーティションからのセルの削除、およびパーティション間のセルの移動のさまざまな方法を説明する。また、セル104のセキュリティ状態を遷移させる方法も説明する。区画可能計算システム100’のブートアップ中、セル104A、セル104B、およびセル104Cは、安全なファームウェアから命令を受信して、パーティション116を形成する。最初、セル104Dは、パーティション116の一部ではない。セル104A、104B、および104Cがパーティションを形成し、認証されていないコード(例えば、オペレーティングシステムコード)の実行を開始すると、各セル104の状態マシン132は、安全状態から非安全状態に遷移する。セル104Dは、認証されていないコードを実行していないので、安全状態にある。パーティション116の正常動作中、計算資源の追加が必要であると判断される。その時、セル104Dは、パーティション116に加入するように、パーティション116の或る要素からコマンドを受信する(ステップ1100)。これに応答して、セル104Dのセキュリティステータスが判断される(ステップ1110)。この判断は、セル104Dの状態マシン132のレジスタにアクセスすることによって行うことができる。セル104Dのセキュリティステータスが安全であると、ルーティングデバイス112のルート有効化マスク144は、セル104Dの宛先アドレスを含めるように更新される(ステップ1120)。この更新は、セル104A、104B、および104Cの宛先アドレスを、セル104Dとルーティングデバイス112との間のポートに関連したルート有効化マスク144Dに加えること、およびルーティングデバイス112ならびにセル104A、104B、および104Cの各ポートに関連したルート有効化マスク144A、144B、および144Cを更新することを必要とする場合がある。ルート有効化マスク144が更新された後、セル104Dはパーティション116に加入し、認証されていないコードの実行を開始することができる。セル104Dが認証されてないコードを実行すると、セル104Dのセキュリティステータスは安全から非安全に遷移する(ステップ1130)。
その後、パーティション116は、セル104Dの資源をもはや必要としない場合がある。この場合には、セル104Dをパーティション116から除去することができる。セル104Dは、自身をパーティションから除去する命令を受信することができる(ステップ1140)。セル104Dはパーティションから除去される(ステップ1150)。ルーティングデバイス112のルート有効化マスク144を更新するために、セル104Dを安全なセキュリティ状態に遷移すべきである。この遷移は、多くの方法で達成することができる。例えば、セル104Dを再ブートすることができる(ステップ1160)。あるいは、セル104Dは、認証された安全なメモリに記憶された遷移ルーチンを実行することもできるし、また、割り込み命令または指示命令を受信して、認証された安全なメモリに記憶されたルーチンを実行することもできる。セル104Dが安全なセキュリティステータスに遷移した後、セル104Dは、ルーティングデバイス112の各ポートに関連したルート有効化マスク144を更新することができる。セル104Dは、安全モードで動作しているので、ルート有効化マスク144を更新する必要はない。
或るパーティション116Aから別のパーティション116Bにセル104を移動させるために、区画可能計算システム100は、削除方法および追加方法の双方を実行する。例えば、パーティション116Aがセル104A、104B、および104Cを含み、パーティション116Bがセル104Dおよび104Eを含むと仮定する。セル104Cは、パーティション116Bに加入する命令を受信することができる(ステップ1180)。セル104Cは、自身をパーティション116Aから除去する(ステップ1190)。セル104Cは、例えば、再ブートするか、または、他の或る遷移方法を実行することによって、自身を非安全状態から安全状態に遷移させる(ステップ1200)。セル104Cは、安全なセキュリティステータスに遷移した後、ルーティングデバイス112の各ポートに関連したルート有効化マスク144を更新することができる。2つ以上のルーティングデバイス112が使用される場合、各ルーティングデバイス112のルート有効化マスク144は更新される。セル104Cは、パーティション116Aのセル104Aおよび104Bに関連したルート有効化マスク144のそれぞれから自身を除去する(ステップ1210)。セル104Cは、パーティション116Bのセル104Dおよび104Eのそれぞれに関連したルート有効化マスク144に自身を追加する。さらに、セル104Cは、セル104Cに関連したルート有効化マスク144Cを更新する(ステップ1220)。セル104Cがパーティション116Bに追加されると、セル104Cは、認証されていないコードを実行している時に安全状態から非安全状態に遷移する(ステップ1230)。
上述した特定のステップは、コンピュータ可読媒体にプログラミングして、区画可能計算システム100内またはシステム100の外部に記憶することができる。一実施の形態では、これらの命令は、区画可能計算システム100のファームウェアの一部として含めることができる。命令は、システム100が理解できる任意の計算言語で記述することができる。例えば、命令は、CやC++等のオブジェクト指向型プログラミング言語で記述することができる。あるいは、XMLや低級アセンブリ言語等の拡張言語も使用することができる。
上述したように、説明した実施の形態のさまざまな変更が、本明細書で提供した開示から当業者には明らかであろう。したがって、本発明は、本発明の精神からも本質的な属性からも逸脱することなく、他の特定の形態で具体化することができ、したがって、本発明の範囲を示すものとして、上記明細書ではなく、添付した特許請求の範囲が参照されるべきである。
本発明の原理に従って構築されたさまざまな区画可能計算システムのブロック図である。 本発明の原理に従って構築されたさまざまな区画可能計算システムのブロック図である。 本発明の原理に従って構築されたさまざまな区画可能計算システムのブロック図である。 本発明の原理に従って構築された図1Bのセルのブロック図である。 本発明の原理に従って、図1A、図1B、および図1Cのシステムにより実行されるさまざまなステップを示すフローチャートである。 本発明の原理に従って、図1A、図1B、および図1Cのシステムにより実行されるさまざまなステップを示すフローチャートである。 本発明の原理に従って、図1A、図1B、および図1Cのシステムにより実行されるさまざまなステップを示すフローチャートである。 本発明の原理による図1Aのシステムの一実施の形態を示すブロック図である。 本発明の原理に従って、図5のシステムにより実行されるさまざまなステップを示すフローチャートである。 本発明の原理に従って、図1Bおよび図1Cのシステムにより実行されるさまざまなステップを示すフローチャートである。 本発明の原理に従って、図1Bおよび図1Cのシステムにより実行されるさまざまなステップを示すフローチャートである。 本発明の原理に従って構築されたシステムの一実施の形態を示すブロック図である。 本発明の原理に従って構築されたルーティングデバイスのブロック図である。 本発明の原理に従って、図1A、図1B、および図1Cのシステムにより実行されるさまざまなステップを示すフローチャートである。 本発明の原理に従って、図1A、図1B、および図1Cのシステムにより実行されるさまざまなステップを示すフローチャートである。 本発明の原理に従って、図1A、図1B、および図1Cのシステムにより実行されるさまざまなステップを示すフローチャートである。 本発明の原理に従って、図1A、図1B、および図1Cのシステムにより実行されるさまざまなステップを示すフローチャートである。

Claims (9)

  1. それぞれ1つ以上のプロセッサ(128)を有する少なくとも1つのコンピューティングセルを備えた複数のパーティション(116)を有する区画可能コンピュータシステム(100)であって、
    前記複数のパーティションのそれぞれと通信するルーティングデバイスと、
    前記複数のパーティション(116)のうちの第1のパーティションに設けられた前記プロセッサ(128)であって、当該第1のパーティションに設けられた状態マシンと通信するプロセッサと、
    前記第1のパーティション(116)が安全状態で動作しているか否かを判断するように構成された前記状態マシン(132)であって、前記プロセッサにより、前記安全状態の判断に基づいて前記プロセッサおよび前記第1のパーティションまたはこれらのいずれかのセキュリティステータス情報を決定して当該状態マシンの第2のレジスタに格納する前記状態マシン(132)と、
    前記ルーティングデバイスと通信し、前記状態マシンからセキュリティステータス情報を受信するように構成され、前記パーティションまたは前記プロセッサのセキュリティステータス情報が安全であることを示すときにのみ前記第1のパーティションの外部からのアクセスが許可されるアクセス対象である第1のレジスタを有するデバイスコントローラ(120)と、
    前記第2のレジスタに記憶されたステータス情報を伝送する前記状態マシンと前記デバイスコントローラとの間の第1の通信パス(148)と
    を備え、
    前記第1のパーティションのセキュリティステータス情報が非安全状態であることを示し、セキュリティステータス情報が安全であることを示し当該第1のパーティションに含まれていないセルが存在し、前記第1のパーティションにセルの追加が必要であると判断されて前記セキュリティステータス情報が安全であることを示し当該第1のパーティションに含まれていないセルを前記第1のパーティションに加入するよう指示するコマンドを受信した場合に、セキュリティステータス情報が安全であることを示し当該第1のパーティションに含まれていないセルが、前記第1のパーティションに追加される
    区画可能コンピュータシステム。
  2. 前記第1の通信パスは、
    前記プロセッサと前記状態マシンとの間の単一の通信パス
    を備える、請求項1に記載の区画可能コンピュータシステム。
  3. 前記第1の通信パスは、
    前記プロセッサと前記状態マシンとの間の複数の通信パス
    を備える、
    請求項1に記載の区画可能コンピュータシステム。
  4. 前記状態マシンは
    ロジックアレイ
    を備える、
    請求項1に記載の区画可能コンピュータシステム。
  5. 前記ロジックアレイは
    フィールドプログラマブルゲートアレイ
    を備える、
    請求項4に記載の区画可能コンピュータシステム。
  6. 前記プロセッサと通信し、前記ステータス情報を含むデータパケットを構築するように構成されたパケット形成器
    をさらに備える請求項1に記載の区画可能コンピュータシステム。
  7. 前記ルーティングデバイスは、
    前記第1のパーティションと通信してパケットを受信するように構成されたポートと、
    該ポートに関連したファイアウォールと
    を有する
    請求項1に記載の区画可能コンピュータシステム。
  8. 前記ファイアウォールは、許可された宛先アドレスのルーティングテーブル
    を備える、請求項7に記載の区画可能コンピュータシステム。
  9. 前記ファイアウォールは、前記宛先アドレスが前記パケットの受信を許可されていないものであると前記ファイアウォールが判断すると、該パケットを廃棄するように構成される、
    請求項7に記載の区画可能コンピュータシステム。
JP2005002761A 2004-01-12 2005-01-07 区画可能計算システムにおけるセキュリティ対策 Expired - Fee Related JP4639091B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US10/756,702 US7178015B2 (en) 2004-01-12 2004-01-12 Security measures in a partitionable computing system

Publications (2)

Publication Number Publication Date
JP2005202955A JP2005202955A (ja) 2005-07-28
JP4639091B2 true JP4639091B2 (ja) 2011-02-23

Family

ID=34739899

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005002761A Expired - Fee Related JP4639091B2 (ja) 2004-01-12 2005-01-07 区画可能計算システムにおけるセキュリティ対策

Country Status (2)

Country Link
US (2) US7178015B2 (ja)
JP (1) JP4639091B2 (ja)

Families Citing this family (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2402785B (en) * 2002-11-18 2005-12-07 Advanced Risc Mach Ltd Processor switching between secure and non-secure modes
US7296146B2 (en) * 2004-01-12 2007-11-13 Hewlett-Packard Development Company, L.P. Security measures in a partitionable computing system
US7349982B2 (en) * 2004-01-12 2008-03-25 Hewlett-Packard Development Company, L.P. Enablement of route table entries
US8321686B2 (en) 2005-02-07 2012-11-27 Sandisk Technologies Inc. Secure memory card with life cycle phases
US8108691B2 (en) 2005-02-07 2012-01-31 Sandisk Technologies Inc. Methods used in a secure memory card with life cycle phases
US8423788B2 (en) * 2005-02-07 2013-04-16 Sandisk Technologies Inc. Secure memory card with life cycle phases
US8127147B2 (en) * 2005-05-10 2012-02-28 Seagate Technology Llc Method and apparatus for securing data storage while insuring control by logical roles
US7748031B2 (en) * 2005-07-08 2010-06-29 Sandisk Corporation Mass storage device with automated credentials loading
US8959339B2 (en) 2005-12-23 2015-02-17 Texas Instruments Incorporated Method and system for preventing unauthorized processor mode switches
US9158941B2 (en) * 2006-03-16 2015-10-13 Arm Limited Managing access to content in a data processing apparatus
KR100795363B1 (ko) * 2006-11-24 2008-01-17 삼성전자주식회사 반도체 소자의 도전성 배선 및 이의 형성방법과 이를구비하는 플래시 메모리 장치 및 이의 제조 방법
US8307416B2 (en) * 2007-01-03 2012-11-06 Texas Instruments Incorporated Data structures for use in firewalls
US7814301B2 (en) * 2007-04-11 2010-10-12 Hewlett-Packard Development Company, L.P. Clock architecture for multi-processor systems
US7743375B2 (en) * 2008-06-27 2010-06-22 International Business Machines Corporation Information handling system including dynamically merged physical partitions
US8332931B1 (en) 2008-09-04 2012-12-11 Marvell International Ltd. Processing commands according to authorization
US8468344B2 (en) * 2009-05-26 2013-06-18 Raytheon Company Enabling multi-level security in a single-level security computing system
US8745385B2 (en) * 2009-06-24 2014-06-03 Raytheon Company System and method for protecting data with multiple independent levels of security
CN102760064A (zh) * 2011-04-28 2012-10-31 鸿富锦精密工业(深圳)有限公司 网卡更新装置及方法
CN102378155B (zh) * 2011-11-29 2014-06-11 深圳芯智汇科技有限公司 移动终端远程控制系统及方法
US9037823B2 (en) * 2012-09-14 2015-05-19 Intel Corporation Protecting IAT/EAT hooks from rootkit attacks using new CPU assists
US8938796B2 (en) 2012-09-20 2015-01-20 Paul Case, SR. Case secure computer architecture
FR3015663B1 (fr) * 2013-12-20 2020-01-24 Ixblue Systeme d'aide a la navigation et procede mis en œuvre dans un tel systeme
CN103716780A (zh) * 2013-12-25 2014-04-09 广西大学 一种用户设备刷机控制方法及系统
CN104216742B (zh) * 2014-08-25 2017-12-19 小米科技有限责任公司 基于密码的刷机控制方法及装置
US9928149B2 (en) 2014-08-29 2018-03-27 Cynny Space Srl Systems and methods to maintain data integrity and redundancy in a computing system having multiple computers
WO2016032634A1 (en) * 2014-08-29 2016-03-03 Cynny Spa Systems and methods to organize a computing system having multiple computers, distribute computing tasks among the computers, and maintain data integrity and redundancy in the computing system
US10534936B2 (en) * 2017-08-30 2020-01-14 Dell Products, Lp System and method for enabling and disabling of baseboard management controller configuration lockdown

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62197847A (ja) * 1986-02-26 1987-09-01 Hitachi Micro Comput Eng Ltd 半導体集積回路装置
JPH02113348A (ja) * 1988-10-22 1990-04-25 Nippon Denso Co Ltd マイクロコンピュータ
JP2001101019A (ja) * 1999-09-28 2001-04-13 Matsushita Electric Ind Co Ltd レジスタ保護回路
JP2002014939A (ja) * 2000-04-29 2002-01-18 Hewlett Packard Co <Hp> マルチパーティション・コンピュータ・システム
JP2003032275A (ja) * 2001-04-24 2003-01-31 Hitachi Ltd 統合サービス管理システム

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5022077A (en) 1989-08-25 1991-06-04 International Business Machines Corp. Apparatus and method for preventing unauthorized access to BIOS in a personal computer system
DE69113181T2 (de) * 1990-08-31 1996-05-02 Ibm Verfahren und Gerät zur Querteilungssteuerung in einer verteilten Verarbeitungsumgebung.
US5421006A (en) 1992-05-07 1995-05-30 Compaq Computer Corp. Method and apparatus for assessing integrity of computer system software
US5818771A (en) 1996-09-30 1998-10-06 Hitachi, Ltd. Semiconductor memory device
US6154819A (en) 1998-05-11 2000-11-28 Intel Corporation Apparatus and method using volatile lock and lock-down registers and for protecting memory blocks
US6122732A (en) * 1998-10-23 2000-09-19 Compaq Computer Corporation System management interrupt for a desktop management interface/system management basic input output system interface function
US6510501B1 (en) * 1999-05-11 2003-01-21 National Semiconductor Corporation Non-volatile memory read/write security protection feature selection through non-volatile memory bits
US6615366B1 (en) * 1999-12-21 2003-09-02 Intel Corporation Microprocessor with dual execution core operable in high reliability mode
US6581159B1 (en) * 1999-12-23 2003-06-17 Intel Corporation Secure method of updating bios by using a simply authenticated external module to further validate new firmware code
US20020108059A1 (en) * 2000-03-03 2002-08-08 Canion Rodney S. Network security accelerator
US6704877B2 (en) * 2000-12-29 2004-03-09 Intel Corporation Dynamically changing the performance of devices in a computer platform
US7073059B2 (en) * 2001-06-08 2006-07-04 Hewlett-Packard Development Company, L.P. Secure machine platform that interfaces to operating systems and customized control programs
US6711690B2 (en) * 2001-09-17 2004-03-23 International Business Machines Corporation Secure write blocking circuit and method for preventing unauthorized write access to nonvolatile memory
JP3875153B2 (ja) 2002-07-04 2007-01-31 Necエレクトロニクス株式会社 不揮発性半導体記憶装置およびその書き換え禁止制御方法
US6920566B2 (en) * 2002-07-12 2005-07-19 Phoenix Technologies Ltd. Secure system firmware by disabling read access to firmware ROM
GB2402785B (en) * 2002-11-18 2005-12-07 Advanced Risc Mach Ltd Processor switching between secure and non-secure modes

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62197847A (ja) * 1986-02-26 1987-09-01 Hitachi Micro Comput Eng Ltd 半導体集積回路装置
JPH02113348A (ja) * 1988-10-22 1990-04-25 Nippon Denso Co Ltd マイクロコンピュータ
JP2001101019A (ja) * 1999-09-28 2001-04-13 Matsushita Electric Ind Co Ltd レジスタ保護回路
JP2002014939A (ja) * 2000-04-29 2002-01-18 Hewlett Packard Co <Hp> マルチパーティション・コンピュータ・システム
JP2003032275A (ja) * 2001-04-24 2003-01-31 Hitachi Ltd 統合サービス管理システム

Also Published As

Publication number Publication date
US7178015B2 (en) 2007-02-13
US20050154869A1 (en) 2005-07-14
US20050210231A1 (en) 2005-09-22
US8028174B2 (en) 2011-09-27
JP2005202955A (ja) 2005-07-28

Similar Documents

Publication Publication Date Title
JP4639091B2 (ja) 区画可能計算システムにおけるセキュリティ対策
US7444681B2 (en) Security measures in a partitionable computing system
JP6276358B2 (ja) ミドルウェアマシン環境においてサブマネジメントパケット(smp)のトラフィックの保護をサポートするためのシステムおよび方法
US9971912B2 (en) Method, apparatus, and system for manageability and secure routing and endpoint access
KR101332135B1 (ko) Tpm 액세스들을 가상화하기 위한 시스템들, 방법들 및 장치들
KR100921779B1 (ko) 보호 실행 모드로 동작 가능한 중앙처리장치를 포함한컴퓨터 시스템 및 보호 통신로를 통해 연결된 보호 서비스프로세서
US10972449B1 (en) Communication with components of secure environment
US20070088857A1 (en) Using sequestered memory for host software communications
US10896266B1 (en) Computer hardware attestation
WO2006134691A1 (ja) 情報処理装置、復旧装置、プログラム及び復旧方法
US20040250063A1 (en) Computer system including a bus bridge for connection to a security services processor
US9633199B2 (en) Using a declaration of security requirements to determine whether to permit application operations
US11693969B2 (en) System and method for providing security protection for FPGA based solid state drives
JP2003140994A (ja) ファイアウォール計算機システム
US7356678B2 (en) Security measures in a partitionable computing system
WO2024006144A1 (en) Security subsystem for execution verification
US7296146B2 (en) Security measures in a partitionable computing system
US20050152331A1 (en) Security measures in a partitionable computing system
US20050154910A1 (en) Security measures in a partitionable computing system
US20050198461A1 (en) Security measures in a partitionable computing system
US11106788B2 (en) Security for active data request streams
JP5548095B2 (ja) 仮想制御プログラム、情報処理装置及び仮想制御方法
US20230418936A1 (en) Security subsystem for execution verification
US20230418985A1 (en) Security subsystem for remote attestation
US20120222109A1 (en) Providing a declaration of security requirements to a security program to use to control application operations

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20061101

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20061116

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20070214

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20070219

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070501

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20070619

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070920

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20071024

A912 Re-examination (zenchi) completed and case transferred to appeal board

Free format text: JAPANESE INTERMEDIATE CODE: A912

Effective date: 20080718

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100713

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20101026

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20101129

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131203

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees