[go: up one dir, main page]

JP5873782B2 - 端末管理装置、端末管理システム - Google Patents

端末管理装置、端末管理システム Download PDF

Info

Publication number
JP5873782B2
JP5873782B2 JP2012206265A JP2012206265A JP5873782B2 JP 5873782 B2 JP5873782 B2 JP 5873782B2 JP 2012206265 A JP2012206265 A JP 2012206265A JP 2012206265 A JP2012206265 A JP 2012206265A JP 5873782 B2 JP5873782 B2 JP 5873782B2
Authority
JP
Japan
Prior art keywords
terminal
management
program
tree
operation program
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
JP2012206265A
Other languages
English (en)
Other versions
JP2014064056A (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.)
Hitachi Solutions Ltd
Original Assignee
Hitachi Solutions Ltd
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 Hitachi Solutions Ltd filed Critical Hitachi Solutions Ltd
Priority to JP2012206265A priority Critical patent/JP5873782B2/ja
Publication of JP2014064056A publication Critical patent/JP2014064056A/ja
Application granted granted Critical
Publication of JP5873782B2 publication Critical patent/JP5873782B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Description

本発明は、端末を遠隔管理する技術に関する。
組込機器の品質保証や保守費用削減のため、組込機器はその種別に応じた通信プロトコルによって遠隔管理される。例えば、携帯電話のような移動体通信機器は、OMA−DM(Open Mobile Alliance − Device Management)プロトコルによって管理され、ブロードバンドルーターのような固定通信機器は、TR−069(Technical Report 069)プロトコルによって管理される(非特許文献1、2)。
OMA−DMや、TR−069の関連仕様であるTR−106は、端末のIDや端末内のソフトウェア情報等のインベントリをツリー構造で管理することを規定している。端末制御命令は、ツリー内の特定ノードの属性値を変更することによって実現される。具体的には、ソフトウェアの状態を表すStateノードを用意し、ソフトウェアの停止状態を指定する属性値であるidleを端末制御命令によってそのノードに格納する。これにより、端末内のソフトウェアをその属性値に対応する状態に変更する遠隔管理命令が発行される。端末制御命令を追加する場合は、端末に新たなツリーを追加し、そのツリー内のデータを解釈することができるツリー操作プログラムを端末に追加すればよい。すなわち、端末と端末管理サーバ間の通信プロトコルを修正する必要がないため、ツリー形式で制御データを記述する遠隔管理方式は高い拡張性を有すると考えられている。
下記特許文献1では、管理プロトコルが異なる複数種類の端末を、端末管理サーバから共通の管理プロトコルで管理するシステムが記載されている。このシステムでは、固定通信機器については、TR−069プロトコルで管理する。端末管理サーバは、宅内にある固定通信機器とプロトコル変換機能を有するサーバを経由し、移動体通信機器に端末制御命令を送信する。端末管理サーバの端末制御命令は、プロトコル変換機能によって、TR−069プロトコルから移動体端末専用の管理プロトコルに変換されるため、端末管理サーバは、TR−069プロトコルのみによって、異なる種類の端末を管理できる。
遠隔管理システムとしての拡張性を担保するためには、端末側だけでなく、端末管理サーバ側のデータ構造も拡張性が必要になると考えられる。データ構造に拡張性を持たせる技術の例として、下記特許文献2では、ツリー構造を持つXML文書をRDB(Relational DataBase)へマッピングする技術が記載されている。同文献に記載されている技術では、XML文書に属する各要素を、階層レベルと親ノード情報とともにRDBへ格納することにより、RDB内のデータをXML文書として読み出すことができる。
特表2012−502578公報 特願2004−111979公報
Open Mobile Alliance、URL:http://www.openmobilealliance.org/default.aspx(2012年2月14日取得) broadband forum、URL:http://www.broadband-forum.org/(2012年2月14日取得)
特許文献2に記載されている技術では、RDBの1レコードにつき、ツリーの1要素とそのツリー内における位置情報を格納する。そのため、要素間の関連に基づきデータを検索するためには、検索処理を複数回繰り返さなければならない。例えば、ソフトウェアAのStateがidleである端末を検索する場合、ソフトウェアAとidleを検索条件として位置情報を検索し、端末IDが格納された要素に辿り着かなければならない。RDBは関連のある情報を1レコードに格納することにより、高い検索性能を発揮できるDBであるので、特許文献2に記載されているようなデータ構造では、RDBの検索性能を十分には発揮できないと考えられる。
本発明は、上記のような課題を解決するためになされたものであり、ツリー形式で稼動状態情報を記述する遠隔管理プロトコルを用いる場合において、ツリー形式の拡張性を保持しつつ、データツリーを格納するDBの検索性能を向上させることを目的とする。
本発明に係る端末管理装置は、端末の稼動状態情報を記述するデータツリー上の少なくともいずれかのノード毎に1つ管理テーブルを備え、さらに、管理テーブルに対して稼動状態情報を書き込むテーブル操作プログラムを管理テーブル毎に備えている。
本発明に係る端末管理装置によれば、ツリー形式による拡張性を利用することによって管理対象項目を動的に拡張できるようにしつつ、データツリーの検索性能を向上させることができる。
実施形態1に係る端末管理システム1000の構成図である。 管理対象端末200の稼動状態情報を記述するためのデータツリーの例を示す図である。 基本情報管理テーブル141の構成とデータ例を示す図である。 アプリケーション情報管理テーブル142の構成とデータ例を示す図である。 端末管理エージェント210に対して端末管理プラグイン220内のサブプログラムを登録する処理を説明するシーケンス図である。 端末管理サーバ100が管理対象端末200から稼動状態情報を記述したデータツリーを収集する処理を説明するシーケンス図である。 データツリー操作プログラム121がデータツリーをサーバ側データツリー格納部140に格納する処理を説明するシーケンス図である。 管理者が管理者端末300を用いて管理対象端末200のアプリケーション状態を参照する処理を説明するシーケンス図である。 データツリー操作プログラム121がデータツリー内から指定されたレコードを検索する処理を説明するシーケンス図である。 端末管理サーバ100が管理対象端末200に対して制御命令を発行する処理を説明するシーケンス図である。 コマンド管理テーブル150の構成とデータ例を示す図である。 端末管理サーバ100が発行した制御命令を管理対象端末200が実行する処理を説明するシーケンス図である。 実施形態2に係る端末管理システム1000の構成図である。 管理対象端末200のファームウェア情報を管理する機能を端末管理システム1000に追加する処理を説明するシーケンス図である。 ステップS1405において端末管理サーバ100が発行する制御命令を格納したコマンド管理テーブル150の構成を例示する図である。 FarmwareInfoツリーの1例を示す図である。 ファームウェア情報管理テーブル143の構成とデータ例を示す図である。
<実施の形態1>
図1は、本発明の実施形態1に係る端末管理システム1000の構成図である。端末管理システム1000は、管理対象端末200の稼動状態情報を管理し、管理対象端末200に対して制御命令を発行するシステムであり、端末管理サーバ100(端末管理装置)、管理者端末300を有する。これら機器は、ネットワークを介して接続されている。以下の説明では記載の便宜上、各プログラムを動作主体として説明する場合があるが、実際にこれらプログラムを実行するのはCPU(Central Processing Unit)などの演算装置であり、プログラムを搭載した機器はこれを実行する演算装置を備えているものとする。
管理対象端末200は、端末管理システム1000の管理対象となる端末であり、端末管理エージェント210(端末管理部)、端末管理プラグイン220、端末側データツリー格納部230を備える。
端末管理エージェント210は、端末管理サーバ100に対して当該端末の稼動状態情報を送信し、端末管理サーバ100から制御命令を受信するプログラムである。端末管理プラグイン220は、端末管理エージェント210を介して、端末管理サーバ100に対して当該端末の稼動状態情報を送信し、端末管理サーバ100から制御命令を受信して実行するプログラムである。端末管理プラグイン220は、管理対象となる稼動状態情報に対応したサブプログラムを有する。ここでは、後述するApplicationInfoに対応するアプリケーション管理プログラム221と、DeviceInfo項目に対応する基本情報管理プログラム222を例示した。端末側データツリー格納部230は、管理対象端末200の稼動状態情報をツリー形式で記述したデータツリーを記憶する記憶装置である。
端末管理サーバ100は、管理対象端末200の稼動状態情報を収集・管理し、管理者端末300からの指令に基づき、管理対象端末200に対して制御命令を発行する。制御命令の例としては、アプリケーションのインストール、起動・停止などが挙げられる。端末管理サーバ100は、先述のOMA−DMのようにツリー形式で稼動状態情報を記述する遠隔管理プロトコルを用いて、管理対象端末200の稼動状態情報を取得し、または管理対象端末200に対して制御命令を発行する。
端末管理サーバ100は、管理者端末通信プログラム111、管理対象端末通信プログラム112、データツリー操作プログラム121、コマンド操作プログラム122、サブツリー操作プログラム130、サーバ側データツリー格納部140、コマンド管理テーブル150を備える。
管理者端末通信プログラム111は、管理者端末300から指令を受信するプログラムである。管理対象端末通信プログラム112は、管理対象端末200から稼動状態情報を受信し、管理対象端末200に対して制御命令を送信するプログラムである。データツリー操作プログラム121は、サーバ側データツリー格納部140が格納しているデータツリーに対する読込要求や書込要求を受け取り、サブツリー操作プログラム130内の対応するプログラムにその要求を振り分けるプログラムである。サブツリー操作プログラム130は、サーバ側データツリー格納部140が格納しているデータツリーを読み込み、またはデータを書き込むプログラムである。サブツリー操作プログラム130は、端末管理プラグイン220が備えるサブプログラムに対応するサブプログラムとして、基本情報操作プログラム131とアプリケーション情報操作プログラム132を備える。サーバ側テータツリー格納部140については後述する。コマンド操作プログラム122は、管理対象端末200に対する制御命令をツリー形式で記述してコマンド管理テーブル150に格納する。コマンド管理テーブル150の具体例については後述する。
管理者端末300は、管理対象端末200を管理する管理者が使用する端末であり、管理対象端末200の状態監視、アプリケーション起動・停止などの遠隔制御などの処理を実行する。管理者端末300は、端末操作プログラム310を備える。端末操作プログラム310は、端末管理サーバ100から管理対象端末200の稼動状態情報を取得してディスプレイなどに表示し、管理対象端末200に対する制御指令を入力するユーザインターフェースを提供する。
図2は、端末管理サーバ100と管理対象端末200が使用する遠隔管理プロトコルにおいて使用される、管理対象端末200の稼動状態情報を記述するためのデータツリーの例を示す図である。データツリーは、ツリーのパスによって属性値を指定できるように構成された、データの論理構造である。データツリーは、管理対象端末200から取得した稼動状態情報を記述するために使用することもできるし、管理対象端末200に対する制御命令を記述するために使用することもできる。
図2に示すデータツリーは、管理対象端末200の基本情報を格納するDeviceInfoサブツリーと、管理対象端末200にインストールされているアプリケーションの属性情報を格納するApplicationInfoサブツリーを有する。ApplicationInfoサブツリーは、管理対象端末200にインストールされているアプリケーションと同数の子ノードを持ち、それぞれの子ノードは属性値として、アプリケーションのIDであるAppID、起動・停止状態を表すStatus、アプリケーションのバージョンを表すVersionを有する。ツリーのパスとして、/DeviceInfo/DeviceIDを指定すると、属性値D00001を取得し、または更新することができる。
アプリケーション管理プログラム221はApplicationInfoサブツリーの属性値を取得または更新し、基本情報管理プログラム222はDeviceInfoサブツリーの属性値を取得または更新する。端末管理エージェント210は、管理対象端末200に対して稼動状態情報の取得または更新を指示する命令を受信すると、その命令の宛先に対応する端末管理プラグイン220内のサブプログラムに命令を振り分ける。
図3は、基本情報管理テーブル141の構成とデータ例を示す図である。基本情報管理テーブル141は、DeviceInfoサブツリーの値を格納するテーブルであり、同サブツリーが有する各属性値に対応するフィールドを有する。
図4は、アプリケーション情報管理テーブル142の構成とデータ例を示す図である。アプリケーション情報管理テーブル142は、ApplicationInfoサブツリーの値を格納するテーブルであり、同サブツリーが有する各属性値に対応するフィールドを有する。ただし、個々の管理対象端末200を識別するため、これらフィールドに加えてDeviceIDフィールドも備えている。
基本情報管理テーブル141とアプリケーション情報管理テーブル142は、図2に示すデータツリーのうち一部のノードを抽出し、RDBのスキーマ形式によって記述したテーブルである。RDBの形式でデータを格納することにより、RDBの検索性能を利用してデータツリーを検索することができる。データ項目を拡張する場合は、新たに追加するツリーノードに対応するテーブルを設け、同テーブルに対応するサブプログラムをサブツリー操作プログラム130と端末管理プラグイン220に追加すればよいので、ツリー形式の拡張性もそのまま利用することができる。
端末管理サーバ100は、例えばAppID=A001のStatusをidleからactiveに変更するコマンドを管理対象端末200に対して発行することにより、停止状態にある管理対象端末200上のアプリケーションA001を起動させることができる。
以上、端末管理システムの構成について説明した。以下では、端末管理システムの動作例について説明する。必要に応じて、具体例として、図2〜図4に記載しているデータを用いる。
図5は、端末管理エージェント210に対して端末管理プラグイン220内のサブプログラムを登録する処理を説明するシーケンス図である。端末管理エージェント210は、端末管理サーバ100から稼動状態情報を取得または更新する命令を受け取ると、対応するサブプログラムに命令を振り分ける必要がある。このときの対応関係をあらかじめ定義しておく処理を、登録と呼ぶことにする。以下、図5の各ステップについて説明する。
(図5:ステップS501)
端末管理プラグイン220内のサブプログラムは、自身のプログラムパスと、管理するデータツリーのルートパスを、端末管理エージェント210に登録する。プログラムパスとは、端末管理プラグイン220のインスタンスが格納されるメモリ上のアドレスである。ルートパスとは、サブツリーのルートノード名である。例えばDeviceInfoツリーであればDeviceInfo、ApplicationInfoツリーであればApplicationInfoとなる。
(図5:ステップS501:補足)
組込機器向けJavaプラットフォームであるOSGiでは、任意の文字列によるインスタンスの登録・検索機能であるServiceTrackerを設けているので、端末管理エージェント210と端末管理プラグイン220がOSGi上で動作するOSGiバンドルとして実装されている場合は、その機能を利用して本ステップを実施することができる。例えば、基本情報管理プログラム222は、自身に対応する命令を表す文字列としてDeviceInfoを指定し、自身のインスタンスをServiceTrackerに登録する。以後、端末管理エージェント210は、文字列「DeviceInfo」を指定することにより、基本情報管理プログラム222のインスタンスを検索し、その機能を呼び出すことができる。
(図5:ステップS502)
端末管理エージェント210は、端末管理プラグイン220内の対応するサブプログラムに対し、管理しているデータツリーを送信するよう要求する。
(図5:ステップS503)
端末管理プラグイン220内のサブプログラムは、自身が管理するデータツリーを端末管理エージェント210に送信する。基本情報管理プログラム222はDeviceInfoツリーを送信し、アプリケーション管理プログラム221はApplicationInfoツリーを送信する。
(図5:ステップS504)
端末管理エージェント210は、ステップS503で受信したデータツリーを端末側データツリー格納部230に格納する。
図6は、端末管理サーバ100が管理対象端末200から稼動状態情報を記述したデータツリーを収集する処理を説明するシーケンス図である。以下、図6の各ステップについて説明する。
(図6:ステップS601)
端末管理エージェント210は、データツリーを端末側データツリー格納部230から読み込む。このとき読み込む値は、ツリーのパスと値のペアである。図2に示したデータツリーを例にすると、パス/DeviceInfo/DeviceIDと値D00001、パス/DeviceInfo/Manufacturerと値CompanyA、パス/DeviceInfo/Modelと値SmartPhone、パス/ApplicationInfo/A001/AppIDと値A001、パス/DeviceInfo/Statusと値idle、パス/ApplicationInfo/A001/Versionと値1.0.1、パス/ApplicationInfo/A002/AppIDと値A002、パス/ApplicationInfo/A002/Statusと値active、/ApplicationInfo/A002/Versionと値2.2.0のペアが読み込まれる。
(図6:ステップS602)
端末管理エージェント210は、ステップS601で読み込んだDeviceIDの値とデータツリーを、管理対象端末通信プログラム112に送信する。
(図6:ステップS603)
管理対象端末通信プログラム112は、ステップS602で取得したDeviceIDの値とデータツリーを、データツリー操作プログラム121に送信する。以降、図7の処理に進む。
図7は、データツリー操作プログラム121がデータツリーをサーバ側データツリー格納部140に格納する処理を説明するシーケンス図である。以下、図7の各ステップについて説明する。
(図7:ステップS701)
データツリー操作プログラム121は、ステップS603で管理対象端末通信プログラム112から受け取ったデータツリーのルートパスを取得する。図2のデータツリーの場合、DeviceInfoノードとApplicationInfoノードを取得する。
(図7:ステップS702)
データツリー操作プログラム121は、ステップS701で取得したルートパスに対応するサブツリー操作プログラム130内のサブプログラムを特定する。アプリケーションサーバ向けJavaプラットフォームであるJavaEE(Enterprise Edition)では、OSGiと同様に、任意の文字列を用いてインスタンスを登録・検索する機構であるJNDI(Java Naming and Directory Interface)を設けているので、これを用いてサブプログラムを特定することができる。例えば基本情報操作プログラム131は、文字列DeviceInfoによって特定し、そのインスタンスをJNDIに登録することができる。本ステップにおいては、サブツリー操作プログラム130として、基本情報操作プログラム131とアプリケーション情報操作プログラム132のインスタンスが取得される。
(図7:ステップS703)
データツリー操作プログラム121は、ステップS702で取得したサブツリー操作プログラム130内のサブプログラムに対し、DeviceIDと対応するサブツリーを送信する。具体的には、パス/DeviceInfo/DeviceIDと値D00001、パス/DeviceInfo/Manufacturerと値CompanyA、パス/DeviceInfo/Modelと値SmartPhoneのペアが、基本情報操作プログラム131に渡され、パス/ApplicationInfo/A001/AppIDと値A001、パス/DeviceInfo/Statusと値idle、パス/ApplicationInfo/A001/Versionと値1.0.1、パス/ApplicationInfo/A002/AppIDと値A002、パス/ApplicationInfo/A002/Statusと値ative、/ApplicationInfo/A002/Versionと値2.2.0のペアが、アプリケーション情報操作プログラム132に渡される。
(図7:ステップS704)
サブツリー操作プログラム130内の各サブプログラムは、ステップS703で受け取ったDeviceIDとデータツリーを、サーバ側データツリー格納部140内の、自身の管理するテーブルに格納する。具体的には、基本情報操作プログラム131は、受け取ったパスと値のペアを基本情報管理テーブル141に格納しアプリケーション情報操作プログラム132は、アプリケーション情報テーブルに格納する。
図8は、管理者が管理者端末300を用いて管理対象端末200のアプリケーション状態を参照する処理を説明するシーケンス図である。以下、図8の各ステップについて説明する。
(図8:ステップS801)
端末操作プログラム310は、アプリケーション状態を参照する管理対象端末200のDeviceID、状態を参照するアプリケーションのAppID、アプリケーション状態が格納されるデータツリーのルートパスであるApplicationInfoを、管理者端末通信プログラム111に送信する。以降、DeviceIDをD00001、AppIDをA001として、説明する。
(図8:ステップS802)
管理者端末通信プログラム111は、ステップS801で受信したDeviceIDと文字列ApplicationInfoを、データツリー操作プログラム121に送信する。データツリー操作プログラム121は、図9で説明する処理によって対応する属性値を検索し、検索結果を管理者端末通信プログラム111に返信する。図4に示すデータ例に拠れば、DeviceID=D00001、AppID=A001のレコードが、管理者端末通信プログラム111に返される。
(図8:ステップS803)
管理者端末通信プログラム111は、データツリー検操作プログラム121から受信したツリーデータを端末操作プログラム310に送信する。
(図8:ステップS804)
端末操作プログラム310は、ステップS803で受信したツリーデータを管理者端末300上のディスプレイなどに表示する。具体的には、DeviceID=D00001、AppID=A001、Version=1.0.1、Status=idleが表示される。これにより管理者は、端末D00001のアプリケーションA001が停止状態にあることを知ることができる。
図9は、データツリー操作プログラム121がデータツリー内から指定されたレコードを検索する処理を説明するシーケンス図である。以下、図9の各ステップについて説明する。
(図9:ステップS901)
データツリー操作プログラム121は、データツリー操作プログラム121の呼び出し元(管理者端末通信プログラム111または管理対象端末通信プログラム112)から受け取ったルートパスに対応する、サブツリー操作プログラム130内のサブプログラムを特定する。ルートパスがApplicationInfoの場合、アプリケーション情報操作プログラム132が特定される。
(図9:ステップS902)
データツリー操作プログラム121は、ステップS901で特定したサブツリー操作プログラム130内のサブプログラムに、検索条件を送信する。
(図9:ステップS903)
サブツリー操作プログラム130内のサブプログラムは、受信した検索条件にしたがって、サーバ側データツリー格納部140内の自身が管理するテーブルから該当するレコードを検索し、検索結果をデータツリー操作プログラム121に送信する。例えば検索条件が、DeviceID=D00001、AppID=A001であった場合、図4に示す1レコード目が取得される。
(図9:ステップS904)
データツリー操作プログラム121は、ステップS903で取得した検索結果を、データツリー操作プログラム121の呼び出し元(管理者端末通信プログラム111または管理対象端末通信プログラム112)に返す。
図10は、端末管理サーバ100が管理対象端末200に対して制御命令を発行する処理を説明するシーケンス図である。以下、図10の各ステップについて説明する。
(図10:ステップS1001)
端末操作プログラム310は、制御命令の宛先である管理対象端末200のDeviceID、更新するデータツリーのパス、および更新後の値を、管理者端末通信プログラム111に送信する。例えば、端末D00001のアプリケーションA001を起動する場合は、データツリーのパスは/ApplicationInfo/A001/Status、値はativeとなる。
(図10:ステップS1002)
管理者端末通信プログラム111は、ステップS1001で受信したDeviceID、データツリーのパス、値をコマンド操作プログラム122に送信する。
(図10:ステップS1003)
コマンド操作プログラム122は、ステップS1002で受信したDeviceID、データツリーのパス、値をコマンド管理テーブル150に格納する。
図11は、コマンド管理テーブル150の構成とデータ例を示す図である。管理対象端末200に対する制御命令は、稼動状態情報と同じツリー形式によって記述することができる。ステップS1001の例の場合、図11の1レコード目のように記述することができる。コマンド管理テーブル150に格納された制御命令は、図12で説明するシーケンスによって実行される。
図12は、端末管理サーバ100が発行した制御命令を管理対象端末200が実行する処理を説明するシーケンス図である。以下、図12の各ステップについて説明する。
(図12:ステップS1201)
端末管理エージェント210は、管理対象端末通信プログラム112に対して自身のDeviceIDを通知し、自身に対する制御命令が端末管理サーバ100から発行されているか否かを問い合わせる。
(図12:ステップS1202)
管理対象端末通信プログラム112は、ステップS1201で受信したDeviceIDを、コマンド操作プログラム122に送信する。
(図12:ステップS1203)
コマンド操作プログラム122は、ステップS1202で受信したDeviceIDをコマンド管理テーブル150から検索し、検索結果を管理対象端末通信プログラム112に返す。DeviceID=D00001であれば、図11の1レコード目が管理対象端末通信プログラム112に返される。
(図12:ステップS1204)
管理対象端末通信プログラム112は、ステップS1203で受信した検索結果を、端末管理エージェント210に送信する。
(図12:ステップS1205)
端末管理エージェント210は、ステップS1204で受信したレコードが記述しているデータツリーのパスからルートパスを求め、対応する端末管理プラグイン220内のサブプログラムを特定し、データツリーのパスと値を渡す。DeviceID=D00001であれば、データツリーのパスは/ApplicationInfo/A001/Statusであり、ルートパスはApplicationInfoとなるため、アプリケーション管理プログラム221が選択され、パス/ApplicationInfo/A001/Status、値ativeが渡される。アプリケーション管理プログラム221は、渡されたパスと値が指定する制御命令にしたがって、アプリケーションA001を起動する。
<実施の形態1:まとめ>
以上のように、本実施形態1に係る端末管理サーバ100は、管理対象端末200との間で使用する遠隔管理プロトコルが使用するツリー形式データのうち一部のノードの属性値を格納する管理テーブルを備える。さらに端末管理サーバ100は、各管理テーブルに対してデータを書き込み、またはデータを読み取る操作プログラムを、管理テーブル毎に備えている。これにより、RDBの検索性能を保ちつつ、ツリー形式データの拡張性を利用して端末管理を柔軟に実施することができる。
<実施の形態2>
実施形態1では、サブツリー操作プログラム130内のサブプログラム、対応する管理テーブル、および端末管理プラグイン220内のサブプログラムを追加することにより、RDB形式のテーブルを利用しつつデータツリーを拡張できることを説明した。本発明の実施形態2では、その1例として、管理用端末200のファームウェア情報を管理項目として新たに追加した構成例を説明する。
図13は、本実施形態2に係る端末管理システム1000の構成図である。管理対象端末200上においては、端末管理プラグイン220内のサブプログラムとして、ファームウェア管理プログラム223が追加されている。端末管理サーバ100上においては、サブツリー操作プログラム130内のサブプログラムとして、ファームウェア情報操作プログラム133が追加されている。サーバ側データツリー格納部140には、ファームウェア情報テーブル143が追加されている。
端末管理システム1000はさらに、バイナリ管理サーバ400を有する。バイナリ管理サーバ400は、管理対象端末200にファームウェア管理プログラム223を配信するためのサーバである。端末管理エージェント210は、端末管理サーバ100が発行する制御命令にしたがって、バイナリ管理サーバ400からファームウェア管理プログラム223をダウンロードし、管理対象端末200上にインストールする。
図14は、管理対象端末200のファームウェア情報を管理する機能を端末管理システム1000に追加する処理を説明するシーケンス図である。以下、図14の各ステップについて説明する。
(図14:ステップS1401)
端末操作プログラム310は、管理者端末通信プログラム111に、ファームウェア情報操作プログラム133を送信する。
(図14:ステップS1402)
管理者端末通信プログラム111は、ステップS1401で受信したファームウェア情報操作プログラム133を、端末管理サーバ100上で起動する。端末管理サーバ100のプラットフォームがJavaEEである場合、ファームウェア管理用のデータツリーのルートパスをあらわす文字列であるFarmwareInfoを指定して、ファームウェア情報操作プログラム133のインスタンスをJNDIに登録する。
(図14:ステップS1403)
ファームウェア情報操作プログラム133は、サーバ側データツリー格納部140に、ファームウェア情報管理テーブル143を生成する。ファームウェア情報管理テーブル143の構成については後述する。本ステップは、ファームウェア情報操作プログラム133に代えて、管理者などが手動で実施してもよい。
(図14:ステップS1404)
端末操作プログラムは、ファームウェア管理プログラム223のバイナリを、バイナリ管理サーバ400にアップロードする。
(図14:ステップS1405)
端末管理サーバ100は、図10で説明したものと同様の手順を用いて、管理対象端末200に対して、ファームウェア管理プログラム223をインストールするよう支持する制御命令を発行する。
(図14:ステップS1406)
端末管理エージェント210は、図12で説明したものと同様の手順を用いて、ステップS1405で発行された制御命令にしたがって、ファームウェア管理プログラム223を管理対象端末200にインストールする。
(図14:ステップS1407)
端末管理エージェント210は、図5で説明したものと同様の手順を用いて、ファームウェア管理プログラム223を端末管理エージェント210上に登録する。ファームウェア管理プログラム223は、管理対象端末200のファームウェア情報を取得してFarmwareInfoツリーを生成し、端末管理エージェント210を介して、端末側データツリー格納部230に格納する。
(図14:ステップS1408)
端末管理サーバ100は、図6で説明したものと同様の手順を用いて、管理対象端末200のファームウェアに関するデータツリー(FarmwareInfoツリー)を収集してファームウェア情報管理テーブル143に格納する。
以上のステップS1401からステップS1408までの処理により、端末管理システム1000にファームウェア管理機能が新たに追加される。以降、図10で説明した登録処理と図12で説明した実行処理によって、管理対象端末200に対して新たなファームウェアを配信し、その状態を管理することができる。
図15は、ステップS1405において端末管理サーバ100が発行する制御命令を格納したコマンド管理テーブル150の構成を例示する図である。図15に示すデータ例において、ファームウェア管理プログラム223のAppIDはA003であり、/ApplicationInfo/A003/URL属性にはファームウェア管理プログラム223のダウンロード元URLとして133.108.xxx.xxx/Application/A003が指定され、/ApplicationInfo/A003/Status属性にはバイナリのダウンロードとインストール開始を指示するdownloadAndInstallが指定されている。
端末管理エージェント210は、図15に例示するような制御命令にしたがって、ダウンロード元である133.108.xxx.xxx/Application/A003からファームウェア管理プログラム223をダウンロードし、管理対象端末200上にインストールする。
図16は、FarmwareInfoツリーの1例を示す図である。FarmwareInfoツリーは、ファームウェア情報を保持する属性値として、FarmID、Version、ByteSizeを有する。
図17は、ファームウェア情報管理テーブル143の構成とデータ例を示す図である。ファームウェア情報管理テーブル143は、FarmwareInfoサブツリーの値を格納するテーブルであり、同サブツリーが有する各属性値に対応するフィールドを有する。ただし、個々の管理対象端末200を識別するため、これらフィールドに加えてDeviceIDフィールドも備えている。
<実施の形態2:まとめ>
以上のように、本実施形態2においては、管理対象端末200の管理対象項目を追加する例として、ファームウェア情報を管理する機能を例示した。本実施形態2で説明したように、追加する管理対象項目を記述するツリーノードに対応して、サブツリー操作プログラム130、対応する管理テーブル、および端末管理プラグインを追加することにより、端末管理システム1000に新たな機能を動的に追加することができる。これはツリー形式のデータフォーマットの利点を活かしたものであると同時に、RDBの検索性能を利用することができる点で、有用であると考えられる。
100:端末管理サーバ、111:管理者端末通信プログラム、112:管理対象端末通信プログラム、121:データツリー操作プログラム、122:コマンド操作プログラム、130:サブツリー操作プログラム、140:サーバ側データツリー格納部、150:コマンド管理テーブル、200:管理対象端末、210:端末管理エージェント、220:端末管理プラグイン、230:端末側データツリー格納部、300:管理者端末、310:端末操作プログラム、端末管理システム1000。

