JP2004320477A - ネットワークシステムの制御方法 - Google Patents
ネットワークシステムの制御方法 Download PDFInfo
- Publication number
- JP2004320477A JP2004320477A JP2003111874A JP2003111874A JP2004320477A JP 2004320477 A JP2004320477 A JP 2004320477A JP 2003111874 A JP2003111874 A JP 2003111874A JP 2003111874 A JP2003111874 A JP 2003111874A JP 2004320477 A JP2004320477 A JP 2004320477A
- Authority
- JP
- Japan
- Prior art keywords
- port
- packet
- address
- loop
- switching hub
- 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.)
- Withdrawn
Links
Images
Landscapes
- Small-Scale Networks (AREA)
Abstract
【課題】ネットワーク上において、スパニングツリーによる転送ループの検出は、動作制御が複雑であった。
【解決手段】各中継装置において、各ポートに新規にリンクがはられた場合、第1の時間が経過するまで該ポートで受信したパケットを拒否し、アドレステーブルに登録されている送信元アドレスを、登録から第2の時間が経過後に削除するが、第1の時間は第2の時間よりも長い。すなわち、あるポートで受信したパケットの送信元アドレスが、アドレステーブルにおいて他のポートに既に登録されている(S505)場合、ループ接続が検出される(S507)。
【選択図】 図3
【解決手段】各中継装置において、各ポートに新規にリンクがはられた場合、第1の時間が経過するまで該ポートで受信したパケットを拒否し、アドレステーブルに登録されている送信元アドレスを、登録から第2の時間が経過後に削除するが、第1の時間は第2の時間よりも長い。すなわち、あるポートで受信したパケットの送信元アドレスが、アドレステーブルにおいて他のポートに既に登録されている(S505)場合、ループ接続が検出される(S507)。
【選択図】 図3
Description
【0001】
【発明の属する技術分野】
本発明はパケットの無限ループを検出するネットワークシステムの制御方法に関する。
【0002】
【従来の技術】
従来、スイッチングHUBやブリッジは各ポート間を直接交換接続することによって、他のポートへトラフィックの影響を与えない。どのポート間を接続するかは、学習してあるアドレスで判定する。すなわち、各ポートに接続されたアドレスのテーブルを作成し、そのテーブルに従いポート間をスイッチング技術によって接続する。アドレステーブルに登録されていない送信元アドレスを持ったパケットを受信した場合は、受信したポート以外の全てのポートにパケットを送信する。また、複数のアドレスのテーブルをポートごとに作成することができるので、ポート先には端末やHUBを接続することができる
図6に、スイッチングHUBを2段に接続した場合のアドレステーブル例を示す。スイッチングHUBは、あるポートから受信したパケットの送信元アドレスをもとに、アドレステーブルに登録していく。例えばスイッチングHUBのポート1から送信元アドレスAのパケットを受信した場合、スイッチングHUB XのアドレステーブルにアドレスAとポート1を登録する。このように登録を繰り返すと、ポート4には相手先スイッチングHUB Yに接続されている端末のアドレスD,E,Fが登録されることになる。
【0003】
しかし、スイッチングHUB Yに接続されている例えば端末Fがネットワークから離脱した場合、スイッチングHUB Yにおいては端末Fの離脱が検出できるものの、スイッチングHUB Xのポート4に登録されているアドレスFは永久に保持されたままであり、端末Fの離脱は検出されない。
【0004】
このような不具合を回避するために従来のスイッチングHUBにおいては、アドレスが登録されてから一定時間が経過すると、そのアドレスをアドレステーブルから削除するという、所謂エイジング処理を行う。
【特許文献1】
特開平11−205367号公報
【0005】
【発明が解決しようとする課題】
しかしながら、スイッチングHUBやブリッジのパケット転送においては、図7のように装置間でループ形状を伴う接続をしてしまった場合に、以下のような問題が生じていた。すなわち、このような接続においてある端末からブロードキャストパケットが送信された場合、転送ループが形成されてしまう。転送ループではブロードキャストパケットがネットワーク上を無限に周回するため、新しいトラフィックが送信されるごとに増えつづけてトラフィックレートが上昇し、最終的にはネットワークが飽和状態に陥ってしまう。また、ネットワーク全体で解決することができない宛先アドレスのパケットが送信された場合も同様である。
【0006】
IEEE 802.1Dブリッジング標準では、このような転送ループの回避策として、スパニングツリーアルゴリズムが規定されている。スパニングツリーアルゴリズムによれば、スパニングツリー用のマルチキャストアドレスを使用して、各スイッチが送信するコンフィグレーションメッセージをもとに動作し、ループ接続時に単一のルートを選択してパケットを送信することができる。
【0007】
しかしながら、通常スパニングツリーのようなループ検出プロトコルは、動作制御が非常に複雑であり、これを実装する場合には、CPUやメモリ等の専有時間が増えて、資源を消費してしまうという問題点があった。また、この方法では、ループ検出用の制御パケットをルータ間で定期的に交換するため、通常のユーザデータを送るための実質的な回線が減少してしまうという問題点があった。更に、スパニングツリープロトコルが実装されているスイッチングHUBは、そうでないものと比較するとコスト高となってしまうという問題点もあった。
【0008】
そこで、スパニングツリープロトコルを使用せずに転送ループを検出する方法として、各ポートで受信される受信パケット内の送信元アドレスを監視し、所定時間内に同じ送信元アドレスを持ったパケットが複数ポートで受信された場合に、ループ接続を検出する方法がある(例えば、特許文献1参照)。
【0009】
しかしながら、この転送ループ検出方法では、多数のスイッチングHUBによって巨大なループが形成され、そのネットワーク上のトラフィックが非常に高い場合には、所定時間内に検出すべきパケットの到達が遅れるためループ検出が行えない。これを回避するために検出用の所定時間を長く設定した場合は、ユーザが短時間で端末を別ポートに接続することを繰り返した場合に、これをループ接続であると誤認識してしまうという問題があった。
【0010】
本発明は上述した問題を解決するためになされたものであり、スパニングツリーを実装することなく、ネットワーク上のループ接続を確実に検出するネットワークシステムの制御方法を提供することを目的とする。
【課題を解決するための手段】
上記目的を達成するため、本発明に係るネットワークシステムの制御方法は以下の工程を備える。
【0011】
すなわち、複数のポートを備え、ポート毎に受信したパケットの送信元アドレスを登録するアドレステーブルを保持する中継装置を、複数台接続してパケット中継を行うネットワークシステムの制御方法であって、各中継装置において、各ポートに新規にリンクがはられた場合、第1の時間が経過するまで該ポートで受信したパケットを拒否し、前記アドレステーブルに登録されている送信元アドレスを、登録から第2の時間が経過後に削除し、前記第1の時間は前記第2の時間よりも長いことを特徴とする。
【0012】
【発明の実施の形態】
本発明は、複数のポートを備え、ポート毎に受信したパケットの送信元アドレスを登録するアドレステーブルを保持する中継装置を、複数台接続してパケット中継を行うネットワークシステムの各中継装置において、各ポートに新規にリンクがはられた場合、第1の時間が経過するまで該ポートで受信したパケットを拒否し、アドレステーブルに登録されている送信元アドレスを、登録から第2の時間が経過後に削除し、第1の時間は第2の時間よりも長いことを特徴とするものである。各中継装置において、あるポートで受信したパケットの送信元アドレスがアドレステーブルに未登録であれば、これを登録し、他のポートに既に登録されていれば、該ネットワークにおいてループ接続が発生した旨が検出される。ループ接続の発生が検出されると、該パケットを廃棄し、さらに、その旨をユーザに通知する。
【0013】
以下、本発明に係る一実施形態について、図面を参照して詳細に説明する。
【0014】
<第1実施形態>
図1は、本実施形態をスイッチングHUBの各ポートに実装した構成を示すブロック図である。以下、複数のポートが搭載されているスイッチングHUBのポートNに関して説明する。
【0015】
ポートNの受信部301では、ポートNで受信されるパケットを物理層レベルで受信する。リンク監視部303は、ポートNにリンクがはられているか否かを常時監視し、リンクがはられた場合、すなわち新たな接続がなされた場合にはパケット拒否タイマを起動する信号を出力し、リンクが切れた場合にはパケット拒否タイマをクリアする信号を出力する。パケット拒否タイマ部304は、リンク監視部303からの起動信号をトリガにしてタイマを起動し、設定された時間(パケット拒否時間T1)が経過するとパケット処理部305にパケット受信許可信号を出力する。
【0016】
パケット処理部305では、パケットの受信処理及び送信処理を行う。パケット拒否タイマ部304からのパケット受信許可信号が入力されている場合は、受信部301より入力された受信パケットをパケット解析部306に出力する。一方、パケット受信許可信号が入力されていない場合は、ポートNに接続されている端末との通信が全二重であればPauseフレームを作成し、送信部302に出力するが、半二重であればコリジョン信号を送信する。この処理により、ポートNに接続されている機器に対して送信を停止させる。
【0017】
パケット解析部306では、入力されたパケットの宛先アドレスと送信元アドレスを解析する。解析された宛先アドレスはアドレステーブル307へ出力し、アドレステーブル307よりスイッチングすべきポート番号を取得する。同様に解析された送信元アドレスは、学習処理及びループ検出のためにアドレステーブル307に出力される。
【0018】
アドレステーブル307は、パケットのアドレスとスイッチングHUBのポート番号を対応付けて管理しており、スイッチングHUBごとに1つが搭載されている。アドレステーブル307は、パケット解析部306より受信した宛先アドレスをもとに、対応付けられているポート番号を検索してパケット解析部306に出力する。また、パケット解析部306より受信した送信元アドレスが既に登録されているか否かを検索し、登録されていなければ学習処理としてその送信元アドレスをポートNに割り当てる。このような学習処理が行われた場合、エイジングタイマ部308に起動信号を出力する。また、アドレステーブル307にて検索した送信元アドレスが別のポートに登録されていた場合、ループ検出部309にエラー信号を出力する。また、エイジングタイマ部308よりエイジング信号を受信すると、アドレステーブル307は登録されているアドレスを削除する。
【0019】
エイジングタイマ部308は、アドレステーブル307からの起動信号をトリガにタイマを起動し、設定された時間(エイジング時間T2)が経過すると、アドレステーブル307に登録されているアドレスに対してエイジング信号を送信する。ここで本実施形態においては、エイジング時間T2を上述したパケット拒否時間T1よりも短くなるように、すなわち、T2<T1となるように設定することを特徴とする。
【0020】
ループ検出部309は、アドレステーブル307よりエラー信号を受信するとループを検出したと断定し、廃棄パケット選択部310とユーザ通知部311にループ検出信号を送信する。
【0021】
廃棄パケット選択部310は、パケット解析部306から送られてくるパケットをスイッチング部312に中継するが、ループ検出部309よりループ検出信号を受信すると、パケット解析部306から送られてくるパケットをスイッチング部312に中継せず、これを廃棄する。
【0022】
ユーザ通知部311は、ループ検出部309よりループ検出信号を受信すると、ユーザにループ接続が行われている旨を通知する。この通知手段としては、ループ発生LEDの点灯やブザーの鳴動等が考えられる。スイッチング部312は、受信したパケットを正しいポートにスイッチし、送信側のパケット処理部305にパケットを中継し、送信すべきパケットを送信部302に出力する。
【0023】
本実施形態においては、スイッチングHUBにおけるポートに新規で機器が接続された際に、設定された時間中はパケットを拒否することを特徴とする。以下、図2のフローチャートを参照して、本実施形態におけるパケット受信処理について説明する。
【0024】
図2のステップS401において、スイッチングHUBは各ポートに関して、リンクがはられたか否かをリンク監視部303にて常時監視している。そしてステップS402において、新規でポートにリンクがはられていない場合には、ステップS401にてリンクの監視を続ける。一方、ステップS402でポートNに新規にリンクがはられた旨を確認した場合、ステップS403においてポートNの受信パケットを全て拒否し、ポートNに接続されている機器に対して、全二重通信であればPauseフレームを、半二重通信であればコリジョン信号を送信し、機器からの送信を中止させる。そして、ステップS404でパケット拒否タイマ部304に設定されているT1時間が経過するまで、ステップS403におけるポートNの受信パケット拒否を続ける。ステップS404においてT1時間が経過すると、ステップS405においてパケット受信許可を行い、通常の通信状態であるステップS406に移行する。
【0025】
以下、本実施形態においてネットワーク上でループ接続が行われているか否かを判定するループ検出処理について、図3のフローチャートを参照して説明する。
【0026】
まず、ポートNが、図2に示した通常の通信状態であるステップS406の状態にあるとする。この時、ステップS501でポートNよりパケットが入力されるとステップS502に進み、送信元アドレスをアドレステーブル307にて検索する。検索した結果、ステップS503において受信したパケットの送信元アドレスがアドレステーブル307に登録されていない、すなわちヒットしなかった場合、処理はステップS504に移行し、アドレステーブル307に対して送信元アドレスをポートNに対応付けて登録し(学習処理)、処理を終了する。
【0027】
一方、ステップS503において送信元アドレスがアドレステーブル307に登録されている、すなわちヒットした場合、ステップS505に進み、アドレステーブル307に登録されている送信元アドレスに対応付けられたポート番号、すなわち以前に学習していたポート番号が、今回と同一のポートNであるか否かを判定する。ポート番号が一致していればステップS506に進み、学習済みであると判断して処理を終了するが、不一致であればステップS507に進み、ループ接続がなされていることを検出する。ループが検出されると、ステップS508においてループパケットを廃棄し、ステップS509においてユーザ通知処理が行われる。
【0028】
以下、図4を参照して、1対1のスイッチングHUB間でループ接続が行われた場合を例として、本実施形態のループ検出処理について説明する。
【0029】
図4においては、4ポートのスイッチングHUB601のポート4と、スイッチングHUB602のポート1とが接続されている。スイッチングHUB601のポート1にはアドレスAの端末603が、ポート2にはアドレスBの端末604がそれぞれ接続されている。また、スイッチングHUB602のポート3にはアドレスCの端末605が、ポート4にはアドレスDの端末606が接続されている。各端末は接続後、図2に示すパケット拒否処理に従い、図1に示すパケット拒否タイマ部304に設定されたT1時間の間はパケット送信を拒否され、その後、通常の通信状態(S406)に移行する。
【0030】
スイッチングHUBは上記の状態から、学習を行っていく。例えば、スイッチングHUB601のポート1に接続されているアドレスAの端末603から、ネットワーク上にパケットを送信する場合について、図3のフローチャートを用いて説明する。
【0031】
アドレスAの端末603から、送信元アドレスAのパケットが送信される。上記パケットはスイッチングHUB601のポート1で受信される(S501)。スイッチングHUB601のポート1では、送信元アドレスAをアドレステーブルにて検索する(S502)。アドレスAの端末503は初めてのパケット送信であるため、スイッチングHUB601のアドレステーブルにアドレスAは登録されていない。そこでスイッチングHUB601は、アドレステーブルにアドレスAをポート1と登録する(S504)。
【0032】
再度、アドレスAの端末603よりパケットが送信された場合は、アドレステーブルにアドレスAが登録されており(S503)、さらにアドレスAはポート1に対応付けられている(S505)ため、学習済みと判断する(S506)。その後、スイッチングHUB601は、アドレスAに対してエイジングがかかるまで、送信元アドレスAのパケットがポート1から入力されても処理を必要としない。そして時間T2が経過してエイジングがかかった場合に、再び学習処理を行う。
【0033】
上述したように各端末がネットワーク上にパケットを送信することで学習処理を行う。各端末が通信を繰り返し、スイッチングHUBが十分に学習を行った場合、各スイッチングHUB601,602のアドレステーブルはそれぞれ、図4に示すアドレステーブル608,609のようになる。
【0034】
このような状態において、図4に点線で示す様に、スイッチングHUB601のポート3とスイッチングHUB602のポート2を接続すると、スイッチングHUB601とスイッチングHUB602の間がループ形状となる。以下、ネットワークのループ形状をスイッチングHUB602が検出する方法について、詳細に説明する。
【0035】
ここで、アドレスAの端末603からブロードキャストパケット607が送信されたとする。ブロードキャストパケット607をポート1に受信したスイッチングHUB601は、アドレステーブル608によって、送信元アドレスAがポート1に登録されていることを確認し、他のポート(ポート2,3,4)にブロードキャストパケット607を中継する。スイッチングHUB601のポート3とポート4はスイッチングHUB602に接続されているため、ブロードキャストパケット607はスイッチングHUB602のポート1とポート2でほぼ同時に受信される。
【0036】
スイッチングHUB602のアドレステーブル609ではアドレスAはポート1に登録されているため、受信するのがポート2より早くても遅くても、ポート1にブロードキャストパケット307を受信した場合は、スイッチングHUB602の他のポートにブロードキャストパケット307を送信する。ここで、ポート2にブロードキャストパケット307を受信した場合が問題となる。この問題について、図3のループ検出フローチャートを用いて説明する。
【0037】
スイッチングHUB602のポート2にブロードキャストパケット307を受信する(S501)と、ブロードキャストパケット607の送信元アドレスをアドレステーブル609にて検索する(S502)。ここでアドレスAは登録されているのでヒットする(S503)が、対応付けられているポートがポート1となっており、送信元アドレスAを受信したポートは2であるため(S505)、スイッチングHUB602はネットワーク上でループが発生していると判断する(S507)。
【0038】
なお、ここでループであると即座に判断できる理由は以下のとおりである。すなわち、もしもアドレスAの端末603が他のポートに接続し直されていても、新規接続された場合はT1時間パケット送信を拒否されており、エイジングの時間T2との関係にT1>T2の条件が成り立っているため、アドレステーブル609に登録されているアドレスが他のポートで受信された場合には、確実にループ接続されていると判断できる。
【0039】
ループが発生していると判断したスイッチングHUB602は、ブロードキャストパケット607を廃棄し(S508)、ユーザに通知を行う(S509)。
【0040】
スイッチングHUB601に関しても同様のアルゴリズムによって、ネットワークがループ接続されていることを検出し、ループパケットが無限に周回することを回避することができる。
【0041】
以上説明したように本実施形態によれば、スイッチングHUB内で複雑な処理を行い、スイッチングHUB間で専用メッセージをやり取りしなくてはならないスパニングツリープロトコルを実装することなく、1対1のスイッチングHUB間でのパケット転送において、確実にループを検出し、パケットを廃棄することができる。
【0042】
<第2実施形態>
以下、本発明に係る第2実施形態について説明する。
【0043】
上述した第1実施形態では、1対1のスイッチングHUB間におけるループ接続を検出する例について説明したが、第2実施形態においては、複数のスイッチングHUB間におけるループ接続を検出する例を示す。
【0044】
第2実施形態における複数のスイッチングHUB間でのループ検出処理を、図5を参照して説明する。
【0045】
図5においては、4ポートのスイッチングHUB701のポート2とスイッチングHUB702のポート4、スイッチングHUB701のポート4とスイッチングHUB703のポート1とが接続されている。スイッチングHUB701のポート2にはアドレスAの端末704が、ポート3にはアドレスBの端末705が接続されている。スイッチングHUB702のポート2にはアドレスCの端末706が、ポート3にはアドレスDの端末707が接続されている。スイッチングHUB703のポート2にはアドレスEの端末708が、ポート3にはアドレスFの端末709が接続されている。各端末は接続後、図2に示すパケット拒否処理に従い、図1に示すパケット拒否タイマ部304に設定されたT1時間の間はパケット送信を拒否され、その後、通常の通信状態(S406)に移行する。
【0046】
この状態から各端末が通信を繰り返し、各スイッチングHUBが十分に学習を行った場合、スイッチングHUB701,702,703のアドレステーブルはそれぞれ、図5に示すアドレステーブル710,711,712のようになる。
【0047】
このような状態において、図5に点線で示す様に、スイッチングHUB702のポート1とスイッチングHUB703のポート4を接続すると、スイッチングHUB701とスイッチングHUB702、スイッチングHUB703の間がループ形状となる。以下、ネットワークのループ形状を各スイッチングHUBが検出する方法について、詳細に説明する。
【0048】
ここで、アドレスAの端末704からブロードキャストパケット713が送信されたとする。ブロードキャストパケット713をポート2に受信したスイッチングHUB701は、アドレステーブル710によって送信元アドレスAがポート2に登録されていることを確認し、他のポート(ポート1,3,4)にブロードキャストパケット713を中継する。するとスイッチングHUB702は、ポート4からブロードキャストパケット713を受信し、アドレステーブル711によって送信元アドレスAがポート4に登録されていることを確認し、他のポート(ポート1,2,3)にブロードキャストパケット713を中継する。するとスイッチングHUB703は、ポート1からブロードキャストパケット713を受信し、アドレステーブル712によって送信元アドレスAがポート1に登録されていることを確認し、他のポート(ポート2,3,4)にブロードキャストパケット713を中継する。
【0049】
ここで、スイッチングHUB702のポート1とスイッチングHUB703のポート4において、ループパケットを検出することになるが、以下、スイッチングHUB702におけるループパケットの検出処理ついて、図3のループ検出フローチャートを用いて詳細に説明する。
【0050】
スイッチングHUB702のポート1にブロードキャストパケット713を受信する(S501)と、ブロードキャストパケット713の送信元アドレスをアドレステーブル711にて検索する(S502)。アドレスAは登録されているのでヒットする(S503)が、対応付けられているポートがポート4となっているので(S505)、スイッチングHUB701はネットワーク上でループが発生していると判断する(S507)。
【0051】
なお、ここでループであると即座に判断できる理由は以下のとおりである。すなわち、もしもアドレスAの端末704が他のポートに接続し直されていても、新規接続された場合はT1時間パケット送信を拒否されており、エイジングの時間T2との関係にT1>T2の条件が成り立っているため、アドレステーブル702に登録されているアドレスが他のポートで受信した場合には、確実にループ接続されていると判断できる。
【0052】
ループが発生していると判断したスイッチングHUB702は、ブロードキャストパケット713を廃棄し(S508)、ユーザに通知を行う(S509)。
【0053】
スイッチングHUB703に関しても同様のアルゴリズムによって、ネットワークがループ接続されていることを検出し、ループパケットが無限に周回することを回避することができる。
【0054】
以上説明したように第2実施形態によれば、複数台のスイッチングHUB間でのパケット転送時においても、第1実施形態と同様に確実にループを検出することができる。
【0055】
なお、上述した第1及び第2実施形態では、端末とスイッチングHUBがループなし接続で通信を行っていた状態において、ループ接続を行った場合について説明したが、ループ接続を行っているスイッチングHUBに対して端末を接続した場合についても、一度学習を行った上で上記と同様の制御を行い、ループ検出を行うことが可能である。また、上記各実施形態ではブロードキャストパケットについて説明したが、マルチキャストパケットや宛先アドレスが不明な場合に送信されるフラッディングパケット等、無限に周回する可能性のあるパケットに関しても、同様にループを検出することができる。
【0056】
また、第2実施形態においては3台のスイッチングHUBを接続する場合を例として説明したが、複数台のスイッチングHUBにてループを形状する場合、あるいは複数のループ形状を持つネットワークに関しても、上記アルゴリズムによってループを検出することができる。
【0057】
【他の実施形態】
なお、本発明は、例えばシステム、装置、方法、プログラムもしくは記憶媒体等としての実施態様をとることが可能であり、具体的には、複数の機器(例えばホストコンピュータ、インタフェイス機器、リーダ、プリンタなど)から構成されるシステムに適用しても、一つの機器からなる装置(例えば、複写機、ファクシミリ装置など)に適用しても良い。
【0058】
また、本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ(またはCPUまたはMPU)が記憶媒体に格納されたプログラムコードを読み出し実行することによっても達成されることは言うまでもない。
【0059】
この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【0060】
プログラムコードを供給するための記憶媒体としては、例えば、フロッピー(登録商標)ディスク、ハードディスク、光ディスク、光磁気ディスク、CD−ROM、CD−R、磁気テープ、不揮発性のメモリカード、ROMなどを用いることが出来る。
【0061】
また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼動しているOS(オペレーティングシステム)などが実際の処理の一部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【0062】
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【0063】
【発明の効果】
以上説明したように本発明によれば、スパニングツリーを実装することなく、ネットワーク上のループ接続を確実に検出することができる。
【図面の簡単な説明】
【図1】本発明に係る一実施形態におけるスイッチングHUBの内部構成を示すブロック図である。
【図2】本実施形態におけるパケット受信処理を示すフローチャートである。
【図3】本実施形態におけるループ検出処理を示すフローチャートである。
【図4】本実施形態におけるスイッチングHUBの1対1の接続によるループとアドレステーブル例を示す図である。
【図5】第2実施形態におけるスイッチングHUBの複数台接続によるループとアドレステーブル例を示す図である。
【図6】スイッチングHUBとアドレステーブルの関係を示す図である。
【図7】スイッチングHUB間のループ接続の一例を示す図である。
【発明の属する技術分野】
本発明はパケットの無限ループを検出するネットワークシステムの制御方法に関する。
【0002】
【従来の技術】
従来、スイッチングHUBやブリッジは各ポート間を直接交換接続することによって、他のポートへトラフィックの影響を与えない。どのポート間を接続するかは、学習してあるアドレスで判定する。すなわち、各ポートに接続されたアドレスのテーブルを作成し、そのテーブルに従いポート間をスイッチング技術によって接続する。アドレステーブルに登録されていない送信元アドレスを持ったパケットを受信した場合は、受信したポート以外の全てのポートにパケットを送信する。また、複数のアドレスのテーブルをポートごとに作成することができるので、ポート先には端末やHUBを接続することができる
図6に、スイッチングHUBを2段に接続した場合のアドレステーブル例を示す。スイッチングHUBは、あるポートから受信したパケットの送信元アドレスをもとに、アドレステーブルに登録していく。例えばスイッチングHUBのポート1から送信元アドレスAのパケットを受信した場合、スイッチングHUB XのアドレステーブルにアドレスAとポート1を登録する。このように登録を繰り返すと、ポート4には相手先スイッチングHUB Yに接続されている端末のアドレスD,E,Fが登録されることになる。
【0003】
しかし、スイッチングHUB Yに接続されている例えば端末Fがネットワークから離脱した場合、スイッチングHUB Yにおいては端末Fの離脱が検出できるものの、スイッチングHUB Xのポート4に登録されているアドレスFは永久に保持されたままであり、端末Fの離脱は検出されない。
【0004】
このような不具合を回避するために従来のスイッチングHUBにおいては、アドレスが登録されてから一定時間が経過すると、そのアドレスをアドレステーブルから削除するという、所謂エイジング処理を行う。
【特許文献1】
特開平11−205367号公報
【0005】
【発明が解決しようとする課題】
しかしながら、スイッチングHUBやブリッジのパケット転送においては、図7のように装置間でループ形状を伴う接続をしてしまった場合に、以下のような問題が生じていた。すなわち、このような接続においてある端末からブロードキャストパケットが送信された場合、転送ループが形成されてしまう。転送ループではブロードキャストパケットがネットワーク上を無限に周回するため、新しいトラフィックが送信されるごとに増えつづけてトラフィックレートが上昇し、最終的にはネットワークが飽和状態に陥ってしまう。また、ネットワーク全体で解決することができない宛先アドレスのパケットが送信された場合も同様である。
【0006】
IEEE 802.1Dブリッジング標準では、このような転送ループの回避策として、スパニングツリーアルゴリズムが規定されている。スパニングツリーアルゴリズムによれば、スパニングツリー用のマルチキャストアドレスを使用して、各スイッチが送信するコンフィグレーションメッセージをもとに動作し、ループ接続時に単一のルートを選択してパケットを送信することができる。
【0007】
しかしながら、通常スパニングツリーのようなループ検出プロトコルは、動作制御が非常に複雑であり、これを実装する場合には、CPUやメモリ等の専有時間が増えて、資源を消費してしまうという問題点があった。また、この方法では、ループ検出用の制御パケットをルータ間で定期的に交換するため、通常のユーザデータを送るための実質的な回線が減少してしまうという問題点があった。更に、スパニングツリープロトコルが実装されているスイッチングHUBは、そうでないものと比較するとコスト高となってしまうという問題点もあった。
【0008】
そこで、スパニングツリープロトコルを使用せずに転送ループを検出する方法として、各ポートで受信される受信パケット内の送信元アドレスを監視し、所定時間内に同じ送信元アドレスを持ったパケットが複数ポートで受信された場合に、ループ接続を検出する方法がある(例えば、特許文献1参照)。
【0009】
しかしながら、この転送ループ検出方法では、多数のスイッチングHUBによって巨大なループが形成され、そのネットワーク上のトラフィックが非常に高い場合には、所定時間内に検出すべきパケットの到達が遅れるためループ検出が行えない。これを回避するために検出用の所定時間を長く設定した場合は、ユーザが短時間で端末を別ポートに接続することを繰り返した場合に、これをループ接続であると誤認識してしまうという問題があった。
【0010】
本発明は上述した問題を解決するためになされたものであり、スパニングツリーを実装することなく、ネットワーク上のループ接続を確実に検出するネットワークシステムの制御方法を提供することを目的とする。
【課題を解決するための手段】
上記目的を達成するため、本発明に係るネットワークシステムの制御方法は以下の工程を備える。
【0011】
すなわち、複数のポートを備え、ポート毎に受信したパケットの送信元アドレスを登録するアドレステーブルを保持する中継装置を、複数台接続してパケット中継を行うネットワークシステムの制御方法であって、各中継装置において、各ポートに新規にリンクがはられた場合、第1の時間が経過するまで該ポートで受信したパケットを拒否し、前記アドレステーブルに登録されている送信元アドレスを、登録から第2の時間が経過後に削除し、前記第1の時間は前記第2の時間よりも長いことを特徴とする。
【0012】
【発明の実施の形態】
本発明は、複数のポートを備え、ポート毎に受信したパケットの送信元アドレスを登録するアドレステーブルを保持する中継装置を、複数台接続してパケット中継を行うネットワークシステムの各中継装置において、各ポートに新規にリンクがはられた場合、第1の時間が経過するまで該ポートで受信したパケットを拒否し、アドレステーブルに登録されている送信元アドレスを、登録から第2の時間が経過後に削除し、第1の時間は第2の時間よりも長いことを特徴とするものである。各中継装置において、あるポートで受信したパケットの送信元アドレスがアドレステーブルに未登録であれば、これを登録し、他のポートに既に登録されていれば、該ネットワークにおいてループ接続が発生した旨が検出される。ループ接続の発生が検出されると、該パケットを廃棄し、さらに、その旨をユーザに通知する。
【0013】
以下、本発明に係る一実施形態について、図面を参照して詳細に説明する。
【0014】
<第1実施形態>
図1は、本実施形態をスイッチングHUBの各ポートに実装した構成を示すブロック図である。以下、複数のポートが搭載されているスイッチングHUBのポートNに関して説明する。
【0015】
ポートNの受信部301では、ポートNで受信されるパケットを物理層レベルで受信する。リンク監視部303は、ポートNにリンクがはられているか否かを常時監視し、リンクがはられた場合、すなわち新たな接続がなされた場合にはパケット拒否タイマを起動する信号を出力し、リンクが切れた場合にはパケット拒否タイマをクリアする信号を出力する。パケット拒否タイマ部304は、リンク監視部303からの起動信号をトリガにしてタイマを起動し、設定された時間(パケット拒否時間T1)が経過するとパケット処理部305にパケット受信許可信号を出力する。
【0016】
パケット処理部305では、パケットの受信処理及び送信処理を行う。パケット拒否タイマ部304からのパケット受信許可信号が入力されている場合は、受信部301より入力された受信パケットをパケット解析部306に出力する。一方、パケット受信許可信号が入力されていない場合は、ポートNに接続されている端末との通信が全二重であればPauseフレームを作成し、送信部302に出力するが、半二重であればコリジョン信号を送信する。この処理により、ポートNに接続されている機器に対して送信を停止させる。
【0017】
パケット解析部306では、入力されたパケットの宛先アドレスと送信元アドレスを解析する。解析された宛先アドレスはアドレステーブル307へ出力し、アドレステーブル307よりスイッチングすべきポート番号を取得する。同様に解析された送信元アドレスは、学習処理及びループ検出のためにアドレステーブル307に出力される。
【0018】
アドレステーブル307は、パケットのアドレスとスイッチングHUBのポート番号を対応付けて管理しており、スイッチングHUBごとに1つが搭載されている。アドレステーブル307は、パケット解析部306より受信した宛先アドレスをもとに、対応付けられているポート番号を検索してパケット解析部306に出力する。また、パケット解析部306より受信した送信元アドレスが既に登録されているか否かを検索し、登録されていなければ学習処理としてその送信元アドレスをポートNに割り当てる。このような学習処理が行われた場合、エイジングタイマ部308に起動信号を出力する。また、アドレステーブル307にて検索した送信元アドレスが別のポートに登録されていた場合、ループ検出部309にエラー信号を出力する。また、エイジングタイマ部308よりエイジング信号を受信すると、アドレステーブル307は登録されているアドレスを削除する。
【0019】
エイジングタイマ部308は、アドレステーブル307からの起動信号をトリガにタイマを起動し、設定された時間(エイジング時間T2)が経過すると、アドレステーブル307に登録されているアドレスに対してエイジング信号を送信する。ここで本実施形態においては、エイジング時間T2を上述したパケット拒否時間T1よりも短くなるように、すなわち、T2<T1となるように設定することを特徴とする。
【0020】
ループ検出部309は、アドレステーブル307よりエラー信号を受信するとループを検出したと断定し、廃棄パケット選択部310とユーザ通知部311にループ検出信号を送信する。
【0021】
廃棄パケット選択部310は、パケット解析部306から送られてくるパケットをスイッチング部312に中継するが、ループ検出部309よりループ検出信号を受信すると、パケット解析部306から送られてくるパケットをスイッチング部312に中継せず、これを廃棄する。
【0022】
ユーザ通知部311は、ループ検出部309よりループ検出信号を受信すると、ユーザにループ接続が行われている旨を通知する。この通知手段としては、ループ発生LEDの点灯やブザーの鳴動等が考えられる。スイッチング部312は、受信したパケットを正しいポートにスイッチし、送信側のパケット処理部305にパケットを中継し、送信すべきパケットを送信部302に出力する。
【0023】
本実施形態においては、スイッチングHUBにおけるポートに新規で機器が接続された際に、設定された時間中はパケットを拒否することを特徴とする。以下、図2のフローチャートを参照して、本実施形態におけるパケット受信処理について説明する。
【0024】
図2のステップS401において、スイッチングHUBは各ポートに関して、リンクがはられたか否かをリンク監視部303にて常時監視している。そしてステップS402において、新規でポートにリンクがはられていない場合には、ステップS401にてリンクの監視を続ける。一方、ステップS402でポートNに新規にリンクがはられた旨を確認した場合、ステップS403においてポートNの受信パケットを全て拒否し、ポートNに接続されている機器に対して、全二重通信であればPauseフレームを、半二重通信であればコリジョン信号を送信し、機器からの送信を中止させる。そして、ステップS404でパケット拒否タイマ部304に設定されているT1時間が経過するまで、ステップS403におけるポートNの受信パケット拒否を続ける。ステップS404においてT1時間が経過すると、ステップS405においてパケット受信許可を行い、通常の通信状態であるステップS406に移行する。
【0025】
以下、本実施形態においてネットワーク上でループ接続が行われているか否かを判定するループ検出処理について、図3のフローチャートを参照して説明する。
【0026】
まず、ポートNが、図2に示した通常の通信状態であるステップS406の状態にあるとする。この時、ステップS501でポートNよりパケットが入力されるとステップS502に進み、送信元アドレスをアドレステーブル307にて検索する。検索した結果、ステップS503において受信したパケットの送信元アドレスがアドレステーブル307に登録されていない、すなわちヒットしなかった場合、処理はステップS504に移行し、アドレステーブル307に対して送信元アドレスをポートNに対応付けて登録し(学習処理)、処理を終了する。
【0027】
一方、ステップS503において送信元アドレスがアドレステーブル307に登録されている、すなわちヒットした場合、ステップS505に進み、アドレステーブル307に登録されている送信元アドレスに対応付けられたポート番号、すなわち以前に学習していたポート番号が、今回と同一のポートNであるか否かを判定する。ポート番号が一致していればステップS506に進み、学習済みであると判断して処理を終了するが、不一致であればステップS507に進み、ループ接続がなされていることを検出する。ループが検出されると、ステップS508においてループパケットを廃棄し、ステップS509においてユーザ通知処理が行われる。
【0028】
以下、図4を参照して、1対1のスイッチングHUB間でループ接続が行われた場合を例として、本実施形態のループ検出処理について説明する。
【0029】
図4においては、4ポートのスイッチングHUB601のポート4と、スイッチングHUB602のポート1とが接続されている。スイッチングHUB601のポート1にはアドレスAの端末603が、ポート2にはアドレスBの端末604がそれぞれ接続されている。また、スイッチングHUB602のポート3にはアドレスCの端末605が、ポート4にはアドレスDの端末606が接続されている。各端末は接続後、図2に示すパケット拒否処理に従い、図1に示すパケット拒否タイマ部304に設定されたT1時間の間はパケット送信を拒否され、その後、通常の通信状態(S406)に移行する。
【0030】
スイッチングHUBは上記の状態から、学習を行っていく。例えば、スイッチングHUB601のポート1に接続されているアドレスAの端末603から、ネットワーク上にパケットを送信する場合について、図3のフローチャートを用いて説明する。
【0031】
アドレスAの端末603から、送信元アドレスAのパケットが送信される。上記パケットはスイッチングHUB601のポート1で受信される(S501)。スイッチングHUB601のポート1では、送信元アドレスAをアドレステーブルにて検索する(S502)。アドレスAの端末503は初めてのパケット送信であるため、スイッチングHUB601のアドレステーブルにアドレスAは登録されていない。そこでスイッチングHUB601は、アドレステーブルにアドレスAをポート1と登録する(S504)。
【0032】
再度、アドレスAの端末603よりパケットが送信された場合は、アドレステーブルにアドレスAが登録されており(S503)、さらにアドレスAはポート1に対応付けられている(S505)ため、学習済みと判断する(S506)。その後、スイッチングHUB601は、アドレスAに対してエイジングがかかるまで、送信元アドレスAのパケットがポート1から入力されても処理を必要としない。そして時間T2が経過してエイジングがかかった場合に、再び学習処理を行う。
【0033】
上述したように各端末がネットワーク上にパケットを送信することで学習処理を行う。各端末が通信を繰り返し、スイッチングHUBが十分に学習を行った場合、各スイッチングHUB601,602のアドレステーブルはそれぞれ、図4に示すアドレステーブル608,609のようになる。
【0034】
このような状態において、図4に点線で示す様に、スイッチングHUB601のポート3とスイッチングHUB602のポート2を接続すると、スイッチングHUB601とスイッチングHUB602の間がループ形状となる。以下、ネットワークのループ形状をスイッチングHUB602が検出する方法について、詳細に説明する。
【0035】
ここで、アドレスAの端末603からブロードキャストパケット607が送信されたとする。ブロードキャストパケット607をポート1に受信したスイッチングHUB601は、アドレステーブル608によって、送信元アドレスAがポート1に登録されていることを確認し、他のポート(ポート2,3,4)にブロードキャストパケット607を中継する。スイッチングHUB601のポート3とポート4はスイッチングHUB602に接続されているため、ブロードキャストパケット607はスイッチングHUB602のポート1とポート2でほぼ同時に受信される。
【0036】
スイッチングHUB602のアドレステーブル609ではアドレスAはポート1に登録されているため、受信するのがポート2より早くても遅くても、ポート1にブロードキャストパケット307を受信した場合は、スイッチングHUB602の他のポートにブロードキャストパケット307を送信する。ここで、ポート2にブロードキャストパケット307を受信した場合が問題となる。この問題について、図3のループ検出フローチャートを用いて説明する。
【0037】
スイッチングHUB602のポート2にブロードキャストパケット307を受信する(S501)と、ブロードキャストパケット607の送信元アドレスをアドレステーブル609にて検索する(S502)。ここでアドレスAは登録されているのでヒットする(S503)が、対応付けられているポートがポート1となっており、送信元アドレスAを受信したポートは2であるため(S505)、スイッチングHUB602はネットワーク上でループが発生していると判断する(S507)。
【0038】
なお、ここでループであると即座に判断できる理由は以下のとおりである。すなわち、もしもアドレスAの端末603が他のポートに接続し直されていても、新規接続された場合はT1時間パケット送信を拒否されており、エイジングの時間T2との関係にT1>T2の条件が成り立っているため、アドレステーブル609に登録されているアドレスが他のポートで受信された場合には、確実にループ接続されていると判断できる。
【0039】
ループが発生していると判断したスイッチングHUB602は、ブロードキャストパケット607を廃棄し(S508)、ユーザに通知を行う(S509)。
【0040】
スイッチングHUB601に関しても同様のアルゴリズムによって、ネットワークがループ接続されていることを検出し、ループパケットが無限に周回することを回避することができる。
【0041】
以上説明したように本実施形態によれば、スイッチングHUB内で複雑な処理を行い、スイッチングHUB間で専用メッセージをやり取りしなくてはならないスパニングツリープロトコルを実装することなく、1対1のスイッチングHUB間でのパケット転送において、確実にループを検出し、パケットを廃棄することができる。
【0042】
<第2実施形態>
以下、本発明に係る第2実施形態について説明する。
【0043】
上述した第1実施形態では、1対1のスイッチングHUB間におけるループ接続を検出する例について説明したが、第2実施形態においては、複数のスイッチングHUB間におけるループ接続を検出する例を示す。
【0044】
第2実施形態における複数のスイッチングHUB間でのループ検出処理を、図5を参照して説明する。
【0045】
図5においては、4ポートのスイッチングHUB701のポート2とスイッチングHUB702のポート4、スイッチングHUB701のポート4とスイッチングHUB703のポート1とが接続されている。スイッチングHUB701のポート2にはアドレスAの端末704が、ポート3にはアドレスBの端末705が接続されている。スイッチングHUB702のポート2にはアドレスCの端末706が、ポート3にはアドレスDの端末707が接続されている。スイッチングHUB703のポート2にはアドレスEの端末708が、ポート3にはアドレスFの端末709が接続されている。各端末は接続後、図2に示すパケット拒否処理に従い、図1に示すパケット拒否タイマ部304に設定されたT1時間の間はパケット送信を拒否され、その後、通常の通信状態(S406)に移行する。
【0046】
この状態から各端末が通信を繰り返し、各スイッチングHUBが十分に学習を行った場合、スイッチングHUB701,702,703のアドレステーブルはそれぞれ、図5に示すアドレステーブル710,711,712のようになる。
【0047】
このような状態において、図5に点線で示す様に、スイッチングHUB702のポート1とスイッチングHUB703のポート4を接続すると、スイッチングHUB701とスイッチングHUB702、スイッチングHUB703の間がループ形状となる。以下、ネットワークのループ形状を各スイッチングHUBが検出する方法について、詳細に説明する。
【0048】
ここで、アドレスAの端末704からブロードキャストパケット713が送信されたとする。ブロードキャストパケット713をポート2に受信したスイッチングHUB701は、アドレステーブル710によって送信元アドレスAがポート2に登録されていることを確認し、他のポート(ポート1,3,4)にブロードキャストパケット713を中継する。するとスイッチングHUB702は、ポート4からブロードキャストパケット713を受信し、アドレステーブル711によって送信元アドレスAがポート4に登録されていることを確認し、他のポート(ポート1,2,3)にブロードキャストパケット713を中継する。するとスイッチングHUB703は、ポート1からブロードキャストパケット713を受信し、アドレステーブル712によって送信元アドレスAがポート1に登録されていることを確認し、他のポート(ポート2,3,4)にブロードキャストパケット713を中継する。
【0049】
ここで、スイッチングHUB702のポート1とスイッチングHUB703のポート4において、ループパケットを検出することになるが、以下、スイッチングHUB702におけるループパケットの検出処理ついて、図3のループ検出フローチャートを用いて詳細に説明する。
【0050】
スイッチングHUB702のポート1にブロードキャストパケット713を受信する(S501)と、ブロードキャストパケット713の送信元アドレスをアドレステーブル711にて検索する(S502)。アドレスAは登録されているのでヒットする(S503)が、対応付けられているポートがポート4となっているので(S505)、スイッチングHUB701はネットワーク上でループが発生していると判断する(S507)。
【0051】
なお、ここでループであると即座に判断できる理由は以下のとおりである。すなわち、もしもアドレスAの端末704が他のポートに接続し直されていても、新規接続された場合はT1時間パケット送信を拒否されており、エイジングの時間T2との関係にT1>T2の条件が成り立っているため、アドレステーブル702に登録されているアドレスが他のポートで受信した場合には、確実にループ接続されていると判断できる。
【0052】
ループが発生していると判断したスイッチングHUB702は、ブロードキャストパケット713を廃棄し(S508)、ユーザに通知を行う(S509)。
【0053】
スイッチングHUB703に関しても同様のアルゴリズムによって、ネットワークがループ接続されていることを検出し、ループパケットが無限に周回することを回避することができる。
【0054】
以上説明したように第2実施形態によれば、複数台のスイッチングHUB間でのパケット転送時においても、第1実施形態と同様に確実にループを検出することができる。
【0055】
なお、上述した第1及び第2実施形態では、端末とスイッチングHUBがループなし接続で通信を行っていた状態において、ループ接続を行った場合について説明したが、ループ接続を行っているスイッチングHUBに対して端末を接続した場合についても、一度学習を行った上で上記と同様の制御を行い、ループ検出を行うことが可能である。また、上記各実施形態ではブロードキャストパケットについて説明したが、マルチキャストパケットや宛先アドレスが不明な場合に送信されるフラッディングパケット等、無限に周回する可能性のあるパケットに関しても、同様にループを検出することができる。
【0056】
また、第2実施形態においては3台のスイッチングHUBを接続する場合を例として説明したが、複数台のスイッチングHUBにてループを形状する場合、あるいは複数のループ形状を持つネットワークに関しても、上記アルゴリズムによってループを検出することができる。
【0057】
【他の実施形態】
なお、本発明は、例えばシステム、装置、方法、プログラムもしくは記憶媒体等としての実施態様をとることが可能であり、具体的には、複数の機器(例えばホストコンピュータ、インタフェイス機器、リーダ、プリンタなど)から構成されるシステムに適用しても、一つの機器からなる装置(例えば、複写機、ファクシミリ装置など)に適用しても良い。
【0058】
また、本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ(またはCPUまたはMPU)が記憶媒体に格納されたプログラムコードを読み出し実行することによっても達成されることは言うまでもない。
【0059】
この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【0060】
プログラムコードを供給するための記憶媒体としては、例えば、フロッピー(登録商標)ディスク、ハードディスク、光ディスク、光磁気ディスク、CD−ROM、CD−R、磁気テープ、不揮発性のメモリカード、ROMなどを用いることが出来る。
【0061】
また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼動しているOS(オペレーティングシステム)などが実際の処理の一部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【0062】
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【0063】
【発明の効果】
以上説明したように本発明によれば、スパニングツリーを実装することなく、ネットワーク上のループ接続を確実に検出することができる。
【図面の簡単な説明】
【図1】本発明に係る一実施形態におけるスイッチングHUBの内部構成を示すブロック図である。
【図2】本実施形態におけるパケット受信処理を示すフローチャートである。
【図3】本実施形態におけるループ検出処理を示すフローチャートである。
【図4】本実施形態におけるスイッチングHUBの1対1の接続によるループとアドレステーブル例を示す図である。
【図5】第2実施形態におけるスイッチングHUBの複数台接続によるループとアドレステーブル例を示す図である。
【図6】スイッチングHUBとアドレステーブルの関係を示す図である。
【図7】スイッチングHUB間のループ接続の一例を示す図である。
Claims (1)
- 複数のポートを備え、ポート毎に受信したパケットの送信元アドレスを登録するアドレステーブルを保持する中継装置を、複数台接続してパケット中継を行うネットワークシステムの制御方法であって、各中継装置において、
各ポートに新規にリンクがはられた場合、第1の時間が経過するまで該ポートで受信したパケットを拒否し、
前記アドレステーブルに登録されている送信元アドレスを、登録から第2の時間が経過後に削除し、
前記第1の時間は前記第2の時間よりも長いことを特徴とするネットワークシステムの制御方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003111874A JP2004320477A (ja) | 2003-04-16 | 2003-04-16 | ネットワークシステムの制御方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003111874A JP2004320477A (ja) | 2003-04-16 | 2003-04-16 | ネットワークシステムの制御方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2004320477A true JP2004320477A (ja) | 2004-11-11 |
JP2004320477A5 JP2004320477A5 (ja) | 2006-06-08 |
Family
ID=33472313
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003111874A Withdrawn JP2004320477A (ja) | 2003-04-16 | 2003-04-16 | ネットワークシステムの制御方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2004320477A (ja) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007174182A (ja) * | 2005-12-21 | 2007-07-05 | Fujitsu Ltd | ネットワーク障害箇所検出装置及びネットワーク障害箇所検出方法 |
JP2011061870A (ja) * | 2008-03-07 | 2011-03-24 | Buffalo Inc | ネットワーク集線装置、ネットワークシステム、ネットワーク集線装置の設置位置特定方法 |
JP2011151631A (ja) * | 2010-01-21 | 2011-08-04 | Panasonic Electric Works Networks Co Ltd | ネットワーク通信装置 |
JP2017005367A (ja) * | 2015-06-05 | 2017-01-05 | 株式会社デンソー | 中継装置 |
JP2019527866A (ja) * | 2016-08-05 | 2019-10-03 | 天地融科技股▲ふん▼有限公司 | 安全通信方法及びシステム |
JP2019201340A (ja) * | 2018-05-17 | 2019-11-21 | Necプラットフォームズ株式会社 | Macアドレステーブル管理回路、イーサネットパケットスイッチング装置、テーブル管理方法、プログラム |
-
2003
- 2003-04-16 JP JP2003111874A patent/JP2004320477A/ja not_active Withdrawn
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007174182A (ja) * | 2005-12-21 | 2007-07-05 | Fujitsu Ltd | ネットワーク障害箇所検出装置及びネットワーク障害箇所検出方法 |
JP4619940B2 (ja) * | 2005-12-21 | 2011-01-26 | 富士通株式会社 | ネットワーク障害箇所検出装置及びネットワーク障害箇所検出方法 |
JP2011061870A (ja) * | 2008-03-07 | 2011-03-24 | Buffalo Inc | ネットワーク集線装置、ネットワークシステム、ネットワーク集線装置の設置位置特定方法 |
JP2011151631A (ja) * | 2010-01-21 | 2011-08-04 | Panasonic Electric Works Networks Co Ltd | ネットワーク通信装置 |
JP2017005367A (ja) * | 2015-06-05 | 2017-01-05 | 株式会社デンソー | 中継装置 |
JP2019527866A (ja) * | 2016-08-05 | 2019-10-03 | 天地融科技股▲ふん▼有限公司 | 安全通信方法及びシステム |
JP2019201340A (ja) * | 2018-05-17 | 2019-11-21 | Necプラットフォームズ株式会社 | Macアドレステーブル管理回路、イーサネットパケットスイッチング装置、テーブル管理方法、プログラム |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3123467B2 (ja) | ブリッジ | |
US8582467B2 (en) | Method for preventing control packet looping and bridge apparatus using the method | |
US20050044211A1 (en) | Self-healing tree network | |
EP1180883A2 (en) | Distributed source learning for data communication switch | |
US9137137B2 (en) | Method and network device for loop detection | |
JP2009194752A (ja) | フレーム伝送装置およびループ判定方法 | |
US20150244606A1 (en) | Method for loopback detection and network device utilizing the same | |
US9497077B2 (en) | Apparatus for performing loop-free transmission in a communication network | |
US20090006650A1 (en) | Communication device, communication method, communication interface, and program product | |
US8611207B2 (en) | Data transmitter and data transmission method | |
JPH01202950A (ja) | トークンリング伝送方式 | |
JP2004320477A (ja) | ネットワークシステムの制御方法 | |
EP2525527B1 (en) | Network relay device and network relay method | |
JP2005130284A (ja) | パケット受信方法および装置 | |
WO2017219868A1 (zh) | Arp条目的处理方法及装置 | |
JPWO2006075402A1 (ja) | オープンループネットワークノード装置及びオープンループネットワーク制御方法 | |
US20220052920A1 (en) | Network switch and network switch system thereof | |
JP2007142751A (ja) | ブリッジ及びそれを用いた経路変更方法 | |
WO2022254710A1 (ja) | 通信装置、通信システム、通信方法及び通信プログラム | |
JPS61228750A (ja) | ル−プネツトワ−クの管理方式 | |
JP7279388B2 (ja) | ルータシステムおよびパケット送信判定方法 | |
JP4751817B2 (ja) | パケット転送装置およびネットワークシステム | |
WO2011047630A1 (zh) | 数据流传输方法及装置 | |
JPH11191782A (ja) | ブリッジ装置 | |
JP2010220174A (ja) | 中継装置、通信機器識別情報の学習方法、プログラム、及びネットワークシステム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060413 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20060413 |
|
A761 | Written withdrawal of application |
Free format text: JAPANESE INTERMEDIATE CODE: A761 Effective date: 20071207 |