(57)【要約】【課題】通信装置内で冗長化されているスイッチファブリックなどの複数台のユニットの一部を省電力化の目的で休止状態にしているときに、休止状態のユニットで、送動作を行なったときに初めて検出される故障であるサイレント故障が発生していても検出されない。このため、トラフィック負荷の増加、あるいは、稼動中のユニットの故障により、今まで休止していたユニットを稼動させたときに初めて障害が検出され、稼動させる必要があるユニット数が確保できなくなる危険性があった。【解決手段】休止状態継続時間に閾値を設け、各ユニットの休止状態継続時間が閾値を超えたら稼動状態にし、今まで稼動状態だったユニットを休止状態にする。【選択図】図５
2014064188.tif 000002
【特許請求の範囲】
【請求項１】
通信装置であって、
ネットワークインタフェース部を介してパケットの送受信を行なう複数のパケット処理部と、
前記パケット処理部間でのパケット転送を行なう複数のスイッチと、
前記パケット処理部及び前記スイッチに接続され、稼働中のスイッチの稼働継続時間と、休止中のスイッチの休止継続時間とを管理し、前記休止継続時間が閾値を超えたとき、前記休止中のスイッチの状態を稼動状態に変更させ、かつ前記稼動中のスイッチの状態を休止状態に変更させる制御部と、を有することを特徴とする通信装置。
【請求項２】
請求項１に記載の通信装置であって、
前記制御部は、前記稼動中のスイッチに故障を検出したとき、前記休止中のスイッチのうち、前記休止継続時間が最も長いスイッチの状態を稼動状態に変更させることを特徴とする通信装置。
【請求項３】
請求項１または請求項２に記載の通信装置であって、
前記制御部は、前記稼動中のスイッチの状態を停止状態に変更させたとき、前記休止中のスイッチのうち、前記休止継続時間が最も長いスイッチの状態を稼動状態に変更させることを特徴とする通信装置。
【請求項４】
請求項１ないし請求項３のいずれか一つに記載の通信装置であって、
前記制御部は、前記稼動継続時間にかかる第２の閾値を保持し、状態を稼動状態に変更したスイッチについて、少なくとも前記第２の閾値の期間、稼動状態を維持することを特徴とする通信装置。
【請求項５】
パケットの送受信を行なう複数のパケット処理部と、前記パケット処理部間の転送を行なう複数のスイッチと、前記パケット処理部と前記スイッチとを制御する制御部と、を含んで構成され、
前記制御部は、稼働中のスイッチの稼働継続時間と、休止中のスイッチの休止継続時間とを管理し、
前記休止継続時間が閾値を超えたとき、前記休止中のスイッチの状態を稼動状態に変更させ、かつ前記稼動中のスイッチの状態を休止状態に変更させ、
トラフィック量または時間帯に応じて、前記スイッチの数を増減するよう制御し、
前記スイッチの数を増加させるとき、前記休止継続時間が最も長いスイッチの状態を稼動状態に変更させ、
前記スイッチの数を減少させるとき、前記稼動継続時間が最も長いスイッチの状態を休止状態に変更させることを特徴とする通信装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信装置に係り、特にサイレント故障の発生を早期に検出する通信装置に関する。
【背景技術】
【０００２】
従来、省電力の目的で、稼動させるユニットの数をトラフィック負荷に応じて変化させる技術と、予め負荷の増減が予測できる場合には稼動させるユニットの数を予めスケジューリングしておく技術が、存在した（特許文献１、２、３）。これらの技術では、稼動させるユニットの数を増減することは考えられていたが、休止状態のユニットのサイレント故障の可能性に関しては何の考慮もされていなかった。
【０００３】
休止状態のユニットのサイレント故障を検出する技術としては、休止状態のユニットを実網のトラフィックを流す前にテスト用のトラフィックを流して疎通確認することにより、サイレント故障を検出する技術が存在した（特許文献４）。しかし、この技術では、休止中のユニットを稼動させる前にサイレント故障を検出することについては考慮されていたが、休止状態のユニットがサイレント故障になっている確率を下げる、という観点では何の考慮もされていなかった。
【０００４】
二重化された通信装置で、正常動作を確認するためにスケジューリングにより状態を切り替える技術として、定期的に系切り替えを行なう技術が存在した（特許文献５）。しかし、この技術では、サイレント故障になっている可能性の評価指標として休止状態継続時間を用いることに関しては何の考慮もされていなかった。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００７−２２８４９０号公報
【特許文献２】特開２００７−２２８４９１号公報
【特許文献３】特開２０１１−１７２２６３号公報
【特許文献４】特開２００７−２４３５８１号公報
【特許文献５】特開平１１−２５２２１０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
従来、省電力の目的で稼動させるユニットの数をトラフィック負荷に応じて、または、稼動させるユニットの数を予めスケジューリングすることにより増減していた。しかし、休止状態のユニットで、動作を行なったときに初めて検出される故障であるサイレント故障が発生していても検出することはできなかった。この場合、トラフィック負荷の増加、または、稼動中のユニットの故障により、今まで休止していたユニットを稼動させたときに初めて故障が検出され、稼動させる必要があるユニット数が確保できなくなる危険性があった。
【課題を解決するための手段】
【０００７】
上述した課題は、パケットの送受信を行なう複数のパケット処理部と、パケット処理部間の転送を行なう複数のスイッチと、パケット処理部とスイッチとを制御する制御部と、を含んで構成され、制御部は、稼働中のスイッチの稼働継続時間と、休止中のスイッチの休止継続時間とを管理し、休止継続時間が閾値を超えたとき、休止中のスイッチの状態を稼動状態に変更させ、かつ稼動中のスイッチの状態を休止状態に変更させる通信装置により、達成できる。
【０００８】
また、パケットの送受信を行なう複数のパケット処理部と、パケット処理部間の転送を行なう複数のスイッチと、パケット処理部とスイッチとを制御する制御部と、を含んで構成され、制御部は、稼働中のスイッチの稼働継続時間と、休止中のスイッチの休止継続時間とを管理し、休止継続時間が閾値を超えたとき、休止中のスイッチの状態を稼動状態に変更させ、かつ稼動中のスイッチの状態を休止状態に変更させ、トラフィック量または時間帯に応じて、スイッチの数を増減するよう制御し、スイッチの数を増加させるとき、休止継続時間が最も長いスイッチの状態を稼動状態に変更させ、スイッチの数を減少させるとき、稼動継続時間が最も長いスイッチの状態を休止状態に変更させる通信装置により、達成できる。
【発明の効果】
【０００９】
本発明によれば、中継が必要なトラフィック量を中継するのに十分なユニット数のみを稼動状態にし、残りは休止状態にしておくことにより、通信装置の消費電力を低減することができる。
【図面の簡単な説明】
【００１０】
【図１】通信装置のブロック図である。
【図２】サイレント故障により必要な稼動ユニット数が確保できなくなる様子を示す図である（稼動中のユニットが故障した場合）。
【図３】ユニット状態管理デーモンの管理情報を説明する図である。
【図４】ユニット状態管理デーモンの各状態間の状態遷移図である。
【図５】ユニットの休止状態継続時間が閾値を超えたときの各ユニットの状態遷移を説明する図である。
【図６】稼動中のユニットが故障したときの各ユニットの状態遷移を説明する図である。
【図７】稼動中のユニットをコマンドで停止させたときの各ユニットの状態遷移を説明する図である。
【図８】停止中のユニットをコマンドで起動させたときの各ユニットの状態遷移を説明する図である。
【図９】通信装置起動時の各ユニットの状態遷移を説明する図である。
【図１０】通信装置中継トラフィックの１日の変化と必要なユニット数との関係を説明する図である。
【図１１】稼動させるべきユニット数が増減したときの各ユニットの状態遷移を説明する図である。
【図１２】稼動状態への遷移を禁止する期間に、休止状態継続時間が閾値を超えたときの各ユニットの状態遷移を説明する図である。
【図１３】ユニット間スケジューリングデーモンの動作を説明するフローチャートである。
【図１４】ステップ８２の詳細を説明するフローチャートである。
【図１５】ステップ８２２の詳細を説明するフローチャートである。
【図１６】ステップ８２４の詳細を説明するフローチャートである。
【図１７】ステップ８２４４の詳細を説明するフローチャートである。
【発明を実施するための形態】
【００１１】
以下、本発明の実施の形態について、実施例を用い図面を参照しながら詳細に説明する。なお、実質同一部位には同じ参照番号を振り、説明は繰り返さない。
【００１２】
図１を参照して、通信装置の構成を説明する。図１において、通信装置１は、管理ユニット（ＢＣＵ：Basic Control Unit）２と、パケット処理ユニット（ＰＰＵ：Packet Processing Unit）３０と、クロスバースイッチユニット（ＣＳＷ：Crossbar SWitch unit）５０とから、構成されている。パケット処理ユニット３０は、ネットワークインタフェースユニット（ＮＩＦ：Network InterFace unit）４０を収容している。
【００１３】
管理ユニット２は、通信装置１内の各ユニットの管理を行なう。パケット処理ユニット３０は、パケットの宛先検索および転送処理を行なう。ネットワークインタフェースユニット４０は、ネットワークインタフェースを収容し、ネットワークインタフェースを通じてパケットの送受信を行なう。クロスバースイッチユニット５０は、各パケット処理ユニット３０間のパケットの転送を行なう。
【００１４】
通信装置１は、４つのクロスバースイッチユニット５０が並列動作している。通信装置１は、稼動状態のクロスバースイッチユニット５０の数を増やす程、パケット処理ユニット３０間のパケット転送性能を上げることができる。
【００１５】
パケット処理ユニット３０は、ネットワークインタフェースユニット４０から受信したパケットの送信先の検索を行なう。パケット処理ユニット３０は、検索結果である送信先のパケット処理ユニットを指定する情報を付けて、クロスバースイッチユニット５０にパケットを転送する。クロスバースイッチユニット５０にパケットを転送する際、パケット処理ユニット３０は、稼動状態にある複数のクロスバースイッチユニット５０にパケットを負荷分散して転送する。負荷分散の方法として、（１）パケット単位に各クロスバースイッチユニット５０に順番に転送する方法、（２）パケットをセルに分割してセル単位で各クロスバースイッチユニット５０に順番に転送する方法などがある。
【００１６】
パケット処理ユニット３０は、クロスバースイッチユニット５０にパケットを転送する際に、送信するネットワークインタフェースユニット４０を指定する情報およびネットワークインタフェースを指定する情報も付けることもできる。なお、送信するネットワークインタフェースユニット４０を指定する情報およびネットワークインタフェースを指定する情報は、クリスバースイッチユニットにパケットを転送する際には付けず、送信先のパケット処理ユニット３０がネットワークインタフェースユニット４０に転送する前に再度検索を行なうことにより得ることもできる。
【００１７】
クロスバースイッチユニット５０は、各パケット処理ユニット３０から受信したパケットを送信先のパケット処理ユニット３０に転送する。
【００１８】
クロスバースイッチユニット５０からパケットを受信したパケット処理ユニット３０は、送信するネットワークインタフェースを収容するネットワークインタフェースユニット４０にパケットを転送する。転送を受けたネットワークインタフェースユニット４０は、パケット処理ユニット３０から指定された送信先のネットワークインタフェースからパケットを送信する。
【００１９】
管理ユニット２は、ユニット間スケジューリングデーモン２０を含んでいる。各クロスバースイッチユニット５０は、ユニット状態管理デーモン５５を含んでいる。ユニット状態管理デーモン５５は、クロスバースイッチユニット５０の状態と必要に応じて継続時間をユニット間スケジューリングデーモン２０に報告する。ユニット間スケジューリングデーモン２０は、クロスバースイッチユニット５０スケジューリングを実行する。ユニット間スケジューリングデーモン２０は、状態ユニット状態管理デーモン５５にクロスバースイッチユニット５０の状態遷移を指示する。ユニット間スケジューリングデーモン２０は、各ユニット状態管理デーモン５５から各ユニットの状態と現在の状態の継続時間の情報を受け取る。ユニット間スケジューリングデーモン２０は、各ユニット状態管理デーモン５５に状態の遷移を指示する。ユニット間スケジューリングデーモン２０は、各クロスバースイッチユニット５０の状態情報を保持し、どのクロスバースイッチユニット５０が稼動中か管理する。
【００２０】
なお、クロスバースイッチユニット５０を区別するとき、クロスバースイッチユニット５０−ｉ（ｉ＝０〜３）と表記する。また、クロスバースイッチユニット５０−ｉをＣＳＷｉと略記する。さらに、実施例に置いて、クロスバースイッチユニットを単にユニットと記載する場合がある。
【００２１】
図２を参照して、通信装置の課題を説明する。通信装置１の複数のクロスバースイッチユニット５０は、並列動作している。そのため、全部のユニット５０を稼動させるのではなく一部のユニットを休止状態にすることができる。一部休止することにより、通信装置１の転送性能は、低下する。しかし、通信装置１の消費電力を低減することができる。
【００２２】
図２において、４台のクロスバースイッチユニット５０のうち３台だけを稼動させた状態でも全パケット処理ユニット３０間のパケット転送に必要な転送性能が確保できる場合を考える。この場合としては、（１）トラフィック量が少なく４台全部稼動させなくても全トラフィック量を中継できる場合、（２）元々３台のユニットでネックにならないだけの中継性能を確保できるように設計し、１台のユニットが故障しても性能ネックにならないように設計している場合が考えられる。この場合、３台のユニットだけを稼動させ、残りの１台は休止状態とすると、４台共稼動状態にしておくよりも消費電力を低減することが可能である（図２ａ）。しかし、この状態で長期間が経過すると、残りの１台のクロスバースイッチユニット５０はパケットの転送を行なっていないので、パケットの転送を行なったときに初めて検出される故障であるサイレント故障が発生していても検出されないまま放置される（図２ｂ）。この故障は偶発的に発生するものと考えられるので、休止状態が継続している時間に比例し、サイレント故障に陥っている確率は上昇する。
【００２３】
休止中のクロスバースイッチユニットでサイレント故障が発生した状態で放置された場合、稼動中のユニットのいずれかが故障した場合（図２ｃ）に休止中のユニットを稼動状態にすることで必要な転送性能を得るために必要なユニット数を確保することを期待していたところが、休止中のクロスバースイッチユニット５０−３を稼動状態にした後に障害を検出し、必要なユニット数が確保できなくなる（図２ｄ）、という問題がある。
【００２４】
また、図２とは異なるが、稼動中のユニットが故障とは関係なく通信装置で中継する必要があるトラフィック量が増加し４台のクロスバースイッチユニット５０を全て稼動させないと必要なトラフィック量を中継できなくなった場合、今まで休止状態だったクロスバースイッチユニット５０−３を稼動状態にするが、その際に障害を検出し、必要なユニット数が確保できなくなる、という問題がある。
【００２５】
これらの問題は、休止中のクロスバースイッチユニット５０でサイレント故障が発生した場合に、稼動状態にする必要が生じるより前に発見し交換していれば防げた問題である。
【００２６】
本実施例は、休止中のクロスバースイッチユニット５０でサイレント故障が発生した状態で長期間放置されずに一定の期間後に検出されるようにするため、休止状態継続時間を指標とし、休止状態継続時間に上限を設け、休止状態継続時間が上限を超える前に稼動状態にし、今まで稼動状態だった別のクロスバースイッチユニット５０を休止状態にするものである。
【００２７】
別の見方をすると、休止中のクロスバースイッチユニット５０がサイレント故障に陥る事象はランダムに発生すると想定できるので、休止中のクロスバースイッチユニット５０がサイレント故障に陥っている確率は、休止状態継続時間に比例して大きくなる。休止状態継続時間が閾値を超えたら稼動状態にすることで、休止中のクロスバースイッチユニット５０がサイレント故障に陥っている確率の上限を抑えることができる。
【００２８】
サイレント故障状態が長期間放置されないようにするのが本実施例の目的であるため、休止状態継続時間の上限を厳密に守る必要は無く、実装のし易さの観点から休止状態継続時間に上限を設ける代わりに閾値を設け、休止状態継続時間が閾値を超えたら稼動状態にし、今まで稼動状態だった別のクロスバースイッチユニット５０を休止状態にしても良い。
【００２９】
通信装置内の全クロスバースイッチユニット５０の休止状態継続時間が閾値を超えないように各クロスバースイッチユニット５０の状態を遷移させていくために、管理ユニット２内のソフトウエア上に、全クロスバースイッチユニット５０の状態のスケジューリングを行なうユニット間スケジューリングデーモン２０と、各クロスバースイッチユニット５０毎に各クロスバースイッチユニット５０の状態と現在の状態の継続時間の管理を行なうユニット状態管理デーモン５５を設ける。
【００３０】
図３を参照して、ユニット状態管理デーモンが管理する情報を説明する。図３において、ユニット状態管理デーモン５５の状態としては、停止、故障、稼動、休止、無稼動休止の５状態がある。ユニット状態管理デーモン５５は、状態５５１と、現状態継続時間５５２とを管理する。
【００３１】
表１  状態の説明
−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
Ｎｏ    状態        意味
−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
１     停止     停止状態または未実装
２     故障     故障状態
３     稼動     稼動状態
４     休止     休止状態
５  無稼動停止  起動した後、稼動したことがなく休止している状態
−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
表１を参照して、各状態の意味を説明する。表１において、停止は、停止状態または未実装である。故障は、故障状態である。稼動は、稼動状態である。休止は、休止状態である。無稼動停止は、起動した後、１回も稼動したことがなく休止している状態である。
【００３２】
図４を参照して、状態遷移を説明する。図４において、停止状態７１は、当該ユニットが搭載されていないか、搭載されていても停止している状態である。停止状態７１の状態のとき、状態の継続時間は管理しない。故障状態７２は、当該ユニットが故障している状態である。故障状態７２のとき、状態の継続時間は管理する必要は無い。
【００３３】
稼動状態７３は、当該ユニットが稼動している状態である。休止状態７４は、当該ユニットが休止している状態のうち、下記無稼動休止状態以外の状態である。無稼動休止状態７５は、休止している状態であるが、当該ユニットが起動した後、１回も稼動した実績が無く休止している状態である。無稼動休止状態７５は、サイレント故障が内在している可能性があるので、休止状態７４のユニットよりも優先して稼動実績を積むようにスケジューリングすべきである。このため、無稼動休止状態７５について、休止状態７４とは別の状態として管理する。
【００３４】
図４において、停止状態７１から無稼動休止状態７５へは、停止＿休止遷移により、遷移する。停止状態７１から稼動状態７３へは、停止＿稼動遷移により、遷移する。故障７２から他の状態には遷移しない。稼動状態７３から停止状態７１へは、停止遷移により、遷移する。稼動状態７３から故障状態７２へは、故障遷移により、遷移する。稼動状態７３から休止状態７４へは、稼動＿休止遷移により、遷移する。休止状態７４から停止状態７１へは、停止遷移により、遷移する。休止状態７４から故障状態７２へは、故障遷移により、遷移する。休止状態７４から稼動状態７３へは、休止＿稼動遷移により、遷移する。無稼動休止状態７５から停止状態７１へは、停止遷移により、遷移する。無稼動休止状態７５から故障状態７２へは、故障遷移により、遷移する。無稼動休止状態７５から稼動状態７３へは、無稼動停止＿稼動遷移により、遷移する。
【００３５】
ユーザのオペレーションの観点から見た状態の分類としては、停止状態７１か、それ以外の状態かで大きく分けることができる。稼動状態７４か休止状態７４か無稼動休止状態７５かは、通信装置のスケジューリングにより自動的に遷移し、ユーザのオペレーションにより制御させないようにしても良い。また、故障状態７２は、通信装置が故障を検出したときに自動的に遷移する。さらに、通信装置にユニットが挿入された後、自動的に稼動状態７３、または無稼動休止状態７５に遷移しても良いし、ユーザが通信装置に明示的にユニットの起動コマンドを投入することにより当該ユニットを稼動状態７３、または無稼動休止状態７５に遷移させるようにしても良い。
【００３６】
停止状態７１以外のユニットを停止させるときには、ユーザが通信装置に明示的にユニットの停止コマンドを投入することにより当該ユニットを停止状態７１に遷移させるようにしても良い。またユニットの停止コマンドを投入せずに当該ユニットを抜去したとき、自動的に停止状態７１に遷移するようにしても良い。一般的には、ユニットの停止コマンドを投入せずに当該ユニットを抜去すると、当該ユニットで故障を誤検出する可能性が考えられる。したがって、停止コマンドを投入してから抜去するようにユーザに推奨しても良い。
【００３７】
図５を参照して、ユニット間スケジューリングデーモン２０が、各ユニット状態管理デーモン５５へ指示する状態遷移について、説明する。図５では、一台のクロスバースイッチユニットの休止状態継続時間が閾値を超えたときの状態遷移を説明する。なお、閾値は２４時間で、消費電力低減のため稼動状態にするユニット数を２台にする場合である。
【００３８】
図５ａにおいて、ＣＳＷ０とＣＳＷ１とは、継続時間６時間で稼動中にある。一方、ＣＳＷ２は、継続時間６時間で休止中である。また、ＣＳＷ３は、継続時間３時間で休止中である。１８時間後、ＣＳＷ２の休止状態継続時間が２４時間を超えたとき（図５ｂ）、ユニット間スケジューリングデーモン２０は、ＣＳＷ２を稼動状態にし、稼動状態のユニット数を２台にするため、稼動状態のＣＳＷであるＣＳＷ０かＣＳＷ１のいずれかを休止状態にする（図５ｃ）。図５ｃでは、ＣＳＷ０を休止状態にしている。稼動状態のユニットが複数ある場合に、どのユニットを休止状態にするかは、重要ではない。選択方法とてして、（１）最も若番のユニットを休止状態にしても良いし、（２）ランダムに選んだユニットを休止状態にしても良いし、（３）稼動状態継続時間が最も長いユニットを休止状態にしても良い。
【００３９】
重要なことは、消費電力低減のため、稼動状態のユニット数を必要な数に抑えるために、ある一つまたは複数のユニットを稼動状態にしたら稼動状態にしたユニットの数と同じ数の稼動状態の別のユニットを休止状態にすることである。更に、稼動状態にした後、一定の時間は未だ稼動実績が積めておらず故障が検出される可能性が高いと考え、この一定の時間を稼動実績獲得時間と定義する。稼動状態で状態継続時間が稼動実績獲得時間より前の状態のユニットは、休止状態にせず、稼動実績獲得時間を経過後に休止する。このスケジューリングを行なうことにより、休止状態になった時には確実に稼動実績が獲得されていることを保証することができる。この管理方法については、後に図９の通信装置起動時の状態遷移で説明する。稼動実績獲得時間は、ここでは、５分とする（図５ｄ）。
【００４０】
図６を参照して、一台のユニットが故障したときの状態遷移を説明する。図６も図５と同様、消費電力低減のため、稼動状態にするユニット数を２台とする（図６ａ）。ＣＳＷ１が故障した場合、ＣＳＷ１を故障状態にすると同時に、稼動状態のユニット数を２台にするため、休止状態のＣＳＷであるＣＳＷ２、ＣＳＷ３のうち最も休止状態継続時間の長いＣＳＷ２を稼動状態にする（図６ｂ）。その後、ＣＳＷ２を稼動状態にしてから５分後にＣＳＷ２が稼動実績を獲得した状態になる（図６ｃ）。
【００４１】
図７を参照して、稼動中の一台のユニットをコマンドで停止させたときの状態遷移を説明する。図７でも消費電力低減のため、稼動状態にするユニット数を２台にする（図７ａ）。ＣＳＷ１をコマンドで停止させた場合、ユニット間スケジューリングデーモン２０は、ＣＳＷ１を停止状態にすると同時に、稼動状態のユニット数を２台にするため、休止状態のＣＳＷであるＣＳＷ２、ＣＳＷ３のうち最も休止状態継続時間の長いＣＳＷ２を稼動状態にする（図７ｂ）。その後、ＣＳＷ２を稼動状態にしてから５分後にＣＳＷ２が稼動実績を獲得した状態になる（図７ｃ）。
【００４２】
図８を参照して、停止中の一台のユニットをコマンドで起動させたときの状態遷移を説明する。図８も消費電力低減のため、稼動状態にするユニット数を２台にする（図８ａ）。ＣＳＷ２をコマンドで起動させた場合、ユニット間スケジューリングデーモン２０は、ＣＳＷ２を稼動状態にすると同時に、稼動状態のユニット数を２台にするため、稼動状態のＣＳＷであるＣＳＷ０かＣＳＷ１のいずれかを休止状態にする（図８ｂ）。図８ｂでは、ユニット間スケジューリングデーモン２０は、ＣＳＷ０を休止状態にしている。その後、ＣＳＷ２を稼動状態にしてから５分後にＣＳＷ２が稼動実績を獲得した状態になる（図８ｃ）。
【００４３】
図９を参照して、通信装置起動時の状態遷移を説明する。図９において、通信装置起動時には全ユニットが停止状態から同時に起動する（図９ａ）。図９も消費電力低減のため、稼動状態にするユニット数を２台にする。図９ａにおいて、ユニット間スケジューリングデーモン２０は、ＣＳＷ０とＣＳＷ１を停止＿稼動遷移する。ユニット間スケジューリングデーモン２０は、ＣＳＷ２とＣＳＷ３を停止＿休止遷移する。ユニット間スケジューリングデーモン２０は、同時に起動した４台のユニットのうち稼動状態にするのは２台であり、残りの２台は無稼動休止状態にする（図９ｂ）。ここでは、ユニット間スケジューリングデーモン２０は、ＣＳＷ０とＣＳＷ１を稼動状態にし、ＣＳＷ２とＣＳＷ３を無稼動休止状態にしている。その後、ＣＳＷ０とＣＳＷ１を稼動状態にしてから５分後にＣＳＷ０とＣＳＷ１が稼動実績を獲得した状態になる（図９ｃ）。この時、ＣＳＷ２とＣＳＷ３は当該ユニットが起動した後、１回も稼動した実績が無く休止している状態であるので、優先して稼動実績を積むようにしたい。このため、ＣＳＷ０とＣＳＷ１が稼動実績を獲得するのを待って、ユニット間スケジューリングデーモン２０は、ＣＳＷ２とＣＳＷ３を稼動状態にし、稼動状態のユニット数を２台にするためにＣＳＷ０とＣＳＷ１を休止状態にする（図９ｄ）。このように、稼動状態で状態継続時間が稼動実績獲得時間より前の状態のユニットは休止状態にせず、稼動実績を獲得した状態になった後に休止する、というスケジューリングを行なうことにより、休止状態になった時には確実に稼動実績が獲得されていることを保証することができる。その後、ＣＳＷ２とＣＳＷ３を稼動状態にしてから５分後にＣＳＷ２とＣＳＷ３が稼動実績を獲得した状態になる（図９ｅ）。
【００４４】
図１０を参照して、１日の中継トラフィック量の変化を説明する。図１０において、縦軸は中継トラフィック量（Byte/s）、横軸は時刻（hh：mm）である。図１０の実線は、中継トラフィック量である。中継トラフィック量は、低い方から順に、１ユニット転送性能内、２ユニット転送性能内、３ユニット転送性能内、３ユニット転送性能超に区分されている。ユニット間スケジューリングデーモン２０は、運転モードとして、流量切替運転モードと定期切替運転モードの一方を選択して、クロスバースイッチユニット５０を運転制御する。
【００４５】
ここで、流量切替運転モードは、流量に応じて、クロスバースイッチユニット５０の運転台数を決定する運転モードである。一方、定期切替運転モードは、時刻に応じて、クロスバースイッチユニット５０の運転台数を決定する運転モードである。１日の中継トラフィック量の変化のパターンが予測できる状況では、定期切替運転モードが使用できる。流量切替運転モードは、１日の中継トラフィック量の変化のパターンが予測できない場合でも使用可能である。
【００４６】
図１１を参照して、定期切替運転モードに従い稼動ユニット数を変化させた場合の各ユニットの状態遷移を説明する。図１１において、稼動状態のユニット数を増やすとき（図１１ｂ、ｄ、ｆ）、ユニット間スケジューリングデーモン２０は、休止状態のユニットのうち、最も休止状態継続時間が長いユニットを稼動状態にする。稼動状態のユニット数を減らすとき（図１１ｈ、ｉ、ｊ）、ユニット間スケジューリングデーモン２０は、稼動時間が長いユニットを選んで休止状態にする。これにより、ユニット間スケジューリングデーモン２０は、休止状態継続時間が閾値を超えないようにする。
【００４７】
つまり、ユニット間スケジューリングデーモン２０は、通信装置で中継するトラフィック量の変化に追随し、稼動状態のユニット数を増減させる機能を利用し、わざわざ休止状態継続時間が閾値を超えることによるユニットの状態の変更を行なわなくても、休止状態継続時間が閾値を超えないようにする。
【００４８】
図１２を参照して、休止状態継続時間が閾値を超過したときでも、稼動状態への遷移を禁止する期間を設ける場合を説明する。図１２において、稼動状態への遷移を禁止する期間を設ける目的としては、ユーザの運用ポリシーにより、ある時間帯は通信装置の状態を変えたくない場合が考えられる。ネットワークの使用率が高い時間帯には、ネットワークを極力安定的に使用できるように、各ユニットの状態を遷移させないように運用したい、と考えた場合、日中帯には稼動状態への遷移を禁止するように設定することができる。
【００４９】
別の目的として、毎日決まった時刻に各ユニットの状態遷移を行なわせるようにしたい場合が考えられる。稼動状態への遷移を禁止する期間を設けることで、この期間内に休止状態継続時間が閾値に達したユニットが、この期間を抜けたときに稼動状態へ遷移するようにできる。したがって、毎日決まった時刻に各ユニットの状態遷移を行なわせるようにすることができる。
【００５０】
図１２において、休止状態継続時間が閾値を超過しても稼動状態への遷移を禁止する期間を８：００〜１８：００までの１０時間に設定し、休止状態継続時間の閾値を１５時間に設定する。図１２ｂにおいて、ＣＳＷ２とＣＳＷ３が、休止状態継続時間が閾値を超過しても稼動状態への遷移を禁止する期間内に休止状態継続時間が閾値を超えるが休止を継続する。図１２ｃにおいて、１８：００に休止状態継続時間が閾値を超過しても稼動状態への遷移を禁止する期間が終わり、ＣＳＷ２とＣＳＷ３は、稼動状態に遷移する（図１２ｄ）。このように休止状態継続時間が閾値を超過しても稼動状態への遷移を禁止する期間内に休止状態継続時間が閾値を超えるようにすることで、毎日同じ時間に休止状態から稼動状態への遷移を行なわせることができる。ここで、稼動状態への遷移が禁止されていない期間の長さは、（式１）で与えられる。
【００５１】
稼動状態への遷移が禁止されていない期間の長さ
＝２４時間−「閾値を超過しても遷移を禁止する期間の長さ」…（式１）
休止状態継続時間の閾値
＞２４時間−「超過しても遷移を禁止する期間の長さ」…（式２）
（式２）を満たすように休止状態継続時間の閾値を設定することで、１日のうち稼動状態への遷移が禁止されていない期間内に稼動状態から休止状態になり再度稼動状態になることを避けることができる。
【００５２】
図１３を参照して、ユニット間スケジューリングデーモンの動作を説明する。図１３において、ユニット間スケジューリングデーモン２０は、起動するとクロスバースイッチユニット５０の状態を変更する（Ｓ８２）。ユニット間スケジューリングデーモン２０は、クロスバースイッチユニット５０の状態を変えるべき次のイベントまで待機して（Ｓ８３）、イベント発生をもってステップ８２に遷移する。
【００５３】
なお、ユニットの稼動状態を変えるべき次のイベントは、以下の通りである。
・ユニット起動完了
・ユニット停止コマンド受付
・ユニットの故障
・休止状態で休止継続時間閾値経過
・稼動状態で稼動実績獲得時間経過
・休止状態継続時間が閾値を超過して、かつ稼動状態への遷移を禁止する期間終了
・省電力機能により 稼動させるべきユニット数を変更
図１４を参照して、図１３のステップ８２の詳細を説明する。図１４において、ユニット間スケジューリングデーモン２０は、稼動状態のユニット数と稼動させるべきユニット数を比較する（Ｓ８２１）。稼動状態のユニット数＜稼動させるべきユニット数のとき、ユニット間スケジューリングデーモン２０は、稼動状態のユニット数と稼動させるべきユニット数が一致するまで、稼動状態に遷移可能なユニットを探し、稼動状態にする（Ｓ８２２）。ユニット間スケジューリングデーモン２０は、稼動状態のユニット数を保ちつつ稼動状態のユニットを入れ替えて（Ｓ８２４）、リターンする。
【００５４】
ステップ８２１で一致しているとき、ユニット間スケジューリングデーモン２０は、そのままステップ８２４に遷移する。ステップ８２１で、稼動状態のユニット数＞稼動させるべきユニット数のとき、ユニット間スケジューリングデーモン２０は、稼動状態のユニット数と稼動させるべきユニット数が一致するまで、休止状態に遷移可能なユニットを探し、休止状態にして（Ｓ８２３）、ステップ８２４に遷移する。ステップ８２３において、ユニット間スケジューリングデーモン２０は、以下を全クロスバースイッチユニット５０について、繰り返し実行を試みる。なお、途中でループを抜ける条件がある。まず、ユニット間スケジューリングデーモン２０は、選択したクロスバースイッチユニットが稼動状態、かつ、稼動実績獲得時間経過後か判定する。ＹＥＳのとき、ユニット間スケジューリングデーモン２０は、当該クロスバースイッチユニットを休止状態にする。ユニット間スケジューリングデーモン２０は、稼動状態のユニット数を比較する。一致しているとき、ユニット間スケジューリングデーモン２０は、ステップ８２４に遷移する。不一致のとき、ユニット間スケジューリングデーモン２０は、次のクロスバースイッチユニットを評価する。稼動状態かつ稼働実績獲得時間経過後判定でＮＯのとき、ユニット間スケジューリングデーモン２０は、全クロスバースイッチユニット５０について、評価したとき、ユニット間スケジューリングデーモン２０は、ステップ８２４に遷移する。
【００５５】
図１５を参照して、図１４のステップ８２２の詳細を説明する。図１５において、ユニット間スケジューリングデーモン２０は、稼動状態のユニット数と稼動させるべきユニット数が一致するまで、全ユニットの中から無稼動休止状態のユニットを探して稼動状態にする（Ｓ８２２１）。なお、ステップ８２２１において、ユニット間スケジューリングデーモン２０は、全クロスバースイッチユニット５０について、以下を繰り返し実行を試みる。なお、途中でループを抜ける条件がある。ユニット間スケジューリングデーモン２０は、選択したクロスバースイッチユニットが無稼動休止状態か判定する。ＹＥＳのとき、ユニット間スケジューリングデーモン２０は、当該クロスバースイッチユニットを稼動状態にする。ユニット間スケジューリングデーモン２０は、稼動状態のユニット数を比較する。一致しているとき、ユニット間スケジューリングデーモン２０は、ステップ８２２２に遷移する。不一致のとき、ユニット間スケジューリングデーモン２０は、次のクロスバースイッチユニットを評価する。無稼働休止判定でＮＯのとき、ユニット間スケジューリングデーモン２０は、全クロスバースイッチユニット５０について、評価したとき、ユニット間スケジューリングデーモン２０は、ステップ８２２２に遷移する。
【００５６】
ユニット間スケジューリングデーモン２０は、稼動状態のユニット数を比較する（Ｓ８２２２）。一致のとき、ユニット間スケジューリングデーモン２０は、リターンする。ステップ８２２２で不一致のとき、ユニット間スケジューリングデーモン２０は、稼動状態のユニット数と稼動させるべきユニット数が一致するまで、全ユニットの中から起動完了直後のユニットを探して稼動状態にする（Ｓ８２２３）。ステップ８２２３において、ユニット間スケジューリングデーモン２０は、以下を全クロスバースイッチユニット５０について、繰り返し実行を試みる。なお、途中でループを抜ける条件がある。
【００５７】
ユニット間スケジューリングデーモン２０は、選択したクロスバースイッチユニットが起動完了直後か判定する。ＹＥＳのとき、ユニット間スケジューリングデーモン２０は、当該クロスバースイッチユニットを稼動状態にする）。ユニット間スケジューリングデーモン２０は、稼動状態のユニット数を比較する。一致しているとき、ユニット間スケジューリングデーモン２０は、ステップ８２２４に遷移する。で不一致のとき、ユニット間スケジューリングデーモン２０は、次のクロスバースイッチユニットを評価する。起動直後の判定でＮＯのとき、ユニット間スケジューリングデーモン２０は、全クロスバースイッチユニット５０について、評価したとき、ユニット間スケジューリングデーモン２０は、ステップ８２２４に遷移する。
【００５８】
ユニット間スケジューリングデーモン２０は、稼動状態のユニット数を比較する（Ｓ８２２４）。一致しているとき、ユニット間スケジューリングデーモン２０は、リターンする。不一致のとき、ユニット間スケジューリングデーモン２０は、稼動状態のユニット数と稼動させるべきユニット数が一致するまで、全ユニットの中から休止状態で、かつ、休止状態継続時間が閾値を超過したユニットを探して稼動状態にする（Ｓ８２２５）。ステップ８２２５において、ユニット間スケジューリングデーモン２０は、以下を全クロスバースイッチユニット５０について、繰り返し実行を試みる。なお、途中でループを抜ける条件がある。まず、ユニット間スケジューリングデーモン２０は、選択したクロスバースイッチユニットが休止状態で、かつ休止状態継続時間が閾値を超過しているか判定する。ＹＥＳのとき、ユニット間スケジューリングデーモン２０は、当該クロスバースイッチユニットを稼動状態にする。ユニット間スケジューリングデーモン２０は、稼動状態のユニット数を比較する。一致しているとき、ユニット間スケジューリングデーモン２０は、ステップ８２２６に遷移する。で不一致のとき、ユニット間スケジューリングデーモン２０は、次のクロスバースイッチユニットを評価する。閾値超過判定でＮＯのとき、ユニット間スケジューリングデーモン２０は、全クロスバースイッチユニット５０について、評価したとき、ユニット間スケジューリングデーモン２０は、ステップ８２２６に遷移する。
【００５９】
ユニット間スケジューリングデーモン２０は、稼動状態のユニット数を比較する（Ｓ８２２６）。一致しているとき、ユニット間スケジューリングデーモン２０は、リターンする。不一致のとき、ユニット間スケジューリングデーモン２０は、稼動状態のユニット数と稼動させるべきユニット数が一致するまで、全ユニットの中から休止状態のユニットを探して稼動状態にして（Ｓ８２２７）、リターンする。ステップ８２２７において、ユニット間スケジューリングデーモン２０は、以下を全クロスバースイッチユニット５０について、繰り返し実行を試みる。なお、途中でループを抜ける条件がある。まず、ユニット間スケジューリングデーモン２０は、選択したクロスバースイッチユニットが休止状態か判定する。ＹＥＳのとき、ユニット間スケジューリングデーモン２０は、当該クロスバースイッチユニットを稼動状態にする。ユニット間スケジューリングデーモン２０は、稼動状態のユニット数を比較する。一致しているとき、ユニット間スケジューリングデーモン２０は、図１４のステップ８２４に遷移する。不一致のとき、ユニット間スケジューリングデーモン２０は、次のクロスバースイッチユニットを評価する。休止状態判定でＮＯのとき、ユニット間スケジューリングデーモン２０は、全クロスバースイッチユニット５０について、評価したとき、ユニット間スケジューリングデーモン２０は、図１４のステップ８２４に遷移する。
【００６０】
図１６を参照して、図１４のステップ８２４の詳細を説明する。図１６において、ユニット間スケジューリングデーモン２０は、ステップ８２４１とステップ８２４８との間を全クロスバースイッチユニット５０について、繰り返し実行を試みる。ステップ８２４１のあと、ユニット間スケジューリングデーモン２０は、当該クロスバースイッチユニットが起動完了直後か判定する（Ｓ８２４２）。ＹＥＳのとき、ユニット間スケジューリングデーモン２０は、休止状態に遷移可能なユニットを一つ探す（Ｓ８２４４Ａ）。ユニット間スケジューリングデーモン２０は、休止状態に遷移可能なユニット有りか判定する（Ｓ８２４５Ａ）。ＹＥＳのとき、ユニット間スケジューリングデーモン２０は、当該ユニットを稼動状態にし、探したユニットを休止状態にする（Ｓ８２４６Ａ）。ユニット間スケジューリングデーモン２０は、ステップ８２４８に遷移して、次のクロスバースイッチユニットを評価する。ステップ８２４５ＡでＮＯのとき、ユニット間スケジューリングデーモン２０は、当該ユニットを無稼動休止状態にして（Ｓ８２４７）、ステップ８２４８に遷移する。
【００６１】
ステップ８２４２でＮＯのとき、ユニット間スケジューリングデーモン２０は、当該クロスバースイッチユニットが、稼動させる候補になっているか判定する（Ｓ８２４３）。ＹＥＳのとき、ユニット間スケジューリングデーモン２０は、休止状態に遷移可能なユニットを一つ探す（Ｓ８２４４Ｂ）。ユニット間スケジューリングデーモン２０は、休止状態に遷移可能なユニット有りか判定する（Ｓ８２４５Ｂ）。ＹＥＳのとき、ユニット間スケジューリングデーモン２０は、当該ユニットを稼動状態にし、探したユニットを休止状態にして（Ｓ８２４６Ｂ）、ステップ８２４８に遷移する。ステップ８２４５ＢでＮＯのとき、ユニット間スケジューリングデーモン２０は、ステップ８２４８に遷移する。ステップ８２４３でＮＯのとき、ユニット間スケジューリングデーモン２０は、ステップ８２４８に遷移する。ステップ８２４８において、全クロスバースイッチユニット５０について、評価したとき、ユニット間スケジューリングデーモン２０は、リターンする。
【００６２】
図１７を参照して、図１６のステップ８２４４Ａ、８２４４Ｂの詳細を説明する。図１７において、ユニット間スケジューリングデーモン２０は、全ユニットの中から無稼動休止状態のユニットを探す（Ｓ８２４４１）。ステップ８２４４１において、ユニット間スケジューリングデーモン２０は、以下を全クロスバースイッチユニット５０について、繰り返し実行を試みる。なお、途中でループを抜ける条件がある。まず、ユニット間スケジューリングデーモン２０は、選択したクロスバースイッチユニットが無稼動停止状態か判定する。ＹＥＳのとき、ユニット間スケジューリングデーモン２０は、ステップ８２４４２に遷移する。ＮＯのとき、ユニット間スケジューリングデーモン２０は、次のクロスバースイッチユニットを評価する。全クロスバースイッチユニット５０について、評価したとき、ユニット間スケジューリングデーモン２０は、ステップ８２４４２に遷移する。
【００６３】
ユニット間スケジューリングデーモン２０は、見つかったか判定する（Ｓ８２４４２）。ＹＥＳのとき、ユニット間スケジューリングデーモン２０は、リターンする。ステップ８２４４２でＮＯのとき、ユニット間スケジューリングデーモン２０は、全ユニットの中から起動完了直後のユニットを探す（Ｓ８２４４３）。ステップ８２４４３において、ユニット間スケジューリングデーモン２０は、以下を全クロスバースイッチユニット５０について、繰り返し実行を試みる。なお、途中でループを抜ける条件がある。まず、ユニット間スケジューリングデーモン２０は、選択したクロスバースイッチユニットが起動完了直後か判定する。ＹＥＳのとき、ユニット間スケジューリングデーモン２０は、ステップ８２４４４に遷移する。ＮＯのとき、ユニット間スケジューリングデーモン２０は、次のクロスバースイッチユニットを評価する。全クロスバースイッチユニット５０について、評価したとき、ユニット間スケジューリングデーモン２０は、ステップ８２４４４に遷移する。ユニット間スケジューリングデーモン２０は、見つかったか判定する（Ｓ８２４４４）。ＹＥＳのとき、ユニット間スケジューリングデーモン２０は、リターンする。
【００６４】
ステップ８２４４４でＮＯのとき、ユニット間スケジューリングデーモン２０は、全ユニットの中から休止状態で、かつ休止状態継続時間が閾値を超過したユニットを探す（Ｓ８２４４５）。ステップ８２４４５において、ユニット間スケジューリングデーモン２０は、以下を全クロスバースイッチユニット５０について、繰り返し実行を試みる。なお、途中でループを抜ける条件がある。まず、ユニット間スケジューリングデーモン２０は、選択したクロスバースイッチユニットが休止状態で、かつ休止状態継続時間が閾値を超過しているか判定する。ＹＥＳのとき、ユニット間スケジューリングデーモン２０は、ステップ８２４４６に遷移する。ＮＯのとき、ユニット間スケジューリングデーモン２０は、次のクロスバースイッチユニットを評価する。全クロスバースイッチユニット５０について、評価したとき、ユニット間スケジューリングデーモン２０は、ステップ８２４４６に遷移する。
【００６５】
ユニット間スケジューリングデーモン２０は、見つかったか判定する（Ｓ８２４４６）。ＹＥＳのとき、ユニット間スケジューリングデーモン２０は、リターンする。ステップ８２４４６でＮＯのとき、ユニット間スケジューリングデーモン２０は、全ユニットの中から休止状態のユニットを探して（Ｓ８２４４７）、リターンする。ステップ８２４４７において、ユニット間スケジューリングデーモン２０は、以下を全クロスバースイッチユニット５０について、繰り返し実行を試みる。なお、途中でループを抜ける条件がある。まず、ユニット間スケジューリングデーモン２０は、選択したクロスバースイッチユニットが休止状態か判定する。ＹＥＳのとき、ユニット間スケジューリングデーモン２０は、リターンする。ＮＯのとき、ユニット間スケジューリングデーモン２０は、次のクロスバースイッチユニットを評価する。全クロスバースイッチユニット５０について、評価したとき、ユニット間スケジューリングデーモン２０は、リターンする。
【００６６】
次に本実施例を実現するためのユーザ・インタフェースの例を示す。
まず本実施例で必要となる各種パラメータを装置に設定する方法の例を以下に示す。
図５、図６、図７、図８、図９に示すユニットの状態遷移を実現するためには、ユニットの休止継続時間が閾値を超えたときに、休止中のユニットの状態を稼動状態に変更させるための、休止継続時間の閾値と、ユニットを稼動状態にした後、稼動実績が積めるまでの時間である稼動実績獲得時間を指定する二つのパラメータが必要である。
更に、図１２に示すユニットの状態遷移を実現するためには、
休止状態継続時間が閾値を超過したときでも稼動状態への遷移を禁止する期間を指定するための開始時刻と終了時刻の二つのパラメータが必要である。
これらのパラメータを指定する為には、例えば以下に示すコンフィグレーション・コマンドを設ける。
silent−failure−control
elapsed−time−in−standby−to−activate 12：00
elapsed−time−in−active−to−get−reliability 00：05
state−change−inhibited−time−range 08：00 18：00
!
“elapsed−time−in−standby−to−activate”が、ユニットの休止継続時間が閾値を超えたときに、休止中のユニットの状態を稼動状態に変更させるための、休止継続時間の閾値を指定するコマンドであり、この後ろに閾値を例えば“時間：分”の形で指定する。
【００６７】
“elapsed−time−in−active−to−get−reliability”が、ユニットを稼動状態にした後、稼動実績が積めるまでの時間である稼動実績獲得時間を指定するコマンドであり、この後ろに時間を例えば“時間：分“の形で指定する。
【００６８】
“state−change−inhibited−time−range”が、休止状態継続時間が閾値を超過したときでも稼動状態への遷移を禁止する期間を指定するコマンドであり、この後に、当該期間の開始時刻、終了時刻を“時：分“の形で指定する。開始時刻の方を終了時刻より遅く設定することにより、開始時刻から翌日の終了時刻までが当該期間になる、という仕様にしても良い。
【００６９】
この他に、図１０に示す定期切替運転モードの、時間帯毎に稼動させるユニット数を指定するには、例えば以下に示すコンフィグレーション・コマンドを設け、稼動させるユニット数を指定した個数にし始める開始時刻を“時：分”の形で指定し、その後ろに稼動させるユニット数を指定するようにする。
schedule−power−control
06：00 2
08：00 3
10：00 4
18：00 3
20：00 2
22：00 1
!
これらのコンフィグレーション・コマンドは、装置に接続される管理コンソールから入力してもよい。また、上記コンフィグレーション・コマンドは、例えばテキストファイルにして装置に読み込ませるようにしても良いし、装置にコマンド“silent−failure−control”,“schedule−power−control”を入力した後に、これらのパラメータを入力するモードに移行し、その後順次、各パラメータを入力した後、例えば“quit”などのコマンド入力により、当該モードを抜け、パラメータが更新されるようにしても良い。
【００７０】
次に、本実施例により制御される各ユニットの状態を示す運用コマンドの例を以下に示す。下記例ではコマンド“show system”を入力すると、各ユニットの状態と現状態継続時間が、組で、管理コンソールの表示部に表示される。
$ show system
state           elapsed−time
CSW0 ： active          06：00：00
CSW1 ： active          06：00：00
CSW2 ： inactive        −−−−−−−−
CSW3 ： standby         03：00：00
表１に示す状態と表示名との対応は、例えば下記表２に示すようにする。
【００７１】
表２  状態と表示名との対応
−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
Ｎｏ    状態      表示名
−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
１     停止     inactive
２     故障     fault
３     稼動     active
４     休止     standby
５  無稼動停止  initial−standby
−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
停止状態では、現状態継続時間は管理せず、この状態に対応する“elapsed−time”は例えば“−−−−−−−−”と表示されるようにしても良い。
その他、初期化中を示す状態“initialize”を別に設けても良い。
【００７２】
以上のように、管理コンソールからのコンフィグレーション・コマンドの入力、表示部への出力により、装置の稼動状況の把握、障害管理が容易となる。なお、管理コンソールは、装置と有線ネットワーク、無線ネットワークによって通信し、コンフィグレーション・コマンドや表示部へ出力されるデータの送受信を行なってもよい。
【００７３】
なお、実施例ではスケジューリングを行なうユニットとしてクロスバースイッチユニット５０の場合について説明したが、通信装置内で並列動作しているユニットであれば、どのユニットにも適用できる。具体的には、回線冗長を採用しているとき、パケット処理ユニット３０もスケジューリングを行なうことができる。
【符号の説明】
【００７４】
１…通信装置、２…管理ユニット、２０…ユニット間スケジューリングデーモン、３０…パケット処理ユニット、４０…ネットワークインタフェースユニット、５０…クロスバースイッチユニット、５５…ユニット状態管理デーモン、７１…停止状態、７２…故障状態、７３…稼動状態、７４…休止状態、７５…無稼動休止状態。
【図１】
2014064188.tif 000003
【図２】
2014064188.tif 000004
【図３】
2014064188.tif 000005
【図４】
2014064188.tif 000006
【図５】
2014064188.tif 000007
【図６】
2014064188.tif 000008
【図７】
2014064188.tif 000009
【図８】
2014064188.tif 000010
【図９】
2014064188.tif 000011
【図１０】
2014064188.tif 000012
【図１１】
2014064188.tif 000013
【図１２】
2014064188.tif 000014
【図１３】
2014064188.tif 000015
【図１４】
2014064188.tif 000016
【図１５】
2014064188.tif 000017
【図１６】
2014064188.tif 000018
【図１７】
2014064188.tif 000019