[go: up one dir, main page]

JP2010178275A - メッセージを中継する装置、方法およびプログラム - Google Patents

メッセージを中継する装置、方法およびプログラム Download PDF

Info

Publication number
JP2010178275A
JP2010178275A JP2009021503A JP2009021503A JP2010178275A JP 2010178275 A JP2010178275 A JP 2010178275A JP 2009021503 A JP2009021503 A JP 2009021503A JP 2009021503 A JP2009021503 A JP 2009021503A JP 2010178275 A JP2010178275 A JP 2010178275A
Authority
JP
Japan
Prior art keywords
communication device
message
unit
state
communicate
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
JP2009021503A
Other languages
English (en)
Inventor
Takeshi Ishihara
丈士 石原
Nobuhiko Sugasawa
延彦 菅沢
Kenichi Yanai
謙一 谷内
Keisuke Mera
恵介 米良
Takeshi Kaneko
雄 金子
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.)
Toshiba Corp
Original Assignee
Toshiba Corp
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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP2009021503A priority Critical patent/JP2010178275A/ja
Publication of JP2010178275A publication Critical patent/JP2010178275A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Small-Scale Networks (AREA)

Abstract

【課題】状態管理用の装置を備えることなく、他の通信装置の状態を適切に伝える。
【解決手段】第1通信装置から第2通信装置を転送先とするメッセージを受信し、受信したメッセージを第2通信装置に転送する転送部104と、第2通信装置が通信できる状態であるか否かを検出する状態検出部106と、第2通信装置を転送先とするメッセージが受信され、第2通信装置が通信できない状態であることが検出された場合に、第2通信装置が通信できない状態であること表す応答メッセージを生成する応答生成部107と、を備え、転送部104は、第2通信装置が通信できない状態であることが検出された場合、受信したメッセージを第2通信装置に転送せずに、生成された応答メッセージを第1通信装置に送信する。
【選択図】図2

Description

