JP5772568B2 - 通信装置及び通信方法 - Google Patents

通信装置及び通信方法 Download PDF

Info

Publication number
JP5772568B2
JP5772568B2 JP2011277580A JP2011277580A JP5772568B2 JP 5772568 B2 JP5772568 B2 JP 5772568B2 JP 2011277580 A JP2011277580 A JP 2011277580A JP 2011277580 A JP2011277580 A JP 2011277580A JP 5772568 B2 JP5772568 B2 JP 5772568B2
Authority
JP
Japan
Prior art keywords
port
card
circuit
data block
identification information
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
JP2011277580A
Other languages
English (en)
Other versions
JP2013128250A (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 JP2011277580A priority Critical patent/JP5772568B2/ja
Priority to US13/665,154 priority patent/US8923291B2/en
Publication of JP2013128250A publication Critical patent/JP2013128250A/ja
Application granted granted Critical
Publication of JP5772568B2 publication Critical patent/JP5772568B2/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
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4604LAN interconnection over a backbone network, e.g. Internet, Frame Relay
    • H04L12/462LAN interconnection over a bridge based backbone
    • H04L12/4625Single bridge functionality, e.g. connection of two networks over a single bridge
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4641Virtual LANs, VLANs, e.g. virtual private networks [VPN]

Landscapes

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

Description

本発明は、受信したデータブロックを複数のポートから送信する通信装置及び通信方法に関する。
近年のインターネットやモバイルネットワークの普及により、キャリアネットワークにおいて、Ethernet(登録商標)技術やIP(Internet Protocol)技術を利用し
たパケット系ネットワークの利用が進んでいる。ここでは、パケットと呼ばれる一まとまりの単位で、データが送受信されるネットワークをパケット系ネットワークと称する。尚、本明細書においては、パケットとフレームとは同義であるとする。
IPネットワークやEthernet(登録商標)ネットワーク等のパケット系ネットワークにおける通信装置では、フレームをコピーして複数のポートから送信することがある。例えば、スイッチにおけるEhernet(登録商標)フレームのフラッディング、すなわち、複数ポートへの転送がある。また、例えば、ルータにおける、ビデオ配信サービスやIP−TV(IP-TeleVision)サービス等のIPフレームのマルチキャスト転送が
ある。
フレームの複数ポートからの送信は、例えば、ユーザをグループ化することによって行われている。例えば、スイッチでは、VLAN(Virtual Local Area Network)等でポートをグループ化することによって、各ポートの配下のユーザをグループ化する。例えば、ルータでは、IPマルチキャストグループを用いて、ユーザをグループ化する。
図1は、ネットワーク構成の一例を示す図である。ネットワーク500は、複数の通信装置100と複数のユーザ端末200とを含む。ユーザ端末200は、例えば、パーソナルコンピュータ,携帯電話端末,携帯情報端末,スマートフォン等の通信機能を有する端末装置である。通信装置100は、ユーザ端末200から送信されるフレームを受信し、フレーム内に格納されたアドレス情報等に基づいて、フレームの転送処理を行う。例えば、ユーザ端末200がEthernet(登録商標)フレームを送信する場合には、通信装置100は、アドレス情報として、受信したEthernet(登録商標)フレーム内に格納されているMACアドレスに基づいて転送処理を行う。また、例えば、ユーザ端末200がIPパケットを送信する場合には、通信装置100は、アドレス情報として、受信したIPパケット内に格納されているIPアドレスに基づいて転送処理を行う。なお、以降は、一例として、通信装置100がEthernet(登録商標)フレームの転送処理を行う場合について説明する。
図2は、通信装置100の構成例を示す図である。通信装置100は、複数の回線インタフェース(IF)カード1,スイッチ(SW)カード2,制御カード3を含む。IFカード1は、ポートを収容し、外部装置とのインタフェース機能,フレームの受信機能,フレームの送信機能等を提供する回路を含むカードである。SWカード2は、通信装置100内においてIFカード1と接続され、IFカード1とデータ信号のやり取りを行い、IFカード1間のフレーム転送のスイッチ機能を提供する回路を含むカードである。制御カード3は、通信装置100内においてIFカード1とSWカード2とに接続され、IFカード1とSWカード2との間で制御信号のやり取りを行い、通信装置100内の各カードの各種設定,アラーム,統計情報の収集等を制御する回路を含むカードである。制御カード3は、外部モニタ等の外部端末とも接続される。
通信装置100は、例えば、中継機能を備えた装置である。例えば、通信装置100の一例として、レイヤ2スイッチ,レイヤ3スイッチ,ルータがある。また、IFカード1,SWカード2,制御カード3は、それぞれ、例えば、通信装置100に着脱可能なモジュール又はユニットカードとして提供される。また、IFカード1,SWカード2,制御カード3は、通信装置100のマザーボード又はマザーカードと一体化されていてもよい。
図3は、Ethernet(登録商標)フレームのフォーマットを示す図である。以下、特に表記のない場合には、「フレーム」は、Ehternet(登録商標)フレームを指すこととする。図3では、VLAN(Virtual Local Area Network)タグなしフレーム91,VLANタグ1段付与のフレーム92それぞれのフレームフォーマットが示される。これらフレームは、通信装置100の同一ポート内に混在することが可能である。
VLANタグなしフレーム91のフレームフォーマットは以下の通りである。MAC DAは、宛先のMAC(Media Access Control)アドレスを示しており、6バイトのフィールドである。MAC SAは、送信元のMACアドレスを示しており、6バイトのフールドである。E−TYPEは、Ethernet(登録商標) Typeであり、後段のProtocol Data Unit(PDU)に格納されるメッセージのタイプが格納されるフィールドである。例えば、E−TYPEに0x0800が格納されている場合には、後段のPDUはIPv4(IP version 4)のパケットであることが示される。E−TYPEは、2バイトである。また、E−TYPEに格納されるメッセージタイプは、IANA(Internet Assigned Number Authority)によって規定されている。
PDUには、IPv4フレーム等の上位レイヤのメッセージが格納される。FCS(Frame Check Sequence)にはフレームの誤り検出のためのCRC−32符号が格納される。FDCは、4バイトのフィールドである。
VLANタグ1段付与のフレーム92は、VLANタグなしフレーム91のMAC SAのフィールドとE−TYPEのフィールドとの間にVLANタグが1つ付与されたフレームである。VLANタグは、TPID(Tag Protocol ID)とVLAN IDとを含む
。TPIDは、Ethernet(登録商標) Typeの一種であり、VLAN IDが後段に格納されていることを示すIDである。TPIDには、例えば、IEEE802.1Qを示す0x8100が設定される。TPIDは、2バイトのフィールドである。VLAN IDには、ユーザが属するVLANを特定するためのVLAN ID値が格納される。VLANタグは、連続してスタックすることができる。
VLANタグなしフレーム91は、各VLANのフレームが混在する回線ポートにおいて、例えば、特定のユーザ用や、通信装置100間で送受信される制御フレーム用として用いられる。
VLANタグ有りフレームは、例えば、ユーザAにはVLAN ID=100,ユーザBにはVLAN ID=200のように異なるユーザに対して、異なるVLAN IDを割り当てて用いられる。異なるユーザに対して異なるVLAN IDを割り当てることにより、ネットワーク上でVLAN IDによるユーザ識別を行うことが可能となる。また、複数のユーザに同じVLAN IDを割り当てることによって、ユーザをグループ化することができる。
通信装置100では、各IFカード1において受信されたフレームは、SWカード2に転送される。SWカード2は、宛先MACアドレスに応じた転送先のポートの情報を記憶しており、この情報に基づいて受信フレームを転送する。
SWカード2は、受信フレームに含まれる宛先MACアドレスに応じた転送先のポートの情報を記憶していない場合には、受信フレームに該当するVLANドメインにおいて、受信フレームをフラッディングする。フラッディングとは、通信装置100が、該当VLANに属する全ポートに対して該受信フレームをコピーして転送することである。通信装置100は、フラッディング時のフレームのコピー数及びコピーしたフレームの宛先の情報を示す宛先情報を記憶しており、フラッディング時には、この宛先情報に基づいて、フレームを転送する。
宛先情報は、「VLAN ID+受信ポート」単位で、該当VLAN IDに属するポート番号が記憶される。ただし、受信ポートの配下に存在する端末装置は、通信装置100が該受信フレームを該受信ポートにおいて受信するよりも前に、該受信フレームを受信済みである。そのため、SWカード2が受信ポートにも受信フレームを転送し、受信ポートか受信フレームが送信されてしまうと、受信ポートの配下の端末装置は、該受信フレームを二重に受信してしまう。端末装置におけるフレームの二重受信を防ぐため、宛先情報には、「VLAN ID+受信ポート」単位で、受信ポート自身を除いた、該当VLANに属するポート番号が記憶される。例えば、通信装置100内に、VLAN ID=10のVLANに属するポートがN個ある場合には、通信装置は、N個のポートに対するN個の宛先情報を有し、各宛先情報には、各ポート自身を除いたN−1個の他ポート番号が含まれる。
特開2005−57390号公報 特開2009−94832号公報
通信装置100が収容するVLANが多い場合、又は、通信装置100が収容するポートが多い場合には、装置内で管理する宛先情報の数が増加し、宛先情報を管理するメモリテーブルの容量が増加するおそれがある。また、通信装置100が大容量のメモリを搭載していない場合には、メモリ容量の上限からサポート可能な宛先情報数が制限されることもある。
図4は、通信装置における、VLAN ID=10のVLANの構成例と、VLAN ID=10のVLANに属する各ポートについての宛先情報の例とを示す図である。図4中では、VLAN IDはVIDと表示されている。IFカード#nのポート#mは、CnPmと表示されている。以降、明細書中でも、IFカード#nのポート#mをCnPmと称することもある。
図4では、VLAN ID=10のVLANに属するポートは、C0P0,C1P1,C2P0,C3P0,C3P1の5つである。通信装置は、VLAN ID=10のVLANに関して、この5つのポートについての宛先情報を管理する。
例えば、C0P0においてVLAN ID=10のフレームを受信した場合、該フレームはSWカードに送信される。SWカードにおいて、該受信フレームに含まれる宛先MACアドレスに応じた転送先のポートの情報が記憶されていない場合には、SWカードは、C0P0用の宛先情報に含まれるポートに対して、該受信フレームをコピーして送信する。結果的に、SWカードから、C1P1,C2P0,C3P0,C3P1に宛てて該受信フレームのコピーが送信される。
また、例えば、VLAN ID=10のVLANにC0P1が追加された場合に、通信装置は、VLAN ID=10のVLANについて、C0P1を受信ポートとする6つ目の宛先情報を追加する。さらに、既存の5つの宛先情報に対しても、C0P1を追加する。
通信装置が収容するVLAN数,ポート数が多い場合には、VLANへのポートの追加またはVLANからのポートの削除に伴って、変更される宛先情報の数が増加し、通信装置のソフトウェアを実行するプロセッサへの処理負荷が増加する。
通信装置はVLANを、例えば、4096個まで収容することができる。また、VLANタグは多段接続することも可能であり、例えば、フレームに2段のVLANタグが付与された場合には、約1700万(4096×4096)個のVLANが収容可能である。また、ポート数についても、例えば、64ポートのEthernet(登録商標)ポートを収容するIFカードを10枚から20枚実装可能な通信装置もある。したがって、通信装置は、収容するVLAN数、ポート数に応じて、数十万から数千万個の宛先情報を管理することがあり、その場合のメモリ容量や、ソフトウェアを実行するプロセッサにかかる処理負荷は大きなものとなる。以上は、図4に示される通信装置を用いてVLANに属するポートの管理を例に説明した。ただし、VLANに属するポートの管理に限られず、グループ化された複数のポートを管理して通信を行う場合には、上記と同様の問題が生じる。
本発明の一態様は、グループ化された複数のポートの管理に係るリソース及び処理負荷を低減可能な通信装置及び通信方法を提供することを目的とする。
本発明の態様の一つは、通信装置である。この通信装置は、
第1のプロセッサと、
複数のポートと、
グループ単位で、該グループの識別情報と該グループに属するポートとを記憶する第
1のメモリと、
を含む複数のインタフェース回路と、
第2のプロセッサと、
グループ単位で、該グループの識別情報と該グループに属するポートを有するインタフェース回路とを記憶する第2のメモリと、
データブロックを各インタフェース回路に送信する中継回路と、
を含むスイッチ回路と、
を備え、
前記スイッチ回路における前記第2のプロセッサは、
前記第2のメモリから、各インタフェース回路から受信したデータブロックによって
示されるグループ識別情報に対応付けられているインタフェース回路の識別情報を取得
し、取得したインタフェース回路の識別情報に合致するインタフェース回路を宛先とす
る前記データブロックのコピーを生成し、
前記各インタフェース回路における第1のプロセッサは、
ポートから受信したデータブロックに、自身が含まれるインタフェース回路の識別情
報と、該データブロックを受信した受信ポートの識別情報と、を送信元情報として付与
し、
前記第1のメモリから、前記スイッチ回路から受信したデータブロックによって示さ
れるグループ識別情報に対応するポートの識別情報を取得し、取得したポートの識別情
報に合致するポートを宛先とする前記データブロックのコピーを生成し、
前記スイッチ回路から受信したデータブロックに付与されている送信元情報に合致す
るポートを有するか否かを判定し、該送信元情報に合致するポートを有する場合には、
該データブロックに付与されているポートの識別情報に合致するポートを宛先とする、
該データブロックのコピーの生成を抑止し、
前記データブロックのコピーを宛先のポートから送信する。
本発明の他の態様の一つは、上述した通信方法である。また、本発明の他の態様の一つは、上述したインタフェース回路である。
開示の通信装置及び通信方法によれば、グループ化された複数のポートの管理に係るリソース及び処理負荷を低減することができる。
ネットワーク構成の一例を示す図である。 通信装置の構成例を示す図である。 Ethernet(登録商標)フレームのフォーマットを示す図である。 通信装置における、VLAN ID=10のVLANの構成例と、VLAN ID=10のVLANに属する各ポートについての宛先情報の例とを示す図である。 通信装置のIFカードとSWカードとのハードウェア構成の一例を示す図である。 通信装置のIFカードとSWカードとのそれぞれが有する回路及びテーブルの一例を示す図である。 VLANテーブルの一例である。 IF−MGIDテーブルの一例を示す図である。 MACテーブルの一例である。 SW−MGIDテーブルの一例である。 装置内フレームヘッダのフォーマットの一例である。 IFカードのフレームコピー制御回路とIFコピー抑止回路とによって行われる処理のフローチャートの一例である。 第1実施形態の通信装置の動作例を示す図である。 第1実施形態の動作例における、IFカード#0のVLANテーブルの例である。 第1実施形態の動作例における、IFカード#0のIF−MGIDテーブルの例である。 第1実施形態の動作例における、IFカード#1のVLANテーブルの例である。 第1実施形態の動作例における、IFカード#1のIF−MGIDテーブルの例である。 第1実施形態の動作例における、IFカード#2のVLANテーブルの例である。 第1実施形態の動作例における、IFカード#2のIF−MGIDテーブルの例である。 第1実施形態の動作例における、IFカード#3のVLANテーブルの例である。 第1実施形態の動作例における、IFカード#3のIF−MGIDテーブルの例である。 第1実施形態の動作例における、SWカードのSW−MGIDテーブルである。 第2実施形態における通信装置のIFカードとSWカードとのそれぞれが有する回路及びテーブルの一例を示す図である。 第2実施形態における、VLANテーブルの一例を示す図である。 第2実施形態における装置内フレームヘッダのフォーマットの一例を示す図である。 SWカードにおけるフレームコピー制御回路とSWコピー抑止回路とが行う処理のフローチャートの一例である。 第2実施形態の動作例における、IFカード#0のVLANテーブルの例である。 第2実施形態の動作例における、IFカード#0のIF−MGIDテーブルの例である。 第2実施形態の動作例における、IFカード#1のVLANテーブルの例である。 第2実施形態の動作例における、IFカード#1のIF−MGIDテーブルの例である。 第2実施形態の動作例における、IFカード#2のVLANテーブルの例である。 第2実施形態の動作例における、IFカード#2のIF−MGIDテーブルの例である。 第2実施形態の動作例における、IFカード#3のVLANテーブルの例である。 第2実施形態の動作例における、IFカード#3のIF−MGIDテーブルの例である。 第3実施形態における通信装置のIFカードとSWカードとのそれぞれが有する回路及びデーブルの例を示す図である。 SWカードの送信フィルタ回路の処理のフローチャートの一例である。 第4実施形態における通信装置のIFカードとSWカードとのそれぞれが有する回路及びテーブルの例を示す図である。 第4実施形態におけるVLANテーブルの一例である。 第4実施形態におけるSW−MGIDテーブルの一例である。
以下、図面に基づいて、本発明の実施の形態を説明する。以下の実施形態の構成は例示であり、本発明は実施形態の構成に限定されない。
<第1実施形態>
第1実施形態では、複数のポートからのフレームのコピーの送信に用いられるリソースを低減可能とするために、同一VLANに属するポートを1つのマルチキャストグループとしてグループ化して管理する通信装置について説明する。マルチキャストグループは、「グループ」の一例である。また、1つのVLANを1つのマルチキャストグループと定義する場合には、VLANも「グループ」の一例である。ただし、「グループ」は、VLANに限られず、例えば、IPマルチキャストグループ等も含まれる。
第1実施形態におけるネットワーク構成は、図1と同様である。また、通信装置100の構成は、図2と同様である。また、第1実施形態におけるネットワークでは、Ethernet(登録商標)フレームが用いられる。
<通信装置>
図5は、通信装置100のIFカード1とSWカード2とのハードウェア構成の一例を示す図である。第1実施形態における通信装置100は、例えば、図2に示される例と同様に、複数のIFカード1,SWカード2,制御カード3を備える。
通信装置100のIFカード1は、PHY/MAC(PHYsical layer/MAC layer)回路101,メモリ102,データ処理用プロセッサ103,制御用プロセッサ104,複数のポート105を備える。複数のポート105は、PHY/MAC回路101に接続されている。PHY/MAC回路101と、メモリ102と、データ処理用プロセッサ103と、制御用プロセッサ104とは、データ用バス107と制御用バス108とにそれぞれ接続されている。また、データ用バス107は、データ用バス6に接続されており、SWカード2と接続されている。図5中では、データ用バスは実線で、制御用バスは点線で示されている。なお、図5において、アドレス用バスは省略されている。IFカード1は、「インタフェース回路」の一例である。「インタフェース回路」の一例には、IFカード1の他に、IFカード1がマザーボード又はマザーカードと一体化されている場合には、マザーボード又はマザーカード上の該当するチップ,回路も含まれる。
PHY/MAC回路101は、ポート105から入力される受信フレームの物理レイヤの終端処理とMACレイヤの終端処理とを行う。MACレイヤでは、PHY/MAC回路101は、受信フレームのFCSチェック等を行い、FCSチェックの結果がエラーとなったフレームを廃棄する。FCSチェックの結果、エラー無しであるフレームは、データ用バス107に出力される。
メモリ102は、例えば、SRAM(Static Random Access Memory)やDRAM(Dynamic Random Access Memory)等の揮発性のメモリと、PROM(Programmable Read Only Memory)等の不揮発性のメモリと、が含まれる。メモリ102には、各種プログラムやデータが記憶されている。メモリ102は、「第1のメモリ」の一例である。
データ処理用プロセッサ103は、例えば、NPU(Network Processing Unit)やデ
ータ通信プロセッサ等の、通信にかかるデータの処理を行うプロセッサである。データ処理用プロセッサ103は、PHY/MAC回路101によって符号化されたフレーム,SWカード2から転送されてきたフレームを処理する。このとき、必要に応じて、データ処理用プロセッサ103は、メモリ102に記憶されている情報を読み出す。データ処理用プロセッサ103は、「第1のプロセッサ」の一例である。
制御用プロセッサ104は、例えば、CPU(Central Processing Unit)である。制
御用プロセッサ104は、PHY/MAC回路101,メモリ102,データ処理用プロセッサ103の管理を行う。制御用プロセッサ104は、SWカード2,他のIFカード1,制御カード3にそれぞれ備えられている制御用プロセッサと制御用バス5によって接続されている。また、制御用プロセッサ104は、通信装置100全体の制御を行う制御カード3に含まれる制御用プロセッサからの指示に従って、PHY/MAC回路101,メモリ102,データ処理用プロセッサ103の制御を行う。
IFカード1に含まれる、PHY/MAC回路101,メモリ102,データ処理用プロセッサ103,制御用プロセッサ104のそれぞれは、個別のデバイスまたはチップであってもよい。また、IFカード1は、これら回路及びデバイスを有する1つ又は複数のLSI(Large Scale Integration)であってもよい。また、IFカード1のハードウェ
ア構成には、図5に示されるものに限られず、例えば、図5に示される構成に加えて、FPGA(Field Programmable Gate Array),ICロジック素子等が含まれてもよい。ま
た、制御用プロセッサ104とデータ処理用プロセッサ103とは、1つのプロセッサであってもよい。
通信装置100のSWカード2は、SW回路201,メモリ202,制御用プロセッサ203,データ処理用プロセッサ206を備え、これらは、データ用バス204及び制御
用バス205にそれぞれ接続されている。SWカード2は、「スイッチ回路」の一例である。「スイッチ回路」の一例には、SWカード2の他に、SWカード2がマザーボード又はマザーカードと一体化されている場合には、マザーボード又はマザーカード上の該当するチップ,回路も含まれる。
SW回路201は、各IFカード1から受信したフレームの転送を行う。メモリ202は、例えば、SRAMやDRAM等の揮発性のメモリと、PROM等の不揮発性のメモリと、が含まれる。メモリ202には、各種プログラムやデータが記憶されている。メモリ202は、「第2のメモリ」の一例である。
データ処理用プロセッサ206は、例えば、NPUやデータ通信プロセッサ等の、通信にかかるデータの処理を行うプロセッサである。データ処理用プロセッサ206は、例えば、MACテーブルの検索を行い、各IFカード1から受信したフレームの転送先(通信装置100内の宛先)を求める等の処理を行う。データ処理用プロセッサ206は、「第2のプロセッサ」の一例である。
制御用プロセッサ203は、例えば、CPUである。制御用プロセッサ203は、SW回路201,メモリ202の管理を行う。制御用プロセッサ203は、各IFカード1,制御カード3にそれぞれ備えられている制御用プロセッサと制御用バス5によって接続されている。制御用プロセッサ203は、制御用バス5を通じて受信する制御信号に従って、SW回路201,メモリ202の制御を行う。
SWカード2に含まれる、SW回路201,メモリ202,制御用プロセッサ203のそれぞれは、個別のデバイスまたはチップであってもよい。また、SWカード2は、これらの回路及びデバイスを有する1つ又は複数のLSIに含まれてもよい。また、SWカード2のハードウェア構成は、図5に示されるものに限られず、例えば、FPGA,ICロジック素子等を含んでもよい。また、制御用プロセッサ203とデータ処理用プロセッサ206とは、1つのプロセッサであってもよい。
制御カード3には、制御用プロセッサとメモリ等が備えられている(図示せず)。制御カード3の制御用プロセッサは、メモリに記憶される各種プログラムを実行し、プログラムの実行に応じて、各IFカード1及びSWカード2の制御用プロセッサを制御する。すなわち、制御カード3の制御用プロセッサが親プロセッサとして、各IFカード1及びSWカード2の制御用プロセッサが子プロセッサとして、動作する。例えば、通信装置100に接続された管理端末から、VLANの作成,VLANへのポートの追加,VLANからのポートの削除等のVLANに関する情報の変更の入力を、制御カード3の制御プロセッサが受け付ける。制御カード3の制御用プロセッサは、入力されたVLANに関する情報の変更に関わるIFカード1及びSWカード2の制御用プロセッサに対して、VLANに関する情報の変更を指示する。各IFカード1及びSWカード2の制御用プロセッサは、制御カード3の制御用プロセッサからの指示を受けると、各IFカード1及びSWカード2に記憶されるテーブル等にVLANに関する情報の変更を反映する。
図6は、通信装置100のIFカード1とSWカード2とのそれぞれが有する回路及びテーブルの一例を示す図である。IFカード1は、PHY/MAC回路11,VLAN受信回路12,IFコピー抑止回路14,フレームコピー制御回路15,VLANテーブル13,及びIF−MGIDテーブル16を含む。
IFカード1のVLAN受信回路12,IFコピー抑止回路14,フレームコピー制御回路15は、図5に示されるデータ処理用プロセッサ103によるメモリ102に記憶される各種ソフトウェアの実行によって実現される機能である。ただし、これに限られず、
IFカード1のVLAN受信回路12,IFコピー抑止回路14,フレームコピー制御回路15は、例えば、図5には図示されていない、1つ又は複数のICロジック素子,FPGA等に実現される回路であってもよい。そのため、図6では、VLAN受信回路12,IFコピー抑止回路14,フレームコピー制御回路15がデータ処理用プロセッサ103によるソフトウェアの実行によって実現される機能である場合についても、便宜的に、それぞれ回路として説明する。
VLANテーブル13及びIF−MGIDテーブル16は、図5中のメモリ102内に記憶される。VLANテーブル13及びIF−MGIDテーブル16は、図5中の制御用プロセッサ104によって、管理される。制御用プロセッサ104は、ユーザ入力を受け付けた制御用カード3の制御用プロセッサからの指示に基づいて、VLANテーブル13及びIF−MGIDテーブル16の作成,更新,削除等の管理処理を行う。
SWカード2は、SW回路21,MACテーブル制御回路22,フレームコピー制御回路24,MACテーブル23,SW−MGIDテーブル25を含む。SW回路21は、図5に示されるSW回路201である。SWカード2のMACテーブル制御回路22とフレームコピー制御回路24とは、図5に示されるデータ処理用プロセッサ206によるメモリ202に記憶される各種ソフトウェアの実行によって実現される機能である。ただし、これに限られず、SWカード2のMACテーブル制御回路22とフレームコピー制御回路24とは、例えば、1つ又は複数のICロジック素子,FPGA等で実現される回路であってもよい。そのため、図6では、MACテーブル制御回路22とフレームコピー制御回路24がデータ処理用プロセッサ206によるソフトウェアの実行によって実現される機能である場合についても、便宜的に、それぞれ回路として説明する。
MACテーブル23及びSW−MGIDテーブル25は、図5中のメモリ202内に記憶される。MACテーブル23及びSW−MGIDテーブル25は、図5中の制御用プロセッサ203によって、管理される。制御用プロセッサ203は、ユーザ入力を受け付けた制御用カード3の制御用プロセッサからの指示に基づいて、MACテーブル23及びSW−MGIDテーブル25の作成,更新,削除等の管理処理を行う。
まず、各テーブルについて説明する。図7は、VLANテーブル13の一例である。VLANテーブル13は、各IFカード1に含まれるポートが属するVLANに対応するマルチキャストグループを示すテーブルである。VLANテーブル13は、ポート番号とVLAN IDとの組み合わせを各エントリのインデックスとする。VLANテーブル13の各エントリは、V(Valid)ビットとMGID(Multicast Group IDentification)と
の項目を有する。Vビットは、該当エントリの有効性を示すフラグである。第1実施形態では、Vビットに0が格納されている場合には、該当エントリは無効であることが示される。外部から受信されたフレームに含まれるVLAN IDと受信ポートとに該当するエントリが無効である場合には、IFカード1のVLAN受信回路12によって、該当フレームは廃棄される。また、第1実施形態では、Vビットに1が格納されている場合には、該当エントリは有効であることが示される。外部から受信されたフレームに含まれるVLAN IDと受信ポートとに該当するエントリが有効である場合には、IFカード1のVLAN受信回路12によって、該当エントリのMGIDが受信フレームの装置内フレームヘッダに格納される。装置内フレームヘッダについては後述する。
MGIDは、マルチキャストグループの識別子である。マルチキャストグループは、同一のMGIDが割り当てられたポートをメンバとする。例えば、通信装置100において、各ポートに接続する契約ユーザ間でVLAN IDの重複がない場合には、IFカード間で共通して、通信装置100内の同一VLANに属するポートに、同一のMGIDが割り当てられてもよい。また、通信装置100において、各ポートに接続する契約ユーザ間
でVLAN IDの重複があり、ポート番号によって契約ユーザが識別される場合がある。この場合には、ポート番号とVLAN IDとの組み合わせ(契約ユーザとVLAN IDとの組み合わせ)に応じてMGIDが割り当てられてもよい。また、例えば、通信装置100が2段のVLANタグが付与されたフレームを扱う場合には、2段のVLANタグに含まれる2つのVLAN IDの組み合わせに応じて、MGIDが割り当てられてもよい。MGIDには、VLAN IDと同じ番号が用いられてもよいし、異なる番号が用いられてもよい。MGIDは、「グループ識別情報」の一例である。
第1実施形態では、通信装置100において、各ポートに接続される契約ユーザ間でVLAN IDの重複がなく、通信装置100内の同一VLANに属するポートに同一のMGIDが割り当てられることを前提に、通信装置100の処理例が説明される。ただし、第1実施形態は、この前提に限定されるわけではない。
各IFカード1のメモリ102では、例えば、VLANテーブル13用に、予めポートとVLAN IDとの全ての組み合わせに該当するアドレスの領域が確保されている。VLANテーブル13の各エントリは、管理端末からの入力に応じて、例えば、制御用プロセッサ104によって設定される。
なお、通信装置100の各ポートに接続される契約ユーザ間でVLAN IDの重複がなく、同一VLANに属する各IFカード1のポートに同一のMGIDが割り当てられる場合には、VLANテーブル13のインデックスに受信ポートが用いられなくてもよい。
また、通信装置100の各ポートに接続される契約ユーザ間でVLAN IDの重複がなく、同一VLANに属するポートに同一のMGIDが割り当てられる場合には、受信フレームのVLANタグに含まれるVLAN IDをMGIDとして用いてもよい。そのため、この場合には、IFカード1は、VLANテーブル13を有さなくともよい。この場合のVLAN IDは、「グループ識別情報」の一例に含まれる。
「グループ識別情報」は、MGID,VLAN IDに限られず、MACアドレス等のユーザを識別可能な情報が一例として含まれる。また、「グループ」がIPマルチキャストグループである場合には、IPマルチキャストグループのID,IPアドレス等も一例として含まれる。
図8は、IF−MGIDテーブル16の一例を示す図である。IF−MGIDテーブル16は、IFカード1における、各マルチキャストグループのメンバポートを示すテーブルである。IF−MGIDテーブル16は、MGIDを各エントリのインデックスとする。IF−MGIDテーブル16の各エントリでは、各項目が各ポートに対応付けられている。各ポートに対応する項目には、1又は0が格納される。第1実施形態では、ポートに対応する項目に0が設定されている場合には、該当ポートが、該当エントリのインデックスであるMGIDのマルチキャストグループに参加していないことが示される。また、第1実施形態では、ポートに対応する項目に1が設定されている場合には、該当ポートが、該当エントリのインデックスであるMGIDのマルチキャストグループに参加していることが示される。IFカード1のフレームコピー制御回路15は、SWカード2からフレームを受信した場合に、IF−MGIDテーブル16を参照し、該当フレームによって示されるMGIDのマルチキャストグループに参加するポートを取得する。IFカード1のフレームコピー制御回路15は、取得したポートにフレームをコピーして送信する。
各IFカード1のメモリ102では、IF−MGIDテーブル16用に、予めMGIDに対応するアドレスの領域が十分に確保されている。IF−MGIDテーブル16のエントリは、管理端末からの入力に応じて、例えば、制御用プロセッサ104によって設定さ
れる。
図9は、MACテーブル23の一例である。MACテーブル23は、SWカード2に備えられている。MACテーブル23は、宛先MACアドレスに対する宛先IFカード及び宛先ポートの情報を記憶する。MACテーブル23は、VLAN IDとMACアドレスとを各エントリのインデックスとする。MACテーブル23の各エントリは、Vビット,宛先IFカード番号,宛先ポート番号,エージングビットの項目を有する。
Vビットは、MACテーブル23の該当エントリの有効性を示すビットである。第1実施形態では、Vビットが0の場合には、MACテーブル23の該当エントリが無効であることが示される。また、第1実施形態では、Vビットが1の場合には、MACテーブル23の該当エントリが有効であることが示される。Vビットは、初期設定では、無効(Vビット=0)に設定されている。
MACテーブル23の各エントリは、所定の生存時間内にインデックスのMACアドレスを有する端末からアクセスがない場合に、削除(又は無効化)される。エージングビットは、生存時間切れを示すビットである。第1実施形態では、エージングビットが1である場合には、該当エントリの生存時間が残っており、該当エントリが有効であることが示される。第1実施形態では、エージングビットが0である場合には、該当エントリは生存時間切れであり、該当エントリが無効であることが示される。エージングビットは、初期設定では、生存時間切れを示す値(エージングビット=0)に設定されている。
受信フレームに含まれるVLAN IDと宛先MACアドレスとでMACテーブル23が検索された場合に、該当エントリのVビットが有効を示す値(Vビット=1)であることは、受信フレームがユニキャスト転送されることを示す。この場合には、SWカード2は、該当エントリの宛先IFカード番号と宛先ポート番号とを受信フレームの装置内ヘッダに格納し、宛先となるIFカード1に受信フレームを送信する。受信フレームに含まれるVLAN IDと宛先MACアドレスとでMACテーブル23が検索された場合に、該当エントリのVビットが無効を示す値(Vビット=0)である、又は、該当エントリが存在しないことは、ユニキャスト転送が無効であることが示される。この場合には、受信フレームは、該当VLANにフラッディングされる。
受信フレームに含まれるVLAN IDと送信元MACアドレスとでMACテーブル23が検索された場合に、該当エントリのVビットが有効を示す値(Vビット=1)であることは、送信元MACアドレスが登録済みであることを示す。この場合には、SWカード2のMACテーブル制御回路22は、例えば、該当エントリのエージングビットを1に上書きして、生存時間をリセットする。受信フレームに含まれるVLAN IDと送信元MACアドレスとでMACテーブル23が検索された場合に、該当エントリのVビットが無効を示す値(Vビット=0)である、又は、該当エントリがないことは、送信元MACアドレスが未登録であることが示される。この場合には、SWカード2のMACテーブル制御回路22によってMACテーブル23にエントリが登録される。登録されるエントリは、受信フレームに含まれるVLAN IDと送信元MACアドレスとをインデックスとするエントリである。登録されるMACテーブル23のエントリの宛先IFカード番号,宛先ポート番号の各項目には、受信フレームの装置内フレームヘッダ内の送信元IFカード番号,送信元ポート番号が登録される。また、登録されるMACテーブル23のエントリのエージングビットは、該当エントリの生存を示す値(エージングビット=1)に設定される。
また、MACテーブル23では、所定の周期で、SWカード2のMACテーブル制御回路22によって、全エントリが読み出される。このとき、エントリのエージングビットが
1である場合には、エージングビットは0に上書きされる。また、エントリのエージングビットが0である場合には、該当エントリのVビットが0に上書きされ、該当エントリが無効化される。
MACテーブル23は、SRAMやDRAM等のメモリに作成されてもよい。この場合には、MACテーブル23用に、十分な数のVLAN IDとMACアドレスとの組み合わせのアドレスの領域が確保される。また、MACテーブル23のインデックスは、VLAN IDとMACアドレスとの所定の演算結果であってもよい。所定の演算結果は、例えば、ハッシュ計算により得られるハッシュ値である。また、MACテーブル23は、CAM(Content Addressable Memory)等の連想メモリとアソシエイトメモリとを用いて作成されてもよい。この場合には、VLAN IDと、送信元MACアドレス又は宛先アドレスと、で連想メモリが検索され、検索結果に該当するアソシエイトメモリのアドレスから、エントリが読み出される。MACテーブル23が連想メモリとアソシエイトメモリとを用いて作成される場合には、エントリが無効になると、該当エントリが連想メモリとアソシエイトメモリとから削除される。以降、第1実施形態では、MACテーブル23はSRAM又はDRAMに作成されるものとして説明する。
図10は、SW−MGIDテーブル25の一例である。SW−MGIDテーブル25は、各マルチキャストグループに属するポートを有するIFカード1の情報を記憶する。SW−MGIDテーブル25は、SWカード2に備えられ、受信フレームがフラッディングされる場合に、受信フレームのコピーの宛先となるIFカード1を求めるために用いられる。
SW−MGIDテーブル25は、MGIDを各エントリのインデックスとする。SW−MGIDテーブル25の各エントリでは、各項目が各IFカード1に対応付けられている。各IFカード1に対応する項目には、該当IFカード1に含まれるポートの、該当エントリのMGIDのマルチキャストグループへの参加の有無を示す値が格納される。第1実施形態では、IFカード1に対応する項目に0が設定されている場合には、該当IFカード1に含まれるいずれのポートも該当マルチキャストグループに参加していないことが示される。また、第1実施形態では、IFカード1に対応する項目に1が設定されている場合には、該当IFカード1に含まれる少なくとも1つのポートが該当マルチキャストグループに参加していることが示される。すなわち、受信フレームのフラッディング時には、SW−MGIDテーブル25の、受信フレームの装置内フレームヘッダに含まれるMGIDに該当するエントリにおいて、対応する項目に1が設定されているIFカード1に受信フレームのコピーが送信される。
各SWカード2のメモリ202では、SW−MGIDテーブル25用に、予めMGIDに対応するアドレスの領域が十分に確保されている。SW−MGIDテーブル25のエントリは、ユーザからの入力に応じて、例えば、図5の制御用プロセッサ203によって設定される。
図11は、装置内フレームヘッダのフォーマットの一例である。装置内フレームヘッダは、通信装置100内で用いられるヘッダで、フレームの通信装置100内の宛先となるIFカード1及びポート等の情報等が含まれる。装置内フレームヘッダは、Mビット,宛先IFカード番号,宛先ポート番号,送信元IFカード番号,送信元ポート番号,MGIDのフィールドを有する。以降、装置内フレームヘッダを、単に、装置内ヘッダとも称する。
Mビットは、該当フレームのマルチキャストグループ内のフラッディングの有無を示すビットである。第1実施形態では、Mビットが0である場合には、該当フレームがマルチ
キャストグループ内にフラッディングされないことが示される。すなわち、受信フレームは、転送先のポートが1つである、ユニキャスト転送されるフレームであることが示される。また、第1実施形態では、Mビットが1である場合には、該当フレームがマルチキャストグループ内にフラッディングされることが示される。Mビットは、初期設定として、マルチキャストグループ内にフラッディングされないフレームであることを示す値(Mビット=0)に設定される。なお、フレームがマルチキャストグループ内でフラッディングされることを、以降、マルチキャスト転送と称する。なお、このマルチキャスト転送には、例えば、SWカード2から全IFカード1にフレームが転送されるブロードキャスト転送も含まれることとする。
宛先IFカード番号と宛先ポート番号とには、受信フレームの宛先となるIFカード1の番号とポートの番号とが格納される。宛先IFカード番号と宛先ポート番号とは、SWカード2において格納される(詳細は後述)。
送信元IFカード番号と送信元ポート番号とには、受信フレームを外部から受信したIFカード1の番号とポートの番号とが格納される。MGIDには、IFカード1において取得された、受信フレームのVLANに該当するMGIDが格納される。送信元IFカード番号,送信元ポート番号,MGIDは、IFカード1において値が書き込まれる。なお、装置内ヘッダのフォーマットは、これに限られない。例えば、通信装置100の各ポートに接続される契約ユーザ間でVLAN IDの重複がなく、受信フレームのVLANタグに含まれるVLAN IDをMGIDとして用いる場合には、装置内ヘッダにMGIDのフィールドは含まれなくてもよい。
図6に戻って、通信装置100に含まれる各回路について説明する。各IFカード1のPHY/MAC回路11は、図5において示されたPHY/MAC回路101である。PHY/MAC回路11は、フレームへの装置内ヘッダの着脱を行う。具体的には、PHY/MAC回路11は、ポートから入力される信号のPHY層及びMAC層の終端処理を行い、フレームに装置内ヘッダを付与し、VLAN受信回路12に送信する。ただし、PHY/MAC回路11からVLAN受信回路12へ送信されるフレームの装置内ヘッダはいずれのフィールドも空である。また、PHY/MAC回路11は、フレームコピー制御回路15からフレームを受信した場合には、フレームから装置内ヘッダを取り除き、PHY層及びMAC層の終端処理を行い、装置内ヘッダに含まれる宛先ポート番号が示すポートに送信する。PHY/MAC回路11は、「送信回路」の一例である。
各IFカード1のVLAN受信回路12は、フレームの受信処理を行う回路である。VLAN受信回路12は、PHY/MAC回路11からフレームを受信した場合には、VLANテーブル13を参照し、受信フレームのVLANタグが示すVLAN IDと受信ポートとに対応するエントリを取得する。VLAN受信回路12が、ICチップ素子,FPGA上の回路である場合には、VLANテーブル13からのエントリの読み出しは、データ処理用プロセッサ103によって行われる。
該当エントリのVビットが0である場合には、該当エントリの無効が示されるので、VLAN受信回路12は、受信フレームを廃棄する。該当エントリのVビットが1である場合には、該当エントリの有効が示されるので、VLAN受信回路12は、受信フレームの装置内ヘッダに情報を書き込み、SWカード2に送信する。具体的には、VLAN受信回路12は、装置内ヘッダのMビットに初期値である0(マルチキャストグループ内にフラッディングされないフレームであることを示す値)を設定する。VLAN受信回路12は、装置内ヘッダの送信元IFカード番号,送信元ポート番号に、受信フレームを受信したIFカード1自身の番号,受信フレームを受信したポート番号を書き込む。VLAN受信回路12は、装置内ヘッダのMGIDに、VLANテーブル13の該当エントリから取得
されるMGIDを書き込む。装置内ヘッダの宛先IFカード番号と宛先ポート番号とは、空のままである。VLAN受信回路12は、「付与回路」の一例である。
なお、ポートに端末装置が接続される場合には、端末装置から受信されるフレームには、VLANタグが含まれていない。通信装置100のポートに端末装置が接続される場合には、IFカード1は、VLANに属するポートの情報を、別途メモリ102に記憶しておき、この情報からフレームの受信ポートからVLAN IDを取得する。その後、IFカード1は、VLAN IDと受信ポートとをインデックスとして、VLANテーブル13からMGIDを取得する。
各IFカード1のVLAN受信回路12から送信されたフレームは、SWカード2のMACテーブル制御回路22に受信される。MACテーブル制御回路22は、MACテーブル23を制御する回路である。
MACテーブル制御回路22は、受信フレームに含まれる宛先MACアドレスとVLAN IDとをインデックスとするエントリを、MACテーブル23から取得する。なお、MACテーブル23がSRAMやDRAM等のメモリの場合には、MACテーブル制御回路22は、受信フレームの宛先MACアドレスとVLAN IDとをハッシュ演算し、演算結果をインデックスとするエントリをMACテーブル23から読み出してもよい。MACテーブル23にCAM等の連想メモリが用いられている場合には、VLAN受信回路12は、受信フレームの宛先MACアドレスとVLAN IDとを検索キーとして連想メモリにアクセスしてもよい。MACテーブル制御回路22が、ICチップ素子,FPGA上の回路である場合には、MACテーブル23からのエントリの読み出しは、データ処理用プロセッサ206によって行われる。
MACアドレスの該当エントリのVビットが1である場合には、該当エントリが有効であり、受信フレームの通信装置100内の宛先がMACテーブル23に登録されており、受信フレームはユニキャスト転送されることが示される。この場合には、MACテーブル制御回路22は、受信フレームの装置内ヘッダの宛先IFカード番号,宛先ポート番号に、MACテーブル23の該当エントリの宛先IFカード番号、宛先ポート番号を書き込む。装置内ヘッダのMビットは初期値の0(マルチキャストグループ内にフラッディングされないフレームであることを示す値)のままである。MACテーブル制御回路22は、装置内ヘッダを更新した受信フレームをSW回路21に送信する。SW回路21は、受信フレームの装置内ヘッダの宛先IFカード番号が示すIFカード1に受信フレームを送信する。
MACアドレスの該当エントリのVビットが0である場合には、該当エントリが無効であり、受信フレームの通信装置100内の宛先がMACテーブル23に登録されておらず、受信フレームが該当VLANにマルチキャスト転送されることが示される。この場合には、MACテーブル制御回路22は、受信フレームの装置内ヘッダ内のMビットを1(マルチキャストグループ内にフラッディングされるフレームであることを示す値)に設定し、フレームコピー制御回路24に送信する。
また、MACテーブル制御回路22は、各IFカード1からフレームを受信した場合には、上述の処理とともに、受信フレームのVLAN IDと送信元MACアドレスとをインデックスとするMACテーブル23のエントリを取得する。
取得したエントリのVビットが1である場合には、受信フレームのVLAN IDと送信元MACアドレスとをインデックスとするエントリが、MACテーブル23に登録されており、有効であることが示される。この場合には、MACテーブル制御回路22は、例
えば、該当エントリのエージングビットを1(該当エントリの生存を示す値)に上書きして、該当エントリの生存時間をリセットする。
取得したエントリのVビットが0である場合には、受信フレームのVLAN IDと送信元MACアドレスとをインデックスとするエントリが無効であり、該当する宛先情報がMACテーブル23に登録されてないことが示される。この場合には、MACテーブル制御回路22は、受信フレームの装置内ヘッダ内の送信元IFカード番号,送信元ポート番号を、MACテーブル23の該当エントリの宛先IFカード番号,宛先ポート番号の項目に、それぞれ格納する。また、MACテーブル制御回路22は、該当エントリのVビットを1(エントリの有効を示す値)に設定する。また、MACテーブル制御回路22は、該当エントリのエージングビットを1に設定する。
MACテーブル制御回路22は、上述の処理に加えて、所定の周期で、MACテーブル23の全エントリを読み込み、エージングビットが1である場合には、該当エントリのエージングビットを0に上書きする。所定の周期は、例えば、5分である。また、エージングビットが0である場合には、該当エントリは生存時間切れであるため、MACテーブル制御回路22は、該当エントリのVビットを0に設定し無効にする。
フレームコピー制御回路24は、マルチキャスト転送が行われる場合に、フレームのコピーを制御する回路である。フレームコピー制御回路24は、受信フレームを受信すると、該当フレームの装置内ヘッダに含まれるMGIDをインデックスとするSW−MGIDテーブル25のエントリを取得する。該当エントリにおいて、該当IFカード1に対応する項目の値が1(該当MGIDのマルチキャストグループに参加するポートを有することを示す値)であるIFカード1の数だけ受信フレームがコピーされる。コピーされた各フレームの装置内ヘッダの宛先IFカード番号には、フレームコピー制御回路24によって、該当MGIDのマルチキャストグループに参加するポートを有する各IFカード1の番号が格納される。コピーされた各フレームは、SW回路21へ送信される。SW回路21は、フレームの装置内ヘッダの宛先IFカード番号が示すIFカード1にフレームを送信する。フレームコピー制御回路24は、「第2のコピー回路」の一例である。SW回路21は、「中継回路」の一例である。
SW回路21によって送信されたフレームは、各IFカード1のフレームコピー制御回路15に受信される。フレームコピー制御回路15は、SW回路21から受信したフレームについて、IFカード1において行われるマルチキャスト転送を制御する回路である。フレームコピー制御回路15は、まず、IFコピー抑止回路14によって実行される、受信フレームのコピー抑止の判定結果を取得する。IFコピー抑止回路14は、受信フレームを外部から受信した受信ポートから、受信フレームのコピーが再度外部に送信されることを防ぐために、受信フレームのコピー抑止判定を行う。フレームコピー制御回路15は、受信フレームのコピー抑止判定の結果に基づいて、受信フレームのコピーを行う。フレームコピー制御回路15は、「第1のコピー回路」の一例である。IFコピー抑止回路14は、「第1の抑止回路」の一例である。
図12は、IFカード1のフレームコピー制御回路15とIFコピー抑止回路14とによって行われる処理のフローチャートの一例である。図12に示されるフローチャートは、フレームコピー制御回路15がSWカード2からフレームを受信すると開始される。
OP1では、フレームコピー制御回路15は、受信フレームの装置内ヘッダに含まれるMビットが1であるか否かを判定する。受信フレームの装置内ヘッダに含まれるMビットが1である場合には(OP1:Yes)、受信フレームが該当MGIDのマルチキャストグループにフラッディングされるフレームであることが示され、処理がOP5に進む。受
信フレームの装置内ヘッダに含まれるMビットが0である場合には(OP1:No)、受信フレームが該当MGIDのマルチキャストグループにフラッディングされないフレームであることが示され、処理がOP2に進む。
OP2では、IFコピー抑止回路14は、受信フレームの装置内ヘッダの、送信元IFカード番号と送信元ポート番号とが、受信フレームの装置内ヘッダの、宛先IFカード番号と宛先ポート番号とに、一致するか否かを判定する。OP2では、受信フレームはユニキャスト転送のフレームであるので、装置内ヘッダの宛先IFカード番号と宛先ポート番号とには、SWカード2において、それぞれ値が格納されている。受信フレームの装置内ヘッダの、送信元IFカード番号と送信元ポート番号とが、受信フレームの装置内ヘッダの、宛先IFカード番号と宛先ポート番号とに一致する場合には(OP2:Yes)、処理がOP3に進む。受信フレームの装置内ヘッダの、送信元IFカード番号と送信元ポート番号とが、受信フレームの装置内ヘッダの、宛先IFカード番号と宛先ポート番号とに一致しない場合には(OP2:No)、処理がOP4に進む。尚、OP2で例示される比較判定の処理は、例えば、装置内ヘッダ内の、送信元IFカード番号と送信元ポート番号とを格納したレジスタと、宛先IFカード番号と宛先ポート番号とを格納したレジスタと、これらのレジスタ間の減算回路とで実現できる。
OP3では、フレームコピー制御回路15は、ユニキャスト転送のフレームの装置内ヘッダの、送信元IFカード番号と送信元ポート番号とが、宛先IFカード番号と宛先ポート番号とに一致する、という判定結果をIFコピー抑止回路14から受信する。この場合には、フレームコピー制御回路15は、受信フレームを廃棄する。これによって、受信フレームを受信した受信ポートから、再び受信フレームが送信されることが防がれる。その後、図12に示されるフローチャートが終了する。
OP4では、フレームコピー制御回路15は、ユニキャスト転送のフレームの装置内ヘッダの、送信元IFカード番号と送信元ポート番号とが、宛先IFカード番号と宛先ポート番号とに一致しない、という判定結果をIFコピー抑止回路14から受信する。この場合には、フレームコピー制御回路15は、装置内ヘッダの宛先ポート番号が示すポートへフレームを送信する。その後、図12に示されるフローチャートが終了する。
OP5では、フレームコピー制御回路15は、IF−MGIDテーブル16から受信フレームの装置内ヘッダのMGIDに該当するエントリを取得し、フレームコピー制御回路15内のメモリ(又はメモリ102)に格納する。該当メモリに格納されたIF−MGIDテーブル16のエントリを、IF−MGIDテーブル16のエントリのリード値、又は、単にリード値と称する。次に処理がOP6に進む。
OP6では、IFコピー抑止回路14は、マルチキャスト転送のフレームの装置内ヘッダの、送信元IFカード番号と宛先IFカード番号とが一致するか否かを判定する。OP6では、受信フレームはマルチキャスト転送のフレームであるため、装置内ヘッダの宛先IFカード番号に値が格納されているが、宛先ポート番号は空白である。フレームの装置内ヘッダの、送信元IFカード番号と宛先IFカード番号とが一致する場合には(OP6:Yes)、処理がOP7に進む。フレームの装置内ヘッダの、送信元IFカード番号と宛先IFカード番号とが一致しない場合には(OP6:No)、IFカード1が受信フレームの受信ポートを有していないことが示され、処理がOP8に進む。
OP7では、IFカード1が受信フレームの受信ポートを有することが示されるので、IFコピー抑止回路14は、IF−MGIDテーブル16のエントリのリード値の、装置内ヘッダの送信元ポート番号に該当する項目の値を0に上書きする。すなわち、該当ポート(装置内ヘッダの送信元ポート番号が示すポート)が該当MGIDのマルチキャストグ
ループへ不参加であることを示すように、IF-MGIDテーブル16のエントリのリー
ド値が書き換えられる。更新後の、IF−MGIDテーブル16のエントリのリード値が、IFコピー抑止回路14のコピー抑止判定結果となる。次に処理がOP8に進む。
OP8では、フレームコピー制御回路15は、IF−MGIDテーブル16のエントリのリード値において、対応する項目に1が設定されているポートに受信フレームのコピーを送信する。このとき、フレームコピー制御回路15は、フレームの各コピーの装置内ヘッダの宛先ポート番号を、それぞれ該当するポートの番号に更新する。フレームのコピーを送信すると、フレームコピー制御回路15は、フレームコピー制御回路15のメモリに格納されているIF−MGIDテーブル16のエントリのリード値を削除する。フレームコピー制御回路15から送信されたフレームは、PHY/MAC回路11において装置内ヘッダを取り除かれて、それぞれ該当するポートから外部に送信される。その後、図12に示されるフローチャートが終了する。
<動作例>
図13Aは、第1実施形態における通信装置100の動作例を示す図である。図13Aに示される各IFカード及びSWカードは、上述のIFカード1及びSWカード2と同様の構成を有する。図13Aでは、VLAN ID=10のVLANについて、該当VLANに属するポートの宛先情報が表示されている。図13Aでは、C0P0,C1P1,C2P0,C3P0,C3P1がVLAN ID=10のVLANに属しており、MGID=1のマルチキャストグループに参加している。
図13Bは、第1実施形態の動作例における、IFカード#0のVLANテーブルの例である。図13Cは、第1実施形態の動作例における、IFカード#0のIF−MGIDテーブルの例である。図13Dは、第1実施形態の動作例における、IFカード#1のVLANテーブルの例である。図13Eは、第1実施形態の動作例における、IFカード#1のIF−MGIDテーブルの例である。図13Fは、第1実施形態の動作例における、IFカード#2のVLANテーブルの例である。図13Gは、第1実施形態の動作例における、IFカード#2のIF−MGIDテーブルの例である。図13Hは、第1実施形態の動作例における、IFカード#3のVLANテーブルの例である。図13Iは、第1実施形態の動作例における、IFカード#3のIF−MGIDテーブルの例である。図13Jは、第1実施形態の動作例における、SWカードのSW−MGIDテーブルである。
VLAN ID=10のフレームがC0P0において受信された場合の通信装置100の動作について説明する。MACテーブル23は、初期状態(全エントリ無効)であることを前提とする。
IFカード#0のVLAN受信回路12は、IFカード#0のVLANテーブル13(図13B)を参照し、VLAN ID=10とC0P0とをインデックスとするエントリから、MGID=1を取得する。IFカード#0のVLAN受信回路12は、受信フレームの装置内ヘッダの送信元IFカード番号,送信元ポート番号,MGIDに、それぞれ、IFカード#0,ポート#0,MGID=1を書込み、SWカードに送信する。
SWカードのMACテーブル制御回路22は、受信フレームに含まれるVLAN IDと宛先MACアドレスとをインデックスとするMACテーブル23のエントリを取得する。MACテーブル23は、初期状態であり、いずれのエントリも無効であるため、SWカードのMACテーブル制御回路22は、受信フレームの装置内ヘッダのMビットを1に上書きする。これによって、受信フレームがマルチキャスト転送のフレームであることが明示される。また、MACテーブル制御回路22は、MACテーブル23に、受信フレームに含まれるVLAN IDと送信元MACアドレスとに該当するエントリを追加する。
次に、受信フレームは、Mビットが1である、すなわち、マルチキャスト転送のフレームであるので、SWカードのフレームコピー制御回路24に送信される。SWカードのフレームコピー制御回路24は、SW−MGIDテーブル25(図13J)のMGID=1に該当するエントリから、MGID=1のマルチキャストグループに参加するポートを含むIFカードを取得する。このとき取得されるIFカードは、IFカード#0,IFカード#1,IFカード#2,IFカード#3である。フレームコピー制御回路24は、受信フレームをコピーし、コピーされた各フレームの装置内ヘッダの宛先IFカード番号を、それぞれ、IFカード#0,IFカード#1,IFカード#2,IFカード#3に設定し、SW回路21に送信する。
受信フレームのコピーは、SW回路21によって、装置内ヘッダの宛先IFカード番号に従って、それぞれ、IFカード#0,IFカード#1,IFカード#2,IFカード#3に送信される。
IFカード#1,IFカード#2,IFカード#3においては、IFコピー抑止回路14によって、受信フレームの装置内ヘッダの送信元IFカード番号(IFカード#0)と宛先IFカード番号(IFカード#1,#2,#3のいずれか)とは一致しないことが判定される。フレームコピー制御回路15は、IF−MGIDテーブル16(図13E,図13G,図13I)から読み出したMGID=1に該当するエントリのリード値から、該当項目の値が1に設定されているポートを取得する。フレームコピー制御回路15は、受信フレームをコピーし、コピーした受信フレームの装置内ヘッダの宛先ポート番号を、取得したポートの番号に更新して、該当するポートに送信する。これによって、C1P1,C2P0,C3P0,C3P1からフレームがマルチキャスト転送される。
IFカード#0においては、IFコピー抑止回路14によって、受信フレームの装置内ヘッダの送信元IFカード番号(IFカード#0)と宛先IFカード番号(IFカード#0)とが一致することが判定される。IFコピー抑止回路14は、フレームコピー制御回路15により読み出されたIF−MGIDテーブル16(図13C)のMGID=1のエントリのリード値のポート#0に対応する項目の値を0に上書きする。ポート#0は、受信フレームの装置内ヘッダの送信元ポート番号に格納されているポート番号が示すポートである。したがって、フレームコピー制御回路15により読み出されたIF−MGIDテーブル16(図13C)のMGID=1のエントリのリード値では、IFカード#0にはMGID=1のマルチキャストグループに参加するポートが存在しないことが示される。したがって、IFカード#0では、いずれのポートからも受信フレームは送信されない。
以上より、通信装置100において、VLAN ID=10のVLAN(MGID=1のマルチキャストグループ)でフラッディングが行われる場合には、通信装置100内のVLAN ID=10のVLANに属する全ポートにフレームが送信される。ただし、IFコピー抑止回路14の処理により、受信ポートに対するフレームのコピーが抑止され、受信ポートからフレームは送信されない。これによって、通信装置100は、不要なフレームのコピーを行うことなく、受信ポートを除く該当VLANに属する他のポートのみにフレームを送信することができる。
次に、VLAN ID=10のVLANにC0P1が追加された場合について説明する。通信装置100に管理端末からの入力によって、C0P1がVLAN ID=10のVLAN、MGID=1のマルチキャストグループに追加される。この場合には、制御カード3の制御用プロセッサからの指示に応じて、IFカード#0の制御用プロセッサ104によって、IFカード#0のVLANテーブル13に、ポート#1とVLAN ID=10とをインデックスとするエントリが有効に設定される。このエントリには、Vビットに
1、MGIDに1が格納される。また、IFカード#0の制御用プロセッサ104によって、IFカード#0のIF−MGIDテーブル16は、MGID=1のエントリのポート#1に対応する項目に1が格納され、C0P1がMGID=1のマルチキャストグループに参加することを示すように更新される。
以上のように、VLAN ID=10のVLANにC0P1が追加された場合には、C0P1を有するIFカード#0においてVLANテーブル13とIF−MGIDテーブル16とが更新される。他のIFカード#1,IFカード#2,IFカード#3,SWカードにおいては、VLANへのポートの追加に関する処理は行われない。VLANからのポートを削除する場合には、削除されるポートを有するIFカードでのみVLANテーブル13において該当するエントリの無効化と、IF−MGIDテーブル16において該当するエントリの更新が行われ、それ以外のカードでは処理は行われない。また、VLAN自体が追加又は削除される場合には、上記の処理に加えてSWカード2においてSW−MGIDテーブル25の該当VLANに対応するMGIDのエントリを追加又は削除する処理が行われる。ただし、この場合でも、追加又は削除されるVLANに属するポートを含まないIFカードでは処理は行われない。
<第1実施形態の作用効果>
第1実施形態では、通信装置100において、マルチキャストグループを導入し、SWカード2にSW−MGIDテーブル25,各IFカード1にIF−MGIDテーブル16を備える。各IFカード1は、マルチキャストグループ単位で、マルチキャストグループに参加する自IFカード1内のポート、すなわち、マルチキャストグループ内のフラッディングのフレームの送信先ポートを管理する。また、SWカード2は、マルチキャストグループ単位で、マルチキャストグループに参加するポートを有するIFカード1、すなわち、マルチキャストグループ内のフラッディングのフレームの送信先IFカードを管理する。また、各IFカード1は、装置内フレームヘッダに送信元ポート番号の情報を付与し、IFカード1において送信元ポートへのフレームの送信を抑止する。そのため、例えば、図13C,図13E,図13G,図13I,図13Jの例で示されるように、VLANを1つのマルチキャストグループとした場合には、各IF−MGIDテーブル16,SW−MGIDテーブル25において、1つのVLANに対するエントリは1つである。これに対して、従来は、1つのVLANに対して、IFカードの区別なく、該当VLANに属するポートごとに宛先情報が1つのテーブル内に存在した(図4参照)。したがって、第1実施形態によれば、通信装置100において必要とされるテーブルエントリ数や管理情報量を削減することができ、メモリの使用量を低減することができる。また、通信装置100は、テーブルエントリ数や管理情報量が削減された分、より多くのVLANやポートを収容することができる。
フラッディングの場合には、SWカード2は、SW−MGIDテーブル25にしたがって、フレームのコピーの転送先となるIFカード1を取得し、取得したIFカードにフレームのコピーを送信する。フラッディングされるフレームをSWカード2から受信した場合には、各IFカード1では、IF−MGIDテーブル16にしたがって、フレームの転送先となるポートを取得し、取得したポートにフレームのコピーを送信する。このとき、SWカード2から各IFカードに送信されるフレームは、各IFカードが有する該当マルチキャストグループに属するポートの数に関わらず、1つである。従来では、フラッディングの場合には、SWカード2は、フレームの転送先となるポートの数だけ、フレームをコピーして、IFカード1に送信する。そのため、SWカード2から各IFカード1に送信されるフレームは、各IFカード1が有する転送先となるポートの数になる。したがって、第1実施形態によれば、SWカード2と各IFカード1とを接続するデータ用バスの帯域を無駄に消費することを省くことができる。
第1実施形態の通信装置100において、VLANのポートを追加又は削除する場合には、VLANに追加又は削除されるポートを有するIFカード1において各種テーブルの更新が行われ、その他のIFカード1では処理は行われない。また、該当ポートを有するIFカード1においても、VLANテーブル13及びIF−MGIDテーブル16の更新されるエントリは、それぞれ該当ポートの数になる。これによって、通信装置100では、制御用プロセッサやソフトウェアに係る処理負荷や管理負荷を低減することができる。
各IFカード1においてマルチキャスト転送が行われる場合に、フレームコピー制御回路15が受信フレームのコピーを行う前に、IFコピー抑止回路14において、コピー抑止判定が行われる。これによって、受信ポートからフレームが再送信されることを防ぐことができる。また、不要なフレームのコピーを抑止することができ、通信装置100内のコピー処理の削減、及びフレーム量の削減を可能にする。ただし、これに限られず、通信装置100において、フレームコピー制御回路15がフレームのコピーを行ってから、IFコピー抑止回路14がコピー抑止判定を行ってもよい。
通信装置100が、2段のVLANタグが付与されたフレームを処理する場合には、VLANテーブル13のインデックスは、受信ポートと1段目のVLANタグのVLAN IDと2段目のVLANタグのVLAN IDとになる。又は、例えば、VLANテーブル13用のメモリの領域が限られている場合には、VLANテーブル13のエントリを、1段目のVLANタグのVLAN IDと2段目のVLANタグのVLAN IDとの組み合わせのハッシュ計算の結果と、MGIDとの対応付けとしてもよい。この場合、VLANテーブル13のエントリを使用が予想されるVLAN IDの組み合わせの分だけ登録することによって、限られたVLANテーブルの領域を有効に使用することができる。
<第2実施形態>
第2実施形態における通信装置では、SWカードからIFカードへの不要なフレーム転送が省かれる。不要なフレーム転送には、例えば、フレームがフラッディングされる場合に、該当マルチキャストグループに参加するポートが該当フレームの受信ポート1つだけであるIFカード1への、SWカード2からの該当フレームのコピーの送信がある。第2実施形態において、第1実施形態と共通する説明は省略される。
図14は、第2実施形態における通信装置100bのIFカード1とSWカード2bとのそれぞれが有する回路及びテーブルの一例を示す図である。通信装置100bのSWカード2bは、SW回路21,MACテーブル制御回路22,フレームコピー制御回路24に加え、SWコピー抑止回路26を含む。
SWコピー抑止回路26は、受信フレームの送信元IFカードであり、かつ、該当MGIDのマルチキャストグループに属するポートを1つしか有さないIFカードへの、受信フレームのコピーの送信を抑止する回路である。SWコピー抑止回路26は、フレームコピー制御回路24がマルチキャスト転送のフレームを受信した場合に、受信フレームのコピーの送信を抑止するための処理を実行する。詳細は、図17において説明する。SWコピー抑止回路26は、「第2の抑止回路」の一例である。
SWコピー抑止回路26は、例えば、図5に示されるデータ処理用プロセッサ206によるメモリ202に記憶される各種ソフトウェアの実行によって実現される機能である。ただしこれに限られず、SWコピー抑止回路26は、例えば、図5には図示されていない、1つ又は複数のICロジック素子,FPGA等に実現される回路であってもよい。そのため、図14では、図6と同じく、SWコピー抑止回路26がデータ処理用プロセッサ206によるソフトウェアの実行によって実現される機能である場合についても、便宜的に、回路として説明する。
図15は、第2実施形態における、VLANテーブル13bの一例を示す図である。第2実施形態におけるVLANテーブル13bは、エントリに、Vビット,MGIDに加えて、コピー抑止ビットを含む。コピー抑止ビットは、該当MGIDのマルチキャストグループに参加するポートがIFカード1において1つしかないことを示すとともに、該当IFカード1への該当フレームのコピーの送信を抑止することを示すためのビットである。第2実施形態では、コピー抑止ビットが1の場合には、該当IFカード1(装置内ヘッダの送信元IFカード番号が示すIFカード1)への該当フレームのコピーの送信が抑止されることが示される。また、第2実施形態では、コピー抑止ビットが0の場合には、該当IFカード1(装置内ヘッダの送信元IFカード番号が示すIFカード1)への該当フレームのコピーの送信が抑止されていないことが示される。VLANテーブル13bのコピー抑止ビットは、VLANテーブル13bのエントリの設定とともに、制御用プロセッサ104によって設定される。コピー抑止ビットは、「コピー抑止情報」の一例である。
図16は、第2実施形態における装置内フレームヘッダのフォーマットの一例を示す図である。第2実施形態における装置内ヘッダは、Mビット,宛先IFカード番号,宛先ポート番号,送信元IFカード番号,送信元ポート番号,MGID,に加えて、コピー抑止ビットのフィールドを有する。
装置内ヘッダにおけるコピー抑止ビットには、該当受信フレームに該当するVLANテーブル13bのエントリに含まれるコピー抑止ビットの値(0又は1)が、VLAN受信回路12によって格納される。
図17は、SWカード2bにおけるフレームコピー制御回路24とSWコピー抑止回路26とが行う処理のフローチャートの一例である。図17に示されるフローチャートは、フレームコピー制御回路24が、MACテーブル制御回路22からMビットが1である、すなわち、マルチキャスト転送のフレームを受信した場合に開始される。
OP11では、フレームコピー制御回路24は、SW−MGIDテーブル25から、受信フレームの装置内ヘッダに含まれるMGIDをインデックスとする該当エントリを取得し、フレームコピー制御回路24が有するメモリ(又はメモリ202)に格納する。このメモリに格納されたSW−MGIDテーブル25のエントリを、SW−MGIDテーブル25のエントリのリード値、又は、単にリード値と称する。次に処理がOP12に進む。
OP12では、SWコピー抑止回路26は、受信フレームの装置内ヘッダに含まれるコピー抑止ビットが1であるか否かを判定する。コピー抑止ビットが1である場合には(OP12:Yes)、装置内ヘッダに含まれる送信元IFカード番号が示すIFカード1へのフレームのコピーの送信の抑止が示される。この場合には、処理がOP13に進む。コピー抑止ビットが0である場合には(OP12:No)、装置内ヘッダに含まれる送信元IFカード番号が示すIFカード1へのフレームのコピーの送信が示される。この場合には、処理がOP14に進む。
OP13では、SWコピー抑止回路26は、メモリに格納されているSW−MGIDテーブル25のエントリのリード値の、装置内ヘッダの送信元IFカード番号が示すIFカード1に該当する項目の値を0に上書きする。これによって、メモリに格納されているSW−MGIDテーブル25のエントリのリード値では、該当IFカード1が該当MGIDのマルチキャストグループに参加するポートを有していないことが示される。ただし、実際には、該当IFカード1では、1つのポート(フレームの受信ポート)が該当MGIDのマルチキャスグループに参加している。次に処理がOP14に進む。
OP14では、フレームコピー制御回路24は、メモリに格納されているSW−MGIDテーブル25のエントリのリード値において、対応する項目に1が設定されているIFカード1を取得する。フレームコピー制御回路24は、受信フレームのコピーの装置内ヘッダの宛先IFカード番号に、取得したIFカードの番号を格納し、受信フレームのコピーをSW回路21に送信する。受信フレームのコピーを送信すると、フレームコピー制御回路24は、SW−MGIDテーブル25のエントリのリード値をメモリから削除する。その後、図17に示されるフローチャートが終了する。
<動作例>
第2実施形態の動作例における通信装置100bの設定は、図13Aに示される例と同様の設定である。図18Aは、第2実施形態の動作例における、IFカード#0のVLANテーブルの例である。図18Bは、第2実施形態の動作例における、IFカード#0のIF−MGIDテーブルの例である。図18Cは、第2実施形態の動作例における、IFカード#1のVLANテーブルの例である。図18Dは、第2実施形態の動作例における、IFカード#1のIF−MGIDテーブルの例である。図18Eは、第2実施形態の動作例における、IFカード#2のVLANテーブルの例である。図18Fは、第2実施形態の動作例における、IFカード#2のIF−MGIDテーブルの例である。図18Gは、第2実施形態の動作例における、IFカード#3のVLANテーブルの例である。図18Hは、第2実施形態の動作例における、IFカード#3のIF−MGIDテーブルの例である。なお、第2実施形態の動作例におけるSWカードのSW−MGIDテーブルは、図13Jと同様である。
VLAN ID=10のフレームがC0P0において受信された場合のSWカードの動作について説明する。第1実施形態の動作例と同じく、MACテーブル23は、初期状態(全エントリ無効)であることを前提とする。以降、第1実施形態の動作例と共通する処理の説明は省略する。
SWカードのフレームコピー制御回路24が、Mビットが1である、すなわち、マルチキャスト転送のフレームを受信する。このフレームの受信ポートはC0P0である。SWカードのフレームコピー制御回路24は、SW−MGIDテーブル25(図13J)のMGID=1に該当するエントリを取得し、メモリに格納する。
次に、SWカードのSWコピー抑止回路26は、SW−MGIDテーブル25のMGID=1のエントリのリード値の、受信フレームの装置内ヘッダの送信元IFカード番号が示すIFカード#0に対応する項目の値を0に上書きする。これによって、SW−MGIDテーブル25のMGID=1のエントリのリード値では、IFカード#0は、MGID=1のマルチキャストグループに参加するポートを有していないことが示される。ただし
、実際には、IFカード#0では、ポート#0がMGID=1のマルチキャストグループに参加している。
SWカードのフレームコピー制御回路24は、メモリに格納されたSW−MGIDテーブル25のMGID=1のエントリのリード値から、対応する項目の値が1であるIFカードとして、IFカード#1,IFカード#2,IFカード#3を取得する。フレームコピー制御回路24は、受信フレームをコピーし、コピーされた各フレームの装置内ヘッダの宛先IFカード番号を、それぞれ、IFカード#1,IFカード#2,IFカード#3に設定し、SW回路21に送信する。
受信フレームのコピーは、SW回路21によって、装置内ヘッダの宛先IFカード番号に従って、それぞれ、IFカード#1,IFカード#2,IFカード#3に送信される。
以上より、本動作例では、SWカードから、受信ポートを有するIFカード#0への受信フレームのコピーの転送は行われない。これによって、通信装置100bは、SWカード2bからIFカード1への不要なフレームの転送を省くことができる。
<第2実施形態の作用効果>
第2実施形態における通信装置100bでは、コピー抑止ビットを用いて、SWカード2bにおいてIFカード1へのフレームのコピーの送信の抑止を判定する。これによって、通信装置100bでは、SWカード2bからIFカード1への不要なフレームのコピーの送信を省くことができ、SWカード2bとIFカード1とを接続するデータ用バス6(図5)の帯域を節約することができる。
<第3実施形態>
第1実施形態及び第2実施形態では、フレームを受信した受信ポートから、再度同じフレームが送信されることを防ぐために、SWカードから受信されるフレームは、受信ポートを有するIFカードにおいて、廃棄される。第3実施形態では、通信装置は、ユニキャスト転送のフレームが、SWカードから、該当フレームの受信ポートを有するIFカード(送信元IFカード)へ再度送信されることを省く。なお、第3実施形態では、第1実施形態,第2実施形態と共通する説明は省略される。
図19は、第3実施形態における通信装置100cのIFカード1とSWカード2cとのそれぞれが有する回路及びテーブルの例を示す図である。第3実施形態において、SWカード2cはSW回路21,MACテーブル制御回路22,フレームコピー制御回路24,SWコピー抑止回路26に加えて、送信フィルタ回路27を有する。送信フィルタ回路27は、ユニキャスト転送のフレームを送信元のIFカード1に転送することを省くための回路である。送信フィルタ回路27は、「フィルタ回路」の一例である。
送信フィルタ回路27は、例えば、図5に示されるデータ処理用プロセッサ206によるメモリ202に記憶される各種ソフトウェアの実行によって実現される機能である。ただしこれに限られず、送信フィルタ回路27は、例えば、図5には図示されていない、1つ又は複数のICロジック素子,FPGA等に実現される回路であってもよい。そのため、図14では、図6と同じく、送信フィルタ回路27がデータ処理用プロセッサ206によるソフトウェアの実行によって実現される機能である場合についても、便宜的に、回路として説明する。
図20は、SWカード2cの送信フィルタ回路27の処理のフローチャートの一例である。図20に示されるフローチャートは、送信フィルタ回路27が、装置内ヘッダのMビットが0、すなわち、ユニキャスト転送のフレームをMACテーブル制御回路22から受信した場合に開始される。なお、ユニキャスト転送のフレームの装置内ヘッダの宛先IFカード番号及び宛先ポート番号は、MACテーブル制御回路22によってMACテーブル23から取得されて格納されている。MACアドレスは、「端末識別情報」の一例である。MACテーブル23を格納するメモリ202は、「第3のメモリ」の一例である。MACテーブル制御回路22は、「取得回路」の一例である。
OP31では、送信フィルタ回路27は、ユニキャスト転送のフレームの装置内ヘッダの、送信元IFカード番号と送信元ポート番号とが、宛先IFカード番号と宛先ポート番号とに一致するか否かを判定する。装置内ヘッダの、送信元IFカード番号と送信元ポート番号とが、宛先IFカード番号と宛先ポート番号とに一致する場合には(OP31:Yes)、処理がOP32に進む。装置内ヘッダの、送信元IFカード番号と送信元ポート番号とが、宛先IFカード番号と宛先ポート番号とに一致する場合には(OP31:No)、処理がOP33に進む。
OP32では、送信フィルタ回路27は、ユニキャスト転送のフレームを廃棄する。すなわち、送信フィルタ回路27は、ユニキャスト転送のフレームの送信元と宛先とが一致する場合には、送信元ポートを有するIFカード1への該当フレームの転送を行わない。これによって、SWカード2cから、ユニキャスト転送のフレームの送信元ポートを有するIFカード1への、該当フレームの送信を省くことができる。その後、図20に示されるフローチャートが終了する。
OP33では、送信フィルタ回路27は、ユニキャスト転送のフレームをSW回路21に転送する。ユニキャスト転送のフレームは、SW回路21によって、装置内ヘッダの宛先IFカード番号が示すIFカードに送信される。その後、図20に示されるフローチャートが終了する。
<第3実施形態の作用効果>
第3実施形態では、SWカード2cの送信フィルタ回路27によって、ユニキャスト転送のフレームのSWカード2cから、該フレームの受信ポートを有するIFカード1への転送を省くことができる。これによって、SWカード2cと各IFカード1間の帯域消費を低減することができる。なお、第3実施形態の通信装置100cは、第2実施形態の通信装置100bに、送信フィルタ回路27を追加した構成であるが、これに限られず、通信装置は、第1実施形態の通信装置100に送信フィルタ回路27を追加した構成としてもよい。
<第4実施形態>
第4実施形態では、フレームのコピーは、IFカードにおいては行われず、SWカードにおいて一元的に行われる。なお、第4実施形態では、第1実施形態,第2実施形態,及び第3実施形態と共通する説明は省略される。
図21は、第4実施形態における通信装置100dのIFカード1dとSWカード2dとのそれぞれが有する回路及びテーブルの例を示す図である。第4実施形態において、IFカード1dは、PHY/MAC回路11dを有する。また、第4実施形態において、SWカード2dはSW回路21,MACテーブル制御回路22,フレームコピー制御回路24d,SWコピー抑止回路26,送信フィルタ回路27,に加えて、VLAN受信回路28を有する。また、第4実施形態における通信装置100dのSWカード2dは、MACテーブル23,SW−MGIDテーブル25d,に加えて、VLANテーブル29を有する。SWカード2dのVLAN受信回路28は、第1−3実施形態におけるIFカードのVLAN受信回路12に相当する処理を行う。また、SWカード2dのVLANテーブル29は、第1−3実施形態におけるIFカードのVLANテーブルに相当するテーブルである。
図22は、第4実施形態におけるVLANテーブル29の一例である。VLANテーブル29は、IFカード番号とポート番号とVLAN IDとの組み合わせを各エントリのインデックスとする。VLANテーブル29の各エントリは、VビットとMGIDとの項目を有する。第4実施形態では、Vビットに1が格納されている場合には、該当エントリは有効であることが示される。また、Vビットに0が格納されている場合には、該当エントリは無効であることが示される。
SWカード2dのメモリ202では、例えば、VLANテーブル29用に、予めカード番号とポート番号とVLAN IDとの全ての組み合わせに該当するアドレスの領域が確保されている。VLANテーブル29の各エントリは、管理端末からの入力に応じて、例えば、制御用プロセッサ203によって設定される。
図23は、第4実施形態におけるSW−MGIDテーブル25dの一例である。SW−MGIDテーブル25dは、各マルチキャストグループに属する各IFカード1dの各ポートを記憶する。SW−MGIDテーブル25dは、MGIDを各エントリのインデックスとする。SW−MGIDテーブル25dの各エントリでは、各項目が各IFカード1dの各ポートに対応付けられている。各IFカード1dの各ポートに対応する項目には、該当ポートのMGIDのマルチキャストグループへの参加の有無を示す値が格納される。第4実施形態では、各IFカード1dのポートに対応する項目に0が設定されている場合には、該当ポートは該当マルチキャストグループに参加していないことが示される。また、第4実施形態では、各IFカード1dの各ポートに対応する項目に1が設定されている場合には、該当ポートが該当マルチキャストグループに参加していることが示される。すなわち、受信フレームのフラッディング時には、SW−MGIDテーブル25dの、受信フレームの装置内フレームヘッダに含まれるMGIDに該当するエントリにおいて、対応する項目に1が設定されているポートに受信フレームのコピーが送信される。
各SWカード2のメモリ202では、SW−MGIDテーブル25d用に、予めMGIDに対応するアドレスの領域が十分に確保されている。SW−MGIDテーブル25dのエントリは、ユーザからの入力に応じて、例えば、図5の制御用プロセッサ203によって設定される。
図21に戻って、第4実施形態における各回路の処理について説明する。IFカード1dのPHY/MAC回路11dは、装置内ヘッダの着脱を行う。PHY/MAC回路11dは、フレームの受信した場合に、装置内ヘッダ(図11参照)の送信元IFカード番号,送信元ポート番号に、受信フレームを受信したIFカード1自身の番号,受信フレームを受信したポート番号を書き込む。このとき、装置内ヘッダのMビット,宛先IFカード番号,宛先ポート番号,MGIDは空のままである。装置内ヘッダを付されたフレームはSWカード2dに送信される。
SWカード2dのVLAN受信回路28は、IFカード1dからフレームを受信した場合には、VLANテーブル29を参照し、インデックスが、受信フレームの、装置内ヘッダの送信元カード番号と送信元ポート番号,VLANタグが示すVLAN IDとに合致するエントリを取得する。
該当エントリのVビットが0である場合には、該当エントリの無効が示されるので、VLAN受信回路28は、受信フレームを廃棄する。該当エントリのVビットが1である場合には、該当エントリの有効が示されるので、VLAN受信回路28は、受信フレームの装置内ヘッダに情報を書き込む。具体的には、VLAN受信回路28は、装置内ヘッダのMビットに初期値である0(マルチキャストグループ内にフラッディングされないフレームであることを示す値)を設定する。VLAN受信回路28は、装置内ヘッダのMGIDに、VLANテーブル29の該当エントリから取得されるMGIDを書き込む。なお、装置内ヘッダの宛先IFカード番号と宛先ポート番号とは空のままである。装置内ヘッダの宛先IFカード番号と宛先ポート番号とは、MACテーブル制御回路22(ユニキャスト転送の場合)又はフレームコピー制御回路24d(マルチキャスト転送の場合)によって書き込まれる。VLAN受信回路28は、MGIDを書き込んだフレームをSW回路21に送信する。
SW回路21に送信されたフレームは、MACテーブル制御回路22において、ユニキャスト転送又はマルチキャスト転送のいずれで転送されるかを判定される。フレームがユニキャスト転送される場合には、MACテーブル制御回路22が装置内ヘッダの宛先IFカード番号と宛先ポート番号とを書き込み、フレームを宛先IFカードに転送する。フレ
ームがマルチキャスト転送される場合には、MACテーブル制御回路22は装置内ヘッダのMビットを(マルチキャスト転送を示す値)に書き換え、フレームをフレームコピー制御回路24dに送信する。
フレームコピー制御回路24dは、フレームを受信すると、該当フレームの装置内ヘッダに含まれるMGIDをインデックスとするSW−MGIDテーブル25dのエントリを取得する。フレームコピー制御回路24dは、SW−MGIDテーブル25dにおいて1が設定されている項目のIFカード番号とポート番号と、フレームの装置内ヘッダの送信元カード番号と送信元ポート番号とを比較し、これらが一致しない場合に、フレームをコピーする。SW−MGIDテーブル25dにおいて1が設定されている項目のIFカード番号とポート番号とが、フレームの装置内ヘッダの送信元IFカード番号と送信元ポート番号とに一致する場合には、フレームコピー制御回路24dはフレームをコピーしない。コピーされた各フレームの装置内ヘッダの宛先IFカード番号及び宛先ポート番号には、フレームコピー制御回路24dによって、該当MGIDのマルチキャストグループに参加するポートのIFカード番号とポート番号とが格納される。ただし、フレームの装置内ヘッダの送信元IFカード番号と送信元ポート番号とに一致するポートへはフレームはコピーされない。コピーされた各フレームは、SW回路21へ送信される。SW回路21は、フレームの装置内ヘッダの宛先IFカード番号が示すIFカード1にフレームを送信する。その後フレームは、装置内ヘッダの宛先IFカード番号と宛先ポート番号とが示すポートから送信される。
<第4実施形態の作用効果>
第4実施形態では、VLAN受信回路とVLANテーブルとがSWカードに備えられ、SWカードにおいて一元的にフレームコピーが行われる。処理負荷が高く、回路規模が複雑になるフレームコピー処理をSWカードにおいて一元的に行うことによって、IFカードの構成を容易に且つ低コストにすることができる。
また、第4実施形態では、SWカード2dのフレームコピー制御回路24dは、フレームの装置内ヘッダの送信元IFカード番号と送信元ポート番号とに一致するポートに対しては、フレームのコピーを実行しない。したがって、第4実施形態の通信装置100dによれば、フレームの受信ポートに再度同じフレームを転送することを防止することができる。また、不要なフレームのコピーを抑制することができる。
なお、第4実施形態では、第3実施形態の構成において、VLAN受信回路とVLANテーブルをIFカードからSWカードに移動した場合について説明した。ただし、これに限られず、第1実施形態及び第2実施形態の構成において、VLAN受信回路とVLANテーブルをIFカードからSWカードに移動する場合についても適用可能である。
<その他>
第1実施形態,第2実施形態,第3実施形態,第4実施形態では、VLANを取り扱う通信装置に、本開示を適用する例について説明された。本発明は、例えば、IPマルチキャストアドレスによってマルチキャスト通信を行う通信装置についても適用可能である。この場合には、第1−4実施形態における、VLANをIPマルチキャストグループに,VLAN IDをIPマルチキャストグループIDに,MACテーブルをルーティングテーブルに,など、適宜対応する要素を置き換えることによって、該通信装置を実現可能である。
以上の第1実施形態,第2実施形態,第3実施形態,第4実施形態を含む実施形態に関し、以下の付記を開示する。
(付記1)
第1のプロセッサと、
複数のポートと、
グループ単位で、該グループの識別情報と該グループに属するポートとを記憶する第1のメモリと、
を含む複数のインタフェース回路と、
第2のプロセッサと、
グループ単位で、該グループの識別情報と該グループに属するポートを有するインタフェース回路とを記憶する第2のメモリと、
データブロックを各インタフェース回路に送信する中継回路と、
を含むスイッチ回路と、
を備え、
前記スイッチ回路における前記第2のプロセッサは、
前記第2のメモリから、各インタフェース回路から受信したデータブロックによって
示されるグループ識別情報に対応付けられているインタフェース回路の識別情報を取得
し、取得したインタフェース回路の識別情報に合致するインタフェース回路を宛先とす
る前記データブロックのコピーを生成し、
前記各インタフェース回路における第1のプロセッサは、
ポートから受信したデータブロックに、自身が含まれるインタフェース回路の識別情
報と、該データブロックを受信した該ポートの識別情報と、を送信元情報として付与 し、
前記第1のメモリから、前記スイッチ回路から受信したデータブロックによって示さ
れるグループ識別情報に対応するポートの識別情報を取得し、取得したポートの識別情
報に合致するポートを宛先とする前記データブロックのコピーを生成し、
前記スイッチ回路から受信したデータブロックに付与されている送信元情報に合致す
るポートを有するか否かを判定し、該送信元情報に合致するポートを有する場合には、
該データブロックに付与されているポートの識別情報に合致するポートを宛先とする、
該データブロックのコピーの生成を抑止し、
前記データブロックのコピーを宛先のポートから送信する、
通信装置。
(付記2)
前記各インタフェース回路における第1のプロセッサは、
前記第1のメモリから、前記スイッチ回路から受信したデータブロックによって示されるグループ識別情報と、該グループ識別情報のグループに属するポートとを読み出し、
前記スイッチ回路から受信したデータブロックに付与されるインタフェースの識別情報と自身が含まれるインタフェース回路の識別情報とが一致するか否かを判定し、前記データブロックに付与されるインタフェース回路の識別情報と前記自身が含まれるインタフェース回路の識別情報とが一致する場合には、前記第1のメモリから読み出したポートから前記送信元情報に合致するポートを除くポートを宛先とする前記データブロックのコピーを生成する、
付記1に記載の通信装置。
(付記3)
前記スイッチ回路における前記第2のプロセッサは、
データブロックによって示されるグループ識別情報のグループに属するポートを1つしか有さないインタフェース回路から、該グループ識別情報を示すデータブロックを受信した場合に、該インタフェース回路を宛先とする該データブロックのコピーの生成を抑止する、
付記1又は2に記載の通信装置。
(付記4)
前記インタフェース回路における第1のプロセッサは、データブロックを受信した該ポートが、該インタフェース回路において、該データブロックによって示されるグループ識
別情報のグループに属する唯一のポートである場合に、該データブロックにコピー抑止情報を付与し、
前記スイッチ回路における前記第2のプロセッサは、各インタフェース回路から受信したデータブロックに前記コピー抑止情報が付与されている場合に、該インタフェース回路を宛先とする該データブロックのコピーの生成を抑止する、
付記3に記載の通信装置。
(付記5)
前記スイッチ回路の前記第2プロセッサは、前記第2のメモリから、前記インタフェース回路から受信したデータブロックによって示されるグループ識別情報のグループに属するポートを有するインタフェース回路を読み出し、
前記データブロックに前記コピー抑止情報が付与されている場合に、前記第2のメモリから読み出したインタフェース回路から、前記データブロックに付与されているインタフェース回路の識別情報に合致するインタフェース回路を除く、該インタフェース回路を宛先とする前記データブロックのコピーを生成する、
付記4に記載の通信装置。
(付記6)
前記スイッチ回路は、
データブロックの宛先端末の端末識別情報と、該宛先端末が接続するポートの識別情報と、該ポートを有するインタフェース回路の識別情報と、を含む宛先情報を記憶する第3のメモリをさらに有し、
前記第2のプロセッサは、
各インタフェース回路から受信したデータブロックに含まれる宛先端末の端末識別情報に対応するポートの識別情報とインタフェース回路の識別情報とを、前記第3のメモリから取得し、
前記データブロックによって示されるインタフェース回路の識別情報と、前記データブロックに付与された送信元情報のポートの識別情報とが、前記第3のメモリから取得したインタフェース回路の識別情報とポートの識別情報とに合致する場合に、前記データブロックを廃棄する、
付記1から5のいずれか一つに記載の通信装置。
(付記7)
複数のポートと、
グループ単位で、該グループの識別情報と該グループに属するポートとを記憶する第
1のメモリと、
を含む複数のインタフェース回路と、
グループ単位で、該グループの識別情報と該グループに属するポートを有するインタフェース回路とを記憶する第2のメモリと、
を含むスイッチ回路と、
を備え、
前記スイッチ回路は、
前記第2のメモリから、各インタフェース回路から受信したデータブロックによって
示されるグループ識別情報に対応付けられているインタフェース回路の識別情報を取得
し、取得したインタフェース回路の識別情報に合致するインタフェース回路を宛先とす
る前記データブロックのコピーを生成する第2のコピー回路と、
前記データブロックのコピーを宛先のインタフェース回路に送信する中継回路と、
を有し、
前記各インタフェース回路は、
ポートから受信したデータブロックに、自身が含まれるインタフェース回路の識別情報と、該データブロックを受信した該ポートの識別情報と、を送信元情報として付与する付与回路と、
前記第1のメモリから、前記スイッチ回路から受信したデータブロックによって示さ
れるグループ識別情報に対応するポートの識別情報を取得し、取得したポートの識別情
報に合致するポートを宛先とする前記データブロックのコピーを生成する第1のコピー
回路と、
前記スイッチ回路から受信したデータブロックに付与されている送信元情報に合致す
るポートを有するか否かを判定し、該送信元情報に合致するポートを有する場合には、
該データブロックに付与されているポートの識別情報に合致するポートを宛先とする、
該データブロックのコピーの生成を抑止する第1の抑止回路と、
前記データブロックのコピーを宛先のポートから送信する送信回路と、
を有する通信装置。
(付記8)
前記第1のコピー回路は、前記第1のメモリから、前記スイッチ回路から受信したデータブロックによって示されるグループ識別情報のグループに属するポートを読み出し、読み出したポートに対する該データブロックのコピーを生成し、
前記第1の抑止回路は、前記スイッチ回路から受信したデータブロックに付与されるインタフェース回路の識別情報と自身が含まれるインタフェース回路の識別情報とが一致するか否かを判定し、前記データブロックに付与されるインタフェースの識別情報と前記自身が含まれるインタフェース回路の識別情報とが一致する場合には、前記第1のコピー回路によって前記第1のメモリから読み出されたポートから、前記送信元情報に合致するポートを除くことによって、前記第1のコピー回路による、前記送信元情報に合致するポートを宛先とする前記データブロックのコピーの生成を抑止する、
付記7に記載の通信装置。
(付記9)
前記スイッチ回路は、
データブロックによって示されるグループ識別情報のグループに属するポートを1つしか有さないインタフェース回路から、該グループ識別情報を示すデータブロックを受信した場合に、前記第2のコピー回路による、該インタフェース回路を宛先とする該データブロックのコピーの生成を抑止する第2の抑止回路をさらに有する、
付記7又は8に記載の通信装置。
(付記10)
前記インタフェース回路の前記付与回路は、データブロックを受信した該ポートが、該インタフェース回路において、該データブロックによって示されるグループ識別情報のグループに属する唯一のポートである場合に、該データブロックにコピー抑止情報を付与し、
前記スイッチ回路の前記第2の抑止回路は、各インタフェース回路から受信したデータブロックに前記コピー抑止情報が付与されている場合に、前記第2のコピー回路による、該インタフェース回路を宛先とする該データブロックのコピーの生成を抑止する、
付記9に記載の通信装置。
(付記11)
前記スイッチ回路の前記第2のコピー回路は、前記第2のメモリから、前記インタフェース回路から受信したデータブロックによって示されるグループ識別情報に属するポートを有するインタフェース回路を読み出し、読み出したインタフェース回路に対して、前記データブロックのコピーを生成し、
前記第2の抑止回路は、前記データブロックに前記コピー抑止情報が付与されている場合に、前記第2のコピー回路によって前記第2のメモリから読み出されたインタフェース回路から、前記データブロックに付与されているインタフェース回路の識別情報に合致するインタフェース回路を除くことによって、前記第2のコピー回路による、該インタフェース回路を宛先とする前記データブロックのコピーの生成を抑止する、
付記10に記載の通信装置。
(付記12)
前記スイッチ回路は、
データブロックの宛先端末の端末識別情報と、該宛先端末が接続するポートの識別情報と、該ポートを有するインタフェース回路の識別情報と、を含む宛先情報を記憶する第3のメモリと、
各インタフェース回路からの受信データブロックに含まれる宛先端末の端末識別情報に対応するポート情報とインタフェース情報とを、前記第3のメモリから、取得する取得回路と、
前記データブロックによって示されるインタフェース回路の識別情報と、前記データブロックに付与された送信元情報のポートの識別情報とが、前記取得回路によって取得されたインタフェース情報とポート情報とに合致する場合に、前記データブロックを廃棄するフィルタ回路と、
をさらに備える
付記7から11のいずれか一つに記載の通信装置。
(付記13)
複数のポートと、
グループ単位で、該グループの識別情報と該グループに属するポートとを記憶する第1
のメモリと、
ポートから受信したデータブロックに、自身が含まれるインタフェース回路の識別情報と、該データブロックを受信した該ポートの識別情報と、を送信元情報として付与する付与回路と、
前記第1のメモリから、スイッチ回路から受信したデータブロックによって示される
グループ識別情報に対応するポートを取得し、取得したポートを宛先とする前記データ
ブロックのコピーを生成するコピー回路と、
前記スイッチ回路から受信したデータブロックに付与されている送信元情報に合致す
るポートを有するか否かを判定し、該送信元情報に合致するポートを有する場合には、
該データブロックに付与されているポートの識別情報に合致するポートを宛先とする、
該データブロックのコピーの生成を抑止する抑止回路と、
前記データブロックのコピーを宛先のポートから送信する送信回路と、
を有するインタフェース回路。
(付記14)
複数のポートと、
グループ単位で、該グループの識別情報と該グループに属するポートとを記憶する第
1のメモリと、
を含む複数のインタフェース回路と、
グループ単位で、該グループの識別情報と該グループに属するポートを有するインタフェース回路とを記憶する第2のメモリと、
データブロックを各インタフェース回路に送信する中継回路と、
を含むスイッチ回路と、
を備える通信装置において、
前記スイッチ回路が、
前記第2のメモリから、各インタフェース回路から受信したデータブロックによって
示されるグループ識別情報に対応付けられているインタフェース回路の識別情報を取得
し、取得したインタフェース回路の識別情報に合致するインタフェース回路を宛先とす
る前記データブロックのコピーを生成し、
前記各インタフェース回路が、
ポートから受信したデータブロックに、自身が含まれるインタフェース回路の識別情
報と、該データブロックを受信した該ポートの識別情報と、を送信元情報として付与 し、
前記第1のメモリから、前記スイッチ回路から受信したデータブロックによって示さ
れるグループ識別情報に対応するポートの識別情報を取得し、取得したポートの識別情
報に合致するポートを宛先とする前記データブロックのコピーを生成し、
前記スイッチ回路から受信したデータブロックに付与されている送信元情報に合致す
るポートを有するか否かを判定し、該送信元情報に合致するポートを有する場合には、
該データブロックに付与されているポートの識別情報に合致するポートを宛先とする、
該データブロックのコピーの生成を抑止し、
前記データブロックのコピーを宛先のポートから送信する、
通信方法。
(付記15)
複数のポートを有する複数のインタフェース回路と接続するスイッチ回路であって、
グループ単位で、該グループの識別情報と該グループに属するポートのインタフェース
回路の識別情報とポートの識別情報と、を記憶するメモリと、
前記メモリから、各インタフェース回路から受信したデータブロックによって示される
グループ識別情報に対応付けられているポートのインタフェース回路の識別情報とポー
トの識別情報とを取得し、前記データブロックを受信したインタフェース回路の識別情
報とポートの識別情報とが取得したインタフェース回路の識別情報とポートの識別情報
とに合致しない場合に、取得したインタフェース回路とポートとを宛先とするデータブ
ロックのコピーを生成するコピー回路と、
前記データブロックのコピーを宛先のインタフェース回路に送信する中継回路と、
を備えるスイッチ回路。
100,100b,100c,100d 通信装置
1,1d IFカード
11,11d,101 PHY/MAC回路
12,28 VLAN受信回路
13,13b,29 VLANテーブル
14 IFコピー抑止回路
15 フレームコピー制御回路
16 IF−MGIDテーブル
2,2b,2c,2d SWカード
21,201 SW回路
22 MACテーブル制御回路
23 MACテーブル
24,24d フレームコピー制御回路
25,25d SW−MGIDテーブル
26 SWコピー抑止回路
27 送信フィルタ回路
102,202 メモリ
103,206 データ処理用プロセッサ
104,203 制御用プロセッサ

Claims (5)

  1. 第1のプロセッサと、
    複数のポートと、
    グループ単位で、該グループの識別情報と該グループに属するポートの識別情報とを
    記憶する第1のメモリと、
    を含む複数のインタフェース回路と、
    第2のプロセッサと、
    グループ単位で、該グループの識別情報と該グループに属するポートを有するインタフェース回路の識別情報とを記憶する第2のメモリと、
    データブロックを各インタフェース回路に送信する中継回路と、
    を含むスイッチ回路と、
    を備え、
    前記スイッチ回路における前記第2のプロセッサは、
    前記第2のメモリから、各インタフェース回路から受信したデータブロックによって
    示されるグループ識別情報に対応付けられているインタフェース回路の識別情報を取得
    し、取得したインタフェース回路の識別情報に合致するインタフェース回路を宛先とす
    る前記データブロックのコピーを生成し、
    前記各インタフェース回路における第1のプロセッサは、
    ポートから受信したデータブロックに、自身が含まれるインタフェース回路の識別情
    報と、該データブロックを受信した該ポートの識別情報と、を送信元情報として付与 し、
    前記第1のメモリから、前記スイッチ回路から受信したデータブロックによって示さ
    れるグループ識別情報に対応するポートの識別情報を取得し、取得したポートの識別情
    報に合致するポートを宛先とする前記データブロックのコピーを生成し、
    前記スイッチ回路から受信したデータブロックに付与されている送信元情報に合致す
    るポートを有するか否かを判定し、該送信元情報に合致するポートを有する場合には、
    該データブロックに付与されているポートの識別情報に合致するポートを宛先とする、
    該データブロックのコピーの生成を抑止し、
    前記データブロックのコピーを宛先のポートから送信する、
    通信装置。
  2. 前記スイッチ回路における前記第2のプロセッサは、
    データブロックによって示されるグループ識別情報のグループに属するポートを1つしか有さないインタフェース回路から、該グループ識別情報を示すデータブロックを受信した場合に、該インタフェース回路を宛先とする該データブロックのコピーの生成を抑止する、
    請求項1に記載の通信装置。
  3. 前記インタフェース回路における第1のプロセッサは、データブロックを受信した該ポートが、該インタフェース回路において、該データブロックによって示されるグループ識別情報のグループに属する唯一のポートである場合に、該データブロックにコピー抑止情報を付与し、
    前記スイッチ回路における前記第2のプロセッサは、各インタフェース回路から受信したデータブロックに前記コピー抑止情報が付与されている場合に、該インタフェース回路を宛先とする該データブロックのコピーの生成を抑止する、
    請求項2に記載の通信装置。
  4. 複数のポートと、
    グループ単位で、該グループの識別情報と該グループに属するポートとを記憶する第
    1のメモリと、
    を含む複数のインタフェース回路と、
    グループ単位で、該グループの識別情報と該グループに属するポートを有するインタフェース回路とを記憶する第2のメモリと、
    を含むスイッチ回路と、
    を備え、
    前記スイッチ回路は、
    前記第2のメモリから、各インタフェース回路から受信したデータブロックによって
    示されるグループ識別情報に対応付けられているインタフェース回路の識別情報を取得
    し、取得したインタフェース回路の識別情報に合致するインタフェース回路を宛先とす
    る前記データブロックのコピーを生成する第2のコピー回路と、
    前記データブロックのコピーを宛先に送信する中継回路と、
    を有し、
    前記各インタフェース回路は、
    ポートから受信したデータブロックに、自身が含まれるインタフェース回路の識別情報と、該データブロックを受信した該ポートの識別情報と、を送信元情報として付与する付与回路と、
    前記第1のメモリから、前記スイッチ回路から受信したデータブロックによって示さ
    れるグループ識別情報に対応するポートの識別情報を取得し、取得したポートの識別情
    報に合致するポートを宛先とする前記データブロックのコピーを生成する第1のコピー
    回路と、
    前記スイッチ回路から受信したデータブロックに付与されている送信元情報に合致す
    るポートを有するか否かを判定し、該送信元情報に合致するポートを有する場合には、
    該データブロックに付与されているポートの識別情報に合致するポートを宛先とする、
    該データブロックのコピーの生成を抑止する第1の抑止回路と、
    前記データブロックのコピーを宛先のポートから送信する送信回路と、
    を有する通信装置。
  5. 複数のポートと、
    グループ単位で、該グループの識別情報と該グループに属するポートとを記憶する第
    1のメモリと、
    を含む複数のインタフェース回路と、
    グループ単位で、該グループの識別情報と該グループに属するポートを有するインタフェース回路とを記憶する第2のメモリと、
    データブロックを各インタフェース回路に送信する中継回路と、
    を含むスイッチ回路と、
    を備える通信装置において、
    前記スイッチ回路が、
    前記第2のメモリから、各インタフェース回路から受信したデータブロックによって
    示されるグループ識別情報に対応付けられているインタフェース回路の識別情報を取得
    し、取得したインタフェース回路の識別情報に合致するインタフェース回路を宛先とす
    る前記データブロックのコピーを生成し、
    前記各インタフェース回路が、
    ポートから受信したデータブロックに、自身が含まれるインタフェース回路の識別情報と、該データブロックを受信した該ポートの識別情報と、を送信元情報として付与し、
    前記第1のメモリから、前記スイッチ回路から受信したデータブロックによって示さ
    れるグループ識別情報に対応するポートの識別情報を取得し、取得したポートの識別情
    報に合致するポートを宛先とする前記データブロックのコピーを生成し、
    前記スイッチ回路から受信したデータブロックに付与されている送信元情報に合致す
    るポートを有するか否かを判定し、該送信元情報に合致するポートを有する場合には、
    該データブロックに付与されているポートの識別情報に合致するポートを宛先とする、
    該データブロックのコピーの生成を抑止し、
    前記データブロックのコピーを宛先のポートから送信する、
    通信方法。
JP2011277580A 2011-12-19 2011-12-19 通信装置及び通信方法 Expired - Fee Related JP5772568B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2011277580A JP5772568B2 (ja) 2011-12-19 2011-12-19 通信装置及び通信方法
US13/665,154 US8923291B2 (en) 2011-12-19 2012-10-31 Communication apparatus and communication method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011277580A JP5772568B2 (ja) 2011-12-19 2011-12-19 通信装置及び通信方法

Publications (2)

Publication Number Publication Date
JP2013128250A JP2013128250A (ja) 2013-06-27
JP5772568B2 true JP5772568B2 (ja) 2015-09-02

Family

ID=48610087

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011277580A Expired - Fee Related JP5772568B2 (ja) 2011-12-19 2011-12-19 通信装置及び通信方法

Country Status (2)

Country Link
US (1) US8923291B2 (ja)
JP (1) JP5772568B2 (ja)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8447909B2 (en) 2010-07-19 2013-05-21 International Business Machines Corporation Register access in distributed virtual bridge environment
US8861400B2 (en) 2012-01-18 2014-10-14 International Business Machines Corporation Requesting multicast membership information in a distributed switch in response to a miss event
US8891535B2 (en) * 2012-01-18 2014-11-18 International Business Machines Corporation Managing a global forwarding table in a distributed switch
CN107683585B (zh) * 2015-06-03 2022-05-10 赫思曼自动化控制有限公司 Vlan端口信号通知
CN106301874A (zh) * 2015-06-26 2017-01-04 中兴通讯股份有限公司 端口匹配方法、装置、控制单板、电交叉单板及网管设备
CN108683617B (zh) * 2018-04-28 2021-01-01 新华三技术有限公司 报文分流方法、装置及分流交换机
JP7211213B2 (ja) * 2019-03-29 2023-01-24 株式会社デンソー 中継装置、及び中継方法
JP7105728B2 (ja) * 2019-05-24 2022-07-25 古河電気工業株式会社 通信システム、通信システムの制御方法、および、通信装置

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005057390A (ja) 2003-07-31 2005-03-03 Matsushita Electric Ind Co Ltd パケット転送装置及びネットワークシステム
JP2009094832A (ja) 2007-10-10 2009-04-30 Nec Access Technica Ltd マルチキャストデータ配信装置、その配信方法およびその配信制御プログラム
US8625592B2 (en) * 2008-02-26 2014-01-07 Cisco Technology, Inc. Blade switch with scalable interfaces
JP2009239836A (ja) * 2008-03-28 2009-10-15 Hitachi Cable Ltd スイッチングハブ
EP2136476B1 (en) * 2008-06-20 2018-12-19 ADTRAN GmbH Method and device for data processing and communication system comprising such device
CN105099959A (zh) * 2010-01-29 2015-11-25 华为技术有限公司 一种多播包的转发方法、设备和***
US8705551B2 (en) * 2011-07-27 2014-04-22 Fujitsu Limited Method and system for management of flood traffic over multiple 0:N link aggregation groups

Also Published As

Publication number Publication date
US20130156031A1 (en) 2013-06-20
US8923291B2 (en) 2014-12-30
JP2013128250A (ja) 2013-06-27

Similar Documents

Publication Publication Date Title
JP5772568B2 (ja) 通信装置及び通信方法
US7586915B1 (en) Technique for coupling entities via virtual ports
JP4068166B2 (ja) 高性能多層スイッチ要素用探索エンジン・アーキテクチャ
CN105049359B (zh) 用于分布式路由表查找的分布式路由器的入口计算节点和机器可读介质
US7933268B1 (en) IP multicast forwarding in MAC bridges
US7860028B2 (en) Flexible ethernet bridge
US8369347B2 (en) Fiber channel over Ethernet and fiber channel switching based on Ethernet switch fabrics
US7149214B2 (en) Dynamic unknown L2 flooding control with MAC limits
US7830892B2 (en) VLAN translation in a network device
US9118606B2 (en) Method and apparatus for simulating IP multinetting
US8989193B2 (en) Facilitating insertion of device MAC addresses into a forwarding database
US8693478B2 (en) Multiple shortest-path tree protocol
WO2006095508A1 (ja) フラッディング抑制方法
US9197442B2 (en) Relay apparatus and relay method
JP5540954B2 (ja) ブリッジ装置及びインタフェース装置、並びに通信方法
JP5682846B2 (ja) ネットワークシステム、パケット処理方法、及び記憶媒体
US9270586B2 (en) Method for abstracting datapath hardware elements
WO2016082367A1 (zh) 一种基于网络处理器实现硬件表遍历的方法及装置
JP5971072B2 (ja) フレーム転送装置及びフレーム転送方法
JP2006108985A (ja) フレーム中継装置
CN113285878A (zh) 负载分担的方法、第一网络设备
JP3443283B2 (ja) 同報リスト作成方法
US20240039848A1 (en) Udf-based traffic offloading methods and systems
JP5553036B2 (ja) 通信制御装置、通信制御方法および通信制御プログラム
CN118101594A (zh) 交换机***

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20140805

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20150410

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150615

R150 Certificate of patent or registration of utility model

Ref document number: 5772568

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees