JP2018019172A - 制御装置、通信装置、および、設定方法 - Google Patents

制御装置、通信装置、および、設定方法 Download PDF

Info

Publication number
JP2018019172A
JP2018019172A JP2016146426A JP2016146426A JP2018019172A JP 2018019172 A JP2018019172 A JP 2018019172A JP 2016146426 A JP2016146426 A JP 2016146426A JP 2016146426 A JP2016146426 A JP 2016146426A JP 2018019172 A JP2018019172 A JP 2018019172A
Authority
JP
Japan
Prior art keywords
communication device
setting
polling
setting information
packet
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.)
Pending
Application number
JP2016146426A
Other languages
English (en)
Inventor
正徳 真田
Masanori Sanada
正徳 真田
貴 奥山
Takashi Okuyama
貴 奥山
秀介 小宮
Hidesuke Komiya
秀介 小宮
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2016146426A priority Critical patent/JP2018019172A/ja
Publication of JP2018019172A publication Critical patent/JP2018019172A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

【課題】制御装置での処理負荷を軽減する。【解決手段】制御装置は、複数の通信装置を含むネットワークを制御し、受信部、生成部、制御部、送信部を備える。受信部は、転送経路の設定要求および複数の通信装置の各々からパケットを受信可能であることを通知する通知パケットを受信する。生成部は、転送経路を設計するとともに、複数の通信装置のうちで転送経路の生成に使用する通信装置の各々に対して、通信装置に設定する設定情報を生成する。制御部は、設定情報の各々について、設定情報の設定先となる通信装置からパケットを受信可能であることを通知する通知パケットを受信すると、設定情報を含む応答パケットを生成する。送信部は、応答パケットを設定情報の設定先となる通信装置へ送信する。【選択図】図2

Description

