JP2012156729A - 通信制御装置、通信制御方法および通信制御プログラム - Google Patents

通信制御装置、通信制御方法および通信制御プログラム Download PDF

Info

Publication number
JP2012156729A
JP2012156729A JP2011013477A JP2011013477A JP2012156729A JP 2012156729 A JP2012156729 A JP 2012156729A JP 2011013477 A JP2011013477 A JP 2011013477A JP 2011013477 A JP2011013477 A JP 2011013477A JP 2012156729 A JP2012156729 A JP 2012156729A
Authority
JP
Japan
Prior art keywords
port
address information
communication control
destination list
failure
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.)
Granted
Application number
JP2011013477A
Other languages
English (en)
Other versions
JP5553036B2 (ja
Inventor
Keiji Miyazaki
啓二 宮▲崎▼
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 JP2011013477A priority Critical patent/JP5553036B2/ja
Priority to US13/301,911 priority patent/US8665703B2/en
Publication of JP2012156729A publication Critical patent/JP2012156729A/ja
Application granted granted Critical
Publication of JP5553036B2 publication Critical patent/JP5553036B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/30Peripheral units, e.g. input or output ports
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/55Prevention, detection or correction of errors
    • H04L49/555Error detection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/50Address allocation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/40Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass for recovering from a failure of a protocol instance or entity, e.g. service redundancy protocols, protocol state redundancy or protocol service redirection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/22Alternate routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/28Routing or path finding of packets in data switching networks using route fault recovery

Landscapes

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

Abstract

【課題】不要なフラッディングの発生を防止することを課題とする。
【解決手段】通信制御装置は、各ポートを識別するポート番号に対応付けて、前記ポートを介して接続される装置のアドレス情報を記憶する記憶部を有する。通信制御装置は、障害の影響を受ける装置のアドレス情報を含む障害宛先リストを受信する。通信制御装置は、障害宛先リストが受信された場合に、障害宛先リストが受信されたポートを識別するポート番号に対応付けられたアドレス情報を記憶部から抽出する。通信制御装置は、抽出されたアドレス情報と、障害宛先リストに含まれるアドレス情報との両方に含まれるアドレス情報を特定する。通信制御装置は、特定されたアドレス情報で障害宛先リストに含まれるアドレス情報を書き換え、障害宛先リストが受信されたポート以外の各ポートから、書き換えた障害宛先リストを送信する。
【選択図】図2

Description

本発明は、通信制御装置、通信制御方法および通信制御プログラムに関する。
従来、イーサネット(登録商標)スイッチなどの通信制御装置は、広域イーサネット(登録商標)やLAN(Local Area Network)などのネットワークに用いられ、データの転送制御を実施する。この通信制御装置は、複数のポートを有し、サーバや他の通信制御装置と接続される。
また、通信制御装置は、ポートと当該ポートを介して接続される装置のMAC(Media Access Control)アドレスとを対応付けて記憶する学習テーブルを保持し、学習テーブルに従って、受信したデータを宛先に転送する。
ここで、通信制御装置が実行する学習テーブルの学習の例について説明する。通信制御装置は、送信元をアドレスA、宛先をアドレスBとするデータXをポート1から受信し、学習テーブルにアドレスAが登録されていないとする。
この場合、通信制御装置は、送信元のアドレスAとポート1とを対応付けて学習テーブルに登録する。そして、通信制御装置は、宛先のアドレスBが学習テーブルに登録されている場合には、学習テーブルにより特定されるポートからデータXを送信する。一方、通信制御装置は、宛先のアドレスBが学習テーブルに登録されていない場合には、ポート1以外からデータXをフラッディングする。
この結果、通信制御装置は、アドレスAとポート1とを対応付けることができ、以後にアドレスA宛のデータを他ポートから受信した場合には、フラッディングすることなく、ポート1から送信することができる。
そして、通信制御装置は、ポート2で障害を検出した場合、ポート2に接続される宛先アドレスを学習テーブルから特定し、特定した宛先アドレスを障害宛先アドレスとして含めたフラッシュメッセージを全ポートにフラッディングする。このフラッシュメッセージを受信した他の通信制御装置は、フラッシュメッセージに含まれる宛先アドレスに関する情報を学習テーブルから削除し、受信したフラッシュメッセージを受信ポート以外の全ポートにフラッディングする。
国際公開第2008/111128号 特許第4473700号公報
しかしながら、従来の技術では、不要なフラッディングが発生するという課題があった。例えば、従来の技術では、障害時に、ネットワーク内の全ての通信制御装置にフラッシュメッセージを送信していたので、障害に影響されない通信制御装置を送信先とする不要なフラッディングが発生する。
また、障害に影響されない通信制御装置の学習テーブルに記憶される情報まで削除されるので、削除された宛先については、学習テーブルの再学習が実行されることになる。したがって、学習テーブルの再学習に伴って、不要なフラッディングが発生する。
1つの側面では、不要なフラッディングの発生を防止できる通信制御装置、通信制御方法および通信制御プログラムを提供することを目的とする。
第1の案では、通信制御装置は、各ポートを識別するポート番号に対応付けて、前記ポートを介して接続される装置のアドレス情報を記憶する記憶部を有する。通信制御装置は、障害の影響を受ける装置のアドレス情報を含む障害宛先リストを受信する受信部を有する。通信制御装置は、前記受信部によって障害宛先リストが受信された場合に、前記障害宛先リストが受信されたポートを識別するポート番号に対応付けられたアドレス情報を前記記憶部から抽出する抽出部を有する。通信制御装置は、前記抽出部によって抽出されたアドレス情報と、前記受信された障害宛先リストに含まれるアドレス情報との両方に含まれるアドレス情報を特定する特定部を有する。通信制御装置は、前記特定部によって特定されたアドレス情報で前記障害宛先リストに含まれるアドレス情報を書き換え、前記障害宛先リストが受信されたポート以外の各ポートから、書き換えた障害宛先リストを送信する送信部を有する。
不要なフラッディングの発生を防止できる。
図1は、実施例1に係る通信制御装置の構成を示すブロック図である。 図2は、実施例2に係る通信制御装置の構成を示すブロック図である。 図3は、学習テーブルに記憶される情報の例を示す図である。 図4は、障害宛先リストの例を示す図である。 図5は、実施例2に係る通信制御装置を用いて形成されるシステム構成図である。 図6は、通信制御装置Aが保持する学習テーブルの例を示す図である。 図7は、通信制御装置Bが保持する学習テーブルの例を示す図である。 図8は、通信制御装置Cが保持する学習テーブルの例を示す図である。 図9は、通信制御装置Dが保持する学習テーブルの例を示す図である。 図10は、通信制御装置Bにおけるフラッシュメッセージの更新例を示す図である。 図11は、実施例2に係る通信制御装置における障害検出時の処理の流れを示すフローチャートである。 図12は、実施例2に係る通信制御装置におけるフラッシュメッセージ受信時の処理の流れを示すフローチャートである。 図13は、ネットワーク例を示す図である。 図14は、障害の影響を示す図である。 図15は、通信制御プログラムを実行するコンピュータシステムの例を示す図である。
以下に、本願の開示する通信制御装置、通信制御方法および通信制御プログラムの実施例を図面に基づいて詳細に説明する。なお、この実施例によりこの発明が限定されるものではない。実施例で説明する通信制御装置は、例えば、イーサネット(登録商標)スイッチ、スイッチングハブ、レイヤ2スイッチ、ルータ、レイヤ3スイッチ、スイッチ機能を有するサーバなど、ネットワークに用いられてデータの転送制御を実施する装置である。
図1は、実施例1に係る通信制御装置の構成を示すブロック図である。図1に示すように、通信制御装置1は、記憶部1aと受信部1bと抽出部1cと特定部1dと送信部1eとを有し、記憶部1aに記憶される情報に従って、受信したデータを宛先に転送する。
記憶部1aは、各ポートを識別するポート番号に対応付けて、ポートを介して接続される装置のアドレス情報を記憶する。受信部1bは、障害の影響を受ける装置のアドレス情報を含む障害宛先リストを受信する。抽出部1cは、受信部1bによって障害宛先リストが受信された場合に、障害宛先リストが受信されたポートを識別するポート番号に対応付けられたアドレス情報を記憶部1aから抽出する。特定部1dは、抽出部1cによって抽出されたアドレス情報と、受信部1bによって受信された障害宛先リストに含まれるアドレス情報との両方に含まれるアドレス情報を特定する。送信部1eは、特定部1dによって特定されたアドレス情報で障害宛先リストに含まれるアドレス情報を書き換え、障害宛先リストが受信されたポート以外の各ポートから、書き換えた障害宛先リストを送信する。
このように、実施例1に係る通信制御装置1は、受信した障害宛先リストを、障害となった経路で影響のある宛先のみを含む障害宛先リストに更新して、他の装置に転送するので、障害の影響がある宛先のみを初期化することができる。この結果、不要なフラッディングの発生を防止できる。
次に、実施例2に係る通信制御装置について説明する。ここでは、通信制御装置の構成、処理の具体例、処理の流れ、実施例2による効果を順に説明する。
[通信制御装置の構成]
図2は、実施例2に係る通信制御装置の構成を示すブロック図である。図2に示すように、通信制御装置10は、通信制御I/F部11と学習テーブル12と受信部13とスイッチング制御部14と障害検出部15と抽出部16と特定部17と削除部18と送信部19とを有する。なお、ここで図示した各制御部は例であり、これら以外の制御部を有していてもよい。
通信制御I/F部11は、ポート1、ポート2、ポート3〜ポートN(Nは自然数)を有し、他装置との間でやり取りされるデータの送受信を制御する。例えば、通信制御I/F部11は、ポート1〜ポートNで受信されたパケット、フレームなどのデータを受信部13に出力する。また、通信制御I/F部11は、送信部19から入力されたデータをポート1〜ポートNから宛先に送信する。また、通信制御I/F部11が有するポート1〜ポートN各々には、各ポートを識別するポート番号が割り与えられている。
学習テーブル12は、スイッチング制御部14によって学習されたルーティング情報を記憶する。図3は、学習テーブルに記憶される情報の例を示す図である。図3に示すように、学習テーブル12は、「SrcMac」と「ポート番号」とを対応付けて記憶する。ここで記憶される「SrcMac」は、学習された送信元のMACアドレスであり、ポートと接続される装置のMAC(Media Access Control)アドレスである。「ポート番号」は、ポートを一意に識別する識別子である。
図3の例の場合、MACアドレスAの装置がポート番号P1のポートを介して接続されており、MACアドレスAの装置にデータを送信する場合には、ポート番号P1のポートから送信することが示されている。また、MACアドレスBの装置がポート番号P2のポートを介して接続されており、MACアドレスBの装置にデータを送信する場合には、ポート番号P2のポートから送信することが示されている。また、MACアドレスCの装置がポート番号P1のポートを介して接続されており、MACアドレスCの装置にデータを送信する場合には、ポート番号P1のポートから送信することが示されている。
同様に、MACアドレスDの装置がポート番号P3のポートを介して接続されており、MACアドレスDの装置にデータを送信する場合には、ポート番号P3のポートから送信することが示されている。また、MACアドレスEの装置がポート番号P2のポートを介して接続されており、MACアドレスEの装置にデータを送信する場合には、ポート番号P2のポートから送信することが示されている。また、MACアドレスFの装置がポート番号P1のポートを介して接続されており、MACアドレスFの装置にデータを送信する場合には、ポート番号P1のポートから送信することが示されている。
図2に戻り、受信部13は、通信制御I/F部11の各ポートを介してデータを受信する。例えば、受信部13は、各ポートを介して受信したデータのヘッダやペイロード等を参照する。そして、受信部13は、受信されたデータが障害宛先リストを含んだフラッシュメッセージである場合には、当該フラッシュメッセージを抽出部16に出力する。また、受信部13は、受信されたデータがフラッシュメッセージ以外の通常のデータである場合には、当該データをスイッチング制御部14に出力する。また、受信部13は、受信されたデータがSNMP(Simple Network Management Protocol)トラップなどの障害検出を示すメッセージである場合には、当該メッセージを障害検出部15に出力する。なお、受信部13は、データが受信されたポートのポート番号をあわせて上記の各制御部に出力してもよい。
スイッチング制御部14は、受信部13によって受信されたデータを宛先に送信するルーティング制御を実行する。例えば、スイッチング制御部14は、受信部13からデータと当該データが受信されたポート番号等を受け付けて、受け付けたデータのヘッダから宛先のMACアドレスを取得する。続いて、スイッチング制御部14は、受信したデータから取得した宛先MACアドレスが学習テーブル12に記憶されているか否かを判定する。
そして、スイッチング制御部14は、MACアドレスが学習テーブル12に記憶されている場合には、当該MACアドレスに対応するポート番号を学習テーブル12から特定する。その後、スイッチング制御部14は、特定したポート番号が割り与えられたポートから、受信されたデータを送信する。一方、スイッチング制御部14は、MACアドレスが学習テーブル12に記憶されていない場合には、当該データをフラッディングする。言い換えると、スイッチング制御部14は、受信したポート以外のポートから当該データを送信する。
次に、学習テーブル12の学習について説明する。スイッチング制御部14は、受信したデータのヘッダから送信元のMACアドレスを取得する。続いて、スイッチング制御部14は、受信したデータから取得した送信元MACアドレスが学習テーブル12に記憶されているか否かを判定する。
そして、スイッチング制御部14は、送信元MACアドレスが学習テーブル12に記憶されていない場合、当該送信元MACアドレスを学習する。具体的には、スイッチング制御部14は、当該送信元MACアドレスを抽出したデータが受信されたポート番号と当該送信元MACアドレスとを対応付けて学習テーブル12に格納する。
ここで、図3を用いて、学習テーブル12の学習の一例を説明する。例えば、受信部13が、送信元MACアドレスがアドレスGであるデータをポート番号P5から受信し、当該データとポート番号P5をスイッチング制御部14に出力したとする。この場合、スイッチング制御部14は、学習テーブル12を参照し、アドレスGが学習テーブル12に記憶されていないと判定する。そして、スイッチング制御部14は、アドレスGとポート番号P5とを対応付けて、学習テーブル12に格納する。
図2に戻り、障害検出部15は、障害を検出した場合に、障害宛先リストを含むフラッシュメッセージを生成して、各ポートから送信する。例えば、障害検出部15は、受信部13によって障害検出メッセージが受信された場合、ネットワークモニタなどによる各ポートの監視によってデータ滞留を検出した場合、物理的なハードウェアエラーを検出した場合に障害発生を検出する。なお、障害検出部15が障害検出に用いる手法は、監視ソフトウェアやSNMPなど公知の様々な手法を用いることができる。
一例として、障害検出部15は、ポート番号P1のポートで障害が検出された場合、図3に示した学習テーブル12を参照し、ポート番号P1に対応付けられたアドレスA、アドレスC、アドレスFを抽出する。そして、障害検出部15は、抽出したアドレスA、アドレスC、アドレスFを障害宛先リストに含むフラッシュメッセージを生成する。その後、障害検出部15は、生成したフラッシュメッセージを、障害が検出されたポート番号P1以外のポートから送信する。
抽出部16は、受信部13によって障害宛先リストが受信された場合に、障害宛先リストが受信されたポートを識別するポート番号に対応付けられたアドレス情報を学習テーブル12から抽出する。例えば、受信部13が、障害宛先リストを含むフラッシュメッセージをポート番号P1から受信したとする。この場合、抽出部16は、受信部13からポート番号P1とフラッシュメッセージとを受信する。
そして、抽出部16は、ポート番号P1と対応付けられたアドレスA、アドレスC、アドレスFを抽出して、特定部17に出力する。なお、抽出部16は、受信部13から受信したポート番号P1とフラッシュメッセージについても、特定部17に出力する。
特定部17は、抽出部16によって抽出されたアドレス情報と、受信部13によって受信された障害宛先リストに含まれるアドレス情報との両方に含まれるアドレス情報を特定する。例えば、受信部13によって、図4に示した障害宛先リストを含むフラッシュメッセージが受信された場合の例について説明する。図4は、障害宛先リストの例を示す図である。
この場合、特定部17は、図4に示す障害宛先リストを含むフラッシュメッセージを抽出部16から受信し、当該障害宛先リストからアドレスA、アドレスC、アドレスEを抽出する。また、特定部17は、フラッシュメッセージが受信されたポート番号P1に対応付けられたアドレス情報として学習テーブル12に記憶されるアドレスA、アドレスC、アドレスFを抽出部16から受信する。
そして、特定部17は、フラッシュメッセージから抽出したアドレスA、アドレスC、アドレスEと、抽出部16から受信したアドレスA、アドレスC、アドレスFとを比較する。この結果、特定部17は、両方に含まれるアドレス情報として、アドレスA、アドレスCを特定する。その後、特定部17は、特定したアドレスAとアドレスCと、フラッシュメッセージが受信されたポート番号P1とを削除部18と送信部19に出力する。
削除部18は、特定部17によって特定されたアドレス情報を学習テーブル12から削除する。上記例を用いて具体的に説明すると、削除部18は、特定部17からアドレスAとアドレスCとを受信する。この場合、削除部18は、学習テーブル12を参照し、アドレスAを有するレコードである「アドレスA、ポート番号P1」と、アドレスCを有するレコードである「アドレスC、ポート番号P1」を学習テーブル12から削除する。
送信部19は、特定部17によって特定されたアドレス情報で障害宛先リストに含まれるアドレス情報を書き換え、障害宛先リストが受信されたポート以外の各ポートから、書き換えた障害宛先リストを送信する。例えば、送信部19は、特定されたアドレスAとアドレスCと、受信されたフラッシュメッセージと、フラッシュメッセージが受信されたポート番号P1とを特定部17から受信する。
そして、送信部19は、受信されたフラッシュメッセージに含まれる障害宛先リスト「アドレスA、アドレスC、アドレスE」を、特定部17によって特定された「アドレスA、アドレスC」に書き換えて、新たな障害宛先リストを生成する。その後、送信部19は、生成した新たな障害宛先リストを含む新たなフラッシュメッセージを、更新前のフラッシュメッセージが受信されたポート番号P1以外のポート各々から送信する。また、送信部19は、特定部17が比較した結果、両方に含まれるアドレスが存在しない場合には、受信されたフラッシュメッセージの送信を停止する。
[処理の具体例]
次に、図5〜図10を用いて、実施例2に係る通信制御装置における処理の具体例を説明する。図5は、実施例2に係る通信制御装置を用いて形成されるシステム構成図である。図6は、通信制御装置Aが保持する学習テーブルの例を示す図である。図7は、通信制御装置Bが保持する学習テーブルの例を示す図である。図8は、通信制御装置Cが保持する学習テーブルの例を示す図である。図9は、通信制御装置Dが保持する学習テーブルの例を示す図である。図10は、通信制御装置Bにおけるフラッシュメッセージの更新例を示す図である。
図5に示すように、このシステムは、通信制御装置Aと通信制御装置Bと通信制御装置Cと通信制御装置Dとが互いに通信可能に接続されている。具体的には、通信制御装置Aは、ポート番号P3を介して通信制御装置Bと接続される。通信制御装置Bは、ポート番号P1を介して通信制御装置Aと接続され、ポート番号P3を介して通信制御装置Cと接続される。通信制御装置Cは、ポート番号P1を介して通信制御装置Bと接続され、ポート番号P3を介して通信制御装置Dと接続される。通信制御装置Dは、ポート番号P1を介して通信制御装置Cと接続される。なお、各装置における上記したポート番号以外のポートは、図示しない他の装置や他のネットワークに接続されている。
そして、通信制御装置Aは、図6の左図に示すように、「項番、SrcMac、ポート番号」として「1、A、P1」、「2、B、P2」、「3、C、P1」、「4、D、P3」、「5、E、P1」、「6、F、P2」を記憶する学習テーブルを有する。また、通信制御装置Bは、図7の左図に示すように、「項番、SrcMac、ポート番号」として「1、A、P1」、「2、B、P2」、「3、C、P1」、「4、D、P3」、「5、E、P4」、「6、F、P1」を記憶する学習テーブルを有する。
また、通信制御装置Cは、図8の左図に示すように、「項番、SrcMac、ポート番号」として「1、A、P1」、「2、B、P2」、「3、C、P2」、「4、D、P3」、「5、E、P4」、「6、F、P1」を記憶する学習テーブルを有する。また、通信制御装置Dは、図9に示すように、「項番、SrcMac、ポート番号」として「1、A、P2」、「2、B、P2」、「3、C、P2」、「4、D、P3」、「5、E、P4」、「6、F、P1」を記憶する学習テーブルを有する。
このような状態において、図5に示したように、通信制御装置Aがポート番号P1のポートで障害を検出したとする。この場合、通信制御装置Aは、障害が検出されたポート番号P1と対応付けられたアドレスとして「A、C、E」を学習テーブルから特定する。続いて、通信制御装置Aは、図6の右図に示すように、特定されたアドレス「A、C、E」を有する項番1、3、5を図6の左図に示した学習テーブルから削除して、新たに項番を割り当てる。そして、通信制御装置Aは、特定したアドレス「A、C、E」を障害宛先リストとするフラッシュメッセージを生成し、生成したフラッシュメッセージをポート番号P1以外のポートであるポート番号P2、P3、P4各々のポートから送信する。
そして、通信制御装置Bは、通信制御装置Aから送信されたフラッシュメッセージをポート番号P1のポートで受信する。続いて、通信制御装置Bは、図10に示すように、自装置が有する学習テーブルを参照して、フラッシュメッセージを受信したポート番号P1と対応付けられたアドレスとして「A、C、F」を抽出する。そして、通信制御装置Bは、受信したフラッシュメッセージに含まれるアドレス「A、C、E」と、自装置の学習テーブルから抽出したアドレス「A、C、F」とを比較して、両方に含まれるアドレス「A、C」を特定する。その後、通信制御装置Bは、受信したフラッシュメッセージの障害宛先リスト「A、C、E」を、特定した「A、C」に更新する。そして、通信制御装置Bは、更新した障害宛先リスト「A、C」を含むフラッシュメッセージを、フラッシュメッセージを受信したP1以外のポートであるP2、P3、P4各々のポートから送信する。また、通信制御装置Bは、図7の右図に示すように、特定されたアドレス「A、C」を有する項番1、3のレコードを図7の左図に示す学習テーブルから削除して、各レコードに新たに項番を割り当てる。
そして、通信制御装置Cは、通信制御装置Bから送信されたフラッシュメッセージをポート番号P1のポートで受信する。続いて、通信制御装置Cは、通信制御装置Bと同様に、自装置が有する学習テーブルを参照して、フラッシュメッセージを受信したポート番号P1と対応付けられたアドレスとして「A、F」を抽出する。そして、通信制御装置Cは、受信したフラッシュメッセージに含まれるアドレス「A、C」と、自装置の学習テーブルから抽出したアドレス「A、F」とを比較して、両方に含まれるアドレス「A」を特定する。その後、通信制御装置Cは、受信したフラッシュメッセージの障害宛先リスト「A、C」を、特定した「A」に更新する。そして、通信制御装置Cは、更新した障害宛先リスト「A」を含むフラッシュメッセージを、フラッシュメッセージを受信したP1以外のポートであるP2、P3、P4各々のポートから送信する。また、通信制御装置Cは、図8の右図に示すように、特定されたアドレス「A」を有する項番1のレコードを図8の左図に示した学習テーブルから削除して、各レコードに新たに項番を割り当てる。
そして、通信制御装置Dは、通信制御装置Cから送信されたフラッシュメッセージをポート番号P1のポートで受信する。続いて、通信制御装置Dは、通信制御装置B、Cと同様に、自装置が有する学習テーブルを参照して、フラッシュメッセージを受信したポート番号P1と対応付けられたアドレスとして「F」を抽出する。そして、通信制御装置Dは、受信したフラッシュメッセージに含まれるアドレス「A」と、自装置の学習テーブルから抽出したアドレス「F」とを比較して、両方に含まれるアドレスがないと判定する。したがって、通信制御装置Dは、受信したフラッシュメッセージを破棄し、自装置の学習テーブルの更新をすることなく、さらに、フラッシュメッセージの転送も停止する。このように、各通信制御装置は、障害の影響を受ける宛先のみ学習テーブルから削除するとともに、障害宛先リストを更新して、接続される装置に送信する。
[処理の流れ]
次に、図11と図12を用いて、通信制御装置が実行する処理について説明する。ここでは、図11を用いて障害検出時の流れを説明し、図12を用いてフラッシュメッセージ受信時の流れを説明する。なお、ここでは、各処理を上述した通信制御装置10を実行する例で説明する。
(障害検出時の流れ)
図11は、実施例2に係る通信制御装置における障害検出時の処理の流れを示すフローチャートである。図11に示すように、通信制御装置10の障害検出部15は、障害を検出した場合(ステップS101Yes)、障害を検出したポートのポート番号を特定する(ステップS102)。
続いて、障害検出部15は、学習テーブル12を参照し、特定したポート番号に対応付けられたアドレスを、障害の影響がある宛先として特定する(ステップS103)。そして、障害検出部15は、特定したアドレスを障害宛先リストとするフラッシュメッセージを生成し(ステップS104)、生成したフラッシュメッセージを障害が検出されたポート以外の全ポートから送信するフラッディングを実行する(ステップS105)。その後、ステップS101に戻って以降の処理を繰り返し実行する。
(フラッシュメッセージ受信時の流れ)
図12は、実施例2に係る通信制御装置におけるフラッシュメッセージ受信時の処理の流れを示すフローチャートである。図12に示すように、通信制御装置10の抽出部16は、受信部13によってフラッシュメッセージが受信された場合(ステップS201Yes)、当該フラッシュメッセージが受信されたポートのポート番号を特定する(ステップS202)。
そして、抽出部16は、特定した受信ポートに対応する学習済みの宛先アドレスのリストを生成する(ステップS203)。つまり、抽出部16は、特定したポート番号に対応付けられたアドレス情報を学習テーブル12から抽出する。
続いて、抽出部16は、受信されたフラッシュメッセージに含まれる障害宛先リストからアドレスを抽出する(ステップS204)。そして、特定部17は、フラッシュメッセージから抽出したアドレスと学習テーブル12から抽出したアドレスとを比較する(ステップS205)。
その後、特定部17が比較した結果、両方に含まれるアドレスが存在する場合には(ステップS206Yes)、削除部18は、両方に含まれるアドレスを含むレコードを学習テーブル12から削除する(ステップS207)。続いて、送信部19は、受信されたフラッシュメッセージに含まれる障害宛先リストを、特定部17がステップS205の比較によって特定したアドレスで書き換えた新たなフラッシュメッセージを生成する(ステップS208)。その後、送信部19は、生成した新たなフラッシュメッセージを、更新前のフラッシュメッセージが受信されたポート番号以外のポート各々から送信し(ステップS209)、ステップS201以降の処理を繰り返す。
一方、送信部19は、特定部17が比較した結果、両方に含まれるアドレスが存在しない場合には(ステップS206No)、受信されたフラッシュメッセージの送信を停止し(ステップS210)、ステップS201以降の処理を繰り返す。
[実施例2による効果]
実施例2によれば、通信制御装置は、受信したフラッシュメッセージに含まれる障害宛先リストと受信したポート番号とから、自装置に影響を及ぼす宛先を特定し、特定した宛先のみを学習テーブルから削除する。そして、通信制御装置は、受信したフラッシュメッセージに含まれる障害宛先リストを更新した上で、接続される他の装置に転送することができる。この結果、各通信制御装置は、障害の影響を受ける宛先のみを削除して、フラッシュメッセージを転送することができ、不要なフラッディングの発生を防止できる。
例えば、図13に示したネットワークにおけるN4−N5間で障害が発生した例について説明する。図13は、ネットワーク例を示す図であり、図14は、障害の影響を示す図である。
図13に例示するネットワークでは、通信制御装置を示すN1からN8までが接続されている。具体的には、N1は、N2とN4と接続され、N2は、N1とN3とN4とN5と接続され、N3は、N2とN6とN7と接続され、N4は、MACアドレスAの装置とN1とN2とN5と接続される。また、N5は、N2とN4とN6とN8とに接続され、N6は、N3とN5とN7とN8とに接続され、N7は、N3とN6とに接続され、N8は、N5とN6とに接続される。
また、図13の各Nに示したAは、MACアドレスAの装置を宛先とするデータの送信ポートを示す。一例として、N2は、宛先がMACアドレスAであるデータをN4に対して送信する。また、N8は、宛先がMACアドレスAであるデータをN5に対して送信する。
このような状態において、N5は、N4と接続されるポート1で障害を検出した場合、MACアドレスAを障害宛先リストとするフラッシュメッセージをポート1以外のポートから送信する。つまり、N5は、フラッシュメッセージをN2とN6とN8に送信する。そして、N2では、N5からフラッシュメッセージを受信したポートと宛先MACアドレスの送信先ポートとが異なることより、学習テーブルの更新も実行せず、N1、N4、N3へのフラッシュメッセージの転送も実行しない。つまり、N2は、MACアドレスAに対してデータを送信する場合には、N4に対して送信するため、N5からMACアドレスA宛てが障害であることを受信しても、この情報を破棄することができる。
同様に、N6では、N5からフラッシュメッセージを受信したポートと宛先MACアドレスの送信先ポートとが同じことより、学習テーブルからMACアドレスAを削除し、N3、N7、N8へフラッシュメッセージを送信する。また、N8では、N5からフラッシュメッセージを受信したポートと宛先MACアドレスの送信先ポートとが同じことより、学習テーブルからMACアドレスAを削除し、N6へのフラッシュメッセージを送信する。
そして、N7では、N6からフラッシュメッセージを受信したポートと宛先MACアドレスの送信先ポートとが同じことより、学習テーブルからMACアドレスAを削除し、N3へのフラッシュメッセージを送信する。N6では、既に学習テーブルからMACアドレスAが削除済みであるが、N8からフラッシュメッセージを受信したポートと宛先MACアドレスの送信先ポートとが異なる。このため、N6では、学習テーブルの更新も実行せず、フラッシュメッセージの転送も実行しない。
また、N3では、N6およびN7からフラッシュメッセージを受信した場合でも、受信ポートと宛先MACアドレスの送信先ポートとが異なることより、学習テーブルの更新も実行せず、フラッシュメッセージの転送も実行しない。
上述したように、N5からMACアドレスAを含むフラッシュメッセージがネットワーク内に送信された場合、図14に示すように、障害の影響がない通信制御装置では、学習テーブルの更新が実行されない。一方、障害の影響がある通信制御装置では、学習テーブルの更新が実行される。具体的には、MACアドレスAを宛先とするデータがN5を経由しないN1、N2、N3、N4については、学習テーブルの更新が実行されない。一方、MACアドレスAを宛先とするデータがN5を経由するN5、N6、N7、N8については、学習テーブルの更新が実行される。
このように、障害の影響を受ける通信制御装置のみの学習テーブルの更新が実行され、障害の影響を受けない通信制御装置の学習テーブルの更新が実行されないように制御することができる。
さて、これまで本発明の実施例について説明したが、本発明は上述した実施例以外にも、種々の異なる形態にて実施されてよいものである。そこで、以下に異なる実施例を説明する。
(アドレス情報)
例えば、実施例1〜2では、アドレス情報としてMACアドレスを用いた例について説明したが、これに限定されるものではなく、IP(Internet Protocol)アドレスなど他の情報を用いることもできる。
(システム)
また、本実施例において説明した各処理のうち、自動的におこなわれるものとして説明した処理の全部または一部を手動的におこなうこともできる。あるいは、手動的におこなわれるものとして説明した処理の全部または一部を公知の方法で自動的におこなうこともできる。この他、上記文書中や図面中で示した処理手順、制御手順、具体的名称、例えば図3、図4、図6〜図9等に示した各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、例えば抽出部16と特定部17とを統合するなど各装置の分散・統合の具体的形態は図示のものに限られない。つまり、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。さらに、各装置にて行なわれる各処理機能は、その全部または任意の一部が、CPUおよび当該CPUにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
(プログラム)
ところで、上記の実施例で説明した各種の処理は、あらかじめ用意されたプログラムをパーソナルコンピュータやワークステーションなどのコンピュータシステムで実行することによって実現することができる。そこで、以下では、上記の実施例と同様の機能を有するプログラムを実行するコンピュータシステムの一例を説明する。
図15は、通信制御プログラムを実行するコンピュータシステムの例を示す図である。図15に示すように、コンピュータシステム100は、バス100aにCPU105、ROM(Read Only Memory)104、RAM(Random Access Memory)101が接続される。また、コンピュータシステム100は、バス100aにNIC(Network Interface Card)102、HDD(Hard Disk Drive)103が接続されている。また、HDD103には、図2に示した学習テーブル12に対応する学習テーブル103aが設けられる。
ROM104は、通信制御プログラム104aを保持する。記録媒体の例としてROM104を例に挙げたが、HDD、RAM、CD−ROM等の他のコンピュータ読み取り可能な記録媒体に各種プログラムを格納しておき、コンピュータに読み取らせることとしてもよい。なお、記憶媒体を遠隔地に配置し、コンピュータが、その記憶媒体にアクセスすることでプログラムを取得して利用してもよい。また、その際、取得したプログラムをそのコンピュータ自身の記録媒体に格納して用いてもよい。
CPU105は、通信制御プログラム104aを読み出して実行することで、受信部13、スイッチング制御部14、障害検出部15、抽出部16、特定部17、削除部18、送信部19と同様の動作を通信制御プロセス105aとして実現する。このようにコンピュータシステム100は、ROM104からプログラムを読み出して実行することで通信制御方法を実行する通信制御装置として動作する。
1 通信制御装置
1a 記憶部
1b 受信部
1c 抽出部
1d 特定部
1e 送信部
10 通信制御装置
11 通信制御I/F部
12 学習テーブル
13 受信部
14 スイッチング制御部
15 障害検出部
16 抽出部
17 特定部
18 削除部
19 送信部

Claims (5)

  1. 各ポートを識別するポート番号に対応付けて、前記ポートを介して接続される装置のアドレス情報を記憶する記憶部と、
    障害の影響を受ける装置のアドレス情報を含む障害宛先リストを受信する受信部と、
    前記受信部によって障害宛先リストが受信された場合に、前記障害宛先リストが受信されたポートを識別するポート番号に対応付けられたアドレス情報を前記記憶部から抽出する抽出部と、
    前記抽出部によって抽出されたアドレス情報と、前記受信された障害宛先リストに含まれるアドレス情報との両方に含まれるアドレス情報を特定する特定部と、
    前記特定部によって特定されたアドレス情報で前記障害宛先リストに含まれるアドレス情報を書き換え、前記障害宛先リストが受信されたポート以外の各ポートから、書き換えた障害宛先リストを送信する送信部と
    を有することを特徴とする通信制御装置。
  2. 前記特定部によって特定されたアドレス情報を前記記憶部から削除する削除部をさらに有することを特徴とする請求項1に記載の通信制御装置。
  3. 前記送信部は、前記抽出部によって抽出されたアドレス情報と、前記受信された障害宛先リストに含まれるアドレス情報との両方に含まれるアドレス情報が存在しないと前記特定部によって特定された場合には、前記障害宛先リストを送信しないことを特徴とする請求項1または2に記載の通信制御装置。
  4. コンピュータによって実行される通信制御方法であって、
    障害の影響を受ける装置のアドレス情報を含む障害宛先リストを受信し、
    前記障害宛先リストを受信した場合に、前記障害宛先リストが受信されたポートを識別するポート番号に対応付けられたアドレス情報を、各ポートを識別するポート番号に対応付けて、前記ポートを介して接続される装置のアドレス情報を記憶する記憶部から抽出し、
    前記抽出したアドレス情報と、前記受信された障害宛先リストに含まれるアドレス情報との両方に含まれるアドレス情報を特定し、
    前記特定したアドレス情報で前記障害宛先リストに含まれるアドレス情報を書き換え、前記障害宛先リストが受信されたポート以外の各ポートから、書き換えた障害宛先リストを送信する、
    ことを特徴とする通信制御方法。
  5. コンピュータに、
    障害の影響を受ける装置のアドレス情報を含む障害宛先リストを受信し、
    前記障害宛先リストを受信した場合に、前記障害宛先リストが受信されたポートを識別するポート番号に対応付けられたアドレス情報を、各ポートを識別するポート番号に対応付けて、前記ポートを介して接続される装置のアドレス情報を記憶する記憶部から抽出し、
    前記抽出したアドレス情報と、前記受信された障害宛先リストに含まれるアドレス情報との両方に含まれるアドレス情報を特定し、
    前記特定したアドレス情報で前記障害宛先リストに含まれるアドレス情報を書き換え、前記障害宛先リストが受信されたポート以外の各ポートから、書き換えた障害宛先リストを送信する、
    処理を実行させることを特徴とする通信制御プログラム。
JP2011013477A 2011-01-25 2011-01-25 通信制御装置、通信制御方法および通信制御プログラム Expired - Fee Related JP5553036B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2011013477A JP5553036B2 (ja) 2011-01-25 2011-01-25 通信制御装置、通信制御方法および通信制御プログラム
US13/301,911 US8665703B2 (en) 2011-01-25 2011-11-22 Communication control apparatus and communication control method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011013477A JP5553036B2 (ja) 2011-01-25 2011-01-25 通信制御装置、通信制御方法および通信制御プログラム

Publications (2)

Publication Number Publication Date
JP2012156729A true JP2012156729A (ja) 2012-08-16
JP5553036B2 JP5553036B2 (ja) 2014-07-16

Family

ID=46544116

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011013477A Expired - Fee Related JP5553036B2 (ja) 2011-01-25 2011-01-25 通信制御装置、通信制御方法および通信制御プログラム

Country Status (2)

Country Link
US (1) US8665703B2 (ja)
JP (1) JP5553036B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20200244580A1 (en) * 2019-01-29 2020-07-30 Hewlett Packard Enterprise Development Lp Automated recovery from network traffic congestion

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007324688A (ja) * 2006-05-30 2007-12-13 Alaxala Networks Corp スイッチおよびネットワークの障害回復方法
JP2010263395A (ja) * 2009-05-07 2010-11-18 Hitachi Cable Ltd ネットワーク中継機器及びリングネットワーク
JP2011029829A (ja) * 2009-07-23 2011-02-10 Alaxala Networks Corp ネットワーク中継装置、その制御方法およびコンピュータプログラム

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6731596B1 (en) * 1999-04-01 2004-05-04 Advanced Micro Devices, Inc. Network switch having system for automatically detecting change in network node connection
DE10062404A1 (de) * 2000-12-14 2002-06-27 Infineon Technologies Ag Vorrichtung und Verfahren zum Reduzieren der Anzahl von Adressen fehlerhafter Speicherzellen
US7107501B2 (en) * 2002-05-31 2006-09-12 Infineon Technologies Ag Test device, test system and method for testing a memory circuit
CN1788460B (zh) * 2004-06-07 2014-01-29 日本电信电话株式会社 住宅网络设置方法和家庭网关装置
JP4473700B2 (ja) * 2004-11-02 2010-06-02 富士通株式会社 パケット伝送装置およびパケット伝送方法
JP4729117B2 (ja) 2007-03-14 2011-07-20 富士通株式会社 エッジスイッチ及びフォワーディングテーブルの書き換え方法
US8170033B1 (en) * 2009-04-06 2012-05-01 Juniper Networks, Inc. Virtual private local area network service (VPLS) flush mechanism for BGP-based VPLS networks

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007324688A (ja) * 2006-05-30 2007-12-13 Alaxala Networks Corp スイッチおよびネットワークの障害回復方法
JP2010263395A (ja) * 2009-05-07 2010-11-18 Hitachi Cable Ltd ネットワーク中継機器及びリングネットワーク
JP2011029829A (ja) * 2009-07-23 2011-02-10 Alaxala Networks Corp ネットワーク中継装置、その制御方法およびコンピュータプログラム

Also Published As

Publication number Publication date
JP5553036B2 (ja) 2014-07-16
US20120188866A1 (en) 2012-07-26
US8665703B2 (en) 2014-03-04

Similar Documents

Publication Publication Date Title
CN104081731B (zh) 网络系统以及管理拓扑的方法
US9294395B2 (en) Media access control bridging in a mesh network
US8842673B2 (en) Communication system, communication device, controller, and method and program for controlling forwarding path of packet flow
US10263808B2 (en) Deployment of virtual extensible local area network
US20070195794A1 (en) Virtual lan system and node device
US10680893B2 (en) Communication device, system, and method
US7864666B2 (en) Communication control apparatus, method and program thereof
KR20090028531A (ko) 분산 브릿지에서의 mac 어드레스 학습
US8451842B2 (en) Media access control bridging in a mesh network
US8218446B2 (en) Frame transfer route confirmation method, node, frame transfer route confirmation program and frame transfer route confirmation system
US20140086250A1 (en) Communication device and address learning method
US20190215191A1 (en) Deployment Of Virtual Extensible Local Area Network
US9344352B2 (en) Transfer device, communication system, and roundabout path detecting method
US9893979B2 (en) Network topology discovery by resolving loops
US20150304215A1 (en) Packet relay apparatus, packet transfer method, and communication system
JP5553036B2 (ja) 通信制御装置、通信制御方法および通信制御プログラム
US10148515B2 (en) Determining connections of non-external network facing ports
US9667439B2 (en) Determining connections between disconnected partial trees
JP2015509351A (ja) 常用冗長リンクを備えた階層ネットワーク
JP2017034365A (ja) ネットワークシステムおよびパケット転送方法
US20190089674A1 (en) Communication system, flow control apparatus, flow processing apparatus, and control method
US20130259061A1 (en) Router device, packet control method based on prefix management, and program
CN103595629A (zh) 一种irdp网络中主机网关快速切换的方法和装置
JP2017022579A (ja) 通信システム、通信ノード、および通信システムにおける代替処理方法
JP6541441B2 (ja) スイッチ装置および中継システム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20131007

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20140418

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140513

R150 Certificate of patent or registration of utility model

Ref document number: 5553036

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees