JP4351505B2 - パケット転送方法、パケット転送システム及びパケット転送装置 - Google Patents

パケット転送方法、パケット転送システム及びパケット転送装置 Download PDF

Info

Publication number
JP4351505B2
JP4351505B2 JP2003318516A JP2003318516A JP4351505B2 JP 4351505 B2 JP4351505 B2 JP 4351505B2 JP 2003318516 A JP2003318516 A JP 2003318516A JP 2003318516 A JP2003318516 A JP 2003318516A JP 4351505 B2 JP4351505 B2 JP 4351505B2
Authority
JP
Japan
Prior art keywords
packet
learning
card
received
route
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.)
Expired - Fee Related
Application number
JP2003318516A
Other languages
English (en)
Other versions
JP2005086668A (ja
Inventor
徹 石森
敬 門澤
義正 居附
英典 仲石
昌代 寺田
雅美 横山
敏則 小柳
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2003318516A priority Critical patent/JP4351505B2/ja
Publication of JP2005086668A publication Critical patent/JP2005086668A/ja
Application granted granted Critical
Publication of JP4351505B2 publication Critical patent/JP4351505B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Description

本発明はパケット転送方法、パケット転送システム及びパケット転送装置に係り、特に受信パケットの送信元アドレスをその受信経路と対応させて学習し、当該送信元アドレスを宛先アドレスとしてパケットが受信された場合には前記学習結果に基づいて適用する転送経路を決定するシステムを適用したパケット転送方法、パケット転送システム及びパケット転送装置に関する。
ネットワークを介したパケット転送方法として、受信IPパケットの送信元のMACアドレスをその受信経路と共に学習しておき、同じMACアドレスを宛先アドレスとしたIPパケットが受信された場合に該当する学習結果を利用してその送信経路を確定する方法がある。この場合、各IPパケットを中継するノードにおいて未学習のMACアドレスを宛先アドレスとして持つIPパケット転送の際にはその送信経路が特定出来ない。このため、そのような場合には全ノードに対するのブロードキャスト送信(即ち「フラッディング」)を行う。そしてその際、そのIPパケットが持つ送信元のMACアドレス(SA)と、それを受信したポートと、を各ノードが持つバッファに格納することで経路学習を実施する。
図1,図2にこの様子を示す。尚、図1等に示す以下に説明する例においては、各ノード50−0,50−1,50−2は、夫々一枚の通信カード#0,#1,#2を有する構成を想定している。ノード50−0が、カード#0のポート#0にて端末A10からのIPパケットを受信した場合(ステップS1、P1)、そのカードが有するMACテーブルにおいて、その送信元MACアドレス(SA)である“A”を、その際の受信カード#0、ポート#0の情報(経路情報)と関連づけて所定のバッファに格納することで学習する(ステップS2)。尚その場合、既に同じMACアドレスに対する学習結果がMACテーブル内に存在する際には、その情報を上書きするものとする。
次に、当該受信IPパケットが有する宛先アドレス(DA,この場合、MACアドレス“B”)につき、自機のMACテーブルに学習結果が有るかどうか検索する(ステップS3)。そして、検索結果がミスヒットの場合(No)、全てのノード(この例の場合、ノード50−1,ノード50−2)に対して、当該IPパケットをブロードキャスト(フラッディング)する(ステップS5、P2)。他方、ステップS3の検索の結果、該当する宛先MACアドレスに関する学習結果がバッファに存在する場合(Yes)、同学習結果に含まれる転送経路、即ちカード番号とポート番号によって当該IPパケットを送信する(ステップS4)。この場合、フラッディングの必要はなくなる。
尚、同様の学習動作は、ノード50−0から発せられた当該IPパケットが該当する宛先の端末B20に至るまでに通過するノード50−2のカード#2に届いた際にも行なわれる。その結果、図1に示す如く、当該カード#2のバッファ(MACテーブル)には、送信元端末10のMACアドレス“A”に関連づけて、その際の送信元経路情報、即ちノード50−0のカード#0,ポート#0の情報が学習結果として格納される。
このように、一旦IPパケットを受信した場合に、その送信元MACアドレス(SA)と受信経路情報(カード番号、ポート番号)とを互いに関連づけて格納しておく(即ち学習)ことで、次回同じMACアドレスを宛先(DA)としたIPパケットが受信された際には、その学習結果を使用することで転送経路を確定可能となる。その結果、受信パケットの宛先MACアドレス(DA)に関する学習結果がバッファに存在する限り、その情報を利用して該当パケットに適用すべき転送経路を一意に確定可能なためにフラッディングの必要が無く、もって接続されたLANのトラフィックを最小限に抑えることが可能となる。
即ち、図3において、端末B20からのIPパケットがノード50−2のカード#2、ポート#1で受信された場合(ステップS1、P4)、既に上記の如く前回(図1参照)端末A10からのIPパケットを中継した際(ステップP2、P3)の学習結果として、端末AのMACアドレスに関連づけて受信経路情報(カード#0,ポート#0)が格納されているため、この学習結果により当該IPパケットの宛先アドレス(DA)の“A”についてのヒットが得られる(ステップS3のYes)。この場合、当該IPパケットに対し、同ヒット結果に基づいて該当経路、即ちカード#0,ポート#0が適用され、ノード50−2からノード50−0のカード#0に転送される(ステップP5)。又その場合、ノード50−0のカード#0は、同じく図1のステップP1、P2の中継の際の該当宛先アドレスであるMACアドレス“A”に関する学習結果を有するため、これにしたがってポート#0が一意に特定でき、フラッディング無しに端末A10に対してIPパケットを転送出来る(ステップP6)。
尚、上述の図1、図3と共に説明した一連のパケット転送動作につき、更に時間経過に沿って図4で示す。図4中に示すステップ番号としてのP1乃至P6は、夫々図1,図3中のP1乃至P6に対応する。
又、このようなシステムでは、、限られたバッファの記憶容量の有効利用の観点から、一旦学習後、一定期間同じアドレスに対するDA検索ヒットが無かった場合、当該MACアドレスに関する学習結果が削除される。この削除に至る動作を「エージング」と称する。具体的には、図5に示す如く、各ノードのカードのバッファでは、学習したMACアドレスに対応する「ヒットビット」を持ち、学習時にはヒットビット=“1”とする。そして一度目のエージング処理でそのヒットビットをクリアし(即ち”0”とし、ステップS11,S12)、この場合には未だ学習結果の削除は行なわない。そして次のエージング処理時にヒットビットが”0”のままだった場合(ステップS14,S15,S11のNo)、該当するMACアドレスはバッファから削除される(ステップS13)。他方、その前に上書き学習されたとき、或いはDA検索(即ち、上記図2のステップS3の宛先検索動作)にてヒットの対象となった場合、ヒットビットを再び”1”にセットする(その結果、ステップS11のYes、S12)。このような構成とすることで、現在利用中(即ち、通信実行中)のアドレスがバッファから削除されてしまわないようにする。
このエージング処理について更に図6乃至8を共に説明する。図7のステップP1乃至P6は上記図4のステップP1乃至P6と同一の過程である。そしてIPパケットを転送する毎に、ステップP1,P2ではカード#0でMACアドレス“A”について学習すると共に、そのヒットビットを”1”にする。同様にステップP2,P3においてはカード#1,カード#2にてMACアドレス“A”について学習する。更に同様に、ステップP4,P5,ステップP5,P6においては、カード#2,カード#0にて、MACアドレス“B”について学習する。
その後図8の最上段に示す如く、一回目のエージング処理により各カード#0,#1,#2において、MACアドレス“A”,“B”につき、夫々ヒットビットがクリアされる(ステップS12)。そして、2回目のエージング処理前に、同じく端末B20宛の次のIPパケットが端末A10から発せられたとする(ステップP7)。これを受けたカード#0では、送信元MACアドレス“A”を上書き学習し、同時に宛先検索にて、宛先MACアドレス“B”が検索対象となる。このため、上記の如く一旦”0”にクリアされたMACアドレス“A”,“B”の夫々についてヒットビットが“1”に戻されることとなる。
そして、当該IPパケットは、宛先検索においてヒットしたMACアドレス“B”についての学習結果にしたがってカード#2に転送される(ステップP8)。そしてカード#2においても上記同様の動作にて、上記の如く一旦”0”にクリアされたMACアドレス“A”,“B”の夫々についてヒットビットが“1”に戻される。そして、その後端末A,B10,20のいずれに関するIPパケットも受信されずに次のエージング処理タイミングが到来したとする。その場合、図8の最下段に示す如く、カード#0,カード#2の各々においては上記の如く、ステップP7,P8にてMACアドレス“A”,“B”の各々についてのヒットビットが“1”に戻されているため、それらが再び”0”にクリアされるが、該当する学習結果は、この時点では未だ消去されない(ステップS12)。他方、カード#1については、その間該当するIPパケットの通過が無く、MACアドレス“A”,“B”についてのヒットビットは“0”のままであるため、この時点で該当学習結果は削除される(ステップS13)。
次に、リンクアグリゲーション機能について説明する。このリンクアグリゲーション機能とは、複数のポートを1つの仮想高速ポートとみなして利用する機能である。この機能により、実質的に帯域向上の効果を得ることが出来る。この場合の仮想ポートはトランクと称され、このトランクを利用する場合(トランキングと呼ばれる)、上記の如くアドレス未学習時のフラッディングを行う場合、所定の演算によって当該トランクが有する多数のポートの中から一つの代表ポートが選択され、この代表ポートにて実際のパケット送信が行われる。
そしてトランクを介してIPパケットを受信したノードでは、当該パケットの送信元アドレスについて経路学習を実施する際、受信時のポート番号を学習するの代わりに、それを含むトランクの情報を学習結果として格納する。その後当該トランクを通過する宛先を有するIPパケット受信の際には、当該通信カードのハードウェア毎に独立した所定の演算方法によってトランクを構成する経路中から一つの経路を決定し、該当パケットに対してこの決定経路を適用する。このような構成とすることにより、同じパケットに対して同一トランク内の異なる経路を適用してしまうことを防止している。
図9乃至図11と共にリンクアグリゲーション機能適用の様子について説明する。この例では、端末A10,端末B20との間には、ノード群60,70とが存在し、ノード群60には通信カード#0,#1,#2を夫々有するノードが設けられ、ノード群70には通信カード#3,#4,#5を夫々有するノードが設けられている。図9、図10において、端末10から受信された端末20宛のパケットはノード60のカード#0で受信され、カード#0は端末20についての学習結果を有さないため、フラッディングを行なう(ステップP11)。フラッディングされたパケットを受信したカード#1,#2は共通するトランクを有し、この中からハードウェア独立の演算方法にて一つの代表ポートが選択され、この代表ポートが適用されて当該パケットが更に送信される(ステップP12)。
この代表ポートを有する経路はノード70のカード#3に通じており、このカード#3でも宛先である端末20に関する学習結果を有していない。そのため、カード#3でも当該パケットをフラッディングする(ステップP13)。このようにして当該パケットはカード#5を通じて宛先である端末20に到達する。尚、図9,図10に示す端末10から端末20へ向かうパケット転送の間、各ノード群60,70の各通信カード#0乃至#5の各々では、図1乃至4と共に説明した如く、その送信元アドレスと関連づけて自機に至る経路に関する情報の学習をする。
次に図11、図12に示す如く、今度は端末20から端末10に対してパケットが発信されたとする。これを受けたノード群70のカード#5では、図9,図10と共に説明した転送動作時に宛先の端末10へ至る経路が学習されており、その学習の結果端末10に至る経路はトランクを有することを認識し、そのトランクが有する複数経路の内から、自機のハードウェア独自の演算方法により、適用すべき経路を選択する。この場合カード#4を含む経路を選択するものとする。尚、ここで図10と共に説明したパケット転送動作においてはカード#4ではなく、カード#3を通る経路が適用されている。しかしながら前述の如くトランキング適用の際には個別の経路ではなくトランク全体の情報が学習され、更に同一トランクに含まれる経路の選択は送信元の通信カード独自の演算方法によって決定される。このため、転送方向が異なる場合、前回適用の経路を構成するカード#3ではなく同一トランク内の他のカード#4が選択される場合がある。
以降、当該パケットはカード#3を通過し、カード#3からノード群60のカード#2に到達し(ステップP14,P15)、更にノード60群内のカード#0を経由して端末10に到達する。
特開2002−247089号公報 特開2002−252625号公報
このように、端末10,端末20間のパケット転送の際、トランク内の経路を選択するハードウェア(通信カード)が異なるため同一トランク内の異なる経路が選択される場合がある。この場合、夫々の経路を構成する通信カードでは一方向の転送にのみ携わることとなる。したがってこれらカードではその学習結果が活かされず、当該パケット通信の間、常にフラッディングを行なうこととなる。
この様子について図12乃至14と共に説明する。図13は図10,図11に示すステップP11乃至P16以降の動作を示す。カード#0にて端末10から再度端末20宛のパケットを受信すると、前回同様、同一トランク内のカード#1の経路を選択して適用する(ステップP17)。これを受信したカード#1では、当該トランクに関する情報からカード#3に対してパケットを転送する(ステップP18)。これを受けたカード#3では、パケットの宛先である端末20に対する学習結果を検索する。しかしながら前記の如く端末20から端末10へのパケットはカード#3を経由せずにカード#4を経由している(ステップS15)。このためカード#3には端末20についての学習結果が存在しない。このため、カード#3は再び当該パケットをフラッディングする(ステップP19)。
更に、その後、図14において、カード#5にて端末20から再度端末10宛のパケットを受信すると、前回同様、同一トランク内のカード#4の経路を選択して適用する(ステップP20)。これを受信したカード#4では、当該トランクに関する情報からカード#2に対してパケットを転送する(ステップP21)。これを受けたカード#2では、パケットの宛先である端末10に対する学習結果を検索する。しかしながら前記の如く端末10から端末20へのパケットはカード#2を経由せずにカード#1を経由している(ステップS17)。このためカード#2には端末10についての学習結果が存在しない。このため、カード#2は再び当該パケットをフラッディングする(ステップP22)。
又、図14の最上段におけるカード#2においては、上記の如く端末10から端末20への一方向の転送のみ発生するため、両方向の転送の場合に比して転送周期が長くなり、その間に該当する学習結果がエージングにて削除される可能性が高まることにもなる。
このようにして一連の通信の間常にフラッディングし続けるノードが発生し、回線トラフィックが増大してしまう事態発生の可能性が高まる。
本発明は上記問題点に鑑み、リンクアグリゲーションによるトランキング適用の際にも経路学習が効果的に実施され、フラッディングの発生を最小限に抑えることが可能なパケット転送システムを提供することを目的とする。
本発明によれば、各パケット転送装置は所定条件において所定のタイミングで学習パケットを発生する構成とした。即ち、トランキング等により行き方向と帰り方向とで異なる経路が選択されるような場合でありそのため或る装置においては片側方向の転送のみを行なうこととなる場合であっても、所定のタイミングで学習パケットを発生することにより、例えばこのように一方向のみの転送を行なうこととなる装置に対しても、当該学習パケットにより、強制的に他方向のパケット受信をも行なわせるようにする。これにより、各経路は適宜双方向のパケット受信を行なうこととなり、双方向の経路学習が確実になされることとなる。その結果フラッディングを繰り返して回線トラフィックの増大を招くことを防止可能である。
但し、この学習パケットは、単に効果的に経路学習がなされる目的のものであるため、徒に頻繁に発生すれば、逆に回線トラフィックの増大を招くこととなる。このような弊害を防止するためには、学習パケット発生の条件、即ち発生頻度、発生契機等を妥当なものに決定する必要がある。
更に又、既に一連の通信が終了したのにもかかわらず、学習結果が何時まででも消去されずにバッファに残されるとしたら、限られたバッファの記憶容量の有効利用が図れなくなる。したがって、適切に通信の終了を判定し、その場合には速やかに該当する学習結果が削除されるよう、エージング処理の活用方法を工夫する必要がある。
即ち、学習パケットの発生条件として、受信パケットの宛先に至る経路がトランクを含む場合であって、且つ最初の学習時ではなく、学習結果が宛先検索のヒット対象となったときに初めて学習パケットを発生することが望ましい。即ち、学習した送信元を宛先としたパケットを受信した場合に学習パケットを発生するよう構成することが望ましい。尚その際、学習パケットは当該トランクを構成する全ての転送装置に対して送信することが望ましい。更に、それ以後、再び学習結果が宛先検索のヒット対象となったときにも、その都度学習パケットを発生することが望ましい。
但し、その間も、エージング処理は定期的に実施されることが望ましい。即ち、最後の学習時、即ち同じ送信元端末からの最後のパケットの受信及び、同じ宛先端末に対する最後のパケットの受信の何れかから所定時間経過後はバッファから削除することが望ましい。したがってそれ以降に同じ送信元端末から再びパケットを受信した場合には上記最初の学習として取り扱われる。
本発明によれば、往復の通信経路が異なる場合でも経路学習の結果を活かすことが出来るため、効果的にフラッディングの発生を抑制可能となり、回線のトラフィックを低減可能である。
以下図面と共に本発明の実施の形態について説明する。
図15乃至図20は本発明の実施の形態について説明するためのものであり、その基本的なシステム構成は、図9乃至図14と共に説明したシステム構成例を想定したものである。尚、システムを構成する各ノードは、例えばL2SWとされる。
図15において、受信パケットの宛先への経路がトランクを含み、且つ当該ノードにて、該当する宛先アドレス(DA)と同一のアドレスからのパケットを受信済みでその際の送信元アドレス学習結果を有する場合、即ち、宛先検索(図2のステップS3)にてヒット対象を有する場合、該当トランクを有する全てのノードに対して学習パケットを送信する。即ち、図15において、一旦端末10から端末20に対してパケットが転送され、その転送動作によって通過された各ノード、例えばカード#5において、その後端末20から端末10に対する返信のパケットが受信された場合、カード#5では該当するトランクを有する全てのノード、即ちカード#3,#4に対して学習パケットを送信する。これによってこれら全てのノードにて該当するMACアドレスについての経路が学習される。即ち、この場合、カード#3,#4の各々において端末20のMACアドレス“B”につき、カード#5を有する経路が学習される。
そして、説明の便宜上、端末20が受信する方向ではトランクの代表ポートとしてカード#1,#3の経路が選択され、端末10への送信の方向ではこれと異なり、同じトランクの代表ポートとしてカード#4,#2の経路が選択される場合を想定する。この場合、上記学習パケットの生成が無かった場合、図12乃至図14と共に説明した如く、繰り返しフラッディングが発生することとなる。即ち再度端末20に対する送信方向のパケットがカード#3に到来した場合、カード#3は端末20からの受信方向のパケットを受信していないため、該当学習結果を有さず、再びフラッディングすることとなる。しかしながら本発明の実施の形態によれば上記の如く学習パケットがカード#5からカード#3,#4に発信されているため、カード#3,#4は双方とも端末20のMACアドレス“B”について学習済みである。そのため、再度端末20への送信方向のパケットがカード#3に到来した場合でも、カード#3は上記学習パケットによる学習結果にしたがって端末20への経路を特定出来る。
図16は、本実施の形態における各カードの動作タイムチャートを示す。図中、(a)はエージング処理を行なうためのクロックパルスである。尚、当該クロックパルスの内、破線で囲われたパルスが実際のエージング処理を起動するパルスである。即ち、クロックパルス発生の4回に一回エージング処理が起動される。(b)はカードLAカウンタのカウント値を示す。当該カウンタは上記クロックパルス(a)毎に図示の如く繰り返し0乃至7の値を順次採るように更新される。
図16,(c)はコンテンツカウンタのカウント値を示す。コンテンツカウンタは、学習結果毎に設けられる。又、縦方向の破線は受信パケットの受信タイミングを示す。図示の如くある送信元アドレス(SA)についてのパケットが受信された際に新規学習がなされ、その結果、当該コンテンツカウンタの値が“0”にされる。そして次に同じMACアドレスに対するパケットが受信された場合、その受信タイミングのカードLAカウンタの値、この場合“4”を取り込む。そして、この場合、上記学習パケットを生成(図中、星印で示す)し、該当するトランクの全てのノードに対して送信する。
図16,(d)は、学習パケット送信済み状態フラグの状態を示す。当該フラグは各学習結果毎に設けられており、該当するMACアドレスについて学習パケットが生成された際に値“1”が立てられる。そして、上記学習パケット生成直後に再度該当宛先のパケットが受信された場合、それがカードLAカウンタの値が同じ“4”である期間内であれば再度の学習パケットは生成しない。即ち、学習パケットの最短生成周期はエージング処理起動周期の1/4である。
そして、その後、エージング処理が起動されると、上記状態フラグは図示の如く“0”にクリアされる。そして、図示の如く、再度該当する受信パケットが受信された場合、前回の学習パケット生成以後にカードLAカウンタの値が更新されているため、再度学習パケットが生成される。そしてその結果、図示の如く(d)の状態フラグが再び“1”に戻る。
そして、その後、該当する受信パケットが受信されないまま次回のエージング処理が起動された場合、図5のステップS11,S12に示すヒットビットと同様に、最初は状態フラグが“0”にクリアされる。そして、その後、次のエージング処理起動まで、該当受信パケットが受信されなかった場合、図示の如く該当するMACアドレスについての学習結果が削除される。尚、図16において、(c)のコンテンツカウンタに数字が入っていない状態は、学習結果が存在しないことを意味する。
このように本発明の実施の形態による図16に示す構成の場合、学習パケットの生成間隔、即ち発信間隔はエージング処理起動間隔より短く設定される。即ち、各ノード毎にエージング処理タイミングのばらつき、送信処理のタイムラグ等で発生する処理タイミングの揺らぎ、パケット流量が多い際に発生するパケット削除等によって、通信が継続しているのにもかかわらず学習情報がエージング処理にて削除されてしまうようなことを防ぐため、学習パケットを複数回送信するものとし、その送信期間をエージング処理起動間隔より短く設定することが望ましいのである。
図15において、ノード群60のカード#0にて端末10から端末20に宛てたIPパケットを受信した場合であって、その時点では端末10のMACアドレス“A”、端末20のMACアドレス“B”の双方について、学習結果は存在していないものとする。この場合、図17に示す如く、カード#0から当該パケットをフラッディングする(ステップP31)。
これを受けたカード#1、#2は、端末20に至る経路としてカード#3,#4に至るトランクBを有するものとする。そして当該パケットはカード#1、カード#2の各々によってフラッディングされる(ステップP32)。但し、この場合、トランクBについてはカード#1が代表ポートとして選択されるものとし、もってカード#2から同じトランクB内のカード#4への送信は行なわれない。又これを受けたノード群70のカード#3も同様にフラッディングを行なう(ステップP33)。
これを受けたカード#4,#5は、更にフラッディングを行なう(ステップP34)。なおこの場合、上記トランクBについての代表ポートとして選択されているのは、上記代表ポートとして選択されたカード#1に対向するカード#3であってカード#4ではない。このため、カード#4から同じトランクB内のカード#2に対する送信は行なわない。尚、上記一連の転送動作の間で、カード#3,#4,#5の各々では、送信元の端末10のMACアドレス“A”(SA)について、上記トランクBと同一のトランクをトランクAとして学習する。
その後、カード#5は所定のタイミングで、上記トランクAを有する全てのノードに対して学習パケットを発信する(ステップP34)。その結果、トランクAを有するカード#3,#4の双方共端末20のMACアドレス“B”につき、カード#5を有する経路を学習することとなる。
その後、図18に示す如く、カード#5が端末20から端末10に対するIPパケットを受信した場合、この端末10のMACアドレス“A”は前記ステップP33によりパケットを受信した際に学習しているため、その学習結果であるトランクAを適用する。その際、カード#5のハードウェア独自の演算方法により、トランクAを構成する経路のうち、カード#4による経路を選択し、これを適用するものとする(ステップP20)。これを受けたカード#4では、所定のトランク情報から対向するカードとしてカード#2を特定し、これを適用する(ステップP21)。
これを受けたカード#2では、既に、前回ステップP31にてパケット受信の際にMACアドレス“A”について学習しているため、該当経路としてカード#0を特定して適用する(ステップP37)。そしてカード#0は、前回端末10からパケットを受信した際の学習結果(図17の最上段)により、IPパケットを端末10に転送する(フラッディングしない)。その後、カード#0は上記トランクBを有する全てのノードに対して学習パケットを発信する(ステップP38)。その結果、トランクBを有するカード#1,#2の双方共端末10のMACアドレス“A”につき、カード#0を有する経路を上書き学習する。
尚、この時点でエージングが起動された場合、上記ヒットビット、学習パケット送信済み状態フラグ共に“1”が立っているため、これらは“0”にクリアされるが、該当する端末10,端末20の夫々のMACアドレス“A”,“B”についての学習結果はこの時点では削除されない。
そしてその後図19に示す如く再度端末10から端末20に対するパケットが発信された場合、これを受信したカード#0は、端末10のMACアドレス“A”についての学習結果を上書きする。又、カード#0は、前回端末20からのパケット受信時(図18のステップP37)に該当MACアドレス“B”についての経路としてトランクBを学習している。そのため、カード#0のハードウェア独自の演算方法により、トランクBを構成する経路のうち、カード#1による経路を選択し、これを適用する(ステップP41)。
又この場合、端末20に対する宛先検索において該当MACアドレス“B”がヒットし、又端末20に至る経路がトランクを含むため、前回の学習パケット生成からエージング処理起動間隔の1/4が経過していれば学習パケット生成の条件を満たす。その場合、カード#1,#2に対して学習パケットを発信する(ステップP41)。その結果カード#1,#2の各々は、MACアドレス“A”についての学習結果を上書きする。
又上記端末10から発せられカード#0を通過したパケットがカード#1に至った場合、カード#1では、所定のトランク情報から対向するカードとしてカード#3を特定し、これを適用する(ステップP42)。その結果パケットを受けたカード#3では、既に、前回ステップP34にて学習パケット受信の際にMACアドレス“B”について学習しているため、該当経路としてカード#5を特定して適用する(ステップP43)。
尚、このようにステップS34において学習パケットが生成されていない場合には、ここではフラッディングを行なうこととなる。但しその場合でも、後述する如くカード#5にてその後再度端末20から端末10に対してパケットが発信された場合には上記学習パケット生成条件を満たすこととなるためにカード#3に対しても学習パケットが送られて端末20について学習される(図20のステップP45)。このため、それ以降は経路特定が可能となりフラッディングは不要となる。
そしてこのようにして端末10からのパケットを受信したカード#5は、前回端末20からパケットを受信した際の学習結果(図18の最上段)により、当該パケットを端末20に転送する(フラッディングしない)。その後、カード#5はトランクAを有する全てのノードに対して学習パケットを発信する(ステップP44)。その結果、トランクAを有するカード#3,#4の双方共端末20のMACアドレス“B”につき、カード#5を有する経路を上書き学習する。
尚、この時点、即ち図20の最上段でエージングが起動された場合、上記ヒットビット、学習パケット送信済み状態フラグ共に“1”が立っているため、これらが“0”クリアされるが、該当する端末10,端末20の夫々のMACアドレス“A”,“B”についての学習結果が削除されることはない。
そしてその後図20に示す如く更に再度端末20から端末10に対するパケットが発信された場合、これを受信したカード#5は、端末20のMACアドレス“B”についての学習結果を上書きする。又、カード#5は前回端末10からのパケット受信時(図19のステップP43)に該当MACアドレス“A”についての経路としてトランクAを上書き学習している。そのため、カード#5のハードウェア独自の演算方法により、トランクAを構成する経路のうち、カード#4による経路を選択し、これを適用する(ステップP45)。
又この場合、カード#5では、端末10に対する宛先検索にて該当MACアドレス“A”がヒットし、又端末10に至る経路がトランクを含むため、前回の学習パケット生成からエージング処理起動間隔の1/4が経過していれば上記の如く、学習パケット生成の条件を満たす。その場合、カード#3,#4に対して学習パケットを発信する(ステップP45)。その結果カード#3,#4の各々は、MACアドレス“B”についての学習結果を上書きする。
上記の如く上記端末20から発せられカード#5を通過したパケットがカード#4に至った場合、カード#4では、所定のトランク情報から対向するカードとしてカード#2を特定し、これを適用する(ステップP46)。これを受けたカード#2では、既に、前回ステップP41にて学習パケット受信の際にMACアドレス“A”について学習しているため、該当経路としてカード#0を特定して適用する(ステップP47)。
そしてこのようにして端末20からのパケットを受信したカード#0は、前回端末10からパケットを受信した際の学習結果(図19の最上段)により、当該パケットを端末10に転送する(フラッディングしない)。その後、カード#0はトランクBを有する全てのノードに対して学習パケットを発信する(ステップP48)。その結果、トランクBを有するカード#1,#2の双方共端末10のMACアドレス“A”につき、カード#0を有する経路を上書き学習することとなる。
尚、本願は以下に示す付記の構成を含む。
(付記1)
受信パケットをその宛先アドレスによって転送するためのパケット転送方法であって、
各装置にて受信パケットの送信元アドレスをその受信経路と対応させて学習する学習段階よりなり、
各装置では受信パケットの宛先アドレスにつき、当該アドレスと該当する経路との対応関係についての学習結果を有する場合には該当経路を通じて当該受信パケットを発信し、他方、前記の学習結果を有しない場合全ての経路を通じて当該受信パケットを発信する構成とされてなり、
所定のタイミングで各装置に対する学習パケットを生成する学習パケット生成段階を含むパケット転送方法。
(付記2)
更に、前記学習段階による学習結果につき、所定の削除周期で削除する削除段階を含み、
前記学習パケット生成段階にて学習パケットを生成し得る周期は、前記所定の削除周期より短く設定されてなる付記1に記載の方法。
(付記3)
各装置にて学習パケット送信済みフラグを持ち、学習パケット生成段階実行時に当該フラグを立て、前記削除段階の実行タイミングでは当該フラグが立っていればこれをクリアして学習結果は削除せず、次の削除段階の実行タイミングにて当該フラグがクリアされたままの場合に初めて学習結果を削除する構成とされてなる付記2に記載の方法。
(付記4)
前記学習パケット生成段階は、受信パケットの宛先アドレスにつき、当該アドレスと該当する経路との対応関係についての学習結果を有しない場合について実行する構成とされたなる付記1乃至3のうちの何れかに記載の方法。
(付記5)
複数の経路を単一の仮想集合経路とみなすリンクアグリゲーション適用の際、前記学習段階では、受信経路として仮想集合経路を学習する構成とされてなる付記1乃至4の内の何れかに記載の方法。
(付記6)
前記学習パケット生成段階は、受信パケットの宛先アドレスにつき、当該宛先に至る経路がリンクアグリゲーションの適用による仮想集合経路であり、且つ当該アドレスと該当する経路との対応関係についての学習結果を有しない場合について実行する構成とされ、その際には当該仮想集合経路を有する全ての装置に対して学習パケットを生成する構成とされてなる付記1乃至5の内の何れかに記載の方法。
(付記7)
受信パケットをその宛先アドレスによって転送するためのパケット転送システムであって、
パケット転送を行う各装置は受信パケットの送信元アドレスをその受信経路と対応させて学習する学習手段を有し、
各装置では受信パケットの宛先アドレスにつき、当該アドレスと該当する経路との対応関係についての学習結果を有する場合には該当経路を通じて当該受信パケットを発信し、他方、前記の学習結果を有しない場合全ての経路を通じて当該受信パケットを発信する構成とされてなり、
各装置は更に、所定のタイミングで他の装置に対する学習パケットを生成する学習パケット生成手段を有するパケット転送システム。
(付記8)
更に、前記学習手段による学習結果につき、所定の削除周期で削除する削除手段を含み、
前記学習パケット生成手段にて学習パケットを生成し得る周期は、前記所定の削除周期より短く設定されてなる付記7に記載のパケット転送システム。
(付記9)
各装置にて学習パケット送信済みフラグを持ち、学習パケット生成手段による学習パケット生成時に当該フラグを立て、前記削除手段による学習結果削除のタイミングでは当該フラグが立っている場合にはこれをクリアして学習結果は削除せず、次の削除タイミングにて当該フラグがクリアされたままの場合に初めて学習結果を削除する構成とされてなる付記8に記載のパケット転送システム。
(付記10)
前記学習パケット生成手段は、受信パケットの宛先アドレスにつき、当該アドレスと該当する経路との対応関係についての学習結果を有しない場合について学習パケットを生成する構成とされたなる付記7乃至9のうちの何れかに記載のパケット転送システム。
(付記11)
複数の経路を単一の仮想集合経路とみなすリンクアグリゲーション適用の際、前記学習手段は、受信経路として仮想集合経路を学習する構成とされてなる付記7乃至10の内の何れかに記載のパケット転送システム。
(付記12)
前記学習パケット生成手段は、受信パケットの宛先アドレスにつき、当該宛先に至る経路がリンクアグリゲーションの適用による仮想集合経路であり、且つ当該アドレスと該当する経路との対応関係についての学習結果を有しない場合について学習パケットを生成する構成とされ、その際には当該仮想集合経路を有する全ての装置に対して学習パケットを生成する構成とされてなる付記7乃至11のうちの何れかに記載のパケット転送システム。
(付記13)
受信パケットをその宛先アドレスによって転送するためのパケット転送装置であって、
受信パケットの送信元アドレスをその受信経路と対応させて学習する学習手段を有し、
受信パケットの宛先アドレスにつき、当該アドレスと該当する経路との対応関係についての学習結果を有する場合には該当経路を通じて当該受信パケットを発信し、他方、前記の学習結果を有しない場合全ての経路を通じて当該受信パケットを発信する構成とされてなり、
更に、所定のタイミングで他のパケット転送装置に対する学習パケットを生成する学習パケット生成手段を有するパケット転送装置。
(付記14)
更に、前記学習手段による学習結果につき、所定の削除周期で削除する削除手段を含み、
前記学習パケット生成手段にて学習パケットを生成し得る周期は、前記所定の削除周期より短く設定されてなる付記13に記載のパケット転送装置。
(付記15)
更に学習パケット送信済みフラグを持ち、学習パケット生成手段による学習パケット生成時に当該フラグを立て、前記削除手段による学習結果削除のタイミングでは当該フラグが立っている場合にはこれをクリアして学習結果は削除せず、次の削除タイミングにて当該フラグがクリアされたままの場合に初めて学習結果を削除する構成とされてなる付記14に記載のパケット転送装置。
(付記16)
前記学習パケット生成手段は、受信パケットの宛先アドレスにつき、当該アドレスと該当する経路との対応関係についての学習結果を有しない場合について学習パケットを生成する構成とされたなる付記13乃至15のうちの何れか一項に記載のパケット転送装置。
(付記17)
複数の経路を単一の仮想集合経路とみなすリンクアグリゲーション適用の際、前記学習手段は、受信経路として仮想集合経路を学習する構成とされてなる付記13乃至16の内の何れかに記載のパケット転送装置。
(付記18)
前記学習パケット生成手段は、受信パケットの宛先アドレスにつき、当該宛先に至る経路がリンクアグリゲーションの適用による仮想集合経路であり、且つ当該アドレスと該当する経路との対応関係についての学習結果を有しない場合について学習パケットを生成する構成とされ、その際には当該仮想集合経路を有する全てのパケット転送装置に対して学習パケットを生成する構成とされてなる付記13乃至17のうちの何れかに記載のパケット転送装置。
従来の一例の経路学習機能について説明するためのブロック図(その1)である。 従来の一例の経路学習機能について説明するための動作フローチャートである。 従来の一例の経路学習機能について説明するためのブロック図(その2)である。 従来の一例の経路学習機能について説明するための動作遷移図である。 従来の一例のエージング処理機能について説明するための動作フローチャートである。 従来の一例のエージング処理機能について説明するためのブロック図である。 従来の一例のエージング処理機能について説明するための動作遷移図(その1)である。 従来の一例のエージング処理機能について説明するための動作遷移図(その2)である。 従来の一例のリンクアグリゲーション機能について説明するためのブロック図である。 従来の一例のリンクアグリゲーション機能について説明するための動作遷移図(その1)である。 従来の一例のリンクアグリゲーション機能について説明するための動作遷移図(その2)である。 従来の一例による繰り返しフラッディング発生による問題点について説明するためのブロック図である。 従来の一例のリンクアグリゲーション機能について説明するための動作遷移図(その3)である。 従来の一例のリンクアグリゲーション機能について説明するための動作遷移図(その4)である。 本発明の実施の形態によるパケット転送システムの動作について説明するためのブロック図である。 本発明の実施の形態によるパケット転送装置の動作について説明するためのタイムチャート図である。 本発明の実施の形態によるパケット転送システムの動作について説明するための動作遷移図(その1)である。 本発明の実施の形態によるパケット転送システムの動作について説明するための動作遷移図(その2)である。 本発明の実施の形態によるパケット転送システムの動作について説明するための動作遷移図(その3)である。 本発明の実施の形態によるパケット転送システムの動作について説明するための動作遷移図(その4)である。
符号の説明
10,20 端末
50−0,50−1,50−2 ノード
#0、#1、#2、#3、#4、#5 ラインカード又はノード
60,70 ノード群

Claims (4)

  1. 受信パケットを宛先アドレスによって転送するためのパケット転送方法であって、
    パケット転送を担う各パケット転送装置受信パケットの送信元アドレスを受信経路と対応させて学習する学習段階を有し、各パケット転送装置は受信パケットの宛先アドレスにつき、当該アドレスと該当する経路との対応関係についての学習結果を有する場合には当該経路を通じて当該受信パケットを発信し、他方、当該学習結果を有しない場合全ての経路を通じて当該受信パケットを発信し、
    更にパケット転送装置が所定のタイミングで学習パケットを送信する学習パケット送信段階を有し、
    学習パケットは、各パケット転送装置に当該学習パケットの送信元アドレスを当該学習パケットの受信経路と対応させて学習させるためのパケットであり、
    前記学習パケット送信段階では、パケット転送装置が既に学習した送信元アドレスを宛先としたパケットを受信した場合であって前記学習に係る経路がリンクアグリゲーションの適用による仮想集合経路を含む場合にその都度、前記仮想集合経路に含まれる全てのパケット転送装置に対し学習パケットを送信することを特徴とするパケット転送方法。
  2. 更に、前記学習段階による学習結果所定の削除周期で削除する削除段階を含み、
    前記学習パケット送信段階にて学習パケットを送信し得る周期は、前記所定の削除周期より短く設定されることを特徴とする請求項1に記載の方法。
  3. 受信パケットを宛先アドレスによって転送するためのパケット転送システムであって、
    パケット転送を担う各パケット転送装置は受信パケットの送信元アドレスを受信経路と対応させて学習する学習手段を有し、各パケット転送装置受信パケットの宛先アドレスにつき、当該アドレスと該当する経路との対応関係についての学習結果を有する場合には前記経路を通じて当該受信パケットを発信し、他方、当該学習結果を有しない場合全ての経路を通じて当該受信パケットを発信し、
    パケット転送装置は更に、所定のタイミングで学習パケットを送信する学習パケット送信手段を有し、
    学習パケットは、各パケット転送装置に当該学習パケットの送信元アドレスを当該学習パケットの受信経路と対応させて学習させるためのパケットであり、
    前記学習パケット送信手段は、パケット転送装置が既に学習した送信元アドレスを宛先としたパケットを受信した場合であって前記学習に係る経路がリンクアグリゲーションの適用による仮想集合経路を含む場合にその都度、前記仮想集合経路に含まれる全てのパケット転送装置に対し学習パケットを送信することを特徴とするパケット転送システム。
  4. 受信パケットを宛先アドレスによって転送するためのパケット転送装置であって、
    受信パケットの送信元アドレスを受信経路と対応させて学習する学習手段を有し、受信パケットの宛先アドレスにつき、当該アドレスと該当する経路との対応関係についての学習結果を有する場合には当該経路を通じて当該受信パケットを発信し、他方、当該学習結果を有しない場合全ての経路を通じて当該受信パケットを発信し、
    更に、所定のタイミングで学習パケットを送信する学習パケット送信手段を有し、
    学習パケットは、各パケット転送装置に当該学習パケットの送信元アドレスを当該学習パケットの受信経路と対応させて学習させるためのパケットであり、
    前記学習パケット送信手段は、パケット転送装置が既に学習した送信元アドレスを宛先としたパケットを受信した場合であって前記学習に係る経路がリンクアグリゲーションの適用による仮想集合経路を含む場合にその都度、前記仮想集合経路に含まれる全てのパケット転送装置に対し学習パケットを送信することを特徴とするパケット転送装置。
JP2003318516A 2003-09-10 2003-09-10 パケット転送方法、パケット転送システム及びパケット転送装置 Expired - Fee Related JP4351505B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003318516A JP4351505B2 (ja) 2003-09-10 2003-09-10 パケット転送方法、パケット転送システム及びパケット転送装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003318516A JP4351505B2 (ja) 2003-09-10 2003-09-10 パケット転送方法、パケット転送システム及びパケット転送装置

Publications (2)

Publication Number Publication Date
JP2005086668A JP2005086668A (ja) 2005-03-31
JP4351505B2 true JP4351505B2 (ja) 2009-10-28

Family

ID=34417781

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003318516A Expired - Fee Related JP4351505B2 (ja) 2003-09-10 2003-09-10 パケット転送方法、パケット転送システム及びパケット転送装置

Country Status (1)

Country Link
JP (1) JP4351505B2 (ja)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4681472B2 (ja) * 2006-02-24 2011-05-11 富士通株式会社 トポロジ情報収集プログラム、トポロジ情報収集装置およびトポロジ情報収集方法
US7593400B2 (en) * 2006-05-19 2009-09-22 Corrigent Systems Ltd. MAC address learning in a distributed bridge
JP4923908B2 (ja) 2006-09-21 2012-04-25 富士通株式会社 パケット転送装置およびパケット転送方法
JP4867545B2 (ja) * 2006-09-22 2012-02-01 日本電気株式会社 通信装置及びそれに用いる検索テーブル管理方法
JP4830942B2 (ja) * 2007-03-28 2011-12-07 日本電気株式会社 通信装置、通信システム及びそれに用いるlag管理テーブル管理方法
JP4794670B2 (ja) * 2007-09-05 2011-10-19 富士通株式会社 経路制御装置
JP2010130089A (ja) * 2008-11-25 2010-06-10 Mitsubishi Electric Corp パケット中継装置
JP5594171B2 (ja) * 2011-02-02 2014-09-24 富士通株式会社 通信処理装置、アドレス学習プログラムおよびアドレス学習方法
JP5814830B2 (ja) * 2012-03-05 2015-11-17 Kddi株式会社 フロー単位パケット転送のための宛先検索装置および検索方法
JP6040907B2 (ja) * 2013-10-15 2016-12-07 日立金属株式会社 ネットワーク中継システムおよびスイッチ装置
JP6807905B2 (ja) * 2018-09-04 2021-01-06 三菱電機株式会社 通信システム

Also Published As

Publication number Publication date
JP2005086668A (ja) 2005-03-31

Similar Documents

Publication Publication Date Title
JP4873834B2 (ja) ファイバーチャンネルフレーム配送のための方法及び装置
US6574240B1 (en) Apparatus and method for implementing distributed layer 3 learning in a network switch
US7843919B2 (en) Ethernet virtualization using a network packet alteration
JP2004507165A (ja) スイッチ・ファブリックにおけるスイッチング・テーブル更新
US6683885B1 (en) Network relaying apparatus and network relaying method
JP2004507136A (ja) 入力データグラムをスイッチ・ファブリック・チップセット・システムにおけるスイッチ・マトリックスに格納するためのシステム、方法および製造品
JP4351505B2 (ja) パケット転送方法、パケット転送システム及びパケット転送装置
CN104737507B (zh) 在大规模数据中心环境中用机会第3层转发确保任意到任意可达性的方法及装置
JP4923908B2 (ja) パケット転送装置およびパケット転送方法
JP2004507165A5 (ja)
JP2004507136A5 (ja)
US20050030948A1 (en) Link aggregation
JP4667849B2 (ja) ループ検出方法及び装置
CN101729404A (zh) 使层2主机地址与网络中的交换机屏蔽开的机制
CN101573913A (zh) 用于多播路由选择的方法和设备
US7447222B2 (en) Automated path tracing through switching mesh
JP2004507160A (ja) パケットをポート・コントローラからスイッチ・ファブリックへ転送するためのシステムおよび方法
US7184402B1 (en) Method for multi-link load balancing to improve sequenced delivery of frames at peer end
CN111669422B (zh) 报文的传输方法和设备
US7352748B1 (en) Updating of routing data in a network element
JP2005260594A (ja) ネットワークシステム及び通信装置
JP2017034365A (ja) ネットワークシステムおよびパケット転送方法
JP2852072B2 (ja) ネツトワーク・システム
JP4962083B2 (ja) Rprノード装置および公平性制御方法およびrpr通信システム
JP3161507B2 (ja) ルーティング制御方法とその装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060802

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20080623

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090303

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090501

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20090714

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20090724

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120731

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4351505

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120731

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130731

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees