JP5601193B2 - ネットワーク中継システム、ネットワーク中継装置、輻輳状態通知方法、及びプログラム - Google Patents

ネットワーク中継システム、ネットワーク中継装置、輻輳状態通知方法、及びプログラム Download PDF

Info

Publication number
JP5601193B2
JP5601193B2 JP2010286690A JP2010286690A JP5601193B2 JP 5601193 B2 JP5601193 B2 JP 5601193B2 JP 2010286690 A JP2010286690 A JP 2010286690A JP 2010286690 A JP2010286690 A JP 2010286690A JP 5601193 B2 JP5601193 B2 JP 5601193B2
Authority
JP
Japan
Prior art keywords
congestion
notification
relay device
destination
congestion state
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
JP2010286690A
Other languages
English (en)
Other versions
JP2012134884A (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 JP2010286690A priority Critical patent/JP5601193B2/ja
Priority to US13/233,081 priority patent/US8792350B2/en
Publication of JP2012134884A publication Critical patent/JP2012134884A/ja
Application granted granted Critical
Publication of JP5601193B2 publication Critical patent/JP5601193B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Small-Scale Networks (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Description

本発明は、通信ネットワークを流れるデータフローの制御技術に関する。
通信ネットワークの規格であるイーサネット(登録商標)を拡張した規格であるCEE(Converged Enhanced Ethernet )の標準化が進んでいる。CEEの標準化の進展に伴い、イーサネットのネットワーク上にFC(Fiber Channel )プロトコルのデータフローを流すFCoE(FC over Ethernet)技術を活用したLAN(Local Area Network)とSAN(Storage Area Network)との統合が進んでいる。
FCプロトコルは、元々、通信ネットワーク上でのパケットロスの発生を意図して作られたプロトコルではない。このため、イーサネットのネットワーク上にFCプロトコルのデータフローを流す場合には、ネットワーク内での通信パケットのロスがゼロである通信を実現する必要がある。前述したCEEの標準化においては、IEEE802.1Qauと称されている輻輳制御規格を用いて、このような通信を実現する。
IEEE802.1Qau規格における処理の概要は次の通りである。
まず、ネットワーク機器の各出力ポートのキュー長の監視が行われる。ここで、キュー長が所定値以上になった出力ポートは輻輳状態が発生していると判定され、この出力ポートを流れているデータトラフィックから、ひとつのデータフローが抽出される。そして、そのデータフローの発信元の端末へ宛てて輻輳通知パケットを送信する。この輻輳通知パケットを受信した発信元端末は、以降に送信するデータフローの転送レートを低下させることで、その出力ポートで発生している輻輳状態の継続を回避する。
IEEE802.1Qau規格では、出力ポートの輻輳状態が発生したときには、その出力ポート(輻輳ポート)を流れるデータトラフィックから任意に抽出された1つのデータフローの発信元に対してのみ輻輳通知を行うため、輻輳が収束するまでに長い時間を要する。本来であれば、輻輳ポートを流れている全てのデータフローの発信元に輻輳通知を行うことが望ましい。このような技術が幾つか提案されている。
その第一の技術は、イーサネットスイッチの出力ポートを通過するトラフィックを監視する機能を提供するハードウェアをスイッチ自身に備えるというものである。この技術は、出力ポートでの輻輳の発生時に、データトラフィックの監視により作成された管理情報を用いて、輻輳ポートを通過しているデータトラフィックを形成している全てのデータフローの発信元を特定する。そして、その発信元の全てに宛てた輻輳通知パケットを送信する。
また、その第二の技術は、データパケットがイーサネットスイッチに到着する度に当該スイッチがFDB(Forwarding DataBase )を用いて行う、当該パケットを出力するポートの解決時に、当該出力ポートの輻輳状態の判定を行うというものである。この技術では、出力ポートが輻輳状態にあると判定された場合には、到着したデータパケットに記されている、当該データパケットの発信元のMACアドレスを宛先アドレスとして設定した輻輳通知パケットの送信が行われる。
特開2000−270002号公報 特開2002−223223号公報
前述した第一の技術は、データトラフィックを監視して、出力ポート毎に出力ポートを通過している全てのデータフローを特定するという高負荷の処理をスイッチで行うために、スイッチに新たなハードウェアの追加を必要としている。
また、前述した第二の技術では、輻輳状態の発生が検出されても、到着したデータパケットの送信元に対してのみ輻輳通知パケットが送信される。従って、例えば間欠的な通信を行っている他のデータフローの発信元には輻輳通知パケットが届かない。このため、例えば、既に輻輳状態が発生しているにもかかわらず輻輳通知を受けていない発信元が大量のデータパケットを送出した場合には、大量のデータパケットの廃棄の発生や、輻輳状態の収束の遅れによる遅延時間の長時間化などが懸念される。
上述した問題に鑑み、本明細書で後述するネットワーク中継システムは、通信ネットワーク上で発生した輻輳状態を、早期に解消できるようにする。
本明細書で後述するネットワーク中継システムのひとつに、第一中継装置と第二中継装置とを備えているものがある。
このうち、第一中継装置は、データパケットの入力及び出力を行う、前記第二中継装置に接続されている第一ポートと、検出部と、第一送信部とを備えている。ここで、検出部は、第一ポートから第二中継装置に転送するデータパケットのトラフィックの輻輳状態を検出する。また、第一送信部は、前記輻輳状態を検出したときに、第二中継装置へ宛てて、輻輳状態を検出したことを示す検出通知を送信する。
一方、第二中継装置は、データパケットの入力及び出力を行う複数のポートと、記憶部と、受信部と、第二送信部とを備えている。ここで、記憶部では、複数のポートの各々について、入力されたデータパケットを転送する宛先と、該入力されたデータパケットを出力するポートとが対応付けられている。また、受信部は、第一中継装置から前記検出通知を受信する。そして、第二送信部は、前記検出通知を受信したときに、前記複数のポートのうち第一中継装置が接続されているポートに対応付けられている宛先を記憶部から得て得た宛先に輻輳の通知を送信する。
本明細書で後述するネットワーク中継システムは、通信ネットワーク上で発生した輻輳状態が、早期に解消されるという効果を奏する。
ネットワーク中継システムの一実施例の構成図である。 ネットワークスイッチの具体的構成の第一の例である。 信号処理部のハードウェア構成例である。 輻輳監視処理の処理内容を図解したフローチャートである。 輻輳検出通知パケットの構造の第一の例である。 パケット受信処理の第一の例の処理内容を図解したフローチャートである。 輻輳発生通知パケットの構造の一例である。 ネットワーク中継システムでのデータパケットの流れの第一の例である。 図8のデータパケットの流れを図解したシーケンス図である。 ネットワークスイッチの具体的構成の第二の例である。 輻輳検出通知パケットの構造の第二の例である。 パケット受信処理の第二の例の処理内容を図解したフローチャートである。 輻輳検出通知応答パケットの構造の一例である。 ネットワーク中継システムでのデータパケットの流れの第二の例である。 図14のデータパケットの流れを図解したシーケンス図である。
まず図1について説明する。図1は、ネットワーク中継システムの一実施例の構成図である。
このネットワーク中継システム1は、第一中継装置10と第二中継装置20とを備えて構成されている。
第一中継装置10は、データパケットの入力及び出力を行うポート11−1、11−2、11−3、及び11−4を備えており、第二中継装置20は同様のポート21−1、21−2、21−3、及び21−4を備えている。なお、第一中継装置10及び第二中継装置20各々のポート数は図1ではどちらも4個であるが、この個数は任意の複数でよい。
図1のネットワーク中継システム1では、第一中継装置10のポート11−1と、第二中継装置20とが通信ケーブル2を介して物理的に接続されている。
なお、以下の説明では、ポート11−1、11−2、11−3、及び11−4を特に区別する必要がない場合には、「複数のポート11」と称することとする。また、同様に、ポート21−1、21−2、21−3、及び21−4を特に区別する必要がない場合には、「複数のポート21」と称することとする。
第一中継装置10は、複数のポート11に加えて、更に、輻輳状態検出部12と輻輳検出通知送信部13とを備えている。
輻輳状態検出部12は、ポート11−1から第二中継装置20に流出させるデータトラフィックの輻輳状態の発生を検出する。この輻輳状態の発生の検出は、例えば、ポート11−1から出力するデータパケットが一時的に格納されるキュー14の長さが所定の第一閾値を上回ったことを検出することによって行われる。
輻輳検出通知送信部13は、輻輳状態検出部12が上述した輻輳状態の発生を検出したときに、輻輳状態となっているデータトラフィックの流出先装置である第二中継装置20へ宛てて、輻輳状態の発生を検出したことを示している輻輳検出通知を送信する。この輻輳検出通知は、ポート11−1から通信ケーブル2を介して送られ、第二中継装置20のポート21−4に届けられる。
なお、輻輳状態検出部12が、更に、ポート11−1から第二中継装置20に流出させるデータトラフィックの輻輳状態の解消を検出するようにしてもよい。ここで、輻輳状態検出部12が輻輳状態の解消を検出したときには、輻輳検出通知送信部13が輻輳検出通知の送信を停止するようにしてもよい。なお、輻輳状態検出部12による輻輳状態の解消の検出は、例えば、輻輳状態の発生の検出後に、キュー14の長さが、第一閾値よりも短い所定の第二閾値を下回ったことを検出することによって行うことができる。
第二中継装置20は、複数のポート21に加えて、更に、データベース22、輻輳検出通知受信部23、及び宛先装置情報送信部24を備えている。
データベース22は、複数のポート21の各々に入力されるデータパケットの宛先である宛先装置の識別情報と、そのデータパケットを出力するとデータパケットがその宛先装置に届けられるポート21とが対応付けられて格納されている。
なお、第二中継装置20は、レイヤ2スイッチ(データパケットのルーティングにOSI(Open Systems Interconnection)参照モデルの第二層(データリンク層)のデータを用いるスイッチ)として構成してもよい。第二中継装置20をレイヤ2スイッチとして構成する場合には、データベース22としてFDB(Forwarding DataBase )を用いてもよい。なお、データベース22としてFDBを用いる場合には、MACアドレス(Media Access Control Address)を、前述した宛先装置の識別情報として使用する。
輻輳検出通知受信部23は、輻輳状態となっているデータトラフィックの流入元装置である第一中継装置10の輻輳検出通知送信部13により送信される、前述した輻輳検出通知を受信する。
宛先装置情報送信部24は、データベース22において第一中継装置10が物理的に接続されているポート21−4に対応付けられている宛先装置の識別情報を、そのポート21から送信する。この宛先装置情報送信部24による宛先装置の識別情報の送信は、例えば輻輳検出通知受信部23が輻輳検出通知を受信したときに行われる。
第二中継装置20には、前述したように、データパケットの宛先である宛先装置の識別情報と、その宛先装置へ宛ててデータパケットを送るときにそのデータパケットを出力するポートとが対応付けられて格納されているデータベース22を備えている。第二中継装置20は、データパケットを宛先装置に届けるための経路の適切な選択を、このデータベース22を参照することで行っている。なお、このデータベース22は、例えば、第一中継装置10が物理的に接続されているポート21−4から流入するデータパケットから当該データパケットの発信元を示す識別情報を抽出して、この識別情報とポート21−4とを対応付けることによって作成される。従って、第二中継装置20は、第一中継装置10が物理的に接続されているポート21−4から流入している、輻輳状態となっているデータトラフィックを形成している全てのデータパケットの発信元の情報を、データベース22に有している。
その一方で、第一中継装置10は、第二中継装置20が物理的に接続されているポート11−1において輻輳状態となっているデータトラフィックを形成しているデータパケットの発信元の情報を有していない。そこで、図1のネットワーク中継システム1では、第一中継装置10が有していない上述の情報を、第二中継装置20の宛先装置情報送信部24が第一中継装置10に送るようにしている。こうすることで、輻輳状態となっているポート11−1のデータトラフィックを形成している全てのデータパケットの発信元への輻輳通知の送付が第一中継装置10で可能になるので、輻輳状態を迅速に解消できるようになる。また、輻輳状態となっているデータトラフィックに、間欠的な通信を行っているデータパケットが含まれていても、そのようなデータパケットの発信元へにも輻輳通知の送付が可能になる。
なお、輻輳通知の送付のために、輻輳通知パケット送信部15を更に第一中継装置10に備えるようにしてもよい。輻輳通知パケット送信部15は、輻輳検出通知送信部13が送信した輻輳検出通知に応答して第二中継装置20の宛先装置情報送信部24から送信される前述の宛先装置の識別情報を受け取ると、輻輳発生通知パケットを送信する。輻輳発生通知パケットは輻輳状態の発生を通知するものであり、輻輳通知パケット送信部15は、この輻輳発生通知パケットに、輻輳発生通知パケットの宛先の情報として、宛先装置の識別情報を含めたものを送信する。
また、輻輳通知の送付のためには、第二中継装置20の宛先装置情報送信部24自身が、輻輳状態の発生を通知する輻輳発生通知パケットに、その輻輳発生通知パケットの宛先の情報として、宛先装置の識別情報を含めたものを送信するようにしてもよい。このようにすることで、前述した輻輳通知パケット送信部15を第一中継装置10に備えることなく、輻輳状態となっているポート11−1のデータトラフィックを形成している全てのデータパケットの発信元への輻輳通知の送付が可能になる。
なお、第一中継装置10と第二中継装置20との構成を共通にしてもよい。すなわち、第一中継装置10が備えている輻輳状態検出部12、輻輳検出通知送信部13及び輻輳通知パケット送信部15を第二中継装置20に備える。そして、第二中継装置20が備えているデータベース22、輻輳検出通知受信部23、及び宛先装置情報送信部24を第一中継装置10に備える。このようにして、第一中継装置10と第二中継装置20との構成を共通にしてもよい。
次に、図1のネットワーク中継システム1の動作について更に説明する。
まず、第一の動作例について、図2から図6の各図を用いて説明する。この第一の動作例は、輻輳発生通知パケットの送信を第二中継装置20が行う場合の動作である。
まず図2について説明する。図2は、ネットワークスイッチの具体的構成の第一の例を図解したものである。
図2のネットワークスイッチ100は、前述したように構成を共通にした第一中継装置10及び第二中継装置20のどちらにも使用できるものである。なお、以下の図2の説明では、簡単のため、ネットワークスイッチ100を第一中継装置10として使用する場合について説明する。
このネットワークスイッチ100は、レイヤ2パケットフォワーディングエンジン110と信号処理部120とを備えている。
レイヤ2パケットフォワーディングエンジン110は、まず、FDB111を作成する処理を行う。FDB111には、複数のポート11の各々に入力されるデータパケットの宛先である宛先装置のMACアドレスと、このデータパケットを出力すると当該宛先装置にそのデータパケットが届けられるポートとが対応付けられている。レイヤ2パケットフォワーディングエンジン110は、複数のポート11の各々に入力されたデータパケットからその発信元のMACアドレスを抽出し、このMACアドレスと、そのデータパケットが入力されたポート11とを対応付けてFDB111を作成する。このFDB111は、図1におけるデータベース22の一例である。
また、レイヤ2パケットフォワーディングエンジン110は、複数のポート11のうちのいずれかのポートに入力されたデータパケットを、複数のポート11のうちの他のいずれかのポートから出力する処理を行う。データパケットを出力するポートは、FDB111を用いて以下のようにして決定される。
まず、入力されたデータパケットから、そこに示されている宛先の装置のMACアドレスを抽出する処理が行われる。次に、FDB111を参照し、FDB111において、抽出したMACアドレスに対応付けられているポートの情報を取得する処理が行われる。こうして取得されたポートを、データパケットを出力するポートとして決定する。
更に、レイヤ2パケットフォワーディングエンジン110は、複数のポート11の各々に入力されるデータパケットを抽出して信号処理部120に送付する処理や、信号処理部120が作成したデータパケットを他のデータパケット群に挿入して出力する処理も行う。
なお、以下の説明では、レイヤ2パケットフォワーディングエンジン110を、「PFエンジン110」と称することとする。
信号処理部120は、輻輳状態検出処理121、輻輳検出通知送信処理122、輻輳検出通知受信処理123、及び宛先装置情報送信処理124などを行う。この信号処理部120のハードウェア構成例を図3に図解する。
図3の信号処理部120は、MPU125、フラッシュメモリ126、RAM127、及びインタフェース部128を備えている。なお、これらの構成要素はバスライン129を介して接続されており、MPU125の管理の下で各種のデータを相互に授受することができる。
MPU(Micro Processing Unit)125は、この信号処理部120全体の動作を制御する演算処理装置である。
フラッシュメモリ126は、MPU125によって実行される各種の制御プログラムが記録される不揮発性の半導体メモリである。MPU125は、この制御プログラムをネットワークスイッチ100の起動時にフラッシュメモリ126から読み出して実行することにより、信号処理部120の各構成要素の動作制御が可能になる。また、この制御プログラムをMPU125が実行することにより、信号処理部120が、輻輳状態検出処理121、輻輳検出通知送信処理122、輻輳検出通知受信処理123、及び宛先装置情報送信処理124などの各種処理を行えるようになる。
RAM(Random Access Memory)127は、MPU125が各種の制御プログラムを実行する際に、必要に応じて作業用記憶領域として使用する、随時書き込み読み出し可能な半導体メモリである。
インタフェース部128は、PFエンジン110との間での各種のデータの授受の管理を行う。
なお、フラッシュメモリ126には、前述した制御プログラムを予め記録させておくようにする。この代わりに、例えばネットワークスイッチ100が接続されている通信ネットワーク上の端末装置から送信された制御プログラムを、PFエンジン110及びインタフェース部128を介して受信してフラッシュメモリ126に書き込むようにしてもよい。また、信号処理部120に記録媒体駆動部130を更に備えて、可搬型記録媒体131に記録されている制御プログラムを、記録媒体駆動部130が読み出してフラッシュメモリ126に書き込むようにしてもよい。可搬型記録媒体131としては、例えば、USB(Universal Serial Bus)規格のコネクタが備えられているフラッシュメモリ、CD−ROM(Compact Disc Read Only Memory)、DVD−ROM(Digital Versatile Disc Read Only Memory)などがある。
次に、MPU125が行う制御処理である、輻輳監視処理及びパケット受信処理について説明する。これらの処理は、MPU125がフラッシュメモリ126に記録されている制御プログラムを実行することによって提供される。
まず、輻輳監視処理について説明する。図4は、輻輳監視処理の処理内容をフローチャートで図解したものである。
この輻輳監視処理は、信号処理部120が輻輳状態検出処理121と輻輳検出通知送信処理122とを行うための処理であり、ネットワークスイッチ100が備えている複数のポート11の各々について、個別に並行して行われる。なお、輻輳監視処理は、ネットワークスイッチ100が起動すると開始される。
なお、図4の説明では、ネットワークスイッチ100を第一中継装置10として使用する場合について説明する。
図4において、まず、S101では、ポート11から出力されるデータパケットが一時的に格納されるキューの長さが所定の通知閾値を上回ったか否かを判定する処理をMPU125が行う。このキューはPFエンジン110が備えているが、図2では図示を省略している。このS101の判定処理により、ポート11でのデータトラフィックの輻輳状態の発生の検出が行われる。
S101の判定処理において、キューの長さが通知閾値を上回ったと判定されたとき(判定結果がYesのとき)には、S102に処理が進む。一方、キューの長さが通知閾値以下であると判定されたとき(判定結果がNoのとき)には、キューの長さが通知閾値を上回って判定結果がYesとなるまで、このS101の処理が繰り返される。
次に、S102では、PFエンジン110を制御して、ポート11でのデータトラフィックの輻輳状態の発生を検出したことを通知するためのデータパケットである輻輳検出通知パケットを、ポート11から送信させる処理をMPU125が行う。
ここで図5について説明する。図5は輻輳検出通知パケットの構造の第一の例を図解したものである。
図5に図解されているように、この輻輳検出通知パケットは、「DstMAC」、「SrcMAC」、「Type」、及び「data」の各データ格納領域を有している。
「DstMAC」には、この輻輳検出通知パケットの宛先である装置のMACアドレスが格納される。従って、この輻輳検出通知パケットが第二中継装置20宛てのものである場合には、「DstMAC」には第二中継装置20に割り当てられているMACアドレスが格納される。
「SrcMAC」には、この輻輳検出通知パケットの発信元である装置のMACアドレスが格納される。従って、この輻輳検出通知パケットが第一中継装置10から発信されるものである場合には、「SrcMAC」には第一中継装置10に割り当てられているMACアドレスが格納される。
「Type」には、このデータパケットが輻輳検出通知パケットであることを表す識別データが格納される。
「data」には制御データが格納されるが、制御データを輻輳検出通知パケットに格納することは必須ではなく、不要な場合には制御データを輻輳検出通知パケットに格納しなくてもよい。
図4の説明に戻る。S103からS106にかけての処理は、ポート11で発生したデータトラフィックの輻輳状態が解消するまで、所定の時間間隔で、輻輳検出通知パケットの送信を繰り返すための処理である。
まず、S103では、輻輳検出通知パケットを送信してから所定時間が経過したか否かを判定する処理をMPU125が行う。ここで、輻輳検出通知パケットを送信してから所定時間が経過したと判定されたとき(判定結果がYesのとき)にはS105に処理が進む。一方、輻輳検出通知パケットを送信してから所定時間が未だ経過していないと判定されたとき(判定結果がNoのとき)にはS104に処理が進む。
次に、S104では、PFエンジン110を制御して、S102の処理により送信されたものと同一の輻輳検出通知パケットを、ポート11から再送信させる処理をMPU125が行う。
次に、S105では、ポート11についての前述したキューの長さが所定の解除閾値を下回ったか否かを判定する処理をMPU125が行う。なお、この解除閾値は、前述した通知閾値よりも短い値に設定される。このS105の判定処理において、キューの長さが所定の解除閾値を下回ったと判定されたとき(判定結果がYesのとき)には、S106に処理が進む。一方、キューの長さが所定の通知閾値以上であると判定されたとき(判定結果がNoのとき)には、S103に処理が戻る。
次に、S106では、輻輳検出通知パケットの送信を停止する処理をMPU125が行う。その後はS101に処理が戻り、ポート11でのデータトラフィックの輻輳状態の発生を検出するための処理が再開される。
以上までの処理が輻輳監視処理であり、この処理をMPU125が行うことにより、図1における輻輳状態検出部12及び輻輳検出通知送信部13の機能が、図2のネットワークスイッチ100で提供される。
次にパケット受信処理について説明する。図6は、パケット受信処理の第一の例の処理内容をフローチャートで図解したものである。
このパケット受信処理は、信号処理部120が輻輳検出通知受信処理123と宛先装置情報送信処理124とを行うための処理である。なお、パケット受信処理は、ネットワークスイッチ100が新たなデータパケットを複数のポート21のいずれかで受け取る度に開始される。
なお、図6の説明では、ネットワークスイッチ100を第二中継装置20として使用する場合について説明する。
図6において、S111では、受信したデータパケットが輻輳検出通知パケットであったか否かを判定する処理をMPU125が行う。ここで、受信したデータパケットが輻輳検出通知パケットであったと判定されたとき(判定結果がYesのとき)にはS113に処理が進む。一方、受信したデータパケットが輻輳検出通知パケットではなかったと判定されたとき(判定結果がNoのとき)にはS112に処理が進み、PFエンジン110による通常のデータパケットの中継処理が行われる。
次に、S113では、PFエンジン110のFDB111を参照する処理をMPU125が行う。
次に、S114では、参照中のFDB111の全てのエントリについて、後述するS115の処理による判定を確認済みであるか否かを判定する処理をMPU125が行う。ここで、FDB111の全てのエントリが確認済みであると判定されたとき(判定結果がYesのとき)にはこのパケット受信処理が終了する。一方、FDB111に未確認のエントリが残っていると判定されたとき(判定結果がNoのとき)には、S115に処理が進む。
S115では、FDB111のうちの未確認のエントリのひとつに注目し、S111の処理で受信が確認された輻輳検出通知パケットが届いたポート21と、このエントリに示されているポートの情報とが一致するか否かを判定する処理をMPU125が行う。ここで、この両者が一致したと判定されたとき(判定結果がYesのとき)にはS116に処理が進む。一方、この両者が一致しないと判定されたとき(判定結果がNoのとき)には、S114に処理が戻って、S114及びS115の処理が再度行われる。
S116では、PFエンジン110を制御して、輻輳発生通知パケットをポート21から送信させる処理をMPU125が行い、その後はS114に処理が戻ってS114及びS115の処理が再度行われる。
輻輳発生通知パケットは、データトラフィックの輻輳状態の発生を、そのデータトラフィックを形成しているデータパケットの発信元へ通知するためのデータパケットであり、その構造は後述する。S116において、MPU125は、PFエンジン110を制御して、この輻輳発生通知パケットを、輻輳状態のデータトラフィックを形成している全てのデータパケットの発信元へ宛てて送信する。
以上までの処理がパケット受信処理の第一の例であり、この処理をMPU125が行うことにより、図1における輻輳検出通知受信部23及び宛先装置情報送信部24の機能が、図2のネットワークスイッチ100で提供される。
ここで図7について説明する。図7は輻輳発生通知パケットの構造の一例を図解したものである。
図7に図解されているように、この輻輳発生通知パケットは、「DstMAC」、「SrcMAC」、「Type」、及び「data」の各データ格納領域を有している。
「DstMAC」には、この輻輳発生通知パケットの宛先である装置のMACアドレスが格納される。この「DstMAC」に格納されるMACアドレスは、FDB111において、受信が確認された輻輳検出通知パケットが届いたポート21に対応付けられていたものである。
「SrcMAC」には、この輻輳発生通知パケットの発信元である装置のMACアドレスが格納される。従って、この輻輳発生通知パケットが第二中継装置20から発信されるものである場合には、「SrcMAC」には第二中継装置20に割り当てられているMACアドレスが格納される。
「Type」には、このデータパケットが輻輳発生通知パケットであることを表す識別データが格納される。
「data」には制御データが格納されるが、制御データを輻輳発生通知パケットに格納することは必須ではなく、不要な場合には制御データを輻輳発生通知パケットに格納しなくてもよい。
次に、上述した図1のネットワーク中継システム1の第一の動作例に従って各データパケットが転送される様子について、図8及び図9を用いて更に説明する。
図8は、ネットワーク中継システム1でのデータパケットの流れの第一の例を図解したものである。また、図9は、図8のデータパケットの流れの第一の例をより明解に図解したシーケンス図である。
図8においては、第一中継装置10を「SW−A」と称し、第二中継装置20を「SW−B」と称している。また、第一中継装置10が備えているポート11−1、11−2、11−3、及び11−4を、それぞれ「P11」、「P12」「P13」、及び「P14」と称している。更に、第二中継装置20が備えているポート21−1、21−2、21−3、及び21−4を、それぞれ「P21」、「P22」「P23」、及び「P24」と称している。
図8の例で想定されているネットワーク構成では、SW−AのP13にスイッチ30が接続されており、このスイッチ30に端末装置A及び端末装置Bが接続されている。また、SW−AのP14にスイッチ40が接続されており、このスイッチ40に端末装置C及び端末装置Dが接続されている。一方、SW−BのP21にスイッチ50が接続されており、このスイッチ50に端末装置Eが接続されている。また、SW−BのP22に端末装置Fが直接接続されている。なお、SW−AのP11とSW−BのP24とが物理的に直接接続されている。
なお、図8において、データベース22−1は、SW−Aであるネットワークスイッチ100が備えているFDB111であり、データベース22−2は、SW−Bであるネットワークスイッチ100が備えているFDB111である。データベース22−1には、SW−Aに入力データパケットの発信元の端末装置のMACアドレスと、このデータパケットが入力されたSW−Aのポートとの関係が示されている。また、データベース22−2には、SW−Bに入力データパケットの発信元の端末装置のMACアドレスと、このデータパケットが入力されたSW−Bのポートとの関係が示されている。
この図8の例では、端末装置Aと端末装置Eとの間、及び、端末装置Cと端末装置Fとの間でそれぞれ通信が行われている場合を想定している。SW−Aは、端末装置Aと端末装置Eとの間、及び、端末装置Cと端末装置Fとの間で交換されているデータパケットに示されている発信元の情報と、これらのデータパケットが入力されたポートとの関係を取得して、データベース22−1を作成している。また、SW−Bも、これらのデータパケットに示されている発信元の情報と、これらのデータパケットが入力されたポートとの関係を取得して、データベース22−2を作成している。
この図8の例において、端末装置Aによる端末装置E宛ての大量のデータパケットの送出に並行して、端末装置Cによる端末装置F宛ての大量のデータパケットの送出が行われて、SW−AのP11でデータトラフィックの輻輳状態が発生した場合を考える。
この場合、P11から出力されるデータパケットが一時的に格納されるキューの長さが前述の通知閾値を上回ることが検出されて、SW−AのP11でのデータトラフィックの輻輳状態の発生が、SW−Aの輻輳状態検出部12により検出される。すると、P11からSW−B宛ての輻輳検出通知パケットがSW−Aの輻輳検出通知送信部13により送信される。なお、前述したように、この輻輳検出通知パケットの送信は所定の時間間隔で繰り返される。
SW−AのP11から送信されたデータパケットは、SW−BのP24を介して輻輳検出通知受信部23により受信され、その種別が輻輳検出通知パケットであることが判明する。すると、SW−Bの備えているデータベース22−2が参照されて、輻輳検出通知パケットが届けられたP24に対応付けられているMACアドレスとして、端末装置Aと端末装置CとのMACアドレスがデータベース22−2から読み出される。すると、SW−Bの宛先装置情報送信部24は、端末装置Aを宛先情報として含む輻輳発生通知パケットと、端末装置Cを宛先情報として含む輻輳発生通知パケットとを、P24から送信する。これらの輻輳発生通知パケットは、SW−Aを経由して、端末装置A及び端末装置Cに届く。端末装置A及び端末装置Cは、輻輳発生通知パケットを受信すると、以降に送信するデータパケットの送出レートを低下させる。この結果、SW−AのP11でのデータトラフィックの輻輳状態が解消され、前述のキューの長さが前述の解除閾値を下回ることが検出されることで、前述した輻輳検出通知パケットの送信の繰り返しが停止される。
次に、図1のネットワーク中継システム1の第二の動作例について説明する。この第二の動作例は、輻輳発生通知パケットの送信を第一中継装置10の輻輳通知パケット送信部15が行う場合の動作である。
まず図10について説明する。図10は、ネットワークスイッチの具体的構成の第二の例を図解したものである。
図10のネットワークスイッチ100は、図2の第一の例と同様に、PFエンジン110と信号処理部120とを備えている。但し、図10の信号処理部120は、図2のものと同様の処理を行うことに加えて、更に、宛先装置情報受信処理221と、輻輳発生通知送信処理222とを行う点が異なっている。
なお、図10の信号処理部120のハードウェアは、図3のハードウェア構成例と同一のものを利用することが可能であるので、ここでは説明を省略する。
次に、図10の信号処理部120のMPU125が行う制御処理について説明する。この処理は、MPU125がフラッシュメモリ126に記録されている制御プログラムを実行することによって提供される。
図10の信号処理部120のMPU125は、図2のものと同様に、制御処理として、輻輳監視処理及びパケット受信処理を行う。なお、このうちの輻輳監視処理の処理内容は、図4にフローチャートで図解した図2の信号処理部120のMPU125が行うものと同様である。そこで、ここでは輻輳監視処理の処理内容の説明を省略する。但し、図4の処理により送信される輻輳検出通知パケットの構造が、図5の構造から少し異なっているので、この構造について説明する。
ここで図11について説明する。図11は、輻輳検出通知パケットの構造の第二の例を図解したものである。
図11に図解されているように、この輻輳検出通知パケットは、「DstMAC」、「SrcMAC」、「Type」、「mode」、及び「data」の各データ格納領域を有している。
「DstMAC」には、この輻輳検出通知パケットの宛先である装置のMACアドレスが格納される。従って、この輻輳検出通知パケットが第二中継装置20宛てのものである場合には、「DstMAC」には第二中継装置20に割り当てられているMACアドレスが格納される。
「SrcMAC」には、この輻輳検出通知パケットの発信元である装置のMACアドレスが格納される。従って、この輻輳検出通知パケットが第一中継装置10から発信されるものである場合には、「SrcMAC」には第一中継装置10に割り当てられているMACアドレスが格納される。
「Type」には、このデータパケットが輻輳検出通知パケット(若しくは、後述する輻輳検出通知応答パケット)であることを表す識別データが格納される。
「mode」には、この輻輳検出通知パケットが、輻輳状態となっているデータトラフィックを形成しているパケットデータの発信元の装置の情報の応答を要求していることを表す識別データが格納される。
「data」には制御データが格納されるが、制御データを輻輳検出通知パケットに格納することは必須ではなく、不要な場合には制御データを輻輳検出通知パケットに格納しなくてもよい。
次に、図10の信号処理部120のMPU125が行うパケット受信処理について説明する。図12は、パケット受信処理の処理内容をフローチャートで図解したものである。
このパケット受信処理は、信号処理部120が、輻輳検出通知受信処理123、宛先装置情報送信処理124、宛先装置情報受信処理221、及び輻輳発生通知送信処理222を行うための処理である。なお、パケット受信処理は、ネットワークスイッチ100が新たなデータパケットを複数のポート21のいずれかで受け取る度に開始される。
なお、図12の説明では、ネットワークスイッチ100を第二中継装置20として使用する場合について説明する。
図12において、S211では、受信したデータパケットが輻輳検出通知応答パケットであったか否かを判定する処理をMPU125が行う。ここで、受信したデータパケットが輻輳検出通知応答パケットであったと判定されたとき(判定結果がYesのとき)にはS212に処理が進む。一方、受信したデータパケットが輻輳検出通知応答パケットではなかったと判定されたとき(判定結果がNoのとき)にはS213に処理が進む。
輻輳検出通知応答パケットは、図11の構造を有する輻輳検出通知パケットの受信に応答して、当該輻輳検出通知パケットの発信元に宛てて送信されるパケットである。図13は、この輻輳検出通知応答パケットの構造の一例を図解したものである。
図13に図解されているように、この輻輳検出通知応答パケットは、「DstMAC」、「SrcMAC」、「Type」、「mode」、及び「MAC情報」の各データ格納領域を有している。
「DstMAC」には、この輻輳検出通知応答パケットの宛先である、輻輳検出通知パケットの発信元装置のMACアドレスが格納される。従って、輻輳検出通知パケットの発信元が第一中継装置10である場合には、「DstMAC」には第一中継装置10に割り当てられているMACアドレスが格納される。
「SrcMAC」には、この輻輳検出通知応答パケットの発信元である装置のMACアドレスが格納される。従って、この輻輳検出通知応答パケットが第二中継装置20から発信されるものである場合には、「SrcMAC」には第二中継装置20に割り当てられているMACアドレスが格納される。
「Type」には、このデータパケットが輻輳検出通知応答パケット(若しくは、前述した輻輳検出通知パケット)であることを表す識別データが格納される。
「mode」には、この輻輳検出通知応答パケットが、輻輳検出通知パケットへの応答の情報として、輻輳状態となっているデータトラフィックを形成しているパケットデータの発信元の装置の情報を有していることを表す識別データが格納される。輻輳検出通知パケットと輻輳検出通知応答パケットとは、この「mode」の識別データの違いにより識別することができる。
「MAC情報」には、輻輳状態となっているデータトラフィックを形成している全てのパケットデータの発信元の装置のMACアドレスが1つずつ格納される。
図12の説明に戻る。S212では、PFエンジン110を制御して、輻輳発生通知パケットを、それぞれの宛先に応じた出力ポートから送信させる処理をMPU125が行い、その後はこのパケット受信処理が終了する。
このS212の処理により送信される輻輳発生通知パケットの構造は、例えば図7に図解したものと同一のものでよい。但し、この輻輳発生通知パケットにおける「DstMAC」のデータ格納領域に格納されるMACアドレスは、S211の処理により受信が確認された輻輳検出通知応答パケットの「MAC情報」に格納されていたものである。MPU125は、S212において、PFエンジン110を制御して、この輻輳発生通知パケットを、輻輳状態のデータトラフィックを形成している全てのデータパケットの発信元へ宛てて送信する。
図12のS213からS217にかけての処理は、輻輳検出通知パケットの受信の検出を行い、この受信が検出された場合には、輻輳検出通知応答パケットを送信して応答するための処理である。
まず、S213では、受信したデータパケットが、図11にその構造を図解した輻輳検出通知パケットであったか否かを判定する処理をMPU125が行う。ここで、受信したデータパケットが輻輳検出通知パケットであったと判定されたとき(判定結果がYesのとき)にはS215に処理が進む。一方、受信したデータパケットが輻輳検出通知パケットではなかったと判定されたとき(判定結果がNoのとき)にはS214に処理が進み、PFエンジン110による通常のデータパケットの中継処理が行われる。
次に、S215では、PFエンジン110のFDB111を参照する処理をMPU125が行う。
次に、S216では、参照中のFDB111の全てのエントリについて、後述するS218の処理による判定を確認済みであるか否かを判定する処理をMPU125が行う。ここで、FDB111の全てのエントリが確認済みであると判定されたとき(判定結果がYesのとき)にはS217に処理が進む。一方、FDB111に未確認のエントリが残っていると判定されたとき(判定結果がNoのとき)には、S218に処理が進む。
S217では、PFエンジン110を制御して、図13に構造の例を図解した輻輳検出通知応答パケットをポート21から送信させる処理をMPU125が行う。なお、この輻輳検出通知応答パケットにおいて、「MAC情報」のデータ格納領域には、後述するS219の情報保持処理によりRAM127で保持されていた全てのMACアドレスが格納される。
S218では、FDB111のうちの未確認のエントリのひとつに注目し、S213の処理で受信が確認された輻輳検出通知パケットが届いたポート21と、このエントリに示されているポートの情報とが一致するか否かを判定する処理をMPU125が行う。ここで、この両者が一致したと判定されたとき(判定結果がYesのとき)にはS219に処理が進む。一方、この両者が一致しないと判定されたとき(判定結果がNoのとき)には、S216に処理が戻ってS216の処理が再度行われる。
S219では情報保持処理をMPU125が行い、その後はS216に処理が戻ってS216の処理が再度行われる。この情報保持処理は、S218の処理で、FDB111において、S213の処理で受信が確認された輻輳検出通知パケットが届いたポート21との一致が判明したポートに対応付けられていたMACアドレスをRAM127に記憶させて保持しておく処理である。従って、前述したS217の処理では、この輻輳検出通知応答パケットにおける「MAC情報」のデータ格納領域に、このMACアドレスを格納したものが送信される。
以上までの処理がパケット受信処理の第二の例である。この処理をMPU125が行うことにより、図1における輻輳検出通知受信部23及び宛先装置情報送信部24の機能並びに輻輳通知パケット送信部15の機能が、図10のネットワークスイッチ100で提供される。
次に、上述した図1のネットワーク中継システム1の第二の動作例に従って各データパケットが転送される様子について、図14及び図15を用いて更に説明する。
図14は、ネットワーク中継システム1でのデータパケットの流れの第二の例を図解したものである。また、図15は、図14のデータパケットの流れの第一の例をより明解に図解したシーケンス図である。
図14においては、図8と同様に、第一中継装置10を「SW−A」と称し、第二中継装置20を「SW−B」と称している。また、第一中継装置10が備えているポート11−1、11−2、11−3、及び11−4を、それぞれ「P11」、「P12」「P13」、及び「P14」と称している。更に、第二中継装置20が備えているポート21−1、21−2、21−3、及び21−4を、それぞれ「P21」、「P22」「P23」、及び「P24」と称している。
図14の例で想定されているネットワーク構成は、図8の例での想定と同一である。すなわち、SW−AのP13にスイッチ30が接続されており、このスイッチ30に端末装置A及び端末装置Bが接続されている。また、SW−AのP14にスイッチ40が接続されており、このスイッチ40に端末装置C及び端末装置Dが接続されている。一方、SW−BのP21にスイッチ50が接続されており、このスイッチ50に端末装置Eが接続されている。また、SW−BのP22に端末装置Fが直接接続されている。なお、SW−AのP11とSW−BのP24とが物理的に直接接続されている。
なお、図14において、データベース22−1は、SW−Aであるネットワークスイッチ100が備えているFDB111であり、データベース22−2は、SW−Bであるネットワークスイッチ100が備えているFDB111である。これらも図8と同様である。
この図14の例においても、図8の例と同様に、端末装置Aと端末装置Eとの間、及び、端末装置Cと端末装置Fとの間でそれぞれ通信が行われている場合を想定している。ここで、端末装置Aによる端末装置E宛ての大量のデータパケットの送出に並行して、端末装置Cによる端末装置F宛ての大量のデータパケットの送出が行われて、SW−AのP11でデータトラフィックの輻輳状態が発生した場合を考える。
この場合、P11から出力されるデータパケットが一時的に格納されるキューの長さが前述の通知閾値を上回ることが検出されて、SW−AのP11でのデータトラフィックの輻輳状態の発生が、SW−Aの輻輳状態検出部12により検出される。すると、P11からSW−B宛ての輻輳検出通知パケットがSW−Aの輻輳検出通知送信部13により送信される。なお、前述したように、この輻輳検出通知パケットの送信は所定の時間間隔で繰り返される。
SW−AのP11から送信されたデータパケットは、SW−BのP24を介して輻輳検出通知受信部23により受信され、その種別が輻輳検出通知パケットであることが判明する。すると、SW−Bの備えているデータベース22−2が参照されて、輻輳検出通知パケットが届けられたP24に対応付けられているMACアドレスとして、端末装置Aと端末装置CとのMACアドレスがデータベース22−2から読み出される。
ここまでの動作は、図8及び図9を用いて説明したネットワーク中継システム1の第一の動作例と同様である。
ここで、端末装置A及び端末装置CのMACアドレスがデータベース22−2から読み出されると、SW−Bの宛先装置情報送信部24は、端末装置A及び端末装置CのMACアドレスを「MAC情報」として含めた輻輳検出通知応答パケットをP24から送信する。この輻輳検出通知応答パケットはSW−AのP11に届く。
輻輳通知パケット送信部15は、この輻輳検出通知応答パケットを受け取ると、輻輳発生通知パケットを送信する。このとき、輻輳通知パケット送信部15は、この輻輳発生通知パケットに、受け取った輻輳検出通知応答パケットの「MAC情報」に含まれている端末装置A及び端末装置CのMACアドレスを、宛先の情報として記して送信する。このとき、端末装置A宛ての輻輳発生通知パケットは、データベース22−2の情報に従い、P13から送信される。また、端末装置C宛ての輻輳発生通知パケットは、データベース22−2の情報に従い、P14から送信される。
端末装置A及び端末装置Cは、輻輳発生通知パケットを受信すると、以降に送信するデータパケットの送出レートを低下させる。この結果、SW−AのP11でのデータトラフィックの輻輳状態が解消され、前述のキューの長さが前述の解除閾値を下回ることが検出されることで、前述した輻輳検出通知パケットの送信の繰り返しが停止される。
なお、以上までに説明した実施形態に関し、更に以下の付記を開示する。
(付記1)
第一中継装置と第二中継装置とを備えているネットワーク中継システムであって、
前記第一中継装置は、
データパケットの入力及び出力を行う、前記第二中継装置に接続されている第一ポートと、
前記第一ポートから前記第二中継装置に転送するデータパケットのトラフィックの輻輳状態を検出する検出部と、
前記輻輳状態を検出したときに、前記第二中継装置へ宛てて、該輻輳状態を検出したことを示す検出通知を送信する第一送信部と、
を備えており、
前記第二中継装置は、
データパケットの入力及び出力を行う複数のポートと、
前記複数のポートの各々について、入力されたデータパケットを転送する宛先と該入力されたデータパケットを出力するポートの識別情報とが対応付けられている記憶部と、
前記第一中継装置から前記検出通知を受信する受信部と、
前記検出通知を受信したときに、前記複数のポートのうち前記第一中継装置に接続されているポートに対応付けられている宛先を前記記憶部から得て、得た宛先に輻輳の通知を送信する第二送信部と、
を備えている、
ことを特徴とするネットワーク中継システム。
(付記2)
前記第一検出部は、前記第一ポートから出力するデータパケットが一時的に格納されるキューの長さが所定の第一閾値を上回ったことを検出することによって前記輻輳状態を検出すると共に、該輻輳状態の検出後に、該キューの長さが、該第一閾値よりも短い所定の第二閾値を下回ったことを検出することによって該輻輳状態の解消を検出し、
前記第一送信部は、前記第一検出部が前記輻輳状態の解消を検出したときには、前記検出通知の送信を停止する、
ことを特徴とする付記1に記載のネットワーク中継システム。
(付記3)
前記第二送信部は、前記輻輳の通知に、該輻輳の通知の宛先の識別情報を含めたものを送信することを特徴とする付記1又は2に記載のネットワーク中継システム。
(付記4)
前記第一送信部が送信した前記検出通知に応答して前記第二中継装置から送られてくる前記宛先の識別情報を受け取ると、前記輻輳の通知に、該輻輳の通知の宛先の識別情報を含めたものを送信する第三送信部を前記第一中継装置が更に有することを特徴とする付記1又は2に記載のネットワーク中継システム。
(付記5)
前記第二中継装置はレイヤ2スイッチであり、
前記記憶部は、前記レイヤ2スイッチにおけるフォワーディング・データベース(FDB)であり、前記宛先がメディア・アクセス・コントロール・アドレス(MACアドレス)で表されている、
ことを特徴とする付記1から4のうちのいずれか一項に記載のネットワーク中継システム。
(付記6)
データパケットの入力及び出力を行う複数のポートと、
前記複数のポートの各々について、入力されたデータパケットを転送する宛先と該入力されたデータパケットを出力するポートの識別情報とが対応付けられている記憶部と、
前記複数のポートのうちの輻輳状態にあるデータパケットのトラフィックが流入しているポートに対応付けられている宛先を前記記憶部から得て、得た宛先に輻輳の通知を送信する第一送信部と、
を備えていることを特徴とするネットワーク中継装置。
(付記7)
前記輻輳状態にあるデータパケットのトラフィックを流入させている流入元装置から、該輻輳状態を検出したことを示している検出通知を受信する受信部を更に備えており、
前記第一送信部は、前記受信部が前記検出通知を受信したときに、前記輻輳の通知を送信する、
ことを特徴とする付記6に記載のネットワーク中継装置。
(付記8)
前記ポートから流出させるデータパケットのトラフィックの輻輳状態を該ポート毎に検出する検出部と、
前記検出部が前記輻輳状態を検出したときに、該輻輳状態を検出したポートに接続されている流出先装置へ宛てて、前記検出通知を送信する第二送信部と、
を更に備えていることを特徴とする付記7に記載のネットワーク中継装置。
(付記9)
前記検出部は、前記ポートから出力するデータパケットが一時的に格納されるキューの長さが所定の第一閾値を上回ったことを検出することによって前記輻輳状態を検出すると共に、該輻輳状態の検出後に、該キューの長さが、該第一閾値よりも短い所定の第二閾値を下回ったことを検出することによって該輻輳状態の解消を検出し、
前記第二送信部は、前記検出部が前記輻輳状態の解消を検出したときには、前記検出通知の送信を停止する、
ことを特徴とする付記8に記載のネットワーク中継装置。
(付記10)
前記第一送信部は、前記輻輳の通知に、該輻輳の通知の宛先の識別情報を含めたものを送信することを特徴とする付記5から9のうちのいずれか一項に記載のネットワーク中継装置。
(付記11)
前記第二送信部が送信した前記検出通知に応答して前記流出先装置から送られてくる前記宛先の識別情報を受け取ると、前記輻輳の通知に、該輻輳の通知の宛先の識別情報を含めたものを送信する第三送信部を更に有することを特徴とする付記8又は9に記載のネットワーク中継装置。
(付記12)
前記ネットワーク中継装置はレイヤ2スイッチであり、
前記記憶部は、前記レイヤ2スイッチにおけるフォワーディング・データベース(FDB)であり、前記宛先がメディア・アクセス・コントロール・アドレス(MACアドレス)で表されている、
ことを特徴とする付記6から11のうちのいずれか一項に記載のネットワーク中継装置。
(付記13)
第一中継装置と第二中継装置とを備えているネットワーク中継システムにおいて発生したデータパケットのトラフィックの輻輳状態を通知する方法であって、
データパケットの入力及び出力を行うポートを備えている前記第一中継装置が、
前記第二中継装置に接続されているポートから該第二中継装置に転送するデータトラフィックの輻輳状態の検出を行い、
前記輻輳状態を検出したときに、前記第二中継装置へ宛てて、該輻輳状態を検出したことを示している検出通知を送信し、
データパケットの入力及び出力を行う複数のポートを備えている前記第二中継装置が、
前記第一中継装置から前記検出通知を受信し、
前記検出通知を受信したときに、前記複数のポートの各々について、入力されとデータパケットを転送する宛先と該入力されたデータパケットを出力するポートの識別情報とが対応付けられている記憶部から、前記第一中継装置に接続されているポートに対応付けられている宛先を得て、得た宛先に輻輳の通知を送信する、
ことを特徴とする輻輳状態通知方法。
(付記14)
ネットワーク中継システムにおいて発生したデータパケットのトラフィックの輻輳状態を、該ネットワーク中継システムが備えている中継装置から通知する方法であって、
データパケットの入力及び出力を行う複数のポートを備えている前記中継装置が、
前記複数のポートの各々について、入力されたデータパケットを転送する宛先と、該入力されたデータパケットを出力するポートの識別情報とが対応付けられている記憶部を参照し、
前記複数のポートのうちの輻輳状態にあるデータパケットのトラフィックが流入しているポートに対応付けられている宛先を前記記憶部から得て、得た宛先に輻輳の通知を送信する、
ことを特徴とする輻輳状態通知方法。
(付記15)
ネットワーク中継システムが備えている中継装置の制御を行う演算処理装置に実行させることによって、該ネットワーク中継システムにおいて発生したデータパケットのトラフィックの輻輳状態の通知を該中継装置から行わせるためのプログラムであって、
前記中継装置はデータパケットの入力及び出力を行う複数のポートを備えており、
前記プログラムは、
前記複数のポートの各々について、入力されたデータパケットを転送する宛先と、該入力されたデータパケットを出力するポートの識別情報とが対応付けられている記憶部を参照する処理と、
前記複数のポートのうちの輻輳状態にあるデータトラフィックが流入しているポートに対応付けられている宛先を前記記憶部から得て、得た宛先に輻輳の通知を該中継装置に送信させる処理と、
を前記演算処理装置に行わせることを特徴とするプログラム。
1 ネットワーク中継システム
2 通信ケーブル
10 第一中継装置
11、11−1、11−2、11−3、11−4 ポート
12 輻輳状態検出部
13 輻輳検出通知送信部
14 キュー
15 輻輳通知パケット送信部
20 第二中継装置
21、21−1、21−2、21−3、21−4 ポート
22、22−1、22−2 データベース
23 輻輳検出通知受信部
24 宛先装置情報送信部
30、40、50 スイッチ
100 ネットワークスイッチ
110 レイヤ2パケットフォワーディングエンジン
111 FDB
120 信号処理部
121 輻輳状態検出処理
122 輻輳検出通知送信処理
123 輻輳検出通知受信処理
124 宛先装置情報送信処理
125 MPU
126 フラッシュメモリ
127 RAM
128 インタフェース部
129 バスライン
130 記録媒体駆動部
131 可搬型記録媒体
221 宛先装置情報受信処理
222 輻輳発生通知送信処理

Claims (9)

  1. 第一中継装置と第二中継装置とを備えているネットワーク中継システムであって、
    前記第一中継装置は、
    データパケットの入力及び出力を行う、前記第二中継装置に接続されている第一ポートと、
    前記第一ポートから前記第二中継装置に転送するデータパケットのトラフィックの輻輳状態を検出する検出部と、
    前記輻輳状態を検出したときに、前記第二中継装置へ宛てて、該輻輳状態を検出したことを示す検出通知を送信する第一送信部と、
    を備えており、
    前記第二中継装置は、
    データパケットの入力及び出力を行う複数のポートと、
    前記複数のポートの各々について、入力されたデータパケットを転送する宛先と該入力されたデータパケットを出力するポートの識別情報とが対応付けられている記憶部と、
    前記第一中継装置から前記検出通知を受信する受信部と、
    前記検出通知を受信したときに、前記複数のポートのうち前記第一中継装置に接続されているポートに対応付けられている宛先を前記記憶部から得て、得た宛先に輻輳の通知を送信する第二送信部と、
    を備えている、
    ことを特徴とするネットワーク中継システム。
  2. 前記検出部は、前記第一ポートから出力するデータパケットが一時的に格納されるキューの長さが所定の第一閾値を上回ったことを検出することによって前記輻輳状態を検出すると共に、該輻輳状態の検出後に、該キューの長さが、該第一閾値よりも短い所定の第二閾値を下回ったことを検出することによって該輻輳状態の解消を検出し、
    前記第一送信部は、前記第一検出部が前記輻輳状態の解消を検出したときには、前記検出通知の送信を停止する、
    ことを特徴とする請求項1に記載のネットワーク中継システム。
  3. 前記第二送信部は、前記輻輳の通知に、該輻輳の通知の宛先の識別情報を含めたものを送信することを特徴とする請求項1又は2に記載のネットワーク中継システム。
  4. 前記第一送信部が送信した前記検出通知に応答して前記第二中継装置から送られてくる前記宛先の識別情報を受け取ると、前記輻輳の通知に、該輻輳の通知の宛先の識別情報を含めたものを送信する輻輳発生通知パケット送信部を更に有することを特徴とする請求項1又は2に記載のネットワーク中継システム。
  5. 前記第二中継装置はレイヤ2スイッチであり、
    前記記憶部は、前記レイヤ2スイッチにおけるフォワーディング・データベース(FDB)であり、前記宛先がメディア・アクセス・コントロール・アドレス(MACアドレス)で表されている、
    ことを特徴とする請求項1から4のうちのいずれか一項に記載のネットワーク中継システム。
  6. データパケットの入力及び出力を行う複数のポートと、
    前記複数のポートの各々について、入力されたデータパケットを転送する宛先と該入力されたデータパケットを出力するポートの識別情報とが対応付けられている記憶部と、
    前記複数のポートのうちの輻輳状態にあるデータパケットのトラフィックを流入させている流入元装置から、該輻輳状態を検出したことを示している検出通知を受信する受信部と、
    前記受信部が前記検出通知を受信したときに、前記輻輳状態にあるデータパケットのトラフィックが流入しているポートに対応付けられている宛先を前記記憶部から得て、得た宛先に輻輳の通知を送信する第一送信部と、
    前記複数のポートの各々から流出させるデータパケットのトラフィックについての輻輳状態を該ポート毎に検出する検出部と、
    前記検出部が前記輻輳状態を検出したときに、該輻輳状態を検出したポートに接続されている流出先装置へ宛てて、前記検出通知を送信する第二送信部と、
    前記第二送信部が送信した前記検出通知に応答して前記流出先装置から送られてくる前記宛先の識別情報を受け取ったときに、前記輻輳の通知に、該輻輳の通知の宛先の識別情報を含めたものを送信する第三送信部と、
    を備えていることを特徴とするネットワーク中継装置。
  7. 第一中継装置と第二中継装置とを備えているネットワーク中継システムにおいて発生したデータパケットのトラフィックの輻輳状態を通知する方法であって、
    データパケットの入力及び出力を行うポートを備えている前記第一中継装置が、
    前記第二中継装置に接続されているポートから該第二中継装置に転送するデータトラフィックの輻輳状態の検出を行い、
    前記輻輳状態を検出したときに、前記第二中継装置へ宛てて、該輻輳状態を検出したことを示している検出通知を送信し、
    データパケットの入力及び出力を行う複数のポートを備えている前記第二中継装置が、
    前記第一中継装置から前記検出通知を受信し、
    前記検出通知を受信したときに、前記複数のポートの各々について、入力されデータパケットを転送する宛先と該入力されたデータパケットを出力するポートの識別情報とが対応付けられている記憶部から、前記第一中継装置に接続されているポートに対応付けられている宛先を得て、得た宛先に輻輳の通知を送信する、
    ことを特徴とする輻輳状態通知方法。
  8. ネットワーク中継システムにおいて発生したデータパケットのトラフィックの輻輳状態を、該ネットワーク中継システムが備えている中継装置から通知する方法であって、
    データパケットの入力及び出力を行う複数のポートを備えている前記中継装置が、
    前記複数のポートの各々について、入力されたデータパケットを転送する宛先と、該入力されたデータパケットを出力するポートの識別情報とが対応付けられている記憶部を参照し、
    前記複数のポートのうちの輻輳状態にあるデータパケットのトラフィックを流入させている流入元装置から、該輻輳状態を検出したことを示している検出通知を受信し、
    前記検出通知を受信したときに、前記輻輳状態にあるデータパケットのトラフィックが流入しているポートに対応付けられている宛先を前記記憶部から得て、得た宛先に輻輳の通知を送信し、
    前記複数のポートの各々から流出させるデータパケットのトラフィックについての輻輳状態を該ポート毎に検出し、
    前記輻輳状態を検出したときに、該輻輳状態を検出したポートに接続されている流出先装置へ宛てて、前記検出通知を送信し、
    送信された前記検出通知に応答して前記流出先装置から送られてくる前記宛先の識別情報を受け取ったときに、前記輻輳の通知に、該輻輳の通知の宛先の識別情報を含めたものを送信する、
    ことを特徴とする輻輳状態通知方法。
  9. ネットワーク中継システムが備えている中継装置の制御を行う演算処理装置に実行させることによって、該ネットワーク中継システムにおいて発生したデータパケットのトラフィックの輻輳状態の通知を該中継装置から行わせるためのプログラムであって、
    前記中継装置はデータパケットの入力及び出力を行う複数のポートを備えており、
    前記プログラムは、
    前記複数のポートの各々について、入力されたデータパケットを転送する宛先と、該入力されたデータパケットを出力するポートの識別情報とが対応付けられている記憶部を参照する処理と、
    前記複数のポートのうちの輻輳状態にあるデータパケットのトラフィックを流入させている流入元装置から、該輻輳状態を検出したことを示している検出通知を前記中継装置に受信させる処理と、
    前記検出通知が受信されたときに、前記輻輳状態にあるデータパケットのトラフィックが流入しているポートに対応付けられている宛先を前記記憶部から得て、得た宛先に輻輳の通知を前記中継装置に送信させる処理と、
    前記複数のポートの各々から流出させるデータパケットのトラフィックについての輻輳状態の該ポート毎の検出を前記中継装置に行わせる処理と、
    前記輻輳状態が検出されたときに、該輻輳状態が検出されたポートに接続されている流出先装置へ宛てた前記検出通知の送信を前記中継装置に行わせる処理と、
    送信された前記検出通知に応答して前記流出先装置から送られてくる前記宛先の識別情報を前記中継装置が受け取ったときに、前記輻輳の通知に、該輻輳の通知の宛先の識別情報を含めたものを前記中継装置に送信させる処理と、
    を前記演算処理装置に行わせることを特徴とするプログラム。
JP2010286690A 2010-12-22 2010-12-22 ネットワーク中継システム、ネットワーク中継装置、輻輳状態通知方法、及びプログラム Expired - Fee Related JP5601193B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2010286690A JP5601193B2 (ja) 2010-12-22 2010-12-22 ネットワーク中継システム、ネットワーク中継装置、輻輳状態通知方法、及びプログラム
US13/233,081 US8792350B2 (en) 2010-12-22 2011-09-15 Network relay system, network relay device, and congested state notifying method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010286690A JP5601193B2 (ja) 2010-12-22 2010-12-22 ネットワーク中継システム、ネットワーク中継装置、輻輳状態通知方法、及びプログラム

Publications (2)

Publication Number Publication Date
JP2012134884A JP2012134884A (ja) 2012-07-12
JP5601193B2 true JP5601193B2 (ja) 2014-10-08

Family

ID=46316651

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010286690A Expired - Fee Related JP5601193B2 (ja) 2010-12-22 2010-12-22 ネットワーク中継システム、ネットワーク中継装置、輻輳状態通知方法、及びプログラム

Country Status (2)

Country Link
US (1) US8792350B2 (ja)
JP (1) JP5601193B2 (ja)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5919727B2 (ja) * 2011-10-26 2016-05-18 富士通株式会社 バッファ管理のためのプログラム、中継装置及び制御方法
JP5831314B2 (ja) * 2012-03-16 2015-12-09 富士通株式会社 通信中継装置、通信中継システム、通信中継装置制御方法及び通信中継プログラム
US9286620B2 (en) * 2012-11-05 2016-03-15 Broadcom Corporation Annotated tracing for data networks
US9917797B2 (en) * 2013-10-01 2018-03-13 Arista Networks, Inc. Method and system for managing switch workloads in a cluster
EP2884707B1 (en) * 2013-12-16 2016-04-27 Alcatel Lucent Method for controlling buffering of packets in a communication network
US9419900B2 (en) * 2013-12-31 2016-08-16 International Business Machines Corporation Multi-bit indicator set according to feedback based on an equilibrium length of a queue
US10505851B1 (en) * 2017-11-29 2019-12-10 Innovium, Inc. Transmission burst control in a network device
US11693800B2 (en) * 2020-07-13 2023-07-04 EMC IP Holding Company LLC Managing IO path bandwidth

Family Cites Families (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5444702A (en) * 1992-09-14 1995-08-22 Network Equipment Technologies, Inc. Virtual network using asynchronous transfer mode
JPH06177913A (ja) * 1992-12-09 1994-06-24 Toshiba Corp パケット交換機
JPH06318951A (ja) * 1993-01-07 1994-11-15 Toshiba Corp セル転送方法およびセル転送システム
JP2639335B2 (ja) * 1993-12-22 1997-08-13 日本電気株式会社 Atm網における輻輳制御方式
DE69637027T2 (de) * 1995-08-02 2007-08-23 Nippon Telegraph And Telephone Corp. Steuereinrichtung für dynamische übertragungsraten
KR100318957B1 (ko) * 1996-09-02 2002-04-22 윤종용 비동기전송모드망에서의폭주통보장치및폭주제어방법
JPH11112557A (ja) * 1997-09-22 1999-04-23 Internatl Business Mach Corp <Ibm> データ伝送装置およびその方法
JP3866425B2 (ja) * 1998-11-12 2007-01-10 株式会社日立コミュニケーションテクノロジー パケットスイッチ
JP4022017B2 (ja) * 1999-03-17 2007-12-12 富士通株式会社 Lan中継装置
US6614756B1 (en) * 1999-08-20 2003-09-02 3Com Corporation Method of detecting and recovering from signaling congestion in an asynchronous transfer mode network
JP4532708B2 (ja) * 2000-09-11 2010-08-25 株式会社日立製作所 通信ネットワークシステムおよびパス接続制御方法
JP2002094514A (ja) * 2000-09-14 2002-03-29 Central Res Inst Of Electric Power Ind 非同期転送モード網における遅延変動抑制制御方法及びシステム
US7180857B2 (en) * 2000-11-24 2007-02-20 Matsushita Electric Industrial Co., Ltd Apparatus and method for flow control
JP3934915B2 (ja) * 2000-11-24 2007-06-20 松下電器産業株式会社 フロー制御装置及び方法
US6957270B1 (en) * 2001-01-16 2005-10-18 Advanced Micro Devices, Inc. Method and apparatus for performing flow control across multiple network devices
JP2002252640A (ja) * 2001-02-23 2002-09-06 Fujitsu Ltd ネットワーク中継装置及び方法並びにシステム
KR100415115B1 (ko) * 2001-11-29 2004-01-13 삼성전자주식회사 통신시스템의 데이터 혼잡 통보 방법 및 장치
JP3843864B2 (ja) * 2002-02-28 2006-11-08 横河電機株式会社 回線接続装置及び当該装置の輻輳状態監視方法
US7130270B2 (en) * 2002-07-26 2006-10-31 International Business Machines Corporation Method and apparatus for varying bandwidth provided to virtual channels in a virtual path
US7573827B2 (en) * 2003-05-06 2009-08-11 Hewlett-Packard Development Company, L.P. Method and apparatus for detecting network congestion
JP4669454B2 (ja) * 2006-08-28 2011-04-13 日本電信電話株式会社 データフレーム中継装置、およびデータ通信網における輻輳制御方法
US20080298248A1 (en) * 2007-05-28 2008-12-04 Guenter Roeck Method and Apparatus For Computer Network Bandwidth Control and Congestion Management
US8121038B2 (en) * 2007-08-21 2012-02-21 Cisco Technology, Inc. Backward congestion notification
US7773519B2 (en) * 2008-01-10 2010-08-10 Nuova Systems, Inc. Method and system to manage network traffic congestion
US7860023B2 (en) * 2008-10-21 2010-12-28 At&T Intellectual Property I, L.P. Layer 2 network rule-based non-intrusive testing verification methodology
US8665886B2 (en) * 2009-03-26 2014-03-04 Brocade Communications Systems, Inc. Redundant host connection in a routed network
JP5353494B2 (ja) * 2009-07-03 2013-11-27 富士通株式会社 通信装置、および通信方法
US8107482B2 (en) * 2009-08-07 2012-01-31 International Business Machines Corporation Multipath discovery in switched ethernet networks
US8358651B1 (en) * 2009-09-21 2013-01-22 Marvell International Ltd. Switch device having a plurality of processing cores

Also Published As

Publication number Publication date
JP2012134884A (ja) 2012-07-12
US20120163176A1 (en) 2012-06-28
US8792350B2 (en) 2014-07-29

Similar Documents

Publication Publication Date Title
JP5601193B2 (ja) ネットワーク中継システム、ネットワーク中継装置、輻輳状態通知方法、及びプログラム
JP4621044B2 (ja) 負荷分散装置および負荷分散方法
RU2019104412A (ru) Чувствительная ко времени программно определяемая сеть
WO2013189414A2 (zh) 网络拓扑自动获取方法及***、网络查询及管理***
TW200814634A (en) Systems and methods for packet forward control
JP5366841B2 (ja) パケット伝送方法およびパケット伝送装置
JP6923809B2 (ja) 通信制御システム、ネットワークコントローラ及びコンピュータプログラム
JP2006197473A (ja) ノード
JP5178573B2 (ja) 通信システムおよび通信方法
JP6915454B2 (ja) 通信プログラム、通信方法及び通信装置
US20090141712A1 (en) Router device
JP5681138B2 (ja) 管理装置、通信システム、中継装置、通信方法、およびプログラム
JP5672385B2 (ja) 伝送システム、ルーティング制御装置および通信装置、並びにルーティング制御方法および通信方法
JP4867848B2 (ja) オーバレイトラヒック検出システム及びトラヒック監視・制御システム
JP4351368B2 (ja) データ転送方法及びそれを用いた通信装置
US9438744B2 (en) Method and data transmission device for data transmission within an xDSL data transmission system connecting at least two ethernet networks via xDSL links
JP5410345B2 (ja) リング型ネットワーク、中継装置及び帯域制御方法
JP2006246087A (ja) データフレーム転送装置およびデータフレーム転送方法
JP6061303B2 (ja) ブリッジ装置、通信制御装置、通信制御方法、ブリッジプログラム及び通信制御プログラム
JP3590789B2 (ja) 光通信網およびプログラムおよび記録媒体
JP3628995B2 (ja) 光通信網およびノードおよびプログラムおよび記録媒体
JP7279388B2 (ja) ルータシステムおよびパケット送信判定方法
JP4751817B2 (ja) パケット転送装置およびネットワークシステム
JP3681698B2 (ja) 光パスネットワークおよびノードおよびプログラムおよび記録媒体
JP4272612B2 (ja) 転送方法、および、エッジスイッチ

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20130904

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20140409

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140422

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140514

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: 20140722

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140804

R150 Certificate of patent or registration of utility model

Ref document number: 5601193

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees