(57)【要約】【課題】通信装置の設定を通信装置の状況に応じて動的に変更する。【解決手段】デバイスの制御方法は、デバイスとデバイスを制御する制御装置を含む通信装置で使用される。制御装置は、デバイスでの処理にかかる時間である処理時間を計測する。制御装置は、処理時間が、処理にかかる時間として許容される上限値である基準値を超えると、処理を要求した要求元に、タイムアウトの発生を通知する。要求元は、要求元が処理を要求した時刻から処理の結果に対する待機を終了するまでの時間よりも短く、かつ、基準値よりも長い時間を、基準値の更新値として制御装置に通知する。制御装置は、更新値で基準値を更新する。【選択図】図１
2015177373.tif 000002
【特許請求の範囲】
【請求項１】
デバイスと前記デバイスを制御する制御装置を含む通信装置で使用される前記デバイスの制御方法であって、
前記制御装置は、
前記デバイスでの処理にかかる時間である処理時間を計測し、
前記処理時間が、前記処理にかかる時間として許容される上限値である基準値を超えると、前記処理を要求した要求元に、タイムアウトの発生を通知し、
前記要求元は、前記要求元が前記処理を要求した時刻から前記処理の結果に対する待機を終了するまでの時間よりも短く、かつ、前記基準値よりも長い時間を、前記基準値の更新値として前記制御装置に通知し、
前記制御装置は、前記更新値で前記基準値を更新する
ことを特徴とするデバイス制御方法。
【請求項２】
前記基準値は、前記基準値に設定できる最大値、および、前記基準値に設定できる最小値と共に、前記デバイスの制御のために前記制御装置が使用するファームウェアに設定されており、
前記制御装置は、
前記要求元から通知された更新値が、前記最小値から前記最大値までの範囲に含まれている場合、前記更新値を前記基準値として前記ファームウェアに設定し、
前記更新値が前記範囲に含まれていない場合、前記要求元に新たな更新値を要求する
ことを特徴とする請求項１に記載のデバイス制御方法。
【請求項３】
前記要求元は、
前記制御装置から得られる前記処理の結果を用いて、前記通信装置で使用されるソフトウェアを実行し、
前記タイムアウトの発生が通知されると、前記更新値が表わす期間を、前記処理の要求を行ってから前記処理の結果を取得するまでの期間として前記ソフトウェアで許容されている許容期間よりも短く、かつ、前記基準値が示す期間よりも長くなるように決定する
ことを特徴とする請求項１または２に記載のデバイス制御方法。          
【請求項４】
前記要求元は、前記通信装置および他の通信装置に接続され、前記通信装置および前記他の通信装置の処理を管理する管理装置であり、
前記管理装置は、
前記通信装置から前記通信装置でのタイムアウトを通知されると、前記通信装置で使用される基準値である第１の基準値についての更新値を決定し、
前記更新値を前記通信装置に通知し、
前記通信装置中の制御装置は、前記第１の基準値を前記更新値で更新し、
前記管理装置は、前記他の通信装置でのタイムアウトの発生が前記他の通信装置から通知されるまで、他の通信装置で使用される基準値である第２の基準値については更新値を決定しない
ことを特徴とする請求項１または２に記載のデバイス制御方法。          
【請求項５】
処理を行うデバイスと、
前記デバイスの処理の終了までにかかる時間の基準値を記憶する記憶部と、
前記デバイスでの処理にかかる時間である処理時間を計測する計測部と、
前記デバイスでの処理の開始時刻から前記基準値が表わす期間が経過するまでに前記デバイスでの処理が終了すると、前記処理を要求した要求元に前記処理の成功を通知する通知部と、
前記処理時間が前記基準値を超えると、前記要求元が前記処理を要求する時刻から前記通知の待機を終了する時刻までの時間よりも短く、かつ、前記基準値よりも長い時間として前記要求元から通知された更新値に、前記基準値を更新する更新部
を備えることを特徴とする通信装置。
【請求項６】
前記要求元から送信されたパケットを受信する受信部を備え、
前記記憶部は、前記基準値に設定できる最大値と最小値を記憶し、
前記更新部は、
前記更新値が前記パケットに含まれていると、前記更新値が前記最小値から前記最大値までの範囲内に含まれているかを判定し、
前記更新値が前記範囲内に含まれている場合、前記更新値で前記基準値を更新し、
前記更新値が前記範囲内に含まれていない場合、前記範囲内に含まれており、かつ、前記基準値より大きな値で、前記基準値を更新する
ことを特徴とする請求項５に記載の通信装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、装置に含まれるデバイスの制御方法に関する。
【背景技術】
【０００２】
通信システムを長期間にわたって運用すると、通信システムに含まれている装置中のデバイスに劣化や故障が発生することがある。この場合、劣化や故障などの問題の発生したデバイスを新たなデバイスで置き換えることにより修理するが、運用期間が長くなると、問題が発生しているデバイスと同じデバイスを入手できないことがある。問題が発生しているデバイスと同じデバイスを入手できない場合は、問題が発生したデバイスを、そのデバイスと互換性のある他のデバイスに置き換えることになる。デバイスの変更により、処理にかかる時間が長くなると、デバイスからの応答を取得するファームウェアでは、タイムアウトを検出し、処理に失敗したと判定してしまう。そこで、デバイスの変更によるタイムアウトを防ぐために、デバイスを変更した場合、ファームウェアなど、デバイスでの処理時間によるタイムアウトの検出に関連するソフトウェアが、デバイスに合わせて更新される。
【０００３】
さらに、基地局などの通信システムの一部の装置にアクセスする端末数が増加したことにより、処理が追いつかずにタイムアウトが発生する場合もある。このような場合においても、端末数の増加により処理量が増加した装置に対しては、タイムアウトを防止するために、ファームウェアやミドルウェアなどが変更されることもある。
【０００４】
関連する技術として、補助記憶装置を制御する第１の制御手段を制御する第２の制御手段が、補助記憶装置から読み込んだ制御情報を、第１の制御手段に設定する装置が提案されている（例えば、特許文献１参照）。さらに、プログラマブルゲートアレイ（field-programmable gate array、ＦＰＧＡ）とＦＰＧＡに入出力特性を設定するためのプログラムを格納したメモリを搭載した装置も知られている。この装置では、新たな周辺デバイスが接続されると、周辺デバイスに対応したインタフェース回路を構築するプログラムデータがＦＰＧＡ中に格納され、コンフィグレーション処理が実行される（例えば、特許文献２参照）。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開平１０−１３３９９３号公報
【特許文献２】特開２００６−３２３７０５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
１つの装置のファームウェア等でタイマの設定値を変更する場合、その装置と通信する他の装置との間で、通信のタイムアウトを発生させる恐れがないかを検討することになる。このため、ファームウェアを変更する場合は、通信システム全体での動作確認を行うことになる。しかし、近年、通信システムが大規模化しているなどの理由から、通信システム全体での動作確認を行うのは煩雑である。関連する技術で述べた方法を適用しても、予め決められている値以外の値をファームウェアに設定することはできない。さらに、デバイスの変更やアクセスする端末数の変化などの通信装置の状況に応じて、動的にタイマの設定値を変更することもできない。
【０００７】
本発明は、１つの側面では、通信装置の設定を通信装置の状況に応じて動的に変更することを目的とする。
【課題を解決するための手段】
【０００８】
実施形態にかかるデバイスの制御方法は、デバイスと前記デバイスを制御する制御装置を含む通信装置で使用される。前記制御装置は、前記デバイスでの処理にかかる時間である処理時間を計測する。前記制御装置は、前記処理時間が、前記処理にかかる時間として許容される上限値である基準値を超えると、前記処理を要求した要求元に、タイムアウトの発生を通知する。前記要求元は、前記要求元が前記処理を要求した時刻から前記処理の結果に対する待機を終了するまでの時間よりも短く、かつ、前記基準値よりも長い時間を、前記基準値の更新値として前記制御装置に通知する。前記制御装置は、前記更新値で前記基準値を更新する。
【発明の効果】
【０００９】
通信装置の設定が通信装置の状況に応じて動的に変更される。
【図面の簡単な説明】
【００１０】
【図１】実施形態にかかる制御方法の例を説明する図である。
【図２】通信システムの例を示す図である。
【図３】制御部の構成の例を示す図である。
【図４】通信装置のハードウェア構成の例を示す図である。
【図５】記憶部に格納される情報の例を示す図である。
【図６】第１の実施形態で行われる処理の例を説明するシーケンス図である。
【図７】変化通知メッセージの例を示す図である。
【図８】変化確認メッセージの例を示す図である。
【図９】処理時間要求メッセージの例を示す図である。
【図１０】処理時間通知メッセージの例を示す図である。
【図１１】処理時間の長さの比較例を示す図である。
【図１２】基準値通知メッセージの例を示す図である。
【図１３】設定通知メッセージの例を示す図である。
【図１４】環境の変化に応じてタイマ値を変更する方法の例を説明する図である。
【図１５】第２の実施形態にかかる通信装置が保持する情報の例を示す図である。
【図１６】通信装置での確認処理の例を説明するフローチャートである。
【図１７】基準値の通知方法の例を説明するシーケンス図である。
【図１８】基準値の通知方法の例を説明するシーケンス図である。
【図１９】初期設定のために行われる処理の例を説明するシーケンス図である。
【発明を実施するための形態】
【００１１】
図１は、実施形態にかかる制御方法の例を説明する図である。図１に示す通信装置２０は、デバイス１０（１０ａ、１０ｂ）とデバイスの制御を行う制御部３０を備える。なお、図１は一例であり、通信装置２０中に含まれるデバイス１０の数は任意である。以下の説明では、数値の例として、ｘ、ｙ、ｚ、ｗを用いるが、これらの値の大きさは、ｘ＜ｙ＜ｚ＜ｗであるものとする。
【００１２】
デバイス１０ａ、１０ｂ、制御部３０のいずれも、特定の処理を正常に行う場合にかかる時間の最大値と最小値を保持しているものとする。以下、デバイス１０ａおよび１０ｂが４バイトのデータの書き込みを行う際にかかる時間の最小値がｘ秒、最大値がｚ秒であるとする。一方、制御部３０が４バイトのデータをデバイス１０ａまたはデバイス１０ｂに書き込むときに、書き込みの要求をデバイス１０ａ、１０ｂに出力してから書き込みの完了報告を取得するまでに許容される時間は、ｙ秒以上でｗ秒以下であるとする。換言すると、制御部３０の実現に使用されるファームウェアでは、デバイス１０への書き込みにかかる時間の固定値の代わりに、設定値として許容される値の範囲がｙ秒以上でｗ秒以下に設定されている。
【００１３】
時刻Ｔ１において、ケースＣ１に示すように、制御部３０がデバイス１０ａとデバイス１０ｂの各々に４バイトのデータを書き込むときに、デバイス１０ａおよびデバイス１０ｂの処理時間はｘ秒であるとする。一方、制御部３０では、デバイス１０ａまたはデバイス１０ｂからのデータの書き込みのタイムアウトを検出するために使用する基準値をｙ秒に設定しているとする。なお、基準値は、制御部３０中の記憶部５０に記憶されているものとする。時刻Ｔ１の段階では、制御部３０は、デバイス１０ａまたはデバイス１０ｂへの４バイトのデータの書き込み処理を正常に行うことができるものとする。
【００１４】
その後、時刻Ｔ２には、デバイス１０ｂが４バイトのデータを書き込むときにかかる時間がｘ秒よりも長くなり、ケースＣ２に示すように、ｚ秒かかるようになったとする。ここで、デバイス１０ｂでの書き込みにかかる時間が変動した理由は、デバイス１０ｂへのアクセスの集中や、デバイス１０ｂの経年劣化、デバイス１０ｂを互換性のある他の部品で置き換えたことなどのいずれの原因でも良いものとする。この場合、制御部３０がデバイス１０ｂへの４バイトのデータの書き込み処理を行うと、デバイス１０ｂが書き込み処理を行うためにｚ秒かかるのに対し、制御部３０は、ｙ秒でタイムアウトを検出する。前述のとおり、ｚ秒はｙ秒よりも長いので、制御部３０は、デバイス１０ｂへの４バイトのデータの書き込み処理を正常に行うことができない。
【００１５】
制御部３０は、デバイス１０ｂへの書き込み処理に失敗すると、デバイス１０ｂで４バイトの書き込みにかかる時間を取得する。このとき、制御部３０は、デバイス１０ｂに４バイトの書き込み処理を行わせて、処理の要求から処理の終了通知の取得までの時間を計測する。ここでは、デバイス１０ｂで４バイトの書き込みにかかる時間がｚ秒であるとする。制御部３０は、デバイス１０ｂへの書き込み処理を正常に行うために、４バイトのデータの書き込み処理に対するタイムアウトを検出するために使用する時間をｗ秒に変更する。
【００１６】
なお、制御部３０が例えば、通信装置２０に搭載されているアプリケーションや、システム中の他の装置に書き込みの終了を通知する場合は、制御部３０と制御部３０の通知先との間で同様の手法により、タイムアウトまでの待ち時間が設定される。このため、タイムアウト時間をｗ秒に変更しても、通信装置２０と他の装置との間の通信には、支障が出ない値となるように、システム中の他の装置やアプリケーションでの設定が適宜変更される。以上の例では、デバイス１０ａ、１０ｂとして動作するメモリへの書き込み処理が行われる場合を例として説明したが、デバイス１０の種類は任意であり、また、デバイス１０に対する処理の種類も任意である。
【００１７】
このように、デバイス１０の状況に応じて、通信装置２０において自律的にタイマ値の設定が変更される。さらに、通信装置２０で使用されるファームウェアでは、固定的な設定値の代わりに、設定値として許容される値の範囲が予め決められており、許容される値の範囲内で動的に決定された値を設定できる。このため、実施形態にかかるシステムでは、制御部３０の実現に使用されるファームウェアなどを変更しなくてもシステムの運用が可能である。このため、デバイス１０での処理時間の変更に起因して、システム全体の動作確認が行わなくてもよく、システムのメンテナンスも簡便になる。
【００１８】
＜通信システムと装置構成の例＞
図２は、通信システムの例を示す図である。図２に示す通信システムには、通信装置２０、オペレーションセンタ５、交換機２が含まれる。オペレーションセンタ５に含まれている装置や交換機２は、通信装置２０に対して、ユーザの通信処理を実現するための処理を、適宜、要求する。なお、交換機２は、Circuit Switched over-IP（ＣＳ−ＩＰ）化されたネットワークに対応可能な交換機２であっても良い。なお、図２の例では、図を分り易くするために通信システム中の交換機２、オペレーションセンタ５、通信装置２０を１つずつ示しているが、これらの数は、実装に応じて変更されうる。
【００１９】
通信装置２０は、ファンクションブロック２１、送受信部２２、中央処理部２５を備える。送受信部２２は、アプリケーション処理部８０から取得したデータを、オペレーションセンタ５中の装置や交換機２に送信する。また、送受信部２２は、オペレーションセンタ５中の装置や交換機２から取得したデータをアプリケーション処理部８０に出力する。中央処理部２５は、ミドルウェア処理部７０とアプリケーション処理部８０を備える。アプリケーション処理部８０は、通知部８１、更新部８２、処理部８３を備える。ミドルウェア処理部７０は、通知部７１、更新部７２、処理部７３を備える。
【００２０】
処理部８３は、通信装置２０宛てのデータを、アプリケーションを用いて処理する。処理部８３は、アプリケーションを用いた処理により、適宜、デバイス１０へのアクセスを行う際に、ミドルウェア処理部７０中の処理部７３に対して、デバイス１０へのアクセスを要求する。このとき、処理部８３は、要求した処理についての通知が通知部７１から所定の時間内に得られない場合、タイムアウトにより処理が失敗したと判定する。通知部８１は、処理の成功が通知部７１から通知されると、処理の成功を交換機２に通知する。一方、タイムアウトが発生すると、更新部８２は、処理部８３、処理部７３、ファンクションブロック２１などで使用されるタイマの基準値を計算する。更新部８２は、処理部８３での基準値を設定する。また、通知部８１は、処理部８３で得られた値を、処理部７３などに通知する。
【００２１】
処理部７３は、ミドルウェアを用いて、処理部８３からの要求を処理する。処理部７３は、処理部８３から要求された処理を行うファンクションブロック２１を選択し、ファンクションブロック２１に処理を要求する。なお、１つの通信装置２０に含まれるファンクションブロック２１の数は任意である。処理部７３は、処理の要求先として選択したファンクションブロック２１から、ファンクションブロック２１に要求した処理についての通知が所定の時間内に得られない場合、タイムアウトにより処理が失敗したと判定する。一方、ファンクションブロック２１から処理の成功が通知されると、通知部７１は、アプリケーション処理部８０に処理の成功を通知する。さらに、更新部７２は、処理部７３でのタイムアウトの検出に用いる値の更新値をアプリケーション処理部８０から取得すると、得られた値を処理部７３に設定する。通知部７１は、更新部８２からファンクションブロック２１で使用される基準値の更新値が通知されると、通知された値をファンクションブロック２１に出力する。
【００２２】
ファンクションブロック２１は、ファームウェア（ＦＷ）処理部６０、制御部３０、タイマ４０、デバイス１０を備える。ファームウェア処理部６０は、通知部６１、更新部６２、処理部６３を備える。処理部６３は、ミドルウェア処理部７０からの処理の要求に応じて、デバイス１０への処理の内容を特定し、特定した処理を制御部３０に要求する。処理部６３は、基準値以内の時間に制御部３０から処理についての成功と失敗のいずれも通知されない場合、タイムアウトが発生したと判定する。更新部６２は、通知部７１から処理部６３で使用する基準値の更新値を取得すると、基準値を更新値に変更する。通知部６１は、タイムアウトの発生を処理部７３に通知する。
【００２３】
制御部３０は、処理部６３からの要求に応じて、デバイス１０に対して処理を要求する。このとき、制御部３０は、デバイス１０での処理にかかる時間を、タイマ４０を用いて計測する。なお、タイマ４０は、制御部３０に含まれていても良いものとする。
【００２４】
図３は、制御部３０の構成の例を示す図である。図３の例では、制御部３０は、タイマ４０を内蔵している。制御部３０は、計測部３１、通知部３２、更新部３３、デバイス処理部３４、タイマ４０、記憶部５０を備える。
【００２５】
記憶部５０は、制御部３０がデバイス１０での処理を待ち合わせる時間の基準値を保持している。また、基準値に設定できる値の範囲も適宜、記憶部５０に記憶している。デバイス処理部３４は、ファームウェア処理部６０からの要求に応じて、デバイス１０に処理を要求する。計測部３１は、デバイス処理部３４がデバイス１０に処理を要求する際に、デバイス１０での処理にかかる時間を計測するために、タイマ４０を用いた計測を開始する。また、計測部３１は、処理部６３から、デバイス処理部３４での処理にかかる時間の計測を要求されると、デバイス処理部３４を介してデバイス１０で行われる処理にかかる時間を計測する。このとき、適宜、タイマ４０が使用される。通知部３２は、計測部３１での処理にかかる時間が基準値を超えると、タイムアウトの発生を処理部６３に通知する。
【００２６】
図４は、通信装置２０のハードウェア構成の例を示す図である。通信装置２０は、プロセッサ１０１、Read Only Memory（ＲＯＭ）１０２、Random Access Memory（ＲＡＭ）１０３、ネットワーク接続装置１０４、および、バス１０５を備える。プロセッサ１０１は、計測部３１、通知部３２、更新部３３、デバイス処理部３４、ファームウェア処理部６０、中央処理部２５として動作する。ＲＡＭ１０３は、記憶部５０として動作し、適宜、プロセッサ１０１の処理に用いられるデータや、プロセッサ１０１の処理で得られたデータを記憶する。ＲＯＭ１０２は、プロセッサ１０１の動作に使用されるプログラムを格納することができ、また、プロセッサ１０１が使用するデータ等を格納できる。このため、プロセッサ１０１は、ＲＯＭ１０２に格納されているプログラムを実行することにより、計測部３１、通知部３２、更新部３３、デバイス処理部３４、ファームウェア処理部６０中央処理部２５を実現できる。ネットワーク接続装置１０４は、送受信部２２として動作する。なお、ネットワーク接続装置１０４は、通信装置２０が属するネットワークの数や種類に対応して複数のインタフェース回路を含んでもよいものとする。例えば、通信装置２０が基地局として動作しており、端末との無線通信と、無線制御装置３などとの間の有線通信を行うとする。この場合、ネットワーク接続装置１０４は、端末との間でのパケットの送受信にも使用される。バス１０５は、プロセッサ１０１、ＲＯＭ１０２、ＲＡＭ１０３、ネットワーク接続装置１０４を相互にデータの入出力が可能になるように接続する。なお、通信装置２０中のデバイス１０は、ＲＯＭ１０２、ＲＡＭ１０３、又は、ネットワーク接続装置１０４のいずれかとして動作するデバイス選択された１つ以上のデバイスとすることができる。
【００２７】
＜第１の実施形態＞
図５は、記憶部５０に格納される情報の例を示す図である。記憶部５０は、デバイス処理部３４からアクセス可能なデバイス１０ごとに、処理時間の計測や制御に使用するための情報を保持している。例えば、デバイス処理部３４がCompactFlash（ＣＦ）メモリ、Single-Data-Rate Synchronous Dynamic Random Access Memory（ＳＤＲ  ＳＤＲＡＭ）、Double-Data-Rate SDRAM（ＤＤＲ  ＳＤＡＭ）にアクセスできるとする。この場合、記憶部５０は、図５に示すように、ＣＦ、ＤＤＲ  ＳＤＲＡＭ、ＳＤＲ  ＳＤＲＡＭのそれぞれの処理に使用するための情報を保持している。以下、アクセスされるデバイス１０がＣＦであり、要求された処理はＣＦへの４バイト分のデータの書き込みである場合を例として説明する。
【００２８】
ＣＦへの処理に使用されるデータは、図５に示すように、タイマ保守用のデータと、タイマでの計測に使用するデータ（起動タイマ値）を含む。なお、図５では、ＣＦへの処理に使用されるデータについての詳細を示しているが、ＤＤＲ  ＳＤＲＡＭの処理に使用されるデータや、ＳＤＲ  ＳＤＲＡＭの処理に使用されるデータも同様の種類の情報を含んでいるものとする。
【００２９】
タイマ保守用データには、タイマの動作開始日時、タイマ累積起動時間、タイマ累積計測回数、タイマ補正回数が含まれる。タイマの動作開始日時は、タイマ４０に最後に電源が投入された日付と時刻の情報である。タイマ累積起動時間は、タイマ４０が最後に電源が投入された時刻以降にタイマ４０が起動された時間の累積値である。タイマ累積計測回数は、タイマ４０を用いてデバイス１０へのアクセスを行った回数を示す。また、タイマ補正回数は、タイマ４０での基準値として設定されている時間が変更された回数を示す。図５の例では、タイマ４０は、２０１３年１２月２日の１２：００：００から動作を開始して、３００時間の間、稼動している状態である。タイマ４０は、２０１３年１２月２日の１２：００：００に起動されてから１００１回の測定をしており、これまでにタイマ４０の基準値が２回補正されている。
【００３０】
起動タイマ値には、規定タイマ値、基準値、デバイスアクセスサイズ、処理種別、タイムアウト回数が含まれる。デバイスアクセスサイズは、デバイス１０への処理を行うデータの大きさを示す。処理種別は、デバイス１０に要求する処理の種類である。例えば、デバイス１０に４バイトのデータが書き込まれる場合は、デバイスアクセスサイズは４バイトであり、処理種別は書き込み処理（ライト）である。基準値は、デバイスアクセスサイズに設定されたサイズのデータについて、デバイス処理部３４が処理種別に設定された処理をデバイス１０に要求するときに、デバイス１０の処理時間として待ち合わせる時間の長さである。例えば、基準値が１０μ秒である場合、デバイス処理部３４は、ＣＦに４バイトのデータを書き込むときに、書き込みの要求時刻から、書き込みの終了時刻までの待ち時間を１０μ秒に設定していることになる。タイムアウト回数は、基準値が更新されてからデバイス１０への処理においてタイムアウトが発生した回数を示す。図５に示す例では、基準値が１０μ秒に変更されてからタイムアウトは発生していない。
【００３１】
規定タイマ値の最大値は、デバイスアクセスサイズに設定されたサイズのデータについて、処理種別に設定された処理を処理対象のデバイス１０に要求する場合に、要求された処理にかかる時間の最大値である。同様に、規定タイマ値の最小値は、デバイスアクセスサイズに設定されたサイズのデータに対して、処理種別に設定された処理をデバイス１０に要求した場合に、要求された処理にかかる時間の最小値である。また、規定タイマ値の平均値は、デバイスアクセスサイズに設定されたサイズのデータに対して、処理種別に設定された処理をデバイス１０に要求した場合に、処理にかかる時間の平均値である。このため、基準値として、規定タイマ値の最大値以下であり、かつ、規定タイマ値の最小値以上の値が設定される。図５の例では、ＣＦに４バイトのデータを書き込む処理にかかる時間として、８μ秒〜１４μ秒が許容されているが、その処理にかかる時間の平均値は１１μ秒である。なお、処理にかかる時間が規定タイマ値の最大値を超えると、通知部３２は、デバイス１０に障害が発生していると判定し、障害の発生を、ファームウェア処理部６０に通知する。
【００３２】
図５を参照しながら、記憶部５０に含まれている情報の例を示したが、ファームウェア処理部６０、ミドルウェア処理部７０、アプリケーション処理部８０でも、図５に示す情報と同様の情報を用いて処理が行われるものとする。
【００３３】
図６は、第１の実施形態で行われる処理の例を説明するシーケンス図である。以下の例では、ミドルウェア処理部７０においてファームウェア処理部６０や制御部３０で使用される基準値が決定される場合を例として説明する。以下、デバイス１０がＣＦであり、記憶部５０は図５に示す情報を保持している場合を例とする。
【００３４】
ファームウェア処理部６０中の処理部６３は、処理対象のデバイスに対するアクセスの要求を、計測部３１に出力する（ステップＳ１）。このとき、処理部６３は、計測部３１に書き込み処理を要求した時刻から、デバイス１０での書き込みの終了の通知を受けるまでに許容できる時間の基準値を保持している。ここでは、デバイス１０に４バイトのデータを書き込むときに処理部６３が使用する基準値は１４μ秒であるとする。
【００３５】
計測部３１は、アクセスの要求をデバイス処理部３４に出力すると共に、タイマ４０を起動する（ステップＳ２）。計測部３１は、デバイス処理部３４が書き込み処理を出力した時刻から、デバイス１０での書き込みが終了する時刻までの時間として許容できる時間の長さの基準値を保持している。ここで、デバイス１０に４バイトのデータを書き込むときに計測部３１が使用する基準値は１０μ秒であるとする。デバイス処理部３４は、入力された要求に応じて、デバイス１０に対して処理を要求する（ステップＳ３）。デバイス処理部３４は、デバイス１０に４バイトのデータの書き込みを要求する。デバイス１０での書き込みが終わるとデバイス１０からデバイス処理部３４に書き込み処理の終了が通知される（ステップＳ４）。計測部３１は、書き込み処理の終了がデバイス処理部３４に通知されると、タイマ４０の値を取得し、デバイス１０への書き込み処理にかかった時間とする（ステップＳ５）。
【００３６】
デバイス１０での書き込み処理にかかった時間が基準値を上回っていると、計測部３１はデバイス１０へのアクセスの際にタイムアウトが発生したと判定する。そこで、計測部３１は、記憶部５０に記憶されているタイムアウトの回数を０回から１回に変更する。通知部３２は、記憶部５０においてタイムアウト回数が１回に更新されたことから、デバイス１０への処理にかかる時間が長くなったと判定する（ステップＳ６）。そこで、通知部３２は、変化通知メッセージを生成し、更新部６２に出力する（ステップＳ７）。
【００３７】
図７は、変化通知メッセージの例を示す。図７に示す変化通知メッセージは、デバイス、デバイスアクセスサイズ、機能ブロック番号、基準値、処理時間、通知元を含む。デバイスフィールドは、タイムアウトが発生したデバイス１０を特定する情報が格納される。デバイスアクセスサイズフィールドには、タイムアウトが発生したときに行われた処理での処理対象となったデータの大きさを示す情報が格納される。機能ブロック番号は、タイムアウトの発生を検知した計測部３１が含まれているファンクションブロック２１の番号である。なお、ファンクションブロック２１には、個々のファンクションブロック２１を識別する識別番号（機能ブロック番号）が付されているものとする。また、機能ブロック番号により、処理対象のデバイスと処理の内容の組み合わせが一意に特定されるものとする。図７は、ＣＦへの書き込み処理に使用されたファンクションブロック２１の識別番号が「４２１９」である場合の例を示している。基準値フィールドには、設定されている基準値の値が記録され、処理時間フィールドには、実際の処理にかかった時間が記録される。図７は、ＣＦへの４バイトの情報の書き込みの基準値が１０μ秒であるのに対し、実際の処理時間が１２μ秒である場合の例を示す。通知元フィールドには、変化通知メッセージの生成元を特定する情報が含まれる。図７の例では、通知元フィールドに、通知部３２を特定するための情報が格納される。
【００３８】
更新部６２は、変化通知メッセージを取得すると、デバイス１０へのアクセスの際に、デバイス処理部３４でタイムアウトが発生したことを特定する。更新部６２は、基準値の変更がミドルウェア処理部７０によって行われることを表わす情報を予め保持しているとする。すると、更新部６２は、入力された変化通知メッセージを通知部６１に出力する。通知部６１は、変化通知メッセージをミドルウェア処理部７０中の更新部７２に出力する（ステップＳ８）。
【００３９】
更新部７２は、変化通知メッセージを取得すると、タイムアウトが発生したことを認識する。そこで、更新部７２は、変化通知メッセージの通知元に対して、取得した情報を通知するために、変化確認メッセージを生成する。変化確認メッセージの例を図８に示す。変化確認メッセージは、機能ブロック番号、基準値、処理時間、通知先を含む。変化確認メッセージ中の機能ブロック番号、基準値、処理時間は、変化通知メッセージ中と同じ値が設定される。さらに、変化確認メッセージ中の通知先には、変化通知メッセージの通知元が設定される。図８は、図７に示す変化通知メッセージを取得したときに、更新部７２が通知部３２に出力する変化確認メッセージの例である。更新部７２は、生成した変化確認メッセージを、処理部６３に出力する（ステップＳ９）。処理部６３は、変化確認メッセージの通知先が通知部３２であることから、変化確認メッセージを通知部３２に出力する（ステップＳ１０）。通知部３２は、変化確認メッセージと、通知部３２自身が通知した変化通知メッセージ中の情報を比較し、両者が一致すると、タイムアウトの発生をミドルウェア処理部７０に通知することができたと判定し、ミドルウェア処理部７０からの処理を待つ。
【００４０】
更新部７２は、タイムアウトが発生したことを認識すると、ファームウェア処理部６０や制御部３０において使用される基準値を変更するために、情報の収集を開始する。更新部７２は、基準値の更新の際に使用する情報を収集するために、処理時間要求メッセージを生成する。
【００４１】
図９は、処理時間要求メッセージの例を示す。処理時間要求メッセージは、機能ブロック番号、要求種別、要求元、要求先を含む。機能ブロック番号は、変化通知メッセージを生成した通知部３２が含まれているファンクションブロック２１を識別する番号であり、処理対象のデバイスと処理の内容を一意に特定する。例えば、図９の場合、機能ブロック番号が４２１９であるので、処理対象のデバイス１０がＣＦであり、ＣＦに対する処理は書き込み処理である。要求種別は、処理時間が要求されている処理の対象のデータの長さを特定する情報である。ここでは、ステップＳ８で更新部７２が取得した変化通知メッセージにより、４バイトのデータの書き込みの際の処理時間が変化したことが通知されたので、処理時間要求メッセージの要求種別も４バイトに設定されるものとする。処理時間要求メッセージには、更新部７２が処理時間の計測を要求する任意の数の要求先が含められる。更新部７２はデバイス１０への書き込み処理の介在先に対して処理時間を要求する。このため、更新部７２で生成される処理時間要求メッセージでは、要求先は処理部６３とデバイス処理部３４になる。更新部７２は、図９に示す処理時間要求メッセージを生成すると、生成したメッセージを処理部６３に出力する（ステップＳ１１）。
【００４２】
処理部６３は、処理時間要求メッセージを取得すると、デバイス１０に４バイトのデータを書き込む処理の開始をデバイス処理部３４に要求すると共に、処理時間要求メッセージをデバイス処理部３４に出力する（ステップＳ１２）。なお、処理部６３は、データの書き込みをデバイス処理部３４に要求した時刻を記憶するものとする。
【００４３】
デバイス処理部３４は、処理時間要求メッセージと４バイトのデータのＣＦへの書き込み処理の要求を取得すると、タイマ４０を起動すると共に、デバイス１０への書き込み処理を開始する（ステップＳ１３）。デバイス１０への書き込み処理が終わると、デバイス処理部３４は、タイマ４０の値を取得し、得られた値を処理時間とする。デバイス処理部３４は、処理時間が基準値以下であるかを判定し、得られた時間と基準値との比較結果を通知するための処理時間通知メッセージを生成する（ステップＳ１４）。図１０のｍ１４は、基準値が１０μ秒であるのに対し、処理時間が１２μ秒である場合に生成される処理時間通知メッセージの例を示す。処理時間通知メッセージには、処理時間要求メッセージで計測が要求された処理に対応する機能ブロック番号と、要求種別が含まれる。デバイス処理部３４は、デバイス１０への書き込みにかかった処理時間と、処理時間が基準値を超えているかの判定結果、および、処理時間の通知元がデバイス処理部３４であることを示す情報を処理時間通知メッセージに含める。ステップＳ１４の例では、デバイス１０への書き込みにかかった処理時間が１２μ秒であるのに対し、基準値は１０μ秒であるため、判定結果はＮＧとなる。さらに、処理時間が１２μ秒であることも処理時間通知メッセージに含められる。デバイス処理部３４は、書き込みの終了を処理部６３に通知すると共に、生成した処理時間通知メッセージ（図１０のｍ１４）を、処理部６３に出力する（ステップＳ１５）。
【００４４】
処理部６３は、書き込みの終了が通知された時刻を特定すると、ＣＦに４バイトのデータを書き込む要求をデバイス処理部３４に対して行った時刻から、書き込みの終了が通知された時刻までの間を、処理時間として求める。さらに、処理部６３は、処理時間が基準値以下であるかを判定し、得られた時間と基準値との判定結果を、デバイス処理部３４から取得した処理時間通知メッセージに追加する（ステップＳ１６）。図１０のｍ１６は、処理部６３で使用している基準値が１４μ秒であるのに対し、処理時間が１５μ秒である場合に追加される情報を含む処理時間通知メッセージの例を示す。図１０のｍ１６中で「処理時間１」の情報が処理部６３によって追加される。ステップＳ１６の例では、処理時間の方が基準値より長いため、判定結果はＮＧとなる。さらに、処理時間が１５μ秒であることも処理時間通知メッセージに含められる。処理部６３は、処理時間通知メッセージ（図１０のｍ１６）を、更新部７２に出力する（ステップＳ１７）。
【００４５】
更新部７２は、処理時間通知メッセージによって通知された処理時間を用いて、判定結果がＮＧとなった処理部での処理に使用される新たな基準値を決定する（ステップＳ１８）。
【００４６】
図１１は、処理時間の長さの比較例を示す。デバイス処理部３４で得られる処理時間は、図１１の矢印Ｔａが示す時間であるとする。一方、処理部６３で得られる処理時間は、デバイス処理部３４と処理部６３の間のアクセス時間を含むため、矢印Ｔｂに示すように、デバイス処理部３４で得られる処理時間Ｔａよりも長くなる。さらに、処理部７３での処理時間には、処理部７３と処理部６３の間でのアクセス時間も含まれる。このため、処理部７３での処理時間は、矢印Ｔｃに示すように、処理部６３での処理時間Ｔｂよりも長くなる。更新部７２は、Ｔａ＜Ｔｂ＜Ｔｃの順に処理時間が長くなることを前提として、制御部３０、ファームウェア処理部６０、ミドルウェア処理部７０で使用される基準値を決定する。すなわち、更新部７２は、デバイス処理部３４で使用される基準値を、処理時間Ｔａ以上の値であり、かつ、処理時間Ｔｂ未満の値に設定する。同様に、更新部７２は、処理部６３で使用される基準値を、処理時間Ｔｂ以上で処理時間Ｔｃ未満の値になるように決定する。なお、更新部７２は、処理時間Ｔｃの参考値として、ステップＳ１１での処理時間要求メッセージの送信時刻から、ステップＳ１７の処理時間通知メッセージの受信時刻の間の時間を用いることができるものとする。
【００４７】
図１０のｍ１６に示す処理時間通知メッセージが更新部７２に届くと、更新部７２は、処理時間通知メッセージ中でデバイス処理部３４での処理の判定結果がＮＧとなっていることから、制御部３０での基準値の変更を行うために更新値を決定する。図１０のｍ１６に示す処理時間通知メッセージを用いて、更新部７２は、処理時間Ｔａを１２μ秒、処理時間Ｔｂを１５μ秒であると特定する。すると、更新部７２は、制御部３０で使用される基準値の更新値を１２μ秒以上で１５μ秒未満にする。この例では、制御部３０で使用される基準値の更新値は１４μ秒に決定されたものとする。
【００４８】
次に、更新部７２は、処理時間通知メッセージにおいて、処理部６３での処理の判定結果もＮＧであるため、ファームウェア処理部６０での基準値の変更に使用する更新値も決定する。ここで、ステップＳ１１での処理時間要求メッセージの送信時刻から、ステップＳ１７の処理時間通知メッセージの受信時刻の間の時間が２０μ秒であるとする。すると、更新部７２は、処理時間Ｔｃを２０μ秒とした上で、２０μ秒より短く、処理時間Ｔｂ以上の値を基準値の更新値とする。ここでは、更新部７２は、ファームウェア処理部６０で使用する基準値の更新値を１６μ秒に決定したものとする。
【００４９】
さらに、更新部７２は、ミドルウェア処理部７０で使用されている基準値を、処理時間Ｔｃの値と比較する。ここで、ミドルウェア処理部７０で使用されている基準値が処理時間Ｔｃよりも短いとする。この場合、更新部７２は、ミドルウェア処理部７０で使用されている基準値を変更せずに処理を終了する。
【００５０】
図１２は、基準値通知メッセージの例を示す。基準値通知メッセージは、通知元、機能ブロック番号、要求種別、通知内容を含む。機能ブロック番号は、処理時間が特定されたファンクションブロック２１を識別する番号であり、処理対象のデバイスと処理の内容を一意に特定する。要求種別は基準値の更新対象となる処理での処理データのサイズを示す。このため、更新部６２などは、図１２のメッセージを取得すると、ＣＦに対する４バイトの情報の書き込み処理の際に使用される基準値の更新値が通知されたことを特定できる。通知内容には、通知先、判定結果、通知先が使用している現在の基準値、基準値の更新値が含まれる。なお、図１２に示す基準値通知メッセージが使用される場合、更新部７２は、予め、現在の設定で使用されている基準値を記憶しているものとする。このため、図１２の通知１を用いて、更新部７２は、現在の基準値である１４μ秒を更新値の１６μ秒に変更することを、更新部６２に対して要求できる。一方、更新部３３に対して、更新部７２は、現在の基準値である１０μ秒を更新値の１４μ秒に変更することを、図１２の通知２を用いて要求できる。更新部７２は、基準値通知メッセージを生成すると、生成したメッセージを更新部６２に出力する（ステップＳ１９）。
【００５１】
更新部６２は、基準値通知メッセージ中で、更新部６２を通知先とした通知内容に含まれている更新値を、新たな基準値に設定する（ステップＳ２０）。すなわち、図１２に示す基準値通知メッセージが更新部６２に入力された場合、更新部６２は、基準値を１４μ秒から１６μ秒に変更する。更新部６２は、基準値通知メッセージに更新部３３宛の通知内容が含まれているので、基準値通知メッセージを更新部３３に出力する（ステップＳ２１）。
【００５２】
更新部３３も、更新部６２と同様に、基準値通知メッセージを用いて基準値を更新する（ステップＳ２２）。このため、図１２に示す基準値通知メッセージが更新部３３に入力された場合、更新部３３は、基準値を１０μ秒から１４μ秒に変更する。このとき、更新部３３は、適宜、記憶部５０に含まれている情報を更新する。このため、記憶部５０に記憶されているタイムアウト回数は０回に更新される。
【００５３】
更新部３３は、設定の変更を行ったことを、基準値通知メッセージの通知元に通知する。図１２の基準値通知メッセージが使用された場合、更新部３３が更新部７２に宛てて通知する設定通知メッセージの例を図１３のｍ２３に示す。設定通知メッセージは、機能ブロック番号、要求種別、設定通知を含む。機能ブロック番号と要求種別は、他のメッセージと同様である。設定通知は、通知先、通知元、設定情報、変更前の基準値、基準値の更新値を含む。設定情報は、基準値の設定についての変更の有無を示す。更新部３３は、生成したメッセージを、更新部６２に出力する（ステップＳ２３）。
【００５４】
更新部６２は、更新部３３から設定通知メッセージを取得すると、取得したメッセージに、ステップＳ２０で行った設定の変更の内容を通知する情報を追加する。図１３のｍ２４のうち、設定通知１は、更新部６２が追加した情報の例である。更新部６２は、情報を追加した後のメッセージを更新部７２に出力する（ステップＳ２４）。更新部７２は、通知どおりに設定が行われていることを確認すると、処理を終了する。なお、更新部７２は、設定通知メッセージを用いて、現在の基準値を通知元に関連付けて記憶することができる。
【００５５】
以上、図６を参照しながら第１の実施形態で行われる処理の例を説明したが、処理の手順は、実装に応じて変更されうる。例えば、通信装置２０の処理能力に応じて、変化確認メッセージや設定通知メッセージの送受信を省略するなどの変更が行われることがあるものとする。
【００５６】
図６を参照しながら説明した処理の例では、ミドルウェア処理部７０中の更新部７２がファームウェア処理部６０や制御部３０で使用される基準値を計算したが、基準値の計算は、アプリケーション処理部８０で行われても良い。この場合、更新部８２が更新部７２と同様の処理により、新たな更新値を生成し、通知先に向けて基準値通知メッセージを出力する。
【００５７】
また、図６を参照した例では、一例として、制御部３０とファームウェア処理部６０でタイムアウトが発生している例を挙げたが、タイムアウトの発生は、制御部３０、ファームウェア処理部６０、ミドルウェア処理部７０、アプリケーション処理部８０のうちの任意の１つ以上で発生し得る。ファームウェア処理部６０でタイムアウトが発生すると、通知部６１がミドルウェア処理部７０やアプリケーション処理部８０にタイムアウトの発生を通知する。一方、ミドルウェア処理部７０でタイムアウトが発生すると、通知部７１がアプリケーション処理部８０にタイムアウトの発生を通知する。なお、通知部６１や通知部７１も変化通知メッセージを用いてタイムアウトの発生を通知できるものとする。
【００５８】
さらに、基準値の計算は、通信装置２０で行われなくても良い。例えば、図２に示す交換機２やオペレーションセンタ５中の装置が、通信装置２０中で用いられる基準値を計算して、得られた値を通信装置２０に通知しても良い。異なる装置間で、タイムアウトの発生の通知や新たな基準値の通知などが行われる場合は、装置間で送受信されるパケット中のペイロードに、変化通知メッセージや基準値通知メッセージなどのメッセージが含まれる。なお、パケットのヘッダは、ネットワークで用いられるプロトコルや各装置に割り当てられたアドレスに応じて、適宜、設定されるものとする。例えば、通信装置２０が基地局装置である場合、交換機２などの装置が基地局で発生したタイムアウトに応じて、基地局で使用するタイマの基準値を変更できる。このため、第１の実施形態にかかる方法を用いることにより、特定の基地局での輻輳の発生などの環境の変化に対応して、動的に基準値を変更することができる。
【００５９】
図１４は、環境の変化に応じて基準値を変更する方法の例を説明する図である。図１４の例では、通信装置２０ａ、通信装置２０ｂはいずれも基地局である。なお、図１４では、図を見やすくするため、制御部３０ａ、ファームウェア処理部６０ａ、ミドルウェア処理部７０ａ、アプリケーション処理部８０ａを示す代わりに、ファンクションブロック２１ａと中央処理部２５ａを示している。ファンクションブロック２１ａには、制御部３０ａとファームウェア処理部６０ａが含まれており、中央処理部２５ａには、ミドルウェア処理部７０ａとアプリケーション処理部８０ａが含まれている。なお、図１４中での通信装置２０ｂの記載についても、通信装置２０ａと同様である。通信装置２０ａと通信装置２０ｂは、無線制御装置３に接続され、無線制御装置３は、交換機２に接続されているとする。また、以下の説明では、値ｔ１〜ｔ５について、ｔ１＜ｔ２＜ｔ３＜ｔ４＜ｔ５の関係が成り立っているものとする。
【００６０】
時刻Ｔｄにおいて、通信装置２０ａと通信装置２０ｂのいずれでも、同じサイズのデータに対する同じ処理については、同じ基準値が使用されているとする。図１４の例では、通信装置２０ａと通信装置２０ｂのいずれでも、アプリケーション処理部８０で使用される基準値はｔ１秒であるとする。また、無線制御装置３において、通信装置２０ａおよび通信装置２０ｂとの間の処理を待ち合わせるときに使用する基準値はｔ３秒であり、交換機２において、無線制御装置３との間の処理を待ち合わせるときに使用する基準値はｔ４秒であるとする。
【００６１】
その後、時刻Ｔｅでは、通信装置２０ａが形成するセルを用いて通信する端末数が増加したことにより、通信装置２０ａ中のアプリケーション処理部８０ａではタイムアウトが発生したとする。一方、通信装置２０ｂへのアクセスに対しては変化がなく、通信装置２０ｂではタイムアウトが発生していないものとする。
【００６２】
すると、交換機２は、通信装置２０ａに対して、タイムアウトが発生した処理についての処理時間を問合わせる。通信装置２０ａは、交換機２に対して、処理時間がｔ２秒であると通知したとする。交換機２は、通信装置２０ａからの通知に応じて、通信装置２０ａのアプリケーション処理部８０ａでの基準値をｔ２秒に変更することを決定して、通信装置２０ａに通知したとする。すると、アプリケーション処理部８０ａでは、基準値をｔ２秒に設定する。なお、通信装置２０ａでの基準値がｔ２秒であっても、無線制御装置３でのタイムアウトは発生しないため、交換機２は、無線制御装置３での基準値を変更していないものとする。
【００６３】
時刻Ｔｆにおいて、さらに、通信装置２０ａを介した通信が増えたため、アプリケーション処理部８０ａで使用する基準値がｔ２秒でもタイムアウトが発生したとする。さらに、通信装置２０ａは、タイムアウトが発生した処理を行うためには、ｔ３秒かかることも、合わせて交換機２に通知したとする。すると、交換機２は、通信装置２０ａ中のアプリケーション処理部８０ａで使用する基準値をｔ２秒からｔ３秒に変更すると共に、無線制御装置３で使用する基準値についても、ｔ３秒からｔ４秒に変更する。さらに、交換機２は、無線制御装置３との間の処理の待ち合わせに使用する基準値を、無線制御装置３での基準値の変更に伴って、ｔ４秒からｔ５秒に変更する。
【００６４】
なお、図１４を参照しながら、通信装置２０が基地局である場合を例として説明したが、通信装置２０は、上位側の装置から基準値の変更値を取得可能な任意の装置にすることができる。例えば、Long Term Evolution（ＬＴＥ）に適応しているシステムでは、通信装置２０は、ｅＮｏｄｅＢであっても良い。この場合、ｅＮｏｄｅＢとして動作している通信装置２０に対して、Serving-Gateway（Ｓ−ＧＷ）やPacket Data Network-Gateway（Ｐ−ＧＷ）が基準値の更新値を通知できる。また、通信装置２０がＳ−ＧＷやＰ−ＧＷである場合、通信装置２０に基準値を通知する上位装置は、Policy and Charging Rules Function（ＰＣＲＦ）などである。なお、図１４の例では、通信装置２０中のアプリケーション処理部８０でタイムアウトが発生した場合を例としたが、通信装置２０においてアプリケーション処理部８０以外でタイムアウトが発生しても、同様に処理が行われる。なお、この明細書中では、通信装置２０での処理を管理する装置や、ユーザの端末と通信装置２０の間の経路よりもユーザの端末に至るまでの経路が長い装置のことを「上位装置」と記載するものとする。また、ある装置から更新値を取得する装置を、その装置に対する「下位装置」と表現している。
【００６５】
このように、第１の実施形態にかかるシステムでは、特定の装置へのアクセスの集中に伴って、処理が集中している装置を含む通信経路では、基準値を大きくして、タイムアウトが発生しにくくなるように、上位側の装置が調整を行うことができる。このため、基地局などの装置では、その装置の環境に応じて、適切な値にタイマの基準値を調整することができる。
【００６６】
＜第２の実施形態＞
第２の実施形態では、複数回の処理を行ったときの処理時間の平均値が基準値を超えるまで基準値の変更を待つ場合の実施形態について説明する。この場合、制御部３０は、タイムアウトを検出しても、タイムアウトの回数が所定の回数に達しないと、変化通知メッセージを生成しない。
【００６７】
図１５に、第２の実施形態にかかる通信装置が保持する情報の例を示す。第２の実施形態においても、タイマ保守用のデータは、図５を参照しながら説明した情報と同様である。なお、図１５の例では、タイマ保守用のデータに様々なデバイスアクセスサイズに対応した処理時間が含まれているが、タイマ保守用データに含まれる処理時間は１つであっても良い。
【００６８】
複数回のタイムアウト発生まで基準値の変更を待つ場合、起動タイマ値には、平均タイマ値、タイマ起動回数、実測最大値、実測最小値が含まれる。さらに、図５と同様に、規定タイマ値、基準値、デバイスアクセスサイズ、処理種別、タイムアウト回数も、起動タイマ値に含まれる。平均タイマ値は、同じデバイスアクセスサイズのデータについて同じ処理を行ったときにかかる処理時間の平均値である。タイマ起動回数は、処理のためにタイマが起動された回数を表わす。実測最大値は、最後に基準値が変更されてから現在までの間に、デバイスアクセスサイズや処理種別で特定される処理を行ったときにかかった時間の最大値を表わす。一方、実測最小値は、最後に基準値が変更されてから現在までの間に、デバイスアクセスサイズや処理種別で特定される処理を行ったときにかかった時間の最小値を表わす。
【００６９】
第２の実施形態では、デバイス処理部３４は、基準値と平均タイマ値を比較し、平均タイマ値が基準値を上回ると、変化通知メッセージを生成する。変化通知メッセージが生成された後の処理は、第１の実施形態と同様である。なお、ファームウェア処理部６０、ミドルウェア処理部７０、アプリケーション処理部８０においても、図１５に示す情報を保持することにより、基準値と平均タイマ値を比較することもできる。この場合、通知部６１、通知部７１、または、通知部８１は、基準値と平均タイマ値の比較結果により、変化通知メッセージを生成するかを決定する。
【００７０】
図１５には、グルーピング情報が含まれているが、グルーピング情報はオプションである。デバイス処理部３４が１度にデバイス１０に対して処理できるデータサイズよりもデバイスアクセスサイズが大きい場合、デバイス処理部３４は、処理対象のデータを、複数のグループに分割して処理を行う。この場合、デバイス処理部３４は、個々のグループについて、グルーピング情報として、デバイスアクセスサイズ、処理時間、処理種別などの情報を記憶部５０に記憶する。デバイス処理部３４は、他のデバイスアクセスサイズの処理の際に生成されたグルーピング情報のうちで、デバイスアクセスサイズと処理種別が同じグループについて得られた処理時間を、平均タイマ値の算出に用いても良い。例えば、起動タイマ値２に含まれているデバイスアクセスサイズが１０バイトであり、起動タイマ値２の生成では、１０バイトのデータから４バイトのグループＡ、グループＢと、２バイトのグループＣが生成されたとする。この場合、起動タイマ値２において、デバイスアクセスサイズが１０バイトのデータの他に、グループＡ、Ｂを用いたときの４バイトの処理時間が得られている。そこで、デバイス処理部３４は、デバイスアクセスサイズが４バイトの起動タイマ値１の平均タイマ値の算出の際に、グループＡ、Ｂを用いたときの処理時間も用いることができる。
【００７１】
第２の実施形態では、タイムアウトが複数回発生してから基準値を変更することになるので、誤動作などにより１回タイムアウトが突発的に発生しても、基準値は変更されない。このため、第２の実施形態では、タイムアウトの通知の信頼性が第１の実施形態に比べて高くなっているといえる。
【００７２】
＜第３の実施形態＞
第３の実施形態では、上位の装置から通知された値を、通信装置２０自身が、設定可能な値であるかを確認する場合について説明する。通信装置２０は、基準値として設定可能な値は基準値に設定するが、基準値として設定できない値が通知された場合は、通知された基準値を設定せずに、上位装置に修正値を求める。なお、上位装置は、修正値を通知する際には、通知した値を強制的に通信装置２０に設定させるためのフラグをメッセージ中に含めるものとする。以下の説明では、通知した値を強制的に通信装置２０に設定させるためのフラグを「強制設定フラグ」と記載する。
【００７３】
図１６は、通信装置での確認処理の例を説明するフローチャートである。更新部３３は、基準値の変更が通知されるまで待機する（ステップＳ３１でＮｏ）。基準値の変更が通知されると、更新部３３は、通知されたメッセージに強制設定フラグが含まれているかを判定する（ステップＳ３１でＹｅｓ、ステップＳ３２）。強制設定フラグが含まれていない場合、更新部３３は、通知された基準値が設定可能な値であるかを判定する（ステップＳ３２でＮｏ、ステップＳ３３）。このとき、更新部３３は、通知された基準値が、規定タイマ値の最大値以下であり、かつ、規定タイマ値の最小値以上であるかを判定する。通知された基準値が、規定タイマ値の最大値以下であり、かつ、規定タイマ値の最小値以上である場合、更新部３３は、通知された値を新たな基準値に設定して処理を終了する（ステップＳ３３でＹｅｓ、ステップＳ３４）。一方、通知された基準値が、規定タイマ値の最小値から規定タイマ値の最大値までの範囲に含まれない場合、更新部３３は、更新値の通知元に、エラーを通知する（ステップＳ３３でＮｏ、ステップＳ３５）。その後、ステップＳ３１以降の処理が繰り返される。なお、ステップＳ３２で入力されたメッセージに強制設定フラグが含まれていると判定した場合、更新部３３は、通知された値の妥当性を判定せずに、通知された値を基準値に設定する（ステップＳ３２でＹｅｓ、ステップＳ３４）。
【００７４】
なお、図１６を参照しながら更新部３３の処理について説明したが、処理部６３で使用される更新値が通知された場合、更新部６２は、図１６と同様の処理を行うものとする。また、更新部７２についても、処理部７３で使用する基準値の更新値が通知されると図１６と同様の処理を行うことができる。
【００７５】
図１７は、タイマ値の通知方法の例を説明するシーケンス図である。図１７では、更新部７２からタイマ値の更新が通知された後、デバイス処理部３４で更新値についてのエラーが検出されたものとする。更新部７２は、制御部３０について通知した更新値が設定できない値であると判定された場合、修正値を決定する。更新部７２は、修正値を通知するために、システム情報通知メッセージを生成し、更新部６２に出力する（ステップＳ４１）。システム情報通知メッセージの情報要素は、基準値通知メッセージ（図１２）と同じ情報に加え、強制設定フラグを含むものとする。更新部６２は、処理部６３で使用する基準値の更新値が含まれていない場合、システム情報通知メッセージを更新部３３に出力する（ステップＳ４２）。更新部３３は、システム情報通知メッセージを取得すると、システム情報通知メッセージに含まれている更新値を基準値に設定する（ステップＳ４３）。その後、更新部３３は、システム情報確認メッセージを更新部７２に向けて出力する（ステップＳ４４）。システム情報確認メッセージの情報要素は、設定通知メッセージ（図１３）と同様である。更新部６２は、更新部３３から入力されたシステム情報確認メッセージを更新部７２に出力する（ステップＳ４５）。
【００７６】
同様に、通信装置２０などの下位装置において、上位装置から通知された更新値が不適切である場合は、異なる更新値を上位装置に要求することができる。このため、誤った設定が下位の装置で行われることによる誤動作を防止することができる。さらに、下位装置での誤動作が原因でエラーが発生しているため、システム全体の設定を初期値に戻したいときなどは、システム情報通知メッセージを使用することにより、強制的に基準値を特定の値に設定することができる。
【００７７】
＜第４の実施形態＞
第４の実施形態では、第３の実施形態と同様に、通知元から通知された更新値が不適切である場合、通知先では、通知元から通知された値を設定しない。しかし、第４の実施形態では、通知先が通知元にエラーを通知せず、通知先において、設定可能な値を新たな基準値に設定する。
【００７８】
図１８は、タイマ値の通知方法の例を説明するシーケンス図である。図１８は、更新部３３が更新部７２から通知された更新値が不適切であると判定した場合の処理例を示す。更新部３３は、更新部７２から通知された更新値が不適切であることをデバイス処理部３４に通知する。すると、デバイス処理部３４は、計測部３１にタイマ４０を起動させる（ステップＳ５１）。さらに、デバイス処理部３４は、タイムアウトが発生した処理を、再度、デバイス１０に対して要求することにより、計測部３１と共に、処理にかかる処理時間を求める（ステップＳ５２）。
【００７９】
更新部３３は、デバイス処理部３４と計測部３１の処理により得られた処理時間以上の値を、新たな基準値に設定する（ステップＳ５３）。例えば、デバイス処理部３４は、デバイス処理部３４と計測部３１の処理により得られた処理時間と、デバイス１０での規定タイマ値の最大値との中間の値を、新たな基準値に設定することができる。
【００８０】
更新部３３は、設定通知メッセージを更新部６２に通知することにより、基準値の変更を通知する（ステップＳ５４）。更新部６２は取得した設定通知メッセージを更新部７２に出力することにより、更新部３３での設定の変更を更新部７２に通知する（ステップＳ５５）。更新部７２は、設定通知メッセージを取得すると、設定通知メッセージの内容を確認したことを示す応答メッセージを更新部６２に出力する（ステップＳ５６）。以下、設定通知メッセージの内容を確認したことを示す応答メッセージを「設定確認メッセージ」と記載する。更新部６２は、取得した設定確認メッセージを更新部３３に出力することにより、更新部７２からの応答を更新部３３に通知する（ステップＳ５７）。
【００８１】
＜その他＞
なお、実施形態は上記に限られるものではなく、様々に変形可能である。以下にその例をいくつか述べる。
【００８２】
以上の例で説明した各メッセージの情報要素は、実装に応じて変更される場合がある。例えば、変化通知メッセージ（図７）は、変化通知メッセージの通知元と、タイムアウトの発生を表わす値を含み、処理時間を含まないように変形されても良い。
【００８３】
第１の実施形態と第２の実施形態は、第３の実施形態または第４の実施形態と組み合わせて実現されても良い。
【００８４】
さらに、制御部３０などで使用する基準値の初期値も、更新部７２から通知されても良い。この場合に行われる処理の例を表わすシーケンス図を、図１９に示す。ファームウェア処理部６０が起動して、デバイス１０や制御部３０の起動を確認すると、更新部６２は、更新部７２に立ち上がり通知を出力する（ステップＳ６１）。立ち上がり通知の情報要素は、立ち上がり通知であることを特定するための識別子と、通知元が更新部６２であることを示す情報の組み合わせである。更新部７２は、立ち上がり通知に応答して、立ち上がり確認を更新部６２に出力する（ステップＳ６２）。立ち上がり確認の情報要素は、立ち上がり確認であることを特定するための識別子と、通知元が更新部７２であることを示す情報の組み合わせである。
【００８５】
立ち上がり確認を更新部７２から取得すると、更新部６２は、システム情報要求を更新部７２に出力する（ステップＳ６３）。システム情報要求の情報要素は、システム情報要求を特定するための識別子と、通知元が更新部６２であることを示す情報の組み合わせである。更新部７２は、システム情報要求に対する応答として、システム情報通知メッセージを更新部６２に出力する（ステップＳ６４）。ここで、システム情報通知メッセージに含まれる情報要素は、第３の実施形態で説明したとおりである。更新部６２は、システム情報通知メッセージにおいて更新部６２に対応付けられた基準値を設定する。さらに、更新部６２は、更新部３３にシステム情報通知メッセージを出力する（ステップＳ６５）。その後、第３の実施形態と同様に、システム情報通知メッセージに含まれている情報が強制的に、基準値として設定される（ステップＳ６６）。更新部３３は、システム情報確認メッセージを更新部７２に向けて出力する（ステップＳ６７）。
【００８６】
図１９を用いて述べたように、基準値の初期設定も更新部７２から通知される場合、通信装置２０の初期化の際に基準値を設定し直すことができる。このため、デバイス１０の交換などが行われた場合に、適切な基準値を通信装置２０への電源の投入と共に通知することができる。なお、図１９を参照しながら、ミドルウェア処理部７０から初期値が制御部３０などに通知される場合を例として説明したが、初期値は、アプリケーション処理部８０から通知されても良い。また、通信装置２０を管理する無線制御装置３や交換機２などの他の装置から通信装置２０に初期値が通知されても良いものとする。
【符号の説明】
【００８７】
２  交換機
３  無線制御装置
５  オペレーションセンタ
１０  デバイス
２０  通信装置
２１  ファンクションブロック
２２  送受信部
２５  中央処理部
３０  制御部
３１  計測部
３２、６１、７１、８１  通知部
３３、６２、７２、８２  更新部
３４  デバイス処理部
４０  タイマ
５０  記憶部
６０  ファームウェア処理部
６３、７３、８３  処理部
８０  アプリケーション処理部
１０１  プロセッサ
１０２  ＲＯＭ
１０３  ＲＡＭ
１０４  ネットワーク接続装置
１０５  バス
【図１】
2015177373.tif 000003
【図２】
2015177373.tif 000004
【図３】
2015177373.tif 000005
【図４】
2015177373.tif 000006
【図５】
2015177373.tif 000007
【図６】
2015177373.tif 000008
【図７】
2015177373.tif 000009
【図８】
2015177373.tif 000010
【図９】
2015177373.tif 000011
【図１０】
2015177373.tif 000012
【図１１】
2015177373.tif 000013
【図１２】
2015177373.tif 000014
【図１３】
2015177373.tif 000015
【図１４】
2015177373.tif 000016
【図１５】
2015177373.tif 000017
【図１６】
2015177373.tif 000018
【図１７】
2015177373.tif 000019
【図１８】
2015177373.tif 000020
【図１９】
2015177373.tif 000021