Claims (8)

  1. ツリー形式で端末の稼動状態情報を記述する遠隔管理プロトコルを用いて、管理対象である端末からその端末の稼動状態情報を取得する端末通信部と、
    前記端末通信部が前記端末から取得した稼動状態情報を格納する管理テーブルと、
    前記管理テーブルに対して前記稼動状態情報を書き込む処理を実装したテーブル操作プログラムと、
    を備え、
    前記管理テーブルは、前記ツリー形式上の少なくともいずれかのノード毎に1つ設けられ、各前記管理テーブルは、対応する前記ノードに属する属性値を格納するフィールドを有しており、
    前記テーブル操作プログラムは、前記管理テーブル毎に設けられ、各前記テーブル操作プログラムは、対応する前記管理テーブルに対して前記属性値を書き込む処理を実装している
    ことを特徴とする端末管理装置。
  2. 前記管理テーブルは、少なくとも前記ツリー形式上の属性値を集約するいずれかの前記ノード毎に設けられている
    ことを特徴とする請求項1記載の端末管理装置。
  3. 請求項1または2記載の端末管理装置と、
    前記端末管理装置の管理対象であり、前記端末管理装置に対して前記遠隔管理プロトコルを用いて前記稼動状態情報を送信する端末と、
    を有することを特徴とする端末管理システム。
  4. 前記端末は、前記端末の稼動状態情報を取得する管理プログラムを備え、
    前記管理プログラムは、前記ツリー形式上の少なくともいずれかのノード毎に1つ設けられ、各前記管理プログラムは、対応する前記ノードに属する属性値を前記端末から取得する処理を実装している
    ことを特徴とする請求項3記載の端末管理システム。
  5. 前記管理プログラムは、前記管理テーブル毎に設けられている
    ことを特徴とする請求項4記載の端末管理システム。
  6. 前記端末管理システムは、前記端末に対して前記管理プログラムを配布するバイナリ管理サーバを有し、
    前記端末は、前記バイナリ管理サーバから前記管理プログラムを取得して前記端末上にインストールする端末管理部を備える
    ことを特徴とする請求項4または5記載の端末管理システム。
  7. 前記管理プログラムは、OSGiフレームワーク上に実装されたOSGiバンドルとして構成されている
    ことを特徴とする請求項から6のいずれか1項記載の端末管理システム。
  8. 前記遠隔管理プロトコルは、OMA−DM、TR−069およびTR−106、またはETSI M2Mのうち少なくともいずれかである
    ことを特徴とする請求項3から7のいずれか1項記載の端末管理システム。
JP2012206265A 2012-09-19 2012-09-19 端末管理装置、端末管理システム Expired - Fee Related JP5873782B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2012206265A JP5873782B2 (ja) 2012-09-19 2012-09-19 端末管理装置、端末管理システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012206265A JP5873782B2 (ja) 2012-09-19 2012-09-19 端末管理装置、端末管理システム

Publications (2)

Publication Number Publication Date
JP2014064056A JP2014064056A (ja) 2014-04-10
JP5873782B2 true JP5873782B2 (ja) 2016-03-01

Family

ID=50618941

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012206265A Expired - Fee Related JP5873782B2 (ja) 2012-09-19 2012-09-19 端末管理装置、端末管理システム

Country Status (1)

Country Link
JP (1) JP5873782B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109274590A (zh) * 2017-07-18 2019-01-25 合勤科技股份有限公司 移动宽带路由器的远程管理方法及电路

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107392808B (zh) * 2017-08-17 2023-08-25 河北大学 学子林与成长树信息管理装置及其方法

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2701592B2 (ja) * 1991-06-27 1998-01-21 日本電気株式会社 網監視制御方式
JPH0589018A (ja) * 1991-09-30 1993-04-09 Matsushita Electric Ind Co Ltd 管理情報ベース
JPH05289919A (ja) * 1992-04-08 1993-11-05 Shikoku Nippon Denki Software Kk データベースアクセスプログラム生成方式
JPH09200205A (ja) * 1996-01-11 1997-07-31 Toshiba Corp ネットワーク管理方法及びその装置
US20020064259A1 (en) * 2000-11-29 2002-05-30 Wen-Sung Tsai Portable sub-service station
EP1467289A1 (en) * 2003-04-07 2004-10-13 Deutsche Thomson-Brandt Gmbh database model for hierarchical data formats
US7318063B2 (en) * 2004-02-19 2008-01-08 Microsoft Corporation Managing XML documents containing hierarchical database information
JP2006050051A (ja) * 2004-08-02 2006-02-16 Matsushita Electric Ind Co Ltd 管理情報ベース
WO2009095981A1 (ja) * 2008-01-28 2009-08-06 Turbo Data Laboratories Inc. 表からツリー構造データを構築する方法及び装置
JP5069168B2 (ja) * 2008-04-18 2012-11-07 日本電信電話株式会社 ネットワーク運用監視システム、マネージャ装置、及びネットワーク運用監視方法
WO2010014780A1 (en) * 2008-07-31 2010-02-04 Juma Technology Corp. System and method for routing commands in a modularized software system
KR101481443B1 (ko) * 2008-09-12 2015-01-12 삼성전자주식회사 통신 네트워크의 디바이스 관리 방법 및 시스템
JP5091217B2 (ja) * 2009-11-12 2012-12-05 日本電信電話株式会社 ホーム機器情報収集装置及びホーム機器情報収集方法
US10051074B2 (en) * 2010-03-29 2018-08-14 Samsung Electronics Co, Ltd. Techniques for managing devices not directly accessible to device management server
EP2393238A1 (en) * 2010-06-01 2011-12-07 HTC Corporation Communication apparatus and method thereof

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109274590A (zh) * 2017-07-18 2019-01-25 合勤科技股份有限公司 移动宽带路由器的远程管理方法及电路

Also Published As

Publication number Publication date
JP2014064056A (ja) 2014-04-10

Similar Documents

Publication Publication Date Title
US11940999B2 (en) Metadata-driven computing system
US10776104B2 (en) Systems and methods for tracking configuration file changes
US9696984B2 (en) Application upgrade method and apparatus
US20130295902A1 (en) Method And Apparatus For Remotely Managing Devices Utilizing Request-Response Protocols
US11159390B2 (en) Systems and methods for service-aware mapping of a system infrastructure
CN104978285B (zh) 功能扩展方法和终端装置
US20150058445A1 (en) Service Method and System Using Instance Interface of Virtualization Object in Internet of Things Environment
CN103067484A (zh) 一种自动升级应用程序的方法和系统
CN102413022A (zh) 一种应用调试方法和系统
US10250437B2 (en) Method and system for configuring network devices
US11303583B2 (en) Resource trees by management controller
CN110719187B (zh) 配置管理方法、系统及计算机可读存储介质
KR101482651B1 (ko) 서비스 폴링 방법 및 시스템, 그리고 컴퓨터 기억 매체
JP5873782B2 (ja) 端末管理装置、端末管理システム
Jin et al. IoT device management architecture based on proxy
WO2017211091A1 (zh) 网络接入设备的配置方法及装置
CN111131373B (zh) 呼吸机数据同步系统、方法、装置及存储介质
US20180004767A1 (en) REST APIs for Data Services
CN108701035A (zh) 应用属性的管理
US11843678B2 (en) Information processing system, method, and program
CN110114763B (zh) 数据处理系统及方法
CN115695465B (zh) 可扩展和可插拔式的云原生监控系统平台及其监控方法
US20240202188A1 (en) Metadata-driven computing system
KR101074887B1 (ko) 룩앤필 컨텐츠를 정렬 및 관리하기 위한 방법 및 시스템
JP6200377B2 (ja) 仮想dbシステム、および、仮想dbシステムの情報処理方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20150126

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20151015

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20151104

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20151209

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160118

R150 Certificate of patent or registration of utility model

Ref document number: 5873782

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees