(57)【特許請求の範囲】
【請求項１】
複数のポートを有するネットワーク機器であって、
各ポートのリンクアップを検出するリンクアップ検出部と、
前記ネットワーク機器によって構成されるループを検出するループ検出部と、
前記ループが検出された場合に、前記ループの検出より前に、最後にリンクアップが検出されたポートによる通信を遮断する通信遮断部と、
前記ポートにおいてリンクアップが検出されてから前記ループが検出されるまでの検出時間を、前記リンクアップが検出されたポートであるリンクアップ検出ポートに対応づけて記録する検出時間記録部と、を備え、
前記通信遮断部は、前記検出時間記録部に記録されている前記検出時間のうちの短い方に対応するリンクアップ検出ポートによる通信を遮断し、
前記リンクアップは、前記各ポートにおいて送受信が可能な状態である、
ネットワーク機器。
【請求項２】
複数のポートを有するネットワーク機器であって、
各ポートのリンクアップを検出するリンクアップ検出部と、
前記ネットワーク機器によって構成されるループを検出するループ検出部と、
前記ループが検出された場合に、前記ループの検出より前に、最後にリンクアップが検出されたポートによる通信を遮断する通信遮断部と、
ループ検出フレームを送出するループ検出フレーム送出部と、を備え、
前記ループ検出部は、前記ループ検出フレームを検出することにより、前記ループを検出し、
前記ループ検出フレーム送出部が、前記リンクアップ検出部によってリンクアップが検出された時点から所定時間後に、前記リンクアップが検出されたポートであるリンクアップ検出ポートから、前記ループ検出フレームを送出し、
前記ネットワーク機器には、他のネットワーク機器が接続されており、
前記所定時間は、
前記ネットワーク機器のポートを通信ケーブルにより物理的に接続してから送受信が可能な状態になるまでの時間と、前記ネットワーク機器と前記他のネットワーク機器とを前記通信ケーブルにより物理的に接続してから送受信が可能な状態になるまでの時間との差よりも長く、
前記リンクアップは、前記各ポートにおいて送受信が可能な状態である、
ネットワーク機器。
【請求項３】
請求項２に記載のネットワーク機器であって、
前記ポートにおけるリンクアップの検出時刻を、前記リンクアップが検出されたポートであるリンクアップ検出ポートに対応づけて記録するリンクアップ時刻記録部を備え、
前記通信遮断部は、前記リンクアップ時刻記録部の記録内容に基づき、通信を遮断する、
ネットワーク機器。
【請求項４】
請求項２に記載のネットワーク機器であって、
前記ポートにおいてリンクアップが検出されてから前記ループが検出されるまでの検出時間を、前記リンクアップが検出されたポートであるリンクアップ検出ポートに対応づけて記録する検出時間記録部を備え、
前記通信遮断部は、前記検出時間記録部に記録されている前記検出時間のうちの短い方に対応するリンクアップ検出ポートによる通信を遮断する、
ネットワーク機器。
【請求項５】
請求項１に記載のネットワーク機器であって、
ループ検出フレームを送出するループ検出フレーム送出部を備え、
前記ループ検出部は、前記ループ検出フレームを検出することにより、前記ループを検出する、
ネットワーク機器。
【請求項６】
請求項５に記載のネットワーク機器であって、
前記ループ検出フレーム送出部が、前記リンクアップ検出部によってリンクアップが検出された時点から所定時間後に、前記リンクアップが検出されたポートであるリンクアップ検出ポートから、前記ループ検出フレームを送出し、
前記ネットワーク機器には、他のネットワーク機器が接続されており、
前記所定時間は、
前記ネットワーク機器のポートを通信ケーブルにより物理的に接続してから送受信が可能な状態になるまでの時間と、前記ネットワーク機器と前記他のネットワーク機器とを前記通信ケーブルにより物理的に接続してから送受信が可能な状態になるまでの時間との差よりも長い、
ネットワーク機器。
【請求項７】
請求項２または６に記載のネットワーク機器であって、
前記他のネットワーク機器においてリンクアップが検出される以前から、前記ネットワーク機器から前記ループ検出フレームが送出されるまで、前記リンクアップ検出ポートの通信を遮断する、
ネットワーク機器。
【請求項８】
請求項７に記載のネットワーク機器であって、
前記ネットワーク機器においてリンクアップが検出されてから、前記ネットワーク機器から前記ループ検出フレームが送出されるまで、前記リンクアップ検出ポートの通信を遮断する、
ネットワーク機器。
【請求項９】
請求項１または２に記載のネットワーク機器であって、
前記ループ検出部は、前記ポートの受信レートに基づき、前記ループを検出する、
ネットワーク機器。
【請求項１０】
請求項１または２に記載のネットワーク機器であって、
前記ポートにより受信されたフレームの送信元のMACアドレスを、該フレームを受信したポートに対応づけて記録するアドレス記録部を備え、
前記ループ検出部は、前記アドレス記録部の記録内容の変更レートに基づき、前記ループを検出する、
ネットワーク機器。
【請求項１１】
複数のポートを有するネットワーク機器によって通信を行う通信方法であって、
各ポートのリンクアップを検出するリンクアップ検出工程と、
前記ネットワーク機器によって構成されるループを検出するループ検出工程と、
前記ループが検出された場合に、前記ループの検出より前に、最後にリンクアップが検出されたポートによる通信を遮断する通信遮断工程と、
前記ポートにおいてリンクアップが検出されてから前記ループが検出されるまでの検出時間を、前記リンクアップが検出されたポートであるリンクアップ検出ポートに対応づけて記録する検出時間記録工程と、を備え、
前記通信遮断工程は、前記検出時間記録工程により記録された前記検出時間のうちの短い方に対応するリンクアップ検出ポートによる通信を遮断し、
前記リンクアップは、前記各ポートにおいて送受信が可能な状態である、
を備えた通信方法。
【請求項１２】
複数のポートを有するネットワーク機器によって通信を行う通信方法であって、
各ポートのリンクアップを検出するリンクアップ検出工程と、
前記ネットワーク機器によって構成されるループを検出するループ検出工程と、
前記ループが検出された場合に、前記ループの検出より前に、最後にリンクアップが検出されたポートによる通信を遮断する通信遮断工程と、
ループ検出フレームを送出するループ検出フレーム送出工程と、を備え、
前記ループ検出工程は、前記ループ検出フレームを検出することにより、前記ループを検出し、
前記ループ検出フレーム送出工程が、前記リンクアップ検出工程によってリンクアップが検出された時点から所定時間後に、前記リンクアップが検出されたポートであるリンクアップ検出ポートから、前記ループ検出フレームを送出し、
前記ネットワーク機器には、他のネットワーク機器が接続されており、
前記所定時間は、
前記ネットワーク機器のポートを通信ケーブルにより物理的に接続してから送受信が可能な状態になるまでの時間と、前記ネットワーク機器と前記他のネットワーク機器とを前記通信ケーブルにより物理的に接続してから送受信が可能な状態になるまでの時間との差よりも長く、
前記リンクアップは、前記各ポートにおいて送受信が可能な状態である、
通信方法。
【請求項１３】
複数のポートを有するネットワーク機器によって通信を行う通信処理をコンピュータに実行させるためのプログラムであって、
前記通信処理が、
各ポートのリンクアップを検出するリンクアップ検出工程と、
前記ネットワーク機器によって構成されるループを検出するループ検出工程と、
前記ループが検出された場合に、前記ループの検出より前に、最後にリンクアップが検出されたポートによる通信を遮断する通信遮断工程と、
前記ポートにおいてリンクアップが検出されてから前記ループが検出されるまでの検出時間を、前記リンクアップが検出されたポートであるリンクアップ検出ポートに対応づけて記録する検出時間記録工程と、を備え、
前記通信遮断工程は、前記検出時間記録工程により記録された前記検出時間のうちの短い方に対応するリンクアップ検出ポートによる通信を遮断し、
前記リンクアップは、前記各ポートにおいて送受信が可能な状態である、
プログラム。
【請求項１４】
複数のポートを有するネットワーク機器によって通信を行う通信処理をコンピュータに実行させるためのプログラムであって、
前記通信処理が、
各ポートのリンクアップを検出するリンクアップ検出工程と、
前記ネットワーク機器によって構成されるループを検出するループ検出工程と、
前記ループが検出された場合に、前記ループの検出より前に、最後にリンクアップが検出されたポートによる通信を遮断する通信遮断工程と、
ループ検出フレームを送出するループ検出フレーム送出工程と、を備え、
前記ループ検出工程は、前記ループ検出フレームを検出することにより、前記ループを検出し、
前記ループ検出フレーム送出工程が、前記リンクアップ検出工程によってリンクアップが検出された時点から所定時間後に、前記リンクアップが検出されたポートであるリンクアップ検出ポートから、前記ループ検出フレームを送出し、
前記ネットワーク機器には、他のネットワーク機器が接続されており、
前記所定時間は、
前記ネットワーク機器のポートを通信ケーブルにより物理的に接続してから送受信が可能な状態になるまでの時間と、前記ネットワーク機器と前記他のネットワーク機器とを前記通信ケーブルにより物理的に接続してから送受信が可能な状態になるまでの時間との差よりも長く、
前記リンクアップは、前記各ポートにおいて送受信が可能な状態である、
プログラム。
【請求項１５】
複数のポートを有するネットワーク機器によって通信を行う通信処理をコンピュータに実行させるためのプログラムを記録したコンピュータによって読み取り可能な記録媒体であって、
前記通信処理が、
各ポートのリンクアップを検出するリンクアップ検出工程と、
前記ネットワーク機器によって構成されるループを検出するループ検出工程と、
前記ループが検出された場合に、前記ループの検出より前に、最後にリンクアップが検出されたポートによる通信を遮断する通信遮断工程と、
前記ポートにおいてリンクアップが検出されてから前記ループが検出されるまでの検出時間を、前記リンクアップが検出されたポートであるリンクアップ検出ポートに対応づけて記録する検出時間記録工程と、を備え、
前記通信遮断工程は、前記検出時間記録工程により記録された前記検出時間のうちの短い方に対応するリンクアップ検出ポートによる通信を遮断し、
前記リンクアップは、前記各ポートにおいて送受信が可能な状態である、
記録媒体。
【請求項１６】
複数のポートを有するネットワーク機器によって通信を行う通信処理をコンピュータに実行させるためのプログラムを記録したコンピュータによって読み取り可能な記録媒体であって、
前記通信処理が、
各ポートのリンクアップを検出するリンクアップ検出工程と、
前記ネットワーク機器によって構成されるループを検出するループ検出工程と、
前記ループが検出された場合に、前記ループの検出より前に、最後にリンクアップが検出されたポートによる通信を遮断する通信遮断工程と、
ループ検出フレームを送出するループ検出フレーム送出工程と、を備え、
前記ループ検出工程は、前記ループ検出フレームを検出することにより、前記ループを検出し、
前記ループ検出フレーム送出工程が、前記リンクアップ検出工程によってリンクアップが検出された時点から所定時間後に、前記リンクアップが検出されたポートであるリンクアップ検出ポートから、前記ループ検出フレームを送出し、
前記ネットワーク機器には、他のネットワーク機器が接続されており、
前記所定時間は、
前記ネットワーク機器のポートを通信ケーブルにより物理的に接続してから送受信が可能な状態になるまでの時間と、前記ネットワーク機器と前記他のネットワーク機器とを前記通信ケーブルにより物理的に接続してから送受信が可能な状態になるまでの時間との差よりも長く、
前記リンクアップは、前記各ポートにおいて送受信が可能な状態である、
記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワーク機器（例えば、スイッチ）に係わるループの解消に関する。
【背景技術】
【０００２】
ネットワーク機器を誤って接続すると、ループが生じる場合がある。
【０００３】
図２０は、従来技術にかかる、ループが生じるネットワーク構成の一例を示す図であり、ループが生じる前のネットワーク構成の一例（図２０（ａ））、ループが生じた後のネットワーク構成の一例（図２０（ｂ））を示す図である。
【０００４】
図２０（ａ）を参照して、スイッチ１００のポート１０１と、ハブ２００のポート２０１とが正しく接続されている。なお、スイッチ１００は、ポート１０１の他に、ポート１０２、１０３を有し、ハブ２００のポート２０１の他に、ポート２０２、２０３を有している。
【０００５】
しかし、図２０（ｂ）を参照して、誤って、スイッチ１００のポート１０３と、ハブ２００のポート２０３とをも接続してしまったとする。このような場合にループが発生する。
【０００６】
例えば、ポート１０１から出力（ブロードキャスト）されたフレームが、ポート２０１およびハブ２００を経由して、ポート２０３から出力される。さらに、ポート２０３から出力されたフレームが、ポート１０３およびスイッチ１００を経由して、ポート１０１から出力される。
【０００７】
例えば、ポート１０３から出力（ブロードキャスト）されたフレームが、ポート２０３およびハブ２００を経由して、ポート２０１から出力される。さらに、ポート２０１から出力されたフレームが、ポート１０１およびスイッチ１００を経由して、ポート１０３から出力される。
【０００８】
このようなループが発生すると、通信の妨げになる。そこで、ＬＤＦ（ループ検出フレーム：Loop Detection Frame）によって、ループを検出して、ループを解消することが知られている。
【０００９】
図２１は、従来技術にかかる、ＬＤＦによるループの検出原理を示す図であり、ポート１０１からＬＤＦが出力された場合（図２１（ａ））、ポート１０３からＬＤＦが出力された場合（図２１（ｂ））を示す図である。
【００１０】
図２１（ａ）を参照して、ポート１０１からＬＤＦが出力されると、ポート２０１およびハブ２００を経由して、ポート２０３からＬＤＦが出力される。さらに、ポート２０３から出力されたＬＤＦが、ポート１０３において受信される。
【００１１】
図２１（ｂ）を参照して、ポート１０３からＬＤＦが出力されると、ポート２０３およびハブ２００を経由して、ポート２０１からＬＤＦが出力される。さらに、ポート２０１から出力されたＬＤＦが、ポート１０１において受信される。
【００１２】
ここで、スイッチ１００の各ポートからＬＤＦを定期的（例えば、１秒間隔）に出力しておき、スイッチ１００のいずれかのポートでＬＤＦを検出したならば、ループが発生していると判定することができる。スイッチ１００が、ループ発生と判定したならば、ループ発生にかかるポート（ポート１０１、１０３のいずれか一つ以上）における通信を遮断すれば、ループを解消することができる。
【先行技術文献】
【特許文献】
【００１３】
【特許文献１】特開２００９−１９４７５２号公報
【特許文献２】特開２００９−２０７０２８号公報
【特許文献３】特開２００９−１１７８８９号公報
【特許文献４】特開２００６−２３８３０５号公報
【特許文献５】特開平１１−１９１７８２号公報
【発明の概要】
【発明が解決しようとする課題】
【００１４】
しかしながら、スイッチ１００が、ループ発生にかかるポート（ポート１０１、１０３のいずれか一つ以上）における通信を遮断するようにした場合、ポート１０１およびポート１０３の通信が遮断されるか、またはポート１０１の通信が遮断されることがありうる。
【００１５】
ポート１０１およびポート１０３の通信が遮断された場合は、スイッチ１００およびハブ２００の通信ができなくなってしまい好ましくない。
【００１６】
ポート１０１の通信が遮断された場合は、スイッチ１００およびハブ２００の通信は、ポート１０３を経由して行われることになる。しかし、誤って接続されたポート１０３における通信の設定は、正しく接続されたポート１０１における通信の設定とは異なる可能性がある。このため、ポート１０３を経由して通信を行うことができるという保証は無い。
【００１７】
そこで、本発明は、ループ解消時に、ネットワーク機器間で正しく接続されたポートによって通信を行うことができるようにすることを課題とする。
【課題を解決するための手段】
【００１８】
本発明にかかるネットワーク機器は、複数のポートを有するネットワーク機器であって、各ポートのリンクアップを検出するリンクアップ検出部と、前記ネットワーク機器によって構成されるループを検出するループ検出部と、前記ループが検出された場合に、より後にリンクアップが検出されたポートによる通信を遮断する通信遮断部とを備えるように構成される。
【００１９】
上記のように構成されたネットワーク機器によれば、複数のポートを有するネットワーク機器が提供される。リンクアップ検出部が、各ポートのリンクアップを検出する。ループ検出部が、前記ネットワーク機器によって構成されるループを検出する。通信遮断部が、前記ループが検出された場合に、より後にリンクアップが検出されたポートによる通信を遮断する。
【００２０】
なお、本発明にかかるネットワーク機器は、前記ポートにおけるリンクアップの検出時刻を、前記リンクアップが検出されたポートであるリンクアップ検出ポートに対応づけて記録するリンクアップ時刻記録部を備え、前記通信遮断部は、前記リンクアップ時刻記録部の記録内容に基づき、通信を遮断するようにしてもよい。
【００２１】
なお、本発明にかかるネットワーク機器は、前記ポートにおいてリンクアップが検出されてから前記ループが検出されるまでの検出時間を、前記リンクアップが検出されたポートであるリンクアップ検出ポートに対応づけて記録する検出時間記録部を備え、前記通信遮断部は、前記検出時間記録部に記録されている前記検出時間のうちの短い方に対応するリンクアップ検出ポートによる通信を遮断するようにしてもよい。
【００２２】
なお、本発明にかかるネットワーク機器は、ループ検出フレームを送出するループ検出フレーム送出部を備え、前記ループ検出部は、前記ループ検出フレームを検出することにより、前記ループを検出するようにしてもよい。
【００２３】
なお、本発明にかかるネットワーク機器は、前記ループ検出フレーム送出部が、前記リンクアップ検出部によってリンクアップが検出された時点から所定時間後に、前記リンクアップが検出されたポートであるリンクアップ検出ポートから、前記ループ検出フレームを送出し、前記ネットワーク機器には、他のネットワーク機器が接続されており、前記所定時間は、前記ネットワーク機器によるリンクアップの検出に要する時間と、前記他のネットワーク機器によるリンクアップの検出に要する時間との差よりも長いようにしてもよい。
【００２４】
なお、本発明にかかるネットワーク機器は、前記他のネットワーク機器においてリンクアップが検出される以前から、前記ネットワーク機器から前記ループ検出フレームが送出されるまで、前記リンクアップ検出ポートの通信を遮断するようにしてもよい。
【００２５】
なお、本発明にかかるネットワーク機器は、前記ネットワーク機器においてリンクアップが検出されてから、前記ネットワーク機器から前記ループ検出フレームが送出されるまで、前記リンクアップ検出ポートの通信を遮断するようにしてもよい。
【００２６】
なお、本発明にかかるネットワーク機器は、前記ループ検出部は、前記ポートの受信レートに基づき、前記ループを検出するようにしてもよい。
【００２７】
なお、本発明にかかるネットワーク機器は、前記ポートにより受信されたフレームの送信元のMACアドレスを、該フレームを受信したポートに対応づけて記録するアドレス記録部を備え、前記ループ検出部は、前記アドレス記録部の記録内容の変更レートに基づき、前記ループを検出するようにしてもよい。
【００２８】
本発明は、複数のポートを有するネットワーク機器によって通信を行う通信方法であって、各ポートのリンクアップを検出するリンクアップ検出工程と、前記ネットワーク機器によって構成されるループを検出するループ検出工程と、前記ループが検出された場合に、より後にリンクアップが検出されたポートによる通信を遮断する通信遮断工程とを備えた通信方法である。
【００２９】
本発明は、複数のポートを有するネットワーク機器によって通信を行う通信処理をコンピュータに実行させるためのプログラムであって、前記通信処理が、各ポートのリンクアップを検出するリンクアップ検出工程と、前記ネットワーク機器によって構成されるループを検出するループ検出工程と、前記ループが検出された場合に、より後にリンクアップが検出されたポートによる通信を遮断する通信遮断工程とを備えたプログラムである。
【００３０】
本発明は、複数のポートを有するネットワーク機器によって通信を行う通信処理をコンピュータに実行させるためのプログラムを記録したコンピュータによって読み取り可能な記録媒体であって、前記通信処理が、各ポートのリンクアップを検出するリンクアップ検出工程と、前記ネットワーク機器によって構成されるループを検出するループ検出工程と、前記ループが検出された場合に、より後にリンクアップが検出されたポートによる通信を遮断する通信遮断工程とを備えた記録媒体である。
【図面の簡単な説明】
【００３１】
【図１】本発明の実施形態にかかるスイッチ１０を、ハブ２０と正しく接続した場合のネットワーク構成を示す図である。
【図２】本発明の第一の実施形態にかかるスイッチ１０の構成を示す機能ブロック図である。
【図３】本発明の第一の実施形態にかかるスイッチ１０が有する通信制御器１１ａの構成を示す機能ブロック図である。
【図４】本発明の第一の実施形態にかかるスイッチ１０が有する通信制御器１２ａの構成を示す機能ブロック図である。
【図５】本発明の第一の実施形態にかかるスイッチ１０が有する通信制御器１３ａの構成を示す機能ブロック図である。
【図６】本発明の第一の実施形態にかかるスイッチ１０の動作を示すフローチャートである。
【図７】本発明の第一の実施形態にかかるスイッチ１０の動作のタイミングを示す図である。
【図８】本発明の第一の実施形態にかかるスイッチ１０を、ハブ２０と正しく接続した場合のスイッチ１０の動作を示す図である。
【図９】本発明の第一の実施形態にかかるスイッチ１０を、ハブ２０と誤って接続した場合のスイッチ１０の動作を示す図である。
【図１０】所定時間Δtの好ましい例を示す図である。
【図１１】本発明の第二の実施形態にかかるスイッチ１０が有する通信制御器１１ａの構成を示す機能ブロック図である。
【図１２】本発明の第二の実施形態にかかるスイッチ１０が有する通信制御器１２ａの構成を示す機能ブロック図である。
【図１３】本発明の第二の実施形態にかかるスイッチ１０が有する通信制御器１３ａの構成を示す機能ブロック図である。
【図１４】本発明の第三の実施形態にかかるスイッチ１０の構成を示す機能ブロック図である。
【図１５】本発明の第三の実施形態にかかるスイッチ１０が有する通信制御器１１ａの構成を示す機能ブロック図である。
【図１６】本発明の第三の実施形態にかかるスイッチ１０が有する通信制御器１２ａの構成を示す機能ブロック図である。
【図１７】本発明の第三の実施形態にかかるスイッチ１０が有する通信制御器１３ａの構成を示す機能ブロック図である。
【図１８】本発明の第一の実施形態の第二の変形例にかかるスイッチ１０の構成を示す機能ブロック図である。
【図１９】本発明の第三の実施形態の変形例にかかるスイッチ１０の構成を示す機能ブロック図である。
【図２０】従来技術にかかる、ループが生じるネットワーク構成の一例を示す図であり、ループが生じる前のネットワーク構成の一例（図２０（ａ））、ループが生じた後のネットワーク構成の一例（図２０（ｂ））を示す図である。
【図２１】従来技術にかかる、ＬＤＦによるループの検出原理を示す図であり、ポート１０１からＬＤＦが出力された場合（図２１（ａ））、ポート１０３からＬＤＦが出力された場合（図２１（ｂ））を示す図である。
【発明を実施するための形態】
【００３２】
以下、本発明の実施形態を図面を参照しながら説明する。
【００３３】
図１は、本発明の実施形態にかかるスイッチ１０を、ハブ２０と正しく接続した場合のネットワーク構成を示す図である。
【００３４】
本発明の実施形態にかかるスイッチ（ネットワーク機器）１０は、複数のポート１１、１２、１３を有する。スイッチ１０には、ハブ（他のネットワーク機器）２０が接続されている。ハブ２０も、複数のポート２１、２２、２３を有する。スイッチ１０にはサーバ１が接続され、ハブ２０にはＰＣ（パーソナルコンピュータ）２が接続されている。
【００３５】
スイッチ１０のポート１１と、ハブ２０のポート２１とは、周知の通信ケーブル（例えば、1000BASE-Tのケーブル）とによって接続されている。この接続により、サーバ１とＰＣ２とが、スイッチ１０およびハブ２０を介して、正しく通信を行うことができる。ここで、ポート１１とポート２１との接続を「正しい接続」という。
【００３６】
なお、図１において、スイッチ１０のサーバ１への接続ポートおよびハブ２０のＰＣ２への接続ポートは図示省略している。
【００３７】
第一の実施形態
図２は、本発明の第一の実施形態にかかるスイッチ１０の構成を示す機能ブロック図である。
【００３８】
スイッチ１０は、通信制御器１１ａ、１２ａ、１３ａ、通信遮断部１４、タイマ１６、リンクアップ時刻記録部１８を有する。
【００３９】
通信制御器１１ａ、１２ａ、１３ａは、スイッチ１０の各ポート１１、１２、１３の通信を制御する。通信制御器１１ａは、ポート１１に接続されており、ポート１１の通信を制御する。通信制御器１２ａは、ポート１２に接続されており、ポート１２の通信を制御する。通信制御器１３ａは、ポート１３に接続されており、ポート１３の通信を制御する。
【００４０】
通信遮断部１４は、ポート１１、１２、１３のいずれかの通信を遮断する。
【００４１】
なお、図２において、スイッチ１０のサーバ１への接続ポートおよび通信制御器１１ａ、１２ａ、１３ａ相互のデータのやりとりは図示省略している。
【００４２】
タイマ１６は、時刻および時間を計測するものであり、時計の機能を果たす。
【００４３】
リンクアップ時刻記録部１８は、ポートにおけるリンクアップの検出時刻を、リンクアップが検出されたポートであるリンクアップ検出ポートに対応づけて記録する。例えば、図７を参照して、ポート１１において時刻t1にリンクアップが検出された場合（図７（１）参照）、リンクアップ検出ポート１１に対応付けて検出時刻t1を記録する（図７（２）参照）。さらに、ポート１３において時刻t3にリンクアップが検出された場合（図７（３）参照）、リンクアップ検出ポート１３に対応付けて検出時刻t3を記録する（図７（４）参照）。
【００４４】
図３は、本発明の第一の実施形態にかかるスイッチ１０が有する通信制御器１１ａの構成を示す機能ブロック図である。
【００４５】
通信制御器１１ａは、フレーム受信部１１０ａ、リンクアップ検出部１１２ａ、ループ検出フレーム検出部（ループ検出部）１１４ａ、ループ検出フレーム送出部１１６ａ、フレーム送信部１１８ａを有する。
【００４６】
フレーム受信部１１０ａは、ポート１１を介して、フレームを受信する。なお、フレーム受信部１１０ａは、フレームのあて先がサーバ１であれば、サーバ１に向けて、フレームを転送する。また、フレーム受信部１１０ａは、フレームのあて先が通信制御器１２ａであれば、通信制御器１２ａに向けて、フレームを転送する。さらに、フレーム受信部１１０ａは、フレームのあて先が通信制御器１３ａであれば、通信制御器１３ａに向けて、フレームを転送する。例えば、フレーム受信部１１０ａが、ブロードキャストされたフレームを、ポート１１を介して受信すると、サーバ１、通信制御器１２ａおよび通信制御器１３ａに向けて、フレームを転送する。
【００４７】
リンクアップ検出部１１２ａは、ポート１１のリンクアップを検出する。ポート１１のリンクアップとは、ポート１１が、他のネットワーク機器（例えば、ハブ２０）と接続されて（例えば、1000BASE-Tのケーブルで接続される）、通信が可能な状態となることをいう。
【００４８】
リンクアップ検出部１１２ａは、フレーム受信部１１０ａにより受信されたフレームを、フレーム受信部１１０ａから読みだして、読みだしたフレームが、ノーマルリンクパルス（NLP : Normal Link Pulse）であれば、ポート１１がリンクアップしたと検出する。
【００４９】
リンクアップ検出部１１２ａは、ポート１１がリンクアップしたと検出すると、その旨を、リンクアップ時刻記録部１８およびループ検出フレーム送出部１１６ａに即座に伝達する。リンクアップ時刻記録部１８は、リンクアップ検出部１１２ａからリンクアップ検出の旨の伝達を受けると、伝達があった時刻t1をタイマ１６から取得する。リンクアップ時刻記録部１８は、時刻t1を検出時刻として、リンクアップ検出ポート１１に対応付けて記録する。
【００５０】
ただし、リンクアップ検出ポートは、リンクアップが検出されたポートである。リンクアップ検出部１１２ａによってリンクアップが検出された場合は、ポート１１がリンクアップ検出ポートとなる。
【００５１】
ループ検出フレーム送出部１１６ａは、リンクアップ検出部１１２ａによってリンクアップが検出された時点から所定時間（例えば、図１０を参照して、Δt）の後または定期的に、フレーム送信部１１８ａを介して、リンクアップ検出ポートであるポート１１から、ループ検出フレーム（LDF : Loop Detection Frame）を送出する。ループ検出フレームは、ブロードキャストされるようにしてもよい。なお、ループ検出フレームの一例としてＬＤＦを挙げたが、ループ検出フレームは、通常の通信に使用されるフレームと区別がつくようなものであればよい。
【００５２】
ループ検出フレーム検出部（ループ検出部）１１４ａは、ポート１１においてループ検出フレームを受信した場合に、ループ検出フレームを検出する。ループ検出フレーム検出部１１４ａは、ループ検出フレームを検出することにより、スイッチ１０によって構成されるループ（図９参照）を検出する。スイッチ１０によって構成されるループを検出した旨は、ループ検出フレーム検出部１１４ａから通信遮断部１４に伝達される。
【００５３】
ループ検出フレーム検出部１１４ａは、フレーム受信部１１０ａにより受信されたフレームを、フレーム受信部１１０ａから読み出す。読み出されたフレームがループ検出フレームであれば、ループ検出フレーム検出部１１４ａはループ検出フレームを検出する。
【００５４】
フレーム送信部１１８ａは、ポート１１を介して、フレーム（例えば、ループ検出フレーム）を送信する。なお、フレーム送信部１１８ａは、サーバ１、通信制御器１２ａおよび通信制御器１３ａからフレームを受けると、そのフレームを、ポート１１を介して送信する。
【００５５】
通信遮断部１４は、ループ検出フレーム検出部１１４ａによってループが検出された場合に、より後にリンクアップが検出されたポートによる通信を遮断する。ただし、通信遮断部１４は、より後にリンクアップが検出されたポートを、リンクアップ時刻記録部１８の記録内容に基づき取得して、通信を遮断する。
【００５６】
たとえば、リンクアップ時刻記録部１８に、リンクアップ検出ポート１１に対応付けて検出時刻t1が記録され、リンクアップ検出ポート１３に対応付けて検出時刻t3が記録されている場合（ただし、検出時刻t3は検出時刻t1よりも後とする：図７参照）、通信遮断部１４は、より後にリンクアップが検出されたポートであるポート１３の通信を遮断する。
【００５７】
なお、通信遮断部１４が、ポート１１の通信を遮断する場合は、フレーム受信部１１０ａによる受信を停止し、しかも、フレーム送信部１１８ａによる送信をも停止する。なお、フレーム受信部１１０ａによる受信の停止は、フレーム受信部１１０ａによってフレームを受信するものの、そのフレームを廃棄してしまうことを含む。
【００５８】
図４は、本発明の第一の実施形態にかかるスイッチ１０が有する通信制御器１２ａの構成を示す機能ブロック図である。
【００５９】
通信制御器１２ａは、フレーム受信部１２０ａ、リンクアップ検出部１２２ａ、ループ検出フレーム検出部（ループ検出部）１２４ａ、ループ検出フレーム送出部１２６ａ、フレーム送信部１２８ａを有する。
【００６０】
フレーム受信部１２０ａ、リンクアップ検出部１２２ａ、ループ検出フレーム検出部１２４ａ、ループ検出フレーム送出部１２６ａおよびフレーム送信部１２８ａは、それぞれ、フレーム受信部１１０ａ、リンクアップ検出部１１２ａ、ループ検出フレーム検出部１１４ａ、ループ検出フレーム送出部１１６ａおよびフレーム送信部１１８ａと同様である。
【００６１】
ただし、フレーム受信部１２０ａ、リンクアップ検出部１２２ａ、ループ検出フレーム検出部１２４ａ、ループ検出フレーム送出部１２６ａおよびフレーム送信部１２８ａは、ポート１２に関する処理を行うものであり、その点が、ポート１１に関する処理を行うフレーム受信部１１０ａ、リンクアップ検出部１１２ａ、ループ検出フレーム検出部１１４ａ、ループ検出フレーム送出部１１６ａおよびフレーム送信部１１８ａとは異なる。
【００６２】
また、フレーム受信部１２０ａは、フレームのあて先が通信制御器１１ａであれば、通信制御器１１ａに向けて、フレームを転送する。例えば、フレーム受信部１２０ａが、ブロードキャストされたフレームを、ポート１２を介して受信すると、サーバ１、通信制御器１１ａおよび通信制御器１３ａに向けて、フレームを転送する。
【００６３】
さらに、フレーム送信部１２８ａは、ポート１２を介して、フレーム（例えば、ループ検出フレーム）を送信する。なお、フレーム送信部１２８ａは、サーバ１、通信制御器１１ａおよび通信制御器１３ａからフレームを受けると、そのフレームを、ポート１２を介して送信する。
【００６４】
なお、通信遮断部１４が、ポート１２の通信を遮断する場合は、フレーム受信部１２０ａによる受信を停止し、しかも、フレーム送信部１２８ａによる送信をも停止する。なお、フレーム受信部１２０ａによる受信の停止は、フレーム受信部１２０ａによってフレームを受信するものの、そのフレームを廃棄してしまうことを含む。
【００６５】
図５は、本発明の第一の実施形態にかかるスイッチ１０が有する通信制御器１３ａの構成を示す機能ブロック図である。
【００６６】
通信制御器１３ａは、フレーム受信部１３０ａ、リンクアップ検出部１３２ａ、ループ検出フレーム検出部（ループ検出部）１３４ａ、ループ検出フレーム送出部１３６ａ、フレーム送信部１３８ａを有する。
【００６７】
フレーム受信部１３０ａ、リンクアップ検出部１３２ａ、ループ検出フレーム検出部１３４ａ、ループ検出フレーム送出部１３６ａおよびフレーム送信部１３８ａは、それぞれ、フレーム受信部１１０ａ、リンクアップ検出部１１２ａ、ループ検出フレーム検出部１１４ａ、ループ検出フレーム送出部１１６ａおよびフレーム送信部１１８ａと同様である。
【００６８】
ただし、フレーム受信部１３０ａ、リンクアップ検出部１３２ａ、ループ検出フレーム検出部１３４ａ、ループ検出フレーム送出部１３６ａおよびフレーム送信部１３８ａは、ポート１３に関する処理を行うものであり、その点が、ポート１１に関する処理を行うフレーム受信部１１０ａ、リンクアップ検出部１１２ａ、ループ検出フレーム検出部１１４ａ、ループ検出フレーム送出部１１６ａおよびフレーム送信部１１８ａとは異なる。
【００６９】
また、フレーム受信部１３０ａは、フレームのあて先が通信制御器１１ａであれば、通信制御器１１ａに向けて、フレームを転送する。例えば、フレーム受信部１２０ａが、ブロードキャストされたフレームを、ポート１３を介して受信すると、サーバ１、通信制御器１１ａおよび通信制御器１２ａに向けて、フレームを転送する。
【００７０】
さらに、フレーム送信部１３８ａは、ポート１３を介して、フレーム（例えば、ループ検出フレーム）を送信する。なお、フレーム送信部１３８ａは、サーバ１、通信制御器１１ａおよび通信制御器１２ａからフレームを受けると、そのフレームを、ポート１３を介して送信する。
【００７１】
なお、通信遮断部１４が、ポート１３の通信を遮断する場合は、フレーム受信部１３０ａによる受信を停止し、しかも、フレーム送信部１３８ａによる送信をも停止する。なお、フレーム受信部１３０ａによる受信の停止は、フレーム受信部１３０ａによってフレームを受信するものの、そのフレームを廃棄してしまうことを含む。
【００７２】
次に、本発明の第一の実施形態の動作を説明する。
【００７３】
図６は、本発明の第一の実施形態にかかるスイッチ１０の動作を示すフローチャートである。図７は、本発明の第一の実施形態にかかるスイッチ１０の動作のタイミングを示す図である。図８は、本発明の第一の実施形態にかかるスイッチ１０を、ハブ２０と正しく接続した場合のスイッチ１０の動作を示す図である。図９は、本発明の第一の実施形態にかかるスイッチ１０を、ハブ２０と誤って接続した場合のスイッチ１０の動作を示す図である。
【００７４】
図８に示すように正しく接続してから、図９に示すように誤って接続するまでについて、本発明の実施形態の動作を、図６および図７を参照して、説明する。
【００７５】
図６を参照して、通信遮断部１４は、ループ検出フレーム検出部（ループ検出部）１１４ａ、１２４ａまたは１３４ａから、スイッチ１０によって構成されるループを検出した旨が伝達されたか否かを判定する（Ｓ１０）。もし、ループを検出した旨が伝達されていなければ（Ｓ１０、Ｎｏ）、リンクアップ検出部１１２ａ、１２２ａおよび１３２ａは、ポート１１、１２および１３がリンクアップするまで待機する（Ｓ１１、Ｎｏ）。ポート１１、１２または１３がリンクアップすると、リンクアップ検出部１１２ａ、１２２ａまたは１３２ａはリンクアップを検出する（Ｓ１１、Ｙｅｓ）。
【００７６】
リンクアップが検出されると、その旨がリンクアップ時刻記録部１８に即座に伝達され、リンクアップが検出された検出時刻が、リンクアップ検出ポートに対応付けてリンクアップ時刻記録部１８に記録される（Ｓ１２）。
【００７７】
なお、リンクアップ検出から所定時間Δt経過後または定期的に、リンクアップを検出したリンクアップ検出部１１２ａ、１２２ａまたは１３２ａが接続されているループ検出フレーム送出部１１６ａ、１２６ａまたは１３６ａが、フレーム送信部１１８ａ、１２８ａまたは１３８ａを介して、リンクアップ検出ポートであるポート１１、１２または１３から、ループ検出フレームＬＤＦを送出する。
【００７８】
その後、ループを検出した旨が伝達されたか否かの判定（Ｓ１０）に戻る。
【００７９】
例えば、図８に示すように、スイッチ１０のポート１１と、ハブ２０のポート２１とを、正しく接続したとする。すると、ループ検出フレームＬＤＦはスイッチ１０に送信されておらず、ループしていないと判定される（Ｓ１０、Ｎｏ）。しかも、ハブ２０のポート２１から、スイッチ１０のポート１１へ、ノーマルリンクパルスＮＬＰが送信される。ノーマルリンクパルスＮＬＰは、通信制御器１１ａのリンクアップ検出部１１２ａにより検出される（図６の「Ｓ１１、Ｙｅｓ」参照）。図７および図８の「（１）リンクアップ検出」を参照されたい。この場合、ポート１１がリンクアップ検出ポートである。
【００８０】
すると、リンクアップが検出された旨がリンクアップ時刻記録部１８に即座に伝達され、リンクアップが検出された検出時刻t1が、リンクアップ検出ポート１１に対応付けてリンクアップ時刻記録部１８に記録される（図６の「Ｓ１２」参照）。図７および図８の「（２）t1を記録」を参照されたい。
【００８１】
なお、リンクアップ検出から所定時間Δt経過後または定期的に、通信制御器１１ａにおいてリンクアップを検出したリンクアップ検出部１１２ａが接続されているループ検出フレーム送出部１１６ａが、フレーム送信部１１８ａを介して、リンクアップ検出ポートであるポート１１から、ループ検出フレームＬＤＦを送出する。
【００８２】
なお、所定時間Δtは、スイッチ１０の利用者により設定可能であるようにしてもよい。ただし、所定時間Δtを、スイッチ１０の出荷時に固定することも可能である。
【００８３】
図８を参照して、ループ検出フレームＬＤＦを送出しても、ハブ２０からスイッチ１０に戻ることもないので、ループ検出フレーム送出部１１６ａ、１２６ａおよび１３６ａは、ループ検出フレームＬＤＦを検出することはなく、ループは検出されない（図６の「Ｓ１０、Ｎｏ」参照）。
【００８４】
図６に戻り、ループ検出フレーム送出部１１６ａ、１２６ａまたは１３６ａが、ループ検出フレームＬＤＦを検出すると、スイッチ１０によって構成されるループを検出し（Ｓ１０、Ｙｅｓ）、通信遮断部１４は、より後にリンクアップが検出されたポートによる通信を遮断する（Ｓ１６）。これにより、ループが解消される。
【００８５】
例えば、図８に示すように正しく接続された状態において、誤って、スイッチ１０のポート１３と、ハブ２０のポート２３とをも接続してしまった（「誤った接続」という）とする。この誤った接続におけるスイッチ１０の動作が、図９に図示されている。この場合、スイッチ１０と、ハブ２０と、ポート１１、２１の接続と、ポート１３、２３の接続とによってループが構成されている。
【００８６】
すると、図９を参照して、ハブ２０のポート２３から、スイッチ１０のポート１３へ、ノーマルリンクパルスＮＬＰが送信される。ノーマルリンクパルスＮＬＰは、通信制御器１３ａのリンクアップ検出部１３２ａにより検出される（図６の「Ｓ１１、Ｙｅｓ」参照）。図７および図９の「（３）リンクアップ検出」を参照されたい。この場合、ポート１３がリンクアップ検出ポートである。
【００８７】
すると、リンクアップが検出された旨がリンクアップ時刻記録部１８に即座に伝達され、リンクアップが検出された検出時刻t3が、リンクアップ検出ポート１３に対応付けてリンクアップ時刻記録部１８に記録される（図６の「Ｓ１２」参照）。図７および図９の「（４）t3を記録」を参照されたい。
【００８８】
この時点で、リンクアップ時刻記録部１８には、リンクアップ検出ポート１１に対応付けて検出時刻t1が記録され、リンクアップ検出ポート１３に対応付けて検出時刻t3が記録されている。ただし、検出時刻t3は検出時刻t1よりも後である。よって、より後にリンクアップが検出されたポートは、ポート１３である。
【００８９】
すると、リンクアップ検出から所定時間Δt経過後または定期的に、通信制御器１３ａにおいてリンクアップを検出したリンクアップ検出部１３２ａが接続されているループ検出フレーム送出部１３６ａが、フレーム送信部１３８ａを介して、リンクアップ検出ポートであるポート１３から、ループ検出フレームＬＤＦを送出する。
【００９０】
なお、所定時間Δtは、スイッチ１０の利用者により設定可能であるようにしてもよいことは、先に説明したとおりである。ただし、所定時間Δtを、スイッチ１０の出荷時に固定することも可能である。
【００９１】
図９を参照して、ポート１３からループ検出フレームＬＤＦが送出されると、ポート２３およびハブ２０を経由して、ポート２１からループ検出フレームＬＤＦが出力される。さらに、ハブ２０のポート２１から出力されたループ検出フレームＬＤＦが、スイッチ１０のポート１１において受信される。そこで、ループ検出フレームＬＤＦは、通信制御器１１ａのループ検出フレーム検出部１１４ａにより検出される。これにより、スイッチ１０によって構成されるループが検出される（図６の「Ｓ１０、Ｙｅｓ」参照）。図７および図９の「（５）ループしている」を参照されたい。
【００９２】
なお、ポート１１からループ検出フレームＬＤＦが送出され、ポート１３において受信された場合は、ループ検出フレームＬＤＦが、通信制御器１３ａのループ検出フレーム検出部１３４ａにより検出される。この場合も、スイッチ１０によって構成されるループが検出されることにかわりはない（図６の「Ｓ１０、Ｙｅｓ」参照）。
【００９３】
通信遮断部１４は、ループ検出フレーム検出部１１４ａ（または１３４ａ）からループが検出された旨の伝達を受け、リンクアップ時刻記録部１８の記録内容を参照し、より後にリンクアップが検出されたポート１３による通信を遮断する（図６の「Ｓ１６」参照）。すなわち、通信遮断部１４は、通信制御器１３ａのフレーム受信部１３０ａによる受信を停止し、しかも、通信制御器１３ａのフレーム送信部１３８ａによる送信をも停止する。図７および図９の「（６）通信の遮断」を参照されたい。
【００９４】
ポート１１、２１の接続と、ポート１３、２３の接続とを放置すれば、ループが発生し、通信の妨げとなる。しかし、ポート１３による通信を遮断をすることで、ループが解消される。
【００９５】
本発明の第一の実施形態によれば、通信遮断部１４がポート１３による通信を遮断するため、ループが解消される。しかも、ループ解消時に通信が遮断されるポートは、正しい接続にかかるポート１１ではなく、誤った接続にかかるポート１３である。このため、ループ解消時に、正しく接続されたスイッチ１０のポート１１およびハブ２０のポート２１を介して、サーバ１とＰＣ２とが通信を行うことができる。
【００９６】
すなわち、図８に示すように正しい接続（ポート１１、２１の接続）の場合は、スイッチ１０がループ検出フレームＬＤＦを検出することはない。その一方で、図９に示すように、さらに、誤った接続（ポート１３、２３の接続）を行ってしまった場合は、ポート１３（またはポート１１）から送出されたループ検出フレームＬＤＦが、スイッチ１０の通信制御器１１ａのループ検出フレーム検出部１１４ａ（または通信制御器１３ａのループ検出フレーム検出部１３４ａ）により検出される（図９の「（５）ＬＤＦ検出」を参照）。これにより、スイッチ１０によって構成されるループが検出される。この場合、より後にリンクアップが検出されたポート１３による通信を遮断することによって（図９の「（６）通信の遮断」を参照）、誤った接続による通信を遮断することができる。ここで、正しい接続にかかるポート１１の通信が遮断されないことに留意すべきである。より後にリンクアップが検出されたポートは、誤った接続にかかるポート１３だからである。
【００９７】
もし、正しい接続にかかるポート１１の通信が遮断されてしまえば、スイッチ１０およびハブ２０の通信は、誤った接続にかかるポート１３を経由して行われることになる。しかし、誤って接続されたポート１３における通信の設定は、正しく接続されたポート１１における通信の設定とは異なる可能性がある。このため、ポート１３を経由して通信を行うことができるという保証は無い。
【００９８】
しかし、本発明の第一の実施形態によれば、正しい接続にかかるポート１１の通信が遮断されず、誤った接続にかかるポート１３の通信が遮断されるので、正しい接続（ポート１１、２１）を介してのサーバ１とＰＣ２との通信を続行できるのである。
【００９９】
なお、所定時間Δtを０とすることも考えられる。
【０１００】
なお、リンクアップ検出後は、ループ検出フレームＬＤＦが検出されるまでは、リンクアップ検出ポートの通信を遮断するわけではない。
【０１０１】
なお、本発明の第一の実施形態については、以下のような変形例が考えられる。
【０１０２】
第一の変形例
図１０は、所定時間Δtの好ましい例を示す図である。
【０１０３】
所定時間Δtは、スイッチ１０によるリンクアップの検出に要する時間と、ハブ２０によるリンクアップの検出に要する時間との差ΔtLよりも長くすることが好ましい。例えば、Δtを0.5秒とすることが考えられる。ただし、リンクアップの検出に要する時間とは、ポートを通信ケーブルにより物理的に接続してから、リンクアップを検出するまでに要する時間である。
【０１０４】
一般的に、スイッチ１０はハブ２０よりも高速なデータ処理が可能なため、スイッチ１０によるリンクアップの検出は、ハブ２０によるリンクアップの検出よりも早く終わる。また、ハブ２０においては、あるポート（例えば、ポート２３）についてリンクアップを検出するまでは、そのポートによる通信を遮断する設定になっていることがある。
【０１０５】
ここで、スイッチ１０によるポート１３のリンクアップの検出の直後に、ループ検出フレームＬＤＦを送出してしまうと、ハブ２０によるポート２３のリンクアップの検出が未だ行われていないという事態が生じることがある。すると、ハブ２０によって、ポート２３に向けて送信されたループ検出フレームＬＤＦが遮断されてしまい、スイッチ１０がループ検出フレームＬＤＦを検出できないこととなる。これでは、誤った接続にもかかわらず、通信の遮断が行われないので、ループの解消ができない。
【０１０６】
そこで、ループ検出フレームＬＤＦの送出を、ハブ２０によるリンクアップの検出の後にすることが好ましい。そのために、所定時間Δtを、スイッチ１０によるリンクアップの検出に要する時間と、ハブ２０によるリンクアップの検出に要する時間との差ΔtLよりも長くすることが好ましいのである。
【０１０７】
なお、スイッチ１０およびハブ２０において、リンクアップ検出後は、通信が可能になる。この場合、ハブ２０においてリンクアップが検出されてから、スイッチ１０からループ検出フレームＬＤＦが送出されるまでの時間X（図１０参照）において、ループが形成されているおそれがある。もし、ループが形成されていれば、スイッチ１０およびハブ２０の間でブロードキャストフレームが送受信された場合、時間Xが充分長ければ、ブロードキャストストームが発生することがある。ブロードキャストストームが発生した場合、スイッチ１０が、ループ検出フレームＬＤＦを検出できない可能性がある。この場合、誤った接続にかかるポート１３の通信を遮断できず、ループを解消できない。
【０１０８】
そこで、時間Xにおいて、リンクアップ検出ポートの通信を遮断すれば、上記のようなブロードキャストストームの発生を防止できる。たとえば、ハブ２０においてリンクアップが検出される以前から、スイッチ１０からループ検出フレームＬＤＦが送出されるまで、リンクアップ検出ポートの通信を遮断すれば、上記のようなブロードキャストストームの発生を防止できる。
【０１０９】
たとえば、スイッチ１０においてリンクアップが検出されてから、スイッチ１０からループ検出フレームＬＤＦが送出されるまで、リンクアップ検出ポートの通信を遮断すれば、上記のようなブロードキャストストームの発生を防止できる。
【０１１０】
なお、「ハブ２０においてリンクアップが検出される以前」とは、ハブ２０においてリンクアップが検出される時点を含む。
【０１１１】
なお、上記のように、時間Xを含む期間においてリンクアップ検出ポートの通信を遮断する場合でも、ループ検出フレームＬＤＦを送出してから後は、ループ検出フレームＬＤＦが検出されるまでは、リンクアップ検出ポートの通信を遮断するわけではない。
【０１１２】
第二の変形例
第一の実施形態にかかるスイッチ１０はリンクアップ時刻記録部１８を有していたが、リンクアップ時刻記録部１８にかえて、検出時間記録部１８０を有するようにしてもよい。
【０１１３】
図１８は、本発明の第一の実施形態の第二の変形例にかかるスイッチ１０の構成を示す機能ブロック図である。
【０１１４】
第二の変形例にかかるスイッチ１０は、通信制御器１１ａ、１２ａ、１３ａ、通信遮断部１４、タイマ１６、検出時間記録部１８０を有する。通信制御器１１ａ、１２ａ、１３ａおよびタイマ１６は、第一の実施形態と同様である。
【０１１５】
検出時間記録部１８０は、ポートにおいてリンクアップが検出されてからループが検出されるまでの検出時間を、リンクアップが検出されたポートであるリンクアップ検出ポートに対応づけて記録する。例えば、図７を参照して、ポート１１においてリンクアップが検出されてからループが検出されるまでの検出時間Δt1を、リンクアップ検出ポート１１に対応付けて記録する。さらに、ポート１３においてリンクアップが検出されてからループが検出されるまでの検出時間Δt3を、リンクアップ検出ポート１３に対応付けて記録する。検出時間の計測は、タイマ１６を用いて行う。
【０１１６】
通信遮断部１４は、検出時間記録部１８０に記録されている検出時間Δt1、Δt3のうちの短い方Δt3に対応するリンクアップ検出ポート１３による通信を遮断する。このようにしても、より後にリンクアップが検出されたポートによる通信を遮断することができる。
【０１１７】
第二の実施形態
第二の実施形態にかかるスイッチ１０は、ループの検出に受信レートを使用する点が、第一の実施形態と異なる。
【０１１８】
本発明の第二の実施形態にかかるスイッチ１０の構成は、第一の実施形態（図２参照）と同様であり、説明を省略する。
【０１１９】
図１１は、本発明の第二の実施形態にかかるスイッチ１０が有する通信制御器１１ａの構成を示す機能ブロック図である。
【０１２０】
第二の実施形態にかかる通信制御器１１ａは、フレーム受信部１１０ａ、リンクアップ検出部１１２ａ、受信レート検出部（ループ検出部）１１５ａ、フレーム送信部１１８ａを有する。
【０１２１】
フレーム受信部１１０ａ、リンクアップ検出部１１２ａおよびフレーム送信部１１８ａは、第一の実施形態と同様であり、説明を省略する。
【０１２２】
受信レート検出部（ループ検出部）１１５ａは、ポート１１の受信レートに基づき、スイッチ１０によって構成されるループを検出する。スイッチ１０によってループが構成された場合、ブロードキャストストームなどが発生し、通信レートが上昇することがある。そこで、受信レート検出部１１５ａは、フレーム受信部１１０ａにより受信されたフレームのサイズをフレーム受信部１１０ａから取得し、単位時間（例えば、１秒間）ごとの受信したサイズの合計を受信レート(Mbps)として検出する。さらに、受信レート検出部１１５ａは、受信レートが、所定の閾値（例えば、80Mbps）以上となった場合は、ループが発生しているとみて、ループを検出する。
【０１２３】
図１２は、本発明の第二の実施形態にかかるスイッチ１０が有する通信制御器１２ａの構成を示す機能ブロック図である。
【０１２４】
第二の実施形態にかかる通信制御器１２ａは、フレーム受信部１２０ａ、リンクアップ検出部１２２ａ、受信レート検出部（ループ検出部）１２５ａ、フレーム送信部１２８ａを有する。
【０１２５】
フレーム受信部１２０ａ、リンクアップ検出部１２２ａおよびフレーム送信部１２８ａは、第一の実施形態と同様であり、説明を省略する。
【０１２６】
受信レート検出部（ループ検出部）１２５ａは、受信レート検出部１１５ａと同様のものであり、ポート１２の受信レートに基づき、スイッチ１０によって構成されるループを検出する。
【０１２７】
図１３は、本発明の第二の実施形態にかかるスイッチ１０が有する通信制御器１３ａの構成を示す機能ブロック図である。
【０１２８】
第二の実施形態にかかる通信制御器１３ａは、フレーム受信部１３０ａ、リンクアップ検出部１３２ａ、受信レート検出部（ループ検出部）１３５ａ、フレーム送信部１３８ａを有する。
【０１２９】
フレーム受信部１３０ａ、リンクアップ検出部１３２ａおよびフレーム送信部１３８ａは、第一の実施形態と同様であり、説明を省略する。
【０１３０】
受信レート検出部（ループ検出部）１３５ａは、受信レート検出部１１５ａと同様のものであり、ポート１３の受信レートに基づき、スイッチ１０によって構成されるループを検出する。
【０１３１】
第二の実施形態にかかるスイッチ１０の動作は、第一の実施形態（図６、図７参照）と同様であり説明を省略する。ただし、ループの検出は、第一の実施形態のループ検出フレーム検出部１１４ａ、１２４ａ、１３４ａにかえて、受信レート検出部１１５ａ、１２５ａ、１３５ａが行う。例えば、図９のような場合、受信レート検出部１１５ａまたは受信レート検出部１３５ａによって検出される受信レートが所定の閾値以上となる。
【０１３２】
第二の実施形態によっても、第一の実施形態と同様な効果を奏する。
【０１３３】
なお、第一の実施形態の第二の変形例と同様に、第二の実施形態にかかるスイッチ１０が、リンクアップ時刻記録部１８にかえて、検出時間記録部１８０を有するようにしてもよい（図１８参照）。
【０１３４】
第三の実施形態
第三の実施形態にかかるスイッチ１０は、フレームの送信元のMACアドレスの変更レートをループの検出に使用する点が、第一の実施形態と異なる。
【０１３５】
図１４は、本発明の第三の実施形態にかかるスイッチ１０の構成を示す機能ブロック図である。
【０１３６】
第三の実施形態にかかるスイッチ１０は、通信制御器１１ａ、１２ａ、１３ａ、通信遮断部１４、タイマ１６、リンクアップ時刻記録部１８、ＦＤＢ記録部（アドレス記録部）１９、変更レート検出部（ループ検出部）１９０を有する。通信制御器１１ａ、１２ａ、１３ａ、タイマ１６およびリンクアップ時刻記録部１８は、第一の実施形態と同様であり、説明を省略する。
【０１３７】
ＦＤＢ記録部（アドレス記録部）１９は、ポート１１、１２、１３により受信されたフレームの送信元のMACアドレスを、そのフレームを受信したポート１１、１２、１３に対応づけて記録する。なお、このMACアドレスとポートとの対応を、FDB(Forwarding Data Base)という。
【０１３８】
ポート１１、１２、１３により受信されたフレームには、送信元のMACアドレスが記録されている。通信制御器１１ａ、１２ａ、１３ａが、フレームから送信元のMACアドレスを読み出して、ＦＤＢ記録部１９に出力する。これにより、ＦＤＢ記録部１９は、送信元のMACアドレスを記録できる。なお、フレームを受信したポートは、通信制御器１１ａから送信元のMACアドレスを取得したのであれば、当然にポート１１となる。同様に、フレームを受信したポートは、通信制御器１２ａ（１３ａ）から送信元のMACアドレスを取得したのであれば、当然にポート１２（１３）となる。
【０１３９】
変更レート検出部（ループ検出部）１９０は、ＦＤＢ記録部１９の記録内容の変更レートに基づき、ループを検出する。
【０１４０】
例えば、図８に図示したようなループが形成されていない場合、ハブ２０からのフレームは、ポート１１において受信される。この場合、ハブ２０のMACアドレスが、ポート１１に対応づけて、ＦＤＢ記録部１９に記録される。この記録内容は、特に変更されることはない。
【０１４１】
一方、例えば、図９に図示したようなループが形成されている場合、ハブ２０からのフレームが、ポート１１において受信される場合と、ポート１３において受信される場合とが考えられる。この場合、ハブ２０のMACアドレスが、ポート１１に対応づけてＦＤＢ記録部１９に記録される場合と、ポート１３に対応づけてＦＤＢ記録部１９に記録される場合とがあり、ＦＤＢ記録部１９の記録内容は頻繁に変更される。そこで、ＦＤＢ記録部１９の記録内容の変更レート（単位時間あたりの変更回数）が大きい値となる。
【０１４２】
そこで、変更レート検出部１９０は、ＦＤＢ記録部１９の記録内容の変更レートが、所定の閾値以上になった場合に、ループが発生しているとみて、ループを検出する。
【０１４３】
通信遮断部１４は、変更レート検出部１９０から、ループが検出された旨の伝達を受けて、通信の遮断を行う。
【０１４４】
図１５は、本発明の第三の実施形態にかかるスイッチ１０が有する通信制御器１１ａの構成を示す機能ブロック図である。
【０１４５】
第三の実施形態にかかる通信制御器１１ａは、フレーム受信部１１０ａ、リンクアップ検出部１１２ａ、ＭＡＣアドレス抽出部１１７ａ、フレーム送信部１１８ａを有する。
【０１４６】
フレーム受信部１１０ａ、リンクアップ検出部１１２ａおよびフレーム送信部１１８ａは、第一の実施形態と同様であり、説明を省略する。
【０１４７】
ＭＡＣアドレス抽出部１１７ａは、フレーム受信部１１０ａから受信したフレームを取得して、フレームから送信元のMACアドレスを抽出して、ＦＤＢ記録部１９に出力する。
【０１４８】
図１６は、本発明の第三の実施形態にかかるスイッチ１０が有する通信制御器１２ａの構成を示す機能ブロック図である。
【０１４９】
第三の実施形態にかかる通信制御器１２ａは、フレーム受信部１２０ａ、リンクアップ検出部１２２ａ、ＭＡＣアドレス抽出部１２７ａ、フレーム送信部１２８ａを有する。
【０１５０】
フレーム受信部１２０ａ、リンクアップ検出部１２２ａおよびフレーム送信部１２８ａは、第一の実施形態と同様であり、説明を省略する。
【０１５１】
ＭＡＣアドレス抽出部１２７ａは、フレーム受信部１２０ａから受信したフレームを取得して、フレームから送信元のMACアドレスを抽出して、ＦＤＢ記録部１９に出力する。
【０１５２】
図１７は、本発明の第三の実施形態にかかるスイッチ１０が有する通信制御器１３ａの構成を示す機能ブロック図である。
【０１５３】
第三の実施形態にかかる通信制御器１３ａは、フレーム受信部１３０ａ、リンクアップ検出部１３２ａ、ＭＡＣアドレス抽出部１３７ａ、フレーム送信部１３８ａを有する。
【０１５４】
フレーム受信部１３０ａ、リンクアップ検出部１３２ａおよびフレーム送信部１３８ａは、第一の実施形態と同様であり、説明を省略する。
【０１５５】
ＭＡＣアドレス抽出部１３７ａは、フレーム受信部１３０ａから受信したフレームを取得して、フレームから送信元のMACアドレスを抽出して、ＦＤＢ記録部１９に出力する。
【０１５６】
第三の実施形態にかかるスイッチ１０の動作は、第一の実施形態（図６、図７参照）と同様であり説明を省略する。ただし、ループの検出は、第一の実施形態のループ検出フレーム検出部１１４ａ、１２４ａ、１３４ａにかえて、変更レート検出部１９０が行う。
【０１５７】
第三の実施形態によっても、第一の実施形態と同様な効果を奏する。
【０１５８】
なお、第一の実施形態の第二の変形例と同様に、第三の実施形態にかかるスイッチ１０が、リンクアップ時刻記録部１８にかえて、検出時間記録部１８０を有するようにしてもよい。
【０１５９】
図１９は、本発明の第三の実施形態の変形例にかかるスイッチ１０の構成を示す機能ブロック図である。
【０１６０】
変形例にかかるスイッチ１０は、通信制御器１１ａ、１２ａ、１３ａ、通信遮断部１４、タイマ１６、ＦＤＢ記録部１９、検出時間記録部１８０、変更レート検出部１９０を有する。検出時間記録部１８０は、第一の実施形態の第二変形例と同様である。他の部分は、第三の実施形態と同様である。
【０１６１】
また、上記の実施形態は、以下のようにして実現できる。ＣＰＵ、ハードディスク、メディア（フロッピー（登録商標）ディスク、ＣＤ−ＲＯＭなど）読み取り装置を備えたコンピュータに、上記の各部分、例えばスイッチ１０の各部分を実現するプログラムを記録したメディアを読み取らせて、ハードディスクにインストールする。このような方法でも、上記の機能を実現できる。
【符号の説明】
【０１６２】
１０  スイッチ（ネットワーク機器）
１１、１２、１３  ポート
１１ａ、１２ａ、１３ａ  通信制御器
１１０ａ、１２０ａ、１３０ａ  フレーム受信部
１１２ａ、１２２ａ、１３２ａ  リンクアップ検出部
１１４ａ、１２４ａ、１３４ａ  ループ検出フレーム検出部（ループ検出部）
１１５ａ、１２５ａ、１３５ａ  受信レート検出部（ループ検出部）
１１６ａ、１２６ａ、１３６ａ  ループ検出フレーム送出部
１１８ａ、１２８ａ、１３８ａ  フレーム送信部
１４  通信遮断部
１８  リンクアップ時刻記録部
１９  ＦＤＢ記録部（アドレス記録部）
１９０  変更レート検出部（ループ検出部）
２０  ハブ（他のネットワーク機器）
Δt  所定時間
ＬＤＦ  ループ検出フレーム
ＮＬＰ  ノーマルリンクパルス
【図１】
0006388436.tif 000002
【図２】
0006388436.tif 000003
【図３】
0006388436.tif 000004
【図４】
0006388436.tif 000005
【図５】
0006388436.tif 000006
【図６】
0006388436.tif 000007
【図７】
0006388436.tif 000008
【図８】
0006388436.tif 000009
【図９】
0006388436.tif 000010
【図１０】
0006388436.tif 000011
【図１１】
0006388436.tif 000012
【図１２】
0006388436.tif 000013
【図１３】
0006388436.tif 000014
【図１４】
0006388436.tif 000015
【図１５】
0006388436.tif 000016
【図１６】
0006388436.tif 000017
【図１７】
0006388436.tif 000018
【図１８】
0006388436.tif 000019
【図１９】
0006388436.tif 000020
【図２０】
0006388436.tif 000021
【図２１】
0006388436.tif 000022