本発明は、制御装置、通信装置、および、ネットワークの設定方法に関する。
制御サーバが複数の通信装置を制御するネットワークでは、ユーザからの通信経路の設定の要求に応じて、制御サーバが経路計算を行うと共に、ネットワーク中の制御対象の装置に設定処理を行うことがある。
図1は、ネットワークで行われる設定処理の例である。まず、ユーザ端末5(5a、5b)から、通信経路の設定要求がオペレーションシステム15中の制御サーバ10(10a、10b)に対して送信される(矢印A1)。例えば、制御サーバ10aが設定要求を受信したとする。すると、制御サーバ10aは、ネットワーク11中の制御対象装置20のトポロジ情報などを用いて、設定要求で指定されている通信経路を計算する。制御サーバ10aは、設定対象の通信経路に含まれる制御対象装置20に対して、経路の計算結果に応じた設定を行うための情報を通知する(矢印A2)。このとき、制御サーバ10aは、設定処理の対象となる制御対象装置20の各々に対して、一斉に設定対象の情報を送信する。なお、図1の例では、制御サーバ10aと制御サーバ10bがオペレーションシステム15に含まれているが、オペレーションシステム15中の制御サーバ10の数は、設定処理の量などに応じて任意に変更され得る。
さらに、近年、SDN(Software-Defined Networking)を用いて、物理ネットワーク上に、論理ネットワークが設定されることも増えてきている。このため、個々の制御対象装置20に設定する情報の量も増加傾向にある上、ネットワーク11中の制御対象装置20の数も増加傾向にある。また、SDNのユーザの数が増えれば、制御サーバ10が受信する設定要求の数も大きくなる。このため、制御サーバ10で処理するデータ量が増大していることに伴って、オペレーションシステム15に設置される制御サーバ10の数も増加する傾向にある。
関連する技術として、複数のローカル制御装置の各々がセンターサーバに周期的にアクセスして、制御対象の機器に対する制御要求コマンドを取得することにより、センターサーバへのアクセスの集中を防止するシステムが提案されている(例えば、特許文献1)。情報処理装置が自装置宛のデータを中継サーバに問合わせるシステムにおいて、中継サーバの過負荷状態が検出されると、中継サーバは、問合せ時期を制限させる情報を情報処理装置に送信することも提案されている(例えば、特許文献2)。アプリケーションに割り当てられた計算機やネットワーク装置などの装置の負荷状態を示す値が閾値を超えると、他の装置の負荷状況に基づいて、アプリケーションの処理に新たに装置を割り当てる方法も提案されている(例えば、特許文献3)。複数の仮想サーバを含むキャッシュサーバから各仮想サーバの情報を取得し、負荷がかかっていないと判定された仮想サーバをアクセスの振分先に指定するアクセス振分装置も提案されている(例えば、特許文献4)。送達通知のタイミングを決定する条件が受信データに含まれていると、通知された条件に基づいて、通知データの送信のタイミングを定める送信手段を有する通信装置も提案されている(例えば、特許文献5)。
特開2009−16890号公報 特開2007−249829号公報 特開2011−48539号公報 特開2009−259206号公報 特開2004−32328号公報
制御サーバが、設定対象の通信装置の各々に対して求めた設定情報を、制御対象の通信装置の各々に一斉に送信すると、設定情報の送信の際に、制御サーバの処理負荷が高くなる。さらに、制御サーバから通信装置に制御情報を送信しても、通信装置側で制御情報の受信に失敗すると、制御装置は制御情報を再送するため、制御装置の処理負荷は、さらに大きくなってしまう。しかし、背景技術に使用したいずれの技術を用いても、設定情報の送信や再送による制御サーバの処理負荷を軽減することは困難である。
本発明は、制御装置での処理負荷を軽減することを目的とする。
ある1つの態様にかかる制御装置は、複数の通信装置を含むネットワークを制御し、受信部、生成部、制御部、送信部を備える。受信部は、転送経路の設定要求および前記複数の通信装置の各々からパケットを受信可能であることを通知する通知パケットを受信する。生成部は、前記転送経路を設計するとともに、前記複数の通信装置のうちで前記転送経路の生成に使用する通信装置の各々に対して、当該通信装置に設定する設定情報を生成する。制御部は、前記設定情報の各々について、当該設定情報の設定先となる通信装置から当該通信装置がパケットを受信可能であることを通知する通知パケットを受信すると、当該設定情報を含む応答パケットを生成する。送信部は、前記応答パケットを前記設定情報の設定先となる通信装置へ送信する。
制御装置の処理負荷が軽減される。
設定処理の例を説明する図である。 実施形態にかかる設定処理の例を説明する図である。 制御サーバの構成の例を説明する図である。 通信装置の構成の例を説明する図である。 制御サーバと通信装置のハードウェア構成の例を説明する図である。 設定要求と設定情報テーブルの例を説明する図である。 ポーリング要求とポーリング応答のフォーマットの例を説明する図である。 ポーリング要求を用いた設定処理の例を説明するシーケンス図である。 設定情報テーブルの例を説明する図である。 ポーリング要求を用いた設定処理の例を説明するシーケンス図である。 ポーリング受付中テーブルの例を説明する図である。 ユーザからの設定要求前にポーリング要求が行われた場合の処理の例を説明するシーケンス図である。 ポーリング応答の受信に失敗した場合の処理の例を説明するシーケンス図である。 通信装置がポーリング要求を送信する際の処理の例を説明するフローチャートである。 通信装置がポーリング応答を受信した際の処理の例を説明するフローチャートである。 制御サーバが設定要求を受信したときの処理の例を説明するフローチャートである。 制御サーバが通信装置から設定結果を受信したときの処理の例を説明するフローチャートである。 ポーリング要求を受信したときの制御サーバの処理の例を説明するフローチャートである。 ポーリング要求を受信したときの制御サーバの処理の例を説明するフローチャートである。 応答保留時間の制御例を説明するシーケンス図である。 仮想装置が用いられる場合の例を説明する図である。 設定情報テーブルの例を説明する図である。
図2は、実施形態にかかる設定処理の例を説明する図である。実施形態にかかるシステムでは、オペレーションシステム3中に、1台以上の制御サーバ(制御装置)30が備えられている。実施形態にかかる設定処理でも、まず、ユーザ端末5(5a、5b)から、通信経路の設定要求がオペレーションシステム3中の制御サーバ30(30a、30b)に対して送信される(矢印A11)。
設定要求を受信した制御サーバ30は、ネットワーク中の通信装置60(60a、60b)のトポロジ情報などを用いて、設定要求で要求された通信経路を生成するための設定情報を生成する。しかし、制御サーバ30は、通信装置60への設定情報の通知や通信経路の設定通知は行わずに、設定処理に使用する情報を、その情報の設定先に対応付けて記憶する。
個々の通信装置60は、自装置が経路の設定情報やパケットの転送先の設定に関する情報などを受信可能な状態である場合、制御サーバ30に対して、パケットの受信が可能であることを通知する通知パケットを送信する。例えば、各通信装置60は、制御サーバ30から設定情報などが含まれているパケットを受信してもバッファオーバーフローが発生しないと見込まれる場合に、設定情報を受信可能であると判定できる。なお、通知パケットとして、通信装置60がパケットを受信可能であることを制御サーバ30に認識させるために使用可能な任意のパケットが使用され得る。例えば、通知パケットとして、ポーリング要求が用いられても良い。
制御サーバ30は、通知パケットを受信すると、通知パケットの送信元に対応付けられている設定情報を、通知パケットの送信元に送信する。例えば、通信装置60aは、設定情報を受信可能であるため、制御サーバ30に対して通知パケットを送信したとする。制御サーバ30は、通知パケットを受信すると、通信装置60aはパケットの受信が可能であると判定する。そこで、制御サーバ30は、通信装置60aに対応付けて記憶している設定情報や経路情報などの情報を、通知パケットに応答する応答パケットに含めて、通信装置60aに送信する(矢印A12)。
ここで、応答パケットは、通知パケットに応答して送信されているが、通知パケットの送信元の通信装置60aは、制御サーバ30からのパケットを受信可能な程度の負荷の処理を行っているときに、通知パケットを送信する。従って、応答パケットが通信装置60aに到達すれば、通信装置60aは設定情報を含む応答パケットを受信できる。このため、制御サーバ30と通信装置60aの間でのパケットの送受信の失敗に起因するパケットの再送が防止される。
通信装置60bも、通信装置60aと同様に、通信装置60b宛の設定情報を含むパケットを受信可能な場合に、制御サーバ30に対して通知パケットを送信する。すると、制御サーバ30は、通信装置60bからの通知パケットに応じて、通信装置60bでの設定に使用される情報を含む応答パケットを通信装置60bに送信する(矢印A13)。このため、制御サーバ30と通信装置60bの間でも、通信装置60bでのパケットの受信の失敗に起因するパケットの再送が予防される。
このように、実施形態にかかる方法では、制御サーバ30が設定用の情報を含むパケットを通信装置60に送信する際に、通信装置60でのパケットの廃棄や通信装置60でのバッファオーバーフローなどによるパケットの受信の失敗が防止される。このため、実施形態にかかる方法では、制御サーバ30からの通信装置60へのパケットの再送を防止でき、制御サーバ30での処理負荷を低減させることができる。さらに、設定情報を一斉に送信する場合に比べて、制御サーバ30からの設定情報の送信のタイミングが複数の通信装置60で重なる可能性も低くなる。従って、制御サーバ30での処理負荷が平滑化されやすい。
以上の説明は、ユーザ端末5から要求された1つ経路の設定が行われる場合を例として説明したが、SDNのユーザの数が増えれば、制御サーバ30に設定が要求される経路の数も大きくなることが予想される。このため、設定対象となっている経路の各々で、制御サーバ30と通信装置60の間でのパケットの再送を防止することで、制御サーバ30にかかる負荷の増大を防ぐことにもなる。また、制御サーバ30にかかる負荷の増大を防ぐことで、システム中に設定される制御サーバ30の台数を抑えることもできる。
<装置構成>
以下、通知パケットとしてポーリング要求が用いられ、応答パケットとしてポーリング応答が用いられる場合を例として説明する。
図3は、制御サーバ30の構成の例を説明する図である。制御サーバ30は、通信部31、制御部40、記憶部50を備える。通信部31は、送信部32と受信部33を有する。制御部40は、要求受付部41、生成部42、ポーリング制御部43を有する。記憶部50は、設定要求情報51、設定情報テーブル52、および、ポーリング受付中テーブル53を有する。さらに、記憶部50は、制御サーバ30の処理対象となる通信装置60を含むネットワークのトポロジ情報54も保持する。
送信部32は、通信装置60やユーザ端末5などの他の装置にパケットを送信する。受信部33は、通信装置60やユーザ端末5等の他の装置からパケットを受信する。受信部33は、ユーザ端末5から受信した設定要求を要求受付部41に出力し、通信装置60から受信したパケットをポーリング制御部43に出力する。要求受付部41は、設定要求を識別する識別情報を生成し、識別情報と共に設定要求を設定要求情報51として、記憶部50に格納する。生成部42は、設定要求情報51中の情報とトポロジ情報54を参照して、要求された経路を生成するための設定情報を生成する。なお、生成部42は、設定要求情報51を参照する代わりに、要求受付部41から設定要求を取得しても良い。生成部42は、得られた設定情報を、設定情報テーブル52に格納する。このとき、生成部42は、各設定情報を、その情報を設定する設定先の装置の情報と対応付けて設定情報テーブル52に記録する。
ポーリング制御部43は、通信装置60から送信されたポーリング要求を取得すると、ポーリング要求の送信元の通信装置60に対応付けられた設定情報が設定情報テーブル52に含まれているかを判定する。ポーリング要求の送信元の通信装置60に対応付けられた設定情報が設定情報テーブル52に含まれている場合、ポーリング制御部43は、ポーリング要求の送信元の通信装置60に設定される設定情報をポーリング応答に含める。ポーリング制御部43は、生成したポーリング応答を、送信部32を介して、通信装置60に送信する。一方、ポーリング要求の送信元の通信装置60に対応付けられた設定情報が設定情報テーブル52に含まれていない場合、ポーリング制御部43は、ポーリング応答を送信するタイミングを遅らせることを決定する。ポーリング制御部43は、ポーリング応答を送信するタイミングを遅らせる場合、ポーリング要求の送信元の情報をポーリング受付中テーブル53に記録する。
図4は、通信装置60の構成の例を説明する図である。通信装置60は、通信部61、制御部70、記憶部80を備える。通信部61は、送信部62と受信部63を有する。制御部70は、ポーリング制御部71、設定処理部72、判定部73を有する。記憶部80は、収集情報テーブル81と閾値情報82を保持する。
送信部62は、制御サーバ30などの他の装置にパケットを送信する。受信部63は、通信装置60などの他の装置からパケットを受信する。受信部63は、制御サーバ30から受信したポーリング応答をポーリング制御部71に出力する。
ポーリング制御部71は、ポーリング応答中に設定情報が含まれているかを判定する。ポーリング応答に設定情報が含まれている場合、ポーリング制御部71は、設定情報を設定処理部72に出力する。設定処理部72は、ポーリング制御部71から取得した情報を処理する。設定処理部72は、処理結果と処理に使用した情報を収集情報テーブル81に記録する。
判定部73は、通信装置60での処理負荷が閾値情報82を下回っているかを判定する。閾値情報82は、通信装置60が制御サーバ30から送信されたパケットの受信処理が可能であるかの判定に使用可能な任意の値とすることができる。すなわち、閾値情報82は、通信装置60に対する設定情報を含むパケットの受信が可能な場合の負荷を表す任意の値であるといえる。例えば、閾値情報82は、通信装置60が備えるプロセッサの使用率が用いられてもよく、通信装置60が備えるメモリの空き容量のメモリの全容量に対する割合が使用されても良い。
通信装置60において制御サーバ30から送信されたパケットの受信処理が可能であると判定部73が判定すると、ポーリング制御部71は、ポーリング要求の生成を行う。ポーリング制御部71は、ポーリング要求を生成する際に、収集情報テーブル81を参照する。収集情報テーブル81に処理結果が記録されている場合、ポーリング制御部71は、処理結果を含むポーリング要求を生成する。ポーリング制御部71は、生成したポーリング要求を、送信部62を介して、制御サーバ30に送信する。なお、ポーリング制御部71は、ポーリング要求に含めた処理結果を収集情報テーブル81から削除する。
図5は、制御サーバ30と通信装置60のハードウェア構成の例を説明する図である。制御サーバ30と通信装置60のいずれも、プロセッサ101、メモリ102、バス103、記憶装置104、回線インタフェース105を備え、オプションとして、媒体駆動装置を備えてもよい。プロセッサ101は、任意のプロセッサとすることができ、例えば、CPU(Central Processing Unit)とすることができる。メモリ102は、RAM(Random Access Memory)とROM(Read Only Memory)を備えており、プロセッサ101での処理に使用される情報やプロセッサ101で得られた情報などを記録する。また、メモリ102や記憶装置104は、プロセッサ101が実行するプログラムを記憶する。回線インタフェース105は、ネットワークに接続し、他の装置との通信のための処理を行う。バス103は、プロセッサ101、メモリ102、記憶装置104、回線インタフェース105を、互いにデータを入出力可能になるように接続する。媒体駆動装置は、メモリ102や記憶装置104のデータを、コンピュータが読み込み可能な可搬記憶媒体に出力でき、可搬記憶媒体から、プログラムやデータを読み出すことができる。
制御サーバ30において、通信部31は、回線インタフェース105とプロセッサ101によって実現される。制御部40は、プロセッサ101によって実現される。さらに、記憶部50は、メモリ102と記憶装置104によって実現される。
通信装置60において、通信部61は回線インタフェース105とプロセッサ101によって実現される。制御部70は、プロセッサ101によって実現される。メモリ102と記憶装置104は、記憶部80として動作する。
<第1の実施形態>
図6は、設定要求と設定情報テーブル52の例を説明する図である。以下、ユーザ端末5から制御サーバ30に対して送信された設定要求により、通信装置60a〜60fを含むネットワークN1での設定処理が行われる場合を例として説明する。ネットワークN1では、データの送受信に使用される接続を実線で示している。例えば、通信装置60aは通信装置60b〜60dに接続されている。なお、制御サーバ30が保持するトポロジ情報54には、ネットワークN1に示すとおりの通信装置60の接続状況が記録されている。図6には制御サーバ30を図示していないが、制御サーバ30は、通信装置60a〜60fの各々と、制御回線を用いた通信が可能であるとする。
通信装置60の各々には、各通信装置60を識別するための装置IDが設定されている。以下の説明では、通信装置60aの装置IDはA、通信装置60bの装置IDはB、通信装置60cの装置IDはC、通信装置60dの装置IDはD、通信装置60eの装置IDはE、通信装置60fの装置IDはFであるとする。図を見やすくするために、ネットワークN1では、各通信装置60を表わす四角中に、括弧書きでその通信装置60の装置IDを示す。
以下の説明では、いずれの通信装置60による処理であるかを分かりやすくするために、符号の末尾に処理を実行する通信装置60の符号の末尾と同じアルファベットを付けて記載することがある。例えば、ポーリング制御部71aは通信装置60a中のポーリング制御部71であり、ポーリング制御部71bは通信装置60b中のポーリング制御部71である。さらに、以下の説明では、テーブルの番号の後にアンダースコアに数字を続けて、テーブルの更新状態などを説明することもある。
制御サーバ30の受信部33は、ユーザ端末5から設定要求を受信すると、要求受付部41に出力する。ここで、設定要求は、通信装置60aから通信装置60fに至る通信経路と冗長経路を設定することであるとする。要求受付部41は、設定要求を識別する際に使用する設定要求IDを生成する。この例では、要求受付部41は、設定要求ID=1を生成したとする。要求受付部41は、取得した設定要求と設定要求IDの組み合わせを設定要求情報51として格納すると共に、生成部42に出力する。
生成部42は、設定要求と設定要求IDを取得すると、設定要求で要求されている経路を計算する。生成部42は、経路計算の際に、適宜、ネットワークN1のトポロジ情報54を使用するものとする。図6の例では、生成部42は、通信装置60aから通信装置60fに至る通信経路として経路R1を計算し、通信装置60aから通信装置60fに至る冗長経路として経路R2を計算したとする。経路R1は、通信装置60aから通信装置60b、通信装置60eを介して、通信装置60fに至る経路である。一方、経路R2は、通信装置60aから通信装置60c、通信装置60dを介して、通信装置60fに至る経路である。
生成部42は、計算した通信経路と冗長経路を生成するために、各通信装置60に設定する情報を設定情報テーブル52に格納する。設定情報テーブル52は、設定要求ID、オーダID、装置ID、設定、オーダ状態を含む。設定情報テーブル52_1では、設定される経路と設定情報の設定先の装置の組み合わせごとに1つのエントリが生成されている。オーダIDは各エントリの識別に使用される。装置IDは、エントリ中の設定情報の設定先となる通信装置60に割り当てられた装置IDである。設定は、エントリ中の装置IDで識別される通信装置60に設定される設定情報である。
例えば、オーダID=100のエントリの情報は、経路R1を生成するための通信装置60a(装置ID=A)への設定内容である。経路R1による通信では、通信装置60aは通信装置60f宛のパケットを通信装置60bに転送することになる。そこで、オーダID=100での設定内容は、「F(通信装置60f)宛のパケットの転送先をB(通信装置60b)に設定」となる。生成部42が通信経路の計算をした段階では、設定情報を通信装置60aに通知していないので、オーダ状態は「未処理」に設定される。また、オーダID=100は設定要求ID=1に対応付けられている。
オーダID=101〜105の設定も同様に経路情報を表わしている。例えば、オーダID=101のエントリは、通信装置60a(A)において、通信装置60f(F)宛てのパケットの転送に用いる冗長経路での転送先を通信装置60c(C)に設定することを表わす。オーダID=102のエントリは、通信装置60b(B)において、通信装置60f(F)宛てのパケットの転送先を通信装置60e(E)に設定することを表わす。オーダID=103のエントリは、通信装置60e(E)において、通信装置60f(F)宛てのパケットの転送先を通信装置60f(F)に設定することを表わす。オーダID=104のエントリは、通信装置60c(C)において、通信装置60f(F)宛てのパケットの転送先を通信装置60d(D)に設定することを表わす。オーダID=105のエントリは、通信装置60d(D)において、通信装置60f(F)宛てのパケットの転送先を通信装置60f(F)に設定することを表わす。従って、経路R1の生成の際に使用される情報は、オーダID=100、102、103の設定情報である。一方、冗長経路R2の生成の際に使用される情報は、オーダID=101、104、105の設定情報である。
オーダ状態は、設定情報の設定先への設定の要求状態や設定先の通信装置60での設定結果などを表わす。オーダ状態は、「未処理」、「処理中」、「処理済」のいずれかの値を取るものとする。オーダ状態=未処理は、エントリ中の設定情報が設定先の通信装置60に通知されていないことを表わす。オーダ状態=処理中は、エントリ中の設定情報を設定先の通信装置60に宛てたパケットに含めて送信したが、処理結果が制御サーバ30に報告されていないことを表わす。オーダ状態=処理済は、エントリ中の設定情報について、設定先の通信装置60から設定の完了が通知されたことを表わす。
図7は、ポーリング要求とポーリング応答のフォーマットの例を説明する図である。図7中のF1は、通信装置60から制御サーバ30に送信されるポーリング要求のフォーマットの例である。ポーリング要求は、IP(Internet Protocol)ヘッダ、TCP(Transmission Control Protocol)ヘッダ、ポーリング要求の送信元の通信装置60に割り当てられた装置IDを含む。さらに、ポーリング要求には、設定結果が含められ得る。設定結果は、以前に通信装置60に対して送信された設定情報の設定結果と、処理対象となった設定情報の識別に用いられる情報の組み合わせである。処理対象となった設定情報は、オーダIDと設定要求IDの組合せで識別されるものとする。通信装置60がポーリング要求を送信する際に、制御サーバ30に処理結果を通知していない設定情報がある場合、ポーリング要求に設定結果が含められる。一方、ポーリング要求を送信する際に、制御サーバ30に処理結果を通知していない設定情報を有していない場合、通信装置60は、ポーリング要求に設定結果を含めない。
例えば、通信装置60bは、ポーリング要求を送信する際に、これまでに制御サーバ30から通知された設定情報の全てについて、処理結果を制御サーバ30に通知しているとする。この場合、通信装置60bは、F2に示すように、設定結果を含まないポーリング要求を送信する。
一方、設定要求ID=1とオーダID=102の組合せで特定される設定情報が通信装置60bで処理された後、処理結果を通知していない状態のときに、通信装置60bがポーリング要求を送信しようとしたとする。この場合、通信装置60bは、F3に示すように、設定要求ID=1とオーダID=102の組合せで特定される設定情報の設定結果を、ポーリング要求に含める。なお、F3の例では、通信装置60bにおいて、設定要求ID=1とオーダID=102の組合せで特定される設定情報の設定が成功している。
F4は、制御サーバ30から通信装置60に送信されるポーリング応答のフォーマットの例である。ポーリング応答は、IPヘッダ、TCPヘッダ、設定内容と設定内容の識別に使用される情報が含められる。設定内容は、ポーリング応答の宛先となる通信装置60の設定に使用される設定情報である。図7に示すポーリング応答では、設定内容の識別に使用される情報として、オーダIDと設定要求IDの組合せが使用されるものとする。
F5は、ルーティングテーブルの変更により、装置ID=F宛のパケットを装置ID=Eの装置に転送することが、通信装置60bに対する設定情報として通知される場合のポーリング応答の例である。さらに、F5に示すポーリング応答には、通信装置60bに通知される設定情報が設定要求ID=1、オーダID=102の組合せで特定される設定情報であることも含められている。
なお、図7のF4とF5には、設定要求IDとオーダIDの1つの組み合わせに対する設定情報がポーリング応答に含まれている場合を例としているが、設定要求IDとオーダIDの複数の組み合わせに対する設定情報が1つのポーリング応答に含まれても良い。同様に、1つのポーリング要求には、複数の設定情報についての設定結果が含まれていても良い。
以下、第1の実施形態での通信の例を、設定情報の決定後にポーリング要求が送信された場合、設定情報の決定前にポーリング要求が送信された場合、ポーリング応答の受信に失敗した場合の3つのケースに分けて説明する。なお、いずれの場合でも、図6を参照しながら説明したように、通信装置60aから通信装置60fに至る通信経路と冗長経路の設定が要求された場合を例とする。
(1)設定情報の決定後にポーリング要求が送信された場合
図8は、ポーリング要求を用いた設定処理の例を説明するシーケンス図である。図9は、設定情報テーブル52の例を説明する図である。以下、図8と図9を参照しながら、制御サーバ30と通信装置60の各々で行われる処理の例を説明する。なお、図8では、図を見やすくするために、複数の通信装置60のうち、通信装置60bだけを示しているが、ネットワークN1中にはその他の通信装置60も含まれている。
ステップS1において、ユーザ端末5から設定要求が制御サーバ30に送信される。制御サーバ30中の受信部33は、設定要求を受信する。生成部42は、設定要求で要求された通信経路を生成するために使用する設定情報を求める。生成部42は、設定要求に応じて求めた設定を設定情報テーブル52に登録する(ステップS2)。ここでは、図6を参照しながら説明した処理が生成部42によって行われたため、設定情報テーブル52は、設定情報テーブル52_1(図6)の通りになったとする。要求受付部41は、設定要求に対する応答(要求受付応答)を生成し、送信部32を介して、ユーザ端末5に要求受付応答を送信する(ステップS3)。なお、要求受付応答には、制御サーバ30が設定要求を受信したことがユーザ端末5で認識される任意の情報要素が用いられ得る。
その後、通信装置60b中の判定部73bが、通信装置60bでの処理負荷は、通信装置60bがパケットを受信可能な程度であると判定したとする。判定部73bは、ポーリング制御部71bに判定結果を通知する。ポーリング制御部71bは、制御サーバ30に宛てて、ポーリング要求を生成する。このとき、通信装置60bは、制御サーバ30に未通知の設定結果を保持していないとする。すると、ポーリング制御部71bは、設定結果を含まないポーリング要求を生成する。図8の例では、ポーリング制御部71bは、図7のF2に示すポーリング要求を生成したとする。ポーリング制御部71bは、送信部62bを介して、ポーリング要求を制御サーバ30に送信する(ステップS4)。
制御サーバ30の受信部33は、ポーリング要求を受信すると、ポーリング要求をポーリング制御部43に出力する。ポーリング制御部43は、通信装置60bから送信されたポーリング要求を取得すると、通信装置60bに対応付けられた設定情報であって、設定処理が完了していない情報が設定情報テーブル52_1(図6)に含まれているかを判定する。設定処理が完了しているかの判定には、オーダ状態の値が使用される。このとき、オーダ状態=処理済の場合、設定処理が完了していると判定される。設定情報テーブル52_1では、設定要求ID=1、オーダID=102の情報が、装置ID=Bに対応付けられており、オーダ状態=未処理に設定されている。そこで、ポーリング制御部43は、設定要求ID=1、オーダID=102の情報を含めたポーリング応答を、通信装置60b宛に生成する。すなわち、通信装置60b宛てに、ルーティングテーブルにおいて、通信装置60f(F)宛てのパケットの転送先を通信装置60e(E)に設定することを設定情報として通知するポーリング応答が生成される。さらに、ポーリング応答には、通知している設定が設定要求ID=1、オーダID=102で特定される情報であることも含められる。従って、ポーリング制御部43は、図7のF5に示すポーリング応答を生成する。ポーリング制御部43は、生成したポーリング応答を、送信部32を介して、通信装置60bに送信する(ステップS5)。
ポーリング応答の生成が終わると、ポーリング制御部43は、設定情報テーブル52に、設定要求ID=1、オーダID=102の情報が処理中であることを記録する(ステップS6)。
図9の設定情報テーブル52_2は、設定情報テーブル52の変更例である。設定情報テーブル52_2は、設定情報テーブル52_1中の設定要求ID=1、オーダID=102のエントリのオーダ状態を、ポーリング制御部43が「処理中」に設定した場合の例である。
通信装置60bの受信部63bは、ステップS5において制御サーバ30から送信されたポーリング応答を受信する。ポーリング制御部71bは、制御サーバ30から送信されたポーリング応答を取得し、ポーリング応答中に設定情報が含まれているかを判定する。図8の例では、ポーリング応答中に設定情報が含まれているので、ポーリング制御部71bは、設定情報を設定処理部72bに通知する。設定処理部72bは、ポーリング制御部71bから取得した情報を用いて設定処理を行う(ステップS7)。この例では、通信装置60b宛のポーリング応答に含められている設定情報は、ルーティングテーブルを更新することにより、通信装置60f(F)宛てのパケットの転送先を通信装置60e(E)に設定することである。そこで、設定処理部72bは、通信装置60bが転送処理に使用するルーティングテーブルを変更することにより、通信装置60f(F)宛てのパケットの転送先を通信装置60e(E)に設定する。設定処理が終わると、設定処理部72bは、処理結果と処理に使用した情報を収集情報テーブル81bに記録する。従って、収集情報テーブル81bには、設定要求ID=1、オーダID=102の設定情報の設定が完了したことが記録される。
ステップS4でのポーリング要求の送信から所定の期間が経過した時点で、通信装置60bでの処理負荷は、通信装置60bが制御サーバ30からパケットを受信可能な程度であると判定されているとする。すると、ポーリング制御部71bは、制御サーバ30に宛てて、ポーリング要求を生成する。このとき、ポーリング制御部71bは、収集情報テーブル81bに含まれている処理結果を、ポーリング要求に含める。このため、ポーリング制御部71bは、設定要求ID=1、オーダID=102の設定情報の設定が完了したことを設定結果として含むポーリング要求を生成する。生成されたポーリング要求は、図7のF3に示す通りであるとする。ポーリング制御部71bは、送信部62bを介して、ポーリング要求を制御サーバ30に送信する(ステップS8)。
制御サーバ30のポーリング制御部43は、受信部33を介して、ポーリング要求を取得する。ポーリング制御部43は、通信装置60bから送信されたポーリング要求を取得すると、ポーリング要求に設定結果が含まれているかを判定する。ステップS8で送信されたポーリング要求(図7のF3)には、設定要求ID=1、オーダID=102の設定情報の設定が完了したことを示す設定結果が含まれている。そこで、ポーリング制御部43は、設定結果を用いて、設定情報テーブル52_2(図9)を変更する。すなわち、設定要求ID=1、オーダID=102の設定が完了したことを、設定情報テーブル52に記録する(ステップS9)。
図9を参照しながら、ステップS9の処理例を説明する。設定情報テーブル52_2には、設定要求ID=1、オーダID=102のエントリでは、オーダ状態が「処理中」に設定されている。ポーリング制御部43は、設定要求ID=1、オーダID=102の設定条件についての設定の完了が通知されたので、このエントリ中のオーダ状態を「処理済」に変更する。このため、設定情報テーブル52_2は、設定情報テーブル52_3に示すように更新される。
さらに、制御サーバ30中のポーリング制御部43は、ポーリング応答を送信するタイミングを決定するために、通信装置60bが設定対象となっている設定情報で、処理の完了が確認されていない情報があるかを判定する。すなわち、ポーリング制御部43は、通信装置60b宛でオーダ状態=処理済となっていない設定情報が、設定情報テーブル52_3(図9)に含まれているかを判定する。設定情報テーブル52_3には、通信装置60b宛の設定情報であって、処理の完了が確認されていない情報は含まれていない。そこで、ポーリング制御部43は、新たに通信装置60b宛の設定情報が発生した場合にポーリング応答に設定情報を含めて通信装置60bに送信するために、通信装置60b宛のポーリング応答の送信タイミングを遅らせる。以後の処理を、図10を参照しながら説明する。なお、ポーリング制御部43は、通信装置60bへのポーリング応答を遅らせていることを、ポーリング受付中テーブル53中に記録している。
図10は、ポーリング要求を用いた設定処理の例を説明するシーケンス図である。図10でも、図を見やすくするために、制御サーバ30の制御対象の通信装置60のうちの一部を示している。図10のシーケンス図は図8のシーケンス図で説明したステップS8以降の処理の例である。図8、図9を参照しながら説明したように、ステップS8でのポーリング要求の受信の際に、制御サーバ30は、通信装置60b宛に通知する設定情報を有していない。そこで、ポーリング制御部43は、通信装置60b宛のポーリング応答の送信タイミングを遅らせることを決定する。ポーリング応答の送信タイミングは、ポーリング要求の受信から所定期間が経過する時刻と、通信装置60b宛の新たな設定が得られた時刻の何れか早い時刻まで遅らせられる。
一方、通信装置60aにおいて、通信装置60aの処理負荷がパケットを受信可能な程度であると判定されたため、ポーリング制御部71aは、制御サーバ30宛てに、設定結果を含まないポーリング要求を生成したとする。ポーリング制御部71aは、送信部62aを介して、ポーリング要求を制御サーバ30に送信する(ステップS21)。
制御サーバ30中のポーリング制御部43は、通信装置60aから送信されたポーリング要求を、受信部33を介して取得する。ポーリング要求に設定結果が含まれていないので、ポーリング制御部43は、この時点では、設定情報テーブル52を更新しない。ポーリング制御部43は、設定情報テーブル52_3(図9)を参照して、通信装置60a宛であり、かつ、オーダ状態が未処理か処理中の設定情報があるかを判定する。設定情報テーブル52_3の例では、設定要求ID=1、オーダID=100の設定情報と、設定要求ID=1、オーダID=101の設定情報が未処理であり、設定先が通信装置60aである。そこで、ポーリング制御部43は、これらの情報を含めたポーリング応答を通信装置60a宛てに生成する。ポーリング制御部43は、送信部32を介して、ポーリング応答を通信装置60aに送信する(ステップS22)。
ステップS23において、ポーリング制御部43は、設定要求ID=1、オーダID=100の設定情報と、設定要求ID=1、オーダID=101の設定情報が処理中であることを、設定情報テーブル52に記録する。このとき行われる処理は、図9を参照しながら説明した処理と同様である。すなわち、ポーリング応答に含まれている設定情報を格納したエントリ中のオーダ状態が「処理中」に設定される。
一方、ポーリング応答を受信した通信装置60a中の設定処理部72は、制御サーバ30から通知された設定情報の設定処理を行う(ステップS24)。ステップS24で行われる処理の詳細は、図8のステップS7を参照しながら説明した処理と同様である。
制御サーバ30において、ポーリング制御部43は、ポーリング受付中テーブル53にポーリング応答を遅らせていることが記録されている各通信装置60について、その通信装置60から受信したポーリング要求の受信時刻からの経過時間を計測している。図10の例では、通信装置60bへのポーリング応答を遅らせていることがポーリング受付中テーブル53に記録されているので、ポーリング制御部43は、最後に通信装置60bから受信したポーリング要求の受信時刻からの経過時間を計測する。最後に通信装置60bから受信したポーリング要求の受信時刻からの経過時間が所定の期間に達しても、新たに通信装置60bに通知する設定情報が生成されていない場合、ポーリング制御部43は、設定情報を含まないポーリング応答を生成する。ポーリング制御部43は、生成したポーリング応答を、送信部32経由で通信装置60bに送信する(ステップS25)。
ステップS25以降も、制御サーバ30は、通信装置60aや通信装置60b以外の通信装置60との間で、ポーリング要求の受信やポーリング応答の送信を行う。このため、図8〜図10を参照しながら説明した処理と同様の処理により、制御サーバ30は、各通信装置60に設定情報を通知できると共に、各通信装置60での設定情報の設定結果を取得することができる。
制御サーバ30中の要求受付部41は、定期的に設定情報テーブル52を参照することにより、設定要求IDごとに、その設定要求IDに対応付けられている全てのエントリでのオーダ状態が「処理済」になっているかを判定している。その後、制御サーバ30が通信装置60a〜60eの各々へ設定情報を通知し、通信装置60a〜60eの各々から設定完了の通知を含むポーリング要求を受信したとする。この場合、要求受付部41は、設定要求ID=1に対応付けられている全てのエントリでのオーダ状態が「処理済」になっていることを検出する(ステップS26)。すると、要求受付部41は、設定要求ID=1の設定要求で要求された設定処理が完了したと判定する。要求受付部41は、設定要求情報51を参照することにより、設定要求ID=1の設定要求の要求元のユーザ端末5を特定する。さらに、要求受付部41は、要求された設定が完了したことを通知する通知(設定要求結果通知)を、送信部32経由でユーザ端末5に送信する(ステップS27)。設定要求結果通知を受信したユーザ端末5では、要求した設定処理が終わったと認識する。
このように、ネットワークN1中の各通信装置60には、その通信装置60が設定情報を受信可能な状況にあるときに、ポーリング応答を用いて設定情報が通知される。このため、通信装置60での処理負荷が高いために通信装置60が設定情報の受信に失敗することや、設定情報の通知の失敗による再送処理の発生を予防することができる。
(2)設定情報の決定前にポーリング要求が送信された場合
次に、ユーザからの設定要求前など、設定情報が決定される前にポーリング要求が送信された場合の処理の例を説明する。設定情報が決定される前にポーリング要求が送信された場合、設定情報を決定した後の早い時点で、ポーリング要求の送信元に設定情報を通知するために、ポーリング受付中テーブル53が使用される。
図11は、ポーリング受付中テーブル53の例を説明する図である。ポーリング受付中テーブル53は、ポーリング要求を受信したときに、ポーリング要求の送信元に通知する設定情報が無いなどの理由により、ポーリング応答の送信タイミングを遅らせる場合に使用される。図11に示すポーリング受付中テーブル53は、送信タイミングが遅らせられているポーリング応答の宛先の装置IDと、ポーリング応答の処理を行っているスレッドのIDを含む。なお、ポーリング応答の処理を行っているスレッドは、ポーリング制御部43の一部として動作している。例えば、通信装置60c(装置ID=C)から制御サーバ30がポーリング要求を受信したとき、ポーリング制御部43として動作しているスレッドID=100のスレッドがポーリング要求を処理したとする。すると、ポーリング受付中テーブル53には、図11に示すように、装置ID=Cに対応付けて、スレッドID=100が記録される。
図12は、ユーザ端末5からの設定要求前に、ポーリング要求が行われた場合の処理の例を説明するシーケンス図である。なお、図12は一例であり、処理の手順は実装に応じて変更され得る。例えば、ステップS34とステップS35の順序は互いに変更されても良い。また、ステップS36とステップS37の処理の順序も互いに変更され得る。
ステップS30において、通信装置60cが制御サーバ30からのパケットを受信できる状態になると、ポーリング要求を送信する。なお、このときには、ユーザ端末5からの設定要求がまだ送信されていなかったとする。このため、通信装置60cには、設定情報が通知されておらず、通信装置60cが送信するポーリング要求には設定結果が含まれていない。通信装置60cから送信されたポーリング要求を制御サーバ30が受信した時点でも、制御サーバ30は、ユーザ端末5から設定要求を受信していないとする。すると、通信装置60cへ通知する設定情報が無いため、ポーリング制御部43は、通信装置60cへのポーリング応答を遅らせる(応答保留)ことを決定する(ステップS31)。ポーリング制御部43は、通信装置60cの装置ID(C)を、通信装置60cからのポーリング要求を処理しているスレッドIDに対応付けて、ポーリング受付中テーブル53に記録する。
ステップS32〜S34の処理は、図8を参照しながら説明したステップS1〜S3の処理と同様である。なお、図12の例でも、設定要求に対する処理によって、設定情報テーブル52_1(図6)が得られたとする。
ポーリング制御部43は、ポーリング受付中テーブル53中に記録されている通信装置60に対して通知する設定情報が設定情報テーブル52_1に含まれているかを判定する。設定情報テーブル52_1には、通信装置60c宛の設定情報として、設定要求ID=1、オーダID=104のエントリに、通信装置60f(F)宛てのパケットの転送先を通信装置60d(D)に設定することが記録されている。そこで、ポーリング制御部43は、スレッドID=100のスレッドにより、通信装置60c宛のポーリング応答を生成する。通信装置60c宛のポーリング応答には、設定情報として、通信装置60f(F)宛てのパケットの転送先を通信装置60d(D)に設定することが記録され、設定情報が設定要求ID=1とオーダID=104の組合せで特定されることも記録される。ポーリング制御部43は、生成したポーリング応答を、通信装置60cに送信する(ステップS35)。
ポーリング制御部43は、通信装置60c宛のポーリング応答を送信すると、ポーリング受付中テーブル53から、通信装置60cに関するエントリを削除する(ステップS36)。この処理により、通信装置60c宛のポーリング応答の応答保留状態が解消される。さらに、ポーリング制御部43は、設定要求ID=1かつオーダID=104の情報の設定処理中であることを、設定情報テーブル52に記録する(ステップS37)。
通信装置60cの受信部63cは、制御サーバ30からのポーリング応答を受信する。ポーリング応答の受信に伴い、設定処理部72cはポーリング応答で通知された設定情報の設定処理を行う(ステップS38)。図8のステップS7で説明した処理と同様の処理により、収集情報テーブル81cには、設定処理の結果等が記録される。
その後、通信装置60cから再度、ポーリング要求を制御サーバ30に送信するタイミングになったとする。このとき、ポーリング制御部71cは、設定要求ID=1かつオーダID=104の情報の設定が完了したことを、ポーリング要求に含める。送信部62cは、ポーリング要求を制御サーバ30に送信する(ステップS39)。
制御サーバ30中のポーリング制御部43は、ポーリング要求を受信すると、設定要求ID=1かつオーダID=104の情報の設定が完了したことを、設定情報テーブル52に記録する(ステップS40)。ステップS40の処理により、設定要求ID=1かつオーダID=104のエントリ中のオーダ状態は「処理済」となる。この時点では、通信装置60cへ通知する対象となる設定情報が無いため、ポーリング制御部43は、通信装置60cへのポーリング応答を遅らせることを決定する(ステップS41)。なお、通信装置60cへ通知する対象となる設定情報は、オーダ状態が未処理か処理中の情報である。通信装置60c宛のポーリング応答を保留するため、ポーリング制御部43は、通信装置60cの装置IDと、通信装置60cからのポーリング要求を処理しているスレッドのスレッドIDをポーリング受付中テーブル53に記録する。
ステップS39で受信したポーリング要求の受信から所定の期間中に通信装置60c宛の設定情報が発生しない場合、ポーリング制御部43は、通信装置60cからのポーリング要求を処理したスレッドにより、設定情報を含まないポーリング応答を生成する。ポーリング制御部43は、送信部32を介して、ポーリング応答を通信装置60cに送信する(ステップS42)。
このように、ポーリング要求が送信されたときにポーリング要求の送信元の通信装置60に設定する情報が無い場合、制御サーバ30は、ポーリング応答を保留する。また、ポーリング要求の送信元の通信装置60宛の設定情報を生成すると、設定情報を含めてポーリング応答を送信する。このため、経路設定前にポーリング要求が行われた場合でも、制御サーバ30と通信装置60の間で送受信される制御パケットの数を増加させずに、設定情報を通信装置60に通知できる。
(3)ポーリング応答の受信に失敗した場合
通信装置60での処理負荷が制御サーバ30からのパケットを受信可能な程度であっても、通信装置60と制御サーバ30の間の通信経路に輻輳が発生した場合などに、ポーリング応答の受信に失敗する可能性もある。そこで、1回目のポーリング応答の受信が失敗した場合の処理の例を、図13を参照しながら説明する。
図13は、ポーリング応答の受信に失敗した場合の処理の例を説明するシーケンス図である。ステップS51〜S55の処理は、図8を参照しながら説明したステップS1〜S5と同様である。図13の例でも、設定要求に対する処理によって、ステップS52では、設定情報テーブル52_1(図6)が得られたとする。また、制御サーバ30から通信装置60bに送信されるポーリング応答には、設定情報テーブル52_1(図6)中の設定要求ID=1、オーダID=102のエントリの情報が含められているとする。
しかし、ステップS55で送信されたポーリング応答は、制御サーバ30と通信装置60bの間の通信経路に輻輳が発生したことにより、通信装置60bに到達しなかったとする。一方、制御サーバ30では、通信装置60bにポーリング応答が到達したかに関係なく、設定要求ID=1、オーダID=102のエントリの情報が設定処理中であることが設定情報テーブル52に記録される(ステップS56)。このため、ステップS56の処理により、制御サーバ30は、設定情報テーブル52_2(図9)を保持することになる。
通信装置60bは、ステップS54で送信したポーリング要求に対するポーリング応答を待ち合わせるが、ポーリング応答を待ち合わせる期間が経過(タイムアウト)しても、ポーリング応答を受信しなかったとする(ステップS57)。すると、ポーリング制御部43bは、ポーリング要求を再度、制御サーバ30に送信する(ステップS58)。なお、通信装置60bには設定情報が通知されていないので、ステップS58で送信されるポーリング要求には、設定結果が含まれていない。
制御サーバ30中のポーリング制御部43は、通信装置60bから送信されたポーリング要求を、受信部33を介して取得する。ポーリング要求に設定結果が含まれていないので、ポーリング制御部43は、この時点では設定情報テーブル52を更新しない。ポーリング制御部43は、設定情報テーブル52_2(図9)を参照して、通信装置60b宛の設定情報のうち、未処理か処理中の設定情報があるかを判定する。設定情報テーブル52_2の例では、設定要求ID=1、オーダID=102の設定情報が処理中である。そこで、ポーリング制御部43は、設定要求ID=1、オーダID=102の設定情報を含めたポーリング応答を通信装置60bに送信する(ステップS59)。
ステップS59で送信されたポーリング応答は通信装置60bに到達したとする。すると、ステップS60では、図8のステップS7を参照しながら説明した処理と同様に設定処理が行われる。ステップS61とS62の処理は、図8のステップS8、S9を参照しながら説明した処理と同様である。このため、制御サーバ30が保持する設定情報テーブル52は、設定情報テーブル52_3(図9)に示す状態になる。ステップS61で通信装置60bからポーリング要求が送信されたときに、通信装置60b宛に送信する設定情報が無いので、ポーリング制御部43は、通信装置60b宛のポーリング応答を保留する(ステップS63)。その後、所定期間中に通信装置60b宛の設定情報が生成されない場合、ポーリング制御部43は、設定情報を含まないポーリング応答を通信装置60bに送信する(ステップS64)。
このように、ポーリング制御部43は、設定情報テーブル52中でオーダ状態が未処理か処理中に設定されている情報を、ポーリング応答に含めてポーリング要求の送信元に送信する。このため、通信装置60がポーリング応答の受信に失敗しても、次のポーリング要求に対する応答が通信装置60に到達すれば、設定処理が行われる。また、いずれのポーリング応答も、通信装置60からのポーリング要求に対する応答であるので、通信装置60での処理負荷が高くないときに送信される。このため、通信装置60での処理負荷が高いことが原因でポーリング応答が破棄されるおそれは無い。このため、制御サーバ30から通信装置60へのパケットの再送が発生しにくくすることができる。従って、制御サーバ30での処理負荷が増大しにくい。
(4)処理フロー
以下、図14〜図18のフローチャートを参照しながら、制御サーバ30と通信装置60の処理の例を説明する。
図14は、通信装置60がポーリング要求を送信する際の処理の例を説明するフローチャートである。図14では、通信装置60に備えられているCPUの負荷に応じて、判定部73がポーリング要求を送信するかを判定する場合と例として説明する。
判定部73は、通信装置60が備えるCPUの負荷を取得する(ステップS71)。CPU負荷の取得方法は、任意の既知の方法のいずれかを使用するものとする。判定部73は、得られたCPU負荷が閾値情報82中の閾値未満であるかを判定する(ステップS72)。得られたCPU負荷が閾値未満である場合、ポーリング制御部71は、設定処理の結果のうち、制御サーバ30に未通知のものがあるかを判定する(ステップS72でYes、ステップS73)。制御サーバ30に未通知の結果がある場合、ポーリング制御部71は、未通知の設定処理の結果を取得する(ステップS73でYes、ステップS74)。ポーリング制御部71は、取得した結果を設定結果として含むポーリング要求を生成し、制御サーバ30に向けて送信する(ステップS75)。
一方、制御サーバ30に未通知の結果がない場合、ポーリング制御部71は、設定結果を含まないポーリング要求を生成し、制御サーバ30に向けて送信する(ステップS73でNo、ステップS76)。また、ステップS72でCPU負荷が閾値以上である場合、判定部73は処理を終了する(ステップS72でNo)。
図15は、通信装置60がポーリング応答を受信した際の処理の例を説明するフローチャートである。受信部63は、ポーリング応答を受信する(ステップS81)。ポーリング制御部71は、ポーリング要求を用いて制御サーバ30に通知した設定結果を、収集情報テーブル81から削除する(ステップS82)。ポーリング制御部71は、ポーリング応答中に設定情報が含まれているかを判定する(ステップS83)。ポーリング応答中に設定情報が含まれている場合、設定処理部72は、設定情報に沿って設定処理を行う(ステップS83でYes、ステップS84)。設定処理部72は、設定処理の結果を収集情報テーブル81に記録する(ステップS85)。一方、ポーリング応答中に設定情報が含まれていない場合、ポーリング制御部71は処理を終了する(ステップS83でNo)。
図16は、制御サーバ30が設定要求を受信したときの処理の例を説明するフローチャートである。受信部33は、ユーザ端末5から設定要求を受信する(ステップS91)。生成部42は、設定要求を解析して、設定処理の対象となる通信装置60と、各通信装置60への設定内容を特定する(ステップS92)。生成部42は、特定した情報を、設定情報テーブル52に記録する(ステップS93)。要求受付部41は、ユーザ端末5に要求受付応答を送信する(ステップS94)。ポーリング制御部43は、ポーリング受付中テーブル53を用いて、ポーリング応答を保留している通信装置60の情報を取得する(ステップS95)。ポーリング制御部43は、取得した情報を用いて、ポーリング応答を保留中の通信装置60に設定する設定情報があるかを判定する(ステップS96)。ポーリング応答を保留中の通信装置60に設定する設定情報がある場合、ポーリング制御部43は、ポーリング応答を保留中の通信装置60に宛てて、設定情報を含むポーリング応答を生成する(ステップS96でYes)。送信部32は、設定情報を含むポーリング応答を、ポーリング応答の宛先の通信装置60に送信する(ステップS97)。一方、ポーリング応答を保留中の通信装置60に設定する設定情報がない場合、ポーリング制御部43は処理を終了する(ステップS96でNo)。
図17は、制御サーバ30が通信装置60から設定結果を受信したときの処理の例を説明するフローチャートである。受信部33は、通信装置60から設定結果を含むポーリング要求を受信する(ステップS101)。ポーリング制御部43は、設定情報テーブル52中で、設定が完了したエントリのオーダ状態を「処理済」に設定する(ステップS102)。要求受付部41は、設定要求IDに対応付けられた全てのエントリで、オーダ状態が「処理済」であるかを判定する(ステップS103)。全てのエントリで、オーダ状態が「処理済」ではない場合、ステップS101に戻る(ステップS103でNo)。全てのエントリで、オーダ状態が「処理済」の場合、要求受付部41は、ユーザ端末5に、設定要求結果応答を送信する(ステップS103でYes、ステップS104)。なお、ステップS104での設定要求結果応答の宛先は、設定要求IDに対応付けられた設定要求を送信したユーザ端末5であり、要求受付部41は、適宜、設定要求情報51を用いて設定要求結果応答の宛先を特定する。
図18Aと図18Bは、ポーリング要求を受信したときの制御サーバ30の処理の例を説明するフローチャートである。受信部33は、ポーリング要求を受信する(ステップS111)。ポーリング制御部43は、ポーリング要求に設定結果が含まれているかを判定する(ステップS112)。ポーリング要求に設定結果が含まれている場合、ポーリング制御部43bは、設定情報テーブル52を更新する(ステップS112でYes、ステップS113)。ステップS112でNoと判定した場合かステップS113の処理後、ポーリング制御部43は、設定情報テーブル52から、ポーリング要求の送信元に設定する情報で、オーダ状態が「未処理」か「処理中」である情報を抽出する(ステップS114)。ポーリング制御部43は、条件に合う情報が抽出されたかを判定する(ステップS115)。情報が抽出できた場合、抽出した情報のオーダ状態を「処理中」に設定する(ステップS115でYes、ステップS116)。ポーリング制御部43は、抽出した情報を含むポーリング応答を、ポーリング要求の送信元に送信する(ステップS117)。
一方、ポーリング要求の送信元に設定する情報で、オーダ状態が「未処理」または「処理中」である情報が抽出されなかった場合、ポーリング受付中テーブル53に、ポーリング要求の送信元の情報を設定する(ステップS115でNo、ステップS118)。なお、このとき、ポーリング受付中テーブル53には、ポーリング要求の送信元の情報に対応付けて、ポーリング制御部43がポーリング要求の処理に使用しているスレッドのIDも記録される。ポーリング制御部43は、ポーリング応答を遅らせる時間を算出する(ステップS119)。ポーリング制御部43は、ポーリング応答を遅らせる時間を、ポーリング要求の処理に使用されているスレッドに記憶させる。ポーリング要求の処理に使用されているスレッドは、ポーリング要求の受信からの経過時間を計測しながら、ポーリング応答を送信するタイミングまで待機する。
ポーリング制御部43は、受信部33がユーザ端末5からの設定要求を受信しているかを判定する(ステップS120)。受信部33がユーザ端末5からの設定要求を受信している場合、生成部42は、設定要求を処理することにより、設定情報テーブル52を更新する(ステップS121)。ポーリング制御部43は、更新後の設定情報テーブル52中に、ポーリングを遅らせている通信装置60宛ての設定情報があるかを判定する(ステップS122)。ポーリングを遅らせている通信装置60宛ての設定情報が設定情報テーブル52に含まれている場合、設定情報が得られた通信装置60の情報をポーリング受付中テーブル53から削除する(ステップS122でYes、ステップS123)。このとき、ポーリング制御部43は、設定情報が得られた通信装置60宛てのポーリング要求を処理したスレッドを用いて、ポーリング応答を送信することを決定する。その後、ステップS116以降の処理が行われる。
次に、ポーリング応答を遅らせている通信装置60宛ての設定情報が更新後の設定情報テーブル52にない場合(ステップS122でNo)と、設定要求を受信していない場合(ステップS120でNo)に行われる処理について述べる。ポーリング制御部43中の各スレッドは、そのスレッドが処理したポーリング要求の受信からの経過時間が、ポーリング応答を遅延させる期間以上になったか(タイムアウトしたか)を判定する(ステップS124)。スレッドにおいてタイムアウトしていないと判定した場合、そのスレッドで処理されているポーリング応答については、ステップS120以降の処理が行われる(ステップS124でNo)。一方、ポーリング制御部43中のあるスレッドにおいてタイムアウトしたと判定した場合、ポーリング制御部43は、タイムアウトしたと判定したスレッドに対応付けられた情報をポーリング受付中テーブル53から削除する(ステップS125)。さらに、ポーリング制御部43は、タイムアウトしたと判定したスレッドで処理したポーリング要求に対して、設定情報を含まないポーリング応答を送信する(ステップS126)。
このように、第1の実施形態では、通信装置60が設定情報を受信可能な状況にあるときに、ポーリング応答を用いて設定情報が通知される。このため、通信装置60での処理負荷が高いために通信装置60が設定情報の受信に失敗することや、設定情報の通知の失敗による再送処理の発生を予防することができる。さらに、経路の輻輳などによって通信装置60がポーリング応答の受信に失敗しても、通信装置60への設定情報は、次のポーリング要求に対する応答で通信装置60に通知される。なお、次のポーリング要求も通信装置60が設定情報を受信可能な状況にあるときに送信されるので、通信装置60が設定情報を受信可能な状況にあるときに、設定情報を含むポーリング応答が通信装置60で受信される。
従って、第1の実施形態によると、制御サーバ30から通信装置60への設定情報の再送処理が行われる回数を小さくすることができる。さらに、個々の通信装置60での処理状況に応じて、制御サーバ30にポーリング要求が送信されるので、多数の通信装置60からのポーリング要求が同時期に制御サーバ30に集中する可能性が低い。すなわち、第1の実施形態によると、制御サーバ30は、設定対象の通信装置60の各々に対して同時期に設定情報を送信する場合に比べて、単位時間当たりでの制御サーバ30への負荷が高くなりにくい。
このため、設定情報の送信処理に伴って制御サーバ30にかかる単位時間当たりの負荷や、設定情報の再送処理に伴って制御サーバ30にかかる負荷は、小さくなる。従って、1台の制御サーバ30が処理対象とすることができる通信装置60の数は、設定条件が一斉に設定先の装置に通知されるケースに比べて、大きくなる。このため、第1の実施形態によって、ネットワーク中に備える制御サーバ30の数を抑えることもできる。
<第2の実施形態>
第2の実施形態では、装置によって、ポーリング応答の保留時間を変更する場合について説明する。
図19は、応答保留時間の制御例を説明するシーケンス図である。例えば、通信装置60aからのポーリング要求に対してポーリング応答を保留する場合に、T1の期間だけポーリング応答を遅延させることが計算されたとする。また、通信装置60bからのポーリング要求に対してポーリング応答を保留する場合に、ポーリング応答の遅延期間がT2と計算されたとする。さらに、通信装置60c、60dからのポーリング要求に対してポーリング応答を保留する場合に、ポーリング応答の遅延期間がT3と計算されたとする。
この状態で、通信装置60aから制御サーバ30に向けて、設定結果を含まないポーリング要求が送信されとする(ステップS131)。制御サーバ30中のポーリング制御部43は、通信装置60aから送信されたポーリング要求を、スレッド1を用いて処理するとする。スレッド1は、通信装置60aに宛てて送信する設定情報があるかを判定する。通信装置60a宛ての設定情報がないと判定すると、スレッド1は、通信装置60aへのポーリング応答の送信タイミングを遅らせることを決定する。このとき、スレッド1は、通信装置60aからのポーリング要求を受信した時刻から時間T1が経過した時刻か、通信装置60a宛ての設定情報が生成された時刻のいずれか早いほうまで、ポーリング応答の送信を遅らせることを決定する。
ステップS132において、通信装置60bからも制御サーバ30に向けて、設定結果を含まないポーリング要求が送信されたとする。ポーリング制御部43は、通信装置60bから送信されたポーリング要求を、スレッド2を用いて処理するとする。スレッド2は、通信装置60bに宛てて送信する設定情報があるかを判定する。通信装置60b宛ての設定情報がないと判定すると、スレッド2は、通信装置60bへのポーリング応答の送信タイミングを遅らせることを決定する。このとき、スレッド2は、通信装置60bからのポーリング要求を受信した時刻から時間T2が経過した時刻か、通信装置60b宛ての設定情報が生成された時刻のいずれか早いほうまで、通信装置60b宛てのポーリング応答の送信を遅らせることを決定する。
その後、ユーザ端末5からの設定要求が行われなかったため、通信装置60a宛ての設定情報が生成されるよりも前に、通信装置60aからのポーリング要求を受信した時刻から時間T1が経過したとする。すると、スレッド1は、通信装置60a宛てのポーリング応答を送信する(ステップS133)。なお、ポーリング応答の送信の際の処理の詳細は、第1の実施形態と同様である。
通信装置60aから再度、ポーリング要求が制御サーバ30に送信されたとする(ステップS134)。制御サーバ30は、通信装置60aからポーリング要求を受信すると、ステップS131の際の処理と同様の処理を、ポーリング制御部43のスレッド1で行う。従って、スレッド1は、通信装置60aからのポーリング要求を受信した時刻から時間T1が経過した時刻か、通信装置60a宛ての設定情報が生成された時刻のいずれか早い方まで、ポーリング応答の送信を遅らせることを決定する。
通信装置60bについても、通信装置60b宛ての設定情報が生成されるよりも前に、通信装置60bからのポーリング要求を受信した時刻から時間T2が経過したとする。すると、スレッド2は、通信装置60b宛てのポーリング応答の送信を行う(ステップS135)。
通信装置60bは、ポーリング応答を受信後に、再度、制御サーバ30にポーリング要求を送信する(ステップS136)。制御サーバ30は、通信装置60bからポーリング要求を受信すると、ステップS132の際の処理と同様に処理する。従って、ポーリング制御部43中のスレッド2は、通信装置60bからのポーリング要求の受信時刻から時間T2が経過した時刻か、通信装置60b宛ての設定情報が生成された時刻のいずれか早い方まで、ポーリング応答の送信を遅らせることを決定する。
その後も、ユーザ端末5からの設定要求が行われなかったとする。すると、ポーリング制御部43中のスレッド1は、通信装置60aからの最新のポーリング要求の受信時刻から時間T1が経過すると、通信装置60a宛てのポーリング応答を送信する(ステップS137)。同様に、ポーリング制御部43中のスレッド2は、通信装置60bからの最新のポーリング要求の受信時刻から時間T2が経過すると、通信装置60b宛てのポーリング応答を送信する(ステップS138)。
第2の実施形態を参照しながら説明したように、通信装置60ごとにポーリング応答を送信するまでの待ち時間を異なる時間とすると、ポーリング応答の送信時刻が複数の通信装置60の間で重複しづらくなる。その結果、制御サーバ30から通信装置60にポーリング応答を送信するタイミングが、通信装置60によって異なるため、制御サーバ30に一時的に高い負荷がかかることを防止できる。すなわち、通信装置60から制御サーバ30に対して設定情報を問合わせるタイミングを通信装置60によって異なる時間とすることにより、制御サーバ30にかかる処理負荷を平滑化できる。
<第3の実施形態>
第3の実施形態では、仮想サーバや仮想ルータなどの仮想装置を用いて、制御サーバ30が経路を生成する場合について説明する。
図20は、仮想装置が用いられる場合の例を説明する図である。ケースC1は、仮想装置が用いられる場合の、通信装置60と仮想装置の配置の例を示す。ケースC1では、通信装置60aと通信装置60fが制御サーバ30に接続されており、さらに、通信装置60aと通信装置60aが互いに接続されているとする。通信装置60aには、仮想サーバaと仮想ルータb〜dが配置されているとする。一方、通信装置60fには、仮想サーバfと仮想ルータe、仮想ルータg、仮想ルータhが配置されているとする。
ネットワークN11は、通信装置60aと通信装置60fで実現される仮想サーバと仮想ルータによって生成されるネットワークの例である。ネットワークN11において、パケットの送受信が行われるリンクを実線で示している。
ネットワークN11が形成されている状態で、制御サーバ30がユーザ端末5から設定要求を受信したとする。ここで、設定要求によって、仮想サーバaから仮想サーバfに至る経路を設計することが要求されたとする。
制御サーバ30では、要求受付部41は、第1の実施形態と同様に、ユーザ端末5からの設定要求の受付処理を行う。また、生成部42は、第1の実施形態で説明した処理と同様に、トポロジ情報54を用いて、設定対象の経路を計算する。なお、トポロジ情報54には、各通信装置60で実現される仮想装置の種類を識別する情報も含まれているとする。以下、仮想サーバaから仮想サーバfに至る経路として、経路R11が計算されたとする。生成部42は、仮想サーバや仮想ルータへの設定情報を、設定情報の設定対象となる装置を実現する通信装置60に対応付けて、設定情報テーブル52に記録する。
図21は、要求蓄積テーブルの例を説明する図である。図21の例では、仮想サーバaから仮想サーバfに至る経路の生成の設定要求に対して、設定要求ID=2が割り当てられているとする。生成部42は、各仮想装置への設定内容ごとに、オーダIDを割り当て、設定対象の装置を識別する装置IDに対応付けている。さらに、設定内容と、オーダ状態も、設定情報テーブル52のエントリ中に含められている。
例えば、経路R11を実現するためには、仮想サーバaは、仮想サーバf宛てのパケットの転送先を仮想ルータbに設定することになる。ここで、仮想サーバaは、通信装置60aによって実現される。このため、仮想サーバaにおいて仮想サーバf宛てのパケットの転送先を仮想ルータbに設定することは、装置ID=A(通信装置60a)に対応付けて設定情報テーブル52に記録される。
また、経路R11を実現する際には、仮想ルータbは、仮想サーバf宛てのパケットの転送先を仮想ルータcに設定することになる。ここで、仮想ルータbは、通信装置60aによって実現される。このため、仮想ルータbにおいて仮想サーバf宛てのパケットの転送先を仮想ルータcに設定することも、装置ID=A(通信装置60a)に対応付けて設定情報テーブル52に記録される。
さらに、経路R11を実現する際には、仮想ルータcは、仮想サーバf宛てのパケットの転送先を仮想ルータgに設定することになる。ここで、仮想ルータcは、通信装置60aによって実現される。このため、仮想ルータcにおいて仮想サーバf宛てのパケットの転送先を仮想ルータgに設定することも、装置ID=A(通信装置60a)に対応付けて設定情報テーブル52に記録される。
同様に、経路R11を実現する際には、仮想ルータgは、仮想サーバf宛てのパケットの転送先を仮想サーバfに設定することになる。ここで、仮想ルータgは、通信装置60fによって実現される。このため、仮想ルータgにおいて仮想サーバf宛てのパケットの転送先を仮想サーバfに設定することは、装置ID=F(通信装置60f)に対応付けて設定情報テーブル52に記録される。
設定情報テーブル52の生成後の処理は、第3の実施形態でも、第1の実施形態と同様に行われる。すなわち、制御サーバ30が通信装置60からポーリング要求を受信すると、ポーリング要求の送信元を識別する装置IDに対応付けて設定情報テーブル52に記録されている設定情報を含むポーリング応答が、ポーリング要求の送信元に送信される。図21の例では、制御サーバ30は、通信装置60aからポーリング要求を受信すると、オーダID=200〜202の情報をポーリング応答に含めて、通信装置60a宛てに送信する。従って、通信装置60aには、仮想サーバa、仮想ルータb、仮想ルータcの設定情報が送信される。一方、制御サーバ30は、通信装置60fからのポーリング要求への応答の際に、仮想ルータgに設定する情報(オーダID=203)を含める。
各通信装置60は、自装置が実現する仮想サーバや仮想ルータに対する設定処理を、設定処理部72によって行う。ポーリング制御部71は、自装置が実現する仮想サーバや仮想ルータに対する設定処理の結果を、次のポーリング要求に含めて制御サーバ30に通知する。このため、制御サーバ30中のポーリング制御部43がポーリング要求を処理すると、第1の実施形態と同様に、設定情報テーブル52が更新される。従って、全ての設定が終了すると、要求受付部41は、ユーザ端末5に対して設定の終了を通知できる。
このように、仮想ネットワークが設定対象である場合、制御サーバ30は、仮想ネットワーク中の仮想装置を実現する通信装置60に対して、その通信装置60が実現する仮想装置の情報を通知する。このため、仮想ネットワークでの設定処理であっても、通信装置60が受信処理を行うことができる程度の負荷である場合に、制御サーバ30から設定情報を含むパケットが通信装置60に送信される。従って、第1の実施形態と同様に、通信装置60での処理負荷が大きいために通信装置60がパケットの受信に失敗することが防止される。このため、制御サーバ30の処理負荷が抑制できる。
<その他>
なお、実施形態は上記に限られるものではなく、様々に変形可能である。以下にその例をいくつか述べる。
以上の説明で述べたパケットやテーブル中の情報要素は、一例であり、実装に応じて、パケットやテーブルに含められる情報要素は変更されうる。また、トポロジ情報54には、制御対象の通信装置60に割り当てられた装置IDやアドレス等が含められても良い。
第2の実施形態と第3の実施形態が組み合わせて使用されてもよい。この場合、仮想装置に対する設定内容を含むポーリング応答の送信のタイミングの最大の遅延時間は、通信装置60に応じて設定される。
第2の実施形態において、通信装置60のグループごとに、ポーリング応答を遅延可能な期間が決められていてもよい。この場合、通信装置60は、複数のグループに分けられ、各グループについて、ポーリング応答の送信についての最大の遅延時間が決められている。すなわち、ポーリング制御部43は、ポーリング応答を遅延させる場合、ポーリング応答の送信先に対応付けられた期間を特定し、特定した期間までの間はポーリング応答を遅延させることができると判定する。例えば、図19の装置IDと待機時間の対応テーブルが予め制御サーバ30に保持されているとする。この場合は、装置ID=Aのグループ、装置ID=Bのグループ、装置ID=CまたはDのグループの各々に、ポーリング応答を遅延可能な期間が決められていることになる。
このように、グループごとに異なる遅延時間が用いられる場合、ポーリング応答の送信のタイミングが集中しづらく、制御サーバ30での処理負荷が平滑化される。また、予め、通信装置60ごとにその通信装置60から送信されたポーリング応答の送信を遅らせる最大の遅延時間が決められている場合、送信タイミングを遅らせる期間の計算が行われなくてもよいので、ポーリング制御部43での処理を軽減できる。
上述の第1〜第4の実施形態を含む実施形態に関し、さらに以下の付記を開示する。
(付記1)
複数の通信装置を含むネットワークを制御する制御装置であって、
転送経路の設定要求および前記複数の通信装置の各々からパケットを受信可能であることを通知する通知パケットを受信する受信部と、
前記転送経路を設計するとともに、前記複数の通信装置のうちで前記転送経路の生成に使用する通信装置の各々に対して、当該通信装置に設定する設定情報を生成する生成部と、
前記設定情報の各々について、当該設定情報の設定先となる通信装置から当該通信装置がパケットを受信可能であることを通知する通知パケットを受信すると、当該設定情報を含む応答パケットを生成する制御部と、
前記応答パケットを前記設定情報の設定先となる通信装置へ送信する送信部
を備えることを特徴とする制御装置。
(付記2)
前記制御部は、
前記通知パケットの送信元に設定する設定情報が生成されていない場合、前記通知パケットに対する応答を送信するタイミングを遅延可能な期間を特定し、
前記遅延可能な期間が経過するまでに、前記通知パケットの送信元に設定する設定情報が生成されると、前記通知パケットの送信元に設定する設定情報を含めた応答パケットを生成する
ことを特徴とする付記1に記載の制御装置。
(付記3)
前記通知パケットは、前記通知パケットの送信元での設定処理の結果を含み、
前記制御部は、前記通知パケットの送信元に設定する設定情報のうちで、設定処理が終了したことが前記通知パケットで通知されていない情報を、前記応答パケットに含める ことを特徴とする付記1または2に記載の制御装置。
(付記4)
複数の通信装置が複数のグループに分類され、各グループについて、当該グループに属する通信装置に宛てた応答パケットを遅延可能な期間が決定されている場合、前記制御部は、前記通知パケットの送信元を含むグループに対応付けられた期間を、前記通知パケットの送信元に宛てた応答パケットを送信するタイミングを遅延可能な期間として決定する
ことを特徴とする付記2または3に記載の制御装置。
(付記5)
ネットワークを制御する制御装置と通信可能な通信装置であって、
前記通信装置での処理負荷が、前記通信装置に対する設定情報を含むパケットの受信が可能な場合の負荷を表す閾値未満である場合、前記制御装置宛てに、パケットを受信可能であることを通知する通知パケットを生成する制御部と、
前記通知パケットを前記制御装置に送信する送信部と、
前記通知パケットに応答する応答パケットを受信する受信部と、
前記応答パケットに含まれている設定情報を用いた設定処理を行う設定処理部
を備えることを特徴とする通信装置。
(付記6)
前記設定処理部での設定処理の結果を記憶する記憶部をさらに備え、
前記制御部は、前記応答パケットの受信後に前記通信装置での処理負荷が前記閾値未満であることを通知するために生成される他の通知パケットに、前記設定結果を含める
ことを特徴とする付記5に記載の通信装置。
(付記7)
複数の通信装置を含むネットワークを制御する制御装置が、
転送経路の設定要求および前記複数の通信装置の各々からパケットを受信可能であることを通知する通知パケットを受信し、
前記転送経路を設計するとともに、前記複数の通信装置のうちで前記転送経路の生成に使用する通信装置の各々に対して、当該通信装置に設定する設定情報を生成し、
前記設定情報の各々について、当該設定情報の設定先となる通信装置から当該通信装置がパケットを受信可能であることを通知する通知パケットを受信すると、当該設定情報を含む応答パケットを生成し、
前記応答パケットを前記設定情報の設定先となる通信装置へ送信する
処理を行うことを特徴とするネットワークの設定方法。
(付記8)
前記制御装置は、
前記通知パケットの送信元に設定する設定情報が生成されていない場合、前記通知パケットに対する応答を送信するタイミングを遅延可能な期間を特定し、
前記遅延可能な期間が経過するまでに、前記通知パケットの送信元に設定する設定情報を生成すると、前記通知パケットの送信元に設定する設定情報を含めた応答パケットを生成する
ことを特徴とする付記7に記載の設定方法。
(付記9)
前記通知パケットは、前記通知パケットの送信元での設定処理の結果を含み、
前記制御装置は、前記通知パケットの送信元に設定する設定情報のうちで、設定処理が終了したことが前記通知パケットで通知されていない情報を、前記応答パケットに含める
ことを特徴とする付記7または8に記載の設定方法。
(付記10)
前記制御装置は、
複数の通信装置が複数のグループに分類され、各グループについて、当該グループに属する通信装置に宛てた応答パケットを遅延可能な期間が決定されている場合、前記通知パケットの送信元を含むグループに対応付けられた期間を、前記通知パケットの送信元に宛てた応答パケットを送信するタイミングを遅延可能な期間とする
ことを特徴とする付記8または9に記載の設定方法。
3、15 オペレーションシステム
5 ユーザ端末
10 制御サーバ
11 ネットワーク
20 制御対象装置
30 制御サーバ
31、61 通信部
32、62 送信部
33、63 受信部
40、70 制御部
41 要求受付部
42 生成部
43 ポーリング制御部
50、80 記憶部
51 設定要求情報
52 設定情報テーブル
53 ポーリング受付中テーブル
54 トポロジ情報
60 通信装置
71 ポーリング制御部
72 設定処理部
73 判定部
81 収集情報テーブル
82 閾値情報
101 プロセッサ
102 メモリ
103 バス
104 記憶装置
105 回線インタフェース

Claims (6)

  1. 複数の通信装置を含むネットワークを制御する制御装置であって、
    転送経路の設定要求および前記複数の通信装置の各々からパケットを受信可能であることを通知する通知パケットを受信する受信部と、
    前記転送経路を設計するとともに、前記複数の通信装置のうちで前記転送経路の生成に使用する通信装置の各々に対して、当該通信装置に設定する設定情報を生成する生成部と、
    前記設定情報の各々について、当該設定情報の設定先となる通信装置から当該通信装置がパケットを受信可能であることを通知する通知パケットを受信すると、当該設定情報を含む応答パケットを生成する制御部と、
    前記応答パケットを前記設定情報の設定先となる通信装置へ送信する送信部
    を備えることを特徴とする制御装置。
  2. 前記制御部は、
    前記通知パケットの送信元に設定する設定情報が生成されていない場合、前記通知パケットに対する応答を送信するタイミングを遅延可能な期間を特定し、
    前記遅延可能な期間が経過するまでに、前記通知パケットの送信元に設定する設定情報が生成されると、前記通知パケットの送信元に設定する設定情報を含めた応答パケットを生成する
    ことを特徴とする請求項1に記載の制御装置。
  3. 前記通知パケットは、前記通知パケットの送信元での設定処理の結果を含み、
    前記制御部は、前記通知パケットの送信元に設定する設定情報のうちで、設定処理が終了したことが前記通知パケットで通知されていない情報を、前記応答パケットに含める
    ことを特徴とする請求項1または2に記載の制御装置。
  4. 複数の通信装置が複数のグループに分類され、各グループについて、当該グループに属する通信装置に宛てた応答パケットを遅延可能な期間が決定されている場合、前記制御部は、前記通知パケットの送信元を含むグループに対応付けられた期間を、前記通知パケットの送信元に宛てた応答パケットを送信するタイミングを遅延可能な期間として決定する
    ことを特徴とする請求項2または3に記載の制御装置。
  5. ネットワークを制御する制御装置と通信可能な通信装置であって、
    前記通信装置での処理負荷が、前記通信装置に対する設定情報を含むパケットの受信が可能な場合の負荷を表す閾値未満である場合、前記制御装置宛てに、パケットを受信可能であることを通知する通知パケットを生成する制御部と、
    前記通知パケットを前記制御装置に送信する送信部と、
    前記通知パケットに応答する応答パケットを受信する受信部と、
    前記応答パケットに含まれている設定情報を用いた設定処理を行う設定処理部
    を備えることを特徴とする通信装置。
  6. 複数の通信装置を含むネットワークを制御する制御装置が、
    転送経路の設定要求および前記複数の通信装置の各々からパケットを受信可能であることを通知する通知パケットを受信し、
    前記転送経路を設計するとともに、前記複数の通信装置のうちで前記転送経路の生成に使用する通信装置の各々に対して、当該通信装置に設定する設定情報を生成し、
    前記設定情報の各々について、当該設定情報の設定先となる通信装置から当該通信装置がパケットを受信可能であることを通知する通知パケットを受信すると、当該設定情報を含む応答パケットを生成し、
    前記応答パケットを前記設定情報の設定先となる通信装置へ送信する
    処理を行うことを特徴とするネットワークの設定方法。