本発明は、ネットワークに接続し、ネットワーク上で転送されるメッセージを中継する装置、方法およびプログラムに関する。
従来、ネットワークに接続したノード(通信装置)の状態を確実に取得するためには、同ノードの動作を司るオペレーティングシステムなどのソフトウェアを介して行う方法が一般的であった。例えば、一方のノードからTCP/IPを用いて状態を問い合せるコマンドを送信し、それを受けたノードが内部状態に即した応答値を決定してTCP/IPを用いて返信する方法が知られている。
一方、TCP/IPやデータリンク層の技術を用いない方法として、IEEE 802.3af規格や、特許文献1では、検出ノードとネットワークで接続された被検出ノード内の抵抗値の有無をネットワークを介して検出ノードから確認可能とする技術が提案されている。この方法によれば、遠隔から取得できる情報は限定されるが、抵抗値によって、被検出ノードがネットワークケーブルを介した給電を要求する装置であるか否かを検出することが可能となる。
また、アプリケーションプロトコルのレベルでは、UPnP(登録商標) Low Powerアーキテクチャなどのように、ノードの動作状態を収集するために電源管理プロキシーサーバを設置し、周辺ノードが同プロキシに問い合わせることで通信相手となるノードの状態を遠隔から取得する技術が提案されている。
特許第3895171号公報
しかしながら、TCP/IP上のソフトウェアを用いる場合は、TCP/IPの処理やそれを支えるデータリンク層が正しく稼働していることを前提とするため、ノードが正常に動作している時しか状態を取得することができないという問題があった。したがって、ノードの状態を適切に検出するには、例えばノードを常時起動する必要があり、消費電力の増加を招く。また、IEEE 802.3af規格の方法は、消費電力は小さいが、ネットワークケーブルを介して直接接続したノードからしか状態を検出することができない。
UPnP Low Powerアーキテクチャなどの方法では、動作状態を管理するための装置である電源管理プロキシーサーバを設置することや、同サーバと通信するためのプロトコルを各ノードに実装することが必要となる。
本発明は、上記に鑑みてなされたものであって、状態管理用の装置を備えることなく、他の通信装置に直接接続していない通信装置に対して、他の通信装置の状態を適切に伝えることができる装置、方法およびプログラムを提供することを目的とする。
上述した課題を解決し、目的を達成するために、本発明は、第1通信装置から第2通信装置を転送先とするメッセージを受信し、受信したメッセージを前記第2通信装置に転送する転送部と、前記第2通信装置が通信できる状態であるか否かを検出する状態検出部と、前記第2通信装置を転送先とするメッセージが受信され、前記第2通信装置が通信できない状態であることが検出された場合に、前記第2通信装置が通信できない状態であること表す応答メッセージを生成する応答生成部と、を備え、前記転送部は、前記第2通信装置が通信できない状態であることが検出された場合、受信したメッセージを前記第2通信装置に転送せずに、生成された応答メッセージを前記第1通信装置に送信することを特徴とする。
また、本発明は、上記装置で実行することができる方法およびプログラムである。
本発明によれば、状態管理用の装置を備えることなく、他の通信装置に直接接続していない通信装置に対して、他の通信装置の状態を適切に伝えることができるという効果を奏する。
図1は、第1の実施の形態にかかる中継装置を含む通信システムの構成の一例を示すネットワーク構成図である。 図2は、第1の実施の形態にかかる中継装置の構成の一例を示すブロック図である。 図3は、状態記憶部に保存されるデータのデータ構造の一例を示す図である。 図4は、第1の実施の形態におけるパケット転送処理の全体の流れを示すシーケンス図である。 図5は、第1の実施の形態におけるパケット転送処理の全体の流れを示すシーケンス図である。 図6は、第1の実施の形態におけるパケット転送処理の全体の流れを示すシーケンス図である。 図7は、第1の実施の形態における状態確認処理の全体の流れを示すフローチャートである。 図8は、第1の実施の形態における応答パケット生成処理の全体の流れを示すフローチャートである。 図9は、第1の実施の形態の変形例にかかる中継装置の構成の一例を示すブロック図である。 図10は、第2の実施の形態にかかる中継装置の構成の一例を示すブロック図である。 図11は、第2の実施の形態の条件記憶部に記憶されるデータのデータ構造の一例を示す図である。 図12は、第2の実施の形態におけるパケット転送処理の全体の流れを示すシーケンス図である。 図13は、第3の実施の形態にかかる中継装置の構成の一例を示すブロック図である。 図14は、第3の実施の形態の条件記憶部に記憶されるデータのデータ構造の一例を示す図である。 図15は、第3の実施の形態におけるパケット転送処理の全体の流れを示すシーケンス図である。 図16は、第3の実施の形態におけるパケット転送処理の全体の流れを示すシーケンス図である。 図17は、第3の実施の形態の変形例にかかる中継装置の構成の一例を示すブロック図である。 図18は、フィールドを追加した第3の実施の形態の条件記憶部のデータ構造の一例を示す図である。
以下に添付図面を参照して、この発明にかかる中継装置の最良な実施の形態を詳細に説明する。
(第1の実施の形態)
第1の実施の形態にかかる中継装置は、通信装置間のメッセージ(パケット)を中継するレイヤー2スイッチ(スイッチングハブ)などの装置であって、パケットを転送するときに、パケットを受信する通信装置(以下、受信先ノードという)の状態を検出し、通信できない状態である場合に、パケットを送信したノード(以下、送信元ノードという)に対して通信できない状態であることを表す応答パケットを送信する。
なお、以下では、レイヤー2スイッチ(スイッチングハブ)として本実施の形態の中継装置を実現した場合を例に説明する。適用可能な装置はこれに限られず、通信装置間のパケットを転送する装置であれば、レイヤー3スイッチやルータなどのあらゆる装置に適用できる。
図1は、第1の実施の形態にかかる中継装置100を含む通信システム10の構成の一例を示すネットワーク構成図である。図1に示すように、通信システム10は、中継装置100と、受信先ノード20と、ネットワーク30と、送信元ノード40と、を含んでいる。
受信先ノード20は、中継装置100に直接接続され、中継装置100などの外部装置から状態を検出可能とする機能を具備する。ネットワーク30は、中継装置100が接続するネットワークである。送信元ノード40は、ネットワーク30に接続され、ネットワーク30および中継装置100を介して、受信先ノード20と通信する。
図2は、第1の実施の形態にかかる中継装置100の構成の一例を示すブロック図である。図2に示すように、中継装置100は、インターフェイス101、102、103と、転送部104と、状態記憶部105と、状態検出部106と、応答生成部107と、を備えている。
インターフェイス101、102、103は、受信先ノード20を含む複数のノードと接続可能なネットワークインターフェイスである。同図では、3つのインターフェイス101〜103を備える例が示されているが、インターフェイスの個数はこれに限られるものではない。
転送部104は、後述する状態記憶部105に保存されたデータを参照して、インターフェイス101〜103の間でパケットを転送する。
状態記憶部105は、転送部104がパケットの転送先となるノードを決定するためのデータとともに、各ノードの状態を表す状態情報を記憶する。図3は、状態記憶部105に保存されるデータのデータ構造の一例を示す図である。同図では、一行が一つのエントリを表している。同図に示すように、状態記憶部105は、MAC(Media Access Control)アドレスフィールドと、I/Fフィールドと、状態フィールドと、有効期間フィールドと、を含むデータ構造のデータを記憶している。
MACアドレスフィールドは、受信したパケットの宛先を識別するMACアドレスを格納する。I/Fフィールドは、当該MACアドレスを持つノードが接続しているインターフェイス101〜103を識別する情報(識別子)を格納する。同図では、インターフェイス101の識別子である「IF1」、および、インターフェイス102の識別子である「IF2」が設定された例が示されている。
状態フィールドは、接続するノードの状態を表す状態情報を格納する。同図では、通信できる状態を表す「ACTIVE」、および通信できない状態を表す「SLEEP」が、状態情報の一例として示されている。設定可能な状態はこれらに限られず、「電源ON」、「サスペンド」、「休止状態」、および「電源OFF」などの状態を設定可能としてもよい。なお、この例の場合、「電源ON」が通信できる状態を表し、「サスペンド」、「休止状態」、および「電源OFF」が通信できない状態を表す。
有効期間フィールドは、各エントリの有効期間を格納する。
なお、記憶部105は、HDD(Hard Disk Drive)、光ディスク、メモリカード、RAM(Random Access Memory)などの一般的に利用されているあらゆる記憶媒体により構成することができる。
図2に戻り、状態検出部106は、インターフェイス101〜103に接続しているノード(以下、対向ノードという)の状態を検出する。例えば、状態検出部106は、インターフェイス101〜103に物理的にケーブル(接続線)が接続されているか否かを判定する方法、または、ケーブルが接続されている場合にはそのケーブルと対向ノードとにより構成される電気回路が有する電気的特性(抵抗値、特定の電圧/電流をかけた時に得られる電流値/電圧値)を判定する方法などにより、接続の有無や対向ノードの状態を検出する。
すなわち、状態検出部106は、少なくとも対向ノードが通信できる状態であるか否かを検出できる。そして、上述のように、状態検出部106が電気的特性等を判定することにより、対向ノードの詳細な動作状態を検出するように構成してもよい。例えば、状態検出部106が、対向ノードから検出された抵抗値に応じて、対向ノードが、「電源ON」、「サスペンド」、「休止状態」、および「電源OFF」のいずれかの状態であることを検出可能とすることができる。状態検出部106は、検出した動作状態に応じた状態情報を状態記憶部105の状態フィールドに保存する。
応答生成部107は、状態検出部106により、パケットの転送先のノードが通信できない状態であることが検出された場合に、当該ノードが通信できない状態であることを表す応答パケットを生成し、転送部104を通じて、当該パケットの送信元ノードに対して応答パケットを送信する。なお、本実施の形態の中継装置100は、スイッチングハブであること前提としているが、このような場合でも転送先のノードの状態に応じた応答パケットを送信元ノードに通知する。
次に、このように構成された第1の実施の形態にかかる中継装置100によるパケット転送処理について図4〜図6を用いて説明する。図4〜図6は、第1の実施の形態におけるパケット転送処理の全体の流れを示すシーケンス図である。各図は、送信元ノードが受信先ノードに対して送信したパケットを中継装置100が受信することによって開始されるシーケンスを記述している。
なお、図4は、パケットの転送先(受信先ノード)が決定できたが、受信先ノードが通信できない状態のためパケットを転送できない場合のシーケンスを表す。また、図5は、受信先ノードが決定でき、受信先ノードが通信できる状態のためパケットを転送する場合のシーケンスを表す。また、図6は、受信先ノードが決定できない場合のシーケンスを表す。
まず、図4のシーケンスについて説明する。最初に、インターフェイス101が、送信元ノードからパケット(以下、受信パケットという)を受信する(ステップS401)。受信パケットは転送部104に通知される(ステップS402)。
転送部104は、状態記憶部105から、受信パケットに含まれる受信先MACアドレスを検索し(ステップS403)、検索結果を取得する(ステップS404)。このとき、受信先MACアドレスと一致するMACアドレスを含むエントリが検索されればそのエントリが検索結果として返される。一致するMACアドレスを含むエントリが検索されない場合は、その旨を示す何らかの値が返される。
なお、エントリが検索されなかった場合、すなわち、転送先が決定できなかった場合には、受信パケットは全てのインターフェイスに対して出力される(同図では省略)。この場合の詳細な動作は図6を用いて説明する(後述)。
エントリが検索された場合、すなわち、転送先が決定できた場合には、転送部104は、当該エントリの状態フィールドに格納されている状態情報を検査する(ステップS405)。状態情報が、当該ノードが通信できない状態であることを示す場合(例えば、サスペンド、休止状態など)、転送部104は、応答生成部107に対して応答パケットを生成するように指示する(ステップS406)。なお、当該ノードが通信できる状態である場合の処理は、図5で説明する(後述)。
応答生成要求を受けた応答生成部107は、受信パケットを解析し応答パケットを生成する応答パケット生成処理を実行する(ステップS407)。応答パケット生成処理の詳細については後述する。応答パケットの生成が完了すると、応答生成部107は、生成した応答パケットを転送部104へ返す(ステップS408)。
生成された応答パケットを受け取った転送部104は、受信パケットを受信したインターフェイス(同図ではインターフェイス101)に対して応答パケットを転送するように指示する(ステップS409)。インターフェイス101は、当該応答パケットを出力する。
この後、以下のような状態更新処理を実行してもよい(ステップS410〜ステップS414)。なお、同図のシーケンスでは、状態更新処理をステップS409の後に実行するように記述されているが、状態更新処理をステップS406〜ステップS409の処理と並行して実行するように構成してもよい。
まず、転送部104が、受信パケットの受信先ノードの状態を確認することを状態検出部106に対して指示する(ステップS410)。状態確認依頼を受けた状態検出部106は、受信先ノードが接続されたインターフェイスに対して状態検出操作を行うことにより受信先ノードの状態を確認する状態確認処理を実行する(ステップS411)。なお、状態確認処理の詳細については後述する。
この状態確認処理により、当該インターフェイスに接続する受信先ノードの最新の状態が入手できる。状態検出部106は、入手した最新の状態を転送部104に返す(ステップS412)。
状態検出部106から受信先ノードの最新の状態を入手した転送部104は、入手した最新の状態で状態記憶部105の状態情報を更新する(ステップS413)。この際、再度受信先ノードが通信できない状態であることが確認された場合には、当該エントリの有効期間を通信できる状態のエントリに比べて長く設定するように構成してもよい。
転送部104は、更新処理の結果を受け取る(ステップS414)。なお、このステップは省略してもよい。
以上が、中継装置100が、送信元ノードから受信したパケットを受信先ノードに転送する際に実行されるシーケンスのうち、受信先ノードが通信できない状態である場合の処理である。
次に、受信先ノードが通信できる状態である場合のシーケンスを図5を用いて説明する。ステップS501〜ステップS505までの処理は、図4のステップS401〜ステップS405と同じであるため、説明を省略する。
ステップS505で、受信先ノードが通信可能状態であることが確認された場合(例えばACTIVE)、転送部104は、検索されたエントリのI/Fフィールドから受信パケットの出力先となるインターフェイスを決定する(ステップS506)。
次に、転送部104は、受信パケットを決定したインターフェイスから転送するように、当該インターフェイスに対して指示する(ステップS507)。同図では、インターフェイス102に出力することが決定された例が示されている。このようにして、受信パケットが、決定されたインターフェイスを介して受信先ノードへ転送される。その後、図4と同様の状態更新処理(ステップS410〜ステップS414)を行ってもよい(ステップS508〜ステップS512)。
次に、受信先ノードに対応するエントリが状態記憶部105に保存されていない場合のシーケンスについて図6を用いて説明する。本シーケンスは、受信先ノードが中継装置100に初めて接続した場合や、過去に保存されていたエントリの有効期間が切れてエントリが削除された場合などに実行される。
ステップS601〜ステップS604までの処理は、図4のステップS401〜ステップS404と同じであるため、説明を省略する。
図4と異なり、本シーケンスではステップS604で転送先に関する有効なエントリが得られない。そのため、転送部104は、全てのインターフェイス101〜103に対して受信パケットの転送を指示する(ステップS605〜ステップS607)。これにより、全てのインターフェイスから受信パケットが送出される。
その後、インターフェイス102から、当該受信パケットに対する応答が得られたと仮定する(ステップS608)。なお、本実施の形態では、中継装置100がスイッチングハブであることを想定しているので、厳密には受信パケットに対する応答であることを認識することはできない。ここでは送出したインターフェイス(インターフェイス102)で別のパケットが得られたことを便宜上、応答を得られたと呼んでいる。
この場合、当該応答に関するエントリの状態記憶部105に対する保存状態に関わらず、転送部104は、受信した応答に対応する新しいエントリを状態記憶部105に登録する(ステップS609〜ステップS611)。図3のエントリ301は、このような場合に登録されるエントリの一例を示している。新たに登録するエントリの各フィールドに設定する値は、次のように決定する。
MACアドレスフィールドは、インターフェイス(この例ではインターフェイス102)で受信したパケットの送信元MACアドレスを設定する。I/Fフィールドは、受信したインターフェイスの識別子(この場合はインターフェイス102の識別子である「IF2」)を設定する。状態フィ−ルドは、通信可能なことを表す「ACTIVE」を設定する。有効期間フィールドは、通常の有効期間を設定する。通常の有効期間とは、インターフェイス102に接続したノードが、外部装置から状態を検出可能とする機能を備えていない通常のノードであると仮定した場合に設定する有効期間である。
なお、上述のステップS608〜ステップS611に該当する処理は、図6に示したシーケンスに固有の処理ではない。一般にスイッチングハブがパケットを受信した場合には、当該パケットの送信元MACアドレスを学習する処理が実行される。これは本実施の形態でも同様であり、図6のステップS608〜ステップS611はこの処理を表している。なお、図4、図5、および図6の最初のパケット受信処理(ステップS401、ステップS501、ステップS601)でも、同様の処理が実行されるが、説明の都合上省略している。
次に、ステップS411等の状態確認処理の詳細について図7を用いて説明する。上述の通り、状態記憶部105に記載された各エントリは、有効期間が設定されている。各エントリは、この有効期間内に限って利用可能とし、有効期間が切れた場合は無効とする。また、ノードが接続していないことが確認できた場合または接続していないとみなせる場合にも、同様にエントリを無効とする。状態確認処理は、このようにエントリを無効にする処理を含む。すなわち、状態検出部106は、定期的に有効期間が切れたエントリをチェックする。その際、有効期間切れのエントリに対応するノードの最新の状態を確認し、無効にすべきか否かを判断する。
図7は、第1の実施の形態における状態確認処理の全体の流れを示すフローチャートである。
まず、状態検出部106は、状態記憶部105に保存されている未処理のエントリを読み出す(ステップS701)。次に、状態検出部106は、取得したエントリに含まれる有効期間を参照し、現時点が有効期間内であるか否かを確認する(ステップS702)。
有効期間が切れている場合(ステップS702:NO)、状態検出部106は、当該エントリに含まれるI/Fフィールドの値であるインターフェイスの識別子を取得する(ステップS703)。次に、状態検出部106は、取得した識別子のインターフェイスを指定して、接続されたノードの状態を検出する(ステップS704)。
状態検出部106は、ノードの状態が検出できたか否かを判断し(ステップS705)、状態が検出できた場合は(ステップS705:YES)、当該エントリを削除せずに当該エントリを更新する(ステップS706)。具体的には、状態検出部106は、取得した状態を表す状態情報を状態フィールドに設定し、取得した状態に対応する有効期間を有効期間フィールドに設定する。
ここで、状態検出部106が、「電源ON」、「サスペンド」、「休止状態」、および「電源OFF」をノードの状態として検出できると仮定する。この場合、状態検出部106が、「電源ON」に対して、本実施の形態を適用しない一般の中継装置が設定する有効期間と同様の有効期間を設定し、「サスペンド」、「休止状態」、および「電源OFF」の順に大きくなるように有効期間を設定するように構成してもよい。このように構成することで、通信できない状態であるノードの利用が再開されると予想されるまでの時間に合わせた有効期間を設定することが可能になる。
なお、状態情報が「サスペンド」、「休止状態」、または「電源OFF」であるエントリに含まれるMACアドレスを送信元とするパケットを受信した場合、転送部104は、対応するエントリの状態情報を「ACTIVE」に更新し、有効期間を「電源ON」に対応する有効期間に更新する。
これにより、動作中のノードに対する有効期間が不必要に長いエントリが存続しないようにすることができる。この処理は、図4、図5、および図6で述べた通常の転送処理と共に実行すればよい。例えば、送信元のMACアドレスを覚えておき、パケットを転送した後にエントリを更新してもよい。また、一連の転送処理と並行に本処理を実行してもよい。
ステップS705で状態が検出できなかった場合(ステップS705:NO)、状態検出部106は、当該エントリを状態記憶部105から削除する(ステップS707)。
次に、ステップS407の応答パケット生成処理の詳細について図8を用いて説明する。図8は、第1の実施の形態における応答パケット生成処理の全体の流れを示すフローチャートである。
応答パケット生成処理で、応答生成部107は、受信パケットと、受信パケットを受信したインターフェイスを特定する情報(受信インターフェイス情報、例えば識別子)と、状態検出部106で検出された状態とを入力する。
まず、応答生成部107は、受信パケットのイーサネット(登録商標)ヘッダから応答パケットのイーサネット(登録商標)ヘッダを生成する(ステップS801)。このとき、応答生成部107は、渡された受信パケット内のイーサネット(登録商標)フレームの送信元MACアドレスおよび受信先MACアドレスを、それぞれ応答パケットの受信先MACアドレスおよび送信元MACアドレスとする。また、応答生成部107は、受信パケットのプロトコルフィールドと同じ値を、応答パケットのプロトコルフィールドに設定する。
次に、応答生成部107は、受信パケットのプロトコルタイプフィールドを参照することにより、上位のネットワークプロトコルを判別する。そして、応答生成部107は、ネットワークプロトコルがIPv4であるか否かを判定する(ステップS802)。
ネットワークプロトコルがIPv4である場合(ステップS802:YES)、応答生成部107は、以下のようにしてIPv4に準拠した応答パケットを生成する(ステップS803〜ステップS806)。
すなわち、応答生成部107は、まずIPv4ヘッダを生成する(ステップS803)。応答生成部107は、受信パケットのIPv4ヘッダの情報をもとに、応答パケットのIPv4ヘッダを生成する。具体的には、応答生成部107は、受信パケットのIPv4ヘッダの送信元アドレスおよび受信先アドレスを、それぞれ応答パケットの受信先アドレスおよび送信元アドレスとして設定する。また、応答生成部107は、プロトコルフィールドにICMPを設定し、その他のフィールドについても適宜設定する。
次に、応答生成部107は、ICMPヘッダを生成する(ステップS804)。例えば、応答生成部107は、ICMPタイプ=3(Destination Unreach)、コード=2(ProtocolUnreachable)としたICMPヘッダを生成する。なお、ICMPタイプやコードにこれ以外の値を設定してもよい。
次に、応答生成部107は、受信パケットからIPv4パケットを抽出する(ステップS805)。応答生成部107は、抽出したパケットを上述のイーサネット(登録商標)ヘッダ、IPv4ヘッダおよびICMPヘッダの後に連結し、IPv4ヘッダのチェックサムフィールドとICMPヘッダのチェックサムフィールドとを計算することにより、応答パケットの生成を完了する(ステップS806)。
ステップS802で、ネットワークプロトコルがIPv4でないと判断した場合(ステップS802:NO)、応答生成部107は、さらにネットワークプロトコルがIPv6であるか否かを判断する(ステップS807)。ネットワークプロトコルがIPv4であると判断した場合(ステップS807:YES)、応答生成部107は、IPv6に準拠した応答パケットを生成する(ステップS808〜ステップS811)。なお、この処理(ステップS808〜ステップS811)は、IPv4の場合と同様の処理(ステップS803〜ステップS806)であるため、説明を省略する。
応答生成部107は、このようにして生成された応答パケットを、入力として通知された受信インターフェイス情報とともに転送部104に通知する(ステップS812)。
ステップS807で、ネットワークプロトコルがIPv6でないと判断した場合(ステップS807:NO)、応答生成部107は、生成したデータを破棄する(ステップS813)。このように、本実施の形態ではIPv4およびIPv6以外のパケットは非対応として扱い、非対応のパケットに対する応答パケットは通知しない。なお、これは一例であり、IPv4およびIPv6以外のプロトコルに対応するように構成してもよい。
このように、ノードが通信できない状態であることを検出する原因となった受信パケットから応答パケットを生成することによって、本来通信できない状態である当該ノードが応答したかのように中継装置100から応答パケットを送信することができる。
(変形例)
上記実施の形態では、通信できる状態になるまでの時間を予想することなどにより有効期間を設定していた。これに対し、ノードから通信できない期間の通知を受け取り、通知された期間に応じて有効期間を設定することにより、より厳密にノードの再開予定時刻に合わせた有効期間を設定可能とするように構成してもよい。
図9は、このように構成された第1の実施の形態の変形例にかかる中継装置120の構成の一例を示すブロック図である。図9に示すように、中継装置120は、インターフェイス101、102、103と、転送部104と、状態記憶部105と、状態検出部106と、応答生成部107とに加え、有効期間管理部128を備えている。
有効期間管理部128は、インターフェイス101〜103、および、転送部104を介して、ノードから通信できない期間の通知を受け取り、通知された期間を有効期間とするように状態記憶部105の対応するエントリの有効期間を更新する。
なお、有効期間管理部128が、ノードが起動され、通信を実行している間隔に応じて有効期間を決定し、決定した有効期間を状態記憶部105に保存するように構成してもよい。例えば、有効期間管理部128が、状態記憶部105を参照して各エントリが更新される間隔を随時取得し、間隔の平均値等から適切な有効期間を決定するように構成することができる。
このように、第1の実施の形態にかかる中継装置では、パケットを転送するときに、パケットの受信先ノードが通信できない状態である場合に、受信先ノードが通信できない状態であることを表す応答パケットを生成し、パケットの送信元ノードに対して送信することができる。これにより、送信元ノードは、状態管理用の装置等を参照することなく、通常の通信の中で通信相手の状態を適切に取得できる。
また、本実施の形態の中継装置は、インターフェイスに接続したノードの状態を取得できるため、ノードがネットワークに接続したままでサスペンドした場合であっても、トポロジが変化してないことを検出できる。これにより、中継装置上でルーティングプロトコルやスパニングツリーを維持するプロトコルなどのネットワークトポロジに依存する処理が動作していたとしても、再計算を引き起こさないように構成することができる。したがって、ネットワークの安定動作と低消費電力とを両立することができる。
さらに、検出した状態を保存し、その状態に応じて保存した情報の有効期間を管理するようにしたため、頻繁な検査が不要になる。
(第2の実施の形態)
第2の実施の形態にかかる中継装置は、ネットワークからパケットを受信した際に、当該パケットの宛先を決定するエントリが状態記憶部に存在し、かつ、そのエントリが受信先ノードが通信できない状態にあることを示している場合の動作が第1の実施の形態と異なる。すなわち、第2の実施の形態では、このような場合であって、かつ、パケットが所定の条件を満たす場合にのみ応答パケットを送信する。それ以外の動作は、第1の実施の形態と同じである。
図10は、第2の実施の形態にかかる中継装置200の構成の一例を示すブロック図である。図10に示すように、中継装置200は、インターフェイス101、102、103と、転送部204と、状態記憶部105と、状態検出部106と、応答生成部107と、条件記憶部209と、判定部210と、を備えている。
第2の実施の形態では、条件記憶部209および判定部210を追加したことと、転送部204の機能とが第1の実施の形態と異なっている。その他の構成および機能は、第1の実施の形態にかかる中継装置100の構成を表すブロック図である図1と同様であるので、同一符号を付し、ここでの説明は省略する。
条件記憶部209は、受信したパケットに含まれるデータが満たすべき予め定められた条件を記憶する。図11は、条件記憶部209に記憶されるデータのデータ構造の一例を示す図である。同図では、送信元MACアドレス、受信先MACアドレス、送信元IPアドレス、受信先IPアドレス、プロトコル、送信元ポート番号、および受信先ポート番号が条件として指定される例が示されている。
なお、これらの条件を構成するフィールドは一例であり、これ以外のデータを条件としてもよい。例えば、TCPのフラグ、アプリケーションプロトコルの情報、およびアプリケーションデータなどを用いてもよい。また、同図では省略しているが、条件を満たす場合に実行すべき動作を設定するフィールドを含むように構成してもよい。例えば、応答パケットを送信すること、受信パケットを破棄すること、および、通常通り受信パケットを転送することなど、動作として設定するように構成してもよい。このフィールドが含まれない場合は、例えば、条件を満たす場合は必ず応答パケット生成処理を実行するように構成する。
判定部210は、受信したパケットに含まれるデータが、条件記憶部209に保存されている条件を満たすか否かを判定する。
転送部204は、受信したパケットが条件記憶部209に保存されている条件を満たすか否かを判定することを、判定部210に依頼する処理が追加された点が、第1の実施の形態の転送部104と異なっている。
次に、このように構成された第2の実施の形態にかかる中継装置200によるパケット転送処理について図12を用いて説明する。図12は、第2の実施の形態におけるパケット転送処理の全体の流れを示すシーケンス図である。本実施の形態の動作は、原則として第1の実施の形態と同じであるが、エントリが無効だった場合に、判定部210が条件を判定した後に状態確認を行う点が異なる。
ステップS1201からステップS1205までは、第1の実施の形態にかかる中継装置100におけるステップS401からステップS405までと同様の処理なので、その説明を省略する。
ステップS1205で、受信先ノードが通信できる状態であることを確認した場合は、受信パケットを受信先ノードに転送する。また、エントリが無効のため、受信先ノードが決定できない場合は、全てのインターフェイスから受信パケットを送信する(図では省略)。
ステップS1205で、エントリが存在するが受信先ノードが通信できない状態であることを確認した場合、転送部204は、受信パケットが条件記憶部209に保存された条件を満たすかを確認することを判定部210に依頼する(ステップS1206)。判定部210は、依頼を受けて、条件記憶部209から条件を読み出す(ステップS1207、ステップS1208)。そして、判定部210は、受信パケットに含まれるデータが、読み出した条件を満たすか否かを判定する(ステップS1209)。すなわち、判定部210は、図11に示すような条件のうち、各フィールドの設定値が、受信したパケット内の対応するデータの設定値と一致する条件が存在するか否かを判定する。そして、判定部210は、判定結果を転送部204に送信する(ステップS1210)。
なお、ステップS1207〜ステップS1209の条件判定処理は、判定部210が、条件記憶部209に保存された条件を一つずつ読み出して判定を繰り返してもよいし、一括で条件を読み出すように構成してもよい。後者の方法によれば、条件記憶部209と判定部210との間で行う情報交換の回数を減らすことができる。
転送部204は、通知された判定結果により、受信パケットが条件を満たすか否かを判断する(ステップS1211)。条件を満たさない場合(ステップS1211:NO)、転送部204は、受信パケットを破棄する(ステップS1212)。条件を満たす場合(ステップS1211:YES)、転送部204は、第1の実施の形態のステップS406からステップS414までと同様の処理により、応答パケットを生成して送信元ノードに送信するとともに、受信先ノードの最新の状態を確認する(ステップS1213〜ステップS1221)。
本シーケンスは、受信パケットが条件記憶部209に保存された条件と一致した場合にのみ、状態に応じた応答パケットを返して状態検出を行う例を示している。上述のように、条件に合わせて実行すべき「動作」も規定し、条件を満たした場合に、規定された「動作」を実施するように構成してもよい。
このように、第2の実施の形態にかかる中継装置では、受信パケットが所定の条件を満たす場合にのみ応答パケットを送信することができる。すなわち、応答パケットを返すノードや通信を限定することができる。これにより、不必要にノードの状態を返すことが無くなり、セキュリティの維持と状態通知による利便性が共存可能となる。
(第3の実施の形態)
第3の実施の形態にかかる中継装置は、通信できない状態であるノードを検出したときに、当該ノードに対して所定の制御を実行する機能が追加される。
図13は、第3の実施の形態にかかる中継装置300の構成の一例を示すブロック図である。図10に示すように、中継装置300は、インターフェイス101、102、103と、転送部204と、状態記憶部105と、状態検出部106と、応答生成部107と、条件記憶部309と、判定部310と、転送制御部311と、機器制御部312と、を備えている。
第3の実施の形態では、条件記憶部309のデータ構造と、判定部310の機能と、転送制御部311および機器制御部312を追加したことが第2の実施の形態と異なっている。その他の構成および機能は、第2の実施の形態にかかる中継装置200の構成を表すブロック図である図10と同様であるので、同一符号を付し、ここでの説明は省略する。
条件記憶部309は、受信したパケットに含まれるデータが条件を満たす場合に、受信したパケットの受信先ノードに対して実行される機器制御処理の方法(制御方法)をさらに記憶する点が、第2の実施の形態の条件記憶部209と異なっている。図14は、条件記憶部309に記憶されるデータのデータ構造の一例を示す図である。同図に示すように、本実施の形態では、第2の実施の形態の説明で用いた条件(図12)に、「検出時動作」フィールドが追加される。すなわち、本実施の形態では検出時の動作が複数になるため、それを明示的に保存するためのフィールドを追加する。
同図では、第1の実施の形態と同様に応答パケットを生成して通知することを表す「エラー通知」、および、応答パケットを通知せずに、受信先ノードの遠隔起動するように制御することを表す「遠隔起動」が、「検出時動作」の一例として示されている。なお、本フィールドにその他の動作を設定するように構成してもよい。
判定部310は、「検出時動作」フィールドの設定値に応じて、判定結果の通知先を変更する点が、第2の実施の形態の判定部210と異なっている。例えば、判定部310は、「検出時動作」フィールドが「遠隔起動」の場合、判定結果を機器制御部312に通知し、機器制御部312に対して受信先ノードの遠隔起動を実行させる。
転送制御部311は、判定部310、状態検出部106、応答生成部107、および機器制御部312の全体の動作を制御する。なお、転送制御部311を用いる代わりに、他の構成要素が互いに協調動作するように実現してもよい。
機器制御部312は、条件記憶部309の「検出時動作」フィールドに設定されている機器の制御方法にしたがって、インターフェイス101〜103に接続するノードの状態を遠隔から制御する。例えば、機器制御部312は、サスペンドしているノードに対してWake on LANを用いた遠隔起動を実施する。
次に、このように構成された第3の実施の形態にかかる中継装置300によるパケット転送処理について図15および図16を用いて説明する。図15および図16は、第3の実施の形態におけるパケット転送処理の全体の流れを示すシーケンス図である。図15は、受信先ノードに対する機器制御が不要と判断される場合のシーケンスである。また、図16は、受信先ノードに対する機器制御が必要と判断され、機器制御部312により遠隔起動が実行される場合のシーケンスである。
まず、図15のシーケンスについて説明する。ステップS1501からステップS1505までは、第2の実施の形態にかかる中継装置200におけるステップS1201からステップS1205までと同様の処理なので、その説明を省略する。
ステップS1505で、エントリが有効期間内であり、かつ対応する受信先ノードが通信可能であることが確認された場合は、転送部204は、受信パケットを受信先ノードへ転送する(図では省略)。また、有効期間が切れている場合には、転送部204は、全てのインターフェイスを介して受信パケットを転送する(図では省略)。
一方、エントリが有効であり受信先ノードが通信不可能であることを示す場合、転送部204は、第2の実施の形態のステップS1206〜ステップS1209と同様の手順により、受信パケットに含まれるデータが条件記憶部309の条件を満たすかが判定される(ステップS1506〜ステップS1509)。
なお、全ての条件を判定した上で一致する条件が存在しなかった場合は、受信パケットは破棄される(同図では省略)。例えば、判定部310が受信パケットを破棄するように転送部204に指示を出すように構成することができる。
一致する条件が見つかった場合、判定部310は、当該条件と共に一致する条件が見つかったことを転送制御部311に通知する(ステップS1510)。この通知を受け取った転送制御部311は、条件に含まれる「検出時動作」フィールドを確認して、以後の動作を決定する(ステップS1511)。
上述のように、図15は、「検出時動作」フィールドに、「エラー通知」が設定されている場合のシーケンスを表している。この場合、転送制御部311は、受信パケットの情報などと共に応答生成部107に応答パケット生成依頼を通知する(ステップS1512)。
応答生成部107は、上述の各実施の形態と同様に、応答パケットを生成し(ステップS1513)、転送部204を介して送信元ノードが接続するインターフェイスから送信する(ステップS1514〜ステップS1515)。その後、転送制御部311は、受信先ノードの最新の状態を確認し、状態記憶部105に保存されている情報を更新してもよい(ステップS1516〜ステップS1520)。このステップS1516〜ステップS1502の処理は、例えば図4のステップS410〜ステップS414と同様であるため、説明を省略する。なお、図4と同様に、転送部204がこの処理を実行するように構成してもよい。
次に、図16のシーケンスについて説明する。ステップS1601からステップS1611までは、図15のステップS1501からステップS1511までと同様の処理なので、その説明を省略する。
上述のように、図16は、「検出時動作」フィールドに、「遠隔起動」が設定されている場合のシーケンスを表している。この場合、転送制御部311は、機器制御部312に対して受信先ノードに対する遠隔起動を指示する(ステップS1612)。なお、転送制御部311は、受信先ノードが接続しているインターフェイスや受信先ノードを特定するための情報などの遠隔起動に必要な情報を、転送部204および判定部310を介して取得できる。
通知を受けた機器制御部312は、指定されたインターフェイスに対して遠隔起動処理を行う(ステップS1613)。機器制御部312は、例えば、指定されたインターフェイスからWake on LANで当該ノードを起動させるパケットを送信する。なお、これ以外の起動方法により受信先ノードを起動するように構成してもよい。例えば、Powerover Ethernet(登録商標)により受信先ノードの給電を開始するように構成してもよい。
機器制御部312は、遠隔起動処理の結果を表す起動処理応答を転送制御部311に返す(ステップS1614 )。この応答を受けた転送制御部311は、受信先ノードが起動したか否かを確認することを状態検出部106に依頼し、受信先ノードの最新の状態を取得する(ステップS1615〜ステップS1617)。
なお、この作業を所定回数実施しても起動が確認できなかった場合には、当該パケットを破棄するように転送部204に指示を出す(図は省略)。または、応答パケットを生成して送信元に通知するように応答生成部107に指示を出す(図は省略)。
一方、起動が確認できた場合には(ステップS1618)、転送制御部311は、転送部204に対して、受信パケットを受信先ノードへと転送するように指示を出す(ステップS1619)。この指示を受けた転送部204は、受信パケットを受信先ノードへ転送する(ステップS1620)。
最後に、当該受信先ノードの状態が変化しているため、転送制御部311は、状態記憶部105の情報を更新し(ステップS1621〜ステップS1622)、パケット転送処理を終了する。
なお、機器制御部312が実行する遠隔起動方法は、機器設計時に固定的に決められる方法でもよいし、中継装置300の利用者が事前に設定可能としてもよい。また、受信先ノードが自装置の起動方法を中継装置300に通知するような手段を備え、中継装置300が通知された起動方法を条件記憶部309に記憶するように構成してもよい。
また、インターフェイス101〜103を介した遠隔起動以外の起動方法により、受信先ノードを起動するように構成してもよい。図17は、このように構成した場合の中継装置320の構成の一例を示すブロック図である。図17に示すように、中継装置320は、図13に示す中継装置300の構成に加えて、信号送出部323を備えている。
信号送出部323は、インターフェイス101〜103を介した通信方法以外の通信方法により受信先ノードを起動するための信号(起動信号)等を送出する。例えば、信号送出部323は、起動するノードだけが反応して起動するような光学的または電気的な信号を当該ノードに送出する。信号送出部323が、ノードが接続している電源ライン(コンセント)のスイッチをオンにする信号を送出するように構成してもよい。
なお、動作または制御方法に関する複数の情報を管理する必要がある場合には、条件記憶部309にこれらの複数の情報を保存するように構成すればよい。
図18は、「検出時動作」フィールドに加えて、「遠隔起動方法」フィールドを追加した場合の条件記憶部309のデータ構造の一例を示している。検出時動作として「遠隔起動方法」フィールドは、例えば、Wake on LAN機能により起動する「Wake on LAN」、および、指定電波を送信することにより起動する「指定電波」などの起動方法を指定する。
このように、第3の実施の形態にかかる中継装置では、通信できない状態であるノードを検出したときに、当該ノードに対して所定の制御を実行することができる。これにより、例えば、受信先ノードがサスペンドなどにより一時的に通信できない状態に置かれた場合であっても、当該受信先ノードが具備する方法により起動状態に復帰させることが可能となる。また、判定部より、起動状態に復帰させるか応答パケットを送信するかを判定できる。すなわち、事前に決めた重要度に応じて、通信できない受信先ノードを起動するか、または、起動せずに応答パケットを通知するかを選択することができる。
第1〜第3の実施の形態にかかる中継装置で実行される中継プログラムは、ROM(図示せず)等に予め組み込まれて提供される。
第1〜第3の実施の形態にかかる中継装置で実行される中継プログラムは、インストール可能な形式又は実行可能な形式のファイルでCD−ROM(Compact Disk Read Only Memory)、フレキシブルディスク(FD)、CD−R(Compact Disk Recordable)、DVD(Digital Versatile Disk)等のコンピュータで読み取り可能な記録媒体に記録して提供するように構成してもよい。
さらに、第1〜第3の実施の形態にかかる中継装置で実行される中継プログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成してもよい。また、第1〜第3の実施の形態にかかる中継装置で実行される中継プログラムをインターネット等のネットワーク経由で提供または配布するように構成してもよい。
第1〜第3の実施の形態にかかる中継装置で実行される中継プログラムは、上述した各部(転送部、状態検出部、応答生成部等)を含むモジュール構成となっており、実際のハードウェアとしてはCPU(図示せず)が上記ROMから中継プログラムを読み出して実行することにより上記各部が主記憶装置上にロードされ、各部が主記憶装置上に生成されるようになっている。
なお、本発明は、上記実施の形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化することができる。また、上記実施の形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成することができる。例えば、実施の形態に示される全構成要素からいくつかの構成要素を削除してもよい。さらに、異なる実施の形態にわたる構成要素を適宜組み合わせてもよい。
10 通信システム
20 受信先ノード
30 ネットワーク
40 送信元ノード
100、120、200、300、320 中継装置
101〜103 インターフェイス
104、204 転送部
105 状態記憶部
106 状態検出部
107 応答生成部
128 有効期間管理部
209、309 条件記憶部
210、310 判定部
311 転送制御部
312 機器制御部
323 信号送出部

