(57)【特許請求の範囲】
【請求項１】
ネットワーク同士を複数の転送装置で接続するネットワークシステムにおける前記転送装置であって、
それぞれ対応する外部の通信装置とフレームの送受信を行う第1通信ポート、第2通信ポート、第3通信ポート、第4通信ポートと、
前記第1通信ポートで受信されたフレームを前記第2通信ポートに転送し、
前記第2通信ポートで受信されたフレームを前記第1および第4通信ポートにそれぞれ転送し、
前記第3通信ポートで受信されたフレームを前記第4通信ポートに転送し、
前記第4通信ポートで受信されたフレームを前記第2および第3通信ポートにそれぞれ転送する、
転送部と、
記憶部と、
ループフレーム防止部とを備え、
前記第1〜第4通信ポートは、前記転送部から転送されたフレームをそれぞれ対応する前記外部の通信装置に送信し、
前記記憶部は、フレームの送信元アドレス、シーケンス番号、およびフレームを受信した通信ポート又は当該通信ポートで受信されたフレームの出力先となる通信ポートを一組として記憶し、
前記ループフレーム防止部は、前記第1〜第4通信ポートの少なくとも1つで受信されたフレームの送信元アドレス、シーケンス番号、および前記フレームを受信した通信ポート又は当該通信ポートで受信されたフレームの出力先となる通信ポートが同一である組が前記記憶部に存在するか検査し、存在しないときは前記フレームの送信元アドレス、シーケンス番号、および前記フレームを受信した通信ポート又は当該通信ポートで受信されたフレームの出力先となる通信ポートの組を前記記憶部に格納し、
前記転送部は、前記第1〜第4通信ポートの少なくとも1つで受信されたフレームの送信元アドレス、シーケンス番号、および前記フレームを受信した通信ポート又は当該通信ポートで受信されたフレームの出力先となる通信ポートの組と同一の組が前記記憶部に存在するときは、前記フレームの転送を行わない
ことを特徴とする転送装置。
【請求項２】
前記転送部は、
4つの前記通信ポートから通知メッセージを送信し、
前記4つの通信ポートのうちの2つの通信ポートでそれぞれ前記通知メッセージに対する応答メッセージを受信し、
前記応答メッセージを受信した通信ポートを前記第1通信ポートおよび第3通信ポートに設定し、
前記応答メッセージを受信しなかった残りの2つの通信ポートのうち、前記第1通信ポートに事前に対応付けられた一方の通信ポートを第2通信ポート、他方の通信ポートを第4通信ポートに設定する
ことを特徴とする請求項1に記載の転送装置。
【請求項３】
前記第1〜第4通信ポートの少なくとも1つで受信されたフレームに含まれるネットワーク識別子、送信元アドレス、または送信先アドレスに基づき、前記転送部による前記フレームの転送を許可するか判定し、許可しないことを決定したとき前記フレームを廃棄するフィルタ
をさらに備えたことを特徴とする請求項1ないし2のいずれか一項に記載の転送装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、例えば冗長網同士を接続する転送装置に関する。
【背景技術】
【０００２】
非特許文献1は、High-availability Seamless Ring（HSR）と呼ばれるネットワーク冗長化システムを開示している。
【０００３】
HSR網において、各装置は2つの通信ポートを搭載する。各装置は、隣接する2つの装置それぞれと接続され、リング構成のネットワークを形成する。
【０００４】
HSR網では、ネットワークの一箇所で通信不能になっても、受信装置が欠損なくフレームを受信できるようにするため、フレームを送信する装置は2つのポートそれぞれから同一のフレームを送信する。
【０００５】
2つのフレームはリングの右回りと左回りの経路を経由し、受信装置に到達する。
【０００６】
非特許文献1はまた、HSR網として構成されたリング同士を接続するQuadBox（クアッドボックス）と呼ばれる転送装置を開示している。
【０００７】
QuadBoxは、4つの通信ポートを搭載する。QuadBoxは1つの通信ポートでフレームを受信すると、基本的に他の3つの通信ポートから同一のフレームをコピーして転送する。
【０００８】
そこで、2つのQuadBoxを用いてリング同士を接続する場合、各フレームが通過する経路のパターンは多数存在する。
【０００９】
このため、フレームが辿った経路をネットワークの運用者が特定することが困難になる。そこで、ネットワーク障害が起きたとき、障害要因の特定（ネットワーク障害が起こった箇所の特定）が困難になる。
【先行技術文献】
【非特許文献】
【００１０】
【非特許文献１】HSR - High Availability Seamless Redundancy, http://lamspeople.epfl.ch/kirrmann/Pubs/IEC_61439-3/IEC_62439-3.5_HSR_Principles_Kirrmann_100327.ppt
【発明の概要】
【発明が解決しようとする課題】
【００１１】
本発明は、ネットワークに障害が起きたときに障害要因の特定を容易にすることを可能とする転送装置を提供する。
【課題を解決するための手段】
【００１２】
本実施形態によれば、第1通信ポート、第2通信ポート、第3通信ポート、第4通信ポートと、転送部とを備えた転送装置が提供される。前記第1〜第4通信ポートは、それぞれ対応する外部の通信装置とフレームの送受信を行う。前記転送部は、前記第1通信ポートで受信されたフレームを前記第2通信ポートに転送し、前記第2通信ポートで受信されたフレームを前記第1および第4通信ポートのそれぞれに転送し、前記第3通信ポートで受信されたフレームを前記第4通信ポートに転送し、前記第4通信ポートで受信されたフレームを前記第2および第3通信ポートにそれぞれ転送する。前記第1〜第4通信ポートは、前記転送部から転送されたフレームをそれぞれ対応する前記外部の通信装置に送信する。
【図面の簡単な説明】
【００１３】
【図１】第1実施形態に従った転送装置の構成を示すブロック図である。
【図２】図1の構成を有する転送装置を2つ用いて、2つのリング同士を接続したネットワークシステムを示す図である。
【図３】フレームフォーマットの一例を示す図である。
【図４】転送部による転送処理の流れを示すフローチャートである。
【図５】各通信ポートで受信されたフレームが他の通信ポートへ転送される様子を示す模式図である。
【図６】図1の転送装置による全体処理の流れを示すフローチャートである。
【図７】2つの異なるリング上の装置間でフレームを送受信するときにフレームが辿る経路の例を示す図である。
【図８】2つの異なるリング上の装置間でフレームを送受信するときにフレームが辿る経路の他の例を示す図である。
【図９】2つの異なるリング上の装置間でフレームを送受信するときにフレームが辿る経路のさらに他の例を示す図である。
【図１０】第7実施形態に係わる転送装置の動作例を示すフローチャートである。
【図１１】第7実施形態に係わる転送装置の他の動作例を示すフローチャートである。
【図１２】第8実施形態に係るネットワークシステムを示す図である。
【発明を実施するための形態】
【００１４】
（第1実施形態）
図1は、第1実施形態に従った転送装置の構成を示すブロック図である。
【００１５】
図2は、図1の転送装置を2つ用いて、2つのリング同士を接続したネットワークシステムを示す図である。
【００１６】
まず図1に基づいて転送装置の詳細を説明し、その後、図2を用いて、一方のリング上の送信装置から送信されたフレームを、他方のリング上の受信装置へ転送する例を示す。
【００１７】
図1の転送装置は、それぞれ対応する外部の通信装置とフレームの送受信を行う第1通信ポートP1、第2通信ポートP2、第3通信ポートP3、第4通信ポートP4を備える。また転送装置は、記憶部511、転送部521、メモリバス531を備える。
【００１８】
第1〜第4通信ポートP1〜P4は、使用する通信規格に応じた通信ケーブルにより、それぞれ該当する外部の通信装置と接続されている。外部の通信装置は、たとえば別の転送装置、または、当該別の転送装置の4つの通信ポートのうちの1つ、または、リング上の装置、または当該リング上の装置が備える2つのポート（後述）のうちの1つ、である。
【００１９】
第1〜第4通信ポートP1〜P4、および記憶部511はメモリバス531に接続され、第1〜第4通信ポートP1〜P4は、メモリバス531を介して記憶部511にアクセス可能に構成される。
【００２０】
第1通信ポートP1は、入力部101、フィルタ102、ループフレーム防止部103、キュー104、出力部105を備える。
【００２１】
第2通信ポートP2は、入力部201、フィルタ202、ループフレーム防止部203、キュー204、出力部205を備える。
【００２２】
第3通信ポートP3は、入力部301、フィルタ302、ループフレーム防止部303、キュー304、出力部305を備える。
【００２３】
第4通信ポートP4は、入力部401、フィルタ402、ループフレーム防止部403、キュー404、出力部405を備える。
【００２４】
第1〜第4通信ポートP1〜P4が備える各同一名称の要素は、それぞれ同様の機能を有する。そこで、以下では重複する説明を省くため、特に断りのない限り、第4通信ポートP4に着目して説明する。
【００２５】
入力部401は、通信ポートP4に接続されたケーブルを介して、該当する外部の通信装置から、フレームを受信する。より詳細には、ケーブルから信号を受信し、受信した信号をアナログ・デジタル変換することで、デジタル信号のフレームを取得する。
【００２６】
フィルタ402は、受信したフレームが、事前に与えられたフィルタルールに適合するかどうかを検証し、適合するときは、破棄する。フィルタルールは記憶部511に事前に格納されている。フィルタ402は、メモリバス531を介して記憶部511からフィルタルールを読み出す。フィルタ402は、読み出したフィルタルールと、フレーム内の該当フィールドに基づき、フレームの検証を行う。
【００２７】
図3に本実施形態に係わるフレームフォーマットの一例を示す。
【００２８】
プリアンブル、送信先MACアドレス、送信元MACアドレス、EtherType、LSDU、FCSは、イーサネット（Ethernet）（登録商標）で規定されるフィールドである。
【００２９】
プロトコルタイプ、TPID、PCP、CFI、VID（VLAN-ID）はIEEE802．1Qで規定されるフィールドである。特に、VIDは、ブロードキャストドメインやネットワークの識別子を表す。
【００３０】
Path、size、SequenceNr（シーケンス番号）は、IEC 62439-3で規定されるフィールドである。SequenceNrのシーケンス番号は、送信装置がフレームを送信するたびに1ずつ値が増加される。
【００３１】
本実施形態では、IEC 62439-3で規定されているように、送信元MACアドレスおよびSequenceNrの組が同じフレームを同一のフレームと判別するものとする。ただし、これはあくまで一例であり、どのフィールドを基にして、フレームの同一性を判断しても良い。
【００３２】
IEEE802.1Qで定義されるTPID、PCP、CFI、VIDのフィールドは存在しなくてもよい。
【００３３】
本実施形態の説明では図3のフォーマットを用いるとするが、Zigbee、LTE、近接無線といった他の通信方式のフレームフォーマットを代替的に用いることも可能である。
【００３４】
ここでフィルタルールとして、どのようなルールを用いてもかまわない。例えば、所定のフィールドの値が特定の範囲に含まれるか否かを示す条件であってもよい。
【００３５】
具体的に、送信元フィールド、送信先フィールド、またはVID（ネットワーク識別子）の値が、特定の範囲に含まれるか否かを示す条件であってもよい。この場合、フィルタ402は、フレームに含まれるネットワーク識別子、送信元アドレス、または送信先アドレスが、フィルタルールに適合するか（転送部によるフレームの転送を許可するか）を判定し、適合するときは（転送を許可しないときは）、当該フレームを廃棄する。
【００３６】
また、フィルタルールは、複数の条件の論理積または論理和であってもよい。
【００３７】
ループフレーム防止部403は、フィルタ402を通過したフレームについて、当該フレームと同一のフレーム（すなわち送信元アドレスとシーケンス番号が同一のフレーム）を過去に同一のポートで受信し、かつ転送済みかどうかを検証する。ループフレーム防止部403は、当該検証のために記憶部511を用いる。
【００３８】
記憶部511は、上述のフィルタルール以外に、過去に転送されたフレームの送信元アドレス、シーケンス番号および受信ポートの組を記憶している。
【００３９】
ループフレーム防止部403は、当該フレームの送信元アドレス、シーケンス番号、および受信ポートの組と同一の組が、記憶部511に記憶されているか否かを検査する。記憶部511へのアクセスはメモリバス531を介して行う。当該同一の組が記憶されているときは、当該フレームと同一フレームが過去に転送済みであると判断し、そうでないときは転送済みでないと判断する。
【００４０】
ループフレーム防止部403は、転送済みと判断したときは、当該フレームを廃棄する。
【００４１】
一方、ループフレーム防止部403は、転送済みでないと判断したときは、当該フレームの送信元アドレス、シーケンス番号および受信ポートの組を、記憶部511に格納する。またループフレーム防止部403は、当該フレームを、転送のために転送部521に渡す。
【００４２】
なおループフレーム防止部およびフィルタは必須要素ではなく、後述のようにこれらのうちの一方または両方を備えない構成も、可能である。
【００４３】
転送部521は、第1〜第4通信ポートP1〜P4のループフレーム防止部およびキューと接続されている。
【００４４】
転送部521は、各通信ポートからフレームを受けたときは、当該フレームをどの通信ポートに転送するかを転送ルールにしたがって決定し、決定した通信ポートのキューに、当該フレームを転送する。転送先の通信ポートが複数存在するときは、当該フレームを必要な分だけ、コピーする。転送ルールは事前に転送部521に設定しておく。
【００４５】
図4は、転送部521が転送ルールに従って行う転送処理の流れを示すフローチャートである。
【００４６】
転送部521は、フレームを受信した通信ポート（入力ポート）を判別する（ステップ11）。
【００４７】
転送部521は、フレームを受信した通信ポートが第1通信ポートP1であるときは、当該フレームを第2通信ポートP2に転送する（ステップ12）。
【００４８】
転送部521は、フレームを受信した通信ポートが第2通信ポートP2であるときは、当該フレームを第1通信ポートP1および第4通信ポートP4に転送する（ステップ13）。
【００４９】
転送部521は、フレームを受信した通信ポートが第3通信ポートP3であるときは、当該フレームを第4通信ポートP4に転送する（ステップ14）。
【００５０】
転送部521は、フレームを受信した通信ポートが第4通信ポートP4であるときは、当該フレームを第2通信ポートP2および第3通信ポートP3に転送する（ステップ15）。
【００５１】
ステップ13，15で複数の通信ポートへフレームを転送する場合、上述したように転送部521はフレームをコピーする。この際、転送部521はコピーしたフレームのうち、送信元MACアドレスおよびSequenceNrフィールド以外のフィールドを変更することも、可能である。たとえばコピーしたフレームのPathフィールドを変更してもよい。
【００５２】
転送部521は、ソフトウェア・プログラムをCPU等のコンピュータに実行させることによりその機能を実現してもよいし、例えばクロスバ・スイッチやバスで構成しても良い。
【００５３】
キュー404は、転送部521から渡されたフレームを、当該フレームの出力が可能になるまで保持する。
【００５４】
出力部405は、キュー404から出力されたフレームにデジタル・アナログ変換を施す。出力部405は、当該変換により得られたアナログ信号のフレームを、第4通信ポートP4に接続されたケーブルを介して、該当する外部の通信装置へ送信する。
【００５５】
図5は、各通信ポートで受信されたフレームが、上述の転送ルールに従って転送される様子を具体的に示す模式図である。
【００５６】
第1通信ポートP1で受信されたフレームは、線L1に示されるように、第2通信ポートP2へ転送されて、第2通信ポートから外部に送信される。ただし、当該フレームは、フィルタ102およびループフレーム防止部103の処理を通過したものとする（以下同様）。
【００５７】
第2通信ポートP2で受信されたフレームは、線L2に示されるように、第1通信ポートP1および第4通信ポートP4へ転送されて、各通信ポートP1,P4から外部に送信される。
【００５８】
第3通信ポートP3で受信されたフレームは、線L3に示されるように、第4通信ポートP4へ転送されて、第4通信ポートP4から外部に送信される。
【００５９】
第4通信ポートP4で受信されたフレームは、線L4に示されるように、第2通信ポートP2および第3通信ポートP3へ転送されて、各通信ポートP2,P3から外部に送信される。  
図6は、図1の転送装置による全体の処理の流れを示すフローチャートである。ここでは第4通信ポートP4でフレームが受信されたときの処理の流れを示す。第1〜第3通信ポートP1〜P3でフレームが受信された場合も同様の手順に従って、処理が行われる。
【００６０】
入力部401は、外部からの入力信号をアナログ・デジタル変換して、デジタル形式のフレームを得る（ステップ701）。
【００６１】
次に、フィルタ402は、ステップ701で得られたフレームが、記憶部511に保存されたフィルタルールに適合するか否かを判断する（ステップ702）。
【００６２】
フレームがフィルタルールに適合する場合（YES）、フィルタ402は当該フレームを破棄する（ステップ707）。
【００６３】
一方、フレームがフィルタルールに適合しない場合（NO）、ループフレーム防止部403は、当該フレームと同一のフレームを既に同一の通信ポートで受信し、かつ転送済みか否かを判断する（ステップ703）。具体的には、ループフレーム防止部403は、当該フレームの送信元MACアドレス、SequenceNrフィールドの値、および受信ポートが一致する組が、記憶部511に保存されているか否かを検証する。
【００６４】
一致する組が保存されている場合、ループフレーム防止部403は、当該フレームと同一フレームが既に転送済みであると判断し（YES）、当該フレームを破棄する（ステップ707）。
【００６５】
一方、一致する組が保存されていない場合、ループフレーム防止部403は、当該フレームと同一のフレームは未転送であると判断し（NO）、フレームの送信元MACアドレス、SequenceNrフィールドの値、および受信ポートを記憶部511に保存する（ステップ704）。
【００６６】
次に、転送部521は、フレームの転送先ポートを上記転送ルールに従って求め、転送先ポートのキューへ当該フレームを出力する（ステップ705）。本例では受信ポートは第4通信ポートP4であるため、転送先ポートは第2および第3通信ポートP2,P3である（図4参照）。
【００６７】
次に、転送先の通信ポート内のキューは、フレームを出力可能になるまでフレームを保持（キューイング）する（ステップ706）。
【００６８】
次に、転送先の通信ポート内の出力部は、キューから出力されたフレームにデジタル・アナログ変換を施し、アナログ信号のフレームを、当該通信ポートに接続されたケーブルから出力する（ステップ708）。
【００６９】
以下、図2に示したネットワークシステムについて説明する。
【００７０】
このネットワークは、大きく、2つのリングR1,R2と、2つの転送装置601、602で構成される。
【００７１】
リングR1は装置611、615、616を備える。各装置はそれぞれ2つの通信ポートを有し、これらの通信ポートはケーブルで接続される。
【００７２】
両端の装置616、611の通信ポートは転送装置601、602に接続される。より詳細に、装置616の通信ポートは転送装置601の第4通信ポートP4にケーブル接続される。装置611の通信ポートは転送装置602の第2通信ポートP2にケーブル接続される。
【００７３】
リングR2は装置612、613、614を備える。各装置はそれぞれ2つのポートを有し、これらの通信ポートはケーブルで接続される。
【００７４】
両端の装置612、614の通信ポートは転送装置601、602に接続される。より詳細に、装置612の通信ポートは転送装置601の第2通信ポートP2にケーブル接続される。装置614の通信ポートは転送装置602の第2通信ポートP4にケーブル接続される。
【００７５】
また転送装置601の第3通信ポートP3と、転送装置602の第1通信ポートP1がケーブル接続される。転送装置601の第1通信ポートP1と、転送装置602の第3通信ポートP3ケーブルで接続される。
【００７６】
装置611〜616は、それぞれ同等の通信機能を有する。装置611〜616は、例えば非特許文献1に記載されたHSRノードである。
【００７７】
装置611〜616は一方のポートで受信したフレームを、他方のポートから送信することで、フレームを中継する。ただし、フレームの宛先アドレスが自身のアドレスに一致するときは、当該フレームを内部に取り込んで処理し、フレームの中継は行わない。また自身のアドレスを送信元アドレスにもつフレームを受信したときは、当該フレームを廃棄し、当該フレームの中継を行わない。
【００７８】
図2のシステムの動作例を、リングR2に接続された装置612が、リングR1に接続された装置611宛に、フレームを送信する場合を例に説明する。この場合、図7に示すように、装置612が送信装置、装置611が受信装置となる。
【００７９】
送信装置612は2つのポートからそれぞれ同一のフレームを送信する。左回りのフレームをフレーム1、右回りのフレームをフレーム2とする
送信装置612の一方のポートから送信されたフレーム2は、装置613、614によって転送装置602に転送され、転送装置602の第4通信ポートP4で受信される。
【００８０】
転送装置602は第4通信ポートP4で受信したフレーム2を1つコピーして、第2通信ポートP2および第3通信ポートP3からそれぞれ出力する。
【００８１】
第2通信ポートP2から出力されたフレーム2は受信装置611によって受信される。第3通信ポートP3から出力されたフレームは、転送装置601の第1通信ポートP1に入力される。
【００８２】
一方、送信装置612の他方のポートから送信されたフレーム1は、転送装置601の第2通信ポートP2で受信される。
【００８３】
当該フレーム1は1つコピーされて、第1通信ポートP1および第4通信ポートP4から出力される。
【００８４】
第4通信ポートP4から送信されたフレーム1は装置616、615によって転送されて、受信装置611によって受信される。すなわち受信装置611は、フレーム1の宛先アドレスが自装置のアドレスに一致することを判断して、当該フレーム1を内部に取り込み、処理する。
【００８５】
なお、受信装置611は、受信したフレーム1、2の両方を処理してもよいし、どちらか一方を処理し、他方を破棄してもよい。
【００８６】
転送装置601の第1通信ポートP1から送信されたフレーム1は、転送装置602の第3通信ポートP3で受信される。
【００８７】
転送装置601は、第1通信ポートP1で受信した転送装置602からのフレーム2を、通信ポートP2から送信装置612へ転送する。送信装置612は、例えば非特許文献１に記載される通り、フレーム2の送信元MACアドレスが送信装置612のアドレスであることから、転送装置601から転送されたフレーム2を破棄する。図内の印「×」は、該当する転送装置または装置で、フレームが廃棄されることを意味する。
【００８８】
一方、転送装置602は、転送装置601から第3通信ポートP3で受信したフレームを、通信ポートP4から装置614へ転送する。転送装置602の通信ポートP4から転送されたフレーム2は、装置614および装置613を介して送信装置612に受信される。送信装置612は、装置613から転送されたフレーム1の送信元MACアドレスが送信装置612のアドレスであることから、当該フレーム1を廃棄する。
【００８９】
ここで、フレーム１が何らかの要因によってリングR2内を一周し、転送装置601が再び通信ポートP2で受信することがあり得る。例えば、送信装置612がフレーム1を破棄し損なう場合があり得る。この場合のフレームの流れは図8のようになる。
【００９０】
すなわち、転送装置601が過去に一度受信したフレーム１を同一の通信ポートP2で再び受信したとき、転送装置601はフレーム１を破棄する。
【００９１】
一方、フレーム2が何らかの要因によってリングR2内を一周し、転送装置602が再び通信ポートP4で受信することがあり得る。この場合のフレームの流れは図9のようになる。
【００９２】
すなわち、転送装置602が過去に一度受信したフレーム2を同一の通信ポートP4で再び受信したとき、転送装置602はフレーム2を破棄する。
【００９３】
以上の説明から理解されるように、受信装置611が受信するフレームが辿る経路は、最大で2通りの経路に限定される。よってネットワークに障害が起きたとき（たとえば受信装置がフレームの一方または両方を受信できなかったとき）、ケーブルの異常箇所等の、障害要因の特定を容易に行うことができる。
【００９４】
（第2実施形態）
第1の実施形態では、記憶部511は、通信ポートP1〜P4の各ループフレーム防止部に対し共通に設けられ、送信元MACアドレス、SequenceNrフィールド値（シーケンス番号）および受信ポートの組を記憶したが、当該組を保存する記憶領域を、ループフレーム防止部ごとに確保してもよい。この場合、記憶領域が複数の通信ポートに共有されないため、リソースの競合が起こらないため、競合リソースを使用できるまでの待ちをなくすことができ、処理時間を減らすことができる利点がある。本実施形態におけるフレームの流れは、上記第１実施形態で示したのと同様になる。
【００９５】
（第3実施形態）
本実施形態では、各通信ポートが、ループフレーム防止部およびフィルタの一方または両方を備えない場合を示す。
【００９６】
フィルタを搭載しない場合は、フィルタルールを記憶する必要がなくなるため、搭載メモリ量を少なくできる。
【００９７】
ループフレーム防止部を備えない場合、記憶部511に転送済みのフレームの送信元MACアドレス、シーケンス番号および受信ポートの組を記憶する必要がなくなるため、搭載メモリ量を少なくできる。
【００９８】
ループフレーム防止部を備えない場合、ホップ数を制限するHop limitフィールドを、図4に示すフレームフォーマットに追加することが好ましい。Hop limitフィールドは、フレームフォーマットのプロトコルタイプとLSDUの間のいずれかの位置に定義する。
【００９９】
図2に示すすべての装置および転送装置が、フレームを転送するときにHop limitフィールド値を1減じ、Hop limitフィールド値が0である場合にフレームを破棄する。これにより、宛先アドレスをもつ装置が存在しないときに、フレームが無限転送されるのを防止できる。
【０１００】
本実施形態によってループフレーム防止部を備えない場合、フレームの基本的な流れは、上記第１実施形態で示したのと同様になる。
【０１０１】
（第4実施形態）
図1に示したループフレーム防止部およびフィルタの配置箇所は一例であり、これらを他の箇所に配置することも可能である。
【０１０２】
たとえば、ループフレーム防止部は、キューと転送部の間、キューと出力部の間、またはフィルタと入力部の間に配置されてもよい。ループフレーム防止部がキューと転送部の間、またはキューと出力部の間に配置される場合、ループフレーム防止部は、過去同一のポートで受信した同一のフレームではなく、過去に同一のポートから出力した同一のフレームを検知した場合に当該フレームを破棄する。
【０１０３】
またフィルタは、キューと転送部の間、キューと出力部の間、転送部とループフレーム防止部の間に配置されても良い。
【０１０４】
（第5実施形態）
第1実施形態では、記憶部511は各通信ポートに共通の記憶装置として配置されたが、代わりに、通信ポートP1〜P4がそれぞれ内部に記憶装置を備えてもよい。
【０１０５】
この場合、フィルタルールは通信ポートごとの記憶装置に記憶される。送信元アドレス、シーケンス番号および受信ポートの組の記憶も、通信ポートごとの記憶装置で行われる。
【０１０６】
本実施形態におけるフレームの流れは、上記第１実施形態で示したのと同様になる。
【０１０７】
（第6実施形態）
各通信ポートのループフレーム防止部は記憶部511に対するキャッシュメモリを具えてもよい。
【０１０８】
これによりメモリアクセスを高速にし、より高速なフレーム転送、およびフィルタ処理が可能となる。
【０１０９】
（第7実施形態）
前述した各実施形態においてリングと転送装置との接続方法を誤ると、各実施形態の適正な動作が得られない。誤った接続としては、たとえば図2において転送装置601の向きを紙面に並行に180度回転させた状態でリングと接続する場合があり得る。すなわち、転送装置601の第4通信ポートP4と転送装置602の第3通信ポートP3、転送装置601の第3通信ポートP3と装置612、転送装置601の第2通信ポートP2と転送装置602の第1通信ポートP1、転送装置601の第1通信ポートP1と装置615間を接続する場合である。
【０１１０】
このような人為的な接続誤りを防止するため、ユーザによりリングおよび転送装置間を接続した後、転送装置が各通信ポートをそれぞれ第1〜第４通信ポートP1〜P4のどれに設定するかを自動的に判断し、判断結果に応じて各通信ポートをそれぞれ、第1〜第４通信ポートP1〜P4のいずれか１つに設定する例を示す。
【０１１１】
本実施形態に係わる転送装置601の動作フローを図10、転送装置602の動作フローを図11に示す。
【０１１２】
転送装置601は、起動時に、4つの通信ポートから通知メッセージを送信する（図10のステップ1101）。通知メッセージは、少なくとも自装置が転送装置であることを示す記述を含むメッセージである。通知メッセージの宛先アドレスは隣接する機器にのみ到着可能な特別なアドレスでもよい。
【０１１３】
転送装置602は、転送装置601から送信された通知メッセージを2つの通信ポートで受信する（図11のステップ1201）。当該通知メッセージを受信した通信ポート、または転送装置602の転送部は、通知メッセージが受信された通信ポートから、応答メッセージを返す（ステップ1202）。なお、リング上の各装置は、通知メッセージを受信しても応答メッセージを返さない、もしくは異なる種類のメッセージを返すように構成されるものとする。
【０１１４】
転送装置602は、通知メッセージを受信した当該2つの通信ポートを、第1および第3通信ポートに設定する（ステップ1203）。どちらの通信ポートを第1通信ポートに設定してもよく、またどちらの通信ポートを第3通信ポートに設定してもよい。
【０１１５】
転送装置602は、通知メッセージを受信しなかった残りの2つの通信ポートを第2および第4通信ポートに設定する（ステップ1204）。より詳細には、当該残りの2つの通信ポートうち、第1通信ポートと事前に対応づけられた一方の通信ポートを第2通信ポート、他方の通信ポートを第4通信ポートに設定する。
【０１１６】
つまり、転送装置602では、4つの通信ポートは2つのペアに分かれて、2つの通信ポートが組み合わされている。これは転送装置601も同様である。作業者が、転送装置同士をケーブル接続する際は、転送装置ごとに、一方のペアの1つのポートと、他方のペアの1つのポートを用いて接続を行う。
【０１１７】
転送装置602は、上記のように設定した内容を示す設定情報を、内部のバッファに記憶する（ステップ1205）。転送装置602は設定情報を参照して、各通信ポートを識別し、図4に示したような転送処理を行う。
【０１１８】
一方、転送装置601は、転送装置602から応答メッセージを2つの通信ポートで受信し（ステップ1102）、当該2つの通信ポートを、第1および第3通信ポートに設定する（ステップ1103）。どちらの通信ポートを第1通信ポートに設定してもよく、またどちらの通信ポートを第3通信ポートに設定してもよい。
【０１１９】
転送装置601は、応答メッセージを受信しなかった残りの2つの通信ポートを第2および第4通信ポートに設定する（ステップ1104）。より詳細には、当該残りの2つの通信ポートのうち、第1通信ポートと事前に対応づけられた一方の通信ポートを第2通信ポート、他方の通信ポートを第4通信ポートに設定する。
【０１２０】
転送装置601は、このような設定内容を示す設定情報を、内部のバッファに記憶する（ステップ1105）。転送装置601は設定情報を参照して、各通信ポートを識別し、図4に示した転送処理を行う。
【０１２１】
（第8実施形態）
第1実施形態では2つのリングを2つの転送装置により接続する形態を示したが、3つ以上のリングを相互接続することも可能である。
【０１２２】
図12は4つのリングR11〜R14を相互接続したネットワークシステムを示す。
【０１２３】
リングR11〜R14間を接続するため、転送装置のペアを3セット用いている。転送装置901、902のペアが、リングR11、R12間を接続し、転送装置903、904のペアが、リングR12、R13間を接続し、転送装置905、906のペアが、リングR12、R14間を接続している。
【０１２４】
リングR11には装置801、802、803、804が接続されている。リングR12には装置805、806、807が接続されている。リングR13には装置808、809、810、811が接続されている。リングR14には装置812、813、814、815が接続されている。
【０１２５】
このように3つ以上のリングを接続する場合も各転送装置が図4に示した動作を行うことによってフレームの辿る経路が制限され、障害が起きた場合に、その要因を容易に特定することができる。
【０１２６】
上述した各実施形態はそのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態にわたる構成要素を適宜組み合わせてもよい。
【０１２７】
また、図1に示した転送装置は、例えば、汎用のコンピュータ装置を基本ハードウエアとして用いることでも実現することが可能である。すなわち、図1の装置が備える各要素により行わせる処理を記述したプログラムをコンピュータに実行させることにより、各要素の動作を実現することが可能である。このとき、転送装置は、上記のプログラムをコンピュータ装置にあらかじめインストールすることで実現してもよいし、ハードディスク、メモリ装置、光ディスク等の記憶媒体に記憶して、あるいはネットワークを介して上記のプログラムを配布して、このプログラムをコンピュータ装置に適宜インストールすることで実現してもよい。
【図１】
0005238755.tif 000002
【図２】
0005238755.tif 000003
【図３】
0005238755.tif 000004
【図４】
0005238755.tif 000005
【図５】
0005238755.tif 000006
【図６】
0005238755.tif 000007
【図７】
0005238755.tif 000008
【図８】
0005238755.tif 000009
【図９】
0005238755.tif 000010
【図１０】
0005238755.tif 000011
【図１１】
0005238755.tif 000012
【図１２】
0005238755.tif 000013