JP2016146426A 2016-07-26 2016-07-26 制御装置、通信装置、および、設定方法 Pending JP2018019172A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2016146426A JP2018019172A (ja) 2016-07-26 2016-07-26 制御装置、通信装置、および、設定方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016146426A JP2018019172A (ja) 2016-07-26 2016-07-26 制御装置、通信装置、および、設定方法

Publications (1)

Publication Number Publication Date
JP2018019172A true JP2018019172A (ja) 2018-02-01

Family

ID=61082050

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016146426A Pending JP2018019172A (ja) 2016-07-26 2016-07-26 制御装置、通信装置、および、設定方法

Country Status (1)

Country Link
JP (1) JP2018019172A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7381882B2 (ja) 2020-02-21 2023-11-16 富士通株式会社 通信制御装置、通信制御システム、通信制御方法およびプログラム

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7381882B2 (ja) 2020-02-21 2023-11-16 富士通株式会社 通信制御装置、通信制御システム、通信制御方法およびプログラム

Similar Documents

Publication Publication Date Title
JP4529974B2 (ja) サーバ負荷分散システム、サーバ負荷分散装置、コンテンツ管理装置、及びサーバ負荷分散プログラム
JP5828954B2 (ja) サーバ故障中のパケット処理方法及びルータ
JP4822343B2 (ja) 負荷を制御可能な通信装置およびそれを備えた通信ネットワーク
JP2023089008A (ja) コンテキストアウェア型の経路の計算及び選択
JP2003256310A (ja) サーバ負荷分散システム、サーバ負荷分散装置、コンテンツ管理装置、及びサーバ負荷分散プログラム
CN106612284B (zh) 一种流数据的传输方法和装置
JP4771988B2 (ja) 負荷分散装置及びネットワーク装置
US9608922B2 (en) Traffic control on an on-chip network
WO2015161737A1 (zh) 一种缓存数据的方法及转发设备
US20230126039A1 (en) Method for delivering an audio and/or video content in a mobile network infrastructure
US10530869B2 (en) Bidirectional forwarding detection accelerator
JP2018019172A (ja) 制御装置、通信装置、および、設定方法
JP2016208315A (ja) 通信装置、通信処理方法、および、通信プログラム
US10015288B2 (en) Communication apparatus and control method of communication apparatus
JP6856521B2 (ja) 通信装置、通信システム及びプログラム
US20170063725A1 (en) Control method, control device, and storage medium
JP5815838B2 (ja) ルータにおいて通信を管理するための技法
WO2018006619A1 (zh) 传输路径的负载信息的方法和网络节点
WO2024032011A1 (zh) Cdn调度方法、cdn调度系统、存储介质
JP6308295B2 (ja) 通信装置、サーバ、通信システム及び通信方法
KR20120056728A (ko) 연결 링크의 우선 순위에 기반한 기회주의적 병렬 다운로드 방법 및 시스템
WO2020151461A1 (zh) 对数据包进行路由的方法和装置
JP2006260592A (ja) コンテンツ管理装置及びコンテンツ管理プログラム
RU2656706C1 (ru) Устройство связи, устройство управления, система связи, способ обработки принимаемого пакета, способ управления устройством связи и программа
CN116582544A (zh) 一种数据包发送方法、装置、设备及存储介质