Claims (11)

  1. 第1通信装置から第2通信装置を転送先とするメッセージを受信し、受信したメッセージを前記第2通信装置に転送する転送部と、
    前記第2通信装置が通信できる状態であるか否かを検出する状態検出部と、
    前記第2通信装置を転送先とするメッセージが受信され、前記第2通信装置が通信できない状態であることが検出された場合に、前記第2通信装置が通信できない状態であること表す応答メッセージを生成する応答生成部と、を備え、
    前記転送部は、前記第2通信装置が通信できない状態であることが検出された場合、受信したメッセージを前記第2通信装置に転送せずに、生成された応答メッセージを前記第1通信装置に送信すること、
    を特徴とする中継装置。
  2. メッセージに含まれるデータが満たすべき予め定められた条件を記憶する条件記憶部と、
    受信したメッセージに含まれるデータが前記条件を満たすか否かを判定する判定部と、をさらに備え、
    前記応答生成部は、受信したメッセージに含まれるデータが前記条件を満たすと判定され、かつ、前記第2通信装置が通信できない状態であることが検出された場合に、前記応答メッセージを生成すること、
    を特徴とする請求項1に記載の中継装置。
  3. 前記条件記憶部は、前記条件に、前記第2通信装置に対する制御方法を対応づけて記憶可能であり、
    受信したメッセージに含まれるデータが前記条件を満たすと判定され、かつ、前記第2通信装置が通信できない状態であることが検出され、かつ、受信したメッセージに含まれるデータが満たすと判定された前記条件に前記制御方法が対応づけられている場合に、対応づけられている前記制御方法に基づいて前記第2通信装置を制御する機器制御部をさらに備え、
    前記応答生成部は、受信したメッセージに含まれるデータが前記条件を満たすと判定され、かつ、前記第2通信装置が通信できない状態であることが検出され、かつ、受信したメッセージに含まれるデータが満たすと判定された前記条件に前記制御方法が対応づけられていない場合に、前記応答メッセージを生成すること、
    を特徴とする請求項2に記載の中継装置。
  4. 前記制御方法は、前記第2通信装置の起動方法であり、
    前記機器制御部は、受信したメッセージに含まれるデータが前記条件を満たすと判定され、かつ、前記第2通信装置が通信できない状態であることが検出され、かつ、受信したメッセージに含まれるデータが満たすと判定された前記条件に前記起動方法が対応づけられている場合に、対応づけられている前記起動方法に基づいて前記第2通信装置を起動すること、
    を特徴とする請求項3に記載の中継装置。
  5. 前記起動方法は、メッセージを転送する接続線を介して予め定められた起動メッセージまたは予め定められた起動信号を送出することにより前記第2通信装置を起動する起動方法であり、
    前記機器制御部は、受信したメッセージに含まれるデータが前記条件を満たすと判定され、かつ、前記第2通信装置が通信できない状態であることが検出され、かつ、受信したメッセージに含まれるデータが満たすと判定された前記条件に前記起動方法が対応づけられている場合に、前記接続線を介して前記起動メッセージまたは前記起動信号を送出することにより前記第2通信装置を起動すること、
    を特徴とする請求項4に記載の中継装置。
  6. メッセージを転送する接続線を用いる通信方法と異なる通信方法により予め定められた起動信号を前記第2通信装置に送出する信号送出部をさらに備え、
    前記起動方法は、前記信号送出部から前記起動信号を送出することにより前記第2通信装置を起動する起動方法であり、
    前記機器制御部は、受信したメッセージに含まれるデータが前記条件を満たすと判定され、かつ、前記第2通信装置が通信できない状態であることが検出され、かつ、受信したメッセージに含まれるデータが満たすと判定された前記条件に前記起動方法が対応づけられている場合に、前記第2通信装置に前記起動信号を送出するように前記信号送出部を制御すること、
    を特徴とする請求項4に記載の中継装置。
  7. 前記応答生成部は、前記第2通信装置を転送先とするメッセージが受信され、前記第2通信装置が通信できない状態であることが検出された場合に、受信したメッセージを解析することにより受信したメッセージのネットワークプロトコルを求め、求めたネットワークプロトコルに準拠した前記応答メッセージを生成すること、
    を特徴とする請求項1に記載の中継装置。
  8. 前記第2通信装置が通信できる状態であるか否かを表す状態情報と、前記状態情報の有効期間とを対応づけて記憶する状態記憶部をさらに備え、
    前記状態検出部は、前記有効期間を経過したときに、前記第2通信装置が通信できる状態であるか否かを検出し、検出結果に応じた前記状態情報を前記記憶部に保存すること、
    を特徴とする請求項1に記載の中継装置。
  9. 前記状態検出部は、前記第2通信装置から通信できる状態になるまでの期間を受信し、受信した期間を有効期間として対応づけた前記状態情報を前記記憶部に保存すること、
    を特徴とする請求項8に記載の中継装置。
  10. 転送部が、第1通信装置から第2通信装置を転送先とするメッセージを受信し、受信したメッセージを前記第2通信装置に転送する転送ステップと、
    状態検出部が、前記第2通信装置が通信できる状態であるか否かを検出する状態検出ステップと、
    応答生成部が、前記第2通信装置を転送先とするメッセージが受信され、前記第2通信装置が通信できない状態であることが検出された場合に、前記第2通信装置が通信できない状態であること表す応答メッセージを生成する応答生成ステップと、
    前記転送部が、前記第2通信装置が通信できない状態であることが検出された場合、受信したメッセージを前記第2通信装置に転送せずに、生成された応答メッセージを前記第1通信装置に送信する送信ステップと、
    を備えることを特徴とする中継方法。
  11. コンピュータを、
    第1通信装置から第2通信装置を転送先とするメッセージを受信し、受信したメッセージを前記第2通信装置に転送する転送部と、
    前記第2通信装置が通信できる状態であるか否かを検出する状態検出部と、
    前記第2通信装置を転送先とするメッセージが受信され、前記第2通信装置が通信できない状態であることが検出された場合に、前記第2通信装置が通信できない状態であること表す応答メッセージを生成する応答生成部と、として機能させるための中継プログラムであって、
    前記転送部は、前記第2通信装置が通信できない状態であることが検出された場合、受信したメッセージを前記第2通信装置に転送せずに、生成された応答メッセージを前記第1通信装置に送信することを特徴とする中継プログラム。
