(58)【調査した分野】(Int.Cl.,DB名)
前記制御部は、前記第1のパケット検出部の検出結果に基づき、前記識別情報が競合する場合に新たな識別情報を設定する設定部を備えたこと、を特徴とする請求項1または2に記載のネットワーク機器。
【発明の概要】
【発明が解決しようとする課題】
【0004】
ところで、上記のネットワークシステムにおいて、複数の機器に同じ識別番号が設定されるおそれがある。しかしながら、上記のネットワークシステムでは、マスター装置にてスレーブ装置におけるアドレス設定の異常を解消している。このため、マスター装置が設定されないネットワークシステムでは、上記のようなアドレス設定の異常が解消されないため、通信エラーが発生する。
【0005】
本発明は、上記課題を解決するためになされたものであって、その目的は、通信エラーの発生を抑制することにある。
【課題を解決するための手段】
【0006】
上記課題を解決するネットワーク機器は、通信パケットにより他の機器との間で相互に通信可能なネットワーク機器であって、識別情報に基づいて、前記他の機器から受信した通信パケットを解析し、解析結果に応じて前記受信した通信パケットを処理し、前記他の機器に送信する通信パケットを生成する制御部を備え、前記制御部は、前記識別情報の競合を検出するための第1の通信パケットを生成し送信する第1のパケット生成部と、受信した通信パケットを解析し、前記第1の通信パケットに対する応答パケットの受信の有無に応じて、前記識別情報の競合を検出する第1のパケット検出部と、前記識別情報が競合しない場合に、前記他の機器に対して前記第1の通信パケットの送信を要求する第2の通信パケットを生成し送信する第2のパケット生成部と、受信した通信パケットを解析し、前記他の機器から前記第2の通信パケットの受信を検出する第2のパケット検出部と、前記第2のパケット検出部の検出結果に基づき、前記第2の通信パケットを受信した場合に前記第1のパケット生成部に対して前記第1の通信パケットの送信を要求する送信要求部と、前記第1のパケット検出部の検出結果に基づき、前記識別情報が競合する場合にその旨を通知する通知部とを備えた。
【0007】
この構成によれば、ネットワーク機器は、先ず、第1の通信パケットを送信して自機器の識別情報の競合を確認する。その後、ネットワーク機器が第2の通信パケットを送信することで、ネットワークに接続された他の機器が第1の通信パケットにより識別情報の競合を確認する。たとえば、このネットワーク機器における識別情報の競合の確認が他の機器から遅れた場合、識別情報の競合を確認することができた範囲の機器でネットワークを構成するため、複数のネットワークが構成される。そして、ネットワーク機器が第2の通信パケットを送信することにより、各ネットワークの接続された他の機器が第1の通信パケットを送信して識別情報の競合を確認することが可能となる。
【0008】
このように、このネットワーク機器が他の機器よりも第1の通信パケットによる識別情報の競合が遅れた場合であっても、第2の通信パケットを送信することで、他の機器が再度識別情報の競合を確認することで、1つのネットワークを構成する複数の機器における識別情報の競合が検出される。識別情報の競合は、ネットワークにおける通信エラーの要因の1つである。したがって、識別情報が競合したままで通信を行うことがなくなり、通信エラーの発生を抑制することができる。
【0009】
また、このネットワーク機器は、他の機器から送信される第2の通信パケットに応答して第1の通信パケットを送信し、自機器の識別情報の競合を確認する。このため、第2の通信パケットを送信する他の機器よりも先に識別情報の競合の確認を終了した場合に、第2の通信パケットを送信する他の機器により接続された機器との間で再度識別情報の競合を確認することができる。このため、競合したままで通信を行うことがなくなり、通信エラーの発生を抑制することができる。そして、識別情報が競合する機器をネットワーク機器の操作者等によって容易に確認することができる。このため、識別情報の競合を容易に解消することが可能となる。
【0010】
上記のネットワーク機器において、前記他の機器と接続される複数の接続ポートを備え、前記第1のパケット生成部は、前記第2の通信パケットを受信した前記接続ポートから前記第1の通信パケットを送信することが好ましい。
【0011】
この構成によれば、第2の通信パケットを受信するとき、このネットワーク機器は第1の通信パケットにより識別情報の競合を確認して1つのネットワークを構成している。第2の通信パケットは、このネットワークに対して新たに接続される機器から送信される。したがって、新たに接続される機器に対して識別情報の競合を確認すればよい。このため、第2の通信パケットを受信した接続ポートからのみ第1の通信パケットを送信することで、通信パケットの無駄な送信を防ぐことができる。そして、このネットワーク機器は、送信した第1の通信パケットに対する応答を確認しなければならないため、その確認に要する時間が、第2の通信パケットを受信した接続ポートからのみ第1の通信パケットを送信することで短くなる。したがって、識別情報の競合の確認に要する時間を短縮することができる。
【0012】
上記のネットワーク機器において、前記制御部は、前記第1のパケット検出部の検出結果に基づき、前記識別情報が競合する場合に新たな識別情報を設定する設定部を備えることが好ましい。
【0013】
この構成によれば、識別情報が競合するネットワーク機器が新たな識別情報を設定することで、ネットワーク機器の操作者等の作業を必要とせず、識別情報の競合を容易に解消することが可能となる。
【0014】
上記課題を解決するネットワーク機器の制御プログラムを実行する制御は、識別情報に基づいて、他の機器から受信した通信パケットを解析し、解析結果に応じて前記受信した通信パケットを処理し、前記他の機器に送信する通信パケットを生成し、前記識別情報の競合を検出するための第1の通信パケットを生成し送信し、受信した通信パケットを解析し、前記第1の通信パケットに対する応答パケットの受信の有無に応じて、前記識別情報の競合を検出し、前記識別情報が競合しない場合に、前記他の機器に対して前記第1の通信パケットの送信を要求する第2の通信パケットを生成し送信し、受信した通信パケットを解析し、前記他の機器から前記第2の通信パケットの受信を検出し、前記第2の通信パケットの検出結果に基づき、前記第2の通信パケットを受信した場合に前記第1のパケット生成部に対して前記第1の通信パケットの送信を要求し、前記第1の通信パケットの検出結果に基づき、前記識別情報が競合する場合にその旨を通知する。
【0015】
この構成によれば、ネットワーク機器の制御プログラムでは、先ず、第1の通信パケットを送信して自機器の識別情報の競合を確認する。その後、ネットワーク機器が第2の通信パケットを送信することで、ネットワークに接続された他の機器が第1の通信パケットにより識別情報の競合を確認する。たとえば、このネットワーク機器における識別情報の競合の確認が他の機器から遅れた場合、識別情報の競合を確認することができた範囲の機器でネットワークを構成するため、複数のネットワークが構成される。そして、ネットワーク機器が第2の通信パケットを送信することにより、各ネットワークの接続された他の機器が第1の通信パケットを送信して識別情報の競合を確認することが可能となる。
【0016】
このように、このネットワーク機器が他の機器よりも第1の通信パケットによる識別情報の競合が遅れた場合であっても、第2の通信パケットを送信することで、他の機器が再度識別情報の競合を確認することで、1つのネットワークを構成する複数の機器における識別情報の競合が検出される。識別情報の競合は、ネットワークにおける通信エラーの要因の1つである。したがって、識別情報が競合したままで通信を行うことがなくなり、通信エラーの発生を抑制することができる。
【0017】
また、このネットワーク機器の制御プログラムでは、他の機器から送信される第2の通信パケットに応答して第1の通信パケットを送信し、自機器の識別情報の競合を確認する。このため、第2の通信パケットを送信する他の機器よりも先に識別情報の競合の確認を終了した場合に、第2の通信パケットを送信する他の機器により接続された機器との間で再度識別情報の競合を確認することができる。このため、競合したままで通信を行うことがなくなり、通信エラーの発生を抑制することができる。そして、識別情報が競合する機器をネットワーク機器の操作者等によって容易に確認することができる。このため、識別情報の競合を容易に解消することが可能となる。
【0018】
上記のネットワーク機器の制御プログラムにおいて、前記他の機器と接続される複数の接続ポートを備え、前記制御部は、前記第2の通信パケットを受信した前記接続ポートから前記第1の通信パケットを送信することが好ましい。
【0019】
この構成によれば、第2の通信パケットを受信するとき、このネットワーク機器は第1の通信パケットにより識別情報の競合を確認して1つのネットワークを構成している。第2の通信パケットは、このネットワークに対して新たに接続される機器から送信される。したがって、新たに接続される機器に対して識別情報の競合を確認すればよい。このため、第2の通信パケットを受信した接続ポートからのみ第1の通信パケットを送信することで、通信パケットの無駄な送信を防ぐことができる。そして、このネットワーク機器は、送信した第1の通信パケットに対する応答を確認しなければならないため、その確認に要する時間が、第2の通信パケットを受信した接続ポートからのみ第1の通信パケットを送信することで短くなる。したがって、識別情報の競合の確認に要する時間を短縮することができる。
【発明の効果】
【0020】
本発明によれば、通信エラーの発生を抑制することができる。
【発明を実施するための形態】
【0022】
以下、一実施形態を説明する。
図2に示すように、ネットワークシステム10は、複数(図において6つ)のネットワーク機器11を有している。これらのネットワーク機器は、それぞれ2つの接続ポートP1,P2を有し、接続ポートP1,P2に接続されたケーブル12を介して直列に、所謂デイジーチェーン接続されている。なお、以下の説明において、各ネットワーク機器11を区別するために符号に「a」〜「f」を付す場合がある。つまり、このネットワークシステム10は、直列に接続されたネットワーク機器11a〜11fを含む。
【0023】
図1に示すように、ネットワーク機器11は、処理部21を有している。ネットワーク機器11は、たとえば工場などにおいて、製造装置等の外部機器をシーケンス制御するためにプログラマブルロジックコントローラ(PLC:Programmable Logic Controller)である。処理部21は、図示しない外部機器を制御する。なお、ネットワーク機器11は、上記の外部機器、温度等の測定装置、画像処理装置、表示装置、等としてもよい。
【0024】
また、ネットワーク機器11は、他の機器との通信のために、制御部22、記憶部23、出力部24、送受信部25,26、接続ポートP1,P2を有している。制御部22は、所定の規格(たとえばイーサネット(登録商標))に準拠したプロトコルに基づいて、他の機器と通信する。
【0025】
記憶部23には、このネットワーク機器11の識別情報(IPアドレス等)や、このネットワーク機器11の通信のための設定値が記憶される。制御部22は、記憶部23に格納された各種の情報を読み出し、内部のレジスタに設定する。
【0026】
各接続ポートP1,P2はそれぞれ送受信部25,26に接続され、送受信部25,26は制御部22に接続されている。制御部22は、送受信部25,26を介して他のネットワーク機器との間でパケット(フレームとも呼ばれる)を送受信する。パケットは、送信元の識別情報、送信先の識別情報を含む。識別情報は、たとえば、MACアドレス、IPアドレス、等である。制御部22は、レジスタに設定された識別情報に基づいて、受信したパケットが自機器に対するパケットか否かを判定する。制御部22は、自機器に対するパケットの場合、そのパケットに含まれる各種の情報、データを処理する。たとえば、データ転送の場合、制御部22は、受信したパケットに含まれるデータを処理部21へ出力する。一方、受信したパケットが自機器に対するパケットでは無い場合、制御部22は、受信した送受信部と異なる送受信部を介してそのパケットを送信する。たとえば、
図2において、ネットワーク機器11aは、ネットワーク機器11fを指定したパケットを送信する。ネットワーク機器11bは、接続ポートP1から受信したパケットの識別情報にしたがって、そのパケットを接続ポートP2から出力する。同様に、ネットワーク機器11c〜11eは、受信したパケットを接続ポートP2から送信する。これにより、ネットワーク機器11fは、ネットワーク機器11aが送信した自機器宛のパケットを受信する。
【0027】
また、送信先の識別情報は、全てのネットワーク機器を指定する情報の場合がある。このパケットの場合、各ネットワーク機器11は、受信したパケットに対する処理を行うとともに、受信したパケットを送信する。
【0028】
制御部22は、受信したパケットに従ってネットワークの異常を検出する機能を有している。ネットワークの異常の1つは、各機器の識別情報(たとえばIPアドレス)が重複している、つまり複数のネットワーク機器に同じ値の識別情報が設定されている、所謂アドレス異常である。制御部22は、アドレス異常を検出すると、出力部24を制御する。出力部24は、たとえば、LED等の表示素子、液晶パネルなどの表示装置、ブザー、等である。制御部22は、出力部24を介して、ネットワーク機器11の操作者(ユーザ)やネットワーク管理者等にネットワーク異常(アドレス異常)を通知する。
【0029】
図3は、制御部22と送受信部25,26の構成を示すブロック図である。
送受信部25は、受信処理部31と送信処理部32を含む。受信処理部31と送信処理部32は、
図1に示す接続ポートP1に接続されている。受信処理部31は、接続ポートP1から入力される信号を処理し、処理後の通信パケットを制御部22の受信パケット解析部51に出力する。送信処理部32は、制御部22の送信パケット生成部52により生成された通信パケットを処理して
図1に示す接続ポートP1から出力する。
【0030】
同様に、送受信部26は、受信処理部41と送信処理部42を含む。受信処理部41と送信処理部42は、
図1に示す接続ポートP2に接続されている。受信処理部41は、接続ポートP1から入力される信号を処理し、処理後の通信パケットを制御部22の受信パケット解析部51に出力する。送信処理部42は、制御部22の送信パケット生成部52により生成された通信パケットを処理して
図1に示す接続ポートP2から出力する。
【0031】
受信パケット解析部51は、受信した通信パケットを解析し、解析結果に応じてその通信パケットを処理する。通信パケットは送信先の識別情報と送信元の識別情報を含む。受信パケット解析部51は、送信先の識別情報に基づいて、受信した通信パケットを解析し、その解析結果を送信パケット生成部52に出力する。送信パケット生成部52は、解析結果に基づいて、他の機器宛ての通信パケット、またはブロードキャストされた通信パケットを、通信パケットを受信したポートと異なるポートから送信するように、送信パケットを生成する。
【0032】
また、受信パケット解析部51は、競合検出部61と、要求検出部62を含む。競合検出部61は、受信パケットの解析結果に基づいて、競合応答パケット(ARP応答)を受信したか否かを検出し、その検出結果を出力する。通知部56は、競合検出部61の検出結果に基づいて、
図1に示す出力部24を制御し、アドレス異常(アドレス競合)を通知する。要求検出部62は、受信パケットの解析結果に基づいて、検出要求パケット(第2の通信パケット)を受信したか否かを検出し、その検出結果を出力する。
【0033】
設定部53は、
図1に示す記憶部23から識別情報(IPアドレス等)を読み出し、その識別情報を検出要求部54と送信要求部55に出力する。
検出要求部54は、設定部53により識別情報が設定されると、識別情報の競合を検出するための通信パケット(競合検出パケット(ARP要求))(第1の通信パケット)を生成するための要求を送信パケット生成部52に出力する。また、検出要求部54は、受信パケット解析部51の要求検出部62から出力される検出結果に基づいて、競合検出パケット(ARP要求)を生成するための要求を送信パケット生成部52に出力する。
【0034】
送信要求部55は、設定部53により識別情報が設定され、競合応答パケット(ARP応答)を受信しない場合に、検出要求パケットを生成するための要求を送信パケット生成部52に出力する。
【0035】
送信パケット生成部52は、競合検出パケット生成部71と、検出要求パケット生成部72を含む。競合検出パケット生成部71は、検出要求部54の要求に基づいて、送信先と送信元の識別情報に自機器の識別情報を設定した競合検出パケット(ARP要求)を生成し、その競合検出パケットを送信処理部32,42に出力する。検出要求パケット生成部72は、送信要求部55の要求に基づいて、送信先の識別情報にブロードキャストのための情報を設定した検出要求パケットを生成し、その検出要求パケットを送信処理部32,42に出力する。
【0036】
なお、
図3に示す各ブロックは、制御部22と送受信部25,26において、アドレス競合にかかる機能を示すものであり、他の機能のブロックが含まれる場合もある。また、
図3に示すブロックを更に細分化した機能のブロックとしてもよいし、複数の機能を合わせて1つのブロックとしてもよい。
【0037】
次に、ネットワーク機器11における処理の流れを説明する。
図4,
図5は、ネットワーク機器11の制御部22が実行する制御プログラムの流れの概略を示す。この制御プログラムは、制御部22の記憶部(たとえば不揮発性メモリ)等に記憶されている。なお、この制御プログラムは、制御部22に対して、ネットワークを通じて、またはこのネットワーク機器11に接続された装置(たとえばパーソナルコンピュータ)から、またはハードディスク装置やメモリカードなどの可搬性を有する記憶媒体により書き込むこともできる。
【0038】
先ず、電源投入時の処理を説明する。
図4に示すように、電源が投入されると、まず初期化処理を行う(ステップS11)。この初期化処理において、記憶部23から読み出したIPアドレスを設定する。
【0039】
次に、自装置のIPアドレスを設定した競合検出パケット(ARP要求)を、送受信部25,26を介してネットワークに接続されたすべての機器に対して送信する(ステップS12)。
【0040】
そして、競合応答パケット(ARP応答)を受信したか否かを判定する(ステップS13)。競合応答パケットを受信した場合(判定:YES)、出力部24を駆動してIPアドレスが競合している旨を通知する(ステップS14)。
【0041】
一方、競合応答パケットを受信していない場合(判定:NO)、競合検出送信要求パケット(検出要求パケット:再検出パケット)を送信し(ステップS15)、通常処理へ移行する(ステップS16)。
【0042】
次に、検出要求パケットの受信時における処理を説明する。
図5に示す処理は、たとえば
図1に示す制御部22に対して、検出要求パケットを受信した送受信部25,26から出力される信号(たとえば割り込み信号)に基づいて、実行される。
【0043】
図5に示すように、検出要求パケットを受信すると(ステップS21)、自装置のIPアドレスを設定した競合検出パケット(ARP要求)をネットワークに接続されたすべての機器に対して送信する(ステップS22)。
【0044】
そして、競合応答パケット(ARP応答)を受信したか否かを判定する(ステップS23)。競合応答パケットを受信した場合(判定:YES)、出力部24を駆動してIPアドレスが競合している旨を通知する(ステップS24)。
【0045】
一方、競合応答パケットを受信していない場合(判定:NO)、通常処理へ移行する(ステップS25)。なお、この通常処理(ステップ25)は、
図4に示す通常処理(ステップS16)と同じ処理である。
【0046】
次に、上記した処理に応じた機器間の通信のシーケンスを説明する。なお、ここでは、識別情報(アドレス)が競合する2つの機器と、それらの間に介在される機器の間の通信シーケンスを説明する。なお、この説明において、識別情報を単に「アドレス」としたため、
図2に示すネットワーク機器の符号と異なる符号を用いて説明する。
【0047】
図6に示すように、ネットワーク機器81には、アドレス「01」が設定され、ネットワーク機器82には、アドレス「02」が設定され、ネットワーク機器83には、アドレス「01」が設定されている。なお、
図6において、縦の二重線は、各機器が供給される電源に基づいて動作する期間を示す。つまり、機器81,83に対して、機器82が遅れて動作する。
【0048】
先ず、ネットワーク機器81は、アドレス「01」を含む競合検出パケット(ARP要求)を送信する。このとき、ネットワーク機器82は動作していないため、ネットワーク機器81の競合検出パケット(ARP要求)は、ネットワーク機器83に到達しない。競合応答パケット(ARP応答)を受信しないため、したがって、ネットワーク機器81は、アドレス「01」を確定する。
【0049】
同様に、ネットワーク機器83から送信されアドレス「01」を含む競合検出パケット(ARP要求)は、ネットワーク機器81に到達しない。したがって、ネットワーク機器83は、競合応答パケット(ARP応答)を受信しないため、アドレス「01」を確定する。
【0050】
次に、ネットワーク機器82は、電源投入に基づいて、ネットワーク機器81,83に対して、アドレス「02」を含む競合検出パケット(ARP要求)を送信する。ネットワーク機器81,83は、受信した競合検出パケットのアドレス「02」がそれぞれのアドレス「01」と一致しないため、競合応答パケット(ARP応答)を送信しない。したがって、ネットワーク機器82は、アドレス「02」を確定する。
【0051】
次いで、ネットワーク機器82は、検出要求パケットを送信する。ネットワーク機器83は、その検出要求パケットに基づいて、アドレス「01」を含む競合検出パケット(ARP要求)を送信する。なお、図では、ネットワーク機器81,82に対して競合検出パケット(ARP要求)を送信するように矢印を示しているが、競合検出パケット(ARP要求)は、全ての機器を指定した、所謂ブロードキャストにて送信される。したがって、ネットワーク機器82は、ネットワーク機器83からの競合検出パケット(ARP要求)を、ネットワーク機器81へ送信する。
【0052】
同様に、ネットワーク機器81は、検出要求パケットに基づいて、アドレス「01」を含む競合検出パケット(ARP要求)を送信する。ネットワーク機器82は、ネットワーク機器81からの競合検出パケット(ARP要求)を、ネットワーク機器83へ送信する。
【0053】
ネットワーク機器83は、受信した競合検出パケット(ARP要求)のアドレス「01」が自装置のアドレス「01」と一致するため、競合応答パケット(ARP応答)を送信する。ネットワーク機器81は、競合応答パケットに基づいて、自機器と競合する識別情報が設定されたネットワーク機器83の存在を認識する。
【0054】
同様に、ネットワーク機器81は、受信した競合検出パケット(ARP要求)のアドレス「01」が自装置のアドレス「01」と一致するため、競合応答パケット(ARP応答)を送信する。ネットワーク機器83は、競合応答パケットに基づいて、自機器と競合する識別情報が設定されたネットワーク機器81の存在を認識する。
【0055】
次に、上記のネットワーク機器11の作用を説明する。
図7に示すように、6つのネットワーク機器11a〜11fがケーブル12により直列に接続(デイジーチェーン接続)されている。ネットワーク機器11aには、IPアドレス「192.168.1.2」が設定されている。同様に、ネットワーク機器11b〜11fには、
図7に示すようにIPアドレスが設定されている。
【0056】
今、ネットワーク機器11a〜11c,11e,11fの電源がオンされる。つまり、このネットワークシステムにおいて、ネットワーク機器11dの電源がオフされている。
電源がオンされたネットワーク機器11a〜11c,11e,11fは、それぞれポートに対する機器の接続を認識し、機器が接続されたポートから競合検出パケット(「ARP」と表記)を送信する。
【0057】
このとき、ネットワーク機器11dは、電源がオフしているため、競合検出パケット(ARP)は伝達されない。つまり、ネットワーク機器11cからネットワーク機器11dに向かって送信された競合検出パケット(ARP)は、ネットワーク機器11e,11fに到達しない。したがって、ネットワーク機器11a〜11cによりアドレス競合が検出されず、1つのネットワークシステムとして構築される。
【0058】
同様に、ネットワーク機器11eからネットワーク機器11dに向かって送信された競合検出パケット(ARP)は、ネットワーク機器11a〜11cに到達しない。したがって、ネットワーク機器11e,11fによりアドレス競合が検出されず、1つのネットワークシステムとして構築される。
【0059】
次に、
図8(a)に示すように、ネットワーク機器11dの電源がオンされると、このネットワーク機器11dは各接続ポートP1,P2から競合検出パケット(ARP)を送信する。この競合検出パケット(ARP)に含まれる送信先の識別情報(IPアドレス)は、「192.168.1.5」であるため、他のネットワーク機器11a〜11c,11e,11fは、競合応答パケット(ARP応答)を送信しない。したがって、ネットワーク機器11dは、所定期間が経過した後、アドレス異常が無い(アドレス競合無し)と判定する。
【0060】
次いで、
図8(b)に示すように、ネットワーク機器11dは、2つの接続ポートP1,P2の何れか一方(図では接続ポートP2)から競合検出要求(検出要求パケット)を送信(ブロードキャスト)する。ネットワーク機器11e,11fは、検出要求パケットを受信する。
【0061】
そして、
図8(c)に示すように、検出要求パケットを受信したネットワーク機器11eは、接続ポートP1,P2のそれぞれから競合検出パケット(ARP)を送信する。この競合検出パケット(ARP)は、ネットワーク機器11eの識別情報であるIPアドレス「192.168.1.4」を含む。したがって、他のネットワーク機器11a〜11d,11fは、競合応答パケット(ARP応答)を送信しない。このため、ネットワーク機器11eは、アドレス異常(アドレス競合)は無いと判定する。
【0062】
さらに、検出要求パケットを受信したネットワーク機器11fは、接続ポートP1から競合検出パケット(ARP)を送信する。この競合検出パケット(ARP)は、ネットワーク機器11eの識別情報であるIPアドレス「192.168.1.2」を含む。したがって、ネットワーク機器11aは、競合応答パケット(ARP応答)を送信する。ネットワーク機器11fは、ネットワーク機器11aの競合応答パケット(ARP応答)を受信し、アドレス異常(アドレス競合)有りと判定し、その旨を通知する。
【0063】
従来、競合検出パケット(ARP要求)は、ネットワーク機器の電源投入時に送信される。したがって、
図7に示すように、1つのネットワーク機器11dの電源投入が遅れた場合、ネットワーク機器11aとネットワーク機器11fの間のアドレス異常(アドレス競合)は検出されない。このため、ネットワーク機器11a,11fに対する通信にエラーが発生する。
【0064】
これに対し、本実施形態では、電源が投入されたネットワーク機器11dは、先ず、競合検出パケット(ARP要求)を送信し、自機器の識別情報に対するアドレス異常(アドレス競合)を判定する。これにより、独立した2つのネットワークを接続するネットワーク機器11におけるアドレス異常(アドレス競合)が無いことを確認する。その後、ネットワーク機器11dは、検出要求パケットを送信する。ネットワーク機器11e,11fは、検出要求パケットに基づいて、競合検出パケット(ARP要求)を送信する。そして、ネットワーク機器11fは、競合応答パケット(ARP応答)に基づいて、アドレス異常(アドレス競合)を検出する。これにより、全てのネットワーク機器11a〜11fの電源を再投入することなく、アドレス異常(アドレス競合)を検出することができ、通信エラーの発生を抑制することができる。
【0065】
なお、全てのネットワーク機器11a〜11fの電源を再投入した場合、電源の投入タイミングが競合検出パケット(ARP要求)よりも遅れる場合がある。このような場合も、上記と同様に、従来ではアドレス異常(アドレス競合)を検出することができない。これに対し、本実施形態では、電源投入のタイミングずれが場合であれ、確実にアドレス異常(アドレス競合)を検出することができ、通信エラーの発生を抑制することができる。
【0066】
上記したように、デイジーチェーン接続された複数のネットワーク機器11a〜11fにおいて、1つのネットワーク機器11dの電源投入が遅れた場合、他のネットワーク機器11a〜11cとネットワーク機器11e,11fは互いに独立した2つのネットワークを構成する。このように構築された2つのネットワークにおいて、アドレス異常(アドレス競合)は発生していない。このような場合、一方のネットワークを構成するネットワーク機器と、他方のネットワークを構成するネットワーク機器との間のアドレス競合を確認すればよい。つまり、一方のネットワークを構成するネットワーク機器のそれぞれがアドレス競合を確認すればよい。一部のネットワーク機器がアドレス競合を確認するために必要な時間は、接続された全てのネットワーク機器がアドレス競合を検出するために必要な時間と比べ、短い。したがって、短時間でアドレス競合の有無を確認することができる。
【0067】
以上記述したように、本実施形態によれば、以下の効果を奏する。
(1)ネットワーク機器11の制御部22は、受信パケット解析部51、送信パケット生成部52、送信要求部55を有している。受信パケット解析部51の競合検出部61は、受信した通信パケットを解析し、競合検出パケットに対する競合応答パケット(ARP応答)の受信の有無に応じて、識別情報の競合を検出する。送信パケット生成部52の競合検出パケット生成部71は、識別情報の競合を検出するための競合検出パケット(ARP要求)を生成し送信する。送信パケット生成部52の検出要求パケット生成部72は、他の機器に対して競合検出パケットの送信を要求する検出要求パケットを生成し送信する。
【0068】
ネットワーク機器11は、先ず、競合検出パケットを送信して自機器の識別情報の競合を確認する。その後、ネットワーク機器11が検出要求パケットを送信することで、ネットワークに接続された他の機器が競合検出パケットにより識別情報の競合を確認する。たとえば、このネットワーク機器11における識別情報の競合の確認が他の機器から遅れた場合、識別情報の競合を確認することができた範囲の機器でネットワークを構成するため、複数のネットワークが構成される。そして、ネットワーク機器11が検出要求パケットを送信することにより、各ネットワークの接続された他の機器が競合検出パケットを送信して識別情報の競合を確認することが可能となる。
【0069】
このように、このネットワーク機器11が他の機器よりも競合検出パケットによる識別情報の競合が遅れた場合であっても、検出要求パケットを送信することで、他の機器が再度識別情報の競合を確認することで、1つのネットワークを構成する複数の機器における識別情報の競合が検出される。識別情報の競合は、ネットワークにおける通信エラーの要因の1つである。したがって、識別情報が競合したままで通信を行うことがなくなり、通信エラーの発生を抑制することができる。
【0070】
(2)制御部22の受信パケット解析部51は要求検出部62を備えている。要求検出部62は、受信した通信パケットを解析し、他の機器から検出要求パケットの受信を検出する。送信要求部55は、要求検出部62の検出結果に基づき、検出要求パケットを受信した場合に競合検出パケット生成部71に対して競合検出パケットの送信を要求する。したがって、このネットワーク機器11は、他の機器から送信される検出要求パケットに応答して競合検出パケットを送信し、自機器の識別情報の競合を確認する。このため、検出要求パケットを送信する他の機器よりも先に識別情報の競合の確認を終了した場合に、検出要求パケットを送信する他の機器により接続された機器との間で再度識別情報の競合を確認することができる。このため、競合したままで通信を行うことがなくなり、通信エラーの発生を抑制することができる。
【0071】
(3)制御部22は、競合検出部61の検出結果に基づき、識別情報が競合する場合にその旨を通知する通知部56を備えた。これにより、識別情報が競合する機器をネットワーク機器の操作者等によって容易に確認することができる。このため、識別情報の競合を容易に解消することが可能となる。
【0072】
尚、上記各実施形態は、以下の態様で実施してもよい。
・上記実施形態に対し、制御部22は、検出したアドレス異常にしたがって、IPアドレスの設定を変更してもよい。たとえば、制御部22は、ARP要求の送信とそれに対する応答にしたがって未設定のIPアドレスを認識し、その未設定のIPアドレスを自機器のIPアドレスとして設定する。これにより、通信異常の発生を抑制することができる。
【0073】
・上記実施形態において、
図2では、複数のネットワーク機器11(11a〜11f)によりネットワークを構成したが、他の機器(HUB,SWITCH)等を接続してネットワークを構成してもよい。
【0074】
・
図2では、それぞれ2つの接続ポートP1,P2を有するネットワーク機器11を接続してネットワークを構成したが、1つのポートを有するネットワーク機器、3つ以上のポートを有するネットワーク機器11を接続してネットワークを構成してもよい。
【0075】
・上記実施形態では、
図2に示すように、複数(6つ)のネットワーク機器11を直列接続(デイジーチェーン接続)してネットワークを構成したが、他の接続形態(スター、ツリー)のネットワークを構成してもよい。
【0076】
・上記実施形態では、
図8(b)に示すように、ネットワーク機器11dが接続ポートP2から競合検出要求(検出要求パケット)を送信したが、接続ポートP1から競合検出要求を送信してもよい。また、両接続ポートP1,P2から競合検出要求を送信してもよい。
【0077】
・上記実施形態では、
図8(c)に示すように、競合検出要求を受信したネットワーク機器11eが両接続ポートP1,P2から競合検出パケット(ARP要求)を送信した。これに対し、競合検出要求を受信した接続ポートP1のみから競合検出パケット(ARP要求)を送信するようにしてもよい。
図7に示すように、ネットワーク機器11dの電源が投入されていないとき、ネットワーク機器11eは、ネットワーク機器11fに対して競合検出パケット(ARP要求)を送信し、アドレス異常(アドレス競合)が無いことを確認している。したがって、新たに接続されたネットワーク機器に対してアドレス異常(アドレス競合)を確認すればよい。したがって、検出要求パケットを受信した接続ポートからのみ競合検出パケットを送信することで、通信パケットの無駄な送信を防ぐことができる。
【0078】
また、両接続ポートP1,P2から競合検出パケットを送信した場合、それぞれの接続ポートP1,P2における競合応答パケットの受信を確認しなければならないので、確認に時間を要する場合がある。したがって、一方の接続ポートP1のみから競合検出パケットを送信することで、アドレス異常の確認に要する時間を短縮することが可能となる。また、一方の接続ポートP1のみから競合検出パケットを送信することで、その接続ポートP1における競合応答パケットの受信を確認すればよく、確認のための処理を簡略化することが可能となる。
【0079】
・上記実施形態に対し、検出要求パケットの出力条件を適宜変更してもよい。
たとえば、
図9に示すネットワーク機器91の制御部92は、接続検出部93を有している。この接続検出部93は、各接続ポートP1,P2に対するケーブルの接続を検出し、検出結果を出力する。送信要求部55は、接続検出部93の検出結果に基づいて、検出要求パケットの送信を送信パケット生成部52に対して要求する。たとえば独立した2つのネットワークが構成され、一方のネットワークを構成するネットワーク機器と、他方のネットワークを構成するネットワーク機器とをケーブルにより互いに接続する。このような場合、接続検出部93がケーブルによる接続を検出して検出要求パケットを送信することにより、1つのネットワークを構成したネットワーク機器におけるアドレス異常(アドレス競合)を容易に検出することが可能となる。
【0080】
・上記実施形態に対し、
図3に示す設定部53が、検出結果に基づいて識別情報(IPアドレス)を変更してもよい。たとえば、設定部53は、
図1に示す記憶部23から読み出した識別情報(IPアドレス)に所定値(たとえば「1」)を加算して生成した新たな識別情報を検出要求部54に設定し、検出要求部54は、その設定に基づいて、送信パケット生成部52に対する要求を出力する。そして、送信パケット生成部52は、設定された識別情報に従って生成した競合検出パケットを送信する。この新たに設定した識別情報が競合しない場合、その識別情報を
図1に示す記憶部23に格納することで、識別情報の設定にネットワーク機器の操作者等の作業を必要とせず、手間を省くことができ、外部機器等を制御することができる。さらに、次の電源投入時におけるアドレス異常(アドレス競合)を防止することができ、電源投入時における処理に要する時間の短縮を図ることができる。