JP2009021503A 2009-02-02 2009-02-02 メッセージを中継する装置、方法およびプログラム Pending JP2010178275A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009021503A JP2010178275A (ja) 2009-02-02 2009-02-02 メッセージを中継する装置、方法およびプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009021503A JP2010178275A (ja) 2009-02-02 2009-02-02 メッセージを中継する装置、方法およびプログラム

Publications (1)

Publication Number Publication Date
JP2010178275A true JP2010178275A (ja) 2010-08-12

Family

ID=42708743

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009021503A Pending JP2010178275A (ja) 2009-02-02 2009-02-02 メッセージを中継する装置、方法およびプログラム

Country Status (1)

Country Link
JP (1) JP2010178275A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117118940A (zh) * 2022-05-16 2023-11-24 华为技术有限公司 消息传输方法、设备、系统和存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08249249A (ja) * 1995-03-08 1996-09-27 Nippon Telegr & Teleph Corp <Ntt> メッセージ中継装置及びメッセージ中継方法
JP2001103084A (ja) * 1999-09-28 2001-04-13 Nec Corp 交換機間通信方式および通信方法ならびに媒体変換装置
JP2007214731A (ja) * 2006-02-08 2007-08-23 Sony Corp 通信装置および方法、並びにプログラム
JP2008186726A (ja) * 2007-01-30 2008-08-14 Ricoh Co Ltd 給電システム

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08249249A (ja) * 1995-03-08 1996-09-27 Nippon Telegr & Teleph Corp <Ntt> メッセージ中継装置及びメッセージ中継方法
JP2001103084A (ja) * 1999-09-28 2001-04-13 Nec Corp 交換機間通信方式および通信方法ならびに媒体変換装置
JP2007214731A (ja) * 2006-02-08 2007-08-23 Sony Corp 通信装置および方法、並びにプログラム
JP2008186726A (ja) * 2007-01-30 2008-08-14 Ricoh Co Ltd 給電システム

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117118940A (zh) * 2022-05-16 2023-11-24 华为技术有限公司 消息传输方法、设备、系统和存储介质

Similar Documents

Publication Publication Date Title
JP5093598B2 (ja) 制御中継プログラム、制御中継装置および制御中継方法
JP2005505196A (ja) UPnPネットワークを一つにまとめるためのユニキャストメッセージをトンネリングさせるマルチキャスト発見プロトコル使用方法
JP2008085687A (ja) 遠隔制御システム、方法並びに遠隔制御装置及び制御パケット送信装置並びにそれらの制御方法及びプログラム
KR20050040166A (ko) 홈 네트워크의 장치를 제어하는 프록시 장치 및 그 방법
KR100429902B1 (ko) 공중망에서 사설망 내의 디바이스를 제어하기 위한 장치및 방법
EP3549359A1 (en) Methods and apparatus for operating and managing a constrained device within
JP2006086718A (ja) アクセスルータ及び端末装置
WO2007114251A1 (ja) 通信機器、通信機器が実行する方法、及びその方法を実装したソフトウェアを格納した記憶媒体
JP2014003408A (ja) 中継転送システム、経路制御装置およびエッジ装置
JP5638063B2 (ja) 通信装置、通信装置の制御方法、プログラム
JP2010178275A (ja) メッセージを中継する装置、方法およびプログラム
EP3562101A1 (en) Bras management method, packet forwarding method, packet forwarding controller, and bras
JP5370493B2 (ja) 通信システム、通信装置、通信制御方法及び通信制御プログラム
JP6507833B2 (ja) 通信システム、ゲートウエイおよびプログラム
JP2016134830A (ja) 応答装置、情報処理装置及びプログラム
JP4352645B2 (ja) 端末装置、中継装置、通信方法及びその通信プログラムを記録した記録媒体
JP2007336365A (ja) 端末装置、サーバ装置、通信方法、および通信プログラム
KR20100096074A (ko) 네트워크에서 네트워크 성분들을 관리하기 위한 방법과 네트워크 성분
JP2006203344A (ja) 機器管理装置、及び機器管理方法
JP5884658B2 (ja) 通信方法、通信装置、および、通信プログラム
JP2006129348A (ja) 親ノード決定システム及び方法、ノード装置、ならびに、コンピュータプログラム
JP6721733B2 (ja) 中継方法、および有効性確認応答方法、並びにコンピュータ・プログラム
JP6308295B2 (ja) 通信装置、サーバ、通信システム及び通信方法
JP2005347978A (ja) 通信システム、通信装置及びその動作制御方法並びにプログラム
JP2005287044A (ja) Ipネットワークに接続された装置の発見の方法、及び、この方法を実行する装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20110324

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120724

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120807

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20121009

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20121120

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130116

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20130212